[clang] Handle __declspec() attributes in using
[llvm-project.git] / clang / test / Sema / aarch64-sve-enums.c
blob70d039de8ad626117913e534c032ac9aaee24ca7
1 // REQUIRES: aarch64-registered-target
2 // RUN: %clang_cc1 %s -triple aarch64-none-linux-gnu -target-feature +sve -fsyntax-only -verify
3 // expected-no-diagnostics
5 // This test makes sure that the enum declarations in section "5. Enum
6 // declarations" of the SVE ACLE [1] are not presented as typedefs in
7 // `arm_sve.h`. It does so by creating a typedef'd struct with the
8 // same identifier as the one defined in `arm_sve.h`, then checking that
9 // it does not overload the enum defined in `arm_sve.h`.
11 // [1] https://developer.arm.com/documentation/100987/latest version 00bet6
13 typedef struct { float f; } svpattern;
14 typedef struct { float f; } svprfop;
15 #include <arm_sve.h>
16 enum svpattern a1 = SV_ALL;
17 svpattern b1 = {1.0f};
18 enum svprfop a2 = SV_PLDL1KEEP;
19 svprfop b2 = {1.0f};