Skip to content

"intrinsic getting reified" #34123

Closed
Closed
@steveklabnik

Description

@steveklabnik

While trying to reproduce #12633, one of my sillier code samples caused an ICE:

pub fn main() {
    let copy = std::intrinsics::copy;
    let assign: unsafe extern "rust-intrinsic" fn(*const i32, *mut i32, usize) = copy;
}

output (edited to update backtrace):

error: internal compiler error: src/librustc_trans/collector.rs:605: intrinsic DefId { krate: CrateNum(2), node: DefIndex(2147484733) => core/95b59a2d6e560334339d9c64d12f4a24::intrinsics[0]::[1]::copy[0] } being reified

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

note: we would appreciate a bug report: https://github.com/rust-lang/rust/blob/master/CONTRIBUTING.md#bug-reports

note: run with `RUST_BACKTRACE=1` for a backtrace

thread 'rustc' panicked at 'Box<Any>', src/librustc_errors/lib.rs:473
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
stack backtrace:
....
  13: rustc_trans::collector::visit_instance_use
             at /rust/src/librustc_trans/collector.rs:605
  14: <rustc_trans::collector::MirNeighborCollector<'a, 'tcx> as rustc::mir::visit::Visitor<'tcx>>::visit_rvalue
             at /rust/src/librustc_trans/collector.rs:588
             at /rust/src/librustc_trans/collector.rs:492
  15: rustc::mir::visit::Visitor::super_statement
             at /rust/src/librustc/mir/visit.rs:357
             at /rust/src/librustc/mir/visit.rs:115
             at /rust/src/librustc/mir/visit.rs:326
  16: rustc::mir::visit::Visitor::super_basic_block_data
             at /rust/src/librustc/mir/visit.rs:107
             at /rust/src/librustc/mir/visit.rs:290
  17: rustc::mir::visit::Visitor::super_mir
             at /rust/src/librustc/mir/visit.rs:95
             at /rust/src/librustc/mir/visit.rs:262
  18: rustc_trans::collector::collect_neighbours
             at /rust/src/librustc_trans/collector.rs:978
  19: rustc_trans::collector::collect_items_rec
             at /rust/src/librustc_trans/collector.rs:350
  20: rustc::dep_graph::graph::DepGraph::with_ignore
             at /rust/src/librustc_trans/collector.rs:278
             at /rust/src/librustc/dep_graph/graph.rs:77
  21: rustc_trans::collector::collect_crate_translation_items
             at /rust/src/librustc_trans/collector.rs:269
  22: rustc::util::common::time
             at /rust/src/librustc_trans/base.rs:1587
             at /rust/src/librustc/util/common.rs:48
  23: rustc_trans::base::collect_and_partition_translation_items
             at /rust/src/librustc_trans/base.rs:1586
  24: rustc_trans::base::trans_crate
             at /rust/src/librustc_trans/base.rs:1108
  25: rustc::util::common::time
             at /rust/src/librustc_driver/driver.rs:1051
             at /rust/src/librustc/util/common.rs:48
  26: rustc_driver::driver::phase_4_translate_to_llvm
             at /rust/src/librustc_driver/driver.rs:1049
  27: rustc_driver::driver::compile_input::{{closure}}
             at /rust/src/librustc_driver/driver.rs:206
  28: <std::thread::local::LocalKey<T>>::with
             at /rust/src/librustc_driver/driver.rs:1032
             at /rust/src/librustc/ty/context.rs:915
             at /rust/src/libstd/thread/local.rs:253
  29: rustc::ty::context::tls::enter
             at /rust/src/librustc/ty/context.rs:912
  30: <std::thread::local::LocalKey<T>>::with
             at /rust/src/librustc/ty/context.rs:899
             at /rust/src/libstd/thread/local.rs:253
  31: rustc::ty::context::tls::enter_global
             at /rust/src/librustc/ty/context.rs:896
  32: rustc::ty::context::TyCtxt::create_and_enter
             at /rust/src/librustc/ty/context.rs:706
  33: rustc_driver::driver::phase_3_run_analysis_passes
             at /rust/src/librustc_driver/driver.rs:940
  34: rustc_driver::driver::compile_input
             at /rust/src/librustc_driver/driver.rs:172
  35: rustc_driver::run_compiler
             at /rust/src/librustc_driver/lib.rs:224

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-intrinsicsArea: IntrinsicsC-bugCategory: This is a bug.I-ICEIssue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️requires-nightlyThis issue requires a nightly compiler in some way.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions