After some intensive hair pulling on why libidn breaks arm eabi port,
turns out libidn did not like gnulib telling it that stdint.h is not
C99 compatible... Any why not?
  
        int check_WCHAR:
      WCHAR_MIN == TYPE_MINIMUM (wchar_t)
      && WCHAR_MAX == TYPE_MAXIMUM (wchar_t)
      ? 1 : -1;
  /* Detect bug in mingw.  */

Which makes sense, but turns out TYPE_MAXIMUM seem uncipherable:

#define TYPE_MINIMUM(t) \
  ((t) ((t) 0 < (t) -1 ? (t) 0 : ~ (t) 0 << (sizeof (t) * CHAR_BIT - 1)))
#define TYPE_MAXIMUM(t) \
  ((t) ((t) 0 < (t) -1 ? (t) -1 : ~ (~ (t) 0 << (sizeof (t) * CHAR_BIT - 1))))

Neither of these macros seem to work expected if (t) is wchar_t and wchar_t is 
defined
as unsigned int. Which happens to be the case on arm-linux-gnueabi...

-- 
"rm -rf" only sounds scary if you don't have backups


Reply via email to