http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47822
--- Comment #17 from Iain Sandoe <iains at gcc dot gnu.org> 2011-02-21 10:08:51 UTC --- there was no intention to create a hack (or any other form of expedient work); ... if it is wrong, then it is likely a mistake on my part when importing the original implementation from the 4.3-era branch. -- I have applied the patch @ comment #8 to r170338 on i686-darwin9 and powerpc-darwin9. It works on i686 ... ... but it does not work on powerpc. (both as comment #8 is written and with RS6000_BUILTIN_CFSTRING as the argument to darwin_init_cfstring_builtins) -- checking in gdb for cc1obj and lto1 -- darwin_init_cfstring_builtins () is being called for both (and with the same index value in each case). The routine appears be initializing the built-in correctly in both cases. (the same reported error is also present for a simple CFString c program, so not likely an objc problem). the programs compile and execute correctly without lto. .. any hints as to what additional steps are required for ppc would be appreciated.