================ @@ -1741,8 +1741,10 @@ void is_layout_compatible(int n) static_assert(!__is_layout_compatible(unsigned char, signed char)); static_assert(__is_layout_compatible(int[], int[])); static_assert(__is_layout_compatible(int[2], int[2])); - static_assert(!__is_layout_compatible(int[n], int[2])); // FIXME: VLAs should be rejected - static_assert(!__is_layout_compatible(int[n], int[n])); // FIXME: VLAs should be rejected + static_assert(!__is_layout_compatible(int[n], int[2])); + // expected-error@-1 {{variable length arrays are not supported for '__is_layout_compatible'}} + static_assert(!__is_layout_compatible(int[n], int[n])); ---------------- AaronBallman wrote:
I think where we ended up is: 1) Reject incomplete types (still needs to be done) 2) Reject VLAs (done, looks good) 3) FAMs are accepted (no changes needed) So I think you should implement #1 and add tests for it, then add tests for #3, and I think that finishes this. https://github.com/llvm/llvm-project/pull/87737 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits