X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=pod%2Fperlrun.pod;h=33d4f55db8fbc3ca89edda7d0e561c2a70dd4589;hb=646ca9b2c4b7cf8e6d2771a171c1deb0b8a7852c;hp=e3f9f1ef9816b80a0f04d466a0421329540fae9b;hpb=5b64f2bff5b0212a9713f87c3a9e7f6653a1e126;p=p5sagit%2Fp5-mst-13.2.git diff --git a/pod/perlrun.pod b/pod/perlrun.pod index e3f9f1e..33d4f55 100644 --- a/pod/perlrun.pod +++ b/pod/perlrun.pod @@ -9,7 +9,6 @@ B S<[ B<-sTtuUWX> ]> S<[ B<-cw> ] [ B<-d>[B][:I] ] [ B<-D>[I] ]> S<[ B<-pna> ] [ B<-F>I ] [ B<-l>[I] ] [ B<-0>[I] ]> S<[ B<-I>I ] [ B<-m>[B<->]I ] [ B<-M>[B<->]I<'module...'> ] [ B<-f> ]> - S<[ B<-A>[I][=I] ]> S<[ B<-C [I] >]> S<[ B<-P> ]> S<[ B<-S> ]> @@ -260,19 +259,6 @@ format: C<-0xHHH...>, where the C are valid hexadecimal digits. (This means that you cannot use the C<-x> with a directory name that consists of hexadecimal digits.) -=item B<-A[I][=I]> -X<-A> - -Activates the assertions given after the equal sign as a comma-separated -list of assertion names or regular expressions. If no assertion name -is given, activates all assertions. - -The module L is used by default to activate the -selected assertions. An alternate module may be specified including -its name between the switch and the equal sign. - -See L and L. - =item B<-a> X<-a> X @@ -294,7 +280,7 @@ An alternate delimiter may be specified using B<-F>. =item B<-C [I]> X<-C> -The C<-C> flag controls some Unicode of the Perl Unicode features. +The C<-C> flag controls some of the Perl Unicode features. As of 5.8.1, the C<-C> can be followed either by a number or a list of option letters. The letters, their numeric values, and effects @@ -415,7 +401,7 @@ B<-D14> is equivalent to B<-Dtls>): 512 r Regular expression parsing and execution 1024 x Syntax tree dump 2048 u Tainting checks - 4096 (Obsolete, previously used for LEAKTEST) + 4096 U Unofficial, User hacking (reserved for private, unreleased use) 8192 H Hash dump -- usurps values() 16384 X Scratchpad allocation 32768 D Cleaning up @@ -713,7 +699,8 @@ the implicit loop, just as in B. X<-P> B +problems, including poor portability. It is deprecated and will be +removed in a future version of Perl.> This option causes your program to be run through the C preprocessor before compilation by Perl. Because both comments and B directives begin @@ -883,10 +870,6 @@ execute a portion of your program before dumping, use the dump() operator instead. Note: availability of B is platform specific and may not be available for a specific port of Perl. -This switch has been superseded in favor of the new Perl code -generator backends to the compiler. See L and L -for details. - =item B<-U> X<-U> @@ -981,7 +964,7 @@ See L. =item B<-x> X<-x> -=item B<-x> I +=item B<-x>I tells Perl that the program is embedded in a larger chunk of unrelated ASCII text, such as in a mail message. Leading garbage will be @@ -994,6 +977,9 @@ C<__END__> if there is trailing garbage to be ignored (the program can process any or all of the trailing garbage via the DATA filehandle if desired). +The directory, if specified, must appear immediately following the B<-x> +with no intervening whitespace. + =back =head1 ENVIRONMENT @@ -1023,14 +1009,17 @@ X A list of directories in which to look for Perl library files before looking in the standard library and the current directory. Any architecture-specific directories under the specified -locations are automatically included if they exist. If PERL5LIB is not -defined, PERLLIB is used. Directories are separated (like in PATH) by -a colon on unixish platforms and by a semicolon on Windows (the proper -path separator being given by the command C). +locations are automatically included if they exist (this lookup +being done at interpreter startup time.) + +If PERL5LIB is not defined, PERLLIB is used. Directories are separated +(like in PATH) by a colon on unixish platforms and by a semicolon on +Windows (the proper path separator being given by the command C). When running taint checks (either because the program was running setuid -or setgid, or the B<-T> switch was used), neither variable is used. -The program should instead say: +or setgid, or the B<-T> or B<-t> switch was specified), neither variable +is used. The program should instead say: use lib "/my/directory"; @@ -1038,7 +1027,7 @@ The program should instead say: X Command-line options (switches). Switches in this variable are taken -as if they were on every Perl command line. Only the B<-[CDIMUdmtwA]> +as if they were on every Perl command line. Only the B<-[CDIMUdmtw]> switches are allowed. When running taint checks (because the program was running setuid or setgid, or the B<-T> switch was used), this variable is ignored. If PERL5OPT begins with B<-T>, tainting will be @@ -1056,7 +1045,8 @@ layer specification strings (which is also used to decode the PERLIO environment variable) treats the colon as a separator. An unset or empty PERLIO is equivalent to the default set of layers for -your platforms, for example C<:unix:perlio>. +your platform, for example C<:unix:perlio> on UNIX-like systems +and C<:unix:crlf> on Windows and other DOS-like systems. The list becomes the default for I perl's IO. Consequently only built-in layers can appear in this list, as external layers (such as :encoding()) need @@ -1268,20 +1258,23 @@ PERL_ENCODING environment variable is consulted for an encoding name. =item PERL_HASH_SEED X -(Since Perl 5.8.1.) Used to randomise Perl's internal hash function. +(Since Perl 5.8.1.) Used to randomise perl's internal hash function. To emulate the pre-5.8.1 behaviour, set to an integer (zero means exactly the same order as 5.8.0). "Pre-5.8.1" means, among other -things, that hash keys will be ordered the same between different runs -of Perl. +things, that hash keys will always have the same ordering between +different runs of perl. + +Most hashes return elements in the same order as Perl 5.8.0 by default. +On a hash by hash basis, if pathological data is detected during a hash +key insertion, then that hash will switch to an alternative random hash +seed. The default behaviour is to randomise unless the PERL_HASH_SEED is set. -If Perl has been compiled with C<-DUSE_HASH_SEED_EXPLICIT>, the default +If perl has been compiled with C<-DUSE_HASH_SEED_EXPLICIT>, the default behaviour is B to randomise unless the PERL_HASH_SEED is set. -If PERL_HASH_SEED is unset or set to a non-numeric string, Perl uses +If PERL_HASH_SEED is unset or set to a non-numeric string, perl uses the pseudorandom seed supplied by the operating system and libraries. -This means that each different run of Perl will have a different -ordering of the results of keys(), values(), and each(). B. Hashes are randomized to protect against local and remote attacks against Perl