gml4410 at ggr.co.uk
2006-Nov-24 16:33 UTC
[Rd] Solaris build produces worrying warning. (PR#9382)
Full_Name: Gordon Lack Version: 2.4.0 OS: Solaris8 Submission from: (NULL) (198.28.92.5) A 32-bit compile of R-2.4.0 on Solaris8 (using gcc3.4.3) produces this: =========make[3]: Entering directory `/var/tmp/gml-R/R-2.4.0/src/extra/pcre' gcc -I. -I. -I../../../src/include -I../../../src/include ... -DHAVE_CONFIG_H -g -O2 -std=gnu99 -c dftables.c -o dftables.o In file included from pcre_internal.h:68, from dftables.c:50: ../../../src/include/config.h:903:1: warning: "_FILE_OFFSET_BITS" redefined In file included from /usr/include/iso/ctype_iso.h:30, from /usr/include/ctype.h:18, from dftables.c:46: /usr/include/sys/feature_tests.h:96:1: warning: this is the location of the previous definition ========= _FILE_OFFSET_BITS is being redefined from 32 to 64 here, which I find slightly worrying. The problem is caused by stdio.,h being included before config.h. The former sets _FILE_OFFSET_BITS to 32 if it is not set, while the latter sets it to 64 (which it should be) unconditionally. BUT, by then all of stdio.h has been run though with it set to 32... Possible fixes are: a) include <config.h> as the first #include b) move the include of pcre_internal.h to be the first one (since it includes config.h).