diff options
author | Richard Henderson <rth@redhat.com> | 2004-10-14 16:20:58 -0700 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2004-10-14 16:20:58 -0700 |
commit | 559f2da552874a159ac13d13b7d5d94e3deafd10 (patch) | |
tree | 7534024d48e27ca0af83286859f217f61e28cc3c /gcc/c-decl.c | |
parent | 0c58f841a52644c9845b3c136f3264e6a728ba76 (diff) | |
download | gcc-559f2da552874a159ac13d13b7d5d94e3deafd10.zip gcc-559f2da552874a159ac13d13b7d5d94e3deafd10.tar.gz gcc-559f2da552874a159ac13d13b7d5d94e3deafd10.tar.bz2 |
re PR c/17023 (ICE with nested functions in parameter declaration)
PR c/17023
* c-decl.c (store_parm_decls_oldstyle): Care for parameter type
as error_mark_node.
* c-parse.in (compstmt_primary_start): Check cur_stmt_list non-null
instaed of current_function_decl non-null.
From-SVN: r89063
Diffstat (limited to 'gcc/c-decl.c')
-rw-r--r-- | gcc/c-decl.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/c-decl.c b/gcc/c-decl.c index 30a154c..9e9813d 100644 --- a/gcc/c-decl.c +++ b/gcc/c-decl.c @@ -6002,7 +6002,8 @@ store_parm_decls_oldstyle (tree fndecl, const struct c_arg_info *arg_info) if (TREE_CODE (parm) != PARM_DECL) continue; - if (!COMPLETE_TYPE_P (TREE_TYPE (parm))) + if (TREE_TYPE (parm) != error_mark_node + && !COMPLETE_TYPE_P (TREE_TYPE (parm))) { error ("%Jparameter %qD has incomplete type", parm, parm); TREE_TYPE (parm) = error_mark_node; |