xolint - Man Page
detect errors in programs using xo_emit(3)
Synopsis
Description
xolint is a tool for reporting common mistakes in format strings in source code that invokes xo_emit(3). It allows these errors to be diagnosed at build time, rather than waiting until runtime.
xolint takes one or more C files as arguments, and reports error, warning, or informational messages as needed.
- -c
Invoke 'cpp' against the input file
- -C <flags>
Flags that are passed to 'cpp'
- -d
Enable debug output
- -D
Generate documentation for all xolint messages
- -I
Generate a table of
xo_info_t
structures.- -p
Print the offending lines after the error message is displayed
- -V
Do not report errors, but instead print a complete list of all field names, sorted alphabetically. The output can help spot inconsistencies and spelling errors.
- -X
Extract samples from xolint, suitable for internal testing.
The output message contains the source filename and line number, the class of the message, the message, and, if -p is given, the line that contains the error:
% xolint -t xolint.c xolint.c: 16: error: anchor format should be "%d" 16 xo_emit("{[:/%s}");
See Also
History
The libxo library first appeared in FreeBSD 11.0.
Authors
libxo was written by Phil Shafer <phil@freebsd.org>.
Additional Documentation
FreeBSD uses libxo version 1.6.0. Complete documentation can be found on github:
https://juniper.github.io/libxo/1.6.0/html/index.html
libxo lives on github as:
https://github.com/Juniper/libxo
The latest release of libxo is available at:
https://github.com/Juniper/libxo/releases
History
The libxo library was added in FreeBSD 11.0.
Author
Phil Shafer