perldiag > 5.6.1 との差分

perldiag 5.6.1 と 5.28.0 の差分

11
22=encoding euc-jp
33
44=head1 NAME
55
66=begin original
77
88perldiag - various Perl diagnostics
99
1010=end original
1111
1212perldiag - さまざまな Perl 診断メッセージ
1313
1414=head1 DESCRIPTION
1515
1616=begin original
1717
1818These messages are classified as follows (listed in increasing order of
1919desperation):
2020
2121=end original
2222
2323これらのメッセージは以下のように分類されます (重要度が増す順に
2424並べてあります):
2525
2626=begin original
2727
2828 (W) A warning (optional).
29 (D) A deprecation (optional).
29 (D) A deprecation (enabled by default).
30 (S) A severe warning (default).
30 (S) A severe warning (enabled by default).
3131 (F) A fatal error (trappable).
3232 (P) An internal error you should never see (trappable).
3333 (X) A very fatal error (nontrappable).
3434 (A) An alien error message (not generated by Perl).
3535
3636=end original
3737
38 (W) 警告 (オプション)
38 (W) 警告 (オプション)
39 (D) 非推奨 (オプション)
39 (D) 非推奨 (デフォルトでは有効)
40 (S) 重大な警告 (デフォルト)
40 (S) 重大な警告 (デフォルトでは有効)
41 (F) 致命的エラー (トラップ可能)
41 (F) 致命的エラー (トラップ可能)
42 (P) 起こるはずのない内部エラー (トラップ可能)
42 (P) 起こるはずのない内部エラー (トラップ可能)
43 (X) 重大致命的エラー (トラップ不可能)
43 (X) 重大致命的エラー (トラップ不可能)
44 (A) 外部エラーメッセージ (Perl 以外で生成されたもの)
44 (A) 外部エラーメッセージ (Perl 以外で生成されたもの)
4545
4646=begin original
4747
4848The majority of messages from the first three classifications above
49(W, D & S) can be controlled using the C<warnings> pragma.
49(W, D & S) can be controlled using the C<warnings> pragma.
5050
5151=end original
5252
5353上記のうち、最初の三つ (W, D, S) に分類されるメッセージの大部分は
5454C<warings> プラグマで制御できます。
5555
5656=begin original
5757
5858If a message can be controlled by the C<warnings> pragma, its warning
5959category is included with the classification letter in the description
60below.
60below. E.g. C<(W closed)> means a warning in the C<closed> category.
6161
6262=end original
6363
64メッセージが C<warnings> プラグマで制御できる場合、
64メッセージが C<warnings> プラグマで制御できる場合、警告カテゴリは以下の
65警告カテゴリは以下の説明で分類文字と共に記されています。
65説明で分類文字と共に記されています。
66例えば、C<(W closed)> は C<closed> カテゴリの警告を意味します。
6667
6768=begin original
6869
6970Optional warnings are enabled by using the C<warnings> pragma or the B<-w>
70and B<-W> switches. Warnings may be captured by setting C<$SIG{__WARN__}>
71and B<-W> switches. Warnings may be captured by setting C<$SIG{__WARN__}>
7172to a reference to a routine that will be called on each warning instead
7273of printing it. See L<perlvar>.
7374
7475=end original
7576
7677C<warnings> プラグマか B<-w> と B<-W> のオプションを使うと追加の警告が
7778有効になります。
7879警告は、表示する変わりに警告が出るたびに呼び出されるサブルーチンへの
7980リファレンスを C<$SIG{__WARN__}> にセットすることで捕捉できます。
8081L<perlvar> を参照してください。
8182
8283=begin original
8384
84Default warnings are always enabled unless they are explicitly disabled
85Severe warnings are always enabled, unless they are explicitly disabled
8586with the C<warnings> pragma or the B<-X> switch.
8687
8788=end original
8889
89デフォルトでは C<warnings> プラグマか B<-X> オプションで明示的に
90C<warnings> プラグマか B<-X> オプションで明示的に無効にされない限り、
90無効にされな限り、警告は常に有効です。
91厳しい警告は常に有効です。
9192
9293=begin original
9394
9495Trappable errors may be trapped using the eval operator. See
9596L<perlfunc/eval>. In almost all cases, warnings may be selectively
9697disabled or promoted to fatal errors using the C<warnings> pragma.
9798See L<warnings>.
9899
99100=end original
100101
101102トラップ可能なエラーは評価演算子を使ってトラップできます。
102103L<perlfunc/eval> を参照してください。
103ほとんど全ての場合、警告は C<warnings> プラグマを使うことで
104ほとんど全ての場合、警告は C<warnings> プラグマを使うことで選択的に
104選択的に無効にしたり致命的エラーに昇格させたりできます。
105無効にしたり致命的エラーに昇格させたりできます。
105106L<warnings> を参照してください。
106107
107108=begin original
108109
109110The messages are in alphabetical order, without regard to upper or
110111lower-case. Some of these messages are generic. Spots that vary are
111112denoted with a %s or other printf-style escape. These escapes are
112113ignored by the alphabetical order, as are all characters other than
113114letters. To look up your message, just ignore anything that is not a
114115letter.
115116
116117=end original
117118
118119メッセージは大文字小文字を無視してアルファベット順に並んでいます。
119120これらの中には一般的なものもあります。
120121変化する部分は %s またはその他の printf スタイルの表記をしています。
121122これらの表記や、その他の英文字以外の文字は並び順に関しては
122123無視されています。
123124メッセージを探すには、英文字以外は無視してください。
124125
125126=over 4
126127
127128=item accept() on closed socket %s
128129
129130=begin original
130131
131132(W closed) You tried to do an accept on a closed socket. Did you forget
132133to check the return value of your socket() call? See
133134L<perlfunc/accept>.
134135
135136=end original
136137
137138(W closed) クローズされたソケットに accept を行なおうとしました。
138139socket() の呼び出し時に、返却値のチェックを忘れたのではありませんか。
139140L<perlfunc/accept> を参照してください。
140141
141=item Allocation too large: %lx
142=item Aliasing via reference is experimental
142143
143144=begin original
144145
146(S experimental::refaliasing) This warning is emitted if you use
147a reference constructor on the left-hand side of an assignment to
148alias one variable to another. Simply suppress the warning if you
149want to use the feature, but know that in doing so you are taking
150the risk of using an experimental feature which may change or be
151removed in a future Perl version:
152
153=end original
154
155(S experimental::refaliasing) この警告は、ある変数を別の変数の別名とする代入の
156左側でリファレンスコンストラクタを使うと出力されます。
157この機能を使いたいけれども、そうすることで将来の Perl バージョンで
158変更されるかもしれない実験的機能を使うリスクを取ることを分かっている場合は、
159単に警告を抑制してください:
160
161 no warnings "experimental::refaliasing";
162 use feature "refaliasing";
163 \$x = \$y;
164
165=item Allocation too large: %x
166
167=begin original
168
145169(X) You can't allocate more than 64K on an MS-DOS machine.
146170
147171=end original
148172
149173(X) MS-DOS マシンでは、64K を越えるメモリアロケートをおこなえません。
150174
151=item '!' allowed only after types %s
175=item '%c' allowed only after types %s in %s
152176
153177=begin original
154178
155(F) The '!' is allowed in pack() and unpack() only after certain types.
179(F) The modifiers '!', '<' and '>' are allowed in pack() or unpack() only
156See L<perlfunc/pack>.
180after certain types. See L<perlfunc/pack>.
157181
158182=end original
159183
160(F) pack() や unpack() での '!' は特定のタイプの後にのみ
184(F) pack() や unpack() での '!', '<', '>''!' の修飾子は特定のタイプの
161つけることができます。
185後にのみつけることができます。
162186L<perlfunc/pack> を参照してください。
163187
188=item alpha->numify() is lossy
189
190=begin original
191
192(W numeric) An alpha version can not be numified without losing
193information.
194
195=end original
196
197(W numeric) アルファバージョンは、情報を失うことなく数値化できません。
198
164199=item Ambiguous call resolved as CORE::%s(), qualify as such or use &
165200
166201=begin original
167202
168203(W ambiguous) A subroutine you have declared has the same name as a Perl
169204keyword, and you have used the name without qualification for calling
170205one or the other. Perl decided to call the builtin because the
171206subroutine is not imported.
172207
173208=end original
174209
175210(W ambiguous) 定義したサブルーチンの名前が Perl のキーワードと同じで、
176211どちらかを呼び出すために修飾なしで名前を使っています。
177Perl は、サブルーチンがインポートされたものではないので、
212Perl は、サブルーチンがインポートされたものではないので、組み込みのものを
178組み込みのものを呼び出すことにしました。
213呼び出すことにしました。
179214
180215=begin original
181216
182217To force interpretation as a subroutine call, either put an ampersand
183218before the subroutine name, or qualify the name with its package.
184219Alternatively, you can import the subroutine (or pretend that it's
185220imported with the C<use subs> pragma).
186221
187222=end original
188223
189サブルーチン呼び出しとして解釈することを強制させるためには、
224サブルーチン呼び出しとして解釈することを強制させるためには、サブルーチン名の
190サブルーチン名の前にアンパサンドをつけるか、名前をパッケージ名で
225前にアンパサンドをつけるか、名前をパッケージ名で修飾してください。
191修飾してください。
192226他の方法として、サブルーチンをインポートする(あるいは C<use subs>
193227プラグマを使ってインポートされたふりをする)方法もあります。
194228
195229=begin original
196230
197231To silently interpret it as the Perl operator, use the C<CORE::> prefix
198on the operator (e.g. C<CORE::log($x)>) or by declaring the subroutine
232on the operator (e.g. C<CORE::log($x)>) or declare the subroutine
199233to be an object method (see L<perlsub/"Subroutine Attributes"> or
200234L<attributes>).
201235
202236=end original
203237
204238警告なしに Perl 演算子として解釈させるためには、(C<CORE::log($x)> のように)
205239演算子に C<CORE::> 接頭辞をつけるか、サブルーチンをオブジェクト
206240メソッド(L<perlsub/"Subroutine Attributes"> や L<attributes> を
207241参照してください)として定義してください。
208242
243=item Ambiguous range in transliteration operator
244
245=begin original
246
247(F) You wrote something like C<tr/a-z-0//> which doesn't mean anything at
248all. To include a C<-> character in a transliteration, put it either
249first or last. (In the past, C<tr/a-z-0//> was synonymous with
250C<tr/a-y//>, which was probably not what you would have expected.)
251
252=end original
253
254(F) C<tr/a-z-0//> のような、何の意味もないことをしようとしました。
255文字変換の文字に C<-> を加える時は、最初か最後に置いてください。
256(以前は C<tr/a-z-0//> は C<tr/a-y//> と同義でしたが、これはおそらく
257予想していたものと違うでしょう。)
258
209259=item Ambiguous use of %s resolved as %s
210260
211261=begin original
212262
213(W ambiguous)(S) You said something that may not be interpreted the way
263(S ambiguous) You said something that may not be interpreted the way
214264you thought. Normally it's pretty easy to disambiguate it by supplying
215265a missing quote, operator, parenthesis pair or declaration.
216266
217267=end original
218268
219(W ambiguous)(S) 何か、あなたが考えているようには解釈できないものが
269(S ambiguous) 何か、あなたが考えているようには解釈できないものがありました。
220ありまた。
270普通は、不足ているクォート、演算子、かっこ、宣言を追加することでかなり
221普通は、不足してるクォート、演算子、かっこ、宣言追加すること
271簡単にあまいさ解消きます。
222かなり簡単にあいまいさを解消できます。
223272
273=item Ambiguous use of -%s resolved as -&%s()
274
275=begin original
276
277(S ambiguous) You wrote something like C<-foo>, which might be the
278string C<"-foo">, or a call to the function C<foo>, negated. If you meant
279the string, just write C<"-foo">. If you meant the function call,
280write C<-foo()>.
281
282=end original
283
284(S ambiguous) C<-foo> のようなものを書きました; これは文字列 C<"-foo"> かも
285知れませんし、関数 C<foo> を呼び出してその否定かも知れません。
286文字列のつもりなら、単に C<"-foo"> と書いてください。
287関数呼び出しのつもりなら、C<-foo()> と書いてください。
288
289=item Ambiguous use of %c resolved as operator %c
290
291=begin original
292
293(S ambiguous) C<%>, C<&>, and C<*> are both infix operators (modulus,
294bitwise and, and multiplication) I<and> initial special characters
295(denoting hashes, subroutines and typeglobs), and you said something
296like C<*foo * foo> that might be interpreted as either of them. We
297assumed you meant the infix operator, but please try to make it more
298clear -- in the example given, you might write C<*foo * foo()> if you
299really meant to multiply a glob by the result of calling a function.
300
301=end original
302
303(S ambiguous) C<%>, C<&>, C<*> は、中置演算子(剰余、ビット単位論理和、乗算)
304I<および> 初期特殊文字(ハッシュ、サブルーチン、型グロブを示す)の
305両方に使われますが、どちらとも解釈できる C<*foo * foo> のようなものが
306書かれました。
307これは中置演算子を意味していると仮定しますが、どうかより明確にするように
308してください -- 上述の例では、もし本当にグロブと関数呼び出しの結果の
309積を意味しているなら、C<*foo * foo()> と書けます。
310
311=item Ambiguous use of %c{%s} resolved to %c%s
312
313=begin original
314
315(W ambiguous) You wrote something like C<@{foo}>, which might be
316asking for the variable C<@foo>, or it might be calling a function
317named foo, and dereferencing it as an array reference. If you wanted
318the variable, you can just write C<@foo>. If you wanted to call the
319function, write C<@{foo()}> ... or you could just not have a variable
320and a function with the same name, and save yourself a lot of trouble.
321
322=end original
323
324(W ambiguous) C<@{foo}> のようなものを書きました; これは変数 C<@foo> のこと
325かもしれませんし、foo という名前の関数を呼び出して、それを配列
326リファレンスとしてデリファレンスするかもしれません。
327もし変数がほしいなら、単に C<@foo> と書いてください。
328関数を呼び出したいなら、C<@{foo()}> と書いてください…あるいは単に
329変数と関数で同じ名前を使わないでください; これにより多くの問題から身を
330守れます。
331
332=item Ambiguous use of %c{%s[...]} resolved to %c%s[...]
333
334=item Ambiguous use of %c{%s{...}} resolved to %c%s{...}
335
336=begin original
337
338(W ambiguous) You wrote something like C<${foo[2]}> (where foo represents
339the name of a Perl keyword), which might be looking for element number
3402 of the array named C<@foo>, in which case please write C<$foo[2]>, or you
341might have meant to pass an anonymous arrayref to the function named
342foo, and then do a scalar deref on the value it returns. If you meant
343that, write C<${foo([2])}>.
344
345=end original
346
347(W ambiguous) C<${foo[2]}> のようなものを書きました (ここで foo は Perl の
348キーワード名を表します); これは C<@foo> という名前の配列の要素番号 2 を
349探しているのかも知れません(その場合は C<$foo[2]> と書いてください)し、
350foo という名前の関数に無名配列リファレンスを渡して、返り値をスカラ
351デリファレンスしているのかも知れません。
352それを意味しているなら、C<${foo([2])}> と書いてください。
353
354=begin original
355
356In regular expressions, the C<${foo[2]}> syntax is sometimes necessary
357to disambiguate between array subscripts and character classes.
358C</$length[2345]/>, for instance, will be interpreted as C<$length> followed
359by the character class C<[2345]>. If an array subscript is what you
360want, you can avoid the warning by changing C</${length[2345]}/> to the
361unsightly C</${\$length[2345]}/>, by renaming your array to something
362that does not coincide with a built-in keyword, or by simply turning
363off warnings with C<no warnings 'ambiguous';>.
364
365=end original
366
367正規表現の中で、C<${foo[2]}> 文法は配列添え字と文字クラスを区別するために
368必要になります。
369例えば、C</$length[2345]/> は、C<$length> に文字クラス C<[2345]> が
370引き続くと解釈されます。
371配列添え字が求めているものなら、C</${length[2345]}/> を
372(見にくい) C</${\$length[2345]}/>と変更する、配列の名前を組み込みキーワードと
373衝突しないものに変える、単に C<no warnings 'ambiguous';> として
374警告をオフにする、のいずれかで警告を回避できます。
375
224376=item '|' and '<' may not both be specified on command line
225377
226378=begin original
227379
228380(F) An error peculiar to VMS. Perl does its own command line
229381redirection, and found that STDIN was a pipe, and that you also tried to
230382redirect STDIN using '<'. Only one STDIN stream to a customer, please.
231383
232384=end original
233385
234(F) VMS 有のエラーです。
386(F) VMS に固有のエラーです。
235387Perl は独自にコマンドラインのリダイレクトを扱っていて、STDIN がパイプで
236388あることを発見しましたが、さらに '<' を使って STDIN をリダイレクトしようと
237389しました。
238STDIN ストリームは一つだけにしてください。
390STDIN ストリームは一つだけにしてください; お願いします
239お願いします。
240391
241392=item '|' and '>' may not both be specified on command line
242393
243394=begin original
244395
245396(F) An error peculiar to VMS. Perl does its own command line
246397redirection, and thinks you tried to redirect stdout both to a file and
247398into a pipe to another command. You need to choose one or the other,
248399though nothing's stopping you from piping into a program or Perl script
249400which 'splits' output into two streams, such as
250401
251402=end original
252403
253(F) VMS 有のエラーです。
404(F) VMS に固有のエラーです。
254405Perl は独自にコマンドラインのリダイレクトを扱っていて、STDOUT を
255406ファイルと他のコマンドへのパイプと両方にリダイレクトしようとしていると
256407判断しました。
257408どちらかを選ぶ必要がありますが、以下のように出力を二つのストリームに
258409「分割」するプログラムや Perl スクリプトにパイプすることを止めるものは
259410何もありません。
260411
261412 open(OUT,">$ARGV[0]") or die "Can't write to $ARGV[0]: $!";
262413 while (<STDIN>) {
263414 print;
264415 print OUT;
265416 }
266417 close OUT;
267418
268419=item Applying %s to %s will act on scalar(%s)
269420
270421=begin original
271422
272(W misc) The pattern match (//), substitution (s///), and
423(W misc) The pattern match (C<//>), substitution (C<s///>), and
273transliteration (tr///) operators work on scalar values. If you apply
424transliteration (C<tr///>) operators work on scalar values. If you apply
274425one of them to an array or a hash, it will convert the array or hash to
275a scalar value -- the length of an array, or the population info of a
426a scalar value (the length of an array, or the population info of a
276hash -- and then work on that scalar value. This is probably not what
427hash) and then work on that scalar value. This is probably not what
277428you meant to do. See L<perlfunc/grep> and L<perlfunc/map> for
278429alternatives.
279430
280431=end original
281432
282(W misc) パターンマッチ (//), 置換 (s///), 文字置換
433(W misc) パターンマッチ (C<//>), 置換 (C<s///>), 文字置換
283(tr///) 演算子はスカラ値に対して動作します。
434(C<tr///>) 演算子はスカラ値に対して動作します。
284これらを配列やハッシュに適用すると、配列やハッシュをスカラ値 --
435これらを配列やハッシュに適用すると、配列やハッシュをスカラ値 (配列の長さか
285配列の長さかハッシュの大きさの情報 -- に変換し、そのスカラ値に対して
436ハッシュの大きさの情報) に変換し、そのスカラ値に対して動作します。
286動作します。
287437これはおそらくしたいこととは違うでしょう。
288438代替案については L<perlfunc/grep> と L<perlfunc/map> を参照してください。
289439
290=item Args must match #! line
440=item Arg too short for msgsnd
291441
292442=begin original
293443
294(F) The setuid emulator requires that the arguments Perl was invoked
444(F) msgsnd() requires a string at least as long as sizeof(long).
295with match the arguments specified on the #! line. Since some systems
296impose a one-argument limit on the #! line, try combining switches;
297for example, turn C<-w -U> into C<-wU>.
298445
299446=end original
300447
301(F) setuid エミュレータでは、Perl を起動したとき引数と、
448(F) msgsnd() に渡す文字列は、少なくとも sizeof(long)長さが必要です。
302#! の行で指定された引数はマッチすることが要求されます。
303#! 行の 1 引数制限があるシステムがあるので、
304組み合わせスイッチを試してみてください;
305例えば、C<-w -U> を C<-wU> にしてください。
306449
307=item Arg too short for msgsnd
450=item Argument "%s" isn't numeric%s
308451
309452=begin original
310453
311(F) msgsnd() requires a string at least as long as sizeof(long).
454(W numeric) The indicated string was fed as an argument to an operator
455that expected a numeric value instead. If you're fortunate the message
456will identify which operator was so unfortunate.
312457
313458=end original
314459
315(F) msgsnd() に渡す文字列は、くとも sizeof(long)
460(W numeric) ここ示した文字列は、数値が必要演算子引数として、
316長さが必要です
461与えられました
462運がよければ、このメッセージによって、どの演算子が問題となったかが
463わかります。
317464
318=item %s argument is not a HASH or ARRAY element
465=begin original
319466
467Note that for the C<Inf> and C<NaN> (infinity and not-a-number) the
468definition of "numeric" is somewhat unusual: the strings themselves
469(like "Inf") are considered numeric, and anything following them is
470considered non-numeric.
471
472=end original
473
474Note that for the
475C<Inf> と C<NaN> (無限と非数) については、「数値」の定義が少し
476変わっていることに注意してください:
477("Inf" のような) これらの文字列自身は数値として扱われますが、それに
478何かが引き続いている場合は非数値として扱われます。
479
480=item Argument list not closed for PerlIO layer "%s"
481
320482=begin original
321483
322(F) The argument to exists() must be a hash or array element, such as:
484(W layer) When pushing a layer with arguments onto the Perl I/O
485system you forgot the ) that closes the argument list. (Layers
486take care of transforming data between external and internal
487representations.) Perl stopped parsing the layer list at this
488point and did not attempt to push this layer. If your program
489didn't explicitly request the failing operation, it may be the
490result of the value of the environment variable PERLIO.
323491
324492=end original
325493
326(F) exists() 引数
494(W layer) Perl I/O システムに層を引数付きで追加するときに引数リストを
327以下のようなハッシュの要素でなけばなりせん
495閉じる ) を忘てい
496(層はデータの外部表現と内部表現の変換を扱います。)
497Perl はここで層のリストのパースを中止し、この層の追加は行われませんでした。
498明示的に失敗する操作を要求していないのであれば、これは環境変数 PERLIO の
499値が原因かもしれません。
328500
329 $foo{$bar}
501=item Argument "%s" treated as 0 in increment (++)
330 $ref->{"susie"}[12]
331502
332=item %s argument is not a HASH or ARRAY element or slice
503=begin original
333504
505(W numeric) The indicated string was fed as an argument to the C<++>
506operator which expects either a number or a string matching
507C</^[a-zA-Z]*[0-9]*\z/>. See L<perlop/Auto-increment and
508Auto-decrement> for details.
509
510=end original
511
512(W numeric) 数値または C</^[a-zA-Z]*[0-9]*\z/> にマッチングする文字列を
513想定しているC<++> 演算子に、示された文字列が指定されました。
514詳しくは L<perlop/Auto-increment and Auto-decrement> を参照してください。
515
516=item Array passed to stat will be coerced to a scalar%s
517
334518=begin original
335519
336(F) The argument to delete() must be either a hash or array element,
520(W syntax) You called stat() on an array, but the array will be
337such as:
521coerced to a scalar - the number of elements in the array.
338522
339523=end original
340524
341(F) delete() の引数は以下のようにハッシュか配列の要素であるか:
525(W syntax) 配列に対して stat() が呼び出されましたが、配列
526スカラ - 配列の要素数 - に強制されました。
342527
343 $foo{$bar}
528=item A signature parameter must start with '$', '@' or '%'
344 $ref->{"susie"}[12]
345529
346530=begin original
347531
348or a hash or array slice, such as:
532(F) Each subroutine signature parameter declaration must start with a valid
533sigil; for example:
349534
350535=end original
351536
352あるいは以下ようにハッュか配列のスライスでければなりません:
537(F) それぞれサブルーチングネチャ引数宣言は、妥当印で
538始まらなければなりません; 例えば:
353539
354 @foo[$bar, $baz, $xyzzy]
540 sub foo ($a, $, $b = 1, @c) {}
355 @{$ref->[12]}{"susie", "queue"}
356541
357=item %s argument is not a subroutine name
542=item A slurpy parameter may not have a default value
358543
359544=begin original
360545
361(F) The argument to exists() for C<exists &sub> must be a subroutine
546(F) Only scalar subroutine signature parameters may have a default value;
362name, and not a subroutine call. C<exists &sub()> will generate this
547for example:
363error.
364548
365549=end original
366550
367(F) C<exists &sub> の形の exists() の引数はサブルーチン呼び出しではなく、
551(F) スカラサブルーチンシグネチャ引数のみがデフォルト値を持てます;
368サブルーチン名でなけれなりません。
552例え:
369C<exists &sub()> とするとこのエラーが生成されます。
370553
371=item Argument "%s" isn't numeric%s
554 sub foo ($a = 1) {} # legal
555 sub foo (@a = (1)) {} # invalid
556 sub foo (%a = (a => b)) {} # invalid
372557
558=item assertion botched: %s
559
373560=begin original
374561
375(W numeric) The indicated string was fed as an argument to an operator
562(X) The malloc package that comes with Perl had an internal failure.
376that expected a numeric value instead. If you're fortunate the message
377will identify which operator was so unfortunate.
378563
379564=end original
380565
381(W numeric)こに示た文字列は、数値が必要な演算子の引数とて、
566(X) Perl に付属の malloc ルーティンが内部エラーを起こした。
382与えられました。
383運がよければ、このメッセージによって、どの演算子が
384問題となったかがわかります。
385567
386=item Array @%s missing the @ in argument %d of %s()
568=item Assertion %s failed: file "%s", line %d
387569
388570=begin original
389571
390(D deprecated) Really old Perl let you omit the @ on array names in some
572(X) A general assertion failed. The file in question must be examined.
391spots. This is now heavily deprecated.
392573
393574=end original
394575
395(D deprecated) 本当に古い Perl では、場所によっては、配列名の @ を
576(X) 一般的なアサーションが失敗しました。
396省略できした
577問題の file を調べる必要があり
397この省略は、止めてください。
398578
399=item assertion botched: %s
579=item Assigned value is not a reference
400580
401581=begin original
402582
403(P) The malloc package that comes with Perl had an internal failure.
583(F) You tried to assign something that was not a reference to an lvalue
584reference (e.g., C<\$x = $y>). If you meant to make $x an alias to $y, use
585C<\$x = \$y>.
404586
405587=end original
406588
407(P) Perl に付属の malloc ルーティが内部エラー起こしました
589(F) リファレスでないもの左辺値リファレンスに代入ようとしました
590(例: C<\$x = $y>)。
591$x を $y の別名にすることを意図しているなら、C<\$x = \$y> を使ってください。
408592
409=item Assertion failed: file "%s"
593=item Assigned value is not %s reference
410594
411595=begin original
412596
413(P) A general assertion failed. The file in question must be examined.
597(F) You tried to assign a reference to a reference constructor, but the
598two references were not of the same type. You cannot alias a scalar to
599an array, or an array to a hash; the two types must match.
414600
415601=end original
416602
417(P) 一般的なアサーショが失敗しました
603(F) あるリファレスにリファレンスコンストラクタを代入ようとしましたが、
418問題 file を調べる必要がありま
604二つリファレンス同じ型ではありません
605スカラから配列への別名や配列からハッシュへの別名はできません;
606二つの型は一致していなければなりません。
419607
608 \$x = \@y; # error
609 \@x = \%y; # error
610 $y = [];
611 \$x = $y; # error; did you mean \$y?
612
613=item Assigning non-zero to $[ is no longer possible
614
615=begin original
616
617(F) When the "array_base" feature is disabled (e.g., under C<use v5.16;>)
618the special variable C<$[>, which is deprecated, is now a fixed zero value.
619
620=end original
621
622(F) (C<use v5.16;> のように) "array_base" 機能が無効の場合、廃止予定である
623特殊変数 C<$[> は 0 固定です。
624
420625=item Assignment to both a list and a scalar
421626
422627=begin original
423628
424629(F) If you assign to a conditional operator, the 2nd and 3rd arguments
425630must either both be scalars or both be lists. Otherwise Perl won't
426631know which context to supply to the right side.
427632
428633=end original
429634
430(F) 条件演算子へ代入を行なう場合には、2 つめの引数と、3 つめの引数は、
635(F) 条件演算子へ代入を行なう場合には、つめの引数と、3 つめの引数は、
431636ともにスカラか、ともにリストでなければなりません。
432637そうでないと、Perl は右辺のコンテキストを決めることができません。
433638
434=item Negative offset to vec in lvalue context
639=item Assuming NOT a POSIX class since %s in regex; marked by S<<-- HERE> in m/%s/
435640
436641=begin original
437642
438(F) When vec is called in an lvalue context, the second argument must be
643(W regexp) You had something like these:
439greater than or equal to zero.
440644
441645=end original
442646
443(F) 左辺値コンテキストで vec が呼び出されたき、
647(W regexp) 次のようなこをしました:
444二つ目の引数は 0 以上でなければなりません。
445648
446=item Attempt to free non-arena SV: 0x%lx
649 [[:alnum]]
650 [[:digit:xyz]
447651
448652=begin original
449653
450(P internal) All SV objects are supposed to be allocated from arenas
654They look like they might have been meant to be the POSIX classes
655C<[:alnum:]> or C<[:digit:]>. If so, they should be written:
656
657=end original
658
659これらは、POSIX クラス C<[:alnum:]> や C<[:digit:]> を意味しようと
660していたように見えます。
661もしそうなら、次のように書くべきです:
662
663 [[:alnum:]]
664 [[:digit:]xyz]
665
666=begin original
667
668Since these aren't legal POSIX class specifications, but are legal
669bracketed character classes, Perl treats them as the latter. In the
670first example, it matches the characters C<":">, C<"[">, C<"a">, C<"l">,
671C<"m">, C<"n">, and C<"u">.
672
673=end original
674
675これらは有効な POSIX クラスしようではありませんが、有効な
676大かっこ文字クラスなので、Perl これらを後者として扱います。
677一つ目の例では、これは C<":">, C<"[">, C<"a">, C<"l">,
678C<"m">, C<"n">, C<"u"> にマッチングします。
679
680=begin original
681
682If these weren't meant to be POSIX classes, this warning message is
683spurious, and can be suppressed by reordering things, such as
684
685=end original
686
687これらが POSIX クラスを意味していないなら、この警告は誤りで、
688次のように文字を入れ替えることで抑制できます:
689
690 [[al:num]]
691
692=begin original
693
694or
695
696=end original
697
698または
699
700 [[:munla]]
701
702=item <> at require-statement should be quotes
703
704=begin original
705
706(F) You wrote C<< require <file> >> when you should have written
707C<require 'file'>.
708
709=end original
710
711(F) C<require 'file'> と書くべきところで C<< require <file> >> と
712書いています。
713
714=item Attempt to access disallowed key '%s' in a restricted hash
715
716=begin original
717
718(F) The failing code has attempted to get or set a key which is not in
719the current set of allowed keys of a restricted hash.
720
721=end original
722
723(F) 制限ハッシュで許されているキーの集合に含まれていないキーに対して
724取得または設定しようとして失敗しました。
725
726=item Attempt to bless into a freed package
727
728=begin original
729
730(F) You wrote C<bless $foo> with one argument after somehow causing
731the current package to be freed. Perl cannot figure out what to
732do, so it throws up its hands in despair.
733
734=end original
735
736(F) 現在のパッケージが解放されるような何かが起きた後で 1 引数の
737C<bless $foo> を書きました。
738何がしたいのかが分からないので Perl はお手上げになりました。
739
740=item Attempt to bless into a reference
741
742=begin original
743
744(F) The CLASSNAME argument to the bless() operator is expected to be
745the name of the package to bless the resulting object into. You've
746supplied instead a reference to something: perhaps you wrote
747
748=end original
749
750(F) bless() 演算子の CLASSNAME 引数は結果のオブジェクトに bless する
751パッケージ名を想定しています。
752そこに何かへのリファレンスが与えられました:
753おそらく以下のようにしたのでしょう:
754
755 bless $self, $proto;
756
757=begin original
758
759when you intended
760
761=end original
762
763以下を意図していたはずです:
764
765 bless $self, ref($proto) || $proto;
766
767=begin original
768
769If you actually want to bless into the stringified version
770of the reference supplied, you need to stringify it yourself, for
771example by:
772
773=end original
774
775実際に与えられたリファレンスを文字列化したものに bless したい場合は、
776以下のようにして自分で文字列化する必要があります:
777
778 bless $self, "$proto";
779
780=item Attempt to clear deleted array
781
782=begin original
783
784(S debugging) An array was assigned to when it was being freed.
785Freed values are not supposed to be visible to Perl code. This
786can also happen if XS code calls C<av_clear> from a custom magic
787callback on the array.
788
789=end original
790
791(S debugging) 配列が、解放されるときに代入されました。
792解放された値は Perl コードからは見えないはずです。
793これはまた、XS コードが配列のカスタムマジックコールバックから
794C<av_clear> を呼び出したときにも起こります。
795
796=item Attempt to delete disallowed key '%s' from a restricted hash
797
798=begin original
799
800(F) The failing code attempted to delete from a restricted hash a key
801which is not in its key set.
802
803=end original
804
805(F) 制限ハッシュで、キー集合に含まれていないキーから削除しようとしました。
806
807=item Attempt to delete readonly key '%s' from a restricted hash
808
809=begin original
810
811(F) The failing code attempted to delete a key whose value has been
812declared readonly from a restricted hash.
813
814=end original
815
816(F) 制限ハッシュで、読み込み専用として宣言されている値のキーを
817削除しようとしました。
818
819=item Attempt to free non-arena SV: 0x%x
820
821=begin original
822
823(S internal) All SV objects are supposed to be allocated from arenas
451824that will be garbage collected on exit. An SV was discovered to be
452825outside any of those arenas.
453826
454827=end original
455828
456(P internal) すべての SV オブジェクトは、exit 時にガーベジコレクションが
829(S internal) すべての SV オブジェクトは、exit 時にガーベジコレクションが
457830行なわれるアリーナに割り当てるようになっています。
458831ある SV が、そういったアリーナに入っていないことが、見つかりました。
459832
460=item Attempt to free nonexistent shared string
833=item Attempt to free nonexistent shared string '%s'%s
461834
462835=begin original
463836
464(P internal) Perl maintains a reference counted internal table of
837(S internal) Perl maintains a reference-counted internal table of
465838strings to optimize the storage and access of hash keys and other
466839strings. This indicates someone tried to decrement the reference count
467840of a string that can no longer be found in the table.
468841
469842=end original
470843
471(P internal) Perl はストレージおよびハッシュキーとその他の
844(S internal) Perl はストレージおよびハッシュキーとその他の文字列へ
472文字列へのアクセスを最適化するために、文字列の参照数テーブルを
845アクセスを最適化するために、文字列の参照数テーブルを管理しています。
473管理してます。
846これは誰かがもうテーブルにな文字列の参照カウントを減らそうとしたことを
474これは誰かがもうテーブルにない文字列の参照カウントを減らそうと
847示します。
475したことを示します。
476848
477=item Attempt to free temp prematurely
849=item Attempt to free temp prematurely: SV 0x%x
478850
479851=begin original
480852
481(W debugging) Mortalized values are supposed to be freed by the
853(S debugging) Mortalized values are supposed to be freed by the
482854free_tmps() routine. This indicates that something else is freeing the
483855SV before the free_tmps() routine gets a chance, which means that the
484856free_tmps() routine will be freeing an unreferenced scalar when it does
485857try to free it.
486858
487859=end original
488860
489(W debugging) 消滅する値は、free_tmps() ルーティンで解放されるように
861(S debugging) 消滅する値は、free_tmps() ルーティンで解放されるように
490862なっています。
491863このメッセージは、free_tmps() ルーティンの前に何ものかが、SV を
492864解放しようとしていることを示していて、これは、free_tmps() が
493865解放しようとしたときには、どこからも参照されていないスカラを
494866解放することになるということです。
495867
496868=item Attempt to free unreferenced glob pointers
497869
498870=begin original
499871
500(P internal) The reference counts got screwed up on symbol aliases.
872(S internal) The reference counts got screwed up on symbol aliases.
501873
502874=end original
503875
504(P internal) シンボルのエイリアスについて、参照カウントの値がおかしな
876(S internal) シンボルのエイリアスについて、参照カウントの値がおかしな
505877状態になりました。
506878
507=item Attempt to free unreferenced scalar
879=item Attempt to free unreferenced scalar: SV 0x%x
508880
509881=begin original
510882
511(W internal) Perl went to decrement the reference count of a scalar to
883(S internal) Perl went to decrement the reference count of a scalar to
512884see if it would go to 0, and discovered that it had already gone to 0
513885earlier, and should have been freed, and in fact, probably was freed.
514886This could indicate that SvREFCNT_dec() was called too many times, or
515887that SvREFCNT_inc() was called too few times, or that the SV was
516888mortalized when it shouldn't have been, or that memory has been
517889corrupted.
518890
519891=end original
520892
521(W) Perl がスカラの参照カウントをデクリメントしようとして、0 に
893(S internal) Perl がスカラの参照カウントをデクリメントしようとして、0 に
522なるかを見たところ、既に 0 になっていることがわかりました
894なるかを見たところ、既に 0 になっていることがわかりました;
523895これは、既に解放されているべきものであり、実際は、おそらく、
524896解放されたものでしょう。
525897これは、SvREFCNT_dec() が必要以上に呼ばれたか、SvREFCNT_inc() が必要な
526898ときに呼ばれなかったか、SV が消滅すべきで無いときに消滅してしまったか、
527899メモリ異常になったことが考えられます。
528900
529=item Attempt to join self
530
531=begin original
532
533(F) You tried to join a thread from within itself, which is an
534impossible task. You may be joining the wrong thread, or you may need
535to move the join() to some other thread.
536
537=end original
538
539(F) スレッドをそれ自身の中から join しようとしました。
540これは不可能な動作です。
541間違ったスレッドに join しようとしているか、
542あるいは join() を他のスレッドに移動させる必要があります。
543
544901=item Attempt to pack pointer to temporary value
545902
546903=begin original
547904
548905(W pack) You tried to pass a temporary value (like the result of a
549906function, or a computed expression) to the "p" pack() template. This
550907means the result contains a pointer to a location that could become
551908invalid anytime, even before the end of the current statement. Use
552909literals or global values as arguments to the "p" pack() template to
553910avoid this warning.
554911
555912=end original
556913
557914(W pack) (関数の結果や計算された式といった)一時的な値を pack() の
558915"p" テンプレートに渡そうとしました。
559916これは、たとえ現在の文の終了前でも、不正な値となり得ます。
560この警告を避けるためには、pack テンプレート "p" の引数として、
917この警告を避けるためには、pack テンプレート "p" の引数として、リテラルか
561リテラルかグローバルな値を使ってください。
918グローバルな値を使ってください。
562919
920=item Attempt to reload %s aborted.
921
922=begin original
923
924(F) You tried to load a file with C<use> or C<require> that failed to
925compile once already. Perl will not try to compile this file again
926unless you delete its entry from %INC. See L<perlfunc/require> and
927L<perlvar/%INC>.
928
929=end original
930
931(F) 既に一度コンパイルに失敗しているファイルを C<use> や C<require> で
932読み込もうとしました。
933Perl は %INC からこのファイルのエントリを削除するまで再びファイルを
934コンパイルしようとはしません。
935L<perlfunc/require> と L<perlvar/%INC> を参照してください。
936
937=item Attempt to set length of freed array
938
939=begin original
940
941(W misc) You tried to set the length of an array which has
942been freed. You can do this by storing a reference to the
943scalar representing the last index of an array and later
944assigning through that reference. For example
945
946=end original
947
948(W misc) 既に解放された配列の長さを設定しようとしました。
949配列の最後のインデックスを表現するスカラをリファレンスに保存して、
950後でこのリファレンスを通して代入することでこれを行えます。
951例えば:
952
953 $r = do {my @a; \$#a};
954 $$r = 503
955
563956=item Attempt to use reference as lvalue in substr
564957
565958=begin original
566959
567960(W substr) You supplied a reference as the first argument to substr()
568961used as an lvalue, which is pretty strange. Perhaps you forgot to
569962dereference it first. See L<perlfunc/substr>.
570963
571964=end original
572965
573966(W substr) 左辺値として使われる substr() の 1 番目の引数としてリファレンスを
574967渡しました; これはやや奇妙なことです。
575968おそらくはまずデリファレンスするのを忘れたのでしょう。
576969L<perlfunc/substr> を参照してください。
577970
578=item Bad arg length for %s, is %d, should be %d
971=item Attribute prototype(%s) discards earlier prototype attribute in same sub
579972
580973=begin original
581974
975(W misc) A sub was declared as sub foo : prototype(A) : prototype(B) {}, for
976example. Since each sub can only have one prototype, the earlier
977declaration(s) are discarded while the last one is applied.
978
979=end original
980
981(W misc) あるサブルーチンが、例えば
982sub foo : prototype(A) : prototype(B) {} のように宣言されました。
983それぞれのサブルーチンは一つのプロトタイプしか持てないので、先に
984宣言されたものは破棄され、最後のものが適用されます。
985
986=item av_reify called on tied array
987
988=begin original
989
990(S debugging) This indicates that something went wrong and Perl got I<very>
991confused about C<@_> or C<@DB::args> being tied.
992
993=end original
994
995(S debugging) これは、C<@_> や C<@DB::args> が tie されたことに関して何かが
996うまくいかなくて Perl が I<とても> 混乱したことを示しています。
997
998=item Bad arg length for %s, is %u, should be %d
999
1000=begin original
1001
5821002(F) You passed a buffer of the wrong size to one of msgctl(), semctl()
5831003or shmctl(). In C parlance, the correct sizes are, respectively,
5841004S<sizeof(struct msqid_ds *)>, S<sizeof(struct semid_ds *)>, and
5851005S<sizeof(struct shmid_ds *)>.
5861006
5871007=end original
5881008
5891009(F) msgctl()、semctl()、shmctl() のいずれかに、間違ったサイズのバッファを
5901010渡してしまいました。
5911011C の言い方で書くと、正しいサイズはそれぞれ、sizeof(struct msqid_ds *)、
5921012sizeof(struct semid_ds *)、sizeof(struct shmid_ds *) です。
5931013
5941014=item Bad evalled substitution pattern
5951015
5961016=begin original
5971017
598(F) You've used the /e switch to evaluate the replacement for a
1018(F) You've used the C</e> switch to evaluate the replacement for a
5991019substitution, but perl found a syntax error in the code to evaluate,
6001020most likely an unexpected right brace '}'.
6011021
6021022=end original
6031023
6041024(F)置換のための置き換え文字列を評価するために C</e> オプションを指定して
6051025いますが、評価するコードに文法エラーがありました;
6061026最もありそうなことは、予期しない位置に右中かっこ '}' があったことです。
6071027
6081028=item Bad filehandle: %s
6091029
6101030=begin original
6111031
6121032(F) A symbol was passed to something wanting a filehandle, but the
6131033symbol has no filehandle associated with it. Perhaps you didn't do an
6141034open(), or did it in another package.
6151035
6161036=end original
6171037
618(F) ファイルハンドルが必要なものに、シンボルを渡しましたが、
1038(F) ファイルハンドルが必要なものに、シンボルを渡しましたが、そのシンボルは、
619のシンボルは、それに伴うファイルハンドルがありません。
1039それに伴うファイルハンドルがありません。
6201040おそらく、open() を忘れたか、別のパッケージで open() したかでしょう。
6211041
6221042=item Bad free() ignored
6231043
6241044=begin original
6251045
6261046(S malloc) An internal routine called free() on something that had never
627been malloc()ed in the first place. Mandatory, but can be disabled by
1047been malloc()ed in the first place. Mandatory, but can be disabled by
6281048setting environment variable C<PERL_BADFREE> to 0.
6291049
6301050=end original
6311051
6321052(S malloc) まず、malloc() されていないものに対して、内部ルーティンが
6331053free() を呼びました。
6341054強制ですが、環境変数 C<PERL_BADFREE> を 0 にすることで無効化できます。
6351055
6361056=begin original
6371057
6381058This message can be seen quite often with DB_File on systems with "hard"
639dynamic linking, like C<AIX> and C<OS/2>. It is a bug of C<Berkeley DB>
1059dynamic linking, like C<AIX> and C<OS/2>. It is a bug of C<Berkeley DB>
6401060which is left unnoticed if C<DB> uses I<forgiving> system malloc().
6411061
6421062=end original
6431063
6441064このメッセージ は、C<AIX> や C<OS/2> のような、「ハード」動的リンクを
6451065行うシステムで DB_File を使うとしばしば表示されます。
6461066これは C<DB> がシステムの malloc() を許していることに気が付かない
6471067C<Berkeley DB> のバグです。
6481068
6491069=item Bad hash
6501070
6511071=begin original
6521072
6531073(P) One of the internal hash routines was passed a null HV pointer.
6541074
6551075=end original
6561076
6571077(P) 内部ハッシュルーティンで、ヌル HV ポインタを渡されたものがありました。
6581078
659=item Bad index while coercing array into hash
660
661=begin original
662
663(F) The index looked up in the hash found as the 0'th element of a
664pseudo-hash is not legal. Index values must be at 1 or greater.
665See L<perlref>.
666
667=end original
668
669(F) 擬似ハッシュの 0 番目の要素として見つかったハッシュの中の
670インデックス検索は不正です。
671インデックスの値は 1 以上でなければなりません。
672L<perlref> を参照してください。
673
6741079=item Badly placed ()'s
6751080
6761081=begin original
6771082
6781083(A) You've accidentally run your script through B<csh> instead
6791084of Perl. Check the #! line, or manually feed your script into
6801085Perl yourself.
6811086
6821087=end original
6831088
6841089(A) スクリプトを perl ではなく B<csh> で実行しようとしました。
6851090#! 行をチェックするか、スクリプトを直接 Perl で起動してください。
6861091
687=item Bad name after %s::
1092=item Bad name after %s
6881093
6891094=begin original
6901095
6911096(F) You started to name a symbol by using a package prefix, and then
6921097didn't finish the symbol. In particular, you can't interpolate outside
6931098of quotes, so
6941099
6951100=end original
6961101
697(F) パッケージプレフィクスでシンボル名を書き始めましたが、
1102(F) パッケージプレフィクスでシンボル名を書き始めましたが、そのシンボルが
698そのシンボルが終了しませんでした。
1103終了しませんでした。
6991104特に、クォートの外で、変数展開はできませんから、
7001105
7011106 $var = 'myvar';
7021107 $sym = mypack::$var;
7031108
7041109=begin original
7051110
7061111is not the same as
7071112
7081113=end original
7091114
7101115は、以下と同じではありません。
7111116
7121117 $var = 'myvar';
7131118 $sym = "mypack::$var";
7141119
1120=item Bad plugin affecting keyword '%s'
1121
1122=begin original
1123
1124(F) An extension using the keyword plugin mechanism violated the
1125plugin API.
1126
1127=end original
1128
1129(F) キーワードプラグイン機構を使っているエクステンションがプラグイン API に
1130違反しました。
1131
7151132=item Bad realloc() ignored
7161133
7171134=begin original
7181135
719(S malloc) An internal routine called realloc() on something that had
1136(S malloc) An internal routine called realloc() on something that
720never been malloc()ed in the first place. Mandatory, but can be disabled
1137had never been malloc()ed in the first place. Mandatory, but can
721by setting environment variable C<PERL_BADFREE> to 1.
1138be disabled by setting the environment variable C<PERL_BADFREE> to 1.
7221139
7231140=end original
7241141
7251142(S malloc) 内部ルーチンが、最初に malloc() されていない何かに対して
7261143realloc() を呼び出しました。
7271144必須ですが、環境変数 C<PERL_BADFREE> に 1 をセットすることで無効化できます。
7281145
7291146=item Bad symbol for array
7301147
7311148=begin original
7321149
7331150(P) An internal request asked to add an array entry to something that
7341151wasn't a symbol table entry.
7351152
7361153=end original
7371154
7381155(P) シンボルテーブルエントリではないものに、配列エントリを登録するような
7391156内部要求があがりました。
7401157
1158=item Bad symbol for dirhandle
1159
1160=begin original
1161
1162(P) An internal request asked to add a dirhandle entry to something
1163that wasn't a symbol table entry.
1164
1165=end original
1166
1167(P) シンボルテーブルエントリではないものに、ディレクトリハンドルエントリを
1168登録するような内部要求があがりました。
1169
7411170=item Bad symbol for filehandle
7421171
7431172=begin original
7441173
7451174(P) An internal request asked to add a filehandle entry to something
7461175that wasn't a symbol table entry.
7471176
7481177=end original
7491178
7501179(P) シンボルテーブルエントリではないものに、ファイルハンドルエントリを
7511180登録するような内部要求があがりました。
7521181
7531182=item Bad symbol for hash
7541183
7551184=begin original
7561185
7571186(P) An internal request asked to add a hash entry to something that
7581187wasn't a symbol table entry.
7591188
7601189=end original
7611190
7621191(P) シンボルテーブルエントリではないものに、ハッシュエントリを
7631192登録するような内部要求があがった。
7641193
1194=item Bad symbol for scalar
1195
1196=begin original
1197
1198(P) An internal request asked to add a scalar entry to something that
1199wasn't a symbol table entry.
1200
1201=end original
1202
1203(P) 内部で、シンボルテーブルエントリでないものに対してスカラエントリを
1204追加するよう要求がありました。
1205
7651206=item Bareword found in conditional
7661207
7671208=begin original
7681209
7691210(W bareword) The compiler found a bareword where it expected a
7701211conditional, which often indicates that an || or && was parsed as part
7711212of the last argument of the previous construct, for example:
7721213
7731214=end original
7741215
775(W bareword) コンパイラが、条件が想定される位置に裸の単語を発見しました
1216(W bareword) コンパイラが、条件が想定される位置に裸の単語を発見しました;
7761217これはしばしば、|| や && が直前の構造の最後の引数の一部として
7771218パースされたことを意味します; 例えば:
7781219
7791220 open FOO || die;
7801221
7811222=begin original
7821223
7831224It may also indicate a misspelled constant that has been interpreted as
7841225a bareword:
7851226
7861227=end original
7871228
7881229これはまた、裸の単語として解釈されるような定数をタイプミスしたことを
7891230示している場合もあります:
7901231
7911232 use constant TYPO => 1;
7921233 if (TYOP) { print "foo" }
7931234
7941235=begin original
7951236
7961237The C<strict> pragma is useful in avoiding such errors.
7971238
7981239=end original
7991240
8001241C<strict> プラグマはこのようなエラーを防ぐのに便利です。
8011242
1243=item Bareword in require contains "%s"
1244
1245=item Bareword in require maps to disallowed filename "%s"
1246
1247=item Bareword in require maps to empty filename
1248
1249=begin original
1250
1251(F) The bareword form of require has been invoked with a filename which could
1252not have been generated by a valid bareword permitted by the parser. You
1253shouldn't be able to get this error from Perl code, but XS code may throw it
1254if it passes an invalid module name to C<Perl_load_module>.
1255
1256=end original
1257
1258(F) 裸の単語形式の require は、パーサによって許された妥当な裸の単語によって
1259生成することができないファイル名で起動されました。
1260このエラーを Perl コードから得るようにできるべきではありませんが、
1261C<Perl_load_module> に不正なモジュール名を渡した XS コードは
1262これを投げるかもしれません。
1263
1264=item Bareword in require must not start with a double-colon: "%s"
1265
1266=begin original
1267
1268(F) In C<require Bare::Word>, the bareword is not allowed to start with a
1269double-colon. Write C<require ::Foo::Bar> as C<require Foo::Bar> instead.
1270
1271=end original
1272
1273(F) C<require Bare::Word> で、裸の単語はダブルコロンから
1274開始することはできません。
1275C<require ::Foo::Bar> ではなく C<require Foo::Bar> と書いてください。
1276
8021277=item Bareword "%s" not allowed while "strict subs" in use
8031278
8041279=begin original
8051280
8061281(F) With "strict subs" in use, a bareword is only allowed as a
8071282subroutine identifier, in curly brackets or to the left of the "=>"
8081283symbol. Perhaps you need to predeclare a subroutine?
8091284
8101285=end original
8111286
812"strict subs" が有効の場合、裸の単語はサブルーチンの識別子、
1287"strict subs" が有効の場合、裸の単語はサブルーチンの識別子、中かっこの中、
813中かっこの中、シンボル "=>" の左側でのみ許されます。
1288シンボル "=>" の左側でのみ許されます。
8141289おそらくサブルーチンを先行宣言する必要があるのでは?
8151290
8161291=item Bareword "%s" refers to nonexistent package
8171292
8181293=begin original
8191294
8201295(W bareword) You used a qualified bareword of the form C<Foo::>, but the
8211296compiler saw no other uses of that namespace before that point. Perhaps
8221297you need to predeclare a package?
8231298
8241299=end original
8251300
8261301(W bareword) C<Foo::> の形で修飾された裸の単語が使われていますが、
8271302コンパイラはこの場所以外でこの名前空間が使われている場所を
8281303発見できませんでした。
8291304おそらくパッケージを専攻宣言する必要があるのでは?
8301305
8311306=item BEGIN failed--compilation aborted
8321307
8331308=begin original
8341309
8351310(F) An untrapped exception was raised while executing a BEGIN
8361311subroutine. Compilation stops immediately and the interpreter is
8371312exited.
8381313
8391314=end original
8401315
841(F) BEGIN サブルーティンの実行中にトラップ不可能な例外が発生しました。
1316(F) BEGIN サブルーンの実行中にトラップ不可能な例外が発生しました。
8421317コンパイルは即座に停止し、インタプリタは中止します。
8431318
8441319=item BEGIN not safe after errors--compilation aborted
8451320
8461321=begin original
8471322
8481323(F) Perl found a C<BEGIN {}> subroutine (or a C<use> directive, which
8491324implies a C<BEGIN {}>) after one or more compilation errors had already
8501325occurred. Since the intended environment for the C<BEGIN {}> could not
8511326be guaranteed (due to the errors), and since subsequent code likely
8521327depends on its correct operation, Perl just gave up.
8531328
8541329=end original
8551330
8561331(F) Perl は既にコンパイルエラーが発生した後に C<BEGIN {}> サブルーチン
857(または C<use> 指示子(これは C<BEGIN {}> を暗示します))を
1332(または C<use> 指示子(これは C<BEGIN {}> を暗示します))を発見しました。
858発見まし
1333C<BEGIN {}> が意図した環境は(エラーのために)保証されず、引き続くコードは
859C<BEGIN {}> が意図た環境は(エラーのため)保証さ
1334い処理依存していると考えらるのでPerl は単に諦めました。
860引き続くコードは正しい処理に依存していると考えられるので、
861Perl は単に諦めました。
8621335
863=item \1 better written as $1
1336=item \%d better written as $%d
8641337
8651338=begin original
8661339
8671340(W syntax) Outside of patterns, backreferences live on as variables.
8681341The use of backslashes is grandfathered on the right-hand side of a
8691342substitution, but stylistically it's better to use the variable form
8701343because other Perl programmers will expect it, and it works better if
8711344there are more than 9 backreferences.
8721345
8731346=end original
8741347
8751348(W syntax) パターンの外では、後方参照は変数の形で存在します。
876後方参照の利用は、置換の右側の部分で扱われますが、スタイル的には、
1349後方参照の利用は、置換の右側の部分で扱われますが、スタイル的には、他の
877他の Perl プログラマが期待し、9 個以上の後方参照があるときにも
1350Perl プログラマが期待し、9 個以上の後方参照があるときにもうまく動作する、
878うまく動作する、変数形式を使う方が良いでしょう。
1351変数形式を使う方が良いでしょう。
8791352
8801353=item Binary number > 0b11111111111111111111111111111111 non-portable
8811354
8821355=begin original
8831356
8841357(W portable) The binary number you specified is larger than 2**32-1
8851358(4294967295) and therefore non-portable between systems. See
8861359L<perlport> for more on portability concerns.
8871360
8881361=end original
8891362
8901363(W portable) 指定された 2 進数が 2**32-1 (4294967295) を越えるので、
8911364システム間での移植性がありません。
8921365移植性に関するさらなる考察については L<perlport> を参照してください。
8931366
8941367=item bind() on closed socket %s
8951368
8961369=begin original
8971370
8981371(W closed) You tried to do a bind on a closed socket. Did you forget to
8991372check the return value of your socket() call? See L<perlfunc/bind>.
9001373
9011374=end original
9021375
9031376(W closed) クローズされたソケットに bind を行なおうとしました。
9041377socket() の呼び出し時に、返却値のチェックを忘れたのではありませんか。
9051378L<perlfunc/bind> を参照してください。
9061379
1380=item binmode() on closed filehandle %s
1381
1382=begin original
1383
1384(W unopened) You tried binmode() on a filehandle that was never opened.
1385Check your control flow and number of arguments.
1386
1387=end original
1388
1389(W unopened) 開いていないファイルハンドルに binmode() を使おうとしました。
1390制御フローと引数の数をチェックしてください。
1391
9071392=item Bit vector size > 32 non-portable
9081393
9091394=begin original
9101395
9111396(W portable) Using bit vector sizes larger than 32 is non-portable.
9121397
9131398=end original
9141399
9151400(W portable) 32 を越えるサイズのビットベクタは移植性がありません。
9161401
917=item Bizarre copy of %s in %s
1402=item Bizarre copy of %s
9181403
9191404=begin original
9201405
9211406(P) Perl detected an attempt to copy an internal value that is not
922copyable.
1407copiable.
9231408
9241409=end original
9251410
9261411(P) コピーできない内部の値をコピーしようとしました。
9271412
928=item B<-P> not allowed for setuid/setgid script
1413=item Bizarre SvTYPE [%d]
9291414
9301415=begin original
9311416
932(F) The script would have to be opened by the C preprocessor by name,
1417(P) When starting a new thread or returning values from a thread, Perl
933which provides a race condition that breaks security.
1418encountered an invalid data type.
9341419
9351420=end original
9361421
937(F) C プリプロセサがクリプトオープンするときに
1422(P) 新しいスレドを始めたりレッドから値返したときに、Perl は不正な
938名前でオプンなければいけせんが、これは、安全性を損なう競合条件を
1423タ型に遭遇しました。
939もたらします。
9401424
1425=item Both or neither range ends should be Unicode in regex; marked by
1426S<<-- HERE> in m/%s/
1427
1428=begin original
1429
1430(W regexp) (only under C<S<use re 'strict'>> or within C<(?[...])>)
1431
1432=end original
1433
1434(W regexp) (C<S<use re 'strict'>> の基か C<(?[...])> の内側のみ)
1435
1436=begin original
1437
1438In a bracketed character class in a regular expression pattern, you
1439had a range which has exactly one end of it specified using C<\N{}>, and
1440the other end is specified using a non-portable mechanism. Perl treats
1441the range as a Unicode range, that is, all the characters in it are
1442considered to be the Unicode characters, and which may be different code
1443points on some platforms Perl runs on. For example, C<[\N{U+06}-\x08]>
1444is treated as if you had instead said C<[\N{U+06}-\N{U+08}]>, that is it
1445matches the characters whose code points in Unicode are 6, 7, and 8.
1446But that C<\x08> might indicate that you meant something different, so
1447the warning gets raised.
1448
1449=end original
1450
1451正規表現中の大かっこ文字クラスの中で、範囲指定の片方は C<\N{}> を使って
1452指定し、もう片方は移植性のない方法を使って指定しました。
1453Perl はこの範囲を Unicode の範囲として扱います; つまり、その中の全ての文字は
1454Unicode 文字として扱われ、Perl が実行される一部のプラットフォームでは
1455異なる符号位置になるかもしれません。
1456例えば、C<[\N{U+06}-\x08]> は、C<[\N{U+06}-\N{U+08}]> と
1457書いたかのように扱われ、Unicode の符号位置 6, 7, 8 の文字にマッチングします。
1458しかし、C<\x08> はなにか違うことを意味していることを示しているので、
1459警告が発生します。
1460
9411461=item Buffer overflow in prime_env_iter: %s
9421462
9431463=begin original
9441464
9451465(W internal) A warning peculiar to VMS. While Perl was preparing to
9461466iterate over %ENV, it encountered a logical name or symbol definition
9471467which was too long, so it was truncated to the string shown.
9481468
9491469=end original
9501470
951(W) VMS 有の警告です。
1471(W internal) VMS に固有の警告です。
952Perl が %ENV を反復する準備中、長すぎる論理名かシンボル定義に
1472Perl が %ENV を反復する準備中、長すぎる論理名かシンボル定義に遭遇したので、
953遭遇したので、文字列は表示したように切り詰められました。
1473文字列は表示したように切り詰められました。
9541474
9551475=item Callback called exit
9561476
9571477=begin original
9581478
9591479(F) A subroutine invoked from an external package via call_sv()
9601480exited by calling exit.
9611481
9621482=end original
9631483
964(F) 外部パッケージから call_sv() で起動されたサブルーティンが exit を
1484(F) 外部パッケージから call_sv() で起動されたサブルーンが exit を呼んで
965呼んで終了しました。
1485終了しました。
9661486
9671487=item %s() called too early to check prototype
9681488
9691489=begin original
9701490
9711491(W prototype) You've called a function that has a prototype before the
9721492parser saw a definition or declaration for it, and Perl could not check
9731493that the call conforms to the prototype. You need to either add an
9741494early prototype declaration for the subroutine in question, or move the
9751495subroutine definition ahead of the call to get proper prototype
9761496checking. Alternatively, if you are certain that you're calling the
9771497function correctly, you may put an ampersand before the name to avoid
9781498the warning. See L<perlsub>.
9791499
9801500=end original
9811501
9821502(W prototype) 以前にパーサが宣言または定義されているのを見た、
9831503プロトタイプ付きの関数を呼び出しましたが、Perl は呼び出しがプロトタイプに
9841504従っているかどうかをチェックできませんでした。
9851505問題になっているサブルーチンのプロトタイプ宣言を最初の方に追加するか、
9861506適切なプロトタイプチェックを行うためにサブルーチン定義を呼び出しの前に
9871507移動させる必要があります。
9881508または、関数を正しく呼び出していることが確かな場合は、名前の前に
9891509アンパサンドを付けることで警告を回避できます。
9901510L<perlsub> を参照してください。
9911511
992=item / cannot take a count
1512=item Cannot chr %f
9931513
9941514=begin original
9951515
996(F) You had an unpack template indicating a counted-length string, but
1516(F) You passed an invalid number (like an infinity or not-a-number) to C<chr>.
997you have also specified an explicit size for the string. See
998L<perlfunc/pack>.
9991517
10001518=end original
10011519
1002(F) unpack のテンプレートとてカウント長文字列を示していすが、
1520(F) (無限や非数のような) 不正な数値を C<chr> に渡しました。
1003文字列の長さも明示的に指定しています。
1522=item Cannot complete in-place edit of %s: %s
1523
1524=begin original
1525
1526(F) Your perl script appears to have changed directory while
1527performing an in-place edit of a file specified by a relative path,
1528and your system doesn't include the directory relative POSIX functions
1529needed to handle that.
1530
1531=end original
1532
1533(F) perl スクリプトが、相対パスで指定されたファイルのその場編集を
1534実行中にディレクトリを変更し、システムにはこれに対応するために必要な
1535ディレクトリ相対 POSIX 関数がないようです。
1536
1537=item Cannot compress %f in pack
1538
1539=begin original
1540
1541(F) You tried compressing an infinity or not-a-number as an unsigned
1542integer with BER, which makes no sense.
1543
1544=end original
1545
1546(F) 無限や非数を BER で符号なし整数に圧縮しようとしました; これは無意味です。
1547
1548=item Cannot compress integer in pack
1549
1550=begin original
1551
1552(F) An argument to pack("w",...) was too large to compress.
1553The BER compressed integer format can only be used with positive
1554integers, and you attempted to compress a very large number (> 1e308).
1555See L<perlfunc/pack>.
1556
1557=end original
1558
1559(F) pack("w",...) の引数が、圧縮するには大きすぎます。
1560BER 圧縮整数フォーマットは正の整数のみ扱えますが、とても大きい数
1561(> 1e308) を圧縮しようとしました。
10041562L<perlfunc/pack> を参照してください。
10051563
1564=item Cannot compress negative numbers in pack
1565
1566=begin original
1567
1568(F) An argument to pack("w",...) was negative. The BER compressed integer
1569format can only be used with positive integers. See L<perlfunc/pack>.
1570
1571=end original
1572
1573(F) pack("w",...) の引数が負数です。
1574BER 圧縮整数フォーマットは正の整数のみ扱えます。
1575L<perlfunc/pack> を参照してください。
1576
1577=item Cannot convert a reference to %s to typeglob
1578
1579=begin original
1580
1581(F) You manipulated Perl's symbol table directly, stored a reference
1582in it, then tried to access that symbol via conventional Perl syntax.
1583The access triggers Perl to autovivify that typeglob, but it there is
1584no legal conversion from that type of reference to a typeglob.
1585
1586=end original
1587
1588(F) あなたは Perl のシンボルテーブルを直接操作して、リファレンスをその中に
1589補完し、それからそのシンボルを伝統的な Perl の文法のよって
1590アクセスしようとしました。
1591このアクセスによって、Perl はこの型グロブを自動有効化しますが、
1592リファレンス型から型グロブへの正当な変換方法はありません。
1593
1594=item Cannot copy to %s
1595
1596=begin original
1597
1598(P) Perl detected an attempt to copy a value to an internal type that cannot
1599be directly assigned to.
1600
1601=end original
1602
1603(P) Perl が、直接代入できない内部型に値をコピーしようとする試みを
1604検出しました。
1605
1606=item Cannot find encoding "%s"
1607
1608=begin original
1609
1610(S io) You tried to apply an encoding that did not exist to a filehandle,
1611either with open() or binmode().
1612
1613=end original
1614
1615(S io) open() または binmode() のファイルハンドルに存在しない
1616エンコーディングを適用しようとしました。
1617
1618=item Cannot open %s as a dirhandle: it is already open as a filehandle
1619
1620=begin original
1621
1622(F) You tried to use opendir() to associate a dirhandle to a symbol (glob
1623or scalar) that already holds a filehandle. Since this idiom might render
1624your code confusing, it was deprecated in Perl 5.10. As of Perl 5.28, it
1625is a fatal error.
1626
1627=end original
1628
1629(F) すでにファイルハンドルを保持しているシンボル
1630(グロブまたはスカラ)にディレクトリハンドルを関連付けるために
1631opendir() を使おうとしました。
1632この用法はコードを間違えて解釈する可能性があるので、
1633Perl 5.10 で廃止予定になりました。
1634Perl 5.28 から、これは致命的エラーです。
1635
1636=item Cannot open %s as a filehandle: it is already open as a dirhandle
1637
1638=begin original
1639
1640(F) You tried to use open() to associate a filehandle to a symbol (glob
1641or scalar) that already holds a dirhandle. Since this idiom might render
1642your code confusing, it was deprecated in Perl 5.10. As of Perl 5.28, it
1643is a fatal error.
1644
1645=end original
1646
1647(F) すでにディレクトリハンドルを保持しているシンボル
1648(グロブまたはスカラ)にファイルハンドルを関連付けるために
1649open() を使おうとしました。
1650この用法はコードを間違えて解釈する可能性があるので、
1651Perl 5.10 で廃止予定になりました。
1652Perl 5.28 から、これは致命的エラーです。
1653
1654=item Cannot pack %f with '%c'
1655
1656=begin original
1657
1658(F) You tried converting an infinity or not-a-number to an integer,
1659which makes no sense.
1660
1661=end original
1662
1663(F) 無限や非数を整数に変換しようとしました; これは無意味です。
1664
1665=item Cannot printf %f with '%c'
1666
1667=begin original
1668
1669(F) You tried printing an infinity or not-a-number as a character (%c),
1670which makes no sense. Maybe you meant '%s', or just stringifying it?
1671
1672=end original
1673
1674(F) 無限や非数を文字 (%c) として表示しようとしました; これは無意味です。
1675おそらく '%s' か、単に文字列化したかったのでは?
1676
1677=item Cannot set tied @DB::args
1678
1679=begin original
1680
1681(F) C<caller> tried to set C<@DB::args>, but found it tied. Tying C<@DB::args>
1682is not supported. (Before this error was added, it used to crash.)
1683
1684=end original
1685
1686(F) C<caller> は C<@DB::args> を設定しようとしましたが、tie されていました。
1687C<@DB::args> の tie は非対応です。
1688(このエラーが追加する前は、クラッシュしていました。)
1689
1690=item Cannot tie unreifiable array
1691
1692=begin original
1693
1694(P) You somehow managed to call C<tie> on an array that does not
1695keep a reference count on its arguments and cannot be made to
1696do so. Such arrays are not even supposed to be accessible to
1697Perl code, but are only used internally.
1698
1699=end original
1700
1701(P) 参照カウントを保持していない配列を引数にして C<tie> を
1702呼び出そうとしましたがそうできませんでした。
1703このような配列は Perl コードからアクセスできると想定してはならず、
1704内部だけで使われます。
1705
1706=item Cannot yet reorder sv_catpvfn() arguments from va_list
1707
1708=begin original
1709
1710(F) Some XS code tried to use C<sv_catpvfn()> or a related function with a
1711format string that specifies explicit indexes for some of the elements, and
1712using a C-style variable-argument list (a C<va_list>). This is not currently
1713supported. XS authors wanting to do this must instead construct a C array
1714of C<SV*> scalars containing the arguments.
1715
1716=end original
1717
1718(F) 一部の XS コードは、要素の一部の明示的なインデックスを指定した
1719フォーマット文字列を使って C<sv_catpvfn()> や関連する関数を使おうとして、
1720C 形式の可変引数リスト (C<va_list>) を使っています。
1721これは現在のところ対応していません。
1722これをしたい XS 作者は代わりに、引数を含む
1723C<SV*> スカラの C 配列を構築しなければなりません。
1724
1725=item Can only compress unsigned integers in pack
1726
1727=begin original
1728
1729(F) An argument to pack("w",...) was not an integer. The BER compressed
1730integer format can only be used with positive integers, and you attempted
1731to compress something else. See L<perlfunc/pack>.
1732
1733=end original
1734
1735(F) pack("w",...) の引数が整数ではありません。
1736BER 圧縮整数フォーマットは正の整数のみ扱えますが、何か他のものを
1737圧縮しようとしました。
1738L<perlfunc/pack> を参照してください。
1739
10061740=item Can't bless non-reference value
10071741
10081742=begin original
10091743
10101744(F) Only hard references may be blessed. This is how Perl "enforces"
10111745encapsulation of objects. See L<perlobj>.
10121746
10131747=end original
10141748
10151749(F) ハードリファレンスのみが bless できます。
10161750これによって、Perl はオブジェクトのカプセル化を「強制」します。
10171751L<perlobj> を参照してください。
10181752
1019=item Can't call method "%s" in empty package "%s"
1753=item Can't "break" in a loop topicalizer
10201754
10211755=begin original
10221756
1023(F) You called a method correctly, and it correctly indicated a package
1757(F) You called C<break>, but you're in a C<foreach> block rather than
1024functioning as a class, but that package doesn't have ANYTHING defined
1758a C<given> block. You probably meant to use C<next> or C<last>.
1025in it, let alone methods. See L<perlobj>.
10261759
10271760=end original
10281761
1029(F) 正しくメソッドを呼び出し、それは、クラスとて機能するパケージを
1762(F) C<break> を呼び出したが、C<given> ブロクではなく C<foreach>
1030正しく示していますが、そのパケージには、何も定義されておらず、
1763ブロク内でした。
1031メソッドだけになってます
1764おそらく C<next> や C<last> を使たかったのでしょう
1032L<perlobj> を参照してください。
10331765
1766=item Can't "break" outside a given block
1767
1768=begin original
1769
1770(F) You called C<break>, but you're not inside a C<given> block.
1771
1772=end original
1773
1774(F) C<break> を呼び出しましたが、C<given> ブロックの内側ではありません。
1775
10341776=item Can't call method "%s" on an undefined value
10351777
10361778=begin original
10371779
10381780(F) You used the syntax of a method call, but the slot filled by the
10391781object reference or package name contains an undefined value. Something
10401782like this will reproduce the error:
10411783
10421784=end original
10431785
1044(F) メソッド呼び出しの文法が使われていますが、
1786(F) メソッド呼び出しの文法が使われていますが、オブジェクトリファレンスか
1045オブジェクトリファレンスかパッケージ名であるべきところが未定義値です。
1787パッケージ名であるべきところが未定義値です。
10461788以下のように書くとエラーが再現します:
10471789
10481790 $BADREF = undef;
10491791 process $BADREF 1,2,3;
10501792 $BADREF->process(1,2,3);
10511793
10521794=item Can't call method "%s" on unblessed reference
10531795
10541796=begin original
10551797
10561798(F) A method call must know in what package it's supposed to run. It
10571799ordinarily finds this out from the object reference you supply, but you
10581800didn't supply an object reference in this case. A reference isn't an
10591801object reference until it has been blessed. See L<perlobj>.
10601802
10611803=end original
10621804
10631805(F) メソッド呼び出しは、自分が呼び出されたパッケージがどれであるかを
10641806知る必要があります。 普通は、渡したオブジェクトリファレンスから
10651807その情報を受け取りますが、この場合にはオブジェクトリファレンスが
10661808渡されませんでした。
10671809リファレンスは、bless されて始めて、オブジェクトリファレンスとなります。
10681810L<perlobj> を参照してください。
10691811
10701812=item Can't call method "%s" without a package or object reference
10711813
10721814=begin original
10731815
10741816(F) You used the syntax of a method call, but the slot filled by the
10751817object reference or package name contains an expression that returns a
10761818defined value which is neither an object reference nor a package name.
10771819Something like this will reproduce the error:
10781820
10791821=end original
10801822
10811823(F) メソッド呼び出しの構文を用いましたが、オブジェクトリファレンス、
10821824もしくはパッケージ名が書かれるべき場所に、オブジェクトリファレンスも
10831825パッケージ名も返さない定義された式が書かれています。
1084(おそらく、何もいてないかもせん。)
1826以下のようにくとエラーが再現します:
1085以下のようなものは、エラーとなります:
10861827
10871828 $BADREF = 42;
10881829 process $BADREF 1,2,3;
10891830 $BADREF->process(1,2,3);
10901831
1091=item Can't chdir to %s
1832=item Can't call mro_isa_changed_in() on anonymous symbol table
10921833
10931834=begin original
10941835
1095(F) You called C<perl -x/foo/bar>, but C</foo/bar> is not a directory
1836(P) Perl got confused as to whether a hash was a plain hash or a
1096that you can chdir to, possibly because it doesn't exist.
1837symbol table hash when trying to update @ISA caches.
10971838
10981839=end original
10991840
1100(F) C<perl -x/foo/bar> のようて起動しましたが
1841(P) @ISA キャッシュを更新しようしたときにハッシュが普通のハッシュか
1101C</foo/bar> chdir することができせん
1842シンボルテーブルハッシュかついて perl は混乱しした
1102おそらく、存在しないのではないでしょうか。
11031843
1104=item Can't check filesystem of script "%s" for nosuid
1844=item Can't call mro_method_changed_in() on anonymous symbol table
11051845
11061846=begin original
11071847
1108(P) For some reason you can't check the filesystem of the script for
1848(F) An XS module tried to call C<mro_method_changed_in> on a hash that was
1109nosuid.
1849not attached to the symbol table.
11101850
11111851=end original
11121852
1113(P) なぜかスクリプトが nosuid かどうかをファイルシムから
1853(F) XS モジューが、ンボルーブルにアタッチされていないハッシュに対して
1114調べることができせん
1854C<mro_method_changed_in> を呼び出しした
11151855
1116=item Can't coerce array into hash
1856=item Can't chdir to %s
11171857
11181858=begin original
11191859
1120(F) You used an array where a hash was expected, but the array has no
1860(F) You called C<perl -x/foo/bar>, but F</foo/bar> is not a directory
1121information on how to map from keys to array indices. You can do that
1861that you can chdir to, possibly because it doesn't exist.
1122only with arrays that have a hash reference at index 0.
11231862
11241863=end original
11251864
1126(F) ハッシュが想定される場所で配列を使っが、
1865(F) C<perl -x/foo/bar> のようにし起動ししたが、F</foo/bar> に
1127この配列にはキーから添え字に変換するための情報ありません。
1866chdir することできません; おそらく、存在しないのではないでしょうか
1128このようなことは添え字 0 にハッシュリファレンスがある配列でのみ可能です。
11291867
1130=item Can't coerce %s to integer in %s
1868=item Can't check filesystem of script "%s" for nosuid
11311869
11321870=begin original
11331871
1872(P) For some reason you can't check the filesystem of the script for
1873nosuid.
1874
1875=end original
1876
1877(P) なぜかスクリプトが nosuid かどうかをファイルシステムから
1878調べることができません。
1879
1880=item Can't coerce %s to %s in %s
1881
1882=begin original
1883
11341884(F) Certain types of SVs, in particular real symbol table entries
11351885(typeglobs), can't be forced to stop being what they are. So you can't
11361886say things like:
11371887
11381888=end original
11391889
11401890(F) ある種の SV、特に本物のシンボルテーブルエントリ (型グロブ) は、
11411 つの型に留めておくことができません。
1891つの型に留めておくことができません。
11421892したがって、以下のようにすることはできません:
11431893
11441894 *foo += 1;
11451895
11461896=begin original
11471897
11481898You CAN say
11491899
11501900=end original
11511901
11521902以下のようにはできますが:
11531903
11541904 $foo = *foo;
11551905 $foo += 1;
11561906
11571907=begin original
11581908
11591909but then $foo no longer contains a glob.
11601910
11611911=end original
11621912
11631913$foo にはもはやグロブは残っていません。
11641914
1165=item Can't coerce %s to number in %s
1915=item Can't "continue" outside a when block
11661916
11671917=begin original
11681918
1169(F) Certain types of SVs, in particular real symbol table entries
1919(F) You called C<continue>, but you're not inside a C<when>
1170(typeglobs), can't be forced to stop being what they are.
1920or C<default> block.
11711921
11721922=end original
11731923
1174(F) ある種の SV特に本物シンボルテールエントリ (型グブ) は、
1924(F) C<continue> を呼び出しましたがC<when> か C<default> のブロックの
11751 つの型に留めておくことがません。
1925内側はありません。
11761926
1177=item Can't coerce %s to string in %s
1927=item Can't create pipe mailbox
11781928
11791929=begin original
11801930
1181(F) Certain types of SVs, in particular real symbol table entries
1931(P) An error peculiar to VMS. The process is suffering from exhausted
1182(typeglobs), can't be forced to stop being what they are.
1932quotas or other plumbing problems.
11831933
11841934=end original
11851935
1186(F) ある種の SV、特本物シンボルテーブルントリ (型グロブ) は、
1936(P) VMS 固有のエラーです。
11871 つ型に留めておくことができせん
1937プロセスはクォータを使い切ったか、そ他の設備問題の影響を受けした
11881938
1189=item Can't create pipe mailbox
1939=item Can't declare %s in "%s"
11901940
11911941=begin original
11921942
1193(P) An error peculiar to VMS. The process is suffering from exhausted
1943(F) Only scalar, array, and hash variables may be declared as "my", "our" or
1194quotas or other plumbing problems.
1944"state" variables. They must have ordinary identifiers as names.
11951945
11961946=end original
11971947
1198(F) VMS 特有のエーです。
1948(F) スカ変数、配列変数、ハッシュ変数だけが、"my", "our", "state" 変数として
1199プロセスはクォータを使い切ったか、その他の設備問題の影響を受けした
1949宣言でき
1950これらは、名前として通常の識別子を持たなければなりません。
12001951
1201=item Can't declare class for non-scalar %s in "%s"
1952=item Can't "default" outside a topicalizer
12021953
12031954=begin original
12041955
1205(S) Currently, only scalar variables can declared with a specific class
1956(F) You have used a C<default> block that is neither inside a
1206qualifier in a "my" or "our" declaration. The semantics may be extended
1957C<foreach> loop nor a C<given> block. (Note that this error is
1207for other types of variables in future.
1958issued on exit from the C<default> block, so you won't get the
1959error if you use an explicit C<continue>.)
12081960
12091961=end original
12101962
1211(S) 現在のところ、スカラ変数のみが "my" "our" 定義特定の
1963(F) C<foreach> ループC<given> ブロック内側ないところで
1212ラス修飾子と共に定義でき
1964C<default> ブロッを使いした
1213この動作将来は他の種類の変数に拡張されるでしょう。
1965(このエラー C<default> ブロックから出るとき発生す、明示的な
1966C<continue> を使うとエラーは発生しません。)
12141967
1215=item Can't declare %s in "%s"
1968=item Can't determine class of operator %s, assuming BASEOP
12161969
12171970=begin original
12181971
1219(F) Only scalar, array, and hash variables may be declared as "my" or
1972(S) This warning indicates something wrong in the internals of perl.
1220"our" variables. They must have ordinary identifiers as names.
1973Perl was trying to find the class (e.g. LISTOP) of a particular OP,
1974and was unable to do so. This is likely to be due to a bug in the perl
1975internals, or due to a bug in XS code which manipulates perl optrees.
12211976
12221977=end original
12231978
1224(F) スカラ変数配列変数、ハッシュ変数だけが、"my" や "our" 変数として
1979(S) この警告はperl の内部で何かがおかしいこを示しています。
1225宣言できます。
1980Perl は (LISTOP のような) 特定の OP のクラスを見つけようとして、
1226れらは、名前して通常の識別子を持たなければなりません。
1981そうすることができませんでした
1982これはおそらく perl 内部のバグによるものか、perl の op 木を操作する
1983XS コードのバグによるものです。
12271984
12281985=item Can't do inplace edit: %s is not a regular file
12291986
12301987=begin original
12311988
12321989(S inplace) You tried to use the B<-i> switch on a special file, such as
1233a file in /dev, or a FIFO. The file was ignored.
1990a file in /dev, a FIFO or an uneditable directory. The file was ignored.
12341991
12351992=end original
12361993
1237(S inplace) /dev FIFO のような、特殊ファイルに対して、B<-i> スイッチを
1994(S inplace) /dev, FIFO, 変更できないディレクトリのような、特殊ファイルに対して
1238使おうとしました。
1995B<-i> スイッチを使おうとしました。
1239のファイルは無視されました
1996のファイルは無視されま
12401997
12411998=item Can't do inplace edit on %s: %s
12421999
12432000=begin original
12442001
12452002(S inplace) The creation of the new file failed for the indicated
12462003reason.
12472004
12482005=end original
12492006
12502007(S inplace) 表示された理由により、新しいファイルの生成に失敗しました。
12512008
12522009=item Can't do inplace edit without backup
12532010
12542011=begin original
12552012
12562013(F) You're on a system such as MS-DOS that gets confused if you try
12572014reading from a deleted (but still opened) file. You have to say
12582015C<-i.bak>, or some such.
12592016
12602017=end original
12612018
12622019(F) 削除した (が、まだオープンされている) ファイルを読もうとすると
12632020おかしくなる MS-DOS のようなシステムで実行しています。
12642021C<-i.bak> のようにバックアップを指定してください。
12652022
12662023=item Can't do inplace edit: %s would not be unique
12672024
12682025=begin original
12692026
12702027(S inplace) Your filesystem does not support filenames longer than 14
12712028characters and Perl was unable to create a unique filename during
12722029inplace editing with the B<-i> switch. The file was ignored.
12732030
12742031=end original
12752032
12762033(S inplace) ファイルシステムが 14 文字より長いファイル名に対応しておらず、
12772034Perl は B<-i> オプションによるその場編集の間のユニークなファイル名の
12782035作成ができませんでした。
12792036このファイルは無視されます。
12802037
1281=item Can't do {n,m} with n > m before << HERE in regex m/%s/
2038=item Can't do %s("%s") on non-UTF-8 locale; resolved to "%s".
12822039
12832040=begin original
12842041
1285(F) Minima must be less than or equal to maxima. If you really want your
2042(W locale) You are 1) running under "C<use locale>"; 2) the current
1286regexp to match something 0 times, just put {0}. The << HERE shows in the
2043locale is not a UTF-8 one; 3) you tried to do the designated case-change
1287regular expression about where the problem was discovered. See L<perlre>.
2044operation on the specified Unicode character; and 4) the result of this
2045operation would mix Unicode and locale rules, which likely conflict.
2046Mixing of different rule types is forbidden, so the operation was not
2047done; instead the result is the indicated value, which is the best
2048available that uses entirely Unicode rules. That turns out to almost
2049always be the original character, unchanged.
12882050
12892051=end original
12902052
1291(F) 最小値最大値以下なければなりません。
2053(W locale) あなた 1) "C<use locale>" の基実行していて;
1292もし、本当に正規表 0 回繰り返したものにマッチさせたいら、単に
20542) 在のロケールは UTF-8 ではく;
1293{0} としてください。
20553) 特定の Unicode 文字に指定された大文字小文字変換をしようとして;
1294<< HERE で正規表現どこに問題が発見されたか示してい
20564) この操作の結果、おそらく衝突する、Unicode とロケール規則混ぜした
1295L<perlre> 参照してください
2057異なる種類の規則混ぜるのは禁止れてるので、この操作は行われません;
2058代わりに結果は示された値になります; これは全体的に Unicode の規則を
2059使うという、最も利用可能なものです。
2060これは、ほとんど常に、元の文字を変更しないままにします。
12962061
1297=item Can't do setegid!
1298
12992062=begin original
13002063
1301(P) The setegid() call failed for some reason in the setuid emulator of
2064It is generally a bad idea to mix non-UTF-8 locales and Unicode, and
1302suidperl.
2065this issue is one of the reasons why. This warning is raised when
2066Unicode rules would normally cause the result of this operation to
2067contain a character that is in the range specified by the locale,
20680..255, and hence is subject to the locale's rules, not Unicode's.
13032069
13042070=end original
13052071
1306(P) suidperl setuid エミュレータで何らか理由より
2072 UTF-8 ロケールと Unicode を混ぜるは一般的悪い考えで
1307setegid() 呼び出しが失敗しました
2073この問題はその理由の一つです
2074この警告は、Unicode の規則が、ロケールで指定された範囲 0..255 である文字を
2075含むこの操作の結果を通常引き起こし、結果として Unicode ではなくロケールの
2076規則を想定される場合に発生します。
13082077
1309=item Can't do seteuid!
1310
13112078=begin original
13122079
1313(P) The setuid emulator of suidperl failed for some reason.
2080If you are using locale purely for its characteristics related to things
2081like its numeric and time formatting (and not C<LC_CTYPE>), consider
2082using a restricted form of the locale pragma (see L<perllocale/The "use
2083locale" pragma>) like "S<C<use locale ':not_characters'>>".
13142084
13152085=end original
13162086
1317(P) suidperl の setuid エミュレタが何らかの理由によって失敗しました。
2087ロケルを、純粋数値や時刻形式のうなものに関連する特徴だけに
2088使っている (そして C<LC_CTYPE> は使っていない)場合、
2089"S<C<use locale ':not_characters'>>" のような、locale プラグマの制限された
2090形式 (L<perllocale/The "use locale" pragma> 参照) を使うことを
2091検討してください。
13182092
1319=item Can't do setuid
1320
13212093=begin original
13222094
1323(F) This typically means that ordinary perl tried to exec suidperl to do
2095Note that failed case-changing operations done as a result of
1324setuid emulation, but couldn't exec it. It looks for a name of the form
2096case-insensitive C</i> regular expression matching will show up in this
1325sperl5.000 in the same directory that the perl executable resides under
2097warning as having the C<fc> operation (as that is what the regular
1326the name perl5.000, typically /usr/local/bin on Unix machines. If the
2098expression engine calls behind the scenes.)
1327file is there, check the execute permissions. If it isn't, ask your
1328sysadmin why he and/or she removed it.
13292099
13302100=end original
13312101
1332(F) このエラーは、通常、普通の perl が setuid エミュレーションのために
2102大文字小文字無視 C</i> 正規表現マッチ結果として
1333suidperl を実行ようとしまし実行できなかったとを意味します。
2103大文字小文字変換操作が失敗した場合、この警告は
1334特に UNIX マシンの /usr/local/bin などでは、perl の実行ファイルが、
2104C<fc> 操作に対して出力されることに注意してください
1335perl5.000 という名前のときには、同じディレクトリ sperl5.000 とう形式の
2105(正規表現エンジンが裏これを使ってるからです)。
1336名前を探します。
1337もし、ファイルが存在していれば、実行パーミッションをチェックしてください。
1338許可されていないようであれば、システム管理者の方に、わけを
1339尋ねてみてください。
13402106
13412107=item Can't do waitpid with flags
13422108
13432109=begin original
13442110
13452111(F) This machine doesn't have either waitpid() or wait4(), so only
13462112waitpid() without flags is emulated.
13472113
13482114=end original
13492115
13502116(F) このマシンには、waitpid() も wait4() もありませんので、
13512117フラグの無い waitpid() のみがエミュレート可能です。
13522118
13532119=item Can't emulate -%s on #! line
13542120
13552121=begin original
13562122
13572123(F) The #! line specifies a switch that doesn't make sense at this
13582124point. For example, it'd be kind of silly to put a B<-x> on the #!
13592125line.
13602126
13612127=end original
13622128
13632129(F) #! 行にその時点で意味をなさないスイッチが指定されました。
13642130たとえば、#! 行に B<-x> をおいても意味がありません。
13652131
2132=item Can't %s %s-endian %ss on this platform
2133
2134=begin original
2135
2136(F) Your platform's byte-order is neither big-endian nor little-endian,
2137or it has a very strange pointer size. Packing and unpacking big- or
2138little-endian floating point values and pointers may not be possible.
2139See L<perlfunc/pack>.
2140
2141=end original
2142
2143(F) プラットフォームのバイト順序がビッグエンディアンでも
2144リトルエンディアンでもないか、ポインタサイズがとても変わっています。
2145ビッグエンディアンやリトルエンディアンの不動小数点数やポインタの
2146pack や unpack はできません。
2147L<perlfunc/pack> を参照してください。
2148
13662149=item Can't exec "%s": %s
13672150
13682151=begin original
13692152
1370(W exec) An system(), exec(), or piped open call could not execute the
2153(W exec) A system(), exec(), or piped open call could not execute the
13712154named program for the indicated reason. Typical reasons include: the
13722155permissions were wrong on the file, the file wasn't found in
13732156C<$ENV{PATH}>, the executable in question was compiled for another
13742157architecture, or the #! line in a script points to an interpreter that
13752158can't be run for similar reasons. (Or maybe your system doesn't support
13762159#! at all.)
13772160
13782161=end original
13792162
13802163(W exec) 提示した理由によって、system() や exec() やパイプオープン
13812164呼び出しの指定されたプログラムが実行できませんでした。
13822165考えられる理由には: ファイルのパーミッションが間違っている、
13832166ファイルが C<$ENV{PATH}> の中にない、問題の実行ファイルが
13842167このマシン用ではない、スクリプトの #! 行が同じような理由で実行できない
13852168インタプリタを指している、というようなものがあります。
13862169(あるいは、このシステムで、#! がサポートされていません。)
13872170
13882171=item Can't exec %s
13892172
13902173=begin original
13912174
13922175(F) Perl was trying to execute the indicated program for you because
13932176that's what the #! line said. If that's not what you wanted, you may
13942177need to mention "perl" on the #! line somewhere.
13952178
13962179=end original
13972180
13982181(F) #! 行に書かれた内容にしたがって、Perl は示されたプログラムを
13992182実行しようとしました。
14002183そうしたくないのであれば、#! 行のどこかに、"perl" と書いておいてください。
14012184
14022185=item Can't execute %s
14032186
14042187=begin original
14052188
14062189(F) You used the B<-S> switch, but the copies of the script to execute
14072190found in the PATH did not have correct permissions.
14082191
14092192=end original
14102193
14112194(F) B<-S> スイッチを使いましたが、PATH に見つかった実行するスクリプトが
14122195正しいパーミッションではありませんでした。
14132196
14142197=item Can't find an opnumber for "%s"
14152198
14162199=begin original
14172200
14182201(F) A string of a form C<CORE::word> was given to prototype(), but there
14192202is no builtin with the name C<word>.
14202203
14212204=end original
14222205
14232206(F) C<CORE::word> の形の文字列が prototype() に与えられましたが、
14242207名前 C<word> は組み込みではありません。
14252208
14262209=item Can't find label %s
14272210
14282211=begin original
14292212
14302213(F) You said to goto a label that isn't mentioned anywhere that it's
14312214possible for us to go to. See L<perlfunc/goto>.
14322215
14332216=end original
14342217
14352218(F) どこにも見つからないラベルへ goto を行なおうとしました。
14362219L<perlfunc/goto> を参照してください。
14372220
14382221=item Can't find %s on PATH
14392222
14402223=begin original
14412224
14422225(F) You used the B<-S> switch, but the script to execute could not be
14432226found in the PATH.
14442227
14452228=end original
14462229
14472230B<-S> オプションを使いましたが、実行するスクリプトは PATH に
14482231見つかりませんでした。
14492232
14502233=item Can't find %s on PATH, '.' not in PATH
14512234
14522235=begin original
14532236
14542237(F) You used the B<-S> switch, but the script to execute could not be
14552238found in the PATH, or at least not with the correct permissions. The
14562239script exists in the current directory, but PATH prohibits running it.
14572240
14582241=end original
14592242
14602243(F) B<-S> オプションが使われましたが、 PATH に実行するスクリプトが
1461見つかりません。ある少なくとも適切なパーミッションがありません。
2244見つからなか、少なくとも適切なパーミッションがありません。
14622245スクリプトはカレントディレクトリにはありますが、PATH に
14632246カレントディレクトリは含まれていません。
14642247
14652248=item Can't find string terminator %s anywhere before EOF
14662249
14672250=begin original
14682251
14692252(F) Perl strings can stretch over multiple lines. This message means
14702253that the closing delimiter was omitted. Because bracketed quotes count
14712254nesting levels, the following is missing its final parenthesis:
14722255
14732256=end original
14742257
14752258(F) Perl の文字列は、複数行に渡ることができます。このメッセージは、
14762259文字列を終わる区切り文字が見つからなかったことを意味します。
1477括弧類の区切り文字では、ネストを数えるので、以下では、最後の括弧
2260かっこ類の区切り文字では、ネストを数えるので、以下では、最後のかっこ
14782261無いと言われます:
14792262
14802263 print q(The character '(' starts a side comment.);
14812264
14822265=begin original
14832266
1484If you're getting this error from a here-document, you may have included
2267If you're getting this error from a here-document, you may have
1485unseen whitespace before or after your closing tag. A good programmer's
2268included unseen whitespace before or after your closing tag or there
1486editor will have a way to help you find these characters.
2269may not be a linebreak after it. A good programmer's editor will have
2270a way to help you find these characters (or lack of characters). See
2271L<perlop> for the full details on here-documents.
14872272
14882273=end original
14892274
14902275このエラーがヒアドキュメントで起きた場合、閉じタグの前か後に
1491見えない空白を含んでいるかもしれません。
2276見えない空白を含んでいるか、その後に改行がないのかもしれません。
1492よいプログラマ用エディタには、このような文字を探す助けになる方法が
2277よいプログラマ用エディタには、このような文字(または文字がないこと)を探す
1493あります。
2278助けになる方法があります。
2279ヒアドキュメントに関する完全な詳細については L<perlop> を参照してください。
14942280
1495=item Can't find %s property definition %s
2281=item Can't find Unicode property definition "%s"
14962282
2283=item Can't find Unicode property definition "%s" in regex; marked by <-- HERE in m/%s/
2284
14972285=begin original
14982286
1499(F) You may have tried to use C<\p> which means a Unicode property for
2287(F) The named property which you specified via C<\p> or C<\P> is not one
1500example \p{Lu} is all uppercase letters. Escape the C<\p>, either
2288known to Perl. Perhaps you misspelled the name? See
1501C<\\p> (just the C<\p>) or by C<\Q\p> (the rest of the string, until
2289L<perluniprops/Properties accessible through \p{} and \P{}>
1502possible C<\E>).
2290for a complete list of available official
2291properties. If it is a
2292L<user-defined property|perlunicode/User-Defined Character Properties>
2293it must have been defined by the time the regular expression is
2294matched.
15032295
15042296=end original
15052297
1506(F) 例えば \p{Lu} が全て大文字、のように、Unicode プロパティを意味する
2298(F)
1507C<\p> を使おうとました。
2299C<\p> や C<\P> で指定した名前付き特性は Perl が知らないものです
1508C<\\p> (単に C<\p>) まは C<\Q\p> (C<\E> まで残りの文字列) を使って
2300おそらく名前をタイプミスしたのでは?
1509C<\p> をエスケープしてくださ
2301公式に利用可能な特性の完全な一覧につては
2302L<perluniprops/Properties accessible through \p{} and \P{}> を
2303参照してください。
2304これが L<ユーザー定義特性|perlunicode/User-Defined Character Properties> の
2305場合は、正規表現がマッチングした時点で定義されていなければなりません。
15102306
1511=item Can't fork
2307=begin original
15122308
2309If you didn't mean to use a Unicode property, escape the C<\p>, either
2310by C<\\p> (just the C<\p>) or by C<\Q\p> (the rest of the string, or
2311until C<\E>).
2312
2313=end original
2314
2315Unicode 特性を使うつもりでない場合は、C<\\p> (単に C<\p>) または
2316C<\Q\p> (残りの文字列 または C<\E> まで) を使って C<\p> を
2317エスケープしてください。
2318
2319=item Can't fork: %s
2320
15132321=begin original
15142322
15152323(F) A fatal error occurred while trying to fork while opening a
15162324pipeline.
15172325
15182326=end original
15192327
15202328(F) パイプラインをオープンしようとして、fork を行なおうとして、
15212329致命的エラーが発生しました。
15222330
2331=item Can't fork, trying again in 5 seconds
2332
2333=begin original
2334
2335(W pipe) A fork in a piped open failed with EAGAIN and will be retried
2336after five seconds.
2337
2338=end original
2339
2340(W pipe) パイプの open での fork が EAGAIN で失敗し、5 秒後に
2341再試行されます。
2342
15232343=item Can't get filespec - stale stat buffer?
15242344
15252345=begin original
15262346
15272347(S) A warning peculiar to VMS. This arises because of the difference
15282348between access checks under VMS and under the Unix model Perl assumes.
15292349Under VMS, access checks are done by filename, rather than by bits in
15302350the stat buffer, so that ACLs and other protections can be taken into
15312351account. Unfortunately, Perl assumes that the stat buffer contains all
15322352the necessary information, and passes it, instead of the filespec, to
1533the access checking routine. It will try to retrieve the filespec using
2353the access-checking routine. It will try to retrieve the filespec using
15342354the device name and FID present in the stat buffer, but this works only
15352355if you haven't made a subsequent call to the CRTL stat() routine,
15362356because the device name is overwritten with each call. If this warning
1537appears, the name lookup failed, and the access checking routine gave up
2357appears, the name lookup failed, and the access-checking routine gave up
1538and returned FALSE, just to be conservative. (Note: The access checking
2358and returned FALSE, just to be conservative. (Note: The access-checking
15392359routine knows about the Perl C<stat> operator and file tests, so you
15402360shouldn't ever see this warning in response to a Perl command; it arises
15412361only if some internal code takes stat buffers lightly.)
15422362
15432363=end original
15442364
1545(S) VMS 有の警告です。
2365(S) VMS に固有の警告です。
15462366これは VMS と、Perl が仮定している Unix モデルでは、アクセスチェックに違いが
15472367あることによって起こります。
15482368VMS では、アクセスチェックは stat バッファのビットではなくファイル名によって
15492369行われるので、ACL やその他の保護が考慮されます。
15502370残念ながら、Perl は stat バッファに全ての必要な情報が含まれていると仮定して、
15512371アクセスチェックルーチンにはファイルスペックではなくこれを渡します。
15522372stat バッファにあるデバイス名と FID を使ってファイルスペックを
15532373取得しようとしますが、これは引き続いて CRTL stat() ルーチンを呼び出さない
15542374場合にのみ動作します; なぜならデバイス名は呼出し毎に上書きされるからです。
15552375この警告が出ると、名前の検索が失敗し、アクセスチェックルーチンは諦めて、
15562376安全のためだけに FALSE を返します。
15572377(注意: アクセスチェックルーチンは Perl の C<stat> 演算子とファイル
15582378テストについて知っているので、Perl コマンドの結果としてこの警告を見ることは
15592379ないはずです; これは内部コートが stat バッファを軽率に扱った場合にのみ
15602380発生します。)
15612381
15622382=item Can't get pipe mailbox device name
15632383
15642384=begin original
15652385
15662386(P) An error peculiar to VMS. After creating a mailbox to act as a
15672387pipe, Perl can't retrieve its name for later use.
15682388
15692389=end original
15702390
1571(F) VMS 有のエラーです。
2391(P) VMS に固有のエラーです。
15722392パイプとして働くメールボックスの作成後、後で使うための名前を
15732393Perl が取得できませんでした。
15742394
15752395=item Can't get SYSGEN parameter value for MAXBUF
15762396
15772397=begin original
15782398
15792399(P) An error peculiar to VMS. Perl asked $GETSYI how big you want your
15802400mailbox buffers to be, and didn't get an answer.
15812401
15822402=end original
15832403
1584(F) VMS 有のエラーです。
2404(P) VMS に固有のエラーです。
15852405メールボックスバッファをどれくらいとるべきかを $GETSYI に
15862406問い合わせましたが、答えが得られませんでした。
15872407
2408=item Can't "goto" into a binary or list expression
2409
2410=begin original
2411
2412(F) A "goto" statement was executed to jump into the middle of a binary
2413or list expression. You can't get there from here. The reason for this
2414restriction is that the interpreter would get confused as to how many
2415arguments there are, resulting in stack corruption or crashes. This
2416error occurs in cases such as these:
2417
2418=end original
2419
2420(F) "goto" 文で 2 項式またはリスト式の途中に飛び込もうとしました。
2421ここからそこへは行けません。
2422この制限の理由は、そこにいくつの引数があるかに関してインタプリタが混乱し、
2423結果としてスタックは解約ラッシュを引き起こすからです。
2424このエラーは次のような場合に起こります:
2425
2426 goto F;
2427 print do { F: }; # Can't jump into the arguments to print
2428
2429 goto G;
2430 $x + do { G: $y }; # How is + supposed to get its first operand?
2431
2432=item Can't "goto" into a "given" block
2433
2434=begin original
2435
2436(F) A "goto" statement was executed to jump into the middle of a C<given>
2437block. You can't get there from here. See L<perlfunc/goto>.
2438
2439=end original
2440
2441(F) "goto" 文で C<given> ブロックの中に飛び込もうとしました。
2442ここからそこへは行けません。
2443L<perlfunc/goto> を参照してください。
2444
15882445=item Can't "goto" into the middle of a foreach loop
15892446
15902447=begin original
15912448
15922449(F) A "goto" statement was executed to jump into the middle of a foreach
15932450loop. You can't get there from here. See L<perlfunc/goto>.
15942451
15952452=end original
15962453
15972454(F) "goto" 文で foreach ループの中に飛び込もうとしました。
15982455ここからそこへは行けません。
15992456L<perlfunc/goto> を参照してください。
16002457
16012458=item Can't "goto" out of a pseudo block
16022459
16032460=begin original
16042461
16052462(F) A "goto" statement was executed to jump out of what might look like
16062463a block, except that it isn't a proper block. This usually occurs if
16072464you tried to jump out of a sort() block or subroutine, which is a no-no.
16082465See L<perlfunc/goto>.
16092466
16102467=end original
16112468
16122469(F) "goto" 文でブロックのように見えるけれども、適切な
16132470ブロックではないところから飛び出そうとしました。
16142471これは普通 sort() ブロックやサブルーチンから飛び出そうとしたときに
16152472起きますが、それはできません。
16162473L<perlfunc/goto> を参照してください。
16172474
1618=item Can't goto subroutine from an eval-string
2475=item Can't goto subroutine from an eval-%s
16192476
16202477=begin original
16212478
16222479(F) The "goto subroutine" call can't be used to jump out of an eval
1623"string". (You can use it to jump out of an eval {BLOCK}, but you
2480"string" or block.
1624probably don't want to.)
16252481
16262482=end original
16272483
1628(F) "goto subroutine" 呼び出しは eval "string" から飛び出すことは
2484(F) "goto subroutine" 呼び出しは eval "string" やブロックから
1629できません。
2485飛び出すことはできません。
1630(eval {BLOCK} から飛び出すことはできますが、多分そうしたくはないでしょう。)
16312486
2487=item Can't goto subroutine from a sort sub (or similar callback)
2488
2489=begin original
2490
2491(F) The "goto subroutine" call can't be used to jump out of the
2492comparison sub for a sort(), or from a similar callback (such
2493as the reduce() function in List::Util).
2494
2495=end original
2496
2497(F) "goto subroutine" 呼び出しは、sort() のための比較サブルーチンや、
2498(List::Util の reduce() 関数のような) 似たようなコールバックから
2499飛び出すことはできません。
2500
16322501=item Can't goto subroutine outside a subroutine
16332502
16342503=begin original
16352504
16362505(F) The deeply magical "goto subroutine" call can only replace one
16372506subroutine call for another. It can't manufacture one out of whole
16382507cloth. In general you should be calling it out of only an AUTOLOAD
16392508routine anyway. See L<perlfunc/goto>.
16402509
16412510=end original
16422511
1643(F) 結構マジカルな "goto subroutine" の呼び出しは、あるサブルーティ
2512(F) 結構マジカルな "goto subroutine" の呼び出しは、あるサブルー
16442513呼び出しを別のもので置き換えるだけです。
16452514反物の状態から作り上げることはできません。
16462515一般に、これを行なうのは、AUTOLOAD ルーティンから抜け出すときだけに
16472516しておくべきです。
1648L<perlfunc/goto> の項を参照してください。
2517L<perlfunc/goto> を参照してください。
16492518
16502519=item Can't ignore signal CHLD, forcing to default
16512520
16522521=begin original
16532522
16542523(W signal) Perl has detected that it is being run with the SIGCHLD
16552524signal (sometimes known as SIGCLD) disabled. Since disabling this
16562525signal will interfere with proper determination of exit status of child
16572526processes, Perl has reset the signal to its default value. This
16582527situation typically indicates that the parent program under which Perl
16592528may be running (e.g. cron) is being very careless.
16602529
16612530=end original
16622531
16632532(W signal) Perl は、SIGCHLD (SIGCLD としても知られます) シグナルが
16642533無効化された状態で実行されていることを検出しました。
16652534このシグナルが無効化されると子プロセスの終了ステータスを適切に
16662535決定できなくなるので、Perl はシグナルをデフォルト値にリセットしました。
16672536この状況は典型的には Perl が動作している親プログラム(cron など)が
16682537とても不注意であることを示しています。
16692538
2539=item Can't kill a non-numeric process ID
2540
2541=begin original
2542
2543(F) Process identifiers must be (signed) integers. It is a fatal error to
2544attempt to kill() an undefined, empty-string or otherwise non-numeric
2545process identifier.
2546
2547=end original
2548
2549(F) プロセス識別子は(符号付き)整数でなければなりません。
2550未定義値、空文字列、その他の非数値プロセス識別子を使って
2551kill() しようとすることは致命的エラーです。
2552
16702553=item Can't "last" outside a loop block
16712554
16722555=begin original
16732556
16742557(F) A "last" statement was executed to break out of the current block,
16752558except that there's this itty bitty problem called there isn't a current
16762559block. Note that an "if" or "else" block doesn't count as a "loopish"
16772560block, as doesn't a block given to sort(), map() or grep(). You can
16782561usually double the curlies to get the same effect though, because the
16792562inner curlies will be considered a block that loops once. See
16802563L<perlfunc/last>.
16812564
16822565=end original
16832566
16842567(F) 現在のブロックから脱出するために、"last" 文を実行しましたが、
16852568残念なことにブロックの中ではありませんでした。
16862569"if" や "else" のブロックは、sort(), map(), grep() のブロックが違うのと
16872570同様「ループ風」ブロックではないので、注意してください。
1688ただし、中括弧を二重にすれば、内側の中括弧が、1 度だけループするブロックと
2571ただし、中かっこを二重にすれば、内側の中かっこが、1 度だけループする
1689みなされますから、同じ効果が得られます。
2572ブロックとみなされますから、同じ効果が得られます。
16902573L<perlfunc/last> を参照してください。
16912574
1692=item Can't localize lexical variable %s
2575=item Can't linearize anonymous symbol table
16932576
16942577=begin original
16952578
1696(F) You used local on a variable name that was previously declared as a
2579(F) Perl tried to calculate the method resolution order (MRO) of a
1697lexical variable using "my". This is not allowed. If you want to
2580package, but failed because the package stash has no name.
1698localize a package variable of the same name, qualify it with the
1699package name.
17002581
17012582=end original
17022583
1703(F) 以前に "my"使ってレキシカル変数として宣言された変数名に対
2584(F) Perl はパッケージのメソッド解決順序 (MRO) 計算しようとしたが、
1704local を使いました。
2585パッケージ stash に名前がなので失敗しました。
1705これは認められていません。
1706同じ名前のパッケージ変数をローカル化したい場合は、
1707パッケージ名で修飾してください。
17082586
1709=item Can't localize pseudo-hash element
2587=item Can't load '%s' for module %s
17102588
17112589=begin original
17122590
1713(F) You said something like C<< local $ar->{'key'} >>, where $ar is a
2591(F) The module you tried to load failed to load a dynamic extension.
1714reference to a pseudo-hash. That hasn't been implemented yet, but you
2592This may either mean that you upgraded your version of perl to one
1715can get a similar effect by localizing the corresponding array element
2593that is incompatible with your old dynamic extensions (which is known
1716directly -- C<< local $ar->[$ar->[0]{'key'}] >>.
2594to happen between major versions of perl), or (more likely) that your
2595dynamic extension was built against an older version of the library
2596that is installed on your system. You may need to rebuild your old
2597dynamic extensions.
17172598
17182599=end original
17192600
1720(F) $ar が擬似ハッシュへのリファレンスのC<< local $ar->{'key'} >>
2601(F) 読み込もうしたモジュールは動的拡張モジュール読み込みに
1721ようなことをしました。
2602失敗しました。
1722これはまだ実装されてませんが、対応する配列要素を直接ロ化するこ
2603これは動的拡張モジュールと互換性のない perl にアップグレードしたか
1723似たような効果られます -- C<< local $ar->[$ar->[0]{'key'}] >>。
2604(これは perl のメジャーバージョン間で起きることられています)、
2605(よりあり得るのは)動的拡張モジュールがシステムにインストールされている古い
2606バージョンのライブラリに対してビルドされているかです。
2607古い動的拡張モジュールをリビルドする必要があるでしょう。
17242608
2609=item Can't localize lexical variable %s
2610
2611=begin original
2612
2613(F) You used local on a variable name that was previously declared as a
2614lexical variable using "my" or "state". This is not allowed. If you
2615want to localize a package variable of the same name, qualify it with
2616the package name.
2617
2618=end original
2619
2620(F) 以前に "my" や "state" を使ってレキシカル変数として宣言された変数名に
2621対して local を使いました。
2622これは認められていません。
2623同じ名前のパッケージ変数をローカル化したい場合は、
2624パッケージ名で修飾してください。
2625
17252626=item Can't localize through a reference
17262627
17272628=begin original
17282629
17292630(F) You said something like C<local $$ref>, which Perl can't currently
17302631handle, because when it goes to restore the old value of whatever $ref
17312632pointed to after the scope of the local() is finished, it can't be sure
1732that $ref will still be a reference.
2633that $ref will still be a reference.
17332634
17342635=end original
17352636
17362637(F) C<local $$ref> のようなことをしましたが、Perl は現在のところこれを
17372638扱えません; なぜなら、local() のスコープが終了した後、$ref が
17382639指しているものの古い値を戻すとき、$ref がまだリファレンスかどうかが
17392640わからないからです。
17402641
17412642=item Can't locate %s
17422643
17432644=begin original
17442645
1745(F) You said to C<do> (or C<require>, or C<use>) a file that couldn't be
2646(F) You said to C<do> (or C<require>, or C<use>) a file that couldn't be found.
1746found. Perl looks for the file in all the locations mentioned in @INC,
2647Perl looks for the file in all the locations mentioned in @INC, unless
1747unless the file name included the full path to the file. Perhaps you
2648the file name included the full path to the file. Perhaps you need
1748need to set the PERL5LIB or PERL5OPT environment variable to say where
2649to set the PERL5LIB or PERL5OPT environment variable to say where the
1749the extra library is, or maybe the script needs to add the library name
2650extra library is, or maybe the script needs to add the library name
17502651to @INC. Or maybe you just misspelled the name of the file. See
17512652L<perlfunc/require> and L<lib>.
17522653
17532654=end original
17542655
17552656(F) ファイルを C<do> (または、C<require>、C<use>) するように
17562657指示されましたが、見つかりませんでした。
17572658Perl は、フルパスで指定されていない場合ファイルを @INC で示される
17582659全ての場所を検索します。
17592660おそらく、追加ライブラリの場所を示すために、
17602661PERL5LIB または PERL5OPT の環境変数を指定する必要があるか、
17612662スクリプトの中で @INC にライブラリ名を追加する必要があります。
17622663ファイル名のスペルミスの可能性もあります。
17632664L<perlfunc/require> と L<lib> を参照してください。
17642665
17652666=item Can't locate auto/%s.al in @INC
17662667
17672668=begin original
17682669
17692670(F) A function (or method) was called in a package which allows
17702671autoload, but there is no function to autoload. Most probable causes
17712672are a misprint in a function/method name or a failure to C<AutoSplit>
17722673the file, say, by doing C<make install>.
17732674
17742675=end original
17752676
17762677(F) 関数(またはメソッド)がオートロードを許可しているパッケージで
17772678呼び出されましたが、オートロードする関数がありませんでした。
17782679最も可能性のある原因は関数/メソッド名の誤記か、C<make install> と
17792680することによるファイルの C<AutoSplit> の失敗です。
17802681
2682=item Can't locate loadable object for module %s in @INC
2683
2684=begin original
2685
2686(F) The module you loaded is trying to load an external library, like
2687for example, F<foo.so> or F<bar.dll>, but the L<DynaLoader> module was
2688unable to locate this library. See L<DynaLoader>.
2689
2690=end original
2691
2692(F) 読み込まれたモジュールは F<foo.so> や F<bar.dll> のような外部
2693ライブラリを読み込もうとしましたが、L<DynaLoader> モジュールは、この
2694ライブラリの位置がわかりませんでした。
2695L<DynaLoader> を参照してください。
2696
17812697=item Can't locate object method "%s" via package "%s"
17822698
17832699=begin original
17842700
17852701(F) You called a method correctly, and it correctly indicated a package
17862702functioning as a class, but that package doesn't define that particular
17872703method, nor does any of its base classes. See L<perlobj>.
17882704
17892705=end original
17902706
17912707(F) 正しくメソッドを呼び出し、それは、クラスとして機能するパッケージを
17922708正しく示していますが、そのパッケージにも、基底クラスにも、
17932709該当のメソッドが定義されていません。
17942710L<perlobj> を参照してください。
17952711
1796=item (perhaps you forgot to load "%s"?)
2712=item Can't locate object method "%s" via package "%s" (perhaps you forgot
2713to load "%s"?)
17972714
17982715=begin original
17992716
1800(F) This is an educated guess made in conjunction with the message
2717(F) You called a method on a class that did not exist, and the method
1801"Can't locate object method \"%s\" via package \"%s\"". It often means
2718could not be found in UNIVERSAL. This often means that a method
1802that a method requires a package that has not been loaded.
2719requires a package that has not been loaded.
18032720
18042721=end original
18052722
1806(F) これ "Can't locate object method \"%s\" via package \"%s\"" の
2723(F) 存在しないクラスメソッドを呼び出し、メソッド
1807メッセージと共出る教育的な推測
2724UNIVERSAL 見つかりませんした
18082725これはしばしばメソッドがまだロードされていないパッケージを
18092726要求していることを意味します。
18102727
18112728=item Can't locate package %s for @%s::ISA
18122729
18132730=begin original
18142731
18152732(W syntax) The @ISA array contained the name of another package that
18162733doesn't seem to exist.
18172734
18182735=end original
18192736
18202737(W syntax) 配列 @ISA に別のパッケージ名が記されていますが、
18212738存在していないようです。
18222739
1823=item Can't make list assignment to \%ENV on this system
2740=item Can't locate PerlIO%s
18242741
18252742=begin original
18262743
2744(F) You tried to use in open() a PerlIO layer that does not exist,
2745e.g. open(FH, ">:nosuchlayer", "somefile").
2746
2747=end original
2748
2749(F) 例えば、open(FH, ">:nosuchlayer", "somefile") のように、
2750open() で 存在しない PerlIO 層を使おうとしました。
2751
2752=item Can't make list assignment to %ENV on this system
2753
2754=begin original
2755
18272756(F) List assignment to %ENV is not supported on some systems, notably
18282757VMS.
18292758
18302759=end original
18312760
18322761(F) %ENV へのリスト代入はいくつかのシステム、特に VMS では
18332762対応していません。
18342763
2764=item Can't make loaded symbols global on this platform while loading %s
2765
2766=begin original
2767
2768(S) A module passed the flag 0x01 to DynaLoader::dl_load_file() to request
2769that symbols from the stated file are made available globally within the
2770process, but that functionality is not available on this platform. Whilst
2771the module likely will still work, this may prevent the perl interpreter
2772from loading other XS-based extensions which need to link directly to
2773functions defined in the C or XS code in the stated file.
2774
2775=end original
2776
2777(W) モジュールが、プロセスの中でグローバルに利用可能な固定ファイルから
2778シンボルを読み込むことを要求するために、DynaLoader::dl_load_file() に
27790x01 フラグを渡しましたが、この機能はこのプラットフォームでは利用できません。
2780モジュールはおそらく動作しますが、perl インタプリタによる、固定ファイルの C や
2781XS コードで定義された関数へ直接リンクする必要のあるその他の XS ベースの
2782エクステンションの読み込みが妨げられるかもしれません。
2783
18352784=item Can't modify %s in %s
18362785
18372786=begin original
18382787
18392788(F) You aren't allowed to assign to the item indicated, or otherwise try
18402789to change it, such as with an auto-increment.
18412790
18422791=end original
18432792
18442793(F) 指定されたものは、代入、インクリメントなど、変更が許されていません。
18452794
18462795=item Can't modify nonexistent substring
18472796
18482797=begin original
18492798
18502799(P) The internal routine that does assignment to a substr() was handed
18512800a NULL.
18522801
18532802=end original
18542803
18552804(P) substr() への代入を行なう内部ルーティンに NULL が渡されました。
18562805
1857=item Can't modify non-lvalue subroutine call
2806=item Can't modify non-lvalue subroutine call of &%s
18582807
2808=item Can't modify non-lvalue subroutine call of &%s in %s
2809
18592810=begin original
18602811
18612812(F) Subroutines meant to be used in lvalue context should be declared as
1862such, see L<perlsub/"Lvalue subroutines">.
2813such. See L<perlsub/"Lvalue subroutines">.
18632814
18642815=end original
18652816
18662817(F) 左辺値コンテキストとして使うサブルーチンは、そのように
1867宣言しなければなりません;
2818宣言しなければなりません
18682819L<perlsub/"Lvalue subroutines"> を参照してください。
18692820
2821=item Can't modify reference to %s in %s assignment
2822
2823=begin original
2824
2825(F) Only a limited number of constructs can be used as the argument to a
2826reference constructor on the left-hand side of an assignment, and what
2827you used was not one of them. See L<perlref/Assigning to References>.
2828
2829=end original
2830
2831(F) 代入の左側のリファレンスコンストラクタの引数に使える構文は
2832一部に制限されていて、ここで使ったものはその一つではありません。
2833L<perlref/Assigning to References> を参照してください。
2834
2835=item Can't modify reference to localized parenthesized array in list
2836assignment
2837
2838=begin original
2839
2840(F) Assigning to C<\local(@array)> or C<\(local @array)> is not supported, as
2841it is not clear exactly what it should do. If you meant to make @array
2842refer to some other array, use C<\@array = \@other_array>. If you want to
2843make the elements of @array aliases of the scalars referenced on the
2844right-hand side, use C<\(@array) = @scalar_refs>.
2845
2846=end original
2847
2848(F) C<\local(@array)> や C<\(local @array)> への代入は対応していません;
2849正確に何をするべきかが明確ではないからです。
2850@array が他の配列を参照するようにすることを意味しているなら、
2851C<\@array = \@other_array> を使ってください。
2852@array の要素が右側でリファレンスされているスカラへの別名にしたいなら、
2853C<\(@array) = @scalar_refs> を使ってください。
2854
2855=item Can't modify reference to parenthesized hash in list assignment
2856
2857=begin original
2858
2859(F) Assigning to C<\(%hash)> is not supported. If you meant to make %hash
2860refer to some other hash, use C<\%hash = \%other_hash>. If you want to
2861make the elements of %hash into aliases of the scalars referenced on the
2862right-hand side, use a hash slice: C<\@hash{@keys} = @those_scalar_refs>.
2863
2864=end original
2865
2866(F) C<\(%hash)> への代入は対応していません。
2867%hash が他のハッシュを参照するようにすることを意味しているなら、
2868C<\%hash = \%other_hash> を使ってください。
2869%hash の要素が右側でリファレンスされているスカラへの別名にしたいなら、
2870ハッシュスライスを使ってください: C<\@hash{@keys} = @those_scalar_refs>。
2871
18702872=item Can't msgrcv to read-only var
18712873
18722874=begin original
18732875
18742876(F) The target of a msgrcv must be modifiable to be used as a receive
18752877buffer.
18762878
18772879=end original
18782880
18792881(F) msgrcv で使用する変数は、受信バッファとして使用しますので、
18802882変更可能なものでなければなりません。
18812883
18822884=item Can't "next" outside a loop block
18832885
18842886=begin original
18852887
18862888(F) A "next" statement was executed to reiterate the current block, but
18872889there isn't a current block. Note that an "if" or "else" block doesn't
18882890count as a "loopish" block, as doesn't a block given to sort(), map() or
18892891grep(). You can usually double the curlies to get the same effect
18902892though, because the inner curlies will be considered a block that loops
18912893once. See L<perlfunc/next>.
18922894
18932895=end original
18942896
18952897(F) 現在のブロックの繰り返しを進めるために、"next" 文を実行しましたが、
18962898ブロックの中ではありませんでした。
18972899"if" や "else" のブロックは、sort(), map(), grep() のブロックが違うのと
18982900同様「ループ風」ブロックではないので、注意してください。
1899ただし、中括弧を二重にすれば、内側の中括弧が、1 度だけループするブロックと
2901ただし、中かっこを二重にすれば、内側の中かっこが、1 度だけループする
1900みなされますから、同じ効果が得られます。
2902ブロックとみなされますから、同じ効果が得られます。
19012903L<perlfunc/next> を参照してください。
19022904
19032905=item Can't open %s: %s
19042906
19052907=begin original
19062908
19072909(S inplace) The implicit opening of a file through use of the C<< <> >>
19082910filehandle, either implicitly under the C<-n> or C<-p> command-line
1909switches, or explicitly, failed for the indicated reason. Usually this
2911switches, or explicitly, failed for the indicated reason. Usually
1910is because you don't have read permission for a file which you named on
2912this is because you don't have read permission for a file which
1911the command line.
2913you named on the command line.
19122914
19132915=end original
19142916
19152917(S inplace) C<< <> >> ファイルハンドルによる暗黙的なファイルオープンまたは
19162918C<-n> か C<-p> コマンドラインスイッチによる暗黙的な、あるいは
19172919明示的なファイルオープンが表示した理由によって失敗しました。
19182920通常、これはコマンドラインで指定したファイルの読み込み権限が無いときに起こります。
19192921
2922=begin original
2923
2924(F) You tried to call perl with the B<-e> switch, but F</dev/null> (or
2925your operating system's equivalent) could not be opened.
2926
2927=end original
2928
2929(F) B<-e> オプション付きで perl を呼び出そうとしましたが、F</dev/null>
2930(またはあなたのオペレーティングシステムでの等価物) が開けませんでした。
2931
2932=item Can't open a reference
2933
2934=begin original
2935
2936(W io) You tried to open a scalar reference for reading or writing,
2937using the 3-arg open() syntax:
2938
2939=end original
2940
2941(W io) 3 引数の open() の構文を使ってスカラリファレンスを読み込みまたは
2942書き込みのために開こうとしました:
2943
2944 open FH, '>', $ref;
2945
2946=begin original
2947
2948but your version of perl is compiled without perlio, and this form of
2949open is not supported.
2950
2951=end original
2952
2953しかしこのバージョンの perl は perlio なしでコンパイルされていて、
2954この形式の open は対応していません。
2955
19202956=item Can't open bidirectional pipe
19212957
19222958=begin original
19232959
19242960(W pipe) You tried to say C<open(CMD, "|cmd|")>, which is not supported.
19252961You can try any of several modules in the Perl library to do this, such
19262962as IPC::Open2. Alternately, direct the pipe's output to a file using
19272963">", and then read it in under a different file handle.
19282964
19292965=end original
19302966
19312967(W pipe) サポートされていない C<open(CMD, "|cmd|")> を行なおうとしました。
19322968これを行なうためには、Perl ライブラリの IPC::Open2 のようないくつかの
19332969モジュールを使うことができます。
19342970別の方法として、パイプされたものを ">" を使っていったんファイルに出力し、
19352971あとで別のファイルハンドルで読み込みを行なうことも考えられます。
19362972
19372973=item Can't open error file %s as stderr
19382974
19392975=begin original
19402976
19412977(F) An error peculiar to VMS. Perl does its own command line
19422978redirection, and couldn't open the file specified after '2>' or '2>>' on
19432979the command line for writing.
19442980
19452981=end original
19462982
1947(F) VMSに固有のエラーです。
2983(F) VMS に固有のエラーです。
19482984Perl は独自にコマンドラインのリダイレクトを扱っていて、
19492985コマンドラインで書き込みのために '2>' や '2>>' の後に指定された
19502986ファイルを開けませんでした。
19512987
19522988=item Can't open input file %s as stdin
19532989
19542990=begin original
19552991
19562992(F) An error peculiar to VMS. Perl does its own command line
19572993redirection, and couldn't open the file specified after '<' on the
19582994command line for reading.
19592995
19602996=end original
19612997
1962(F) VMSに固有のエラーです。
2998(F) VMS に固有のエラーです。
19632999Perl は独自にコマンドラインのリダイレクトを扱っていて、
19643000コマンドラインで読み込みのために '<' の後に指定された
19653001ファイルを開けませんでした。
19663002
19673003=item Can't open output file %s as stdout
19683004
19693005=begin original
19703006
19713007(F) An error peculiar to VMS. Perl does its own command line
19723008redirection, and couldn't open the file specified after '>' or '>>' on
19733009the command line for writing.
19743010
19753011=end original
19763012
1977(F) VMSに固有のエラーです。
3013(F) VMS に固有のエラーです。
19783014Perl は独自にコマンドラインのリダイレクトを扱っていて、
19793015コマンドラインで書き込みのために '>' や '>>' の後に指定された
19803016ファイルを開けませんでした。
19813017
19823018=item Can't open output pipe (name: %s)
19833019
19843020=begin original
19853021
19863022(P) An error peculiar to VMS. Perl does its own command line
19873023redirection, and couldn't open the pipe into which to send data destined
19883024for stdout.
19893025
19903026=end original
19913027
1992(P) VMSに固有のエラーです。
3028(P) VMS に固有のエラーです。
19933029Perl は独自にコマンドラインのリダイレクトを扱っていて、
19943030標準出力としてデータを送るパイプを開けませんでした。
19953031
19963032=item Can't open perl script "%s": %s
19973033
19983034=begin original
19993035
20003036(F) The script you specified can't be opened for the indicated reason.
20013037
20023038=end original
20033039
20043040(F) 指定したスクリプトが、表示した理由によってオープンできませんでした。
20053041
3042=begin original
3043
3044If you're debugging a script that uses #!, and normally relies on the
3045shell's $PATH search, the -S option causes perl to do that search, so
3046you don't have to type the path or C<`which $scriptname`>.
3047
3048=end original
3049
3050#! を使うスクリプトをデバッグしていて、普通はシェルの $PATH 検索に
3051頼っている場合は、-S オプションを付けることで perl が検索するようになり、
3052パスや C<`which $scriptname`> をタイプする必要がなくなります。
3053
20063054=item Can't read CRTL environ
20073055
20083056=begin original
20093057
20103058(S) A warning peculiar to VMS. Perl tried to read an element of %ENV
20113059from the CRTL's internal environment array and discovered the array was
20123060missing. You need to figure out where your CRTL misplaced its environ
20133061or define F<PERL_ENV_TABLES> (see L<perlvms>) so that environ is not
20143062searched.
20153063
20163064=end original
20173065
2018(S) VMSに固有の警告です。
3066(S) VMS に固有の警告です。
20193067Perl は %ENV の要素を CRTL の内部環境配列から読み込もうとしましたが、
20203068配列がないことを発見しました。
20213069CRTL が環境をどこに間違えて置いたかを探し出すか、F<PERL_ENV_TABLE> を
20223070定義して(L<perlvms> を参照してください)環境を検索しないようにする
20233071必要があります。
20243072
2025=item Can't redefine active sort subroutine %s
3073=item Can't redeclare "%s" in "%s"
20263074
20273075=begin original
20283076
2029(F) Perl optimizes the internal handling of sort subroutines and keeps
3077(F) A "my", "our" or "state" declaration was found within another declaration,
2030pointers into them. You tried to redefine one such sort subroutine when
3078such as C<my ($x, my($y), $z)> or C<our (my $x)>.
2031it was currently active, which is not allowed. If you really want to do
2032this, you should write C<sort { &func } @x> instead of C<sort func @x>.
20333079
20343080=end original
20353081
2036(F) Perl はソートサブルーチン内部操作を最適化して
3082(F) C<my ($x, my($y), $z)> や C<our (my $x)> ように
2037そこへポインタを保持してい
3083"my", "our", "state" 宣言が他宣言の中にありした
2038そのようなソートサブルーチンを現在アクティブな状態の時に
2039再定義しようとしましたが、それはできません。
2040本当にそのようなことがしたい場合は、
2041C<sort func @x> ではなく C<sort { &func } @x> と書くべきです。
20423084
20433085=item Can't "redo" outside a loop block
20443086
20453087=begin original
20463088
20473089(F) A "redo" statement was executed to restart the current block, but
20483090there isn't a current block. Note that an "if" or "else" block doesn't
20493091count as a "loopish" block, as doesn't a block given to sort(), map()
20503092or grep(). You can usually double the curlies to get the same effect
20513093though, because the inner curlies will be considered a block that
20523094loops once. See L<perlfunc/redo>.
20533095
20543096=end original
20553097
20563098(F) 現在のブロックの繰り返しをもう一度行なうために、
20573099"redo" 文を実行しましたが、ブロックの中ではありませんでした。
20583100"if" や "else" のブロックは、sort(), map(), grep() のブロックが違うのと
20593101同様「ループ風」ブロックではないので、注意してください。
2060ただし、中括弧を二重にすれば、内側の中括弧が、1 度だけループする
3102ただし、中かっこを二重にすれば、内側の中かっこが、1 度だけループする
20613103ブロックとみなされますから、同じ効果が得られます。
20623104L<perlfunc/redo> を参照してください。
20633105
2064=item Can't remove %s: %s, skipping file
3106=item Can't remove %s: %s, skipping file
20653107
20663108=begin original
20673109
20683110(S inplace) You requested an inplace edit without creating a backup
20693111file. Perl was unable to remove the original file to replace it with
20703112the modified file. The file was left unmodified.
20713113
20723114=end original
20733115
20743116(S inplace) バックアップを作成せずにその場編集することを要求しました。
20753117Perl は変更したファイルで置き換えるために元のファイルを削除することが
20763118できませんでした。
20773119ファイルは変更されずに残されます。
20783120
3121=item Can't rename in-place work file '%s' to '%s': %s
3122
3123=begin original
3124
3125(F) When closed implicitly, the temporary file for in-place editing
3126couldn't be renamed to the original filename.
3127
3128=end original
3129
3130(F) その場編集のための一時ファイルが暗黙に閉じられたとき、
3131元のファイル名にリネームできませんでした。
3132
20793133=item Can't rename %s to %s: %s, skipping file
20803134
20813135=begin original
20823136
2083(S inplace) The rename done by the B<-i> switch failed for some reason,
3137(F) The rename done by the B<-i> switch failed for some reason,
20843138probably because you don't have write permission to the directory.
20853139
20863140=end original
20873141
2088(S inplace) B<-i> スイッチで行なわれた rename が何らかの理由によって、
3142(F) B<-i> スイッチで行なわれた rename が何らかの理由によって、
2089うまく行きませんでした。
3143うまく行きませんでした; ディレクトリに書き込み権がないことも考えられます
2090ディレクトリに書き込み権がないことも考えられます。
20913144
20923145=item Can't reopen input pipe (name: %s) in binary mode
20933146
20943147=begin original
20953148
20963149(P) An error peculiar to VMS. Perl thought stdin was a pipe, and tried
20973150to reopen it to accept binary data. Alas, it failed.
20983151
20993152=end original
21003153
21013154(P) VMS に固有のエラーです。
21023155Perl は標準入力がパイプであると考えて、バイナリデータを受け入れるために
21033156再オープンしようとしました。
21043157悲しいかな、それは失敗しました。
21053158
2106=item Can't resolve method `%s' overloading `%s' in package `%s'
3159=item Can't represent character for Ox%X on this platform
21073160
21083161=begin original
21093162
2110(F|P) Error resolving overloading specified by a method name (as opposed
3163(F) There is a hard limit to how big a character code point can be due
2111to a subroutine reference): no such method callable via the package. If
3164to the fundamental properties of UTF-8, especially on EBCDIC
2112method name is C<???>, this is an internal error.
3165platforms. The given code point exceeds that. The only work-around is
3166to not use such a large code point.
21133167
21143168=end original
21153169
2116(F|P) (サブルーチンのリファレンスではく)メソッド名で指された
3170(F) どれだけ大き文字符号位置が使えるかについては固値の制限があります;
2117オーバーロード解決でのエラー: そようメソッドはパッケージ経由
3171これは UTF-8 、特に EBCDIC プットフォムで基礎的特性によるものす。
2118呼び出せせん
3172指定された符号位置はそれを越えてい
2119もしメソッド名が C<???> ら、内部エラーです。
3173唯一の回避策はそのよう大きな符号位置を使わないことです。
21203174
2121=item Can't reswap uid and euid
3175=item Can't reset %ENV on this system
21223176
21233177=begin original
21243178
2125(P) The setreuid() call failed for some reason in the setuid emulator of
3179(F) You called C<reset('E')> or similar, which tried to reset
2126suidperl.
3180all variables in the current package beginning with "E". In
3181the main package, that includes %ENV. Resetting %ENV is not
3182supported on some systems, notably VMS.
21273183
21283184=end original
21293185
2130(P) suidperl の setuid エミュレータで何らか理由に
3186(F) C<reset('E')> のようなものを呼び出して現在のパッケージで "E" で始まる
2131setreuid() 呼び出が失敗しました。
3187全ての変数を reset しようとしました。
3188main パッケージでは、これには %ENV が含まれます。
3189%ENV の reset は一部のシステム、特に VMS では対応していません。
21323190
2133=item Can't return %s from lvalue subroutine
3191=item Can't resolve method "%s" overloading "%s" in package "%s"
21343192
21353193=begin original
21363194
2137(F) Perl detected an attempt to return illegal lvalues (such as
3195(F)(P) Error resolving overloading specified by a method name (as
2138temporary or readonly values) from a subroutine used as an lvalue. This
3196opposed to a subroutine reference): no such method callable via the
2139is not allowed.
3197package. If the method name is C<???>, this is an internal error.
21403198
21413199=end original
21423200
2143(F) Perl が、左辺値として使われるサブルーチンから(一時的や
3201(F)(P) (サブルーチンのリファレンスではなく)メソッド名で指定された
2144読み込み専用のような)不正な左辺値が返されようとしているのを
3202オーバーロード解決でのエラー: そのようなメソッドはパッケージ経由で
2145した
3203呼びせん
2146これはきません
3204もしメソッド名が C<???> なら、内部エラー
21473205
2148=item Can't return %s to lvalue scalar context
3206=item Can't return %s from lvalue subroutine
21493207
21503208=begin original
21513209
2152(F) You tried to return a complete array or hash from an lvalue subroutine,
3210(F) Perl detected an attempt to return illegal lvalues (such as
2153but you called the subroutine in a way that made Perl think you meant
3211temporary or readonly values) from a subroutine used as an lvalue. This
2154to return only one value. You probably meant to write parentheses around
3212is not allowed.
2155the call to the subroutine, which tell Perl that the call should be in
2156list context.
21573213
21583214=end original
21593215
2160(F) 左辺値サブルーチンから配列ハッシュ全体を返そうとしましたが、
3216(F) Perl が、左辺値として使われるサブルーチンから(一時的
2161一つだけの値うとしていると Perl が考えるような方法でサブルーチン
3217読み込み専用ような)不正な左辺されようとしている検出しました。
2162呼び出しした
3218これは認められていせん
2163おそらく、Perl にこの呼び出しがリストコンテキストであると伝えるために、
2164サブルーチン呼び出しの周りにかっこを書いているのでしょう。
21653219
21663220=item Can't return outside a subroutine
21673221
21683222=begin original
21693223
21703224(F) The return statement was executed in mainline code, that is, where
21713225there was no subroutine call to return out of. See L<perlsub>.
21723226
21733227=end original
21743228
2175(F) return 文が、return で抜けるべきサブルーティンがない、
3229(F) return 文が、return で抜けるべきサブルーンがない、
21763230"main" コードで実行されました。
21773231L<perlsub> を参照してください。
21783232
2179=item Can't stat script "%s"
3233=item Can't return %s to lvalue scalar context
21803234
21813235=begin original
21823236
2183(P) For some reason you can't fstat() the script even though you have it
3237(F) You tried to return a complete array or hash from an lvalue
2184open already. Bizarre.
3238subroutine, but you called the subroutine in a way that made Perl
3239think you meant to return only one value. You probably meant to
3240write parentheses around the call to the subroutine, which tell
3241Perl that the call should be in list context.
21853242
21863243=end original
21873244
2188(P) 何らかの理由で、例え既にオしていたとしても、fstat()
3245(F) 左辺値サブルから配列やハッシュ全体を返そうとしました
2189行なえません。困ったもん
3246一つけの値を返そうとしていると Perl が考えるような方法でサブルーチンを
3247呼び出しました。
3248おそらく、Perl にこの呼び出しがリストコンテキストであると伝えるために、
3249サブルーチン呼び出しの周りにかっこを書いているのでしょう。
21903250
2191=item Can't swap uid and euid
3251=item Can't stat script "%s"
21923252
21933253=begin original
21943254
2195(P) The setreuid() call failed for some reason in the setuid emulator of
3255(P) For some reason you can't fstat() the script even though you have it
2196suidperl.
3256open already. Bizarre.
21973257
21983258=end original
21993259
2200(P) suidperl の setuid エミュレータで何らかの理由により
3260(P) 何らかの理由で、例え既オープンしていたとしてもfstat() が
2201setreuid() 呼び出しが失敗した。
3261行なえせん。困っもんだ
22023262
22033263=item Can't take log of %g
22043264
22053265=begin original
22063266
22073267(F) For ordinary real numbers, you can't take the logarithm of a
2208negative number or zero. There's a Math::Complex package that comes
3268negative number or zero. There's a Math::Complex package that comes
22093269standard with Perl, though, if you really want to do that for the
22103270negative numbers.
22113271
22123272=end original
22133273
22143274(F) 実数に対しては、負数や 0 に対する対数を取ることはできません。
22153275しかし、もし本当に負数に対してそのようなことをしたいのなら、
22163276Perl 標準になっている Math::Complex パッケージがあります。
22173277
22183278=item Can't take sqrt of %g
22193279
22203280=begin original
22213281
22223282(F) For ordinary real numbers, you can't take the square root of a
22233283negative number. There's a Math::Complex package that comes standard
22243284with Perl, though, if you really want to do that.
22253285
22263286=end original
22273287
22283288(F) 通常の実数では、負数の平方根をとることはできません。
22293289しかし、本当にその計算を行ないたいのであれば、Math::Complex パッケージが
22303290Perl に標準で用意されています。
22313291
22323292=item Can't undef active subroutine
22333293
22343294=begin original
22353295
22363296(F) You can't undefine a routine that's currently running. You can,
22373297however, redefine it while it's running, and you can even undef the
22383298redefined subroutine while the old routine is running. Go figure.
22393299
22403300=end original
22413301
22423302(F) 実行中のルーティンを未定義にすることはできません。
22433303しかし、実行中に再定義することはでき、古いルーティンを実行中に、
2244再定義したサブルーティンを undef することさえできます。
3304再定義したサブルーンを undef することさえできます。
22453305驚きです。
22463306
2247=item Can't unshift
3307=item Can't unweaken a nonreference
22483308
22493309=begin original
22503310
2251(F) You tried to unshift an "unreal" array that can't be unshifted, such
3311(F) You attempted to unweaken something that was not a reference. Only
2252as the main Perl stack.
3312references can be unweakened.
22533313
22543314=end original
22553315
2256(F) Perl のメインスタックのように、unshift するこのできない
3316(F) リファレンスでないもを弱くないようにしようしました。
2257「実在しない」配列に対して、unshift を行なおとしした
3317リファレンスだけが弱くないにでき
22583318
2259=item Can't upgrade that kind of scalar
3319=item Can't upgrade %s (%d) to %d
22603320
22613321=begin original
22623322
22633323(P) The internal sv_upgrade routine adds "members" to an SV, making it
22643324into a more specialized kind of SV. The top several SV types are so
22653325specialized, however, that they cannot be interconverted. This message
22663326indicates that such a conversion was attempted.
22673327
22683328=end original
22693329
22703330(P) 内部の sv_upgrade ルーティンは、SV に「メンバ」を加えて、
22713331より特別な種類の SV にします。 しかし、上位のいくつかの SV 型は、
22723332特殊化され過ぎて、内部変換することができません。
22733333このメッセージは、そのような変更を行なおうとしたことを示しています。
22743334
2275=item Can't upgrade to undef
3335=item Can't use '%c' after -mname
22763336
22773337=begin original
22783338
2279(P) The undefined SV is the bottom of the totem pole, in the scheme of
3339(F) You tried to call perl with the B<-m> switch, but you put something
2280upgradability. Upgrading to undef indicates an error in the code
3340other than "=" after the module name.
2281calling sv_upgrade.
22823341
22833342=end original
22843343
2285(P) 未定義 SV は、upgrade の仕組みにおいて階層構造最下位
3344(F) B<-m> オプション付きで perl を呼び出そうとしましたがモジュール名
2286位置するものです
3345"=" 以外のものを置きました
2287undef への upgrade は、sv_upgrade を呼ぶコードのエラーを示します。
22883346
3347=item Can't use a hash as a reference
3348
3349=begin original
3350
3351(F) You tried to use a hash as a reference, as in
3352C<< %foo->{"bar"} >> or C<< %$ref->{"hello"} >>. Versions of perl
3353<= 5.22.0 used to allow this syntax, but shouldn't
3354have. This was deprecated in perl 5.6.1.
3355
3356=end original
3357
3358(F) C<< %foo->{"bar"} >> or C<< %$ref->{"hello"} >> のように、
3359ハッシュをリファレンスとして使おうとしました。
3360<= 5.22.0 のバージョンの perl ではこの文法が許されていましたが、
3361そうするべきではありません。
3362これは perl 5.6.1 から廃止予定です。
3363
3364=item Can't use an array as a reference
3365
3366=begin original
3367
3368(F) You tried to use an array as a reference, as in
3369C<< @foo->[23] >> or C<< @$ref->[99] >>. Versions of perl <= 5.22.0
3370used to allow this syntax, but shouldn't have. This
3371was deprecated in perl 5.6.1.
3372
3373=end original
3374
3375(F) C<< @foo->[23] >> or C<< @$ref->[99] >> のように、
3376配列をリファレンスとして使おうとしました。
3377<= 5.22.0 のバージョンの perl ではこの文法が許されていましたが、
3378そうするべきではありません。
3379これは perl 5.6.1 から廃止予定です。
3380
3381=item Can't use anonymous symbol table for method lookup
3382
3383=begin original
3384
3385(F) The internal routine that does method lookup was handed a symbol
3386table that doesn't have a name. Symbol tables can become anonymous
3387for example by undefining stashes: C<undef %Some::Package::>.
3388
3389=end original
3390
3391(F) メソッド検索を行う内部ルーチンが、名前のないシンボルテーブルを
3392扱いました。
3393シンボルテーブルは、例えば C<undef %Some::Package::> のように未定義の
3394stash によって無名となります。
3395
22893396=item Can't use an undefined value as %s reference
22903397
22913398=begin original
22923399
22933400(F) A value used as either a hard reference or a symbolic reference must
22943401be a defined value. This helps to delurk some insidious errors.
22953402
22963403=end original
22973404
22983405(F) ハードリファレンスやシンボリックリファレンスとして使用する値は、
22993406定義済みの値でなければなりません。
23003407潜伏中のエラーを引きずり出す助けとなります。
23013408
23023409=item Can't use bareword ("%s") as %s ref while "strict refs" in use
23033410
23043411=begin original
23053412
23063413(F) Only hard references are allowed by "strict refs". Symbolic
23073414references are disallowed. See L<perlref>.
23083415
23093416=end original
23103417
2311(F) "strict refs" では、ハードリファレンスだけが許されます。
3418(F) "strict refs" によって、ハードリファレンスのみが許されます。
2312シンボリックリファレンスは許されていません。
3419シンボリックリファレンスは許されません。
23133420L<perlref> を参照してください。
23143421
23153422=item Can't use %! because Errno.pm is not available
23163423
23173424=begin original
23183425
2319(F) The first time the %! hash is used, perl automatically loads the
3426(F) The first time the C<%!> hash is used, perl automatically loads the
2320Errno.pm module. The Errno module is expected to tie the %! hash to
3427Errno.pm module. The Errno module is expected to tie the %! hash to
23213428provide symbolic names for C<$!> errno values.
23223429
23233430=end original
23243431
2325(F) 最初に %! ハッシュが使われるときに、
3432(F) 最初に C<%!> ハッシュが使われるときに、
23263433perl は自動的に Errno.pm モジュールを読み込みます。
23273434Errno モジュールは C<$!> errno 値のシンボリック名を提供するために
23283435%! ハッシュと tie されることになります。
23293436
3437=item Can't use both '<' and '>' after type '%c' in %s
3438
3439=begin original
3440
3441(F) A type cannot be forced to have both big-endian and little-endian
3442byte-order at the same time, so this combination of modifiers is not
3443allowed. See L<perlfunc/pack>.
3444
3445=end original
3446
3447(F) 一つの型を同時にビッグエンディアンとリトルエンディアンの両方に
3448強制することはできないので、この修飾子の組み合わせは許可されません。
3449L<perlfunc/pack> を参照してください。
3450
3451=item Can't use 'defined(@array)' (Maybe you should just omit the defined()?)
3452
3453=begin original
3454
3455(F) defined() is not useful on arrays because it
3456checks for an undefined I<scalar> value. If you want to see if the
3457array is empty, just use C<if (@array) { # not empty }> for example.
3458
3459=end original
3460
3461(F) defined() は未定義の I<スカラ> 値を調べるので、配列に使っても無意味です。
3462配列が空かどうかを調べたい場合は、例えば単に
3463C<if (@array) { # not empty }> としてください。
3464
3465=item Can't use 'defined(%hash)' (Maybe you should just omit the defined()?)
3466
3467=begin original
3468
3469(F) C<defined()> is not usually right on hashes.
3470
3471=end original
3472
3473(F) C<defined()> は普通はハッシュの右側ではありません。
3474
3475=begin original
3476
3477Although C<defined %hash> is false on a plain not-yet-used hash, it
3478becomes true in several non-obvious circumstances, including iterators,
3479weak references, stash names, even remaining true after C<undef %hash>.
3480These things make C<defined %hash> fairly useless in practice, so it now
3481generates a fatal error.
3482
3483=end original
3484
3485まだ使われていない普通のハッシュに対する C<defined %hash> は偽ですが、
3486いくつかの明白でない状況では新になります; これには反復し、弱い参照、
3487stash 名を含み、C<undef %hash> の後でも真になります。
3488これらにより、実践では C<defined %hash> はほとんど使えないので、
3489致命的エラーを生成するようになりました。
3490
3491=begin original
3492
3493If a check for non-empty is what you wanted then just put it in boolean
3494context (see L<perldata/Scalar values>):
3495
3496=end original
3497
3498空でないことをチェックしたいなら、単にこれを真偽値コンテキストに
3499置いてください (L<perldata/Scalar values> を参照してください):
3500
3501 if (%hash) {
3502 # not empty
3503 }
3504
3505=begin original
3506
3507If you had C<defined %Foo::Bar::QUUX> to check whether such a package
3508variable exists then that's never really been reliable, and isn't
3509a good way to enquire about the features of a package, or whether
3510it's loaded, etc.
3511
3512=end original
3513
3514パッケージ変数が存在するかどうかを調べるために
3515C<defined %Foo::Bar::QUUX> のようなことをしていると、これは決して信頼性が
3516なく、パッケージの機能や読み込まれているかどうかなどを問い合わせる
3517良い方法ではありません。
3518
23303519=item Can't use %s for loop variable
23313520
23323521=begin original
23333522
2334(F) Only a simple scalar variable may be used as a loop variable on a
3523(P) The parser got confused when trying to parse a C<foreach> loop.
2335foreach.
23363524
23373525=end original
23383526
2339(F) 単純スカラ変数だけforeach ループ変数とし
3527(P) パーサ C<foreach> ループをパースしようとしたときに混乱しました。
2340使用することができます。
23413528
2342=item Can't use global %s in "my"
3529=item Can't use global %s in "%s"
23433530
23443531=begin original
23453532
23463533(F) You tried to declare a magical variable as a lexical variable. This
23473534is not allowed, because the magic can be tied to only one location
23483535(namely the global variable) and it would be incredibly confusing to
23493536have variables in your program that looked like magical variables but
23503537weren't.
23513538
23523539=end original
23533540
23543541(F) マジカル変数を、字句スコープ変数として宣言しようとしました。
2355これが許されていないのは、マジック変数は 1 か所だけにおくこができる
3542これが許されていないのは、マジカル変数は(グローバル変数いう名前の)
2356 (つまりグローバル変数) からであり、マジカル変数に見えながら、
35431所だけに結び付けれているので、マジカル変数のように見えるけれども
2357そうでないものがプログラム中に現われると混乱の元となためです。
3544そうでない変数がプログラム中にると、著しく混乱させからです。
23583545
3546=item Can't use '%c' in a group with different byte-order in %s
3547
3548=begin original
3549
3550(F) You attempted to force a different byte-order on a type
3551that is already inside a group with a byte-order modifier.
3552For example you cannot force little-endianness on a type that
3553is inside a big-endian group.
3554
3555=end original
3556
3557(F) 既にバイト順修飾子が付けられているグループの内側で異なったバイト順を
3558強制しようとしました。
3559例えば、ビッグエンディアングループの中にある型をリトルエンディアンに
3560強制することはできません。
3561
23593562=item Can't use "my %s" in sort comparison
23603563
23613564=begin original
23623565
23633566(F) The global variables $a and $b are reserved for sort comparisons.
23643567You mentioned $a or $b in the same line as the <=> or cmp operator,
23653568and the variable had earlier been declared as a lexical variable.
23663569Either qualify the sort variable with the package name, or rename the
23673570lexical variable.
23683571
23693572=end original
23703573
23713574(F) グローバル変数 $a と $b はソート比較のために予約されています。
23723575$a か $b を <=> か cmp 演算子と同じ行に記述しましたが、その変数は
23733576その前にレキシカル変数として宣言されています。
2374ソート変数をパッケージ名で修飾するか、レキシカル変数の名前を
3577ソート変数をパッケージ名で修飾するか、レキシカル変数の名前を変えてください。
2375変更してください。
23763578
23773579=item Can't use %s ref as %s ref
23783580
23793581=begin original
23803582
23813583(F) You've mixed up your reference types. You have to dereference a
23823584reference of the type needed. You can use the ref() function to
23833585test the type of the reference, if need be.
23843586
23853587=end original
23863588
23873589(F) リファレンス型を混同しています。
23883590必要な型のリファレンスを被参照しなければなりません。
23893591必要ならば、リファレンスの型を調べるのに、ref() 関数を使うことができます。
23903592
23913593=item Can't use string ("%s") as %s ref while "strict refs" in use
23923594
3595=item Can't use string ("%s"...) as %s ref while "strict refs" in use
3596
23933597=begin original
23943598
2395(F) Only hard references are allowed by "strict refs". Symbolic
3599(F) You've told Perl to dereference a string, something which
2396references are disallowed. See L<perlref>.
3600C<use strict> blocks to prevent it happening accidentally. See
3601L<perlref/"Symbolic references">. This can be triggered by an C<@> or C<$>
3602in a double-quoted string immediately before interpolating a variable,
3603for example in C<"user @$twitter_id">, which says to treat the contents
3604of C<$twitter_id> as an array reference; use a C<\> to have a literal C<@>
3605symbol followed by the contents of C<$twitter_id>: C<"user \@$twitter_id">.
23973606
23983607=end original
23993608
2400(F) "strict refs" によって、ハードリファレンスのみが許可されま
3609(F) 文字列をデリファレンスするように Perl に指示しましたが、
2401シンボリックリファレンスは許可されません
3610C<use strict> ブロックがこが偶然起きることを妨げした
2402L<perlref> を参照してください。
3611L<perlref/"Symbolic references"> を参照してください。
3612これは、ダブルクォート文字列の中の変数展開の直前の C<@> または C<$> で
3613引き起こされます; 例えば C<"user @$twitter_id"> です; これは C<$twitter_id> の
3614内容を配列リファレンスとして扱うように指示しています;
3615リテラルな C<@> の後に C<$twitter_id> の内容が引き続くようにするには
3616C<\> を使ってください: C<"user \@$twitter_id">。
24033617
24043618=item Can't use subscript on %s
24053619
24063620=begin original
24073621
24083622(F) The compiler tried to interpret a bracketed expression as a
24093623subscript. But to the left of the brackets was an expression that
2410didn't look like an array reference, or anything else subscriptable.
3624didn't look like a hash or array reference, or anything else subscriptable.
24113625
24123626=end original
24133627
24143628(F) コンパイラが大かっこで囲われた式を添字として解釈しようとしました。
24153629しかし、大かっこの左側はハッシュか配列のリファレンスやその他の
24163630添字化できるもののようには見えない式です。
24173631
24183632=item Can't use \%c to mean $%c in expression
24193633
24203634=begin original
24213635
24223636(W syntax) In an ordinary expression, backslash is a unary operator that
24233637creates a reference to its argument. The use of backslash to indicate a
24243638backreference to a matched substring is valid only as part of a regular
24253639expression pattern. Trying to do this in ordinary Perl code produces a
24263640value that prints out looking like SCALAR(0xdecaf). Use the $1 form
24273641instead.
24283642
24293643=end original
24303644
24313645(W syntax) 通常の式では、バックスラッシュは引数へのリファレンスを作る
24323646単項演算子です。
24333647マッチした部分文字列への後方参照を示すためのバックスラッシュの使用は
24343648正規表現パターンの一部の場合にのみ有効です。
24353649通常の Perl コードの中でこれをしようとすると、SCALAR(0xdecaf) のように
24363650表示される値を生成します。
24373651代わりに $1 の形を使ってください。
24383652
24393653=item Can't weaken a nonreference
24403654
24413655=begin original
24423656
24433657(F) You attempted to weaken something that was not a reference. Only
24443658references can be weakened.
24453659
24463660=end original
24473661
24483662(F) リファレンスではない何かを弱めようとしました。
24493663リファレンスだけが弱めることができます。
24503664
3665=item Can't "when" outside a topicalizer
3666
3667=begin original
3668
3669(F) You have used a when() block that is neither inside a C<foreach>
3670loop nor a C<given> block. (Note that this error is issued on exit
3671from the C<when> block, so you won't get the error if the match fails,
3672or if you use an explicit C<continue>.)
3673
3674=end original
3675
3676(F) C<foreach> ブロックや C<given> ブロックの内側以外で when() ブロックを
3677使いました。
3678(このエラーは C<when> ブロックから終了したときに発生するので、マッチングに
3679失敗したときや、明示的な C<continue> を使った場合はこのエラーは
3680発生しません。)
3681
24513682=item Can't x= to read-only value
24523683
24533684=begin original
24543685
24553686(F) You tried to repeat a constant value (often the undefined value)
24563687with an assignment operator, which implies modifying the value itself.
24573688Perhaps you need to copy the value to a temporary, and repeat that.
24583689
24593690=end original
24603691
24613692(F) 定数値 (未定義値であることが多い) を、自らを書き換えることを意味する、
24623693代入演算子で繰り返しを行なおうとしました。
24633694テンポラリ変数に値を移してから、繰り返すと良いでしょう。
24643695
2465=item chmod() mode argument is missing initial 0
3696=item Character following "\c" must be printable ASCII
24663697
24673698=begin original
24683699
2469(W chmod) A novice will sometimes say
3700(F) In C<\cI<X>>, I<X> must be a printable (non-control) ASCII character.
24703701
24713702=end original
24723703
2473(W chmod) 初心者は以下のよう書くことがあります:
3704(F) C<\cI<X>>おいて、I<X> は表示可能な ASCII 文字でなければなりません。
24743705
2475 chmod 777, $filename
3706=begin original
24763707
3708Note that ASCII characters that don't map to control characters are
3709discouraged, and will generate the warning (when enabled)
3710L</""\c%c" is more clearly written simply as "%s"">.
3711
3712=end original
3713
3714制御文字にマッピングされない ASCII 文字は非推奨であることに注意してください;
3715そして (有効になっていれば)
3716L</""\c%c" is more clearly written simply as "%s""> 警告が出力されます。
3717
3718=item Character following \%c must be '{' or a single-character Unicode property name in regex; marked by <-- HERE in m/%s/
3719
24773720=begin original
24783721
2479not realizing that 777 will be interpreted as a decimal number,
3722(F) (In the above the C<%c> is replaced by either C<p> or C<P>.) You
2480equivalent to 01411. Octal constants are introduced with a leading 0 in
3723specified something that isn't a legal Unicode property name. Most
2481Perl, as in C.
3724Unicode properties are specified by C<\p{...}>. But if the name is a
3725single character one, the braces may be omitted.
24823726
24833727=end original
24843728
2485というふうに、777 01411 に等しい 10 進数であることに気付ないで
3729(F) (前述の C<%c> C<p> C<P> に置き換えられます。)
2486使うことがあり
3730正当な Unicode 特性名ではない何かをしていしした
2487Perl 、8 進数の定数は、C と同じように、先頭に 0 を付けて表わします。
3731ほとんどの Unicode 特性は C<\p{...}> として指定されます。
3732しかし、名前が一文字の場合、中かっこは省略できます。
24883733
3734=item Character in 'C' format wrapped in pack
3735
3736=begin original
3737
3738(W pack) You said
3739
3740=end original
3741
3742(W pack) 以下のように書きましたが:
3743
3744 pack("C", $x)
3745
3746=begin original
3747
3748where $x is either less than 0 or more than 255; the C<"C"> format is
3749only for encoding native operating system characters (ASCII, EBCDIC,
3750and so on) and not for Unicode characters, so Perl behaved as if you meant
3751
3752=end original
3753
3754$x は 0 より小さいか 255 より大きいです; C<"C"> フォーマットは
3755ネイティブ OS 文字 (ASCII, EBCDIC など) のエンコーディングだけに
3756対応していて、Unicode 文字は対応していません;
3757それで、Perl は以下のように意味しているかのように振舞います:
3758
3759 pack("C", $x & 255)
3760
3761=begin original
3762
3763If you actually want to pack Unicode codepoints, use the C<"U"> format
3764instead.
3765
3766=end original
3767
3768Unicode コードポイントを pack したい場合は、代わりに C<"U"> フォーマットを
3769使ってください。
3770
3771=item Character in 'c' format wrapped in pack
3772
3773=begin original
3774
3775(W pack) You said
3776
3777=end original
3778
3779(W pack) 以下のように書きましたが:
3780
3781 pack("c", $x)
3782
3783=begin original
3784
3785where $x is either less than -128 or more than 127; the C<"c"> format
3786is only for encoding native operating system characters (ASCII, EBCDIC,
3787and so on) and not for Unicode characters, so Perl behaved as if you meant
3788
3789=end original
3790
3791$x は -128 より小さいか 127 より大きいです; C<"c"> フォーマットは
3792ネイティブ OS 文字 (ASCII, EBCDIC など) のエンコーディングだけに
3793対応していて、Unicode 文字は対応していません;
3794それで、Perl は以下のように意味しているかのように振舞います:
3795
3796 pack("c", $x & 255);
3797
3798=begin original
3799
3800If you actually want to pack Unicode codepoints, use the C<"U"> format
3801instead.
3802
3803=end original
3804
3805Unicode コードポイントを pack したい場合は、代わりに C<"U"> フォーマットを
3806使ってください。
3807
3808=item Character in '%c' format wrapped in unpack
3809
3810=begin original
3811
3812(W unpack) You tried something like
3813
3814=end original
3815
3816(W unpack) 以下のようなことをしましたが:
3817
3818 unpack("H", "\x{2a1}")
3819
3820=begin original
3821
3822where the format expects to process a byte (a character with a value
3823below 256), but a higher value was provided instead. Perl uses the
3824value modulus 256 instead, as if you had provided:
3825
3826=end original
3827
3828ここでフォーマットはバイト(値が 256 より小さい文字)を想定していますが、
3829文字の中により大きな値のものがあります。
3830Perl は、あなたが以下のようにしたかのように、256 で割った余りを文字の
3831値として使います:
3832
3833 unpack("H", "\x{a1}")
3834
3835=item Character in 'W' format wrapped in pack
3836
3837=begin original
3838
3839(W pack) You said
3840
3841=end original
3842
3843(W pack) 以下のように書きましたが:
3844
3845 pack("U0W", $x)
3846
3847=begin original
3848
3849where $x is either less than 0 or more than 255. However, C<U0>-mode
3850expects all values to fall in the interval [0, 255], so Perl behaved
3851as if you meant:
3852
3853=end original
3854
3855$x が 0 より小さいか 255 より大きいです。
3856しかし、C<U0>-モードは全ての値が [0, 255] の範囲にあることを想定してるので、
3857Perl は以下のように振る舞います:
3858
3859 pack("U0W", $x & 255)
3860
3861=item Character(s) in '%c' format wrapped in pack
3862
3863=begin original
3864
3865(W pack) You tried something like
3866
3867=end original
3868
3869(W pack) 以下のようなことをしましたが:
3870
3871 pack("u", "\x{1f3}b")
3872
3873=begin original
3874
3875where the format expects to process a sequence of bytes (character with a
3876value below 256), but some of the characters had a higher value. Perl
3877uses the character values modulus 256 instead, as if you had provided:
3878
3879=end original
3880
3881ここでフォーマットはバイト(値が 256 より小さい文字)列を想定していますが、
3882文字の中により大きな値のものがあります。
3883Perl は、あなたが以下のようにしたかのように、256 で割った余りを文字の
3884値として使います:
3885
3886 pack("u", "\x{f3}b")
3887
3888=item Character(s) in '%c' format wrapped in unpack
3889
3890=begin original
3891
3892(W unpack) You tried something like
3893
3894=end original
3895
3896(W unpack) 以下のようなことをしましたが:
3897
3898 unpack("s", "\x{1f3}b")
3899
3900=begin original
3901
3902where the format expects to process a sequence of bytes (character with a
3903value below 256), but some of the characters had a higher value. Perl
3904uses the character values modulus 256 instead, as if you had provided:
3905
3906=end original
3907
3908ここでフォーマットはバイト(値が 256 より小さい文字)列を想定していますが、
3909文字の中により大きな値のものがあります。
3910Perl は、あなたが以下のようにしたかのように、256 で割った余りを文字の
3911値として使います:
3912
3913 unpack("s", "\x{f3}b")
3914
3915=item charnames alias definitions may not contain a sequence of multiple
3916spaces; marked by S<<-- HERE> in %s
3917
3918=begin original
3919
3920(F) You defined a character name which had multiple space characters
3921in a row. Change them to single spaces. Usually these names are
3922defined in the C<:alias> import argument to C<use charnames>, but they
3923could be defined by a translator installed into C<$^H{charnames}>. See
3924L<charnames/CUSTOM ALIASES>.
3925
3926=end original
3927
3928(F) 連続して複数のスペース文字を持つ文字名を定義しました。
3929単一のスペースに変更してください。
3930普通はこれらの名前は C<use charnames> の C<:alias> インポート引数で
3931定義されますが、C<$^H{charnames}> にインストールされた変換器で
3932定義されているかも知れません。
3933L<charnames/CUSTOM ALIASES> を参照してください。
3934
3935=item charnames alias definitions may not contain trailing white-space;
3936marked by S<<-- HERE> in %s
3937
3938=begin original
3939
3940(F) You defined a character name which ended in a space
3941character. Remove the trailing space(s). Usually these names are
3942defined in the C<:alias> import argument to C<use charnames>, but they
3943could be defined by a translator installed into C<$^H{charnames}>.
3944See L<charnames/CUSTOM ALIASES>.
3945
3946=end original
3947
3948(D) スペース文字で終わる文字名を定義しました。
3949末尾のスペースを取り除いてください。
3950普通はこれらの名前は C<use charnames> の C<:alias> インポート引数で
3951定義されますが、C<$^H{charnames}> にインストールされた変換器で
3952定義されているかも知れません。
3953L<charnames/CUSTOM ALIASES> を参照してください。
3954
3955=item chdir() on unopened filehandle %s
3956
3957=begin original
3958
3959(W unopened) You tried chdir() on a filehandle that was never opened.
3960
3961=end original
3962
3963(W unopened) 開いていないファイルハンドルに対して chdir() しようとしました。
3964
3965=item "\c%c" is more clearly written simply as "%s"
3966
3967=begin original
3968
3969(W syntax) The C<\cI<X>> construct is intended to be a way to specify
3970non-printable characters. You used it for a printable one, which
3971is better written as simply itself, perhaps preceded by a backslash
3972for non-word characters. Doing it the way you did is not portable
3973between ASCII and EBCDIC platforms.
3974
3975=end original
3976
3977(W syntax) C<\cI<X>> 構文は非表示文字を指定する方法を意図しています。
3978これを表示文字に使いました; おそらく(おそらく非単語文字のために
3979逆スラッシュを前に付けて)単にその文字自身を書くほうがよいです。
3980この方法ですると ASCII と EBCDIC のプラットフォーム間で移植性がありません。
3981
3982=item Cloning substitution context is unimplemented
3983
3984=begin original
3985
3986(F) Creating a new thread inside the C<s///> operator is not supported.
3987
3988=end original
3989
3990(F) C<s///> 演算子の中での新しいスレッドの作成は非対応です。
3991
3992=item closedir() attempted on invalid dirhandle %s
3993
3994=begin original
3995
3996(W io) The dirhandle you tried to close is either closed or not really
3997a dirhandle. Check your control flow.
3998
3999=end original
4000
4001(W io) 閉じようとしたディレクトリハンドルは既に閉じられているか、実際には
4002ディレクトリハンドルではありません。
4003制御フローをチェックしてください。
4004
24894005=item close() on unopened filehandle %s
24904006
24914007=begin original
24924008
24934009(W unopened) You tried to close a filehandle that was never opened.
24944010
24954011=end original
24964012
24974013(W unopened) オープンされていないファイルハンドルをクローズしようとしました。
24984014
4015=item Closure prototype called
4016
4017=begin original
4018
4019(F) If a closure has attributes, the subroutine passed to an attribute
4020handler is the prototype that is cloned when a new closure is created.
4021This subroutine cannot be called.
4022
4023=end original
4024
4025(F) クロージャに属性があると、属性ハンドラに渡されるサブルーチンは、新しい
4026クロージャが作成されたときにクローン化されたプロトタイプです。
4027このサブルーチンは呼び出すことができません。
4028
4029=item \C no longer supported in regex; marked by S<<-- HERE> in m/%s/
4030
4031=begin original
4032
4033(F) The \C character class used to allow a match of single byte
4034within a multi-byte utf-8 character, but was removed in v5.24 as
4035it broke encapsulation and its implementation was extremely buggy.
4036If you really need to process the individual bytes, you probably
4037want to convert your string to one where each underlying byte is
4038stored as a character, with utf8::encode().
4039
4040=end original
4041
4042(F) \C 文字クラスは、複数バイトの UTF8 文字の単一のバイトに
4043マッチングできるようにしていましたが、
4044カプセル化を壊し、その実装が極めてバグっぽいので、v5.24 で削除されました。
4045本当に個々のバイトを処理する必要があるなら、
4046おそらくその文字列を、utf8::encode() を使って、
4047元となっているバイトそれぞれを文字として保持する文字列に変換した方が
4048良いでしょう。
4049
4050=item Code missing after '/'
4051
4052=begin original
4053
4054(F) You had a (sub-)template that ends with a '/'. There must be
4055another template code following the slash. See L<perlfunc/pack>.
4056
4057=end original
4058
4059(F) テンプレートが '/' で終わっています。
4060スラッシュの後には他のテンプレートコードが必須です。
4061L<perlfunc/pack> を参照してください。
4062
4063=item Code point 0x%X is not Unicode, and not portable
4064
4065=begin original
4066
4067(S non_unicode) You had a code point that has never been in any
4068standard, so it is likely that languages other than Perl will NOT
4069understand it. At one time, it was legal in some standards to have code
4070points up to 0x7FFF_FFFF, but not higher, and this code point is higher.
4071
4072=end original
4073
4074(S non_unicode) どのような標準でもない符号位置を使いました; 従って
4075これはおそらく Perl 以外の言語では理解できないでしょう。
4076一時期、一部の標準では 0x7FFF_FFFF までの符号位置は正当でしたが、
4077それ以上はそうではありません; そしてこの符号位置はそれ以上です。
4078
4079=begin original
4080
4081Acceptance of these code points is a Perl extension, and you should
4082expect that nothing other than Perl can handle them; Perl itself on
4083EBCDIC platforms before v5.24 does not handle them.
4084
4085=end original
4086
4087このような符号位置を受け付けるのは Perl の拡張で、Perl 以外が
4088これらを扱えるかについて何も想定するべきではありません;
4089v5.24 以前の EBCDIC プラットフォームでは Perl 自身もこれらを扱えません。
4090
4091=begin original
4092
4093Code points above 0xFFFF_FFFF require larger than a 32 bit word.
4094
4095=end original
4096
40970xFFFF_FFFF より上の符号位置は 32 ビットワードより大きいものを要求します。
4098
4099=begin original
4100
4101Perl also makes no guarantees that the representation of these code
4102points won't change at some point in the future, say when machines
4103become available that have larger than a 64-bit word. At that time,
4104files written by an older Perl would require conversion before being
4105readable by a newer Perl.
4106
4107=end original
4108
4109Perl はまた、将来のある時点、例えばマシンが 64 ビットワード以上を
4110利用可能になったときに、これらの符号位置の表現が変更されないことについて
4111保証しません。
4112この時点で、より古い Perl で書かれたファイルは、より新しい Perl で
4113読み込めるようにする前に変換が必要です。
4114
4115=item Code point 0x%X is not Unicode, may not be portable
4116
4117=begin original
4118
4119(S non_unicode) You had a code point above the Unicode maximum
4120of U+10FFFF.
4121
4122=end original
4123
4124(S non_unicode) Unicode の最大である U+10FFFF を超えた符号位置です。
4125
4126=begin original
4127
4128Perl allows strings to contain a superset of Unicode code points, but
4129these may not be accepted by other languages/systems. Further, even if
4130these languages/systems accept these large code points, they may have
4131chosen a different representation for them than the UTF-8-like one that
4132Perl has, which would mean files are not exchangeable between them and
4133Perl.
4134
4135=end original
4136
4137Perl は Unicode 符号位置の上位集合を含む文字列を受け入れますが、
4138これらは他の言語/システムは受け入れないかもしれません。
4139さらに、たとえこれらの言語/システムがこれらの大きな符号位置を
4140受け入れたとしても、それらは Perl の UTF-8 風のものと
4141ことなる表現を選ぶかもしれず、その場合それらと Perl の間でファイルが
4142交換できないことを意味します。
4143
4144=begin original
4145
4146On EBCDIC platforms, code points above 0x3FFF_FFFF have a different
4147representation in Perl v5.24 than before, so any file containing these
4148that was written before that version will require conversion before
4149being readable by a later Perl.
4150
4151=end original
4152
4153EBCDIC プラットフォームでは、Perl 5.24 では 0x3FFF_FFFF より上の符号位置は
4154以前と異なった表現となっているので、このバージョンより前に書かれた
4155これらを含むファイルは、それ以降の Perl で読み込み可能にする前に
4156変換が必要です。
4157
24994158=item %s: Command not found
25004159
25014160=begin original
25024161
2503(A) You've accidentally run your script through B<csh> instead of Perl.
4162(A) You've accidentally run your script through B<csh> or another shell
2504Check the #! line, or manually feed your script into Perl yourself.
4163instead of Perl. Check the #! line, or manually feed your script into
4164Perl yourself. The #! line at the top of your file could look like
25054165
25064166=end original
25074167
2508(A) スクリプトを perl ではなく B<csh> で実行しようとし
4168(A) スクリプトを perl ではなく B<csh> またはその他のシェルで
4169実行しようとしました。
25094170#! 行をチェックするか、スクリプトを直接 Perl で起動してください。
4171ファイルの先頭の #! 行は以下のようにします
25104172
4173 #!/usr/bin/perl
4174
4175=item %s: command not found
4176
4177=begin original
4178
4179(A) You've accidentally run your script through B<bash> or another shell
4180instead of Perl. Check the #! line, or manually feed your script into
4181Perl yourself. The #! line at the top of your file could look like
4182
4183=end original
4184
4185(A) 誤ってスクリプトを Perl ではなく B<bash> やその他のシェルに渡しました。
4186#! 行を確認するか、スクリプトを手動で Perl 自身に渡してください。
4187ファイルの先頭の #! 行は次のような形です:
4188
4189 #!/usr/bin/perl
4190
4191=item %s: command not found: %s
4192
4193=begin original
4194
4195(A) You've accidentally run your script through B<zsh> or another shell
4196instead of Perl. Check the #! line, or manually feed your script into
4197Perl yourself. The #! line at the top of your file could look like
4198
4199=end original
4200
4201(A) 誤ってスクリプトを Perl ではなく B<zsh> やその他のシェルに渡しました。
4202#! 行を確認するか、スクリプトを手動で Perl 自身に渡してください。
4203ファイルの先頭の #! 行は次のような形です:
4204
4205 #!/usr/bin/perl
4206
25114207=item Compilation failed in require
25124208
25134209=begin original
25144210
25154211(F) Perl could not compile a file specified in a C<require> statement.
25164212Perl uses this generic message when none of the errors that it
25174213encountered were severe enough to halt compilation immediately.
25184214
25194215=end original
25204216
25214217(F) Perl は C<require> 文で指定されたファイルをコンパイルできませんでした。
25224218Perl は、コンパイルを直ちに停止させるほど厳しいエラーに遭遇しなかった
25234219ときに、この一般的なメッセージを使います。
25244220
25254221=item Complex regular subexpression recursion limit (%d) exceeded
25264222
25274223=begin original
25284224
25294225(W regexp) The regular expression engine uses recursion in complex
25304226situations where back-tracking is required. Recursion depth is limited
25314227to 32766, or perhaps less in architectures where the stack cannot grow
25324228arbitrarily. ("Simple" and "medium" situations are handled without
25334229recursion and are not subject to a limit.) Try shortening the string
25344230under examination; looping in Perl code (e.g. with C<while>) rather than
25354231in the regular expression engine; or rewriting the regular expression so
25364232that it is simpler or backtracks less. (See L<perlfaq2> for information
25374233on I<Mastering Regular Expressions>.)
25384234
25394235=end original
25404236
25414237(W regexp) 正規表現エンジンはバックトラックが要求される複雑な状況では
25424238再帰を使用します。
25434239再帰の深さは 32766、またはスタックを任意に増やせないアーキテクチャでは
25444240おそらくもっと小さい値に制限されています。
25454241(「単純な」または「中くらいの」状況では再帰なしで扱われるので、制限は
25464242ありません。)
25474243調べる文字列を短くしてみてください; 正規表現エンジンではなく
25484244(C<while> などの) Perl コードを使ってループするか、
25494245あるいは正規表現をより単純にしたり、バックトラックが少なくなるように
25504246書き換えてください。
25514247(I<Mastering Regular Expressions> の情報については L<perlfaq2> を
25524248参照してください。)
25534249
25544250=item connect() on closed socket %s
25554251
25564252=begin original
25574253
25584254(W closed) You tried to do a connect on a closed socket. Did you forget
25594255to check the return value of your socket() call? See
25604256L<perlfunc/connect>.
25614257
25624258=end original
25634259
25644260(W closed) クローズされたソケットに connent を行なおうとしました。
2565socket() の呼び出し時に、返却値のチェックを忘れたのではありませんか。
4261socket() の呼び出し時に、返却値のチェックを忘れたのではありませんか。
25664262L<perlfunc/connect> を参照してください。
25674263
2568=item Constant(%s)%s: %s
4264=item Constant(%s): Call to &{$^H{%s}} did not return a defined value
25694265
25704266=begin original
25714267
2572(F) The parser found inconsistencies either while attempting to define
4268(F) The subroutine registered to handle constant overloading
2573an overloaded constant, or when trying to find the character name
4269(see L<overload>) or a custom charnames handler (see
2574specified in the C<\N{...}> escape. Perhaps you forgot to load the
4270L<charnames/CUSTOM TRANSLATORS>) returned an undefined value.
2575corresponding C<overload> or C<charnames> pragma? See L<charnames> and
2576L<overload>.
25774271
25784272=end original
25794273
2580(F) パーサは、オーバーロードされた定数定義しよとしときか、
4274(F) 定数オーバーロード (L<overload> 参照) うために登録された
2581C<\N{...}> エスケプで指定された文字名を探そうとしたときに
4275サブルチンや、カスタム文字名ハンドラ
2582非一貫性発見しました。
4276(L<charnames/CUSTOM TRANSLATORS> 参照) が未定義値しました。
2583おそらく対応する C<overload> か C<charnames> のプラグマの読み込みを
2584忘れたのでは?
2585L<charnames> と L<overload> を参照してください。
25864277
4278=item Constant(%s): $^H{%s} is not defined
4279
4280=begin original
4281
4282(F) The parser found inconsistencies while attempting to define an
4283overloaded constant. Perhaps you forgot to load the corresponding
4284L<overload> pragma?
4285
4286=end original
4287
4288(F) パーサは、オーバーロード定数を定義しようとしたときに矛盾を発見しました。
4289おそらく対応する L<overload> プラグマを読み込むのを忘れたのでは?
4290
25874291=item Constant is not %s reference
25884292
25894293=begin original
25904294
25914295(F) A constant value (perhaps declared using the C<use constant> pragma)
25924296is being dereferenced, but it amounts to the wrong type of reference.
2593The message indicates the type of reference that was expected. This
4297The message indicates the type of reference that was expected. This
25944298usually indicates a syntax error in dereferencing the constant value.
25954299See L<perlsub/"Constant Functions"> and L<constant>.
25964300
25974301=end original
25984302
25994303(F) (おそらく C<use constant> プラグマを使って宣言した) 定数値が
26004304デリファレンスされましたが、間違った型のリファレンスになりました。
26014305このメッセージは想定されたリファレンスの型を示しています。
26024306これは普通定数値をデリファレンスするときの文法エラーを示しています。
26034307L<perlsub/"Constant Functions"> と L<constant> を参照してください。
26044308
4309=item Constants from lexical variables potentially modified elsewhere are
4310deprecated. This will not be allowed in Perl 5.32
4311
4312=begin original
4313
4314(D deprecated) You wrote something like
4315
4316=end original
4317
4318(D deprecated) 次のようなものを書きましたが
4319
4320 my $var;
4321 $sub = sub () { $var };
4322
4323=begin original
4324
4325but $var is referenced elsewhere and could be modified after the C<sub>
4326expression is evaluated. Either it is explicitly modified elsewhere
4327(C<$var = 3>) or it is passed to a subroutine or to an operator like
4328C<printf> or C<map>, which may or may not modify the variable.
4329
4330=end original
4331
4332$var はどこか別の場所へのリファレンスで、
4333C<sub> 式が評価された後に変更されるかもしれません。
4334どこかで明示的に変更されたり、(C<$var = 3>) 、
4335変数を変更するかどうかわからない、
4336C<printf> や C<map> のようなサブルーチンや演算子に渡されたりします。
4337
4338=begin original
4339
4340Traditionally, Perl has captured the value of the variable at that
4341point and turned the subroutine into a constant eligible for inlining.
4342In those cases where the variable can be modified elsewhere, this
4343breaks the behavior of closures, in which the subroutine captures
4344the variable itself, rather than its value, so future changes to the
4345variable are reflected in the subroutine's return value.
4346
4347=end original
4348
4349伝統的に、Perl はこの時点で変数の値を捕捉して、
4350サブルーチンをインライン化可能な定数に変換します。
4351変数が別の場所で変更可能な場合、
4352これは、サブルーチンが変数の値ではなく変数自体を捕捉しているので
4353クロージャの振る舞いを壊します。
4354従って、将来この変数を変更すると、サブルーチンの返り値に反映されます。
4355
4356=begin original
4357
4358This usage is deprecated, and will no longer be allowed in Perl 5.32,
4359making it possible to change the behavior in the future.
4360
4361=end original
4362
4363この使用法は廃止予定ですで、Perl 5.32 でもはや許されなくなります;
4364これにより将来振る舞いを換えることが可能になります。
4365
4366=begin original
4367
4368If you intended for the subroutine to be eligible for inlining, then
4369make sure the variable is not referenced elsewhere, possibly by
4370copying it:
4371
4372=end original
4373
4374サブルーチンをインライン化可能にするのが目的なら、この変数を、
4375おそらくコピーすることで、他のどこからも参照されないようにしてください:
4376
4377 my $var2 = $var;
4378 $sub = sub () { $var2 };
4379
4380=begin original
4381
4382If you do want this subroutine to be a closure that reflects future
4383changes to the variable that it closes over, add an explicit C<return>:
4384
4385=end original
4386
4387このサブルーチンを、これを閉じた後の将来の変数の変更を反映させる
4388クロージャにしたいなら、明示的な C<return> を追加してください:
4389
4390 my $var;
4391 $sub = sub () { return $var };
4392
26054393=item Constant subroutine %s redefined
26064394
26074395=begin original
26084396
2609(S|W redefine) You redefined a subroutine which had previously been
4397(W redefine)(S) You redefined a subroutine which had previously
2610eligible for inlining. See L<perlsub/"Constant Functions"> for
4398been eligible for inlining. See L<perlsub/"Constant Functions">
2611commentary and workarounds.
4399for commentary and workarounds.
26124400
26134401=end original
26144402
2615(S|W redefine) 以前にインライン化できる形であったサブルーチンを
4403(W redefine)(S) 以前にインライン化できる形であったサブルーチンを
26164404再定義しました。
26174405コメントと回避策については L<perlsub/"Constant Functions"> を
26184406参照してください。
26194407
26204408=item Constant subroutine %s undefined
26214409
26224410=begin original
26234411
26244412(W misc) You undefined a subroutine which had previously been eligible
26254413for inlining. See L<perlsub/"Constant Functions"> for commentary and
26264414workarounds.
26274415
26284416=end original
26294417
26304418(W misc)以前にインライン化できる形であったサブルーチンを
26314419未定義化しました。
26324420コメントと回避策については L<perlsub/"Constant Functions"> を
26334421参照してください。
26344422
4423=item Constant(%s) unknown
4424
4425=begin original
4426
4427(F) The parser found inconsistencies either while attempting
4428to define an overloaded constant, or when trying to find the
4429character name specified in the C<\N{...}> escape. Perhaps you
4430forgot to load the corresponding L<overload> pragma?
4431
4432=end original
4433
4434(F) パーサは、オーバーロードされた定数を定義しようとしたときか、
4435C<\N{...}> エスケープで指定された文字名の検索中に矛盾を
4436発見しました。
4437おそらく対応する L<overload> プラグマを読み込むのを忘れたのでは?
4438
4439=item :const is experimental
4440
4441=begin original
4442
4443(S experimental::const_attr) The "const" attribute is experimental.
4444If you want to use the feature, disable the warning with C<no warnings
4445'experimental::const_attr'>, but know that in doing so you are taking
4446the risk that your code may break in a future Perl version.
4447
4448=end original
4449
4450(S experimental::const_attr) "const" 属性は実験的です。
4451この機能を使いたい場合、
4452C<no warnings 'experimental::const_attr'> で警告を無効にしてください;
4453しかし、そうすることであなたのコードが将来の Perl のバージョンで
4454壊れるリスクを取ることになります。
4455
4456=item :const is not permitted on named subroutines
4457
4458=begin original
4459
4460(F) The "const" attribute causes an anonymous subroutine to be run and
4461its value captured at the time that it is cloned. Named subroutines are
4462not cloned like this, so the attribute does not make sense on them.
4463
4464=end original
4465
4466(F) The "const" 属性は、クローンされたときに値を捕捉された
4467無名サブルーチンになります。
4468名前付きサブルーチンはこのようにクローンされないので、
4469属性はこれらに関して意味を持ちません。
4470
26354471=item Copy method did not return a reference
26364472
26374473=begin original
26384474
2639(F) The method which overloads "=" is buggy. See
4475(F) The method which overloads "=" is buggy. See
26404476L<overload/Copy Constructor>.
26414477
26424478=end original
26434479
26444480(F) "=" をオーバーロードしたメソッドはバグっています。
26454481L<overload/Copy Constructor> を参照してください。
26464482
4483=item &CORE::%s cannot be called directly
4484
4485=begin original
4486
4487(F) You tried to call a subroutine in the C<CORE::> namespace
4488with C<&foo> syntax or through a reference. Some subroutines
4489in this package cannot yet be called that way, but must be
4490called as barewords. Something like this will work:
4491
4492=end original
4493
4494(F) C<CORE::> 名前空間のサブルーチンを C<&foo> 文法またはリファレンス経由で
4495呼び出そうとしました。
4496このパッケージの一部のサブルーチンはまだこの方法では呼び出せず、裸の単語で
4497呼び出さなければなりません。
4498以下のようなものは動作します:
4499
4500 BEGIN { *shove = \&CORE::push; }
4501 shove @array, 1,2,3; # pushes on to @array
4502
26474503=item CORE::%s is not a keyword
26484504
26494505=begin original
26504506
26514507(F) The CORE:: namespace is reserved for Perl keywords.
26524508
26534509=end original
26544510
26554511(F) CORE:: 名前空間は Perl キーワードとして予約されています。
26564512
4513=item Corrupted regexp opcode %d > %d
4514
4515=begin original
4516
4517(P) This is either an error in Perl, or, if you're using
4518one, your L<custom regular expression engine|perlreapi>. If not the
4519latter, report the problem through the L<perlbug> utility.
4520
4521=end original
4522
4523(P) これは Perl か、あるいは、使っているなら
4524L<カスタム正規表現エンジン|perlreapi> のエラーです。
4525後者でなければ、L<perlbug> ユーティリティを使って問題を報告してください。
4526
26574527=item corrupted regexp pointers
26584528
26594529=begin original
26604530
26614531(P) The regular expression engine got confused by what the regular
26624532expression compiler gave it.
26634533
26644534=end original
26654535
26664536(P) 正規表現コンパイラが渡したもので、正規表現エンジンが
26674537処理できなくなりました。
26684538
26694539=item corrupted regexp program
26704540
26714541=begin original
26724542
26734543(P) The regular expression engine got passed a regexp program without a
26744544valid magic number.
26754545
26764546=end original
26774547
26784548(P) 正規表現エンジンが、有効なマジックナンバーを持たない
26794549regexp プログラムを渡しました。
26804550
2681=item Corrupt malloc ptr 0x%lx at 0x%lx
4551=item Corrupt malloc ptr 0x%x at 0x%x
26824552
26834553=begin original
26844554
26854555(P) The malloc package that comes with Perl had an internal failure.
26864556
26874557=end original
26884558
26894559(P) Perl に付属の malloc ルーティンが内部エラーを起こしました。
26904560
2691=item C<-p> destination: %s
4561=item Count after length/code in unpack
26924562
26934563=begin original
26944564
2695(F) An error occurred during the implicit output invoked by the C<-p>
4565(F) You had an unpack template indicating a counted-length string, but
2696command-line switch. (This output goes to STDOUT unless you've
4566you have also specified an explicit size for the string. See
2697redirected it with select().)
4567L<perlfunc/pack>.
26984568
26994569=end original
27004570
2701(F) C<-p> コマドラインオショで起動された
4571(F) unpack のテンプレートとしてカウト長文字列を示していますが、
2702暗黙出力中エラーが発生しました
4572文字列長さも明示的指定てい
2703(この出力は select() でリダイレクトしていない限り STDOUT に出力れます)
4573L<perlfunc/pack> を参照してくだ
27044574
2705=item C<-T> and C<-B> not implemented on filehandles
4575=item Declaring references is experimental
27064576
27074577=begin original
27084578
2709(F) Perl can't peek at the stdio buffer of filehandles when it doesn't
4579(S experimental::declared_refs) This warning is emitted if you use
2710know about your kind of stdio. You'll have to use a filename instead.
4580a reference constructor on the right-hand side of C<my>, C<state>, C<our>, or
4581C<local>. Simply suppress the warning if you want to use the feature, but
4582know that in doing so you are taking the risk of using an experimental
4583feature which may change or be removed in a future Perl version:
27114584
27124585=end original
27134586
2714(F) Perl が、お使いの stdio のことをよく知らないとき、
4587(S experimental::declared_refs) C<my>, C<state>, C<our>, C<local> 右側で
2715ファイルハドルの stdio バッファ覗くこはできせん
4588ファスコンストラクタ使うこの警告が出力され
2716代わりにファイル名を使わなければなりません。
4589この機能を使いたい場合は単にこの警告を抑制してください; ただし
4590そうすることによってあなたは将来のバージョンの Perl で変更したり
4591削除されたりするかもしれない実験的な機能を使うというリスクを
4592取っていると言うことを知っておいてください:
27174593
4594 no warnings "experimental::declared_refs";
4595 use feature "declared_refs";
4596 $fooref = my \$foo;
4597
4598=for comment
4599The following are used in lib/diagnostics.t for testing two =items that
4600share the same description. Changes here need to be propagated to there
4601
4602=item Deep recursion on anonymous subroutine
4603
27184604=item Deep recursion on subroutine "%s"
27194605
27204606=begin original
27214607
27224608(W recursion) This subroutine has called itself (directly or indirectly)
27234609100 times more than it has returned. This probably indicates an
27244610infinite recursion, unless you're writing strange benchmark programs, in
27254611which case it indicates something else.
27264612
27274613=end original
27284614
2729(W recursion) このサブルーティンは、(直接、間接に) 自分自身の呼び出しを、
4615(W recursion) このサブルーンは、(直接、間接に) 自分自身の呼び出しを、
27304616return より 100 回多く行ないました。
27314617変わったベンチマークプログラムを書いているのでなければ、無限再帰の
2732可能性があります。
4618可能性があります; ベンチマークを書いている場合には、別のことを示しています
2733ベンチマークを書いている場合には、別のことを示しています。
27344619
2735=item defined(@array) is deprecated
4620=begin original
27364621
4622This threshold can be changed from 100, by recompiling the F<perl> binary,
4623setting the C pre-processor macro C<PERL_SUB_DEPTH_WARN> to the desired value.
4624
4625=end original
4626
4627この閾値は、C プリプロセッサマクロ C<PERL_SUB_DEPTH_WARN> を希望の値に
4628設定して F<perl> バイナリを再コンパイルすることで、100 から変更できます。
4629
4630=item (?(DEFINE)....) does not allow branches in regex; marked by
4631S<<-- HERE> in m/%s/
4632
27374633=begin original
27384634
2739(D deprecated) defined() is not usually useful on arrays because it
4635(F) You used something like C<(?(DEFINE)...|..)> which is illegal. The
2740checks for an undefined I<scalar> value. If you want to see if the
4636most likely cause of this error is that you left out a parenthesis inside
2741array is empty, just use C<if (@array) { # not empty }> for example.
4637of the C<....> part.
27424638
27434639=end original
27444640
2745(D deprecated) defined() は未定義I<スカラ> 値を調べるで、配列に
4641(F) 不正な形C<(?(DEFINE)...|..)> のようなものを使いました。
2746使普通無意味です。
4642このエラーの、もありそうな理由、C<....> パートの中のかっこを
2747配列が空かどうかを調べたい場合は、例えば単
4643そのまましたことです。
2748C<if (@array) { # not empty }> としてください。
27494644
2750=item defined(%hash) is deprecated
4645=begin original
27514646
4647The S<<-- HERE> shows whereabouts in the regular expression the problem was
4648discovered.
4649
4650=end original
4651
4652S<<-- HERE> で正規表現のどこに問題が発見されたかを示しています。
4653
4654=item %s defines neither package nor VERSION--version check failed
4655
27524656=begin original
27534657
2754(D deprecated) defined() is not usually useful on hashes because it
4658(F) You said something like "use Module 42" but in the Module file
2755checks for an undefined I<scalar> value. If you want to see if the hash
4659there are neither package declarations nor a C<$VERSION>.
2756is empty, just use C<if (%hash) { # not empty }> for example.
27574660
27584661=end original
27594662
2760(D deprecated) defined() は未定義の I<スカラ> 値を調べるハッシュ
4663(F) "use Module 42"ようなことをしましたがModule ファイル
2761使っても普通は無意味
4664パッケージ定義がないか、C<$VERSION> がありませんした
2762ハッシュが空かどうかを調べたい場合は、例えば単に
2763C<if (%hash) { # not empty }> としてください。
27644665
4666=item delete argument is not a HASH or ARRAY element or slice
4667
4668=begin original
4669
4670(F) The argument to C<delete> must be either a hash or array element,
4671such as:
4672
4673=end original
4674
4675(F) C<delete> の引数は以下のようにハッシュか配列の要素であるか:
4676
4677 $foo{$bar}
4678 $ref->{"susie"}[12]
4679
4680=begin original
4681
4682or a hash or array slice, such as:
4683
4684=end original
4685
4686あるいは以下のようにハッシュか配列のスライスか:
4687
4688 @foo[$bar, $baz, $xyzzy]
4689 @{$ref->[12]}{"susie", "queue"}
4690
4691=begin original
4692
4693or a hash key/value or array index/value slice, such as:
4694
4695=end original
4696
4697あるいは以下のようにハッシュのキー/値や配列のインデックス/値で
4698なければなりません:
4699
4700 %foo[$bar, $baz, $xyzzy]
4701 %{$ref->[12]}{"susie", "queue"}
4702
27654703=item Delimiter for here document is too long
27664704
27674705=begin original
27684706
27694707(F) In a here document construct like C<<<FOO>, the label C<FOO> is too
27704708long for Perl to handle. You have to be seriously twisted to write code
27714709that triggers this error.
27724710
27734711=end original
27744712
27754713(F) C<<<FOO> のようなヒアドキュメント構造で、ラベル C<FOO> が
27764714Perl が扱うには長すぎました。
27774715このエラーを起こすようなコードを書くには相当ひねくれている必要があります。
27784716
4717=item Deprecated use of my() in false conditional. This will be a fatal error in Perl 5.30
4718
4719=begin original
4720
4721(D deprecated) You used a declaration similar to C<my $x if 0>. There
4722has been a long-standing bug in Perl that causes a lexical variable
4723not to be cleared at scope exit when its declaration includes a false
4724conditional. Some people have exploited this bug to achieve a kind of
4725static variable. Since we intend to fix this bug, we don't want people
4726relying on this behavior. You can achieve a similar static effect by
4727declaring the variable in a separate block outside the function, eg
4728
4729=end original
4730
4731(D deprecated) C<my $x if 0> のような定義を行いました。
4732これは、宣言に偽の条件を含んでいるとスコープから外れた際にレキシカル変数が
4733クリアされないという、Perl に長い間存在したバグです。
4734ある種の静的変数を実現するためにこのバグを悪用する人々もいます。
4735私たちはこのバグを修正するつもりなので、人々がこの振る舞いに依存して
4736ほしくありません。
4737関数外の別のブロックで変数を宣言することで似たような静的な効果を
4738達成できます; 例えば:
4739
4740 sub f { my $x if 0; return $x++ }
4741
4742=begin original
4743
4744becomes
4745
4746=end original
4747
4748これは以下のようにします:
4749
4750 { my $x; sub f { return $x++ } }
4751
4752=begin original
4753
4754Beginning with perl 5.10.0, you can also use C<state> variables to have
4755lexicals that are initialized only once (see L<feature>):
4756
4757=end original
4758
4759perl 5.10.0 から、一度だけ初期化されるレキシカルとして C<state> 変数も
4760使えます (L<feature> を参照してください):
4761
4762 sub f { state $x; return $x++ }
4763
4764=begin original
4765
4766This use of C<my()> in a false conditional has been deprecated since
4767Perl 5.10, and it will become a fatal error in Perl 5.30.
4768
4769=end original
4770
4771偽の条件での C<my()> のこの使用法は Perl 5.10 から廃止予定で、
4772Perl 5.30 で致命的エラーになる予定です。
4773
4774=item DESTROY created new reference to dead object '%s'
4775
4776=begin original
4777
4778(F) A DESTROY() method created a new reference to the object which is
4779just being DESTROYed. Perl is confused, and prefers to abort rather
4780than to create a dangling reference.
4781
4782=end original
4783
4784(F) DESTROY() メソッドが、DESTROY したばかりのオブジェクトへの
4785新しいリファレンスを作りました。
4786Perl は混乱して、不明瞭なリファレンスを作るよりは中断することを選びました。
4787
27794788=item Did not produce a valid header
27804789
27814790=begin original
27824791
2783See Server error.
4792See L</500 Server error>.
27844793
27854794=end original
27864795
2787"Server error" を参照してください。
4796L</500 Server error> を参照してください。
27884797
27894798=item %s did not return a true value
27904799
27914800=begin original
27924801
27934802(F) A required (or used) file must return a true value to indicate that
27944803it compiled correctly and ran its initialization code correctly. It's
27954804traditional to end such a file with a "1;", though any true value would
27964805do. See L<perlfunc/require>.
27974806
27984807=end original
27994808
28004809(F) require (や use) されたファイルは、正常にコンパイルされ、
28014810初期化コードを正しく実行したことを示すために、真を返さなければなりません。
28024811こういったファイルは、"1;" で終わるようにするのが習慣ですが、
28034812真となる値であれば、何でもかまいません。
28044813L<perlfunc/require> を参照してください。
28054814
28064815=item (Did you mean &%s instead?)
28074816
28084817=begin original
28094818
2810(W) You probably referred to an imported subroutine &FOO as $FOO or some
4819(W misc) You probably referred to an imported subroutine &FOO as $FOO or
2811such.
4820some such.
28124821
28134822=end original
28144823
2815おそらく import したサブルーチン &FOO を $FOO として
4824(W misc) おそらく import したサブルーチン &FOO を $FOO として
28164825参照したようなことでしょう。
28174826
28184827=item (Did you mean "local" instead of "our"?)
28194828
28204829=begin original
28214830
2822(W misc) Remember that "our" does not localize the declared global
4831(W shadow) Remember that "our" does not localize the declared global
28234832variable. You have declared it again in the same lexical scope, which
28244833seems superfluous.
28254834
28264835=end original
28274836
2828(W misc) "our" 宣言されたグローバル変数を local 化しないことを
4837(W shadow) "our" 宣言されたグローバル変数を local 化しないことを
28294838忘れないで下さい。
28304839これをもう一度同じレキシカルスコープで宣言していますが、
28314840不必要でしょう。
28324841
28334842=item (Did you mean $ or @ instead of %?)
28344843
28354844=begin original
28364845
28374846(W) You probably said %hash{$key} when you meant $hash{$key} or
28384847@hash{@keys}. On the other hand, maybe you just meant %hash and got
28394848carried away.
28404849
28414850=end original
28424851
28434852(W) おそらく $hash{$key} か @hash{@keys} としたいときに %hash{$key} と
28444853したのでしょう。
28454854あるいは、単に %hash としたくてやりすぎたのでしょう。
28464855
28474856=item Died
28484857
28494858=begin original
28504859
28514860(F) You passed die() an empty string (the equivalent of C<die "">) or
2852you called it with no args and both C<$@> and C<$_> were empty.
4861you called it with no args and C<$@> was empty.
28534862
28544863=end original
28554864
28564865(F) die() に空文字列を渡した(C<die ""> と等価です)か、引数なしで
2857呼び出して、C<$@> と C<$_> が空でした。
4866呼び出して、C<$@> が空でした。
28584867
28594868=item Document contains no data
28604869
28614870=begin original
28624871
2863See Server error.
4872See L</500 Server error>.
28644873
28654874=end original
28664875
2867"Server error" を参照してください。
4876L</500 Server error> を参照してください。
28684877
2869=item Don't know how to handle magic of type '%s'
4878=item %s does not define %s::VERSION--version check failed
28704879
28714880=begin original
28724881
4882(F) You said something like "use Module 42" but the Module did not
4883define a C<$VERSION>.
4884
4885=end original
4886
4887(F) "use Module 42" のようなことをしましたが、Module は C<$VERSION> を
4888定義していません。
4889
4890=item '/' does not take a repeat count
4891
4892=begin original
4893
4894(F) You cannot put a repeat count of any kind right after the '/' code.
4895See L<perlfunc/pack>.
4896
4897=end original
4898
4899(F) '/' の直後には繰り返し数を指定できません。
4900L<perlfunc/pack> を参照してください。
4901
4902=item do "%s" failed, '.' is no longer in @INC; did you mean do "./%s"?
4903
4904=begin original
4905
4906(D deprecated) Previously C< do "somefile"; > would search the current
4907directory for the specified file. Since perl v5.26.0, F<.> has been
4908removed from C<@INC> by default, so this is no longer true. To search the
4909current directory (and only the current directory) you can write
4910C< do "./somefile"; >.
4911
4912=end original
4913
4914(D deprecated) 以前は、C< do "somefile"; > は指定されたファイルを
4915カレントディレクトリから探していました。
4916perl v5.26.0 から、デフォルトで C<@INC> から F<.> 削除されたので、
4917これはもはや真ではありません。
4918カレントディレクトリを(カレントディレクトリだけを)探すためには、
4919C< do "./somefile"; > と書けます。
4920
4921=item Don't know how to get file name
4922
4923=begin original
4924
4925(P) C<PerlIO_getname>, a perl internal I/O function specific to VMS, was
4926somehow called on another platform. This should not happen.
4927
4928=end original
4929
4930(P) VMS 固有の perl 内部 I/O 関数である C<PerlIO_getname> がなぜか
4931他のプラットフォームで呼び出されました。
4932これは起きないはずです。
4933
4934=item Don't know how to handle magic of type \%o
4935
4936=begin original
4937
28734938(P) The internal handling of magical variables has been cursed.
28744939
28754940=end original
28764941
2877(P) マジック変数の内部処理がおかしくなっています。
4942(P) マジカル変数の内部処理がおかしくなっています。
28784943
28794944=item do_study: out of memory
28804945
28814946=begin original
28824947
28834948(P) This should have been caught by safemalloc() instead.
28844949
28854950=end original
28864951
28874952(P) これは、本来 safemalloc() で引っ掛かるはずのものです。
28884953
28894954=item (Do you need to predeclare %s?)
28904955
28914956=begin original
28924957
2893(S) This is an educated guess made in conjunction with the message "%s
4958(S syntax) This is an educated guess made in conjunction with the message
2894found where operator expected". It often means a subroutine or module
4959"%s found where operator expected". It often means a subroutine or module
28954960name is being referenced that hasn't been declared yet. This may be
28964961because of ordering problems in your file, or because of a missing
28974962"sub", "package", "require", or "use" statement. If you're referencing
28984963something that isn't defined yet, you don't actually have to define the
28994964subroutine or package before the current location. You can use an empty
29004965"sub foo;" or "package FOO;" to enter a "forward" declaration.
29014966
29024967=end original
29034968
2904(S) これは "%s found where operator expected" メッセージと共に
4969(S syntax) これは "%s found where operator expected" メッセージと共に
29054970表示される教育的な推測です。
29064971これはしばしばサブルーチンやモジュール名がまだ宣言される前に参照されている
29074972ことを意味します。
29084973これはファイル内部での順番のためであったり、"sub", "package", "require",
29094974"use" 文がないためであったりします。
29104975もしまだ定義されていないものを参照したい場合、現在位置より前に実際に
29114976サブルーチンやパッケージを定義する必要はありません。
29124977空の "sub foo;" や "package FOO;" を「前方」宣言として使えます。
29134978
4979=item dump() better written as CORE::dump(). dump() will no longer be available in Perl 5.30
4980
4981=begin original
4982
4983(D deprecated, misc) You used the obsolescent C<dump()> built-in function,
4984without fully qualifying it as C<CORE::dump()>. Maybe it's a typo.
4985
4986=end original
4987
4988(D deprecated, misc) 古いものである C<dump()> 組み込み関数を、
4989C<CORE::dump()> というように完全修飾せずに使いました。
4990おそらくこれはタイプミスです。
4991
4992=begin original
4993
4994Use of a unqualified C<dump()> was deprecated in Perl 5.8.0, and this
4995will not be available in Perl 5.30.
4996
4997=end original
4998
4999修飾されない C<dump()> の使用は Perl 5.8.0 から廃止予定で、
5000Perl 5.30 から利用できなくなる予定です。
5001
5002=begin original
5003
5004See L<perlfunc/dump>.
5005
5006=end original
5007
5008L<perlfunc/dump> を参照してください。
5009
5010=item dump is not supported
5011
5012=begin original
5013
5014(F) Your machine doesn't support dump/undump.
5015
5016=end original
5017
5018(F) このマシンは dump/undump に対応していません。
5019
29145020=item Duplicate free() ignored
29155021
29165022=begin original
29175023
29185024(S malloc) An internal routine called free() on something that had
29195025already been freed.
29205026
29215027=end original
29225028
29235029(S malloc) 既に解放されているものに対して、内部ルーティンが free() を
29245030行なおうとしました。
29255031
5032=item Duplicate modifier '%c' after '%c' in %s
5033
5034=begin original
5035
5036(W unpack) You have applied the same modifier more than once after a
5037type in a pack template. See L<perlfunc/pack>.
5038
5039=end original
5040
5041(W unpack) pack テンプレートで、一つの型の後に同じ修飾子を複数指定しました。
5042L<perlfunc/pack> を参照してください。
5043
29265044=item elseif should be elsif
29275045
29285046=begin original
29295047
2930(S) There is no keyword "elseif" in Perl because Larry thinks it's ugly.
5048(S syntax) There is no keyword "elseif" in Perl because Larry thinks
2931Your code will be interpreted as an attempt to call a method named
5049it's ugly. Your code will be interpreted as an attempt to call a method
2932"elseif" for the class returned by the following block. This is
5050named "elseif" for the class returned by the following block. This is
29335051unlikely to be what you want.
29345052
29355053=end original
29365054
29375055(S) Larry は "elseif" というのは醜いと考えたので、Perl にはこのキーワードは
29385056ありません。
29395057このコードは引き続くブロックによって返されたクラスの "elseif" メソッドを
29405058呼び出そうとしていると解釈されます。
29415059これは望んでいることではないはずです。
29425060
5061=item Empty \%c in regex; marked by S<<-- HERE> in m/%s/
5062
5063=item Empty \%c{} in regex; marked by S<<-- HERE> in m/%s/
5064
5065=begin original
5066
5067(F) C<\p> and C<\P> are used to introduce a named Unicode property, as
5068described in L<perlunicode> and L<perlre>. You used C<\p> or C<\P> in
5069a regular expression without specifying the property name.
5070
5071=end original
5072
5073(F) C<\p> と C<\P> は、L<perlunicode> と L<perlre> に記述されているように、
5074名前付き Unicode プロパティを導入するために使われます。
5075正規表現の中で、C<\p> や C<\P> をプロパティ名の指定なしに使いました。
5076
5077=item ${^ENCODING} is no longer supported
5078
5079=begin original
5080
5081(F) The special variable C<${^ENCODING}>, formerly used to implement
5082the C<encoding> pragma, is no longer supported as of Perl 5.26.0.
5083
5084=end original
5085
5086(F) 以前は C<encoding> プラグマの実装に使われていた
5087特殊変数 C<${^ENCODING}> は、Perl 5.26.0 からもはや対応されません。
5088
5089=begin original
5090
5091Setting it to anything other than C<undef> is a fatal error as of Perl
50925.28.
5093
5094=end original
5095
5096これに C<undef> 以外のものを設定すると Perl 5.28 から致命的エラーが出ます。
5097
29435098=item entering effective %s failed
29445099
29455100=begin original
29465101
29475102(F) While under the C<use filetest> pragma, switching the real and
29485103effective uids or gids failed.
29495104
29505105=end original
29515106
29525107(F) C<use filetest> プラグマを使っている間に、
29535108実と実効の UID や GID の切り替えに失敗しました。
29545109
5110=item %ENV is aliased to %s
5111
5112=begin original
5113
5114(F) You're running under taint mode, and the C<%ENV> variable has been
5115aliased to another hash, so it doesn't reflect anymore the state of the
5116program's environment. This is potentially insecure.
5117
5118=end original
5119
5120(F) 汚染モードで動作していて、C<%ENV> 変数が他のハッシュへのエイリアスに
5121なっているので、これ以上プログラムの環境の状態を反映しません。
5122これは潜在的にはセキュアではありません。
5123
29555124=item Error converting file specification %s
29565125
29575126=begin original
29585127
29595128(F) An error peculiar to VMS. Because Perl may have to deal with file
29605129specifications in either VMS or Unix syntax, it converts them to a
29615130single form when it must operate on them directly. Either you've passed
29625131an invalid file specification to Perl, or you've found a case the
29635132conversion routines don't handle. Drat.
29645133
29655134=end original
29665135
29675136(F) VMS に固有のエラーです。
29685137Perl はファイル仕様を VMS 式か Unix 式かどちらかで扱わなければならないので、
29695138直接操作しなければならない場合は変換します。
29705139不正なファイル仕様を Perl に渡したか、変換ルーチンが扱えないパターンを
29715140発見したかです。
29725141ちぇっ。
29735142
2974=item %s: Eval-group in insecure regular expression
5143=item Eval-group in insecure regular expression
29755144
29765145=begin original
29775146
29785147(F) Perl detected tainted data when trying to compile a regular
29795148expression that contains the C<(?{ ... })> zero-width assertion, which
29805149is unsafe. See L<perlre/(?{ code })>, and L<perlsec>.
29815150
29825151=end original
29835152
29845153C<(?{ ... })> ゼロ幅アサーションを含む正規表現をコンパイルしようと
29855154したときに、Perl は汚染されたデータを検出しました;
29865155これは安全ではありません。
29875156L<perlre/(?{ code })> と L<perlsec> を参照してください。
29885157
2989=item %s: Eval-group not allowed at run time
5158=item Eval-group not allowed at runtime, use re 'eval' in regex m/%s/
29905159
29915160=begin original
29925161
29935162(F) Perl tried to compile a regular expression containing the
29945163C<(?{ ... })> zero-width assertion at run time, as it would when the
2995pattern contains interpolated values. Since that is a security risk, it
5164pattern contains interpolated values. Since that is a security risk,
2996is not allowed. If you insist, you may still do this by explicitly
5165it is not allowed. If you insist, you may still do this by using the
2997building the pattern from an interpolated string at run time and using
5166C<re 'eval'> pragma or by explicitly building the pattern from an
2998that in an eval(). See L<perlre/(?{ code })>.
5167interpolated string at run time and using that in an eval(). See
5168L<perlre/(?{ code })>.
29995169
30005170=end original
30015171
30025172(F) Perl が実行時に、変数展開された値を含んでいて、
30035173C<(?{ ... })> ゼロ幅アサーションを含む正規表現をコンパイルしようとしました。
30045174これはセキュリティ上の危険があるので、許可されていません。
3005どうしても実行したい場合は、実行時に変数展開された文字列から
5175どうしても実行したい場合は、C<re 'eval'> プラグマを使うか実行時に
3006パターンを作成して、それを eval() の中で使うことで実行できます。
5176変数展開された文字列からパターンを作成して、それを eval() の中で使うことで
5177実行できます。
30075178L<perlre/(?{ code })> を参照してください。
30085179
3009=item %s: Eval-group not allowed, use re 'eval'
5180=item Eval-group not allowed, use re 'eval' in regex m/%s/
30105181
30115182=begin original
30125183
30135184(F) A regular expression contained the C<(?{ ... })> zero-width
30145185assertion, but that construct is only allowed when the C<use re 'eval'>
30155186pragma is in effect. See L<perlre/(?{ code })>.
30165187
30175188=end original
30185189
30195190(F) 正規表現に C<(?{ ... })> ゼロ幅アサーションを含んでいますが、
30205191この構造は C<use re 'eval'> プラグマが有効の場合にのみ許可されます。
30215192L<perlre/(?{ code })> を参照してください。
30225193
5194=item EVAL without pos change exceeded limit in regex; marked by
5195S<<-- HERE> in m/%s/
5196
5197=begin original
5198
5199(F) You used a pattern that nested too many EVAL calls without consuming
5200any text. Restructure the pattern so that text is consumed.
5201
5202=end original
5203
5204(F) テキストを一切読み込むことなく、EVAL 呼び出しのネストが多すぎる
5205パターンを使いました。
5206テキストを読み込むようにパターンを再構築してください。
5207
5208=begin original
5209
5210The S<<-- HERE> shows whereabouts in the regular expression the problem was
5211discovered.
5212
5213=end original
5214
5215S<<-- HERE> で正規表現のどこに問題が発見されたかを示しています。
5216
30235217=item Excessively long <> operator
30245218
30255219=begin original
30265220
30275221(F) The contents of a <> operator may not exceed the maximum size of a
30285222Perl identifier. If you're just trying to glob a long list of
30295223filenames, try using the glob() operator, or put the filenames into a
30305224variable and glob that.
30315225
30325226=end original
30335227
30345228(F) <> 演算子の内容は Perl 識別子の最大サイズを越えることはできません。
30355229単にファイル名の長いリストをグロブしようとしただけなら、glob() 演算子を
30365230使うか、ファイル名を変数に入れて、それをグロブしてください。
30375231
3038=item Execution of %s aborted due to compilation errors
5232=item exec? I'm not *that* kind of operating system
30395233
30405234=begin original
30415235
5236(F) The C<exec> function is not implemented on some systems, e.g., Symbian
5237OS. See L<perlport>.
5238
5239=end original
5240
5241(F) C<exec> 関数は Symbian OS のような一部のシステムには実装されていません。
5242L<perlport> を参照してください。
5243
5244=item %sExecution of %s aborted due to compilation errors.
5245
5246=begin original
5247
30425248(F) The final summary message when a Perl compilation fails.
30435249
30445250=end original
30455251
30465252(F) Perl のコンパイルが失敗したときの、最後のまとめメッセージです。
30475253
5254=item exists argument is not a HASH or ARRAY element or a subroutine
5255
5256=begin original
5257
5258(F) The argument to C<exists> must be a hash or array element or a
5259subroutine with an ampersand, such as:
5260
5261=end original
5262
5263(F) C<exists> の引数は以下のように、ハッシュや配列の要素か、
5264アンパサンド付きのサブルーチンでなければなりません:
5265
5266 $foo{$bar}
5267 $ref->{"susie"}[12]
5268 &do_something
5269
5270=item exists argument is not a subroutine name
5271
5272=begin original
5273
5274(F) The argument to C<exists> for C<exists &sub> must be a subroutine name,
5275and not a subroutine call. C<exists &sub()> will generate this error.
5276
5277=end original
5278
5279(F) C<exists &sub> での C<exists> への引数はサブルーチン名でなければならず、
5280サブルーチン呼び出しではありません。
5281C<exists &sub()> はこのエラーを生成します。
5282
30485283=item Exiting eval via %s
30495284
30505285=begin original
30515286
30525287(W exiting) You are exiting an eval by unconventional means, such as a
30535288goto, or a loop control statement.
30545289
30555290=end original
30565291
30575292(W exiting) goto やループ制御文など、おかしな方法で eval を抜けました。
30585293
30595294=item Exiting format via %s
30605295
30615296=begin original
30625297
3063(W exiting) You are exiting an eval by unconventional means, such as a
5298(W exiting) You are exiting a format by unconventional means, such as a
30645299goto, or a loop control statement.
30655300
30665301=end original
30675302
3068(W exiting) goto やループ制御文といった、異例な形で eval 終了しました。
5303(W exiting) goto やループ制御文といった、異例な形でフォーマット
5304終了しました。
30695305
30705306=item Exiting pseudo-block via %s
30715307
30725308=begin original
30735309
30745310(W exiting) You are exiting a rather special block construct (like a
30755311sort block or subroutine) by unconventional means, such as a goto, or a
30765312loop control statement. See L<perlfunc/sort>.
30775313
30785314=end original
30795315
30805316(W exiting) (ソートブロックやサブルーチンのような) 特別なブロック構造を、
30815317goto やループ制御文といった異例な方法で終了しました。
30825318L<perlfunc/sort> を参照してください。
30835319
30845320=item Exiting subroutine via %s
30855321
30865322=begin original
30875323
30885324(W exiting) You are exiting a subroutine by unconventional means, such
30895325as a goto, or a loop control statement.
30905326
30915327=end original
30925328
3093(W exiting) goto やループ制御文など、おかしな方法でサブルーティンを
5329(W exiting) goto やループ制御文など、おかしな方法でサブルーンを
30945330抜けました。
30955331
30965332=item Exiting substitution via %s
30975333
30985334=begin original
30995335
31005336(W exiting) You are exiting a substitution by unconventional means, such
31015337as a return, a goto, or a loop control statement.
31025338
31035339=end original
31045340
31055341(W exit) return や goto やループ制御文など、おかしな方法で置換を
31065342抜けました。
31075343
5344=item Expecting close bracket in regex; marked by S<<-- HERE> in m/%s/
5345
5346=begin original
5347
5348(F) You wrote something like
5349
5350=end original
5351
5352(F) 以下のようなものを書きました
5353
5354 (?13
5355
5356=begin original
5357
5358to denote a capturing group of the form
5359L<C<(?I<PARNO>)>|perlre/(?PARNO) (?-PARNO) (?+PARNO) (?R) (?0)>,
5360but omitted the C<")">.
5361
5362=end original
5363
5364to denote a capturing group of the form
5365L<C<(?I<PARNO>)>|perlre/(?PARNO) (?-PARNO) (?+PARNO) (?R) (?0)> 形式の
5366捕捉グループを示していますが C<")"> が省略されています。
5367
5368=item Expecting close paren for nested extended charclass in regex; marked
5369by <-- HERE in m/%s/
5370
5371=begin original
5372
5373(F) While parsing a nested extended character class like:
5374
5375=end original
5376
5377(F) 次のようなネストした拡張文字クラスをパースするときに:
5378
5379 (?[ ... (?flags:(?[ ... ])) ... ])
5380 ^
5381
5382=begin original
5383
5384we expected to see a close paren ')' (marked by ^) but did not.
5385
5386=end original
5387
5388(^ でマークされている) 閉じかっこ ')' があることを想定しますが、
5389ありませんでした。
5390
5391=item Expecting close paren for wrapper for nested extended charclass in
5392regex; marked by <-- HERE in m/%s/
5393
5394=begin original
5395
5396(F) While parsing a nested extended character class like:
5397
5398=end original
5399
5400(F) 次のようなネストした拡張文字クラスをパースするときに:
5401
5402 (?[ ... (?flags:(?[ ... ])) ... ])
5403 ^
5404
5405=begin original
5406
5407we expected to see a close paren ')' (marked by ^) but did not.
5408
5409=end original
5410
5411(^ でマークされている) 閉じかっこ ')' があることを想定しますが、
5412ありませんでした。
5413
5414=item Expecting '(?flags:(?[...' in regex; marked by S<<-- HERE> in m/%s/
5415
5416=begin original
5417
5418(F) The C<(?[...])> extended character class regular expression construct
5419only allows character classes (including character class escapes like
5420C<\d>), operators, and parentheses. The one exception is C<(?flags:...)>
5421containing at least one flag and exactly one C<(?[...])> construct.
5422This allows a regular expression containing just C<(?[...])> to be
5423interpolated. If you see this error message, then you probably
5424have some other C<(?...)> construct inside your character class. See
5425L<perlrecharclass/Extended Bracketed Character Classes>.
5426
5427=end original
5428
5429(F) C<(?[...])> 拡張文字クラス正規表現構文には、(C<\d> のような
5430文字クラスエスケープを含む) 文字クラス、演算子、かっこのみが許されます。
5431一つの例外は正確に一つだけのフラグと一つだけの C<(?[...])> を含む
5432C<(?flags:...)> です。
5433これにより C<(?[...])> だけを含む正規表現を変数展開できるようになります。
5434このエラーメッセージが表示された時は、おそらく文字クラスの中に他の
5435C<(?...)> 構文が含まれています。
5436L<perlrecharclass/Extended Bracketed Character Classes> を参照してください。
5437
5438=item Experimental aliasing via reference not enabled
5439
5440=begin original
5441
5442(F) To do aliasing via references, you must first enable the feature:
5443
5444=end original
5445
5446(F) リファレンスによる別名をするためには、最初にこの機能を
5447有効にしなければなりません:
5448
5449 no warnings "experimental::refaliasing";
5450 use feature "refaliasing";
5451 \$x = \$y;
5452
5453=item Experimental %s on scalar is now forbidden
5454
5455=begin original
5456
5457(F) An experimental feature added in Perl 5.14 allowed C<each>, C<keys>,
5458C<push>, C<pop>, C<shift>, C<splice>, C<unshift>, and C<values> to be called with a
5459scalar argument. This experiment is considered unsuccessful, and
5460has been removed. The C<postderef> feature may meet your needs better.
5461
5462=end original
5463
5464(F) Perl 5.14 で追加された実験的機能は、C<each>, C<keys>,
5465C<push>, C<pop>, C<shift>, C<splice>, C<unshift>, C<values> を
5466スカラ引数で呼び出すことができました。
5467この実験は失敗と考えられ、削除されました。
5468C<postderef> 機能はあなたの要求により良く一致します。
5469
5470=item Experimental subroutine signatures not enabled
5471
5472=begin original
5473
5474(F) To use subroutine signatures, you must first enable them:
5475
5476=end original
5477
5478(F) サブルーチンシグネチャを使うためには、まずそれを有効にしなければなりません:
5479
5480 no warnings "experimental::signatures";
5481 use feature "signatures";
5482 sub foo ($left, $right) { ... }
5483
31085484=item Explicit blessing to '' (assuming package main)
31095485
31105486=begin original
31115487
31125488(W misc) You are blessing a reference to a zero length string. This has
31135489the effect of blessing the reference into the package main. This is
31145490usually not what you want. Consider providing a default target package,
31155491e.g. bless($ref, $p || 'MyPackage');
31165492
31175493=end original
31185494
31195495(W misc) リファレンスを長さゼロの文字列に bless しました。
31205496これはリファレンスをパッケージ main に bless する効果があります。
31215497これは普通あなたが望んでいることではありません。
31225498(bless($ref, $p || 'MyPackage'); のように) デフォルトターゲット
31235499パッケージを提供することを考慮してください;
31245500
31255501=item %s: Expression syntax
31265502
31275503=begin original
31285504
31295505(A) You've accidentally run your script through B<csh> instead of Perl.
31305506Check the #! line, or manually feed your script into Perl yourself.
31315507
31325508=end original
31335509
31345510(A) スクリプトを perl ではなく B<csh> で実行しようとしました。
31355511#! 行をチェックするか、スクリプトを直接 Perl で起動してください。
31365512
31375513=item %s failed--call queue aborted
31385514
31395515=begin original
31405516
3141(F) An untrapped exception was raised while executing a CHECK, INIT, or
5517(F) An untrapped exception was raised while executing a UNITCHECK,
3142END subroutine. Processing of the remainder of the queue of such
5518CHECK, INIT, or END subroutine. Processing of the remainder of the
3143routines has been prematurely ended.
5519queue of such routines has been prematurely ended.
31445520
31455521=end original
31465522
3147(F) CHECK, INIT, END サブルーチンを実行中にトラップされていない例外が
5523(F) UNITCHECK, CHECK, INIT, END サブルーチンを実行中にトラップされていない
3148発生しました。
5524例外が発生しました。
31495525このようなルーチンのキューの残りの処理は途中で終了しました。
31505526
3151=item false [] range "%s" in regexp
5527=item Failed to close in-place work file %s: %s
31525528
31535529=begin original
31545530
3155(W regexp) A character class range must start and end at a literal
5531(F) Closing an output file from in-place editing, as with the C<-i>
3156character, not another character class like C<\d> or C<[:alpha:]>. The
5532command-line switch, failed.
3157"-" in your false range is interpreted as a literal "-". Consider
3158quoting the "-", "\-". See L<perlre>.
31595533
31605534=end original
31615535
3162(W regexp) 文字クラス範囲の先頭とと末尾は、C<\d> や C<[:alpha:]> のうな
5536(F) C<-i> コマンドラインオプションにるその場修正で開いたファイルを
5537閉じるのに失敗しました。
5538
5539=item False [] range "%s" in regex; marked by S<<-- HERE> in m/%s/
5540
5541=begin original
5542
5543(W regexp)(F) A character class range must start and end at a literal
5544character, not another character class like C<\d> or C<[:alpha:]>. The "-"
5545in your false range is interpreted as a literal "-". In a C<(?[...])>
5546construct, this is an error, rather than a warning. Consider quoting
5547the "-", "\-". The S<<-- HERE> shows whereabouts in the regular expression
5548the problem was discovered. See L<perlre>.
5549
5550=end original
5551
5552(W regexp)(F) 文字クラス範囲の先頭とと末尾は、C<\d> や C<[:alpha:]> のような
31635553他の文字クラスではなく、リテラル文字でなければなりません。
31645554間違った範囲の "-" はリテラルの "-" と解釈されます。
5555C<(?[...])> 構文では、これは警告ではなくエラーです。
31655556"-" を "\-" とクォートすることを考慮してください。
5557S<<-- HERE> で正規表現のどこに問題が発見されたかを示しています。
31665558L<perlre> を参照してください。
31675559
3168=item Fatal VMS error at %s, line %d
5560=item Fatal VMS error (status=%d) at %s, line %d
31695561
31705562=begin original
31715563
31725564(P) An error peculiar to VMS. Something untoward happened in a VMS
31735565system service or RTL routine; Perl's exit status should provide more
31745566details. The filename in "at %s" and the line number in "line %d" tell
31755567you which section of the Perl source code is distressed.
31765568
31775569=end original
31785570
31795571(P) VMS に固有のエラーです。
31805572何か都合の悪いことが VMS システムサービスか RTL ルーチンで起こりました;
31815573Perl の終了コードに詳細が示されています。
31825574"at %s" のファイル名と "line %d" の行番号は、問題の起こった
31835575Perl ソースコードの位置を示しています。
31845576
31855577=item fcntl is not implemented
31865578
31875579=begin original
31885580
31895581(F) Your machine apparently doesn't implement fcntl(). What is this, a
31905582PDP-11 or something?
31915583
31925584=end original
31935585
31945586(F) このマシンでは、fcntl() が実装されていないように見えます。
31955587PDP-11 か何かでしょうか。
31965588
5589=item FETCHSIZE returned a negative value
5590
5591=begin original
5592
5593(F) A tied array claimed to have a negative number of elements, which
5594is not possible.
5595
5596=end original
5597
5598(F) tie された配列に対して負の番号の要素を要求されました; これは不可能です。
5599
5600=item Field too wide in 'u' format in pack
5601
5602=begin original
5603
5604(W pack) Each line in an uuencoded string starts with a length indicator
5605which can't encode values above 63. So there is no point in asking for
5606a line length bigger than that. Perl will behave as if you specified
5607C<u63> as the format.
5608
5609=end original
5610
5611(W pack) uuencode された文字列の各行が、63 以上にエンコードできない
5612長さ識別子から始まっています。
5613それで、これより長い行の長さを問い合わせるところがありません。
5614Perl はフォーマットとして C<u63> が指定されたかのように振る舞います。
5615
5616=item File::Glob::glob() will disappear in perl 5.30. Use File::Glob::bsd_glob() instead.
5617
5618=begin original
5619
5620(D deprecated) C<< File::Glob >> has a function called C<< glob >>, which
5621just calls C<< bsd_glob >>. However, its prototype is different from the
5622prototype of C<< CORE::glob >>, and hence, C<< File::Glob::glob >> should
5623not be used.
5624
5625=end original
5626
5627(D deprecated) C<< File::Glob >> は C<< glob >> と呼ばれる関数を持っています;
5628これは単に C<< bsd_glob >> を呼び出します。
5629しかし、そのプロトタイプは C<< CORE::glob >> のプロトタイプと異なるので、
5630C<< File::Glob::glob >> は使われるべきではありません。
5631
5632=begin original
5633
5634C<< File::Glob::glob() >> was deprecated in perl 5.8.0. A deprecation
5635message was issued from perl 5.26.0 onwards, and the function will
5636disappear in perl 5.30.0.
5637
5638=end original
5639
5640C<< File::Glob::glob() >> は perl 5.8.0 で廃止予定になりました。
5641廃止予定メッセージは perl 5.26.0 以降で出力され、
5642この関数は perl 5.30.0 で削除される予定です。
5643
5644=begin original
5645
5646Code using C<< File::Glob::glob() >> should call
5647C<< File::Glob::bsd_glob() >> instead.
5648
5649=end original
5650
5651C<< File::Glob::glob() >> を使っているコードは、代わりに
5652C<< File::Glob::bsd_glob() >> を使う必要があります。
5653
31975654=item Filehandle %s opened only for input
31985655
31995656=begin original
32005657
3201(W io) You tried to write on a read-only filehandle. If you intended it
5658(W io) You tried to write on a read-only filehandle. If you intended
3202to be a read-write filehandle, you needed to open it with "+<" or "+>"
5659it to be a read-write filehandle, you needed to open it with "+<" or
3203or "+>>" instead of with "<" or nothing. If you intended only to write
5660"+>" or "+>>" instead of with "<" or nothing. If you intended only to
3204the file, use ">" or ">>". See L<perlfunc/open>.
5661write the file, use ">" or ">>". See L<perlfunc/open>.
32055662
32065663=end original
32075664
32085665(W io) リードオンリーのファイルハンドルに対して、書込みを行なおうとしました。
32095666読み書き両用ファイルハンドルにしたいのであれば、"<" を付けたり、
32105667何も付けなかったりするのではなく、"+<" や "+>" や "+>>" を付けて
32115668open する必要があります。
32125669ライトオンリーであれば、">" や ">>" を使ってください。
3213L<perlfunc/open> の項を参照してください。
5670L<perlfunc/open> を参照してください。
32145671
32155672=item Filehandle %s opened only for output
32165673
32175674=begin original
32185675
3219(W io) You tried to read from a filehandle opened only for writing. If
5676(W io) You tried to read from a filehandle opened only for writing, If
32205677you intended it to be a read/write filehandle, you needed to open it
3221with "+<" or "+>" or "+>>" instead of with "<" or nothing. If you
5678with "+<" or "+>" or "+>>" instead of with ">". If you intended only to
3222intended only to read from the file, use "<". See L<perlfunc/open>.
5679read from the file, use "<". See L<perlfunc/open>. Another possibility
5680is that you attempted to open filedescriptor 0 (also known as STDIN) for
5681output (maybe you closed STDIN earlier?).
32235682
32245683=end original
32255684
3226(W io) 書き込み専用のファイルハンドルから読み込もうとしました
5685(W io) 書き込み専用のファイルハンドルから読み込もうとしました;
3227読み書きできるファイルハンドルにしたい場合は、
5686読み書きできるファイルハンドルにしたい場合は、ファイルのオープン時に
3228ファイルのオープン時に "<" や何もなしではなく、
5687">" ではなく、"+<" か "+>" か "+>>" をつける必要があります。
3229"+<" か "+>" か "+>>" をつける必要があります。
32305688読み込み専用にしたい場合は、"<" を使ってください。
32315689L<perlfunc/open> を参照してください。
5690他の可能性としては、ファイル記述子 0 (STDIN としても知られています) を
5691出力用に開こうとした場合(おそらくその前に STDIN を閉じたのでは?)です。
32325692
3233=item Final $ should be \$ or $name
5693=item Filehandle %s reopened as %s only for input
32345694
32355695=begin original
32365696
3237(F) You must now decide whether the final $ in a string was meant to be
5697(W io) You opened for reading a filehandle that got the same filehandle id
3238a literal dollar sign, or was meant to introduce a variable name that
5698as STDOUT or STDERR. This occurred because you closed STDOUT or STDERR
3239happens to be missing. So you have to put either the backslash or the
5699previously.
3240name.
32415700
32425701=end original
32435702
3244(F) 文字列の最後の $ が、リテラルのドル記号なか、変数名を入れようとして
5703(W io) STDOUT または STDERR として使われていたと同じファイルハンドル ID
3245忘れたのか、はっきりさせなければなりせん
5704ファイルハンドル読み込み用に開こうとしした
3246バックスラッシュを付けるか前を入れてください
5705これは STDOUT または STDERR 閉じたときに起きます
32475706
3248=item Final @ should be \@ or @name
5707=item Filehandle STDIN reopened as %s only for output
32495708
32505709=begin original
32515710
3252(F) You must now decide whether the final @ in a string was meant to be
5711(W io) You opened for writing a filehandle that got the same filehandle id
3253a literal "at" sign, or was meant to introduce a variable name that
5712as STDIN. This occurred because you closed STDIN previously.
5713
5714=end original
5715
5716(W io) STDIN として使われていたのと同じファイルハンドル ID の
5717ファイルハンドルを書き込み用に開こうとしました。
5718これは、以前 STDIN を閉じたときに起きます。
5719
5720=item Final $ should be \$ or $name
5721
5722=begin original
5723
5724(F) You must now decide whether the final $ in a string was meant to be
5725a literal dollar sign, or was meant to introduce a variable name that
32545726happens to be missing. So you have to put either the backslash or the
32555727name.
32565728
32575729=end original
32585730
3259(F) 文字列の最後の @ が、リテラルのアットマークなのか、変数名を
5731(F) 文字列の最後の $ が、リテラルのドル記号なのか、変数名を入れようとして
3260入れようとして忘れたのかを、はっきりさせなければなりません。
5732忘れたのかを、はっきりさせなければなりません。
32615733バックスラッシュを付けるか、名前を入れてください。
32625734
32635735=item flock() on closed filehandle %s
32645736
32655737=begin original
32665738
32675739(W closed) The filehandle you're attempting to flock() got itself closed
3268some time before now. Check your logic flow. flock() operates on
5740some time before now. Check your control flow. flock() operates on
32695741filehandles. Are you attempting to call flock() on a dirhandle by the
32705742same name?
32715743
32725744=end original
32735745
32745746(W closed) flock() しようとしたファイルハンドルはその前に既に
32755747閉じられています。
3276論理フローをチェックしてください。
5748制御フローをチェックしてください。
32775749flock() はファイルハンドルを操作します。
32785750同じ名前のディレクトリハンドルに flock() しようとしていませんか?
32795751
3280=item Quantifier follows nothing before << HERE in regex m/%s/
3281
3282=begin original
3283
3284(F) You started a regular expression with a quantifier. Backslash it if you
3285meant it literally. The << HERE shows in the regular expression about where the
3286problem was discovered. See L<perlre>.
3287
3288=end original
3289
3290(F) 正規表現を量指定子で開始しています。
3291もしそれをリテラルに使いたいなら、バックスラッシュでクォートしてください。
3292<< HERE で正規表現のどこに問題が発見されたかを示しています。
3293L<perlre> を参照してください。
3294
32955752=item Format not terminated
32965753
32975754=begin original
32985755
32995756(F) A format must be terminated by a line with a solitary dot. Perl got
33005757to the end of your file without finding such a line.
33015758
33025759=end original
33035760
33045761(F) フォーマットは、単独のドットだけからなる行で終わらなければなりません。
33055762そのような行が見つからないまま、スクリプトの最後に行き当たってしまいました。
33065763
33075764=item Format %s redefined
33085765
33095766=begin original
33105767
33115768(W redefine) You redefined a format. To suppress this warning, say
33125769
33135770=end original
33145771
33155772(W redefine) フォーマットを再定義しました。
3316この警告を止めるには以下のようにしてください
5773この警告を止めるには以下のようにしてください:
33175774
33185775 {
3319 no warnings;
5776 no warnings 'redefine';
33205777 eval "format NAME =...";
33215778 }
33225779
33235780=item Found = in conditional, should be ==
33245781
33255782=begin original
33265783
33275784(W syntax) You said
33285785
33295786=end original
33305787
33315788(W) 以下のようにしています:
33325789
33335790 if ($foo = 123)
33345791
33355792=begin original
33365793
33375794when you meant
33385795
33395796=end original
33405797
3341以下のようにすべきところしょう:
5798以下のようにすべきで:
33425799
33435800 if ($foo == 123)
33445801
33455802=begin original
33465803
33475804(or something like that).
33485805
33495806=end original
33505807
33515808(あるいは似たようなこと)。
33525809
33535810=item %s found where operator expected
33545811
33555812=begin original
33565813
3357(S) The Perl lexer knows whether to expect a term or an operator. If it
5814(S syntax) The Perl lexer knows whether to expect a term or an operator.
3358sees what it knows to be a term when it was expecting to see an
5815If it sees what it knows to be a term when it was expecting to see an
33595816operator, it gives you this warning. Usually it indicates that an
33605817operator or delimiter was omitted, such as a semicolon.
33615818
33625819=end original
33635820
3364(S) Perl の字句解析部は、次に項が来るか、演算子が来るかを知っています。
5821(S syntax) Perl の字句解析部は、次に項が来るか、演算子が来るかを
5822知っています。
33655823次に演算子が来ると思っているときに、項であるとわかるものが現れると、
33665824この警告が出ることになります。
33675825通常、演算子かセミコロンのような区切り文字が省略されたことをしめします。
33685826
33695827=item gdbm store returned %d, errno %d, key "%s"
33705828
33715829=begin original
33725830
33735831(S) A warning from the GDBM_File extension that a store failed.
33745832
33755833=end original
33765834
33775835(S) GDBM_File 拡張モジュールが、値の設定に失敗したという警告です。
33785836
33795837=item gethostent not implemented
33805838
33815839=begin original
33825840
33835841(F) Your C library apparently doesn't implement gethostent(), probably
33845842because if it did, it'd feel morally obligated to return every hostname
33855843on the Internet.
33865844
33875845=end original
33885846
3389(F) C ライブラリに gethostent() が実装されていないようです
5847(F) C ライブラリに gethostent() が実装されていないようです;
33905848おそらく、実装すると Internet 上のすべてのホスト名を
33915849返さなければいけないと思っているのでしょう。
33925850
33935851=item get%sname() on closed socket %s
33945852
33955853=begin original
33965854
33975855(W closed) You tried to get a socket or peer socket name on a closed
33985856socket. Did you forget to check the return value of your socket() call?
33995857
34005858=end original
34015859
34025860(W closed) 閉じたソケットに対してソケットやピアソケット名を取得しようと
34035861しました。
34045862socket() の呼び出し時に、返却値のチェックを忘れたのではありませんか?
34055863
34065864=item getpwnam returned invalid UIC %#o for user "%s"
34075865
34085866=begin original
34095867
34105868(S) A warning peculiar to VMS. The call to C<sys$getuai> underlying the
34115869C<getpwnam> operator returned an invalid UIC.
34125870
34135871=end original
34145872
34155873(S) VMS に固有の警告です。
34165874C<getpwnam> 演算子の基礎となる C<sys$getuai> 呼び出しで
34175875不正な UIC が返されました。
34185876
34195877=item getsockopt() on closed socket %s
34205878
34215879=begin original
34225880
34235881(W closed) You tried to get a socket option on a closed socket. Did you
34245882forget to check the return value of your socket() call? See
34255883L<perlfunc/getsockopt>.
34265884
34275885=end original
34285886
34295887(W clockd) クローズされたソケットのソケットオプションを取得しようとしました。
34305888socket() の呼び出し時に、返却値のチェックを忘れたのではありませんか。
34315889L<perlfunc/getsockopt> を参照してください。
34325890
3433=item Global symbol "%s" requires explicit package name
5891=item given is experimental
34345892
34355893=begin original
34365894
3437(F) You've said "use strict vars", which indicates that all variables
5895(S experimental::smartmatch) C<given> depends on smartmatch, which
3438must either be lexically scoped (using "my"), declared beforehand using
5896is experimental, so its behavior may change or even be removed
3439"our", or explicitly qualified to say which package the global variable
5897in any future release of perl. See the explanation under
3440is in (using "::").
5898L<perlsyn/Experimental Details on given and when>.
34415899
34425900=end original
34435901
3444(F) "use strict vars" が指定されていますので、すべの変数は
5902(S experimental::smartmatch) C<given> はスマートマッチングのに依存していて、
3445("my" を使った) 字句スコープ変数か"our" を使って事前に宣言するか、
5903これは実験的なその振る舞いは将来のリリースの perl で変更されたり
3446グローバル変数がどのパッケージのものを ("::" を使って)、明示的に
5904削除されたりするもしれません。
3447修飾なくはなりません
5905L<perlsyn/Experimental Details on given and when> の説明を参照してください
34485906
5907=item Global symbol "%s" requires explicit package name (did you forget to
5908declare "my %s"?)
5909
5910=begin original
5911
5912(F) You've said "use strict" or "use strict vars", which indicates
5913that all variables must either be lexically scoped (using "my" or "state"),
5914declared beforehand using "our", or explicitly qualified to say
5915which package the global variable is in (using "::").
5916
5917=end original
5918
5919(F) "use strict" か "use strict vars" が指定されていますので、すべての変数は
5920("my" か "state" を使った) レキシカルスコープの変数か、"our" を使って事前に
5921宣言するか、グローバル変数がどのパッケージのものかを ("::" を使って)、
5922明示的に修飾しなくてはなりません。
5923
34495924=item glob failed (%s)
34505925
34515926=begin original
34525927
3453(W glob) Something went wrong with the external program(s) used for
5928(S glob) Something went wrong with the external program(s) used
3454C<glob> and C<< <*.c> >>. Usually, this means that you supplied a
5929for C<glob> and C<< <*.c> >>. Usually, this means that you supplied a C<glob>
3455C<glob> pattern that caused the external program to fail and exit with a
5930pattern that caused the external program to fail and exit with a
34565931nonzero status. If the message indicates that the abnormal exit
3457resulted in a coredump, this may also mean that your csh (C shell) is
5932resulted in a coredump, this may also mean that your csh (C shell)
3458broken. If so, you should change all of the csh-related variables in
5933is broken. If so, you should change all of the csh-related variables
3459config.sh: If you have tcsh, make the variables refer to it as if it
5934in config.sh: If you have tcsh, make the variables refer to it as
3460were csh (e.g. C<full_csh='/usr/bin/tcsh'>); otherwise, make them all
5935if it were csh (e.g. C<full_csh='/usr/bin/tcsh'>); otherwise, make them
3461empty (except that C<d_csh> should be C<'undef'>) so that Perl will
5936all empty (except that C<d_csh> should be C<'undef'>) so that Perl will
34625937think csh is missing. In either case, after editing config.sh, run
34635938C<./Configure -S> and rebuild Perl.
34645939
34655940=end original
34665941
3467(W glob) C<glob> や C<< <*.c> >> のために使われる外部プログラムに何か問題が
5942(S glob) C<glob> や C<< <*.c> >> のために使われる外部プログラムに何か問題が
34685943発生しました。
34695944通常、これは外部プログラムが失敗して非 0 のステータスで終了するような
34705945C<glob> パターンが渡されたことを意味します。
34715946このメッセージがコアダンプを引きおこした異常終了を示している場合、
34725947csh (C シェル) が壊れていることを意味しているかもしれません。
34735948もしそうなら、config.sh の全ての csh 関連の変数を変更するべきです:
34745949もし tcsh があるなら、(C<full_csh='/usr/bin/tcsh'> のように) tcsh を
34755950参照するように変数を設定します;
34765951さもなければ、関連する全ての変数を空にする(例外として C<d_csh> は
34775952C<'undef'> に設定するべきです)ことで、Perl は csh がないものと考えます。
34785953どちらの場合でも、config.sh を修正した後、C<./Configure -S> を実行して
34795954Perl を再ビルドしてください。
34805955
34815956=item Glob not terminated
34825957
34835958=begin original
34845959
34855960(F) The lexer saw a left angle bracket in a place where it was expecting
34865961a term, so it's looking for the corresponding right angle bracket, and
34875962not finding it. Chances are you left some needed parentheses out
34885963earlier in the line, and you really meant a "less than".
34895964
34905965=end original
34915966
3492(F) 項が必要とされるところで、開き山括弧が見つけたため、
5967(F) 項が必要とされるところで、開き山かっこが見つけたため、
3493対応する閉じ山括弧を探しましたが、見つかりませんでした。
5968対応する閉じ山かっこを探しましたが、見つかりませんでした。
3494可能性としては、必要な括弧を省いてしまい、本当は、「小なり記号」を
5969可能性としては、必要なかっこを省いてしまい、本当は、「小なり記号」を
34955970表したかった場合が考えられます。
34965971
5972=item gmtime(%f) failed
5973
5974=begin original
5975
5976(W overflow) You called C<gmtime> with a number that it could not handle:
5977too large, too small, or NaN. The returned value is C<undef>.
5978
5979=end original
5980
5981(W overflow) 扱えない数値で C<gmtime> を呼び出しました: 大きすぎたり
5982小さすぎたり NaN だったりです。
5983返り値は C<undef> です。
5984
5985=item gmtime(%f) too large
5986
5987=begin original
5988
5989(W overflow) You called C<gmtime> with a number that was larger than
5990it can reliably handle and C<gmtime> probably returned the wrong
5991date. This warning is also triggered with NaN (the special
5992not-a-number value).
5993
5994=end original
5995
5996(W overflow) 確実に扱えるよりも大きい数値の引数で C<gmtime> を呼び出して、
5997おそらく間違った日付が返されました。
5998この警告は、NaN (特殊な非数) でも引き起こされます。
5999
6000=item gmtime(%f) too small
6001
6002=begin original
6003
6004(W overflow) You called C<gmtime> with a number that was smaller than
6005it can reliably handle and C<gmtime> probably returned the wrong date.
6006
6007=end original
6008
6009(W overflow) 確実に扱えるよりも大きい数値の引数で C<gmtime> を呼び出して、
6010おそらく間違った日付が返されました。
6011
34976012=item Got an error from DosAllocMem
34986013
34996014=begin original
35006015
35016016(P) An error peculiar to OS/2. Most probably you're using an obsolete
35026017version of Perl, and this should not happen anyway.
35036018
35046019=end original
35056020
35066021(P) OS/2 に固有のエラーです。
35076022もっともありそうなのは廃止されたバージョンの Perl を使っていることで、
35086023どちらにしてもこのエラーは起きないはずです。
35096024
35106025=item goto must have label
35116026
35126027=begin original
35136028
35146029(F) Unlike with "next" or "last", you're not allowed to goto an
35156030unspecified destination. See L<perlfunc/goto>.
35166031
35176032=end original
35186033
35196034(F) "next" や "last" とは違って、goto には必ず、飛び先を
35206035指定しなくてはなりません。
35216036L<perlfunc/goto> を参照してください。
35226037
3523=item %s had compilation errors
6038=item Goto undefined subroutine%s
35246039
35256040=begin original
35266041
6042(F) You tried to call a subroutine with C<goto &sub> syntax, but
6043the indicated subroutine hasn't been defined, or if it was, it
6044has since been undefined.
6045
6046=end original
6047
6048(F) C<goto &sub> 文法でサブルーチンを呼び出そうとしましたが、示された
6049サブルーチンは定義されていないか、定義されていましたが未定義化されました。
6050
6051=item Group name must start with a non-digit word character in regex; marked by
6052S<<-- HERE> in m/%s/
6053
6054=begin original
6055
6056(F) Group names must follow the rules for perl identifiers, meaning
6057they must start with a non-digit word character. A common cause of
6058this error is using (?&0) instead of (?0). See L<perlre>.
6059
6060=end original
6061
6062(F) グループ名は perl 識別子の規則に従う必要があり、非数値単語文字で
6063始まらなければなりません。
6064このエラーのよくある原因は (?0) ではなく (?&0) を使うことです。
6065L<perlre> を参照してください。
6066
6067=item ()-group starts with a count
6068
6069=begin original
6070
6071(F) A ()-group started with a count. A count is supposed to follow
6072something: a template character or a ()-group. See L<perlfunc/pack>.
6073
6074=end original
6075
6076(F) () グループが繰り返し数で始まっています。
6077繰り返し数は、テンプレート文字か () グループの後に続くことを想定しています。
6078L<perlfunc/pack> を参照してください。
6079
6080=item %s had compilation errors.
6081
6082=begin original
6083
35276084(F) The final summary message when a C<perl -c> fails.
35286085
35296086=end original
35306087
35316088(F) C<perl -c> が失敗したときの最終まとめメッセージです。
35326089
35336090=item Had to create %s unexpectedly
35346091
35356092=begin original
35366093
35376094(S internal) A routine asked for a symbol from a symbol table that ought
35386095to have existed already, but for some reason it didn't, and had to be
35396096created on an emergency basis to prevent a core dump.
35406097
35416098=end original
35426099
35436100(S internal) あるルーティンが、既に存在しているはずのシンボルを、
35446101シンボルテーブルで探しましたが、何らかの理由で存在せず、
35456102コアダンプを避けるために、緊急に生成しました。
35466103
3547=item Hash %%s missing the % in argument %d of %s()
6104=item %s has too many errors
35486105
35496106=begin original
35506107
3551(D deprecated) Really old Perl let you omit the % on hash names in some
6108(F) The parser has given up trying to parse the program after 10 errors.
3552spots. This is now heavily deprecated.
6109Further error messages would likely be uninformative.
35536110
35546111=end original
35556112
3556(D deprecated) 本当古い Perl では、ハッシュ名 % 省略できる場所が
6113(F) 構文解析部が、プログラム中10 エラー見つけたため、
3557ありました。
6114それ以上の解析を諦めました。
3558省略ないようにてください
6115それ以上のエラーメッセージ、おそらく意味がないょう
35596116
3560=item %s has too many errors
6117=item Hexadecimal float: exponent overflow
35616118
35626119=begin original
35636120
3564(F) The parser has given up trying to parse the program after 10 errors.
6121(W overflow) The hexadecimal floating point has a larger exponent
3565Further error messages would likely be uninformative.
6122than the floating point supports.
35666123
35676124=end original
35686125
3569(F) 構文解析部が、プログラム中に 10 個のエラーを見つけたため
6126(W overflow) 16 進浮動小数点数は対応している浮動小数点数よりも大きな
3570それ以上の解析諦めした
6127指数持ってい
3571それ以上のエラーメッセージは、おそらく意味がないでしょう。
35726128
6129=item Hexadecimal float: exponent underflow
6130
6131=begin original
6132
6133(W overflow) The hexadecimal floating point has a smaller exponent
6134than the floating point supports. With the IEEE 754 floating point,
6135this may also mean that the subnormals (formerly known as denormals)
6136are being used, which may or may not be an error.
6137
6138=end original
6139
6140(W overflow) 16 進浮動小数点数は、対応している浮動小数点数よりも大きな
6141指数を持っています。
6142IEEE 754 浮動小数点では、正規化数が使われたことを意味するかもしれません;
6143どちらにしろエラーです。
6144
6145=item Hexadecimal float: internal error (%s)
6146
6147=begin original
6148
6149(F) Something went horribly bad in hexadecimal float handling.
6150
6151=end original
6152
6153(F) 16 進浮動小数点の扱いにおいて何かが恐ろしくおかしくなりました。
6154
6155=item Hexadecimal float: mantissa overflow
6156
6157=begin original
6158
6159(W overflow) The hexadecimal floating point literal had more bits in
6160the mantissa (the part between the 0x and the exponent, also known as
6161the fraction or the significand) than the floating point supports.
6162
6163=end original
6164
6165(W overflow) 16 進浮動小数点数リテラルは、仮数部 (0x と指数部の間の部分) に
6166浮動小数点数が対応しているよりも多いビット数があります。
6167
6168=item Hexadecimal float: precision loss
6169
6170=begin original
6171
6172(W overflow) The hexadecimal floating point had internally more
6173digits than could be output. This can be caused by unsupported
6174long double formats, or by 64-bit integers not being available
6175(needed to retrieve the digits under some configurations).
6176
6177=end original
6178
6179(W overflow) 16 進浮動小数点数リテラルは内部では出力可能なものより
6180多くの桁数を保持しています。
6181これは未対応の long double 形式や、(設定によっては受け取る必要のある)
6182利用できない 64 ビット整数によって引き起こされます。
6183
6184=item Hexadecimal float: unsupported long double format
6185
6186=begin original
6187
6188(F) You have configured Perl to use long doubles but
6189the internals of the long double format are unknown;
6190therefore the hexadecimal float output is impossible.
6191
6192=end original
6193
6194(F) long double を使うように設定された Perl を使っていますが、
6195long double の内部形式が不明です; 従って 16 進浮動小数点数出力は
6196不可能です。
6197
35736198=item Hexadecimal number > 0xffffffff non-portable
35746199
35756200=begin original
35766201
35776202(W portable) The hexadecimal number you specified is larger than 2**32-1
35786203(4294967295) and therefore non-portable between systems. See
35796204L<perlport> for more on portability concerns.
35806205
35816206=end original
35826207
35836208(W portable) 指定した 16 進数が 2**32-1 (4294967295) より大きいので、
35846209システム間で移植性がありません。
35856210移植性に関するさらなる考察については L<perlport> を参照してください。
35866211
35876212=item Identifier too long
35886213
35896214=begin original
35906215
35916216(F) Perl limits identifiers (names for variables, functions, etc.) to
35926217about 250 characters for simple names, and somewhat more for compound
35936218names (like C<$A::B>). You've exceeded Perl's limits. Future versions
35946219of Perl are likely to eliminate these arbitrary limitations.
35956220
35966221=end original
35976222
35986223(F) Perl は識別子(変数名や関数名など)について、単純な名前については
35996224およそ 250 文字に、(C<$A::B> のような)複合名についてはもう少し長い長さに
36006225制限しています。
36016226この Perl の制限を越えました。
36026227将来のバージョンの Perl ではこれらの恣意的な制限はなくなるでしょう。
36036228
3604=item Illegal binary digit %s
6229=item Ignoring zero length \N{} in character class in regex; marked by
6230S<<-- HERE> in m/%s/
36056231
36066232=begin original
36076233
6234(W regexp) Named Unicode character escapes (C<\N{...}>) may return a
6235zero-length sequence. When such an escape is used in a character
6236class its behavior is not well defined. Check that the correct
6237escape has been used, and the correct charname handler is in scope.
6238
6239=end original
6240
6241(W regexp) 名前付き Unicode 文字エスケープ (C<\N{...}>) が長さ 0 の
6242シーケンスを返しました。
6243文字クラスでこのようなエスケープが使われた場合、振る舞いは未定義です。
6244正しいエスケープを使っているか、および正しい文字名ハンドラがスコープ内に
6245あるかをチェックしてください。
6246
6247=item Illegal binary digit '%c'
6248
6249=begin original
6250
36086251(F) You used a digit other than 0 or 1 in a binary number.
36096252
36106253=end original
36116254
36126255(F) 2 進数として 0 と 1 以外の数値を使っています。
36136256
36146257=item Illegal binary digit %s ignored
36156258
36166259=begin original
36176260
36186261(W digit) You may have tried to use a digit other than 0 or 1 in a
36196262binary number. Interpretation of the binary number stopped before the
36206263offending digit.
36216264
36226265=end original
36236266
36246267(W digit) 2 進数として 0 と 1 以外の数値を使おうとしたのでしょう。
362562682 進数の解釈は問題のある数値の手前で停止しました。
36266269
3627=item Illegal character %s (carriage return)
6270=item Illegal character after '_' in prototype for %s : %s
36286271
36296272=begin original
36306273
3631(F) Perl normally treats carriage returns in the program text as it
6274(W illegalproto) An illegal character was found in a prototype
3632would any other whitespace, which means you should never see this error
6275declaration. The '_' in a prototype must be followed by a ';',
3633when Perl was built using standard options. For some reason, your
6276indicating the rest of the parameters are optional, or one of '@'
3634version of Perl appears to have been built without this support. Talk
6277or '%', since those two will accept 0 or more final parameters.
3635to your Perl administrator.
36366278
36376279=end original
36386280
6281(W illegalproto) プロトタイプ宣言に無効な文字が見つかりました。
6282プロトタイプの中の '_' は、残りの引数がオプションであることを示すために
6283';' が引き続くか、'@' か '%' の一つでなければなりません;
6284これら二つは 0 以上の末尾の引数を受け付けるからです。
6285
6286=item Illegal character \%o (carriage return)
6287
6288=begin original
6289
6290(F) Perl normally treats carriage returns in the program text as
6291it would any other whitespace, which means you should never see
6292this error when Perl was built using standard options. For some
6293reason, your version of Perl appears to have been built without
6294this support. Talk to your Perl administrator.
6295
6296=end original
6297
36396298(F) Perl は普通プログラムテキスト中の復帰文字をその他の空白と同様に
36406299扱いますので、Perl を標準のオプションでビルドした場合はこのエラーを
36416300見ることは決してないはずです。
36426301どういうわけか、お使いの Perl はこの機能なしでビルドされているようです。
36436302Perl の管理者に問い合わせてください。
36446303
6304=item Illegal character following sigil in a subroutine signature
6305
6306=begin original
6307
6308(F) A parameter in a subroutine signature contained an unexpected character
6309following the C<$>, C<@> or C<%> sigil character. Normally the sigil
6310should be followed by the variable name or C<=> etc. Perhaps you are
6311trying use a prototype while in the scope of C<use feature 'signatures'>?
6312For example:
6313
6314=end original
6315
6316(F) サブルーチンシグネチャの引数は、C<$>, C<@>, C<%> 印文字に引き続いて
6317想定外の文字がありました。
6318通常は、印には変数名や C<=> などが引き続くはずです。
6319おそらく C<use feature 'signatures'> のスコープ内で
6320プロトタイプを使おうとしたのでは?
6321例えば:
6322
6323 sub foo ($$) {} # legal - a prototype
6324
6325 use feature 'signatures;
6326 sub foo ($$) {} # illegal - was expecting a signature
6327 sub foo ($a, $b)
6328 :prototype($$) {} # legal
6329
6330=item Illegal character in prototype for %s : %s
6331
6332=begin original
6333
6334(W illegalproto) An illegal character was found in a prototype declaration.
6335Legal characters in prototypes are $, @, %, *, ;, [, ], &, \, and +.
6336Perhaps you were trying to write a subroutine signature but didn't enable
6337that feature first (C<use feature 'signatures'>), so your signature was
6338instead interpreted as a bad prototype.
6339
6340=end original
6341
6342(W illegalproto) プロトタイプ宣言に無効な文字が見つかりました。
6343プロトタイプでの有効な文字は、$, @, %, *, ;, [, ], &, \, + です。
6344おそらくサブルーチンシグネチャを書こうとしたけれども、先にこの機能を有効に
6345していなかった (C<use feature 'signatures'>) ので、シグネチャが間違った
6346プロトタイプとして解釈されたのでしょう。
6347
6348=item Illegal declaration of anonymous subroutine
6349
6350=begin original
6351
6352(F) When using the C<sub> keyword to construct an anonymous subroutine,
6353you must always specify a block of code. See L<perlsub>.
6354
6355=end original
6356
6357(F) 無名サブルーチンを作るために C<sub> を使ったときは、
6358常にコードのブロックを指定しなければなりません。
6359L<perlsub> を参照してください。
6360
6361=item Illegal declaration of subroutine %s
6362
6363=begin original
6364
6365(F) A subroutine was not declared correctly. See L<perlsub>.
6366
6367=end original
6368
6369(F) サブルーチンが正しく宣言されていません。
6370L<perlsub> を参照してください。
6371
36456372=item Illegal division by zero
36466373
36476374=begin original
36486375
36496376(F) You tried to divide a number by 0. Either something was wrong in
36506377your logic, or you need to put a conditional in to guard against
36516378meaningless input.
36526379
36536380=end original
36546381
36556382(F) ゼロで割り算をしようとしました。
36566383ロジックの誤りか、意味の無い入力を防ぐために、条件を付けることが
36576384必要かのどちらかでしょう。
36586385
36596386=item Illegal hexadecimal digit %s ignored
36606387
36616388=begin original
36626389
36636390(W digit) You may have tried to use a character other than 0 - 9 or
36646391A - F, a - f in a hexadecimal number. Interpretation of the hexadecimal
36656392number stopped before the illegal character.
36666393
36676394=end original
36686395
36696396(W digit) 16 進数として 0 - 9, A - F, a - f 以外の文字を使おうとしました。
3670639716 進数の解釈は不正な文字の手前で停止しました。
36716398
36726399=item Illegal modulus zero
36736400
36746401=begin original
36756402
36766403(F) You tried to divide a number by 0 to get the remainder. Most
36776404numbers don't take to this kindly.
36786405
36796406=end original
36806407
36816408(F) 余りを求めるのに、ゼロで割り算をしようとしました。
36826409これは、ほとんどの数体系で受け入れられません。
36836410
36846411=item Illegal number of bits in vec
36856412
36866413=begin original
36876414
36886415(F) The number of bits in vec() (the third argument) must be a power of
36896416two from 1 to 32 (or 64, if your platform supports that).
36906417
36916418=end original
36926419
36936420(F) vec() のビット数 (第三引数) は 1 から 32 (プラットフォームが
36946421対応している場合は 64) までの、2 のべき乗でなければなりません。
36956422
3696=item Illegal octal digit %s
6423=item Illegal octal digit '%c'
36976424
36986425=begin original
36996426
3700(F) You used an 8 or 9 in a octal number.
6427(F) You used an 8 or 9 in an octal number.
37016428
37026429=end original
37036430
37046431(F) 8 進数で 8 か 9 を使いました。
37056432
37066433=item Illegal octal digit %s ignored
37076434
37086435=begin original
37096436
3710(W digit) You may have tried to use an 8 or 9 in a octal number.
6437(W digit) You may have tried to use an 8 or 9 in an octal number.
37116438Interpretation of the octal number stopped before the 8 or 9.
37126439
37136440=end original
37146441
37156442(W digit) 8 進数で 8 か 9 を使おうとしたのでしょう。
371664438 進数の解釈は 8 か 9 の手前で停止しました。
37176444
3718=item Illegal switch in PERL5OPT: %s
6445=item Illegal operator following parameter in a subroutine signature
37196446
37206447=begin original
37216448
6449(F) A parameter in a subroutine signature, was followed by something
6450other than C<=> introducing a default, C<,> or C<)>.
6451
6452=end original
6453
6454(F) サブルーチンシグネチャで引数に引き続いて、デフォルトを導入する
6455C<=>, C<,>, C<)> 以外のものがありました。
6456
6457 use feature 'signatures';
6458 sub foo ($=1) {} # legal
6459 sub foo ($a = 1) {} # legal
6460 sub foo ($a += 1) {} # illegal
6461 sub foo ($a == 1) {} # illegal
6462
6463=item Illegal pattern in regex; marked by S<<-- HERE> in m/%s/
6464
6465=begin original
6466
6467(F) You wrote something like
6468
6469=end original
6470
6471(F) 以下のようなものを書きました
6472
6473 (?+foo)
6474
6475=begin original
6476
6477The C<"+"> is valid only when followed by digits, indicating a
6478capturing group. See
6479L<C<(?I<PARNO>)>|perlre/(?PARNO) (?-PARNO) (?+PARNO) (?R) (?0)>.
6480
6481=end original
6482
6483C<"+"> は捕捉グループを示すために数値が引き続く場合にのみ正当です。
6484L<C<(?I<PARNO>)>|perlre/(?PARNO) (?-PARNO) (?+PARNO) (?R) (?0)> を
6485参照してください。
6486
6487=item Illegal suidscript
6488
6489=begin original
6490
6491(F) The script run under suidperl was somehow illegal.
6492
6493=end original
6494
6495(F) suidperl でのスクリプトの実行が何らかの理由で不正でした。
6496
6497=item Illegal switch in PERL5OPT: -%c
6498
6499=begin original
6500
37226501(X) The PERL5OPT environment variable may only be used to set the
3723following switches: B<-[DIMUdmw]>.
6502following switches: B<-[CDIMUdmtw]>.
37246503
37256504=end original
37266505
3727(X) PERL5OPT 環境変数で設定できるのは B<-[DIMUdmw]> の
6506(X) PERL5OPT 環境変数で設定できるのは B<-[CDIMUdmtw]> のオプションだけです。
3728オプションだけです。
37296507
6508=item Illegal user-defined property name
6509
6510=begin original
6511
6512(F) You specified a Unicode-like property name in a regular expression
6513pattern (using C<\p{}> or C<\P{}>) that Perl knows isn't an official
6514Unicode property, and was likely meant to be a user-defined property
6515name, but it can't be one of those, as they must begin with either C<In>
6516or C<Is>. Check the spelling. See also
6517L</Can't find Unicode property definition "%s">.
6518
6519=end original
6520
6521(F) (C<\p{}> や C<\P{}> を使って) 正規表現中に Perl が
6522公式 Unicode 特性として知らない Unicode 風の特性姪を指定して、
6523おそらくそれはユーザー定義特性を意味しているのでしょうが、
6524しかし、それらは C<In> か C<Is> で始まっていなければならないので、
6525そうなりません。
6526スペルを確認してください。
6527L</Can't find Unicode property definition "%s"> も参照してください。
6528
37306529=item Ill-formed CRTL environ value "%s"
37316530
37326531=begin original
37336532
37346533(W internal) A warning peculiar to VMS. Perl tried to read the CRTL's
37356534internal environ array, and encountered an element without the C<=>
37366535delimiter used to separate keys from values. The element is ignored.
37376536
37386537=end original
37396538
3740(W internal) VMS 固有の警告です。
6539(W internal) VMS 固有の警告です。
37416540Perl は CRTL の内部環境配列を読み込もうとしましたが、キーを値と
37426541分離するために使われている C<=> デリミタのない要素に遭遇しました。
37436542この要素は無視しました。
37446543
37456544=item Ill-formed message in prime_env_iter: |%s|
37466545
37476546=begin original
37486547
37496548(W internal) A warning peculiar to VMS. Perl tried to read a logical
37506549name or CLI symbol definition when preparing to iterate over %ENV, and
37516550didn't see the expected delimiter between key and value, so the line was
37526551ignored.
37536552
37546553=end original
37556554
3756(W internal) VMS 固有の警告です。
6555(W internal) VMS 固有の警告です。
37576556Perl は %ENV を反復する準備したときに論理名や CLI シンボル定義を
37586557読み込もうとしましたが、キーと値の間のデリミタが見つからなかったので、
37596558その行は無視しました。
37606559
37616560=item (in cleanup) %s
37626561
37636562=begin original
37646563
37656564(W misc) This prefix usually indicates that a DESTROY() method raised
37666565the indicated exception. Since destructors are usually called by the
37676566system at arbitrary points during execution, and often a vast number of
37686567times, the warning is issued only once for any number of failures that
37696568would otherwise result in the same message being repeated.
37706569
37716570=end original
37726571
37736572(W misc) この接頭辞は普通、示されている例外が DESTROY() メソッドで
37746573発生したことを示しています。
37756574デストラクタは普通実行中の任意の時点で呼び出され、しばしば大量に
37766575呼び出されるので、この警告は同じメッセージが繰り返されないように、
37776576何回失敗しても一度だけ発生します。
37786577
37796578=begin original
37806579
37816580Failure of user callbacks dispatched using the C<G_KEEPERR> flag could
37826581also result in this warning. See L<perlcall/G_KEEPERR>.
37836582
37846583=end original
37856584
3786C<G_KEEPERR> フラグを使ってディスパッチしたユーザーコールバックに失敗した
6585C<G_KEEPERR> フラグを使って発行(dispatch)したユーザーコールバックに失敗した
37876586場合にもこの警告が出ることがあります。
37886587L<perlcall/G_KEEPERR> を参照してください。
37896588
6589=item Incomplete expression within '(?[ ])' in regex; marked by S<<-- HERE>
6590in m/%s/
6591
6592=begin original
6593
6594(F) There was a syntax error within the C<(?[ ])>. This can happen if the
6595expression inside the construct was completely empty, or if there are
6596too many or few operands for the number of operators. Perl is not smart
6597enough to give you a more precise indication as to what is wrong.
6598
6599=end original
6600
6601(F) これは C<(?[ ])> の中の文法エラーです。
6602これは、この構文の中の式が完全に空か、演算子の数に対してオペランドが多すぎたり
6603少なすぎたりする場合に起こります。
6604Perl は、何が悪いのかをより正確に示せるほど賢くはありませんでした。
6605
6606=item Inconsistent hierarchy during C3 merge of class '%s': merging failed on
6607parent '%s'
6608
6609=begin original
6610
6611(F) The method resolution order (MRO) of the given class is not
6612C3-consistent, and you have enabled the C3 MRO for this class. See the C3
6613documentation in L<mro> for more information.
6614
6615=end original
6616
6617(F) 与えられたクラスのメソッド解決順序 (MRO) が C3 に矛盾していますが、
6618このクラスの C3 MRO を有効にしました。
6619さらなる情報については L<mro> 内の C3 に関する文書を参照してください。
6620
6621=item Indentation on line %d of here-doc doesn't match delimiter
6622
6623=begin original
6624
6625(F) You have an indented here-document where one or more of its lines
6626have whitespace at the beginning that does not match the closing
6627delimiter.
6628
6629=end original
6630
6631(F) インデントのあるヒヤドキュメントがありますが、
6632先頭に空白があるけれども閉じ区切り文字にマッチングしない行があります。
6633
6634=begin original
6635
6636For example, line 2 below is wrong because it does not have at least
66372 spaces, but lines 1 and 3 are fine because they have at least 2:
6638
6639=end original
6640
6641例えば、以下の Line 2 は間違っています; これは少なくとも 2 個の
6642スペースが必要だからです; しかし、Line 1 と Line 3 は正しいです;
6643少なくとも 2 個あるからです:
6644
6645 if ($something) {
6646 print <<~EOF;
6647 Line 1
6648 Line 2 not
6649 Line 3
6650 EOF
6651 }
6652
6653=begin original
6654
6655Note that tabs and spaces are compared strictly, meaning 1 tab will
6656not match 8 spaces.
6657
6658=end original
6659
6660タブとスペースは厳密に比較されるので、タブ 1 個は スペース 8 個とは
6661マッチングしないことに注意してください。
6662
6663=item Infinite recursion in regex
6664
6665=begin original
6666
6667(F) You used a pattern that references itself without consuming any input
6668text. You should check the pattern to ensure that recursive patterns
6669either consume text or fail.
6670
6671=end original
6672
6673(F) 入力テキストを読み込むことなく自分自身を参照するパターンを使いました。
6674再帰的なパターンが、テキストを読み込むか失敗するかを確実に行うように、
6675パターンをチェックするべきです。
6676
6677=item Infinite recursion via empty pattern
6678
6679=begin original
6680
6681(F) You tried to use the empty pattern inside of a regex code block,
6682for instance C</(?{ s!!! })/>, which resulted in re-executing
6683the same pattern, which is an infinite loop which is broken by
6684throwing an exception.
6685
6686=end original
6687
6688(F) C</(?{ s!!! })/> のように、正規表現コードブロックの中で
6689空パターンを使いました;
6690これは同じパターンを再実行することになり、
6691例外が投げられることによって壊れる無限ループになります。
6692
6693=item Initialization of state variables in list currently forbidden
6694
6695=begin original
6696
6697(F) C<state> only permits initializing a single variable, specified
6698without parentheses. So C<state $a = 42> and C<state @a = qw(a b c)> are
6699allowed, but not C<state ($a) = 42> or C<(state $a) = 42>. To initialize
6700more than one C<state> variable, initialize them one at a time.
6701
6702=end original
6703
6704(F) C<state> は、かっこなしで指定された単一の変数の初期化のみが
6705許されています。
6706従って C<state $a = 42> と C<state @a = qw(a b c)> は許されますが、
6707C<state ($a) = 42> や C<(state $a) = 42> は許されません。
6708To initialize
6709more than one
6710複数の C<state> 変数を初期化するには、一つずつ初期化してください。
6711
6712=item %%s[%s] in scalar context better written as $%s[%s]
6713
6714=begin original
6715
6716(W syntax) In scalar context, you've used an array index/value slice
6717(indicated by %) to select a single element of an array. Generally
6718it's better to ask for a scalar value (indicated by $). The difference
6719is that C<$foo[&bar]> always behaves like a scalar, both in the value it
6720returns and when evaluating its argument, while C<%foo[&bar]> provides
6721a list context to its subscript, which can do weird things if you're
6722expecting only one subscript. When called in list context, it also
6723returns the index (what C<&bar> returns) in addition to the value.
6724
6725=end original
6726
6727(W syntax) スカラコンテキストで、配列の単一の要素を選択するために
6728(% で示される)配列インデックス/値スライスを使いました。
6729一般的には($ で示される)スカラ値を取得した方がよいです。
6730違いは、C<$foo[&bar]> は返り値と引数を評価したときの両方で常にスカラのように
6731振る舞いますが、C<%foo[&bar]> は添え字にリストコンテキストを提供するので、
6732一つだけの添え字を想定していた場合、おかしなことになることがあります。
6733リストコンテキストで呼び出された場合、値に加えてインデックス
6734(C<&bar> が返すもの) を返します。
6735
6736=item %%s{%s} in scalar context better written as $%s{%s}
6737
6738=begin original
6739
6740(W syntax) In scalar context, you've used a hash key/value slice
6741(indicated by %) to select a single element of a hash. Generally it's
6742better to ask for a scalar value (indicated by $). The difference
6743is that C<$foo{&bar}> always behaves like a scalar, both in the value
6744it returns and when evaluating its argument, while C<@foo{&bar}> and
6745provides a list context to its subscript, which can do weird things
6746if you're expecting only one subscript. When called in list context,
6747it also returns the key in addition to the value.
6748
6749=end original
6750
6751(W syntax) スカラコンテキストで、ハッシュの単一の要素を選択するために
6752(% で示される)ハッシュキー/値スライスを使いました。
6753一般的には($ で示される)スカラ値を取得した方がよいです。
6754違いは、C<$foo[&bar]> は返り値と引数を評価したときの両方で常にスカラのように
6755振る舞いますが、C<%foo[&bar]> は添え字にリストコンテキストを提供するので、
6756一つだけの添え字を想定していた場合、おかしなことになることがあります。
6757リストコンテキストで呼び出された場合、値に加えてインデックスを返します。
6758
37906759=item Insecure dependency in %s
37916760
37926761=begin original
37936762
37946763(F) You tried to do something that the tainting mechanism didn't like.
37956764The tainting mechanism is turned on when you're running setuid or
37966765setgid, or when you specify B<-T> to turn it on explicitly. The
37976766tainting mechanism labels all data that's derived directly or indirectly
37986767from the user, who is considered to be unworthy of your trust. If any
37996768such data is used in a "dangerous" operation, you get this error. See
38006769L<perlsec> for more information.
38016770
38026771=end original
38036772
38046773(F) 何か汚染チェックの機構が、望ましくないと判断することを
38056774行なおうとしました。
38066775setuid や setgid を実行したときや、明示的に B<-T> で指定したときに、
38076776汚染チェック機構が働きます。
38086777汚染チェック機構は、信頼がおけないと仮定されるユーザが直接、間接を問わず、
38096778指定したデータに印を付けます。
38106779そのようなデータを「危険な」操作に用いると、このエラーが発生します。
38116780詳しくは、L<perlsec> を参照してください。
38126781
38136782=item Insecure directory in %s
38146783
38156784=begin original
38166785
38176786(F) You can't use system(), exec(), or a piped open in a setuid or
38186787setgid script if C<$ENV{PATH}> contains a directory that is writable by
3819the world. See L<perlsec>.
6788the world. Also, the PATH must not contain any relative directory.
6789See L<perlsec>.
38206790
38216791=end original
38226792
38236793(F) C<$ENV{PATH}> の中に、誰にでも書き込みができるディレクトリが
38246794含まれているとき、system()、exec()、パイプのオープンを
38256795行なうことはできません。
6796また、PATH には相対早退ディレクトリを含んでいてはいけません。
38266797L<perlsec> を参照してください。
38276798
38286799=item Insecure $ENV{%s} while running %s
38296800
38306801=begin original
38316802
38326803(F) You can't use system(), exec(), or a piped open in a setuid or
38336804setgid script if any of C<$ENV{PATH}>, C<$ENV{IFS}>, C<$ENV{CDPATH}>,
3834C<$ENV{ENV}> or C<$ENV{BASH_ENV}> are derived from data supplied (or
6805C<$ENV{ENV}>, C<$ENV{BASH_ENV}> or C<$ENV{TERM}> are derived from data
3835potentially supplied) by the user. The script must set the path to a
6806supplied (or potentially supplied) by the user. The script must set
3836known value, using trustworthy data. See L<perlsec>.
6807the path to a known value, using trustworthy data. See L<perlsec>.
38376808
38386809=end original
38396810
38406811(F) C<$ENV{PATH}>, C<$ENV{IFS}>, C<$ENV{CDPATH}>, C<$ENV{ENV}>,
3841C<$ENV{BASH_ENV}> のいずれかがユーザーによって提供された(あるいは
6812C<$ENV{BASH_ENV}>, C<$ENV{TERM}> のいずれかがユーザーによって提供された
3842提供された可能性のある)データの場合、setuid や setgid されたスクリプトでは
6813(あるいは提供された可能性のある)データの場合、setuid や setgid された
3843system(), exec(), パイプされる open を使うことはできません。
6814スクリプトでは system(), exec(), パイプされる open を
6815使うことはできません。
38446816スクリプトはパスとして、信頼の置けるデータを使った、既知の値を
38456817セットしなければなりません。
38466818L<perlsec> を参照してください。
38476819
6820=item Insecure user-defined property %s
6821
6822=begin original
6823
6824(F) Perl detected tainted data when trying to compile a regular
6825expression that contains a call to a user-defined character property
6826function, i.e. C<\p{IsFoo}> or C<\p{InFoo}>.
6827See L<perlunicode/User-Defined Character Properties> and L<perlsec>.
6828
6829=end original
6830
6831(F) Perl は、ユーザー定義文字特性関数 (C<\p{IsFoo}> や C<\p{InFoo}>) の
6832呼び出しを含む正規表現をコンパイルしようとしたときに汚染されたデータを
6833検出しました。
6834L<perlunicode/User-Defined Character Properties> と L<perlsec> を
6835参照してください。
6836
6837=item Integer overflow in format string for %s
6838
6839=begin original
6840
6841(F) The indexes and widths specified in the format string of C<printf()>
6842or C<sprintf()> are too large. The numbers must not overflow the size of
6843integers for your architecture.
6844
6845=end original
6846
6847(F) C<printf()> や C<sprintf()> のフォーマット文字列で指定されたインデックスや
6848幅が大きすぎます。
6849数値はあなたのアーキテクチャの整数のサイズをオーバーフローしないように
6850しなければなりません。
6851
38486852=item Integer overflow in %s number
38496853
38506854=begin original
38516855
3852(W overflow) The hexadecimal, octal or binary number you have specified
6856(S overflow) The hexadecimal, octal or binary number you have specified
38536857either as a literal or as an argument to hex() or oct() is too big for
38546858your architecture, and has been converted to a floating point number.
38556859On a 32-bit architecture the largest hexadecimal, octal or binary number
38566860representable without overflow is 0xFFFFFFFF, 037777777777, or
385768610b11111111111111111111111111111111 respectively. Note that Perl
38586862transparently promotes all numbers to a floating point representation
38596863internally--subject to loss of precision errors in subsequent
38606864operations.
38616865
38626866=end original
38636867
3864(W overflow) リテラルまたは hex() や oct() の引数として指定された 16 進、
6868(S overflow) リテラルまたは hex() や oct() の引数として指定された 16 進、
386568698 進、2 進数は実行しているアーキテクチャには大きすぎるので、浮動小数点数に
38666870変換されました。
3867687132 ビットアーキテクチャでは、オーバーフローせずに表現できる 16 進、8 進
386868722 進数はそれぞれ 0xFFFFFFFF, 037777777777,
386968730b11111111111111111111111111111111 です。
38706874Perl は全ての数値を内部では浮動小数点表現に透過的に変換することに
38716875注意してください -- 引き続く操作によって精度が失われることがあります。
38726876
3873=item Internal disaster before << HERE in regex m/%s/
6877=item Integer overflow in srand
38746878
38756879=begin original
38766880
6881(S overflow) The number you have passed to srand is too big to fit
6882in your architecture's integer representation. The number has been
6883replaced with the largest integer supported (0xFFFFFFFF on 32-bit
6884architectures). This means you may be getting less randomness than
6885you expect, because different random seeds above the maximum will
6886return the same sequence of random numbers.
6887
6888=end original
6889
6890(S overflow) srand に渡した数値は、現在のアーキテクチャの整数表現に
6891適合させるには大きすぎます。
6892数値は対応している最大の整数(32 ビットアーキテクチャでは 0xFFFFFFFF) に
6893置き換えられました。
6894これは、最大数よりも大きな異なった乱数の種が同じ乱数の並びを返すので、
6895想定しているよりもランダム性が低くなることを意味します。
6896
6897=item Integer overflow in version
6898
6899=item Integer overflow in version %d
6900
6901=begin original
6902
6903(W overflow) Some portion of a version initialization is too large for
6904the size of integers for your architecture. This is not a warning
6905because there is no rational reason for a version to try and use an
6906element larger than typically 2**32. This is usually caused by trying
6907to use some odd mathematical operation as a version, like 100/9.
6908
6909=end original
6910
6911(W overflow) バージョン初期化の一部が、アーキテクチャの整数のサイズより
6912大きすぎます。
6913バージョンとして典型的には 2**32 を超える要素を使おうとするための合理的な
6914理由がないので、これは警告ではありません。
6915これは普通、100/9 のようなおかしな数値演算をバージョンとして
6916使おうとしたことによります。
6917
6918=item Internal disaster in regex; marked by S<<-- HERE> in m/%s/
6919
6920=begin original
6921
38776922(P) Something went badly wrong in the regular expression parser.
3878The << HERE shows in the regular expression about where the problem was
6923The S<<-- HERE> shows whereabouts in the regular expression the problem was
38796924discovered.
38806925
38816926=end original
38826927
38836928(P) 正規表現解析部に何か悪いことが起こりました。
3884<< HERE で正規表現のどこに問題が発見されたかを示しています。
6929S<<-- HERE> で正規表現のどこに問題が発見されたかを示しています。
38856930
38866931=item Internal inconsistency in tracking vforks
38876932
38886933=begin original
38896934
38906935(S) A warning peculiar to VMS. Perl keeps track of the number of times
38916936you've called C<fork> and C<exec>, to determine whether the current call
38926937to C<exec> should affect the current script or a subprocess (see
38936938L<perlvms/"exec LIST">). Somehow, this count has become scrambled, so
38946939Perl is making a guess and treating this C<exec> as a request to
38956940terminate the Perl script and execute the specified command.
38966941
38976942=end original
38986943
3899(S) VMS 有の警告です。
6944(S) VMS に固有の警告です。
39006945Perl は C<fork> と C<exec> を呼び出した回数を数えています;
39016946これは現在の C<exec> 呼び出しが現在のスクリプトかサブプロセスかどちらに
39026947影響を与えるかを決定するためです(L<perlvms/"exec LIST"> を
39036948参照してください)。
39046949どういうわけか、このカウントがおかしくなったので、Perl はこの C<exec> が
39056950Perl スクリプトを終了させて指定されたコマンドを実行する要求であると
39066951仮定して、そのように扱いました。
39076952
3908=item Internal urp before << HERE in regex m/%s/
6953=item internal %<num>p might conflict with future printf extensions
39096954
39106955=begin original
39116956
3912(P) Something went badly awry in the regular expression parser. The <<<HERE
6957(S internal) Perl's internal routine that handles C<printf> and C<sprintf>
3913shows in the regular expression about where the problem was discovered.
6958formatting follows a slightly different set of rules when called from
6959C or XS code. Specifically, formats consisting of digits followed
6960by "p" (e.g., "%7p") are reserved for future use. If you see this
6961message, then an XS module tried to call that routine with one such
6962reserved format.
39146963
39156964=end original
39166965
6966(S internal) C<printf> と C<sprintf> のフォーマットを扱う Perl の
6967内部ルーチンは、C や XS コードから呼び出されたときは少し違う規則集合に
6968従います。
6969特に、数値に引き続いて "p" のあるフォーマット (例えば "%7p") は将来の
6970使用のために予約されています。
6971このメッセージが表示された場合、XS モジュールはこのような予約された
6972フォーマットを使って呼び出そうとしました。
6973
6974=item Internal urp in regex; marked by S<<-- HERE> in m/%s/
6975
6976=begin original
6977
6978(P) Something went badly awry in the regular expression parser. The
6979S<<-- HERE> shows whereabouts in the regular expression the problem was
6980discovered.
6981
6982=end original
6983
39176984(P) 正規表現解析部に何か間違ったことが起こりました。
3918<<<HERE で正規表現のどこに問題が発見されたかを示しています。
6985S<<-- HERE> で正規表現のどこに問題が発見されたかを示しています。
39196986
39206987=item %s (...) interpreted as function
39216988
39226989=begin original
39236990
39246991(W syntax) You've run afoul of the rule that says that any list operator
39256992followed by parentheses turns into a function, with all the list
3926operators arguments found inside the parentheses. See
6993operators arguments found inside the parentheses. See
39276994L<perlop/Terms and List Operators (Leftward)>.
39286995
39296996=end original
39306997
3931(W syntax) リスト演算子の直後に括弧を置くと、括弧内にあるリスト演算子引数を
6998(W syntax) リスト演算子の直後にかっこを置くと、かっこ内にある
3932持つ関数になる、という規則が適用されました。
6999リスト演算子引数を持つ関数になる、という規則が適用されました。
39337000L<perlop/Terms and List Operators (Leftward)> を参照してください。
39347001
7002=item In '(?...)', the '(' and '?' must be adjacent in regex;
7003marked by S<<-- HERE> in m/%s/
7004
7005=begin original
7006
7007(F) The two-character sequence C<"(?"> in this context in a regular
7008expression pattern should be an indivisible token, with nothing
7009intervening between the C<"("> and the C<"?">, but you separated them
7010with whitespace.
7011
7012=end original
7013
7014(F)
7015正規表現中のこのコンテキストでの 2 文字並び C<"(?"> は分割できないトークンで、
7016C<"("> と C<"?"> の間には何も入らないはずですが、これを空白で分割しました。
7017
7018=item In '(*...)', the '(' and '*' must be adjacent in regex;
7019marked by S<<-- HERE> in m/%s/
7020
7021=begin original
7022
7023(F) The two-character sequence C<"(*"> in this context in a regular
7024expression pattern should be an indivisible token, with nothing
7025intervening between the C<"("> and the C<"*">, but you separated them.
7026Fix the pattern and retry.
7027
7028=end original
7029
7030(F) 正規表現パターンの中のこの文脈での 2 文字並び C<"(*"> は、
7031C<"("> と C<"*"> の間に何も入っていない分割されていないトークンである
7032必要があります; しかしこれが分割されています。
7033パターンを修正してもう一度試してください。
7034
39357035=item Invalid %s attribute: %s
39367036
39377037=begin original
39387038
3939The indicated attribute for a subroutine or variable was not recognized
7039(F) The indicated attribute for a subroutine or variable was not recognized
39407040by Perl or by a user-supplied handler. See L<attributes>.
39417041
39427042=end original
39437043
3944示されたサブルーチンや変数の属性は
7044(F) 示されたサブルーチンや変数の属性は Perl やユーザー提供のハンドラで
3945Perl やユーザー提供のハンドラで認識されませんでした。
7045認識されませんでした。
39467046L<attributes> を参照してください。
39477047
39487048=item Invalid %s attributes: %s
39497049
39507050=begin original
39517051
3952The indicated attributes for a subroutine or variable were not
7052(F) The indicated attributes for a subroutine or variable were not
39537053recognized by Perl or by a user-supplied handler. See L<attributes>.
39547054
39557055=end original
39567056
3957示されたサブルーチンや変数の属性は
7057(F) 示されたサブルーチンや変数の属性は Perl やユーザー提供のハンドラで
3958Perl やユーザー提供のハンドラで認識されませんでした。
7058認識されませんでした。
39597059L<attributes> を参照してください。
39607060
7061=item Invalid character in charnames alias definition; marked by
7062S<<-- HERE> in '%s
7063
7064=begin original
7065
7066(F) You tried to create a custom alias for a character name, with
7067the C<:alias> option to C<use charnames> and the specified character in
7068the indicated name isn't valid. See L<charnames/CUSTOM ALIASES>.
7069
7070=end original
7071
7072(F) C<use charnames> の C<:alias> オプションで文字名へのカスタム別名を
7073作ろうとしましたが、指定された名前のうち示された文字は正当ではありません。
7074L<charnames/CUSTOM ALIASES> を参照してください。
7075
7076=item Invalid \0 character in %s for %s: %s\0%s
7077
7078=begin original
7079
7080(W syscalls) Embedded \0 characters in pathnames or other system call
7081arguments produce a warning as of 5.20. The parts after the \0 were
7082formerly ignored by system calls.
7083
7084=end original
7085
7086(W syscalls) パス名やその他のシステムコール引数に埋め込まれた \0 文字は
70875.20 から警告を出力するようになりました。
7088以前は \0 の後の部分はシステムコールによって無視されていました。
7089
7090=item Invalid character in \N{...}; marked by S<<-- HERE> in \N{%s}
7091
7092=begin original
7093
7094(F) Only certain characters are valid for character names. The
7095indicated one isn't. See L<charnames/CUSTOM ALIASES>.
7096
7097=end original
7098
7099(F) 文字名としては一部の文字のみが正当です。
7100示されたものは違います。
7101L<charnames/CUSTOM ALIASES> を参照してください。
7102
39617103=item Invalid conversion in %s: "%s"
39627104
39637105=begin original
39647106
39657107(W printf) Perl does not understand the given format conversion. See
39667108L<perlfunc/sprintf>.
39677109
39687110=end original
39697111
39707112(W printf) Perl は指定されたフォーマット変換が認識できませんでした。
39717113L<perlfunc/sprintf> を参照してください。
39727114
3973=item invalid [] range "%s" in regexp
7115=item Invalid escape in the specified encoding in regex; marked by
7116S<<-- HERE> in m/%s/
39747117
39757118=begin original
39767119
7120(W regexp)(F) The numeric escape (for example C<\xHH>) of value < 256
7121didn't correspond to a single character through the conversion
7122from the encoding specified by the encoding pragma.
7123The escape was replaced with REPLACEMENT CHARACTER (U+FFFD)
7124instead, except within S<C<(?[ ])>>, where it is a fatal error.
7125The S<<-- HERE> shows whereabouts in the regular expression the
7126escape was discovered.
7127
7128=end original
7129
7130(W regexp)(F) (例えば C<\xHH> のような)数値エスケープの 256 より小さい値が、
7131エンコーディングプラグマで指定した変換によって 一つの文字に対応していません。
7132エスケープは代わりに REPLACEMENT CHARACTER (U+FFFD) に置き換えられます;
7133ただし、S<C<(?[ ])>> の内側の場合は致命的エラーになります。
7134S<<-- HERE> で正規表現のどこにエスケープが発見されたかを示しています。
7135
7136=item Invalid hexadecimal number in \N{U+...}
7137
7138=item Invalid hexadecimal number in \N{U+...} in regex; marked by
7139S<<-- HERE> in m/%s/
7140
7141=begin original
7142
7143(F) The character constant represented by C<...> is not a valid hexadecimal
7144number. Either it is empty, or you tried to use a character other than
71450 - 9 or A - F, a - f in a hexadecimal number.
7146
7147=end original
7148
7149(F) C<...> で表現された文字定数は妥当な 16 進数ではありません。
7150空か、16 進数の中に 0 - 9, A - F, a - f 以外の文字を使おうとしました。
7151
7152=item Invalid module name %s with -%c option: contains single ':'
7153
7154=begin original
7155
7156(F) The module argument to perl's B<-m> and B<-M> command-line options
7157cannot contain single colons in the module name, but only in the
7158arguments after "=". In other words, B<-MFoo::Bar=:baz> is ok, but
7159B<-MFoo:Bar=baz> is not.
7160
7161=end original
7162
7163(F) perl の B<-m> と B<-M> のコマンドラインオプションでのモジュール引数は、
7164モジュール名では単一のコロンを含むことが出来ず、"=" の後でのみ含むことが
7165できます。
7166言い換えると、B<-MFoo::Bar=:baz> は OK ですが、B<-MFoo:Bar=baz> は
7167そうではありません。
7168
7169=item Invalid mro name: '%s'
7170
7171=begin original
7172
7173(F) You tried to C<mro::set_mro("classname", "foo")> or C<use mro 'foo'>,
7174where C<foo> is not a valid method resolution order (MRO). Currently,
7175the only valid ones supported are C<dfs> and C<c3>, unless you have loaded
7176a module that is a MRO plugin. See L<mro> and L<perlmroapi>.
7177
7178=end original
7179
7180(F) C<mro::set_mro("classname", "foo")> または C<use mro 'foo'> を使おうと
7181しましたが、C<foo> は有効なメソッド解決順序 (MRO) ではありません。
7182現在のところ、MRO プラグインモジュールを読み込まない限り、対応として
7183有効なものは C<dfs> と C<c3> だけです。
7184L<mro> と L<perlmroapi> を参照してください。
7185
7186=item Invalid negative number (%s) in chr
7187
7188=begin original
7189
7190(W utf8) You passed a negative number to C<chr>. Negative numbers are
7191not valid character numbers, so it returns the Unicode replacement
7192character (U+FFFD).
7193
7194=end original
7195
7196(W utf8) C<chr> に負数を渡しました。
7197負数は正当な文字番号ではないので、Unicode 代替文字 (U+FFFD) を返します。
7198
7199=item Invalid number '%s' for -C option.
7200
7201=begin original
7202
7203(F) You supplied a number to the -C option that either has extra leading
7204zeroes or overflows perl's unsigned integer representation.
7205
7206=end original
7207
7208(F) -C オプションに、前に 0 がついていたり、perl の符号なし整数表現を
7209オーバーフローするといったような数値を指定しました。
7210
7211=item invalid option -D%c, use -D'' to see choices
7212
7213=begin original
7214
7215(S debugging) Perl was called with invalid debugger flags. Call perl
7216with the B<-D> option with no flags to see the list of acceptable values.
7217See also L<perlrun/-Dletters>.
7218
7219=end original
7220
7221(F) Perl は不正なデバッガフラグで呼び出されました。
7222受け付けられる値の一覧を見るには、フラグなしの B<-D> オプションをつけて
7223perl を呼び出してください。
7224L<< perlrun/B<-D>I<letters> >> も参照してください。
7225
7226=item Invalid quantifier in {,} in regex; marked by S<<-- HERE> in m/%s/
7227
7228=begin original
7229
7230(F) The pattern looks like a {min,max} quantifier, but the min or max
7231could not be parsed as a valid number - either it has leading zeroes,
7232or it represents too big a number to cope with. The S<<-- HERE> shows
7233where in the regular expression the problem was discovered. See L<perlre>.
7234
7235=end original
7236
7237(F) パターンは {min,max} 量指定子のように見えますが、min または max が
7238正当な数値としてパースできませんでした - 先頭に 0 が付いているか、
7239数値として扱うには大きすぎます。
7240S<<-- HERE> で正規表現のどこに問題が発見されたかを示しています。
7241L<perlre> を参照してください。
7242
7243=item Invalid [] range "%s" in regex; marked by S<<-- HERE> in m/%s/
7244
7245=begin original
7246
39777247(F) The range specified in a character class had a minimum character
3978greater than the maximum character. See L<perlre>.
7248greater than the maximum character. One possibility is that you forgot the
7249C<{}> from your ending C<\x{}> - C<\x> without the curly braces can go only
7250up to C<ff>. The S<<-- HERE> shows whereabouts in the regular expression the
7251problem was discovered. See L<perlre>.
39797252
39807253=end original
39817254
39827255(F) 文字クラスに指定した範囲の最小値が、最大値よりも大きくなっています。
7256ひとつの可能性としては、末尾の C<\x{}> から C<{}> を
7257忘れているということです - 中かっこなしの C<\x> は C<ff> までにしか
7258なりません。
7259S<<-- HERE> で正規表現のどこに問題が発見されたかを示しています。
39837260L<perlre> を参照してください。
39847261
7262=item Invalid range "%s" in transliteration operator
7263
7264=begin original
7265
7266(F) The range specified in the tr/// or y/// operator had a minimum
7267character greater than the maximum character. See L<perlop>.
7268
7269=end original
7270
7271(F) tr/// や y/// の演算子での範囲指定で、最大の文字より最小の文字の方が
7272大きいです。
7273L<perlop> を参照してください。
7274
39857275=item Invalid separator character %s in attribute list
39867276
39877277=begin original
39887278
39897279(F) Something other than a colon or whitespace was seen between the
39907280elements of an attribute list. If the previous attribute had a
39917281parenthesised parameter list, perhaps that list was terminated too soon.
39927282See L<attributes>.
39937283
39947284=end original
39957285
39967286(F) 属性リストの要素の間にコロンと空白以外のものがあります。
39977287直前の属性がかっこ付きのパラメータリストの場合、おそらくリストが
39987288予定より早く終端されています。
39997289L<attributes> を参照してください。
40007290
4001=item Invalid type in pack: '%s'
7291=item Invalid separator character %s in PerlIO layer specification %s
40027292
40037293=begin original
40047294
4005(F) The given character is not a valid pack type. See L<perlfunc/pack>.
7295(W layer) When pushing layers onto the Perl I/O system, something other
4006(W pack) The given character is not a valid pack type but used to be
7296than a colon or whitespace was seen between the elements of a layer list.
4007silently ignored.
7297If the previous attribute had a parenthesised parameter list, perhaps that
7298list was terminated too soon.
40087299
40097300=end original
40107301
4011(F) 与えられた文字は有効な pack型ではありません。
7302(W layer) 層を Perl I/O システムに押し込むときに、層リスト要素の間に
4012L<perlfunc/pack> を参照てください
7303コロンと空白以外のものがありま
4013(W pack) 与えられた文字は有効な pack 型ではありませんが、暗黙に
7304直前属性かっこ付きのパラメータリストの場合おそらくリストが
4014無視されました
7305予定より早く終端されてい
40157306
4016=item Invalid type in unpack: '%s'
7307=item Invalid strict version format (%s)
40177308
40187309=begin original
40197310
4020(F) The given character is not a valid unpack type. See
7311(F) A version number did not meet the "strict" criteria for versions.
4021L<perlfunc/unpack>.
7312A "strict" version number is a positive decimal number (integer or
4022(W unpack) The given character is not a valid unpack type but used to be
7313decimal-fraction) without exponentiation or else a dotted-decimal
7314v-string with a leading 'v' character and at least three components.
7315The parenthesized text indicates which criteria were not met.
7316See the L<version> module for more details on allowed version formats.
7317
7318=end original
7319
7320(F) バージョン番号がバージョンの「厳密な」基準に一致しませんでした。
7321「厳密な」バージョン番号は、指数なしの正の 10 進数 (整数または 10 進小数)か、
7322さもなければどっと付き 10 進 v-文字列で先頭に 'v' の文字があり、少なくとも
7323三つの部分からなるものです。
7324かっこで囲まれたテキストは問題の基準を示しています。
7325許されるバージョンオブジェクトに関するさらなる詳細については
7326L<version> モジュールを参照してください。
7327
7328=item Invalid type '%s' in %s
7329
7330=begin original
7331
7332(F) The given character is not a valid pack or unpack type.
7333See L<perlfunc/pack>.
7334
7335=end original
7336
7337(F) 与えられた文字は有効な pack や unpack の型ではありません。
7338L<perlfunc/pack> を参照してください。
7339
7340=begin original
7341
7342(W) The given character is not a valid pack or unpack type but used to be
40237343silently ignored.
40247344
40257345=end original
40267346
4027(F) 与えられた文字は有効な unpack の型ではありません
7347(W) 与えられた文字は有効な pack や unpack の型ではありませんが、暗黙に
4028L<perlfunc/unpack> を参照してください。
4029(W unpack) 与えられた文字は有効な unpack の型ではありませんが、暗黙に
40307348無視されました。
40317349
7350=item Invalid version format (%s)
7351
7352=begin original
7353
7354(F) A version number did not meet the "lax" criteria for versions.
7355A "lax" version number is a positive decimal number (integer or
7356decimal-fraction) without exponentiation or else a dotted-decimal
7357v-string. If the v-string has fewer than three components, it
7358must have a leading 'v' character. Otherwise, the leading 'v' is
7359optional. Both decimal and dotted-decimal versions may have a
7360trailing "alpha" component separated by an underscore character
7361after a fractional or dotted-decimal component. The parenthesized
7362text indicates which criteria were not met. See the L<version> module
7363for more details on allowed version formats.
7364
7365=end original
7366
7367(F) バージョン番号がバージョンの「緩い」基準に一致しませんでした。
7368「緩い」バージョン番号は指数なしの正の 10 進数(整数または 10 進小数)か、
7369あるいはどっと付き 10 進 v-文字列です。
7370v-文字列の要素が三つ未満の場合、先頭に 'v' 文字が必要です。
7371さもなければ、先頭の 'v' はオプションです。
737210 進とドット付き 10 進の両方のバージョンは、小数またはドット付き 10 進
7373要素の後に下線で区切られた「α」要素が引き続くこともあります。
7374かっこで囲まれたテキストは問題の基準を示しています。
7375許されるバージョンオブジェクトに関するさらなる詳細については
7376L<version> モジュールを参照してください。
7377
7378=item Invalid version object
7379
7380=begin original
7381
7382(F) The internal structure of the version object was invalid.
7383Perhaps the internals were modified directly in some way or
7384an arbitrary reference was blessed into the "version" class.
7385
7386=end original
7387
7388(F) バージョンオブジェクトの内部構造が不正です。
7389おそらく何らかの方法で内部が直接変更されたか、任意のリファレンスが
7390"version" クラスとして bless されました。
7391
7392=item In '(*VERB...)', the '(' and '*' must be adjacent in regex;
7393marked by S<<-- HERE> in m/%s/
7394
7395=begin original
7396
7397(F) The two-character sequence C<"(*"> in this context in a regular
7398expression pattern should be an indivisible token, with nothing
7399intervening between the C<"("> and the C<"*">, but you separated them.
7400
7401=end original
7402
7403(F) 正規表現中のこのコンテキストでの 2 文字並び C<"(*"> は分割できない
7404トークンで、C<"("> と C<"*"> の間には何も入らないはずですが、これを
7405分割しました。
7406
40327407=item ioctl is not implemented
40337408
40347409=begin original
40357410
40367411(F) Your machine apparently doesn't implement ioctl(), which is pretty
40377412strange for a machine that supports C.
40387413
40397414=end original
40407415
40417416(F) C をサポートしているマシンではおかしなことだと思いますが、
40427417このマシンでは ioctl() が実装されていないようです。
40437418
4044=item `%s' is not a code reference
7419=item ioctl() on unopened %s
40457420
40467421=begin original
40477422
4048(W) The second (fourth, sixth, ...) argument of overload::constant needs
7423(W unopened) You tried ioctl() on a filehandle that was never opened.
4049to be a code reference. Either an anonymous subroutine, or a reference
7424Check your control flow and number of arguments.
4050to a subroutine.
40517425
40527426=end original
40537427
4054(W) overload::constant 2 番目 (4 番目、6 番目, ...) の引数はコード
7428(W unopened) 開いていないファイルハンドルに ioctl() を使おうとしました。
4055ァレンスである必要があります
7429制御ローと引数の数をチェックしてください
7430
7431=item IO layers (like '%s') unavailable
7432
7433=begin original
7434
7435(F) Your Perl has not been configured to have PerlIO, and therefore
7436you cannot use IO layers. To have PerlIO, Perl must be configured
7437with 'useperlio'.
7438
7439=end original
7440
7441(F) この Perl は PerlIO を使うように設定されていないので、IO 層は使えません。
7442PerlIO を使うには、'useperlio' 付きで設定する必要があります。
7443
7444=item IO::Socket::atmark not implemented on this architecture
7445
7446=begin original
7447
7448(F) Your machine doesn't implement the sockatmark() functionality,
7449neither as a system call nor an ioctl call (SIOCATMARK).
7450
7451=end original
7452
7453(F) 実行されているマシンでは、システムコールでも
7454ioctl コール(SIOCATMARK) でも sockatmark() 機能が実装されていません。
7455
7456=item '%s' is an unknown bound type in regex; marked by S<<-- HERE> in m/%s/
7457
7458=begin original
7459
7460(F) You used C<\b{...}> or C<\B{...}> and the C<...> is not known to
7461Perl. The current valid ones are given in
7462L<perlrebackslash/\b{}, \b, \B{}, \B>.
7463
7464=end original
7465
7466(F) あなたは C<\b{...}> または C<\B{...}> を使いましたが C<...> は
7467Perl が知らないものでした。
7468現在有効なものは L<perlrebackslash/\b{}, \b, \B{}, \B> にあるものです。
7469
7470=item %s() is deprecated on :utf8 handles. This will be a fatal error in Perl 5.30
7471
7472=begin original
7473
7474(D deprecated) The sysread(), recv(), syswrite() and send() operators are
7475deprecated on handles that have the C<:utf8> layer, either explicitly, or
7476implicitly, eg., with the C<:encoding(UTF-16LE)> layer.
7477
7478=end original
7479
7480(D deprecated) sysread(), recv(), syswrite() and send() 演算子は、
7481明示的あるいは C<:encoding(UTF-16LE)> 層のような暗黙的かに関わらず、
7482C<:utf8> 層を持つハンドルに対しては廃止予定です。
7483
7484=begin original
7485
7486Both sysread() and recv() currently use only the C<:utf8> flag for the stream,
7487ignoring the actual layers. Since sysread() and recv() do no UTF-8
7488validation they can end up creating invalidly encoded scalars.
7489
7490=end original
7491
7492sysread() と recv() は現在の所ストリームに対して C<:utf8> フラグのみを
7493使い、実際の層は無視します。
7494sysread() と recv() は UTF-8 の検証を行わないので、
7495不正にエンコードされたスカラを作ることになる可能性があります。
7496
7497=begin original
7498
7499Similarly, syswrite() and send() use only the C<:utf8> flag, otherwise ignoring
7500any layers. If the flag is set, both write the value UTF-8 encoded, even if
7501the layer is some different encoding, such as the example above.
7502
7503=end original
7504
7505同様に、syswrite() は send() C<:utf8> フラグのみを使い、
7506それ以外は全ての層を無視します。
7507フラグがセットされると、例え層が前述の例のように異なった
7508エンコーディングでも、UTF-8 エンコードされた値を書き込みます。
7509
7510=begin original
7511
7512Ideally, all of these operators would completely ignore the C<:utf8> state,
7513working only with bytes, but this would result in silently breaking existing
7514code.
7515
7516=end original
7517
7518理想的には、これらの演算子全ては完全に C<:utf8> 状態を無視して
7519バイトに対してのみ動作するべきですが、これは既存のコードを暗黙に
7520壊すことになります。
7521
7522=begin original
7523
7524In Perl 5.30, it will no longer be possible to use sysread(), recv(),
7525syswrite() or send() to read or send bytes from/to :utf8 handles.
7526
7527=end original
7528
7529Perl 5.30 で、:utf8 ハンドルを使って sysread(), recv(), syswrite(), send() で
7530バイトを読み書きすることはもはやできなくなる予定です。
7531
7532=item "%s" is more clearly written simply as "%s" in regex; marked by S<<-- HERE> in m/%s/
7533
7534=begin original
7535
7536(W regexp) (only under C<S<use re 'strict'>> or within C<(?[...])>)
7537
7538=end original
7539
7540(W regexp) (C<S<use re 'strict'>> の基か C<(?[...])> の内側のみ)
7541
7542=begin original
7543
7544You specified a character that has the given plainer way of writing it, and
7545which is also portable to platforms running with different character sets.
7546
7547=end original
7548
7549それを書くのにより平坦な方法があり、さらに異なる文字集合で実行される
7550プラットフォーム間で移植性のある文字を指定しました。
7551
7552=item $* is no longer supported. Its use will be fatal in Perl 5.30
7553
7554=begin original
7555
7556(D deprecated, syntax) The special variable C<$*>, deprecated in older
7557perls, has been removed as of 5.10.0 and is no longer supported. In
7558previous versions of perl the use of C<$*> enabled or disabled multi-line
7559matching within a string.
7560
7561=end original
7562
7563(D deprecated, syntax) より古い perl で廃止予定とされた特殊変数 C<$*> は
75645.10.0 で削除され、もはや対応していません。
7565以前のバージョンの perl では、C<$*> は文字列中の複数行マッチングを有効または
7566無効にするために使っていました。
7567
7568=begin original
7569
7570Instead of using C<$*> you should use the C</m> (and maybe C</s>) regexp
7571modifiers. You can enable C</m> for a lexical scope (even a whole file)
7572with C<use re '/m'>. (In older versions: when C<$*> was set to a true value
7573then all regular expressions behaved as if they were written using C</m>.)
7574
7575=end original
7576
7577C<$*> を使う代わりに、C</m> (とおそらく C</s>) 正規表現修飾子を
7578使うべきです。
7579C<use re '/m'> でレキシカルスコープで (ファイル全体でも) C</m> を
7580有効にできます。
7581(より古いバージョンでは: C<$*> を真の値に設定すると全ての正規表現は
7582C</m> を使って書かれたかのように振る舞っていました。)
7583
7584=begin original
7585
7586Use of this variable will be a fatal error in Perl 5.30.
7587
7588=end original
7589
7590この変数の使用は Perl 5.30 から致命的エラーになります。
7591
7592=item $# is no longer supported. Its use will be fatal in Perl 5.30
7593
7594=begin original
7595
7596(D deprecated, syntax) The special variable C<$#>, deprecated in older
7597perls, has been removed as of 5.10.0 and is no longer supported. You
7598should use the printf/sprintf functions instead.
7599
7600=end original
7601
7602(D deprecated, syntax) より古い perl で廃止予定とされた特殊変数 C<$#> は
76035.10.0 で削除され、もはや対応していません。
7604代わりに printf/sprintf 関数を使うべきです。
7605
7606=begin original
7607
7608Use of this variable will be a fatal error in Perl 5.30.
7609
7610=end original
7611
7612この変数の使用は Perl 5.30 から致命的エラーになります。
7613
7614=item '%s' is not a code reference
7615
7616=begin original
7617
7618(W overload) The second (fourth, sixth, ...) argument of
7619overload::constant needs to be a code reference. Either
7620an anonymous subroutine, or a reference to a subroutine.
7621
7622=end original
7623
7624(W overload) overload::constant の 2 番目 (4 番目、6 番目, ...) の引数は
7625コードリファレンスである必要があります。
40567626無名サブルーチンか、サブルーチンへのリファレンスです。
40577627
4058=item `%s' is not an overloadable type
7628=item '%s' is not an overloadable type
40597629
40607630=begin original
40617631
4062(W) You tried to overload a constant type the overload package is unaware of.
7632(W overload) You tried to overload a constant type the overload package is
7633unaware of.
40637634
40647635=end original
40657636
4066(W) オーバーロードパッケージが知らない定数型をオーバーロードしようとしました。
7637(W overload) オーバーロードパッケージが知らない定数型を
7638オーバーロードしようとしました。
40677639
4068=item junk on end of regexp
7640=item -i used with no filenames on the command line, reading from STDIN
40697641
40707642=begin original
40717643
7644(S inplace) The C<-i> option was passed on the command line, indicating
7645that the script is intended to edit files in place, but no files were
7646given. This is usually a mistake, since editing STDIN in place doesn't
7647make sense, and can be confusing because it can make perl look like
7648it is hanging when it is really just trying to read from STDIN. You
7649should either pass a filename to edit, or remove C<-i> from the command
7650line. See L<perlrun> for more details.
7651
7652=end original
7653
7654(S inplace) The C<-i> オプションがコマンドラインで渡されました; これは
7655スクリプトがファイルをその場で編集することを示していますが、ファイルが
7656指定されませんでした。
7657これは普通はミスです; STDIN をその場で編集するというのは無意味ですし、
7658本当に単に STDIN から読み込もうとしているだけのときに perl が
7659ハングしているように見えることがあるので混乱を引き起こします。
7660編集するファイル名を指定するか、コマンドラインから C<-i> を
7661取り除いてください。
7662さらなる詳細については L<perlrun> を参照してください。
7663
7664=item Junk on end of regexp in regex m/%s/
7665
7666=begin original
7667
40727668(P) The regular expression parser is confused.
40737669
40747670=end original
40757671
40767672(P) 正規表現の構文解析ができなくなりました。
40777673
40787674=item Label not found for "last %s"
40797675
40807676=begin original
40817677
40827678(F) You named a loop to break out of, but you're not currently in a loop
40837679of that name, not even if you count where you were called from. See
40847680L<perlfunc/last>.
40857681
40867682=end original
40877683
40887684(F) 脱出するループを指定しましたが、その名前のループの中にいません、
40897685たとえ、呼び出された場所がそうであっても、今はそうではありません。
40907686L<perlfunc/last> を参照してください。
40917687
40927688=item Label not found for "next %s"
40937689
40947690=begin original
40957691
40967692(F) You named a loop to continue, but you're not currently in a loop of
40977693that name, not even if you count where you were called from. See
40987694L<perlfunc/last>.
40997695
41007696=end original
41017697
4102(F) 次の繰り返しを行なうループを指定しましたが、
7698(F) 次の繰り返しを行なうループを指定しましたが、その名前のループの中に
4103その名前のループの中にいません。
7699ません; たとえ、呼び出された場所がそうであっても、今はそうではありません。
4104たとえ、呼び出された場所がそうであっても、今はそうではありません。
41057700L<perlfunc/last> を参照してください。
41067701
41077702=item Label not found for "redo %s"
41087703
41097704=begin original
41107705
41117706(F) You named a loop to restart, but you're not currently in a loop of
41127707that name, not even if you count where you were called from. See
41137708L<perlfunc/last>.
41147709
41157710=end original
41167711
4117(F) 繰り返しの再実行を行なうループを指定しましたが、
7712(F) 繰り返しの再実行を行なうループを指定しましたが、その名前のループの中に
4118その名前のループの中にいません。
7713ません; たとえ、呼び出された場所がそうであっても、今はそうではありません。
4119たとえ、呼び出された場所がそうであっても、今はそうではありません。
41207714L<perlfunc/last> を参照してください。
41217715
41227716=item leaving effective %s failed
41237717
41247718=begin original
41257719
41267720(F) While under the C<use filetest> pragma, switching the real and
41277721effective uids or gids failed.
41287722
41297723=end original
41307724
41317725(F) C<use filetest> プラグマを使っている間に、
41327726実と実効の UID や GID の切り替えに失敗しました。
41337727
7728=item length/code after end of string in unpack
7729
7730=begin original
7731
7732(F) While unpacking, the string buffer was already used up when an unpack
7733length/code combination tried to obtain more data. This results in
7734an undefined value for the length. See L<perlfunc/pack>.
7735
7736=end original
7737
7738(F) unpack する間、さらなるデータを取り出すために長さ/コードの組み合わせを
7739unpack するときに文字列バッファが既に使い切っていました。
7740これにより、長さが未定義値となります。
7741L<perlfunc/pack> を参照してください。
7742
7743=item length() used on %s (did you mean "scalar(%s)"?)
7744
7745=begin original
7746
7747(W syntax) You used length() on either an array or a hash when you
7748probably wanted a count of the items.
7749
7750=end original
7751
7752(W syntax) おそらくアイテムの数を知りたいときに配列やハッシュに対して
7753length() を使いました。
7754
7755=begin original
7756
7757Array size can be obtained by doing:
7758
7759=end original
7760
7761配列の大きさは以下のようにして得られます:
7762
7763 scalar(@array);
7764
7765=begin original
7766
7767The number of items in a hash can be obtained by doing:
7768
7769=end original
7770
7771ハッシュの要素数は以下のようにして得られます:
7772
7773 scalar(keys %hash);
7774
7775=item Lexing code attempted to stuff non-Latin-1 character into Latin-1 input
7776
7777=begin original
7778
7779(F) An extension is attempting to insert text into the current parse
7780(using L<lex_stuff_pvn|perlapi/lex_stuff_pvn> or similar), but tried to insert a character that
7781couldn't be part of the current input. This is an inherent pitfall
7782of the stuffing mechanism, and one of the reasons to avoid it. Where
7783it is necessary to stuff, stuffing only plain ASCII is recommended.
7784
7785=end original
7786
7787(F) エクステンションが(L<lex_stuff_pvn|perlapi/lex_stuff_pvn> や
7788同様なものを使って)現在のパースにテキストを挿入しようとしましたが、
7789現在の入力の一部となることができない文字を挿入しようとしました。
7790これは詰め物機構の生来の落とし穴で、これを避けるための理由の一つです。
7791詰め物が必要なところでは、プレーン ASCII のみを詰めることを推奨します。
7792
7793=item Lexing code internal error (%s)
7794
7795=begin original
7796
7797(F) Lexing code supplied by an extension violated the lexer's API in a
7798detectable way.
7799
7800=end original
7801
7802(F) エクステンションによって供給された文法解析コードが、検出できる方法で
7803文法解析器の API に違反しています。
7804
41347805=item listen() on closed socket %s
41357806
41367807=begin original
41377808
41387809(W closed) You tried to do a listen on a closed socket. Did you forget
41397810to check the return value of your socket() call? See
41407811L<perlfunc/listen>.
41417812
41427813=end original
41437814
41447815(W closed) クローズされたソケットに listen を行なおうとしました。
41457816socket() の呼び出し時に、返却値のチェックを忘れたのではありませんか。
41467817L<perlfunc/listen> を参照してください。
41477818
4148=item Lookbehind longer than %d not implemented at {#} mark in regex %s
7819=item List form of piped open not implemented
41497820
41507821=begin original
41517822
4152There is an upper limit to the depth of lookbehind in the (?<=
7823(F) On some platforms, notably Windows, the three-or-more-arguments
4153regular expression construct.
7824form of C<open> does not support pipes, such as C<open($pipe, '|-', @args)>.
7825Use the two-argument C<open($pipe, '|prog arg1 arg2...')> form instead.
41547826
41557827=end original
41567828
4157(?<= 正規表現構造で前方参照の深さには上限があります。
7829(F) 一部プラットフォーム、特 Windows で
7830C<open($pipe, '|-', @args)> のような、3 以上の引数の形式の
7831C<open> ではパイプに対応していません。
7832代わりに 2 引数 C<open($pipe, '|prog arg1 arg2...')> 形式を使ってください。
41587833
4159=item Lvalue subs returning %s not implemented yet
7834=item Literal vertical space in [] is illegal except under /x in regex;
7835marked by S<<-- HERE> in m/%s/
41607836
41617837=begin original
41627838
4163(F) Due to limitations in the current implementation, array and hash
7839(F) (only under C<S<use re 'strict'>> or within C<(?[...])>)
4164values cannot be returned in subroutines used in lvalue context. See
4165L<perlsub/"Lvalue subroutines">.
41667840
41677841=end original
41687842
4169(F) 現在実装の制限により左辺値コンテキストで使われるサブルーチン
7843(F) (C<S<use re 'strict'>> また C<(?[...])> の中のみ)
4170配列とハッシュの値を返すことができません。
4171L<perlsub/"Lvalue subroutines"> を参照してください。
41727844
4173=item Lookbehind longer than %d not implemented before << HERE %s
7845=begin original
41747846
7847Likely you forgot the C</x> modifier or there was a typo in the pattern.
7848For example, did you really mean to match a form-feed? If so, all the
7849ASCII vertical space control characters are representable by escape
7850sequences which won't present such a jarring appearance as your pattern
7851does when displayed.
7852
7853=end original
7854
7855おそらく C</x> 修飾子を忘れたか、パターンの中にタイプミスがあるのでしょう。
7856例えば、本当に改ページとマッチングしたかったのですか?
7857もしそうなら、全ての ASCII の垂直スペース制御文字は、
7858パターンを表示したときに不愉快な形で表現されることのない、
7859エスケープシーケンスによって表現できます。
7860
7861 \r carriage return
7862 \f form feed
7863 \n line feed
7864 \cK vertical tab
7865
7866=item %s: loadable library and perl binaries are mismatched (got handshake key %p, needed %p)
7867
41757868=begin original
41767869
7870(P) A dynamic loading library C<.so> or C<.dll> was being loaded into the
7871process that was built against a different build of perl than the
7872said library was compiled against. Reinstalling the XS module will
7873likely fix this error.
7874
7875=end original
7876
7877(P) 動的ロードライブラリ C<.so> が C<.dll> が、ライブラリが
7878コンパイルされたとするビルドと異なるビルドの perl に対して読み込まれました。
7879XS モジュールを再インストールすることでおそらくこのエラーは
7880修正されるでしょう。
7881
7882=item Locale '%s' contains (at least) the following characters which
7883have unexpected meanings: %s The Perl program will use the expected
7884meanings
7885
7886=begin original
7887
7888(W locale) You are using the named UTF-8 locale. UTF-8 locales are
7889expected to have very particular behavior, which most do. This message
7890arises when perl found some departures from the expectations, and is
7891notifying you that the expected behavior overrides these differences.
7892In some cases the differences are caused by the locale definition being
7893defective, but the most common causes of this warning are when there are
7894ambiguities and conflicts in following the Standard, and the locale has
7895chosen an approach that differs from Perl's.
7896
7897=end original
7898
7899(W locale) 名前付きの UTF-8 ロケールを使っています。
7900UTF-8 ロケールは、ほとんどの人がするような、とても特殊な振る舞いをすることが
7901想定されています。
7902このメッセージは、perl がこの想定との違いを発見し、その違いを
7903想定される振る舞いで上書きしたことを通知するときに発生します。
7904違いはロケール定義に問題があることによる場合もありますが、
7905この警告のもっとも一般的な原因は、標準に従う際に曖昧さや衝突があり、
7906ロケールが Perl のものと異なる手法を選んだときです。
7907
7908=begin original
7909
7910One of these is because that, contrary to the claims, Unicode is not
7911completely locale insensitive. Turkish and some related languages
7912have two types of C<"I"> characters. One is dotted in both upper- and
7913lowercase, and the other is dotless in both cases. Unicode allows a
7914locale to use either the Turkish rules, or the rules used in all other
7915instances, where there is only one type of C<"I">, which is dotless in
7916the uppercase, and dotted in the lower. The perl core does not (yet)
7917handle the Turkish case, and this message warns you of that. Instead,
7918the L<Unicode::Casing> module allows you to mostly implement the Turkish
7919casing rules.
7920
7921=end original
7922
7923その一つは、主張に反して、Unicode が完全にロケールに依存しない
7924訳ではないからです。
7925トルコ語およびいくつかの関連言語は、2 種類の C<"I"> 文字があります。
7926一つは大文字と小文字の両方でドットがあり、もう一つは両方ともドットが
7927ありません。
7928Unicode はロケールがトルコ語の規則と、その他全ての場合に
7929使われる規則、つまり一種類の C<"I"> だけで、大文字ではドットがなく、
7930小文字にはドットがあるもの、のどちらを使うことも許しています。
7931perl コアは (まだ) トルコ語のケースを扱えず、このメッセージはそれを
7932警告します。
7933代わりに、L<Unicode::Casing> モジュールはトルコ語のケース規則をほぼ
7934実装しています。
7935
7936=begin original
7937
7938The other common cause is for the characters
7939
7940=end original
7941
7942その他のよくある原因は次の文字です:
7943
7944 $ + < = > ^ ` | ~
7945
7946=begin original
7947
7948These are probematic. The C standard says that these should be
7949considered punctuation in the C locale (and the POSIX standard defers to
7950the C standard), and Unicode is generally considered a superset of
7951the C locale. But Unicode has added an extra category, "Symbol", and
7952classifies these particular characters as being symbols. Most UTF-8
7953locales have them treated as punctuation, so that L<ispunct(2)> returns
7954non-zero for them. But a few locales have it return 0. Perl takes
7955the first approach, not using C<ispunct()> at all (see L<Note [5] in
7956perlrecharclass|perlrecharclass/[5]>), and this message is raised to notify you that you
7957are getting Perl's approach, not the locale's.
7958
7959=end original
7960
7961これらには問題があります。
7962C 標準は、これらは C ロケールでは句読点として扱うよう規定されていて
7963(そして POSIX 標準は C 標準に従います)、Unicode は一般的に C ロケールの
7964上位集合と考えられています。
7965しかし Unicode は、"Symbol" というカテゴリが追加され、
7966これはこれらの文字をシンボルとして分類しています。
7967ほとんどの UTF-8 ロケールはこれらを句読点として扱うので、
7968L<ispunct(2)> はこれらに対して非 0 を返します。
7969しかしいくつかのロケールでは 0 を返します。
7970Perl は最初の手法をとり、C<ispunct()> を全く使わず ( L<Note [5] in
7971perlrecharclass|perlrecharclass/[5]> 参照)、
7972このメッセージはロケールのものではなく Perl の手法をとったことを
7973知らせるために発生します。
7974
7975=item Locale '%s' may not work well.%s
7976
7977=begin original
7978
7979(W locale) You are using the named locale, which is a non-UTF-8 one, and
7980which perl has determined is not fully compatible with what it can
7981handle. The second C<%s> gives a reason.
7982
7983=end original
7984
7985(W locale) 非 UTF-8 の名前付きロケールを使っていますが、
7986perl はこれを扱うのに完全な互換性のあるものを決定できませんでした。
79872 番目の C<%s> に理由があります。
7988
7989=begin original
7990
7991By far the most common reason is that the locale has characters in it
7992that are represented by more than one byte. The only such locales that
7993Perl can handle are the UTF-8 locales. Most likely the specified locale
7994is a non-UTF-8 one for an East Asian language such as Chinese or
7995Japanese. If the locale is a superset of ASCII, the ASCII portion of it
7996may work in Perl.
7997
7998=end original
7999
8000もっともありそうな理由は、そのロケールが複数バイトで表現される文字を
8001持っていることです。
8002Perl が扱えるそのようなロケールで唯一のものは UTF-8 ロケールです。
8003もっともありそうな指定されたロケールは、中国や日本のような東アジア言語の
8004非 UTF-8 のものです。
8005ロケールが ASCII の上位集合の場合、ASCII の部分は Perl で動作するでしょう。
8006
8007=begin original
8008
8009Some essentially obsolete locales that aren't supersets of ASCII, mainly
8010those in ISO 646 or other 7-bit locales, such as ASMO 449, can also have
8011problems, depending on what portions of the ASCII character set get
8012changed by the locale and are also used by the program.
8013The warning message lists the determinable conflicting characters.
8014
8015=end original
8016
8017ASCII の上位集合でない、主に ISO 646 のものや、ASMO 449 のような
8018その他の 7 ビットロケールも問題になり得ます;
8019ASCII 文字集合のどの部分がロケールによって変更されるか、およびプログラムで
8020使われるかによります。
8021警告メッセージは決定できる衝突している文字を一覧表示します。
8022
8023=begin original
8024
8025Note that not all incompatibilities are found.
8026
8027=end original
8028
8029全ての非互換性が発見されるわけではないことに注意してください。
8030
8031=begin original
8032
8033If this happens to you, there's not much you can do except switch to use a
8034different locale or use L<Encode> to translate from the locale into
8035UTF-8; if that's impracticable, you have been warned that some things
8036may break.
8037
8038=end original
8039
8040これが起きた場合、異なるロケールを使うように変更するか、
8041そのロケールから UTF-8 に変換するために L<Encode> を使う以外に
8042できることはあまりありません; もしそれができないなら、
8043あなたは何かが壊れるかもしれないことを警告されました。
8044
8045=begin original
8046
8047This message is output once each time a bad locale is switched into
8048within the scope of C<S<use locale>>, or on the first possibly-affected
8049operation if the C<S<use locale>> inherits a bad one. It is not raised
8050for any operations from the L<POSIX> module.
8051
8052=end original
8053
8054このメッセージは、C<S<use locale>> のスコープ内で悪いロケールに切り替わった
8055毎に、あるいは C<S<use locale>> が悪いものを継承している場合は
8056最初の影響があるかもしれない操作の時点で出力されます。
8057これは L<POSIX> モジュールの操作では発生しません。
8058
8059=item localtime(%f) failed
8060
8061=begin original
8062
8063(W overflow) You called C<localtime> with a number that it could not handle:
8064too large, too small, or NaN. The returned value is C<undef>.
8065
8066=end original
8067
8068(W overflow) 扱えない数値で C<localtime> を呼び出しました: 大きすぎたり
8069小さすぎたり NaN だったりです。
8070返り値は C<undef> です。
8071
8072=item localtime(%f) too large
8073
8074=begin original
8075
8076(W overflow) You called C<localtime> with a number that was larger
8077than it can reliably handle and C<localtime> probably returned the
8078wrong date. This warning is also triggered with NaN (the special
8079not-a-number value).
8080
8081=end original
8082
8083(W overflow) 信頼して扱えるよりも大きな数値で C<localtime> を呼び出したので
8084C<localtime> はおそらく間違った日付を返します。
8085この警告は、NaN (特殊な非数) でも引き起こされます。
8086
8087=item localtime(%f) too small
8088
8089=begin original
8090
8091(W overflow) You called C<localtime> with a number that was smaller
8092than it can reliably handle and C<localtime> probably returned the
8093wrong date.
8094
8095=end original
8096
8097(W overflow) 信頼して扱えるよりも小さな数値で C<localtime> を呼び出したので
8098C<localtime> はおそらく間違った日付を返します。
8099
8100=item Lookbehind longer than %d not implemented in regex m/%s/
8101
8102=begin original
8103
41778104(F) There is currently a limit on the length of string which lookbehind can
4178handle. This restriction may be eased in a future release. The << HERE shows in
8105handle. This restriction may be eased in a future release.
4179the regular expression about where the problem was discovered.
41808106
41818107=end original
41828108
4183現在のところ前方参照が扱える文字列の長さには制限があります。
8109(F) 現在のところ前方参照が扱える文字列の長さには制限があります。
41848110この制限は将来のリリースでは緩和されるでしょう。
4185<< HERE で正規表現のどこに問題が発見されたかを示しています。
41868111
8112=item Lost precision when %s %f by 1
8113
8114=begin original
8115
8116(W imprecision) The value you attempted to increment or decrement by one
8117is too large for the underlying floating point representation to store
8118accurately, hence the target of C<++> or C<--> is unchanged. Perl issues this
8119warning because it has already switched from integers to floating point
8120when values are too large for integers, and now even floating point is
8121insufficient. You may wish to switch to using L<Math::BigInt> explicitly.
8122
8123=end original
8124
8125(W imprecision) インクリメントまたはデクリメントしようとしている値は、
8126基礎となっている浮動小数点数表現にとって正確に保管するには大きすぎるので、
8127C<++> や C<--> のターゲットは変更されません。
8128Perl は既に値が整数として大きすぎる時には整数から浮動小数点数に
8129切り替えていて、浮動小数点数でも不十分なときにこの警告を出力します。
8130明示的に L<Math::BigInt> を使うように切り替えたいかもしれません。
8131
8132=item lstat() on filehandle%s
8133
8134=begin original
8135
8136(W io) You tried to do an lstat on a filehandle. What did you mean
8137by that? lstat() makes sense only on filenames. (Perl did a fstat()
8138instead on the filehandle.)
8139
8140=end original
8141
8142(W io) ファイルハンドルに lstat を実行しようとしました。
8143これで何をしようとしたのですか?
8144lstat() はファイル名に対してのみ意味があります。
8145(Perl はファイルハンドルには代わりに fstat() を行いました。)
8146
8147=item lvalue attribute %s already-defined subroutine
8148
8149=begin original
8150
8151(W misc) Although L<attributes.pm|attributes> allows this, turning the lvalue
8152attribute on or off on a Perl subroutine that is already defined
8153does not always work properly. It may or may not do what you
8154want, depending on what code is inside the subroutine, with exact
8155details subject to change between Perl versions. Only do this
8156if you really know what you are doing.
8157
8158=end original
8159
8160(W misc) L<attributes.pm|attributes> ではこれは許されていますが、既に
8161定義されている Perl サブルーチンに対して左辺値属性をオンまたはオフにするのは
8162常に適切に動作するわけではありません。
8163あなたの望むことが行われるかもしれませんし行われないかもしれません;
8164サブルーチンの内側にどんなコードがあるかに依存し、正確な詳細は
8165Perl バージョン間で変更されることがあります。
8166自分が何をしているのかが本当に分かっているときにだけこれを行ってください。
8167
8168=item lvalue attribute ignored after the subroutine has been defined
8169
8170=begin original
8171
8172(W misc) Using the C<:lvalue> declarative syntax to make a Perl
8173subroutine an lvalue subroutine after it has been defined is
8174not permitted. To make the subroutine an lvalue subroutine,
8175add the lvalue attribute to the definition, or put the C<sub
8176foo :lvalue;> declaration before the definition.
8177
8178=end original
8179
8180(W misc) サブルーチンが定義された後、Perl サブルーチンを左辺値サブルーチンに
8181するために C<:lvalue> 宣言文を使うことはできません。
8182サブルーチンを左辺値サブルーチンにするには定義時に左辺値属性を追加するか、
8183定義する前に C<sub foo :lvalue;> 宣言を行います。
8184
8185=begin original
8186
8187See also L<attributes.pm|attributes>.
8188
8189=end original
8190
8191L<attributes.pm|attributes> も参照してください。
8192
8193=item Magical list constants are not supported
8194
8195=begin original
8196
8197(F) You assigned a magical array to a stash element, and then tried
8198to use the subroutine from the same slot. You are asking Perl to do
8199something it cannot do, details subject to change between Perl versions.
8200
8201=end original
8202
8203(F) マジカルな配列をスタッシュ要素に代入し、それから同じスロットから
8204サブルーチンを使おうとしました。
8205Perl のバージョンによって詳細が変わるかも知れないような、してはいけないことを
8206Perl にさせようとしました。
8207
8208=item Malformed integer in [] in pack
8209
8210=begin original
8211
8212(F) Between the brackets enclosing a numeric repeat count only digits
8213are permitted. See L<perlfunc/pack>.
8214
8215=end original
8216
8217(F) 中かっこで数値繰り返し数を囲む場合、数値のみが許されます。
8218L<perlfunc/pack> を参照してください。
8219
8220=item Malformed integer in [] in unpack
8221
8222=begin original
8223
8224(F) Between the brackets enclosing a numeric repeat count only digits
8225are permitted. See L<perlfunc/pack>.
8226
8227=end original
8228
8229(F) 中かっこで数値繰り返し数を囲む場合、数値のみが許されます。
8230L<perlfunc/pack> を参照してください。
8231
41878232=item Malformed PERLLIB_PREFIX
41888233
41898234=begin original
41908235
41918236(F) An error peculiar to OS/2. PERLLIB_PREFIX should be of the form
41928237
41938238=end original
41948239
41958240(F) OS/2 固有のエラーです。
41968241PERLLIB_PREFIX は以下のような形か:
41978242
41988243 prefix1;prefix2
41998244
42008245=begin original
42018246
42028247or
8248 prefix1 prefix2
42038249
42048250=end original
42058251
4206あるいこのような形で:
8252また
4207
42088253 prefix1 prefix2
42098254
42108255=begin original
42118256
42128257with nonempty prefix1 and prefix2. If C<prefix1> is indeed a prefix of
42138258a builtin library search path, prefix2 is substituted. The error may
42148259appear if components are not found, or are too long. See
42158260"PERLLIB_PREFIX" in L<perlos2>.
42168261
42178262=end original
42188263
42198264prefix1 と prefix2 が空でない形である必要があります。
42208265C<prefix1> が組み込みライブラリ検索パスのプレフィックスなら、
42218266prefix2 は置き換えられます。
42228267このエラーは、コンポーネントが見つからないか、長すぎる時に起こります。
42238268L<perlos2> の "PERLLIB_PREFIX" を参照してください。
42248269
4225=item Malformed UTF-8 character (%s)
8270=item Malformed prototype for %s: %s
42268271
42278272=begin original
42288273
4229Perl detected something that didn't comply with UTF-8 encoding rules.
8274(F) You tried to use a function with a malformed prototype. The
8275syntax of function prototypes is given a brief compile-time check for
8276obvious errors like invalid characters. A more rigorous check is run
8277when the function is called.
8278Perhaps the function's author was trying to write a subroutine signature
8279but didn't enable that feature first (C<use feature 'signatures'>),
8280so the signature was instead interpreted as a bad prototype.
42308281
42318282=end original
42328283
4233Perl が、何か UTF-8 エンコーディングルールに従わいものを
8284(F) 不正形式プロトタイプもつ関数を使おうとしました。
4234検出しまし
8285関数プロトタイプの構文は、不正な文字のようなありふれエラーについては
8286コンパイル時にチェックされます。
8287より厳密なチェックは、関数が呼び出された時に実行されます。
8288おそらく関数の作者はサブルーチンシグネチャを書こうとしたけれども、
8289先にこの機能を有効にしなかった (C<use feature 'signatures'>) ので、
8290シグネチャは間違ったプロトタイプとして解釈されました。
42358291
8292=item Malformed UTF-8 character%s
8293
8294=begin original
8295
8296(S utf8)(F) Perl detected a string that should be UTF-8, but didn't
8297comply with UTF-8 encoding rules, or represents a code point whose
8298ordinal integer value doesn't fit into the word size of the current
8299platform (overflows). Details as to the exact malformation are given in
8300the variable, C<%s>, part of the message.
8301
8302=end original
8303
8304(S utf8)(F) Perl が、UTF-8 であるべき文字列を検出しましたが、
8305UTF-8 エンコーディング規則に従わない、
8306あるいは序数が現在のプラットフォームのワードサイズに収まらない
8307(オーバーフローする)符号位置を表現する文字列を検出しました。
8308不正な内容についての詳細は、メッセージの C<%s> の部分に入ります。
8309
8310=begin original
8311
8312One possible cause is that you set the UTF8 flag yourself for data that
8313you thought to be in UTF-8 but it wasn't (it was for example legacy 8-bit
8314data). To guard against this, you can use C<Encode::decode('UTF-8', ...)>.
8315
8316=end original
8317
8318原因の可能性の一つは、UTF-8 だと思っていたけれでもそうではなかったデータ
8319(例えばレガシーな 8 ビットデータ)にあなた自身で UTF8 フラグをセットした
8320ことです。
8321これから守るためには、C<Encode::decode('UTF-8', ...)> を使えます。
8322
8323=begin original
8324
8325If you use the C<:encoding(UTF-8)> PerlIO layer for input, invalid byte
8326sequences are handled gracefully, but if you use C<:utf8>, the flag is set
8327without validating the data, possibly resulting in this error message.
8328
8329=end original
8330
8331入力に C<:encoding(UTF-8)> PerlIO 層を使うと、不正なバイトシーケンスは
8332寛容に扱われますが、C<:utf8> を使うと、フラグはデータを検証せずに設定され、
8333おそらく結果としてこのエラーメッセージが出力されます。
8334
8335=begin original
8336
8337See also L<Encode/"Handling Malformed Data">.
8338
8339=end original
8340
8341L<Encode/"Handling Malformed Data"> も参照してください。
8342
8343=item Malformed UTF-8 returned by \N{%s} immediately after '%s'
8344
8345=begin original
8346
8347(F) The charnames handler returned malformed UTF-8.
8348
8349=end original
8350
8351(F) charnames ハンドラが不正な UTF-8 を返しました。
8352
8353=item Malformed UTF-8 string in "%s"
8354
8355=begin original
8356
8357(F) This message indicates a bug either in the Perl core or in XS
8358code. Such code was trying to find out if a character, allegedly
8359stored internally encoded as UTF-8, was of a given type, such as
8360being punctuation or a digit. But the character was not encoded
8361in legal UTF-8. The C<%s> is replaced by a string that can be used
8362by knowledgeable people to determine what the type being checked
8363against was.
8364
8365=end original
8366
8367(F) このメッセージは、Perl 内部か XS コードのどちらかにバグがあることを
8368示しています。
8369そのコードは、UTF-8 として内部でエンコードされて
8370保管されているということになっているある文字が、
8371句読点や数字のような指定された型であるかどうかを見つけ出そうとしました。
8372しかし、この文字は正当な UTF-8 としてエンコードされていません。
8373C<%s> は、知識がある人々が、どの種類をチェックするべきかを
8374決めるために使われる文字列で置き換えられます。
8375
8376=begin original
8377
8378Passing malformed strings was deprecated in Perl 5.18, and
8379became fatal in Perl 5.26.
8380
8381=end original
8382
8383不正な文字列を渡すことは Perl 5.18 で廃止予定になり、
8384Perl 5.26 で致命的エラーになりました。
8385
8386=item Malformed UTF-8 string in '%c' format in unpack
8387
8388=begin original
8389
8390(F) You tried to unpack something that didn't comply with UTF-8 encoding
8391rules and perl was unable to guess how to make more progress.
8392
8393=end original
8394
8395(F) UTF-8 エンコーディング規則に従わない何かを unpack しようとしたので、
8396perl はどうやってさらに進捗させればいいかが推測できませんでした。
8397
8398=item Malformed UTF-8 string in pack
8399
8400=begin original
8401
8402(F) You tried to pack something that didn't comply with UTF-8 encoding
8403rules and perl was unable to guess how to make more progress.
8404
8405=end original
8406
8407(F) UTF-8 エンコーディング規則に従わない何かを pack しようとしたので、
8408perl はどうやってさらに進捗させればいいかが推測できませんでした。
8409
8410=item Malformed UTF-8 string in unpack
8411
8412=begin original
8413
8414(F) You tried to unpack something that didn't comply with UTF-8 encoding
8415rules and perl was unable to guess how to make more progress.
8416
8417=end original
8418
8419(F) UTF-8 エンコーディング規則に従わない何かを unpack しようとしたので、
8420perl はどうやってさらに進捗させればいいかが推測できませんでした。
8421
42368422=item Malformed UTF-16 surrogate
42378423
42388424=begin original
42398425
4240Perl thought it was reading UTF-16 encoded character data but while
8426(F) Perl thought it was reading UTF-16 encoded character data but while
42418427doing it Perl met a malformed Unicode surrogate.
42428428
42438429=end original
42448430
4245Perl は UTF-16 エンコード文字データを読み込んでいると考えましたが、
8431(F) Perl は UTF-16 エンコード文字データを読み込んでいると考えましたが、
42468432その間に Perl が不正な Unicode サロゲートに遭遇しました。
42478433
4248=item %s matches null string many times
8434=item Mandatory parameter follows optional parameter
42498435
42508436=begin original
42518437
8438(F) In a subroutine signature, you wrote something like "$a = undef,
8439$b", making an earlier parameter optional and a later one mandatory.
8440Parameters are filled from left to right, so it's impossible for the
8441caller to omit an earlier one and pass a later one. If you want to act
8442as if the parameters are filled from right to left, declare the rightmost
8443optional and then shuffle the parameters around in the subroutine's body.
8444
8445=end original
8446
8447(F) サブルーチンシグネチャで、"$a = undef, $b" のような、先の引数が
8448オプションで後の引数が必須のようなものを書きました。
8449引数は左から右に埋められるので、呼び出し側が先のものを省略して後のものに
8450渡すことは不可能です。
8451引数が右から左に埋められるかのように振る舞ってほしい場合は、一番右を
8452オプションと宣言して、引数をサブルーチン本体で入れ替えてください。
8453
8454=item Matched non-Unicode code point 0x%X against Unicode property; may
8455not be portable
8456
8457=begin original
8458
8459(S non_unicode) Perl allows strings to contain a superset of
8460Unicode code points; each code point may be as large as what is storable
8461in a signed integer on your system, but these may not be accepted by
8462other languages/systems. This message occurs when you matched a string
8463containing such a code point against a regular expression pattern, and
8464the code point was matched against a Unicode property, C<\p{...}> or
8465C<\P{...}>. Unicode properties are only defined on Unicode code points,
8466so the result of this match is undefined by Unicode, but Perl (starting
8467in v5.20) treats non-Unicode code points as if they were typical
8468unassigned Unicode ones, and matched this one accordingly. Whether a
8469given property matches these code points or not is specified in
8470L<perluniprops/Properties accessible through \p{} and \P{}>.
8471
8472=end original
8473
8474(S non_unicode) Perl は文字列に Unicode 符号位置の上位集合を
8475含むことができます; それぞれの符号位置はシステムの符号付き整数に
8476格納できるだけの大きさを指定できますが、これらは他の言語/システムでは
8477受け付けられないかも知れません。
8478このメッセージは、このような符号位置を含む文字列をある正規表現パターンで
8479マッチングし、符号位置が Unicode 特性 C<\p{...}> または C<\P{...}> と
8480マッチングしたときに発生します。
8481Unicode 特性は Unicode 符号位置に対してのみ定義されているので、
8482Unicode によればこのマッチングの結果は未定義ですが、
8483Perl は (v5.20 から) 非 Unicode 符号位置を、典型的な未割り当て
8484Unicode 符号位置として扱い、それぞれマッチングします。
8485指定された特性がこれらの符号位置にマッチングするかどうかは
8486L<perluniprops/Properties accessible through \p{} and \P{}> で
8487指定されています。
8488
8489=begin original
8490
8491This message is suppressed (unless it has been made fatal) if it is
8492immaterial to the results of the match if the code point is Unicode or
8493not. For example, the property C<\p{ASCII_Hex_Digit}> only can match
8494the 22 characters C<[0-9A-Fa-f]>, so obviously all other code points,
8495Unicode or not, won't match it. (And C<\P{ASCII_Hex_Digit}> will match
8496every code point except these 22.)
8497
8498=end original
8499
8500このメッセージは、符号位置が Unicode かどうかがマッチングの結果に関係ない
8501場合は、(致命的にしていない限り)抑制されます。
8502例えば、特性 C<\p{ASCII_Hex_Digit}> は 22 文字 C<[0-9A-Fa-f]> だけに
8503マッチングするので、明らかに他の符号位置は、Unicode かどうかに関わらず、
8504マッチングしません。
8505(そして C<\P{ASCII_Hex_Digit}> はこれら 22 以外の全ての符号位置に
8506マッチングします。)
8507
8508=begin original
8509
8510Getting this message indicates that the outcome of the match arguably
8511should have been the opposite of what actually happened. If you think
8512that is the case, you may wish to make the C<non_unicode> warnings
8513category fatal; if you agree with Perl's decision, you may wish to turn
8514off this category.
8515
8516=end original
8517
8518このメッセージが出たということは、マッチングの結果はおそらく実際に起きた結果と
8519逆になっているはずだということを示しています。
8520これに当てはまっていると考えられる場合は、C<non_unicode> 警告カテゴリを
8521致命的にした方がよいでしょう; Perl の結果に同意する場合は、このカテゴリを
8522オフにした方がよいでしょう。
8523
8524=begin original
8525
8526See L<perlunicode/Beyond Unicode code points> for more information.
8527
8528=end original
8529
8530さらなる情報については L<perlunicode/Beyond Unicode code points> を
8531参照してください。
8532
8533=item %s matches null string many times in regex; marked by S<<-- HERE> in
8534m/%s/
8535
8536=begin original
8537
42528538(W regexp) The pattern you've specified would be an infinite loop if the
4253regular expression engine didn't specifically check for that. See
8539regular expression engine didn't specifically check for that. The S<<-- HERE>
4254L<perlre>.
8540shows whereabouts in the regular expression the problem was discovered.
8541See L<perlre>.
42558542
42568543=end original
42578544
42588545(W) 指定したパターンは、もし、正規表現エンジンがチェックを
42598546行なっていなければ、無限ループに陥るものです。
8547S<<-- HERE> で正規表現のどこに問題が発見されたかを示しています。
42608548L<perlre> を参照してください。
42618549
4262=item % may only be used in unpack
8550=item Maximal count of pending signals (%u) exceeded
42638551
42648552=begin original
42658553
8554(F) Perl aborted due to too high a number of signals pending. This
8555usually indicates that your operating system tried to deliver signals
8556too fast (with a very high priority), starving the perl process from
8557resources it would need to reach a point where it can process signals
8558safely. (See L<perlipc/"Deferred Signals (Safe Signals)">.)
8559
8560=end original
8561
8562(F) あまりにも多くのシグナルが保留中になったので Perl は中断しました。
8563これは普通 OS が速くシグナルを(とても高い優先順位で)配達しようとしすぎて、
8564perl のプロセスが安全にシグナルを処理できるところに到達するまでに必要な
8565リソースが不足したことを示しています。
8566(L<perlipc/"Deferred Signals (Safe Signals)"> を参照してください。)
8567
8568=item "%s" may clash with future reserved word
8569
8570=begin original
8571
8572(W) This warning may be due to running a perl5 script through a perl4
8573interpreter, especially if the word that is being warned about is
8574"use" or "my".
8575
8576=end original
8577
8578(W) この警告は perl5 のスクリプトを perl4 インタプリタで実行しようとした
8579ときに起きることが多いです; 特に警告された文字が "use" や "my" の場合は
8580そうです。
8581
8582=item '%' may not be used in pack
8583
8584=begin original
8585
42668586(F) You can't pack a string by supplying a checksum, because the
42678587checksumming process loses information, and you can't go the other way.
42688588See L<perlfunc/unpack>.
42698589
42708590=end original
42718591
4272(F) チェックサムを指定して pack を行なうことはできません
8592(F) チェックサムを指定して pack を行なうことはできません;
42738593チェックサム処理では、情報が失われ、どうしようもなくなるからです。
42748594L<perlfunc/unpack> を参照してください。
42758595
42768596=item Method for operation %s not found in package %s during blessing
42778597
42788598=begin original
42798599
42808600(F) An attempt was made to specify an entry in an overloading table that
42818601doesn't resolve to a valid subroutine. See L<overload>.
42828602
42838603=end original
42848604
42858605(F) 多重定義テーブルで、有効なサブルーチンに解決できない
42868606エントリを指定しようとしました。
42878607L<overload> を参照してください。
42888608
42898609=item Method %s not permitted
42908610
42918611=begin original
42928612
4293See Server error.
8613See L</500 Server error>.
42948614
42958615=end original
42968616
4297"Server error" を参照してください。
8617L</500 Server error> を参照してください。
42988618
42998619=item Might be a runaway multi-line %s string starting on line %d
43008620
43018621=begin original
43028622
43038623(S) An advisory indicating that the previous error may have been caused
43048624by a missing delimiter on a string or pattern, because it eventually
43058625ended earlier on the current line.
43068626
43078627=end original
43088628
43098629(S) ようやく現在行になって、文字列やパターンの終わりが見つかったことから、
43108630先のエラーが、文字列やパターンのデリミタが、見つからなかったことで
43118631起ったかもしれないことを、補足的に示しています。
43128632
43138633=item Misplaced _ in number
43148634
43158635=begin original
43168636
4317(W syntax) An underline in a decimal constant wasn't on a 3-digit boundary.
8637(W syntax) An underscore (underbar) in a numeric constant did not
8638separate two digits.
43188639
43198640=end original
43208641
4321(W syntax) 十進数定数下線が、3 桁ごとでありませんでした
8642(W syntax) 数定数下線が、二つの値を分離していません。
43228643
4323=item Missing %sbrace%s on \N{}
8644=item Missing argument for %n in %s
43248645
43258646=begin original
43268647
8648(F) A C<%n> was used in a format string with no corresponding argument for
8649perl to write the current string length to.
8650
8651=end original
8652
8653(F) C<%n> がフォーマット文字列で使われましたが、perl が現在の文字列長を
8654書くための対応する引数がありません。
8655
8656=item Missing argument in %s
8657
8658=begin original
8659
8660(W missing) You called a function with fewer arguments than other
8661arguments you supplied indicated would be needed.
8662
8663=end original
8664
8665(W missing) 他で指定した引数によって必要であると示されているよりも
8666少ない引数で関数を呼び出しました。
8667
8668=begin original
8669
8670Currently only emitted when a printf-type format required more
8671arguments than were supplied, but might be used in the future for
8672other cases where we can statically determine that arguments to
8673functions are missing, e.g. for the L<perlfunc/pack> function.
8674
8675=end original
8676
8677現在のところは printf 型式のフォーマットが提供されたよりも多くの引数を
8678要求した場合にのみ発生しますが、
8679将来、L<perlfunc/pack> 関数のような、関数の引数を静的に決定できる
8680その他の場合に使われるかもしれません。
8681
8682=item Missing argument to -%c
8683
8684=begin original
8685
8686(F) The argument to the indicated command line switch must follow
8687immediately after the switch, without intervening spaces.
8688
8689=end original
8690
8691(F) 示されたコマンドラインスイッチの引数は、
8692スイッチの直後にスペースを空けないで書く必要があります。
8693
8694=item Missing braces on \N{}
8695
8696=item Missing braces on \N{} in regex; marked by S<<-- HERE> in m/%s/
8697
8698=begin original
8699
43278700(F) Wrong syntax of character name literal C<\N{charname}> within
4328double-quotish context.
8701double-quotish context. This can also happen when there is a space
8702(or comment) between the C<\N> and the C<{> in a regex with the C</x> modifier.
8703This modifier does not change the requirement that the brace immediately
8704follow the C<\N>.
43298705
43308706=end original
43318707
43328708(F) ダブルクォートされたコンテキストの中で、文字名リテラル C<\N{charname}> の
43338709文法が間違っています。
8710これはまた、C</x> 修飾子付きの正規表現の C<\N> と C<{> の間に空白(または
8711コメント)がある場合にも起こります。
8712この修飾子は、C<\N> の直後に中かっこが必要であるという条件は変更しません。
43348713
8714=item Missing braces on \o{}
8715
8716=begin original
8717
8718(F) A C<\o> must be followed immediately by a C<{> in double-quotish context.
8719
8720=end original
8721
8722(F) ダブルクォート風コンテキストでは C<\o> は直後に C<{> が
8723引き続かなければなりません。
8724
43358725=item Missing comma after first argument to %s function
43368726
43378727=begin original
43388728
43398729(F) While certain functions allow you to specify a filehandle or an
43408730"indirect object" before the argument list, this ain't one of them.
43418731
43428732=end original
43438733
43448734(F) ある種の関数では、引数リストの前に、ファイルハンドルや
43458735「間接オブジェクト」をおくことができますが、この関数は、
43468736そういったものではありません。
43478737
43488738=item Missing command in piped open
43498739
43508740=begin original
43518741
43528742(W pipe) You used the C<open(FH, "| command")> or
43538743C<open(FH, "command |")> construction, but the command was missing or
43548744blank.
43558745
43568746=end original
43578747
43588748(W pipe) C<open(FH, "| command")> か C<open(FH, "command |")> の構文を
43598749使っていますが、コマンドが指定されていないか空白です。
43608750
4361=item Missing name in "my sub"
8751=item Missing control char name in \c
43628752
43638753=begin original
43648754
4365(F) The reserved syntax for lexically scoped subroutines requires that
8755(F) A double-quoted string ended with "\c", without the required control
8756character name.
8757
8758=end original
8759
8760(F) ダブルクォートされた文字列が "\c" で終わっています; 制御文字名が
8761必要です。
8762
8763=item Missing ']' in prototype for %s : %s
8764
8765=begin original
8766
8767(W illegalproto) A grouping was started with C<[> but never closed with C<]>.
8768
8769=end original
8770
8771(W illegalproto) グループ化は C<[> で始まりましたが C<]> で
8772閉じられませんでした。
8773
8774=item Missing name in "%s sub"
8775
8776=begin original
8777
8778(F) The syntax for lexically scoped subroutines requires that
43668779they have a name with which they can be found.
43678780
43688781=end original
43698782
4370(F) 予約された文法である、レキシカルスコープのサブルーチンには
8783(F) レキシカルスコープのサブルーチンの文法には探すことの出来る名前が必要です。
4371探すことの出来る名前が必要です。
43728784
43738785=item Missing $ on loop variable
43748786
43758787=begin original
43768788
43778789(F) Apparently you've been programming in B<csh> too much. Variables
43788790are always mentioned with the $ in Perl, unlike in the shells, where it
43798791can vary from one line to the next.
43808792
43818793=end original
43828794
43838795(F) B<csh> を使いすぎた症状が現れているようです。
4384Perl では、変数は常に $ を付けて表わされます
8796Perl では、変数は常に $ を付けて表わされます; その時によって違う、シェルとは
4385その時によって違う、シェルとは違っています。
8797違っています。
43868798
43878799=item (Missing operator before %s?)
43888800
43898801=begin original
43908802
4391(S) This is an educated guess made in conjunction with the message "%s
8803(S syntax) This is an educated guess made in conjunction with the message
4392found where operator expected". Often the missing operator is a comma.
8804"%s found where operator expected". Often the missing operator is a comma.
43938805
43948806=end original
43958807
4396(S) "%s found where operator expected" と共に表示される教育的な推測です。
8808(S syntax) これは "%s found where operator expected" メッセージと共に
4397しばしば抜けてい演算子はカンマです。
8809表示され教育的な推測です。
8810しばしば不足している演算子はカンマです。
43988811
8812=item Missing or undefined argument to %s
8813
8814=begin original
8815
8816(F) You tried to call require or do with no argument or with an undefined
8817value as an argument. Require expects either a package name or a
8818file-specification as an argument; do expects a filename. See
8819L<perlfunc/require EXPR> and L<perlfunc/do EXPR>.
8820
8821=end original
8822
8823(F) 引数なし、または未定義値を引数として require や do を
8824呼び出そうとしました。
8825require はパッケージ名またはファイル指定を引数として想定します;
8826do はファイル名を想定します。
8827L<perlfunc/require EXPR> と L<perlfunc/do EXPR> を参照してください。
8828
8829=item Missing right brace on \%c{} in regex; marked by S<<-- HERE> in m/%s/
8830
8831=begin original
8832
8833(F) Missing right brace in C<\x{...}>, C<\p{...}>, C<\P{...}>, or C<\N{...}>.
8834
8835=end original
8836
8837(F) C<\x{...}>, C<\p{...}>, C<\P{...}>, C<\N{...}> の右側のかっこが
8838抜けています。
8839
8840=item Missing right brace on \N{}
8841
8842=item Missing right brace on \N{} or unescaped left brace after \N
8843
8844=begin original
8845
8846(F) C<\N> has two meanings.
8847
8848=end original
8849
8850(F) C<\N> には二つの意味があります。
8851
8852=begin original
8853
8854The traditional one has it followed by a name enclosed in braces,
8855meaning the character (or sequence of characters) given by that
8856name. Thus C<\N{ASTERISK}> is another way of writing C<*>, valid in both
8857double-quoted strings and regular expression patterns. In patterns,
8858it doesn't have the meaning an unescaped C<*> does.
8859
8860=end original
8861
8862伝統的なものは中かっこで囲まれた名前が引き続き、その名前を持つ文字
8863(または文字並び)を意味します。
8864従って C<\N{ASTERISK}> は C<*> を書くためのもう一つの方法であり、
8865ダブルクォート文字列と正規表現パターンの両方で妥当です。
8866パターンでは、これはエスケープされない C<*> の持つ意味はありません。
8867
8868=begin original
8869
8870Starting in Perl 5.12.0, C<\N> also can have an additional meaning (only)
8871in patterns, namely to match a non-newline character. (This is short
8872for C<[^\n]>, and like C<.> but is not affected by the C</s> regex modifier.)
8873
8874=end original
8875
8876Perl 5.12.0 から、C<\N> はパターンでの中(のみ)では追加の意味を持ちます;
8877非改行文字にマッチングします。
8878(これは C<[^\n]> の短縮形で、C<.> と似ていますが C</s> 正規表現修飾子によって
8879影響を受けません。)
8880
8881=begin original
8882
8883This can lead to some ambiguities. When C<\N> is not followed immediately
8884by a left brace, Perl assumes the C<[^\n]> meaning. Also, if the braces
8885form a valid quantifier such as C<\N{3}> or C<\N{5,}>, Perl assumes that this
8886means to match the given quantity of non-newlines (in these examples,
88873; and 5 or more, respectively). In all other case, where there is a
8888C<\N{> and a matching C<}>, Perl assumes that a character name is desired.
8889
8890=end original
8891
8892これによりいくつかの曖昧さを引き起こします。
8893C<\N> の直後に開き中かっこがなければ、Perl は C<[^\n]> の意味を仮定します。
8894また、中かっこが C<\N{3}> や C<\N{5,}> のような妥当な量指定子の形に
8895なっているなら、Perl はこれを与えられた量の非改行 (この例では、それぞれ 3 と
88965 以上) にマッチングするという意味を仮定します。
8897それ以外の場合、C<\N{> と対応する C<}> があれば、Perl は文字名が
8898求められていると仮定します。
8899
8900=begin original
8901
8902However, if there is no matching C<}>, Perl doesn't know if it was
8903mistakenly omitted, or if C<[^\n]{> was desired, and raises this error.
8904If you meant the former, add the right brace; if you meant the latter,
8905escape the brace with a backslash, like so: C<\N\{>
8906
8907=end original
8908
8909しかし、対応する C<}> がなければ、それが間違って省略されたのか、
8910C<[^\n]{> が求められているものなのかが分からず、エラーを起こします。
8911前者を意味しているなら、閉じ中かっこを追加してください; 後者を
8912意味しているなら、C<\N\{> のように中かっこを逆スラッシュで
8913エスケープしてください。
8914
43998915=item Missing right curly or square bracket
44008916
44018917=begin original
44028918
44038919(F) The lexer counted more opening curly or square brackets than closing
44048920ones. As a general rule, you'll find it's missing near the place you
44058921were last editing.
44068922
44078923=end original
44088924
4409(F) 字句解析部が、閉じ中括弧(または大括弧)よりも
8925(F) 字句解析部が、閉じ中かっこ(または大かっこ)よりも
4410開き中括弧(大括弧)を多く発見しました。
8926開き中かっこ(大かっこ)を多く発見しました。
44118927一般的な規則として、最後に修正した場所の近くに間違いがあるといえます。
44128928
44138929=item (Missing semicolon on previous line?)
44148930
44158931=begin original
44168932
4417(S) This is an educated guess made in conjunction with the message "%s
8933(S syntax) This is an educated guess made in conjunction with the message
4418found where operator expected". Don't automatically put a semicolon on
8934"%s found where operator expected". Don't automatically put a semicolon on
44198935the previous line just because you saw this message.
44208936
44218937=end original
44228938
4423(S) このメッセージ"%s found where operator expected" という
8939(S syntax) こ "%s found where operator expected" メッセージ共に
4424メッセージに伴って出される教育的な推測によるものです。
8940表示される教育的な推測です。
4425このメッセージが出たからといって、機械的に前の行に
8941このメッセージが出たからといって、機械的に前の行にセミコロンを付けることは
4426セミコロンを付けることはしないでください。
8942しないでください。
44278943
44288944=item Modification of a read-only value attempted
44298945
44308946=begin original
44318947
44328948(F) You tried, directly or indirectly, to change the value of a
44338949constant. You didn't, of course, try "2 = 1", because the compiler
44348950catches that. But an easy way to do the same thing is:
44358951
44368952=end original
44378953
44388954(F) 直接、間接に関らず、定数値を変更しようとしました。
44398955もちろん、コンパイラが発見できる、"2 = 1" などといったことを
44408956したわけではありません。
44418957しかし、同じことは以下のようにしても起こります。
44428958
44438959 sub mod { $_[0] = 1 }
44448960 mod(2);
44458961
44468962=begin original
44478963
44488964Another way is to assign to a substr() that's off the end of the string.
44498965
44508966=end original
44518967
44528968substr() で、文字列の終わりよりも後ろに代入を行なうことでも起こります。
44538969
44548970=begin original
44558971
44568972Yet another way is to assign to a C<foreach> loop I<VAR> when I<VAR>
44578973is aliased to a constant in the look I<LIST>:
44588974
44598975=end original
44608976
44618977もう一つの可能性は、C<foreach> ループにおいて、I<VAR> が I<LIST> の中の
44628978定数のエイリアスであるときに、I<VAR> に代入した時です:
44638979
4464 $x = 1;
8980 $x = 1;
4465 foreach my $n ($x, 2) {
8981 foreach my $n ($x, 2) {
4466 $n *= 2; # modifies the $x, but fails on attempt to modify the 2
8982 $n *= 2; # modifies the $x, but fails on attempt to
4467 }
8983 } # modify the 2
44688984
44698985=item Modification of non-creatable array value attempted, %s
44708986
44718987=begin original
44728988
44738989(F) You tried to make an array value spring into existence, and the
44748990subscript was probably negative, even counting from end of the array
44758991backwards.
44768992
44778993=end original
44788994
4479(F) 配列値を存在するようにしようとしました。 おそらく、
8995(F) 配列値を存在するようにしようとしました; おそらく、添字が負数で、配列の
4480添字が負数で、配列の終わりから逆に数えたとしても、
8996終わりから逆に数えたとしても、おかしな位置を指しているようです。
4481おかしな位置を指しているようです。
44828997
44838998=item Modification of non-creatable hash value attempted, %s
44848999
44859000=begin original
44869001
44879002(P) You tried to make a hash value spring into existence, and it
44889003couldn't be created for some peculiar reason.
44899004
44909005=end original
44919006
44929007(F) ハッシュ値を存在するようにしようとしましたが、何か特別な理由で、
44939008できませんでした。
44949009
44959010=item Module name must be constant
44969011
44979012=begin original
44989013
44999014(F) Only a bare module name is allowed as the first argument to a "use".
45009015
45019016=end original
45029017
45039018(F) "use" の最初の引数としてモジュール名を示すのに許されているのは、
45049019裸の単語だけです。
45059020
45069021=item Module name required with -%c option
45079022
45089023=begin original
45099024
45109025(F) The C<-M> or C<-m> options say that Perl should load some module, but
45119026you omitted the name of the module. Consult L<perlrun> for full details
45129027about C<-M> and C<-m>.
45139028
45149029=end original
45159030
45169031C<-M> と C<-m> のオプションは Perl にモジュールを読み込ませることを
45179032指示しますが、モジュール名がありませんでした。
45189033C<-M> と C<-m> に関する完全な詳細については L<perlrun> を参照してください。
45199034
9035=item More than one argument to '%s' open
9036
9037=begin original
9038
9039(F) The C<open> function has been asked to open multiple files. This
9040can happen if you are trying to open a pipe to a command that takes a
9041list of arguments, but have forgotten to specify a piped open mode.
9042See L<perlfunc/open> for details.
9043
9044=end original
9045
9046(F) C<open> 関数に、複数のファイルを開くように指定されました。
9047これは引数のリストを取るコマンドへのパイプを開こうとしたときに、パイプ
9048オープンモードを指定するのを忘れた時に起きます。
9049詳細は L<perlfunc/open> を参照してください。
9050
9051=item mprotect for COW string %p %u failed with %d
9052
9053=begin original
9054
9055(S) You compiled perl with B<-D>PERL_DEBUG_READONLY_COW (see
9056L<perlguts/"Copy on Write">), but a shared string buffer
9057could not be made read-only.
9058
9059=end original
9060
9061(S) perl を B<-D>PERL_DEBUG_READONLY_COW (L<perlguts/"Copy on Write"> 参照) で
9062コンパイルしましたが、共有文字列バッファを読み込み専用にできませんでした。
9063
9064=item mprotect for %p %u failed with %d
9065
9066=begin original
9067
9068(S) You compiled perl with B<-D>PERL_DEBUG_READONLY_OPS (see L<perlhacktips>),
9069but an op tree could not be made read-only.
9070
9071=end original
9072
9073(S) perl が B<-D>PERL_DEBUG_READONLY_OPS (L<perlhacktips> 参照) で
9074コンパイルされましたが、op 木を読み込み専用にできませんでした。
9075
9076=item mprotect RW for COW string %p %u failed with %d
9077
9078=begin original
9079
9080(S) You compiled perl with B<-D>PERL_DEBUG_READONLY_COW (see
9081L<perlguts/"Copy on Write">), but a read-only shared string
9082buffer could not be made mutable.
9083
9084=end original
9085
9086(S) perl を B<-D>PERL_DEBUG_READONLY_COW (L<perlguts/"Copy on Write"> 参照) で
9087コンパイルしましたが、読み込み専用共有文字列バッファを変更可能に
9088できませんでした。
9089
9090=item mprotect RW for %p %u failed with %d
9091
9092=begin original
9093
9094(S) You compiled perl with B<-D>PERL_DEBUG_READONLY_OPS (see
9095L<perlhacktips>), but a read-only op tree could not be made
9096mutable before freeing the ops.
9097
9098=end original
9099
9100(S) perl が B<-D>PERL_DEBUG_READONLY_OPS (L<perlhacktips> 参照) で
9101コンパイルされましたが、読み込み専用の op 木を、op を解放する前に
9102ミュータブルにできませんでした。
9103
45209104=item msg%s not implemented
45219105
45229106=begin original
45239107
45249108(F) You don't have System V message IPC on your system.
45259109
45269110=end original
45279111
45289112(F) このシステムでは、System V メッセージ IPC は使えません。
45299113
45309114=item Multidimensional syntax %s not supported
45319115
45329116=begin original
45339117
45349118(W syntax) Multidimensional arrays aren't written like C<$foo[1,2,3]>.
45359119They're written like C<$foo[1][2][3]>, as in C.
45369120
45379121=end original
45389122
45399123(W syntax) 多次元配列は、C<$foo[1,2,3]> のようには書けません。
45409124これは、C のように C<$foo[1][2][3]> のように書きます。
45419125
4542=item / must be followed by a*, A* or Z*
9126=item Multiple slurpy parameters not allowed
45439127
45449128=begin original
45459129
4546(F) You had a pack template indicating a counted-length string,
9130(F) In subroutine signatures, a slurpy parameter (C<@> or C<%>) must be
4547Currently the only things that can have their length counted are a*, A*
9131the last parameter, and there must not be more than one of them; for
4548or Z*. See L<perlfunc/pack>.
9132example:
45499133
45509134=end original
45519135
4552(F) カウト長文字列を示す pack テンプレートがありす。
9136(F) サブルーチシグネチャで、吸い込みパラメータ (C<@>たは C<%>) は
4553現在ところ長さをカウントきるのa*, A*, Z* だけです。
9137最後パラメータなければならず、複数あってなりません; 例えば:
4554L<perlfunc/pack> を参照してください。
45559138
4556=item / must be followed by a, A or Z
9139 sub foo ($a, @b) {} # legal
9140 sub foo ($a, @b, %) {} # invalid
45579141
9142=item '/' must follow a numeric type in unpack
9143
45589144=begin original
45599145
4560(F) You had an unpack template indicating a counted-length string, which
9146(F) You had an unpack template that contained a '/', but this did not
4561must be followed by one of the letters a, A or Z to indicate what sort
9147follow some unpack specification producing a numeric value.
4562of string is to be unpacked. See L<perlfunc/pack>.
9148See L<perlfunc/pack>.
45639149
45649150=end original
45659151
4566(F) カウント長文字列示す unpack テンプレートがあります;
9152(F) '/' 含む unpack テンプレートがありますが、これがなんらかの
4567これはどの種類の文字列を unpack するかを示する、文字 a, A, Z の
9153数値生成する unpack 指定に引き続いていません。
4568いずれかの後に続かなければなりません。
45699154L<perlfunc/pack> を参照してください。
45709155
4571=item / must follow a numeric type
9156=item %s must not be a named sequence in transliteration operator
45729157
45739158=begin original
45749159
4575(F) You had an unpack template that contained a '#', but this did not
9160(F) Transliteration (C<tr///> and C<y///>) transliterates individual
4576follow some numeric unpack specification. See L<perlfunc/pack>.
9161characters. But a named sequence by definition is more than an
9162individual character, and hence doing this operation on it doesn't make
9163sense.
45779164
45789165=end original
45799166
4580(F) '#' を含む unpack テンプレートがありますが、これがなんらかの
9167(F) 文字変換 (C<tr///> C<y///>) は個々の文字を変換します
4581数値 unpack 指定に続いていません。
9168しかし、よる名前付並びは個々の文字以上のものがあるので、
4582L<perlfunc/pack> を参照してください
9169それに対してこの操作をするのは意味がありません
45839170
45849171=item "my sub" not yet implemented
45859172
45869173=begin original
45879174
45889175(F) Lexically scoped subroutines are not yet implemented. Don't try
45899176that yet.
45909177
45919178=end original
45929179
45939180(F) レキシカルスコープのサブルーチンはまだ実装されていません。
45949181まだ試さないでください。
45959182
9183=item "my" subroutine %s can't be in a package
9184
9185=begin original
9186
9187(F) Lexically scoped subroutines aren't in a package, so it doesn't make
9188sense to try to declare one with a package qualifier on the front.
9189
9190=end original
9191
9192(F) レキシカルスコープサブルーチンはパッケージ内にないので、
9193頭にパッケージ名を付けて宣言することは、無意味です。
9194
9195=item "my %s" used in sort comparison
9196
9197=begin original
9198
9199(W syntax) The package variables $a and $b are used for sort comparisons.
9200You used $a or $b in as an operand to the C<< <=> >> or C<cmp> operator inside a
9201sort comparison block, and the variable had earlier been declared as a
9202lexical variable. Either qualify the sort variable with the package
9203name, or rename the lexical variable.
9204
9205=end original
9206
9207(W syntax) パッケージ変数 $a と $b はソート比較のために使われます。
9208$a または $b をソート比較ブロックの中の C<< <=> >> または C<cmp> 演算子の
9209オペランドとして使いましたが、この変数はその前にレキシカル変数として
9210宣言されています。
9211ソート変数をパッケージ名で修飾するか、レキシカル変数の名前を変えてください。
9212
45969213=item "my" variable %s can't be in a package
45979214
45989215=begin original
45999216
46009217(F) Lexically scoped variables aren't in a package, so it doesn't make
46019218sense to try to declare one with a package qualifier on the front. Use
46029219local() if you want to localize a package variable.
46039220
46049221=end original
46059222
4606(F) 字句スコープの変数パッケージ内に置かれませんので、
9223(F) レキシカルスコープサブルーチンはパッケージ内にないので、
46079224頭にパッケージ名を付けて宣言することは、無意味です。
46089225パッケージ変数をローカル化したい場合には、local() を使ってください。
46099226
46109227=item Name "%s::%s" used only once: possible typo
46119228
46129229=begin original
46139230
4614(W once) Typographical errors often show up as unique variable names.
9231(W once) Typographical errors often show up as unique variable
4615If you had a good reason for having a unique name, then just mention it
9232names. If you had a good reason for having a unique name, then
4616again somehow to suppress the message. The C<our> declaration is
9233just mention it again somehow to suppress the message. The C<our>
4617provided for this purpose.
9234declaration is also provided for this purpose.
46189235
46199236=end original
46209237
46219238(W once) しばしばタイプミスによってユニークな変数名として表示されます。
46229239ユニークな名前をを使う理由があるのなら、もう一度どこかで参照することで
46239240このメッセージを抑制できます。
4624C<our> 宣言この目的のために提供されています。
9241C<our> 宣言この目的のために提供されています。
46259242
9243=begin original
9244
9245NOTE: This warning detects package symbols that have been used
9246only once. This means lexical variables will never trigger this
9247warning. It also means that all of the package variables $c, @c,
9248%c, as well as *c, &c, sub c{}, c(), and c (the filehandle or
9249format) are considered the same; if a program uses $c only once
9250but also uses any of the others it will not trigger this warning.
9251Symbols beginning with an underscore and symbols using special
9252identifiers (q.v. L<perldata>) are exempt from this warning.
9253
9254=end original
9255
9256注意: この警告は一度しか使われていないパッケージシンボルを検出します。
9257つまり、レキシカル変数はこの警告を引き起こさないと言うことです。
9258また、パッケージ変数 $c, @c, %c および
9259*c, &c, sub c{}, c(), c (ファイルハンドルまたはフォーマット) は
9260同じであると考えます; プログラムが $c を一度だけ使っている蹴れどっも
9261その他のものも使っている場合、この警告は引き起こされません。
9262下線で始まるシンボルと特殊識別子
9263(L<perldata> 参照) を使ったシンボルはこの警告を免れます。
9264
9265=item Need exactly 3 octal digits in regex; marked by S<<-- HERE> in m/%s/
9266
9267=begin original
9268
9269(F) Within S<C<(?[ ])>>, all constants interpreted as octal need to be
9270exactly 3 digits long. This helps catch some ambiguities. If your
9271constant is too short, add leading zeros, like
9272
9273=end original
9274
9275(F) S<C<(?[ ])>> の中で、8 進数として解釈される全ての定数は正確に 3 桁である
9276必要があります。
9277これはある種の曖昧さを捕まえる助けになります。
9278定数が短い場合は、以下のように先頭に 0 を追加してください
9279
9280 (?[ [ \078 ] ]) # Syntax error!
9281 (?[ [ \0078 ] ]) # Works
9282 (?[ [ \007 8 ] ]) # Clearer
9283
9284=begin original
9285
9286The maximum number this construct can express is C<\777>. If you
9287need a larger one, you need to use L<\o{}|perlrebackslash/Octal escapes> instead. If you meant
9288two separate things, you need to separate them:
9289
9290=end original
9291
9292この構文が表現できる最大数は C<\777> です。
9293より大きな値が必要なときは、代わりに L<\o{}|perlrebackslash/Octal escapes> を
9294使う必要があります。
9295二つの別々のものを意味しているなら、分ける必要があります:
9296
9297 (?[ [ \7776 ] ]) # Syntax error!
9298 (?[ [ \o{7776} ] ]) # One meaning
9299 (?[ [ \777 6 ] ]) # Another meaning
9300 (?[ [ \777 \006 ] ]) # Still another
9301
9302=item Negative '/' count in unpack
9303
9304=begin original
9305
9306(F) The length count obtained from a length/code unpack operation was
9307negative. See L<perlfunc/pack>.
9308
9309=end original
9310
9311(F) 長さ/コード unpack 操作で得られた長さカウントが負数でした。
9312L<perlfunc/pack> を参照してください。
9313
46269314=item Negative length
46279315
46289316=begin original
46299317
46309318(F) You tried to do a read/write/send/recv operation with a buffer
46319319length that is less than 0. This is difficult to imagine.
46329320
46339321=end original
46349322
46359323(F) ゼロより短い長さのバッファで、読み込み、書き込み、送信、受信を
46369324行なおうとしました。
4637どのようなとがのか判断きません
9325れは想像にくこと
46389326
4639=item Nested quantifiers before << HERE in regex m/%s/
9327=item Negative offset to vec in lvalue context
46409328
46419329=begin original
46429330
4643(F) You can't quantify a quantifier without intervening parentheses. So
9331(F) When C<vec> is called in an lvalue context, the second argument must be
4644things like ** or +* or ?* are illegal. The << HERE shows in the regular
9332greater than or equal to zero.
4645expression about where the problem was discovered.
46469333
46479334=end original
46489335
4649(F) 括弧を挟まない、数量子を数量子で修飾するこはでません。
9336(F) 左辺値コンテキスト C<vec> が呼び出されたとき
9337二つ目の引数は 0 以上でなければなりません。
9338
9339=item Negative repeat count does nothing
9340
9341=begin original
9342
9343(W numeric) You tried to execute the
9344L<C<x>|perlop/Multiplicative Operators> repetition operator fewer than 0
9345times, which doesn't make sense.
9346
9347=end original
9348
9349(W numeric) L<C<x>|perlop/Multiplicative Operators> 繰り返し演算子を
93500 より小さい回数実行しようとしました; これは無意味です。
9351
9352=item Nested quantifiers in regex; marked by S<<-- HERE> in m/%s/
9353
9354=begin original
9355
9356(F) You can't quantify a quantifier without intervening parentheses.
9357So things like ** or +* or ?* are illegal. The S<<-- HERE> shows
9358whereabouts in the regular expression the problem was discovered.
9359
9360=end original
9361
9362(F) かっこを挟まないで、数量子を数量子で修飾することはできません。
46509363つまり、** や +* や ?* といったものは、正しくありません。
4651<< HERE で正規表現のどこに問題が発見されたかを示しています。
9364S<<-- HERE> で正規表現のどこに問題が発見されたかを示しています。
46529365
46539366=begin original
46549367
4655Note, however, that the minimal matching quantifiers, C<*?>, C<+?>, and
9368Note that the minimal matching quantifiers, C<*?>, C<+?>, and
46569369C<??> appear to be nested quantifiers, but aren't. See L<perlre>.
46579370
46589371=end original
46599372
4660しかし、最短一致数量子の C<*?>、C<+?>、C<??> は、ネストした数量子のように
9373最短一致数量子の C<*?>、C<+?>、C<??> は、ネストした数量子のように
46619374見えますが、そうではありません。
46629375L<perlre> を参照してください。
46639376
46649377=item %s never introduced
46659378
46669379=begin original
46679380
46689381(S internal) The symbol in question was declared but somehow went out of
46699382scope before it could possibly have been used.
46709383
46719384=end original
46729385
46739386(S internal) 問題のシンボルは、宣言されましたが、使われる前にスコープから
46749387外れてしまいました。
46759388
9389=item next::method/next::can/maybe::next::method cannot find enclosing method
9390
9391=begin original
9392
9393(F) C<next::method> needs to be called within the context of a
9394real method in a real package, and it could not find such a context.
9395See L<mro>.
9396
9397=end original
9398
9399(F) C<next::method> は実パッケージの実メソッドのコンテキストの中で呼ばれる
9400必要がありますが、そのようなコンテキストが見つけられませんでした。
9401L<mro> を参照してください。
9402
9403=item \N in a character class must be a named character: \N{...} in regex;
9404marked by S<<-- HERE> in m/%s/
9405
9406=begin original
9407
9408(F) The new (as of Perl 5.12) meaning of C<\N> as C<[^\n]> is not valid in a
9409bracketed character class, for the same reason that C<.> in a character
9410class loses its specialness: it matches almost everything, which is
9411probably not what you want.
9412
9413=end original
9414
9415(F) C<[^\n]> という新しい (5.12 からの) C<\N> の意味は大かっこ文字クラスでは
9416妥当ではありません; 文字クラス内の C<.> がその特殊性を失うのと同じ理由です:
9417これはほとんど何にでもマッチングし、これはおそらくあなたの求めているものでは
9418ないでしょう。
9419
9420=item \N{} in inverted character class or as a range end-point is restricted to one character in regex; marked by <-- HERE in m/%s/
9421
9422=begin original
9423
9424(F) Named Unicode character escapes (C<\N{...}>) may return a
9425multi-character sequence. Even though a character class is
9426supposed to match just one character of input, perl will match the
9427whole thing correctly, except when the class is inverted (C<[^...]>),
9428or the escape is the beginning or final end point of a range. The
9429mathematically logical behavior for what matches when inverting
9430is very different from what people expect, so we have decided to
9431forbid it. Similarly unclear is what should be generated when the
9432C<\N{...}> is used as one of the end points of the range, such as in
9433
9434=end original
9435
9436(F) 名前付き Unicode 文字エスケープ (C<(\N{...})>) は複数文字並びを
9437返すことがあります。
9438文字クラスは入力のただ一つの文字にマッチングすることを想定していますが、
9439perl は全体を正しくマッチングします; 但し例外は、
9440クラスが反転された場合 (C<[^...]>) と、
9441エスケープが範囲の始点か終点の場合です。
9442反転したときに何にマッチングするかに関する厳密に論理的な振る舞いは
9443人々が想定するものと大きく異なっているので、これは禁止することにしました。
9444同様に不明確なものは、次のように、範囲の端点として C<\N{...}> が
9445使われたときに何が生成されるべきかということです:
9446
9447 [\x{41}-\N{ARABIC SEQUENCE YEH WITH HAMZA ABOVE WITH AE}]
9448
9449=begin original
9450
9451What is meant here is unclear, as the C<\N{...}> escape is a sequence
9452of code points, so this is made an error.
9453
9454=end original
9455
9456ここで意味しているものは不明確です; C<\N{...}> エスケープは
9457符号位置の並びだからです; 従ってこれはエラーを発生させます。
9458
9459=item \N{NAME} must be resolved by the lexer in regex; marked by
9460S<<-- HERE> in m/%s/
9461
9462=begin original
9463
9464(F) When compiling a regex pattern, an unresolved named character or
9465sequence was encountered. This can happen in any of several ways that
9466bypass the lexer, such as using single-quotish context, or an extra
9467backslash in double-quotish:
9468
9469=end original
9470
9471(F) 正規表現パターンをコンパイルするとき、解決されない名前付き文字や並びに
9472遭遇しました。
9473これはシングルクォート風コンテキストを使ったり、ダブルクォート風で
9474余分な逆スラッシュがあるような、字句解析器を回避する様々な方法のどれかで
9475起こります:
9476
9477 $re = '\N{SPACE}'; # Wrong!
9478 $re = "\\N{SPACE}"; # Wrong!
9479 /$re/;
9480
9481=begin original
9482
9483Instead, use double-quotes with a single backslash:
9484
9485=end original
9486
9487代わりに、単一のバックスラッシュとダブルクォートを使ってください:
9488
9489 $re = "\N{SPACE}"; # ok
9490 /$re/;
9491
9492=begin original
9493
9494The lexer can be bypassed as well by creating the pattern from smaller
9495components:
9496
9497=end original
9498
9499字句解析器はより小さい構造からパターンを作ることによっても回避できます:
9500
9501 $re = '\N';
9502 /${re}{SPACE}/; # Wrong!
9503
9504=begin original
9505
9506It's not a good idea to split a construct in the middle like this, and
9507it doesn't work here. Instead use the solution above.
9508
9509=end original
9510
9511このように中間で構造を分割することはよい考えではなく、ここでは動作しません。
9512代わりに上述した解決法を使ってください。
9513
9514=begin original
9515
9516Finally, the message also can happen under the C</x> regex modifier when the
9517C<\N> is separated by spaces from the C<{>, in which case, remove the spaces.
9518
9519=end original
9520
9521最後に、このメッセージは C</x> 正規表現修飾子 が有効の時に C<\N> が C<{> と
9522空白で区切られているときにもでます; この場合、空白を削除します。
9523
9524 /\N {SPACE}/x; # Wrong!
9525 /\N{SPACE}/x; # ok
9526
46769527=item No %s allowed while running setuid
46779528
46789529=begin original
46799530
46809531(F) Certain operations are deemed to be too insecure for a setuid or
46819532setgid script to even be allowed to attempt. Generally speaking there
46829533will be another way to do what you want that is, if not secure, at least
46839534securable. See L<perlsec>.
46849535
46859536=end original
46869537
46879538(F) ある種の操作は、setuid や setgid スクリプトにとって、
46889539やってみることはできても、とても安全なものとは考えられないものです。
46899540一般に言って、安全ではなくても、安全にしうる、別の方法があるはずです。
46909541L<perlsec> を参照してください。
46919542
4692=item No B<-e> allowed in setuid scripts
9543=item No code specified for -%c
46939544
46949545=begin original
46959546
4696(F) A setuid script can't be specified by the user.
9547(F) Perl's B<-e> and B<-E> command-line options require an argument. If
9548you want to run an empty program, pass the empty string as a separate
9549argument or run a program consisting of a single 0 or 1:
46979550
46989551=end original
46999552
4700(F) setuid スクリ、ユーザによって指定することはきません
9553(F) Perl の B<-e> と B<-E> のコマンドラインオション引数が必要
9554空のプログラムを実行したい場合は、空文字列を別の引数として渡すか、単一の
95550 または 1 からなるプログラムを実行してください:
47019556
9557 perl -e ""
9558 perl -e0
9559 perl -e1
9560
47029561=item No comma allowed after %s
47039562
47049563=begin original
47059564
4706(F) A list operator that has a filehandle or "indirect object" is not
9565(F) A list operator that has a filehandle or "indirect object" is
4707allowed to have a comma between that and the following arguments.
9566not allowed to have a comma between that and the following arguments.
47089567Otherwise it'd be just another one of the arguments.
47099568
47109569=end original
47119570
47129571(F) ファイルハンドルや「間接オブジェクト」を伴うリスト演算子では、
47139572それらとそれ以降の引数の間にコンマを入れることはできません。
47149573そのようにした場合には、引数の一つとなってしまいます。
47159574
47169575=begin original
47179576
4718One possible cause for this is that you expected to have imported a
9577One possible cause for this is that you expected to have imported
4719constant to your name space with B<use> or B<import> while no such
9578a constant to your name space with B<use> or B<import> while no such
4720importing took place, it may for example be that your operating system
9579importing took place, it may for example be that your operating
4721does not support that particular constant. Hopefully you did use an
9580system does not support that particular constant. Hopefully you did
4722explicit import list for the constants you expect to see, please see
9581use an explicit import list for the constants you expect to see;
4723L<perlfunc/use> and L<perlfunc/import>. While an explicit import list
9582please see L<perlfunc/use> and L<perlfunc/import>. While an
4724would probably have caught this error earlier it naturally does not
9583explicit import list would probably have caught this error earlier
4725remedy the fact that your operating system still does not support that
9584it naturally does not remedy the fact that your operating system
4726constant. Maybe you have a typo in the constants of the symbol import
9585still does not support that constant. Maybe you have a typo in
4727list of B<use> or B<import> or in the constant name at the line where
9586the constants of the symbol import list of B<use> or B<import> or in the
4728this error was triggered?
9587constant name at the line where this error was triggered?
47299588
47309589=end original
47319590
47329591これの原因としてあり得るものの一つは、B<use> や B<import> を使って
47339592名前空間にインポートしたつもりの定数が実際にはインポートされていなかった
47349593場合です;
47359594例えば OS が特定の定数に対応していない場合などです。
47369595できればインポートしたい定数のリストを明示的に使ってください;
47379596L<perlfunc/use> と L<perlfunc/import> を参照して下さい。
47389597明示的なインポートリストでおそらくこのエラーをより早く知ることができますが、
47399598そもそも OS がその定数に対応していないという問題を解決はしません。
47409599おそらく B<use> や B<import> のシンボルインポートリストの定数か、
47419600エラーを引き起こした行の定数名をタイプミスしたのでは?
47429601
47439602=item No command into which to pipe on command line
47449603
47459604=begin original
47469605
47479606(F) An error peculiar to VMS. Perl handles its own command line
47489607redirection, and found a '|' at the end of the command line, so it
47499608doesn't know where you want to pipe the output from this command.
47509609
47519610=end original
47529611
4753(F) VMSに固有のエラーです。
9612(F) VMS に固有のエラーです。
47549613Perl は独自にコマンドラインのリダイレクトを扱っていて、
47559614コマンドラインの最後にに '|' を発見しましたが、
47569615このコマンドから出力をどこにパイプしたいのかがわかりませんでした。
47579616
47589617=item No DB::DB routine defined
47599618
47609619=begin original
47619620
47629621(F) The currently executing code was compiled with the B<-d> switch, but
4763for some reason the perl5db.pl file (or some facsimile thereof) didn't
9622for some reason the current debugger (e.g. F<perl5db.pl> or a C<Devel::>
4764define a routine to be called at the beginning of each statement. Which
9623module) didn't define a routine to be called at the beginning of each
4765is odd, because the file should have been required automatically, and
9624statement.
4766should have blown up the require if it didn't parse right.
47679625
47689626=end original
47699627
47709628(F) 現在実行中のコードは、B<-d> スイッチを付けてコンパイルされましたが、
4771何らかの理由により、perl5db.pl (あるいは、その複製) が各実行文の頭で
9629何らかの理由により、現在のデバッガ(F<perl5db.pl> C<Devel::> モジュール)
4772呼び出すルーティンを定義していません。
9630が各実行文の頭で呼び出すルーティンを定義していません。
4773そのファイルは自動的に require されるものであり、正しく解釈できなければ、
4774require が失敗するはずですので、これはとても有り得ない状態です。
47759631
47769632=item No dbm on this machine
47779633
47789634=begin original
47799635
47809636(P) This is counted as an internal error, because every machine should
47819637supply dbm nowadays, because Perl comes with SDBM. See L<SDBM_File>.
47829638
47839639=end original
47849640
4785(P) これは、内部エラーとして扱われます。 Perl に SDBM が付いてくるので、
9641(P) これは、内部エラーとして扱われます; Perl に SDBM が付いてくるので、
47869642どのマシンでも dbm が使えるはずだからです。
47879643L<SDBM_File> を参照してください。
47889644
4789=item No DBsub routine
9645=item No DB::sub routine defined
47909646
47919647=begin original
47929648
4793(F) The currently executing code was compiled with the B<-d> switch,
9649(F) The currently executing code was compiled with the B<-d> switch, but
4794but for some reason the perl5db.pl file (or some facsimile thereof)
9650for some reason the current debugger (e.g. F<perl5db.pl> or a C<Devel::>
4795didn't define a DB::sub routine to be called at the beginning of each
9651module) didn't define a C<DB::sub> routine to be called at the beginning
4796ordinary subroutine call.
9652of each ordinary subroutine call.
47979653
47989654=end original
47999655
4800(F) 現在実行中のコードは、-d スイッチを付けてコンパイルされましたが、
9656(F) 現在実行中のコードは、B<-d> スイッチを付けてコンパイルされましたが、
4801何らかの理由により、perl5db.pl (あるいは、その複製)
9657何らかの理由により、現在のデバッガ(F<perl5db.pl> C<Devel::> モジュール)
4802各サブルーティン呼び出しの頭で呼び出す
9658各サブルーン呼び出しの頭で呼び出す C<DB::sub> ルーティンを
4803DB::sub ルーティンを定義していませんでした。
9659定義していませんでした。
48049660
9661=item No directory specified for -I
9662
9663=begin original
9664
9665(F) The B<-I> command-line switch requires a directory name as part of the
9666I<same> argument. Use B<-Ilib>, for instance. B<-I lib> won't work.
9667
9668=end original
9669
9670(F) B<-I> コマンドラインオプションは I<同じ> 引数の一部としてディレクトリ名が
9671必要です。
9672例えば、B<-Ilib> としてください。
9673B<-I lib> は動作しません。
9674
48059675=item No error file after 2> or 2>> on command line
48069676
48079677=begin original
48089678
48099679(F) An error peculiar to VMS. Perl handles its own command line
48109680redirection, and found a '2>' or a '2>>' on the command line, but can't
48119681find the name of the file to which to write data destined for stderr.
48129682
48139683=end original
48149684
4815(F) VMSに固有のエラーです。
9685(F) VMS に固有のエラーです。
48169686Perl は独自にコマンドラインのリダイレクトを扱っていて、
48179687コマンドラインに '2>' や '2>>' を発見しましたが、
48189688標準エラーとしてデータを書き込むファイル名が見つかりませんでした。
48199689
9690=item No group ending character '%c' found in template
9691
9692=begin original
9693
9694(F) A pack or unpack template has an opening '(' or '[' without its
9695matching counterpart. See L<perlfunc/pack>.
9696
9697=end original
9698
9699(F) pack や unpack のテンプレートに開きかっこの '(' や '[' がありますが、
9700対応する閉じかっこがありません。
9701L<perlfunc/pack> を参照してください。
9702
48209703=item No input file after < on command line
48219704
48229705=begin original
48239706
48249707(F) An error peculiar to VMS. Perl handles its own command line
48259708redirection, and found a '<' on the command line, but can't find the
48269709name of the file from which to read data for stdin.
48279710
48289711=end original
48299712
4830(F) VMS 有のエラーです。
9713(F) VMS に固有のエラーです。
48319714Perl は独自にコマンドラインのリダイレクトを扱っていて、コマンドラインに
48329715'<' を発見しましたが、標準入力として読み込むためのファイル名が
48339716見つかりませんでした。
48349717
4835=item No #! line
9718=item No next::method '%s' found for %s
48369719
48379720=begin original
48389721
4839(F) The setuid emulator requires that scripts have a well-formed #! line
9722(F) C<next::method> found no further instances of this method name
4840even on machines that don't support the #! construct.
9723in the remaining packages of the MRO of this class. If you don't want
9724it throwing an exception, use C<maybe::next::method>
9725or C<next::can>. See L<mro>.
48419726
48429727=end original
48439728
4844(F) setuid エミュレータたとえマシンがサポートしていなくても
9729(F) C<next::method> で、このクラスの MRO で残っているパッケージの中でこの
4845完全な形 #! 行がクリプトに書かれていなければなりません。
9730メソッド名インタンスがもうありません。
9731もし例外を投げたくないなら、C<maybe::next::method> か C<next::can> を
9732使ってください。
9733L<mro> を参照してください。
48469734
9735=item Non-finite repeat count does nothing
9736
9737=begin original
9738
9739(W numeric) You tried to execute the
9740L<C<x>|perlop/Multiplicative Operators> repetition operator C<Inf> (or
9741C<-Inf>) or C<NaN> times, which doesn't make sense.
9742
9743=end original
9744
9745(W numeric) L<C<x>|perlop/Multiplicative Operators> 繰り返し演算子を
9746C<Inf> (または C<-Inf>) 回、または C<NaN> 回実行しようとしました;
9747これは意味がありません。
9748
9749=item Non-hex character in regex; marked by S<<-- HERE> in m/%s/
9750
9751=begin original
9752
9753(F) In a regular expression, there was a non-hexadecimal character where
9754a hex one was expected, like
9755
9756=end original
9757
9758(F) 正規表現で、次のように 16 進文字が想定されるところで非 16 進文字がありました
9759
9760 (?[ [ \xDG ] ])
9761 (?[ [ \x{DEKA} ] ])
9762
9763=item Non-octal character in regex; marked by S<<-- HERE> in m/%s/
9764
9765=begin original
9766
9767(F) In a regular expression, there was a non-octal character where
9768an octal one was expected, like
9769
9770=end original
9771
9772(F) 正規表現で、次のように 8 進文字が想定されるところで非 8 進文字がありました
9773
9774 (?[ [ \o{1278} ] ])
9775
9776=item Non-octal character '%c'. Resolved as "%s"
9777
9778=begin original
9779
9780(W digit) In parsing an octal numeric constant, a character was
9781unexpectedly encountered that isn't octal. The resulting value
9782is as indicated.
9783
9784=end original
9785
9786(W digit) 8 進数定数をパースするときに、8 進数でない文字に遭遇しました。
9787結果の値は示された通りになります。
9788
48479789=item "no" not allowed in expression
48489790
48499791=begin original
48509792
48519793(F) The "no" keyword is recognized and executed at compile time, and
48529794returns no useful value. See L<perlmod>.
48539795
48549796=end original
48559797
48569798(F) "no" キーワードは、コンパイル時に認識され、実行されるもので、
48579799意味のある値を返しません。
48589800L<perlmod> を参照してください。
48599801
9802=item Non-string passed as bitmask
9803
9804=begin original
9805
9806(W misc) A number has been passed as a bitmask argument to select().
9807Use the vec() function to construct the file descriptor bitmasks for
9808select. See L<perlfunc/select>.
9809
9810=end original
9811
9812(W misc) select() のビットマスク引数として数値が渡されました。
9813select のためのファイル記述子のビットマスクを構成するには、
9814vec() 関数を使ってください。
9815L<perlfunc/select> を参照してください。
9816
48609817=item No output file after > on command line
48619818
48629819=begin original
48639820
48649821(F) An error peculiar to VMS. Perl handles its own command line
48659822redirection, and found a lone '>' at the end of the command line, so it
48669823doesn't know where you wanted to redirect stdout.
48679824
48689825=end original
48699826
4870(F) VMS 有のエラーです。
9827(F) VMS に固有のエラーです。
48719828Perl は独自にコマンドラインのリダイレクトを扱っていて、コマンドラインの
48729829最後に単独の '>' を発見したので、stdout をどこにリダイレクトしたいのかが
48739830わかりませんでした。
48749831
48759832=item No output file after > or >> on command line
48769833
48779834=begin original
48789835
48799836(F) An error peculiar to VMS. Perl handles its own command line
48809837redirection, and found a '>' or a '>>' on the command line, but can't
48819838find the name of the file to which to write data destined for stdout.
48829839
48839840=end original
48849841
4885(F) VMS 有のエラーです。
9842(F) VMS に固有のエラーです。
48869843Perl は独自にコマンドラインのリダイレクトを扱っていて、コマンドラインに
48879844'>' や '>>' を発見しましたが、stdout を書き込むためのファイル名が
48889845見つかりませんでした。
48899846
9847=item No package name allowed for subroutine %s in "our"
9848
48909849=item No package name allowed for variable %s in "our"
48919850
48929851=begin original
48939852
4894(F) Fully qualified variable names are not allowed in "our"
9853(F) Fully qualified subroutine and variable names are not allowed in "our"
4895declarations, because that doesn't make much sense under existing
9854declarations, because that doesn't make much sense under existing rules.
4896semantics. Such syntax is reserved for future extensions.
9855Such syntax is reserved for future extensions.
48979856
48989857=end original
48999858
4900(F) 完全修飾変数名は "our" 宣言では使えません;
9859(F) 完全修飾されたサブルーチン名や変数名は "our" 宣言では使えません;
49019860なぜなら現在の動作ではほとんど意味がないからです。
49029861そのような文法は将来の拡張に予約されています。
49039862
49049863=item No Perl script found in input
49059864
49069865=begin original
49079866
49089867(F) You called C<perl -x>, but no line was found in the file beginning
49099868with #! and containing the word "perl".
49109869
49119870=end original
49129871
49139872(F) C<perl -x> を呼び出しましたが、そのファイルに #! で始まり、
49149873"perl" という語を含む行が見つかりませんでした。
49159874
49169875=item No setregid available
49179876
49189877=begin original
49199878
49209879(F) Configure didn't find anything resembling the setregid() call for
49219880your system.
49229881
49239882=end original
49249883
49259884(F) Configure が、システム上に setregid() のような関数を
49269885見つけられませんでした。
49279886
49289887=item No setreuid available
49299888
49309889=begin original
49319890
49329891(F) Configure didn't find anything resembling the setreuid() call for
49339892your system.
49349893
49359894=end original
49369895
49379896(F) Configure が、システム上に setreuid() のような関数を
49389897見つけられませんでした。
49399898
4940=item No space allowed after -%c
9899=item No such class %s
49419900
49429901=begin original
49439902
4944(F) The argument to the indicated command line switch must follow
9903(F) You provided a class qualifier in a "my", "our" or "state"
4945immediately after the switch, without intervening spaces.
9904declaration, but this class doesn't exist at this point in your program.
49469905
49479906=end original
49489907
4949(F) されたコマンドラインスイッチの引数は
9908(F) "my", "our", "state" の宣言でクラス修飾子が指定されまし指定された
4950イッチの直後にスペースを空けない書く必要があり
9909クラは現時点は存在しせん
49519910
4952=item No %s specified for -%c
9911=item No such class field "%s" in variable %s of type %s
49539912
49549913=begin original
49559914
4956(F) The indicated command line switch needs a mandatory argument, but
9915(F) You tried to access a key from a hash through the indicated typed
4957you haven't specified one.
9916variable but that key is not allowed by the package of the same type.
9917The indicated package has restricted the set of allowed keys using the
9918L<fields> pragma.
49589919
49599920=end original
49609921
4961(F) 示されたコマンドラインオプョンは引数必須ですがそれが
9922(F) 示されている型の変数を通してハッュのキーアクセスしようとしましたが、
4962指定されませんでした
9923そのキーは同じ型のパッケージによって許可されていません。
9924示されているパッケージは L<fields> プラグマによって許可されるキーの集合が
9925制限されています。
49639926
9927=item No such hook: %s
9928
9929=begin original
9930
9931(F) You specified a signal hook that was not recognized by Perl.
9932Currently, Perl accepts C<__DIE__> and C<__WARN__> as valid signal hooks.
9933
9934=end original
9935
9936(F) Perl が認識できないシグナルフックを指定しました。
9937現在のところ、Perl は有効なシグナルフックとして
9938C<__DIE__> と C<__WARN__> を受け付けます。
9939
49649940=item No such pipe open
49659941
49669942=begin original
49679943
49689944(P) An error peculiar to VMS. The internal routine my_pclose() tried to
49699945close a pipe which hadn't been opened. This should have been caught
49709946earlier as an attempt to close an unopened filehandle.
49719947
49729948=end original
49739949
4974(P) VMS 有のエラーです。
9950(P) VMS に固有のエラーです。
49759951内部ルーチンである my_pclose() が、開いていないパイプを閉じようとしました。
49769952これは開いていないファイルハンドルを閉じようとしたとしてもっと早くに
49779953捕捉されるべきものです。
49789954
4979=item No such pseudo-hash field "%s"
4980
4981=begin original
4982
4983(F) You tried to access an array as a hash, but the field name used is
4984not defined. The hash at index 0 should map all valid field names to
4985array indices for that to work.
4986
4987=end original
4988
4989(F) 配列にハッシュとしてアクセスしようとしましたが、使われたフィールド名は
4990未定義です。
4991インデックス 0 のハッシュは全ての有効なフィールド名が動作する配列
4992インデックスにマッピングされるべきです。
4993
4994=item No such pseudo-hash field "%s" in variable %s of type %s
4995
4996=begin original
4997
4998(F) You tried to access a field of a typed variable where the type does
4999not know about the field name. The field names are looked up in the
5000%FIELDS hash in the type package at compile time. The %FIELDS hash is
5001%usually set up with the 'fields' pragma.
5002
5003=end original
5004
5005(F) 型がフィールド名について知らない型付き変数のフィールドに
5006アクセスしようとしました。
5007フィールド名はコンパイル時に型パッケージの %FIELDS ハッシュから
5008検索されます。
5009%FIELDS ハッシュは通常 'fields' プラグマで設定されます。
5010
50119955=item No such signal: SIG%s
50129956
50139957=begin original
50149958
50159959(W signal) You specified a signal name as a subscript to %SIG that was
50169960not recognized. Say C<kill -l> in your shell to see the valid signal
50179961names on your system.
50189962
50199963=end original
50209964
50219965(W signal) %SIG の添字として認識できないシグナル名を指定しました。
50229966お使いのシステムで使用可能なシグナル名を調べるには、
50239967シェル上で C<kill -l> などとしてください。
50249968
50259969=item Not a CODE reference
50269970
50279971=begin original
50289972
50299973(F) Perl was trying to evaluate a reference to a code value (that is, a
50309974subroutine), but found a reference to something else instead. You can
50319975use the ref() function to find out what kind of ref it really was. See
50329976also L<perlref>.
50339977
50349978=end original
50359979
5036(F) Perl がコード値 (サブルーティン) へのリファレンスを
9980(F) Perl がコード値 (サブルーン) へのリファレンスを
50379981評価しようとしましたが、別のものへのリファレンスでした。
50389982実際にどんな種類のリファレンスかを調べるには、ref() 関数を
50399983使うことができます。
50409984L<perlref> も参照してください。
50419985
5042=item Not a format reference
5043
5044=begin original
5045
5046(F) I'm not sure how you managed to generate a reference to an anonymous
5047format, but this indicates you did, and that it didn't exist.
5048
5049=end original
5050
5051(F) どのように無名のフォーマットへのリファレンスを生成したのかは
5052わかりませんが、このメッセージは、それが指定されて、
5053存在しなかったことを示します。
5054
50559986=item Not a GLOB reference
50569987
50579988=begin original
50589989
50599990(F) Perl was trying to evaluate a reference to a "typeglob" (that is, a
50609991symbol table entry that looks like C<*foo>), but found a reference to
50619992something else instead. You can use the ref() function to find out what
50629993kind of ref it really was. See L<perlref>.
50639994
50649995=end original
50659996
50669997(F) Perl が「型グロブ」(これは、C<*foo> のような
50679998シンボルテーブルエントリです) へのリファレンスを評価しようとしましたが、
50689999別のものへのリファレンスでした。
506910000実際にどんな種類のリファレンスかを調べるには、ref() 関数を
507010001使うことができます。
507110002L<perlref> を参照してください。
507210003
507310004=item Not a HASH reference
507410005
507510006=begin original
507610007
507710008(F) Perl was trying to evaluate a reference to a hash value, but found a
507810009reference to something else instead. You can use the ref() function to
507910010find out what kind of ref it really was. See L<perlref>.
508010011
508110012=end original
508210013
508310014(F) Perl がハッシュ値へのリファレンスを評価しようとしましたが、
508410015別のものへのリファレンスでした。
508510016実際にどんな種類のリファレンスかを調べるには、ref() 関数を
508610017使うことができます。
508710018L<perlref> を参照してください。
508810019
10020=item '#' not allowed immediately following a sigil in a subroutine signature
10021
10022=begin original
10023
10024(F) In a subroutine signature definition, a comment following a sigil
10025(C<$>, C<@> or C<%>), needs to be separated by whitespace or a comma etc., in
10026particular to avoid confusion with the C<$#> variable. For example:
10027
10028=end original
10029
10030(F) サブルーチンシグネチャ定義で、印 (C<$>, C<@>, C<%>) に引き続く
10031コメントは、特に C<$#> 変数との混乱を避けるために、
10032空白やカンマなどで分ける必要があります;
10033例えば:
10034
10035 # bad
10036 sub f ($# ignore first arg
10037 , $b) {}
10038 # good
10039 sub f ($, # ignore first arg
10040 $b) {}
10041
508910042=item Not an ARRAY reference
509010043
509110044=begin original
509210045
509310046(F) Perl was trying to evaluate a reference to an array value, but found
509410047a reference to something else instead. You can use the ref() function
509510048to find out what kind of ref it really was. See L<perlref>.
509610049
509710050=end original
509810051
509910052(F) Perl が配列値へのリファレンスを評価しようとしましたが、
510010053別のものへのリファレンスでした。
510110054実際にどんな種類のリファレンスかを調べるには、ref() 関数を
510210055使うことができます。
510310056L<perlref> を参照してください。
510410057
5105=item Not a perl script
5106
5107=begin original
5108
5109(F) The setuid emulator requires that scripts have a well-formed #! line
5110even on machines that don't support the #! construct. The line must
5111mention perl.
5112
5113=end original
5114
5115(F) setuid エミュレータでは、たとえマシンがサポートしていなくても、
5116完全な形の #! 行がスクリプトに書かれていなければなりません。
5117この行で指定されるのは、perl でなければなりません。
5118
511910058=item Not a SCALAR reference
512010059
512110060=begin original
512210061
512310062(F) Perl was trying to evaluate a reference to a scalar value, but found
512410063a reference to something else instead. You can use the ref() function
512510064to find out what kind of ref it really was. See L<perlref>.
512610065
512710066=end original
512810067
512910068(F) Perl がスカラ値へのリファレンスを評価しようとしましたが、
513010069別のものへのリファレンスでした。
513110070実際にどんな種類のリファレンスかを調べるには、ref() 関数を
513210071使うことができます。
513310072L<perlref> を参照してください。
513410073
513510074=item Not a subroutine reference
513610075
513710076=begin original
513810077
513910078(F) Perl was trying to evaluate a reference to a code value (that is, a
514010079subroutine), but found a reference to something else instead. You can
514110080use the ref() function to find out what kind of ref it really was. See
514210081also L<perlref>.
514310082
514410083=end original
514510084
5146(F) Perl がコード値 (サブルーティン) へのリファレンスを
10085(F) Perl がコード値 (サブルーン) へのリファレンスを
514710086評価しようとしましたが、別のものへのリファレンスでした。
514810087実際にどんな種類のリファレンスかを調べるには、ref() 関数を
514910088使うことができます。
515010089L<perlref> も参照してください。
515110090
515210091=item Not a subroutine reference in overload table
515310092
515410093=begin original
515510094
515610095(F) An attempt was made to specify an entry in an overloading table that
515710096doesn't somehow point to a valid subroutine. See L<overload>.
515810097
515910098=end original
516010099
5161(F) 多重定義テーブルで、有効なサブルーティンを指していないエントリを
10100(F) 多重定義テーブルで、有効なサブルーンを指していないエントリを
516210101指定しようとしました。
516310102L<overload> を参照してください。
516410103
516510104=item Not enough arguments for %s
516610105
516710106=begin original
516810107
516910108(F) The function requires more arguments than you specified.
517010109
517110110=end original
517210111
517310112(F) この関数は、指定したよりも多くの引数を必要とします。
517410113
517510114=item Not enough format arguments
517610115
517710116=begin original
517810117
517910118(W syntax) A format specified more picture fields than the next line
518010119supplied. See L<perlform>.
518110120
518210121=end original
518310122
518410123(W syntax) 指定したフォーマットに、次の行で指定したより多くの
518510124ピクチャフィールドがあります。
518610125L<perlform> を参照してください。
518710126
518810127=item %s: not found
518910128
519010129=begin original
519110130
519210131(A) You've accidentally run your script through the Bourne shell instead
519310132of Perl. Check the #! line, or manually feed your script into Perl
519410133yourself.
519510134
519610135=end original
519710136
5198(A) スクリプトを Perl ではなく Bourne shell で実行しようとしてい
10137(A) スクリプトを perl ではなく Bourne shell で実行しようとしました
5199#! ラインをチェックするか、手動でスクリプトを Perl に渡してください。
10138#! をチェックするか、スクリプトを直接 Perl で起動してください。
520010139
10140=item (?[...]) not valid in locale in regex; marked by S<<-- HERE> in m/%s/
10141
10142=begin original
10143
10144(F) C<(?[...])> cannot be used within the scope of a C<S<use locale>> or with
10145an C</l> regular expression modifier, as that would require deferring
10146to run-time the calculation of what it should evaluate to, and it is
10147regex compile-time only.
10148
10149=end original
10150
10151(F) C<(?[...])> は C<S<use locale>> のスコープ内や C</l> 正規表現修飾子付きでは
10152使えません; これは何を評価するべきかを実行時の計算によりますが、
10153これは正規表現のコンパイル時のみだからです。
10154
520110155=item no UTC offset information; assuming local time is UTC
520210156
520310157=begin original
520410158
520510159(S) A warning peculiar to VMS. Perl was unable to find the local
520610160timezone offset, so it's assuming that local system time is equivalent
520710161to UTC. If it's not, define the logical name
520810162F<SYS$TIMEZONE_DIFFERENTIAL> to translate to the number of seconds which
520910163need to be added to UTC to get local time.
521010164
521110165=end original
521210166
5213(S) VMS 固有の警告です。
10167(S) VMS 固有の警告です。
521410168Perl はローカルタイムゾーンオフセットを見つけることができなかったので、
521510169ローカルシステムタイムは UTC と等価であると仮定します。
521610170もし違うなら、論理名 F<SYS$TIMEZONE_DIFFERENTIAL> に、UTC からローカル
521710171時刻を得るために加える必要がある秒数を定義してください。
521810172
5219=item Null filename used
5220
5221=begin original
5222
5223(F) You can't require the null filename, especially because on many
5224machines that means the current directory! See L<perlfunc/require>.
5225
5226=end original
5227
5228(F) 特に、多くのマシンでカレントディレクトリを意味するため、
5229空のファイル名は require できません!
5230L<perlfunc/require> を参照してください。
5231
523210173=item NULL OP IN RUN
523310174
523410175=begin original
523510176
5236(P debugging) Some internal routine called run() with a null opcode
10177(S debugging) Some internal routine called run() with a null opcode
523710178pointer.
523810179
523910180=end original
524010181
5241(P debugging) 内部ルーティンで、ヌル opcode ポインタで run() を
10182(S debugging) 内部ルーティンで、ヌル opcode ポインタで run() を
524210183呼んだものがあります。
524310184
524410185=item Null picture in formline
524510186
524610187=begin original
524710188
524810189(F) The first argument to formline must be a valid format picture
524910190specification. It was found to be empty, which probably means you
525010191supplied it an uninitialized value. See L<perlform>.
525110192
525210193=end original
525310194
525410195(F) formline の第 1 引数は有効なフォーマットピクチャー指定でなければ
525510196なりません。
525610197これが空でした; おそらく初期化していない値を指定したのでしょう。
525710198L<perlform> を参照してください。
525810199
525910200=item Null realloc
526010201
526110202=begin original
526210203
526310204(P) An attempt was made to realloc NULL.
526410205
526510206=end original
526610207
526710208(P) realloc NULL を行なおうとしました。
526810209
526910210=item NULL regexp argument
527010211
527110212=begin original
527210213
527310214(P) The internal pattern matching routines blew it big time.
527410215
527510216=end original
527610217
527710218(P) 内部パターンマッチルーティンが、大当たりです。
527810219
527910220=item NULL regexp parameter
528010221
528110222=begin original
528210223
528310224(P) The internal pattern matching routines are out of their gourd.
528410225
528510226=end original
528610227
528710228(P) 内部パターンマッチルーティンが、狂っています。
528810229
528910230=item Number too long
529010231
529110232=begin original
529210233
529310234(F) Perl limits the representation of decimal numbers in programs to
5294about about 250 characters. You've exceeded that length. Future
10235about 250 characters. You've exceeded that length. Future
529510236versions of Perl are likely to eliminate this arbitrary limitation. In
529610237the meantime, try using scientific notation (e.g. "1e6" instead of
529710238"1_000_000").
529810239
529910240=end original
530010241
5301Perl はプログラム中での十進数の表現をおよそ 250 文字に制限しています。
10242Perl はプログラム中での十進数の表現を 250 文字に制限しています。
530210243この制限を越えました。
530310244Perl の将来のバージョンではこの恣意的な制限は除去されるでしょう。
530410245それまでの間は、科学的な記述法("1_000_000" ではなく "1e6")を
530510246使用してください。
530610247
5307=item Octal number in vector unsupported
10248=item Number with no digits
530810249
530910250=begin original
531010251
5311(F) Numbers with a leading C<0> are not currently allowed in vectors.
10252(F) Perl was looking for a number but found nothing that looked like
5312The octal number interpretation of such numbers may be supported in a
10253a number. This happens, for example with C<\o{}>, with no number between
5313future version.
10254the braces.
531410255
531510256=end original
531610257
5317頭に C<0> の付いた数値現在のところベクタとしては使えません
10258(F) Perl数字を探していましたが数字に見ないものが見つかりした
5318のような数値を 8 数として解釈る機能は将来のバージョンで
10259れは、例えば C<\o{}> では、中かっこの中に字がないきに起こりま
5319対応されるでしょう。
532010260
532110261=item Octal number > 037777777777 non-portable
532210262
532310263=begin original
532410264
532510265(W portable) The octal number you specified is larger than 2**32-1
532610266(4294967295) and therefore non-portable between systems. See
532710267L<perlport> for more on portability concerns.
532810268
532910269=end original
533010270
533110271(W portable) 指定した 8 進数が 2**32-1 (4294967295) より大きいので、
533210272システム間で移植性がありません。
533310273移植性に関するさらなる考察については L<perlport> を参照してください。
533410274
10275=item Odd name/value argument for subroutine '%s'
10276
533510277=begin original
533610278
5337See also L<perlport> for writing portable code.
10279(F) A subroutine using a slurpy hash parameter in its signature
10280received an odd number of arguments to populate the hash. It requires
10281the arguments to be paired, with the same number of keys as values.
10282The caller of the subroutine is presumably at fault.
533810283
533910284=end original
534010285
5341移植性のあるコードの書き方についても L<perlport> 参照しくださ
10286(F) シグネチャで吸い込みハッシュ引数使っているサブルーチンが、
10287ハッシュに展開するために奇数の数の引数を受け取りました。
10288引数は、同じ数のキーと値のペアになっていることが必要です。
10289サブルーチンの呼び出しものがおそらく間違えているのでしょう。
534210290
10291=begin original
10292
10293The message attempts to include the name of the called subroutine. If the
10294subroutine has been aliased, the subroutine's original name will be shown,
10295regardless of what name the caller used.
10296
10297=end original
10298
10299メッセージには呼び出されたサブルーチンの名前を含めようとします。
10300サブルーチンに別名がある場合、どの名前で呼び出されたかに関わらず、
10301元の名前が表示されます。
10302
534310303=item Odd number of arguments for overload::constant
534410304
534510305=begin original
534610306
5347(W) The call to overload::constant contained an odd number of arguments.
10307(W overload) The call to overload::constant contained an odd number of
5348The arguments should come in pairs.
10308arguments. The arguments should come in pairs.
534910309
535010310=end original
535110311
5352(W) 奇数の数の引数で overload::constant を呼び出しました。
10312(W overload) 奇数の数の引数で overload::constant を呼び出しました。
535310313引数はペアになっている必要があります。
535410314
10315=item Odd number of elements in anonymous hash
10316
10317=begin original
10318
10319(W misc) You specified an odd number of elements to initialize a hash,
10320which is odd, because hashes come in key/value pairs.
10321
10322=end original
10323
10324(W misc) ハッシュリストへの要素の数が奇数でした; ハッシュリストは、
10325key/value のペアで与えられますから、これは奇妙なことです。
10326
535510327=item Odd number of elements in hash assignment
535610328
535710329=begin original
535810330
535910331(W misc) You specified an odd number of elements to initialize a hash,
536010332which is odd, because hashes come in key/value pairs.
536110333
536210334=end original
536310335
5364(W misc) ハッシュリストへの要素の数が奇数でした
10336(W misc) ハッシュリストへの要素の数が奇数でした; ハッシュリストは、
5365ハッシュリストは、key/value のペアで与えられますから、
10337key/value のペアで与えられますから、これは奇妙なことです。
5366これは奇妙なことです。
536710338
536810339=item Offset outside string
536910340
537010341=begin original
537110342
5372(F) You tried to do a read/write/send/recv operation with an offset
10343(F)(W layer) You tried to do a read/write/send/recv/seek operation
5373pointing outside the buffer. This is difficult to imagine. The sole
10344with an offset pointing outside the buffer. This is difficult to
5374exception to this is that C<sysread()>ing past the buffer will extend
10345imagine. The sole exceptions to this are that zero padding will
5375the buffer and zero pad the new area.
10346take place when going past the end of the string when either
10347C<sysread()>ing a file, or when seeking past the end of a scalar opened
10348for I/O (in anticipation of future reads and to imitate the behavior
10349with real files).
537610350
537710351=end original
537810352
5379(F) バッファの外を指すオフセットで read/write/send/recv 操作を
10353(F)(W layer) バッファの外を指すオフセットで read/write/send/recv/seek 操作を
538010354しようとしました。
538110355これは想像しにくいことです。
5382唯一の例外は、バッファを通り過ぎて C<sysread()> するとバッファが
10356唯一の例外は、ファイルを C<sysread()> するときに 文字列の最後を越えたか、
5383拡張され、新しエリアには 0 でパッディングされま
10357(将来の読み込みと実際のファイルの振る舞を模倣ることを期待して)
10358I/O のためにオープンされているスカラの最後を越えてシークしたときに、
103590 でパッディングされたときです。
538410360
5385=item -%s on unopened filehandle %s
10361=item Old package separator used in string
538610362
538710363=begin original
538810364
5389(W unopened) You tried to invoke a file test operator on a filehandle
10365(W syntax) You used the old package separator, "'", in a variable
5390that isn't open. Check your logic. See also L<perlfunc/-X>.
10366named inside a double-quoted string; e.g., C<"In $name's house">. This
10367is equivalent to C<"In $name::s house">. If you meant the former, put
10368a backslash before the apostrophe (C<"In $name\'s house">).
539110369
539210370=end original
539310371
5394(W unopened) 開いていないファイハンドルに対してファイルテス演算子を
10372(W syntax) ダブクォーされた文字列の中の変数名で、
5395使おとしました。
10373C<"In $name's house"> のよに、
5396論理をチェクしてください。
10374古いパケージ区切り文字である "'" を使ました
5397L<perlfunc/-X> も参照してください
10375これは C<"In $name::s house"> と等価です
10376前者の意味なら、アポストロフィの前に逆スラッシュを置いてください
10377(C<"In $name\'s house">)。
539810378
5399=item %s() on unopened %s %s
10379=item %s() on unopened %s
540010380
540110381=begin original
540210382
540310383(W unopened) An I/O operation was attempted on a filehandle that was
540410384never initialized. You need to do an open(), a sysopen(), or a socket()
540510385call, or call a constructor from the FileHandle package.
540610386
540710387=end original
540810388
540910389(W unopened) 初期化していないファイルハンドルに I/O 操作をしようとしました。
541010390open(), sysopen(), socket() を呼び出すか、FileHandle パッケージの
541110391コンストラクタを呼び出す必要があります。
541210392
10393=item -%s on unopened filehandle %s
10394
10395=begin original
10396
10397(W unopened) You tried to invoke a file test operator on a filehandle
10398that isn't open. Check your control flow. See also L<perlfunc/-X>.
10399
10400=end original
10401
10402(W unopened) 開いていないファイルハンドルに対してファイルテスト演算子を
10403使おうとしました。
10404制御フローをチェックしてください。
10405L<perlfunc/-X> も参照してください。
10406
541310407=item oops: oopsAV
541410408
541510409=begin original
541610410
541710411(S internal) An internal warning that the grammar is screwed up.
541810412
541910413=end original
542010414
542110415(S internal) 文法がおかしくなったことを示す内部警告です。
542210416
542310417=item oops: oopsHV
542410418
542510419=begin original
542610420
542710421(S internal) An internal warning that the grammar is screwed up.
542810422
542910423=end original
543010424
543110425(S internal) 文法がおかしくなったことを示す内部警告です。
543210426
5433=item Operation `%s': no method found, %s
10427=item Operand with no preceding operator in regex; marked by S<<-- HERE> in
10428m/%s/
543410429
543510430=begin original
543610431
10432(F) You wrote something like
10433
10434=end original
10435
10436(F) 以下のようなものを書きました
10437
10438 (?[ \p{Digit} \p{Thai} ])
10439
10440=begin original
10441
10442There are two operands, but no operator giving how you want to combine
10443them.
10444
10445=end original
10446
10447二つのオペランドがありますが、それをどのように結びつけたいかを指定する
10448演算子がありません。
10449
10450=item Operation "%s": no method found, %s
10451
10452=begin original
10453
543710454(F) An attempt was made to perform an overloaded operation for which no
543810455handler was defined. While some handlers can be autogenerated in terms
543910456of other handlers, there is no default handler for any operation, unless
5440C<fallback> overloading key is specified to be true. See L<overload>.
10457the C<fallback> overloading key is specified to be true. See L<overload>.
544110458
544210459=end original
544310460
544410461(F) ハンドラが定義されていないオーバーロード操作が行われました。
544510462一部のハンドラは他のハンドラから自動生成されますが、C<fallback>
544610463オーバーロードキーが真に指定されていない限り、どの動作にも
544710464デフォルトのハンドラはありません。
544810465L<overload> を参照してください。
544910466
10467=item Operation "%s" returns its argument for non-Unicode code point 0x%X
10468
10469=begin original
10470
10471(S non_unicode) You performed an operation requiring Unicode rules
10472on a code point that is not in Unicode, so what it should do is not
10473defined. Perl has chosen to have it do nothing, and warn you.
10474
10475=end original
10476
10477(S non_unicode) Unicode ではない符号位置に対して、Unicode の規則が
10478必要な操作を実行しました; 何をするべきかは未定義です。
10479Perl は何もしないことを選択し、警告を出します。
10480
10481=begin original
10482
10483If the operation shown is "ToFold", it means that case-insensitive
10484matching in a regular expression was done on the code point.
10485
10486=end original
10487
10488示された操作が "ToFold" なら、正規表現での大文字小文字を無視したマッチングが
10489その符号位置に対して行われたということです。
10490
10491=begin original
10492
10493If you know what you are doing you can turn off this warning by
10494C<no warnings 'non_unicode';>.
10495
10496=end original
10497
10498自分で何をしているのかが分かっているなら、
10499C<no warnings 'non_unicode';> とすることでこの警告をオフにできます。
10500
10501=item Operation "%s" returns its argument for UTF-16 surrogate U+%X
10502
10503=begin original
10504
10505(S surrogate) You performed an operation requiring Unicode
10506rules on a Unicode surrogate. Unicode frowns upon the use
10507of surrogates for anything but storing strings in UTF-16, but
10508rules are (reluctantly) defined for the surrogates, and
10509they are to do nothing for this operation. Because the use of
10510surrogates can be dangerous, Perl warns.
10511
10512=end original
10513
10514(S surrogate) Unicode サロゲートに対して Unicode の規則が必要な
10515操作を実行しました。
10516Unicode は文字列を UTF-16 で保管する以外のことでサロゲートを使うことに
10517難色を示しますが、規則は(渋々)サロゲートのために定義されていて、それは
10518この操作に対して何もしないことです。
10519サロゲートの使用は危険かも知れないので、Perl は警告します。
10520
10521=begin original
10522
10523If the operation shown is "ToFold", it means that case-insensitive
10524matching in a regular expression was done on the code point.
10525
10526=end original
10527
10528示された操作が "ToFold" なら、正規表現での大文字小文字を無視したマッチングが
10529その符号位置に対して行われたということです。
10530
10531=begin original
10532
10533If you know what you are doing you can turn off this warning by
10534C<no warnings 'surrogate';>.
10535
10536=end original
10537
10538自分で何をしているのかが分かっているなら、
10539C<no warnings 'surrogate';> とすることでこの警告をオフにできます。
10540
545010541=item Operator or semicolon missing before %s
545110542
545210543=begin original
545310544
545410545(S ambiguous) You used a variable or subroutine call where the parser
545510546was expecting an operator. The parser has assumed you really meant to
545610547use an operator, but this is highly likely to be incorrect. For
545710548example, if you say "*foo *foo" it will be interpreted as if you said
545810549"*foo * 'foo'".
545910550
546010551=end original
546110552
546210553(S ambiguous) パーサーが演算子を装置している場所で変数やサブルーチン
546310554呼び出しが使われました。
546410555パーサーはあなたが本当に演算子を使おうとしていると仮定しますが、
546510556これは大抵正しくありません。
546610557例えば、"*foo *foo" とすると、"*foo * 'foo'" としたとして解釈されます。
546710558
10559=item Optional parameter lacks default expression
10560
10561=begin original
10562
10563(F) In a subroutine signature, you wrote something like "$a =", making a
10564named optional parameter without a default value. A nameless optional
10565parameter is permitted to have no default value, but a named one must
10566have a specific default. You probably want "$a = undef".
10567
10568=end original
10569
10570(F) サブルーチンシグネチャで、"$a =" のような、デフォルト値のない名前付き
10571オプション引数を書きました。
10572無名オプション引数はデフォルト値を持たないことを許されていますが、
10573名前付きのものはデフォルトを指定しなければなりません。
10574おそらく "$a = undef" としたかったのでしょう。
10575
546810576=item "our" variable %s redeclared
546910577
547010578=begin original
547110579
5472(W misc) You seem to have already declared the same global once before
10580(W shadow) You seem to have already declared the same global once before
547310581in the current lexical scope.
547410582
547510583=end original
547610584
5477(W misc) 現在のレキシカルスコープで、既に同じ名前のグローバル変数を
10585(W shadow) 現在のレキシカルスコープで、既に同じ名前のグローバル変数を
547810586宣言しているようです。
547910587
548010588=item Out of memory!
548110589
548210590=begin original
548310591
548410592(X) The malloc() function returned 0, indicating there was insufficient
548510593remaining memory (or virtual memory) to satisfy the request. Perl has
548610594no option but to exit immediately.
548710595
548810596=end original
548910597
549010598(X) 要求を満たすだけの、十分な残メモリ (または、仮想メモリ) が
549110599取得できないことを示す、0 を malloc() 関数が返しました。
549210600Perl は直ちに終了するしかありませんでした。
549310601
10602=begin original
10603
10604At least in Unix you may be able to get past this by increasing your
10605process datasize limits: in csh/tcsh use C<limit> and
10606C<limit datasize n> (where C<n> is the number of kilobytes) to check
10607the current limits and change them, and in ksh/bash/zsh use C<ulimit -a>
10608and C<ulimit -d n>, respectively.
10609
10610=end original
10611
10612少なくとも Unix ではプロセスのデータサイズ制限を増やすことによって
10613これを回避することが可能です:
10614csh/tcsh では現在の制限を調べるのに C<limit> を、これを変更するには
10615C<limit datasize n> (ここで C<n> はキロバイト単位) を使ってください;
10616ksh/bash/zsh ではそれぞれ C<ulimit -a> と C<ulimit -d n> を使ってください。
10617
10618=item Out of memory during %s extend
10619
10620=begin original
10621
10622(X) An attempt was made to extend an array, a list, or a string beyond
10623the largest possible memory allocation.
10624
10625=end original
10626
10627(X) 確保可能な最大メモリを越えて配列、リスト、文字列を拡張しようとしました。
10628
549410629=item Out of memory during "large" request for %s
549510630
549610631=begin original
549710632
549810633(F) The malloc() function returned 0, indicating there was insufficient
5499remaining memory (or virtual memory) to satisfy the request. However,
10634remaining memory (or virtual memory) to satisfy the request. However,
550010635the request was judged large enough (compile-time default is 64K), so a
550110636possibility to shut down by trapping this error is granted.
550210637
550310638=end original
550410639
550510640(F) malloc() 関数が 0 を返しました; これは要求を満たすメモリ
550610641(または仮想メモリ)が不十分であることを示しています。
550710642しかし、要求が十分大きい(コンパイル時のデフォルトは 64K)ので、
550810643このエラーをトラップすることでシャットダウンできる可能性があります。
550910644
551010645=item Out of memory during request for %s
551110646
551210647=begin original
551310648
5514(X|F) The malloc() function returned 0, indicating there was
10649(X)(F) The malloc() function returned 0, indicating there was
551510650insufficient remaining memory (or virtual memory) to satisfy the
551610651request.
551710652
551810653=end original
551910654
5520(X|F) malloc() 関数が 0 を返しました; これは要求を満たすメモリ
10655(X)(F) malloc() 関数が 0 を返しました; これは要求を満たすメモリ
552110656(または仮想メモリ)が不十分であることを示しています。
552210657
552310658=begin original
552410659
552510660The request was judged to be small, so the possibility to trap it
552610661depends on the way perl was compiled. By default it is not trappable.
552710662However, if compiled for this, Perl may use the contents of C<$^M> as an
552810663emergency pool after die()ing with this message. In this case the error
552910664is trappable I<once>, and the error message will include the line and file
553010665where the failed request happened.
553110666
553210667=end original
553310668
553410669要求は小さいものと判定されたので、これをトラップできる確率は perl が
553510670どのようにコンパイルされたかに依存します。
553610671デフォルトではこれはトラップできません。
553710672しかし、もしこのためにコンパイルすると、Perl はこのメッセージと共に
553810673die() した後の非常用エリアとして C<$^M> の内容を使います。
553910674この場合エラーは I<一度だけ> トラップ可能で、エラーメッセージは失敗した
554010675要求が起きたファイルと行番号を含んでいます。
554110676
554210677=item Out of memory during ridiculously large request
554310678
554410679=begin original
554510680
554610681(F) You can't allocate more than 2^31+"small amount" bytes. This error
554710682is most likely to be caused by a typo in the Perl program. e.g.,
554810683C<$arr[time]> instead of C<$arr[$time]>.
554910684
555010685=end original
555110686
555210687(F) 2^31+「少量」バイト以上割り当てることはできません。
5553このエラーはほとんどの場合(C<$arr[$time]>代わりに
10688このエラーはほとんどの場合 Perl プログラムタイプミスが原因です。
5554C<$arr[time]> のような) Perl プログラムタイプミスが原因です
10689例えば、C<$arr[$time]> の代わりに C<$arr[time]>ような
555510690
555610691=item Out of memory for yacc stack
555710692
555810693=begin original
555910694
556010695(F) The yacc parser wanted to grow its stack so it could continue
556110696parsing, but realloc() wouldn't give it more memory, virtual or
556210697otherwise.
556310698
556410699=end original
556510700
556610701(F) yacc パーサーが解析を続けるために、スタックを広げようとしましたが、
556710702realloc() が仮想やその他のメモリを確保できませんでした。
556810703
5569=item @ outside of string
10704=item '.' outside of string in pack
557010705
557110706=begin original
557210707
5573(F) You had a pack template that specified an absolute position outside
10708(F) The argument to a '.' in your template tried to move the working
10709position to before the start of the packed string being built.
10710
10711=end original
10712
10713(F) テンプレートでの '.' の引数として、pack された文字列が構築されたよりも
10714前に作業位置を移動しようとしました。
10715
10716=item '@' outside of string in unpack
10717
10718=begin original
10719
10720(F) You had a template that specified an absolute position outside
557410721the string being unpacked. See L<perlfunc/pack>.
557510722
557610723=end original
557710724
557810725(F) unpack される文字列の外に絶対位置指定している、
5579pack テンプレートを指定しました。
10726テンプレートを指定しました。
558010727L<perlfunc/pack> を参照してください。
558110728
10729=item '@' outside of string with malformed UTF-8 in unpack
10730
10731=begin original
10732
10733(F) You had a template that specified an absolute position outside
10734the string being unpacked. The string being unpacked was also invalid
10735UTF-8. See L<perlfunc/pack>.
10736
10737=end original
10738
10739(F) unpack される文字列の外に絶対位置指定している、
10740テンプレートを指定しました。
10741unpack された文字列は不正な UTF-8 でもあります。
10742L<perlfunc/pack> を参照してください。
10743
10744=item overload arg '%s' is invalid
10745
10746=begin original
10747
10748(W overload) The L<overload> pragma was passed an argument it did not
10749recognize. Did you mistype an operator?
10750
10751=end original
10752
10753(W overload) L<overload> プラグマに、認識できない引数が渡されました。
10754演算子をタイプミスしましたか?
10755
10756=item Overloaded dereference did not return a reference
10757
10758=begin original
10759
10760(F) An object with an overloaded dereference operator was dereferenced,
10761but the overloaded operation did not return a reference. See
10762L<overload>.
10763
10764=end original
10765
10766(F) オーバーロードされたデリファレンス演算子のオブジェクトが
10767デリファレンスされましたが、オーバーロード演算がリファレンスを
10768返しませんでした。
10769L<overload> を参照してください。
10770
10771=item Overloaded qr did not return a REGEXP
10772
10773=begin original
10774
10775(F) An object with a C<qr> overload was used as part of a match, but the
10776overloaded operation didn't return a compiled regexp. See L<overload>.
10777
10778=end original
10779
10780(F) C<qr> をオーバーロードしたオブジェクトがマッチングの一部として
10781使われましたが、オーバーロード演算がコンパイルされた正規表現を
10782返しませんでした。
10783L<overload> を参照してください。
10784
558210785=item %s package attribute may clash with future reserved word: %s
558310786
558410787=begin original
558510788
558610789(W reserved) A lowercase attribute name was used that had a
558710790package-specific handler. That name might have a meaning to Perl itself
558810791some day, even though it doesn't yet. Perhaps you should use a
558910792mixed-case attribute name, instead. See L<attributes>.
559010793
559110794=end original
559210795
559310796(W reserved) パッケージ固有のハンドラが、小文字の属性名を使っています。
559410797この名前は、たとえ今は使っていなくても、 Perl 自身がいつか使うかもしれません。
559510798おそらく代わりに大文字小文字の混じった属性名を使うべきでしょう。
559610799L<attributes> を参照してください。
559710800
10801=item pack/unpack repeat count overflow
10802
10803=begin original
10804
10805(F) You can't specify a repeat count so large that it overflows your
10806signed integers. See L<perlfunc/pack>.
10807
10808=end original
10809
10810(F) 繰り返し回数として符号付き整数をオーバーフローするような
10811値は指定できません。
10812L<perlfunc/pack> を参照してください。
10813
559810814=item page overflow
559910815
560010816=begin original
560110817
560210818(W io) A single call to write() produced more lines than can fit on a
560310819page. See L<perlform>.
560410820
560510821=end original
560610822
5607(W io) write() の 1 度の呼び出しで、1 ページに収まるより
10823(W io) write() の 1 度の呼び出しで、1 ページに収まるより多くの行が
5608多くの行ができました。
10824できました。
560910825L<perlform> を参照してください。
561010826
561110827=item panic: %s
561210828
561310829=begin original
561410830
561510831(P) An internal error.
561610832
561710833=end original
561810834
561910835(P) 内部エラーです。
562010836
5621=item panic: ck_grep
10837=item panic: attempt to call %s in %s
562210838
562310839=begin original
562410840
5625(P) Failed an internal consistency check trying to compile a grep.
10841(P) One of the file test operators entered a code branch that calls
10842an ACL related-function, but that function is not available on this
10843platform. Earlier checks mean that it should not be possible to
10844enter this branch on this platform.
562610845
562710846=end original
562810847
5629(P) grep をコンパイルしようとして、内部の一貫性チェック
10848(P) ファイルテスト演算子の一つが ACL 関連関数を呼び出すコード分岐
5630引っ掛かりました。
10849りましたが、この関数はこのプラットフォームでは利用できません
10850より早いチェックは、このプラットフォームのこの分岐に入ることがないように
10851するべきことを意味します。
563110852
5632=item panic: ck_split
10853=item panic: child pseudo-process was never scheduled
563310854
563410855=begin original
563510856
5636(P) Failed an internal consistency check trying to compile a split.
10857(P) A child pseudo-process in the ithreads implementation on Windows
10858was not scheduled within the time period allowed and therefore was not
10859able to initialize properly.
563710860
563810861=end original
563910862
5640(P) split をコンパイルしようとして、内部一貫性チェ
10863(P) Windowsでiスレド実装の子疑似プロセスが許された時間間隔の間
10864スケジューリングされなかったので、適切に初期化されなかった可能性があります。
10865
10866=item panic: ck_grep, type=%u
10867
10868=begin original
10869
10870(P) Failed an internal consistency check trying to compile a grep.
10871
10872=end original
10873
10874(P) grep をコンパイルしようとして、内部の一貫性チェックに
564110875引っ掛かりました。
564210876
5643=item panic: corrupt saved stack index
10877=item panic: corrupt saved stack index %ld
564410878
564510879=begin original
564610880
564710881(P) The savestack was requested to restore more localized values than
564810882there are in the savestack.
564910883
565010884=end original
565110885
565210886(P) セーブスタックにある以上のローカル化した値を元に戻す
565310887要求がありました。
565410888
565510889=item panic: del_backref
565610890
565710891=begin original
565810892
565910893(P) Failed an internal consistency check while trying to reset a weak
566010894reference.
566110895
566210896=end original
566310897
566410898(P) 弱いリファレンスをリセットしようとしたときに内部の
566510899一貫性チェックに引っ掛かりました。
566610900
5667=item panic: die %s
10901=item panic: do_subst
566810902
566910903=begin original
567010904
5671(P) We popped the context stack to an eval context, and then discovered
10905(P) The internal pp_subst() routine was called with invalid operational
5672it wasn't an eval context.
5673
5674=end original
5675
5676(P) eval コンテキストへコンテキストスタックをポップしたあと、
5677eval コンテキストでないことがわかりました。
5678
5679=item panic: pp_match
5680
5681=begin original
5682
5683(P) The internal pp_match() routine was called with invalid operational
568410906data.
568510907
568610908=end original
568710909
5688(P) 内部の pp_match() ルーティンが、無効な省略可能データを
10910(P) 内部の pp_subst() ルーティンが、無効な省略可能データを
568910911付けて呼ばれました。
569010912
5691=item panic: do_subst
10913=item panic: do_trans_%s
569210914
569310915=begin original
569410916
5695(P) The internal pp_subst() routine was called with invalid operational
10917(P) The internal do_trans routines were called with invalid operational
569610918data.
569710919
569810920=end original
569910921
5700(P) 内部の pp_subst() ルーティンが、無効な省略可能データを
10922(P) 内部の pp_trans ルーティンが、無効な省略可能データを
570110923付けて呼ばれました。
570210924
5703=item panic: do_trans_%s
10925=item panic: fold_constants JMPENV_PUSH returned %d
570410926
570510927=begin original
570610928
5707(P) The internal do_trans routines were called with invalid operational
10929(P) While attempting folding constants an exception other than an C<eval>
5708data.
10930failure was caught.
570910931
571010932=end original
571110933
5712(P) 内部pp_trans ルーティン、無効な省略可能データを
10934(P) 定数畳み込みを実行中に C<eval> 失敗以外の例外捕捉されました。
5713付けて呼ばれました。
571410935
5715=item panic: frexp
10936=item panic: frexp: %f
571610937
571710938=begin original
571810939
571910940(P) The library function frexp() failed, making printf("%f") impossible.
572010941
572110942=end original
572210943
572310944(P) ライブラリ関数 frexp() が失敗したので、printf("%f") ができません。
572410945
5725=item panic: goto
10946=item panic: goto, type=%u, ix=%ld
572610947
572710948=begin original
572810949
572910950(P) We popped the context stack to a context with the specified label,
573010951and then discovered it wasn't a context we know how to do a goto in.
573110952
573210953=end original
573310954
573410955(P) 指定したラベルを伴うコンテキストへコンテキストスタックを
573510956ポップしたあと、どのように goto するかがわかっている
573610957コンテキストでないことがわかりました。
573710958
5738=item panic: INTERPCASEMOD
10959=item panic: gp_free failed to free glob pointer
573910960
574010961=begin original
574110962
10963(P) The internal routine used to clear a typeglob's entries tried
10964repeatedly, but each time something re-created entries in the glob.
10965Most likely the glob contains an object with a reference back to
10966the glob and a destructor that adds a new object to the glob.
10967
10968=end original
10969
10970(P) 型グロブのエントリをクリアするために使われる内部ルーチンが複数回
10971試しましたが、毎回何かがグロブにエントリを再作成しました。
10972おそらくグロブにそのグロブへのリファレンスと、グロブへの新しいオブジェクトを
10973追加するデストラクタを持つオブジェクトが含まれています。
10974
10975=item panic: INTERPCASEMOD, %s
10976
10977=begin original
10978
574210979(P) The lexer got into a bad state at a case modifier.
574310980
574410981=end original
574510982
574610983(P) 大文字小文字修飾子のところで、字句解析部がおかしな状態に陥りました。
574710984
5748=item panic: INTERPCONCAT
10985=item panic: INTERPCONCAT, %s
574910986
575010987=begin original
575110988
575210989(P) The lexer got into a bad state parsing a string with brackets.
575310990
575410991=end original
575510992
5756(P) 中括弧を伴う文字列を解析中に、字句解析部がおかしな状態に陥りました。
10993(P) 中かっこを伴う文字列を解析中に、字句解析部がおかしな状態に陥りました。
575710994
575810995=item panic: kid popen errno read
575910996
576010997=begin original
576110998
5762(F) forked child returned an incomprehensible message about its errno.
10999(F) A forked child returned an incomprehensible message about its errno.
576311000
576411001=end original
576511002
576611003(F) fork した子プロセスが errno に関して不完全なメッセージを返しました。
576711004
5768=item panic: last
11005=item panic: last, type=%u
576911006
577011007=begin original
577111008
577211009(P) We popped the context stack to a block context, and then discovered
577311010it wasn't a block context.
577411011
577511012=end original
577611013
577711014(P) block コンテキストへコンテキストスタックをポップしたあと、
577811015block コンテキストでないことがわかりました。
577911016
578011017=item panic: leave_scope clearsv
578111018
578211019=begin original
578311020
578411021(P) A writable lexical variable became read-only somehow within the
578511022scope.
578611023
578711024=end original
578811025
578911026(P) 書き込み可能な字句スコープ変数が、どういうわけか、スコープ内で
579011027リードオンリーになりました。
579111028
5792=item panic: leave_scope inconsistency
11029=item panic: leave_scope inconsistency %u
579311030
579411031=begin original
579511032
579611033(P) The savestack probably got out of sync. At least, there was an
579711034invalid enum on the top of it.
579811035
579911036=end original
580011037
580111038(P) おそらく、セーブスタックの同期がとれていません。
580211039少なくとも、トップに不正な enum がありました。
580311040
580411041=item panic: magic_killbackrefs
580511042
580611043=begin original
580711044
580811045(P) Failed an internal consistency check while trying to reset all weak
580911046references to an object.
581011047
581111048=end original
581211049
581311050(P) あるオブジェクトへの全ての弱い参照をリセットしようとした時に内部の
581411051一貫性チェックに引っ掛かりました。
581511052
5816=item panic: malloc
11053=item panic: malloc, %s
581711054
581811055=begin original
581911056
582011057(P) Something requested a negative number of bytes of malloc.
582111058
582211059=end original
582311060
582411061(P) malloc に負のバイト数で要求が行なわれました。
582511062
5826=item panic: mapstart
11063=item panic: memory wrap
582711064
582811065=begin original
582911066
5830(P) The compiler is screwed up with respect to the map() function.
11067(P) Something tried to allocate either more memory than possible or a
11068negative amount.
583111069
583211070=end original
583311071
5834(P) コンパイラが、map() 関数に関ておかくなりました。
11072(P) 何かが、確保可能な量を超える、または負の量のメモリを確保ようとしました。
583511073
5836=item panic: null array
11074=item panic: pad_alloc, %p!=%p
583711075
583811076=begin original
583911077
5840(P) One of the internal array routines was passed a null AV pointer.
5841
5842=end original
5843
5844(P) 内部配列ルーティンで、ヌル AV ポインタを渡されたものがありました。
5845
5846=item panic: pad_alloc
5847
5848=begin original
5849
585011078(P) The compiler got confused about which scratch pad it was allocating
585111079and freeing temporaries and lexicals from.
585211080
585311081=end original
585411082
585511083(P) コンパイラが、一時領域や字句形式を割り当て、解放している
585611084スクラッチパッドについて混乱しました。
585711085
5858=item panic: pad_free curpad
11086=item panic: pad_free curpad, %p!=%p
585911087
586011088=begin original
586111089
586211090(P) The compiler got confused about which scratch pad it was allocating
586311091and freeing temporaries and lexicals from.
586411092
586511093=end original
586611094
586711095(P) コンパイラが、一時領域や字句形式を割り当て、解放している
586811096スクラッチパッドについて混乱しました。
586911097
587011098=item panic: pad_free po
587111099
587211100=begin original
587311101
5874(P) An invalid scratch pad offset was detected internally.
11102(P) A zero scratch pad offset was detected internally. An attempt was
11103made to free a target that had not been allocated to begin with.
587511104
587611105=end original
587711106
5878(P) 不正なスクラッチパッドのオフセットが、内部的に検出されました。
11107(P) スクラッチパッドのオフセット 0 が、内部的に検出されました。
11108始めるために割り当てられていないターゲットを解放しようとしました。
587911109
5880=item panic: pad_reset curpad
11110=item panic: pad_reset curpad, %p!=%p
588111111
588211112=begin original
588311113
588411114(P) The compiler got confused about which scratch pad it was allocating
588511115and freeing temporaries and lexicals from.
588611116
588711117=end original
588811118
588911119(P) コンパイラが、一時領域や字句形式を割り当て、解放している
589011120スクラッチパッドについて混乱しました。
589111121
589211122=item panic: pad_sv po
589311123
589411124=begin original
589511125
5896(P) An invalid scratch pad offset was detected internally.
11126(P) A zero scratch pad offset was detected internally. Most likely
11127an operator needed a target but that target had not been allocated
11128for whatever reason.
589711129
589811130=end original
589911131
5900(P) 不正なスクラッチパッドのオフセットが、内部的に検出されました。
11132(P) スクラッチパッドのオフセット 0 が、内部的に検出されました。
11133おそらく演算子がターゲットを必要としたけれどもターゲットが何らかの理由で
11134割り当てられていません。
590111135
5902=item panic: pad_swipe curpad
11136=item panic: pad_swipe curpad, %p!=%p
590311137
590411138=begin original
590511139
590611140(P) The compiler got confused about which scratch pad it was allocating
590711141and freeing temporaries and lexicals from.
590811142
590911143=end original
591011144
591111145(P) コンパイラが、一時領域や字句形式を割り当て、解放している
591211146スクラッチパッドについて混乱しました。
591311147
591411148=item panic: pad_swipe po
591511149
591611150=begin original
591711151
591811152(P) An invalid scratch pad offset was detected internally.
591911153
592011154=end original
592111155
592211156(P) 不正なスクラッチパッドのオフセットが、内部的に検出されました。
592311157
5924=item panic: pp_iter
11158=item panic: pp_iter, type=%u
592511159
592611160=begin original
592711161
592811162(P) The foreach iterator got called in a non-loop context frame.
592911163
593011164=end original
593111165
593211166(P) foreach の繰返し子が、ループ文脈以外のところで呼ばれました。
593311167
5934=item panic: pp_split
11168=item panic: pp_match%s
593511169
593611170=begin original
593711171
5938(P) Something terrible went wrong in setting up for the split.
11172(P) The internal pp_match() routine was called with invalid operational
11173data.
593911174
594011175=end original
594111176
5942(P) split の準備中に何かまずいこと起こってしまいました。
11177(P) 内部の pp_match() ルーティン、無効な省略可能データを
11178付けて呼ばれました。
594311179
5944=item panic: realloc
11180=item panic: realloc, %s
594511181
594611182=begin original
594711183
594811184(P) Something requested a negative number of bytes of realloc.
594911185
595011186=end original
595111187
595211188(P) 何か、realloc に負のバイト数を要求したものがあります。
595311189
5954=item panic: restartop
11190=item panic: reference miscount on nsv in sv_replace() (%d != 1)
595511191
595611192=begin original
595711193
11194(P) The internal sv_replace() function was handed a new SV with a
11195reference count other than 1.
11196
11197=end original
11198
11199(P) 内部の sv_replace() 関数は、参照カウントが 1 でない新しい SV を
11200扱いました。
11201
11202=item panic: restartop in %s
11203
11204=begin original
11205
595811206(P) Some internal routine requested a goto (or something like it), and
595911207didn't supply the destination.
596011208
596111209=end original
596211210
596311211(P) 内部ルーティンから goto (または、同じようなもの) が
596411212要求されましたが、飛び先が与えれていません。
596511213
5966=item panic: return
11214=item panic: return, type=%u
596711215
596811216=begin original
596911217
597011218(P) We popped the context stack to a subroutine or eval context, and
597111219then discovered it wasn't a subroutine or eval context.
597211220
597311221=end original
597411222
5975(P) サブルーティンコンテキストや eval コンテキストへ、
11223(P) サブルーンコンテキストや eval コンテキストへ、
5976コンテキストスタックをポップしたあと、サブルーティンコンテキストや
11224コンテキストスタックをポップしたあと、サブルーンコンテキストや
597711225eval コンテキストでないことがわかりました。
597811226
5979=item panic: scan_num
11227=item panic: scan_num, %s
598011228
598111229=begin original
598211230
598311231(P) scan_num() got called on something that wasn't a number.
598411232
598511233=end original
598611234
598711235(P) scan_num() が、何か数字でないものに対して呼ばれました。
598811236
5989=item panic: sv_insert
11237=item panic: Sequence (?{...}): no code block found in regex m/%s/
599011238
599111239=begin original
599211240
11241(P) While compiling a pattern that has embedded (?{}) or (??{}) code
11242blocks, perl couldn't locate the code block that should have already been
11243seen and compiled by perl before control passed to the regex compiler.
11244
11245=end original
11246
11247(P) 組み込みの (?{}) や (??{}) コードブロックを持つパターンをコンパイル中に、
11248既に現れていて、正規表現コンパイラに制御を渡す前に perl によって
11249コンパイルされているコードブロックを発見できませんでした。
11250
11251=item panic: strxfrm() gets absurd - a => %u, ab => %u
11252
11253=begin original
11254
11255(P) The interpreter's sanity check of the C function strxfrm() failed.
11256In your current locale the returned transformation of the string "ab"
11257is shorter than that of the string "a", which makes no sense.
11258
11259=end original
11260
11261(P) C 関数 strxfrm() のインタプリタの正気度チェックが失敗しました。
11262現在のロケールでは、文字列 "ab" の変換で返されたものは 文字列 "a" の
11263変換で返されたものよりも短いので、おかしいです。
11264
11265=item panic: sv_chop %s
11266
11267=begin original
11268
11269(P) The sv_chop() routine was passed a position that is not within the
11270scalar's string buffer.
11271
11272=end original
11273
11274(P) sv_chop() ルーチンは、スカラの文字列バッファ内でない位置を
11275渡されました。
11276
11277=item panic: sv_insert, midend=%p, bigend=%p
11278
11279=begin original
11280
599311281(P) The sv_insert() routine was told to remove more string than there
599411282was string.
599511283
599611284=end original
599711285
599811286(P) sv_insert() ルーティンが、存在する以上の文字列を削除するように
599911287指示されました。
600011288
600111289=item panic: top_env
600211290
600311291=begin original
600411292
600511293(P) The compiler attempted to do a goto, or something weird like that.
600611294
600711295=end original
600811296
600911297(P) コンパイラが、goto など妙なことを行なおうとしました。
601011298
6011=item panic: yylex
11299=item panic: unimplemented op %s (#%d) called
601211300
601311301=begin original
601411302
6015(P) The lexer got into a bad state while processing a case modifier.
11303(P) The compiler is screwed up and attempted to use an op that isn't
11304permitted at run time.
601611305
601711306=end original
601811307
6019(P) 大文字小文字修飾子を処理中に、字句解析部がおかしな状態陥りました。
11308(P) コンパイラがおかしって、実行時許可されていない op を
11309しようとしました。
602011310
11311=item panic: unknown OA_*: %x
11312
11313=begin original
11314
11315(P) The internal routine that handles arguments to C<&CORE::foo()>
11316subroutine calls was unable to determine what type of arguments
11317were expected.
11318
11319=end original
11320
11321(P) C<&CORE::foo()> サブルーチン呼び出しの引数を扱う内部ルーチンは、
11322どの種類の引数が想定されているかを決定できませんでした。
11323
602111324=item panic: utf16_to_utf8: odd bytelen
602211325
602311326=begin original
602411327
602511328(P) Something tried to call utf16_to_utf8 with an odd (as opposed
6026to even) byte length.
11329to even) byte length.
602711330
602811331=end original
602911332
603011333(P) 何かが(偶数ではなく)奇数のバイト長で utf16_to_utf8 を
603111334呼び出そうとしました。
603211335
11336=item panic: utf16_to_utf8_reversed: odd bytelen
11337
11338=begin original
11339
11340(P) Something tried to call utf16_to_utf8_reversed with an odd (as opposed
11341to even) byte length.
11342
11343=end original
11344
11345(P) 何かが utf16_to_utf8_reversed を奇数バイト長で呼び出そうとしました。
11346
11347=item panic: yylex, %s
11348
11349=begin original
11350
11351(P) The lexer got into a bad state while processing a case modifier.
11352
11353=end original
11354
11355(P) 大文字小文字修飾子を処理中に、字句解析部がおかしな状態に陥りました。
11356
603311357=item Parentheses missing around "%s" list
603411358
603511359=begin original
603611360
603711361(W parenthesis) You said something like
603811362
603911363=end original
604011364
604111365(W parenthesis) おそらく以下のようにしたのでしょう:
604211366
604311367 my $foo, $bar = @_;
604411368
604511369=begin original
604611370
604711371when you meant
604811372
604911373=end original
605011374
605111375以下のようにすべきです:
605211376
605311377 my ($foo, $bar) = @_;
605411378
605511379=begin original
605611380
6057Remember that "my", "our", and "local" bind tighter than comma.
11381Remember that "my", "our", "local" and "state" bind tighter than comma.
605811382
605911383=end original
606011384
6061"my" "local" は、コンマよりも強く結合することを忘れないでください。
11385"my", "our", "local", "state" は、コンマよりも強く結合することを
11386忘れないでください。
606211387
6063=item Perl %s required--this is only version %s, stopped
11388=item Parsing code internal error (%s)
606411389
606511390=begin original
606611391
11392(F) Parsing code supplied by an extension violated the parser's API in
11393a detectable way.
11394
11395=end original
11396
11397(F) エクステンションによって供給されたパースコードが、検出できる形で
11398パーサの API に違反しています。
11399
11400=item Pattern subroutine nesting without pos change exceeded limit in regex
11401
11402=begin original
11403
11404(F) You used a pattern that uses too many nested subpattern calls without
11405consuming any text. Restructure the pattern so text is consumed before
11406the nesting limit is exceeded.
11407
11408=end original
11409
11410(F) テキストを全く消費することなく、あまりに多くネストした副パターンを使う
11411パターンを使いました。
11412ネストの制限を越える前にテキストを消費するようにパターンを
11413再構成してください。
11414
11415=item C<-p> destination: %s
11416
11417=begin original
11418
11419(F) An error occurred during the implicit output invoked by the C<-p>
11420command-line switch. (This output goes to STDOUT unless you've
11421redirected it with select().)
11422
11423=end original
11424
11425(F) C<-p> コマンドラインオプションで起動された
11426暗黙の出力中にエラーが発生しました。
11427(この出力は select() でリダイレクトしていない限り STDOUT に出力されます。)
11428
11429=item Perl API version %s of %s does not match %s
11430
11431=begin original
11432
11433(F) The XS module in question was compiled against a different incompatible
11434version of Perl than the one that has loaded the XS module.
11435
11436=end original
11437
11438(F) この XS モジュールは、これを読み込んだ Perl とは互換性のないバージョンの
11439Perl 用にコンパイルされたものです。
11440
11441=item Perl folding rules are not up-to-date for 0x%X; please use the perlbug
11442utility to report; in regex; marked by S<<-- HERE> in m/%s/
11443
11444=begin original
11445
11446(S regexp) You used a regular expression with case-insensitive matching,
11447and there is a bug in Perl in which the built-in regular expression
11448folding rules are not accurate. This may lead to incorrect results.
11449Please report this as a bug using the L<perlbug> utility.
11450
11451=end original
11452
11453(S regexp) 大文字小文字を無視するマッチングを行う正規表現を使いました; そして
11454組み込みの正規表現畳み込み規則が正確でないという Perl のバグがありました。
11455これは間違った結果を引き起こします。
11456どうか L<perlbug> ユーティリティを使ってバグとして報告してください。
11457
11458=item PerlIO layer ':win32' is experimental
11459
11460=begin original
11461
11462(S experimental::win32_perlio) The C<:win32> PerlIO layer is
11463experimental. If you want to take the risk of using this layer,
11464simply disable this warning:
11465
11466=end original
11467
11468(S experimental::win32_perlio) C<:win32> PerlIO 層は実験的です。
11469この層を使うリスクを取りたい場合は、単にこの警告を無効にしてください:
11470
11471 no warnings "experimental::win32_perlio";
11472
11473=item Perl_my_%s() not available
11474
11475=begin original
11476
11477(F) Your platform has very uncommon byte-order and integer size,
11478so it was not possible to set up some or all fixed-width byte-order
11479conversion functions. This is only a problem when you're using the
11480'<' or '>' modifiers in (un)pack templates. See L<perlfunc/pack>.
11481
11482=end original
11483
11484(F) あなたのプラットフォームはとても珍しいバイト順と整数サイズを
11485使っているので、固定長バイト順変換関数の一部または全部を使うことができません。
11486これは (un)pack テンプレートの中で
11487'<' か '>' の修飾子を使った場合にのみ問題となります。
11488L<perlfunc/pack> を参照してください。
11489
11490=item Perl %s required (did you mean %s?)--this is only %s, stopped
11491
11492=begin original
11493
11494(F) The code you are trying to run has asked for a newer version of
11495Perl than you are running. Perhaps C<use 5.10> was written instead
11496of C<use 5.010> or C<use v5.10>. Without the leading C<v>, the number is
11497interpreted as a decimal, with every three digits after the
11498decimal point representing a part of the version number. So 5.10
11499is equivalent to v5.100.
11500
11501=end original
11502
11503(F) 実行しようとしたコードは、実行している Perl のバージョンよりも高いものを
11504尋ねました。
11505おそらく C<use 5.010> or C<use v5.10> ではなく C<use 5.10> と
11506書かれているのでしょう。
11507先頭の C<v> がないと、数値は 10 進数で、小数点の後の 3 桁毎にバージョン番号の
11508部分を表現していると解釈されます。
11509それで、5.10 は v5.100 と等価です。
11510
11511=item Perl %s required--this is only %s, stopped
11512
11513=begin original
11514
606711515(F) The module in question uses features of a version of Perl more
606811516recent than the currently running version. How long has it been since
606911517you upgraded, anyway? See L<perlfunc/require>.
607011518
607111519=end original
607211520
607311521(F) 問題のモジュールは、現在実行中の Perl よりも最近のバージョンの
607411522機能を使っています。
607511523ところで、いつからアップグレードしていないのですか?
607611524L<perlfunc/require> を参照してください。
607711525
607811526=item PERL_SH_DIR too long
607911527
608011528=begin original
608111529
6082(F) An error peculiar to OS/2. PERL_SH_DIR is the directory to find the
11530(F) An error peculiar to OS/2. PERL_SH_DIR is the directory to find the
608311531C<sh>-shell in. See "PERL_SH_DIR" in L<perlos2>.
608411532
608511533=end original
608611534
608711535(F) OS/2 固有のエラーです。
608811536PERL_SH_DIR は C<sh>-shell を見つけるためのディレクトリです。
608911537L<perlos2> の "PERL_SH_DIR" を参照してください。
609011538
11539=item PERL_SIGNALS illegal: "%s"
11540
11541=begin original
11542
11543(X) See L<perlrun/PERL_SIGNALS> for legal values.
11544
11545=end original
11546
11547(X) 有効な値については L<perlrun/PERL_SIGNALS> を参照してください。
11548
11549=item Perls since %s too modern--this is %s, stopped
11550
11551=begin original
11552
11553(F) The code you are trying to run claims it will not run
11554on the version of Perl you are using because it is too new.
11555Maybe the code needs to be updated, or maybe it is simply
11556wrong and the version check should just be removed.
11557
11558=end original
11559
11560(F) 実行しようとしているコードは、使っている Perl のバージョンが新しすぎると
11561主張しています。
11562コードを更新する必要があるかもしれませんし、単に間違っていて単純に
11563バージョンチェックを削除するべきかもしれません。
11564
11565=item perl: warning: Non hex character in '$ENV{PERL_HASH_SEED}', seed only partially set
11566
11567=begin original
11568
11569(S) PERL_HASH_SEED should match /^\s*(?:0x)?[0-9a-fA-F]+\s*\z/ but it
11570contained a non hex character. This could mean you are not using the
11571hash seed you think you are.
11572
11573=end original
11574
11575(S) PERL_HASH_SEED は /^\s*(?:0x)?[0-9a-fA-F]+\s*\z/ にマッチングするけれども
11576非 16 進数文字を含む必要があります。
11577これは、考えているようなハッシュの種が使われないことを
11578意味しているかもしれません。
11579
609111580=item perl: warning: Setting locale failed.
609211581
609311582=begin original
609411583
609511584(S) The whole warning message will look something like:
609611585
609711586=end original
609811587
609911588(S) 警告全体は以下のような形になります:
610011589
610111590 perl: warning: Setting locale failed.
610211591 perl: warning: Please check that your locale settings:
610311592 LC_ALL = "En_US",
610411593 LANG = (unset)
610511594 are supported and installed on your system.
610611595 perl: warning: Falling back to the standard locale ("C").
610711596
610811597=begin original
610911598
611011599Exactly what were the failed locale settings varies. In the above the
611111600settings were that the LC_ALL was "En_US" and the LANG had no value.
611211601This error means that Perl detected that you and/or your operating
611311602system supplier and/or system administrator have set up the so-called
611411603locale system but Perl could not use those settings. This was not
611511604dead serious, fortunately: there is a "default locale" called "C" that
6116Perl can and will use, the script will be run. Before you really fix
11605Perl can and will use, and the script will be run. Before you really
6117the problem, however, you will get the same error message each time
11606fix the problem, however, you will get the same error message each
6118you run Perl. How to really fix the problem can be found in
11607time you run Perl. How to really fix the problem can be found in
611911608L<perllocale> section B<LOCALE PROBLEMS>.
612011609
612111610=end original
612211611
612311612正確にどのロケール設定が失敗したのかは様々です。
612411613上記では設定は LC_ALL は "En_US" で、LANG は空でした。
612511614このエラーは、あなたや OS 供給者やシステム管理者がロケールシステムと呼ばれる
612611615ものをセットアップしましたが、Perl がこれらの設定を使えないことを
612711616検出したことを意味します。
612811617これは幸いにして致命的ではありません; Perl が使用できる "C" と呼ばれる
612911618「デフォルトロケール」が存在するので、スクリプトは実行されます。
613011619しかし、本当にこの問題を解決するまでは、Perl を実行する毎に同じエラー
613111620メッセージが表示されます。
613211621本当にこの問題を修正する方法は L<perllocale> の B<LOCALE PROBLEMS> の
613311622章にあります。
613411623
6135=item Permission denied
11624=item perl: warning: strange setting in '$ENV{PERL_PERTURB_KEYS}': '%s'
613611625
613711626=begin original
613811627
6139(F) The setuid emulator in suidperl decided you were up to no good.
11628(S) Perl was run with the environment variable PERL_PERTURB_KEYS defined
11629but containing an unexpected value. The legal values of this setting
11630are as follows.
614011631
614111632=end original
614211633
6143(F) suidperl の setuid エミュレータは、実行安全とは
11634(S) 環境変数 PERL_PERTURB_KEYS が定義されている環境で Perl 実行されました
6144言えないと判断しました。
11635想定外の値でした。
11636この設定の正当な値は以下のものです。
614511637
11638 Numeric | String | Result
11639 --------+---------------+-----------------------------------------
11640 0 | NO | Disables key traversal randomization
11641 1 | RANDOM | Enables full key traversal randomization
11642 2 | DETERMINISTIC | Enables repeatable key traversal
11643 | | randomization
11644
11645=begin original
11646
11647Both numeric and string values are accepted, but note that string values are
11648case sensitive. The default for this setting is "RANDOM" or 1.
11649
11650=end original
11651
11652数値と文字列の値の両方が受け入れられますが、文字列の値は大文字小文字を
11653区別することに注意してください。
11654この設定のデフォルトは "RANDOM"、つまり 1 です。
11655
614611656=item pid %x not a child
614711657
614811658=begin original
614911659
615011660(W exec) A warning peculiar to VMS. Waitpid() was asked to wait for a
615111661process which isn't a subprocess of the current process. While this is
615211662fine from VMS' perspective, it's probably not what you intended.
615311663
615411664=end original
615511665
6156(W exec) VMS 固有の警告です。
11666(W exec) VMS 固有の警告です。
615711667現在のプロセスのサブプロセスでないプロセスに Waitpid() を使いました。
615811668これは VMS の観点からは問題ありませんが、おそらくあなたの望んでいることでは
615911669ないでしょう。
616011670
6161=item POSIX syntax [%s] belongs inside character classes
11671=item 'P' must have an explicit size in unpack
616211672
616311673=begin original
616411674
6165(W unsafe) The character class constructs [: :], [= =], and [. .] go
11675(F) The unpack format P must have an explicit size, not "*".
6166I<inside> character classes, the [] are part of the construct, for
6167example: /[012[:alpha:]345]/. Note that [= =] and [. .] are not
6168currently implemented; they are simply placeholders for future
6169extensions and will cause fatal errors.
617011676
617111677=end original
617211678
6173(W regexp) 例えば /[012[:alpha:]345]/ のように、文字クラス構造 [: :], [= =],
11679(F) unpack フォーマット P "*" ではなく、明示的なサイズを
6174[. .] が文字クラスの I<内側> にあ、[] は構造の一部です
11680指定しなければなません
6175[= =] と [. .] は現在のところ実装されていないことに注意してください;
6176これらは単に将来の拡張のためのプレースホルダであり、致命的エラーを
6177生成します。
617811681
6179=item POSIX syntax [. .] is reserved for future extensions
11682=item POSIX class [:%s:] unknown in regex; marked by S<<-- HERE> in m/%s/
618011683
618111684=begin original
618211685
6183(F regexp) Within regular expression character classes ([]) the syntax
11686(F) The class in the character class [: :] syntax is unknown. The S<<-- HERE>
6184beginning with "[." and ending with ".]" is reserved for future
11687shows whereabouts in the regular expression the problem was discovered.
6185extensions. If you need to represent those character sequences inside
11688Note that the POSIX character classes do B<not> have the C<is> prefix
6186a regular expression character class, just quote the square brackets
11689the corresponding C interfaces have: in other words, it's C<[[:print:]]>,
6187with the backslash: "\[." and ".\]".
11690not C<isprint>. See L<perlre>.
618811691
618911692=end original
619011693
6191(F regexp) 正規表現文字クラス ([]) の中、"[." 始まる文法と ".]" で
11694(F) 文字クラス [: :] 文法の中のクラス不明す。
6192終わる文法は将来拡張のため予約されます。
11695S<<-- HERE> で正規表現どこ問題が発見されたかを示しています。
6193正規表現文字クラスの中でこのような文字シーケンスを表現する必要
11696POSIX 文字クラスは、対応する C インターフェース持ってい C<is> 接頭辞が
6194場合には、"\[."".\]" のように、大かっこをバックスラッシュ
11697B<付かない> に注意してください: 言い換えると、C<[[:print:]]>あり、
6195クォートしてください
11698C<isprint> ではありません
11699L<perlre> を参照してください。
619611700
6197=item POSIX syntax [= =] is reserved for future extensions
11701=item POSIX getpgrp can't take an argument
619811702
619911703=begin original
620011704
6201(F) Within regular expression character classes ([]) the syntax
11705(F) Your system has POSIX getpgrp(), which takes no argument, unlike
6202beginning with "[=" and ending with "=]" is reserved for future
11706the BSD version, which takes a pid.
6203extensions. If you need to represent those character sequences inside
6204a regular expression character class, just quote the square brackets
6205with the backslash: "\[=" and "=\]".
620611707
620711708=end original
620811709
6209(F) 正規表現文字クラス ([]) 中では、"[=" で始まる文法"=]"
11710(F) お使いシステムは、引数に pid を BSD バージョンの
6210終わる文法は将来拡張ために予約されます。
11711getpgrp() と違って、引数をとらない POSIX を使っています。
6211正規表現文字クラスの中でこのような文字シーケンスを表現する必要がある
6212場合には、"\[=" と "=\]" のように、大かっこをバックスラッシュで
6213クォートしてください。
621411712
6215=item POSIX class [:%s:] unknown
11713=item POSIX syntax [%c %c] belongs inside character classes%s in regex; marked by
11714S<<-- HERE> in m/%s/
621611715
621711716=begin original
621811717
6219(F) The class in the character class [: :] syntax is unknown. See
11718(W regexp) Perl thinks that you intended to write a POSIX character
6220L<perlre>.
11719class, but didn't use enough brackets. These POSIX class constructs [:
11720:], [= =], and [. .] go I<inside> character classes, the [] are part of
11721the construct, for example: C<qr/[012[:alpha:]345]/>. What the regular
11722expression pattern compiled to is probably not what you were intending.
11723For example, C<qr/[:alpha:]/> compiles to a regular bracketed character
11724class consisting of the four characters C<":">, C<"a">, C<"l">,
11725C<"h">, and C<"p">. To specify the POSIX class, it should have been
11726written C<qr/[[:alpha:]]/>.
622111727
622211728=end original
622311729
6224(F) 文字クラス [: :]法の中のクラスは不明です。
11730(W regexp) Perl は、あなたが POSIXクラスを書くことを意図していると
11731考えましたが、大かっこが足りませんでした。
11732例えば C<qr/[012[:alpha:]345]/> のように、POSIX クラス構造
11733[: :], [= =], [. .] が文字クラスの I<内側> にあり、[] は構文の一部です。
11734コンパイルされた正規表現パターンはおそらくあなたが意図したものでは
11735ないでしょう。
11736例えば、C<qr/[:alpha:]/> は、C<":">, C<"a">, C<"l">, C<"h">, C<"p"> の
11737四つの文字からなる 正規表現大かっこ文字クラスにコンパイルされます。
11738POSIX クラスを指定するには、C<qr/[[:alpha:]]/> と書く必要があります。
11739
11740=begin original
11741
11742Note that [= =] and [. .] are not currently
11743implemented; they are simply placeholders for future extensions and
11744will cause fatal errors. The S<<-- HERE> shows whereabouts in the regular
11745expression the problem was discovered. See L<perlre>.
11746
11747=end original
11748
11749[= =] と [. .] は現在のところ実装されていないことに注意してください;
11750これらは単に将来の拡張のためのプレースホルダであり、致命的エラーを
11751生成します。
11752S<<-- HERE> で正規表現のどこに問題が発見されたかを示しています。
622511753L<perlre> を参照してください。
622611754
6227=item POSIX getpgrp can't take an argument
11755=begin original
622811756
11757If the specification of the class was not completely valid, the message
11758indicates that.
11759
11760=end original
11761
11762このクラスの仕様が完全に正当出ない場合、このメッセージはそれを示しています。
11763
11764=item POSIX syntax [. .] is reserved for future extensions in regex; marked by
11765S<<-- HERE> in m/%s/
11766
622911767=begin original
623011768
6231(F) Your system has POSIX getpgrp(), which takes no argument, unlike
11769(F) Within regular expression character classes ([]) the syntax beginning
6232the BSD version, which takes a pid.
11770with "[." and ending with ".]" is reserved for future extensions. If you
11771need to represent those character sequences inside a regular expression
11772character class, just quote the square brackets with the backslash: "\[."
11773and ".\]". The S<<-- HERE> shows whereabouts in the regular expression the
11774problem was discovered. See L<perlre>.
623311775
623411776=end original
623511777
6236(F) お使いのシテムは、引数に pid をとBSD バージョンの
11778(F) 正規表現文字クラ ([]) の中では、"[." で始ま文法と ".]"
6237getpgrp() と違って、引数をとらない POSIX を使っています。
11779終わる文法は将来拡張ために予約されます。
11780正規表現文字クラスの中でこのような文字シーケンスを表現する必要がある
11781場合には、"\[." と ".\]" のように、大かっこをバックスラッシュで
11782クォートしてください。
11783S<<-- HERE> で正規表現のどこに問題が発見されたかを示しています。
11784L<perlre> を参照してください。
623811785
11786=item POSIX syntax [= =] is reserved for future extensions in regex; marked by
11787S<<-- HERE> in m/%s/
11788
11789=begin original
11790
11791(F) Within regular expression character classes ([]) the syntax beginning
11792with "[=" and ending with "=]" is reserved for future extensions. If you
11793need to represent those character sequences inside a regular expression
11794character class, just quote the square brackets with the backslash: "\[="
11795and "=\]". The S<<-- HERE> shows whereabouts in the regular expression the
11796problem was discovered. See L<perlre>.
11797
11798=end original
11799
11800(F) 正規表現文字クラス ([]) の中では、"[=" で始まる文法と "=]" で
11801終わる文法は将来の拡張のために予約されます。
11802正規表現文字クラスの中でこのような文字シーケンスを表現する必要がある
11803場合には、"\[=" と "=\]" のように、大かっこをバックスラッシュで
11804クォートしてください。
11805S<<-- HERE> で正規表現のどこに問題が発見されたかを示しています。
11806L<perlre> を参照してください。
11807
623911808=item Possible attempt to put comments in qw() list
624011809
624111810=begin original
624211811
624311812(W qw) qw() lists contain items separated by whitespace; as with literal
624411813strings, comment characters are not ignored, but are instead treated as
624511814literal data. (You may have used different delimiters than the
624611815parentheses shown here; braces are also frequently used.)
624711816
624811817=end original
624911818
625011819(W qw) qw() リストは空白で分割されたアイテムを含んでいます;
625111820リテラル文字列では、コメント文字無視されず、リテラルデータとして扱われます。
6252(かっ以外のデリミタを使うこともできます; 中っこよく使われます。)
11821(ここで使われていると違うデリミタを用いているかもれません;
11822大かっこもよく使われます。)
625311823
625411824=begin original
625511825
625611826You probably wrote something like this:
625711827
625811828=end original
625911829
626011830おそらく以下のように書いたのでしょう:
626111831
626211832 @list = qw(
626311833 a # a comment
626411834 b # another comment
626511835 );
626611836
626711837=begin original
626811838
626911839when you should have written this:
627011840
627111841=end original
627211842
627311843以下のように書くべきです:
627411844
627511845 @list = qw(
627611846 a
627711847 b
627811848 );
627911849
628011850=begin original
628111851
628211852If you really want comments, build your list the
628311853old-fashioned way, with quotes and commas:
628411854
628511855=end original
628611856
628711857本当にコメントをつけたいのなら、
628811858リストを昔のクォートとカンマの形で書いてください。
628911859
629011860 @list = (
629111861 'a', # a comment
629211862 'b', # another comment
629311863 );
629411864
629511865=item Possible attempt to separate words with commas
629611866
629711867=begin original
629811868
629911869(W qw) qw() lists contain items separated by whitespace; therefore
630011870commas aren't needed to separate the items. (You may have used
630111871different delimiters than the parentheses shown here; braces are also
630211872frequently used.)
630311873
630411874=end original
630511875
630611876(W qw) qw() リストに空白で分割された項目があります;
630711877そのため、カンマは項目を分割する必要がありません。
630811878(ここで使われているのと違うデリミタを用いているかもしれません;
6309括弧もよく使われます。)
11879かっこもよく使われます。)
631011880
631111881=begin original
631211882
631311883You probably wrote something like this:
631411884
631511885=end original
631611886
631711887おそらく以下のように書いたのでしょう:
631811888
631911889 qw! a, b, c !;
632011890
632111891=begin original
632211892
632311893which puts literal commas into some of the list items. Write it without
632411894commas if you don't want them to appear in your data:
632511895
632611896=end original
632711897
632811898リスト要素の中にリテラルのカンマを書いています。
632911899データの中にカンマを出したくないなら、カンマなしで書きます:
633011900
633111901 qw! a b c !;
633211902
633311903=item Possible memory corruption: %s overflowed 3rd argument
633411904
633511905=begin original
633611906
633711907(F) An ioctl() or fcntl() returned more than Perl was bargaining for.
633811908Perl guesses a reasonable buffer size, but puts a sentinel byte at the
633911909end of the buffer just in case. This sentinel byte got clobbered, and
634011910Perl assumes that memory is now corrupted. See L<perlfunc/ioctl>.
634111911
634211912=end original
634311913
634411914(F) ioctl() や fcntl() が、Perl が求めていた以上のものを返してきました。
634511915Perl は、適量のバッファサイズを見積もりますが、念のためにバッファの
634611916最後に目印を付けています。
634711917この目印が壊されたため、Perl はメモリの破壊が起こったと判断しました。
634811918L<perlfunc/ioctl> を参照してください。
634911919
6350=item Possible Y2K bug: %s
11920=item Possible precedence issue with control flow operator
635111921
635211922=begin original
635311923
6354(W y2k) You are concatenating the number 19 with another number, which
11924(W syntax) There is a possible problem with the mixing of a control
6355could be a potential Year 2000 problem.
11925flow operator (e.g. C<return>) and a low-precedence operator like
11926C<or>. Consider:
635611927
635711928=end original
635811929
6359(W y2k) 数値 19 を他の数値結合しています; これは潜在的
11930(W syntax) フロー制御演算子 (例えば C<return>) 、C<or> のよう
63602000 年問題かもしれせん
11931低優先順位演算子を混ぜると問題が起きることがあり
11932次を考えると:
636111933
6362=item pragma "attrs" is deprecated, use "sub NAME : ATTRS" instead
11934 sub { return $a or $b; }
636311935
636411936=begin original
636511937
6366(W deprecated) You have written something like this:
11938This is parsed as:
636711939
636811940=end original
636911941
6370(W deprecated) おそらく以下のように書いたのでしょう:
11942これは次のようにパースされます:
637111943
6372 sub doit
11944 sub { (return $a) or $b; }
6373 {
6374 use attrs qw(locked);
6375 }
637611945
637711946=begin original
637811947
6379You should use the new declaration syntax instead.
11948Which is effectively just:
638011949
638111950=end original
638211951
6383代わりに新しい定義文法で書くべきです:
11952これは事実上次ものです:
638411953
6385 sub doit : locked
11954 sub { return $a; }
6386 {
6387 ...
638811955
638911956=begin original
639011957
6391The C<use attrs> pragma is now obsolete, and is only provided for
11958Either use parentheses or the high-precedence variant of the operator.
6392backward-compatibility. See L<perlsub/"Subroutine Attributes">.
639311959
639411960=end original
639511961
6396C<use attrs> プラグマはもう古いもので後方互換性ためけに
11962かっこか高優先順位版演算子を使ってくさい。
6397提供されています。
6398L<perlsub/"Subroutine Attributes"> を参照してください。
639911963
11964=begin original
11965
11966Note this may be also triggered for constructs like:
11967
11968=end original
11969
11970これは次のような構文でも引き起こされることに注意してください:
11971
11972 sub { 1 if die; }
11973
11974=item Possible precedence problem on bitwise %s operator
11975
11976=begin original
11977
11978(W precedence) Your program uses a bitwise logical operator in conjunction
11979with a numeric comparison operator, like this :
11980
11981=end original
11982
11983(W precedence) 以下のように、ビット単位の論理演算子を数値比較演算子と
11984結合して使用しています:
11985
11986 if ($x & $y == 0) { ... }
11987
11988=begin original
11989
11990This expression is actually equivalent to C<$x & ($y == 0)>, due to the
11991higher precedence of C<==>. This is probably not what you want. (If you
11992really meant to write this, disable the warning, or, better, put the
11993parentheses explicitly and write C<$x & ($y == 0)>).
11994
11995=end original
11996
11997この式は、C<==> の優先順位の方が高いので、C<$x & ($y == 0)> と
11998等価になります。
11999これはおそらく望んでいるものではないでしょう。
12000(もし本当にこのように書きたいのなら、警告を無効にするか、あるいは
12001よりよいのはかっこを明示的に使って C<$x & ($y == 0)> と書きます)。
12002
12003=item Possible unintended interpolation of $\ in regex
12004
12005=begin original
12006
12007(W ambiguous) You said something like C<m/$\/> in a regex.
12008The regex C<m/foo$\s+bar/m> translates to: match the word 'foo', the output
12009record separator (see L<perlvar/$\>) and the letter 's' (one time or more)
12010followed by the word 'bar'.
12011
12012=end original
12013
12014(W ambiguous) 正規表現で C<m/$\/> のようなことをしました。
12015正規表現 C<m/foo$\s+bar/m> は以下のように翻訳されます: 単語 'foo'、出力
12016レコードセパレータ (L<perlvar/$\> 参照)、文字 's' (1 回以上)、単語
12017'bar' にマッチングします。
12018
12019=begin original
12020
12021If this is what you intended then you can silence the warning by using
12022C<m/${\}/> (for example: C<m/foo${\}s+bar/>).
12023
12024=end original
12025
12026これがあなたのしたいことなら、C<m/${\}/> を使うことで警告を抑制できます
12027(例えば: C<m/foo${\}s+bar/>)。
12028
12029=begin original
12030
12031If instead you intended to match the word 'foo' at the end of the line
12032followed by whitespace and the word 'bar' on the next line then you can use
12033C<m/$(?)\/> (for example: C<m/foo$(?)\s+bar/>).
12034
12035=end original
12036
12037そうではなく、行末の単語 'foo' に引き続いて、次の行で空白と単語 'bar' に
12038マッチングしたいなら、C<m/$(?)\/> を使ってください (例えば:
12039C<m/foo$(?)\s+bar/>)。
12040
12041=item Possible unintended interpolation of %s in string
12042
12043=begin original
12044
12045(W ambiguous) You said something like '@foo' in a double-quoted string
12046but there was no array C<@foo> in scope at the time. If you wanted a
12047literal @foo, then write it as \@foo; otherwise find out what happened
12048to the array you apparently lost track of.
12049
12050=end original
12051
12052(W ambiguous) 「@foo」のようなものをダブルクォート文字列の中に書きましたが、
12053現在のスコープ内に C<@foo> という配列はありません。
12054リテラルな @foo を指定したい場合は、\@foo と書いてください;
12055そうでなければ、どうやら見失ってしまったらしい配列に何が起こったを
12056調べてください。
12057
640012058=item Precedence problem: open %s should be open(%s)
640112059
640212060=begin original
640312061
640412062(S precedence) The old irregular construct
640512063
640612064=end original
640712065
640812066(S precedence) 古い変則的な構文
640912067
641012068 open FOO || die;
641112069
641212070=begin original
641312071
641412072is now misinterpreted as
641512073
641612074=end original
641712075
641812076は現在は、Perl 5 の文法の厳しい正規化の結果、単項演算子か
641912077リスト演算子と解釈されますので、
642012078
642112079 open(FOO || die);
642212080
642312081=begin original
642412082
642512083because of the strict regularization of Perl 5's grammar into unary and
642612084list operators. (The old open was a little of both.) You must put
642712085parentheses around the filehandle, or use the new "or" operator instead
642812086of "||".
642912087
643012088=end original
643112089
643212090という風に誤った解釈がなされます。
643312091(古い open は、単項演算子とリスト演算子の中間のようなものでした。)
6434ファイルハンドルの前後を括弧で囲むか、"||" 演算子の代わりに
12092ファイルハンドルの前後をかっこで囲むか、"||" 演算子の代わりに
643512093"or" 演算子を使わなくてはなりません。
643612094
643712095=item Premature end of script headers
643812096
643912097=begin original
644012098
6441See Server error.
12099See L</500 Server error>.
644212100
644312101=end original
644412102
6445"Server error"を参照してください。
12103L</500 Server error> を参照してください。
644612104
644712105=item printf() on closed filehandle %s
644812106
644912107=begin original
645012108
645112109(W closed) The filehandle you're writing to got itself closed sometime
6452before now. Check your logic flow.
12110before now. Check your control flow.
645312111
645412112=end original
645512113
6456(W closed) 書き込みを行なおうとしたファイルハンドルは、既にクローズされています。
12114(W closed) 書き込みを行なおうとしたファイルハンドルは、既に閉じられています。
6457論理フローをチェックしてください。
12115制御フローをチェックしてください。
645812116
645912117=item print() on closed filehandle %s
646012118
646112119=begin original
646212120
646312121(W closed) The filehandle you're printing on got itself closed sometime
6464before now. Check your logic flow.
12122before now. Check your control flow.
646512123
646612124=end original
646712125
6468(W closed) print を行なおうとしたファイルハンドルは、既にクローズされています。
12126(W closed) print を行なおうとしたファイルハンドルは、既に閉じられています。
6469論理フローをチェックしてください。
12127制御フローをチェックしてください。
647012128
647112129=item Process terminated by SIG%s
647212130
647312131=begin original
647412132
647512133(W) This is a standard message issued by OS/2 applications, while *nix
647612134applications die in silence. It is considered a feature of the OS/2
647712135port. One can easily disable this by appropriate sighandlers, see
647812136L<perlipc/"Signals">. See also "Process terminated by SIGTERM/SIGINT"
647912137in L<perlos2>.
648012138
648112139=end original
648212140
648312141(W) *nix アプリケーションは何も出力せずに終了しますが、
648412142OS/2 アプリケーションはこれを標準メッセージとして出力します。
648512143これは OS/2 版の仕様とみなされています。
648612144適切なシグナルハンドラによって簡単に無効にできます;
648712145L<perlipc/"Signals"> を参照してください。
648812146L<perlos2> の "Process terminated by SIGTERM/SIGINT" も参照してください。
648912147
12148=item Prototype after '%c' for %s : %s
12149
12150=begin original
12151
12152(W illegalproto) A character follows % or @ in a prototype. This is
12153useless, since % and @ gobble the rest of the subroutine arguments.
12154
12155=end original
12156
12157(W illegalproto) プロトタイプで % または @ に文字が引き続いています。
12158これは無意味です; % と @ は残りのサブルーチン引数を全て飲み込むからです。
12159
649012160=item Prototype mismatch: %s vs %s
649112161
649212162=begin original
649312163
6494(S unsafe) The subroutine being declared or defined had previously been
12164(S prototype) The subroutine being declared or defined had previously been
649512165declared or defined with a different function prototype.
649612166
649712167=end original
649812168
6499(S unsafe) 以前異なる関数プロトタイプで宣言または定義されたサブルーチンが
12169(S prototype) 以前異なる関数プロトタイプで宣言または定義された
6500宣言または定義されました。
12170サブルーチンが宣言または定義されました。
650112171
6502=item Quantifier in {,} bigger than %d before << HERE in regex m/%s/
12172=item Prototype not terminated
650312173
650412174=begin original
650512175
6506(F) There is currently a limit to the size of the min and max values of the
12176(F) You've omitted the closing parenthesis in a function prototype
6507{min,max} construct. The << HERE shows in the regular expression about where
12177definition.
6508the problem was discovered. See L<perlre>.
650912178
651012179=end original
651112180
12181(F) 関数プロトタイプ宣言で、閉じかっこがありませんでした。
12182
12183=item Prototype '%s' overridden by attribute 'prototype(%s)' in %s
12184
12185=begin original
12186
12187(W prototype) A prototype was declared in both the parentheses after
12188the sub name and via the prototype attribute. The prototype in
12189parentheses is useless, since it will be replaced by the prototype
12190from the attribute before it's ever used.
12191
12192=end original
12193
12194(W prototype) サブルーチン名の後のかっことプロトタイプ属性の両方で
12195プロトタイプが宣言されました。
12196先に宣言されていたプロトタイプは属性で置き換えられるので、かっこ内の
12197プロトタイプは無駄です。
12198
12199=item Quantifier follows nothing in regex; marked by S<<-- HERE> in m/%s/
12200
12201=begin original
12202
12203(F) You started a regular expression with a quantifier. Backslash it if
12204you meant it literally. The S<<-- HERE> shows whereabouts in the regular
12205expression the problem was discovered. See L<perlre>.
12206
12207=end original
12208
12209(F) 正規表現を量指定子で開始しています。
12210もしそれをリテラルに使いたいなら、バックスラッシュでクォートしてください。
12211S<<-- HERE> で正規表現のどこに問題が発見されたかを示しています。
12212L<perlre> を参照してください。
12213
12214=item Quantifier in {,} bigger than %d in regex; marked by S<<-- HERE> in m/%s/
12215
12216=begin original
12217
12218(F) There is currently a limit to the size of the min and max values of
12219the {min,max} construct. The S<<-- HERE> shows whereabouts in the regular
12220expression the problem was discovered. See L<perlre>.
12221
12222=end original
12223
651212224現在のところ、{min,max} 構造の最大値と最小値には制限があります。
6513<< HERE で正規表現のどこに問題が発見されたかを示しています。
12225S<<-- HERE> で正規表現のどこに問題が発見されたかを示しています。
651412226L<perlre> を参照してください。
651512227
6516=item Quantifier unexpected on zero-length expression before << HERE %s
12228=item Quantifier {n,m} with n > m can't match in regex
651712229
12230=item Quantifier {n,m} with n > m can't match in regex; marked by
12231S<<-- HERE> in m/%s/
12232
651812233=begin original
651912234
12235(W regexp) Minima should be less than or equal to maxima. If you really
12236want your regexp to match something 0 times, just put {0}.
12237
12238=end original
12239
12240(W regexp) 最小値は最大値以下である必要があります。
12241本当に 0 回マッチングする正規表現がほしいなら、単に {0} を指定してください。
12242
12243=item Quantifier unexpected on zero-length expression in regex m/%s/
12244
12245=begin original
12246
652012247(W regexp) You applied a regular expression quantifier in a place where
652112248it makes no sense, such as on a zero-width assertion. Try putting the
652212249quantifier inside the assertion instead. For example, the way to match
652312250"abc" provided that it is followed by three repetitions of "xyz" is
652412251C</abc(?=(?:xyz){3})/>, not C</abc(?=xyz){3}/>.
652512252
652612253=end original
652712254
652812255(W regexp) 正規表現量指定子をゼロ幅アサーションのような意味のない場所に
652912256適用しました。
653012257代わりにアサーションの中に量指定子を置いてください。
653112258例えば、"xyz" を 3 回繰り返した後の "abc" にマッチングさせるには、
653212259C</abc(?=xyz){3}/> ではなく C</abc(?=(?:xyz){3})/> としてください。
653312260
653412261=item Range iterator outside integer range
653512262
653612263=begin original
653712264
653812265(F) One (or both) of the numeric arguments to the range operator ".."
653912266are outside the range which can be represented by integers internally.
654012267One possible workaround is to force Perl to use magical string increment
654112268by prepending "0" to your numbers.
654212269
654312270=end original
654412271
654512272(F) 範囲演算子 ".." の一つ(または両方)の数値引数が、内部で整数として
654612273表現できる範囲を越えています。
654712274回避方法のひとつとしては、数値の頭に "0" を付けることで Perl に
654812275マジカル文字列インクリメントの使用を強制させることです。
654912276
12277=item Ranges of ASCII printables should be some subset of "0-9", "A-Z", or
12278"a-z" in regex; marked by S<<-- HERE> in m/%s/
12279
12280=begin original
12281
12282(W regexp) (only under C<S<use re 'strict'>> or within C<(?[...])>)
12283
12284=end original
12285
12286(W regexp) (C<S<use re 'strict'>> の基か C<(?[...])> の内側のみ)
12287
12288=begin original
12289
12290Stricter rules help to find typos and other errors. Perhaps you didn't
12291even intend a range here, if the C<"-"> was meant to be some other
12292character, or should have been escaped (like C<"\-">). If you did
12293intend a range, the one that was used is not portable between ASCII and
12294EBCDIC platforms, and doesn't have an obvious meaning to a casual
12295reader.
12296
12297=end original
12298
12299より厳密な規則はタイプミスやその他のエラーを見つける助けになります。
12300おそらくそもそもここで範囲を意図していないか、C<"-"> が他の文字の
12301つもりだったか、(C<"\-"> のように)エスケープされるべきだったのでしょう。
12302範囲を意図していたのなら、使われているものは ASCII と EBCDIC
12303プラットフォームの間で移植性がなく、カジュアルな読者には不明確な
12304意味になります。
12305
12306 [3-7] # OK; Obvious and portable
12307 [d-g] # OK; Obvious and portable
12308 [A-Y] # OK; Obvious and portable
12309 [A-z] # WRONG; Not portable; not clear what is meant
12310 [a-Z] # WRONG; Not portable; not clear what is meant
12311 [%-.] # WRONG; Not portable; not clear what is meant
12312 [\x41-Z] # WRONG; Not portable; not obvious to non-geek
12313
12314=begin original
12315
12316(You can force portability by specifying a Unicode range, which means that
12317the endpoints are specified by
12318L<C<\N{...}>|perlrecharclass/Character Ranges>, but the meaning may
12319still not be obvious.)
12320The stricter rules require that ranges that start or stop with an ASCII
12321character that is not a control have all their endpoints be the literal
12322character, and not some escape sequence (like C<"\x41">), and the ranges
12323must be all digits, or all uppercase letters, or all lowercase letters.
12324
12325=end original
12326
12327(Unicode の範囲を指定することで移植性を共生することができます;
12328これは端点を L<C<\N{...}>|perlrecharclass/Character Ranges> で
12329指定するということですが、意味はやはり明確ではないかもしれません。)
12330より厳密な規則は、制御文字でなく、全てリテラルな文字で、
12331(C<"\x41"> のような)一部のエスケープシーケンスでない
12332ASCII 文字で開始および終了することを要求し、
12333範囲は全て数字か、全て大文字か、全て小文字でなければなりません。
12334
12335=item Ranges of digits should be from the same group in regex; marked by
12336S<<-- HERE> in m/%s/
12337
12338=begin original
12339
12340(W regexp) (only under C<S<use re 'strict'>> or within C<(?[...])>)
12341
12342=end original
12343
12344(W regexp) (C<S<use re 'strict'>> の基か C<(?[...])> の内側のみ)
12345
12346=begin original
12347
12348Stricter rules help to find typos and other errors. You included a
12349range, and at least one of the end points is a decimal digit. Under the
12350stricter rules, when this happens, both end points should be digits in
12351the same group of 10 consecutive digits.
12352
12353=end original
12354
12355より厳密な規則はタイプミスやその他のエラーを見つける助けになります。
12356範囲を含んでいて、少なくとも片方の端は数字です。
12357より厳密な規則では、これが起きたときは、両端が 10 連続した数字の同じ
12358グループに属する符号位置である必要があります。
12359
12360=item readdir() attempted on invalid dirhandle %s
12361
12362=begin original
12363
12364(W io) The dirhandle you're reading from is either closed or not really
12365a dirhandle. Check your control flow.
12366
12367=end original
12368
12369(W io) 読み込もうとしたディレクトリハンドルは既に閉じられているか、
12370実際にはディレクトリハンドルではありません。
12371制御フローをチェックしてください。
12372
655012373=item readline() on closed filehandle %s
655112374
655212375=begin original
655312376
655412377(W closed) The filehandle you're reading from got itself closed sometime
6555before now. Check your logic flow.
12378before now. Check your control flow.
655612379
655712380=end original
655812381
6559(W closed) 読み込みを行なおうとしたファイルハンドルは、既にクローズされています。
12382(W closed) 読み込うとしたファイルハンドルは、既に閉じられています。
6560論理フローをチェックしてください。
12383制御フローをチェックしてください。
656112384
6562=item Reallocation too large: %lx
12385=item read() on closed filehandle %s
656312386
656412387=begin original
656512388
12389(W closed) You tried to read from a closed filehandle.
12390
12391=end original
12392
12393(W closed) 閉じたファイルハンドルから読み込もうとしました。
12394
12395=item read() on unopened filehandle %s
12396
12397=begin original
12398
12399(W unopened) You tried to read from a filehandle that was never opened.
12400
12401=end original
12402
12403(W unopened) 開いていないファイルハンドルから読み込もうとしました。
12404
12405=item Reallocation too large: %x
12406
12407=begin original
12408
656612409(F) You can't allocate more than 64K on an MS-DOS machine.
656712410
656812411=end original
656912412
657012413(F) MS-DOS マシンでは、64K を越えるメモリを割り当てることはできません。
657112414
657212415=item realloc() of freed memory ignored
657312416
657412417=begin original
657512418
657612419(S malloc) An internal routine called realloc() on something that had
657712420already been freed.
657812421
657912422=end original
658012423
658112424内部ルーチンが、何か既に解放されているものに対して realloc() を
658212425呼び出しました。
658312426
658412427=item Recompile perl with B<-D>DEBUGGING to use B<-D> switch
658512428
658612429=begin original
658712430
6588(F debugging) You can't use the B<-D> option unless the code to produce
12431(S debugging) You can't use the B<-D> option unless the code to produce
658912432the desired output is compiled into Perl, which entails some overhead,
659012433which is why it's currently left out of your copy.
659112434
659212435=end original
659312436
6594(F debugging) Perl のコンパイル時に、適切な出力ルーティンが
12437(S debugging) Perl のコンパイル時に、適切な出力ルーティンが
6595組み込まれていなければ、B<-D> スイッチを使うことはできません
12438組み込まれていなければ、B<-D> スイッチを使うことはできません;
659612439これは、多少のオーバヘッドがかかるもので、それが現在使っている
659712440Perl に組み込んでない理由でしょう。
659812441
12442=item Recursive call to Perl_load_module in PerlIO_find_layer
12443
12444=begin original
12445
12446(P) It is currently not permitted to load modules when creating
12447a filehandle inside an %INC hook. This can happen with C<open my
12448$fh, '<', \$scalar>, which implicitly loads PerlIO::scalar. Try
12449loading PerlIO::scalar explicitly first.
12450
12451=end original
12452
12453(P) %INC フックの内側でファイルハンドルを作る時にモジュールを読み込むのは
12454現在のところ許されていません。
12455これは、C<open my $fh, '<', \$scalar> で暗黙に PerlIO::scalar を読み込むときに
12456起こることがあります。
12457最初に PerlIO::scalar を明示的に読み込むことを試してください。
12458
659912459=item Recursive inheritance detected in package '%s'
660012460
660112461=begin original
660212462
6603(F) More than 100 levels of inheritance were used. Probably indicates
12463(F) While calculating the method resolution order (MRO) of a package, Perl
6604an unintended loop in your inheritance hierarchy.
12464believes it found an infinite loop in the C<@ISA> hierarchy. This is a
12465crude check that bails out after 100 levels of C<@ISA> depth.
660512466
660612467=end original
660712468
6608(F) 100 レベル以上継承が行なわれました。
12469(F) パッケージのメソッド解決順序 (MRO) 計算中に、C<@ISA> 構造に
6609おそらく、継承階層の中で、予想外のループになっている部分があるもの
12470無限ループがあると判断しました。
6610思わす。
12471は、C<@ISA> を 100 階層探索した後に起きる荒いチェックです。
661112472
6612=item Recursive inheritance detected while looking for method %s
12473=item Redundant argument in %s
661312474
661412475=begin original
661512476
6616(F) More than 100 levels of inheritance were encountered while invoking
12477(W redundant) You called a function with more arguments than other
6617a method. Probably indicates an unintended loop in your inheritance
12478arguments you supplied indicated would be needed. Currently only
6618hierarchy.
12479emitted when a printf-type format required fewer arguments than were
12480supplied, but might be used in the future for e.g. L<perlfunc/pack>.
661912481
662012482=end original
662112483
6622(F) メソッドの起動中 100 レベル以上の継承行なわれまた。
12484(W redundant) 関数を呼び出すとき、ある引数ている必要数より
6623おそら、継承階層中で、予想外のループになっている部分があるものと
12485くの引数を指定しました。
6624思わます。
12486現在のところ、printf 型のフォーマットが指定さたものより少ない数の
12487引数しか必要としていない場合にのみ発生しますが、将来は
12488例えば L<perlfunc/pack> で使われるかもしれません。
662512489
12490=item refcnt_dec: fd %d%s
12491
12492=item refcnt: fd %d%s
12493
12494=item refcnt_inc: fd %d%s
12495
12496=begin original
12497
12498(P) Perl's I/O implementation failed an internal consistency check. If
12499you see this message, something is very wrong.
12500
12501=end original
12502
12503(P) Perl の I/O 実装は内部の一貫性チェックに失敗しました。
12504このメッセージを見たなら、何かがすごく悪いです。
12505
662612506=item Reference found where even-sized list expected
662712507
662812508=begin original
662912509
663012510(W misc) You gave a single reference where Perl was expecting a list
6631with an even number of elements (for assignment to a hash). This usually
12511with an even number of elements (for assignment to a hash). This
6632means that you used the anon hash constructor when you meant to use
12512usually means that you used the anon hash constructor when you meant
6633parens. In any case, a hash requires key/value B<pairs>.
12513to use parens. In any case, a hash requires key/value B<pairs>.
663412514
663512515=end original
663612516
663712517(W misc) Perl が(ハッシュへの代入のために)偶数の数の要素のリストを
6638想定しているところに 1 つのリファレンスを渡しました。
12518想定しているところに つのリファレンスを渡しました。
663912519これは普通かっこを使うべきところで無名ハッシュコンストラクタを使ったことを
664012520意味します。
664112521とにかく、ハッシュはキー/値の B<組> を要求します。
664212522
664312523 %hash = { one => 1, two => 2, }; # WRONG
664412524 %hash = [ qw/ an anon array / ]; # WRONG
664512525 %hash = ( one => 1, two => 2, ); # right
664612526 %hash = qw( one 1 two 2 ); # also fine
664712527
664812528=item Reference is already weak
664912529
665012530=begin original
665112531
665212532(W misc) You have attempted to weaken a reference that is already weak.
665312533Doing so has no effect.
665412534
665512535=end original
665612536
665712537(W misc) 既に弱いリファレンスを弱めようとしました。
665812538そうしても何の効果もありません。
665912539
6660=item Reference miscount in sv_replace()
12540=item Reference is not weak
666112541
666212542=begin original
666312543
6664(W internal) The internal sv_replace() function was handed a new SV with
12544(W misc) You have attempted to unweaken a reference that is not weak.
6665a reference count of other than 1.
12545Doing so has no effect.
666612546
666712547=end original
666812548
6669(W internal) 内部の sv_replace() 関数が、参照数が 1 でない、新規の
12549(W misc) 現在弱くないリファレンスを弱くないリファレンスにしようとしました。
6670SV を扱いま
12550そうても何の効果もありません
667112551
6672=item Reference to nonexistent group before << HERE in regex m/%s/
12552=item Reference to invalid group 0 in regex; marked by S<<-- HERE> in m/%s/
667312553
667412554=begin original
667512555
12556(F) You used C<\g0> or similar in a regular expression. You may refer
12557to capturing parentheses only with strictly positive integers
12558(normal backreferences) or with strictly negative integers (relative
12559backreferences). Using 0 does not make sense.
12560
12561=end original
12562
12563(F) 正規表現で C<\g0> のようなものを使いました。
12564捕捉用のかっこへの参照は、正数(通常の後方参照)か、負数(相対後方参照)
12565のみです。
125660 は意味を成しません。
12567
12568=item Reference to nonexistent group in regex; marked by S<<-- HERE> in
12569m/%s/
12570
12571=begin original
12572
667612573(F) You used something like C<\7> in your regular expression, but there are
6677not at least seven sets of capturing parentheses in the expression. If you
12574not at least seven sets of capturing parentheses in the expression. If
6678wanted to have the character with value 7 inserted into the regular expression,
12575you wanted to have the character with ordinal 7 inserted into the regular
6679prepend a zero to make the number at least two digits: C<\07>
12576expression, prepend zeroes to make it three digits long: C<\007>
668012577
668112578=end original
668212579
668312580正規表現の中で C<\7> のような記述がありますが、
6684正規表現の中に値を捕らえる括弧が 7 つありません。
12581正規表現の中に値を捕らえるかっこが 7 つありません。
668512582正規表現の中に値 7 を持つ文字を挿入したい場合、
6686ゼロをつけて最低桁の数値にする必要があります: C<\07>
12583ゼロをつけて最低 3 桁の数値にする必要があります: C<\007>
668712584
668812585=begin original
668912586
6690The << HERE shows in the regular expression about where the problem was
12587The S<<-- HERE> shows whereabouts in the regular expression the problem was
669112588discovered.
669212589
669312590=end original
669412591
6695<< HERE で正規表現のどこに問題が発見されたかを示しています。
12592S<<-- HERE> で正規表現のどこに問題が発見されたかを示しています。
669612593
12594=item Reference to nonexistent named group in regex; marked by S<<-- HERE>
12595in m/%s/
12596
12597=begin original
12598
12599(F) You used something like C<\k'NAME'> or C<< \k<NAME> >> in your regular
12600expression, but there is no corresponding named capturing parentheses
12601such as C<(?'NAME'...)> or C<< (?<NAME>...) >>. Check if the name has been
12602spelled correctly both in the backreference and the declaration.
12603
12604=end original
12605
12606(F) 正規表現中に C<\k'NAME'> や C<< \k<NAME> >> のようなものを使いましたが、
12607C<(?'NAME'...)> や C<< (?<NAME>...) >> のような、対応する名前付き捕捉かっこが
12608ありません。
12609前方参照と定義の両方において、名前のスペルが正しいかどうか
12610チェックしてください。
12611
12612=begin original
12613
12614The S<<-- HERE> shows whereabouts in the regular expression the problem was
12615discovered.
12616
12617=end original
12618
12619S<<-- HERE> で正規表現のどこに問題が発見されたかを示しています。
12620
12621=item Reference to nonexistent or unclosed group in regex; marked by
12622S<<-- HERE> in m/%s/
12623
12624=begin original
12625
12626(F) You used something like C<\g{-7}> in your regular expression, but there
12627are not at least seven sets of closed capturing parentheses in the
12628expression before where the C<\g{-7}> was located.
12629
12630=end original
12631
12632(F) 正規表現で C<\g{-7}> のようなものを使いましたが、式中で C<\g{-7}> の
12633位置より前に少なくとも 7 組の捕捉用のかっこの組がありません。
12634
12635=begin original
12636
12637The S<<-- HERE> shows whereabouts in the regular expression the problem was
12638discovered.
12639
12640=end original
12641
12642S<<-- HERE> で正規表現のどこに問題が発見されたかを示しています。
12643
669712644=item regexp memory corruption
669812645
669912646=begin original
670012647
670112648(P) The regular expression engine got confused by what the regular
670212649expression compiler gave it.
670312650
670412651=end original
670512652
670612653(P) 正規表現コンパイラが渡したもので、正規表現エンジンが
670712654処理できなくなりました。
670812655
6709=item Regexp out of space
12656=item Regexp modifier "/%c" may appear a maximum of twice
671012657
12658=item Regexp modifier "%c" may appear a maximum of twice in regex; marked
12659by S<<-- HERE> in m/%s/
12660
671112661=begin original
671212662
12663(F) The regular expression pattern had too many occurrences
12664of the specified modifier. Remove the extraneous ones.
12665
12666=end original
12667
12668(F) 正規表現パターンに指定された修飾子が多すぎます。
12669余分なものを削除してください。
12670
12671=item Regexp modifier "%c" may not appear after the "-" in regex; marked by <--
12672HERE in m/%s/
12673
12674=begin original
12675
12676(F) Turning off the given modifier has the side effect of turning on
12677another one. Perl currently doesn't allow this. Reword the regular
12678expression to use the modifier you want to turn on (and place it before
12679the minus), instead of the one you want to turn off.
12680
12681=end original
12682
12683(F regexp) 指定された修飾子をオフにするのは他の修飾子をオンにするという
12684副作用があります。
12685Perl は現在のところこれを受け入れません。
12686オフにしたいものではなく、オンにしたい修飾子を使う(そしてマイナスの
12687前に置く)ように正規表現を書き直してください。
12688
12689=item Regexp modifier "/%c" may not appear twice
12690
12691=item Regexp modifier "%c" may not appear twice in regex; marked by <--
12692HERE in m/%s/
12693
12694=begin original
12695
12696(F) The regular expression pattern had too many occurrences
12697of the specified modifier. Remove the extraneous ones.
12698
12699=end original
12700
12701(F) 正規表現パターンに指定された修飾子が多すぎます。
12702余分なものを削除してください。
12703
12704=item Regexp modifiers "/%c" and "/%c" are mutually exclusive
12705
12706=item Regexp modifiers "%c" and "%c" are mutually exclusive in regex;
12707marked by S<<-- HERE> in m/%s/
12708
12709=begin original
12710
12711(F) The regular expression pattern had more than one of these
12712mutually exclusive modifiers. Retain only the modifier that is
12713supposed to be there.
12714
12715=end original
12716
12717(F) 正規表現パターンに相互に排他的な修飾子が複数あります。
12718ここで使うであろう修飾子のみを保持します。
12719
12720=item Regexp out of space in regex m/%s/
12721
12722=begin original
12723
671312724(P) A "can't happen" error, because safemalloc() should have caught it
671412725earlier.
671512726
671612727=end original
671712728
6718(P) safemalloc() が見つけるはずなので、「起こるはずのないエラーです。
12729(P) safemalloc() が見つけるはずなので、「起こるはずのないエラーです。
671912730
6720=item Repeat count in pack overflows
12731=item Repeated format line will never terminate (~~ and @#)
672112732
672212733=begin original
672312734
6724(F) You can't specify a repeat count so large that it overflows your
12735(F) Your format contains the ~~ repeat-until-blank sequence and a
6725signed integers. See L<perlfunc/pack>.
12736numeric field that will never go blank so that the repetition never
12737terminates. You might use ^# instead. See L<perlform>.
672612738
672712739=end original
672812740
6729(F) 繰り返し回数として符号付き整数をオーバーフローするよう
12741(F) フォーマットに ~~ (空白まで繰り返し)シーケンスして空白にらない
6730値は指定せん
12742スウチフィールドが含まれているの、無限ループになり
6731L<perlfunc/pack>参照てください
12743代わりに ^# 使うべきでょう
12744L<perlform> を参照してください。
673212745
6733=item Repeat count in unpack overflows
12746=item Replacement list is longer than search list
673412747
673512748=begin original
673612749
6737(F) You can't specify a repeat count so large that it overflows your
12750(W misc) You have used a replacement list that is longer than the
6738signed integers. See L<perlfunc/unpack>.
12751search list. So the additional elements in the replacement list
12752are meaningless.
673912753
674012754=end original
674112755
6742(F) 返し回数として符号付き整数オーバーフローするような
12756(W misc) 検索リストよも長い置換リスト使いました。
6743指定きません
12757長い分の置換リスト無意味
6744L<perlfunc/unpack> を参照してください。
674512758
12759=item '(*%s' requires a terminating ':' in regex; marked by <-- HERE in m/%s/
12760
12761=begin original
12762
12763(F) You used a construct that needs a colon and pattern argument.
12764Supply these or check that you are using the right construct.
12765
12766=end original
12767
12768(F) コロンとパターン引数を必要とする構文を使いました。
12769これらを補うか、正しい構文を使っているか確認してください。
12770
12771=item '%s' resolved to '\o{%s}%d'
12772
12773=begin original
12774
12775(W misc, regexp) You wrote something like C<\08>, or C<\179> in a
12776double-quotish string. All but the last digit is treated as a single
12777character, specified in octal. The last digit is the next character in
12778the string. To tell Perl that this is indeed what you want, you can use
12779the C<\o{ }> syntax, or use exactly three digits to specify the octal
12780for the character.
12781
12782=end original
12783
12784(W misc, regexp) ダブルクォート風の文字列の中で C<\08> や C<\179> のような
12785ものを書きました。
12786最後以外の数字は、8 進数で指定された単一の文字として扱われます。
12787最後の数字は文字列中の次の文字です。
12788これがまさしく望んでいるものであることを Perl に伝えるには、
12789C<\o{ }> 構文を使うか、文字を 8 進数で指定するために正確に 3 桁を
12790使ってください。
12791
674612792=item Reversed %s= operator
674712793
674812794=begin original
674912795
675012796(W syntax) You wrote your assignment operator backwards. The = must
6751always comes last, to avoid ambiguity with subsequent unary operators.
12797always come last, to avoid ambiguity with subsequent unary operators.
675212798
675312799=end original
675412800
675512801(W syntax) 代入演算子を逆順に書いています。
675612802等号の後に単項演算子が続くときに、曖昧になるのを避けるため、
675712803代入演算子では、等号 = が、最後にこないといけません。
675812804
6759=item Runaway format
12805=item rewinddir() attempted on invalid dirhandle %s
676012806
676112807=begin original
676212808
6763(F) Your format contained the ~~ repeat-until-blank sequence, but it
12809(W io) The dirhandle you tried to do a rewinddir() on is either closed
6764produced 200 lines at once, and the 200th line looked exactly like the
12810or not really a dirhandle. Check your control flow.
6765199th line. Apparently you didn't arrange for the arguments to exhaust
6766themselves, either by using ^ instead of @ (for scalar variables), or by
6767shifting or popping (for array variables). See L<perlform>.
676812811
676912812=end original
677012813
6771(F) 定義したフォーマットに、空になまで繰り返す ~~ が
12814(W io) rewinddir() ようとしディレクリハンドルは既閉じられていか、
6772含まれていましたが、一度 200 行以上とな、199 行目と 200 行目が
12815実際はディレクトリハンドルではあません。
6773全く同じになりま
12816制御フローをチェックてください
6774(スカラ変数には) @ の代わりに ^ を用いるか、(配列変数には) shift か pop を
6775行なうかして、引数が自動的になくなるようになっていないといけませんが、
6776そうなっていないようです。
6777L<perlform> を参照してください。
677812817
12818=item Scalars leaked: %d
12819
12820=begin original
12821
12822(S internal) Something went wrong in Perl's internal bookkeeping
12823of scalars: not all scalar variables were deallocated by the time
12824Perl exited. What this usually indicates is a memory leak, which
12825is of course bad, especially if the Perl program is intended to be
12826long-running.
12827
12828=end original
12829
12830(P) Perl 内部のスカラ管理で何かがおかしくなりました:
12831Perl 終了時に全てのスカラ変数が解放されませんでした。
12832これは普通メモリリークを示していて、これはもちろん悪いことですが、
12833Perl プログラムが長い間動作する場合には特にそうです。
12834
677912835=item Scalar value @%s[%s] better written as $%s[%s]
678012836
678112837=begin original
678212838
678312839(W syntax) You've used an array slice (indicated by @) to select a
678412840single element of an array. Generally it's better to ask for a scalar
678512841value (indicated by $). The difference is that C<$foo[&bar]> always
678612842behaves like a scalar, both when assigning to it and when evaluating its
678712843argument, while C<@foo[&bar]> behaves like a list when you assign to it,
678812844and provides a list context to its subscript, which can do weird things
678912845if you're expecting only one subscript.
679012846
679112847=end original
679212848
679312849(W syntax) 配列の一つの要素を選ぶのに、(@ で示される) 配列
679412850スライスを用いました。
679512851一般には、($ で示される) スカラ値を使った方が良いと思われます。
679612852違いは、C<$foo[&bar]> とした場合、代入の対象としたときにも、
679712853添字を評価するときにも、常にスカラとして振る舞うのに対し、
679812854C<@foo[&bar]> の場合には、代入の対象としてもリストとして振る舞い、
6799添字にもリストコンテキストを与えることになります
12855添字にもリストコンテキストを与えることになります;
6800これは、1 つの添字だけを期待するときには、おかしなこととなるでしょう。
12856これは、つの添字だけを期待するときには、おかしなこととなるでしょう。
680112857
680212858=begin original
680312859
680412860On the other hand, if you were actually hoping to treat the array
680512861element as a list, you need to look into how references work, because
680612862Perl will not magically convert between scalars and lists for you. See
680712863L<perlref>.
680812864
680912865=end original
681012866
681112867一方、もし本当に配列要素をリストとして扱いたい場合、リファレンスが
681212868どのように働くかについて詳しく知る必要があります; なぜなら
681312869Perl はスカラとリストを自動的に変換したりはしないからです。
681412870L<perlref> を参照してください。
681512871
681612872=item Scalar value @%s{%s} better written as $%s{%s}
681712873
681812874=begin original
681912875
682012876(W syntax) You've used a hash slice (indicated by @) to select a single
682112877element of a hash. Generally it's better to ask for a scalar value
682212878(indicated by $). The difference is that C<$foo{&bar}> always behaves
682312879like a scalar, both when assigning to it and when evaluating its
682412880argument, while C<@foo{&bar}> behaves like a list when you assign to it,
682512881and provides a list context to its subscript, which can do weird things
682612882if you're expecting only one subscript.
682712883
682812884=end original
682912885
683012886(W syntax) ハッシュの一つの要素を選ぶのに、(@ で示される) ハッシュ
683112887スライスを用いました。
683212888一般には、($ で示される) スカラ値を使った方が良いと思われます。
683312889違いは、C<$foo{&bar}> とした場合、代入の対象としたときにも、
683412890添字を評価するときにも、常にスカラとして振る舞うのに対し、
683512891C<@foo{&bar}> の場合には、代入の対象としてもリストとして振る舞い、
6836添字にもリストコンテキストを与えることになります
12892添字にもリストコンテキストを与えることになります;
6837これは、1 つの添字だけを期待するときには、おかしなこととなるでしょう。
12893これは、つの添字だけを期待するときには、おかしなこととなるでしょう。
683812894
683912895=begin original
684012896
684112897On the other hand, if you were actually hoping to treat the hash element
684212898as a list, you need to look into how references work, because Perl will
684312899not magically convert between scalars and lists for you. See
684412900L<perlref>.
684512901
684612902=end original
684712903
684812904一方、もし本当にハッシュ要素をリストとして扱いたい場合、リファレンスが
684912905どのように働くかについて詳しく知る必要があります; なぜなら
685012906Perl はスカラとリストを自動的に変換したりはしないからです。
685112907L<perlref> を参照してください。
685212908
6853=item Scalars leaked: %d
12909=item Search pattern not terminated
685412910
685512911=begin original
685612912
6857(P) Something went wrong in Perl's internal bookkeeping of scalars:
12913(F) The lexer couldn't find the final delimiter of a // or m{}
6858not all scalar variables were deallocated by the time Perl exited.
12914construct. Remember that bracketing delimiters count nesting level.
6859What this usually indicates is a memory leak, which is of course bad,
12915Missing the leading C<$> from a variable C<$m> may cause this error.
6860especially if the Perl program is intended to be long-running.
686112916
686212917=end original
686312918
6864(P) Perl 内部スカラ管理で何かしくなりました:
12919(F) // もしくは m{} 構文最後の区切り文字見つかりませんでした
6865Perl 終了時に全てのスカラ変が解放さませんした
12920かっこ類区切り文字では、ネトをえることを忘ないください
6866これは普通メモリリーク示していて、こはもちろん悪いことです
12921C<$m> 変数の前に C<$> つけるのを忘るとのエラーが出ることがあります。
6867Perl プログラムが長い間動作する場合には特にそうです。
686812922
6869=item Script is not setuid/setgid in suidperl
6870
687112923=begin original
687212924
6873(F) Oddly, the suidperl program was invoked on a script without a setuid
12925Note that since Perl 5.10.0 a // can also be the I<defined-or>
6874or setgid bit set. This doesn't make much sense.
12926construct, not just the empty search pattern. Therefore code written
12927in Perl 5.10.0 or later that uses the // as the I<defined-or> can be
12928misparsed by pre-5.10.0 Perls as a non-terminated search pattern.
687512929
687612930=end original
687712931
6878(F) 妙なことに、setuid ビットもしくsetgid ビットが立っ
12932Perl 5.10.0 から// I<defined-or> 構文とし扱われ、単
6879スクリプトに対して、suidperl プログラムが起動されした
12933空検索パターンではありせん
6880は意味がありません。
12934従って、Perl 5.10.0 以降で書かた、// を I<defined-or> として使っている
12935コードは、5.10.0 以前の Perl では、終端していない検索パターンとして
12936誤パースされるかもしれません。
688112937
6882=item Search pattern not terminated
12938=item seekdir() attempted on invalid dirhandle %s
688312939
688412940=begin original
688512941
6886(F) The lexer couldn't find the final delimiter of a // or m{}
12942(W io) The dirhandle you are doing a seekdir() on is either closed or not
6887construct. Remember that bracketing delimiters count nesting level.
12943really a dirhandle. Check your control flow.
6888Missing the leading C<$> from a variable C<$m> may cause this error.
688912944
689012945=end original
689112946
6892(F) // くは m{} 構文の最後の区切り文字が見つかりませんでした
12947(W io) seekdir()ようとしたディレクトリハンドルは閉じられているか、
6893括弧類の区切り文字で、ネスを数えることを忘れないください
12948実際にディレクリハンドルはありません
6894C<$m> 変数の前に C<$> をつけるのを忘れるとこのエラが出ることがあります
12949制御フロをチェックしてください
689512950
689612951=item %sseek() on unopened filehandle
689712952
689812953=begin original
689912954
690012955(W unopened) You tried to use the seek() or sysseek() function on a
690112956filehandle that was either never opened or has since been closed.
690212957
690312958=end original
690412959
690512960(W unopened) オープンされていないファイルハンドルか、既にクローズされた
690612961ファイルハンドルに対して、seek() 関数や sysseek() 関数を使おうとしました。
690712962
690812963=item select not implemented
690912964
691012965=begin original
691112966
691212967(F) This machine doesn't implement the select() system call.
691312968
691412969=end original
691512970
691612971(F) このマシンでは、select() システムコールは実装されていません。
691712972
12973=item Self-ties of arrays and hashes are not supported
12974
12975=begin original
12976
12977(F) Self-ties are of arrays and hashes are not supported in
12978the current implementation.
12979
12980=end original
12981
12982(F) 配列やハッシュの自己 tie は現在の実装では対応していません。
12983
691812984=item Semicolon seems to be missing
691912985
692012986=begin original
692112987
692212988(W semicolon) A nearby syntax error was probably caused by a missing
692312989semicolon, or possibly some other missing operator, such as a comma.
692412990
692512991=end original
692612992
692712993(W semicolon) この付近の構文エラーは、おそらくセミコロンか、コンマなどの
692812994演算子がなかったために起こったものと考えられます。
692912995
693012996=item semi-panic: attempt to dup freed string
693112997
693212998=begin original
693312999
693413000(S internal) The internal newSVsv() routine was called to duplicate a
693513001scalar that had previously been marked as free.
693613002
693713003=end original
693813004
693913005(S internal) 既に解放と印を付けたスカラを複製するために、内部の
694013006newSVsv() ルーティンが呼ばれました。
694113007
694213008=item sem%s not implemented
694313009
694413010=begin original
694513011
694613012(F) You don't have System V semaphore IPC on your system.
694713013
694813014=end original
694913015
695013016(F) このシステムでは、System V セマフォ IPC は使えません。
695113017
695213018=item send() on closed socket %s
695313019
695413020=begin original
695513021
695613022(W closed) The socket you're sending to got itself closed sometime
6957before now. Check your logic flow.
13023before now. Check your control flow.
695813024
695913025=end original
696013026
6961(W closed) 送信を行なおうとしたソケットは、既にクローズされています。
13027(W closed) 送信を行なおうとしたソケットは、既に閉じられています。
6962論理フローをチェックしてください。
13028制御フローをチェックしてください。
696313029
6964=item Sequence (? incomplete before << HERE mark in regex m/%s/
13030=item Sequence "\c{" invalid
696513031
696613032=begin original
696713033
6968(F) A regular expression ended with an incomplete extension (?. The <<<HERE
13034(F) These three characters may not appear in sequence in a
6969shows in the regular expression about where the problem was discovered. See
13035double-quotish context. This message is raised only on non-ASCII
6970L<perlre>.
13036platforms (a different error message is output on ASCII ones). If you
13037were intending to specify a control character with this sequence, you'll
13038have to use a different way to specify it.
697113039
697213040=end original
697313041
6974(F) 正規表現が不完全な拡張 (? 終わっています。
13042(F) これら三つの文字の並びはダブルクォート風のコンテキスト
6975<<<HERE で正規表現のどこに問題が発見されたかを示してい
13043使えせん
6976L<perlre> を参照てください。
13044このメッセージは非 ASCII プラットフォームでのみ発生ます
13045(ASCII では異なったえらメッセージが出力されます)。
13046この並びの制御文字を指定することを意図している場合は、指定するために
13047異なる方法を使う必要があります。
697713048
6978=item Sequence (?{...}) not terminated or not {}-balanced in %s
13049=item Sequence (? incomplete in regex; marked by S<<-- HERE> in m/%s/
697913050
698013051=begin original
698113052
6982(F) If the contents of a (?{...}) clause contains braces, they must balance
13053(F) A regular expression ended with an incomplete extension (?. The
6983for Perl to properly detect the end of the clause. See L<perlre>.
13054S<<-- HERE> shows whereabouts in the regular expression the problem was
13055discovered. See L<perlre>.
698413056
698513057=end original
698613058
6987(F) (?{...}) 節の中に大括弧がある場合、対応していなければなりせん
13059(F) 正規表現が不完全な拡張 (? で終わっていま
6988Perl しく節最後を検出するめです。
13060S<<-- HERE> で規表現どこに問題が発見されかを示しています。
698913061L<perlre> を参照してください。
699013062
6991=item Sequence (?%s...) not implemented before << HERE mark in %s
13063=item Sequence (?%c...) not implemented in regex; marked by S<<-- HERE> in
13064m/%s/
699213065
699313066=begin original
699413067
6995(F) A proposed regular expression extension has the character reserved but
13068(F) A proposed regular expression extension has the character reserved
6996has not yet been written. The << HERE shows in the regular expression about
13069but has not yet been written. The S<<-- HERE> shows whereabouts in the
6997where the problem was discovered. See L<perlre>.
13070regular expression the problem was discovered. See L<perlre>.
699813071
699913072=end original
700013073
700113074(F) 使おうとした正規表現の拡張は、予約された文字ですが、
700213075まだ実装されていません。
7003<< HERE で正規表現のどこに問題が発見されたかを示しています。
13076S<<-- HERE> で正規表現のどこに問題が発見されたかを示しています。
700413077L<perlre> を参照してください。
700513078
7006=item Sequence (?%s...) not recognized before << HERE mark in %s
13079=item Sequence (?%s...) not recognized in regex; marked by S<<-- HERE> in
13080m/%s/
700713081
700813082=begin original
700913083
701013084(F) You used a regular expression extension that doesn't make sense.
7011The << HERE shows in the regular expression about
13085The S<<-- HERE> shows whereabouts in the regular expression the problem was
7012where the problem was discovered.
13086discovered. This may happen when using the C<(?^...)> construct to tell
7013See L<perlre>.
13087Perl to use the default regular expression modifiers, and you
13088redundantly specify a default modifier. For other
13089causes, see L<perlre>.
701413090
701513091=end original
701613092
701713093(F) お使いになった正規表現の拡張は、意味をなしません。
7018<< HERE で正規表現のどこに問題が発見されたかを示しています。
13094S<<-- HERE> で正規表現のどこに問題が発見されたかを示しています。
7019L<perlre>参照してください。
13095これは、 Perl にデフォルトの正規表現修飾子使うように知らせるために
13096C<(?^...)> 構文を使ったときや、デフォルトの演算子を冗長に指定しています。
13097その他の理由については、L<perlre> を参照してください。
702013098
702113099=item Sequence (?#... not terminated in regex m/%s/
702213100
702313101=begin original
702413102
702513103(F) A regular expression comment must be terminated by a closing
7026parenthesis. Embedded parentheses aren't allowed. See L<perlre>.
13104parenthesis. Embedded parentheses aren't allowed. See
13105L<perlre>.
702713106
702813107=end original
702913108
7030(F) 正規表現コメントは閉じ括弧で終わらなければなりません。
13109(F) 正規表現コメントは閉じかっこで終わらなければなりません。
7031括弧を含めるは許されません。
13110組み込みのかっこは許されません。
703213111L<perlre> を参照してください。
703313112
7034=item 500 Server error
13113=item Sequence (?&... not terminated in regex; marked by S<<-- HERE> in
13114m/%s/
703513115
703613116=begin original
703713117
7038See Server error.
13118(F) A named reference of the form C<(?&...)> was missing the final
13119closing parenthesis after the name. The S<<-- HERE> shows whereabouts
13120in the regular expression the problem was discovered.
703913121
704013122=end original
704113123
7042"Server error" を参照してください。
13124(F) C<(?&...)> の形式の名前付きリファレンスで、名前の後の最後の閉じかっこが
13125ありません。
13126S<<-- HERE> で正規表現のどこに問題が発見されたかを示しています。
704313127
7044=item Server error
13128=item Sequence (?%c... not terminated in regex; marked by S<<-- HERE>
13129in m/%s/
704513130
704613131=begin original
704713132
7048This is the error message generally seen in a browser window when trying
13133(F) A named group of the form C<(?'...')> or C<< (?<...>) >> was missing the final
7049to run a CGI program (including SSI) over the web. The actual error text
13134closing quote or angle bracket. The S<<-- HERE> shows whereabouts in the
7050varies widely from server to server. The most frequently-seen variants
13135regular expression the problem was discovered.
7051are "500 Server error", "Method (something) not permitted", "Document
7052contains no data", "Premature end of script headers", and "Did not
7053produce a valid header".
705413136
705513137=end original
705613138
7057これは、一般的には CGI (SSI を含み)プログラムを WWW 越しに
13139(F) C<(?'...')>たは C<< (?<...>) >> の形式の名前付きグループで、名前の後の
13140最後の閉じクォートまたは山かっこがありません。
13141S<<-- HERE> で正規表現のどこに問題が発見されたかを示しています。
13142
13143=item Sequence (?(%c... not terminated in regex; marked by S<<-- HERE>
13144in m/%s/
13145
13146=begin original
13147
13148(F) A named reference of the form C<(?('...')...)> or C<< (?(<...>)...) >> was
13149missing the final closing quote or angle bracket after the name. The
13150S<<-- HERE> shows whereabouts in the regular expression the problem was
13151discovered.
13152
13153=end original
13154
13155(F) C<(?('...')...)> または C<< (?(<...>)...) >> の形式の名前付き
13156リファレンスで、名前の後の最後の閉じクォートまたは山かっこがありません。
13157S<<-- HERE> で正規表現のどこに問題が発見されたかを示しています。
13158
13159=item Sequence (?... not terminated in regex; marked by S<<-- HERE> in
13160m/%s/
13161
13162=begin original
13163
13164(F) There was no matching closing parenthesis for the '('. The
13165S<<-- HERE> shows whereabouts in the regular expression the problem was
13166discovered.
13167
13168=end original
13169
13170(F) '(' に対応する閉じかっこがありません。
13171S<<-- HERE> で正規表現のどこに問題が発見されたかを示しています。
13172
13173=item Sequence \%s... not terminated in regex; marked by S<<-- HERE> in
13174m/%s/
13175
13176=begin original
13177
13178(F) The regular expression expects a mandatory argument following the escape
13179sequence and this has been omitted or incorrectly written.
13180
13181=end original
13182
13183(F) 正規表現でエスケープシーケンスの後に必須の引き数を想定しましたが、
13184それが省略されているか適切に書かれていません。
13185
13186=item Sequence (?{...}) not terminated with ')'
13187
13188=begin original
13189
13190(F) The end of the perl code contained within the {...} must be
13191followed immediately by a ')'.
13192
13193=end original
13194
13195(F) {} の中に含まれている perl コードの末尾は直後に ')' が
13196引き続かなければなりません。
13197
13198=item Sequence (?PE<gt>... not terminated in regex; marked by S<<-- HERE> in m/%s/
13199
13200=begin original
13201
13202(F) A named reference of the form C<(?PE<gt>...)> was missing the final
13203closing parenthesis after the name. The S<<-- HERE> shows whereabouts
13204in the regular expression the problem was discovered.
13205
13206=end original
13207
13208(F) C<(?PE<gt>...)> 形式の名前付き参照で、名前の後の最後の閉じかっこが
13209ありません。
13210S<<-- HERE> で正規表現のどこに問題が発見されたかを示しています。
13211
13212=item Sequence (?PE<lt>... not terminated in regex; marked by S<<-- HERE> in m/%s/
13213
13214=begin original
13215
13216(F) A named group of the form C<(?PE<lt>...E<gt>')> was missing the final
13217closing angle bracket. The S<<-- HERE> shows whereabouts in the
13218regular expression the problem was discovered.
13219
13220=end original
13221
13222(F) C<(?PE<lt>...E<gt>')> 形式の名前付きグループで、
13223最後の閉じ山かっこがありません。
13224S<<-- HERE> で正規表現のどこに問題が発見されたかを示しています。
13225
13226=item Sequence ?P=... not terminated in regex; marked by S<<-- HERE> in
13227m/%s/
13228
13229=begin original
13230
13231(F) A named reference of the form C<(?P=...)> was missing the final
13232closing parenthesis after the name. The S<<-- HERE> shows whereabouts
13233in the regular expression the problem was discovered.
13234
13235=end original
13236
13237(F) C<(?P=...)> の形式の名前付きリファレンスで、名前の後の最後の
13238閉じかっこがありません。
13239S<<-- HERE> で正規表現のどこに問題が発見されたかを示しています。
13240
13241=item Sequence (?R) not terminated in regex m/%s/
13242
13243=begin original
13244
13245(F) An C<(?R)> or C<(?0)> sequence in a regular expression was missing the
13246final parenthesis.
13247
13248=end original
13249
13250(F) 正規表現中の C<(?R)> または C<(?0)> で最後のかっこがありません。
13251
13252=item Z<>500 Server error
13253
13254=begin original
13255
13256(A) This is the error message generally seen in a browser window
13257when trying to run a CGI program (including SSI) over the web. The
13258actual error text varies widely from server to server. The most
13259frequently-seen variants are "500 Server error", "Method (something)
13260not permitted", "Document contains no data", "Premature end of script
13261headers", and "Did not produce a valid header".
13262
13263=end original
13264
13265(A) これは、一般的には CGI (SSI を含みます)プログラムを WWW 越しに
705813266実行しようとしたときにブラウザのウィンドウに表示されるメッセージです。
705913267実際のエラーテキストはサーバーによって大きく異なります。
706013268もっともよく見られるものとしては、"500 Server error",
706113269"Method (something) not permitted", "Document contains no data",
706213270"Premature end of script headers", "Did not produce a valid header" が
706313271あります。
706413272
706513273=begin original
706613274
706713275B<This is a CGI error, not a Perl error>.
706813276
706913277=end original
707013278
707113279B<これは CGI のエラーであり、Perl のエラーではありません>.
707213280
707313281=begin original
707413282
7075You need to make sure your script is executable, is accessible by the
13283You need to make sure your script is executable, is accessible by
7076user CGI is running the script under (which is probably not the user
13284the user CGI is running the script under (which is probably not the
7077account you tested it under), does not rely on any environment variables
13285user account you tested it under), does not rely on any environment
7078(like PATH) from the user it isn't running under, and isn't in a
13286variables (like PATH) from the user it isn't running under, and isn't
7079location where the CGI server can't find it, basically, more or less.
13287in a location where the CGI server can't find it, basically, more or
7080Please see the following for more information:
13288less. Please see the following for more information:
708113289
708213290=end original
708313291
708413292まずはあなたのスクリプトが実行可能か、CGI を実行するユーザー(これはおそらく
708513293あなたがテストしたユーザーではありません)で読み込み可能か、実行しているのとは
708613294異なるユーザーの環境変数(PATH など)に依存していないか、CGI サーバーが
708713295見つけられない場所に置いていないか、といったことを確認する必要があるでしょう。
708813296さらなる情報については以下を参照してください。
708913297
7090 http://www.perl.com/CPAN/doc/FAQs/cgi/idiots-guide.html
13298 http://www.perl.org/CGI_MetaFAQ.html
7091 http://www.perl.com/CPAN/doc/FAQs/cgi/perl-cgi-faq.html
13299 http://www.htmlhelp.org/faq/cgifaq.html
7092 ftp://rtfm.mit.edu/pub/usenet/news.answers/www/cgi-faq
13300 http://www.w3.org/Security/Faq/
7093 http://hoohoo.ncsa.uiuc.edu/cgi/interface.html
7094 http://www-genome.wi.mit.edu/WWW/faqs/www-security-faq.html
709513301
709613302=begin original
709713303
709813304You should also look at L<perlfaq9>.
709913305
710013306=end original
710113307
710213308L<perlfaq9> も見るべきでしょう。
710313309
710413310=item setegid() not implemented
710513311
710613312=begin original
710713313
710813314(F) You tried to assign to C<$)>, and your operating system doesn't
710913315support the setegid() system call (or equivalent), or at least Configure
711013316didn't think so.
711113317
711213318=end original
711313319
711413320(F) C<$)> へ代入を行なおうとしましたが、この OS では、setegid()
7115システムコール (または、同等のもの) がサポートされていません
13321システムコール (または、同等のもの) がサポートされていません;
711613322少なくとも Configure では、そう判断されました。
711713323
711813324=item seteuid() not implemented
711913325
712013326=begin original
712113327
712213328(F) You tried to assign to C<< $> >>, and your operating system doesn't
712313329support the seteuid() system call (or equivalent), or at least Configure
712413330didn't think so.
712513331
712613332=end original
712713333
712813334(F) C<< $> >> へ代入を行なおうとしましたが、この OS では、seteuid()
7129システムコール (または、同等のもの) がサポートされていません
13335システムコール (または、同等のもの) がサポートされていません;
713013336少なくとも Configure では、そう判断されました。
713113337
713213338=item setpgrp can't take arguments
713313339
713413340=begin original
713513341
713613342(F) Your system has the setpgrp() from BSD 4.2, which takes no
713713343arguments, unlike POSIX setpgid(), which takes a process ID and process
713813344group ID.
713913345
714013346=end original
714113347
7142(F) このシステムの setpgrp() は BSD 4.2 由来のもので、引数がありません
13348(F) このシステムの setpgrp() は BSD 4.2 由来のもので、引数がありません;
714313349POSIX setpgid() はプロセス ID とプロセスグループ ID を引数にとります。
714413350
714513351=item setrgid() not implemented
714613352
714713353=begin original
714813354
714913355(F) You tried to assign to C<$(>, and your operating system doesn't
715013356support the setrgid() system call (or equivalent), or at least Configure
715113357didn't think so.
715213358
715313359=end original
715413360
715513361(F) C<$(> へ代入を行なおうとしましたが、この OS では、setrgid()
7156システムコール (または、同等のもの) がサポートされていません
13362システムコール (または、同等のもの) がサポートされていません;
715713363少なくとも Configure では、そう判断されました。
715813364
715913365=item setruid() not implemented
716013366
716113367=begin original
716213368
716313369(F) You tried to assign to C<$<>, and your operating system doesn't
716413370support the setruid() system call (or equivalent), or at least Configure
716513371didn't think so.
716613372
716713373=end original
716813374
716913375(F) C<$<> へ代入を行なおうとしましたが、この OS では、setruid()
7170システムコール (または、同等のもの) がサポートされていません
13376システムコール (または、同等のもの) がサポートされていません;
717113377少なくとも Configure では、そう判断されました。
717213378
717313379=item setsockopt() on closed socket %s
717413380
717513381=begin original
717613382
717713383(W closed) You tried to set a socket option on a closed socket. Did you
717813384forget to check the return value of your socket() call? See
717913385L<perlfunc/setsockopt>.
718013386
718113387=end original
718213388
718313389(W closed) 閉じているソケットにソケットオプションを設定しようとしました。
7184socket() 呼び出し値のチェックを忘れていませんか?
13390socket() 呼び出し時に、値のチェックを忘れたのではありませんか?
718513391L<perlfunc/setsockopt> を参照してください。
718613392
7187=item Setuid/gid script is writable by world
13393=item Setting $/ to a reference to %s is forbidden
718813394
718913395=begin original
719013396
7191(F) The setuid emulator won't run a script that is writable by the
13397(F) You assigned a reference to a scalar to C<$/> where the referenced item is
7192world, because the world might have written on it already.
13398not a positive integer. In older perls this B<appeared> to work the same as
13399setting it to C<undef> but was in fact internally different, less efficient
13400and with very bad luck could have resulted in your file being split by a
13401stringified form of the reference.
719313402
719413403=end original
719513404
7196(F) setuid エミュータは、誰も書き込みがきるようにって
13405(F) リファンス先のアイテム正の整数でないときに、
7197クリプトは実行しません
13406C<$/> にカラへの整数を代入しました
7198誰かが既書き換えたかも知れないからです。
13407以前の perl ではこれは C<undef> を設定するのと同じよう B<見まし> が、
13408内部的には異なっていて、より非効率で、とても運が悪い場合はファイルが
13409このリファレンスの文字列化形式で split されることになっていました。
719913410
13411=begin original
13412
13413In Perl 5.20.0 this was changed so that it would be B<exactly> the same as
13414setting C<$/> to undef, with the exception that this warning would be thrown.
13415
13416=end original
13417
13418Perl 5.20.0 でこれは変更され、これはこの警告が投げられることを除いては
13419C<$/> に undef を設定するのと B<正確に> 同じになりました。
13420
13421=begin original
13422
13423You are recommended to change your code to set C<$/> to C<undef> explicitly if
13424you wish to slurp the file. As of Perl 5.28 assigning C<$/> to a reference
13425to an integer which isn't positive is a fatal error.
13426
13427=end original
13428
13429ファイル全体を読み込みたい場合は、明示的に C<$/> に C<undef> を
13430設定するようにコードを変更することを勧めます。
13431Perl 5.28 から、C<$/> への正でない整数へのリファレンスの代入は
13432致命的エラーです。
13433
13434=item Setting $/ to %s reference is forbidden
13435
13436=begin original
13437
13438(F) You tried to assign a reference to a non integer to C<$/>. In older
13439Perls this would have behaved similarly to setting it to a reference to
13440a positive integer, where the integer was the address of the reference.
13441As of Perl 5.20.0 this is a fatal error, to allow future versions of Perl
13442to use non-integer refs for more interesting purposes.
13443
13444=end original
13445
13446(F) 非整数へのリファレンスを C<$/> に代入しようとしました。
13447以前の Perl ではこれは正の整数(リファレンスのアドレス)へのリファレンスを
13448設定するのと似たように振る舞っていました。
13449将来のバージョンの Perl で非整数リファレンスをより興味深い目的に使えるように
13450Perl 5.20.0 から、これは致命的エラーになりました。
13451
720013452=item shm%s not implemented
720113453
720213454=begin original
720313455
720413456(F) You don't have System V shared memory IPC on your system.
720513457
720613458=end original
720713459
720813460(F) このシステムでは、System V 共有メモリ IPC は使えません。
720913461
7210=item <> should be quotes
13462=item !=~ should be !~
721113463
721213464=begin original
721313465
7214(F) You wrote C<< require <file> >> when you should have written
13466(W syntax) The non-matching operator is !~, not !=~. !=~ will be
7215C<require 'file'>.
13467interpreted as the != (numeric not equal) and ~ (1's complement)
13468operators: probably not what you intended.
721613469
721713470=end original
721813471
7219(F) C<require 'file'> と書くべきところC<< require <file> >> と
13472(W syntax) 非マッチ演算子は !=~はなく !~ です。
7220書いています
13473!=~ は != (数値の不一致) と ~ (1 の補数) 演算子と解釈されます:
13474おそらくあなたの意図していることではないでしょう。
722113475
722213476=item /%s/ should probably be written as "%s"
722313477
722413478=begin original
722513479
722613480(W syntax) You have used a pattern where Perl expected to find a string,
722713481as in the first argument to C<join>. Perl will treat the true or false
722813482result of matching the pattern against $_ as the string, which is
722913483probably not what you had in mind.
723013484
723113485=end original
723213486
723313487(W syntax) C<join> の最初の引数として、Perl が文字列を想定しているところに
723413488パターンを使いました。
723513489Perl は $_ をパターンマッチングした結果の真か偽の値を文字列として
723613490扱いますが、これはおそらく望んでいることではないでしょう。
723713491
723813492=item shutdown() on closed socket %s
723913493
724013494=begin original
724113495
724213496(W closed) You tried to do a shutdown on a closed socket. Seems a bit
724313497superfluous.
724413498
724513499=end original
724613500
724713501(W closed) クローズされたソケットに shutdown を行なおうとしました。
724813502多少、無駄のように思われます。
724913503
725013504=item SIG%s handler "%s" not defined
725113505
725213506=begin original
725313507
725413508(W signal) The signal handler named in %SIG doesn't, in fact, exist.
725513509Perhaps you put it into the wrong package?
725613510
725713511=end original
725813512
725913513(W signal) %SIG 内で指定したシグナルハンドラが、存在しません。
726013514間違ったパッケージで、設定を行なっているのかもしれません。
726113515
13516=item Slab leaked from cv %p
13517
13518=begin original
13519
13520(S) If you see this message, then something is seriously wrong with the
13521internal bookkeeping of op trees. An op tree needed to be freed after
13522a compilation error, but could not be found, so it was leaked instead.
13523
13524=end original
13525
13526(S) このメッセージが出た場合、構文木の内部管理で何かひどく
13527悪いことになっています。
13528ある構文木がコンパイルエラーの後で解放される必要がありますが、
13529見つからないので、リークしています。
13530
13531=item sleep(%u) too large
13532
13533=begin original
13534
13535(W overflow) You called C<sleep> with a number that was larger than
13536it can reliably handle and C<sleep> probably slept for less time than
13537requested.
13538
13539=end original
13540
13541(W overflow) 確実に扱えるよりも大きな値で C<sleep> を呼び出したので、
13542C<sleep> はおそらく指定されたより短い時間だけスリープします。
13543
13544=item Slurpy parameter not last
13545
13546=begin original
13547
13548(F) In a subroutine signature, you put something after a slurpy (array or
13549hash) parameter. The slurpy parameter takes all the available arguments,
13550so there can't be any left to fill later parameters.
13551
13552=end original
13553
13554(F) サブルーチンシグネチャの中で、吸い込み(配列またはハッシュ)パラメータの後に
13555何かを起きました。
13556吸い込みパラメータは利用可能な全ての引数を取るので、その後のパラメータに
13557対応するものを残しません。
13558
13559=item Smart matching a non-overloaded object breaks encapsulation
13560
13561=begin original
13562
13563(F) You should not use the C<~~> operator on an object that does not
13564overload it: Perl refuses to use the object's underlying structure
13565for the smart match.
13566
13567=end original
13568
13569(F) オーバーロードしていないオブジェクトに対して C<~~> 演算子を
13570使うべきではありません: Perl はスマートマッチング時にオブジェクトの
13571基礎となる構造を使うことを拒否します。
13572
13573=item Smartmatch is experimental
13574
13575=begin original
13576
13577(S experimental::smartmatch) This warning is emitted if you
13578use the smartmatch (C<~~>) operator. This is currently an experimental
13579feature, and its details are subject to change in future releases of
13580Perl. Particularly, its current behavior is noticed for being
13581unnecessarily complex and unintuitive, and is very likely to be
13582overhauled.
13583
13584=end original
13585
13586(S experimental::smartmatch) この警告は、スマートマッチング (C<~~>) 演算子を
13587使ったときに出力されます。
13588これは現在のところ実験的な機能で、Perl の将来のリリースでは変更される
13589可能性があります。
13590特に、現在の実装は不必要に複雑かつ直感的でないとされており、ほぼ確実に
13591見直されます。
13592
13593=item Sorry, hash keys must be smaller than 2**31 bytes
13594
13595=begin original
13596
13597(F) You tried to create a hash containing a very large key, where "very
13598large" means that it needs at least 2 gigabytes to store. Unfortunately,
13599Perl doesn't yet handle such large hash keys. You should
13600reconsider your design to avoid hashing such a long string directly.
13601
13602=end original
13603
13604(F) とても大きなキーを含むハッシュを作ろうとしました;
13605ここで「とても大きな」とは、保管に最低 2 ギガバイト必要なものです。
13606残念ながら、Perl はまだそのような大きなハッシュキーを扱えません。
13607そのような長い文字列で直接ハッシュを作るのを避けるように、
13608設計を再考する必要があります。
13609
726213610=item sort is now a reserved word
726313611
726413612=begin original
726513613
726613614(F) An ancient error message that almost nobody ever runs into anymore.
726713615But before sort was a keyword, people sometimes used it as a filehandle.
726813616
726913617=end original
727013618
727113619(F) もはや、誰もお目にかかることのない、旧世代のエラーメッセージです。
727213620ただ、sort がキーワードとなる前には、これをファイルハンドルとして
727313621使う方がいました。
727413622
7275=item Sort subroutine didn't return a numeric value
13623=item Source filters apply only to byte streams
727613624
727713625=begin original
727813626
7279(F) A sort comparison routine must return a number. You probably blew
13627(F) You tried to activate a source filter (usually by loading a
7280it by not using C<< <=> >> or C<cmp>, or by not using them correctly.
13628source filter module) within a string passed to C<eval>. This is
7281See L<perlfunc/sort>.
13629not permitted under the C<unicode_eval> feature. Consider using
13630C<evalbytes> instead. See L<feature>.
728213631
728313632=end original
728413633
7285(F) sort比較ルンは、必ず数値返さなければなりません。
13634(F) C<eval> に渡された文字列中で(通常はソスフルタモジュール
7286C<< <=> >> や C<cmp> 使わなかったか、正く使わなかったもの思い
13635読み込むことで)ソースフィルタ有効にようした
7287L<perlfunc/sort> を参照してください。
13636これは C<unicode_eval> 機能が有効の場合は許れてません
13637代わりに C<evalbytes> を使うことを検討してください。
13638L<feature> を参照してください。
728813639
7289=item Sort subroutine didn't return single value
13640=item splice() offset past end of array
729013641
729113642=begin original
729213643
7293(F) A sort comparison subroutine may not return a list value with more
13644(W misc) You attempted to specify an offset that was past the end of
7294or less than one element. See L<perlfunc/sort>.
13645the array passed to splice(). Splicing will instead commence at the
13646end of the array, rather than past it. If this isn't what you want,
13647try explicitly pre-extending the array by assigning $#array = $offset.
13648See L<perlfunc/splice>.
729513649
729613650=end original
729713651
7298(F) sort比較サブルーティンは、要素が 1 個以外リス
13652(W misc) splice() で渡された配列末尾より後ろオフセットを指定しました。
7299返すことはでせん
13653splice 配列の末尾はなく、配列の最後の位置に対して実行され
7300L<perlfunc/sort>を参照してください。
13654これが望んでいることではないなら、$#array = $offset と代入することで
13655明示的に事前に配列を拡張してください。
13656L<perlfunc/splice> を参照してください。
730113657
730213658=item Split loop
730313659
730413660=begin original
730513661
730613662(P) The split was looping infinitely. (Obviously, a split shouldn't
730713663iterate more times than there are characters of input, which is what
7308happened.) See L<perlfunc/split>.
13664happened.) See L<perlfunc/split>.
730913665
731013666=end original
731113667
731213668(P) split が無限ループに陥りました。
731313669(明らかに、split は、入力文字数以上にはできないはずですが、
731413670そうなってしまいました。) 
731513671L<perlfunc/split> を参照してください。
731613672
731713673=item Statement unlikely to be reached
731813674
731913675=begin original
732013676
732113677(W exec) You did an exec() with some statement after it other than a
732213678die(). This is almost always an error, because exec() never returns
732313679unless there was a failure. You probably wanted to use system()
732413680instead, which does return. To suppress this warning, put the exec() in
732513681a block by itself.
732613682
732713683=end original
732813684
732913685(W exec) exec() の後に、die() 以外の実行文があります。
733013686失敗したとき以外は、exec() から戻ってくることはありませんから、
733113687ほとんどの場合には誤りでしょう。
733213688戻ってくるsystem() に置き換える必要があるかもしれません。
733313689この警告を止めるには、ブロック内に exec() だけを記述してください。
733413690
13691=item "state" subroutine %s can't be in a package
13692
13693=begin original
13694
13695(F) Lexically scoped subroutines aren't in a package, so it doesn't make
13696sense to try to declare one with a package qualifier on the front.
13697
13698=end original
13699
13700(F) レキシカルスコープサブルーチンはパッケージ内にないので、
13701頭にパッケージ名を付けて宣言することは、無意味です。
13702
13703=item "state %s" used in sort comparison
13704
13705=begin original
13706
13707(W syntax) The package variables $a and $b are used for sort comparisons.
13708You used $a or $b in as an operand to the C<< <=> >> or C<cmp> operator inside a
13709sort comparison block, and the variable had earlier been declared as a
13710lexical variable. Either qualify the sort variable with the package
13711name, or rename the lexical variable.
13712
13713=end original
13714
13715(W syntax) パッケージ変数 $a と $b はソート比較のために使われます。
13716$a または $b をソート比較ブロックの中の C<< <=> >> または C<cmp> 演算子の
13717オペランドとして使いましたが、この変数はその前にレキシカル変数として
13718宣言されています。
13719ソート変数をパッケージ名で修飾するか、レキシカル変数の名前を変えてください。
13720
13721=item "state" variable %s can't be in a package
13722
13723=begin original
13724
13725(F) Lexically scoped variables aren't in a package, so it doesn't make
13726sense to try to declare one with a package qualifier on the front. Use
13727local() if you want to localize a package variable.
13728
13729=end original
13730
13731(F) レキシカルスコープサブルーチンはパッケージ内にないので、
13732頭にパッケージ名を付けて宣言することは、無意味です。
13733パッケージ変数をローカル化したい場合には、local() を使ってください。
13734
733513735=item stat() on unopened filehandle %s
733613736
733713737=begin original
733813738
733913739(W unopened) You tried to use the stat() function on a filehandle that
734013740was either never opened or has since been closed.
734113741
734213742=end original
734313743
734413744(W unopened) オープンされていないファイルハンドルか、既にクローズされた
734513745ファイルハンドルに対して、stat() 関数を使おうとしました。
734613746
7347=item Stub found while resolving method `%s' overloading %s
13747=item Strings with code points over 0xFF may not be mapped into in-memory file handles
734813748
734913749=begin original
735013750
13751(W utf8) You tried to open a reference to a scalar for read or append
13752where the scalar contained code points over 0xFF. In-memory files
13753model on-disk files and can only contain bytes.
13754
13755=end original
13756
13757(W utf8) 0xFF を超える符号位置を含むスカラに対して、読み込みや追加で
13758スカラへのリファレンスを開こうとしました。
13759インメモリファイルはディスクのファイルをモデル化していて、バイトのみが
13760使えます。
13761
13762=item Stub found while resolving method "%s" overloading "%s" in package "%s"
13763
13764=begin original
13765
735113766(P) Overloading resolution over @ISA tree may be broken by importation
735213767stubs. Stubs should never be implicitly created, but explicit calls to
735313768C<can> may break this.
735413769
735513770=end original
735613771
735713772(P) @ISA ツリーでのオーバーロードの解決がインポートのスタブで壊されました。
735813773スタブは暗黙に作られることはありませんが、明示的に C<can> を呼び出すと
735913774これを破壊することがあります。
736013775
13776=item Subroutine attributes must come before the signature
13777
13778=begin original
13779
13780(F) When subroutine signatures are enabled, any subroutine attributes must
13781come before the signature. Note that this order was the opposite in
13782versions 5.22..5.26. So:
13783
13784=end original
13785
13786(F) サブルーチンシグネチャが有効の場合、サブルーチン属性は
13787シグネチャの前に来なければなりません。
13788この順序はバージョン 5.22 .. 5.26 と反対であることに注意してください。
13789従って:
13790
13791 sub foo :lvalue ($a, $b) { ... } # 5.20 and 5.28 +
13792 sub foo ($a, $b) :lvalue { ... } # 5.22 .. 5.26
13793
13794=item Subroutine "&%s" is not available
13795
13796=begin original
13797
13798(W closure) During compilation, an inner named subroutine or eval is
13799attempting to capture an outer lexical subroutine that is not currently
13800available. This can happen for one of two reasons. First, the lexical
13801subroutine may be declared in an outer anonymous subroutine that has
13802not yet been created. (Remember that named subs are created at compile
13803time, while anonymous subs are created at run-time.) For example,
13804
13805=end original
13806
13807(W closure) コンパイル時に、内部の名前付きサブルーチンや eval が、現在
13808利用できない外側のレキシカルサブルーチンを捕捉しようとしました。
13809これは二つの理由で起こります。
13810まず、レキシカルサブルーチンが、まだ作成されていない外側の無名サブルーチンで
13811宣言されたときです。
13812(名前付きサブルーチンはコンパイル時に作成されますが、無名サブルーチンは
13813実行時に作成されることを思い出してください。)
13814例えば、
13815
13816 sub { my sub a {...} sub f { \&a } }
13817
13818=begin original
13819
13820At the time that f is created, it can't capture the current "a" sub,
13821since the anonymous subroutine hasn't been created yet. Conversely, the
13822following won't give a warning since the anonymous subroutine has by now
13823been created and is live:
13824
13825=end original
13826
13827f が作成された時点で、現在の "a" サブルーチンは捕捉できません; なぜなら
13828無名サブルーチンはまだ作成されていないからです。
13829逆に、以下のものは警告されません; 無名サブルーチンはこの時点で作成されていて
13830生きているからです:
13831
13832 sub { my sub a {...} eval 'sub f { \&a }' }->();
13833
13834=begin original
13835
13836The second situation is caused by an eval accessing a lexical subroutine
13837that has gone out of scope, for example,
13838
13839=end original
13840
138412 番目の状況は eval がスコープ外となったレキシカルサブルーチンに
13842アクセスすることで起こります; 例えば:
13843
13844 sub f {
13845 my sub a {...}
13846 sub { eval '\&a' }
13847 }
13848 f()->();
13849
13850=begin original
13851
13852Here, when the '\&a' in the eval is being compiled, f() is not currently
13853being executed, so its &a is not available for capture.
13854
13855=end original
13856
13857ここで、eval の中の '\&a' がコンパイルされるとき、f() はこの時点では
13858実行されていないので、&a は捕捉として利用できません。
13859
13860=item "%s" subroutine &%s masks earlier declaration in same %s
13861
13862=begin original
13863
13864(W shadow) A "my" or "state" subroutine has been redeclared in the
13865current scope or statement, effectively eliminating all access to
13866the previous instance. This is almost always a typographical error.
13867Note that the earlier subroutine will still exist until the end of
13868the scope or until all closure references to it are destroyed.
13869
13870=end original
13871
13872(W shadow) "my" または "state" サブルーチンは現在のスコープまたは文で
13873再定義されたため、事実上以前の実体への全てのアクセスが取り除かれます。
13874これはほとんど常にタイプミスです。
13875最初のサブルーチンはスコープの末尾に到達するか、これを参照している
13876全てのクロージャが破壊されるまで存在したままであることに注意してください。
13877
736113878=item Subroutine %s redefined
736213879
736313880=begin original
736413881
736513882(W redefine) You redefined a subroutine. To suppress this warning, say
736613883
736713884=end original
736813885
7369(W redefine) サブルーティンを再定義しました。
13886(W redefine) サブルーンを再定義しました。
7370この警告を止めるには以下のようにしてください:
13887この警告を止めるには以下のようにしてください:
737113888
737213889 {
7373 no warnings;
13890 no warnings 'redefine';
737413891 eval "sub name { ... }";
737513892 }
737613893
13894=item Subroutine "%s" will not stay shared
13895
13896=begin original
13897
13898(W closure) An inner (nested) I<named> subroutine is referencing a "my"
13899subroutine defined in an outer named subroutine.
13900
13901=end original
13902
13903(W closure) 内側の (ネストした) I<名前付き> サブルーチンが、
13904外側の名前付きサブルーチンで定義された "my" サブルーチンを参照しています。
13905
13906=begin original
13907
13908When the inner subroutine is called, it will see the value of the outer
13909subroutine's lexical subroutine as it was before and during the *first*
13910call to the outer subroutine; in this case, after the first call to the
13911outer subroutine is complete, the inner and outer subroutines will no
13912longer share a common value for the lexical subroutine. In other words,
13913it will no longer be shared. This will especially make a difference
13914if the lexical subroutines accesses lexical variables declared in its
13915surrounding scope.
13916
13917=end original
13918
13919内側のサブルーチンが呼び出されるとき、
13920外側のサブルーチンのレキシカルサブルーチンの値は、
13921外側のサブルーチンの「最初の」呼び出し前と呼び出し中のものになります;
13922この場合、外側のサブルーチンへの最初の呼び出しが終了した後、
13923内側と外側のサブルーチンはもはやレキシカルサブルーチンについて
13924共通の値を共有しません。
13925言い換えると、これはもはや共有されません。
13926これは特に、レキシカルサブルーチンがその周りのスコープで宣言された
13927レキシカル変数にアクセスしたときに違いがあります。
13928
13929=begin original
13930
13931This problem can usually be solved by making the inner subroutine
13932anonymous, using the C<sub {}> syntax. When inner anonymous subs that
13933reference lexical subroutines in outer subroutines are created, they
13934are automatically rebound to the current values of such lexical subs.
13935
13936=end original
13937
13938この問題は普通、C<sub {}> 構文を使って内側のサブルーチンを無名にすることで
13939解決します。
13940外側のサブルーチンのレキシカルサブルーチンを参照する内側の
13941無名サブルーチンが作成されたとき、そのレキシカルサブルーチンの現在の値に
13942自動的に回復します。
13943
737713944=item Substitution loop
737813945
737913946=begin original
738013947
738113948(P) The substitution was looping infinitely. (Obviously, a substitution
738213949shouldn't iterate more times than there are characters of input, which
738313950is what happened.) See the discussion of substitution in
7384L<perlop/"Quote and Quote-like Operators">.
13951L<perlop/"Regexp Quote-Like Operators">.
738513952
738613953=end original
738713954
738813955(P) 置換が無限ループに陥りました。
738913956(明らかに、置換は入力文字数以上には起こらないはずですが、
739013957それが起こってしまいました。)
7391L<perlop/"Quote and Quote-like Operators"> を参照してください。
13958L<perlop/"Quote and Quote-Like Operators"> を参照してください。
739213959
739313960=item Substitution pattern not terminated
739413961
739513962=begin original
739613963
7397(F) The lexer couldn't find the interior delimiter of a s/// or s{}{}
13964(F) The lexer couldn't find the interior delimiter of an s/// or s{}{}
739813965construct. Remember that bracketing delimiters count nesting level.
739913966Missing the leading C<$> from variable C<$s> may cause this error.
740013967
740113968=end original
740213969
740313970(F) s/// もしくは s{}{} 構文の真ん中の区切り文字が見つかりませんでした。
7404括弧類の区切り文字では、ネストを数えることを忘れないでください。
13971かっこ類の区切り文字では、ネストを数えることを忘れないでください。
740513972C<$s> 変数の前に C<$> をつけるのを忘れるとこのエラーが出ることがあります。
740613973
740713974=item Substitution replacement not terminated
740813975
740913976=begin original
741013977
7411(F) The lexer couldn't find the final delimiter of a s/// or s{}{}
13978(F) The lexer couldn't find the final delimiter of an s/// or s{}{}
741213979construct. Remember that bracketing delimiters count nesting level.
741313980Missing the leading C<$> from variable C<$s> may cause this error.
741413981
741513982=end original
741613983
741713984(F) s/// もしくは s{}{} 構文の最後の区切り文字が見つかりませんでした。
7418括弧類の区切り文字では、ネストを数えることを忘れないでください。
13985かっこ類の区切り文字では、ネストを数えることを忘れないでください。
741913986C<$s> 変数の前に C<$> をつけるのを忘れるとこのエラーが出ることがあります。
742013987
742113988=item substr outside of string
742213989
742313990=begin original
742413991
7425(W substr),(F) You tried to reference a substr() that pointed outside of
13992(W substr)(F) You tried to reference a substr() that pointed outside of
742613993a string. That is, the absolute value of the offset was larger than the
742713994length of the string. See L<perlfunc/substr>. This warning is fatal if
742813995substr is used in an lvalue context (as the left hand side of an
742913996assignment or as a subroutine argument for example).
743013997
743113998=end original
743213999
7433(W substr),(F) 文字列の外を指す substr() を参照しようとしました。
14000(W substr)(F) 文字列の外を指す substr() を参照しようとしました。
743414001つまり、オフセットの絶対値が、文字列の長さより大きくなっています。
743514002L<perlfunc/substr> を参照してください。
743614003この警告は、substr が(代入の左側やサブルーチンの引数といった)
743714004左辺値として使われた場合は致命的となります。
743814005
7439=item suidperl is no longer needed since %s
14006=item sv_upgrade from type %d down to type %d
744014007
744114008=begin original
744214009
7443(F) Your Perl was compiled with B<-D>SETUID_SCRIPTS_ARE_SECURE_NOW, but
14010(P) Perl tried to force the upgrade of an SV to a type which was actually
7444a version of the setuid emulator somehow got run anyway.
14011inferior to its current type.
744514012
744614013=end original
744714014
7448(F) お使いの Perl は、-DSETUID_SCRIPTS_ARE_SECURE_NOW
14015(P) Perl は SV を、実際には現在の型より下位の型への昇格
7449指定てコンパイルされていすが、setuid エミュレータが、
14016強制ようとしした。
7450実行されてしまいました。
745114017
7452=item Switch (?(condition)... contains too many branches before << HE%s
14018=item SWASHNEW didn't return an HV ref
745314019
745414020=begin original
745514021
7456(F) A (?(condition)if-clause|else-clause) construct can have at most two
14022(P) Something went wrong internally when Perl was trying to look up
7457branches (the if-clause and the else-clause). If you want one or both to
14023Unicode characters.
7458contain alternation, such as using C<this|that|other>, enclose it in
7459clustering parentheses:
746014024
746114025=end original
746214026
7463(F) (?(condition)if-clause|else-clause) 構造は最大 2 つの分岐
14027(P) Perl が Unicode 文字を探そうとしたときに、内部何かがおかしくなりました。
14028
14029=item Switch (?(condition)... contains too many branches in regex; marked by
14030S<<-- HERE> in m/%s/
14031
14032=begin original
14033
14034(F) A (?(condition)if-clause|else-clause) construct can have at most
14035two branches (the if-clause and the else-clause). If you want one or
14036both to contain alternation, such as using C<this|that|other>, enclose
14037it in clustering parentheses:
14038
14039=end original
14040
14041(F) (?(condition)if-clause|else-clause) 構造は最大で二つの分岐
746414042(if-clause と else-clause) を持つことができます。
746514043片方、または両方に選択肢を含めたいときは、それをかっこで囲んでください:
746614044
746714045 (?(condition)(?:this|that|other)|else-clause)
746814046
746914047=begin original
747014048
7471The << HERE shows in the regular expression about where the problem was
14049The S<<-- HERE> shows whereabouts in the regular expression the problem
7472discovered. See L<perlre>.
14050was discovered. See L<perlre>.
747314051
747414052=end original
747514053
7476<< HERE で正規表現のどこに問題が発見されたかを示しています。
14054S<<-- HERE> で正規表現のどこに問題が発見されたかを示しています。
747714055L<perlre> を参照してください。
747814056
7479=item Switch condition not recognized before << HERE in regex m/%s/
14057=item Switch condition not recognized in regex; marked by S<<-- HERE> in
14058m/%s/
748014059
748114060=begin original
748214061
7483(F) If the argument to the (?(...)if-clause|else-clause) construct is a
14062(F) The condition part of a (?(condition)if-clause|else-clause) construct
7484number, it can be only a number. The << HERE shows in the regular expression
14063is not known. The condition must be one of the following:
7485about where the problem was discovered. See L<perlre>.
748614064
748714065=end original
748814066
7489(?(...)if-clause|else-clause) 構造の引数数値なら、数値だけが可能です。
14067(?(...)if-clause|else-clause) 構造の条件部不明です。
7490<< HERE で正規表現どこに問題が発見さを示してい
14068条件は以下いずれかでなければなりせん
14069
14070 (1) (2) ... true if 1st, 2nd, etc., capture matched
14071 (<NAME>) ('NAME') true if named capture matched
14072 (?=...) (?<=...) true if subpattern matches
14073 (?!...) (?<!...) true if subpattern fails to match
14074 (?{ CODE }) true if code returns a true value
14075 (R) true if evaluating inside recursion
14076 (R1) (R2) ... true if directly inside capture group 1, 2, etc.
14077 (R&NAME) true if directly inside named capture
14078 (DEFINE) always false; for defining named subpatterns
14079
14080=begin original
14081
14082The S<<-- HERE> shows whereabouts in the regular expression the problem was
14083discovered. See L<perlre>.
14084
14085=end original
14086
14087S<<-- HERE> で正規表現のどこに問題が発見されたかを示しています。
749114088L<perlre> を参照してください。
749214089
14090=item Switch (?(condition)... not terminated in regex; marked by
14091S<<-- HERE> in m/%s/
14092
14093=begin original
14094
14095(F) You omitted to close a (?(condition)...) block somewhere
14096in the pattern. Add a closing parenthesis in the appropriate
14097position. See L<perlre>.
14098
14099=end original
14100
14101(F) パターン中のどこかで (?(condition)...) ブロックを閉じるのを省略しました。
14102適切な位置に閉じかっこを追加してください。
14103L<perlre> を参照してください。
14104
749314105=item switching effective %s is not implemented
749414106
749514107=begin original
749614108
749714109(F) While under the C<use filetest> pragma, we cannot switch the real
749814110and effective uids or gids.
749914111
750014112=end original
750114113
750214114(F) C<use filetest> プラグマを使っている間に、
750314115実と実効の UID や GID の切り替えに失敗しました。
750414116
750514117=item syntax error
750614118
750714119=begin original
750814120
750914121(F) Probably means you had a syntax error. Common reasons include:
751014122
751114123=end original
751214124
751314125(F) おそらく、構文エラーが起こっています。
751414126よくある原因としては以下のことが考えられます:
751514127
751614128=begin original
751714129
751814130 A keyword is misspelled.
751914131 A semicolon is missing.
752014132 A comma is missing.
752114133 An opening or closing parenthesis is missing.
752214134 An opening or closing brace is missing.
752314135 A closing quote is missing.
752414136
752514137=end original
752614138
752714139 キーワードのスペルミス。
752814140 セミコロンを忘れた。
752914141 コンマを忘れた。
7530 開き括弧、閉じ括弧を忘れた。
14142 開きかっこ、閉じかっこを忘れた。
7531 開き中括弧、閉じ中括弧を忘れた。
14143 開き中かっこ、閉じ中かっこを忘れた。
753214144 クォートの閉じ忘れ。
753314145
753414146=begin original
753514147
753614148Often there will be another error message associated with the syntax
753714149error giving more information. (Sometimes it helps to turn on B<-w>.)
753814150The error message itself often tells you where it was in the line when
753914151it decided to give up. Sometimes the actual error is several tokens
754014152before this, because Perl is good at understanding random input.
754114153Occasionally the line number may be misleading, and once in a blue moon
754214154the only way to figure out what's triggering the error is to call
754314155C<perl -c> repeatedly, chopping away half the program each time to see
7544if the error went away. Sort of the cybernetic version of S<20
14156if the error went away. Sort of the cybernetic version of S<20 questions>.
7545questions>.
754614157
754714158=end original
754814159
754914160多くの場合、構文エラーと一緒に、別のエラーメッセージが出て、
755014161情報を与えてくれます。(-w を付けることが、助けになることもあります。)
755114162エラーメッセージ自身には、何行目まで行って、諦めたのかということも
755214163含まれています。
755314164Perl はでたらめな入力を理解するのが得意なので、実際のエラーはもう少し前に
755414165在ることもあります。
755514166ときには、行番号が全く役に立たないこともあり、はまってしまったなら、
755614167エラーのきっかけが何かを見つける唯一の手段は、プログラムを寸断して、
755714168エラーがなくなるまで、perl -c を繰り返すしかありません。
755814169S<頭の体操 20 問>だと思ってください。
755914170
7560=item syntax error at line %d: `%s' unexpected
14171=item syntax error at line %d: '%s' unexpected
756114172
756214173=begin original
756314174
756414175(A) You've accidentally run your script through the Bourne shell instead
756514176of Perl. Check the #! line, or manually feed your script into Perl
756614177yourself.
756714178
756814179=end original
756914180
757014181(A) スクリプトを perl ではなく Bourne shell で実行しようとしました。
757114182#! 行をチェックするか、スクリプトを直接 Perl で起動してください。
757214183
14184=item syntax error in file %s at line %d, next 2 tokens "%s"
14185
14186=begin original
14187
14188(F) This error is likely to occur if you run a perl5 script through
14189a perl4 interpreter, especially if the next 2 tokens are "use strict"
14190or "my $var" or "our $var".
14191
14192=end original
14193
14194(F) このエラーは、perl5 のスクリプトを perl4 インタプリタで実行したときに
14195おきそうなものです; 特に次の二つのトークンが "use strict" か
14196"my $var" か "our $var" の場合はそうです。
14197
14198=item Syntax error in (?[...]) in regex; marked by <-- HERE in m/%s/
14199
14200=begin original
14201
14202(F) Perl could not figure out what you meant inside this construct; this
14203notifies you that it is giving up trying.
14204
14205=end original
14206
14207(F) Perl はこの構文の中で何を意味しようとしているのかが分かりませんでした;
14208これは試すのを諦めたことを知らせます。
14209
757314210=item %s syntax OK
757414211
757514212=begin original
757614213
757714214(F) The final summary message when a C<perl -c> succeeds.
757814215
757914216=end original
758014217
758114218(F) C<perl -c> が成功したときの最終まとめメッセージです。
758214219
14220=item sysread() on closed filehandle %s
14221
14222=begin original
14223
14224(W closed) You tried to read from a closed filehandle.
14225
14226=end original
14227
14228(W closed) 閉じたファイルハンドルから読み込もうとしました。
14229
14230=item sysread() on unopened filehandle %s
14231
14232=begin original
14233
14234(W unopened) You tried to read from a filehandle that was never opened.
14235
14236=end original
14237
14238(W unopened) 開いていないファイルハンドルから読み込もうとしました。
14239
758314240=item System V %s is not implemented on this machine
758414241
758514242=begin original
758614243
758714244(F) You tried to do something with a function beginning with "sem",
758814245"shm", or "msg" but that System V IPC is not implemented in your
758914246machine. In some machines the functionality can exist but be
759014247unconfigured. Consult your system support.
759114248
759214249=end original
759314250
759414251(F) 何か、名前が "sem"、"shm"、"msg" で始まる関数を実行しようとしましたが、
759514252あなたのマシンには System V IPC が実装されていません。
759614253機能はあっても設定されていない場合もあります。
759714254システムサポートに相談してください。
759814255
759914256=item syswrite() on closed filehandle %s
760014257
760114258=begin original
760214259
760314260(W closed) The filehandle you're writing to got itself closed sometime
7604before now. Check your logic flow.
14261before now. Check your control flow.
760514262
760614263=end original
760714264
7608(W closed) 書き込みを行なおうとしたファイルハンドルは、
14265(W closed) 書き込みを行なおうとしたファイルハンドルは、既に閉じられています。
7609既にクローズされています
14266制御フローをチェックしください。
7610論理フローをチェックしてください。
761114267
14268=item C<-T> and C<-B> not implemented on filehandles
14269
14270=begin original
14271
14272(F) Perl can't peek at the stdio buffer of filehandles when it doesn't
14273know about your kind of stdio. You'll have to use a filename instead.
14274
14275=end original
14276
14277(F) Perl が、お使いの stdio のことをよく知らないとき、
14278ファイルハンドルの stdio バッファを覗くことはできません。
14279代わりにファイル名を使わなければなりません。
14280
761214281=item Target of goto is too deeply nested
761314282
761414283=begin original
761514284
761614285(F) You tried to use C<goto> to reach a label that was too deeply nested
761714286for Perl to reach. Perl is doing you a favor by refusing.
761814287
761914288=end original
762014289
762114290(F) C<goto> で、Perl が届かないほど深くネストしたラベルに移動しようとしました。
762214291Perl は親切にもこれを拒否します。
762314292
14293=item telldir() attempted on invalid dirhandle %s
14294
14295=begin original
14296
14297(W io) The dirhandle you tried to telldir() is either closed or not really
14298a dirhandle. Check your control flow.
14299
14300=end original
14301
14302(W io) telldir() しようとしたディレクトリハンドルは既に閉じられているか、
14303実際にはディレクトリハンドルではありません。
14304制御フローをチェックしてください。
14305
762414306=item tell() on unopened filehandle
762514307
762614308=begin original
762714309
762814310(W unopened) You tried to use the tell() function on a filehandle that
762914311was either never opened or has since been closed.
763014312
763114313=end original
763214314
763314315(W unopened) オープンされていないファイルハンドルか、既にクローズされた
763414316ファイルハンドルに対して、tell() 関数を使おうとしました。
763514317
763614318=item That use of $[ is unsupported
763714319
763814320=begin original
763914321
764014322(F) Assignment to C<$[> is now strictly circumscribed, and interpreted
764114323as a compiler directive. You may say only one of
764214324
764314325=end original
764414326
764514327(F) 現在、C<$[> への代入は、厳しく制限され、コンパイラ指示子と解釈されます。
764614328使えるのは以下の形だけです:
764714329
764814330 $[ = 0;
764914331 $[ = 1;
765014332 ...
765114333 local $[ = 0;
765214334 local $[ = 1;
765314335 ...
765414336
765514337=begin original
765614338
765714339This is to prevent the problem of one module changing the array base out
7658from under another module inadvertently. See L<perlvar/$[>.
14340from under another module inadvertently. See L<perlvar/$[> and L<arybase>.
765914341
766014342=end original
766114343
766214344これは、一つのモジュールで、他のモジュールが意図しないような、
766314345配列のベースを変更する問題を回避するためのものです。
7664L<perlvar/$[> を参照してください。
14346L<perlvar/$[> と L<arybase> を参照してください。
766514347
7666=item The crypt() function is unimplemented due to excessive paranoia
14348=item The alpha_assertions feature is experimental
766714349
766814350=begin original
766914351
14352(S experimental::alpha_assertions) This feature is experimental
14353and its behavior may change in any future release of perl. See
14354L<perlre/Extended Patterns>.
14355
14356=end original
14357
14358(S experimental::alpha_assertions) この機能は実験的で、
14359その振る舞いは perl の将来のリリースで変更されるかもしれません。
14360L<perlre/Extended Patterns> を参照してください。
14361
14362=item The crypt() function is unimplemented due to excessive paranoia.
14363
14364=begin original
14365
767014366(F) Configure couldn't find the crypt() function on your machine,
767114367probably because your vendor didn't supply it, probably because they
767214368think the U.S. Government thinks it's a secret, or at least that they
767314369will continue to pretend that it is. And if you quote me on that, I
767414370will deny it.
767514371
767614372=end original
767714373
7678(F) Configure は、マシン上で crypt() 関数を見つけられませんでした
14374(F) Configure は、マシン上で crypt() 関数を見つけられませんでした;
767914375おそらく、ベンダからの供給がなかったからで、おそらく、ベンダは
768014376アメリカ政府がそれを秘密だとしていると思っているか、
768114377少なくとも思っているというふりをしているのでしょう。
768214378私を引き合いに出したところで、それは否定されることでしょう。
768314379
14380=item The experimental declared_refs feature is not enabled
14381
14382=begin original
14383
14384(F) To declare references to variables, as in C<my \%x>, you must first enable
14385the feature:
14386
14387=end original
14388
14389(F) C<my \%x> のように、変数へのリファレンスを定義するには、
14390最初にこの機能を有効にしなければなりません:
14391
14392 no warnings "experimental::declared_refs";
14393 use feature "declared_refs";
14394
768414395=item The %s function is unimplemented
768514396
768614397=begin original
768714398
7688The function indicated isn't implemented on this architecture, according
14399(F) The function indicated isn't implemented on this architecture,
7689to the probings of Configure.
14400according to the probings of Configure.
769014401
769114402=end original
769214403
769314404(F) この関数は、Configure の調査によると、このアーキテクチャでは、
769414405実装されていないようです。
769514406
7696=item The stat preceding C<-l _> wasn't an lstat
14407=item The regex_sets feature is experimental
769714408
769814409=begin original
769914410
14411(S experimental::regex_sets) This warning is emitted if you
14412use the syntax S<C<(?[ ])>> in a regular expression.
14413The details of this feature are subject to change.
14414If you want to use it, but know that in doing so you
14415are taking the risk of using an experimental feature which may
14416change in a future Perl version, you can do this to silence the
14417warning:
14418
14419=end original
14420
14421(S experimental::regex_sets) この警告は、正規表現で S<C<(?[ ])>> 構文を
14422使うと出力されます。
14423この機能の詳細は変更されることがあります。
14424この機能を使いたいけれども、そうすることで将来の Perl バージョンで
14425変更されるかもしれない実験的機能を使うリスクを取ることを分かっている場合は、
14426以下のようにして警告を黙らせられます:
14427
14428 no warnings "experimental::regex_sets";
14429
14430=item The script_run feature is experimental
14431
14432=begin original
14433
14434(S experimental::script_run) This feature is experimental
14435and its behavior may in any future release of perl. See
14436L<perlre/Script Runs>.
14437
14438=end original
14439
14440(S experimental::script_run) この機能は実験的で、その振る舞いは
14441Perl の将来のリリースで変わるかもしれません。
14442L<perlre/Script Runs> を参照してください。
14443
14444=item The signatures feature is experimental
14445
14446=begin original
14447
14448(S experimental::signatures) This warning is emitted if you unwrap a
14449subroutine's arguments using a signature. Simply suppress the warning
14450if you want to use the feature, but know that in doing so you are taking
14451the risk of using an experimental feature which may change or be removed
14452in a future Perl version:
14453
14454=end original
14455
14456(S experimental::signatures) この警告は、シグネチャを使ったサブルーチンの
14457引数を展開するときに出力されます。
14458この機能を使いたいけれども、そうすることで将来の Perl バージョンで
14459変更されるかもしれない実験的機能を使うリスクを取ることを分かっている場合は、
14460単に警告を抑制してください:
14461
14462 no warnings "experimental::signatures";
14463 use feature "signatures";
14464 sub foo ($left, $right) { ... }
14465
14466=item The stat preceding %s wasn't an lstat
14467
14468=begin original
14469
770014470(F) It makes no sense to test the current stat buffer for symbolic
770114471linkhood if the last stat that wrote to the stat buffer already went
770214472past the symlink to get to the real file. Use an actual filename
770314473instead.
770414474
770514475=end original
770614476
770714477(F) 過去の stat がシンボリックリンクを通り過ぎた、実際のファイルの
770814478情報を取って、stat バッファに入れているときに、シンボリックタイプの
770914479stat をカレント stat バッファに対して行なっても意味がありません。
771014480実際のファイル名を使ってください。
771114481
14482=item The 'unique' attribute may only be applied to 'our' variables
14483
14484=begin original
14485
14486(F) This attribute was never supported on C<my> or C<sub> declarations.
14487
14488=end original
14489
14490(F) この属性は C<my> や C<sub> の宣言では対応していません。
14491
771214492=item This Perl can't reset CRTL environ elements (%s)
771314493
771414494=item This Perl can't set CRTL environ elements (%s=%s)
771514495
771614496=begin original
771714497
771814498(W internal) Warnings peculiar to VMS. You tried to change or delete an
771914499element of the CRTL's internal environ array, but your copy of Perl
772014500wasn't built with a CRTL that contained the setenv() function. You'll
772114501need to rebuild Perl with a CRTL that does, or redefine
772214502F<PERL_ENV_TABLES> (see L<perlvms>) so that the environ array isn't the
772314503target of the change to
772414504%ENV which produced the warning.
772514505
772614506=end original
772714507
7728(W internal) VMS 固有の警告です。
14508(W internal) VMS 固有の警告です。
772914509CRTL の内部環境配列を変更または削除しようとしましたが、この Perl は
773014510setenv() 関数を含んだ CRTL でビルドされていません。
773114511これを含む CRTL を使って Perl を再ビルドするか、環境配列がこの警告を
773214512出力している %ENV を変更するターゲットとならないように
773314513F<PERL_ENV_TABLES> (L<perlvms> を参照してください) を再定義してください。
773414514
7735=item times not implemented
14515=item This Perl has not been built with support for randomized hash key traversal but something called Perl_hv_rand_set().
773614516
773714517=begin original
773814518
7739(F) Your version of the C library apparently doesn't do times(). I
14519(F) Something has attempted to use an internal API call which
7740suspect you're not running on Unix.
14520depends on Perl being compiled with the default support for randomized hash
14521key traversal, but this Perl has been compiled without it. You should
14522report this warning to the relevant upstream party, or recompile perl
14523with default options.
774114524
774214525=end original
774314526
7744(F) お使いの C ライブラリではtimes() を行わないようす。
14527(F) 何かがPerl がデフォルト対応しているランダム化されたハッシュキー検索に
7745UNIX はない環境でょうか。
14528依存した 内部 API 呼び出しを使おうとしましたが、この Perl それなし
14529コンパイルされていました。
14530この警告を関係する上流グループに報告するか、デフォルトオプションで perl を
14531再コンパイルしてください。
774614532
7747=item Too few args to syscall
14533=item times not implemented
774814534
774914535=begin original
775014536
7751(F) There has to be at least one argument to syscall() to specify the
14537(F) Your version of the C library apparently doesn't do times(). I
7752system call to call, silly dilly.
14538suspect you're not running on Unix.
775314539
775414540=end original
775514541
7756(F) syscall() には、最低限も呼び出システムコールを示す、
14542(F) お使いの C ライブラリでは、times() を行わないようです
7757引数が一つ必要
14543UNIX はない環境でしょうか
775814544
7759=item Too late for "B<-T>" option
14545=item "-T" is on the #! line, it must also be used on the command line
776014546
776114547=begin original
776214548
7763(X) The #! line (or local equivalent) in a Perl script contains the
14549(X) The #! line (or local equivalent) in a Perl script contains
7764B<-T> option, but Perl was not invoked with B<-T> in its command line.
14550the B<-T> option (or the B<-t> option), but Perl was not invoked with
7765This is an error because, by the time Perl discovers a B<-T> in a
14551B<-T> in its command line. This is an error because, by the time
7766script, it's too late to properly taint everything from the environment.
14552Perl discovers a B<-T> in a script, it's too late to properly taint
7767So Perl gives up.
14553everything from the environment. So Perl gives up.
776814554
776914555=end original
777014556
777114557(X) Perl スクリプトの #! 行(あるいはローカルで等価なもの)に B<-T>
7772オプションが含まれていますが、Perl はコマンドラインで B<-T> 付きで
14558オプション (または B<-t> オプション) が含まれていますが、Perl は
7773起動されていません。
14559コマンドラインで B<-T> 付きで起動されていません。
777414560Perl がスクリプトの中で B<-T> を発見した時点では、環境からの全てを
777514561汚染チェックするには遅すぎるので、これはエラーになります。
777614562それで Perl は諦めます。
777714563
777814564=begin original
777914565
778014566If the Perl script is being executed as a command using the #!
7781mechanism (or its local equivalent), this error can usually be fixed by
14567mechanism (or its local equivalent), this error can usually be
7782editing the #! line so that the B<-T> option is a part of Perl's first
14568fixed by editing the #! line so that the B<-%c> option is a part of
7783argument: e.g. change C<perl -n -T> to C<perl -T -n>.
14569Perl's first argument: e.g. change C<perl -n -%c> to C<perl -%c -n>.
778414570
778514571=end original
778614572
778714573perl スクリプトが #! 機構(またはローカルな等価な機構)を使ってコマンドとして
7788実行される場合、このエラーは普通 B<-T> オプションを Perl の最初の引数に
14574実行される場合、このエラーは普通 B<-%c> オプションを Perl の最初の引数に
7789変更する(C<perl -n -T> を C<perl -T -n> に変更する)ことで修正されます。
14575変更する(C<perl -n -%c> を C<perl -%c -n> に変更する)ことで修正されます。
779014576
779114577=begin original
779214578
779314579If the Perl script is being executed as C<perl scriptname>, then the
7794B<-T> option must appear on the command line: C<perl -T scriptname>.
14580B<-%c> option must appear on the command line: C<perl -%c scriptname>.
779514581
779614582=end original
779714583
779814584Perl スクリプトが C<perl scriptname> として起動される場合、B<-T> オプションは
7799コマンドラインに書かなければなりません: C<perl -T scriptname>
14585コマンドラインに書かなければなりません: C<perl -%c scriptname>
780014586
14587=item To%s: illegal mapping '%s'
14588
14589=begin original
14590
14591(F) You tried to define a customized To-mapping for lc(), lcfirst,
14592uc(), or ucfirst() (or their string-inlined versions), but you
14593specified an illegal mapping.
14594See L<perlunicode/"User-Defined Character Properties">.
14595
14596=end original
14597
14598(F) lc(), lcfirst, uc(), or ucfirst() (またはこれらの文字列組み込み版)の
14599ためのカスタマイズされた変換先マッピングを定義しようとしましたが、
14600不正なマッピングを指定しました。
14601L<perlunicode/"User-Defined Character Properties"> を参照してください。
14602
14603=item Too deeply nested ()-groups
14604
14605=begin original
14606
14607(F) Your template contains ()-groups with a ridiculously deep nesting level.
14608
14609=end original
14610
14611(F) テンプレートに、おかしいぐらいネストした () グループがあります。
14612
14613=item Too few args to syscall
14614
14615=begin original
14616
14617(F) There has to be at least one argument to syscall() to specify the
14618system call to call, silly dilly.
14619
14620=end original
14621
14622(F) syscall() には、最低限でも呼び出すシステムコールを示す、
14623引数が一つ必要です。
14624
14625=item Too few arguments for subroutine '%s'
14626
14627=begin original
14628
14629(F) A subroutine using a signature fewer arguments than required by the
14630signature. The caller of the subroutine is presumably at fault.
14631
14632=end original
14633
14634(F) シグネチャを使っているサブルーチンが、シグネチャが要求しているよりも
14635少ない引数を受け取りました。
14636おそらくサブルーチンの呼び出し元が間違っています。
14637
14638=begin original
14639
14640The message attempts to include the name of the called subroutine. If
14641the subroutine has been aliased, the subroutine's original name will be
14642shown, regardless of what name the caller used.
14643
14644=end original
14645
14646このメッセージは呼び出されたサブルーチン名を含めようとします。
14647サブルーチンが別名化されている場合、どの名前で呼びされたかにかかわらず
14648サブルーチンの元の名前が表示されます。
14649
780114650=item Too late for "-%s" option
780214651
780314652=begin original
780414653
780514654(X) The #! line (or local equivalent) in a Perl script contains the
7806B<-M> or B<-m> option. This is an error because B<-M> and B<-m> options
14655B<-M>, B<-m> or B<-C> option.
14656
14657=end original
14658
14659(X) Perl スクリプトの #! 行(またはローカルな等価な機構)に B<-M>, B<-m>,
14660B<-C> オプションが含まれています。
14661
14662=begin original
14663
14664In the case of B<-M> and B<-m>, this is an error because those options
780714665are not intended for use inside scripts. Use the C<use> pragma instead.
780814666
780914667=end original
781014668
7811(X) Perl スクリプトの #! 行(またはローカル等価な機構)に B<-M> や
14669B<-M> B<-m> に関しては、スクリプト内部で使うめのものではないので、
7812B<-m> オプションが含まれています。
7813B<-M> と B<-m> のオプションは、スクリプト内部で使うためのものではないので、
781414670これはエラーになります。
781514671代わりに C<use> プラグマを使ってください。
781614672
14673=begin original
14674
14675The B<-C> option only works if it is specified on the command line as
14676well (with the same sequence of letters or numbers following). Either
14677specify this option on the command line, or, if your system supports
14678it, make your script executable and run it directly instead of passing
14679it to perl.
14680
14681=end original
14682
14683B<-C> オプションは、コマンドラインも (以下と同じ文字と数値の並びで)
14684指定されたときにのみ動作します。
14685このオプションをコマンドラインで指定するか、もしシステムが対応しているなら、
14686スクリプトを perl に渡すのではなく、スクリプトを実行可能にして
14687直接実行してください。
14688
781714689=item Too late to run %s block
781814690
781914691=begin original
782014692
782114693(W void) A CHECK or INIT block is being defined during run time proper,
782214694when the opportunity to run them has already passed. Perhaps you are
782314695loading a file with C<require> or C<do> when you should be using C<use>
782414696instead. Or perhaps you should put the C<require> or C<do> inside a
782514697BEGIN block.
782614698
782714699=end original
782814700
782914701(W void) CHECK か INIT のブロックが、それが実行される機会が過ぎてから
783014702実行時に定義されました。
783114703おそらく C<use> を使うべきときに C<require> か C<do> を使ってファイルを
783214704読み込んでいます。
783314705あるいはおそらく BEGIN ブロックの中に C<require> か C<do> を
783414706書いたのでしょう。
783514707
783614708=item Too many args to syscall
783714709
783814710=begin original
783914711
784014712(F) Perl supports a maximum of only 14 args to syscall().
784114713
784214714=end original
784314715
784414716(F) Perl では、syscall() に最大 14 までしか、引数を渡すことができません。
784514717
784614718=item Too many arguments for %s
784714719
784814720=begin original
784914721
785014722(F) The function requires fewer arguments than you specified.
785114723
785214724=end original
785314725
785414726(F) 関数が要求する以上の引数を指定しました。
785514727
14728=item Too many arguments for subroutine '%s'
14729
14730=begin original
14731
14732(F) A subroutine using a signature received more arguments than permitted
14733by the signature. The caller of the subroutine is presumably at fault.
14734
14735=end original
14736
14737(F) シグネチャを使っているサブルーチンが、シグネチャで許されているよりも
14738多い引数を受け取りました。
14739おそらくサブルーチンの呼び出し元が間違っています。
14740
14741=begin original
14742
14743The message attempts to include the name of the called subroutine. If the
14744subroutine has been aliased, the subroutine's original name will be shown,
14745regardless of what name the caller used.
14746
14747=end original
14748
14749メッセージには呼び出されたサブルーチンの名前を含めようとします。
14750サブルーチンに別名がある場合、どの名前で呼び出されたかに関わらず、
14751元の名前が表示されます。
14752
785614753=item Too many )'s
785714754
785814755=begin original
785914756
786014757(A) You've accidentally run your script through B<csh> instead of Perl.
786114758Check the #! line, or manually feed your script into Perl yourself.
786214759
786314760=end original
786414761
786514762(A) スクリプトを perl ではなく B<csh> で実行しようとしました。
786614763#! 行をチェックするか、スクリプトを直接 Perl で起動してください。
786714764
786814765=item Too many ('s
786914766
7870=item trailing \ in regexp
14767=begin original
787114768
14769(A) You've accidentally run your script through B<csh> instead of Perl.
14770Check the #! line, or manually feed your script into Perl yourself.
14771
14772=end original
14773
14774(A) スクリプトを perl ではなく B<csh> で実行しようとしました。
14775#! 行をチェックするか、スクリプトを直接 Perl で起動してください。
14776
14777=item Trailing \ in regex m/%s/
14778
787214779=begin original
787314780
787414781(F) The regular expression ends with an unbackslashed backslash.
787514782Backslash it. See L<perlre>.
787614783
787714784=end original
787814785
787914786(F) 正規表現が、バックスラッシュを付けていないバックスラッシュで
788014787終了しました。バックスラッシュを付けてください。
788114788L<perlre> を参照してください。
788214789
788314790=item Transliteration pattern not terminated
788414791
788514792=begin original
788614793
788714794(F) The lexer couldn't find the interior delimiter of a tr/// or tr[][]
788814795or y/// or y[][] construct. Missing the leading C<$> from variables
788914796C<$tr> or C<$y> may cause this error.
789014797
789114798=end original
789214799
7893(F) tr///, tr[][], y///, y[][] 構文の真ん中の区切り文字が
14800(F) tr///, tr[][], y///, y[][] 構文の真ん中の区切り文字が
789414801見つかりませんでした。
789514802C<$tr> 変数 や C<$y> 変数の前に C<$> をつけるのを忘れると
789614803このエラーが出ることがあります。
789714804
7898
789914805=item Transliteration replacement not terminated
790014806
790114807=begin original
790214808
7903(F) The lexer couldn't find the final delimiter of a tr/// or tr[][]
14809(F) The lexer couldn't find the final delimiter of a tr///, tr[][],
7904construct.
14810y/// or y[][] construct.
790514811
790614812=end original
790714813
7908(F) tr/// もしくは tr[][] 構文の最後の区切り文字が見つかりませんでした。
14814(F) tr///, tr[][], y///, y[][] 構文の最後の区切り文字が
14815見つかりませんでした。
790914816
14817=item '%s' trapped by operation mask
14818
14819=begin original
14820
14821(F) You tried to use an operator from a Safe compartment in which it's
14822disallowed. See L<Safe>.
14823
14824=end original
14825
14826(F) Safe 区画の中で、許されていない演算子を使おうとしました。
14827L<Safe> を参照してください。
14828
791014829=item truncate not implemented
791114830
791214831=begin original
791314832
791414833(F) Your machine doesn't implement a file truncation mechanism that
791514834Configure knows about.
791614835
791714836=end original
791814837
791914838(F) このマシンでは、Configure が知りうる、ファイルの切り詰めの機能が
792014839実装されていません。
792114840
14841=item Type of arg %d to &CORE::%s must be %s
14842
14843=begin original
14844
14845(F) The subroutine in question in the CORE package requires its argument
14846to be a hard reference to data of the specified type. Overloading is
14847ignored, so a reference to an object that is not the specified type, but
14848nonetheless has overloading to handle it, will still not be accepted.
14849
14850=end original
14851
14852(F) CORE パッケージにある問題のサブルーチンは、引数に特定の型のデータへの
14853ハードリファレンスを要求しています。
14854オーバーロードは無視されるので、指定された型ではないけれども、それを
14855扱えるようにオーバーロードされたオブジェクトへのリファレンスでも
14856受け付けられません。
14857
792214858=item Type of arg %d to %s must be %s (not %s)
792314859
792414860=begin original
792514861
792614862(F) This function requires the argument in that position to be of a
792714863certain type. Arrays must be @NAME or C<@{EXPR}>. Hashes must be
792814864%NAME or C<%{EXPR}>. No implicit dereferencing is allowed--use the
792914865{EXPR} forms as an explicit dereference. See L<perlref>.
793014866
793114867=end original
793214868
793314869(F) この関数は、その位置に決まった型の引数を必要とします。
7934配列は、@NAME もしくは C<@{EXPR}> でなくてはならず、ハッシュは、
14870配列は、@NAME もしくは C<@{EXPR}> でなりません。
7935%NAME もしくは C<%{EXPR}> でなければなりません。
14871ハッシュは、%NAME もしくは C<%{EXPR}> でなければなりません。
793614872暗黙の被参照は許されませんので、明示的な被参照として、
793714873{EXPR} 形式を使ってください。
793814874L<perlref> を参照してください。
793914875
7940=item umask: argument is missing initial 0
7941
7942=begin original
7943
7944(W umask) A umask of 222 is incorrect. It should be 0222, because octal
7945literals always start with 0 in Perl, as in C.
7946
7947=end original
7948
7949(W umask) umask 222 は正しくありません。
7950Perl の 8 進数リテラルは、C と同じように 0 で始まりますから、
79510222 とすべきです。
7952
795314876=item umask not implemented
795414877
795514878=begin original
795614879
795714880(F) Your machine doesn't implement the umask function and you tried to
795814881use it to restrict permissions for yourself (EXPR & 0700).
795914882
796014883=end original
796114884
796214885(F) umask 関数が実装されていないマシンで、自分自身の権限を制限する
796314886(EXPR & 0700) ためにこれを使おうとしました。
796414887
7965=item Unable to create sub named "%s"
7966
7967=begin original
7968
7969(F) You attempted to create or access a subroutine with an illegal name.
7970
7971=end original
7972
7973(F) 不正な名前のサブルーチンを作成または呼び出ししようとしました。
7974
797514888=item Unbalanced context: %d more PUSHes than POPs
797614889
797714890=begin original
797814891
7979(W internal) The exit code detected an internal inconsistency in how
14892(S internal) The exit code detected an internal inconsistency in how
798014893many execution contexts were entered and left.
798114894
798214895=end original
798314896
7984(W internal) いくつの実行コンテキストに入って、出たかということの
14897(S internal) いくつの実行コンテキストに入って、出たかということの
798514898内部矛盾が exit コードで発見されました。
798614899
798714900=item Unbalanced saves: %d more saves than restores
798814901
798914902=begin original
799014903
7991(W internal) The exit code detected an internal inconsistency in how
14904(S internal) The exit code detected an internal inconsistency in how
799214905many values were temporarily localized.
799314906
799414907=end original
799514908
7996(W internal) いくつの値が、一時的にローカル化されたかということの
14909(S internal) いくつの値が、一時的にローカル化されたかということの
799714910内部矛盾が exit コードで発見されました。
799814911
799914912=item Unbalanced scopes: %d more ENTERs than LEAVEs
800014913
800114914=begin original
800214915
8003(W internal) The exit code detected an internal inconsistency in how
14916(S internal) The exit code detected an internal inconsistency in how
800414917many blocks were entered and left.
800514918
800614919=end original
800714920
8008(W internal) いくつのブロックに入って、出たかということの
14921(S internal) いくつのブロックに入って、出たかということの
800914922内部矛盾が exit コードで発見されました。
801014923
14924=item Unbalanced string table refcount: (%d) for "%s"
14925
14926=begin original
14927
14928(S internal) On exit, Perl found some strings remaining in the shared
14929string table used for copy on write and for hash keys. The entries
14930should have been freed, so this indicates a bug somewhere.
14931
14932=end original
14933
14934(S internal) 終了時に、ハッシュキーのためのコピーオンライトのための
14935共有文字列テーブルに文字列が残っていることを Perl が発見しました。
14936エントリは開放されている必要があるので、これはどこかにバグがあることを
14937示しています。
14938
801114939=item Unbalanced tmps: %d more allocs than frees
801214940
801314941=begin original
801414942
8015(W internal) The exit code detected an internal inconsistency in how
14943(S internal) The exit code detected an internal inconsistency in how
801614944many mortal scalars were allocated and freed.
801714945
801814946=end original
801914947
8020(W internal) いくつの揮発性スカラの割り当てを行ない、解放したかと
14948(S internal) いくつの揮発性スカラの割り当てを行ない、解放したかと
802114949いうことの内部矛盾が exit コードで発見されました。
802214950
802314951=item Undefined format "%s" called
802414952
802514953=begin original
802614954
802714955(F) The format indicated doesn't seem to exist. Perhaps it's really in
802814956another package? See L<perlform>.
802914957
803014958=end original
803114959
8032(F) このフォーマット存在しないように見えます。
14960(F) 示されたフォーマット存在しないようす。
8033おそらく、別のパッケージに存在するのではないでしょうか。
14961おそらく本当は他のパッケージにるのでは?
803414962L<perlform> を参照してください。
803514963
803614964=item Undefined sort subroutine "%s" called
803714965
803814966=begin original
803914967
804014968(F) The sort comparison routine specified doesn't seem to exist.
804114969Perhaps it's in a different package? See L<perlfunc/sort>.
804214970
804314971=end original
804414972
804514973(F) 指定された sort の比較ルーティンは存在していないように思われます。
804614974おそらく、別のパッケージに存在するのではないでしょうか。
8047L<perlfunc/sort>を参照してください。
14975L<perlfunc/sort> を参照してください。
804814976
804914977=item Undefined subroutine &%s called
805014978
805114979=begin original
805214980
805314981(F) The subroutine indicated hasn't been defined, or if it was, it has
805414982since been undefined.
805514983
805614984=end original
805714985
8058(F) 指定されたサブルーティンが定義されていません
14986(F) 指定されたサブルーンが定義されていません; 定義されていたとしても、
8059定義されていたとしても、既に未定義になっています。
14987既に未定義になっています。
806014988
806114989=item Undefined subroutine called
806214990
806314991=begin original
806414992
806514993(F) The anonymous subroutine you're trying to call hasn't been defined,
806614994or if it was, it has since been undefined.
806714995
806814996=end original
806914997
8070(F) 呼びだそうとしている無名のサブルーティンは、定義されていません
14998(F) 呼びだそうとしている無名のサブルーンは、定義されていません;
807114999定義されていたとしても、既に未定義になっています。
807215000
807315001=item Undefined subroutine in sort
807415002
807515003=begin original
807615004
807715005(F) The sort comparison routine specified is declared but doesn't seem
807815006to have been defined yet. See L<perlfunc/sort>.
807915007
808015008=end original
808115009
808215010(F) 指定された sort の比較ルーティンは宣言されましたが、
808315011定義されていないようです。
808415012L<perlfunc/sort> を参照してください。
808515013
808615014=item Undefined top format "%s" called
808715015
808815016=begin original
808915017
809015018(F) The format indicated doesn't seem to exist. Perhaps it's really in
809115019another package? See L<perlform>.
809215020
809315021=end original
809415022
809515023(F) 示されたフォーマットが存在しないようです。
809615024おそらく本当は他のパッケージにあるのでは?
809715025L<perlform> を参照してください。
809815026
809915027=item Undefined value assigned to typeglob
810015028
810115029=begin original
810215030
810315031(W misc) An undefined value was assigned to a typeglob, a la
810415032C<*foo = undef>. This does nothing. It's possible that you really mean
810515033C<undef *foo>.
810615034
810715035=end original
810815036
810915037(W misc) C<*foo = undef> のように、未定義値を型グロブに代入しました。
811015038これは何もしません。
811115039本当は C<undef *foo> としたかったのかもしれません。
811215040
811315041=item %s: Undefined variable
811415042
811515043=begin original
811615044
811715045(A) You've accidentally run your script through B<csh> instead of Perl.
811815046Check the #! line, or manually feed your script into Perl yourself.
811915047
812015048=end original
812115049
812215050(A) スクリプトを perl ではなく B<csh> で実行しようとしました。
812315051#! 行をチェックするか、スクリプトを直接 Perl で起動してください。
812415052
15053=item Unescaped left brace in regex is deprecated here (and will be fatal in Perl 5.30), passed through in regex; marked by S<<-- HERE> in m/%s/
15054
15055=item Unescaped left brace in regex is deprecated here (and will be fatal in Perl 5.32), passed through in regex; marked by S<<-- HERE> in m/%s/
15056
15057=begin original
15058
15059(D deprecated, regexp) The simple rule to remember, if you want to
15060match a literal C<{> character (U+007B C<LEFT CURLY BRACKET>) in a
15061regular expression pattern, is to escape each literal instance of it in
15062some way. Generally easiest is to precede it with a backslash, like
15063C<\{> or enclose it in square brackets (C<[{]>). If the pattern
15064delimiters are also braces, any matching right brace (C<}>) should
15065also be escaped to avoid confusing the parser, for example,
15066
15067=end original
15068
15069(D deprecated, regexp) 正規表現中で
15070リテラルな C<{> 文字 (U+007B C<LEFT CURLY BRACKET>) にマッチングしたいときに
15071覚えておくべき単純な規則は、何らかの方法で
15072それぞれのリテラルな実体をエスケープすることです。
15073一般的に一番簡単なのは、C<\{> のように逆スラッシュを前置するか、
15074かっこでかこむ (C<[{]>) ことです。.
15075パターン区切り文字も中かっこの場合、マッチングする右中かっこ
15076(C<}>) も、パーサーの混乱を避けるためにエスケープするべきです; 例えば:
15077
15078 qr{abc\{def\}ghi}
15079
15080=begin original
15081
15082Forcing literal C<{> characters to be escaped will enable the Perl
15083language to be extended in various ways in future releases. To avoid
15084needlessly breaking existing code, the restriction is is not enforced in
15085contexts where there are unlikely to ever be extensions that could
15086conflict with the use there of C<{> as a literal.
15087
15088=end original
15089
15090リテラルな C<{> 文字にエスケープを強制することにより、
15091将来のリリースで様々な方法で Perl 言語を拡張できるようになります。
15092既存のコードを不必要に壊すことを避けるために、
15093拡張が C<{> をリテラルとして使うことと競合しそうにない文脈では
15094制限は強制されません。
15095
15096=begin original
15097
15098In this release of Perl, some literal uses of C<{> are fatal, and some
15099still just deprecated. This is because of an oversight: some uses of a
15100literal C<{> that should have raised a deprecation warning starting in
15101v5.20 did not warn until v5.26. By making the already-warned uses fatal
15102now, some of the planned extensions can be made to the language sooner.
15103The cases which are still allowed will be fatal in Perl 5.30 or 5.32.
15104
15105=end original
15106
15107このリリースの Perl では、C<"{"> のリテラルな使用法の一部は致命的エラーで、
15108一部は単に廃止予定です。
15109これは見落としによるものです: v5.20 から廃止予定警告をだすべきだった
15110リテラルな C<"{"> の使用法の一部は v5.26 まで警告されていませんでした。
15111すでに警告されていた使用法を今致命的エラーにすることで、
15112言語に計画されていた拡張の一部をより早く実行できます。
15113まだ許されている使用法は Perl 5.30 か 5.32 で致命的エラーになる予定です。
15114
15115=begin original
15116
15117The contexts where no warnings or errors are raised are:
15118
15119=end original
15120
15121警告やエラーが出ない文脈は:
15122
15123=over 4
15124
15125=item *
15126
15127=begin original
15128
15129as the first character in a pattern, or following C<^> indicating to
15130anchor the match to the beginning of a line.
15131
15132=end original
15133
15134パターンの最初の文字、あるいは行頭にマッチングすることを示す
15135C<"^"> に引き続いている場合。
15136
15137=item *
15138
15139=begin original
15140
15141as the first character following a C<|> indicating alternation.
15142
15143=end original
15144
15145代替を示す C<"|"> に引き続く最初の文字の場合。
15146
15147=item *
15148
15149=begin original
15150
15151as the first character in a parenthesized grouping like
15152
15153=end original
15154
15155次のようなかっこ付きグループの最初の文字の場合:
15156
15157 /foo({bar)/
15158 /foo(?:{bar)/
15159
15160=item *
15161
15162=begin original
15163
15164as the first character following a quantifier
15165
15166=end original
15167
15168量指定子に引き続く最初の文字の場合
15169
15170 /\s*{/
15171
15172=back
15173
15174=for comment
15175The text of the message above is duplicated below to allow splain (and
15176'use diagnostics') to work. Since one is fatal, and one not, they can't
15177be combined as one message. And since the non-fatal one is temporary,
15178there's no real need to enhance perldiag to handle this transient case.
15179
15180=item Unescaped left brace in regex is illegal here in regex;
15181marked by S<<-- HERE> in m/%s/
15182
15183=begin original
15184
15185(F) The simple rule to remember, if you want to
15186match a literal C<"{"> character (U+007B C<LEFT CURLY BRACKET>) in a
15187regular expression pattern, is to escape each literal instance of it in
15188some way. Generally easiest is to precede it with a backslash, like
15189C<"\{"> or enclose it in square brackets (C<"[{]">). If the pattern
15190delimiters are also braces, any matching right brace (C<"}">) should
15191also be escaped to avoid confusing the parser, for example,
15192
15193=end original
15194
15195(F) 正規表現中で
15196リテラルな C<"{"> 文字 (U+007B C<LEFT CURLY BRACKET>) にマッチングしたいときに
15197覚えておくべき単純な規則は、何らかの方法で
15198それぞれのリテラルな実体をエスケープすることです。
15199一般的に一番簡単なのは、C<"\{"> のように逆スラッシュを前置するか、
15200かっこでかこむ (C<"[{]">) ことです。.
15201パターン区切り文字も中かっこの場合、マッチングする右中かっこ
15202(C<"}">) も、パーサーの混乱を避けるためにエスケープするべきです; 例えば:
15203
15204 qr{abc\{def\}ghi}
15205
15206=begin original
15207
15208Forcing literal C<"{"> characters to be escaped will enable the Perl
15209language to be extended in various ways in future releases. To avoid
15210needlessly breaking existing code, the restriction is is not enforced in
15211contexts where there are unlikely to ever be extensions that could
15212conflict with the use there of C<"{"> as a literal.
15213
15214=end original
15215
15216リテラルな C<"{"> 文字にエスケープを強制することにより、
15217将来のリリースで様々な方法で Perl 言語を拡張できるようになります。
15218既存のコードを不必要に壊すことを避けるために、
15219拡張が C<"{"> をリテラルとして使うことと競合しそうにない文脈では
15220制限は強制されません。
15221
15222=begin original
15223
15224In this release of Perl, some literal uses of C<"{"> are fatal, and some
15225still just deprecated. This is because of an oversight: some uses of a
15226literal C<"{"> that should have raised a deprecation warning starting in
15227v5.20 did not warn until v5.26. By making the already-warned uses fatal
15228now, some of the planned extensions can be made to the language sooner.
15229
15230=end original
15231
15232このリリースの Perl では、C<"{"> のリテラルな使用法の一部は致命的エラーで、
15233一部は単に廃止予定です。
15234これは見落としによるものです: v5.20 から廃止予定警告をだすべきだった
15235リテラルな C<"{"> の使用法の一部は v5.26 まで警告されていませんでした。
15236すでに警告されていた使用法を今致命的エラーにすることで、
15237言語に計画されていた拡張の一部をより早く実行できます。
15238
15239=begin original
15240
15241The contexts where no warnings or errors are raised are:
15242
15243=end original
15244
15245警告やエラーが出ない文脈は:
15246
15247=over 4
15248
15249=item *
15250
15251=begin original
15252
15253as the first character in a pattern, or following C<"^"> indicating to
15254anchor the match to the beginning of a line.
15255
15256=end original
15257
15258パターンの最初の文字、あるいは行頭にマッチングすることを示す
15259C<"^"> に引き続いている場合。
15260
15261=item *
15262
15263=begin original
15264
15265as the first character following a C<"|"> indicating alternation.
15266
15267=end original
15268
15269代替を示す C<"|"> に引き続く最初の文字の場合。
15270
15271=item *
15272
15273=begin original
15274
15275as the first character in a parenthesized grouping like
15276
15277=end original
15278
15279次のようなかっこ付きグループの最初の文字の場合:
15280
15281 /foo({bar)/
15282 /foo(?:{bar)/
15283
15284=item *
15285
15286=begin original
15287
15288as the first character following a quantifier
15289
15290=end original
15291
15292量指定子に引き続く最初の文字の場合
15293
15294 /\s*{/
15295
15296=back
15297
15298=item Unescaped literal '%c' in regex; marked by <-- HERE in m/%s/
15299
15300=begin original
15301
15302(W regexp) (only under C<S<use re 'strict'>>)
15303
15304=end original
15305
15306(W regexp) (C<S<use re 'strict'>> の下のみ)
15307
15308=begin original
15309
15310Within the scope of C<S<use re 'strict'>> in a regular expression
15311pattern, you included an unescaped C<}> or C<]> which was interpreted
15312literally. These two characters are sometimes metacharacters, and
15313sometimes literals, depending on what precedes them in the
15314pattern. This is unlike the similar C<)> which is always a
15315metacharacter unless escaped.
15316
15317=end original
15318
15319C<S<use re 'strict'>> スコープでの正規表現パターンの中で、
15320リテラルとして解釈される、エスケープされない C<}> や C<]> を置きました。
15321これらの二つの文字は時にはメタ文字で、ときにはリテラルです;
15322パターン中で何が前に置かれるかによります。
15323これは、エスケープされない限り常にメタ文字である C<)> に似ていますが
15324異なります。
15325
15326=begin original
15327
15328This action at a distance, perhaps a large distance, can lead to Perl
15329silently misinterpreting what you meant, so when you specify that you
15330want extra checking by C<S<use re 'strict'>>, this warning is generated.
15331If you meant the character as a literal, simply confirm that to Perl by
15332preceding the character with a backslash, or make it into a bracketed
15333character class (like C<[}]>). If you meant it as closing a
15334corresponding C<[> or C<{>, you'll need to look back through the pattern
15335to find out why that isn't happening.
15336
15337=end original
15338
15339遠くで、おそらくはとても遠くでこの動作をすると、Perl は暗黙のままで
15340あなたの意図を間違って解釈するかもしれないので、
15341C<S<use re 'strict'>> で追加のチェックを求めるように指定すると、
15342この警告が出力されます。
15343この文字がリテラルであるなら、文字の前に逆スラッシュを置くか、
15344(C<[}]> のように)大かっこ文字クラスの中に入れることで、Perl に
15345はっきりさせてください。
15346これが対応する C<[> や C<{> を閉じるものなら、
15347なぜそれが起きないかを見つけるためにパターン全体を見直してください。
15348
812515349=item unexec of %s into %s failed!
812615350
812715351=begin original
812815352
812915353(F) The unexec() routine failed for some reason. See your local FSF
813015354representative, who probably put it there in the first place.
813115355
813215356=end original
813315357
813415358(F) unexec() ルーティンが何らかの理由によって失敗しました。
813515359最初にインストールしたであろう、サイトの FSF 代表者にたずねてみてください。
813615360
8137=item Unknown BYTEORDER
15361=item Unexpected binary operator '%c' with no preceding operand in regex;
15362marked by S<<-- HERE> in m/%s/
813815363
813915364=begin original
814015365
8141(F) There are no byte-swapping functions for a machine with this byte
15366(F) You had something like this:
8142order.
814315367
814415368=end original
814515369
8146(F) バイト順序入れ替える関数がありせん。
15370(F) 以下ようなもの書きした:
814715371
8148=item Unknown switch condition (?(%.2s before << HERE in regex m/%s/
15372 (?[ | \p{Digit} ])
814915373
815015374=begin original
815115375
8152(F) The condition of a (?(condition)if-clause|else-clause) construct is not
15376where the C<"|"> is a binary operator with an operand on the right, but
8153known. The condition may be lookaround (the condition is true if the
15377no operand on the left.
8154lookaround is true), a (?{...}) construct (the condition is true if the
8155code evaluates to a true value), or a number (the condition is true if the
8156set of capturing parentheses named by the number is defined).
815715378
815815379=end original
815915380
8160(F) (?(condition)if-clause|else-clause) 構文の条件不明で
15381ここで C<"|"> は右側にはオペランドありまが、左側にはオペランドがない
8161条件は参照 (参照が真なら条件は真)、
153822 項演算子です。
8162(?{...}) 構文 (コードが真の値に評価されれば真)、
8163数値 (番号付けされた、捕捉されたかっこの集合が定義されていれば真) の
8164いずれかです。
816515383
15384=item Unexpected character in regex; marked by S<<-- HERE> in m/%s/
15385
816615386=begin original
816715387
8168The << HERE shows in the regular expression about where the problem was
15388(F) You had something like this:
8169discovered. See L<perlre>.
817015389
817115390=end original
817215391
8173<< HERE で正規表現どこに問題が発見されたか示していす。
15392(F) 以下ようなもの書きした:
8174L<perlre> を参照してください。
817515393
15394 (?[ z ])
15395
15396=begin original
15397
15398Within C<(?[ ])>, no literal characters are allowed unless they are
15399within an inner pair of square brackets, like
15400
15401=end original
15402
15403C<(?[ ])> の中では、次のようにさらに内側の大かっこの内側でない限り
15404リテラル文字は許されません
15405
15406 (?[ [ z ] ])
15407
15408=begin original
15409
15410Another possibility is that you forgot a backslash. Perl isn't smart
15411enough to figure out what you really meant.
15412
15413=end original
15414
15415もう一つの可能性は、逆スラッシュを忘れたことです。
15416Perl はあなたが何を意味しているのかを見つけ出せるほど賢くはありませんでした。
15417
15418=item Unexpected constant lvalue entersub entry via type/targ %d:%d
15419
15420=begin original
15421
15422(P) When compiling a subroutine call in lvalue context, Perl failed an
15423internal consistency check. It encountered a malformed op tree.
15424
15425=end original
15426
15427(P) 左辺値コンテキストでのサブルーチン呼び出しをコンパイルするときに、Perl は
15428内部一貫性チェックに失敗しました。
15429不正な構文木に遭遇しました。
15430
15431=item Unexpected exit %u
15432
15433=begin original
15434
15435(S) exit() was called or the script otherwise finished gracefully when
15436C<PERL_EXIT_WARN> was set in C<PL_exit_flags>.
15437
15438=end original
15439
15440(S) C<PL_exit_flags> に C<PERL_EXIT_WARN> が設定されているときに exit() が
15441呼び出されたりその他の理由で通常終了しました。
15442
15443=item Unexpected exit failure %d
15444
15445=begin original
15446
15447(S) An uncaught die() was called when C<PERL_EXIT_WARN> was set in
15448C<PL_exit_flags>.
15449
15450=end original
15451
15452(S) C<PL_exit_flags> に C<PERL_EXIT_WARN> が設定されているときに
15453捕らえられていない die() が呼び出されました。
15454
15455=item Unexpected ')' in regex; marked by S<<-- HERE> in m/%s/
15456
15457=begin original
15458
15459(F) You had something like this:
15460
15461=end original
15462
15463(F) 以下のようなものを書きました:
15464
15465 (?[ ( \p{Digit} + ) ])
15466
15467=begin original
15468
15469The C<")"> is out-of-place. Something apparently was supposed to
15470be combined with the digits, or the C<"+"> shouldn't be there, or
15471something like that. Perl can't figure out what was intended.
15472
15473=end original
15474
15475C<")"> の場所がおかしいです。
15476何かを数値と結合しようとしていたのか、C<"+"> があるべきでないのか、あるいは
15477似たような何かです。
15478Perl は何を意図しているのかが分かりませんでした。
15479
15480=item Unexpected ']' with no following ')' in (?[... in regex; marked by
15481<-- HERE in m/%s/
15482
15483=begin original
15484
15485(F) While parsing an extended character class a ']' character was
15486encountered at a point in the definition where the only legal use of
15487']' is to close the character class definition as part of a '])', you
15488may have forgotten the close paren, or otherwise confused the parser.
15489
15490=end original
15491
15492(F) 拡張文字クラスのパース中、'])' の一部として文字クラス定義を
15493閉じることが唯一の有効な ']' の使い方である位置で ']' に遭遇しました;
15494閉じかっこを忘れているか、さもなければパーサが混乱しています。
15495
15496=item Unexpected '(' with no preceding operator in regex; marked by
15497S<<-- HERE> in m/%s/
15498
15499=begin original
15500
15501(F) You had something like this:
15502
15503=end original
15504
15505(F) 以下のようなものを書きました:
15506
15507 (?[ \p{Digit} ( \p{Lao} + \p{Thai} ) ])
15508
15509=begin original
15510
15511There should be an operator before the C<"(">, as there's
15512no indication as to how the digits are to be combined
15513with the characters in the Lao and Thai scripts.
15514
15515=end original
15516
15517これらは C<"("> の前の演算子であるべきです; ラオ語やタイ語で数字とこれらの
15518文字がどのように結びつくかの指示がないからです。
15519
15520=item Unicode non-character U+%X is not recommended for open interchange
15521
15522=begin original
15523
15524(S nonchar) Certain codepoints, such as U+FFFE and U+FFFF, are
15525defined by the Unicode standard to be non-characters. Those
15526are legal codepoints, but are reserved for internal use; so,
15527applications shouldn't attempt to exchange them. An application
15528may not be expecting any of these characters at all, and receiving
15529them may lead to bugs. If you know what you are doing you can
15530turn off this warning by C<no warnings 'nonchar';>.
15531
15532=end original
15533
15534(S nonchar) U+FFFE や U+FFFF のようないくつかの符号位置は
15535Unicode 標準によって非文字として指定されています。
15536これらは有効な符号位置ですが、内部使用のために予約されています; 従って、
15537アプリケーションはこれを交換しようとするべきではありません。
15538アプリケーションは、これらの文字を想定するべきではなく、これらを
15539受け取るとバグを引き起こすことがあります。
15540もし自分が何をしているかを理解しているなら、C<no warnings 'nonchar';> で
15541警告を無効にできます。
15542
15543=begin original
15544
15545This is not really a "severe" error, but it is supposed to be
15546raised by default even if warnings are not enabled, and currently
15547the only way to do that in Perl is to mark it as serious.
15548
15549=end original
15550
15551これは実際には「重大な」エラーではありませんが、例え警告が有効でなくても
15552デフォルトで発生させることになっていて、今のところ Perl で出来る唯一のことは
15553これを重大なものとして扱うことです。
15554
15555=item Unicode surrogate U+%X is illegal in UTF-8
15556
15557=begin original
15558
15559(S surrogate) You had a UTF-16 surrogate in a context where they are
15560not considered acceptable. These code points, between U+D800 and
15561U+DFFF (inclusive), are used by Unicode only for UTF-16. However, Perl
15562internally allows all unsigned integer code points (up to the size limit
15563available on your platform), including surrogates. But these can cause
15564problems when being input or output, which is likely where this message
15565came from. If you really really know what you are doing you can turn
15566off this warning by C<no warnings 'surrogate';>.
15567
15568=end original
15569
15570(S surrogate) 受け付けられないと考えられる場所に UTF-16 サロゲートを
15571使いました。
15572これらの符号位置、U+D800 から U+DFFF (両端含む) は UTF-16 のためだけに
15573Unicode によって使われます。
15574しかし Perl は、サロゲートを含む、内部で全ての符号なし整数の符号位置(最大値は
15575プラットフォームで利用可能なサイズ上限)を受け付けます。
15576しかし、これらは入力や出力になるときに問題を引き起こします; それは
15577おそらくこのメッセージが出た場所です。
15578自分で何をしているのかが本当に本当に分かっているなら、
15579C<no warnings 'surrogate';> とすることでこの警告をオフにできます。
15580
15581=item Unknown charname '%s'
15582
15583=begin original
15584
15585(F) The name you used inside C<\N{}> is unknown to Perl. Check the
15586spelling. You can say C<use charnames ":loose"> to not have to be
15587so precise about spaces, hyphens, and capitalization on standard Unicode
15588names. (Any custom aliases that have been created must be specified
15589exactly, regardless of whether C<:loose> is used or not.) This error may
15590also happen if the C<\N{}> is not in the scope of the corresponding
15591C<S<use charnames>>.
15592
15593=end original
15594
15595(F) C<\N{}> の内側で使った名前は Perl が知らないものでした。
15596綴りをチェックしてください。
15597C<use charnames ":loose"> と指定することで、標準 Unicode 名の空白、ハイフン、
15598大文字小文字についてはそれほど正確でなくてもいいようになります。
15599(作成されたカスタム別名は、C<:loose> のありなしに関わらず正確に
15600指定されなければなりません。)
15601このエラーは、C<\N{}> が、対応する C<S<use charnames>> のスコープ内に
15602ないときにも起こることがあります。
15603
15604=item Unknown '(*...)' construct '%s' in regex; marked by <-- HERE in m/%s/
15605
15606=begin original
15607
15608(F) The C<(*> was followed by something that the regular expression
15609compiler does not recognize. Check your spelling.
15610
15611=end original
15612
15613(F) C<(*> に、何か正規表現コンパイラが理解できないものが
15614引き続いていました。
15615綴りをチェックしてください。
15616
15617=item Unknown error
15618
15619=begin original
15620
15621(P) Perl was about to print an error message in C<$@>, but the C<$@> variable
15622did not exist, even after an attempt to create it.
15623
15624=end original
15625
15626(P) Perl は C<$@> のエラーメッセージを表示しようとしましたが、C<$@> 変数が
15627(たとえ作ろうとした後でも) 存在しませんでした。
15628
15629=item Unknown locale category %d; can't set it to %s
15630
15631=begin original
15632
15633(W locale) You used a locale category that perl doesn't recognize, so it
15634cannot carry out your request. Check that you are using a valid
15635category. If so, see L<perllocale/Multi-threaded> for advice on
15636reporting this as a bug, and for modifying perl locally to accommodate
15637your needs.
15638
15639=end original
15640
15641(W locale) perl が認識できないロケールカテゴリを使ったので、
15642要求を実行することができません。
15643正しいカテゴリを使っているかチェックしてください。
15644もしそうなら、これをバグとして報告する助言や、必要性に対応するために
15645perl をローカルで修正する方法について L<perllocale/Multi-threaded> を
15646参照してください。
15647
817615648=item Unknown open() mode '%s'
817715649
817815650=begin original
817915651
818015652(F) The second argument of 3-argument open() is not among the list
818115653of valid modes: C<< < >>, C<< > >>, C<<< >> >>>, C<< +< >>,
8182C<< +> >>, C<<< +>> >>>, C<-|>, C<|->.
15654C<< +> >>, C<<< +>> >>>, C<-|>, C<|->, C<< <& >>, C<< >& >>.
818315655
818415656=end original
818515657
818615658(F) 3 引数 open() の 第 2 引数が以下の有効なモードの
818715659どれでもありませんでした:
818815660C<< < >>, C<< > >>, C<<< >> >>>, C<< +< >>,
8189C<< +> >>, C<<< +>> >>>, C<-|>, C<|->.
15661C<< +> >>, C<<< +>> >>>, C<-|>, C<|->, C<< <& >>, C<< >& >>
819015662
15663=item Unknown PerlIO layer "%s"
15664
15665=begin original
15666
15667(W layer) An attempt was made to push an unknown layer onto the Perl I/O
15668system. (Layers take care of transforming data between external and
15669internal representations.) Note that some layers, such as C<mmap>,
15670are not supported in all environments. If your program didn't
15671explicitly request the failing operation, it may be the result of the
15672value of the environment variable PERLIO.
15673
15674=end original
15675
15676(W layer) 不明な層をPerl I/O システムに追加しようとしました。
15677(層はデータの外部表現と内部表現の変換を扱います。)
15678C<mmap> のような層は、全ての環境で対応しているわけではないことに
15679注意してください。
15680明示的に失敗する操作を要求していないのであれば、これは環境変数 PERLIO の
15681値が原因かもしれません。
15682
819115683=item Unknown process %x sent message to prime_env_iter: %s
819215684
819315685=begin original
819415686
819515687(P) An error peculiar to VMS. Perl was reading values for %ENV before
819615688iterating over it, and someone else stuck a message in the stream of
819715689data Perl expected. Someone's very confused, or perhaps trying to
819815690subvert Perl's population of %ENV for nefarious purposes.
819915691
820015692=end original
820115693
8202(P) VMS 固有のエラーです。
15694(P) VMS 固有のエラーです。
820315695Perl は %ENV を反復する前に %ENV から値を読み込み、Perl が想定している
820415696データストリームの中に誰かがメッセージを差し込みました。
820515697誰かはとても混乱しているか、邪悪な目的のために %ENV の Perl の集団を
820615698滅亡させようとしています。
820715699
8208=item unmatched [ before << HERE mark in regex m/%s/
15700=item Unknown regexp modifier "/%s"
820915701
821015702=begin original
821115703
8212(F) The brackets around a character class must match. If you wish to
15704(F) Alphanumerics immediately following the closing delimiter
15705of a regular expression pattern are interpreted by Perl as modifier
15706flags for the regex. One of the ones you specified is invalid. One way
15707this can happen is if you didn't put in white space between the end of
15708the regex and a following alphanumeric operator:
15709
15710=end original
15711
15712(F) 正規表現で、閉じデリミタの直後の英数字は Perl によって正規表現への
15713修飾子フラグと解釈されます。
15714その一つが不正でした。
15715これが起きる一つの可能性は、正規表現の終わりと引き続く英数字演算子の間に
15716空白を置いていない場合です:
15717
15718 if ($a =~ /foo/and $bar == 3) { ... }
15719
15720=begin original
15721
15722The C<"a"> is a valid modifier flag, but the C<"n"> is not, and raises
15723this error. Likely what was meant instead was:
15724
15725=end original
15726
15727C<"a"> は正当な修飾子フラグですが、C<"n"> は違うので、このエラーが起こります。
15728おそらくしたかったのは以下のようなことでしょう:
15729
15730 if ($a =~ /foo/ and $bar == 3) { ... }
15731
15732=item Unknown "re" subpragma '%s' (known ones are: %s)
15733
15734=begin original
15735
15736(W) You tried to use an unknown subpragma of the "re" pragma.
15737
15738=end original
15739
15740(W) "re" プラグマの、不明なサブプラグマを使おうとしました。
15741
15742=item Unknown switch condition (?(...)) in regex; marked by S<<-- HERE> in
15743m/%s/
15744
15745=begin original
15746
15747(F) The condition part of a (?(condition)if-clause|else-clause) construct
15748is not known. The condition must be one of the following:
15749
15750=end original
15751
15752(?(...)if-clause|else-clause) 構造の条件部が不明です。
15753条件は以下のいずれかでなければなりません。
15754
15755 (1) (2) ... true if 1st, 2nd, etc., capture matched
15756 (<NAME>) ('NAME') true if named capture matched
15757 (?=...) (?<=...) true if subpattern matches
15758 (*pla:...) (*plb:...) true if subpattern matches; also
15759 (*positive_lookahead:...)
15760 (*positive_lookbehind:...)
15761 (*nla:...) (*nlb:...) true if subpattern fails to match; also
15762 (*negative_lookahead:...)
15763 (*negative_lookbehind:...)
15764 (?{ CODE }) true if code returns a true value
15765 (R) true if evaluating inside recursion
15766 (R1) (R2) ... true if directly inside capture group 1, 2,
15767 etc.
15768 (R&NAME) true if directly inside named capture
15769 (DEFINE) always false; for defining named subpatterns
15770
15771=begin original
15772
15773The S<<-- HERE> shows whereabouts in the regular expression the problem was
15774discovered. See L<perlre>.
15775
15776=end original
15777
15778S<<-- HERE> で正規表現のどこに問題が発見されたかを示しています。
15779L<perlre> を参照してください。
15780
15781=item Unknown Unicode option letter '%c'
15782
15783=begin original
15784
15785(F) You specified an unknown Unicode option. See L<perlrun> documentation
15786of the C<-C> switch for the list of known options.
15787
15788=end original
15789
15790(F) 不明な Unicode オプションを指定しました。
15791オプションの一覧については、L<perlrun> ドキュメントの C<-C> オプションを
15792参照してください。
15793
15794=item Unknown Unicode option value %d
15795
15796=begin original
15797
15798(F) You specified an unknown Unicode option. See L<perlrun> documentation
15799of the C<-C> switch for the list of known options.
15800
15801=end original
15802
15803(F) 不明な Unicode オプションを指定しました。
15804オプションの一覧については、L<perlrun> ドキュメントの C<-C> オプションを
15805参照してください。
15806
15807=item Unknown verb pattern '%s' in regex; marked by S<<-- HERE> in m/%s/
15808
15809=begin original
15810
15811(F) You either made a typo or have incorrectly put a C<*> quantifier
15812after an open brace in your pattern. Check the pattern and review
15813L<perlre> for details on legal verb patterns.
15814
15815=end original
15816
15817(F) タイプミスをしたか、間違ってパターン中の開き大かっこの後に
15818C<*> 量指定子を書いたかどちらかです。
15819パターンをチェックして、有効な動詞パターンの詳細については
15820L<perlre> を再チェックしてください。
15821
15822=item Unknown warnings category '%s'
15823
15824=begin original
15825
15826(F) An error issued by the C<warnings> pragma. You specified a warnings
15827category that is unknown to perl at this point.
15828
15829=end original
15830
15831(F) C<warnings> プラグマによるエラーです。
15832現在のところ perl が知らない警告カテゴリを指定しました。
15833
15834=begin original
15835
15836Note that if you want to enable a warnings category registered by a
15837module (e.g. C<use warnings 'File::Find'>), you must have loaded this
15838module first.
15839
15840=end original
15841
15842(C<use warnings 'File::Find'> のように)モジュールによって登録される
15843警告カテゴリを有効にしたい場合、このモジュールを先に読み込む必要が
15844あることに注意してください。
15845
15846=item Unmatched [ in regex; marked by S<<-- HERE> in m/%s/
15847
15848=begin original
15849
15850(F) The brackets around a character class must match. If you wish to
821315851include a closing bracket in a character class, backslash it or put it
8214first. See L<perlre>. The << HERE shows in the regular expression about
15852first. The S<<-- HERE> shows whereabouts in the regular expression the
8215where the escape was discovered.
15853problem was discovered. See L<perlre>.
821615854
821715855=end original
821815856
821915857(F) 文字クラスの周りの大かっこが一致していません。
822015858文字クラスに閉じ大かっこを含めたい場合は、バックスラッシュをつけるか
822115859先頭に置いてください。
15860S<<-- HERE> で正規表現のどこに問題が発見されたかを示しています。
822215861L<perlre> を参照してください。
8223<< HERE で正規表現のどこに問題が発見されたかを示しています。
822415862
8225=item unmatched ( in regexp before << HERE mark in regex m/%s/
15863=item Unmatched ( in regex; marked by S<<-- HERE> in m/%s/
822615864
15865=item Unmatched ) in regex; marked by S<<-- HERE> in m/%s/
15866
822715867=begin original
822815868
822915869(F) Unbackslashed parentheses must always be balanced in regular
8230expressions. If you're a vi user, the % key is valuable for finding the
15870expressions. If you're a vi user, the % key is valuable for finding
8231matching parenthesis. See L<perlre>.
15871the matching parenthesis. The S<<-- HERE> shows whereabouts in the
15872regular expression the problem was discovered. See L<perlre>.
823215873
823315874=end original
823415875
823515876(F) 正規表現の中ではバックスラッシュのついていないかっこは常に
823615877対応していなければなりません。
823715878vi ユーザーであれば、% キーが対応するかっこの発見に有用です。
15879S<<-- HERE> で正規表現のどこに問題が発見されたかを示しています。
823815880L<perlre> を参照してください。
823915881
824015882=item Unmatched right %s bracket
824115883
824215884=begin original
824315885
824415886(F) The lexer counted more closing curly or square brackets than opening
824515887ones, so you're probably missing a matching opening bracket. As a
824615888general rule, you'll find the missing one (so to speak) near the place
824715889you were last editing.
824815890
824915891=end original
825015892
8251(F) 字句解析が開き中括弧よりも多くの閉じ中括弧または大括弧
15893(F) 文法解析、閉じ中かっこや大かっこが開きかっこよりも多いこと
8252見つけました。
15894見つけました; おそらく対応する開きかっこを忘れたのでしょう
8253開き中括弧または大括弧のもれ思わます。
15895一般的な規則して、忘たかっこ(そう呼ぶなら)はあなたが最後に編集した
8254一般的な規則として、最後に修正した場所の近に、忘れた中括弧
15896場所の近あります。
8255または大括弧 (であるはずのもの) があることでしょう。
825615897
825715898=item Unquoted string "%s" may clash with future reserved word
825815899
825915900=begin original
826015901
826115902(W reserved) You used a bareword that might someday be claimed as a
826215903reserved word. It's best to put such a word in quotes, or capitalize it
826315904somehow, or insert an underbar into it. You might also declare it as a
826415905subroutine.
826515906
826615907=end original
826715908
826815909(W) いつの日にか、予約語とかち合うかもしれない、裸の単語を使用しています。
826915910そのような単語は、クォートするか、大文字を入れるか、アンダーバー (_) を
827015911いれるかしてください。
8271その裸の単語は、サブルーティンとして宣言することも可能です。
15912その裸の単語は、サブルーンとして宣言することも可能です。
827215913
8273=item Unrecognized character %s
15914=item Unrecognized character %s; marked by S<<-- HERE> after %s near column
15915%d
827415916
827515917=begin original
827615918
827715919(F) The Perl parser has no idea what to do with the specified character
8278in your Perl script (or eval). Perhaps you tried to run a compressed
15920in your Perl script (or eval) near the specified column. Perhaps you
8279script, a binary program, or a directory as a Perl program.
15921tried to run a compressed script, a binary program, or a directory as
15922a Perl program.
828015923
828115924=end original
828215925
8283(F) Perl パーサーは、Perl スクリプト(または eval) で出てき文字対して
15926(F) Perl パーサーは、Perl スクリプト(または eval) で指定され桁数あたり
8284どうすればよいか分かりませんでした。
15927出てきた文字に対してどうすればよいか分かりませんでした。
828515928おそらく圧縮したスクリプト、バイナリプログラム、ディレクトリといったものを
828615929Perl プログラムとして実行しようとしたのでしょう。
828715930
8288=item /%s/: Unrecognized escape \\%c in character class passed through
15931=item Unrecognized escape \%c in character class in regex; marked by
15932S<<-- HERE> in m/%s/
828915933
829015934=begin original
829115935
15936(F) You used a backslash-character combination which is not
15937recognized by Perl inside character classes. This is a fatal
15938error when the character class is used within C<(?[ ])>.
15939
15940=end original
15941
15942(F) Perl の内部文字クラスとして認識されない逆スラッシュ文字並びを使いました。
15943これは文字クラスが C<(?[ ])> の中で使われた時は致命的エラーです。
15944
15945=item Unrecognized escape \%c in character class passed through in regex;
15946marked by S<<-- HERE> in m/%s/
15947
15948=begin original
15949
829215950(W regexp) You used a backslash-character combination which is not
829315951recognized by Perl inside character classes. The character was
8294understood literally.
15952understood literally, but this may change in a future version of Perl.
15953The S<<-- HERE> shows whereabouts in the regular expression the
15954escape was discovered.
829515955
829615956=end original
829715957
829815958(W regexp) Perl 内部文字クラスで認識できない、バックスラッシュ-文字の
829915959組み合わせを使いました。
8300文字はリテラルに理されます
15960文字はリテラルに理されますが、将来のバージョンの Perl では
15961変更されるかもしれません。
15962S<<-- HERE> で正規表現のどこにエスケープが発見されたかを示しています。
830115963
8302=item Unrecognized escape \\%c passed through before << HERE in m/%s/
15964=item Unrecognized escape \%c passed through
830315965
830415966=begin original
830515967
8306(W regexp) You used a backslash-character combination which is not
15968(W misc) You used a backslash-character combination which is not
8307recognized by Perl. This combination appears in an interpolated variable or
15969recognized by Perl. The character was understood literally, but this may
8308a C<'>-delimited regular expression. The character was understood
15970change in a future version of Perl.
8309literally. The << HERE shows in the regular expression about where the escape
8310was discovered.
831115971
831215972=end original
831315973
8314(W regexp) Perl が認識できないバックスラッシュ-文字の組み合わせが
15974(W misc) Perl が理解できないバックスラッシュ-文字の組み合わせが
831515975使われています。
8316この組み合わせ展開された変数の中かC<'>-デリミタ正規表現
15976文字リテラルに処理されますが将来バージョンの Perl
8317出現しま
15977変更されるかもせん
8318この文字はリテラルに処理されます。
8319<< HERE で正規表現のどこに問題が発見されたかを示しています。
832015978
8321=item Unrecognized escape \\%c passed through
15979=item Unrecognized escape \%s passed through in regex; marked by
15980S<<-- HERE> in m/%s/
832215981
832315982=begin original
832415983
8325(W misc) You used a backslash-character combination which is not
15984(W regexp) You used a backslash-character combination which is not
8326recognized by Perl.
15985recognized by Perl. The character(s) were understood literally, but
15986this may change in a future version of Perl. The S<<-- HERE> shows
15987whereabouts in the regular expression the escape was discovered.
832715988
832815989=end original
832915990
8330(W misc) Perl が理解できないバックスラッシュ-文字の組み合わせが
15991(W regexp) Perl が認識できないバックスラッシュ-文字の組み合わせが
833115992使われています。
15993文字はリテラルに処理されますが、将来のバージョンの Perl では
15994変更されるかもしれません。
15995S<<-- HERE> で正規表現のどこにエスケープが発見されたかを示しています。
833215996
833315997=item Unrecognized signal name "%s"
833415998
833515999=begin original
833616000
833716001(F) You specified a signal name to the kill() function that was not
833816002recognized. Say C<kill -l> in your shell to see the valid signal names
833916003on your system.
834016004
834116005=end original
834216006
834316007(F) kill() 関数に、認識できないシグナル名を指定しました。
834416008お使いのシステムで使用可能なシグナル名を調べるには、
834516009シェル上で C<kill -l> などとしてください。
834616010
834716011=item Unrecognized switch: -%s (-h will show valid options)
834816012
834916013=begin original
835016014
835116015(F) You specified an illegal option to Perl. Don't do that. (If you
835216016think you didn't do that, check the #! line to see if it's supplying the
835316017bad switch on your behalf.)
835416018
835516019=end original
835616020
835716021(F) Perl に間違ったオプションを指定しました。
835816022これを行なってはいけません。
835916023(指定したつもりがないのであれば、#! 行に間違ったオプションが
836016024スイッチが指定されていないかをチェックしてください。)
836116025
836216026=item Unsuccessful %s on filename containing newline
836316027
836416028=begin original
836516029
836616030(W newline) A file operation was attempted on a filename, and that
836716031operation failed, PROBABLY because the filename contained a newline,
836816032PROBABLY because you forgot to chomp() it off. See L<perlfunc/chomp>.
836916033
837016034=end original
837116035
837216036(W newline) あるファイル名に対して、ファイル操作を行ないましたが、
8373失敗しました
16037失敗しました; 「おそらく」ファイル名に改行文字がついていたからで、
8374「おそらく」ファイル名に改行文字がついていたからで、
837516038「おそらく」 chomp() するのを忘れたのでしょう。 
837616039L<perlfunc/chomp> を参照してください。
837716040
837816041=item Unsupported directory function "%s" called
837916042
838016043=begin original
838116044
838216045(F) Your machine doesn't support opendir() and readdir().
838316046
838416047=end original
838516048
838616049(F) このマシンでは、opendir() や readdir() がサポートされていません。
838716050
838816051=item Unsupported function %s
838916052
839016053=begin original
839116054
839216055(F) This machine doesn't implement the indicated function, apparently.
839316056At least, Configure doesn't think so.
839416057
839516058=end original
839616059
839716060(F) このマシンでは、表示した関数は実装されていません。
839816061少なくとも、Configure はそう判断しました。
839916062
840016063=item Unsupported function fork
840116064
840216065=begin original
840316066
840416067(F) Your version of executable does not support forking.
840516068
840616069=end original
840716070
840816071(F) この実行ファイルは fork に対応していません。
840916072
841016073=begin original
841116074
841216075Note that under some systems, like OS/2, there may be different flavors
8413of Perl executables, some of which may support fork, some not. Try
16076of Perl executables, some of which may support fork, some not. Try
841416077changing the name you call Perl by to C<perl_>, C<perl__>, and so on.
841516078
841616079=end original
841716080
841816081OS/2 のようなシステムには、Perl 実行ファイルにいくつかの種類があり、
841916082fork に対応しているものとしていないものがあります。
842016083Perl を呼び出す時の名前を C<perl_>, C<perl__> のように
842116084変えてみてください。
842216085
8423=item Unsupported script encoding
16086=item Unsupported script encoding %s
842416087
842516088=begin original
842616089
842716090(F) Your program file begins with a Unicode Byte Order Mark (BOM) which
8428declares it to be in a Unicode encoding that Perl cannot yet read.
16091declares it to be in a Unicode encoding that Perl cannot read.
842916092
843016093=end original
843116094
843216095(F) プログラムファイルが、Perl が読み込めない Unicode エンコーディングを
843316096宣言する Unicode Byte Order Mark (BOM) で始まっています。
843416097
843516098=item Unsupported socket function "%s" called
843616099
843716100=begin original
843816101
843916102(F) Your machine doesn't support the Berkeley socket mechanism, or at
844016103least that's what Configure thought.
844116104
844216105=end original
844316106
844416107(F) このマシンでは、Berkeley ソケット機構がサポートされていないか、
844516108少なくとも Configure がそう判断しました。
844616109
16110=item Unterminated '(*...' argument in regex; marked by <-- HERE in m/%s/
16111
16112=begin original
16113
16114(F) You used a pattern of the form C<(*...:...)> but did not terminate
16115the pattern with a C<)>. Fix the pattern and retry.
16116
16117=end original
16118
16119(F) C<(*...:...)> 形式のパターンを使いましたが、パターンが
16120C<)> で終端されていません。
16121パターンを修正して再挑戦してください。
16122
844716123=item Unterminated attribute list
844816124
844916125=begin original
845016126
845116127(F) The lexer found something other than a simple identifier at the
845216128start of an attribute, and it wasn't a semicolon or the start of a
845316129block. Perhaps you terminated the parameter list of the previous
845416130attribute too soon. See L<attributes>.
845516131
845616132=end original
845716133
845816134(F) 字句解析器が、属性の先頭として単純な識別子やセミコロンやブロックの
845916135開始でないものを発見しました。
846016136おそらく以前の属性のパラメータリストを早く終端しすぎたのでしょう。
846116137L<attributes> を参照してください。
846216138
846316139=item Unterminated attribute parameter in attribute list
846416140
846516141=begin original
846616142
846716143(F) The lexer saw an opening (left) parenthesis character while parsing
846816144an attribute list, but the matching closing (right) parenthesis
846916145character was not found. You may need to add (or remove) a backslash
847016146character to get your parentheses to balance. See L<attributes>.
847116147
847216148=end original
847316149
847416150(F) 字句解析器が、属性リストをパースしているときに開き(左)かっこを
847516151発見しましたが、対応する閉じ(右)かっこが見つかりませんでした。
847616152かっこのバランスを取るために、バックスラッシュを追加(または削除)する
847716153必要があるでしょう。
847816154L<attributes> を参照してください。
847916155
848016156=item Unterminated compressed integer
848116157
848216158=begin original
848316159
848416160(F) An argument to unpack("w",...) was incompatible with the BER
848516161compressed integer format and could not be converted to an integer.
848616162See L<perlfunc/pack>.
848716163
848816164=end original
848916165
849016166(F) unpack("w",...) の引数が BER 圧縮整数フォーマットと互換性がなく、
849116167整数に変換できませんでした。
849216168L<perlfunc/pack> を参照してください。
849316169
16170=item Unterminated '(*...' construct in regex; marked by <-- HERE in m/%s/
16171
16172=begin original
16173
16174(F) You used a pattern of the form C<(*...)> but did not terminate
16175the pattern with a C<)>. Fix the pattern and retry.
16176
16177=end original
16178
16179(F) C<(*...)> 形式のパターンを使いましたが、パターンが
16180C<)> で終端されていません。
16181パターンを修正して再挑戦してください。
16182
16183=item Unterminated delimiter for here document
16184
16185=begin original
16186
16187(F) This message occurs when a here document label has an initial
16188quotation mark but the final quotation mark is missing. Perhaps
16189you wrote:
16190
16191=end original
16192
16193(F) このメッセージは、ヒヤドキュメントのラベルがクォートで始まっているけれども
16194末尾のクォートがありません。
16195おそらく以下のように書いたのでしょう:
16196
16197 <<"foo
16198
16199=begin original
16200
16201instead of:
16202
16203=end original
16204
16205次のように書いてください:
16206
16207 <<"foo"
16208
16209=item Unterminated \g... pattern in regex; marked by S<<-- HERE> in m/%s/
16210
16211=item Unterminated \g{...} pattern in regex; marked by S<<-- HERE> in m/%s/
16212
16213=begin original
16214
16215(F) In a regular expression, you had a C<\g> that wasn't followed by a
16216proper group reference. In the case of C<\g{>, the closing brace is
16217missing; otherwise the C<\g> must be followed by an integer. Fix the
16218pattern and retry.
16219
16220=end original
16221
16222(F) 正規表現の中で、適切なグループ参照が引き続かない C<\g> を使いました。
16223C<\g{> の場合、閉じ中かっこがありません; さもなければ、C<\g> には整数が
16224引き続かなければ鳴りません。
16225パターンを修正して再挑戦してください。
16226
849416227=item Unterminated <> operator
849516228
849616229=begin original
849716230
849816231(F) The lexer saw a left angle bracket in a place where it was expecting
849916232a term, so it's looking for the corresponding right angle bracket, and
850016233not finding it. Chances are you left some needed parentheses out
850116234earlier in the line, and you really meant a "less than".
850216235
850316236=end original
850416237
8505(F) 項が必要とされるところで、開き山括弧が見つけたため、
16238(F) 項が必要とされるところで、開き山かっこが見つけたため、
8506対応する閉じ山括弧を探しましたが、見つかりませんでした。
16239対応する閉じ山かっこを探しましたが、見つかりませんでした。
8507可能性としては、必要な括弧を省いてしまい、本当は、「小なり記号」を
16240可能性としては、必要なかっこを省いてしまい、本当は、「小なり記号」を
850816241表したかった場合が考えられます。
850916242
16243=item Unterminated verb pattern argument in regex; marked by S<<-- HERE> in
16244m/%s/
16245
16246=begin original
16247
16248(F) You used a pattern of the form C<(*VERB:ARG)> but did not terminate
16249the pattern with a C<)>. Fix the pattern and retry.
16250
16251=end original
16252
16253(F) C<(*VERB:ARG)> の形のパターンを使いましたが、パターンが C<)> で
16254終わっていません。
16255パターンを修正して再挑戦してください。
16256
16257=item Unterminated verb pattern in regex; marked by S<<-- HERE> in m/%s/
16258
16259=begin original
16260
16261(F) You used a pattern of the form C<(*VERB)> but did not terminate
16262the pattern with a C<)>. Fix the pattern and retry.
16263
16264=end original
16265
16266(F) C<(*VERB)> の形のパターンを使いましたが、パターンが C<)> で
16267終わっていません。
16268パターンを修正して再挑戦してください。
16269
851016270=item untie attempted while %d inner references still exist
851116271
851216272=begin original
851316273
851416274(W untie) A copy of the object returned from C<tie> (or C<tied>) was
851516275still valid when C<untie> was called.
851616276
851716277=end original
851816278
851916279(W untie) C<tie> (または C<tied>) から返されたオブジェクトが、
852016280C<untie> が呼び出されたときにまだ有効でした。
852116281
16282=item Usage: POSIX::%s(%s)
16283
16284=begin original
16285
16286(F) You called a POSIX function with incorrect arguments.
16287See L<POSIX/FUNCTIONS> for more information.
16288
16289=end original
16290
16291(F) POSIX 関数を間違った引数で呼び出しました。
16292さらなる情報については L<POSIX/FUNCTIONS> を参照してください。
16293
16294=item Usage: Win32::%s(%s)
16295
16296=begin original
16297
16298(F) You called a Win32 function with incorrect arguments.
16299See L<Win32> for more information.
16300
16301=end original
16302
16303(F) Win32 関数を間違った引数で呼び出しました。
16304更なる情報については L<Win32> を参照してください。
16305
16306=item $[ used in %s (did you mean $] ?)
16307
16308=begin original
16309
16310(W syntax) You used C<$[> in a comparison, such as:
16311
16312=end original
16313
16314(W syntax) 以下のように、比較で C<$[> を使いました:
16315
16316 if ($[ > 5.006) {
16317 ...
16318 }
16319
16320=begin original
16321
16322You probably meant to use C<$]> instead. C<$[> is the base for indexing
16323arrays. C<$]> is the Perl version number in decimal.
16324
16325=end original
16326
16327おそらく C<$]> を使いたかったのでしょう。
16328C<$[> は配列の基数です。
16329C<$]> は Perl のバージョン番号の 10 進数です。
16330
16331=item Use "%s" instead of "%s"
16332
16333=begin original
16334
16335(F) The second listed construct is no longer legal. Use the first one
16336instead.
16337
16338=end original
16339
16340(F) 2 番目に挙げられた構文はもはや有効ではありません。
16341代わりに 1 番目のものを使ってください。
16342
16343=item Useless assignment to a temporary
16344
16345=begin original
16346
16347(W misc) You assigned to an lvalue subroutine, but what
16348the subroutine returned was a temporary scalar about to
16349be discarded, so the assignment had no effect.
16350
16351=end original
16352
16353(W misc) 左辺値サブルーチンに代入しましたが、サブルーチンが返したものは
16354捨てられようとする一時的なスカラなので、代入は向こうです。
16355
16356=item Useless (?-%s) - don't use /%s modifier in regex; marked by
16357S<<-- HERE> in m/%s/
16358
16359=begin original
16360
16361(W regexp) You have used an internal modifier such as (?-o) that has no
16362meaning unless removed from the entire regexp:
16363
16364=end original
16365
16366(W regexp) (?-o) のような内部修飾子は、正規表現全体から除去されなければ
16367意味がありません:
16368
16369 if ($string =~ /(?-o)$pattern/o) { ... }
16370
16371=begin original
16372
16373must be written as
16374
16375=end original
16376
16377これは以下のように書かなければなりません:
16378
16379 if ($string =~ /$pattern/) { ... }
16380
16381=begin original
16382
16383The S<<-- HERE> shows whereabouts in the regular expression the problem was
16384discovered. See L<perlre>.
16385
16386=end original
16387
16388S<<-- HERE> で正規表現のどこに問題が発見されたかを示しています。
16389L<perlre> を参照してください。
16390
16391=item Useless localization of %s
16392
16393=begin original
16394
16395(W syntax) The localization of lvalues such as C<local($x=10)> is legal,
16396but in fact the local() currently has no effect. This may change at
16397some point in the future, but in the meantime such code is discouraged.
16398
16399=end original
16400
16401(W syntax) C<local($x=10)> のような左辺値のローカル化は有効ですが、
16402実際のところ local() は現在のところ何の効果もありません。
16403これは将来変更されるかもしれませんが、今のところはこのようなコードは
16404勧められません。
16405
16406=item Useless (?%s) - use /%s modifier in regex; marked by S<<-- HERE> in
16407m/%s/
16408
16409=begin original
16410
16411(W regexp) You have used an internal modifier such as (?o) that has no
16412meaning unless applied to the entire regexp:
16413
16414=end original
16415
16416(W regexp) (?o) のような内部修飾子は、正規表現全体に適用されなければ
16417意味がありません:
16418
16419 if ($string =~ /(?o)$pattern/) { ... }
16420
16421=begin original
16422
16423must be written as
16424
16425=end original
16426
16427これは以下のように書かなければなりません:
16428
16429 if ($string =~ /$pattern/o) { ... }
16430
16431=begin original
16432
16433The S<<-- HERE> shows whereabouts in the regular expression the problem was
16434discovered. See L<perlre>.
16435
16436=end original
16437
16438S<<-- HERE> で正規表現のどこに問題が発見されたかを示しています。
16439L<perlre> を参照してください。
16440
16441=item Useless use of attribute "const"
16442
16443=begin original
16444
16445(W misc) The C<const> attribute has no effect except
16446on anonymous closure prototypes. You applied it to
16447a subroutine via L<attributes.pm|attributes>. This is only useful
16448inside an attribute handler for an anonymous subroutine.
16449
16450=end original
16451
16452(W misc) C<const> 属性は、無名クロージャプロトタイプ以外では効果がありません。
16453あなたはこれを L<attributes.pm|attributes> 経由でサブルーチンに適用しました。
16454これは無名サブルーチンのための属性ハンドラの中でしか有用ではありません。
16455
16456=item Useless use of /d modifier in transliteration operator
16457
16458=begin original
16459
16460(W misc) You have used the /d modifier where the searchlist has the
16461same length as the replacelist. See L<perlop> for more information
16462about the /d modifier.
16463
16464=end original
16465
16466(W misc) 検索リストが置換リストと同じ長さの時に /d 修飾子を使いました。
16467/d 修飾子に関するさらなる情報については L<perlop> を参照してください。
16468
16469=item Useless use of \E
16470
16471=begin original
16472
16473(W misc) You have a \E in a double-quotish string without a C<\U>,
16474C<\L> or C<\Q> preceding it.
16475
16476=end original
16477
16478(W misc) ダブルクォート風文字列の中で C<\U>, C<\L>, C<\Q> を前置することなく
16479\E を書きました。
16480
16481=item Useless use of greediness modifier '%c' in regex; marked by S<<-- HERE> in m/%s/
16482
16483=begin original
16484
16485(W regexp) You specified something like these:
16486
16487=end original
16488
16489(W regexp) 次のようなものを指定しました:
16490
16491 qr/a{3}?/
16492 qr/b{1,1}+/
16493
16494=begin original
16495
16496The C<"?"> and C<"+"> don't have any effect, as they modify whether to
16497match more or fewer when there is a choice, and by specifying to match
16498exactly a given numer, there is no room left for a choice.
16499
16500=end original
16501
16502C<"?"> と C<"+"> は何の効果もありません; これはマッチングする数に幅がある時に
16503より多くまたは少なく変更します。
16504そして指定された数に正確にマッチングすることを指定されているので、
16505選択の余地はありません。
16506
852216507=item Useless use of %s in void context
852316508
852416509=begin original
852516510
852616511(W void) You did something without a side effect in a context that does
852716512nothing with the return value, such as a statement that doesn't return a
852816513value from a block, or the left side of a scalar comma operator. Very
852916514often this points not to stupidity on your part, but a failure of Perl
853016515to parse your program the way you thought it would. For example, you'd
853116516get this if you mixed up your C precedence with Python precedence and
853216517said
853316518
853416519=end original
853516520
853616521(W void) ブロックの値を返さない文や、スカラのコンマ演算子の左側のように
853716522返却値の無い文脈で、副作用のないことを行ないました。
853816523多くは、みなさんの間違いを指摘するものではなく、Perl がみなさんの
853916524意向を汲み取った解釈ができないことで起こります。
854016525たとえば、みなさんが C の優先順位を Python の優先順位と混同して
854116526以下のようにした場合です:
854216527
854316528 $one, $two = 1, 2;
854416529
854516530=begin original
854616531
854716532when you meant to say
854816533
854916534=end original
855016535
855116536以下のようにするべきです。
855216537
855316538 ($one, $two) = (1, 2);
855416539
855516540=begin original
855616541
855716542Another common error is to use ordinary parentheses to construct a list
855816543reference when you should be using square or curly brackets, for
855916544example, if you say
856016545
856116546=end original
856216547
8563その他の良くあるエラーとしては、リストを作るのに中括弧
16548その他の良くあるエラーとしては、リストを作るのに中かっこ大かっこを
8564大括弧を使うべきところで普通の括弧を使うことです
16549使うべきところで普通のかっこを使うことです; 例えば、以下のように書いた
8565例えば、以下のように書いた場合です:
16550場合です:
856616551
856716552 $array = (1,2);
856816553
856916554=begin original
857016555
857116556when you should have said
857216557
857316558=end original
857416559
857516560以下のように書くべきです:
857616561
857716562 $array = [1,2];
857816563
857916564=begin original
858016565
858116566The square brackets explicitly turn a list value into a scalar value,
858216567while parentheses do not. So when a parenthesized list is evaluated in
858316568a scalar context, the comma is treated like C's comma operator, which
858416569throws away the left argument, which is not what you want. See
858516570L<perlref> for more on this.
858616571
858716572=end original
858816573
858916574角かっこはリスト値を明示的にスカラ値に変換しますが、かっこは変換しません。
859016575そのため、かっこで括られたリストをスカラコンテキストで評価すると、
859116576カンマは C のカンマ演算子のように扱われ、左側の引数は捨てられます;
859216577これは望んでいることではないでしょう。
859316578これに関するさらなる情報については L<perlref> を参照してください。
859416579
16580=begin original
16581
16582This warning will not be issued for numerical constants equal to 0 or 1
16583since they are often used in statements like
16584
16585=end original
16586
16587この警告は、0 か 1 と等しい数値定数では起きません; なぜなら、
16588しばしば以下のような文で使われるからです:
16589
16590 1 while sub_with_side_effects();
16591
16592=begin original
16593
16594String constants that would normally evaluate to 0 or 1 are warned
16595about.
16596
16597=end original
16598
16599通常 0 か 1 に評価される文字列定数は警告されます。
16600
16601=item Useless use of (?-p) in regex; marked by S<<-- HERE> in m/%s/
16602
16603=begin original
16604
16605(W regexp) The C<p> modifier cannot be turned off once set. Trying to do
16606so is futile.
16607
16608=end original
16609
16610(W regexp)
16611C<p> 修飾子は、一度設定したものをオフにはできません。
16612そうしようとしても無効です。
16613
859516614=item Useless use of "re" pragma
859616615
859716616=begin original
859816617
8599(W) You did C<use re;> without any arguments. That isn't very useful.
16618(W) You did C<use re;> without any arguments. That isn't very useful.
860016619
860116620=end original
860216621
860316622(W) C<use re;> プラグマを引数なしで指定しました。これは無意味です。
860416623
16624=item Useless use of sort in scalar context
16625
16626=begin original
16627
16628(W void) You used sort in scalar context, as in :
16629
16630=end original
16631
16632(W void) こんな風に、ソートをスカラコンテキストで使いました:
16633
16634 my $x = sort @y;
16635
16636=begin original
16637
16638This is not very useful, and perl currently optimizes this away.
16639
16640=end original
16641
16642これは全く便利ではないので、perl は現在のところ最適化して取り除きます。
16643
16644=item Useless use of %s with no values
16645
16646=begin original
16647
16648(W syntax) You used the push() or unshift() function with no arguments
16649apart from the array, like C<push(@x)> or C<unshift(@foo)>. That won't
16650usually have any effect on the array, so is completely useless. It's
16651possible in principle that push(@tied_array) could have some effect
16652if the array is tied to a class which implements a PUSH method. If so,
16653you can write it as C<push(@tied_array,())> to avoid this warning.
16654
16655=end original
16656
16657(W syntax) C<push(@x)> や C<unshift(@foo)> のようにして、push() 関数や
16658unshift() 関数を、配列以外の引数なしで使いました。
16659これは普通は配列に何の影響も与えないので、完全に無意味です。
16660理論的には、配列が tie されているクラスの PUSH メソッドの実装によっては
16661push(@tied_array) が何らかの効果を持つ可能性はあります。
16662もしそうなら、これを C<push(@tied_array,())> のように書くことで警告を
16663回避できます。
16664
860516665=item "use" not allowed in expression
860616666
860716667=begin original
860816668
860916669(F) The "use" keyword is recognized and executed at compile time, and
861016670returns no useful value. See L<perlmod>.
861116671
861216672=end original
861316673
861416674(F) "use" キーワードは、コンパイル時に認識され、実行されるもので、
861516675意味のある値を返しません。
861616676L<perlmod> を参照してください。
861716677
8618=item Use of bare << to mean <<"" is deprecated
16678=item Use of assignment to $[ is deprecated, and will be fatal in 5.30
861916679
862016680=begin original
862116681
8622(D deprecated) You are now encouraged to use the explicitly quoted form
16682(D deprecated) The C<$[> variable (index of the first element in an array)
8623if you wish to use an empty line as the terminator of the here-document.
16683is deprecated since Perl 5.12, and setting it to a non-zero value will be
16684fatal as of Perl 5.30.
16685See L<perlvar/"$[">.
862416686
862516687=end original
862616688
8627(D deprecated) ヒアドキュメント終端子として空行を使いたいときに
16689(D deprecated) C<$[> 変数 (配列最初の要素のインデックス)
8628明示的にクォートさた形使うことを推奨していま
16690Perl 5.12 から廃止予定で、こに 0 以外の値設定るのは
16691Perl 5.30 から致命的エラーになります。
16692L<perlvar/"$["> を参照してください。
862916693
8630=item Use of implicit split to @_ is deprecated
16694=item Use of bare << to mean <<"" is forbidden
863116695
863216696=begin original
863316697
8634(D deprecated) It makes a lot of work for the compiler when you clobber
16698(F) You are now required to use the explicitly quoted form if you wish
8635a subroutine's argument list, so it's better if you assign the results
16699to use an empty line as the terminator of the here-document.
8636of a split() explicitly to an array (or list).
863716700
863816701=end original
863916702
8640(D deprecated) サブルーティンの引数壊すコンパイラ多大な労力を
16703(F) ヒアドキュメ終端子として空行使いたいは、明示的に
8641かけることになるので、split() の結果は明示的に配列 (やリスト) に
16704クォートされた形を使うことが必要になりました。
8642代入を行なうようにしてください。
864316705
8644=item Use of inherited AUTOLOAD for non-method %s() is deprecated
16706=begin original
864516707
16708Use of a bare terminator was deprecated in Perl 5.000, and is a fatal
16709error as of Perl 5.28.
16710
16711=end original
16712
16713裸の終端子は Perl 5.000 で廃止予定になっていて、
16714Perl 5.28 から致命的エラーです。
16715
16716=item Use of /c modifier is meaningless in s///
16717
864616718=begin original
864716719
8648(D deprecated) As an (ahem) accidental feature, C<AUTOLOAD> subroutines
16720(W regexp) You used the /c modifier in a substitution. The /c
8649are looked up as methods (using the C<@ISA> hierarchy) even when the
16721modifier is not presently meaningful in substitutions.
8650subroutines to be autoloaded were called as plain functions (e.g.
8651C<Foo::bar()>), not as methods (e.g. C<< Foo->bar() >> or C<<
8652$obj->bar() >>).
865316722
865416723=end original
865516724
8656(D deprecated) (エヘン)偶発的な仕様によって、C<AUTOLOAD> サブルーチンは、
16725(W regexp) 置換で /c 修飾子を使いました。
8657autoload されるサブルーチンがメソッド (C<< Foo->bar() >> や
16726/c は置換では現在のところ無意味です。
8658C<< $obj->bar() >>) ではなく、普通の関数 (C<Foo::bar()>) として
8659呼び出された場合にも、(C<@ISA> 階層を使って) メソッドとして検索します。
866016727
16728=item Use of /c modifier is meaningless without /g
16729
866116730=begin original
866216731
8663This bug will be rectified in future by using method lookup only for
16732(W regexp) You used the /c modifier with a regex operand, but didn't
8664methods' C<AUTOLOAD>s. However, there is a significant base of existing
16733use the /g modifier. Currently, /c is meaningful only when /g is
8665code that may be using the old behavior. So, as an interim step, Perl
16734used. (This may change in the future.)
8666currently issues an optional warning when non-methods use inherited
8667C<AUTOLOAD>s.
866816735
866916736=end original
867016737
8671このバグは、メソッの検索をメソッドの C<AUTOLOAD> のみで使うことによって
16738(W regexp) 正規表現オペラン /c 修飾子を使いましたが、/g 修飾子は
8672将来修正される予定
16739使いませんした
8673しかし、現在のコードの大部分古い振る舞いを使っています。
16740現在のところ、/c /g が使われたときにのみ有効です。
8674で、暫定的なステップとして、Perl 現在のところは、
16741(これは将来変更されるかもしれません。)
8675メソッド以外が継承されたC<AUTOLOAD> を使うときにオプションの警告を
8676発生させます。
867716742
16743=item Use of code point 0x%s is not allowed; the permissible max is 0x%x
16744
16745=item Use of code point 0x%s is not allowed; the permissible max is 0x%x
16746in regex; marked by <-- HERE in m/%s/
16747
867816748=begin original
867916749
8680The simple rule is: Inheritance will not work when autoloading
16750(F) You used a code point that is not allowed, because it is too large.
8681non-methods. The simple fix for old code is: In any module that used
16751Unicode only allows code points up to 0x10FFFF, but Perl allows much
8682to depend on inheriting C<AUTOLOAD> for non-methods from a base class
16752larger ones. Earlier versions of Perl allowed code points above IV_MAX
8683named C<BaseClass>, execute C<*AUTOLOAD = \&BaseClass::AUTOLOAD> during
16753(0x7FFFFFF on 32-bit platforms, 0x7FFFFFFFFFFFFFFF on 64-bit platforms),
8684startup.
16754however, this could possibly break the perl interpreter in some constructs,
16755including causing it to hang in a few cases.
868516756
868616757=end original
868716758
8688単純な規則は: 継承は autoload された非メソッドには動作しせん
16759(F) 大きすぎるので許されない符号位置を使いした
8689古いコードを修正する簡単な方法: C<BaseClass> という名前ベースクラスから
16760Unicode 0x10FFFF までだけ符号位置を許していますが、
8690非メソッドのための継承した C<AUTOLOAD> 依存してるモジュールに対て、
16761Perl は遙か大きものを許ます。
8691開始時に C<*AUTOLOAD = \&BaseClass::AUTOLOAD> を実行してください。
16762以前のバージョンの Perl
16763IV_MAX (32 ビットシステムでは 0x7FFFFFF、64 ビットシステムでは
167640x7FFFFFFFFFFFFFFF) を超えた符号位置を許していましたが、
16765これは一部の構文で perl インタプリタを壊すことがあり、
16766場合によってはハングアップすることがありました。
869216767
869316768=begin original
869416769
8695In code that currently says C<use AutoLoader; @ISA = qw(AutoLoader);>
16770If your code is to run on various platforms, keep in mind that the upper
8696you should remove AutoLoader from @ISA and change C<use AutoLoader;> to
16771limit depends on the platform. It is much larger on 64-bit word sizes
8697C<use AutoLoader 'AUTOLOAD';>.
16772than 32-bit ones.
869816773
869916774=end original
870016775
8701C<use AutoLoader; @ISA = qw(AutoLoader);> としているコードで
16776コードが様々なプラットフォーム実行するためのものなら
8702@ISA から AutoLoader 取り除いて、C<use AutoLoader;> を
16777上限がプラットフォームに依存していること心に留めておいてください。
8703C<use AutoLoader 'AUTOLOAD';>変更するべきです。
1677864 ビットワードサイズは 32 ビットよりも遙かです。
870416779
16780=begin original
16781
16782The use of out of range code points was deprecated in Perl 5.24, and
16783became a fatal error in Perl 5.28.
16784
16785=end original
16786
16787範囲外の符号位置の使用は Perl 5.24 で廃止予定になり、
16788Perl 5.28 で致命的エラーになりました。
16789
16790=item Use of each() on hash after insertion without resetting hash iterator results in undefined behavior
16791
16792=begin original
16793
16794(S internal) The behavior of C<each()> after insertion is undefined;
16795it may skip items, or visit items more than once. Consider using
16796C<keys()> instead of C<each()>.
16797
16798=end original
16799
16800(S internal) 挿入の後の C<each()> の振る舞いは未定義です; アイテムを
16801読み飛ばしたり、複数回読んだりします。
16802C<each()> の代わりに C<keys()> を使うことを検討してください。
16803
16804=item Use of := for an empty attribute list is not allowed
16805
16806=begin original
16807
16808(F) The construction C<my $x := 42> used to parse as equivalent to
16809C<my $x : = 42> (applying an empty attribute list to C<$x>).
16810This construct was deprecated in 5.12.0, and has now been made a syntax
16811error, so C<:=> can be reclaimed as a new operator in the future.
16812
16813=end original
16814
16815(F) 構文 C<my $x := 42> は C<my $x : = 42> と等価にパースされていました
16816(C<$x> に空の属性リストを適用する)。
16817この構文は 5.12.0 に廃止予定となり、今回文法エラーとなったので、
16818C<:=> は将来新しい演算子として再利用できます。
16819
16820=begin original
16821
16822If you need an empty attribute list, for example in a code generator, add
16823a space before the C<=>.
16824
16825=end original
16826
16827例えばコードジェネレータのために、空属性リストが必要なら、C<=> の前に
16828スペースを加えてください。
16829
16830=item Use of %s for non-UTF-8 locale is wrong. Assuming a UTF-8 locale
16831
16832=begin original
16833
16834(W locale) You are matching a regular expression using locale rules,
16835and the specified construct was encountered. This construct is only
16836valid for UTF-8 locales, which the current locale isn't. This doesn't
16837make sense. Perl will continue, assuming a Unicode (UTF-8) locale, but
16838the results are likely to be wrong.
16839
16840=end original
16841
16842(W locale) ロケールの規則を使って正規表現のマッチングを行い、
16843指定した構文が出現しました。
16844この構文は UTF-8 ロケールでのみ有効ですが、現在のロケールは異なります。
16845これは意味がありません。
16846Perl は Unicode (UTF-8) ロケールを仮定して動作を続けますが、
16847結果はおそらく間違ったものです。
16848
16849=item Use of freed value in iteration
16850
16851=begin original
16852
16853(F) Perhaps you modified the iterated array within the loop?
16854This error is typically caused by code like the following:
16855
16856=end original
16857
16858(F) おそらくループの中で反復される配列を変更したのでは?
16859このエラーは典型的には以下のようなコードで発生します:
16860
16861 @a = (3,4);
16862 @a = () for (1,2,@a);
16863
16864=begin original
16865
16866You are not supposed to modify arrays while they are being iterated over.
16867For speed and efficiency reasons, Perl internally does not do full
16868reference-counting of iterated items, hence deleting such an item in the
16869middle of an iteration causes Perl to see a freed value.
16870
16871=end original
16872
16873反復中の配列は変更してはいけないことになっています。
16874速度と効率上の理由から、Perl 内部では反復されたアイテムの参照カウントを
16875完全には数えていません; 従って反復中のアイテムのを削除すると Perl は
16876解放された値を見ることになります。
16877
16878=item Use of /g modifier is meaningless in split
16879
16880=begin original
16881
16882(W regexp) You used the /g modifier on the pattern for a C<split>
16883operator. Since C<split> always tries to match the pattern
16884repeatedly, the C</g> has no effect.
16885
16886=end original
16887
16888(W regexp) C<split> 演算子のパターンで /g 修飾子を使いました。
16889C<split> は常にパターンを繰り返しマッチングしようとするので、
16890C</g> は効果がありません。
16891
16892=item Use of "goto" to jump into a construct is deprecated
16893
16894=begin original
16895
16896(D deprecated) Using C<goto> to jump from an outer scope into an inner
16897scope is deprecated and should be avoided.
16898
16899=end original
16900
16901(D deprecated) 外側のスコープから内側のスコープに飛び込むために C<goto> を
16902使うことは廃止予定であり、避けるべきです。
16903
16904=begin original
16905
16906This was deprecated in Perl 5.12.
16907
16908=end original
16909
16910これは Perl 5.12 で廃止予定になりました。
16911
16912=item Use of '%s' in \p{} or \P{} is deprecated because: %s
16913
16914=begin original
16915
16916(D deprecated) Certain properties are deprecated by Unicode, and may
16917eventually be removed from the Standard, at which time Perl will follow
16918along. In the meantime, this message is raised to notify you.
16919
16920=end original
16921
16922(D deprecated) 一部の特性は Unicode によって廃止予定とされており、
16923最終的に標準から削除されるかもしれません; その時点で Perl も追随します。
16924今のところは、通知のためにこのメッセージが発生します。
16925
16926=item Use of inherited AUTOLOAD for non-method %s::%s() is no longer allowed
16927
16928=begin original
16929
16930(F) As an accidental feature, C<AUTOLOAD> subroutines were looked up as
16931methods (using the C<@ISA> hierarchy), even when the subroutines to be
16932autoloaded were called as plain functions (e.g. C<Foo::bar()>), not as
16933methods (e.g. C<< Foo->bar() >> or C<< $obj->bar() >>).
16934
16935=end original
16936
16937(F) 偶発的な仕様によって、C<AUTOLOAD> サブルーチンは、
16938autoload されるサブルーチンがメソッド (C<< Foo->bar() >> や
16939C<< $obj->bar() >>) ではなく、普通の関数 (C<Foo::bar()>) として
16940呼び出された場合にも、(C<@ISA> 階層を使って) メソッドとして検索していました。
16941
16942=begin original
16943
16944This was deprecated in Perl 5.004, and was made fatal in Perl 5.28.
16945
16946=end original
16947
16948この機能は Perl 5.004 で廃止予定になり、Perl 5.28 で致命的エラーになりました。
16949
870516950=item Use of %s in printf format not supported
870616951
870716952=begin original
870816953
870916954(F) You attempted to use a feature of printf that is accessible from
871016955only C. This usually means there's a better way to do it in Perl.
871116956
871216957=end original
871316958
871416959(F) C でのみアクセス可能な printf の機能を使おうとしました。
871516960これは普通 Perl で行うより良い方法があります。
871616961
8717=item Use of $* is deprecated
16962=item Use of -l on filehandle%s
871816963
871916964=begin original
872016965
8721(D deprecated) This variable magically turned on multi-line pattern
16966(W io) A filehandle represents an opened file, and when you opened the file
8722matching, both for you and for any luckless subroutine that you happen
16967it already went past any symlink you are presumably trying to look for.
8723to call. You should use the new C<//m> and C<//s> modifiers now to do
16968The operation returned C<undef>. Use a filename instead.
8724that without the dangerous action-at-a-distance effects of C<$*>.
872516969
872616970=end original
872716971
8728(D) この変数、自分のスクリトでも、またま呼んだ先のサブーティンでも、
16972(F) ファイルオーンされファイを表わすのであり
8729複数行のパターンマッチを有効にしてしまます。
16973ファイルをオしたときは、探しているシンボリックリンクは、
8730C<$*> の離れたところ与える危険な影響を避けてこれを行なうめに、
16974通り過ぎ後です。
8731新しい C<//m> 修飾子と C<//s> 修飾子使ってください
16975この操作は C<undef> を返します
16976代わりにファイル名を使ってください。
873216977
8733=item Use of %s is deprecated
16978=item Use of reference "%s" as array index
873416979
873516980=begin original
873616981
8737(D deprecated) The construct indicated is no longer recommended for use,
16982(W misc) You tried to use a reference as an array index; this probably
8738generally because there's a better way to do it, and also because the
16983isn't what you mean, because references in numerical context tend
8739old way has bad side effects.
16984to be huge numbers, and so usually indicates programmer error.
874016985
874116986=end original
874216987
8743(D deprecated) た構文は、もはや使うが推奨されせん。
16988(W misc) リファレンスを配列の添え字と使うとした; これはおそらく
8744一般にはもっと良方法があからあり、また古い方法、悪副作用が
16989望んでいることではでしょう; なぜなら数値コンテキストでの
8745からす。
16990リファレンスはとても大きな数になことが多いの、普通はプログラマの
16991ミスを意味しています。
874616992
8747=item Use of $# is deprecated
16993=begin original
874816994
16995If you really do mean it, explicitly numify your reference, like so:
16996C<$array[0+$ref]>. This warning is not given for overloaded objects,
16997however, because you can overload the numification and stringification
16998operators and then you presumably know what you are doing.
16999
17000=end original
17001
17002本当にそうしたい場合は、C<$array[0+$ref]> のように、リファレンスを明示的に
17003数値化してください。
17004しかし、この警告はオーバーロードされたオブジェクトでは発生しません;
17005数値化と文字列化の演算子をオーバーロードして、何をしているかをわかっていると
17006仮定できるからです。
17007
17008=item Use of strings with code points over 0xFF as arguments to %s
17009operator is not allowed
17010
874917011=begin original
875017012
8751(D deprecated) This was an ill-advised attempt to emulate a poorly
17013(F) You tried to use one of the string bitwise operators (C<&> or C<|> or C<^> or
8752defined B<awk> feature. Use an explicit printf() or sprintf() instead.
17014C<~>) on a string containing a code point over 0xFF. The string bitwise
17015operators treat their operands as strings of bytes, and values beyond
170160xFF are nonsensical in this context.
875317017
875417018=end original
875517019
8756(D deprecated) これは、貧相な awk機能エミュレートしようとする
17020(F) 文字列ビット単位演算子 (C<&> や C<|> や C<^> や C<~>) 一つ
8757ものでした。
170210xFF を超える符号位置を含む文字列に使おうとしました。
8758代わりに、明示的に printf() や sprintf() 使っくださ
17022ビット単位文字列演算子はオペランドバイト文字列とし
170230xFF を超える値はこの文脈では無意味です。
875917024
8760=item Use of reserved word "%s" is deprecated
17025=begin original
876117026
17027This became fatal in Perl 5.28.
17028
17029=end original
17030
17031このような使用法は Perl 5.28 で致命的エラーになりました。
17032
17033=item Use of strings with code points over 0xFF as arguments to C<vec>
17034is deprecated. This will be a fatal error in Perl 5.32
17035
876217036=begin original
876317037
8764(D deprecated) The indicated bareword is a reserved word. Future
17038(D deprecated) You tried to use L<C<vec>|perlfunc/vec EXPR,OFFSET,BITS>
8765versions of perl may use it as a keyword, so you're better off either
17039on a string containing a code point over 0xFF, which is nonsensical here.
8766explicitly quoting the word in a manner appropriate for its context of
8767use, or using a different name altogether. The warning can be
8768suppressed for subroutine names by either adding a C<&> prefix, or using
8769a package qualifier, e.g. C<&our()>, or C<Foo::our()>.
877017040
877117041=end original
877217042
8773(D deprecated) 示されてい裸の単語は予約語です。
17043(D deprecated) 0xFF を超え符号位置を含む文字列に対して
8774将来のバージョンの perl ではこれキーワードとして使う可能性があるので、
17044L<C<vec>|perlfunc/vec EXPR,OFFSET,BITS> を使としました;
8775使っているコンテキストに適した形単語をクォートするか、違う名前を
17045これはここは意味がありません。
8776使ってください。
8777この警告は、サブルーチン名の前に C<&> を付ける(C<&our()>)か、
8778パッケージ修飾子を付ける(C<Foo::our()>)ことで消すことができます。
877917046
17047=begin original
17048
17049Such usage will be a fatal error in Perl 5.32.
17050
17051=end original
17052
17053このような使用法は Perl 5.32 で致命的エラーになる予定です。
17054
17055=item Use of tainted arguments in %s is deprecated
17056
17057=begin original
17058
17059(W taint, deprecated) You have supplied C<system()> or C<exec()> with multiple
17060arguments and at least one of them is tainted. This used to be allowed
17061but will become a fatal error in a future version of perl. Untaint your
17062arguments. See L<perlsec>.
17063
17064=end original
17065
17066(W taint, deprecated) C<system()> や C<exec()> に複数の引数を与えましたが、
17067そのうち少なくとも一つが汚染されています。
17068これは許されていましたが、将来のバージョンの perl では致命的エラーに
17069なるでしょう。
17070引数を浄化してください。
17071L<perlsec> を参照してください。
17072
17073=item Use of unassigned code point or non-standalone grapheme for a
17074delimiter will be a fatal error starting in Perl 5.30
17075
17076=begin original
17077
17078(D deprecated)
17079A grapheme is what appears to a native-speaker of a language to be a
17080character. In Unicode (and hence Perl) a grapheme may actually be
17081several adjacent characters that together form a complete grapheme. For
17082example, there can be a base character, like "R" and an accent, like a
17083circumflex "^", that appear when displayed to be a single character with
17084the circumflex hovering over the "R". Perl currently allows things like
17085that circumflex to be delimiters of strings, patterns, I<etc>. When
17086displayed, the circumflex would look like it belongs to the character
17087just to the left of it. In order to move the language to be able to
17088accept graphemes as delimiters, we have to deprecate the use of
17089delimiters which aren't graphemes by themselves. Also, a delimiter must
17090already be assigned (or known to be never going to be assigned) to try
17091to future-proof code, for otherwise code that works today would fail to
17092compile if the currently unassigned delimiter ends up being something
17093that isn't a stand-alone grapheme. Because Unicode is never going to
17094assign
17095L<non-character code points|perlunicode/Noncharacter code points>, nor
17096L<code points that are above the legal Unicode maximum|
17097perlunicode/Beyond Unicode code points>, those can be delimiters, and
17098their use won't raise this warning.
17099
17100=end original
17101
17102(D deprecated)
17103書記素は言語のネイティブスピーカーにとって文字のように見えるものです。
17104Unicode (従って Perl) では、
17105書記素は実際には互いに完全な書記素を形成するいくつかの隣接する
17106文字かもしれません。
17107例えば、"R" のような基底文字と曲折アクセント "^" のような
17108アクセントかもしれません; これは表示されるときには
17109"R" の上に曲折アクセントがある単一の文字となります。
17110Perl は現在の所曲折アクセントのようなものを文字列、パターンなどの
17111区切り文字にすることを許しています。
17112表示されるとき、曲折アクセントは、
17113そのすぐ左にある文字に付属するかのように見えます。
17114言語が書記素を区切り文字として受けいられられるようにするために、
17115それ自体が書記素でない区切り文字の使用を廃止予定にする必要があります。
17116また、区切り文字は将来も動作するコードであり続けるために、
17117既に割り当てられている(または決して割り当てられないと分かっている)
17118ものでなければなりません;
17119さもなければ、もし現在割り当てられていない書記素が単体の書記素でないものに
17120なった場合、今日動作しているコードがコンパイルに失敗することになります。
17121Unicode は決して
17122L<非文字符号位置|perlunicode/Noncharacter code points> や
17123L<正当な Unicode の最大値より大きな符号位置|
17124perlunicode/Beyond Unicode code points> を割り当てないので、
17125これらは区切り文字になることができ、これらの使用は警告を発生させません。
17126
878017127=item Use of uninitialized value%s
878117128
878217129=begin original
878317130
878417131(W uninitialized) An undefined value was used as if it were already
878517132defined. It was interpreted as a "" or a 0, but maybe it was a mistake.
878617133To suppress this warning assign a defined value to your variables.
878717134
878817135=end original
878917136
879017137(W uninitialized) 未定義値を、あたかも既に定義されているかのように
879117138使用しました。
879217139これは、"" か 0 と解釈されますが、間違いの可能性があります。
879317140この警告を止めるには、変数に定義された値を代入してください。
879417141
879517142=begin original
879617143
8797To help you figure out what was undefined, perl tells you what operation
17144To help you figure out what was undefined, perl will try to tell you
8798you used the undefined value in. Note, however, that perl optimizes your
17145the name of the variable (if any) that was undefined. In some cases
8799program and the operation displayed in the warning may not necessarily
17146it cannot do this, so it also tells you what operation you used the
8800appear literally in your program. For example, C<"that $foo"> is
17147undefined value in. Note, however, that perl optimizes your program
8801usually optimized into C<"that " . $foo>, and the warning will refer to
17148and the operation displayed in the warning may not necessarily appear
8802the C<concatenation (.)> operator, even though there is no C<.> in your
17149literally in your program. For example, C<"that $foo"> is usually
8803program.
17150optimized into C<"that " . $foo>, and the warning will refer to the
17151C<concatenation (.)> operator, even though there is no C<.> in
17152your program.
880417153
880517154=end original
880617155
8807To help you figure out what was undefined, perl tells you what operation
17156何が未定義なのかを見つけ出す助けにするために、perl は(あれば)未定義である
8808you used the undefined value in. Note, however, that perl optimizes your
17157変数名を示します。
8809program and the operation displayed in the warning may not necessarily
17158それができないような場合では、未定義値を使った操作を示します。
8810appear literally in your program. For example, C<"that $foo"> is
17159しかし、perl がプログラムを最適化するので、文字通りにはプログラム中に
8811usually optimized into C<"that " . $foo>, and the warning will refer to
17160現れない操作についての警告が表示されるかもしれないことに注意してください。
8812the C<concatenation (.)> operator, even though there is no C<.> in your
17161例えば、C<"that $foo"> C<"that " . $foo> に最適化されるので、
8813program.
17162たとえプログラム中に C<連結 (.)> 演算子がなくても C<.> に関する警告が
17163出ます。
881417164
17165=item "use re 'strict'" is experimental
17166
17167=begin original
17168
17169(S experimental::re_strict) The things that are different when a regular
17170expression pattern is compiled under C<'strict'> are subject to change
17171in future Perl releases in incompatible ways. This means that a pattern
17172that compiles today may not in a future Perl release. This warning is
17173to alert you to that risk.
17174
17175=end original
17176
17177(S experimental::re_strict) 正規表現が C<'strict'> の基で
17178コンパイルされたときに何が異なるかは、
17179将来の Perl のリリースで互換性のない形で変更される予定です。
17180つまり、今日コンパイルしたパターンは将来の Perl リリースのものとは
17181違うかもしれません。
17182この警告はそのリスクを知らせるためのものです。
17183
17184=item Use \x{...} for more than two hex characters in regex; marked by
17185S<<-- HERE> in m/%s/
17186
17187=begin original
17188
17189(F) In a regular expression, you said something like
17190
17191=end original
17192
17193(F) 正規表現で、以下のようなことをしました
17194
17195 (?[ [ \xBEEF ] ])
17196
17197=begin original
17198
17199Perl isn't sure if you meant this
17200
17201=end original
17202
17203Perl は、これが以下のものを意味しているのか
17204
17205 (?[ [ \x{BEEF} ] ])
17206
17207=begin original
17208
17209or if you meant this
17210
17211=end original
17212
17213それとも次のものかがわかりません。
17214
17215 (?[ [ \x{BE} E F ] ])
17216
17217=begin original
17218
17219You need to add either braces or blanks to disambiguate.
17220
17221=end original
17222
17223明確にするために大かっこか空白を追加する必要があります。
17224
17225=item Using just the first character returned by \N{} in character class in
17226regex; marked by S<<-- HERE> in m/%s/
17227
17228=begin original
17229
17230(W regexp) Named Unicode character escapes C<(\N{...})> may return
17231a multi-character sequence. Even though a character class is
17232supposed to match just one character of input, perl will match
17233the whole thing correctly, except when the class is inverted
17234(C<[^...]>), or the escape is the beginning or final end point of
17235a range. For these, what should happen isn't clear at all. In
17236these circumstances, Perl discards all but the first character
17237of the returned sequence, which is not likely what you want.
17238
17239=end original
17240
17241(W regexp) 名前付き Unicode 文字エスケープ C<(\N{...})> は
17242複数文字並びを返すことがあります。
17243文字クラスは入力のただ一つの文字にマッチングすることを想定していますが、
17244perl は全体を正しくマッチングします; 但し例外は、
17245クラスが反転された場合 (C<[^...]>) と、
17246エスケープが範囲の始点か終点の場合です。
17247これらの場合、何をするべきかは全く明らかではありません。
17248このため、Perl は返された並びの最初以外の文字を捨てます;
17249おそらくこれはあなたが求めているものではないでしょう。
17250
17251=item Using /u for '%s' instead of /%s in regex; marked by S<<-- HERE> in m/%s/
17252
17253=begin original
17254
17255(W regexp) You used a Unicode boundary (C<\b{...}> or C<\B{...}>) in a
17256portion of a regular expression where the character set modifiers C</a>
17257or C</aa> are in effect. These two modifiers indicate an ASCII
17258interpretation, and this doesn't make sense for a Unicode definition.
17259The generated regular expression will compile so that the boundary uses
17260all of Unicode. No other portion of the regular expression is affected.
17261
17262=end original
17263
17264(W regexp) 文字集合修飾子 C</a> または C</aa> が有効の場合に正規表現の一部で
17265Unicode 境界 (C<\b{...}> または C<\B{...}>) を使いました。
17266これら二つの修飾子は ASCII での解釈を示していて、これは
17267Unicode の定義では意味がありません。
17268生成された正規表現は、境界は全て Unicode としてコンパイルします。
17269正規表現のその他の部分は影響を受けません。
17270
17271=item Using !~ with %s doesn't make sense
17272
17273=begin original
17274
17275(F) Using the C<!~> operator with C<s///r>, C<tr///r> or C<y///r> is
17276currently reserved for future use, as the exact behavior has not
17277been decided. (Simply returning the boolean opposite of the
17278modified string is usually not particularly useful.)
17279
17280=end original
17281
17282(F) C<s///r>, C<tr///r>, C<y///r> での C<!~> 演算子の使用は、正確な振る舞いが
17283まだ決定されていないので、将来の使用のために予約されています。
17284(単に修正された文字列の真偽値としての逆を返すのは普通特に
17285有用ではありません。)
17286
17287=item UTF-16 surrogate U+%X
17288
17289=begin original
17290
17291(S surrogate) You had a UTF-16 surrogate in a context where they are
17292not considered acceptable. These code points, between U+D800 and
17293U+DFFF (inclusive), are used by Unicode only for UTF-16. However, Perl
17294internally allows all unsigned integer code points (up to the size limit
17295available on your platform), including surrogates. But these can cause
17296problems when being input or output, which is likely where this message
17297came from. If you really really know what you are doing you can turn
17298off this warning by C<no warnings 'surrogate';>.
17299
17300=end original
17301
17302(S surrogate) 受け付けられないと考えられる場所に UTF-16 サロゲートを
17303使いました。
17304これらの符号位置、U+D800 から U+DFFF (両端含む) は UTF-16 のためだけに
17305Unicode によって使われます。
17306しかし Perl は、サロゲートを含む、内部で全ての符号なし整数の符号位置(最大値は
17307プラットフォームで利用可能なサイズ上限)を受け付けます。
17308しかし、これらは入力や出力になるときに問題を引き起こします; それは
17309おそらくこのメッセージが出た場所です。
17310自分で何をしているのかが本当に本当に分かっているなら、
17311C<no warnings 'surrogate';> とすることでこの警告をオフにできます。
17312
881517313=item Value of %s can be "0"; test with defined()
881617314
881717315=begin original
881817316
881917317(W misc) In a conditional expression, you used <HANDLE>, <*> (glob),
882017318C<each()>, or C<readdir()> as a boolean value. Each of these constructs
882117319can return a value of "0"; that would make the conditional expression
882217320false, which is probably not what you intended. When using these
882317321constructs in conditional expressions, test their values with the
882417322C<defined> operator.
882517323
882617324=end original
882717325
882817326(W misc) 条件式の中で、<HANDLE>, <*> (グロブ), C<each()>, C<readdir()> を
882917327真偽値として使いました。
883017328これらの構文は値 "0" を返すことがあります; これは条件式では偽を示しますが、
883117329これはおそらく望んでいることではないでしょう。
883217330これらの構文を条件式の中で使うときは、その値を C<defined> 演算子で
883317331テストしてください。
883417332
883517333=item Value of CLI symbol "%s" too long
883617334
883717335=begin original
883817336
883917337(W misc) A warning peculiar to VMS. Perl tried to read the value of an
884017338%ENV element from a CLI symbol table, and found a resultant string
884117339longer than 1024 characters. The return value has been truncated to
8842173401024 characters.
884317341
884417342=end original
884517343
8846(W misc) VMS 固有の警告です。
17344(W misc) VMS 固有の警告です。
884717345Perl は CLI シンボルテーブルから %ENV 要素の値を読み込もうとしましたが、
884817346結果の文字列が 1024 文字を越えました。
884917347返り値は 1024 文字に切り詰められます。
885017348
17349=item Variable "%s" is not available
17350
17351=begin original
17352
17353(W closure) During compilation, an inner named subroutine or eval is
17354attempting to capture an outer lexical that is not currently available.
17355This can happen for one of two reasons. First, the outer lexical may be
17356declared in an outer anonymous subroutine that has not yet been created.
17357(Remember that named subs are created at compile time, while anonymous
17358subs are created at run-time.) For example,
17359
17360=end original
17361
17362(W closure) コンパイル中に、内側の名前付きサブルーチンや eval が
17363まだ利用可能でない外側のレキシカルを捕捉しようとしました。
17364これは二つの理由で起こります。
17365まず、外側のレキシカルが、まだ作成されていない外側の無名サブルーチンで
17366定義されている場合です。
17367(名前付きサブルーチンはコンパイル時に作成されますが、無名サブルーチンは
17368実行時に作成されることを思い出してください。)
17369例えば、
17370
17371 sub { my $a; sub f { $a } }
17372
17373=begin original
17374
17375At the time that f is created, it can't capture the current value of $a,
17376since the anonymous subroutine hasn't been created yet. Conversely,
17377the following won't give a warning since the anonymous subroutine has by
17378now been created and is live:
17379
17380=end original
17381
17382f が作成された時点で、$a の現在の値を捕捉できません;
17383なぜなら無名サブルーチンはまだ作成されていないからです。
17384逆に、以下のものは警告されません; 無名サブルーチンはこの時点で作成されていて
17385生きているからです:
17386
17387 sub { my $a; eval 'sub f { $a }' }->();
17388
17389=begin original
17390
17391The second situation is caused by an eval accessing a variable that has
17392gone out of scope, for example,
17393
17394=end original
17395
173962 番目の状況は eval がスコープ外となった変数にアクセスすることで起こります;
17397例えば:
17398
17399 sub f {
17400 my $a;
17401 sub { eval '$a' }
17402 }
17403 f()->();
17404
17405=begin original
17406
17407Here, when the '$a' in the eval is being compiled, f() is not currently
17408being executed, so its $a is not available for capture.
17409
17410=end original
17411
17412ここで、eval の中の '$a' がコンパイルされるとき、f() はまだ
17413実行されていないので、この $a は捕捉出来ません。
17414
885117415=item Variable "%s" is not imported%s
885217416
885317417=begin original
885417418
8855(F) While "use strict" in effect, you referred to a global variable that
17419(S misc) With "use strict" in effect, you referred to a global variable
8856you apparently thought was imported from another module, because
17420that you apparently thought was imported from another module, because
885717421something else of the same name (usually a subroutine) is exported by
885817422that module. It usually means you put the wrong funny character on the
885917423front of your variable.
886017424
886117425=end original
886217426
8863(F) "use strict" が有効のときに、見たところ他のモジュールから
17427(S misc) "use strict" が有効のときに、見たところ他のモジュールから
886417428インポートされたとあなたが考えたグローバル変数を参照しました;
886517429なぜなら同じ名前の何か他のもの(通常はサブルーチン)がそのモジュールから
886617430エクスポートされています。
886717431これは普通は変数の前に間違ったおかしな文字を置いたことを意味します。
886817432
8869=item "%s" variable %s masks earlier declaration in same %s
17433=item Variable length lookbehind not implemented in regex m/%s/
887017434
887117435=begin original
887217436
8873(W misc) A "my" or "our" variable has been redeclared in the current
17437(F) Lookbehind is allowed only for subexpressions whose length is fixed and
8874scope or statement, effectively eliminating all access to the previous
17438known at compile time. For positive lookbehind, you can use the C<\K>
8875instance. This is almost always a typographical error. Note that the
17439regex construct as a way to get the equivalent functionality. See
8876earlier variable will still exist until the end of the scope or until
17440L<(?<=pattern) and \K in perlre|perlre/\K>.
8877all closure referents to it are destroyed.
887817441
887917442=end original
888017443
8881(W misc) 現在のスコープや文で "my" 変数や "our" 変数が再宣言れたので、
17444(F) 後方参照は長が固定で、コンパイル時に確定している副式に対してのみ
8882以前の実体への全てのアクセスがきなくなりました
17445可能
8883これはほとんど場合タイプミスです。
17446後方参照は、等価な機能を得るために C<\K> 正規表現構文が使えます。
8884以前の変数は、スコープが終わるか、それを参照している全てのクロージャが
17447L<(?<=pattern) and \K in perlre|perlre/\K> を参照してくださ
8885破壊されるまでは存在し続けることに注意してください。
888617448
8887=item Variable "%s" may be unavailable
17449=begin original
888817450
17451Starting in Perl 5.18, there are non-obvious Unicode rules under C</i>
17452that can match variably, but which you might not think could. For
17453example, the substring C<"ss"> can match the single character LATIN
17454SMALL LETTER SHARP S. Here's a complete list of the current ones
17455affecting ASCII characters:
17456
17457=end original
17458
17459Perl 5.18 から、C</i> の下では、おそらくあなたが考えていないような
17460種類のものにマッチングするという、明確でない Unicode の規則があります。
17461例えば、部分文字列 C<"ss"> は単一文字 LATIN SMALL LETTER SHARP S に
17462マッチングします。
17463以下は ASCII 文字に影響を与える現在のものの完全な一覧です:
17464
17465 ASCII
17466 sequence Matches single letter under /i
17467 FF U+FB00 LATIN SMALL LIGATURE FF
17468 FFI U+FB03 LATIN SMALL LIGATURE FFI
17469 FFL U+FB04 LATIN SMALL LIGATURE FFL
17470 FI U+FB01 LATIN SMALL LIGATURE FI
17471 FL U+FB02 LATIN SMALL LIGATURE FL
17472 SS U+00DF LATIN SMALL LETTER SHARP S
17473 U+1E9E LATIN CAPITAL LETTER SHARP S
17474 ST U+FB06 LATIN SMALL LIGATURE ST
17475 U+FB05 LATIN SMALL LIGATURE LONG S T
17476
888917477=begin original
889017478
8891(W closure) An inner (nested) I<anonymous> subroutine is inside a
17479This list is subject to change, but is quite unlikely to.
8892I<named> subroutine, and outside that is another subroutine; and the
17480Each ASCII sequence can be any combination of upper- and lowercase.
8893anonymous (innermost) subroutine is referencing a lexical variable
8894defined in the outermost subroutine. For example:
889517481
889617482=end original
889717483
8898(W closure) 内部(ネストた) I<無名> サブルーチン I<名前つき>
17484一覧は変更されるかもれません、かなり起こりにくいです。
8899サブルーチンの内側にあり、その外側別のサブルーチンで;
17485れぞれ ASCII 並び大文字と小文字が組み合わさっている場合もありま
8900そして無名の(一番内側の)サブルーチンが一番外側のサブルーチンで
8901定義されているレキシカル変数で参照されています。
8902例えば:
890317486
8904 sub outermost { my $a; sub middle { sub { $a } } }
17487=begin original
890517488
17489You can avoid this by using a bracketed character class in the
17490lookbehind assertion, like
17491
17492=end original
17493
17494次のように、後読み言明で大かっこ文字クラスを使うことでこれを防げます:
17495
17496 (?<![sS]t)
17497 (?<![fF]f[iI])
17498
890617499=begin original
890717500
8908If the anonymous subroutine is called or referenced (directly or
17501This fools Perl into not matching the ligatures.
8909indirectly) from the outermost subroutine, it will share the variable as
8910you would expect. But if the anonymous subroutine is called or
8911referenced when the outermost subroutine is not active, it will see the
8912value of the shared variable as it was before and during the *first*
8913call to the outermost subroutine, which is probably not what you want.
891417502
891517503=end original
891617504
8917無名サブルーチンが一番外側のサブルーチンから呼び出されるか(直接たは
17505これは合字にマッチングしないように Perl を騙しす。
8918間接に)リファレンスされたとき、予想通りに変数は共有されます。
8919しかし、一番外側のサブルーチンが有効でない時に無名サブルーチンが呼び出されたり
8920リファレンスされたりすると、共有された変数の値は一番外側のサブルーチンへの
8921最初の呼び出し前および呼び出し中のものになります;
8922これはおそらく望んでいることではないでしょう。
892317506
892417507=begin original
892517508
8926In these circumstances, it is usually best to make the middle subroutine
17509Another option for Perls starting with 5.16, if you only care about
8927anonymous, using the C<sub {}> syntax. Perl has specific support for
17510ASCII matches, is to add the C</aa> modifier to the regex. This will
8928shared variables in nested anonymous subroutines; a named subroutine in
17511exclude all these non-obvious matches, thus getting rid of this message.
8929between interferes with this feature.
17512You can also say
893017513
893117514=end original
893217515
8933このような状況では、普通は C<sub {}> 構文を使って、サブルーチン middle を
17516Perl v5.16 からのもう一つの選択肢として、
8934無名るのが最良です。
17517もし ASCII のマッチングだけ関心があるのなら、
8935Perl はネストした無名サブルーチンで変数共有する機能サポートしいます;
17518正規表現に C</aa> 追加することでこれらの明確でないマッチング
8936この機能インタフェースの間の名前付きサブルーチンです。
17519除くとができるで、こメッセジを避けられます。
17520また、次のようにすることで:
893717521
17522 use if $] ge 5.016, re => '/aa';
17523
17524=begin original
17525
17526to apply C</aa> to all regular expressions compiled within its scope.
17527See L<re>.
17528
17529=end original
17530
17531スコープ内でコンパイルされた全ての正規表現に対して C</aa> を適用します。
17532L<re> を参照してください。
17533
17534=item "%s" variable %s masks earlier declaration in same %s
17535
17536=begin original
17537
17538(W shadow) A "my", "our" or "state" variable has been redeclared in the
17539current scope or statement, effectively eliminating all access to the
17540previous instance. This is almost always a typographical error. Note
17541that the earlier variable will still exist until the end of the scope
17542or until all closure references to it are destroyed.
17543
17544=end original
17545
17546(W shadow) 現在のスコープや文で "my", "our", "state" 変数が再宣言されたので、
17547以前の実体への全てのアクセスができなくなりました。
17548これはほとんど常にタイプミスです。
17549以前の変数は、スコープが終わるか、それを参照している全てのクロージャが
17550破壊されるまでは存在し続けることに注意してください。
17551
893817552=item Variable syntax
893917553
894017554=begin original
894117555
894217556(A) You've accidentally run your script through B<csh> instead
894317557of Perl. Check the #! line, or manually feed your script into
894417558Perl yourself.
894517559
894617560=end original
894717561
894817562(A) スクリプトを perl ではなく B<csh> で実行しようとしました。
894917563#! 行をチェックするか、スクリプトを直接 Perl で起動してください。
895017564
895117565=item Variable "%s" will not stay shared
895217566
895317567=begin original
895417568
895517569(W closure) An inner (nested) I<named> subroutine is referencing a
8956lexical variable defined in an outer subroutine.
17570lexical variable defined in an outer named subroutine.
895717571
895817572=end original
895917573
896017574(W closure) 内部の(ネストした) I<名前付き> サブルーチンが、
8961外側のサブルーチンで定義したレキシカル変数を参照しています。
17575外側の名前付きサブルーチンで定義したレキシカル変数を参照しています。
896217576
896317577=begin original
896417578
8965When the inner subroutine is called, it will probably see the value of
17579When the inner subroutine is called, it will see the value of
896617580the outer subroutine's variable as it was before and during the *first*
896717581call to the outer subroutine; in this case, after the first call to the
896817582outer subroutine is complete, the inner and outer subroutines will no
896917583longer share a common value for the variable. In other words, the
897017584variable will no longer be shared.
897117585
897217586=end original
897317587
8974内側のサブルーチンが呼び出された時、おそらく外側のサブルーチンの値は
17588内側のサブルーチンが呼び出されるとき
8975最初の外側のサブルーチン呼び出し前および呼び出し中ものになります;
17589外側のサブルーチンの変数値は、
8976場合、外側のサブルーチンへの最初の呼び出しが終了た後、内側と
17590「最初外側のサブルーチンへの呼び出し前および呼び出中のものになります;
8977外側のサブルーチンは変数に関て同じ値を共有なくなります。
17591この場合、外側のサブルーチンへの最初の呼び出が終了た後、
8978言い換える変数はもはや共有されせん
17592内側外側のサブルーチンはこの変数に関して同じ値を共有しなくなり
17593言い換えると、この変数はもはや共有されません。
897917594
898017595=begin original
898117596
8982Furthermore, if the outer subroutine is anonymous and references a
8983lexical variable outside itself, then the outer and inner subroutines
8984will I<never> share the given variable.
8985
8986=end original
8987
8988さらに、外側のサブルーチンが無名で、それ自身の外側のレキシカル変数を
8989参照している場合、外側と内側のサブルーチンは与えられた変数は
8990共有 I<しません>。
8991
8992=begin original
8993
899417597This problem can usually be solved by making the inner subroutine
899517598anonymous, using the C<sub {}> syntax. When inner anonymous subs that
8996reference variables in outer subroutines are called or referenced, they
17599reference variables in outer subroutines are created, they
899717600are automatically rebound to the current values of such variables.
899817601
899917602=end original
900017603
900117604この問題は普通、C<sub {}> 構文を使って内側のサブルーチンを無名にすることで
900217605解決します。
900317606外側のサブルーチンの変数を参照している内側の無名サブルーチンが
9004呼び出されたり参照されたとき、これらはそのような変数の現在の値に
17607作成されたとき、これらはそのような変数の現在の値に自動的に回復します。
9005自動的に回復します。
900617608
9007=item Variable length lookbehind not implemented before << HERE in %s
17609=item vector argument not supported with alpha versions
900817610
900917611=begin original
901017612
9011(F) Lookbehind is allowed only for subexpressions whose length is fixed and
17613(S printf) The %vd (s)printf format does not support version objects
9012known at compile time. The << HERE shows in the regular expression about where
17614with alpha parts.
9013the problem was discovered.
901417615
901517616=end original
901617617
9017(F) 後方参照長さが固定で、コンパイ時に確定している副式に対してみ可能です。
17618(S printf) %vd (s)printf フォーマットファ部分ある
9018<< HERE で正規表現のどこ問題が発見されたかを示していま
17619バージョンオブジェクト対応していません
901917620
17621=item Verb pattern '%s' has a mandatory argument in regex; marked by
17622S<<-- HERE> in m/%s/
17623
17624=begin original
17625
17626(F) You used a verb pattern that requires an argument. Supply an
17627argument or check that you are using the right verb.
17628
17629=end original
17630
17631(F) 引き数が必要な動詞パターンを使いました。
17632引き数を追加するか、正しい動詞を使ってください。
17633
17634=item Verb pattern '%s' may not have an argument in regex; marked by
17635S<<-- HERE> in m/%s/
17636
17637=begin original
17638
17639(F) You used a verb pattern that is not allowed an argument. Remove the
17640argument or check that you are using the right verb.
17641
17642=end original
17643
17644(F) 引き数が認められていない動詞パターンを使いました。
17645引き数を削除するか、正しい動詞を使ってください。
17646
17647=item Version control conflict marker
17648
17649=begin original
17650
17651(F) The parser found a line starting with C<E<lt><<<<<<>,
17652C<E<gt>E<gt>E<gt>E<gt>E<gt>E<gt>E<gt>>, or C<=======>. These may be left by a
17653version control system to mark conflicts after a failed merge operation.
17654
17655=end original
17656
17657(F) パーサは C<E<lt><<<<<<>,
17658C<E<gt>E<gt>E<gt>E<gt>E<gt>E<gt>E<gt>>, C<=======> で始まる行を発見しました。
17659これらはマージ操作に失敗したあと衝突を記録するために
17660バージョン制御システムによって残されたものかもしれません。
17661
902017662=item Version number must be a constant number
902117663
902217664=begin original
902317665
902417666(P) The attempt to translate a C<use Module n.n LIST> statement into
902517667its equivalent C<BEGIN> block found an internal inconsistency with
902617668the version number.
902717669
902817670=end original
902917671
903017672(P) C<use Module n.n LIST> 文を等価な C<BEGIN> ブロックに変換しようと
903117673したときに、バージョン番号について内部の不整合を発見しました。
903217674
17675=item Version string '%s' contains invalid data; ignoring: '%s'
17676
17677=begin original
17678
17679(W misc) The version string contains invalid characters at the end, which
17680are being ignored.
17681
17682=end original
17683
17684(W misc) バージョン文字列の末尾に不正な文字が含まれていたので、その文字は
17685無視されます。
17686
903317687=item Warning: something's wrong
903417688
903517689=begin original
903617690
903717691(W) You passed warn() an empty string (the equivalent of C<warn "">) or
9038you called it with no args and C<$_> was empty.
17692you called it with no args and C<$@> was empty.
903917693
904017694=end original
904117695
904217696(W) warn() に空文字列を渡した (C<warn ""> と透過です) か、
9043引数なしで呼び出され、C<$_> も空でした。
17697引数なしで呼び出され、C<$@> も空でした。
904417698
904517699=item Warning: unable to close filehandle %s properly
904617700
904717701=begin original
904817702
904917703(S) The implicit close() done by an open() got an error indication on
905017704the close(). This usually indicates your file system ran out of disk
905117705space.
905217706
905317707=end original
905417708
905517709(S) open() によって暗黙のうちに行なわれる close() が、
905617710close() のエラーとなりました。
905717711通常、ファイルシステムがいっぱいであることを示します。
905817712
17713=item Warning: unable to close filehandle properly: %s
17714
17715=item Warning: unable to close filehandle %s properly: %s
17716
17717=begin original
17718
17719(S io) There were errors during the implicit close() done on a filehandle
17720when its reference count reached zero while it was still open, e.g.:
17721
17722=end original
17723
17724(S io) まだ開いているけれども参照カウントがゼロになったときに
17725ファイルハンドルに対して行われる暗黙の close() 中にエラーが起きました;
17726例えば:
17727
17728 {
17729 open my $fh, '>', $file or die "open: '$file': $!\n";
17730 print $fh $data or die "print: $!";
17731 } # implicit close here
17732
17733=begin original
17734
17735Because various errors may only be detected by close() (e.g. buffering could
17736allow the C<print> in this example to return true even when the disk is full),
17737it is dangerous to ignore its result. So when it happens implicitly, perl
17738will signal errors by warning.
17739
17740=end original
17741
17742様々なエラーは close() によってのみ検出される
17743(バッファリングによって、この例の C<print> はディスクフルの場合でも
17744真を返すことが可能です)ので、
17745その結果を無視するのは危険です。
17746従って、それが暗黙に起きたとき、perl は警告によってエラーを知らせます。
17747
17748=begin original
17749
17750B<Prior to version 5.22.0, perl ignored such errors>, so the common idiom shown
17751above was liable to cause B<silent data loss>.
17752
17753=end original
17754
17755B<バージョン 5.22.0 より前では、perl はこのようなエラーを無視していました>;
17756従って、前述のような一般的な慣用句は
17757B<暗黙なデータの損失> を引き起こすことがありました。
17758
905917759=item Warning: Use of "%s" without parentheses is ambiguous
906017760
906117761=begin original
906217762
906317763(S ambiguous) You wrote a unary operator followed by something that
906417764looks like a binary operator that could also have been interpreted as a
906517765term or unary operator. For instance, if you know that the rand
906617766function has a default argument of 1.0, and you write
906717767
906817768=end original
906917769
907017770(S ambiguous) 単項演算子の後に、何か項にも単項演算子にも解釈できる、
907117771二項演算子のようなものが置かれました。
907217772たとえば、rand 関数がデフォルトの引数として、1.0 をとることを知って
907317773いれば、以下のように書いて:
907417774
907517775 rand + 5;
907617776
907717777=begin original
907817778
907917779you may THINK you wrote the same thing as
908017780
908117781=end original
908217782
908317783以下の同じことと思うかもしれませんが:
908417784
908517785 rand() + 5;
908617786
908717787=begin original
908817788
908917789but in actual fact, you got
909017790
909117791=end original
909217792
909317793実際には以下のようになります:
909417794
909517795 rand(+5);
909617796
909717797=begin original
909817798
909917799So put in parentheses to say what you really mean.
910017800
910117801=end original
910217802
9103したがって、思うように解釈させるには、括弧が必要になります。
17803したがって、思うように解釈させるには、かっこが必要になります。
910417804
17805=item when is experimental
17806
17807=begin original
17808
17809(S experimental::smartmatch) C<when> depends on smartmatch, which is
17810experimental. Additionally, it has several special cases that may
17811not be immediately obvious, and their behavior may change or
17812even be removed in any future release of perl. See the explanation
17813under L<perlsyn/Experimental Details on given and when>.
17814
17815=end original
17816
17817(S experimental::smartmatch) C<when> は、実験的であるスマートマッチングに
17818依存しています。
17819さらに、完全に明らかとは言えないいくつかの特殊なケースがあるので、その
17820振る舞いは将来のリリースの perl で変更されたり削除されたりするかもしれません。
17821L<perlsyn/Experimental Details on given and when> の説明を参照してください。
17822
910517823=item Wide character in %s
910617824
910717825=begin original
910817826
9109(F) Perl met a wide character (>255) when it wasn't expecting one.
17827(S utf8) Perl met a wide character (ordinal >255) when it wasn't
17828expecting one. This warning is by default on for I/O (like print).
911017829
911117830=end original
911217831
9113(F) Perl が(想定していないところで)ワイド文字(>255)に遭遇しました。
17832(S utf8) Perl が(想定していないところで)ワイド文字(値が >255)に遭遇しました。
17833この警告は、(print のような) I/O に対してはデフォルトでオンです。
911417834
9115=item write() on closed filehandle %s
17835=begin original
911617836
17837If this warning does come from I/O, the easiest
17838way to quiet it is simply to add the C<:utf8> layer, I<e.g.>,
17839S<C<binmode STDOUT, ':utf8'>>. Another way to turn off the warning is
17840to add S<C<no warnings 'utf8';>> but that is often closer to
17841cheating. In general, you are supposed to explicitly mark the
17842filehandle with an encoding, see L<open> and L<perlfunc/binmode>.
17843
17844=end original
17845
17846この警告が I/O からのものなら、これを黙らせる最も簡単な方法は、
17847S<C<binmode STDOUT, ':utf8'>> のように
17848出力に単に C<:utf8> 層を追加することです。
17849もう一つの方法は S<C<no warnings 'utf8';>> を追加することですが、これは
17850しばしばいかさまに近い方法です。
17851一般的に、ファイルハンドルにはエンコーディングを明示的に指定することに
17852なっています; L<open> と L<perlfunc/binmode> を参照してください。
17853
911717854=begin original
911817855
9119(W closed) The filehandle you're writing to got itself closed sometime
17856If the warning comes from other than I/O, this diagnostic probably
9120before now. Check your logic flow.
17857indicates that incorrect results are being obtained. You should examine
17858your code to determine how a wide character is getting to an operation
17859that doesn't handle them.
912117860
912217861=end original
912317862
9124(W) 書き込みを行おうとしたファイルハンドルは既にクロズされています。
17863この警告が I/O 以外からのものこの診断メッセジは
9125論理フローチェックしてください。
17864おそらく正しくない結果が得られたこと意味しています
17865どのようにしてワイド文字が、それを扱えない操作に渡されたのかを
17866決定するために、ソースコードを調べる必要があります。
912617867
9127=item X outside of string
17868=item Wide character (U+%X) in %s
912817869
912917870=begin original
913017871
9131(F) You had a pack template that specified a relative position before
17872(W locale) While in a single-byte locale (I<i.e.>, a non-UTF-8
9132the beginning of the string being unpacked. See L<perlfunc/pack>.
17873one), a multi-byte character was encountered. Perl considers this
17874character to be the specified Unicode code point. Combining non-UTF-8
17875locales and Unicode is dangerous. Almost certainly some characters
17876will have two different representations. For example, in the ISO 8859-7
17877(Greek) locale, the code point 0xC3 represents a Capital Gamma. But so
17878also does 0x393. This will make string comparisons unreliable.
913317879
913417880=end original
913517881
9136(F) unpack している文字列の先頭よ相対位置を示している
17882(W locale) 単一バイトロケール (つま非 UTF-8 もの)で、
9137pack テンプレーを指定しました。
17883複数バイ文字に遭遇しました。
9138L<perlfunc/pack> を参照してください。
17884Perl はこの文字を指定された Unicode 符号位置としてます
17885非 UTF-8 ロケールと Unicode を結合するのは危険です。
17886ほとんど確実に一部の文字は複数の異なる表現を持ちます。
17887例えば、ISO 8859-7 (ギリシャ語) ロケールでは、
17888符号位置 0xC3 は Capital Gamma を表現します。
17889しかし 0x393 も同じです。
17890これは文字列比較を信頼できないものにします。
913917891
9140=item x outside of string
17892=begin original
914117893
17894You likely need to figure out how this multi-byte character got mixed up
17895with your single-byte locale (or perhaps you thought you had a UTF-8
17896locale, but Perl disagrees).
17897
17898=end original
17899
17900おそらくどうしてこのマルチバイト文字が単一バイトロケールで混ざったかを
17901見つける必要があるでしょう(あるいはおそらくあなたは UTF-8 ロケールを
17902使っていると考えているけれども Perl は同意していないのでしょう)。
17903
17904=item Within []-length '%c' not allowed
17905
914217906=begin original
914317907
9144(F) You had a pack template that specified a relative position after
17908(F) The count in the (un)pack template may be replaced by C<[TEMPLATE]>
9145the end of the string being unpacked. See L<perlfunc/pack>.
17909only if C<TEMPLATE> always matches the same amount of packed bytes that
17910can be determined from the template alone. This is not possible if
17911it contains any of the codes @, /, U, u, w or a *-length. Redesign
17912the template.
914617913
914717914=end original
914817915
9149(F) unpack している文字列最後よ後の相対位置を示ている
17916(F) (un)pack テンプレート数は、C<TEMPLATE> が常に
9150pack テンプレートを指しまし
17917テンプレートだけから決される同じサイズの pack されバイト列と一致する
9151L<perlfunc/pack> を参照しください
17918場合にのみ C<[TEMPLATE]> によっ置き換えられます
17919これは、コード @, /, U, u, w や、長さ * が含まれていると不可能です。
17920テンプレートを再設計してください。
915217921
9153=item Xsub "%s" called in sort
17922=item %s() with negative argument
915417923
915517924=begin original
915617925
9157(F) The use of an external subroutine as a sort comparison is not yet
17926(S misc) Certain operations make no sense with negative arguments.
9158supported.
17927Warning is given and the operation is not done.
915917928
916017929=end original
916117930
9162(F) ソートの比較ルーティンとして、外サブルーティンを使用すること
17931(S misc) の操作負の引数は意味がありません。
9163まだサポートされていません。
17932警告が出力され、操作は行われません。
916417933
9165=item Xsub called in sort
17934=item write() on closed filehandle %s
916617935
916717936=begin original
916817937
9169(F) The use of an external subroutine as a sort comparison is not yet
17938(W closed) The filehandle you're writing to got itself closed sometime
9170supported.
17939before now. Check your control flow.
917117940
917217941=end original
917317942
9174(F) ソートの比較ルーティンとして、外部サブーティを使用することは、
17943(W closed) 書き込みを行なおうとしたファイドルは、既に閉じられています。
9175まだサポトされていません
17944制御フロをチェックしください。
917617945
9177=item You can't use C<-l> on a filehandle
17946=item %s "\x%X" does not map to Unicode
917817947
917917948=begin original
918017949
9181(F) A filehandle represents an opened file, and when you opened the file
17950(S utf8) When reading in different encodings, Perl tries to
9182it already went past any symlink you are presumably trying to look for.
17951map everything into Unicode characters. The bytes you read
9183Use a filename instead.
17952in are not legal in this encoding. For example
918417953
918517954=end original
918617955
9187(F) ファイルはオされたファイル表わすものであり
17956(S utf8) 異なったエンコディ読み込むときPerl は全てを Unicode 文字に
9188ファイルをオープンしきには、探ているシンボリックリンクは、
17957マッピようとします。
9189既に通り過ぎた後
17958読み込んだバイトはこのエンコーディングは不正でした
9190代わりにファイル名を使ってください。
17959例えば:
919117960
17961 utf8 "\xE4" does not map to Unicode
17962
17963=begin original
17964
17965if you try to read in the a-diaereses Latin-1 as UTF-8.
17966
17967=end original
17968
17969というのは、Latin-1 の a 分節を UTF-8 として読み込もうとした場合です。
17970
17971=item 'X' outside of string
17972
17973=begin original
17974
17975(F) You had a (un)pack template that specified a relative position before
17976the beginning of the string being (un)packed. See L<perlfunc/pack>.
17977
17978=end original
17979
17980(F) (un)pack している文字列の最後より後の相対位置を示している
17981(un)pack テンプレートを指定しました。
17982L<perlfunc/pack> を参照してください。
17983
17984=item 'x' outside of string in unpack
17985
17986=begin original
17987
17988(F) You had a pack template that specified a relative position after
17989the end of the string being unpacked. See L<perlfunc/pack>.
17990
17991=end original
17992
17993(F) unpack している文字列の最後より後の相対位置を示している
17994pack テンプレートを指定しました。
17995L<perlfunc/pack> を参照してください。
17996
919217997=item YOU HAVEN'T DISABLED SET-ID SCRIPTS IN THE KERNEL YET!
919317998
919417999=begin original
919518000
919618001(F) And you probably never will, because you probably don't have the
919718002sources to your kernel, and your vendor probably doesn't give a rip
9198about what you want. Your best bet is to use the wrapsuid script in the
18003about what you want. There is a vulnerability anywhere that you have a
9199eg directory to put a setuid C wrapper around your script.
18004set-id script, and to close it you need to remove the set-id bit from
18005the script that you're attempting to run. To actually run the script
18006set-id, your best bet is to put a set-id C wrapper around your script.
920018007
920118008=end original
920218009
9203(F) (カーネルでは、SET-ID クリプトが禁止されていません!)
18010(F) そして、そうするとはできないでしょう; カーネルのソー
9204そして、そうすることはないでしょう。 カーネルソースはお持ちで
18011お持ちないでしょうし、ベンダも欲しいもを提供して
9205ないでしょうし、ベンダも欲しいものを提供してはくれないでしょうから。
18012くれないでしょうから。
9206もっとも良いのは、スクリプトに setuid C ラッパーを被せるために、
18013set-id スクリプトのあちこちは脆弱性があり
9207eg ディレクトリの wrapsuid スクリプトを使ってみることです。
18014それを閉じるためには実行しようとしているスクリプトから
18015set-id ビットを削除する必要があります。
18016実際にスクリプトを set-id で実行するために
18017もっとも良いのは、スクリプトに set-id C ラッパーを被せることです。
920818018
920918019=item You need to quote "%s"
921018020
921118021=begin original
921218022
921318023(W syntax) You assigned a bareword as a signal handler name.
921418024Unfortunately, you already have a subroutine of that name declared,
921518025which means that Perl 5 will try to call the subroutine when the
921618026assignment is executed, which is probably not what you want. (If it IS
921718027what you want, put an & in front.)
921818028
921918029=end original
922018030
922118031(W syntax) シグナルハンドラ名に、裸の単語を代入しました。
9222残念ながら、そのサブルーティンは既に宣言されていて、Perl 5 では、
18032残念ながら、そのサブルーンは既に宣言されていて、Perl 5 では、
9223おそらく思惑とは違って、代入の実行時にサブルーティンの呼び出しが起こります。
18033おそらく思惑とは違って、代入の実行時にサブルーンの呼び出しが起こります。
9224(もし、本当にそうしたいのであれば、サブルーティン名に & を付けてください。)
18034(もし、本当にそうしたいのであれば、サブルーン名に & を付けてください。)
922518035
18036=item Your random numbers are not that random
18037
18038=begin original
18039
18040(F) When trying to initialize the random seed for hashes, Perl could
18041not get any randomness out of your system. This usually indicates
18042Something Very Wrong.
18043
18044=end original
18045
18046(F) ハッシュのための乱数の種を初期化しようとしたとき、Perl はシステムから
18047何の乱数性も得られませんでした。
18048これは普通「何かとても具合が悪い」ことを示しています。
18049
18050=item Zero length \N{} in regex; marked by S<<-- HERE> in m/%s/
18051
18052=begin original
18053
18054(F) Named Unicode character escapes (C<\N{...}>) may return a zero-length
18055sequence. Such an escape was used in an extended character class, i.e.
18056C<(?[...])>, or under C<use re 'strict'>, which is not permitted. Check
18057that the correct escape has been used, and the correct charnames handler
18058is in scope. The S<<-- HERE> shows whereabouts in the regular
18059expression the problem was discovered.
18060
18061=end original
18062
18063(F) 名前付き Unicode 文字エスケープ (C<(\N{...})>) はゼロ幅並びを
18064返すことがあります。
18065このようなエスケープが拡張文字クラス、つまり C<(?[...])> の中、
18066あるいは C<use re 'strict'> の基で使われました;
18067これは認められていません。
18068正しいエスケープを使っているか、および正しい文字名ハンドラがスコープ内に
18069あるかをチェックしてください。
18070S<<-- HERE> で正規表現のどこに問題が発見されたかを示しています。
18071
922618072=back
922718073
18074=head1 SEE ALSO
18075
18076L<warnings>, L<diagnostics>.
18077
18078=cut
18079
922818080=begin meta
922918081
9230Translate: 吉村 寿人 <JAE00534@niftyserve.or.jp>
18082Translate: 吉村 寿人 <JAE00534@niftyserve.or.jp> (5.000)
9231Update: Kentaro Shirakata <argrath@ub32.org>
18083Update: SHIRAKATA Kentaro <argrath@ub32.org> (5.6.1-)
9232License: GPL or Artistic
18084Status: completed
923318085
923418086=end meta
9235
9236=cut