This is the mail archive of the gcc-bugs@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]

[Bug c++/51145] [C++11][DR 1131] Alias template in elaborated-type-specifier accepted


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

--- Comment #5 from Dodji Seketeli <dodji at gcc dot gnu.org> 2011-11-23 08:24:08 UTC ---
Author: dodji
Date: Wed Nov 23 08:23:59 2011
New Revision: 181653

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=181653
Log:
PR c++/51145 - Alias template in elaborated-type-specifier accepted

gcc/cp/

    PR c++/51145
    * decl.c (check_elaborated_type_specifier): Gracefully handle
    error_mark_node.  Accept bound template template parameters.
    Update diagnostics for alias template specializations.  Update
    comment.
    * parser.c (cp_parser_elaborated_type_specifier): Use
    check_elaborated_type_specifier for simple-template-ids as well.

gcc/testsuite/

    PR c++/51145
    * g++.dg/cpp0x/alias-decl-14.C: New test.
    * g++.dg/cpp0x/alias-decl-2.C: Adjust for tests that were wrongly
    passing before.
    * g++.dg/cpp0x/alias-decl-10.C: Likewise and adjust for diagnostic
    change.
    * g++.dg/ext/attrib27.C: Adjust for diagnostic change.
    * g++.dg/lookup/struct1.C: Likewise.
    * g++.dg/parse/elab1.C: Likewise.
    * g++.dg/parse/elab2.C: Likewise.
    * g++.dg/parse/int-as-enum1.C: Likewise.
    * g++.dg/parse/typedef1.C: Likewise.
    * g++.dg/parse/typedef3.C: Likewise.
    * g++.dg/parse/typedef4.C: Likewise.
    * g++.dg/parse/typedef5.C: Likewise.
    * g++.dg/template/crash26.C: Likewise.
    * g++.dg/template/nontype4.C: Likewise.
    * g++.old-deja/g++.benjamin/typedef01.C: Likewise.
    * g++.old-deja/g++.brendan/line1.C: Likewise.
    * g++.old-deja/g++.other/elab1.C: Likewise.
    * g++.old-deja/g++.other/syntax4.C: Likewise.

Added:
    trunk/gcc/testsuite/g++.dg/cpp0x/alias-decl-14.C
Modified:
    trunk/gcc/cp/ChangeLog
    trunk/gcc/cp/decl.c
    trunk/gcc/cp/parser.c
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/testsuite/g++.dg/cpp0x/alias-decl-10.C
    trunk/gcc/testsuite/g++.dg/cpp0x/alias-decl-2.C
    trunk/gcc/testsuite/g++.dg/ext/attrib27.C
    trunk/gcc/testsuite/g++.dg/lookup/struct1.C
    trunk/gcc/testsuite/g++.dg/parse/elab1.C
    trunk/gcc/testsuite/g++.dg/parse/elab2.C
    trunk/gcc/testsuite/g++.dg/parse/int-as-enum1.C
    trunk/gcc/testsuite/g++.dg/parse/typedef1.C
    trunk/gcc/testsuite/g++.dg/parse/typedef3.C
    trunk/gcc/testsuite/g++.dg/parse/typedef4.C
    trunk/gcc/testsuite/g++.dg/parse/typedef5.C
    trunk/gcc/testsuite/g++.dg/template/crash26.C
    trunk/gcc/testsuite/g++.dg/template/nontype4.C
    trunk/gcc/testsuite/g++.old-deja/g++.benjamin/typedef01.C
    trunk/gcc/testsuite/g++.old-deja/g++.brendan/line1.C
    trunk/gcc/testsuite/g++.old-deja/g++.other/elab1.C
    trunk/gcc/testsuite/g++.old-deja/g++.other/syntax4.C


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