purge more E for extern

This commit is contained in:
nhmall
2022-11-03 15:42:24 -04:00
parent f6b3b968e7
commit fac75f5ae4
2 changed files with 192 additions and 199 deletions

View File

@@ -6,8 +6,6 @@
#ifndef DECL_H
#define DECL_H
#define E extern
/* max size of a windowtype option */
#define WINTYPELEN 16
@@ -79,7 +77,7 @@ struct dgn_topology { /* special dungeon levels for speed */
#include "quest.h"
E NEARDATA char tune[6];
extern NEARDATA char tune[6];
#define MAXLINFO (MAXDUNGEON * MAXLEVEL)
@@ -161,15 +159,15 @@ typedef struct {
struct fieldlevel_content style;
} NHFILE;
E const char quitchars[];
E const char vowels[];
E const char ynchars[];
E const char ynqchars[];
E const char ynaqchars[];
E const char ynNaqchars[];
E NEARDATA long yn_number;
extern const char quitchars[];
extern const char vowels[];
extern const char ynchars[];
extern const char ynqchars[];
extern const char ynaqchars[];
extern const char ynNaqchars[];
extern NEARDATA long yn_number;
E const char disclosure_options[];
extern const char disclosure_options[];
struct kinfo {
struct kinfo *next; /* chain of delayed killers */
@@ -231,31 +229,31 @@ struct multishot {
boolean s;
};
E NEARDATA boolean has_strong_rngseed;
E const int shield_static[];
extern NEARDATA boolean has_strong_rngseed;
extern const int shield_static[];
#include "spell.h"
E const struct class_sym def_oc_syms[MAXOCLASSES]; /* default class symbols */
E uchar oc_syms[MAXOCLASSES]; /* current class symbols */
E const struct class_sym def_monsyms[MAXMCLASSES]; /* default class symbols */
E uchar monsyms[MAXMCLASSES]; /* current class symbols */
extern const struct class_sym def_oc_syms[MAXOCLASSES]; /* default class symbols */
extern uchar oc_syms[MAXOCLASSES]; /* current class symbols */
extern const struct class_sym def_monsyms[MAXMCLASSES]; /* default class symbols */
extern uchar monsyms[MAXMCLASSES]; /* current class symbols */
#include "obj.h"
E NEARDATA struct obj *uarm, *uarmc, *uarmh, *uarms, *uarmg, *uarmf,
extern NEARDATA struct obj *uarm, *uarmc, *uarmh, *uarms, *uarmg, *uarmf,
*uarmu, /* under-wear, so to speak */
*uskin, *uamul, *uleft, *uright, *ublindf, *uwep, *uswapwep, *uquiver;
E NEARDATA struct obj *uchain; /* defined only when punished */
E NEARDATA struct obj *uball;
extern NEARDATA struct obj *uchain; /* defined only when punished */
extern NEARDATA struct obj *uball;
#include "engrave.h"
E struct engr *head_engr;
extern struct engr *head_engr;
#include "you.h"
E NEARDATA struct you u;
E NEARDATA time_t ubirthday;
E NEARDATA struct u_realtime urealtime;
extern NEARDATA struct you u;
extern NEARDATA time_t ubirthday;
extern NEARDATA struct u_realtime urealtime;
struct mvitals {
uchar born;
@@ -269,7 +267,7 @@ struct c_color_names {
*const c_blue, *const c_purple, *const c_white, *const c_orange;
};
E NEARDATA const struct c_color_names c_color_names;
extern NEARDATA const struct c_color_names c_color_names;
#define NH_BLACK c_color_names.c_black
#define NH_AMBER c_color_names.c_amber
@@ -284,7 +282,7 @@ E NEARDATA const struct c_color_names c_color_names;
#define NH_ORANGE c_color_names.c_orange
/* The names of the colors used for gems, etc. */
E const char *c_obj_colors[];
extern const char *c_obj_colors[];
struct c_common_strings {
const char *const c_nothing_happens, *const c_thats_enough_tries,
@@ -294,7 +292,7 @@ struct c_common_strings {
*const c_fakename[2];
};
E const struct c_common_strings c_common_strings;
extern const struct c_common_strings c_common_strings;
#define nothing_happens c_common_strings.c_nothing_happens
#define thats_enough_tries c_common_strings.c_thats_enough_tries
@@ -311,10 +309,10 @@ E const struct c_common_strings c_common_strings;
#define fakename c_common_strings.c_fakename
/* material strings */
E const char *materialnm[];
extern const char *materialnm[];
/* empty string that is non-const for parameter use */
E char emptystr[];
extern char emptystr[];
/* Monster name articles */
#define ARTICLE_NONE 0
@@ -332,9 +330,9 @@ E char emptystr[];
#define AUGMENT_IT 0x20 /* use "someone" or "something" instead of "it" */
/* Window system stuff */
E NEARDATA winid WIN_MESSAGE;
E NEARDATA winid WIN_STATUS;
E NEARDATA winid WIN_MAP, WIN_INVEN;
extern NEARDATA winid WIN_MESSAGE;
extern NEARDATA winid WIN_STATUS;
extern NEARDATA winid WIN_MAP, WIN_INVEN;
/* pline (et al) for a single string argument (suppress compiler warning) */
#define pline1(cstr) pline("%s", cstr)
@@ -346,7 +344,7 @@ E NEARDATA winid WIN_MAP, WIN_INVEN;
#define panic1(cstr) panic("%s", cstr)
#ifndef TCAP_H
E struct tc_gbl_data { /* also declared in tcap.h */
extern struct tc_gbl_data { /* also declared in tcap.h */
char *tc_AS, *tc_AE; /* graphics start and end (tty font swapping) */
int tc_LI, tc_CO; /* lines and columns */
} tc_gbl_data;
@@ -385,19 +383,19 @@ E struct tc_gbl_data { /* also declared in tcap.h */
#endif
#ifdef WIN32
E boolean fqn_prefix_locked[PREFIX_COUNT];
extern boolean fqn_prefix_locked[PREFIX_COUNT];
#endif
#ifdef PREFIXES_IN_USE
E const char *fqn_prefix_names[PREFIX_COUNT];
extern const char *fqn_prefix_names[PREFIX_COUNT];
#endif
struct restore_info {
const char *name;
int mread_flags;
};
E struct restore_info restoreinfo;
extern struct restore_info restoreinfo;
E NEARDATA struct savefile_info sfcap, sfrestinfo, sfsaveinfo;
extern NEARDATA struct savefile_info sfcap, sfrestinfo, sfsaveinfo;
struct selectionvar {
int wid, hei;
@@ -434,7 +432,7 @@ struct breadcrumbs {
boolean in_effect;
};
#ifdef PANICTRACE
E const char *ARGV0;
extern const char *ARGV0;
#endif
enum earlyarg {
@@ -1289,7 +1287,7 @@ struct instance_globals {
unsigned long magic; /* validate that structure layout is preserved */
};
E struct instance_globals g;
extern struct instance_globals g;
struct const_globals {
const struct obj zeroobj; /* used to zero out a struct obj */
@@ -1297,9 +1295,7 @@ struct const_globals {
const anything zeroany; /* used to zero out union any */
};
E const struct const_globals cg;
#undef E
extern const struct const_globals cg;
#endif /* DECL_H */

View File

@@ -17,7 +17,6 @@
#if !defined(WIN32)
#if !defined(__cplusplus) && !defined(__GO32__)
#define E extern
/* some old <sys/types.h> may not define off_t and size_t; if your system is
* one of these, define them by hand below
@@ -89,20 +88,20 @@ typedef long off_t;
#undef random
#endif
#if !defined(__SC__) && !defined(LINUX)
E long random(void);
extern long random(void);
#endif
#if (!defined(SUNOS4) && !defined(bsdi) && !defined(__FreeBSD__)) \
|| defined(RANDOM)
E void srandom(unsigned int);
extern void srandom(unsigned int);
#else
#if !defined(bsdi) && !defined(__FreeBSD__)
E int srandom(unsigned int);
extern int srandom(unsigned int);
#endif
#endif
#else
#if defined(MACOS)
E long lrand48(void);
E void srand48(long);
extern long lrand48(void);
extern void srand48(long);
#else
extern long lrand48(void);
extern void srand48(long);
@@ -112,7 +111,7 @@ extern void srand48(long);
#if !defined(BSD) || defined(ultrix)
/* real BSD wants all these to return int */
#ifndef MICRO
E void exit(int);
extern void exit(int);
#endif /* MICRO */
/* compensate for some CSet/2 bogosities */
#if defined(OS2_CSET2) && defined(OS2_CSET2_VER_2)
@@ -131,30 +130,30 @@ E void exit(int);
#if defined(__STDC__) || !defined(FLEX_SCANNER)
#ifndef OS2_CSET2
#ifndef MONITOR_HEAP
E void free(genericptr_t);
extern void free(genericptr_t);
#endif
#endif
#endif
#if !defined(__SASC_60) && !defined(_DCC) && !defined(__SC__)
#if defined(AMIGA) && !defined(AZTEC_50) && !defined(__GNUC__)
E int perror(const char *);
extern int perror(const char *);
#else
#if !(defined(ULTRIX_PROTO) && defined(__GNUC__))
E void perror(const char *);
extern void perror(const char *);
#endif
#endif
#endif
#endif
#ifndef NeXT
#ifdef POSIX_TYPES
E void qsort(genericptr_t, size_t, size_t,
extern void qsort(genericptr_t, size_t, size_t,
int (*)(const genericptr, const genericptr));
#else
#if defined(BSD) || defined(ULTRIX)
E int qsort();
extern int qsort();
#else
#if !defined(LATTICE) && !defined(AZTEC_50)
E void qsort(genericptr_t, size_t, size_t,
extern void qsort(genericptr_t, size_t, size_t,
int (*)(const genericptr, const genericptr));
#endif
#endif
@@ -167,21 +166,21 @@ E void qsort(genericptr_t, size_t, size_t,
#ifdef ULTRIX
#ifdef ULTRIX_PROTO
E int lseek(int, off_t, int);
extern int lseek(int, off_t, int);
#else
E long lseek(int, off_t, int);
extern long lseek(int, off_t, int);
#endif
/* Ultrix 3.0 man page mistakenly says it returns an int. */
E int write(int, char *, int);
E int link(const char *, const char *);
extern int write(int, char *, int);
extern int link(const char *, const char *);
#else /*!ULTRIX*/
#if !(defined(bsdi) || defined(VMS))
E long lseek(int, long, int);
extern long lseek(int, long, int);
#if defined(POSIX_TYPES) || defined(__TURBOC__)
E int write(int, const void *, unsigned);
extern int write(int, const void *, unsigned);
#else
#ifndef __MWERKS__ /* metrowerks defines write via universal headers */
E int write(int, genericptr_t, unsigned);
extern int write(int, genericptr_t, unsigned);
#endif
#endif /*?(POSIX_TYPES || __TURBOC__)*/
#endif /*!(bsdi || VMS)*/
@@ -189,13 +188,13 @@ E int write(int, genericptr_t, unsigned);
#ifdef OS2_CSET2 /* IBM CSet/2 */
#ifdef OS2_CSET2_VER_1
E int unlink(char *);
extern int unlink(char *);
#else
E int unlink(const char *); /* prototype is ok in ver >= 2 */
extern int unlink(const char *); /* prototype is ok in ver >= 2 */
#endif
#else
#ifndef __SC__
E int unlink(const char *);
extern int unlink(const char *);
#endif
#endif
@@ -203,111 +202,111 @@ E int unlink(const char *);
#ifdef MAC
#ifndef __CONDITIONALMACROS__ /* universal headers */
E int close(int); /* unistd.h */
E int read(int, char *, int); /* unistd.h */
E int chdir(const char *); /* unistd.h */
E char *getcwd(char *, int); /* unistd.h */
extern int close(int); /* unistd.h */
extern int read(int, char *, int); /* unistd.h */
extern int chdir(const char *); /* unistd.h */
extern char *getcwd(char *, int); /* unistd.h */
#endif
E int open(const char *, int);
extern int open(const char *, int);
#endif
#if defined(MICRO)
E int close(int);
extern int close(int);
#ifndef __EMX__
E int read(int, genericptr_t, unsigned int);
extern int read(int, genericptr_t, unsigned int);
#endif
E int open(const char *, int, ...);
E int dup2(int, int);
E int setmode(int, int);
E int kbhit(void);
extern int open(const char *, int, ...);
extern int dup2(int, int);
extern int setmode(int, int);
extern int kbhit(void);
#if !defined(_DCC)
#if defined(__TURBOC__)
E int chdir(const char *);
extern int chdir(const char *);
#else
#ifndef __EMX__
E int chdir(char *);
extern int chdir(char *);
#endif
#endif
#ifndef __EMX__
E char *getcwd(char *, int);
extern char *getcwd(char *, int);
#endif
#endif /* !_DCC */
#endif
#ifdef ULTRIX
E int close(int);
E int atoi(const char *);
E long atol(const char *);
E int chdir(const char *);
extern int close(int);
extern int atoi(const char *);
extern long atol(const char *);
extern int chdir(const char *);
#if !defined(ULTRIX_CC20) && !defined(__GNUC__)
E int chmod(const char *, int);
E mode_t umask(int);
extern int chmod(const char *, int);
extern mode_t umask(int);
#endif
E int read(int, genericptr_t, unsigned);
extern int read(int, genericptr_t, unsigned);
/* these aren't quite right, but this saves including lots of system files */
E int stty(int, genericptr_t);
E int gtty(int, genericptr_t);
E int ioctl(int, int, char *);
E int isatty(int); /* 1==yes, 0==no, -1==error */
extern int stty(int, genericptr_t);
extern int gtty(int, genericptr_t);
extern int ioctl(int, int, char *);
extern int isatty(int); /* 1==yes, 0==no, -1==error */
#include <sys/file.h>
#if defined(ULTRIX_PROTO) || defined(__GNUC__)
E int fork(void);
extern int fork(void);
#else
E long fork(void);
extern long fork(void);
#endif
#endif /* ULTRIX */
#ifdef VMS
#ifndef abs
E int abs(int);
extern int abs(int);
#endif
E int atexit(void (*)(void));
E int atoi(const char *);
E long atol(const char *);
E int chdir(const char *);
E int chown(const char *, unsigned, unsigned);
extern int atexit(void (*)(void));
extern int atoi(const char *);
extern long atol(const char *);
extern int chdir(const char *);
extern int chown(const char *, unsigned, unsigned);
#ifdef __DECC_VER
E int chmod(const char *, mode_t);
E mode_t umask(mode_t);
extern int chmod(const char *, mode_t);
extern mode_t umask(mode_t);
#else
E int chmod(const char *, int);
E int umask(int);
extern int chmod(const char *, int);
extern int umask(int);
#endif
/* #include <unixio.h> */
E int close(int);
E int creat(const char *, unsigned, ...);
E int delete(const char *);
E int fstat(/*_ int, stat_t * _*/);
E int isatty(int); /* 1==yes, 0==no, -1==error */
E off_t lseek(int, off_t, int);
E int open(const char *, int, unsigned, ...);
E int read(int, genericptr_t, unsigned);
E int rename(const char *, const char *);
E int stat(/*_ const char *,stat_t * _*/);
E int write(int, const genericptr, unsigned);
extern int close(int);
extern int creat(const char *, unsigned, ...);
extern int delete(const char *);
extern int fstat(/*_ int, stat_t * _*/);
extern int isatty(int); /* 1==yes, 0==no, -1==error */
extern off_t lseek(int, off_t, int);
extern int open(const char *, int, unsigned, ...);
extern int read(int, genericptr_t, unsigned);
extern int rename(const char *, const char *);
extern int stat(/*_ const char *,stat_t * _*/);
extern int write(int, const genericptr, unsigned);
#endif
#endif /* __SASC_60 */
/* both old & new versions of Ultrix want these, but real BSD does not */
#ifdef ultrix
E void abort();
E void bcopy();
extern void abort();
extern void bcopy();
#ifdef ULTRIX
E int system(const char *);
extern int system(const char *);
#ifndef _UNISTD_H_
E int execl(const char *, ...);
extern int execl(const char *, ...);
#endif
#endif
#endif
#ifdef MICRO
E void abort(void);
E void _exit(int);
E int system(const char *);
extern void abort(void);
extern void _exit(int);
extern int system(const char *);
#endif
#if defined(HPUX) && !defined(_POSIX_SOURCE)
E long fork(void);
extern long fork(void);
#endif
#ifdef POSIX_TYPES
@@ -318,89 +317,89 @@ E long fork(void);
#if defined(NHSTDC) || (defined(VMS) && !defined(ANCIENT_VAXC))
#if !defined(_AIX32) && !(defined(SUNOS4) && defined(__STDC__))
/* Solaris unbundled cc (acc) */
E int memcmp(const void *, const void *, size_t);
E void *memcpy(void *, const void *, size_t);
E void *memset(void *, int, size_t);
extern int memcmp(const void *, const void *, size_t);
extern void *memcpy(void *, const void *, size_t);
extern void *memset(void *, int, size_t);
#endif
#else
#ifndef memcmp /* some systems seem to macro these back to b*() */
E int memcmp();
extern int memcmp();
#endif
#ifndef memcpy
E char *memcpy();
extern char *memcpy();
#endif
#ifndef memset
E char *memset();
extern char *memset();
#endif
#endif
#else
#ifdef HPUX
E int memcmp(char *, char *, int);
E void *memcpy(char *, char *, int);
E void *memset(char *, int, int);
extern int memcmp(char *, char *, int);
extern void *memcpy(char *, char *, int);
extern void *memset(char *, int, int);
#endif
#endif
#endif /* POSIX_TYPES */
#if defined(MICRO) && !defined(LATTICE)
#if defined(TOS) && defined(__GNUC__)
E int memcmp(const void *, const void *, size_t);
E void *memcpy(void *, const void *, size_t);
E void *memset(void *, int, size_t);
extern int memcmp(const void *, const void *, size_t);
extern void *memcpy(void *, const void *, size_t);
extern void *memset(void *, int, size_t);
#else
#if defined(AZTEC_50) || defined(NHSTDC)
E int memcmp(const void *, const void *, size_t);
E void *memcpy(void *, const void *, size_t);
E void *memset(void *, int, size_t);
extern int memcmp(const void *, const void *, size_t);
extern void *memcpy(void *, const void *, size_t);
extern void *memset(void *, int, size_t);
#else
E int memcmp(char *, char *, unsigned int);
E char *memcpy(char *, char *, unsigned int);
E char *memset(char *, int, int);
extern int memcmp(char *, char *, unsigned int);
extern char *memcpy(char *, char *, unsigned int);
extern char *memset(char *, int, int);
#endif /* AZTEC_50 || NHSTDC */
#endif /* TOS */
#endif /* MICRO */
#if defined(BSD) && defined(ultrix) /* i.e., old versions of Ultrix */
E void sleep();
extern void sleep();
#endif
#if defined(ULTRIX) || defined(SYSV)
extern unsigned int sleep(unsigned int);
#endif
#if defined(HPUX)
E unsigned int sleep(unsigned int);
extern unsigned int sleep(unsigned int);
#endif
#ifdef VMS
E int sleep(unsigned);
extern int sleep(unsigned);
#endif
E char *getenv(const char *);
extern char *getenv(const char *);
extern char *getlogin(void);
#if defined(HPUX) && !defined(_POSIX_SOURCE)
E long getuid(void);
E long getgid(void);
E long getpid(void);
extern long getuid(void);
extern long getgid(void);
extern long getpid(void);
#else
#ifdef POSIX_TYPES
E pid_t getpid(void);
E uid_t getuid(void);
E gid_t getgid(void);
extern pid_t getpid(void);
extern uid_t getuid(void);
extern gid_t getgid(void);
#ifdef VMS
E pid_t getppid(void);
extern pid_t getppid(void);
#endif
#else /*!POSIX_TYPES*/
#ifndef getpid /* Borland C defines getpid() as a macro */
E int getpid(void);
extern int getpid(void);
#endif
#ifdef VMS
E int getppid(void);
E unsigned getuid(void);
E unsigned getgid(void);
extern int getppid(void);
extern unsigned getuid(void);
extern unsigned getgid(void);
#endif
#if defined(ULTRIX) && !defined(_UNISTD_H_)
E unsigned getuid(void);
E unsigned getgid(void);
E int setgid(int);
E int setuid(int);
extern unsigned getuid(void);
extern unsigned getgid(void);
extern int setgid(int);
extern int setuid(int);
#endif
#endif /*?POSIX_TYPES*/
#endif /*?(HPUX && !_POSIX_SOURCE)*/
@@ -417,33 +416,33 @@ E int setuid(int);
#if (defined(ULTRIX) || defined(NeXT)) && defined(__GNUC__)
#include <strings.h>
#else
E char *strcpy(char *, const char *);
E char *strncpy(char *, const char *, size_t);
E char *strcat(char *, const char *);
E char *strncat(char *, const char *, size_t);
E char *strpbrk(const char *, const char *);
extern char *strcpy(char *, const char *);
extern char *strncpy(char *, const char *, size_t);
extern char *strcat(char *, const char *);
extern char *strncat(char *, const char *, size_t);
extern char *strpbrk(const char *, const char *);
#ifdef NOT_C99
#if defined(SYSV) || defined(MICRO) || defined(MAC) || defined(VMS) \
|| defined(HPUX)
E char *strchr(const char *, int);
E char *strrchr(const char *, int);
extern char *strchr(const char *, int);
extern char *strrchr(const char *, int);
#else /* BSD */
E char *index(const char *, int);
E char *rindex(const char *, int);
extern char *index(const char *, int);
extern char *rindex(const char *, int);
#endif
#endif
E int strcmp(const char *, const char *);
E int strncmp(const char *, const char *, size_t);
extern int strcmp(const char *, const char *);
extern int strncmp(const char *, const char *, size_t);
#if defined(MICRO) || defined(MAC) || defined(VMS)
E size_t strlen(const char *);
extern size_t strlen(const char *);
#else
#ifdef HPUX
E unsigned int strlen(char *);
extern unsigned int strlen(char *);
#else
#if !(defined(ULTRIX_PROTO) && defined(__GNUC__))
E int strlen(const char *);
extern int strlen(const char *);
#endif
#endif /* HPUX */
#endif /* MICRO */
@@ -453,8 +452,8 @@ E int strlen(const char *);
#ifdef NOT_C99
#if defined(ULTRIX) && defined(__GNUC__)
E char *index(const char *, int);
E char *rindex(const char *, int);
extern char *index(const char *, int);
extern char *rindex(const char *, int);
#endif
#endif
@@ -483,10 +482,10 @@ E char *rindex(const char *, int);
#ifndef SPRINTF_PROTO
#if defined(POSIX_TYPES) || defined(DGUX) || defined(NeXT) || !defined(BSD)
E int sprintf(char *, const char *, ...);
extern int sprintf(char *, const char *, ...);
#else
#define OLD_SPRINTF
E char *sprintf();
extern char *sprintf();
#endif
#endif
#ifdef SPRINTF_PROTO
@@ -499,9 +498,9 @@ E char *sprintf();
#if !defined(SVR4) && !defined(apollo)
#if !(defined(ULTRIX_PROTO) && defined(__GNUC__))
#if !(defined(SUNOS4) && defined(__STDC__)) /* Solaris unbundled cc (acc) */
E int vsprintf(char *, const char *, va_list);
E int vfprintf(FILE *, const char *, va_list);
E int vprintf(const char *, va_list);
extern int vsprintf(char *, const char *, va_list);
extern int vfprintf(FILE *, const char *, va_list);
extern int vprintf(const char *, va_list);
#endif
#endif
#endif
@@ -523,53 +522,51 @@ E int vprintf(const char *, va_list);
#endif
#ifdef MICRO
E int tgetent(const char *, const char *);
E void tputs(const char *, int, int (*)(void));
E int tgetnum(const char *);
E int tgetflag(const char *);
E char *tgetstr(const char *, char **);
E char *tgoto(const char *, int, int);
extern int tgetent(const char *, const char *);
extern void tputs(const char *, int, int (*)(void));
extern int tgetnum(const char *);
extern int tgetflag(const char *);
extern char *tgetstr(const char *, char **);
extern char *tgoto(const char *, int, int);
#else
#if !(defined(HPUX) && defined(_POSIX_SOURCE))
E int tgetent(char *, const char *);
extern int tgetent(char *, const char *);
extern void tputs(const char *, int, int (*)(int));
#endif
E int tgetnum(const char *);
E int tgetflag(const char *);
E char *tgetstr(const char *, char **);
E char *tgoto(const char *, int, int);
extern int tgetnum(const char *);
extern int tgetflag(const char *);
extern char *tgetstr(const char *, char **);
extern char *tgoto(const char *, int, int);
#endif
#if defined(ALLOC_C) || defined(MAKEDEFS_C) || defined(MDLIB_C)
E genericptr_t malloc(size_t);
E genericptr_t realloc(genericptr_t, size_t);
extern genericptr_t malloc(size_t);
extern genericptr_t realloc(genericptr_t, size_t);
#endif
/* time functions */
#ifdef NEED_TIME_DECL
E time_t time(time_t *);
extern time_t time(time_t *);
#endif
#ifdef NEED_LOCALTIME_DECL
E struct tm *localtime(const time_t *);
extern struct tm *localtime(const time_t *);
#endif
#ifdef NEED_CTIME_DECL
E char *ctime(const time_t *);
extern char *ctime(const time_t *);
#endif
#ifdef MICRO
#ifdef abs
#undef abs
#endif
E int abs(int);
extern int abs(int);
#ifdef atoi
#undef atoi
#endif
E int atoi(const char *);
extern int atoi(const char *);
#endif
#undef E
#endif /* !__cplusplus && !__GO32__ */
#endif /* WIN32 */