blob: 0ef15fdec6cd71024d987bbef57d6b5d182c95b5 [file] [log] [blame]
// RUN: %clang_cc1 -fsyntax-only -verify %s -fno-lax-vector-conversions
typedef float float4 __attribute__((vector_size(16)));
typedef int int4 __attribute__((vector_size(16)));
typedef int4* int4p;
void test1(float4 a, int4 *result, int i) {
result[i] = a; // expected-error {{assigning 'float4', expected 'int4'}}
}
void test2(float4 a, int4p result, int i) {
result[i] = a; // expected-error {{assigning 'float4', expected 'int4'}}
}
// PR2039
typedef int a[5];
void test3() {
typedef const a b;
b r;
r[0]=10; // expected-error {{read-only variable is not assignable}}
}
int test4(const a y) {
y[0] = 10; // expected-error {{read-only variable is not assignable}}
}
// PR2189
int test5() {
const int s[5]; int t[5];
return &s == &t; // expected-warning {{comparison of distinct pointer types}}
}
int test6() {
const a s;
a t;
return &s == &t; // expected-warning {{comparison of distinct pointer types}}
}