[project @ 1998-04-10 11:33:12 by simonm]
authorsimonm <unknown>
Fri, 10 Apr 1998 11:35:02 +0000 (11:35 +0000)
committersimonm <unknown>
Fri, 10 Apr 1998 11:35:02 +0000 (11:35 +0000)
clean up the mess.

40 files changed:
ghc/lib/std/cbits/closeFile.lc [moved from ghc/lib/std/cbits/closeFile.c with 61% similarity]
ghc/lib/std/cbits/createDirectory.lc [moved from ghc/lib/std/cbits/createDirectory.c with 79% similarity]
ghc/lib/std/cbits/errno.lc [moved from ghc/lib/std/cbits/errno.c with 98% similarity]
ghc/lib/std/cbits/error.h [deleted file]
ghc/lib/std/cbits/fileEOF.c [deleted file]
ghc/lib/std/cbits/fileEOF.lc [new file with mode: 0644]
ghc/lib/std/cbits/fileGetc.c [deleted file]
ghc/lib/std/cbits/fileGetc.lc [new file with mode: 0644]
ghc/lib/std/cbits/fileLookAhead.c [deleted file]
ghc/lib/std/cbits/fileLookAhead.lc [new file with mode: 0644]
ghc/lib/std/cbits/filePosn.lc [moved from ghc/lib/std/cbits/filePosn.c with 65% similarity]
ghc/lib/std/cbits/filePutc.lc [moved from ghc/lib/std/cbits/filePutc.c with 57% similarity]
ghc/lib/std/cbits/fileSize.lc [moved from ghc/lib/std/cbits/fileSize.c with 70% similarity]
ghc/lib/std/cbits/floatExtreme.lc [moved from ghc/lib/std/cbits/floatExtreme.c with 82% similarity]
ghc/lib/std/cbits/flushFile.c [deleted file]
ghc/lib/std/cbits/flushFile.lc [new file with mode: 0644]
ghc/lib/std/cbits/freeFile.lc [moved from ghc/lib/std/cbits/freeFile.c with 81% similarity]
ghc/lib/std/cbits/getBufferMode.lc [moved from ghc/lib/std/cbits/getBufferMode.c with 78% similarity]
ghc/lib/std/cbits/getCPUTime.lc [moved from ghc/lib/std/cbits/getCPUTime.c with 88% similarity]
ghc/lib/std/cbits/getClockTime.lc [moved from ghc/lib/std/cbits/getClockTime.c with 85% similarity]
ghc/lib/std/cbits/getCurrentDirectory.lc [moved from ghc/lib/std/cbits/getCurrentDirectory.c with 75% similarity]
ghc/lib/std/cbits/getDirectoryContents.lc [moved from ghc/lib/std/cbits/getDirectoryContents.c with 90% similarity]
ghc/lib/std/cbits/getLock.lc [moved from ghc/lib/std/cbits/getLock.c with 87% similarity]
ghc/lib/std/cbits/inputReady.lc [moved from ghc/lib/std/cbits/inputReady.c with 91% similarity]
ghc/lib/std/cbits/openFile.lc [moved from ghc/lib/std/cbits/openFile.c with 94% similarity]
ghc/lib/std/cbits/readFile.lc [moved from ghc/lib/std/cbits/readFile.c with 79% similarity]
ghc/lib/std/cbits/removeDirectory.lc [moved from ghc/lib/std/cbits/removeDirectory.c with 77% similarity]
ghc/lib/std/cbits/removeFile.lc [moved from ghc/lib/std/cbits/removeFile.c with 72% similarity]
ghc/lib/std/cbits/renameDirectory.lc [moved from ghc/lib/std/cbits/renameDirectory.c with 69% similarity]
ghc/lib/std/cbits/renameFile.lc [moved from ghc/lib/std/cbits/renameFile.c with 91% similarity]
ghc/lib/std/cbits/seekFile.lc [moved from ghc/lib/std/cbits/seekFile.c with 88% similarity]
ghc/lib/std/cbits/setBuffering.lc [moved from ghc/lib/std/cbits/setBuffering.c with 89% similarity]
ghc/lib/std/cbits/setCurrentDirectory.c [deleted file]
ghc/lib/std/cbits/setCurrentDirectory.lc [new file with mode: 0644]
ghc/lib/std/cbits/showTime.lc [moved from ghc/lib/std/cbits/showTime.c with 83% similarity]
ghc/lib/std/cbits/system.lc [moved from ghc/lib/std/cbits/system.c with 86% similarity]
ghc/lib/std/cbits/toClockSec.lc [moved from ghc/lib/std/cbits/toClockSec.c with 75% similarity]
ghc/lib/std/cbits/toLocalTime.lc [moved from ghc/lib/std/cbits/toLocalTime.c with 87% similarity]
ghc/lib/std/cbits/toUTCTime.lc [moved from ghc/lib/std/cbits/toUTCTime.c with 88% similarity]
ghc/lib/std/cbits/writeFile.lc [moved from ghc/lib/std/cbits/writeFile.c with 69% similarity]

similarity index 61%
rename from ghc/lib/std/cbits/closeFile.c
rename to ghc/lib/std/cbits/closeFile.lc
index 90eeb9d..9f4c80e 100644 (file)
@@ -1,16 +1,16 @@
-/* 
- * (c) The GRASP/AQUA Project, Glasgow University, 1994-1998
- *
- * $Id: closeFile.c,v 1.1 1998/04/10 10:54:14 simonm Exp $
- *
- * hClose Runtime Support
- */
-
-#include "Rts.h"
+%
+% (c) The GRASP/AQUA Project, Glasgow University, 1994
+%
+\subsection[closeFile.lc]{hClose Runtime Support}
+
+\begin{code}
+
+#include "rtsdefs.h"
 #include "stgio.h"
 
 StgInt
-closeFile(StgAddr fp)
+closeFile(fp)
+StgForeignObj fp;
 {
     int rc;
 
@@ -29,5 +29,7 @@ closeFile(StgAddr fp)
     return 0;
 }
 
+\end{code}
+
 
 
similarity index 79%
rename from ghc/lib/std/cbits/createDirectory.c
rename to ghc/lib/std/cbits/createDirectory.lc
index 6165518..759e99c 100644 (file)
@@ -1,12 +1,11 @@
-/* 
- * (c) The GRASP/AQUA Project, Glasgow University, 1994-1998
- *
- * $Id: createDirectory.c,v 1.1 1998/04/10 10:54:16 simonm Exp $
- *
- * createDirectory Runtime Support}
- */
+%
+% (c) The GRASP/AQUA Project, Glasgow University, 1995
+%
+\subsection[createDirectory.lc]{createDirectory Runtime Support}
 
-#include "Rts.h"
+\begin{code}
+
+#include "rtsdefs.h"
 #include "stgio.h"
 
 #ifdef HAVE_SYS_TYPES_H
@@ -18,7 +17,8 @@
 #endif
 
 StgInt 
-createDirectory(StgByteArray path)
+createDirectory(path)
+StgByteArray path;
 {
     int rc;
     struct stat sb;
@@ -54,3 +54,5 @@ createDirectory(StgByteArray path)
     }
     return 0;
 }
+
+\end{code}
similarity index 98%
rename from ghc/lib/std/cbits/errno.c
rename to ghc/lib/std/cbits/errno.lc
index fc32980..0eaa9d1 100644 (file)
@@ -1,12 +1,11 @@
-/* 
- * (c) The GRASP/AQUA Project, Glasgow University, 1994-1998
- *
- * $Id: errno.c,v 1.1 1998/04/10 10:54:18 simonm Exp $
- *
- * GHC Error Number Conversion
- */
+%
+% (c) The GRASP/AQUA Project, Glasgow University, 1994
+%
+\subsection[errno.lc]{GHC Error Number Conversion}
+
+\begin{code}
 
