• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

stillwater-sc / universal / 26339545423
84%
master: 84%

Build:
Build:
LAST BUILD BRANCH: main
DEFAULT BRANCH: master
Ran 23 May 2026 06:21PM UTC
Jobs 1
Files 656
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

23 May 2026 05:52PM UTC coverage: 84.301% (+0.02%) from 84.277%
26339545423

push

github

web-flow
feat(ereal): expand addition.cpp corner-case coverage across LEVEL 1-4 (#958)

* feat(ereal): expand addition.cpp corner-case coverage across LEVEL 1-4

Builds on the structural template from PR #943. Adds the corner cases
listed as out-of-scope in that PR's description, organised by the
standard REGRESSION_LEVEL_n progression.

LEVEL 1 (foundational, builds on PR #943's 4 tests)
- Inverse identity: a + (-a) collapses to a single zero limb.

LEVEL 2 (hostile arithmetic)
- Round-to-even tie at 2^53 + 1: verify expansion preserves both limbs.
- Massive exponent gap (1e+300 + 1e-300): expansion has exactly two
  limbs, the tiny term is not dropped.
- Complete overlap (A + A for multi-limb A): the carry must ripple;
  (A+A) - A == A.

LEVEL 3 (subnormal)
- Subnormal addend (2^-1050): result remains finite and close to 1.0.
- DBL_MIN-scale residual: smallest normal addend survives the
  expansion merge.

LEVEL 4 (IEEE 754 special values)
- NaN + finite == NaN.
- -Inf + +Inf == NaN.
- +0 + -0 == +0.
- +Inf + finite == +Inf  -- KNOWN FAILURE, gated behind issue #957.

Library bug surfaced
- The +Inf + finite case revealed that linear_expansion_sum produces
  a NaN residual when one operand is +/-Inf (two_sum does Inf - Inf
  inside the EFT, which is NaN). Filed as #957 with a suggested fix
  direction. The test code is retained but the assertion is gated
  via #if 0 so this PR can merge with green CI; when #957 lands, the
  gate flips and the assertion fires.

Validation
- gcc 13.3 debug + release: PASS all 4 LEVELs.
- clang 18.1 debug + release: PASS all 4 LEVELs.
- Full ereal regression (38 tests) on gcc debug: PASS.

Resolves #956

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

* refactor(ereal): all hand-curated tests at LEVEL 1; add fuzzer at 2-4

Two corrections to the structure I shipped in the first revision:

1. REGRESSION_LEVEL semantics: the levels are an INTENSITY progression
   (more iterations, wider value ranges) per the... (continued)

47126 of 55902 relevant lines covered (84.3%)

5186492.48 hits per line

Jobs
ID Job ID Ran Files Coverage
1 26339545423.1 23 May 2026 06:21PM UTC 656
84.3
GitHub Action Run
Source Files on build 26339545423
  • Tree
  • List 656
  • Changed 4
  • Source Changed 0
  • Coverage Changed 4
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #26339545423
  • 79361c30 on github
  • Prev Build on main (#26338255293)
  • Next Build on main (#26340179255)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc