http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60516
--- Comment #7 from Kai Tietz <ktietz at gcc dot gnu.org> --- Thanks for the patch. I am about to do a full-regression test for it. This will take some time. Quick test has shown that issue isn't 'thiscall' specific at all. stdcall, and fastcall calling-convention do have the same issues. So I would suggest to add these two testcases to the patch, too. /* PR target/60516 */ /* { dg-do compile } */ /* { dg-options "-O2" } */ struct S { char c[65536]; }; __attribute__((ms_abi, thiscall)) void foo (void *x, struct S y) { } -------------------- /* PR target/60516 */ /* { dg-do compile } */ /* { dg-options "-O2" } */ struct S { char c[65536]; }; __attribute__((ms_abi, fastcall)) void foo (void *x, void *xx, struct S y) { }