Test programs should not write anything to the standard output. They
should return 0 if the test succeeds, nonzero otherwise, so that success
can be distinguished easily from a core dump or other failure;
segmentation violations and other failures produce a nonzero exit
status. Test programs should exit
, not return
, from
main
, because on some systems (old Suns, at least) the argument
to return
in main
is ignored.
Test programs can use #if
or #ifdef
to check the values of
preprocessor macros defined by tests that have already run. For
example, if you call AC_HEADER_STDC
, then later on in
`configure.in' you can have a test program that includes an ANSI C
header file conditionally:
#if STDC_HEADERS # include <stdlib.h> #endif
If a test program needs to use or create a data file, give it a name
that starts with `conftest', such as `conftestdata'. The
configure
script cleans up by running `rm -rf conftest*'
after running test programs and if the script is interrupted.
Go to the first, previous, next, last section, table of contents.