Generate code for member exprs.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43641 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/CodeGen/CGExprAgg.cpp b/CodeGen/CGExprAgg.cpp
index ea36225..7646081 100644
--- a/CodeGen/CGExprAgg.cpp
+++ b/CodeGen/CGExprAgg.cpp
@@ -61,6 +61,8 @@
// l-values.
void VisitDeclRefExpr(DeclRefExpr *DRE) { return EmitAggLoadOfLValue(DRE); }
+ void VisitMemberExpr(MemberExpr *ME) { return EmitAggLoadOfLValue(ME); }
+
// case Expr::ArraySubscriptExprClass:
// Operators.
diff --git a/test/CodeGen/struct.c b/test/CodeGen/struct.c
index 83ac4d2..329dfde 100644
--- a/test/CodeGen/struct.c
+++ b/test/CodeGen/struct.c
@@ -73,7 +73,20 @@
extern range f6();
void f7()
{
- range r = f6();
+ range r = f6();
+}
+
+/* Member expressions */
+typedef struct {
+ range range1;
+ range range2;
+} rangepair;
+
+void f8()
+{
+ rangepair p;
+
+ range r = p.range1;
}