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

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jakub at gcc dot gnu.org

--- Comment #17 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
So, what exactly happens?  Does GCC 4.2 e.g. fail to initialize all members to
zeros in the
-  memset (data, 0, sizeof (*data));
+  *data = assign_parm_data_one ();
change?
Would it work to
  memset (data, 0, sizeof (*data));
  data->arg = function_arg_info ();
for old GCC, or add for old GCC an explicit default constructor to
struct assign_parm_data_one, or
#if GCC_VERSION < 4300
  memset (data, 0, sizeof (*data));
#endif
  *data = assign_parm_data_one ();
?
Most of the other changes seem to be just about using different member names
and thus shouldn't really matter much.

Reply via email to