Throwing from a proxy-op handler is undefined behaviour
Open
- Dominant language
- C++
- Stars
- 61
- Forks
- 15
- PR merge metrics
- No merged PRs in 30d
Description
It's an undocumented requirement that the functor passed to `proxy->register_op()` must be `noexcept` or we might unwind across an `extern "C"` boundary.
This should be fixed, either by documenting it or by removing the `noexcept` requirement.
Contributor guide
No contributing guide indexed for this repository
Research direction
Locate the declaration and implementation of proxy-register_op and inspect how its functor crosses the extern "C" boundary. Determine whether the requirement should be documented or the noexcept restriction removed, then add or update coverage for a throwing handler and verify the resulting behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- testing
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100