On Fri, 1 Sep 2000, Craig A. Berry wrote:

> At 10:27 AM 9/1/2000 -0500, Craig A. Berry wrote:
> >At 8:41 AM -0500 9/1/00, Jarkko Hietaniemi wrote:
> >
> >>Do I have the absolutely latest configure.com?  I mean, there is the SCN
> >>thing I recently added...
> >
> >I think you do.  When I said "latest" I was inarticulately referring to Peter's 
>message with the subject line "[PATCH: 6948] add SCNfldbl to configure.com" which was 
>posted after the release of the 6962 snapshot.  I'm downloading 6977 now and will 
>check configure.com to make sure it's there.
> 
> 
> Oops.  It's not there in 6977, "it" being the configure.com patch from Peter 
> Prymmer located here:
> 
> <http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2000-09/msg00025.html>

Confirmed.  I had to overwrite (copy and purge!) the configure.com in 6977
to get the *SCNfldbl variables to come out OK in my config.h.

Unfortunately I cannot build perl now owing to:

CC/DECC
/Include=[]/Standard=Relaxed_ANSI/Prefix=All/Obj=.obj/NoList/Define=PERL
_CORE UTIL.C
Copy/Log/Noconfirm [.vms]vms.c []
%COPY-S-COPIED, DKB100:[PERL.VMS]VMS.C;1 copied to DKB100:[PERL]VMS.C;1
(402 blo
cks)
CC/DECC
/Include=[]/Standard=Relaxed_ANSI/Prefix=All/Obj=.obj/NoList/Define=PERL
_CORE VMS.C

      char fname_phdev[NAM$C_MAXRSS+1];
......^
%CC-E-BADSTMT, Invalid statement.
at line number 5605 in file DKB100:[PERL]VMS.C;1

      strcpy( fname_phdev, statbufp->st_devnam );
......^
%CC-E-UNDECLARED, In this statement, "fname_phdev" is not declared.
at line number 5606 in file DKB100:[PERL]VMS.C;1
%MMS-F-ABORT, For target VMS.OBJ, CLI returned abort status: %X10B91262.
$

If however, I move the declaration up closer to the top of Perl_cando()
then I can compile:

--- vms/vms.c.orig      Fri Sep  1 11:45:41 2000
+++ vms/vms.c   Fri Sep  1 11:51:30 2000
@@ -5579,6 +5579,7 @@
 bool
 Perl_cando(pTHX_ Mode_t bit, Uid_t effective, Stat_t *statbufp)
 {
+  char fname_phdev[NAM$C_MAXRSS+1];
   if (statbufp == &PL_statcache) return cando_by_name(bit,effective,namecache);
   else {
     char fname[NAM$C_MAXRSS+1];
@@ -5602,7 +5603,6 @@
  * but if someone has redefined that logical, Perl gets very lost.  Since
  * we have the physical device name from the stat buffer, just paste it on.
  */
-      char fname_phdev[NAM$C_MAXRSS+1];
       strcpy( fname_phdev, statbufp->st_devnam );
       strcat( fname_phdev, strrchr(fname, ':') );
 
End of Patch.

Except that I see an oddity (DCL error) in the run of gen_shrfls.pl:

MCR Sys$Disk:[]miniperl.exe "-I[.lib]" "-I[.ext.re]" [.lib.extutils]xsubpp
-noprototypes [.EXT.SOCKET]SOCKET.XS >[.EXT.SOCKET]SOCKET.C
CC/DECC /Include=[]/Standard=Relaxed_ANSI/Prefix=All/Obj=.obj/NoList
/Object=[.EXT.SOCKET]SOCKET.OBJ [.EXT.SOCKET]SOCKET.C
MCR Sys$Disk:[]miniperl.exe "-I[.lib]" [.vms]gen_shrfls.pl -f gen_shrfls.opt
%DCL-I-IGNQUAL, qualifiers appearing before this item were ignored
 \VERSION\

But that looks like gen_shrfls.pl is getting the wrong arguments from
descrip.mms (???), I'll try to track this one down further.

The regression tests still skip lines:

[.base]cond.............ok
[.base]if...............ok

[.base]lex..............ok
[.base]pat..............ok

[.base]rs...............ok

[.base]term.............ok
[.cmd]elsif.............ok

etc.

BTW Craig, what about stat ing in ODS2 deep directories, ie more that
8 levels deep accessed with rooted logicals?  Are we sure we want to
resolve the physical device name in cando?

Peter Prymmer


Reply via email to