-#include "Rts.h"
+#include "rtsdefs.h"
 #include "stgio.h"
 
 int ghc_errno = 0;
@@ -16,7 +15,7 @@ char *ghc_errstr = NULL;
 
 /* Collect all of the grotty #ifdef's in one place. */
 
-void cvtErrno(void)
+void cvtErrno(STG_NO_ARGS)
 {
     switch(errno) {
 #ifdef E2BIG
@@ -527,7 +526,7 @@ void cvtErrno(void)
 }
 
 void
-stdErrno(void)
+stdErrno(STG_NO_ARGS)
 {
     switch(ghc_errno) {
     default:
@@ -931,3 +930,5 @@ stdErrno(void)
        break;
     }
 }
+
+\end{code}
diff --git a/ghc/lib/std/cbits/error.h b/ghc/lib/std/cbits/error.h
deleted file mode 100644 (file)
index 785fadb..0000000
+++ /dev/null
@@ -1,150 +0,0 @@
-/* 
- * (c) The GRASP/AQUA Project, Glasgow University, 1994-1998
- *
- * $Id: error.h,v 1.1 1998/04/10 10:54:20 simonm Exp $
- *
- * Error codes used by the IO subsystem.
- */
-
-#if !defined(COMPILING_NCG) && !defined(__GLASGOW_HASKELL__)
-extern int ghc_errno;
-extern int ghc_errtype;
-extern char *ghc_errstr;
-
-void cvtErrno (void);
-void stdErrno (void);
-#endif
-
-#define ERR_ALREADYEXISTS 1
-#define ERR_HARDWAREFAULT 2
-#define ERR_ILLEGALOPERATION 3
-#define ERR_INAPPROPRIATETYPE 4
-#define ERR_INTERRUPTED 5
-#define ERR_INVALIDARGUMENT 6
-#define ERR_NOSUCHTHING 7
-#define ERR_OTHERERROR 8
-#define ERR_PERMISSIONDENIED 9
-#define ERR_PROTOCOLERROR 10
-#define ERR_RESOURCEBUSY 11
-#define ERR_RESOURCEEXHAUSTED 12
-#define ERR_RESOURCEVANISHED 13
-#define ERR_SYSTEMERROR 14
-#define ERR_TIMEEXPIRED 15
-#define ERR_UNSATISFIEDCONSTRAINTS 16
-#define ERR_UNSUPPORTEDOPERATION 17
-#define ERR_USERERROR 18
-#define ERR_EOF 19
-
-#define GHC_E2BIG -1
-#define GHC_EACCES -2
-#define GHC_EADDRINUSE -3
-#define GHC_EADDRNOTAVAIL -4
-#define GHC_EADV -5
-#define GHC_EAFNOSUPPORT -6
-#define GHC_EAGAIN -7
-#define GHC_EAIO -8
-#define GHC_EALREADY -9
-#define GHC_EBADF -10
-#define GHC_EBADMSG -11
-#define GHC_EBADRPC -12
-#define GHC_EBUSY -13
-#define GHC_ECANCELED -14
-#define GHC_ECHILD -15
-#define GHC_ECLONEME -16
-#define GHC_ECOMM -17
-#define GHC_ECONNABORTED -18
-#define GHC_ECONNREFUSED -19
-#define GHC_ECONNRESET -20
-#define GHC_EDEADLK -21
-#define GHC_EDESTADDRREQ -22
-#define GHC_EDIRTY -23
-#define GHC_EDOM -24
-#define GHC_EDOTDOT -25
-#define GHC_EDQUOT -26
-#define GHC_EDUPPKG -27
-#define GHC_EEXIST -28
-#define GHC_EFAIL -29
-#define GHC_EFAULT -30
-#define GHC_EFBIG -31
-#define GHC_EFTYPE -32
-#define GHC_EHOSTDOWN -33
-#define GHC_EHOSTUNREACH -34
-#define GHC_EIDRM -35
-#define GHC_EILSEQ -36
-#define GHC_EINPROG -37
-#define GHC_EINPROGRESS -38
-#define GHC_EINTR -39
-#define GHC_EINVAL -40
-#define GHC_EIO -41
-#define GHC_EISCONN -42
-#define GHC_EISDIR -43
-#define GHC_ELOOP -44
-#define GHC_EMEDIA -45
-#define GHC_EMFILE -46
-#define GHC_EMLINK -47
-#define GHC_EMSGSIZE -48
-#define GHC_EMTIMERS -49
-#define GHC_EMULTIHOP -50
-#define GHC_ENAMETOOLONG -51
-#define GHC_ENETDOWN -52
-#define GHC_ENETRESET -53
-#define GHC_ENETUNREACH -54
-#define GHC_ENFILE -55
-#define GHC_ENOBUFS -56
-#define GHC_ENODATA -57
-#define GHC_ENODEV -58
-#define GHC_ENOENT -59
-#define GHC_ENOEXEC -60
-#define GHC_ENOLCK -61
-#define GHC_ENOLINK -62
-#define GHC_ENOMEM -63
-#define GHC_ENOMSG -64
-#define GHC_ENONET -65
-#define GHC_ENOPKG -66
-#define GHC_ENOPROTOOPT -67
-#define GHC_ENOSPC -68
-#define GHC_ENOSR -69
-#define GHC_ENOSTR -70
-#define GHC_ENOSYM -71
-#define GHC_ENOSYS -72
-#define GHC_ENOTBLK -73
-#define GHC_ENOTCONN -74
-#define GHC_ENOTDIR -75
-#define GHC_ENOTEMPTY -76
-#define GHC_ENOTSOCK -77
-#define GHC_ENOTSUP -78
-#define GHC_ENOTTY -79
-#define GHC_ENXIO -80
-#define GHC_EOPNOTSUPP -81
-#define GHC_EPERM -82
-#define GHC_EPFNOSUPPORT -83
-#define GHC_EPIPE -84
-#define GHC_EPROCLIM -85
-#define GHC_EPROCUNAVAIL -86
-#define GHC_EPROGMISMATCH -87
-#define GHC_EPROGUNAVAIL -88
-#define GHC_EPROTO -89
-#define GHC_EPROTONOSUPPORT -90
-#define GHC_EPROTOTYPE -91
-#define GHC_ERANGE -92
-#define GHC_ERELOCATED -93
-#define GHC_EREMCHG -94
-#define GHC_EREMOTE -95
-#define GHC_EROFS -96
-#define GHC_ERPCMISMATCH -97
-#define GHC_ERREMOTE -98
-#define GHC_ESHUTDOWN -99
-#define GHC_ESOCKTNOSUPPORT -100
-#define GHC_ESOFT -101
-#define GHC_ESPIPE -102
-#define GHC_ESRCH -103
-#define GHC_ESRMNT -104
-#define GHC_ESTALE -105
-#define GHC_ETIME -106
-#define GHC_ETIMEDOUT -107
-#define GHC_ETOOMANYREFS -108
-#define GHC_ETXTBSY -109
-#define GHC_EUSERS -110
-#define GHC_EVERSION -111
-#define GHC_EWOULDBLOCK -112
-#define GHC_EXDEV -113
diff --git a/ghc/lib/std/cbits/fileEOF.c b/ghc/lib/std/cbits/fileEOF.c
deleted file mode 100644 (file)
index ba97822..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-/* 
- * (c) The GRASP/AQUA Project, Glasgow University, 1994-1998
- *
- * $Id: fileEOF.c,v 1.1 1998/04/10 10:54:21 simonm Exp $
- *
- * hIsEOF Runtime Support
- */
-
-#include "Rts.h"
-#include "stgio.h"
-
-StgInt
-fileEOF(StgAddr fp)
-{
-    if (fileLookAhead(fp) != EOF)
-       return 0;
-    else if (ghc_errtype == ERR_EOF)
-       return 1;
-    else
-       return -1;
-}
diff --git a/ghc/lib/std/cbits/fileEOF.lc b/ghc/lib/std/cbits/fileEOF.lc
new file mode 100644 (file)
index 0000000..cdd3eb2
--- /dev/null
@@ -0,0 +1,23 @@
+%
+% (c) The GRASP/AQUA Project, Glasgow University, 1994
+%
+\subsection[fileEOF.lc]{hIsEOF Runtime Support}
+
+\begin{code}
+
+#include "rtsdefs.h"
+#include "stgio.h"
+
+StgInt
+fileEOF(fp)
+StgForeignObj fp;
+{
+    if (fileLookAhead(fp) != EOF)
+       return 0;
+    else if (ghc_errtype == ERR_EOF)
+       return 1;
+    else
+       return -1;
+}
+
+\end{code}
diff --git a/ghc/lib/std/cbits/fileGetc.c b/ghc/lib/std/cbits/fileGetc.c
deleted file mode 100644 (file)
index 9c7b33f..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-/* 
- * (c) The GRASP/AQUA Project, Glasgow University, 1994-1998
- *
- * $Id: fileGetc.c,v 1.1 1998/04/10 10:54:22 simonm Exp $
- *
- * hGetChar Runtime Support
- */
-
-#include "Rts.h"
-#include "stgio.h"
-#include "error.h"
-
-StgInt
-fileGetc(StgAddr fp)
-{
-    int c;
-
-    if (feof((FILE *)fp)) {
-       ghc_errtype = ERR_EOF;
-       ghc_errstr = "";
-       return EOF;
-    }
-
-    /* Try to read a character */
-    while ((c = getc((FILE *)fp)) == EOF && errno == EINTR)
-       clearerr((FILE *)fp);
-
-    if (feof((FILE *)fp)) {
-       ghc_errtype = ERR_EOF;
-       ghc_errstr = "";
-    } else if (c == EOF) {
-       cvtErrno();
-       stdErrno();
-    }
-    return c;
-}
diff --git a/ghc/lib/std/cbits/fileGetc.lc b/ghc/lib/std/cbits/fileGetc.lc
new file mode 100644 (file)
index 0000000..131c956
--- /dev/null
@@ -0,0 +1,38 @@
+%
+% (c) The GRASP/AQUA Project, Glasgow University, 1994
+%
+\subsection[fileGetc.lc]{hGetChar Runtime Support}
+
+\begin{code}
+
+#include "rtsdefs.h"
+#include "stgio.h"
+#include "error.h"
+
+StgInt
+fileGetc(fp)
+StgForeignObj fp;
+{
+    int c;
+
+    if (feof((FILE *) fp)) {
+       ghc_errtype = ERR_EOF;
+       ghc_errstr = "";
+       return EOF;
+    }
+
+    /* Try to read a character */
+    while ((c = getc((FILE *) fp)) == EOF && errno == EINTR)
+       clearerr((FILE *) fp);
+
+    if (feof((FILE *) fp)) {
+       ghc_errtype = ERR_EOF;
+       ghc_errstr = "";
+    } else if (c == EOF) {
+       cvtErrno();
+       stdErrno();
+    }
+    return c;
+}
+
+\end{code}
diff --git a/ghc/lib/std/cbits/fileLookAhead.c b/ghc/lib/std/cbits/fileLookAhead.c
deleted file mode 100644 (file)
index 360f119..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-/* 
- * (c) The GRASP/AQUA Project, Glasgow University, 1994-1998
- *
- * $Id: fileLookAhead.c,v 1.1 1998/04/10 10:54:24 simonm Exp $
- *
- * hLookAhead Runtime Support
- */
-
-#include "Rts.h"
-#include "stgio.h"
-
-StgInt
-fileLookAhead(StgAddr fp)
-{
-    int c;
-
-    if ((c = fileGetc((FILE *)fp)) == EOF) {
-       return c;
-    } else if (ungetc(c, (FILE *)fp) == EOF) {
-       cvtErrno();
-       stdErrno();
-       return EOF;
-    } else
-       return c;
-}
diff --git a/ghc/lib/std/cbits/fileLookAhead.lc b/ghc/lib/std/cbits/fileLookAhead.lc
new file mode 100644 (file)
index 0000000..91a1722
--- /dev/null
@@ -0,0 +1,27 @@
+%
+% (c) The GRASP/AQUA Project, Glasgow University, 1994
+%
+\subsection[fileLookAhead.lc]{hLookAhead Runtime Support}
+
+\begin{code}
+
+#include "rtsdefs.h"
+#include "stgio.h"
+
+StgInt
+fileLookAhead(fp)
+StgForeignObj fp;
+{
+    int c;
+
+    if ((c = fileGetc(fp)) == EOF) {
+       return c;
+    } else if (ungetc(c, (FILE *) fp) == EOF) {
+       cvtErrno();
+       stdErrno();
+       return EOF;
+    } else
+       return c;
+}
+
+\end{code}
similarity index 65%
rename from ghc/lib/std/cbits/filePosn.c
rename to ghc/lib/std/cbits/filePosn.lc
index e8131da..7a0d790 100644 (file)
@@ -1,16 +1,16 @@
-/* 
- * (c) The GRASP/AQUA Project, Glasgow University, 1994-1998
- *
- * $Id: filePosn.c,v 1.1 1998/04/10 10:54:25 simonm Exp $
- *
- * hGetPosn and hSetPosn Runtime Support
- */
-
-#include "Rts.h"
+%
+% (c) The GRASP/AQUA Project, Glasgow University, 1994
+%
+\subsection[filePosn.lc]{hGetPosn and hSetPosn Runtime Support}
+
+\begin{code}
+
+#include "rtsdefs.h"
 #include "stgio.h"
 
 StgInt
-getFilePosn(StgAddr fp)
+getFilePosn(fp)
+StgForeignObj fp;
 {
     StgInt posn;
 
@@ -28,7 +28,9 @@ getFilePosn(StgAddr fp)
 /* The following is only called with a position that we've already visited */
 
 StgInt
-setFilePosn(StgAddr fp, I_ posn)
+setFilePosn(fp, posn)
+StgForeignObj fp;
+StgInt posn;
 {
     while (fseek((FILE *) fp, posn, SEEK_SET) != 0) {
        if (errno != EINTR) {
@@ -40,4 +42,7 @@ setFilePosn(StgAddr fp, I_ posn)
     return 0;
 }
 
+\end{code}
+
+
 
similarity index 57%
rename from ghc/lib/std/cbits/filePutc.c
rename to ghc/lib/std/cbits/filePutc.lc
index 446304d..980aa63 100644 (file)
@@ -1,17 +1,18 @@
-/* 
- * (c) The GRASP/AQUA Project, Glasgow University, 1994-1998
- *
- * $Id: filePutc.c,v 1.1 1998/04/10 10:54:26 simonm Exp $
- *
- * hPutChar Runtime Support
- */
+%
+% (c) The GRASP/AQUA Project, Glasgow University, 1994
+%
+\subsection[filePut.lc]{hPutChar Runtime Support}
 
-#include "Rts.h"
+\begin{code}
+
+#include "rtsdefs.h"
 #include "stgio.h"
 #include "error.h"
 
 StgInt
-filePutc(StgAddr fp, I_ c)
+filePutc(fp, c)
+StgForeignObj fp;
+StgInt c;
 {
     int rc;
 
@@ -27,3 +28,5 @@ filePutc(StgAddr fp, I_ c)
 
     return 0;
 }
+
+\end{code}
similarity index 70%
rename from ghc/lib/std/cbits/fileSize.c
rename to ghc/lib/std/cbits/fileSize.lc
index 3720251..34348fe 100644 (file)
@@ -1,12 +1,11 @@
-/* 
- * (c) The GRASP/AQUA Project, Glasgow University, 1994-1998
- *
- * $Id: fileSize.c,v 1.1 1998/04/10 10:54:27 simonm Exp $
- *
- * hClose Runtime Support
- */
+%
+% (c) The GRASP/AQUA Project, Glasgow University, 1994
+%
+\subsection[fileSize.lc]{hfileSize Runtime Support}
 
-#include "Rts.h"
+\begin{code}
+
+#include "rtsdefs.h"
 #include "stgio.h"
 
 #ifdef HAVE_SYS_TYPES_H
@@ -18,7 +17,9 @@
 #endif
   
 StgInt
-fileSize(StgAddr fp, StgByteArray result)
+fileSize(fp, result)
+StgForeignObj fp;
+StgByteArray result;
 {
     struct stat sb;
 
@@ -40,3 +41,5 @@ fileSize(StgAddr fp, StgByteArray result)
        return -1;
     }
 }
+
+\end{code}
similarity index 82%
rename from ghc/lib/std/cbits/floatExtreme.c
rename to ghc/lib/std/cbits/floatExtreme.lc
index 997e6a9..3dbecde 100644 (file)
@@ -1,21 +1,19 @@
-/* 
- * (c) The GRASP/AQUA Project, Glasgow University, 1994-1998
- *
- * $Id: floatExtreme.c,v 1.1 1998/04/10 10:54:28 simonm Exp $
- *
- * Stubs to check for extremities of (IEEE) floats, 
- * the tests have been (artfully) lifted from the hbc-0.9999.3 (lib/fltcode.c)
- * source.
- */
-
-/*
+%
+%
+%
+
+Stubs to check for extremities of (IEEE) floats, 
+the tests have been (artfully) lifted from the hbc-0.9999.3 (lib/fltcode.c)
+source.
+
 ToDo:
   - avoid hard-wiring the fact that on an
     Alpha we repr. a StgFloat as a double.
     (introduce int equivalent of {ASSIGN,PK}_FLT? )
-*/
 
-#include "Rts.h"
+\begin{code}
+
+#include "rtsdefs.h"
 #include "ieee-flpt.h"
 #include "floatExtreme.h"
 
@@ -30,7 +28,8 @@ ToDo:
 #ifdef IEEE_FLOATING_POINT
 
 StgInt
-isDoubleNaN(StgDouble d)
+isDoubleNaN(d)
+StgDouble d;
 {
     union { double d; int i[2]; } u;
     int hx,lx;
@@ -47,7 +46,8 @@ isDoubleNaN(StgDouble d)
 }
 
 StgInt
-isDoubleInfinite(StgDouble d)
+isDoubleInfinite(d)
+StgDouble d;
 {
     union { double d; int i[2]; } u;
     int hx,lx;
@@ -62,7 +62,8 @@ isDoubleInfinite(StgDouble d)
 }
 
 StgInt
-isDoubleDenormalized(StgDouble d) 
+isDoubleDenormalized(d) 
+StgDouble d;
 {
     union { double d; int i[2]; } u;
     int high, iexp;
@@ -74,7 +75,8 @@ isDoubleDenormalized(StgDouble d)
 }
 
 StgInt
-isDoubleNegativeZero(StgDouble d) 
+isDoubleNegativeZero(d) 
+StgDouble d;
 {
     union { double d; int i[2]; } u;
     int high, iexp;
@@ -86,7 +88,8 @@ isDoubleNegativeZero(StgDouble d)
 /* Same tests, this time for StgFloats. */
 
 StgInt
-isFloatNaN(StgFloat f)
+isFloatNaN(f) 
+StgFloat f;
 {
 #if !defined(alpha_TARGET_OS)
     /* StgFloat = double on alphas */
@@ -104,7 +107,8 @@ isFloatNaN(StgFloat f)
 }
 
 StgInt
-isFloatInfinite(StgFloat f)
+isFloatInfinite(f) 
+StgFloat f;
 {
 #if !defined(alpha_TARGET_OS)
     /* StgFloat = double on alphas */
@@ -121,7 +125,8 @@ isFloatInfinite(StgFloat f)
 }
 
 StgInt
-isFloatDenormalized(StgFloat f)
+isFloatDenormalized(f) 
+StgFloat f;
 {
 #if !defined(alpha_TARGET_OS)
     /* StgFloat = double on alphas */
@@ -137,7 +142,8 @@ isFloatDenormalized(StgFloat f)
 }
 
 StgInt
-isFloatNegativeZero(StgFloat f)
+isFloatNegativeZero(f) 
+StgFloat f;
 {
 #if !defined(alpha_TARGET_OS)
     /* StgFloat = double on alphas */
@@ -163,3 +169,6 @@ StgInt isFloatDenormalized(f) StgFloat f; { return 0; }
 StgInt isFloatNegativeZero(f) StgFloat f; { return 0; }
 
 #endif
+
+
+\end{code}
diff --git a/ghc/lib/std/cbits/flushFile.c b/ghc/lib/std/cbits/flushFile.c
deleted file mode 100644 (file)
index 54cf106..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-/* 
- * (c) The GRASP/AQUA Project, Glasgow University, 1994-1998
- *
- * $Id: flushFile.c,v 1.1 1998/04/10 10:54:30 simonm Exp $
- *
- * hFlush Runtime Support
- */
-
-#include "Rts.h"
-#include "stgio.h"
-
-StgInt
-flushFile(StgAddr fp)
-{
-    int rc;
-
-    while ((rc = fflush((FILE *) fp)) != 0) {
-       if (errno != EINTR) {
-           cvtErrno();
-           stdErrno();
-           return rc;
-       }
-    }
-    return 0;
-}
diff --git a/ghc/lib/std/cbits/flushFile.lc b/ghc/lib/std/cbits/flushFile.lc
new file mode 100644 (file)
index 0000000..6cfd484
--- /dev/null
@@ -0,0 +1,30 @@
+%
+% (c) The GRASP/AQUA Project, Glasgow University, 1994
+%
+\subsection[flushFile.lc]{hFlush Runtime Support}
+
+\begin{code}
+
+#include "rtsdefs.h"
+#include "stgio.h"
+
+StgInt
+flushFile(fp)
+StgForeignObj fp;
+{
+    int rc;
+
+    while ((rc = fflush((FILE *) fp)) != 0) {
+       if (errno != EINTR) {
+           cvtErrno();
+           stdErrno();
+           return rc;
+       }
+    }
+    return 0;
+}
+
+\end{code}
+
+
+
similarity index 81%
rename from ghc/lib/std/cbits/freeFile.c
rename to ghc/lib/std/cbits/freeFile.lc
index 751a48f..1ac3d52 100644 (file)
@@ -1,12 +1,11 @@
-/* 
- * (c) The GRASP/AQUA Project, Glasgow University, 1994-1998
- *
- * $Id: freeFile.c,v 1.1 1998/04/10 10:54:31 simonm Exp $
- *
- * Giving up files
- */
-
-#include "Rts.h"
+%
+% (c) The GRASP/AQUA Project, Glasgow University, 1997
+%
+\subsection[freeFile.lc]{Giving up files}
+
+\begin{code}
+
+#include "rtsdefs.h"
 #include "stgio.h"
 
 /* sigh, the FILEs attached to the standard descriptors are 
    ForeignObj finaliser, as we probably want to use these
    before we *really* shut down (dumping stats etc.)
 */
-void freeStdFile(StgAddr fp)
+void freeStdFile(fp)
+StgForeignObj fp;
 { return; }
 
-void freeFile(StgAddr fp)
+void freeFile(fp)
+StgForeignObj fp;
 {
     int rc;
 
@@ -48,3 +49,4 @@ void freeFile(StgAddr fp)
 
     return;
 }
+\end{code}
similarity index 78%
rename from ghc/lib/std/cbits/getBufferMode.c
rename to ghc/lib/std/cbits/getBufferMode.lc
index a34b317..cb0b984 100644 (file)
@@ -1,12 +1,11 @@
-/* 
- * (c) The GRASP/AQUA Project, Glasgow University, 1994-1998
- *
- * $Id: getBufferMode.c,v 1.1 1998/04/10 10:54:33 simonm Exp $
- *
- * hIs...Buffered Runtime Support
- */
+%
+% (c) The GRASP/AQUA Project, Glasgow University, 1994
+%
+\subsection[getBufferMode.lc]{hIs...Buffered Runtime Support}
+
+\begin{code}
 
-#include "Rts.h"
+#include "rtsdefs.h"
 #include "stgio.h"
 
 #ifdef HAVE_SYS_TYPES_H
@@ -28,7 +27,8 @@
 #define GBM_ERR (-3)
 
 StgInt
-getBufferMode(StgAddr fp)
+getBufferMode(fp)
+StgForeignObj fp;
 {
     struct stat sb;
 
@@ -48,3 +48,5 @@ getBufferMode(StgAddr fp)
     else
        return GBM_BB;
 }
+
+\end{code}
similarity index 88%
rename from ghc/lib/std/cbits/getCPUTime.c
rename to ghc/lib/std/cbits/getCPUTime.lc
index 250e51c..d3d7b2a 100644 (file)
@@ -1,10 +1,9 @@
-/* 
- * (c) The GRASP/AQUA Project, Glasgow University, 1994-1998
- *
- * $Id: getCPUTime.c,v 1.1 1998/04/10 10:54:34 simonm Exp $
- *
- * getCPUTime Runtime Support
- */
+%
+% (c) The GRASP/AQUA Project, Glasgow University, 1995
+%
+\subsection[getCPUTime.lc]{getCPUTime Runtime Support}
+
+\begin{code}
 
 #ifndef _AIX
 #define NON_POSIX_SOURCE /*needed for solaris2 only?*/
@@ -15,7 +14,7 @@
 #define _INCLUDE_HPUX_SOURCE
 #endif
 
-#include "Rts.h"
+#include "rtsdefs.h"
 
 #ifdef HAVE_SYS_TYPES_H
 #include <sys/types.h>
@@ -48,7 +47,7 @@
 #endif
 
 StgInt 
-clockTicks (void)
+clockTicks ()
 {
  return (
 #if defined(CLK_TCK)
@@ -101,5 +100,8 @@ getCPUTime(StgByteArray cpuStruct)
     return NULL;
 # endif
 #endif
-    return (StgByteArray)cpuStruct;
+    return (StgByteArray) cpuStruct;
 }
+
+\end{code}
+
similarity index 85%
rename from ghc/lib/std/cbits/getClockTime.c
rename to ghc/lib/std/cbits/getClockTime.lc
index 9f031bf..b6f42e6 100644 (file)
@@ -1,16 +1,15 @@
-/* 
- * (c) The GRASP/AQUA Project, Glasgow University, 1994-1998
- *
- * $Id: getClockTime.c,v 1.1 1998/04/10 10:54:35 simonm Exp $
- *
- * getClockTime Runtime Support
- */
+%
+% (c) The GRASP/AQUA Project, Glasgow University, 1995
+%
+\subsection[getClockTime.lc]{getClockTime Runtime Support}
+
+\begin{code}
 
 #ifndef _AIX
 #define NON_POSIX_SOURCE    /* gettimeofday */
 #endif
 
-#include "Rts.h"
+#include "rtsdefs.h"
 #include "stgio.h"
 
 #ifdef HAVE_GETCLOCK
@@ -75,3 +74,4 @@ getClockTime(StgByteArray sec, StgByteArray nsec)
 #endif
 #endif
 }
+\end{code}
similarity index 75%
rename from ghc/lib/std/cbits/getCurrentDirectory.c
rename to ghc/lib/std/cbits/getCurrentDirectory.lc
index a132e0b..4da895a 100644 (file)
@@ -1,12 +1,11 @@
-/* 
- * (c) The GRASP/AQUA Project, Glasgow University, 1994-1998
- *
- * $Id: getCurrentDirectory.c,v 1.1 1998/04/10 10:54:37 simonm Exp $
- *
- * getCurrentDirectory Runtime Support
- */
+%
+% (c) The GRASP/AQUA Project, Glasgow University, 1995
+%
+\subsection[getCurrentDirectory.lc]{getCurrentDirectory Runtime Support}
 
-#include "Rts.h"
+\begin{code}
+
+#include "rtsdefs.h"
 #include "stgio.h"
 
 #ifndef PATH_MAX
@@ -18,7 +17,7 @@
 #endif
 
 StgAddr
-getCurrentDirectory(void)
+getCurrentDirectory(STG_NO_ARGS)
 {
     char *pwd;
     int alloc;
@@ -45,3 +44,5 @@ getCurrentDirectory(void)
     }
     return (StgAddr) pwd;
 }
+
+\end{code}
similarity index 90%
rename from ghc/lib/std/cbits/getDirectoryContents.c
rename to ghc/lib/std/cbits/getDirectoryContents.lc
index d51f760..025aae9 100644 (file)
@@ -1,12 +1,11 @@
-/* 
- * (c) The GRASP/AQUA Project, Glasgow University, 1994-1998
- *
- * $Id: getDirectoryContents.c,v 1.1 1998/04/10 10:54:38 simonm Exp $
- *
- * getDirectoryContents Runtime Support
- */
+%
+% (c) The GRASP/AQUA Project, Glasgow University, 1995
+%
+\subsection[getDirectoryContents.lc]{getDirectoryContents Runtime Support}
 
-#include "Rts.h"
+\begin{code}
+
+#include "rtsdefs.h"
 #include "stgio.h"
 
 #ifdef HAVE_SYS_TYPES_H
@@ -45,7 +44,8 @@ freeEntries(char **entries, int count)
  */
 
 StgAddr
-getDirectoryContents(StgByteArray path)
+getDirectoryContents(path)
+StgByteArray path;
 {
     struct stat sb;
     DIR *dir;
@@ -120,3 +120,5 @@ getDirectoryContents(StgByteArray path)
        }
     }
 }
+
+\end{code}
similarity index 87%
rename from ghc/lib/std/cbits/getLock.c
rename to ghc/lib/std/cbits/getLock.lc
index c2b4762..1ed0dbf 100644 (file)
@@ -1,12 +1,11 @@
-/* 
- * (c) The GRASP/AQUA Project, Glasgow University, 1994-1998
- *
- * $Id: getLock.c,v 1.1 1998/04/10 10:54:39 simonm Exp $
- *
- * stdin/stout/stderr Runtime Support
- */
-
-#include "Rts.h"
+%
+% (c) The GRASP/AQUA Project, Glasgow University, 1994
+%
+\subsection[getLock.lc]{stdin/stout/stderr Runtime Support}
+
+\begin{code}
+
+#include "rtsdefs.h"
 #include "stgio.h"
 
 #ifdef HAVE_SYS_TYPES_H
@@ -42,7 +41,9 @@ static int readLocks = 0;
 static int writeLocks = 0;
 
 int
-lockFile(int fd, int exclusive)
+lockFile(fd, exclusive)
+int fd;
+int exclusive;
 {
     int i;
     struct stat sb;
@@ -85,7 +86,8 @@ lockFile(int fd, int exclusive)
 }
 
 int
-unlockFile(int fd)
+unlockFile(fd)
+int fd;
 {
     int i, rc;
 
@@ -109,7 +111,9 @@ unlockFile(int fd)
 }
 
 StgInt
-getLock(StgAddr fp, StgInt exclusive)
+getLock(fp, exclusive)
+StgForeignObj fp;
+StgInt exclusive;
 {
     if (lockFile(fileno((FILE *) fp), exclusive) < 0) {
        if (errno == EBADF)
@@ -133,3 +137,4 @@ getLock(StgAddr fp, StgInt exclusive)
     return 1;
 }
 
+\end{code}
similarity index 91%
rename from ghc/lib/std/cbits/inputReady.c
rename to ghc/lib/std/cbits/inputReady.lc
index e987e5a..8baa582 100644 (file)
@@ -1,17 +1,16 @@
-/* 
- * (c) The GRASP/AQUA Project, Glasgow University, 1994-1998
- *
- * $Id: inputReady.c,v 1.1 1998/04/10 10:54:40 simonm Exp $
- *
- * hReady Runtime Support
- */
+%
+% (c) The GRASP/AQUA Project, Glasgow University, 1994
+%
+\subsection[inputReady.lc]{hReady Runtime Support}
+
+\begin{code}
 
 /* select and supporting types is not */
 #ifndef _AIX
 #define NON_POSIX_SOURCE  
 #endif
 
-#include "Rts.h"
+#include "rtsdefs.h"
 #include "stgio.h"
 
 #ifdef HAVE_SYS_TYPES_H
@@ -37,7 +36,9 @@
 #endif
 
 StgInt
-inputReady(StgAddr fp, StgInt nsecs)
+inputReady(fp, nsecs)
+StgForeignObj fp;
+StgInt nsecs;
 {
     int flags, c, fd, maxfd, ready;
     fd_set rfd;
@@ -121,3 +122,5 @@ inputReady(StgAddr fp, StgInt nsecs)
        return 1;
     */
 }
+
+\end{code}
similarity index 94%
rename from ghc/lib/std/cbits/openFile.c
rename to ghc/lib/std/cbits/openFile.lc
index d203bbb..4b92aca 100644 (file)
@@ -1,12 +1,11 @@
-/* 
- * (c) The GRASP/AQUA Project, Glasgow University, 1994-1998
- *
- * $Id: openFile.c,v 1.1 1998/04/10 10:54:42 simonm Exp $
- *
- * openFile Runtime Support
- */
-
-#include "Rts.h"
+%
+% (c) The GRASP/AQUA Project, Glasgow University, 1994
+%
+\subsection[openFile.lc]{openFile Runtime Support}
+
+\begin{code}
+
+#include "rtsdefs.h"
 #include "stgio.h"
 
 #ifdef HAVE_SYS_TYPES_H
@@ -26,7 +25,9 @@
 #endif
 
 StgAddr
-openFile(StgByteArray file, StgByteArray how)
+openFile(file, how)
+StgByteArray file;
+StgByteArray how;
 {
     FILE *fp;
     int fd;
@@ -55,7 +56,7 @@ openFile(StgByteArray file, StgByteArray how)
        break;
     default:
        fprintf(stderr, "openFile: unknown mode `%s'\n", how);
-       exit(EXIT_FAILURE);
+       EXIT(EXIT_FAILURE);
     }
 
     /* First try to open without creating */
@@ -212,3 +213,5 @@ openFile(StgByteArray file, StgByteArray how)
 
     return (StgAddr) fp;
 }
+
+\end{code}
similarity index 79%
rename from ghc/lib/std/cbits/readFile.c
rename to ghc/lib/std/cbits/readFile.lc
index 2ae839c..0cc9c2c 100644 (file)
@@ -1,18 +1,20 @@
-/* 
- * (c) The GRASP/AQUA Project, Glasgow University, 1994-1998
- *
- * $Id: readFile.c,v 1.1 1998/04/10 10:54:43 simonm Exp $
- *
- * hGetContents Runtime Support
- */
+%
+% (c) The GRASP/AQUA Project, Glasgow University, 1994
+%
+\subsection[readFile.lc]{hGetContents Runtime Support}
 
-#include "Rts.h"
+\begin{code}
+
+#include "rtsdefs.h"
 #include "stgio.h"
 
 #define EOT 4
 
 StgInt
-readBlock(StgAddr buf, StgAddr fp, StgInt size)
+readBlock(buf, fp, size)
+StgAddr buf;
+StgForeignObj fp;
+StgInt size;
 {
     int count;
 
@@ -39,7 +41,10 @@ readBlock(StgAddr buf, StgAddr fp, StgInt size)
 }
 
 StgInt
-readLine(StgAddr buf, StgAddr fp, StgInt size)
+readLine(buf, fp, size)
+StgAddr buf;
+StgForeignObj fp;
+StgInt size;
 {
     if (feof((FILE *) fp)) {
        ghc_errtype = ERR_EOF;
@@ -64,7 +69,8 @@ readLine(StgAddr buf, StgAddr fp, StgInt size)
 }
 
 StgInt
-readChar(StgAddr fp)
+readChar(fp)
+StgForeignObj fp;
 {
     int c;
 
@@ -92,3 +98,5 @@ readChar(StgAddr fp)
     else
         return c;
 }
+
+\end{code}
similarity index 77%
rename from ghc/lib/std/cbits/removeDirectory.c
rename to ghc/lib/std/cbits/removeDirectory.lc
index 9eb5310..3347fd7 100644 (file)
@@ -1,12 +1,11 @@
-/* 
- * (c) The GRASP/AQUA Project, Glasgow University, 1994-1998
- *
- * $Id: removeDirectory.c,v 1.1 1998/04/10 10:54:44 simonm Exp $
- *
- * removeDirectory Runtime Support
- */
+%
+% (c) The GRASP/AQUA Project, Glasgow University, 1995
+%
+\subsection[removeDirectory.lc]{removeDirectory Runtime Support}
 
-#include "Rts.h"
+\begin{code}
+
+#include "rtsdefs.h"
 #include "stgio.h"
 
 #ifdef HAVE_SYS_TYPES_H
@@ -18,7 +17,8 @@
 #endif
 
 StgInt
-removeDirectory(StgByteArray path)
+removeDirectory(path)
+StgByteArray path;
 {
     struct stat sb;
 
@@ -53,3 +53,5 @@ removeDirectory(StgByteArray path)
     }
     return 0;
 }
+
+\end{code}
similarity index 72%
rename from ghc/lib/std/cbits/removeFile.c
rename to ghc/lib/std/cbits/removeFile.lc
index 12f2e99..095b621 100644 (file)
@@ -1,12 +1,11 @@
-/* 
- * (c) The GRASP/AQUA Project, Glasgow University, 1994-1998
- *
- * $Id: removeFile.c,v 1.1 1998/04/10 10:54:45 simonm Exp $
- *
- * removeFile Runtime Support
- */
+%
+% (c) The GRASP/AQUA Project, Glasgow University, 1995
+%
+\subsection[removeFile.lc]{removeFile Runtime Support}
 
-#include "Rts.h"
+\begin{code}
+
+#include "rtsdefs.h"
 #include "stgio.h"
 
 #ifdef HAVE_SYS_TYPES_H
@@ -18,7 +17,8 @@
 #endif
 
 StgInt
-removeFile(StgByteArray path)
+removeFile(path)
+StgByteArray path;
 {
     struct stat sb;
 
@@ -44,3 +44,5 @@ removeFile(StgByteArray path)
     }
     return 0;
 }
+
+\end{code}
similarity index 69%
rename from ghc/lib/std/cbits/renameDirectory.c
rename to ghc/lib/std/cbits/renameDirectory.lc
index 95c3af1..2a41186 100644 (file)
@@ -1,12 +1,11 @@
-/* 
- * (c) The GRASP/AQUA Project, Glasgow University, 1994-1998
- *
- * $Id: renameDirectory.c,v 1.1 1998/04/10 10:54:47 simonm Exp $
- *
- * renameDirectory Runtime Support
- */
+%
+% (c) The GRASP/AQUA Project, Glasgow University, 1995
+%
+\subsection[renameDirectory.lc]{renameDirectory Runtime Support}
 
-#include "Rts.h"
+\begin{code}
+
+#include "rtsdefs.h"
 #include "stgio.h"
 
 #ifdef HAVE_SYS_TYPES_H
@@ -18,7 +17,9 @@
 #endif
 
 StgInt
-renameDirectory(StgByteArray opath, StgByteArray npath)
+renameDirectory(opath, npath)
+StgByteArray opath;
+StgByteArray npath;
 {
     struct stat sb;
 
@@ -44,3 +45,4 @@ renameDirectory(StgByteArray opath, StgByteArray npath)
     }
     return 0;
 }
