This is the mail archive of the libstdc++@gcc.gnu.org mailing list for the libstdc++ project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: versioning C++ includes


Nathan Myers <ncm-nospam@cantrip.org> writes:

[...]

| > | I like this idea a lot.  There's more to do to make it work, though.  
| > | We should incorporate the ABI version -- that portion of the release 
| > | version whose ABI is frozen, "3.1" for now -- into the library name 
| > 
| > I think the binary compatibility issues are incorporated in the
| > installed .so (or .a) name -- existing practice.  As far as source
| > code is concerned, it suffices to use the compiler release number. 
| 
| I agree that existing practice solves the version problem for programs 
| that use only libstdc++.so.  People using g++ sometimes also use other 
| C++ libraries.  There is no good solution in place to allow them to use 
| two libraries of the same release version, but built with different 
| compilers.  This is necessary if you hope to run two C++ programs you 
| didn't build.  Without a solution, everybody building for "your"
| machine and who uses any C++ library has to use the same compiler
| version, because there's no place to put the libraries they need.
| 
| Do you see the problem?

I see the problem but, I don't think we can do anything better then
what Benjamin is proposing.  People using other C++ runtime systems are
out of the realm of V3.  People using other C++ libraries, but retaining
our runtime system should view V3 as an *integral part* of the compiler.

Anything other than that is out of the scope of V3.  We already have
pains withg libtools.  I'm not convinced that we should duplicate them
one more time. 

C++ is designed so that there is no clear separation between the
language and the runtime system, therefore fiddling with different
ABI+compiler isn't something that is going to work.

-- Gaby


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]