This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
Re: c++/9374: [3.4 regression] ICE in make_decl_rtl, at varasm.c:790
- From: Sylvain Pion <Sylvain dot Pion at mpi-sb dot mpg dot de>
- To: bangerth at dealii dot org, Sylvain dot Pion at mpi-sb dot mpg dot de, 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
- Date: Fri, 24 Jan 2003 11:32:40 +0100
- Subject: Re: c++/9374: [3.4 regression] ICE in make_decl_rtl, at varasm.c:790
- References: <20030121161725.8679.qmail@sources.redhat.com>
On Tue, Jan 21, 2003 at 04:17:25PM -0000, bangerth@dealii.org wrote:
> Old Synopsis: [New parser] ICE in make_decl_rtl, at varasm.c:790
> New Synopsis: [3.4 regression] ICE in make_decl_rtl, at varasm.c:790
>
> State-Changed-From-To: open->analyzed
> State-Changed-By: bangerth
> State-Changed-When: Tue Jan 21 16:17:24 2003
> State-Changed-Why:
> Confirmed. I don't believe it's a parser problem though, as the
> original synopsis indicated, rather some fallout from
> middle-end changes.
What led me to believe it was closer to the front-end is that,
although the following produces an ICE :
template < typename T >
void f() {
int i;
int ind[1] = {i};
}
int main() { f<int>(); }
the following works fine (just changing "int" to "T") :
template < typename T >
void f() {
T i;
int ind[1] = {i};
}
int main() { f<int>(); }
And I guess the middle/back-ends are supposed to see the same thing in both
cases.
I hope it helps...
--
Sylvain