Newsgroups: perl.perl5.changes Path: csiph.com!weretis.net!feeder8.news.weretis.net!fu-berlin.de!bofh.it!nntp.perl.org Xref: csiph.com perl.perl5.changes:34410 Return-Path: Mailing-List: contact perl5-changes-help@perl.org; run by ezmlm Delivered-To: mailing list perl5-changes@perl.org DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=perl.org; h=date :from:to:message-id:subject:mime-version:content-type :content-transfer-encoding:list-unsubscribe:reply-to; s=dr1; bh= 4um/moTQQhnER5KaaKh26b29XNVZR6E8BIV7eSMGsxI=; b=L3loHabfgmh4vsCc 0+QVMHFuBj12hUOAIv6fe9FopXkUYyRSV7v9Pgr1htreEJ5k8VADYzQFmw6m3CFm L3FBQwdXL50nJp8ZYJAaMeVCA8tf1EAhoYUEDZ1bhJWC6dQh0EY1LPH45wRQ9efF NRqg/Y/JQkZugg/eDYKKwhZAUGXbDzBvAxhnyDTgMHvDE9EfUW7gnk6wF5P3DQOp O/R5FKetd9VhHkqF7Y6YkthUVWn1XPXZuRRTI2RrWhPtk6RCmwns3NMa+U6U7Vy3 tlkqEJefoL/pyuFwsakqWhPPcoXsSOOEdRdnGxOkDb7iZyGY2dhrbUvtHyQFOX1h DU766w== Received: (qmail 19924 invoked from network); 26 Feb 2026 18:12:13 -0000 Received: from xx1.develooper.com (147.75.38.233) by x6.develooper.com with SMTP; 26 Feb 2026 18:12:13 -0000 Received: from inbound-egress-8.mailchannels.net (inbound-egress-8.mailchannels.net [23.83.223.254]) by xx1.develooper.com (Postfix) with ESMTP id BA9C97C1BA for ; Thu, 26 Feb 2026 10:12:12 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; d=mailchannels.net; s=arc-2022; cv=none; t=1772129531; b=hoXp/d086e/DY3pfVoKW6Dxu6fCvINwaYGqEUe1PLe0D7r1qlT5Q1TceVB5yhESWwCrF60 9t1bfYaVM7xf2zT16Mxzif4h/OvTPb8EZDqUiaD9oQfn7Ac+7EEqpyplb+xVot+oPgZjjc 79hUBTtabfiGfqzqetP/q+iqi3kECLlaRIy8D1RsHox7KPK+RA5wRrThvoLlRGS4x5lavz 5H/sdV5OWGU3ZS+kmrnUcgk0PD3/J4BBX1WXtXswAg5nhdweXesCRoV2a6P6QxSLoQECjG d1OET8UUo7HUyuMqdaZ/KF1+w42xqnu4HFUttHQt1A0kfDrY+6aF9ZqjFJrU9g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=mailchannels.net; s=arc-2022; t=1772129531; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding:list-unsubscribe: dkim-signature; bh=4um/moTQQhnER5KaaKh26b29XNVZR6E8BIV7eSMGsxI=; b=3imZWoYH7T6WYsX8F9akVminSMBfsAvkTwzs8vK2YKC5svgzk7PAVsNDizyAsIsgSNP2va EV3d7UPCmxFo15xORH/D6+HIvr9QZuLPGiR5OvgeYqw/0fNbnxggrvzkP5wFSjOLqJHP06 RPnfT4t7MEe87mI0sqz50xp2ndyc3KYEn6PihVfOCQHMd3jxiaDo8jQeXXrQzQ0TiVELpd Ai8ywAXbTWAfRJflVvUlUBovK7ShPT4H/nWex/O7i1f+2LJZ0W03ihEisuWdTacOQL4306 /FllhJKV4popEcZEILT8vbg4h3DdlS2EyEVaZOaZiL2Ut6ZYL1YyLoo5zo5u2A== ARC-Authentication-Results: i=1; inbound-rspamd-5dd9f7d59-ks47g; none X-Message-ID: 3ibilZYypKe6CaGmodUz5QD8 Received: from out-20.smtp.github.com (out-20.smtp.github.com [192.30.252.203]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384) by 100.103.84.195 (trex/7.1.3); Thu, 26 Feb 2026 18:12:11 +0000 Authentication-Results: inbound.mailchannels.net; spf=pass smtp.mailfrom=noreply@github.com; dkim=pass header.d=github.com; dmarc=pass (policy=reject; pct=100; status=pass); arc=none Received-SPF: pass (dmarc-service-79fbc8656b-bjtjb: domain of github.com designates 192.30.252.203 as permitted sender) client-ip=192.30.252.203; envelope-from=noreply@github.com; helo=out-20.smtp.github.com; Received: from github.com (hubbernetes-node-ac6b7f7.va3-iad.github.net [10.51.90.37]) by smtp.github.com (Postfix) with ESMTPA id 5888B3C1137 for ; Thu, 26 Feb 2026 10:12:10 -0800 (PST) Date: Thu, 26 Feb 2026 10:12:10 -0800 To: perl5-changes@perl.org Message-ID: Subject: [Perl/perl5] 81937b: Add internal only macros isEVEN, isODD Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-GitHub-Recipient-Address: perl5-changes@perl.org X-Auto-Response-Suppress: All Original-From: Karl Williamson Reply-To: Karl Williamson , Approved: news@nntp.perl.org From: perl5-changes@perl.org (Karl Williamson via perl5-changes) Branch: refs/heads/blead Home: https://github.com/Perl/perl5 Commit: 81937b704070de956d014e40fc10f651420118fa https://github.com/Perl/perl5/commit/81937b704070de956d014e40fc10f651420118fa Author: Karl Williamson Date: 2026-02-26 (Thu, 26 Feb 2026) Changed paths: M handy.h Log Message: ----------- Add internal only macros isEVEN, isODD It is a bit clearer to use these Commit: 692ba8034bbfb48c7a7d1fab236db4b8cd4fbcf0 https://github.com/Perl/perl5/commit/692ba8034bbfb48c7a7d1fab236db4b8cd4fbcf0 Author: Karl Williamson Date: 2026-02-26 (Thu, 26 Feb 2026) Changed paths: M numeric.c Log Message: ----------- numeric.c: Clarify comment Commit: 21930453cd303e1e32b683a715885c6d73483b4e https://github.com/Perl/perl5/commit/21930453cd303e1e32b683a715885c6d73483b4e Author: Karl Williamson Date: 2026-02-26 (Thu, 26 Feb 2026) Changed paths: M numeric.c Log Message: ----------- Convert output_nonportable() to use a switch() This makes it cleaner; at the same time, add a commented-out case for base 10, in case that is ever wanted. Commit: d6906d82154ccd998c8c6418746cd7216f14fdb5 https://github.com/Perl/perl5/commit/d6906d82154ccd998c8c6418746cd7216f14fdb5 Author: Karl Williamson Date: 2026-02-26 (Thu, 26 Feb 2026) Changed paths: M embed.fnc M embed.h M inline.h M numeric.c M proto.h Log Message: ----------- Add grok_bin_hex() grok_bin() and grok_hex() differ from grok_oct() in that they optionally accept a leading 0x or 0b, based on a flag. Then they all share common code. This commit splits out the check for the leading 0[bx] into a separate function. This speeds up the function common to all, since it doesn't have to check for this possibility. It slows these two down, as there is an extra function layer. The reason to do this is that future commits will make the common function called in more places where speed matters. Commit: 7d9c93315930ae00dc225d0f1c983aa6c3eaa837 https://github.com/Perl/perl5/commit/7d9c93315930ae00dc225d0f1c983aa6c3eaa837 Author: Karl Williamson Date: 2026-02-26 (Thu, 26 Feb 2026) Changed paths: M numeric.c Log Message: ----------- grok_bin_oct_hex: Macroize common expression The original impetus to do this has gone, but I'm leaving it in because I can foresee it being useful. Commit: 7adc4faeddb0df99dd0ce02c9e62bbfbc8377ae0 https://github.com/Perl/perl5/commit/7adc4faeddb0df99dd0ce02c9e62bbfbc8377ae0 Author: Karl Williamson Date: 2026-02-26 (Thu, 26 Feb 2026) Changed paths: M numeric.c Log Message: ----------- grok_oct_bin_hex: Change OR to addition Currently an OR is all that is needed as a shift is used to make space for the next digit. But a future commit will change that so that we will need to add the new digit, not just OR it Commit: 42bcc1b1bf2d883943b025f0cb467cb23f0f9f54 https://github.com/Perl/perl5/commit/42bcc1b1bf2d883943b025f0cb467cb23f0f9f54 Author: Karl Williamson Date: 2026-02-26 (Thu, 26 Feb 2026) Changed paths: M inline.h M numeric.c Log Message: ----------- grok_bin_oct_hex: Add ability to discard, not overflow This will be used in a future commit Commit: 1afd1c3f629e7ce64672ead8c63ce4a6705db0a2 https://github.com/Perl/perl5/commit/1afd1c3f629e7ce64672ead8c63ce4a6705db0a2 Author: Karl Williamson Date: 2026-02-26 (Thu, 26 Feb 2026) Changed paths: M numeric.c Log Message: ----------- grok_bin_oct_hex: Change 'if's to not use a double negative For clarity Commit: 4f4e8afd5cb5294db85bd6590c248b878fefcd40 https://github.com/Perl/perl5/commit/4f4e8afd5cb5294db85bd6590c248b878fefcd40 Author: Karl Williamson Date: 2026-02-26 (Thu, 26 Feb 2026) Changed paths: M numeric.c Log Message: ----------- grok_bin_oct_hex: Convert chained ternaries to a switch() This is for clarity and adds an error check. Commit: e72252f04fe7ba35f8cf0f006d1d2fed1672e140 https://github.com/Perl/perl5/commit/e72252f04fe7ba35f8cf0f006d1d2fed1672e140 Author: Karl Williamson Date: 2026-02-26 (Thu, 26 Feb 2026) Changed paths: M numeric.c Log Message: ----------- grok_bin_oct_hex: Convert some code to a switch() This is for clarity, adds an error check, and collapses two calls to warner(). Commit: 7d7cde15e484f5cc22fb277bd9e38944862807f8 https://github.com/Perl/perl5/commit/7d7cde15e484f5cc22fb277bd9e38944862807f8 Author: Karl Williamson Date: 2026-02-26 (Thu, 26 Feb 2026) Changed paths: M embed.fnc M inline.h M numeric.c M proto.h Log Message: ----------- grok_bin_oct_hex: Also accept base 10. This commit unifies the parsing of strings of integers of all four common numeric bases. The next commit will take advantage of this, resulting in ripping out 80 lines of duplicated logic. There are other opportunities for removing code as well. Integrating these has resulted in some compromises. These could be eliminated if we had a regen program that would generate a separate function tailored for each base. That could happen later, after things settle down. Comments will be added in a future commit documenting the tradeoffs. Commit: 28c9daee6fe36a04814f303111c25e1ec9d6cd6e https://github.com/Perl/perl5/commit/28c9daee6fe36a04814f303111c25e1ec9d6cd6e Author: Karl Williamson Date: 2026-02-26 (Thu, 26 Feb 2026) Changed paths: M numeric.c Log Message: ----------- grok_number: Convert to use grok_bin_oct_hex The major part of this function can now be replaced by a call to the other function. This saves 80 lines of duplicated logic Commit: 6348f16bfd622f864b9907305bcff8003fcad6af https://github.com/Perl/perl5/commit/6348f16bfd622f864b9907305bcff8003fcad6af Author: Karl Williamson Date: 2026-02-26 (Thu, 26 Feb 2026) Changed paths: M embed.fnc M embed.h M inline.h M numeric.c M proto.h Log Message: ----------- Rename grok_bin_oct_hex(), and document in perlintern It now also accepts decimal, so that name no longer is appropriate. grok_uint_by_base() is what I chose. Commit: ff4e1580450c72c870493797400efa7b17ba9121 https://github.com/Perl/perl5/commit/ff4e1580450c72c870493797400efa7b17ba9121 Author: Karl Williamson Date: 2026-02-26 (Thu, 26 Feb 2026) Changed paths: M numeric.c Log Message: ----------- grok_uint_by_base: Fix up comments The name changed, but the comments didn't. And capitalize a word Compare: https://github.com/Perl/perl5/compare/8326d43f0d50...ff4e1580450c To unsubscribe from these emails, change your notification settings at https://github.com/Perl/perl5/settings/notifications