From: nethack.allison Date: Tue, 5 Feb 2002 13:21:43 +0000 (+0000) Subject: from Yitzhak X-Git-Tag: MOVE2GIT~3256 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=7d1e6f7d57e61b49df0ca3fd38f3e25d3ad3ba37;p=nethack from Yitzhak Add absent prototypes to some core routines. Also add some port function() to function(void) in some win32 routines. Also updates the Borland C Makefile for win32. --- diff --git a/include/ntconf.h b/include/ntconf.h index 8913bf8a5..dcd8449c2 100644 --- a/include/ntconf.h +++ b/include/ntconf.h @@ -100,6 +100,8 @@ int _RTLENTRY _EXPFUNC write (int __handle, const void _FAR *__buf, unsigned __ int _RTLENTRY _EXPFUNC creat (const char _FAR *__path, int __amode); int _RTLENTRY _EXPFUNC close (int __handle); int _RTLENTRY _EXPFUNC open (const char _FAR *__path, int __access,... /*unsigned mode*/); +long _RTLENTRY _EXPFUNC lseek (int __handle, long __offset, int __fromwhere); +int _RTLENTRY _EXPFUNC read (int __handle, void _FAR *__buf, unsigned __len); #endif #include #undef kbhit /* Use our special NT kbhit */ diff --git a/include/tradstdc.h b/include/tradstdc.h index d636981fb..b7292d1b8 100644 --- a/include/tradstdc.h +++ b/include/tradstdc.h @@ -167,7 +167,7 @@ # define FDECL(f,p) f() # define VDECL(f,p) f() -# if defined(AMIGA) || defined(HPUX) || defined(POSIX_TYPES) || defined(__DECC) +# if defined(AMIGA) || defined(HPUX) || defined(POSIX_TYPES) || defined(__DECC) || defined(__BORLANDC__) # define genericptr void * # endif # ifndef genericptr diff --git a/src/apply.c b/src/apply.c index e7b20d4d3..d4b1bc380 100644 --- a/src/apply.c +++ b/src/apply.c @@ -30,6 +30,7 @@ STATIC_DCL void FDECL(use_tinning_kit, (struct obj *)); STATIC_DCL void FDECL(use_figurine, (struct obj *)); STATIC_DCL void FDECL(use_grease, (struct obj *)); STATIC_DCL void FDECL(use_trap, (struct obj *)); +STATIC_DCL void FDECL(use_stone, (struct obj *)); STATIC_PTR int NDECL(set_trap); /* occupation callback */ STATIC_DCL int FDECL(use_whip, (struct obj *)); STATIC_DCL int FDECL(use_pole, (struct obj *)); diff --git a/src/dothrow.c b/src/dothrow.c index b2204e783..89dd598cb 100644 --- a/src/dothrow.c +++ b/src/dothrow.c @@ -9,6 +9,7 @@ STATIC_DCL int FDECL(throw_obj, (struct obj *,int)); STATIC_DCL void NDECL(autoquiver); STATIC_DCL int FDECL(gem_accept, (struct monst *, struct obj *)); +STATIC_DCL void FDECL(tmiss, (struct obj *, struct monst *)); STATIC_DCL int FDECL(throw_gold, (struct obj *)); STATIC_DCL void FDECL(check_shop_obj, (struct obj *,XCHAR_P,XCHAR_P,BOOLEAN_P)); STATIC_DCL void FDECL(breakobj, (struct obj *,XCHAR_P,XCHAR_P,BOOLEAN_P,BOOLEAN_P)); diff --git a/src/hack.c b/src/hack.c index 3c885ac66..f14753aa4 100644 --- a/src/hack.c +++ b/src/hack.c @@ -12,6 +12,7 @@ STATIC_DCL int FDECL(still_chewing,(XCHAR_P,XCHAR_P)); #ifdef SINKS STATIC_DCL void NDECL(dosinkfall); #endif +STATIC_DCL void NDECL(findtravelpath); STATIC_DCL boolean FDECL(monstinroom, (struct permonst *,int)); STATIC_DCL void FDECL(move_update, (BOOLEAN_P)); diff --git a/src/objnam.c b/src/objnam.c index 202590ace..42336e4e7 100644 --- a/src/objnam.c +++ b/src/objnam.c @@ -15,6 +15,7 @@ static boolean FDECL(the_unique_obj, (struct obj *obj)); #ifdef OVLB static boolean FDECL(wishymatch, (const char *,const char *,BOOLEAN_P)); #endif +static void FDECL(add_erosion_words, (struct obj*, char*)); struct Jitem { int item; diff --git a/src/pray.c b/src/pray.c index b75f2d041..6596805a6 100644 --- a/src/pray.c +++ b/src/pray.c @@ -9,6 +9,7 @@ STATIC_PTR int NDECL(prayer_done); STATIC_DCL int NDECL(in_trouble); STATIC_DCL void FDECL(fix_worst_trouble,(int)); STATIC_DCL void FDECL(angrygods,(ALIGNTYP_P)); +STATIC_DCL void FDECL(at_your_feet, (const char *)); #ifdef ELBERETH STATIC_DCL void NDECL(gcrownu); #endif /*ELBERETH*/ diff --git a/src/role.c b/src/role.c index e930b6f83..5541de288 100644 --- a/src/role.c +++ b/src/role.c @@ -502,6 +502,7 @@ const struct Align aligns[] = { {"evil", "unaligned", "Una", 0, A_NONE} }; +STATIC_DCL char * FDECL(promptsep, (char *, int)); STATIC_DCL int FDECL(role_gendercount, (int)); STATIC_DCL int FDECL(race_alignmentcount, (int)); diff --git a/src/steed.c b/src/steed.c index 864d53017..ceec46df2 100644 --- a/src/steed.c +++ b/src/steed.c @@ -12,6 +12,7 @@ static NEARDATA const char steeds[] = { S_QUADRUPED, S_UNICORN, S_ANGEL, S_CENTAUR, S_DRAGON, S_JABBERWOCK, '\0' }; +STATIC_DCL boolean FDECL(landing_spot, (coord*, int)); /*** Putting the saddle on ***/ diff --git a/src/timeout.c b/src/timeout.c index b433c219a..30108fdb1 100644 --- a/src/timeout.c +++ b/src/timeout.c @@ -1283,6 +1283,7 @@ STATIC_DCL void FDECL(print_queue, (winid, timer_element *)); STATIC_DCL void FDECL(insert_timer, (timer_element *)); STATIC_DCL timer_element *FDECL(remove_timer, (timer_element **, SHORT_P, genericptr_t)); +STATIC_DCL void FDECL(write_timer, (int, timer_element*)); STATIC_DCL boolean FDECL(mon_is_local, (struct monst *)); STATIC_DCL boolean FDECL(timer_is_local, (timer_element *)); STATIC_DCL int FDECL(maybe_write_timer, (int, int, BOOLEAN_P)); diff --git a/src/weapon.c b/src/weapon.c index 28679a0d2..a8902439b 100644 --- a/src/weapon.c +++ b/src/weapon.c @@ -94,6 +94,7 @@ int skill; STATIC_DCL boolean FDECL(can_advance, (int, BOOLEAN_P)); STATIC_DCL int FDECL(slots_required, (int)); +STATIC_DCL void FDECL(give_may_advance_msg, (int)); #ifdef OVL1 diff --git a/sys/share/pcunix.c b/sys/share/pcunix.c index 17ec7c257..84e2d425e 100644 --- a/sys/share/pcunix.c +++ b/sys/share/pcunix.c @@ -29,6 +29,10 @@ static struct stat buf; static struct stat hbuf; # endif +#ifdef PC_LOCKING +static int NDECL(eraseoldlocks); +#endif + void gethdate(name) char *name; diff --git a/sys/winnt/Makefile.bcc b/sys/winnt/Makefile.bcc index 9fed41a35..9bfb7fbc9 100644 --- a/sys/winnt/Makefile.bcc +++ b/sys/winnt/Makefile.bcc @@ -1,7 +1,7 @@ -# SCCS Id: @(#)Makefile.bcc 3.4 2002/01/23 +# SCCS Id: @(#)Makefile.bcc 3.4 2002/02/04 # Copyright (c) NetHack PC Development Team 1993-2002 # -# NetHack 3.4.x Makefile for Borland C++ V5.5 and above and Borland's MAKE +# NetHack 3.4.x Makefile for Borland C++ V5.5.1 and above and Borland's MAKE # # Win32 Compilers Tested: # - Borland C++ 5.5.1 for Win32 @@ -13,14 +13,14 @@ # root, but this can be changed by modifying the bccroot and related # variables. # -# This is used for building a TTY or graphical version of NetHack using +# This is used for building a TTY or graphical version of NetHack using # WIN32 Console I/O and API routines only. # # In addition to your C compiler, # -# if you want to change you will need a +# if you want to change you will need a # files with suffix workalike for -# .y yacc (such as bison) +# .y yacc (such as bison) # .l lex (such as flex) # # @@ -46,8 +46,15 @@ APPVER = 4.0 # Graphical interface # Set to Y for a graphical version +# Set to anything else (or undefine) for a tty version -GRAPHICAL = Y +#GRAPHICAL = Y + +# Debug +# Set to Y for Debug support (to produce full map files, listing files, and debug information) +# Set to anything else (or undefine) for a "release" version + +DEBUG = Y !IF "$(APPVER)" == "4.0" MAKE_WINVER = 0x0400 @@ -60,11 +67,17 @@ rc = $(bccbin)\brc32 link = $(bccbin)\ilink32 implib = $(bccbin)\tlib -cflags = -c -D_X86_=1 -DWINVER=$(MAKE_WINVER) -q -I$(bccinc) -w-pia -w-rch +cflags = -c -D_X86_=1 -DWINVER=$(MAKE_WINVER) -q -I$(bccinc) -w-pia -w-rch -w-par -w-aus cdebug = -y -v -O2 cvarsmt = -DWIN32 -D_WIN32 -D_MT lflags = +!IF "$(DEBUG)" == "Y" linkdebug = /v /m /s +cdebug = -v -y -Q +!ELSE +linkdebug = /C /Gn +cdebug = +!ENDIF startobj = $(bcclib)\c0x32.obj !IF "$(GRAPHICAL)" == "Y" verlflags = /Gn /Gz /q -L$(bcclib) /c /Tpe /V$(APPVER) @@ -80,11 +93,7 @@ libsmt = $(bcclib)\cw32mt.lib $(bcclib)\import32.lib # It must be present prior to compilation. GAME = NetHack # Game Name -!IF "$(GRAPHICAL)" == "Y" -GAMEDIR = \games\nethackwin # Game directory -!ELSE -GAMEDIR = \games\nethacktty # Game directory -!ENDIF +GAMEDIR = ..\binary # Game directory # # Source directories. Makedefs hardcodes these, don't change them. @@ -471,28 +480,6 @@ DATABASE = $(DAT)\data.base GAMEFILE = $(GAMEDIR)\$(GAME).exe -#========================================== -# Create directory for holding object files -#========================================== - -$(O)obj.tag: - @if not exist $(O)*.* mkdir $(OBJ) - @echo directory $(OBJ) created >$@ - -#========================================== -# Notify of any CL environment variables -# in effect since they change the compiler -# options. -#========================================== - -graphicschk: -! IF "$(GRAPHICAL)"=="Y" - @echo ---- - @echo NOTE: This build will include tile support. - @echo ---- -! ENDIF - @echo graphicschk > graphicschk - #========================================== #=============== TARGETS ================== #========================================== @@ -536,9 +523,6 @@ $(O)install.tag: $(DAT)\data $(DAT)\rumors $(DAT)\dungeon \ @if exist $(GAMEDIR)\$(GAME).PDB echo NOTE: You may want to remove $(GAMEDIR)\$(GAME).pdb to conserve space -copy $(NTSYS)\winnt.cnf $(GAMEDIR)\defaults.nh copy $(U)recover.exe $(GAMEDIR) -! IF ("$(GRAPHICAL)"=="Y") - if exist $(TILEBMP) copy $(TILEBMP) $(GAMEDIR) -! ENDIF echo install done > $@ # copy $(NTSYS)\winnt.hlp $(GAMEDIR) @@ -609,6 +593,29 @@ $(GAMEFILE) : $(ALLOBJ) $(TILERES) $(SRC)\uuid.lib $(GAME)_.ico : $(NTSYS)\$(GAME).ico @copy $(NTSYS)\$(GAME).ico $@ + +#========================================== +# Create directory for holding object files +#========================================== + +$(O)obj.tag: + @if not exist $(O)*.* mkdir $(OBJ) + @echo directory $(OBJ) created >$@ + +#========================================== +# Notify of any CL environment variables +# in effect since they change the compiler +# options. +#========================================== + +graphicschk: +! IF "$(GRAPHICAL)"=="Y" + @echo ---- + @echo NOTE: This build will include tile support. + @echo ---- +! ENDIF + @echo graphicschk > graphicschk + # # Secondary Targets. # diff --git a/sys/winnt/nttty.c b/sys/winnt/nttty.c index 359b5d6f0..0b2f21e32 100644 --- a/sys/winnt/nttty.c +++ b/sys/winnt/nttty.c @@ -147,7 +147,7 @@ tty_end_screen() clear_screen(); if (GetConsoleScreenBufferInfo(hConOut,&csbi)) { - int ccnt; + DWORD ccnt; COORD newcoord; newcoord.X = 0; @@ -189,7 +189,7 @@ void nttty_open() { HANDLE hStdOut; - long cmode; + DWORD cmode; long mask; /* Initialize the function pointer that points to @@ -332,6 +332,8 @@ static const char *extendedlist = "acdefijlmnopqrstuvw?2"; #define inmap(x) (SCANLO <= (x) && (x) < SCANLO + SIZE(scanmap)) +int FDECL(process_keystroke, (INPUT_RECORD *ir, boolean *valid)); + int process_keystroke(ir, valid) INPUT_RECORD *ir; boolean *valid; @@ -389,8 +391,8 @@ boolean *valid; int tgetch() { - int count; - int valid = 0; + DWORD count; + boolean valid = 0; int ch; valid = 0; while (!valid) @@ -406,13 +408,13 @@ int ntposkey(x, y, mod) int *x, *y, *mod; { - int count; + DWORD count; unsigned short int scan; unsigned char ch; unsigned long shiftstate; int altseq; int done = 0; - int valid = 0; + boolean valid = 0; while (!done) { count = 0; @@ -453,7 +455,7 @@ nttty_kbhit() { int done = 0; /* true = "stop searching" */ int retval; /* true = "we had a match" */ - int count; + DWORD count; unsigned short int scan; unsigned char ch; unsigned long shiftstate; @@ -515,7 +517,7 @@ void xputc(c) char c; { - int count; + DWORD count; if (colorchange) { SetConsoleTextAttribute(hConOut, @@ -529,7 +531,7 @@ void xputs(s) const char *s; { - int count; + DWORD count; if (colorchange) { SetConsoleTextAttribute(hConOut, (currentcolor | currenthilite | currentbackground)); @@ -547,7 +549,7 @@ g_putch(in_ch) int in_ch; { char ch = (char)in_ch; - int count = 1; + DWORD count = 1; int tcolor; int bckgnd = currentbackground; @@ -563,7 +565,7 @@ int in_ch; void cl_end() { - int count; + DWORD count; ntcoord.X = ttyDisplay->curx; ntcoord.Y = ttyDisplay->cury; @@ -583,7 +585,7 @@ void clear_screen() { if (GetConsoleScreenBufferInfo(hConOut,&csbi)) { - int ccnt; + DWORD ccnt; COORD newcoord; newcoord.X = 0; diff --git a/sys/winnt/winnt.c b/sys/winnt/winnt.c index 79ed586ff..5c7ebb5ee 100644 --- a/sys/winnt/winnt.c +++ b/sys/winnt/winnt.c @@ -161,7 +161,7 @@ void nt_regularize(s) /* normalize file name */ register char *s; { - register char *lp; + register unsigned char *lp; for (lp = s; *lp; lp++) if ( *lp == '?' || *lp == '"' || *lp == '\\' || @@ -176,11 +176,10 @@ register char *s; char *get_username(lan_username_size) int *lan_username_size; { - static char username_buffer[BUFSZ]; + static TCHAR username_buffer[BUFSZ]; unsigned int status; - int i = 0; + DWORD i = BUFSZ - 1; - i = BUFSZ - 1; /* i gets updated with actual size */ status = GetUserName(username_buffer, &i); if (status) username_buffer[i] = '\0'; diff --git a/util/lev_main.c b/util/lev_main.c index 72388f2b7..2e3be4dfe 100644 --- a/util/lev_main.c +++ b/util/lev_main.c @@ -1168,11 +1168,11 @@ specialmaze *maze; for(j=0;jysize;j++) { if(!maze->init_lev.init_present || pt->xsize > 1 || pt->ysize > 1) { -#ifndef _MSC_VER +#if !defined(_MSC_VER) && !defined(__BORLANDC__) Write(fd, pt->map[j], pt->xsize * sizeof *pt->map[j]); #else /* - * On MSVC compiler the Write macro above caused: + * On MSVC and Borland C compilers the Write macro above caused: * warning '!=' : signed/unsigned mismatch */ unsigned reslt, sz = pt->xsize * sizeof *pt->map[j]; diff --git a/win/win32/mhinput.c b/win/win32/mhinput.c index dc9680df2..7b6594d74 100644 --- a/win/win32/mhinput.c +++ b/win/win32/mhinput.c @@ -19,7 +19,7 @@ static int nhi_read_pos = 0; static int nhi_write_pos = 0; /* initialize input queue */ -void mswin_nh_input_init() +void mswin_nh_input_init(void) { if( !nhi_init_input ) { nhi_init_input = 1; diff --git a/win/win32/mhinput.h b/win/win32/mhinput.h index f8037190b..23ed41b0c 100644 --- a/win/win32/mhinput.h +++ b/win/win32/mhinput.h @@ -26,10 +26,10 @@ typedef struct mswin_event { #define NHEVENT_KBD(c) { MSNHEvent e; e.type=NHEVENT_CHAR; e.kbd.ch=(c); mswin_input_push(&e); } #define NHEVENT_MS(_mod, _x, _y) { MSNHEvent e; e.type=NHEVENT_MOUSE; e.ms.mod = (_mod); e.ms.x=(_x); e.ms.y=(_y); mswin_input_push(&e); } -void mswin_nh_input_init(); -int mswin_have_input(); +void mswin_nh_input_init(void); +int mswin_have_input(void); void mswin_input_push(PMSNHEvent event); -PMSNHEvent mswin_input_pop(); -PMSNHEvent mswin_input_peek(); +PMSNHEvent mswin_input_pop(void); +PMSNHEvent mswin_input_peek(void); #endif /* MSWINInput_h */ diff --git a/win/win32/mhmain.c b/win/win32/mhmain.c index 5140481c2..5914ff310 100644 --- a/win/win32/mhmain.c +++ b/win/win32/mhmain.c @@ -25,7 +25,7 @@ LRESULT CALLBACK MainWndProc(HWND, UINT, WPARAM, LPARAM); LRESULT CALLBACK About(HWND, UINT, WPARAM, LPARAM); static LRESULT onWMCommand(HWND hWnd, WPARAM wParam, LPARAM lParam); static void onMSNHCommand(HWND hWnd, WPARAM wParam, LPARAM lParam); -static void register_main_window_class(); +static void register_main_window_class(void); static void select_map_mode(int map_mode); static int menuid2mapmode(int menuid); static int mapmode2menuid(int map_mode); diff --git a/win/win32/mhmain.h b/win/win32/mhmain.h index 5b07a7065..21e941063 100644 --- a/win/win32/mhmain.h +++ b/win/win32/mhmain.h @@ -13,7 +13,7 @@ #define NHWND_ALIGN_TOP 2 #define NHWND_ALIGN_BOTTOM 3 -HWND mswin_init_main_window (); +HWND mswin_init_main_window (void); void mswin_layout_main_window(HWND changed_child); #endif /* MSWINMainWindow_h */ diff --git a/win/win32/mhmap.c b/win/win32/mhmap.c index 36fb38f52..58d94e203 100644 --- a/win/win32/mhmap.c +++ b/win/win32/mhmap.c @@ -31,7 +31,7 @@ typedef struct mswin_nethack_map_window { static TCHAR szNHMapWindowClass[] = TEXT("MSNethackMapWndClass"); LRESULT CALLBACK MapWndProc(HWND, UINT, WPARAM, LPARAM); -static void register_map_window_class(); +static void register_map_window_class(void); static void onMSNHCommand(HWND hWnd, WPARAM wParam, LPARAM lParam); static void onMSNH_VScroll(HWND hWnd, WPARAM wParam, LPARAM lParam); static void onMSNH_HScroll(HWND hWnd, WPARAM wParam, LPARAM lParam); diff --git a/win/win32/mhmap.h b/win/win32/mhmap.h index fb5d32012..5c4d438d5 100644 --- a/win/win32/mhmap.h +++ b/win/win32/mhmap.h @@ -9,7 +9,7 @@ #include "global.h" -HWND mswin_init_map_window (); +HWND mswin_init_map_window (void); void mswin_map_stretch(HWND hWnd, LPSIZE lpsz, BOOL redraw); #define NHMAP_VIEW_TILES 0 diff --git a/win/win32/mhmsgwnd.c b/win/win32/mhmsgwnd.c index bf4607807..67a585ddf 100644 --- a/win/win32/mhmsgwnd.c +++ b/win/win32/mhmsgwnd.c @@ -35,7 +35,7 @@ typedef struct mswin_nethack_message_window { static TCHAR szMessageWindowClass[] = TEXT("MSNHMessageWndClass"); LRESULT CALLBACK NHMessageWndProc(HWND, UINT, WPARAM, LPARAM); -static void register_message_window_class(); +static void register_message_window_class(void); static void onMSNHCommand(HWND hWnd, WPARAM wParam, LPARAM lParam); static void onMSNH_VScroll(HWND hWnd, WPARAM wParam, LPARAM lParam); #ifndef MSG_WRAP_TEXT diff --git a/win/win32/mhmsgwnd.h b/win/win32/mhmsgwnd.h index 0434f1cc4..a4f673644 100644 --- a/win/win32/mhmsgwnd.h +++ b/win/win32/mhmsgwnd.h @@ -8,7 +8,7 @@ #include "config.h" #include "global.h" -HWND mswin_init_message_window (); +HWND mswin_init_message_window (void); void mswin_message_window_size (HWND hWnd, LPSIZE sz); diff --git a/win/win32/mhrip.h b/win/win32/mhrip.h index 533daa918..1606d4015 100644 --- a/win/win32/mhrip.h +++ b/win/win32/mhrip.h @@ -8,7 +8,7 @@ #include "config.h" #include "global.h" -HWND mswin_init_RIP_window (); +HWND mswin_init_RIP_window (void); void mswin_display_RIP_window (HWND hwnd); #endif /* MSWINRIPWindow_h */ diff --git a/win/win32/mhstatus.c b/win/win32/mhstatus.c index c5fe83453..b29fe1305 100644 --- a/win/win32/mhstatus.c +++ b/win/win32/mhstatus.c @@ -16,7 +16,7 @@ typedef struct mswin_nethack_status_window { static TCHAR szStatusWindowClass[] = TEXT("MSNHStatusWndClass"); LRESULT CALLBACK StatusWndProc(HWND, UINT, WPARAM, LPARAM); -static void register_status_window_class(); +static void register_status_window_class(void); HWND mswin_init_status_window () { static int run_once = 0; diff --git a/win/win32/mhstatus.h b/win/win32/mhstatus.h index 3658659b2..e073a8025 100644 --- a/win/win32/mhstatus.h +++ b/win/win32/mhstatus.h @@ -8,7 +8,7 @@ #include "config.h" #include "global.h" -HWND mswin_init_status_window (); +HWND mswin_init_status_window (void); void mswin_status_window_size (HWND hWnd, LPSIZE sz); #endif /* MSWINStatusWindow_h */ diff --git a/win/win32/mhtext.h b/win/win32/mhtext.h index 3a7b1b7a6..64be03d4f 100644 --- a/win/win32/mhtext.h +++ b/win/win32/mhtext.h @@ -8,7 +8,7 @@ #include "config.h" #include "global.h" -HWND mswin_init_text_window (); +HWND mswin_init_text_window (void); void mswin_display_text_window (HWND hwnd); #endif /* MSWINTextWindow_h */ diff --git a/win/win32/mswproc.c b/win/win32/mswproc.c index f1d60d1be..fe3a1398f 100644 --- a/win/win32/mswproc.c +++ b/win/win32/mswproc.c @@ -28,7 +28,7 @@ extern void logDebug(const char *fmt, ...); void logDebug(const char *fmt, ...) { } #endif -static void mswin_main_loop(); +static void mswin_main_loop(void); /* Interface definition, for windows.c */ struct window_procs mswin_procs = { diff --git a/win/win32/winMS.h b/win/win32/winMS.h index 8a47f5af3..7645e0de0 100644 --- a/win/win32/winMS.h +++ b/win/win32/winMS.h @@ -57,10 +57,10 @@ typedef struct mswin_nhwindow_app { char* saved_text; } NHWinApp, *PNHWinApp; -extern PNHWinApp GetNHApp(); #define E extern +E PNHWinApp GetNHApp(void); E struct window_procs mswin_procs; #undef E