Skip to content

istream: restrict integer extraction to representable values (#152) - #171

Open
mahadkhan811 wants to merge 1 commit into
mainfrom
mahad/fix-istream-overflow
Open

mahadkhan811 wants to merge 1 commit into
mainfrom
mahad/fix-istream-overflow

Conversation

@mahadkhan811

Copy link
Copy Markdown
Contributor

The integer-extraction spec currently promises to store an unbounded parsed Z through intR. Require the parsed value to lie within the target's signed int range in the input-trace precondition; INT_MIN and INT_MAX remain accepted.

This addresses #152 by excluding overflow from the contract. It does not implement saturation or failbit: supporting those requires extending the stream-state model. The existing delimiter re-buffering TODO remains.

Validation: compiled the modified spec and Rocq boundary/exclusion checks with the audit container's installed dependencies (Rocq 9.2); seven libstdc++ cases passed, including both bounds, overflow in both directions, and subsequent reads after failure. This is not a full repository build or an implementation proof.

@skylabs-ai-ci

skylabs-ai-ci Bot commented Sep 7, 2026

Copy link
Copy Markdown

CI summary (Details)

Active Repos

Repo Job Branch Job Commit Branch Tip Base branch Base commit PR
fmdeps/brick-libcpp/ mahad/fix-istream-overflow 8c5ab99 44596ad main 74d624d #171

Passive Repos

Repo Job Branch Job Commit
./ main db1581e
fmdeps/BRiCk/ main c06f8e4
fmdeps/auto/ main eb03a71
fmdeps/auto-docs/ main 6490c5f
bluerock/NOVA/ skylabs-proof d8485f6
bluerock/bhv/ skylabs-main 5340cd2
fmdeps/ci/ main ff64512
vendored/elpi/ skylabs-master c0b9653
vendored/flocq/ skylabs-master cf9cc84
vendored/rocq/ skylabs-master bef7df5
fmdeps/rocq-agent-toolkit/ main 227bb83
vendored/rocq-elpi/ skylabs-master 7dee592
vendored/rocq-equations/ skylabs-main 9cf8471
vendored/rocq-iris/ skylabs-master a7af9f7
vendored/rocq-lsp/ skylabs-main 64ef78a
vendored/rocq-stdlib/ skylabs-master 00897b3
vendored/rocq-stdpp/ skylabs-master 0c5e505
fmdeps/skylabs-fm/ main 6413765
vendored/vsrocq/ skylabs-main ee79e7a

No Changes in Warnings or Errors

Before New Fixed After
Errors 0 0 0 0
Warnings 101 0 0 101
Code quality details

Performance

Relative Master MR Change Filename
-0.00% 197865.7 197857.3 -8.3 total
-0.00% 53108.6 53108.6 -0.0 ├ translation units
-0.01% 144757.1 144748.8 -8.3 └ proofs and tests
Full Results
Relative Master MR Change Filename
-6.35% 23.6 22.1 -1.5 fmdeps/brick-libcpp/rocq-brick-libstdcpp/test/g4g/N4_sum.v
-4.09% 30.6 29.3 -1.3 fmdeps/brick-libcpp/rocq-brick-libstdcpp/test/g4g/N4_sum_a.v
-2.52% 46.4 45.2 -1.2 fmdeps/brick-libcpp/rocq-brick-libstdcpp/test/g4g/N12_area.v
-2.04% 57.4 56.2 -1.2 fmdeps/brick-libcpp/rocq-brick-libstdcpp/test/g4g/N5_swap.v
-1.98% 59.1 57.9 -1.2 fmdeps/brick-libcpp/rocq-brick-libstdcpp/test/g4g/N5_swap_a.v
-1.88% 62.1 61.0 -1.2 fmdeps/brick-libcpp/rocq-brick-libstdcpp/test/g4g/N6_print_sizeof.v
-0.00% 197865.7 197857.3 -8.3 total
-0.00% 53108.6 53108.6 -0.0 ├ translation units
-0.01% 144757.1 144748.8 -8.3 └ proofs and tests

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant