[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 10:11, Jonathan Wakely wrote:
> 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.
If I can convince myself this can't happen then I'll commit it, but I
need to look into it further this evening.
More information about the Libstdc++
mailing list