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

tarantool / luajit / 30338820236
93%
tarantool/master: 93%

Build:
Build:
LAST BUILD BRANCH: ligurio/lj-1459-ub-carith_ptr
DEFAULT BRANCH: tarantool/master
Ran 28 Jul 2026 07:34AM UTC
Jobs 1
Files 89
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

28 Jul 2026 07:32AM UTC coverage: 93.152% (-0.08%) from 93.233%
30338820236

push

github

ligurio
FFI: Prevent sanitizer warning in carith_ptr().

Reported by Sergey Bronnikov.

(cherry picked from commit c3b379bf5)

The Undefined Behaviour Sanitizer [1] produces a warning about
signed integer overflow in the function carith_ptr(), when idx
equals INT_MIN in the expression idx = -idx. In practice,
negating INT_MIN wraps back to itself instead of producing the
correct positive value, leading to incorrect pointer arithmetic in
carith_ptr() for MM_sub (pointer subtraction). The patch fixes
that by converting idx to unsigned (uintptr_t), computes two's
complement negation via bitwise negation + 1 (safe from overflow
in unsigned arithmetic), and casts back to ptrdiff_t. This avoids
signed overflow entirely and correctly negates even the INT_MIN
edge case.

The patch follows up the commit 78f4de4d7
("Avoid negation of signed integers in C that may hold INT*_MIN.").

[1]: https://clang.llvm.org/docs/UndefinedBehaviorSanitizer.html

Sergey Bronnikov:
* added the description and the test for the problem

Part of tarantool/tarantool#12880

5731 of 6058 branches covered (94.6%)

Branch coverage included in aggregate %.

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

24 existing lines in 4 files now uncovered.

21854 of 23555 relevant lines covered (92.78%)

3969953.34 hits per line

Coverage Regressions

Lines Coverage ∆ File
10
77.88
-1.01% src/lj_api.c
6
88.69
-0.5% src/lj_crecord.c
6
77.03
-0.55% src/lj_opt_fold.c
2
92.0
-0.44% src/luajit.c
Jobs
ID Job ID Ran Files Coverage
1 30338820236.1 28 Jul 2026 07:34AM UTC 89
93.15
GitHub Action Run
Source Files on build 30338820236
  • Tree
  • List 89
  • Changed 5
  • Source Changed 0
  • Coverage Changed 5
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #30338820236
  • 2385014c on github
  • Prev Build on tarantool/master (#27124968400)
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