Skip to content

Commit

Permalink
[inseparable changes from patch from perl5.003_25 to perl5.003_26]
Browse files Browse the repository at this point in the history
 CORE LANGUAGE CHANGES

Subject: Make \r in script an error (per Larry)
From: Chip Salzenberg <chip@perl.com>
Files: pod/perldiag.pod toke.c

 CORE PORTABILITY

Subject: VMS patches post _25
Date: Fri, 07 Feb 1997 01:56:12 -0500 (EST)
From: Charles Bailey <bailey@HMIVAX.HUMGEN.UPENN.EDU>
Files: Porting/Glossary lib/ExtUtils/Liblist.pm lib/ExtUtils/MM_VMS.pm lib/ExtUtils/xsubpp perl.c vms/Makefile vms/config.vms vms/descrip.mms vms/genconfig.pl vms/perlvms.pod vms/vms.c vms/vmsish.h x2p/a2p.c

    private-msgid: <01IF48W3P39W0050BD@hmivax.humgen.upenn.edu>

 LIBRARY AND EXTENSIONS

Subject: Make diagnostics module strip formatting directives
From: Chip Salzenberg <chip@perl.com>
Files: lib/diagnostics.pm pod/perldiag.pod

 OTHER CORE CHANGES

Subject: Fix (yet another) Tk closure problem
From: Chip Salzenberg <chip@perl.com>
Files: op.c perl.c pp_ctl.c

Subject: Fix value of C<foreach>
From: Chip Salzenberg <chip@perl.com>
Files: cop.h pp_ctl.c

Subject: Refine 'runaway string' heuristic
From: Chip Salzenberg <chip@perl.com>
Files: toke.c

Subject: Fix core dump on C<print "a", last> in eval
From: Chip Salzenberg <chip@perl.com>
Files: pp_ctl.c
  • Loading branch information
Perl 5 Porters authored and Chip Salzenberg committed Feb 10, 1997
1 parent 2752eb9 commit 4fdae80
Show file tree
Hide file tree
Showing 25 changed files with 363 additions and 94 deletions.
138 changes: 138 additions & 0 deletions Changes
Expand Up @@ -8,6 +8,144 @@ or in the .../src/5/0/unsupported directory for sub-version
releases.)


----------------
Version 5.003_26
----------------

This release is beta candidate #4. "Once more, dear friends...."

CORE LANGUAGE CHANGES

Title: "Make \r in script an error (per Larry)"
From: Chip Salzenberg
Files: pod/perldiag.pod toke.c

Title: "Support '%i' format and 'h' modifier in s?printf"
From: Chip Salzenberg
Files: doop.c pod/perldelta.pod

CORE PORTABILITY

Title: "Fix value of system() and $? for DEC UNIX, VMS, others"
From: Chip Salzenberg
Files: mg.c perl.h pp_sys.c

Title: "VMS patches post _25"
From: Charles Bailey <bailey@HMIVAX.HUMGEN.UPENN.EDU>
Msg-ID: <01IF48W3P39W0050BD@hmivax.humgen.upenn.edu>
Date: Fri, 07 Feb 1997 01:56:12 -0500 (EST)
Files: Porting/Glossary lib/ExtUtils/Liblist.pm
lib/ExtUtils/MM_VMS.pm lib/ExtUtils/xsubpp perl.c
vms/Makefile vms/config.vms vms/descrip.mms vms/genconfig.pl
vms/perlvms.pod vms/vms.c vms/vmsish.h x2p/a2p.c

Title: "Hints for BSDOS"
From: Christopher Davis <ckd@loiosh.kei.com>
Msg-ID: <199702042011.PAA09206@loiosh.kei.com>
Date: Tue, 4 Feb 1997 15:11:13 -0500 (EST)
Files: hints/bsdos.sh

Title: "On C<sysopen(..., O_APPEND)>, call C<fopen(..., "a")>"
From: Chip Salzenberg
Files: doio.c

OTHER CORE CHANGES

Title: "Fix (yet another) Tk closure problem"
From: Chip Salzenberg
Files: op.c perl.c pp_ctl.c

Title: "Fix value of C<foreach>"
From: Chip Salzenberg
Files: cop.h pp_ctl.c

Title: "Regexp optimizations"
From: Ilya Zakharevich <ilya@math.ohio-state.edu>
Msg-ID: <199702041102.GAA24805@monk.mps.ohio-state.edu>
Date: Tue, 4 Feb 1997 06:02:10 -0500 (EST)
Files: regcomp.c regexec.c

Title: "Re: static buffer in not_a_number() [sv.c] might overflow"
From: Gisle Aas <aas@bergen.sn.no>
Msg-ID: <hbu9uz1si.fsf@bergen.sn.no>
Date: 09 Feb 1997 11:55:41 +0100
Files: sv.c

Title: "Refine 'runaway string' heuristic"
From: Chip Salzenberg
Files: toke.c

Title: "Fix core dump on C<print "a", last> in eval"
From: Chip Salzenberg
Files: pp_ctl.c

Title: "Catch C<use integer; $x % 0>"
From: Chip Salzenberg
Files: pp.c

BUILD PROCESS

Title: "Fix usage message in configure.gnu"
From: Jarkko Hietaniemi <jhi@cc.hut.fi>
Files: configure.gnu

LIBRARY AND EXTENSIONS

Title: "DB_File 1.11 patch"
From: pmarquess@bfsec.bt.co.uk (Paul Marquess)
Msg-ID: <9702061553.AA18147@claudius.bfsec.bt.co.uk>
Date: Thu, 6 Feb 97 15:53:34 GMT
Files: ext/DB_File/DB_File.pm ext/DB_File/DB_File.xs

Title: "Faster File::Compare"
From: Gisle Aas <aas@bergen.sn.no>
Msg-ID: <199702051342.OAA02753@bergen.sn.no>
Date: Wed, 5 Feb 1997 14:42:49 +0100
Files: lib/File/Compare.pm

Title: "Make diagnostics module strip formatting directives"
From: Chip Salzenberg
Files: lib/diagnostics.pm pod/perldiag.pod

Title: "Fix warning from missing POSIX::setvbuf()"
From: Chip Salzenberg
Files: ext/IO/IO.xs

TESTS

Title: "Fix closure.t for AmigaOS (again)"
From: "Norbert Pueschel" <pueschel@imsdd.meb.uni-bonn.de>
Msg-ID: <77724742@Armageddon.meb.uni-bonn.de>
Date: Wed, 05 Feb 1997 18:56:45 +0100
Files: t/op/closure.t

UTILITIES

Title: "perldoc -f <perlfunc>"
From: Gisle Aas <aas@bergen.sn.no>
Msg-ID: <199702051127.MAA02090@bergen.sn.no>
Date: Wed, 5 Feb 1997 12:27:36 +0100
Files: utils/perldoc.PL

Title: "Fix pod2man's handling of quotes in =items"
From: Jarkko Hietaniemi <jhi@iki.fi>
Msg-ID: <199702042023.WAA13143@alpha.hut.fi>
Date: Tue, 4 Feb 1997 22:23:34 +0200 (EET)
Files: pod/pod2man.PL

DOCUMENTATION

Title: "return *FH pod patch"
From: allen@gateway.grumman.com (John L. Allen)
Msg-ID: <9702061507.AA04474@gateway.grumman.com>
Date: Thu, 6 Feb 1997 10:07:28 -0500
Files: pod/perldata.pod pod/perlsub.pod

Title: "Describe interation of untie and DESTROY"
From: Paul Marquess and Chip Salzenberg
Files: pod/perltie.pod


----------------
Version 5.003_25
----------------
Expand Down
4 changes: 2 additions & 2 deletions INSTALL
Expand Up @@ -117,7 +117,7 @@ e.g.
If your prefix contains the string "perl", then the directories
are simplified. For example, if you use prefix=/opt/perl,
then Configure will suggest /opt/perl/lib instead of
/usr/local/lib/perl5/.
/opt/perl/lib/perl5/.

By default, Configure will compile perl to use dynamic loading, if
your system supports it. If you want to force perl to be compiled
Expand Down Expand Up @@ -1102,4 +1102,4 @@ from the original README by Larry Wall.

=head1 LAST MODIFIED

22 January 1997
8 February 1997
10 changes: 10 additions & 0 deletions Porting/Glossary
Expand Up @@ -1113,6 +1113,11 @@ lns (lns.U):
symbolic links (if they are supported). It can be used
in the Makefile. It is either 'ln -s' or 'ln'

longsize (intsize.U):
This variable contains the value of the LONGSIZE symbol,
which indicates to the C program how many bytes there are
in a long integer.

