Index: trunk/src/VBox/Additions/3D/win/include/VBoxGaDriver.h
===================================================================
--- trunk/src/VBox/Additions/3D/win/include/VBoxGaDriver.h	(revision 85065)
+++ trunk/src/VBox/Additions/3D/win/include/VBoxGaDriver.h	(revision 85121)
@@ -39,36 +39,36 @@
     void *pvEnv;
     /* The callbacks to use by the driver. */
-    DECLCALLBACKMEMBER(uint32_t, pfnContextCreate)(void *pvEnv,
+    DECLCALLBACKMEMBER(uint32_t, pfnContextCreate,(void *pvEnv,
                                                    boolean extended,
-                                                   boolean vgpu10);
-    DECLCALLBACKMEMBER(void, pfnContextDestroy)(void *pvEnv,
-                                                uint32_t u32Cid);
-    DECLCALLBACKMEMBER(int, pfnSurfaceDefine)(void *pvEnv,
+                                                   boolean vgpu10));
+    DECLCALLBACKMEMBER(void, pfnContextDestroy,(void *pvEnv,
+                                                uint32_t u32Cid));
+    DECLCALLBACKMEMBER(int, pfnSurfaceDefine,(void *pvEnv,
                                               GASURFCREATE *pCreateParms,
                                               GASURFSIZE *paSizes,
                                               uint32_t cSizes,
-                                              uint32_t *pu32Sid);
-    DECLCALLBACKMEMBER(void, pfnSurfaceDestroy)(void *pvEnv,
-                                                uint32_t u32Sid);
-    DECLCALLBACKMEMBER(int, pfnRender)(void *pvEnv,
+                                              uint32_t *pu32Sid));
+    DECLCALLBACKMEMBER(void, pfnSurfaceDestroy,(void *pvEnv,
+                                                uint32_t u32Sid));
+    DECLCALLBACKMEMBER(int, pfnRender,(void *pvEnv,
                                        uint32_t u32Cid,
                                        void *pvCommands,
                                        uint32_t cbCommands,
-                                       GAFENCEQUERY *pFenceQuery);
-    DECLCALLBACKMEMBER(void, pfnFenceUnref)(void *pvEnv,
-                                            uint32_t u32FenceHandle);
-    DECLCALLBACKMEMBER(int, pfnFenceQuery)(void *pvEnv,
+                                       GAFENCEQUERY *pFenceQuery));
+    DECLCALLBACKMEMBER(void, pfnFenceUnref,(void *pvEnv,
+                                            uint32_t u32FenceHandle));
+    DECLCALLBACKMEMBER(int, pfnFenceQuery,(void *pvEnv,
                                            uint32_t u32FenceHandle,
-                                           GAFENCEQUERY *pFenceQuery);
-    DECLCALLBACKMEMBER(int, pfnFenceWait)(void *pvEnv,
+                                           GAFENCEQUERY *pFenceQuery));
+    DECLCALLBACKMEMBER(int, pfnFenceWait,(void *pvEnv,
                                           uint32_t u32FenceHandle,
-                                          uint32_t u32TimeoutUS);
-    DECLCALLBACKMEMBER(int, pfnRegionCreate)(void *pvEnv,
+                                          uint32_t u32TimeoutUS));
+    DECLCALLBACKMEMBER(int, pfnRegionCreate,(void *pvEnv,
                                              uint32_t u32RegionSize,
                                              uint32_t *pu32GmrId,
-                                             void **ppvMap);
-    DECLCALLBACKMEMBER(void, pfnRegionDestroy)(void *pvEnv,
+                                             void **ppvMap));
+    DECLCALLBACKMEMBER(void, pfnRegionDestroy,(void *pvEnv,
                                                uint32_t u32GmrId,
-                                               void *pvMap);
+                                               void *pvMap));
 } WDDMGalliumDriverEnv;
 
Index: trunk/src/VBox/Additions/WINNT/Graphics/Video/common/xpdm/VBoxVideoIOCTL.h
===================================================================
--- trunk/src/VBox/Additions/WINNT/Graphics/Video/common/xpdm/VBoxVideoIOCTL.h	(revision 85065)
+++ trunk/src/VBox/Additions/WINNT/Graphics/Video/common/xpdm/VBoxVideoIOCTL.h	(revision 85121)
@@ -69,14 +69,15 @@
 
 /** Complete host commands addressed to the display */
-typedef DECLCALLBACK(void) FNVBOXVIDEOHGSMICOMPLETION(HVBOXVIDEOHGSMI hHGSMI, struct VBVAHOSTCMD RT_UNTRUSTED_VOLATILE_HOST * pCmd);
+typedef DECLCALLBACKTYPE(void, FNVBOXVIDEOHGSMICOMPLETION,(HVBOXVIDEOHGSMI hHGSMI,
+                                                           struct VBVAHOSTCMD RT_UNTRUSTED_VOLATILE_HOST * pCmd));
 typedef FNVBOXVIDEOHGSMICOMPLETION *PFNVBOXVIDEOHGSMICOMPLETION;
 
 /** request the host commands addressed to the display */
-typedef DECLCALLBACK(int) FNVBOXVIDEOHGSMICOMMANDS(HVBOXVIDEOHGSMI hHGSMI, uint8_t u8Channel, uint32_t iDevice,
-                                                   struct VBVAHOSTCMD RT_UNTRUSTED_VOLATILE_HOST ** ppCmd);
+typedef DECLCALLBACKTYPE(int, FNVBOXVIDEOHGSMICOMMANDS,(HVBOXVIDEOHGSMI hHGSMI, uint8_t u8Channel, uint32_t iDevice,
+                                                        struct VBVAHOSTCMD RT_UNTRUSTED_VOLATILE_HOST ** ppCmd));
 typedef FNVBOXVIDEOHGSMICOMMANDS *PFNVBOXVIDEOHGSMICOMMANDS;
 
 /** post guest command (offset) to the host */
-typedef DECLCALLBACK(void) FNVBOXVIDEOHGSMIPOSTCOMMAND(HVBOXVIDEOHGSMI hHGSMI, HGSMIOFFSET offCmd);
+typedef DECLCALLBACKTYPE(void, FNVBOXVIDEOHGSMIPOSTCOMMAND,(HVBOXVIDEOHGSMI hHGSMI, HGSMIOFFSET offCmd));
 typedef FNVBOXVIDEOHGSMIPOSTCOMMAND *PFNVBOXVIDEOHGSMIPOSTCOMMAND;
 
Index: trunk/src/VBox/Additions/WINNT/Graphics/Video/disp/wddm/VBoxDispDbg.cpp
===================================================================
--- trunk/src/VBox/Additions/WINNT/Graphics/Video/disp/wddm/VBoxDispDbg.cpp	(revision 85065)
+++ trunk/src/VBox/Additions/WINNT/Graphics/Video/disp/wddm/VBoxDispDbg.cpp	(revision 85121)
@@ -133,5 +133,5 @@
 } VBOXVDBG_DUMP_INFO, *PVBOXVDBG_DUMP_INFO;
 
-typedef DECLCALLBACK(void) FNVBOXVDBG_CONTENTS_DUMPER(PVBOXVDBG_DUMP_INFO pInfo, BOOLEAN fBreak, void *pvDumper);
+typedef DECLCALLBACKTYPE(void, FNVBOXVDBG_CONTENTS_DUMPER,(PVBOXVDBG_DUMP_INFO pInfo, BOOLEAN fBreak, void *pvDumper));
 typedef FNVBOXVDBG_CONTENTS_DUMPER *PFNVBOXVDBG_CONTENTS_DUMPER;
 
@@ -588,5 +588,5 @@
 }
 
-static VOID CALLBACK vboxVDbgTimerCb(__in PVOID lpParameter, __in BOOLEAN TimerOrWaitFired)
+static VOID CALLBACK vboxVDbgTimerCb(__in PVOID lpParameter, __in BOOLEAN TimerOrWaitFired) RT_NOTHROW_DEF
 {
     RT_NOREF(lpParameter, TimerOrWaitFired);
@@ -688,5 +688,5 @@
 }
 
-LONG WINAPI vboxVDbgVectoredHandler(struct _EXCEPTION_POINTERS *pExceptionInfo)
+static LONG WINAPI vboxVDbgVectoredHandler(struct _EXCEPTION_POINTERS *pExceptionInfo) RT_NOTHROW_DEF
 {
     static volatile bool g_fAllowIgnore = true; /* Might be changed in kernel debugger. */
@@ -721,5 +721,5 @@
 {
     Assert(!g_VBoxWDbgVEHandler);
-    g_VBoxWDbgVEHandler = AddVectoredExceptionHandler(1,vboxVDbgVectoredHandler);
+    g_VBoxWDbgVEHandler = AddVectoredExceptionHandler(1, vboxVDbgVectoredHandler);
     Assert(g_VBoxWDbgVEHandler);
 
Index: trunk/src/VBox/Additions/WINNT/Graphics/Video/disp/wddm/shared/VBoxDispKmt.cpp
===================================================================
--- trunk/src/VBox/Additions/WINNT/Graphics/Video/disp/wddm/shared/VBoxDispKmt.cpp	(revision 85065)
+++ trunk/src/VBox/Additions/WINNT/Graphics/Video/disp/wddm/shared/VBoxDispKmt.cpp	(revision 85121)
@@ -53,69 +53,69 @@
         bool bSupportedWin8 = true;
         pCallbacks->pfnD3DKMTOpenAdapterFromHdc = (PFND3DKMT_OPENADAPTERFROMHDC)GetProcAddress(pCallbacks->hGdi32, "D3DKMTOpenAdapterFromHdc");
-        LogFunc(("pfnD3DKMTOpenAdapterFromHdc = %p\n", pCallbacks->pfnD3DKMTOpenAdapterFromHdc));
+        LogFunc(("pfnD3DKMTOpenAdapterFromHdc = %p\n", RT_CB_LOG_CAST(pCallbacks->pfnD3DKMTOpenAdapterFromHdc)));
         bSupported &= !!(pCallbacks->pfnD3DKMTOpenAdapterFromHdc);
 
         pCallbacks->pfnD3DKMTOpenAdapterFromGdiDisplayName = (PFND3DKMT_OPENADAPTERFROMGDIDISPLAYNAME)GetProcAddress(pCallbacks->hGdi32, "D3DKMTOpenAdapterFromGdiDisplayName");
-        LogFunc(("pfnD3DKMTOpenAdapterFromGdiDisplayName = %p\n", pCallbacks->pfnD3DKMTOpenAdapterFromGdiDisplayName));
+        LogFunc(("pfnD3DKMTOpenAdapterFromGdiDisplayName = %p\n", RT_CB_LOG_CAST(pCallbacks->pfnD3DKMTOpenAdapterFromGdiDisplayName)));
         bSupported &= !!(pCallbacks->pfnD3DKMTOpenAdapterFromGdiDisplayName);
 
         pCallbacks->pfnD3DKMTCloseAdapter = (PFND3DKMT_CLOSEADAPTER)GetProcAddress(pCallbacks->hGdi32, "D3DKMTCloseAdapter");
-        LogFunc(("pfnD3DKMTCloseAdapter = %p\n", pCallbacks->pfnD3DKMTCloseAdapter));
+        LogFunc(("pfnD3DKMTCloseAdapter = %p\n", RT_CB_LOG_CAST(pCallbacks->pfnD3DKMTCloseAdapter)));
         bSupported &= !!(pCallbacks->pfnD3DKMTCloseAdapter);
 
         pCallbacks->pfnD3DKMTEscape = (PFND3DKMT_ESCAPE)GetProcAddress(pCallbacks->hGdi32, "D3DKMTEscape");
-        LogFunc(("pfnD3DKMTEscape = %p\n", pCallbacks->pfnD3DKMTEscape));
+        LogFunc(("pfnD3DKMTEscape = %p\n", RT_CB_LOG_CAST(pCallbacks->pfnD3DKMTEscape)));
         bSupported &= !!(pCallbacks->pfnD3DKMTEscape);
 
         pCallbacks->pfnD3DKMTQueryAdapterInfo = (PFND3DKMT_QUERYADAPTERINFO)GetProcAddress(pCallbacks->hGdi32, "D3DKMTQueryAdapterInfo");
-        LogFunc(("pfnD3DKMTQueryAdapterInfo = %p\n", pCallbacks->pfnD3DKMTQueryAdapterInfo));
+        LogFunc(("pfnD3DKMTQueryAdapterInfo = %p\n", RT_CB_LOG_CAST(pCallbacks->pfnD3DKMTQueryAdapterInfo)));
         bSupported &= !!(pCallbacks->pfnD3DKMTQueryAdapterInfo);
 
-                pCallbacks->pfnD3DKMTCreateDevice = (PFND3DKMT_CREATEDEVICE)GetProcAddress(pCallbacks->hGdi32, "D3DKMTCreateDevice");
-        LogFunc(("pfnD3DKMTCreateDevice = %p\n", pCallbacks->pfnD3DKMTCreateDevice));
+        pCallbacks->pfnD3DKMTCreateDevice = (PFND3DKMT_CREATEDEVICE)GetProcAddress(pCallbacks->hGdi32, "D3DKMTCreateDevice");
+        LogFunc(("pfnD3DKMTCreateDevice = %p\n", RT_CB_LOG_CAST(pCallbacks->pfnD3DKMTCreateDevice)));
         bSupported &= !!(pCallbacks->pfnD3DKMTCreateDevice);
 
         pCallbacks->pfnD3DKMTDestroyDevice = (PFND3DKMT_DESTROYDEVICE)GetProcAddress(pCallbacks->hGdi32, "D3DKMTDestroyDevice");
-        LogFunc(("pfnD3DKMTDestroyDevice = %p\n", pCallbacks->pfnD3DKMTDestroyDevice));
+        LogFunc(("pfnD3DKMTDestroyDevice = %p\n", RT_CB_LOG_CAST(pCallbacks->pfnD3DKMTDestroyDevice)));
         bSupported &= !!(pCallbacks->pfnD3DKMTDestroyDevice);
 
         pCallbacks->pfnD3DKMTCreateContext = (PFND3DKMT_CREATECONTEXT)GetProcAddress(pCallbacks->hGdi32, "D3DKMTCreateContext");
-        LogFunc(("pfnD3DKMTCreateContext = %p\n", pCallbacks->pfnD3DKMTCreateContext));
+        LogFunc(("pfnD3DKMTCreateContext = %p\n", RT_CB_LOG_CAST(pCallbacks->pfnD3DKMTCreateContext)));
         bSupported &= !!(pCallbacks->pfnD3DKMTCreateContext);
 
         pCallbacks->pfnD3DKMTDestroyContext = (PFND3DKMT_DESTROYCONTEXT)GetProcAddress(pCallbacks->hGdi32, "D3DKMTDestroyContext");
-        LogFunc(("pfnD3DKMTDestroyContext = %p\n", pCallbacks->pfnD3DKMTDestroyContext));
+        LogFunc(("pfnD3DKMTDestroyContext = %p\n", RT_CB_LOG_CAST(pCallbacks->pfnD3DKMTDestroyContext)));
         bSupported &= !!(pCallbacks->pfnD3DKMTDestroyContext);
 
         pCallbacks->pfnD3DKMTRender = (PFND3DKMT_RENDER)GetProcAddress(pCallbacks->hGdi32, "D3DKMTRender");
-        LogFunc(("pfnD3DKMTRender = %p\n", pCallbacks->pfnD3DKMTRender));
+        LogFunc(("pfnD3DKMTRender = %p\n", RT_CB_LOG_CAST(pCallbacks->pfnD3DKMTRender)));
         bSupported &= !!(pCallbacks->pfnD3DKMTRender);
 
         pCallbacks->pfnD3DKMTCreateAllocation = (PFND3DKMT_CREATEALLOCATION)GetProcAddress(pCallbacks->hGdi32, "D3DKMTCreateAllocation");
-        LogFunc(("pfnD3DKMTCreateAllocation = %p\n", pCallbacks->pfnD3DKMTCreateAllocation));
+        LogFunc(("pfnD3DKMTCreateAllocation = %p\n", RT_CB_LOG_CAST(pCallbacks->pfnD3DKMTCreateAllocation)));
         bSupported &= !!(pCallbacks->pfnD3DKMTCreateAllocation);
 
         pCallbacks->pfnD3DKMTDestroyAllocation = (PFND3DKMT_DESTROYALLOCATION)GetProcAddress(pCallbacks->hGdi32, "D3DKMTDestroyAllocation");
-        LogFunc(("pfnD3DKMTDestroyAllocation = %p\n", pCallbacks->pfnD3DKMTDestroyAllocation));
+        LogFunc(("pfnD3DKMTDestroyAllocation = %p\n", RT_CB_LOG_CAST(pCallbacks->pfnD3DKMTDestroyAllocation)));
         bSupported &= !!(pCallbacks->pfnD3DKMTDestroyAllocation);
 
         pCallbacks->pfnD3DKMTLock = (PFND3DKMT_LOCK)GetProcAddress(pCallbacks->hGdi32, "D3DKMTLock");
-        LogFunc(("pfnD3DKMTLock = %p\n", pCallbacks->pfnD3DKMTLock));
+        LogFunc(("pfnD3DKMTLock = %p\n", RT_CB_LOG_CAST(pCallbacks->pfnD3DKMTLock)));
         bSupported &= !!(pCallbacks->pfnD3DKMTLock);
 
         pCallbacks->pfnD3DKMTUnlock = (PFND3DKMT_UNLOCK)GetProcAddress(pCallbacks->hGdi32, "D3DKMTUnlock");
-        LogFunc(("pfnD3DKMTUnlock = %p\n", pCallbacks->pfnD3DKMTUnlock));
+        LogFunc(("pfnD3DKMTUnlock = %p\n", RT_CB_LOG_CAST(pCallbacks->pfnD3DKMTUnlock)));
         bSupported &= !!(pCallbacks->pfnD3DKMTUnlock);
 
         pCallbacks->pfnD3DKMTInvalidateActiveVidPn = (PFND3DKMT_INVALIDATEACTIVEVIDPN)GetProcAddress(pCallbacks->hGdi32, "D3DKMTInvalidateActiveVidPn");
-        LogFunc(("pfnD3DKMTInvalidateActiveVidPn = %p\n", pCallbacks->pfnD3DKMTInvalidateActiveVidPn));
+        LogFunc(("pfnD3DKMTInvalidateActiveVidPn = %p\n", RT_CB_LOG_CAST(pCallbacks->pfnD3DKMTInvalidateActiveVidPn)));
         bSupported &= !!(pCallbacks->pfnD3DKMTInvalidateActiveVidPn);
 
         pCallbacks->pfnD3DKMTPollDisplayChildren = (PFND3DKMT_POLLDISPLAYCHILDREN)GetProcAddress(pCallbacks->hGdi32, "D3DKMTPollDisplayChildren");
-        LogFunc(("pfnD3DKMTPollDisplayChildren = %p\n", pCallbacks->pfnD3DKMTPollDisplayChildren));
+        LogFunc(("pfnD3DKMTPollDisplayChildren = %p\n", RT_CB_LOG_CAST(pCallbacks->pfnD3DKMTPollDisplayChildren)));
         bSupported &= !!(pCallbacks->pfnD3DKMTPollDisplayChildren);
 
         pCallbacks->pfnD3DKMTEnumAdapters = (PFND3DKMT_ENUMADAPTERS)GetProcAddress(pCallbacks->hGdi32, "D3DKMTEnumAdapters");
-        LogFunc(("pfnD3DKMTEnumAdapters = %p\n", pCallbacks->pfnD3DKMTEnumAdapters));
+        LogFunc(("pfnD3DKMTEnumAdapters = %p\n", RT_CB_LOG_CAST(pCallbacks->pfnD3DKMTEnumAdapters)));
         /* this present starting win8 release preview only, so keep going if it is not available,
          * i.e. do not clear the bSupported on its absence */
@@ -123,5 +123,5 @@
 
         pCallbacks->pfnD3DKMTOpenAdapterFromLuid = (PFND3DKMT_OPENADAPTERFROMLUID)GetProcAddress(pCallbacks->hGdi32, "D3DKMTOpenAdapterFromLuid");
-        LogFunc(("pfnD3DKMTOpenAdapterFromLuid = %p\n", pCallbacks->pfnD3DKMTOpenAdapterFromLuid));
+        LogFunc(("pfnD3DKMTOpenAdapterFromLuid = %p\n", RT_CB_LOG_CAST(pCallbacks->pfnD3DKMTOpenAdapterFromLuid)));
         /* this present starting win8 release preview only, so keep going if it is not available,
          * i.e. do not clear the bSupported on its absence */
Index: trunk/src/VBox/Additions/WINNT/Graphics/Video/disp/wddm/shared/VBoxDispKmt.h
===================================================================
--- trunk/src/VBox/Additions/WINNT/Graphics/Video/disp/wddm/shared/VBoxDispKmt.h	(revision 85065)
+++ trunk/src/VBox/Additions/WINNT/Graphics/Video/disp/wddm/shared/VBoxDispKmt.h	(revision 85121)
@@ -43,5 +43,5 @@
 } D3DKMT_ENUMADAPTERS;
 
-typedef NTSTATUS (APIENTRY *PFND3DKMT_ENUMADAPTERS)(IN OUT D3DKMT_ENUMADAPTERS*);
+typedef DECLCALLBACKPTR_EX(NTSTATUS, APIENTRY, PFND3DKMT_ENUMADAPTERS,(IN OUT D3DKMT_ENUMADAPTERS *));
 
 typedef struct _D3DKMT_OPENADAPTERFROMLUID
@@ -51,5 +51,5 @@
 } D3DKMT_OPENADAPTERFROMLUID;
 
