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.