Skip Menu |

This queue is for tickets about the Wx CPAN distribution.

Report information
The Basics
Id: 56058
Status: resolved
Priority: 0/
Queue: Wx

People
Owner: Nobody in particular
Requestors: kmx [...] cpan.org
Cc: ROBINS [...] cpan.org
AdminCc:

Bug Information
Severity: (no value)
Broken in: (no value)
Fixed in: (no value)



Subject: 64bit MS Windows failure (Controls.c)
Hi,

during my tests on 64bit Strawberry Perl 5.12.0-RC0 + Wx-0.9701 I have eperienced the following error:

g++  -fvtable-thunks  -O2 -mthreads -Os -c  -I. -I. -ID:\strawberry64\perl\site\lib\Alien\wxWidgets\msw_2_8_10_uni_gcc_3_4\lib -ID:\strawberry64\perl\site\lib\A
lien\wxWidgets\msw_2_8_10_uni_gcc_3_4\include   -s -O2 -DWIN32 -DHAVE_DES_FCRYPT -DWIN64 -DCONSERVATIVE -DUSE_SITECUSTOMIZE -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -fno-strict-aliasing -mms-bitfields -DPERL_MSVCRT_READFIX -s -O2  -DVERSION=\"0.9701\"  -DXS_VERSION=\"0.9701\"  "-ID:\strawberry64\perl\lib\CORE"  -DHAVE_W32API_H -D__WXMSW__ -D_UNICODE -DWXUSINGDLL -DNOPCH -DNO_GCC_PRAGMA Controls.c
cc1plus.exe: warning: switch '-fvtable-thunks' is no longer supported
Controls.c: In function 'void XS_Wx__ListCtrl_SortItems(PerlInterpreter*, CV*)':

Controls.c:21328: error: cast from 'SV*' to 'long int' loses precision
dmake.EXE:  Error code 129, while making 'Controls.o'

Note: on 64bit MS Windows sizeof(*void) == 8 however sizeof(long int) == 4 therefore casting pointer to longint raises an error

--
kmx
Il Lun 29 Mar 2010 10:38:58, KMX ha scritto: Show quoted text
> Hi, > > during my tests on 64bit Strawberry Perl 5.12.0-RC0 + Wx-0.9701 I have > eperienced the following error: > > g++ -fvtable-thunks -O2 -mthreads -Os -c -I. -I. > -
ID:\strawberry64\perl\site\lib\Alien\wxWidgets\msw_2_8_10_uni_gcc_3_4\li b Show quoted text
> -ID:\strawberry64\perl\site\lib\A > lien\wxWidgets\msw_2_8_10_uni_gcc_3_4\include -s -O2 -DWIN32 > -DHAVE_DES_FCRYPT > -DWIN64 -DCONSERVATIVE -DUSE_SITECUSTOMIZE -DPERL_IMPLICIT_CONTEXT > -DPERL_IMPLICIT_SYS -fno-strict-aliasing -mms-bitfields > -DPERL_MSVCRT_READFIX > -s -O2 -DVERSION=\"0.9701\" -DXS_VERSION=\"0.9701\" > "-ID:\strawberry64\perl\lib\CORE" -DHAVE_W32API_H -D__WXMSW__ > -D_UNICODE > -DWXUSINGDLL -DNOPCH -DNO_GCC_PRAGMA Controls.c > cc1plus.exe: warning: switch '-fvtable-thunks' is no longer supported > Controls.c: In function 'void > XS_Wx__ListCtrl_SortItems(PerlInterpreter*, > CV*)': > > Controls.c:21328: error: cast from 'SV*' to 'long int' loses precision > dmake.EXE: Error code 129, while making 'Controls.o'
The compilation fix is already committed (rev 2843). Note that this is only half of the fix: wxWidgets needs to be patched to accept a wxIntPtr (as it is in 2.9.0), otherwise the cast only hides the problem. Show quoted text
> Note: on 64bit MS Windows sizeof(*void) == 8 however sizeof(long int) > == 4 > therefore casting pointer to longint raises an error
I know :-) Regards, Mattia
I just want to say that I get the exact same bug as kmx on Strawberry Perl 5.12.0 x64. Error message here: http://gist.github.com/390559 I have also sent a CPAN::Reporter report.
The latest dev release on CPAN seems to actually work (it builds and tests pass). Unfortunately Win32::API has some x64 errors, so Padre still doesn't build. :(
Fixed in 0.9702.