This is the mail archive of the
gcc-prs@gcc.gnu.org
mailing list for the GCC project.
Re: c++/9868: [3.3/3.4 regression] ICE in c_expand_expr when qualifyingmember variable
- From: Michael Matz <matz at suse dot de>
- To: nobody at gcc dot gnu dot org
- Cc: gcc-prs at gcc dot gnu dot org,
- Date: 27 Feb 2003 16:06:00 -0000
- Subject: Re: c++/9868: [3.3/3.4 regression] ICE in c_expand_expr when qualifyingmember variable
- Reply-to: Michael Matz <matz at suse dot de>
The following reply was made to PR c++/9868; it has been noted by GNATS.
From: Michael Matz <matz at suse dot de>
To: <bangerth at dealii dot org>, <china at thewrittenword dot com>,
<gcc-bugs at gcc dot gnu dot org>, <gcc-prs at gcc dot gnu dot org>, <nobody at gcc dot gnu dot org>,
<gcc-gnats at gcc dot gnu dot org>
Cc:
Subject: Re: c++/9868: [3.3/3.4 regression] ICE in c_expand_expr when qualifying
member variable
Date: Thu, 27 Feb 2003 16:59:01 +0100 (CET)
Hi Wolfang,
On 27 Feb 2003 bangerth at dealii dot org wrote:
> Old Synopsis: ICE building LyX 1.3.0 with Qt frontend on HP-UX 11i with GCC 3.3 prerelease
> New Synopsis: [3.3/3.4 regression] ICE in c_expand_expr when qualifying member variable
> This is an extract:
> ---------------------------
> template <typename T> struct D {
> void (*p)();
>
> void clear() { D::p(); }
> };
> template class D<bool>;
> --------------------------
> D::p was previously in a base class, which is why it is
> qualified with Class::. The code above crashes 3.3 and 3.4:
> g/x> /home/bangerth/bin/gcc-3.4-pre/bin/c++ -c x.cc
> x.cc: In member function `void D<T>::clear() [with T = bool]':
> x.cc:6: instantiated from here
> x.cc:4: internal compiler error: in c_expand_expr, at c-common.c:4339
>
> It worked with 3.2.2, though, so it's a regression.
This is exactly the same error as c++/9524.
Ciao,
Michael.