diff options
Diffstat (limited to 'clang/CodeGen/CGExprComplex.cpp')
| -rw-r--r-- | clang/CodeGen/CGExprComplex.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/clang/CodeGen/CGExprComplex.cpp b/clang/CodeGen/CGExprComplex.cpp index e4598c41f3d..d4e209476dd 100644 --- a/clang/CodeGen/CGExprComplex.cpp +++ b/clang/CodeGen/CGExprComplex.cpp @@ -92,7 +92,8 @@ public: return EmitCast(E->getSubExpr(), E->getType()); } ComplexPairTy VisitCallExpr(const CallExpr *E); - + ComplexPairTy VisitStmtExpr(const StmtExpr *E); + // Operators. ComplexPairTy VisitPrePostIncDec(const UnaryOperator *E, bool isInc, bool isPre); @@ -242,6 +243,10 @@ ComplexPairTy ComplexExprEmitter::VisitCallExpr(const CallExpr *E) { return CGF.EmitCallExpr(E).getComplexVal(); } +ComplexPairTy ComplexExprEmitter::VisitStmtExpr(const StmtExpr *E) { + return CGF.EmitCompoundStmt(*E->getSubStmt(), true).getComplexVal(); +} + /// EmitComplexToComplexCast - Emit a cast from complex value Val to DestType. ComplexPairTy ComplexExprEmitter::EmitComplexToComplexCast(ComplexPairTy Val, QualType SrcType, |

