[PATCH] D37667: [C++14][Sema] Disallow decltype(auto) deduction for lambdas

2017-09-11 Thread Blitz Rakete via Phabricator via cfe-commits
Rakete abandoned this revision. Rakete added a comment. Agreed. Closing this. https://reviews.llvm.org/D37667 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D37667: [C++14][Sema] Disallow decltype(auto) deduction for lambdas

2017-09-10 Thread Blitz Rakete via Phabricator via cfe-commits
Rakete created this revision. `decltype(auto) lambda = []{};` is currently allowed by clang, gcc and MSVC, but it is actually not valid, because `decltype([]{})` (which is how the type of `lambda` is deduced) is ill-formed, I think. I honestly could argue both ways (and I did once), but the

[PATCH] D36527: Implemented P0428R2 - Familiar template syntax for generic lambdas

2017-09-09 Thread Blitz Rakete via Phabricator via cfe-commits
Rakete added a comment. > Is that a problem? I don't think so, because `shouldVisitImplicitCode()` doesn't mean that it only visits implicit code, it's not `onlyVisitImplicitCode()` :) In fact, I would be surprised if the template parameters were only visited once. Comme

[PATCH] D37442: [C++17] Disallow lambdas in template parameters (PR33696).

2017-09-07 Thread Blitz Rakete via Phabricator via cfe-commits
Rakete updated this revision to Diff 114204. Rakete added a comment. Good idea! Updated diff :) https://reviews.llvm.org/D37442 Files: include/clang/Basic/DiagnosticSemaKinds.td include/clang/Sema/Sema.h lib/Parse/ParseDecl.cpp lib/Parse/ParseDeclCXX.cpp lib/Parse/ParseStmt.cp

[PATCH] D37442: [C++17] Disallow lambdas in template parameters (PR33696).

2017-09-04 Thread Blitz Rakete via Phabricator via cfe-commits
Rakete created this revision. This revision disallows lambdas in template parameters, as reported in PR33696. https://reviews.llvm.org/D37442 Files: include/clang/Basic/DiagnosticSemaKinds.td include/clang/Sema/Sema.h lib/Parse/ParseTemplate.cpp lib/Sema/Sema.cpp lib/Sema/SemaExpr

[PATCH] D36101: Fix usage of right shift operator in fold expressions

2017-08-28 Thread Blitz Rakete via Phabricator via cfe-commits
Rakete updated this revision to Diff 113020. Rakete added a comment. Updated test to use the -std=c++17 option + friendly ping https://reviews.llvm.org/D36101 Files: lib/Parse/ParseExpr.cpp test/CXX/expr/expr.prim/expr.prim.fold/p2.cpp Index: test/CXX/expr/expr.prim/expr.prim.fold

[PATCH] D36357: Added a better diagnostic when using the delete operator with lambdas

2017-08-21 Thread Blitz Rakete via Phabricator via cfe-commits
Rakete updated this revision to Diff 112103. Rakete added a comment. Rebased and friendly ping. https://reviews.llvm.org/D36357 Files: include/clang/Basic/DiagnosticParseKinds.td lib/Parse/ParseExprCXX.cpp test/Parser/cxx0x-lambda-expressions.cpp test/SemaCXX/new-delete-0x.cpp

[PATCH] D36855: Fixed pointer to const& member function on rvalues, P0704r1

2017-08-19 Thread Blitz Rakete via Phabricator via cfe-commits
Rakete updated this revision to Diff 111840. Rakete marked 2 inline comments as done. Rakete added a comment. Update entry on the C++ status page. https://reviews.llvm.org/D36855 Files: include/clang/Basic/DiagnosticSemaKinds.td lib/Sema/SemaExprCXX.cpp test/SemaCXX/cxx2a-poin

[PATCH] D36855: Fixed pointer to const& member function on rvalues, P0704r1

2017-08-18 Thread Blitz Rakete via Phabricator via cfe-commits
Rakete updated this revision to Diff 111801. https://reviews.llvm.org/D36855 Files: include/clang/Basic/DiagnosticSemaKinds.td lib/Sema/SemaExprCXX.cpp test/SemaCXX/cxx2a-pointer-to-const-ref-member.cpp Index: test/SemaCXX/cxx2a-pointer-to-const-ref-member.cpp

[PATCH] D36855: Fixed pointer to const& member function on rvalues, P0704r1

2017-08-18 Thread Blitz Rakete via Phabricator via cfe-commits
Rakete updated this revision to Diff 111800. Rakete added a comment. Rebased because another commit already added the definitions of the C++20 groups. https://reviews.llvm.org/D36855 Files: include/clang/Basic/DiagnosticSemaKinds.td lib/Sema/SemaExprCXX.cpp test/SemaCXX/cxx2a-poi

[PATCH] D36855: Fixed pointer to const& member function on rvalues, P0704r1

2017-08-18 Thread Blitz Rakete via Phabricator via cfe-commits
Rakete updated this revision to Diff 111719. Rakete marked 3 inline comments as done. Rakete added a comment. Yes please. https://reviews.llvm.org/D36855 Files: include/clang/Basic/DiagnosticGroups.td include/clang/Basic/DiagnosticSemaKinds.td lib/Sema/SemaExprCXX.cpp test/S

[PATCH] D36855: Fixed pointer to const& member function on rvalues, P0704r1

2017-08-17 Thread Blitz Rakete via Phabricator via cfe-commits
Rakete updated this revision to Diff 111602. Rakete added a comment. Thanks! Agreed, your wording is better than mine :) https://reviews.llvm.org/D36855 Files: include/clang/Basic/DiagnosticGroups.td include/clang/Basic/DiagnosticSemaKinds.td lib/Sema/SemaExprCXX.cpp test/SemaCX

[PATCH] D36855: Fixed pointer to const& member function on rvalues, P0704r1

2017-08-17 Thread Blitz Rakete via Phabricator via cfe-commits
Rakete created this revision. This patch allows pointer to const& member functions on rvalues for C++20, and as an extension for prior versions. This is P0704r1 . https://reviews.llvm.org/D36855 Files: include/clang/B

[PATCH] D36101: Fix usage of right shift operator in fold expressions

2017-08-08 Thread Blitz Rakete via Phabricator via cfe-commits
Rakete added a comment. Ping? https://reviews.llvm.org/D36101 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D36357: Added a better diagnostic when using the delete operator with lambdas

2017-08-05 Thread Blitz Rakete via Phabricator via cfe-commits
Rakete created this revision. This adds a new error for missing parentheses around lambdas in delete operators. int main() { delete []() { return new int(); }(); } This will result in: test.cpp:2:10: error: missing parentheses around lambda expression delete []() { return new

[PATCH] D36101: Fix usage of right shift operator in fold expressions

2017-07-31 Thread Blitz Rakete via Phabricator via cfe-commits
Rakete created this revision. The right shift operator was not seen as a valid operator in a fold expression, which is PR32563. https://reviews.llvm.org/D36101 Files: lib/Parse/ParseExpr.cpp test/CXX/expr/expr.prim/expr.prim.fold/p2.cpp Index: test/CXX/expr/expr.prim/expr.prim.fold/p