c++/9623: struct named initializer regression
V.Haisman@sh.cvut.cz
V.Haisman@sh.cvut.cz
Sat Feb 8 00:16:00 GMT 2003
>Number: 9623
>Category: c++
>Synopsis: struct named initializer regression
>Confidential: no
>Severity: critical
>Priority: medium
>Responsible: unassigned
>State: open
>Class: rejects-legal
>Submitter-Id: net
>Arrival-Date: Sat Feb 08 00:16:00 UTC 2003
>Closed-Date:
>Last-Modified:
>Originator: VÃCLAV HAISMAN
>Release: 3.3 20030131 (prerelease)
>Organization:
>Environment:
System: FreeBSD logout.sh.cvut.cz 4.7-STABLE FreeBSD 4.7-STABLE #0: Sun Jan 5 15:41:58 CET 2003 root@logout.sh.cvut.cz:/usr/src/sys/compile/logout-ipv6 i386
host: i386-unknown-freebsd4.7
build: i386-unknown-freebsd4.7
target: i386-unknown-freebsd4.7
configured with: ../srcdir/configure --prefix=/home/4/wilx --srcdir=/home/4/wilx/tmp/gcc33/srcdir --enable-shared --enable-languages=c,c++,objc,java,f77 --enable-threads=posix --enable-version-specific-runtime-libs --enable-haifa --enable-dwarf2 --with-cpu=i686 --enable-libgcj
>Description:
This simple piece of code fails to build with this error using GCC 3.3 or 3.4.
It builds without warning using GCC 3.2.
$ c++ -W -c bug.cxx
bug.cxx:2: error: too many initializers for `S'
bug.cxx:2: warning: missing initializer for member `S::y'
This test case has been derived from Cygwin sources that uses such initializers on many places.
>How-To-Repeat:
struct S { int x; int y; };
S s = { x:1, y:2 };
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the Gcc-bugs
mailing list