aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMarc Tiehuis <marc@tiehu.is>2022-05-02 23:39:38 +1200
committerMarc Tiehuis <marc@tiehu.is>2022-05-03 16:46:40 +1200
commitbbfe2234c87ee67012e0117248ba2c4f3781a1c5 (patch)
tree30314b98c10091073409700b1ddd1a5f9abf23ca /src
parent2085a4af5654a74f2a5d8ac1fa7934a3663bf3a0 (diff)
downloadzig-bbfe2234c87ee67012e0117248ba2c4f3781a1c5.tar.gz
zig-bbfe2234c87ee67012e0117248ba2c4f3781a1c5.zip
update AstGen float literal parsing
Diffstat (limited to 'src')
-rw-r--r--src/AstGen.zig8
1 files changed, 1 insertions, 7 deletions
diff --git a/src/AstGen.zig b/src/AstGen.zig
index f74a2b2d39..1da1cf187e 100644
--- a/src/AstGen.zig
+++ b/src/AstGen.zig
@@ -6715,13 +6715,7 @@ fn floatLiteral(gz: *GenZir, rl: ResultLoc, node: Ast.Node.Index, sign: Sign) In
const main_token = main_tokens[node];
const bytes = tree.tokenSlice(main_token);
- const unsigned_float_number: f128 = if (bytes.len > 2 and bytes[1] == 'x') hex: {
- assert(bytes[0] == '0'); // validated by tokenizer
- break :hex std.fmt.parseHexFloat(f128, bytes) catch |err| switch (err) {
- error.InvalidCharacter => unreachable, // validated by tokenizer
- error.Overflow => return astgen.failNode(node, "number literal cannot be represented in a 128-bit floating point", .{}),
- };
- } else std.fmt.parseFloat(f128, bytes) catch |err| switch (err) {
+ const unsigned_float_number = std.fmt.parseFloat(f128, bytes) catch |err| switch (err) {
error.InvalidCharacter => unreachable, // validated by tokenizer
};
const float_number = switch (sign) {