[PATCH] D40381: Parse concept definition

2017-12-24 Thread changyu via Phabricator via cfe-commits
changyu added a comment. I moved some template param checks from `Parser::ParseTemplateDeclarationOrSpecialization` to `Parser::ParseConceptDefinition` and `Sema::ActOnConceptDefinition`. Comment at: lib/Parse/ParseTemplate.cpp:181 +TemplateParameterList *TPL = ParamLists

[PATCH] D40381: Parse concept definition

2017-12-24 Thread changyu via Phabricator via cfe-commits
changyu updated this revision to Diff 128123. changyu marked 2 inline comments as done. https://reviews.llvm.org/D40381 Files: include/clang/AST/DeclTemplate.h include/clang/AST/RecursiveASTVisitor.h include/clang/Basic/DeclNodes.td include/clang/Basic/DiagnosticParseKinds.td include/cl

[PATCH] D40381: Parse concept definition

2017-12-24 Thread changyu via Phabricator via cfe-commits
changyu added a comment. I don't have commit privilege. And also there's one more problem we might want to address first. Thank you. Comment at: lib/Parse/ParseTemplate.cpp:181 +TemplateParameterList *TPL = ParamLists[0]; +if (TPL->getLAngleLoc().getLocWithOffset(1) =

[PATCH] D40381: Parse concept definition

2017-12-23 Thread changyu via Phabricator via cfe-commits
changyu updated this revision to Diff 128094. changyu marked an inline comment as done. https://reviews.llvm.org/D40381 Files: include/clang/AST/DeclTemplate.h include/clang/AST/RecursiveASTVisitor.h include/clang/Basic/DeclNodes.td include/clang/Basic/DiagnosticParseKinds.td include/cl

[PATCH] D40381: Parse concept definition

2017-12-23 Thread changyu via Phabricator via cfe-commits
changyu marked 27 inline comments as done. changyu added inline comments. Comment at: lib/Sema/SemaTemplate.cpp:7713 + + if (!ConstraintExpr->isTypeDependent() && + ConstraintExpr->getType() != Context.BoolTy) { faisalv wrote: > saar.raz wrote: > > faisalv

[PATCH] D40381: Parse concept definition

2017-12-21 Thread changyu via Phabricator via cfe-commits
changyu marked 6 inline comments as done. changyu added inline comments. Comment at: lib/Sema/SemaTemplate.cpp:7735 + ActOnDocumentableDecl(NewDecl); + CurContext->addDecl(NewDecl); + return NewDecl; faisalv wrote: > Why not use 'PushOnScopeChains' onto the en

[PATCH] D41217: [Concepts] Concept Specialization Expressions

2017-12-13 Thread changyu via Phabricator via cfe-commits
changyu added inline comments. Comment at: lib/AST/ExprCXX.cpp:1481 +if (E.isInvalid() || Trap.hasErrorOccurred()) { +// C++2a [temp.constr.atomic]p1 +// ...If substitution results in an invalid type or expression, the You have four spaces o

[PATCH] D40381: Parse concept definition

2017-11-26 Thread changyu via Phabricator via cfe-commits
changyu updated this revision to Diff 124319. changyu added a comment. - Fixed indent issues. - Moved TODO on boolean atomic constraints to ActOnConceptDefinition where we are currently checking for boolean constraint expression https://reviews.llvm.org/D40381 Files: include/clang/AST/DeclTe

[PATCH] D40381: Parse concept definition

2017-11-25 Thread changyu via Phabricator via cfe-commits
changyu added inline comments. Comment at: include/clang/Sema/Sema.h:6194 +SourceLocation TemplateLoc, +const TemplateArgumentListInfo *TemplateArgs); + hubert.reinterpretcast wrote: > Indentation is

[PATCH] D40381: Parse concept definition

2017-11-25 Thread changyu via Phabricator via cfe-commits
changyu updated this revision to Diff 124268. changyu marked 2 inline comments as done. https://reviews.llvm.org/D40381 Files: include/clang/AST/DeclTemplate.h include/clang/AST/RecursiveASTVisitor.h include/clang/Basic/DeclNodes.td include/clang/Basic/DiagnosticSemaKinds.td include/cla

[PATCH] D40381: Parse concept definition

2017-11-25 Thread changyu via Phabricator via cfe-commits
changyu planned changes to this revision. changyu marked 22 inline comments as done. changyu added inline comments. Comment at: lib/Parse/ParseTemplate.cpp:374 + + ExprResult ConstraintExpr = ParseConstraintExpression(); + saar.raz wrote: > Add a check to ParseC

[PATCH] D40381: Parse concept definition

2017-11-22 Thread changyu via Phabricator via cfe-commits
changyu added a comment. I should add that this depends on https://reviews.llvm.org/D40380 https://reviews.llvm.org/D40381 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D40381: Parse concept definition

2017-11-22 Thread changyu via Phabricator via cfe-commits
changyu created this revision. Per p0734r0. https://reviews.llvm.org/D40381 Files: include/clang/AST/DeclTemplate.h include/clang/AST/RecursiveASTVisitor.h include/clang/Basic/DeclNodes.td include/clang/Basic/TemplateKinds.h include/clang/Parse/Parser.h include/clang/Sema/Sema.h l