+\end{code}
similarity index 91%
rename from ghc/lib/std/cbits/renameFile.c
rename to ghc/lib/std/cbits/renameFile.lc
index c52d575..2bcb9c0 100644 (file)
@@ -1,12 +1,11 @@
-/* 
- * (c) The GRASP/AQUA Project, Glasgow University, 1994-1998
- *
- * $Id: renameFile.c,v 1.1 1998/04/10 10:54:48 simonm Exp $
- *
- * renameFile Runtime Support
- */
+%
+% (c) The GRASP/AQUA Project, Glasgow University, 1995
+%
+\subsection[renameFile.lc]{renameFile Runtime Support}
 
-#include "Rts.h"
+\begin{code}
+
+#include "rtsdefs.h"
 #include "stgio.h"
 
 #ifdef HAVE_SYS_TYPES_H
@@ -22,7 +21,9 @@
 #endif
 
 StgInt
-renameFile(StgByteArray opath, StgByteArray npath)
+renameFile(opath, npath)
+StgByteArray opath;
+StgByteArray npath;
 {
     struct stat sb;
     int fd;
@@ -128,3 +129,4 @@ renameFile(StgByteArray opath, StgByteArray npath)
     close(fd);    
     return 0;
 }
+\end{code}
similarity index 88%
rename from ghc/lib/std/cbits/seekFile.c
rename to ghc/lib/std/cbits/seekFile.lc
index 2946fe2..48c0cf7 100644 (file)
@@ -1,12 +1,11 @@
-/* 
- * (c) The GRASP/AQUA Project, Glasgow University, 1994-1998
- *
- * $Id: seekFile.c,v 1.1 1998/04/10 10:54:49 simonm Exp $
- *
- * hSeek and hIsSeekable Runtime Support
- */
+%
+% (c) The GRASP/AQUA Project, Glasgow University, 1994
+%
+\subsection[seekFile.lc]{hSeek and hIsSeekable Runtime Support}
 
