[PATCH, libstdc++] Make empty std::string storage readonly

Jonathan Wakely jwakely.gcc@gmail.com
Tue Oct 30 10:36:00 GMT 2012


On 30 October 2012 09:28, Jonathan Wakely wrote:
> On 30 October 2012 09:05, Michael Haubenwallner wrote:
>> Any chance to get this in for 4.8?
>
> I'm looking into it today.

Consider the case where one object file containing
std::string().erase() is built with an older GCC without the fix for
PR 40518, then it's linked to a new libstdc++.so where the empty rep
is read-only.  The program will attempt to write to the empty rep, but
now it's read-only and will crash.  I don't think we can apply it
unless we change the library ABI so that no pre-PR40518 objects can
link to a libstdc++.so containing a read-only empty rep.



More information about the Gcc-patches mailing list