- Empty struct after @if processing was not detected, causing a crash instead of an error.

- Comparing an uint and int[<4>] was incorrectly assumed to be uint compared to int, causing a crash instead of an error.
- When an `int[*][6]` was given too few values, the compiler would assert instead of giving an error.
This commit is contained in:
Christoffer Lerno
2026-01-19 15:01:08 +01:00
parent 0fea6c6056
commit 4512c6446d
11 changed files with 60 additions and 17 deletions

View File

@@ -0,0 +1,16 @@
import std;
const bool FOO = false;
struct Foo
{
struct
{
struct // #error: members exist for this struct after processing
{
char d_pad0 @if(FOO);
}
}
}
fn void main()
{
Foo f;
}