-typedef NTSTATUS (APIENTRY *PFND3DKMT_OPENADAPTERFROMLUID)(IN OUT D3DKMT_OPENADAPTERFROMLUID*);
+typedef DECLCALLBACKPTR_EX(NTSTATUS, APIENTRY, PFND3DKMT_OPENADAPTERFROMLUID,(IN OUT D3DKMT_OPENADAPTERFROMLUID *));
 /* END OF win8 release preview-specific stuff */
 
Index: trunk/src/VBox/Additions/WINNT/Graphics/Video/disp/xpdm/VBoxDispVHWA.h
===================================================================
--- trunk/src/VBox/Additions/WINNT/Graphics/Video/disp/xpdm/VBoxDispVHWA.h	(revision 85065)
+++ trunk/src/VBox/Additions/WINNT/Graphics/Video/disp/xpdm/VBoxDispVHWA.h	(revision 85121)
@@ -62,5 +62,6 @@
 }VBOXVHWASURFDESC, *PVBOXVHWASURFDESC;
 
-typedef DECLCALLBACK(void) FNVBOXVHWACMDCOMPLETION(PVBOXDISPDEV pDev, VBOXVHWACMD RT_UNTRUSTED_VOLATILE_HOST *pCmd, void *pvContext);
+typedef DECLCALLBACKTYPE(void, FNVBOXVHWACMDCOMPLETION,(PVBOXDISPDEV pDev, VBOXVHWACMD RT_UNTRUSTED_VOLATILE_HOST *pCmd,
+                                                        void *pvContext));
 typedef FNVBOXVHWACMDCOMPLETION *PFNVBOXVHWACMDCOMPLETION;
 
Index: trunk/src/VBox/Additions/WINNT/Graphics/Video/mp/wddm/VBoxMPCm.cpp
===================================================================
--- trunk/src/VBox/Additions/WINNT/Graphics/Video/mp/wddm/VBoxMPCm.cpp	(revision 85065)
+++ trunk/src/VBox/Additions/WINNT/Graphics/Video/mp/wddm/VBoxMPCm.cpp	(revision 85121)
@@ -35,5 +35,6 @@
 } VBOXVIDEOCM_CMD_CTL_KM_TYPE;
 
-typedef DECLCALLBACK(VOID) FNVBOXVIDEOCM_CMD_CB(PVBOXVIDEOCM_CTX pContext, struct VBOXVIDEOCM_CMD_CTL_KM *pCmd, PVOID pvContext);
+typedef DECLCALLBACKTYPE(VOID, FNVBOXVIDEOCM_CMD_CB,(PVBOXVIDEOCM_CTX pContext, struct VBOXVIDEOCM_CMD_CTL_KM *pCmd,
+                                                     PVOID pvContext));
 typedef FNVBOXVIDEOCM_CMD_CB *PFNVBOXVIDEOCM_CMD_CB;
 
Index: trunk/src/VBox/Additions/WINNT/Graphics/Video/mp/wddm/VBoxMPCm.h
===================================================================
--- trunk/src/VBox/Additions/WINNT/Graphics/Video/mp/wddm/VBoxMPCm.h	(revision 85065)
+++ trunk/src/VBox/Additions/WINNT/Graphics/Video/mp/wddm/VBoxMPCm.h	(revision 85121)
@@ -55,5 +55,5 @@
 #define VBOXVIDEOCMCMDVISITOR_RETURN_BREAK    0x00000001
 #define VBOXVIDEOCMCMDVISITOR_RETURN_RMCMD    0x00000002
-typedef DECLCALLBACK(UINT) FNVBOXVIDEOCMCMDVISITOR(PVBOXVIDEOCM_CTX pContext, PVOID pvCmd, uint32_t cbCmd, PVOID pvVisitor);
+typedef DECLCALLBACKTYPE(UINT, FNVBOXVIDEOCMCMDVISITOR,(PVBOXVIDEOCM_CTX pContext, PVOID pvCmd, uint32_t cbCmd, PVOID pvVisitor));
 typedef FNVBOXVIDEOCMCMDVISITOR *PFNVBOXVIDEOCMCMDVISITOR;
 NTSTATUS vboxVideoCmCmdVisit(PVBOXVIDEOCM_CTX pContext, BOOLEAN bEntireSession, PFNVBOXVIDEOCMCMDVISITOR pfnVisitor, PVOID pvVisitor);
Index: trunk/src/VBox/Additions/WINNT/Graphics/Video/mp/wddm/VBoxMPLegacy.cpp
===================================================================
--- trunk/src/VBox/Additions/WINNT/Graphics/Video/mp/wddm/VBoxMPLegacy.cpp	(revision 85065)
+++ trunk/src/VBox/Additions/WINNT/Graphics/Video/mp/wddm/VBoxMPLegacy.cpp	(revision 85121)
@@ -52,5 +52,5 @@
 
 typedef struct VBOXVDMADDI_CMD *PVBOXVDMADDI_CMD;
-typedef DECLCALLBACK(VOID) FNVBOXVDMADDICMDCOMPLETE_DPC(PVBOXMP_DEVEXT pDevExt, PVBOXVDMADDI_CMD pCmd, PVOID pvContext);
+typedef DECLCALLBACKTYPE(VOID, FNVBOXVDMADDICMDCOMPLETE_DPC,(PVBOXMP_DEVEXT pDevExt, PVBOXVDMADDI_CMD pCmd, PVOID pvContext));
 typedef FNVBOXVDMADDICMDCOMPLETE_DPC *PFNVBOXVDMADDICMDCOMPLETE_DPC;
 
Index: trunk/src/VBox/Additions/WINNT/Graphics/Video/mp/wddm/VBoxMPShgsmi.h
===================================================================
--- trunk/src/VBox/Additions/WINNT/Graphics/Video/mp/wddm/VBoxMPShgsmi.h	(revision 85065)
+++ trunk/src/VBox/Additions/WINNT/Graphics/Video/mp/wddm/VBoxMPShgsmi.h	(revision 85121)
@@ -33,10 +33,10 @@
 } VBOXSHGSMI, *PVBOXSHGSMI;
 
-typedef DECLCALLBACK(void) FNVBOXSHGSMICMDCOMPLETION(PVBOXSHGSMI pHeap, void RT_UNTRUSTED_VOLATILE_HOST *pvCmd, void *pvContext);
+typedef DECLCALLBACKTYPE(void, FNVBOXSHGSMICMDCOMPLETION,(PVBOXSHGSMI pHeap, void RT_UNTRUSTED_VOLATILE_HOST *pvCmd, void *pvContext));
 typedef FNVBOXSHGSMICMDCOMPLETION *PFNVBOXSHGSMICMDCOMPLETION;
 
