diff options
author | Richard Stallman <rms@gnu.org> | 1993-09-18 02:36:30 +0000 |
---|---|---|
committer | Richard Stallman <rms@gnu.org> | 1993-09-18 02:36:30 +0000 |
commit | 925d5bbfe9aab62d196da3cc1afb238c6d8b5b4c (patch) | |
tree | 282595e20289eb6975819470a684a8e5f73a61f8 /gcc | |
parent | 96fc2623de82eeac40d5bc6a44c9a8bf95606f11 (diff) | |
download | gcc-925d5bbfe9aab62d196da3cc1afb238c6d8b5b4c.zip gcc-925d5bbfe9aab62d196da3cc1afb238c6d8b5b4c.tar.gz gcc-925d5bbfe9aab62d196da3cc1afb238c6d8b5b4c.tar.bz2 |
(output_init_element): Update constructor_bit_index for union types.
From-SVN: r5350
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/c-typeck.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/gcc/c-typeck.c b/gcc/c-typeck.c index 9e463cd..f363420 100644 --- a/gcc/c-typeck.c +++ b/gcc/c-typeck.c @@ -5987,8 +5987,10 @@ output_init_element (value, type, field, pending) output_constant (digest_init (type, value, 0, 0), int_size_in_bytes (type)); - /* For a record, keep track of end position of last field. */ - if (TREE_CODE (constructor_type) == RECORD_TYPE) + /* For a record or union, + keep track of end position of last field. */ + if (TREE_CODE (constructor_type) == RECORD_TYPE + || TREE_CODE (constructor_type) == UNION_TYPE) { tree temp = size_binop (PLUS_EXPR, DECL_FIELD_BITPOS (constructor_fields), |