Repository: rust
Issue: internal compiler error: encountered incremental compilation error
Labels: I-ICE,T-compiler,A-incr-comp,C-bug

<!--
Thank you for finding an Internal Compiler Error! 🧊  If possible, try to provide
a minimal verifiable example. You can read "Rust Bug Minimization Patterns" for
how to create smaller examples.
http://blog.pnkfx.org/blog/2019/11/18/rust-bug-minimization-patterns/
-->

### Code
I'm afraid boiling this down to a minimal reproducer is beyond my capabilities. Especially since this one does not seem to be triggered by some specific syntax, but rather some interplay of the compiler and its build cache.

One thing worth mentioning: this project is a workspace. Compiling with `cargo test` or even `cargo test --manifest-path Cargo.toml` (at project root) works just fine, but `cargo test --manifest-path neo4j/Cargo.toml` fails.


### Meta
<!--
If you're using the stable version of the compiler, you should also check if the
bug also exists in the beta or nightly versions.
-->

`rustc --version --verbose`:
```
rustc 1.70.0 (90c541806 2023-05-31)
binary: rustc
commit-hash: 90c541806f23a127002de5b4038be731ba1458ca
commit-date: 2023-05-31
host: x86_64-unknown-linux-gnu
release: 1.70.0
LLVM version: 16.0.2
```

### Error output

```
error: internal compiler error: encountered incremental compilation error with mir_built(7ba65f08700df30b-a3af4d384131fa5a)
  |
  = help: This is a known issue with the compiler. Run `cargo clean -p neo4j` or `cargo clean` to allow your project to compile
  = note: Please follow the instructions below to create a bug report with the provided information
  = note: See <https://github.com/rust-lang/rust/issues/84970> for more information
```

<!--
Include a backtrace in the code block by setting `RUST_BACKTRACE=1` in your
environment. E.g. `RUST_BACKTRACE=1 cargo build`.
-->
<details><summary><strong>Backtrace</strong></summary>
<p>

