mirror of
https://github.com/netwide-assembler/nasm.git
synced 2025-09-22 10:43:39 -04:00
Check a few more corner cases, including $ and $$, as well as parsing in the assembler (dd) and the preprocessor (%assign). Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
38 lines
398 B
NASM
38 lines
398 B
NASM
[dollarhex off]
|
|
|
|
section $$$bar
|
|
global $foo, $$foo, $$$foo, $3
|
|
_start:
|
|
mov eax,$$foo
|
|
$foo:
|
|
nop
|
|
$$foo:
|
|
nop
|
|
nop
|
|
$$$foo:
|
|
nop
|
|
nop
|
|
nop
|
|
$3:
|
|
nop
|
|
nop
|
|
nop
|
|
nop
|
|
|
|
%macro diff 1
|
|
%assign bar %1
|
|
mov eax, %1
|
|
mov ecx, bar
|
|
%endmacro
|
|
|
|
diff $3 - $
|
|
diff $3 - $
|
|
diff $3 - $$
|
|
diff $3 - $$
|
|
diff $foo - $
|
|
diff $foo - $$
|
|
diff $$foo - $foo
|
|
diff $$$foo - $$foo
|
|
diff $$$foo - $foo
|
|
diff $$$foo - foo
|