On 27 November 2007 15:49, Stephane Hockenhull wrote: >> But why are you using -fleading-underscore? > > on the win32 platform all C symbols requires a leading underscore
Yes, that is the case on almost all platforms. And the compiler *automatically* puts leading underscores on symbols on all those platforms already. So the question remains: why are you using -fleading-underscores? -fleading-underscore is intended for use on platforms that *don't* require a leading underscore (e.g. ppc), where you might for special reasons want to force the symbols to have an underscore anyway. > everything works fine until we start using std::string objects, there is a > bug with the special case name mangling. > > http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34166 Yes, but as you yourself explain, the symbols already have leading underscores, and when you use -fleading-underscore, because it fails to consistently add *extra* underscores. So: why are you using -fleading-underscores? cheers, DaveK -- Can't think of a witty .sigline today....