⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 perldiag.pod

📁 MSYS在windows下模拟了一个类unix的终端
💻 POD
📖 第 1 页 / 共 5 页
字号:
See L<perlsub/"Constant Functions"> and L<constant>.=item Constant subroutine %s redefined(S|W redefine) You redefined a subroutine which had previously beeneligible for inlining.  See L<perlsub/"Constant Functions"> forcommentary and workarounds.=item Constant subroutine %s undefined(W misc) You undefined a subroutine which had previously been eligiblefor inlining.  See L<perlsub/"Constant Functions"> for commentary andworkarounds.=item Copy method did not return a reference(F) The method which overloads "=" is buggy. See L<overload/Copy Constructor>.=item CORE::%s is not a keyword(F) The CORE:: namespace is reserved for Perl keywords.=item corrupted regexp pointers(P) The regular expression engine got confused by what the regularexpression compiler gave it.=item corrupted regexp program(P) The regular expression engine got passed a regexp program without avalid magic number.=item Corrupt malloc ptr 0x%lx at 0x%lx(P) The malloc package that comes with Perl had an internal failure.=item C<-p> destination: %s(F) An error occurred during the implicit output invoked by the C<-p>command-line switch.  (This output goes to STDOUT unless you'veredirected it with select().)=item C<-T> and C<-B> not implemented on filehandles(F) Perl can't peek at the stdio buffer of filehandles when it doesn'tknow about your kind of stdio.  You'll have to use a filename instead.=item Deep recursion on subroutine "%s"(W recursion) This subroutine has called itself (directly or indirectly)100 times more than it has returned.  This probably indicates aninfinite recursion, unless you're writing strange benchmark programs, inwhich case it indicates something else.=item defined(@array) is deprecated(D deprecated) defined() is not usually useful on arrays because itchecks for an undefined I<scalar> value.  If you want to see if thearray is empty, just use C<if (@array) { # not empty }> for example.  =item defined(%hash) is deprecated(D deprecated) defined() is not usually useful on hashes because itchecks for an undefined I<scalar> value.  If you want to see if the hashis empty, just use C<if (%hash) { # not empty }> for example.  =item Delimiter for here document is too long(F) In a here document construct like C<<<FOO>, the label C<FOO> is toolong for Perl to handle.  You have to be seriously twisted to write codethat triggers this error.=item Did not produce a valid headerSee Server error.=item %s did not return a true value(F) A required (or used) file must return a true value to indicate thatit compiled correctly and ran its initialization code correctly.  It'straditional to end such a file with a "1;", though any true value woulddo.  See L<perlfunc/require>.=item (Did you mean &%s instead?)(W) You probably referred to an imported subroutine &FOO as $FOO or somesuch.=item (Did you mean "local" instead of "our"?)(W misc) Remember that "our" does not localize the declared globalvariable.  You have declared it again in the same lexical scope, whichseems superfluous.=item (Did you mean $ or @ instead of %?)(W) You probably said %hash{$key} when you meant $hash{$key} or@hash{@keys}.  On the other hand, maybe you just meant %hash and gotcarried away.=item Died(F) You passed die() an empty string (the equivalent of C<die "">) oryou called it with no args and both C<$@> and C<$_> were empty.=item Document contains no dataSee Server error.=item Don't know how to handle magic of type '%s'(P) The internal handling of magical variables has been cursed.=item do_study: out of memory(P) This should have been caught by safemalloc() instead.=item (Do you need to predeclare %s?)(S) This is an educated guess made in conjunction with the message "%sfound where operator expected".  It often means a subroutine or modulename is being referenced that hasn't been declared yet.  This may bebecause of ordering problems in your file, or because of a missing"sub", "package", "require", or "use" statement.  If you're referencingsomething that isn't defined yet, you don't actually have to define thesubroutine or package before the current location.  You can use an empty"sub foo;" or "package FOO;" to enter a "forward" declaration.=item Duplicate free() ignored(S malloc) An internal routine called free() on something that hadalready been freed.=item elseif should be elsif(S) There is no keyword "elseif" in Perl because Larry thinks it's ugly.Your code will be interpreted as an attempt to call a method named"elseif" for the class returned by the following block.  This isunlikely to be what you want.=item entering effective %s failed(F) While under the C<use filetest> pragma, switching the real andeffective uids or gids failed.=item Error converting file specification %s(F) An error peculiar to VMS.  Because Perl may have to deal with filespecifications in either VMS or Unix syntax, it converts them to asingle form when it must operate on them directly.  Either you've passedan invalid file specification to Perl, or you've found a case theconversion routines don't handle.  Drat.=item %s: Eval-group in insecure regular expression(F) Perl detected tainted data when trying to compile a regularexpression that contains the C<(?{ ... })> zero-width assertion, whichis unsafe.  See L<perlre/(?{ code })>, and L<perlsec>.=item %s: Eval-group not allowed at run time(F) Perl tried to compile a regular expression containing theC<(?{ ... })> zero-width assertion at run time, as it would when thepattern contains interpolated values.  Since that is a security risk, itis not allowed.  If you insist, you may still do this by explicitlybuilding the pattern from an interpolated string at run time and usingthat in an eval().  See L<perlre/(?{ code })>.=item %s: Eval-group not allowed, use re 'eval'(F) A regular expression contained the C<(?{ ... })> zero-widthassertion, but that construct is only allowed when the C<use re 'eval'>pragma is in effect.  See L<perlre/(?{ code })>.=item Excessively long <> operator(F) The contents of a <> operator may not exceed the maximum size of aPerl identifier.  If you're just trying to glob a long list offilenames, try using the glob() operator, or put the filenames into avariable and glob that.=item Execution of %s aborted due to compilation errors(F) The final summary message when a Perl compilation fails.=item Exiting eval via %s(W exiting) You are exiting an eval by unconventional means, such as agoto, or a loop control statement.=item Exiting format via %s(W exiting) You are exiting an eval by unconventional means, such as agoto, or a loop control statement.=item Exiting pseudo-block via %s(W exiting) You are exiting a rather special block construct (like asort block or subroutine) by unconventional means, such as a goto, or aloop control statement.  See L<perlfunc/sort>.=item Exiting subroutine via %s(W exiting) You are exiting a subroutine by unconventional means, suchas a goto, or a loop control statement.=item Exiting substitution via %s(W exiting) You are exiting a substitution by unconventional means, suchas a return, a goto, or a loop control statement.=item Explicit blessing to '' (assuming package main)(W misc) You are blessing a reference to a zero length string.  This hasthe effect of blessing the reference into the package main.  This isusually not what you want.  Consider providing a default target package,e.g. bless($ref, $p || 'MyPackage');=item %s: Expression syntax(A) You've accidentally run your script through B<csh> instead of Perl.Check the #! line, or manually feed your script into Perl yourself.=item %s failed--call queue aborted(F) An untrapped exception was raised while executing a CHECK, INIT, orEND subroutine.  Processing of the remainder of the queue of suchroutines has been prematurely ended.=item false [] range "%s" in regexp(W regexp) A character class range must start and end at a literalcharacter, not another character class like C<\d> or C<[:alpha:]>.  The"-" in your false range is interpreted as a literal "-".  Considerquoting the "-",  "\-".  See L<perlre>.=item Fatal VMS error at %s, line %d(P) An error peculiar to VMS.  Something untoward happened in a VMSsystem service or RTL routine; Perl's exit status should provide moredetails.  The filename in "at %s" and the line number in "line %d" tellyou which section of the Perl source code is distressed.=item fcntl is not implemented(F) Your machine apparently doesn't implement fcntl().  What is this, aPDP-11 or something?=item Filehandle %s opened only for input(W io) You tried to write on a read-only filehandle.  If you intended itto be a read-write filehandle, you needed to open it with "+<" or "+>"or "+>>" instead of with "<" or nothing.  If you intended only to writethe file, use ">" or ">>".  See L<perlfunc/open>.=item Filehandle %s opened only for output(W io) You tried to read from a filehandle opened only for writing.  Ifyou intended it to be a read/write filehandle, you needed to open itwith "+<" or "+>" or "+>>" instead of with "<" or nothing.  If youintended only to read from the file, use "<".  See L<perlfunc/open>.=item Final $ should be \$ or $name(F) You must now decide whether the final $ in a string was meant to bea literal dollar sign, or was meant to introduce a variable name thathappens to be missing.  So you have to put either the backslash or thename.=item Final @ should be \@ or @name(F) You must now decide whether the final @ in a string was meant to bea literal "at" sign, or was meant to introduce a variable name thathappens to be missing.  So you have to put either the backslash or thename.=item flock() on closed filehandle %s(W closed) The filehandle you're attempting to flock() got itself closedsome time before now.  Check your logic flow.  flock() operates onfilehandles.  Are you attempting to call flock() on a dirhandle by thesame name?=item Quantifier follows nothing before << HERE in regex m/%s/(F) You started a regular expression with a quantifier. Backslash it if youmeant it literally. The << HERE shows in the regular expression about where theproblem was discovered. See L<perlre>.=item Format not terminated(F) A format must be terminated by a line with a solitary dot.  Perl gotto the end of your file without finding such a line.=item Format %s redefined(W redefine) You redefined a format.  To suppress this warning, say    {	no warnings;	eval "format NAME =...";    }=item Found = in conditional, should be ==(W syntax) You said    if ($foo = 123)when you meant    if ($foo == 123)(or something like that).=item %s found where operator expected(S) The Perl lexer knows whether to expect a term or an operator.  If itsees what it knows to be a term when it was expecting to see anoperator, it gives you this warning.  Usually it indicates that anoperator or delimiter was omitted, such as a semicolon.=item gdbm store returned %d, errno %d, key "%s"(S) A warning from the GDBM_File extension that a store failed.=item gethostent not implemented(F) Your C library apparently doesn't implement gethostent(), probablybecause if it did, it'd feel morally obligated to return every hostnameon the Internet.=item get%sname() on closed socket %s(W closed) You tried to get a socket or peer socket name on a closedsocket.  Did you forget to check the return value of your socket() call?=item getpwnam returned invalid UIC %#o for user "%s"(S) A warning peculiar to VMS.  The call to C<sys$getuai> underlying theC<getpwnam> operator returned an invalid UIC.=item getsockopt() on closed socket %s(W closed) You tried to get a socket option on a closed socket.  Did youforget to check the return value of your socket() call?  SeeL<perlfunc/getsockopt>.=item Global symbol "%s" requires explicit package name(F) You've said "use strict vars", which indicates that all variablesmust either be lexically scoped (using "my"), declared beforehand using"our", or explicitly qualified to say which package the global variableis in (using "::").=item glob failed (%s)(W glob) Something went wrong with the external program(s) used forC<glob> and C<< <*.c> >>.  Usually, this means that you supplied aC<glob> pattern that caused the external program to fail and exit with anonzero status.  If the message indicates that the abnormal exitresulted in a coredump, this may also mean that your csh (C shell) isbroken.  If so, you should change all of the csh-related variables in

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -