aboutsummaryrefslogtreecommitdiff
path: root/src/parser.cpp
diff options
context:
space:
mode:
authorgingerBill <bill@gingerbill.org>2021-08-31 22:31:43 +0100
committergingerBill <bill@gingerbill.org>2021-08-31 22:31:43 +0100
commit2db6fea6655215452d445f327cadda815d65afd9 (patch)
tree6188c98f879f65df1da271cc57a0fb6c41506d1e /src/parser.cpp
parentb450a853d527df3e7baa2b980504f564a1a94921 (diff)
Remove dead code and add debug messages
Diffstat (limited to 'src/parser.cpp')
-rw-r--r--src/parser.cpp33
1 files changed, 8 insertions, 25 deletions
diff --git a/src/parser.cpp b/src/parser.cpp
index 2428f7507..fe334e4c7 100644
--- a/src/parser.cpp
+++ b/src/parser.cpp
@@ -1559,31 +1559,14 @@ void expect_semicolon(AstFile *f, Ast *s) {
}
if (s != nullptr) {
- switch (f->curr_token.kind) {
- case Token_CloseBrace:
- case Token_CloseParen:
- case Token_else:
- case Token_EOF:
- return;
-
- default:
- if (is_semicolon_optional_for_node(f, s)) {
- return;
- }
- break;
- }
- String node_string = ast_strings[s->kind];
- String p = token_to_string(f->curr_token);
- syntax_error(prev_token, "Expected ';' after %.*s, got %.*s",
- LIT(node_string), LIT(p));
- } else {
- switch (f->curr_token.kind) {
- case Token_EOF:
- return;
- }
- String p = token_to_string(f->curr_token);
- syntax_error(prev_token, "Expected ';', got %.*s", LIT(p));
+ return;
+ }
+ switch (f->curr_token.kind) {
+ case Token_EOF:
+ return;
}
+ String p = token_to_string(f->curr_token);
+ syntax_error(prev_token, "Expected ';', got %.*s", LIT(p));
fix_advance_to_next_stmt(f);
}
@@ -4590,7 +4573,7 @@ Ast *parse_stmt(AstFile *f) {
case Token_Semicolon:
s = ast_empty_stmt(f, token);
- advance_token(f);
+ expect_semicolon(f, nullptr);
return s;
}