1// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -fsyntax-only -verify %s
2
3// Check that we don't abort when SVE types are made nullable.  This
4// interface is invalid anyway, but we won't diagnose that until the
5// sizeless type extension is added.
6@interface foo
7@property(nullable) __SVInt8_t s8; // expected-error {{cannot be applied to non-pointer type}}
8@property(nullable) __SVInt16_t s16; // expected-error {{cannot be applied to non-pointer type}}
9@property(nullable) __SVInt32_t s32; // expected-error {{cannot be applied to non-pointer type}}
10@property(nullable) __SVInt64_t s64; // expected-error {{cannot be applied to non-pointer type}}
11
12@property(nullable) __SVUint8_t u8; // expected-error {{cannot be applied to non-pointer type}}
13@property(nullable) __SVUint16_t u16; // expected-error {{cannot be applied to non-pointer type}}
14@property(nullable) __SVUint32_t u32; // expected-error {{cannot be applied to non-pointer type}}
15@property(nullable) __SVUint64_t u64; // expected-error {{cannot be applied to non-pointer type}}
16
17@property(nullable) __SVFloat16_t f16; // expected-error {{cannot be applied to non-pointer type}}
18@property(nullable) __SVFloat32_t f32; // expected-error {{cannot be applied to non-pointer type}}
19@property(nullable) __SVFloat64_t f64; // expected-error {{cannot be applied to non-pointer type}}
20
21@property(nullable) __SVBFloat16_t bf16; // expected-error {{cannot be applied to non-pointer type}}
22
23@property(nullable) __SVBool_t b8; // expected-error {{cannot be applied to non-pointer type}}
24@end
25