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

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

Build:
Build:
LAST BUILD BRANCH: main
DEFAULT BRANCH: master
Ran 31 Jul 2026 02:36AM UTC
Jobs 1
Files 599
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

31 Jul 2026 01:59AM UTC coverage: 85.208% (-0.008%) from 85.216%
30597794219

push

github

web-flow
fix(numeric): decimal integer conversion is UB (and hangs) for LLONG_MIN (#1273) (#1275)

number/support/decimal.hpp negated a signed long long to get its magnitude, which
is undefined behavior for LLONG_MIN (magnitude 2^63 is not representable in
long long):

- convert_to_decimal: `v *= -1` left v == LLONG_MIN (still negative); the bit loop
  then did `v >>= 1` on a negative value, which sticks at -1 forever -> INFINITE
  LOOP (a hang, confirmed).
- setvalue: `-v` is the same overflow UB (its fixed 64-iteration loop masked the
  symptom, but the negation is still UB and UBSan-flagged).

Negate in the unsigned domain instead, which is well-defined and yields 2^63 for
LLONG_MIN. convert_to_decimal now loops over a uint64_t magnitude (which also
retires the -Wsign-conversion cast from #1270 at that line).

Regression: static/conversions/decimal_boundary.cpp checks convert_to_decimal and
setvalue for LLONG_MIN / LLONG_MIN+1 / LLONG_MAX / 0 / +-small -- it hangs on the
old code and PASSes on the fix.

Verified: correct decimal for LLONG_MIN, terminates, and UBSan-clean (no
signed-overflow). gcc + clang: conversions_decimal_boundary, bt_decimal PASS.

Resolves #1273
Relates to #1270

6 of 6 new or added lines in 1 file covered. (100.0%)

8 existing lines in 1 file now uncovered.

41671 of 48905 relevant lines covered (85.21%)

7268704.24 hits per line

Coverage Regressions

Lines Coverage ∆ File
8
93.73
-0.47% include/sw/universal/number/cfloat/cfloat_impl.hpp
Jobs
ID Job ID Ran Files Coverage
1 30597794219.1 31 Jul 2026 02:36AM UTC 599
85.21
GitHub Action Run
Source Files on build 30597794219
  • Tree
  • List 599
  • Changed 2
  • Source Changed 1
  • Coverage Changed 2
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #30597794219
  • 6a1a4a85 on github
  • Prev Build on main (#30586806514)
  • Next Build on main (#30624996632)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc