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:
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();
}