From mboxrd@z Thu Jan 1 00:00:00 1970 From: hjl@lucon.org (H.J. Lu) To: jason@cygnus.com (Jason Merrill) Cc: jbuck@synopsys.com, egcs@cygnus.com Subject: Re: (1.0.2) std/bastring.h change -- Why add std/bastring.cc? Date: Tue, 17 Feb 1998 15:16:00 -0000 Message-id: References: X-SW-Source: 1998-02/msg00838.html > > >>>>> Joe Buck writes: > > >> Both pre-1.0.2 and new'ish snapshots have the Jason's Feb 12 change > >> where he adds bastring.cc to bastring.h. Why was this necessary? It > >> would seem to cause unnecessary code-bloat on non-ELF (and PE when > >> the bugs are fixed) systems. What am I missing here? > > This was motivated by the undefined symbols on linux problem; the library > was being built thread-safe, and user code not, and the two are not > link-compatible. > > In general, the previous arrangement was restricting people from using any > instantiation of basic_string other than the usual one. > Well, my STL addresses exactly that problem in a different approach. It builds libstdc++ thread-safe, but uses the weak symbols in glibc to deal with non-thread user code. BTW, it is the way how we make glibc thread-safe. H.J.