1 | // RUN: %clang_cc1 -triple=aarch64-none-none -fsyntax-only -verify -std=c89 \ |
2 | // RUN: -ffreestanding %s |
3 | // RUN: %clang_cc1 -triple=aarch64-none-none -fsyntax-only -verify \ |
4 | // RUN: -std=c99 -ffreestanding %s |
5 | // RUN: %clang_cc1 -triple=aarch64-none-none -fsyntax-only -verify -std=c11 \ |
6 | // RUN: -ffreestanding %s |
7 | // RUN: %clang_cc1 -triple=aarch64-none-none -fsyntax-only -verify \ |
8 | // RUN: -std=c++11 -x c++ -ffreestanding %s |
9 | // expected-no-diagnostics |
10 | |
11 | #define __STDC_WANT_IEC_60559_TYPES_EXT__ |
12 | #include <float.h> |
13 | |
14 | #ifndef FLT16_MIN_10_EXP |
15 | #error "Macro FLT16_MIN_10_EXP is missing." |
16 | #elif FLT16_MIN_10_EXP > -13 |
17 | #error "Macro FLT16_MIN_10_EXP is invalid." |
18 | #endif |
19 | |
20 | _Static_assert(FLT16_MIN_10_EXP == __FLT16_MIN_10_EXP__, ""); |
21 | |
22 | #ifndef FLT16_MIN_EXP |
23 | #error "Macro FLT16_MIN_EXP is missing." |
24 | #elif FLT16_MIN_EXP > -14 |
25 | #error "Macro FLT16_MIN_EXP is invalid." |
26 | #endif |
27 | |
28 | _Static_assert(FLT16_MIN_EXP == __FLT16_MIN_EXP__, ""); |
29 | |
30 | #ifndef FLT16_MAX_10_EXP |
31 | #error "Macro FLT16_MAX_10_EXP is missing." |
32 | #elif FLT16_MAX_10_EXP < 4 |
33 | #error "Macro FLT16_MAX_10_EXP is invalid." |
34 | #endif |
35 | |
36 | _Static_assert(FLT16_MAX_10_EXP == __FLT16_MAX_10_EXP__, ""); |
37 | |
38 | #ifndef FLT16_MAX_EXP |
39 | #error "Macro FLT16_MAX_EXP is missing." |
40 | #elif FLT16_MAX_EXP < 15 |
41 | #error "Macro FLT16_MAX_EXP is invalid." |
42 | #endif |
43 | |
44 | _Static_assert(FLT16_MAX_EXP == __FLT16_MAX_EXP__, ""); |
45 | |
46 | #ifndef FLT16_DECIMAL_DIG |
47 | #error "Macro FLT16_DECIMAL_DIG is missing." |
48 | #elif FLT16_DECIMAL_DIG < 5 |
49 | #error "Macro FLT16_DECIMAL_DIG is invalid." |
50 | #endif |
51 | |
52 | _Static_assert(FLT16_DECIMAL_DIG == __FLT16_DECIMAL_DIG__, ""); |
53 | |
54 | #ifndef FLT16_DIG |
55 | #error "Macro FLT16_DIG is missing." |
56 | #elif FLT16_DIG < 3 |
57 | #error "Macro FLT16_DIG is invalid." |
58 | #endif |
59 | |
60 | _Static_assert(FLT16_DIG == __FLT16_DIG__, ""); |
61 | |
62 | #ifndef FLT16_MANT_DIG |
63 | #error "Macro FLT16_MANT_DIG is missing." |
64 | #elif FLT16_MANT_DIG < 11 |
65 | #error "Macro FLT16_MANT_DIG is invalid." |
66 | #endif |
67 | |
68 | _Static_assert(FLT16_MANT_DIG == __FLT16_MANT_DIG__, ""); |
69 | |
70 | |