Repository navigation
Conversation
espetro
force-pushed
the
work/difftab586
branch
from
October 27, 2026 07:47
be75ba9 to
c6bf041
Compare
CPython's unicodedata.mirrored() returns an int (0/1), not a bool. The C side (ps_unicode_mirrored) already returns int32_t; only the closed surface table tagged the return kind as bool, which made the call-table sweep diverge from the oracle on this row. Closes #712
… in stdmore table The previous commit on this branch dropped the mode argument from os.chmod and the prefix argument from textwrap.indent while transcribing the table. Restore both so the closed surface matches master plus the mirrored return-kind fix.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
work/difftab586(PR test(stdlib): table-driven call-table differential tests against CPython 3.14 #715's head), because the 153-probe call-table sweep only exists there. Stacked: fix(unicodedata): mirrored returns bool where CPython 3.14 returns int #712 → fix(platform): platform.platform output differs from CPython 3.14 #713 → fix(posixpath): realpath raises on a missing target where CPython returns a path #714.CPython's
unicodedata.mirrored()returns anint(0/1), never abool. The runtime side (ps_unicode_mirroredinps_unicode.c) already returnsint32_t; only the closed-surface table insrc/pyscriptc/stdmore.pytagged the return kind as{"kind": "bool"}. That made the differential sweep'stextbatch diverge from the CPython 3.14 oracle on this row.Changes
src/pyscriptc/stdmore.py:"mirrored": _sig([_S], _B, ...)→_sig([_S], _I, ...).tests/test_stdlib_call_table.py: dropdivergence=MIRRORED_DIVERGENCEfrom the mirrored probe and delete the now-unusedMIRRORED_DIVERGENCEconstant. Thetextbatch now passes on its own; the fix(platform): platform.platform output differs from CPython 3.14 #713 (platform.platform) and fix(posixpath): realpath raises on a missing target where CPython returns a path #714 (os.path.realpath) references remain until those PRs land.Verification
unicodedata.mirrored('('); with the return kind nowint, the native binary and the CPython oracle both emit1.int32_tC signature.Stacking note
Depends on #715 (
work/difftab586) for the sweep file. #713 and #714 branch off this PR's head.