00001 /*--------------------------------------------------------------------------------- 00002 * / 00003 * / apeNEXT limits definitions for nlcc 00004 * / 00005 * / $Id: limits.h,v 2.5 2005/06/08 14:06:53 pleiter Exp $ 00006 * / 00007 * / ISO/IEC 9899:1999 (E) Standard 00008 * / Limits <limits.h> 00009 * / 00010 * / Authors: O. Kaczmarek, A. Tawfik 00011 * / 00012 * / IMPLEMENTATION for APEnext: completed and tested (limits.h) 00013 * / 00014 * /-----------------------------------------------------------------------------*/ 00015 00016 00017 #ifndef _LIMITS_H_ 00018 #define _LIMITS_H_ 00019 00020 #include <nlibc.h> 00021 00022 #ifndef NULL 00023 # define NULL 0 00024 #endif 00025 00026 #ifndef TRUE 00027 # define TRUE 1 00028 #endif 00029 00030 #ifndef FALSE 00031 # define FALSE 0 00032 #endif 00033 00034 #define __INT64_C(c) c ## LL 00035 #define __UINT64_C(c) c ## ULL 00036 00037 /*--------------------------------------------------------------------------------- 00038 * / IMPLEMENTATION for APEnext: (SHRT_MIN) 00039 /*-------------------------------------------------------------------------------*/ 00040 #define SHRT_MIN (-__INT64_C(9223372036854775807)-1) // -(2^{63}) 00041 00042 /*--------------------------------------------------------------------------------- 00043 * / IMPLEMENTATION for APEnext: (SHRT_MAX) 00044 /*-------------------------------------------------------------------------------*/ 00045 #define SHRT_MAX (__INT64_C(9223372036854775807)) // +(2^{63}-1) 00046 00047 /*--------------------------------------------------------------------------------- 00048 * / IMPLEMENTATION for APEnext: (USHRT_MAX) 00049 /*-------------------------------------------------------------------------------*/ 00050 #define USHRT_MAX (__UINT64_C(18446744073709551615)) // +(2^{64}-1) 00051 00052 00053 /*--------------------------------------------------------------------------------- 00054 * / IMPLEMENTATION for APEnext: (INT_MIN) 00055 /*-------------------------------------------------------------------------------*/ 00056 #define INT_MIN (-__INT64_C(9223372036854775807)-1) // -(2^{63}) 00057 00058 /*--------------------------------------------------------------------------------- 00059 * / IMPLEMENTATION for APEnext: (INT_MAX) 00060 /*-------------------------------------------------------------------------------*/ 00061 #define INT_MAX (__INT64_C(9223372036854775807)) // +(2^{63}-1) 00062 00063 /*--------------------------------------------------------------------------------- 00064 * / IMPLEMENTATION for APEnext: (UINT_MAX) 00065 /*-------------------------------------------------------------------------------*/ 00066 #define UINT_MAX (__UINT64_C(18446744073709551615)) // +(2^{64}-1) 00067 00068 /*--------------------------------------------------------------------------------- 00069 * / IMPLEMENTATION for APEnext: (LONG_MIN) 00070 /*-------------------------------------------------------------------------------*/ 00071 #define LONG_MIN (-__INT64_C(9223372036854775807)-1) // -(2^{63}) 00072 00073 /*--------------------------------------------------------------------------------- 00074 * / IMPLEMENTATION for APEnext: (LONG_MAX) 00075 /*-------------------------------------------------------------------------------*/ 00076 #define LONG_MAX (__INT64_C(9223372036854775807)) // +(2^{63}-1) 00077 00078 /*--------------------------------------------------------------------------------- 00079 * / IMPLEMENTATION for APEnext: (ULONG_MAX) 00080 /*-------------------------------------------------------------------------------*/ 00081 #define ULONG_MAX (__UINT64_C(18446744073709551615)) // +(2^{64}-1) 00082 00083 /*--------------------------------------------------------------------------------- 00084 * / IMPLEMENTATION for APEnext: (LLONG_MIN) 00085 /*------------------------------------------------------------------------------*/ 00086 #define LLONG_MIN (-__INT64_C(9223372036854775807)-1) // -(2^{63}) 00087 00088 /*--------------------------------------------------------------------------------- 00089 * / IMPLEMENTATION for APEnext: (LLONG_MAX) 00090 /*------------------------------------------------------------------------------*/ 00091 #define LLONG_MAX (__INT64_C(9223372036854775807)) // +(2^{63}-1) 00092 00093 /*--------------------------------------------------------------------------------- 00094 * / IMPLEMENTATION for APEnext: (ULLONG_MAX) 00095 /*-------------------------------------------------------------------------------*/ 00096 #define ULLONG_MAX (__UINT64_C(18446744073709551615)) // +(2^{64}-1) 00097 00098 00099 #endif /* _LIMITS_H_ */ 00100 00101 00102 00103