path: root/doc/nasmdoc.src
diff options
authorH. Peter Anvin (Intel) <hpa@zytor.com>2018-12-13 21:53:31 -0800
committerH. Peter Anvin (Intel) <hpa@zytor.com>2018-12-13 21:53:31 -0800
commit723ab481a6550454a6f834bb854e751744ca340a (patch)
treecb217692a76d3dcab83c7ad922e3adca9006dccd /doc/nasmdoc.src
parent6bde2ed8806b3e53657d46b61ee79d7afe5c2e13 (diff)
warnings: define warning classes at point of usemkwarnings
It is extremely desirable to allow the user fine-grained control of warnings, but this has been complicated by the fact that a warning class has had to be defined in no less than three places (error.h, error.c, nasmdoc.src) before it can be used in source code. Instead, use a script to define these via magic comments at the point of use. This hopefully will encourage creating new classes as needed. Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Diffstat (limited to 'doc/nasmdoc.src')
1 files changed, 1 insertions, 76 deletions
diff --git a/doc/nasmdoc.src b/doc/nasmdoc.src
index f1abc507..7c7a75aa 100644
--- a/doc/nasmdoc.src
+++ b/doc/nasmdoc.src
@@ -809,82 +809,7 @@ disable it by \c{-w-orphan-labels}.
The current \i{warning classes} are:
-\b \i\c{other} specifies any warning not otherwise specified in any
-class. Enabled by default.
-\b \i\c{macro-params} covers warnings about \i{multi-line macros}
-being invoked with the wrong number of parameters. Enabled by default;
-see \k{mlmacover} for an example of why you might want to disable it.
-\b \i\c{macro-selfref} warns if a macro references itself. Disabled by
-\b \i\c{macro-defaults} warns when a macro has more default parameters
-than optional parameters. Enabled by default; see \k{mlmacdef} for why
-you might want to disable it.
-\b \i\c{orphan-labels} covers warnings about source lines which
-contain no instruction but define a label without a trailing colon.
-NASM warns about this somewhat obscure condition by default;
-see \k{syntax} for more information.
-\b \i\c{number-overflow} covers warnings about numeric constants which
-don't fit in 64 bits. Enabled by default.
-\b \i\c{gnu-elf-extensions} warns if 8-bit or 16-bit relocations
-are used in \c{-f elf} format. The GNU extensions allow this.
-Disabled by default.
-\b \i\c{float-overflow} warns about floating point overflow.
-Enabled by default.
-\b \i\c{float-denorm} warns about floating point denormals.
-Disabled by default.
-\b \i\c{float-underflow} warns about floating point underflow.
-Disabled by default.
-\b \i\c{float-toolong} warns about too many digits in floating-point numbers.
-Enabled by default.
-\b \i\c{user} controls \c{%warning} directives (see \k{pperror}).
-Enabled by default.
-\b \i\c{lock} warns about \c{LOCK} prefixes on unlockable instructions.
-Enabled by default.
-\b \i\c{hle} warns about invalid use of the HLE \c{XACQUIRE} or \c{XRELEASE}
-Enabled by default.
-\b \i\c{bnd} warns about ineffective use of the \c{BND} prefix when a relaxed
-form of jmp instruction becomes jmp short form.
-Enabled by default.
-\b \i\c{zext-reloc} warns that a relocation has been zero-extended due
-to limitations in the output format. Enabled by default.
-\b \i\c\{ptr} warns about keywords used in other assemblers that might
-indicate a mistake in the source code. Currently only the MASM
-\c{PTR} keyword is recognized. Enabled by default.
-\b \i\c{bad-pragma} warns about a malformed or otherwise unparsable
-\c{%pragma} directive. Disabled by default.
-\b \i\c{unknown-pragma} warns about an unknown \c{%pragma} directive.
-This is not yet implemented. Disabled by default.
-\b \i\c{not-my-pragma} warns about a \c{%pragma} directive which is
-not applicable to this particular assembly session. This is not yet
-implemented. Disabled by default.
-\b \i\c{unknown-warning} warns about a \c{-w} or \c{-W} option or a
-\c{[WARNING]} directive that contains an unknown warning name or is
-otherwise not possible to process. Disabled by default.
-\b \i\c{all} is an alias for \e{all} suppressible warning classes.
-Thus, \c{-w+all} enables all available warnings, and \c{-w-all}
-disables warnings entirely (since NASM 2.13).
+\& warnings.src
Since version 2.00, NASM has also supported the \c{gcc}-like syntax
\c{-Wwarning-class} and \c{-Wno-warning-class} instead of