This is output from `defines' version 4.1.1, from your buddies at Newtware! Fri May 22 20:21:57 METDST 2015 HP-UX blnn728x B.11.31 U ia64 HP-UX cc = [cc] "/tmp/def24671.c", line 225502: error #2969: the identifier __VA_ARGS__ can only appear in the replacement lists of variadic macros #ifdef __VA_ARGS__ ^ 1 error detected in the compilation of "/tmp/def24671.c". _BIG_ENDIAN = 1 _BIND_LIBCALLS = 1 _DEC_EVAL_METHOD = 0 _FLT_EVAL_METHOD = 0 _HPUX_SOURCE = 1 _ILP32 = 1 _INCLUDE_LONGLONG = 1 _INLINE_ASM = 1 _Math_errhandling = MATH_ERREXCEPT __BASE_FILE__ = "/tmp/def24671.c" __DATE__ = "May 22 2015" __EDG_PTRDIFF_TYPE__ = long __EDG_SIZE_TYPE__ = unsigned long __EDG_VERSION__ = 401 __EDG__ = 1 __FILE__ = "/tmp/def24671.c" __HP_cc = 62501 __LINE__ = 225227 __SIGNED_CHARS__ = 1 __STDC_EXT__ = 1 __STDC_HOSTED__ = 1 __STDC_IEC_559_COMPLEX__ = 1 __STDC_IEC_559__ = 1 __STDC_VERSION__ = 199901L __STDC__ = 1 __TIMESTAMP__ = "Fri May 22 20:22:08 2015" __TIME__ = "20:22:09" __hpux = 1 __ia64 = 1 __ia64__ = 1 __unix = 1 Checking other possibilities; should already be listed above: __DATE__ = "May 22 2015" __FILE__ = "/tmp/def24671.c" __LINE__ = 25 __STDC__ = 1 __TIME__ = "20:22:09" Sizes of basic variable types: sizeof(char) = 8 bits sizeof(short) = 16 bits sizeof(int) = 32 bits sizeof(long) = 32 bits sizeof(long long) = 64 bits sizeof(float) = 32 bits sizeof(double) = 64 bits sizeof(long double) = 128 bits sizeof(char *) = 32 bits sizeof(char (*)(char)) = 32 bits