diff options
Diffstat (limited to 'gcc/c')
-rw-r--r-- | gcc/c/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/c/c-decl.c | 3 |
2 files changed, 8 insertions, 1 deletions
diff --git a/gcc/c/ChangeLog b/gcc/c/ChangeLog index af83cd2..ae9f862 100644 --- a/gcc/c/ChangeLog +++ b/gcc/c/ChangeLog @@ -1,3 +1,9 @@ +2015-06-11 Jan Hubicka <hubicka@ucw.cz> + + PR middle-end/66325 + * c-decl.c (start_enum): Set TYPE_PACKED consistently among type + variants. + 2015-06-11 Pierre-Marie de Rodat <derodat@adacore.com> * c-decl.c (pop_scope): Register the main translation unit diff --git a/gcc/c/c-decl.c b/gcc/c/c-decl.c index 3fde22f..b124feb 100644 --- a/gcc/c/c-decl.c +++ b/gcc/c/c-decl.c @@ -7947,7 +7947,8 @@ start_enum (location_t loc, struct c_enum_contents *the_enum, tree name) the_enum->enum_overflow = 0; if (flag_short_enums) - TYPE_PACKED (enumtype) = 1; + for (tree v = TYPE_MAIN_VARIANT (enumtype); v; v = TYPE_NEXT_VARIANT (v)) + TYPE_PACKED (v) = 1; /* FIXME: This will issue a warning for a use of a type defined within sizeof in a statement expr. This is not terribly serious |