The following (illegal) code snippet causes an ICE under gcc-3.2.3-20030222 and gcc-3.3-20030222 ice.cxx: -------------------------------------- namespace a { namespace b { void foo(); } } void a::b:foo() { } --------------------------- % g++32 ice.cxx ice.cxx:8: `a::b' as declarator Please submit a full bug report, with preprocessed source if appropriate. See <URL:http://www.gnu.org/software/gcc/bugs.html> for instructions. % g++33 ice.cxx ice.cxx:8: internal compiler error: in grokdeclarator, at cp/decl.c:10394 Please submit a full bug report, with preprocessed source if appropriate. See <URL:http://www.gnu.org/software/gcc/bugs.html> for instructions. Whereas gcc-3.4-20030222 and gcc-3.0.x 'work' % g++34 ice.cxx ice.cxx:8: error: invalid function declaration % g++30 ice.cxx ice.cxx:8: `a::b' as declarator (compiler error) ice.cxx:8: syntax error before `:' token [ Seems to occur on both an ix86 machine and a Sun Sparc machine... ] Release: unknown Environment: gcc-3.2.3-20030222 gcc-3.3-20030222
Fix: Fixed in GCC 3.3 with: http://gcc.gnu.org/ml/gcc-patches/2003-02/msg02218.html
State-Changed-From-To: open->analyzed State-Changed-Why: Confirmed. A regression in 3.2 and 3.3, but fixed in 3.4
From: mmitchel@gcc.gnu.org To: gcc-gnats@gcc.gnu.org Cc: Subject: c++/9829 Date: 26 Feb 2003 05:24:17 -0000 CVSROOT: /cvs/gcc Module name: gcc Branch: gcc-3_3-branch Changes by: mmitchel@gcc.gnu.org 2003-02-26 05:24:17 Modified files: gcc/cp : ChangeLog decl.c gcc/testsuite : ChangeLog Added files: gcc/testsuite/g++.dg/parse: namespace1.C Log message: PR c++/9829 * decl.c (grokdeclarator): Handle SCOPE_REFs whose second argument is a NAMESPACE_DECL. PR c++/9829 * g++.dg/parse/namespace1.C: New test. Patches: http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-3_3-branch&r1=1.3076.2.47&r2=1.3076.2.48 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/decl.c.diff?cvsroot=gcc&only_with_tag=gcc-3_3-branch&r1=1.965.2.17&r2=1.965.2.18 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-3_3-branch&r1=1.2261.2.65&r2=1.2261.2.66 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/parse/namespace1.C.diff?cvsroot=gcc&only_with_tag=gcc-3_3-branch&r1=NONE&r2=1.1.12.1
From: mmitchel@gcc.gnu.org To: gcc-gnats@gcc.gnu.org Cc: Subject: c++/9829 Date: 26 Feb 2003 05:26:50 -0000 CVSROOT: /cvs/gcc Module name: gcc Changes by: mmitchel@gcc.gnu.org 2003-02-26 05:26:50 Modified files: gcc/testsuite : ChangeLog Added files: gcc/testsuite/g++.dg/parse: namespace6.C Log message: PR c++/9829 * g++.dg/parse/namespace6.C: New test. Patches: http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcc&r1=1.2446&r2=1.2447 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/parse/namespace6.C.diff?cvsroot=gcc&r1=NONE&r2=1.1
State-Changed-From-To: analyzed->closed State-Changed-Why: Fixed for 3.3.