On 20 Aug 2013, at 19:24, Uli Kusterer <witness.of.teacht...@gmx.net> wrote:
> You're missing an @synthesize privateData = _privateData; in your > @implementation, would be my guess. There is no @synthesize, this is true. But Xcode normally does not mind, and I think this is (since when?) no longer necessary (maybe only in 64 bit?). > > On Aug 20, 2013, at 1:07 PM, Gerriet M. Denkmann <gerr...@mdenkmann.de> wrote: >> Trying to convert an older project to Arc, Xcode complains about "Use of >> undeclared identifier '_privateDate'". >> And threatens that nothing will be done unless I fix this first. >> >> Well - for one: without Arc there are no undeclared identifiers. (Builds >> without error or warnings). >> >> The class with problems looks like: >> >> @interface SomeClass( ) >> >> @property (strong) NSDate *privateDate; >> >> @end >> >> >> @implementation SomeClass >> >> - (id)initAt:(NSDate *)someDate ; >> { >> self = [ super init ]; >> if ( self == nil ) return nil; >> >> _privateDate = [ someDate retain ]; >> >> return self ; >> } >> >> ... some other stuff omitted ... >> >> @end >> >> I always thought that using accessors (like self.privateDate) in init >> methods was NOT a good idea, because at this point the thing might not be >> completely initialised and functional, so one had better use _privateDate >> directly. >> And the accessor methods like setPrivateDate: might rely on a completely >> functional object. >> >> Is this correct? >> >> How to placate Xcode? >> >> Gerriet. _______________________________________________ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com