Front page | perl.perl5.porters |
Postings from August 2003
ByteLoader and MSWin32
Thread Next
From:
Marcus Holland-Moritz
Date:
August 31, 2003 14:39
Subject:
ByteLoader and MSWin32
Message ID:
007b01c37008$4474cb20$0c2f1fac@R2D2
When running the bleadperl tests on MSWin32, there are problems
with ext/B/t/bytecode.t. In the default build, the test crashes
for each individual subtest. In a debugging build, assertions
fail for each subtest, like:
Assertion ptr < ( (I32 **) slab + 2048) failed: file "..\op.c", line 83.
The problem seems to be that OP's are allocated using safemalloc()
in byterun.c, but during perl_destruct() are attempted to be freed
using S_Slab_Free(). This fails because they weren't allocated
using S_Slab_Alloc().
Windows uses the slab allocator because PERL_IMPLICIT_SYS is
defined by default. I guess a fix would incorporate turning
S_Slab_Alloc() into a globally accessible function and using
it instead of safemalloc() when PL_OP_SLAB_ALLOC is defined.
Please tell me if I can help out with testing/implementing.
-- Marcus
Thread Next
-
ByteLoader and MSWin32
by Marcus Holland-Moritz