From Jason Turner

[compliance]

Diff to HTML by rtfpessoa

Files changed (1) hide show
  1. tmp/tmp9j8l29pi/{from.md → to.md} +47 -7
tmp/tmp9j8l29pi/{from.md → to.md} RENAMED
@@ -10,35 +10,75 @@ headers. This set shall include at least the headers shown in
10
  [[headers.cpp.fs]].
11
 
12
  **Table: C++ headers for freestanding implementations** <a id="headers.cpp.fs">[headers.cpp.fs]</a>
13
 
14
  | Subclause | | Header |
15
- | ---------------------- | -------------------------------- | ------------------------------------------------ |
16
  | [[support.types]] | Common definitions | `<cstddef>` |
17
- | [[support.limits]] | Implementation properties | `<cfloat>`, `<climits>`, `<limits>`, `<version>` |
 
 
18
  | [[cstdint.syn]] | Integer types | `<cstdint>` |
19
- | [[support.start.term]] | Start and termination | `<cstdlib>` |
20
  | [[support.dynamic]] | Dynamic memory management | `<new>` |
21
  | [[support.rtti]] | Type identification | `<typeinfo>` |
22
  | [[support.srcloc]] | Source location | `<source_location>` |
23
  | [[support.exception]] | Exception handling | `<exception>` |
24
  | [[support.initlist]] | Initializer lists | `<initializer_list>` |
25
  | [[cmp]] | Comparisons | `<compare>` |
 
26
  | [[support.coroutine]] | Coroutines support | `<coroutine>` |
27
  | [[support.runtime]] | Other runtime support | `<cstdarg>` |
28
  | [[concepts]] | Concepts library | `<concepts>` |
 
 
 
 
29
  | [[type.traits]] | Type traits | `<type_traits>` |
30
- | [[bit]] | Bit manipulation | `<bit>` |
31
- | [[atomics]] | Atomics | `<atomic>` |
32
  | [[utility]] | Utility components | `<utility>` |
33
  | [[tuple]] | Tuples | `<tuple>` |
34
- | [[memory]] | Memory | `<memory>` |
 
 
35
  | [[function.objects]] | Function objects | `<functional>` |
36
- | [[ratio]] | Compile-time rational arithmetic | `<ratio>` |
 
 
 
 
 
37
  | [[iterators]] | Iterators library | `<iterator>` |
38
  | [[ranges]] | Ranges library | `<ranges>` |
 
 
 
 
 
 
 
 
 
39
 
40
 
41
  For each of the headers listed in [[headers.cpp.fs]], a freestanding
42
  implementation provides at least the freestanding items
43
  [[freestanding.item]] declared in the header.
44
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
10
  [[headers.cpp.fs]].
11
 
12
  **Table: C++ headers for freestanding implementations** <a id="headers.cpp.fs">[headers.cpp.fs]</a>
13
 
14
  | Subclause | | Header |
15
+ | --------------------- | ----------------------------------------------- | ------------------------------------ |
16
  | [[support.types]] | Common definitions | `<cstddef>` |
17
+ | [[cstdlib.syn]] | C standard library | `<cstdlib>` |
18
+ | [[support.limits]] | Implementation properties | `<cfloat>`, `<climits>`, `<limits>`, |
19
+ | | | `<version>` |
20
  | [[cstdint.syn]] | Integer types | `<cstdint>` |
 
21
  | [[support.dynamic]] | Dynamic memory management | `<new>` |
22
  | [[support.rtti]] | Type identification | `<typeinfo>` |
23
  | [[support.srcloc]] | Source location | `<source_location>` |
24
  | [[support.exception]] | Exception handling | `<exception>` |
25
  | [[support.initlist]] | Initializer lists | `<initializer_list>` |
26
  | [[cmp]] | Comparisons | `<compare>` |
27
+ | [[support.contract]] | Contract-violation handling | `<contracts>` |
28
  | [[support.coroutine]] | Coroutines support | `<coroutine>` |
29
  | [[support.runtime]] | Other runtime support | `<cstdarg>` |
30
  | [[concepts]] | Concepts library | `<concepts>` |
31
+ | [[errno]] | Error numbers | `<cerrno>` |
32
+ | [[syserr]] | System error support | `<system_error>` |
33
+ | [[debugging]] | Debugging | `<debugging>` |
34
+ | [[memory]] | Memory | `<memory>` |
35
  | [[type.traits]] | Type traits | `<type_traits>` |
36
+ | [[ratio]] | Compile-time rational arithmetic | `<ratio>` |
 
37
  | [[utility]] | Utility components | `<utility>` |
38
  | [[tuple]] | Tuples | `<tuple>` |
39
+ | [[optional]] | Optional objects | `<optional>` |
40
+ | [[variant]] | Variants | `<variant>` |
41
+ | [[expected]] | Expected objects | `<expected>` |
42
  | [[function.objects]] | Function objects | `<functional>` |
43
+ | [[bit]] | Bit manipulation | `<bit>` |
44
+ | [[stdbit.h.syn]] | C-compatible bit manipulation | `<stdbit.h>` |
45
+ | [[array]] | Class template `array` | `<array>` |
46
+ | [[inplace.vector]] | Class template `inplace_vector` | `<inplace_vector>` |
47
+ | [[views.contiguous]] | Contiguous access | `<span>` |
48
+ | [[views.multidim]] | Multidimensional access | `<mdspan>` |
49
  | [[iterators]] | Iterators library | `<iterator>` |
50
  | [[ranges]] | Ranges library | `<ranges>` |
51
+ | [[algorithms]] | Algorithms library | `<algorithm>`, `<numeric>` |
52
+ | [[execpol]] | Execution policies | `<execution>` |
53
+ | [[string.view]] | String view classes | `<string_view>` |
54
+ | [[string.classes]] | String classes | `<string>` |
55
+ | [[c.strings]] | Null-terminated sequence utilities | `<cstring>`, `<cwchar>` |
56
+ | [[charconv]] | Primitive numeric conversions | `<charconv>` |
57
+ | [[rand]] | Random number generation | `<random>` |
58
+ | [[c.math]] | Mathematical functions for floating-point types | `<cmath>` |
59
+ | [[atomics]] | Atomics | `<atomic>` |
60
 
61
 
62
  For each of the headers listed in [[headers.cpp.fs]], a freestanding
63
  implementation provides at least the freestanding items
64
  [[freestanding.item]] declared in the header.
65
 
66
+ The *hosted library facilities* are the set of facilities described in
67
+ this document that are required for hosted implementations, but not
68
+ required for freestanding implementations. A freestanding implementation
69
+ provides a (possibly empty) implementation-defined subset of the hosted
70
+ library facilities. Unless otherwise specified, the requirements on each
71
+ declaration, entity, and macro provided in this way are the same as the
72
+ corresponding requirements for a hosted implementation, except that not
73
+ all of the members of the namespaces are required to be present.
74
+
75
+ A freestanding implementation provides deleted definitions
76
+ [[dcl.fct.def.delete]] for a (possibly empty) implementation-defined
77
+ subset of the namespace-scope functions and function templates from the
78
+ hosted library facilities.
79
+
80
+ [*Note 1*: An implementation can provide a deleted definition so that
81
+ the result of overload resolution does not silently change when
82
+ migrating a program from a freestanding implementation to a hosted
83
+ implementation. — *end note*]
84
+