I have resolved this by disabling STRICT type checking. I.e. remove
-DNO_STRICT from Makefile.
Blair Sutton wrote:
Whilst trying to compile AxWindow module from Win32:GUI 1.05 on Visual
Studio 2005 I get the following error:-
C:\Program Files\Microsoft Visual Studio
8\VC\ATLMFC\INCLUDE\atlwin.h(3281) : error C2440: 'return' : cannot
convert from 'INT_PTR (__stdcall *)(HWND,
UINT,WPARAM,LPARAM)' to 'DLGPROC'
This conversion requires a reinterpret_cast, a C-style cast or
function-style cast
C:\Program Files\Microsoft Visual Studio
8\VC\ATLMFC\INCLUDE\atlwin.h(3280) : while compiling class template
member function 'DLGPROC
ATL::CDialogImplBaseT<TBase>::GetDialogProc(void)'
with
[
TBase=ATL::CWindow
]
C:\Program Files\Microsoft Visual Studio
8\VC\ATLMFC\INCLUDE\atlwin.h(3819) : see reference to class template
instantiation 'ATL::CDialogImplBaseT<TBase>' being compiled
with
[
TBase=ATL::CWindow
]
C:\Program Files\Microsoft Visual Studio
8\VC\ATLMFC\INCLUDE\atlwin.h(3851) : see reference to class template
instantiation 'ATL::CSimpleDialog<t_wDlgTemplateID,t_bCenter>' being
compiled
NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio
8\VC\BIN\cl.EXE"' : return code '0x2'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio
8\VC\BIN\nmake.exe"' : return code '0x2'
Stop.
I have tried to search for the cause of the problem but to no avail.
Although my C++ is pretty good I cannot easily get my head around
where template is being instantiated in the XS code.
Any ideas?
Blair