add some fixme's, implement complex struct members.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@41256 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/CodeGen/CGComplexExpr.cpp b/CodeGen/CGComplexExpr.cpp
index 174748a..e5abf68 100644
--- a/CodeGen/CGComplexExpr.cpp
+++ b/CodeGen/CGComplexExpr.cpp
@@ -72,7 +72,13 @@
// l-values.
ComplexPairTy VisitDeclRefExpr(Expr *E) { return EmitLoadOfLValue(E); }
ComplexPairTy VisitArraySubscriptExpr(Expr *E) { return EmitLoadOfLValue(E); }
+ ComplexPairTy VisitMemberExpr(Expr *E) { return EmitLoadOfLValue(E); }
+ // FIXME: Call
+ // FIXME: CompoundLiteralExpr
+ // FIXME: ImplicitCastExpr
+ // FIXME: CastExpr
+
// Operators.
ComplexPairTy VisitPrePostIncDec(const UnaryOperator *E,
bool isInc, bool isPre);
@@ -99,9 +105,6 @@
return Visit(E->getSubExpr());
}
- // case Expr::ImplicitCastExprClass:
- // case Expr::CastExprClass:
- // case Expr::CallExprClass:
ComplexPairTy VisitBinMul (const BinaryOperator *E);
ComplexPairTy VisitBinAdd (const BinaryOperator *E);
// FIXME: div/rem
@@ -110,7 +113,7 @@
// No comparisons produce a complex result.
ComplexPairTy VisitBinAssign (const BinaryOperator *E);
-
+ // FIXME: Compound assignment operators.
ComplexPairTy VisitBinComma (const BinaryOperator *E);