// RUN: %clang_cc1 %s -triple=powerpc-apple-darwin8 -faltivec -verify -pedantic -fsyntax-only typedef int v4 __attribute((vector_size(16))); typedef short v8 __attribute((vector_size(16))); v8 foo(void) { v8 a; v4 b; a = (v8){4, 2}; b = (v4)(5, 6, 7, 8, 9); // expected-warning {{excess elements in vector initializer}} b = (v4)(5, 6, 8, 8.0f); return (v8){0, 1, 2, 3, 1, 2, 3, 4}; // FIXME: test that (type)(fn)(args) still works with -faltivec // FIXME: test that c++ overloaded commas still work -faltivec } void __attribute__((__overloadable__)) f(v4 a) { } void __attribute__((__overloadable__)) f(int a) { } void test() { v4 vGCC; vector int vAltiVec; f(vAltiVec); vGCC = vAltiVec; vGCC = vGCC > vAltiVec; vAltiVec = 0 ? vGCC : vGCC; }