1 | // RUN: %clang_cc1 -triple x86_64-apple-darwin10 -fsyntax-only -fno-lax-vector-conversions -verify %s |
2 | typedef unsigned int __attribute__((vector_size (16))) vUInt32; |
3 | typedef int __attribute__((vector_size (16))) vSInt32; |
4 | |
5 | vSInt32 foo (vUInt32 a) { |
6 | vSInt32 b = { 0, 0, 0, 0 }; |
7 | b += a; // expected-error{{cannot convert between vector type 'vUInt32' (vector of 4 'unsigned int' values) and vector type 'vSInt32' (vector of 4 'int' values) as implicit conversion would cause truncation}} |
8 | return b; |
9 | } |
10 | |