I stumbled on this being a regression for cris-elf as well; the patch expectedly fixes the test-case for CRIS as well. It's been a week since the patch was posted and as I see no replies, I'm pinging this in behalf of Dimitar.
> From: Dimitar Dimitrov <dimi...@dinux.eu> > Date: Mon, 5 Aug 2024 21:29:35 +0300 > The size of "struct only_fam_2" is dependent on the alignment of the > flexible array member "b", and not on the type of the preceding > bit-fields. For most targets the two are equal. But on default_packed > targets like pru-unknown-elf, the alignment of int is not equal to the > size of int, so the test failed. > > Patch was suggested by Qing Zhao. Tested on pru-unknown-elf and > x86_64-pc-linux-gnu. > > Ok for master? > > PR testsuite/116155 > > gcc/testsuite/ChangeLog: > > * c-c++-common/fam-in-union-alone-in-struct-1.c: Adjust > check to account for default_packed targets. > > Signed-off-by: Dimitar Dimitrov <dimi...@dinux.eu> > --- > gcc/testsuite/c-c++-common/fam-in-union-alone-in-struct-1.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/gcc/testsuite/c-c++-common/fam-in-union-alone-in-struct-1.c > b/gcc/testsuite/c-c++-common/fam-in-union-alone-in-struct-1.c > index 39ebf17850b..9979e96fe70 100644 > --- a/gcc/testsuite/c-c++-common/fam-in-union-alone-in-struct-1.c > +++ b/gcc/testsuite/c-c++-common/fam-in-union-alone-in-struct-1.c > @@ -45,7 +45,7 @@ int main () > __builtin_abort (); > if (sizeof (struct only_fam) != 0) > __builtin_abort (); > - if (sizeof (struct only_fam_2) != sizeof (int)) > + if (sizeof (struct only_fam_2) != __alignof__ (int)) > __builtin_abort (); > return 0; > } > -- > 2.45.2 >