diff options
| author | Faker-09 <shrybman@teksavvy.com> | 2026-01-29 11:35:24 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-01-29 11:35:24 -0500 |
| commit | 30ef01ee8d1175dc5a974d8bee62b7ea00651941 (patch) | |
| tree | cddb56cfe63f3752b8b7a8c314d9cc652f22ec28 /src/check_stmt.cpp | |
| parent | f6322b4b31fb0a5cc343d4bae31ebc09639e3403 (diff) | |
| parent | 70059b0fba3099d0d67232ed89c268710f435a36 (diff) | |
Merge branch 'odin-lang:master' into vet_flags
Diffstat (limited to 'src/check_stmt.cpp')
| -rw-r--r-- | src/check_stmt.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/check_stmt.cpp b/src/check_stmt.cpp index 835f0162a..2dc621a84 100644 --- a/src/check_stmt.cpp +++ b/src/check_stmt.cpp @@ -1027,7 +1027,9 @@ gb_internal void check_unroll_range_stmt(CheckerContext *ctx, Ast *node, u32 mod error(operand.expr, "Cannot iterate over '%s' of type '%s' in an '#unroll for' statement", s, t); gb_string_free(t); gb_string_free(s); - } else if (operand.mode != Addressing_Constant && unroll_count <= 0) { + } else if (operand.mode != Addressing_Constant && ( + unroll_count <= 0 && + compare_exact_values(Token_CmpEq, inline_for_depth, exact_value_i64(0)))) { error(operand.expr, "An '#unroll for' expression must be known at compile time"); } } |