diff options
author | Eli Friedman <eli.friedman@gmail.com> | 2013-07-20 00:40:58 +0000 |
---|---|---|
committer | Eli Friedman <eli.friedman@gmail.com> | 2013-07-20 00:40:58 +0000 |
commit | 75807f239e06e94cb177eed61955790e6dc6e306 (patch) | |
tree | 1a5218c565964125bfd63cdbdfcbc53f93677110 /clang/lib/CodeGen/CGExprConstant.cpp | |
parent | 19b4986b80c92dfdf55af1320c888dbc3bde8d5a (diff) | |
download | bcm5719-llvm-75807f239e06e94cb177eed61955790e6dc6e306.tar.gz bcm5719-llvm-75807f239e06e94cb177eed61955790e6dc6e306.zip |
Make IgnoreParens() look through ChooseExprs.
This is the same way GenericSelectionExpr works, and it's generally a
more consistent approach.
A large part of this patch is devoted to caching the value of the condition
of a ChooseExpr; it's needed to avoid threading an ASTContext into
IgnoreParens().
Fixes <rdar://problem/14438917>.
llvm-svn: 186738
Diffstat (limited to 'clang/lib/CodeGen/CGExprConstant.cpp')
-rw-r--r-- | clang/lib/CodeGen/CGExprConstant.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/clang/lib/CodeGen/CGExprConstant.cpp b/clang/lib/CodeGen/CGExprConstant.cpp index 4a6f90a30e7..431ee3c47ff 100644 --- a/clang/lib/CodeGen/CGExprConstant.cpp +++ b/clang/lib/CodeGen/CGExprConstant.cpp @@ -610,7 +610,7 @@ public: } llvm::Constant *VisitChooseExpr(ChooseExpr *CE) { - return Visit(CE->getChosenSubExpr(CGM.getContext())); + return Visit(CE->getChosenSubExpr()); } llvm::Constant *VisitCompoundLiteralExpr(CompoundLiteralExpr *E) { |