Subject: | Test failure (after fixing build failure) with 2.023 on Win32/VC++ |
I'm trying to update Socket to 2.023 in core, now that Configure has support for gai_strerror detection, but I've run into two problems just testing on my own Win32/VC++ setup:
1. The build fails. Easily fixed by:
diff -ruN Socket-2.023.orig/Socket.xs Socket-2.023/Socket.xs
--- Socket-2.023.orig/Socket.xs 2016-08-01 16:04:27.000000000 +0100
+++ Socket-2.023/Socket.xs 2016-08-12 08:28:15.097554600 +0100
@@ -1049,7 +1049,7 @@
# endif
ST(0) = sv_2mortal(newSVpvn((char *)&sin6, sizeof(sin6)));
#else
- PERL_UNUSED_VAR(port);
+ PERL_UNUSED_VAR(port_sv);
PERL_UNUSED_VAR(sin6_addr);
ST(0) = (SV*)not_here("pack_sockaddr_in6");
#endif
2. sockaddr.t fails:
C:\Dev\Git\perl\t>.\perl harness -v ..\cpan\Socket\t\sockaddr.t
../cpan/Socket/t/sockaddr.t ..
1..44
ok 1 - inet_aton returns packed bytes
ok 2 - inet_ntoa from v-string
ok 3 - inet_aton->inet_ntoa roundtrip
ok 4 - inet_ntoa warns about wide characters
ok 5 - inet_pton AF_INET returns packed bytes
ok 6 - inet_ntop AF_INET from v-string
ok 7 - inet_pton->inet_ntop AF_INET roundtrip
ok 8 - inet_aton->inet_ntop AF_INET roundtrip
ok 9 - inet_ntop warns about wide characters
ok 10 - inet_pton AF_INET6 returns packed bytes
ok 11 - inet_ntop AF_INET6 from octet string
ok 12 - inet_pton->inet_ntop AF_INET6 roundtrip
ok 13 - sockaddr_family warns about argument length
ok 14 - pack_sockaddr_in defined
ok 15 - sockaddr_family of pack_sockaddr_in
ok 16 - pack_sockaddr_in->unpack_sockaddr_in port
ok 17 - pack_sockaddr_in->unpack_sockaddr_in addr
ok 18 - unpack_sockaddr_in in scalar context yields addr
ok 19 - sockaddr_in in list context unpacks
ok 20 - sockaddr_in in scalar context packs
ok 21 - pack_sockaddr_in undef port is fatal
ok 22 - pack_sockaddr_in undef addr is fatal
ok 23 - unpack_sockaddr_in undef is fatal
ok 24 - undefined values produced no warnings
ok 25 # skip Cannot pack_sockaddr_in6()
ok 26 # skip Cannot pack_sockaddr_in6()
ok 27 # skip Cannot pack_sockaddr_in6()# Looks like you planned 44 tests but ran
40.
ok 28 # skip Cannot pack_sockaddr_in6()
ok 29 # skip Cannot pack_sockaddr_in6()
ok 30 # skip Cannot pack_sockaddr_in6()
ok 31 # skip Cannot pack_sockaddr_in6()
ok 32 # skip Cannot pack_sockaddr_in6()
ok 33 # skip Cannot pack_sockaddr_in6()
ok 34 # skip Abstract AF_UNIX paths unsupported
ok 35 # skip Abstract AF_UNIX paths unsupported
ok 36 # skip Abstract AF_UNIX paths unsupported
ok 37 # skip Abstract AF_UNIX paths unsupported
ok 38 # skip Abstract AF_UNIX paths unsupported
ok 39 - sockaddr_in deprecated form doesn't warn without lexical warnings
ok 40 - sockaddr_in deprecated form warns with lexical warnings
Dubious, test returned 255 (wstat 65280, 0xff00)
Failed 4/44 subtests
(less 14 skipped subtests: 26 okay)
Test Summary Report
-------------------
../cpan/Socket/t/sockaddr.t (Wstat: 65280 Tests: 40 Failed: 0)
Non-zero exit status: 255
Parse errors: Bad plan. You planned 44 tests but ran 40.
Files=1, Tests=40, 1 wallclock secs ( 0.00 usr + 0.02 sys = 0.02 CPU)
Result: FAIL