* doc/autoconf.texi (C Compiler): Warn about #error. Follows up

on a patch proposed by Ralf Wildenhues.
This commit is contained in:
Paul Eggert 2006-04-06 07:58:20 +00:00
parent 6df53aa716
commit 119f63f545
2 changed files with 14 additions and 0 deletions

View File

@ -1,3 +1,8 @@
2006-04-06 Paul Eggert <eggert@cs.ucla.edu>
* doc/autoconf.texi (C Compiler): Warn about #error. Follows up
on a patch proposed by Ralf Wildenhues.
2006-04-05 Paul Eggert <eggert@cs.ucla.edu>
* lib/autoconf/status.m4: Replace <space>''<tab> with

View File

@ -5795,6 +5795,15 @@ This can cause problems if you observe the output of the compiler to
detect failures. Invoking @samp{cc -c a.c && cc -c b.c && cc -o c a.o
b.o} solves the issue.
@item Don't rely on @code{#error} failing
The @sc{irix} C compiler does not fail when #error is preprocessed; it
simply emits a diagnostic and continues, exiting successfully. So,
instead of an error directive like @code{#error "Unsupported word size"}
it is more portable to use an invalid directive like @code{#Unsupported
word size} in Autoconf tests. In ordinary source code, @code{#error} is
OK, since installers with inadequate compilers like @sc{irix} can simply
examine these compilers' diagnostic output.
@item Don't rely on correct @code{#line} support
On Solaris 8, @command{c89} (Sun WorkShop 6 update 2 C 5.3 Patch
111679-08 2002/05/09)) diagnoses @code{#line} directives whose line