hubert.reinterpretcast added inline comments.
================ Comment at: clang/test/SemaCXX/constant-expression-cxx2b.cpp:219 + NonLiteral n; // cxx2b-note {{non-literal type 'NonLiteral' cannot be used in a constant expression}} \ + // cxx2b-warning {{definition of a variable of non-literal type in a constexpr function is incompatible with C++ standards before C++2b}} return 0; ---------------- Not sure how much we want the message in this case. The lambda is not marked `constexpr` (although it is implicitly `constexpr` in C++2b). Note that we don't get a message for this: ``` auto qq = [] { return 0; static int x = 42; }; constexpr int qx = qq(); ``` I am not sure how difficult it would be to come at this from the used-in-constant-evaluation side, but there is probably a larger class of messages in the same situation (so it would probably be a separate endeavour). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D122249/new/ https://reviews.llvm.org/D122249 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits