incorrect configure test for "whether snprintf correctly terminates long strings"

John Spencer
Fri, 28 Sep 2012 12:26:50 -0000

checking whether snprintf correctly terminates long strings... no
configure: WARNING: ****** Your snprintf() function is broken, complain
to your vendor
configure:10176: checking whether snprintf correctly terminates long strings
conftest.c:181:2: error: implicit declaration of function 'exit'



the test (and others) use exit without including <stdlib.h>



this is a list of other such errors (misdetection of features due to
sloppy tests depending on implicit declarations to succeed):

configure:8862: checking whether struct dirent allocates space for d_name
conftest.c:88:2: error: implicit declaration of function 'exit'

configure:9899: checking if setresuid seems to work
conftest.c:164:2: error: implicit declaration of function 'setresuid'

configure:9954: checking if setresgid seems to work
conftest.c:166:2: error: implicit declaration of function 'setresgid'

configure:10345: checking for (overly) strict mkstemp
conftest.c:187:2: error: implicit declaration of function 'unlink'

configure:13142: checking for struct timespec
configure:13142: result: yes
configure:13194: gcc -o conftest -g -O2 -Wall -Wpointer-arith
-Wuninitialized -Wsign-com$
conftest.c:226:1: warning: return type defaults to 'int'
conftest.c: In function 'main':
conftest.c:237:2: warning: format '%lld' expects type 'long long
int',
but argument 4 has type 'long int'
conftest.c:239:3: error: implicit declaration of function 'exit'
conftest.c:239:3: warning: incompatible implicit declaration of built-in
function 'exit'

configure:15597: checking Discovering system mail directory
conftest.c:265:3: error: implicit declaration of function 'exit'

configure:15959: checking for "/etc/default/login"
conftest.c:274:3: error: implicit declaration of function 'exit'