/*
* (c) The GRASP/AQUA Project, Glasgow University, 1994-1998
*
- * $Id: fileSize.c,v 1.3 1998/12/02 13:27:30 simonm Exp $
+ * $Id: fileSize.c,v 1.7 2001/04/02 16:10:32 rrt Exp $
*
* hClose Runtime Support
*/
#endif
StgInt
-fileSize(ptr, result)
-StgForeignPtr ptr;
-StgByteArray result;
+fileSize(StgForeignPtr ptr, StgByteArray result)
{
IOFileObject* fo = (IOFileObject*)ptr;
struct stat sb;
}
if (S_ISREG(sb.st_mode)) {
/* result will be word aligned */
+#if defined( macosx_TARGET_OS )
+ *(W_ *) result = (W_)sb.st_size;
+#else
*(off_t *) result = sb.st_size;
+#endif
return 0;
} else {
ghc_errtype = ERR_INAPPROPRIATETYPE;
}
StgInt
-fileSize_int64(ptr, result)
-StgForeignPtr ptr;
-StgByteArray result;
+fileSize_int64(StgForeignPtr ptr, StgByteArray result)
{
IOFileObject* fo = (IOFileObject*)ptr;
struct stat sb;