Implement ? suffix to "quiet" a context and exclude it from backtraces (#1800)

This commit is contained in:
Rangi
2025-08-18 21:34:58 -04:00
committed by GitHub
parent 77a105e189
commit b7e0783ae7
32 changed files with 392 additions and 139 deletions

View File

@@ -1 +1 @@
-B 5
-B 5 -B no-collapse

View File

@@ -1 +1 @@
-B 0
-B no-collapse

View File

@@ -1,5 +1,5 @@
assert 1 +# 1 == 2
assert 2 ?<EFBFBD>* 2 == 4
assert 3 **?<EFBFBD>?##?? 3 == 27
assert 2 #<EFBFBD>* 2 == 4
assert 3 **#<EFBFBD>}<EFBFBD># 3 == 27
charmap "x", 4
assert 4 <<#<EFBFBD>'x' == 64

View File

@@ -1,13 +1,11 @@
error: Invalid character '#'
at garbage_sequence.asm(1)
error: Invalid characters '?', 0xFF (is the file UTF-8?)
error: Invalid characters '#', 0xFF (is the file UTF-8?)
at garbage_sequence.asm(2)
error: Invalid characters '?', 0xFF, '?' (is the file UTF-8?)
error: Invalid characters '#', 0xFF, '}', 0xFF (is the file UTF-8?)
at garbage_sequence.asm(3)
error: Invalid character '#'
at garbage_sequence.asm(3)
error: Invalid characters '#', '?', '?'
at garbage_sequence.asm(3)
error: Invalid characters '#', 0xFF (is the file UTF-8?)
at garbage_sequence.asm(5)
Assembly aborted with 6 errors!
Assembly aborted with 5 errors!

View File

@@ -1,10 +1,10 @@
error: syntax error, unexpected label, expecting symbol
at lex-label.asm(1)
error: syntax error, unexpected label, expecting symbol
error: syntax error, unexpected label, expecting ? or symbol
at lex-label.asm(3)
error: syntax error, unexpected ENDM
at lex-label.asm(4)
error: syntax error, unexpected label, expecting symbol
error: syntax error, unexpected label, expecting ? or symbol
at lex-label.asm(6)
error: syntax error, unexpected ENDR
at lex-label.asm(7)

View File

@@ -0,0 +1,20 @@
macro mac
warn "from macro"
endm
mac ; normal
macro? quiet
warn "from quiet macro"
endm
quiet
rept? 1
warn "from quiet rept"
endr
for? x, 1
warn "from quiet for (x={d:x})"
endr
include? "loud-backtrace.inc"
macro loud
warn "from loud macro"
endm
mac?

View File

@@ -0,0 +1,12 @@
warning: from macro [-Wuser]
at loud-backtrace.asm::mac(2) <- loud-backtrace.asm(4)
warning: from quiet macro [-Wuser]
at loud-backtrace.asm::quiet(7) <- loud-backtrace.asm(9)
warning: from quiet rept [-Wuser]
at loud-backtrace.asm::REPT~1(11) <- loud-backtrace.asm(10)
warning: from quiet for (x=0) [-Wuser]
at loud-backtrace.asm::REPT~1(14) <- loud-backtrace.asm(13)
warning: from quiet include [-Wuser]
at loud-backtrace.inc(1) <- loud-backtrace.asm(16)
warning: from macro [-Wuser]
at loud-backtrace.asm::mac(2) <- loud-backtrace.asm(20)

View File

@@ -0,0 +1 @@
-B all

View File

@@ -0,0 +1 @@
warn "from quiet include"

View File

@@ -0,0 +1,20 @@
macro mac
warn "from macro"
endm
mac ; normal
macro? quiet
warn "from quiet macro"
endm
quiet
rept? 1
warn "from quiet rept"
endr
for? x, 1
warn "from quiet for (x={d:x})"
endr
include? "quiet-backtrace.inc"
macro loud
warn "from loud macro"
endm
mac?

View File

@@ -0,0 +1,12 @@
warning: from macro [-Wuser]
at quiet-backtrace.asm::mac(2) <- quiet-backtrace.asm(4)
warning: from quiet macro [-Wuser]
at quiet-backtrace.asm(9)
warning: from quiet rept [-Wuser]
at quiet-backtrace.asm(11)
warning: from quiet for (x=0) [-Wuser]
at quiet-backtrace.asm(14)
warning: from quiet include [-Wuser]
at quiet-backtrace.asm(16)
warning: from macro [-Wuser]
at quiet-backtrace.asm(20)

View File

@@ -0,0 +1 @@
warn "from quiet include"

View File

@@ -1 +1 @@
-B 0
-B no-collapse