develooper Front page | perl.perl5.porters | Postings from November 2000

[PATCH: perl@7777] add system locale testing for VMS

Thread Next
From:
Peter Prymmer
Date:
November 20, 2000 12:54
Subject:
[PATCH: perl@7777] add system locale testing for VMS
Message ID:
Pine.OSF.4.10.10011201244390.376086-100000@aspara.forte.com

WARNING: several independent topics are addressed in this one message.

Hi,

In building perl@7777 on VMS I noted the following informational warnings
during the build (which are suggestive of a function prototype gone
missing, although I've not yet looked into the matter):

CC/DECC
/Include=[]/Standard=Relaxed_ANSI/Prefix=All/Obj=.obj/NoList/Define=PERL
_CORE DOIO.C

           if (PerlIO_apply_layers(aTHX_ IoIFP(io),mode,type) != 0) {
...............^
%CC-I-IMPLICITFUNC, In this statement, the identifier
"PerlIO_apply_layers" is i
mplicitly declared as a function.
at line number 547 in file DKB100:[PERL]DOIO.C;1

                if (PerlIO_apply_layers(aTHX_ IoOFP(io),mode,type) != 0) {
....................^
%CC-I-IMPLICITFUNC, In this statement, the identifier
"PerlIO_apply_layers" is i
mplicitly declared as a function.
at line number 566 in file DKB100:[PERL]DOIO.C;1

and a bit later I saw:

CC/DECC
/Include=[]/Standard=Relaxed_ANSI/Prefix=All/Obj=.obj/NoList/Define=PERL
_CORE PP_SYS.C

            PerlIO_apply_layers(aTHX_ fp,mode,type);
............^
%CC-I-IMPLICITFUNC, In this statement, the identifier
"PerlIO_apply_layers" is i
mplicitly declared as a function.
at line number 313 in file DKB100:[PERL]PP_SYS.C;1

I also noted that during `mms test` several perlpipe_$pid.com files pile
up in my SYS$SCRATCH directory and most get removed with the exception of
one, which for me was:

$ type PERLPIPE_0004E0C4_1.COM;1
$! 'f$verify(0)
$!  ---  protect against nonstandard definitions ---
$ perl_cfile  = f$environment("procedure")
$ perl_define = "define/nolog"
$ perl_on     = "set noon"
<snip>

Lastly, the point of this message was to introduce a small patch to have
done on VMS systems that which as already done on unix, namely to use
system supplied locales for testing the last bits of the t/pragma/locale.t
tests.  As noted in the comments this should have no effect on VMS V5.5-2,
although I cannot verify that since my only 5.5-2 system has no DEC C
compiler.  I have noticed that this speeds things up a bit on VMS 7.1 with
DEC C 6.0.  The only possible drawback of introducing this patch would be
introducing the possibility of test failure owing to broken ness of
locales.  But that is something already in the tests done on unix and I
would guess that someone who cares about locales enough to notice the
breakage would want to know which locales are broken according to Perl's
test suite.  So here it is:

--- t/pragma/locale.t.orig	Mon Nov 20 11:33:59 2000
+++ t/pragma/locale.t	Mon Nov 20 11:41:12 2000
@@ -367,6 +367,15 @@
 	trylocale($_);
     }
     close(LOCALES);
+} elsif ($^O eq 'VMS' && defined($ENV{'SYS$I18N_LOCALE'}) && -d 'SYS$I18N_LOCALE') {
+# The SYS$I18N_LOCALE logical name search list was not present on 
+# VAX VMS V5.5-12, but was on AXP && VAX VMS V6.2 as well as later versions.
+    opendir(LOCALES, "SYS\$I18N_LOCALE:");
+    while ($_ = readdir(LOCALES)) {
+        chomp;
+        trylocale($_);
+    }
+    close(LOCALES);
 } else {
 
     # This is going to be slow.
End of Patch.

Peter Prymmer



Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About