```
thread 'rustc' panicked at 'Found unstable fingerprints for mir_built(7ba65f08700df30b-a3af4d384131fa5a): Steal { value: RwLock(RefCell { value: Some(Body { basic_blocks: BasicBlocks { basic_blocks: [BasicBlockData { statements: [StorageLive(_3), StorageLive(_4), StorageLive(_5), _5 = &((*_1).0: std::sync::Mutex<driver::config::mockable::mock_tls_helper::__secure_tls_config::Matcher>)], terminator: Some(Terminator { source_info: SourceInfo { span: neo4j/src/driver/config.rs:888:22: 888:30 (#221), scope: scope[0] }, kind: _4 = std::sync::Mutex::<__secure_tls_config::Matcher>::lock(move _5) -> [return: bb1, unwind: bb18] }), is_cleanup: false }, BasicBlockData { statements: [StorageDead(_5)], terminator: Some(Terminator { source_info: SourceInfo { span: neo4j/src/driver/config.rs:888:22: 888:30 (#221), scope: scope[0] }, kind: _3 = std::result::Result::<std::sync::MutexGuard<'_, __secure_tls_config::Matcher>, PoisonError<std::sync::MutexGuard<'_, __secure_tls_config::Matcher>>>::unwrap(move _4) -> [return: bb2, unwind: bb17] }), is_cleanup: false }, BasicBlockData { statements: [StorageDead(_4), FakeRead(ForLet(None), _3), StorageLive(_6), StorageLive(_7), StorageLive(_8), StorageLive(_9), _9 = move _2], terminator: Some(Terminator { source_info: SourceInfo { span: neo4j/src/driver/config.rs:888:22: 888:30 (#221), scope: scope[1] }, kind: _8 = Box::<MockallF>::new(move _9) -> [return: bb3, unwind: bb15] }), is_cleanup: false }, BasicBlockData { statements: [_7 = move _8 as std::boxed::Box<dyn std::ops::Fn() -> bool + std::marker::Send> (Pointer(Unsize))], terminator: Some(Terminator { source_info: SourceInfo { span: neo4j/src/driver/config.rs:888:29: 888:30 (#221), scope: scope[1] }, kind: drop(_8) -> [return: bb4, unwind: bb13] }), is_cleanup: false }, BasicBlockData { statements: [StorageDead(_9), StorageDead(_8), _6 = __secure_tls_config::Matcher::Func(move _7)], terminator: Some(Terminator { source_info: SourceInfo { span: neo4j/src/driver/config.rs:888:29: 888:30 (#221), scope: scope[1] }, kind: drop(_7) -> [return: bb5, unwind: bb12] }), is_cleanup: false }, BasicBlockData { statements: [StorageDead(_7), StorageLive(_10), StorageLive(_11), _11 = &mut _3], terminator: Some(Terminator { source_info: SourceInfo { span: neo4j/src/driver/config.rs:888:22: 888:30 (#221), scope: scope[1] }, kind: _10 = <std::sync::MutexGuard<'_, __secure_tls_config::Matcher> as DerefMut>::deref_mut(move _11) -> [return: bb6, unwind: bb12] }), is_cleanup: false }, BasicBlockData { statements: [StorageDead(_11)], terminator: Some(Terminator { source_info: SourceInfo { span: neo4j/src/driver/config.rs:888:22: 888:30 (#6973), scope: scope[1] }, kind: drop((*_10)) -> [return: bb7, unwind: bb8] }), is_cleanup: false }, BasicBlockData { statements: [(*_10) = move _6], terminator: Some(Terminator { source_info: SourceInfo { span: neo4j/src/driver/config.rs:888:29: 888:30 (#221), scope: scope[1] }, kind: drop(_6) -> [return: bb9, unwind: bb16] }), is_cleanup: false }, BasicBlockData { statements: [(*_10) = move _6], terminator: Some(Terminator { source_info: SourceInfo { span: neo4j/src/driver/config.rs:888:22: 888:30 (#6973), scope: scope[1] }, kind: goto -> bb12 }), is_cleanup: true }, BasicBlockData { statements: [StorageDead(_6), StorageDead(_10), _0 = const ()], terminator: Some(Terminator { source_info: SourceInfo { span: neo4j/src/driver/config.rs:888:29: 888:30 (#221), scope: scope[0] }, kind: drop(_3) -> [return: bb10, unwind: bb18] }), is_cleanup: false }, BasicBlockData { statements: [StorageDead(_3)], terminator: Some(Terminator { source_info: SourceInfo { span: neo4j/src/driver/config.rs:888:29: 888:30 (#221), scope: scope[0] }, kind: drop(_2) -> [return: bb11, unwind: bb19] }), is_cleanup: false }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: neo4j/src/driver/config.rs:888:30: 888:30 (#221), scope: scope[0] }, kind: return }), is_cleanup: false }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: neo4j/src/driver/config.rs:888:29: 888:30 (#221), scope: scope[1] }, kind: drop(_6) -> [return: bb16, unwind terminate] }), is_cleanup: true }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: neo4j/src/driver/config.rs:888:29: 888:30 (#221), scope: scope[1] }, kind: drop(_9) -> [return: bb14, unwind terminate] }), is_cleanup: true }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: neo4j/src/driver/config.rs:888:29: 888:30 (#221), scope: scope[1] }, kind: drop(_7) -> [return: bb16, unwind terminate] }), is_cleanup: true }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: neo4j/src/driver/config.rs:888:29: 888:30 (#221), scope: scope[1] }, kind: drop(_9) -> [return: bb16, unwind terminate] }), is_cleanup: true }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: neo4j/src/driver/config.rs:888:29: 888:30 (#221), scope: scope[0] }, kind: drop(_3) -> [return: bb18, unwind terminate] }), is_cleanup: true }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: neo4j/src/driver/config.rs:888:29: 888:30 (#221), scope: scope[0] }, kind: drop(_4) -> [return: bb18, unwind terminate] }), is_cleanup: true }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: neo4j/src/driver/config.rs:888:29: 888:30 (#221), scope: scope[0] }, kind: drop(_2) -> [return: bb19, unwind terminate] }), is_cleanup: true }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: neo4j/src/driver/config.rs:888:22: 888:30 (#221), scope: scope[0] }, kind: resume }), is_cleanup: true }], cache: Cache { predecessors: OnceCell(Uninit), switch_sources: OnceCell(Uninit), is_cyclic: OnceCell(Uninit), postorder: OnceCell(Uninit) } }, phase: Built, pass_count: 0, source: MirSource { instance: Item(WithOptConstParam { did: DefId(0:4012 ~ neo4j[e07c]::driver::config::mockable::mock_tls_helper::__secure_tls_config::{impl#6}::withf), const_param_did: None }), promoted: None }, source_scopes: [SourceScopeData { span: neo4j/src/driver/config.rs:888:22: 888:30 (#221), parent_scope: None, inlined: None, inlined_parent_scope: None, local_data: Set(SourceScopeLocalData { lint_root: HirId(DefId(0:4012 ~ neo4j[e07c]::driver::config::mockable::mock_tls_helper::__secure_tls_config::{impl#6}::withf).0), safety: Safe }) }, SourceScopeData { span: neo4j/src/driver/config.rs:888:22: 888:30 (#221), parent_scope: Some(scope[0]), inlined: None, inlined_parent_scope: None, local_data: Set(SourceScopeLocalData { lint_root: HirId(DefId(0:4012 ~ neo4j[e07c]::driver::config::mockable::mock_tls_helper::__secure_tls_config::{impl#6}::withf).0), safety: Safe }) }], generator: None, local_decls: [LocalDecl { mutability: Mut, local_info: Set(Boring), internal: false, ty: (), user_ty: None, source_info: SourceInfo { span: neo4j/src/driver/config.rs:888:22: 888:22 (#221), scope: scope[0] } }, LocalDecl { mutability: Not, local_info: Set(User(ImplicitSelf(MutRef))), internal: false, ty: &mut driver::config::mockable::mock_tls_helper::__secure_tls_config::Common, user_ty: None, source_info: SourceInfo { span: neo4j/src/driver/config.rs:888:22: 888:30 (#221), scope: scope[0] } }, LocalDecl { mutability: Not, local_info: Set(User(Var(VarBindingForm { binding_mode: BindByValue(Not), opt_ty_info: None, opt_match_place: Some((None, neo4j/src/driver/config.rs:888:22: 888:30 (#221))), pat_span: neo4j/src/driver/config.rs:888:22: 888:30 (#221) }))), internal: false, ty: MockallF, user_ty: None, source_info: SourceInfo { span: neo4j/src/driver/config.rs:888:22: 888:30 (#221), scope: scope[0] } }, LocalDecl { mutability: Mut, local_info: Set(User(Var(VarBindingForm { binding_mode: BindByValue(Mut), opt_ty_info: None, opt_match_place: Some((None, neo4j/src/driver/config.rs:888:22: 888:30 (#221))), pat_span: neo4j/src/driver/config.rs:888:22: 888:30 (#221) }))), internal: false, ty: std::sync::MutexGuard<'_, driver::config::mockable::mock_tls_helper::__secure_tls_config::Matcher>, user_ty: None, source_info: SourceInfo { span: neo4j/src/driver/config.rs:888:22: 888:30 (#221), scope: scope[0] } }, LocalDecl { mutability: Mut, local_info: Set(Boring), internal: false, ty: std::result::Result<std::sync::MutexGuard<'_, driver::config::mockable::mock_tls_helper::__secure_tls_config::Matcher>, std::sync::PoisonError<std::sync::MutexGuard<'_, driver::config::mockable::mock_tls_helper::__secure_tls_config::Matcher>>>, user_ty: None, source_info: SourceInfo { span: neo4j/src/driver/config.rs:888:22: 888:30 (#221), scope: scope[0] } }, LocalDecl { mutability: Mut, local_info: Set(Boring), internal: false, ty: &std::sync::Mutex<driver::config::mockable::mock_tls_helper::__secure_tls_config::Matcher>, user_ty: None, source_info: SourceInfo { span: neo4j/src/driver/config.rs:888:22: 888:30 (#221), scope: scope[0] } }, LocalDecl { mutability: Mut, local_info: Set(Boring), internal: false, ty: driver::config::mockable::mock_tls_helper::__secure_tls_config::Matcher, user_ty: None, source_info: SourceInfo { span: neo4j/src/driver/config.rs:888:22: 888:30 (#221), scope: scope[0] } }, LocalDecl { mutability: Mut, local_info: Set(AggregateTemp), internal: false, ty: std::boxed::Box<dyn std::ops::Fn() -> bool + std::marker::Send>, user_ty: None, source_info: SourceInfo { span: neo4j/src/driver/config.rs:888:22: 888:30 (#221), scope: scope[0] } }, LocalDecl { mutability: Mut, local_info: Set(Boring), internal: false, ty: std::boxed::Box<MockallF>, user_ty: None, source_info: SourceInfo { span: neo4j/src/driver/config.rs:888:22: 888:30 (#221), scope: scope[0] } }, LocalDecl { mutability: Mut, local_info: Set(Boring), internal: false, ty: MockallF, user_ty: None, source_info: SourceInfo { span: neo4j/src/driver/config.rs:888:22: 888:30 (#221), scope: scope[0] } }, LocalDecl { mutability: Mut, local_info: Set(Boring), internal: false, ty: &mut driver::config::mockable::mock_tls_helper::__secure_tls_config::Matcher, user_ty: None, source_info: SourceInfo { span: neo4j/src/driver/config.rs:888:22: 888:30 (#221), scope: scope[0] } }, LocalDecl { mutability: Mut, local_info: Set(Boring), internal: false, ty: &mut std::sync::MutexGuard<'_, driver::config::mockable::mock_tls_helper::__secure_tls_config::Matcher>, user_ty: None, source_info: SourceInfo { span: neo4j/src/driver/config.rs:888:22: 888:30 (#221), scope: scope[0] } }], user_type_annotations: [CanonicalUserTypeAnnotation { user_ty: Canonical { value: TypeOf(DefId(5:285 ~ alloc[c91d]::boxed::{impl#0}::new), UserSubsts { substs: [^0], user_self_ty: Some(UserSelfTy { impl_def_id: DefId(5:283 ~ alloc[c91d]::boxed::{impl#0}), self_ty: std::boxed::Box<^1, ^2> }) }), max_universe: U0, variables: [CanonicalVarInfo { kind: Ty(General(U0)) }, CanonicalVarInfo { kind: Ty(General(U0)) }, CanonicalVarInfo { kind: Ty(General(U0)) }] }, span: neo4j/src/driver/config.rs:888:22: 888:30 (#221), inferred_ty: fn(MockallF) -> std::boxed::Box<MockallF> {std::boxed::Box::<MockallF>::new} }], arg_count: 2, spread_arg: None, var_debug_info: [VarDebugInfo { name: "self", source_info: SourceInfo { span: neo4j/src/driver/config.rs:888:22: 888:30 (#221), scope: scope[0] }, value: _1, argument_index: Some(1) }, VarDebugInfo { name: "__mockall_f", source_info: SourceInfo { span: neo4j/src/driver/config.rs:888:22: 888:30 (#221), scope: scope[0] }, value: _2, argument_index: Some(2) }, VarDebugInfo { name: "__mockall_guard", source_info: SourceInfo { span: neo4j/src/driver/config.rs:888:22: 888:30 (#221), scope: scope[1] }, value: _3, argument_index: None }], span: neo4j/src/driver/config.rs:888:22: 888:30 (#221), required_consts: [], is_polymorphic: true, injection_phase: None, tainted_by_errors: None }) }) }', /rustc/90c541806f23a127002de5b4038be731ba1458ca/compiler/rustc_query_system/src/query/plumbing.rs:715:9
stack backtrace:
   0: rust_begin_unwind
             at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/panicking.rs:578:5
   1: core::panicking::panic_fmt
             at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/panicking.rs:67:14
   2: rustc_query_system::query::plumbing::incremental_verify_ich_failed::<rustc_middle::ty::context::TyCtxt>
   3: <std::thread::local::LocalKey<core::cell::Cell<*const ()>>>::with::<rustc_middle::ty::context::tls::enter_context<rustc_query_system::query::plumbing::execute_job_incr<rustc_query_impl::queries::mir_built, rustc_query_impl::plumbing::QueryCtxt>::{closure#1}, core::option::Option<(rustc_middle::query::erase::Erased<[u8; 8]>, rustc_query_system::dep_graph::graph::DepNodeIndex)>>::{closure#0}, core::option::Option<(rustc_middle::query::erase::Erased<[u8; 8]>, rustc_query_system::dep_graph::graph::DepNodeIndex)>>
   4: rustc_query_system::query::plumbing::try_execute_query::<rustc_query_impl::queries::mir_built, rustc_query_impl::plumbing::QueryCtxt>
   5: <rustc_query_impl::Queries as rustc_middle::ty::query::QueryEngine>::mir_built
   6: rustc_mir_transform::mir_const
   7: <std::thread::local::LocalKey<core::cell::Cell<*const ()>>>::with::<rustc_middle::ty::context::tls::enter_context<rustc_query_system::query::plumbing::try_load_from_disk_and_cache_in_memory<rustc_query_impl::queries::mir_const, rustc_query_impl::plumbing::QueryCtxt>::{closure#1}, rustc_middle::query::erase::Erased<[u8; 8]>>::{closure#0}, rustc_middle::query::erase::Erased<[u8; 8]>>
   8: <rustc_middle::dep_graph::dep_node::DepKind as rustc_query_system::dep_graph::DepKind>::with_deps::<rustc_query_system::query::plumbing::try_load_from_disk_and_cache_in_memory<rustc_query_impl::queries::mir_const, rustc_query_impl::plumbing::QueryCtxt>::{closure#1}, rustc_middle::query::erase::Erased<[u8; 8]>>
   9: <std::thread::local::LocalKey<core::cell::Cell<*const ()>>>::with::<rustc_middle::ty::context::tls::enter_context<rustc_query_system::query::plumbing::execute_job_incr<rustc_query_impl::queries::mir_const, rustc_query_impl::plumbing::QueryCtxt>::{closure#1}, core::option::Option<(rustc_middle::query::erase::Erased<[u8; 8]>, rustc_query_system::dep_graph::graph::DepNodeIndex)>>::{closure#0}, core::option::Option<(rustc_middle::query::erase::Erased<[u8; 8]>, rustc_query_system::dep_graph::graph::DepNodeIndex)>>
  10: rustc_query_system::query::plumbing::try_execute_query::<rustc_query_impl::queries::mir_const, rustc_query_impl::plumbing::QueryCtxt>
  11: rustc_mir_transform::mir_promoted
  12: <std::thread::local::LocalKey<core::cell::Cell<*const ()>>>::with::<rustc_middle::ty::context::tls::enter_context<rustc_query_system::query::plumbing::try_load_from_disk_and_cache_in_memory<rustc_query_impl::queries::mir_promoted, rustc_query_impl::plumbing::QueryCtxt>::{closure#1}, rustc_middle::query::erase::Erased<[u8; 16]>>::{closure#0}, rustc_middle::query::erase::Erased<[u8; 16]>>
  13: <rustc_middle::dep_graph::dep_node::DepKind as rustc_query_system::dep_graph::DepKind>::with_deps::<rustc_query_system::query::plumbing::try_load_from_disk_and_cache_in_memory<rustc_query_impl::queries::mir_promoted, rustc_query_impl::plumbing::QueryCtxt>::{closure#1}, rustc_middle::query::erase::Erased<[u8; 16]>>
  14: <std::thread::local::LocalKey<core::cell::Cell<*const ()>>>::with::<rustc_middle::ty::context::tls::enter_context<rustc_query_system::query::plumbing::execute_job_incr<rustc_query_impl::queries::mir_promoted, rustc_query_impl::plumbing::QueryCtxt>::{closure#1}, core::option::Option<(rustc_middle::query::erase::Erased<[u8; 16]>, rustc_query_system::dep_graph::graph::DepNodeIndex)>>::{closure#0}, core::option::Option<(rustc_middle::query::erase::Erased<[u8; 16]>, rustc_query_system::dep_graph::graph::DepNodeIndex)>>
  15: rustc_query_system::query::plumbing::try_execute_query::<rustc_query_impl::queries::mir_promoted, rustc_query_impl::plumbing::QueryCtxt>
  16: rustc_borrowck::mir_borrowck
  17: <rustc_borrowck::provide::{closure#0} as core::ops::function::FnOnce<(rustc_middle::ty::context::TyCtxt, rustc_span::def_id::LocalDefId)>>::call_once
  18: <std::thread::local::LocalKey<core::cell::Cell<*const ()>>>::with::<rustc_middle::ty::context::tls::enter_context<rustc_query_system::query::plumbing::execute_job_incr<rustc_query_impl::queries::mir_borrowck, rustc_query_impl::plumbing::QueryCtxt>::{closure#2}, (rustc_middle::query::erase::Erased<[u8; 8]>, rustc_query_system::dep_graph::graph::DepNodeIndex)>::{closure#0}, (rustc_middle::query::erase::Erased<[u8; 8]>, rustc_query_system::dep_graph::graph::DepNodeIndex)>
  19: rustc_query_system::query::plumbing::try_execute_query::<rustc_query_impl::queries::mir_borrowck, rustc_query_impl::plumbing::QueryCtxt>
  20: rustc_data_structures::sync::par_for_each_in::<&[rustc_span::def_id::LocalDefId], <rustc_middle::hir::map::Map>::par_body_owners<rustc_interface::passes::analysis::{closure#2}::{closure#0}>::{closure#0}>
  21: <rustc_session::session::Session>::time::<(), rustc_interface::passes::analysis::{closure#2}>
  22: rustc_interface::passes::analysis
  23: <std::thread::local::LocalKey<core::cell::Cell<*const ()>>>::with::<rustc_middle::ty::context::tls::enter_context<rustc_query_system::query::plumbing::execute_job_incr<rustc_query_impl::queries::analysis, rustc_query_impl::plumbing::QueryCtxt>::{closure#2}, (rustc_middle::query::erase::Erased<[u8; 1]>, rustc_query_system::dep_graph::graph::DepNodeIndex)>::{closure#0}, (rustc_middle::query::erase::Erased<[u8; 1]>, rustc_query_system::dep_graph::graph::DepNodeIndex)>
  24: rustc_query_system::query::plumbing::try_execute_query::<rustc_query_impl::queries::analysis, rustc_query_impl::plumbing::QueryCtxt>
  25: <rustc_query_impl::Queries as rustc_middle::ty::query::QueryEngine>::analysis
  26: <std::thread::local::LocalKey<core::cell::Cell<*const ()>>>::with::<rustc_middle::ty::context::tls::enter_context<<rustc_middle::ty::context::GlobalCtxt>::enter<rustc_driver_impl::run_compiler::{closure#1}::{closure#2}::{closure#4}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>
  27: <rustc_interface::interface::Compiler>::enter::<rustc_driver_impl::run_compiler::{closure#1}::{closure#2}, core::result::Result<core::option::Option<rustc_interface::queries::Linker>, rustc_span::ErrorGuaranteed>>
  28: rustc_span::set_source_map::<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#1}>::{closure#0}::{closure#0}>
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

error: the compiler unexpectedly panicked. this is a bug.

note: we would appreciate a bug report: https://github.com/rust-lang/rust/issues/new?labels=C-bug%2C+I-ICE%2C+T-compiler&template=ice.md

note: rustc 1.70.0 (90c541806 2023-05-31) running on x86_64-unknown-linux-gnu

note: compiler flags: -C embed-bitcode=no -C debuginfo=2 -C incremental=[REDACTED]

note: some of the compiler flags provided by cargo are hidden

query stack during panic:
#0 [mir_built] building MIR for `driver::config::mockable::mock_tls_helper::__secure_tls_config::<impl at neo4j/src/driver/config.rs:888:22: 888:30>::withf`
#1 [mir_const] preparing `driver::config::mockable::mock_tls_helper::__secure_tls_config::<impl at neo4j/src/driver/config.rs:888:22: 888:30>::withf` for borrow checking
#2 [mir_promoted] processing MIR for `driver::config::mockable::mock_tls_helper::__secure_tls_config::<impl at neo4j/src/driver/config.rs:888:22: 888:30>::withf`
#3 [mir_borrowck] borrow-checking `driver::config::mockable::mock_tls_helper::__secure_tls_config::<impl at neo4j/src/driver/config.rs:888:22: 888:30>::withf`
#4 [analysis] running analysis passes on this crate
end of query stack
error: internal compiler error: re-entrant incremental verify failure, suppressing message
```

</p>
</details>

### Related
https://github.com/rust-lang/rust/issues/84970