Index of implementation-defined behavior

#pragma, [cpp.pragma]
additional execution policies supported by parallel algorithms, [execpol.type], [algorithms.parallel.exec]
additional file_type enumerators for file systems supporting additional types of file, [fs.enum.file.type]
additional formats for time_get​::​do_get_date, [locale.time.get.virtuals]
additional supported forms of preprocessing directive, [cpp.pre]
algorithms for producing the standard random number distributions, [rand.dist.general]
alignment, [basic.align]
alignment additional values, [basic.align]
alignment of bit-fields within a class object, [class.bit]
allocation of bit-fields within a class object, [class.bit]
any use of an invalid pointer other than to perform indirection or deallocate, [basic.stc.general]
argument values to construct ios_base​::​failure, [iostate.flags]
assignability of placeholder objects, [func.bind.place]
barrier phrase completion without wait, [thread.barrier.class]
behavior of iostream classes when traits​::​pos_type is not streampos or when traits​::​​off_type is not streamoff, [iostreams.limits.pos]
behavior of non-standard attributes, [dcl.attr.grammar]
behavior of strstreambuf​::​setbuf, [depr.strstreambuf.virtuals]
bits in a byte, [intro.memory]
character encoding scheme of the environment, [text.encoding.members]
choice of larger or smaller value of floating-point-literal, [lex.fcon]
column value of source_location​::​current, [support.srcloc.cons]
conversions between pointers and integers, [expr.reinterpret.cast]
converting function pointer to object pointer and vice versa, [expr.reinterpret.cast]
default configuration of a pool, [mem.res.pool.mem]
default next_buffer_size for a monotonic_buffer_resource, [mem.res.monotonic.buffer.ctor]
default number of buckets in unordered_map, [unord.map.cnstr]
default number of buckets in unordered_multimap, [unord.multimap.cnstr]
default number of buckets in unordered_multiset, [unord.multiset.cnstr]
default number of buckets in unordered_set, [unord.set.cnstr]
default value for least_max_value template parameter of counting_semaphore, [thread.sema.cnt]
defining main in freestanding environment, [basic.start.main]
definition and meaning of __STDC__, [cpp.predefined], [diff.cpp]
definition and meaning of __STDC_VERSION__, [cpp.predefined]
derived type for typeid, [expr.typeid]
determination of kind of input file, [lex.phases]
diagnostic message, [defns.diagnostic]
dynamic initialization of static inline variables before main, [basic.start.dynamic]
dynamic initialization of static variables before main, [basic.start.dynamic]
dynamic initialization of thread-local variables before entry, [basic.start.dynamic]
effect of calling associated Laguerre polynomials with n >= 128 or m >= 128, [sf.cmath.assoc.laguerre]
effect of calling associated Legendre polynomials with l >= 128, [sf.cmath.assoc.legendre]
effect of calling basic_filebuf​::​setbuf with nonzero arguments, [filebuf.virtuals]
effect of calling basic_filebuf​::​sync when a get area exists, [filebuf.virtuals]
effect of calling basic_streambuf​::​setbuf with nonzero arguments, [stringbuf.virtuals]
effect of calling cylindrical Bessel functions of the first kind with nu >= 128, [sf.cmath.cyl.bessel.j]
effect of calling cylindrical Neumann functions with nu >= 128, [sf.cmath.cyl.neumann]
effect of calling Hermite polynomials with n >= 128, [sf.cmath.hermite]
effect of calling ios_base​::​sync_with_stdio after any input or output operation on standard streams, [ios.members.static]
effect of calling irregular modified cylindrical Bessel functions with nu >= 128, [sf.cmath.cyl.bessel.k]
effect of calling Laguerre polynomials with n >= 128, [sf.cmath.laguerre]
effect of calling Legendre polynomials with l >= 128, [sf.cmath.legendre]
effect of calling regular modified cylindrical Bessel functions with nu >= 128, [sf.cmath.cyl.bessel.i]
effect of calling spherical associated Legendre functions with l >= 128, [sf.cmath.sph.legendre]
effect of calling spherical Bessel functions with n >= 128, [sf.cmath.sph.bessel]
effect of calling spherical Neumann functions with n >= 128, [sf.cmath.sph.neumann]
effect of conditional-escape-sequence on encoding state, [lex.string]
effect of filesystem​::​copy, [fs.op.copy]
effect on C locale of calling locale​::​global, [locale.statics]
encoding assumption for format width computation, [format.string.std]
error_category for errors originating outside the operating system, [value.error.codes]
exception type when random_device constructor fails, [rand.device]
exception type when random_device​::​operator() fails, [rand.device]
exception type when shared_ptr constructor fails, [util.smartptr.shared.const]
exceptions thrown by standard library functions that have a potentially-throwing exception specification, [res.on.exception.handling]
extended signed integer types, [basic.fundamental]
file type of the file argument of filesystem​::​status, [fs.op.status]
floating-point conversion subrank, [conv.rank]
format of diagnostic created by assert macro's expression, [assertions.assert]
formatted character sequence generated by time_put​::​do_put in C locale, [locale.time.put.virtuals]
forward progress guarantees for implicit threads of parallel algorithms (if not defined for thread), [algorithms.parallel.exec]
growth factor for monotonic_buffer_resource, [mem.res.monotonic.buffer.ctor], [mem.res.monotonic.buffer.mem]
headers for freestanding implementation, [compliance]
how random_device​::​operator() generates values, [rand.device]
how text_encoding objects are determined to be representative of a character encoding scheme, [text.encoding.general]
how the set of importable headers is determined, [module.import]
interactive device, [intro.abstract]
interpretation of the path character sequence with format path​::​auto_format, [fs.enum.path.format]
largest supported value to configure the largest allocation satisfied directly by a pool, [mem.res.pool.options]
largest supported value to configure the maximum number of blocks to replenish a pool, [mem.res.pool.options]
last enumerator of launch, [future.syn]
linkage of main, [basic.start.main]
linkage of names from C standard library, [using.linkage]
linkage of objects between C++ and other languages, [dcl.link]
locale names, [locale.cons]
locales with Unicode support for chrono types, [time.format]
lvalue-to-rvalue conversion of an invalid pointer value, [conv.lval]
manner of search for included source file, [cpp.include]
mapping from name to catalog when calling messages​::​do_open, [locale.messages.virtuals]
mapping header name to header or external source file, [lex.header]
mapping input source file characters to translation character set, [diff.cpp14.lex]
mapping of pointer to integer, [expr.reinterpret.cast]
mapping physical source file characters to translation character set, [lex.phases]
mapping to message when calling messages​::​do_get, [locale.messages.virtuals]
maximum depth of recursive template instantiations, [temp.inst]
maximum size of an allocated object, [expr.new], [new.badlength]
meaning of ', \, /*, or // in a q-char-sequence or an h-char-sequence, [lex.header]
meaning of asm declaration, [dcl.asm]
meaning of attribute declaration, [dcl.pre]
meaning of dot-dot in root-directory, [fs.path.generic]
nesting limit for #include directives, [cpp.include]
NTCTS in basic_ostream<charT, traits>& operator<<(nullptr_t), [ostream.inserters]
number of placeholders for bind expressions, [functional.syn], [func.bind.place]
number of threads in a program under a freestanding implementation, [intro.multithread.general]
operating system on which implementation depends, [fs.conform.os]
operator<< for large extended floating-point types, [ostream.inserters.arithmetic]
operator>> for large extended floating-point types, [istream.formatted.arithmetic]
ordinary and wide literal encodings, [lex.charset]
parameters to main, [basic.start.main]
passing argument of class type through ellipsis, [expr.call]
presence and meaning of native_handle_type and native_handle, [thread.req.native]
presence and value of __STDC_ISO_10646__, [cpp.predefined]
rank of extended signed integer type, [conv.rank]
representation of floating-point types, [basic.fundamental]
required alignment for atomic_ref type's operations, [atomics.ref.generic.general], [atomics.ref.int], [atomics.ref.float], [atomics.ref.pointer]
resource limits on a message catalog, [locale.messages.virtuals]
result of filesystem​::​file_size, [fs.op.file.size]
result of inexact floating-point conversion, [conv.double], [expr.static.cast]
resuming a coroutine on a different execution agent, [coroutine.handle.resumption]
return type of cartesian_product_view​::​size, [range.cartesian.view]
return value of bad_alloc​::​what, [bad.alloc]
return value of bad_any_cast​::​what, [any.bad.any.cast]
return value of bad_array_new_length​::​what, [new.badlength]
return value of bad_cast​::​what, [bad.cast]
return value of bad_exception​::​what, [bad.exception]
return value of bad_function_call​::​what, [func.wrap.badcall]
return value of bad_optional_access​::​what, [optional.bad.access]
return value of bad_typeid​::​what, [bad.typeid]
return value of bad_variant_access​::​what, [variant.bad.access]
return value of bad_weak_ptr​::​what, [util.smartptr.weak.bad]
return value of char_traits<char16_t>​::​eof, [char.traits.specializations.char16.t]
return value of char_traits<char32_t>​::​eof, [char.traits.specializations.char32.t]
return value of char_traits<char8_t>​::​eof, [char.traits.specializations.char8.t]
return value of exception​::​what, [exception]
return value of source_location​::​current, [support.srcloc.cons]
return value of type_info​::​name(), [type.info]
search locations for "" header, [cpp.include]
search locations for <> header, [cpp.include]
semantics of an access through a volatile glvalue, [dcl.type.cv]
semantics of breakpoint, [debugging.utility]
semantics of is_debugger_present, [debugging.utility]
semantics of linkage specifiers, [dcl.link]
semantics of parallel algorithms invoked with implementation-defined execution policies, [algorithms.parallel.exec]
semantics of stacktrace_entry​::​native_handle, [stacktrace.entry.obs]
semantics of token parameter and default token value used by random_device constructors, [rand.device]
sequence of places searched for a header, [cpp.include]
set of aliases of a known registered character encoding, [text.encoding.general]
set of character container types that iostreams templates can be instantiated for, [locale.category], [iostreams.limits.pos]
set of integer-class types, [iterator.concept.winc]
signedness of char, [dcl.type.simple]
sizeof applied to fundamental types other than char, signed char, and unsigned char, [expr.sizeof]
stack unwinding before invocation of std​::​terminate, [except.handle], [except.terminate]
stacktrace_entry​::​native_handle_type, [stacktrace.entry.overview]
startup and termination in freestanding environment, [basic.start.main]
strict total order over pointer values, [defns.order.ptr]
string resulting from __func__, [dcl.fct.def.general]
support for extended alignments, [basic.align]
support for module-import-declarations with non-C++ language linkage, [dcl.link]
supported input files, [lex.phases]
supported multibyte character encoding rules, [char.traits.specializations.char]
supported root-names in addition to any operating system dependent root-names, [fs.path.generic]
text of __DATE__ when date of translation is not available, [cpp.predefined]
text of __TIME__ when time of translation is not available, [cpp.predefined]
threads and program points at which deferred dynamic initialization is performed, [basic.start.dynamic]
type of array​::​const_iterator, [array.overview]
type of array​::​iterator, [array.overview]
type of basic_stacktrace​::​const_iterator, [stacktrace.basic.overview]
type of basic_stacktrace​::​difference_type, [stacktrace.basic.overview]
type of basic_stacktrace​::​size_type, [stacktrace.basic.overview]
type of basic_string​::​const_iterator, [basic.string.general]
type of basic_string​::​iterator, [basic.string.general]
type of basic_string_view​::​const_iterator, [string.view.template.general], [string.view.iterators]
type of default_random_engine, [rand.predef]
type of deque​::​const_iterator, [deque.overview]
type of deque​::​difference_type, [deque.overview]
type of deque​::​iterator, [deque.overview]
type of deque​::​size_type, [deque.overview]
type of flat_map​::​const_iterator, [flat.map.defn]
type of flat_map​::​iterator, [flat.map.defn]
type of flat_multimap​::​const_iterator, [flat.multimap.defn]
type of flat_multimap​::​iterator, [flat.multimap.defn]
type of flat_multiset​::​const_iterator, [flat.multiset.defn]
type of flat_multiset​::​iterator, [flat.multiset.defn]
type of flat_set​::​const_iterator, [flat.set.defn]
type of flat_set​::​iterator, [flat.set.defn]
type of forward_list​::​const_iterator, [forward.list.overview]
type of forward_list​::​difference_type, [forward.list.overview]
type of forward_list​::​iterator, [forward.list.overview]
type of forward_list​::​size_type, [forward.list.overview]
type of list​::​const_iterator, [list.overview]
type of list​::​difference_type, [list.overview]
type of list​::​iterator, [list.overview]
type of list​::​size_type, [list.overview]
type of map​::​const_iterator, [map.overview]
type of map​::​difference_type, [map.overview]
type of map​::​iterator, [map.overview]
type of map​::​size_type, [map.overview]
type of match_results​::​const_iterator, [re.results.general]
type of multimap​::​const_iterator, [multimap.overview]
type of multimap​::​difference_type, [multimap.overview]
type of multimap​::​iterator, [multimap.overview]
type of multimap​::​size_type, [multimap.overview]
type of multiset​::​const_iterator, [multiset.overview]
type of multiset​::​difference_type, [multiset.overview]
type of multiset​::​iterator, [multiset.overview]
type of multiset​::​size_type, [multiset.overview]
type of native_handle_type, [filebuf.general]
type of ranges​::​cartesian_product_view​::​iterator​::​difference_type, [range.cartesian.iterator]
type of regex_constants​::​error_type, [re.err]
type of regex_constants​::​match_flag_type, [re.matchflag]
type of set​::​const_iterator, [set.overview]
type of set​::​difference_type, [set.overview]
type of set​::​iterator, [set.overview]
type of set​::​size_type, [set.overview]
type of size_t, [support.types.layout]
type of span​::​iterator, [span.overview], [span.iterators]
type of std​::​bfloat16_t, [stdfloat.syn]
type of std​::​float128_t, [stdfloat.syn]
type of std​::​float16_t, [stdfloat.syn]
type of std​::​float32_t, [stdfloat.syn]
type of std​::​float64_t, [stdfloat.syn]
type of streamoff, [stream.types]
type of syntax_option_type, [re.synopt]
type of text_encoding​::​aliases_view​::​begin(), [text.encoding.aliases]
type of text_encoding​::​aliases_view​::​end(), [text.encoding.aliases]
type of unordered_map​::​const_iterator, [unord.map.overview]
type of unordered_map​::​const_local_iterator, [unord.map.overview]
type of unordered_map​::​difference_type, [unord.map.overview]
type of unordered_map​::​iterator, [unord.map.overview]
type of unordered_map​::​local_iterator, [unord.map.overview]
type of unordered_map​::​size_type, [unord.map.overview]
type of unordered_multimap​::​const_iterator, [unord.multimap.overview]
type of unordered_multimap​::​const_local_iterator, [unord.multimap.overview]
type of unordered_multimap​::​difference_type, [unord.multimap.overview]
type of unordered_multimap​::​iterator, [unord.multimap.overview]
type of unordered_multimap​::​local_iterator, [unord.multimap.overview]
type of unordered_multimap​::​size_type, [unord.multimap.overview]
type of unordered_multiset​::​const_iterator, [unord.multiset.overview]
type of unordered_multiset​::​const_local_iterator, [unord.multiset.overview]
type of unordered_multiset​::​difference_type, [unord.multiset.overview]
type of unordered_multiset​::​iterator, [unord.multiset.overview]
type of unordered_multiset​::​local_iterator, [unord.multiset.overview]
type of unordered_multiset​::​size_type, [unord.multiset.overview]
type of unordered_set​::​const_iterator, [unord.set.overview]
type of unordered_set​::​const_local_iterator, [unord.set.overview]
type of unordered_set​::​difference_type, [unord.set.overview]
type of unordered_set​::​iterator, [unord.set.overview]
type of unordered_set​::​local_iterator, [unord.set.overview]
type of unordered_set​::​size_type, [unord.set.overview]
type of vector​::​const_iterator, [vector.overview]
type of vector​::​difference_type, [vector.overview]
type of vector​::​iterator, [vector.overview]
type of vector​::​size_type, [vector.overview]
type of vector<bool>​::​const_iterator, [vector.bool.pspc]
type of vector<bool>​::​const_pointer, [vector.bool.pspc]
type of vector<bool>​::​difference_type, [vector.bool.pspc]
type of vector<bool>​::​iterator, [vector.bool.pspc]
type of vector<bool>​::​pointer, [vector.bool.pspc]
type of vector<bool>​::​size_type, [vector.bool.pspc]
underlying type for enumeration, [dcl.enum]
underlying type of bool, [basic.fundamental]
underlying type of char, [basic.fundamental]
underlying type of wchar_t, [basic.fundamental]
unit suffix when Period​::​type is micro, [time.duration.io]
value of bit-field that cannot represent
assigned value, [expr.ass]
incremented value, [expr.post.incr]
initializer, [dcl.init.general]
value of ctype<char>​::​table_size, [facet.ctype.special.general]
value of future_errc​::​broken_promise, [future.syn]
value of future_errc​::​future_already_retrieved, [future.syn]
value of future_errc​::​no_state, [future.syn]
value of future_errc​::​promise_already_satisfied, [future.syn]
value of has-attribute-expression for non-standard attributes, [cpp.cond]
value of has-attribute-expression for standard attributes, [cpp.cond]
value of non-encodable character literal or multicharacter literal, [lex.ccon]
value of pow(0,0), [complex.transcendentals]
value of result of inexact integer to floating-point conversion, [conv.fpint]
value representation of pointer types, [basic.compound]
values of a trivially copyable type, [basic.types.general]
values of various ATOMIC_..._LOCK_FREE macros, [atomics.lockfree]
whether <cfenv> functions can be used to manage floating-point status, [cfenv.syn]
whether a freestanding deleted function is a deleted function, [freestanding.item]
whether a given atomic_ref type's operations are always lock free, [atomics.ref.generic.general], [atomics.ref.int], [atomics.ref.float], [atomics.ref.pointer]
whether basic_spanbuf's move source is empty after a move, [spanbuf.cons]
whether freestanding default replaceable global allocation functions satisfy required behavior, [new.delete.general]
whether functions from Annex K of the C standard library are declared when C++ headers are included, [headers]
whether locale object is global or per-thread, [locale.general]
whether pragma FENV_ACCESS is supported, [cfenv.syn]
whether rand may introduce a data race, [c.math.rand]
whether sequence pointers are copied by basic_filebuf move constructor, [filebuf.cons]
whether sequence pointers are copied by basic_stringbuf move constructor, [stringbuf.cons]
whether sequence pointers are initialized to null pointers, [stringbuf.cons]
whether source file inclusion of importable header is replaced with import directive, [cpp.include]
whether source of translation units must be available to locate template definitions, [lex.phases]
whether stack is unwound before invoking the function std​::​terminate when a noexcept specification is violated, [except.terminate]
whether the implementation is hosted or freestanding, [compliance]
whether the lifetime of a parameter ends when the callee returns or at the end of the enclosing full-expression, [expr.call]
whether the sources for module units and header units on which the current translation unit has an interface dependency are required to be available during translation, [lex.phases]
whether the thread that executes main and the threads created by std​::​thread or std​::​jthread provide concurrent forward progress guarantees, [intro.progress]
whether time_get​::​do_get_year accepts two-digit year numbers, [locale.time.get.virtuals]
whether values are rounded or truncated to the required precision when converting between time_t values and time_point objects, [time.clock.system.members]
which functions in the C++ standard library may be recursively reentered, [reentrancy]
which non-standard-layout objects containing no data are considered empty, [intro.object]
which scalar types have unique object representations, [meta.unary.prop]
width of integral type, [basic.fundamental]