Skip to content

Argus failing on diesel-2 in argus-study #69

@willcrichton

Description

@willcrichton

Problem

Logs

OS: darwin (24.5.0)
VSCode: 1.102.3
Error message

[INFO src/plugin.rs:238] - Starting rustc analysis...
[INFO src/timer.rs:8] - rustc took 0.2202s
[INFO src/timer.rs:8] - global_ctxt took 0.0000s
[INFO src/find_bodies.rs:50] - Starting find_bodies...
[INFO src/timer.rs:8] - find_bodies took 0.0244s
[INFO src/plugin.rs:305] - analyzing BodyId { hir_id: HirId(DefId(0:108 ~ diesel_2[699e]::main).33) }
[INFO src/plugin.rs:305] - analyzing BodyId { hir_id: HirId(DefId(0:109 ~ diesel_2[699e]::run_cli).1142) }

thread 'rustc' panicked at /rust/deps/ena-0.14.3/src/snapshot_vec.rs:199:10:
index out of bounds: the len is 662 but the index is 663
stack backtrace:
   0: _rust_begin_unwind
   1: core::panicking::panic_fmt
   2: core::panicking::panic_bounds_check
   3: <rustc_infer::infer::InferCtxt>::shallow_resolve
   4: <rustc_infer::infer::resolve::OpportunisticVarResolver as rustc_type_ir::fold::FallibleTypeFolder<rustc_middle::ty::context::TyCtxt>>::try_fold_ty
   5: <&rustc_middle::ty::list::RawList<(), rustc_middle::ty::generic_args::GenericArg> as rustc_type_ir::fold::TypeFoldable<rustc_middle::ty::context::TyCtxt>>::try_fold_with::<rustc_infer::infer::resolve::OpportunisticVarResolver>
   6: <rustc_infer::infer::InferCtxt>::resolve_vars_if_possible::<rustc_type_ir::binder::Binder<rustc_middle::ty::context::TyCtxt, rustc_type_ir::predicate::TraitPredicate<rustc_middle::ty::context::TyCtxt>>>
   7: <rustc_trait_selection::error_reporting::TypeErrCtxt>::note_obligation_cause_code::<rustc_span::ErrorGuaranteed, rustc_middle::ty::predicate::Predicate>
   8: <rustc_trait_selection::error_reporting::TypeErrCtxt>::note_obligation_cause
   9: <rustc_trait_selection::error_reporting::TypeErrCtxt>::report_selection_error
  10: <rustc_trait_selection::error_reporting::TypeErrCtxt>::report_fulfillment_error
  11: <rustc_trait_selection::error_reporting::TypeErrCtxt>::report_fulfillment_errors
  12: <rustc_hir_typeck::writeback::Resolver as rustc_type_ir::fold::TypeFolder<rustc_middle::ty::context::TyCtxt>>::fold_ty
  13: <rustc_hir_typeck::writeback::WritebackCx>::resolve::<rustc_middle::ty::Ty>
  14: <rustc_hir_typeck::writeback::WritebackCx>::visit_node_id
  15: <rustc_hir_typeck::writeback::WritebackCx as rustc_hir::intravisit::Visitor>::visit_expr
  16: <rustc_hir_typeck::writeback::WritebackCx as rustc_hir::intravisit::Visitor>::visit_expr
  17: <rustc_hir_typeck::writeback::WritebackCx as rustc_hir::intravisit::Visitor>::visit_expr
  18: <rustc_hir_typeck::writeback::WritebackCx as rustc_hir::intravisit::Visitor>::visit_expr
  19: <rustc_hir_typeck::writeback::WritebackCx as rustc_hir::intravisit::Visitor>::visit_expr
  20: <rustc_hir_typeck::writeback::WritebackCx as rustc_hir::intravisit::Visitor>::visit_expr
  21: <rustc_hir_typeck::writeback::WritebackCx as rustc_hir::intravisit::Visitor>::visit_local
  22: <rustc_hir_typeck::writeback::WritebackCx as rustc_hir::intravisit::Visitor>::visit_block
  23: <rustc_hir_typeck::writeback::WritebackCx as rustc_hir::intravisit::Visitor>::visit_expr
  24: <rustc_hir_typeck::writeback::WritebackCx as rustc_hir::intravisit::Visitor>::visit_block
  25: <rustc_hir_typeck::fn_ctxt::FnCtxt>::resolve_type_vars_in_body
  26: rustc_hir_typeck::typeck_with_inspect::{closure#0}
  27: rustc_hir_typeck::inspect_typeck
  28: argus_lib::analysis::obligations
  29: <argus_cli::plugin::ArgusCallbacks<A,T,F> as rustc_driver_impl::Callbacks>::after_expansion::{{closure}}
  30: alloc::vec::in_place_collect::<impl alloc::vec::spec_from_iter::SpecFromIter<T,I> for alloc::vec::Vec<T>>::from_iter
  31: <argus_cli::plugin::ArgusCallbacks<A,T,F> as rustc_driver_impl::Callbacks>::after_expansion
  32: rustc_interface::passes::create_and_enter_global_ctxt::<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>
  33: rustc_interface::interface::run_compiler::<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
error: could not compile `diesel-2` (bin "diesel-2")

Caused by:
  process didn't exit successfully: `/Users/will/.cargo/bin/argus-driver /Users/will/.rustup/toolchains/nightly-2025-03-03-aarch64-apple-darwin/bin/rustc --crate-name diesel_2 --edition=2021 crates/diesel-2/src/main.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --crate-type bin --emit=dep-info,metadata -C embed-bitcode=no -C debuginfo=2 -C split-debuginfo=unpacked --check-cfg 'cfg(docsrs,test)' --check-cfg 'cfg(feature, values())' -C metadata=839dbd6511986506 -C extra-filename=-57f7924db4136db5 --out-dir /Users/will/Code/argus-study/target/plugin-nightly-2025-03-03/debug/deps -C incremental=/Users/will/Code/argus-study/target/plugin-nightly-2025-03-03/debug/incremental -L dependency=/Users/will/Code/argus-study/target/plugin-nightly-2025-03-03/debug/deps --extern argon2=/Users/will/Code/argus-study/target/plugin-nightly-2025-03-03/debug/deps/libargon2-6e5c5eb8471b5ba2.rmeta --extern chrono=/Users/will/Code/argus-study/target/plugin-nightly-2025-03-03/debug/deps/libchrono-82cf98383ba37711.rmeta --extern clap=/Users/will/Code/argus-study/target/plugin-nightly-2025-03-03/debug/deps/libclap-c48a4f035166238a.rmeta --extern diesel=/Users/will/Code/argus-study/target/plugin-nightly-2025-03-03/debug/deps/libdiesel-fdf0f3672e37ed88.rmeta --extern dotenvy=/Users/will/Code/argus-study/target/plugin-nightly-2025-03-03/debug/deps/libdotenvy-f2a2e2ce05db2e72.rmeta --extern tempfile=/Users/will/Code/argus-study/target/plugin-nightly-2025-03-03/debug/deps/libtempfile-e9b3d268f6ed8a7d.rmeta -L native=/opt/homebrew/opt/libpq/lib` (exit status: 101)

Full log: https://paste.rs/6LkwK

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions