On Oct 10, 2010, at 10:20 AM, Bill Bumgarner wrote:

> On Oct 10, 2010, at 5:10 AM, Jerry Krinock wrote:
> 
>> In deciding how to solve the problem, I'd like to know how gcc solved the 
>> problem!  It seems there are three choices:
>> 
>> (1) Wrap my non-atomic custom setter/getter code to make it atomic.
>> (2) Change my declaration to make it nonatomic.
>> (3) Somehow ignore the rule and compile the code as I wrote it.
>> 
>> Which did gcc do?
> 
> GCC ignored the problem and happily generated code that wasn't atomic.

That is, GCC is broken.  LLVM is correct in indicating that your code is broken.

To fix, either let the compiler synthesize both getter and setter or implement 
both.

Note that 'atomic' has nothing to do with thread safety.  In almost all cases, 
declaring the @property as 'nonatomic' is the right answer (in that your thread 
safety -- if needed -- is at a higher level of then individual properties).

b.bum

_______________________________________________

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:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to