On 3/31/2022 9:54 AM, Jakub Jelinek via Gcc-patches wrote:
Hi!

As discussed in PR102024, zero width bitfields might not be the only ones
causing ABI issues at least on mips, zero size arrays or (in C only) zero
sized (empty) structures can be problematic too.

The following patch adds some coverage for it too.

Tested on x86_64-linux with
make check-gcc check-g++ RUNTESTFLAGS='ALT_CC_UNDER_TEST=gcc 
ALT_CXX_UNDER_TEST=g++ --target_board=unix\{-m32,-m64\} compat.exp=pr102024*'
make check-gcc check-g++ RUNTESTFLAGS='ALT_CC_UNDER_TEST=clang 
ALT_CXX_UNDER_TEST=clang++ --target_board=unix\{-m32,-m64\} 
compat.exp=pr102024*'
with gcc/g++ 10.3 and clang 11.  Everything but (expectedly)
FAIL: gcc.dg/compat/pr102024 c_compat_x_tst.o-c_compat_y_alt.o execute
FAIL: gcc.dg/compat/pr102024 c_compat_x_alt.o-c_compat_y_tst.o execute
for -m64 ALT_CC_UNDER_TEST=gcc passes.

Ok for trunk?

2022-03-31  Jakub Jelinek  <ja...@redhat.com>

        PR target/102024
        * gcc.dg/compat/pr102024_test.h: Add further tests with zero sized
        structures and arrays.
        * g++.dg/compat/pr102024_test.h: Add further tests with zero sized
        arrays.
I'd generally lean towards a new test rather than extending an existing one, but that's a nit that primarily helps automated testing find regressions, so I wouldn't consider it a requirement to break out the new cases.

OK as-is or with the new cases in their own testfile.

jeff

Reply via email to