rust-lang / rust-lang/rust-clippy

proc_macro: ` attempt to subtract with overflow `

Open
#14,968 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

C-bug E-needs-mcve I-ICE
Dominant language
Rust
Stars
13.5k
Forks
2.2k
Avg merge
2d 10h
Merged PRs (30d)
32

Description

Summary

have a rustc with debug assertions and overflow checks enabled
./x.py clippy --stage=1 -Aclippy::all -Wclippy::redundant_pub_crate

Version
rustc @ d9a739363878a06633eb912e44f02a3c5d6ba08c
Error output
Backtrace

thread 'rustc' panicked at compiler/rustc_errors/src/emitter.rs:1161:34:
attempt to subtract with overflow
stack backtrace:
 0: __rustc::rust_begin_unwind
           at /rustc/95597e848d27a82b8864c677ab807e9f0be1f68c/library/std/src/panicking.rs:697:5
 1: core::panicking::panic_fmt
           at /rustc/95597e848d27a82b8864c677ab807e9f0be1f68c/library/core/src/panicking.rs:75:14
 2: core::panicking::panic_const::panic_const_sub_overflow
           at /rustc/95597e848d27a82b8864c677ab807e9f0be1f68c/library/core/src/panicking.rs:175:17
 3: <rustc_errors::emitter::HumanEmitter>::render_source_line::{closure#0}
 4: <rustc_errors::emitter::HumanEmitter>::render_source_line
           at ./compiler/rustc_errors/src/emitter.rs:703:5
 5: <rustc_errors::emitter::HumanEmitter>::emit_messages_default_inner::{closure#0}
           at ./compiler/rustc_errors/src/emitter.rs:1833:34
 6: <rustc_errors::emitter::HumanEmitter>::emit_messages_default_inner
           at ./compiler/rustc_errors/src/emitter.rs:1444:5
 7: <rustc_errors::emitter::HumanEmitter>::emit_messages_default
           at ./compiler/rustc_errors/src/emitter.rs:2470:15
 8: <rustc_errors::emitter::HumanEmitter as rustc_errors::emitter::Emitter>::emit_diagnostic
           at ./compiler/rustc_errors/src/emitter.rs:512:9
 9: <rustc_errors::json::Diagnostic>::from_errors_diagnostic
           at ./compiler/rustc_errors/src/json.rs:372:9
10: <rustc_errors::json::JsonEmitter as rustc_errors::emitter::Emitter>::emit_diagnostic
           at ./compiler/rustc_errors/src/json.rs:123:20
11: <rustc_errors::DiagCtxtInner>::emit_diagnostic::{closure#3}
           at ./compiler/rustc_errors/src/lib.rs:1658:17
12: rustc_interface::callbacks::track_diagnostic::<core::option::Option<rustc_span::ErrorGuaranteed>>::{closure#0}::{closure#0}
           at ./compiler/rustc_interface/src/callbacks.rs:49:46
13: rustc_middle::ty::context::tls::enter_context::<rustc_interface::callbacks::track_diagnostic<core::option::Option<rustc_span::ErrorGuaranteed>>::{closure#0}::{closure#0}, core::option::Option<rustc_span::ErrorGuaranteed>>::{closure#0}
           at ./compiler/rustc_middle/src/ty/context/tls.rs:60:9
14: <std::thread::local::LocalKey<core::cell::Cell<*const ()>>>::try_with::<rustc_middle::ty::context::tls::enter_context<rustc_interface::callbacks::track_diagnostic<core::option::Option<rustc_span::ErrorGuaranteed>>::{closure#0}::{closure#0}, core::option::Option<rustc_span::ErrorGuaranteed>>::{closure#0}, core::option::Option<rustc_span::ErrorGuaranteed>>
           at ./library/std/src/thread/local.rs:315:12
15: <std::thread::local::LocalKey<core::cell::Cell<*const ()>>>::with::<rustc_middle::ty::context::tls::enter_context<rustc_interface::callbacks::track_diagnostic<core::option::Option<rustc_span::ErrorGuaranteed>>::{closure#0}::{closure#0}, core::option::Option<rustc_span::ErrorGuaranteed>>::{closure#0}, core::option::Option<rustc_span::ErrorGuaranteed>>
           at ./library/std/src/thread/local.rs:279:15
16: rustc_middle::ty::context::tls::enter_context::<rustc_interface::callbacks::track_diagnostic<core::option::Option<rustc_span::ErrorGuaranteed>>::{closure#0}::{closure#0}, core::option::Option<rustc_span::ErrorGuaranteed>>
           at ./compiler/rustc_middle/src/ty/context/tls.rs:57:5
17: rustc_interface::callbacks::track_diagnostic::<core::option::Option<rustc_span::ErrorGuaranteed>>::{closure#0}
           at ./compiler/rustc_interface/src/callbacks.rs:49:13
18: rustc_middle::ty::context::tls::with_context_opt::<rustc_interface::callbacks::track_diagnostic<core::option::Option<rustc_span::ErrorGuaranteed>>::{closure#0}, core::option::Option<rustc_span::ErrorGuaranteed>>
           at ./compiler/rustc_middle/src/ty/context/tls.rs:79:18
19: rustc_interface::callbacks::track_diagnostic::<core::option::Option<rustc_span::ErrorGuaranteed>>
           at ./compiler/rustc_interface/src/callbacks.rs:43:5
20: <rustc_errors::DiagCtxtInner>::emit_diagnostic
           at ./compiler/rustc_errors/src/lib.rs:1613:9
21: <rustc_errors::DiagCtxtHandle>::emit_diagnostic
           at ./compiler/rustc_errors/src/lib.rs:1140:9
22: <rustc_errors::diagnostic::Diag<()>>::emit_producing_nothing
           at ./compiler/rustc_errors/src/diagnostic.rs:1355:9
23: <() as rustc_errors::diagnostic::EmissionGuarantee>::emit_producing_guarantee
           at ./compiler/rustc_errors/src/diagnostic.rs:69:9
24: <rustc_errors::diagnostic::Diag<()>>::emit
           at ./compiler/rustc_errors/src/diagnostic.rs:1383:9
25: rustc_middle::lint::lint_level::lint_level_impl
           at ./compiler/rustc_middle/src/lint.rs:431:13
26: rustc_middle::lint::lint_level::<clippy_utils::diagnostics::span_lint_and_then<rustc_lint::context::LateContext, rustc_span::span_encoding::Span, alloc::string::String, <clippy_lints::redundant_pub_crate::RedundantPubCrate as rustc_lint::passes::LateLintPass>::check_item::{closure#1}>::{closure#0}>
           at ./compiler/rustc_middle/src/lint.rs:433:5
27: <rustc_lint::context::LateContext as rustc_lint::context::LintContext>::opt_span_lint::<rustc_span::span_encoding::Span, clippy_utils::diagnostics::span_lint_and_then<rustc_lint::context::LateContext, rustc_span::span_encoding::Span, alloc::string::String, <clippy_lints::redundant_pub_crate::RedundantPubCrate as rustc_lint::passes::LateLintPass>::check_item::{closure#1}>::{closure#0}>
28: <rustc_lint::context::LateContext as rustc_lint::context::LintContext>::span_lint::<rustc_span::span_encoding::Span, clippy_utils::diagnostics::span_lint_and_then<rustc_lint::context::LateContext, rustc_span::span_encoding::Span, alloc::string::String, <clippy_lints::redundant_pub_crate::RedundantPubCrate as rustc_lint::passes::LateLintPass>::check_item::{closure#1}>::{closure#0}>
           at ./compiler/rustc_lint/src/context.rs:536:9
29: clippy_utils::diagnostics::span_lint_and_then::<rustc_lint::context::LateContext, rustc_span::span_encoding::Span, alloc::string::String, <clippy_lints::redundant_pub_crate::RedundantPubCrate as rustc_lint::passes::LateLintPass>::check_item::{closure#1}>
           at ./src/tools/clippy/clippy_utils/src/diagnostics.rs:255:8
30: <clippy_lints::redundant_pub_crate::RedundantPubCrate as rustc_lint::passes::LateLintPass>::check_item
           at ./src/tools/clippy/clippy_lints/src/redundant_pub_crate.rs:60:13
31: <rustc_lint::late::RuntimeCombinedLateLintPass as rustc_lint::passes::LateLintPass>::check_item
           at ./compiler/rustc_lint/src/late.rs:328:21
32: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_item::{closure#0}::{closure#0}
           at ./compiler/rustc_lint/src/late.rs:33:5
33: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass>>::with_param_env::<<rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_item::{closure#0}::{closure#0}>
           at ./compiler/rustc_lint/src/late.rs:71:9
34: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_item::{closure#0}
           at ./compiler/rustc_lint/src/late.rs:130:13
35: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass>>::with_lint_attrs::<<rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_item::{closure#0}>
           at ./compiler/rustc_lint/src/late.rs:59:9
36: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_item
           at ./compiler/rustc_lint/src/late.rs:129:9
37: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_nested_item
           at ./compiler/rustc_hir/src/intravisit.rs:245:24
38: rustc_hir::intravisit::walk_mod::<rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass>>
           at ./compiler/rustc_hir/src/intravisit.rs:647:5
39: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_item::{closure#0}::{closure#0}
           at ./compiler/rustc_lint/src/late.rs:132:17
40: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass>>::with_param_env::<<rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_item::{closure#0}::{closure#0}>
           at ./compiler/rustc_lint/src/late.rs:71:9
41: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_item::{closure#0}
           at ./compiler/rustc_lint/src/late.rs:130:13
42: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass>>::with_lint_attrs::<<rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_item::{closure#0}>
           at ./compiler/rustc_lint/src/late.rs:59:9
43: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_item
           at ./compiler/rustc_lint/src/late.rs:129:9
44: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_nested_item
           at ./compiler/rustc_hir/src/intravisit.rs:245:24
45: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_stmt
           at ./compiler/rustc_lint/src/late.rs:179:9
46: rustc_hir::intravisit::walk_block::<rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass>>
           at ./compiler/rustc_hir/src/intravisit.rs:690:5
47: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_block
           at ./compiler/rustc_lint/src/late.rs:240:9
48: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_expr::{closure#0}::{closure#0}
           at ./compiler/rustc_lint/src/late.rs:167:17
49: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass>>::with_lint_attrs::<<rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_expr::{closure#0}::{closure#0}>
           at ./compiler/rustc_lint/src/late.rs:59:9
50: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_expr::{closure#0}
           at ./compiler/rustc_lint/src/late.rs:165:13
51: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_body
           at ./compiler/rustc_lint/src/late.rs:120:9
52: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_nested_body
           at ./compiler/rustc_lint/src/late.rs:103:9
53: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_fn
           at ./compiler/rustc_lint/src/late.rs:196:9
54: rustc_hir::intravisit::walk_impl_item::<rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass>>
           at ./compiler/rustc_hir/src/intravisit.rs:1274:47
55: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_impl_item::{closure#0}::{closure#0}
           at ./compiler/rustc_lint/src/late.rs:288:17
56: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass>>::with_param_env::<<rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_impl_item::{closure#0}::{closure#0}>
           at ./compiler/rustc_lint/src/late.rs:71:9
57: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_impl_item::{closure#0}
           at ./compiler/rustc_lint/src/late.rs:286:13
58: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass>>::with_lint_attrs::<<rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_impl_item::{closure#0}>
           at ./compiler/rustc_lint/src/late.rs:59:9
59: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_impl_item
           at ./compiler/rustc_lint/src/late.rs:285:9
60: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_nested_impl_item
           at ./compiler/rustc_hir/src/intravisit.rs:267:24
61: rustc_hir::intravisit::walk_impl_item_ref::<rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass>>
           at ./compiler/rustc_hir/src/intravisit.rs:1301:16
62: rustc_hir::intravisit::walk_item::<rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass>>
           at ./compiler/rustc_hir/src/intravisit.rs:612:13
63: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_item::{closure#0}::{closure#0}
           at ./compiler/rustc_lint/src/late.rs:132:17
64: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass>>::with_param_env::<<rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_item::{closure#0}::{closure#0}>
           at ./compiler/rustc_lint/src/late.rs:71:9
65: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_item::{closure#0}
           at ./compiler/rustc_lint/src/late.rs:130:13
66: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass>>::with_lint_attrs::<<rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_item::{closure#0}>
           at ./compiler/rustc_lint/src/late.rs:59:9
67: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_item
           at ./compiler/rustc_lint/src/late.rs:129:9
68: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_nested_item
           at ./compiler/rustc_hir/src/intravisit.rs:245:24
69: rustc_hir::intravisit::walk_mod::<rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass>>
           at ./compiler/rustc_hir/src/intravisit.rs:647:5
70: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_item::{closure#0}::{closure#0}
           at ./compiler/rustc_lint/src/late.rs:132:17
71: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass>>::with_param_env::<<rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_item::{closure#0}::{closure#0}>
           at ./compiler/rustc_lint/src/late.rs:71:9
72: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_item::{closure#0}
           at ./compiler/rustc_lint/src/late.rs:130:13
73: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass>>::with_lint_attrs::<<rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_item::{closure#0}>
           at ./compiler/rustc_lint/src/late.rs:59:9
74: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_item
           at ./compiler/rustc_lint/src/late.rs:129:9
75: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_nested_item
           at ./compiler/rustc_hir/src/intravisit.rs:245:24
76: rustc_hir::intravisit::walk_mod::<rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass>>
           at ./compiler/rustc_hir/src/intravisit.rs:647:5
77: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_item::{closure#0}::{closure#0}
           at ./compiler/rustc_lint/src/late.rs:132:17
78: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass>>::with_param_env::<<rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_item::{closure#0}::{closure#0}>
           at ./compiler/rustc_lint/src/late.rs:71:9
79: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_item::{closure#0}
           at ./compiler/rustc_lint/src/late.rs:130:13
80: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass>>::with_lint_attrs::<<rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_item::{closure#0}>
           at ./compiler/rustc_lint/src/late.rs:59:9
81: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_item
           at ./compiler/rustc_lint/src/late.rs:129:9
82: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass> as rustc_hir::intravisit::Visitor>::visit_nested_item
           at ./compiler/rustc_hir/src/intravisit.rs:245:24
83: rustc_hir::intravisit::walk_mod::<rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass>>
           at ./compiler/rustc_hir/src/intravisit.rs:647:5
84: rustc_lint::late::late_lint_crate_inner::<rustc_lint::late::RuntimeCombinedLateLintPass>::{closure#0}
           at ./compiler/rustc_lint/src/late.rs:448:9
85: <rustc_lint::late::LateContextAndPass<rustc_lint::late::RuntimeCombinedLateLintPass>>::with_lint_attrs::<rustc_lint::late::late_lint_crate_inner<rustc_lint::late::RuntimeCombinedLateLintPass>::{closure#0}>
           at ./compiler/rustc_lint/src/late.rs:59:9
86: rustc_lint::late::late_lint_crate_inner::<rustc_lint::late::RuntimeCombinedLateLintPass>
           at ./compiler/rustc_lint/src/late.rs:444:5
87: rustc_lint::late::late_lint_crate
           at ./compiler/rustc_lint/src/late.rs:433:5
88: rustc_lint::late::check_crate::{closure#0}::{closure#0}
           at ./compiler/rustc_lint/src/late.rs:459:17
89: <rustc_data_structures::profiling::VerboseTimingGuard>::run::<(), rustc_lint::late::check_crate::{closure#0}::{closure#0}>
           at ./compiler/rustc_data_structures/src/profiling.rs:753:9
90: <rustc_session::session::Session>::time::<(), rustc_lint::late::check_crate::{closure#0}::{closure#0}>
           at ./compiler/rustc_session/src/utils.rs:16:9
91: rustc_lint::late::check_crate::{closure#0}
           at ./compiler/rustc_lint/src/late.rs:457:13
92: rustc_data_structures::sync::parallel::join::<rustc_lint::late::check_crate::{closure#0}, rustc_lint::late::check_crate::{closure#1}, (), ()>::{closure#0}::{closure#0}::{closure#0}
           at ./compiler/rustc_data_structures/src/sync/parallel.rs:128:57
93: <core::panic::unwind_safe::AssertUnwindSafe<rustc_data_structures::sync::parallel::join<rustc_lint::late::check_crate::{closure#0}, rustc_lint::late::check_crate::{closure#1}, (), ()>::{closure#0}::{closure#0}::{closure#0}> as core::ops::function::FnOnce<()>>::call_once
           at ./library/core/src/panic/unwind_safe.rs:272:9
94: std::panicking::try::do_call::<core::panic::unwind_safe::AssertUnwindSafe<rustc_data_structures::sync::parallel::join<rustc_lint::late::check_crate::{closure#0}, rustc_lint::late::check_crate::{closure#1}, (), ()>::{closure#0}::{closure#0}::{closure#0}>, rustc_data_structures::marker::FromDyn<()>>
           at ./library/std/src/panicking.rs:589:40
95: std::panicking::try::<rustc_data_structures::marker::FromDyn<()>, core::panic::unwind_safe::AssertUnwindSafe<rustc_data_structures::sync::parallel::join<rustc_lint::late::check_crate::{closure#0}, rustc_lint::late::check_crate::{closure#1}, (), ()>::{closure#0}::{closure#0}::{closure#0}>>
           at ./library/std/src/panicking.rs:552:19
96: std::panic::catch_unwind::<core::panic::unwind_safe::AssertUnwindSafe<rustc_data_structures::sync::parallel::join<rustc_lint::late::check_crate::{closure#0}, rustc_lint::late::check_crate::{closure#1}, (), ()>::{closure#0}::{closure#0}::{closure#0}>, rustc_data_structures::marker::FromDyn<()>>
           at ./library/std/src/panic.rs:359:14
97: <rustc_data_structures::sync::parallel::ParallelGuard>::run::<rustc_data_structures::marker::FromDyn<()>, rustc_data_structures::sync::parallel::join<rustc_lint::late::check_crate::{closure#0}, rustc_lint::late::check_crate::{closure#1}, (), ()>::{closure#0}::{closure#0}::{closure#0}>
           at ./compiler/rustc_data_structures/src/sync/parallel.rs:25:9
98: rustc_data_structures::sync::parallel::join::<rustc_lint::late::check_crate::{closure#0}, rustc_lint::late::check_crate::{closure#1}, (), ()>::{closure#0}::{closure#0}
           at ./compiler/rustc_data_structures/src/sync/parallel.rs:128:25
99: rayon_core::join::join::call::<core::option::Option<rustc_data_structures::marker::FromDyn<()>>, rustc_data_structures::sync::parallel::join<rustc_lint::late::check_crate::{closure#0}, rustc_lint::late::check_crate::{closure#1}, (), ()>::{closure#0}::{closure#0}>::{closure#0}
           at /home/matthias/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustc-rayon-core-0.5.1/src/join/mod.rs:103:18
100: rayon_core::join::join_context::call_a::<core::option::Option<rustc_data_structures::marker::FromDyn<()>>, rayon_core::join::join::call<core::option::Option<rustc_data_structures::marker::FromDyn<()>>, rustc_data_structures::sync::parallel::join<rustc_lint::late::check_crate::{closure#0}, rustc_lint::late::check_crate::{closure#1}, (), ()>::{closure#0}::{closure#0}>::{closure#0}>::{closure#0}
           at /home/matthias/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustc-rayon-core-0.5.1/src/join/mod.rs:125:17
101: <core::panic::unwind_safe::AssertUnwindSafe<rayon_core::join::join_context::call_a<core::option::Option<rustc_data_structures::marker::FromDyn<()>>, rayon_core::join::join::call<core::option::Option<rustc_data_structures::marker::FromDyn<()>>, rustc_data_structures::sync::parallel::join<rustc_lint::late::check_crate::{closure#0}, rustc_lint::late::check_crate::{closure#1}, (), ()>::{closure#0}::{closure#0}>::{closure#0}>::{closure#0}> as core::ops::function::FnOnce<()>>::call_once
           at ./library/core/src/panic/unwind_safe.rs:272:9
102: std::panicking::try::do_call::<core::panic::unwind_safe::AssertUnwindSafe<rayon_core::join::join_context::call_a<core::option::Option<rustc_data_structures::marker::FromDyn<()>>, rayon_core::join::join::call<core::option::Option<rustc_data_structures::marker::FromDyn<()>>, rustc_data_structures::sync::parallel::join<rustc_lint::late::check_crate::{closure#0}, rustc_lint::late::check_crate::{closure#1}, (), ()>::{closure#0}::{closure#0}>::{closure#0}>::{closure#0}>, core::option::Option<rustc_data_structures::marker::FromDyn<()>>>
           at ./library/std/src/panicking.rs:589:40
103: std::panicking::try::<core::option::Option<rustc_data_structures::marker::FromDyn<()>>, core::panic::unwind_safe::AssertUnwindSafe<rayon_core::join::join_context::call_a<core::option::Option<rustc_data_structures::marker::FromDyn<()>>, rayon_core::join::join::call<core::option::Option<rustc_data_structures::marker::FromDyn<()>>, rustc_data_structures::sync::parallel::join<rustc_lint::late::check_crate::{closure#0}, rustc_lint::late::check_crate::{closure#1}, (), ()>::{closure#0}::{closure#0}>::{closure#0}>::{closure#0}>>
           at ./library/std/src/panicking.rs:552:19
104: std::panic::catch_unwind::<core::panic::unwind_safe::AssertUnwindSafe<rayon_core::join::join_context::call_a<core::option::Option<rustc_data_structures::marker::FromDyn<()>>, rayon_core::join::join::call<core::option::Option<rustc_data_structures::marker::FromDyn<()>>, rustc_data_structures::sync::parallel::join<rustc_lint::late::check_crate::{closure#0}, rustc_lint::late::check_crate::{closure#1}, (), ()>::{closure#0}::{closure#0}>::{closure#0}>::{closure#0}>, core::option::Option<rustc_data_structures::marker::FromDyn<()>>>
           at ./library/std/src/panic.rs:359:14
105: rayon_core::unwind::halt_unwinding::<rayon_core::join::join_context::call_a<core::option::Option<rustc_data_structures::marker::FromDyn<()>>, rayon_core::join::join::call<core::option::Option<rustc_data_structures::marker::FromDyn<()>>, rustc_data_structures::sync::parallel::join<rustc_lint::late::check_crate::{closure#0}, rustc_lint::late::check_crate::{closure#1}, (), ()>::{closure#0}::{closure#0}>::{closure#0}>::{closure#0}, core::option::Option<rustc_data_structures::marker::FromDyn<()>>>
           at /home/matthias/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustc-rayon-core-0.5.1/src/unwind.rs:17:5
106: rayon_core::join::join_context::<rayon_core::join::join::call<core::option::Option<rustc_data_structures::marker::FromDyn<()>>, rustc_data_structures::sync::parallel::join<rustc_lint::late::check_crate::{closure#0}, rustc_lint::late::check_crate::{closure#1}, (), ()>::{closure#0}::{closure#0}>::{closure#0}, rayon_core::join::join::call<core::option::Option<rustc_data_structures::marker::FromDyn<()>>, rustc_data_structures::sync::parallel::join<rustc_lint::late::check_crate::{closure#0}, rustc_lint::late::check_crate::{closure#1}, (), ()>::{closure#0}::{closure#1}>::{closure#0}, core::option::Option<rustc_data_structures::marker::FromDyn<()>>, core::option::Option<rustc_data_structures::marker::FromDyn<()>>>::{closure#0}
           at /home/matthias/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustc-rayon-core-0.5.1/src/join/mod.rs:144:24
107: rayon_core::join::join_context::<rayon_core::join::join::call<core::option::Option<rustc_data_structures::marker::FromDyn<()>>, rustc_data_structures::sync::parallel::join<rustc_lint::late::check_crate::{closure#0}, rustc_lint::late::check_crate::{closure#1}, (), ()>::{closure#0}::{closure#0}>::{closure#0}, rayon_core::join::join::call<core::option::Option<rustc_data_structures::marker::FromDyn<()>>, rustc_data_structures::sync::parallel::join<rustc_lint::late::check_crate::{closure#0}, rustc_lint::late::check_crate::{closure#1}, (), ()>::{closure#0}::{closure#1}>::{closure#0}, core::option::Option<rustc_data_structures::marker::FromDyn<()>>, core::option::Option<rustc_data_structures::marker::FromDyn<()>>>
           at /home/matthias/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustc-rayon-core-0.5.1/src/join/mod.rs:133:5
108: rayon_core::join::join::<rustc_data_structures::sync::parallel::join<rustc_lint::late::check_crate::{closure#0}, rustc_lint::late::check_crate::{closure#1}, (), ()>::{closure#0}::{closure#0}, rustc_data_structures::sync::parallel::join<rustc_lint::late::check_crate::{closure#0}, rustc_lint::late::check_crate::{closure#1}, (), ()>::{closure#0}::{closure#1}, core::option::Option<rustc_data_structures::marker::FromDyn<()>>, core::option::Option<rustc_data_structures::marker::FromDyn<()>>>
           at /home/matthias/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustc-rayon-core-0.5.1/src/join/mod.rs:106:5
109: rustc_data_structures::sync::parallel::join::<rustc_lint::late::check_crate::{closure#0}, rustc_lint::late::check_crate::{closure#1}, (), ()>::{closure#0}
           at ./compiler/rustc_data_structures/src/sync/parallel.rs:127:13
110: rustc_data_structures::sync::parallel::parallel_guard::<(core::option::Option<rustc_data_structures::marker::FromDyn<()>>, core::option::Option<rustc_data_structures::marker::FromDyn<()>>), rustc_data_structures::sync::parallel::join<rustc_lint::late::check_crate::{closure#0}, rustc_lint::late::check_crate::{closure#1}, (), ()>::{closure#0}>
           at ./compiler/rustc_data_structures/src/sync/parallel.rs:41:15
111: rustc_data_structures::sync::parallel::join::<rustc_lint::late::check_crate::{closure#0}, rustc_lint::late::check_crate::{closure#1}, (), ()>
           at ./compiler/rustc_data_structures/src/sync/parallel.rs:126:22
112: rustc_lint::late::check_crate
           at ./compiler/rustc_lint/src/late.rs:455:5
113: rustc_interface::passes::analysis::{closure#0}::{closure#2}::{closure#0}::{closure#2}::{closure#1}::{closure#0}::{closure#2}::{closure#0}
           at ./compiler/rustc_interface/src/passes.rs:1078:29
114: <rustc_data_structures::profiling::VerboseTimingGuard>::run::<(), rustc_interface::passes::analysis::{closure#0}::{closure#2}::{closure#0}::{closure#2}::{closure#1}::{closure#0}::{closure#2}::{closure#0}>
           at ./compiler/rustc_data_structures/src/profiling.rs:753:9
115: <rustc_session::session::Session>::time::<(), rustc_interface::passes::analysis::{closure#0}::{closure#2}::{closure#0}::{closure#2}::{closure#1}::{closure#0}::{closure#2}::{closure#0}>
           at ./compiler/rustc_session/src/utils.rs:16:9
116: rustc_interface::passes::analysis::{closure#0}::{closure#2}::{closure#0}::{closure#2}::{closure#1}::{closure#0}::{closure#2}
           at ./compiler/rustc_interface/src/passes.rs:1077:25
117: rustc_interface::passes::analysis::{closure#0}::{closure#2}::{closure#0}::{closure#2}::{closure#1}::{closure#0}::{closure#3}::{closure#0}
           at ./compiler/rustc_data_structures/src/sync/parallel.rs:74:47
118: <core::panic::unwind_safe::AssertUnwindSafe<rustc_interface::passes::analysis::{closure#0}::{closure#2}::{closure#0}::{closure#2}::{closure#1}::{closure#0}::{closure#3}::{closure#0}> as core::ops::function::FnOnce<()>>::call_once
           at ./library/core/src/panic/unwind_safe.rs:272:9
119: std::panicking::try::do_call::<core::panic::unwind_safe::AssertUnwindSafe<rustc_interface::passes::analysis::{closure#0}::{closure#2}::{closure#0}::{closure#2}::{closure#1}::{closure#0}::{closure#3}::{closure#0}>, ()>
           at ./library/std/src/panicking.rs:589:40
120: std::panicking::try::<(), core::panic::unwind_safe::AssertUnwindSafe<rustc_interface::passes::analysis::{closure#0}::{closure#2}::{closure#0}::{closure#2}::{closure#1}::{closure#0}::{closure#3}::{closure#0}>>
           at ./library/std/src/panicking.rs:552:19
121: std::panic::catch_unwind::<core::panic::unwind_safe::AssertUnwindSafe<rustc_interface::passes::analysis::{closure#0}::{closure#2}::{closure#0}::{closure#2}::{closure#1}::{closure#0}::{closure#3}::{closure#0}>, ()>
           at ./library/std/src/panic.rs:359:14
122: <rustc_data_structures::sync::parallel::ParallelGuard>::run::<(), rustc_interface::passes::analysis::{closure#0}::{closure#2}::{closure#0}::{closure#2}::{closure#1}::{closure#0}::{closure#3}::{closure#0}>
           at ./compiler/rustc_data_structures/src/sync/parallel.rs:25:9
123: rustc_interface::passes::analysis::{closure#0}::{closure#2}::{closure#0}::{closure#2}::{closure#1}::{closure#0}::{closure#3}
           at ./compiler/rustc_data_structures/src/sync/parallel.rs:74:29
124: <rayon_core::scope::Scope>::spawn::<rustc_interface::passes::analysis::{closure#0}::{closure#2}::{closure#0}::{closure#2}::{closure#1}::{closure#0}::{closure#3}>::{closure#0}::{closure#0}
           at /home/matthias/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustc-rayon-core-0.5.1/src/scope/mod.rs:531:57
125: <core::panic::unwind_safe::AssertUnwindSafe<<rayon_core::scope::Scope>::spawn<rustc_interface::passes::analysis::{closure#0}::{closure#2}::{closure#0}::{closure#2}::{closure#1}::{closure#0}::{closure#3}>::{closure#0}::{closure#0}> as core::ops::function::FnOnce<()>>::call_once
           at ./library/core/src/panic/unwind_safe.rs:272:9
126: std::panicking::try::do_call::<core::panic::unwind_safe::AssertUnwindSafe<<rayon_core::scope::Scope>::spawn<rustc_interface::passes::analysis::{closure#0}::{closure#2}::{closure#0}::{closure#2}::{closure#1}::{closure#0}::{closure#3}>::{closure#0}::{closure#0}>, ()>
           at ./library/std/src/panicking.rs:589:40
127: std::panicking::try::<(), core::panic::unwind_safe::AssertUnwindSafe<<rayon_core::scope::Scope>::spawn<rustc_interface::passes::analysis::{closure#0}::{closure#2}::{closure#0}::{closure#2}::{closure#1}::{closure#0}::{closure#3}>::{closure#0}::{closure#0}>>
           at ./library/std/src/panicking.rs:552:19
128: std::panic::catch_unwind::<core::panic::unwind_safe::AssertUnwindSafe<<rayon_core::scope::Scope>::spawn<rustc_interface::passes::analysis::{closure#0}::{closure#2}::{closure#0}::{closure#2}::{closure#1}::{closure#0}::{closure#3}>::{closure#0}::{closure#0}>, ()>
           at ./library/std/src/panic.rs:359:14
129: rayon_core::unwind::halt_unwinding::<<rayon_core::scope::Scope>::spawn<rustc_interface::passes::analysis::{closure#0}::{closure#2}::{closure#0}::{closure#2}::{closure#1}::{closure#0}::{closure#3}>::{closure#0}::{closure#0}, ()>
           at /home/matthias/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustc-rayon-core-0.5.1/src/unwind.rs:17:5
130: <rayon_core::scope::ScopeBase>::execute_job_closure::<<rayon_core::scope::Scope>::spawn<rustc_interface::passes::analysis::{closure#0}::{closure#2}::{closure#0}::{closure#2}::{closure#1}::{closure#0}::{closure#3}>::{closure#0}::{closure#0}, ()>
           at /home/matthias/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustc-rayon-core-0.5.1/src/scope/mod.rs:699:28
131: <rayon_core::scope::ScopeBase>::execute_job::<<rayon_core::scope::Scope>::spawn<rustc_interface::passes::analysis::{closure#0}::{closure#2}::{closure#0}::{closure#2}::{closure#1}::{closure#0}::{closure#3}>::{closure#0}::{closure#0}>
           at /home/matthias/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustc-rayon-core-0.5.1/src/scope/mod.rs:689:29
132: <rayon_core::scope::Scope>::spawn::<rustc_interface::passes::analysis::{closure#0}::{closure#2}::{closure#0}::{closure#2}::{closure#1}::{closure#0}::{closure#3}>::{closure#0}
           at /home/matthias/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustc-rayon-core-0.5.1/src/scope/mod.rs:531:13
133: <rayon_core::job::HeapJob<<rayon_core::scope::Scope>::spawn<rustc_interface::passes::analysis::{closure#0}::{closure#2}::{closure#0}::{closure#2}::{closure#1}::{closure#0}::{closure#3}>::{closure#0}> as rayon_core::job::Job>::execute
           at /home/matthias/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustc-rayon-core-0.5.1/src/job.rs:176:9
134: <rayon_core::job::JobRef>::execute
           at /home/matthias/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustc-rayon-core-0.5.1/src/job.rs:66:9
135: <rayon_core::registry::WorkerThread>::execute
           at /home/matthias/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustc-rayon-core-0.5.1/src/registry.rs:910:13
136: <rayon_core::registry::WorkerThread>::wait_until_cold
           at /home/matthias/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustc-rayon-core-0.5.1/src/registry.rs:843:26
137: <rayon_core::registry::WorkerThread>::wait_until::<rayon_core::latch::OnceLatch>
           at /home/matthias/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustc-rayon-core-0.5.1/src/registry.rs:818:13
138: <rayon_core::registry::WorkerThread>::wait_until_out_of_work
           at /home/matthias/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustc-rayon-core-0.5.1/src/registry.rs:868:9
139: rayon_core::registry::main_loop
           at /home/matthias/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustc-rayon-core-0.5.1/src/registry.rs:973:5
140: <rayon_core::registry::ThreadBuilder>::run
           at /home/matthias/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustc-rayon-core-0.5.1/src/registry.rs:52:18
141: rustc_interface::util::run_in_thread_pool_with_globals::<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#5}::{closure#0}::{closure#0}::{closure#0}
           at ./compiler/rustc_interface/src/util.rs:274:29
142: <scoped_tls::ScopedKey<rustc_span::SessionGlobals>>::set::<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#5}::{closure#0}::{closure#0}::{closure#0}, ()>
           at /home/matthias/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/scoped-tls-1.0.1/src/lib.rs:137:9
143: rustc_span::set_session_globals_then::<(), rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#5}::{closure#0}::{closure#0}::{closure#0}>
           at ./compiler/rustc_span/src/lib.rs:154:5
144: rustc_interface::util::run_in_thread_pool_with_globals::<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#5}::{closure#0}::{closure#0}
           at ./compiler/rustc_interface/src/util.rs:273:25
145: <rayon_core::ThreadPoolBuilder>::build_scoped::<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#5}::{closure#0}::{closure#0}, rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#5}::{closure#0}::{closure#1}, ()>::{closure#0}::{closure#0}::{closure#0}
           at /home/matthias/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustc-rayon-core-0.5.1/src/lib.rs:361:52
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-clippy/issues/new?template=ice.yml

note: please make sure that you have updated to the latest nightly

note: please attach the file at `/home/matthias/vcs/github/rust/rustc-ice-2025-06-04T12_58_53-1868997.txt` to your bug report

note: compiler flags: --crate-type lib -C opt-level=3 -C embed-bitcode=no -C codegen-units=16 -C debuginfo=2 -C debug-assertions=on -C target-cpu=native -Z threads=8 -C symbol-mangling-version=legacy -Z unstable-options -Z force-unstable-if-unmarked -Z macro-backtrace -C split-debuginfo=off -C prefer-dynamic -Z inline-mir -Z inline-mir-preserve-debug -Z mir_strip_debuginfo=locals-in-tiny-functions -C link-args=-Wl,-z,origin -C link-args=-Wl,-rpath,$ORIGIN/../lib -C embed-bitcode=yes -C lto=off -C force-frame-pointers=yes -Z crate-attr=doc(html_root_url="https://doc.rust-lang.org/nightly/") -Z binary-dep-depinfo -Z force-unstable-if-unmarked

note: some of the compiler flags provided by cargo are hidden

query stack during panic:
#0 [analysis] running analysis passes on this crate
end of query stack
note: Clippy version: clippy 0.1.89 (d9a7393638 2025-06-04)

warning: `proc_macro` (lib) generated 56 warnings (run `cargo clippy --fix --lib -p proc_macro` to apply 56 suggestions)
error: could not compile `proc_macro` (lib); 56 warnings emitted

Caused by:
process didn't exit successfully: `/home/matthias/vcs/github/rust/build/bootstrap/debug/rustc /home/matthias/vcs/github/rust/build/x86_64-unknown-linux-gnu/stage1/bin/clippy-driver /home/matthias/vcs/github/rust/build/bootstrap/debug/rustc --crate-name proc_macro --edition=2024 library/proc_macro/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --diagnostic-width=316 --crate-type lib --emit=dep-info,metadata -C opt-level=3 -C embed-bitcode=no -C codegen-units=16 -C debuginfo=2 -C debug-assertions=on --cfg 'feature="default"' --cfg 'feature="rustc-dep-of-std"' --check-cfg 'cfg(docsrs,test)' --check-cfg 'cfg(feature, values("default", "rustc-dep-of-std"))' -C metadata=688d5a88ff0213e9 -C extra-filename=-5fb2586f9f809008 --out-dir /home/matthias/vcs/github/rust/build/x86_64-unknown-linux-gnu/stage1-std/x86_64-unknown-linux-gnu/release/deps --target x86_64-unknown-linux-gnu -L dependency=/home/matthias/vcs/github/rust/build/x86_64-unknown-linux-gnu/stage1-std/x86_64-unknown-linux-gnu/release/deps -L dependency=/home/matthias/vcs/github/rust/build/x86_64-unknown-linux-gnu/stage1-std/release/deps --extern core=/home/matthias/vcs/github/rust/build/x86_64-unknown-linux-gnu/stage1-std/x86_64-unknown-linux-gnu/release/deps/libcore-3b153f4a747f9fa3.rmeta --extern rustc_literal_escaper=/home/matthias/vcs/github/rust/build/x86_64-unknown-linux-gnu/stage1-std/x86_64-unknown-linux-gnu/release/deps/librustc_literal_escaper-98c3343d4ea8821c.rmeta --extern std=/home/matthias/vcs/github/rust/build/x86_64-unknown-linux-gnu/stage1-std/x86_64-unknown-linux-gnu/release/deps/libstd-467eb96c623aafaa.rmeta -Ctarget-cpu=native -Zthreads=8 --sysroot /home/matthias/vcs/github/rust/build/x86_64-unknown-linux-gnu/stage1 -Csymbol-mangling-version=legacy '--check-cfg=cfg(feature,values(any()))' -Zunstable-options '--check-cfg=cfg(bootstrap)' -Zforce-unstable-if-unmarked -Zmacro-backtrace -Csplit-debuginfo=off -Cprefer-dynamic -Zinline-mir -Zinline-mir-preserve-debug -Zmir_strip_debuginfo=locals-in-tiny-functions -Clink-args=-Wl,-z,origin '-Clink-args=-Wl,-rpath,$ORIGIN/../lib' -Alinker-messages -Cembed-bitcode=yes -Clto=off -Cforce-frame-pointers=yes '-Zcrate-attr=doc(html_root_url="https://doc.rust-lang.org/nightly/")' -Z binary-dep-depinfo` (exit status: 101)
Build completed unsuccessfully in 0:00:02
~/vcs/github/rust on  master [⇡] via 🐍 v3.1

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the failure with the provided ./x.py clippy --stage=1 -Aclippy::all -Wclippy::redundant_pub_crate command, then inspect compiler/rustc_errors/src/emitter.rs, especially HumanEmitter::render_source_line near line 1161. Trace the diagnostic emitted from src/tools/clippy/clippy_lints/src/redundant_pub_crate.rs:60; done means this invocation no longer panics with an integer overflow.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
compilers, devtools
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.