argra****@users*****
argra****@users*****
2015年 6月 4日 (木) 23:45:55 JST
Index: docs/perl/5.22.0/perl5220delta.pod diff -u docs/perl/5.22.0/perl5220delta.pod:1.1 docs/perl/5.22.0/perl5220delta.pod:1.2 --- docs/perl/5.22.0/perl5220delta.pod:1.1 Wed Jun 3 00:09:35 2015 +++ docs/perl/5.22.0/perl5220delta.pod Thu Jun 4 23:45:53 2015 @@ -1855,9 +1855,8 @@ =end original -Core keywords that conflict with lexical subroutines are now deparsed with -the C<CORE::> prefix. -(TBT) +レキシカルサブルーチンと競合するコアキーワードは C<CORE::> 接頭辞付きで +逆パースされるようになりました。 =begin original @@ -1866,9 +1865,8 @@ =end original -C<foreach state $x (...) {...}> now deparses correctly with C<state> and -not C<my>. -(TBT) +C<foreach state $x (...) {...}> は C<my> ではなく C<state> に正しく +逆パースされるようになりました。 =begin original @@ -1877,7 +1875,7 @@ =end original -C<our @array = split(...)> now deparses correctly with C<our> in those +C<our @array = split(...)> は、deparses correctly with C<our> in those cases where the assignment is optimized away. (TBT) @@ -1887,8 +1885,8 @@ =end original -It now deparses C<our(I<LIST>)> and typed lexical (C<my Dog $spot>) correctly. -(TBT) +C<our(I<LIST>)> と型付きのレキシカル (C<my Dog $spot>) は正しく +逆パースされるようになりました。 =begin original @@ -1919,9 +1917,8 @@ =end original -BEGIN blocks were sometimes deparsed as __ANON__, but are now always called -BEGIN. -(TBT) +BEGIN は時々 __ANON__ として逆パースされていましたが、常に BEGIN を +呼び出すようになりました。 =begin original @@ -2534,8 +2531,7 @@ =end original -Add support for the Linux pipe buffer size C<fcntl()> commands. -(TBT) +Linux のパイプバッファサイズ C<fcntl()> コマンド対応が追加されました。 =item * @@ -2554,9 +2550,8 @@ =end original -C<find()> and C<finddepth()> will now warn if passed inappropriate or -misspelled options. -(TBT) +C<find()> と C<finddepth()> は、不適切なオプションやスペルミスのオプションを +渡すと警告されるようになりました。 =item * @@ -2595,8 +2590,7 @@ =end original -C<keep_alive> is now fork-safe and thread-safe. -(TBT) +C<keep_alive> は fork セーフでスレッドセーフになりました。 =item * @@ -2614,8 +2608,7 @@ =end original -The XS implementation has been fixed for the sake of older Perls. -(TBT) +XS 実装は、より古い Perl のために修正されました。 =item * @@ -2635,7 +2628,6 @@ C<connected()> メソッドの制限が文書化されました。 [perl #123096] -(TBT) =item * @@ -2655,10 +2647,9 @@ =end original -A better fix for subclassing C<connect()>. +C<connect()> をサブクラス化するためによりよく修正されました。 L<[cpan #95983]|https://rt.cpan.org/Ticket/Display.html?id=95983> L<[cpan #97050]|https://rt.cpan.org/Ticket/Display.html?id=97050> -(TBT) =begin original @@ -2667,9 +2658,8 @@ =end original -Implements Timeout for C<connect()>. +C<connect()> のタイムアウトが実装されました。 L<[cpan #92075]|https://rt.cpan.org/Ticket/Display.html?id=92075> -(TBT) =item * @@ -2688,9 +2678,9 @@ =end original -Support for IPv6 and SSL to C<Net::FTP>, C<Net::NNTP>, C<Net::POP3> and C<Net::SMTP>. -Improvements in C<Net::SMTP> authentication. -(TBT) +C<Net::FTP>, C<Net::NNTP>, C<Net::POP3>, C<Net::SMTP> で IPv6 と SSL に +対応しました。 +C<Net::SMTP> の認証が改良されました。 =item * @@ -2710,10 +2700,9 @@ =end original -Fixed a bug in the scripts used to extract data from spreadsheets that -prevented the SHP currency code from being found. +スプレッドシートからデータを展開するために使われているスクリプトが +SHP 通貨コードを見つけるのを妨げていたバグが修正されました。 L<[cpan #94229]|https://rt.cpan.org/Ticket/Display.html?id=94229> -(TBT) =begin original @@ -3186,11 +3175,10 @@ =end original -A mismatch between the documentation and the code in C<utf8::downgrade()> -was fixed in favor of the documentation. The optional second argument -is now correctly treated as a perl boolean (true/false semantics) and -not as an integer. -(TBT) +C<utf8::downgrade()> での文書とコードの不一致は、文書に合わせることで +修正されました。 +オプションの 2 番目の引数は正しく整数ではなく perl の真偽値として +扱われるようになりました。 =item * @@ -3921,7 +3909,7 @@ =end original -Clarifications have been added to L<perlrecharclass/Character Ranges> +L<perlrecharclass/Character Ranges> に明確化する文章が追加されました; to the effect C<[A-Z]>, C<[a-z]>, C<[0-9]> and any subranges thereof in regular expression bracketed character classes are guaranteed to match exactly what a naive English speaker would @@ -4243,12 +4231,11 @@ =end original -Although S<C<defined %hash>> is false on a plain not-yet-used hash, it -becomes true in several non-obvious circumstances, including iterators, -weak references, stash names, even remaining true after S<C<undef %hash>>. -These things make S<C<defined %hash>> fairly useless in practice, so it now -generates a fatal error. -(TBT) +S<C<defined %hash>> は、プレーンなまだ使われていないハッシュでは偽ですが、 +反復子、弱い参照、スタッシュ名のような一般的ではない状況では真になり、 +S<C<undef %hash>> の後でも真のままになっていました。 +これらにより S<C<defined %hash>> は実際にはかなり無用なものになっていたので、 +致命的エラーを出すようになりました。 =begin original @@ -4273,11 +4260,10 @@ =end original -If you had S<C<defined %Foo::Bar::QUUX>> to check whether such a package -variable exists then that's never really been reliable, and isn't -a good way to enquire about the features of a package, or whether -it's loaded, etc. -(TBT) +あるパッケージ変数が存在するかどうかを調べるのに +S<C<defined %Foo::Bar::QUUX>> を使っているなら、これは決して本当に +信頼性のあるものにはならず、パッケージの機能や、 +読み込まれているかどうかなどを調べるいい方法ではありません。 =item * @@ -4511,11 +4497,9 @@ =end original -(F) You tried to call C<require> with no argument or with an undefined -value as an argument. C<require> expects either a package name or a -file-specification as an argument. +(F) 引数なしや、引数として未定義を指定して C<require> を呼び出そうとしました。 +C<require> は引数としてパッケージ名かファイル指定を想定しています。 L<perlfunc/require> を参照してください。 -(TBT) =begin original @@ -4548,12 +4532,11 @@ =end original -(D deprecated) The C<< /\C/ >> character class was deprecated in v5.20, and -now emits a warning. It is intended that it will become an error in v5.24. -This character class matches a single byte even if it appears within a -multi-byte character, breaks encapsulation, and can corrupt UTF-8 -strings. -(TBT) +(D deprecated) C<< /\C/ >> 文字クラスは v5.20 で廃止予定になり、今回 +警告が出るようになりました。 +これは v5.24 ではエラーになることを意図しています。 +この文字クラスは、例えマルチバイト文字の中に現れても単一のバイトに +マッチングし、カプセル化を壊し、UTF-8 文字列を壊すことがありました。 =item * @@ -4623,7 +4606,8 @@ =end original -In a bracketed character class in a regular expression pattern, you +正規表現の中の大かっこ文字クラスの中で、 +you had a range which has exactly one end of it specified using C<\N{}>, and the other end is specified using a non-portable mechanism. Perl treats the range as a Unicode range, that is, all the characters in it are @@ -4735,10 +4719,8 @@ =end original -(W overflow) The hexadecimal floating point literal had more bits in -the mantissa (the part between the C<0x> and the exponent, also known as -the fraction or the significand) than the floating point supports. -(TBT) +(W overflow) 16 進浮動小数点数リテラルは、浮動小数点数が対応しているよりも +多いビット数の仮数部(C<0x> と指数の間の部分)があります。 =item * @@ -4753,11 +4735,10 @@ =end original -(W overflow) The hexadecimal floating point had internally more -digits than could be output. This can be caused by unsupported -long double formats, or by 64-bit integers not being available -(needed to retrieve the digits under some configurations). -(TBT) +(W overflow) 16 進浮動小数点数は、内部では出力できるよりも多くの桁を +持っています。 +これは、未対応の long double 形式や、利用できない 64 ビット整数(一部の設定で車 +桁を取り出す必要がある) によって起こります。 =item * @@ -4771,10 +4752,9 @@ =end original -(W locale) You are using the named locale, which is a non-UTF-8 one, and -which perl has determined is not fully compatible with what it can -handle. The second C<%s> gives a reason. -(TBT) +(W locale) 非 UTF-8 で、現在扱えるものと完全な互換性がないと perl が決定した +名前付きロケールを使っています。 +2 番目の C<%s> に理由があります。 =begin original @@ -4811,10 +4791,8 @@ =end original -(W numeric) You tried to execute the -L<C<x>|perlop/Multiplicative Operators> repetition operator fewer than 0 -times, which doesn't make sense. -(TBT) +(W numeric) L<C<x>|perlop/Multiplicative Operators> 繰り返し演算子を 0 より +小さい回数実行しようとしました; これは無意味です。 =item * @@ -4831,7 +4809,9 @@ =end original (D deprecated) You defined a character name which contained a no-break -space character. Change it to a regular space. Usually these names are +space character. +通常のスペースに変更してください。 +Usually these names are defined in the C<:alias> import argument to C<use charnames>, but they could be defined by a translator installed into C<$^H{charnames}>. See L<charnames/CUSTOM ALIASES>. @@ -4894,13 +4874,10 @@ =end original より厳密な規則はタイプミスやその他のエラーを見つける助けになります。 -Perhaps you didn't -even intend a range here, if the C<"-"> was meant to be some other -character, or should have been escaped (like C<"\-">). If you did -intend a range, the one that was used is not portable between ASCII and -EBCDIC platforms, and doesn't have an obvious meaning to a casual -reader. -(TBT) +もし C<"-"> が他の文字を意味しているなら、おそらくそもそもここで範囲を +意図していないか、(C<"\-"> のように) エスケープするべきです。 +範囲を意図しているなら、この使い方は ASCII と EBCDIC プラットフォームの間で +互換性がなく、カジュアルな読者にとっては意味が明白ではありません。 [3-7] # OK; Obvious and portable [d-g] # OK; Obvious and portable @@ -5006,11 +4983,10 @@ =end original -This is not a new diagnostic, but in earlier releases was accidentally -not displayed if the transliteration contained wide characters. This is -now fixed, so that you may see this diagnostic in places where you -previously didn't (but should have). -(TBT) +これは新しい診断メッセージではありませんが、以前のリリースでは文字変換に +ワイド文字が含まれているときには誤って表示されていませんでした。 +これは修正されたので、以前は表示されていなかった (しかし表示されるべきで +あった)場所でこのメッセージが出るかもしれません。 =item * @@ -5029,8 +5005,10 @@ (W locale) You are matching a regular expression using locale rules, and a Unicode boundary is being matched, but the locale is not a Unicode -one. This doesn't make sense. Perl will continue, assuming a Unicode -(UTF-8) locale, but the results could well be wrong except if the locale +one. +これは無意味です。 +Perl は Unicode (UTF-8) ロケールを仮定して続行しますが、 +but the results could well be wrong except if the locale happens to be ISO-8859-1 (Latin1) where this message is spurious and can be ignored. (TBT) @@ -5058,13 +5036,12 @@ =end original -(W regexp) You used a Unicode boundary (C<\b{...}> or C<\B{...}>) in a -portion of a regular expression where the character set modifiers C</a> -or C</aa> are in effect. These two modifiers indicate an ASCII -interpretation, and this doesn't make sense for a Unicode definition. -The generated regular expression will compile so that the boundary uses -all of Unicode. No other portion of the regular expression is affected. -(TBT) +(W regexp) 修飾子 C</a> または C</aa> が有効なときに、正規表現の一部として +Unicode 境界 (C<\b{...}> や C<\B{...}>) を使いました。 +これら二つの修飾子は ASCII の解釈を示していて、これは Unicode 定義では +無意味です。 +生成された正規表現は、境界は全て Unicode を使います。 +正規表現のその他の部分は影響を受けません。 =item * @@ -5080,12 +5057,11 @@ =end original -(S experimental::bitwise) This warning is emitted if you use bitwise -operators (C<& | ^ ~ &. |. ^. ~.>) with the "bitwise" feature enabled. -Simply suppress the warning if you want to use the feature, but know -that in doing so you are taking the risk of using an experimental -feature which may change or be removed in a future Perl version: -(TBT) +(S experimental::bitwise) この警告は、"bitwise" 機能が有効なときに +ビット単位演算子 (C<& | ^ ~ &. |. ^. ~.>) を使ったときに発生します。 +この機能を使いたいときは、単に警告を無効にして下さい; しかし、そうすることは +将来の Perl バージョンで変更や削除されるかも知れない実験的機能を使う +リスクを取ると言うことです: no warnings "experimental::bitwise"; use feature "bitwise"; @@ -5128,10 +5104,9 @@ =end original -(D deprecated) Using literal non-graphic (including control) -characters in the source to refer to the I<^FOO> variables, like C<$^X> and -C<${^GLOBAL_PHASE}> is now deprecated. -(TBT) +(D deprecated) C<$^X> や C<${^GLOBAL_PHASE}> のように、I<^FOO> 変数を +参照するためにリテラルの(制御文字を含む)非印字文字をソースに使うのは +廃止予定になりました。 =item * @@ -5254,15 +5229,15 @@ =end original -(W locale) While in a single-byte locale (I<i.e.>, a non-UTF-8 -one), a multi-byte character was encountered. Perl considers this -character to be the specified Unicode code point. +(W locale) 単一文字ロケール (つまり、非 UTF-8) なのに、マルチバイト文字に +遭遇しました。 +Perl はこの文字を指定された Unicode 符号位置と考えます。 非 UTF-8 ロケールと Unicode の結合は危険です。 -Almost certainly some characters -will have two different representations. For example, in the ISO 8859-7 -(Greek) locale, the code point 0xC3 represents a Capital Gamma. But so -also does 0x393. This will make string comparisons unreliable. -(TBT) +ほぼ確実に一部の文字は二つの異なった表現があります。 +例えば、ISO 8859-7 (ギリシャ語) ロケールでは、符号位置 0xC3 は大文字の +ガンマを表現します。 +しかし 0x393 もそうです。 +これは文字列比較を信頼できないものにします。 =begin original @@ -5590,11 +5565,12 @@ =end original -The C<pthreads> and C<cl> libraries will be linked by default if present. -This allows XS modules that require threading to work on non-threaded -perls. Note that you must still pass C<-Dusethreads> if you want a -threaded perl. -(TBT) +C<pthreads> と C<cl> のライブラリは、もし存在すればデフォルトで +リンクされるようになりました。 +これにより、スレッドが必要な XS モジュールが非スレッド perl で +動作するようになります。 +スレッド perl が欲しい時には C<-Dusethreads> を渡さなければならないことは +変わらないことに注意してください。 =item * @@ -5757,11 +5733,10 @@ =end original -Some regular expression tests are written in such a way that they will -run very slowly if certain optimizations break. -これらの手裾は新しいファイル F<< t/re/speed.t >> と F<< t/re/speed_thr.t >> に -映され、C<< watchdog() >> で実行されます。 -(TBT) +一部の正規表現テストは、特定の最適化が崩れると、実行速度がとても遅くなるような +形で書かれていました。 +これらのテストは新しいファイル F<< t/re/speed.t >> と +F<< t/re/speed_thr.t >> に移され、C<< watchdog() >> で実行されます。 =item * @@ -6053,10 +6028,9 @@ =end original -Previously, compiling XS modules (including CPAN ones) using Visual C++ for -Win64 resulted in around a dozen warnings per file from F<hv_func.h>. These -warnings have been silenced. -(TBT) +以前は、Win64 用の Visual C++ で (CPAN のものを含む) XS モジュールを +コンパイルすると、F<hv_func.h> から大量の警告が出ていました。 +これらの警告は出なくなりました。 =item * @@ -6068,10 +6042,9 @@ =end original -Support for building without PerlIO has been removed from the Windows -makefiles. Non-PerlIO builds were all but deprecated in Perl 5.18.0 and are -already not supported by F<Configure> on POSIX systems. -(TBT) +PerlIO なしでのビルド対応が Windows の makefile から削除されました。 +非 PerlIO ビルドは Perl 5.18.0 でほとんど廃止予定になっていて、既に +POSIX システムでは F<Configure> が対応していなくなっていました。 =item * @@ -6116,11 +6089,10 @@ =end original -In the experimental C<:win32> layer, a crash in C<open> was fixed. Also -opening F</dev/null> (which works under Win32 Perl's default C<:unix> -layer) was implemented for C<:win32>. +実験的な C<:win32> 層で、C<open> でのクラッシュが修正されました。 +また、F</dev/null> を開くこと (Win32 Perl のデフォルトの C<:unix> 層では +対応していました) は C<:win32> で対応しました。 L<[perl #122224]|https://rt.perl.org/Ticket/Display.html?id=122224> -(TBT) =item * @@ -6132,10 +6104,10 @@ =end original -A new makefile option, C<USE_LONG_DOUBLE>, has been added to the Windows -dmake makefile for gcc builds only. Set this to "define" if you want perl to -use long doubles to give more accuracy and range for floating point numbers. -(TBT) +新しい makefile オプション C<USE_LONG_DOUBLE> が、gcc ビルドのためだけに +Windows dmake makefile に追加されました。 +よりよい精度と、より広い浮動小数点数の範囲のために long double を使いたい +ときは、これを "define" に設定します。 =back @@ -6151,9 +6123,11 @@ =end original -On OpenBSD, Perl will now default to using the system C<malloc> due to the -security features it provides. Perl's own malloc wrapper has been in use -since v5.14 due to performance reasons, but the OpenBSD project believes +OpenBSD で、 +Perl will now default to using the system C<malloc> due to the +security features it provides. +Perl 自身の malloc ラッパは性能上の理由により v5.14 から使われていましたが、 +but the OpenBSD project believes the tradeoff is worth it and would prefer that users who need the speed specifically ask for it. (TBT) @@ -6555,10 +6529,11 @@ SVs of type C<SVt_NV> are now sometimes bodiless when the build configuration and platform allow it: specifically, when C<< sizeof(NV) <= -sizeof(IV) >>. "Bodiless" means that the NV value is stored directly in -the head of an SV, without requiring a separate body to be allocated. This -trick has already been used for IVs since 5.9.2 (though in the case of -IVs, it is always used, regardless of platform and build configuration). +sizeof(IV) >>. +「本体なし」というのは、NV 値は割り当てられる独立した本体を要求せずに、 +直接 SV のヘッドに保管されるということです。 +この小技は IV に対しては既に 5.9.2 から使われていました (しかし IV の場合、 +これはプラットフォームとビルド設定に関わらず常に使われます)。 (TBT) =item * @@ -6593,8 +6568,9 @@ =end original C<Perl_tmps_grow()>, which is marked as public API but is undocumented, has -been removed from the public API. This change does not affect XS code that -uses the C<EXTEND_MORTAL> macro to pre-extend the mortal stack. +been removed from the public API. +この変更は、揮発性スタックを事前拡張する C<EXTEND_MORTAL> マクロを使っている +XS コードには影響しません。 (TBT) =item * @@ -6651,8 +6627,9 @@ The C<sv_catpvn_flags()> function accepts C<SV_CATBYTES> and C<SV_CATUTF8> flags, which specify whether the appended string is bytes or UTF-8, -respectively. (These flags have in fact been present since 5.16.0, but -were formerly not regarded as part of the API.) +respectively. +(これらのフラグは実際は 5.16.0 からありましたが、以前は API の一部として +見なされていませんでした。) (TBT) =item * @@ -8954,11 +8931,10 @@ =end original -The C<\@> subroutine prototype no longer flattens parenthesized arrays -(taking a reference to each element), but takes a reference to the array -itself. +C<\@> サブルーチンプロトタイプはもはや(それぞれの要素へのリファレンスを取る) +かっこ付き配列をフラット化しなくなり、配列自身へのリファレンスを +取るようになりました。 L<[perl #47363]|https://rt.perl.org/Ticket/Display.html?id=47363>. -(TBT) =item * @@ -8972,12 +8948,11 @@ =end original -A block containing nothing except a C-style C<for> loop could corrupt the -stack, causing lists outside the block to lose elements or have elements -overwritten. This could happen with C<map { for(...){...} } ...> and with -lists containing C<do { for(...){...} }>. +C 形式の C<for> ループだけを含むブロックはスタックを壊して、ブロックの +外側のリストが要素を失ったり要素が上書きされたりしていました。 +これは C<map { for(...){...} } ...> や C<do { for(...){...} }> を含む +リストで起きることがありました。 L<[perl #123286]|https://rt.perl.org/Ticket/Display.html?id=123286>. -(TBT) =item * @@ -9139,11 +9114,9 @@ =end original -The C<cmp> (and hence C<sort>) operators do not necessarily give the -correct results when both operands are UTF-EBCDIC encoded strings and -there is a mixture of ASCII and/or control characters, along with other -characters. -(TBT) +C<cmp> (とそれを使う C<sort>) 演算子は、両方のオペランドが UTF-EBCDIC で +エンコードされた文字列で、ASCII と制御文字が他の文字と混ざっているときには +正しい結果を返すとは限りません; =item *