[PATCH] D136554: Implement CWG2631
Corentin Jabot via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Fri Dec 23 01:14:49 PST 2022
cor3ntin updated this revision to Diff 485067.
cor3ntin added a comment.
I hope we will get there...
It further reduces to
consteval void immediate(){};
struct h {
int g = 0;
int blah = (immediate(), g);
};
struct k {
h j{};
}_;
The issue was that nested expressions are all transformed in the context of
the outermost (k) class and transforming the this pointer pick up
the current this pointer.
Because when we do the replacenent we no longer have templates,
we can just skip the transformation of the this pointer.
This is a cleaner way to handke the this pointer than
having a CXXThisScopeRAII on the outer scope,
so I removed that.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D136554/new/
https://reviews.llvm.org/D136554
Files:
clang/docs/ReleaseNotes.rst
clang/include/clang/AST/ExprCXX.h
clang/include/clang/AST/Stmt.h
clang/include/clang/Basic/DiagnosticSemaKinds.td
clang/include/clang/Sema/Sema.h
clang/lib/AST/ASTImporter.cpp
clang/lib/AST/Decl.cpp
clang/lib/AST/ExprCXX.cpp
clang/lib/Parse/ParseCXXInlineMethods.cpp
clang/lib/Parse/ParseDeclCXX.cpp
clang/lib/Sema/SemaDeclCXX.cpp
clang/lib/Sema/SemaExpr.cpp
clang/lib/Sema/SemaTemplateInstantiate.cpp
clang/lib/Sema/TreeTransform.h
clang/lib/Sema/UsedDeclVisitor.h
clang/lib/Serialization/ASTReaderStmt.cpp
clang/lib/Serialization/ASTWriterStmt.cpp
clang/test/AST/ast-dump-records.cpp
clang/test/CXX/class/class.local/p1-0x.cpp
clang/test/CXX/drs/dr26xx.cpp
clang/test/CodeGenCXX/builtin-source-location.cpp
clang/test/CodeGenCXX/default-arguments-with-immediate.cpp
clang/test/CodeGenCXX/meminit-initializers-odr.cpp
clang/test/PCH/default-argument-with-immediate-calls.cpp
clang/test/SemaCXX/cxx11-default-member-initializers.cpp
clang/test/SemaCXX/cxx2a-consteval-default-params.cpp
clang/test/SemaCXX/source_location.cpp
clang/www/cxx_dr_status.html
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D136554.485067.patch
Type: text/x-patch
Size: 64591 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20221223/77c9b58b/attachment-0001.bin>
More information about the cfe-commits
mailing list