On Wed, Feb 06, 2013 at 09:15:20PM +0100, Patrick Marlier wrote: > About this old patch > http://gcc.gnu.org/ml/gcc-patches/2012-02/msg00851.html, I though that > "&& !defined (__MACH__)" should be changed but it seems the best > way...
Actually on reflection this conditional may be why the proposed patch doesn't work under 10.6 with Xcode 4.2. That configuration, unlike Xcode 4.5.2/4.6 on 10.7/10.8, doesn't cause HAVE_ELF_STYLE_WEAKREF to be defined and the testcase was failing with undefined symbols for _ZdlPv. Since Xcode 4.2 has an undefined dynamic lookup bug and Iain said the patch worked with Xcode 3.2.6 on 10.6, I didn't explore further. I can test tomorrow removing the "&& !defined (__MACH__)" from libitm/eh_cpp.cc and libitm/alloc_cpp.cc to see if that fixes the Xcode 4.2/10.6 combination. However, from the original comments added to the code, this likely will cause the problem with undefined weak refs being improperly handled at link to time to return for older Xcode's. Do we know exactly which Xcode releases show that issue? Jack > > Thanks for the precision about XCode. > > Note that I cannot approve anything. So the patch must be approved by > a GCC master ;) > -- > Patrick