diff options
author | Jim Wilson <wilson@gcc.gnu.org> | 1994-07-26 10:56:03 -0700 |
---|---|---|
committer | Jim Wilson <wilson@gcc.gnu.org> | 1994-07-26 10:56:03 -0700 |
commit | ee7204ee5524237c31037d427422137a349cb253 (patch) | |
tree | 9c2836f7a45bd8763c5c467aafff5a94817e713b /gcc | |
parent | f1f8fc979062749705704618132f7b5a2ebd92b9 (diff) | |
download | gcc-ee7204ee5524237c31037d427422137a349cb253.zip gcc-ee7204ee5524237c31037d427422137a349cb253.tar.gz gcc-ee7204ee5524237c31037d427422137a349cb253.tar.bz2 |
(process_init_element): Do not call push_init_level
if the value is error_mark_node.
From-SVN: r7796
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/c-typeck.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/c-typeck.c b/gcc/c-typeck.c index d5283c6..e99d193 100644 --- a/gcc/c-typeck.c +++ b/gcc/c-typeck.c @@ -6020,6 +6020,7 @@ process_init_element (value) /* Otherwise, if we have come to a subaggregate, and we don't have an element of its type, push into it. */ else if (value != 0 && !constructor_no_implicit + && value != error_mark_node && TYPE_MAIN_VARIANT (TREE_TYPE (value)) != fieldtype && (fieldcode == RECORD_TYPE || fieldcode == ARRAY_TYPE || fieldcode == UNION_TYPE)) @@ -6083,6 +6084,7 @@ process_init_element (value) /* Otherwise, if we have come to a subaggregate, and we don't have an element of its type, push into it. */ else if (value != 0 && !constructor_no_implicit + && value != error_mark_node && TYPE_MAIN_VARIANT (TREE_TYPE (value)) != fieldtype && (fieldcode == RECORD_TYPE || fieldcode == ARRAY_TYPE || fieldcode == UNION_TYPE)) @@ -6126,6 +6128,7 @@ process_init_element (value) /* Otherwise, if we have come to a subaggregate, and we don't have an element of its type, push into it. */ else if (value != 0 && !constructor_no_implicit + && value != error_mark_node && TYPE_MAIN_VARIANT (TREE_TYPE (value)) != elttype && (eltcode == RECORD_TYPE || eltcode == ARRAY_TYPE || eltcode == UNION_TYPE)) |