This fixes Cygwin, where wchar_t is ushort. --- a/grove/Node.h +++ b/grove/Node.h @@ -8,6 +8,7 @@ #endif #include +#include #include "IList.h" #ifdef SP_USE_DLL @@ -34,10 +35,10 @@ #endif #ifdef SP_MULTI_BYTE -#ifdef SP_WCHAR_T_USHORT -typedef wchar_t GroveChar; -#else +#if UINT_MAX >= 0xffffffffL /* 2^32 - 1 */ typedef unsigned int GroveChar; +#else +typedef unsigned long GroveChar; #endif #else /* not SP_MULTI_BYTE */ typedef unsigned char GroveChar;