[Bug c++/26912] [4.0/4.1/4.2 Regression] friend const member function specialization fails to compile

mmitchel at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Mon Apr 24 03:50:00 GMT 2006



------- Comment #2 from mmitchel at gcc dot gnu dot org  2006-04-24 03:50 -------
Subject: Bug 26912

Author: mmitchel
Date: Mon Apr 24 03:50:31 2006
New Revision: 113213

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=113213
Log:
        PR c++/26912
        * cp-tree.h (build_this_parm): Declare.
        (grok_method_quals): Remove.
        (build_memfn_type): Declare.
        (build_artificial_parm): Declare.
        (do_friend): Remove quals parameter.
        * decl.c (build_this_parm): New function.
        (grokfndecl): Use it.  Do not pass quals to grokclassfn.
        (grokdeclarator): Rename quals to memfn_quals.  Avoid allocating
        unnecessary TYPE_DECLs.  Correct qualification of member function
        types.  Tidy.
        * method.c (implicitly_declare_fn): Use build_this_parm.
        * friend.c (do_friend): Remove quals parameter.
        * decl2.c (grok_method_quals): Remove.
        (build_memfn_type): New function.
        (build_artificial_parm): Give it external linkage.
        (grokclassfn): Remove quals parameter.  Do not build "this"
        PARM_DECL here.
        PR c++/26912
        * g++.dg/template/friend41.C: New test.

Added:
    trunk/gcc/testsuite/g++.dg/template/friend41.C
Modified:
    trunk/gcc/cp/ChangeLog
    trunk/gcc/cp/cp-tree.h
    trunk/gcc/cp/decl.c
    trunk/gcc/cp/decl2.c
    trunk/gcc/cp/friend.c
    trunk/gcc/cp/method.c
    trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26912



More information about the Gcc-bugs mailing list