mirror of
https://github.com/netwide-assembler/nasm.git
synced 2025-03-07 17:46:58 +08:00
53 lines
941 B
NASM
53 lines
941 B
NASM
|
%defalias foo bar
|
||
|
%ifdef foo
|
||
|
%error "foo should not be defined here!"
|
||
|
%endif
|
||
|
|
||
|
%define foo 33
|
||
|
%ifndef foo
|
||
|
%error "foo should be defined here!"
|
||
|
%endif
|
||
|
%ifndef bar
|
||
|
%error "bar should be defined here!"
|
||
|
%endif
|
||
|
%if bar != 33
|
||
|
%error "bar should have the value 33 here"
|
||
|
%endif
|
||
|
|
||
|
%define bar 34
|
||
|
%if foo != 34
|
||
|
%error "foo should have the value 34 here"
|
||
|
%endif
|
||
|
|
||
|
%undef foo
|
||
|
%ifdef foo
|
||
|
%error "foo should not be defined here!"
|
||
|
%endif
|
||
|
%ifdef bar
|
||
|
%error "bar should not be defined here!"
|
||
|
%endif
|
||
|
|
||
|
%ifndefalias foo
|
||
|
%error "foo was removed as an alias!"
|
||
|
%endif
|
||
|
|
||
|
%define bar 35
|
||
|
%if foo != 35
|
||
|
%error "foo should have the value 35 here"
|
||
|
%endif
|
||
|
|
||
|
%define foo 36
|
||
|
%if bar != 36
|
||
|
%error "bar should have the value 36 here"
|
||
|
%endif
|
||
|
|
||
|
%undefalias foo
|
||
|
%ifdef foo
|
||
|
%error "foo is still defined after %undefalias"
|
||
|
%elifdefalias foo
|
||
|
%error "foo is undefined, but still an alias"
|
||
|
%endif
|
||
|
%ifndef bar
|
||
|
%error "bar disappeared after %undefalias foo"
|
||
|
%endif
|