[PATCH] D41569: Summary:Constraint enforcement and diagnostics

Saar Raz via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Sun Dec 24 13:13:56 PST 2017


saar.raz created this revision.
saar.raz added reviewers: hubert.reinterpretcast, rsmith, nwilson, changyu, faisalv.
Herald added a subscriber: cfe-commits.

- Associated constraints (requires clauses, currently) are now enforced when instantiating/specializing templates and when considering partial specializations and function overloads.
- Elaborated diagnostics give helpful insight as to why the constraints were not satisfied.

This patch depends upon https://reviews.llvm.org/D41284


Repository:
  rC Clang

https://reviews.llvm.org/D41569

Files:
  include/clang/AST/ExprCXX.h
  include/clang/Basic/DiagnosticSemaKinds.td
  include/clang/Sema/Sema.h
  include/clang/Sema/TemplateDeduction.h
  lib/AST/ExprCXX.cpp
  lib/Sema/SemaOverload.cpp
  lib/Sema/SemaTemplate.cpp
  lib/Sema/SemaTemplateDeduction.cpp
  lib/Sema/SemaTemplateInstantiateDecl.cpp
  lib/Serialization/ASTReaderStmt.cpp
  lib/Serialization/ASTWriterStmt.cpp
  test/CXX/concepts-ts/expr/expr.prim/expr.prim.id/p3.cpp
  test/CXX/concepts-ts/temp/temp.constr/temp.constr.constr/function-templates.cpp
  test/CXX/concepts-ts/temp/temp.constr/temp.constr.constr/non-function-templates.cpp
  test/CXX/concepts-ts/temp/temp.constr/temp.constr.constr/partial-specializations.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D41569.128120.patch
Type: text/x-patch
Size: 42784 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20171224/039b7bf9/attachment-0001.bin>


More information about the cfe-commits mailing list