X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=pod%2Fperldiag.pod;h=0543595527395219cafde0152335df12a68e4d3c;hb=5cd24f17b72b10f8506d70fba1ec4dd25224c257;hp=89c8a2ac5ced26d8e616ebdda279696d24729599;hpb=daff0e373f3630eaa9dbded0adcc04185f454487;p=p5sagit%2Fp5-mst-13.2.git diff --git a/pod/perldiag.pod b/pod/perldiag.pod index 89c8a2a..0543595 100644 --- a/pod/perldiag.pod +++ b/pod/perldiag.pod @@ -1203,6 +1203,17 @@ and execute the specified command. (P) Something went badly wrong in the regular expression parser. +=item internal error: glob failed + +(P) Something went wrong with the external program(s) used for C +and C*.cE>. This may mean that your csh (C shell) is +broken. If so, you should change all of the csh-related variables in +config.sh: If you have tcsh, make the variables refer to it as if it +were csh (e.g. C); otherwise, make them all +empty (except that C should be C<'undef'>) so that Perl will +think csh is missing. In either case, after editing config.sh, run +C<./Configure -S> and rebuild Perl. + =item internal urp in regexp at /%s/ (P) Something went badly awry in the regular expression parser. @@ -1897,6 +1908,12 @@ which is why it's currently left out of your copy. (F) More than 100 levels of inheritance were used. Probably indicates an unintended loop in your inheritance hierarchy. +=item Recursive substitution detected + +(F) The replacement string of a substitution caused the recursive +execution of that very same substituion. Perl cannot keep track of +special variables (C<$1>, etc.) under such circumstances. + =item Reference miscount in sv_replace() (W) The internal sv_replace() function was handed a new SV with a @@ -2447,6 +2464,18 @@ a term, so it's looking for the corresponding right angle bracket, and not finding it. Chances are you left some needed parentheses out earlier in the line, and you really meant a "less than". +=item Use of "$$" to mean "${$}" is deprecated + +(D) Perl versions before 5.004 misinterpreted any type marker followed +by "$" and a digit. For example, "$$0" was incorrectly taken to mean +"${$}0" instead of "${$0}". This bug is (mostly) fixed in Perl 5.004. + +However, the developers of Perl 5.004 could not fix this bug completely, +because at least two widely-used modules depend on the old meaning of +"$$0" in a string. So Perl 5.004 still interprets "$$" in the +old (broken) way inside strings; but it generates this message as a +warning. And in Perl 5.005, this special treatment will cease. + =item Use of $# is deprecated (D) This was an ill-advised attempt to emulate a poorly defined B feature. @@ -2477,10 +2506,10 @@ a split() explicitly to an array (or list). =item Use of inherited AUTOLOAD for non-method %s() is deprecated -As an (ahem) accidental feature, C subroutines are looked up -as methods (using the C<@ISA> hierarchy) even when the subroutines to be -autoloaded were called as plain functions (e.g. C), not as -methods (e.g. Cbar()> or C<$obj->bar()>). +(D) As an (ahem) accidental feature, C subroutines are looked +up as methods (using the C<@ISA> hierarchy) even when the subroutines to +be autoloaded were called as plain functions (e.g. C), not +as methods (e.g. Cbar()> or C<$obj->bar()>). This bug will be rectified in Perl 5.005, which will use method lookup only for methods' Cs. However, there is a significant base