[rt.cpan.org #45461] M::B ext.t needs fix to support VMS.

2009-04-27 Thread John E. Malmberg

Module::Build needs a patch to get the last test to pass on VMS.

https://rt.cpan.org/Ticket/Display.html?id=45461

-John
wb8...@qsl.net
Personal Opinion Only


Access violation in SV.C new_body_inline()

2009-04-27 Thread John E. Malmberg
I just started looking into a failure of 19_CPANPLUS-Dist.  I have not 
determined what exactly is wrong, and am out of time for the moment.


I will try to get some more information later.

It is failing from an access violation in SV.C.

ok 57 -Perl version not high enough
%SYSTEM-F-ACCVIO, access violation, reason mask=00, virtual 
address=002C, PC=000F9AB8, PS=001B

%TRACE-F-TRACEBACK, symbolic stack dump follows
  imagemoduleroutine line  rel PC
abs PC
 DBGPERLSHR  SV  Perl_sv_upgrade73671 1F58 
000F9AB8
 DBGPERLSHR  SV  Perl_sv_setsv_flags76204 AC88 
001027E8
 DBGPERLSHR  SV  Perl_newSVsv   80243 00019E58 
001119B8
 DBGPERLSHR  PP_HOT  Perl_pp_aassign71335 533C 
001F5B2C
 DBGPERLSHR  DUMP  Perl_runops_debug81310 8794 
001B9044
 DBGPERLSHR  PERL  S_run_body   72774 4A78 
000BC7C8
 DBGPERLSHR  PERL  perl_run 72699 46C0 
000BC410
 Perl  PERLMAIN  main   70428 0204 
00020204
 Perl  PERLMAIN  __main 70377 00A0 
000200A0
 PTHREAD$RTL0 00057618 
80E77618
 PTHREAD$RTL0 00030444 
80E50444
0 8037BCE4 
8037BCE4



EAGLE search [-]sv.lis/window=10 73671
  2   73667 /* We always allocated the full length item 
with PURIFY.

 To do this
  2   73668we fake things so that arena is false for 
all 16 type

s..  */
  3   73669 if(new_type_details-arena) {
  3   73670 /* This points to the start of the 
allocated area.

*/
  3   73671 new_body_inline(new_body, new_type);


EAGLE MCR Sys$Disk:[]Perl.EXE -V
Summary of my perl5 (revision 5 version 11 subversion 0) configuration:
  Snapshot of: 30a06a3af12bb1237a004c2795d506c231bc6ea5
  Platform:
osname=VMS, osvers=V8.3, archname=VMS_AXP-ithread
uname='VMS eagle V8.3 AlphaServer DS10 617 MHz'
config_args='-Dusevmsdebug -Dusedevel -Duseithreads 
-Duselargefiles -Dcf_e

mail=SYSTEM -de'
hint=none, useposix=false, d_sigaction=define
useithreads=define, usemultiplicity=undef
useperlio=define, d_sfio=undef, uselargefiles=define, usesocks=undef
use64bitint=undef, use64bitall=undef, uselongdouble=undef
usemymalloc=undef, bincompat5005=undef
  Compiler:
cc='CC/DECC', ccflags 
='/Include=[]/Standard=Relaxed_ANSI/Prefix=All/Obj=.ob

j /NOANSI_ALIAS/float=ieee/ieee=denorm/Define=_USE_STD_STAT=1',
optimize='/List/Debug/NoOpt',
cppflags='undef'
ccversion='70190015', gccversion='', gccosandvers='undef'
intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234
d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16
ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', 
lseeksize

=8
alignbytes=8, prototype=define
  Linker and Libraries:
ld='Link/nodebug', ldflags ='/Debug/Trace/Map'
libpth=/sys$share /sys$library
libs=
perllibs=
libc=(DECCRTL), so=exe, useshrplib=true, libperl=undef
gnulibc_version='undef'
  Dynamic Linking:
dlsrc=dl_vms.c, dlext=exe, d_dlsymun=undef, ccdlflags=''
cccdlflags='', lddlflags='/Share'


Characteristics of this PERLSHR image:
  Compile-time options: DEBUGGING DECCRTL_SOCKETS MULTIPLICITY
PERL_DONT_CREATE_GVSV PERL_IMPLICIT_CONTEXT
PERL_MALLOC_WRAP PERL_TRACK_MEMPOOL USE_IEEE
USE_ITHREADS USE_LARGE_FILES USE_PERLIO
USE_REENTRANT_API VMS_DO_SOCKETS
  Built under VMS
  Compiled at Apr 25 2009 22:36:36
  %ENV:

PERL5LIB=PROJECT_ROOT:[PERL-BLEAD.lib]|/project_root/perl-blead/lib/cpanplu
s/t/../lib|/project_root/perl-blead/lib/cpanplus/t/inc|PROJECT_ROOT:[PERL-BLEAD.
lib]|PROJECT_ROOT:[PERL-BLEAD.t]
PERL5_CPANPLUS_IS_RUNNING=1470086
PERL5_CPANPLUS_IS_VERSION=0.86_06
PERLDB_PIDS=XXX
PERLSHR=PERL_ROOT:[00]PERLSHR.EXE
PERL_BUILD_ROOT=disk$bigdisk:[project_root.perl-blead.]
PERL_CORE=1
PERL_DESTRUCT_LEVEL=2
PERL_ROOT=SYS$SYSDEVICE:[VMS$COMMON.PERL5_8_6.]
  @INC:
/PROJECT_ROOT/PERL-BLEAD/lib
/project_root/perl-blead/lib/cpanplus/t/../lib
/project_root/perl-blead/lib/cpanplus/t/inc
/PROJECT_ROOT/PERL-BLEAD/lib
/PROJECT_ROOT/PERL-BLEAD/t
perl_root:[lib.site_perl.VMS_AXP]
perl_root:[lib.site_perl]
perl_root:[lib.VMS_AXP.5_11_0]
perl_root:[lib]
.

-John
wb8...@qsl.net
Personal Opinion Only



Re: Access violation in SV.C new_body_inline()

2009-04-27 Thread Nicholas Clark
On Mon, Apr 27, 2009 at 12:27:02AM -0500, John E. Malmberg wrote:
 I just started looking into a failure of 19_CPANPLUS-Dist.  I have not 
 determined what exactly is wrong, and am out of time for the moment.
 
 I will try to get some more information later.
 
 It is failing from an access violation in SV.C.
 
 ok 57 -Perl version not high enough
 %SYSTEM-F-ACCVIO, access violation, reason mask=00, virtual 
 address=002C, PC=000F9AB8, PS=001B
 %TRACE-F-TRACEBACK, symbolic stack dump follows
   imagemoduleroutine line  rel PC
 abs PC
  DBGPERLSHR  SV  Perl_sv_upgrade73671 1F58 
 000F9AB8
  DBGPERLSHR  SV  Perl_sv_setsv_flags76204 AC88 
 001027E8

 EAGLE search [-]sv.lis/window=10 73671
   2   73667 /* We always allocated the full length item 
 with PURIFY.
  To do this
   2   73668we fake things so that arena is false for 
 all 16 type
 s..  */
   3   73669 if(new_type_details-arena) {
   3   73670 /* This points to the start of the 
 allocated area.
 */
   3   73671 new_body_inline(new_body, new_type);

#define new_body_inline(xpv, sv_type) \
STMT_START { \
void ** const r3wt = PL_body_roots[sv_type]; \
xpv = (PTR_TBL_ENT_t*) (*((void **)(r3wt))  \
  ? *((void **)(r3wt)) : more_bodies(sv_type)); \
*(r3wt) = *(void**)(xpv); \
} STMT_END

I'm curious what the value of sv_type is. It's the second (real) parameter:

void
Perl_sv_upgrade(pTHX_ register SV *const sv, svtype new_type)

Nicholas Clark


blead@09-04-25.23:16:08 t/test - Hack for VMS pipe bug.

2009-04-27 Thread John E. Malmberg
The VMS pipe bug inserts blank lines in places that can prevent the 
leader from being seen.


So on the leader line, read in the rest of the line.

Related VMS TODO:  The VMS/test.com procedure is passing an uppercase 
path specification instead of exact case or forced to lowercase.


This can cause the t/test. to incorrectly issue the diagnostic:
FAILED--unexpected output at test $next at times on VMS.

-John
wb8...@qsl.net
Personal Opinion Only
--- /rsync_root/perl/t/TEST Wed Mar 25 12:50:09 2009
+++ t/TEST  Sun Apr 26 20:38:43 2009
@@ -338,6 +338,14 @@
my %todo;
while (RESULTS) {
next if /^\s*$/; # skip blank lines
+   if (/^1..$/  ($^O eq 'VMS')) {
+   # VMS pipe bug inserts blank lines.
+   my $l2 = RESULTS;
+   if ($l2 =~ /^\s*$/) {
+   $l2 = RESULTS;
+   }
+   $_ = '1..' . $l2;
+   }
if ($::verbose) {
print $_;
}