Run cargo clippy on https://github.com/PyO3/PyO3 resulted in ICE while cargo build compiles.
error: internal compiler error: src/librustc/ty/context.rs:304: node_id_to_type: no type for node `expr ::rt::begin_panic (id=35945)`
thread 'rustc' panicked at 'Box<Any>', src/librustc_errors/lib.rs:480
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
stack backtrace:
0: std::sys::imp::backtrace::tracing::imp::unwind_backtrace
1: std::panicking::default_hook::{{closure}}
2: std::panicking::default_hook
3: std::panicking::rust_panic_with_hook
4: std::panicking::begin_panic
5: rustc_errors::Handler::bug
6: rustc::session::opt_span_bug_fmt::{{closure}}
7: rustc::session::opt_span_bug_fmt
8: rustc::session::bug_fmt
9: rustc::ty::context::TypeckTables::node_id_to_type
10: rustc::ty::context::TypeckTables::expr_ty
11: <clippy_lints::functions::DerefVisitor<'a, 'tcx> as rustc::hir::intravisit::Visitor<'tcx>>::visit_expr
12: <clippy_lints::functions::DerefVisitor<'a, 'tcx> as rustc::hir::intravisit::Visitor<'tcx>>::visit_expr
13: clippy_lints::functions::Functions::check_raw_ptr
14: <rustc::lint::context::LateContext<'a, 'tcx> as rustc::hir::intravisit::Visitor<'tcx>>::visit_trait_item::{{closure}}::{{closure}}
15: rustc::lint::context::LintContext::with_lint_attrs
16: rustc::hir::intravisit::Visitor::visit_nested_trait_item
17: <rustc::lint::context::LateContext<'a, 'tcx> as rustc::hir::intravisit::Visitor<'tcx>>::visit_item::{{closure}}::{{closure}}
18: rustc::lint::context::LintContext::with_lint_attrs
19: <rustc::lint::context::LateContext<'a, 'tcx> as rustc::hir::intravisit::Visitor<'tcx>>::visit_mod
20: <rustc::lint::context::LateContext<'a, 'tcx> as rustc::hir::intravisit::Visitor<'tcx>>::visit_item::{{closure}}::{{closure}}
21: rustc::lint::context::LintContext::with_lint_attrs
22: <rustc::lint::context::LateContext<'a, 'tcx> as rustc::hir::intravisit::Visitor<'tcx>>::visit_mod
23: <rustc::lint::context::LateContext<'a, 'tcx> as rustc::hir::intravisit::Visitor<'tcx>>::visit_item::{{closure}}::{{closure}}
24: rustc::lint::context::LintContext::with_lint_attrs
25: <rustc::lint::context::LateContext<'a, 'tcx> as rustc::hir::intravisit::Visitor<'tcx>>::visit_mod
26: rustc::lint::context::check_crate
27: rustc_driver::driver::phase_3_run_analysis_passes::{{closure}}
28: rustc_driver::driver::phase_3_run_analysis_passes
29: rustc_driver::driver::compile_input
30: rustc_driver::run_compiler
thread 'main' panicked at 'rustc_thread failed: Any', src/libcore/result.rs:860
stack backtrace:
0: std::sys::imp::backtrace::tracing::imp::unwind_backtrace
1: std::panicking::default_hook::{{closure}}
2: std::panicking::default_hook
3: std::panicking::rust_panic_with_hook
4: std::panicking::begin_panic
5: std::panicking::begin_panic_fmt
6: rust_begin_unwind
7: core::panicking::panic_fmt
8: core::result::unwrap_failed
9: cargo_clippy::main
10: __rust_maybe_catch_panic
11: std::rt::lang_start
error: Could not compile `pyo3`.
To learn more, run the command again with --verbose.
Reduced test case:
pub trait A
{
fn b(&self, _c: *const ())
{ panic!() }
}
produces:
error: internal compiler error: /checkout/src/librustc/ty/context.rs:304: node_id_to_type: no type for node `expr ::rt::begin_panic (id=19)`
thread 'rustc' panicked at 'Box<Any>', /checkout/src/librustc_errors/lib.rs:480
stack backtrace:
0: 0x7fd514e1a383 - std::sys::imp::backtrace::tracing::imp::unwind_backtrace::hcab99e0793da62c7
at /checkout/src/libstd/sys/unix/backtrace/tracing/gcc_s.rs:49
1: 0x7fd514e156a6 - std::sys_common::backtrace::_print::hbfe5b0c7e79c0711
at /checkout/src/libstd/sys_common/backtrace.rs:71
2: 0x7fd514e27b0a - std::panicking::default_hook::{{closure}}::h9ba2c6973907a2be
at /checkout/src/libstd/sys_common/backtrace.rs:60
at /checkout/src/libstd/panicking.rs:355
3: 0x7fd514e2770b - std::panicking::default_hook::he4d55e2dd21c3cca
at /checkout/src/libstd/panicking.rs:371
4: 0x7fd514e27f1b - std::panicking::rust_panic_with_hook::ha138c05cd33ad44d
at /checkout/src/libstd/panicking.rs:549
5: 0x7fd5152f1567 - std::panicking::begin_panic::h635dcb616afebbaf
6: 0x7fd51530bbee - rustc_errors::Handler::bug::hb434cbfb1834933a
7: 0x7fd516325d00 - rustc::session::opt_span_bug_fmt::{{closure}}::hac204eef65c75f97
8: 0x7fd516325818 - rustc::session::opt_span_bug_fmt::h8aedf023459cb182
9: 0x7fd516325511 - rustc::session::bug_fmt::h09b25486536a5ac7
10: 0x7fd5163b1b42 - rustc::ty::context::TypeckTables::node_id_to_type::h56a55768fa4ad026
11: 0x7fd5163b1d78 - rustc::ty::context::TypeckTables::expr_ty::hfab88676d34bc667
12: 0x556520f8693f - <clippy_lints::functions::DerefVisitor<'a, 'tcx> as rustc::hir::intravisit::Visitor<'tcx>>::visit_expr::h4d43e41efd985cdd
13: 0x556520f86985 - <clippy_lints::functions::DerefVisitor<'a, 'tcx> as rustc::hir::intravisit::Visitor<'tcx>>::visit_expr::h4d43e41efd985cdd
14: 0x556520f863d2 - clippy_lints::functions::Functions::check_raw_ptr::h60a4945e3e3a6a72
15: 0x7fd5162ac296 - rustc::lint::context::LintContext::with_lint_attrs::h25832a40d1bcef80
16: 0x7fd5161fcd26 - rustc::hir::intravisit::Visitor::visit_nested_trait_item::hc58527da207031f0
17: 0x7fd51620075c - rustc::hir::intravisit::walk_item::ha2b9b5584a3f6afb
18: 0x7fd5162b96dc - rustc::lint::context::LintContext::with_lint_attrs::he485e5f2a2fad768
19: 0x7fd5162bd27d - <rustc::lint::context::LateContext<'a, 'tcx> as rustc::hir::intravisit::Visitor<'tcx>>::visit_mod::h41b1beb69ae054d3
20: 0x7fd5162c1edf - rustc::lint::context::check_crate::h633e1781f99229a1
21: 0x7fd516c428c3 - rustc_driver::driver::phase_3_run_analysis_passes::{{closure}}::h5ee2deada840296d
22: 0x7fd516c3d238 - rustc_driver::driver::phase_3_run_analysis_passes::hbc88dd193ceb02a2
23: 0x7fd516c1a940 - rustc_driver::driver::compile_input::h22316d34abd2e92e
24: 0x7fd516c63ea6 - rustc_driver::run_compiler::he2000b3a5ab5e49a
25: 0x556520e9c3ef - std::sys_common::backtrace::__rust_begin_short_backtrace::h6ef972a84f19f555
26: 0x556520e9d93b - std::panicking::try::do_call::ha8e5c156fc78af50
27: 0x7fd514e312aa - __rust_maybe_catch_panic
at /checkout/src/libpanic_unwind/lib.rs:98
28: 0x556520ea4ab7 - <F as alloc::boxed::FnBox<A>>::call_box::h85dff89ae2b426bb
29: 0x7fd514e26905 - std::sys::imp::thread::Thread::new::thread_start::h227b2afaa9316a8d
at /checkout/src/liballoc/boxed.rs:658
at /checkout/src/libstd/sys_common/thread.rs:21
at /checkout/src/libstd/sys/unix/thread.rs:84
30: 0x7fd514979296 - start_thread
31: 0x7fd5133e725e - __clone
32: 0x0 - <unknown>
thread 'main' panicked at 'rustc_thread failed: Any', /checkout/src/libcore/result.rs:860
stack backtrace:
0: 0x7fd514e1a383 - std::sys::imp::backtrace::tracing::imp::unwind_backtrace::hcab99e0793da62c7
at /checkout/src/libstd/sys/unix/backtrace/tracing/gcc_s.rs:49
1: 0x7fd514e156a6 - std::sys_common::backtrace::_print::hbfe5b0c7e79c0711
at /checkout/src/libstd/sys_common/backtrace.rs:71
2: 0x7fd514e27b0a - std::panicking::default_hook::{{closure}}::h9ba2c6973907a2be
at /checkout/src/libstd/sys_common/backtrace.rs:60
at /checkout/src/libstd/panicking.rs:355
3: 0x7fd514e2770b - std::panicking::default_hook::he4d55e2dd21c3cca
at /checkout/src/libstd/panicking.rs:371
4: 0x7fd514e27f1b - std::panicking::rust_panic_with_hook::ha138c05cd33ad44d
at /checkout/src/libstd/panicking.rs:549
5: 0x7fd514e27df4 - std::panicking::begin_panic::hcdbfa35c94142fa2
at /checkout/src/libstd/panicking.rs:511
6: 0x7fd514e27d29 - std::panicking::begin_panic_fmt::hc09fe500d9b7be81
at /checkout/src/libstd/panicking.rs:495
7: 0x7fd514e27cb7 - rust_begin_unwind
at /checkout/src/libstd/panicking.rs:471
8: 0x7fd514e6ffcd - core::panicking::panic_fmt::h883a028e9f4b4457
at /checkout/src/libcore/panicking.rs:69
9: 0x556520ea4798 - core::result::unwrap_failed::hc53a1b62fe59ccdb
10: 0x556520eaa213 - cargo_clippy::main::h18fcf23b7cdf698e
11: 0x7fd514e312aa - __rust_maybe_catch_panic
at /checkout/src/libpanic_unwind/lib.rs:98
12: 0x7fd514e28db8 - std::rt::lang_start::ha09816a4e25587ea
at /checkout/src/libstd/panicking.rs:433
at /checkout/src/libstd/panic.rs:361
at /checkout/src/libstd/rt.rs:59
13: 0x7fd51331a439 - __libc_start_main
14: 0x556520e9a0f9 - _start
15: 0x0 - <unknown>
Most helpful comment
Reduced test case:
produces: