diff options
-rw-r--r-- | gcc/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/c-common.c | 6 |
2 files changed, 13 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 3006e1e..5714a06e 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2003-12-25 Andrew Pinski <pinskia@physics.uc.edu> + + PR C++/13429, C/11944 + * c-common.c (c_build_qualified_type): Return early when type is + error_mark_node. + (c_apply_type_quals_to_decl): Likewise. + 2003-12-25 Kazu Hirata <kazu@cs.umass.edu> * config/alpha/alpha-modes.def: Fix comment formatting. diff --git a/gcc/c-common.c b/gcc/c-common.c index 9cdd144..3ba73dd2 100644 --- a/gcc/c-common.c +++ b/gcc/c-common.c @@ -2784,6 +2784,9 @@ static tree builtin_function_2 (const char *, const char *, tree, tree, tree c_build_qualified_type (tree type, int type_quals) { + if (type == error_mark_node) + return type; + if (TREE_CODE (type) == ARRAY_TYPE) return build_array_type (c_build_qualified_type (TREE_TYPE (type), type_quals), @@ -2809,6 +2812,9 @@ void c_apply_type_quals_to_decl (int type_quals, tree decl) { tree type = TREE_TYPE (decl); + + if (type == error_mark_node) + return; if (((type_quals & TYPE_QUAL_CONST) || (type && TREE_CODE (type) == REFERENCE_TYPE)) |