-#include "Rts.h"
+\begin{code}
+
+#include "rtsdefs.h"
 #include "stgio.h"
 
 #ifdef HAVE_SYS_TYPES_H
 #endif
 
 StgInt
-seekFile(StgAddr fp, StgInt whence, StgInt size, StgByteArray d)
+seekFile(fp, whence, size, d)
+StgForeignObj fp;
+StgInt whence;
+StgInt size;
+StgByteArray d;
 {
     struct stat sb;
     long int offset;
@@ -102,7 +105,8 @@ seekFile(StgAddr fp, StgInt whence, StgInt size, StgByteArray d)
 }
 
 StgInt
-seekFileP(StgAddr fp)
+seekFileP(fp)
+StgForeignObj fp;
 {
     struct stat sb;
 
@@ -124,3 +128,8 @@ seekFileP(StgAddr fp)
        return 0;
     }
 }
+
+\end{code}
+
+
+
similarity index 89%
rename from ghc/lib/std/cbits/setBuffering.c
rename to ghc/lib/std/cbits/setBuffering.lc
index b8cf413..0169b50 100644 (file)
@@ -1,12 +1,11 @@
-/* 
- * (c) The GRASP/AQUA Project, Glasgow University, 1994-1998
- *
- * $Id: setBuffering.c,v 1.1 1998/04/10 10:54:51 simonm Exp $
- *
- * hSetBuffering Runtime Support
- */
-
-#include "Rts.h"
+%
+% (c) The GRASP/AQUA Project, Glasgow University, 1994
+%
+\subsection[setBuffering.lc]{hSetBuffering Runtime Support}
+
+\begin{code}
+
+#include "rtsdefs.h"
 #include "stgio.h"
 
 #ifdef HAVE_SYS_TYPES_H
