CINXE.COM

perl5.git.perl.org Git - perl5.git/log

<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE html [ <!ENTITY nbsp "&#xA0;"> <!ENTITY sdot "&#x22C5;"> ]> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US"> <!-- git web interface version 2.43.5, (C) 2005-2006, Kay Sievers <kay.sievers@vrfy.org>, Christian Gierke --> <!-- git core binaries version 2.43.5 --> <head> <meta name="generator" content="gitweb/2.43.5 git/2.43.5"/> <meta name="robots" content="index, nofollow"/> <title>perl5.git.perl.org Git - perl5.git/log</title> <base href="https://perl5.git.perl.org" /> <link rel="stylesheet" type="text/css" href="static/gitweb.css"/> <link rel="alternate" title="perl5.git - log - RSS feed" href="/perl5.git/rss" type="application/rss+xml" /> <link rel="alternate" title="perl5.git - log - RSS feed (no merges)" href="/perl5.git/rss?opt=--no-merges" type="application/rss+xml" /> <link rel="alternate" title="perl5.git - log - Atom feed" href="/perl5.git/atom" type="application/atom+xml" /> <link rel="alternate" title="perl5.git - log - Atom feed (no merges)" href="/perl5.git/atom?opt=--no-merges" type="application/atom+xml" /> <link rel="shortcut icon" href="static/git-favicon.png" type="image/png" /> </head> <body> This is a live mirror of the Perl 5 development currently hosted at <a href="https://github.com/perl/perl5" target="_blank">https://github.com/perl/perl5</a> <div class="page_header"> <a href="https://git-scm.com/" title="git homepage"><img alt="git" class="logo" height="27" src="static/git-logo.png" width="72" /></a><a href="/">https://perl5.git.perl.org</a> / <a href="/perl5.git">perl5.git</a> / log </div> <form method="get" action="/perl5.git" enctype="multipart/form-data"><div class="search"> <input name="a" type="hidden" value="search" /> <input name="h" type="hidden" value="HEAD" /> <select name="st" > <option selected="selected" value="commit">commit</option> <option value="grep">grep</option> <option value="author">author</option> <option value="committer">committer</option> <option value="pickaxe">pickaxe</option> </select> <a href="/perl5.git/search_help" title="search help">?</a> search: <input type="text" name="s" /> <span title="Extended regular expression"><label><input type="checkbox" name="sr" value="1" />re</label></span></div> </form> <div class="page_nav"> <a href="/perl5.git">summary</a> | <a href="/perl5.git/shortlog">shortlog</a> | log | <a href="/perl5.git/commit">commit</a> | <a href="/perl5.git/commitdiff">commitdiff</a> | <a href="/perl5.git/tree">tree</a><br/> first &sdot; prev &sdot; <a accesskey="n" href="/perl5.git/log?pg=1" title="Alt-n">next</a><br/> </div> <div class="header"> <a class="title" href="/perl5.git">perl5.git</a> </div> <div class="header"> <a class="title" href="/perl5.git/commit/61a68eeb5d7f62b9f5b9a0fab12e8d78c52816c7"><span class="age">5 hours ago</span>Devel::PPPort: add compatibility entries for the new vstrings <span class="refs"> <span class="head" title="heads/blead"><a href="/perl5.git/log/refs/heads/blead">blead</a></span></span></a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/61a68eeb5d7f62b9f5b9a0fab12e8d78c52816c7">commit</a> | <a href="/perl5.git/commitdiff/61a68eeb5d7f62b9f5b9a0fab12e8d78c52816c7">commitdiff</a> | <a href="/perl5.git/tree/61a68eeb5d7f62b9f5b9a0fab12e8d78c52816c7">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Tony+Cook;st=author" title="Search for commits authored by Tony Cook">Tony Cook</a> [<span class="datetime">Mon, 31 Mar 2025 23:53:33 +0000</span> (10:53 +1100)]</span> <br/> </div> <div class="log_body"> Devel::PPPort:&nbsp;add&nbsp;compatibility&nbsp;entries&nbsp;for&nbsp;the&nbsp;new&nbsp;vstrings<br/> <br/> Based&nbsp;on&nbsp;@leont&#39;s&nbsp;comment&nbsp;on&nbsp;#23160.<br/> <br/> This&nbsp;seems&nbsp;to&nbsp;produce&nbsp;reasonable&nbsp;results:<br/> <br/> tony@venus:.../git/perl6$&nbsp;cat&nbsp;foo.c<br/> SvVSTRING<br/> tony@venus:.../git/perl6$&nbsp;./perl&nbsp;-Ilib&nbsp;dist/Devel-PPPort/ppport.h&nbsp;--nofilter&nbsp;foo.c<br/> Scanning&nbsp;foo.c&nbsp;...<br/> ===&nbsp;Analyzing&nbsp;foo.c&nbsp;===<br/> Uses&nbsp;SvVSTRING,&nbsp;which&nbsp;depends&nbsp;on&nbsp;sv_vstring_get,&nbsp;SvVSTRING_mg,&nbsp;mg_find,&nbsp;PERL_MAGIC_vstring,&nbsp;SvMAGICAL<br/> File&nbsp;needs&nbsp;sv_vstring_get,&nbsp;adding&nbsp;static&nbsp;request<br/> Needs&nbsp;to&nbsp;include&nbsp;&#39;ppport.h&#39;<br/> Analysis&nbsp;completed<br/> Suggested&nbsp;changes:<br/> ---&nbsp;foo.c&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2025-04-01&nbsp;10:51:39.<a class="text" href="/perl5.git/object/040415623">040415623</a>&nbsp;+1100<br/> +++&nbsp;foo.c.patched&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2025-04-01&nbsp;10:55:11.<a class="text" href="/perl5.git/object/347014468">347014468</a>&nbsp;+1100<br/> @@&nbsp;-1&nbsp;+1,3&nbsp;@@<br/> +#define&nbsp;NEED_sv_vstring_get<br/> +#include&nbsp;&quot;ppport.h&quot;<br/> &nbsp;SvVSTRING<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/7cd47db6555f4260f48646320eaecc23a02f3243"><span class="age">5 hours ago</span>Storable: use SvVSTRING() from ppport.h</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/7cd47db6555f4260f48646320eaecc23a02f3243">commit</a> | <a href="/perl5.git/commitdiff/7cd47db6555f4260f48646320eaecc23a02f3243">commitdiff</a> | <a href="/perl5.git/tree/7cd47db6555f4260f48646320eaecc23a02f3243">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Tony+Cook;st=author" title="Search for commits authored by Tony Cook">Tony Cook</a> [<span class="datetime">Thu, 27 Mar 2025 00:24:31 +0000</span> (11:24 +1100)]</span> <br/> </div> <div class="log_body"> Storable:&nbsp;use&nbsp;SvVSTRING()&nbsp;from&nbsp;ppport.h<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/1db6b57bb1fc7c280d5da30030e1328881344124"><span class="age">5 hours ago</span>Devel-PPPort: add SvVSTRING()</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/1db6b57bb1fc7c280d5da30030e1328881344124">commit</a> | <a href="/perl5.git/commitdiff/1db6b57bb1fc7c280d5da30030e1328881344124">commitdiff</a> | <a href="/perl5.git/tree/1db6b57bb1fc7c280d5da30030e1328881344124">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Tony+Cook;st=author" title="Search for commits authored by Tony Cook">Tony Cook</a> [<span class="datetime">Thu, 27 Mar 2025 00:21:07 +0000</span> (11:21 +1100)]</span> <br/> </div> <div class="log_body"> Devel-PPPort:&nbsp;add&nbsp;SvVSTRING()<br/> <br/> vstrings&nbsp;were&nbsp;originally&nbsp;added&nbsp;in&nbsp;<a class="text" href="/perl5.git/object/perl-5.8.0-82-g92f0c26562">perl-5.8.0-82-g92f0c26562</a>,<br/> SvVSTRING_mg()&nbsp;was&nbsp;originally&nbsp;added&nbsp;in&nbsp;<a class="text" href="/perl5.git/object/perl-5.8.0-8018-gb0a11fe104">perl-5.8.0-8018-gb0a11fe104</a>&nbsp;so<br/> technically&nbsp;in&nbsp;the&nbsp;same&nbsp;release.<br/> <br/> I&nbsp;expect&nbsp;there&nbsp;were&nbsp;some&nbsp;uses&nbsp;of&nbsp;intermediate&nbsp;versions&nbsp;19&nbsp;years&nbsp;ago,<br/> but&nbsp;I&nbsp;don&#39;t&nbsp;think&nbsp;we&nbsp;need&nbsp;to&nbsp;worry&nbsp;about&nbsp;it&nbsp;now.<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/5352940a15b75a73914227ca7329947a7279c2ab"><span class="age">5 hours ago</span>test-dist-modules.pl: allow the invoker to keep the build around</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/5352940a15b75a73914227ca7329947a7279c2ab">commit</a> | <a href="/perl5.git/commitdiff/5352940a15b75a73914227ca7329947a7279c2ab">commitdiff</a> | <a href="/perl5.git/tree/5352940a15b75a73914227ca7329947a7279c2ab">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Tony+Cook;st=author" title="Search for commits authored by Tony Cook">Tony Cook</a> [<span class="datetime">Wed, 26 Mar 2025 23:59:59 +0000</span> (10:59 +1100)]</span> <br/> </div> <div class="log_body"> test-dist-modules.pl:&nbsp;allow&nbsp;the&nbsp;invoker&nbsp;to&nbsp;keep&nbsp;the&nbsp;build&nbsp;around<br/> <br/> This&nbsp;is&nbsp;especially&nbsp;handy&nbsp;when&nbsp;tracking&nbsp;down&nbsp;problems&nbsp;with<br/> Devel::PPPort,&nbsp;since&nbsp;so&nbsp;much&nbsp;is&nbsp;generated.<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/33df2fe3fec72f85983b824bbb7038a553daf49f"><span class="age">5 hours ago</span>Devel-PPPort: improve ppptest test reporting</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/33df2fe3fec72f85983b824bbb7038a553daf49f">commit</a> | <a href="/perl5.git/commitdiff/33df2fe3fec72f85983b824bbb7038a553daf49f">commitdiff</a> | <a href="/perl5.git/tree/33df2fe3fec72f85983b824bbb7038a553daf49f">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Tony+Cook;st=author" title="Search for commits authored by Tony Cook">Tony Cook</a> [<span class="datetime">Wed, 26 Mar 2025 23:59:04 +0000</span> (10:59 +1100)]</span> <br/> </div> <div class="log_body"> Devel-PPPort:&nbsp;improve&nbsp;ppptest&nbsp;test&nbsp;reporting<br/> <br/> A&nbsp;change&nbsp;I&nbsp;made&nbsp;caused&nbsp;this&nbsp;to&nbsp;fail,&nbsp;tracking&nbsp;it&nbsp;down&nbsp;was&nbsp;rough.<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/eb3602733db508b55830cc07918b58332afe6af7"><span class="age">7 hours ago</span>cpan/Test-Simple - Update to version 1.302210</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/eb3602733db508b55830cc07918b58332afe6af7">commit</a> | <a href="/perl5.git/commitdiff/eb3602733db508b55830cc07918b58332afe6af7">commitdiff</a> | <a href="/perl5.git/tree/eb3602733db508b55830cc07918b58332afe6af7">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Chad+Granum;st=author" title="Search for commits authored by Chad Granum">Chad Granum</a> [<span class="datetime">Wed, 2 Apr 2025 00:48:25 +0000</span> (20:48 -0400)]</span> <br/> </div> <div class="log_body"> cpan/Test-Simple&nbsp;-&nbsp;Update&nbsp;to&nbsp;version&nbsp;1.302210<br/> <br/> 1.302210&nbsp;&nbsp;2025-03-29&nbsp;12:06:57-07:00&nbsp;America/Los_Angeles<br/> <br/> &nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;Alexander&nbsp;Hartmaier&nbsp;&nbsp;&nbsp;-&nbsp;fix&nbsp;typo&nbsp;in&nbsp;Test2::Util::Trace&nbsp;docs<br/> &nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;Karen&nbsp;Etheridge&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;documentation&nbsp;fixes&nbsp;throughout&nbsp;for&nbsp;affect&nbsp;vs&nbsp;effect<br/> &nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;Yasuharu&nbsp;Iida&nbsp;feat&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;Test2::Tools::Warnings&nbsp;warns&nbsp;called&nbsp;in&nbsp;void&nbsp;context<br/> &nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;bernhard&nbsp;Eliminate&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;Remove&nbsp;unnecessary&nbsp;empty&nbsp;list&nbsp;assignments<br/> &nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;Graham&nbsp;Knop&nbsp;calculate&nbsp;-&nbsp;CAN_SIGSYS&nbsp;when&nbsp;called&nbsp;rather&nbsp;than&nbsp;as&nbsp;a&nbsp;constant<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/d58f204d51252c97a0c6ce487a97ec309d29386c"><span class="age">10 hours ago</span>PathTools: check Config values early before chdir</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/d58f204d51252c97a0c6ce487a97ec309d29386c">commit</a> | <a href="/perl5.git/commitdiff/d58f204d51252c97a0c6ce487a97ec309d29386c">commitdiff</a> | <a href="/perl5.git/tree/d58f204d51252c97a0c6ce487a97ec309d29386c">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Graham+Knop;st=author" title="Search for commits authored by Graham Knop">Graham Knop</a> [<span class="datetime">Mon, 31 Mar 2025 22:22:25 +0000</span> (<span class="atnight">00:22</span> +0200)]</span> <br/> </div> <div class="log_body"> PathTools:&nbsp;check&nbsp;Config&nbsp;values&nbsp;early&nbsp;before&nbsp;chdir<br/> <br/> In&nbsp;a&nbsp;perl&nbsp;core&nbsp;build,&nbsp;the&nbsp;@INC&nbsp;paths&nbsp;will&nbsp;be&nbsp;relative.&nbsp;If&nbsp;you&nbsp;change<br/> directories&nbsp;before&nbsp;loading&nbsp;all&nbsp;of&nbsp;the&nbsp;files&nbsp;needed,&nbsp;they&nbsp;won&#39;t&nbsp;be&nbsp;able<br/> to&nbsp;be&nbsp;found.&nbsp;Config.pm&nbsp;loads&nbsp;some&nbsp;of&nbsp;its&nbsp;values&nbsp;at&nbsp;runtime,&nbsp;so&nbsp;if&nbsp;they<br/> are&nbsp;accessed&nbsp;after&nbsp;a&nbsp;chdir,&nbsp;it&nbsp;may&nbsp;fail.<br/> <br/> One&nbsp;of&nbsp;the&nbsp;PathTools&nbsp;tests&nbsp;was&nbsp;relying&nbsp;on&nbsp;the&nbsp;fact&nbsp;that&nbsp;Config_heavy.pl<br/> would&nbsp;be&nbsp;loaded&nbsp;by&nbsp;Test::More,&nbsp;before&nbsp;it&nbsp;did&nbsp;a&nbsp;chdir.&nbsp;Newer&nbsp;Test::More<br/> won&#39;t&nbsp;do&nbsp;that,&nbsp;so&nbsp;the&nbsp;test&nbsp;would&nbsp;fail.&nbsp;Accessing&nbsp;the&nbsp;required&nbsp;Config<br/> values&nbsp;early&nbsp;will&nbsp;prevent&nbsp;this&nbsp;failure.<br/> <br/> This&nbsp;same&nbsp;issue&nbsp;is&nbsp;unlikely&nbsp;to&nbsp;impact&nbsp;anything&nbsp;outside&nbsp;core,&nbsp;as&nbsp;it<br/> requires&nbsp;the&nbsp;perl&nbsp;core&nbsp;paths&nbsp;in&nbsp;@INC&nbsp;to&nbsp;be&nbsp;relative&nbsp;paths,&nbsp;which&nbsp;is<br/> normally&nbsp;not&nbsp;the&nbsp;case.<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/801e9c3d40c686829f88af7f563b3ad124637c5d"><span class="age">36 hours ago</span>Add quotes around titles when they were missing</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/801e9c3d40c686829f88af7f563b3ad124637c5d">commit</a> | <a href="/perl5.git/commitdiff/801e9c3d40c686829f88af7f563b3ad124637c5d">commitdiff</a> | <a href="/perl5.git/tree/801e9c3d40c686829f88af7f563b3ad124637c5d">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Philippe+Bruhat+(BooK);st=author" title="Search for commits authored by Philippe Bruhat (BooK)">Philippe Bruhat (BooK)</a> [<span class="datetime">Wed, 26 Mar 2025 00:54:01 +0000</span> (<span class="atnight">01:54</span> +0100)]</span> <br/> </div> <div class="log_body"> Add&nbsp;quotes&nbsp;around&nbsp;titles&nbsp;when&nbsp;they&nbsp;were&nbsp;missing<br/> <br/> Also&nbsp;added&nbsp;the&nbsp;book&nbsp;title&nbsp;for&nbsp;one&nbsp;of&nbsp;the&nbsp;Jasper&nbsp;Fforde&#39;s&nbsp;quotes.<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/3ab0369d98885eb81c47c3f914ee5b7dcef2205c"><span class="age">39 hours ago</span>Time::HiRes: avoid importing via export_to_level</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/3ab0369d98885eb81c47c3f914ee5b7dcef2205c">commit</a> | <a href="/perl5.git/commitdiff/3ab0369d98885eb81c47c3f914ee5b7dcef2205c">commitdiff</a> | <a href="/perl5.git/tree/3ab0369d98885eb81c47c3f914ee5b7dcef2205c">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Graham+Knop;st=author" title="Search for commits authored by Graham Knop">Graham Knop</a> [<span class="datetime">Sat, 29 Mar 2025 10:59:35 +0000</span> (11:59 +0100)]</span> <br/> </div> <div class="log_body"> Time::HiRes:&nbsp;avoid&nbsp;importing&nbsp;via&nbsp;export_to_level<br/> <br/> The&nbsp;export_to_level&nbsp;function&nbsp;forces&nbsp;Exporter&nbsp;to&nbsp;always&nbsp;load<br/> Exporter::Heavy.&nbsp;This&nbsp;can&nbsp;be&nbsp;avoided&nbsp;by&nbsp;only&nbsp;using&nbsp;Exporter::import.<br/> <br/> Time::HiRes&#39;s&nbsp;import&nbsp;is&nbsp;only&nbsp;trying&nbsp;to&nbsp;prevent&nbsp;exports&nbsp;of&nbsp;unimplemented<br/> functions&nbsp;and&nbsp;doesn&#39;t&nbsp;need&nbsp;to&nbsp;make&nbsp;any&nbsp;modifications&nbsp;to&nbsp;its&nbsp;arguments.<br/> This&nbsp;means&nbsp;doing&nbsp;a&nbsp;goto&nbsp;&amp;Exporter::import&nbsp;will&nbsp;do&nbsp;everything&nbsp;needed.<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/91c779a4e66d68028e5016c5008fdff5c5136018"><span class="age">42 hours ago</span>Perl_hv_common: sv_2mortal(newSVsv()) to sv_mortalcopy_flags()</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/91c779a4e66d68028e5016c5008fdff5c5136018">commit</a> | <a href="/perl5.git/commitdiff/91c779a4e66d68028e5016c5008fdff5c5136018">commitdiff</a> | <a href="/perl5.git/tree/91c779a4e66d68028e5016c5008fdff5c5136018">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Richard+Leach;st=author" title="Search for commits authored by Richard Leach">Richard Leach</a> [<span class="datetime">Mon, 24 Mar 2025 00:59:55 +0000</span> (<span class="atnight">00:59</span> +0000)]</span> <br/> </div> <div class="log_body"> Perl_hv_common:&nbsp;sv_2mortal(newSVsv())&nbsp;to&nbsp;sv_mortalcopy_flags()<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/8294975f8dc19876e88fdfb9b1c9383562fd7e84"><span class="age">42 hours ago</span>regcomp.c - create mortal HV/AV in one step</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/8294975f8dc19876e88fdfb9b1c9383562fd7e84">commit</a> | <a href="/perl5.git/commitdiff/8294975f8dc19876e88fdfb9b1c9383562fd7e84">commitdiff</a> | <a href="/perl5.git/tree/8294975f8dc19876e88fdfb9b1c9383562fd7e84">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Richard+Leach;st=author" title="Search for commits authored by Richard Leach">Richard Leach</a> [<span class="datetime">Wed, 12 Mar 2025 14:28:48 +0000</span> (14:28 +0000)]</span> <br/> </div> <div class="log_body"> regcomp.c&nbsp;-&nbsp;create&nbsp;mortal&nbsp;HV/AV&nbsp;in&nbsp;one&nbsp;step<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/01b85911fcab822877a0ea96bb425ca3292269ee"><span class="age">42 hours ago</span>pp_system: use newSVtype_mortal instead of two functions</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/01b85911fcab822877a0ea96bb425ca3292269ee">commit</a> | <a href="/perl5.git/commitdiff/01b85911fcab822877a0ea96bb425ca3292269ee">commitdiff</a> | <a href="/perl5.git/tree/01b85911fcab822877a0ea96bb425ca3292269ee">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Richard+Leach;st=author" title="Search for commits authored by Richard Leach">Richard Leach</a> [<span class="datetime">Wed, 12 Mar 2025 14:12:46 +0000</span> (14:12 +0000)]</span> <br/> </div> <div class="log_body"> pp_system:&nbsp;use&nbsp;newSVtype_mortal&nbsp;instead&nbsp;of&nbsp;two&nbsp;functions<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/a3a284fa098080c7e48720fd6e11b7ba9066ff0e"><span class="age">42 hours ago</span>do_readline: create new mortal with less branching</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/a3a284fa098080c7e48720fd6e11b7ba9066ff0e">commit</a> | <a href="/perl5.git/commitdiff/a3a284fa098080c7e48720fd6e11b7ba9066ff0e">commitdiff</a> | <a href="/perl5.git/tree/a3a284fa098080c7e48720fd6e11b7ba9066ff0e">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Richard+Leach;st=author" title="Search for commits authored by Richard Leach">Richard Leach</a> [<span class="datetime">Wed, 12 Mar 2025 13:58:43 +0000</span> (13:58 +0000)]</span> <br/> </div> <div class="log_body"> do_readline:&nbsp;create&nbsp;new&nbsp;mortal&nbsp;with&nbsp;less&nbsp;branching<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/829b1d49c7d8d3d4124810384861025a26d7c3cd"><span class="age">42 hours ago</span>Use newSVpvn_flags() rather than sv_2mortal(newSVpvn_utf8)</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/829b1d49c7d8d3d4124810384861025a26d7c3cd">commit</a> | <a href="/perl5.git/commitdiff/829b1d49c7d8d3d4124810384861025a26d7c3cd">commitdiff</a> | <a href="/perl5.git/tree/829b1d49c7d8d3d4124810384861025a26d7c3cd">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Richard+Leach;st=author" title="Search for commits authored by Richard Leach">Richard Leach</a> [<span class="datetime">Wed, 12 Mar 2025 13:28:27 +0000</span> (13:28 +0000)]</span> <br/> </div> <div class="log_body"> Use&nbsp;newSVpvn_flags()&nbsp;rather&nbsp;than&nbsp;sv_2mortal(newSVpvn_utf8)<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/6d97c8623f515875cc84450000603679732502bb"><span class="age">44 hours ago</span>Nuke the MGf_PERSIST flag, freeing a bit in -&gt;mg_flags</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/6d97c8623f515875cc84450000603679732502bb">commit</a> | <a href="/perl5.git/commitdiff/6d97c8623f515875cc84450000603679732502bb">commitdiff</a> | <a href="/perl5.git/tree/6d97c8623f515875cc84450000603679732502bb">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Paul+%22LeoNerd%22+Evans;st=author" title="Search for commits authored by Paul &quot;LeoNerd&quot; Evans">Paul &quot;LeoNerd&quot; Evans</a> [<span class="datetime">Thu, 27 Mar 2025 13:10:25 +0000</span> (13:10 +0000)]</span> <br/> </div> <div class="log_body"> Nuke&nbsp;the&nbsp;MGf_PERSIST&nbsp;flag,&nbsp;freeing&nbsp;a&nbsp;bit&nbsp;in&nbsp;-&gt;mg_flags<br/> <br/> The&nbsp;MGf_PERSIST&nbsp;flag&nbsp;is&nbsp;only&nbsp;used&nbsp;by&nbsp;PERL_MAGIC_lvref,&nbsp;and&nbsp;there&nbsp;it<br/> simply&nbsp;contains&nbsp;a&nbsp;shadow&nbsp;copy&nbsp;of&nbsp;the&nbsp;OPpLVREF_ITER&nbsp;flag&nbsp;in&nbsp;op_private.<br/> Since&nbsp;the&nbsp;mg_priv&nbsp;field&nbsp;is&nbsp;set&nbsp;as&nbsp;a&nbsp;copy&nbsp;of&nbsp;op_private&nbsp;anyway,&nbsp;the&nbsp;code<br/> that&nbsp;checks&nbsp;this&nbsp;bit&nbsp;might&nbsp;as&nbsp;well&nbsp;look&nbsp;there&nbsp;instead.<br/> <br/> As&nbsp;a&nbsp;result&nbsp;of&nbsp;this&nbsp;change,&nbsp;the&nbsp;0x80&nbsp;bit&nbsp;of&nbsp;the&nbsp;mg_flags&nbsp;field&nbsp;is&nbsp;now<br/> free&nbsp;for&nbsp;other&nbsp;purposes.<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/52fdca79c16ca18468c653ba6ac8a25b90d316dc"><span class="age">2 days ago</span>cpan/Pod-Usage - Update to version 2.05</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/52fdca79c16ca18468c653ba6ac8a25b90d316dc">commit</a> | <a href="/perl5.git/commitdiff/52fdca79c16ca18468c653ba6ac8a25b90d316dc">commitdiff</a> | <a href="/perl5.git/tree/52fdca79c16ca18468c653ba6ac8a25b90d316dc">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Marek+Rouchal;st=author" title="Search for commits authored by Marek Rouchal">Marek Rouchal</a> [<span class="datetime">Sun, 30 Mar 2025 14:26:18 +0000</span> (10:26 -0400)]</span> <br/> </div> <div class="log_body"> cpan/Pod-Usage&nbsp;-&nbsp;Update&nbsp;to&nbsp;version&nbsp;2.05<br/> <br/> 2.05&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2025-03-29<br/> <br/> -&nbsp;merged&nbsp;PR&nbsp;#27,&nbsp;fixing&nbsp;spurious&nbsp;Exporter&nbsp;inheritance<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/63857a61c06bad93cfa1a3edaa0d853d054093e5"><span class="age">2 days ago</span>5.38.4-RC1/5.40.2-RC1 today</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/63857a61c06bad93cfa1a3edaa0d853d054093e5">commit</a> | <a href="/perl5.git/commitdiff/63857a61c06bad93cfa1a3edaa0d853d054093e5">commitdiff</a> | <a href="/perl5.git/tree/63857a61c06bad93cfa1a3edaa0d853d054093e5">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Steve+Hay;st=author" title="Search for commits authored by Steve Hay">Steve Hay</a> [<span class="datetime">Sun, 30 Mar 2025 11:37:20 +0000</span> (12:37 +0100)]</span> <br/> </div> <div class="log_body"> 5.38.4-RC1/5.40.2-RC1&nbsp;today<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/654993734bba564be7013d78ecc24a4d2330c0bb"><span class="age">3 days ago</span>Add very tentative release date for 5.38.4/5.40.2 security releases</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/654993734bba564be7013d78ecc24a4d2330c0bb">commit</a> | <a href="/perl5.git/commitdiff/654993734bba564be7013d78ecc24a4d2330c0bb">commitdiff</a> | <a href="/perl5.git/tree/654993734bba564be7013d78ecc24a4d2330c0bb">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Steve+Hay;st=author" title="Search for commits authored by Steve Hay">Steve Hay</a> [<span class="datetime">Sat, 29 Mar 2025 15:31:31 +0000</span> (15:31 +0000)]</span> <br/> </div> <div class="log_body"> Add&nbsp;very&nbsp;tentative&nbsp;release&nbsp;date&nbsp;for&nbsp;5.38.4/5.40.2&nbsp;security&nbsp;releases<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/de36a92218b2118db3e5a47294474ce10ed4d379"><span class="age">6 days ago</span>Dumper.xs: Use PERL_MAGIC_vstring symbolic constant rather than &#39;V&#39; character literal</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/de36a92218b2118db3e5a47294474ce10ed4d379">commit</a> | <a href="/perl5.git/commitdiff/de36a92218b2118db3e5a47294474ce10ed4d379">commitdiff</a> | <a href="/perl5.git/tree/de36a92218b2118db3e5a47294474ce10ed4d379">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Paul+%22LeoNerd%22+Evans;st=author" title="Search for commits authored by Paul &quot;LeoNerd&quot; Evans">Paul &quot;LeoNerd&quot; Evans</a> [<span class="datetime">Wed, 26 Mar 2025 16:35:41 +0000</span> (16:35 +0000)]</span> <br/> </div> <div class="log_body"> Dumper.xs:&nbsp;Use&nbsp;PERL_MAGIC_vstring&nbsp;symbolic&nbsp;constant&nbsp;rather&nbsp;than&nbsp;&#39;V&#39;&nbsp;character&nbsp;literal<br/> <br/> The&nbsp;symbolic&nbsp;name&nbsp;is&nbsp;just&nbsp;a&nbsp;name&nbsp;for&nbsp;the&nbsp;character&nbsp;constant,&nbsp;but&nbsp;doing<br/> this&nbsp;makes&nbsp;it&nbsp;possible&nbsp;to&nbsp;find&nbsp;e.g.&nbsp;via&nbsp;grep.<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/3e734cb97c84ce17ea5eabf743c16797b853c288"><span class="age">6 days ago</span>POD fix: link to the fields pragma in perlref</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/3e734cb97c84ce17ea5eabf743c16797b853c288">commit</a> | <a href="/perl5.git/commitdiff/3e734cb97c84ce17ea5eabf743c16797b853c288">commitdiff</a> | <a href="/perl5.git/tree/3e734cb97c84ce17ea5eabf743c16797b853c288">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Philippe+Bruhat+(BooK);st=author" title="Search for commits authored by Philippe Bruhat (BooK)">Philippe Bruhat (BooK)</a> [<span class="datetime">Wed, 26 Mar 2025 09:02:11 +0000</span> (10:02 +0100)]</span> <br/> </div> <div class="log_body"> POD&nbsp;fix:&nbsp;link&nbsp;to&nbsp;the&nbsp;fields&nbsp;pragma&nbsp;in&nbsp;perlref<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/e5ef137f9116f74315e333518f08c23751271064"><span class="age">8 days ago</span>Porting/release_managers_guide.pod: use more neutral tag message</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/e5ef137f9116f74315e333518f08c23751271064">commit</a> | <a href="/perl5.git/commitdiff/e5ef137f9116f74315e333518f08c23751271064">commitdiff</a> | <a href="/perl5.git/tree/e5ef137f9116f74315e333518f08c23751271064">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Lukas+Mai;st=author" title="Search for commits authored by Lukas Mai">Lukas Mai</a> [<span class="datetime">Sat, 22 Mar 2025 04:58:36 +0000</span> (<span class="atnight">05:58</span> +0100)]</span> <br/> </div> <div class="log_body"> Porting/release_managers_guide.pod:&nbsp;use&nbsp;more&nbsp;neutral&nbsp;tag&nbsp;message<br/> <br/> The&nbsp;tag&nbsp;message&nbsp;is&nbsp;just&nbsp;an&nbsp;example,&nbsp;but&nbsp;most&nbsp;releases&nbsp;aren&#39;t&nbsp;.0<br/> versions,&nbsp;so&nbsp;&quot;first&nbsp;release!&quot;&nbsp;doesn&#39;t&nbsp;generalize&nbsp;well&nbsp;for&nbsp;release<br/> engineers&nbsp;looking&nbsp;for&nbsp;guidance.<br/> <br/> (Also,&nbsp;update&nbsp;the&nbsp;sample&nbsp;output&nbsp;to&nbsp;match&nbsp;the&nbsp;new&nbsp;tag&nbsp;example.)<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/f81d6dc0beb3612e548d19e563c4259843986324"><span class="age">11 days ago</span>small .h trick for faster win32 interp compiles</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/f81d6dc0beb3612e548d19e563c4259843986324">commit</a> | <a href="/perl5.git/commitdiff/f81d6dc0beb3612e548d19e563c4259843986324">commitdiff</a> | <a href="/perl5.git/tree/f81d6dc0beb3612e548d19e563c4259843986324">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=bulk88;st=author" title="Search for commits authored by bulk88">bulk88</a> [<span class="datetime">Sun, 6 Oct 2024 01:39:59 +0000</span> (21:39 -0400)]</span> <br/> </div> <div class="log_body"> small&nbsp;.h&nbsp;trick&nbsp;for&nbsp;faster&nbsp;win32&nbsp;interp&nbsp;compiles<br/> <br/> cl.exe&nbsp;in&nbsp;the&nbsp;terminal&nbsp;is&nbsp;much&nbsp;faster&nbsp;by&nbsp;eye.&nbsp;PERL_CORE&nbsp;only,&nbsp;since<br/> CPAN&nbsp;XS&nbsp;assumes&nbsp;the&nbsp;built-in&nbsp;out&nbsp;the&nbsp;box&nbsp;headers/tokens/structs/linker<br/> libs&nbsp;selected&nbsp;by&nbsp;p5p&nbsp;decades&nbsp;ago&nbsp;will&nbsp;never&nbsp;change.<br/> <br/> Since&nbsp;CPAN&nbsp;has&nbsp;been&nbsp;caught&nbsp;doing&nbsp;&quot;-DPERL_CORE&quot;&nbsp;in&nbsp;the&nbsp;past&nbsp;then&nbsp;including<br/> p5&nbsp;core&nbsp;headers,&nbsp;include&nbsp;a&nbsp;provision&nbsp;to&nbsp;enable&nbsp;#include&nbsp;full&nbsp;W32&nbsp;headers,<br/> since&nbsp;it&nbsp;might&nbsp;be&nbsp;difficult&nbsp;to&nbsp;#undef&nbsp;then&nbsp;#include&nbsp;the&nbsp;OS&nbsp;headers&nbsp;a&nbsp;2nd<br/> time&nbsp;with&nbsp;different&nbsp;CPP&nbsp;defines.<br/> <br/> &quot;#define&nbsp;NONLS&quot;&nbsp;too&nbsp;many&nbsp;core&nbsp;interp&nbsp;.c&nbsp;files&nbsp;need&nbsp;the&nbsp;ANSI/Wide&nbsp;code&nbsp;page<br/> apis&nbsp;to&nbsp;special&nbsp;case&nbsp;each&nbsp;.c.&nbsp;Just&nbsp;leave&nbsp;it&nbsp;out&nbsp;for&nbsp;now.<br/> <br/> A&nbsp;benefit&nbsp;is&nbsp;smaller&nbsp;.pdb&nbsp;or&nbsp;whatever&nbsp;GCC&#39;s&nbsp;dbg&nbsp;symbol&nbsp;file&nbsp;format&nbsp;is.<br/> So&nbsp;faster&nbsp;debugger&nbsp;startup.&nbsp;Also&nbsp;GCC&nbsp;uncontrollably&nbsp;includes&nbsp;all<br/> &quot;#define&quot;s&nbsp;in&nbsp;its&nbsp;symbol&nbsp;disk&nbsp;format&nbsp;(which&nbsp;isnt&nbsp;a&nbsp;separate&nbsp;file,&nbsp;but&nbsp;a<br/> many&nbsp;MBs&nbsp;memory&nbsp;mapped&nbsp;data&nbsp;structure&nbsp;embedded&nbsp;into&nbsp;the&nbsp;particular&nbsp;.exe<br/> or&nbsp;.dll,&nbsp;on&nbsp;disk,&nbsp;and&nbsp;in&nbsp;VM).&nbsp;Since&nbsp;Perl&nbsp;isn&#39;t&nbsp;a&nbsp;Win32&nbsp;GUI&nbsp;app,&nbsp;keep&nbsp;the<br/> GUI&nbsp;APIs&nbsp;out&nbsp;of&nbsp;the&nbsp;compiler&nbsp;if&nbsp;possible&nbsp;and&nbsp;toss&nbsp;the&nbsp;&quot;text&quot;&nbsp;ASAP&nbsp;in<br/> the&nbsp;phases&nbsp;of&nbsp;compiling.&nbsp;Whether&nbsp;whole&nbsp;MS&nbsp;.h&nbsp;files&nbsp;are&nbsp;skipped,&nbsp;or&nbsp;CPP<br/> discards&nbsp;large&nbsp;chunks&nbsp;of&nbsp;APIs&nbsp;before&nbsp;reaching&nbsp;the&nbsp;C&nbsp;parser/.obj/.pdb&nbsp;files,<br/> is&nbsp;implementation&nbsp;specific&nbsp;behaviour&nbsp;by&nbsp;particular&nbsp;MSVCs&nbsp;and&nbsp;Mingw.&nbsp;Our<br/> side&nbsp;was&nbsp;completed,&nbsp;in&nbsp;requesting&nbsp;to&nbsp;exclude&nbsp;stuff.<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/3e105179adb204136ac4a7ef174d96f9698b97fe"><span class="age">11 days ago</span>Porting/release_managers_guide.pod: minor adjustments</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/3e105179adb204136ac4a7ef174d96f9698b97fe">commit</a> | <a href="/perl5.git/commitdiff/3e105179adb204136ac4a7ef174d96f9698b97fe">commitdiff</a> | <a href="/perl5.git/tree/3e105179adb204136ac4a7ef174d96f9698b97fe">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Lukas+Mai;st=author" title="Search for commits authored by Lukas Mai">Lukas Mai</a> [<span class="datetime">Fri, 21 Mar 2025 14:15:55 +0000</span> (15:15 +0100)]</span> <br/> </div> <div class="log_body"> Porting/release_managers_guide.pod:&nbsp;minor&nbsp;adjustments<br/> <br/> -&nbsp;After&nbsp;installing,&nbsp;perl&nbsp;shouldn&#39;t&nbsp;need&nbsp;any&nbsp;`-Ilib`&nbsp;options.<br/> -&nbsp;Hyperlinks&nbsp;should&nbsp;be&nbsp;clickable.<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/c29144bfa79a9fd0fc99165db8f0a9b420c06ed9"><span class="age">11 days ago</span>Prepare Module::Corelist for 5.41.11</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/c29144bfa79a9fd0fc99165db8f0a9b420c06ed9">commit</a> | <a href="/perl5.git/commitdiff/c29144bfa79a9fd0fc99165db8f0a9b420c06ed9">commitdiff</a> | <a href="/perl5.git/tree/c29144bfa79a9fd0fc99165db8f0a9b420c06ed9">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Lukas+Mai;st=author" title="Search for commits authored by Lukas Mai">Lukas Mai</a> [<span class="datetime">Fri, 21 Mar 2025 14:12:21 +0000</span> (15:12 +0100)]</span> <br/> </div> <div class="log_body"> Prepare&nbsp;Module::Corelist&nbsp;for&nbsp;5.41.11<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/42d38273704232bb50d431ccf19776e9ca9d8797"><span class="age">11 days ago</span>Bump the perl version in various places for 5.41.11</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/42d38273704232bb50d431ccf19776e9ca9d8797">commit</a> | <a href="/perl5.git/commitdiff/42d38273704232bb50d431ccf19776e9ca9d8797">commitdiff</a> | <a href="/perl5.git/tree/42d38273704232bb50d431ccf19776e9ca9d8797">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Lukas+Mai;st=author" title="Search for commits authored by Lukas Mai">Lukas Mai</a> [<span class="datetime">Fri, 21 Mar 2025 13:55:13 +0000</span> (14:55 +0100)]</span> <br/> </div> <div class="log_body"> Bump&nbsp;the&nbsp;perl&nbsp;version&nbsp;in&nbsp;various&nbsp;places&nbsp;for&nbsp;5.41.11<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/37067167512bed11133fec9d18d36ed11ede1a72"><span class="age">11 days ago</span>New perldelta for 5.41.11</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/37067167512bed11133fec9d18d36ed11ede1a72">commit</a> | <a href="/perl5.git/commitdiff/37067167512bed11133fec9d18d36ed11ede1a72">commitdiff</a> | <a href="/perl5.git/tree/37067167512bed11133fec9d18d36ed11ede1a72">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Lukas+Mai;st=author" title="Search for commits authored by Lukas Mai">Lukas Mai</a> [<span class="datetime">Fri, 21 Mar 2025 13:44:44 +0000</span> (14:44 +0100)]</span> <br/> </div> <div class="log_body"> New&nbsp;perldelta&nbsp;for&nbsp;5.41.11<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/58e440aa52267d2298df084b75e42b384e92b367"><span class="age">11 days ago</span>tick off 5.41.10 release; add Karen Etheridge for 5.41.11</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/58e440aa52267d2298df084b75e42b384e92b367">commit</a> | <a href="/perl5.git/commitdiff/58e440aa52267d2298df084b75e42b384e92b367">commitdiff</a> | <a href="/perl5.git/tree/58e440aa52267d2298df084b75e42b384e92b367">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Lukas+Mai;st=author" title="Search for commits authored by Lukas Mai">Lukas Mai</a> [<span class="datetime">Fri, 21 Mar 2025 13:38:11 +0000</span> (14:38 +0100)]</span> <br/> </div> <div class="log_body"> tick&nbsp;off&nbsp;5.41.10&nbsp;release;&nbsp;add&nbsp;Karen&nbsp;Etheridge&nbsp;for&nbsp;5.41.11<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/89121d15bc548956ec8aa904428ec47a0a7119fa"><span class="age">11 days ago</span>Add epigraph for 5.41.10</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/89121d15bc548956ec8aa904428ec47a0a7119fa">commit</a> | <a href="/perl5.git/commitdiff/89121d15bc548956ec8aa904428ec47a0a7119fa">commitdiff</a> | <a href="/perl5.git/tree/89121d15bc548956ec8aa904428ec47a0a7119fa">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Lukas+Mai;st=author" title="Search for commits authored by Lukas Mai">Lukas Mai</a> [<span class="datetime">Fri, 21 Mar 2025 13:33:49 +0000</span> (14:33 +0100)]</span> <br/> </div> <div class="log_body"> Add&nbsp;epigraph&nbsp;for&nbsp;5.41.10<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/6a1cf63fc3f0e8d25b8f3837f9ca46b3bbc65885"><span class="age">11 days ago</span>Add new release to perlhist <span class="refs"> <span class="tag indirect" title="tags/v5.41.10"><a href="/perl5.git/tag/refs/tags/v5.41.10">v5.41.10</a></span></span></a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/6a1cf63fc3f0e8d25b8f3837f9ca46b3bbc65885">commit</a> | <a href="/perl5.git/commitdiff/6a1cf63fc3f0e8d25b8f3837f9ca46b3bbc65885">commitdiff</a> | <a href="/perl5.git/tree/6a1cf63fc3f0e8d25b8f3837f9ca46b3bbc65885">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Lukas+Mai;st=author" title="Search for commits authored by Lukas Mai">Lukas Mai</a> [<span class="datetime">Fri, 21 Mar 2025 10:25:08 +0000</span> (11:25 +0100)]</span> <br/> </div> <div class="log_body"> Add&nbsp;new&nbsp;release&nbsp;to&nbsp;perlhist<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/0e9419c21980a6e85db2ccc1928e34bc4382787c"><span class="age">11 days ago</span>Finalize perldelta</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/0e9419c21980a6e85db2ccc1928e34bc4382787c">commit</a> | <a href="/perl5.git/commitdiff/0e9419c21980a6e85db2ccc1928e34bc4382787c">commitdiff</a> | <a href="/perl5.git/tree/0e9419c21980a6e85db2ccc1928e34bc4382787c">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Lukas+Mai;st=author" title="Search for commits authored by Lukas Mai">Lukas Mai</a> [<span class="datetime">Fri, 21 Mar 2025 10:16:58 +0000</span> (11:16 +0100)]</span> <br/> </div> <div class="log_body"> Finalize&nbsp;perldelta<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/f95b18b200447c942e238bd2c3f306f3a7a19ded"><span class="age">11 days ago</span>Update Module::CoreList for 5.41.10</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/f95b18b200447c942e238bd2c3f306f3a7a19ded">commit</a> | <a href="/perl5.git/commitdiff/f95b18b200447c942e238bd2c3f306f3a7a19ded">commitdiff</a> | <a href="/perl5.git/tree/f95b18b200447c942e238bd2c3f306f3a7a19ded">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Lukas+Mai;st=author" title="Search for commits authored by Lukas Mai">Lukas Mai</a> [<span class="datetime">Fri, 21 Mar 2025 09:14:40 +0000</span> (10:14 +0100)]</span> <br/> </div> <div class="log_body"> Update&nbsp;Module::CoreList&nbsp;for&nbsp;5.41.10<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/1fe2652706fcc8c8e954c8bef4c1817f316b6388"><span class="age">11 days ago</span>Porting/acknowledgements.pl: fix encoding of author names</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/1fe2652706fcc8c8e954c8bef4c1817f316b6388">commit</a> | <a href="/perl5.git/commitdiff/1fe2652706fcc8c8e954c8bef4c1817f316b6388">commitdiff</a> | <a href="/perl5.git/tree/1fe2652706fcc8c8e954c8bef4c1817f316b6388">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Lukas+Mai;st=author" title="Search for commits authored by Lukas Mai">Lukas Mai</a> [<span class="datetime">Fri, 21 Mar 2025 09:36:30 +0000</span> (10:36 +0100)]</span> <br/> </div> <div class="log_body"> Porting/acknowledgements.pl:&nbsp;fix&nbsp;encoding&nbsp;of&nbsp;author&nbsp;names<br/> <br/> Previously,&nbsp;running&nbsp;`Porting/acknowledgements.pl`&nbsp;or<br/> `Porting/updateAUTHORS.pl&nbsp;--who`&nbsp;in&nbsp;a&nbsp;&quot;UTF-8&nbsp;by&nbsp;default&quot;&nbsp;environment<br/> (such&nbsp;as&nbsp;with&nbsp;`LANG=en_US.UTF-8&nbsp;PERL_UNICODE=SL`)&nbsp;would&nbsp;mangle&nbsp;non-ASCII<br/> characters&nbsp;in&nbsp;authors&#39;&nbsp;names.&nbsp;(More&nbsp;specifically,&nbsp;it&nbsp;would&nbsp;double-encode<br/> non-ASCII&nbsp;characters,&nbsp;so&nbsp;&quot;Mannsåker&quot;&nbsp;would&nbsp;render&nbsp;as&nbsp;&quot;MannsÃ¥ker&quot;.)<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/33a8b15ea5268b50f1e50dc8a69e300903c07b93"><span class="age">11 days ago</span>Porting/release_managers_guide.pod: fix CoreList spelling</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/33a8b15ea5268b50f1e50dc8a69e300903c07b93">commit</a> | <a href="/perl5.git/commitdiff/33a8b15ea5268b50f1e50dc8a69e300903c07b93">commitdiff</a> | <a href="/perl5.git/tree/33a8b15ea5268b50f1e50dc8a69e300903c07b93">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Lukas+Mai;st=author" title="Search for commits authored by Lukas Mai">Lukas Mai</a> [<span class="datetime">Fri, 21 Mar 2025 09:16:58 +0000</span> (10:16 +0100)]</span> <br/> </div> <div class="log_body"> Porting/release_managers_guide.pod:&nbsp;fix&nbsp;CoreList&nbsp;spelling<br/> <br/> It&#39;s&nbsp;CoreList,&nbsp;not&nbsp;Corelist.&nbsp;(And&nbsp;add&nbsp;F&lt;&nbsp;&gt;&nbsp;markup&nbsp;while&nbsp;we&#39;re&nbsp;at&nbsp;it.)<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/b0bc5378f8286ec2f3d232fbd6b3e9973e425558"><span class="age">11 days ago</span>INSTALL: fix version number in &quot;Upgrading from&quot;</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/b0bc5378f8286ec2f3d232fbd6b3e9973e425558">commit</a> | <a href="/perl5.git/commitdiff/b0bc5378f8286ec2f3d232fbd6b3e9973e425558">commitdiff</a> | <a href="/perl5.git/tree/b0bc5378f8286ec2f3d232fbd6b3e9973e425558">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Lukas+Mai;st=author" title="Search for commits authored by Lukas Mai">Lukas Mai</a> [<span class="datetime">Wed, 19 Mar 2025 14:50:42 +0000</span> (15:50 +0100)]</span> <br/> </div> <div class="log_body"> INSTALL:&nbsp;fix&nbsp;version&nbsp;number&nbsp;in&nbsp;&quot;Upgrading&nbsp;from&quot;<br/> <br/> ...&nbsp;in&nbsp;accordance&nbsp;with&nbsp;Porting/release_managers_guide.pod,&nbsp;&quot;Update<br/> INSTALL&quot;&nbsp;for&nbsp;BLEAD-POINT.<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/514c4e20b23bb7251175642a8b0b522bcae2bda8"><span class="age">12 days ago</span>Remove redundant code that handles mg_obj of PERL_MAGIC_symtab</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/514c4e20b23bb7251175642a8b0b522bcae2bda8">commit</a> | <a href="/perl5.git/commitdiff/514c4e20b23bb7251175642a8b0b522bcae2bda8">commitdiff</a> | <a href="/perl5.git/tree/514c4e20b23bb7251175642a8b0b522bcae2bda8">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Paul+%22LeoNerd%22+Evans;st=author" title="Search for commits authored by Paul &quot;LeoNerd&quot; Evans">Paul &quot;LeoNerd&quot; Evans</a> [<span class="datetime">Wed, 19 Mar 2025 15:54:08 +0000</span> (15:54 +0000)]</span> <br/> </div> <div class="log_body"> Remove&nbsp;redundant&nbsp;code&nbsp;that&nbsp;handles&nbsp;mg_obj&nbsp;of&nbsp;PERL_MAGIC_symtab<br/> <br/> The&nbsp;(badly-named)&nbsp;PERL_MAGIC_symtab&nbsp;no&nbsp;longer&nbsp;uses&nbsp;the&nbsp;`mg_obj`&nbsp;field,<br/> ever&nbsp;since&nbsp;it&nbsp;was&nbsp;reshaped&nbsp;by&nbsp;<a class="text" href="/perl5.git/object/c2b1997a64b4faf9c52a72614bfeb0a1f6eeeba8">c2b1997a64b4faf9c52a72614bfeb0a1f6eeeba8</a><br/> <br/> This&nbsp;magic&nbsp;is&nbsp;only&nbsp;applied&nbsp;in&nbsp;one&nbsp;place&nbsp;(at&nbsp;time&nbsp;of&nbsp;writing,&nbsp;toke.c&nbsp;line<br/> 10711)&nbsp;with&nbsp;the&nbsp;`obj`&nbsp;field&nbsp;set&nbsp;to&nbsp;NULL.&nbsp;Therefore,&nbsp;there&nbsp;is&nbsp;no&nbsp;point<br/> having&nbsp;code&nbsp;in&nbsp;`dump.c`&nbsp;to&nbsp;print&nbsp;it&nbsp;if&nbsp;non-NULL,&nbsp;nor&nbsp;in&nbsp;`sv.c`&nbsp;to<br/> special-case&nbsp;setting&nbsp;a&nbsp;non-NULL&nbsp;value&nbsp;in&nbsp;`sv_magicext()`.<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/9365cdf765d479a867ee523e7593e40d72e836f3"><span class="age">12 days ago</span>Use ck_warner() more</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/9365cdf765d479a867ee523e7593e40d72e836f3">commit</a> | <a href="/perl5.git/commitdiff/9365cdf765d479a867ee523e7593e40d72e836f3">commitdiff</a> | <a href="/perl5.git/tree/9365cdf765d479a867ee523e7593e40d72e836f3">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Dagfinn+Ilmari+Manns%C3%A5ker;st=author" title="Search for commits authored by Dagfinn Ilmari Mannsåker">Dagfinn Ilmari Mannsåker</a> [<span class="datetime">Tue, 18 Mar 2025 19:32:46 +0000</span> (19:32 +0000)]</span> <br/> </div> <div class="log_body"> Use&nbsp;ck_warner()&nbsp;more<br/> <br/> Replace&nbsp;trivial&nbsp;uses&nbsp;of<br/> <br/> &nbsp;&nbsp;&nbsp;&nbsp;if(ckWARN(WARN_FOO))<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;warner(packWARN(WARN_FOO),&nbsp;...);<br/> <br/> with<br/> <br/> &nbsp;&nbsp;&nbsp;&nbsp;ck_warner(packWARN(WARN_FOO),&nbsp;...);<br/> <br/> This&nbsp;does&nbsp;mean&nbsp;that&nbsp;the&nbsp;format&nbsp;string&nbsp;arguments&nbsp;get&nbsp;evaluated&nbsp;even&nbsp;if<br/> the&nbsp;warning&nbsp;category&nbsp;isn&#39;t&nbsp;enabled,&nbsp;but&nbsp;the&nbsp;most&nbsp;expensive&nbsp;thing&nbsp;I<br/> could&nbsp;see&nbsp;was&nbsp;Strerror(),&nbsp;which&nbsp;I&nbsp;woudn&#39;t&nbsp;worry&nbsp;about.<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/1b66608de92a5824399f86cf3c4c82b3e4d169c3"><span class="age">12 days ago</span>win32/perlhost.h: revert changes to SETUPEXCHANGE</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/1b66608de92a5824399f86cf3c4c82b3e4d169c3">commit</a> | <a href="/perl5.git/commitdiff/1b66608de92a5824399f86cf3c4c82b3e4d169c3">commitdiff</a> | <a href="/perl5.git/tree/1b66608de92a5824399f86cf3c4c82b3e4d169c3">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Lukas+Mai;st=author" title="Search for commits authored by Lukas Mai">Lukas Mai</a> [<span class="datetime">Thu, 20 Mar 2025 00:05:07 +0000</span> (<span class="atnight">01:05</span> +0100)]</span> <br/> </div> <div class="log_body"> win32/perlhost.h:&nbsp;revert&nbsp;changes&nbsp;to&nbsp;SETUPEXCHANGE<br/> <br/> This&nbsp;was&nbsp;broken&nbsp;by&nbsp;<a class="text" href="/perl5.git/object/48bda52b92">48bda52b92</a>,&nbsp;which&nbsp;removed&nbsp;the&nbsp;`*`&nbsp;before&nbsp;`xptr`.<br/> Without&nbsp;`*`,&nbsp;we&nbsp;set&nbsp;our&nbsp;`iptr`&nbsp;(a&nbsp;class&nbsp;member)&nbsp;to&nbsp;a&nbsp;bogus&nbsp;pointer,&nbsp;and<br/> the&nbsp;assignment&nbsp;to&nbsp;`xptr`&nbsp;(which&nbsp;is&nbsp;a&nbsp;function&nbsp;parameter&nbsp;and&nbsp;hence&nbsp;a<br/> local&nbsp;variable)&nbsp;is&nbsp;effectively&nbsp;dead&nbsp;code.<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/dd8625e73c7f91a1ef58ae8355707bb2dce8d37c"><span class="age">13 days ago</span>Safe: clean up some tests</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/dd8625e73c7f91a1ef58ae8355707bb2dce8d37c">commit</a> | <a href="/perl5.git/commitdiff/dd8625e73c7f91a1ef58ae8355707bb2dce8d37c">commitdiff</a> | <a href="/perl5.git/tree/dd8625e73c7f91a1ef58ae8355707bb2dce8d37c">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Lukas+Mai;st=author" title="Search for commits authored by Lukas Mai">Lukas Mai</a> [<span class="datetime">Sat, 15 Mar 2025 12:18:53 +0000</span> (13:18 +0100)]</span> <br/> </div> <div class="log_body"> Safe:&nbsp;clean&nbsp;up&nbsp;some&nbsp;tests<br/> <br/> -&nbsp;`BEGIN&nbsp;{&nbsp;require&nbsp;Config;&nbsp;Config-&gt;import;&nbsp;}`&nbsp;-&gt;&nbsp;`use&nbsp;Config;`<br/> -&nbsp;`new&nbsp;Safe`&nbsp;-&gt;&nbsp;`Safe-&gt;new`<br/> -&nbsp;more&nbsp;use&nbsp;of&nbsp;Test::More&nbsp;skip_all&nbsp;instead&nbsp;of&nbsp;manual&nbsp;print/exit<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/abaee7c6ca652e5e74f8bc3ebffc49a92341bd65"><span class="age">13 days ago</span>perldelta for SvVSTRING</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/abaee7c6ca652e5e74f8bc3ebffc49a92341bd65">commit</a> | <a href="/perl5.git/commitdiff/abaee7c6ca652e5e74f8bc3ebffc49a92341bd65">commitdiff</a> | <a href="/perl5.git/tree/abaee7c6ca652e5e74f8bc3ebffc49a92341bd65">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Paul+%22LeoNerd%22+Evans;st=author" title="Search for commits authored by Paul &quot;LeoNerd&quot; Evans">Paul &quot;LeoNerd&quot; Evans</a> [<span class="datetime">Wed, 19 Mar 2025 15:58:08 +0000</span> (15:58 +0000)]</span> <br/> </div> <div class="log_body"> perldelta&nbsp;for&nbsp;SvVSTRING<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/1fb05c6f7dcd4efde7ac9e3796231129ae970f7a"><span class="age">13 days ago</span>Regenerate podcheck.t db after fix</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/1fb05c6f7dcd4efde7ac9e3796231129ae970f7a">commit</a> | <a href="/perl5.git/commitdiff/1fb05c6f7dcd4efde7ac9e3796231129ae970f7a">commitdiff</a> | <a href="/perl5.git/tree/1fb05c6f7dcd4efde7ac9e3796231129ae970f7a">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Karl+Williamson;st=author" title="Search for commits authored by Karl Williamson">Karl Williamson</a> [<span class="datetime">Wed, 19 Mar 2025 14:46:33 +0000</span> (08:46 -0600)]</span> <br/> </div> <div class="log_body"> Regenerate&nbsp;podcheck.t&nbsp;db&nbsp;after&nbsp;fix<br/> <br/> <a class="text" href="/perl5.git/object/3c6cd8bb4c475d07e12769dacb3140aff967923e">3c6cd8bb4c475d07e12769dacb3140aff967923e</a>&nbsp;fixed&nbsp;an&nbsp;issue&nbsp;with&nbsp;podcheck,<br/> which&nbsp;allowed&nbsp;it&nbsp;to&nbsp;better&nbsp;distinguish&nbsp;between&nbsp;problems&nbsp;and<br/> non-problems.<br/> <br/> This&nbsp;current&nbsp;commit&nbsp;regenerates&nbsp;its&nbsp;data&nbsp;base&nbsp;as&nbsp;a&nbsp;result.<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/4f3b6bcd3bb068ca51402337a5ad7f232a184996"><span class="age">13 days ago</span>perlhacktips: fix trivial typos</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/4f3b6bcd3bb068ca51402337a5ad7f232a184996">commit</a> | <a href="/perl5.git/commitdiff/4f3b6bcd3bb068ca51402337a5ad7f232a184996">commitdiff</a> | <a href="/perl5.git/tree/4f3b6bcd3bb068ca51402337a5ad7f232a184996">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Lukas+Mai;st=author" title="Search for commits authored by Lukas Mai">Lukas Mai</a> [<span class="datetime">Wed, 19 Mar 2025 10:03:52 +0000</span> (11:03 +0100)]</span> <br/> </div> <div class="log_body"> perlhacktips:&nbsp;fix&nbsp;trivial&nbsp;typos<br/> <br/> `&lt;stdbool.h`&nbsp;was&nbsp;missing&nbsp;its&nbsp;closing&nbsp;`&gt;`.<br/> `S&lt;C&lt;(bool)&gt;&nbsp;I&lt;expr&gt;&gt;&gt;`&nbsp;had&nbsp;one&nbsp;`&gt;`&nbsp;too&nbsp;many.<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/3c6cd8bb4c475d07e12769dacb3140aff967923e"><span class="age">13 days ago</span>t/porting/podcheck.t: allow &#39; in English words</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/3c6cd8bb4c475d07e12769dacb3140aff967923e">commit</a> | <a href="/perl5.git/commitdiff/3c6cd8bb4c475d07e12769dacb3140aff967923e">commitdiff</a> | <a href="/perl5.git/tree/3c6cd8bb4c475d07e12769dacb3140aff967923e">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Lukas+Mai;st=author" title="Search for commits authored by Lukas Mai">Lukas Mai</a> [<span class="datetime">Wed, 19 Mar 2025 08:52:16 +0000</span> (09:52 +0100)]</span> <br/> </div> <div class="log_body"> t/porting/podcheck.t:&nbsp;allow&nbsp;&#39;&nbsp;in&nbsp;English&nbsp;words<br/> <br/> podcheck.t&nbsp;uses&nbsp;a&nbsp;crude&nbsp;heuristic&nbsp;to&nbsp;identify&nbsp;links&nbsp;that&nbsp;use&nbsp;the&nbsp;wrong<br/> POD&nbsp;syntax&nbsp;(e.g.&nbsp;C&lt;Some::Module&gt;&nbsp;instead&nbsp;of&nbsp;L&lt;Some::Module&gt;):&nbsp;It&nbsp;checks<br/> whether&nbsp;the&nbsp;word&nbsp;before&nbsp;the&nbsp;C&lt;...&gt;&nbsp;markup&nbsp;was&nbsp;&quot;see&quot;.&nbsp;This&nbsp;has&nbsp;the<br/> potential&nbsp;for&nbsp;a&nbsp;lot&nbsp;of&nbsp;false&nbsp;positives,&nbsp;so&nbsp;it&nbsp;adds&nbsp;an&nbsp;additional&nbsp;check:<br/> If&nbsp;the&nbsp;words&nbsp;before&nbsp;&quot;see&quot;&nbsp;include&nbsp;the&nbsp;word&nbsp;&quot;you&quot;,&nbsp;we&nbsp;don&#39;t&nbsp;count&nbsp;it&nbsp;as&nbsp;a<br/> link&nbsp;attempt.&nbsp;This&nbsp;is&nbsp;to&nbsp;rule&nbsp;out&nbsp;cases&nbsp;like&nbsp;&quot;you&nbsp;may&nbsp;see&nbsp;C&lt;mtfnpy&gt;&nbsp;in<br/> the&nbsp;output&quot;.<br/> <br/> However,&nbsp;that&nbsp;heuristic&nbsp;failed&nbsp;on&nbsp;this&nbsp;example&nbsp;from&nbsp;perlport:<br/> <br/> &nbsp;&nbsp;&nbsp;&nbsp;on&nbsp;Unix&nbsp;you&#39;ll&nbsp;see&nbsp;C&lt;&quot;a.&quot;&gt;<br/> <br/> This&nbsp;is&nbsp;because&nbsp;&#39;&nbsp;is&nbsp;not&nbsp;a&nbsp;word&nbsp;character,&nbsp;so&nbsp;the&nbsp;leading&nbsp;context&nbsp;was<br/> just&nbsp;&quot;ll&quot;,&nbsp;which&nbsp;doesn&#39;t&nbsp;contain&nbsp;&quot;you&quot;:<br/> <br/> &nbsp;&nbsp;&nbsp;&nbsp;not&nbsp;ok&nbsp;241&nbsp;-&nbsp;POD&nbsp;of&nbsp;pod/perlport.pod<br/> &nbsp;&nbsp;&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&quot;?&nbsp;Should&nbsp;you&nbsp;be&nbsp;using&nbsp;L&lt;...&gt;&nbsp;instead&nbsp;of&quot;<br/> &nbsp;&nbsp;&nbsp;&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;C&lt;&quot;a.&quot;&gt;&nbsp;near&nbsp;line&nbsp;1104&nbsp;of&nbsp;pod/perlport.pod<br/> <br/> This&nbsp;patch&nbsp;teaches&nbsp;podcheck.t&nbsp;about&nbsp;common&nbsp;English&nbsp;short&nbsp;forms&nbsp;such&nbsp;as<br/> &quot;you&#39;ll&quot;,&nbsp;&quot;you&#39;re&quot;,&nbsp;or&nbsp;&quot;you&#39;d&quot;.<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/b01c26f97ee3aaf686c45d31232c426619b1ee9e"><span class="age">13 days ago</span>Zefram&#39;s obituary</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/b01c26f97ee3aaf686c45d31232c426619b1ee9e">commit</a> | <a href="/perl5.git/commitdiff/b01c26f97ee3aaf686c45d31232c426619b1ee9e">commitdiff</a> | <a href="/perl5.git/tree/b01c26f97ee3aaf686c45d31232c426619b1ee9e">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Philippe+Bruhat+(BooK);st=author" title="Search for commits authored by Philippe Bruhat (BooK)">Philippe Bruhat (BooK)</a> [<span class="datetime">Fri, 14 Mar 2025 17:06:23 +0000</span> (18:06 +0100)]</span> <br/> </div> <div class="log_body"> Zefram&#39;s&nbsp;obituary<br/> <br/> <span class="signoff">Co-authored-by: Paul Evans &lt;leonerd@leonerd.org.uk&gt;</span><br/> <span class="signoff">Co-authored-by: Christian Walde (Mithaldu) &lt;walde.christian@gmail.com&gt;</span><br/> <span class="signoff">Co-authored-by: Sawyer X &lt;xsawyerx@cpan.org&gt;</span><br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/d8f8b812af8405c510b20d98d218a8838f4d8d70"><span class="age">2 weeks ago</span>cpan/Archive-Tar - Re-Update to version 3.04</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/d8f8b812af8405c510b20d98d218a8838f4d8d70">commit</a> | <a href="/perl5.git/commitdiff/d8f8b812af8405c510b20d98d218a8838f4d8d70">commitdiff</a> | <a href="/perl5.git/tree/d8f8b812af8405c510b20d98d218a8838f4d8d70">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Lukas+Mai;st=author" title="Search for commits authored by Lukas Mai">Lukas Mai</a> [<span class="datetime">Wed, 19 Mar 2025 07:01:59 +0000</span> (08:01 +0100)]</span> <br/> </div> <div class="log_body"> cpan/Archive-Tar&nbsp;-&nbsp;Re-Update&nbsp;to&nbsp;version&nbsp;3.04<br/> <br/> 3.04&nbsp;&nbsp;25/02/2025&nbsp;(Dan&nbsp;Church,&nbsp;Arne&nbsp;Johannessen&nbsp;&amp;&amp;&nbsp;SISYPHUS)<br/> -&nbsp;Fix&nbsp;handling&nbsp;filenames&nbsp;with&nbsp;trailing&nbsp;whitespace<br/> -&nbsp;Allow&nbsp;--format=ustar&nbsp;option&nbsp;for&nbsp;ptar<br/> -&nbsp;GH#21402&nbsp;Symlink&nbsp;tests&nbsp;on&nbsp;Windows<br/> <br/> 3.02&nbsp;&nbsp;13/04/2023&nbsp;(Manfred&nbsp;Stock)<br/> -&nbsp;Test&nbsp;block&nbsp;sizes&nbsp;up&nbsp;to&nbsp;(2**31&nbsp;-&nbsp;1)&nbsp;bytes&nbsp;only&nbsp;(fix&nbsp;for&nbsp;32bit&nbsp;perls)<br/> -&nbsp;Don&#39;t&nbsp;match&nbsp;on&nbsp;message&nbsp;from&nbsp;exception&nbsp;in&nbsp;symlink&nbsp;test<br/> -&nbsp;Improve&nbsp;formatting&nbsp;of&nbsp;$Archive::Tar::RESOLVE_SYMLINK&nbsp;documentation<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/72c0b8bd8c8a47037590cfd97b481e83ba423829"><span class="age">2 weeks ago</span>cpan/Math-BigInt-FastCalc - Update to version 0.5019</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/72c0b8bd8c8a47037590cfd97b481e83ba423829">commit</a> | <a href="/perl5.git/commitdiff/72c0b8bd8c8a47037590cfd97b481e83ba423829">commitdiff</a> | <a href="/perl5.git/tree/72c0b8bd8c8a47037590cfd97b481e83ba423829">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Lukas+Mai;st=author" title="Search for commits authored by Lukas Mai">Lukas Mai</a> [<span class="datetime">Wed, 19 Mar 2025 05:32:26 +0000</span> (06:32 +0100)]</span> <br/> </div> <div class="log_body"> cpan/Math-BigInt-FastCalc&nbsp;-&nbsp;Update&nbsp;to&nbsp;version&nbsp;0.5019<br/> <br/> 0.5019&nbsp;2025-02-22<br/> <br/> &nbsp;*&nbsp;Sync&nbsp;test&nbsp;files&nbsp;with&nbsp;Math-BigInt.<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/6f3297e20b6ddb5c618a29f86e3cde7b681d051f"><span class="age">2 weeks ago</span>cpan/Math-BigInt - Update to version 2.004001</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/6f3297e20b6ddb5c618a29f86e3cde7b681d051f">commit</a> | <a href="/perl5.git/commitdiff/6f3297e20b6ddb5c618a29f86e3cde7b681d051f">commitdiff</a> | <a href="/perl5.git/tree/6f3297e20b6ddb5c618a29f86e3cde7b681d051f">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Lukas+Mai;st=author" title="Search for commits authored by Lukas Mai">Lukas Mai</a> [<span class="datetime">Wed, 19 Mar 2025 05:16:05 +0000</span> (06:16 +0100)]</span> <br/> </div> <div class="log_body"> cpan/Math-BigInt&nbsp;-&nbsp;Update&nbsp;to&nbsp;version&nbsp;2.004001<br/> <br/> 2.004001&nbsp;2025-02-12<br/> <br/> *&nbsp;Improve&nbsp;upgrading&nbsp;and&nbsp;downgrading.<br/> <br/> &nbsp;&nbsp;-&nbsp;Upgrading&nbsp;and&nbsp;downgrading&nbsp;is&nbsp;more&nbsp;consistent.<br/> <br/> &nbsp;&nbsp;-&nbsp;Upgrading&nbsp;and&nbsp;downgrading&nbsp;now&nbsp;keeps&nbsp;the&nbsp;reference,&nbsp;so&nbsp;in&nbsp;the&nbsp;following<br/> &nbsp;&nbsp;&nbsp;&nbsp;example,&nbsp;$x&nbsp;changes&nbsp;from&nbsp;being&nbsp;a&nbsp;Math::BigInt&nbsp;with&nbsp;a&nbsp;value&nbsp;of&nbsp;2&nbsp;to&nbsp;a<br/> &nbsp;&nbsp;&nbsp;&nbsp;Math::BigFloat&nbsp;with&nbsp;the&nbsp;value&nbsp;1.4142...<br/> <br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;perl&nbsp;-Mbignum&nbsp;-le&nbsp;&#39;$x&nbsp;=&nbsp;2;&nbsp;$x&nbsp;-&gt;&nbsp;bsqrt();&nbsp;print&nbsp;$x&#39;<br/> <br/> *&nbsp;Fix&nbsp;bug&nbsp;in&nbsp;Math::BigFloat-&gt;bdiv():&nbsp;in&nbsp;list&nbsp;context,&nbsp;bdiv()&nbsp;would&nbsp;do&nbsp;floored<br/> &nbsp;&nbsp;division,&nbsp;except&nbsp;when&nbsp;the&nbsp;denominator&nbsp;was&nbsp;1.&nbsp;Now,&nbsp;bdiv()&nbsp;always&nbsp;does&nbsp;floored<br/> &nbsp;&nbsp;division.<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/b64bec86a023755e02cb34e58dad1e420a3abb8f"><span class="age">2 weeks ago</span>cpan/Archive-Tar - Update to version 3.04</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/b64bec86a023755e02cb34e58dad1e420a3abb8f">commit</a> | <a href="/perl5.git/commitdiff/b64bec86a023755e02cb34e58dad1e420a3abb8f">commitdiff</a> | <a href="/perl5.git/tree/b64bec86a023755e02cb34e58dad1e420a3abb8f">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Lukas+Mai;st=author" title="Search for commits authored by Lukas Mai">Lukas Mai</a> [<span class="datetime">Wed, 19 Mar 2025 05:05:53 +0000</span> (06:05 +0100)]</span> <br/> </div> <div class="log_body"> cpan/Archive-Tar&nbsp;-&nbsp;Update&nbsp;to&nbsp;version&nbsp;3.04<br/> <br/> 3.04&nbsp;&nbsp;25/02/2025&nbsp;(Dan&nbsp;Church,&nbsp;Arne&nbsp;Johannessen&nbsp;&amp;&amp;&nbsp;SISYPHUS)<br/> -&nbsp;Fix&nbsp;handling&nbsp;filenames&nbsp;with&nbsp;trailing&nbsp;whitespace<br/> -&nbsp;Allow&nbsp;--format=ustar&nbsp;option&nbsp;for&nbsp;ptar<br/> -&nbsp;GH#21402&nbsp;Symlink&nbsp;tests&nbsp;on&nbsp;Windows<br/> <br/> 3.02&nbsp;&nbsp;13/04/2023&nbsp;(Manfred&nbsp;Stock)<br/> -&nbsp;Test&nbsp;block&nbsp;sizes&nbsp;up&nbsp;to&nbsp;(2**31&nbsp;-&nbsp;1)&nbsp;bytes&nbsp;only&nbsp;(fix&nbsp;for&nbsp;32bit&nbsp;perls)<br/> -&nbsp;Don&#39;t&nbsp;match&nbsp;on&nbsp;message&nbsp;from&nbsp;exception&nbsp;in&nbsp;symlink&nbsp;test<br/> -&nbsp;Improve&nbsp;formatting&nbsp;of&nbsp;$Archive::Tar::RESOLVE_SYMLINK&nbsp;documentation<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/30aeaad51e8ffce935691849a8431213ff7bbb45"><span class="age">2 weeks ago</span>Stop calling Perl_*warn*() manually in core</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/30aeaad51e8ffce935691849a8431213ff7bbb45">commit</a> | <a href="/perl5.git/commitdiff/30aeaad51e8ffce935691849a8431213ff7bbb45">commitdiff</a> | <a href="/perl5.git/tree/30aeaad51e8ffce935691849a8431213ff7bbb45">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Dagfinn+Ilmari+Manns%C3%A5ker;st=author" title="Search for commits authored by Dagfinn Ilmari Mannsåker">Dagfinn Ilmari Mannsåker</a> [<span class="datetime">Tue, 18 Mar 2025 18:49:09 +0000</span> (18:49 +0000)]</span> <br/> </div> <div class="log_body"> Stop&nbsp;calling&nbsp;Perl_*warn*()&nbsp;manually&nbsp;in&nbsp;core<br/> <br/> Except&nbsp;reg*.[ch],&nbsp;which&nbsp;are&nbsp;also&nbsp;compiled&nbsp;&quot;outside&quot;&nbsp;core&nbsp;for&nbsp;re.pm<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/7066fe715bfd61929df7e10d78ad2b96f56948f3"><span class="age">2 weeks ago</span>Thread::Queue: clean up some tests</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/7066fe715bfd61929df7e10d78ad2b96f56948f3">commit</a> | <a href="/perl5.git/commitdiff/7066fe715bfd61929df7e10d78ad2b96f56948f3">commitdiff</a> | <a href="/perl5.git/tree/7066fe715bfd61929df7e10d78ad2b96f56948f3">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Lukas+Mai;st=author" title="Search for commits authored by Lukas Mai">Lukas Mai</a> [<span class="datetime">Sat, 15 Mar 2025 12:23:14 +0000</span> (13:23 +0100)]</span> <br/> </div> <div class="log_body"> Thread::Queue:&nbsp;clean&nbsp;up&nbsp;some&nbsp;tests<br/> <br/> Some&nbsp;of&nbsp;the&nbsp;tests&nbsp;(04_errs.t,&nbsp;08_nothreads.t,&nbsp;09_ended.t)&nbsp;already&nbsp;use<br/> Test::More&nbsp;unconditionally,&nbsp;so&nbsp;remove&nbsp;the&nbsp;conditional&nbsp;loading&nbsp;code&nbsp;from<br/> the&nbsp;other&nbsp;tests.&nbsp;Also,&nbsp;`use&nbsp;Config`&nbsp;doesn&#39;t&nbsp;need&nbsp;to&nbsp;be&nbsp;in&nbsp;a&nbsp;BEGIN&nbsp;block.<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/8b1b46cdfe5137474a84e023db9c2cd79704c050"><span class="age">2 weeks ago</span>various tests: replace BEGIN/require/import by use</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/8b1b46cdfe5137474a84e023db9c2cd79704c050">commit</a> | <a href="/perl5.git/commitdiff/8b1b46cdfe5137474a84e023db9c2cd79704c050">commitdiff</a> | <a href="/perl5.git/tree/8b1b46cdfe5137474a84e023db9c2cd79704c050">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Lukas+Mai;st=author" title="Search for commits authored by Lukas Mai">Lukas Mai</a> [<span class="datetime">Sat, 15 Mar 2025 09:52:45 +0000</span> (10:52 +0100)]</span> <br/> </div> <div class="log_body"> various&nbsp;tests:&nbsp;replace&nbsp;BEGIN/require/import&nbsp;by&nbsp;use<br/> <br/> That&nbsp;is,&nbsp;turn<br/> <br/> &nbsp;&nbsp;&nbsp;&nbsp;BEGIN&nbsp;{<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;require&nbsp;Foo;<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Foo-&gt;import(...);<br/> &nbsp;&nbsp;&nbsp;&nbsp;}<br/> <br/> into<br/> <br/> &nbsp;&nbsp;&nbsp;&nbsp;use&nbsp;Foo&nbsp;...;<br/> <br/> (Except&nbsp;for&nbsp;a&nbsp;few&nbsp;tests&nbsp;that&nbsp;did&nbsp;the&nbsp;`require&nbsp;Config;&nbsp;Config-&gt;import`<br/> dance&nbsp;without&nbsp;actually&nbsp;using&nbsp;`%Config`&nbsp;anywhere,&nbsp;so&nbsp;I&nbsp;just&nbsp;deleted&nbsp;the<br/> import&nbsp;code.)<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/650608f18d020356072e3ada793633c154ea25cd"><span class="age">2 weeks ago</span>de-layer Perlhost.h&#39;s 3 Malloc() classed + Cwd class</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/650608f18d020356072e3ada793633c154ea25cd">commit</a> | <a href="/perl5.git/commitdiff/650608f18d020356072e3ada793633c154ea25cd">commitdiff</a> | <a href="/perl5.git/tree/650608f18d020356072e3ada793633c154ea25cd">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=bulk88;st=author" title="Search for commits authored by bulk88">bulk88</a> [<span class="datetime">Thu, 31 Oct 2024 13:53:34 +0000</span> (09:53 -0400)]</span> <br/> </div> <div class="log_body"> de-layer&nbsp;Perlhost.h&#39;s&nbsp;3&nbsp;Malloc()&nbsp;classed&nbsp;+&nbsp;Cwd&nbsp;class<br/> <br/> -Perl&#39;s&nbsp;primary&nbsp;malloc&nbsp;pool&nbsp;(per&nbsp;interp,&nbsp;never&nbsp;ithread&nbsp;shared),&nbsp;doesnt<br/> &nbsp;need&nbsp;CS&nbsp;mutexes,&nbsp;the&nbsp;refcounting/multiple&nbsp;my_perl&nbsp;owners&nbsp;infrastruture,<br/> &nbsp;etc.&nbsp;Inline&nbsp;the&nbsp;IPerlMem/VPerLMem&nbsp;class/struct&nbsp;direct&nbsp;into&nbsp;CPerlHost<br/> &nbsp;class.&nbsp;Less&nbsp;ptr&nbsp;derefs&nbsp;at&nbsp;runtime.&nbsp;Saves&nbsp;memory,&nbsp;because&nbsp;no&nbsp;malloc&nbsp;header.<br/> &nbsp;And&nbsp;remove&nbsp;the&nbsp;0x24&nbsp;???&nbsp;bytes&nbsp;on&nbsp;x86-32&nbsp;CS/mutex&nbsp;struct.<br/> -Use&nbsp;retval&nbsp;of&nbsp;libc&#39;s&nbsp;memset(),&nbsp;saves&nbsp;a&nbsp;non-vol&nbsp;reg&nbsp;push/pop/saving&nbsp;cycle.<br/> &nbsp;ZeroMemory()&nbsp;has&nbsp;void&nbsp;retval.&nbsp;Lack&nbsp;of&nbsp;a&nbsp;Calloc()&nbsp;API&nbsp;in&nbsp;VMem.h&nbsp;is&nbsp;for<br/> &nbsp;another&nbsp;time.<br/> -&quot;virtual&nbsp;int&nbsp;Chdir(const&nbsp;char&nbsp;*dirname);&quot;&nbsp;remove&nbsp;virtual&nbsp;tag.&nbsp;It&nbsp;is<br/> &nbsp;unused&nbsp;ptr&nbsp;indirection.&nbsp;Also&nbsp;the&nbsp;secret&nbsp;C++&nbsp;vtable&nbsp;ptr&nbsp;im&nbsp;CPerlHost<br/> &nbsp;objs&nbsp;is&nbsp;now&nbsp;gone.<br/> -inline&nbsp;VDir&nbsp;obj&nbsp;into&nbsp;CPerlHost,&nbsp;VDir&nbsp;*s&nbsp;are&nbsp;not&nbsp;shared&nbsp;between&nbsp;interps.<br/> -Sort&nbsp;machine&nbsp;type&nbsp;integer&nbsp;members&nbsp;of&nbsp;CPerlHost&nbsp;class&nbsp;by&nbsp;size.&nbsp;Remove<br/> &nbsp;Alignment&nbsp;holes.<br/> -Speedup&nbsp;&nbsp;win32_checkTLS(),&nbsp;win32_checkTLS()&nbsp;is&nbsp;probably&nbsp;redundant<br/> &nbsp;outside&nbsp;-DDEBUGGING&nbsp;nowadays,&nbsp;it&nbsp;was&nbsp;added&nbsp;in&nbsp;commit<br/> <br/> <a class="text" href="/perl5.git/object/222c300afb1c8466398010a3403616462c302185">222c300afb1c8466398010a3403616462c302185</a>&nbsp;&nbsp;1/13/2002&nbsp;10:37:48&nbsp;AM<br/> Win32&nbsp;fixes:<br/> &nbsp;-&nbsp;vmem.h&nbsp;hack&nbsp;to&nbsp;handle&nbsp;free-by-wrong-thread&nbsp;after&nbsp;eval&nbsp;&quot;&quot;.<br/> <br/> still&nbsp;will&nbsp;leave&nbsp;it&nbsp;in&nbsp;for&nbsp;now,&nbsp;just&nbsp;optimize&nbsp;it&nbsp;instead.<br/> <br/> I&nbsp;benchmarked,&nbsp;10000x&nbsp;calls&nbsp;to&nbsp;Perl_get_context()&nbsp;in&nbsp;a&nbsp;loop.<br/> Retval&nbsp;ignored,&nbsp;is&nbsp;126&nbsp;us&nbsp;(microsec).&nbsp;10000x&nbsp;calls&nbsp;to<br/> GetCurrentThreadId(),&nbsp;is&nbsp;34&nbsp;us.<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/48bda52b9281bda747d71484962eaafda206dd34"><span class="age">2 weeks ago</span>fix CHostPerl&#39;s class design &amp; remove CHostPerl malloc-ed fnc vtbls bloat</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/48bda52b9281bda747d71484962eaafda206dd34">commit</a> | <a href="/perl5.git/commitdiff/48bda52b9281bda747d71484962eaafda206dd34">commitdiff</a> | <a href="/perl5.git/tree/48bda52b9281bda747d71484962eaafda206dd34">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Daniel+Dragan;st=author" title="Search for commits authored by Daniel Dragan">Daniel Dragan</a> [<span class="datetime">Fri, 25 Oct 2024 17:29:37 +0000</span> (13:29 -0400)]</span> <br/> </div> <div class="log_body"> fix&nbsp;CHostPerl&#39;s&nbsp;class&nbsp;design&nbsp;&amp;&nbsp;remove&nbsp;CHostPerl&nbsp;malloc-ed&nbsp;fnc&nbsp;vtbls&nbsp;bloat<br/> <br/> Note,&nbsp;non-standard&nbsp;used&nbsp;of&nbsp;&quot;static&nbsp;link&quot;&nbsp;below,&nbsp;I&nbsp;am&nbsp;using&nbsp;it&nbsp;to&nbsp;refer<br/> to&nbsp;static&nbsp;importing&nbsp;funtions/data&nbsp;symbols&nbsp;from&nbsp;another&nbsp;DLL,&nbsp;using&nbsp;the<br/> PE&nbsp;import&nbsp;table.&nbsp;Opposite&nbsp;of&nbsp;&quot;LoadLibrary()&quot;/&quot;GetProcAddress()&quot;<br/> linking.&nbsp;I&nbsp;am&nbsp;NOT&nbsp;using&nbsp;&quot;static&nbsp;link&quot;&nbsp;in&nbsp;typical&nbsp;usage&nbsp;of&nbsp;fully&nbsp;including<br/> a&nbsp;copy&nbsp;of&nbsp;a&nbsp;library&nbsp;at&nbsp;compile&nbsp;time,&nbsp;through&nbsp;a&nbsp;.a/.lib/.o/.obj&nbsp;file.<br/> <br/> Since&nbsp;commit<br/> <br/> Revision:&nbsp;<a class="text" href="/perl5.git/object/af2f850fb5b3bd37dab6742ca16cce6aa5482fb9">af2f850fb5b3bd37dab6742ca16cce6aa5482fb9</a>&nbsp;10/19/2015&nbsp;5:47:16&nbsp;PM<br/> const&nbsp;vtables&nbsp;in&nbsp;win32/perlhost.h<br/> <br/> the&nbsp;vtables&nbsp;have&nbsp;been&nbsp;stored&nbsp;in&nbsp;read-only&nbsp;memory.&nbsp;There&nbsp;have&nbsp;been&nbsp;no&nbsp;bug<br/> tickets&nbsp;or&nbsp;complaints&nbsp;since,&nbsp;of&nbsp;any&nbsp;users,&nbsp;wanting&nbsp;or&nbsp;depending&nbsp;on&nbsp;this<br/> runtime&nbsp;instrumentation&nbsp;system.<br/> <br/> All&nbsp;Win32&nbsp;perl&nbsp;builds,&nbsp;are&nbsp;static&nbsp;DLL&nbsp;linked&nbsp;to&nbsp;a&nbsp;specific&nbsp;MSVCRT&nbsp;(LIBC)<br/> at&nbsp;interp&nbsp;C&nbsp;compile&nbsp;build&nbsp;time.&nbsp;No&nbsp;matter&nbsp;the&nbsp;name&nbsp;of&nbsp;the&nbsp;CRT&nbsp;DLL,<br/> msvcrt.dll,&nbsp;msvcrt120.dll,&nbsp;ucrtbase.dll,&nbsp;etc.&nbsp;Runtime&nbsp;swapping&nbsp;the<br/> libperl&nbsp;MSVCRT&nbsp;DLL&nbsp;by&nbsp;an&nbsp;embedder,&nbsp;to&nbsp;his&nbsp;favorite&nbsp;CRT&nbsp;DLL,&nbsp;has&nbsp;never<br/> been&nbsp;supported,&nbsp;and&nbsp;wouldn&#39;t&nbsp;even&nbsp;work,&nbsp;since&nbsp;perlhost.h&#39;s&nbsp;hooking&nbsp;isn&#39;t<br/> perfect,&nbsp;and&nbsp;often&nbsp;Win32&nbsp;Perl&nbsp;uses&nbsp;&quot;win32_*()&quot;&nbsp;functions&nbsp;by&nbsp;accident,&nbsp;or<br/> explictly,&nbsp;and&nbsp;those&nbsp;static-link&nbsp;call&nbsp;into&nbsp;the&nbsp;hard&nbsp;coded&nbsp;CRTs.&nbsp;Plus<br/> prototypes&nbsp;of&nbsp;CRT&nbsp;posix-ish&nbsp;functions&nbsp;have&nbsp;changed&nbsp;over&nbsp;the&nbsp;years.<br/> <br/> What&nbsp;is&nbsp;time_t?&nbsp;stat_t?&nbsp;etc.&nbsp;While&nbsp;func&nbsp;symbol&nbsp;name&nbsp;stays&nbsp;the&nbsp;same.<br/> <br/> The&nbsp;original&nbsp;commit&nbsp;for&nbsp;all&nbsp;this&nbsp;complexity,&nbsp;was&nbsp;from&nbsp;5.0/5.6&nbsp;era,&nbsp;where<br/> it&nbsp;was&nbsp;assumed,&nbsp;perl&nbsp;5&nbsp;maint/stable&nbsp;releases&nbsp;will&nbsp;be&nbsp;abandoned&nbsp;by&nbsp;P5P<br/> in&nbsp;favor&nbsp;of&nbsp;Perl&nbsp;6,&nbsp;and&nbsp;all&nbsp;this&nbsp;complexity&nbsp;were&nbsp;provisions&nbsp;and&nbsp;APIs,<br/> to&nbsp;fix,&nbsp;upgrade&nbsp;and&nbsp;improve&nbsp;Win32&nbsp;Perl,&nbsp;on&nbsp;Microsoft&#39;s/ActiveState&#39;s<br/> rapid&nbsp;release&nbsp;schedule,&nbsp;without&nbsp;any&nbsp;dependency&nbsp;on<br/> P5P&nbsp;devs/pumpking/P5P&nbsp;policy,&nbsp;about&nbsp;releasing&nbsp;a&nbsp;new&nbsp;perl5&nbsp;.tar.gz.<br/> <br/> <a class="text" href="/perl5.git/object/0f4eea8fa1779e08575278392ed398ffeda6dcd2">0f4eea8fa1779e08575278392ed398ffeda6dcd2</a>&nbsp;6/19/1998&nbsp;6:59:50&nbsp;AM<br/> commoit&nbsp;title&nbsp;&quot;applied&nbsp;patch,&nbsp;along&nbsp;with&nbsp;many&nbsp;changes:&quot;<br/> <br/> &quot;The&nbsp;features&nbsp;of&nbsp;this&nbsp;are:<br/> 1.&nbsp;All&nbsp;OS&nbsp;dependant&nbsp;code&nbsp;is&nbsp;in&nbsp;the&nbsp;Perl&nbsp;Host&nbsp;and&nbsp;not&nbsp;the&nbsp;Perl&nbsp;Core.<br/> &nbsp;&nbsp;&nbsp;(At&nbsp;least&nbsp;this&nbsp;is&nbsp;the&nbsp;holy&nbsp;grail&nbsp;goal&nbsp;of&nbsp;this&nbsp;work)<br/> 2.&nbsp;The&nbsp;Perl&nbsp;Host&nbsp;(see&nbsp;perl.h&nbsp;for&nbsp;description)&nbsp;can&nbsp;provide&nbsp;a&nbsp;new&nbsp;and<br/> &nbsp;&nbsp;&nbsp;improved&nbsp;interface&nbsp;to&nbsp;OS&nbsp;functionality&nbsp;if&nbsp;required.<br/> 3.&nbsp;Developers&nbsp;can&nbsp;easily&nbsp;hook&nbsp;into&nbsp;the&nbsp;OS&nbsp;calls&nbsp;for&nbsp;instrumentation<br/> &nbsp;&nbsp;&nbsp;or&nbsp;diagnostic&nbsp;purposes.&quot;<br/> <br/> None&nbsp;of&nbsp;these&nbsp;provisions&nbsp;and&nbsp;APIs,&nbsp;have&nbsp;ever&nbsp;been&nbsp;used.&nbsp;CPerlHost::&nbsp;never<br/> became&nbsp;a&nbsp;separate&nbsp;DLL.&nbsp;Perl&nbsp;&gt;=&nbsp;5.12&nbsp;has&nbsp;a&nbsp;&quot;rapid&nbsp;release&quot;&nbsp;policy.<br/> ActiveState&nbsp;dropped&nbsp;sponsorship/product&nbsp;interest&nbsp;in&nbsp;Win32&nbsp;Perl,&nbsp;many&nbsp;years<br/> ago.&nbsp;Strawberry&nbsp;Perl&nbsp;took&nbsp;over&nbsp;the&nbsp;market.&nbsp;CPerlHost::&nbsp;is&nbsp;way&nbsp;too<br/> over&nbsp;engineereed&nbsp;for&nbsp;perl&#39;s&nbsp;ithreads/psuedofork,&nbsp;which&nbsp;only&nbsp;requires<br/> &quot;1&nbsp;OS&nbsp;process&quot;&nbsp;and&nbsp;2&nbsp;%ENVs,&nbsp;and&nbsp;2&nbsp;CWDs,&nbsp;functionality.&nbsp;Most&nbsp;of&nbsp;the<br/> CPerlHost::*&nbsp;methods&nbsp;are&nbsp;jump&nbsp;stubs&nbsp;to&nbsp;&quot;win32_*();&quot;&nbsp;anyways,&nbsp;and&nbsp;the<br/> hooking&nbsp;is&nbsp;redundant&nbsp;runtime&nbsp;overhead,&nbsp;but&nbsp;that&nbsp;is&nbsp;for&nbsp;another&nbsp;commit.<br/> <br/> This&nbsp;commit&nbsp;is&nbsp;about&nbsp;removing&nbsp;the&nbsp;pointless&nbsp;malloc()&nbsp;and&nbsp;memcpy()&nbsp;of&nbsp;the<br/> plain&nbsp;C&nbsp;to&nbsp;C++&nbsp;&quot;thunk&nbsp;funcs&quot;&nbsp;vtables,&nbsp;from&nbsp;the&nbsp;RO&nbsp;const&nbsp;master&nbsp;copy&nbsp;in<br/> perl5**.dll&nbsp;to&nbsp;each&nbsp;&quot;my_perl&quot;&nbsp;instance&nbsp;at&nbsp;runtime.<br/> <br/> On&nbsp;x64,&nbsp;copying&nbsp;the&nbsp;vtables&nbsp;to&nbsp;malloc&nbsp;memory,&nbsp;wasted&nbsp;the&nbsp;following&nbsp;amounts<br/> of&nbsp;malloc()&nbsp;memory.&nbsp;These&nbsp;are&nbsp;the&nbsp;actual&nbsp;integers&nbsp;passed&nbsp;to&nbsp;malloc()&nbsp;by<br/> CPerlHost::/perl.&nbsp;malloc()&nbsp;secret&nbsp;internal&nbsp;headers&nbsp;not&nbsp;included&nbsp;in&nbsp;these<br/> numbers.<br/> <br/> perlMem,&nbsp;0x38<br/> perlMemShared,&nbsp;0x38<br/> perlMemParse,&nbsp;0x38<br/> perlEnv,&nbsp;0x70<br/> perlStdIO,&nbsp;0x138<br/> perlLIO,&nbsp;0xE0<br/> perlDir,&nbsp;0x58<br/> perlSock,&nbsp;0x160<br/> perlProc,&nbsp;0x108<br/> <br/> The&nbsp;old&nbsp;design&nbsp;of&nbsp;malloc-ed&nbsp;vtables,&nbsp;seems&nbsp;to&nbsp;have&nbsp;been,&nbsp;from&nbsp;the<br/> original&nbsp;devs&nbsp;not&nbsp;knowing,&nbsp;or&nbsp;a&nbsp;poor&nbsp;understanding,&nbsp;how&nbsp;MS&nbsp;COM<br/> (C++&nbsp;obj&nbsp;in&nbsp;plain&nbsp;C)&nbsp;and&nbsp;MSVC&nbsp;ISO&nbsp;C++&nbsp;objects&nbsp;(almost&nbsp;same&nbsp;ABI),&nbsp;are<br/> layed&nbsp;out&nbsp;in&nbsp;memory.&nbsp;The&nbsp;original&nbsp;devs&nbsp;realized,&nbsp;if&nbsp;they&nbsp;use&nbsp;a&nbsp;ptr&nbsp;to<br/> global&nbsp;vtable&nbsp;struct,&nbsp;they&nbsp;can&#39;t&nbsp;&quot;cast&quot;&nbsp;from&nbsp;the&nbsp;child&nbsp;class&nbsp;like<br/> VDir::&nbsp;or&nbsp;VMem::,&nbsp;back&nbsp;to&nbsp;a&nbsp;CPerlHost::&nbsp;obj&nbsp;which&nbsp;is&nbsp;a&nbsp;design<br/> requirement&nbsp;here.<br/> <br/> But&nbsp;they&nbsp;wanted&nbsp;to&nbsp;pass&nbsp;around&nbsp;child&nbsp;class&nbsp;ptrs&nbsp;like&nbsp;VMem::*&nbsp;instead&nbsp;of&nbsp;one<br/> CPerlHost::&nbsp;obj&nbsp;ptr,&nbsp;and&nbsp;those&nbsp;VMem::&nbsp;ptrs&nbsp;must&nbsp;be&nbsp;seen&nbsp;in&nbsp;&#39;extern&nbsp;&quot;C&quot;&#39;<br/> land&nbsp;by&nbsp;plain&nbsp;C&nbsp;perl,&nbsp;since&nbsp;my_perl&nbsp;keeps&nbsp;9&nbsp;of&nbsp;these&nbsp;C++&nbsp;obj&nbsp;*s&nbsp;as&nbsp;seperate<br/> ptrs&nbsp;in&nbsp;the&nbsp;my_perl&nbsp;&quot;plain&nbsp;C&quot;&nbsp;struct.&nbsp;So&nbsp;instead&nbsp;they&nbsp;made&nbsp;malloced&nbsp;copies<br/> of&nbsp;the&nbsp;vtables,&nbsp;and&nbsp;put&nbsp;those&nbsp;copies&nbsp;in&nbsp;the&nbsp;CPerlHost::&nbsp;obj,&nbsp;so&nbsp;from&nbsp;a<br/> child&nbsp;class&nbsp;ptrs,&nbsp;they&nbsp;can&nbsp;C++&nbsp;cast&nbsp;to&nbsp;the&nbsp;base&nbsp;class&nbsp;CPerlHost::&nbsp;obj&nbsp;if<br/> needed.<br/> <br/> This&nbsp;is&nbsp;just&nbsp;wrong.&nbsp;Almost&nbsp;universally,&nbsp;vtables&nbsp;are&nbsp;stored&nbsp;in&nbsp;const<br/> RO&nbsp;memory.&nbsp;Monkey-patching&nbsp;at&nbsp;runtime&nbsp;is&nbsp;a&nbsp;Perl&nbsp;lang&nbsp;thing,&nbsp;and&nbsp;rare<br/> to&nbsp;never&nbsp;in&nbsp;C/C++land.<br/> <br/> The&nbsp;ptr&nbsp;to&nbsp;&quot;plain&nbsp;C&nbsp;to&nbsp;C++&nbsp;func&nbsp;thunk&nbsp;vtable&quot;,&nbsp;CAN&nbsp;NOT&nbsp;be&nbsp;stored<br/> per&nbsp;VDir::*&nbsp;or&nbsp;per&nbsp;VMem::*&nbsp;ptr.&nbsp;You&nbsp;can&#39;t&nbsp;store&nbsp;them,&nbsp;per&nbsp;C++&nbsp;tradition,<br/> as&nbsp;the&nbsp;1st&nbsp;member/field&nbsp;of&nbsp;a&nbsp;VDir::/VMem::&nbsp;object.<br/> <br/> The&nbsp;reason&nbsp;is,&nbsp;VDir::/VMem::&nbsp;objects&nbsp;can&nbsp;have&nbsp;refcounts,&nbsp;and&nbsp;multiple<br/> CPerlHost::&nbsp;ptrs,&nbsp;hold&nbsp;refs&nbsp;to&nbsp;one&nbsp;VMem::&nbsp;ptr.&nbsp;So&nbsp;there&nbsp;is&nbsp;no&nbsp;way&nbsp;to<br/> reverse&nbsp;a&nbsp;random&nbsp;VMem::&nbsp;ptr,&nbsp;back&nbsp;to&nbsp;a&nbsp;CPerlHost::&nbsp;ptr.<br/> <br/> Main&nbsp;examples&nbsp;are&nbsp;VMem::&nbsp;&quot;MemShared&quot;&nbsp;and&nbsp;VMem::&nbsp;&quot;MemParse&quot;.<br/> <br/> Also&nbsp;the&nbsp;C-&gt;C++&nbsp;thunk&nbsp;funcs&nbsp;must&nbsp;pick/separate,&nbsp;between&nbsp;3&nbsp;VMem::&nbsp;obj&nbsp;ptrs.<br/> Which&nbsp;are&nbsp;&quot;Mem&quot;,&nbsp;&quot;MemShared&quot;&nbsp;and&nbsp;&quot;MemParse&quot;&nbsp;and&nbsp;stored&nbsp;at&nbsp;different<br/> offsets&nbsp;in&nbsp;CPerlHost::*,&nbsp;but&nbsp;all&nbsp;3&nbsp;VMem::&nbsp;derived&nbsp;&quot;classes&quot;,<br/> must&nbsp;have&nbsp;the&nbsp;same&nbsp;plain-C&nbsp;vtable&nbsp;layout&nbsp;with&nbsp;7&nbsp;extern&nbsp;&quot;C&quot;&nbsp;func&nbsp;thunk&nbsp;ptrs.<br/> B/c&nbsp;my&nbsp;minimal&nbsp;C++&nbsp;knowledge&nbsp;and&nbsp;also&nbsp;not&nbsp;wanting&nbsp;to&nbsp;add&nbsp;even&nbsp;more&nbsp;C++<br/> classes&nbsp;to&nbsp;iperlsys.h&nbsp;perlhost.h&nbsp;and&nbsp;perllib.c,&nbsp;and&nbsp;those&nbsp;new&nbsp;C++&nbsp;classes<br/> may&nbsp;or&nbsp;may&nbsp;not&nbsp;inline-away.&nbsp;Don&#39;t&nbsp;fix&nbsp;this&nbsp;with&nbsp;more&nbsp;C++&nbsp;classes.<br/> <br/> So&nbsp;fix&nbsp;all&nbsp;of&nbsp;this,&nbsp;by&nbsp;each&nbsp;CPerlHost::&nbsp;obj&nbsp;storing&nbsp;a&nbsp;ptr&nbsp;to&nbsp;the&nbsp;RO<br/> vtable&nbsp;instead&nbsp;of&nbsp;a&nbsp;huge&nbsp;RW&nbsp;inlined&nbsp;copy&nbsp;of&nbsp;the&nbsp;vtable.<br/> To&nbsp;keep&nbsp;all&nbsp;previous&nbsp;design&nbsp;requirements,&nbsp;just&nbsp;use<br/> &quot;&amp;cperlhost_obj-&gt;vmem_whatever_vtable&quot;&nbsp;as&nbsp;the&nbsp;plain-C&nbsp;representation<br/> of&nbsp;a&nbsp;VMem::*&nbsp;ptr,&nbsp;instead&nbsp;of<br/> &quot;&amp;cperlhost_obj-&gt;IPerlWhateverMem.pMalloc&quot;.<br/> <br/> The&nbsp;1&nbsp;extra&nbsp;pointer&nbsp;de-ref&nbsp;CPU&nbsp;machine&nbsp;op,&nbsp;in&nbsp;each&nbsp;perl&nbsp;core&nbsp;and&nbsp;perl&nbsp;xs<br/> caller,&nbsp;that&nbsp;executes&nbsp;in&nbsp;&quot;iperlsys.h&quot;&nbsp;family&nbsp;of&nbsp;macros&nbsp;I&nbsp;think&nbsp;is<br/> irrelavent&nbsp;compared&nbsp;to&nbsp;the&nbsp;savings&nbsp;of&nbsp;having&nbsp;RO&nbsp;vtables.&nbsp;It&nbsp;is&nbsp;the&nbsp;same<br/> machine&nbsp;code&nbsp;length&nbsp;on&nbsp;x86/x64&nbsp;in&nbsp;each&nbsp;caller,&nbsp;comparing&nbsp;old&nbsp;vs&nbsp;new.<br/> <br/> This&nbsp;extra&nbsp;ptr&nbsp;deref&nbsp;to&nbsp;reach&nbsp;the&nbsp;vtable&nbsp;can&nbsp;be&nbsp;removed,&nbsp;and&nbsp;I&nbsp;will<br/> probably&nbsp;do&nbsp;it&nbsp;in&nbsp;a&nbsp;future&nbsp;commit.&nbsp;Not&nbsp;done&nbsp;here&nbsp;for&nbsp;bisect/small&nbsp;patch<br/> reasons.<br/> <br/> &quot;iperlsys.h&quot;&nbsp;family&nbsp;of&nbsp;macros&nbsp;is&nbsp;for&nbsp;example,&nbsp;the&nbsp;macro<br/> &quot;PerlEnv_getenv(str);&quot;<br/> <br/> Specific&nbsp;example,&nbsp;for&nbsp;macro&nbsp;PerlMem_free()&nbsp;in&nbsp;Perl_safesysfree()<br/> <br/> old&nbsp;before&nbsp;this&nbsp;commit<br/> ----<br/> mov&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rax,&nbsp;[rax+0CE8h]<br/> mov&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rcx,&nbsp;rax<br/> call&nbsp;&nbsp;&nbsp;&nbsp;qword&nbsp;ptr&nbsp;[rax+10h]<br/> -----<br/> <br/> new&nbsp;after&nbsp;this&nbsp;commit<br/> -----<br/> mov&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rcx,&nbsp;[rax+0CE8h]<br/> mov&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rax,&nbsp;[rcx]<br/> call&nbsp;&nbsp;&nbsp;&nbsp;qword&nbsp;ptr&nbsp;[rax+10h]<br/> ----<br/> <br/> &quot;mov&nbsp;rcx,&nbsp;rax&quot;&nbsp;is&nbsp;&quot;0x48&nbsp;0x8B&nbsp;0xC8&quot;&nbsp;compared&nbsp;to<br/> &quot;mov&nbsp;rax,&nbsp;[rcx]&quot;&nbsp;which&nbsp;is&nbsp;&quot;0x48&nbsp;0x8B&nbsp;0x01&quot;.<br/> <br/> No&nbsp;extra&nbsp;machine&nbsp;code&nbsp;&quot;bloat&quot;&nbsp;in&nbsp;any&nbsp;callers.&nbsp;The&nbsp;extra&nbsp;1&nbsp;memory&nbsp;read<br/> is&nbsp;irrelavent&nbsp;if&nbsp;we&nbsp;are&nbsp;about&nbsp;to&nbsp;call&nbsp;malloc()&nbsp;or&nbsp;any&nbsp;of&nbsp;these&nbsp;other<br/> WinOS&nbsp;kernel32.dll&nbsp;syscalls.&nbsp;iperlsys.h/perlhost.h&nbsp;does&nbsp;NOT&nbsp;hook&nbsp;anything<br/> super&nbsp;perf&nbsp;critical&nbsp;such&nbsp;as&nbsp;&quot;memcmp()&quot;&nbsp;or&nbsp;&quot;memcpy()&quot;.<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/569c7cd062e39b2720147f2a8ee7eb290e08efe6"><span class="age">2 weeks ago</span>lib/Unicode/testnorm.t: fix spelling of skip message</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/569c7cd062e39b2720147f2a8ee7eb290e08efe6">commit</a> | <a href="/perl5.git/commitdiff/569c7cd062e39b2720147f2a8ee7eb290e08efe6">commitdiff</a> | <a href="/perl5.git/tree/569c7cd062e39b2720147f2a8ee7eb290e08efe6">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Lukas+Mai;st=author" title="Search for commits authored by Lukas Mai">Lukas Mai</a> [<span class="datetime">Tue, 18 Mar 2025 17:15:56 +0000</span> (18:15 +0100)]</span> <br/> </div> <div class="log_body"> lib/Unicode/testnorm.t:&nbsp;fix&nbsp;spelling&nbsp;of&nbsp;skip&nbsp;message<br/> <br/> -&nbsp;&quot;environmentvariable&quot;&nbsp;-&gt;&nbsp;&quot;environment&nbsp;variable&quot;<br/> -&nbsp;&quot;#&nbsp;skipped:&quot;,&nbsp;&quot;#&nbsp;Skip&quot;&nbsp;-&gt;&nbsp;&quot;#&nbsp;SKIP&quot;&nbsp;(mimicking&nbsp;Test::More)<br/> -&nbsp;format&nbsp;the&nbsp;two&nbsp;print/skip&nbsp;statements&nbsp;identically<br/> -&nbsp;remove&nbsp;redundant&nbsp;&quot;0&quot;&nbsp;statements<br/> -&nbsp;use&nbsp;early&nbsp;exit&nbsp;instead&nbsp;of&nbsp;nesting&nbsp;if/else<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/2f6713056a560b96c82f8545e773ac467ec3822f"><span class="age">2 weeks ago</span>malloc.c: fix compilation error, clean up more</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/2f6713056a560b96c82f8545e773ac467ec3822f">commit</a> | <a href="/perl5.git/commitdiff/2f6713056a560b96c82f8545e773ac467ec3822f">commitdiff</a> | <a href="/perl5.git/tree/2f6713056a560b96c82f8545e773ac467ec3822f">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Lukas+Mai;st=author" title="Search for commits authored by Lukas Mai">Lukas Mai</a> [<span class="datetime">Tue, 18 Mar 2025 12:46:34 +0000</span> (13:46 +0100)]</span> <br/> </div> <div class="log_body"> malloc.c:&nbsp;fix&nbsp;compilation&nbsp;error,&nbsp;clean&nbsp;up&nbsp;more<br/> <br/> When&nbsp;configured&nbsp;with&nbsp;-DEBUGGING&nbsp;-Dusethreads&nbsp;-Dusemymalloc,&nbsp;malloc.c<br/> didn&#39;t&nbsp;compile&nbsp;anymore&nbsp;(see&nbsp;below&nbsp;for&nbsp;the&nbsp;full&nbsp;error&nbsp;message).&nbsp;This&nbsp;was<br/> probably&nbsp;broken&nbsp;by&nbsp;commits&nbsp;<a class="text" href="/perl5.git/object/8e3a36a4b3">8e3a36a4b3</a>&nbsp;and&nbsp;<a class="text" href="/perl5.git/object/13e5ba49b2">13e5ba49b2</a>.&nbsp;What&nbsp;they&nbsp;missed<br/> was&nbsp;that&nbsp;all&nbsp;uses&nbsp;of&nbsp;warn/croak&nbsp;in&nbsp;this&nbsp;file&nbsp;were&nbsp;supposed&nbsp;to&nbsp;have&nbsp;no<br/> context&nbsp;parameter&nbsp;(aTHX/pTHX)&nbsp;and&nbsp;the&nbsp;only&nbsp;reason&nbsp;croak2&nbsp;was&nbsp;introduced<br/> was&nbsp;that&nbsp;C89&nbsp;didn&#39;t&nbsp;have&nbsp;variable-argument&nbsp;macros,&nbsp;so&nbsp;croak()&nbsp;was<br/> hardcoded&nbsp;with&nbsp;one&nbsp;argument&nbsp;and&nbsp;croak2()&nbsp;with&nbsp;two&nbsp;arguments.<br/> <br/> Instead,&nbsp;we&nbsp;can&nbsp;simply&nbsp;replace&nbsp;all&nbsp;uses&nbsp;of&nbsp;croak/croak2&nbsp;with<br/> Perl_croak_nocontext.&nbsp;On&nbsp;threaded&nbsp;builds,&nbsp;this&nbsp;is&nbsp;a&nbsp;function&nbsp;with&nbsp;no<br/> extra&nbsp;pTHX_&nbsp;parameter;&nbsp;on&nbsp;non-threaded&nbsp;builds,&nbsp;this&nbsp;just&nbsp;turns&nbsp;into<br/> regular&nbsp;croak.&nbsp;Now&nbsp;we&nbsp;don&#39;t&nbsp;need&nbsp;to&nbsp;manually&nbsp;check&nbsp;for&nbsp;MULTIPLICITY<br/> ourselves.<br/> <br/> Back&nbsp;in&nbsp;the&nbsp;day&nbsp;(perl&nbsp;5.005),&nbsp;malloc.c&nbsp;was&nbsp;supposed&nbsp;to&nbsp;be&nbsp;usable&nbsp;outside<br/> of&nbsp;perl,&nbsp;so&nbsp;it&nbsp;had&nbsp;checks&nbsp;for&nbsp;PERL_CORE&nbsp;being&nbsp;defined.&nbsp;These&nbsp;were<br/> removed&nbsp;in&nbsp;<a class="text" href="/perl5.git/object/b9e5552c5b">b9e5552c5b</a>,&nbsp;but&nbsp;some&nbsp;vestiges&nbsp;remained:&nbsp;PERL_CORE&nbsp;was&nbsp;still<br/> mentioned&nbsp;as&nbsp;a&nbsp;configuration&nbsp;option&nbsp;in&nbsp;a&nbsp;comment&nbsp;and&nbsp;Perl_mfree&nbsp;(but<br/> none&nbsp;of&nbsp;the&nbsp;other&nbsp;functions)&nbsp;tagged&nbsp;its&nbsp;warning&nbsp;messages&nbsp;with&nbsp;the<br/> configuration&nbsp;options&nbsp;in&nbsp;play&nbsp;(&quot;PERL_CORE&quot;,&nbsp;&quot;RMAGIC&quot;,&nbsp;or&nbsp;&quot;RMAGIC,<br/> PERL_CORE&quot;,&nbsp;added&nbsp;in&nbsp;commit&nbsp;<a class="text" href="/perl5.git/object/52c6645e67">52c6645e67</a>).&nbsp;With&nbsp;the&nbsp;removal&nbsp;of<br/> non-PERL_CORE&nbsp;support,&nbsp;these&nbsp;don&#39;t&nbsp;make&nbsp;much&nbsp;sense&nbsp;anymore,&nbsp;so&nbsp;I&nbsp;removed<br/> them.<br/> <br/> This&nbsp;change&nbsp;in&nbsp;turn&nbsp;enables&nbsp;further&nbsp;improvements:&nbsp;Common&nbsp;code&nbsp;in&nbsp;the<br/> RCHECK&nbsp;and&nbsp;non-RCHECK&nbsp;branches&nbsp;can&nbsp;be&nbsp;extracted,&nbsp;making&nbsp;the&nbsp;&quot;#ifdef<br/> RCHECK&quot;&nbsp;conditional&nbsp;sections&nbsp;smaller&nbsp;and&nbsp;eliminating&nbsp;the&nbsp;&quot;#else&quot;<br/> sections&nbsp;entirely.<br/> <br/> ------------------------------------------------------------------------<br/> <br/> &nbsp;&nbsp;&nbsp;&nbsp;In&nbsp;file&nbsp;included&nbsp;from&nbsp;malloc.c:240:<br/> &nbsp;&nbsp;&nbsp;&nbsp;malloc.c:&nbsp;In&nbsp;function&nbsp;‘Perl_malloc’:<br/> &nbsp;&nbsp;&nbsp;&nbsp;perl.h:225:17:&nbsp;error:&nbsp;‘my_perl’&nbsp;undeclared&nbsp;(first&nbsp;use&nbsp;in&nbsp;this&nbsp;function)<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;225&nbsp;|&nbsp;#&nbsp;&nbsp;define&nbsp;aTHX&nbsp;&nbsp;my_perl<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^~~~~~~<br/> &nbsp;&nbsp;&nbsp;&nbsp;perl.h:230:25:&nbsp;note:&nbsp;in&nbsp;expansion&nbsp;of&nbsp;macro&nbsp;‘aTHX’<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;230&nbsp;|&nbsp;#&nbsp;&nbsp;define&nbsp;aTHX_&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;aTHX,<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^~~~<br/> &nbsp;&nbsp;&nbsp;&nbsp;embed.h:966:60:&nbsp;note:&nbsp;in&nbsp;expansion&nbsp;of&nbsp;macro&nbsp;‘aTHX_’<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;966&nbsp;|&nbsp;#&nbsp;&nbsp;&nbsp;define&nbsp;croak(...)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Perl_croak(aTHX_&nbsp;__VA_ARGS__)<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^~~~~<br/> &nbsp;&nbsp;&nbsp;&nbsp;malloc.c:1254:13:&nbsp;note:&nbsp;in&nbsp;expansion&nbsp;of&nbsp;macro&nbsp;‘croak’<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1254&nbsp;|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;croak(&quot;panic:&nbsp;malloc&quot;);<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^~~~~<br/> &nbsp;&nbsp;&nbsp;&nbsp;perl.h:225:17:&nbsp;note:&nbsp;each&nbsp;undeclared&nbsp;identifier&nbsp;is&nbsp;reported&nbsp;only&nbsp;once&nbsp;for&nbsp;each&nbsp;function&nbsp;it&nbsp;appears&nbsp;in<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;225&nbsp;|&nbsp;#&nbsp;&nbsp;define&nbsp;aTHX&nbsp;&nbsp;my_perl<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^~~~~~~<br/> &nbsp;&nbsp;&nbsp;&nbsp;perl.h:230:25:&nbsp;note:&nbsp;in&nbsp;expansion&nbsp;of&nbsp;macro&nbsp;‘aTHX’<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;230&nbsp;|&nbsp;#&nbsp;&nbsp;define&nbsp;aTHX_&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;aTHX,<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^~~~<br/> &nbsp;&nbsp;&nbsp;&nbsp;embed.h:966:60:&nbsp;note:&nbsp;in&nbsp;expansion&nbsp;of&nbsp;macro&nbsp;‘aTHX_’<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;966&nbsp;|&nbsp;#&nbsp;&nbsp;&nbsp;define&nbsp;croak(...)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Perl_croak(aTHX_&nbsp;__VA_ARGS__)<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^~~~~<br/> &nbsp;&nbsp;&nbsp;&nbsp;malloc.c:1254:13:&nbsp;note:&nbsp;in&nbsp;expansion&nbsp;of&nbsp;macro&nbsp;‘croak’<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1254&nbsp;|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;croak(&quot;panic:&nbsp;malloc&quot;);<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^~~~~<br/> &nbsp;&nbsp;&nbsp;&nbsp;malloc.c:&nbsp;In&nbsp;function&nbsp;‘Perl_mfree’:<br/> &nbsp;&nbsp;&nbsp;&nbsp;perl.h:225:17:&nbsp;error:&nbsp;‘my_perl’&nbsp;undeclared&nbsp;(first&nbsp;use&nbsp;in&nbsp;this&nbsp;function)<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;225&nbsp;|&nbsp;#&nbsp;&nbsp;define&nbsp;aTHX&nbsp;&nbsp;my_perl<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^~~~~~~<br/> &nbsp;&nbsp;&nbsp;&nbsp;perl.h:230:25:&nbsp;note:&nbsp;in&nbsp;expansion&nbsp;of&nbsp;macro&nbsp;‘aTHX’<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;230&nbsp;|&nbsp;#&nbsp;&nbsp;define&nbsp;aTHX_&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;aTHX,<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^~~~<br/> &nbsp;&nbsp;&nbsp;&nbsp;embed.h:966:60:&nbsp;note:&nbsp;in&nbsp;expansion&nbsp;of&nbsp;macro&nbsp;‘aTHX_’<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;966&nbsp;|&nbsp;#&nbsp;&nbsp;&nbsp;define&nbsp;croak(...)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Perl_croak(aTHX_&nbsp;__VA_ARGS__)<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^~~~~<br/> &nbsp;&nbsp;&nbsp;&nbsp;malloc.c:1820:13:&nbsp;note:&nbsp;in&nbsp;expansion&nbsp;of&nbsp;macro&nbsp;‘croak’<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1820&nbsp;|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;croak(&quot;wrong&nbsp;alignment&nbsp;in&nbsp;free()&quot;);<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^~~~~<br/> &nbsp;&nbsp;&nbsp;&nbsp;malloc.c:&nbsp;In&nbsp;function&nbsp;‘Perl_realloc’:<br/> &nbsp;&nbsp;&nbsp;&nbsp;perl.h:225:17:&nbsp;error:&nbsp;‘my_perl’&nbsp;undeclared&nbsp;(first&nbsp;use&nbsp;in&nbsp;this&nbsp;function)<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;225&nbsp;|&nbsp;#&nbsp;&nbsp;define&nbsp;aTHX&nbsp;&nbsp;my_perl<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^~~~~~~<br/> &nbsp;&nbsp;&nbsp;&nbsp;perl.h:230:25:&nbsp;note:&nbsp;in&nbsp;expansion&nbsp;of&nbsp;macro&nbsp;‘aTHX’<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;230&nbsp;|&nbsp;#&nbsp;&nbsp;define&nbsp;aTHX_&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;aTHX,<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^~~~<br/> &nbsp;&nbsp;&nbsp;&nbsp;embed.h:966:60:&nbsp;note:&nbsp;in&nbsp;expansion&nbsp;of&nbsp;macro&nbsp;‘aTHX_’<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;966&nbsp;|&nbsp;#&nbsp;&nbsp;&nbsp;define&nbsp;croak(...)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Perl_croak(aTHX_&nbsp;__VA_ARGS__)<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^~~~~<br/> &nbsp;&nbsp;&nbsp;&nbsp;malloc.c:1925:13:&nbsp;note:&nbsp;in&nbsp;expansion&nbsp;of&nbsp;macro&nbsp;‘croak’<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1925&nbsp;|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;croak(&quot;panic:&nbsp;realloc&quot;);<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^~~~~<br/> &nbsp;&nbsp;&nbsp;&nbsp;make:&nbsp;***&nbsp;[makefile:265:&nbsp;malloc.o]&nbsp;Error&nbsp;1<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/b6f991f3f498188dbeb886470e0236a20cc9a2bd"><span class="age">2 weeks ago</span>Storable.xs: remove outdated comment</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/b6f991f3f498188dbeb886470e0236a20cc9a2bd">commit</a> | <a href="/perl5.git/commitdiff/b6f991f3f498188dbeb886470e0236a20cc9a2bd">commitdiff</a> | <a href="/perl5.git/tree/b6f991f3f498188dbeb886470e0236a20cc9a2bd">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Lukas+Mai;st=author" title="Search for commits authored by Lukas Mai">Lukas Mai</a> [<span class="datetime">Tue, 18 Mar 2025 13:46:44 +0000</span> (14:46 +0100)]</span> <br/> </div> <div class="log_body"> Storable.xs:&nbsp;remove&nbsp;outdated&nbsp;comment<br/> <br/> This&nbsp;comment&nbsp;has&nbsp;been&nbsp;obsolete&nbsp;since&nbsp;commit&nbsp;<a class="text" href="/perl5.git/object/1cb8a344aa">1cb8a344aa</a>&nbsp;(and&nbsp;hasn&#39;t&nbsp;made<br/> much&nbsp;sense&nbsp;since&nbsp;that&nbsp;commit&nbsp;changed&nbsp;len&#39;s&nbsp;type&nbsp;from&nbsp;int&nbsp;back&nbsp;to<br/> SSize_t.)<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/80f24f4c833392afabce33743adb44803b8d47e9"><span class="age">2 weeks ago</span>Add sv_vstring_get() API function and SvVSTRING() wrapper macro</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/80f24f4c833392afabce33743adb44803b8d47e9">commit</a> | <a href="/perl5.git/commitdiff/80f24f4c833392afabce33743adb44803b8d47e9">commitdiff</a> | <a href="/perl5.git/tree/80f24f4c833392afabce33743adb44803b8d47e9">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Paul+%22LeoNerd%22+Evans;st=author" title="Search for commits authored by Paul &quot;LeoNerd&quot; Evans">Paul &quot;LeoNerd&quot; Evans</a> [<span class="datetime">Mon, 17 Mar 2025 19:27:28 +0000</span> (19:27 +0000)]</span> <br/> </div> <div class="log_body"> Add&nbsp;sv_vstring_get()&nbsp;API&nbsp;function&nbsp;and&nbsp;SvVSTRING()&nbsp;wrapper&nbsp;macro<br/> <br/> This&nbsp;new&nbsp;function&nbsp;and&nbsp;wrapper&nbsp;macro&nbsp;mean&nbsp;that&nbsp;caller&nbsp;code&nbsp;does&nbsp;not&nbsp;have<br/> to&nbsp;directly&nbsp;rely&nbsp;on&nbsp;(or&nbsp;be&nbsp;aware&nbsp;of)&nbsp;the&nbsp;`PERL_MAGIC_vstring`&nbsp;type.&nbsp;The<br/> intent&nbsp;of&nbsp;the&nbsp;API&nbsp;now&nbsp;works&nbsp;independently&nbsp;of&nbsp;the&nbsp;current&nbsp;implemention&nbsp;as<br/> magic.<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/60e9e3b7f337433869c7cb996e5c3b0d78734085"><span class="age">2 weeks ago</span>Clone R-O inversion list before modifying it</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/60e9e3b7f337433869c7cb996e5c3b0d78734085">commit</a> | <a href="/perl5.git/commitdiff/60e9e3b7f337433869c7cb996e5c3b0d78734085">commitdiff</a> | <a href="/perl5.git/tree/60e9e3b7f337433869c7cb996e5c3b0d78734085">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Karl+Williamson;st=author" title="Search for commits authored by Karl Williamson">Karl Williamson</a> [<span class="datetime">Tue, 18 Mar 2025 01:03:51 +0000</span> (19:03 -0600)]</span> <br/> </div> <div class="log_body"> Clone&nbsp;R-O&nbsp;inversion&nbsp;list&nbsp;before&nbsp;modifying&nbsp;it<br/> <br/> Unicode-defined&nbsp;properties&nbsp;are&nbsp;kept&nbsp;in&nbsp;inversion&nbsp;lists&nbsp;in&nbsp;read-only<br/> memory.&nbsp;&nbsp;Attempting&nbsp;to&nbsp;modify&nbsp;them&nbsp;will&nbsp;result&nbsp;in&nbsp;a&nbsp;segfault.&nbsp;&nbsp;The&nbsp;new<br/> Unicode&nbsp;16.0&nbsp;has&nbsp;some&nbsp;empty&nbsp;properties&nbsp;that&nbsp;need&nbsp;to&nbsp;be&nbsp;inverted&nbsp;before<br/> use&nbsp;in&nbsp;some&nbsp;cases.&nbsp;&nbsp;This&nbsp;situation&nbsp;has&nbsp;not&nbsp;occurred&nbsp;before.&nbsp;&nbsp;The<br/> inversion&nbsp;code&nbsp;that&nbsp;gets&nbsp;called&nbsp;presumes&nbsp;it&nbsp;has&nbsp;a&nbsp;modifiable&nbsp;SV&nbsp;and<br/> inverts&nbsp;in-place.&nbsp;&nbsp;This&nbsp;segfaults.<br/> <br/> Normally,&nbsp;no&nbsp;inversion&nbsp;is&nbsp;needed,&nbsp;and&nbsp;the&nbsp;properties&nbsp;are&nbsp;used&nbsp;as-is,&nbsp;and<br/> no&nbsp;problem&nbsp;arises.<br/> <br/> The&nbsp;solution&nbsp;here&nbsp;is&nbsp;to&nbsp;create&nbsp;a&nbsp;clone,&nbsp;and&nbsp;then&nbsp;invert&nbsp;that.<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/6f00038e2371b7c3a9e0eb1f604ba011f8dc0f3c"><span class="age">2 weeks ago</span>regexp_unicode_prop.t: Fix up test for Unicode 16.0</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/6f00038e2371b7c3a9e0eb1f604ba011f8dc0f3c">commit</a> | <a href="/perl5.git/commitdiff/6f00038e2371b7c3a9e0eb1f604ba011f8dc0f3c">commitdiff</a> | <a href="/perl5.git/tree/6f00038e2371b7c3a9e0eb1f604ba011f8dc0f3c">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Karl+Williamson;st=author" title="Search for commits authored by Karl Williamson">Karl Williamson</a> [<span class="datetime">Tue, 18 Mar 2025 01:42:51 +0000</span> (19:42 -0600)]</span> <br/> </div> <div class="log_body"> regexp_unicode_prop.t:&nbsp;Fix&nbsp;up&nbsp;test&nbsp;for&nbsp;Unicode&nbsp;16.0<br/> <br/> This&nbsp;test&nbsp;was&nbsp;assuming&nbsp;that&nbsp;U+0300&nbsp;(COMBINING&nbsp;GRAVE&nbsp;ACCENT)&nbsp;matches<br/> \p{Inherited},&nbsp;since&nbsp;it&nbsp;is&nbsp;a&nbsp;combining&nbsp;mark.&nbsp;&nbsp;However&nbsp;Unicode&nbsp;16.0&nbsp;has<br/> gone&nbsp;through&nbsp;such&nbsp;marks&nbsp;and&nbsp;decided&nbsp;that&nbsp;some&nbsp;are&nbsp;limited&nbsp;to&nbsp;actually<br/> just&nbsp;a&nbsp;few&nbsp;scripts,&nbsp;so&nbsp;it&nbsp;is&nbsp;not&nbsp;generally&nbsp;inherited.&nbsp;&nbsp;(One&nbsp;of&nbsp;those<br/> scripts&nbsp;is&nbsp;Latin,&nbsp;so&nbsp;it&nbsp;is&nbsp;effectively&nbsp;inherited&nbsp;in&nbsp;French,&nbsp;Spanish,<br/> etc.)&nbsp;&nbsp;But&nbsp;it&nbsp;isn&#39;t&nbsp;always&nbsp;inheritied,&nbsp;and&nbsp;so&nbsp;it&nbsp;loses&nbsp;that&nbsp;status,&nbsp;and<br/> the&nbsp;test&nbsp;fails.<br/> <br/> I&nbsp;would&nbsp;never&nbsp;have&nbsp;expected&nbsp;this&nbsp;test&nbsp;to&nbsp;be&nbsp;brittle,&nbsp;but&nbsp;so&nbsp;it&nbsp;is.&nbsp;&nbsp;What<br/> this&nbsp;commit&nbsp;does&nbsp;is&nbsp;to&nbsp;change&nbsp;to&nbsp;another&nbsp;code&nbsp;point&nbsp;that&nbsp;is&nbsp;till<br/> considered&nbsp;Inherited,&nbsp;and&nbsp;the&nbsp;test&nbsp;passes.<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/648bc881bcb6a326c397b1449cc460b160721282"><span class="age">2 weeks ago</span>malloc.c: silence &quot;unused result&quot; compiler warning</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/648bc881bcb6a326c397b1449cc460b160721282">commit</a> | <a href="/perl5.git/commitdiff/648bc881bcb6a326c397b1449cc460b160721282">commitdiff</a> | <a href="/perl5.git/tree/648bc881bcb6a326c397b1449cc460b160721282">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Lukas+Mai;st=author" title="Search for commits authored by Lukas Mai">Lukas Mai</a> [<span class="datetime">Tue, 18 Mar 2025 09:55:30 +0000</span> (10:55 +0100)]</span> <br/> </div> <div class="log_body"> malloc.c:&nbsp;silence&nbsp;&quot;unused&nbsp;result&quot;&nbsp;compiler&nbsp;warning<br/> <br/> Before:<br/> <br/> &nbsp;&nbsp;&nbsp;&nbsp;malloc.c:&nbsp;In&nbsp;function&nbsp;‘getpages’:<br/> &nbsp;&nbsp;&nbsp;&nbsp;malloc.c:273:34:&nbsp;warning:&nbsp;ignoring&nbsp;return&nbsp;value&nbsp;of&nbsp;‘write’&nbsp;declared&nbsp;with&nbsp;attribute&nbsp;‘warn_unused_result’&nbsp;[-Wunused-result]<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;273&nbsp;|&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp;define&nbsp;fatalcroak(mess)&nbsp;&nbsp;&nbsp;&nbsp;(write(2,&nbsp;(mess),&nbsp;strlen(mess)),&nbsp;exit(2))<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<br/> &nbsp;&nbsp;&nbsp;&nbsp;malloc.c:1546:21:&nbsp;note:&nbsp;in&nbsp;expansion&nbsp;of&nbsp;macro&nbsp;‘fatalcroak’<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1546&nbsp;|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fatalcroak(&quot;panic:&nbsp;Off-page&nbsp;sbrk\n&quot;);<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^~~~~~~~~~<br/> &nbsp;&nbsp;&nbsp;&nbsp;malloc.c:273:34:&nbsp;warning:&nbsp;ignoring&nbsp;return&nbsp;value&nbsp;of&nbsp;‘write’&nbsp;declared&nbsp;with&nbsp;attribute&nbsp;‘warn_unused_result’&nbsp;[-Wunused-result]<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;273&nbsp;|&nbsp;#&nbsp;&nbsp;&nbsp;&nbsp;define&nbsp;fatalcroak(mess)&nbsp;&nbsp;&nbsp;&nbsp;(write(2,&nbsp;(mess),&nbsp;strlen(mess)),&nbsp;exit(2))<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<br/> &nbsp;&nbsp;&nbsp;&nbsp;malloc.c:1585:13:&nbsp;note:&nbsp;in&nbsp;expansion&nbsp;of&nbsp;macro&nbsp;‘fatalcroak’<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1585&nbsp;|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fatalcroak(&quot;Misalignment&nbsp;of&nbsp;sbrk()\n&quot;);<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^~~~~~~~~~<br/> &nbsp;&nbsp;&nbsp;&nbsp;gcc&nbsp;-c&nbsp;-DPERL_CORE&nbsp;-fwrapv&nbsp;-fno-strict-aliasing&nbsp;-pipe&nbsp;-fstack-protector-strong&nbsp;-I/usr/local/include&nbsp;-D_LARGEFILE_SOURCE&nbsp;-D_FILE_OFFSET_BITS=64&nbsp;-std=c99&nbsp;-O2&nbsp;-Wall&nbsp;-Werror=pointer-arith&nbsp;-Werror=vla&nbsp;-Wextra&nbsp;-Wno-long-long&nbsp;-Wno-declaration-after-statement&nbsp;-Wc++-compat&nbsp;-Wwrite-strings&nbsp;-Wno-use-after-free&nbsp;universal.c<br/> <br/> (The&nbsp;&quot;make&nbsp;depend&quot;&nbsp;comment&nbsp;was&nbsp;overlooked&nbsp;in&nbsp;commit&nbsp;<a class="text" href="/perl5.git/object/b9e5552c5b">b9e5552c5b</a>.)<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/a5ccef6909119edd41a0d1318d88f461e28f6623"><span class="age">2 weeks ago</span>eliminate more trivial format strings (&quot;%s&quot;, &quot;...&quot;)</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/a5ccef6909119edd41a0d1318d88f461e28f6623">commit</a> | <a href="/perl5.git/commitdiff/a5ccef6909119edd41a0d1318d88f461e28f6623">commitdiff</a> | <a href="/perl5.git/tree/a5ccef6909119edd41a0d1318d88f461e28f6623">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Lukas+Mai;st=author" title="Search for commits authored by Lukas Mai">Lukas Mai</a> [<span class="datetime">Tue, 18 Mar 2025 09:44:01 +0000</span> (10:44 +0100)]</span> <br/> </div> <div class="log_body"> eliminate&nbsp;more&nbsp;trivial&nbsp;format&nbsp;strings&nbsp;(&quot;%s&quot;,&nbsp;&quot;...&quot;)<br/> <br/> As&nbsp;a&nbsp;follow-up&nbsp;to&nbsp;commit&nbsp;<a class="text" href="/perl5.git/object/71d1d453e7">71d1d453e7</a>,&nbsp;turn&nbsp;more&nbsp;trivial&nbsp;format&nbsp;strings<br/> (i.e.&nbsp;&quot;%s&quot;&nbsp;followed&nbsp;by&nbsp;a&nbsp;string&nbsp;literal)&nbsp;into&nbsp;just&nbsp;that&nbsp;string&nbsp;literal.<br/> <br/> -&nbsp;dump.c:&nbsp;String&nbsp;literals&nbsp;are&nbsp;more&nbsp;efficiently&nbsp;appended&nbsp;using&nbsp;sv_catpvs;<br/> &nbsp;&nbsp;C&nbsp;strings&nbsp;using&nbsp;sv_patv.&nbsp;No&nbsp;need&nbsp;to&nbsp;invoke&nbsp;the&nbsp;entire&nbsp;sv_catpvf<br/> &nbsp;&nbsp;machinery&nbsp;to&nbsp;parse&nbsp;a&nbsp;static&nbsp;&quot;format&nbsp;string&quot;&nbsp;of&nbsp;length&nbsp;1.<br/> -&nbsp;malloc.c:&nbsp;Disentangle&nbsp;some&nbsp;warning&nbsp;messages&nbsp;and&nbsp;make&nbsp;them&nbsp;properly<br/> &nbsp;&nbsp;match&nbsp;their&nbsp;(previously&nbsp;orphaned)&nbsp;perldiag&nbsp;entries&nbsp;again.<br/> -&nbsp;os2/perlrexx.c:&nbsp;Turn&nbsp;sprintf(x,&nbsp;&quot;...&quot;)&nbsp;into&nbsp;strcpy(x,&nbsp;&quot;...&quot;).<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/79ae12aeb4e6b7da1ea1a3e17be9fc02b32ecc6d"><span class="age">2 weeks ago</span>Stop calling Perl_die manually</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/79ae12aeb4e6b7da1ea1a3e17be9fc02b32ecc6d">commit</a> | <a href="/perl5.git/commitdiff/79ae12aeb4e6b7da1ea1a3e17be9fc02b32ecc6d">commitdiff</a> | <a href="/perl5.git/tree/79ae12aeb4e6b7da1ea1a3e17be9fc02b32ecc6d">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Leon+Timmermans;st=author" title="Search for commits authored by Leon Timmermans">Leon Timmermans</a> [<span class="datetime">Fri, 8 Nov 2024 21:14:39 +0000</span> (22:14 +0100)]</span> <br/> </div> <div class="log_body"> Stop&nbsp;calling&nbsp;Perl_die&nbsp;manually<br/> <br/> Call&nbsp;die()&nbsp;instead.<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/153ebd6587362c4681266536cd21fbe0c3a0d833"><span class="age">2 weeks ago</span>Stop calling Perl_form manually</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/153ebd6587362c4681266536cd21fbe0c3a0d833">commit</a> | <a href="/perl5.git/commitdiff/153ebd6587362c4681266536cd21fbe0c3a0d833">commitdiff</a> | <a href="/perl5.git/tree/153ebd6587362c4681266536cd21fbe0c3a0d833">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Leon+Timmermans;st=author" title="Search for commits authored by Leon Timmermans">Leon Timmermans</a> [<span class="datetime">Fri, 8 Nov 2024 21:06:54 +0000</span> (22:06 +0100)]</span> <br/> </div> <div class="log_body"> Stop&nbsp;calling&nbsp;Perl_form&nbsp;manually<br/> <br/> Call&nbsp;form()&nbsp;instead.<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/b7e4f70a21617cabc12294b2664b6ca35c16fa4e"><span class="age">2 weeks ago</span>Stop calling Perl_sv_setpvf manually</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/b7e4f70a21617cabc12294b2664b6ca35c16fa4e">commit</a> | <a href="/perl5.git/commitdiff/b7e4f70a21617cabc12294b2664b6ca35c16fa4e">commitdiff</a> | <a href="/perl5.git/tree/b7e4f70a21617cabc12294b2664b6ca35c16fa4e">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Leon+Timmermans;st=author" title="Search for commits authored by Leon Timmermans">Leon Timmermans</a> [<span class="datetime">Fri, 8 Nov 2024 21:05:31 +0000</span> (22:05 +0100)]</span> <br/> </div> <div class="log_body"> Stop&nbsp;calling&nbsp;Perl_sv_setpvf&nbsp;manually<br/> <br/> Call&nbsp;sv_setpvf&nbsp;instead.<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/ba04a9040af061424b6d6f0b1e888cd3ce4b3d9f"><span class="age">2 weeks ago</span>Stop calling Perl_sv_catpvf manually</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/ba04a9040af061424b6d6f0b1e888cd3ce4b3d9f">commit</a> | <a href="/perl5.git/commitdiff/ba04a9040af061424b6d6f0b1e888cd3ce4b3d9f">commitdiff</a> | <a href="/perl5.git/tree/ba04a9040af061424b6d6f0b1e888cd3ce4b3d9f">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Leon+Timmermans;st=author" title="Search for commits authored by Leon Timmermans">Leon Timmermans</a> [<span class="datetime">Fri, 8 Nov 2024 21:04:48 +0000</span> (22:04 +0100)]</span> <br/> </div> <div class="log_body"> Stop&nbsp;calling&nbsp;Perl_sv_catpvf&nbsp;manually<br/> <br/> Call&nbsp;sv_catpvf&nbsp;instead<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/410115a66cf3bfe5886711d49c946dfb62bbe2da"><span class="age">2 weeks ago</span>Dont call Perl_warn manually in core</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/410115a66cf3bfe5886711d49c946dfb62bbe2da">commit</a> | <a href="/perl5.git/commitdiff/410115a66cf3bfe5886711d49c946dfb62bbe2da">commitdiff</a> | <a href="/perl5.git/tree/410115a66cf3bfe5886711d49c946dfb62bbe2da">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Leon+Timmermans;st=author" title="Search for commits authored by Leon Timmermans">Leon Timmermans</a> [<span class="datetime">Fri, 8 Nov 2024 20:33:31 +0000</span> (21:33 +0100)]</span> <br/> </div> <div class="log_body"> Dont&nbsp;call&nbsp;Perl_warn&nbsp;manually&nbsp;in&nbsp;core<br/> <br/> Just&nbsp;call&nbsp;warn&nbsp;instead,&nbsp;we&#39;ve&nbsp;been&nbsp;able&nbsp;to&nbsp;do&nbsp;that&nbsp;for&nbsp;vararg&nbsp;functions<br/> since&nbsp;<a class="text" href="/perl5.git/object/d933027ef0a56c99aee8cc3c88ff4f9981ac9fc2">d933027ef0a56c99aee8cc3c88ff4f9981ac9fc2</a><br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/dbd0f2f14facd3758777f45e175b66a74db09dc9"><span class="age">2 weeks ago</span>Avoid calling Perl_croak_nocontext from core</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/dbd0f2f14facd3758777f45e175b66a74db09dc9">commit</a> | <a href="/perl5.git/commitdiff/dbd0f2f14facd3758777f45e175b66a74db09dc9">commitdiff</a> | <a href="/perl5.git/tree/dbd0f2f14facd3758777f45e175b66a74db09dc9">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Leon+Timmermans;st=author" title="Search for commits authored by Leon Timmermans">Leon Timmermans</a> [<span class="datetime">Fri, 8 Nov 2024 20:24:40 +0000</span> (21:24 +0100)]</span> <br/> </div> <div class="log_body"> Avoid&nbsp;calling&nbsp;Perl_croak_nocontext&nbsp;from&nbsp;core<br/> <br/> In&nbsp;core&nbsp;we&nbsp;almost&nbsp;always&nbsp;have&nbsp;a&nbsp;context,&nbsp;or&nbsp;we&nbsp;can&nbsp;easily&nbsp;get&nbsp;one.<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/453b1c0d2bbe8100ccab79dad9f2f5d7f5228632"><span class="age">2 weeks ago</span>Use croak_no_modify directly</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/453b1c0d2bbe8100ccab79dad9f2f5d7f5228632">commit</a> | <a href="/perl5.git/commitdiff/453b1c0d2bbe8100ccab79dad9f2f5d7f5228632">commitdiff</a> | <a href="/perl5.git/tree/453b1c0d2bbe8100ccab79dad9f2f5d7f5228632">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Leon+Timmermans;st=author" title="Search for commits authored by Leon Timmermans">Leon Timmermans</a> [<span class="datetime">Wed, 19 Feb 2025 18:07:08 +0000</span> (19:07 +0100)]</span> <br/> </div> <div class="log_body"> Use&nbsp;croak_no_modify&nbsp;directly<br/> <br/> There&nbsp;never&nbsp;was&nbsp;any&nbsp;good&nbsp;reason&nbsp;to&nbsp;call&nbsp;it&nbsp;by&nbsp;its&nbsp;long&nbsp;name.<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/06c3a62f12c80b3037aa9cc72e5e35f9c5ee47c6"><span class="age">2 weeks ago</span>Dont call Perl_croak manually in core</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/06c3a62f12c80b3037aa9cc72e5e35f9c5ee47c6">commit</a> | <a href="/perl5.git/commitdiff/06c3a62f12c80b3037aa9cc72e5e35f9c5ee47c6">commitdiff</a> | <a href="/perl5.git/tree/06c3a62f12c80b3037aa9cc72e5e35f9c5ee47c6">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Leon+Timmermans;st=author" title="Search for commits authored by Leon Timmermans">Leon Timmermans</a> [<span class="datetime">Fri, 8 Nov 2024 18:50:55 +0000</span> (19:50 +0100)]</span> <br/> </div> <div class="log_body"> Dont&nbsp;call&nbsp;Perl_croak&nbsp;manually&nbsp;in&nbsp;core<br/> <br/> Just&nbsp;call&nbsp;croak&nbsp;instead,&nbsp;we&#39;ve&nbsp;been&nbsp;able&nbsp;to&nbsp;do&nbsp;that&nbsp;for&nbsp;vararg&nbsp;functions<br/> since&nbsp;<a class="text" href="/perl5.git/object/d933027ef0a56c99aee8cc3c88ff4f9981ac9fc2">d933027ef0a56c99aee8cc3c88ff4f9981ac9fc2</a><br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/24ec8e7f78d0add1f58f08cd5e5ddb042d45f3b9"><span class="age">2 weeks ago</span>pv_escape: Use utf8_to_uv, preferred to utf8_to_uvchr_buf</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/24ec8e7f78d0add1f58f08cd5e5ddb042d45f3b9">commit</a> | <a href="/perl5.git/commitdiff/24ec8e7f78d0add1f58f08cd5e5ddb042d45f3b9">commitdiff</a> | <a href="/perl5.git/tree/24ec8e7f78d0add1f58f08cd5e5ddb042d45f3b9">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Karl+Williamson;st=author" title="Search for commits authored by Karl Williamson">Karl Williamson</a> [<span class="datetime">Thu, 5 Dec 2024 17:22:57 +0000</span> (10:22 -0700)]</span> <br/> </div> <div class="log_body"> pv_escape:&nbsp;Use&nbsp;utf8_to_uv,&nbsp;preferred&nbsp;to&nbsp;utf8_to_uvchr_buf<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/a307b4d27da3ee68ee88b4c9026a0ce505c14ffa"><span class="age">2 weeks ago</span>isFOO_utf8_lc: Use utf8_to-uv_or_die not utf8_to_uvchr_buf</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/a307b4d27da3ee68ee88b4c9026a0ce505c14ffa">commit</a> | <a href="/perl5.git/commitdiff/a307b4d27da3ee68ee88b4c9026a0ce505c14ffa">commitdiff</a> | <a href="/perl5.git/tree/a307b4d27da3ee68ee88b4c9026a0ce505c14ffa">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Karl+Williamson;st=author" title="Search for commits authored by Karl Williamson">Karl Williamson</a> [<span class="datetime">Mon, 3 Mar 2025 04:48:06 +0000</span> (21:48 -0700)]</span> <br/> </div> <div class="log_body"> isFOO_utf8_lc:&nbsp;Use&nbsp;utf8_to-uv_or_die&nbsp;not&nbsp;utf8_to_uvchr_buf<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/7097dec4d804fc6d96d73b2e5a74a1ea7b66c766"><span class="age">2 weeks ago</span>regmatch: Use utf8_to-uv_or_die not utf8_to_uvchr_buf</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/7097dec4d804fc6d96d73b2e5a74a1ea7b66c766">commit</a> | <a href="/perl5.git/commitdiff/7097dec4d804fc6d96d73b2e5a74a1ea7b66c766">commitdiff</a> | <a href="/perl5.git/tree/7097dec4d804fc6d96d73b2e5a74a1ea7b66c766">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Karl+Williamson;st=author" title="Search for commits authored by Karl Williamson">Karl Williamson</a> [<span class="datetime">Mon, 3 Mar 2025 04:41:17 +0000</span> (21:41 -0700)]</span> <br/> </div> <div class="log_body"> regmatch:&nbsp;Use&nbsp;utf8_to-uv_or_die&nbsp;not&nbsp;utf8_to_uvchr_buf<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/d22f3fb956eb2805550290893d723427ba0d7a81"><span class="age">2 weeks ago</span>find_by_class: Use utf8_to-uv_or_die not utf8_to_uvchr_buf</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/d22f3fb956eb2805550290893d723427ba0d7a81">commit</a> | <a href="/perl5.git/commitdiff/d22f3fb956eb2805550290893d723427ba0d7a81">commitdiff</a> | <a href="/perl5.git/tree/d22f3fb956eb2805550290893d723427ba0d7a81">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Karl+Williamson;st=author" title="Search for commits authored by Karl Williamson">Karl Williamson</a> [<span class="datetime">Mon, 3 Mar 2025 04:39:40 +0000</span> (21:39 -0700)]</span> <br/> </div> <div class="log_body"> find_by_class:&nbsp;Use&nbsp;utf8_to-uv_or_die&nbsp;not&nbsp;utf8_to_uvchr_buf<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/4c15e2931d04a5a3a271d243933c1c0a26e6d3a9"><span class="age">2 weeks ago</span>_generic_GET_BREAK_VAL_UTF8: Use utf8_to-uv_or_die not utf8_to_uvchr_buf</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/4c15e2931d04a5a3a271d243933c1c0a26e6d3a9">commit</a> | <a href="/perl5.git/commitdiff/4c15e2931d04a5a3a271d243933c1c0a26e6d3a9">commitdiff</a> | <a href="/perl5.git/tree/4c15e2931d04a5a3a271d243933c1c0a26e6d3a9">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Karl+Williamson;st=author" title="Search for commits authored by Karl Williamson">Karl Williamson</a> [<span class="datetime">Mon, 3 Mar 2025 04:49:30 +0000</span> (21:49 -0700)]</span> <br/> </div> <div class="log_body"> _generic_GET_BREAK_VAL_UTF8:&nbsp;Use&nbsp;utf8_to-uv_or_die&nbsp;not&nbsp;utf8_to_uvchr_buf<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/c469b4e35c7cbba9ab7a873191851f374395b307"><span class="age">2 weeks ago</span>Convert leading underscore to trailing in internal global macro</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/c469b4e35c7cbba9ab7a873191851f374395b307">commit</a> | <a href="/perl5.git/commitdiff/c469b4e35c7cbba9ab7a873191851f374395b307">commitdiff</a> | <a href="/perl5.git/tree/c469b4e35c7cbba9ab7a873191851f374395b307">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Karl+Williamson;st=author" title="Search for commits authored by Karl Williamson">Karl Williamson</a> [<span class="datetime">Thu, 5 Dec 2024 17:05:15 +0000</span> (10:05 -0700)]</span> <br/> </div> <div class="log_body"> Convert&nbsp;leading&nbsp;underscore&nbsp;to&nbsp;trailing&nbsp;in&nbsp;internal&nbsp;global&nbsp;macro<br/> <br/> Leading&nbsp;underscores&nbsp;of&nbsp;global&nbsp;names&nbsp;are&nbsp;reserved&nbsp;for&nbsp;the&nbsp;C&nbsp;implmentation<br/> itself.&nbsp;We&nbsp;are&nbsp;gradually&nbsp;fixing&nbsp;ours&nbsp;to&nbsp;conform.<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/dd0471ca548cd399aedcefaa2018bd8a9463e95c"><span class="age">2 weeks ago</span>Turn is_utf8_common() into a macro</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/dd0471ca548cd399aedcefaa2018bd8a9463e95c">commit</a> | <a href="/perl5.git/commitdiff/dd0471ca548cd399aedcefaa2018bd8a9463e95c">commitdiff</a> | <a href="/perl5.git/tree/dd0471ca548cd399aedcefaa2018bd8a9463e95c">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Karl+Williamson;st=author" title="Search for commits authored by Karl Williamson">Karl Williamson</a> [<span class="datetime">Tue, 28 Jan 2025 16:33:15 +0000</span> (09:33 -0700)]</span> <br/> </div> <div class="log_body"> Turn&nbsp;is_utf8_common()&nbsp;into&nbsp;a&nbsp;macro<br/> <br/> This&nbsp;function&nbsp;is&nbsp;now&nbsp;trivial;&nbsp;no&nbsp;need&nbsp;to&nbsp;have&nbsp;it&nbsp;a&nbsp;function<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/3af31f14108d2f84b390293828f2370fd2a639b0"><span class="age">2 weeks ago</span>check_utf8_print: Use utf8_to_uv_flags.</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/3af31f14108d2f84b390293828f2370fd2a639b0">commit</a> | <a href="/perl5.git/commitdiff/3af31f14108d2f84b390293828f2370fd2a639b0">commitdiff</a> | <a href="/perl5.git/tree/3af31f14108d2f84b390293828f2370fd2a639b0">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Karl+Williamson;st=author" title="Search for commits authored by Karl Williamson">Karl Williamson</a> [<span class="datetime">Thu, 6 Mar 2025 15:50:40 +0000</span> (08:50 -0700)]</span> <br/> </div> <div class="log_body"> check_utf8_print:&nbsp;Use&nbsp;utf8_to_uv_flags.<br/> <br/> This&nbsp;replaces&nbsp;the&nbsp;old-style&nbsp;utf8n_to_uvchr()<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/7b3314d0a287468682ebbbc46befd16da81e4804"><span class="age">2 weeks ago</span>utf8.c: Fill in commit number in comment</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/7b3314d0a287468682ebbbc46befd16da81e4804">commit</a> | <a href="/perl5.git/commitdiff/7b3314d0a287468682ebbbc46befd16da81e4804">commitdiff</a> | <a href="/perl5.git/tree/7b3314d0a287468682ebbbc46befd16da81e4804">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Karl+Williamson;st=author" title="Search for commits authored by Karl Williamson">Karl Williamson</a> [<span class="datetime">Mon, 17 Mar 2025 17:48:40 +0000</span> (11:48 -0600)]</span> <br/> </div> <div class="log_body"> utf8.c:&nbsp;Fill&nbsp;in&nbsp;commit&nbsp;number&nbsp;in&nbsp;comment<br/> <br/> These&nbsp;comments&nbsp;left&nbsp;the&nbsp;commit&nbsp;number&nbsp;vacant&nbsp;until&nbsp;we&nbsp;actually&nbsp;had&nbsp;one<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/a1805b9cc667e10264e904172273826bb0e46360"><span class="age">2 weeks ago</span>Merge branch &#39;Fix utf8 corner cases&#39; into blead</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/a1805b9cc667e10264e904172273826bb0e46360">commit</a> | <a href="/perl5.git/commitdiff/a1805b9cc667e10264e904172273826bb0e46360">commitdiff</a> | <a href="/perl5.git/tree/a1805b9cc667e10264e904172273826bb0e46360">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Karl+Williamson;st=author" title="Search for commits authored by Karl Williamson">Karl Williamson</a> [<span class="datetime">Mon, 17 Mar 2025 14:42:50 +0000</span> (08:42 -0600)]</span> <br/> </div> <div class="log_body"> Merge&nbsp;branch&nbsp;&#39;Fix&nbsp;utf8&nbsp;corner&nbsp;cases&#39;&nbsp;into&nbsp;blead<br/> <br/> There&nbsp;are&nbsp;around&nbsp;20&nbsp;different&nbsp;functions&nbsp;that&nbsp;take&nbsp;a&nbsp;UTF-8&nbsp;sequence&nbsp;of<br/> bytes&nbsp;and&nbsp;try&nbsp;to&nbsp;find&nbsp;the&nbsp;ordinal&nbsp;code&nbsp;point&nbsp;represented&nbsp;by&nbsp;them.&nbsp;It&nbsp;was<br/> becoming&nbsp;clear&nbsp;that&nbsp;the&nbsp;existing&nbsp;tests&nbsp;in&nbsp;our&nbsp;suite&nbsp;were&nbsp;inadequate,&nbsp;not<br/> finding&nbsp;glaring&nbsp;bugs.&nbsp;And&nbsp;UTF-8&nbsp;handling&nbsp;is&nbsp;important,&nbsp;with&nbsp;failures&nbsp;in<br/> it&nbsp;having&nbsp;been&nbsp;exploited&nbsp;by&nbsp;hackers&nbsp;in&nbsp;various&nbsp;products&nbsp;over&nbsp;the&nbsp;years<br/> for&nbsp;various&nbsp;nefarious&nbsp;purposes.<br/> <br/> I&nbsp;set&nbsp;out&nbsp;to&nbsp;improve&nbsp;the&nbsp;tests,&nbsp;spending&nbsp;way&nbsp;too&nbsp;much&nbsp;time&nbsp;before<br/> realizing&nbsp;that&nbsp;adding&nbsp;band&nbsp;aids&nbsp;to&nbsp;the&nbsp;current&nbsp;scheme&nbsp;was&nbsp;not&nbsp;going&nbsp;to<br/> work&nbsp;out.&nbsp;So&nbsp;I&nbsp;undertook&nbsp;rewriting&nbsp;the&nbsp;tests.&nbsp;This&nbsp;turned&nbsp;out&nbsp;to&nbsp;be&nbsp;way<br/> harder&nbsp;and&nbsp;time&nbsp;consuming&nbsp;than&nbsp;I&nbsp;expected.&nbsp;And&nbsp;it&nbsp;still&nbsp;isn&#39;t&nbsp;ready&nbsp;to<br/> go&nbsp;into&nbsp;blead.&nbsp;But&nbsp;along&nbsp;the&nbsp;way,&nbsp;I&nbsp;discovered&nbsp;that&nbsp;it&nbsp;was&nbsp;finding<br/> corner&nbsp;case&nbsp;bugs&nbsp;that&nbsp;I&nbsp;would&nbsp;never&nbsp;have&nbsp;anticipated.&nbsp;This&nbsp;series&nbsp;of<br/> commits&nbsp;fixes&nbsp;those,&nbsp;while&nbsp;simplifying&nbsp;the&nbsp;code&nbsp;and&nbsp;reducing&nbsp;redundancy.<br/> <br/> The&nbsp;new&nbsp;test&nbsp;file&nbsp;needs&nbsp;clean-up,&nbsp;and&nbsp;probably&nbsp;ways&nbsp;to&nbsp;make&nbsp;it&nbsp;faster,<br/> but&nbsp;it&nbsp;is&nbsp;finally&nbsp;far&nbsp;enough&nbsp;along&nbsp;that&nbsp;I&nbsp;believe&nbsp;it&nbsp;has&nbsp;caught&nbsp;most&nbsp;of<br/> the&nbsp;bugs&nbsp;out&nbsp;there.&nbsp;So&nbsp;I&#39;m&nbsp;submitting&nbsp;these&nbsp;now&nbsp;to&nbsp;get&nbsp;into&nbsp;v5.42.&nbsp;The<br/> deadline&nbsp;for&nbsp;the&nbsp;test&nbsp;file&nbsp;is&nbsp;later&nbsp;in&nbsp;the&nbsp;development&nbsp;process.<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/cab4c628207ecc6c954766194e3dbc02ed196f69"><span class="age">2 weeks ago</span>utf8_to_uv_msgs: Assert against both returning and warning</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/cab4c628207ecc6c954766194e3dbc02ed196f69">commit</a> | <a href="/perl5.git/commitdiff/cab4c628207ecc6c954766194e3dbc02ed196f69">commitdiff</a> | <a href="/perl5.git/tree/cab4c628207ecc6c954766194e3dbc02ed196f69">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Karl+Williamson;st=author" title="Search for commits authored by Karl Williamson">Karl Williamson</a> [<span class="datetime">Fri, 17 Jan 2025 15:48:53 +0000</span> (08:48 -0700)]</span> <br/> </div> <div class="log_body"> utf8_to_uv_msgs:&nbsp;Assert&nbsp;against&nbsp;both&nbsp;returning&nbsp;and&nbsp;warning<br/> <br/> This&nbsp;asserts&nbsp;against&nbsp;the&nbsp;flags&nbsp;to&nbsp;the&nbsp;call&nbsp;of&nbsp;this&nbsp;function&nbsp;being<br/> contradictory,&nbsp;in&nbsp;that&nbsp;it&nbsp;is&nbsp;boths<br/> &nbsp;&nbsp;&nbsp;&nbsp;1)&nbsp;to&nbsp;warn&nbsp;and/or&nbsp;die&nbsp;if&nbsp;anything&nbsp;goes&nbsp;wrong;&nbsp;and<br/> &nbsp;&nbsp;&nbsp;&nbsp;2)&nbsp;not&nbsp;to&nbsp;warn&nbsp;under&nbsp;any&nbsp;circumstances&nbsp;but&nbsp;instead&nbsp;to&nbsp;return&nbsp;to&nbsp;the<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;caller&nbsp;objects&nbsp;describing&nbsp;what&nbsp;it&nbsp;would&nbsp;have&nbsp;otherise&nbsp;warned.<br/> <br/> In&nbsp;a&nbsp;non-DEBUGGING&nbsp;build,&nbsp;the&nbsp;warn/die&nbsp;flags&nbsp;are&nbsp;ignored<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/b0ac0a6283361db570723f33b6ea2d5e3233177e"><span class="age">2 weeks ago</span>utf8.c: White-space only</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/b0ac0a6283361db570723f33b6ea2d5e3233177e">commit</a> | <a href="/perl5.git/commitdiff/b0ac0a6283361db570723f33b6ea2d5e3233177e">commitdiff</a> | <a href="/perl5.git/tree/b0ac0a6283361db570723f33b6ea2d5e3233177e">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Karl+Williamson;st=author" title="Search for commits authored by Karl Williamson">Karl Williamson</a> [<span class="datetime">Sun, 9 Mar 2025 03:52:50 +0000</span> (20:52 -0700)]</span> <br/> </div> <div class="log_body"> utf8.c:&nbsp;White-space&nbsp;only<br/> <br/> Outdent&nbsp;after&nbsp;removing&nbsp;enclosing&nbsp;braces<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/6b30aa30618e2ef4b0029caffdd2a51e645e4970"><span class="age">2 weeks ago</span>utf8_to_uv_msgs: Use already computed value</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/6b30aa30618e2ef4b0029caffdd2a51e645e4970">commit</a> | <a href="/perl5.git/commitdiff/6b30aa30618e2ef4b0029caffdd2a51e645e4970">commitdiff</a> | <a href="/perl5.git/tree/6b30aa30618e2ef4b0029caffdd2a51e645e4970">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Karl+Williamson;st=author" title="Search for commits authored by Karl Williamson">Karl Williamson</a> [<span class="datetime">Fri, 7 Mar 2025 15:02:54 +0000</span> (08:02 -0700)]</span> <br/> </div> <div class="log_body"> utf8_to_uv_msgs:&nbsp;Use&nbsp;already&nbsp;computed&nbsp;value<br/> <br/> Instead&nbsp;of&nbsp;doing&nbsp;the&nbsp;subtraction&nbsp;again,&nbsp;use&nbsp;the&nbsp;variable&nbsp;that&nbsp;already<br/> contains&nbsp;the&nbsp;desired&nbsp;value.<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/5104b9a382f597762915def215ec5632a7d1c549"><span class="age">2 weeks ago</span>utf8_to_uv_msgs: Add, clarify comments</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/5104b9a382f597762915def215ec5632a7d1c549">commit</a> | <a href="/perl5.git/commitdiff/5104b9a382f597762915def215ec5632a7d1c549">commitdiff</a> | <a href="/perl5.git/tree/5104b9a382f597762915def215ec5632a7d1c549">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Karl+Williamson;st=author" title="Search for commits authored by Karl Williamson">Karl Williamson</a> [<span class="datetime">Sat, 18 Jan 2025 17:18:45 +0000</span> (10:18 -0700)]</span> <br/> </div> <div class="log_body"> utf8_to_uv_msgs:&nbsp;Add,&nbsp;clarify&nbsp;comments<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/e6951798a38b8abe7d29fcf83a8ecd43f1579b18"><span class="age">2 weeks ago</span>utf8_to_uv_msgs: Remove redundant conditionals</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/e6951798a38b8abe7d29fcf83a8ecd43f1579b18">commit</a> | <a href="/perl5.git/commitdiff/e6951798a38b8abe7d29fcf83a8ecd43f1579b18">commitdiff</a> | <a href="/perl5.git/tree/e6951798a38b8abe7d29fcf83a8ecd43f1579b18">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Karl+Williamson;st=author" title="Search for commits authored by Karl Williamson">Karl Williamson</a> [<span class="datetime">Sat, 18 Jan 2025 17:07:27 +0000</span> (10:07 -0700)]</span> <br/> </div> <div class="log_body"> utf8_to_uv_msgs:&nbsp;Remove&nbsp;redundant&nbsp;conditionals<br/> <br/> The&nbsp;comments&nbsp;added&nbsp;to&nbsp;the&nbsp;code&nbsp;in&nbsp;this&nbsp;commit&nbsp;explain&nbsp;that&nbsp;to&nbsp;get&nbsp;here,<br/> something&nbsp;needs&nbsp;to&nbsp;be&nbsp;done;&nbsp;no&nbsp;need&nbsp;to&nbsp;test&nbsp;again.<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/061644d72c121af5a398b469c7f96f5bd8af97fd"><span class="age">2 weeks ago</span>utf8.c: Remove no longer used #define</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/061644d72c121af5a398b469c7f96f5bd8af97fd">commit</a> | <a href="/perl5.git/commitdiff/061644d72c121af5a398b469c7f96f5bd8af97fd">commitdiff</a> | <a href="/perl5.git/tree/061644d72c121af5a398b469c7f96f5bd8af97fd">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Karl+Williamson;st=author" title="Search for commits authored by Karl Williamson">Karl Williamson</a> [<span class="datetime">Sat, 18 Jan 2025 17:04:15 +0000</span> (10:04 -0700)]</span> <br/> </div> <div class="log_body"> utf8.c:&nbsp;Remove&nbsp;no&nbsp;longer&nbsp;used&nbsp;#define<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/b48d541824a35068f1b154f90382b130581a8c22"><span class="age">2 weeks ago</span>Reinstate utf8 translation testing</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/b48d541824a35068f1b154f90382b130581a8c22">commit</a> | <a href="/perl5.git/commitdiff/b48d541824a35068f1b154f90382b130581a8c22">commitdiff</a> | <a href="/perl5.git/tree/b48d541824a35068f1b154f90382b130581a8c22">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Karl+Williamson;st=author" title="Search for commits authored by Karl Williamson">Karl Williamson</a> [<span class="datetime">Sun, 9 Mar 2025 04:02:10 +0000</span> (21:02 -0700)]</span> <br/> </div> <div class="log_body"> Reinstate&nbsp;utf8&nbsp;translation&nbsp;testing<br/> <br/> The&nbsp;previous&nbsp;commit&nbsp;fixed&nbsp;the&nbsp;remaining&nbsp;problems&nbsp;that&nbsp;this&nbsp;test&nbsp;finds,<br/> and&nbsp;so&nbsp;it&nbsp;can&nbsp;be&nbsp;turned&nbsp;on&nbsp;again.<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/238a42b9ab5c4303236baee35cb3e4c0bee96c1b"><span class="age">2 weeks ago</span>utf8_to_uv_msgs: Revamp handling of above-Unicode code points</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/238a42b9ab5c4303236baee35cb3e4c0bee96c1b">commit</a> | <a href="/perl5.git/commitdiff/238a42b9ab5c4303236baee35cb3e4c0bee96c1b">commitdiff</a> | <a href="/perl5.git/tree/238a42b9ab5c4303236baee35cb3e4c0bee96c1b">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Karl+Williamson;st=author" title="Search for commits authored by Karl Williamson">Karl Williamson</a> [<span class="datetime">Sun, 9 Mar 2025 04:00:14 +0000</span> (21:00 -0700)]</span> <br/> </div> <div class="log_body"> utf8_to_uv_msgs:&nbsp;Revamp&nbsp;handling&nbsp;of&nbsp;above-Unicode&nbsp;code&nbsp;points<br/> <br/> As&nbsp;stated&nbsp;in&nbsp;a&nbsp;recent&nbsp;commit&nbsp;message,&nbsp;this&nbsp;is&nbsp;complex&nbsp;and&nbsp;problematic.<br/> This&nbsp;commit&nbsp;revamps&nbsp;it,&nbsp;simplifying&nbsp;it&nbsp;and&nbsp;fixing&nbsp;the&nbsp;known&nbsp;remaining<br/> bugs.<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/22d8ec6da1d8e799219e7f66fd962fa9ccb2d4af"><span class="age">2 weeks ago</span>utf8_to_uv_msgs: Create another common macro</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/22d8ec6da1d8e799219e7f66fd962fa9ccb2d4af">commit</a> | <a href="/perl5.git/commitdiff/22d8ec6da1d8e799219e7f66fd962fa9ccb2d4af">commitdiff</a> | <a href="/perl5.git/tree/22d8ec6da1d8e799219e7f66fd962fa9ccb2d4af">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Karl+Williamson;st=author" title="Search for commits authored by Karl Williamson">Karl Williamson</a> [<span class="datetime">Sun, 9 Mar 2025 03:47:53 +0000</span> (20:47 -0700)]</span> <br/> </div> <div class="log_body"> utf8_to_uv_msgs:&nbsp;Create&nbsp;another&nbsp;common&nbsp;macro<br/> <br/> This&nbsp;new&nbsp;macro&nbsp;allows&nbsp;two&nbsp;more&nbsp;case&nbsp;statements&nbsp;in&nbsp;the&nbsp;switch&nbsp;to&nbsp;have<br/> a&nbsp;common&nbsp;macro&nbsp;at&nbsp;their&nbsp;beginnings,&nbsp;instead&nbsp;of&nbsp;having&nbsp;to&nbsp;repeat&nbsp;code.<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/51fbc1cf7bbf9c3dd6c4159811322dd1fec39bd5"><span class="age">2 weeks ago</span>utf8_to_uv_msgs: Convert switch case to use macro</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/51fbc1cf7bbf9c3dd6c4159811322dd1fec39bd5">commit</a> | <a href="/perl5.git/commitdiff/51fbc1cf7bbf9c3dd6c4159811322dd1fec39bd5">commitdiff</a> | <a href="/perl5.git/tree/51fbc1cf7bbf9c3dd6c4159811322dd1fec39bd5">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Karl+Williamson;st=author" title="Search for commits authored by Karl Williamson">Karl Williamson</a> [<span class="datetime">Sun, 9 Mar 2025 03:42:20 +0000</span> (20:42 -0700)]</span> <br/> </div> <div class="log_body"> utf8_to_uv_msgs:&nbsp;Convert&nbsp;switch&nbsp;case&nbsp;to&nbsp;use&nbsp;macro<br/> <br/> By&nbsp;changing&nbsp;flags&nbsp;earlier&nbsp;in&nbsp;the&nbsp;function,&nbsp;we&nbsp;can&nbsp;convert&nbsp;this&nbsp;case&nbsp;in&nbsp;a<br/> switch&nbsp;to&nbsp;use&nbsp;the&nbsp;macro&nbsp;introduced&nbsp;in&nbsp;the&nbsp;previous&nbsp;commit<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/2a00b118018027a7154164b0fa646dab8ce52114"><span class="age">2 weeks ago</span>utf8_to_uv_msgs: Create a common macro</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/2a00b118018027a7154164b0fa646dab8ce52114">commit</a> | <a href="/perl5.git/commitdiff/2a00b118018027a7154164b0fa646dab8ce52114">commitdiff</a> | <a href="/perl5.git/tree/2a00b118018027a7154164b0fa646dab8ce52114">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Karl+Williamson;st=author" title="Search for commits authored by Karl Williamson">Karl Williamson</a> [<span class="datetime">Sun, 9 Mar 2025 03:37:57 +0000</span> (20:37 -0700)]</span> <br/> </div> <div class="log_body"> utf8_to_uv_msgs:&nbsp;Create&nbsp;a&nbsp;common&nbsp;macro<br/> <br/> Previous&nbsp;commits&nbsp;have&nbsp;allowed&nbsp;the&nbsp;beginning&nbsp;of&nbsp;several&nbsp;of&nbsp;the&nbsp;case<br/> statements&nbsp;in&nbsp;this&nbsp;switch()&nbsp;to&nbsp;have&nbsp;the&nbsp;same&nbsp;code.&nbsp;&nbsp;This&nbsp;commit&nbsp;creates<br/> a&nbsp;macro&nbsp;encapsulating&nbsp;that&nbsp;code&nbsp;and&nbsp;changes&nbsp;the&nbsp;cases&nbsp;to&nbsp;use&nbsp;it.<br/> <br/> The&nbsp;macro&nbsp;continues&nbsp;the&nbsp;enclosing&nbsp;loop&nbsp;if&nbsp;no&nbsp;message&nbsp;needs&nbsp;to&nbsp;be<br/> generated.&nbsp;&nbsp;This&nbsp;allows&nbsp;the&nbsp;removal&nbsp;of&nbsp;various&nbsp;conditional&nbsp;blocks.&nbsp;&nbsp;And<br/> it&nbsp;means&nbsp;that&nbsp;these&nbsp;conditions&nbsp;don&#39;t&nbsp;break&nbsp;to&nbsp;the&nbsp;bottom&nbsp;of&nbsp;the&nbsp;switch()<br/> if&nbsp;no&nbsp;message&nbsp;is&nbsp;needed.<br/> <br/> Braces&nbsp;are&nbsp;needed&nbsp;in&nbsp;one&nbsp;case:&nbsp;so&nbsp;as&nbsp;to&nbsp;not&nbsp;run&nbsp;afoul&nbsp;of&nbsp;C++<br/> initialization&nbsp;crossing<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/3aca733b2ab5c0e9c293648f169ec3320e2473ce"><span class="age">2 weeks ago</span>perlapi: DIE_IF_MALFORMED overrides CHECK_ONLY</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/3aca733b2ab5c0e9c293648f169ec3320e2473ce">commit</a> | <a href="/perl5.git/commitdiff/3aca733b2ab5c0e9c293648f169ec3320e2473ce">commitdiff</a> | <a href="/perl5.git/tree/3aca733b2ab5c0e9c293648f169ec3320e2473ce">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Karl+Williamson;st=author" title="Search for commits authored by Karl Williamson">Karl Williamson</a> [<span class="datetime">Fri, 7 Mar 2025 23:44:55 +0000</span> (16:44 -0700)]</span> <br/> </div> <div class="log_body"> perlapi:&nbsp;DIE_IF_MALFORMED&nbsp;overrides&nbsp;CHECK_ONLY<br/> <br/> This&nbsp;documents&nbsp;the&nbsp;change&nbsp;in&nbsp;the&nbsp;previous&nbsp;commit<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/9540191231a7d4317417176944cc51a7a16a6ead"><span class="age">2 weeks ago</span>utf8_to_uv_msgs: Revise and rename macro</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/9540191231a7d4317417176944cc51a7a16a6ead">commit</a> | <a href="/perl5.git/commitdiff/9540191231a7d4317417176944cc51a7a16a6ead">commitdiff</a> | <a href="/perl5.git/tree/9540191231a7d4317417176944cc51a7a16a6ead">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Karl+Williamson;st=author" title="Search for commits authored by Karl Williamson">Karl Williamson</a> [<span class="datetime">Sat, 8 Mar 2025 22:56:40 +0000</span> (15:56 -0700)]</span> <br/> </div> <div class="log_body"> utf8_to_uv_msgs:&nbsp;Revise&nbsp;and&nbsp;rename&nbsp;macro<br/> <br/> This&nbsp;macro&nbsp;is&nbsp;used&nbsp;to&nbsp;hide&nbsp;the&nbsp;details&nbsp;of&nbsp;determining&nbsp;if&nbsp;an&nbsp;abnormal<br/> condition&nbsp;should&nbsp;raise&nbsp;a&nbsp;warning&nbsp;or&nbsp;not.&nbsp;&nbsp;But&nbsp;I&nbsp;found&nbsp;it&nbsp;more&nbsp;convenient<br/> to&nbsp;expand&nbsp;the&nbsp;macro&nbsp;to&nbsp;return&nbsp;the&nbsp;packed&nbsp;warnings&nbsp;category(ies)&nbsp;if&nbsp;a<br/> warning&nbsp;should&nbsp;be&nbsp;raised&nbsp;or&nbsp;not.&nbsp;&nbsp;That&nbsp;information&nbsp;is&nbsp;known&nbsp;inside&nbsp;the<br/> macro&nbsp;and&nbsp;was&nbsp;being&nbsp;discarded,&nbsp;and&nbsp;then&nbsp;having&nbsp;to&nbsp;be&nbsp;recalculated.&nbsp;&nbsp;The<br/> new&nbsp;name&nbsp;reflects&nbsp;its&nbsp;expanded&nbsp;purpose,&nbsp;PACK_WARN.&nbsp;&nbsp;0&nbsp;is&nbsp;returned&nbsp;if&nbsp;no<br/> warnings&nbsp;need&nbsp;be&nbsp;raised;&nbsp;and&nbsp;importantly&nbsp;fixing&nbsp;a&nbsp;bug&nbsp;in&nbsp;the&nbsp;old&nbsp;code,<br/> it&nbsp;returns&nbsp;&lt;&nbsp;0&nbsp;if&nbsp;no&nbsp;warning&nbsp;should&nbsp;be&nbsp;raised&nbsp;directly,&nbsp;but&nbsp;that&nbsp;an<br/> entry&nbsp;needs&nbsp;to&nbsp;be&nbsp;added&nbsp;to&nbsp;the&nbsp;AV&nbsp;array&nbsp;returned&nbsp;by&nbsp;the&nbsp;function&nbsp;(if&nbsp;the<br/> parameter&nbsp;requesting&nbsp;that&nbsp;has&nbsp;been&nbsp;passed&nbsp;in)<br/> <br/> But&nbsp;Encode,&nbsp;for&nbsp;which&nbsp;this&nbsp;form&nbsp;of&nbsp;the&nbsp;translation&nbsp;function&nbsp;was&nbsp;created,<br/> and&nbsp;may&nbsp;be&nbsp;the&nbsp;only&nbsp;user&nbsp;of&nbsp;it,&nbsp;depends&nbsp;on&nbsp;not&nbsp;getting&nbsp;a&nbsp;zero&nbsp;return.<br/> So&nbsp;this&nbsp;has&nbsp;an&nbsp;override&nbsp;until&nbsp;Encode&nbsp;can&nbsp;be&nbsp;fixed.<br/> <br/> I&nbsp;introduced&nbsp;the&nbsp;DIE_IF_MALFORMED&nbsp;flag&nbsp;in&nbsp;the&nbsp;previous&nbsp;development<br/> release,&nbsp;making&nbsp;it&nbsp;subservient&nbsp;to&nbsp;the&nbsp;CHECK_ONLY&nbsp;flag.&nbsp;&nbsp;I&nbsp;have&nbsp;since<br/> realized&nbsp;that&nbsp;the&nbsp;precedence&nbsp;should&nbsp;be&nbsp;reversed.&nbsp;&nbsp;If&nbsp;a&nbsp;developer<br/> inadvertently&nbsp;passes&nbsp;both&nbsp;flags,&nbsp;it&nbsp;is&nbsp;better&nbsp;to&nbsp;honor&nbsp;the&nbsp;one&nbsp;saying<br/> you&nbsp;need&nbsp;to&nbsp;quit,&nbsp;than&nbsp;the&nbsp;one&nbsp;saying&nbsp;ignore&nbsp;any&nbsp;problems.<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/78cced2399d45a6ef0f3fffa06e6b6aad434885e"><span class="age">2 weeks ago</span>Swap comment order</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/78cced2399d45a6ef0f3fffa06e6b6aad434885e">commit</a> | <a href="/perl5.git/commitdiff/78cced2399d45a6ef0f3fffa06e6b6aad434885e">commitdiff</a> | <a href="/perl5.git/tree/78cced2399d45a6ef0f3fffa06e6b6aad434885e">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Karl+Williamson;st=author" title="Search for commits authored by Karl Williamson">Karl Williamson</a> [<span class="datetime">Sat, 18 Jan 2025 14:34:29 +0000</span> (07:34 -0700)]</span> <br/> </div> <div class="log_body"> Swap&nbsp;comment&nbsp;order<br/> <br/> It&nbsp;is&nbsp;more&nbsp;easily&nbsp;understood&nbsp;reversed<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/d1fba02797d2739f81e5a840744f4e675039a926"><span class="age">2 weeks ago</span>utf8_to_uv_msgs: De-duplicate some more code</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/d1fba02797d2739f81e5a840744f4e675039a926">commit</a> | <a href="/perl5.git/commitdiff/d1fba02797d2739f81e5a840744f4e675039a926">commitdiff</a> | <a href="/perl5.git/tree/d1fba02797d2739f81e5a840744f4e675039a926">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Karl+Williamson;st=author" title="Search for commits authored by Karl Williamson">Karl Williamson</a> [<span class="datetime">Sat, 8 Mar 2025 22:54:18 +0000</span> (15:54 -0700)]</span> <br/> </div> <div class="log_body"> utf8_to_uv_msgs:&nbsp;De-duplicate&nbsp;some&nbsp;more&nbsp;code<br/> <br/> This&nbsp;moves&nbsp;a&nbsp;conditional&nbsp;found&nbsp;in&nbsp;all&nbsp;cases&nbsp;in&nbsp;a&nbsp;switch()&nbsp;to&nbsp;just&nbsp;before<br/> the&nbsp;switch,&nbsp;so&nbsp;the&nbsp;code&nbsp;is&nbsp;not&nbsp;duplicated.<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/b1a21fc8531cf47ab0645788b5644916ed91620a"><span class="age">2 weeks ago</span>utf8_to_uv_msgs: Fix handling of too-short malformations</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/b1a21fc8531cf47ab0645788b5644916ed91620a">commit</a> | <a href="/perl5.git/commitdiff/b1a21fc8531cf47ab0645788b5644916ed91620a">commitdiff</a> | <a href="/perl5.git/tree/b1a21fc8531cf47ab0645788b5644916ed91620a">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Karl+Williamson;st=author" title="Search for commits authored by Karl Williamson">Karl Williamson</a> [<span class="datetime">Sun, 9 Mar 2025 02:45:05 +0000</span> (19:45 -0700)]</span> <br/> </div> <div class="log_body"> utf8_to_uv_msgs:&nbsp;Fix&nbsp;handling&nbsp;of&nbsp;too-short&nbsp;malformations<br/> <br/> At&nbsp;this&nbsp;point&nbsp;in&nbsp;the&nbsp;code&nbsp;we&nbsp;know&nbsp;that&nbsp;the&nbsp;input&nbsp;sequence&nbsp;is&nbsp;shorter<br/> than&nbsp;a&nbsp;full&nbsp;character&nbsp;and&nbsp;that&nbsp;it&nbsp;is&nbsp;the&nbsp;legal&nbsp;beginning&nbsp;of&nbsp;a&nbsp;sequence&nbsp;that<br/> could&nbsp;evaluate&nbsp;to&nbsp;a&nbsp;code&nbsp;point&nbsp;that&nbsp;is&nbsp;of&nbsp;interest&nbsp;to&nbsp;the&nbsp;caller&nbsp;of&nbsp;this<br/> function.&nbsp;&nbsp;It&nbsp;turns&nbsp;out&nbsp;that&nbsp;in&nbsp;some&nbsp;cases&nbsp;any&nbsp;filling&nbsp;out&nbsp;of&nbsp;the&nbsp;input<br/> to&nbsp;a&nbsp;full&nbsp;character&nbsp;must&nbsp;lead&nbsp;to&nbsp;a&nbsp;code&nbsp;point&nbsp;that&nbsp;the&nbsp;caller&nbsp;is<br/> interested&nbsp;in.&nbsp;&nbsp;That&nbsp;interest&nbsp;has&nbsp;been&nbsp;signalled&nbsp;by&nbsp;flags&nbsp;passed&nbsp;to&nbsp;this<br/> function.<br/> <br/> In&nbsp;the&nbsp;past,&nbsp;we&nbsp;filled&nbsp;out&nbsp;the&nbsp;sequence&nbsp;with&nbsp;the&nbsp;minimum&nbsp;legal<br/> continuation&nbsp;byte,&nbsp;but&nbsp;that&nbsp;is&nbsp;wrong&nbsp;for&nbsp;some&nbsp;cases.&nbsp;&nbsp;This&nbsp;commit&nbsp;fixes<br/> that.<br/> <br/> Certain&nbsp;start&nbsp;bytes&nbsp;require&nbsp;the&nbsp;second&nbsp;byte&nbsp;to&nbsp;be&nbsp;higher&nbsp;than&nbsp;the<br/> minimum,&nbsp;or&nbsp;else&nbsp;it&nbsp;is&nbsp;an&nbsp;overlong.&nbsp;&nbsp;Prior&nbsp;to&nbsp;this&nbsp;commit,&nbsp;we&nbsp;could<br/> generate&nbsp;overlongs.&nbsp;&nbsp;This&nbsp;commit&nbsp;avoids&nbsp;that&nbsp;pitfall.<br/> <br/> It&nbsp;also&nbsp;moves&nbsp;the&nbsp;complex&nbsp;analysis&nbsp;away&nbsp;from&nbsp;the&nbsp;comments&nbsp;in&nbsp;the&nbsp;code,<br/> and&nbsp;to&nbsp;this&nbsp;commit&nbsp;message,&nbsp;adding&nbsp;even&nbsp;more&nbsp;analysis.<br/> <br/> There&nbsp;are&nbsp;four&nbsp;classes&nbsp;of&nbsp;code&nbsp;points&nbsp;that&nbsp;the&nbsp;caller&nbsp;can&nbsp;have&nbsp;signalled<br/> to&nbsp;this&nbsp;function&nbsp;that&nbsp;it&nbsp;is&nbsp;interested&nbsp;in.<br/> <br/> The&nbsp;noncharacter&nbsp;code&nbsp;point&nbsp;class&nbsp;always&nbsp;needs&nbsp;a&nbsp;full&nbsp;sequence&nbsp;to<br/> determine,&nbsp;and&nbsp;the&nbsp;conditionals&nbsp;prevent&nbsp;the&nbsp;code&nbsp;this&nbsp;analasys&nbsp;is&nbsp;about<br/> from&nbsp;being&nbsp;executed.<br/> <br/> Use&nbsp;of&nbsp;Perl&nbsp;extended-UTF-8&nbsp;is&nbsp;determinable&nbsp;from&nbsp;the&nbsp;first&nbsp;byte&nbsp;in&nbsp;the<br/> input&nbsp;sequence,&nbsp;and&nbsp;that&nbsp;has&nbsp;already&nbsp;been&nbsp;determined.<br/> <br/> Both&nbsp;of&nbsp;the&nbsp;other&nbsp;two&nbsp;sequences&nbsp;don&#39;t&nbsp;have&nbsp;to&nbsp;be&nbsp;fully&nbsp;filled&nbsp;out&nbsp;in<br/> order&nbsp;to&nbsp;determine&nbsp;if&nbsp;a&nbsp;partial&nbsp;sequence&nbsp;would&nbsp;lead&nbsp;to&nbsp;them&nbsp;or&nbsp;not.<br/> <br/> Consider&nbsp;first,&nbsp;the&nbsp;sequences&nbsp;that&nbsp;evaluate&nbsp;to&nbsp;an&nbsp;above-Unicode&nbsp;code<br/> point,&nbsp;charmingly&nbsp;named&nbsp;&quot;supers&quot;&nbsp;by&nbsp;Perl&#39;s&nbsp;poetic&nbsp;coders.<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ASCII&nbsp;platforms&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;EBCDIC&nbsp;I8<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;U+10FFFF:&nbsp;\xF4\x8F\xBF\xBF&nbsp;&nbsp;&nbsp;&nbsp;\xF9\xA1\xBF\xBF\xBF<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0x110000:&nbsp;\xF4\x90\x80\x80&nbsp;&nbsp;&nbsp;&nbsp;\xF9\xA2\xA0\xA0\xA0<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*<br/> (Continuation&nbsp;byte&nbsp;range):<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\x80&nbsp;to&nbsp;\xbf&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\xa0&nbsp;to&nbsp;\xbf<br/> <br/> On&nbsp;ASCII&nbsp;platforms,&nbsp;any&nbsp;start&nbsp;byte&nbsp;\xf3&nbsp;and&nbsp;below&nbsp;can&#39;t&nbsp;be&nbsp;for&nbsp;a&nbsp;super,<br/> and&nbsp;any&nbsp;non-overlong&nbsp;sequence&nbsp;\xf5&nbsp;and&nbsp;above&nbsp;has&nbsp;to&nbsp;be&nbsp;for&nbsp;a&nbsp;super.&nbsp;&nbsp;If<br/> the&nbsp;start&nbsp;byte&nbsp;is&nbsp;\xf4,&nbsp;we&nbsp;need&nbsp;a&nbsp;second&nbsp;byte&nbsp;to&nbsp;resolve&nbsp;the&nbsp;ambiguity.<br/> But&nbsp;it&nbsp;takes&nbsp;just&nbsp;the&nbsp;one,&nbsp;or&nbsp;possibly&nbsp;two&nbsp;bytes&nbsp;to&nbsp;make&nbsp;the<br/> determination.&nbsp;&nbsp;It&#39;s&nbsp;similar&nbsp;on&nbsp;EBCDIC,&nbsp;but&nbsp;with&nbsp;different&nbsp;values.<br/> <br/> And&nbsp;a&nbsp;similar&nbsp;situation&nbsp;exists&nbsp;for&nbsp;the&nbsp;surrogates.&nbsp;&nbsp;The&nbsp;range&nbsp;of<br/> non-overlong&nbsp;surrogates&nbsp;is:<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ASCII&nbsp;platforms&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;EBCDIC&nbsp;I8<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;\xed\xa0\x80&quot;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;\xf1\xb6\xa0\xa0&quot;<br/> to&nbsp;&nbsp;&nbsp;&quot;\xed\xbf\xbf&quot;.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;\xf1\xb7\xbf\xbf&quot;<br/> <br/> In&nbsp;both&nbsp;platforms,&nbsp;if&nbsp;we&nbsp;have&nbsp;the&nbsp;first&nbsp;two&nbsp;bytes,&nbsp;we&nbsp;can&nbsp;tell&nbsp;if&nbsp;it&nbsp;is<br/> a&nbsp;surrogate&nbsp;or&nbsp;not,&nbsp;as&nbsp;all&nbsp;legal&nbsp;continuations&nbsp;in&nbsp;the&nbsp;rest&nbsp;of&nbsp;the&nbsp;byte<br/> positions&nbsp;are&nbsp;for&nbsp;surrogates.&nbsp;&nbsp;If&nbsp;we&nbsp;have&nbsp;only&nbsp;one&nbsp;byte,&nbsp;we&nbsp;can&#39;t&nbsp;tell,<br/> so&nbsp;we&nbsp;have&nbsp;to&nbsp;assume&nbsp;it&nbsp;isn&#39;t&nbsp;a&nbsp;surrogate.<br/> <br/> Overlongs&nbsp;don&#39;t&nbsp;meaningfully&nbsp;change&nbsp;things.&nbsp;&nbsp;The&nbsp;shortest&nbsp;ASCII&nbsp;overlong<br/> for&nbsp;the&nbsp;first&nbsp;surrogate&nbsp;is&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;\xf0\x8d\xa0\x80&quot;<br/> and&nbsp;for&nbsp;the&nbsp;highest&nbsp;surrogate&nbsp;it&nbsp;is&nbsp;&quot;\xf0\x8d\xbf\xbf&quot;.<br/> <br/> Note&nbsp;that&nbsp;only&nbsp;the&nbsp;first&nbsp;byte&nbsp;has&nbsp;been&nbsp;changed,&nbsp;into&nbsp;two&nbsp;bytes.&nbsp;&nbsp;All&nbsp;but<br/> the&nbsp;first&nbsp;byte&nbsp;is&nbsp;the&nbsp;same&nbsp;for&nbsp;any&nbsp;overlong&nbsp;of&nbsp;any&nbsp;code&nbsp;point&nbsp;in&nbsp;either<br/> ASCII&nbsp;or&nbsp;EBCDIC.<br/> <br/> This&nbsp;means&nbsp;the&nbsp;algorithm&nbsp;for&nbsp;filling&nbsp;things&nbsp;out&nbsp;works&nbsp;for&nbsp;these&nbsp;two<br/> classes&nbsp;in&nbsp;all&nbsp;cases.&nbsp;&nbsp;Note&nbsp;also&nbsp;that&nbsp;the&nbsp;upper&nbsp;end&nbsp;of&nbsp;the&nbsp;range<br/> conveniently&nbsp;works&nbsp;out&nbsp;without&nbsp;any&nbsp;extra&nbsp;effort&nbsp;needed.&nbsp;&nbsp;The&nbsp;highest<br/> surrogate&nbsp;corresponds&nbsp;to&nbsp;the&nbsp;highest&nbsp;continuation&nbsp;bytes.&nbsp;&nbsp;And&nbsp;the<br/> highest&nbsp;super&nbsp;that&nbsp;fits&nbsp;in&nbsp;the&nbsp;platform&nbsp;will&nbsp;also&nbsp;use&nbsp;the&nbsp;highest<br/> continuation&nbsp;bytes.<br/> <br/> The&nbsp;start&nbsp;bytes&nbsp;that&nbsp;need&nbsp;to&nbsp;have&nbsp;the&nbsp;fix&nbsp;in&nbsp;this&nbsp;commit&nbsp;are&nbsp;the&nbsp;ones<br/> that&nbsp;could&nbsp;be&nbsp;the&nbsp;start&nbsp;of&nbsp;overlongs,&nbsp;minus&nbsp;the&nbsp;lower&nbsp;ones&nbsp;which&nbsp;can<br/> represent&nbsp;only&nbsp;code&nbsp;points&nbsp;smaller&nbsp;than&nbsp;any&nbsp;of&nbsp;the&nbsp;ones&nbsp;the&nbsp;caller&nbsp;can<br/> flag&nbsp;as&nbsp;being&nbsp;&quot;interesting&quot;&nbsp;(U+D800&nbsp;is&nbsp;that&nbsp;value),&nbsp;and&nbsp;minus&nbsp;0xFF.<br/> Hence&nbsp;0xE0&nbsp;can&nbsp;have&nbsp;overlongs,&nbsp;but&nbsp;it&nbsp;and&nbsp;its&nbsp;overlongs&nbsp;can&nbsp;only<br/> represent&nbsp;code&nbsp;points&nbsp;lower&nbsp;than&nbsp;0xD800.&nbsp;&nbsp;So&nbsp;we&nbsp;don&#39;t&nbsp;have&nbsp;to&nbsp;worry<br/> about&nbsp;it&nbsp;or&nbsp;any&nbsp;smaller&nbsp;start&nbsp;byte.<br/> <br/> But&nbsp;the&nbsp;reason&nbsp;0xFF&nbsp;doesn&#39;t&nbsp;have&nbsp;to&nbsp;be&nbsp;considered&nbsp;is&nbsp;more&nbsp;complex.<br/> It&nbsp;isn&#39;t&nbsp;the&nbsp;second&nbsp;byte&nbsp;in&nbsp;a&nbsp;sequence&nbsp;beginning&nbsp;with&nbsp;FF&nbsp;that&nbsp;needs&nbsp;to<br/> be&nbsp;higher&nbsp;than&nbsp;the&nbsp;minimum&nbsp;continuation,&nbsp;but&nbsp;one&nbsp;further&nbsp;in.&nbsp;&nbsp;This<br/> would&nbsp;make&nbsp;things&nbsp;harder&nbsp;except&nbsp;that&nbsp;any&nbsp;sequence&nbsp;beginning&nbsp;with&nbsp;0xFF&nbsp;is<br/> Perl-extended&nbsp;UTF-8,&nbsp;and&nbsp;has&nbsp;already&nbsp;been&nbsp;considered&nbsp;earlier&nbsp;in&nbsp;this<br/> function.&nbsp;&nbsp;This&nbsp;code&nbsp;is&nbsp;only&nbsp;executed&nbsp;when&nbsp;&#39;must_be_super&#39;&nbsp;is&nbsp;false.<br/> &#39;must_be_super&#39;&nbsp;is&nbsp;set&nbsp;true&nbsp;if&nbsp;the&nbsp;sequence&nbsp;overflows&nbsp;or&nbsp;there&nbsp;is&nbsp;no<br/> detectable&nbsp;overlong.&nbsp;&nbsp;By&nbsp;DeMorgan&#39;s&nbsp;laws,&nbsp;this&nbsp;means&nbsp;to&nbsp;get&nbsp;here,&nbsp;it<br/> doesn&#39;t&nbsp;overflow,&nbsp;and&nbsp;must&nbsp;be&nbsp;overlong.&nbsp;&nbsp;To&nbsp;know&nbsp;that&nbsp;it&nbsp;is&nbsp;overlong,&nbsp;we<br/> must&nbsp;have&nbsp;seen&nbsp;enough&nbsp;bytes&nbsp;to&nbsp;get&nbsp;past&nbsp;the&nbsp;point&nbsp;where&nbsp;we&nbsp;need&nbsp;a&nbsp;higher<br/> continuation&nbsp;byte&nbsp;to&nbsp;legally&nbsp;fill&nbsp;it&nbsp;out.&nbsp;&nbsp;So&nbsp;we&nbsp;can&nbsp;just&nbsp;fill&nbsp;the&nbsp;rest<br/> with&nbsp;the&nbsp;minimum&nbsp;continuation.<br/> <br/> (Note&nbsp;that&nbsp;the&nbsp;same&nbsp;reasoning&nbsp;would&nbsp;apply&nbsp;to&nbsp;0xFE&nbsp;on&nbsp;ASCII&nbsp;platforms.<br/> That&nbsp;is&nbsp;also&nbsp;used&nbsp;only&nbsp;by&nbsp;Perl-extended&nbsp;UTF-8,&nbsp;so&nbsp;would&nbsp;have&nbsp;been<br/> considered&nbsp;earlier,&nbsp;and&nbsp;to&nbsp;get&nbsp;here&nbsp;we&nbsp;know&nbsp;it&nbsp;has&nbsp;to&nbsp;be&nbsp;overlong,&nbsp;and<br/> so&nbsp;we&#39;ve&nbsp;already&nbsp;seen&nbsp;enough&nbsp;bytes&nbsp;to&nbsp;not&nbsp;need&nbsp;to&nbsp;handle&nbsp;it&nbsp;specially.<br/> But&nbsp;it&nbsp;fits&nbsp;into&nbsp;the&nbsp;same&nbsp;paradigm&nbsp;as&nbsp;the&nbsp;lower&nbsp;start&nbsp;bytes&nbsp;with&nbsp;just<br/> the&nbsp;second&nbsp;byte&nbsp;needing&nbsp;to&nbsp;be&nbsp;higher,&nbsp;and&nbsp;there&nbsp;is&nbsp;no&nbsp;extra&nbsp;code<br/> required&nbsp;to&nbsp;handle&nbsp;it&nbsp;besides&nbsp;including&nbsp;a&nbsp;case:&nbsp;for&nbsp;it&nbsp;in&nbsp;the&nbsp;switch().<br/> This&nbsp;works&nbsp;in&nbsp;both&nbsp;ASCII&nbsp;and&nbsp;EBCDIC.)<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/6507d4a56a59e7a3008fb4f2228a50013c3e404c"><span class="age">2 weeks ago</span>utf8_to_uv_msgs: Reverse order of finding overflow/extended UTF-8</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/6507d4a56a59e7a3008fb4f2228a50013c3e404c">commit</a> | <a href="/perl5.git/commitdiff/6507d4a56a59e7a3008fb4f2228a50013c3e404c">commitdiff</a> | <a href="/perl5.git/tree/6507d4a56a59e7a3008fb4f2228a50013c3e404c">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Karl+Williamson;st=author" title="Search for commits authored by Karl Williamson">Karl Williamson</a> [<span class="datetime">Sat, 8 Mar 2025 23:18:15 +0000</span> (16:18 -0700)]</span> <br/> </div> <div class="log_body"> utf8_to_uv_msgs:&nbsp;Reverse&nbsp;order&nbsp;of&nbsp;finding&nbsp;overflow/extended&nbsp;UTF-8<br/> <br/> This&nbsp;begins&nbsp;the&nbsp;process&nbsp;of&nbsp;fixing&nbsp;the&nbsp;current&nbsp;problematic&nbsp;behavior&nbsp;of<br/> handling&nbsp;UTF-8&nbsp;that&nbsp;is&nbsp;for&nbsp;code&nbsp;points&nbsp;above&nbsp;the&nbsp;Unicode&nbsp;maximum.<br/> <br/> The&nbsp;lowest&nbsp;of&nbsp;these&nbsp;are&nbsp;considered&nbsp;SUPERs,&nbsp;but&nbsp;if&nbsp;you&nbsp;go&nbsp;high&nbsp;enough,&nbsp;it<br/> takes&nbsp;Perl&#39;s&nbsp;extended&nbsp;UTF-8&nbsp;to&nbsp;represent&nbsp;them.&nbsp;&nbsp;Higher&nbsp;still,&nbsp;and&nbsp;the<br/> extended&nbsp;UTF-8&nbsp;can&nbsp;represent&nbsp;code&nbsp;points&nbsp;that&nbsp;don&#39;t&nbsp;fit&nbsp;in&nbsp;the&nbsp;current<br/> platform&#39;s&nbsp;word&nbsp;size.<br/> <br/> A&nbsp;complication&nbsp;is&nbsp;overlongs,&nbsp;where&nbsp;the&nbsp;representation&nbsp;for&nbsp;a&nbsp;seemingly<br/> large&nbsp;code&nbsp;point&nbsp;can&nbsp;reduce&nbsp;down&nbsp;to&nbsp;something&nbsp;much&nbsp;smaller;&nbsp;even&nbsp;0.<br/> Such&nbsp;sequences&nbsp;are&nbsp;considered&nbsp;invalid&nbsp;by&nbsp;fiat&nbsp;from&nbsp;Unicode&nbsp;due&nbsp;to<br/> successful&nbsp;hacker&nbsp;attacks&nbsp;using&nbsp;them.&nbsp;&nbsp;But&nbsp;Perl&nbsp;has&nbsp;traditionally<br/> allowed&nbsp;XS&nbsp;code&nbsp;to&nbsp;allow&nbsp;them,&nbsp;with&nbsp;flags&nbsp;passed&nbsp;to&nbsp;the&nbsp;translation<br/> functions.&nbsp;&nbsp;So&nbsp;it&nbsp;is&nbsp;important&nbsp;to&nbsp;get&nbsp;it&nbsp;right.<br/> <br/> A&nbsp;sequence&nbsp;that&nbsp;overflows&nbsp;by&nbsp;necessity&nbsp;is&nbsp;using&nbsp;Perl&#39;s&nbsp;extended&nbsp;UTF-8,<br/> as&nbsp;that&nbsp;kicks&nbsp;in&nbsp;below&nbsp;a&nbsp;32&nbsp;bit&nbsp;word.&nbsp;&nbsp;This&nbsp;commit&nbsp;reverses&nbsp;the&nbsp;prior<br/> order&nbsp;of&nbsp;testing&nbsp;for&nbsp;overflow&nbsp;and&nbsp;extended&nbsp;UTF-8.&nbsp;&nbsp;Steps&nbsp;can&nbsp;be&nbsp;saved<br/> because&nbsp;we&nbsp;now&nbsp;test&nbsp;for&nbsp;Perl-extended&nbsp;first,&nbsp;which&nbsp;is&nbsp;a&nbsp;lot&nbsp;more&nbsp;likely<br/> to&nbsp;happen&nbsp;than&nbsp;overflow.<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/3786151d3e0ef00885a777e77cb7b156ad86b463"><span class="age">2 weeks ago</span>Skip testing utf8 translating for the next few commits</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/3786151d3e0ef00885a777e77cb7b156ad86b463">commit</a> | <a href="/perl5.git/commitdiff/3786151d3e0ef00885a777e77cb7b156ad86b463">commitdiff</a> | <a href="/perl5.git/tree/3786151d3e0ef00885a777e77cb7b156ad86b463">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Karl+Williamson;st=author" title="Search for commits authored by Karl Williamson">Karl Williamson</a> [<span class="datetime">Sun, 9 Mar 2025 19:28:52 +0000</span> (13:28 -0600)]</span> <br/> </div> <div class="log_body"> Skip&nbsp;testing&nbsp;utf8&nbsp;translating&nbsp;for&nbsp;the&nbsp;next&nbsp;few&nbsp;commits<br/> <br/> The&nbsp;next&nbsp;few&nbsp;commits&nbsp;will&nbsp;fail&nbsp;these&nbsp;tests.&nbsp;&nbsp;I&nbsp;could&nbsp;squash&nbsp;them&nbsp;all<br/> together,&nbsp;but&nbsp;that&nbsp;would&nbsp;hide&nbsp;the&nbsp;step&nbsp;by&nbsp;step&nbsp;change&nbsp;progess.<br/> <br/> This&nbsp;should&nbsp;allow&nbsp;future&nbsp;bisecting&nbsp;to&nbsp;not&nbsp;fail&nbsp;in&nbsp;this&nbsp;commit&nbsp;window.<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/e0627d5bc831dc78112940aee98d27e2a729f82e"><span class="age">2 weeks ago</span>utf8_to_uv_msgs: De-duplicate common code</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/e0627d5bc831dc78112940aee98d27e2a729f82e">commit</a> | <a href="/perl5.git/commitdiff/e0627d5bc831dc78112940aee98d27e2a729f82e">commitdiff</a> | <a href="/perl5.git/tree/e0627d5bc831dc78112940aee98d27e2a729f82e">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Karl+Williamson;st=author" title="Search for commits authored by Karl Williamson">Karl Williamson</a> [<span class="datetime">Sat, 8 Mar 2025 22:35:28 +0000</span> (15:35 -0700)]</span> <br/> </div> <div class="log_body"> utf8_to_uv_msgs:&nbsp;De-duplicate&nbsp;common&nbsp;code<br/> <br/> This&nbsp;removes&nbsp;the&nbsp;duplicate&nbsp;code&nbsp;from&nbsp;many&nbsp;of&nbsp;the&nbsp;case&nbsp;statements&nbsp;in&nbsp;a<br/> switch&nbsp;to&nbsp;be&nbsp;common&nbsp;before&nbsp;the&nbsp;switch,&nbsp;with&nbsp;a&nbsp;single&nbsp;conditional<br/> controlling&nbsp;them<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/c4df0807ee70540989f027889680087ddc64fd41"><span class="age">2 weeks ago</span>utf8_to_uv_msgs: Move conditional to earlier to avoid work</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/c4df0807ee70540989f027889680087ddc64fd41">commit</a> | <a href="/perl5.git/commitdiff/c4df0807ee70540989f027889680087ddc64fd41">commitdiff</a> | <a href="/perl5.git/tree/c4df0807ee70540989f027889680087ddc64fd41">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Karl+Williamson;st=author" title="Search for commits authored by Karl Williamson">Karl Williamson</a> [<span class="datetime">Fri, 17 Jan 2025 21:27:25 +0000</span> (14:27 -0700)]</span> <br/> </div> <div class="log_body"> utf8_to_uv_msgs:&nbsp;Move&nbsp;conditional&nbsp;to&nbsp;earlier&nbsp;to&nbsp;avoid&nbsp;work<br/> <br/> By&nbsp;checking&nbsp;before&nbsp;we&nbsp;go&nbsp;to&nbsp;the&nbsp;trouble&nbsp;to&nbsp;do&nbsp;something,&nbsp;rather&nbsp;than&nbsp;in<br/> the&nbsp;middle&nbsp;of&nbsp;it,&nbsp;we&nbsp;can&nbsp;save&nbsp;some&nbsp;work.<br/> <br/> The&nbsp;new&nbsp;test&nbsp;looks&nbsp;at&nbsp;the&nbsp;source&nbsp;UTF-8;&nbsp;the&nbsp;previous&nbsp;one&nbsp;looked&nbsp;at&nbsp;the<br/> code&nbsp;point&nbsp;calculated&nbsp;from&nbsp;it<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/71c5788cff7cf77f6418cd2f8da423a17c0d54ec"><span class="age">2 weeks ago</span>utf8_to_uv_msgs: Swap order of switch() cases</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/71c5788cff7cf77f6418cd2f8da423a17c0d54ec">commit</a> | <a href="/perl5.git/commitdiff/71c5788cff7cf77f6418cd2f8da423a17c0d54ec">commitdiff</a> | <a href="/perl5.git/tree/71c5788cff7cf77f6418cd2f8da423a17c0d54ec">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Karl+Williamson;st=author" title="Search for commits authored by Karl Williamson">Karl Williamson</a> [<span class="datetime">Fri, 17 Jan 2025 13:29:35 +0000</span> (06:29 -0700)]</span> <br/> </div> <div class="log_body"> utf8_to_uv_msgs:&nbsp;Swap&nbsp;order&nbsp;of&nbsp;switch()&nbsp;cases<br/> <br/> The&nbsp;overlong&nbsp;cases&nbsp;more&nbsp;logically&nbsp;belong&nbsp;with&nbsp;the&nbsp;other&nbsp;conditions&nbsp;that<br/> are&nbsp;rejected&nbsp;by&nbsp;default.<br/> <br/> Future&nbsp;commits&nbsp;will&nbsp;simplify&nbsp;this&nbsp;to&nbsp;look&nbsp;much&nbsp;more&nbsp;like&nbsp;those&nbsp;other<br/> conditions.<br/> <br/> </div> <div class="header"> <a class="title" href="/perl5.git/commit/7c94d7394063bf8af825fa5e6e86f66d73530aff"><span class="age">2 weeks ago</span>utf8_to_uv_msgs: Revise assert</a> </div> <div class="title_text"> <div class="log_link"> <a href="/perl5.git/commit/7c94d7394063bf8af825fa5e6e86f66d73530aff">commit</a> | <a href="/perl5.git/commitdiff/7c94d7394063bf8af825fa5e6e86f66d73530aff">commitdiff</a> | <a href="/perl5.git/tree/7c94d7394063bf8af825fa5e6e86f66d73530aff">tree</a><br/> </div> <span class="author_date"><a class="list" href="/perl5.git/search?s=Karl+Williamson;st=author" title="Search for commits authored by Karl Williamson">Karl Williamson</a> [<span class="datetime">Sat, 8 Mar 2025 13:16:04 +0000</span> (06:16 -0700)]</span> <br/> </div> <div class="log_body"> utf8_to_uv_msgs:&nbsp;Revise&nbsp;assert<br/> <br/> More&nbsp;extensive&nbsp;testing&nbsp;revealed&nbsp;that&nbsp;more&nbsp;conditions&nbsp;than&nbsp;this&nbsp;assert<br/> previously&nbsp;contained&nbsp;are&nbsp;legitimate.&nbsp;&nbsp;This&nbsp;requireb&nbsp;defining&nbsp;the&nbsp;name<br/> for&nbsp;a&nbsp;flag<br/> <br/> </div> <div class="page_nav"> <a accesskey="n" href="/perl5.git/log?pg=1" title="Alt-n">next</a> </div> <div class="page_footer"> <div class="page_footer_text">Unnamed repository; edit this file &#39;description&#39; to name the repository.</div> <a class="rss_logo" href="/perl5.git/rss" title="log RSS feed">RSS</a> <a class="rss_logo" href="/perl5.git/atom" title="log Atom feed">Atom</a> </div> <script type="text/javascript" src="static/gitweb.js"></script> <script type="text/javascript"> window.onload = function () { var tz_cookie = { name: 'gitweb_tz', expires: 14, path: '/' }; onloadTZSetup('local', tz_cookie, 'datetime'); }; </script> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10