This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
c++/9342: [3.3/3.4 regression] another ICE in cp_expr_size at cp/cp-lang.c: 304
- From: matz at suse dot de
- To: gcc-gnats at gcc dot gnu dot org
- Cc: jason at redhat dot com
- Date: 16 Jan 2003 14:35:20 -0000
- Subject: c++/9342: [3.3/3.4 regression] another ICE in cp_expr_size at cp/cp-lang.c: 304
- Reply-to: matz at suse dot de
>Number: 9342
>Category: c++
>Synopsis: [3.3/3.4 regression] another ICE in cp_expr_size at cp/cp-lang.c: 304
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: unassigned
>State: open
>Class: ice-on-legal-code
>Submitter-Id: net
>Arrival-Date: Thu Jan 16 06:36:09 PST 2003
>Closed-Date:
>Last-Modified:
>Originator: matz@suse.de
>Release: GCC 3.3 20030113 (prerelease)
>Organization:
>Environment:
Linux/x86-64
>Description:
This is similar to pr8748 (and many more ICEs in cp_expr_size in the past) but it's not yet fixed in the branch (pr8748 is btw.)
The testcase is short, so it's inline (extracted from some KDE code):
------------ snip -----------
struct QString
{
QString( const QString & );
QString &operator=( const QString & );
};
struct ServerSettings
{
QString user;
};
extern ServerSettings def();
extern void arg( const QString& a );
void startSession( bool b, QString s )
{
arg (b ? def().user : s);
}
---------- snap -----------
>How-To-Repeat:
> $PATH_3_3/bin/g++ -O -c above.ii
above.ii: In function `void startSession(bool, QString)':
above.ii:14: internal compiler error: in cp_expr_size, at cp/cp-lang.c:304
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted: