Reinstate PUSHS clearing the SECTION scope (#870)

* Reinstate PUSHS clearing the SECTION scope

Otherwise you can use `PUSHS` to simulate the old `ds -21`, and possibly cause bugs

* Have PUSHS push LOAD block state as well

It does not make sense not to, and coud cause bugs.
This commit is contained in:
Eldred Habert
2021-05-01 23:30:09 +02:00
committed by GitHub
parent 3ffdd50909
commit 21b59c4651
9 changed files with 26 additions and 6 deletions

View File

@@ -1,2 +1,2 @@
FATAL: align-pc-outside-section.asm(1):
Code generation before SECTION directive
Cannot output data outside of a SECTION

View File

@@ -1,4 +1,4 @@
ERROR: pops-restore-no-section.asm(9):
Label "DisallowedContent" created outside of a SECTION
FATAL: pops-restore-no-section.asm(10):
Code generation before SECTION directive
Cannot output data outside of a SECTION

5
test/asm/pushs.asm Normal file
View File

@@ -0,0 +1,5 @@
SECTION "This is invalid", ROM0
ds 10, 42
PUSHS
; We should be outside of section scope now
db 69

2
test/asm/pushs.err Normal file
View File

@@ -0,0 +1,2 @@
FATAL: pushs.asm(5):
Cannot output data outside of a SECTION

0
test/asm/pushs.out Normal file
View File