xref: /llvm-project/clang/test/SemaOpenCL/invalid-vector-literals.cl (revision 7c77b536efdd953d6d97bffbd9ca320c517b26d7)
1// RUN: %clang_cc1 -verify %s
2
3typedef __attribute__(( ext_vector_type(4) ))  float float4;
4typedef __attribute__(( ext_vector_type(4) ))  int int4;
5typedef __attribute__(( ext_vector_type(8) ))  int int8;
6
7void vector_literals_invalid()
8{
9  int4 a = (int4)(1,2,3); // expected-error{{too few elements}}
10  int4 b = (int4)(1,2,3,4,5); // expected-error{{excess elements in vector}}
11  int8 d = (int8)(a,(float4)(1)); // expected-error{{initializing 'int' with an expression of incompatible type 'float4'}}
12  ((int4)(0)).x = 8; // expected-error{{expression is not assignable}}
13}
14