diff options
author | Fariborz Jahanian <fjahanian@apple.com> | 2008-12-13 22:20:28 +0000 |
---|---|---|
committer | Fariborz Jahanian <fjahanian@apple.com> | 2008-12-13 22:20:28 +0000 |
commit | b1378f9b0fdc65714985d50a9b0c24537afd713a (patch) | |
tree | a3124bc6221eeae6b6a40c524253c09c588ce13f /clang/lib/CodeGen/CGObjC.cpp | |
parent | b5670fd5555f5349128ecd54ad5d4c7bb6f72f60 (diff) | |
download | bcm5719-llvm-b1378f9b0fdc65714985d50a9b0c24537afd713a.tar.gz bcm5719-llvm-b1378f9b0fdc65714985d50a9b0c24537afd713a.zip |
Patch for ObjCIvarRefExpr containing the field
matching the storage layout for this ivar
llvm-svn: 60996
Diffstat (limited to 'clang/lib/CodeGen/CGObjC.cpp')
-rw-r--r-- | clang/lib/CodeGen/CGObjC.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/clang/lib/CodeGen/CGObjC.cpp b/clang/lib/CodeGen/CGObjC.cpp index e605065848d..f955782ffdc 100644 --- a/clang/lib/CodeGen/CGObjC.cpp +++ b/clang/lib/CodeGen/CGObjC.cpp @@ -272,7 +272,9 @@ void CodeGenFunction::GenerateObjCSetter(ObjCImplementationDecl *IMP, DeclRefExpr Base(Self, Self->getType(), Loc); ParmVarDecl *ArgDecl = OMD->getParamDecl(0); DeclRefExpr Arg(ArgDecl, ArgDecl->getType(), Loc); - ObjCIvarRefExpr IvarRef(Ivar, Ivar->getType(), Loc, &Base, + ObjCInterfaceDecl *OI = IMP->getClassInterface(); + FieldDecl *FD = OI->lookupFieldDeclForIvar(getContext(), Ivar); + ObjCIvarRefExpr IvarRef(Ivar, FD, Ivar->getType(), Loc, &Base, true, true); BinaryOperator Assign(&IvarRef, &Arg, BinaryOperator::Assign, Ivar->getType(), Loc); |