argra****@users*****
argra****@users*****
2012年 5月 19日 (土) 19:31:04 JST
Index: docs/perl/5.16.0/perl5160delta.pod diff -u docs/perl/5.16.0/perl5160delta.pod:1.20 docs/perl/5.16.0/perl5160delta.pod:1.21 --- docs/perl/5.16.0/perl5160delta.pod:1.20 Fri May 18 03:43:14 2012 +++ docs/perl/5.16.0/perl5160delta.pod Sat May 19 19:31:03 2012 @@ -2581,13 +2581,12 @@ =end original -We no longer read from STDIN when the Content-Length is not set, -preventing requests with no Content-Length from sometimes freezing. -This is consistent with the CGI RFC 3875, and is also consistent with -CGI::Simple. +Content-Length ãè¨å®ããã¦ããªãã¨ãããã¯ã STDIN ãã +èªã¿è¾¼ã¾ãªããªãã¾ãã; Content-Length ããªããªã¯ã¨ã¹ããã¨ãã©ã +ããªã¼ãºããã®ãåé¿ãã¾ãã +ãã㯠CGI RFC 3875 ã¨ä¸è²«æ§ããããCGI::Simple ã¨ãä¸è²«æ§ãããã¾ãã ããããå¤ãæ¯ãèã㯠CGI.pm ã®ããã¤ãã®ã³ãã³ãã©ã¤ã³å©ç¨ã§ æ³å®ããã¦ãã¾ããã -(TBT) =begin original @@ -2642,12 +2641,10 @@ =end original -addfile ã¡ã½ãã㨠shasum ã« bITS ã¢ã¼ãã追å ããã¾ããã -This makes -partial-byte inputs possible via files/STDIN and lets shasum check -all 8074 NIST Msg vectors, where previously special programming was -required to do this. -(TBT) +addfile ã¡ã½ãã㨠shasum ã« BITS ã¢ã¼ãã追å ããã¾ããã +ããã«ãã ãã¡ã¤ã«/STDIN ããé¨åçãªãã¤ãã®å ¥åãå¯è½ã«ãªãã +shasum ã§ä»¥åã¯ç¹å¥ãªããã°ã©ãã³ã°ãå¿ è¦ã§ãã£ã 8074 NIST Msg ãã¯ã¿å ¨ã¦ã® +ãã§ãã¯ãåºæ¥ãããã«ãªãã¾ããã =item * @@ -2717,10 +2714,9 @@ =end original -Much of L<ExtUtils::ParseXS>, the module behind the XS compiler C<xsubpp>, -was rewritten and cleaned up. It has been made somewhat more extensible -and now finally uses strictures. -(TBT) +XS ã³ã³ãã¤ã© C<xsubpp> ã®è£å´ã«ããã¢ã¸ã¥ã¼ã«ã§ãã +L<ExtUtils::ParseXS> ã®ã»ã¨ãã©ãæ¸ãç´ããæ´çããã¾ããã +ããã«ããããããæ¡å¼µå¯è½ã«ãªããã¤ãã« strict ã使ãããã«ãªãã¾ããã =begin original @@ -2773,10 +2769,9 @@ C<:glob> ã®ç½®ãæããæå³ããæ°ãã C<:bsd_glob> ã¨ã¯ã¹ãã¼ãã¿ã°ã 追å ããã¾ããã -C<:glob> ã¨åæ§ããã㯠overrides C<glob> with a function that does not split the glob -pattern into words, but, unlike C<:glob>, it iterates properly in scalar -context, instead of returning the last file. -(TBT) +C<:glob> ã¨åæ§ããã㯠C<glob> ããã°ãããã¿ã¼ã³ãåèªã«åå²ããªã +é¢æ°ã§ä¸æ¸ããã¾ãããC<:glob> ã¨éã£ã¦ãã¹ã«ã©ã³ã³ããã¹ãã§ã +æå¾ã®ãã¡ã¤ã«ãè¿ãã®ã§ã¯ãªããæ£ããå復ãã¾ãã =begin original @@ -3478,9 +3473,9 @@ C<sigsuspend> 㨠C<pause> ã¯å¸°ãåã«ã·ã°ãã«ãã³ãã©ãå®è¡ããããã« ãªãã¾ãã; as the whole point of these two functions is to wait until a signal has -arrived, and then return I<after> it has been triggered. Delayed, or -"safe", signals were preventing that from happening, possibly resulting in -race conditions [perl #107216]. +arrived, and then return I<after> it has been triggered. +é 延ãã¾ãã®åããå®å ¨ãã·ã°ãã«ã¯ããããèµ·ãããã¨ã«ãã£ã¦ç«¶åæ¡ä»¶ã +èµ·ãããã¨ãããå¯è½æ§ãé²ãã¾ã [perl #107216]ã (TBT) =begin original @@ -3494,13 +3489,13 @@ =end original -C<POSIX::sleep> is now a direct call into the underlying OS C<sleep> -function, instead of being a Perl wrapper on C<CORE::sleep>. -C<POSIX::dup2> now returns the correct value on Win32 (I<i.e.>, the file -descriptor). C<POSIX::SigSet> C<sigsuspend> and C<sigpending> and -C<POSIX::pause> now dispatch safe signals immediately before returning to -their caller. -(TBT) +C<POSIX::sleep> 㯠C<CORE::sleep> ã® Perl ã©ããã¼ã«ã§ã¯ãªããåºç¤ã¨ãªã +OS ã® C<sleep> é¢æ°ãå¼ã³åºãããã«ãªãã¾ããã +C<POSIX::dup2> 㯠Win32 ã§æ£ããå¤ (ã¤ã¾ãããã¡ã¤ã«è¨è¿°å) ã +è¿ãããã«ãªãã¾ããã +C<POSIX::SigSet> C<sigsuspend> 㨠C<sigpending> 㨠+C<POSIX::pause> ã¯å¼ã³åºãå ã«è¿ãç´åã«å®å ¨ãªã·ã°ãã«ã +çºè¡ããããã«ãªãã¾ããã =begin original @@ -3625,10 +3620,9 @@ =end original -Term::ReadLine now supports any event loop, including unpublished ones and -simple L<IO::Select>, loops without the need to rewrite existing code for -any particular framework [perl #108470]. -(TBT) +Term::ReadLine ã¯ãçºè¡ããã¦ããªããã®ãåç´ãª L<IO::Select>ã +ç¹å®ã®ãã¬ã¼ã ã¯ã¼ã¯ã®ããã«æ¢åã®ã³ã¼ããæ¸ãæããå¿ è¦ã®ãªãã«ã¼ãã +å«ããä»»æã®ã¤ãã³ãã«ã¼ãã«å¯¾å¿ãã¾ãã [perl #108470]ã =item * @@ -3699,9 +3693,8 @@ =end original -Tailored compatibility ideographs as well as unified ideographs for the -locales: ja, ko, zh__big5han, zh__gb2312han, zh__pinyin, zh__stroke. -(TBT) +ãã±ã¼ã«ã®ããã®èª¿æ´ãããäºæ表ææåã¨çµ±å表ææå: +ja, ko, zh__big5han, zh__gb2312han, zh__pinyin, zh__stroke. =begin original @@ -3752,12 +3745,11 @@ =end original åã¤ã®é¢æ°ã追å ããã¾ãã: C<prop_aliases()> 㨠-C<prop_value_aliases()> 㯠which are used to find all the Unicode-approved -synonyms for property names, or to convert from one name to another; -C<prop_invlist> which returns all code points matching a given -Unicode binary property; and C<prop_invmap> which returns the complete -specification of a given Unicode property. -(TBT) +C<prop_value_aliases()> ã¯ç¹æ§åã¸ã® Unicode ã§æ¿èªãããå ¨ã¦ã®å義èªã +è¦ã¤ããããããããã¯ä¸ã¤ã®ååãä»ã®ååã«å¤æããããã«ä½¿ããã¾ã; +C<prop_invlist> ã¯ä¸ãããã Unicode ãã¤ããªç¹æ§ã«ãããã³ã°ããå ¨ã¦ã® +符å·ä½ç½®ãè¿ãã¾ã; C<prop_invmap> ã¯ä¸ãããã Unicode ç¹æ§ã®å®å ¨ãª +ä»æ§ãè¿ãã¾ãã =item * @@ -4988,15 +4980,14 @@ =end original -The magic types and magic vtables are now generated from data in a new script -F<regen/mg_vtable.pl>, instead of being maintained by hand. +ãã¸ãã¯åã¨ãã¸ã㯠vtable ã¯æä½æ¥ã«ããä¿å®ã§ã¯ãªããæ°ããã¹ã¯ãªãã +F<regen/mg_vtable.pl> ã®ãã¼ã¿ããçæãããããã«ãªãã¾ããã ç°ãªã£ã EBCDIC ããªã¢ã³ãã¯ç¬¦å·ä½ç½®ã¨ã㦠'~' ã使ããªãã®ã§ã 符å·ä½ç½®ãå¤æã®æå㯠F<generate_uudmap> ããæ°ããçæãããããã F<mg_data.h> ã§ãã«ãæã«è¡ããã¾ãã C<PL_vtbl_bm> 㨠C<PL_vtbl_fm> ã¯æ確㪠C ã®å¤æ°ã§ã¯ãªãã C<PL_vtbl_regexp> ã¨ãã¦ããªããã»ããµã§å®ç¾©ãããããã«ãªãã¾ããã C<PL_vtbl_sig> ã¯åé¤ããã¾ããã -(TBT) =item * @@ -5062,11 +5053,10 @@ F<global.sym> ã¯ä¸è¦ã«ãªã£ãã®ã§åé¤ããã¾ããã ããã¯å ¨ã¦ã®ã¨ã¯ã¹ãã¼ããããé¢æ°ã®ä¸è¦§ã§ãF<embed.fnc> 㨠F<regen/opcodes> ã®ãã¼ã¿ãã F<regen/embed.pl> ã§çæããããã®ã§ãã -The code -has been refactored so that the only user of F<global.sym>, F<makedef.pl>, -now reads F<embed.fnc> and F<regen/opcodes> directly, removing the need to -store the list of exported functions in an intermediate file. -(TBT) +ã³ã¼ãããªãã¡ã¯ã¿ãªã³ã°ãããã®ã§ãF<global.sym>, F<makedef.pl> ã® +ã¦ã¼ã¶ã¼ã ãã F<embed.fnc> ããã³ F<regen/opcodes> ãç´æ¥èªã¿è¾¼ã¿ã +ä¸éãã¡ã¤ã«ã®ã¨ã¯ã¹ãã¼ããããé¢æ°ã®ãªã¹ããè£å®ããå¿ è¦ã +ãªããªãã¾ããã =begin original @@ -5491,11 +5481,10 @@ F<embedvar.h> ãåç´åãããããã©ã«ãã® (éå¤éå) è¨å®ã§ã® PL_* å¤æ°ã® 1 ã¬ãã«ã®éæ¥ãã¯ããåé¤ããã¾ããã -PERLVAR*() ãã¯ãã¯ãnow directly expand their arguments to -tokens such as C<PL_defgv>, instead of expanding to C<PL_Idefgv>, with -F<embedvar.h> defining a macro to map C<PL_Idefgv> to C<PL_defgv>. +PERLVAR*() ãã¯ãã¯ãC<PL_Idefgv> ã§ã¯ãªã C<PL_defgv> ã®ãããªãã¼ã¯ã³ã« +ç´æ¥æ¡å¼µããããã«ãªããF<embedvar.h> 㯠C<PL_Idefgv> ãã C<PL_defgv> 㸠+ãããã³ã°ããããã®ãã¯ããå®ç¾©ãã¦ãã¾ãã å®è£ ä¸ã®ä¿è¨¼ããã¦ããªãå好æ§ãã㤠XS ã³ã¼ãã¯æ´æ°ãå¿ è¦ããããã¾ããã -(TBT) =item * @@ -5709,13 +5698,12 @@ =end original -Perl now checks whether the array (the linearized isa) returned by a MRO -plugin begins with the name of the class itself, for which the array was -created, instead of assuming that it does. +Perl ã¯ãMRO ãã©ã°ã¤ã³ããè¿ãããé å (ç·å½¢åããã isa) ãé åã +ä½ãããã¯ã©ã¹èªèº«ã®ååããå§ã¾ã£ã¦ãããã¨ãä»®å®ããã®ã§ã¯ãªããããã +ãã§ãã¯ããããã«ãªãã¾ããã ããã¯ã¡ã½ããæ¤ç´¢ä¸ã«æåã®è¦ç´ ãã¹ããããããã®ãé²ãã¾ãã ããã¯ã¾ããC<mro::get_linear_isa> ã MRO ãã©ã°ã¤ã³ãæä¾ãããããä¸ã¤ è¦ç´ ã®å¤ãé åãè¿ããããããªããã¨ãæå³ãã¾ã [perl #94306]ã -(TBT) =item * @@ -5899,12 +5887,11 @@ =end original -When hash elements are deleted in void context, the internal hash entry is -now freed before the value is freed, to prevent destructors called by that -latter freeing from seeing the hash in an inconsistent state. +ç¡å¹ã³ã³ããã¹ãã§ããã·ã¥è¦ç´ ãåé¤ãããã¨ããå¤ã解æ¾ãããã¨ãã« +ä¸è²«æ§ã®ãªãç¶æ ã®ããã·ã¥ãè¦ããã¨ããªãããã«ãå é¨ã®ããã·ã¥ã¨ã³ããªã¯ +å¤ã解æ¾ãããåã«è§£æ¾ãããããã«ãªãã¾ããã ãã¹ãã©ã¯ã¿ãããã·ã¥èªèº«ã解æ¾ããã¨äºé解æ¾ã«ãªãå¯è½æ§ãããã¾ãã [perl #100340]ã -(TBT) =item * @@ -5943,12 +5930,12 @@ =end original -It is possible from XS code to create hashes with elements that have no -values. The hash element and slice operators used to crash -when handling these in lvalue context. They now -produce a "Modification of non-creatable hash value attempted" error -message. -(TBT) +XS ã³ã¼ããããå¤ãæã£ã¦ããªãè¦ç´ ãæã¤ããã·ã¥ãä½ããã¨ã +å¯è½ã§ããã +ããã·ã¥è¦ç´ ã¨ã¹ã©ã¤ã¹æ¼ç®åã¯ãããã左辺å¤ã³ã³ããã¹ãã§æ±ã㨠+ã¯ã©ãã·ã¥ãã¦ãã¾ããã +ããã㯠"Modification of non-creatable hash value attempted" ã¨ã©ã¼ +ã¡ãã»ã¼ã¸ãåºåããããã«ãªãã¾ããã =item * @@ -5960,10 +5947,9 @@ =end original -If list assignment to a hash or array triggered destructors that freed the -hash or array itself, a crash would ensue. +ããã·ã¥ãé åã¸ã®ãªã¹ãä»£å ¥ã解æ¾ãããããã·ã¥ãé åèªèº«ã®ãã¹ãã©ã¯ã¿ã +å¼ãèµ·ãããå ´åãå¾ã§ã¯ã©ãã·ã¥ãã¦ãã¾ããã ããã¯ããèµ·ãããªããªãã¾ãã [perl #107440]ã -(TBT) =item * @@ -5990,9 +5976,10 @@ =end original -Some core bugs affecting L<Hash::Util> have been fixed: locking a hash -element that is a glob copy no longer causes the next assignment to it to -corrupt the glob (5.14.2), and unlocking a hash element that holds a +L<Hash::Util> ã«å½±é¿ãä¸ããããã¤ãã®ã³ã¢ã®ãã°ãä¿®æ£ããã¾ãã: +ã°ããã³ãã¼ã§ããããã·ã¥è¦ç´ ãããã¯ãã¦ãå¼ãç¶ãä»£å ¥ã«ãã£ã¦ +ã°ãããå£ããªããªã (5.14.2)ã +and unlocking a hash element that holds a copy-on-write scalar no longer causes modifications to that scalar to modify other scalars that were sharing the same string buffer. (TBT) @@ -6026,9 +6013,8 @@ =end original -The C<SvIsCOW> C macro now returns false for read-only copies of typeglobs, -such as those created by: -(TBT) +C<SvIsCOW> C ãã¯ãã¯ã以ä¸ã®ããã«ãã¦ä½ããããããªãåã°ããã® +èªã¿è¾¼ã¿å°ç¨ã®ã³ãã¼ã«å¯¾ãã¦å½ãè¿ãããã«ãªãã¾ãã: $hash{elem} = *foo; Hash::Util::lock_value %hash, 'elem'; @@ -6086,13 +6072,13 @@ =end original -When presented with malformed UTF-8 input, the XS-callable functions -C<is_utf8_string()>, C<is_utf8_string_loc()>, and -C<is_utf8_string_loclen()> could read beyond the end of the input -string by up to 12 bytes. This no longer happens. [perl #32080]. -However, currently, C<is_utf8_char()> still has this defect, see -L</is_utf8_char()> above. -(TBT) +ä¸æ£ãª UTF-8 å ¥åã®ã¨ããXS å¼ã³åºãå¯è½ãªé¢æ° C<is_utf8_string()>, +C<is_utf8_string_loc()>, C<is_utf8_string_loclen()> ã¯å ¥åæååã® +æ«å°¾ãè¶ ãã¦æ大 12 ãã¤ãèªã¿è¾¼ããã¨ãããã¾ããã +ããã¯ããèµ·ãã¾ããã +[perl #32080]ã +ããããç¾å¨ã®ã¨ãããC<is_utf8_char()> ã¯ã¾ã ãã®åé¡ç¹ãããã¾ã; +ä¸è¿°ã® L</is_utf8_char()> ãåç §ãã¦ãã ããã =item * @@ -6104,10 +6090,9 @@ =end original -C ã¬ãã«ã® C<pregcomp> é¢æ°ã¯ could become confused about whether the -pattern was in UTF8 if the pattern was an overloaded, tied, or otherwise -magical scalar [perl #101940]. -(TBT) +C ã¬ãã«ã® C<pregcomp> é¢æ°ã¯ããã¿ã¼ã³ããªã¼ãã¼ãã¼ãããã¦ãããã +tie ããã¦ãããããã®ä»ã®ãã¸ã«ã«ãªã¹ã«ã©ã®å ´åããã¿ã¼ã³ã UTF8 ã +ã©ããã«ã¤ãã¦æ··ä¹±ãããã¨ãããã¾ãã [perl #101940]ã =back @@ -6126,9 +6111,8 @@ =end original -Tying C<%^H> no longer causes perl to crash or ignore the contents of -C<%^H> when entering a compilation scope [perl #106282]. -(TBT) +C<%^H> ã tie ãã¦ããã³ã³ãã¤ã«ã¹ã³ã¼ãã«å ¥ã£ãã¨ãã«ã¯ã©ãã·ã¥ããã +C<%^H> ã®å 容ãç¡è¦ãããããªããªãã¾ãã [perl #106282]ã =item * @@ -6144,9 +6128,10 @@ C<eval $string> and C<require> used not to localize C<%^H> during compilation if it -was empty at the time the C<eval> call itself was compiled. This could -lead to scary side effects, like C<use re "/m"> enabling other flags that -the surrounding code was trying to enable for its caller [perl #68750]. +was empty at the time the C<eval> call itself was compiled. +ããã¯ãC<use re "/m"> ããå¨ãã®ã³ã¼ããå¼ã³åºãå ã«æå¹ã«ãããã¨ãã¦ãã +ãã®ä»ã®ãã©ã°ãæå¹ã«ãããã¨ãã£ãæãããå¯ä½ç¨ãèµ·ããå¯è½æ§ã +ããã¾ãã [perl #68750]ã (TBT) =item * @@ -6160,11 +6145,11 @@ =end original -C<eval $string> and C<require> no longer localize hints (C<$^H> and C<%^H>) -at run time, but only during compilation of the $string or required file. -This makes C<BEGIN { $^H{foo}=7 }> equivalent to -C<BEGIN { eval '$^H{foo}=7' }> [perl #70151]. -(TBT) +C<eval $string> 㨠C<require> ã¯ãã³ã (C<$^H> 㨠C<%^H>) ã® +ãã¼ã«ã«åãå®è¡æã«ã¯ããã$string ãèªã¿è¾¼ã¾ãããã¡ã¤ã«ã® +ã³ã³ãã¤ã«æã«ã®ã¿ã«è¡ãã¾ãã +ããã«ãããC<BEGIN { $^H{foo}=7 }> 㯠C<BEGIN { eval '$^H{foo}=7' }> 㨠+ç価ã«ãªãã¾ã [perl #70151]ã =item * @@ -6176,10 +6161,9 @@ =end original -Creating a BEGIN block from XS code (via C<newXS> or C<newATTRSUB>) would, -on completion, make the hints of the current compiling code the current -hints. This could cause warnings to occur in a non-warning scope. -(TBT) +(C<newXS> ã C<newATTRSUB> ã§)ã³ã³ãã¤ã«æã« XS ã³ã¼ããã BEGIN ãããã¯ã +ä½ãã¨ãç¾å¨ã®ãã³ãã®ç¾å¨ã®ã³ã³ãã¤ã«ã³ã¼ãã®ãã³ããä½ãã¾ãã +ããã¯éè¦åã¹ã³ã¼ãã§è¦åãå¼ãèµ·ãããã¨ãããã¾ããã =back @@ -6198,13 +6182,13 @@ =end original -Copy-on-write or shared hash key scalars -were introduced in 5.8.0, but most Perl code -did not encounter them (they were used mostly internally). Perl -5.10.0 extended them, such that assigning C<__PACKAGE__> or a -hash key to a scalar would make it copy-on-write. Several parts -of Perl were not updated to account for them, but have now been fixed. -(TBT) +ã³ãã¼ãªã³ã©ã¤ãããããã¯å ±æããã·ã¥ãã¼ã¹ã«ã©ã¯ 5.8.0 ã§å°å ¥ããã¾ãããã +ã»ã¨ãã©ã® Perl ã³ã¼ãã¯ããã«åºä¼ããã¨ã¯ããã¾ããã§ãã (ããã㯠+ã»ã¨ãã©å é¨ã§ä½¿ããã¦ãã¾ãã)ã +Perl 5.10.0 ã¯ããããæ¡å¼µåãC<__PACKAGE__> ãããã·ã¥ãã¼ããã¹ã«ã©ã¸ã® +ä»£å ¥ã¯ã³ãã¼ãªã³ã©ã¤ãã«ãªãã¾ããã +Perl ã®ããã¤ãã®é¨åã¯ããããè¨ç®ã«å ¥ããããã«æ´æ°ãã¦ãã¾ããã§ãããã +ä¿®æ£ããã¾ããã =over @@ -6233,10 +6217,10 @@ =end original -Lvalue subroutines were not allowing COW scalars to be returned. This was -fixed for lvalue scalar context in Perl 5.12.3 and 5.14.0, but list context -was not fixed until this release. -(TBT) +左辺å¤ãµãã«ã¼ãã³ã¯ã³ãã¼ãªã³ã©ã¤ãã¹ã«ã©ãè¿ããã¨ã¯ã§ãã¾ããã§ããã +ããã¯å·¦è¾ºå¤ã¹ã«ã©ã³ã³ããã¹ãã«ã¤ãã¦ã¯ Perl 5.12.3 㨠5.14.0 㧠+ä¿®æ£ããã¦ãã¾ãããããªã¹ãã³ã³ããã¹ãã§ã¯ãã®ãªãªã¼ã¹ã¾ã§ä¿®æ£ãã㦠+ãã¾ããã§ããã =item * @@ -6274,10 +6258,9 @@ =end original -Assigning a copy-on-write string to a stash -element no longer causes a double free. Regardless of this change, the -results of such assignments are still undefined. -(TBT) +ã³ãã¼ãªã³ã©ã¤ãæååãã¹ã¿ãã·ã¥è¦ç´ ã«ä»£å ¥ãã¦ã +äºé解æ¾ããªããªãã¾ããã +ãã®å¤æ´ã«ããããããããã®ãããªä»£å ¥ã®çµæã¯æªã æªå®ç¾©ã§ãã =item * @@ -6288,9 +6271,9 @@ =end original -Assigning a copy-on-write string to a tied variable no longer stops that -variable from being tied if it happens to be a PVMG or PVLV internally. -(TBT) +ã³ãã¼ãªã³ã©ã¤ãæååãã tie ãããå¤æ°ã¸ã®ä»£å ¥ããã¨ãå é¨ã§ +PVMG ã¾ã㯠PVLV ã§ãã£ãã¨ãã«ãã®å¤æ°ã tie ç¶æ ã§ãªããªã£ã¦ +ãã¾ããããä¿®æ£ããã¾ããã =item * @@ -6302,10 +6285,9 @@ =end original -Doing a substitution on a tied variable returning a copy-on-write -scalar used to cause an assertion failure or an "Attempt to free -nonexistent shared string" warning. -(TBT) +ã³ãã¼ãªã³ã©ã¤ãã§è¿ããã tie ãããå¤æ°ã«å¯¾ãã¦ç½®æãè¡ã㨠+ã¢ãµã¼ã·ã§ã³ã失æããã "Attempt to free nonexistent shared string" è¦åã +åºãããã¦ãã¾ããã =item * @@ -6317,10 +6299,9 @@ =end original -This one is a regression from 5.12: In 5.14.0, the bitwise assignment -operators C<|=>, C<^=> and C<&=> started leaving the left-hand side -undefined if it happened to be a copy-on-write string [perl #108480]. -(TBT) +ãã㯠5.12 ããã®éè¡ã§ã: 5.14.0 ã§ã¯ããããåä½ä»£å ¥æ¼ç®å +C<|=>, C<^=>, C<&=> ã¯ããããã³ãã¼ãªã³ã©ã¤ãæååã§ãã£ãã¨ãã« +å·¦å´ãæªå®ç¾©ã®ã¾ã¾ã«ãã¦ãã¾ãã [perl #108480]ã =item * @@ -6352,10 +6333,9 @@ =end original -F<dumpvar.pl>, and therefore the C<x> command in the debugger, have been -fixed to handle objects blessed into classes whose names contain "=". The -contents of such objects used not to be dumped [perl #101814]. -(TBT) +F<dumpvar.pl>ãå¾ã£ã¦ãããã¬ã® C<x> ã³ãã³ãã¯ãååã« "=" ãå«ã +ã¯ã©ã¹ã« bless ããã¦ãããªãã¸ã§ã¯ãã®æ±ããä¿®æ£ããã¾ããã +ãã®ãããªãªãã¸ã§ã¯ãã®å 容ããã³ãã§ãã¦ãã¾ããã§ãã [perl #101814]ã =item * @@ -6367,10 +6347,9 @@ =end original -The "R" command for restarting a debugger session has been fixed to work on -Windows, or any other system lacking a C<POSIX::_SC_OPEN_MAX> constant -[perl #87740]. -(TBT) +ãããã¬ã»ãã·ã§ã³ããªã¹ã¿ã¼ãããããã® "R" ã³ãã³ãã¯ãWindows ã +ãã®ä»ã® C<POSIX::_SC_OPEN_MAX> å®æ°ããªãã·ã¹ãã ã§ãåä½ããããã« +ä¿®æ£ããã¾ãã [perl #87740]ã =item * @@ -6383,11 +6362,11 @@ =end original -The C<#line 42 foo> directive used not to update the arrays of lines used -by the debugger if it occurred in a string eval. This was partially fixed -in 5.14, but it worked only for a single C<#line 42 foo> in each eval. Now -it works for multiple. -(TBT) +C<#line 42 foo> æ示åã¯ãæåå eval ã®ä¸ã«ããã¨ããããã¬ã«ãã£ã¦ +使ãããè¡æ°ã®é åãæ´æ°ãã¦ãã¾ããã§ããã +ãã㯠5.14 ã§é¨åçã«ä¿®æ£ããã¾ããããã²ã¨ã¤ã® eval ã« +C<#line 42 foo> ãä¸ã¤ãããªãå ´åã«ã®ã¿åä½ãã¦ãã¾ããã +è¤æ°ãã£ã¦ãåä½ããããã«ä¿®æ£ããã¾ããã =item * @@ -6718,15 +6697,16 @@ =end original -In Perl 5.6, C<-l> followed by anything other than a bareword would treat -its argument as a file name. That was changed in 5.8 for glob references -(C<\*foo>), but not for globs themselves (C<*foo>). C<-l> started -returning C<undef> for glob references without setting the last -stat buffer that the "_" handle uses, but only if warnings -were turned on. With warnings off, it was the same as 5.6. -In other words, it was simply buggy and inconsistent. Now the 5.6 -behaviour has been restored. -(TBT) +Perl 5.6 ã§ã¯ãC<-l> ã«å¼ãç¶ãã¦è£¸ã®åèªä»¥å¤ã®ãã®ãããã¨ãå¼æ°ã +ãã¡ã¤ã«åã¨ãã¦æ±ã£ã¦ãã¾ããã +ãã㯠5.8 ã§ã°ãããªãã¡ã¬ã³ã¹ (C<\*foo>) ã«å¯¾ãã¦ã¯å¤æ´ããã¾ãããã +ã°ããèªä½ (C<*foo>) ã«å¯¾ãã¦ã¯å¤æ´ããã¾ããã§ããã +C<-l> ã¯ã"_" ãã³ãã«ã使ãç´åã® stat ãããã¡ã®è¨å®ããªãå ´åã¯ã +ã°ãããªãã¡ã¬ã³ã¹ã«å¯¾ãã¦ã¯ C<undef> ãè¿ãã¦ãã¾ãããããã㯠+warnings ããªã³ã®å ´åã®ã¿ã§ããã +warnings ã¯ãªãã®å ´åããã㯠5.6 ã¨åãã§ãã +è¨ãæããã¨ãããã¯åç´ã«ãã°æã¡ã§ä¸è²«æ§ãããã¾ããã +ä»ã§ã¯ 5.6 ã§ã®æ¯ãèãã復活ãã¾ããã =item * @@ -6739,11 +6719,10 @@ =end original -C<-l> followed by a bareword no longer "eats" the previous argument to -the list operator in whose argument list it resides. +C<-l> ã«å¼ãç¶ãã¦è£¸ã®åèªããã£ã¦ããåå¨ããå¼æ°ãªã¹ãã®ãªã¹ãæ¼ç®åã¸ã® +åã®å¼æ°ããé£ã¹ãããã¨ã¯ãªããªãã¾ããã å¾ã£ã¦ãC<-l> ã¯ããåã®å¼æ°ãé£ã¹ãªãã®ã§ãC<print "bar", -l foo> 㯠å®éã«ã¯ "bar" ã表示ãã¾ãã -(TBT) =item * @@ -6938,9 +6917,8 @@ =end original -C<given> was not scoping its implicit $_ properly, resulting in memory -leaks or "Variable is not available" warnings [perl #94682]. -(TBT) +C<given> ã¯æé»ã® $_ ãæ£ããã¹ã³ã¼ããã¦ããªãã£ãã®ã§ãã¡ã¢ãªãªã¼ã¯ã +"Variable is not available" è¦åãçºçããã¦ãã¾ãã [perl #94682]ã =item * @@ -6953,8 +6931,9 @@ =end original -C<given> was not calling set-magic on the implicit lexical C<$_> that it -uses. This meant, for example, that C<pos> would be remembered from one +C<given> ã¯ã使ã£ã¦ããæé»ã®ã¬ãã·ã«ã«ãª C<$_> ã« set-magic ã +å¼ã³åºãã¦ãã¾ããã§ããã +ã¤ã¾ããä¾ãã°ãC<pos> would be remembered from one execution of the same C<given> block to the next, even if the input were a different variable [perl #84526]. (TBT) @@ -6968,9 +6947,8 @@ =end original -C<when> blocks are now capable of returning variables declared inside the -enclosing C<given> block [perl #93548]. -(TBT) +C<when> ãããã¯ã¯åãå²ãã§ãã C<given> ãããã¯ã®å å´ã§å®£è¨ãããå¤æ°ã +è¿ããã¨ãã§ããããã«ãªãã¾ãã [perl #93548]ã =back @@ -6990,10 +6968,10 @@ =end original -On OSes other than VMS, Perl's C<glob> operator (and the C<< <...> >> form) -use L<File::Glob> underneath. L<File::Glob> splits the pattern into words, -before feeding each word to its C<bsd_glob> function. -(TBT) +VMS 以å¤ã® OS ã§ã¯ãPerl ã® C<glob> æ¼ç®å (ããã³ C<< <...> >> å½¢å¼) ã¯ã +æ°´é¢ä¸ã§ L<File::Glob> ã使ã£ã¦ãã¾ãã +L<File::Glob> ã¯ãåå¾ããããããã®åèªã C<bsd_glob> é¢æ°ã«æ¸¡ãåã«ã +ãã¿ã¼ã³ãåèªã«åå²ãã¦ãã¾ãã =begin original @@ -7007,14 +6985,14 @@ =end original -There were several inconsistencies in the way the split was done. Now -quotation marks (' and ") are always treated as shell-style word delimiters -(that allow whitespace as part of a word) and backslashes are always -preserved, unless they exist to escape quotation marks. Before, those -would only sometimes be the case, depending on whether the pattern -contained whitespace. Also, escaped whitespace at the end of the pattern -is no longer stripped [perl #40470]. -(TBT) +åå²ãè¡ãæ¹æ³ã«ããã¤ãã®éä¸è²«æ§ãããã¾ããã +å¼ç¨ç¬¦ (' 㨠") ã¯å¸¸ã«ã·ã§ã«é¢¨åèªããªãã¿ã¨ãã¦æ±ã(ããã«ãã空ç½ã +åèªã®ä¸é¨ã«ã§ãã¾ã)ãããã¯ã¹ã©ãã·ã¥ã¯å¼ç¨ç¬¦ãã¨ã¹ã±ã¼ãããããã« +åå¨ãã¦ããã®ã§ãªãéã常ã«ä¿åãããããã«ãªãã¾ããã +以åã¯ãããã¯ãã¿ã¼ã³ã«ç©ºç½ãå«ãã§ãããã«ãã£ã¦ä¸é¨ã®å ´åã«ãã +ãã®ãããªåä½ã«ãªã£ã¦ãã¾ããã§ããã +ã¾ãããã¿ã¼ã³ã®æ«å°¾ã®ã¨ã¹ã±ã¼ããããããã¯ãã¯åé¤ãããªããªãã¾ãã +[perl #40470]ã =item * @@ -7078,8 +7056,9 @@ Lvalue subroutines used to enforce lvalue syntax (i.e., whatever can go on the left-hand side of C<=>) for the last statement and the arguments to -return. Since lvalue subroutines are not always called in lvalue context, -this restriction has been lifted. +return. +左辺å¤ãµãã«ã¼ãã³ã¯ãã¤ã左辺å¤ã³ã³ããã¹ãã§å¼ã°ããããã§ã¯ãªãã®ã§ã +ãã®å¶éã¯åãé¤ããã¾ããã (TBT) =item * @@ -7092,10 +7071,9 @@ =end original -Lvalue subroutines are less restrictive about what values can be returned. -It used to croak on values returned by C<shift> and C<delete> and from -other subroutines, but no longer does so [perl #71172]. -(TBT) +左辺å¤ãµãã«ã¼ãã³ã¯ã©ããªå¤ãè¿ãããã«é¢ããå¶éãç·©ãããã¾ããã +以å㯠C<shift> ã C<delete>ã§è¿ãããããä»ã®ãµãã«ã¼ãã³ããã®å¤ã§ã¯ +croak ãã¦ãã¾ãããããã¯ããããªããªããªãã¾ãã [perl #71172]ã =item * @@ -7107,10 +7085,11 @@ =end original -Empty lvalue subroutines (C<sub :lvalue {}>) used to return C<@_> in list -context. All subroutines used to do this, but regular subs were fixed in -Perl 5.8.2. Now lvalue subroutines have been likewise fixed. -(TBT) +空ã®å·¦è¾ºå¤ãµãã«ã¼ãã³ (C<sub :lvalue {}>) ã¯ãªã¹ãã³ã³ããã¹ãã§ã¯ +C<@_> ãè¿ãã¦ãã¾ããã +以åã¯å ¨ã¦ã®ãµãã«ã¼ãã³ã§ããã§ããããé常ã®ãµãã«ã¼ãã³ã«é¢ãã¦ã¯ +Perl 5.8.2 ã§ä¿®æ£ããã¾ããã +ä»å左辺å¤ãµãã«ã¼ãã³ã«é¢ãã¦ãä¿®æ£ããã¾ããã =item * @@ -7156,12 +7135,11 @@ =end original -When called in potential lvalue context -(e.g., subroutine arguments or a list -passed to C<for>), lvalue subroutines used to copy -any read-only value that was returned. E.g., C< sub :lvalue { $] } > -would not return C<$]>, but a copy of it. -(TBT) +æ½å¨çãªå·¦è¾ºå¤ã³ã³ããã¹ã (ä¾ãã°ãµãã«ã¼ãã³ã®å¼æ°ã C<for> ã«æ¸¡ããã +ãªã¹ã) ã§å¼ã³åºãããã¨ãã左辺å¤ãµãã«ã¼ãã³ã¯è¿ãããèªã¿è¾¼ã¿å°ç¨ã®å¤ã +ã³ãã¼ãã¦ãã¾ããã +ä¾ãã°ãC< sub :lvalue { $] } > 㯠C<$]> ã§ã¯ãªãããã®ã³ãã¼ã +è¿ãã¦ãã¾ããã =item * @@ -7180,8 +7158,8 @@ arrays or hashes used to bind the arrays or hashes to scalar variables, resulting in bugs. This was fixed in 5.14.0 if an array were the first thing returned from the subroutine (but not for C<$scalar, @array> or -hashes being returned). Now a more general fix has been applied -[perl #23790]. +hashes being returned). +ä»åããä¸è¬çãªä¿®æ£ãé©ç¨ããã¾ãã [perl #23790]ã (TBT) =item * @@ -7197,8 +7175,8 @@ Method calls whose arguments were all surrounded with C<my()> or C<our()> (as in C<< $object->method(my($a,$b)) >>) used to force lvalue context on -the subroutine. This would prevent lvalue methods from returning certain -values. +the subroutine. +ããã¯å·¦è¾ºå¤ã¡ã½ããããã種ã®å¤ãè¿ãã®ã妨ãã¦ãã¾ããã (TBT) =item * @@ -7246,8 +7224,9 @@ Non-lvalue sub calls whose subs I<are> visible at compile time exhibited the opposite bug. If the call occurred in the last statement of an lvalue subroutine, there would be no error when the lvalue sub was called in -lvalue context. Perl would blindly assign to the temporary value returned -by the non-lvalue subroutine. +lvalue context. +Perl ã¯é左辺å¤ãµãã«ã¼ãã³ã«ãã£ã¦è¿ãããä¸æçãªå¤ã«ç²ç®çã« +ä»£å ¥ãã¦ãã¾ããã (TBT) =item * @@ -7279,7 +7258,7 @@ Applying the C<:lvalue> attribute to an XSUB or to an aliased subroutine stub with C<< sub foo :lvalue; >> syntax stopped working in Perl 5.12. -This has been fixed. +ããã¯ä¿®æ£ããã¾ããã (TBT) =item * @@ -7297,8 +7276,8 @@ Applying the :lvalue attribute to subroutine that is already defined does not work properly, as the attribute changes the way the sub is compiled. Hence, Perl 5.12 began warning when an attempt is made to apply the -attribute to an already defined sub. In such cases, the attribute is -discarded. +attribute to an already defined sub. +ãã®ãããªå ´åãå±æ§ã¯æ¨ã¦ããã¾ãã (TBT) =begin original @@ -7433,10 +7412,9 @@ =end original -The prototypes of several built-in functions--C<getprotobynumber>, C<lock>, -C<not> and C<select>--have been corrected, or at least are now closer to -reality than before. -(TBT) +ããã¤ãã®çµã¿è¾¼ã¿é¢æ°ã®ãããã¿ã¤ã -- C<getprotobynumber>, C<lock>, +C<not>, C<select> -- ãä¿®æ£ãããããå°ãªãã¨ã以åããã¯ããå®éã« +è¿ããã®ã«ãªãã¾ããã =back @@ -7458,10 +7436,9 @@ =end original -C</[[:ascii:]]/> and C</[[:blank:]]/> now use locale rules under -C<use locale> when the platform supports that. Previously, they used -the platform's native character set. -(TBT) +C</[[:ascii:]]/> 㨠C</[[:blank:]]/> ã¯ããã©ãããã©ã¼ã ã対å¿ãã¦ããã° +C<use locale> ã®ã¨ãã«ãã±ã¼ã«ã®ã«ã¼ã«ã使ãã¾ãã +以åã¯ããã©ãããã©ã¼ã ã®ãã¤ãã£ããªæåéåã使ã£ã¦ãã¾ããã =item * @@ -7474,11 +7451,10 @@ =end original -C<m/[[:ascii:]]/i> and C</\p{ASCII}/i> now match identically (when not -under a differing locale). This fixes a regression introduced in 5.14 -in which the first expression could match characters outside of ASCII, -such as the KELVIN SIGN. -(TBT) +C<m/[[:ascii:]]/i> 㨠C</\p{ASCII}/i> 㯠(ç°ãªã£ããã±ã¼ã«ã®ãã¨ã§ã¯) +åãããã«ãããã³ã°ããªããªãã¾ããã +ãã㯠5.14 ã§ä½ãè¾¼ã¾ãããæåã®è¡¨ç¾ã KELVIN SIGN ã®ãã㪠+ASCII ã®ç¯å²å¤ã®æåã«ããããã³ã°ãã¦ããéè¡ã®ä¿®æ£ã§ãã =item * @@ -7489,10 +7465,9 @@ =end original -C</.*/g> would sometimes refuse to match at the end of a string that ends -with "\n". +C</.*/g> ã¯ã¨ãã©ã "\n" ã§çµãã£ã¦ããæååã®æ«å°¾ã« +ãããã³ã°ãã¦ãã¾ããã§ããã ããã¯ä¿®æ£ããã¾ãã [perl #109206]ã -(TBT) =item * @@ -7505,7 +7480,7 @@ =end original -Starting with 5.12.0, Perl used to get its internal bookkeeping muddled up +5.12.0 ãããPerl 㯠used to get its internal bookkeeping muddled up after assigning C<${ qr// }> to a hash element and locking it with L<Hash::Util>. ããã«ããäºé解æ¾ãã¯ã©ãã·ã¥ãééã£ãæ¯ãèããå¼ãèµ·ããã¦ãã¾ããã @@ -7522,11 +7497,10 @@ =end original -The new (in 5.14.0) regular expression modifier C</a> when repeated like -C</aa> forbids the characters outside the ASCII range that match -characters inside that range from matching under C</i>. +æ°ãã (5.14.0 ããã®) æ£è¦è¡¨ç¾ä¿®é£¾å C</a> ã C</aa> ã®ããã« +ç¹°ãè¿ãããã¨ãC</i> ã®åºã§ã¯ãããã³ã°ããç¯å²å ã®æåã§ãASCII ã® +ç¯å²å¤ã®æåãç¦æ¢ãã¾ãã ããã¯ä¸é¨ã®ç¶æ³ã§ã¯åä½ãã¦ãã¾ããã§ãã; 次ã®ãããªå ¨ã¦ã«é¢é£ããé¸æã¯: -(TBT) "\N{KELVIN SIGN}" =~ /k|foo/iaa; @@ -7718,10 +7692,10 @@ =end original -RT #78266: The regex engine has been leaking memory when accessing +RT #78266: æ£è¦è¡¨ç¾ã¨ã³ã¸ã³ã¯ãhas been leaking memory when accessing named captures that weren't matched as part of a regex ever since 5.10 -when they were introduced; e.g., this would consume over a hundred MB of -memory: +when they were introduced; ä¾ãã°ã以ä¸ã®ã³ã¼ã㯠100 MB 以ä¸ã®ã¡ã¢ãªã +æ¶è²»ãã¦ãã¾ãã: (TBT) for (1..10_000_000) { @@ -7768,7 +7742,7 @@ =end original -A regression has been fixed that was introduced in 5.14, in C</i> +5.14 ã§ä½ãè¾¼ã¾ããéè¡ãä¿®æ£ããã¾ãã; in C</i> regular expression matching, in which a match improperly fails if the pattern is in UTF-8, the target string is not, and a Latin-1 character precedes a character in the string that should match the pattern. @@ -7834,8 +7808,8 @@ and C<\B> escape sequences did not work properly on UTF-8 encoded strings. All non-ASCII characters under C</aa> should be treated as non-word characters, but what was happening was that Unicode rules were -used to determine wordness/non-wordness for non-ASCII characters. This -is now fixed [perl #95968]. +used to determine wordness/non-wordness for non-ASCII characters. +ããã¯ä¿®æ£ããã¾ãã [perl #95968]ã (TBT) =item * @@ -7882,10 +7856,9 @@ =end original -ããã§ããªãããããã®ã³ã¼ããããã¯ã¯ã¾ã å®é¨çã§ãas there are still -problems with the wrong variables being closed over (in loops for instance) -and with abnormal exiting (e.g., C<die>) causing memory corruption. -(TBT) +ããã§ããªãããããã®ã³ã¼ããããã¯ã¯ã¾ã å®é¨çã§ã(ä¾ãã°ã«ã¼ãä¸ã§) +ééã£ãå¤æ°ãéãè¾¼ããããããæ£å¸¸ã§ãªãçµäº(ä¾ãã° C<die>)ã§ã¡ã¢ãªç ´å£ã +èµ·ããã¨ããåé¡ãããã¾ãã =item *