[Top][All Lists]

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

[bug-gnu-libiconv] libiconv 1.12 broken on solaris

From: Philip Brown
Subject: [bug-gnu-libiconv] libiconv 1.12 broken on solaris
Date: Wed, 19 Nov 2008 11:25:25 -0800
User-agent: Mutt/


I havent compiled libiconv since 1.9.2. Unfortunately, it seems that
someone has broken it for solaris since then.

When it worked, there was no overly baroque fake "stdint.h" file.

The one you have now in 1.12, crashes, with an error on the line

typedef int _verify_intmax_size[2*(sizeof(intmax_t) ==sizeof(uintmax_t))-1];

around line 257

Solaris itself has perfectly valid headers. Something you are doing, is
overriding them wrong for integer types.

If I replace the entire srclib/stdint.h file with the following lines,
everything compiles fine:


#include <sys/types.h>
#include <limits.h>

/* Verify that intmax_t and uintmax_t have the same size.  Too much code
   breaks if this is not the case.  If this check fails, the reason is likely
   to be found in the autoconf macros.  */
typedef int _verify_intmax_size[2*(sizeof(intmax_t) == sizeof(uintmax_t))-1];


So, the same check works, if you just stick with solaris includes, but
crashes, with the fancy "trying to be clever" stuff that is normally in
your version of stdint.h

I suppose I should mention that the current 1.12 stuff breaks equally on
solaris 8 through solaris 10, but my fix above, fixes it equally for those
OS revisions also.

reply via email to

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