-
Notifications
You must be signed in to change notification settings - Fork 13.3k
Tracking Issue for breakpoint
feature (core::arch::breakpoint
)
#133724
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Comments
Is there a reason why this is in Plus, |
Does it really fit in It fits better in there but it doesn't feel like the obvious place to look for a breakpoint function |
@clarfonthey I don't think "do nothing" should be a valid implementation of this. "abort" is a valid implementation. Given that, I don't think this belongs in That said, that doesn't necessarily make I don't see any existing module that this logically fits in other than We could put it in a new |
I mean, sure, but we have other things in |
@clarfonthey AFAICT, every function in A breakpoint isn't a "hint"; it can't be replaced with a no-op. Is there any other module in |
JavaScript has the |
@kpreid I'd love to have that operation, but unfortunately, that's a much more complex operation that isn't as simple as emitting an instruction, it'd be more error-prone (it can erroneously detect a debugger), it'd be less portable (as it's OS-specific rather than CPU-specific), and it wouldn't be available on all targets. |
@joshtriplett Maybe an ACP for debugger presence detection? C++ 26 is getting that. I recently added debugger presence detection to Unbug using the dbg_breakpoint crate. The bulk of that crate was previously accepted as a panic hook in the Rust standard library, but then reverted later. |
Feature gate:
#![feature(breakpoint)]
This is a tracking issue for the
breakpoint
feature, which gates thecore::arch::breakpoint
function. This feature was approved in ACP 491.Public API
Steps / History
core::arch::breakpoint
libs-team#491core::arch::breakpoint
and test #133726Unresolved Questions
Footnotes
https://std-dev-guide.rust-lang.org/feature-lifecycle/stabilization.html ↩
The text was updated successfully, but these errors were encountered: