diff --git a/C/SYSTEM.h b/C/SYSTEM.h
index 183da76118b1309c52c791a384689f08c8df0789..9f36508948bab41947010450ee923456e3ef8bc6 100644 (file)
--- a/C/SYSTEM.h
+++ b/C/SYSTEM.h
*/\r
\r
\r
-#pragma warning(disable:4101) // disable "unreferenced variable" warning\r
+#pragma warning(disable:4101) /* disable "unreferenced variable" warning */\r
\r
#ifdef __GNUC__\r
# include <alloca.h>\r
#endif\r
-#include <malloc.h>\r
+#include <stdint.h>\r
#include <string.h>\r
\r
-// extern char *memcpy();\r
+/* extern char *memcpy(); */\r
\r
#define export\r
#define import extern\r
\r
/* basic types */\r
+/*\r
typedef unsigned char BOOLEAN;\r
typedef unsigned char SHORTCHAR;\r
typedef unsigned short CHAR;\r
typedef signed char BYTE;\r
typedef short SHORTINT;\r
typedef int INTEGER;\r
+*/\r
#if !defined(_WIN64) && ((__SIZEOF_POINTER__ == 8) || defined (_LP64) || defined(__LP64__))\r
- typedef long LONGINT; // LP64\r
- typedef unsigned long __U_LONGINT;\r
+ /* typedef long LONGINT; */ /* LP64 */\r
+ /* typedef unsigned long __U_LONGINT; */\r
#else\r
- typedef long long LONGINT; // ILP32 or LLP64\r
- typedef unsigned long long __U_LONGINT;\r
+ /* typedef long long LONGINT; */ /* ILP32 or LLP64 */\r
+ /* typedef unsigned long long __U_LONGINT; */\r
#endif\r
+/*\r
typedef float SHORTREAL;\r
typedef double REAL;\r
typedef unsigned int SET;\r
typedef void ANYREC;\r
typedef void *ANYPTR;\r
typedef void *SYSTEM_PTR;\r
+*/\r
+typedef uint8_t BOOLEAN;\r
+typedef uint8_t SHORTCHAR;\r
+typedef uint16_t CHAR;\r
+typedef int8_t BYTE;\r
+typedef int16_t SHORTINT;\r
+typedef int32_t INTEGER;\r
+typedef int64_t LONGINT;\r
+typedef float SHORTREAL;\r
+typedef double REAL;\r
+typedef uint32_t SET;\r
+typedef void ANYREC;\r
+typedef void *ANYPTR;\r
+typedef void *SYSTEM_PTR;\r
\r
/* Unsigned variants are for use by shift and rotate macros */\r
+typedef uint8_t __U_SHORTCHAR;\r
+typedef uint16_t __U_CHAR;\r
+typedef uint8_t __U_BYTE;\r
+typedef uint16_t __U_SHORTINT;\r
+typedef uint32_t __U_INTEGER;\r
+typedef uint64_t __U_LONGINT;\r
+typedef uint32_t __U_SET;\r
+/*\r
typedef unsigned char __U_SHORTCHAR;\r
typedef unsigned short __U_CHAR;\r
typedef unsigned char __U_BYTE;\r
typedef unsigned short __U_SHORTINT;\r
typedef unsigned int __U_INTEGER;\r
typedef unsigned int __U_SET;\r
+*/\r
\r
extern LONGINT SYSTEM_INF;\r
extern INTEGER SYSTEM_INFS;\r
#define __MOVE(s, d, n) memcpy((char*)(d),(char*)(s),n)\r
\r
/* std procs and operator mappings */\r
-// #define __SHORT(x, y) ((int)((unsigned)(x)+(y)<(y)+(y)?(x):(__HALT(-8),0)))\r
-// #define __SHORTF(x, y) ((int)(__RF((x)+(y),(y)+(y))-(y)))\r
-// #define __CHR(x) ((CHAR)__R(x, 256))\r
-// #define __CHRF(x) ((CHAR)__RF(x, 256))\r
+/*\r
+#define __SHORT(x, y) ((int)((unsigned)(x)+(y)<(y)+(y)?(x):(__HALT(-8),0))) \r
+#define __SHORTF(x, y) ((int)(__RF((x)+(y),(y)+(y))-(y)))\r
+#define __CHR(x) ((CHAR)__R(x, 256))\r
+#define __CHRF(x) ((CHAR)__RF(x, 256))\r
+*/\r
#define __DIV(x, y) ((x)>=0?(x)/(y):~(~(x)/(y)))\r
#define __DIVF(x, y) SYSTEM_DIV(x,y)\r
#define __DIVFL(x, y) SYSTEM_DIVL(x,y)\r
/* runtime checks */\r
#define __X(i, ub) (((unsigned)(i)<(unsigned)(ub))?i:(__HALT(-7),0))\r
#define __XF(i, ub) SYSTEM_XCHK((INTEGER)(i), (INTEGER)(ub))\r
-// #define __RETCHK __retchk: __HALT(-3)\r
+/*\r
+#define __RETCHK __retchk: __HALT(-3)\r
+*/\r
#define __RETCHK __HALT(-3)\r
#define __CASECHK __HALT(-2)\r
#define __GUARDP(p, typ, level) ((typ*)(__ISP(p,typ,level)?p:(__HALT(-4),p)))\r