More specific error message when an expression is not constant because a symbol is undefined

This commit is contained in:
Rangi42
2025-08-24 22:02:41 -04:00
parent 8564df51e5
commit c578a7b761
8 changed files with 19 additions and 18 deletions

View File

@@ -1,3 +1,3 @@
error: Expected constant expression: `UnDeFiNeD` is not constant at assembly time
error: Expected constant expression: undefined symbol `UnDeFiNeD`
at compound-assignment.asm(35)
Assembly aborted with 1 error!

View File

@@ -1,4 +1,4 @@
error: Expected constant expression: `unknown` is not constant at assembly time
error: Expected constant expression: undefined symbol `unknown`
at ds-bad.asm(3)
warning: Expression must be 8-bit; use `LOW()` to force 8-bit [-Wtruncation]
at ds-bad.asm(4)

View File

@@ -1,6 +1,6 @@
error: Base value must be equal to $FF00 for [$FF00+C]
at ff00+c-bad.asm(8)
error: Expected constant expression: `xyz` is not constant at assembly time
error: Expected constant expression: undefined symbol `xyz`
at ff00+c-bad.asm(9)
error: Base value must be equal to $FF00 for [$FF00+C]
at ff00+c-bad.asm(9)

View File

@@ -1,6 +1,6 @@
warning: Test #1: Compile-time constant [-Wuser]
at isconst.asm::test_expr(10) <- isconst.asm(14)
error: Expected constant expression: `UnknownLabel` is not constant at assembly time
error: Expected constant expression: undefined symbol `UnknownLabel`
at isconst.asm::test_expr(9) <- isconst.asm(15)
warning: Test #3: Compile-time constant [-Wuser]
at isconst.asm::test_expr(10) <- isconst.asm(21)

View File

@@ -2,25 +2,25 @@ error: Expected constant expression: `Known` is not constant at assembly time
at label-diff.asm::print_diff(19) <- label-diff.asm(28)
error: Expected constant expression: `Known` is not constant at assembly time
at label-diff.asm::print_diff(20) <- label-diff.asm(28)
error: Expected constant expression: `Unknown` is not constant at assembly time
error: Expected constant expression: undefined symbol `Unknown`
at label-diff.asm::print_diff(19) <- label-diff.asm(30)
error: Expected constant expression: `Unknown` is not constant at assembly time
error: Expected constant expression: undefined symbol `Unknown`
at label-diff.asm::print_diff(20) <- label-diff.asm(30)
error: Expected constant expression: `Known` is not constant at assembly time
at label-diff.asm::print_diff(19) <- label-diff.asm(32)
error: Expected constant expression: `Unknown` is not constant at assembly time
error: Expected constant expression: undefined symbol `Unknown`
at label-diff.asm::print_diff(20) <- label-diff.asm(32)
error: Expected constant expression: `Unknown` is not constant at assembly time
error: Expected constant expression: undefined symbol `Unknown`
at label-diff.asm::print_diff(19) <- label-diff.asm(34)
error: Expected constant expression: `Unknown2` is not constant at assembly time
error: Expected constant expression: undefined symbol `Unknown2`
at label-diff.asm::print_diff(20) <- label-diff.asm(34)
error: Expected constant expression: `Known` is not constant at assembly time
at label-diff.asm::print_diff(19) <- label-diff.asm(41)
error: Expected constant expression: `Known` is not constant at assembly time
at label-diff.asm::print_diff(20) <- label-diff.asm(41)
error: Expected constant expression: `Unknown` is not constant at assembly time
error: Expected constant expression: undefined symbol `Unknown`
at label-diff.asm::print_diff(19) <- label-diff.asm(43)
error: Expected constant expression: `Unknown` is not constant at assembly time
error: Expected constant expression: undefined symbol `Unknown`
at label-diff.asm::print_diff(20) <- label-diff.asm(43)
error: Expected constant expression: PC is not constant at assembly time
at label-diff.asm::print_diff(19) <- label-diff.asm(54)
@@ -30,7 +30,7 @@ error: Expected constant expression: `Known` is not constant at assembly time
at label-diff.asm::print_diff(19) <- label-diff.asm(56)
error: Expected constant expression: PC is not constant at assembly time
at label-diff.asm::print_diff(20) <- label-diff.asm(56)
error: Expected constant expression: `Unknown` is not constant at assembly time
error: Expected constant expression: undefined symbol `Unknown`
at label-diff.asm::print_diff(19) <- label-diff.asm(58)
error: Expected constant expression: PC is not constant at assembly time
at label-diff.asm::print_diff(20) <- label-diff.asm(58)

View File

@@ -16,7 +16,7 @@ error: Strings as numbers must be a single charmap unit
at raw-string-symbol-errors.asm(17)
error: `m` is not a numeric symbol
at raw-string-symbol-errors.asm(18)
error: Expected constant expression: `u` is not constant at assembly time
error: Expected constant expression: undefined symbol `u`
at raw-string-symbol-errors.asm(19)
error: `n` is not a string symbol
at raw-string-symbol-errors.asm(21)

View File

@@ -2,13 +2,13 @@ error: Undefined macro `m`; it was purged
at use-purged-symbol.asm(6)
error: Bracketed symbol `argi` does not exist; it was purged
at use-purged-symbol.asm::m2(10) <- use-purged-symbol.asm(13)
error: Expected constant expression: `argi` is not constant at assembly time; it was purged
error: Expected constant expression: undefined symbol `argi`; it was purged
at use-purged-symbol.asm(15)
error: Interpolated symbol `argi` does not exist; it was purged
at use-purged-symbol.asm(17)
warning: Purging an exported symbol `Label` [-Wpurge]
at use-purged-symbol.asm(20)
error: Expected constant expression: `Label` is not constant at assembly time; it was purged
error: Expected constant expression: undefined symbol `Label`; it was purged
at use-purged-symbol.asm(21)
error: Expected constant expression: `Label`'s bank is not known; it was purged
at use-purged-symbol.asm(22)