public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/21117] [3.4/4.0/4.1 Regression] ICE after error about returning an incomplete type
[not found] <bug-21117-6528@http.gcc.gnu.org/bugzilla/>
@ 2005-10-12 13:17 ` nathan at gcc dot gnu dot org
2005-10-12 18:02 ` cvs-commit at gcc dot gnu dot org
` (3 subsequent siblings)
4 siblings, 0 replies; 8+ messages in thread
From: nathan at gcc dot gnu dot org @ 2005-10-12 13:17 UTC (permalink / raw)
To: gcc-bugs
--
nathan at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
AssignedTo|unassigned at gcc dot gnu |nathan at gcc dot gnu dot
|dot org |org
Status|NEW |ASSIGNED
Last reconfirmed|2005-09-10 05:19:54 |2005-10-12 13:17:47
date| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21117
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug c++/21117] [3.4/4.0/4.1 Regression] ICE after error about returning an incomplete type
[not found] <bug-21117-6528@http.gcc.gnu.org/bugzilla/>
2005-10-12 13:17 ` [Bug c++/21117] [3.4/4.0/4.1 Regression] ICE after error about returning an incomplete type nathan at gcc dot gnu dot org
@ 2005-10-12 18:02 ` cvs-commit at gcc dot gnu dot org
2005-10-12 18:23 ` cvs-commit at gcc dot gnu dot org
` (2 subsequent siblings)
4 siblings, 0 replies; 8+ messages in thread
From: cvs-commit at gcc dot gnu dot org @ 2005-10-12 18:02 UTC (permalink / raw)
To: gcc-bugs
------- Comment #5 from cvs-commit at gcc dot gnu dot org 2005-10-12 18:02 -------
Subject: Bug 21117
CVSROOT: /cvs/gcc
Module name: gcc
Changes by: nathan@gcc.gnu.org 2005-10-12 18:02:52
Modified files:
gcc/cp : ChangeLog decl.c typeck.c
gcc/testsuite : ChangeLog
Added files:
gcc/testsuite/g++.dg/other: return1.C
Log message:
cp:
PR c++/21117
* decl.c (check_function_type): Correctly overwrite incomplete
return type with void type.
* typeck.c (check_return_expr): If the function's return type is
void, don't try and convert a return expr.
testsuite:
PR c++/21117
* g++.dg/other/return1.C: New.
Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/ChangeLog.diff?cvsroot=gcc&r1=1.4924&r2=1.4925
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/decl.c.diff?cvsroot=gcc&r1=1.1431&r2=1.1432
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/typeck.c.diff?cvsroot=gcc&r1=1.654&r2=1.655
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcc&r1=1.6176&r2=1.6177
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/other/return1.C.diff?cvsroot=gcc&r1=NONE&r2=1.1
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21117
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug c++/21117] [3.4/4.0/4.1 Regression] ICE after error about returning an incomplete type
[not found] <bug-21117-6528@http.gcc.gnu.org/bugzilla/>
2005-10-12 13:17 ` [Bug c++/21117] [3.4/4.0/4.1 Regression] ICE after error about returning an incomplete type nathan at gcc dot gnu dot org
2005-10-12 18:02 ` cvs-commit at gcc dot gnu dot org
@ 2005-10-12 18:23 ` cvs-commit at gcc dot gnu dot org
2005-10-12 18:24 ` nathan at gcc dot gnu dot org
2005-10-13 13:11 ` nathan at gcc dot gnu dot org
4 siblings, 0 replies; 8+ messages in thread
From: cvs-commit at gcc dot gnu dot org @ 2005-10-12 18:23 UTC (permalink / raw)
To: gcc-bugs
------- Comment #6 from cvs-commit at gcc dot gnu dot org 2005-10-12 18:23 -------
Subject: Bug 21117
CVSROOT: /cvs/gcc
Module name: gcc
Branch: gcc-4_0-branch
Changes by: nathan@gcc.gnu.org 2005-10-12 18:23:17
Modified files:
gcc/testsuite : ChangeLog
gcc/cp : ChangeLog pt.c typeck.c parser.c decl.c
Added files:
gcc/testsuite/g++.dg/other: return1.C
gcc/testsuite/g++.dg/parse: typename8.C
gcc/testsuite/g++.dg/template: overload6.C
Log message:
cp:
PR c++/21592
* pt.c (build_non_dependent_expr): Don't wrap a COMPONENT_REF
with already looked up member functions. Assert we're not
returning a NON_DEPENDENT_EXPR with unknown type.
* typeck.c (finish_class_member_access_expr): We can get
non-template-id-expr baselinks. If the lookup finds a baselink,
remember it even inside templates.
PR c++/23797
* parser.c (cp_parser_functional_cast): Cope when TYPE is not a
TYPE_DECL. Use dependent_type_p to check type.
* pt.c (uses_template_parms_p): Use dependent_type_p for a
TYPE_DECL.
(type_dependent_expression_p): Assert we've not been given a
TYPE_DECL.
PR c++/21117
* decl.c (check_function_type): Correctly overwrite incomplete
return type with void type.
* typeck.c (check_return_expr): If the function's return type is
void, don't try and convert a return expr.
testsuite:
PR c++/21592
* g++.dg/template/dependent-expr1.C: Add new expected error.
* g++.dg/template/dependent-expr2.C: Adjust error text.
* g++.dg/template/overload6.C: New.
PR c++/23797
* g++.dg/other/typename8.C: New.
PR c++/21117
* g++.dg/other/return1.C: New.
Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/other/return1.C.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=NONE&r2=1.1.2.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/parse/typename8.C.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=NONE&r2=1.1.2.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/template/overload6.C.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=NONE&r2=1.1.2.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.5084.2.450&r2=1.5084.2.451
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.4648.2.127&r2=1.4648.2.128
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/pt.c.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.978.2.30&r2=1.978.2.31
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/typeck.c.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.616.2.20&r2=1.616.2.21
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/parser.c.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.319.2.22&r2=1.319.2.23
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/decl.c.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.1371.2.24&r2=1.1371.2.25
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21117
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug c++/21117] [3.4/4.0/4.1 Regression] ICE after error about returning an incomplete type
[not found] <bug-21117-6528@http.gcc.gnu.org/bugzilla/>
` (2 preceding siblings ...)
2005-10-12 18:23 ` cvs-commit at gcc dot gnu dot org
@ 2005-10-12 18:24 ` nathan at gcc dot gnu dot org
2005-10-13 13:11 ` nathan at gcc dot gnu dot org
4 siblings, 0 replies; 8+ messages in thread
From: nathan at gcc dot gnu dot org @ 2005-10-12 18:24 UTC (permalink / raw)
To: gcc-bugs
------- Comment #7 from nathan at gcc dot gnu dot org 2005-10-12 18:24 -------
Fixed mainline & 4.0
2005-10-12 Nathan Sidwell <nathan@codesourcery.com>
PR c++/21117
* decl.c (check_function_type): Correctly overwrite incomplete
return type with void type.
* typeck.c (check_return_expr): If the function's return type is
void, don't try and convert a return expr.
--
nathan at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |RESOLVED
Resolution| |FIXED
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21117
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug c++/21117] [3.4/4.0/4.1 Regression] ICE after error about returning an incomplete type
[not found] <bug-21117-6528@http.gcc.gnu.org/bugzilla/>
` (3 preceding siblings ...)
2005-10-12 18:24 ` nathan at gcc dot gnu dot org
@ 2005-10-13 13:11 ` nathan at gcc dot gnu dot org
4 siblings, 0 replies; 8+ messages in thread
From: nathan at gcc dot gnu dot org @ 2005-10-13 13:11 UTC (permalink / raw)
To: gcc-bugs
------- Comment #8 from nathan at gcc dot gnu dot org 2005-10-13 13:11 -------
Wont fix for pre 4.0
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21117
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug c++/21117] [3.4/4.0/4.1 Regression] ICE after error about returning an incomplete type
2005-04-20 0:17 [Bug middle-end/21117] New: [4.0/4.1 " pinskia at gcc dot gnu dot org
2005-08-05 23:38 ` [Bug c++/21117] [3.4/4.0/4.1 " rth at gcc dot gnu dot org
2005-09-12 20:47 ` pinskia at gcc dot gnu dot org
@ 2005-09-27 16:23 ` mmitchel at gcc dot gnu dot org
2 siblings, 0 replies; 8+ messages in thread
From: mmitchel at gcc dot gnu dot org @ 2005-09-27 16:23 UTC (permalink / raw)
To: gcc-bugs
--
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|4.0.2 |4.0.3
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21117
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug c++/21117] [3.4/4.0/4.1 Regression] ICE after error about returning an incomplete type
2005-04-20 0:17 [Bug middle-end/21117] New: [4.0/4.1 " pinskia at gcc dot gnu dot org
2005-08-05 23:38 ` [Bug c++/21117] [3.4/4.0/4.1 " rth at gcc dot gnu dot org
@ 2005-09-12 20:47 ` pinskia at gcc dot gnu dot org
2005-09-27 16:23 ` mmitchel at gcc dot gnu dot org
2 siblings, 0 replies; 8+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-09-12 20:47 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2005-09-12 20:47 -------
: Search converges between 2002-07-28-trunk (#83) and 2002-08-04-trunk (#84).
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21117
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug c++/21117] [3.4/4.0/4.1 Regression] ICE after error about returning an incomplete type
2005-04-20 0:17 [Bug middle-end/21117] New: [4.0/4.1 " pinskia at gcc dot gnu dot org
@ 2005-08-05 23:38 ` rth at gcc dot gnu dot org
2005-09-12 20:47 ` pinskia at gcc dot gnu dot org
2005-09-27 16:23 ` mmitchel at gcc dot gnu dot org
2 siblings, 0 replies; 8+ messages in thread
From: rth at gcc dot gnu dot org @ 2005-08-05 23:38 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From rth at gcc dot gnu dot org 2005-08-05 23:38 -------
Front end bug.
error ("return type %q#T is incomplete", TREE_TYPE (fntype));
/* Make it return void instead, but don't change the
type of the DECL_RESULT, in case we have a named return value. */
This is in fact the problem. If you don't want to make the DECL_RESULT be
VOIDtype (due to follow-on errors), then you need to make it error_mark_node.
--
What |Removed |Added
----------------------------------------------------------------------------
Component|middle-end |c++
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21117
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2005-10-13 13:11 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
[not found] <bug-21117-6528@http.gcc.gnu.org/bugzilla/>
2005-10-12 13:17 ` [Bug c++/21117] [3.4/4.0/4.1 Regression] ICE after error about returning an incomplete type nathan at gcc dot gnu dot org
2005-10-12 18:02 ` cvs-commit at gcc dot gnu dot org
2005-10-12 18:23 ` cvs-commit at gcc dot gnu dot org
2005-10-12 18:24 ` nathan at gcc dot gnu dot org
2005-10-13 13:11 ` nathan at gcc dot gnu dot org
2005-04-20 0:17 [Bug middle-end/21117] New: [4.0/4.1 " pinskia at gcc dot gnu dot org
2005-08-05 23:38 ` [Bug c++/21117] [3.4/4.0/4.1 " rth at gcc dot gnu dot org
2005-09-12 20:47 ` pinskia at gcc dot gnu dot org
2005-09-27 16:23 ` mmitchel at gcc dot gnu dot org
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).