Conversation
Two messages formatted the conversion with %x over its bytes, so a user who wrote %o was told "The conversion 6F in the format is unsupported" and one who wrote %0s was told about "the 73 conversion". The byte is a single ASCII one by the time either message is raised, since the digit scan already read it back as text, so `string conv` names what the user wrote. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01NxFBB1HWHS1xgdM6bT9Qvw
|
yegor256
marked this pull request as ready for review
August 31, 2026 08:36
|
@yegor256 Thanks for the contribution! You've earned +4 points for this: +16 as a basis; -8 for the lack of code review; -4 for too few (8) hits-of-code. Please, keep them coming. Your running score is +1694; don't forget to check your Zerocracy account too). |
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.



Closes #7976.
Two messages in
string/printf.eoformatted the conversion with%xover its bytes, so the user was shown the hexadecimal value of the byte instead of the letter they wrote:"%o".printf (* "x")The conversion 6F in the format is unsupported, …The conversion o in the format is unsupported, …"%0s".printf (* "x")The zero flag can't be applied to the 73 conversion, …The zero flag can't be applied to the s conversion, …string convis safe at both points:digits-endwalks the specifier throughcode, which isas-ascii. string (byte i), so a byte that does not decode on its own has already terminated the run before either message can be raised.The two
--> stops-on-…tests keep covering the terminations. The texts themselves cannot be pinned from EO —printfhas no fallback attribute andrecoveredhands back its alternative, not the reason — so nothing in the file can read a message back.TestEOstringis green (418 tests) on a localmvn clean test -pl :eo-runtime -Deo.deadline=3600.Touches the same
ifchain as #7985 (PR #8014), so whichever lands second will want a rebase.Generated by Claude Code