Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

test_lsp.py's LSan check misses leaks hidden by a stale stack pointer

Open Beginner friendly
#1,374 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
78/100
Issue type
Bug
Clarity
Clearly specified
Activity status
Active
Tech stack
c, python
Domain
testing-qa

Research direction

Start in test_lsp.py at the LSan "no sanitizer reports" check and review how it launches eigenlsp. Run the check with LSAN_OPTIONS=use_stacks=0:use_registers=0, then verify that deleting free_scopes from src/eigenlsp.c causes the planted leak test to fail. Any newly exposed false positives should be fixed or documented with a reason.

Written by the indexing model from the issue text.

Description

area:gates kind:gate-defect

Found by the blind critic on #1364. With free_scopes deleted from src/eigenlsp.c (a real leak of the rename scope table), the harness's "no sanitizer reports" check passed. Under normal LSAN options: rc 0, no report. With LSAN_OPTIONS=use_stacks=0:use_registers=0: Direct leak of 512 byte(s). A stale pointer left on the stack keeps the block "reachable", so the leak class the harness claims to watch is invisible to it.

Done when

  • The LSP leak check runs eigenlsp with use_stacks=0:use_registers=0 (or an equivalent that sees this class), and the planted free_scopes deletion turns it red.
  • Any false positives that setting surfaces are fixed or listed with a reason.
Dominant language
C
Stars
3
Forks
7
Avg merge
4h 7m
Merged PRs (30d)
112

Getting set up

Open in Codespaces

Starts the project's dev container in your browser, under your own GitHub account.

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from InauguralSystems/EigenScript

All issues in InauguralSystems/EigenScript

Similar issues

More C issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.