| %define EMPTY |
| |
| %macro bar 1 |
| db "bar", __LINE__, %0, %1 |
| %endmacro |
| |
| %macro baz 2 |
| db "baz", __LINE__, %0, %1, %2 |
| %endmacro |
| |
| %macro nothing 0 |
| db "nothing", __LINE__, %0 |
| %endmacro |
| |
| %macro xyzzy 1-2 |
| db "xyzzy", __LINE__, %0, %1, %2, %3 |
| %endmacro |
| |
| %macro vararg 0-* |
| db "vararg", __LINE__, %0 |
| %assign %%i 1 |
| %rep %0 |
| db "vararg arg ", %%i, %1 |
| %rotate 1 |
| %assign %%i %%i + 1 |
| %endrep |
| %endmacro |
| |
| %macro defargs 1-5 def2, def3, def4, def5 |
| db "defargs", __LINE__, %0, %1, %2, %3, %4, %5 |
| %endmacro |
| |
| %macro ivar 1 |
| vararg %1 |
| %endmacro |
| |
| %macro foo 1-2 |
| db "foo", __LINE__, %0, %1, %2 |
| bar %2 |
| bar {%2} |
| bar %2, |
| bar {%2}, |
| baz %1,%2 |
| baz {%1},{%2} |
| nothing %1 |
| nothing %2 |
| xyzzy "meep",%1,%2, |
| xyzzy "meep","meep",%1,%2 |
| xyzzy "alpha","bravo", |
| xyzzy "with","empty",EMPTY |
| %endmacro |
| |
| %macro orange 1 |
| db %{1:1} |
| %endmacro |
| |
| %macro prange1 2-3 |
| db %{1:2}, 0%3 |
| %endmacro |
| |
| %macro prange2 1-3 'two', 'three' |
| db %{1:3} |
| %endmacro |
| |
| db 4, |
| nothing |
| nothing 1 |
| nothing ; foo |
| nothing EMPTY |
| |
| flup: foo 1,2 |
| foo 3 |
| bar |
| bar EMPTY |
| foo 6, |
| foo 6, ; With space/comment |
| foo 6,EMPTY |
| baz 8,EMPTY |
| foo 6,{} |
| foo ,5 |
| |
| xyzzy 13,14,15, |
| xyzzy 13,14,15,EMPTY |
| xyzzy 20,21 |
| xyzzy 22,23, |
| xyzzy 24,25,EMPTY |
| xyzzy 26,27,, |
| xyzzy 28,29,EMPTY,EMPTY |
| |
| vararg |
| vararg EMPTY |
| vararg , |
| vararg 10 |
| vararg 11, |
| vararg 12,EMPTY |
| vararg 13,14,15, |
| vararg 13,14,15,EMPTY |
| vararg 20,21 |
| vararg 22,23, |
| vararg 24,25,EMPTY |
| vararg 26,27,, |
| vararg 28,29,EMPTY,EMPTY |
| |
| ivar {} |
| ivar {EMPTY} |
| ivar EMPTY |
| ivar , |
| ivar {,} |
| ivar {60} |
| ivar {61,} |
| ivar {62,EMPTY} |
| ivar {63,64,65,} |
| ivar {63,64,65,EMPTY} |
| ivar {70,71} |
| ivar {72,73,} |
| ivar {74,75,EMPTY} |
| ivar {76,77,,} |
| ivar {78,79,EMPTY,EMPTY} |
| |
| defargs EMPTY |
| defargs 91 |
| defargs 91,92 |
| defargs 91,92,93 |
| defargs 91,92,93,94 |
| defargs 91,92,93,94,95 |
| defargs , |
| defargs 91, |
| defargs 91,92, |
| defargs 91,92,93, |
| defargs 91,92,93,94, |
| defargs 91,92,93,94,95, |
| |
| prange1 101 |
| prange1 101, 102 |
| prange1 101, 102, 103 |
| prange2 121 |
| prange2 121, 122 |
| prange2 121, 122, 123 |
| prange2 {121} |
| prange2 {121,121} |
| prange2 {121},{122} |
| prange2 {121},122,{123} |
| prange2 121,{122,122},123 |
| |
| orange 130 |
| orange 130, 131 |
| orange {130, 131} |