Line data Source code
1 : %language=C++
2 : %define class-name std_name_hint_lookup
3 : %struct-type
4 : %{
5 : /* This file is auto-generated by gen-cxxapi-file.py. */
6 : /* Copyright (C) 2022-2023 Free Software Foundation, Inc.
7 :
8 : This file is part of GCC.
9 :
10 : GCC is free software; you can redistribute it and/or modify it under
11 : the terms of the GNU General Public License as published by the Free
12 : Software Foundation; either version 3, or (at your option) any later
13 : version.
14 :
15 : GCC is distributed in the hope that it will be useful, but WITHOUT ANY
16 : WARRANTY; without even the implied warranty of MERCHANTABILITY or
17 : FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
18 : for more details.
19 :
20 : You should have received a copy of the GNU General Public License
21 : along with GCC; see the file COPYING3. If not see
22 : <http://www.gnu.org/licenses/>. */
23 : %}
24 : struct std_name_hint
25 : {
26 : /* A name within "std::". */
27 : const char *name;
28 :
29 : /* The header name defining it within the C++ Standard Library
30 : (with '<' and '>'). */
31 : const char* header;
32 :
33 : /* The dialect of C++ in which this was added. */
34 : enum cxx_dialect min_dialect;
35 : };
36 : %%
37 : # The standard-defined types, functions, and options in the std:: namespace
38 : # as defined in the C++ language specification. The result is used in the
39 : # get_std_name_hint functions.
40 : # throws an exception.
41 : #
42 : # <any>
43 : any, "<any>", cxx17
44 : any_cast, "<any>", cxx17
45 : make_any, "<any>", cxx17
46 : # <array>
47 185 : array, "<array>", cxx11
48 : to_array, "<array>", cxx20
49 185 : # <atomic>
50 : atomic, "<atomic>", cxx11
51 : atomic_ref, "<atomic>", cxx20
52 : atomic_signed_lock_free, "<atomic>", cxx11
53 : atomic_uintmax_t, "<atomic>", cxx20
54 : atomic_unsigned_lock_free, "<atomic>", cxx11
55 : # <bitset>
56 : bitset, "<bitset>", cxx11
57 : # <compare>
58 : partial_ordering, "<compare>", cxx20
59 : strong_equality, "<compare>", cxx20
60 : strong_ordering, "<compare>", cxx20
61 : weak_equality, "<compare>", cxx20
62 : weak_ordering, "<compare>", cxx20
63 : # <complex>
64 : complex, "<complex>", cxx98
65 : complex_literals, "<complex>", cxx14
66 : # <condition_variable>
67 : condition_variable, "<condition_variable>", cxx11
68 : condition_variable_any, "<condition_variable>", cxx11
69 : # <cstddef>
70 : byte, "<cstddef>", cxx17
71 : # <cstdint>
72 : uint_fast16_t, "<cstdint>", cxx11
73 : uint_fast32_t, "<cstdint>", cxx11
74 : uint_fast64_t, "<cstdint>", cxx11
75 : uint_fast8_t, "<cstdint>", cxx11
76 : uint_least16_t, "<cstdint>", cxx11
77 : uint_least32_t, "<cstdint>", cxx11
78 185 : uint_least64_t, "<cstdint>", cxx11
79 : uint_least8_t, "<cstdint>", cxx11
80 185 : uintmax_t, "<cstdint>", cxx11
81 : uintptr_t, "<cstdint>", cxx11
82 18 : # <deque>
83 18 : deque, "<deque>", cxx98
84 : # <exception>
85 81 : current_exception, "<exception>", cxx11
86 81 : exception, "<exception>", cxx98
87 81 : exception_ptr, "<exception>", cxx11
88 81 : make_exception_ptr, "<exception>", cxx11
89 81 : terminate, "<exception>", cxx98
90 : uncaught_exceptions, "<exception>", cxx17
91 185 : # <expected>
92 185 : expected, "<expected>", cxx23
93 185 : # <forward_list>
94 185 : forward_list, "<forward_list>", cxx11
95 185 : # <fstream>
96 185 : basic_filebuf, "<fstream>", cxx98
97 : basic_fstream, "<fstream>", cxx98
98 185 : basic_ifstream, "<fstream>", cxx98
99 185 : basic_ofstream, "<fstream>", cxx98
100 185 : fstream, "<fstream>", cxx98
101 : ifstream, "<fstream>", cxx98
102 185 : ofstream, "<fstream>", cxx98
103 : # <functional>
104 : bind, "<functional>", cxx11
105 : bind_front, "<functional>", cxx20
106 185 : function, "<functional>", cxx11
107 : hash, "<functional>", cxx11
108 185 : invoke, "<functional>", cxx17
109 : invoke_r, "<functional>", cxx23
110 : mem_fn, "<functional>", cxx11
111 : not_fn, "<functional>", cxx17
112 : reference_wrapper, "<functional>", cxx11
113 : unwrap_ref_decay, "<functional>", cxx20
114 : unwrap_ref_decay_t, "<functional>", cxx20
115 : unwrap_reference, "<functional>", cxx20
116 : unwrap_reference_t, "<functional>", cxx20
117 185 : # <future>
118 : async, "<future>", cxx11
119 : future, "<future>", cxx11
120 : packaged_task, "<future>", cxx11
121 : promise, "<future>", cxx11
122 : # <iomanip>
123 : get_money, "<iomanip>", cxx11
124 : get_time, "<iomanip>", cxx11
125 : put_money, "<iomanip>", cxx11
126 : put_time, "<iomanip>", cxx11
127 : quoted, "<iomanip>", cxx14
128 : resetiosflags, "<iomanip>", cxx98
129 : setbase, "<iomanip>", cxx98
130 : setfill, "<iomanip>", cxx98
131 : setiosflags, "<iomanip>", cxx98
132 : setprecision, "<iomanip>", cxx98
133 : setw, "<iomanip>", cxx98
134 : # <ios>
135 : boolalpha, "<ios>", cxx98
136 : dec, "<ios>", cxx98
137 : defaultfloat, "<ios>", cxx11
138 : fixed, "<ios>", cxx98
139 : hex, "<ios>", cxx98
140 : hexfloat, "<ios>", cxx11
141 : internal, "<ios>", cxx98
142 : left, "<ios>", cxx98
143 : noboolalpha, "<ios>", cxx98
144 : noshowbase, "<ios>", cxx98
145 : noshowpoint, "<ios>", cxx98
146 185 : noshowpos, "<ios>", cxx98
147 : noskipws, "<ios>", cxx98
148 : nounitbuf, "<ios>", cxx98
149 : nouppercase, "<ios>", cxx98
150 : oct, "<ios>", cxx98
151 : right, "<ios>", cxx98
152 : scientific, "<ios>", cxx98
153 : showbase, "<ios>", cxx98
154 : showpoint, "<ios>", cxx98
155 : showpos, "<ios>", cxx98
156 : skipws, "<ios>", cxx98
157 : unitbuf, "<ios>", cxx98
158 : uppercase, "<ios>", cxx98
159 : # <iostream>
160 : cerr, "<iostream>", cxx98
161 : cin, "<iostream>", cxx98
162 : clog, "<iostream>", cxx98
163 : cout, "<iostream>", cxx98
164 : wcerr, "<iostream>", cxx98
165 : wcin, "<iostream>", cxx98
166 : wclog, "<iostream>", cxx98
167 : wcout, "<iostream>", cxx98
168 : # <istream>
169 : istream, "<istream>", cxx98
170 : ws, "<istream>", cxx98
171 : # <iterator>
172 : advance, "<iterator>", cxx98
173 : back_inserter, "<iterator>", cxx98
174 : begin, "<iterator>", cxx11
175 : distance, "<iterator>", cxx98
176 : end, "<iterator>", cxx11
177 : front_inserter, "<iterator>", cxx98
178 : inserter, "<iterator>", cxx98
179 : istream_iterator, "<iterator>", cxx98
180 : istreambuf_iterator, "<iterator>", cxx98
181 : iterator_traits, "<iterator>", cxx98
182 : move_iterator, "<iterator>", cxx11
183 : next, "<iterator>", cxx11
184 : ostream_iterator, "<iterator>", cxx98
185 : ostreambuf_iterator, "<iterator>", cxx98
186 : prev, "<iterator>", cxx11
187 : reverse_iterator, "<iterator>", cxx98
188 : # <list>
189 : list, "<list>", cxx98
190 : # <map>
191 : map, "<map>", cxx98
192 : multimap, "<map>", cxx98
193 : # <memory>
194 : addressof, "<memory>", cxx11
195 : align, "<memory>", cxx11
196 : allocate_shared, "<memory>", cxx11
197 : allocate_shared_for_overwrite, "<memory>", cxx20
198 : allocator, "<memory>", cxx98
199 : allocator_arg, "<memory>", cxx11
200 : allocator_arg_t, "<memory>", cxx11
201 : allocator_traits, "<memory>", cxx11
202 : assume_aligned, "<memory>", cxx20
203 : bad_weak_ptr, "<memory>", cxx11
204 : const_pointer_cast, "<memory>", cxx11
205 : construct_at, "<memory>", cxx20
206 : default_delete, "<memory>", cxx11
207 : destroy, "<memory>", cxx20
208 : destroy_at, "<memory>", cxx20
209 : destroy_n, "<memory>", cxx20
210 : dynamic_pointer_cast, "<memory>", cxx11
211 : enable_shared_from_this, "<memory>", cxx11
212 : get_deleter, "<memory>", cxx11
213 : make_obj_using_allocator, "<memory>", cxx20
214 : make_shared, "<memory>", cxx11
215 : make_shared_for_overwrite, "<memory>", cxx20
216 : make_unique, "<memory>", cxx14
217 : make_unique_for_overwrite, "<memory>", cxx20
218 : owner_less, "<memory>", cxx11
219 : pointer_traits, "<memory>", cxx11
220 : reinterpret_pointer_cast, "<memory>", cxx17
221 : shared_ptr, "<memory>", cxx11
222 : static_pointer_cast, "<memory>", cxx11
223 : to_address, "<memory>", cxx11
224 : uninitialized_construct_using_allocator, "<memory>", cxx20
225 : unique_ptr, "<memory>", cxx11
226 : uses_allocator, "<memory>", cxx11
227 : uses_allocator_construction_args, "<memory>", cxx20
228 : uses_allocator_v, "<memory>", cxx17
229 : weak_ptr, "<memory>", cxx11
230 : # <memory_resource>
231 : pmr, "<memory_resource>", cxx17
232 : pmr::get_default_resource, "<memory_resource>", cxx17
233 : pmr::memory_resource, "<memory_resource>", cxx17
234 : pmr::monotonic_buffer_resource, "<memory_resource>", cxx17
235 : pmr::new_delete_resource, "<memory_resource>", cxx17
236 : pmr::polymorphic_allocator, "<memory_resource>", cxx17
237 : pmr::pool_options, "<memory_resource>", cxx17
238 : pmr::set_default_resource, "<memory_resource>", cxx17
239 : pmr::synchronized_pool_resource, "<memory_resource>", cxx17
240 : pmr::unsynchronized_pool_resource, "<memory_resource>", cxx17
241 : # <mutex>
242 : call_once, "<mutex>", cxx11
243 : lock, "<mutex>", cxx11
244 : lock_guard, "<mutex>", cxx11
245 : mutex, "<mutex>", cxx11
246 : once_flag, "<mutex>", cxx11
247 : recursive_mutex, "<mutex>", cxx11
248 : recursive_timed_mutex, "<mutex>", cxx11
249 : scoped_lock, "<mutex>", cxx17
250 : timed_mutex, "<mutex>", cxx11
251 : try_lock, "<mutex>", cxx11
252 : unique_lock, "<mutex>", cxx11
253 : # <new>
254 : bad_alloc, "<new>", cxx98
255 : hardware_constructive_interference_size, "<new>", cxx17
256 : hardware_destructive_interference_size, "<new>", cxx17
257 : launder, "<new>", cxx17
258 : nothrow, "<new>", cxx98
259 : nothrow_t, "<new>", cxx98
260 : # <numbers>
261 : numbers::e_v, "<numbers>", cxx20
262 : numbers::egamma_v, "<numbers>", cxx20
263 : numbers::inv_pi_v, "<numbers>", cxx20
264 : numbers::inv_sqrt3_v, "<numbers>", cxx20
265 : numbers::inv_sqrtpi_v, "<numbers>", cxx20
266 : numbers::ln10_v, "<numbers>", cxx20
267 : numbers::ln2_v, "<numbers>", cxx20
268 : numbers::log10e_v, "<numbers>", cxx20
269 : numbers::log2e_v, "<numbers>", cxx20
270 : numbers::phi_v, "<numbers>", cxx20
271 : numbers::pi_v, "<numbers>", cxx20
272 : numbers::sqrt2_v, "<numbers>", cxx20
273 : numbers::sqrt3_v, "<numbers>", cxx20
274 : # <optional>
275 : make_optional, "<optional>", cxx17
276 : nullopt, "<optional>", cxx17
277 : optional, "<optional>", cxx17
278 : # <ostream>
279 : emit_on_flush, "<ostream>", cxx20
280 : endl, "<ostream>", cxx98
281 : ends, "<ostream>", cxx98
282 : flush, "<ostream>", cxx98
283 : flush_emit, "<ostream>", cxx20
284 : noemit_on_flush, "<ostream>", cxx20
285 : ostream, "<ostream>", cxx98
286 : wostream, "<ostream>", cxx98
287 : # <queue>
288 : priority_queue, "<queue>", cxx98
289 : queue, "<queue>", cxx98
290 : # <ranges>
291 : ranges::enable_borrowed_range, "<ranges>", cxx20
292 : ranges::enable_view, "<ranges>", cxx20
293 : # <scoped_allocator>
294 : scoped_allocator_adaptor, "<scoped_allocator>", cxx11
295 : # <semaphore>
296 : binary_semaphore, "<semaphore>", cxx20
297 : counting_semaphore, "<semaphore>", cxx20
298 : # <set>
299 : multiset, "<set>", cxx98
300 : set, "<set>", cxx98
301 : # <shared_mutex>
302 : shared_lock, "<shared_mutex>", cxx14
303 : shared_mutex, "<shared_mutex>", cxx17
304 : shared_timed_mutex, "<shared_mutex>", cxx14
305 : # <source_location>
306 : source_location, "<source_location>", cxx20
307 : # <span>
308 : span, "<span>", cxx20
309 : # <spanstream>
310 : basic_ispanstream, "<spanstream>", cxx23
311 : basic_ospanstream, "<spanstream>", cxx23
312 : basic_spanbuf, "<spanstream>", cxx23
313 : basic_spanstream, "<spanstream>", cxx23
314 : ispanstream, "<spanstream>", cxx23
315 : ispanstream, "<spanstream>", cxx23
316 : ospanstream, "<spanstream>", cxx23
317 : spanbuf, "<spanstream>", cxx23
318 : spanstream, "<spanstream>", cxx23
319 : wispanstream, "<spanstream>", cxx23
320 : wospanstream, "<spanstream>", cxx23
321 : wspanbuf, "<spanstream>", cxx23
322 : # <sstream>
323 : basic_istringstream, "<sstream>", cxx98
324 : basic_ostringstream, "<sstream>", cxx98
325 : basic_stringbuf, "<sstream>", cxx98
326 : basic_stringstream, "<sstream>", cxx98
327 185 : istringstream, "<sstream>", cxx98
328 : istringstream, "<sstream>", cxx98
329 185 : ostringstream, "<sstream>", cxx98
330 : stringbuf, "<sstream>", cxx98
331 185 : stringstream, "<sstream>", cxx98
332 : wistringstream, "<sstream>", cxx98
333 185 : wostringstream, "<sstream>", cxx98
334 : wstringbuf, "<sstream>", cxx98
335 185 : # <stack>
336 : stack, "<stack>", cxx98
337 171 : # <stacktrace>
338 : stacktrace, "<stacktrace>", cxx23
339 171 : # <stdexcept>
340 163 : domain_error, "<stdexcept>", cxx98
341 : invalid_argument, "<stdexcept>", cxx98
342 14 : length_error, "<stdexcept>", cxx98
343 : logic_error, "<stdexcept>", cxx98
344 0 : out_of_range, "<stdexcept>", cxx98
345 0 : overflow_error, "<stdexcept>", cxx98
346 0 : range_error, "<stdexcept>", cxx98
347 : runtime_error, "<stdexcept>", cxx98
348 0 : underflow_error, "<stdexcept>", cxx98
349 : # <stop_token>
350 0 : stop_callback, "<stop_token>", cxx20
351 : stop_source, "<stop_token>", cxx20
352 0 : stop_token, "<stop_token>", cxx20
353 0 : # <streambuf>
354 0 : basic_streambuf, "<streambuf>", cxx98
355 : streambuf, "<streambuf>", cxx98
356 : wstreambuf, "<streambuf>", cxx98
357 : # <string>
358 : basic_string, "<string>", cxx98
359 : char_traits, "<string>", cxx98
360 : stod, "<string>", cxx11
361 : stof, "<string>", cxx11
362 : stoi, "<string>", cxx11
363 : stol, "<string>", cxx11
364 : stold, "<string>", cxx11
365 : stoll, "<string>", cxx11
366 : stoul, "<string>", cxx11
367 : stoull, "<string>", cxx11
368 : string, "<string>", cxx98
369 : to_string, "<string>", cxx17
370 : to_wstring, "<string>", cxx17
371 : u16string, "<string>", cxx11
372 : u32string, "<string>", cxx11
373 : u8string, "<string>", cxx20
374 : wstring, "<string>", cxx98
375 : # <string_view>
376 : basic_string_view, "<string_view>", cxx17
377 : string_view, "<string_view>", cxx17
378 : # <system_error>
379 : errc, "<system_error>", cxx11
380 : error_category, "<system_error>", cxx11
381 : error_code, "<system_error>", cxx11
382 : error_condition, "<system_error>", cxx11
383 : generic_category, "<system_error>", cxx11
384 : is_error_code_enum, "<system_error>", cxx11
385 : is_error_code_enum_v, "<system_error>", cxx17
386 : is_error_condition_enum, "<system_error>", cxx11
387 : is_error_condition_enum_v, "<system_error>", cxx17
388 : make_error_code, "<system_error>", cxx11
389 : make_error_condition, "<system_error>", cxx11
390 : system_category, "<system_error>", cxx11
391 : # <thread>
392 : jthread, "<thread>", cxx20
393 : this_thread, "<thread>", cxx11
394 : thread, "<thread>", cxx11
395 : # <tuple>
396 : apply, "<tuple>", cxx17
397 : forward_as_tuple, "<tuple>", cxx11
398 : make_from_tuple, "<tuple>", cxx17
399 : make_tuple, "<tuple>", cxx11
400 : tie, "<tuple>", cxx11
401 : tuple, "<tuple>", cxx11
402 : tuple_cat, "<tuple>", cxx11
403 : tuple_element, "<tuple>", cxx11
404 : tuple_element_t, "<tuple>", cxx14
405 : tuple_size, "<tuple>", cxx11
406 : tuple_size_v, "<tuple>", cxx17
407 : # <type_traits>
408 : conjunction, "<type_traits>", cxx17
409 : conjunction_v, "<type_traits>", cxx17
410 : disjunction, "<type_traits>", cxx17
411 : disjunction_v, "<type_traits>", cxx17
412 : enable_if, "<type_traits>", cxx11
413 : enable_if_t, "<type_traits>", cxx14
414 : invoke_result, "<type_traits>", cxx17
415 : invoke_result_t, "<type_traits>", cxx17
416 : negation, "<type_traits>", cxx17
417 : negation_v, "<type_traits>", cxx17
418 : remove_cvref, "<type_traits>", cxx20
419 : remove_cvref_t, "<type_traits>", cxx20
420 : type_identity, "<type_traits>", cxx20
421 : type_identity_t, "<type_traits>", cxx20
422 : void_t, "<type_traits>", cxx17
423 : # <typeindex>
424 : type_index, "<typeindex>", cxx11
425 : # <typeinfo>
426 : bad_cast, "<typeinfo>", cxx98
427 : bad_typeid, "<typeinfo>", cxx98
428 : # <unordered_map>
429 : unordered_map, "<unordered_map>", cxx11
430 : unordered_multimap, "<unordered_map>", cxx11
431 : # <unordered_set>
432 : unordered_multiset, "<unordered_set>", cxx11
433 : unordered_set, "<unordered_set>", cxx11
434 : # <utility>
435 : as_const, "<utility>", cxx17
436 : cmp_equal, "<utility>", cxx20
437 : cmp_greater, "<utility>", cxx20
438 : cmp_greater_equal, "<utility>", cxx20
439 : cmp_less, "<utility>", cxx20
440 : cmp_less_equal, "<utility>", cxx20
441 : cmp_not_equal, "<utility>", cxx20
442 : declval, "<utility>", cxx11
443 : exchange, "<utility>", cxx14
444 : forward, "<utility>", cxx11
445 : in_place, "<utility>", cxx17
446 : in_place_index, "<utility>", cxx17
447 : in_place_index_t, "<utility>", cxx17
448 : in_place_t, "<utility>", cxx17
449 : in_place_type, "<utility>", cxx17
450 : in_place_type_t, "<utility>", cxx17
451 : in_range, "<utility>", cxx20
452 : index_sequence, "<utility>", cxx14
453 : index_sequence_for, "<utility>", cxx14
454 : integer_sequence, "<utility>", cxx14
455 : make_index_sequence, "<utility>", cxx14
456 : make_integer_sequence, "<utility>", cxx14
457 : make_pair, "<utility>", cxx98
458 : move, "<utility>", cxx11
459 : move_if_noexcept, "<utility>", cxx11
460 : pair, "<utility>", cxx98
461 : piecewise_construct, "<utility>", cxx11
462 : piecewise_construct_t, "<utility>", cxx11
463 : to_underlying, "<utility>", cxx23
464 : unreachable, "<utility>", cxx23
465 : # <variant>
466 : bad_variant_access, "<variant>", cxx17
467 : holds_alternative, "<variant>", cxx17
468 : monostate, "<variant>", cxx17
469 : variant, "<variant>", cxx17
470 : variant_alternative, "<variant>", cxx17
471 : variant_alternative_t, "<variant>", cxx17
472 : variant_npos, "<variant>", cxx17
473 : variant_size, "<variant>", cxx17
474 : variant_size_v, "<variant>", cxx17
475 : visit, "<variant>", cxx17
476 : # <vector>
477 : vector, "<vector>", cxx98
|