Tobias Grosser | 9df05ea | 2011-09-22 13:03:14 +0000 | [diff] [blame] | 1 | // RUN: %clang_cc1 -verify %s |
| 2 | |
| 3 | typedef unsigned int uint4 __attribute((ext_vector_type(4))); |
| 4 | typedef int int4 __attribute((ext_vector_type(4))); |
| 5 | typedef int int3 __attribute((ext_vector_type(3))); |
| 6 | typedef unsigned uint3 __attribute((ext_vector_type(3))); |
| 7 | |
| 8 | void vector_conv_invalid() { |
| 9 | uint4 u = (uint4)(1); |
| 10 | int4 i = u; // expected-error{{initializing 'int4' with an expression of incompatible type 'uint4'}} |
| 11 | int4 e = (int4)u; // expected-error{{invalid conversion between ext-vector type 'int4' and 'uint4'}} |
| 12 | |
| 13 | uint3 u4 = (uint3)u; // expected-error{{invalid conversion between ext-vector type 'uint3' and 'uint4'}} |
| 14 | } |