| typedef int v8si __attribute__((vector_size (8 * sizeof (int)))); |
| typedef long long v4di __attribute__((vector_size (4 * sizeof (long long)))); |
| |
| void |
| foo (v8si *x, v4di *y, int z) |
| { |
| __builtin_convertvector (*y, v8si); /* { dg-error "number of elements of the first argument vector and the second argument vector type should be the same" } */ |
| __builtin_convertvector (*x, v4di); /* { dg-error "number of elements of the first argument vector and the second argument vector type should be the same" } */ |
| __builtin_convertvector (*x, int); /* { dg-error "second argument must be an integer or floating vector type" } */ |
| __builtin_convertvector (z, v4di); /* { dg-error "first argument must be an integer or floating vector" } */ |
| __builtin_convertvector (); /* { dg-error "expected" } */ |
| __builtin_convertvector (*x); /* { dg-error "expected" } */ |
| __builtin_convertvector (*x, *y); /* { dg-error "expected" } */ |
| __builtin_convertvector (*x, v8si, 1);/* { dg-error "expected" } */ |
| } |