argra****@users*****
argra****@users*****
2007年 9月 6日 (木) 04:40:47 JST
Index: docs/perl/5.6.1/perldebug.pod diff -u docs/perl/5.6.1/perldebug.pod:1.6 docs/perl/5.6.1/perldebug.pod:1.7 --- docs/perl/5.6.1/perldebug.pod:1.6 Thu Aug 9 01:30:00 2007 +++ docs/perl/5.6.1/perldebug.pod Thu Sep 6 04:40:47 2007 @@ -735,6 +735,8 @@ it?\"">. (TBT) +=begin original + 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<=>. @@ -742,6 +744,15 @@ not be. Several options can be set together. See L<"Configurable Options"> for a list of these. +=end original + +歴史的な理由により、C<=value> は省略可能ですが、そうするのが安全な場合にのみ +デフォルトは 1 です -- これは、ほとんどの場合ブール値オプションです。 +C<=> を使って指定した値を代入する方が常によいです。 +C<option> は短縮できますが、明確化のためにはそうしない方がいいでしょう。 +いくつかのオプションは互いにセットできます。 +それらの一覧については L<"Configurable Options"> を参照してください。 + =item < ? =begin original Index: docs/perl/5.6.1/perldiag.pod diff -u docs/perl/5.6.1/perldiag.pod:1.6 docs/perl/5.6.1/perldiag.pod:1.7 --- docs/perl/5.6.1/perldiag.pod:1.6 Sat Aug 11 01:52:38 2007 +++ docs/perl/5.6.1/perldiag.pod Thu Sep 6 04:40:47 2007 @@ -215,9 +215,10 @@ =end original -(W ambiguous)(S) You said something that may not be interpreted the way -you thought. Normally it's pretty easy to disambiguate it by supplying -a missing quote, operator, parenthesis pair or declaration. +(W ambiguous)(S) 何か、あなたが考えているようには解釈できないものが +ありました。 +普通は、不足しているクォート、演算子、かっこ、宣言を追加することで +かなり簡単にあいまいさを解消できます。 =item '|' and '<' may not both be specified on command line @@ -229,9 +230,12 @@ =end original -(F) An error peculiar to VMS. Perl does its own command line -redirection, and found that STDIN was a pipe, and that you also tried to -redirect STDIN using '<'. Only one STDIN stream to a customer, please. +(F) VMS 特有のエラーです。 +Perl は独自にコマンドラインのリダイレクトを扱っていて、STDIN がパイプで +あることを発見しましたが、さらに '<' を使って STDIN をリダイレクトしようと +しました。 +STDIN ストリームは一つだけにしてください。 +お願いします。 =item '|' and '>' may not both be specified on command line @@ -246,11 +250,12 @@ =end original (F) VMS 特有のエラーです。 -Perl does its own command line -redirection, and thinks you tried to redirect stdout both to a file and -into a pipe to another command. You need to choose one or the other, -though nothing's stopping you from piping into a program or Perl script -which 'splits' output into two streams, such as +Perl は独自にコマンドラインのリダイレクトを扱っていて、STDOUT を +ファイルと他のコマンドへのパイプと両方にリダイレクトしようとしていると +判断しました。 +どちらかを選ぶ必要がありますが、以下のように出力を二つのストリームに +「分割」するプログラムや Perl スクリプトにパイプすることを止めるものは +何もありません。 open(OUT,">$ARGV[0]") or die "Can't write to $ARGV[0]: $!"; while (<STDIN>) { @@ -548,12 +553,11 @@ =end original -(W pack) You tried to pass a temporary value (like the result of a -function, or a computed expression) to the "p" pack() template. This -means the result contains a pointer to a location that could become -invalid anytime, even before the end of the current statement. Use -literals or global values as arguments to the "p" pack() template to -avoid this warning. +(W pack) (関数の結果や計算された式といった)一時的な値を pack() の +"p" テンプレートに渡そうとしました。 +これは、たとえ現在の文の終了前でも、不正な値となり得ます。 +この警告を避けるためには、pack テンプレート "p" の引数として、 +リテラルかグローバルな値を使ってください。 =item Attempt to use reference as lvalue in substr @@ -565,9 +569,10 @@ =end original -(W substr) You supplied a reference as the first argument to substr() -used as an lvalue, which is pretty strange. Perhaps you forgot to -dereference it first. See L<perlfunc/substr>. +(W substr) 左辺値として使われる substr() の 1 番目の引数としてリファレンスを +渡しました; これはやや奇妙なことです。 +おそらくはまずデリファレンスするのを忘れたのでしょう。 +L<perlfunc/substr> を参照してください。 =item Bad arg length for %s, is %d, should be %d @@ -635,9 +640,10 @@ =end original -This message can be seen quite often with DB_File on systems with "hard" -dynamic linking, like C<AIX> and C<OS/2>. It is a bug of C<Berkeley DB> -which is left unnoticed if C<DB> uses I<forgiving> system malloc(). +このメッセージ は、C<AIX> や C<OS/2> のような、「ハード」動的リンクを +行うシステムで DB_File を使うとしばしば表示されます。 +これは C<DB> がシステムの malloc() を許していることに気が付かない +C<Berkeley DB> のバグです。 =item Bad hash @@ -714,9 +720,9 @@ =end original -(S malloc) An internal routine called realloc() on something that had -never been malloc()ed in the first place. Mandatory, but can be disabled -by setting environment variable C<PERL_BADFREE> to 1. +(S malloc) 内部ルーチンが、最初に malloc() されていない何かに対して +realloc() を呼び出しました。 +必須ですが、環境変数 C<PERL_BADFREE> に 1 をセットすることで無効化できます。 =item Bad symbol for array @@ -764,9 +770,9 @@ =end original -(W bareword) The compiler found a bareword where it expected a -conditional, which often indicates that an || or && was parsed as part -of the last argument of the previous construct, for example: +(W bareword) コンパイラが、条件が想定される位置に裸の単語を発見しました。 +これはしばしば、|| や && が直前の構造の最後の引数の一部として +パースされたことを意味します; 例えば: open FOO || die; @@ -777,8 +783,8 @@ =end original -It may also indicate a misspelled constant that has been interpreted as -a bareword: +これはまた、裸の単語として解釈されるような定数をタイプミスしたことを +示している場合もあります: use constant TYPO => 1; if (TYOP) { print "foo" } @@ -801,9 +807,9 @@ =end original -(F) With "strict subs" in use, a bareword is only allowed as a -subroutine identifier, in curly brackets or to the left of the "=>" -symbol. Perhaps you need to predeclare a subroutine? +"strict subs" が有効の場合、裸の単語はサブルーチンの識別子、 +中かっこの中、シンボル "=>" の左側でのみ許されます。 +おそらくサブルーチンを先行宣言する必要があるのでは? =item Bareword "%s" refers to nonexistent package @@ -815,9 +821,10 @@ =end original -(W bareword) You used a qualified bareword of the form C<Foo::>, but the -compiler saw no other uses of that namespace before that point. Perhaps -you need to predeclare a package? +(W bareword) C<Foo::> の形で修飾された裸の単語が使われていますが、 +コンパイラはこの場所以外でこの名前空間が使われている場所を +発見できませんでした。 +おそらくパッケージを専攻宣言する必要があるのでは? =item BEGIN failed--compilation aborted @@ -830,7 +837,7 @@ =end original (F) BEGIN サブルーティンの実行中にトラップ不可能な例外が発生しました。 -コンパイルは、即座に停止し、インタプリタは中止します。 +コンパイルは即座に停止し、インタプリタは中止します。 =item BEGIN not safe after errors--compilation aborted @@ -938,9 +945,9 @@ =end original -(W internal) A warning peculiar to VMS. While Perl was preparing to -iterate over %ENV, it encountered a logical name or symbol definition -which was too long, so it was truncated to the string shown. +(W) VMS 特有の警告です。 +Perl が %ENV を反復する準備中、長すぎる論理名かシンボル定義に +遭遇したので、文字列は表示したように切り詰められました。 =item Callback called exit @@ -1262,9 +1269,10 @@ =end original -(S inplace) Your filesystem does not support filenames longer than 14 -characters and Perl was unable to create a unique filename during -inplace editing with the B<-i> switch. The file was ignored. +(S inplace) ファイルシステムが 14 文字より長いファイル名に対応しておらず、 +Perl は B<-i> オプションによるその場編集の間のユニークなファイル名の +作成ができませんでした。 +このファイルは無視されます。 =item Can't do {n,m} with n > m before << HERE in regex m/%s/ @@ -1408,8 +1416,8 @@ =end original -(F) A string of a form C<CORE::word> was given to prototype(), but there -is no builtin with the name C<word>. +(F) C<CORE::word> の形の文字列が prototype() に与えられましたが、 +名前 C<word> は組み込みではありません。 =item Can't find label %s @@ -1432,8 +1440,8 @@ =end original -(F) You used the B<-S> switch, but the script to execute could not be -found in the PATH. +B<-S> オプションを使いましたが、実行するスクリプトは PATH に +見つかりませんでした。 =item Can't find %s on PATH, '.' not in PATH @@ -1475,9 +1483,10 @@ =end original -If you're getting this error from a here-document, you may have included -unseen whitespace before or after your closing tag. A good programmer's -editor will have a way to help you find these characters. +このエラーがヒアドキュメントで起きた場合、閉じタグの前か後に +見えない空白を含んでいるかもしれません。 +よいプログラマ用エディタには、このような文字を探す助けになる方法が +あります。 =item Can't find %s property definition %s @@ -1686,10 +1695,11 @@ =end original -(F) You used local on a variable name that was previously declared as a -lexical variable using "my". This is not allowed. If you want to -localize a package variable of the same name, qualify it with the -package name. +(F) 以前に "my" を使ってレキシカル変数として宣言された変数名に対して +local を使いました。 +これは認められていません。 +同じ名前のパッケージ変数をローカル化したい場合は、 +パッケージ名で修飾してください。 =item Can't localize pseudo-hash element @@ -1718,10 +1728,10 @@ =end original -(F) You said something like C<local $$ref>, which Perl can't currently -handle, because when it goes to restore the old value of whatever $ref -pointed to after the scope of the local() is finished, it can't be sure -that $ref will still be a reference. +(F) C<local $$ref> のようなことをしましたが、Perl は現在のところこれを +扱えません; なぜなら、local() のスコープが終了した後、$ref が +指しているものの古い値を戻すとき、$ref がまだリファレンスかどうかが +わからないからです。 =item Can't locate %s @@ -1848,8 +1858,9 @@ =end original -(F) Subroutines meant to be used in lvalue context should be declared as -such, see L<perlsub/"Lvalue subroutines">. +(F) 左辺値コンテキストとして使うサブルーチンは、そのように +宣言しなければなりません; +L<perlsub/"Lvalue subroutines"> を参照してください。 =item Can't msgrcv to read-only var @@ -1929,9 +1940,9 @@ =end original (F) VMSに固有のエラーです。 -Perl does its own command line -redirection, and couldn't open the file specified after '2>' or '2>>' on -the command line for writing. +Perl は独自にコマンドラインのリダイレクトを扱っていて、 +コマンドラインで書き込みのために '2>' や '2>>' の後に指定された +ファイルを開けませんでした。 =item Can't open input file %s as stdin @@ -1944,9 +1955,9 @@ =end original (F) VMSに固有のエラーです。 -Perl does its own command line -redirection, and couldn't open the file specified after '<' on the -command line for reading. +Perl は独自にコマンドラインのリダイレクトを扱っていて、 +コマンドラインで読み込みのために '<' の後に指定された +ファイルを開けませんでした。 =item Can't open output file %s as stdout @@ -1959,9 +1970,9 @@ =end original (F) VMSに固有のエラーです。 -Perl does its own command line -redirection, and couldn't open the file specified after '>' or '>>' on -the command line for writing. +Perl は独自にコマンドラインのリダイレクトを扱っていて、 +コマンドラインで書き込みのために '>' や '>>' の後に指定された +ファイルを開けませんでした。 =item Can't open output pipe (name: %s) @@ -1974,9 +1985,8 @@ =end original (P) VMSに固有のエラーです。 -Perl does its own command line -redirection, and couldn't open the pipe into which to send data destined -for stdout. +Perl は独自にコマンドラインのリダイレクトを扱っていて、 +標準出力としてデータを送るパイプを開けませんでした。 =item Can't open perl script "%s": %s @@ -2084,8 +2094,9 @@ =end original (P) VMS に固有のエラーです。 -Perl thought stdin was a pipe, and tried -to reopen it to accept binary data. Alas, it failed. +Perl は標準入力がパイプであると考えて、バイナリデータを受け入れるために +再オープンしようとしました。 +悲しいかな、それは失敗しました。 =item Can't resolve method `%s' overloading `%s' in package `%s' @@ -2097,9 +2108,10 @@ =end original -(F|P) Error resolving overloading specified by a method name (as opposed -to a subroutine reference): no such method callable via the package. If -method name is C<???>, this is an internal error. +(F|P) (サブルーチンのリファレンスではなく)メソッド名で指定された +オーバーロードの解決でのエラー: そのようなメソッドはパッケージ経由で +呼び出せません。 +もしメソッド名が C<???> なら、内部エラーです。 =item Can't reswap uid and euid @@ -2123,9 +2135,10 @@ =end original -(F) Perl detected an attempt to return illegal lvalues (such as -temporary or readonly values) from a subroutine used as an lvalue. This -is not allowed. +(F) Perl が、左辺値として使われるサブルーチンから(一時的や +読み込み専用のような)不正な左辺値が返されようとしているのを +検出しました。 +これはできません。 =item Can't return %s to lvalue scalar context @@ -2193,10 +2206,9 @@ =end original -(F) For ordinary real numbers, you can't take the logarithm of a -negative number or zero. There's a Math::Complex package that comes -standard with Perl, though, if you really want to do that for the -negative numbers. +(F) 実数に対しては、負数や 0 に対する対数を取ることはできません。 +しかし、もし本当に負数に対してそのようなことをしたいのなら、 +Perl 標準になっている Math::Complex パッケージがあります。 =item Can't take sqrt of %g @@ -2380,8 +2392,9 @@ =end original -(F) Only hard references are allowed by "strict refs". Symbolic -references are disallowed. See L<perlref>. +(F) "strict refs" によって、ハードリファレンスのみが許可されます。 +シンボリックリファレンスは許可されません。 +L<perlref> を参照してください。 =item Can't use subscript on %s @@ -2393,9 +2406,9 @@ =end original -(F) コンパイラが中かっこ式をサブスクリプトとして解釈しようとしました。 -しかし、中かっこの左側は配列のリファレンスやその他の -サブスクリプト化できるもののようには見えない式です。 +(F) コンパイラが大かっこで囲われた式を添字として解釈しようとしました。 +しかし、大かっこの左側はハッシュか配列のリファレンスやその他の +添字化できるもののようには見えない式です。 =item Can't use \%c to mean $%c in expression @@ -2426,8 +2439,8 @@ =end original -(F) You attempted to weaken something that was not a reference. Only -references can be weakened. +(F) リファレンスではない何かを弱めようとしました。 +リファレンスだけが弱めることができます。 =item Can't x= to read-only value @@ -2499,9 +2512,9 @@ =end original -(F) Perl could not compile a file specified in a C<require> statement. -Perl uses this generic message when none of the errors that it -encountered were severe enough to halt compilation immediately. +(F) Perl は C<require> 文で指定されたファイルをコンパイルできませんでした。 +Perl は、コンパイルを直ちに停止させるほど厳しいエラーに遭遇しなかった +ときに、この一般的なメッセージを使います。 =item Complex regular subexpression recursion limit (%d) exceeded @@ -2604,9 +2617,10 @@ =end original -(W misc) You undefined a subroutine which had previously been eligible -for inlining. See L<perlsub/"Constant Functions"> for commentary and -workarounds. +(W misc)以前にインライン化できる形であったサブルーチンを +未定義化しました。 +コメントと回避策については L<perlsub/"Constant Functions"> を +参照してください。 =item Copy method did not return a reference @@ -2827,8 +2841,8 @@ =end original -(F) You passed die() an empty string (the equivalent of C<die "">) or -you called it with no args and both C<$@> and C<$_> were empty. +(F) die() に空文字列を渡した(C<die ""> と等価です)か、引数なしで +呼び出して、C<$@> と C<$_> が空でした。 =item Document contains no data @@ -2955,9 +2969,10 @@ =end original -(F) Perl detected tainted data when trying to compile a regular -expression that contains the C<(?{ ... })> zero-width assertion, which -is unsafe. See L<perlre/(?{ code })>, and L<perlsec>. +C<(?{ ... })> ゼロ幅アサーションを含む正規表現をコンパイルしようと +したときに、Perl は汚染されたデータを検出しました; +これは安全ではありません。 +L<perlre/(?{ code })> と L<perlsec> を参照してください。 =item %s: Eval-group not allowed at run time @@ -2989,9 +3004,9 @@ =end original -(F) A regular expression contained the C<(?{ ... })> zero-width -assertion, but that construct is only allowed when the C<use re 'eval'> -pragma is in effect. See L<perlre/(?{ code })>. +(F) 正規表現に C<(?{ ... })> ゼロ幅アサーションを含んでいますが、 +この構造は C<use re 'eval'> プラグマが有効の場合にのみ許可されます。 +L<perlre/(?{ code })> を参照してください。 =item Excessively long <> operator @@ -4445,7 +4460,7 @@ =end original (F) 配列値を存在するようにしようとしました。 おそらく、 -インデクスが負数で、配列の終わりから逆に数えたとしても、 +添字が負数で、配列の終わりから逆に数えたとしても、 おかしな位置を指しているようです。 =item Modification of non-creatable hash value attempted, %s @@ -4984,7 +4999,7 @@ =end original -(W signal) %SIG の添え字として認識できないシグナル名を指定しました。 +(W signal) %SIG の添字として認識できないシグナル名を指定しました。 お使いのシステムで使用可能なシグナル名を調べるには、 シェル上で C<kill -l> などとしてください。