bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug in 'obstack' module


From: Bruno Haible
Subject: bug in 'obstack' module
Date: Wed, 25 Jan 2006 15:59:15 +0100
User-agent: KMail/1.5.4

The obstack module does not compile on MacOS X:

Making all in lib
make  all-am
gcc -DHAVE_CONFIG_H -I. -I../../../megatestdir/obstack/lib -I..     -g -O2 -c 
../../../megatestdir/obstack/lib/exitfail.c
gcc -DHAVE_CONFIG_H -I. -I../../../megatestdir/obstack/lib -I..     -g -O2 -c 
../../../megatestdir/obstack/lib/obstack.c
../../../megatestdir/obstack/lib/obstack.c:69: error: parse error before 
"uintmax_t"
../../../megatestdir/obstack/lib/obstack.c:69: warning: no semicolon at end of 
struct or union
../../../megatestdir/obstack/lib/obstack.c:70: warning: use of `long double' 
type; its size may change in a future release
../../../megatestdir/obstack/lib/obstack.c:70: warning: (Long double usage is 
reported only once for each file.
../../../megatestdir/obstack/lib/obstack.c:70: warning: To disable this 
warning, use -Wno-long-double.)
../../../megatestdir/obstack/lib/obstack.c:72: error: parse error before '}' 
token
../../../megatestdir/obstack/lib/obstack.c:76: error: field `u' has incomplete 
type
../../../megatestdir/obstack/lib/obstack.c:83: error: enumerator value for 
`DEFAULT_ALIGNMENT' not integer constant
../../../megatestdir/obstack/lib/obstack.c:85: error: invalid application of 
`sizeof' to an incomplete type
make[4]: *** [obstack.o] Error 1
make[4]: Target `all-am' not remade because of errors.
make[3]: *** [all] Error 2

The config.h contains the following, related to uintmax_t:


/* Define if <inttypes.h> exists, doesn't clash with <sys/types.h>, and
   declares uintmax_t. */
#define HAVE_INTTYPES_H_WITH_UINTMAX 1

/* Define if <stdint.h> exists, doesn't clash with <sys/types.h>, and declares
   uintmax_t. */ 
#define HAVE_STDINT_H_WITH_UINTMAX 1

/* Define if you have the 'uintmax_t' type in <stdint.h> or <inttypes.h>. */
#define HAVE_UINTMAX_T 1

/* Define to unsigned long or unsigned long long if <stdint.h> and
   <inttypes.h> don't define. */
/* #undef uintmax_t */


The problem is that obstack.c uses HAVE_INTTYPES_H and HAVE_STDINT_H,
but these are not set by the autoconf macros. (Compare inttypes.m4
with inttypes_h.m4, and stdint.m4 with stdint_h.m4.)

Bruno






reply via email to

[Prev in Thread] Current Thread [Next in Thread]