From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 21197 invoked by alias); 25 Nov 2004 14:18:50 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org Received: (qmail 21180 invoked by alias); 25 Nov 2004 14:18:43 -0000 Date: Thu, 25 Nov 2004 14:18:00 -0000 From: "gcc-bugzilla at gcc dot gnu dot org" To: gcc-bugs@gcc.gnu.org Message-ID: <20041125141837.18674.valentin@lrde.epita.fr> Reply-To: gcc-bugzilla@gcc.gnu.org Subject: [Bug c++/18674] New: G++ accepts bad elaborated type specifiers X-Bugzilla-Reason: CC X-SW-Source: 2004-11/txt/msg03054.txt.bz2 List-Id: elaborated-type-speficier: class-key ::? nested-name-specifier? identifier class-key ::? nested-name-specifier? template? template-id enum ::? nested-name-specifier? identifier typename ::? nested-name-specifier? identifier typename ::? nested-name-specifier? template? template-id According to the paragraph 7.1.5.3.3 of the standard, the three first rules need to refer to class, union, or enum depending on the first keyword. But gcc accepts it to be used whenever you want. Environment: System: Linux nostromo 2.4.27-1-686 #1 Fri Sep 3 06:28:00 UTC 2004 i686 GNU/Linux Architecture: i686 host: i486-pc-linux-gnu build: i486-pc-linux-gnu target: i486-pc-linux-gnu configured with: ../src/configure -v --enable-languages=c,c++,java,objc,ada --prefix=/usr/lib/gcc-snapshot --enable-shared --with-system-zlib --enable-nls --enable-threads=posix --without-included-gettext --disable-werror --enable-__cxa_atexit --enable-libstdcxx-allocator=mt --enable-clocale=gnu --enable-libstdcxx-debug --enable-java-gc=boehm --enable-java-awt=gtk i486-linux-gnu How-To-Repeat: The command line used was: g++-snapshot -std=c++98 -pedantic -W -Wall -c e.cc The following source file is invalid but gcc do not say anything: template static void g() { enum I::t a; (void) a; } struct B { typedef int t; }; void h() { g(); } -- Summary: G++ accepts bad elaborated type specifiers Product: gcc Version: 0.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: valentin at lrde dot epita dot fr CC: gcc-bugs at gcc dot gnu dot org GCC build triplet: i486-pc-linux-gnu GCC host triplet: i486-pc-linux-gnu GCC target triplet: i486-pc-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18674