hmmm. Your saying this doesn't work? NSBlockOperation * foo = [NSBlockOperation blockOperationWithBlock:^{ __block char array1[5];
array1[0] = 'T'; }]; It works fine for me. Are you saying something different? -Tony On Jun 26, 2010, at 7:16 PM, Bill Bumgarner wrote: > > On Jun 26, 2010, at 6:38 PM, Matt Neuburg wrote: > >> The docs say: "There are two further restrictions on __block variables: they >> cannot be variable length arrays, and cannot be structures that contain C99 >> variable-length arrays." >> >> This would seem to imply that a __block variable *can* be a *fixed* length >> array. But when I try to write into such an array inside a block, I get a >> compile error, "cannot access __block variable of array type inside block." >> >> Who's mistaken, the compiler or the docs? Thx - m. > > Neither. The issue is that a block array in C is, technically, sorta-kinda > variable length unless you do something to make it fixed length. I don't > remember the exact details beyond that it is a subtle edge case. > > That something is typically to encapsulate it into a Struct. > > This: > > void foo() { > char barfy[100]; > > ^() { > char b = barfy[0]; <<<< error: cannot access copied-in variable of > array type inside block > b = b; > }; > } > > This compiles just fine: > > void bar() { > struct angus { > char barfy[100]; > } kangus; > > ^() { > char b = kangus.barfy[0]; > b = b; > }; > } > > 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/tonyrom%40hotmail.com > > This email sent to tony...@hotmail.com > -Tony _______________________________________________ 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