rnk marked an inline comment as done.
rnk added inline comments.
Comment at: clang/lib/AST/Expr.cpp:2694
while (true) {
E = E->IgnoreParens();
rsmith wrote:
> Maybe `IgnoreParens` should be doing this itself?
I can do that, it passes tests.
CHANGES SI
rnk updated this revision to Diff 178960.
rnk added a comment.
- move to IgnoreParens
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D55853/new/
https://reviews.llvm.org/D55853
Files:
clang/lib/AST/Expr.cpp
clang/test/CodeGenCXX/mangle-ms-templates.cpp
Index: clang/test/CodeGenCXX/
rsmith added inline comments.
Comment at: clang/lib/AST/Expr.cpp:2694
while (true) {
E = E->IgnoreParens();
Maybe `IgnoreParens` should be doing this itself?
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D55853/new/
https://reviews.llvm.org/D5
rsmith added inline comments.
Comment at: clang/lib/AST/Expr.cpp:2722-2725
+if (ConstantExpr *CE = dyn_cast(E)) {
+ E = CE->getSubExpr();
+ continue;
+}
rnk wrote:
> majnemer wrote:
> > Just curious, why not go even further and use FullExpr rath
rnk marked an inline comment as done.
rnk added inline comments.
Comment at: clang/lib/AST/Expr.cpp:2722-2725
+if (ConstantExpr *CE = dyn_cast(E)) {
+ E = CE->getSubExpr();
+ continue;
+}
majnemer wrote:
> Just curious, why not go even further a
majnemer added inline comments.
Comment at: clang/lib/AST/Expr.cpp:2722-2725
+if (ConstantExpr *CE = dyn_cast(E)) {
+ E = CE->getSubExpr();
+ continue;
+}
Just curious, why not go even further and use FullExpr rather than ConstantExpr?
CHANGES
rnk created this revision.
rnk added reviewers: void, rsmith.
It is ignored by IgnoreParenImpCasts, so it seems reasonable to ignore
it here as well. Besides, this preserves behavior from before this AST
node was added.
Fixes PR39881
https://reviews.llvm.org/D55853
Files:
clang/lib/AST/Expr.