On Wed, May 26, 2010 at 8:13 AM, vincent habchi <vi...@macports.org> wrote: > Le 26 mai 2010 à 13:40, jonat...@mugginsoft.com a écrit : > >> A subclass ivar is apparently overwriting a super class ivar. >> When an instance of MGS_B sets stderrData the super class ivar tempFilePath >> gets overwritten. > > If I am not mistaken, if your superclass ivar is private (!= protected), it > cannot be accessed from its subclasses. Thus, the compiler can choose to > reuse part of the heap dedicated to private variables to implement subclasses > own private ivars.
No way the compiler could do that. @private makes the superclass' ivars invisible to subclasses, but they're still there. They have to be, since the superclass' methods (which *can* see them) can be called on the subclass as well. There's nothing wrong with the ivar declarations - something must be going wrong at run time. Typically, when an object pointer seems to point to the wrong object, the prime suspect is memory management. But it's hard to say for sure, without seeing the relevant code. sherm-- -- Cocoa programming in Perl: http://www.camelbones.org _______________________________________________ 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