add support for `#[global_allocator]`
This PR adds support for custom global allocators. Unfortunately, the code given in #1207 still causes errors when used with box. I believe this is because Box is special-cased in miri and stacked borrows.
Correct Windows argument handling
Previously the command line string would have been incorrectly constructed if argv[0] contained a doublequote (`"`) or ended in a trailing backslash (`\`). This is a very rare edge case because, by convention, argv[0] is the path to the application and Windows file names cannot contain doublequotes.
Fixes#1881
Previously the command line string would have been incorrectly constructed if argv[0] contained a doublequote (`"`) or ended in a trailing backslash (`\`). This is a very rare edge case because, by convention, argv[0] is the path to the application and Windows file names cannot contain doublequotes.
Fixes#1881
One character aliases for cargo-miri run/test
The main `cargo` command supports `cargo r` as an alias for `cargo run`, and `cargo t` as an alias for `cargo test`. This adds support to them in `cargo-miri` for consistency.
The main `cargo` command supports `cargo r` as an alias for
`cargo run`, and `cargo t` as an alias for `cargo test`. This adds
support to them in cargo-miri for consistency.
add support for `#[start]`
This PR adds support for the `#[start]` attribute and fixes#1825.
It also renames `eval_main` to `eval_entry` to reflect that it can evaluate any entry function.
Update compiletest_rs dependency
Hello. I am trying to [update some Clippy dependencies](https://github.com/rust-lang/rust/pull/88517) in the rust repo. To help keep the overall number of dependencies down, I was asked to submit a PR here to update `compiletest_rs` to from `0.6.0` to `0.7.0`. I ran CI on my fork and the update didn't seem to cause any problems.
Try out gitpod
At https://gitpod.io/#https://github.com/rust-lang/miri one can edit miri in the browser and run it and everything.
I'm experimenting with this here as a low-impact version of trying it out on the whole rustc repo. This .gitpod file should cause the user to land in a shell that can run ./miri test immediately without any additional prep
Add support for the `volatile_set_memory` intrinsic
Add support for the unstable `volatile_set_memory` intrinsic
(Runtime behaviour and soundness requirements for `volatile_set_memory` are identical to those of `write_bytes`, so supporting this intrinsic is trivial.)