Jason Merrill wrote:

>> So, do you consider ABIv3 there only as a theoretical conformance
>> option?  In other words, not something we're going to make the default
>> in any forseeable future?  (Those aren't meant to be rhetorical
>> questions -- I'm just asking.)
> 
> That has been my thinking, but perhaps it does make sense to make that
> change with the C++0x library deployment; the impact should be pretty
> limited.

I'd also expect that on embedded systems (even embedded GNU/Linux
systems) people won't want the compatibility stuff in libstdc++.
There's not much benefit in backwards compatibility if you're building
everything for your new device, and a lot of benefit in making your
binaries smaller.

So, I still tend to think that the best thing is to put the vector stuff
into v4, and switch that on when we update libstdc++.  I think your
suggest is coherent and well-reasoned, but it seems like a lot of
complexity to deal with a template corner case.

I guess another option is -fabi-version=implement-c++-for-petes-sake
which means "use the ABI that implements as much of the language as
possible".  That would be your version 2.1, but arguably more logically
coherent in that it would be expected to move in the future if/when we
find another feature we can't implement due to current mangling issues.

-- 
Mark Mitchell
CodeSourcery
m...@codesourcery.com
(650) 331-3385 x713

Reply via email to