Subject: | AS 5.8.9 x86 segfaults with threads and XS implementation |
The XS implementation of B::H::EOS segfaults under at least AS 5.8.9 x86. Very similar to bug RT#82922.
https://github.com/bobtfish/b-hooks-endofscope/pull/2 contains tests to test this.
This can be worked around by the user by setting $ENV{B_HOOKS_ENDOFSCOPE_IMPLEMENTATION} to 'PP' to force the use of B::H::EOS::PP.
Set up gcc environment - 3.4.5 (mingw-vista special r3)
Summary of my perl5 (revision 5 version 8 subversion 9) configuration:
Platform:
osname=MSWin32, osvers=5.00, archname=MSWin32-x86-multi-thread
uname=''
config_args='undef'
hint=recommended, useposix=true, d_sigaction=undef
usethreads=define use5005threads=undef useithreads=define usemultiplicity=define
useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
use64bitint=undef use64bitall=undef uselongdouble=undef
usemymalloc=n, bincompat5005=undef
Compiler:
cc='gcc', ccflags ='-DNDEBUG -DWIN32 -D_CONSOLE -DNO_STRICT -DHAVE_DES_FCRYPT -DNO_HASH_SEED -DUSE_SITECUSTOMIZE -DPRIVLIB_LAST_IN_INC -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DUSE_PERLIO -DPERL_MSVCRT_READFIX -DHASATTRIBUTE -fno-strict-alias
ing -mms-bitfields',
optimize='-O2',
cppflags='-DWIN32'
ccversion='', gccversion='3.4.5 (mingw-vista special r3)', gccosandvers=''
intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234
d_longlong=undef, longlongsize=8, d_longdbl=define, longdblsize=8
ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='__int64', lseeksize=8
alignbytes=8, prototype=define
Linker and Libraries:
ld='g++', ldflags ='-L"[SNIP]\Perl\lib\CORE"'
libpth=\lib
libs=-lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 -ladvapi32 -lshell32 -lole32 -loleaut32 -lnetapi32 -luuid -lws2_32 -lmpr -lwinmm -lversion -lodbc32 -lodbccp32 -lmsvcrt
perllibs=-lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 -ladvapi32 -lshell32 -lole32 -loleaut32 -lnetapi32 -luuid -lws2_32 -lmpr -lwinmm -lversion -lodbc32 -lodbccp32 -lmsvcrt
libc=msvcrt.lib, so=dll, useshrplib=true, libperl=perl58.lib
gnulibc_version=''
Dynamic Linking:
dlsrc=dl_win32.xs, dlext=dll, d_dlsymun=undef, ccdlflags=' '
cccdlflags=' ', lddlflags='-mdll -L"[SNIP]\Perl\lib\CORE"'
Characteristics of this binary (from libperl):
Compile-time options: MULTIPLICITY PERL_IMPLICIT_CONTEXT PERL_IMPLICIT_SYS
PERL_MALLOC_WRAP PL_OP_SLAB_ALLOC USE_FAST_STDIO
USE_ITHREADS USE_LARGE_FILES USE_PERLIO
USE_SITECUSTOMIZE
Locally applied patches:
ActivePerl Build 826 [290470]
f7bbab select() generates 'Invalid parameter' messages on Windows Vista.
36f064 do/require don't treat '.♀oo' or '..♀oo' as absolute paths on Windows
287a96 Fix -p function and Fcntl::S_IFIFO constant under Microsoft VC compiler
Iin_load_module moved for compatibility with build 806
Less verbose ExtUtils::Install and Pod::Find
Rearrange @INC so that 'site' is searched before 'perl'
Partly reverted #dafda6 to preserve binary compatibility
5e162c Problem killing a pseudo-forked child on Win32
3e5d88 ANSIfy the PATH environment variable on Windows
c71e9b,29e136 win32_async_check() can loop indefinitely
aeecf6 Fix alarm() for Windows 2003
Built under MSWin32
Compiled at May 24 2009 09:21:05
%ENV:
PERL_CPANM_OPT="--mirror http://[SNIP]/cpan/ --mirror-only"
@INC:
[SNIP]/Perl/site/lib/MSWin32-x86-multi-thread
[SNIP]/Perl/site/lib
[SNIP]/Perl/lib
.