zig

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

commit 2eba779af5ee2dd90ac383abe8e548d893ea4ffc (tree)
parent 87901baa28ca04f5de8125c2f473fa02db6b4eb8
Author: Andrew Kelley <andrew@ziglang.org>
Date:   Thu, 16 May 2019 16:50:24 -0400

stage1 tokenizer: add more missing break statements

Diffstat:
Msrc/tokenizer.cpp | 4++++
1 file changed, 4 insertions(+), 0 deletions(-)

diff --git a/src/tokenizer.cpp b/src/tokenizer.cpp @@ -1107,6 +1107,7 @@ void tokenize(Buf *buf, Tokenization *out) { if (t.unicode) { if (t.char_code > 0x10ffff) { tokenize_error(&t, "unicode value out of range: %x", t.char_code); + break; } if (t.cur_tok->id == TokenIdCharLiteral) { t.cur_tok->data.char_lit.c = t.char_code; @@ -1147,6 +1148,7 @@ void tokenize(Buf *buf, Tokenization *out) { switch (c) { case '\'': tokenize_error(&t, "expected character"); + break; case '\\': t.state = TokenizeStateStringEscape; break; @@ -1390,8 +1392,10 @@ void tokenize(Buf *buf, Tokenization *out) { case TokenizeStateCharCode: if (t.cur_tok->id == TokenIdStringLiteral) { tokenize_error(&t, "unterminated string"); + break; } else if (t.cur_tok->id == TokenIdCharLiteral) { tokenize_error(&t, "unterminated character literal"); + break; } else { zig_unreachable(); }