[forwarded from http://bugs.debian.org/426809] seen with trunk 20080123 another possibility might be to unset the locale, or set it to C Matthias The g++ -frepo option only works with C locale, not with es_UY for example. A possible test case is: template<class T> class C { public: C(); }; template<class T> C<T>::C() { } int main(void) { C<int> x; return 0; } g++ -c -frepo a.C g++ -frepo -o a a.o If you set the locale to C, then it will compile, if you set the locale to a non english one, it will fail. I guess that collect2 binutils ld output parser doesn't recognise the internationalized output (file gcc/tlink.c). One possible solution is to internationalize the strings in scan_linker_output() to match those internationalized in binutils ld.
LANG=es_UY g++ pr34942.c -c -frepo works fine for me.