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

SRI-CSL / yices2 / 25266440890
67%
master: 69%

Build:
Build:
LAST BUILD BRANCH: issue-621-plan-a-diff-witness
DEFAULT BRANCH: master
Ran 03 May 2026 01:24AM UTC
Jobs 1
Files 486
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

03 May 2026 01:14AM UTC coverage: 66.685% (+0.1%) from 66.539%
25266440890

Pull #614

github

disteph
Add stress regression for MCSAT curried function model int_hmap resize

tests/regress/mcsat/arrays/issue613_many_curried.smt2 declares 25
curried arrays of type (Array Int (Array Int Int)) and asserts
  (select (select a_i i) i) = 100 + i
for each. The model builder's builder->function_value int_hmap
accumulates roughly 2 * 25 = 50 entries during
uf_plugin_build_model -> uf_model_builder_get_function_value, which
reliably crosses the default load-factor threshold and triggers
int_hmap_extend during one of the recursive calls.

On master, this reproduces the original issue #613 (heap-buffer-overflow
in vtbl_mk_function) under ASan.

On the PR branch without the use-after-free fix in
uf_model_builder_get_function_value, the same test triggers:

  ERROR: AddressSanitizer: heap-use-after-free
  WRITE of size 4 at 0x61100001fca4
    #0 uf_model_builder_get_function_value (stale find->val write)
  freed by thread T0:
    #1 int_hmap_extend int_hash_map.c:173
    #2 int_hmap_get   int_hash_map.c:265
    #3 uf_model_builder_get_function_value (recursive)

On the fixed PR branch, the test passes cleanly both in debug and under
ASan+UBSan. The .gold fixes the expected (get-value ...) outputs for
three representative indices (1, 13, 25) so the test exercises curried
`select (select ...)` model extraction end-to-end.

This complements the existing issue613_model_print.smt2, which covers a
single curried array but does not accumulate enough function_value
entries to force an int_hmap resize during recursion.
Pull Request #614: Fix #613 MCSAT curried function model reconstruction

179 of 195 new or added lines in 4 files covered. (91.79%)

9 existing lines in 6 files now uncovered.

83429 of 125109 relevant lines covered (66.69%)

1700929.47 hits per line

Uncovered Changes

Lines Coverage ∆ File
6
91.32
2.81% src/mcsat/uf/uf_plugin.c
4
86.18
0.66% src/frontend/smt2/smt2_printer.c
4
35.4
24.58% src/io/concrete_value_printer.c
2
92.01
-0.26% src/mcsat/preprocessor.c

Coverage Regressions

Lines Coverage ∆ File
2
91.32
2.81% src/mcsat/uf/uf_plugin.c
2
68.48
-0.61% src/mcsat/value.c
2
67.19
0.66% src/model/concrete_values.c
1
86.18
0.66% src/frontend/smt2/smt2_printer.c
1
35.4
24.58% src/io/concrete_value_printer.c
1
92.01
-0.26% src/mcsat/preprocessor.c
Jobs
ID Job ID Ran Files Coverage
1 25266440890.1 03 May 2026 01:24AM UTC 486
66.69
GitHub Action Run
Source Files on build 25266440890
  • Tree
  • List 486
  • Changed 10
  • Source Changed 0
  • Coverage Changed 10
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Pull Request #614
  • PR Base - master (#23861667837)
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