Skip to content

Miri ICE: InvalidProgram(ConstPropNonsense): uninhabited variant in project_downcast #115145

@saethlin

Description

@saethlin

Reduced example: #115145 (comment)

https://github.com/axodotdev/axoasset at 10e2f44ee1bccaa5ae0dca28ee5061af04c0ae8d

MIRIFLAGS=-Zmiri-disable-isolation cargo miri test it_copies_remote_assets 

Error output

error: internal compiler error: src/tools/miri/src/diagnostics.rs:294:17: This error should be impossible in Miri: InvalidProgram(ConstPropNonsense) 
Backtrace

test it_copies_remote_assets ... error: internal compiler error: src/tools/miri/src/diagnostics.rs:294:17: This error should be impossible in Miri: InvalidProgram(ConstPropNonsense) thread 'rustc' panicked at /rustc/ef85656a10657ba5e4f7fe2931a4ca6293138d51/compiler/rustc_errors/src/lib.rs:1635:9: Box<dyn Any> stack backtrace: 0: 0x7f8f3a0ee0fc - std::backtrace_rs::backtrace::libunwind::trace::h9e6789d755ef2e35 at /rustc/ef85656a10657ba5e4f7fe2931a4ca6293138d51/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5 1: 0x7f8f3a0ee0fc - std::backtrace_rs::backtrace::trace_unsynchronized::hb3533227af2eed61 at /rustc/ef85656a10657ba5e4f7fe2931a4ca6293138d51/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 2: 0x7f8f3a0ee0fc - std::sys_common::backtrace::_print_fmt::hc7dbc1325a62fad4 at /rustc/ef85656a10657ba5e4f7fe2931a4ca6293138d51/library/std/src/sys_common/backtrace.rs:67:5 3: 0x7f8f3a0ee0fc - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::he15329baacfb890f at /rustc/ef85656a10657ba5e4f7fe2931a4ca6293138d51/library/std/src/sys_common/backtrace.rs:44:22 4: 0x7f8f3a1543bc - core::fmt::rt::Argument::fmt::he237d6d4e685b998 at /rustc/ef85656a10657ba5e4f7fe2931a4ca6293138d51/library/core/src/fmt/rt.rs:138:9 5: 0x7f8f3a1543bc - core::fmt::write::h70fc50f283d0f28f at /rustc/ef85656a10657ba5e4f7fe2931a4ca6293138d51/library/core/src/fmt/mod.rs:1094:21 6: 0x7f8f3a0e0c1e - std::io::Write::write_fmt::hddcd4db09551f1e4 at /rustc/ef85656a10657ba5e4f7fe2931a4ca6293138d51/library/std/src/io/mod.rs:1714:15 7: 0x7f8f3a0edee4 - std::sys_common::backtrace::_print::h79b5981c192eb87e at /rustc/ef85656a10657ba5e4f7fe2931a4ca6293138d51/library/std/src/sys_common/backtrace.rs:47:5 8: 0x7f8f3a0edee4 - std::sys_common::backtrace::print::h4e1fc678281db5ea at /rustc/ef85656a10657ba5e4f7fe2931a4ca6293138d51/library/std/src/sys_common/backtrace.rs:34:9 9: 0x7f8f3a0f0fda - std::panicking::panic_hook_with_disk_dump::{{closure}}::h2f6637765d241d6e at /rustc/ef85656a10657ba5e4f7fe2931a4ca6293138d51/library/std/src/panicking.rs:278:22 10: 0x7f8f3a0f0cc7 - std::panicking::panic_hook_with_disk_dump::hdf84cf3f221731ff at /rustc/ef85656a10657ba5e4f7fe2931a4ca6293138d51/library/std/src/panicking.rs:312:9 11: 0x7f8f38f0e0b9 - <rustc_driver_impl[f90d201525556a1f]::install_ice_hook::{closure#0} as core[e05ed4681f3f1168]::ops::function::FnOnce<(&core[e05ed4681f3f1168]::panic::panic_info::PanicInfo,)>>::call_once::{shim:vtable#0} 12: 0x7f8f3a0f1880 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h18e5faf377bd4349 at /rustc/ef85656a10657ba5e4f7fe2931a4ca6293138d51/library/alloc/src/boxed.rs:2021:9 13: 0x7f8f3a0f1880 - std::panicking::rust_panic_with_hook::hdde37fc27effc37e at /rustc/ef85656a10657ba5e4f7fe2931a4ca6293138d51/library/std/src/panicking.rs:733:13 14: 0x7f8f394367d1 - std[5f485339d878b58d]::panicking::begin_panic::<rustc_errors[aa284a60f2852f9]::ExplicitBug>::{closure#0} 15: 0x7f8f39434a96 - std[5f485339d878b58d]::sys_common::backtrace::__rust_end_short_backtrace::<std[5f485339d878b58d]::panicking::begin_panic<rustc_errors[aa284a60f2852f9]::ExplicitBug>::{closure#0}, !> 16: 0x7f8f393edfa6 - std[5f485339d878b58d]::panicking::begin_panic::<rustc_errors[aa284a60f2852f9]::ExplicitBug> 17: 0x7f8f39487d24 - <rustc_errors[aa284a60f2852f9]::HandlerInner>::bug::<alloc[1fa734c4d2bb695]::string::String> 18: 0x7f8f39487bb6 - <rustc_errors[aa284a60f2852f9]::Handler>::bug::<alloc[1fa734c4d2bb695]::string::String> 19: 0x7f8f3946d55c - rustc_middle[767f7e5b95c87cd]::util::bug::opt_span_bug_fmt::<rustc_span[9b5bef724011fe8f]::span_encoding::Span>::{closure#0} 20: 0x7f8f3946bc0a - rustc_middle[767f7e5b95c87cd]::ty::context::tls::with_opt::<rustc_middle[767f7e5b95c87cd]::util::bug::opt_span_bug_fmt<rustc_span[9b5bef724011fe8f]::span_encoding::Span>::{closure#0}, !>::{closure#0} 21: 0x7f8f3946bbd8 - rustc_middle[767f7e5b95c87cd]::ty::context::tls::with_context_opt::<rustc_middle[767f7e5b95c87cd]::ty::context::tls::with_opt<rustc_middle[767f7e5b95c87cd]::util::bug::opt_span_bug_fmt<rustc_span[9b5bef724011fe8f]::span_encoding::Span>::{closure#0}, !>::{closure#0}, !> 22: 0x7f8f376b7ae0 - rustc_middle[767f7e5b95c87cd]::util::bug::bug_fmt 23: 0x55fa0204ed3a - miri[f8f5eaf6d04f8c74]::diagnostics::report_error 24: 0x55fa02053f32 - miri[f8f5eaf6d04f8c74]::eval::eval_entry 25: 0x55fa01fa99f7 - <rustc_middle[767f7e5b95c87cd]::ty::context::GlobalCtxt>::enter::<<miri[51939fbf34570118]::MiriCompilerCalls as rustc_driver_impl[f90d201525556a1f]::Callbacks>::after_analysis::{closure#0}, ()> 26: 0x55fa01fa1914 - <miri[51939fbf34570118]::MiriCompilerCalls as rustc_driver_impl[f90d201525556a1f]::Callbacks>::after_analysis 27: 0x7f8f381d5c0a - <rustc_interface[27d2f6b8fe428ec0]::interface::Compiler>::enter::<rustc_driver_impl[f90d201525556a1f]::run_compiler::{closure#1}::{closure#2}, core[e05ed4681f3f1168]::result::Result<core[e05ed4681f3f1168]::option::Option<rustc_interface[27d2f6b8fe428ec0]::queries::Linker>, rustc_span[9b5bef724011fe8f]::ErrorGuaranteed>> 28: 0x7f8f381d2f18 - std[5f485339d878b58d]::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface[27d2f6b8fe428ec0]::util::run_in_thread_pool_with_globals<rustc_interface[27d2f6b8fe428ec0]::interface::run_compiler<core[e05ed4681f3f1168]::result::Result<(), rustc_span[9b5bef724011fe8f]::ErrorGuaranteed>, rustc_driver_impl[f90d201525556a1f]::run_compiler::{closure#1}>::{closure#0}, core[e05ed4681f3f1168]::result::Result<(), rustc_span[9b5bef724011fe8f]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[e05ed4681f3f1168]::result::Result<(), rustc_span[9b5bef724011fe8f]::ErrorGuaranteed>> 29: 0x7f8f381d26a5 - <<std[5f485339d878b58d]::thread::Builder>::spawn_unchecked_<rustc_interface[27d2f6b8fe428ec0]::util::run_in_thread_pool_with_globals<rustc_interface[27d2f6b8fe428ec0]::interface::run_compiler<core[e05ed4681f3f1168]::result::Result<(), rustc_span[9b5bef724011fe8f]::ErrorGuaranteed>, rustc_driver_impl[f90d201525556a1f]::run_compiler::{closure#1}>::{closure#0}, core[e05ed4681f3f1168]::result::Result<(), rustc_span[9b5bef724011fe8f]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[e05ed4681f3f1168]::result::Result<(), rustc_span[9b5bef724011fe8f]::ErrorGuaranteed>>::{closure#1} as core[e05ed4681f3f1168]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} 30: 0x7f8f3a0fc1e5 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h6086e9a313a3964c at /rustc/ef85656a10657ba5e4f7fe2931a4ca6293138d51/library/alloc/src/boxed.rs:2007:9 31: 0x7f8f3a0fc1e5 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h930455f80652281f at /rustc/ef85656a10657ba5e4f7fe2931a4ca6293138d51/library/alloc/src/boxed.rs:2007:9 32: 0x7f8f3a0fc1e5 - std::sys::unix::thread::Thread::new::thread_start::hbdbfdb70d010bf36 at /rustc/ef85656a10657ba5e4f7fe2931a4ca6293138d51/library/std/src/sys/unix/thread.rs:108:17 33: 0x7f8f35a8c9eb - <unknown> 34: 0x7f8f35b10dfc - <unknown> 35: 0x0 - <unknown> note: we would appreciate a bug report: https://github.com/rust-lang/miri/issues/new note: please attach the file at `/tmp/axoasset/rustc-ice-2023-08-23T18:31:20.771630796Z-2899178.txt` to your bug report note: compiler flags: -C embed-bitcode=no -C debuginfo=2 -C incremental=[REDACTED] -Z miri-disable-isolation note: some of the compiler flags provided by cargo are hidden query stack during panic: end of query stack error: aborting due to previous error error: test failed, to rerun pass `--test remote_copy` 

searched nightlies: from nightly-2023-01-01 to nightly-2023-08-14
regressed nightly: nightly-2023-07-26
searched commit range: 31395ec...864bdf7
regressed commit: 4fc6b33

bisected with cargo-bisect-rustc v0.6.6

Host triple: x86_64-unknown-linux-gnu
Reproduce with:

cargo bisect-rustc --start 2023-01-01 --end 2023-08-14 --script script -c miri --with-src 

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-const-evalArea: Constant evaluation, covers all const contexts (static, const fn, ...)A-coroutinesArea: CoroutinesA-layoutArea: Memory layout of typesC-bugCategory: This is a bug.I-ICEIssue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️I-unsoundIssue: A soundness hole (worst kind of bug), see: https://en.wikipedia.org/wiki/SoundnessP-highHigh priorityS-has-mcveStatus: A Minimal Complete and Verifiable Example has been found for this issueT-compilerRelevant to the compiler team, which will review and decide on the PR/issue.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions