From: Gurusamy Sarathy Date: Wed, 24 Jun 1998 12:40:13 +0000 (+0000) Subject: check in what change#1182 didn't, and Changes X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=b9ac3b5bccebb018cd8247aa730731b1cbd8a6d4;p=p5sagit%2Fp5-mst-13.2.git check in what change#1182 didn't, and Changes p4raw-link: @1182 on //depot/perl: c7c9307cc294d88bccf6b755e886fdee7d955ee0 p4raw-id: //depot/perl@1212 --- diff --git a/Changes b/Changes index 2f0978f..48fee64 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 + 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: + Date: Mon, 22 Jun 1998 21:19:43 -0500 (CDT) + From: Stephen McCamant + 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 + 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 + Subject: PATCH [5.004_67] perldoc.PL + Message-ID: + 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 + 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 + Branch: perl + ! ext/Fcntl/Fcntl.pm ext/Fcntl/Fcntl.xs +____________________________________________________________________________ +[ 1195] By: gsar on 1998/06/23 05:43:32 + Log: Message-Id: + Date: Mon, 22 Jun 1998 15:22:24 +0000 + From: Dominic Dunlop + 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 + 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 + 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 b8c5662..ebd5858 100644 --- a/pod/perlre.pod +++ b/pod/perlre.pod @@ -329,6 +329,36 @@ Experimental "evaluate any Perl code" zero-width assertion. Always succeeds. C is not interpolated. Currently the rules to determine where the C ends are somewhat convoluted. +The C is properly scoped in the following sense: if the assertion +is backtracked (compare L<"Backtracking">), all the changes introduced after +Cisation 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 statements +are unwound. + +This assertion may be used as L> +switch. If I used in this way, the result of evaluation of C +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: 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 d10fe35..2ed3e97 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> +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