coin3d / coin

Coin3D core library
BSD 3-Clause "New" or "Revised" License
286 stars 108 forks source link

coin3d-sowin -compile error:SoWin.cpp:309:20: error: cast from 'LPSTR {aka char*}' to WORD {aka short unsigned int}' loses precision #112

Closed VolkerEnderlein closed 6 years ago

VolkerEnderlein commented 8 years ago

Original report by bhuvaneshwaran (Bitbucket: waranam, ).


hello, iam trying to compile sowin with built coin3d-3.1.3 in windows 8pro AMD64 bit. Sowin build halts with error: any help is appreciated. Also please list out the changes required in the sowin codes to run in 64 bit platform with mingw. SoWin.cpp:309:20: error: cast from 'LPSTR {aka char*}' to WORD {aka short unsigned int}' loses precision. compiler:tdm-gcc-64 mingw32 output log is:

SoWinP::onDestroy(HWND window, UINT message, WPARAM

wparam, LPARAM lparam)

    ^

SoWin.cpp:827:21: warning: unused parameter 'window' [-

Wunused-parameter] SoWinP::onQuit(HWND window, UINT message, WPARAM wparam,

LPARAM lparam) ^ SoWin.cpp:827:34: warning: unused parameter 'message' [-

Wunused-parameter] SoWinP::onQuit(HWND window, UINT message, WPARAM wparam,

LPARAM lparam) ^ SoWin.cpp:827:50: warning: unused parameter 'wparam' [-

Wunused-parameter] SoWinP::onQuit(HWND window, UINT message, WPARAM wparam,

LPARAM lparam) ^ SoWin.cpp:827:65: warning: unused parameter 'lparam' [-

Wunused-parameter] SoWinP::onQuit(HWND window, UINT message, WPARAM wparam,

LPARAM lparam)

 ^

SoWin.cpp:838:35: warning: unused parameter 'cbdata' [-

Wunused-parameter] SoGuiP::sensorQueueChanged(void * cbdata) ^ make[8]: *** [SoWin.lo] Error 1 make[8]: Leaving directory

`/e/Sowin/Sowin/src/Inventor/Win' make[7]: *** [install-recursive] Error 1 make[7]: Leaving directory

`/e/Sowin/Sowin/src/Inventor/Win' make[6]: *** [install] Error 2 make[6]: Leaving directory

/e/Sowin/Sowin/src/Inventor/Win' make[5]: *** [install-recursive] Error 1 make[5]: Leaving directory/e/Sowin/Sowin/src/Inventor' make[4]: [install] Error 2 make[4]: Leaving directory `/e/Sowin/Sowin/src/Inventor' make[3]: [install-recursive] Error 1 make[3]: Leaving directory /e/Sowin/Sowin/src' make[2]: *** [install] Error 2 make[2]: Leaving directory/e/Sowin/Sowin/src' make[1]: [install-recursive] Error 1 make[1]: Leaving directory `/e/Sowin/Sowin' make: [install] Error 2

ASUS X555L@ASUS-BHUVANESH /e/Sowin/Sowin $ make install make install-recursive make[1]: Entering directory /e/Sowin/Sowin' Making install in . make[2]: Entering directory/e/Sowin/Sowin' make[3]: Entering directory `/e/Sowin/Sowin' test -z "/usr/local/bin" || mkdir -p -- . "/usr/local/bin" /bin/install -c 'sowin-config' '/usr/local/bin/sowin-

config' test -z "/usr/local/share/Coin/conf" || mkdir -p -- .

"/usr/local/share/Coin/con f" /bin/install -c -m 644 'sowin-default.cfg'

'/usr/local/share/Coin/conf/sowin-de fault.cfg' test -z "/usr/local/share/aclocal" || mkdir -p -- .

"/usr/local/share/aclocal" /bin/install -c -m 644 'cfg/sowin.m4'

'/usr/local/share/aclocal/sowin.m4' test -z "/usr/local/lib/pkgconfig" || mkdir -p -- .

"/usr/local/lib/pkgconfig" /bin/install -c -m 644 'SoWin.pc'

'/usr/local/lib/pkgconfig/SoWin.pc' make[3]: Leaving directory /e/Sowin/Sowin' make[2]: Leaving directory/e/Sowin/Sowin' Making install in src make[2]: Entering directory /e/Sowin/Sowin/src' make install-recursive make[3]: Entering directory/e/Sowin/Sowin/src' Making install in . make[4]: Entering directory /e/Sowin/Sowin/src' make[5]: Entering directory/e/Sowin/Sowin/src' make[5]: Nothing to be done for install-exec-am'. test -z "" || mkdir -p -- . "" make[5]: Leaving directory/e/Sowin/Sowin/src' make[4]: Leaving directory /e/Sowin/Sowin/src' Making install in Inventor make[4]: Entering directory/e/Sowin/Sowin/src/Inventor' make install-recursive make[5]: Entering directory `/e/Sowin/Sowin/src/Inventor' Making install in Win make[6]: Entering directory

