EV 4.36 makes perl dump core
Thomas Klausner
wiz at gatalith.at
Sun Nov 2 10:01:00 CET 2025
Hi!
I've tried updating EV in pkgsrc from 4.34 to 4.36, but I see core
dumps when running the tests.
I then did the update to 4.35, which works fine. So the problem is in
the change from 4.35 to 4.36.
4.35:
t/00_load.t ........ ok
t/01_timer.t ....... ok
t/02_once.t ........ ok
t/03_keepalive.t ... ok
t/04_stat.t ........ ok
t/05_priority.t .... ok
t/06_loop_once.t ... ok
t/07_loop_timer.t .. ok
t/08_async.t ....... ok
t/09_brandon.t ..... ok
t/11_signal.t ...... ok
All tests successful.
Files=11, Tests=6875, 6 wallclock secs ( 0.07 usr 0.03 sys + 0.07 cusr 0.01 csys = 0.18 CPU)
Result: PASS
4.36:
===> Testing for p5-EV-4.36
"/usr/pkg/bin/perl" -MExtUtils::Command::MM -e 'cp_nonempty' -- EV.bs blib/arch/auto/EV/EV.bs 644
PERL_DL_NONLAZY=1 "/usr/pkg/bin/perl" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/00_load.t ........ Failed 3/5 subtests
t/01_timer.t ....... Failed 5999/6002 subtests
t/02_once.t ........ Failed 24/30 subtests
t/03_keepalive.t ... Failed 8/8 subtests
t/04_stat.t ........ Failed 14/14 subtests
t/05_priority.t .... Failed 9/9 subtests
t/06_loop_once.t ... ok
t/07_loop_timer.t .. Failed 749/752 subtests
t/08_async.t ....... Failed 13/13 subtests
t/09_brandon.t ..... Failed 9/12 subtests
t/11_signal.t ...... Failed 23/24 subtests
Test Summary Report
-------------------
t/00_load.t (Wstat: 139 (Signal: SEGV, dumped core) Tests: 2 Failed: 0)
Non-zero wait status: 139
Parse errors: Bad plan. You planned 5 tests but ran 2.
t/01_timer.t (Wstat: 139 (Signal: SEGV, dumped core) Tests: 3 Failed: 0)
Non-zero wait status: 139
Parse errors: Bad plan. You planned 6002 tests but ran 3.
t/02_once.t (Wstat: 139 (Signal: SEGV, dumped core) Tests: 6 Failed: 0)
Non-zero wait status: 139
Parse errors: Bad plan. You planned 30 tests but ran 6.
t/03_keepalive.t (Wstat: 139 (Signal: SEGV, dumped core) Tests: 0 Failed: 0)
Non-zero wait status: 139
Parse errors: Bad plan. You planned 8 tests but ran 0.
t/04_stat.t (Wstat: 139 (Signal: SEGV, dumped core) Tests: 0 Failed: 0)
Non-zero wait status: 139
Parse errors: Bad plan. You planned 14 tests but ran 0.
t/05_priority.t (Wstat: 139 (Signal: SEGV, dumped core) Tests: 0 Failed: 0)
Non-zero wait status: 139
Parse errors: Bad plan. You planned 9 tests but ran 0.
t/07_loop_timer.t (Wstat: 139 (Signal: SEGV, dumped core) Tests: 3 Failed: 0)
Non-zero wait status: 139
Parse errors: Bad plan. You planned 752 tests but ran 3.
t/08_async.t (Wstat: 139 (Signal: SEGV, dumped core) Tests: 0 Failed: 0)
Non-zero wait status: 139
Parse errors: Bad plan. You planned 13 tests but ran 0.
t/09_brandon.t (Wstat: 139 (Signal: SEGV, dumped core) Tests: 3 Failed: 0)
Non-zero wait status: 139
Parse errors: Bad plan. You planned 12 tests but ran 3.
t/11_signal.t (Wstat: 139 (Signal: SEGV, dumped core) Tests: 1 Failed: 0)
Non-zero wait status: 139
Parse errors: Bad plan. You planned 24 tests but ran 1.
Files=11, Tests=24, 1 wallclock secs ( 0.01 usr 0.00 sys + 0.05 cusr 0.03 csys = 0.09 CPU)
Result: FAIL
Failed 10/11 test programs. 0/24 subtests failed.
*** Error code 255
There are already warnings in the 4.36 build that do not appear in the 4.35 one:
--- EV.c ---
Can't find string terminator '"' anywhere before EOF at (eval 76) line 2, <__ANONIO__> line 868.
Use of uninitialized value $init_code in pattern match (m//) at /usr/pkg/lib/perl5/5.42.0/ExtUtils/ParseXS/Node.pm line 420, <__ANONIO__> line 868.
Use of uninitialized value $init_code in pattern match (m//) at /usr/pkg/lib/perl5/5.42.0/ExtUtils/ParseXS/Node.pm line 429, <__ANONIO__> line 868.
Can't find string terminator '"' anywhere before EOF at (eval 78) line 2, <__ANONIO__> line 870.
Use of uninitialized value $init_code in pattern match (m//) at /usr/pkg/lib/perl5/5.42.0/ExtUtils/ParseXS/Node.pm line 420, <__ANONIO__> line 870.
Use of uninitialized value $init_code in pattern match (m//) at /usr/pkg/lib/perl5/5.42.0/ExtUtils/ParseXS/Node.pm line 429, <__ANONIO__> line 870.
Can't find string terminator '"' anywhere before EOF at (eval 80) line 2, <__ANONIO__> line 873.
Use of uninitialized value $init_code in pattern match (m//) at /usr/pkg/lib/perl5/5.42.0/ExtUtils/ParseXS/Node.pm line 420, <__ANONIO__> line 873.
Use of uninitialized value $init_code in pattern match (m//) at /usr/pkg/lib/perl5/5.42.0/ExtUtils/ParseXS/Node.pm line 429, <__ANONIO__> line 873.
...
and many more similar ones, with increasing line numbers.
...
mv EV.xsc EV.c
When I revert the typemap changes, it builds and runs fine. (Ok,
there are no real other changes, so that is not unexpected...) I
tried fiddling with it for a bit but didn't find the subset to revert
to fix this.
The environment is NetBSD 11.99.2/x86_64 in case it matters.
Anyone else seeing this? Any hints on a solution?
Thanks,
Thomas
More information about the libev
mailing list