On Dec 24, 2014, at 9:28 AM, Dimitris Papavasiliou <dpapa...@gmail.com> wrote: > The attached patch fixes an issue reported a couple of years ago in Bug 51891 > (https://gcc.gnu.org/bugzilla/show_bug.cgi?id=51891). The problem is caused > because classes without instance variables have no ivar list at all, so that > their ivars pointer is NULL, but the code in class_copyIvarList () is unaware > of this. > > That this is in fact so can be easily verified by checking the code of > class_addIvar in the same source file, where the ivars list is allocated when > the first ivar is added. The code there also checks for a NULL ivars pointer. > > The patch also adds a simple test-case for this issue. I think that the > ChangeLog entry should be something along the lines of: > > 2014-12-24 Dimitris Papavasiliou <dpapa...@gmail.com> > > PR libobjc/51891 > * libobjc/ivars.c: Add a check for classes without instance > variables, which have a NULL ivar list pointer. > * gcc/testsuite/objc.dg/gnu-api-2-class.m: Add a test case > for the above change. > > I hope I got the formatting right. I've run make -k check-objc and all tests > pass without problems. > > Let me know if there are any problems, or if I can do anything else to > facilitate the acceptance of the patch. > > Regards, > Dimitris
So, Andrew is the reviewer for libobjc. I’m not. I don’t have any issue with it. Andrew?
class_copyIvarList_bugfix.diff
Description: Binary data