rust
rust copied to clipboard
Move lint level source explanation to the bottom
So, uhhhhh
r? @estebank
User-facing change
"note: #[warn(...)] on by default" and such are moved to the bottom of the diagnostic:
- = note: `#[warn(unsupported_calling_conventions)]` on by default
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
= note: for more information, see issue #87678 <https://github.com/rust-lang/rust/issues/87678>
+ = note: `#[warn(unsupported_calling_conventions)]` on by default
Why warning is enabled is the least important thing, so it shouldn't be the first note the user reads, IMO.
Developer-facing change
struct_span_lint and similar methods have a different signature.
Before: ..., impl for<'a> FnOnce(LintDiagnosticBuilder<'a, ()>)
After: ..., impl Into<DiagnosticMessage>, impl for<'a, 'b> FnOnce(&'b mut DiagnosticBuilder<'a, ()>) -> &'b mut DiagnosticBuilder<'a, ()>
The reason for this is that struct_span_lint needs to edit the diagnostic after decorate closure is called. This also makes lint code a little bit nicer in my opinion.
Another option is to use impl for<'a> FnOnce(LintDiagnosticBuilder<'a, ()>) -> DiagnosticBuilder<'a, ()> altough I don't really see reasons to do let lint = lint.build(message) everywhere.
Subtle problem
By moving the message outside of the closure (that may not be called if the lint is disabled) format!(...) is executed earlier, possibly formatting Ty which may call a query that trims paths that crashes the compiler if there were no warnings...
I don't think it's that big of a deal, considering that we move from format!(...) to fluent (which is lazy by-default) anyway, however this required adding a workaround which is unfortunate.
P.S.
I'm sorry, I do not how to make this PR smaller/easier to review. Changes to the lint API affect SO MUCH 😢
Some changes occurred in src/tools/clippy
cc @rust-lang/clippy
Some changes occurred in const_evaluatable.rs
cc @lcnr
rustc_macros::diagnostics was changed
cc @davidtwco, @compiler-errors, @JohnTitor, @estebank, @TaKO8Ki
rustc_error_messages was changed
cc @davidtwco, @compiler-errors, @JohnTitor, @estebank, @TaKO8Ki
Some changes occurred to MIR optimizations
cc @rust-lang/wg-mir-opt
The job x86_64-gnu-llvm-13 failed! Check out the build log: (web) (plain)
Click to see the possible cause of the failure (guessed by this bot)
Copying stage2 rustc from stage1 (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu / x86_64-unknown-linux-gnu)
Check compiletest suite=ui-fulldeps mode=ui (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
running 71 tests
......FF....F..F.....F.i..F.....FF.F..FFF.FFFFFF.F.F...................
---- [ui] src/test/ui-fulldeps/internal-lints/default_hash_types.rs stdout ----
diff of stderr:
4 LL | let _map: HashMap<String, String> = HashMap::default();
6 |
6 |
+ = note: a `use rustc_data_structures::fx::FxHashMap` may be necessary
8 --> $DIR/default_hash_types.rs:4:9
9 |
10 LL | #![deny(rustc::default_hash_types)]
11 | ^^^^^^^^^^^^^^^^^^^^^^^^^
- = note: a `use rustc_data_structures::fx::FxHashMap` may be necessary
13
14 error: prefer `FxHashMap` over `HashMap`, it has better performance
The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui-fulldeps/internal-lints/default_hash_types/default_hash_types.stderr
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui-fulldeps/internal-lints/default_hash_types/default_hash_types.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args internal-lints/default_hash_types.rs`
error: 1 errors occurred comparing output.
status: exit status: 1
command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/src/test/ui-fulldeps/internal-lints/default_hash_types.rs" "-Zthreads=1" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui-fulldeps/internal-lints/default_hash_types" "-A" "unused" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-Z" "unstable-options" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui-fulldeps/internal-lints/default_hash_types/auxiliary"
stdout: none
--- stderr -------------------------------
error: prefer `FxHashMap` over `HashMap`, it has better performance
|
|
LL | let _map: HashMap<String, String> = HashMap::default();
|
|
= note: a `use rustc_data_structures::fx::FxHashMap` may be necessary
--> /checkout/src/test/ui-fulldeps/internal-lints/default_hash_types.rs:4:9
|
|
LL | #![deny(rustc::default_hash_types)]
error: prefer `FxHashMap` over `HashMap`, it has better performance
|
|
LL | let _map: HashMap<String, String> = HashMap::default();
|
|
= note: a `use rustc_data_structures::fx::FxHashMap` may be necessary
error: prefer `FxHashSet` over `HashSet`, it has better performance
|
|
LL | let _set: HashSet<String> = HashSet::default();
|
|
= note: a `use rustc_data_structures::fx::FxHashSet` may be necessary
error: prefer `FxHashSet` over `HashSet`, it has better performance
|
|
LL | let _set: HashSet<String> = HashSet::default();
|
|
= note: a `use rustc_data_structures::fx::FxHashSet` may be necessary
error: aborting due to 4 previous errors
------------------------------------------
---- [ui] src/test/ui-fulldeps/internal-lints/existing_doc_keyword.rs stdout ----
diff of stderr:
4 LL | #[doc(keyword = "tadam")]
6 |
+ = help: only existing keywords are allowed in core/std
7 note: the lint level is defined here
8 --> $DIR/existing_doc_keyword.rs:8:9
8 --> $DIR/existing_doc_keyword.rs:8:9
9 |
10 LL | #![deny(rustc::existing_doc_keyword)]
- = help: only existing keywords are allowed in core/std
13
14 error: aborting due to previous error
15
---
To only update this specific test, also pass `--test-args internal-lints/existing_doc_keyword.rs`
error: 1 errors occurred comparing output.
status: exit status: 1
command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/src/test/ui-fulldeps/internal-lints/existing_doc_keyword.rs" "-Zthreads=1" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui-fulldeps/internal-lints/existing_doc_keyword" "-A" "unused" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-Z" "unstable-options" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui-fulldeps/internal-lints/existing_doc_keyword/auxiliary"
stdout: none
--- stderr -------------------------------
error: found non-existing keyword `tadam` used in `#[doc(keyword = \"...\")]`
|
|
LL | #[doc(keyword = "tadam")] //~ ERROR
|
= help: only existing keywords are allowed in core/std
note: the lint level is defined here
--> /checkout/src/test/ui-fulldeps/internal-lints/existing_doc_keyword.rs:8:9
--> /checkout/src/test/ui-fulldeps/internal-lints/existing_doc_keyword.rs:8:9
|
LL | #![deny(rustc::existing_doc_keyword)]
error: aborting due to previous error
------------------------------------------
---- [ui] src/test/ui-fulldeps/internal-lints/query_stability.rs stdout ----
diff of stderr:
4 LL | for _ in x.drain() {}
6 |
6 |
+ = note: if you believe this case to be fine, allow this lint and add a comment explaining your rationale
8 --> $DIR/query_stability.rs:4:9
9 |
10 LL | #![deny(rustc::potential_query_instability)]
11 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- = note: if you believe this case to be fine, allow this lint and add a comment explaining your rationale
14 error: using `iter` can result in unstable query results
15 --> $DIR/query_stability.rs:16:16
The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui-fulldeps/internal-lints/query_stability/query_stability.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args internal-lints/query_stability.rs`
error: 1 errors occurred comparing output.
status: exit status: 1
command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/src/test/ui-fulldeps/internal-lints/query_stability.rs" "-Zthreads=1" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui-fulldeps/internal-lints/query_stability" "-A" "unused" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-Z" "unstable-options" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui-fulldeps/internal-lints/query_stability/auxiliary"
stdout: none
--- stderr -------------------------------
error: using `drain` can result in unstable query results
|
|
LL | for _ in x.drain() {}
|
|
= note: if you believe this case to be fine, allow this lint and add a comment explaining your rationale
--> /checkout/src/test/ui-fulldeps/internal-lints/query_stability.rs:4:9
|
|
LL | #![deny(rustc::potential_query_instability)]
error: using `iter` can result in unstable query results
--> /checkout/src/test/ui-fulldeps/internal-lints/query_stability.rs:16:16
|
|
LL | for _ in x.iter() {}
|
|
= note: if you believe this case to be fine, allow this lint and add a comment explaining your rationale
error: using `iter_mut` can result in unstable query results
--> /checkout/src/test/ui-fulldeps/internal-lints/query_stability.rs:19:36
|
|
LL | for _ in Some(&mut x).unwrap().iter_mut() {}
|
|
= note: if you believe this case to be fine, allow this lint and add a comment explaining your rationale
error: using `into_iter` can result in unstable query results
--> /checkout/src/test/ui-fulldeps/internal-lints/query_stability.rs:22:14
|
LL | for _ in x {}
LL | for _ in x {}
| ^
|
= note: if you believe this case to be fine, allow this lint and add a comment explaining your rationale
error: aborting due to 4 previous errors
------------------------------------------
---- [ui] src/test/ui-fulldeps/internal-lints/lint_pass_impl_without_macro.rs stdout ----
diff of stderr:
4 LL | impl LintPass for Foo {
6 |
6 |
+ = help: try using `declare_lint_pass!` or `impl_lint_pass!` instead
8 --> $DIR/lint_pass_impl_without_macro.rs:4:9
9 |
10 LL | #![deny(rustc::lint_pass_impl_without_macro)]
10 LL | #![deny(rustc::lint_pass_impl_without_macro)]
11 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- = help: try using `declare_lint_pass!` or `impl_lint_pass!` instead
13
14 error: implementing `LintPass` by hand
The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui-fulldeps/internal-lints/lint_pass_impl_without_macro/lint_pass_impl_without_macro.stderr
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui-fulldeps/internal-lints/lint_pass_impl_without_macro/lint_pass_impl_without_macro.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args internal-lints/lint_pass_impl_without_macro.rs`
error: 1 errors occurred comparing output.
status: exit status: 1
command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/src/test/ui-fulldeps/internal-lints/lint_pass_impl_without_macro.rs" "-Zthreads=1" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui-fulldeps/internal-lints/lint_pass_impl_without_macro" "-A" "unused" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-Z" "unstable-options" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui-fulldeps/internal-lints/lint_pass_impl_without_macro/auxiliary"
stdout: none
--- stderr -------------------------------
error: implementing `LintPass` by hand
|
|
LL | impl LintPass for Foo { //~ERROR implementing `LintPass` by hand
|
|
= help: try using `declare_lint_pass!` or `impl_lint_pass!` instead
--> /checkout/src/test/ui-fulldeps/internal-lints/lint_pass_impl_without_macro.rs:4:9
|
LL | #![deny(rustc::lint_pass_impl_without_macro)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
error: implementing `LintPass` by hand
|
|
LL | impl LintPass for Custom { //~ERROR implementing `LintPass` by hand
...
...
LL | custom_lint_pass_macro!();
|
|
= help: try using `declare_lint_pass!` or `impl_lint_pass!` instead
= note: this error originates in the macro `custom_lint_pass_macro` (in Nightly builds, run with -Z macro-backtrace for more info)
error: aborting due to 2 previous errors
------------------------------------------
---- [ui] src/test/ui-fulldeps/internal-lints/ty_tykind_usage.rs stdout ----
error: Error: expected failure status (Some(1)) but received status Some(101).
status: exit status: 101
command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/src/test/ui-fulldeps/internal-lints/ty_tykind_usage.rs" "-Zthreads=1" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui-fulldeps/internal-lints/ty_tykind_usage" "-A" "unused" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-Z" "unstable-options" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui-fulldeps/internal-lints/ty_tykind_usage/auxiliary"
stdout: none
--- stderr -------------------------------
error: usage of `ty::TyKind::<kind>`
|
|
LL | let kind = TyKind::Bool; //~ ERROR usage of `ty::TyKind::<kind>`
| ^^^^^^ help: try using `ty::<kind>` directly: `ty`
note: the lint level is defined here
--> /checkout/src/test/ui-fulldeps/internal-lints/ty_tykind_usage.rs:11:8
|
|
LL | #[deny(rustc::usage_of_ty_tykind)]
error: usage of `ty::TyKind::<kind>`
|
|
LL | TyKind::Bool => (), //~ ERROR usage of `ty::TyKind::<kind>`
| ^^^^^^ help: try using `ty::<kind>` directly: `ty`
error: usage of `ty::TyKind::<kind>`
|
|
LL | TyKind::Char => (), //~ ERROR usage of `ty::TyKind::<kind>`
| ^^^^^^ help: try using `ty::<kind>` directly: `ty`
error: usage of `ty::TyKind::<kind>`
|
|
LL | TyKind::Int(..) => (), //~ ERROR usage of `ty::TyKind::<kind>`
| ^^^^^^ help: try using `ty::<kind>` directly: `ty`
error: usage of `ty::TyKind::<kind>`
|
|
LL | TyKind::Uint(..) => (), //~ ERROR usage of `ty::TyKind::<kind>`
| ^^^^^^ help: try using `ty::<kind>` directly: `ty`
error: usage of `ty::TyKind::<kind>`
|
|
LL | TyKind::Float(..) => (), //~ ERROR usage of `ty::TyKind::<kind>`
| ^^^^^^ help: try using `ty::<kind>` directly: `ty`
error: usage of `ty::TyKind::<kind>`
|
|
LL | TyKind::Adt(..) => (), //~ ERROR usage of `ty::TyKind::<kind>`
| ^^^^^^ help: try using `ty::<kind>` directly: `ty`
error: usage of `ty::TyKind::<kind>`
|
|
LL | TyKind::Foreign(..) => (), //~ ERROR usage of `ty::TyKind::<kind>`
| ^^^^^^ help: try using `ty::<kind>` directly: `ty`
error: usage of `ty::TyKind::<kind>`
|
|
LL | TyKind::Str => (), //~ ERROR usage of `ty::TyKind::<kind>`
| ^^^^^^ help: try using `ty::<kind>` directly: `ty`
error: usage of `ty::TyKind::<kind>`
|
|
LL | TyKind::Array(..) => (), //~ ERROR usage of `ty::TyKind::<kind>`
| ^^^^^^ help: try using `ty::<kind>` directly: `ty`
error: usage of `ty::TyKind::<kind>`
|
|
LL | TyKind::Slice(..) => (), //~ ERROR usage of `ty::TyKind::<kind>`
| ^^^^^^ help: try using `ty::<kind>` directly: `ty`
error: usage of `ty::TyKind::<kind>`
|
|
LL | TyKind::RawPtr(..) => (), //~ ERROR usage of `ty::TyKind::<kind>`
| ^^^^^^ help: try using `ty::<kind>` directly: `ty`
error: usage of `ty::TyKind::<kind>`
|
|
LL | TyKind::Ref(..) => (), //~ ERROR usage of `ty::TyKind::<kind>`
| ^^^^^^ help: try using `ty::<kind>` directly: `ty`
error: usage of `ty::TyKind::<kind>`
|
|
LL | TyKind::FnDef(..) => (), //~ ERROR usage of `ty::TyKind::<kind>`
| ^^^^^^ help: try using `ty::<kind>` directly: `ty`
error: usage of `ty::TyKind::<kind>`
|
|
LL | TyKind::FnPtr(..) => (), //~ ERROR usage of `ty::TyKind::<kind>`
| ^^^^^^ help: try using `ty::<kind>` directly: `ty`
error: usage of `ty::TyKind::<kind>`
|
|
LL | TyKind::Dynamic(..) => (), //~ ERROR usage of `ty::TyKind::<kind>`
| ^^^^^^ help: try using `ty::<kind>` directly: `ty`
error: usage of `ty::TyKind::<kind>`
|
|
LL | TyKind::Closure(..) => (), //~ ERROR usage of `ty::TyKind::<kind>`
| ^^^^^^ help: try using `ty::<kind>` directly: `ty`
error: usage of `ty::TyKind::<kind>`
|
|
LL | TyKind::Generator(..) => (), //~ ERROR usage of `ty::TyKind::<kind>`
| ^^^^^^ help: try using `ty::<kind>` directly: `ty`
error: usage of `ty::TyKind::<kind>`
|
|
LL | TyKind::GeneratorWitness(..) => (), //~ ERROR usage of `ty::TyKind::<kind>`
| ^^^^^^ help: try using `ty::<kind>` directly: `ty`
error: usage of `ty::TyKind::<kind>`
|
|
LL | TyKind::Never => (), //~ ERROR usage of `ty::TyKind::<kind>`
| ^^^^^^ help: try using `ty::<kind>` directly: `ty`
error: usage of `ty::TyKind::<kind>`
|
|
LL | TyKind::Tuple(..) => (), //~ ERROR usage of `ty::TyKind::<kind>`
| ^^^^^^ help: try using `ty::<kind>` directly: `ty`
error: usage of `ty::TyKind::<kind>`
|
|
LL | TyKind::Projection(..) => (), //~ ERROR usage of `ty::TyKind::<kind>`
| ^^^^^^ help: try using `ty::<kind>` directly: `ty`
error: usage of `ty::TyKind::<kind>`
|
|
LL | TyKind::Opaque(..) => (), //~ ERROR usage of `ty::TyKind::<kind>`
| ^^^^^^ help: try using `ty::<kind>` directly: `ty`
error: usage of `ty::TyKind::<kind>`
|
|
LL | TyKind::Param(..) => (), //~ ERROR usage of `ty::TyKind::<kind>`
| ^^^^^^ help: try using `ty::<kind>` directly: `ty`
error: usage of `ty::TyKind::<kind>`
|
|
LL | TyKind::Bound(..) => (), //~ ERROR usage of `ty::TyKind::<kind>`
| ^^^^^^ help: try using `ty::<kind>` directly: `ty`
error: usage of `ty::TyKind::<kind>`
|
|
LL | TyKind::Placeholder(..) => (), //~ ERROR usage of `ty::TyKind::<kind>`
| ^^^^^^ help: try using `ty::<kind>` directly: `ty`
error: usage of `ty::TyKind::<kind>`
|
|
LL | TyKind::Infer(..) => (), //~ ERROR usage of `ty::TyKind::<kind>`
| ^^^^^^ help: try using `ty::<kind>` directly: `ty`
error: usage of `ty::TyKind::<kind>`
|
|
LL | TyKind::Error(_) => (), //~ ERROR usage of `ty::TyKind::<kind>`
| ^^^^^^ help: try using `ty::<kind>` directly: `ty`
error: usage of `ty::TyKind::<kind>`
|
|
LL | if let TyKind::Int(int_ty) = kind {} //~ ERROR usage of `ty::TyKind::<kind>`
| ^^^^^^ help: try using `ty::<kind>` directly: `ty`
thread 'rustc' panicked at 'failed to find message in primary or fallback fluent bundles', compiler/rustc_errors/src/translation.rs:64:9
0: 0x7f157456852e - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::ha08bd098848a1e25
1: 0x7f15745d1308 - core::fmt::write::h3d197bd7fec8130a
1: 0x7f15745d1308 - core::fmt::write::h3d197bd7fec8130a
2: 0x7f1574559311 - std::io::Write::write_fmt::hf15e2fceb8e3636f
3: 0x7f157456b4fe - std::panicking::default_hook::{{closure}}::h8207cc32005b7c5e
4: 0x7f157456b1be - std::panicking::default_hook::h879f28d5d2e17408
5: 0x7f1574f1b554 - rustc_driver[73c8e760204621f2]::DEFAULT_HOOK::{closure#0}::{closure#0}
6: 0x7f157456bcb1 - std::panicking::rust_panic_with_hook::h74e91077c26fced7
7: 0x7f157456bad7 - std::panicking::begin_panic_handler::{{closure}}::h84c034404a7ed57d
8: 0x7f1574568a64 - std::sys_common::backtrace::__rust_end_short_backtrace::he943d20a8a84c288
9: 0x7f157456b7a2 - rust_begin_unwind
10: 0x7f157451af03 - core::panicking::panic_fmt::h03b56255b8de9ef3
Some tests failed in compiletest suite=ui-fulldeps mode=ui host=x86_64-unknown-linux-gnu target=x86_64-unknown-linux-gnu
11: 0x7f15745cdaa1 - core::panicking::panic_display::h6d13b5d501f6f339
12: 0x7f15745cda4b - core::panicking::panic_str::h6b3012f06e34142d
13: 0x7f157451ad76 - core::option::expect_failed::h802740aa15e620bc
14: 0x7f1577c74c43 - <rustc_errors[4639b3fdf06aee6f]::emitter::EmitterWriter as rustc_errors[4639b3fdf06aee6f]::translation::Translate>::translate_message
15: 0x7f1577c69d84 - <rustc_errors[4639b3fdf06aee6f]::emitter::EmitterWriter>::msg_to_buffer
16: 0x7f1577c6a74c - <rustc_errors[4639b3fdf06aee6f]::emitter::EmitterWriter>::emit_message_default
17: 0x7f1577c6805c - <rustc_errors[4639b3fdf06aee6f]::emitter::EmitterWriter as rustc_errors[4639b3fdf06aee6f]::emitter::Emitter>::emit_diagnostic
18: 0x7f1577c78bda - <rustc_errors[4639b3fdf06aee6f]::json::Diagnostic>::from_errors_diagnostic
19: 0x7f1577c7770c - <rustc_errors[4639b3fdf06aee6f]::json::JsonEmitter as rustc_errors[4639b3fdf06aee6f]::emitter::Emitter>::emit_diagnostic
20: 0x7f1577cc49eb - <rustc_errors[4639b3fdf06aee6f]::HandlerInner>::emit_diagnostic
21: 0x7f1577cc32c1 - <rustc_errors[4639b3fdf06aee6f]::Handler>::emit_diagnostic
22: 0x7f1577ccbc7d - <() as rustc_errors[4639b3fdf06aee6f]::diagnostic_builder::EmissionGuarantee>::diagnostic_builder_emit_producing_guarantee
23: 0x7f1577432e2b - rustc_middle[5e283c10211e23e]::lint::struct_lint_level::struct_lint_level_impl::<rustc_error_messages[e64807f889885155]::DiagnosticMessage>
24: 0x7f157742cbf2 - rustc_middle[5e283c10211e23e]::lint::struct_lint_level::<rustc_error_messages[e64807f889885155]::DiagnosticMessage, <rustc_lint[829080bd00995501]::internal::TyTyKind as rustc_lint[829080bd00995501]::passes::LateLintPass>::check_ty::{closure#0}>
25: 0x7f15774f8e2a - <rustc_middle[5e283c10211e23e]::ty::context::TyCtxt>::struct_span_lint_hir::<rustc_span[eb07ab32e60c1cc]::span_encoding::Span, rustc_error_messages[e64807f889885155]::DiagnosticMessage, <rustc_lint[829080bd00995501]::internal::TyTyKind as rustc_lint[829080bd00995501]::passes::LateLintPass>::check_ty::{closure#0}>
26: 0x7f157747d0cf - <rustc_lint[829080bd00995501]::context::LateContext as rustc_lint[829080bd00995501]::context::LintContext>::struct_span_lint::<rustc_span[eb07ab32e60c1cc]::span_encoding::Span, rustc_error_messages[e64807f889885155]::DiagnosticMessage, <rustc_lint[829080bd00995501]::internal::TyTyKind as rustc_lint[829080bd00995501]::passes::LateLintPass>::check_ty::{closure#0}>
27: 0x7f15774449cd - <rustc_lint[829080bd00995501]::internal::TyTyKind as rustc_lint[829080bd00995501]::passes::LateLintPass>::check_ty
28: 0x7f157749e803 - <rustc_lint[829080bd00995501]::late::LateLintPassObjects as rustc_lint[829080bd00995501]::passes::LateLintPass>::check_ty
29: 0x7f157510ae4f - rustc_hir[6f6bcd12f609723c]::intravisit::walk_fn::<rustc_lint[829080bd00995501]::late::LateContextAndPass<rustc_lint[829080bd00995501]::late::LateLintPassObjects>>
30: 0x7f15750a9bb2 - <rustc_lint[829080bd00995501]::late::LateContextAndPass<rustc_lint[829080bd00995501]::late::LateLintPassObjects> as rustc_hir[6f6bcd12f609723c]::intravisit::Visitor>::visit_fn
31: 0x7f157510d3ba - rustc_hir[6f6bcd12f609723c]::intravisit::walk_item::<rustc_lint[829080bd00995501]::late::LateContextAndPass<rustc_lint[829080bd00995501]::late::LateLintPassObjects>>
32: 0x7f15750ac054 - <rustc_lint[829080bd00995501]::late::LateContextAndPass<rustc_lint[829080bd00995501]::late::LateLintPassObjects> as rustc_hir[6f6bcd12f609723c]::intravisit::Visitor>::visit_nested_item
33: 0x7f15750a8406 - <rustc_lint[829080bd00995501]::late::LateContextAndPass<rustc_lint[829080bd00995501]::late::LateLintPassObjects> as rustc_hir[6f6bcd12f609723c]::intravisit::Visitor>::visit_stmt
34: 0x7f157510caac - rustc_hir[6f6bcd12f609723c]::intravisit::walk_expr::<rustc_lint[829080bd00995501]::late::LateContextAndPass<rustc_lint[829080bd00995501]::late::LateLintPassObjects>>
35: 0x7f15750a7f1f - <rustc_lint[829080bd00995501]::late::LateContextAndPass<rustc_lint[829080bd00995501]::late::LateLintPassObjects> as rustc_hir[6f6bcd12f609723c]::intravisit::Visitor>::visit_expr
36: 0x7f15750a99d1 - <rustc_lint[829080bd00995501]::late::LateContextAndPass<rustc_lint[829080bd00995501]::late::LateLintPassObjects> as rustc_hir[6f6bcd12f609723c]::intravisit::Visitor>::visit_nested_body
37: 0x7f15750a9bb2 - <rustc_lint[829080bd00995501]::late::LateContextAndPass<rustc_lint[829080bd00995501]::late::LateLintPassObjects> as rustc_hir[6f6bcd12f609723c]::intravisit::Visitor>::visit_fn
38: 0x7f157510d3ba - rustc_hir[6f6bcd12f609723c]::intravisit::walk_item::<rustc_lint[829080bd00995501]::late::LateContextAndPass<rustc_lint[829080bd00995501]::late::LateLintPassObjects>>
39: 0x7f15750ac054 - <rustc_lint[829080bd00995501]::late::LateContextAndPass<rustc_lint[829080bd00995501]::late::LateLintPassObjects> as rustc_hir[6f6bcd12f609723c]::intravisit::Visitor>::visit_nested_item
40: 0x7f157510bdbc - rustc_hir[6f6bcd12f609723c]::intravisit::walk_mod::<rustc_lint[829080bd00995501]::late::LateContextAndPass<rustc_lint[829080bd00995501]::late::LateLintPassObjects>>
41: 0x7f15750a7a62 - rustc_lint[829080bd00995501]::late::late_lint_pass_crate::<rustc_lint[829080bd00995501]::late::LateLintPassObjects>
42: 0x7f15750a6e6f - rustc_lint[829080bd00995501]::late::late_lint_crate::<rustc_lint[829080bd00995501]::BuiltinCombinedLateLintPass>
43: 0x7f1575052698 - <rustc_session[9c2fcbfb9c0e7a50]::session::Session>::time::<(), rustc_lint[829080bd00995501]::late::check_crate<rustc_lint[829080bd00995501]::BuiltinCombinedLateLintPass, rustc_interface[93851a8ad3afe8d4]::passes::analysis::{closure#5}::{closure#1}::{closure#2}::{closure#0}::{closure#0}>::{closure#0}::{closure#0}>
44: 0x7f157502b6b2 - rustc_data_structures[88cf5a3801a79fbc]::sync::join::<rustc_lint[829080bd00995501]::late::check_crate<rustc_lint[829080bd00995501]::BuiltinCombinedLateLintPass, rustc_interface[93851a8ad3afe8d4]::passes::analysis::{closure#5}::{closure#1}::{closure#2}::{closure#0}::{closure#0}>::{closure#0}, rustc_lint[829080bd00995501]::late::check_crate<rustc_lint[829080bd00995501]::BuiltinCombinedLateLintPass, rustc_interface[93851a8ad3afe8d4]::passes::analysis::{closure#5}::{closure#1}::{closure#2}::{closure#0}::{closure#0}>::{closure#1}, (), ()>
45: 0x7f1575052a20 - <rustc_session[9c2fcbfb9c0e7a50]::session::Session>::time::<(), rustc_interface[93851a8ad3afe8d4]::passes::analysis::{closure#5}::{closure#1}::{closure#2}::{closure#0}>
46: 0x7f157502c708 - std[cbb8deaedd3917d0]::panic::catch_unwind::<core[8207c3258571ca0e]::panic::unwind_safe::AssertUnwindSafe<rustc_interface[93851a8ad3afe8d4]::passes::analysis::{closure#5}::{closure#1}::{closure#2}>, ()>
47: 0x7f15750d0ba5 - <core[8207c3258571ca0e]::panic::unwind_safe::AssertUnwindSafe<rustc_interface[93851a8ad3afe8d4]::passes::analysis::{closure#5}::{closure#1}> as core[8207c3258571ca0e]::ops::function::FnOnce<()>>::call_once
48: 0x7f157502c829 - std[cbb8deaedd3917d0]::panic::catch_unwind::<core[8207c3258571ca0e]::panic::unwind_safe::AssertUnwindSafe<rustc_interface[93851a8ad3afe8d4]::passes::analysis::{closure#5}::{closure#1}>, ()>
49: 0x7f1575054976 - <rustc_session[9c2fcbfb9c0e7a50]::session::Session>::time::<(), rustc_interface[93851a8ad3afe8d4]::passes::analysis::{closure#5}>
50: 0x7f15750759ec - rustc_interface[93851a8ad3afe8d4]::passes::analysis
51: 0x7f1576b37dc8 - rustc_query_system[32dc960d8a53c9e3]::query::plumbing::try_execute_query::<rustc_query_impl[37ed453da7d29069]::plumbing::QueryCtxt, rustc_query_system[32dc960d8a53c9e3]::query::caches::DefaultCache<(), core[8207c3258571ca0e]::result::Result<(), rustc_errors[4639b3fdf06aee6f]::ErrorGuaranteed>>>
52: 0x7f1576c188bb - rustc_query_system[32dc960d8a53c9e3]::query::plumbing::get_query::<rustc_query_impl[37ed453da7d29069]::queries::analysis, rustc_query_impl[37ed453da7d29069]::plumbing::QueryCtxt>
53: 0x7f1576a16a6a - <rustc_query_impl[37ed453da7d29069]::Queries as rustc_middle[5e283c10211e23e]::ty::query::QueryEngine>::analysis
54: 0x7f1574f7c446 - <rustc_interface[93851a8ad3afe8d4]::passes::QueryContext>::enter::<rustc_driver[73c8e760204621f2]::run_compiler::{closure#1}::{closure#2}::{closure#3}, core[8207c3258571ca0e]::result::Result<(), rustc_errors[4639b3fdf06aee6f]::ErrorGuaranteed>>
55: 0x7f1574f31e3c - rustc_interface[93851a8ad3afe8d4]::interface::create_compiler_and_run::<core[8207c3258571ca0e]::result::Result<(), rustc_errors[4639b3fdf06aee6f]::ErrorGuaranteed>, rustc_driver[73c8e760204621f2]::run_compiler::{closure#1}>
56: 0x7f1574f960bf - <scoped_tls[dcda34d3adf18490]::ScopedKey<rustc_span[eb07ab32e60c1cc]::SessionGlobals>>::set::<rustc_interface[93851a8ad3afe8d4]::interface::run_compiler<core[8207c3258571ca0e]::result::Result<(), rustc_errors[4639b3fdf06aee6f]::ErrorGuaranteed>, rustc_driver[73c8e760204621f2]::run_compiler::{closure#1}>::{closure#0}, core[8207c3258571ca0e]::result::Result<(), rustc_errors[4639b3fdf06aee6f]::ErrorGuaranteed>>
57: 0x7f1574f8008f - std[cbb8deaedd3917d0]::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface[93851a8ad3afe8d4]::util::run_in_thread_pool_with_globals<rustc_interface[93851a8ad3afe8d4]::interface::run_compiler<core[8207c3258571ca0e]::result::Result<(), rustc_errors[4639b3fdf06aee6f]::ErrorGuaranteed>, rustc_driver[73c8e760204621f2]::run_compiler::{closure#1}>::{closure#0}, core[8207c3258571ca0e]::result::Result<(), rustc_errors[4639b3fdf06aee6f]::ErrorGuaranteed>>::{closure#0}, core[8207c3258571ca0e]::result::Result<(), rustc_errors[4639b3fdf06aee6f]::ErrorGuaranteed>>
58: 0x7f1574f333b1 - std[cbb8deaedd3917d0]::panic::catch_unwind::<core[8207c3258571ca0e]::panic::unwind_safe::AssertUnwindSafe<<std[cbb8deaedd3917d0]::thread::Builder>::spawn_unchecked_<rustc_interface[93851a8ad3afe8d4]::util::run_in_thread_pool_with_globals<rustc_interface[93851a8ad3afe8d4]::interface::run_compiler<core[8207c3258571ca0e]::result::Result<(), rustc_errors[4639b3fdf06aee6f]::ErrorGuaranteed>, rustc_driver[73c8e760204621f2]::run_compiler::{closure#1}>::{closure#0}, core[8207c3258571ca0e]::result::Result<(), rustc_errors[4639b3fdf06aee6f]::ErrorGuaranteed>>::{closure#0}, core[8207c3258571ca0e]::result::Result<(), rustc_errors[4639b3fdf06aee6f]::ErrorGuaranteed>>::{closure#1}::{closure#0}>, core[8207c3258571ca0e]::result::Result<(), rustc_errors[4639b3fdf06aee6f]::ErrorGuaranteed>>
59: 0x7f1574f83c60 - <<std[cbb8deaedd3917d0]::thread::Builder>::spawn_unchecked_<rustc_interface[93851a8ad3afe8d4]::util::run_in_thread_pool_with_globals<rustc_interface[93851a8ad3afe8d4]::interface::run_compiler<core[8207c3258571ca0e]::result::Result<(), rustc_errors[4639b3fdf06aee6f]::ErrorGuaranteed>, rustc_driver[73c8e760204621f2]::run_compiler::{closure#1}>::{closure#0}, core[8207c3258571ca0e]::result::Result<(), rustc_errors[4639b3fdf06aee6f]::ErrorGuaranteed>>::{closure#0}, core[8207c3258571ca0e]::result::Result<(), rustc_errors[4639b3fdf06aee6f]::ErrorGuaranteed>>::{closure#1} as core[8207c3258571ca0e]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
60: 0x7f1574578aa5 - std::sys::unix::thread::Thread::new::thread_start::ha7e48239067192e4
61: 0x7f1574313b43 - <unknown>
62: 0x7f15743a5a00 - <unknown>
63: 0x0 - <unknown>
error: internal compiler error: unexpected panic
note: the compiler unexpectedly panicked. this is a bug.
note: we would appreciate a bug report: https://github.com/rust-lang/rust/issues/new?labels=C-bug%2C+I-ICE%2C+T-compiler&template=ice.md
note: rustc 1.66.0-nightly (6d203eb71 2022-09-18) running on x86_64-unknown-linux-gnu
note: compiler flags: -Z threads=1 -C codegen-units=1 -Z ui-testing -Z deduplicate-diagnostics=no -C strip=debuginfo -C prefer-dynamic -C rpath -C debuginfo=0 -Z unstable-options
query stack during panic:
query stack during panic:
#0 [analysis] running analysis passes on this crate
error: aborting due to 29 previous errors
------------------------------------------
---- [ui] src/test/ui-fulldeps/issue-15778-fail.rs stdout ----
error: auxiliary build of "/checkout/src/test/ui-fulldeps/auxiliary/lint-for-crate.rs" failed to compile:
status: exit status: 1
command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/src/test/ui-fulldeps/auxiliary/lint-for-crate.rs" "-Zthreads=1" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Cstrip=debuginfo" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui-fulldeps/issue-15778-fail/auxiliary" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "--crate-type" "dylib" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui-fulldeps/issue-15778-fail/auxiliary"
stdout: none
--- stderr -------------------------------
--> /checkout/src/test/ui-fulldeps/auxiliary/lint-for-crate.rs:7:1
|
LL | #[macro_use]
| ^^^^^^^^^^^^
| ^^^^^^^^^^^^
|
= note: `#[warn(unused_imports)]` on by default
error[E0282]: type annotations needed
--> /checkout/src/test/ui-fulldeps/auxiliary/lint-for-crate.rs:32:38
|
LL | cx.lint(CRATE_NOT_OKAY, |lint| {
| ^^^^
LL | lint.build("crate is not marked with #![crate_okay]").set_span(span).emit();
| ---- type must be known at this point
|
help: consider giving this closure parameter an explicit type
|
LL | cx.lint(CRATE_NOT_OKAY, |lint: _| {
error[E0061]: this function takes 3 arguments but 2 arguments were supplied
--> /checkout/src/test/ui-fulldeps/auxiliary/lint-for-crate.rs:32:16
|
|
LL | cx.lint(CRATE_NOT_OKAY, |lint| {
| ________________^^^^-
LL | | lint.build("crate is not marked with #![crate_okay]").set_span(span).emit();
LL | | });
| |______________- an argument is missing
note: associated function defined here
--> /checkout/compiler/rustc_lint/src/context.rs:917:8
|
LL | fn lint(
LL | fn lint(
| ^^^^
help: provide the argument
|
LL ~ cx.lint(CRATE_NOT_OKAY, |lint| {
LL + lint.build("crate is not marked with #![crate_okay]").set_span(span).emit();
LL ~ }, /* value */);
error: aborting due to 2 previous errors; 1 warning emitted
Some errors have detailed explanations: E0061, E0282.
Some errors have detailed explanations: E0061, E0282.
For more information about an error, try `rustc --explain E0061`.
------------------------------------------
---- [ui] src/test/ui-fulldeps/lint-group-denied-lint-allowed.rs stdout ----
error: auxiliary build of "/checkout/src/test/ui-fulldeps/auxiliary/lint-group-plugin-test.rs" failed to compile:
status: exit status: 1
command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/src/test/ui-fulldeps/auxiliary/lint-group-plugin-test.rs" "-Zthreads=1" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Cstrip=debuginfo" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui-fulldeps/lint-group-denied-lint-allowed/auxiliary" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "--crate-type" "dylib" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui-fulldeps/lint-group-denied-lint-allowed/auxiliary"
stdout: none
--- stderr -------------------------------
--> /checkout/src/test/ui-fulldeps/auxiliary/lint-group-plugin-test.rs:8:1
|
LL | #[macro_use]
| ^^^^^^^^^^^^
| ^^^^^^^^^^^^
|
= note: `#[warn(unused_imports)]` on by default
warning: unused imports: `LintArray`, `LintPass`
|
|
LL | use rustc_lint::{LateContext, LateLintPass, LintArray, LintContext, LintId, LintPass};
You'll need to re--bless :)
I forget that clippy exists every time xd
The Miri subtree was changed
cc @rust-lang/miri
I think this should be at least rollup=never, since it will conflict with basically any lint change.
:umbrella: The latest upstream changes (presumably #102064) made this pull request unmergeable. Please resolve the merge conflicts.
r=me after rebasing
I got more conflicts, while rebasing ✌️
brb rebasing again
So, I've rebased+squashed commits. It would be nice if this gets merged before the conflicts return :')
@bors r=estebank rollup=never
:pushpin: Commit 0458be4349d1952034f6340e891ba38ce2aa9fd6 has been approved by estebank
It is now in the queue for this repository.
@bors p=5 bitrotty
:hourglass: Testing commit 0458be4349d1952034f6340e891ba38ce2aa9fd6 with merge 912ec714d3ff33835fe8f6eb9f6ed0839e36a156...
:broken_heart: Test failed - checks-actions
The job aarch64-gnu failed! Check out the build log: (web) (plain)
Click to see the possible cause of the failure (guessed by this bot)
---- [ui] src/test/ui/asm/aarch64/type-check-3.rs stdout ----
diff of stderr:
4 LL | asm!("{}", in(reg) 0u8);
5 | ^^ --- for this argument
6 |
- = note: `#[warn(asm_sub_register)]` on by default
8 = help: use `{0:w}` to have the register formatted as `w0`
9 = help: or use `{0:x}` to keep the default formatting of `x0`
+ = note: `#[warn(asm_sub_register)]` on by default
11 warning: formatting may not be suitable for sub-register argument
12 --> $DIR/type-check-3.rs:50:15
The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/asm/aarch64/type-check-3/type-check-3.stderr
To only update this specific test, also pass `--test-args asm/aarch64/type-check-3.rs`
error: 1 errors occurred comparing output.
status: exit status: 1
status: exit status: 1
command: "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/src/test/ui/asm/aarch64/type-check-3.rs" "-Zthreads=1" "--target=aarch64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/asm/aarch64/type-check-3" "-A" "unused" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/aarch64-unknown-linux-gnu/native/rust-test-helpers" "-C" "target-feature=+neon" "-L" "/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/asm/aarch64/type-check-3/auxiliary"
stdout: none
--- stderr -------------------------------
warning: formatting may not be suitable for sub-register argument
|
|
LL | asm!("{}", in(reg) 0u8);
| ^^ --- for this argument
|
= help: use `{0:w}` to have the register formatted as `w0`
= help: or use `{0:x}` to keep the default formatting of `x0`
= note: `#[warn(asm_sub_register)]` on by default
warning: formatting may not be suitable for sub-register argument
--> /checkout/src/test/ui/asm/aarch64/type-check-3.rs:50:15
|
|
LL | asm!("{}", in(reg) 0u16);
Some tests failed in compiletest suite=ui mode=ui host=aarch64-unknown-linux-gnu target=aarch64-unknown-linux-gnu
| ^^ ---- for this argument
|
= help: use `{0:w}` to have the register formatted as `w0`
= help: or use `{0:x}` to keep the default formatting of `x0`
warning: formatting may not be suitable for sub-register argument
--> /checkout/src/test/ui/asm/aarch64/type-check-3.rs:52:15
|
|
LL | asm!("{}", in(reg) 0i32);
| ^^ ---- for this argument
|
= help: use `{0:w}` to have the register formatted as `w0`
= help: or use `{0:x}` to keep the default formatting of `x0`
warning: formatting may not be suitable for sub-register argument
--> /checkout/src/test/ui/asm/aarch64/type-check-3.rs:54:15
|
|
LL | asm!("{}", in(reg) 0f32);
| ^^ ---- for this argument
|
= help: use `{0:w}` to have the register formatted as `w0`
= help: or use `{0:x}` to keep the default formatting of `x0`
warning: formatting may not be suitable for sub-register argument
--> /checkout/src/test/ui/asm/aarch64/type-check-3.rs:57:15
|
|
LL | asm!("{}", in(vreg) 0i16);
| ^^ ---- for this argument
|
= help: use `{0:h}` to have the register formatted as `h0`
= help: or use `{0:v}` to keep the default formatting of `v0`
warning: formatting may not be suitable for sub-register argument
--> /checkout/src/test/ui/asm/aarch64/type-check-3.rs:59:15
|
|
LL | asm!("{}", in(vreg) 0f32);
| ^^ ---- for this argument
|
= help: use `{0:s}` to have the register formatted as `s0`
= help: or use `{0:v}` to keep the default formatting of `v0`
warning: formatting may not be suitable for sub-register argument
--> /checkout/src/test/ui/asm/aarch64/type-check-3.rs:61:15
|
|
LL | asm!("{}", in(vreg) 0f64);
| ^^ ---- for this argument
|
= help: use `{0:d}` to have the register formatted as `d0`
= help: or use `{0:v}` to keep the default formatting of `v0`
warning: formatting may not be suitable for sub-register argument
--> /checkout/src/test/ui/asm/aarch64/type-check-3.rs:63:15
|
|
LL | asm!("{}", in(vreg_low16) 0f64);
| ^^ ---- for this argument
|
= help: use `{0:d}` to have the register formatted as `d0`
= help: or use `{0:v}` to keep the default formatting of `v0`
warning: formatting may not be suitable for sub-register argument
--> /checkout/src/test/ui/asm/aarch64/type-check-3.rs:66:15
|
|
LL | asm!("{0} {0}", in(reg) 0i16);
| ^^^ ^^^ ---- for this argument
|
= help: use `{0:w}` to have the register formatted as `w0`
= help: or use `{0:x}` to keep the default formatting of `x0`
warning: formatting may not be suitable for sub-register argument
--> /checkout/src/test/ui/asm/aarch64/type-check-3.rs:68:15
|
|
LL | asm!("{0} {0:x}", in(reg) 0i16);
| ^^^ ---- for this argument
|
= help: use `{0:w}` to have the register formatted as `w0`
= help: or use `{0:x}` to keep the default formatting of `x0`
error: type `i128` cannot be used with this register class
--> /checkout/src/test/ui/asm/aarch64/type-check-3.rs:73:28
|
|
LL | asm!("{}", in(reg) 0i128);
|
|
= note: register class `reg` supports these types: i8, i16, i32, i64, f32, f64
error: type `float64x2_t` cannot be used with this register class
|
|
LL | asm!("{}", in(reg) f64x2);
|
|
= note: register class `reg` supports these types: i8, i16, i32, i64, f32, f64
error: type `Simd256bit` cannot be used with this register class
|
|
LL | asm!("{}", in(vreg) f64x4);
|
|
= note: register class `vreg` supports these types: i8, i16, i32, i64, f32, f64, i8x8, i16x4, i32x2, i64x1, f32x2, f64x1, i8x16, i16x8, i32x4, i64x2, f32x4, f64x2
error: incompatible types for asm inout argument
|
|
LL | asm!("{:x}", inout(reg) 0u32 => val_f32);
| ^^^^ ^^^^^^^ type `f32`
| type `u32`
|
|
= note: asm inout arguments must have the same type, unless they are both pointers or integers of the same size
error: incompatible types for asm inout argument
|
|
LL | asm!("{:x}", inout(reg) 0u32 => val_ptr);
| ^^^^ ^^^^^^^ type `*mut u8`
| type `u32`
|
|
= note: asm inout arguments must have the same type, unless they are both pointers or integers of the same size
error: incompatible types for asm inout argument
|
|
LL | asm!("{:x}", inout(reg) main => val_u32);
| |
| type `fn()`
|
|
= note: asm inout arguments must have the same type, unless they are both pointers or integers of the same size
error: aborting due to 6 previous errors; 10 warnings emitted
------------------------------------------
Blessed that-one-aarch64-only test, it seems like it's the only only-* test that is affected by these changes. Lets try again
@bors r=estebank rollup=never
:pushpin: Commit caa3937e14c20ff91555af7cb108102ed0dc5220 has been approved by estebank
It is now in the queue for this repository.
:hourglass: Testing commit caa3937e14c20ff91555af7cb108102ed0dc5220 with merge 7c6fb70c1efe59fbf97066f1e7b756fe0cef5ef9...
:broken_heart: Test failed - checks-actions
The job dist-apple-various failed! Check out the build log: (web) (plain)
Click to see the possible cause of the failure (guessed by this bot)
Memory: 14 GB
System Firmware Version: VMW71.00V.13989454.B64.1906190538
Apple ROM Info: [MS_VM_CERT/SHA1/27d66596a61c48dd3dc7216fd715126e33f59ae7]Welcome to the Virtual Machine
SMC Version (system): 2.8f0
Serial Number (system): VMgqOoi6dxJZ
Provisioning UDID: 4203018E-580F-C1B5-9525-B745CECA79EB
hw.ncpu: 3
hw.byteorder: 1234
---
[RUSTC-TIMING] hashbrown test:false 2.334
[RUSTC-TIMING] panic_abort test:false 0.069
[RUSTC-TIMING] rustc_demangle test:false 1.133
Checking std v0.0.0 (/Users/runner/work/rust/rust/library/std)
error: internal compiler error: no warnings or errors encountered even though `delayed_good_path_bugs` issued
error: internal compiler error: trimmed_def_paths constructed
= note: delayed at 0: std::backtrace_rs::backtrace::libunwind::trace
at /rustc/7c6fb70c1efe59fbf97066f1e7b756fe0cef5ef9/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
1: std::backtrace_rs::backtrace::trace_unsynchronized
at /rustc/7c6fb70c1efe59fbf97066f1e7b756fe0cef5ef9/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
at /rustc/7c6fb70c1efe59fbf97066f1e7b756fe0cef5ef9/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
2: std::backtrace::Backtrace::create
at /rustc/7c6fb70c1efe59fbf97066f1e7b756fe0cef5ef9/library/std/src/backtrace.rs:333:13
3: std::backtrace::Backtrace::force_capture
at /rustc/7c6fb70c1efe59fbf97066f1e7b756fe0cef5ef9/library/std/src/backtrace.rs:314:9
4: <rustc_errors::Handler>::delay_good_path_bug::<&str>
5: rustc_middle::ty::print::pretty::trimmed_def_paths
6: rustc_query_system::query::plumbing::try_execute_query::<rustc_query_impl::plumbing::QueryCtxt, rustc_query_system::query::caches::ArenaCache<(), std::collections::hash::map::HashMap<rustc_span::def_id::DefId, rustc_span::symbol::Symbol, core::hash::BuildHasherDefault<rustc_hash::FxHasher>>>>
7: rustc_query_system::query::plumbing::get_query::<rustc_query_impl::queries::trimmed_def_paths, rustc_query_impl::plumbing::QueryCtxt>
8: <rustc_middle::ty::print::pretty::FmtPrinter as rustc_middle::ty::print::Printer>::print_def_path
9: <rustc_middle::ty::print::pretty::FmtPrinter as rustc_middle::ty::print::Printer>::print_type
10: <rustc_middle::ty::print::pretty::FmtPrinter as rustc_middle::ty::print::Printer>::print_type
11: <rustc_middle::ty::print::pretty::FmtPrinter as rustc_middle::ty::print::pretty::PrettyPrinter>::comma_sep::<rustc_middle::ty::Ty, core::iter::adapters::copied::Copied<core::slice::iter::Iter<rustc_middle::ty::Ty>>>
12: <rustc_middle::ty::print::pretty::FmtPrinter as rustc_middle::ty::print::pretty::PrettyPrinter>::pretty_fn_sig
13: <rustc_middle::ty::sty::FnSig as rustc_middle::ty::print::Print<rustc_middle::ty::print::pretty::FmtPrinter>>::print
14: <rustc_middle::ty::print::pretty::FmtPrinter as rustc_middle::ty::print::pretty::PrettyPrinter>::in_binder::<rustc_middle::ty::sty::FnSig>
15: <rustc_middle::ty::sty::Binder<rustc_middle::ty::sty::FnSig> as core::fmt::Display>::fmt
16: <rustc_lint::builtin::ClashingExternDeclarations as rustc_lint::passes::LateLintPass>::check_foreign_item
17: <rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_nested_foreign_item
18: rustc_hir::intravisit::walk_item::<rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedLateLintPass>>
19: <rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_nested_item
20: rustc_hir::intravisit::walk_block::<rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedLateLintPass>>
21: rustc_hir::intravisit::walk_expr::<rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedLateLintPass>>
22: rustc_hir::intravisit::walk_body::<rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedLateLintPass>>
23: <rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_nested_body
24: rustc_hir::intravisit::walk_item::<rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedLateLintPass>>
25: <rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_nested_item
26: rustc_hir::intravisit::walk_item::<rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedLateLintPass>>
27: <rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_nested_item
28: rustc_hir::intravisit::walk_item::<rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedLateLintPass>>
29: <rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_nested_item
30: rustc_hir::intravisit::walk_item::<rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedLateLintPass>>
31: <rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_nested_item
32: rustc_hir::intravisit::walk_item::<rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedLateLintPass>>
33: <rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_nested_item
34: rustc_lint::late::late_lint_crate::<rustc_lint::BuiltinCombinedLateLintPass>
35: <rustc_session::session::Session>::time::<(), rustc_lint::late::check_crate<rustc_lint::BuiltinCombinedLateLintPass, rustc_interface::passes::analysis::{closure#5}::{closure#1}::{closure#2}::{closure#0}::{closure#0}>::{closure#0}::{closure#0}>
36: <rustc_session::session::Session>::time::<(), rustc_interface::passes::analysis::{closure#5}::{closure#1}::{closure#2}::{closure#0}>
37: <core::panic::unwind_safe::AssertUnwindSafe<rustc_interface::passes::analysis::{closure#5}::{closure#1}> as core::ops::function::FnOnce<()>>::call_once
38: <rustc_session::session::Session>::time::<(), rustc_interface::passes::analysis::{closure#5}>
40: rustc_query_system::query::plumbing::try_execute_query::<rustc_query_impl::plumbing::QueryCtxt, rustc_query_system::query::caches::DefaultCache<(), core::result::Result<(), rustc_errors::ErrorGuaranteed>>>
41: rustc_query_system::query::plumbing::get_query::<rustc_query_impl::queries::analysis, rustc_query_impl::plumbing::QueryCtxt>
42: <rustc_interface::passes::QueryContext>::enter::<rustc_driver::run_compiler::{closure#1}::{closure#2}::{closure#3}, core::result::Result<(), rustc_errors::ErrorGuaranteed>>
43: <rustc_interface::interface::Compiler>::enter::<rustc_driver::run_compiler::{closure#1}::{closure#2}, core::result::Result<core::option::Option<rustc_interface::queries::Linker>, rustc_errors::ErrorGuaranteed>>
43: <rustc_interface::interface::Compiler>::enter::<rustc_driver::run_compiler::{closure#1}::{closure#2}, core::result::Result<core::option::Option<rustc_interface::queries::Linker>, rustc_errors::ErrorGuaranteed>>
44: rustc_span::with_source_map::<core::result::Result<(), rustc_errors::ErrorGuaranteed>, rustc_interface::interface::create_compiler_and_run<core::result::Result<(), rustc_errors::ErrorGuaranteed>, rustc_driver::run_compiler::{closure#1}>::{closure#1}>
45: rustc_interface::interface::create_compiler_and_run::<core::result::Result<(), rustc_errors::ErrorGuaranteed>, rustc_driver::run_compiler::{closure#1}>
46: <scoped_tls::ScopedKey<rustc_span::SessionGlobals>>::set::<rustc_interface::interface::run_compiler<core::result::Result<(), rustc_errors::ErrorGuaranteed>, rustc_driver::run_compiler::{closure#1}>::{closure#0}, core::result::Result<(), rustc_errors::ErrorGuaranteed>>
47: std::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<core::result::Result<(), rustc_errors::ErrorGuaranteed>, rustc_driver::run_compiler::{closure#1}>::{closure#0}, core::result::Result<(), rustc_errors::ErrorGuaranteed>>::{closure#0}, core::result::Result<(), rustc_errors::ErrorGuaranteed>>
48: <<std::thread::Builder>::spawn_unchecked_<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<core::result::Result<(), rustc_errors::ErrorGuaranteed>, rustc_driver::run_compiler::{closure#1}>::{closure#0}, core::result::Result<(), rustc_errors::ErrorGuaranteed>>::{closure#0}, core::result::Result<(), rustc_errors::ErrorGuaranteed>>::{closure#1} as core::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
49: <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once
at /rustc/7c6fb70c1efe59fbf97066f1e7b756fe0cef5ef9/library/alloc/src/boxed.rs:1938:9
50: <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once
at /rustc/7c6fb70c1efe59fbf97066f1e7b756fe0cef5ef9/library/alloc/src/boxed.rs:1938:9
at /rustc/7c6fb70c1efe59fbf97066f1e7b756fe0cef5ef9/library/std/src/sys/unix/thread.rs:108:17
52: __pthread_start
thread 'rustc' panicked at 'Box<dyn Any>', compiler/rustc_errors/src/lib.rs:1536:13
stack backtrace:
0: 0x117460d02 - std::backtrace_rs::backtrace::libunwind::trace::hcc58c68f8950d453
at /rustc/7c6fb70c1efe59fbf97066f1e7b756fe0cef5ef9/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
1: 0x117460d02 - std::backtrace_rs::backtrace::trace_unsynchronized::h89ef3acc893735f0
at /rustc/7c6fb70c1efe59fbf97066f1e7b756fe0cef5ef9/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
2: 0x117460d02 - std::sys_common::backtrace::_print_fmt::h004894c8c52eec26
at /rustc/7c6fb70c1efe59fbf97066f1e7b756fe0cef5ef9/library/std/src/sys_common/backtrace.rs:66:5
3: 0x117460d02 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h3cfa4f7a71d2437f
at /rustc/7c6fb70c1efe59fbf97066f1e7b756fe0cef5ef9/library/std/src/sys_common/backtrace.rs:45:22
4: 0x1174b848a - core::fmt::write::h4eda99704eb3ee0b
at /rustc/7c6fb70c1efe59fbf97066f1e7b756fe0cef5ef9/library/core/src/fmt/mod.rs:1209:17
5: 0x117452c5c - std::io::Write::write_fmt::h7681cecabaf07de5
at /rustc/7c6fb70c1efe59fbf97066f1e7b756fe0cef5ef9/library/std/src/io/mod.rs:1679:15
6: 0x117463d9b - std::sys_common::backtrace::_print::hb1676fc46ce7061a
at /rustc/7c6fb70c1efe59fbf97066f1e7b756fe0cef5ef9/library/std/src/sys_common/backtrace.rs:48:5
7: 0x117463d9b - std::sys_common::backtrace::print::h946b6115f331cf87
at /rustc/7c6fb70c1efe59fbf97066f1e7b756fe0cef5ef9/library/std/src/sys_common/backtrace.rs:35:9
8: 0x117463d9b - std::panicking::default_hook::{{closure}}::h8aaeba06950cbc70
at /rustc/7c6fb70c1efe59fbf97066f1e7b756fe0cef5ef9/library/std/src/panicking.rs:267:22
9: 0x117463aa7 - std::panicking::default_hook::he83f4ae88a324c2c
at /rustc/7c6fb70c1efe59fbf97066f1e7b756fe0cef5ef9/library/std/src/panicking.rs:286:9
10: 0x10e280bda - rustc_driver[fd3fd07d2149785b]::DEFAULT_HOOK::{closure#0}::{closure#0}
11: 0x11746450a - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h2ae3e23cca3af321
at /rustc/7c6fb70c1efe59fbf97066f1e7b756fe0cef5ef9/library/alloc/src/boxed.rs:1952:9
12: 0x11746450a - std::panicking::rust_panic_with_hook::hcfabd7aface28828
at /rustc/7c6fb70c1efe59fbf97066f1e7b756fe0cef5ef9/library/std/src/panicking.rs:673:13
13: 0x112c4a717 - std[7680b48f5a2a7111]::panicking::begin_panic::<rustc_errors[c7433642c6a85f5b]::ExplicitBug>::{closure#0}
14: 0x112c48a39 - std[7680b48f5a2a7111]::sys_common::backtrace::__rust_end_short_backtrace::<std[7680b48f5a2a7111]::panicking::begin_panic<rustc_errors[c7433642c6a85f5b]::ExplicitBug>::{closure#0}, !>
15: 0x112ff7319 - std[7680b48f5a2a7111]::panicking::begin_panic::<rustc_errors[c7433642c6a85f5b]::ExplicitBug>
16: 0x112c396e9 - std[7680b48f5a2a7111]::panic::panic_any::<rustc_errors[c7433642c6a85f5b]::ExplicitBug>
17: 0x112c3dec5 - <rustc_errors[c7433642c6a85f5b]::HandlerInner as core[d9110ab86072c25c]::ops::drop::Drop>::drop
18: 0x10e2b38ba - core[d9110ab86072c25c]::ptr::drop_in_place::<rustc_session[f2c565e31c84d7ab]::parse::ParseSess>
19: 0x10e2b675b - <alloc[113290240ff174e3]::rc::Rc<rustc_session[f2c565e31c84d7ab]::session::Session> as core[d9110ab86072c25c]::ops::drop::Drop>::drop
20: 0x10e2fece2 - core[d9110ab86072c25c]::ptr::drop_in_place::<rustc_interface[203975543703cfb1]::interface::Compiler>
21: 0x10e2fcbe0 - rustc_span[91581a51aa2052fe]::with_source_map::<core[d9110ab86072c25c]::result::Result<(), rustc_errors[c7433642c6a85f5b]::ErrorGuaranteed>, rustc_interface[203975543703cfb1]::interface::create_compiler_and_run<core[d9110ab86072c25c]::result::Result<(), rustc_errors[c7433642c6a85f5b]::ErrorGuaranteed>, rustc_driver[fd3fd07d2149785b]::run_compiler::{closure#1}>::{closure#1}>
22: 0x10e288160 - rustc_interface[203975543703cfb1]::interface::create_compiler_and_run::<core[d9110ab86072c25c]::result::Result<(), rustc_errors[c7433642c6a85f5b]::ErrorGuaranteed>, rustc_driver[fd3fd07d2149785b]::run_compiler::{closure#1}>
23: 0x10e2f12b5 - <scoped_tls[2785d8421e1cf6df]::ScopedKey<rustc_span[91581a51aa2052fe]::SessionGlobals>>::set::<rustc_interface[203975543703cfb1]::interface::run_compiler<core[d9110ab86072c25c]::result::Result<(), rustc_errors[c7433642c6a85f5b]::ErrorGuaranteed>, rustc_driver[fd3fd07d2149785b]::run_compiler::{closure#1}>::{closure#0}, core[d9110ab86072c25c]::result::Result<(), rustc_errors[c7433642c6a85f5b]::ErrorGuaranteed>>
24: 0x10e2bc73a - std[7680b48f5a2a7111]::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface[203975543703cfb1]::util::run_in_thread_pool_with_globals<rustc_interface[203975543703cfb1]::interface::run_compiler<core[d9110ab86072c25c]::result::Result<(), rustc_errors[c7433642c6a85f5b]::ErrorGuaranteed>, rustc_driver[fd3fd07d2149785b]::run_compiler::{closure#1}>::{closure#0}, core[d9110ab86072c25c]::result::Result<(), rustc_errors[c7433642c6a85f5b]::ErrorGuaranteed>>::{closure#0}, core[d9110ab86072c25c]::result::Result<(), rustc_errors[c7433642c6a85f5b]::ErrorGuaranteed>>
25: 0x10e2c0a28 - <<std[7680b48f5a2a7111]::thread::Builder>::spawn_unchecked_<rustc_interface[203975543703cfb1]::util::run_in_thread_pool_with_globals<rustc_interface[203975543703cfb1]::interface::run_compiler<core[d9110ab86072c25c]::result::Result<(), rustc_errors[c7433642c6a85f5b]::ErrorGuaranteed>, rustc_driver[fd3fd07d2149785b]::run_compiler::{closure#1}>::{closure#0}, core[d9110ab86072c25c]::result::Result<(), rustc_errors[c7433642c6a85f5b]::ErrorGuaranteed>>::{closure#0}, core[d9110ab86072c25c]::result::Result<(), rustc_errors[c7433642c6a85f5b]::ErrorGuaranteed>>::{closure#1} as core[d9110ab86072c25c]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
26: 0x11746d347 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h4d01bfa5767ab76d
at /rustc/7c6fb70c1efe59fbf97066f1e7b756fe0cef5ef9/library/alloc/src/boxed.rs:1938:9
27: 0x11746d347 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h36a598851758cd97
at /rustc/7c6fb70c1efe59fbf97066f1e7b756fe0cef5ef9/library/alloc/src/boxed.rs:1938:9
28: 0x11746d347 - std::sys::unix::thread::Thread::new::thread_start::h9ae618be94cf61eb
at /rustc/7c6fb70c1efe59fbf97066f1e7b756fe0cef5ef9/library/std/src/sys/unix/thread.rs:108:17
29: 0x7fff204388fc - __pthread_start
note: the compiler unexpectedly panicked. this is a bug.
note: we would appreciate a bug report: https://github.com/rust-lang/rust/issues/new?labels=C-bug%2C+I-ICE%2C+T-compiler&template=ice.md
note: rustc 1.66.0-nightly (7c6fb70c1 2022-10-01) running on x86_64-apple-darwin
note: compiler flags: --crate-type dylib --crate-type rlib -C prefer-dynamic -C opt-level=3 -C embed-bitcode=no -C split-debuginfo=unpacked -C codegen-units=1 -C debuginfo=1 -Z unstable-options -C linker=/Users/runner/work/rust/rust/clang+llvm-14.0.5-x86_64-apple-darwin/bin/clang -C symbol-mangling-version=legacy -Z unstable-options -Z unstable-options -Z macro-backtrace -Z osx-rpath-install-name -C link-args=-Wl,-rpath,@loader_path/../lib -C split-debuginfo=unpacked -C prefer-dynamic -C embed-bitcode=yes -Z crate-attr=doc(html_root_url="https://doc.rust-lang.org/nightly/") -Z binary-dep-depinfo -Z force-unstable-if-unmarked
note: some of the compiler flags provided by cargo are hidden
query stack during panic:
end of query stack
@bors delegate+
Feel free to move this PR along yourself
:v: @WaffleLapkin can now approve this pull request
@bors r=estebank
:pushpin: Commit b5b3ffe3fc9cfb524a6432ec60a0fc95c514d2e1 has been approved by estebank
It is now in the queue for this repository.
:hourglass: Testing commit b5b3ffe3fc9cfb524a6432ec60a0fc95c514d2e1 with merge 744e397d8855f7da87d70aa8d0bd9e0f5f0b51a1...
:sunny: Test successful - checks-actions Approved by: estebank Pushing 744e397d8855f7da87d70aa8d0bd9e0f5f0b51a1 to master...
Finished benchmarking commit (744e397d8855f7da87d70aa8d0bd9e0f5f0b51a1): comparison URL.
Overall result: ❌✅ regressions and improvements - ACTION NEEDED
Next Steps: If you can justify the regressions found in this perf run, please indicate this with @rustbot label: +perf-regression-triaged along with sufficient written justification. If you cannot justify the regressions please open an issue or create a new PR that fixes the regressions, add a comment linking to the newly created issue or PR, and then add the perf-regression-triaged label to this PR.
@rustbot label: +perf-regression cc @rust-lang/wg-compiler-performance
Instruction count
This is a highly reliable metric that was used to determine the overall result at the top of this comment.
| mean[^1] | range | count[^2] | |
|---|---|---|---|
| Regressions ❌ (primary) |
- | - | 0 |
| Regressions ❌ (secondary) |
1.0% | [0.9%, 1.0%] | 2 |
| Improvements ✅ (primary) |
-0.3% | [-0.3%, -0.2%] | 3 |
| Improvements ✅ (secondary) |
-0.9% | [-1.4%, -0.3%] | 8 |
| All ❌✅ (primary) | -0.3% | [-0.3%, -0.2%] | 3 |
Max RSS (memory usage)
Results
This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.
| mean[^1] | range | count[^2] | |
|---|---|---|---|
| Regressions ❌ (primary) |
- | - | 0 |
| Regressions ❌ (secondary) |
4.1% | [3.6%, 4.6%] | 2 |
| Improvements ✅ (primary) |
-3.0% | [-3.3%, -2.7%] | 2 |
| Improvements ✅ (secondary) |
-3.1% | [-5.8%, -1.3%] | 5 |
| All ❌✅ (primary) | -3.0% | [-3.3%, -2.7%] | 2 |
Cycles
Results
This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.
| mean[^1] | range | count[^2] | |
|---|---|---|---|
| Regressions ❌ (primary) |
- | - | 0 |
| Regressions ❌ (secondary) |
- | - | 0 |
| Improvements ✅ (primary) |
-2.6% | [-2.6%, -2.6%] | 1 |
| Improvements ✅ (secondary) |
-3.3% | [-3.6%, -3.0%] | 2 |
| All ❌✅ (primary) | -2.6% | [-2.6%, -2.6%] | 1 |
[^1]: the arithmetic mean of the percent change [^2]: number of relevant changes
The tiny icount regressions are matched or exceeded by the tiny icount improvements. This seems fine.
@rustbot label: +perf-regression-triaged