1 // -*- C++ -*-
2 //===----------------------------------------------------------------------===//
3 //
4 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
5 // See https://llvm.org/LICENSE.txt for license information.
6 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
7 //
8 //===----------------------------------------------------------------------===//
9 
10 // <regex>
11 
12 // namespace regex_constants
13 // {
14 //
15 // enum error_type
16 // {
17 //     error_collate    = unspecified,
18 //     error_ctype      = unspecified,
19 //     error_escape     = unspecified,
20 //     error_backref    = unspecified,
21 //     error_brack      = unspecified,
22 //     error_paren      = unspecified,
23 //     error_brace      = unspecified,
24 //     error_badbrace   = unspecified,
25 //     error_range      = unspecified,
26 //     error_space      = unspecified,
27 //     error_badrepeat  = unspecified,
28 //     error_complexity = unspecified,
29 //     error_stack      = unspecified
30 // };
31 //
32 // }
33 
34 #include <regex>
35 #include <cassert>
36 #include "test_macros.h"
37 
main(int,char **)38 int main(int, char**)
39 {
40     LIBCPP_ASSERT(std::regex_constants::error_collate != 0);
41     LIBCPP_ASSERT(std::regex_constants::error_ctype != 0);
42     LIBCPP_ASSERT(std::regex_constants::error_escape != 0);
43     LIBCPP_ASSERT(std::regex_constants::error_backref != 0);
44     LIBCPP_ASSERT(std::regex_constants::error_brack != 0);
45     LIBCPP_ASSERT(std::regex_constants::error_paren != 0);
46     LIBCPP_ASSERT(std::regex_constants::error_brace != 0);
47     LIBCPP_ASSERT(std::regex_constants::error_badbrace != 0);
48     LIBCPP_ASSERT(std::regex_constants::error_range != 0);
49     LIBCPP_ASSERT(std::regex_constants::error_space != 0);
50     LIBCPP_ASSERT(std::regex_constants::error_badrepeat != 0);
51     LIBCPP_ASSERT(std::regex_constants::error_complexity != 0);
52     LIBCPP_ASSERT(std::regex_constants::error_stack != 0);
53 
54     assert(std::regex_constants::error_collate != std::regex_constants::error_ctype);
55     assert(std::regex_constants::error_collate != std::regex_constants::error_escape);
56     assert(std::regex_constants::error_collate != std::regex_constants::error_backref);
57     assert(std::regex_constants::error_collate != std::regex_constants::error_brack);
58     assert(std::regex_constants::error_collate != std::regex_constants::error_paren);
59     assert(std::regex_constants::error_collate != std::regex_constants::error_brace);
60     assert(std::regex_constants::error_collate != std::regex_constants::error_badbrace);
61     assert(std::regex_constants::error_collate != std::regex_constants::error_range);
62     assert(std::regex_constants::error_collate != std::regex_constants::error_space);
63     assert(std::regex_constants::error_collate != std::regex_constants::error_badrepeat);
64     assert(std::regex_constants::error_collate != std::regex_constants::error_complexity);
65     assert(std::regex_constants::error_collate != std::regex_constants::error_stack);
66 
67     assert(std::regex_constants::error_ctype != std::regex_constants::error_escape);
68     assert(std::regex_constants::error_ctype != std::regex_constants::error_backref);
69     assert(std::regex_constants::error_ctype != std::regex_constants::error_brack);
70     assert(std::regex_constants::error_ctype != std::regex_constants::error_paren);
71     assert(std::regex_constants::error_ctype != std::regex_constants::error_brace);
72     assert(std::regex_constants::error_ctype != std::regex_constants::error_badbrace);
73     assert(std::regex_constants::error_ctype != std::regex_constants::error_range);
74     assert(std::regex_constants::error_ctype != std::regex_constants::error_space);
75     assert(std::regex_constants::error_ctype != std::regex_constants::error_badrepeat);
76     assert(std::regex_constants::error_ctype != std::regex_constants::error_complexity);
77     assert(std::regex_constants::error_ctype != std::regex_constants::error_stack);
78 
79     assert(std::regex_constants::error_escape != std::regex_constants::error_backref);
80     assert(std::regex_constants::error_escape != std::regex_constants::error_brack);
81     assert(std::regex_constants::error_escape != std::regex_constants::error_paren);
82     assert(std::regex_constants::error_escape != std::regex_constants::error_brace);
83     assert(std::regex_constants::error_escape != std::regex_constants::error_badbrace);
84     assert(std::regex_constants::error_escape != std::regex_constants::error_range);
85     assert(std::regex_constants::error_escape != std::regex_constants::error_space);
86     assert(std::regex_constants::error_escape != std::regex_constants::error_badrepeat);
87     assert(std::regex_constants::error_escape != std::regex_constants::error_complexity);
88     assert(std::regex_constants::error_escape != std::regex_constants::error_stack);
89 
90     assert(std::regex_constants::error_backref != std::regex_constants::error_brack);
91     assert(std::regex_constants::error_backref != std::regex_constants::error_paren);
92     assert(std::regex_constants::error_backref != std::regex_constants::error_brace);
93     assert(std::regex_constants::error_backref != std::regex_constants::error_badbrace);
94     assert(std::regex_constants::error_backref != std::regex_constants::error_range);
95     assert(std::regex_constants::error_backref != std::regex_constants::error_space);
96     assert(std::regex_constants::error_backref != std::regex_constants::error_badrepeat);
97     assert(std::regex_constants::error_backref != std::regex_constants::error_complexity);
98     assert(std::regex_constants::error_backref != std::regex_constants::error_stack);
99 
100     assert(std::regex_constants::error_brack != std::regex_constants::error_paren);
101     assert(std::regex_constants::error_brack != std::regex_constants::error_brace);
102     assert(std::regex_constants::error_brack != std::regex_constants::error_badbrace);
103     assert(std::regex_constants::error_brack != std::regex_constants::error_range);
104     assert(std::regex_constants::error_brack != std::regex_constants::error_space);
105     assert(std::regex_constants::error_brack != std::regex_constants::error_badrepeat);
106     assert(std::regex_constants::error_brack != std::regex_constants::error_complexity);
107     assert(std::regex_constants::error_brack != std::regex_constants::error_stack);
108 
109     assert(std::regex_constants::error_paren != std::regex_constants::error_brace);
110     assert(std::regex_constants::error_paren != std::regex_constants::error_badbrace);
111     assert(std::regex_constants::error_paren != std::regex_constants::error_range);
112     assert(std::regex_constants::error_paren != std::regex_constants::error_space);
113     assert(std::regex_constants::error_paren != std::regex_constants::error_badrepeat);
114     assert(std::regex_constants::error_paren != std::regex_constants::error_complexity);
115     assert(std::regex_constants::error_paren != std::regex_constants::error_stack);
116 
117     assert(std::regex_constants::error_brace != std::regex_constants::error_badbrace);
118     assert(std::regex_constants::error_brace != std::regex_constants::error_range);
119     assert(std::regex_constants::error_brace != std::regex_constants::error_space);
120     assert(std::regex_constants::error_brace != std::regex_constants::error_badrepeat);
121     assert(std::regex_constants::error_brace != std::regex_constants::error_complexity);
122     assert(std::regex_constants::error_brace != std::regex_constants::error_stack);
123 
124     assert(std::regex_constants::error_badbrace != std::regex_constants::error_range);
125     assert(std::regex_constants::error_badbrace != std::regex_constants::error_space);
126     assert(std::regex_constants::error_badbrace != std::regex_constants::error_badrepeat);
127     assert(std::regex_constants::error_badbrace != std::regex_constants::error_complexity);
128     assert(std::regex_constants::error_badbrace != std::regex_constants::error_stack);
129 
130     assert(std::regex_constants::error_range != std::regex_constants::error_space);
131     assert(std::regex_constants::error_range != std::regex_constants::error_badrepeat);
132     assert(std::regex_constants::error_range != std::regex_constants::error_complexity);
133     assert(std::regex_constants::error_range != std::regex_constants::error_stack);
134 
135     assert(std::regex_constants::error_space != std::regex_constants::error_badrepeat);
136     assert(std::regex_constants::error_space != std::regex_constants::error_complexity);
137     assert(std::regex_constants::error_space != std::regex_constants::error_stack);
138 
139     assert(std::regex_constants::error_badrepeat != std::regex_constants::error_complexity);
140     assert(std::regex_constants::error_badrepeat != std::regex_constants::error_stack);
141 
142     assert(std::regex_constants::error_complexity != std::regex_constants::error_stack);
143 
144   return 0;
145 }
146