Fix BANK(@) discrepancy within LOAD blocks (#2149)

RGBASM and RGBLINK disagreed on which section to consider `@` to be in;
we have decided that the latter is correct.

The `assume` change is known to be suspicious; for more discussion, see
https://github.com/gbdev/rgbds/pull/2149#discussion_r4106902830
This commit is contained in:
Rangi authored and GitHub committed 2026-09-25 19:18:52 +02:00
1 parent dc701294f8
commit 646cb05faf
6 files changed
+35 -10

No files matched your search

+31
View File
@@ -0,0 +1,31 @@
SECTION "rom", ROMX, BANK[1]
xLabel:
assert @ == xLabel
static_assert BANK(@) == BANK(xLabel)
static_assert SECTION(@) === SECTION(xLabel)
ds $3000, $42
LOAD "ram", WRAMX, BANK[2]
wLabel::
assert @ == wLabel
static_assert BANK(@) == BANK(wLabel)
static_assert SECTION(@) === SECTION(wLabel)
ds $1000, $42
ENDL
SECTION "floating rom", ROMX
xLabel2:
assert @ == xLabel2
assert BANK(@) == BANK(xLabel2)
static_assert SECTION(@) === SECTION(xLabel2)
ds $3000, $42
LOAD "floating ram", WRAMX
wLabel2::
assert @ == wLabel2
assert BANK(@) == BANK(wLabel2)
static_assert SECTION(@) === SECTION(wLabel2)
ds $1000, $42
ENDL