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

Reply via email to