This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c++/29024] [4.0/4.1/4.2 Regression] storage class specifier accepted for typedef (clause 7.1.1 ; 1)
- From: "lmillward at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 11 Oct 2006 19:31:45 -0000
- Subject: [Bug c++/29024] [4.0/4.1/4.2 Regression] storage class specifier accepted for typedef (clause 7.1.1 ; 1)
- References: <bug-29024-5394@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #4 from lmillward at gcc dot gnu dot org 2006-10-11 19:31 -------
Subject: Bug 29024
Author: lmillward
Date: Wed Oct 11 19:31:33 2006
New Revision: 117641
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=117641
Log:
PR c++/29024
* cp-tree (struct cp_decl_specifier_seq): Rename to
conflicting_specifiers_p
* parser.c (cp_parser_set_storage_class): Set
conflicting_specifiers_p for the input decl specifier
if a typedef specifier is present. Rename uses of
multiple_specifiers_p to conflicting_specifiers_p.
(cp_parser_decl_specifier_seq) <RID_TYPEDEF>: If a storage
class specifier has already been set for this declaration,
set conflicting_specifiers_p to true on the decl_specs.
* decl.c (grokdeclarator): Rename uses of
multiple_specifiers_p to conflicting_specifiers_p.
* g++.dg/parse/typedef8.C: New test.
* g++.dg/other/mult-stor1.C: Adjust error markers.
Added:
trunk/gcc/testsuite/g++.dg/parse/typedef8.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/cp-tree.h
trunk/gcc/cp/decl.c
trunk/gcc/cp/parser.c
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/g++.dg/other/mult-stor1.C
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29024