e5c3af6f51
Add support for panicking in the emulated application when unsupported functionality is encountered This PR fixes #1807 and allows an optional flag to be specified to panic when an unsupported syscall is encountered. In essence, instead of bubbling up an error in the context of the Miri application Miri will panic within the context of the *emulated* application. This feature is desired to allow CI pipelines to determine if a Miri failure is unsupported functionality or actual UB. Please read [this comment](https://github.com/rust-lang/miri/issues/1807#issuecomment-845425076) for the rationale behind this change. Note: this change does not cover all cases where unsupported functionality errors may be raised. If you search the repo for `throw_unsup_format!` there are many cases that I think are less likely to occur and may still be problematic for some folks. TODO: - [x] README documentation on this new flag - [x] Add tests |
||
---|---|---|
.. | ||
catch_panic.rs | ||
catch_panic.stderr | ||
concurrent-panic.rs | ||
concurrent-panic.stderr | ||
div-by-zero-2.rs | ||
div-by-zero-2.stderr | ||
overflowing-lsh-neg.rs | ||
overflowing-lsh-neg.stderr | ||
overflowing-rsh-1.rs | ||
overflowing-rsh-1.stderr | ||
overflowing-rsh-2.rs | ||
overflowing-rsh-2.stderr | ||
panic1.rs | ||
panic1.stderr | ||
panic2.rs | ||
panic2.stderr | ||
panic3.rs | ||
panic3.stderr | ||
panic4.rs | ||
panic4.stderr | ||
std-panic-locations.rs | ||
unsupported_foreign_function.rs | ||
unsupported_foreign_function.stderr |