@@ -30,7 +29,9 @@
 #define SB_BB (-2)
 
 StgInt
-setBuffering(StgAddr fp, StgInt size)
+setBuffering(fp, size)
+StgForeignObj fp;
+StgInt size;
 {
     int flags;
     int input;
@@ -118,3 +119,5 @@ setBuffering(StgAddr fp, StgInt size)
     }
     return 0;
 }
+
+\end{code}
diff --git a/ghc/lib/std/cbits/setCurrentDirectory.c b/ghc/lib/std/cbits/setCurrentDirectory.c
deleted file mode 100644 (file)
index 60fbdaf..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-/* 
- * (c) The GRASP/AQUA Project, Glasgow University, 1994-1998
- *
- * $Id: setCurrentDirectory.c,v 1.1 1998/04/10 10:54:52 simonm Exp $
- *
- * setCurrentDirectory Runtime Support
- */
-
-#include "Rts.h"
-#include "stgio.h"
-
-StgInt
-setCurrentDirectory(StgByteArray path)
-{
-    while (chdir(path) != 0) {
-       if (errno != EINTR) {
-           cvtErrno();
-           stdErrno();
-           return -1;
-       }
-    }
-    return 0;
-}
diff --git a/ghc/lib/std/cbits/setCurrentDirectory.lc b/ghc/lib/std/cbits/setCurrentDirectory.lc
new file mode 100644 (file)
index 0000000..96fdf59
--- /dev/null
@@ -0,0 +1,25 @@
+%
+% (c) The GRASP/AQUA Project, Glasgow University, 1995
+%
+\subsection[setCurrentDirectory.lc]{setCurrentDirectory Runtime Support}
+
+\begin{code}
+
+#include "rtsdefs.h"
+#include "stgio.h"
+
+StgInt
+setCurrentDirectory(path)
+StgByteArray path;
+{
+    while (chdir(path) != 0) {
+       if (errno != EINTR) {
+           cvtErrno();
+           stdErrno();
+           return -1;
+       }
+    }
+    return 0;
+}
+
+\end{code}
similarity index 83%
rename from ghc/lib/std/cbits/showTime.c
rename to ghc/lib/std/cbits/showTime.lc
index 3e2bfd7..08adcd5 100644 (file)
@@ -1,12 +1,11 @@
-/* 
- * (c) The GRASP/AQUA Project, Glasgow University, 1994-1998
- *
- * $Id: showTime.c,v 1.1 1998/04/10 10:54:53 simonm Exp $
- *
- * ClockTime.showsPrec Runtime Support
- */
+%
+% (c) The GRASP/AQUA Project, Glasgow University, 1995
+%
+\subsection[showTime.lc]{ClockTime.showsPrec Runtime Support}
 
