diff options
| author | Fariborz Jahanian <fjahanian@apple.com> | 2010-08-23 18:51:39 +0000 |
|---|---|---|
| committer | Fariborz Jahanian <fjahanian@apple.com> | 2010-08-23 18:51:39 +0000 |
| commit | bf9294fb6531a2a6ea2fbbe2712b9bb650dfef04 (patch) | |
| tree | 96bda1a9bff0961047ab9fd5fcc1647535ce80d4 /clang/lib/Sema/SemaDecl.cpp | |
| parent | 99e9d6ffbfb8055b8e116b3b5ca38a2f83107c17 (diff) | |
| download | bcm5719-llvm-bf9294fb6531a2a6ea2fbbe2712b9bb650dfef04.tar.gz bcm5719-llvm-bf9294fb6531a2a6ea2fbbe2712b9bb650dfef04.zip | |
Support for IRGen of synthesize bitfield ivars in
objc-nonfragile-abi2 (radar 7824380).
llvm-svn: 111823
Diffstat (limited to 'clang/lib/Sema/SemaDecl.cpp')
| -rw-r--r-- | clang/lib/Sema/SemaDecl.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/clang/lib/Sema/SemaDecl.cpp b/clang/lib/Sema/SemaDecl.cpp index 0f9d12e6fe2..f08092f9220 100644 --- a/clang/lib/Sema/SemaDecl.cpp +++ b/clang/lib/Sema/SemaDecl.cpp @@ -6349,9 +6349,13 @@ Decl *Sema::ActOnIvar(Scope *S, ObjCContainerDecl *EnclosingContext; if (ObjCImplementationDecl *IMPDecl = dyn_cast<ObjCImplementationDecl>(EnclosingDecl)) { + if (!LangOpts.ObjCNonFragileABI2) { // Case of ivar declared in an implementation. Context is that of its class. - EnclosingContext = IMPDecl->getClassInterface(); - assert(EnclosingContext && "Implementation has no class interface!"); + EnclosingContext = IMPDecl->getClassInterface(); + assert(EnclosingContext && "Implementation has no class interface!"); + } + else + EnclosingContext = EnclosingDecl; } else { if (ObjCCategoryDecl *CDecl = dyn_cast<ObjCCategoryDecl>(EnclosingDecl)) { |