-typedef DECLCALLBACK(PFNVBOXSHGSMICMDCOMPLETION) FNVBOXSHGSMICMDCOMPLETION_IRQ(PVBOXSHGSMI pHeap,
-                                                                               void RT_UNTRUSTED_VOLATILE_HOST *pvCmd,
-                                                                               void *pvContext, void **ppvCompletion);
+typedef DECLCALLBACKTYPE(PFNVBOXSHGSMICMDCOMPLETION, FNVBOXSHGSMICMDCOMPLETION_IRQ,(PVBOXSHGSMI pHeap,
+                                                                                    void RT_UNTRUSTED_VOLATILE_HOST *pvCmd,
+                                                                                    void *pvContext, void **ppvCompletion));
 typedef FNVBOXSHGSMICMDCOMPLETION_IRQ *PFNVBOXSHGSMICMDCOMPLETION_IRQ;
 
Index: trunk/src/VBox/Additions/WINNT/Graphics/Video/mp/wddm/VBoxMPVhwa.h
===================================================================
--- trunk/src/VBox/Additions/WINNT/Graphics/Video/mp/wddm/VBoxMPVhwa.h	(revision 85065)
+++ trunk/src/VBox/Additions/WINNT/Graphics/Video/mp/wddm/VBoxMPVhwa.h	(revision 85121)
@@ -35,6 +35,6 @@
 void vboxVhwaCommandSubmitAsynchAndComplete(PVBOXMP_DEVEXT pDevExt, VBOXVHWACMD RT_UNTRUSTED_VOLATILE_HOST *pCmd);
 
-typedef DECLCALLBACK(void) FNVBOXVHWACMDCOMPLETION(PVBOXMP_DEVEXT pDevExt, VBOXVHWACMD RT_UNTRUSTED_VOLATILE_HOST * pCmd,
-                                                   void *pvContext);
+typedef DECLCALLBACKTYPE(void, FNVBOXVHWACMDCOMPLETION,(PVBOXMP_DEVEXT pDevExt, VBOXVHWACMD RT_UNTRUSTED_VOLATILE_HOST *pCmd,
+                                                        void *pvContext));
 typedef FNVBOXVHWACMDCOMPLETION *PFNVBOXVHWACMDCOMPLETION;
 
Index: trunk/src/VBox/Additions/WINNT/Graphics/Video/mp/wddm/VBoxMPVidPn.h
===================================================================
--- trunk/src/VBox/Additions/WINNT/Graphics/Video/mp/wddm/VBoxMPVidPn.h	(revision 85065)
+++ trunk/src/VBox/Additions/WINNT/Graphics/Video/mp/wddm/VBoxMPVidPn.h	(revision 85121)
@@ -53,25 +53,36 @@
 
 /* !!!NOTE: The callback is responsible for releasing the path */
-typedef DECLCALLBACK(BOOLEAN) FNVBOXVIDPNENUMPATHS(D3DKMDT_HVIDPNTOPOLOGY hVidPnTopology, const DXGK_VIDPNTOPOLOGY_INTERFACE* pVidPnTopologyInterface,
-        const D3DKMDT_VIDPN_PRESENT_PATH *pNewVidPnPresentPathInfo, PVOID pContext);
+typedef DECLCALLBACKTYPE(BOOLEAN, FNVBOXVIDPNENUMPATHS,(D3DKMDT_HVIDPNTOPOLOGY hVidPnTopology,
+                                                        const DXGK_VIDPNTOPOLOGY_INTERFACE *pVidPnTopologyInterface,
+                                                        const D3DKMDT_VIDPN_PRESENT_PATH *pNewVidPnPresentPathInfo,
+                                                        PVOID pContext));
 typedef FNVBOXVIDPNENUMPATHS *PFNVBOXVIDPNENUMPATHS;
 
 /* !!!NOTE: The callback is responsible for releasing the source mode info */
-typedef DECLCALLBACK(BOOLEAN) FNVBOXVIDPNENUMSOURCEMODES(D3DKMDT_HVIDPNSOURCEMODESET hNewVidPnSourceModeSet, const DXGK_VIDPNSOURCEMODESET_INTERFACE *pVidPnSourceModeSetInterface,
-        const D3DKMDT_VIDPN_SOURCE_MODE *pNewVidPnSourceModeInfo, PVOID pContext);
+typedef DECLCALLBACKTYPE(BOOLEAN, FNVBOXVIDPNENUMSOURCEMODES,(D3DKMDT_HVIDPNSOURCEMODESET hNewVidPnSourceModeSet,
+                                                              const DXGK_VIDPNSOURCEMODESET_INTERFACE *pVidPnSourceModeSetInterface,
+                                                              const D3DKMDT_VIDPN_SOURCE_MODE *pNewVidPnSourceModeInfo,
+                                                              PVOID pContext));
 typedef FNVBOXVIDPNENUMSOURCEMODES *PFNVBOXVIDPNENUMSOURCEMODES;
 
 /* !!!NOTE: The callback is responsible for releasing the target mode info */
-typedef DECLCALLBACK(BOOLEAN) FNVBOXVIDPNENUMTARGETMODES(D3DKMDT_HVIDPNTARGETMODESET hNewVidPnTargetModeSet, const DXGK_VIDPNTARGETMODESET_INTERFACE *pVidPnTargetModeSetInterface,
-        const D3DKMDT_VIDPN_TARGET_MODE *pNewVidPnTargetModeInfo, PVOID pContext);
+typedef DECLCALLBACKTYPE(BOOLEAN, FNVBOXVIDPNENUMTARGETMODES,(D3DKMDT_HVIDPNTARGETMODESET hNewVidPnTargetModeSet,
+                                                              const DXGK_VIDPNTARGETMODESET_INTERFACE *pVidPnTargetModeSetInterface,
+                                                              const D3DKMDT_VIDPN_TARGET_MODE *pNewVidPnTargetModeInfo,
+                                                              PVOID pContext));
 typedef FNVBOXVIDPNENUMTARGETMODES *PFNVBOXVIDPNENUMTARGETMODES;
 
 /* !!!NOTE: The callback is responsible for releasing the source mode info */
-typedef DECLCALLBACK(BOOLEAN) FNVBOXVIDPNENUMMONITORSOURCEMODES(D3DKMDT_HMONITORSOURCEMODESET hMonitorSMS, CONST DXGK_MONITORSOURCEMODESET_INTERFACE *pMonitorSMSIf,
-        CONST D3DKMDT_MONITOR_SOURCE_MODE *pMonitorSMI, PVOID pContext);
+typedef DECLCALLBACKTYPE(BOOLEAN, FNVBOXVIDPNENUMMONITORSOURCEMODES,(D3DKMDT_HMONITORSOURCEMODESET hMonitorSMS,
+                                                                     CONST DXGK_MONITORSOURCEMODESET_INTERFACE *pMonitorSMSIf,
+                                                                     CONST D3DKMDT_MONITOR_SOURCE_MODE *pMonitorSMI,
+                                                                     PVOID pContext));
 typedef FNVBOXVIDPNENUMMONITORSOURCEMODES *PFNVBOXVIDPNENUMMONITORSOURCEMODES;
 
-typedef DECLCALLBACK(BOOLEAN) FNVBOXVIDPNENUMTARGETSFORSOURCE(PVBOXMP_DEVEXT pDevExt, D3DKMDT_HVIDPNTOPOLOGY hVidPnTopology, const DXGK_VIDPNTOPOLOGY_INTERFACE* pVidPnTopologyInterface,
-        CONST D3DDDI_VIDEO_PRESENT_SOURCE_ID VidPnSourceId, D3DDDI_VIDEO_PRESENT_TARGET_ID VidPnTargetId, SIZE_T cTgtPaths, PVOID pContext);
+typedef DECLCALLBACKTYPE(BOOLEAN, FNVBOXVIDPNENUMTARGETSFORSOURCE,(PVBOXMP_DEVEXT pDevExt, D3DKMDT_HVIDPNTOPOLOGY hVidPnTopology,
+                                                                   const DXGK_VIDPNTOPOLOGY_INTERFACE* pVidPnTopologyInterface,
+                                                                   CONST D3DDDI_VIDEO_PRESENT_SOURCE_ID VidPnSourceId,
+                                                                   D3DDDI_VIDEO_PRESENT_TARGET_ID VidPnTargetId,
+                                                                   SIZE_T cTgtPaths, PVOID pContext));
 typedef FNVBOXVIDPNENUMTARGETSFORSOURCE *PFNVBOXVIDPNENUMTARGETSFORSOURCE;
 
Index: trunk/src/VBox/Additions/WINNT/Graphics/Video/mp/wddm/gallium/Svga.h
===================================================================
--- trunk/src/VBox/Additions/WINNT/Graphics/Video/mp/wddm/gallium/Svga.h	(revision 85065)
+++ trunk/src/VBox/Additions/WINNT/Graphics/Video/mp/wddm/gallium/Svga.h	(revision 85121)
@@ -126,5 +126,5 @@
 
 typedef struct SVGAHOSTOBJECT SVGAHOSTOBJECT;
-typedef DECLCALLBACK(NTSTATUS) FNHostObjectDestroy(SVGAHOSTOBJECT *pThis);
+typedef DECLCALLBACKTYPE(NTSTATUS, FNHostObjectDestroy,(SVGAHOSTOBJECT *pThis));
 typedef FNHostObjectDestroy *PFNHostObjectDestroy;
 
Index: trunk/src/VBox/Additions/WINNT/Installer/VBoxDrvInst.cpp
===================================================================
--- trunk/src/VBox/Additions/WINNT/Installer/VBoxDrvInst.cpp	(revision 85065)
+++ trunk/src/VBox/Additions/WINNT/Installer/VBoxDrvInst.cpp	(revision 85121)
@@ -399,5 +399,5 @@
                                                      UINT Notification,
                                                      UINT_PTR Param1,
