diff options
author | Eli Friedman <eli.friedman@gmail.com> | 2009-05-30 21:09:44 +0000 |
---|---|---|
committer | Eli Friedman <eli.friedman@gmail.com> | 2009-05-30 21:09:44 +0000 |
commit | 2be586108bb401019647791feca19ea03fd477ce (patch) | |
tree | 752f18ffc17cae9ae92ad8508c3e0a6ff55d5baa /lib/CodeGen/CGExpr.cpp | |
parent | ff6b3d64c9f07155f1414411b8451d7bf8937c62 (diff) |
Some small fixes for fields of reference type.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72636 91177308-0d34-0410-b5e6-96231b3b80d8
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 && |