diff options
| author | Andrew Kelley <andrew@ziglang.org> | 2020-02-14 10:27:44 -0500 |
|---|---|---|
| committer | Andrew Kelley <andrew@ziglang.org> | 2020-02-14 10:27:44 -0500 |
| commit | a8b36fbe34e4acfea1fcb348fbed321b05611fd3 (patch) | |
| tree | 23f489f85c427a003577f5c40b74201ba8c85ddb /lib/std/c/tokenizer.zig | |
| parent | cdc5070f216a924d24588b8d0fe06400e036e6bf (diff) | |
| parent | 40b9db7cad6f876bb3e8fa32d7b32bbd4bc983ea (diff) | |
| download | zig-a8b36fbe34e4acfea1fcb348fbed321b05611fd3.tar.gz zig-a8b36fbe34e4acfea1fcb348fbed321b05611fd3.zip | |
Merge remote-tracking branch 'origin/master' into llvm10
Diffstat (limited to 'lib/std/c/tokenizer.zig')
| -rw-r--r-- | lib/std/c/tokenizer.zig | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/lib/std/c/tokenizer.zig b/lib/std/c/tokenizer.zig index 80fd604eb5..66e6d9d52d 100644 --- a/lib/std/c/tokenizer.zig +++ b/lib/std/c/tokenizer.zig @@ -651,6 +651,7 @@ pub const Tokenizer = struct { state = .StringLiteral; }, else => { + self.index -= 1; state = .Identifier; }, }, @@ -660,6 +661,7 @@ pub const Tokenizer = struct { state = .StringLiteral; }, else => { + self.index -= 1; state = .Identifier; }, }, @@ -673,6 +675,7 @@ pub const Tokenizer = struct { state = .StringLiteral; }, else => { + self.index -= 1; state = .Identifier; }, }, @@ -686,6 +689,7 @@ pub const Tokenizer = struct { state = .StringLiteral; }, else => { + self.index -= 1; state = .Identifier; }, }, @@ -1079,6 +1083,9 @@ pub const Tokenizer = struct { 'x', 'X' => { state = .IntegerLiteralHex; }, + '.' => { + state = .FloatFraction; + }, else => { state = .IntegerSuffix; self.index -= 1; @@ -1261,13 +1268,16 @@ pub const Tokenizer = struct { .UnicodeEscape, .MultiLineComment, .MultiLineCommentAsterisk, - .FloatFraction, - .FloatFractionHex, .FloatExponent, - .FloatExponentDigits, .MacroString, => result.id = .Invalid, + .FloatExponentDigits => result.id = if (counter == 0) .Invalid else .{ .FloatLiteral = .None }, + + .FloatFraction, + .FloatFractionHex, + => result.id = .{ .FloatLiteral = .None }, + .IntegerLiteralOct, .IntegerLiteralBinary, .IntegerLiteralHex, |
