public inbox for gcc-prs@sourceware.org
help / color / mirror / Atom feed
* Re: c++/10661: [3.3/3.4? regression] ICE in instantiate_decl
@ 2003-05-08 16:26 Wolfgang Bangerth
0 siblings, 0 replies; 6+ messages in thread
From: Wolfgang Bangerth @ 2003-05-08 16:26 UTC (permalink / raw)
To: giovannibajo; +Cc: gcc-prs
The following reply was made to PR c++/10661; it has been noted by GNATS.
From: Wolfgang Bangerth <bangerth@ices.utexas.edu>
To: Giovanni Bajo <giovannibajo@libero.it>
Cc: gawrilow@math.tu-berlin.de, <gcc-bugs@gcc.gnu.org>,
<gcc-gnats@gcc.gnu.org>
Subject: Re: c++/10661: [3.3/3.4? regression] ICE in instantiate_decl
Date: Thu, 8 May 2003 11:17:09 -0500 (CDT)
> have such a larger and complex codebase,
Ah, and I forgot to say that as well: I will refuse to look at any other
report that comes with 80k lines of templates. Please try to strip
things down, it's much easier for the author of the code than for us!
W.
-------------------------------------------------------------------------
Wolfgang Bangerth email: bangerth@ices.utexas.edu
www: http://www.ices.utexas.edu/~bangerth/
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: c++/10661: [3.3/3.4? regression] ICE in instantiate_decl
@ 2003-05-08 16:36 Giovanni Bajo
0 siblings, 0 replies; 6+ messages in thread
From: Giovanni Bajo @ 2003-05-08 16:36 UTC (permalink / raw)
To: giovannibajo; +Cc: gcc-prs
The following reply was made to PR c++/10661; it has been noted by GNATS.
From: "Giovanni Bajo" <giovannibajo@libero.it>
To: <bangerth@dealii.org>,
<gawrilow@math.tu-berlin.de>,
<gcc-bugs@gcc.gnu.org>,
<gcc-prs@gcc.gnu.org>,
<giovannibajo@libero.it>,
<gcc-gnats@gcc.gnu.org>
Cc:
Subject: Re: c++/10661: [3.3/3.4? regression] ICE in instantiate_decl
Date: Thu, 8 May 2003 18:28:57 +0200
Hello Ewgenij,
I have just finished a first small analysys.
Your code is illegal: within iterator_chain<>::_init(), line 69731 is
ill-formed:
Functions::init::defs<0>::_do(*owner, *this);
Functions::init::defs<0> is a dependent postfix-expression, so the code must
be changed to:
Functions::init::template defs<0>::_do(*owner, *this);
With this change, your whole code can be compiled correctly. Thus, I change
the class of this bug to "ice-on-illegal-code". Again, I suggest you to test
this again with 3.4, which is much stricter wrt C++ standard conformance.
I will now continue work to reduce the ICE.
Giovanni Bajo
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: c++/10661: [3.3/3.4? regression] ICE in instantiate_decl
@ 2003-05-08 16:36 Wolfgang Bangerth
0 siblings, 0 replies; 6+ messages in thread
From: Wolfgang Bangerth @ 2003-05-08 16:36 UTC (permalink / raw)
To: giovannibajo; +Cc: gcc-prs
The following reply was made to PR c++/10661; it has been noted by GNATS.
From: Wolfgang Bangerth <bangerth@ices.utexas.edu>
To: Giovanni Bajo <giovannibajo@libero.it>
Cc: gawrilow@math.tu-berlin.de, <gcc-bugs@gcc.gnu.org>,
<gcc-gnats@gcc.gnu.org>
Subject: Re: c++/10661: [3.3/3.4? regression] ICE in instantiate_decl
Date: Thu, 8 May 2003 11:31:54 -0500 (CDT)
> I have just finished a first small analysys. [...]
> Your code is illegal: within iterator_chain<>::_init(), line 69731 is
^^^^^
> ill-formed:
You're incredible, man!
W.
-------------------------------------------------------------------------
Wolfgang Bangerth email: bangerth@ices.utexas.edu
www: http://www.ices.utexas.edu/~bangerth/
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: c++/10661: [3.3/3.4? regression] ICE in instantiate_decl
@ 2003-05-08 16:26 Giovanni Bajo
0 siblings, 0 replies; 6+ messages in thread
From: Giovanni Bajo @ 2003-05-08 16:26 UTC (permalink / raw)
To: giovannibajo; +Cc: gcc-prs
The following reply was made to PR c++/10661; it has been noted by GNATS.
From: "Giovanni Bajo" <giovannibajo@libero.it>
To: <bangerth@dealii.org>,
<gawrilow@math.tu-berlin.de>,
<gcc-bugs@gcc.gnu.org>,
<gcc-prs@gcc.gnu.org>,
<giovannibajo@libero.it>,
<gcc-gnats@gcc.gnu.org>
Cc:
Subject: Re: c++/10661: [3.3/3.4? regression] ICE in instantiate_decl
Date: Thu, 8 May 2003 18:13:28 +0200
bangerth@dealii.org wrote:
> - it's a regression on 3.3. Code doesn't compile on 3.4,
> so I can't yet say what's on there
Ewgenij, I suggest you to try compiling your library with GCC 3.4 as well,
and submit testcases for it in case of failure. This is the right timeframe
to do so if you want to be absolutely sure your software will run in 3.4.0
as well. And as Wolfgang suggested, as a general rule of thumb, since you
have such a larger and complex codebase, you might want to upgrade GCC from
CVS every other week and check that everything always works.
Giovanni Bajo
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: c++/10661: [3.3/3.4? regression] ICE in instantiate_decl
@ 2003-05-08 15:16 giovannibajo
0 siblings, 0 replies; 6+ messages in thread
From: giovannibajo @ 2003-05-08 15:16 UTC (permalink / raw)
To: gawrilow, gcc-bugs, gcc-prs, giovannibajo
Synopsis: [3.3/3.4? regression] ICE in instantiate_decl
State-Changed-From-To: analyzed->open
State-Changed-By: bajo
State-Changed-When: Thu May 8 15:16:12 2003
State-Changed-Why:
it's not analyzed until we have a small testcase
http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=10661
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: c++/10661: [3.3/3.4? regression] ICE in instantiate_decl
@ 2003-05-08 14:19 bangerth
0 siblings, 0 replies; 6+ messages in thread
From: bangerth @ 2003-05-08 14:19 UTC (permalink / raw)
To: gawrilow, gcc-bugs, gcc-prs, giovannibajo
Old Synopsis: Regression vs. 3.1: ICE on legal code
New Synopsis: [3.3/3.4? regression] ICE in instantiate_decl
State-Changed-From-To: open->analyzed
State-Changed-By: bangerth
State-Changed-When: Thu May 8 14:19:06 2003
State-Changed-Why:
Ewgenij,
let me start out with two remarks:
- your chances that someone takes care of this might be
higher, if you don't start out whining about the state
of 3.3 a few days before the release and then send us
a bulk of 80,000 lines of template metaprogramming. This
is the most tangled, complicated, unintelligible, evil
code I have ever seen. I spent about 3 hours yesterday
night reducing it to 46,000 lines, but it's very hard
to reduce it and it would have been significantly easier
had you sent in a _reduced_ testcase.
- I managed to extract about a dozen other testcases that
failed somewhere in the compiler while reducing the big
chunk. I imagine, you must have seen things like that as
well while developing. If you get something like that,
please wend them in, preferrably, as said, as _small_
code snippets.
Since the code is so incredibly complex, it might be
worthwhile to make it a testcase. So if you want and
can, I think it would be appreciated if you would set
up a system that updates gcc from CVS source every once
in a while (day, week) and runs it against your code.
This way, you may be able to find bugs in gcc earlier
than right before the release. The bug you reported will
certainly not be fixed for 3.3.0.
That being said:
- the problem exists, it is an ICE in instantiate_decl.
- it's a regression on 3.3. Code doesn't compile on 3.4,
so I can't yet say what's on there
- a somewhat smaller testcase is attached as reduced_1.ii
- I will coordinate with Giovanni about how to further
reduce the code. That's incredibly tedious business- on my way, I found a lot more ICEs. I'll reduce and submit
them over time. If someone fixes the bug here and there
are follow-up failures, please check for potentially
submitted other bugs in this context
W.
http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=10661
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2003-05-08 16:36 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-05-08 16:26 c++/10661: [3.3/3.4? regression] ICE in instantiate_decl Wolfgang Bangerth
-- strict thread matches above, loose matches on Subject: below --
2003-05-08 16:36 Giovanni Bajo
2003-05-08 16:36 Wolfgang Bangerth
2003-05-08 16:26 Giovanni Bajo
2003-05-08 15:16 giovannibajo
2003-05-08 14:19 bangerth
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).