Skip to content

parallel compiler: panic output and compiler warnings are interleaved #119789

Closed
@matthiaskrgr

Description

@matthiaskrgr
warning: the feature `rustc_attrs` is internal to the compiler or standard library
 --> /tmp/glacier2/pile/F40DCAD92D63A31833DFDD34A9C6A7CC561B1F370CA6436C0A30123FEAFDA367.rs:6:12
  |
6 | #![feature(rustc_attrs)]
  |            ^^^^^^^^^^^
  |
  = note: using it is strongly discouraged
  = note: `#[warn(internal_features)]` on by default

thread 'rustc' panicked at /rustc/ca663b06c5492ac2dde5e53cd11579fa8e4d68bd/compiler/rustc_abi/src/layout.rs:410:17:
257 > 255
stack backtrace:
warning: struct `Foo` is never constructed
 --> /tmp/glacier2/pile/F40DCAD92D63A31833DFDD34A9C6A7CC561B1F370CA6436C0A30123FEAFDA367.rs:9:8
  |
9 | struct Foo(i8);
  |        ^^^
  |
  = note: `#[warn(dead_code)]` on by default

warning: constant `FOO` is never used
  --> /tmp/glacier2/pile/F40DCAD92D63A31833DFDD34A9C6A7CC561B1F370CA6436C0A30123FEAFDA367.rs:13:7
   |
13 | const FOO: Foo = unsafe { Foo(1) };
   |       ^^^

warning: function `Ref` is never used
  --> /tmp/glacier2/pile/F40DCAD92D63A31833DFDD34A9C6A7CC561B1F370CA6436C0A30123FEAFDA367.rs:15:4
   |
