Commit Graph

53 Commits

Author SHA1 Message Date
bors
853254f467 Auto merge of #1675 - hyd-dev:proc-macro-unit-test, r=RalfJung
[cargo-miri] Skip unit tests of `proc-macro` crates

Fixes #1660.
2021-01-24 15:50:51 +00:00
hyd-dev
ecab8a4fae
Skip unit tests of proc-macro crates 2021-01-24 23:48:06 +08:00
Ralf Jung
225e255cfe prefer build-time env vars over run-time values 2021-01-23 16:51:29 +01:00
hyd-dev
eae95693d8
Add ArgFlagValueIter 2021-01-19 01:18:45 +08:00
Ralf Jung
ba0d229752 rustup + cargo-miri 'cargo update' 2020-12-21 10:53:55 +01:00
Ralf Jung
330ec0acdb enable overflow checks in the standard library 2020-11-07 15:56:25 +01:00
Ralf Jung
1044099c19 disable debug assertions in the standard library 2020-10-28 12:43:11 +01:00
Camelid
e9b8693aaa Don't force-install xargo
Previously miri used `cargo install xargo -f` which shouldn't be
necessary anymore since `cargo install` will now upgrade without `-f`.

The only reason I can see to use `-f` is from the cargo docs:

> This is also useful if something has changed on the system that you
> want to rebuild with, such as a newer version of `rustc`.

See the [discussion on Zulip](https://rust-lang.zulipchat.com/#narrow/stream/131828-t-compiler/topic/why.20does.20miri.20require.20xargo/near/214351239).
2020-10-23 11:48:34 -07:00
Aaron Hill
05bb560de2
Enable backtrace feature in the generated Xargo.toml
This allows the normal std panic hook to print a backtrace if
`RUST_BACKTRACE=1` and `-Z miri-disable-isolation` are set
2020-10-20 18:27:55 -04:00
Ralf Jung
5058ec18f1 fix for rlib/cdylib crates in dependency tree 2020-10-07 19:42:33 +02:00
Ralf Jung
4dda2ad5b4 support non-rlib extern files 2020-09-21 12:46:18 +02:00
Ralf Jung
88b9c2173e also support old 'cargo miri run -- -- args' style 2020-09-21 09:10:04 +02:00
bors
84a4514254 Auto merge of #1549 - RalfJung:panic-abort, r=oli-obk
support panic=abort

This adds support for abort-on-panic (https://github.com/rust-lang/miri/issues/1058). To achieve this, we insert `cargo-miri` as `RUSTC` when building the standard library, and patch the rustc flags in a way similar to what bootstrap does.

However, this is currently not supported on Windows as the Windows code uses inline assembly to cause an abort (?!?). I'll submit a rustc PR with some `cffg(miri)` to make that work. (EDIT: that would be https://github.com/rust-lang/rust/pull/76871)

Cc `@Aaron1011` r? `@oli-obk`
2020-09-18 11:41:04 +00:00
Ralf Jung
32cdb7131b support panic=abort 2020-09-18 13:10:18 +02:00
Ralf Jung
6be8761e47 update for major version bumps 2020-09-18 12:17:09 +02:00
Ralf Jung
e9e67c97cc cargo update main crates 2020-09-17 20:08:18 +02:00
Ralf Jung
ae859c3f7b add comment mentioning alternative approach 2020-09-17 17:33:47 +02:00
Ralf Jung
18483b4d5e make (not yet actually used) doctest actually use the crate, and fix a comment 2020-09-17 17:33:47 +02:00
Ralf Jung
f7612f71bc more consistent error capitalization 2020-09-17 17:33:47 +02:00
Ralf Jung
b244a2ddaa make sure subcrate tests have the right cwd 2020-09-17 17:33:47 +02:00
Ralf Jung
113a335c3e test propagating env vars from build.rs to binary 2020-09-17 17:33:47 +02:00
Ralf Jung
33c669679e test 'harness=false' tests 2020-09-17 17:33:47 +02:00
Ralf Jung
174a92c39a detect when the user passes Miri's flags the old way, and support this for now 2020-09-17 17:33:47 +02:00
Ralf Jung
2205ed5bbb show proper warning about not running doctests 2020-09-17 17:33:47 +02:00
Ralf Jung
ba3b354af9 update comment
Co-authored-by: Oli Scherer <github35764891676564198441@oli-obk.de>
2020-09-17 17:33:47 +02:00
Ralf Jung
74fdb5cf2c patch away --error-format and --json so that errors are rendered properly 2020-09-17 17:33:47 +02:00
Ralf Jung
119bf4d607 forward build-time env vars to binary, and test that we do 2020-09-17 17:33:46 +02:00
Ralf Jung
c793d6036a handle binary suffices (for Windows); stop deleting fake binary 2020-09-17 17:29:19 +02:00
Ralf Jung
53eab7195a make our filename handling work better across platforms 2020-09-17 17:29:19 +02:00
Ralf Jung
147330cc36 even when not linking, create stub .rlib files to fool cargo 2020-09-17 17:29:19 +02:00
Ralf Jung
0019fe2459 fix typo
Co-authored-by: Oli Scherer <github35764891676564198441@oli-obk.de>
2020-09-17 17:29:19 +02:00
Ralf Jung
c41a039c56 patch --extern and --emit; test suite passes now! 2020-09-17 17:29:19 +02:00
Ralf Jung
7ee2729824 it actually runs tests now! 2020-09-17 17:29:19 +02:00
Ralf Jung
e2119dc94d stub JSON information flow from cargo-build-time to run-time 2020-09-17 17:29:19 +02:00
Ralf Jung
16afe1a234 towards letting cargo do binary selection: wrappers and runners set up 2020-09-17 17:29:19 +02:00
Ralf Jung
ebc3b71881 also detect Azure CI environments 2020-09-13 21:10:29 +02:00
David Cook
64e2d3e2d0 Review comments 2020-08-27 05:00:56 -05:00
David Cook
40847abd5f Review comments 2020-08-26 18:41:01 -05:00
David Cook
3bc8302a54 Support --test/--bin/--lib in cargo-miri 2020-08-25 19:00:46 -05:00
Jubilee Young
2619b4fa18 Bump cargo_metadata to 0.11 2020-08-21 01:37:56 -07:00
Ralf Jung
cda255cfb4 rustup; inner_deref has been stabilized 2020-08-03 14:20:46 +02:00
Ralf Jung
797436cefb only check-build the dummy xargo project 2020-07-29 18:21:32 +02:00
Ralf Jung
ee39ac9840 rustup for new folder layout 2020-07-29 14:27:14 +02:00
Ralf Jung
15466e00b0 go back to using canonicalize() 2020-07-11 11:07:17 +02:00
Ralf Jung
2fbc4aa7ca
Cleanup code
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-07-09 13:02:42 +02:00
Ralf Jung
ee056ccf7b better way to get an absolute path 2020-07-09 12:45:35 +02:00
Ralf Jung
7d9d74e065 on Windows, strip the '\\?\' prefix from the canonical path 2020-07-09 08:59:47 +02:00
Ralf Jung
ab65cb3c67 support relative XARGO_RUST_SRC 2020-07-05 20:01:12 +02:00
Ralf Jung
ac454a2485 cargo-miri: allow overwriting miri command, and make that consistent with compiletest 2020-05-28 08:53:44 +02:00
Ralf Jung
35964b10b0 no workspace as that is incompatible with the rustc submodule 2020-05-28 08:53:44 +02:00