rust-lang / rust

Empowering everyone to build reliable and efficient software.
https://www.rust-lang.org
Other
97.98k stars 12.68k forks source link

ICE building trust-dns-resolver@0.21.2 with instrument coverage, in nightly #118746

Closed GreeFine closed 4 months ago

GreeFine commented 10 months ago

I get this error while compiling the crate : trust-dns-resolver = "0.21.2", with coverage flags and on nightly.

Replication:

cargo new compiler-bug
cd compiler-bug
cargo add trust-dns-resolver@0.21.2
RUSTFLAGS="-C instrument-coverage" cargo +nightly build

Meta

rustc --version --verbose:

rustc 1.76.0-nightly (1fdfe1234 2023-12-06)
binary: rustc
commit-hash: 1fdfe1234795a289af1088aefa92ef80191cb611
commit-date: 2023-12-06
host: x86_64-unknown-linux-gnu
release: 1.76.0-nightly
LLVM version: 17.0.5

Error output

<output>
Backtrace

``` error: internal compiler error: compiler/rustc_mir_transform/src/coverage/spans.rs:434:49: invalid attempt to unwrap a None some_prev thread 'rustc' panicked at /rustc/1fdfe1234795a289af1088aefa92ef80191cb611/compiler/rustc_errors/src/lib.rs:1113:75: Box stack backtrace: 0: 0x7f8b16d5a45c - std::backtrace_rs::backtrace::libunwind::trace::h01adf09c1aaf2eab at /rustc/1fdfe1234795a289af1088aefa92ef80191cb611/library/std/src/../../backtrace/src/backtrace/libunwind.rs:104:5 1: 0x7f8b16d5a45c - std::backtrace_rs::backtrace::trace_unsynchronized::hb3620698cc0798b4 at /rustc/1fdfe1234795a289af1088aefa92ef80191cb611/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 2: 0x7f8b16d5a45c - std::sys_common::backtrace::_print_fmt::h56e5d560c8c09485 at /rustc/1fdfe1234795a289af1088aefa92ef80191cb611/library/std/src/sys_common/backtrace.rs:68:5 3: 0x7f8b16d5a45c - ::fmt::hca9d80fb6e5ad5fe at /rustc/1fdfe1234795a289af1088aefa92ef80191cb611/library/std/src/sys_common/backtrace.rs:44:22 4: 0x7f8b16dad4a0 - core::fmt::rt::Argument::fmt::he80c0e0f0c31e8da at /rustc/1fdfe1234795a289af1088aefa92ef80191cb611/library/core/src/fmt/rt.rs:142:9 5: 0x7f8b16dad4a0 - core::fmt::write::h7acb2cb5522bc491 at /rustc/1fdfe1234795a289af1088aefa92ef80191cb611/library/core/src/fmt/mod.rs:1120:17 6: 0x7f8b16d4e2bf - std::io::Write::write_fmt::h19435141596ff66c at /rustc/1fdfe1234795a289af1088aefa92ef80191cb611/library/std/src/io/mod.rs:1810:15 7: 0x7f8b16d5a244 - std::sys_common::backtrace::_print::h062a00a21ffc3dcb at /rustc/1fdfe1234795a289af1088aefa92ef80191cb611/library/std/src/sys_common/backtrace.rs:47:5 8: 0x7f8b16d5a244 - std::sys_common::backtrace::print::h120ea2df27b2be8f at /rustc/1fdfe1234795a289af1088aefa92ef80191cb611/library/std/src/sys_common/backtrace.rs:34:9 9: 0x7f8b16d5ced7 - std::panicking::default_hook::{{closure}}::hd7e3d5fa26e2ca93 10: 0x7f8b16d5cc3f - std::panicking::default_hook::h541732093fb638b5 at /rustc/1fdfe1234795a289af1088aefa92ef80191cb611/library/std/src/panicking.rs:292:9 11: 0x7f8b13af4190 - std[f18d9e43faf8528d]::panicking::update_hook::>::{closure#0} 12: 0x7f8b16d5d618 - as core::ops::function::Fn>::call::h04510f5933ee8fe9 at /rustc/1fdfe1234795a289af1088aefa92ef80191cb611/library/alloc/src/boxed.rs:2029:9 13: 0x7f8b16d5d618 - std::panicking::rust_panic_with_hook::h10b8d62d65c23db7 at /rustc/1fdfe1234795a289af1088aefa92ef80191cb611/library/std/src/panicking.rs:783:13 14: 0x7f8b13b2c164 - std[f18d9e43faf8528d]::panicking::begin_panic::::{closure#0} 15: 0x7f8b13b28936 - std[f18d9e43faf8528d]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> 16: 0x7f8b13b285a6 - std[f18d9e43faf8528d]::panicking::begin_panic:: 17: 0x7f8b13b37309 - ::diagnostic_builder_emit_producing_guarantee 18: 0x7f8b13f18335 - ::bug:: 19: 0x7f8b13fb533d - rustc_middle[44587506631fd282]::util::bug::opt_span_bug_fmt::::{closure#0} 20: 0x7f8b13f9c9fa - rustc_middle[44587506631fd282]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} 21: 0x7f8b13f9c898 - rustc_middle[44587506631fd282]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> 22: 0x7f8b11f4ff80 - rustc_middle[44587506631fd282]::util::bug::bug_fmt 23: 0x7f8b1415164e - ::take_prev 24: 0x7f8b14152e1b - ::inject_counters 25: 0x7f8b14152010 - ::run_pass 26: 0x7f8b14ee65a8 - rustc_mir_transform[1221cdd64599178f]::pass_manager::run_passes_inner 27: 0x7f8b130b4fac - rustc_mir_transform[1221cdd64599178f]::mir_promoted 28: 0x7f8b1533fa6a - rustc_query_impl[ae1b90dc3d8f3e49]::plumbing::__rust_begin_short_backtrace::> 29: 0x7f8b1533fd40 - rustc_query_system[4e5b10c281114fe]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[ae1b90dc3d8f3e49]::plumbing::QueryCtxt, false> 30: 0x7f8b1533f96f - rustc_query_impl[ae1b90dc3d8f3e49]::query_impl::mir_promoted::get_query_non_incr::__rust_end_short_backtrace 31: 0x7f8b15c67ead - rustc_borrowck[1ad8dc81974af5ff]::mir_borrowck 32: 0x7f8b15c67def - rustc_query_impl[ae1b90dc3d8f3e49]::plumbing::__rust_begin_short_backtrace::> 33: 0x7f8b14ff9083 - rustc_query_system[4e5b10c281114fe]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[ae1b90dc3d8f3e49]::plumbing::QueryCtxt, false> 34: 0x7f8b14ff8c50 - rustc_query_impl[ae1b90dc3d8f3e49]::query_impl::mir_borrowck::get_query_non_incr::__rust_end_short_backtrace 35: 0x7f8b150fc70a - ::prove_closure_bounds 36: 0x7f8b15c3aae6 - ::typeck_mir 37: 0x7f8b12c4de4b - rustc_borrowck[1ad8dc81974af5ff]::type_check::type_check 38: 0x7f8b12c31ea8 - rustc_borrowck[1ad8dc81974af5ff]::nll::compute_regions 39: 0x7f8b15c77de3 - rustc_borrowck[1ad8dc81974af5ff]::do_mir_borrowck 40: 0x7f8b15c6834a - rustc_borrowck[1ad8dc81974af5ff]::mir_borrowck 41: 0x7f8b15c67def - rustc_query_impl[ae1b90dc3d8f3e49]::plumbing::__rust_begin_short_backtrace::> 42: 0x7f8b14ff9083 - rustc_query_system[4e5b10c281114fe]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[ae1b90dc3d8f3e49]::plumbing::QueryCtxt, false> 43: 0x7f8b14ff8c50 - rustc_query_impl[ae1b90dc3d8f3e49]::query_impl::mir_borrowck::get_query_non_incr::__rust_end_short_backtrace 44: 0x7f8b15b3dae6 - rustc_hir_analysis[9f9d9d655a896a82]::collect::type_of::type_of_opaque 45: 0x7f8b15b3d835 - rustc_query_impl[ae1b90dc3d8f3e49]::plumbing::__rust_begin_short_backtrace::> 46: 0x7f8b14e51354 - rustc_query_system[4e5b10c281114fe]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[ae1b90dc3d8f3e49]::plumbing::QueryCtxt, false> 47: 0x7f8b15e14e5e - rustc_query_impl[ae1b90dc3d8f3e49]::query_impl::type_of_opaque::get_query_non_incr::__rust_end_short_backtrace 48: 0x7f8b14ed2304 - rustc_middle[44587506631fd282]::query::plumbing::query_get_at::>> 49: 0x7f8b1304fac2 - rustc_hir_analysis[9f9d9d655a896a82]::collect::type_of::type_of 50: 0x7f8b14e524e6 - rustc_query_impl[ae1b90dc3d8f3e49]::plumbing::__rust_begin_short_backtrace::> 51: 0x7f8b14e51354 - rustc_query_system[4e5b10c281114fe]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[ae1b90dc3d8f3e49]::plumbing::QueryCtxt, false> 52: 0x7f8b14e50f1b - rustc_query_impl[ae1b90dc3d8f3e49]::query_impl::type_of::get_query_non_incr::__rust_end_short_backtrace 53: 0x7f8b14ed2304 - rustc_middle[44587506631fd282]::query::plumbing::query_get_at::>> 54: 0x7f8b15ad60ba - rustc_hir_analysis[9f9d9d655a896a82]::check::check::check_mod_item_types 55: 0x7f8b15ad43f3 - rustc_query_impl[ae1b90dc3d8f3e49]::plumbing::__rust_begin_short_backtrace::> 56: 0x7f8b157f68fb - rustc_query_system[4e5b10c281114fe]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[ae1b90dc3d8f3e49]::plumbing::QueryCtxt, false> 57: 0x7f8b157f62d7 - rustc_query_impl[ae1b90dc3d8f3e49]::query_impl::check_mod_item_types::get_query_non_incr::__rust_end_short_backtrace 58: 0x7f8b15830ba3 - rustc_hir_analysis[9f9d9d655a896a82]::check_crate 59: 0x7f8b1566c3a2 - rustc_interface[921a47194d6ebb65]::passes::analysis 60: 0x7f8b1566bfdd - rustc_query_impl[ae1b90dc3d8f3e49]::plumbing::__rust_begin_short_backtrace::> 61: 0x7f8b15d6a024 - rustc_query_system[4e5b10c281114fe]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[ae1b90dc3d8f3e49]::plumbing::QueryCtxt, false> 62: 0x7f8b15d69e15 - rustc_query_impl[ae1b90dc3d8f3e49]::query_impl::analysis::get_query_non_incr::__rust_end_short_backtrace 63: 0x7f8b15d786e2 - rustc_interface[921a47194d6ebb65]::interface::run_compiler::, rustc_driver_impl[c56fb6e317b9b549]::run_compiler::{closure#0}>::{closure#0} 64: 0x7f8b15d6bac9 - std[f18d9e43faf8528d]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[c56fb6e317b9b549]::run_compiler::{closure#0}>::{closure#0}, core[c8ad60286a7f2b9c]::result::Result<(), rustc_span[b99ab2601ab4e12]::ErrorGuaranteed>>::{closure#0}, core[c8ad60286a7f2b9c]::result::Result<(), rustc_span[b99ab2601ab4e12]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[c8ad60286a7f2b9c]::result::Result<(), rustc_span[b99ab2601ab4e12]::ErrorGuaranteed>> 65: 0x7f8b15d6b8f3 - <::spawn_unchecked_, rustc_driver_impl[c56fb6e317b9b549]::run_compiler::{closure#0}>::{closure#0}, core[c8ad60286a7f2b9c]::result::Result<(), rustc_span[b99ab2601ab4e12]::ErrorGuaranteed>>::{closure#0}, core[c8ad60286a7f2b9c]::result::Result<(), rustc_span[b99ab2601ab4e12]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[c8ad60286a7f2b9c]::result::Result<(), rustc_span[b99ab2601ab4e12]::ErrorGuaranteed>>::{closure#1} as core[c8ad60286a7f2b9c]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} 66: 0x7f8b16d674a5 - as core::ops::function::FnOnce>::call_once::hcbb69bf7124e2abe at /rustc/1fdfe1234795a289af1088aefa92ef80191cb611/library/alloc/src/boxed.rs:2015:9 67: 0x7f8b16d674a5 - as core::ops::function::FnOnce>::call_once::h7be566a46ffc8b21 at /rustc/1fdfe1234795a289af1088aefa92ef80191cb611/library/alloc/src/boxed.rs:2015:9 68: 0x7f8b16d674a5 - std::sys::unix::thread::Thread::new::thread_start::hd7af3ffb69b86edf at /rustc/1fdfe1234795a289af1088aefa92ef80191cb611/library/std/src/sys/unix/thread.rs:108:17 69: 0x7f8b10c7a9eb - 70: 0x7f8b10cfe7cc - 71: 0x0 - 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: please attach the file at `/home/greefine/.cargo/registry/src/index.crates.io-6f17d22bba15001f/trust-dns-resolver-0.21.2/rustc-ice-2023-12-08T14_34_35-117802.txt` to your bug report note: compiler flags: --crate-type lib -C embed-bitcode=no -C debuginfo=2 -C instrument-coverage note: some of the compiler flags provided by cargo are hidden query stack during panic: #0 [mir_promoted] promoting constants in MIR for `async_resolver::::reverse_lookup::{closure#0}` #1 [mir_borrowck] borrow-checking `async_resolver::::reverse_lookup::{closure#0}` #2 [mir_borrowck] borrow-checking `async_resolver::::reverse_lookup` #3 [type_of_opaque] computing type of opaque `async_resolver::::reverse_lookup::{opaque#0}` #4 [type_of] computing type of `async_resolver::::reverse_lookup::{opaque#0}` #5 [check_mod_item_types] checking item types in module `async_resolver` #6 [analysis] running analysis passes on this crate end of query stack error: could not compile `trust-dns-resolver` (lib) warning: build failed, waiting for other jobs to finish... error: process didn't exit successfully: `/home/greefine/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/cargo test --tests --manifest-path /home/greefine/Projects/compiler-bug/Cargo.toml --target-dir /home/greefine/Projects/compiler-bug/target/llvm-cov-target` (exit status: 101) ```

rustc-ice-2023-12-08T14_34_35-117802.txt

Zalathar commented 10 months ago

This is probably another duplicate of #118643, which should be fixed in the upcoming nightly.