zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

commit aa09e7b63995639084d25329954b1972a72ad12d (tree)
parent 3b80e665074cd56d9e24fb8ae0fb9d86e8cd841a
Author: Jimmi Holst Christensen <jhc@liab.dk>
Date:   Tue, 10 Apr 2018 15:01:21 +0200

std.zig.tokinizer now treats string identifiers as identifiers

Diffstat:
Mstd/zig/parser.zig | 8++++++++
Mstd/zig/tokenizer.zig | 5++---
2 files changed, 10 insertions(+), 3 deletions(-)

diff --git a/std/zig/parser.zig b/std/zig/parser.zig @@ -5041,3 +5041,11 @@ test "zig fmt: use" { \\ ); } + +test "zig fmt: string identifier" { + try testCanonical( + \\const @"a b" = @"c d".@"e f"; + \\fn @"g h"() void {} + \\ + ); +} diff --git a/std/zig/tokenizer.zig b/std/zig/tokenizer.zig @@ -78,7 +78,6 @@ pub const Token = struct { StringLiteral: StrLitKind, MultilineStringLiteralLine: StrLitKind, CharLiteral, - StringIdentifier, Eof, Builtin, Bang, @@ -434,7 +433,7 @@ pub const Tokenizer = struct { State.SawAtSign => switch (c) { '"' => { - result.id = Token.Id.StringIdentifier; + result.id = Token.Id.Identifier; state = State.StringLiteral; }, else => { @@ -1136,7 +1135,7 @@ test "tokenizer - string identifier and builtin fns" { , []Token.Id{ Token.Id.Keyword_const, - Token.Id.StringIdentifier, + Token.Id.Identifier, Token.Id.Equal, Token.Id.Builtin, Token.Id.LParen,