Compile the debugger with STRICT on.

diff --git a/debugger/Makefile.in b/debugger/Makefile.in
index 93e2f47..43fabb8 100644
--- a/debugger/Makefile.in
+++ b/debugger/Makefile.in
@@ -1,3 +1,4 @@
+EXTRADEFS = -DSTRICT
 TOPSRCDIR = @top_srcdir@
 TOPOBJDIR = ..
 SRCDIR    = @srcdir@
diff --git a/debugger/dbg.y b/debugger/dbg.y
index 12a2ded..4ac865f 100644
--- a/debugger/dbg.y
+++ b/debugger/dbg.y
@@ -225,7 +225,7 @@
     | tWALK tMODULE tEOL        { DEBUG_WalkModules(); }
     | tWALK tQUEUE tEOL         { DEBUG_WalkQueues(); }
     | tWALK tWND tEOL           { DEBUG_WalkWindows( 0, 0 ); }
-    | tWALK tWND tNUM tEOL      { DEBUG_WalkWindows( $3, 0 ); }
+    | tWALK tWND tNUM tEOL      { DEBUG_WalkWindows( (HWND)$3, 0 ); }
     | tWALK tPROCESS tEOL       { DEBUG_WalkProcess(); }
     | tWALK tTHREAD tEOL        { DEBUG_WalkThreads(); }
     | tWALK tMODREF expr_value tEOL   { DEBUG_WalkModref( $3 ); DEBUG_FreeExprMem(); }
