summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGurusamy Sarathy <gsar@cpan.org>1998-06-24 12:40:13 +0000
committerGurusamy Sarathy <gsar@cpan.org>1998-06-24 12:40:13 +0000
commitb9ac3b5bccebb018cd8247aa730731b1cbd8a6d4 (patch)
tree50f4e7ba591f510d684b70b66c647234686fa720
parent9666903d92ab8cdd420a0bc714d5c94ce051cb2c (diff)
downloadperl-b9ac3b5bccebb018cd8247aa730731b1cbd8a6d4.tar.gz
check in what change#1182 didn't, and Changes
p4raw-link: @1182 on //depot/perl: c7c9307cc294d88bccf6b755e886fdee7d955ee0 p4raw-id: //depot/perl@1212
-rw-r--r--Changes121
-rw-r--r--pod/perlre.pod30
-rw-r--r--pod/perlvar.pod6
3 files changed, 157 insertions, 0 deletions
diff --git a/Changes b/Changes
index 2f0978fae1..48fee64014 100644
--- a/Changes
+++ b/Changes
@@ -69,6 +69,127 @@ Version 5.004_68 Developer release working toward 5.005
----------------
____________________________________________________________________________
+[ 1207] By: gsar on 1998/06/23 10:55:05
+ Log: final touches to 5.004_68
+ Branch: perl
+ ! perl.c
+____________________________________________________________________________
+[ 1206] By: gsar on 1998/06/23 10:50:10
+ Log: more MULTIPLICITY tweaks
+ Branch: perl
+ ! objpp.h perl.c perl.h proto.h win32/GenCAPI.pl win32/config.bc
+ ! win32/config.gc win32/config.vc win32/config_H.bc
+ ! win32/config_H.gc win32/config_H.vc
+____________________________________________________________________________
+[ 1205] By: gsar on 1998/06/23 09:03:46
+ Log: partial MULTIPLICITY cleanup
+ Branch: perl
+ ! embedvar.h interp.sym intrpvar.h perl.c perlvars.h proto.h
+ ! thrdvar.h
+____________________________________________________________________________
+[ 1204] By: gsar on 1998/06/23 09:00:48
+ Log: tweak MANIFEST, add Dev_t to POSIX/typemap
+ Branch: perl
+ ! MANIFEST Porting/makerel README.win32 ext/POSIX/typemap
+____________________________________________________________________________
+[ 1203] By: gsar on 1998/06/23 07:08:02
+ Log: bump patchlevel to 68, Porting/makerel tweaks
+ Branch: perl
+ ! Porting/makerel patchlevel.h win32/Makefile win32/config_H.bc
+ ! win32/config_H.gc win32/config_H.vc win32/makefile.mk
+____________________________________________________________________________
+[ 1202] By: gsar on 1998/06/23 06:16:19
+ Log: remove atomic.h pending resolution of licensing issues,
+ EMULATE_ATOMIC_REFCOUNTS everywhere
+ Branch: perl
+ - atomic.h
+ ! MANIFEST perl.h sv.h
+____________________________________________________________________________
+[ 1201] By: gsar on 1998/06/23 06:06:23
+ Log: applied patch, regen headers
+ From: Ilya Zakharevich <ilya@math.ohio-state.edu>
+ Message-Id: <199806220819.EAA03295@monk.mps.ohio-state.edu>
+ Subject: [PATCH 5.004_67] Malloc size feedback
+ Date: Mon, 22 Jun 1998 04:19:45 -0400 (EDT)
+ Branch: perl
+ ! ObjXSub.h av.c embed.h global.sym hv.c malloc.c objpp.h perl.c
+ ! pp_sys.c proto.h sv.c toke.c
+____________________________________________________________________________
+[ 1200] By: gsar on 1998/06/23 05:59:09
+ Log: Message-Id: <m0yoIgR-000EP2C@alias-2.pr.mcs.net>
+ Date: Mon, 22 Jun 1998 21:19:43 -0500 (CDT)
+ From: Stephen McCamant <alias@mcs.com>
+ Subject: [PATCH] Inheritance of B:: classes
+ Branch: perl
+ ! ext/B/B.pm
+____________________________________________________________________________
+[ 1199] By: gsar on 1998/06/23 05:57:58
+ Log: applied patch, moved #define mkfifo ... from perl.h to POSIX.xs
+ Date: Tue, 23 Jun 1998 00:01:02 +0300 (EET DST)
+ Message-Id: <199806222101.AAA16456@alpha.hut.fi>
+ Subject: [PATCH] _67: somebody said POSIX::mknod?
+ From: Jarkko Hietaniemi <jhi@iki.fi>
+ Branch: perl
+ ! Configure config_h.SH ext/POSIX/POSIX.pm ext/POSIX/POSIX.pod
+ ! ext/POSIX/POSIX.xs perl.h
+____________________________________________________________________________
+[ 1198] By: gsar on 1998/06/23 05:48:56
+ Log: Date: Mon, 22 Jun 1998 14:10:46 -0600 (MDT)
+ From: Daniel Grisinger <dgris@perrin.dimensional.com>
+ Subject: PATCH [5.004_67] perldoc.PL
+ Message-ID: <Pine.LNX.3.96.980622135953.10412A-100000@perrin.dimensional.com>
+ Branch: perl
+ ! utils/perldoc.PL
+____________________________________________________________________________
+[ 1197] By: gsar on 1998/06/23 05:47:24
+ Log: Message-Id: <3.0.5.32.19980622092918.00aa46e0@ous.edu>
+ Date: Mon, 22 Jun 1998 09:29:18 -0700
+ From: Dan Sugalski <sugalskd@ous.edu>
+ Subject: [PATCH 5.004_67] Autosplit's not qite case-insensitive enough on VMS
+ Branch: perl
+ ! lib/AutoSplit.pm
+____________________________________________________________________________
+[ 1196] By: gsar on 1998/06/23 05:45:19
+ Log: Date: Mon, 22 Jun 1998 18:58:55 +0300 (EET DST)
+ Message-Id: <199806221558.SAA18626@alpha.hut.fi>
+ Subject: [PATCH] 5.004_67: Fcntl: add few constants, enhance maintainability
+ From: Jarkko Hietaniemi <jhi@iki.fi>
+ Branch: perl
+ ! ext/Fcntl/Fcntl.pm ext/Fcntl/Fcntl.xs
+____________________________________________________________________________
+[ 1195] By: gsar on 1998/06/23 05:43:32
+ Log: Message-Id: <v03110700b1b41e1760b2@[195.95.102.55]>
+ Date: Mon, 22 Jun 1998 15:22:24 +0000
+ From: Dominic Dunlop <domo@vo.lu>
+ Subject: [PATCH 5.004_67] Amend tests/regexp.t for variable REG_INFTY;
+ update machten.sh to vary REG_INFTY
+ Branch: perl
+ ! hints/machten.sh t/op/re_tests t/op/regexp.t
+____________________________________________________________________________
+[ 1194] By: gsar on 1998/06/23 05:38:36
+ Log: filter out array subscripts when generating symbols for AIX
+ Date: Mon, 22 Jun 1998 12:14:31 +0300 (EET DST)
+ Message-Id: <199806220914.MAA13631@alpha.hut.fi>
+ Subject: [PATCH] 5.004_67: perl.exp bug, AIX unhappy
+ From: Jarkko Hietaniemi <jhi@iki.fi>
+ Branch: perl
+ ! perl_exp.SH
+____________________________________________________________________________
+[ 1193] By: gsar on 1998/06/23 05:32:52
+ Log: updated hints file to cope with buggy sigsetjmp() on Solaris-x86
+ Message-Id: <199806221102.NAA12106@alanya.m.isar.de>
+ Date: Mon, 22 Jun 1998 13:02:45 +0200 (MET DST)
+ From: Lupe Christoph <lupe@alanya.m.isar.de>
+ Subject: Re: Perl 5.004_67: Death is on vacation - miniperl can't die
+ Branch: perl
+ ! hints/solaris_2.sh
+____________________________________________________________________________
+[ 1192] By: gsar on 1998/06/23 05:27:13
+ Log: add detailed changelogs and 'genlog'--the script which generates them
+ Branch: perl
+ + Porting/genlog
+ ! Changes INSTALL
+____________________________________________________________________________
[ 1191] By: gsar on 1998/06/22 15:56:27
Log: tweak win32 makefiles for PERL_OBJECT build
Branch: perl
diff --git a/pod/perlre.pod b/pod/perlre.pod
index b8c566228a..ebd58582d0 100644
--- a/pod/perlre.pod
+++ b/pod/perlre.pod
@@ -329,6 +329,36 @@ Experimental "evaluate any Perl code" zero-width assertion. Always
succeeds. C<code> is not interpolated. Currently the rules to
determine where the C<code> ends are somewhat convoluted.
+The C<code> is properly scoped in the following sense: if the assertion
+is backtracked (compare L<"Backtracking">), all the changes introduced after
+C<local>isation are undone, so
+
+ $_ = 'a' x 8;
+ m<
+ (?{ $cnt = 0 }) # Initialize $cnt.
+ (
+ a
+ (?{
+ local $cnt = $cnt + 1; # Update $cnt, backtracking-safe.
+ })
+ )*
+ aaaa
+ (?{ $res = $cnt }) # On success copy to non-localized
+ # location.
+ >x;
+
+will set C<$res = 4>. Note that after the match $cnt returns to the globally
+introduced value 0, since the scopes which restrict C<local> statements
+are unwound.
+
+This assertion may be used as L<C<(?(condition)yes-pattern|no-pattern)>>
+switch. If I<not> used in this way, the result of evaluation of C<code>
+is put into variable $^R. This happens immediately, so $^R can be used from
+other C<(?{ code })> assertions inside the same regular expression.
+
+The above assignment to $^R is properly localized, thus the old value of $^R
+is restored if the assertion is backtracked (compare L<"Backtracking">).
+
B<WARNING>: This is a grave security risk for arbitrarily interpolated
patterns. It introduces security holes in previously safe programs.
A fix to Perl, and to this documentation, will be forthcoming prior
diff --git a/pod/perlvar.pod b/pod/perlvar.pod
index d10fe35cbd..2ed3e97f77 100644
--- a/pod/perlvar.pod
+++ b/pod/perlvar.pod
@@ -717,6 +717,12 @@ Start with single-step on.
Note that some bits may be relevent at compile-time only, some at
run-time only. This is a new mechanism and the details may change.
+=item $^R
+
+The result of evaluation of the last successful L<perlre/C<(?{ code })>>
+regular expression assertion. (Excluding those used as switches.) May
+be written to.
+
=item $^S
Current state of the interpreter. Undefined if parsing of the current