On 8/25/2011 10:06 AM, Carlos O'Donell wrote: > On 8/25/2011 6:37 AM, Rolf Eike Beer wrote: >> const&)]+0xbc): cannot reach >> 00004abb__ZNSt8_Rb_treeIN5cmsys6StringESt4pairIKS1_iESt10_Select1stIS4_ESt4lessIS1_ESaIS4_EE8_S_rightEPSt18_Rb_tree_node_base+0, >> recompile with -ffunction-sections > So did you recompile with -ffunction-sections? > > The basic problem is that the linker was unable to insert a jump > to the requested function because it was too far away. Some targets > like hppa have short branch distances and we use intermediate stub > tables to get around that. However, we can't insert stub tables just > anywhere, they need to go between sections. Therefore you need to > break up this object file. I think there is a real bug here but nobody has provided a test case. -ffunction-sections probably won't help. Stub sizes vary depending on whether PIC code or non PIC code is being generated. We need a bigger stub table for PIC C++ code as C++ tends to generate a lot of small routines. I've attached the GCC part of the change. There's also a binutils patch which I can't access at the moment. Dave -- John David Anglin dave.anglin@bell.net