-                                                     UINT_PTR Param2)
+                                                     UINT_PTR Param2) RT_NOTHROW_DEF
 {
 #ifdef DEBUG
Index: trunk/src/VBox/Additions/WINNT/VBoxCredProv/VBoxCredProvPoller.cpp
===================================================================
--- trunk/src/VBox/Additions/WINNT/VBoxCredProv/VBoxCredProvPoller.cpp	(revision 85065)
+++ trunk/src/VBox/Additions/WINNT/VBoxCredProv/VBoxCredProvPoller.cpp	(revision 85121)
@@ -32,7 +32,7 @@
 
 
-VBoxCredProvPoller::VBoxCredProvPoller(void) :
-    m_hThreadPoller(NIL_RTTHREAD),
-    m_pProv(NULL)
+VBoxCredProvPoller::VBoxCredProvPoller(void)
+    : m_hThreadPoller(NIL_RTTHREAD)
+    , m_pProv(NULL)
 {
 }
@@ -146,3 +146,2 @@
     return VINF_SUCCESS;
 }
-
Index: trunk/src/VBox/Additions/WINNT/VBoxCredProv/VBoxCredProvProvider.cpp
===================================================================
--- trunk/src/VBox/Additions/WINNT/VBoxCredProv/VBoxCredProvProvider.cpp	(revision 85065)
+++ trunk/src/VBox/Additions/WINNT/VBoxCredProv/VBoxCredProvProvider.cpp	(revision 85121)
@@ -23,5 +23,5 @@
 
 #include <iprt/win/windows.h>
-#include <credentialprovider.h>
+#include <iprt/win/credentialprovider.h>
 
 #include <iprt/errcore.h>
Index: trunk/src/VBox/Additions/WINNT/VBoxCredProv/VBoxCredProvProvider.h
===================================================================
--- trunk/src/VBox/Additions/WINNT/VBoxCredProv/VBoxCredProvProvider.h	(revision 85065)
+++ trunk/src/VBox/Additions/WINNT/VBoxCredProv/VBoxCredProvProvider.h	(revision 85121)
@@ -22,5 +22,5 @@
 #endif
 
-#include <credentialprovider.h>
+#include <iprt/win/credentialprovider.h>
 #include <iprt/win/windows.h>
 #include <strsafe.h>
Index: trunk/src/VBox/Additions/WINNT/VBoxCredProv/VBoxCredentialProvider.h
===================================================================
--- trunk/src/VBox/Additions/WINNT/VBoxCredProv/VBoxCredentialProvider.h	(revision 85065)
+++ trunk/src/VBox/Additions/WINNT/VBoxCredProv/VBoxCredentialProvider.h	(revision 85121)
@@ -23,5 +23,5 @@
 
 #include <iprt/win/windows.h>
-#include <credentialprovider.h>
+#include <iprt/win/credentialprovider.h>
 #include <Shlguid.h>
 
Index: trunk/src/VBox/Additions/WINNT/VBoxHook/VBoxHook.cpp
===================================================================
--- trunk/src/VBox/Additions/WINNT/VBoxHook/VBoxHook.cpp	(revision 85065)
+++ trunk/src/VBox/Additions/WINNT/VBoxHook/VBoxHook.cpp	(revision 85121)
@@ -54,5 +54,5 @@
 static void CALLBACK VBoxHandleWinEvent(HWINEVENTHOOK hWinEventHook, DWORD event, HWND hwnd,
                                         LONG idObject, LONG idChild,
-                                        DWORD dwEventThread, DWORD dwmsEventTime)
+                                        DWORD dwEventThread, DWORD dwmsEventTime) RT_NOTHROW_DEF
 {
     RT_NOREF(hWinEventHook, idChild, dwEventThread, dwmsEventTime);
@@ -109,5 +109,5 @@
 static void CALLBACK VBoxHandleDesktopEvent(HWINEVENTHOOK hWinEventHook, DWORD event, HWND hwnd,
                                             LONG idObject, LONG idChild,
-                                            DWORD dwEventThread, DWORD dwmsEventTime)
+                                            DWORD dwEventThread, DWORD dwmsEventTime) RT_NOTHROW_DEF
 {
     RT_NOREF(hWinEventHook, event, hwnd, idObject, idChild, dwEventThread, dwmsEventTime);
Index: trunk/src/VBox/Additions/WINNT/VBoxTray/VBoxClipboard.cpp
===================================================================
--- trunk/src/VBox/Additions/WINNT/VBoxTray/VBoxClipboard.cpp	(revision 85065)
+++ trunk/src/VBox/Additions/WINNT/VBoxTray/VBoxClipboard.cpp	(revision 85121)
@@ -749,5 +749,5 @@
 }
 
-static int vboxClipboardWindowThread(RTTHREAD hThread, void *pvUser)
+static DECLCALLBACK(int) vboxClipboardWindowThread(RTTHREAD hThread, void *pvUser)
 {
     PSHCLCONTEXT pCtx = (PSHCLCONTEXT)pvUser;
Index: trunk/src/VBox/Additions/WINNT/VBoxTray/VBoxDispIf.cpp
===================================================================
--- trunk/src/VBox/Additions/WINNT/VBoxTray/VBoxDispIf.cpp	(revision 85065)
+++ trunk/src/VBox/Additions/WINNT/VBoxTray/VBoxDispIf.cpp	(revision 85121)
@@ -72,10 +72,14 @@
 typedef struct _VBOXDISPLAYWDDMAPICONTEXT
 {
-    LONG (WINAPI * pfnSetDisplayConfig)(UINT numPathArrayElements,DISPLAYCONFIG_PATH_INFO *pathArray,UINT numModeInfoArrayElements,
-                                    DISPLAYCONFIG_MODE_INFO *modeInfoArray, UINT Flags);
-    LONG (WINAPI * pfnQueryDisplayConfig)(UINT Flags,UINT *pNumPathArrayElements, DISPLAYCONFIG_PATH_INFO *pPathInfoArray,
-                                      UINT *pNumModeInfoArrayElements, DISPLAYCONFIG_MODE_INFO *pModeInfoArray,
-                                      DISPLAYCONFIG_TOPOLOGY_ID *pCurrentTopologyId);
-    LONG (WINAPI * pfnGetDisplayConfigBufferSizes)(UINT Flags, UINT *pNumPathArrayElements, UINT *pNumModeInfoArrayElements);
+    DECLCALLBACKMEMBER_EX(LONG, WINAPI, pfnSetDisplayConfig,(UINT numPathArrayElements, DISPLAYCONFIG_PATH_INFO *pathArray,
+                                                             UINT numModeInfoArrayElements,
+                                                             DISPLAYCONFIG_MODE_INFO *modeInfoArray, UINT Flags));
+    DECLCALLBACKMEMBER_EX(LONG, WINAPI, pfnQueryDisplayConfig,(UINT Flags, UINT *pNumPathArrayElements,
+                                                               DISPLAYCONFIG_PATH_INFO *pPathInfoArray,
+                                                               UINT *pNumModeInfoArrayElements,
+                                                               DISPLAYCONFIG_MODE_INFO *pModeInfoArray,
+                                                               DISPLAYCONFIG_TOPOLOGY_ID *pCurrentTopologyId));
+    DECLCALLBACKMEMBER_EX(LONG, WINAPI, pfnGetDisplayConfigBufferSizes,(UINT Flags, UINT *pNumPathArrayElements,
+                                                                        UINT *pNumModeInfoArrayElements));
 } _VBOXDISPLAYWDDMAPICONTEXT;
 
@@ -1219,5 +1223,6 @@
 }
 
