diff options
author | Aldy Hernandez <aldyh@redhat.com> | 2006-04-11 01:36:50 +0000 |
---|---|---|
committer | Aldy Hernandez <aldyh@gcc.gnu.org> | 2006-04-11 01:36:50 +0000 |
commit | 33c9159e09fb29cd6c47e076c6a2006a544884a9 (patch) | |
tree | 7d93c2f41a91db2797e82ea2593a73f5c5b9cda7 /gcc/c-parser.c | |
parent | ab9260ac48d4f7dad156eae570df7ab4f826af7c (diff) | |
download | gcc-33c9159e09fb29cd6c47e076c6a2006a544884a9.zip gcc-33c9159e09fb29cd6c47e076c6a2006a544884a9.tar.gz gcc-33c9159e09fb29cd6c47e076c6a2006a544884a9.tar.bz2 |
20060410.c: New.
PR/21391
* testsuite/gcc.dg/20060410.c: New.
* dwarf2out.c (struct die_struct): Add die_perennial_p field.
(premark_used_types_helper): New.
(premark_used_types): New.
(gen_subprogram_die): Call premark_used_types.
(prune_unused_types_walk): Do not prune perennial dies.
* function.c (used_types_insert): New.
* function.h (struct function): Add used_types_hash field.
(used_types_insert): Add prototype.
* Makefile.in (FUNCTION_H): Depend on HASHTAB_H.
* c-parser.c (c_parser_cast_expression): Save casted types in used
types hash table.
From-SVN: r112845
Diffstat (limited to 'gcc/c-parser.c')
-rw-r--r-- | gcc/c-parser.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/c-parser.c b/gcc/c-parser.c index b572273..0c90fa8 100644 --- a/gcc/c-parser.c +++ b/gcc/c-parser.c @@ -4660,6 +4660,11 @@ c_parser_cast_expression (c_parser *parser, struct c_expr *after) ret.original_code = ERROR_MARK; return ret; } + + /* Save casted types in the function's used types hash table. */ + if (debug_info_level > DINFO_LEVEL_NONE) + used_types_insert (type_name->specs->type, cfun); + if (c_parser_next_token_is (parser, CPP_OPEN_BRACE)) return c_parser_postfix_expression_after_paren_type (parser, type_name); |