`/e/Sowin/Sowin/src/Inventor/Win' make install-recursive make[7]: Entering directory

`/e/Sowin/Sowin/src/Inventor/Win' Making install in devices make[8]: Entering directory

`/e/Sowin/Sowin/src/Inventor/Win/devices' make install-am make[9]: Entering directory

`/e/Sowin/Sowin/src/Inventor/Win/devices' make[10]: Entering directory

/e/Sowin/Sowin/src/Inventor/Win/devices' make[10]: Nothing to be done forinstall-exec-am'. /bin/sh ../../../../cfg/mkinstalldirs

/usr/local/include/Inventor/Win/devices /bin/sh ../../../../cfg/mkinstalldirs

/usr/local/include/Inventor/Win/devices make[10]: Leaving directory

`/e/Sowin/Sowin/src/Inventor/Win/devices' make[9]: Leaving directory

`/e/Sowin/Sowin/src/Inventor/Win/devices' make[8]: Leaving directory

`/e/Sowin/Sowin/src/Inventor/Win/devices' Making install in editors make[8]: Entering directory

`/e/Sowin/Sowin/src/Inventor/Win/editors' make install-am make[9]: Entering directory

`/e/Sowin/Sowin/src/Inventor/Win/editors' make[10]: Entering directory

/e/Sowin/Sowin/src/Inventor/Win/editors' make[10]: Nothing to be done forinstall-exec-am'. test -z "/usr/local/include/Inventor/Win/editors" || mkdir

-p -- . "/usr/local/i nclude/Inventor/Win/editors" test -z "/usr/local/include/Inventor/Win/editors" || mkdir

-p -- . "/usr/local/i nclude/Inventor/Win/editors" /bin/install -c -m 644 'SoWinColorEditor.h'

'/usr/local/include/Inventor/Win/ed itors/SoWinColorEditor.h' /bin/install -c -m 644 'SoWinMaterialEditor.h'

'/usr/local/include/Inventor/Win /editors/SoWinMaterialEditor.h' make[10]: Leaving directory

`/e/Sowin/Sowin/src/Inventor/Win/editors' make[9]: Leaving directory

`/e/Sowin/Sowin/src/Inventor/Win/editors' make[8]: Leaving directory

`/e/Sowin/Sowin/src/Inventor/Win/editors' Making install in engines make[8]: Entering directory

`/e/Sowin/Sowin/src/Inventor/Win/engines' make install-am make[9]: Entering directory

`/e/Sowin/Sowin/src/Inventor/Win/engines' make[10]: Entering directory

/e/Sowin/Sowin/src/Inventor/Win/engines' make[10]: Nothing to be done forinstall-exec-am'. test -z "/usr/local/include/Inventor/Win/engines" || mkdir

-p -- . "/usr/local/i nclude/Inventor/Win/engines" make[10]: Leaving directory

`/e/Sowin/Sowin/src/Inventor/Win/engines' make[9]: Leaving directory

`/e/Sowin/Sowin/src/Inventor/Win/engines' make[8]: Leaving directory

`/e/Sowin/Sowin/src/Inventor/Win/engines' Making install in nodes make[8]: Entering directory

`/e/Sowin/Sowin/src/Inventor/Win/nodes' make install-am make[9]: Entering directory

