Could you implement, in addition to "req" and "vararg", the "rest" macro argument type, like one in TASM?
As it's described in TASM manual, "Actual argument consists of the rest of the macro invocation, interpreted as raw text".
Here is how the TASM manual explains "VARARG":
"Actual argument consists of the rest of the macro invocation, interpreted as a list of arguments. Commas and angle brackets are added to ensure this interpretation."
MASM manual seems to agree :
"the last four are received as the single argument <6, 7, a, b>. This is the same format expected by the FOR directive."
But whether this (angle brackets added around the argument string) is reality, or just usual Microsoft docs' "veracity", can be determined only by testing it on a live MASM. :-)
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
In what way differs REST from VARARG?
Here is how the TASM manual explains "VARARG":
"Actual argument consists of the rest of the macro invocation, interpreted as a list of arguments. Commas and angle brackets are added to ensure this interpretation."
MASM manual seems to agree :
"the last four are received as the single argument <6, 7, a, b>. This is the same format expected by the FOR directive."
But whether this (angle brackets added around the argument string) is reality, or just usual Microsoft docs' "veracity", can be determined only by testing it on a live MASM. :-)