-static DWORD WINAPI vboxRrRunnerThread(void *pvUser)
+/** @todo r=bird: Only the CRT uses CreateThread for creating threading!! */
+static DWORD WINAPI vboxRrRunnerThread(void *pvUser) RT_NOTHROW_DEF
 {
     RT_NOREF(pvUser);
@@ -1250,10 +1255,13 @@
     if (pMon->hEvent)
     {
+        /** @todo r=bird: What kind of stupid nonsense is this?!?
+         *  Only the CRT uses CreateThread for creating threading!!
+         */
         pMon->hThread = CreateThread(NULL /* LPSECURITY_ATTRIBUTES lpThreadAttributes */,
                                               0 /* SIZE_T dwStackSize */,
-                                              vboxRrRunnerThread,
-                                              pMon,
-                                              0 /* DWORD dwCreationFlags */,
-                                              &pMon->idThread);
+                                     vboxRrRunnerThread,
+                                     pMon,
+                                     0 /* DWORD dwCreationFlags */,
+                                     &pMon->idThread);
         if (pMon->hThread)
         {
@@ -1261,9 +1269,6 @@
             if (dwResult == WAIT_OBJECT_0)
                 return S_OK;
-            else
-            {
-                Log(("WaitForSingleObject failed!"));
-                hr = E_FAIL;
-            }
+            Log(("WaitForSingleObject failed!"));
+            hr = E_FAIL;
         }
         else
Index: trunk/src/VBox/Additions/WINNT/VBoxTray/VBoxDispIf.h
===================================================================
--- trunk/src/VBox/Additions/WINNT/VBoxTray/VBoxDispIf.h	(revision 85065)
+++ trunk/src/VBox/Additions/WINNT/VBoxTray/VBoxDispIf.h	(revision 85121)
@@ -58,5 +58,6 @@
         struct
         {
-            LONG (WINAPI *pfnChangeDisplaySettingsEx)(LPCSTR lpszDeviceName, LPDEVMODE lpDevMode, HWND hwnd, DWORD dwflags, LPVOID lParam);
+            DECLCALLBACKMEMBER_EX(LONG, WINAPI, pfnChangeDisplaySettingsEx,(LPCSTR lpszDeviceName, LPDEVMODE lpDevMode,
+                                                                            HWND hwnd, DWORD dwflags, LPVOID lParam));
         } xpdm;
 #ifdef VBOX_WITH_WDDM
@@ -64,7 +65,9 @@
         {
             /* ChangeDisplaySettingsEx does not exist in NT. ResizeDisplayDevice uses the function. */
-            LONG (WINAPI *pfnChangeDisplaySettingsEx)(LPCTSTR lpszDeviceName, LPDEVMODE lpDevMode, HWND hwnd, DWORD dwflags, LPVOID lParam);
+            DECLCALLBACKMEMBER_EX(LONG, WINAPI, pfnChangeDisplaySettingsEx,(LPCTSTR lpszDeviceName, LPDEVMODE lpDevMode,
+                                                                            HWND hwnd, DWORD dwflags, LPVOID lParam));
             /* EnumDisplayDevices does not exist in NT. isVBoxDisplayDriverActive et al. are using these functions. */
-            BOOL (WINAPI *pfnEnumDisplayDevices)(IN LPCSTR lpDevice, IN DWORD iDevNum, OUT PDISPLAY_DEVICEA lpDisplayDevice, IN DWORD dwFlags);
+            DECLCALLBACKMEMBER_EX(BOOL, WINAPI, pfnEnumDisplayDevices,(IN LPCSTR lpDevice, IN DWORD iDevNum,
+                                                                       OUT PDISPLAY_DEVICEA lpDisplayDevice, IN DWORD dwFlags));
 
             VBOXDISPKMT_CALLBACKS KmtCallbacks;
Index: trunk/src/VBox/Additions/WINNT/VBoxTray/VBoxDisplay.cpp
===================================================================
--- trunk/src/VBox/Additions/WINNT/VBoxTray/VBoxDisplay.cpp	(revision 85065)
+++ trunk/src/VBox/Additions/WINNT/VBoxTray/VBoxDisplay.cpp	(revision 85121)
@@ -49,7 +49,9 @@
     BOOL fAnyX;
     /** ChangeDisplaySettingsEx does not exist in NT. ResizeDisplayDevice uses the function. */
-    LONG (WINAPI * pfnChangeDisplaySettingsEx)(LPCTSTR lpszDeviceName, LPDEVMODE lpDevMode, HWND hwnd, DWORD dwflags, LPVOID lParam);
+    DECLCALLBACKMEMBER_EX(LONG,WINAPI, pfnChangeDisplaySettingsEx,(LPCTSTR lpszDeviceName, LPDEVMODE lpDevMode, HWND hwnd,
+                                                                   DWORD dwflags, LPVOID lParam));
     /** EnumDisplayDevices does not exist in NT. isVBoxDisplayDriverActive et al. are using these functions. */
-    BOOL (WINAPI * pfnEnumDisplayDevices)(IN LPCSTR lpDevice, IN DWORD iDevNum, OUT PDISPLAY_DEVICEA lpDisplayDevice, IN DWORD dwFlags);
+    DECLCALLBACKMEMBER_EX(BOOL, WINAPI, pfnEnumDisplayDevices,(IN LPCSTR lpDevice, IN DWORD iDevNum,
+                                                               OUT PDISPLAY_DEVICEA lpDisplayDevice, IN DWORD dwFlags));
     /** Display driver interface, XPDM - WDDM abstraction see VBOXDISPIF** definitions above */
     VBOXDISPIF dispIf;
Index: trunk/src/VBox/Additions/WINNT/VBoxTray/VBoxDnD.cpp
===================================================================
--- trunk/src/VBox/Additions/WINNT/VBoxTray/VBoxDnD.cpp	(revision 85065)
+++ trunk/src/VBox/Additions/WINNT/VBoxTray/VBoxDnD.cpp	(revision 85121)
@@ -84,6 +84,6 @@
 *   Internal Functions                                                                                                           *
 *********************************************************************************************************************************/
-static LRESULT CALLBACK vboxDnDWndProcInstance(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam);
-static LRESULT CALLBACK vboxDnDWndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam);
+static LRESULT CALLBACK vboxDnDWndProcInstance(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam) RT_NOTHROW_PROTO;
+static LRESULT CALLBACK vboxDnDWndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam) RT_NOTHROW_PROTO;
 
 
@@ -199,6 +199,5 @@
  *                                  is using the thread.
  */
