This patch fixes two bugs in the GNU Objective-C runtime implementation. One is a case in rethrowing exceptions where the C types don't match correctly (I already sent this patch to Daniel Dunbar, who found the bug, so it may have already been committed). The other fixes the case properties so that the methods generated as property accessors are added to the class structure correctly.
clang.diff (1.92 KB)
codegen-gnu.m seems to be failing for me now with this applied
(whereas it was silently passing, but crashing, before):
This regression was caused by the fact that I added references to property set/get methods without checking whether they were actually implemented. I've updated the diff so that it now tests this.
I've also addressed the FIXME in this test; the GNU back end can now handle all of the syntax in the included file, so the -D line is not required.
With the attached version of the diff, all relevant tests now pass for me.
clang.diff (4.47 KB)