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]

[patch] fix c++/33558 - references cannot be mutable


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]