lseektype (lseektype.U):
This variable defines lseektype to be something like off_t, long,
or whatever type is used to declare lseek offset's type in the
Expand Down Expand Up @@ -1288,6 +1293,11 @@ shmattype (d_shmat.U):
This symbol contains the type of pointer returned by shmat().
It can be 'void *' or 'char *'.

shortsize (intsize.U):
This variable contains the value of the SHORTSIZE symbol,
which indicates to the C program how many bytes there are
in a short integer.

shrpenv (libperl.U):
If the user builds a shared libperl.so, then we need to tell the
'perl' executable where it will be able to find the installed libperl.so.
Expand Down
4 changes: 2 additions & 2 deletions cop.h
Expand Up @@ -125,10 +125,10 @@ struct block_loop {
POPLOOP2(); }

#define POPLOOP1(cx) \
cxloop = cx->blk_loop; /* because DESTROY may clobber *cx */
cxloop = cx->blk_loop; /* because DESTROY may clobber *cx */ \
newsp = stack_base + cxloop.resetsp;

#define POPLOOP2() \
newsp = stack_base + cxloop.resetsp; \
SvREFCNT_dec(cxloop.iterlval); \
if (cxloop.itervar) { \
SvREFCNT_dec(*cxloop.itervar); \
Expand Down
2 changes: 1 addition & 1 deletion lib/ExtUtils/Liblist.pm
Expand Up @@ -290,7 +290,7 @@ sub _vms_ext {
if ($ctype) {
eval '$' . $ctype . "{'$cand'}++";
die "Error recording library: $@" if $@;
print STDOUT "\tFound as $name (really $test), type $type\n" if $verbose > 1;
print STDOUT "\tFound as $cand (really $ctest), type $ctype\n" if $verbose > 1;
next LIB;
}
}
Expand Down
47 changes: 38 additions & 9 deletions lib/ExtUtils/MM_VMS.pm
Expand Up @@ -6,9 +6,10 @@
# Author: Charles Bailey bailey@genetics.upenn.edu

package ExtUtils::MM_VMS;
$ExtUtils::MM_VMS::Revision=$ExtUtils::MM_VMS::Revision = '5.39 (16-Jan-1997)';
$ExtUtils::MM_VMS::Revision=$ExtUtils::MM_VMS::Revision = '5.39 (31-Jan-1997)';
unshift @MM::ISA, 'ExtUtils::MM_VMS';

use Carp qw( &carp );
use Config;
require Exporter;
use VMS::Filespec;
Expand Down Expand Up @@ -47,16 +48,23 @@ sub eliminate_macros {
return '';
}
my($npath) = unixify($path);
my($complex) = 0;
my($head,$macro,$tail);

# perform m##g in scalar context so it acts as an iterator
while ($npath =~ m#(.*?)\$\((\S+?)\)(.*)#g) {
if ($self->{$2}) {
($head,$macro,$tail) = ($1,$2,$3);
($macro = unixify($self->{$macro})) =~ s#/$##;
if (ref $self->{$macro}) {
carp "Can't expand macro containing " . ref $self->{$macro};
$npath = "$head\cB$macro\cB$tail";
$complex = 1;
}
else { ($macro = unixify($self->{$macro})) =~ s#/$##; }
$npath = "$head$macro$tail";
}
}
if ($complex) { $npath =~ s#\cB(.*?)\cB#\$($1)#g; }
print "eliminate_macros($path) = |$npath|\n" if $Verbose >= 3;
$npath;
}
Expand Down Expand Up @@ -590,8 +598,8 @@ sub constants {
foreach $def (@defs) {
next unless $def;
if ($def =~ s/^-D//) { # If it was a Unix-style definition
$def =~ /='(.*)'$/=$1/; # then remove shell-protection ''
$def =~ /^'(.*)'$/$1/; # from entire term or argument
$def =~ s/='(.*)'$/=$1/; # then remove shell-protection ''
$def =~ s/^'(.*)'$/$1/; # from entire term or argument
}
if ($def =~ /=/) {
$def =~ s/"/""/g; # Protect existing " from DCL
Expand Down Expand Up @@ -1590,7 +1598,19 @@ clean ::
';

my(@otherfiles) = values %{$self->{XS}}; # .c files from *.xs files
push(@otherfiles, $attribs{FILES}) if $attribs{FILES};
# Unlink realclean, $attribs{FILES} is a string here; it may contain
# a list or a macro that expands to a list.
if ($attribs{FILES}) {
my($word,$key,@filist);
if (ref $attribs{FILES} eq 'ARRAY') { @filist = @{$attribs{FILES}}; }
else { @filist = split /\s+/, $attribs{FILES}; }
foreach $word (@filist) {
if (($key) = $word =~ m#^\$\((.*)\)$# and ref $self->{$key} eq 'ARRAY') {
push(@otherfiles, @{$self->{$key}});
}
else { push(@otherfiles, $attribs{FILES}); }
}
}
push(@otherfiles, qw[ blib $(MAKE_APERL_FILE) extralibs.ld perlmain.c pm_to_blib.ts ]);
push(@otherfiles,$self->catfile('$(INST_ARCHAUTODIR)','extralibs.all'));
my($file,$line);
Expand Down Expand Up @@ -1649,9 +1669,18 @@ realclean :: clean
else { $line .= " $file"; }
}
push @m, "\t\$(RM_F) $line\n" if $line;
if ($attribs{FILES} && ref $attribs{FILES} eq 'ARRAY') {
if ($attribs{FILES}) {
my($word,$key,@filist,@allfiles);
if (ref $attribs{FILES} eq 'ARRAY') { @filist = @{$attribs{FILES}}; }
else { @filist = split /\s+/, $attribs{FILES}; }
foreach $word (@filist) {
if (($key) = $word =~ m#^\$\((.*)\)$# and ref $self->{$key} eq 'ARRAY') {
push(@allfiles, @{$self->{$key}});
}
else { push(@allfiles, $attribs{FILES}); }
}
$line = '';
foreach $file (@{$attribs{'FILES'}}) {
foreach $file (@allfiles) {
$file = $self->fixpath($file);
if (length($line) + length($file) > 80) {
push @m, "\t\$(RM_RF) $line\n";
Expand Down Expand Up @@ -1681,7 +1710,7 @@ distcheck :
$(PERL) "-I$(PERL_ARCHLIB)" "-I$(PERL_LIB)" -e "use ExtUtils::Manifest \'&fullcheck\'; fullcheck()"
skipcheck :
$(PERL) "-I$(PERL_ARCHLIB)" "-I$(PERL_LIB)" -e "use ExtUtils::Manifest \'&fullcheck\'; skipcheck()"
$(PERL) "-I$(PERL_ARCHLIB)" "-I$(PERL_LIB)" -e "use ExtUtils::Manifest \'&skipcheck\'; skipcheck()"
manifest :
$(PERL) "-I$(PERL_ARCHLIB)" "-I$(PERL_LIB)" -e "use ExtUtils::Manifest \'&mkmanifest\'; mkmanifest()"
Expand Down Expand Up @@ -1810,7 +1839,7 @@ pure__install : pure_site_install
$(NOECHO) $(SAY) "INSTALLDIRS not defined, defaulting to INSTALLDIRS=site"
doc__install : doc_site_install
$(NOECHO} $(SAY) "INSTALLDIRS not defined, defaulting to INSTALLDIRS=site"
$(NOECHO) $(SAY) "INSTALLDIRS not defined, defaulting to INSTALLDIRS=site"
# This hack brought to you by DCL's 255-character command line limit
pure_perl_install ::
Expand Down
6 changes: 2 additions & 4 deletions lib/ExtUtils/xsubpp
Expand Up @@ -1295,8 +1295,6 @@ sub map_type {


sub Exit {
# If this is VMS, the exit status has meaning to the shell, so we
# use a predictable value (SS$_Normal or SS$_Abort) rather than an
# arbitrary number.
exit ($Is_VMS ? ($errors ? 44 : 1) : $errors) ;
# VMS error exit: SS$_ABORT.
exit $errors ? ($Is_VMS ? 44 : 1) : 0;
}
4 changes: 3 additions & 1 deletion lib/diagnostics.pm
Expand Up @@ -313,7 +313,9 @@ EOFUNC
}
next;
}
$header = $1;

# strip formatting directives in =item line
($header = $1) =~ s/[A-Z]<(.*?)>/$1/g;

if ($header =~ /%[sd]/) {
$rhs = $lhs = $header;
Expand Down

0 comments on commit 4fdae80

Please sign in to comment.