From Jason Turner

[diff.cpp14.lex]

Diff to HTML by rtfpessoa

tmp/tmp1onbkl7o/{from.md → to.md} RENAMED
@@ -2,22 +2,22 @@
2
 
3
  **Change:** Removal of trigraph support as a required feature.
4
  **Rationale:** Prevents accidental uses of trigraphs in non-raw string
5
  literals and comments. **Effect on original feature:** Valid C++14 code
6
  that uses trigraphs may not be valid or may have different semantics in
7
- this International Standard. Implementations may choose to translate
8
- trigraphs as specified in C++14 if they appear outside of a raw string
9
- literal, as part of the *implementation-defined* mapping from physical
10
- source file characters to the basic source character set.
11
 
12
  **Change:** *pp-number* can contain `p` *sign* and `P` *sign*.
13
  **Rationale:** Necessary to enable
14
  *hexadecimal-floating-point-literal*s. **Effect on original feature:**
15
  Valid C++14 code may fail to compile or produce different results in
16
- this International Standard. Specifically, character sequences like
17
- `0p+0` and `0e1_p+0` are three separate tokens each in C++14, but one
18
- single token in this International Standard. For example:
19
 
20
  ``` cpp
21
  #define F(a) b ## a
22
  int b0p = F(0p+0); // ill-formed; equivalent to ``int b0p = b0p + 0;'' in C++14{}
23
  ```
 
2
 
3
  **Change:** Removal of trigraph support as a required feature.
4
  **Rationale:** Prevents accidental uses of trigraphs in non-raw string
5
  literals and comments. **Effect on original feature:** Valid C++14 code
6
  that uses trigraphs may not be valid or may have different semantics in
7
+ this revision of C++. Implementations may choose to translate trigraphs
8
+ as specified in C++14 if they appear outside of a raw string literal, as
9
+ part of the *implementation-defined* mapping from input source file
10
+ characters to the translation character set.
11
 
12
  **Change:** *pp-number* can contain `p` *sign* and `P` *sign*.
13
  **Rationale:** Necessary to enable
14
  *hexadecimal-floating-point-literal*s. **Effect on original feature:**
15
  Valid C++14 code may fail to compile or produce different results in
16
+ this revision of C++. Specifically, character sequences like `0p+0` and
17
+ `0e1_p+0` are three separate tokens each in C++14, but one single token
18
+ in this revision of C++. For example:
19
 
20
  ``` cpp
21
  #define F(a) b ## a
22
  int b0p = F(0p+0); // ill-formed; equivalent to ``int b0p = b0p + 0;'' in C++14{}
23
  ```