From: Devang Patel Date: Thu, 12 May 2011 21:14:54 +0000 (+0000) Subject: Do not add AT_APPLE_objc_class_extension attribute if @implementation is not seen. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=f568b6459dd6df59b809a798cb198b4438c13abe;p=clang Do not add AT_APPLE_objc_class_extension attribute if @implementation is not seen. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@131242 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/CodeGen/CGDebugInfo.cpp b/lib/CodeGen/CGDebugInfo.cpp index 3519cd1f38..6def71fe54 100644 --- a/lib/CodeGen/CGDebugInfo.cpp +++ b/lib/CodeGen/CGDebugInfo.cpp @@ -1242,8 +1242,7 @@ llvm::DIType CGDebugInfo::CreateType(const ObjCInterfaceType *Ty, uint64_t Align = CGM.getContext().getTypeAlign(Ty); unsigned Flags = 0; - if (ID->getFirstClassExtension() || - (ID->getImplementation() && !ID->getImplementation()->ivar_empty())) + if (ID->getImplementation()) Flags |= llvm::DIDescriptor::FlagObjcClassExtension; llvm::DIType RealDecl = diff --git a/test/CodeGenObjC/debug-info-class-extension3.m b/test/CodeGenObjC/debug-info-class-extension3.m new file mode 100644 index 0000000000..549a2adea1 --- /dev/null +++ b/test/CodeGenObjC/debug-info-class-extension3.m @@ -0,0 +1,12 @@ +// RUN: %clang_cc1 -fobjc-nonfragile-abi -masm-verbose -S -g %s -o - | FileCheck %s + +// CHECK-NOT: AT_APPLE_objc_class_extension + +@interface Foo {} @end + +@interface Foo () { + int *bar; +} +@end + +void bar(Foo *fptr) {}