From 4615e63f51e677beb44bfeddc4acc5cdaf0d106f Mon Sep 17 00:00:00 2001 From: luboslenco Date: Wed, 30 Sep 2026 14:24:15 +0200 Subject: [PATCH] libs: minic fixes --- base/sources/libs/minic.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/base/sources/libs/minic.c b/base/sources/libs/minic.c index df881bfde..e186846a1 100644 --- a/base/sources/libs/minic.c +++ b/base/sources/libs/minic.c @@ -2248,10 +2248,19 @@ static void minic_scan_top_level(minic_comp_t *c, bool globals) { } minic_ctype_t type; if (!minic_parse_type(c, &c->i, true, &type)) { + if (t != TOK_SEMICOLON) { + minic_error(c, "unexpected token outside of a function"); + return; + } minic_next(c); continue; } if (minic_cur(c) != TOK_IDENT) { + // Qualifiers such as const are parsed as an opaque type, the declared type follows + if (!minic_tok_is_type(minic_cur(c)) && minic_cur(c) != TOK_STRUCT) { + minic_error(c, "statement outside of a function"); + return; + } continue; } if (minic_peek(c, 1) != TOK_LPAREN) {