`/e/Sowin/Sowin/src/Inventor/Win/nodes' make[10]: Entering directory

/e/Sowin/Sowin/src/Inventor/Win/nodes' make[10]: Nothing to be done forinstall-exec-am'. test -z "/usr/local/include/Inventor/Win/nodes" || mkdir -p

-- . "/usr/local/inc lude/Inventor/Win/nodes" /bin/install -c -m 644 'SoGuiColorEditor.h'

'/usr/local/include/Inventor/Win/no des/SoGuiColorEditor.h' /bin/install -c -m 644 'SoGuiMaterialEditor.h'

'/usr/local/include/Inventor/Win /nodes/SoGuiMaterialEditor.h' make[10]: Leaving directory

`/e/Sowin/Sowin/src/Inventor/Win/nodes' make[9]: Leaving directory

`/e/Sowin/Sowin/src/Inventor/Win/nodes' make[8]: Leaving directory

`/e/Sowin/Sowin/src/Inventor/Win/nodes' Making install in viewers make[8]: Entering directory

`/e/Sowin/Sowin/src/Inventor/Win/viewers' make install-am make[9]: Entering directory

`/e/Sowin/Sowin/src/Inventor/Win/viewers' make[10]: Entering directory

/e/Sowin/Sowin/src/Inventor/Win/viewers' make[10]: Nothing to be done forinstall-exec-am'. /bin/sh ../../../../cfg/mkinstalldirs

/usr/local/include/Inventor/Win/viewers /bin/sh ../../../../cfg/mkinstalldirs

/usr/local/include/Inventor/Win/viewers make[10]: Leaving directory

`/e/Sowin/Sowin/src/Inventor/Win/viewers' make[9]: Leaving directory

`/e/Sowin/Sowin/src/Inventor/Win/viewers' make[8]: Leaving directory

`/e/Sowin/Sowin/src/Inventor/Win/viewers' Making install in widgets make[8]: Entering directory

`/e/Sowin/Sowin/src/Inventor/Win/widgets' make install-am make[9]: Entering directory

`/e/Sowin/Sowin/src/Inventor/Win/widgets' make[10]: Entering directory

/e/Sowin/Sowin/src/Inventor/Win/widgets' make[10]: Nothing to be done forinstall-exec-am'. /bin/sh ../../../../cfg/mkinstalldirs

/usr/local/include/Inventor/Win/widgets /bin/sh ../../../../cfg/mkinstalldirs

/usr/local/include/Inventor/Win/widgets make[10]: Leaving directory

`/e/Sowin/Sowin/src/Inventor/Win/widgets' make[9]: Leaving directory

`/e/Sowin/Sowin/src/Inventor/Win/widgets' make[8]: Leaving directory

`/e/Sowin/Sowin/src/Inventor/Win/widgets' make[8]: Entering directory

