Debugger segfaults after exiting in some cases #1200
Labels
No labels
Affects/CppNix
Affects/Nightly
Affects/Only nightly
Affects/Stable
Area/build-packaging
Area/cli
Area/evaluator
Area/fetching
Area/flakes
Area/language
Area/lix ci
Area/nix-eval-jobs
Area/profiles
Area/protocol
Area/releng
Area/remote-builds
Area/repl
Area/repl/debugger
Area/store
awaiting
author
awaiting
contributors
bug
Context
contributors
Context
drive-by
Context
maintainers
Context
RFD
crash 💥
Cross Compilation
devx
diagnostics
docs
Downstream Dependents
E/easy
E/hard
E/help wanted
E/reproducible
E/requires rearchitecture
Feature/S3
Importance
High
Importance
Low
imported
Language/Bash
Language/C++
Language/NixLang
Language/Python
Language/Rust
Needs Langver
OS/Linux
OS/macOS
performance
regression
Release Blocking
Non-urgent
Release Blocking
Urgent
stability
Status
blocked
Status
invalid
Status
postponed
Status
wontfix
testing
testing/flakey
Topic/Large Scale Installations
Urgency
High
Urgency
Low
ux
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
lix-project/lix#1200
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Describe the bug
Using the debugger on an error inside a throw expression makes the process segfault after exiting the debugger.
Steps To Reproduce
nix eval -E 'let s.foo = "uwu"; f = v: throw s.bar; in f 5' --debugger:qor Ctrl+DThis happens with at least
repl,eval, andbuild; i've not tried other commands but i'm guessing it's the same for anything that accepts installables and the--debuggerflagExpected behavior
The process doesn't segfault after quitting.
nix --versionoutputThis happens on main (
faaa14a303):As well as on 2.95.1.
Additional context
Core dump available here, captured for the executable built from main, though it's easy to reproduce.
This doesn't happen on CppNix.