From e419a527a1212123946e53adaaea01df0c5605c3 Mon Sep 17 00:00:00 2001 From: Bruce Hill Date: Sun, 21 Sep 2025 12:04:38 -0400 Subject: Add enum scope when declaring a variable --- src/compile/promotions.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'src/compile/promotions.c') diff --git a/src/compile/promotions.c b/src/compile/promotions.c index 6595e5aa..26f3af9f 100644 --- a/src/compile/promotions.c +++ b/src/compile/promotions.c @@ -114,6 +114,11 @@ bool promote(env_t *env, ast_t *ast, Text_t *code, type_t *actual, type_t *neede public Text_t compile_to_type(env_t *env, ast_t *ast, type_t *t) { assert(!is_incomplete_type(t)); + + if (t->tag == EnumType) { + env = with_enum_scope(env, t); + } + if (ast->tag == Int && is_numeric_type(non_optional(t))) { return compile_int_to_type(env, ast, t); } else if (ast->tag == Num && t->tag == NumType) { -- cgit v1.2.3