• 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
..
audio Loading commit data...
cdrom Loading commit data...
cpuinfo Loading commit data...
endian Loading commit data...
events Loading commit data...
file Loading commit data...
hermes Loading commit data...
joystick Loading commit data...
loadso Loading commit data...
main Loading commit data...
thread Loading commit data...
timer Loading commit data...
video Loading commit data...
.cvsignore Loading commit data...
Makefile.am Loading commit data...
Makefile.wat Loading commit data...
SDL.c Loading commit data...
SDL_error.c Loading commit data...
SDL_error_c.h Loading commit data...
SDL_fatal.c Loading commit data...
SDL_fatal.h Loading commit data...
SDL_getenv.c Loading commit data...
SDL_loadso.c Loading commit data...