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: EEEEKS! The mangling changed!


On Wed, Dec 03, 2003 at 03:17:33AM +0100, Gabriel Dos Reis wrote:
> Mechanic renaming of __gnu_norm::vector<MyType> to std::vector<MyType>
> makes the assumption that there is no std::vector<dMyType> lurking
> there.

That is correct.

> Some assumptions does not hold in general -- by design.

But this one does.  It would be an error if there did exist
a __gnu_norm::vector<MyType> and a std::vector<MyType> at
the same time.

Now I assume you are refering to specialization of vector<MyType>
inside namespace std by the user, but - because of the 'strong'
attribute of the 'using namespace std' in namespace __gnu_norm,
that would give rize to no __gnu_norm::vector<MyType> being
emitted right?  So there will be no problem as a result of
mangling __gnu_norm:: as "St".  This is a logical result of
the whole idea behind __gnu_norm.  If using "St" would break
anything, then the _current_ design is broken.

> It may look similar, but I don't think it is the same.  And I stated
> before  (both when you initialy submitted your work and when I sent a
> message a few days ago), that clearly indicate something is fishy.

I don't think so.  It might seem so to you, but I think there
is no problem whatsoever.  That placing me in a weaker position:
it will be easier for you to prove me wrong by giving a single
example that fails, then for me to prove I am right...  Please
give an example that shows that changing the mangling of __gnu_norm
into whatever std is mangled to will give problems while in the
same situation without that mangling change it would be fine.

-- 
Carlo Wood <carlo@alinoe.com>


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