`/e/Sowin/Sowin/src/Inventor/Win' if /bin/sh ../../../libtool --mode=compile g++ -

DHAVE_CONFIG_H -I../../../src -I ../../../data -I../../../src -DSOWIN_MAKE_DLL -

DSOWIN_DEBUG=1 -DSOWIN_INTERNAL -I/usr/local/include -I/usr/local/include/Inventor/annex

-DCOIN_NOT_DLL -g -O2 -W -Wall -Wno-unused -Wno-multichar -Woverloaded-virtual

-MT SoWin.lo -MD -MP - MF ".deps/SoWin.Tpo" -c -o SoWin.lo SoWin.cpp; \ then mv -f ".deps/SoWin.Tpo" ".deps/SoWin.Plo";

else rm -f ".deps/SoWin. Tpo"; exit 1; fi g++ -DHAVE_CONFIG_H -I../../../src -I../../../data -

I../../../src -DSOWINMAKE DLL -DSOWIN_DEBUG=1 -DSOWIN_INTERNAL -I/usr/local/include

-I/usr/local/include/I nventor/annex -DCOIN_NOT_DLL -g -O2 -W -Wall -Wno-unused -

Wno-multichar -Woverlo aded-virtual -MT SoWin.lo -MD -MP -MF .deps/SoWin.Tpo -c

SoWin.cpp -DDLL_EXPORT -DPIC -o .libs/SoWin.o SoWin.cpp:237:38: error: expected identifier before '('

token (long long

int)dwtime); ^ SoWin.cpp:237:53: error: expected ',' or '...' before

'dwtime' (long long

int)dwtime); ^ SoWin.cpp:243:38: error: expected identifier before '('

token (long long

int)dwtime); ^ SoWin.cpp:243:53: error: expected ',' or '...' before

'dwtime' (long long

int)dwtime); ^ SoWin.cpp:249:37: error: expected identifier before '('

token (long long

int)dwtime); ^ SoWin.cpp:249:52: error: expected ',' or '...' before

'dwtime' (long long

int)dwtime); ^ In file included from c:/TDM-GCC-64/x86_64-w64-

mingw32/include/windows.h:72:0, from

../../../src/Inventor/Win/Win32API.h:51, from SoWin.cpp:209: SoWin.cpp: In static member function 'static HWND__*

SoWin::init(int&, char*, c onst char, const char)': SoWin.cpp:309:20: error: cast from 'LPSTR {aka char}' to

'WORD {aka short unsigned int}' loses precision [-fpermissive] LPCTSTR icon = MAKEINTRESOURCE(IDI_APPLICATION); ^ SoWin.cpp:337:32: warning: passing NULL to non-pointer

argument 1 of 'HWND_* Wi n32::CreateWindowEx(DWORD, LPCTSTR, LPCTSTR, DWORD, int,

int, int, int, HWND, H MENU, HANDLE, LPVOID)' [-Wconversion-null] NULL); ^ SoWin.cpp: At global scope: SoWin.cpp:299:19: warning: unused parameter 'argc' [-

Wunused-parameter] SoWin::init(int & argc, char ** argv, ^ SoWin.cpp:299:33: warning: unused parameter 'argv' [-

Wunused-parameter] SoWin::init(int & argc, char ** argv, ^ SoWin.cpp: In static member function 'static bool

SoWinP::InitRawDevices()': SoWin.cpp:600:88: warning: comparison between signed and

unsigned integer expres sions [-Wsign-compare] if (GetRawInputDeviceList(rawInputDeviceList, &nDevices,

sizeof(RAWINPUTDEVIC ELIST)) == -1) {

    ^

SoWin.cpp:616:73: warning: comparison of unsigned

expression >= 0 is always true [-Wtype-limits] RIDI_DEVICEINFO, &dinfo,

&sizeofdinfo ) >= 0) {

         ^

SoWin.cpp: At global scope: SoWin.cpp:657:54: warning: unused parameter 'data' [-

Wunused-parameter] SoWinP::errorHandlerCB(const SoError error, void data) ^ SoWin.cpp:783:1: error: prototype for 'void

SoWinP::timerSensorCB(HWND, UINT, UI NT, DWORD)' does not match any in class 'SoWinP' SoWinP::timerSensorCB(HWND window, UINT message, UINT

idevent, DWORD dwtime) ^ SoWin.cpp:234:24: error: candidate is: static void

SoWinP::timerSensorCB(HWND, U INT, UINT, int (*)(long long int)) static void CALLBACK timerSensorCB(HWND window, ^ SoWin.cpp:793:1: error: prototype for 'void

SoWinP::delaySensorCB(HWND, UINT, UI NT, DWORD)' does not match any in class 'SoWinP' SoWinP::delaySensorCB(HWND window, UINT message, UINT

idevent, DWORD dwtime) ^ SoWin.cpp:240:24: error: candidate is: static void

SoWinP::delaySensorCB(HWND, U INT, UINT, int (*)(long long int)) static void CALLBACK delaySensorCB(HWND window, ^ SoWin.cpp:803:1: error: prototype for 'void

SoWinP::idleSensorCB(HWND, UINT, UIN T, DWORD)' does not match any in class 'SoWinP' SoWinP::idleSensorCB(HWND window, UINT message, UINT

idevent, DWORD dwtime) ^ SoWin.cpp:246:24: error: candidate is: static void

SoWinP::idleSensorCB(HWND, UI NT, UINT, int (*)(long long int)) static void CALLBACK idleSensorCB(HWND window, ^ SoWin.cpp:814:22: warning: unused parameter 'window' [-

Wunused-parameter] SoWinP::onClose(HWND window, UINT message, WPARAM wparam,

LPARAM lparam) ^ SoWin.cpp:814:35: warning: unused parameter 'message' [-

Wunused-parameter] SoWinP::onClose(HWND window, UINT message, WPARAM wparam,

LPARAM lparam) ^ SoWin.cpp:814:51: warning: unused parameter 'wparam' [-

Wunused-parameter] SoWinP::onClose(HWND window, UINT message, WPARAM wparam,

LPARAM lparam) ^ SoWin.cpp:814:66: warning: unused parameter 'lparam' [-

Wunused-parameter] SoWinP::onClose(HWND window, UINT message, WPARAM wparam,

LPARAM lparam)

  ^

SoWin.cpp:821:24: warning: unused parameter 'window' [-

Wunused-parameter] SoWinP::onDestroy(HWND window, UINT message, WPARAM

wparam, LPARAM lparam) ^ SoWin.cpp:821:37: warning: unused parameter 'message' [-

Wunused-parameter] SoWinP::onDestroy(HWND window, UINT message, WPARAM

wparam, LPARAM lparam) ^ SoWin.cpp:821:53: warning: unused parameter 'wparam' [-

Wunused-parameter] SoWinP::onDestroy(HWND window, UINT message, WPARAM

wparam, LPARAM lparam) ^ SoWin.cpp:821:68: warning: unused parameter 'lparam' [-

Wunused-parameter] SoWinP::onDestroy(HWND window, UINT message, WPARAM

wparam, LPARAM lparam)

    ^

SoWin.cpp:827:21: warning: unused parameter 'window' [-

Wunused-parameter] SoWinP::onQuit(HWND window, UINT message, WPARAM wparam,

LPARAM lparam) ^ SoWin.cpp:827:34: warning: unused parameter 'message' [-

Wunused-parameter] SoWinP::onQuit(HWND window, UINT message, WPARAM wparam,

LPARAM lparam) ^ SoWin.cpp:827:50: warning: unused parameter 'wparam' [-

Wunused-parameter] SoWinP::onQuit(HWND window, UINT message, WPARAM wparam,

LPARAM lparam) ^ SoWin.cpp:827:65: warning: unused parameter 'lparam' [-

Wunused-parameter] SoWinP::onQuit(HWND window, UINT message, WPARAM wparam,

LPARAM lparam)

 ^

SoWin.cpp:838:35: warning: unused parameter 'cbdata' [-

Wunused-parameter] SoGuiP::sensorQueueChanged(void * cbdata) ^ make[8]: *** [SoWin.lo] Error 1 make[8]: Leaving directory

`/e/Sowin/Sowin/src/Inventor/Win' make[7]: *** [install-recursive] Error 1 make[7]: Leaving directory

`/e/Sowin/Sowin/src/Inventor/Win' make[6]: *** [install] Error 2 make[6]: Leaving directory

/e/Sowin/Sowin/src/Inventor/Win' make[5]: *** [install-recursive] Error 1 make[5]: Leaving directory/e/Sowin/Sowin/src/Inventor' make[4]: [install] Error 2 make[4]: Leaving directory `/e/Sowin/Sowin/src/Inventor' make[3]: [install-recursive] Error 1 make[3]: Leaving directory /e/Sowin/Sowin/src' make[2]: *** [install] Error 2 make[2]: Leaving directory/e/Sowin/Sowin/src' make[1]: [install-recursive] Error 1 make[1]: Leaving directory `/e/Sowin/Sowin' make: [install] Error 2

ASUS X555L@ASUS-BHUVANESH /e/Sowin/Sowin $

VolkerEnderlein commented 6 years ago

Original comment by Volker Enderlein (Bitbucket: VolkerEnderlein, GitHub: VolkerEnderlein).


I am closing this issue as it has been fixed with pull request #188 in SoWin repository. Feel free to reopen the issue if the problem still persists.