File tree 1 file changed +10
-2
lines changed
1 file changed +10
-2
lines changed Original file line number Diff line number Diff line change @@ -366,11 +366,19 @@ A _floating-point literal_ has one of two forms:
366
366
optionally followed by another decimal literal, with an optional _ exponent_ .
367
367
* A single _ decimal literal_ followed by an _ exponent_ .
368
368
369
- By default, a floating-point literal has a generic type, and, like integer
370
- literals, the type must be uniquely determined from the context. There are two valid
369
+ Like integer literals, a floating-point literal may be followed by a
370
+ suffix, so long as the pre-suffix part does not end with ` U+002E ` (` . ` ).
371
+ The suffix forcibly sets the type of the literal. There are two valid
371
372
_ floating-point suffixes_ , ` f32 ` and ` f64 ` (the 32-bit and 64-bit floating point
372
373
types), which explicitly determine the type of the literal.
373
374
375
+ The type of an _ unsuffixed_ floating-point literal is determined by type
376
+ inference. If a floating-point type can be _ uniquely_ determined from the
377
+ surrounding program context, the unsuffixed floating-point literal has that type.
378
+ If the program context underconstrains the type, it defaults to double-precision ` f64 ` ;
379
+ if the program context overconstrains the type, it is considered a static type
380
+ error.
381
+
374
382
Examples of floating-point literals of various forms:
375
383
376
384
```
You can’t perform that action at this time.
0 commit comments