[Patch] libstdc++/20787 (DR 130)

Paolo Carlini pcarlini@suse.de
Fri Sep 2 23:44:00 GMT 2005


Paolo Carlini wrote:

>>>-      void
>>>+      iterator
>>>      erase(iterator __position)
>>>-      { _M_t.erase(__position); }
>>>+      { return _M_t.erase(__position); }
>>>
>>It might happen to be OK on some platforms, but I doubt it would be
>>safe on all.
>>
>Again, please explain.
>  
>
Ok, now I see the danger with this specific kind of change. The problem
is that I'm changing *only* the return type. This matters in case I'm
linking together object modules built with different versions of the
headers and both using the erase weak symbols.

I will apply the change only to v7-branch, too bad.

But many (most?) changes to the headers are not of this type, in general.

Paolo.



More information about the Libstdc++ mailing list