Ok, picked up the committers challenge... :-) I setup a working Win32/MSVC environment for parrot, and I'm trying to address the Win32 related tickets.
I started with RT #52198, test failures on Win32.
There are still many .t files with failures.
The first one I started to look into is t/pmc/complex.t.
Two things here:
1) test n.48 passes for me. It was marked as failing for Win32.
Following patch removes the skip block.
-----------------8<---------------------------
Index: t/pmc/complex.t
===================================================================
--- t/pmc/complex.t (revisione 31978)
+++ t/pmc/complex.t (copia locale)
@@ -1607,9 +1607,6 @@
done
OUTPUT
-SKIP: {
- skip 'failling on win32' => 1 if $^O =~ m/win32/i;
-
pir_output_is( << 'CODE', << 'OUTPUT', "sinh of complex numbers" );
.macro DoIt(val, res)
c = .val
@@ -1653,8 +1650,6 @@
done
OUTPUT
-}
-
pir_output_is( << 'CODE', << 'OUTPUT', "cosh of complex numbers" );
.macro DoIt(val, res)
c = .val
-----------------8<---------------------------
2) The last test, regarding subclasses of Complex
still fails. Diagnostic output follows:
-----------------8<---------------------------
ok 48 - sinh of complex numbers
ok 49 - cosh of complex numbers
ok 50 - tanh of complex numbers
ok 51 - coth of complex numbers
ok 52 - sech of complex numbers
ok 53 - csch of complex numbers
not ok 54 - add using subclass of Complex (RT \#59630) # TODO TODO
# Looks like you failed 1 test of 54.
# Failed (TODO) test 'add using subclass of Complex (RT \#59630)'
# at t\pmc\complex.t line 1866.
# got: '1+2i
# 3+4i
# 1+2i
# '
# expected: '1+2i
# 3+4i
# 4+6i
# '
dubious
Test returned status 1 (wstat 256, 0x100)
DIED. FAILED test 5
Failed 1/54 tests, 98.15% okay (less 4 skipped tests: 49 okay,
90.74%)
Failed Test Stat Wstat Total Fail List of Failed ------------------------------------------------------------------------------- t\pmc\complex.t 1 256 54 1 5 4 subtests skipped. Failed 1/1 test scripts. 1/54 subtests failed. Files=1, Tests=54, 3 wallclock secs ( 0.00 cusr + 0.00 csys = 0.00 CPU) Failed 1/1 test programs. 1/54 subtests failed. -----------------8<--------------------------- I tried to understand a bit more. Went to t/pmc/integer.t to look for a similar subclass test. Didn't find it. I added it, and it fails in the same way. Patch follows: -----------------8<--------------------------- Index: t/pmc/integer.t =================================================================== --- t/pmc/integer.t (revisione 31978) +++ t/pmc/integer.t (copia locale) @@ -7,7 +7,7 @@ use lib qw( . lib ../lib ../../lib ); use Test::More; -use Parrot::Test tests => 19; +use Parrot::Test tests => 20; =head1 NAME @@ -539,6 +539,36 @@ 2147483600 is greater than -1000 OUTPUT +pir_output_is( << 'CODE', << 'OUTPUT', "add using subclass of Integer"); +.sub main + $P0 = subclass 'Integer', 'MyInteger' + + .local pmc a, b, c + + a = new 'MyInteger' + a = 1 + say a + + b = new 'MyInteger' + b = 2 + say b + + c = add a, b + say c +.end + +.namespace ['MyInteger'] + +.sub 'init' :vtable + $P1 = new 'Integer' +.end + +CODE +1 +2 +3 +OUTPUT + # Local Variables: # mode: cperl # cperl-indent-level: 4 -----------------8<--------------------------- I guess this is something a bit beyond my possibilities, but any hint to put me on the right track? -- Cosimo
add_subclass_test.diff
Description: Binary data
complex_skip_win32.diff
Description: Binary data