15 | fn Ref() {}
   |    ^^^

   0:     0x7f60a0f8c7e6 - std::backtrace_rs::backtrace::libunwind::trace::h92488e4bb2264071
                               at /rustc/ca663b06c5492ac2dde5e53cd11579fa8e4d68bd/library/std/src/../../backtrace/src/backtrace/libunwind.rs:104:5
   1:     0x7f60a0f8c7e6 - std::backtrace_rs::backtrace::trace_unsynchronized::h97e02be157039c96
                               at /rustc/ca663b06c5492ac2dde5e53cd11579fa8e4d68bd/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
   2:     0x7f60a0f8c7e6 - std::sys_common::backtrace::_print_fmt::h89a2b01cb3c33339
                               at /rustc/ca663b06c5492ac2dde5e53cd11579fa8e4d68bd/library/std/src/sys_common/backtrace.rs:68:5
   3:     0x7f60a0f8c7e6 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::ha79772b33774e7af
                               at /rustc/ca663b06c5492ac2dde5e53cd11579fa8e4d68bd/library/std/src/sys_common/backtrace.rs:44:22
   4:     0x7f60a0fdeed0 - core::fmt::rt::Argument::fmt::h6d2228239beb9437
                               at /rustc/ca663b06c5492ac2dde5e53cd11579fa8e4d68bd/library/core/src/fmt/rt.rs:142:9
   5:     0x7f60a0fdeed0 - core::fmt::write::h9bcb8c2e898ce4b2
                               at /rustc/ca663b06c5492ac2dde5e53cd11579fa8e4d68bd/library/core/src/fmt/mod.rs:1120:17
   6:     0x7f60a0f801df - std::io::Write::write_fmt::he7ba80727a5f8d75
                               at /rustc/ca663b06c5492ac2dde5e53cd11579fa8e4d68bd/library/std/src/io/mod.rs:1810:15
   7:     0x7f60a0f8c5c4 - std::sys_common::backtrace::_print::h9bd2ce6833902b42
                               at /rustc/ca663b06c5492ac2dde5e53cd11579fa8e4d68bd/library/std/src/sys_common/backtrace.rs:47:5
   8:     0x7f60a0f8c5c4 - std::sys_common::backtrace::print::h09be6e715f2e0cc6
                               at /rustc/ca663b06c5492ac2dde5e53cd11579fa8e4d68bd/library/std/src/sys_common/backtrace.rs:34:9
   9:     0x7f60a0f8f357 - std::panicking::default_hook::{{closure}}::h81ac1ebc9ea0357f
  10:     0x7f60a0f8f0b9 - std::panicking::default_hook::hfc7d2f2254fbbaf6
                               at /rustc/ca663b06c5492ac2dde5e53cd11579fa8e4d68bd/library/std/src/panicking.rs:292:9
  11:     0x7f60a3d4e03c - std[e13db6861558cd66]::panicking::update_hook::<alloc[74e4b4cff019550b]::boxed::Box<rustc_driver_impl[f3f951fd75793e59]::install_ice_hook::{closure#0}>>::{closure#0}
  12:     0x7f60a0f8faa6 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h864b8f962a42f35c
                               at /rustc/ca663b06c5492ac2dde5e53cd11579fa8e4d68bd/library/alloc/src/boxed.rs:2030:9
  13:     0x7f60a0f8faa6 - std::panicking::rust_panic_with_hook::he5915ec9da668475
                               at /rustc/ca663b06c5492ac2dde5e53cd11579fa8e4d68bd/library/std/src/panicking.rs:783:13
  14:     0x7f60a0f8f7f2 - std::panicking::begin_panic_handler::{{closure}}::h8912c4af58ae3d2d
                               at /rustc/ca663b06c5492ac2dde5e53cd11579fa8e4d68bd/library/std/src/panicking.rs:657:13
  15:     0x7f60a0f8cce6 - std::sys_common::backtrace::__rust_end_short_backtrace::hfbc35781d5527627
                               at /rustc/ca663b06c5492ac2dde5e53cd11579fa8e4d68bd/library/std/src/sys_common/backtrace.rs:171:18
  16:     0x7f60a0f8f550 - rust_begin_unwind
                               at /rustc/ca663b06c5492ac2dde5e53cd11579fa8e4d68bd/library/std/src/panicking.rs:645:5
  17:     0x7f60a0fdb5d5 - core::panicking::panic_fmt::hc3a8fce14bfb5d21
                               at /rustc/ca663b06c5492ac2dde5e53cd11579fa8e4d68bd/library/core/src/panicking.rs:72:14
  18:     0x7f60a5792d85 - rustc_ty_utils[21da8a968006a7ee]::layout::layout_of_uncached
  19:     0x7f60a57877d2 - rustc_ty_utils[21da8a968006a7ee]::layout::layout_of
  20:     0x7f60a5787751 - rustc_query_impl[ea3ef81316e32b43]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[ea3ef81316e32b43]::query_impl::layout_of::dynamic_query::{closure#2}::{closure#0}, rustc_middle[f3f21a744f51ef87]::query::erase::Erased<[u8; 16usize]>>
  21:     0x7f60a5786a7a - rustc_query_system[60e151975146506c]::query::plumbing::try_execute_query::<rustc_query_impl[ea3ef81316e32b43]::DynamicConfig<rustc_query_system[60e151975146506c]::query::caches::DefaultCache<rustc_middle[f3f21a744f51ef87]::ty::ParamEnvAnd<rustc_middle[f3f21a744f51ef87]::ty::Ty>, rustc_middle[f3f21a744f51ef87]::query::erase::Erased<[u8; 16usize]>>, false, true, false>, rustc_query_impl[ea3ef81316e32b43]::plumbing::QueryCtxt, false>
  22:     0x7f60a57866f8 - rustc_query_impl[ea3ef81316e32b43]::query_impl::layout_of::get_query_non_incr::__rust_end_short_backtrace
  23:     0x7f60a5503efa - rustc_middle[f3f21a744f51ef87]::query::plumbing::query_get_at::<rustc_query_system[60e151975146506c]::query::caches::DefaultCache<rustc_middle[f3f21a744f51ef87]::ty::ParamEnvAnd<rustc_middle[f3f21a744f51ef87]::ty::Ty>, rustc_middle[f3f21a744f51ef87]::query::erase::Erased<[u8; 16usize]>>>
  24:     0x7f60a5db7454 - rustc_const_eval[5bc80446137b6c36]::const_eval::eval_queries::eval_body_using_ecx
  25:     0x7f60a5db5401 - rustc_const_eval[5bc80446137b6c36]::const_eval::eval_queries::eval_in_interpreter
  26:     0x7f60a5db4fee - rustc_const_eval[5bc80446137b6c36]::const_eval::eval_queries::eval_to_allocation_raw_provider
  27:     0x7f60a5db4e76 - rustc_query_impl[ea3ef81316e32b43]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[ea3ef81316e32b43]::query_impl::eval_to_allocation_raw::dynamic_query::{closure#2}::{closure#0}, rustc_middle[f3f21a744f51ef87]::query::erase::Erased<[u8; 24usize]>>
  28:     0x7f60a5db3d4b - rustc_query_system[60e151975146506c]::query::plumbing::try_execute_query::<rustc_query_impl[ea3ef81316e32b43]::DynamicConfig<rustc_query_system[60e151975146506c]::query::caches::DefaultCache<rustc_middle[f3f21a744f51ef87]::ty::ParamEnvAnd<rustc_middle[f3f21a744f51ef87]::mir::interpret::GlobalId>, rustc_middle[f3f21a744f51ef87]::query::erase::Erased<[u8; 24usize]>>, false, false, false>, rustc_query_impl[ea3ef81316e32b43]::plumbing::QueryCtxt, false>
  29:     0x7f60a5db3730 - rustc_query_impl[ea3ef81316e32b43]::query_impl::eval_to_allocation_raw::get_query_non_incr::__rust_end_short_backtrace
  30:     0x7f60a3339e68 - rustc_const_eval[5bc80446137b6c36]::const_eval::eval_queries::eval_to_const_value_raw_provider
  31:     0x7f60a5db44ce - rustc_query_impl[ea3ef81316e32b43]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[ea3ef81316e32b43]::query_impl::eval_to_const_value_raw::dynamic_query::{closure#2}::{closure#0}, rustc_middle[f3f21a744f51ef87]::query::erase::Erased<[u8; 24usize]>>
  32:     0x7f60a5db3c11 - rustc_query_system[60e151975146506c]::query::plumbing::try_execute_query::<rustc_query_impl[ea3ef81316e32b43]::DynamicConfig<rustc_query_system[60e151975146506c]::query::caches::DefaultCache<rustc_middle[f3f21a744f51ef87]::ty::ParamEnvAnd<rustc_middle[f3f21a744f51ef87]::mir::interpret::GlobalId>, rustc_middle[f3f21a744f51ef87]::query::erase::Erased<[u8; 24usize]>>, false, false, false>, rustc_query_impl[ea3ef81316e32b43]::plumbing::QueryCtxt, false>
  33:     0x7f60a5db3830 - rustc_query_impl[ea3ef81316e32b43]::query_impl::eval_to_const_value_raw::get_query_non_incr::__rust_end_short_backtrace
  34:     0x7f60a333a58a - rustc_const_eval[5bc80446137b6c36]::const_eval::eval_queries::eval_to_const_value_raw_provider
  35:     0x7f60a5db44ce - rustc_query_impl[ea3ef81316e32b43]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[ea3ef81316e32b43]::query_impl::eval_to_const_value_raw::dynamic_query::{closure#2}::{closure#0}, rustc_middle[f3f21a744f51ef87]::query::erase::Erased<[u8; 24usize]>>
  36:     0x7f60a5db3c11 - rustc_query_system[60e151975146506c]::query::plumbing::try_execute_query::<rustc_query_impl[ea3ef81316e32b43]::DynamicConfig<rustc_query_system[60e151975146506c]::query::caches::DefaultCache<rustc_middle[f3f21a744f51ef87]::ty::ParamEnvAnd<rustc_middle[f3f21a744f51ef87]::mir::interpret::GlobalId>, rustc_middle[f3f21a744f51ef87]::query::erase::Erased<[u8; 24usize]>>, false, false, false>, rustc_query_impl[ea3ef81316e32b43]::plumbing::QueryCtxt, false>
  37:     0x7f60a5db3830 - rustc_query_impl[ea3ef81316e32b43]::query_impl::eval_to_const_value_raw::get_query_non_incr::__rust_end_short_backtrace
  38:     0x7f60a577ffee - <rustc_middle[f3f21a744f51ef87]::query::plumbing::TyCtxtEnsure>::const_eval_poly
  39:     0x7f60a5773826 - <rustc_lint[aceebb161845a5da]::BuiltinCombinedModuleLateLintPass as rustc_lint[aceebb161845a5da]::passes::LateLintPass>::check_item
  40:     0x7f60a53d44a1 - <rustc_lint[aceebb161845a5da]::late::LateContextAndPass<rustc_lint[aceebb161845a5da]::BuiltinCombinedModuleLateLintPass> as rustc_hir[bb37b1f91ca307a0]::intravisit::Visitor>::visit_nested_item
  41:     0x7f60a53d3d72 - rustc_lint[aceebb161845a5da]::lint_mod
  42:     0x7f60a53d3ae9 - rustc_query_impl[ea3ef81316e32b43]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[ea3ef81316e32b43]::query_impl::lint_mod::dynamic_query::{closure#2}::{closure#0}, rustc_middle[f3f21a744f51ef87]::query::erase::Erased<[u8; 0usize]>>
  43:     0x7f60a5c3080f - rustc_query_system[60e151975146506c]::query::plumbing::try_execute_query::<rustc_query_impl[ea3ef81316e32b43]::DynamicConfig<rustc_query_system[60e151975146506c]::query::caches::DefaultCache<rustc_span[b49aba93e0aaec5a]::def_id::LocalModDefId, rustc_middle[f3f21a744f51ef87]::query::erase::Erased<[u8; 0usize]>>, false, false, false>, rustc_query_impl[ea3ef81316e32b43]::plumbing::QueryCtxt, false>
  44:     0x7f60a5c2ef03 - rustc_query_impl[ea3ef81316e32b43]::query_impl::lint_mod::get_query_non_incr::__rust_end_short_backtrace
  45:     0x7f60a40aeb9d - rayon[803db88657665571]::iter::plumbing::bridge_producer_consumer::helper::<rayon[803db88657665571]::slice::IterProducer<rustc_hir[bb37b1f91ca307a0]::hir_id::OwnerId>, rayon[803db88657665571]::iter::for_each::ForEachConsumer<rustc_data_structures[b3be3651cdae3ab9]::sync::parallel::enabled::par_for_each_in<&rustc_hir[bb37b1f91ca307a0]::hir_id::OwnerId, &[rustc_hir[bb37b1f91ca307a0]::hir_id::OwnerId], <rustc_middle[f3f21a744f51ef87]::hir::map::Map>::par_for_each_module<rustc_lint[aceebb161845a5da]::late::check_crate::{closure#1}::{closure#0}::{closure#0}>::{closure#0}>::{closure#0}::{closure#0}>>
  46:     0x7f60a5c2ecb9 - rustc_lint[aceebb161845a5da]::late::check_crate::{closure#1}
  47:     0x7f60a40b5f37 - rayon_core[f6201257676286fc]::join::join_context::call_b::<core[6f83431ac1278f74]::option::Option<rustc_data_structures[b3be3651cdae3ab9]::marker::FromDyn<()>>, rayon_core[f6201257676286fc]::join::join::call<core[6f83431ac1278f74]::option::Option<rustc_data_structures[b3be3651cdae3ab9]::marker::FromDyn<()>>, rustc_data_structures[b3be3651cdae3ab9]::sync::parallel::enabled::join<rustc_lint[aceebb161845a5da]::late::check_crate::{closure#0}, rustc_lint[aceebb161845a5da]::late::check_crate::{closure#1}, (), ()>::{closure#0}::{closure#1}>::{closure#0}>::{closure#0}
  48:     0x7f60a40b595b - rayon_core[f6201257676286fc]::join::join_context::<rayon_core[f6201257676286fc]::join::join::call<core[6f83431ac1278f74]::option::Option<rustc_data_structures[b3be3651cdae3ab9]::marker::FromDyn<()>>, rustc_data_structures[b3be3651cdae3ab9]::sync::parallel::enabled::join<rustc_lint[aceebb161845a5da]::late::check_crate::{closure#0}, rustc_lint[aceebb161845a5da]::late::check_crate::{closure#1}, (), ()>::{closure#0}::{closure#0}>::{closure#0}, rayon_core[f6201257676286fc]::join::join::call<core[6f83431ac1278f74]::option::Option<rustc_data_structures[b3be3651cdae3ab9]::marker::FromDyn<()>>, rustc_data_structures[b3be3651cdae3ab9]::sync::parallel::enabled::join<rustc_lint[aceebb161845a5da]::late::check_crate::{closure#0}, rustc_lint[aceebb161845a5da]::late::check_crate::{closure#1}, (), ()>::{closure#0}::{closure#1}>::{closure#0}, core[6f83431ac1278f74]::option::Option<rustc_data_structures[b3be3651cdae3ab9]::marker::FromDyn<()>>, core[6f83431ac1278f74]::option::Option<rustc_data_structures[b3be3651cdae3ab9]::marker::FromDyn<()>>>::{closure#0}
  49:     0x7f60a5c2e514 - rustc_lint[aceebb161845a5da]::late::check_crate
  50:     0x7f60a408565a - <rayon_core[f6201257676286fc]::job::HeapJob<<rayon_core[f6201257676286fc]::scope::Scope>::spawn<rustc_interface[1dfaeeba2be2315d]::passes::analysis::{closure#6}::{closure#2}::{closure#0}::{closure#2}::{closure#1}::{closure#0}::{closure#3}>::{closure#0}> as rayon_core[f6201257676286fc]::job::Job>::execute
  51:     0x7f60a3957c75 - <rayon_core[f6201257676286fc]::registry::WorkerThread>::wait_until_cold
  52:     0x7f60a3954723 - <rayon_core[f6201257676286fc]::registry::ThreadBuilder>::run
  53:     0x7f60a3d4fd67 - <<crossbeam_utils[f8f63e1b9ece28c6]::thread::ScopedThreadBuilder>::spawn<<rayon_core[f6201257676286fc]::ThreadPoolBuilder>::build_scoped<rustc_interface[1dfaeeba2be2315d]::util::run_in_thread_pool_with_globals<rustc_interface[1dfaeeba2be2315d]::interface::run_compiler<core[6f83431ac1278f74]::result::Result<(), rustc_span[b49aba93e0aaec5a]::ErrorGuaranteed>, rustc_driver_impl[f3f951fd75793e59]::run_compiler::{closure#0}>::{closure#0}, core[6f83431ac1278f74]::result::Result<(), rustc_span[b49aba93e0aaec5a]::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#0}, rustc_interface[1dfaeeba2be2315d]::util::run_in_thread_pool_with_globals<rustc_interface[1dfaeeba2be2315d]::interface::run_compiler<core[6f83431ac1278f74]::result::Result<(), rustc_span[b49aba93e0aaec5a]::ErrorGuaranteed>, rustc_driver_impl[f3f951fd75793e59]::run_compiler::{closure#0}>::{closure#0}, core[6f83431ac1278f74]::result::Result<(), rustc_span[b49aba93e0aaec5a]::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#1}, core[6f83431ac1278f74]::result::Result<(), rustc_span[b49aba93e0aaec5a]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, ()>::{closure#0} as core[6f83431ac1278f74]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
  54:     0x7f60a3d4929e - std[e13db6861558cd66]::sys_common::backtrace::__rust_begin_short_backtrace::<alloc[74e4b4cff019550b]::boxed::Box<dyn core[6f83431ac1278f74]::ops::function::FnOnce<(), Output = ()> + core[6f83431ac1278f74]::marker::Send>, ()>
  55:     0x7f60a3d4fa03 - <<std[e13db6861558cd66]::thread::Builder>::spawn_unchecked_<alloc[74e4b4cff019550b]::boxed::Box<dyn core[6f83431ac1278f74]::ops::function::FnOnce<(), Output = ()> + core[6f83431ac1278f74]::marker::Send>, ()>::{closure#1} as core[6f83431ac1278f74]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
  56:     0x7f60a0f999d5 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hb53ed9031b4e247a
                               at /rustc/ca663b06c5492ac2dde5e53cd11579fa8e4d68bd/library/alloc/src/boxed.rs:2016:9
  57:     0x7f60a0f999d5 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hfb9a49e9b795584d
                               at /rustc/ca663b06c5492ac2dde5e53cd11579fa8e4d68bd/library/alloc/src/boxed.rs:2016:9
  58:     0x7f60a0f999d5 - std::sys::unix::thread::Thread::new::thread_start::h4db5c6ec45610220
                               at /rustc/ca663b06c5492ac2dde5e53cd11579fa8e4d68bd/library/std/src/sys/unix/thread.rs:108:17
  59:     0x7f60a0d859eb - <unknown>
  60:     0x7f60a0e097cc - <unknown>
  61:                0x0 - <unknown>

error: the compiler unexpectedly panicked. this is a bug.

note: using internal features is not supported and expected to cause internal compiler errors when used incorrectly

note: please attach the file at `/home/matthias/vcs/github/icemaker/rustc-ice-2024-01-09T23_43_35-1857206.txt` to your bug report

note: compiler flags: --crate-type lib -Z threads=16

query stack during panic:
#0 [layout_of] computing layout of `Foo`
#1 [eval_to_allocation_raw] const-evaluating + checking `FOO`
#2 [eval_to_const_value_raw] simplifying constant for the type system `FOO`
#3 [eval_to_const_value_raw] simplifying constant for the type system `FOO`
#4 [lint_mod] linting top-level module
#5 [analysis] running analysis passes on this crate
end of query stack
warning: 4 warnings emitted

is it possible to somehow separate these or just kill all other threads as soon as one panics? 🤔

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions