> From: Sam James <s...@gentoo.org> > Date: Tue, 13 Aug 2024 18:17:29 +0100
> Hans-Peter Nilsson <h...@axis.com> writes: > > > 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. > > I can't formally approve it but I think we should commit it. it's > obviously right, the test author suggested it, and it wasn't being run > until recently (i.e. we fully understand why this is only appearing > now). Oh! I see it was part of that dg- fixup! Yes, agreed: given the history I'll commit it as obvious later today. I don't mind if someone beats me to the punch. Thanks. brgds, H-P > > thanks. > > > > >> 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 > >> >