854 lines · plain
1//===-- StdSpecialSymbolMap.inc ---------------------------------*- C++ -*-===//2//3// This is a hand-curated list for C++ symbols that cannot be parsed/extracted4// via the include-mapping tool (gen_std.py).5//6//===----------------------------------------------------------------------===//7 8// Symbols that can be provided by any of the headers, ordered by the header9// preference.10// cppreference mentions the <locale> header is an alternative for these symbols,11// but they are not per the standard.12SYMBOL(consume_header, std::, <codecvt>)13SYMBOL(generate_header, std::, <codecvt>)14SYMBOL(little_endian, std::, <codecvt>)15 16SYMBOL(compare_three_way, std::, <compare>)17SYMBOL(compare_three_way, std::, <functional>)18 19SYMBOL(mbstate_t, std::, <cwchar>)20SYMBOL(mbstate_t, std::, <cuchar>)21SYMBOL(size_t, std::, <cstddef>)22SYMBOL(size_t, std::, <cstdlib>)23SYMBOL(size_t, std::, <cstring>)24SYMBOL(size_t, std::, <cwchar>)25SYMBOL(size_t, std::, <cuchar>)26SYMBOL(size_t, std::, <ctime>)27SYMBOL(size_t, std::, <cstdio>)28SYMBOL(size_t, None, <cstddef>)29SYMBOL(size_t, None, <cstdlib>)30SYMBOL(size_t, None, <cstring>)31SYMBOL(size_t, None, <cwchar>)32SYMBOL(size_t, None, <cuchar>)33SYMBOL(size_t, None, <ctime>)34SYMBOL(size_t, None, <cstdio>)35SYMBOL(size_t, None, <stddef.h>)36SYMBOL(size_t, None, <stdlib.h>)37SYMBOL(size_t, None, <string.h>)38SYMBOL(size_t, None, <wchar.h>)39SYMBOL(size_t, None, <uchar.h>)40SYMBOL(size_t, None, <time.h>)41SYMBOL(size_t, None, <stdio.h>)42SYMBOL(unwrap_ref_decay, std::, <type_traits>)43SYMBOL(unwrap_ref_decay, std::, <functional>)44SYMBOL(unwrap_reference, std::, <type_traits>)45SYMBOL(unwrap_reference, std::, <functional>)46SYMBOL(unwrap_ref_decay_t, std::, <type_traits>)47SYMBOL(unwrap_ref_decay_t, std::, <functional>)48SYMBOL(wint_t, std::, <cwctype>)49SYMBOL(wint_t, std::, <cwchar>)50SYMBOL(swap, std::, <utility>)51SYMBOL(swap, std::, <algorithm>) // until C++1152// C++ [string.view.synop 23.3.2]: The function templates defined in53// [utility.swap] ... are available when <string_view> is included.54SYMBOL(swap, std::, <string_view>) // since C++1755// C++ [tuple.helper 22.4.7]: In addition to being available via inclusion of56// the <tuple> header, ... any of the headers <array>, <ranges>, or <utility>57// are included.58SYMBOL(tuple_size, std::, <tuple>)59SYMBOL(tuple_size, std::, <array>)60SYMBOL(tuple_size, std::, <ranges>)61SYMBOL(tuple_size, std::, <utility>)62SYMBOL(tuple_element, std::, <tuple>)63SYMBOL(tuple_element, std::, <array>)64SYMBOL(tuple_element, std::, <ranges>)65SYMBOL(tuple_element, std::, <utility>)66// C++ [iterator.range 25.7]: In addition to being available via inclusion of67// the <iterator> header, the function templates in [iterator.range] are68// available when any of the following headers are included: <array>, <deque>,69// <forward_list>, ... and <vector>.70SYMBOL(begin, std::, <iterator>)71SYMBOL(begin, std::, <array>)72SYMBOL(begin, std::, <deque>)73SYMBOL(begin, std::, <forward_list>)74SYMBOL(begin, std::, <list>)75SYMBOL(begin, std::, <map>)76SYMBOL(begin, std::, <regex>)77SYMBOL(begin, std::, <set>)78SYMBOL(begin, std::, <span>)79SYMBOL(begin, std::, <string>)80SYMBOL(begin, std::, <string_view>)81SYMBOL(begin, std::, <unordered_map>)82SYMBOL(begin, std::, <unordered_set>)83SYMBOL(begin, std::, <vector>)84SYMBOL(cbegin, std::, <iterator>)85SYMBOL(cbegin, std::, <array>)86SYMBOL(cbegin, std::, <deque>)87SYMBOL(cbegin, std::, <forward_list>)88SYMBOL(cbegin, std::, <list>)89SYMBOL(cbegin, std::, <map>)90SYMBOL(cbegin, std::, <regex>)91SYMBOL(cbegin, std::, <set>)92SYMBOL(cbegin, std::, <span>)93SYMBOL(cbegin, std::, <string>)94SYMBOL(cbegin, std::, <string_view>)95SYMBOL(cbegin, std::, <unordered_map>)96SYMBOL(cbegin, std::, <unordered_set>)97SYMBOL(cbegin, std::, <vector>)98SYMBOL(cend, std::, <iterator>)99SYMBOL(cend, std::, <array>)100SYMBOL(cend, std::, <deque>)101SYMBOL(cend, std::, <forward_list>)102SYMBOL(cend, std::, <list>)103SYMBOL(cend, std::, <map>)104SYMBOL(cend, std::, <regex>)105SYMBOL(cend, std::, <set>)106SYMBOL(cend, std::, <span>)107SYMBOL(cend, std::, <string>)108SYMBOL(cend, std::, <string_view>)109SYMBOL(cend, std::, <unordered_map>)110SYMBOL(cend, std::, <unordered_set>)111SYMBOL(cend, std::, <vector>)112SYMBOL(crbegin, std::, <iterator>)113SYMBOL(crbegin, std::, <array>)114SYMBOL(crbegin, std::, <deque>)115SYMBOL(crbegin, std::, <forward_list>)116SYMBOL(crbegin, std::, <list>)117SYMBOL(crbegin, std::, <map>)118SYMBOL(crbegin, std::, <regex>)119SYMBOL(crbegin, std::, <set>)120SYMBOL(crbegin, std::, <span>)121SYMBOL(crbegin, std::, <string>)122SYMBOL(crbegin, std::, <string_view>)123SYMBOL(crbegin, std::, <unordered_map>)124SYMBOL(crbegin, std::, <unordered_set>)125SYMBOL(crbegin, std::, <vector>)126SYMBOL(crend, std::, <iterator>)127SYMBOL(crend, std::, <array>)128SYMBOL(crend, std::, <deque>)129SYMBOL(crend, std::, <forward_list>)130SYMBOL(crend, std::, <list>)131SYMBOL(crend, std::, <map>)132SYMBOL(crend, std::, <regex>)133SYMBOL(crend, std::, <set>)134SYMBOL(crend, std::, <span>)135SYMBOL(crend, std::, <string>)136SYMBOL(crend, std::, <string_view>)137SYMBOL(crend, std::, <unordered_map>)138SYMBOL(crend, std::, <unordered_set>)139SYMBOL(crend, std::, <vector>)140SYMBOL(data, std::, <iterator>)141SYMBOL(data, std::, <array>)142SYMBOL(data, std::, <deque>)143SYMBOL(data, std::, <forward_list>)144SYMBOL(data, std::, <list>)145SYMBOL(data, std::, <map>)146SYMBOL(data, std::, <regex>)147SYMBOL(data, std::, <set>)148SYMBOL(data, std::, <span>)149SYMBOL(data, std::, <string>)150SYMBOL(data, std::, <string_view>)151SYMBOL(data, std::, <unordered_map>)152SYMBOL(data, std::, <unordered_set>)153SYMBOL(data, std::, <vector>)154SYMBOL(empty, std::, <iterator>)155SYMBOL(empty, std::, <array>)156SYMBOL(empty, std::, <deque>)157SYMBOL(empty, std::, <forward_list>)158SYMBOL(empty, std::, <list>)159SYMBOL(empty, std::, <map>)160SYMBOL(empty, std::, <regex>)161SYMBOL(empty, std::, <set>)162SYMBOL(empty, std::, <span>)163SYMBOL(empty, std::, <string>)164SYMBOL(empty, std::, <string_view>)165SYMBOL(empty, std::, <unordered_map>)166SYMBOL(empty, std::, <unordered_set>)167SYMBOL(empty, std::, <vector>)168SYMBOL(end, std::, <iterator>)169SYMBOL(end, std::, <array>)170SYMBOL(end, std::, <deque>)171SYMBOL(end, std::, <forward_list>)172SYMBOL(end, std::, <list>)173SYMBOL(end, std::, <map>)174SYMBOL(end, std::, <regex>)175SYMBOL(end, std::, <set>)176SYMBOL(end, std::, <span>)177SYMBOL(end, std::, <string>)178SYMBOL(end, std::, <string_view>)179SYMBOL(end, std::, <unordered_map>)180SYMBOL(end, std::, <unordered_set>)181SYMBOL(end, std::, <vector>)182SYMBOL(rbegin, std::, <iterator>)183SYMBOL(rbegin, std::, <array>)184SYMBOL(rbegin, std::, <deque>)185SYMBOL(rbegin, std::, <forward_list>)186SYMBOL(rbegin, std::, <list>)187SYMBOL(rbegin, std::, <map>)188SYMBOL(rbegin, std::, <regex>)189SYMBOL(rbegin, std::, <set>)190SYMBOL(rbegin, std::, <span>)191SYMBOL(rbegin, std::, <string>)192SYMBOL(rbegin, std::, <string_view>)193SYMBOL(rbegin, std::, <unordered_map>)194SYMBOL(rbegin, std::, <unordered_set>)195SYMBOL(rbegin, std::, <vector>)196SYMBOL(rend, std::, <iterator>)197SYMBOL(rend, std::, <array>)198SYMBOL(rend, std::, <deque>)199SYMBOL(rend, std::, <forward_list>)200SYMBOL(rend, std::, <list>)201SYMBOL(rend, std::, <map>)202SYMBOL(rend, std::, <regex>)203SYMBOL(rend, std::, <set>)204SYMBOL(rend, std::, <span>)205SYMBOL(rend, std::, <string>)206SYMBOL(rend, std::, <string_view>)207SYMBOL(rend, std::, <unordered_map>)208SYMBOL(rend, std::, <unordered_set>)209SYMBOL(rend, std::, <vector>)210SYMBOL(size, std::, <iterator>)211SYMBOL(size, std::, <array>)212SYMBOL(size, std::, <deque>)213SYMBOL(size, std::, <forward_list>)214SYMBOL(size, std::, <list>)215SYMBOL(size, std::, <map>)216SYMBOL(size, std::, <regex>)217SYMBOL(size, std::, <set>)218SYMBOL(size, std::, <span>)219SYMBOL(size, std::, <string>)220SYMBOL(size, std::, <string_view>)221SYMBOL(size, std::, <unordered_map>)222SYMBOL(size, std::, <unordered_set>)223SYMBOL(size, std::, <vector>)224SYMBOL(ssize, std::, <iterator>)225SYMBOL(ssize, std::, <array>)226SYMBOL(ssize, std::, <deque>)227SYMBOL(ssize, std::, <forward_list>)228SYMBOL(ssize, std::, <list>)229SYMBOL(ssize, std::, <map>)230SYMBOL(ssize, std::, <regex>)231SYMBOL(ssize, std::, <set>)232SYMBOL(ssize, std::, <span>)233SYMBOL(ssize, std::, <string>)234SYMBOL(ssize, std::, <string_view>)235SYMBOL(ssize, std::, <unordered_map>)236SYMBOL(ssize, std::, <unordered_set>)237SYMBOL(ssize, std::, <vector>)238// C++ [range.access.general]: ... the customization point objects239// in [range.access] are available when the header <iterator> is included.240// (see https://eel.is/c++draft/range.access#general)241SYMBOL(begin, std::ranges::, <ranges>)242SYMBOL(begin, std::ranges::, <iterator>)243SYMBOL(end, std::ranges::, <ranges>)244SYMBOL(end, std::ranges::, <iterator>)245SYMBOL(cbegin, std::ranges::, <ranges>)246SYMBOL(cbegin, std::ranges::, <iterator>)247SYMBOL(cend, std::ranges::, <ranges>)248SYMBOL(cend, std::ranges::, <iterator>)249SYMBOL(rbegin, std::ranges::, <ranges>)250SYMBOL(rbegin, std::ranges::, <iterator>)251SYMBOL(rend, std::ranges::, <ranges>)252SYMBOL(rend, std::ranges::, <iterator>)253SYMBOL(crbegin, std::ranges::, <ranges>)254SYMBOL(crbegin, std::ranges::, <iterator>)255SYMBOL(crend, std::ranges::, <ranges>)256SYMBOL(crend, std::ranges::, <iterator>)257SYMBOL(size, std::ranges::, <ranges>)258SYMBOL(size, std::ranges::, <iterator>)259SYMBOL(ssize, std::ranges::, <ranges>)260SYMBOL(ssize, std::ranges::, <iterator>)261SYMBOL(empty, std::ranges::, <ranges>)262SYMBOL(empty, std::ranges::, <iterator>)263SYMBOL(data, std::ranges::, <ranges>)264SYMBOL(data, std::ranges::, <iterator>)265SYMBOL(cdata, std::ranges::, <ranges>)266SYMBOL(cdata, std::ranges::, <iterator>)267// https://eel.is/c++draft/tuple.general#2:268// In addition to being available via inclusion of the <tuple> header,269// ignore ... is available when <utility> ... is included.270SYMBOL(ignore, std::, <tuple>)271SYMBOL(ignore, std::, <utility>)272 273// Ignore specializations274SYMBOL(hash, std::, <functional>)275 276// Add headers for generic integer-type abs.277// Ignore other variants (std::complex, std::valarray, std::intmax_t)278SYMBOL(abs, std::, <cstdlib>)279SYMBOL(abs, std::, <cmath>)280SYMBOL(abs, None, <cstdlib>)281SYMBOL(abs, None, <stdlib.h>)282SYMBOL(abs, None, <cmath>)283SYMBOL(abs, None, <math.h>)284 285// Only add headers for the generic atomic template.286// Ignore variants (std::weak_ptr, std::shared_ptr).287SYMBOL(atomic, std::, <atomic>)288// atomic_* family symbols. <stdatomic.h> is for C compatibility.289SYMBOL(atomic_bool, std::, <atomic>)290SYMBOL(atomic_bool, None, <atomic>)291SYMBOL(atomic_bool, None, <stdatomic.h>)292SYMBOL(atomic_char, std::, <atomic>)293SYMBOL(atomic_char, None, <atomic>)294SYMBOL(atomic_char, None, <stdatomic.h>)295SYMBOL(atomic_char16_t, std::, <atomic>)296SYMBOL(atomic_char16_t, None, <atomic>)297SYMBOL(atomic_char16_t, None, <stdatomic.h>)298SYMBOL(atomic_char32_t, std::, <atomic>)299SYMBOL(atomic_char32_t, None, <atomic>)300SYMBOL(atomic_char32_t, None, <stdatomic.h>)301SYMBOL(atomic_char8_t, std::, <atomic>)302SYMBOL(atomic_char8_t, None, <atomic>)303SYMBOL(atomic_char8_t, None, <stdatomic.h>)304SYMBOL(atomic_int, std::, <atomic>)305SYMBOL(atomic_int, None, <atomic>)306SYMBOL(atomic_int, None, <stdatomic.h>)307SYMBOL(atomic_int16_t, std::, <atomic>)308SYMBOL(atomic_int16_t, None, <atomic>)309SYMBOL(atomic_int16_t, None, <stdatomic.h>)310SYMBOL(atomic_int32_t, std::, <atomic>)311SYMBOL(atomic_int32_t, None, <atomic>)312SYMBOL(atomic_int32_t, None, <stdatomic.h>)313SYMBOL(atomic_int64_t, std::, <atomic>)314SYMBOL(atomic_int64_t, None, <atomic>)315SYMBOL(atomic_int64_t, None, <stdatomic.h>)316SYMBOL(atomic_int8_t, std::, <atomic>)317SYMBOL(atomic_int8_t, None, <atomic>)318SYMBOL(atomic_int8_t, None, <stdatomic.h>)319SYMBOL(atomic_int_fast16_t, std::, <atomic>)320SYMBOL(atomic_int_fast16_t, None, <atomic>)321SYMBOL(atomic_int_fast16_t, None, <stdatomic.h>)322SYMBOL(atomic_int_fast32_t, std::, <atomic>)323SYMBOL(atomic_int_fast32_t, None, <atomic>)324SYMBOL(atomic_int_fast32_t, None, <stdatomic.h>)325SYMBOL(atomic_int_fast64_t, std::, <atomic>)326SYMBOL(atomic_int_fast64_t, None, <atomic>)327SYMBOL(atomic_int_fast64_t, None, <stdatomic.h>)328SYMBOL(atomic_int_fast8_t, std::, <atomic>)329SYMBOL(atomic_int_fast8_t, None, <atomic>)330SYMBOL(atomic_int_fast8_t, None, <stdatomic.h>)331SYMBOL(atomic_int_least16_t, std::, <atomic>)332SYMBOL(atomic_int_least16_t, None, <atomic>)333SYMBOL(atomic_int_least16_t, None, <stdatomic.h>)334SYMBOL(atomic_int_least32_t, std::, <atomic>)335SYMBOL(atomic_int_least32_t, None, <atomic>)336SYMBOL(atomic_int_least32_t, None, <stdatomic.h>)337SYMBOL(atomic_int_least64_t, std::, <atomic>)338SYMBOL(atomic_int_least64_t, None, <atomic>)339SYMBOL(atomic_int_least64_t, None, <stdatomic.h>)340SYMBOL(atomic_int_least8_t, std::, <atomic>)341SYMBOL(atomic_int_least8_t, None, <atomic>)342SYMBOL(atomic_int_least8_t, None, <stdatomic.h>)343SYMBOL(atomic_intmax_t, std::, <atomic>)344SYMBOL(atomic_intmax_t, None, <atomic>)345SYMBOL(atomic_intmax_t, None, <stdatomic.h>)346SYMBOL(atomic_intptr_t, std::, <atomic>)347SYMBOL(atomic_intptr_t, None, <atomic>)348SYMBOL(atomic_intptr_t, None, <stdatomic.h>)349SYMBOL(atomic_llong, std::, <atomic>)350SYMBOL(atomic_llong, None, <atomic>)351SYMBOL(atomic_llong, None, <stdatomic.h>)352SYMBOL(atomic_long, std::, <atomic>)353SYMBOL(atomic_long, None, <atomic>)354SYMBOL(atomic_long, None, <stdatomic.h>)355SYMBOL(atomic_ptrdiff_t, std::, <atomic>)356SYMBOL(atomic_ptrdiff_t, None, <atomic>)357SYMBOL(atomic_ptrdiff_t, None, <stdatomic.h>)358SYMBOL(atomic_schar, std::, <atomic>)359SYMBOL(atomic_schar, None, <atomic>)360SYMBOL(atomic_schar, None, <stdatomic.h>)361SYMBOL(atomic_short, std::, <atomic>)362SYMBOL(atomic_short, None, <atomic>)363SYMBOL(atomic_short, None, <stdatomic.h>)364SYMBOL(atomic_signed_lock_free, std::, <atomic>)365SYMBOL(atomic_signed_lock_free, None, <atomic>)366SYMBOL(atomic_signed_lock_free, None, <stdatomic.h>)367SYMBOL(atomic_size_t, std::, <atomic>)368SYMBOL(atomic_size_t, None, <atomic>)369SYMBOL(atomic_size_t, None, <stdatomic.h>)370SYMBOL(atomic_uchar, std::, <atomic>)371SYMBOL(atomic_uchar, None, <atomic>)372SYMBOL(atomic_uchar, None, <stdatomic.h>)373SYMBOL(atomic_uint, std::, <atomic>)374SYMBOL(atomic_uint, None, <atomic>)375SYMBOL(atomic_uint, None, <stdatomic.h>)376SYMBOL(atomic_uint16_t, std::, <atomic>)377SYMBOL(atomic_uint16_t, None, <atomic>)378SYMBOL(atomic_uint16_t, None, <stdatomic.h>)379SYMBOL(atomic_uint32_t, std::, <atomic>)380SYMBOL(atomic_uint32_t, None, <atomic>)381SYMBOL(atomic_uint32_t, None, <stdatomic.h>)382SYMBOL(atomic_uint64_t, std::, <atomic>)383SYMBOL(atomic_uint64_t, None, <atomic>)384SYMBOL(atomic_uint64_t, None, <stdatomic.h>)385SYMBOL(atomic_uint8_t, std::, <atomic>)386SYMBOL(atomic_uint8_t, None, <atomic>)387SYMBOL(atomic_uint8_t, None, <stdatomic.h>)388SYMBOL(atomic_uint_fast16_t, std::, <atomic>)389SYMBOL(atomic_uint_fast16_t, None, <atomic>)390SYMBOL(atomic_uint_fast16_t, None, <stdatomic.h>)391SYMBOL(atomic_uint_fast32_t, std::, <atomic>)392SYMBOL(atomic_uint_fast32_t, None, <atomic>)393SYMBOL(atomic_uint_fast32_t, None, <stdatomic.h>)394SYMBOL(atomic_uint_fast64_t, std::, <atomic>)395SYMBOL(atomic_uint_fast64_t, None, <atomic>)396SYMBOL(atomic_uint_fast64_t, None, <stdatomic.h>)397SYMBOL(atomic_uint_fast8_t, std::, <atomic>)398SYMBOL(atomic_uint_fast8_t, None, <atomic>)399SYMBOL(atomic_uint_fast8_t, None, <stdatomic.h>)400SYMBOL(atomic_uint_least16_t, std::, <atomic>)401SYMBOL(atomic_uint_least16_t, None, <atomic>)402SYMBOL(atomic_uint_least16_t, None, <stdatomic.h>)403SYMBOL(atomic_uint_least32_t, std::, <atomic>)404SYMBOL(atomic_uint_least32_t, None, <atomic>)405SYMBOL(atomic_uint_least32_t, None, <stdatomic.h>)406SYMBOL(atomic_uint_least64_t, std::, <atomic>)407SYMBOL(atomic_uint_least64_t, None, <atomic>)408SYMBOL(atomic_uint_least64_t, None, <stdatomic.h>)409SYMBOL(atomic_uint_least8_t, std::, <atomic>)410SYMBOL(atomic_uint_least8_t, None, <atomic>)411SYMBOL(atomic_uint_least8_t, None, <stdatomic.h>)412SYMBOL(atomic_uintmax_t, std::, <atomic>)413SYMBOL(atomic_uintmax_t, None, <atomic>)414SYMBOL(atomic_uintmax_t, None, <stdatomic.h>)415SYMBOL(atomic_uintptr_t, std::, <atomic>)416SYMBOL(atomic_uintptr_t, None, <atomic>)417SYMBOL(atomic_uintptr_t, None, <stdatomic.h>)418SYMBOL(atomic_ullong, std::, <atomic>)419SYMBOL(atomic_ullong, None, <atomic>)420SYMBOL(atomic_ullong, None, <stdatomic.h>)421SYMBOL(atomic_ulong, std::, <atomic>)422SYMBOL(atomic_ulong, None, <atomic>)423SYMBOL(atomic_ulong, None, <stdatomic.h>)424SYMBOL(atomic_unsigned_lock_free, std::, <atomic>)425SYMBOL(atomic_unsigned_lock_free, None, <atomic>)426SYMBOL(atomic_unsigned_lock_free, None, <stdatomic.h>)427SYMBOL(atomic_ushort, std::, <atomic>)428SYMBOL(atomic_ushort, None, <atomic>)429SYMBOL(atomic_ushort, None, <stdatomic.h>)430SYMBOL(atomic_wchar_t, std::, <atomic>)431SYMBOL(atomic_wchar_t, None, <atomic>)432SYMBOL(atomic_wchar_t, None, <stdatomic.h>)433 434// std::get has a few variants for different types (tuple, array, pair etc)435// which is tricky to disambiguate without type information.436// Don't set any header for it, as it comes with the type header.437SYMBOL(get, std::, /*no headers*/)438// Similarly make_error_{code,condition} also have different overloads (errc,439// io_errc, future_errc) and each of them are provided by relevant headers440// providing the type.441SYMBOL(make_error_code, std::, /*no headers*/)442SYMBOL(make_error_condition, std::, /*no headers*/)443// Similar to std::get, has variants for multiple containers444// (vector, deque, list, etc.)445SYMBOL(erase, std::, /*no headers*/)446SYMBOL(erase_if, std::, /*no headers*/)447 448// Symbols missing from the generated symbol map as reported by users.449// Remove when the generator starts producing them.450SYMBOL(div, std::, <cstdlib>)451SYMBOL(abort, std::, <cstdlib>)452 453SYMBOL(binary_search, std::ranges::, <algorithm>)454SYMBOL(equal_range, std::ranges::, <algorithm>)455SYMBOL(lower_bound, std::ranges::, <algorithm>)456SYMBOL(upper_bound, std::ranges::, <algorithm>)457 458SYMBOL(unwrap_reference_t, std::, <type_traits>)459 460// These are C symbols that are not under std namespace.461SYMBOL(localtime_r, None, <ctime>)462SYMBOL(localtime_r, None, <time.h>)463SYMBOL(localtime_s, None, <ctime>)464SYMBOL(localtime_s, None, <time.h>)465SYMBOL(gmtime_r, None, <ctime>)466SYMBOL(gmtime_r, None, <time.h>)467SYMBOL(gmtime_s, None, <ctime>)468SYMBOL(gmtime_s, None, <time.h>)469 470// The std::placeholder symbols (_1, ..., _N) are listed in the cppreference471// placeholder.html, but the index only contains a single entry with "_1, _2, ..., _N"472// text, which are not handled by the script.473// N is an implementation-defined number (10 for libc++; 29 for libstdc++).474SYMBOL(_1, std::placeholders::, <functional>)475SYMBOL(_2, std::placeholders::, <functional>)476SYMBOL(_3, std::placeholders::, <functional>)477SYMBOL(_4, std::placeholders::, <functional>)478SYMBOL(_5, std::placeholders::, <functional>)479SYMBOL(_6, std::placeholders::, <functional>)480SYMBOL(_7, std::placeholders::, <functional>)481SYMBOL(_8, std::placeholders::, <functional>)482SYMBOL(_9, std::placeholders::, <functional>)483SYMBOL(_10, std::placeholders::, <functional>)484SYMBOL(_11, std::placeholders::, <functional>)485SYMBOL(_12, std::placeholders::, <functional>)486SYMBOL(_13, std::placeholders::, <functional>)487SYMBOL(_14, std::placeholders::, <functional>)488SYMBOL(_15, std::placeholders::, <functional>)489SYMBOL(_16, std::placeholders::, <functional>)490SYMBOL(_17, std::placeholders::, <functional>)491SYMBOL(_18, std::placeholders::, <functional>)492SYMBOL(_19, std::placeholders::, <functional>)493SYMBOL(_20, std::placeholders::, <functional>)494SYMBOL(_21, std::placeholders::, <functional>)495SYMBOL(_22, std::placeholders::, <functional>)496SYMBOL(_23, std::placeholders::, <functional>)497SYMBOL(_24, std::placeholders::, <functional>)498SYMBOL(_25, std::placeholders::, <functional>)499SYMBOL(_26, std::placeholders::, <functional>)500SYMBOL(_27, std::placeholders::, <functional>)501SYMBOL(_28, std::placeholders::, <functional>)502SYMBOL(_29, std::placeholders::, <functional>)503 504// Macros505SYMBOL(NULL, None, <cstddef>)506SYMBOL(NULL, None, <stddef.h>)507SYMBOL(NULL, None, <cstdlib>)508SYMBOL(NULL, None, <stdlib.h>)509SYMBOL(NULL, None, <cstring>)510SYMBOL(NULL, None, <string.h>)511SYMBOL(NULL, None, <cwchar>)512SYMBOL(NULL, None, <wchar.h>)513SYMBOL(NULL, None, <ctime>)514SYMBOL(NULL, None, <time.h>)515SYMBOL(NULL, None, <clocale>)516SYMBOL(NULL, None, <locale.h>)517SYMBOL(NULL, None, <cstdio>)518SYMBOL(NULL, None, <stdio.h>)519 520// Theres are macros that not spelled out in page linked from the index.521// Extracted from https://en.cppreference.com/w/cpp/header/cinttypes522SYMBOL(PRId8, None, <cinttypes>)523SYMBOL(PRId8, None, <inttypes.h>)524SYMBOL(PRId16, None, <cinttypes>)525SYMBOL(PRId16, None, <inttypes.h>)526SYMBOL(PRId32, None, <cinttypes>)527SYMBOL(PRId32, None, <inttypes.h>)528SYMBOL(PRId64, None, <cinttypes>)529SYMBOL(PRId64, None, <inttypes.h>)530SYMBOL(PRIdLEAST8, None, <cinttypes>)531SYMBOL(PRIdLEAST8, None, <inttypes.h>)532SYMBOL(PRIdLEAST16, None, <cinttypes>)533SYMBOL(PRIdLEAST16, None, <inttypes.h>)534SYMBOL(PRIdLEAST32, None, <cinttypes>)535SYMBOL(PRIdLEAST32, None, <inttypes.h>)536SYMBOL(PRIdLEAST64, None, <cinttypes>)537SYMBOL(PRIdLEAST64, None, <inttypes.h>)538SYMBOL(PRIdFAST8, None, <cinttypes>)539SYMBOL(PRIdFAST8, None, <inttypes.h>)540SYMBOL(PRIdFAST16, None, <cinttypes>)541SYMBOL(PRIdFAST16, None, <inttypes.h>)542SYMBOL(PRIdFAST32, None, <cinttypes>)543SYMBOL(PRIdFAST32, None, <inttypes.h>)544SYMBOL(PRIdFAST64, None, <cinttypes>)545SYMBOL(PRIdFAST64, None, <inttypes.h>)546SYMBOL(PRIdMAX, None, <cinttypes>)547SYMBOL(PRIdMAX, None, <inttypes.h>)548SYMBOL(PRIdPTR, None, <cinttypes>)549SYMBOL(PRIdPTR, None, <inttypes.h>)550SYMBOL(PRIi8, None, <cinttypes>)551SYMBOL(PRIi8, None, <inttypes.h>)552SYMBOL(PRIi16, None, <cinttypes>)553SYMBOL(PRIi16, None, <inttypes.h>)554SYMBOL(PRIi32, None, <cinttypes>)555SYMBOL(PRIi32, None, <inttypes.h>)556SYMBOL(PRIi64, None, <cinttypes>)557SYMBOL(PRIi64, None, <inttypes.h>)558SYMBOL(PRIiLEAST8, None, <cinttypes>)559SYMBOL(PRIiLEAST8, None, <inttypes.h>)560SYMBOL(PRIiLEAST16, None, <cinttypes>)561SYMBOL(PRIiLEAST16, None, <inttypes.h>)562SYMBOL(PRIiLEAST32, None, <cinttypes>)563SYMBOL(PRIiLEAST32, None, <inttypes.h>)564SYMBOL(PRIiLEAST64, None, <cinttypes>)565SYMBOL(PRIiLEAST64, None, <inttypes.h>)566SYMBOL(PRIiFAST8, None, <cinttypes>)567SYMBOL(PRIiFAST8, None, <inttypes.h>)568SYMBOL(PRIiFAST16, None, <cinttypes>)569SYMBOL(PRIiFAST16, None, <inttypes.h>)570SYMBOL(PRIiFAST32, None, <cinttypes>)571SYMBOL(PRIiFAST32, None, <inttypes.h>)572SYMBOL(PRIiFAST64, None, <cinttypes>)573SYMBOL(PRIiFAST64, None, <inttypes.h>)574SYMBOL(PRIiMAX, None, <cinttypes>)575SYMBOL(PRIiMAX, None, <inttypes.h>)576SYMBOL(PRIiPTR, None, <cinttypes>)577SYMBOL(PRIiPTR, None, <inttypes.h>)578SYMBOL(PRIu8, None, <cinttypes>)579SYMBOL(PRIu8, None, <inttypes.h>)580SYMBOL(PRIu16, None, <cinttypes>)581SYMBOL(PRIu16, None, <inttypes.h>)582SYMBOL(PRIu32, None, <cinttypes>)583SYMBOL(PRIu32, None, <inttypes.h>)584SYMBOL(PRIu64, None, <cinttypes>)585SYMBOL(PRIu64, None, <inttypes.h>)586SYMBOL(PRIuLEAST8, None, <cinttypes>)587SYMBOL(PRIuLEAST8, None, <inttypes.h>)588SYMBOL(PRIuLEAST16, None, <cinttypes>)589SYMBOL(PRIuLEAST16, None, <inttypes.h>)590SYMBOL(PRIuLEAST32, None, <cinttypes>)591SYMBOL(PRIuLEAST32, None, <inttypes.h>)592SYMBOL(PRIuLEAST64, None, <cinttypes>)593SYMBOL(PRIuLEAST64, None, <inttypes.h>)594SYMBOL(PRIuFAST8, None, <cinttypes>)595SYMBOL(PRIuFAST8, None, <inttypes.h>)596SYMBOL(PRIuFAST16, None, <cinttypes>)597SYMBOL(PRIuFAST16, None, <inttypes.h>)598SYMBOL(PRIuFAST32, None, <cinttypes>)599SYMBOL(PRIuFAST32, None, <inttypes.h>)600SYMBOL(PRIuFAST64, None, <cinttypes>)601SYMBOL(PRIuFAST64, None, <inttypes.h>)602SYMBOL(PRIuMAX, None, <cinttypes>)603SYMBOL(PRIuMAX, None, <inttypes.h>)604SYMBOL(PRIuPTR, None, <cinttypes>)605SYMBOL(PRIuPTR, None, <inttypes.h>)606SYMBOL(PRIo8, None, <cinttypes>)607SYMBOL(PRIo8, None, <inttypes.h>)608SYMBOL(PRIo16, None, <cinttypes>)609SYMBOL(PRIo16, None, <inttypes.h>)610SYMBOL(PRIo32, None, <cinttypes>)611SYMBOL(PRIo32, None, <inttypes.h>)612SYMBOL(PRIo64, None, <cinttypes>)613SYMBOL(PRIo64, None, <inttypes.h>)614SYMBOL(PRIoLEAST8, None, <cinttypes>)615SYMBOL(PRIoLEAST8, None, <inttypes.h>)616SYMBOL(PRIoLEAST16, None, <cinttypes>)617SYMBOL(PRIoLEAST16, None, <inttypes.h>)618SYMBOL(PRIoLEAST32, None, <cinttypes>)619SYMBOL(PRIoLEAST32, None, <inttypes.h>)620SYMBOL(PRIoLEAST64, None, <cinttypes>)621SYMBOL(PRIoLEAST64, None, <inttypes.h>)622SYMBOL(PRIoFAST8, None, <cinttypes>)623SYMBOL(PRIoFAST8, None, <inttypes.h>)624SYMBOL(PRIoFAST16, None, <cinttypes>)625SYMBOL(PRIoFAST16, None, <inttypes.h>)626SYMBOL(PRIoFAST32, None, <cinttypes>)627SYMBOL(PRIoFAST32, None, <inttypes.h>)628SYMBOL(PRIoFAST64, None, <cinttypes>)629SYMBOL(PRIoFAST64, None, <inttypes.h>)630SYMBOL(PRIoMAX, None, <cinttypes>)631SYMBOL(PRIoMAX, None, <inttypes.h>)632SYMBOL(PRIoPTR, None, <cinttypes>)633SYMBOL(PRIoPTR, None, <inttypes.h>)634SYMBOL(PRIx8, None, <cinttypes>)635SYMBOL(PRIx8, None, <inttypes.h>)636SYMBOL(PRIx16, None, <cinttypes>)637SYMBOL(PRIx16, None, <inttypes.h>)638SYMBOL(PRIx32, None, <cinttypes>)639SYMBOL(PRIx32, None, <inttypes.h>)640SYMBOL(PRIx64, None, <cinttypes>)641SYMBOL(PRIx64, None, <inttypes.h>)642SYMBOL(PRIxLEAST8, None, <cinttypes>)643SYMBOL(PRIxLEAST8, None, <inttypes.h>)644SYMBOL(PRIxLEAST16, None, <cinttypes>)645SYMBOL(PRIxLEAST16, None, <inttypes.h>)646SYMBOL(PRIxLEAST32, None, <cinttypes>)647SYMBOL(PRIxLEAST32, None, <inttypes.h>)648SYMBOL(PRIxLEAST64, None, <cinttypes>)649SYMBOL(PRIxLEAST64, None, <inttypes.h>)650SYMBOL(PRIxFAST8, None, <cinttypes>)651SYMBOL(PRIxFAST8, None, <inttypes.h>)652SYMBOL(PRIxFAST16, None, <cinttypes>)653SYMBOL(PRIxFAST16, None, <inttypes.h>)654SYMBOL(PRIxFAST32, None, <cinttypes>)655SYMBOL(PRIxFAST32, None, <inttypes.h>)656SYMBOL(PRIxFAST64, None, <cinttypes>)657SYMBOL(PRIxFAST64, None, <inttypes.h>)658SYMBOL(PRIxMAX, None, <cinttypes>)659SYMBOL(PRIxMAX, None, <inttypes.h>)660SYMBOL(PRIxPTR, None, <cinttypes>)661SYMBOL(PRIxPTR, None, <inttypes.h>)662SYMBOL(PRIX8, None, <cinttypes>)663SYMBOL(PRIX8, None, <inttypes.h>)664SYMBOL(PRIX16, None, <cinttypes>)665SYMBOL(PRIX16, None, <inttypes.h>)666SYMBOL(PRIX32, None, <cinttypes>)667SYMBOL(PRIX32, None, <inttypes.h>)668SYMBOL(PRIX64, None, <cinttypes>)669SYMBOL(PRIX64, None, <inttypes.h>)670SYMBOL(PRIXLEAST8, None, <cinttypes>)671SYMBOL(PRIXLEAST8, None, <inttypes.h>)672SYMBOL(PRIXLEAST16, None, <cinttypes>)673SYMBOL(PRIXLEAST16, None, <inttypes.h>)674SYMBOL(PRIXLEAST32, None, <cinttypes>)675SYMBOL(PRIXLEAST32, None, <inttypes.h>)676SYMBOL(PRIXLEAST64, None, <cinttypes>)677SYMBOL(PRIXLEAST64, None, <inttypes.h>)678SYMBOL(PRIXFAST8, None, <cinttypes>)679SYMBOL(PRIXFAST8, None, <inttypes.h>)680SYMBOL(PRIXFAST16, None, <cinttypes>)681SYMBOL(PRIXFAST16, None, <inttypes.h>)682SYMBOL(PRIXFAST32, None, <cinttypes>)683SYMBOL(PRIXFAST32, None, <inttypes.h>)684SYMBOL(PRIXFAST64, None, <cinttypes>)685SYMBOL(PRIXFAST64, None, <inttypes.h>)686SYMBOL(PRIXMAX, None, <cinttypes>)687SYMBOL(PRIXMAX, None, <inttypes.h>)688SYMBOL(PRIXPTR, None, <cinttypes>)689SYMBOL(PRIXPTR, None, <inttypes.h>)690SYMBOL(SCNd8, None, <cinttypes>)691SYMBOL(SCNd8, None, <inttypes.h>)692SYMBOL(SCNd16, None, <cinttypes>)693SYMBOL(SCNd16, None, <inttypes.h>)694SYMBOL(SCNd32, None, <cinttypes>)695SYMBOL(SCNd32, None, <inttypes.h>)696SYMBOL(SCNd64, None, <cinttypes>)697SYMBOL(SCNd64, None, <inttypes.h>)698SYMBOL(SCNdLEAST8, None, <cinttypes>)699SYMBOL(SCNdLEAST8, None, <inttypes.h>)700SYMBOL(SCNdLEAST16, None, <cinttypes>)701SYMBOL(SCNdLEAST16, None, <inttypes.h>)702SYMBOL(SCNdLEAST32, None, <cinttypes>)703SYMBOL(SCNdLEAST32, None, <inttypes.h>)704SYMBOL(SCNdLEAST64, None, <cinttypes>)705SYMBOL(SCNdLEAST64, None, <inttypes.h>)706SYMBOL(SCNdFAST8, None, <cinttypes>)707SYMBOL(SCNdFAST8, None, <inttypes.h>)708SYMBOL(SCNdFAST16, None, <cinttypes>)709SYMBOL(SCNdFAST16, None, <inttypes.h>)710SYMBOL(SCNdFAST32, None, <cinttypes>)711SYMBOL(SCNdFAST32, None, <inttypes.h>)712SYMBOL(SCNdFAST64, None, <cinttypes>)713SYMBOL(SCNdFAST64, None, <inttypes.h>)714SYMBOL(SCNdMAX, None, <cinttypes>)715SYMBOL(SCNdMAX, None, <inttypes.h>)716SYMBOL(SCNdPTR, None, <cinttypes>)717SYMBOL(SCNdPTR, None, <inttypes.h>)718SYMBOL(SCNi8, None, <cinttypes>)719SYMBOL(SCNi8, None, <inttypes.h>)720SYMBOL(SCNi16, None, <cinttypes>)721SYMBOL(SCNi16, None, <inttypes.h>)722SYMBOL(SCNi32, None, <cinttypes>)723SYMBOL(SCNi32, None, <inttypes.h>)724SYMBOL(SCNi64, None, <cinttypes>)725SYMBOL(SCNi64, None, <inttypes.h>)726SYMBOL(SCNiLEAST8, None, <cinttypes>)727SYMBOL(SCNiLEAST8, None, <inttypes.h>)728SYMBOL(SCNiLEAST16, None, <cinttypes>)729SYMBOL(SCNiLEAST16, None, <inttypes.h>)730SYMBOL(SCNiLEAST32, None, <cinttypes>)731SYMBOL(SCNiLEAST32, None, <inttypes.h>)732SYMBOL(SCNiLEAST64, None, <cinttypes>)733SYMBOL(SCNiLEAST64, None, <inttypes.h>)734SYMBOL(SCNiFAST8, None, <cinttypes>)735SYMBOL(SCNiFAST8, None, <inttypes.h>)736SYMBOL(SCNiFAST16, None, <cinttypes>)737SYMBOL(SCNiFAST16, None, <inttypes.h>)738SYMBOL(SCNiFAST32, None, <cinttypes>)739SYMBOL(SCNiFAST32, None, <inttypes.h>)740SYMBOL(SCNiFAST64, None, <cinttypes>)741SYMBOL(SCNiFAST64, None, <inttypes.h>)742SYMBOL(SCNiMAX, None, <cinttypes>)743SYMBOL(SCNiMAX, None, <inttypes.h>)744SYMBOL(SCNiPTR, None, <cinttypes>)745SYMBOL(SCNiPTR, None, <inttypes.h>)746SYMBOL(SCNu8, None, <cinttypes>)747SYMBOL(SCNu8, None, <inttypes.h>)748SYMBOL(SCNu16, None, <cinttypes>)749SYMBOL(SCNu16, None, <inttypes.h>)750SYMBOL(SCNu32, None, <cinttypes>)751SYMBOL(SCNu32, None, <inttypes.h>)752SYMBOL(SCNu64, None, <cinttypes>)753SYMBOL(SCNu64, None, <inttypes.h>)754SYMBOL(SCNuLEAST8, None, <cinttypes>)755SYMBOL(SCNuLEAST8, None, <inttypes.h>)756SYMBOL(SCNuLEAST16, None, <cinttypes>)757SYMBOL(SCNuLEAST16, None, <inttypes.h>)758SYMBOL(SCNuLEAST32, None, <cinttypes>)759SYMBOL(SCNuLEAST32, None, <inttypes.h>)760SYMBOL(SCNuLEAST64, None, <cinttypes>)761SYMBOL(SCNuLEAST64, None, <inttypes.h>)762SYMBOL(SCNuFAST8, None, <cinttypes>)763SYMBOL(SCNuFAST8, None, <inttypes.h>)764SYMBOL(SCNuFAST16, None, <cinttypes>)765SYMBOL(SCNuFAST16, None, <inttypes.h>)766SYMBOL(SCNuFAST32, None, <cinttypes>)767SYMBOL(SCNuFAST32, None, <inttypes.h>)768SYMBOL(SCNuFAST64, None, <cinttypes>)769SYMBOL(SCNuFAST64, None, <inttypes.h>)770SYMBOL(SCNuMAX, None, <cinttypes>)771SYMBOL(SCNuMAX, None, <inttypes.h>)772SYMBOL(SCNuPTR, None, <cinttypes>)773SYMBOL(SCNuPTR, None, <inttypes.h>)774SYMBOL(SCNo8, None, <cinttypes>)775SYMBOL(SCNo8, None, <inttypes.h>)776SYMBOL(SCNo16, None, <cinttypes>)777SYMBOL(SCNo16, None, <inttypes.h>)778SYMBOL(SCNo32, None, <cinttypes>)779SYMBOL(SCNo32, None, <inttypes.h>)780SYMBOL(SCNo64, None, <cinttypes>)781SYMBOL(SCNo64, None, <inttypes.h>)782SYMBOL(SCNoLEAST8, None, <cinttypes>)783SYMBOL(SCNoLEAST8, None, <inttypes.h>)784SYMBOL(SCNoLEAST16, None, <cinttypes>)785SYMBOL(SCNoLEAST16, None, <inttypes.h>)786SYMBOL(SCNoLEAST32, None, <cinttypes>)787SYMBOL(SCNoLEAST32, None, <inttypes.h>)788SYMBOL(SCNoLEAST64, None, <cinttypes>)789SYMBOL(SCNoLEAST64, None, <inttypes.h>)790SYMBOL(SCNoFAST8, None, <cinttypes>)791SYMBOL(SCNoFAST8, None, <inttypes.h>)792SYMBOL(SCNoFAST16, None, <cinttypes>)793SYMBOL(SCNoFAST16, None, <inttypes.h>)794SYMBOL(SCNoFAST32, None, <cinttypes>)795SYMBOL(SCNoFAST32, None, <inttypes.h>)796SYMBOL(SCNoFAST64, None, <cinttypes>)797SYMBOL(SCNoFAST64, None, <inttypes.h>)798SYMBOL(SCNoMAX, None, <cinttypes>)799SYMBOL(SCNoMAX, None, <inttypes.h>)800SYMBOL(SCNoPTR, None, <cinttypes>)801SYMBOL(SCNoPTR, None, <inttypes.h>)802SYMBOL(SCNx8, None, <cinttypes>)803SYMBOL(SCNx8, None, <inttypes.h>)804SYMBOL(SCNx16, None, <cinttypes>)805SYMBOL(SCNx16, None, <inttypes.h>)806SYMBOL(SCNx32, None, <cinttypes>)807SYMBOL(SCNx32, None, <inttypes.h>)808SYMBOL(SCNx64, None, <cinttypes>)809SYMBOL(SCNx64, None, <inttypes.h>)810SYMBOL(SCNxLEAST8, None, <cinttypes>)811SYMBOL(SCNxLEAST8, None, <inttypes.h>)812SYMBOL(SCNxLEAST16, None, <cinttypes>)813SYMBOL(SCNxLEAST16, None, <inttypes.h>)814SYMBOL(SCNxLEAST32, None, <cinttypes>)815SYMBOL(SCNxLEAST32, None, <inttypes.h>)816SYMBOL(SCNxLEAST64, None, <cinttypes>)817SYMBOL(SCNxLEAST64, None, <inttypes.h>)818SYMBOL(SCNxFAST8, None, <cinttypes>)819SYMBOL(SCNxFAST8, None, <inttypes.h>)820SYMBOL(SCNxFAST16, None, <cinttypes>)821SYMBOL(SCNxFAST16, None, <inttypes.h>)822SYMBOL(SCNxFAST32, None, <cinttypes>)823SYMBOL(SCNxFAST32, None, <inttypes.h>)824SYMBOL(SCNxFAST64, None, <cinttypes>)825SYMBOL(SCNxFAST64, None, <inttypes.h>)826SYMBOL(SCNxMAX, None, <cinttypes>)827SYMBOL(SCNxMAX, None, <inttypes.h>)828SYMBOL(SCNxPTR, None, <cinttypes>)829SYMBOL(SCNxPTR, None, <inttypes.h>)830 831// These macros trigger ambiguity when parsing cppreference index.832// Taken from https://en.cppreference.com/w/cpp/types/integer.833SYMBOL(INT8_C, None, <cstdint>)834SYMBOL(INT8_C, None, <stdint.h>)835SYMBOL(INT16_C, None, <cstdint>)836SYMBOL(INT16_C, None, <stdint.h>)837SYMBOL(INT32_C, None, <cstdint>)838SYMBOL(INT32_C, None, <stdint.h>)839SYMBOL(INT64_C, None, <cstdint>)840SYMBOL(INT64_C, None, <stdint.h>)841SYMBOL(INTMAX_C, None, <cstdint>)842SYMBOL(INTMAX_C, None, <stdint.h>)843 844SYMBOL(UINT8_C, None, <cstdint>)845SYMBOL(UINT8_C, None, <stdint.h>)846SYMBOL(UINT16_C, None, <cstdint>)847SYMBOL(UINT16_C, None, <stdint.h>)848SYMBOL(UINT32_C, None, <cstdint>)849SYMBOL(UINT32_C, None, <stdint.h>)850SYMBOL(UINT64_C, None, <cstdint>)851SYMBOL(UINT64_C, None, <stdint.h>)852SYMBOL(UINTMAX_C, None, <cstdint>)853SYMBOL(UINTMAX_C, None, <stdint.h>)854