tarantool / tarantool/tarantool
UBSan: check nonnull-attribute is globally suppressed
Nobody has claimed this yet.
- Dominant language
- Lua
- Stars
- 3.7k
- Forks
- 419
- Avg merge
- 1d 23h
- Merged PRs (30d)
- 88
Description
Bug description
UBSan check nonnull-attribute is globally suppressed.
Steps to reproduce
Remove nonnull-attribute from a UBSAN_IGNORE_OPTIONS in cmake/compiler.cmake, build tarantool and execute regression tests.
The check is triggered at least in these files:
+nonnull-attribute:ibuf_reserve_slow
+nonnull-attribute:iproto_session_send
+nonnull-attribute:priv_def_compare
+nonnull-attribute:src/box/sql/build.c
+nonnull-attribute:src/box/sql.c
+nonnull-attribute:src/box/sql/expr.c
+nonnull-attribute:src/box/vy_read_iterator.c
+nonnull-attribute:src/lib/salad/mhash.h
+nonnull-attribute:tt_bitset_iterator_prepare_page
+nonnull-attribute:tx_schedule_queue
+nonnull-attribute:vy_key_new
+nonnull-attribute:src/box/vy_stmt.c
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start in cmake/compiler.cmake by examining the UBSAN_IGNORE_OPTIONS entry for nonnull-attribute, then inspect the listed trigger locations across src and related files. Remove the global suppression as described and run the regression tests; done means the nonnull-attribute check is no longer globally suppressed and the tests complete without the listed triggers.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c, cmake
- Domain
- build-system, testing-qa
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100