• Sam Lantinga's avatar
    Date: Tue, 05 Jul 2005 21:43:26 +1000 · f437ac41
    Sam Lantinga authored
    From: Sean Childs
    Subject: [SDL] Compiling SDL 1.2.8 with the free Borland compiler
    
    When compiling SDL 1.2.8 with the free Borland compiler, I received this
    error (there is a similar error that occurs in
    src\video\windx5\sdl_dx5events.c):
    Error E2342 ..\..\src\video\windib\sdl_dibevents.c 189: Type mismatch in
    parameter 'lpPrevWndFunc' (wanted 'int (__stdcall *)()', got 'long
    (__stdcall *)(void *,unsigned int,unsigned int,long)') in function
    DIB_HandleMessage
    
    
    I checked the MSDN library at:
    http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/winui/
    windowsuserinterface/windowing/windowprocedures/windowprocedurereference/wind
    owprocedurefunctions/callwindowproc.asp
    
    and it had this to say:
    If STRICT is not defined, the lpPrevWndFunc parameter has the data type
    FARPROC. The FARPROC type is declared as follows:
    
    int (FAR WINAPI * FARPROC) ()
    
    In C, the FARPROC declaration indicates a callback function that has an
    unspecified parameter list. In C++, however, the empty parameter list in
    the declaration indicates that a function has no parameters. This subtle
    distinction can break careless code. Following is one way to handle this
    situation:
    
    #ifdef STRICT
       WNDPROC MyWindowProcedure
    #else
       FARPROC MyWindowProcedure
    #endif
    ...
       lResult = CallWindowProc(MyWindowProcedure, ...)
    
    --HG--
    extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/trunk%401306
    f437ac41
Name
Last commit
Last update
..
Xext Loading commit data...
aalib Loading commit data...
ataricommon Loading commit data...
bwindow Loading commit data...
cybergfx Loading commit data...
dc Loading commit data...
dga Loading commit data...
directfb Loading commit data...
dummy Loading commit data...
epoc Loading commit data...
fbcon Loading commit data...
gapi Loading commit data...
gem Loading commit data...
ggi Loading commit data...
ipod Loading commit data...
maccommon Loading commit data...
macdsp Loading commit data...
macrom Loading commit data...
nanox Loading commit data...
os2fslib Loading commit data...
photon Loading commit data...
picogui Loading commit data...
ps2gs Loading commit data...
qtopia Loading commit data...
quartz Loading commit data...
riscos Loading commit data...
svga Loading commit data...
vgl Loading commit data...
wincommon Loading commit data...
windib Loading commit data...
windx5 Loading commit data...
wscons Loading commit data...
x11 Loading commit data...
xbios Loading commit data...
.cvsignore Loading commit data...
Makefile.am Loading commit data...
Makefile.wat Loading commit data...
SDL_RLEaccel.c Loading commit data...
SDL_RLEaccel_c.h Loading commit data...
SDL_blit.c Loading commit data...
SDL_blit.h Loading commit data...
SDL_blit_0.c Loading commit data...
SDL_blit_1.c Loading commit data...
SDL_blit_A.c Loading commit data...
SDL_blit_N.c Loading commit data...
SDL_bmp.c Loading commit data...
SDL_cursor.c Loading commit data...
SDL_cursor_c.h Loading commit data...
SDL_gamma.c Loading commit data...
SDL_glfuncs.h Loading commit data...
SDL_leaks.h Loading commit data...
SDL_memops.h Loading commit data...
SDL_pixels.c Loading commit data...
SDL_pixels_c.h Loading commit data...
SDL_stretch.c Loading commit data...
SDL_stretch_c.h Loading commit data...
SDL_surface.c Loading commit data...
SDL_sysvideo.h Loading commit data...
SDL_video.c Loading commit data...
SDL_yuv.c Loading commit data...
SDL_yuv_mmx.c Loading commit data...
SDL_yuv_sw.c Loading commit data...
SDL_yuv_sw_c.h Loading commit data...
SDL_yuvfuncs.h Loading commit data...
blank_cursor.h Loading commit data...
default_cursor.h Loading commit data...
mmx.h Loading commit data...