-
Notifications
You must be signed in to change notification settings - Fork 390
Comparing changes
Open a pull request
base repository: rust-lang/miri
base: ae964207bb17911cf96d9744d9469fa2734093a8
head repository: rust-lang/miri
compare: 12dac5c0f7acd106401aa14fec758f0ff552f678
- 15 commits
- 17 files changed
- 4 contributors
Commits on Mar 14, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 893843f - Browse repository at this point
Copy the full SHA 893843fView commit details -
Configuration menu - View commit details
-
Copy full SHA for d1dec9c - Browse repository at this point
Copy the full SHA d1dec9cView commit details -
Configuration menu - View commit details
-
Copy full SHA for c9ff02f - Browse repository at this point
Copy the full SHA c9ff02fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 15465a5 - Browse repository at this point
Copy the full SHA 15465a5View commit details -
Auto merge of #1744 - rust-lang:bad-unwind, r=RalfJung
ensure we catch incorrectly unwinding calls Fixes #1740
Configuration menu - View commit details
-
Copy full SHA for a798792 - Browse repository at this point
Copy the full SHA a798792View commit details -
Auto merge of #1743 - RalfJung:callee-checks, r=RalfJung
Check callee ABI when Miri calls closures Fixes #1741
Configuration menu - View commit details
-
Copy full SHA for 0788188 - Browse repository at this point
Copy the full SHA 0788188View commit details
Commits on Mar 16, 2021
-
hyd-dev committed
Mar 16, 2021 Configuration menu - View commit details
-
Copy full SHA for 1c7d747 - Browse repository at this point
Copy the full SHA 1c7d747View commit details
Commits on Mar 17, 2021
-
Unsupported foreign non-"C"/"system"-ABI function calls are not UB
hyd-dev committedMar 17, 2021 Configuration menu - View commit details
-
Copy full SHA for bbc3485 - Browse repository at this point
Copy the full SHA bbc3485View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3ee8654 - Browse repository at this point
Copy the full SHA 3ee8654View commit details -
hyd-dev committed
Mar 17, 2021 Configuration menu - View commit details
-
Copy full SHA for 633ac2a - Browse repository at this point
Copy the full SHA 633ac2aView commit details -
Remove the macro and expand it manually
hyd-dev committedMar 17, 2021 Configuration menu - View commit details
-
Copy full SHA for 7ec919d - Browse repository at this point
Copy the full SHA 7ec919dView commit details -
Auto merge of #1745 - hyd-dev:unsup-foreign-calls-are-not-ub, r=RalfJung
Improve error message of calling unsupported non-"C"/"system"-ABI foreign function Miri currently reports the following `foo()` call has ABI-mismatch UB: ```rust #[cfg(unix)] extern "Rust" { // or any non-"C" ABI fn foo(); } #[cfg(windows)] extern "C" { // or any non-"system" ABI fn foo(); } fn main() { unsafe { foo(); } } ``` [Output when targeting Linux](https://play.rust-lang.org/?version=nightly&mode=debug&edition=2018&gist=72afc3bd4d9fdab962422cfc2c5a2166) (and maybe also macOS): ``` error: Undefined Behavior: calling a function with ABI C using caller ABI Rust --> src/main.rs:13:9 | 13 | foo(); | ^^^^^ calling a function with ABI C using caller ABI Rust | = help: this indicates a bug in the program: it performed an invalid operation, and caused Undefined Behavio ``` Output when targeting Windows: ``` error: Undefined Behavior: calling a function with ABI system using caller ABI C --> <anon>:13:9 | 13 | foo(); | ^^^^^ calling a function with ABI system using caller ABI C | = help: this indicates a bug in the program: it performed an invalid operation, and caused Undefined Behavior ``` However, to my knowledge, that's not UB -- it's just unsupported by Miri (and Miri can't assume the function has `"C"` or `"system"` ABI since Miri doesn't know about it). I believe that is because of the overzealous `check_abi()` call before the long `match` in `src/shims/{posix,windows}/foreign_items.rs`. The ABI is checked to match the system one (`"system"` on Windows, `"C"` otherwise) no matter the callee is recognized as a shim or an unsupported foreign function. Therefore, this PR removes the `check_abi()` call before the `match` and inserts a `check_abi()` call to each non-wildcard match.
Configuration menu - View commit details
-
Copy full SHA for 80d6b56 - Browse repository at this point
Copy the full SHA 80d6b56View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4f899ce - Browse repository at this point
Copy the full SHA 4f899ceView commit details -
Configuration menu - View commit details
-
Copy full SHA for fc88c6c - Browse repository at this point
Copy the full SHA fc88c6cView commit details -
Auto merge of #1746 - bstrie:depfix, r=RalfJung
Replace deprecated `collections::Bound` with `ops::Bound` Cc rust-lang/rust#83242 , which resulted from rust-lang/rust#82122 .
Configuration menu - View commit details
-
Copy full SHA for 12dac5c - Browse repository at this point
Copy the full SHA 12dac5cView commit details
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff ae964207bb17911cf96d9744d9469fa2734093a8...12dac5c0f7acd106401aa14fec758f0ff552f678