tmp/tmpotbvtyut/{from.md → to.md}
RENAMED
|
@@ -53,23 +53,33 @@ digit-sequence:
|
|
| 53 |
digit-sequence '''ₒₚₜ digit
|
| 54 |
```
|
| 55 |
|
| 56 |
``` bnf
|
| 57 |
floating-point-suffix: one of
|
| 58 |
-
'f l F L'
|
| 59 |
```
|
| 60 |
|
| 61 |
-
The type of a *floating-point-literal*
|
|
|
|
| 62 |
*floating-point-suffix* as specified in [[lex.fcon.type]].
|
| 63 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 64 |
**Table: Types of *floating-point-literal*{s}** <a id="lex.fcon.type">[lex.fcon.type]</a>
|
| 65 |
|
| 66 |
| *floating-point-suffix* | type |
|
| 67 |
-
| ----------------------- | --------------- |
|
| 68 |
| none | `double` |
|
| 69 |
| `f` or `F` | `float` |
|
| 70 |
| `l` or `L` | `long` `double` |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 71 |
|
| 72 |
|
| 73 |
The *significand* of a *floating-point-literal* is the
|
| 74 |
*fractional-constant* or *digit-sequence* of a
|
| 75 |
*decimal-floating-point-literal* or the
|
|
@@ -78,11 +88,11 @@ The *significand* of a *floating-point-literal* is the
|
|
| 78 |
of *digit*s or *hexadecimal-digit*s and optional period are interpreted
|
| 79 |
as a base N real number s, where N is 10 for a
|
| 80 |
*decimal-floating-point-literal* and 16 for a
|
| 81 |
*hexadecimal-floating-point-literal*.
|
| 82 |
|
| 83 |
-
[*Note
|
| 84 |
determining the value. — *end note*]
|
| 85 |
|
| 86 |
If an *exponent-part* or *binary-exponent-part* is present, the exponent
|
| 87 |
e of the *floating-point-literal* is the result of interpreting the
|
| 88 |
sequence of an optional *sign* and the *digit*s as a base 10 integer.
|
|
|
|
| 53 |
digit-sequence '''ₒₚₜ digit
|
| 54 |
```
|
| 55 |
|
| 56 |
``` bnf
|
| 57 |
floating-point-suffix: one of
|
| 58 |
+
'f l f16 f32 f64 f128 bf16 F L F16 F32 F64 F128 BF16'
|
| 59 |
```
|
| 60 |
|
| 61 |
+
The type of a *floating-point-literal*
|
| 62 |
+
[[basic.fundamental]], [[basic.extended.fp]] is determined by its
|
| 63 |
*floating-point-suffix* as specified in [[lex.fcon.type]].
|
| 64 |
|
| 65 |
+
[*Note 1*: The floating-point suffixes `f16`, `f32`, `f64`, `f128`,
|
| 66 |
+
`bf16`, `F16`, `F32`, `F64`, `F128`, and `BF16` are
|
| 67 |
+
conditionally-supported. See [[basic.extended.fp]]. — *end note*]
|
| 68 |
+
|
| 69 |
**Table: Types of *floating-point-literal*{s}** <a id="lex.fcon.type">[lex.fcon.type]</a>
|
| 70 |
|
| 71 |
| *floating-point-suffix* | type |
|
| 72 |
+
| ----------------------- | ----------------- |
|
| 73 |
| none | `double` |
|
| 74 |
| `f` or `F` | `float` |
|
| 75 |
| `l` or `L` | `long` `double` |
|
| 76 |
+
| `f16` or `F16` | `std::float16_t` |
|
| 77 |
+
| `f32` or `F32` | `std::float32_t` |
|
| 78 |
+
| `f64` or `F64` | `std::float64_t` |
|
| 79 |
+
| `f128` or `F128` | `std::float128_t` |
|
| 80 |
+
| `bf16` or `BF16` | `std::bfloat16_t` |
|
| 81 |
|
| 82 |
|
| 83 |
The *significand* of a *floating-point-literal* is the
|
| 84 |
*fractional-constant* or *digit-sequence* of a
|
| 85 |
*decimal-floating-point-literal* or the
|
|
|
|
| 88 |
of *digit*s or *hexadecimal-digit*s and optional period are interpreted
|
| 89 |
as a base N real number s, where N is 10 for a
|
| 90 |
*decimal-floating-point-literal* and 16 for a
|
| 91 |
*hexadecimal-floating-point-literal*.
|
| 92 |
|
| 93 |
+
[*Note 2*: Any optional separating single quotes are ignored when
|
| 94 |
determining the value. — *end note*]
|
| 95 |
|
| 96 |
If an *exponent-part* or *binary-exponent-part* is present, the exponent
|
| 97 |
e of the *floating-point-literal* is the result of interpreting the
|
| 98 |
sequence of an optional *sign* and the *digit*s as a base 10 integer.
|