This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC 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: PING: [patch] fix c++/33558 - references cannot be mutable


On 1 January 2011 22:34, Jonathan Wakely wrote:
> On 22 December 2010 14:53, Jonathan Wakely ?wrote:
>> This is a very small patch to fix a standard conformance issue.
>>
>> I've made it a permerror so broken code can use -fpermissive and
>> doesn't need to be fixed.
>>
>> I'd really like to get this in 4.6, so pinging for review
>
> ... again

I'd given up and was going to wait for 4.7, but I have been encouraged
to try to get this reviewed again.

cp/ChangeLog entry:

2010-12-18 ?Giovanni Funchal ?<gafunchal@gmail.com>
? ? ? ? ? ?Jonathan Wakely ?<jwakely.gcc@gmail.com>

? ? ? ?PR c++/33558
? ? ? ?* decl.c (grokdeclarator): Reject mutable reference members.

testsuite/ChangeLog entry:

2010-12-18 ?Giovanni Funchal ?<gafunchal@gmail.com>
? ? ? ? ? ?Jonathan Wakely ?<jwakely.gcc@gmail.com>

? ? ? ?PR c++/33558
? ? ? ?* testsuite/g++.dg/other/pr33558.C: New.
? ? ? ?* testsuite/g++.dg/other/pr33558-2.C: New.

Tested x86_64-linux, ok for trunk?


>> On 18 December 2010 18:57, Jonathan Wakely wrote:
>>> This is a slightly modified version of the patch attached to PR33558
>>> which was posted to gcc-patches but apparently never reviewed. ?I
>>> don't know if the author of the original patch, Giovanni, has a
>>> copyright assignment but I think the change is obvious and I hope is
>>> sufficiently small to not need an assignment. I was in the process of
>>> making the same change when I found his patch on the PR and copied the
>>> wording of his diagnostic and testcase.
>>>
>>> Sun CC and g++ both incorrectly accept mutable references, so it might
>>> not be uncommon in the wild (I found a use in some production code
>>> yesterday.) ?This version of the patch allows mutable on reference
>>> members when -fpermissive is used, giving old code a transition path.
>>> I'll add a note to changes.html if this is approved.
>>>
>>> tested x86_64-linux, OK for trunk?
>>>
>>>
>>> cp/ChangeLog entry:
>>>
>>> 2010-12-18 ?Giovanni Funchal ?<gafunchal@gmail.com>
>>> ? ? ? ? ? ?Jonathan Wakely ?<jwakely.gcc@gmail.com>
>>>
>>> ? ? ? ?PR c++/33558
>>> ? ? ? ?* decl.c (grokdeclarator): Reject mutable reference members.
>>>
>>> testsuite/ChangeLog entry:
>>>
>>> 2010-12-18 ?Giovanni Funchal ?<gafunchal@gmail.com>
>>> ? ? ? ? ? ?Jonathan Wakely ?<jwakely.gcc@gmail.com>
>>>
>>> ? ? ? ?PR c++/33558
>>> ? ? ? ?* testsuite/g++.dg/other/pr33558.C: New.
>>> ? ? ? ?* testsuite/g++.dg/other/pr33558-2.C: New.
>>>
>>
>

Attachment: 33558.txt
Description: Text document


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