https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79364
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |wrong-code --- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> --- I thought there was another bug filed for this. Basically x86_64 back-end is treating this empty struct incorrectly. In the case of C++, empty struct sizeof cannot be 0 so it is 1. But GNU C defines the sizeof of an empty struct to be 0. There is some confusion in either the calleer or callee part of argument passing.