From Jason Turner

[diff.cpp03.library]

Diff to HTML by rtfpessoa

Files changed (1) hide show
  1. tmp/tmp77oou0kk/{from.md → to.md} +33 -36
tmp/tmp77oou0kk/{from.md → to.md} RENAMED
@@ -1,42 +1,39 @@
1
- ### Clause [[library]]: library introduction <a id="diff.cpp03.library">[[diff.cpp03.library]]</a>
2
 
3
- [[library]] – [[thread]] **Change:** New reserved identifiers.
4
- **Rationale:** Required by new features. **Effect on original feature:**
5
- Valid C++03code that uses any identifiers added to the C++standard
6
- library by this International Standard may fail to compile or produce
7
- different results in this International Standard. A comprehensive list
8
- of identifiers used by the C++standard library can be found in the Index
9
- of Library Names in this International Standard.
10
 
11
- [[headers]] **Change:** New headers. **Rationale:** New functionality.
12
- **Effect on original feature:** The following C++headers are new:
13
- `<array>`, `<atomic>`, `<chrono>`, `<codecvt>`, `<condition_variable>`,
14
- `<forward_list>`, `<future>`, `<initializer_list>`, `<mutex>`,
15
- `<random>`, `<ratio>`, `<regex>`, `<scoped_allocator>`,
16
- `<system_error>`, `<thread>`, `<tuple>`, `<typeindex>`,
17
- `<type_traits>`,
18
- `<unordered_map>`, and `<unordered_set>`. In addition the following C
19
- compatibility headers are new: `<ccomplex>`, `<cfenv>`, `<cinttypes>`,
20
- `<cstdalign>`, `<cstdbool>`, `<cstdint>`, `<ctgmath>`, and `<cuchar>`.
21
- Valid C++03code that `#include`s headers with these names may be invalid
22
- in this International Standard.
23
 
24
- [[swappable.requirements]] **Effect on original feature:** Function
25
- `swap` moved to a different header **Rationale:** Remove dependency on
26
- `<algorithm>` for `swap`. **Effect on original feature:** Valid
27
- C++03code that has been compiled expecting swap to be in `<algorithm>`
28
- may have to instead include `<utility>`.
29
 
30
- [[namespace.posix]] **Change:** New reserved namespace. **Rationale:**
31
- New functionality. **Effect on original feature:** The global namespace
32
- `posix` is now reserved for standardization. Valid C++03code that uses a
33
- top-level namespace `posix` may be invalid in this International
34
- Standard.
35
 
36
- [[res.on.macro.definitions]] **Change:** Additional restrictions on
37
- macro names. **Rationale:** Avoid hard to diagnose or non-portable
38
- constructs. **Effect on original feature:** Names of attribute
39
- identifiers may not be used as macro names. Valid C++ 2003 code that
40
- defines `override`, `final`, `carries_dependency`, or `noreturn` as
41
- macros is invalid in this International Standard.
42
 
 
1
+ ### [[library]]: library introduction <a id="diff.cpp03.library">[[diff.cpp03.library]]</a>
2
 
3
+ **Affected:** [[library]] – [[thread]] **Change:** New reserved
4
+ identifiers. **Rationale:** Required by new features. **Effect on
5
+ original feature:** Valid C++03 code that uses any identifiers added to
6
+ the C++ standard library by this International Standard may fail to
7
+ compile or produce different results in this International Standard. A
8
+ comprehensive list of identifiers used by the C++ standard library can
9
+ be found in the Index of Library Names in this International Standard.
10
 
11
+ **Change:** New headers. **Rationale:** New functionality. **Effect on
12
+ original feature:** The following C++ headers are new: `<array>`,
13
+ `<atomic>`, `<chrono>`, , `<condition_variable>`, `<forward_list>`,
14
+ `<future>`, `<initializer_list>`, `<mutex>`, `<random>`, `<ratio>`,
15
+ `<regex>`, `<scoped_allocator>`, `<system_error>`, `<thread>`,
16
+ `<tuple>`, `<typeindex>`, `<type_traits>`, `<unordered_map>`, and
17
+ `<unordered_set>`. In addition the following C compatibility headers are
18
+ new: `<cfenv>`, `<cinttypes>`, `<cstdint>`, and `<cuchar>`. Valid C++03
19
+ code that `#include`s headers with these names may be invalid in this
20
+ International Standard.
 
 
21
 
22
+ **Effect on original feature:** Function `swap` moved to a different
23
+ header **Rationale:** Remove dependency on `<algorithm>` for `swap`.
24
+ **Effect on original feature:** Valid C++03 code that has been compiled
25
+ expecting swap to be in `<algorithm>` may have to instead include
26
+ `<utility>`.
27
 
28
+ **Change:** New reserved namespace. **Rationale:** New functionality.
29
+ **Effect on original feature:** The global namespace `posix` is now
30
+ reserved for standardization. Valid C++03 code that uses a top-level
31
+ namespace `posix` may be invalid in this International Standard.
 
32
 
33
+ **Change:** Additional restrictions on macro names. **Rationale:** Avoid
34
+ hard to diagnose or non-portable constructs. **Effect on original
35
+ feature:** Names of attribute identifiers may not be used as macro
36
+ names. Valid C++03 code that defines `override`, `final`,
37
+ `carries_dependency`, or `noreturn` as macros is invalid in this
38
+ International Standard.
39