* Basic data type definitions, prototypes and standard macros including
* machine dependent variations...
*
- * Copyright (c) The University of Nottingham and Yale University, 1994-1997.
- * All rights reserved. See NOTICE for details and conditions of use etc...
- * Hugs version 1.4, December 1997
+ * The Hugs 98 system is Copyright (c) Mark P Jones, Alastair Reid, the
+ * Yale Haskell Group, and the Oregon Graduate Institute of Science and
+ * Technology, 1994-1999, All rights reserved. It is distributed as
+ * free software under the license in the file "License", which is
+ * included in the distribution.
*
* $RCSfile: prelude.h,v $
- * $Revision: 1.4 $
- * $Date: 1999/10/15 19:11:55 $
+ * $Revision: 1.9 $
+ * $Date: 2000/03/13 11:37:16 $
* ------------------------------------------------------------------------*/
+#define NON_POSIX_SOURCE
+/* AJG: machdep.h needs this, for S_IREAD and S_IFREG in cygwin? */
+
#include "config.h"
#include "options.h"
#include <stdio.h>
* dynamic linking declarations
*-------------------------------------------------------------------------*/
-#if HAVE_PROTOTYPES /* To enable use of prototypes whenever possible */
-#define Args(x) x
-#else
-#define Args(x) ()
-#endif
-
/* local = prefix for locally defined functions */
/* far = prefix for far pointers */
#if DOS
*-------------------------------------------------------------------------*/
#if !DOS && VOID_INT_SIGNALS
-# define sigProto(nm) void nm Args((int))
+# define sigProto(nm) void nm ( int )
# define sigRaise(nm) nm(1)
-# define sigHandler(nm) void nm(sig_arg) int sig_arg;
+# define sigHandler(nm) void nm ( sig_arg ) int sig_arg;
# define sigResume return
#else
-# define sigProto(nm) int nm Args((Void))
+# define sigProto(nm) int nm ( Void )
# define sigRaise(nm) nm()
-# define sigHandler(nm) int nm(Void)
+# define sigHandler(nm) int nm ( Void )
# define sigResume return 1
#endif
#if REDIRECT_OUTPUT
-extern Void hugsPrintf Args((const char *, ...));
-extern Void hugsPutchar Args((int));
-extern Void hugsFlushStdout Args((Void));
-extern Void hugsEnableOutput Args((Bool));
-extern String hugsClearOutputBuffer Args((Void));
+extern Void hugsPrintf ( const char *, ... );
+extern Void hugsPutchar ( int );
+extern Void hugsFlushStdout ( Void );
+extern Void hugsEnableOutput ( Bool );
+extern String hugsClearOutputBuffer ( Void );
-extern Void hugsFFlush Args((FILE*));
-extern Void hugsFPrintf Args((FILE*, const char*, ...));
-extern Void hugsPutc Args((int, FILE*));
+extern Void hugsFFlush ( FILE* );
+extern Void hugsFPrintf ( FILE*, const char*, ... );
+extern Void hugsPutc ( int, FILE* );
#define Printf hugsPrintf
#define Putchar hugsPutchar