http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46916
--- Comment #16 from Iain Sandoe <iains at gcc dot gnu.org> 2010-12-14 10:39:10 UTC --- (In reply to comment #15) > Also it is clear who starts the infinite recursion? I find it odd, that > disabling the function partitioning lead to need to explicitely declare > unlikely section. Is someone else trying to access it and fail for some > reason? well.... the pre-existing implementation of : static section * darwin_text_section (int reloc, int weak) { if (reloc) return (weak ? darwin_sections[text_unlikely_coal_section] : unlikely_text_section ()); <<<<<<<<+++++++++ else return (weak ? darwin_sections[text_coal_section] : text_section); } ... is invoked when darwin_function_section () returns NULL.