rust
rust copied to clipboard
Faster fmt::Display of 128-bit integers, without unsafe pointer
In followup of #135265, hereby the 128-bit part.
- Batches per 16 instead of 19 digits
- Buffer access as array insteaf of unsafe pointer
- Added test coverage for i128 and u128
r? tgross35 ChrisDenton
The job x86_64-gnu-llvm-18 failed! Check out the build log: (web) (plain)
Click to see the possible cause of the failure (guessed by this bot)
#22 exporting to docker image format
#22 sending tarball 28.3s done
#22 DONE 33.8s
##[endgroup]
Setting extra environment values for docker: --env ENABLE_GCC_CODEGEN=1 --env GCC_EXEC_PREFIX=/usr/lib/gcc/
[CI_JOB_NAME=x86_64-gnu-llvm-18]
debug: `DISABLE_CI_RUSTC_IF_INCOMPATIBLE` configured.
---
sccache: Starting the server...
##[group]Configure the build
configure: processing command line
configure:
configure: build.configure-args := ['--build=x86_64-unknown-linux-gnu', '--llvm-root=/usr/lib/llvm-18', '--enable-llvm-link-shared', '--set', 'rust.randomize-layout=true', '--set', 'rust.thin-lto-import-instr-limit=10', '--enable-verbose-configure', '--enable-sccache', '--disable-manage-submodules', '--enable-locked-deps', '--enable-cargo-native-static', '--set', 'rust.codegen-units-std=1', '--set', 'dist.compression-profile=balanced', '--dist-compression-formats=xz', '--set', 'rust.lld=false', '--disable-dist-src', '--release-channel=nightly', '--enable-debug-assertions', '--enable-overflow-checks', '--enable-llvm-assertions', '--set', 'rust.verify-llvm-ir', '--set', 'rust.codegen-backends=llvm,cranelift,gcc', '--set', 'llvm.static-libstdcpp', '--enable-new-symbol-mangling']
configure: target.x86_64-unknown-linux-gnu.llvm-config := /usr/lib/llvm-18/bin/llvm-config
configure: llvm.link-shared := True
configure: rust.randomize-layout := True
configure: rust.thin-lto-import-instr-limit := 10
---
failures:
---- [ui] tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs stdout ----
error: Error: expected failure status (Some(1)) but received status Some(101).
status: exit status: 101
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers"
--- stderr -------------------------------
error[E0004]: non-exhaustive patterns: `_` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:14:8
|
|
LL | m!(0f32, f32::NEG_INFINITY..); //~ ERROR non-exhaustive patterns: `_` not covered
| ^^^^ pattern `_` not covered
= note: the matched value is of type `f32`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, _ => todo!() }
error[E0004]: non-exhaustive patterns: `_` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:15:8
|
|
LL | m!(0f32, ..f32::INFINITY); //~ ERROR non-exhaustive patterns: `_` not covered
| ^^^^ pattern `_` not covered
= note: the matched value is of type `f32`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, _ => todo!() }
error[E0004]: non-exhaustive patterns: `'\u{10ffff}'` not covered
|
|
LL | m!('a', ..core::char::MAX); //~ ERROR non-exhaustive patterns
| ^^^ pattern `'\u{10ffff}'` not covered
= note: the matched value is of type `char`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, '\u{10ffff}' => todo!() }
error[E0004]: non-exhaustive patterns: `'\u{10fffe}'..='\u{10ffff}'` not covered
|
|
LL | m!('a', ..ALMOST_MAX); //~ ERROR non-exhaustive patterns
| ^^^ pattern `'\u{10fffe}'..='\u{10ffff}'` not covered
= note: the matched value is of type `char`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, '\u{10fffe}'..='\u{10ffff}' => todo!() }
error[E0004]: non-exhaustive patterns: `'\0'` not covered
|
|
LL | m!('a', ALMOST_MIN..); //~ ERROR non-exhaustive patterns
| ^^^ pattern `'\0'` not covered
= note: the matched value is of type `char`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, '\0' => todo!() }
error[E0004]: non-exhaustive patterns: `'\u{10ffff}'` not covered
|
|
LL | m!('a', ..=ALMOST_MAX); //~ ERROR non-exhaustive patterns
| ^^^ pattern `'\u{10ffff}'` not covered
= note: the matched value is of type `char`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, '\u{10ffff}' => todo!() }
error[E0004]: non-exhaustive patterns: `'b'` not covered
|
|
LL | m!('a', ..=VAL | VAL_2..); //~ ERROR non-exhaustive patterns
| ^^^ pattern `'b'` not covered
= note: the matched value is of type `char`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 'b' => todo!() }
error[E0004]: non-exhaustive patterns: `'b'` not covered
|
|
LL | m!('a', ..VAL_1 | VAL_2..); //~ ERROR non-exhaustive patterns
| ^^^ pattern `'b'` not covered
= note: the matched value is of type `char`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 'b' => todo!() }
error[E0004]: non-exhaustive patterns: `u8::MAX` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:39:12
|
|
LL | m!(0, ..u8::MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `u8::MAX` not covered
= note: the matched value is of type `u8`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, u8::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `254_u8..=u8::MAX` not covered
|
|
LL | m!(0, ..ALMOST_MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `254_u8..=u8::MAX` not covered
= note: the matched value is of type `u8`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 254_u8..=u8::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `0_u8` not covered
|
|
LL | m!(0, ALMOST_MIN..); //~ ERROR non-exhaustive patterns
| ^ pattern `0_u8` not covered
= note: the matched value is of type `u8`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 0_u8 => todo!() }
error[E0004]: non-exhaustive patterns: `u8::MAX` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:42:12
|
|
LL | m!(0, ..=ALMOST_MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `u8::MAX` not covered
= note: the matched value is of type `u8`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, u8::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `43_u8` not covered
|
|
LL | m!(0, ..=VAL | VAL_2..); //~ ERROR non-exhaustive patterns
| ^ pattern `43_u8` not covered
= note: the matched value is of type `u8`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 43_u8 => todo!() }
error[E0004]: non-exhaustive patterns: `43_u8` not covered
|
|
LL | m!(0, ..VAL_1 | VAL_2..); //~ ERROR non-exhaustive patterns
| ^ pattern `43_u8` not covered
= note: the matched value is of type `u8`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 43_u8 => todo!() }
error[E0004]: non-exhaustive patterns: `u16::MAX` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:52:12
|
|
LL | m!(0, ..u16::MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `u16::MAX` not covered
= note: the matched value is of type `u16`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, u16::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `65534_u16..=u16::MAX` not covered
|
|
LL | m!(0, ..ALMOST_MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `65534_u16..=u16::MAX` not covered
= note: the matched value is of type `u16`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 65534_u16..=u16::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `0_u16` not covered
|
|
LL | m!(0, ALMOST_MIN..); //~ ERROR non-exhaustive patterns
| ^ pattern `0_u16` not covered
= note: the matched value is of type `u16`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 0_u16 => todo!() }
error[E0004]: non-exhaustive patterns: `u16::MAX` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:55:12
|
|
LL | m!(0, ..=ALMOST_MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `u16::MAX` not covered
= note: the matched value is of type `u16`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, u16::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `43_u16` not covered
|
|
LL | m!(0, ..=VAL | VAL_2..); //~ ERROR non-exhaustive patterns
| ^ pattern `43_u16` not covered
= note: the matched value is of type `u16`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 43_u16 => todo!() }
error[E0004]: non-exhaustive patterns: `43_u16` not covered
|
|
LL | m!(0, ..VAL_1 | VAL_2..); //~ ERROR non-exhaustive patterns
| ^ pattern `43_u16` not covered
= note: the matched value is of type `u16`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 43_u16 => todo!() }
error[E0004]: non-exhaustive patterns: `u32::MAX` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:65:12
|
|
LL | m!(0, ..u32::MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `u32::MAX` not covered
= note: the matched value is of type `u32`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, u32::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `4294967294_u32..=u32::MAX` not covered
|
|
LL | m!(0, ..ALMOST_MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `4294967294_u32..=u32::MAX` not covered
= note: the matched value is of type `u32`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 4294967294_u32..=u32::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `0_u32` not covered
|
|
LL | m!(0, ALMOST_MIN..); //~ ERROR non-exhaustive patterns
| ^ pattern `0_u32` not covered
= note: the matched value is of type `u32`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 0_u32 => todo!() }
error[E0004]: non-exhaustive patterns: `u32::MAX` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:68:12
|
|
LL | m!(0, ..=ALMOST_MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `u32::MAX` not covered
= note: the matched value is of type `u32`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, u32::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `43_u32` not covered
|
|
LL | m!(0, ..=VAL | VAL_2..); //~ ERROR non-exhaustive patterns
| ^ pattern `43_u32` not covered
= note: the matched value is of type `u32`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 43_u32 => todo!() }
error[E0004]: non-exhaustive patterns: `43_u32` not covered
|
|
LL | m!(0, ..VAL_1 | VAL_2..); //~ ERROR non-exhaustive patterns
| ^ pattern `43_u32` not covered
= note: the matched value is of type `u32`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 43_u32 => todo!() }
error[E0004]: non-exhaustive patterns: `u64::MAX` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:78:12
|
|
LL | m!(0, ..u64::MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `u64::MAX` not covered
= note: the matched value is of type `u64`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, u64::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `18446744073709551614_u64..=u64::MAX` not covered
|
|
LL | m!(0, ..ALMOST_MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `18446744073709551614_u64..=u64::MAX` not covered
= note: the matched value is of type `u64`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 18446744073709551614_u64..=u64::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `0_u64` not covered
|
|
LL | m!(0, ALMOST_MIN..); //~ ERROR non-exhaustive patterns
| ^ pattern `0_u64` not covered
= note: the matched value is of type `u64`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 0_u64 => todo!() }
error[E0004]: non-exhaustive patterns: `u64::MAX` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:81:12
|
|
LL | m!(0, ..=ALMOST_MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `u64::MAX` not covered
= note: the matched value is of type `u64`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, u64::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `43_u64` not covered
|
|
LL | m!(0, ..=VAL | VAL_2..); //~ ERROR non-exhaustive patterns
| ^ pattern `43_u64` not covered
= note: the matched value is of type `u64`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 43_u64 => todo!() }
error[E0004]: non-exhaustive patterns: `43_u64` not covered
|
|
LL | m!(0, ..VAL_1 | VAL_2..); //~ ERROR non-exhaustive patterns
| ^ pattern `43_u64` not covered
= note: the matched value is of type `u64`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 43_u64 => todo!() }
error[E0004]: non-exhaustive patterns: `u128::MAX` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:91:12
|
|
LL | m!(0, ..u128::MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `u128::MAX` not covered
= note: the matched value is of type `u128`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, u128::MAX => todo!() }
thread 'rustc' panicked at library/core/src/fmt/num.rs:606:13:
assertion failed: n < 10
---
7: <rustc_middle::ty::print::pretty::FmtPrinter as rustc_middle::ty::print::pretty::PrettyPrinter>::pretty_print_const_scalar_int
8: rustc_middle::mir::pretty::pretty_print_const_value_tcx
9: rustc_middle::mir::pretty::pretty_print_const_value
10: core::fmt::write
11: <rustc_middle::thir::PatRange as core::fmt::Display>::fmt
12: <rustc_pattern_analysis::rustc::RustcPatCtxt>::print_pat_range
13: <rustc_pattern_analysis::rustc::RustcPatCtxt>::print_witness_pat
14: rustc_mir_build::thir::pattern::check_match::report_non_exhaustive_match
15: <rustc_mir_build::thir::pattern::check_match::MatchVisitor as rustc_middle::thir::visit::Visitor>::visit_expr
16: <rustc_mir_build::thir::pattern::check_match::MatchVisitor as rustc_middle::thir::visit::Visitor>::visit_expr
17: rustc_middle::thir::visit::walk_expr::<rustc_mir_build::thir::pattern::check_match::MatchVisitor>
18: <rustc_mir_build::thir::pattern::check_match::MatchVisitor as rustc_middle::thir::visit::Visitor>::visit_expr
19: <rustc_mir_build::thir::pattern::check_match::MatchVisitor as rustc_middle::thir::visit::Visitor>::visit_expr
20: rustc_mir_build::thir::pattern::check_match::check_match
[... omitted 3 frames ...]
21: rustc_middle::query::plumbing::query_get_at::<rustc_data_structures::vec_cache::VecCache<rustc_span::def_id::LocalDefId, rustc_middle::query::erase::Erased<[u8; 1]>, rustc_query_system::dep_graph::graph::DepNodeIndex>>
23: rustc_mir_transform::mir_built
23: rustc_mir_transform::mir_built
[... omitted 3 frames ...]
24: rustc_mir_build::check_unsafety::check_unsafety
[... omitted 3 frames ...]
25: <rustc_middle::hir::map::Map>::par_body_owners::<rustc_interface::passes::run_required_analyses::{closure#2}::{closure#0}>::{closure#0}
26: <rustc_session::session::Session>::time::<(), rustc_interface::passes::run_required_analyses::{closure#2}>
27: rustc_interface::passes::analysis
[... omitted 3 frames ...]
28: <std::thread::local::LocalKey<core::cell::Cell<*const ()>>>::with::<rustc_middle::ty::context::tls::enter_context<<rustc_middle::ty::context::GlobalCtxt>::enter<rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}, core::option::Option<rustc_interface::queries::Linker>>::{closure#1}, core::option::Option<rustc_interface::queries::Linker>>::{closure#0}, core::option::Option<rustc_interface::queries::Linker>>
29: <rustc_middle::ty::context::TyCtxt>::create_global_ctxt::<core::option::Option<rustc_interface::queries::Linker>, rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}>
30: <rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2} as core::ops::function::FnOnce<(&rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2})>>::call_once::{shim:vtable#0}
31: <alloc::boxed::Box<dyn for<'a> core::ops::function::FnOnce<(&'a rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &'a std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt<'a>>, &'a rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena<'a>>, &'a rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena<'a>>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}), Output = core::option::Option<rustc_interface::queries::Linker>>> as core::ops::function::FnOnce<(&rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2})>>::call_once
33: <scoped_tls::ScopedKey<rustc_span::SessionGlobals>>::set::<rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}, ()>
34: rustc_span::create_session_globals_then::<(), rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}>
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---
note: please make sure that you have updated to the latest nightly
note: rustc 1.86.0-nightly (3bb4ead70 2025-02-05) running on x86_64-unknown-linux-gnu
note: compiler flags: -Z threads=1 -Z simulate-remapped-rust-src-base=/rustc/FAKE_PREFIX -Z translate-remapped-path-to-local-path=no -Z ignore-directory-in-diagnostics-source-blocks=/cargo -Z ignore-directory-in-diagnostics-source-blocks=/checkout/vendor -C codegen-units=1 -Z ui-testing -Z deduplicate-diagnostics=no -Z write-long-types-to-disk=no -C strip=debuginfo -C prefer-dynamic -C rpath -C debuginfo=0
query stack during panic:
#0 [check_match] match-checking `unsigned::u128`
#0 [check_match] match-checking `unsigned::u128`
#1 [mir_built] building MIR for `unsigned::u128`
#2 [check_unsafety] unsafety-checking `unsigned::u128`
end of query stack
error[E0004]: non-exhaustive patterns: `i8::MAX` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:107:12
|
|
LL | m!(0, ..i8::MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `i8::MAX` not covered
= note: the matched value is of type `i8`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, i8::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `126_i8..=i8::MAX` not covered
|
|
LL | m!(0, ..ALMOST_MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `126_i8..=i8::MAX` not covered
= note: the matched value is of type `i8`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 126_i8..=i8::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `i8::MIN` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:109:12
|
|
LL | m!(0, ALMOST_MIN..); //~ ERROR non-exhaustive patterns
| ^ pattern `i8::MIN` not covered
= note: the matched value is of type `i8`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, i8::MIN => todo!() }
error[E0004]: non-exhaustive patterns: `i8::MAX` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:110:12
|
|
LL | m!(0, ..=ALMOST_MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `i8::MAX` not covered
= note: the matched value is of type `i8`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, i8::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `43_i8` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:111:12
|
|
LL | m!(0, ..=VAL | VAL_2..); //~ ERROR non-exhaustive patterns
| ^ pattern `43_i8` not covered
= note: the matched value is of type `i8`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 43_i8 => todo!() }
error[E0004]: non-exhaustive patterns: `43_i8` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:112:12
|
|
LL | m!(0, ..VAL_1 | VAL_2..); //~ ERROR non-exhaustive patterns
| ^ pattern `43_i8` not covered
= note: the matched value is of type `i8`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 43_i8 => todo!() }
error[E0004]: non-exhaustive patterns: `i16::MAX` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:120:12
|
|
LL | m!(0, ..i16::MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `i16::MAX` not covered
= note: the matched value is of type `i16`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, i16::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `32766_i16..=i16::MAX` not covered
|
|
LL | m!(0, ..ALMOST_MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `32766_i16..=i16::MAX` not covered
= note: the matched value is of type `i16`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 32766_i16..=i16::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `i16::MIN` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:122:12
|
|
LL | m!(0, ALMOST_MIN..); //~ ERROR non-exhaustive patterns
| ^ pattern `i16::MIN` not covered
= note: the matched value is of type `i16`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, i16::MIN => todo!() }
error[E0004]: non-exhaustive patterns: `i16::MAX` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:123:12
|
|
LL | m!(0, ..=ALMOST_MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `i16::MAX` not covered
= note: the matched value is of type `i16`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, i16::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `43_i16` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:124:12
|
|
LL | m!(0, ..=VAL | VAL_2..); //~ ERROR non-exhaustive patterns
| ^ pattern `43_i16` not covered
= note: the matched value is of type `i16`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 43_i16 => todo!() }
error[E0004]: non-exhaustive patterns: `43_i16` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:125:12
|
|
LL | m!(0, ..VAL_1 | VAL_2..); //~ ERROR non-exhaustive patterns
| ^ pattern `43_i16` not covered
= note: the matched value is of type `i16`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 43_i16 => todo!() }
error[E0004]: non-exhaustive patterns: `i32::MAX` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:133:12
|
|
LL | m!(0, ..i32::MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `i32::MAX` not covered
= note: the matched value is of type `i32`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, i32::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `2147483646_i32..=i32::MAX` not covered
|
|
LL | m!(0, ..ALMOST_MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `2147483646_i32..=i32::MAX` not covered
= note: the matched value is of type `i32`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 2147483646_i32..=i32::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `i32::MIN` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:135:12
|
|
LL | m!(0, ALMOST_MIN..); //~ ERROR non-exhaustive patterns
| ^ pattern `i32::MIN` not covered
= note: the matched value is of type `i32`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, i32::MIN => todo!() }
error[E0004]: non-exhaustive patterns: `i32::MAX` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:136:12
|
|
LL | m!(0, ..=ALMOST_MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `i32::MAX` not covered
= note: the matched value is of type `i32`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, i32::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `43_i32` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:137:12
|
|
LL | m!(0, ..=VAL | VAL_2..); //~ ERROR non-exhaustive patterns
| ^ pattern `43_i32` not covered
= note: the matched value is of type `i32`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 43_i32 => todo!() }
error[E0004]: non-exhaustive patterns: `43_i32` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:138:12
|
|
LL | m!(0, ..VAL_1 | VAL_2..); //~ ERROR non-exhaustive patterns
| ^ pattern `43_i32` not covered
= note: the matched value is of type `i32`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 43_i32 => todo!() }
error[E0004]: non-exhaustive patterns: `i64::MAX` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:146:12
|
|
LL | m!(0, ..i64::MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `i64::MAX` not covered
= note: the matched value is of type `i64`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, i64::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `9223372036854775806_i64..=i64::MAX` not covered
|
|
LL | m!(0, ..ALMOST_MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `9223372036854775806_i64..=i64::MAX` not covered
= note: the matched value is of type `i64`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 9223372036854775806_i64..=i64::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `i64::MIN` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:148:12
|
|
LL | m!(0, ALMOST_MIN..); //~ ERROR non-exhaustive patterns
| ^ pattern `i64::MIN` not covered
= note: the matched value is of type `i64`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, i64::MIN => todo!() }
error[E0004]: non-exhaustive patterns: `i64::MAX` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:149:12
|
|
LL | m!(0, ..=ALMOST_MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `i64::MAX` not covered
= note: the matched value is of type `i64`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, i64::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `43_i64` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:150:12
|
|
LL | m!(0, ..=VAL | VAL_2..); //~ ERROR non-exhaustive patterns
| ^ pattern `43_i64` not covered
= note: the matched value is of type `i64`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 43_i64 => todo!() }
error[E0004]: non-exhaustive patterns: `43_i64` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:151:12
|
|
LL | m!(0, ..VAL_1 | VAL_2..); //~ ERROR non-exhaustive patterns
| ^ pattern `43_i64` not covered
= note: the matched value is of type `i64`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 43_i64 => todo!() }
error[E0004]: non-exhaustive patterns: `i128::MAX` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:159:12
|
|
LL | m!(0, ..i128::MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `i128::MAX` not covered
= note: the matched value is of type `i128`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, i128::MAX => todo!() }
thread 'rustc' panicked at library/core/src/fmt/num.rs:606:13:
assertion failed: n < 10
---
7: <rustc_middle::ty::print::pretty::FmtPrinter as rustc_middle::ty::print::pretty::PrettyPrinter>::pretty_print_const_scalar_int
8: rustc_middle::mir::pretty::pretty_print_const_value_tcx
9: rustc_middle::mir::pretty::pretty_print_const_value
10: core::fmt::write
11: <rustc_middle::thir::PatRange as core::fmt::Display>::fmt
12: <rustc_pattern_analysis::rustc::RustcPatCtxt>::print_pat_range
13: <rustc_pattern_analysis::rustc::RustcPatCtxt>::print_witness_pat
14: rustc_mir_build::thir::pattern::check_match::report_non_exhaustive_match
15: <rustc_mir_build::thir::pattern::check_match::MatchVisitor as rustc_middle::thir::visit::Visitor>::visit_expr
16: <rustc_mir_build::thir::pattern::check_match::MatchVisitor as rustc_middle::thir::visit::Visitor>::visit_expr
17: rustc_middle::thir::visit::walk_expr::<rustc_mir_build::thir::pattern::check_match::MatchVisitor>
18: <rustc_mir_build::thir::pattern::check_match::MatchVisitor as rustc_middle::thir::visit::Visitor>::visit_expr
19: <rustc_mir_build::thir::pattern::check_match::MatchVisitor as rustc_middle::thir::visit::Visitor>::visit_expr
20: rustc_mir_build::thir::pattern::check_match::check_match
[... omitted 3 frames ...]
21: rustc_middle::query::plumbing::query_get_at::<rustc_data_structures::vec_cache::VecCache<rustc_span::def_id::LocalDefId, rustc_middle::query::erase::Erased<[u8; 1]>, rustc_query_system::dep_graph::graph::DepNodeIndex>>
23: rustc_mir_transform::mir_built
23: rustc_mir_transform::mir_built
[... omitted 3 frames ...]
24: rustc_mir_build::check_unsafety::check_unsafety
[... omitted 3 frames ...]
25: <rustc_middle::hir::map::Map>::par_body_owners::<rustc_interface::passes::run_required_analyses::{closure#2}::{closure#0}>::{closure#0}
26: <rustc_session::session::Session>::time::<(), rustc_interface::passes::run_required_analyses::{closure#2}>
27: rustc_interface::passes::analysis
[... omitted 3 frames ...]
28: <std::thread::local::LocalKey<core::cell::Cell<*const ()>>>::with::<rustc_middle::ty::context::tls::enter_context<<rustc_middle::ty::context::GlobalCtxt>::enter<rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}, core::option::Option<rustc_interface::queries::Linker>>::{closure#1}, core::option::Option<rustc_interface::queries::Linker>>::{closure#0}, core::option::Option<rustc_interface::queries::Linker>>
29: <rustc_middle::ty::context::TyCtxt>::create_global_ctxt::<core::option::Option<rustc_interface::queries::Linker>, rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}>
30: <rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2} as core::ops::function::FnOnce<(&rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2})>>::call_once::{shim:vtable#0}
31: <alloc::boxed::Box<dyn for<'a> core::ops::function::FnOnce<(&'a rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &'a std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt<'a>>, &'a rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena<'a>>, &'a rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena<'a>>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}), Output = core::option::Option<rustc_interface::queries::Linker>>> as core::ops::function::FnOnce<(&rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2})>>::call_once
33: <scoped_tls::ScopedKey<rustc_span::SessionGlobals>>::set::<rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}, ()>
34: rustc_span::create_session_globals_then::<(), rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}>
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---
note: please make sure that you have updated to the latest nightly
note: rustc 1.86.0-nightly (3bb4ead70 2025-02-05) running on x86_64-unknown-linux-gnu
note: compiler flags: -Z threads=1 -Z simulate-remapped-rust-src-base=/rustc/FAKE_PREFIX -Z translate-remapped-path-to-local-path=no -Z ignore-directory-in-diagnostics-source-blocks=/cargo -Z ignore-directory-in-diagnostics-source-blocks=/checkout/vendor -C codegen-units=1 -Z ui-testing -Z deduplicate-diagnostics=no -Z write-long-types-to-disk=no -C strip=debuginfo -C prefer-dynamic -C rpath -C debuginfo=0
query stack during panic:
query stack during panic:
#0 [check_match] match-checking `signed::i128`
#1 [mir_built] building MIR for `signed::i128`
#2 [check_unsafety] unsafety-checking `signed::i128`
end of query stack
error: aborting due to 58 previous errors
For more information about this error, try `rustc --explain E0004`.
For more information about this error, try `rustc --explain E0004`.
------------------------------------------
---- [ui] tests/ui/lexer/error-stage.rs stdout ----
error: Error: expected failure status (Some(1)) but received status Some(101).
status: exit status: 101
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/lexer/error-stage.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/lexer/error-stage" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers"
--- stderr -------------------------------
error: binary float literal is not supported
##[error] --> /checkout/tests/ui/lexer/error-stage.rs:56:5
|
|
LL | 0b10.0f32; //~ ERROR binary float literal is not supported
error: binary float literal is not supported
##[error] --> /checkout/tests/ui/lexer/error-stage.rs:68:5
|
|
LL | 0b10.0f32; //~ ERROR binary float literal is not supported
error: binary float literal is not supported
##[error] --> /checkout/tests/ui/lexer/error-stage.rs:78:5
|
|
LL | 0b10.0f32; //~ ERROR binary float literal is not supported
error: suffixes on string literals are invalid
##[error] --> /checkout/tests/ui/lexer/error-stage.rs:74:5
|
|
LL | "string"any_suffix; //~ ERROR suffixes on string literals are invalid
| ^^^^^^^^^^^^^^^^^^ invalid suffix `any_suffix`
error: invalid width `123` for integer literal
|
|
LL | 10u123; //~ ERROR invalid width `123` for integer literal
|
|
= help: valid widths are 8, 16, 32, 64 and 128
error: invalid width `123` for float literal
|
|
LL | 10.0f123; //~ ERROR invalid width `123` for float literal
|
= help: valid widths are 32 and 64
error: binary float literal is not supported
error: binary float literal is not supported
##[error] --> /checkout/tests/ui/lexer/error-stage.rs:77:5
|
LL | 0b10f32; //~ ERROR binary float literal is not supported
thread 'rustc' panicked at library/core/src/fmt/num.rs:606:13:
assertion failed: n < 10
---
9: <rustc_ast_lowering::LoweringContext>::lower_stmts
10: <rustc_ast_lowering::LoweringContext>::lower_block_expr
11: <rustc_ast_lowering::LoweringContext>::lower_maybe_coroutine_body
12: <rustc_ast_lowering::LoweringContext>::lower_item_kind
13: <rustc_ast_lowering::LoweringContext>::with_hir_id_owner::<<rustc_ast_lowering::item::ItemLowerer>::with_lctx<<rustc_ast_lowering::item::ItemLowerer>::lower_item::{closure#0}>::{closure#0}>
14: <rustc_ast_lowering::item::ItemLowerer>::with_lctx::<<rustc_ast_lowering::item::ItemLowerer>::lower_item::{closure#0}>
15: <rustc_ast_lowering::item::ItemLowerer>::lower_node
16: rustc_ast_lowering::lower_to_hir
[... omitted 3 frames ...]
17: <rustc_middle::hir::provide::{closure#1} as core::ops::function::FnOnce<(rustc_middle::ty::context::TyCtxt, rustc_span::def_id::LocalDefId)>>::call_once
[... omitted 3 frames ...]
18: rustc_middle::query::plumbing::query_get_at::<rustc_data_structures::vec_cache::VecCache<rustc_span::def_id::LocalDefId, rustc_middle::query::erase::Erased<[u8; 8]>, rustc_query_system::dep_graph::graph::DepNodeIndex>>
19: <rustc_middle::hir::map::Map>::get_module
20: rustc_middle::hir::map::hir_crate_items
[... omitted 3 frames ...]
21: rustc_passes::hir_id_validator::check_crate
22: rustc_interface::passes::analysis
[... omitted 3 frames ...]
23: <std::thread::local::LocalKey<core::cell::Cell<*const ()>>>::with::<rustc_middle::ty::context::tls::enter_context<<rustc_middle::ty::context::GlobalCtxt>::enter<rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}, core::option::Option<rustc_interface::queries::Linker>>::{closure#1}, core::option::Option<rustc_interface::queries::Linker>>::{closure#0}, core::option::Option<rustc_interface::queries::Linker>>
24: <rustc_middle::ty::context::TyCtxt>::create_global_ctxt::<core::option::Option<rustc_interface::queries::Linker>, rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}>
25: <rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2} as core::ops::function::FnOnce<(&rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2})>>::call_once::{shim:vtable#0}
26: <alloc::boxed::Box<dyn for<'a> core::ops::function::FnOnce<(&'a rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &'a std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt<'a>>, &'a rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena<'a>>, &'a rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena<'a>>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}), Output = core::option::Option<rustc_interface::queries::Linker>>> as core::ops::function::FnOnce<(&rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2})>>::call_once
28: <scoped_tls::ScopedKey<rustc_span::SessionGlobals>>::set::<rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}, ()>
29: rustc_span::create_session_globals_then::<(), rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}>
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---
note: please make sure that you have updated to the latest nightly
note: rustc 1.86.0-nightly (3bb4ead70 2025-02-05) running on x86_64-unknown-linux-gnu
note: compiler flags: -Z threads=1 -Z simulate-remapped-rust-src-base=/rustc/FAKE_PREFIX -Z translate-remapped-path-to-local-path=no -Z ignore-directory-in-diagnostics-source-blocks=/cargo -Z ignore-directory-in-diagnostics-source-blocks=/checkout/vendor -C codegen-units=1 -Z ui-testing -Z deduplicate-diagnostics=no -Z write-long-types-to-disk=no -C strip=debuginfo -C prefer-dynamic -C rpath -C debuginfo=0
query stack during panic:
query stack during panic:
#0 [hir_crate] getting the crate HIR
#1 [opt_hir_owner_nodes] getting HIR owner items in ``
#2 [hir_crate_items] getting HIR crate items
end of query stack
error: aborting due to 7 previous errors
------------------------------------------
---- [ui] tests/ui/lexer/lex-bad-numeric-literals.rs stdout ----
error: Error: expected failure status (Some(1)) but received status Some(101).
status: exit status: 101
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/lexer/lex-bad-numeric-literals.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/lexer/lex-bad-numeric-literals" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers"
--- stderr -------------------------------
error: octal float literal is not supported
##[error] --> /checkout/tests/ui/lexer/lex-bad-numeric-literals.rs:4:5
|
|
LL | 0o1.0; //~ ERROR: octal float literal is not supported
error: octal float literal is not supported
##[error] --> /checkout/tests/ui/lexer/lex-bad-numeric-literals.rs:6:5
|
|
LL | 0o3.0f32; //~ ERROR: octal float literal is not supported
error: octal float literal is not supported
##[error] --> /checkout/tests/ui/lexer/lex-bad-numeric-literals.rs:7:5
|
|
LL | 0o4e4; //~ ERROR: octal float literal is not supported
error: octal float literal is not supported
##[error] --> /checkout/tests/ui/lexer/lex-bad-numeric-literals.rs:8:5
|
|
LL | 0o5.0e5; //~ ERROR: octal float literal is not supported
error: octal float literal is not supported
##[error] --> /checkout/tests/ui/lexer/lex-bad-numeric-literals.rs:9:5
|
|
LL | 0o6e6f32; //~ ERROR: octal float literal is not supported
error: octal float literal is not supported
##[error] --> /checkout/tests/ui/lexer/lex-bad-numeric-literals.rs:10:5
|
|
LL | 0o7.0e7f64; //~ ERROR: octal float literal is not supported
error: hexadecimal float literal is not supported
##[error] --> /checkout/tests/ui/lexer/lex-bad-numeric-literals.rs:11:5
|
|
LL | 0x8.0e+9; //~ ERROR: hexadecimal float literal is not supported
error: hexadecimal float literal is not supported
##[error] --> /checkout/tests/ui/lexer/lex-bad-numeric-literals.rs:12:5
|
|
LL | 0x9.0e-9; //~ ERROR: hexadecimal float literal is not supported
error[E0768]: no valid digits found for number
##[error] --> /checkout/tests/ui/lexer/lex-bad-numeric-literals.rs:13:5
|
|
LL | 0o; //~ ERROR: no valid digits
error: expected at least one digit in exponent
##[error] --> /checkout/tests/ui/lexer/lex-bad-numeric-literals.rs:14:5
|
|
LL | 1e+; //~ ERROR: expected at least one digit in exponent
error: hexadecimal float literal is not supported
##[error] --> /checkout/tests/ui/lexer/lex-bad-numeric-literals.rs:15:5
|
|
LL | 0x539.0; //~ ERROR: hexadecimal float literal is not supported
error[E0768]: no valid digits found for number
##[error] --> /checkout/tests/ui/lexer/lex-bad-numeric-literals.rs:26:5
|
|
LL | 0x; //~ ERROR: no valid digits
error[E0768]: no valid digits found for number
##[error] --> /checkout/tests/ui/lexer/lex-bad-numeric-literals.rs:27:5
|
|
LL | 0xu32; //~ ERROR: no valid digits
error[E0768]: no valid digits found for number
##[error] --> /checkout/tests/ui/lexer/lex-bad-numeric-literals.rs:28:5
|
|
LL | 0ou32; //~ ERROR: no valid digits
error[E0768]: no valid digits found for number
##[error] --> /checkout/tests/ui/lexer/lex-bad-numeric-literals.rs:29:5
|
|
LL | 0bu32; //~ ERROR: no valid digits
error[E0768]: no valid digits found for number
##[error] --> /checkout/tests/ui/lexer/lex-bad-numeric-literals.rs:30:5
|
|
LL | 0b; //~ ERROR: no valid digits
error: octal float literal is not supported
##[error] --> /checkout/tests/ui/lexer/lex-bad-numeric-literals.rs:32:5
|
|
LL | 0o123.456; //~ ERROR: octal float literal is not supported
error: binary float literal is not supported
##[error] --> /checkout/tests/ui/lexer/lex-bad-numeric-literals.rs:34:5
|
|
LL | 0b111.101; //~ ERROR: binary float literal is not supported
error: octal float literal is not supported
##[error] --> /checkout/tests/ui/lexer/lex-bad-numeric-literals.rs:5:5
|
|
LL | 0o2f32; //~ ERROR: octal float literal is not supported
thread 'rustc' panicked at library/core/src/fmt/num.rs:606:13:
assertion failed: n < 10
---
9: <rustc_ast_lowering::LoweringContext>::lower_stmts
10: <rustc_ast_lowering::LoweringContext>::lower_block_expr
11: <rustc_ast_lowering::LoweringContext>::lower_maybe_coroutine_body
12: <rustc_ast_lowering::LoweringContext>::lower_item_kind
13: <rustc_ast_lowering::LoweringContext>::with_hir_id_owner::<<rustc_ast_lowering::item::ItemLowerer>::with_lctx<<rustc_ast_lowering::item::ItemLowerer>::lower_item::{closure#0}>::{closure#0}>
14: <rustc_ast_lowering::item::ItemLowerer>::with_lctx::<<rustc_ast_lowering::item::ItemLowerer>::lower_item::{closure#0}>
15: <rustc_ast_lowering::item::ItemLowerer>::lower_node
16: rustc_ast_lowering::lower_to_hir
[... omitted 3 frames ...]
17: <rustc_middle::hir::provide::{closure#1} as core::ops::function::FnOnce<(rustc_middle::ty::context::TyCtxt, rustc_span::def_id::LocalDefId)>>::call_once
[... omitted 3 frames ...]
18: rustc_middle::query::plumbing::query_get_at::<rustc_data_structures::vec_cache::VecCache<rustc_span::def_id::LocalDefId, rustc_middle::query::erase::Erased<[u8; 8]>, rustc_query_system::dep_graph::graph::DepNodeIndex>>
19: <rustc_middle::hir::map::Map>::get_module
20: rustc_middle::hir::map::hir_crate_items
[... omitted 3 frames ...]
21: rustc_passes::hir_id_validator::check_crate
22: rustc_interface::passes::analysis
[... omitted 3 frames ...]
23: <std::thread::local::LocalKey<core::cell::Cell<*const ()>>>::with::<rustc_middle::ty::context::tls::enter_context<<rustc_middle::ty::context::GlobalCtxt>::enter<rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}, core::option::Option<rustc_interface::queries::Linker>>::{closure#1}, core::option::Option<rustc_interface::queries::Linker>>::{closure#0}, core::option::Option<rustc_interface::queries::Linker>>
24: <rustc_middle::ty::context::TyCtxt>::create_global_ctxt::<core::option::Option<rustc_interface::queries::Linker>, rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}>
25: <rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2} as core::ops::function::FnOnce<(&rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2})>>::call_once::{shim:vtable#0}
26: <alloc::boxed::Box<dyn for<'a> core::ops::function::FnOnce<(&'a rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &'a std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt<'a>>, &'a rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena<'a>>, &'a rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena<'a>>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}), Output = core::option::Option<rustc_interface::queries::Linker>>> as core::ops::function::FnOnce<(&rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2})>>::call_once
28: <scoped_tls::ScopedKey<rustc_span::SessionGlobals>>::set::<rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}, ()>
29: rustc_span::create_session_globals_then::<(), rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}>
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---
note: please make sure that you have updated to the latest nightly
note: rustc 1.86.0-nightly (3bb4ead70 2025-02-05) running on x86_64-unknown-linux-gnu
note: compiler flags: -Z threads=1 -Z simulate-remapped-rust-src-base=/rustc/FAKE_PREFIX -Z translate-remapped-path-to-local-path=no -Z ignore-directory-in-diagnostics-source-blocks=/cargo -Z ignore-directory-in-diagnostics-source-blocks=/checkout/vendor -C codegen-units=1 -Z ui-testing -Z deduplicate-diagnostics=no -Z write-long-types-to-disk=no -C strip=debuginfo -C prefer-dynamic -C rpath -C debuginfo=0
query stack during panic:
query stack during panic:
#0 [hir_crate] getting the crate HIR
#1 [opt_hir_owner_nodes] getting HIR owner items in ``
#2 [hir_crate_items] getting HIR crate items
end of query stack
error: aborting due to 19 previous errors
For more information about this error, try `rustc --explain E0768`.
For more information about this error, try `rustc --explain E0768`.
------------------------------------------
---- [ui] tests/ui/lint/type-overflow.rs stdout ----
error: test compilation failed although it shouldn't!
status: exit status: 101
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/lint/type-overflow.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/lint/type-overflow" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers"
--- stderr -------------------------------
warning: literal out of range for `i8`
##[warning] --> /checkout/tests/ui/lint/type-overflow.rs:5:17
|
|
LL | let error = 255i8; //~WARNING literal out of range for `i8`
| ^^^^^
|
= note: the literal `255i8` does not fit into the type `i8` whose range is `-128..=127`
note: the lint level is defined here
--> /checkout/tests/ui/lint/type-overflow.rs:2:9
|
LL | #![warn(overflowing_literals)]
LL | #![warn(overflowing_literals)]
| ^^^^^^^^^^^^^^^^^^^^
warning: literal out of range for `i8`
##[warning] --> /checkout/tests/ui/lint/type-overflow.rs:11:16
|
LL | let fail = 0b1000_0001i8; //~WARNING literal out of range for `i8`
|
|
= note: the literal `0b1000_0001i8` (decimal `129`) does not fit into the type `i8` and will become `-127i8`
|
|
LL | let fail = 0b1000_0001u8; //~WARNING literal out of range for `i8`
| ~~~~~~~~~~~~~
help: to use as a negative number (decimal `-127`), consider using the type `u8` for the literal and cast it to `i8`
|
LL | let fail = 0b1000_0001u8 as i8; //~WARNING literal out of range for `i8`
warning: literal out of range for `i64`
##[warning] --> /checkout/tests/ui/lint/type-overflow.rs:15:16
|
|
LL | let fail = 0x8000_0000_0000_0000i64; //~WARNING literal out of range for `i64`
|
|
= note: the literal `0x8000_0000_0000_0000i64` (decimal `9223372036854775808`) does not fit into the type `i64` and will become `-9223372036854775808i64`
|
|
LL | let fail = 0x8000_0000_0000_0000u64; //~WARNING literal out of range for `i64`
| ~~~~~~~~~~~~~~~~~~~~~~~~
help: to use as a negative number (decimal `-9223372036854775808`), consider using the type `u64` for the literal and cast it to `i64`
|
LL | let fail = 0x8000_0000_0000_0000u64 as i64; //~WARNING literal out of range for `i64`
warning: literal out of range for `u32`
##[warning] --> /checkout/tests/ui/lint/type-overflow.rs:19:16
|
|
LL | let fail = 0x1_FFFF_FFFFu32; //~WARNING literal out of range for `u32`
| ^^^^^^^^^^^^^^^^ help: consider using the type `u64` instead: `0x1_FFFF_FFFFu64`
|
= note: the literal `0x1_FFFF_FFFFu32` (decimal `8589934591`) does not fit into the type `u32` and will become `4294967295u32`
thread 'rustc' panicked at library/core/src/fmt/num.rs:606:13:
assertion failed: n < 10
stack backtrace:
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::panic
3: core::fmt::num::fmt_u128
4: rustc_lint::types::literal::report_bin_hex_error
5: rustc_lint::types::literal::lint_literal
6: <rustc_lint::BuiltinCombinedModuleLateLintPass as rustc_lint::passes::LateLintPass>::check_expr
7: <rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass> as rustc_hir::intravisit::Visitor>::visit_expr::{closure#0}
8: rustc_hir::intravisit::walk_local::<rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass>>
9: <rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass> as rustc_hir::intravisit::Visitor>::visit_local
10: <rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass> as rustc_hir::intravisit::Visitor>::visit_stmt
11: rustc_hir::intravisit::walk_expr::<rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass>>
12: <rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass> as rustc_hir::intravisit::Visitor>::visit_expr::{closure#0}
13: <rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass> as rustc_hir::intravisit::Visitor>::visit_nested_body
14: <rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass> as rustc_hir::intravisit::Visitor>::visit_fn
15: rustc_hir::intravisit::walk_item::<rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass>>
16: <rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass> as rustc_hir::intravisit::Visitor>::visit_nested_item
17: rustc_hir::intravisit::walk_mod::<rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass>>
18: rustc_lint::lint_mod
[... omitted 3 frames ...]
19: <rustc_middle::hir::map::Map>::par_for_each_module::<rustc_lint::late::check_crate::{closure#1}::{closure#0}::{closure#0}>::{closure#0}
20: <rustc_data_structures::sync::parallel::ParallelGuard>::run::<(), rustc_data_structures::sync::parallel::par_for_each_in<&rustc_hir::hir_id::OwnerId, &[rustc_hir::hir_id::OwnerId], <rustc_middle::hir::map::Map>::par_for_each_module<rustc_lint::late::check_crate::{closure#1}::{closure#0}::{closure#0}>::{closure#0}>::{closure#0}::{closure#1}::{closure#0}>
22: rustc_data_structures::sync::parallel::serial_join::<rustc_lint::late::check_crate::{closure#0}, rustc_lint::late::check_crate::{closure#1}, (), ()>
23: rustc_lint::late::check_crate
24: <rustc_session::session::Session>::time::<(), rustc_interface::passes::analysis::{closure#0}>
25: rustc_interface::passes::analysis
25: rustc_interface::passes::analysis
[... omitted 3 frames ...]
26: <std::thread::local::LocalKey<core::cell::Cell<*const ()>>>::with::<rustc_middle::ty::context::tls::enter_context<<rustc_middle::ty::context::GlobalCtxt>::enter<rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}, core::option::Option<rustc_interface::queries::Linker>>::{closure#1}, core::option::Option<rustc_interface::queries::Linker>>::{closure#0}, core::option::Option<rustc_interface::queries::Linker>>
27: <rustc_middle::ty::context::TyCtxt>::create_global_ctxt::<core::option::Option<rustc_interface::queries::Linker>, rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}>
28: <rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2} as core::ops::function::FnOnce<(&rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2})>>::call_once::{shim:vtable#0}
29: <alloc::boxed::Box<dyn for<'a> core::ops::function::FnOnce<(&'a rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &'a std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt<'a>>, &'a rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena<'a>>, &'a rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena<'a>>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}), Output = core::option::Option<rustc_interface::queries::Linker>>> as core::ops::function::FnOnce<(&rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2})>>::call_once
31: <scoped_tls::ScopedKey<rustc_span::SessionGlobals>>::set::<rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}, ()>
32: rustc_span::create_session_globals_then::<(), rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}>
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---
note: please make sure that you have updated to the latest nightly
note: rustc 1.86.0-nightly (3bb4ead70 2025-02-05) running on x86_64-unknown-linux-gnu
note: compiler flags: -Z threads=1 -Z simulate-remapped-rust-src-base=/rustc/FAKE_PREFIX -Z translate-remapped-path-to-local-path=no -Z ignore-directory-in-diagnostics-source-blocks=/cargo -Z ignore-directory-in-diagnostics-source-blocks=/checkout/vendor -C codegen-units=1 -Z ui-testing -Z deduplicate-diagnostics=no -Z write-long-types-to-disk=no -C strip=debuginfo -C prefer-dynamic -C rpath -C debuginfo=0
query stack during panic:
query stack during panic:
#0 [lint_mod] linting top-level module
end of query stack
warning: 4 warnings emitted
------------------------------------------
---- [ui] tests/ui/macros/issue-104769-concat_bytes-invalid-literal.rs stdout ----
error: Error: expected failure status (Some(1)) but received status Some(101).
status: exit status: 101
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/macros/issue-104769-concat_bytes-invalid-literal.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/macros/issue-104769-concat_bytes-invalid-literal" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers"
--- stderr -------------------------------
error: invalid suffix `Y` for number literal
##[error] --> /checkout/tests/ui/macros/issue-104769-concat_bytes-invalid-literal.rs:4:19
|
|
LL | concat_bytes!(7Y);
| ^^ invalid suffix `Y`
|
= help: the suffix must be one of the numeric types (`u32`, `isize`, `f32`, etc.)
thread 'rustc' panicked at library/core/src/fmt/num.rs:606:13:
assertion failed: n < 10
stack backtrace:
---
5: alloc::fmt::format::format_inner
6: rustc_session::errors::report_lit_error
7: rustc_builtin_macros::concat_bytes::invalid_type_err
8: rustc_builtin_macros::concat_bytes::expand_concat_bytes
9: <for<'a, 'b> fn(&'a mut rustc_expand::base::ExtCtxt<'b>, rustc_span::span_encoding::Span, rustc_ast::tokenstream::TokenStream) -> rustc_expand::base::ExpandResult<alloc::boxed::Box<dyn rustc_expand::base::MacResult + 'a>, ()> as rustc_expand::base::TTMacroExpander>::expand
10: <rustc_expand::expand::MacroExpander>::fully_expand_fragment
11: <rustc_expand::expand::MacroExpander>::expand_crate
13: rustc_interface::passes::resolver_for_lowering_raw
13: rustc_interface::passes::resolver_for_lowering_raw
[... omitted 3 frames ...]
14: <rustc_middle::ty::context::TyCtxt>::resolver_for_lowering
15: <std::thread::local::LocalKey<core::cell::Cell<*const ()>>>::with::<rustc_middle::ty::context::tls::enter_context<<rustc_middle::ty::context::GlobalCtxt>::enter<rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}, core::option::Option<rustc_interface::queries::Linker>>::{closure#1}, core::option::Option<rustc_interface::queries::Linker>>::{closure#0}, core::option::Option<rustc_interface::queries::Linker>>
16: <rustc_middle::ty::context::TyCtxt>::create_global_ctxt::<core::option::Option<rustc_interface::queries::Linker>, rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}>
17: <rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2} as core::ops::function::FnOnce<(&rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2})>>::call_once::{shim:vtable#0}
18: <alloc::boxed::Box<dyn for<'a> core::ops::function::FnOnce<(&'a rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &'a std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt<'a>>, &'a rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena<'a>>, &'a rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena<'a>>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}), Output = core::option::Option<rustc_interface::queries::Linker>>> as core::ops::function::FnOnce<(&rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2})>>::call_once
20: <scoped_tls::ScopedKey<rustc_span::SessionGlobals>>::set::<rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}, ()>
21: rustc_span::create_session_globals_then::<(), rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}>
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---
note: please make sure that you have updated to the latest nightly
note: rustc 1.86.0-nightly (3bb4ead70 2025-02-05) running on x86_64-unknown-linux-gnu
note: compiler flags: -Z threads=1 -Z simulate-remapped-rust-src-base=/rustc/FAKE_PREFIX -Z translate-remapped-path-to-local-path=no -Z ignore-directory-in-diagnostics-source-blocks=/cargo -Z ignore-directory-in-diagnostics-source-blocks=/checkout/vendor -C codegen-units=1 -Z ui-testing -Z deduplicate-diagnostics=no -Z write-long-types-to-disk=no -C strip=debuginfo -C prefer-dynamic -C rpath -C debuginfo=0
query stack during panic:
#0 [resolver_for_lowering_raw] getting the resolver for lowering
end of query stack
error: aborting due to 1 previous error
error: aborting due to 1 previous error
------------------------------------------
---- [ui] tests/ui/numbers-arithmetic/i128.rs stdout ----
error: test compilation failed although it shouldn't!
status: exit status: 101
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/numbers-arithmetic/i128.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "-O" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/numbers-arithmetic/i128/a" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers"
--- stderr -------------------------------
thread 'rustc' panicked at library/core/src/fmt/num.rs:606:13:
assertion failed: n < 10
assertion failed: n < 10
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::panic
3: core::fmt::num::fmt_u128
4: rustc_lint::types::literal::report_bin_hex_error
5: rustc_lint::types::literal::lint_literal
6: <rustc_lint::BuiltinCombinedModuleLateLintPass as rustc_lint::passes::LateLintPass>::check_expr
7: <rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass> as rustc_hir::intravisit::Visitor>::visit_expr::{closure#0}
8: <rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass> as rustc_hir::intravisit::Visitor>::visit_expr::{closure#0}
9: <rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass> as rustc_hir::intravisit::Visitor>::visit_expr::{closure#0}
10: rustc_hir::intravisit::walk_expr::<rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass>>
11: <rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass> as rustc_hir::intravisit::Visitor>::visit_expr::{closure#0}
12: rustc_hir::intravisit::walk_expr::<rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass>>
13: <rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass> as rustc_hir::intravisit::Visitor>::visit_expr::{closure#0}
14: <rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass> as rustc_hir::intravisit::Visitor>::visit_stmt
15: rustc_hir::intravisit::walk_expr::<rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass>>
16: <rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass> as rustc_hir::intravisit::Visitor>::visit_expr::{closure#0}
17: <rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass> as rustc_hir::intravisit::Visitor>::visit_nested_body
18: <rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass> as rustc_hir::intravisit::Visitor>::visit_fn
19: rustc_hir::intravisit::walk_item::<rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass>>
20: <rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass> as rustc_hir::intravisit::Visitor>::visit_nested_item
21: rustc_hir::intravisit::walk_mod::<rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass>>
22: rustc_lint::lint_mod
[... omitted 3 frames ...]
23: <rustc_middle::hir::map::Map>::par_for_each_module::<rustc_lint::late::check_crate::{closure#1}::{closure#0}::{closure#0}>::{closure#0}
24: <rustc_data_structures::sync::parallel::ParallelGuard>::run::<(), rustc_data_structures::sync::parallel::par_for_each_in<&rustc_hir::hir_id::OwnerId, &[rustc_hir::hir_id::OwnerId], <rustc_middle::hir::map::Map>::par_for_each_module<rustc_lint::late::check_crate::{closure#1}::{closure#0}::{closure#0}>::{closure#0}>::{closure#0}::{closure#1}::{closure#0}>
26: rustc_data_structures::sync::parallel::serial_join::<rustc_lint::late::check_crate::{closure#0}, rustc_lint::late::check_crate::{closure#1}, (), ()>
27: rustc_lint::late::check_crate
28: <rustc_session::session::Session>::time::<(), rustc_interface::passes::analysis::{closure#0}>
29: rustc_interface::passes::analysis
29: rustc_interface::passes::analysis
[... omitted 3 frames ...]
30: <std::thread::local::LocalKey<core::cell::Cell<*const ()>>>::with::<rustc_middle::ty::context::tls::enter_context<<rustc_middle::ty::context::GlobalCtxt>::enter<rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}, core::option::Option<rustc_interface::queries::Linker>>::{closure#1}, core::option::Option<rustc_interface::queries::Linker>>::{closure#0}, core::option::Option<rustc_interface::queries::Linker>>
31: <rustc_middle::ty::context::TyCtxt>::create_global_ctxt::<core::option::Option<rustc_interface::queries::Linker>, rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}>
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}>::{closure#2} as core::ops::function::FnOnce<(&rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2})>>::call_once::{shim:vtable#0}
33: <alloc::boxed::Box<dyn for<'a> core::ops::function::FnOnce<(&'a rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &'a std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt<'a>>, &'a rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena<'a>>, &'a rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena<'a>>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}), Output = core::option::Option<rustc_interface::queries::Linker>>> as core::ops::function::FnOnce<(&rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2})>>::call_once
35: <scoped_tls::ScopedKey<rustc_span::SessionGlobals>>::set::<rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}, ()>
36: rustc_span::create_session_globals_then::<(), rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}>
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---
note: please make sure that you have updated to the latest nightly
note: rustc 1.86.0-nightly (3bb4ead70 2025-02-05) running on x86_64-unknown-linux-gnu
note: compiler flags: -Z threads=1 -Z simulate-remapped-rust-src-base=/rustc/FAKE_PREFIX -Z translate-remapped-path-to-local-path=no -Z ignore-directory-in-diagnostics-source-blocks=/cargo -Z ignore-directory-in-diagnostics-source-blocks=/checkout/vendor -C codegen-units=1 -Z ui-testing -Z deduplicate-diagnostics=no -Z write-long-types-to-disk=no -C strip=debuginfo -C prefer-dynamic -C rpath -C debuginfo=0
query stack during panic:
query stack during panic:
#0 [lint_mod] linting top-level module
end of query stack
------------------------------------------
---- [ui] tests/ui/numbers-arithmetic/u128.rs stdout ----
error: test run failed!
status: exit status: 101
command: cd "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/numbers-arithmetic/u128" && RUSTC="/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" RUST_TEST_THREADS="16" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/numbers-arithmetic/u128/a"
--- stderr -------------------------------
thread 'main' panicked at library/core/src/fmt/num.rs:606:13:
assertion failed: n < 10
assertion failed: n < 10
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
------------------------------------------
---- [ui] tests/ui/parser/int-literal-too-large-span.rs stdout ----
error: Error: expected failure status (Some(1)) but received status Some(101).
status: exit status: 101
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/parser/int-literal-too-large-span.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/parser/int-literal-too-large-span" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers"
--- stderr -------------------------------
thread 'rustc' panicked at library/core/src/fmt/num.rs:606:13:
assertion failed: n < 10
---
9: <rustc_ast_lowering::LoweringContext>::lower_stmts
10: <rustc_ast_lowering::LoweringContext>::lower_block_expr
11: <rustc_ast_lowering::LoweringContext>::lower_maybe_coroutine_body
12: <rustc_ast_lowering::LoweringContext>::lower_item_kind
13: <rustc_ast_lowering::LoweringContext>::with_hir_id_owner::<<rustc_ast_lowering::item::ItemLowerer>::with_lctx<<rustc_ast_lowering::item::ItemLowerer>::lower_item::{closure#0}>::{closure#0}>
14: <rustc_ast_lowering::item::ItemLowerer>::with_lctx::<<rustc_ast_lowering::item::ItemLowerer>::lower_item::{closure#0}>
15: <rustc_ast_lowering::item::ItemLowerer>::lower_node
16: rustc_ast_lowering::lower_to_hir
[... omitted 3 frames ...]
17: <rustc_middle::hir::provide::{closure#1} as core::ops::function::FnOnce<(rustc_middle::ty::context::TyCtxt, rustc_span::def_id::LocalDefId)>>::call_once
[... omitted 3 frames ...]
18: rustc_middle::query::plumbing::query_get_at::<rustc_data_structures::vec_cache::VecCache<rustc_span::def_id::LocalDefId, rustc_middle::query::erase::Erased<[u8; 8]>, rustc_query_system::dep_graph::graph::DepNodeIndex>>
19: <rustc_middle::hir::map::Map>::get_module
20: rustc_middle::hir::map::hir_crate_items
[... omitted 3 frames ...]
21: rustc_passes::hir_id_validator::check_crate
22: rustc_interface::passes::analysis
[... omitted 3 frames ...]
23: <std::thread::local::LocalKey<core::cell::Cell<*const ()>>>::with::<rustc_middle::ty::context::tls::enter_context<<rustc_middle::ty::context::GlobalCtxt>::enter<rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}, core::option::Option<rustc_interface::queries::Linker>>::{closure#1}, core::option::Option<rustc_interface::queries::Linker>>::{closure#0}, core::option::Option<rustc_interface::queries::Linker>>
24: <rustc_middle::ty::context::TyCtxt>::create_global_ctxt::<core::option::Option<rustc_interface::queries::Linker>, rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}>
25: <rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2} as core::ops::function::FnOnce<(&rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2})>>::call_once::{shim:vtable#0}
26: <alloc::boxed::Box<dyn for<'a> core::ops::function::FnOnce<(&'a rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &'a std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt<'a>>, &'a rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena<'a>>, &'a rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena<'a>>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}), Output = core::option::Option<rustc_interface::queries::Linker>>> as core::ops::function::FnOnce<(&rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2})>>::call_once
28: <scoped_tls::ScopedKey<rustc_span::SessionGlobals>>::set::<rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}, ()>
29: rustc_span::create_session_globals_then::<(), rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}>
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---
note: please make sure that you have updated to the latest nightly
note: rustc 1.86.0-nightly (3bb4ead70 2025-02-05) running on x86_64-unknown-linux-gnu
note: compiler flags: -Z threads=1 -Z simulate-remapped-rust-src-base=/rustc/FAKE_PREFIX -Z translate-remapped-path-to-local-path=no -Z ignore-directory-in-diagnostics-source-blocks=/cargo -Z ignore-directory-in-diagnostics-source-blocks=/checkout/vendor -C codegen-units=1 -Z ui-testing -Z deduplicate-diagnostics=no -Z write-long-types-to-disk=no -C strip=debuginfo -C prefer-dynamic -C rpath -C debuginfo=0
query stack during panic:
query stack during panic:
#0 [hir_crate] getting the crate HIR
#1 [opt_hir_owner_nodes] getting HIR owner items in ``
#2 [hir_crate_items] getting HIR crate items
end of query stack
------------------------------------------
---- [ui] tests/ui/parser/issues/issue-5544-a.rs stdout ----
error: Error: expected failure status (Some(1)) but received status Some(101).
status: exit status: 101
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/parser/issues/issue-5544-a.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/parser/issues/issue-5544-a" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers"
--- stderr -------------------------------
thread 'rustc' panicked at library/core/src/fmt/num.rs:606:13:
assertion failed: n < 10
---
9: <rustc_ast_lowering::LoweringContext>::lower_stmts
10: <rustc_ast_lowering::LoweringContext>::lower_block_expr
11: <rustc_ast_lowering::LoweringContext>::lower_maybe_coroutine_body
12: <rustc_ast_lowering::LoweringContext>::lower_item_kind
13: <rustc_ast_lowering::LoweringContext>::with_hir_id_owner::<<rustc_ast_lowering::item::ItemLowerer>::with_lctx<<rustc_ast_lowering::item::ItemLowerer>::lower_item::{closure#0}>::{closure#0}>
14: <rustc_ast_lowering::item::ItemLowerer>::with_lctx::<<rustc_ast_lowering::item::ItemLowerer>::lower_item::{closure#0}>
15: <rustc_ast_lowering::item::ItemLowerer>::lower_node
16: rustc_ast_lowering::lower_to_hir
[... omitted 3 frames ...]
17: <rustc_middle::hir::provide::{closure#1} as core::ops::function::FnOnce<(rustc_middle::ty::context::TyCtxt, rustc_span::def_id::LocalDefId)>>::call_once
[... omitted 3 frames ...]
18: rustc_middle::query::plumbing::query_get_at::<rustc_data_structures::vec_cache::VecCache<rustc_span::def_id::LocalDefId, rustc_middle::query::erase::Erased<[u8; 8]>, rustc_query_system::dep_graph::graph::DepNodeIndex>>
19: <rustc_middle::hir::map::Map>::get_module
20: rustc_middle::hir::map::hir_crate_items
[... omitted 3 frames ...]
21: rustc_passes::hir_id_validator::check_crate
22: rustc_interface::passes::analysis
[... omitted 3 frames ...]
23: <std::thread::local::LocalKey<core::cell::Cell<*const ()>>>::with::<rustc_middle::ty::context::tls::enter_context<<rustc_middle::ty::context::GlobalCtxt>::enter<rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}, core::option::Option<rustc_interface::queries::Linker>>::{closure#1}, core::option::Option<rustc_interface::queries::Linker>>::{closure#0}, core::option::Option<rustc_interface::queries::Linker>>
24: <rustc_middle::ty::context::TyCtxt>::create_global_ctxt::<core::option::Option<rustc_interface::queries::Linker>, rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}>
25: <rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2} as core::ops::function::FnOnce<(&rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2})>>::call_once::{shim:vtable#0}
26: <alloc::boxed::Box<dyn for<'a> core::ops::function::FnOnce<(&'a rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &'a std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt<'a>>, &'a rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena<'a>>, &'a rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena<'a>>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}), Output = core::option::Option<rustc_interface::queries::Linker>>> as core::ops::function::FnOnce<(&rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2})>>::call_once
28: <scoped_tls::ScopedKey<rustc_span::SessionGlobals>>::set::<rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}, ()>
29: rustc_span::create_session_globals_then::<(), rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}>
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---
note: please make sure that you have updated to the latest nightly
note: rustc 1.86.0-nightly (3bb4ead70 2025-02-05) running on x86_64-unknown-linux-gnu
note: compiler flags: -Z threads=1 -Z simulate-remapped-rust-src-base=/rustc/FAKE_PREFIX -Z translate-remapped-path-to-local-path=no -Z ignore-directory-in-diagnostics-source-blocks=/cargo -Z ignore-directory-in-diagnostics-source-blocks=/checkout/vendor -C codegen-units=1 -Z ui-testing -Z deduplicate-diagnostics=no -Z write-long-types-to-disk=no -C strip=debuginfo -C prefer-dynamic -C rpath -C debuginfo=0
query stack during panic:
query stack during panic:
#0 [hir_crate] getting the crate HIR
#1 [opt_hir_owner_nodes] getting HIR owner items in ``
#2 [hir_crate_items] getting HIR crate items
end of query stack
------------------------------------------
@bors try @rust-timer queue
Insufficient permissions to issue commands to rust-timer.
@pascaldekloe: :key: Insufficient privileges: not in try users
Do you have a link to the asm diff?
:umbrella: The latest upstream changes (presumably #136409) made this pull request unmergeable. Please resolve the merge conflicts.
Do you have a link to the asm diff?
https://rust.godbolt.org/z/6Pq3hKT8d
The job x86_64-gnu-llvm-18 failed! Check out the build log: (web) (plain)
Click to see the possible cause of the failure (guessed by this bot)
#22 exporting to docker image format
#22 sending tarball 28.2s done
#22 DONE 34.2s
##[endgroup]
Setting extra environment values for docker: --env ENABLE_GCC_CODEGEN=1 --env GCC_EXEC_PREFIX=/usr/lib/gcc/
[CI_JOB_NAME=x86_64-gnu-llvm-18]
debug: `DISABLE_CI_RUSTC_IF_INCOMPATIBLE` configured.
---
sccache: Starting the server...
##[group]Configure the build
configure: processing command line
configure:
configure: build.configure-args := ['--build=x86_64-unknown-linux-gnu', '--llvm-root=/usr/lib/llvm-18', '--enable-llvm-link-shared', '--set', 'rust.randomize-layout=true', '--set', 'rust.thin-lto-import-instr-limit=10', '--enable-verbose-configure', '--enable-sccache', '--disable-manage-submodules', '--enable-locked-deps', '--enable-cargo-native-static', '--set', 'rust.codegen-units-std=1', '--set', 'dist.compression-profile=balanced', '--dist-compression-formats=xz', '--set', 'rust.lld=false', '--disable-dist-src', '--release-channel=nightly', '--enable-debug-assertions', '--enable-overflow-checks', '--enable-llvm-assertions', '--set', 'rust.verify-llvm-ir', '--set', 'rust.codegen-backends=llvm,cranelift,gcc', '--set', 'llvm.static-libstdcpp', '--enable-new-symbol-mangling']
configure: target.x86_64-unknown-linux-gnu.llvm-config := /usr/lib/llvm-18/bin/llvm-config
configure: llvm.link-shared := True
configure: rust.randomize-layout := True
configure: rust.thin-lto-import-instr-limit := 10
---
failures:
---- [ui] tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs stdout ----
error: Error: expected failure status (Some(1)) but received status Some(101).
status: exit status: 101
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers"
--- stderr -------------------------------
error[E0004]: non-exhaustive patterns: `_` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:14:8
|
|
LL | m!(0f32, f32::NEG_INFINITY..); //~ ERROR non-exhaustive patterns: `_` not covered
| ^^^^ pattern `_` not covered
= note: the matched value is of type `f32`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, _ => todo!() }
error[E0004]: non-exhaustive patterns: `_` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:15:8
|
|
LL | m!(0f32, ..f32::INFINITY); //~ ERROR non-exhaustive patterns: `_` not covered
| ^^^^ pattern `_` not covered
= note: the matched value is of type `f32`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, _ => todo!() }
error[E0004]: non-exhaustive patterns: `'\u{10ffff}'` not covered
|
|
LL | m!('a', ..core::char::MAX); //~ ERROR non-exhaustive patterns
| ^^^ pattern `'\u{10ffff}'` not covered
= note: the matched value is of type `char`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, '\u{10ffff}' => todo!() }
error[E0004]: non-exhaustive patterns: `'\u{10fffe}'..='\u{10ffff}'` not covered
|
|
LL | m!('a', ..ALMOST_MAX); //~ ERROR non-exhaustive patterns
| ^^^ pattern `'\u{10fffe}'..='\u{10ffff}'` not covered
= note: the matched value is of type `char`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, '\u{10fffe}'..='\u{10ffff}' => todo!() }
error[E0004]: non-exhaustive patterns: `'\0'` not covered
|
|
LL | m!('a', ALMOST_MIN..); //~ ERROR non-exhaustive patterns
| ^^^ pattern `'\0'` not covered
= note: the matched value is of type `char`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, '\0' => todo!() }
error[E0004]: non-exhaustive patterns: `'\u{10ffff}'` not covered
|
|
LL | m!('a', ..=ALMOST_MAX); //~ ERROR non-exhaustive patterns
| ^^^ pattern `'\u{10ffff}'` not covered
= note: the matched value is of type `char`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, '\u{10ffff}' => todo!() }
error[E0004]: non-exhaustive patterns: `'b'` not covered
|
|
LL | m!('a', ..=VAL | VAL_2..); //~ ERROR non-exhaustive patterns
| ^^^ pattern `'b'` not covered
= note: the matched value is of type `char`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 'b' => todo!() }
error[E0004]: non-exhaustive patterns: `'b'` not covered
|
|
LL | m!('a', ..VAL_1 | VAL_2..); //~ ERROR non-exhaustive patterns
| ^^^ pattern `'b'` not covered
= note: the matched value is of type `char`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 'b' => todo!() }
error[E0004]: non-exhaustive patterns: `u8::MAX` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:39:12
|
|
LL | m!(0, ..u8::MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `u8::MAX` not covered
= note: the matched value is of type `u8`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, u8::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `254_u8..=u8::MAX` not covered
|
|
LL | m!(0, ..ALMOST_MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `254_u8..=u8::MAX` not covered
= note: the matched value is of type `u8`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 254_u8..=u8::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `0_u8` not covered
|
|
LL | m!(0, ALMOST_MIN..); //~ ERROR non-exhaustive patterns
| ^ pattern `0_u8` not covered
= note: the matched value is of type `u8`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 0_u8 => todo!() }
error[E0004]: non-exhaustive patterns: `u8::MAX` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:42:12
|
|
LL | m!(0, ..=ALMOST_MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `u8::MAX` not covered
= note: the matched value is of type `u8`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, u8::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `43_u8` not covered
|
|
LL | m!(0, ..=VAL | VAL_2..); //~ ERROR non-exhaustive patterns
| ^ pattern `43_u8` not covered
= note: the matched value is of type `u8`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 43_u8 => todo!() }
error[E0004]: non-exhaustive patterns: `43_u8` not covered
|
|
LL | m!(0, ..VAL_1 | VAL_2..); //~ ERROR non-exhaustive patterns
| ^ pattern `43_u8` not covered
= note: the matched value is of type `u8`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 43_u8 => todo!() }
error[E0004]: non-exhaustive patterns: `u16::MAX` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:52:12
|
|
LL | m!(0, ..u16::MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `u16::MAX` not covered
= note: the matched value is of type `u16`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, u16::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `65534_u16..=u16::MAX` not covered
|
|
LL | m!(0, ..ALMOST_MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `65534_u16..=u16::MAX` not covered
= note: the matched value is of type `u16`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 65534_u16..=u16::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `0_u16` not covered
|
|
LL | m!(0, ALMOST_MIN..); //~ ERROR non-exhaustive patterns
| ^ pattern `0_u16` not covered
= note: the matched value is of type `u16`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 0_u16 => todo!() }
error[E0004]: non-exhaustive patterns: `u16::MAX` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:55:12
|
|
LL | m!(0, ..=ALMOST_MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `u16::MAX` not covered
= note: the matched value is of type `u16`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, u16::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `43_u16` not covered
|
|
LL | m!(0, ..=VAL | VAL_2..); //~ ERROR non-exhaustive patterns
| ^ pattern `43_u16` not covered
= note: the matched value is of type `u16`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 43_u16 => todo!() }
error[E0004]: non-exhaustive patterns: `43_u16` not covered
|
|
LL | m!(0, ..VAL_1 | VAL_2..); //~ ERROR non-exhaustive patterns
| ^ pattern `43_u16` not covered
= note: the matched value is of type `u16`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 43_u16 => todo!() }
error[E0004]: non-exhaustive patterns: `u32::MAX` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:65:12
|
|
LL | m!(0, ..u32::MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `u32::MAX` not covered
= note: the matched value is of type `u32`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, u32::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `4294967294_u32..=u32::MAX` not covered
|
|
LL | m!(0, ..ALMOST_MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `4294967294_u32..=u32::MAX` not covered
= note: the matched value is of type `u32`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 4294967294_u32..=u32::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `0_u32` not covered
|
|
LL | m!(0, ALMOST_MIN..); //~ ERROR non-exhaustive patterns
| ^ pattern `0_u32` not covered
= note: the matched value is of type `u32`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 0_u32 => todo!() }
error[E0004]: non-exhaustive patterns: `u32::MAX` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:68:12
|
|
LL | m!(0, ..=ALMOST_MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `u32::MAX` not covered
= note: the matched value is of type `u32`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, u32::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `43_u32` not covered
|
|
LL | m!(0, ..=VAL | VAL_2..); //~ ERROR non-exhaustive patterns
| ^ pattern `43_u32` not covered
= note: the matched value is of type `u32`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 43_u32 => todo!() }
error[E0004]: non-exhaustive patterns: `43_u32` not covered
|
|
LL | m!(0, ..VAL_1 | VAL_2..); //~ ERROR non-exhaustive patterns
| ^ pattern `43_u32` not covered
= note: the matched value is of type `u32`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 43_u32 => todo!() }
error[E0004]: non-exhaustive patterns: `u64::MAX` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:78:12
|
|
LL | m!(0, ..u64::MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `u64::MAX` not covered
= note: the matched value is of type `u64`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, u64::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `18446744073709551614_u64..=u64::MAX` not covered
|
|
LL | m!(0, ..ALMOST_MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `18446744073709551614_u64..=u64::MAX` not covered
= note: the matched value is of type `u64`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 18446744073709551614_u64..=u64::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `0_u64` not covered
|
|
LL | m!(0, ALMOST_MIN..); //~ ERROR non-exhaustive patterns
| ^ pattern `0_u64` not covered
= note: the matched value is of type `u64`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 0_u64 => todo!() }
error[E0004]: non-exhaustive patterns: `u64::MAX` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:81:12
|
|
LL | m!(0, ..=ALMOST_MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `u64::MAX` not covered
= note: the matched value is of type `u64`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, u64::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `43_u64` not covered
|
|
LL | m!(0, ..=VAL | VAL_2..); //~ ERROR non-exhaustive patterns
| ^ pattern `43_u64` not covered
= note: the matched value is of type `u64`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 43_u64 => todo!() }
error[E0004]: non-exhaustive patterns: `43_u64` not covered
|
|
LL | m!(0, ..VAL_1 | VAL_2..); //~ ERROR non-exhaustive patterns
| ^ pattern `43_u64` not covered
= note: the matched value is of type `u64`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 43_u64 => todo!() }
error[E0004]: non-exhaustive patterns: `u128::MAX` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:91:12
|
|
LL | m!(0, ..u128::MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `u128::MAX` not covered
= note: the matched value is of type `u128`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, u128::MAX => todo!() }
thread 'rustc' panicked at library/core/src/fmt/num.rs:606:13:
assertion failed: n < 10
---
7: <rustc_middle::ty::print::pretty::FmtPrinter as rustc_middle::ty::print::pretty::PrettyPrinter>::pretty_print_const_scalar_int
8: rustc_middle::mir::pretty::pretty_print_const_value_tcx
9: rustc_middle::mir::pretty::pretty_print_const_value
10: core::fmt::write
11: <rustc_middle::thir::PatRange as core::fmt::Display>::fmt
12: <rustc_pattern_analysis::rustc::RustcPatCtxt>::print_pat_range
13: <rustc_pattern_analysis::rustc::RustcPatCtxt>::print_witness_pat
14: rustc_mir_build::thir::pattern::check_match::report_non_exhaustive_match
15: <rustc_mir_build::thir::pattern::check_match::MatchVisitor as rustc_middle::thir::visit::Visitor>::visit_expr
16: <rustc_mir_build::thir::pattern::check_match::MatchVisitor as rustc_middle::thir::visit::Visitor>::visit_expr
17: rustc_middle::thir::visit::walk_expr::<rustc_mir_build::thir::pattern::check_match::MatchVisitor>
18: <rustc_mir_build::thir::pattern::check_match::MatchVisitor as rustc_middle::thir::visit::Visitor>::visit_expr
19: <rustc_mir_build::thir::pattern::check_match::MatchVisitor as rustc_middle::thir::visit::Visitor>::visit_expr
20: rustc_mir_build::thir::pattern::check_match::check_match
[... omitted 3 frames ...]
21: rustc_middle::query::plumbing::query_get_at::<rustc_data_structures::vec_cache::VecCache<rustc_span::def_id::LocalDefId, rustc_middle::query::erase::Erased<[u8; 1]>, rustc_query_system::dep_graph::graph::DepNodeIndex>>
23: rustc_mir_transform::mir_built
23: rustc_mir_transform::mir_built
[... omitted 3 frames ...]
24: rustc_mir_build::check_unsafety::check_unsafety
[... omitted 3 frames ...]
25: <rustc_middle::hir::map::Map>::par_body_owners::<rustc_interface::passes::run_required_analyses::{closure#2}::{closure#0}>::{closure#0}
26: <rustc_session::session::Session>::time::<(), rustc_interface::passes::run_required_analyses::{closure#2}>
27: rustc_interface::passes::analysis
[... omitted 3 frames ...]
28: <std::thread::local::LocalKey<core::cell::Cell<*const ()>>>::with::<rustc_middle::ty::context::tls::enter_context<<rustc_middle::ty::context::GlobalCtxt>::enter<rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}, core::option::Option<rustc_interface::queries::Linker>>::{closure#1}, core::option::Option<rustc_interface::queries::Linker>>::{closure#0}, core::option::Option<rustc_interface::queries::Linker>>
29: <rustc_middle::ty::context::TyCtxt>::create_global_ctxt::<core::option::Option<rustc_interface::queries::Linker>, rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}>
30: <rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2} as core::ops::function::FnOnce<(&rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2})>>::call_once::{shim:vtable#0}
31: <alloc::boxed::Box<dyn for<'a> core::ops::function::FnOnce<(&'a rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &'a std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt<'a>>, &'a rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena<'a>>, &'a rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena<'a>>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}), Output = core::option::Option<rustc_interface::queries::Linker>>> as core::ops::function::FnOnce<(&rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2})>>::call_once
33: <scoped_tls::ScopedKey<rustc_span::SessionGlobals>>::set::<rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}, ()>
34: rustc_span::create_session_globals_then::<(), rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}>
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---
note: please make sure that you have updated to the latest nightly
note: rustc 1.86.0-nightly (be494773a 2025-02-06) running on x86_64-unknown-linux-gnu
note: compiler flags: -Z threads=1 -Z simulate-remapped-rust-src-base=/rustc/FAKE_PREFIX -Z translate-remapped-path-to-local-path=no -Z ignore-directory-in-diagnostics-source-blocks=/cargo -Z ignore-directory-in-diagnostics-source-blocks=/checkout/vendor -C codegen-units=1 -Z ui-testing -Z deduplicate-diagnostics=no -Z write-long-types-to-disk=no -C strip=debuginfo -C prefer-dynamic -C rpath -C debuginfo=0
query stack during panic:
#0 [check_match] match-checking `unsigned::u128`
#0 [check_match] match-checking `unsigned::u128`
#1 [mir_built] building MIR for `unsigned::u128`
#2 [check_unsafety] unsafety-checking `unsigned::u128`
end of query stack
error[E0004]: non-exhaustive patterns: `i8::MAX` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:107:12
|
|
LL | m!(0, ..i8::MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `i8::MAX` not covered
= note: the matched value is of type `i8`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, i8::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `126_i8..=i8::MAX` not covered
|
|
LL | m!(0, ..ALMOST_MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `126_i8..=i8::MAX` not covered
= note: the matched value is of type `i8`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 126_i8..=i8::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `i8::MIN` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:109:12
|
|
LL | m!(0, ALMOST_MIN..); //~ ERROR non-exhaustive patterns
| ^ pattern `i8::MIN` not covered
= note: the matched value is of type `i8`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, i8::MIN => todo!() }
error[E0004]: non-exhaustive patterns: `i8::MAX` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:110:12
|
|
LL | m!(0, ..=ALMOST_MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `i8::MAX` not covered
= note: the matched value is of type `i8`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, i8::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `43_i8` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:111:12
|
|
LL | m!(0, ..=VAL | VAL_2..); //~ ERROR non-exhaustive patterns
| ^ pattern `43_i8` not covered
= note: the matched value is of type `i8`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 43_i8 => todo!() }
error[E0004]: non-exhaustive patterns: `43_i8` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:112:12
|
|
LL | m!(0, ..VAL_1 | VAL_2..); //~ ERROR non-exhaustive patterns
| ^ pattern `43_i8` not covered
= note: the matched value is of type `i8`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 43_i8 => todo!() }
error[E0004]: non-exhaustive patterns: `i16::MAX` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:120:12
|
|
LL | m!(0, ..i16::MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `i16::MAX` not covered
= note: the matched value is of type `i16`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, i16::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `32766_i16..=i16::MAX` not covered
|
|
LL | m!(0, ..ALMOST_MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `32766_i16..=i16::MAX` not covered
= note: the matched value is of type `i16`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 32766_i16..=i16::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `i16::MIN` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:122:12
|
|
LL | m!(0, ALMOST_MIN..); //~ ERROR non-exhaustive patterns
| ^ pattern `i16::MIN` not covered
= note: the matched value is of type `i16`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, i16::MIN => todo!() }
error[E0004]: non-exhaustive patterns: `i16::MAX` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:123:12
|
|
LL | m!(0, ..=ALMOST_MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `i16::MAX` not covered
= note: the matched value is of type `i16`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, i16::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `43_i16` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:124:12
|
|
LL | m!(0, ..=VAL | VAL_2..); //~ ERROR non-exhaustive patterns
| ^ pattern `43_i16` not covered
= note: the matched value is of type `i16`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 43_i16 => todo!() }
error[E0004]: non-exhaustive patterns: `43_i16` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:125:12
|
|
LL | m!(0, ..VAL_1 | VAL_2..); //~ ERROR non-exhaustive patterns
| ^ pattern `43_i16` not covered
= note: the matched value is of type `i16`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 43_i16 => todo!() }
error[E0004]: non-exhaustive patterns: `i32::MAX` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:133:12
|
|
LL | m!(0, ..i32::MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `i32::MAX` not covered
= note: the matched value is of type `i32`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, i32::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `2147483646_i32..=i32::MAX` not covered
|
|
LL | m!(0, ..ALMOST_MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `2147483646_i32..=i32::MAX` not covered
= note: the matched value is of type `i32`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 2147483646_i32..=i32::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `i32::MIN` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:135:12
|
|
LL | m!(0, ALMOST_MIN..); //~ ERROR non-exhaustive patterns
| ^ pattern `i32::MIN` not covered
= note: the matched value is of type `i32`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, i32::MIN => todo!() }
error[E0004]: non-exhaustive patterns: `i32::MAX` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:136:12
|
|
LL | m!(0, ..=ALMOST_MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `i32::MAX` not covered
= note: the matched value is of type `i32`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, i32::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `43_i32` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:137:12
|
|
LL | m!(0, ..=VAL | VAL_2..); //~ ERROR non-exhaustive patterns
| ^ pattern `43_i32` not covered
= note: the matched value is of type `i32`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 43_i32 => todo!() }
error[E0004]: non-exhaustive patterns: `43_i32` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:138:12
|
|
LL | m!(0, ..VAL_1 | VAL_2..); //~ ERROR non-exhaustive patterns
| ^ pattern `43_i32` not covered
= note: the matched value is of type `i32`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 43_i32 => todo!() }
error[E0004]: non-exhaustive patterns: `i64::MAX` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:146:12
|
|
LL | m!(0, ..i64::MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `i64::MAX` not covered
= note: the matched value is of type `i64`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, i64::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `9223372036854775806_i64..=i64::MAX` not covered
|
|
LL | m!(0, ..ALMOST_MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `9223372036854775806_i64..=i64::MAX` not covered
= note: the matched value is of type `i64`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 9223372036854775806_i64..=i64::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `i64::MIN` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:148:12
|
|
LL | m!(0, ALMOST_MIN..); //~ ERROR non-exhaustive patterns
| ^ pattern `i64::MIN` not covered
= note: the matched value is of type `i64`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, i64::MIN => todo!() }
error[E0004]: non-exhaustive patterns: `i64::MAX` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:149:12
|
|
LL | m!(0, ..=ALMOST_MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `i64::MAX` not covered
= note: the matched value is of type `i64`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, i64::MAX => todo!() }
error[E0004]: non-exhaustive patterns: `43_i64` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:150:12
|
|
LL | m!(0, ..=VAL | VAL_2..); //~ ERROR non-exhaustive patterns
| ^ pattern `43_i64` not covered
= note: the matched value is of type `i64`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 43_i64 => todo!() }
error[E0004]: non-exhaustive patterns: `43_i64` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:151:12
|
|
LL | m!(0, ..VAL_1 | VAL_2..); //~ ERROR non-exhaustive patterns
| ^ pattern `43_i64` not covered
= note: the matched value is of type `i64`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, 43_i64 => todo!() }
error[E0004]: non-exhaustive patterns: `i128::MAX` not covered
##[error] --> /checkout/tests/ui/half-open-range-patterns/half-open-range-pats-exhaustive-fail.rs:159:12
|
|
LL | m!(0, ..i128::MAX); //~ ERROR non-exhaustive patterns
| ^ pattern `i128::MAX` not covered
= note: the matched value is of type `i128`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
|
|
LL | match $s { $($t)+ => {}, i128::MAX => todo!() }
thread 'rustc' panicked at library/core/src/fmt/num.rs:606:13:
assertion failed: n < 10
---
7: <rustc_middle::ty::print::pretty::FmtPrinter as rustc_middle::ty::print::pretty::PrettyPrinter>::pretty_print_const_scalar_int
8: rustc_middle::mir::pretty::pretty_print_const_value_tcx
9: rustc_middle::mir::pretty::pretty_print_const_value
10: core::fmt::write
11: <rustc_middle::thir::PatRange as core::fmt::Display>::fmt
12: <rustc_pattern_analysis::rustc::RustcPatCtxt>::print_pat_range
13: <rustc_pattern_analysis::rustc::RustcPatCtxt>::print_witness_pat
14: rustc_mir_build::thir::pattern::check_match::report_non_exhaustive_match
15: <rustc_mir_build::thir::pattern::check_match::MatchVisitor as rustc_middle::thir::visit::Visitor>::visit_expr
16: <rustc_mir_build::thir::pattern::check_match::MatchVisitor as rustc_middle::thir::visit::Visitor>::visit_expr
17: rustc_middle::thir::visit::walk_expr::<rustc_mir_build::thir::pattern::check_match::MatchVisitor>
18: <rustc_mir_build::thir::pattern::check_match::MatchVisitor as rustc_middle::thir::visit::Visitor>::visit_expr
19: <rustc_mir_build::thir::pattern::check_match::MatchVisitor as rustc_middle::thir::visit::Visitor>::visit_expr
20: rustc_mir_build::thir::pattern::check_match::check_match
[... omitted 3 frames ...]
21: rustc_middle::query::plumbing::query_get_at::<rustc_data_structures::vec_cache::VecCache<rustc_span::def_id::LocalDefId, rustc_middle::query::erase::Erased<[u8; 1]>, rustc_query_system::dep_graph::graph::DepNodeIndex>>
23: rustc_mir_transform::mir_built
23: rustc_mir_transform::mir_built
[... omitted 3 frames ...]
24: rustc_mir_build::check_unsafety::check_unsafety
[... omitted 3 frames ...]
25: <rustc_middle::hir::map::Map>::par_body_owners::<rustc_interface::passes::run_required_analyses::{closure#2}::{closure#0}>::{closure#0}
26: <rustc_session::session::Session>::time::<(), rustc_interface::passes::run_required_analyses::{closure#2}>
27: rustc_interface::passes::analysis
[... omitted 3 frames ...]
28: <std::thread::local::LocalKey<core::cell::Cell<*const ()>>>::with::<rustc_middle::ty::context::tls::enter_context<<rustc_middle::ty::context::GlobalCtxt>::enter<rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}, core::option::Option<rustc_interface::queries::Linker>>::{closure#1}, core::option::Option<rustc_interface::queries::Linker>>::{closure#0}, core::option::Option<rustc_interface::queries::Linker>>
29: <rustc_middle::ty::context::TyCtxt>::create_global_ctxt::<core::option::Option<rustc_interface::queries::Linker>, rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}>
30: <rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2} as core::ops::function::FnOnce<(&rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2})>>::call_once::{shim:vtable#0}
31: <alloc::boxed::Box<dyn for<'a> core::ops::function::FnOnce<(&'a rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &'a std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt<'a>>, &'a rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena<'a>>, &'a rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena<'a>>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}), Output = core::option::Option<rustc_interface::queries::Linker>>> as core::ops::function::FnOnce<(&rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2})>>::call_once
33: <scoped_tls::ScopedKey<rustc_span::SessionGlobals>>::set::<rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}, ()>
34: rustc_span::create_session_globals_then::<(), rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}>
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---
note: please make sure that you have updated to the latest nightly
note: rustc 1.86.0-nightly (be494773a 2025-02-06) running on x86_64-unknown-linux-gnu
note: compiler flags: -Z threads=1 -Z simulate-remapped-rust-src-base=/rustc/FAKE_PREFIX -Z translate-remapped-path-to-local-path=no -Z ignore-directory-in-diagnostics-source-blocks=/cargo -Z ignore-directory-in-diagnostics-source-blocks=/checkout/vendor -C codegen-units=1 -Z ui-testing -Z deduplicate-diagnostics=no -Z write-long-types-to-disk=no -C strip=debuginfo -C prefer-dynamic -C rpath -C debuginfo=0
query stack during panic:
query stack during panic:
#0 [check_match] match-checking `signed::i128`
#1 [mir_built] building MIR for `signed::i128`
#2 [check_unsafety] unsafety-checking `signed::i128`
end of query stack
error: aborting due to 58 previous errors
For more information about this error, try `rustc --explain E0004`.
For more information about this error, try `rustc --explain E0004`.
------------------------------------------
---- [ui] tests/ui/lexer/error-stage.rs stdout ----
error: Error: expected failure status (Some(1)) but received status Some(101).
status: exit status: 101
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/lexer/error-stage.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/lexer/error-stage" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers"
--- stderr -------------------------------
error: binary float literal is not supported
##[error] --> /checkout/tests/ui/lexer/error-stage.rs:56:5
|
|
LL | 0b10.0f32; //~ ERROR binary float literal is not supported
error: binary float literal is not supported
##[error] --> /checkout/tests/ui/lexer/error-stage.rs:68:5
|
|
LL | 0b10.0f32; //~ ERROR binary float literal is not supported
error: binary float literal is not supported
##[error] --> /checkout/tests/ui/lexer/error-stage.rs:78:5
|
|
LL | 0b10.0f32; //~ ERROR binary float literal is not supported
error: suffixes on string literals are invalid
##[error] --> /checkout/tests/ui/lexer/error-stage.rs:74:5
|
|
LL | "string"any_suffix; //~ ERROR suffixes on string literals are invalid
| ^^^^^^^^^^^^^^^^^^ invalid suffix `any_suffix`
error: invalid width `123` for integer literal
|
|
LL | 10u123; //~ ERROR invalid width `123` for integer literal
|
|
= help: valid widths are 8, 16, 32, 64 and 128
error: invalid width `123` for float literal
|
|
LL | 10.0f123; //~ ERROR invalid width `123` for float literal
|
= help: valid widths are 32 and 64
error: binary float literal is not supported
error: binary float literal is not supported
##[error] --> /checkout/tests/ui/lexer/error-stage.rs:77:5
|
LL | 0b10f32; //~ ERROR binary float literal is not supported
thread 'rustc' panicked at library/core/src/fmt/num.rs:606:13:
assertion failed: n < 10
---
9: <rustc_ast_lowering::LoweringContext>::lower_stmts
10: <rustc_ast_lowering::LoweringContext>::lower_block_expr
11: <rustc_ast_lowering::LoweringContext>::lower_maybe_coroutine_body
12: <rustc_ast_lowering::LoweringContext>::lower_item_kind
13: <rustc_ast_lowering::LoweringContext>::with_hir_id_owner::<<rustc_ast_lowering::item::ItemLowerer>::with_lctx<<rustc_ast_lowering::item::ItemLowerer>::lower_item::{closure#0}>::{closure#0}>
14: <rustc_ast_lowering::item::ItemLowerer>::with_lctx::<<rustc_ast_lowering::item::ItemLowerer>::lower_item::{closure#0}>
15: <rustc_ast_lowering::item::ItemLowerer>::lower_node
16: rustc_ast_lowering::lower_to_hir
[... omitted 3 frames ...]
17: <rustc_middle::hir::provide::{closure#1} as core::ops::function::FnOnce<(rustc_middle::ty::context::TyCtxt, rustc_span::def_id::LocalDefId)>>::call_once
[... omitted 3 frames ...]
18: rustc_middle::query::plumbing::query_get_at::<rustc_data_structures::vec_cache::VecCache<rustc_hir::hir_id::OwnerId, rustc_middle::query::erase::Erased<[u8; 8]>, rustc_query_system::dep_graph::graph::DepNodeIndex>>
19: <rustc_middle::hir::map::Map>::get_module
20: rustc_middle::hir::map::hir_crate_items
[... omitted 3 frames ...]
21: rustc_passes::hir_id_validator::check_crate
22: rustc_interface::passes::analysis
[... omitted 3 frames ...]
23: <std::thread::local::LocalKey<core::cell::Cell<*const ()>>>::with::<rustc_middle::ty::context::tls::enter_context<<rustc_middle::ty::context::GlobalCtxt>::enter<rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}, core::option::Option<rustc_interface::queries::Linker>>::{closure#1}, core::option::Option<rustc_interface::queries::Linker>>::{closure#0}, core::option::Option<rustc_interface::queries::Linker>>
24: <rustc_middle::ty::context::TyCtxt>::create_global_ctxt::<core::option::Option<rustc_interface::queries::Linker>, rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}>
25: <rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2} as core::ops::function::FnOnce<(&rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2})>>::call_once::{shim:vtable#0}
26: <alloc::boxed::Box<dyn for<'a> core::ops::function::FnOnce<(&'a rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &'a std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt<'a>>, &'a rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena<'a>>, &'a rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena<'a>>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}), Output = core::option::Option<rustc_interface::queries::Linker>>> as core::ops::function::FnOnce<(&rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2})>>::call_once
28: <scoped_tls::ScopedKey<rustc_span::SessionGlobals>>::set::<rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}, ()>
29: rustc_span::create_session_globals_then::<(), rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}>
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---
note: please make sure that you have updated to the latest nightly
note: rustc 1.86.0-nightly (be494773a 2025-02-06) running on x86_64-unknown-linux-gnu
note: compiler flags: -Z threads=1 -Z simulate-remapped-rust-src-base=/rustc/FAKE_PREFIX -Z translate-remapped-path-to-local-path=no -Z ignore-directory-in-diagnostics-source-blocks=/cargo -Z ignore-directory-in-diagnostics-source-blocks=/checkout/vendor -C codegen-units=1 -Z ui-testing -Z deduplicate-diagnostics=no -Z write-long-types-to-disk=no -C strip=debuginfo -C prefer-dynamic -C rpath -C debuginfo=0
query stack during panic:
query stack during panic:
#0 [hir_crate] getting the crate HIR
#1 [opt_hir_owner_nodes] getting HIR owner items in ``
#2 [hir_crate_items] getting HIR crate items
end of query stack
error: aborting due to 7 previous errors
------------------------------------------
---- [ui] tests/ui/lexer/lex-bad-numeric-literals.rs stdout ----
error: Error: expected failure status (Some(1)) but received status Some(101).
status: exit status: 101
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/lexer/lex-bad-numeric-literals.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/lexer/lex-bad-numeric-literals" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers"
--- stderr -------------------------------
error: octal float literal is not supported
##[error] --> /checkout/tests/ui/lexer/lex-bad-numeric-literals.rs:4:5
|
|
LL | 0o1.0; //~ ERROR: octal float literal is not supported
error: octal float literal is not supported
##[error] --> /checkout/tests/ui/lexer/lex-bad-numeric-literals.rs:6:5
|
|
LL | 0o3.0f32; //~ ERROR: octal float literal is not supported
error: octal float literal is not supported
##[error] --> /checkout/tests/ui/lexer/lex-bad-numeric-literals.rs:7:5
|
|
LL | 0o4e4; //~ ERROR: octal float literal is not supported
error: octal float literal is not supported
##[error] --> /checkout/tests/ui/lexer/lex-bad-numeric-literals.rs:8:5
|
|
LL | 0o5.0e5; //~ ERROR: octal float literal is not supported
error: octal float literal is not supported
##[error] --> /checkout/tests/ui/lexer/lex-bad-numeric-literals.rs:9:5
|
|
LL | 0o6e6f32; //~ ERROR: octal float literal is not supported
error: octal float literal is not supported
##[error] --> /checkout/tests/ui/lexer/lex-bad-numeric-literals.rs:10:5
|
|
LL | 0o7.0e7f64; //~ ERROR: octal float literal is not supported
error: hexadecimal float literal is not supported
##[error] --> /checkout/tests/ui/lexer/lex-bad-numeric-literals.rs:11:5
|
|
LL | 0x8.0e+9; //~ ERROR: hexadecimal float literal is not supported
error: hexadecimal float literal is not supported
##[error] --> /checkout/tests/ui/lexer/lex-bad-numeric-literals.rs:12:5
|
|
LL | 0x9.0e-9; //~ ERROR: hexadecimal float literal is not supported
error[E0768]: no valid digits found for number
##[error] --> /checkout/tests/ui/lexer/lex-bad-numeric-literals.rs:13:5
|
|
LL | 0o; //~ ERROR: no valid digits
error: expected at least one digit in exponent
##[error] --> /checkout/tests/ui/lexer/lex-bad-numeric-literals.rs:14:5
|
|
LL | 1e+; //~ ERROR: expected at least one digit in exponent
error: hexadecimal float literal is not supported
##[error] --> /checkout/tests/ui/lexer/lex-bad-numeric-literals.rs:15:5
|
|
LL | 0x539.0; //~ ERROR: hexadecimal float literal is not supported
error[E0768]: no valid digits found for number
##[error] --> /checkout/tests/ui/lexer/lex-bad-numeric-literals.rs:26:5
|
|
LL | 0x; //~ ERROR: no valid digits
error[E0768]: no valid digits found for number
##[error] --> /checkout/tests/ui/lexer/lex-bad-numeric-literals.rs:27:5
|
|
LL | 0xu32; //~ ERROR: no valid digits
error[E0768]: no valid digits found for number
##[error] --> /checkout/tests/ui/lexer/lex-bad-numeric-literals.rs:28:5
|
|
LL | 0ou32; //~ ERROR: no valid digits
error[E0768]: no valid digits found for number
##[error] --> /checkout/tests/ui/lexer/lex-bad-numeric-literals.rs:29:5
|
|
LL | 0bu32; //~ ERROR: no valid digits
error[E0768]: no valid digits found for number
##[error] --> /checkout/tests/ui/lexer/lex-bad-numeric-literals.rs:30:5
|
|
LL | 0b; //~ ERROR: no valid digits
error: octal float literal is not supported
##[error] --> /checkout/tests/ui/lexer/lex-bad-numeric-literals.rs:32:5
|
|
LL | 0o123.456; //~ ERROR: octal float literal is not supported
error: binary float literal is not supported
##[error] --> /checkout/tests/ui/lexer/lex-bad-numeric-literals.rs:34:5
|
|
LL | 0b111.101; //~ ERROR: binary float literal is not supported
error: octal float literal is not supported
##[error] --> /checkout/tests/ui/lexer/lex-bad-numeric-literals.rs:5:5
|
|
LL | 0o2f32; //~ ERROR: octal float literal is not supported
thread 'rustc' panicked at library/core/src/fmt/num.rs:606:13:
assertion failed: n < 10
---
9: <rustc_ast_lowering::LoweringContext>::lower_stmts
10: <rustc_ast_lowering::LoweringContext>::lower_block_expr
11: <rustc_ast_lowering::LoweringContext>::lower_maybe_coroutine_body
12: <rustc_ast_lowering::LoweringContext>::lower_item_kind
13: <rustc_ast_lowering::LoweringContext>::with_hir_id_owner::<<rustc_ast_lowering::item::ItemLowerer>::with_lctx<<rustc_ast_lowering::item::ItemLowerer>::lower_item::{closure#0}>::{closure#0}>
14: <rustc_ast_lowering::item::ItemLowerer>::with_lctx::<<rustc_ast_lowering::item::ItemLowerer>::lower_item::{closure#0}>
15: <rustc_ast_lowering::item::ItemLowerer>::lower_node
16: rustc_ast_lowering::lower_to_hir
[... omitted 3 frames ...]
17: <rustc_middle::hir::provide::{closure#1} as core::ops::function::FnOnce<(rustc_middle::ty::context::TyCtxt, rustc_span::def_id::LocalDefId)>>::call_once
[... omitted 3 frames ...]
18: rustc_middle::query::plumbing::query_get_at::<rustc_data_structures::vec_cache::VecCache<rustc_hir::hir_id::OwnerId, rustc_middle::query::erase::Erased<[u8; 8]>, rustc_query_system::dep_graph::graph::DepNodeIndex>>
19: <rustc_middle::hir::map::Map>::get_module
20: rustc_middle::hir::map::hir_crate_items
[... omitted 3 frames ...]
21: rustc_passes::hir_id_validator::check_crate
22: rustc_interface::passes::analysis
[... omitted 3 frames ...]
23: <std::thread::local::LocalKey<core::cell::Cell<*const ()>>>::with::<rustc_middle::ty::context::tls::enter_context<<rustc_middle::ty::context::GlobalCtxt>::enter<rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}, core::option::Option<rustc_interface::queries::Linker>>::{closure#1}, core::option::Option<rustc_interface::queries::Linker>>::{closure#0}, core::option::Option<rustc_interface::queries::Linker>>
24: <rustc_middle::ty::context::TyCtxt>::create_global_ctxt::<core::option::Option<rustc_interface::queries::Linker>, rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}>
25: <rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2} as core::ops::function::FnOnce<(&rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2})>>::call_once::{shim:vtable#0}
26: <alloc::boxed::Box<dyn for<'a> core::ops::function::FnOnce<(&'a rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &'a std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt<'a>>, &'a rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena<'a>>, &'a rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena<'a>>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}), Output = core::option::Option<rustc_interface::queries::Linker>>> as core::ops::function::FnOnce<(&rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2})>>::call_once
28: <scoped_tls::ScopedKey<rustc_span::SessionGlobals>>::set::<rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}, ()>
29: rustc_span::create_session_globals_then::<(), rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}>
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---
note: please make sure that you have updated to the latest nightly
note: rustc 1.86.0-nightly (be494773a 2025-02-06) running on x86_64-unknown-linux-gnu
note: compiler flags: -Z threads=1 -Z simulate-remapped-rust-src-base=/rustc/FAKE_PREFIX -Z translate-remapped-path-to-local-path=no -Z ignore-directory-in-diagnostics-source-blocks=/cargo -Z ignore-directory-in-diagnostics-source-blocks=/checkout/vendor -C codegen-units=1 -Z ui-testing -Z deduplicate-diagnostics=no -Z write-long-types-to-disk=no -C strip=debuginfo -C prefer-dynamic -C rpath -C debuginfo=0
query stack during panic:
query stack during panic:
#0 [hir_crate] getting the crate HIR
#1 [opt_hir_owner_nodes] getting HIR owner items in ``
#2 [hir_crate_items] getting HIR crate items
end of query stack
error: aborting due to 19 previous errors
For more information about this error, try `rustc --explain E0768`.
For more information about this error, try `rustc --explain E0768`.
------------------------------------------
---- [ui] tests/ui/lint/type-overflow.rs stdout ----
error: test compilation failed although it shouldn't!
status: exit status: 101
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/lint/type-overflow.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/lint/type-overflow" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers"
--- stderr -------------------------------
warning: literal out of range for `i8`
##[warning] --> /checkout/tests/ui/lint/type-overflow.rs:5:17
|
|
LL | let error = 255i8; //~WARNING literal out of range for `i8`
| ^^^^^
|
= note: the literal `255i8` does not fit into the type `i8` whose range is `-128..=127`
note: the lint level is defined here
--> /checkout/tests/ui/lint/type-overflow.rs:2:9
|
LL | #![warn(overflowing_literals)]
LL | #![warn(overflowing_literals)]
| ^^^^^^^^^^^^^^^^^^^^
warning: literal out of range for `i8`
##[warning] --> /checkout/tests/ui/lint/type-overflow.rs:11:16
|
LL | let fail = 0b1000_0001i8; //~WARNING literal out of range for `i8`
|
|
= note: the literal `0b1000_0001i8` (decimal `129`) does not fit into the type `i8` and will become `-127i8`
|
|
LL | let fail = 0b1000_0001u8; //~WARNING literal out of range for `i8`
| ~~~~~~~~~~~~~
help: to use as a negative number (decimal `-127`), consider using the type `u8` for the literal and cast it to `i8`
|
LL | let fail = 0b1000_0001u8 as i8; //~WARNING literal out of range for `i8`
warning: literal out of range for `i64`
##[warning] --> /checkout/tests/ui/lint/type-overflow.rs:15:16
|
|
LL | let fail = 0x8000_0000_0000_0000i64; //~WARNING literal out of range for `i64`
|
|
= note: the literal `0x8000_0000_0000_0000i64` (decimal `9223372036854775808`) does not fit into the type `i64` and will become `-9223372036854775808i64`
|
|
LL | let fail = 0x8000_0000_0000_0000u64; //~WARNING literal out of range for `i64`
| ~~~~~~~~~~~~~~~~~~~~~~~~
help: to use as a negative number (decimal `-9223372036854775808`), consider using the type `u64` for the literal and cast it to `i64`
|
LL | let fail = 0x8000_0000_0000_0000u64 as i64; //~WARNING literal out of range for `i64`
warning: literal out of range for `u32`
##[warning] --> /checkout/tests/ui/lint/type-overflow.rs:19:16
|
|
LL | let fail = 0x1_FFFF_FFFFu32; //~WARNING literal out of range for `u32`
| ^^^^^^^^^^^^^^^^ help: consider using the type `u64` instead: `0x1_FFFF_FFFFu64`
|
= note: the literal `0x1_FFFF_FFFFu32` (decimal `8589934591`) does not fit into the type `u32` and will become `4294967295u32`
thread 'rustc' panicked at library/core/src/fmt/num.rs:606:13:
assertion failed: n < 10
stack backtrace:
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::panic
3: core::fmt::num::fmt_u128
4: rustc_lint::types::literal::report_bin_hex_error
5: rustc_lint::types::literal::lint_literal
6: <rustc_lint::BuiltinCombinedModuleLateLintPass as rustc_lint::passes::LateLintPass>::check_expr
7: <rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass> as rustc_hir::intravisit::Visitor>::visit_expr::{closure#0}
8: rustc_hir::intravisit::walk_local::<rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass>>
9: <rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass> as rustc_hir::intravisit::Visitor>::visit_local
10: <rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass> as rustc_hir::intravisit::Visitor>::visit_stmt
11: rustc_hir::intravisit::walk_expr::<rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass>>
12: <rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass> as rustc_hir::intravisit::Visitor>::visit_expr::{closure#0}
13: <rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass> as rustc_hir::intravisit::Visitor>::visit_nested_body
14: <rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass> as rustc_hir::intravisit::Visitor>::visit_fn
15: rustc_hir::intravisit::walk_item::<rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass>>
16: <rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass> as rustc_hir::intravisit::Visitor>::visit_nested_item
17: rustc_hir::intravisit::walk_mod::<rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass>>
18: rustc_lint::late::late_lint_mod::<rustc_lint::BuiltinCombinedModuleLateLintPass>
19: rustc_lint::lint_mod
[... omitted 3 frames ...]
20: <rustc_middle::hir::map::Map>::par_for_each_module::<rustc_lint::late::check_crate::{closure#1}::{closure#0}::{closure#0}>::{closure#0}
22: rustc_lint::late::check_crate
23: <rustc_session::session::Session>::time::<(), rustc_interface::passes::analysis::{closure#0}>
24: rustc_interface::passes::analysis
24: rustc_interface::passes::analysis
[... omitted 3 frames ...]
25: <std::thread::local::LocalKey<core::cell::Cell<*const ()>>>::with::<rustc_middle::ty::context::tls::enter_context<<rustc_middle::ty::context::GlobalCtxt>::enter<rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}, core::option::Option<rustc_interface::queries::Linker>>::{closure#1}, core::option::Option<rustc_interface::queries::Linker>>::{closure#0}, core::option::Option<rustc_interface::queries::Linker>>
26: <rustc_middle::ty::context::TyCtxt>::create_global_ctxt::<core::option::Option<rustc_interface::queries::Linker>, rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}>
27: <rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2} as core::ops::function::FnOnce<(&rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2})>>::call_once::{shim:vtable#0}
28: <alloc::boxed::Box<dyn for<'a> core::ops::function::FnOnce<(&'a rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &'a std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt<'a>>, &'a rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena<'a>>, &'a rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena<'a>>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}), Output = core::option::Option<rustc_interface::queries::Linker>>> as core::ops::function::FnOnce<(&rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2})>>::call_once
30: <scoped_tls::ScopedKey<rustc_span::SessionGlobals>>::set::<rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}, ()>
31: rustc_span::create_session_globals_then::<(), rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}>
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---
note: please make sure that you have updated to the latest nightly
note: rustc 1.86.0-nightly (be494773a 2025-02-06) running on x86_64-unknown-linux-gnu
note: compiler flags: -Z threads=1 -Z simulate-remapped-rust-src-base=/rustc/FAKE_PREFIX -Z translate-remapped-path-to-local-path=no -Z ignore-directory-in-diagnostics-source-blocks=/cargo -Z ignore-directory-in-diagnostics-source-blocks=/checkout/vendor -C codegen-units=1 -Z ui-testing -Z deduplicate-diagnostics=no -Z write-long-types-to-disk=no -C strip=debuginfo -C prefer-dynamic -C rpath -C debuginfo=0
query stack during panic:
query stack during panic:
#0 [lint_mod] linting top-level module
end of query stack
warning: 4 warnings emitted
------------------------------------------
---- [ui] tests/ui/macros/issue-104769-concat_bytes-invalid-literal.rs stdout ----
error: Error: expected failure status (Some(1)) but received status Some(101).
status: exit status: 101
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/macros/issue-104769-concat_bytes-invalid-literal.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/macros/issue-104769-concat_bytes-invalid-literal" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers"
--- stderr -------------------------------
error: invalid suffix `Y` for number literal
##[error] --> /checkout/tests/ui/macros/issue-104769-concat_bytes-invalid-literal.rs:4:19
|
|
LL | concat_bytes!(7Y);
| ^^ invalid suffix `Y`
|
= help: the suffix must be one of the numeric types (`u32`, `isize`, `f32`, etc.)
thread 'rustc' panicked at library/core/src/fmt/num.rs:606:13:
assertion failed: n < 10
stack backtrace:
---
9: <rustc_expand::expand::MacroExpander>::fully_expand_fragment
10: <rustc_expand::expand::MacroExpander>::expand_crate
11: <rustc_session::session::Session>::time::<rustc_ast::ast::Crate, rustc_interface::passes::configure_and_expand::{closure#1}>
12: rustc_interface::passes::resolver_for_lowering_raw
[... omitted 3 frames ...]
13: <rustc_middle::ty::context::TyCtxt>::resolver_for_lowering
14: <std::thread::local::LocalKey<core::cell::Cell<*const ()>>>::with::<rustc_middle::ty::context::tls::enter_context<<rustc_middle::ty::context::GlobalCtxt>::enter<rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}, core::option::Option<rustc_interface::queries::Linker>>::{closure#1}, core::option::Option<rustc_interface::queries::Linker>>::{closure#0}, core::option::Option<rustc_interface::queries::Linker>>
15: <rustc_middle::ty::context::TyCtxt>::create_global_ctxt::<core::option::Option<rustc_interface::queries::Linker>, rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}>
16: <rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2} as core::ops::function::FnOnce<(&rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2})>>::call_once::{shim:vtable#0}
17: <alloc::boxed::Box<dyn for<'a> core::ops::function::FnOnce<(&'a rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &'a std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt<'a>>, &'a rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena<'a>>, &'a rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena<'a>>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}), Output = core::option::Option<rustc_interface::queries::Linker>>> as core::ops::function::FnOnce<(&rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2})>>::call_once
19: <scoped_tls::ScopedKey<rustc_span::SessionGlobals>>::set::<rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}, ()>
20: rustc_span::create_session_globals_then::<(), rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}>
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---
note: please make sure that you have updated to the latest nightly
note: rustc 1.86.0-nightly (be494773a 2025-02-06) running on x86_64-unknown-linux-gnu
note: compiler flags: -Z threads=1 -Z simulate-remapped-rust-src-base=/rustc/FAKE_PREFIX -Z translate-remapped-path-to-local-path=no -Z ignore-directory-in-diagnostics-source-blocks=/cargo -Z ignore-directory-in-diagnostics-source-blocks=/checkout/vendor -C codegen-units=1 -Z ui-testing -Z deduplicate-diagnostics=no -Z write-long-types-to-disk=no -C strip=debuginfo -C prefer-dynamic -C rpath -C debuginfo=0
query stack during panic:
#0 [resolver_for_lowering_raw] getting the resolver for lowering
end of query stack
error: aborting due to 1 previous error
error: aborting due to 1 previous error
------------------------------------------
---- [ui] tests/ui/numbers-arithmetic/i128.rs stdout ----
error: test compilation failed although it shouldn't!
status: exit status: 101
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/numbers-arithmetic/i128.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "-O" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/numbers-arithmetic/i128/a" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers"
--- stderr -------------------------------
thread 'rustc' panicked at library/core/src/fmt/num.rs:606:13:
assertion failed: n < 10
assertion failed: n < 10
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::panic
3: core::fmt::num::fmt_u128
4: rustc_lint::types::literal::report_bin_hex_error
5: rustc_lint::types::literal::lint_literal
6: <rustc_lint::BuiltinCombinedModuleLateLintPass as rustc_lint::passes::LateLintPass>::check_expr
7: <rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass> as rustc_hir::intravisit::Visitor>::visit_expr::{closure#0}
8: <rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass> as rustc_hir::intravisit::Visitor>::visit_expr::{closure#0}
9: <rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass> as rustc_hir::intravisit::Visitor>::visit_expr::{closure#0}
10: rustc_hir::intravisit::walk_expr::<rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass>>
11: <rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass> as rustc_hir::intravisit::Visitor>::visit_expr::{closure#0}
12: rustc_hir::intravisit::walk_expr::<rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass>>
13: <rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass> as rustc_hir::intravisit::Visitor>::visit_expr::{closure#0}
14: <rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass> as rustc_hir::intravisit::Visitor>::visit_stmt
15: rustc_hir::intravisit::walk_expr::<rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass>>
16: <rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass> as rustc_hir::intravisit::Visitor>::visit_expr::{closure#0}
17: <rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass> as rustc_hir::intravisit::Visitor>::visit_nested_body
18: <rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass> as rustc_hir::intravisit::Visitor>::visit_fn
19: rustc_hir::intravisit::walk_item::<rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass>>
20: <rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass> as rustc_hir::intravisit::Visitor>::visit_nested_item
21: rustc_hir::intravisit::walk_mod::<rustc_lint::late::LateContextAndPass<rustc_lint::BuiltinCombinedModuleLateLintPass>>
22: rustc_lint::late::late_lint_mod::<rustc_lint::BuiltinCombinedModuleLateLintPass>
23: rustc_lint::lint_mod
[... omitted 3 frames ...]
24: <rustc_middle::hir::map::Map>::par_for_each_module::<rustc_lint::late::check_crate::{closure#1}::{closure#0}::{closure#0}>::{closure#0}
26: rustc_lint::late::check_crate
27: <rustc_session::session::Session>::time::<(), rustc_interface::passes::analysis::{closure#0}>
28: rustc_interface::passes::analysis
28: rustc_interface::passes::analysis
[... omitted 3 frames ...]
29: <std::thread::local::LocalKey<core::cell::Cell<*const ()>>>::with::<rustc_middle::ty::context::tls::enter_context<<rustc_middle::ty::context::GlobalCtxt>::enter<rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}, core::option::Option<rustc_interface::queries::Linker>>::{closure#1}, core::option::Option<rustc_interface::queries::Linker>>::{closure#0}, core::option::Option<rustc_interface::queries::Linker>>
30: <rustc_middle::ty::context::TyCtxt>::create_global_ctxt::<core::option::Option<rustc_interface::queries::Linker>, rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}>
31: <rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2} as core::ops::function::FnOnce<(&rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2})>>::call_once::{shim:vtable#0}
32: <alloc::boxed::Box<dyn for<'a> core::ops::function::FnOnce<(&'a rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &'a std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt<'a>>, &'a rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena<'a>>, &'a rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena<'a>>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}), Output = core::option::Option<rustc_interface::queries::Linker>>> as core::ops::function::FnOnce<(&rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2})>>::call_once
34: <scoped_tls::ScopedKey<rustc_span::SessionGlobals>>::set::<rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}, ()>
35: rustc_span::create_session_globals_then::<(), rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}>
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---
note: please make sure that you have updated to the latest nightly
note: rustc 1.86.0-nightly (be494773a 2025-02-06) running on x86_64-unknown-linux-gnu
note: compiler flags: -Z threads=1 -Z simulate-remapped-rust-src-base=/rustc/FAKE_PREFIX -Z translate-remapped-path-to-local-path=no -Z ignore-directory-in-diagnostics-source-blocks=/cargo -Z ignore-directory-in-diagnostics-source-blocks=/checkout/vendor -C codegen-units=1 -Z ui-testing -Z deduplicate-diagnostics=no -Z write-long-types-to-disk=no -C strip=debuginfo -C prefer-dynamic -C rpath -C debuginfo=0
query stack during panic:
query stack during panic:
#0 [lint_mod] linting top-level module
end of query stack
------------------------------------------
---- [ui] tests/ui/numbers-arithmetic/u128.rs stdout ----
error: test run failed!
status: exit status: 101
command: cd "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/numbers-arithmetic/u128" && RUSTC="/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" RUST_TEST_THREADS="16" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/numbers-arithmetic/u128/a"
--- stderr -------------------------------
thread 'main' panicked at library/core/src/fmt/num.rs:606:13:
assertion failed: n < 10
assertion failed: n < 10
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
------------------------------------------
---- [ui] tests/ui/parser/int-literal-too-large-span.rs stdout ----
error: Error: expected failure status (Some(1)) but received status Some(101).
status: exit status: 101
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/parser/int-literal-too-large-span.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/parser/int-literal-too-large-span" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers"
--- stderr -------------------------------
thread 'rustc' panicked at library/core/src/fmt/num.rs:606:13:
assertion failed: n < 10
---
9: <rustc_ast_lowering::LoweringContext>::lower_stmts
10: <rustc_ast_lowering::LoweringContext>::lower_block_expr
11: <rustc_ast_lowering::LoweringContext>::lower_maybe_coroutine_body
12: <rustc_ast_lowering::LoweringContext>::lower_item_kind
13: <rustc_ast_lowering::LoweringContext>::with_hir_id_owner::<<rustc_ast_lowering::item::ItemLowerer>::with_lctx<<rustc_ast_lowering::item::ItemLowerer>::lower_item::{closure#0}>::{closure#0}>
14: <rustc_ast_lowering::item::ItemLowerer>::with_lctx::<<rustc_ast_lowering::item::ItemLowerer>::lower_item::{closure#0}>
15: <rustc_ast_lowering::item::ItemLowerer>::lower_node
16: rustc_ast_lowering::lower_to_hir
[... omitted 3 frames ...]
17: <rustc_middle::hir::provide::{closure#1} as core::ops::function::FnOnce<(rustc_middle::ty::context::TyCtxt, rustc_span::def_id::LocalDefId)>>::call_once
[... omitted 3 frames ...]
18: rustc_middle::query::plumbing::query_get_at::<rustc_data_structures::vec_cache::VecCache<rustc_hir::hir_id::OwnerId, rustc_middle::query::erase::Erased<[u8; 8]>, rustc_query_system::dep_graph::graph::DepNodeIndex>>
19: <rustc_middle::hir::map::Map>::get_module
20: rustc_middle::hir::map::hir_crate_items
[... omitted 3 frames ...]
21: rustc_passes::hir_id_validator::check_crate
22: rustc_interface::passes::analysis
[... omitted 3 frames ...]
23: <std::thread::local::LocalKey<core::cell::Cell<*const ()>>>::with::<rustc_middle::ty::context::tls::enter_context<<rustc_middle::ty::context::GlobalCtxt>::enter<rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}, core::option::Option<rustc_interface::queries::Linker>>::{closure#1}, core::option::Option<rustc_interface::queries::Linker>>::{closure#0}, core::option::Option<rustc_interface::queries::Linker>>
24: <rustc_middle::ty::context::TyCtxt>::create_global_ctxt::<core::option::Option<rustc_interface::queries::Linker>, rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}>
25: <rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2} as core::ops::function::FnOnce<(&rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2})>>::call_once::{shim:vtable#0}
26: <alloc::boxed::Box<dyn for<'a> core::ops::function::FnOnce<(&'a rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &'a std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt<'a>>, &'a rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena<'a>>, &'a rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena<'a>>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}), Output = core::option::Option<rustc_interface::queries::Linker>>> as core::ops::function::FnOnce<(&rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2})>>::call_once
28: <scoped_tls::ScopedKey<rustc_span::SessionGlobals>>::set::<rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}, ()>
29: rustc_span::create_session_globals_then::<(), rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}>
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---
note: please make sure that you have updated to the latest nightly
note: rustc 1.86.0-nightly (be494773a 2025-02-06) running on x86_64-unknown-linux-gnu
note: compiler flags: -Z threads=1 -Z simulate-remapped-rust-src-base=/rustc/FAKE_PREFIX -Z translate-remapped-path-to-local-path=no -Z ignore-directory-in-diagnostics-source-blocks=/cargo -Z ignore-directory-in-diagnostics-source-blocks=/checkout/vendor -C codegen-units=1 -Z ui-testing -Z deduplicate-diagnostics=no -Z write-long-types-to-disk=no -C strip=debuginfo -C prefer-dynamic -C rpath -C debuginfo=0
query stack during panic:
query stack during panic:
#0 [hir_crate] getting the crate HIR
#1 [opt_hir_owner_nodes] getting HIR owner items in ``
#2 [hir_crate_items] getting HIR crate items
end of query stack
------------------------------------------
---- [ui] tests/ui/parser/issues/issue-5544-a.rs stdout ----
error: Error: expected failure status (Some(1)) but received status Some(101).
status: exit status: 101
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/parser/issues/issue-5544-a.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/parser/issues/issue-5544-a" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers"
--- stderr -------------------------------
thread 'rustc' panicked at library/core/src/fmt/num.rs:606:13:
assertion failed: n < 10
---
9: <rustc_ast_lowering::LoweringContext>::lower_stmts
10: <rustc_ast_lowering::LoweringContext>::lower_block_expr
11: <rustc_ast_lowering::LoweringContext>::lower_maybe_coroutine_body
12: <rustc_ast_lowering::LoweringContext>::lower_item_kind
13: <rustc_ast_lowering::LoweringContext>::with_hir_id_owner::<<rustc_ast_lowering::item::ItemLowerer>::with_lctx<<rustc_ast_lowering::item::ItemLowerer>::lower_item::{closure#0}>::{closure#0}>
14: <rustc_ast_lowering::item::ItemLowerer>::with_lctx::<<rustc_ast_lowering::item::ItemLowerer>::lower_item::{closure#0}>
15: <rustc_ast_lowering::item::ItemLowerer>::lower_node
16: rustc_ast_lowering::lower_to_hir
[... omitted 3 frames ...]
17: <rustc_middle::hir::provide::{closure#1} as core::ops::function::FnOnce<(rustc_middle::ty::context::TyCtxt, rustc_span::def_id::LocalDefId)>>::call_once
[... omitted 3 frames ...]
18: rustc_middle::query::plumbing::query_get_at::<rustc_data_structures::vec_cache::VecCache<rustc_hir::hir_id::OwnerId, rustc_middle::query::erase::Erased<[u8; 8]>, rustc_query_system::dep_graph::graph::DepNodeIndex>>
19: <rustc_middle::hir::map::Map>::get_module
20: rustc_middle::hir::map::hir_crate_items
[... omitted 3 frames ...]
21: rustc_passes::hir_id_validator::check_crate
22: rustc_interface::passes::analysis
[... omitted 3 frames ...]
23: <std::thread::local::LocalKey<core::cell::Cell<*const ()>>>::with::<rustc_middle::ty::context::tls::enter_context<<rustc_middle::ty::context::GlobalCtxt>::enter<rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}, core::option::Option<rustc_interface::queries::Linker>>::{closure#1}, core::option::Option<rustc_interface::queries::Linker>>::{closure#0}, core::option::Option<rustc_interface::queries::Linker>>
24: <rustc_middle::ty::context::TyCtxt>::create_global_ctxt::<core::option::Option<rustc_interface::queries::Linker>, rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}>
25: <rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2} as core::ops::function::FnOnce<(&rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2})>>::call_once::{shim:vtable#0}
26: <alloc::boxed::Box<dyn for<'a> core::ops::function::FnOnce<(&'a rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &'a std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt<'a>>, &'a rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena<'a>>, &'a rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena<'a>>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}), Output = core::option::Option<rustc_interface::queries::Linker>>> as core::ops::function::FnOnce<(&rustc_session::session::Session, rustc_middle::ty::context::CurrentGcx, &std::sync::once_lock::OnceLock<rustc_middle::ty::context::GlobalCtxt>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_middle::arena::Arena>, &rustc_data_structures::sync::worker_local::WorkerLocal<rustc_hir::Arena>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2})>>::call_once
28: <scoped_tls::ScopedKey<rustc_span::SessionGlobals>>::set::<rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}, ()>
29: rustc_span::create_session_globals_then::<(), rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}>
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---
note: please make sure that you have updated to the latest nightly
note: rustc 1.86.0-nightly (be494773a 2025-02-06) running on x86_64-unknown-linux-gnu
note: compiler flags: -Z threads=1 -Z simulate-remapped-rust-src-base=/rustc/FAKE_PREFIX -Z translate-remapped-path-to-local-path=no -Z ignore-directory-in-diagnostics-source-blocks=/cargo -Z ignore-directory-in-diagnostics-source-blocks=/checkout/vendor -C codegen-units=1 -Z ui-testing -Z deduplicate-diagnostics=no -Z write-long-types-to-disk=no -C strip=debuginfo -C prefer-dynamic -C rpath -C debuginfo=0
query stack during panic:
query stack during panic:
#0 [hir_crate] getting the crate HIR
#1 [opt_hir_owner_nodes] getting HIR owner items in ``
#2 [hir_crate_items] getting HIR crate items
end of query stack
------------------------------------------
Constant calculation done with https://gist.github.com/pascaldekloe/df103c17ebf01920958053c76505aedf.
I don't have any concerns here but the tests need to be fixed of course :)
@rustbot author
Reminder, once the PR becomes ready for a review, use @rustbot ready.
The job mingw-check failed! Check out the build log: (web) (plain)
Click to see the possible cause of the failure (guessed by this bot)
@rustbot ready
:umbrella: The latest upstream changes (presumably #142133) made this pull request unmergeable. Please resolve the merge conflicts.
@bors try @rust-timer queue
Awaiting bors try build completion.
@rustbot label: +S-waiting-on-perf
:hourglass: Trying commit 0483c93ceb0f0f4a835fbae589a5b714dbabf2bc with merge f791aa5b7459654ec84452793d1bea1ddf0e6b32...
No problem @tgross35. This is no priority patch. Happy with these feedback loops. Getting to learn the language. Local benchmark will follow in an hour or so...
:sunny: Try build successful - checks-actions
Build commit: f791aa5b7459654ec84452793d1bea1ddf0e6b32 (f791aa5b7459654ec84452793d1bea1ddf0e6b32)
Queued f791aa5b7459654ec84452793d1bea1ddf0e6b32 with parent c6a955468b025dbe3d1de3e8f3e30496d1fb7f40, future comparison URL. There is currently 1 preceding artifact in the queue. It will probably take at least ~2.0 hours until the benchmark run finishes.
Finished benchmarking commit (f791aa5b7459654ec84452793d1bea1ddf0e6b32): comparison URL.
Overall result: ✅ improvements - no action needed
Benchmarking this pull request means it may be perf-sensitive – we'll automatically label it not fit for rolling up. You can override this, but we strongly advise not to, due to possible changes in compiler perf.
@bors rollup=never @rustbot label: -S-waiting-on-perf -perf-regression
Instruction count
Our most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.
| mean | range | count | |
|---|---|---|---|
| Regressions ❌ (primary) |
- | - | 0 |
| Regressions ❌ (secondary) |
- | - | 0 |
| Improvements ✅ (primary) |
- | - | 0 |
| Improvements ✅ (secondary) |
-0.4% | [-0.4%, -0.4%] | 1 |
| All ❌✅ (primary) | - | - | 0 |
Max RSS (memory usage)
Results (secondary 0.8%)
A less reliable metric. May be of interest, but not used to determine the overall result above.
| mean | range | count | |
|---|---|---|---|
| Regressions ❌ (primary) |
- | - | 0 |
| Regressions ❌ (secondary) |
8.5% | [8.5%, 8.5%] | 1 |
| Improvements ✅ (primary) |
- | - | 0 |
| Improvements ✅ (secondary) |
-1.8% | [-2.9%, -1.0%] | 3 |
| All ❌✅ (primary) | - | - | 0 |
Cycles
Results (secondary 2.7%)
A less reliable metric. May be of interest, but not used to determine the overall result above.
| mean | range | count | |
|---|---|---|---|
| Regressions ❌ (primary) |
- | - | 0 |
| Regressions ❌ (secondary) |
2.7% | [2.7%, 2.7%] | 1 |
| Improvements ✅ (primary) |
- | - | 0 |
| Improvements ✅ (secondary) |
- | - | 0 |
| All ❌✅ (primary) | - | - | 0 |
Binary size
Results (primary -0.0%)
A less reliable metric. May be of interest, but not used to determine the overall result above.
| mean | range | count | |
|---|---|---|---|
| Regressions ❌ (primary) |
- | - | 0 |
| Regressions ❌ (secondary) |
- | - | 0 |
| Improvements ✅ (primary) |
-0.0% | [-0.0%, -0.0%] | 1 |
| Improvements ✅ (secondary) |
- | - | 0 |
| All ❌✅ (primary) | -0.0% | [-0.0%, -0.0%] | 1 |
Bootstrap: 754.321s -> 755.157s (0.11%) Artifact size: 372.15 MiB -> 372.14 MiB (-0.00%)
One final comment request https://github.com/rust-lang/rust/pull/136594#discussion_r2138998643 and it would be good if you could post benchmarks and/or an asm diff. After that, r=me
The following was measured locally on Apple M1 @tgross35.
Master
fmt::write_u128_max 51.44ns/iter +/- 0.44
fmt::write_u128_min 30.63ns/iter +/- 0.92
fmt::write_u64_max 36.00ns/iter +/- 0.55
fmt::write_u64_min 27.72ns/iter +/- 0.20
fmt::write_u8_max 28.98ns/iter +/- 0.34
fmt::write_u8_min 27.72ns/iter +/- 0.38
Change
fmt::write_u128_max 46.65ns/iter +/- 0.39
fmt::write_u128_min 26.77ns/iter +/- 0.58
fmt::write_u64_max 35.68ns/iter +/- 0.39
fmt::write_u64_min 27.72ns/iter +/- 0.75
fmt::write_u8_max 28.71ns/iter +/- 0.08
fmt::write_u8_min 27.39ns/iter +/- 0.32
Thank you for all the work here!
@bors r+
:pushpin: Commit 042a27174261988cd7e77490aaf450c91da3214e has been approved by tgross35
It is now in the queue for this repository.
:hourglass: Testing commit 042a27174261988cd7e77490aaf450c91da3214e with merge 14346303d760027e53214e705109a62c0f00b214...
:sunny: Test successful - checks-actions Approved by: tgross35 Pushing 14346303d760027e53214e705109a62c0f00b214 to master...
What is this?
This is an experimental post-merge analysis report that shows differences in test outcomes between the merged PR and its parent PR.Comparing 31d0d2123d36de10c2611b842299cce5f447ddf7 (parent) -> 14346303d760027e53214e705109a62c0f00b214 (this PR)
Test differences
Show 5 test diffs
Stage 1
fmt::num::test_format_int: pass -> [missing] (J0)fmt::num::test_format_int_limits: [missing] -> pass (J0)fmt::num::test_format_int_misc: [missing] -> pass (J0)fmt::num::test_format_int_one: [missing] -> pass (J0)fmt::num::test_format_int_twos_complement: pass -> [missing] (J0)
Job group index
- J0: aarch64-apple, aarch64-gnu, arm-android, armhf-gnu, dist-i586-gnu-i586-i686-musl, i686-gnu-1, i686-gnu-nopt-1, i686-msvc-1, mingw-check-2, test-various, x86_64-apple-1, x86_64-gnu, x86_64-gnu-aux, x86_64-gnu-llvm-19-2, x86_64-gnu-llvm-19-3, x86_64-gnu-llvm-20-2, x86_64-gnu-llvm-20-3, x86_64-gnu-nopt, x86_64-gnu-stable, x86_64-mingw-1, x86_64-msvc-1
Test dashboard
Run
cargo run --manifest-path src/ci/citool/Cargo.toml -- \
test-dashboard 14346303d760027e53214e705109a62c0f00b214 --output-dir test-dashboard
And then open test-dashboard/index.html in your browser to see an overview of all executed tests.
Job duration changes
- x86_64-apple-1: 7215.7s -> 9403.1s (30.3%)
- dist-x86_64-apple: 8674.0s -> 10174.7s (17.3%)
- mingw-check-1: 1656.4s -> 1911.2s (15.4%)
- aarch64-apple: 5855.4s -> 5214.8s (-10.9%)
- i686-gnu-1: 7603.4s -> 8357.3s (9.9%)
- x86_64-gnu-llvm-20-1: 3304.6s -> 3627.0s (9.8%)
- i686-gnu-2: 5685.3s -> 6230.8s (9.6%)
- armhf-gnu: 4535.6s -> 4966.5s (9.5%)
- x86_64-rust-for-linux: 2648.9s -> 2853.9s (7.7%)
- x86_64-gnu-debug: 5580.8s -> 5992.3s (7.4%)
How to interpret the job duration changes?
Job durations can vary a lot, based on the actual runner instance that executed the job, system noise, invalidated caches, etc. The table above is provided mostly for t-infra members, for simpler debugging of potential CI slow-downs.
Finished benchmarking commit (14346303d760027e53214e705109a62c0f00b214): comparison URL.
Overall result: ❌ regressions - no action needed
@rustbot label: -perf-regression
Instruction count
Our most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.
| mean | range | count | |
|---|---|---|---|
| Regressions ❌ (primary) |
- | - | 0 |
| Regressions ❌ (secondary) |
0.2% | [0.1%, 0.3%] | 2 |
| Improvements ✅ (primary) |
- | - | 0 |
| Improvements ✅ (secondary) |
- | - | 0 |
| All ❌✅ (primary) | - | - | 0 |
Max RSS (memory usage)
Results (secondary 1.5%)
A less reliable metric. May be of interest, but not used to determine the overall result above.
| mean | range | count | |
|---|---|---|---|
| Regressions ❌ (primary) |
- | - | 0 |
| Regressions ❌ (secondary) |
1.5% | [1.5%, 1.5%] | 1 |
| Improvements ✅ (primary) |
- | - | 0 |
| Improvements ✅ (secondary) |
- | - | 0 |
| All ❌✅ (primary) | - | - | 0 |
Cycles
Results (secondary 6.6%)
A less reliable metric. May be of interest, but not used to determine the overall result above.
| mean | range | count | |
|---|---|---|---|
| Regressions ❌ (primary) |
- | - | 0 |
| Regressions ❌ (secondary) |
6.6% | [6.6%, 6.6%] | 1 |
| Improvements ✅ (primary) |
- | - | 0 |
| Improvements ✅ (secondary) |
- | - | 0 |
| All ❌✅ (primary) | - | - | 0 |
Binary size
Results (primary -0.0%)
A less reliable metric. May be of interest, but not used to determine the overall result above.
| mean | range | count | |
|---|---|---|---|
| Regressions ❌ (primary) |
- | - | 0 |
| Regressions ❌ (secondary) |
- | - | 0 |
| Improvements ✅ (primary) |
-0.0% | [-0.0%, -0.0%] | 1 |
| Improvements ✅ (secondary) |
- | - | 0 |
| All ❌✅ (primary) | -0.0% | [-0.0%, -0.0%] | 1 |
Bootstrap: 754.746s -> 755.927s (0.16%) Artifact size: 372.10 MiB -> 372.13 MiB (0.01%)