https://gcc.gnu.org/bugzilla/show_bug.cgi?id=52981

krux <hoganmeier at gmail dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |hoganmeier at gmail dot com

--- Comment #6 from krux <hoganmeier at gmail dot com> ---
(In reply to Manuel López-Ibáñez from comment #4)
> This is quite easy to implement.

It's not as trivial as one might think.
There's some copy-paste code to disable the flag in various places (instead of
handling it inside if possible).


$ find -name '*.c' | xargs fgrep -nC2 warn_padded
./gcc/config/spu/spu.c-3959-  /* We know this is being padded and we want it
too.  It is an internal
./gcc/config/spu/spu.c-3960-     type so hide the warnings from the user. */
./gcc/config/spu/spu.c:3961:  owp = warn_padded;
./gcc/config/spu/spu.c:3962:  warn_padded = false;
./gcc/config/spu/spu.c-3963-
./gcc/config/spu/spu.c-3964-  layout_type (record);
./gcc/config/spu/spu.c-3965-
./gcc/config/spu/spu.c:3966:  warn_padded = owp;
./gcc/config/spu/spu.c-3967-
./gcc/config/spu/spu.c-3968-  /* The correct type is an array type of one
element.  */
--
./gcc/config/tilegx/tilegx.c-340-  /* We know this is being padded and we want
it too.  It is an
./gcc/config/tilegx/tilegx.c-341-     internal type so hide the warnings from
the user.  */
./gcc/config/tilegx/tilegx.c:342:  owp = warn_padded;
./gcc/config/tilegx/tilegx.c:343:  warn_padded = false;
./gcc/config/tilegx/tilegx.c-344-
./gcc/config/tilegx/tilegx.c-345-  layout_type (record);
./gcc/config/tilegx/tilegx.c-346-
./gcc/config/tilegx/tilegx.c:347:  warn_padded = owp;
./gcc/config/tilegx/tilegx.c-348-
./gcc/config/tilegx/tilegx.c-349-  /* The correct type is an array type of one
element.  */
--
./gcc/config/tilepro/tilepro.c-292-  /* We know this is being padded and we
want it too.  It is an
./gcc/config/tilepro/tilepro.c-293-     internal type so hide the warnings from
the user.  */
./gcc/config/tilepro/tilepro.c:294:  owp = warn_padded;
./gcc/config/tilepro/tilepro.c:295:  warn_padded = false;
./gcc/config/tilepro/tilepro.c-296-
./gcc/config/tilepro/tilepro.c-297-  layout_type (record);
./gcc/config/tilepro/tilepro.c-298-
./gcc/config/tilepro/tilepro.c:299:  warn_padded = owp;
./gcc/config/tilepro/tilepro.c-300-
./gcc/config/tilepro/tilepro.c-301-  /* The correct type is an array type of
one element.  */
--
./gcc/fortran/trans-io.c-223-  /* -Wpadded warnings on these artificially
created structures are not
./gcc/fortran/trans-io.c-224-     helpful; suppress them. */
./gcc/fortran/trans-io.c:225:  int save_warn_padded = warn_padded;
./gcc/fortran/trans-io.c:226:  warn_padded = 0;
./gcc/fortran/trans-io.c-227-  gfc_finish_type (t);
./gcc/fortran/trans-io.c:228:  warn_padded = save_warn_padded;
./gcc/fortran/trans-io.c-229-  st_parameter[ptype].type = t;
./gcc/fortran/trans-io.c-230-}
./gcc/tree-nested.c-3197-      /* In some cases the frame type will trigger the
-Wpadded warning.
./gcc/tree-nested.c-3198-        This is not helpful; suppress it. */
./gcc/tree-nested.c:3199:      int save_warn_padded = warn_padded;
./gcc/tree-nested.c:3200:      warn_padded = 0;
./gcc/tree-nested.c-3201-      layout_type (root->frame_type);
./gcc/tree-nested.c:3202:      warn_padded = save_warn_padded;
./gcc/tree-nested.c-3203-      layout_decl (root->frame_decl, 0);
./gcc/tree-nested.c-3204-

Reply via email to