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

stillwater-sc / universal / 22332900479
85%
master: 84%

Build:
Build:
LAST BUILD BRANCH: fix/ereal_ostream
DEFAULT BRANCH: master
Ran 24 Feb 2026 02:06AM UTC
Jobs 1
Files 551
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

24 Feb 2026 01:39AM UTC coverage: 84.714% (-0.06%) from 84.777%
22332900479

push

github

web-flow
V3.99: supporting cross-platform BlockType == uint64_t (#511)

* Incrementing SEMVER to v3.99

* Fix blockbinary operator[] vs test() misuse in posit components

blockbinary::operator[] is a block/limb index accessor, not a bit
index accessor. Four locations used it with bit indices, causing
stack-buffer-overflow for posit configurations where fbits > nrBlocks
(e.g., posit<16,1,uint8_t> with fbits=12 and only 2 blocks).

Fixed positFraction::operator<<, get_fixed_point(), denormalize(),
and posit reciprocal sign extraction to use _block.test(bitIndex).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* Add comprehensive documentation for all number systems

Why/what/how markdown guides for each of the 29 number systems
with regression tests, covering integer, fixed-point, rational,
configurable floats, posit family, logarithmic, multi-component
extended precision, block-scaled AI formats, interval arithmetic,
and compressed floating-point. Includes README.md index with
category tables and selection guide.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* adding details about uint32_t for limb carry arithmetic

* adding uint64_t limb support

* fix headers in SORN tests

* Fix nibble() UB in all block types for uint64_t limbs

0x0Fu is a 32-bit unsigned int, so shifting it by nibbleIndexInWord*4
when nibbleIndexInWord >= 8 (i.e., shift >= 32) is undefined behavior.
On MSVC this caused corrupt to_hex() output and cascading test failures
in bb_uint64_limbs. Fix by casting to bt before shifting, ensuring the
shift operates on the block type width.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* Fix MSVC intrinsic output via reference-derived pointers in carry.hpp

_umul128, _addcarry_u64, and _subborrow_u64 write results through
pointer parameters. When these pointers were derived from reference
parameters via reinterpret_cast, the MSVC optimizer could lose the
writes after inlining, causing mul128 to always return hi=0. Thi... (continued)

278 of 358 new or added lines in 8 files covered. (77.65%)

37220 of 43936 relevant lines covered (84.71%)

7153265.23 hits per line

New Missed Lines in Diff

Lines Coverage ∆ File
2
97.67
-0.28% include/sw/universal/internal/blockbinary/blockbinary.hpp
2
90.96
0.03% include/sw/universal/number/integer/integer_impl.hpp
76
71.32
internal/blockbinary/arithmetic/uint64_limbs.cpp
Jobs
ID Job ID Ran Files Coverage
1 22332900479.1 24 Feb 2026 02:06AM UTC 551
84.71
GitHub Action Run
Source Files on build 22332900479
  • Tree
  • List 551
  • Changed 9
  • Source Changed 7
  • Coverage Changed 8
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #22332900479
  • 44756003 on github
  • Prev Build on main (#22321403113)
  • Next Build on main (#22375270668)
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