diff options
Diffstat (limited to 'lib/CodeGen/CGExpr.cpp')
-rw-r--r-- | lib/CodeGen/CGExpr.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/CodeGen/CGExpr.cpp b/lib/CodeGen/CGExpr.cpp index 3d07403b07..12a8002de3 100644 --- a/lib/CodeGen/CGExpr.cpp +++ b/lib/CodeGen/CGExpr.cpp @@ -1034,6 +1034,8 @@ LValue CodeGenFunction::EmitLValueForField(llvm::Value* BaseValue, llvm::PointerType::get(FieldTy, AS), "tmp"); } + if (Field->getType()->isReferenceType()) + V = Builder.CreateLoad(V, "tmp"); QualType::GCAttrTypes attr = QualType::GCNone; if (CGM.getLangOptions().ObjC1 && |