]>
Commit | Line | Data |
---|---|---|
1bec9d5f | 1 | /* Test C11 static assertions. Failed assertions. */ |
32912286 | 2 | /* { dg-do compile } */ |
1bec9d5f | 3 | /* { dg-options "-std=c11 -pedantic-errors" } */ |
32912286 JM |
4 | |
5 | _Static_assert (0, "assert1"); /* { dg-error "static assertion failed: \"assert1\"" } */ | |
6 | ||
7 | enum e { E0, E1 }; | |
8 | ||
9 | _Static_assert (E0, L"assert2"); /* { dg-error "static assertion failed: \"assert2\"" } */ | |
10 | ||
11 | _Static_assert (-0, "ass" L"ert3"); /* { dg-error "static assertion failed: \"assert3\"" } */ | |
12 | ||
13 | struct s | |
14 | { | |
15 | int a; | |
16 | _Static_assert (0, "assert4"); /* { dg-error "static assertion failed: \"assert4\"" } */ | |
17 | int b; | |
18 | }; | |
19 | ||
20 | union u | |
21 | { | |
22 | int i; | |
23 | _Static_assert ((int)0.0, L"assert5"); /* { dg-error "static assertion failed: \"assert5\"" } */ | |
24 | }; | |
25 | ||
26 | void | |
27 | f (void) | |
28 | { | |
29 | int i; | |
30 | i = 1; | |
31 | _Static_assert (0 + 0, "assert6"); /* { dg-error "static assertion failed: \"assert6\"" } */ | |
32 | i = 2; | |
33 | } | |
34 | ||
35 | void | |
36 | g (void) | |
37 | { | |
38 | int i = 0; | |
39 | for (_Static_assert (0, "assert7"); i < 10; i++) /* { dg-error "static assertion failed: \"assert7\"" } */ | |
40 | ; | |
41 | } |