mirror of
https://github.com/netwide-assembler/nasm.git
synced 2024-11-21 03:14:19 +08:00
36206cd378
The NASM 2.09 preprocessor allows some illogical constructs, but which unfortunately has been found in real code in the field. We need a compatibility solution or a pragma before we can avoid that. However, we need the other features in NASM 2.10 to come out, so revert the preprocessor changes for now. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
96 lines
2.2 KiB
Plaintext
96 lines
2.2 KiB
Plaintext
## --------------------------------------------------------------------------
|
|
##
|
|
## Copyright 1996-2010 The NASM Authors - All Rights Reserved
|
|
## See the file AUTHORS included with the NASM distribution for
|
|
## the specific copyright holders.
|
|
##
|
|
## Redistribution and use in source and binary forms, with or without
|
|
## modification, are permitted provided that the following
|
|
## conditions are met:
|
|
##
|
|
## * Redistributions of source code must retain the above copyright
|
|
## notice, this list of conditions and the following disclaimer.
|
|
## * Redistributions in binary form must reproduce the above
|
|
## copyright notice, this list of conditions and the following
|
|
## disclaimer in the documentation and/or other materials provided
|
|
## with the distribution.
|
|
##
|
|
## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
|
|
## CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
|
|
## INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
|
## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
|
## DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
|
## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
|
## NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
|
## LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
|
## HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
|
## CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
|
|
## OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
|
|
## EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
##
|
|
## --------------------------------------------------------------------------
|
|
|
|
#
|
|
# A * at the end indicates a condition; the list of conditions are
|
|
# on lines starting with *; the negatives are auto-generated
|
|
#
|
|
*
|
|
*ctx
|
|
*def
|
|
*empty
|
|
*env
|
|
*id
|
|
*idn
|
|
*idni
|
|
*macro
|
|
*num
|
|
*str
|
|
*token
|
|
%arg
|
|
%assign
|
|
%clear
|
|
%define
|
|
%defstr
|
|
%deftok
|
|
%depend
|
|
%elif*
|
|
%else
|
|
%endif
|
|
%endm
|
|
%endmacro
|
|
%endrep
|
|
%error
|
|
%exitmacro
|
|
%exitrep
|
|
%fatal
|
|
%iassign
|
|
%idefine
|
|
%idefstr
|
|
%ideftok
|
|
%if*
|
|
%imacro
|
|
%irmacro
|
|
%include
|
|
%ixdefine
|
|
%line
|
|
%local
|
|
%macro
|
|
%pathsearch
|
|
%pop
|
|
%push
|
|
%rep
|
|
%repl
|
|
%rmacro
|
|
%rotate
|
|
%stacksize
|
|
%strcat
|
|
%strlen
|
|
%substr
|
|
%undef
|
|
%unimacro
|
|
%unmacro
|
|
%use
|
|
%warning
|
|
%xdefine
|