asar
asar copied to clipboard
Macro parameter identifier parsing appears too eager
trafficstars
assert 0 <= 1, "We prove that 1 > 0, or maybe 1 == 0."
macro foobuz()
assert 0 <= 1, "Yes, 0 <= 1. Duh."
endmacro
macro footgun()
assert 0 <= 1, "Well, 1 > 0, but..."
endmacro
%foobuz()
%footgun()
This throws an error when invoking %footgun() that there is an "Invalid macro parameter name." It seems to be interpreting <= 1, "Well, 1 > as a parameter despite the vastly different contexts. Similar code written for 1.81 didn't run into this issue. I've encountered this happening on strings that contain < and > with unrelated symbols in the middle as well, so my assumption is detection of macro parameters in strings is far too eager than it was in 1.81.
Tested on both randombot and linux on version 1.91.