-#include "Rts.h"
+\begin{code}
+
+#include "rtsdefs.h"
 #include "stgio.h"
 
 #if TIME_WITH_SYS_TIME
@@ -49,3 +48,4 @@ showTime(I_ size, StgByteArray d, StgByteArray buf)
        return (StgAddr)buf;
     return (StgAddr)strcpy(buf, "ClockTime.show{LibTime}: internal error");
 }
+\end{code}
similarity index 86%
rename from ghc/lib/std/cbits/system.c
rename to ghc/lib/std/cbits/system.lc
index aff3a88..924c8d4 100644 (file)
@@ -1,12 +1,11 @@
-/* 
- * (c) The GRASP/AQUA Project, Glasgow University, 1994-1998
- *
- * $Id: system.c,v 1.1 1998/04/10 10:54:55 simonm Exp $
- *
- * system Runtime Support
- */
+%
+% (c) The GRASP/AQUA Project, Glasgow University, 1995
+%
+\subsection[system.lc]{system Runtime Support}
 
-#include "Rts.h"
+\begin{code}
+
+#include "rtsdefs.h"
 #include "stgio.h"
 
 #ifdef HAVE_SYS_WAIT_H
@@ -22,7 +21,8 @@
 #endif
 
 StgInt
-systemCmd(StgByteArray cmd)
+systemCmd(cmd)
+StgByteArray cmd;
 {
 #if defined(cygwin32_TARGET_OS)
    /* The implementation of std. fork() has its problems
@@ -77,3 +77,5 @@ systemCmd(StgByteArray cmd)
     return -1;
 #endif
 }
+
+\end{code}
similarity index 75%
rename from ghc/lib/std/cbits/toClockSec.c
rename to ghc/lib/std/cbits/toClockSec.lc
index 3d4a5d1..3107ae3 100644 (file)
@@ -1,12 +1,11 @@
-/* 
- * (c) The GRASP/AQUA Project, Glasgow University, 1994-1998
- *
- * $Id: toClockSec.c,v 1.1 1998/04/10 10:54:57 simonm Exp $
- *
- * toClockSec Runtime Support
- */
+%
+% (c) The GRASP/AQUA Project, Glasgow University, 1995
+%
+\subsection[toClockSec.lc]{toClockSec Runtime Support}
 
-#include "Rts.h"
+\begin{code}
+
+#include "rtsdefs.h"
 #include "timezone.h"
 #include "stgio.h"
 
@@ -39,3 +38,4 @@ toClockSec(I_ year, I_ mon, I_ mday, I_ hour, I_ min, I_ sec, I_ isdst, StgByteA
     *(time_t *)res = t;
     return res;
 }
+\end{code}
similarity index 87%
rename from ghc/lib/std/cbits/toLocalTime.c
rename to ghc/lib/std/cbits/toLocalTime.lc
index 6e775b7..11a1e30 100644 (file)
@@ -1,12 +1,11 @@
-/* 
- * (c) The GRASP/AQUA Project, Glasgow University, 1994-1998
- *
- * $Id: toLocalTime.c,v 1.1 1998/04/10 10:54:58 simonm Exp $
- *
- * toCalendarTime Runtime Support
- */
+%
+% (c) The GRASP/AQUA Project, Glasgow University, 1995
+%
+\subsection[toLocalTime.lc]{toCalendarTime Runtime Support}
 
-#include "Rts.h"
+\begin{code}
+
+#include "rtsdefs.h"
 #include "timezone.h"
 #include "stgio.h"
 
@@ -65,3 +64,4 @@ toLocalTime(I_ size, StgByteArray d, StgByteArray res)
 
     return (StgAddr)res;
 }
