#134 commctrl.h doesn't include properly

Feature_requests
closed-fixed
Earnie Boyd
2002-05-07
2002-05-07
No

Please see example :

$ cat main.m
#include <objc/objc.h>
#include <windows.h>
#include <commctrl.h>

int main()
{
return 0;
}

$ gcc -v
Reading specs from d:/mingw_new/bin/../lib/gcc-
lib/mingw32/2.95.3-5/specs
gcc version 2.95.3-5 (mingw special)

$ gcc main.m -c
In file included from main.m:3:
d:/mingw_new/bin/../lib/gcc-lib/mingw32/2.95.3-
5/../../../../include/commctrl.h:
2069: conflicting types for `ImageList_DragShowNolock'
d:/mingw_new/bin/../lib/gcc-lib/mingw32/2.95.3-
5/../../../../include/commctrl.h:
2038: previous declaration of
`ImageList_DragShowNolock'

$ grep
ImageList_DragShowNolock //d/mingw_new/include/commctr
l.h
BOOL WINAPI ImageList_DragShowNolock(BOOL);
WINBOOL WINAPI ImageList_DragShowNolock(BOOL);

Discussion

  • Danny Smith
    Danny Smith
    2002-05-07

    Logged In: YES
    user_id=11494

    I'll fix the specific problem you report by removing the
    second prototype. It hasn't been caught before because when
    testing headers the OLE files are excluded when lang = objc
    because of known problems with BOOL. ObjC typedefs BOOL
    differently than windef.h. You may run into other problems
    when using the commctrl.h functions with ObjC.

     
  • Danny Smith
    Danny Smith
    2002-05-07

    • status: open --> closed-fixed