public inbox for gcc-prs@sourceware.org
help / color / mirror / Atom feed
* Re: c++/9820: [3.3/3.4 regression] ice in build_baselink (templates)
@ 2003-02-24 23:26 Janis Johnson
0 siblings, 0 replies; 8+ messages in thread
From: Janis Johnson @ 2003-02-24 23:26 UTC (permalink / raw)
To: nobody; +Cc: gcc-prs
The following reply was made to PR c++/9820; it has been noted by GNATS.
From: Janis Johnson <janis187@us.ibm.com>
To: Wolfgang Bangerth <bangerth@ticam.utexas.edu>
Cc: gcc-gnats@gcc.gnu.org, Janis Johnson <janis187@us.ibm.com>
Subject: Re: c++/9820: [3.3/3.4 regression] ice in build_baselink (templates)
Date: Mon, 24 Feb 2003 15:26:40 -0800
On Mon, Feb 24, 2003 at 05:13:26PM -0600, Wolfgang Bangerth wrote:
>
> Here's a smaller testcase:
> ------------------------
> template <typename T> struct X {
> template<typename> static int test(...);
> template<typename> static int test(int *);
>
> static const int i = sizeof(X<T>::template test<int>(0));
> };
>
> const int Yes = X<int>::i;
> ------------------------
>
> However, Janis, I can't seem to create a testcase that is compilable by
> 3.2 and yet generates the ICE in 3.3 and 3.4. Why don't you just grep the
> output of the compiler?
Yes, that's what I normally do for ice-on-illegal code. If
the submitter's original test case is supposed to compile
successfully with earlier versions of GCC, I might end up
finding a patch that's not relevant to the submitter's ICE.
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: c++/9820: [3.3/3.4 regression] ice in build_baselink (templates)
@ 2003-03-11 22:51 jason
0 siblings, 0 replies; 8+ messages in thread
From: jason @ 2003-03-11 22:51 UTC (permalink / raw)
To: gcc-bugs, gcc-prs, jason, poschmid
Synopsis: [3.3/3.4 regression] ice in build_baselink (templates)
State-Changed-From-To: analyzed->closed
State-Changed-By: jason
State-Changed-When: Tue Mar 11 22:51:48 2003
State-Changed-Why:
fixed
http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=9820
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: c++/9820: [3.3/3.4 regression] ice in build_baselink (templates)
@ 2003-03-11 20:16 jason
0 siblings, 0 replies; 8+ messages in thread
From: jason @ 2003-03-11 20:16 UTC (permalink / raw)
To: gcc-bugs, gcc-prs, jason, nobody, poschmid
Synopsis: [3.3/3.4 regression] ice in build_baselink (templates)
Responsible-Changed-From-To: unassigned->jason
Responsible-Changed-By: jason
Responsible-Changed-When: Tue Mar 11 20:16:03 2003
Responsible-Changed-Why:
got it
http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=9820
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: c++/9820: [3.3/3.4 regression] ice in build_baselink (templates)
@ 2003-02-25 20:46 Janis Johnson
0 siblings, 0 replies; 8+ messages in thread
From: Janis Johnson @ 2003-02-25 20:46 UTC (permalink / raw)
To: nobody; +Cc: gcc-prs
The following reply was made to PR c++/9820; it has been noted by GNATS.
From: Janis Johnson <janis187@us.ibm.com>
To: gcc-gnats@gcc.gnu.org, gcc-bugs@gcc.gnu.org, nobody@gcc.gnu.org,
gcc-prs@gcc.gnu.org, poschmid@lbl.gov
Cc:
Subject: Re: c++/9820: [3.3/3.4 regression] ice in build_baselink (templates)
Date: Tue, 25 Feb 2003 12:43:20 -0800
Between 2002-10-30 and 2002-12-24, the mainline and the 3.3
branch (after its creation) compiled the test case with no
error message, and then the error message came back, along
with the ICE.
The patch that caused the test case to compile successfully:
2002-10-30 Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net>
Core issue 287, PR c++/7639
* cp-tree.h (lang_type_class): Add decl_list field.
(CLASSTYPE_DECL_LIST): New macro.
(maybe_add_class_template_decl_list): Add declaration.
* class.c (duplicate_tag_error): Initialize CLASSTYPE_DECL_LIST.
(unreverse_member_declarations): Reverse CLASSTYPE_DECL_LIST.
(maybe_add_class_template_decl_list): New function.
(add_implicitly_declared_members): Use it.
* decl.c (maybe_process_template_type_declaration): Likewise.
(pushtag): Likewise.
* friend.c (add_friend): Likewise.
(make_friend_class): Likewise.
* semantics.c (finish_member_declaration): Likewise.
(begin_class_definition): Initialize CLASSTYPE_DECL_LIST.
* pt.c (instantiate_class_template): Use CLASSTYPE_DECL_LIST
to process members and friends in the order of declaration.
The patch to mainline and 3.3-branch that brought back the
error message, plus the ICE:
2002-12-24 Nathan Sidwell <nathan@codesourcery.com>
PR C++/7964
* cp-tree.h (resolve_scoped_fn_name): Prototype.
* call.c (resolve_scoped_fn_name): New function. Deal with
more template expansion. Broken out of ...
* parse.y (parse_finish_call_expr): ... here. Call it.
* decl2.c (build_expr_from_tree, CALL_EXPR): Use
resolve_scoped_fn_name and build_call_from_tree.
The regression hunt used the original test case, not the
very short one that Wolfgang provided.
http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=9820
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: c++/9820: [3.3/3.4 regression] ice in build_baselink (templates)
@ 2003-02-24 23:36 Wolfgang Bangerth
0 siblings, 0 replies; 8+ messages in thread
From: Wolfgang Bangerth @ 2003-02-24 23:36 UTC (permalink / raw)
To: nobody; +Cc: gcc-prs
The following reply was made to PR c++/9820; it has been noted by GNATS.
From: Wolfgang Bangerth <bangerth@ticam.utexas.edu>
To: Janis Johnson <janis187@us.ibm.com>
Cc: gcc-gnats@gcc.gnu.org
Subject: Re: c++/9820: [3.3/3.4 regression] ice in build_baselink (templates)
Date: Mon, 24 Feb 2003 17:27:37 -0600 (CST)
> > However, Janis, I can't seem to create a testcase that is compilable by
> > 3.2 and yet generates the ICE in 3.3 and 3.4. Why don't you just grep the
> > output of the compiler?
>
> Yes, that's what I normally do for ice-on-illegal code. If
> the submitter's original test case is supposed to compile
> successfully with earlier versions of GCC, I might end up
> finding a patch that's not relevant to the submitter's ICE.
Well, it's supposed to, but apparently one bug (not accepting legal
syntax) is superceded here by something worse (an ICE)...
W.
-------------------------------------------------------------------------
Wolfgang Bangerth email: bangerth@ticam.utexas.edu
www: http://www.ticam.utexas.edu/~bangerth/
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: c++/9820: [3.3/3.4 regression] ice in build_baselink (templates)
@ 2003-02-24 23:16 Wolfgang Bangerth
0 siblings, 0 replies; 8+ messages in thread
From: Wolfgang Bangerth @ 2003-02-24 23:16 UTC (permalink / raw)
To: nobody; +Cc: gcc-prs
The following reply was made to PR c++/9820; it has been noted by GNATS.
From: Wolfgang Bangerth <bangerth@ticam.utexas.edu>
To: gcc-gnats@gcc.gnu.org, Janis Johnson <janis187@us.ibm.com>
Cc:
Subject: Re: c++/9820: [3.3/3.4 regression] ice in build_baselink (templates)
Date: Mon, 24 Feb 2003 17:13:26 -0600 (CST)
Here's a smaller testcase:
------------------------
template <typename T> struct X {
template<typename> static int test(...);
template<typename> static int test(int *);
static const int i = sizeof(X<T>::template test<int>(0));
};
const int Yes = X<int>::i;
------------------------
However, Janis, I can't seem to create a testcase that is compilable by
3.2 and yet generates the ICE in 3.3 and 3.4. Why don't you just grep the
output of the compiler?
W.
-------------------------------------------------------------------------
Wolfgang Bangerth email: bangerth@ticam.utexas.edu
www: http://www.ticam.utexas.edu/~bangerth/
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: c++/9820: [3.3/3.4 regression] ice in build_baselink (templates)
@ 2003-02-24 22:46 Janis Johnson
0 siblings, 0 replies; 8+ messages in thread
From: Janis Johnson @ 2003-02-24 22:46 UTC (permalink / raw)
To: nobody; +Cc: gcc-prs
The following reply was made to PR c++/9820; it has been noted by GNATS.
From: Janis Johnson <janis187@us.ibm.com>
To: gcc-gnats@gcc.gnu.org, gcc-bugs@gcc.gnu.org, nobody@gcc.gnu.org,
gcc-prs@gcc.gnu.org, poschmid@lbl.gov
Cc:
Subject: Re: c++/9820: [3.3/3.4 regression] ice in build_baselink (templates)
Date: Mon, 24 Feb 2003 14:47:31 -0800
The submitter says this test case should be valid, but
GCC 3.0.4 and the 3.2-branch both report errors. I was
planning to hunt for the patch that caused the regression,
but if there's a test case that ICEs on legal code, I'd prefer
to use that one.
Output from GCC 3.2.2 20021220 (prerelease) with -w:
9820.C: In instantiation of `IsFunctionT<int>':
9820.C:23: instantiated from `IsClassT<int>'
9820.C:23: instantiated from `void check() [with T = int]'
9820.C:29: instantiated from here
9820.C:23: no method `IsFunctionT<int>::test<int>'
9820.C:23: enumerator value for `Yes' not integer constant
http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=9820
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: c++/9820: [3.3/3.4 regression] ice in build_baselink (templates)
@ 2003-02-24 15:27 bangerth
0 siblings, 0 replies; 8+ messages in thread
From: bangerth @ 2003-02-24 15:27 UTC (permalink / raw)
To: gcc-bugs, gcc-prs, nobody, poschmid
Old Synopsis: ice in build_baselink (templates)
New Synopsis: [3.3/3.4 regression] ice in build_baselink (templates)
State-Changed-From-To: open->analyzed
State-Changed-By: bangerth
State-Changed-When: Mon Feb 24 15:27:47 2003
State-Changed-Why:
Confirmed. A regression on 3.3 and mainline w.r.t 3.2
http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=9820
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2003-03-11 22:51 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-02-24 23:26 c++/9820: [3.3/3.4 regression] ice in build_baselink (templates) Janis Johnson
-- strict thread matches above, loose matches on Subject: below --
2003-03-11 22:51 jason
2003-03-11 20:16 jason
2003-02-25 20:46 Janis Johnson
2003-02-24 23:36 Wolfgang Bangerth
2003-02-24 23:16 Wolfgang Bangerth
2003-02-24 22:46 Janis Johnson
2003-02-24 15:27 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).