fix #3910
[ghc-hetmet.git] / rts / Hpc.c
index dd67227..81c802c 100644 (file)
--- a/rts/Hpc.c
+++ b/rts/Hpc.c
@@ -36,13 +36,6 @@ static pid_t hpc_pid = 0;            // pid of this process at hpc-boot time.
 static FILE *tixFile;                  // file being read/written
 static int tix_ch;                     // current char
 
-// This is a cruel hack, we should completely redesign the format specifier handling in the RTS.
-#if SIZEOF_LONG == 8
-#define PRIuWORD64 "lu"
-#else
-#define PRIuWORD64 "llu"
-#endif
-
 HpcModuleInfo *modules = 0;
 HpcModuleInfo *nextModule = 0;
 int totalTixes = 0;            // total number of tix boxes.
@@ -58,7 +51,7 @@ failure(char *msg) {
   } else {
     fprintf(stderr,"(perhaps remove .tix file?)\n");
   }
-  exit(-1);
+  stg_exit(1);
 }
 
 static int init_open(FILE *file) {
@@ -242,7 +235,7 @@ hs_hpc_module(char *modName,
        fprintf(stderr,"in module '%s'\n",tmpModule->modName);
        failure("module mismatch with .tix/.mix file hash number");
        fprintf(stderr,"(perhaps remove %s ?)\n",tixFilename);
-       exit(-1);
+       stg_exit(1);
 
       }
       for(i=0;i < modCount;i++) {
@@ -333,7 +326,7 @@ writeTix(FILE *f) {
       }
 
       if (tmpModule->tixArr) {
-       fprintf(f,"%" PRIuWORD64,tmpModule->tixArr[i]);
+       fprintf(f,"%" FMT_Word64,tmpModule->tixArr[i]);
       } else {
        fprintf(f,"0");
       }