================ @@ -0,0 +1,20 @@ +// RUN: %clang_cc1 -std=c2y -fsyntax-only -verify -pedantic %s + +typedef int (*T1)[2]; +restrict T1 t1; +static_assert(_Generic(typeof (t1), int (*restrict)[2] : 1, default : 0)); + +typedef int *T2[2]; +restrict T2 t2; +static_assert(_Generic(typeof (t2), int *restrict[2] : 1, default : 0)); + +typedef int *T3[2][2]; +restrict T3 t3; +static_assert(_Generic(typeof (t3), int *restrict[2][2] : 1, default : 0)); ---------------- efriedma-quic wrote:
Maybe also add a check that we handle this correctly in function types: ``` static_assert(_Generic(void(T3 restrict), void(int *restrict(*)[2]):1, default:0)); ``` https://github.com/llvm/llvm-project/pull/120896 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits