From 9553bc3689583158d044c82a3fd75248114f2291 Mon Sep 17 00:00:00 2001 From: Jeroen van Rijn Date: Sat, 17 Aug 2024 17:25:52 +0200 Subject: [PATCH] If missing type is newline, print "newline", not \n Turns: W:/Odin/bug/bug.odin(3:27) Syntax Error: Expected a type, got ' ' Storage :: distinct map[] Into: W:/Odin/bug/bug.odin(3:27) Syntax Error: Expected a type, got newline Storage :: distinct map[] --- src/parser.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/parser.cpp b/src/parser.cpp index aba2b8276..5796012d9 100644 --- a/src/parser.cpp +++ b/src/parser.cpp @@ -3560,7 +3560,12 @@ gb_internal Ast *parse_type(AstFile *f) { } else { token = advance_token(f); } - syntax_error(token, "Expected a type, got '%.*s'", LIT(prev_token.string)); + String prev_token_str = prev_token.string; + if (prev_token_str == str_lit("\n")) { + syntax_error(token, "Expected a type, got newline"); + } else { + syntax_error(token, "Expected a type, got '%.*s'", LIT(prev_token_str)); + } return ast_bad_expr(f, token, f->curr_token); } else if (type->kind == Ast_ParenExpr && unparen_expr(type) == nullptr) {