summaryrefslogtreecommitdiff
path: root/pod
diff options
context:
space:
mode:
authorRafael Garcia-Suarez <rgarciasuarez@gmail.com>2003-06-13 19:17:50 +0000
committerRafael Garcia-Suarez <rgarciasuarez@gmail.com>2003-06-13 19:17:50 +0000
commitf02c194e1a40f11d020685cd18b41e5261091b12 (patch)
tree37863ea19d4769893b861e11cb30b0215621246d /pod
parentcff1be36840a17022b50a6f295ed97efe19b975e (diff)
downloadperl-f02c194e1a40f11d020685cd18b41e5261091b12.tar.gz
Remove the deprecated $* variable.
Incidentally, this fixes bug #22354, about unwanted action-at-distance of the /m regexp modifier. Add a new warning to advertise this fact. p4raw-id: //depot/perl@19769
Diffstat (limited to 'pod')
-rw-r--r--pod/perldelta.pod9
-rw-r--r--pod/perldiag.pod13
-rw-r--r--pod/perlre.pod12
-rw-r--r--pod/perlvar.pod20
4 files changed, 16 insertions, 38 deletions
diff --git a/pod/perldelta.pod b/pod/perldelta.pod
index 8704322575..444dcf9e26 100644
--- a/pod/perldelta.pod
+++ b/pod/perldelta.pod
@@ -9,6 +9,11 @@ the 5.9.0 release.
=head1 Incompatible Changes
+=head2 The C<$*> variable has been removed
+
+C<$*>, which was deprecated in favor of the C</s> and C</m> regexp
+modifiers, has been removed.
+
=head1 Core Enhancements
=head2 Tied Arrays with Negative Array Indices
@@ -48,8 +53,8 @@ C<EXISTS>, and C<DELETE> unchanged.
If you find what you think is a bug, you might check the articles
recently posted to the comp.lang.perl.misc newsgroup and the perl
-bug database at http://bugs.perl.org/ . There may also be
-information at http://www.perl.com/ , the Perl Home Page.
+bug database at F<http://bugs.perl.org/>. There may also be
+information at F<http://www.perl.com/>, the Perl Home Page.
If you believe you have an unreported bug, please run the B<perlbug>
program included with your release. Be sure to trim your bug down
diff --git a/pod/perldiag.pod b/pod/perldiag.pod
index 4d9501644b..0669db62c3 100644
--- a/pod/perldiag.pod
+++ b/pod/perldiag.pod
@@ -1640,6 +1640,12 @@ supposed to follow something: a template character or a ()-group.
to have existed already, but for some reason it didn't, and had to be
created on an emergency basis to prevent a core dump.
+=item $* has been removed
+
+(D deprecated) The special variable C<$*>, deprecated in older perls, has
+been removed as of 5.9.0 and is no longer supported. You should use the
+C<//m> and C<//s> regexp modifiers instead.
+
=item Hash %%s missing the % in argument %d of %s()
(D deprecated) Really old Perl let you omit the % on hash names in some
@@ -4225,13 +4231,6 @@ C<use AutoLoader 'AUTOLOAD';>.
(F) You attempted to use a feature of printf that is accessible from
only C. This usually means there's a better way to do it in Perl.
-=item Use of $* is deprecated
-
-(D deprecated) This variable magically turned on multi-line pattern
-matching, both for you and for any luckless subroutine that you happen
-to call. You should use the new C<//m> and C<//s> modifiers now to do
-that without the dangerous action-at-a-distance effects of C<$*>.
-
=item Use of $# is deprecated
(D deprecated) This was an ill-advised attempt to emulate a poorly
diff --git a/pod/perlre.pod b/pod/perlre.pod
index 17a94252cf..a11e3e833b 100644
--- a/pod/perlre.pod
+++ b/pod/perlre.pod
@@ -41,11 +41,7 @@ line anywhere within the string.
Treat string as single line. That is, change "." to match any character
whatsoever, even a newline, which normally it would not match.
-The C</s> and C</m> modifiers both override the C<$*> setting. That
-is, no matter what C<$*> contains, C</s> without C</m> will force
-"^" to match only at the beginning of the string and "$" to match
-only at the end (or just before a newline at the end) of the string.
-Together, as /ms, they let the "." match any character whatsoever,
+Used together, as /ms, they let the "." match any character whatsoever,
while still allowing "^" and "$" to match, respectively, just after
and just before newlines within the string.
@@ -103,13 +99,11 @@ string as a multi-line buffer, such that the "^" will match after any
newline within the string, and "$" will match before any newline. At the
cost of a little more overhead, you can do this by using the /m modifier
on the pattern match operator. (Older programs did this by setting C<$*>,
-but this practice is now deprecated.)
+but this practice has been removed in perl 5.9.)
To simplify multi-line substitutions, the "." character never matches a
newline unless you use the C</s> modifier, which in effect tells Perl to pretend
-the string is a single line--even if it isn't. The C</s> modifier also
-overrides the setting of C<$*>, in case you have some (badly behaved) older
-code that sets it in another module.
+the string is a single line--even if it isn't.
The following standard quantifiers are recognized:
diff --git a/pod/perlvar.pod b/pod/perlvar.pod
index 3b9ed060af..6e2a853007 100644
--- a/pod/perlvar.pod
+++ b/pod/perlvar.pod
@@ -294,26 +294,6 @@ past where $2 ends, and so on. You can use C<$#+> to determine
how many subgroups were in the last successful match. See the
examples given for the C<@-> variable.
-=item $MULTILINE_MATCHING
-
-=item $*
-
-Set to a non-zero integer value to do multi-line matching within a
-string, 0 (or undefined) to tell Perl that it can assume that strings
-contain a single line, for the purpose of optimizing pattern matches.
-Pattern matches on strings containing multiple newlines can produce
-confusing results when C<$*> is 0 or undefined. Default is undefined.
-(Mnemonic: * matches multiple things.) This variable influences the
-interpretation of only C<^> and C<$>. A literal newline can be searched
-for even when C<$* == 0>.
-
-Use of C<$*> is deprecated in modern Perl, supplanted by
-the C</s> and C</m> modifiers on pattern matching.
-
-Assigning a non-numerical value to C<$*> triggers a warning (and makes
-C<$*> act if C<$* == 0>), while assigning a numerical value to C<$*>
-makes that an implicit C<int> is applied on the value.
-
=item HANDLE->input_line_number(EXPR)
=item $INPUT_LINE_NUMBER