Skip to content

internal compiler error: Explicit index of non-index type [u8] #15381

Closed
@nwin

Description

@nwin

The following code

struct Wrapper<'a> {
    slice: &'a [u8]
}

fn main() {
    let foo = Some(b"Hello World!");
    let bar: Option<Wrapper<'static>> = foo.map(|&x| Wrapper { slice: x });


}

triggers a compiler bug:

$ RUST_BACKTRACE=1 rustc test.rs 
test.rs:7:71: 7:72 error: internal compiler error: Explicit index of non-index type `[u8]`
test.rs:7     let bar: Option<Wrapper<'static>> = foo.map(|&x| Wrapper { slice: x });
                                                                                ^
note: the compiler hit an unexpected failure path. this is a bug.
note: we would appreciate a bug report: http://doc.rust-lang.org/complement-bugreport.html
note: run with `RUST_BACKTRACE=1` for a backtrace
task 'rustc' failed at 'Box<Any>', /Users/rustbuild/src/rust-buildbot/slave/nightly-mac/build/src/libsyntax/diagnostic.rs:107

stack backtrace:
   1:        0x10753a635 - rt::backtrace::imp::write::hbede6c694eb9f2cbIQp::v0.11.0.pre
   2:        0x107540bd7 - failure::on_fail::h30a7f46ec21fe35516p::v0.11.0.pre
   3:        0x1077eb249 - unwind::begin_unwind_inner::h6c751dc42f0f7f17IVd::v0.11.0.pre
   4:        0x106c51e25 - unwind::begin_unwind::h16840659320017284217::v0.11.0.pre
   5:        0x106c51dad - diagnostic::SpanHandler::span_bug::hb5a406cf5dd1450cWac::v0.11.0.pre
   6:        0x1045047e5 - driver::session::Session::span_bug::hc60df83bd7dbe984Trr::v0.11.0.pre
   7:        0x10478c506 - middle::mem_categorization::MemCategorizationContext<'t, TYPER>::cat_index::h11027325414672250850::v0.11.0.pre
   8:        0x10476be2b - middle::typeck::check::regionck::visit_expr::h8ad96e881d8c059afH8::v0.11.0.pre
   9:        0x104770542 - visit::walk_expr::h7092108895728945809::v0.11.0.pre
  10:        0x10476b2a0 - middle::typeck::check::regionck::visit_expr::h8ad96e881d8c059afH8::v0.11.0.pre
  11:        0x10476cf8e - visit::walk_block::h6655035168579021138::v0.11.0.pre
  12:        0x104770936 - visit::walk_fn::h7111590603532843168::v0.11.0.pre
  13:        0x10476b865 - middle::typeck::check::regionck::visit_expr::h8ad96e881d8c059afH8::v0.11.0.pre
  14:        0x104770113 - visit::walk_expr::h7092108895728945809::v0.11.0.pre
  15:        0x10476b2a0 - middle::typeck::check::regionck::visit_expr::h8ad96e881d8c059afH8::v0.11.0.pre
  16:        0x10476ce12 - middle::typeck::check::regionck::visit_local::ha0697ea4d5b15fbeUD8::v0.11.0.pre
  17:        0x10476cf6a - visit::walk_block::h6655035168579021138::v0.11.0.pre
  18:        0x1047afc0e - middle::typeck::check::check_bare_fn::hcd02e3ea22711cdcA2c::v0.11.0.pre
  19:        0x1047a98ce - middle::typeck::check::check_item::h066c89136b0abe5fOzd::v0.11.0.pre
  20:        0x1047af98d - middle::typeck::check::check_item_types::ha45c368daeab74efS1c::v0.11.0.pre
  21:        0x10492161e - middle::typeck::check_crate::hae37e3b7b5c6e1b3Q3C::v0.11.0.pre
  22:        0x104d75878 - driver::driver::phase_3_run_analysis_passes::hfbfa07100b0674bdFrq::v0.11.0.pre
  23:        0x104d708c5 - driver::driver::compile_input::hf1aa489ba45a9efcDeq::v0.11.0.pre
  24:        0x104e3709b - driver::run_compiler::h9c79a8fc68073767b0s::v0.11.0.pre
  25:        0x104e348b6 - driver::main_args::closure.117540
  26:        0x104e48f8b - task::TaskBuilder<S>::try_future::closure.118681
  27:        0x104e48e24 - task::TaskBuilder<S>::spawn_internal::closure.118658
  28:        0x10444395c - task::spawn_opts::closure.7563
  29:        0x107850dac - rust_try
  30:        0x1077e76ea - unwind::try::h7f3fc3b0329b49ea7Jd::v0.11.0.pre
  31:        0x1077e73ec - task::Task::run::h4a0e5408354628dfZVc::v0.11.0.pre
  32:        0x1044437eb - task::spawn_opts::closure.7508
  33:        0x1077e9f59 - thread::thread_start::h5aa600706e7c5c88xid::v0.11.0.pre
  34:     0x7fff973fd899 - _pthread_body
  35:     0x7fff973fd72a - _pthread_struct_init

Metadata

Metadata

Assignees

No one assigned

    Labels

    E-needs-testCall for participation: An issue has been fixed and does not reproduce, but no test has been added.I-ICEIssue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions