23 lines
719 B
Objective-C
23 lines
719 B
Objective-C
// RUN: %clang_cc1 -fsyntax-only -verify -fenable-matrix %s
|
|
|
|
struct Foo {};
|
|
__attribute__((objc_root_class))
|
|
@interface FooValue
|
|
@property struct Foo value;
|
|
@end
|
|
|
|
typedef double double4x4 __attribute__((matrix_type(4, 4)));
|
|
|
|
// Check that we generate proper error messages for invalid placeholder types.
|
|
//
|
|
double test_index_placeholders(double4x4 m, FooValue *iv) {
|
|
return m[iv.value][iv.value];
|
|
// expected-error@-1 {{matrix row index is not an integer}}
|
|
// expected-error@-2 {{matrix column index is not an integer}}
|
|
}
|
|
|
|
double test_base_and_index_placeholders(FooValue *m, FooValue *iv) {
|
|
return m.value[iv.value][iv.value];
|
|
// expected-error@-1 {{subscripted value is not an array, pointer, or vector}}
|
|
}
|