llvm / llvm/llvm-project

[libc] Make internal assertion call abort

Open
#211,348 1 comment 0 reactions 0 assignees View on GitHub
libc
Dominant language
LLVM
Stars
40.5k
Forks
18.7k
PR merge metrics
PR metrics pending

Description

I notice that LSB actually say that assert failure needs to **abort** the program. **abort** has a better semantic that gdb captures it by default. We need to fix that. `abort` allows reentrancy (recursive assertion failure) but current pure-header-library style makes cyclic dependency unavoidable. This should be cleaned up later.

Contributor guide

Open the contributing guide

Research direction

Start by locating libc's internal assertion implementation and tracing its current failure path. Compare that behavior with the LSB requirement and inspect existing assertion-related tests; done means assertion failure invokes abort while preserving the stated reentrancy considerations.

Written by the indexing model from the issue text.

Assessment

Domain
operating-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.