diff options
-rw-r--r-- | pod/perldata.pod | 2 | ||||
-rw-r--r-- | pod/perldebug.pod | 4 | ||||
-rw-r--r-- | pod/perlebcdic.pod | 2 | ||||
-rw-r--r-- | pod/perlembed.pod | 4 | ||||
-rw-r--r-- | pod/perlform.pod | 2 | ||||
-rw-r--r-- | pod/perlguts.pod | 20 | ||||
-rw-r--r-- | pod/perllocale.pod | 34 | ||||
-rw-r--r-- | pod/perlmodinstall.pod | 2 | ||||
-rw-r--r-- | pod/perlnumber.pod | 2 | ||||
-rw-r--r-- | pod/perlobj.pod | 2 | ||||
-rw-r--r-- | pod/perlop.pod | 22 | ||||
-rw-r--r-- | pod/perlpacktut.pod | 4 | ||||
-rw-r--r-- | pod/perlport.pod | 10 | ||||
-rw-r--r-- | pod/perlre.pod | 14 | ||||
-rw-r--r-- | pod/perlreguts.pod | 2 | ||||
-rw-r--r-- | pod/perlretut.pod | 2 | ||||
-rw-r--r-- | pod/perlrun.pod | 2 | ||||
-rw-r--r-- | pod/perlsub.pod | 6 |
18 files changed, 68 insertions, 68 deletions
diff --git a/pod/perldata.pod b/pod/perldata.pod index a285eb7d43..66bb206133 100644 --- a/pod/perldata.pod +++ b/pod/perldata.pod @@ -25,7 +25,7 @@ be a chain of identifiers, separated by C<::> (or by the slightly archaic C<'>); all but the last are interpreted as names of packages, to locate the namespace in which to look up the final identifier (see L<perlmod/Packages> for details). For a more in-depth discussion -on identifiers, see L<Identifier parsing>. It's possible to +on identifiers, see L</Identifier parsing>. It's possible to substitute for a simple identifier, an expression that produces a reference to the value at runtime. This is described in more detail below and in L<perlref>. diff --git a/pod/perldebug.pod b/pod/perldebug.pod index 5762235aa9..7c80db3140 100644 --- a/pod/perldebug.pod +++ b/pod/perldebug.pod @@ -126,7 +126,7 @@ hashes, you'll probably prefer 'x \%h' rather than 'x %h'. See L<Dumpvalue> if you'd like to do this yourself. The output format is governed by multiple options described under -L<"Configurable Options">. +L</"Configurable Options">. If the C<maxdepth> is included, it must be a numeral I<N>; the value is dumped only I<N> levels deep, as if the C<dumpDepth> option had been @@ -474,7 +474,7 @@ For historical reasons, the C<=value> is optional, but defaults to 1 only where it is safe to do so--that is, mostly for Boolean options. It is always better to assign a specific value using C<=>. The C<option> can be abbreviated, but for clarity probably should -not be. Several options can be set together. See L<"Configurable Options"> +not be. Several options can be set together. See L</"Configurable Options"> for a list of these. =item < ? diff --git a/pod/perlebcdic.pod b/pod/perlebcdic.pod index a53879c796..6dd8e10c4a 100644 --- a/pod/perlebcdic.pod +++ b/pod/perlebcdic.pod @@ -1752,7 +1752,7 @@ and vice versa. Internationalization (I18N) and localization (L10N) are supported at least in principle even on EBCDIC platforms. The details are system-dependent -and discussed under the L<OS ISSUES> section below. +and discussed under the L</OS ISSUES> section below. =head1 MULTI-OCTET CHARACTER SETS diff --git a/pod/perlembed.pod b/pod/perlembed.pod index 596f28781a..7bc7a8c36e 100644 --- a/pod/perlembed.pod +++ b/pod/perlembed.pod @@ -118,7 +118,7 @@ Execute this statement for a hint about where to find CORE: perl -MConfig -e 'print $Config{archlib}' Here's how you'd compile the example in the next section, -L<Adding a Perl interpreter to your C program>, on my Linux box: +L</Adding a Perl interpreter to your C program>, on my Linux box: % gcc -O2 -Dbool=char -DHAS_BOOL -I/usr/local/include -I/usr/local/lib/perl5/i586-linux/5.003/CORE @@ -297,7 +297,7 @@ If you want to pass arguments to the Perl subroutine, you can add strings to the C<NULL>-terminated C<args> list passed to I<call_argv>. For other data types, or to examine return values, you'll need to manipulate the Perl stack. That's demonstrated in -L<Fiddling with the Perl stack from your C program>. +L</Fiddling with the Perl stack from your C program>. =head2 Evaluating a Perl statement from your C program diff --git a/pod/perlform.pod b/pod/perlform.pod index 84b6fc59df..1a57b5fc10 100644 --- a/pod/perlform.pod +++ b/pod/perlform.pod @@ -169,7 +169,7 @@ characters B<without> an embedded "."), the character used for the decimal point is determined by the current LC_NUMERIC locale if C<use locale> is in effect. This means that, if, for example, the run-time environment happens to specify a German locale, "," will be used instead of the default ".". See -L<perllocale> and L<"WARNINGS"> for more information. +L<perllocale> and L</"WARNINGS"> for more information. =head2 Using Fill Mode diff --git a/pod/perlguts.pod b/pod/perlguts.pod index 42ebb8df22..cd843a0424 100644 --- a/pod/perlguts.pod +++ b/pod/perlguts.pod @@ -103,7 +103,7 @@ important. Note that this function requires you to specify the length of the format. The C<sv_set*()> functions are not generic enough to operate on values -that have "magic". See L<Magic Virtual Tables> later in this document. +that have "magic". See L</Magic Virtual Tables> later in this document. All SVs that contain strings should be terminated with a C<NUL> character. If it is not C<NUL>-terminated there is a risk of @@ -252,7 +252,7 @@ SV with the string stored in the second SV. It also forces the second SV to be interpreted as a string. The C<sv_cat*()> functions are not generic enough to operate on values that -have "magic". See L<Magic Virtual Tables> later in this document. +have "magic". See L</Magic Virtual Tables> later in this document. If you know the name of a scalar variable, you can get a pointer to its SV by using the following: @@ -282,7 +282,7 @@ But won't work when called as: So to repeat always use SvOK() to check whether an sv is defined. Also you have to be careful when using C<&PL_sv_undef> as a value in -AVs or HVs (see L<AVs, HVs and undefined values>). +AVs or HVs (see L</AVs, HVs and undefined values>). There are also the two values C<PL_sv_yes> and C<PL_sv_no>, which contain boolean TRUE and FALSE values, respectively. Like C<PL_sv_undef>, their @@ -304,7 +304,7 @@ bus error, or just weird results. Change the zero to C<&PL_sv_undef> in the first line and all will be well. To free an SV that you've created, call C<SvREFCNT_dec(SV*)>. Normally this -call is not necessary (see L<Reference Counts and Mortality>). +call is not necessary (see L</Reference Counts and Mortality>). =head2 Offsets @@ -461,7 +461,7 @@ by using the following: This returns NULL if the variable does not exist. -See L<Understanding the Magic of Tied Hashes and Arrays> for more +See L</Understanding the Magic of Tied Hashes and Arrays> for more information on how to use the array access functions on tied arrays. =head2 Working with HVs @@ -545,7 +545,7 @@ The exact implementation of this macro varies by architecture and version of perl, and the return value may change per invocation, so the value is only valid for the duration of a single perl process. -See L<Understanding the Magic of Tied Hashes and Arrays> for more +See L</Understanding the Magic of Tied Hashes and Arrays> for more information on how to use the hash access functions on tied hashes. =head2 Hash API Extensions @@ -702,7 +702,7 @@ A reference can be blessed into a package with the following function: The C<sv> argument must be a reference value. The C<stash> argument specifies which class the reference will belong to. See -L<Stashes and Globs> for information on converting class names into stashes. +L</Stashes and Globs> for information on converting class names into stashes. /* Still under construction */ @@ -1076,7 +1076,7 @@ to contain an C<SV*> and is stored as-is with its REFCNT incremented. The sv_magic function uses C<how> to determine which, if any, predefined "Magic Virtual Table" should be assigned to the C<mg_virtual> field. -See the L<Magic Virtual Tables> section below. The C<how> argument is also +See the L</Magic Virtual Tables> section below. The C<how> argument is also stored in the C<mg_type> field. The value of C<how> should be chosen from the set of macros C<PERL_MAGIC_foo> found in F<perl.h>. Note that before @@ -1371,7 +1371,7 @@ creates a second hash which it blesses into the class which will implement the tie methods. Lastly it ties the two hashes together, and returns a reference to the new tied hash. Note that the code below does NOT call the TIEHASH method in the MyTie class - -see L<Calling Perl Routines from within C Programs> for details on how +see L</Calling Perl Routines from within C Programs> for details on how to do this. SV* @@ -1733,7 +1733,7 @@ reuse specially assigned SVs (I<target>s) which are (as a corollary) not constantly freed/created. Each of the targets is created only once (but see -L<Scratchpads and recursion> below), and when an opcode needs to put +L</Scratchpads and recursion> below), and when an opcode needs to put an integer, a double, or a string on stack, it just sets the corresponding parts of its I<target> and puts the I<target> on stack. diff --git a/pod/perllocale.pod b/pod/perllocale.pod index 369f8dc1d1..dee4cb53e6 100644 --- a/pod/perllocale.pod +++ b/pod/perllocale.pod @@ -144,7 +144,7 @@ C<define>. If you want a Perl application to process and present your data according to a particular locale, the application code should include -the S<C<use locale>> pragma (see L<The "use locale" pragma>) where +the S<C<use locale>> pragma (see L</The "use locale" pragma>) where appropriate, and B<at least one> of the following must be true: =over 4 @@ -158,7 +158,7 @@ by yourself or by whomever set up your system account; or =item 2 B<The application must set its own locale> using the method described in -L<The setlocale function>. +L</The setlocale function>. =back @@ -336,7 +336,7 @@ the outer scope's rules at the end of the inner scope. The string result of any operation that uses locale information is tainted, as it is possible for a locale to be -untrustworthy. See L<"SECURITY">. +untrustworthy. See L</"SECURITY">. Starting in Perl v5.16 in a very limited way, and more generally in v5.22, you can restrict which category or categories are enabled by this @@ -592,8 +592,8 @@ than the C<PERL_BADLANG> approach, but setting C<LC_ALL> (or other locale variables) may affect other programs as well, not just Perl. In particular, external programs run from within Perl will see these changes. If you make the new settings permanent (read on), all -programs you run see the changes. See L<"ENVIRONMENT"> for -the full list of relevant environment variables and L<USING LOCALES> +programs you run see the changes. See L</"ENVIRONMENT"> for +the full list of relevant environment variables and L</"USING LOCALES"> for their effects in Perl. Effects in other programs are easily deducible. For example, the variable C<LC_COLLATE> may well affect your B<sort> program (or whatever the program that arranges "records" @@ -627,7 +627,7 @@ fix the misconfiguration of your own environment variables. The mis(sing)configuration of the whole system's locales usually requires the help of your friendly system administrator. -First, see earlier in this document about L<Finding locales>. That tells +First, see earlier in this document about L</Finding locales>. That tells how to find which locales are really supported--and more importantly, installed--on your system. In our example error message, environment variables affecting the locale are listed in the order of decreasing @@ -639,7 +639,7 @@ Second, if using the listed commands you see something B<exactly> (prefix matches do not count and case usually counts) like "En_US" without the quotes, then you should be okay because you are using a locale name that should be installed and available in your system. -In this case, see L<Permanently fixing your system's locale configuration>. +In this case, see L</Permanently fixing your system's locale configuration>. =head2 Permanently fixing your system's locale configuration @@ -656,14 +656,14 @@ the same. In this case, try running under a locale that you can list and which somehow matches what you tried. The rules for matching locale names are a bit vague because standardization is weak in this area. See again the -L<Finding locales> about general rules. +L</Finding locales> about general rules. =head2 Fixing system locale configuration Contact a system administrator (preferably your own) and report the exact error message you get, and ask them to read this same documentation you are now reading. They should be able to check whether there is something -wrong with the locale configuration of the system. The L<Finding locales> +wrong with the locale configuration of the system. The L</Finding locales> section is unfortunately a bit vague about the exact commands and places because these things are not that standardized. @@ -675,7 +675,7 @@ underlying C<LC_NUMERIC> and C<LC_MONETARY> locales (regardless of whether called from within the scope of C<S<use locale>> or not). (If you just want the name of the current locale for a particular category, use C<POSIX::setlocale()> -with a single parameter--see L<The setlocale function>.) +with a single parameter--see L</The setlocale function>.) use POSIX qw(locale_h); @@ -768,7 +768,7 @@ See L<I18N::Langinfo> for more information. The following subsections describe basic locale categories. Beyond these, some combination categories allow manipulation of more than one -basic category at a time. See L<"ENVIRONMENT"> for a discussion of these. +basic category at a time. See L</"ENVIRONMENT"> for a discussion of these. =head2 Category C<LC_COLLATE>: Collation: Text Comparisons and Sorting @@ -804,7 +804,7 @@ locale>> has appeared earlier in the same block) must be used for sorting raw binary data, whereas the locale-dependent collation of the first example is useful for natural text. -As noted in L<USING LOCALES>, C<cmp> compares according to the current +As noted in L</USING LOCALES>, C<cmp> compares according to the current collation locale when C<use locale> is in effect, but falls back to a char-by-char comparison for strings that the locale says are equal. You can use C<POSIX::strcoll()> if you don't want this fall-back: @@ -952,7 +952,7 @@ B<Note:> A broken or malicious C<LC_CTYPE> locale definition may result in clearly ineligible characters being considered to be alphanumeric by your application. For strict matching of (mundane) ASCII letters and digits--for example, in command strings--locale-aware applications -should use C<\w> with the C</a> regular expression modifier. See L<"SECURITY">. +should use C<\w> with the C</a> regular expression modifier. See L</"SECURITY">. =head2 Category C<LC_NUMERIC>: Numeric Formatting @@ -963,7 +963,7 @@ of how numbers should be formatted for human readability. In most implementations the only effect is to change the character used for the decimal point--perhaps from "." to ",". The functions aren't aware of such niceties as thousands separation and -so on. (See L<The localeconv function> if you care about these things.) +so on. (See L</The localeconv function> if you care about these things.) use POSIX qw(strtod setlocale LC_NUMERIC); use locale; @@ -990,7 +990,7 @@ that is affected by its contents. (Those with experience of standards committees will recognize that the working group decided to punt on the issue.) Consequently, Perl essentially takes no notice of it. If you really want to use C<LC_MONETARY>, you can query its contents--see -L<The localeconv function>--and use the information that it returns in your +L</The localeconv function>--and use the information that it returns in your application's own formatting of currency amounts. However, you may well find that the information, voluminous and complex though it may be, still does not quite meet your requirements: currency formatting is a hard nut @@ -1363,10 +1363,10 @@ You could also exclude C<LC_NUMERIC>, if you don't need it, by Versions of Perl prior to 5.004 B<mostly> ignored locale information, generally behaving as if something similar to the C<"C"> locale were always in force, even if the program environment suggested otherwise -(see L<The setlocale function>). By default, Perl still behaves this +(see L</The setlocale function>). By default, Perl still behaves this way for backward compatibility. If you want a Perl application to pay attention to locale information, you B<must> use the S<C<use locale>> -pragma (see L<The "use locale" pragma>) or, in the unlikely event +pragma (see L</The "use locale" pragma>) or, in the unlikely event that you want to do so for just pattern matching, the C</l> regular expression modifier (see L<perlre/Character set modifiers>) to instruct it to do so. diff --git a/pod/perlmodinstall.pod b/pod/perlmodinstall.pod index f92620c6d6..5b7515b92d 100644 --- a/pod/perlmodinstall.pod +++ b/pod/perlmodinstall.pod @@ -196,7 +196,7 @@ Read the module's documentation, looking for reasons why you might have trouble using it with MacPerl. Look for F<.xs> and F<.c> files, which normally denote that the distribution must be compiled, and you cannot install it "out of the box." -(See L<"PORTABILITY">.) +(See L</"PORTABILITY">.) D. INSTALL diff --git a/pod/perlnumber.pod b/pod/perlnumber.pod index ffe3ed5b43..d77fe68458 100644 --- a/pod/perlnumber.pod +++ b/pod/perlnumber.pod @@ -59,7 +59,7 @@ numbers. (But realize that what we are discussing the rules for just the I<storage> of these numbers. The fact that you can store such "large" numbers does not mean that the I<operations> over these numbers will use all of the significant digits. -See L<"Numeric operators and numeric conversions"> for details.) +See L</"Numeric operators and numeric conversions"> for details.) In fact numbers stored in the native integer format may be stored either in the signed native form, or in the unsigned native form. Thus the limits diff --git a/pod/perlobj.pod b/pod/perlobj.pod index 6513d8a866..f5c6e0b264 100644 --- a/pod/perlobj.pod +++ b/pod/perlobj.pod @@ -131,7 +131,7 @@ documented methods on the object. Note, however, that (unlike most other OO languages) Perl does not ensure or enforce encapsulation in any way. If you want objects to actually I<be> opaque you need to arrange for that yourself. This can -be done in a variety of ways, including using L<"Inside-Out objects"> +be done in a variety of ways, including using L</"Inside-Out objects"> or modules from CPAN. =head3 Objects Are Blessed; Variables Are Not diff --git a/pod/perlop.pod b/pod/perlop.pod index 6bca9f7d71..365c962221 100644 --- a/pod/perlop.pod +++ b/pod/perlop.pod @@ -128,13 +128,13 @@ To do what you meant properly, you must write: print(($foo & 255) + 1, "\n"); -See L<Named Unary Operators> for more discussion of this. +See L</Named Unary Operators> for more discussion of this. Also parsed as terms are the S<C<do {}>> and S<C<eval {}>> constructs, as well as subroutine and method calls, and the anonymous constructors C<[]> and C<{}>. -See also L<Quote and Quote-like Operators> toward the end of this section, +See also L</Quote and Quote-like Operators> toward the end of this section, as well as L</"I/O Operators">. =head2 The Arrow Operator @@ -235,8 +235,8 @@ B<Argument "the string" isn't numeric in negation (-) at ...>. X<-> X<negation, arithmetic> Unary C<"~"> performs bitwise negation, that is, 1's complement. For -example, S<C<0666 & ~027>> is 0640. (See also L<Integer Arithmetic> and -L<Bitwise String Operators>.) Note that the width of the result is +example, S<C<0666 & ~027>> is 0640. (See also L</Integer Arithmetic> and +L</Bitwise String Operators>.) Note that the width of the result is platform-dependent: C<~0> is 32 bits wide on a 32-bit platform, but 64 bits wide on a 64-bit platform, so if you are expecting a certain bit width, remember to use the C<"&"> operator to mask off the excess bits. @@ -370,13 +370,13 @@ X<shl> X<shr> X<shift, right> X<shift, left> Binary C<<< "<<" >>> returns the value of its left argument shifted left by the number of bits specified by the right argument. Arguments should be -integers. (See also L<Integer Arithmetic>.) +integers. (See also L</Integer Arithmetic>.) Binary C<<< ">>" >>> returns the value of its left argument shifted right by the number of bits specified by the right argument. Arguments should -be integers. (See also L<Integer Arithmetic>.) +be integers. (See also L</Integer Arithmetic>.) -If S<C<use integer>> (see L<Integer Arithmetic>) is in force then +If S<C<use integer>> (see L</Integer Arithmetic>) is in force then signed C integers are used (I<arithmetic shift>), otherwise unsigned C integers are used (I<logical shift>), even for negative shiftees. In arithmetic right shift the sign bit is replicated on the left, @@ -443,7 +443,7 @@ parenthesis rule. That means, for example, that C<-f($file).".bak"> is equivalent to S<C<-f "$file.bak">>. X<-X> X<filetest> X<operator, filetest> -See also L<"Terms and List Operators (Leftward)">. +See also L</"Terms and List Operators (Leftward)">. =head2 Relational Operators X<relational operator> X<operator, relational> @@ -837,7 +837,7 @@ X<operator, bitwise, and> X<bitwise and> X<&> Binary C<"&"> returns its operands ANDed together bit by bit. Although no warning is currently raised, the result is not well defined when this operation is performed on operands that aren't either numbers (see -L<Integer Arithmetic>) nor bitstrings (see L<Bitwise String Operators>). +L</Integer Arithmetic>) nor bitstrings (see L</Bitwise String Operators>). Note that C<"&"> has lower priority than relational operators, so for example the parentheses are essential in a test like @@ -859,7 +859,7 @@ Binary C<"^"> returns its operands XORed together bit by bit. Although no warning is currently raised, the results are not well defined when these operations are performed on operands that aren't either -numbers (see L<Integer Arithmetic>) nor bitstrings (see L<Bitwise String +numbers (see L</Integer Arithmetic>) nor bitstrings (see L</Bitwise String Operators>). Note that C<"|"> and C<"^"> have lower priority than relational operators, so @@ -3322,7 +3322,7 @@ still get C<1.4142135623731> or so. Used on numbers, the bitwise operators (C<&> C<|> C<^> C<~> C<< << >> C<< >> >>) always produce integral results. (But see also -L<Bitwise String Operators>.) However, S<C<use integer>> still has meaning for +L</Bitwise String Operators>.) However, S<C<use integer>> still has meaning for them. By default, their results are interpreted as unsigned integers, but if S<C<use integer>> is in effect, their results are interpreted as signed integers. For example, C<~0> usually evaluates to a large diff --git a/pod/perlpacktut.pod b/pod/perlpacktut.pod index a710f20f3f..f40d1c2a93 100644 --- a/pod/perlpacktut.pod +++ b/pod/perlpacktut.pod @@ -459,7 +459,7 @@ or even: and pass C<$buf> to your send routine. Some protocols demand that the count should include the length of the count itself: then just add 4 -to the data length. (But make sure to read L<"Lengths and Widths"> before +to the data length. (But make sure to read L</"Lengths and Widths"> before you really code this!) @@ -487,7 +487,7 @@ obviously works for C<E<lt>>, where the "little end" touches the code. You will probably find these modifiers even more useful if you have to deal with big- or little-endian C structures. Be sure to read -L<"Packing and Unpacking C Structures"> for more on that. +L</"Packing and Unpacking C Structures"> for more on that. =head2 Floating point Numbers diff --git a/pod/perlport.pod b/pod/perlport.pod index 15d411c8eb..ffabf07182 100644 --- a/pod/perlport.pod +++ b/pod/perlport.pod @@ -67,9 +67,9 @@ The important thing is to decide where the code will run and to be deliberate in your decision. The material below is separated into three main sections: main issues of -portability (L<"ISSUES">), platform-specific issues (L<"PLATFORMS">), and +portability (L</"ISSUES">), platform-specific issues (L</"PLATFORMS">), and built-in Perl functions that behave differently on various ports -(L<"FUNCTION IMPLEMENTATIONS">). +(L</"FUNCTION IMPLEMENTATIONS">). This information should not be considered complete; it includes possibly transient information about idiosyncrasies of some of the ports, almost @@ -743,7 +743,7 @@ For those times when it is necessary to have platform-specific code, consider keeping the platform-specific code in one place, making porting to other platforms easier. Use the C<Config> module and the special variable C<$^O> to differentiate platforms, as described in -L<"PLATFORMS">. +L</"PLATFORMS">. Beware of the "else syndrome": @@ -892,7 +892,7 @@ scripts such as I<pl2bat.bat> or I<pl2cmd> to put wrappers around your scripts. Newline (C<\n>) is translated as C<\015\012> by STDIO when reading from -and writing to files (see L<"Newlines">). C<binmode(FILEHANDLE)> +and writing to files (see L</"Newlines">). C<binmode(FILEHANDLE)> will keep C<\n> translated as C<\012> for that filehandle. Since it is a no-op on other systems, C<binmode> should be used for cross-platform code that deals with binary data. That's assuming you realize in advance @@ -1217,7 +1217,7 @@ an effect on what happens with some Perl functions (such as C<chr>, C<pack>, C<print>, C<printf>, C<ord>, C<sort>, C<sprintf>, C<unpack>), as well as bit-fiddling with ASCII constants using operators like C<^>, C<&> and C<|>, not to mention dealing with socket interfaces to ASCII computers -(see L<"Newlines">). +(see L</"Newlines">). Fortunately, most web servers for the mainframe will correctly translate the C<\n> in the following statement to its ASCII equivalent diff --git a/pod/perlre.pod b/pod/perlre.pod index 094a87b806..10f9f22809 100644 --- a/pod/perlre.pod +++ b/pod/perlre.pod @@ -1440,7 +1440,7 @@ similar localizing behaviours. So later code blocks within the same pattern will still see the values which were localized in earlier blocks. These accumulated localizations are undone either at the end of a successful match, or if the assertion is backtracked (compare -L<"Backtracking">). For example, +L</"Backtracking">). For example, $_ = 'a' x 8; m< @@ -1473,7 +1473,7 @@ regular expression. The assignment to C<$^R> above is properly localized, so the old value of C<$^R> is restored if the assertion is backtracked; compare -L<"Backtracking">. +L</"Backtracking">. Note that the special variable C<$^N> is particularly useful with code blocks to capture the results of submatches in variables without having to @@ -1775,7 +1775,7 @@ An "independent" subexpression, one which matches the substring that a I<standalone> C<pattern> would match if anchored at the given position, and it matches I<nothing other than this substring>. This construct is useful for optimizations of what would otherwise be -"eternal" matches, because it will not backtrack (see L<"Backtracking">). +"eternal" matches, because it will not backtrack (see L</"Backtracking">). It may also be useful in places where the "grab all you can, and do not give anything back" semantic is desirable. @@ -1784,7 +1784,7 @@ For example: C<< ^(?>a*)ab >> will never match, since C<< (?>a*) >> characters C<a> at the beginning of string, leaving no C<a> for C<ab> to match. In contrast, C<a*ab> will match the same as C<a+b>, since the match of the subgroup C<a*> is influenced by the following -group C<ab> (see L<"Backtracking">). In particular, C<a*> inside +group C<ab> (see L</"Backtracking">). In particular, C<a*> inside C<a*ab> will match fewer characters than a standalone C<a*>, since this makes the tail match. @@ -2135,7 +2135,7 @@ X<backtrack> X<backtracking> NOTE: This section presents an abstract approximation of regular expression behavior. For a more rigorous (and complicated) view of the rules involved in selecting a match among possible alternatives, -see L<Combining RE Pieces>. +see L</Combining RE Pieces>. A fundamental feature of regular expression matching involves the notion called I<backtracking>, which is currently used (when needed) @@ -2533,7 +2533,7 @@ the C<"*">. The higher-level loops preserve an additional state between iterations: whether the last match was zero-length. To break the loop, the following match after a zero-length match is prohibited to have a length of zero. -This prohibition interacts with backtracking (see L<"Backtracking">), +This prohibition interacts with backtracking (see L</"Backtracking">), and so the I<second best> match is chosen if the I<best> match is of zero length. @@ -2567,7 +2567,7 @@ patterns using combining operators C<ST>, C<S|T>, C<S*> etc. Such combinations can include alternatives, leading to a problem of choice: if we match a regular expression C<a|ab> against C<"abc">, will it match substring C<"a"> or C<"ab">? One way to describe which substring is -actually matched is the concept of backtracking (see L<"Backtracking">). +actually matched is the concept of backtracking (see L</"Backtracking">). However, this description is too low-level and makes you think in terms of a particular implementation. diff --git a/pod/perlreguts.pod b/pod/perlreguts.pod index eac08f5d7a..0eac156cdb 100644 --- a/pod/perlreguts.pod +++ b/pod/perlreguts.pod @@ -693,7 +693,7 @@ simulated recursion. C<re_intuit_start()> is responsible for handling start points and no-match optimisations as determined by the results of the analysis done by -C<study_chunk()> (and described in L<Peep-hole Optimisation and Analysis>). +C<study_chunk()> (and described in L</Peep-hole Optimisation and Analysis>). The basic structure of this routine is to try to find the start- and/or end-points of where the pattern could match, and to ensure that the string diff --git a/pod/perlretut.pod b/pod/perlretut.pod index 516d86913c..efebb11125 100644 --- a/pod/perlretut.pod +++ b/pod/perlretut.pod @@ -2548,7 +2548,7 @@ running it hits the print statement before it discovers that we don't have a match. To take a closer look at how the engine does optimizations, see the -section L<"Pragmas and debugging"> below. +section L</"Pragmas and debugging"> below. More fun with C<?{}>: diff --git a/pod/perlrun.pod b/pod/perlrun.pod index 349e91e3d6..b7e1059441 100644 --- a/pod/perlrun.pod +++ b/pod/perlrun.pod @@ -34,7 +34,7 @@ Specified line by line via B<-e> or B<-E> switches on the command line. Contained in the file specified by the first filename on the command line. (Note that systems supporting the C<#!> notation invoke interpreters this -way. See L<Location of Perl>.) +way. See L</Location of Perl>.) =item 3. diff --git a/pod/perlsub.pod b/pod/perlsub.pod index a9daa8f6cb..f15f9cea3a 100644 --- a/pod/perlsub.pod +++ b/pod/perlsub.pod @@ -98,8 +98,8 @@ Aside from an experimental facility (see L</Signatures> below), Perl does not have named formal parameters. In practice all you do is assign to a C<my()> list of these. Variables that aren't declared to be private are global variables. For gory details -on creating private variables, see L<"Private Variables via my()"> -and L<"Temporary Values via local()">. To create protected +on creating private variables, see L</"Private Variables via my()"> +and L</"Temporary Values via local()">. To create protected environments for a set of functions in a separate package (and probably a separate file), see L<perlmod/"Packages">. X<formal parameter> X<parameter, formal> @@ -192,7 +192,7 @@ Do not, however, be tempted to do this: Like the flattened incoming parameter list, the return list is also flattened on return. So all you have managed to do here is stored everything in C<@a> and made C<@b> empty. See -L<Pass by Reference> for alternatives. +L</Pass by Reference> for alternatives. A subroutine may be called using an explicit C<&> prefix. The C<&> is optional in modern Perl, as are parentheses if the |