[PATCH] D60939: [Concepts] Delayed Constraint Substitution
Saar Raz via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Sat Apr 20 17:14:35 PDT 2019
saar.raz created this revision.
saar.raz added a reviewer: rsmith.
Herald added subscribers: cfe-commits, jfb.
Herald added a project: clang.
Constraint expressions will now not be substituted into when instantiating constrained declarations, and all substitution will be delayed to when satisfaction or subsumption have to be determined. Also, when explicitly instantiating a class template specialization, members whose constraints are not satisfied will not be instantiated. Depends on D50360 <https://reviews.llvm.org/D50360>.
Repository:
rC Clang
https://reviews.llvm.org/D60939
Files:
include/clang/AST/DeclTemplate.h
include/clang/AST/RecursiveASTVisitor.h
include/clang/Basic/DiagnosticSemaKinds.td
include/clang/Sema/Sema.h
include/clang/Sema/SemaConcept.h
lib/AST/DeclTemplate.cpp
lib/AST/StmtPrinter.cpp
lib/AST/StmtProfile.cpp
lib/Sema/SemaConcept.cpp
lib/Sema/SemaExpr.cpp
lib/Sema/SemaExprCXX.cpp
lib/Sema/SemaOverload.cpp
lib/Sema/SemaTemplate.cpp
lib/Sema/SemaTemplateDeduction.cpp
lib/Sema/SemaTemplateInstantiate.cpp
lib/Sema/SemaTemplateInstantiateDecl.cpp
lib/Sema/TreeTransform.h
lib/Serialization/ASTReader.cpp
lib/Serialization/ASTReaderDecl.cpp
lib/Serialization/ASTReaderStmt.cpp
lib/Serialization/ASTWriter.cpp
lib/Serialization/ASTWriterDecl.cpp
lib/Serialization/ASTWriterStmt.cpp
test/CXX/concepts-ts/expr/expr.prim/expr.prim.id/p4.cpp
test/CXX/concepts-ts/expr/expr.prim/expr.prim.req/equivalence.cpp
test/CXX/concepts-ts/expr/expr.prim/expr.prim.req/nested-requirement.cpp
test/CXX/concepts-ts/over/over.match/over.match.best/p1.cpp
test/CXX/concepts-ts/temp/temp.arg.template/p3.cpp
test/CXX/concepts-ts/temp/temp.constr/temp.constr.constr/non-function-templates.cpp
test/CXX/concepts-ts/temp/temp.constr/temp.constr.decl/class-template-decl.cpp
test/CXX/concepts-ts/temp/temp.constr/temp.constr.decl/p3.cpp
test/CXX/concepts-ts/temp/temp.constr/temp.constr.decl/var-template-decl.cpp
test/CXX/concepts-ts/temp/temp.constr/temp.constr.normal/p1.cpp
test/CXX/concepts-ts/temp/temp.constr/temp.constr.order/class-template-partial-specializations.cpp
test/CXX/concepts-ts/temp/temp.explicit/p10.cpp
test/CXX/concepts-ts/temp/temp.inst/p17.cpp
test/SemaTemplate/instantiate-requires-expr.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D60939.195982.patch
Type: text/x-patch
Size: 125260 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20190421/7fedd520/attachment-0001.bin>
More information about the cfe-commits
mailing list