Skip to content

"internal error: entered unreachable code: Only adt has field" #15143

@jbr

Description

@jbr

rust-analyzer version:
rust-analyzer 0.0.0 (246d11b2a 2023-06-23) (built from current main)

rustc version:
rustc 1.72.0-nightly (8084f397c 2023-06-25)

relevant settings:
editor: emacs, latest lsp-mode

The Error

I've been getting a lot of these in RA's stderr. Let me know what additional information would be helpful, and thanks!

Panic context:
> publish_diagnostics

thread 'Worker' panicked at 'internal error: entered unreachable code: Only adt has field', crates/hir-ty/src/mir.rs:153:21
stack backtrace:
   0: _rust_begin_unwind
   1: core::panicking::panic_fmt
   2: core::panicking::unreachable_display
   3: hir_ty::mir::ProjectionElem<V,T>::projected_ty
   4: hir_ty::mir::borrowck::moved_out_of_ref::{{closure}}
   5: hir_ty::mir::borrowck::moved_out_of_ref
   6: <core::iter::adapters::map::Map<I,F> as core::iter::traits::iterator::Iterator>::try_fold
   7: <alloc::vec::Vec<T> as alloc::vec::spec_from_iter::SpecFromIter<T,I>>::from_iter
   8: core::iter::adapters::try_process
   9: hir_ty::mir::borrowck::borrowck_query
  10: salsa::runtime::Runtime::execute_query_implementation
  11: salsa::derived::slot::Slot<Q,MP>::read_upgrade
  12: salsa::derived::slot::Slot<Q,MP>::read
  13: <salsa::derived::DerivedStorage<Q,MP> as salsa::plumbing::QueryStorageOps<Q>>::try_fetch
  14: <DB as hir_ty::db::HirDatabase>::borrowck::__shim
  15: <DB as hir_ty::db::HirDatabase>::borrowck
  16: hir::DefWithBody::diagnostics
  17: hir::Module::diagnostics
  18: ide_diagnostics::diagnostics
  19: salsa::Cancelled::catch
  20: ide::Analysis::diagnostics
  21: core::ops::function::impls::<impl core::ops::function::FnMut<A> for &mut F>::call_mut
  22: alloc::vec::in_place_collect::<impl alloc::vec::spec_from_iter::SpecFromIter<T,I> for alloc::vec::Vec<T>>::from_iter
  23: core::ops::function::FnOnce::call_once{{vtable.shim}}
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
Panic context:
> 
version: 0.0.0 (246d11b2a 2023-06-23)
request: textDocument/codeAction CodeActionParams {
    text_document: TextDocumentIdentifier {
        uri: Url {
            scheme: "file",
            cannot_be_a_base: false,
            username: "",
            password: None,
            host: None,
            port: None,
            path: "/Users/jbr/code/divviup/divviup-api/src/entity/api_token.rs",
            query: None,
            fragment: None,
        },
    },
    range: Range {
        start: Position {
            line: 0,
            character: 0,
        },
        end: Position {
            line: 0,
            character: 0,
        },
    },
    context: CodeActionContext {
        diagnostics: [],
        only: None,
        trigger_kind: None,
    },
    work_done_progress_params: WorkDoneProgressParams {
        work_done_token: None,
    },
    partial_result_params: PartialResultParams {
        partial_result_token: None,
    },
}

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions