On Thu, Jul 24, 2025 at 06:38:26PM +0300, Artemiy Granat wrote: > gcc/ChangeLog: > > * config/i386/i386-options.cc (ix86_handle_cconv_attribute): > Handle simultaneous use of regparm and thiscall attributes in > case when regparm is set before thiscall. > > gcc/testsuite/ChangeLog: > > * gcc.target/i386/attributes-error.c: Add more attributes > combinations.
This fails on i686-linux: FAIL: gcc.target/i386/attributes-error.c (test for errors, line 12) FAIL: gcc.target/i386/attributes-error.c (test for excess errors) Excess errors: .../gcc.target/i386/attributes-error.c:7:1: warning: 'thiscall' attribute is used for non-class method [-Wattributes] .../gcc.target/i386/attributes-error.c:13:1: warning: 'thiscall' attribute is used for non-class method [-Wattributes] .../gcc.target/i386/attributes-error.c:18:1: warning: 'thiscall' attribute is used for non-class method [-Wattributes] .../gcc.target/i386/attributes-error.c:24:1: warning: 'thiscall' attribute is used for non-class method [-Wattributes] .../gcc.target/i386/attributes-error.c:28:1: warning: 'thiscall' attribute is used for non-class method [-Wattributes] .../gcc.target/i386/attributes-error.c:29:1: warning: 'thiscall' attribute is used for non-class method [-Wattributes] .../gcc.target/i386/attributes-error.c:30:1: warning: 'thiscall' attribute is used for non-class method [-Wattributes] .../gcc.target/i386/attributes-error.c:31:1: warning: 'thiscall' attribute is used for non-class method [-Wattributes] .../gcc.target/i386/attributes-error.c:32:1: warning: 'thiscall' attribute is used for non-class method [-Wattributes] .../gcc.target/i386/attributes-error.c:37:1: warning: 'thiscall' attribute is used for non-class method [-Wattributes] Perhaps at least add /* { dg-options "" } */ to avoid -pedantic, or /* { dg-options "-msse2" } */ But neither of that helps with the line 12 case, void foo8(int i, int j) __attribute__((sseregparm, fastcall)); /* { dg-error "not compatible" } */ That is simply not diagnosed. Jakub