For some reason, these warnings are not included in -W -Wall -pedantic, at least
not on gcc 14.2.1:
-Wstrict-prototypes
-Wmissing-prototypes
-Wmissing-declarations
This caused a missing prototype error (because nasm_note[f]()
prototypes were missing from include/error.h) to get missed when
compiling with --enable-werror, which is ironic at best.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Apparently -Wall -W doesn't enable -Wmissing-prototypes for some
bizarre reason.
This allowed this to slink through unnoticed.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
This differs from a plain old comment in the following ways:
1. It is optionally macro-expanded;
2. It has a dash prefix;
3. It can be used inside .nolist macros.
Suggested-by: <pushbx@ulukai.org>
Resolves: https://bugzilla.nasm.us/show_bug.cgi?id=3392915
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Make the source code for the documentation a little easier to deal
with by breaking it into individual chapter files. Add support to
rdsrc.pl for auto-generating dependencies.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Don't do an out-of-range check for the operands, even
temporarily. Setting the operand pointer to NULL will help catch
errors when accessing non-operands, too.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
The handling of "path" and "fullpath" was inconsistent, resulting in a
lot of missing dependencies regardless if a separate build directory
was in use.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
At least three files (asm/assemble.c, disasm/disasm.c, and
x86/insns.pl) depend on the bytecode defintions. It makes a lot more
sense for them to live in an explicit documentation file in the x86/
directory.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Provide common indentation configuration for the source files.
For more information, visit https://editorconfig.org/.
Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
Update and improve the build from source documentation, including add
an auto-generated list of Perl build dependencies.
Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
There is no point in using "only" unless there is another
qualifier. The "only" is specifically to prevent older parsers from
unconditionally applying a section with qualifiers.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
The help output has gotten way too long to be shown on a single
command line. It can of course be piped to a pager, but to be a little
nicer to the user, break it up into subtopics that can be individually
displayed. --help all (-h all) can still show all the help information
as a single data dump.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Add Obsoletes tags: nasm-rdoff; old nasm-doc.
Add a few BuildRequires: tags.
Update License: tag to match SPDX.
Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
PA_ADD_LANGFLAGS() was broken, resulting in among other things
--enable-lto not working.
Make autogen.sh fail if aclocal return error.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
This target exists; use it, instead of effectively open-coding it into
the release script, causing bit rot and testing problems.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Assume module names (for "use") always start with a capital letter,
and that anything that doesn't is a pragma.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Don't break Makefile.dep generation if run from a separate build
directory.
config/unconfig.h is a bit special; it is kept in the repository for
the benefit of non-configure users. Therefore, don't have "make
spotless" delete it.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Try to better sort out the necessary dependencies for warning
generation.
Fix regex for cleaning up nasmdoc markup: nasmdoc markup does not
nest, although it may include \} sequences.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>