// RUN: %clang_cc1 -triple dxil-pc-shadermodel6.3-library %s -verify void fn(int I[5]); // #fn void fn2(int I[3][3]); // #fn2 void call() { float F[5]; double D[4]; int Long[9]; int Short[4]; int Same[5]; fn(F); // expected-error{{no matching function for call to 'fn'}} // expected-note@#fn{{candidate function not viable: no known conversion from 'float[5]' to 'int[5]' for 1st argument}} fn(D); // expected-error{{no matching function for call to 'fn'}} // expected-note@#fn{{candidate function not viable: no known conversion from 'double[4]' to 'int[5]' for 1st argument}} fn(Long); // expected-error{{no matching function for call to 'fn'}} // expected-note@#fn{{candidate function not viable: no known conversion from 'int[9]' to 'int[5]' for 1st argument}} fn(Short); // expected-error{{no matching function for call to 'fn'}} // expected-note@#fn{{candidate function not viable: no known conversion from 'int[4]' to 'int[5]' for 1st argument}} fn(Same); // totally fine, nothing to see here. fn2(Long); // expected-error{{no matching function for call to 'fn2'}} // expected-note@#fn2{{candidate function not viable: no known conversion from 'int[9]' to 'int[3][3]' for 1st argument}} }