Nicholas Nethercote
700a396520
Add missing DiagnosticBuilder::eager_diagnostic method.
...
This lets us avoid the use of `DiagnosticBuilder::into_diagnostic` in
miri, when then means that `DiagnosticBuilder::into_diagnostic` can
become private, being now only used by `stash` and `buffer`.
2024-01-10 07:40:44 +11:00
Guillaume Gomez
4a24b5bc05
Rollup merge of #117556 - obeis:static-mut-ref-lint, r=davidtwco
...
Disallow reference to `static mut` and adding `static_mut_ref` lint
Closes #114447
r? `@scottmcm`
2024-01-09 13:23:15 +01:00
bors
8d4a5c7304
Auto merge of #3261 - RalfJung:jemalloc, r=RalfJung
...
only use jemalloc on Linux and macOS
hopefully fixes [this](https://github.com/rust-lang/rust/pull/119707#issuecomment-1880212449 )
2024-01-08 07:41:42 +00:00
Ralf Jung
56ff1b878e
only use jemalloc on Linux and macOS
2024-01-08 08:39:17 +01:00
bors
d475e62159
Auto merge of #3260 - saethlin:build-all-tier-2, r=RalfJung
...
Check if tier 2 targets build in the nightly cron job
This PR adds a CI job that only runs nightly which will install Miri built from the latest commit, and try to build every Tier 2 without host tools target, as documented on https://doc.rust-lang.org/nightly/rustc/platform-support.html .
I'm not really excited about the idea of scraping the tier 2 without host tools list, but also keeping the list up-to-date by hand seems prone to forgetting to update it. And that update seems like the sort of manual maintenance we should automate.
2024-01-07 20:43:06 +00:00
Ben Kimock
7d5de709c8
Check if tier 2 targets build in the nightly cron job
2024-01-07 15:40:43 -05:00
bors
6f017d22cc
Auto merge of #3257 - RalfJung:build-tests, r=RalfJung
...
./miri build: also build tests, to avoid rebuilds later
2024-01-07 15:24:42 +00:00
Obei Sideg
a8aa6878f6
Update test for E0796 and static_mut_ref lint
2024-01-07 17:29:25 +03:00
bors
8675aa1ebf
Auto merge of #3256 - RalfJung:rounding, r=RalfJung
...
implement the rounding intrinsics using apfloat rounding
No reason to use host floats for these. Also merge two files that were both testing various float things.
2024-01-07 14:21:57 +00:00
Ralf Jung
c4a11ea93e
only use jemalloc on Unix
2024-01-07 13:15:53 +01:00
Ralf Jung
b8209e2ef1
use jemalloc as global allocator
2024-01-07 12:38:37 +01:00
Ralf Jung
66b15ae591
cargo update
2024-01-06 16:10:52 +01:00
Ralf Jung
643e7f08da
./miri build: also build tests, to avoid rebuilds later
2024-01-06 16:05:41 +01:00
Ralf Jung
ac4526d28c
these should be exact
2024-01-06 12:08:44 +01:00
Ralf Jung
58c80a0239
merge intrinsics-math into float tests
2024-01-06 12:07:28 +01:00
Ralf Jung
1c98b78eb7
implement the rounding intrinsics using apfloat rounding
2024-01-06 12:02:08 +01:00
The Miri Conjob Bot
46f53c8b5d
fmt
2024-01-06 05:02:47 +00:00
The Miri Conjob Bot
078f228085
Merge from rustc
2024-01-06 05:01:35 +00:00
The Miri Conjob Bot
7e4e9ada0f
Preparing for merge from rustc
2024-01-06 04:54:11 +00:00
Matthias Krüger
80ee0c08d6
remove redundant clone
2024-01-05 21:19:45 +01:00
Michael Goulet
f361b591ef
Rollup merge of #119538 - nnethercote:cleanup-errors-5, r=compiler-errors
...
Cleanup error handlers: round 5
More rustc_errors cleanups. A sequel to https://github.com/rust-lang/rust/pull/119171 .
r? ````@compiler-errors````
2024-01-05 10:57:21 -05:00
The Miri Conjob Bot
d11a2bdc1d
Merge from rustc
2024-01-05 05:12:56 +00:00
The Miri Conjob Bot
4c4c6a6de3
Preparing for merge from rustc
2024-01-05 05:06:22 +00:00
bors
5113ed28ea
Auto merge of #118297 - shepmaster:warn-dead-tuple-fields, r=WaffleLapkin
...
Merge `unused_tuple_struct_fields` into `dead_code`
This implicitly upgrades the lint from `allow` to `warn` and places it into the `unused` lint group.
[Discussion on Zulip](https://rust-lang.zulipchat.com/#narrow/stream/131828-t-compiler/topic/Moving.20.60unused_tuple_struct_fields.60.20from.20allow.20to.20warn )
2024-01-05 04:51:55 +00:00
Matthias Krüger
657937850b
Rollup merge of #119574 - RalfJung:miri, r=oli-obk
...
Miri subtree update
r? `@ghost`
2024-01-04 15:34:01 +01:00
Ralf Jung
5aa15b6ee7
miri: do not forward RUSTFLAGS to deps build
2024-01-04 12:30:38 +01:00
Nicholas Nethercote
8388112970
Remove is_lint field from Level::Error.
...
Because it's redundant w.r.t. `Diagnostic::is_lint`, which is present
for every diagnostic level.
`struct_lint_level_impl` was the only place that set the `Error` field
to `true`, and it's also the only place that calls
`Diagnostic::is_lint()` to set the `is_lint` field.
2024-01-04 16:09:31 +11:00
Nicholas Nethercote
505c1371d0
Rename some Diagnostic setters.
...
`Diagnostic` has 40 methods that return `&mut Self` and could be
considered setters. Four of them have a `set_` prefix. This doesn't seem
necessary for a type that implements the builder pattern. This commit
removes the `set_` prefixes on those four methods.
2024-01-03 19:40:20 +11:00
Jake Goulding
10f4023192
Allow unused tuple struct fields in Miri tests
...
Otherwise the newly-detected dead code causes new output
2024-01-02 15:34:37 -05:00
bors
38847aeb76
Auto merge of #3239 - beepster4096:windows_sys_tests, r=RalfJung
...
Use `windows-sys` in windows tests
This PR adds `windows-sys` to `test_dependencies` so that we don't have to write out windows api bindings for each test.
2023-12-30 19:57:21 +00:00
DrMeepster
109ada8e9e
undo some lockfile changes, add explicit types to tests
2023-12-29 12:33:27 -08:00
Ben Kimock
4da47a4180
Fix integer overflow ICEs from round_up_to_next_multiple_of
2023-12-28 15:43:05 -05:00
bors
a63fd5ea6b
Auto merge of #3244 - RalfJung:nan-nondet, r=RalfJung
...
NaN non-determinism for intrinsics and libm functions
2023-12-28 11:57:27 +00:00
Ralf Jung
771e47929f
don't test unspecified case
2023-12-28 12:56:07 +01:00
Ralf Jung
ee42d1eb9f
NaN non-determinism for SIMD intrinsics
2023-12-28 12:14:06 +01:00
Ralf Jung
0f98c0e610
add NaN-nondet to libm functions
2023-12-28 11:07:56 +01:00
Ralf Jung
86198a15d7
make float intrinsics return non-deterministic NaN
2023-12-28 09:29:24 +01:00
bors
0c2c93e78a
Auto merge of #3240 - Jefffrey:tempfile, r=RalfJung
...
Support for tempfile crate on UNIX hosts
Reviving old PR: https://github.com/rust-lang/miri/pull/2720
Attempted to apply the changes as suggested by https://github.com/rust-lang/miri/pull/2720#issuecomment-1347867264
To fix tempfile to work for UNIX targets only and fall back to previous behaviour of only supporting default mode for Windows targets
2023-12-27 21:45:18 +00:00
Pointerbender
cf2ef7dc79
Support for tempfile crate on UNIX hosts
...
Co-authored-by: Jefffrey <22608443+Jefffrey@users.noreply.github.com>
Co-authored-by: Ralf Jung <post@ralfj.de>
2023-12-28 08:18:50 +11:00
Ralf Jung
dae48ea4bb
fast_math: detect non-finite results
2023-12-27 20:31:28 +01:00
Ralf Jung
0f9baa8a31
custom mir: make it clear what the return block is
2023-12-26 20:15:26 +01:00
The Miri Conjob Bot
236ae9905a
Merge from rustc
2023-12-26 05:00:54 +00:00
The Miri Conjob Bot
f2407d98de
Preparing for merge from rustc
2023-12-26 04:54:17 +00:00
DrMeepster
ac9368ab1e
have windows tests use windows-sys
2023-12-25 17:09:14 -08:00
The Miri Conjob Bot
29f25ee3f3
Merge from rustc
2023-12-24 05:00:43 +00:00
The Miri Conjob Bot
f3db65df94
Preparing for merge from rustc
2023-12-24 04:54:07 +00:00
Nicholas Nethercote
8a9db25459
Remove more Session methods that duplicate DiagCtxt methods.
2023-12-24 08:17:47 +11:00
Nicholas Nethercote
99472c7049
Remove Session methods that duplicate DiagCtxt methods.
...
Also add some `dcx` methods to types that wrap `TyCtxt`, for easier
access.
2023-12-24 08:05:28 +11:00
Michael Goulet
e0d7a72c46
Rollup merge of #119171 - nnethercote:cleanup-errors-4, r=compiler-errors
...
Cleanup error handlers: round 4
More `rustc_errors` cleanups. A sequel to #118933 .
r? `@compiler-errors`
2023-12-22 21:41:03 -05:00
Nicholas Nethercote
00e8485057
Remove all uses of DiagnosticBuilder::forget_guarantee().
...
There are only three. It's simpler to make the type
`DiagnosticBuilder<'_, ()>` from the start, no matter the level, than to
change the guarantee later.
2023-12-23 13:23:28 +11:00