svs-quic wrote: > Thanks @efriedma-quic. I tried adding a test case for it locally and see that > the code produced is different for llvm and gcc: > https://godbolt.org/z/vdhGbvj6W > > Test case: > > ``` > struct s12 {int x[0];}; > struct s12 test_s12(struct s12 a) { > return a; > } > ``` > > For llvm this is an empty record of size zero and so it ignores it where as > gcc loads 0 into a0. Do we handle this case similar to what gcc does? Or do I > add a fixme for now? > > @topperc @asb
What about the case I have mentioned in https://godbolt.org/z/vdhGbvj6W ? Having a check for both Size==0 and LangOpts.CPlusPlus handles this as well. https://github.com/llvm/llvm-project/pull/97315 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits