gcc-3.1 template inst. sometimes being emitted as global functions?

Benjamin Kosnik bkoz@constant.com
Wed Jun 26 23:36:00 GMT 2002



> > > For a handful of our source files, the `std::string::assign(char
> > > const*, unsigned)' method is being instantiated and emitted in objects
> > > as a global function, which results in multiple definition errors
> > > during linking.  In all our other files, it's a unresolved reference
> > > (which is satisfied by libstdc++.a).
> > 
> > This is somewhat familiar. There was a problem with the 'external
> > template' template syntax in the libstdc++-v3 header files on some
> > targets, which may be related. 
> > 
> > See:
> > http://gcc.gnu.org/ml/gcc-patches/2002-05/msg01466.html
> 
> Thanks, I applied that change to my tree and everything works fine now.

Jason, shouldn't that patch be in the gcc-3_1-branch sources by default?

Unrelated, J.T: I'd like to move the "c" header configure patches to 
gcc-3_1-branch. Sound ok?

-benjamin



More information about the Gcc-bugs mailing list