From: nhmall Date: Thu, 3 Nov 2022 19:42:24 +0000 (-0400) Subject: purge more E for extern X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=fac75f5ae427b049c52bd334e8e9c2e4ad8ff89d;p=nethack purge more E for extern --- diff --git a/include/decl.h b/include/decl.h index 7552ea514..d509ac86b 100644 --- a/include/decl.h +++ b/include/decl.h @@ -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 */ diff --git a/include/system.h b/include/system.h index 6258bbf33..2616b07f6 100644 --- a/include/system.h +++ b/include/system.h @@ -17,7 +17,6 @@ #if !defined(WIN32) #if !defined(__cplusplus) && !defined(__GO32__) -#define E extern /* some old 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 #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 */ -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 #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 */