| // RUN: %clang_cc1 -fsyntax-only -fobjc-nonfragile-abi2 -verify %s |
| |
| @interface NSString @end |
| |
| @interface NSObject @end |
| |
| @interface SynthItAll |
| @property int howMany; |
| @property (retain) NSString* what; |
| @end |
| |
| @implementation SynthItAll |
| //@synthesize howMany, what; |
| @end |
| |
| |
| @interface SynthSetter : NSObject |
| @property (nonatomic) int howMany; // REM: nonatomic to avoid warnings about only implementing one of the pair |
| @property (nonatomic, retain) NSString* what; |
| @end |
| |
| @implementation SynthSetter |
| //@synthesize howMany, what; |
| |
| - (int) howMany { |
| return howMany; |
| } |
| // - (void) setHowMany: (int) value |
| |
| - (NSString*) what { |
| return what; |
| } |
| // - (void) setWhat: (NSString*) value |
| @end |
| |
| |
| @interface SynthGetter : NSObject |
| @property (nonatomic) int howMany; // REM: nonatomic to avoid warnings about only implementing one of the pair |
| @property (nonatomic, retain) NSString* what; |
| @end |
| |
| @implementation SynthGetter |
| //@synthesize howMany, what; |
| |
| // - (int) howMany |
| - (void) setHowMany: (int) value { |
| howMany = value; |
| } |
| |
| // - (NSString*) what |
| - (void) setWhat: (NSString*) value { |
| if (what != value) { |
| } |
| } |
| @end |
| |
| |
| @interface SynthNone : NSObject |
| @property int howMany; |
| @property (retain) NSString* what; |
| @end |
| |
| @implementation SynthNone |
| //@synthesize howMany, what; // REM: Redundant anyway |
| |
| - (int) howMany { |
| return howMany; |
| } |
| - (void) setHowMany: (int) value { |
| howMany = value; |
| } |
| |
| - (NSString*) what { |
| return what; |
| } |
| - (void) setWhat: (NSString*) value { |
| if (what != value) { |
| } |
| } |
| @end |
| |