+\end{code}
similarity index 88%
rename from ghc/lib/std/cbits/toUTCTime.c
rename to ghc/lib/std/cbits/toUTCTime.lc
index 80c41a3..86f449e 100644 (file)
@@ -1,12 +1,11 @@
-/* 
- * (c) The GRASP/AQUA Project, Glasgow University, 1994-1998
- *
- * $Id: toUTCTime.c,v 1.1 1998/04/10 10:54:59 simonm Exp $
- *
- * toUTCTime Runtime Support
- */
+%
+% (c) The GRASP/AQUA Project, Glasgow University, 1995
+%
+\subsection[toUTCTime.lc]{toUTCTime Runtime Support}
 
-#include "Rts.h"
+\begin{code}
+
+#include "rtsdefs.h"
 #include "timezone.h"
 #include "stgio.h"
 
@@ -70,3 +69,4 @@ toUTCTime(I_ size, StgByteArray d, StgByteArray res)
 
     return (StgAddr)res;
 }
+\end{code}
similarity index 69%
rename from ghc/lib/std/cbits/writeFile.c
rename to ghc/lib/std/cbits/writeFile.lc
index 65e1f95..80b946f 100644 (file)
@@ -1,16 +1,18 @@
-/* 
- * (c) The GRASP/AQUA Project, Glasgow University, 1994-1998
- *
- * $Id: writeFile.c,v 1.1 1998/04/10 10:55:00 simonm Exp $
- *
- * hPutStr Runtime Support
- */
-
-#include "Rts.h"
+%
+% (c) The GRASP/AQUA Project, Glasgow University, 1994
+%
+\subsection[writeFile.lc]{hPutStr Runtime Support}
+
+\begin{code}
+
+#include "rtsdefs.h"
 #include "stgio.h"
 
 StgInt
-writeFile(StgAddr buf, StgAddr fp, StgInt bytes)
+writeFile(buf, fp, bytes)
+StgAddr buf;
+StgForeignObj fp;
+StgInt bytes;
 {
     int count;
     char *p = (char *) buf;
@@ -35,7 +37,11 @@ writeFile(StgAddr buf, StgAddr fp, StgInt bytes)
 
 
 StgInt
-writeBuf(StgAddr fp, W_ elt_sz, I_ len, StgAddr buf)
+writeBuf(fp, elt_sz, len, buf)
+StgForeignObj fp;
+StgWord elt_sz;
+StgInt  len;
+StgAddr buf;
 {
     int count;
     char *p = (char *) buf;
@@ -57,3 +63,5 @@ writeBuf(StgAddr fp, W_ elt_sz, I_ len, StgAddr buf)
 
     return 0;
 }
+
+\end{code}