/* ----------------------------------------------------------------------------
- * $Id: RtsAPI.h,v 1.13 2000/04/26 09:29:37 simonmar Exp $
+ * $Id: RtsAPI.h,v 1.14 2000/06/15 13:16:16 daan Exp $
*
* (c) The GHC Team, 1998-1999
*
#ifndef RTSAPI_H
#define RTSAPI_H
+/* Make this compilable with Visual C++ */
+#ifndef HAVE_INT64
+#define HAVE_INT64
+#ifdef _MSC_VER
+typedef __int64 int64;
+typedef unsigned __int64 nat64;
+#else
+typedef long long int64;
+typedef unsigned long long nat64;
+#endif
+#endif
+
/*
* Running the scheduler
*/
HaskellObj rts_mkInt8 ( int i );
HaskellObj rts_mkInt16 ( int i );
HaskellObj rts_mkInt32 ( int i );
-HaskellObj rts_mkInt64 ( long long i );
+HaskellObj rts_mkInt64 ( int64 i );
HaskellObj rts_mkWord ( unsigned int w );
HaskellObj rts_mkWord8 ( unsigned int w );
HaskellObj rts_mkWord16 ( unsigned int w );
HaskellObj rts_mkWord32 ( unsigned int w );
-HaskellObj rts_mkWord64 ( unsigned long long w );
+HaskellObj rts_mkWord64 ( nat64 w );
HaskellObj rts_mkFloat ( float f );
HaskellObj rts_mkDouble ( double f );
HaskellObj rts_mkStablePtr ( StgStablePtr s );