-/* static */
-int VBoxDnDWnd::Thread(RTTHREAD hThread, void *pvUser)
+/*static*/ DECLCALLBACK(int) VBoxDnDWnd::Thread(RTTHREAD hThread, void *pvUser)
 {
     AssertPtrReturn(pvUser, VERR_INVALID_POINTER);
@@ -251,14 +250,13 @@
         dwStyle |= WS_VISIBLE; /* Make the window visible. */
 #endif
-        pThis->hWnd =
-            CreateWindowEx(dwExStyle,
-                           VBOX_DND_WND_CLASS, VBOX_DND_WND_CLASS,
-                           dwStyle,
+        pThis->hWnd = CreateWindowEx(dwExStyle,
+                                     VBOX_DND_WND_CLASS, VBOX_DND_WND_CLASS,
+                                     dwStyle,
 #ifdef VBOX_DND_DEBUG_WND
-                           CW_USEDEFAULT, CW_USEDEFAULT, 200, 200, NULL, NULL,
+                                     CW_USEDEFAULT, CW_USEDEFAULT, 200, 200, NULL, NULL,
 #else
-                           -200, -200, 100, 100, NULL, NULL,
+                                     -200, -200, 100, 100, NULL, NULL,
 #endif
-                           hInstance, pThis /* lParm */);
+                                     hInstance, pThis /* lParm */);
         if (!pThis->hWnd)
         {
@@ -1625,6 +1623,5 @@
  * window instances.
  */
-static LRESULT CALLBACK vboxDnDWndProcInstance(HWND hWnd, UINT uMsg,
-                                               WPARAM wParam, LPARAM lParam)
+static LRESULT CALLBACK vboxDnDWndProcInstance(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam) RT_NOTHROW_DEF
 {
     LONG_PTR pUserData = GetWindowLongPtr(hWnd, GWLP_USERDATA);
@@ -1642,6 +1639,5 @@
  * proxy window instance.
  */
-static LRESULT CALLBACK vboxDnDWndProc(HWND hWnd, UINT uMsg,
-                                       WPARAM wParam, LPARAM lParam)
+static LRESULT CALLBACK vboxDnDWndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam) RT_NOTHROW_DEF
 {
     /* Note: WM_NCCREATE is not the first ever message which arrives, but
Index: trunk/src/VBox/Additions/WINNT/VBoxTray/VBoxDnD.h
===================================================================
--- trunk/src/VBox/Additions/WINNT/VBoxTray/VBoxDnD.h	(revision 85065)
+++ trunk/src/VBox/Additions/WINNT/VBoxTray/VBoxDnD.h	(revision 85121)
@@ -313,7 +313,6 @@
 public:
 
-    /** The window's thread for the native message pump and
-     *  OLE context. */
-    static int Thread(RTTHREAD hThread, void *pvUser);
+    /** The window's thread for the native message pump and OLE context. */
+    static DECLCALLBACK(int) Thread(RTTHREAD hThread, void *pvUser);
 
 public:
Index: trunk/src/VBox/Additions/WINNT/VBoxTray/VBoxSeamless.cpp
===================================================================
--- trunk/src/VBox/Additions/WINNT/VBoxTray/VBoxSeamless.cpp	(revision 85065)
+++ trunk/src/VBox/Additions/WINNT/VBoxTray/VBoxSeamless.cpp	(revision 85121)
@@ -195,5 +195,5 @@
 }
 
-BOOL CALLBACK VBoxEnumFunc(HWND hwnd, LPARAM lParam)
+BOOL CALLBACK VBoxEnumFunc(HWND hwnd, LPARAM lParam) RT_NOTHROW_DEF
 {
     PVBOX_ENUM_PARAM    lpParam = (PVBOX_ENUM_PARAM)lParam;
Index: trunk/src/VBox/Additions/WINNT/VBoxTray/VBoxTray.cpp
===================================================================
--- trunk/src/VBox/Additions/WINNT/VBoxTray/VBoxTray.cpp	(revision 85065)
+++ trunk/src/VBox/Additions/WINNT/VBoxTray/VBoxTray.cpp	(revision 85121)
@@ -497,5 +497,5 @@
  * @param   pfnLog
  */
-static void vboxTrayLogHeaderFooter(PRTLOGGER pLoggerRelease, RTLOGPHASE enmPhase, PFNRTLOGPHASEMSG pfnLog)
+static DECLCALLBACK(void) vboxTrayLogHeaderFooter(PRTLOGGER pLoggerRelease, RTLOGPHASE enmPhase, PFNRTLOGPHASEMSG pfnLog)
 {
     /* Some introductory information. */
@@ -726,5 +726,6 @@
             *(void **)&pfnConvertStringSecurityDescriptorToSecurityDescriptorA =
                 RTLdrGetSystemSymbol("advapi32.dll", "ConvertStringSecurityDescriptorToSecurityDescriptorA");
-            Log(("pfnConvertStringSecurityDescriptorToSecurityDescriptorA = %x\n", pfnConvertStringSecurityDescriptorToSecurityDescriptorA));
+            Log(("pfnConvertStringSecurityDescriptorToSecurityDescriptorA = %p\n",
+                 RT_CB_LOG_CAST(pfnConvertStringSecurityDescriptorToSecurityDescriptorA)));
             if (pfnConvertStringSecurityDescriptorToSecurityDescriptorA)
             {
@@ -1675,5 +1676,5 @@
 struct VBOXCAPS;
 
-typedef DECLCALLBACKPTR(void, PFNVBOXCAPS_ENTRY_ON_ENABLE)(struct VBOXCAPS *pConsole, struct VBOXCAPS_ENTRY *pCap, BOOL fEnabled);
+typedef DECLCALLBACKPTR(void, PFNVBOXCAPS_ENTRY_ON_ENABLE,(struct VBOXCAPS *pConsole, struct VBOXCAPS_ENTRY *pCap, BOOL fEnabled));
 
 typedef struct VBOXCAPS_ENTRY
Index: trunk/src/VBox/Additions/WINNT/VBoxTray/VBoxTray.h
===================================================================
--- trunk/src/VBox/Additions/WINNT/VBoxTray/VBoxTray.h	(revision 85065)
+++ trunk/src/VBox/Additions/WINNT/VBoxTray/VBoxTray.h	(revision 85121)
@@ -98,5 +98,5 @@
      * @todo r=bird: The pEnv type is WRONG!  Please check all your const pointers.
      */
-    DECLCALLBACKMEMBER(int,  pfnInit)   (const PVBOXSERVICEENV pEnv, void **ppInstance);
+    DECLCALLBACKMEMBER(int, pfnInit,(const PVBOXSERVICEENV pEnv, void **ppInstance));
 
     /** Called from the worker thread.
@@ -108,10 +108,10 @@
      *                          before and after blocking.
      */
-    DECLCALLBACKMEMBER(int,  pfnWorker) (void *pInstance, bool volatile *pfShutdown);
+    DECLCALLBACKMEMBER(int, pfnWorker,(void *pInstance, bool volatile *pfShutdown));
 
     /**
      * Stops a service.
      */
-    DECLCALLBACKMEMBER(int,  pfnStop)   (void *pInstance);
+    DECLCALLBACKMEMBER(int, pfnStop,(void *pInstance));
 
     /**
@@ -120,5 +120,5 @@
      * @remarks This may be called even if pfnInit hasn't been called!
      */
-    DECLCALLBACKMEMBER(void, pfnDestroy)(void *pInstance);
+    DECLCALLBACKMEMBER(void, pfnDestroy,(void *pInstance));
 } VBOXSERVICEDESC, *PVBOXSERVICEDESC;
 
Index: trunk/src/VBox/Additions/WINNT/tools/VBoxCertUtil.cpp
===================================================================
--- trunk/src/VBox/Additions/WINNT/tools/VBoxCertUtil.cpp	(revision 85065)
+++ trunk/src/VBox/Additions/WINNT/tools/VBoxCertUtil.cpp	(revision 85121)
@@ -404,5 +404,5 @@
  */
 static BOOL WINAPI displaySystemStoreCallback(const void *pvSystemStore, DWORD dwFlags, PCERT_SYSTEM_STORE_INFO pStoreInfo,
-                                              void *pvReserved, void *pvArg)
+                                              void *pvReserved, void *pvArg) RT_NOTHROW_DEF
 {
     RT_NOREF(pvArg);
@@ -482,5 +482,6 @@
  * Worker for cmdDisplayAll.
  */
-static BOOL WINAPI displaySystemStoreLocation(LPCWSTR pwszStoreLocation, DWORD dwFlags, void *pvReserved, void *pvArg)
+static BOOL WINAPI
+displaySystemStoreLocation(LPCWSTR pwszStoreLocation, DWORD dwFlags, void *pvReserved, void *pvArg) RT_NOTHROW_DEF
 {
     NOREF(pvReserved); NOREF(pvArg);
Index: trunk/src/VBox/Additions/common/VBoxControl/VBoxControl.cpp
===================================================================
--- trunk/src/VBox/Additions/common/VBoxControl/VBoxControl.cpp	(revision 85065)
+++ trunk/src/VBox/Additions/common/VBoxControl/VBoxControl.cpp	(revision 85121)
@@ -578,5 +578,5 @@
             paDeviceModes[i].dmBitsPerPel = BitsPerPixel;
         }
-        Log(("calling pfnChangeDisplaySettingsEx %p\n", g_pfnChangeDisplaySettingsExA));
+        Log(("calling pfnChangeDisplaySettingsEx %p\n", RT_CB_LOG_CAST(g_pfnChangeDisplaySettingsExA)));
         g_pfnChangeDisplaySettingsExA((LPSTR)paDisplayDevices[i].DeviceName,
                                       &paDeviceModes[i], NULL, CDS_NORESET | CDS_UPDATEREGISTRY, NULL);
@@ -622,5 +622,6 @@
 
         Log(("VBoxService: g_pfnChangeDisplaySettingsExA=%p g_pfnChangeDisplaySettingsA=%p g_pfnEnumDisplaySettingsA=%p\n",
-             g_pfnChangeDisplaySettingsExA, g_pfnChangeDisplaySettingsA, g_pfnEnumDisplaySettingsA));
+             RT_CB_LOG_CAST(g_pfnChangeDisplaySettingsExA), RT_CB_LOG_CAST(g_pfnChangeDisplaySettingsA),
+             RT_CB_LOG_CAST(g_pfnEnumDisplaySettingsA)));
 
         if (   g_pfnChangeDisplaySettingsExA
@@ -2023,5 +2024,5 @@
 
 /** command handler type */
-typedef DECLCALLBACK(RTEXITCODE) FNVBOXCTRLCMDHANDLER(int argc, char *argv[]);
+typedef DECLCALLBACKTYPE(RTEXITCODE, FNVBOXCTRLCMDHANDLER,(int argc, char *argv[]));
 typedef FNVBOXCTRLCMDHANDLER *PFNVBOXCTRLCMDHANDLER;
 
Index: trunk/src/VBox/Additions/common/VBoxService/VBoxService-win.cpp
===================================================================
--- trunk/src/VBox/Additions/common/VBoxService/VBoxService-win.cpp	(revision 85065)
+++ trunk/src/VBox/Additions/common/VBoxService/VBoxService-win.cpp	(revision 85121)
@@ -589,5 +589,5 @@
  * Callback registered by RegisterServiceCtrlHandler on NT4 and earlier.
  */
-static VOID WINAPI vgsvcWinCtrlHandlerNt4(DWORD dwControl)
+static VOID WINAPI vgsvcWinCtrlHandlerNt4(DWORD dwControl) RT_NOTHROW_DEF
 {
     VGSvcVerbose(2, "Control handler (NT4): dwControl=%#x\n", dwControl);
@@ -599,5 +599,6 @@
  * Callback registered by RegisterServiceCtrlHandler on NT5 and later.
  */
-static DWORD WINAPI vgsvcWinCtrlHandlerNt5Plus(DWORD dwControl, DWORD dwEventType, LPVOID lpEventData, LPVOID lpContext)
+static DWORD WINAPI
+vgsvcWinCtrlHandlerNt5Plus(DWORD dwControl, DWORD dwEventType, LPVOID lpEventData, LPVOID lpContext) RT_NOTHROW_DEF
 {
     VGSvcVerbose(2, "Control handler: dwControl=%#x, dwEventType=%#x\n", dwControl, dwEventType);
Index: trunk/src/VBox/Additions/common/VBoxService/VBoxService.cpp
===================================================================
--- trunk/src/VBox/Additions/common/VBoxService/VBoxService.cpp	(revision 85065)
+++ trunk/src/VBox/Additions/common/VBoxService/VBoxService.cpp	(revision 85121)
@@ -617,5 +617,5 @@
  *          other thread in the process.
  */
-static BOOL WINAPI vgsvcWinConsoleControlHandler(DWORD dwCtrlType)
+static BOOL WINAPI vgsvcWinConsoleControlHandler(DWORD dwCtrlType) RT_NOTHROW_DEF
 {
     int rc = VINF_SUCCESS;
@@ -1231,5 +1231,5 @@
 # ifndef RT_OS_NT4 /** @todo r=bird: What's RT_OS_NT4??? */
         /* Install console control handler. */
-        if (!SetConsoleCtrlHandler((PHANDLER_ROUTINE)vgsvcWinConsoleControlHandler, TRUE /* Add handler */))
+        if (!SetConsoleCtrlHandler(vgsvcWinConsoleControlHandler, TRUE /* Add handler */))
         {
             VGSvcError("Unable to add console control handler, error=%ld\n", GetLastError());
Index: trunk/src/VBox/Additions/common/VBoxService/VBoxServiceInternal.h
===================================================================
--- trunk/src/VBox/Additions/common/VBoxService/VBoxServiceInternal.h	(revision 85065)
+++ trunk/src/VBox/Additions/common/VBoxService/VBoxServiceInternal.h	(revision 85121)
@@ -54,5 +54,5 @@
      * @returns VBox status code.
      */
-    DECLCALLBACKMEMBER(int, pfnPreInit)(void);
+    DECLCALLBACKMEMBER(int, pfnPreInit,(void));
 
     /**
@@ -66,5 +66,5 @@
      * @param   pi          The argument vector index. Update if any value(s) are eaten.
      */
-    DECLCALLBACKMEMBER(int, pfnOption)(const char **ppszShort, int argc, char **argv, int *pi);
+    DECLCALLBACKMEMBER(int, pfnOption,(const char **ppszShort, int argc, char **argv, int *pi));
 
     /**
@@ -72,5 +72,5 @@
      * @returns VBox status code.
      */
-    DECLCALLBACKMEMBER(int, pfnInit)(void);
+    DECLCALLBACKMEMBER(int, pfnInit,(void));
 
     /** Called from the worker thread.
@@ -81,10 +81,10 @@
      *                          before and after blocking.
      */
-    DECLCALLBACKMEMBER(int, pfnWorker)(bool volatile *pfShutdown);
+    DECLCALLBACKMEMBER(int, pfnWorker,(bool volatile *pfShutdown));
 
     /**
      * Stops a service.
      */
-    DECLCALLBACKMEMBER(void, pfnStop)(void);
+    DECLCALLBACKMEMBER(void, pfnStop,(void));
 
     /**
@@ -93,5 +93,5 @@
      * @remarks This may be called even if pfnInit hasn't been called!
      */
-    DECLCALLBACKMEMBER(void, pfnTerm)(void);
+    DECLCALLBACKMEMBER(void, pfnTerm,(void));
 } VBOXSERVICE;
 /** Pointer to a VBOXSERVICE. */
Index: trunk/src/VBox/Additions/common/VBoxService/VBoxServiceStats.cpp
===================================================================
--- trunk/src/VBox/Additions/common/VBoxService/VBoxServiceStats.cpp	(revision 85065)
+++ trunk/src/VBox/Additions/common/VBoxService/VBoxServiceStats.cpp	(revision 85121)
@@ -68,5 +68,5 @@
 *   Structures and Typedefs                                                                                                      *
 *********************************************************************************************************************************/
-typedef struct _VBOXSTATSCONTEXT
+typedef struct VBOXSTATSCONTEXT
 {
     RTMSINTERVAL    cMsStatInterval;
@@ -78,8 +78,9 @@
 
 #ifdef RT_OS_WINDOWS
-    NTSTATUS (WINAPI *pfnNtQuerySystemInformation)(SYSTEM_INFORMATION_CLASS SystemInformationClass, PVOID SystemInformation,
-                                                   ULONG SystemInformationLength, PULONG ReturnLength);
-    void     (WINAPI *pfnGlobalMemoryStatusEx)(LPMEMORYSTATUSEX lpBuffer);
-    BOOL     (WINAPI *pfnGetPerformanceInfo)(PPERFORMANCE_INFORMATION pPerformanceInformation, DWORD cb);
+    DECLCALLBACKMEMBER_EX(NTSTATUS, WINAPI, pfnNtQuerySystemInformation,(SYSTEM_INFORMATION_CLASS SystemInformationClass,
+                                                                         PVOID SystemInformation, ULONG SystemInformationLength,
+                                                                         PULONG ReturnLength));
+    DECLCALLBACKMEMBER_EX(void,     WINAPI, pfnGlobalMemoryStatusEx,(LPMEMORYSTATUSEX lpBuffer));
+    DECLCALLBACKMEMBER_EX(BOOL,     WINAPI, pfnGetPerformanceInfo,(PPERFORMANCE_INFORMATION pPerformanceInformation, DWORD cb));
 #endif
 } VBOXSTATSCONTEXT;
Index: trunk/src/VBox/Additions/darwin/VBoxClient/VBoxClientInternal.h
===================================================================
--- trunk/src/VBox/Additions/darwin/VBoxClient/VBoxClientInternal.h	(revision 85065)
+++ trunk/src/VBox/Additions/darwin/VBoxClient/VBoxClientInternal.h	(revision 85121)
@@ -35,5 +35,5 @@
      * @returns VBox status code.
      */
-    DECLCALLBACKMEMBER(int, pfnStart)(void);
+    DECLCALLBACKMEMBER(int, pfnStart,(void));
 
     /**
@@ -41,5 +41,5 @@
      * @returns VBox status code.
      */
-    DECLCALLBACKMEMBER(int, pfnStop)(void);
+    DECLCALLBACKMEMBER(int, pfnStop,(void));
 
 } VBOXCLIENTSERVICE;
Index: trunk/src/VBox/Additions/x11/VBoxClient/seamless-x11.cpp
===================================================================
--- trunk/src/VBox/Additions/x11/VBoxClient/seamless-x11.cpp	(revision 85065)
+++ trunk/src/VBox/Additions/x11/VBoxClient/seamless-x11.cpp	(revision 85121)
@@ -430,6 +430,5 @@
 RTVEC_DECL(RectList, RTRECT)
 
-DECLCALLBACK(int) getRectsCallback(VBoxGuestWinInfo *pInfo,
-                                   struct RectList *pRects)
+static DECLCALLBACK(int) getRectsCallback(VBoxGuestWinInfo *pInfo, struct RectList *pRects)
 {
     if (pInfo->mhasShape)
@@ -485,6 +484,5 @@
             return rc;
     }
-    mGuestWindows.doWithAll((PVBOXGUESTWINCALLBACK)getRectsCallback,
-                            &rects);
+    mGuestWindows.doWithAll((PFNVBOXGUESTWINCALLBACK)getRectsCallback, &rects);
     if (mpRects)
         RTMemFree(mpRects);
Index: trunk/src/VBox/Additions/x11/VBoxClient/seamless-x11.h
===================================================================
--- trunk/src/VBox/Additions/x11/VBoxClient/seamless-x11.h	(revision 85065)
+++ trunk/src/VBox/Additions/x11/VBoxClient/seamless-x11.h	(revision 85121)
@@ -49,5 +49,6 @@
 /** Structure containing information about a guest window's position and visible area.
     Used inside of VBoxGuestWindowList. */
-struct VBoxGuestWinInfo {
+struct VBoxGuestWinInfo
+{
 public:
     /** Header structure for insertion into an AVL tree */
@@ -66,8 +67,8 @@
     XRectangle *mpRects;
     /** Constructor. */
-    VBoxGuestWinInfo(bool hasShape, int x, int y, int w, int h, int cRects,
-                     XRectangle *pRects)
-            : mhasShape(hasShape), mX(x), mY(y), mWidth(w), mHeight(h),
-              mcRects(cRects), mpRects(pRects) {}
+    VBoxGuestWinInfo(bool hasShape, int x, int y, int w, int h, int cRects, XRectangle *pRects)
+        : mhasShape(hasShape), mX(x), mY(y), mWidth(w), mHeight(h)
+        , mcRects(cRects), mpRects(pRects)
+    {}
 
     /** Destructor */
@@ -83,14 +84,14 @@
 private:
     // We don't want a copy constructor or assignment operator
-    VBoxGuestWinInfo(const VBoxGuestWinInfo&);
-    VBoxGuestWinInfo& operator=(const VBoxGuestWinInfo&);
+    VBoxGuestWinInfo(const VBoxGuestWinInfo &);
+    VBoxGuestWinInfo &operator=(const VBoxGuestWinInfo &);
 };
 
 /** Callback type used for "DoWithAll" calls */
-typedef DECLCALLBACK(int) VBOXGUESTWINCALLBACK(VBoxGuestWinInfo *, void *);
+typedef DECLCALLBACKTYPE(int, FNVBOXGUESTWINCALLBACK,(VBoxGuestWinInfo *, void *));
 /** Pointer to VBOXGUESTWINCALLBACK */
-typedef VBOXGUESTWINCALLBACK *PVBOXGUESTWINCALLBACK;
-
-DECLCALLBACK(int) inline VBoxGuestWinCleanup(VBoxGuestWinInfo *pInfo, void *)
+typedef FNVBOXGUESTWINCALLBACK *PFNVBOXGUESTWINCALLBACK;
+
+static inline DECLCALLBACK(int) VBoxGuestWinCleanup(VBoxGuestWinInfo *pInfo, void *)
 {
     delete pInfo;
@@ -136,13 +137,12 @@
     }
 
-    void detachAll(PVBOXGUESTWINCALLBACK pCallback, void *pvParam)
-    {
-        RTAvlU32Destroy(&mWindows, (PAVLU32CALLBACK)pCallback, pvParam);
-    }
-
-    int doWithAll(PVBOXGUESTWINCALLBACK pCallback, void *pvParam)
-    {
-        return RTAvlU32DoWithAll(&mWindows, 1, (PAVLU32CALLBACK)pCallback,
-                                 pvParam);
+    void detachAll(PFNVBOXGUESTWINCALLBACK pfnCallback, void *pvParam)
+    {
+        RTAvlU32Destroy(&mWindows, (PAVLU32CALLBACK)pfnCallback, pvParam);
+    }
+
+    int doWithAll(PFNVBOXGUESTWINCALLBACK pfnCallback, void *pvParam)
+    {
+        return RTAvlU32DoWithAll(&mWindows, 1, (PAVLU32CALLBACK)pfnCallback, pvParam);
     }
 
@@ -152,6 +152,5 @@
         LogRelFlowFunc(("hWin=%lu, isMapped=%RTbool, x=%d, y=%d, w=%d, h=%d, cRects=%d\n",
                         (unsigned long) hWin, isMapped, x, y, w, h, cRects));
-        VBoxGuestWinInfo *pInfo = new VBoxGuestWinInfo(isMapped, x, y, w, h, cRects,
-                                                       pRects);
+        VBoxGuestWinInfo *pInfo = new VBoxGuestWinInfo(isMapped, x, y, w, h, cRects, pRects);
         pInfo->Core.Key = hWin;
         LogRelFlowFuncLeave();
Index: trunk/src/VBox/Additions/x11/vboxvideo/VBoxVideoIPRT.h
===================================================================
--- trunk/src/VBox/Additions/x11/vboxvideo/VBoxVideoIPRT.h	(revision 85065)
+++ trunk/src/VBox/Additions/x11/vboxvideo/VBoxVideoIPRT.h	(revision 85121)
@@ -110,5 +110,6 @@
 
 #define DECLCALLBACK(type) type
-#define DECLCALLBACKMEMBER(type, name) type (* name)
+#define DECLCALLBACKTYPE(type, name, args) type name args
+#define DECLCALLBACKMEMB32(type, name, args) type (* name) args
 #if __GNUC__ >= 4
 # define DECLHIDDEN(type) __attribute__((visibility("hidden"))) type
