blob: 758e74f77d6cc1f85c3bb5bd13060717d50dc099 [file] [log] [blame]
%language=C++
%define class-name std_name_hint_lookup
%struct-type
%{
/* This file is auto-generated by gen-cxxapi-file.py. */
/* Copyright (C) 2022-2023 Free Software Foundation, Inc.
This file is part of GCC.
GCC is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free
Software Foundation; either version 3, or (at your option) any later
version.
GCC is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
for more details.
You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
%}
struct std_name_hint
{
/* A name within "std::". */
const char *name;
/* The header name defining it within the C++ Standard Library
(with '<' and '>'). */
const char* header;
/* The dialect of C++ in which this was added. */
enum cxx_dialect min_dialect;
};
%%
# The standard-defined types, functions, and options in the std:: namespace
# as defined in the C++ language specification. The result is used in the
# get_std_name_hint functions.
# throws an exception.
#
# <any>
any, "<any>", cxx17
any_cast, "<any>", cxx17
make_any, "<any>", cxx17
# <array>
array, "<array>", cxx11
to_array, "<array>", cxx20
# <atomic>
atomic, "<atomic>", cxx11
atomic_ref, "<atomic>", cxx20
atomic_signed_lock_free, "<atomic>", cxx11
atomic_uintmax_t, "<atomic>", cxx20
atomic_unsigned_lock_free, "<atomic>", cxx11
# <bitset>
bitset, "<bitset>", cxx11
# <compare>
partial_ordering, "<compare>", cxx20
strong_equality, "<compare>", cxx20
strong_ordering, "<compare>", cxx20
weak_equality, "<compare>", cxx20
weak_ordering, "<compare>", cxx20
# <complex>
complex, "<complex>", cxx98
complex_literals, "<complex>", cxx14
# <condition_variable>
condition_variable, "<condition_variable>", cxx11
condition_variable_any, "<condition_variable>", cxx11
# <cstddef>
byte, "<cstddef>", cxx17
# <cstdint>
uint_fast16_t, "<cstdint>", cxx11
uint_fast32_t, "<cstdint>", cxx11
uint_fast64_t, "<cstdint>", cxx11
uint_fast8_t, "<cstdint>", cxx11
uint_least16_t, "<cstdint>", cxx11
uint_least32_t, "<cstdint>", cxx11
uint_least64_t, "<cstdint>", cxx11
uint_least8_t, "<cstdint>", cxx11
uintmax_t, "<cstdint>", cxx11
uintptr_t, "<cstdint>", cxx11
# <deque>
deque, "<deque>", cxx98
# <exception>
current_exception, "<exception>", cxx11
exception, "<exception>", cxx98
exception_ptr, "<exception>", cxx11
make_exception_ptr, "<exception>", cxx11
terminate, "<exception>", cxx98
uncaught_exceptions, "<exception>", cxx17
# <expected>
expected, "<expected>", cxx23
# <forward_list>
forward_list, "<forward_list>", cxx11
# <fstream>
basic_filebuf, "<fstream>", cxx98
basic_fstream, "<fstream>", cxx98
basic_ifstream, "<fstream>", cxx98
basic_ofstream, "<fstream>", cxx98
fstream, "<fstream>", cxx98
ifstream, "<fstream>", cxx98
ofstream, "<fstream>", cxx98
# <functional>
bind, "<functional>", cxx11
bind_front, "<functional>", cxx20
function, "<functional>", cxx11
hash, "<functional>", cxx11
invoke, "<functional>", cxx17
invoke_r, "<functional>", cxx23
mem_fn, "<functional>", cxx11
not_fn, "<functional>", cxx17
reference_wrapper, "<functional>", cxx11
unwrap_ref_decay, "<functional>", cxx20
unwrap_ref_decay_t, "<functional>", cxx20
unwrap_reference, "<functional>", cxx20
unwrap_reference_t, "<functional>", cxx20
# <future>
async, "<future>", cxx11
future, "<future>", cxx11
packaged_task, "<future>", cxx11
promise, "<future>", cxx11
# <iomanip>
get_money, "<iomanip>", cxx11
get_time, "<iomanip>", cxx11
put_money, "<iomanip>", cxx11
put_time, "<iomanip>", cxx11
quoted, "<iomanip>", cxx14
resetiosflags, "<iomanip>", cxx98
setbase, "<iomanip>", cxx98
setfill, "<iomanip>", cxx98
setiosflags, "<iomanip>", cxx98
setprecision, "<iomanip>", cxx98
setw, "<iomanip>", cxx98
# <ios>
boolalpha, "<ios>", cxx98
dec, "<ios>", cxx98
defaultfloat, "<ios>", cxx11
fixed, "<ios>", cxx98
hex, "<ios>", cxx98
hexfloat, "<ios>", cxx11
internal, "<ios>", cxx98
left, "<ios>", cxx98
noboolalpha, "<ios>", cxx98
noshowbase, "<ios>", cxx98
noshowpoint, "<ios>", cxx98
noshowpos, "<ios>", cxx98
noskipws, "<ios>", cxx98
nounitbuf, "<ios>", cxx98
nouppercase, "<ios>", cxx98
oct, "<ios>", cxx98
right, "<ios>", cxx98
scientific, "<ios>", cxx98
showbase, "<ios>", cxx98
showpoint, "<ios>", cxx98
showpos, "<ios>", cxx98
skipws, "<ios>", cxx98
unitbuf, "<ios>", cxx98
uppercase, "<ios>", cxx98
# <iostream>
cerr, "<iostream>", cxx98
cin, "<iostream>", cxx98
clog, "<iostream>", cxx98
cout, "<iostream>", cxx98
wcerr, "<iostream>", cxx98
wcin, "<iostream>", cxx98
wclog, "<iostream>", cxx98
wcout, "<iostream>", cxx98
# <istream>
istream, "<istream>", cxx98
ws, "<istream>", cxx98
# <iterator>
advance, "<iterator>", cxx98
back_inserter, "<iterator>", cxx98
begin, "<iterator>", cxx11
distance, "<iterator>", cxx98
end, "<iterator>", cxx11
front_inserter, "<iterator>", cxx98
inserter, "<iterator>", cxx98
istream_iterator, "<iterator>", cxx98
istreambuf_iterator, "<iterator>", cxx98
iterator_traits, "<iterator>", cxx98
move_iterator, "<iterator>", cxx11
next, "<iterator>", cxx11
ostream_iterator, "<iterator>", cxx98
ostreambuf_iterator, "<iterator>", cxx98
prev, "<iterator>", cxx11
reverse_iterator, "<iterator>", cxx98
# <list>
list, "<list>", cxx98
# <map>
map, "<map>", cxx98
multimap, "<map>", cxx98
# <memory>
addressof, "<memory>", cxx11
align, "<memory>", cxx11
allocate_shared, "<memory>", cxx11
allocate_shared_for_overwrite, "<memory>", cxx20
allocator, "<memory>", cxx98
allocator_arg, "<memory>", cxx11
allocator_arg_t, "<memory>", cxx11
allocator_traits, "<memory>", cxx11
assume_aligned, "<memory>", cxx20
bad_weak_ptr, "<memory>", cxx11
const_pointer_cast, "<memory>", cxx11
construct_at, "<memory>", cxx20
default_delete, "<memory>", cxx11
destroy, "<memory>", cxx20
destroy_at, "<memory>", cxx20
destroy_n, "<memory>", cxx20
dynamic_pointer_cast, "<memory>", cxx11
enable_shared_from_this, "<memory>", cxx11
get_deleter, "<memory>", cxx11
make_obj_using_allocator, "<memory>", cxx20
make_shared, "<memory>", cxx11
make_shared_for_overwrite, "<memory>", cxx20
make_unique, "<memory>", cxx14
make_unique_for_overwrite, "<memory>", cxx20
owner_less, "<memory>", cxx11
pointer_traits, "<memory>", cxx11
reinterpret_pointer_cast, "<memory>", cxx17
shared_ptr, "<memory>", cxx11
static_pointer_cast, "<memory>", cxx11
to_address, "<memory>", cxx11
uninitialized_construct_using_allocator, "<memory>", cxx20
unique_ptr, "<memory>", cxx11
uses_allocator, "<memory>", cxx11
uses_allocator_construction_args, "<memory>", cxx20
uses_allocator_v, "<memory>", cxx17
weak_ptr, "<memory>", cxx11
# <memory_resource>
pmr, "<memory_resource>", cxx17
pmr::get_default_resource, "<memory_resource>", cxx17
pmr::memory_resource, "<memory_resource>", cxx17
pmr::monotonic_buffer_resource, "<memory_resource>", cxx17
pmr::new_delete_resource, "<memory_resource>", cxx17
pmr::polymorphic_allocator, "<memory_resource>", cxx17
pmr::pool_options, "<memory_resource>", cxx17
pmr::set_default_resource, "<memory_resource>", cxx17
pmr::synchronized_pool_resource, "<memory_resource>", cxx17
pmr::unsynchronized_pool_resource, "<memory_resource>", cxx17
# <mutex>
call_once, "<mutex>", cxx11
lock, "<mutex>", cxx11
lock_guard, "<mutex>", cxx11
mutex, "<mutex>", cxx11
once_flag, "<mutex>", cxx11
recursive_mutex, "<mutex>", cxx11
recursive_timed_mutex, "<mutex>", cxx11
scoped_lock, "<mutex>", cxx17
timed_mutex, "<mutex>", cxx11
try_lock, "<mutex>", cxx11
unique_lock, "<mutex>", cxx11
# <new>
bad_alloc, "<new>", cxx98
hardware_constructive_interference_size, "<new>", cxx17
hardware_destructive_interference_size, "<new>", cxx17
launder, "<new>", cxx17
nothrow, "<new>", cxx98
nothrow_t, "<new>", cxx98
# <numbers>
numbers::e_v, "<numbers>", cxx20
numbers::egamma_v, "<numbers>", cxx20
numbers::inv_pi_v, "<numbers>", cxx20
numbers::inv_sqrt3_v, "<numbers>", cxx20
numbers::inv_sqrtpi_v, "<numbers>", cxx20
numbers::ln10_v, "<numbers>", cxx20
numbers::ln2_v, "<numbers>", cxx20
numbers::log10e_v, "<numbers>", cxx20
numbers::log2e_v, "<numbers>", cxx20
numbers::phi_v, "<numbers>", cxx20
numbers::pi_v, "<numbers>", cxx20
numbers::sqrt2_v, "<numbers>", cxx20
numbers::sqrt3_v, "<numbers>", cxx20
# <optional>
make_optional, "<optional>", cxx17
nullopt, "<optional>", cxx17
optional, "<optional>", cxx17
# <ostream>
emit_on_flush, "<ostream>", cxx20
endl, "<ostream>", cxx98
ends, "<ostream>", cxx98
flush, "<ostream>", cxx98
flush_emit, "<ostream>", cxx20
noemit_on_flush, "<ostream>", cxx20
ostream, "<ostream>", cxx98
wostream, "<ostream>", cxx98
# <queue>
priority_queue, "<queue>", cxx98
queue, "<queue>", cxx98
# <ranges>
ranges::enable_borrowed_range, "<ranges>", cxx20
ranges::enable_view, "<ranges>", cxx20
# <scoped_allocator>
scoped_allocator_adaptor, "<scoped_allocator>", cxx11
# <semaphore>
binary_semaphore, "<semaphore>", cxx20
counting_semaphore, "<semaphore>", cxx20
# <set>
multiset, "<set>", cxx98
set, "<set>", cxx98
# <shared_mutex>
shared_lock, "<shared_mutex>", cxx14
shared_mutex, "<shared_mutex>", cxx17
shared_timed_mutex, "<shared_mutex>", cxx14
# <source_location>
source_location, "<source_location>", cxx20
# <span>
span, "<span>", cxx20
# <spanstream>
basic_ispanstream, "<spanstream>", cxx23
basic_ospanstream, "<spanstream>", cxx23
basic_spanbuf, "<spanstream>", cxx23
basic_spanstream, "<spanstream>", cxx23
ispanstream, "<spanstream>", cxx23
ispanstream, "<spanstream>", cxx23
ospanstream, "<spanstream>", cxx23
spanbuf, "<spanstream>", cxx23
spanstream, "<spanstream>", cxx23
wispanstream, "<spanstream>", cxx23
wospanstream, "<spanstream>", cxx23
wspanbuf, "<spanstream>", cxx23
# <sstream>
basic_istringstream, "<sstream>", cxx98
basic_ostringstream, "<sstream>", cxx98
basic_stringbuf, "<sstream>", cxx98
basic_stringstream, "<sstream>", cxx98
istringstream, "<sstream>", cxx98
istringstream, "<sstream>", cxx98
ostringstream, "<sstream>", cxx98
stringbuf, "<sstream>", cxx98
stringstream, "<sstream>", cxx98
wistringstream, "<sstream>", cxx98
wostringstream, "<sstream>", cxx98
wstringbuf, "<sstream>", cxx98
# <stack>
stack, "<stack>", cxx98
# <stacktrace>
stacktrace, "<stacktrace>", cxx23
# <stdexcept>
domain_error, "<stdexcept>", cxx98
invalid_argument, "<stdexcept>", cxx98
length_error, "<stdexcept>", cxx98
logic_error, "<stdexcept>", cxx98
out_of_range, "<stdexcept>", cxx98
overflow_error, "<stdexcept>", cxx98
range_error, "<stdexcept>", cxx98
runtime_error, "<stdexcept>", cxx98
underflow_error, "<stdexcept>", cxx98
# <stop_token>
stop_callback, "<stop_token>", cxx20
stop_source, "<stop_token>", cxx20
stop_token, "<stop_token>", cxx20
# <streambuf>
basic_streambuf, "<streambuf>", cxx98
streambuf, "<streambuf>", cxx98
wstreambuf, "<streambuf>", cxx98
# <string>
basic_string, "<string>", cxx98
char_traits, "<string>", cxx98
stod, "<string>", cxx11
stof, "<string>", cxx11
stoi, "<string>", cxx11
stol, "<string>", cxx11
stold, "<string>", cxx11
stoll, "<string>", cxx11
stoul, "<string>", cxx11
stoull, "<string>", cxx11
string, "<string>", cxx98
to_string, "<string>", cxx17
to_wstring, "<string>", cxx17
u16string, "<string>", cxx11
u32string, "<string>", cxx11
u8string, "<string>", cxx20
wstring, "<string>", cxx98
# <string_view>
basic_string_view, "<string_view>", cxx17
string_view, "<string_view>", cxx17
# <system_error>
errc, "<system_error>", cxx11
error_category, "<system_error>", cxx11
error_code, "<system_error>", cxx11
error_condition, "<system_error>", cxx11
generic_category, "<system_error>", cxx11
is_error_code_enum, "<system_error>", cxx11
is_error_code_enum_v, "<system_error>", cxx17
is_error_condition_enum, "<system_error>", cxx11
is_error_condition_enum_v, "<system_error>", cxx17
make_error_code, "<system_error>", cxx11
make_error_condition, "<system_error>", cxx11
system_category, "<system_error>", cxx11
# <thread>
jthread, "<thread>", cxx20
this_thread, "<thread>", cxx11
thread, "<thread>", cxx11
# <tuple>
apply, "<tuple>", cxx17
forward_as_tuple, "<tuple>", cxx11
make_from_tuple, "<tuple>", cxx17
make_tuple, "<tuple>", cxx11
tie, "<tuple>", cxx11
tuple, "<tuple>", cxx11
tuple_cat, "<tuple>", cxx11
tuple_element, "<tuple>", cxx11
tuple_element_t, "<tuple>", cxx14
tuple_size, "<tuple>", cxx11
tuple_size_v, "<tuple>", cxx17
# <type_traits>
conjunction, "<type_traits>", cxx17
conjunction_v, "<type_traits>", cxx17
disjunction, "<type_traits>", cxx17
disjunction_v, "<type_traits>", cxx17
enable_if, "<type_traits>", cxx11
enable_if_t, "<type_traits>", cxx14
invoke_result, "<type_traits>", cxx17
invoke_result_t, "<type_traits>", cxx17
negation, "<type_traits>", cxx17
negation_v, "<type_traits>", cxx17
remove_cvref, "<type_traits>", cxx20
remove_cvref_t, "<type_traits>", cxx20
type_identity, "<type_traits>", cxx20
type_identity_t, "<type_traits>", cxx20
void_t, "<type_traits>", cxx17
# <typeindex>
type_index, "<typeindex>", cxx11
# <typeinfo>
bad_cast, "<typeinfo>", cxx98
bad_typeid, "<typeinfo>", cxx98
# <unordered_map>
unordered_map, "<unordered_map>", cxx11
unordered_multimap, "<unordered_map>", cxx11
# <unordered_set>
unordered_multiset, "<unordered_set>", cxx11
unordered_set, "<unordered_set>", cxx11
# <utility>
as_const, "<utility>", cxx17
cmp_equal, "<utility>", cxx20
cmp_greater, "<utility>", cxx20
cmp_greater_equal, "<utility>", cxx20
cmp_less, "<utility>", cxx20
cmp_less_equal, "<utility>", cxx20
cmp_not_equal, "<utility>", cxx20
declval, "<utility>", cxx11
exchange, "<utility>", cxx14
forward, "<utility>", cxx11
in_place, "<utility>", cxx17
in_place_index, "<utility>", cxx17
in_place_index_t, "<utility>", cxx17
in_place_t, "<utility>", cxx17
in_place_type, "<utility>", cxx17
in_place_type_t, "<utility>", cxx17
in_range, "<utility>", cxx20
index_sequence, "<utility>", cxx14
index_sequence_for, "<utility>", cxx14
integer_sequence, "<utility>", cxx14
make_index_sequence, "<utility>", cxx14
make_integer_sequence, "<utility>", cxx14
make_pair, "<utility>", cxx98
move, "<utility>", cxx11
move_if_noexcept, "<utility>", cxx11
pair, "<utility>", cxx98
piecewise_construct, "<utility>", cxx11
piecewise_construct_t, "<utility>", cxx11
to_underlying, "<utility>", cxx23
unreachable, "<utility>", cxx23
# <variant>
bad_variant_access, "<variant>", cxx17
holds_alternative, "<variant>", cxx17
monostate, "<variant>", cxx17
variant, "<variant>", cxx17
variant_alternative, "<variant>", cxx17
variant_alternative_t, "<variant>", cxx17
variant_npos, "<variant>", cxx17
variant_size, "<variant>", cxx17
variant_size_v, "<variant>", cxx17
visit, "<variant>", cxx17
# <vector>
vector, "<vector>", cxx98