mirror of
https://github.com/Gericom/teak-llvm.git
synced 2025-06-27 07:19:03 -04:00

With this change, most 'g' options are rejected by CompilerInvocation. They remain only as Driver options. The new way to request debug info from cc1 is with "-debug-info-kind={line-tables-only|limited|standalone}" and "-dwarf-version={2|3|4}". In the absence of a command-line option to specify Dwarf version, the Toolchain decides it, rather than placing Toolchain-specific logic in CompilerInvocation. Also fix a bug in the Windows compatibility argument parsing in which the "rightmost argument wins" principle failed. Differential Revision: http://reviews.llvm.org/D13221 llvm-svn: 249655
58 lines
1.0 KiB
Objective-C
58 lines
1.0 KiB
Objective-C
// RUN: %clang_cc1 -emit-llvm -x objective-c -debug-info-kind=limited -triple x86_64-apple-macosx10.8.0 %s -o - | FileCheck %s
|
|
//
|
|
// rdar://problem/14035789
|
|
//
|
|
// Ensure we emit the names of explicit/renamed accessors even if they
|
|
// are defined later in the implementation section.
|
|
//
|
|
// CHECK: !DIObjCProperty(name: "blah"
|
|
// CHECK-SAME: getter: "isBlah"
|
|
|
|
@class NSString;
|
|
extern void NSLog(NSString *format, ...);
|
|
typedef signed char BOOL;
|
|
|
|
#define YES ((BOOL)1)
|
|
#define NO ((BOOL)0)
|
|
|
|
typedef unsigned int NSUInteger;
|
|
|
|
@protocol NSObject
|
|
@end
|
|
|
|
@interface NSObject <NSObject>
|
|
- (id)init;
|
|
+ (id)alloc;
|
|
@end
|
|
|
|
@interface Bar : NSObject
|
|
@property int normal_property;
|
|
@property (getter=isBlah, setter=setBlah:) BOOL blah;
|
|
@end
|
|
|
|
@implementation Bar
|
|
@synthesize normal_property;
|
|
|
|
- (BOOL) isBlah
|
|
{
|
|
return YES;
|
|
}
|
|
- (void) setBlah: (BOOL) newBlah
|
|
{
|
|
NSLog (@"Speak up, I didn't catch that.");
|
|
}
|
|
@end
|
|
|
|
int
|
|
main ()
|
|
{
|
|
Bar *my_bar = [[Bar alloc] init];
|
|
|
|
if (my_bar.blah)
|
|
NSLog (@"It was true!!!");
|
|
|
|
my_bar.blah = NO;
|
|
|
|
return 0;
|
|
}
|