diff --git a/debugger/info.c b/debugger/info.c
index f11f68e..677c601 100644
--- a/debugger/info.c
+++ b/debugger/info.c
@@ -249,7 +249,7 @@
    DEBUG_Printf(DBG_CHN_MESG,  "Class '%s':\n", name);
    DEBUG_Printf(DBG_CHN_MESG,  
 		"style=%08x  wndProc=%08lx\n"
-		"inst=%04x  icon=%04x  cursor=%04x  bkgnd=%04x\n"
+		"inst=%p  icon=%p  cursor=%p  bkgnd=%p\n"
 		"clsExtra=%d  winExtra=%d\n",
 		wca.style, (DWORD)wca.lpfnWndProc, wca.hInstance,
 		wca.hIcon, wca.hCursor, wca.hbrBackground,
@@ -265,7 +265,7 @@
 {
    WNDCLASSEXA	wca;
 
-   if (!GetClassInfoEx(GetWindowLong(hWnd, GWL_HINSTANCE), name, &wca)) {
+   if (!GetClassInfoEx((HINSTANCE)GetWindowLong(hWnd, GWL_HINSTANCE), name, &wca)) {
       DEBUG_Printf(DBG_CHN_MESG, "Cannot find class '%s'\n", name);
       return;
    }
@@ -273,7 +273,7 @@
    DEBUG_Printf(DBG_CHN_MESG,  "Class '%s':\n", name);
    DEBUG_Printf(DBG_CHN_MESG,  
 		"style=%08x  wndProc=%08lx\n"
-		"inst=%04x  icon=%04x  cursor=%04x  bkgnd=%04x\n"
+		"inst=%p  icon=%p  cursor=%p  bkgnd=%p\n"
 		"clsExtra=%d  winExtra=%d\n",
 		wca.style, (DWORD)wca.lpfnWndProc, wca.hInstance,
 		wca.hIcon, wca.hCursor, wca.hbrBackground,
@@ -371,16 +371,16 @@
 
    /* FIXME missing fields: hmemTaskQ, hrgnUpdate, dce, flags, pProp, scroll */
    DEBUG_Printf(DBG_CHN_MESG,
-		"next=0x%04x  child=0x%04x  parent=0x%04x  owner=0x%04x  class='%s'\n"
-		"inst=%08lx  active=%04x  idmenu=%08lx\n"
+		"next=%p  child=%p  parent=%p  owner=%p  class='%s'\n"
+		"inst=%p  active=%p  idmenu=%08lx\n"
 		"style=%08lx  exstyle=%08lx  wndproc=%08lx  text='%s'\n"
-		"client=%d,%d-%d,%d  window=%d,%d-%d,%d sysmenu=%04x\n",
+		"client=%d,%d-%d,%d  window=%d,%d-%d,%d sysmenu=%p\n",
 		GetWindow(hWnd, GW_HWNDNEXT), 
 		GetWindow(hWnd, GW_CHILD),
 		GetParent(hWnd), 
 		GetWindow(hWnd, GW_OWNER),
 		clsName,
-		GetWindowLong(hWnd, GWL_HINSTANCE), 
+		(HINSTANCE)GetWindowLong(hWnd, GWL_HINSTANCE), 
 		GetLastActivePopup(hWnd),
 		GetWindowLong(hWnd, GWL_ID),
 		GetWindowLong(hWnd, GWL_STYLE),
@@ -425,7 +425,7 @@
 	  strcpy(wndName, "-- Empty --");
        
        /* FIXME: missing hmemTaskQ */
-       DEBUG_Printf(DBG_CHN_MESG, "%*s%04x%*s", indent, "", hWnd, 13-indent,"");
+       DEBUG_Printf(DBG_CHN_MESG, "%*s%04x%*s", indent, "", (UINT)hWnd, 13-indent,"");
        DEBUG_Printf(DBG_CHN_MESG, "%-17.17s %08lx %08lx %.14s\n",
 		    clsName, GetWindowLong(hWnd, GWL_STYLE),
 		    GetWindowLong(hWnd, GWL_WNDPROC), wndName);
diff --git a/debugger/module.c b/debugger/module.c
index 20176dc..f16b95a 100644
--- a/debugger/module.c
+++ b/debugger/module.c
@@ -584,13 +584,13 @@
 {
     DBG_MODULE*	wmod;
 
-    if (!(wmod = DEBUG_FindModuleByHandle(mod, DMT_UNKNOWN)) &&
+    if (!(wmod = DEBUG_FindModuleByHandle((HANDLE)mod, DMT_UNKNOWN)) &&
 	!(wmod = DEBUG_FindModuleByAddr((void*)mod, DMT_UNKNOWN))) {
 	DEBUG_Printf(DBG_CHN_MESG, "'0x%08lx' is not a valid module handle or address\n", mod);
 	return;
     }
 
-    DEBUG_Printf(DBG_CHN_MESG, "Module '%s' (handle=0x%08x) 0x%08lx-0x%08lx (%s, debug info %s)\n",
+    DEBUG_Printf(DBG_CHN_MESG, "Module '%s' (handle=%p) 0x%08lx-0x%08lx (%s, debug info %s)\n",
 		 wmod->module_name, wmod->handle, (DWORD)wmod->load_addr,
 		 (DWORD)wmod->load_addr + wmod->size,
 		 DEBUG_GetModuleType(wmod->type), DEBUG_GetDbgInfo(wmod->dil));
diff --git a/debugger/msc.c b/debugger/msc.c
index 41cb1d0..c661ce0 100644
--- a/debugger/msc.c
+++ b/debugger/msc.c
@@ -81,7 +81,6 @@
 static void*	DEBUG_MapDebugInfoFile(const char* name, DWORD offset, DWORD size,
 				       HANDLE* hFile, HANDLE* hMap)
 {
-    OFSTRUCT	ofs;
     DWORD	g_offset;	/* offset aligned on map granuality */
     DWORD	g_size;		/* size to map, with offset aligned */
     char*	ret;
@@ -92,7 +91,7 @@
        char 	filename[MAX_PATHNAME_LEN];
 
        DEBUG_LocateDebugInfoFile(name, filename);
-       if ((*hFile = OpenFile(filename, &ofs, OF_READ)) == HFILE_ERROR)
+       if ((*hFile = CreateFile(filename, GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL)) == INVALID_HANDLE_VALUE)
 	  return NULL;
     }
 
diff --git a/debugger/winedbg.c b/debugger/winedbg.c
index 64aaa70..d4e05b3 100644
--- a/debugger/winedbg.c
+++ b/debugger/winedbg.c
@@ -849,7 +849,7 @@
 	HANDLE	hEvent;
 	DWORD	pid;
 
-	if ((pid = atoi(argv[1])) != 0 && (hEvent = atoi(argv[2])) != 0) {
+	if ((pid = atoi(argv[1])) != 0 && (hEvent = (HANDLE)atoi(argv[2])) != 0) {
 	    BOOL	ret = DEBUG_Attach(pid, TRUE);
 
 	    SetEvent(hEvent);