From e1fe87c77ca0590c37dac65ba96fb2b7fc4996f4 Mon Sep 17 00:00:00 2001 From: Gianfranco Date: Wed, 31 Jul 2024 04:30:41 -0300 Subject: [PATCH 01/38] restructure imports for update, relevant modifications of chain extensions --- chain-extensions/token/src/lib.rs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/chain-extensions/token/src/lib.rs b/chain-extensions/token/src/lib.rs index 6c4884b43..47f01db6e 100644 --- a/chain-extensions/token/src/lib.rs +++ b/chain-extensions/token/src/lib.rs @@ -157,8 +157,7 @@ where T: SysConfig + orml_tokens::Config + pallet_contracts::Config - + orml_currencies::Config - + pallet_balances::Config + + orml_currencies::Config + orml_currencies_allowance_extension::Config, E: Ext, Tokens: orml_traits::MultiCurrency, From a791b8ed523e75d45904f460e65e783ebee0f00b Mon Sep 17 00:00:00 2001 From: Gianfranco Date: Wed, 7 Aug 2024 07:36:21 -0300 Subject: [PATCH 02/38] WIP fixing std issue --- pallets/orml-currencies-allowance-extension/Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pallets/orml-currencies-allowance-extension/Cargo.toml b/pallets/orml-currencies-allowance-extension/Cargo.toml index 0cd99fc0c..af8f0c562 100644 --- a/pallets/orml-currencies-allowance-extension/Cargo.toml +++ b/pallets/orml-currencies-allowance-extension/Cargo.toml @@ -53,7 +53,7 @@ runtime-benchmarks = [ "frame-benchmarking/runtime-benchmarks", "frame-support/runtime-benchmarks", "frame-system/runtime-benchmarks", - "pallet-balances" + "pallet-balances/runtime-benchmarks" ] try-runtime = [ From 44baf501de35df01e4cdbe4ee40da4088d96586b Mon Sep 17 00:00:00 2001 From: Gianfranco Date: Wed, 7 Aug 2024 11:45:28 -0300 Subject: [PATCH 03/38] modification toml pendulum, orml-currencies, amplitude --- pallets/orml-currencies-allowance-extension/Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pallets/orml-currencies-allowance-extension/Cargo.toml b/pallets/orml-currencies-allowance-extension/Cargo.toml index af8f0c562..0cd99fc0c 100644 --- a/pallets/orml-currencies-allowance-extension/Cargo.toml +++ b/pallets/orml-currencies-allowance-extension/Cargo.toml @@ -53,7 +53,7 @@ runtime-benchmarks = [ "frame-benchmarking/runtime-benchmarks", "frame-support/runtime-benchmarks", "frame-system/runtime-benchmarks", - "pallet-balances/runtime-benchmarks" + "pallet-balances" ] try-runtime = [ From 987bbfc5f00fc5c0e4414b3c33d86bc36049f5eb Mon Sep 17 00:00:00 2001 From: Gianfranco Date: Mon, 19 Aug 2024 05:44:11 -0300 Subject: [PATCH 04/38] adding pallets to sibling chain --- rustc-ice-2024-08-19T08_38_05-26376.txt | 599 ++++++++++++++++++++++++ 1 file changed, 599 insertions(+) create mode 100644 rustc-ice-2024-08-19T08_38_05-26376.txt diff --git a/rustc-ice-2024-08-19T08_38_05-26376.txt b/rustc-ice-2024-08-19T08_38_05-26376.txt new file mode 100644 index 000000000..0c72a91e4 --- /dev/null +++ b/rustc-ice-2024-08-19T08_38_05-26376.txt @@ -0,0 +1,599 @@ +thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: +Box +stack backtrace: + 0: 0x10139b08c - std::backtrace::Backtrace::create::hd742e30c04b0f85c + 1: 0x10aae64a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call + 2: 0x1013b3fc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 + 3: 0x10ab7010c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} + 4: 0x10ab6fd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> + 5: 0x10ec3b920 - std[fab435055a7fab56]::panicking::begin_panic:: + 6: 0x10ab63750 - ::emit_producing_guarantee + 7: 0x10b5efb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} + 8: 0x10b5eeb88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} + 9: 0x10b5eeb54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> + 10: 0x10ecdccdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt + 11: 0x10b552950 - >::fold_ty + 12: 0x10bc3860c - ::ctor_sub_tys + 13: 0x10bc3a178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 14: 0x10bc3a9c8 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 15: 0x10bc3d2ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: + 16: 0x10bc5e7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match + 17: 0x10b6f3cdc - ::analyze_patterns + 18: 0x10b6f40ec - ::check_match + 19: 0x10b6f8434 - ::visit_expr + 20: 0x10b6f8528 - ::visit_expr + 21: 0x10b6f84bc - ::visit_expr + 22: 0x10b6f8528 - ::visit_expr + 23: 0x10b6f2ff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match + 24: 0x10bdd577c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 25: 0x10bf7f3a0 - >::call_once + 26: 0x10bd78810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 27: 0x10be87344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace + 28: 0x10b6ba1cc - rustc_mir_build[b901493b8efe2247]::build::mir_build + 29: 0x10b988444 - rustc_mir_transform[c96d82c34d21a979]::mir_built + 30: 0x10bddb5f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 31: 0x10bf09430 - >::call_once + 32: 0x10bd7fb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 33: 0x10bf75984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace + 34: 0x10b726bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety + 35: 0x10bdd60d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 36: 0x10bf7fbd4 - >::call_once + 37: 0x10bd72ab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 38: 0x10bf4d870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace + 39: 0x10b254478 - ::par_body_owners::::{closure#0} + 40: 0x10b258d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> + 41: 0x10b29cc10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> + 42: 0x10b239354 - rustc_interface[27038c4421a9b2f6]::passes::analysis + 43: 0x10bddb1ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 44: 0x10bf2a1ec - >::call_once + 45: 0x10bcf53d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 46: 0x10bf2a9a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace + 47: 0x10aaf68f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> + 48: 0x10aa9eb44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 49: 0x10aadbf84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 50: 0x10aac483c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> + 51: 0x10aae4b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 52: 0x10aad078c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} + 53: 0x1013bc9fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d + 54: 0x18cdb5f94 - __pthread_joiner_wake + + +rustc version: 1.79.0-nightly (becebb315 2024-04-17) +platform: aarch64-apple-darwin + +query stack during panic: +#0 [check_match] match-checking `sibling::::clone` +#1 [mir_built] building MIR for `sibling::::clone` +#2 [check_unsafety] unsafety-checking `sibling::::clone` +#3 [analysis] running analysis passes on this crate +end of query stack +thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: +Box +stack backtrace: + 0: 0x10139b08c - std::backtrace::Backtrace::create::hd742e30c04b0f85c + 1: 0x10aae64a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call + 2: 0x1013b3fc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 + 3: 0x10ab7010c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} + 4: 0x10ab6fd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> + 5: 0x10ec3b920 - std[fab435055a7fab56]::panicking::begin_panic:: + 6: 0x10ab63750 - ::emit_producing_guarantee + 7: 0x10b5efb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} + 8: 0x10b5eeb88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} + 9: 0x10b5eeb54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> + 10: 0x10ecdccdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt + 11: 0x10b552950 - >::fold_ty + 12: 0x10bc3860c - ::ctor_sub_tys + 13: 0x10bc3a178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 14: 0x10bc3a9c8 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 15: 0x10bc3a9c8 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 16: 0x10bc3d2ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: + 17: 0x10bc5e7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match + 18: 0x10b6f3cdc - ::analyze_patterns + 19: 0x10b6f40ec - ::check_match + 20: 0x10b6f8434 - ::visit_expr + 21: 0x10b6f8528 - ::visit_expr + 22: 0x10b6f84bc - ::visit_expr + 23: 0x10b6f8528 - ::visit_expr + 24: 0x10b6f84bc - ::visit_expr + 25: 0x10b6f8528 - ::visit_expr + 26: 0x10b6f2ff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match + 27: 0x10bdd577c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 28: 0x10bf7f3a0 - >::call_once + 29: 0x10bd78810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 30: 0x10be87344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace + 31: 0x10b6ba1cc - rustc_mir_build[b901493b8efe2247]::build::mir_build + 32: 0x10b988444 - rustc_mir_transform[c96d82c34d21a979]::mir_built + 33: 0x10bddb5f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 34: 0x10bf09430 - >::call_once + 35: 0x10bd7fb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 36: 0x10bf75984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace + 37: 0x10b726bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety + 38: 0x10bdd60d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 39: 0x10bf7fbd4 - >::call_once + 40: 0x10bd72ab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 41: 0x10bf4d870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace + 42: 0x10b254478 - ::par_body_owners::::{closure#0} + 43: 0x10b258d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> + 44: 0x10b29cc10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> + 45: 0x10b239354 - rustc_interface[27038c4421a9b2f6]::passes::analysis + 46: 0x10bddb1ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 47: 0x10bf2a1ec - >::call_once + 48: 0x10bcf53d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 49: 0x10bf2a9a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace + 50: 0x10aaf68f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> + 51: 0x10aa9eb44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 52: 0x10aadbf84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 53: 0x10aac483c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> + 54: 0x10aae4b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 55: 0x10aad078c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} + 56: 0x1013bc9fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d + 57: 0x18cdb5f94 - __pthread_joiner_wake + + +query stack during panic: +#0 [check_match] match-checking `sibling::::eq` +#1 [mir_built] building MIR for `sibling::::eq` +#2 [check_unsafety] unsafety-checking `sibling::::eq` +#3 [analysis] running analysis passes on this crate +end of query stack +thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: +Box +stack backtrace: + 0: 0x10139b08c - std::backtrace::Backtrace::create::hd742e30c04b0f85c + 1: 0x10aae64a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call + 2: 0x1013b3fc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 + 3: 0x10ab7010c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} + 4: 0x10ab6fd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> + 5: 0x10ec3b920 - std[fab435055a7fab56]::panicking::begin_panic:: + 6: 0x10ab63750 - ::emit_producing_guarantee + 7: 0x10b5efb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} + 8: 0x10b5eeb88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} + 9: 0x10b5eeb54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> + 10: 0x10ecdccdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt + 11: 0x10b552950 - >::fold_ty + 12: 0x10bc3860c - ::ctor_sub_tys + 13: 0x10bc3a178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 14: 0x10bc3d2ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: + 15: 0x10bc5e7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match + 16: 0x10b6f3cdc - ::analyze_patterns + 17: 0x10b6f40ec - ::check_match + 18: 0x10b6f8434 - ::visit_expr + 19: 0x10b6f8528 - ::visit_expr + 20: 0x10b6f84bc - ::visit_expr + 21: 0x10b6f8528 - ::visit_expr + 22: 0x10b6f84bc - ::visit_expr + 23: 0x10b6f8528 - ::visit_expr + 24: 0x10b6f2ff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match + 25: 0x10bdd577c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 26: 0x10bf7f3a0 - >::call_once + 27: 0x10bd78810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 28: 0x10be87344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace + 29: 0x10b6ba1cc - rustc_mir_build[b901493b8efe2247]::build::mir_build + 30: 0x10b988444 - rustc_mir_transform[c96d82c34d21a979]::mir_built + 31: 0x10bddb5f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 32: 0x10bf09430 - >::call_once + 33: 0x10bd7fb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 34: 0x10bf75984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace + 35: 0x10b726bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety + 36: 0x10bdd60d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 37: 0x10bf7fbd4 - >::call_once + 38: 0x10bd72ab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 39: 0x10bf4d870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace + 40: 0x10b254478 - ::par_body_owners::::{closure#0} + 41: 0x10b258d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> + 42: 0x10b29cc10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> + 43: 0x10b239354 - rustc_interface[27038c4421a9b2f6]::passes::analysis + 44: 0x10bddb1ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 45: 0x10bf2a1ec - >::call_once + 46: 0x10bcf53d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 47: 0x10bf2a9a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace + 48: 0x10aaf68f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> + 49: 0x10aa9eb44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 50: 0x10aadbf84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 51: 0x10aac483c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> + 52: 0x10aae4b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 53: 0x10aad078c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} + 54: 0x1013bc9fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d + 55: 0x18cdb5f94 - __pthread_joiner_wake + + +query stack during panic: +#0 [check_match] match-checking `sibling::_::::size_hint` +#1 [mir_built] building MIR for `sibling::_::::size_hint` +#2 [check_unsafety] unsafety-checking `sibling::_::::size_hint` +#3 [analysis] running analysis passes on this crate +end of query stack +thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: +Box +stack backtrace: + 0: 0x10139b08c - std::backtrace::Backtrace::create::hd742e30c04b0f85c + 1: 0x10aae64a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call + 2: 0x1013b3fc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 + 3: 0x10ab7010c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} + 4: 0x10ab6fd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> + 5: 0x10ec3b920 - std[fab435055a7fab56]::panicking::begin_panic:: + 6: 0x10ab63750 - ::emit_producing_guarantee + 7: 0x10b5efb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} + 8: 0x10b5eeb88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} + 9: 0x10b5eeb54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> + 10: 0x10ecdccdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt + 11: 0x10b552950 - >::fold_ty + 12: 0x10bc3860c - ::ctor_sub_tys + 13: 0x10bc3a178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 14: 0x10bc3d2ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: + 15: 0x10bc5e7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match + 16: 0x10b6f3cdc - ::analyze_patterns + 17: 0x10b6f40ec - ::check_match + 18: 0x10b6f8434 - ::visit_expr + 19: 0x10b6f8528 - ::visit_expr + 20: 0x10b6f84bc - ::visit_expr + 21: 0x10b6f8528 - ::visit_expr + 22: 0x10b6f2ff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match + 23: 0x10bdd577c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 24: 0x10bf7f3a0 - >::call_once + 25: 0x10bd78810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 26: 0x10be87344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace + 27: 0x10b6ba1cc - rustc_mir_build[b901493b8efe2247]::build::mir_build + 28: 0x10b988444 - rustc_mir_transform[c96d82c34d21a979]::mir_built + 29: 0x10bddb5f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 30: 0x10bf09430 - >::call_once + 31: 0x10bd7fb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 32: 0x10bf75984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace + 33: 0x10b726bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety + 34: 0x10bdd60d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 35: 0x10bf7fbd4 - >::call_once + 36: 0x10bd72ab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 37: 0x10bf4d870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace + 38: 0x10b254478 - ::par_body_owners::::{closure#0} + 39: 0x10b258d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> + 40: 0x10b29cc10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> + 41: 0x10b239354 - rustc_interface[27038c4421a9b2f6]::passes::analysis + 42: 0x10bddb1ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 43: 0x10bf2a1ec - >::call_once + 44: 0x10bcf53d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 45: 0x10bf2a9a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace + 46: 0x10aaf68f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> + 47: 0x10aa9eb44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 48: 0x10aadbf84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 49: 0x10aac483c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> + 50: 0x10aae4b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 51: 0x10aad078c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} + 52: 0x1013bc9fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d + 53: 0x18cdb5f94 - __pthread_joiner_wake + + +query stack during panic: +#0 [check_match] match-checking `sibling::_::::encode_to` +#1 [mir_built] building MIR for `sibling::_::::encode_to` +#2 [check_unsafety] unsafety-checking `sibling::_::::encode_to` +#3 [analysis] running analysis passes on this crate +end of query stack +thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: +Box +stack backtrace: + 0: 0x10139b08c - std::backtrace::Backtrace::create::hd742e30c04b0f85c + 1: 0x10aae64a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call + 2: 0x1013b3fc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 + 3: 0x10ab7010c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} + 4: 0x10ab6fd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> + 5: 0x10ec3b920 - std[fab435055a7fab56]::panicking::begin_panic:: + 6: 0x10ab63750 - ::emit_producing_guarantee + 7: 0x10b5efb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} + 8: 0x10b5eeb88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} + 9: 0x10b5eeb54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> + 10: 0x10ecdccdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt + 11: 0x10b552950 - >::fold_ty + 12: 0x10bc3860c - ::ctor_sub_tys + 13: 0x10bc3a178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 14: 0x10bc3a9c8 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 15: 0x10bc3d2ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: + 16: 0x10bc5e7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match + 17: 0x10b6f3cdc - ::analyze_patterns + 18: 0x10b6f40ec - ::check_match + 19: 0x10b6f8434 - ::visit_expr + 20: 0x10b6f8528 - ::visit_expr + 21: 0x10b6f84bc - ::visit_expr + 22: 0x10b6f8528 - ::visit_expr + 23: 0x10b6f2ff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match + 24: 0x10bdd577c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 25: 0x10bf7f3a0 - >::call_once + 26: 0x10bd78810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 27: 0x10be87344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace + 28: 0x10b6ba1cc - rustc_mir_build[b901493b8efe2247]::build::mir_build + 29: 0x10b988444 - rustc_mir_transform[c96d82c34d21a979]::mir_built + 30: 0x10bddb5f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 31: 0x10bf09430 - >::call_once + 32: 0x10bd7fb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 33: 0x10bf75984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace + 34: 0x10b726bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety + 35: 0x10bdd60d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 36: 0x10bf7fbd4 - >::call_once + 37: 0x10bd72ab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 38: 0x10bf4d870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace + 39: 0x10b254478 - ::par_body_owners::::{closure#0} + 40: 0x10b258d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> + 41: 0x10b29cc10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> + 42: 0x10b239354 - rustc_interface[27038c4421a9b2f6]::passes::analysis + 43: 0x10bddb1ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 44: 0x10bf2a1ec - >::call_once + 45: 0x10bcf53d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 46: 0x10bf2a9a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace + 47: 0x10aaf68f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> + 48: 0x10aa9eb44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 49: 0x10aadbf84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 50: 0x10aac483c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> + 51: 0x10aae4b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 52: 0x10aad078c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} + 53: 0x1013bc9fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d + 54: 0x18cdb5f94 - __pthread_joiner_wake + + +query stack during panic: +#0 [check_match] match-checking `sibling::::fmt` +#1 [mir_built] building MIR for `sibling::::fmt` +#2 [check_unsafety] unsafety-checking `sibling::::fmt` +#3 [analysis] running analysis passes on this crate +end of query stack +thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: +Box +stack backtrace: + 0: 0x10139b08c - std::backtrace::Backtrace::create::hd742e30c04b0f85c + 1: 0x10aae64a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call + 2: 0x1013b3fc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 + 3: 0x10ab7010c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} + 4: 0x10ab6fd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> + 5: 0x10ec3b920 - std[fab435055a7fab56]::panicking::begin_panic:: + 6: 0x10ab63750 - ::emit_producing_guarantee + 7: 0x10b5efb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} + 8: 0x10b5eeb88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} + 9: 0x10b5eeb54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> + 10: 0x10ecdccdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt + 11: 0x10b552950 - >::fold_ty + 12: 0x10bc3860c - ::ctor_sub_tys + 13: 0x10bc3a178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 14: 0x10bc3a9c8 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 15: 0x10bc3d2ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: + 16: 0x10bc5e7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match + 17: 0x10b6f3cdc - ::analyze_patterns + 18: 0x10b6f40ec - ::check_match + 19: 0x10b6f8434 - ::visit_expr + 20: 0x10b6f8528 - ::visit_expr + 21: 0x10b6f84bc - ::visit_expr + 22: 0x10b6f8528 - ::visit_expr + 23: 0x10b6f2ff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match + 24: 0x10bdd577c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 25: 0x10bf7f3a0 - >::call_once + 26: 0x10bd78810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 27: 0x10be87344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace + 28: 0x10b6ba1cc - rustc_mir_build[b901493b8efe2247]::build::mir_build + 29: 0x10b988444 - rustc_mir_transform[c96d82c34d21a979]::mir_built + 30: 0x10bddb5f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 31: 0x10bf09430 - >::call_once + 32: 0x10bd7fb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 33: 0x10bf75984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace + 34: 0x10b726bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety + 35: 0x10bdd60d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 36: 0x10bf7fbd4 - >::call_once + 37: 0x10bd72ab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 38: 0x10bf4d870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace + 39: 0x10b254478 - ::par_body_owners::::{closure#0} + 40: 0x10b258d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> + 41: 0x10b29cc10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> + 42: 0x10b239354 - rustc_interface[27038c4421a9b2f6]::passes::analysis + 43: 0x10bddb1ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 44: 0x10bf2a1ec - >::call_once + 45: 0x10bcf53d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 46: 0x10bf2a9a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace + 47: 0x10aaf68f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> + 48: 0x10aa9eb44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 49: 0x10aadbf84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 50: 0x10aac483c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> + 51: 0x10aae4b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 52: 0x10aad078c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} + 53: 0x1013bc9fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d + 54: 0x18cdb5f94 - __pthread_joiner_wake + + +query stack during panic: +#0 [check_match] match-checking `sibling::::get_dispatch_info` +#1 [mir_built] building MIR for `sibling::::get_dispatch_info` +#2 [check_unsafety] unsafety-checking `sibling::::get_dispatch_info` +#3 [analysis] running analysis passes on this crate +end of query stack +thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: +Box +stack backtrace: + 0: 0x10139b08c - std::backtrace::Backtrace::create::hd742e30c04b0f85c + 1: 0x10aae64a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call + 2: 0x1013b3fc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 + 3: 0x10ab7010c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} + 4: 0x10ab6fd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> + 5: 0x10ec3b920 - std[fab435055a7fab56]::panicking::begin_panic:: + 6: 0x10ab63750 - ::emit_producing_guarantee + 7: 0x10b5efb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} + 8: 0x10b5eeb88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} + 9: 0x10b5eeb54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> + 10: 0x10ecdccdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt + 11: 0x10b552950 - >::fold_ty + 12: 0x10bc3860c - ::ctor_sub_tys + 13: 0x10bc3a178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 14: 0x10bc3a9c8 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 15: 0x10bc3d2ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: + 16: 0x10bc5e7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match + 17: 0x10b6f3cdc - ::analyze_patterns + 18: 0x10b6f40ec - ::check_match + 19: 0x10b6f8434 - ::visit_expr + 20: 0x10b6f8528 - ::visit_expr + 21: 0x10b6f84bc - ::visit_expr + 22: 0x10b6f8528 - ::visit_expr + 23: 0x10b6f2ff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match + 24: 0x10bdd577c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 25: 0x10bf7f3a0 - >::call_once + 26: 0x10bd78810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 27: 0x10be87344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace + 28: 0x10b6ba1cc - rustc_mir_build[b901493b8efe2247]::build::mir_build + 29: 0x10b988444 - rustc_mir_transform[c96d82c34d21a979]::mir_built + 30: 0x10bddb5f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 31: 0x10bf09430 - >::call_once + 32: 0x10bd7fb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 33: 0x10bf75984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace + 34: 0x10b726bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety + 35: 0x10bdd60d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 36: 0x10bf7fbd4 - >::call_once + 37: 0x10bd72ab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 38: 0x10bf4d870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace + 39: 0x10b254478 - ::par_body_owners::::{closure#0} + 40: 0x10b258d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> + 41: 0x10b29cc10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> + 42: 0x10b239354 - rustc_interface[27038c4421a9b2f6]::passes::analysis + 43: 0x10bddb1ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 44: 0x10bf2a1ec - >::call_once + 45: 0x10bcf53d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 46: 0x10bf2a9a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace + 47: 0x10aaf68f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> + 48: 0x10aa9eb44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 49: 0x10aadbf84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 50: 0x10aac483c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> + 51: 0x10aae4b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 52: 0x10aad078c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} + 53: 0x1013bc9fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d + 54: 0x18cdb5f94 - __pthread_joiner_wake + + +query stack during panic: +#0 [check_match] match-checking `sibling::::get_call_metadata` +#1 [mir_built] building MIR for `sibling::::get_call_metadata` +#2 [check_unsafety] unsafety-checking `sibling::::get_call_metadata` +#3 [analysis] running analysis passes on this crate +end of query stack +thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: +Box +stack backtrace: + 0: 0x10139b08c - std::backtrace::Backtrace::create::hd742e30c04b0f85c + 1: 0x10aae64a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call + 2: 0x1013b3fc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 + 3: 0x10ab7010c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} + 4: 0x10ab6fd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> + 5: 0x10ec3b920 - std[fab435055a7fab56]::panicking::begin_panic:: + 6: 0x10ab63750 - ::emit_producing_guarantee + 7: 0x10b5efb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} + 8: 0x10b5eeb88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} + 9: 0x10b5eeb54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> + 10: 0x10ecdccdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt + 11: 0x10b552950 - >::fold_ty + 12: 0x10bc3860c - ::ctor_sub_tys + 13: 0x10bc3a178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 14: 0x10bc3d2ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: + 15: 0x10bc5e7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match + 16: 0x10b6f3cdc - ::analyze_patterns + 17: 0x10b6f40ec - ::check_match + 18: 0x10b6f8434 - ::visit_expr + 19: 0x10b6f8528 - ::visit_expr + 20: 0x10b6f84bc - ::visit_expr + 21: 0x10b6f8528 - ::visit_expr + 22: 0x10b6f2ff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match + 23: 0x10bdd577c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 24: 0x10bf7f3a0 - >::call_once + 25: 0x10bd78810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 26: 0x10be87344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace + 27: 0x10b6ba1cc - rustc_mir_build[b901493b8efe2247]::build::mir_build + 28: 0x10b988444 - rustc_mir_transform[c96d82c34d21a979]::mir_built + 29: 0x10bddb5f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 30: 0x10bf09430 - >::call_once + 31: 0x10bd7fb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 32: 0x10bf75984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace + 33: 0x10b726bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety + 34: 0x10bdd60d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 35: 0x10bf7fbd4 - >::call_once + 36: 0x10bd72ab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 37: 0x10bf4d870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace + 38: 0x10b254478 - ::par_body_owners::::{closure#0} + 39: 0x10b258d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> + 40: 0x10b29cc10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> + 41: 0x10b239354 - rustc_interface[27038c4421a9b2f6]::passes::analysis + 42: 0x10bddb1ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 43: 0x10bf2a1ec - >::call_once + 44: 0x10bcf53d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 45: 0x10bf2a9a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace + 46: 0x10aaf68f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> + 47: 0x10aa9eb44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 48: 0x10aadbf84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 49: 0x10aac483c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> + 50: 0x10aae4b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 51: 0x10aad078c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} + 52: 0x1013bc9fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d + 53: 0x18cdb5f94 - __pthread_joiner_wake + + +query stack during panic: +#0 [check_match] match-checking `sibling::::dispatch_bypass_filter` +#1 [mir_built] building MIR for `sibling::::dispatch_bypass_filter` +#2 [check_unsafety] unsafety-checking `sibling::::dispatch_bypass_filter` +#3 [analysis] running analysis passes on this crate +end of query stack +thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: +Box +stack backtrace: + 0: 0x10139b08c - std::backtrace::Backtrace::create::hd742e30c04b0f85c + 1: 0x10aae64a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call + 2: 0x1013b3fc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 + 3: 0x10ab7010c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} + 4: 0x10ab6fd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> + 5: 0x10ec3b920 - std[fab435055a7fab56]::panicking::begin_panic:: + 6: 0x10ab63750 - ::emit_producing_guarantee + 7: 0x10b5efb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} + 8: 0x10b5eeb88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} + 9: 0x10b5eeb54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> + 10: 0x10ecdccdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt + 11: 0x10b552950 - >::fold_ty + 12: 0x10bc3860c - ::ctor_sub_tys + 13: 0x10bc3a178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 14: 0x10bc3a9c8 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 15: 0x10bc3d2ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: + 16: 0x10bc5e7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match + 17: 0x10b6f3cdc - ::analyze_patterns + 18: 0x10b6f40ec - ::check_match + 19: 0x10b6f8434 - ::visit_expr + 20: 0x10b6f8528 - ::visit_expr + 21: 0x10b6f84bc - ::visit_expr + 22: 0x10b6f8528 - ::visit_expr + 23: 0x10b6f2ff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match + 24: 0x10bdd577c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 25: 0x10bf7f3a0 - >::call_once + 26: 0x10bd78810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 27: 0x10be87344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace + 28: 0x10b6ba1cc - rustc_mir_build[b901493b8efe2247]::build::mir_build + 29: 0x10b988444 - rustc_mir_transform[c96d82c34d21a979]::mir_built + 30: 0x10bddb5f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 31: 0x10bf09430 - >::call_once + 32: 0x10bd7fb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 33: 0x10bf75984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace + 34: 0x10b726bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety + 35: 0x10bdd60d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 36: 0x10bf7fbd4 - >::call_once + 37: 0x10bd72ab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 38: 0x10bf4d870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace + 39: 0x10b254478 - ::par_body_owners::::{closure#0} + 40: 0x10b258d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> + 41: 0x10b29cc10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> + 42: 0x10b239354 - rustc_interface[27038c4421a9b2f6]::passes::analysis + 43: 0x10bddb1ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 44: 0x10bf2a1ec - >::call_once + 45: 0x10bcf53d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 46: 0x10bf2a9a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace + 47: 0x10aaf68f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> + 48: 0x10aa9eb44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 49: 0x10aadbf84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 50: 0x10aac483c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> + 51: 0x10aae4b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 52: 0x10aad078c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} + 53: 0x1013bc9fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d + 54: 0x18cdb5f94 - __pthread_joiner_wake + + +query stack during panic: +#0 [check_match] match-checking `sibling::::is_sub_type` +#1 [mir_built] building MIR for `sibling::::is_sub_type` +#2 [check_unsafety] unsafety-checking `sibling::::is_sub_type` +#3 [analysis] running analysis passes on this crate +end of query stack From 66aeaf2c1e5c5a4b7e05f2a4b949d8a85def76ff Mon Sep 17 00:00:00 2001 From: Gianfranco Date: Mon, 19 Aug 2024 09:48:18 -0300 Subject: [PATCH 05/38] compile sibling tests with emulator macros, fixing tests --- rustc-ice-2024-08-19T09_56_32-34759.txt | 599 ++++++++++++++++++++++++ rustc-ice-2024-08-19T10_33_10-40406.txt | 599 ++++++++++++++++++++++++ 2 files changed, 1198 insertions(+) create mode 100644 rustc-ice-2024-08-19T09_56_32-34759.txt create mode 100644 rustc-ice-2024-08-19T10_33_10-40406.txt diff --git a/rustc-ice-2024-08-19T09_56_32-34759.txt b/rustc-ice-2024-08-19T09_56_32-34759.txt new file mode 100644 index 000000000..e587ff69b --- /dev/null +++ b/rustc-ice-2024-08-19T09_56_32-34759.txt @@ -0,0 +1,599 @@ +thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: +Box +stack backtrace: + 0: 0x103dd708c - std::backtrace::Backtrace::create::hd742e30c04b0f85c + 1: 0x10d5224a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call + 2: 0x103deffc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 + 3: 0x10d5ac10c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} + 4: 0x10d5abd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> + 5: 0x111677920 - std[fab435055a7fab56]::panicking::begin_panic:: + 6: 0x10d59f750 - ::emit_producing_guarantee + 7: 0x10e02bb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} + 8: 0x10e02ab88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} + 9: 0x10e02ab54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> + 10: 0x111718cdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt + 11: 0x10df8e950 - >::fold_ty + 12: 0x10e67460c - ::ctor_sub_tys + 13: 0x10e676178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 14: 0x10e6769c8 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 15: 0x10e6792ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: + 16: 0x10e69a7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match + 17: 0x10e12fcdc - ::analyze_patterns + 18: 0x10e1300ec - ::check_match + 19: 0x10e134434 - ::visit_expr + 20: 0x10e134528 - ::visit_expr + 21: 0x10e1344bc - ::visit_expr + 22: 0x10e134528 - ::visit_expr + 23: 0x10e12eff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match + 24: 0x10e81177c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 25: 0x10e9bb3a0 - >::call_once + 26: 0x10e7b4810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 27: 0x10e8c3344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace + 28: 0x10e0f61cc - rustc_mir_build[b901493b8efe2247]::build::mir_build + 29: 0x10e3c4444 - rustc_mir_transform[c96d82c34d21a979]::mir_built + 30: 0x10e8175f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 31: 0x10e945430 - >::call_once + 32: 0x10e7bbb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 33: 0x10e9b1984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace + 34: 0x10e162bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety + 35: 0x10e8120d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 36: 0x10e9bbbd4 - >::call_once + 37: 0x10e7aeab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 38: 0x10e989870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace + 39: 0x10dc90478 - ::par_body_owners::::{closure#0} + 40: 0x10dc94d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> + 41: 0x10dcd8c10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> + 42: 0x10dc75354 - rustc_interface[27038c4421a9b2f6]::passes::analysis + 43: 0x10e8171ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 44: 0x10e9661ec - >::call_once + 45: 0x10e7313d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 46: 0x10e9669a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace + 47: 0x10d5328f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> + 48: 0x10d4dab44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 49: 0x10d517f84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 50: 0x10d50083c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> + 51: 0x10d520b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 52: 0x10d50c78c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} + 53: 0x103df89fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d + 54: 0x18cdb5f94 - __pthread_joiner_wake + + +rustc version: 1.79.0-nightly (becebb315 2024-04-17) +platform: aarch64-apple-darwin + +query stack during panic: +#0 [check_match] match-checking `sibling::::clone` +#1 [mir_built] building MIR for `sibling::::clone` +#2 [check_unsafety] unsafety-checking `sibling::::clone` +#3 [analysis] running analysis passes on this crate +end of query stack +thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: +Box +stack backtrace: + 0: 0x103dd708c - std::backtrace::Backtrace::create::hd742e30c04b0f85c + 1: 0x10d5224a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call + 2: 0x103deffc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 + 3: 0x10d5ac10c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} + 4: 0x10d5abd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> + 5: 0x111677920 - std[fab435055a7fab56]::panicking::begin_panic:: + 6: 0x10d59f750 - ::emit_producing_guarantee + 7: 0x10e02bb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} + 8: 0x10e02ab88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} + 9: 0x10e02ab54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> + 10: 0x111718cdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt + 11: 0x10df8e950 - >::fold_ty + 12: 0x10e67460c - ::ctor_sub_tys + 13: 0x10e676178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 14: 0x10e6769c8 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 15: 0x10e6769c8 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 16: 0x10e6792ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: + 17: 0x10e69a7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match + 18: 0x10e12fcdc - ::analyze_patterns + 19: 0x10e1300ec - ::check_match + 20: 0x10e134434 - ::visit_expr + 21: 0x10e134528 - ::visit_expr + 22: 0x10e1344bc - ::visit_expr + 23: 0x10e134528 - ::visit_expr + 24: 0x10e1344bc - ::visit_expr + 25: 0x10e134528 - ::visit_expr + 26: 0x10e12eff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match + 27: 0x10e81177c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 28: 0x10e9bb3a0 - >::call_once + 29: 0x10e7b4810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 30: 0x10e8c3344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace + 31: 0x10e0f61cc - rustc_mir_build[b901493b8efe2247]::build::mir_build + 32: 0x10e3c4444 - rustc_mir_transform[c96d82c34d21a979]::mir_built + 33: 0x10e8175f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 34: 0x10e945430 - >::call_once + 35: 0x10e7bbb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 36: 0x10e9b1984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace + 37: 0x10e162bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety + 38: 0x10e8120d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 39: 0x10e9bbbd4 - >::call_once + 40: 0x10e7aeab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 41: 0x10e989870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace + 42: 0x10dc90478 - ::par_body_owners::::{closure#0} + 43: 0x10dc94d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> + 44: 0x10dcd8c10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> + 45: 0x10dc75354 - rustc_interface[27038c4421a9b2f6]::passes::analysis + 46: 0x10e8171ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 47: 0x10e9661ec - >::call_once + 48: 0x10e7313d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 49: 0x10e9669a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace + 50: 0x10d5328f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> + 51: 0x10d4dab44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 52: 0x10d517f84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 53: 0x10d50083c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> + 54: 0x10d520b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 55: 0x10d50c78c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} + 56: 0x103df89fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d + 57: 0x18cdb5f94 - __pthread_joiner_wake + + +query stack during panic: +#0 [check_match] match-checking `sibling::::eq` +#1 [mir_built] building MIR for `sibling::::eq` +#2 [check_unsafety] unsafety-checking `sibling::::eq` +#3 [analysis] running analysis passes on this crate +end of query stack +thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: +Box +stack backtrace: + 0: 0x103dd708c - std::backtrace::Backtrace::create::hd742e30c04b0f85c + 1: 0x10d5224a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call + 2: 0x103deffc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 + 3: 0x10d5ac10c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} + 4: 0x10d5abd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> + 5: 0x111677920 - std[fab435055a7fab56]::panicking::begin_panic:: + 6: 0x10d59f750 - ::emit_producing_guarantee + 7: 0x10e02bb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} + 8: 0x10e02ab88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} + 9: 0x10e02ab54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> + 10: 0x111718cdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt + 11: 0x10df8e950 - >::fold_ty + 12: 0x10e67460c - ::ctor_sub_tys + 13: 0x10e676178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 14: 0x10e6792ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: + 15: 0x10e69a7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match + 16: 0x10e12fcdc - ::analyze_patterns + 17: 0x10e1300ec - ::check_match + 18: 0x10e134434 - ::visit_expr + 19: 0x10e134528 - ::visit_expr + 20: 0x10e1344bc - ::visit_expr + 21: 0x10e134528 - ::visit_expr + 22: 0x10e1344bc - ::visit_expr + 23: 0x10e134528 - ::visit_expr + 24: 0x10e12eff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match + 25: 0x10e81177c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 26: 0x10e9bb3a0 - >::call_once + 27: 0x10e7b4810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 28: 0x10e8c3344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace + 29: 0x10e0f61cc - rustc_mir_build[b901493b8efe2247]::build::mir_build + 30: 0x10e3c4444 - rustc_mir_transform[c96d82c34d21a979]::mir_built + 31: 0x10e8175f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 32: 0x10e945430 - >::call_once + 33: 0x10e7bbb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 34: 0x10e9b1984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace + 35: 0x10e162bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety + 36: 0x10e8120d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 37: 0x10e9bbbd4 - >::call_once + 38: 0x10e7aeab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 39: 0x10e989870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace + 40: 0x10dc90478 - ::par_body_owners::::{closure#0} + 41: 0x10dc94d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> + 42: 0x10dcd8c10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> + 43: 0x10dc75354 - rustc_interface[27038c4421a9b2f6]::passes::analysis + 44: 0x10e8171ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 45: 0x10e9661ec - >::call_once + 46: 0x10e7313d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 47: 0x10e9669a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace + 48: 0x10d5328f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> + 49: 0x10d4dab44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 50: 0x10d517f84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 51: 0x10d50083c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> + 52: 0x10d520b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 53: 0x10d50c78c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} + 54: 0x103df89fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d + 55: 0x18cdb5f94 - __pthread_joiner_wake + + +query stack during panic: +#0 [check_match] match-checking `sibling::_::::size_hint` +#1 [mir_built] building MIR for `sibling::_::::size_hint` +#2 [check_unsafety] unsafety-checking `sibling::_::::size_hint` +#3 [analysis] running analysis passes on this crate +end of query stack +thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: +Box +stack backtrace: + 0: 0x103dd708c - std::backtrace::Backtrace::create::hd742e30c04b0f85c + 1: 0x10d5224a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call + 2: 0x103deffc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 + 3: 0x10d5ac10c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} + 4: 0x10d5abd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> + 5: 0x111677920 - std[fab435055a7fab56]::panicking::begin_panic:: + 6: 0x10d59f750 - ::emit_producing_guarantee + 7: 0x10e02bb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} + 8: 0x10e02ab88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} + 9: 0x10e02ab54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> + 10: 0x111718cdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt + 11: 0x10df8e950 - >::fold_ty + 12: 0x10e67460c - ::ctor_sub_tys + 13: 0x10e676178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 14: 0x10e6792ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: + 15: 0x10e69a7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match + 16: 0x10e12fcdc - ::analyze_patterns + 17: 0x10e1300ec - ::check_match + 18: 0x10e134434 - ::visit_expr + 19: 0x10e134528 - ::visit_expr + 20: 0x10e1344bc - ::visit_expr + 21: 0x10e134528 - ::visit_expr + 22: 0x10e12eff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match + 23: 0x10e81177c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 24: 0x10e9bb3a0 - >::call_once + 25: 0x10e7b4810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 26: 0x10e8c3344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace + 27: 0x10e0f61cc - rustc_mir_build[b901493b8efe2247]::build::mir_build + 28: 0x10e3c4444 - rustc_mir_transform[c96d82c34d21a979]::mir_built + 29: 0x10e8175f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 30: 0x10e945430 - >::call_once + 31: 0x10e7bbb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 32: 0x10e9b1984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace + 33: 0x10e162bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety + 34: 0x10e8120d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 35: 0x10e9bbbd4 - >::call_once + 36: 0x10e7aeab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 37: 0x10e989870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace + 38: 0x10dc90478 - ::par_body_owners::::{closure#0} + 39: 0x10dc94d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> + 40: 0x10dcd8c10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> + 41: 0x10dc75354 - rustc_interface[27038c4421a9b2f6]::passes::analysis + 42: 0x10e8171ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 43: 0x10e9661ec - >::call_once + 44: 0x10e7313d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 45: 0x10e9669a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace + 46: 0x10d5328f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> + 47: 0x10d4dab44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 48: 0x10d517f84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 49: 0x10d50083c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> + 50: 0x10d520b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 51: 0x10d50c78c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} + 52: 0x103df89fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d + 53: 0x18cdb5f94 - __pthread_joiner_wake + + +query stack during panic: +#0 [check_match] match-checking `sibling::_::::encode_to` +#1 [mir_built] building MIR for `sibling::_::::encode_to` +#2 [check_unsafety] unsafety-checking `sibling::_::::encode_to` +#3 [analysis] running analysis passes on this crate +end of query stack +thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: +Box +stack backtrace: + 0: 0x103dd708c - std::backtrace::Backtrace::create::hd742e30c04b0f85c + 1: 0x10d5224a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call + 2: 0x103deffc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 + 3: 0x10d5ac10c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} + 4: 0x10d5abd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> + 5: 0x111677920 - std[fab435055a7fab56]::panicking::begin_panic:: + 6: 0x10d59f750 - ::emit_producing_guarantee + 7: 0x10e02bb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} + 8: 0x10e02ab88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} + 9: 0x10e02ab54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> + 10: 0x111718cdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt + 11: 0x10df8e950 - >::fold_ty + 12: 0x10e67460c - ::ctor_sub_tys + 13: 0x10e676178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 14: 0x10e6769c8 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 15: 0x10e6792ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: + 16: 0x10e69a7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match + 17: 0x10e12fcdc - ::analyze_patterns + 18: 0x10e1300ec - ::check_match + 19: 0x10e134434 - ::visit_expr + 20: 0x10e134528 - ::visit_expr + 21: 0x10e1344bc - ::visit_expr + 22: 0x10e134528 - ::visit_expr + 23: 0x10e12eff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match + 24: 0x10e81177c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 25: 0x10e9bb3a0 - >::call_once + 26: 0x10e7b4810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 27: 0x10e8c3344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace + 28: 0x10e0f61cc - rustc_mir_build[b901493b8efe2247]::build::mir_build + 29: 0x10e3c4444 - rustc_mir_transform[c96d82c34d21a979]::mir_built + 30: 0x10e8175f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 31: 0x10e945430 - >::call_once + 32: 0x10e7bbb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 33: 0x10e9b1984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace + 34: 0x10e162bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety + 35: 0x10e8120d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 36: 0x10e9bbbd4 - >::call_once + 37: 0x10e7aeab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 38: 0x10e989870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace + 39: 0x10dc90478 - ::par_body_owners::::{closure#0} + 40: 0x10dc94d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> + 41: 0x10dcd8c10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> + 42: 0x10dc75354 - rustc_interface[27038c4421a9b2f6]::passes::analysis + 43: 0x10e8171ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 44: 0x10e9661ec - >::call_once + 45: 0x10e7313d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 46: 0x10e9669a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace + 47: 0x10d5328f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> + 48: 0x10d4dab44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 49: 0x10d517f84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 50: 0x10d50083c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> + 51: 0x10d520b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 52: 0x10d50c78c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} + 53: 0x103df89fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d + 54: 0x18cdb5f94 - __pthread_joiner_wake + + +query stack during panic: +#0 [check_match] match-checking `sibling::::fmt` +#1 [mir_built] building MIR for `sibling::::fmt` +#2 [check_unsafety] unsafety-checking `sibling::::fmt` +#3 [analysis] running analysis passes on this crate +end of query stack +thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: +Box +stack backtrace: + 0: 0x103dd708c - std::backtrace::Backtrace::create::hd742e30c04b0f85c + 1: 0x10d5224a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call + 2: 0x103deffc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 + 3: 0x10d5ac10c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} + 4: 0x10d5abd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> + 5: 0x111677920 - std[fab435055a7fab56]::panicking::begin_panic:: + 6: 0x10d59f750 - ::emit_producing_guarantee + 7: 0x10e02bb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} + 8: 0x10e02ab88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} + 9: 0x10e02ab54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> + 10: 0x111718cdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt + 11: 0x10df8e950 - >::fold_ty + 12: 0x10e67460c - ::ctor_sub_tys + 13: 0x10e676178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 14: 0x10e6769c8 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 15: 0x10e6792ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: + 16: 0x10e69a7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match + 17: 0x10e12fcdc - ::analyze_patterns + 18: 0x10e1300ec - ::check_match + 19: 0x10e134434 - ::visit_expr + 20: 0x10e134528 - ::visit_expr + 21: 0x10e1344bc - ::visit_expr + 22: 0x10e134528 - ::visit_expr + 23: 0x10e12eff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match + 24: 0x10e81177c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 25: 0x10e9bb3a0 - >::call_once + 26: 0x10e7b4810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 27: 0x10e8c3344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace + 28: 0x10e0f61cc - rustc_mir_build[b901493b8efe2247]::build::mir_build + 29: 0x10e3c4444 - rustc_mir_transform[c96d82c34d21a979]::mir_built + 30: 0x10e8175f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 31: 0x10e945430 - >::call_once + 32: 0x10e7bbb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 33: 0x10e9b1984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace + 34: 0x10e162bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety + 35: 0x10e8120d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 36: 0x10e9bbbd4 - >::call_once + 37: 0x10e7aeab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 38: 0x10e989870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace + 39: 0x10dc90478 - ::par_body_owners::::{closure#0} + 40: 0x10dc94d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> + 41: 0x10dcd8c10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> + 42: 0x10dc75354 - rustc_interface[27038c4421a9b2f6]::passes::analysis + 43: 0x10e8171ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 44: 0x10e9661ec - >::call_once + 45: 0x10e7313d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 46: 0x10e9669a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace + 47: 0x10d5328f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> + 48: 0x10d4dab44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 49: 0x10d517f84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 50: 0x10d50083c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> + 51: 0x10d520b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 52: 0x10d50c78c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} + 53: 0x103df89fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d + 54: 0x18cdb5f94 - __pthread_joiner_wake + + +query stack during panic: +#0 [check_match] match-checking `sibling::::get_dispatch_info` +#1 [mir_built] building MIR for `sibling::::get_dispatch_info` +#2 [check_unsafety] unsafety-checking `sibling::::get_dispatch_info` +#3 [analysis] running analysis passes on this crate +end of query stack +thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: +Box +stack backtrace: + 0: 0x103dd708c - std::backtrace::Backtrace::create::hd742e30c04b0f85c + 1: 0x10d5224a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call + 2: 0x103deffc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 + 3: 0x10d5ac10c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} + 4: 0x10d5abd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> + 5: 0x111677920 - std[fab435055a7fab56]::panicking::begin_panic:: + 6: 0x10d59f750 - ::emit_producing_guarantee + 7: 0x10e02bb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} + 8: 0x10e02ab88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} + 9: 0x10e02ab54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> + 10: 0x111718cdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt + 11: 0x10df8e950 - >::fold_ty + 12: 0x10e67460c - ::ctor_sub_tys + 13: 0x10e676178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 14: 0x10e6769c8 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 15: 0x10e6792ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: + 16: 0x10e69a7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match + 17: 0x10e12fcdc - ::analyze_patterns + 18: 0x10e1300ec - ::check_match + 19: 0x10e134434 - ::visit_expr + 20: 0x10e134528 - ::visit_expr + 21: 0x10e1344bc - ::visit_expr + 22: 0x10e134528 - ::visit_expr + 23: 0x10e12eff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match + 24: 0x10e81177c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 25: 0x10e9bb3a0 - >::call_once + 26: 0x10e7b4810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 27: 0x10e8c3344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace + 28: 0x10e0f61cc - rustc_mir_build[b901493b8efe2247]::build::mir_build + 29: 0x10e3c4444 - rustc_mir_transform[c96d82c34d21a979]::mir_built + 30: 0x10e8175f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 31: 0x10e945430 - >::call_once + 32: 0x10e7bbb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 33: 0x10e9b1984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace + 34: 0x10e162bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety + 35: 0x10e8120d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 36: 0x10e9bbbd4 - >::call_once + 37: 0x10e7aeab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 38: 0x10e989870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace + 39: 0x10dc90478 - ::par_body_owners::::{closure#0} + 40: 0x10dc94d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> + 41: 0x10dcd8c10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> + 42: 0x10dc75354 - rustc_interface[27038c4421a9b2f6]::passes::analysis + 43: 0x10e8171ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 44: 0x10e9661ec - >::call_once + 45: 0x10e7313d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 46: 0x10e9669a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace + 47: 0x10d5328f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> + 48: 0x10d4dab44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 49: 0x10d517f84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 50: 0x10d50083c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> + 51: 0x10d520b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 52: 0x10d50c78c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} + 53: 0x103df89fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d + 54: 0x18cdb5f94 - __pthread_joiner_wake + + +query stack during panic: +#0 [check_match] match-checking `sibling::::get_call_metadata` +#1 [mir_built] building MIR for `sibling::::get_call_metadata` +#2 [check_unsafety] unsafety-checking `sibling::::get_call_metadata` +#3 [analysis] running analysis passes on this crate +end of query stack +thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: +Box +stack backtrace: + 0: 0x103dd708c - std::backtrace::Backtrace::create::hd742e30c04b0f85c + 1: 0x10d5224a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call + 2: 0x103deffc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 + 3: 0x10d5ac10c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} + 4: 0x10d5abd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> + 5: 0x111677920 - std[fab435055a7fab56]::panicking::begin_panic:: + 6: 0x10d59f750 - ::emit_producing_guarantee + 7: 0x10e02bb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} + 8: 0x10e02ab88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} + 9: 0x10e02ab54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> + 10: 0x111718cdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt + 11: 0x10df8e950 - >::fold_ty + 12: 0x10e67460c - ::ctor_sub_tys + 13: 0x10e676178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 14: 0x10e6792ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: + 15: 0x10e69a7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match + 16: 0x10e12fcdc - ::analyze_patterns + 17: 0x10e1300ec - ::check_match + 18: 0x10e134434 - ::visit_expr + 19: 0x10e134528 - ::visit_expr + 20: 0x10e1344bc - ::visit_expr + 21: 0x10e134528 - ::visit_expr + 22: 0x10e12eff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match + 23: 0x10e81177c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 24: 0x10e9bb3a0 - >::call_once + 25: 0x10e7b4810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 26: 0x10e8c3344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace + 27: 0x10e0f61cc - rustc_mir_build[b901493b8efe2247]::build::mir_build + 28: 0x10e3c4444 - rustc_mir_transform[c96d82c34d21a979]::mir_built + 29: 0x10e8175f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 30: 0x10e945430 - >::call_once + 31: 0x10e7bbb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 32: 0x10e9b1984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace + 33: 0x10e162bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety + 34: 0x10e8120d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 35: 0x10e9bbbd4 - >::call_once + 36: 0x10e7aeab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 37: 0x10e989870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace + 38: 0x10dc90478 - ::par_body_owners::::{closure#0} + 39: 0x10dc94d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> + 40: 0x10dcd8c10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> + 41: 0x10dc75354 - rustc_interface[27038c4421a9b2f6]::passes::analysis + 42: 0x10e8171ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 43: 0x10e9661ec - >::call_once + 44: 0x10e7313d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 45: 0x10e9669a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace + 46: 0x10d5328f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> + 47: 0x10d4dab44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 48: 0x10d517f84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 49: 0x10d50083c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> + 50: 0x10d520b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 51: 0x10d50c78c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} + 52: 0x103df89fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d + 53: 0x18cdb5f94 - __pthread_joiner_wake + + +query stack during panic: +#0 [check_match] match-checking `sibling::::dispatch_bypass_filter` +#1 [mir_built] building MIR for `sibling::::dispatch_bypass_filter` +#2 [check_unsafety] unsafety-checking `sibling::::dispatch_bypass_filter` +#3 [analysis] running analysis passes on this crate +end of query stack +thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: +Box +stack backtrace: + 0: 0x103dd708c - std::backtrace::Backtrace::create::hd742e30c04b0f85c + 1: 0x10d5224a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call + 2: 0x103deffc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 + 3: 0x10d5ac10c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} + 4: 0x10d5abd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> + 5: 0x111677920 - std[fab435055a7fab56]::panicking::begin_panic:: + 6: 0x10d59f750 - ::emit_producing_guarantee + 7: 0x10e02bb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} + 8: 0x10e02ab88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} + 9: 0x10e02ab54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> + 10: 0x111718cdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt + 11: 0x10df8e950 - >::fold_ty + 12: 0x10e67460c - ::ctor_sub_tys + 13: 0x10e676178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 14: 0x10e6769c8 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 15: 0x10e6792ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: + 16: 0x10e69a7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match + 17: 0x10e12fcdc - ::analyze_patterns + 18: 0x10e1300ec - ::check_match + 19: 0x10e134434 - ::visit_expr + 20: 0x10e134528 - ::visit_expr + 21: 0x10e1344bc - ::visit_expr + 22: 0x10e134528 - ::visit_expr + 23: 0x10e12eff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match + 24: 0x10e81177c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 25: 0x10e9bb3a0 - >::call_once + 26: 0x10e7b4810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 27: 0x10e8c3344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace + 28: 0x10e0f61cc - rustc_mir_build[b901493b8efe2247]::build::mir_build + 29: 0x10e3c4444 - rustc_mir_transform[c96d82c34d21a979]::mir_built + 30: 0x10e8175f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 31: 0x10e945430 - >::call_once + 32: 0x10e7bbb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 33: 0x10e9b1984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace + 34: 0x10e162bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety + 35: 0x10e8120d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 36: 0x10e9bbbd4 - >::call_once + 37: 0x10e7aeab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 38: 0x10e989870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace + 39: 0x10dc90478 - ::par_body_owners::::{closure#0} + 40: 0x10dc94d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> + 41: 0x10dcd8c10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> + 42: 0x10dc75354 - rustc_interface[27038c4421a9b2f6]::passes::analysis + 43: 0x10e8171ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 44: 0x10e9661ec - >::call_once + 45: 0x10e7313d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 46: 0x10e9669a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace + 47: 0x10d5328f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> + 48: 0x10d4dab44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 49: 0x10d517f84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 50: 0x10d50083c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> + 51: 0x10d520b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 52: 0x10d50c78c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} + 53: 0x103df89fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d + 54: 0x18cdb5f94 - __pthread_joiner_wake + + +query stack during panic: +#0 [check_match] match-checking `sibling::::is_sub_type` +#1 [mir_built] building MIR for `sibling::::is_sub_type` +#2 [check_unsafety] unsafety-checking `sibling::::is_sub_type` +#3 [analysis] running analysis passes on this crate +end of query stack diff --git a/rustc-ice-2024-08-19T10_33_10-40406.txt b/rustc-ice-2024-08-19T10_33_10-40406.txt new file mode 100644 index 000000000..2d9aaf816 --- /dev/null +++ b/rustc-ice-2024-08-19T10_33_10-40406.txt @@ -0,0 +1,599 @@ +thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: +Box +stack backtrace: + 0: 0x1031b708c - std::backtrace::Backtrace::create::hd742e30c04b0f85c + 1: 0x10c9024a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call + 2: 0x1031cffc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 + 3: 0x10c98c10c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} + 4: 0x10c98bd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> + 5: 0x110a57920 - std[fab435055a7fab56]::panicking::begin_panic:: + 6: 0x10c97f750 - ::emit_producing_guarantee + 7: 0x10d40bb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} + 8: 0x10d40ab88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} + 9: 0x10d40ab54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> + 10: 0x110af8cdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt + 11: 0x10d36e950 - >::fold_ty + 12: 0x10da5460c - ::ctor_sub_tys + 13: 0x10da56178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 14: 0x10da569c8 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 15: 0x10da592ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: + 16: 0x10da7a7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match + 17: 0x10d50fcdc - ::analyze_patterns + 18: 0x10d5100ec - ::check_match + 19: 0x10d514434 - ::visit_expr + 20: 0x10d514528 - ::visit_expr + 21: 0x10d5144bc - ::visit_expr + 22: 0x10d514528 - ::visit_expr + 23: 0x10d50eff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match + 24: 0x10dbf177c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 25: 0x10dd9b3a0 - >::call_once + 26: 0x10db94810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 27: 0x10dca3344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace + 28: 0x10d4d61cc - rustc_mir_build[b901493b8efe2247]::build::mir_build + 29: 0x10d7a4444 - rustc_mir_transform[c96d82c34d21a979]::mir_built + 30: 0x10dbf75f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 31: 0x10dd25430 - >::call_once + 32: 0x10db9bb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 33: 0x10dd91984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace + 34: 0x10d542bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety + 35: 0x10dbf20d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 36: 0x10dd9bbd4 - >::call_once + 37: 0x10db8eab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 38: 0x10dd69870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace + 39: 0x10d070478 - ::par_body_owners::::{closure#0} + 40: 0x10d074d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> + 41: 0x10d0b8c10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> + 42: 0x10d055354 - rustc_interface[27038c4421a9b2f6]::passes::analysis + 43: 0x10dbf71ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 44: 0x10dd461ec - >::call_once + 45: 0x10db113d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 46: 0x10dd469a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace + 47: 0x10c9128f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> + 48: 0x10c8bab44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 49: 0x10c8f7f84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 50: 0x10c8e083c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> + 51: 0x10c900b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 52: 0x10c8ec78c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} + 53: 0x1031d89fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d + 54: 0x18cdb5f94 - __pthread_joiner_wake + + +rustc version: 1.79.0-nightly (becebb315 2024-04-17) +platform: aarch64-apple-darwin + +query stack during panic: +#0 [check_match] match-checking `sibling::::clone` +#1 [mir_built] building MIR for `sibling::::clone` +#2 [check_unsafety] unsafety-checking `sibling::::clone` +#3 [analysis] running analysis passes on this crate +end of query stack +thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: +Box +stack backtrace: + 0: 0x1031b708c - std::backtrace::Backtrace::create::hd742e30c04b0f85c + 1: 0x10c9024a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call + 2: 0x1031cffc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 + 3: 0x10c98c10c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} + 4: 0x10c98bd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> + 5: 0x110a57920 - std[fab435055a7fab56]::panicking::begin_panic:: + 6: 0x10c97f750 - ::emit_producing_guarantee + 7: 0x10d40bb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} + 8: 0x10d40ab88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} + 9: 0x10d40ab54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> + 10: 0x110af8cdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt + 11: 0x10d36e950 - >::fold_ty + 12: 0x10da5460c - ::ctor_sub_tys + 13: 0x10da56178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 14: 0x10da569c8 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 15: 0x10da569c8 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 16: 0x10da592ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: + 17: 0x10da7a7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match + 18: 0x10d50fcdc - ::analyze_patterns + 19: 0x10d5100ec - ::check_match + 20: 0x10d514434 - ::visit_expr + 21: 0x10d514528 - ::visit_expr + 22: 0x10d5144bc - ::visit_expr + 23: 0x10d514528 - ::visit_expr + 24: 0x10d5144bc - ::visit_expr + 25: 0x10d514528 - ::visit_expr + 26: 0x10d50eff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match + 27: 0x10dbf177c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 28: 0x10dd9b3a0 - >::call_once + 29: 0x10db94810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 30: 0x10dca3344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace + 31: 0x10d4d61cc - rustc_mir_build[b901493b8efe2247]::build::mir_build + 32: 0x10d7a4444 - rustc_mir_transform[c96d82c34d21a979]::mir_built + 33: 0x10dbf75f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 34: 0x10dd25430 - >::call_once + 35: 0x10db9bb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 36: 0x10dd91984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace + 37: 0x10d542bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety + 38: 0x10dbf20d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 39: 0x10dd9bbd4 - >::call_once + 40: 0x10db8eab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 41: 0x10dd69870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace + 42: 0x10d070478 - ::par_body_owners::::{closure#0} + 43: 0x10d074d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> + 44: 0x10d0b8c10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> + 45: 0x10d055354 - rustc_interface[27038c4421a9b2f6]::passes::analysis + 46: 0x10dbf71ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 47: 0x10dd461ec - >::call_once + 48: 0x10db113d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 49: 0x10dd469a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace + 50: 0x10c9128f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> + 51: 0x10c8bab44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 52: 0x10c8f7f84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 53: 0x10c8e083c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> + 54: 0x10c900b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 55: 0x10c8ec78c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} + 56: 0x1031d89fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d + 57: 0x18cdb5f94 - __pthread_joiner_wake + + +query stack during panic: +#0 [check_match] match-checking `sibling::::eq` +#1 [mir_built] building MIR for `sibling::::eq` +#2 [check_unsafety] unsafety-checking `sibling::::eq` +#3 [analysis] running analysis passes on this crate +end of query stack +thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: +Box +stack backtrace: + 0: 0x1031b708c - std::backtrace::Backtrace::create::hd742e30c04b0f85c + 1: 0x10c9024a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call + 2: 0x1031cffc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 + 3: 0x10c98c10c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} + 4: 0x10c98bd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> + 5: 0x110a57920 - std[fab435055a7fab56]::panicking::begin_panic:: + 6: 0x10c97f750 - ::emit_producing_guarantee + 7: 0x10d40bb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} + 8: 0x10d40ab88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} + 9: 0x10d40ab54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> + 10: 0x110af8cdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt + 11: 0x10d36e950 - >::fold_ty + 12: 0x10da5460c - ::ctor_sub_tys + 13: 0x10da56178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 14: 0x10da592ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: + 15: 0x10da7a7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match + 16: 0x10d50fcdc - ::analyze_patterns + 17: 0x10d5100ec - ::check_match + 18: 0x10d514434 - ::visit_expr + 19: 0x10d514528 - ::visit_expr + 20: 0x10d5144bc - ::visit_expr + 21: 0x10d514528 - ::visit_expr + 22: 0x10d5144bc - ::visit_expr + 23: 0x10d514528 - ::visit_expr + 24: 0x10d50eff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match + 25: 0x10dbf177c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 26: 0x10dd9b3a0 - >::call_once + 27: 0x10db94810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 28: 0x10dca3344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace + 29: 0x10d4d61cc - rustc_mir_build[b901493b8efe2247]::build::mir_build + 30: 0x10d7a4444 - rustc_mir_transform[c96d82c34d21a979]::mir_built + 31: 0x10dbf75f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 32: 0x10dd25430 - >::call_once + 33: 0x10db9bb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 34: 0x10dd91984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace + 35: 0x10d542bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety + 36: 0x10dbf20d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 37: 0x10dd9bbd4 - >::call_once + 38: 0x10db8eab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 39: 0x10dd69870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace + 40: 0x10d070478 - ::par_body_owners::::{closure#0} + 41: 0x10d074d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> + 42: 0x10d0b8c10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> + 43: 0x10d055354 - rustc_interface[27038c4421a9b2f6]::passes::analysis + 44: 0x10dbf71ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 45: 0x10dd461ec - >::call_once + 46: 0x10db113d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 47: 0x10dd469a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace + 48: 0x10c9128f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> + 49: 0x10c8bab44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 50: 0x10c8f7f84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 51: 0x10c8e083c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> + 52: 0x10c900b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 53: 0x10c8ec78c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} + 54: 0x1031d89fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d + 55: 0x18cdb5f94 - __pthread_joiner_wake + + +query stack during panic: +#0 [check_match] match-checking `sibling::_::::size_hint` +#1 [mir_built] building MIR for `sibling::_::::size_hint` +#2 [check_unsafety] unsafety-checking `sibling::_::::size_hint` +#3 [analysis] running analysis passes on this crate +end of query stack +thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: +Box +stack backtrace: + 0: 0x1031b708c - std::backtrace::Backtrace::create::hd742e30c04b0f85c + 1: 0x10c9024a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call + 2: 0x1031cffc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 + 3: 0x10c98c10c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} + 4: 0x10c98bd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> + 5: 0x110a57920 - std[fab435055a7fab56]::panicking::begin_panic:: + 6: 0x10c97f750 - ::emit_producing_guarantee + 7: 0x10d40bb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} + 8: 0x10d40ab88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} + 9: 0x10d40ab54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> + 10: 0x110af8cdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt + 11: 0x10d36e950 - >::fold_ty + 12: 0x10da5460c - ::ctor_sub_tys + 13: 0x10da56178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 14: 0x10da592ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: + 15: 0x10da7a7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match + 16: 0x10d50fcdc - ::analyze_patterns + 17: 0x10d5100ec - ::check_match + 18: 0x10d514434 - ::visit_expr + 19: 0x10d514528 - ::visit_expr + 20: 0x10d5144bc - ::visit_expr + 21: 0x10d514528 - ::visit_expr + 22: 0x10d50eff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match + 23: 0x10dbf177c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 24: 0x10dd9b3a0 - >::call_once + 25: 0x10db94810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 26: 0x10dca3344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace + 27: 0x10d4d61cc - rustc_mir_build[b901493b8efe2247]::build::mir_build + 28: 0x10d7a4444 - rustc_mir_transform[c96d82c34d21a979]::mir_built + 29: 0x10dbf75f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 30: 0x10dd25430 - >::call_once + 31: 0x10db9bb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 32: 0x10dd91984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace + 33: 0x10d542bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety + 34: 0x10dbf20d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 35: 0x10dd9bbd4 - >::call_once + 36: 0x10db8eab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 37: 0x10dd69870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace + 38: 0x10d070478 - ::par_body_owners::::{closure#0} + 39: 0x10d074d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> + 40: 0x10d0b8c10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> + 41: 0x10d055354 - rustc_interface[27038c4421a9b2f6]::passes::analysis + 42: 0x10dbf71ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 43: 0x10dd461ec - >::call_once + 44: 0x10db113d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 45: 0x10dd469a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace + 46: 0x10c9128f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> + 47: 0x10c8bab44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 48: 0x10c8f7f84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 49: 0x10c8e083c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> + 50: 0x10c900b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 51: 0x10c8ec78c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} + 52: 0x1031d89fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d + 53: 0x18cdb5f94 - __pthread_joiner_wake + + +query stack during panic: +#0 [check_match] match-checking `sibling::_::::encode_to` +#1 [mir_built] building MIR for `sibling::_::::encode_to` +#2 [check_unsafety] unsafety-checking `sibling::_::::encode_to` +#3 [analysis] running analysis passes on this crate +end of query stack +thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: +Box +stack backtrace: + 0: 0x1031b708c - std::backtrace::Backtrace::create::hd742e30c04b0f85c + 1: 0x10c9024a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call + 2: 0x1031cffc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 + 3: 0x10c98c10c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} + 4: 0x10c98bd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> + 5: 0x110a57920 - std[fab435055a7fab56]::panicking::begin_panic:: + 6: 0x10c97f750 - ::emit_producing_guarantee + 7: 0x10d40bb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} + 8: 0x10d40ab88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} + 9: 0x10d40ab54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> + 10: 0x110af8cdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt + 11: 0x10d36e950 - >::fold_ty + 12: 0x10da5460c - ::ctor_sub_tys + 13: 0x10da56178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 14: 0x10da569c8 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 15: 0x10da592ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: + 16: 0x10da7a7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match + 17: 0x10d50fcdc - ::analyze_patterns + 18: 0x10d5100ec - ::check_match + 19: 0x10d514434 - ::visit_expr + 20: 0x10d514528 - ::visit_expr + 21: 0x10d5144bc - ::visit_expr + 22: 0x10d514528 - ::visit_expr + 23: 0x10d50eff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match + 24: 0x10dbf177c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 25: 0x10dd9b3a0 - >::call_once + 26: 0x10db94810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 27: 0x10dca3344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace + 28: 0x10d4d61cc - rustc_mir_build[b901493b8efe2247]::build::mir_build + 29: 0x10d7a4444 - rustc_mir_transform[c96d82c34d21a979]::mir_built + 30: 0x10dbf75f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 31: 0x10dd25430 - >::call_once + 32: 0x10db9bb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 33: 0x10dd91984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace + 34: 0x10d542bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety + 35: 0x10dbf20d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 36: 0x10dd9bbd4 - >::call_once + 37: 0x10db8eab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 38: 0x10dd69870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace + 39: 0x10d070478 - ::par_body_owners::::{closure#0} + 40: 0x10d074d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> + 41: 0x10d0b8c10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> + 42: 0x10d055354 - rustc_interface[27038c4421a9b2f6]::passes::analysis + 43: 0x10dbf71ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 44: 0x10dd461ec - >::call_once + 45: 0x10db113d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 46: 0x10dd469a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace + 47: 0x10c9128f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> + 48: 0x10c8bab44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 49: 0x10c8f7f84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 50: 0x10c8e083c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> + 51: 0x10c900b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 52: 0x10c8ec78c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} + 53: 0x1031d89fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d + 54: 0x18cdb5f94 - __pthread_joiner_wake + + +query stack during panic: +#0 [check_match] match-checking `sibling::::fmt` +#1 [mir_built] building MIR for `sibling::::fmt` +#2 [check_unsafety] unsafety-checking `sibling::::fmt` +#3 [analysis] running analysis passes on this crate +end of query stack +thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: +Box +stack backtrace: + 0: 0x1031b708c - std::backtrace::Backtrace::create::hd742e30c04b0f85c + 1: 0x10c9024a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call + 2: 0x1031cffc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 + 3: 0x10c98c10c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} + 4: 0x10c98bd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> + 5: 0x110a57920 - std[fab435055a7fab56]::panicking::begin_panic:: + 6: 0x10c97f750 - ::emit_producing_guarantee + 7: 0x10d40bb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} + 8: 0x10d40ab88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} + 9: 0x10d40ab54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> + 10: 0x110af8cdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt + 11: 0x10d36e950 - >::fold_ty + 12: 0x10da5460c - ::ctor_sub_tys + 13: 0x10da56178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 14: 0x10da569c8 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 15: 0x10da592ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: + 16: 0x10da7a7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match + 17: 0x10d50fcdc - ::analyze_patterns + 18: 0x10d5100ec - ::check_match + 19: 0x10d514434 - ::visit_expr + 20: 0x10d514528 - ::visit_expr + 21: 0x10d5144bc - ::visit_expr + 22: 0x10d514528 - ::visit_expr + 23: 0x10d50eff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match + 24: 0x10dbf177c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 25: 0x10dd9b3a0 - >::call_once + 26: 0x10db94810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 27: 0x10dca3344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace + 28: 0x10d4d61cc - rustc_mir_build[b901493b8efe2247]::build::mir_build + 29: 0x10d7a4444 - rustc_mir_transform[c96d82c34d21a979]::mir_built + 30: 0x10dbf75f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 31: 0x10dd25430 - >::call_once + 32: 0x10db9bb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 33: 0x10dd91984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace + 34: 0x10d542bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety + 35: 0x10dbf20d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 36: 0x10dd9bbd4 - >::call_once + 37: 0x10db8eab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 38: 0x10dd69870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace + 39: 0x10d070478 - ::par_body_owners::::{closure#0} + 40: 0x10d074d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> + 41: 0x10d0b8c10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> + 42: 0x10d055354 - rustc_interface[27038c4421a9b2f6]::passes::analysis + 43: 0x10dbf71ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 44: 0x10dd461ec - >::call_once + 45: 0x10db113d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 46: 0x10dd469a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace + 47: 0x10c9128f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> + 48: 0x10c8bab44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 49: 0x10c8f7f84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 50: 0x10c8e083c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> + 51: 0x10c900b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 52: 0x10c8ec78c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} + 53: 0x1031d89fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d + 54: 0x18cdb5f94 - __pthread_joiner_wake + + +query stack during panic: +#0 [check_match] match-checking `sibling::::get_dispatch_info` +#1 [mir_built] building MIR for `sibling::::get_dispatch_info` +#2 [check_unsafety] unsafety-checking `sibling::::get_dispatch_info` +#3 [analysis] running analysis passes on this crate +end of query stack +thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: +Box +stack backtrace: + 0: 0x1031b708c - std::backtrace::Backtrace::create::hd742e30c04b0f85c + 1: 0x10c9024a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call + 2: 0x1031cffc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 + 3: 0x10c98c10c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} + 4: 0x10c98bd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> + 5: 0x110a57920 - std[fab435055a7fab56]::panicking::begin_panic:: + 6: 0x10c97f750 - ::emit_producing_guarantee + 7: 0x10d40bb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} + 8: 0x10d40ab88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} + 9: 0x10d40ab54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> + 10: 0x110af8cdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt + 11: 0x10d36e950 - >::fold_ty + 12: 0x10da5460c - ::ctor_sub_tys + 13: 0x10da56178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 14: 0x10da569c8 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 15: 0x10da592ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: + 16: 0x10da7a7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match + 17: 0x10d50fcdc - ::analyze_patterns + 18: 0x10d5100ec - ::check_match + 19: 0x10d514434 - ::visit_expr + 20: 0x10d514528 - ::visit_expr + 21: 0x10d5144bc - ::visit_expr + 22: 0x10d514528 - ::visit_expr + 23: 0x10d50eff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match + 24: 0x10dbf177c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 25: 0x10dd9b3a0 - >::call_once + 26: 0x10db94810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 27: 0x10dca3344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace + 28: 0x10d4d61cc - rustc_mir_build[b901493b8efe2247]::build::mir_build + 29: 0x10d7a4444 - rustc_mir_transform[c96d82c34d21a979]::mir_built + 30: 0x10dbf75f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 31: 0x10dd25430 - >::call_once + 32: 0x10db9bb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 33: 0x10dd91984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace + 34: 0x10d542bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety + 35: 0x10dbf20d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 36: 0x10dd9bbd4 - >::call_once + 37: 0x10db8eab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 38: 0x10dd69870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace + 39: 0x10d070478 - ::par_body_owners::::{closure#0} + 40: 0x10d074d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> + 41: 0x10d0b8c10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> + 42: 0x10d055354 - rustc_interface[27038c4421a9b2f6]::passes::analysis + 43: 0x10dbf71ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 44: 0x10dd461ec - >::call_once + 45: 0x10db113d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 46: 0x10dd469a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace + 47: 0x10c9128f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> + 48: 0x10c8bab44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 49: 0x10c8f7f84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 50: 0x10c8e083c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> + 51: 0x10c900b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 52: 0x10c8ec78c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} + 53: 0x1031d89fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d + 54: 0x18cdb5f94 - __pthread_joiner_wake + + +query stack during panic: +#0 [check_match] match-checking `sibling::::get_call_metadata` +#1 [mir_built] building MIR for `sibling::::get_call_metadata` +#2 [check_unsafety] unsafety-checking `sibling::::get_call_metadata` +#3 [analysis] running analysis passes on this crate +end of query stack +thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: +Box +stack backtrace: + 0: 0x1031b708c - std::backtrace::Backtrace::create::hd742e30c04b0f85c + 1: 0x10c9024a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call + 2: 0x1031cffc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 + 3: 0x10c98c10c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} + 4: 0x10c98bd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> + 5: 0x110a57920 - std[fab435055a7fab56]::panicking::begin_panic:: + 6: 0x10c97f750 - ::emit_producing_guarantee + 7: 0x10d40bb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} + 8: 0x10d40ab88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} + 9: 0x10d40ab54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> + 10: 0x110af8cdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt + 11: 0x10d36e950 - >::fold_ty + 12: 0x10da5460c - ::ctor_sub_tys + 13: 0x10da56178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 14: 0x10da592ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: + 15: 0x10da7a7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match + 16: 0x10d50fcdc - ::analyze_patterns + 17: 0x10d5100ec - ::check_match + 18: 0x10d514434 - ::visit_expr + 19: 0x10d514528 - ::visit_expr + 20: 0x10d5144bc - ::visit_expr + 21: 0x10d514528 - ::visit_expr + 22: 0x10d50eff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match + 23: 0x10dbf177c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 24: 0x10dd9b3a0 - >::call_once + 25: 0x10db94810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 26: 0x10dca3344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace + 27: 0x10d4d61cc - rustc_mir_build[b901493b8efe2247]::build::mir_build + 28: 0x10d7a4444 - rustc_mir_transform[c96d82c34d21a979]::mir_built + 29: 0x10dbf75f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 30: 0x10dd25430 - >::call_once + 31: 0x10db9bb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 32: 0x10dd91984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace + 33: 0x10d542bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety + 34: 0x10dbf20d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 35: 0x10dd9bbd4 - >::call_once + 36: 0x10db8eab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 37: 0x10dd69870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace + 38: 0x10d070478 - ::par_body_owners::::{closure#0} + 39: 0x10d074d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> + 40: 0x10d0b8c10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> + 41: 0x10d055354 - rustc_interface[27038c4421a9b2f6]::passes::analysis + 42: 0x10dbf71ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 43: 0x10dd461ec - >::call_once + 44: 0x10db113d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 45: 0x10dd469a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace + 46: 0x10c9128f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> + 47: 0x10c8bab44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 48: 0x10c8f7f84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 49: 0x10c8e083c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> + 50: 0x10c900b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 51: 0x10c8ec78c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} + 52: 0x1031d89fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d + 53: 0x18cdb5f94 - __pthread_joiner_wake + + +query stack during panic: +#0 [check_match] match-checking `sibling::::dispatch_bypass_filter` +#1 [mir_built] building MIR for `sibling::::dispatch_bypass_filter` +#2 [check_unsafety] unsafety-checking `sibling::::dispatch_bypass_filter` +#3 [analysis] running analysis passes on this crate +end of query stack +thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: +Box +stack backtrace: + 0: 0x1031b708c - std::backtrace::Backtrace::create::hd742e30c04b0f85c + 1: 0x10c9024a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call + 2: 0x1031cffc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 + 3: 0x10c98c10c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} + 4: 0x10c98bd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> + 5: 0x110a57920 - std[fab435055a7fab56]::panicking::begin_panic:: + 6: 0x10c97f750 - ::emit_producing_guarantee + 7: 0x10d40bb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} + 8: 0x10d40ab88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} + 9: 0x10d40ab54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> + 10: 0x110af8cdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt + 11: 0x10d36e950 - >::fold_ty + 12: 0x10da5460c - ::ctor_sub_tys + 13: 0x10da56178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 14: 0x10da569c8 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: + 15: 0x10da592ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: + 16: 0x10da7a7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match + 17: 0x10d50fcdc - ::analyze_patterns + 18: 0x10d5100ec - ::check_match + 19: 0x10d514434 - ::visit_expr + 20: 0x10d514528 - ::visit_expr + 21: 0x10d5144bc - ::visit_expr + 22: 0x10d514528 - ::visit_expr + 23: 0x10d50eff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match + 24: 0x10dbf177c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 25: 0x10dd9b3a0 - >::call_once + 26: 0x10db94810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 27: 0x10dca3344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace + 28: 0x10d4d61cc - rustc_mir_build[b901493b8efe2247]::build::mir_build + 29: 0x10d7a4444 - rustc_mir_transform[c96d82c34d21a979]::mir_built + 30: 0x10dbf75f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 31: 0x10dd25430 - >::call_once + 32: 0x10db9bb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 33: 0x10dd91984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace + 34: 0x10d542bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety + 35: 0x10dbf20d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 36: 0x10dd9bbd4 - >::call_once + 37: 0x10db8eab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 38: 0x10dd69870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace + 39: 0x10d070478 - ::par_body_owners::::{closure#0} + 40: 0x10d074d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> + 41: 0x10d0b8c10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> + 42: 0x10d055354 - rustc_interface[27038c4421a9b2f6]::passes::analysis + 43: 0x10dbf71ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> + 44: 0x10dd461ec - >::call_once + 45: 0x10db113d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> + 46: 0x10dd469a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace + 47: 0x10c9128f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> + 48: 0x10c8bab44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 49: 0x10c8f7f84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 50: 0x10c8e083c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> + 51: 0x10c900b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> + 52: 0x10c8ec78c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} + 53: 0x1031d89fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d + 54: 0x18cdb5f94 - __pthread_joiner_wake + + +query stack during panic: +#0 [check_match] match-checking `sibling::::is_sub_type` +#1 [mir_built] building MIR for `sibling::::is_sub_type` +#2 [check_unsafety] unsafety-checking `sibling::::is_sub_type` +#3 [analysis] running analysis passes on this crate +end of query stack From fa6b17c82efb5e29b0e65b886af8e56367802aaa Mon Sep 17 00:00:00 2001 From: Gianfranco Date: Wed, 21 Aug 2024 12:50:17 -0300 Subject: [PATCH 06/38] remove .txt files --- rustc-ice-2024-08-19T08_38_05-26376.txt | 599 ------------------------ rustc-ice-2024-08-19T09_56_32-34759.txt | 599 ------------------------ rustc-ice-2024-08-19T10_33_10-40406.txt | 599 ------------------------ 3 files changed, 1797 deletions(-) delete mode 100644 rustc-ice-2024-08-19T08_38_05-26376.txt delete mode 100644 rustc-ice-2024-08-19T09_56_32-34759.txt delete mode 100644 rustc-ice-2024-08-19T10_33_10-40406.txt diff --git a/rustc-ice-2024-08-19T08_38_05-26376.txt b/rustc-ice-2024-08-19T08_38_05-26376.txt deleted file mode 100644 index 0c72a91e4..000000000 --- a/rustc-ice-2024-08-19T08_38_05-26376.txt +++ /dev/null @@ -1,599 +0,0 @@ -thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: -Box -stack backtrace: - 0: 0x10139b08c - std::backtrace::Backtrace::create::hd742e30c04b0f85c - 1: 0x10aae64a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call - 2: 0x1013b3fc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 - 3: 0x10ab7010c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} - 4: 0x10ab6fd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> - 5: 0x10ec3b920 - std[fab435055a7fab56]::panicking::begin_panic:: - 6: 0x10ab63750 - ::emit_producing_guarantee - 7: 0x10b5efb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} - 8: 0x10b5eeb88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} - 9: 0x10b5eeb54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> - 10: 0x10ecdccdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt - 11: 0x10b552950 - >::fold_ty - 12: 0x10bc3860c - ::ctor_sub_tys - 13: 0x10bc3a178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 14: 0x10bc3a9c8 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 15: 0x10bc3d2ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: - 16: 0x10bc5e7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match - 17: 0x10b6f3cdc - ::analyze_patterns - 18: 0x10b6f40ec - ::check_match - 19: 0x10b6f8434 - ::visit_expr - 20: 0x10b6f8528 - ::visit_expr - 21: 0x10b6f84bc - ::visit_expr - 22: 0x10b6f8528 - ::visit_expr - 23: 0x10b6f2ff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match - 24: 0x10bdd577c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 25: 0x10bf7f3a0 - >::call_once - 26: 0x10bd78810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 27: 0x10be87344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace - 28: 0x10b6ba1cc - rustc_mir_build[b901493b8efe2247]::build::mir_build - 29: 0x10b988444 - rustc_mir_transform[c96d82c34d21a979]::mir_built - 30: 0x10bddb5f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 31: 0x10bf09430 - >::call_once - 32: 0x10bd7fb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 33: 0x10bf75984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace - 34: 0x10b726bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety - 35: 0x10bdd60d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 36: 0x10bf7fbd4 - >::call_once - 37: 0x10bd72ab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 38: 0x10bf4d870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace - 39: 0x10b254478 - ::par_body_owners::::{closure#0} - 40: 0x10b258d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> - 41: 0x10b29cc10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> - 42: 0x10b239354 - rustc_interface[27038c4421a9b2f6]::passes::analysis - 43: 0x10bddb1ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 44: 0x10bf2a1ec - >::call_once - 45: 0x10bcf53d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 46: 0x10bf2a9a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace - 47: 0x10aaf68f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> - 48: 0x10aa9eb44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 49: 0x10aadbf84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 50: 0x10aac483c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> - 51: 0x10aae4b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 52: 0x10aad078c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} - 53: 0x1013bc9fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d - 54: 0x18cdb5f94 - __pthread_joiner_wake - - -rustc version: 1.79.0-nightly (becebb315 2024-04-17) -platform: aarch64-apple-darwin - -query stack during panic: -#0 [check_match] match-checking `sibling::::clone` -#1 [mir_built] building MIR for `sibling::::clone` -#2 [check_unsafety] unsafety-checking `sibling::::clone` -#3 [analysis] running analysis passes on this crate -end of query stack -thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: -Box -stack backtrace: - 0: 0x10139b08c - std::backtrace::Backtrace::create::hd742e30c04b0f85c - 1: 0x10aae64a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call - 2: 0x1013b3fc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 - 3: 0x10ab7010c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} - 4: 0x10ab6fd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> - 5: 0x10ec3b920 - std[fab435055a7fab56]::panicking::begin_panic:: - 6: 0x10ab63750 - ::emit_producing_guarantee - 7: 0x10b5efb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} - 8: 0x10b5eeb88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} - 9: 0x10b5eeb54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> - 10: 0x10ecdccdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt - 11: 0x10b552950 - >::fold_ty - 12: 0x10bc3860c - ::ctor_sub_tys - 13: 0x10bc3a178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 14: 0x10bc3a9c8 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 15: 0x10bc3a9c8 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 16: 0x10bc3d2ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: - 17: 0x10bc5e7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match - 18: 0x10b6f3cdc - ::analyze_patterns - 19: 0x10b6f40ec - ::check_match - 20: 0x10b6f8434 - ::visit_expr - 21: 0x10b6f8528 - ::visit_expr - 22: 0x10b6f84bc - ::visit_expr - 23: 0x10b6f8528 - ::visit_expr - 24: 0x10b6f84bc - ::visit_expr - 25: 0x10b6f8528 - ::visit_expr - 26: 0x10b6f2ff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match - 27: 0x10bdd577c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 28: 0x10bf7f3a0 - >::call_once - 29: 0x10bd78810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 30: 0x10be87344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace - 31: 0x10b6ba1cc - rustc_mir_build[b901493b8efe2247]::build::mir_build - 32: 0x10b988444 - rustc_mir_transform[c96d82c34d21a979]::mir_built - 33: 0x10bddb5f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 34: 0x10bf09430 - >::call_once - 35: 0x10bd7fb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 36: 0x10bf75984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace - 37: 0x10b726bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety - 38: 0x10bdd60d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 39: 0x10bf7fbd4 - >::call_once - 40: 0x10bd72ab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 41: 0x10bf4d870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace - 42: 0x10b254478 - ::par_body_owners::::{closure#0} - 43: 0x10b258d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> - 44: 0x10b29cc10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> - 45: 0x10b239354 - rustc_interface[27038c4421a9b2f6]::passes::analysis - 46: 0x10bddb1ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 47: 0x10bf2a1ec - >::call_once - 48: 0x10bcf53d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 49: 0x10bf2a9a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace - 50: 0x10aaf68f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> - 51: 0x10aa9eb44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 52: 0x10aadbf84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 53: 0x10aac483c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> - 54: 0x10aae4b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 55: 0x10aad078c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} - 56: 0x1013bc9fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d - 57: 0x18cdb5f94 - __pthread_joiner_wake - - -query stack during panic: -#0 [check_match] match-checking `sibling::::eq` -#1 [mir_built] building MIR for `sibling::::eq` -#2 [check_unsafety] unsafety-checking `sibling::::eq` -#3 [analysis] running analysis passes on this crate -end of query stack -thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: -Box -stack backtrace: - 0: 0x10139b08c - std::backtrace::Backtrace::create::hd742e30c04b0f85c - 1: 0x10aae64a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call - 2: 0x1013b3fc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 - 3: 0x10ab7010c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} - 4: 0x10ab6fd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> - 5: 0x10ec3b920 - std[fab435055a7fab56]::panicking::begin_panic:: - 6: 0x10ab63750 - ::emit_producing_guarantee - 7: 0x10b5efb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} - 8: 0x10b5eeb88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} - 9: 0x10b5eeb54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> - 10: 0x10ecdccdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt - 11: 0x10b552950 - >::fold_ty - 12: 0x10bc3860c - ::ctor_sub_tys - 13: 0x10bc3a178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 14: 0x10bc3d2ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: - 15: 0x10bc5e7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match - 16: 0x10b6f3cdc - ::analyze_patterns - 17: 0x10b6f40ec - ::check_match - 18: 0x10b6f8434 - ::visit_expr - 19: 0x10b6f8528 - ::visit_expr - 20: 0x10b6f84bc - ::visit_expr - 21: 0x10b6f8528 - ::visit_expr - 22: 0x10b6f84bc - ::visit_expr - 23: 0x10b6f8528 - ::visit_expr - 24: 0x10b6f2ff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match - 25: 0x10bdd577c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 26: 0x10bf7f3a0 - >::call_once - 27: 0x10bd78810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 28: 0x10be87344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace - 29: 0x10b6ba1cc - rustc_mir_build[b901493b8efe2247]::build::mir_build - 30: 0x10b988444 - rustc_mir_transform[c96d82c34d21a979]::mir_built - 31: 0x10bddb5f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 32: 0x10bf09430 - >::call_once - 33: 0x10bd7fb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 34: 0x10bf75984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace - 35: 0x10b726bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety - 36: 0x10bdd60d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 37: 0x10bf7fbd4 - >::call_once - 38: 0x10bd72ab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 39: 0x10bf4d870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace - 40: 0x10b254478 - ::par_body_owners::::{closure#0} - 41: 0x10b258d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> - 42: 0x10b29cc10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> - 43: 0x10b239354 - rustc_interface[27038c4421a9b2f6]::passes::analysis - 44: 0x10bddb1ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 45: 0x10bf2a1ec - >::call_once - 46: 0x10bcf53d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 47: 0x10bf2a9a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace - 48: 0x10aaf68f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> - 49: 0x10aa9eb44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 50: 0x10aadbf84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 51: 0x10aac483c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> - 52: 0x10aae4b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 53: 0x10aad078c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} - 54: 0x1013bc9fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d - 55: 0x18cdb5f94 - __pthread_joiner_wake - - -query stack during panic: -#0 [check_match] match-checking `sibling::_::::size_hint` -#1 [mir_built] building MIR for `sibling::_::::size_hint` -#2 [check_unsafety] unsafety-checking `sibling::_::::size_hint` -#3 [analysis] running analysis passes on this crate -end of query stack -thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: -Box -stack backtrace: - 0: 0x10139b08c - std::backtrace::Backtrace::create::hd742e30c04b0f85c - 1: 0x10aae64a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call - 2: 0x1013b3fc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 - 3: 0x10ab7010c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} - 4: 0x10ab6fd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> - 5: 0x10ec3b920 - std[fab435055a7fab56]::panicking::begin_panic:: - 6: 0x10ab63750 - ::emit_producing_guarantee - 7: 0x10b5efb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} - 8: 0x10b5eeb88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} - 9: 0x10b5eeb54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> - 10: 0x10ecdccdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt - 11: 0x10b552950 - >::fold_ty - 12: 0x10bc3860c - ::ctor_sub_tys - 13: 0x10bc3a178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 14: 0x10bc3d2ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: - 15: 0x10bc5e7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match - 16: 0x10b6f3cdc - ::analyze_patterns - 17: 0x10b6f40ec - ::check_match - 18: 0x10b6f8434 - ::visit_expr - 19: 0x10b6f8528 - ::visit_expr - 20: 0x10b6f84bc - ::visit_expr - 21: 0x10b6f8528 - ::visit_expr - 22: 0x10b6f2ff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match - 23: 0x10bdd577c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 24: 0x10bf7f3a0 - >::call_once - 25: 0x10bd78810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 26: 0x10be87344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace - 27: 0x10b6ba1cc - rustc_mir_build[b901493b8efe2247]::build::mir_build - 28: 0x10b988444 - rustc_mir_transform[c96d82c34d21a979]::mir_built - 29: 0x10bddb5f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 30: 0x10bf09430 - >::call_once - 31: 0x10bd7fb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 32: 0x10bf75984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace - 33: 0x10b726bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety - 34: 0x10bdd60d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 35: 0x10bf7fbd4 - >::call_once - 36: 0x10bd72ab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 37: 0x10bf4d870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace - 38: 0x10b254478 - ::par_body_owners::::{closure#0} - 39: 0x10b258d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> - 40: 0x10b29cc10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> - 41: 0x10b239354 - rustc_interface[27038c4421a9b2f6]::passes::analysis - 42: 0x10bddb1ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 43: 0x10bf2a1ec - >::call_once - 44: 0x10bcf53d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 45: 0x10bf2a9a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace - 46: 0x10aaf68f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> - 47: 0x10aa9eb44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 48: 0x10aadbf84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 49: 0x10aac483c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> - 50: 0x10aae4b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 51: 0x10aad078c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} - 52: 0x1013bc9fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d - 53: 0x18cdb5f94 - __pthread_joiner_wake - - -query stack during panic: -#0 [check_match] match-checking `sibling::_::::encode_to` -#1 [mir_built] building MIR for `sibling::_::::encode_to` -#2 [check_unsafety] unsafety-checking `sibling::_::::encode_to` -#3 [analysis] running analysis passes on this crate -end of query stack -thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: -Box -stack backtrace: - 0: 0x10139b08c - std::backtrace::Backtrace::create::hd742e30c04b0f85c - 1: 0x10aae64a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call - 2: 0x1013b3fc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 - 3: 0x10ab7010c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} - 4: 0x10ab6fd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> - 5: 0x10ec3b920 - std[fab435055a7fab56]::panicking::begin_panic:: - 6: 0x10ab63750 - ::emit_producing_guarantee - 7: 0x10b5efb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} - 8: 0x10b5eeb88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} - 9: 0x10b5eeb54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> - 10: 0x10ecdccdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt - 11: 0x10b552950 - >::fold_ty - 12: 0x10bc3860c - ::ctor_sub_tys - 13: 0x10bc3a178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 14: 0x10bc3a9c8 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 15: 0x10bc3d2ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: - 16: 0x10bc5e7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match - 17: 0x10b6f3cdc - ::analyze_patterns - 18: 0x10b6f40ec - ::check_match - 19: 0x10b6f8434 - ::visit_expr - 20: 0x10b6f8528 - ::visit_expr - 21: 0x10b6f84bc - ::visit_expr - 22: 0x10b6f8528 - ::visit_expr - 23: 0x10b6f2ff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match - 24: 0x10bdd577c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 25: 0x10bf7f3a0 - >::call_once - 26: 0x10bd78810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 27: 0x10be87344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace - 28: 0x10b6ba1cc - rustc_mir_build[b901493b8efe2247]::build::mir_build - 29: 0x10b988444 - rustc_mir_transform[c96d82c34d21a979]::mir_built - 30: 0x10bddb5f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 31: 0x10bf09430 - >::call_once - 32: 0x10bd7fb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 33: 0x10bf75984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace - 34: 0x10b726bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety - 35: 0x10bdd60d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 36: 0x10bf7fbd4 - >::call_once - 37: 0x10bd72ab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 38: 0x10bf4d870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace - 39: 0x10b254478 - ::par_body_owners::::{closure#0} - 40: 0x10b258d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> - 41: 0x10b29cc10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> - 42: 0x10b239354 - rustc_interface[27038c4421a9b2f6]::passes::analysis - 43: 0x10bddb1ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 44: 0x10bf2a1ec - >::call_once - 45: 0x10bcf53d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 46: 0x10bf2a9a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace - 47: 0x10aaf68f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> - 48: 0x10aa9eb44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 49: 0x10aadbf84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 50: 0x10aac483c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> - 51: 0x10aae4b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 52: 0x10aad078c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} - 53: 0x1013bc9fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d - 54: 0x18cdb5f94 - __pthread_joiner_wake - - -query stack during panic: -#0 [check_match] match-checking `sibling::::fmt` -#1 [mir_built] building MIR for `sibling::::fmt` -#2 [check_unsafety] unsafety-checking `sibling::::fmt` -#3 [analysis] running analysis passes on this crate -end of query stack -thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: -Box -stack backtrace: - 0: 0x10139b08c - std::backtrace::Backtrace::create::hd742e30c04b0f85c - 1: 0x10aae64a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call - 2: 0x1013b3fc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 - 3: 0x10ab7010c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} - 4: 0x10ab6fd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> - 5: 0x10ec3b920 - std[fab435055a7fab56]::panicking::begin_panic:: - 6: 0x10ab63750 - ::emit_producing_guarantee - 7: 0x10b5efb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} - 8: 0x10b5eeb88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} - 9: 0x10b5eeb54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> - 10: 0x10ecdccdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt - 11: 0x10b552950 - >::fold_ty - 12: 0x10bc3860c - ::ctor_sub_tys - 13: 0x10bc3a178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 14: 0x10bc3a9c8 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 15: 0x10bc3d2ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: - 16: 0x10bc5e7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match - 17: 0x10b6f3cdc - ::analyze_patterns - 18: 0x10b6f40ec - ::check_match - 19: 0x10b6f8434 - ::visit_expr - 20: 0x10b6f8528 - ::visit_expr - 21: 0x10b6f84bc - ::visit_expr - 22: 0x10b6f8528 - ::visit_expr - 23: 0x10b6f2ff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match - 24: 0x10bdd577c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 25: 0x10bf7f3a0 - >::call_once - 26: 0x10bd78810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 27: 0x10be87344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace - 28: 0x10b6ba1cc - rustc_mir_build[b901493b8efe2247]::build::mir_build - 29: 0x10b988444 - rustc_mir_transform[c96d82c34d21a979]::mir_built - 30: 0x10bddb5f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 31: 0x10bf09430 - >::call_once - 32: 0x10bd7fb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 33: 0x10bf75984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace - 34: 0x10b726bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety - 35: 0x10bdd60d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 36: 0x10bf7fbd4 - >::call_once - 37: 0x10bd72ab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 38: 0x10bf4d870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace - 39: 0x10b254478 - ::par_body_owners::::{closure#0} - 40: 0x10b258d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> - 41: 0x10b29cc10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> - 42: 0x10b239354 - rustc_interface[27038c4421a9b2f6]::passes::analysis - 43: 0x10bddb1ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 44: 0x10bf2a1ec - >::call_once - 45: 0x10bcf53d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 46: 0x10bf2a9a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace - 47: 0x10aaf68f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> - 48: 0x10aa9eb44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 49: 0x10aadbf84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 50: 0x10aac483c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> - 51: 0x10aae4b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 52: 0x10aad078c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} - 53: 0x1013bc9fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d - 54: 0x18cdb5f94 - __pthread_joiner_wake - - -query stack during panic: -#0 [check_match] match-checking `sibling::::get_dispatch_info` -#1 [mir_built] building MIR for `sibling::::get_dispatch_info` -#2 [check_unsafety] unsafety-checking `sibling::::get_dispatch_info` -#3 [analysis] running analysis passes on this crate -end of query stack -thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: -Box -stack backtrace: - 0: 0x10139b08c - std::backtrace::Backtrace::create::hd742e30c04b0f85c - 1: 0x10aae64a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call - 2: 0x1013b3fc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 - 3: 0x10ab7010c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} - 4: 0x10ab6fd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> - 5: 0x10ec3b920 - std[fab435055a7fab56]::panicking::begin_panic:: - 6: 0x10ab63750 - ::emit_producing_guarantee - 7: 0x10b5efb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} - 8: 0x10b5eeb88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} - 9: 0x10b5eeb54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> - 10: 0x10ecdccdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt - 11: 0x10b552950 - >::fold_ty - 12: 0x10bc3860c - ::ctor_sub_tys - 13: 0x10bc3a178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 14: 0x10bc3a9c8 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 15: 0x10bc3d2ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: - 16: 0x10bc5e7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match - 17: 0x10b6f3cdc - ::analyze_patterns - 18: 0x10b6f40ec - ::check_match - 19: 0x10b6f8434 - ::visit_expr - 20: 0x10b6f8528 - ::visit_expr - 21: 0x10b6f84bc - ::visit_expr - 22: 0x10b6f8528 - ::visit_expr - 23: 0x10b6f2ff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match - 24: 0x10bdd577c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 25: 0x10bf7f3a0 - >::call_once - 26: 0x10bd78810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 27: 0x10be87344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace - 28: 0x10b6ba1cc - rustc_mir_build[b901493b8efe2247]::build::mir_build - 29: 0x10b988444 - rustc_mir_transform[c96d82c34d21a979]::mir_built - 30: 0x10bddb5f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 31: 0x10bf09430 - >::call_once - 32: 0x10bd7fb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 33: 0x10bf75984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace - 34: 0x10b726bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety - 35: 0x10bdd60d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 36: 0x10bf7fbd4 - >::call_once - 37: 0x10bd72ab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 38: 0x10bf4d870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace - 39: 0x10b254478 - ::par_body_owners::::{closure#0} - 40: 0x10b258d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> - 41: 0x10b29cc10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> - 42: 0x10b239354 - rustc_interface[27038c4421a9b2f6]::passes::analysis - 43: 0x10bddb1ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 44: 0x10bf2a1ec - >::call_once - 45: 0x10bcf53d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 46: 0x10bf2a9a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace - 47: 0x10aaf68f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> - 48: 0x10aa9eb44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 49: 0x10aadbf84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 50: 0x10aac483c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> - 51: 0x10aae4b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 52: 0x10aad078c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} - 53: 0x1013bc9fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d - 54: 0x18cdb5f94 - __pthread_joiner_wake - - -query stack during panic: -#0 [check_match] match-checking `sibling::::get_call_metadata` -#1 [mir_built] building MIR for `sibling::::get_call_metadata` -#2 [check_unsafety] unsafety-checking `sibling::::get_call_metadata` -#3 [analysis] running analysis passes on this crate -end of query stack -thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: -Box -stack backtrace: - 0: 0x10139b08c - std::backtrace::Backtrace::create::hd742e30c04b0f85c - 1: 0x10aae64a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call - 2: 0x1013b3fc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 - 3: 0x10ab7010c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} - 4: 0x10ab6fd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> - 5: 0x10ec3b920 - std[fab435055a7fab56]::panicking::begin_panic:: - 6: 0x10ab63750 - ::emit_producing_guarantee - 7: 0x10b5efb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} - 8: 0x10b5eeb88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} - 9: 0x10b5eeb54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> - 10: 0x10ecdccdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt - 11: 0x10b552950 - >::fold_ty - 12: 0x10bc3860c - ::ctor_sub_tys - 13: 0x10bc3a178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 14: 0x10bc3d2ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: - 15: 0x10bc5e7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match - 16: 0x10b6f3cdc - ::analyze_patterns - 17: 0x10b6f40ec - ::check_match - 18: 0x10b6f8434 - ::visit_expr - 19: 0x10b6f8528 - ::visit_expr - 20: 0x10b6f84bc - ::visit_expr - 21: 0x10b6f8528 - ::visit_expr - 22: 0x10b6f2ff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match - 23: 0x10bdd577c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 24: 0x10bf7f3a0 - >::call_once - 25: 0x10bd78810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 26: 0x10be87344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace - 27: 0x10b6ba1cc - rustc_mir_build[b901493b8efe2247]::build::mir_build - 28: 0x10b988444 - rustc_mir_transform[c96d82c34d21a979]::mir_built - 29: 0x10bddb5f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 30: 0x10bf09430 - >::call_once - 31: 0x10bd7fb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 32: 0x10bf75984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace - 33: 0x10b726bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety - 34: 0x10bdd60d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 35: 0x10bf7fbd4 - >::call_once - 36: 0x10bd72ab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 37: 0x10bf4d870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace - 38: 0x10b254478 - ::par_body_owners::::{closure#0} - 39: 0x10b258d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> - 40: 0x10b29cc10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> - 41: 0x10b239354 - rustc_interface[27038c4421a9b2f6]::passes::analysis - 42: 0x10bddb1ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 43: 0x10bf2a1ec - >::call_once - 44: 0x10bcf53d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 45: 0x10bf2a9a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace - 46: 0x10aaf68f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> - 47: 0x10aa9eb44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 48: 0x10aadbf84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 49: 0x10aac483c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> - 50: 0x10aae4b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 51: 0x10aad078c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} - 52: 0x1013bc9fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d - 53: 0x18cdb5f94 - __pthread_joiner_wake - - -query stack during panic: -#0 [check_match] match-checking `sibling::::dispatch_bypass_filter` -#1 [mir_built] building MIR for `sibling::::dispatch_bypass_filter` -#2 [check_unsafety] unsafety-checking `sibling::::dispatch_bypass_filter` -#3 [analysis] running analysis passes on this crate -end of query stack -thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: -Box -stack backtrace: - 0: 0x10139b08c - std::backtrace::Backtrace::create::hd742e30c04b0f85c - 1: 0x10aae64a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call - 2: 0x1013b3fc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 - 3: 0x10ab7010c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} - 4: 0x10ab6fd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> - 5: 0x10ec3b920 - std[fab435055a7fab56]::panicking::begin_panic:: - 6: 0x10ab63750 - ::emit_producing_guarantee - 7: 0x10b5efb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} - 8: 0x10b5eeb88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} - 9: 0x10b5eeb54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> - 10: 0x10ecdccdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt - 11: 0x10b552950 - >::fold_ty - 12: 0x10bc3860c - ::ctor_sub_tys - 13: 0x10bc3a178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 14: 0x10bc3a9c8 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 15: 0x10bc3d2ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: - 16: 0x10bc5e7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match - 17: 0x10b6f3cdc - ::analyze_patterns - 18: 0x10b6f40ec - ::check_match - 19: 0x10b6f8434 - ::visit_expr - 20: 0x10b6f8528 - ::visit_expr - 21: 0x10b6f84bc - ::visit_expr - 22: 0x10b6f8528 - ::visit_expr - 23: 0x10b6f2ff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match - 24: 0x10bdd577c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 25: 0x10bf7f3a0 - >::call_once - 26: 0x10bd78810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 27: 0x10be87344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace - 28: 0x10b6ba1cc - rustc_mir_build[b901493b8efe2247]::build::mir_build - 29: 0x10b988444 - rustc_mir_transform[c96d82c34d21a979]::mir_built - 30: 0x10bddb5f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 31: 0x10bf09430 - >::call_once - 32: 0x10bd7fb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 33: 0x10bf75984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace - 34: 0x10b726bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety - 35: 0x10bdd60d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 36: 0x10bf7fbd4 - >::call_once - 37: 0x10bd72ab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 38: 0x10bf4d870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace - 39: 0x10b254478 - ::par_body_owners::::{closure#0} - 40: 0x10b258d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> - 41: 0x10b29cc10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> - 42: 0x10b239354 - rustc_interface[27038c4421a9b2f6]::passes::analysis - 43: 0x10bddb1ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 44: 0x10bf2a1ec - >::call_once - 45: 0x10bcf53d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 46: 0x10bf2a9a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace - 47: 0x10aaf68f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> - 48: 0x10aa9eb44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 49: 0x10aadbf84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 50: 0x10aac483c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> - 51: 0x10aae4b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 52: 0x10aad078c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} - 53: 0x1013bc9fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d - 54: 0x18cdb5f94 - __pthread_joiner_wake - - -query stack during panic: -#0 [check_match] match-checking `sibling::::is_sub_type` -#1 [mir_built] building MIR for `sibling::::is_sub_type` -#2 [check_unsafety] unsafety-checking `sibling::::is_sub_type` -#3 [analysis] running analysis passes on this crate -end of query stack diff --git a/rustc-ice-2024-08-19T09_56_32-34759.txt b/rustc-ice-2024-08-19T09_56_32-34759.txt deleted file mode 100644 index e587ff69b..000000000 --- a/rustc-ice-2024-08-19T09_56_32-34759.txt +++ /dev/null @@ -1,599 +0,0 @@ -thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: -Box -stack backtrace: - 0: 0x103dd708c - std::backtrace::Backtrace::create::hd742e30c04b0f85c - 1: 0x10d5224a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call - 2: 0x103deffc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 - 3: 0x10d5ac10c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} - 4: 0x10d5abd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> - 5: 0x111677920 - std[fab435055a7fab56]::panicking::begin_panic:: - 6: 0x10d59f750 - ::emit_producing_guarantee - 7: 0x10e02bb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} - 8: 0x10e02ab88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} - 9: 0x10e02ab54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> - 10: 0x111718cdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt - 11: 0x10df8e950 - >::fold_ty - 12: 0x10e67460c - ::ctor_sub_tys - 13: 0x10e676178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 14: 0x10e6769c8 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 15: 0x10e6792ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: - 16: 0x10e69a7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match - 17: 0x10e12fcdc - ::analyze_patterns - 18: 0x10e1300ec - ::check_match - 19: 0x10e134434 - ::visit_expr - 20: 0x10e134528 - ::visit_expr - 21: 0x10e1344bc - ::visit_expr - 22: 0x10e134528 - ::visit_expr - 23: 0x10e12eff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match - 24: 0x10e81177c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 25: 0x10e9bb3a0 - >::call_once - 26: 0x10e7b4810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 27: 0x10e8c3344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace - 28: 0x10e0f61cc - rustc_mir_build[b901493b8efe2247]::build::mir_build - 29: 0x10e3c4444 - rustc_mir_transform[c96d82c34d21a979]::mir_built - 30: 0x10e8175f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 31: 0x10e945430 - >::call_once - 32: 0x10e7bbb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 33: 0x10e9b1984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace - 34: 0x10e162bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety - 35: 0x10e8120d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 36: 0x10e9bbbd4 - >::call_once - 37: 0x10e7aeab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 38: 0x10e989870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace - 39: 0x10dc90478 - ::par_body_owners::::{closure#0} - 40: 0x10dc94d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> - 41: 0x10dcd8c10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> - 42: 0x10dc75354 - rustc_interface[27038c4421a9b2f6]::passes::analysis - 43: 0x10e8171ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 44: 0x10e9661ec - >::call_once - 45: 0x10e7313d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 46: 0x10e9669a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace - 47: 0x10d5328f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> - 48: 0x10d4dab44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 49: 0x10d517f84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 50: 0x10d50083c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> - 51: 0x10d520b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 52: 0x10d50c78c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} - 53: 0x103df89fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d - 54: 0x18cdb5f94 - __pthread_joiner_wake - - -rustc version: 1.79.0-nightly (becebb315 2024-04-17) -platform: aarch64-apple-darwin - -query stack during panic: -#0 [check_match] match-checking `sibling::::clone` -#1 [mir_built] building MIR for `sibling::::clone` -#2 [check_unsafety] unsafety-checking `sibling::::clone` -#3 [analysis] running analysis passes on this crate -end of query stack -thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: -Box -stack backtrace: - 0: 0x103dd708c - std::backtrace::Backtrace::create::hd742e30c04b0f85c - 1: 0x10d5224a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call - 2: 0x103deffc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 - 3: 0x10d5ac10c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} - 4: 0x10d5abd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> - 5: 0x111677920 - std[fab435055a7fab56]::panicking::begin_panic:: - 6: 0x10d59f750 - ::emit_producing_guarantee - 7: 0x10e02bb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} - 8: 0x10e02ab88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} - 9: 0x10e02ab54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> - 10: 0x111718cdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt - 11: 0x10df8e950 - >::fold_ty - 12: 0x10e67460c - ::ctor_sub_tys - 13: 0x10e676178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 14: 0x10e6769c8 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 15: 0x10e6769c8 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 16: 0x10e6792ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: - 17: 0x10e69a7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match - 18: 0x10e12fcdc - ::analyze_patterns - 19: 0x10e1300ec - ::check_match - 20: 0x10e134434 - ::visit_expr - 21: 0x10e134528 - ::visit_expr - 22: 0x10e1344bc - ::visit_expr - 23: 0x10e134528 - ::visit_expr - 24: 0x10e1344bc - ::visit_expr - 25: 0x10e134528 - ::visit_expr - 26: 0x10e12eff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match - 27: 0x10e81177c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 28: 0x10e9bb3a0 - >::call_once - 29: 0x10e7b4810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 30: 0x10e8c3344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace - 31: 0x10e0f61cc - rustc_mir_build[b901493b8efe2247]::build::mir_build - 32: 0x10e3c4444 - rustc_mir_transform[c96d82c34d21a979]::mir_built - 33: 0x10e8175f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 34: 0x10e945430 - >::call_once - 35: 0x10e7bbb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 36: 0x10e9b1984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace - 37: 0x10e162bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety - 38: 0x10e8120d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 39: 0x10e9bbbd4 - >::call_once - 40: 0x10e7aeab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 41: 0x10e989870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace - 42: 0x10dc90478 - ::par_body_owners::::{closure#0} - 43: 0x10dc94d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> - 44: 0x10dcd8c10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> - 45: 0x10dc75354 - rustc_interface[27038c4421a9b2f6]::passes::analysis - 46: 0x10e8171ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 47: 0x10e9661ec - >::call_once - 48: 0x10e7313d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 49: 0x10e9669a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace - 50: 0x10d5328f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> - 51: 0x10d4dab44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 52: 0x10d517f84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 53: 0x10d50083c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> - 54: 0x10d520b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 55: 0x10d50c78c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} - 56: 0x103df89fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d - 57: 0x18cdb5f94 - __pthread_joiner_wake - - -query stack during panic: -#0 [check_match] match-checking `sibling::::eq` -#1 [mir_built] building MIR for `sibling::::eq` -#2 [check_unsafety] unsafety-checking `sibling::::eq` -#3 [analysis] running analysis passes on this crate -end of query stack -thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: -Box -stack backtrace: - 0: 0x103dd708c - std::backtrace::Backtrace::create::hd742e30c04b0f85c - 1: 0x10d5224a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call - 2: 0x103deffc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 - 3: 0x10d5ac10c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} - 4: 0x10d5abd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> - 5: 0x111677920 - std[fab435055a7fab56]::panicking::begin_panic:: - 6: 0x10d59f750 - ::emit_producing_guarantee - 7: 0x10e02bb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} - 8: 0x10e02ab88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} - 9: 0x10e02ab54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> - 10: 0x111718cdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt - 11: 0x10df8e950 - >::fold_ty - 12: 0x10e67460c - ::ctor_sub_tys - 13: 0x10e676178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 14: 0x10e6792ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: - 15: 0x10e69a7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match - 16: 0x10e12fcdc - ::analyze_patterns - 17: 0x10e1300ec - ::check_match - 18: 0x10e134434 - ::visit_expr - 19: 0x10e134528 - ::visit_expr - 20: 0x10e1344bc - ::visit_expr - 21: 0x10e134528 - ::visit_expr - 22: 0x10e1344bc - ::visit_expr - 23: 0x10e134528 - ::visit_expr - 24: 0x10e12eff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match - 25: 0x10e81177c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 26: 0x10e9bb3a0 - >::call_once - 27: 0x10e7b4810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 28: 0x10e8c3344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace - 29: 0x10e0f61cc - rustc_mir_build[b901493b8efe2247]::build::mir_build - 30: 0x10e3c4444 - rustc_mir_transform[c96d82c34d21a979]::mir_built - 31: 0x10e8175f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 32: 0x10e945430 - >::call_once - 33: 0x10e7bbb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 34: 0x10e9b1984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace - 35: 0x10e162bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety - 36: 0x10e8120d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 37: 0x10e9bbbd4 - >::call_once - 38: 0x10e7aeab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 39: 0x10e989870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace - 40: 0x10dc90478 - ::par_body_owners::::{closure#0} - 41: 0x10dc94d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> - 42: 0x10dcd8c10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> - 43: 0x10dc75354 - rustc_interface[27038c4421a9b2f6]::passes::analysis - 44: 0x10e8171ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 45: 0x10e9661ec - >::call_once - 46: 0x10e7313d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 47: 0x10e9669a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace - 48: 0x10d5328f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> - 49: 0x10d4dab44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 50: 0x10d517f84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 51: 0x10d50083c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> - 52: 0x10d520b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 53: 0x10d50c78c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} - 54: 0x103df89fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d - 55: 0x18cdb5f94 - __pthread_joiner_wake - - -query stack during panic: -#0 [check_match] match-checking `sibling::_::::size_hint` -#1 [mir_built] building MIR for `sibling::_::::size_hint` -#2 [check_unsafety] unsafety-checking `sibling::_::::size_hint` -#3 [analysis] running analysis passes on this crate -end of query stack -thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: -Box -stack backtrace: - 0: 0x103dd708c - std::backtrace::Backtrace::create::hd742e30c04b0f85c - 1: 0x10d5224a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call - 2: 0x103deffc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 - 3: 0x10d5ac10c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} - 4: 0x10d5abd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> - 5: 0x111677920 - std[fab435055a7fab56]::panicking::begin_panic:: - 6: 0x10d59f750 - ::emit_producing_guarantee - 7: 0x10e02bb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} - 8: 0x10e02ab88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} - 9: 0x10e02ab54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> - 10: 0x111718cdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt - 11: 0x10df8e950 - >::fold_ty - 12: 0x10e67460c - ::ctor_sub_tys - 13: 0x10e676178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 14: 0x10e6792ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: - 15: 0x10e69a7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match - 16: 0x10e12fcdc - ::analyze_patterns - 17: 0x10e1300ec - ::check_match - 18: 0x10e134434 - ::visit_expr - 19: 0x10e134528 - ::visit_expr - 20: 0x10e1344bc - ::visit_expr - 21: 0x10e134528 - ::visit_expr - 22: 0x10e12eff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match - 23: 0x10e81177c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 24: 0x10e9bb3a0 - >::call_once - 25: 0x10e7b4810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 26: 0x10e8c3344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace - 27: 0x10e0f61cc - rustc_mir_build[b901493b8efe2247]::build::mir_build - 28: 0x10e3c4444 - rustc_mir_transform[c96d82c34d21a979]::mir_built - 29: 0x10e8175f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 30: 0x10e945430 - >::call_once - 31: 0x10e7bbb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 32: 0x10e9b1984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace - 33: 0x10e162bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety - 34: 0x10e8120d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 35: 0x10e9bbbd4 - >::call_once - 36: 0x10e7aeab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 37: 0x10e989870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace - 38: 0x10dc90478 - ::par_body_owners::::{closure#0} - 39: 0x10dc94d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> - 40: 0x10dcd8c10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> - 41: 0x10dc75354 - rustc_interface[27038c4421a9b2f6]::passes::analysis - 42: 0x10e8171ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 43: 0x10e9661ec - >::call_once - 44: 0x10e7313d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 45: 0x10e9669a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace - 46: 0x10d5328f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> - 47: 0x10d4dab44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 48: 0x10d517f84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 49: 0x10d50083c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> - 50: 0x10d520b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 51: 0x10d50c78c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} - 52: 0x103df89fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d - 53: 0x18cdb5f94 - __pthread_joiner_wake - - -query stack during panic: -#0 [check_match] match-checking `sibling::_::::encode_to` -#1 [mir_built] building MIR for `sibling::_::::encode_to` -#2 [check_unsafety] unsafety-checking `sibling::_::::encode_to` -#3 [analysis] running analysis passes on this crate -end of query stack -thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: -Box -stack backtrace: - 0: 0x103dd708c - std::backtrace::Backtrace::create::hd742e30c04b0f85c - 1: 0x10d5224a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call - 2: 0x103deffc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 - 3: 0x10d5ac10c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} - 4: 0x10d5abd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> - 5: 0x111677920 - std[fab435055a7fab56]::panicking::begin_panic:: - 6: 0x10d59f750 - ::emit_producing_guarantee - 7: 0x10e02bb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} - 8: 0x10e02ab88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} - 9: 0x10e02ab54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> - 10: 0x111718cdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt - 11: 0x10df8e950 - >::fold_ty - 12: 0x10e67460c - ::ctor_sub_tys - 13: 0x10e676178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 14: 0x10e6769c8 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 15: 0x10e6792ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: - 16: 0x10e69a7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match - 17: 0x10e12fcdc - ::analyze_patterns - 18: 0x10e1300ec - ::check_match - 19: 0x10e134434 - ::visit_expr - 20: 0x10e134528 - ::visit_expr - 21: 0x10e1344bc - ::visit_expr - 22: 0x10e134528 - ::visit_expr - 23: 0x10e12eff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match - 24: 0x10e81177c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 25: 0x10e9bb3a0 - >::call_once - 26: 0x10e7b4810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 27: 0x10e8c3344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace - 28: 0x10e0f61cc - rustc_mir_build[b901493b8efe2247]::build::mir_build - 29: 0x10e3c4444 - rustc_mir_transform[c96d82c34d21a979]::mir_built - 30: 0x10e8175f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 31: 0x10e945430 - >::call_once - 32: 0x10e7bbb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 33: 0x10e9b1984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace - 34: 0x10e162bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety - 35: 0x10e8120d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 36: 0x10e9bbbd4 - >::call_once - 37: 0x10e7aeab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 38: 0x10e989870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace - 39: 0x10dc90478 - ::par_body_owners::::{closure#0} - 40: 0x10dc94d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> - 41: 0x10dcd8c10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> - 42: 0x10dc75354 - rustc_interface[27038c4421a9b2f6]::passes::analysis - 43: 0x10e8171ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 44: 0x10e9661ec - >::call_once - 45: 0x10e7313d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 46: 0x10e9669a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace - 47: 0x10d5328f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> - 48: 0x10d4dab44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 49: 0x10d517f84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 50: 0x10d50083c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> - 51: 0x10d520b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 52: 0x10d50c78c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} - 53: 0x103df89fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d - 54: 0x18cdb5f94 - __pthread_joiner_wake - - -query stack during panic: -#0 [check_match] match-checking `sibling::::fmt` -#1 [mir_built] building MIR for `sibling::::fmt` -#2 [check_unsafety] unsafety-checking `sibling::::fmt` -#3 [analysis] running analysis passes on this crate -end of query stack -thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: -Box -stack backtrace: - 0: 0x103dd708c - std::backtrace::Backtrace::create::hd742e30c04b0f85c - 1: 0x10d5224a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call - 2: 0x103deffc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 - 3: 0x10d5ac10c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} - 4: 0x10d5abd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> - 5: 0x111677920 - std[fab435055a7fab56]::panicking::begin_panic:: - 6: 0x10d59f750 - ::emit_producing_guarantee - 7: 0x10e02bb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} - 8: 0x10e02ab88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} - 9: 0x10e02ab54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> - 10: 0x111718cdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt - 11: 0x10df8e950 - >::fold_ty - 12: 0x10e67460c - ::ctor_sub_tys - 13: 0x10e676178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 14: 0x10e6769c8 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 15: 0x10e6792ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: - 16: 0x10e69a7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match - 17: 0x10e12fcdc - ::analyze_patterns - 18: 0x10e1300ec - ::check_match - 19: 0x10e134434 - ::visit_expr - 20: 0x10e134528 - ::visit_expr - 21: 0x10e1344bc - ::visit_expr - 22: 0x10e134528 - ::visit_expr - 23: 0x10e12eff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match - 24: 0x10e81177c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 25: 0x10e9bb3a0 - >::call_once - 26: 0x10e7b4810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 27: 0x10e8c3344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace - 28: 0x10e0f61cc - rustc_mir_build[b901493b8efe2247]::build::mir_build - 29: 0x10e3c4444 - rustc_mir_transform[c96d82c34d21a979]::mir_built - 30: 0x10e8175f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 31: 0x10e945430 - >::call_once - 32: 0x10e7bbb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 33: 0x10e9b1984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace - 34: 0x10e162bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety - 35: 0x10e8120d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 36: 0x10e9bbbd4 - >::call_once - 37: 0x10e7aeab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 38: 0x10e989870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace - 39: 0x10dc90478 - ::par_body_owners::::{closure#0} - 40: 0x10dc94d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> - 41: 0x10dcd8c10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> - 42: 0x10dc75354 - rustc_interface[27038c4421a9b2f6]::passes::analysis - 43: 0x10e8171ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 44: 0x10e9661ec - >::call_once - 45: 0x10e7313d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 46: 0x10e9669a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace - 47: 0x10d5328f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> - 48: 0x10d4dab44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 49: 0x10d517f84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 50: 0x10d50083c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> - 51: 0x10d520b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 52: 0x10d50c78c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} - 53: 0x103df89fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d - 54: 0x18cdb5f94 - __pthread_joiner_wake - - -query stack during panic: -#0 [check_match] match-checking `sibling::::get_dispatch_info` -#1 [mir_built] building MIR for `sibling::::get_dispatch_info` -#2 [check_unsafety] unsafety-checking `sibling::::get_dispatch_info` -#3 [analysis] running analysis passes on this crate -end of query stack -thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: -Box -stack backtrace: - 0: 0x103dd708c - std::backtrace::Backtrace::create::hd742e30c04b0f85c - 1: 0x10d5224a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call - 2: 0x103deffc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 - 3: 0x10d5ac10c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} - 4: 0x10d5abd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> - 5: 0x111677920 - std[fab435055a7fab56]::panicking::begin_panic:: - 6: 0x10d59f750 - ::emit_producing_guarantee - 7: 0x10e02bb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} - 8: 0x10e02ab88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} - 9: 0x10e02ab54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> - 10: 0x111718cdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt - 11: 0x10df8e950 - >::fold_ty - 12: 0x10e67460c - ::ctor_sub_tys - 13: 0x10e676178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 14: 0x10e6769c8 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 15: 0x10e6792ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: - 16: 0x10e69a7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match - 17: 0x10e12fcdc - ::analyze_patterns - 18: 0x10e1300ec - ::check_match - 19: 0x10e134434 - ::visit_expr - 20: 0x10e134528 - ::visit_expr - 21: 0x10e1344bc - ::visit_expr - 22: 0x10e134528 - ::visit_expr - 23: 0x10e12eff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match - 24: 0x10e81177c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 25: 0x10e9bb3a0 - >::call_once - 26: 0x10e7b4810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 27: 0x10e8c3344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace - 28: 0x10e0f61cc - rustc_mir_build[b901493b8efe2247]::build::mir_build - 29: 0x10e3c4444 - rustc_mir_transform[c96d82c34d21a979]::mir_built - 30: 0x10e8175f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 31: 0x10e945430 - >::call_once - 32: 0x10e7bbb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 33: 0x10e9b1984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace - 34: 0x10e162bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety - 35: 0x10e8120d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 36: 0x10e9bbbd4 - >::call_once - 37: 0x10e7aeab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 38: 0x10e989870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace - 39: 0x10dc90478 - ::par_body_owners::::{closure#0} - 40: 0x10dc94d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> - 41: 0x10dcd8c10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> - 42: 0x10dc75354 - rustc_interface[27038c4421a9b2f6]::passes::analysis - 43: 0x10e8171ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 44: 0x10e9661ec - >::call_once - 45: 0x10e7313d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 46: 0x10e9669a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace - 47: 0x10d5328f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> - 48: 0x10d4dab44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 49: 0x10d517f84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 50: 0x10d50083c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> - 51: 0x10d520b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 52: 0x10d50c78c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} - 53: 0x103df89fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d - 54: 0x18cdb5f94 - __pthread_joiner_wake - - -query stack during panic: -#0 [check_match] match-checking `sibling::::get_call_metadata` -#1 [mir_built] building MIR for `sibling::::get_call_metadata` -#2 [check_unsafety] unsafety-checking `sibling::::get_call_metadata` -#3 [analysis] running analysis passes on this crate -end of query stack -thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: -Box -stack backtrace: - 0: 0x103dd708c - std::backtrace::Backtrace::create::hd742e30c04b0f85c - 1: 0x10d5224a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call - 2: 0x103deffc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 - 3: 0x10d5ac10c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} - 4: 0x10d5abd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> - 5: 0x111677920 - std[fab435055a7fab56]::panicking::begin_panic:: - 6: 0x10d59f750 - ::emit_producing_guarantee - 7: 0x10e02bb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} - 8: 0x10e02ab88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} - 9: 0x10e02ab54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> - 10: 0x111718cdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt - 11: 0x10df8e950 - >::fold_ty - 12: 0x10e67460c - ::ctor_sub_tys - 13: 0x10e676178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 14: 0x10e6792ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: - 15: 0x10e69a7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match - 16: 0x10e12fcdc - ::analyze_patterns - 17: 0x10e1300ec - ::check_match - 18: 0x10e134434 - ::visit_expr - 19: 0x10e134528 - ::visit_expr - 20: 0x10e1344bc - ::visit_expr - 21: 0x10e134528 - ::visit_expr - 22: 0x10e12eff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match - 23: 0x10e81177c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 24: 0x10e9bb3a0 - >::call_once - 25: 0x10e7b4810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 26: 0x10e8c3344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace - 27: 0x10e0f61cc - rustc_mir_build[b901493b8efe2247]::build::mir_build - 28: 0x10e3c4444 - rustc_mir_transform[c96d82c34d21a979]::mir_built - 29: 0x10e8175f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 30: 0x10e945430 - >::call_once - 31: 0x10e7bbb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 32: 0x10e9b1984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace - 33: 0x10e162bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety - 34: 0x10e8120d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 35: 0x10e9bbbd4 - >::call_once - 36: 0x10e7aeab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 37: 0x10e989870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace - 38: 0x10dc90478 - ::par_body_owners::::{closure#0} - 39: 0x10dc94d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> - 40: 0x10dcd8c10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> - 41: 0x10dc75354 - rustc_interface[27038c4421a9b2f6]::passes::analysis - 42: 0x10e8171ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 43: 0x10e9661ec - >::call_once - 44: 0x10e7313d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 45: 0x10e9669a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace - 46: 0x10d5328f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> - 47: 0x10d4dab44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 48: 0x10d517f84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 49: 0x10d50083c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> - 50: 0x10d520b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 51: 0x10d50c78c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} - 52: 0x103df89fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d - 53: 0x18cdb5f94 - __pthread_joiner_wake - - -query stack during panic: -#0 [check_match] match-checking `sibling::::dispatch_bypass_filter` -#1 [mir_built] building MIR for `sibling::::dispatch_bypass_filter` -#2 [check_unsafety] unsafety-checking `sibling::::dispatch_bypass_filter` -#3 [analysis] running analysis passes on this crate -end of query stack -thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: -Box -stack backtrace: - 0: 0x103dd708c - std::backtrace::Backtrace::create::hd742e30c04b0f85c - 1: 0x10d5224a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call - 2: 0x103deffc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 - 3: 0x10d5ac10c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} - 4: 0x10d5abd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> - 5: 0x111677920 - std[fab435055a7fab56]::panicking::begin_panic:: - 6: 0x10d59f750 - ::emit_producing_guarantee - 7: 0x10e02bb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} - 8: 0x10e02ab88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} - 9: 0x10e02ab54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> - 10: 0x111718cdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt - 11: 0x10df8e950 - >::fold_ty - 12: 0x10e67460c - ::ctor_sub_tys - 13: 0x10e676178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 14: 0x10e6769c8 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 15: 0x10e6792ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: - 16: 0x10e69a7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match - 17: 0x10e12fcdc - ::analyze_patterns - 18: 0x10e1300ec - ::check_match - 19: 0x10e134434 - ::visit_expr - 20: 0x10e134528 - ::visit_expr - 21: 0x10e1344bc - ::visit_expr - 22: 0x10e134528 - ::visit_expr - 23: 0x10e12eff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match - 24: 0x10e81177c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 25: 0x10e9bb3a0 - >::call_once - 26: 0x10e7b4810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 27: 0x10e8c3344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace - 28: 0x10e0f61cc - rustc_mir_build[b901493b8efe2247]::build::mir_build - 29: 0x10e3c4444 - rustc_mir_transform[c96d82c34d21a979]::mir_built - 30: 0x10e8175f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 31: 0x10e945430 - >::call_once - 32: 0x10e7bbb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 33: 0x10e9b1984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace - 34: 0x10e162bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety - 35: 0x10e8120d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 36: 0x10e9bbbd4 - >::call_once - 37: 0x10e7aeab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 38: 0x10e989870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace - 39: 0x10dc90478 - ::par_body_owners::::{closure#0} - 40: 0x10dc94d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> - 41: 0x10dcd8c10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> - 42: 0x10dc75354 - rustc_interface[27038c4421a9b2f6]::passes::analysis - 43: 0x10e8171ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 44: 0x10e9661ec - >::call_once - 45: 0x10e7313d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 46: 0x10e9669a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace - 47: 0x10d5328f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> - 48: 0x10d4dab44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 49: 0x10d517f84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 50: 0x10d50083c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> - 51: 0x10d520b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 52: 0x10d50c78c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} - 53: 0x103df89fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d - 54: 0x18cdb5f94 - __pthread_joiner_wake - - -query stack during panic: -#0 [check_match] match-checking `sibling::::is_sub_type` -#1 [mir_built] building MIR for `sibling::::is_sub_type` -#2 [check_unsafety] unsafety-checking `sibling::::is_sub_type` -#3 [analysis] running analysis passes on this crate -end of query stack diff --git a/rustc-ice-2024-08-19T10_33_10-40406.txt b/rustc-ice-2024-08-19T10_33_10-40406.txt deleted file mode 100644 index 2d9aaf816..000000000 --- a/rustc-ice-2024-08-19T10_33_10-40406.txt +++ /dev/null @@ -1,599 +0,0 @@ -thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: -Box -stack backtrace: - 0: 0x1031b708c - std::backtrace::Backtrace::create::hd742e30c04b0f85c - 1: 0x10c9024a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call - 2: 0x1031cffc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 - 3: 0x10c98c10c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} - 4: 0x10c98bd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> - 5: 0x110a57920 - std[fab435055a7fab56]::panicking::begin_panic:: - 6: 0x10c97f750 - ::emit_producing_guarantee - 7: 0x10d40bb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} - 8: 0x10d40ab88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} - 9: 0x10d40ab54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> - 10: 0x110af8cdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt - 11: 0x10d36e950 - >::fold_ty - 12: 0x10da5460c - ::ctor_sub_tys - 13: 0x10da56178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 14: 0x10da569c8 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 15: 0x10da592ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: - 16: 0x10da7a7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match - 17: 0x10d50fcdc - ::analyze_patterns - 18: 0x10d5100ec - ::check_match - 19: 0x10d514434 - ::visit_expr - 20: 0x10d514528 - ::visit_expr - 21: 0x10d5144bc - ::visit_expr - 22: 0x10d514528 - ::visit_expr - 23: 0x10d50eff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match - 24: 0x10dbf177c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 25: 0x10dd9b3a0 - >::call_once - 26: 0x10db94810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 27: 0x10dca3344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace - 28: 0x10d4d61cc - rustc_mir_build[b901493b8efe2247]::build::mir_build - 29: 0x10d7a4444 - rustc_mir_transform[c96d82c34d21a979]::mir_built - 30: 0x10dbf75f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 31: 0x10dd25430 - >::call_once - 32: 0x10db9bb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 33: 0x10dd91984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace - 34: 0x10d542bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety - 35: 0x10dbf20d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 36: 0x10dd9bbd4 - >::call_once - 37: 0x10db8eab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 38: 0x10dd69870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace - 39: 0x10d070478 - ::par_body_owners::::{closure#0} - 40: 0x10d074d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> - 41: 0x10d0b8c10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> - 42: 0x10d055354 - rustc_interface[27038c4421a9b2f6]::passes::analysis - 43: 0x10dbf71ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 44: 0x10dd461ec - >::call_once - 45: 0x10db113d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 46: 0x10dd469a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace - 47: 0x10c9128f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> - 48: 0x10c8bab44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 49: 0x10c8f7f84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 50: 0x10c8e083c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> - 51: 0x10c900b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 52: 0x10c8ec78c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} - 53: 0x1031d89fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d - 54: 0x18cdb5f94 - __pthread_joiner_wake - - -rustc version: 1.79.0-nightly (becebb315 2024-04-17) -platform: aarch64-apple-darwin - -query stack during panic: -#0 [check_match] match-checking `sibling::::clone` -#1 [mir_built] building MIR for `sibling::::clone` -#2 [check_unsafety] unsafety-checking `sibling::::clone` -#3 [analysis] running analysis passes on this crate -end of query stack -thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: -Box -stack backtrace: - 0: 0x1031b708c - std::backtrace::Backtrace::create::hd742e30c04b0f85c - 1: 0x10c9024a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call - 2: 0x1031cffc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 - 3: 0x10c98c10c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} - 4: 0x10c98bd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> - 5: 0x110a57920 - std[fab435055a7fab56]::panicking::begin_panic:: - 6: 0x10c97f750 - ::emit_producing_guarantee - 7: 0x10d40bb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} - 8: 0x10d40ab88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} - 9: 0x10d40ab54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> - 10: 0x110af8cdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt - 11: 0x10d36e950 - >::fold_ty - 12: 0x10da5460c - ::ctor_sub_tys - 13: 0x10da56178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 14: 0x10da569c8 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 15: 0x10da569c8 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 16: 0x10da592ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: - 17: 0x10da7a7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match - 18: 0x10d50fcdc - ::analyze_patterns - 19: 0x10d5100ec - ::check_match - 20: 0x10d514434 - ::visit_expr - 21: 0x10d514528 - ::visit_expr - 22: 0x10d5144bc - ::visit_expr - 23: 0x10d514528 - ::visit_expr - 24: 0x10d5144bc - ::visit_expr - 25: 0x10d514528 - ::visit_expr - 26: 0x10d50eff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match - 27: 0x10dbf177c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 28: 0x10dd9b3a0 - >::call_once - 29: 0x10db94810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 30: 0x10dca3344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace - 31: 0x10d4d61cc - rustc_mir_build[b901493b8efe2247]::build::mir_build - 32: 0x10d7a4444 - rustc_mir_transform[c96d82c34d21a979]::mir_built - 33: 0x10dbf75f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 34: 0x10dd25430 - >::call_once - 35: 0x10db9bb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 36: 0x10dd91984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace - 37: 0x10d542bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety - 38: 0x10dbf20d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 39: 0x10dd9bbd4 - >::call_once - 40: 0x10db8eab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 41: 0x10dd69870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace - 42: 0x10d070478 - ::par_body_owners::::{closure#0} - 43: 0x10d074d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> - 44: 0x10d0b8c10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> - 45: 0x10d055354 - rustc_interface[27038c4421a9b2f6]::passes::analysis - 46: 0x10dbf71ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 47: 0x10dd461ec - >::call_once - 48: 0x10db113d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 49: 0x10dd469a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace - 50: 0x10c9128f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> - 51: 0x10c8bab44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 52: 0x10c8f7f84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 53: 0x10c8e083c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> - 54: 0x10c900b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 55: 0x10c8ec78c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} - 56: 0x1031d89fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d - 57: 0x18cdb5f94 - __pthread_joiner_wake - - -query stack during panic: -#0 [check_match] match-checking `sibling::::eq` -#1 [mir_built] building MIR for `sibling::::eq` -#2 [check_unsafety] unsafety-checking `sibling::::eq` -#3 [analysis] running analysis passes on this crate -end of query stack -thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: -Box -stack backtrace: - 0: 0x1031b708c - std::backtrace::Backtrace::create::hd742e30c04b0f85c - 1: 0x10c9024a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call - 2: 0x1031cffc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 - 3: 0x10c98c10c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} - 4: 0x10c98bd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> - 5: 0x110a57920 - std[fab435055a7fab56]::panicking::begin_panic:: - 6: 0x10c97f750 - ::emit_producing_guarantee - 7: 0x10d40bb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} - 8: 0x10d40ab88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} - 9: 0x10d40ab54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> - 10: 0x110af8cdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt - 11: 0x10d36e950 - >::fold_ty - 12: 0x10da5460c - ::ctor_sub_tys - 13: 0x10da56178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 14: 0x10da592ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: - 15: 0x10da7a7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match - 16: 0x10d50fcdc - ::analyze_patterns - 17: 0x10d5100ec - ::check_match - 18: 0x10d514434 - ::visit_expr - 19: 0x10d514528 - ::visit_expr - 20: 0x10d5144bc - ::visit_expr - 21: 0x10d514528 - ::visit_expr - 22: 0x10d5144bc - ::visit_expr - 23: 0x10d514528 - ::visit_expr - 24: 0x10d50eff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match - 25: 0x10dbf177c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 26: 0x10dd9b3a0 - >::call_once - 27: 0x10db94810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 28: 0x10dca3344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace - 29: 0x10d4d61cc - rustc_mir_build[b901493b8efe2247]::build::mir_build - 30: 0x10d7a4444 - rustc_mir_transform[c96d82c34d21a979]::mir_built - 31: 0x10dbf75f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 32: 0x10dd25430 - >::call_once - 33: 0x10db9bb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 34: 0x10dd91984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace - 35: 0x10d542bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety - 36: 0x10dbf20d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 37: 0x10dd9bbd4 - >::call_once - 38: 0x10db8eab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 39: 0x10dd69870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace - 40: 0x10d070478 - ::par_body_owners::::{closure#0} - 41: 0x10d074d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> - 42: 0x10d0b8c10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> - 43: 0x10d055354 - rustc_interface[27038c4421a9b2f6]::passes::analysis - 44: 0x10dbf71ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 45: 0x10dd461ec - >::call_once - 46: 0x10db113d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 47: 0x10dd469a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace - 48: 0x10c9128f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> - 49: 0x10c8bab44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 50: 0x10c8f7f84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 51: 0x10c8e083c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> - 52: 0x10c900b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 53: 0x10c8ec78c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} - 54: 0x1031d89fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d - 55: 0x18cdb5f94 - __pthread_joiner_wake - - -query stack during panic: -#0 [check_match] match-checking `sibling::_::::size_hint` -#1 [mir_built] building MIR for `sibling::_::::size_hint` -#2 [check_unsafety] unsafety-checking `sibling::_::::size_hint` -#3 [analysis] running analysis passes on this crate -end of query stack -thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: -Box -stack backtrace: - 0: 0x1031b708c - std::backtrace::Backtrace::create::hd742e30c04b0f85c - 1: 0x10c9024a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call - 2: 0x1031cffc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 - 3: 0x10c98c10c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} - 4: 0x10c98bd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> - 5: 0x110a57920 - std[fab435055a7fab56]::panicking::begin_panic:: - 6: 0x10c97f750 - ::emit_producing_guarantee - 7: 0x10d40bb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} - 8: 0x10d40ab88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} - 9: 0x10d40ab54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> - 10: 0x110af8cdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt - 11: 0x10d36e950 - >::fold_ty - 12: 0x10da5460c - ::ctor_sub_tys - 13: 0x10da56178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 14: 0x10da592ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: - 15: 0x10da7a7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match - 16: 0x10d50fcdc - ::analyze_patterns - 17: 0x10d5100ec - ::check_match - 18: 0x10d514434 - ::visit_expr - 19: 0x10d514528 - ::visit_expr - 20: 0x10d5144bc - ::visit_expr - 21: 0x10d514528 - ::visit_expr - 22: 0x10d50eff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match - 23: 0x10dbf177c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 24: 0x10dd9b3a0 - >::call_once - 25: 0x10db94810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 26: 0x10dca3344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace - 27: 0x10d4d61cc - rustc_mir_build[b901493b8efe2247]::build::mir_build - 28: 0x10d7a4444 - rustc_mir_transform[c96d82c34d21a979]::mir_built - 29: 0x10dbf75f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 30: 0x10dd25430 - >::call_once - 31: 0x10db9bb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 32: 0x10dd91984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace - 33: 0x10d542bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety - 34: 0x10dbf20d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 35: 0x10dd9bbd4 - >::call_once - 36: 0x10db8eab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 37: 0x10dd69870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace - 38: 0x10d070478 - ::par_body_owners::::{closure#0} - 39: 0x10d074d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> - 40: 0x10d0b8c10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> - 41: 0x10d055354 - rustc_interface[27038c4421a9b2f6]::passes::analysis - 42: 0x10dbf71ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 43: 0x10dd461ec - >::call_once - 44: 0x10db113d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 45: 0x10dd469a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace - 46: 0x10c9128f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> - 47: 0x10c8bab44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 48: 0x10c8f7f84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 49: 0x10c8e083c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> - 50: 0x10c900b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 51: 0x10c8ec78c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} - 52: 0x1031d89fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d - 53: 0x18cdb5f94 - __pthread_joiner_wake - - -query stack during panic: -#0 [check_match] match-checking `sibling::_::::encode_to` -#1 [mir_built] building MIR for `sibling::_::::encode_to` -#2 [check_unsafety] unsafety-checking `sibling::_::::encode_to` -#3 [analysis] running analysis passes on this crate -end of query stack -thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: -Box -stack backtrace: - 0: 0x1031b708c - std::backtrace::Backtrace::create::hd742e30c04b0f85c - 1: 0x10c9024a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call - 2: 0x1031cffc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 - 3: 0x10c98c10c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} - 4: 0x10c98bd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> - 5: 0x110a57920 - std[fab435055a7fab56]::panicking::begin_panic:: - 6: 0x10c97f750 - ::emit_producing_guarantee - 7: 0x10d40bb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} - 8: 0x10d40ab88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} - 9: 0x10d40ab54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> - 10: 0x110af8cdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt - 11: 0x10d36e950 - >::fold_ty - 12: 0x10da5460c - ::ctor_sub_tys - 13: 0x10da56178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 14: 0x10da569c8 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 15: 0x10da592ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: - 16: 0x10da7a7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match - 17: 0x10d50fcdc - ::analyze_patterns - 18: 0x10d5100ec - ::check_match - 19: 0x10d514434 - ::visit_expr - 20: 0x10d514528 - ::visit_expr - 21: 0x10d5144bc - ::visit_expr - 22: 0x10d514528 - ::visit_expr - 23: 0x10d50eff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match - 24: 0x10dbf177c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 25: 0x10dd9b3a0 - >::call_once - 26: 0x10db94810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 27: 0x10dca3344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace - 28: 0x10d4d61cc - rustc_mir_build[b901493b8efe2247]::build::mir_build - 29: 0x10d7a4444 - rustc_mir_transform[c96d82c34d21a979]::mir_built - 30: 0x10dbf75f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 31: 0x10dd25430 - >::call_once - 32: 0x10db9bb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 33: 0x10dd91984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace - 34: 0x10d542bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety - 35: 0x10dbf20d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 36: 0x10dd9bbd4 - >::call_once - 37: 0x10db8eab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 38: 0x10dd69870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace - 39: 0x10d070478 - ::par_body_owners::::{closure#0} - 40: 0x10d074d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> - 41: 0x10d0b8c10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> - 42: 0x10d055354 - rustc_interface[27038c4421a9b2f6]::passes::analysis - 43: 0x10dbf71ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 44: 0x10dd461ec - >::call_once - 45: 0x10db113d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 46: 0x10dd469a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace - 47: 0x10c9128f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> - 48: 0x10c8bab44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 49: 0x10c8f7f84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 50: 0x10c8e083c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> - 51: 0x10c900b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 52: 0x10c8ec78c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} - 53: 0x1031d89fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d - 54: 0x18cdb5f94 - __pthread_joiner_wake - - -query stack during panic: -#0 [check_match] match-checking `sibling::::fmt` -#1 [mir_built] building MIR for `sibling::::fmt` -#2 [check_unsafety] unsafety-checking `sibling::::fmt` -#3 [analysis] running analysis passes on this crate -end of query stack -thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: -Box -stack backtrace: - 0: 0x1031b708c - std::backtrace::Backtrace::create::hd742e30c04b0f85c - 1: 0x10c9024a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call - 2: 0x1031cffc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 - 3: 0x10c98c10c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} - 4: 0x10c98bd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> - 5: 0x110a57920 - std[fab435055a7fab56]::panicking::begin_panic:: - 6: 0x10c97f750 - ::emit_producing_guarantee - 7: 0x10d40bb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} - 8: 0x10d40ab88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} - 9: 0x10d40ab54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> - 10: 0x110af8cdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt - 11: 0x10d36e950 - >::fold_ty - 12: 0x10da5460c - ::ctor_sub_tys - 13: 0x10da56178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 14: 0x10da569c8 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 15: 0x10da592ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: - 16: 0x10da7a7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match - 17: 0x10d50fcdc - ::analyze_patterns - 18: 0x10d5100ec - ::check_match - 19: 0x10d514434 - ::visit_expr - 20: 0x10d514528 - ::visit_expr - 21: 0x10d5144bc - ::visit_expr - 22: 0x10d514528 - ::visit_expr - 23: 0x10d50eff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match - 24: 0x10dbf177c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 25: 0x10dd9b3a0 - >::call_once - 26: 0x10db94810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 27: 0x10dca3344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace - 28: 0x10d4d61cc - rustc_mir_build[b901493b8efe2247]::build::mir_build - 29: 0x10d7a4444 - rustc_mir_transform[c96d82c34d21a979]::mir_built - 30: 0x10dbf75f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 31: 0x10dd25430 - >::call_once - 32: 0x10db9bb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 33: 0x10dd91984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace - 34: 0x10d542bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety - 35: 0x10dbf20d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 36: 0x10dd9bbd4 - >::call_once - 37: 0x10db8eab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 38: 0x10dd69870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace - 39: 0x10d070478 - ::par_body_owners::::{closure#0} - 40: 0x10d074d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> - 41: 0x10d0b8c10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> - 42: 0x10d055354 - rustc_interface[27038c4421a9b2f6]::passes::analysis - 43: 0x10dbf71ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 44: 0x10dd461ec - >::call_once - 45: 0x10db113d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 46: 0x10dd469a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace - 47: 0x10c9128f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> - 48: 0x10c8bab44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 49: 0x10c8f7f84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 50: 0x10c8e083c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> - 51: 0x10c900b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 52: 0x10c8ec78c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} - 53: 0x1031d89fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d - 54: 0x18cdb5f94 - __pthread_joiner_wake - - -query stack during panic: -#0 [check_match] match-checking `sibling::::get_dispatch_info` -#1 [mir_built] building MIR for `sibling::::get_dispatch_info` -#2 [check_unsafety] unsafety-checking `sibling::::get_dispatch_info` -#3 [analysis] running analysis passes on this crate -end of query stack -thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: -Box -stack backtrace: - 0: 0x1031b708c - std::backtrace::Backtrace::create::hd742e30c04b0f85c - 1: 0x10c9024a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call - 2: 0x1031cffc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 - 3: 0x10c98c10c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} - 4: 0x10c98bd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> - 5: 0x110a57920 - std[fab435055a7fab56]::panicking::begin_panic:: - 6: 0x10c97f750 - ::emit_producing_guarantee - 7: 0x10d40bb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} - 8: 0x10d40ab88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} - 9: 0x10d40ab54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> - 10: 0x110af8cdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt - 11: 0x10d36e950 - >::fold_ty - 12: 0x10da5460c - ::ctor_sub_tys - 13: 0x10da56178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 14: 0x10da569c8 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 15: 0x10da592ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: - 16: 0x10da7a7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match - 17: 0x10d50fcdc - ::analyze_patterns - 18: 0x10d5100ec - ::check_match - 19: 0x10d514434 - ::visit_expr - 20: 0x10d514528 - ::visit_expr - 21: 0x10d5144bc - ::visit_expr - 22: 0x10d514528 - ::visit_expr - 23: 0x10d50eff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match - 24: 0x10dbf177c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 25: 0x10dd9b3a0 - >::call_once - 26: 0x10db94810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 27: 0x10dca3344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace - 28: 0x10d4d61cc - rustc_mir_build[b901493b8efe2247]::build::mir_build - 29: 0x10d7a4444 - rustc_mir_transform[c96d82c34d21a979]::mir_built - 30: 0x10dbf75f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 31: 0x10dd25430 - >::call_once - 32: 0x10db9bb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 33: 0x10dd91984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace - 34: 0x10d542bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety - 35: 0x10dbf20d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 36: 0x10dd9bbd4 - >::call_once - 37: 0x10db8eab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 38: 0x10dd69870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace - 39: 0x10d070478 - ::par_body_owners::::{closure#0} - 40: 0x10d074d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> - 41: 0x10d0b8c10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> - 42: 0x10d055354 - rustc_interface[27038c4421a9b2f6]::passes::analysis - 43: 0x10dbf71ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 44: 0x10dd461ec - >::call_once - 45: 0x10db113d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 46: 0x10dd469a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace - 47: 0x10c9128f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> - 48: 0x10c8bab44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 49: 0x10c8f7f84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 50: 0x10c8e083c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> - 51: 0x10c900b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 52: 0x10c8ec78c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} - 53: 0x1031d89fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d - 54: 0x18cdb5f94 - __pthread_joiner_wake - - -query stack during panic: -#0 [check_match] match-checking `sibling::::get_call_metadata` -#1 [mir_built] building MIR for `sibling::::get_call_metadata` -#2 [check_unsafety] unsafety-checking `sibling::::get_call_metadata` -#3 [analysis] running analysis passes on this crate -end of query stack -thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: -Box -stack backtrace: - 0: 0x1031b708c - std::backtrace::Backtrace::create::hd742e30c04b0f85c - 1: 0x10c9024a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call - 2: 0x1031cffc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 - 3: 0x10c98c10c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} - 4: 0x10c98bd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> - 5: 0x110a57920 - std[fab435055a7fab56]::panicking::begin_panic:: - 6: 0x10c97f750 - ::emit_producing_guarantee - 7: 0x10d40bb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} - 8: 0x10d40ab88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} - 9: 0x10d40ab54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> - 10: 0x110af8cdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt - 11: 0x10d36e950 - >::fold_ty - 12: 0x10da5460c - ::ctor_sub_tys - 13: 0x10da56178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 14: 0x10da592ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: - 15: 0x10da7a7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match - 16: 0x10d50fcdc - ::analyze_patterns - 17: 0x10d5100ec - ::check_match - 18: 0x10d514434 - ::visit_expr - 19: 0x10d514528 - ::visit_expr - 20: 0x10d5144bc - ::visit_expr - 21: 0x10d514528 - ::visit_expr - 22: 0x10d50eff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match - 23: 0x10dbf177c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 24: 0x10dd9b3a0 - >::call_once - 25: 0x10db94810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 26: 0x10dca3344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace - 27: 0x10d4d61cc - rustc_mir_build[b901493b8efe2247]::build::mir_build - 28: 0x10d7a4444 - rustc_mir_transform[c96d82c34d21a979]::mir_built - 29: 0x10dbf75f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 30: 0x10dd25430 - >::call_once - 31: 0x10db9bb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 32: 0x10dd91984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace - 33: 0x10d542bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety - 34: 0x10dbf20d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 35: 0x10dd9bbd4 - >::call_once - 36: 0x10db8eab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 37: 0x10dd69870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace - 38: 0x10d070478 - ::par_body_owners::::{closure#0} - 39: 0x10d074d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> - 40: 0x10d0b8c10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> - 41: 0x10d055354 - rustc_interface[27038c4421a9b2f6]::passes::analysis - 42: 0x10dbf71ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 43: 0x10dd461ec - >::call_once - 44: 0x10db113d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 45: 0x10dd469a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace - 46: 0x10c9128f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> - 47: 0x10c8bab44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 48: 0x10c8f7f84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 49: 0x10c8e083c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> - 50: 0x10c900b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 51: 0x10c8ec78c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} - 52: 0x1031d89fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d - 53: 0x18cdb5f94 - __pthread_joiner_wake - - -query stack during panic: -#0 [check_match] match-checking `sibling::::dispatch_bypass_filter` -#1 [mir_built] building MIR for `sibling::::dispatch_bypass_filter` -#2 [check_unsafety] unsafety-checking `sibling::::dispatch_bypass_filter` -#3 [analysis] running analysis passes on this crate -end of query stack -thread 'rustc' panicked at compiler/rustc_middle/src/ty/normalize_erasing_regions.rs:187:90: -Box -stack backtrace: - 0: 0x1031b708c - std::backtrace::Backtrace::create::hd742e30c04b0f85c - 1: 0x10c9024a4 - as core[b3c26d895d81fced]::ops::function::Fn<(&dyn for<'a, 'b> core[b3c26d895d81fced]::ops::function::Fn<(&'a core[b3c26d895d81fced]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[b3c26d895d81fced]::marker::Sync + core[b3c26d895d81fced]::marker::Send, &core[b3c26d895d81fced]::panic::panic_info::PanicInfo)>>::call - 2: 0x1031cffc8 - std::panicking::rust_panic_with_hook::h08681e217444fcc3 - 3: 0x10c98c10c - std[fab435055a7fab56]::panicking::begin_panic::::{closure#0} - 4: 0x10c98bd40 - std[fab435055a7fab56]::sys_common::backtrace::__rust_end_short_backtrace::::{closure#0}, !> - 5: 0x110a57920 - std[fab435055a7fab56]::panicking::begin_panic:: - 6: 0x10c97f750 - ::emit_producing_guarantee - 7: 0x10d40bb24 - rustc_middle[ca9b5102eb104c8a]::util::bug::opt_span_bug_fmt::::{closure#0} - 8: 0x10d40ab88 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_opt::::{closure#0}, !>::{closure#0} - 9: 0x10d40ab54 - rustc_middle[ca9b5102eb104c8a]::ty::context::tls::with_context_opt::::{closure#0}, !>::{closure#0}, !> - 10: 0x110af8cdc - rustc_middle[ca9b5102eb104c8a]::util::bug::bug_fmt - 11: 0x10d36e950 - >::fold_ty - 12: 0x10da5460c - ::ctor_sub_tys - 13: 0x10da56178 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 14: 0x10da569c8 - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_exhaustiveness_and_usefulness:: - 15: 0x10da592ac - rustc_pattern_analysis[4771380fd2d96f41]::usefulness::compute_match_usefulness:: - 16: 0x10da7a7e0 - rustc_pattern_analysis[4771380fd2d96f41]::analyze_match - 17: 0x10d50fcdc - ::analyze_patterns - 18: 0x10d5100ec - ::check_match - 19: 0x10d514434 - ::visit_expr - 20: 0x10d514528 - ::visit_expr - 21: 0x10d5144bc - ::visit_expr - 22: 0x10d514528 - ::visit_expr - 23: 0x10d50eff8 - rustc_mir_build[b901493b8efe2247]::thir::pattern::check_match::check_match - 24: 0x10dbf177c - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 25: 0x10dd9b3a0 - >::call_once - 26: 0x10db94810 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 27: 0x10dca3344 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_match::get_query_incr::__rust_end_short_backtrace - 28: 0x10d4d61cc - rustc_mir_build[b901493b8efe2247]::build::mir_build - 29: 0x10d7a4444 - rustc_mir_transform[c96d82c34d21a979]::mir_built - 30: 0x10dbf75f4 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 31: 0x10dd25430 - >::call_once - 32: 0x10db9bb6c - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 33: 0x10dd91984 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace - 34: 0x10d542bb8 - rustc_mir_build[b901493b8efe2247]::check_unsafety::check_unsafety - 35: 0x10dbf20d0 - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 36: 0x10dd9bbd4 - >::call_once - 37: 0x10db8eab4 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 38: 0x10dd69870 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::check_unsafety::get_query_incr::__rust_end_short_backtrace - 39: 0x10d070478 - ::par_body_owners::::{closure#0} - 40: 0x10d074d68 - ::run::<(), rustc_data_structures[8bfc3675f9bc6d6b]::sync::parallel::enabled::par_for_each_in<&rustc_span[769a7d5934ceee64]::def_id::LocalDefId, &[rustc_span[769a7d5934ceee64]::def_id::LocalDefId], ::par_body_owners::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> - 41: 0x10d0b8c10 - ::time::<(), rustc_interface[27038c4421a9b2f6]::passes::run_required_analyses::{closure#1}> - 42: 0x10d055354 - rustc_interface[27038c4421a9b2f6]::passes::analysis - 43: 0x10dbf71ec - rustc_query_impl[4383dbc3d6bd34d3]::plumbing::__rust_begin_short_backtrace::> - 44: 0x10dd461ec - >::call_once - 45: 0x10db113d8 - rustc_query_system[ebf9e22bec66dd9c]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[4383dbc3d6bd34d3]::plumbing::QueryCtxt, true> - 46: 0x10dd469a4 - rustc_query_impl[4383dbc3d6bd34d3]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace - 47: 0x10c9128f0 - >::enter::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}::{closure#1}::{closure#3}> - 48: 0x10c8bab44 - ::enter::, rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 49: 0x10c8f7f84 - >::set::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 50: 0x10c8e083c - rustc_span[769a7d5934ceee64]::create_session_globals_then::, rustc_interface[27038c4421a9b2f6]::util::run_in_thread_with_globals, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> - 51: 0x10c900b68 - std[fab435055a7fab56]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>> - 52: 0x10c8ec78c - <::spawn_unchecked_, rustc_driver_impl[1c4fe4c12297f333]::run_compiler::{closure#0}>::{closure#1}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[b3c26d895d81fced]::result::Result<(), rustc_span[769a7d5934ceee64]::ErrorGuaranteed>>::{closure#2} as core[b3c26d895d81fced]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} - 53: 0x1031d89fc - std::sys::pal::unix::thread::Thread::new::thread_start::h1e92676b7e59f87d - 54: 0x18cdb5f94 - __pthread_joiner_wake - - -query stack during panic: -#0 [check_match] match-checking `sibling::::is_sub_type` -#1 [mir_built] building MIR for `sibling::::is_sub_type` -#2 [check_unsafety] unsafety-checking `sibling::::is_sub_type` -#3 [analysis] running analysis passes on this crate -end of query stack From 553e7f6a7b6a70f41d5a50669ab37d7c291520df Mon Sep 17 00:00:00 2001 From: Gianfranco Date: Tue, 27 Aug 2024 09:45:20 -0300 Subject: [PATCH 07/38] Revert "format nightly for latest changes" This reverts commit e03041e0fb505706d029a69f2810ad47fa4a0336. --- chain-extensions/price/src/lib.rs | 4 +- node/src/chain_spec.rs | 92 +++++------ node/src/cli.rs | 6 +- node/src/command.rs | 25 ++- node/src/service.rs | 33 ++-- .../src/lib.rs | 7 +- .../src/mock.rs | 2 +- .../src/mock.rs | 2 +- .../rpc/runtime-api/src/lib.rs | 5 +- pallets/parachain-staking/src/benchmarking.rs | 5 +- pallets/parachain-staking/src/lib.rs | 7 +- pallets/parachain-staking/src/mock.rs | 8 +- pallets/parachain-staking/src/set.rs | 2 +- pallets/parachain-staking/src/try_state.rs | 4 +- pallets/treasury-buyout-extension/src/lib.rs | 8 +- pallets/treasury-buyout-extension/src/mock.rs | 5 +- .../treasury-buyout-extension/src/tests.rs | 7 +- runtime/amplitude/src/lib.rs | 53 +++--- runtime/amplitude/src/weights/mod.rs | 16 +- runtime/amplitude/src/xcm_config.rs | 5 +- runtime/common/src/asset_registry.rs | 10 +- .../src/benchmarking/orml_asset_registry.rs | 9 +- runtime/common/src/zenlink.rs | 45 ++--- runtime/foucoco/src/lib.rs | 151 +++++++++-------- runtime/foucoco/src/weights/mod.rs | 16 +- runtime/foucoco/src/xcm_config.rs | 7 +- .../integration-tests/src/amplitude_tests.rs | 20 +-- runtime/integration-tests/src/mock.rs | 21 +-- .../integration-tests/src/pendulum_tests.rs | 21 +-- runtime/integration-tests/src/test_macros.rs | 69 +++----- runtime/pendulum/src/lib.rs | 154 +++++++++--------- runtime/pendulum/src/weights/mod.rs | 14 +- runtime/pendulum/src/xcm_config.rs | 5 +- 33 files changed, 381 insertions(+), 457 deletions(-) diff --git a/chain-extensions/price/src/lib.rs b/chain-extensions/price/src/lib.rs index b6b59a30b..cb621a671 100644 --- a/chain-extensions/price/src/lib.rs +++ b/chain-extensions/price/src/lib.rs @@ -8,13 +8,13 @@ use frame_support::{ pallet_prelude::{Get, PhantomData}, DefaultNoBound, }; +use sp_tracing::{error, trace}; +use scale_info::prelude::vec::Vec; use pallet_contracts::chain_extension::{ ChainExtension, Environment, Ext, InitState, RetVal, SysConfig, }; -use scale_info::prelude::vec::Vec; use sp_core::crypto::UncheckedFrom; use sp_runtime::DispatchError; -use sp_tracing::{error, trace}; use sp_weights::Weight; // Enum that handles all supported function id options for this chain extension module diff --git a/node/src/chain_spec.rs b/node/src/chain_spec.rs index 79b51dda5..e6ab6f713 100644 --- a/node/src/chain_spec.rs +++ b/node/src/chain_spec.rs @@ -1,7 +1,5 @@ #![allow(clippy::default_constructed_unit_structs)] -use crate::constants::{amplitude, foucoco, pendulum}; -use core::default::Default; use cumulus_primitives_core::ParaId; use runtime_common::{AccountId, AuraId, Balance, BlockNumber, Signature, UNIT}; use sc_chain_spec::{ChainSpecExtension, ChainSpecGroup}; @@ -15,7 +13,9 @@ use sp_runtime::{ traits::{IdentifyAccount, Verify}, FixedPointNumber, FixedU128, Perquintill, }; +use core::default::Default; use spacewalk_primitives::{oracle::Key, Asset, CurrencyId, CurrencyId::XCM, VaultCurrencyPair}; +use crate::constants::{amplitude, foucoco, pendulum}; const MAINNET_USDC_CURRENCY_ID: CurrencyId = pendulum_runtime::GetWrappedCurrencyId::get(); const TESTNET_USDC_CURRENCY_ID: CurrencyId = amplitude_runtime::GetWrappedCurrencyId::get(); @@ -253,25 +253,25 @@ pub fn foucoco_standalone_config() -> FoucocoChainSpec { .map(|ss58| AccountId::from_ss58check(ss58).unwrap()) .collect(); - let sudo_account = get_account_id_from_seed::("Alice"); + let sudo_account = get_account_id_from_seed::("Alice"); let offchain_worker_price_feeder = AccountId::from_ss58check(foucoco::OFF_CHAIN_WORKER_ADDRESS).unwrap(); let allowed_currencies = vec![ - CurrencyId::Native, - CurrencyId::XCM(0), - CurrencyId::XCM(1), - CurrencyId::XCM(2), - CurrencyId::XCM(3), - CurrencyId::XCM(4), - CurrencyId::XCM(5), - CurrencyId::XCM(6), - CurrencyId::XCM(7), - CurrencyId::XCM(8), - CurrencyId::XCM(9), - CurrencyId::XCM(10), - ]; + CurrencyId::Native, + CurrencyId::XCM(0), + CurrencyId::XCM(1), + CurrencyId::XCM(2), + CurrencyId::XCM(3), + CurrencyId::XCM(4), + CurrencyId::XCM(5), + CurrencyId::XCM(6), + CurrencyId::XCM(7), + CurrencyId::XCM(8), + CurrencyId::XCM(9), + CurrencyId::XCM(10), + ]; FoucocoChainSpec::from_genesis( // Name @@ -497,13 +497,10 @@ fn amplitude_genesis( .expect("WASM binary was not build, please build it!") .to_vec(), #[allow(clippy::wrong_self_convention)] - _config: sp_std::marker::PhantomData::default(), + _config: sp_std::marker::PhantomData::default() }, balances: amplitude_runtime::BalancesConfig { balances }, - parachain_info: amplitude_runtime::ParachainInfoConfig { - parachain_id: id, - _config: sp_std::marker::PhantomData::default(), - }, + parachain_info: amplitude_runtime::ParachainInfoConfig { parachain_id: id, _config: sp_std::marker::PhantomData::default() }, parachain_staking: amplitude_runtime::ParachainStakingConfig { stakers, inflation_config, @@ -529,7 +526,7 @@ fn amplitude_genesis( parachain_system: Default::default(), polkadot_xcm: amplitude_runtime::PolkadotXcmConfig { safe_xcm_version: Some(SAFE_XCM_VERSION), - _config: sp_std::marker::PhantomData::default(), + _config: sp_std::marker::PhantomData::default() }, council: amplitude_runtime::CouncilConfig { members: signatories.clone(), @@ -572,7 +569,7 @@ fn amplitude_genesis( } else { amplitude_runtime::StatusCode::Error }, - _phantom: sp_std::marker::PhantomData::default(), + _phantom: sp_std::marker::PhantomData::default() }, oracle: amplitude_runtime::OracleConfig { max_delay: u32::MAX, @@ -615,10 +612,7 @@ fn amplitude_genesis( punishment_fee: FixedU128::checked_from_rational(1, 10).unwrap(), // 10% replace_griefing_collateral: FixedU128::checked_from_rational(1, 10).unwrap(), // 10% }, - nomination: amplitude_runtime::NominationConfig { - is_nomination_enabled: false, - _phantom: sp_std::marker::PhantomData::default(), - }, + nomination: amplitude_runtime::NominationConfig { is_nomination_enabled: false, _phantom: sp_std::marker::PhantomData::default() }, dia_oracle_module: amplitude_runtime::DiaOracleModuleConfig { authorized_accounts: authorized_oracles, supported_currencies: vec![ @@ -631,8 +625,8 @@ fn amplitude_genesis( coin_infos_map: vec![], }, token_allowance: Default::default(), - transaction_payment: Default::default(), - treasury: Default::default(), + transaction_payment: Default::default(), + treasury: Default::default(), treasury_buyout_extension: Default::default(), vesting: Default::default(), zenlink_protocol: Default::default(), @@ -705,13 +699,10 @@ fn foucoco_genesis( code: foucoco_runtime::WASM_BINARY .expect("WASM binary was not build, please build it!") .to_vec(), - _config: sp_std::marker::PhantomData::default(), + _config: sp_std::marker::PhantomData::default() }, balances: foucoco_runtime::BalancesConfig { balances }, - parachain_info: foucoco_runtime::ParachainInfoConfig { - parachain_id: id, - _config: sp_std::marker::PhantomData::default(), - }, + parachain_info: foucoco_runtime::ParachainInfoConfig { parachain_id: id , _config: sp_std::marker::PhantomData::default()}, parachain_staking: foucoco_runtime::ParachainStakingConfig { stakers, inflation_config, @@ -737,7 +728,7 @@ fn foucoco_genesis( parachain_system: Default::default(), polkadot_xcm: foucoco_runtime::PolkadotXcmConfig { safe_xcm_version: Some(SAFE_XCM_VERSION), - _config: sp_std::marker::PhantomData::default(), + _config: sp_std::marker::PhantomData::default() }, council: foucoco_runtime::CouncilConfig { members: signatories.clone(), @@ -781,7 +772,7 @@ fn foucoco_genesis( } else { foucoco_runtime::StatusCode::Error }, - _phantom: sp_std::marker::PhantomData::default(), + _phantom: sp_std::marker::PhantomData::default() }, oracle: foucoco_runtime::OracleConfig { max_delay: 604_800_000, // 7 days @@ -791,7 +782,7 @@ fn foucoco_genesis( Key::ExchangeRate(CurrencyId::Stellar(Asset::StellarNative)), Key::ExchangeRate(TESTNET_USDC_CURRENCY_ID), ], - _phantom: sp_std::marker::PhantomData::default(), + _phantom: sp_std::marker::PhantomData::default() }, vault_registry: foucoco_runtime::VaultRegistryConfig { minimum_collateral_vault: vec![(XCM(0), 0)], @@ -836,10 +827,7 @@ fn foucoco_genesis( punishment_fee: FixedU128::checked_from_rational(1, 10).unwrap(), // 10% replace_griefing_collateral: FixedU128::checked_from_rational(1, 10).unwrap(), // 10% }, - nomination: foucoco_runtime::NominationConfig { - is_nomination_enabled: false, - _phantom: sp_std::marker::PhantomData::default(), - }, + nomination: foucoco_runtime::NominationConfig { is_nomination_enabled: false, _phantom: sp_std::marker::PhantomData::default() }, dia_oracle_module: foucoco_runtime::DiaOracleModuleConfig { authorized_accounts: authorized_oracles, supported_currencies: vec![ @@ -852,8 +840,8 @@ fn foucoco_genesis( coin_infos_map: vec![], }, token_allowance: foucoco_runtime::TokenAllowanceConfig { allowed_currencies }, - transaction_payment: Default::default(), - treasury: Default::default(), + transaction_payment: Default::default(), + treasury: Default::default(), treasury_buyout_extension: Default::default(), vesting: Default::default(), zenlink_protocol: Default::default(), @@ -901,13 +889,10 @@ fn pendulum_genesis( code: pendulum_runtime::WASM_BINARY .expect("WASM binary was not build, please build it!") .to_vec(), - _config: sp_std::marker::PhantomData::default(), + _config: sp_std::marker::PhantomData::default() }, balances: pendulum_runtime::BalancesConfig { balances }, - parachain_info: pendulum_runtime::ParachainInfoConfig { - parachain_id: id, - _config: sp_std::marker::PhantomData::default(), - }, + parachain_info: pendulum_runtime::ParachainInfoConfig { parachain_id: id, _config: sp_std::marker::PhantomData::default() }, parachain_staking: pendulum_runtime::ParachainStakingConfig { stakers, inflation_config, @@ -979,7 +964,7 @@ fn pendulum_genesis( Key::ExchangeRate(CurrencyId::XCM(0)), Key::ExchangeRate(MAINNET_USDC_CURRENCY_ID), ], - _phantom: sp_std::marker::PhantomData::default(), + _phantom: sp_std::marker::PhantomData::default() }, vault_registry: pendulum_runtime::VaultRegistryConfig { minimum_collateral_vault: vec![(XCM(0), 0)], @@ -1013,10 +998,7 @@ fn pendulum_genesis( punishment_fee: FixedU128::checked_from_rational(1, 10).unwrap(), // 10% replace_griefing_collateral: FixedU128::checked_from_rational(1, 10).unwrap(), // 10% }, - nomination: pendulum_runtime::NominationConfig { - is_nomination_enabled: false, - _phantom: sp_std::marker::PhantomData::default(), - }, + nomination: pendulum_runtime::NominationConfig { is_nomination_enabled: false, _phantom: sp_std::marker::PhantomData::default() }, dia_oracle_module: pendulum_runtime::DiaOracleModuleConfig { authorized_accounts: authorized_oracles, supported_currencies: vec![ @@ -1029,8 +1011,8 @@ fn pendulum_genesis( coin_infos_map: vec![], }, token_allowance: Default::default(), - transaction_payment: Default::default(), - treasury: Default::default(), + transaction_payment: Default::default(), + treasury: Default::default(), tokens: Default::default(), treasury_buyout_extension: Default::default(), } diff --git a/node/src/cli.rs b/node/src/cli.rs index bc3fe47b7..e1105c58b 100644 --- a/node/src/cli.rs +++ b/node/src/cli.rs @@ -94,10 +94,6 @@ impl RelayChainCli { let extension = crate::chain_spec::ParachainExtensions::try_get(&*para_config.chain_spec); let chain_id = extension.map(|e| e.relay_chain.clone()); let base_path = para_config.base_path.path().join("polkadot"); - Self { - base_path: Some(base_path), - chain_id, - base: clap::Parser::parse_from(relay_chain_args), - } + Self { base_path: Some(base_path), chain_id, base: clap::Parser::parse_from(relay_chain_args) } } } diff --git a/node/src/command.rs b/node/src/command.rs index f5cab045a..32ca984de 100644 --- a/node/src/command.rs +++ b/node/src/command.rs @@ -142,6 +142,7 @@ impl SubstrateCli for Cli { None => ChainIdentity::from_json_file(id)?.load_chain_spec_from_json_file(id)?, }) } + } impl SubstrateCli for RelayChainCli { @@ -178,6 +179,7 @@ impl SubstrateCli for RelayChainCli { fn load_spec(&self, id: &str) -> std::result::Result, String> { polkadot_cli::Cli::from_iter([RelayChainCli::executable_name()].iter()).load_spec(id) } + } macro_rules! construct_sync_run { @@ -312,10 +314,9 @@ pub fn run() -> Result<()> { cmd.run(config, polkadot_config) }) }, - Some(Subcommand::ExportGenesisState(cmd)) => - construct_async_run!(|components, cli, cmd, config| { - Ok(async move { cmd.run(&*config.chain_spec, &*components.client) }) - }), + Some(Subcommand::ExportGenesisState(cmd)) => construct_async_run!(|components, cli, cmd, config| { + Ok(async move { cmd.run(&*config.chain_spec, &*components.client) }) + }), Some(Subcommand::ExportGenesisWasm(cmd)) => { let runner = cli.create_runner(cmd)?; runner.sync_run(|_config| { @@ -329,16 +330,12 @@ pub fn run() -> Result<()> { let runner = cli.create_runner(cmd)?; match runner.config().chain_spec.identify() { - ChainIdentity::Amplitude => runner.sync_run(|config| { - cmd.run::::ExtendHostFunctions>(config) - }), - ChainIdentity::Foucoco => - runner.sync_run(|config| { - cmd.run::::ExtendHostFunctions>(config) - }), - ChainIdentity::Pendulum => runner.sync_run(|config| { - cmd.run::::ExtendHostFunctions>(config) - }), + ChainIdentity::Amplitude => runner + .sync_run(|config| cmd.run::::ExtendHostFunctions>(config)), + ChainIdentity::Foucoco => runner + .sync_run(|config| cmd.run::::ExtendHostFunctions>(config)), + ChainIdentity::Pendulum => runner + .sync_run(|config| cmd.run::::ExtendHostFunctions>(config)), ChainIdentity::FoucocoStandalone => unimplemented!(), } } else { diff --git a/node/src/service.rs b/node/src/service.rs index 42294c549..8e22ead93 100644 --- a/node/src/service.rs +++ b/node/src/service.rs @@ -3,20 +3,18 @@ // std use std::{sync::Arc, time::Duration}; -use cumulus_client_cli::{CollatorOptions, RelayChainMode}; +use cumulus_client_cli::{RelayChainMode,CollatorOptions}; // Local Runtime Types use runtime_common::{opaque::Block, AccountId, Balance, Index as Nonce}; // Cumulus Imports -use cumulus_client_collator::service::CollatorService; -use cumulus_client_consensus_aura::collators::basic::{ - self as basic_aura, Params as BasicAuraParams, +use cumulus_client_consensus_aura::{collators::basic::{Params as BasicAuraParams, self as basic_aura}}; +use cumulus_client_consensus_common::{ + ParachainBlockImport as TParachainBlockImport, }; -use cumulus_client_consensus_common::ParachainBlockImport as TParachainBlockImport; -use cumulus_client_consensus_proposer::Proposer; use cumulus_client_network::RequireSecondedInBlockAnnounce; use cumulus_client_service::{ - prepare_node_config, start_relay_chain_tasks, DARecoveryProfile, StartRelayChainTasksParams, + prepare_node_config, start_relay_chain_tasks, StartRelayChainTasksParams, DARecoveryProfile }; use cumulus_primitives_core::{relay_chain::Hash, ParaId}; use cumulus_primitives_parachain_inherent::{ @@ -25,6 +23,8 @@ use cumulus_primitives_parachain_inherent::{ use cumulus_relay_chain_inprocess_interface::build_inprocess_relay_chain; use cumulus_relay_chain_interface::{RelayChainInterface, RelayChainResult}; use cumulus_relay_chain_minimal_node::build_minimal_relay_chain_node_with_rpc; +use cumulus_client_consensus_proposer::Proposer; +use cumulus_client_collator::service::CollatorService; // Substrate Imports use sc_executor::{ @@ -44,11 +44,11 @@ use sp_keystore::KeystorePtr; use sp_runtime::traits::BlakeTwo256; use substrate_prometheus_endpoint::Registry; +use polkadot_service::{CollatorPair, Handle}; +use sc_consensus::{import_queue::ImportQueueService, ImportQueue}; use crate::rpc::{ create_full_amplitude, create_full_foucoco, create_full_pendulum, FullDeps, ResultRpcExtension, }; -use polkadot_service::{CollatorPair, Handle}; -use sc_consensus::{import_queue::ImportQueueService, ImportQueue}; use sc_transaction_pool_api::OffchainTransactionPoolFactory; use sc_client_api::Backend; @@ -134,6 +134,7 @@ impl sc_executor::NativeExecutionDispatch for FoucocoRuntimeExecutor { pub struct PendulumRuntimeExecutor; impl sc_executor::NativeExecutionDispatch for PendulumRuntimeExecutor { + #[cfg(feature = "runtime-benchmarks")] type ExtendHostFunctions = frame_benchmarking::benchmarking::HostFunctions; #[cfg(not(feature = "runtime-benchmarks"))] @@ -298,9 +299,7 @@ async fn setup_common_services( parachain_config: Configuration, params: ResultNewPartial, create_full_rpc: fn(deps: FullDepsOf) -> ResultRpcExtension, - block_announce_validator: Option< - RequireSecondedInBlockAnnounce>, - >, + block_announce_validator: Option>>, ) -> Result< ( NetworkStarter, @@ -372,8 +371,8 @@ where enable_http_requests: true, custom_extensions: |_| vec![], }) - .run(client.clone(), task_manager.spawn_handle()) - .boxed(), + .run(client.clone(), task_manager.spawn_handle()) + .boxed(), ); } @@ -435,8 +434,7 @@ where ) .await .map_err(|e| sc_service::Error::Application(Box::new(e)))?; - let block_announce_validator = - RequireSecondedInBlockAnnounce::new(relay_chain_interface.clone(), id); + let block_announce_validator = RequireSecondedInBlockAnnounce::new(relay_chain_interface.clone(), id); let validator = parachain_config.role.is_authority(); let prometheus_registry = parachain_config.prometheus_registry().cloned(); @@ -516,6 +514,7 @@ where collator_key.clone().expect("Command line arguments do not allow this. qed"), announce_block.clone(), )?; + } start_network.start_network(); @@ -717,7 +716,7 @@ where sync_oracle, keystore, slot_duration, - authoring_duration: Duration::from_millis(500), + authoring_duration:Duration::from_millis(500), relay_chain_slot_duration, para_id: id, overseer_handle, diff --git a/pallets/orml-currencies-allowance-extension/src/lib.rs b/pallets/orml-currencies-allowance-extension/src/lib.rs index b4cdfda56..2d44130a0 100644 --- a/pallets/orml-currencies-allowance-extension/src/lib.rs +++ b/pallets/orml-currencies-allowance-extension/src/lib.rs @@ -239,12 +239,7 @@ pub mod pallet { } } -#[allow( - clippy::forget_non_drop, - clippy::swap_ptr_to_ref, - forgetting_references, - forgetting_copy_types -)] +#[allow(clippy::forget_non_drop, clippy::swap_ptr_to_ref, forgetting_references, forgetting_copy_types)] #[cfg_attr(test, mockable)] impl Pallet { // Check the amount approved to be spent by an owner to a delegate diff --git a/pallets/orml-currencies-allowance-extension/src/mock.rs b/pallets/orml-currencies-allowance-extension/src/mock.rs index b251cbcca..948557c91 100644 --- a/pallets/orml-currencies-allowance-extension/src/mock.rs +++ b/pallets/orml-currencies-allowance-extension/src/mock.rs @@ -8,7 +8,7 @@ use orml_traits::parameter_type_with_key; use sp_core::H256; use sp_runtime::{ traits::{BlakeTwo256, IdentityLookup}, - BuildStorage, + BuildStorage }; type Block = frame_system::mocking::MockBlock; diff --git a/pallets/orml-tokens-management-extension/src/mock.rs b/pallets/orml-tokens-management-extension/src/mock.rs index 24ab3e058..25549b1dc 100644 --- a/pallets/orml-tokens-management-extension/src/mock.rs +++ b/pallets/orml-tokens-management-extension/src/mock.rs @@ -11,7 +11,7 @@ use orml_traits::parameter_type_with_key; use sp_core::{ConstU128, H256}; use sp_runtime::{ traits::{BlakeTwo256, IdentityLookup}, - BuildStorage, + BuildStorage }; type Block = frame_system::mocking::MockBlock; diff --git a/pallets/parachain-staking/rpc/runtime-api/src/lib.rs b/pallets/parachain-staking/rpc/runtime-api/src/lib.rs index dffa466ed..9d4139586 100644 --- a/pallets/parachain-staking/rpc/runtime-api/src/lib.rs +++ b/pallets/parachain-staking/rpc/runtime-api/src/lib.rs @@ -1,11 +1,12 @@ //! Runtime API definition for Parachain Staking. #![cfg_attr(not(feature = "std"), no_std)] +use scale_info::TypeInfo; use module_oracle_rpc_runtime_api::BalanceWrapper; use parity_scale_codec::{Codec, Decode, Encode, MaxEncodedLen}; -use scale_info::TypeInfo; -use sp_arithmetic::per_things::Perquintill; use sp_std::fmt::Debug; +use sp_arithmetic::per_things::Perquintill; + #[cfg(feature = "std")] use serde::{Deserialize, Serialize}; diff --git a/pallets/parachain-staking/src/benchmarking.rs b/pallets/parachain-staking/src/benchmarking.rs index 469ab640f..4e8e82f20 100644 --- a/pallets/parachain-staking/src/benchmarking.rs +++ b/pallets/parachain-staking/src/benchmarking.rs @@ -19,13 +19,14 @@ //! Benchmarking use crate::{types::RoundInfo, *}; use frame_benchmarking::{account, benchmarks, impl_benchmark_test_suite}; +use sp_arithmetic::traits::Zero; use frame_support::{ assert_ok, traits::{Currency, Get, OnInitialize}, }; -use frame_system::{pallet_prelude::BlockNumberFor, Pallet as System, RawOrigin}; +use frame_system::{Pallet as System, RawOrigin}; +use frame_system::pallet_prelude::BlockNumberFor; use pallet_session::Pallet as Session; -use sp_arithmetic::traits::Zero; use sp_runtime::{ traits::{One, SaturatedConversion, StaticLookup}, Perquintill, diff --git a/pallets/parachain-staking/src/lib.rs b/pallets/parachain-staking/src/lib.rs index d7e8d02e6..e177dbf55 100644 --- a/pallets/parachain-staking/src/lib.rs +++ b/pallets/parachain-staking/src/lib.rs @@ -155,11 +155,11 @@ pub mod pallet { use pallet_balances::{BalanceLock, Locks}; use pallet_session::ShouldEndSession; use scale_info::TypeInfo; - use sp_arithmetic::per_things::Perquintill; use sp_runtime::{ traits::{Convert, One, SaturatedConversion, Saturating, StaticLookup, Zero}, Permill, }; + use sp_arithmetic::per_things::Perquintill; use sp_staking::SessionIndex; use sp_std::prelude::*; @@ -893,10 +893,7 @@ pub mod pallet { /// Emits `BlocksPerRoundSet`. #[pallet::call_index(3)] #[pallet::weight(::WeightInfo::set_blocks_per_round())] - pub fn set_blocks_per_round( - origin: OriginFor, - new: BlockNumberFor, - ) -> DispatchResult { + pub fn set_blocks_per_round(origin: OriginFor, new: BlockNumberFor) -> DispatchResult { ensure_root(origin)?; ensure!(new >= T::MinBlocksPerRound::get(), Error::::CannotSetBelowMin); diff --git a/pallets/parachain-staking/src/mock.rs b/pallets/parachain-staking/src/mock.rs index 5b1300f45..615fa66af 100644 --- a/pallets/parachain-staking/src/mock.rs +++ b/pallets/parachain-staking/src/mock.rs @@ -32,7 +32,8 @@ use sp_runtime::{ impl_opaque_keys, testing::UintAuthorityId, traits::{BlakeTwo256, ConstU32, ConvertInto, IdentityLookup, OpaqueKeys}, - BuildStorage, Perbill, Perquintill, + Perbill, Perquintill, + BuildStorage }; use sp_std::fmt::Debug; @@ -72,7 +73,7 @@ impl frame_system::Config for Test { type BaseCallFilter = frame_support::traits::Everything; type DbWeight = (); type RuntimeOrigin = RuntimeOrigin; - type Nonce = u64; + type Nonce = u64; type RuntimeCall = RuntimeCall; type Hash = H256; type Hashing = BlakeTwo256; @@ -290,8 +291,7 @@ impl ExtBuilder { } pub(crate) fn build(self) -> sp_io::TestExternalities { - let mut t = frame_system::GenesisConfig::::default() - .build_storage() + let mut t = frame_system::GenesisConfig::::default().build_storage() .expect("Frame system builds valid default genesis config"); pallet_balances::GenesisConfig:: { balances: self.balances.clone() } diff --git a/pallets/parachain-staking/src/set.rs b/pallets/parachain-staking/src/set.rs index 11f999589..d688ea38e 100644 --- a/pallets/parachain-staking/src/set.rs +++ b/pallets/parachain-staking/src/set.rs @@ -19,7 +19,7 @@ use frame_support::{traits::Get, BoundedVec, DefaultNoBound}; use parity_scale_codec::{Decode, Encode, MaxEncodedLen}; use scale_info::TypeInfo; -use sp_runtime::{traits::Zero, RuntimeDebug, SaturatedConversion}; +use sp_runtime::{traits::Zero, SaturatedConversion, RuntimeDebug}; use sp_std::{ cmp::Ordering, convert::TryInto, diff --git a/pallets/parachain-staking/src/try_state.rs b/pallets/parachain-staking/src/try_state.rs index 8687fb770..2deaea2ac 100644 --- a/pallets/parachain-staking/src/try_state.rs +++ b/pallets/parachain-staking/src/try_state.rs @@ -229,8 +229,8 @@ fn validate_delegators() -> Result<(), &'static str> { DelegatorState::::iter_values().try_for_each( |delegator_details| -> Result<(), &'static str> { let Some(owner) = &delegator_details.owner else { - return Err("owner not found"); - }; + return Err("owner not found"); + }; ensure!( CandidatePool::::contains_key(owner), diff --git a/pallets/treasury-buyout-extension/src/lib.rs b/pallets/treasury-buyout-extension/src/lib.rs index c8c4b5839..8be412c92 100644 --- a/pallets/treasury-buyout-extension/src/lib.rs +++ b/pallets/treasury-buyout-extension/src/lib.rs @@ -30,15 +30,17 @@ use frame_support::{ }; use orml_traits::MultiCurrency; pub use pallet::*; -use sp_arithmetic::traits::{CheckedAdd, CheckedDiv, CheckedMul, Saturating}; +use sp_arithmetic::traits::{CheckedAdd, CheckedMul, CheckedDiv, Saturating}; use sp_runtime::{ traits::{DispatchInfoOf, One, SignedExtension, UniqueSaturatedInto, Zero}, transaction_validity::{ InvalidTransaction, TransactionValidity, TransactionValidityError, ValidTransaction, }, - ArithmeticError, DispatchError, FixedPointNumber, FixedU128, + ArithmeticError, FixedPointNumber, FixedU128, + DispatchError, }; -use sp_std::{fmt::Debug, marker::PhantomData, vec, vec::Vec}; +use sp_std::{fmt::Debug, marker::PhantomData, vec::Vec}; +use sp_std::vec; use spacewalk_primitives::DecimalsLookup; #[frame_support::pallet] diff --git a/pallets/treasury-buyout-extension/src/mock.rs b/pallets/treasury-buyout-extension/src/mock.rs index 4cb3e7cd4..c3d191152 100644 --- a/pallets/treasury-buyout-extension/src/mock.rs +++ b/pallets/treasury-buyout-extension/src/mock.rs @@ -9,10 +9,7 @@ use orml_currencies::BasicCurrencyAdapter; use orml_traits::parameter_type_with_key; use sp_arithmetic::{FixedPointNumber, FixedU128, Permill}; use sp_core::H256; -use sp_runtime::{ - traits::{BlakeTwo256, IdentityLookup, One, Zero}, - BuildStorage, DispatchError, -}; +use sp_runtime::{traits::{BlakeTwo256, IdentityLookup, One, Zero}, DispatchError, BuildStorage}; use sp_std::fmt::Debug; use spacewalk_primitives::DecimalsLookup; diff --git a/pallets/treasury-buyout-extension/src/tests.rs b/pallets/treasury-buyout-extension/src/tests.rs index 09275c02f..7cf931105 100644 --- a/pallets/treasury-buyout-extension/src/tests.rs +++ b/pallets/treasury-buyout-extension/src/tests.rs @@ -2,7 +2,7 @@ use crate::{ mock::*, types::{Amount, CurrencyIdOf}, - BuyoutLimit, Buyouts, Config, DecimalsLookup, Error, PriceGetter, ValidityError, + BuyoutLimit, Buyouts, Config, Error, PriceGetter, ValidityError, DecimalsLookup, }; use frame_support::{assert_err, assert_noop, assert_ok}; use orml_traits::MultiCurrency; @@ -37,7 +37,7 @@ fn buyout_using_dot_given_exchange_amount_in_dot_succeeds() { assert_eq!(initial_user_native_balance, USERS_INITIAL_NATIVE_BALANCE); assert_eq!(initial_treasury_native_balance, TREASURY_INITIAL_BALANCE); - + // DOT has 10 decimals let exchange_amount = 100_0000000000; assert_ok!(crate::Pallet::::buyout( @@ -137,8 +137,7 @@ fn buyout_using_dot_given_buyout_amount_in_native_succeeds() { exchange_asset_price, ::decimals(native_currency_id), ::decimals(dot_currency_id), - ) - .expect("This is mocked so it should not fail"); + ).expect("This is mocked so it should not fail"); let final_user_dot_balance = get_free_balance(dot_currency_id, &user); let final_user_native_balance = get_free_balance(native_currency_id, &user); diff --git a/runtime/amplitude/src/lib.rs b/runtime/amplitude/src/lib.rs index 8e04da966..35f8cef45 100644 --- a/runtime/amplitude/src/lib.rs +++ b/runtime/amplitude/src/lib.rs @@ -162,10 +162,8 @@ parameter_types! { use pallet_contracts::migration::{v11, v12, v13, v14, v15}; // Custom storage version bump -use frame_support::{ - pallet_prelude::StorageVersion, - traits::{GetStorageVersion, OnRuntimeUpgrade}, -}; +use frame_support::traits::{GetStorageVersion, OnRuntimeUpgrade}; +use frame_support::pallet_prelude::StorageVersion; pub struct CustomOnRuntimeUpgrade; impl OnRuntimeUpgrade for CustomOnRuntimeUpgrade { @@ -197,7 +195,10 @@ pub type Executive = frame_executive::Executive< frame_system::ChainContext, Runtime, AllPalletsWithSystem, - (CustomOnRuntimeUpgrade, pallet_contracts::migration::Migration), + ( + CustomOnRuntimeUpgrade, + pallet_contracts::migration::Migration, + ), >; pub struct ConvertPrice; @@ -1024,13 +1025,7 @@ impl pallet_contracts::Config for Runtime { type CodeHashLockupDepositPercent = CodeHashLockupDepositPercent; type MaxDelegateDependencies = MaxDelegateDependencies; type RuntimeHoldReason = RuntimeHoldReason; - type Migrations = ( - v11::Migration, - v12::Migration, - v13::Migration, - v14::Migration, - v15::Migration, - ); + type Migrations = (v11::Migration, v12::Migration, v13::Migration, v14::Migration, v15::Migration ); type Debug = (); type Environment = (); } @@ -1965,15 +1960,15 @@ impl_runtime_apis! { ) -> pallet_contracts_primitives::ContractExecResult { let gas_limit = gas_limit.unwrap_or(RuntimeBlockWeights::get().max_block); Contracts::bare_call( - origin, - dest, - value, - gas_limit, - storage_deposit_limit, - input_data, - pallet_contracts::DebugInfo::UnsafeDebug, - pallet_contracts::CollectEvents::UnsafeCollect, - pallet_contracts::Determinism::Enforced, + origin, + dest, + value, + gas_limit, + storage_deposit_limit, + input_data, + pallet_contracts::DebugInfo::UnsafeDebug, + pallet_contracts::CollectEvents::UnsafeCollect, + pallet_contracts::Determinism::Enforced, ) } @@ -1990,14 +1985,14 @@ impl_runtime_apis! { let gas_limit = gas_limit.unwrap_or(RuntimeBlockWeights::get().max_block); Contracts::bare_instantiate( origin, - value, - gas_limit, - storage_deposit_limit, - code, - data, - salt, - pallet_contracts::DebugInfo::UnsafeDebug, - pallet_contracts::CollectEvents::UnsafeCollect, + value, + gas_limit, + storage_deposit_limit, + code, + data, + salt, + pallet_contracts::DebugInfo::UnsafeDebug, + pallet_contracts::CollectEvents::UnsafeCollect, ) } diff --git a/runtime/amplitude/src/weights/mod.rs b/runtime/amplitude/src/weights/mod.rs index 8ad802f7b..7edb0ea68 100644 --- a/runtime/amplitude/src/weights/mod.rs +++ b/runtime/amplitude/src/weights/mod.rs @@ -20,22 +20,22 @@ pub mod block_weights; pub mod dia_oracle; pub mod extrinsic_weights; +pub mod pallet_xcm; +pub mod paritydb_weights; +pub mod rocksdb_weights; +pub mod parachain_staking; +pub mod orml_asset_registry; +pub mod orml_currencies_allowance_extension; +pub mod treasury_buyout_extension; pub mod fee; pub mod issue; pub mod nomination; pub mod oracle; -pub mod orml_asset_registry; -pub mod orml_currencies_allowance_extension; -pub mod pallet_xcm; -pub mod parachain_staking; -pub mod paritydb_weights; pub mod redeem; pub mod replace; -pub mod rocksdb_weights; pub mod stellar_relay; -pub mod treasury_buyout_extension; pub mod vault_registry; pub use block_weights::constants::BlockExecutionWeight; pub use extrinsic_weights::constants::ExtrinsicBaseWeight; -pub use rocksdb_weights::constants::RocksDbWeight; +pub use rocksdb_weights::constants::RocksDbWeight; \ No newline at end of file diff --git a/runtime/amplitude/src/xcm_config.rs b/runtime/amplitude/src/xcm_config.rs index 3c59b4512..077745614 100644 --- a/runtime/amplitude/src/xcm_config.rs +++ b/runtime/amplitude/src/xcm_config.rs @@ -21,10 +21,7 @@ use xcm_builder::{ ParentIsPreset, RelayChainAsNative, SiblingParachainAsNative, SiblingParachainConvertsVia, SignedAccountId32AsNative, SignedToAccountId32, SovereignSignedViaLocation, TakeWeightCredit, }; -use xcm_executor::{ - traits::{Properties, ShouldExecute}, - XcmExecutor, -}; +use xcm_executor::{traits::{ShouldExecute, Properties}, XcmExecutor}; use runtime_common::{asset_registry::FixedConversionRateProvider, CurrencyIdConvert}; diff --git a/runtime/common/src/asset_registry.rs b/runtime/common/src/asset_registry.rs index e3f741612..8ed3e7da0 100644 --- a/runtime/common/src/asset_registry.rs +++ b/runtime/common/src/asset_registry.rs @@ -9,8 +9,10 @@ use parity_scale_codec::{Decode, Encode, MaxEncodedLen}; use scale_info::TypeInfo; use sp_core::Get; use sp_runtime::{traits::PhantomData, BoundedVec, DispatchError}; -use sp_std::{fmt::Debug, vec::Vec}; -use spacewalk_primitives::{oracle::Key, CurrencyId}; +use sp_std::fmt::Debug; +use sp_std::vec::Vec; +use spacewalk_primitives::oracle::Key; +use spacewalk_primitives::CurrencyId; use xcm::opaque::v3::MultiLocation; #[derive(Clone, PartialOrd, Ord, PartialEq, Eq, Debug, Encode, Decode, TypeInfo, MaxEncodedLen)] @@ -38,9 +40,7 @@ pub struct DiaKeys + TypeInfo + Clone + Eq + Debug + Send + Sync> { )] pub struct CustomAssetProcessor; -impl AssetProcessor> - for CustomAssetProcessor -{ +impl AssetProcessor> for CustomAssetProcessor { fn pre_register( id: Option, metadata: AssetMetadata, diff --git a/runtime/common/src/benchmarking/orml_asset_registry.rs b/runtime/common/src/benchmarking/orml_asset_registry.rs index f874c4e30..83cf48d9e 100644 --- a/runtime/common/src/benchmarking/orml_asset_registry.rs +++ b/runtime/common/src/benchmarking/orml_asset_registry.rs @@ -20,8 +20,8 @@ pub trait Config: #[benchmarks] pub mod benchmarks { use super::{Config, Pallet, *}; - use crate::asset_registry::StringLimit; use orml_asset_registry::Call; + use crate::asset_registry::StringLimit; fn longest_vec>() -> BoundedVec { // there is no fixed upperbound, but all actions are root-only so an assumed upperbound of 128 will do @@ -34,7 +34,7 @@ pub mod benchmarks { MultiLocation::new(1, X8(key, key, key, key, key, key, key, key)) } - fn get_asset_metadata>() -> AssetMetadata { + fn get_asset_metadata>() -> AssetMetadata { AssetMetadata:: { decimals: 12, name: longest_vec::(), @@ -83,7 +83,10 @@ pub mod benchmarks { Some(1234), Some(Some(location.into())), Some(CustomMetadata { - dia_keys: DiaKeys { blockchain: longest_vec(), symbol: longest_vec() }, + dia_keys: DiaKeys { + blockchain: longest_vec(), + symbol: longest_vec(), + }, fee_per_second: 123, }), ); diff --git a/runtime/common/src/zenlink.rs b/runtime/common/src/zenlink.rs index 60b3cd974..a61022acd 100644 --- a/runtime/common/src/zenlink.rs +++ b/runtime/common/src/zenlink.rs @@ -42,18 +42,24 @@ pub fn zenlink_id_to_currency_id( (1, LOCAL) => Some(CurrencyId::XCM(symbol)), (2, LOCAL) => match symbol { 0 => Some(CurrencyId::Stellar(Asset::StellarNative)), - 1 => - Some(CurrencyId::Stellar(Asset::AlphaNum4 { code: *b"USDC", issuer: USDC_ISSUER })), - 2 => - Some(CurrencyId::Stellar(Asset::AlphaNum4 { code: *b"TZS\0", issuer: TZS_ISSUER })), - 3 => - Some(CurrencyId::Stellar(Asset::AlphaNum4 { code: *b"BRL\0", issuer: BRL_ISSUER })), - 4 => - Some(CurrencyId::Stellar(Asset::AlphaNum4 { code: *b"EURC", issuer: EURC_ISSUER })), - 5 => - Some(CurrencyId::Stellar(Asset::AlphaNum4 { code: *b"AUDD", issuer: AUDD_ISSUER })), - 6 => - Some(CurrencyId::Stellar(Asset::AlphaNum4 { code: *b"NGNC", issuer: NGNC_ISSUER })), + 1 => { + Some(CurrencyId::Stellar(Asset::AlphaNum4 { code: *b"USDC", issuer: USDC_ISSUER })) + }, + 2 => { + Some(CurrencyId::Stellar(Asset::AlphaNum4 { code: *b"TZS\0", issuer: TZS_ISSUER })) + }, + 3 => { + Some(CurrencyId::Stellar(Asset::AlphaNum4 { code: *b"BRL\0", issuer: BRL_ISSUER })) + }, + 4 => { + Some(CurrencyId::Stellar(Asset::AlphaNum4 { code: *b"EURC", issuer: EURC_ISSUER })) + }, + 5 => { + Some(CurrencyId::Stellar(Asset::AlphaNum4 { code: *b"AUDD", issuer: AUDD_ISSUER })) + }, + 6 => { + Some(CurrencyId::Stellar(Asset::AlphaNum4 { code: *b"NGNC", issuer: NGNC_ISSUER })) + }, _ => None, }, (3, LOCAL) => { @@ -75,8 +81,9 @@ pub fn currency_id_to_zenlink_id( ) -> Option { let disc = discriminant(¤cy_id) as u64; match currency_id { - CurrencyId::Native => - Some(ZenlinkAssetId { chain_id: parachain_id, asset_type: NATIVE, asset_index: 0 }), + CurrencyId::Native => { + Some(ZenlinkAssetId { chain_id: parachain_id, asset_type: NATIVE, asset_index: 0 }) + }, CurrencyId::XCM(token_id) => Some(ZenlinkAssetId { chain_id: parachain_id, asset_type: LOCAL, @@ -103,11 +110,11 @@ pub fn currency_id_to_zenlink_id( }) }, CurrencyId::ZenlinkLPToken(token1_id, token1_type, token2_id, token2_type) => { - let index = (disc << 8) + - ((token1_id as u64) << 16) + - ((token1_type as u64) << 24) + - ((token2_id as u64) << 32) + - ((token2_type as u64) << 40); + let index = (disc << 8) + + ((token1_id as u64) << 16) + + ((token1_type as u64) << 24) + + ((token2_id as u64) << 32) + + ((token2_type as u64) << 40); Some(ZenlinkAssetId { chain_id: parachain_id, asset_type: LOCAL, asset_index: index }) }, CurrencyId::Token(_) => None, diff --git a/runtime/foucoco/src/lib.rs b/runtime/foucoco/src/lib.rs index f8af075dd..89b16376b 100644 --- a/runtime/foucoco/src/lib.rs +++ b/runtime/foucoco/src/lib.rs @@ -161,10 +161,8 @@ pub type SignedPayload = generic::SignedPayload; // To be removed after contracts migrations executes. use pallet_contracts::migration::{v11, v12, v13, v14, v15}; // Custom storage version bump -use frame_support::{ - pallet_prelude::StorageVersion, - traits::{GetStorageVersion, OnRuntimeUpgrade}, -}; +use frame_support::traits::{GetStorageVersion, OnRuntimeUpgrade}; +use frame_support::pallet_prelude::StorageVersion; pub struct CustomOnRuntimeUpgrade; impl OnRuntimeUpgrade for CustomOnRuntimeUpgrade { @@ -195,7 +193,10 @@ pub type Executive = frame_executive::Executive< frame_system::ChainContext, Runtime, AllPalletsWithSystem, - (CustomOnRuntimeUpgrade, pallet_contracts::migration::Migration), + ( + CustomOnRuntimeUpgrade, + pallet_contracts::migration::Migration, + ), >; pub struct ConvertPrice; @@ -334,56 +335,56 @@ impl Contains for BaseFilter { fn contains(call: &RuntimeCall) -> bool { match call { // These modules are all allowed to be called by transactions: - RuntimeCall::Bounties(_) | - RuntimeCall::ChildBounties(_) | - RuntimeCall::ClientsInfo(_) | - RuntimeCall::Treasury(_) | - RuntimeCall::Tokens(_) | - RuntimeCall::Currencies(_) | - RuntimeCall::ParachainStaking(_) | - RuntimeCall::Democracy(_) | - RuntimeCall::Council(_) | - RuntimeCall::TechnicalCommittee(_) | - RuntimeCall::System(_) | - RuntimeCall::Scheduler(_) | - RuntimeCall::Preimage(_) | - RuntimeCall::Timestamp(_) | - RuntimeCall::Balances(_) | - RuntimeCall::Session(_) | - RuntimeCall::ParachainSystem(_) | - RuntimeCall::Sudo(_) | - RuntimeCall::XcmpQueue(_) | - RuntimeCall::PolkadotXcm(_) | - RuntimeCall::DmpQueue(_) | - RuntimeCall::Utility(_) | - RuntimeCall::Vesting(_) | - RuntimeCall::XTokens(_) | - RuntimeCall::Multisig(_) | - RuntimeCall::Identity(_) | - RuntimeCall::Contracts(_) | - RuntimeCall::ZenlinkProtocol(_) | - RuntimeCall::DiaOracleModule(_) | - RuntimeCall::Fee(_) | - RuntimeCall::Issue(_) | - RuntimeCall::Nomination(_) | - RuntimeCall::Oracle(_) | - RuntimeCall::Redeem(_) | - RuntimeCall::Replace(_) | - RuntimeCall::Security(_) | - RuntimeCall::StellarRelay(_) | - RuntimeCall::VaultRegistry(_) | - RuntimeCall::PooledVaultRewards(_) | - RuntimeCall::Farming(_) | - RuntimeCall::TokenAllowance(_) | - RuntimeCall::AssetRegistry(_) | - RuntimeCall::Proxy(_) | - RuntimeCall::OrmlExtension(_) | - RuntimeCall::TreasuryBuyoutExtension(_) | - RuntimeCall::RewardDistribution(_) | - RuntimeCall::ParachainInfo(_) | - RuntimeCall::CumulusXcm(_) | - RuntimeCall::VaultStaking(_) => true, // All pallets are allowed, but exhaustive match is defensive - // in the case of adding new pallets. + RuntimeCall::Bounties(_) + | RuntimeCall::ChildBounties(_) + | RuntimeCall::ClientsInfo(_) + | RuntimeCall::Treasury(_) + | RuntimeCall::Tokens(_) + | RuntimeCall::Currencies(_) + | RuntimeCall::ParachainStaking(_) + | RuntimeCall::Democracy(_) + | RuntimeCall::Council(_) + | RuntimeCall::TechnicalCommittee(_) + | RuntimeCall::System(_) + | RuntimeCall::Scheduler(_) + | RuntimeCall::Preimage(_) + | RuntimeCall::Timestamp(_) + | RuntimeCall::Balances(_) + | RuntimeCall::Session(_) + | RuntimeCall::ParachainSystem(_) + | RuntimeCall::Sudo(_) + | RuntimeCall::XcmpQueue(_) + | RuntimeCall::PolkadotXcm(_) + | RuntimeCall::DmpQueue(_) + | RuntimeCall::Utility(_) + | RuntimeCall::Vesting(_) + | RuntimeCall::XTokens(_) + | RuntimeCall::Multisig(_) + | RuntimeCall::Identity(_) + | RuntimeCall::Contracts(_) + | RuntimeCall::ZenlinkProtocol(_) + | RuntimeCall::DiaOracleModule(_) + | RuntimeCall::Fee(_) + | RuntimeCall::Issue(_) + | RuntimeCall::Nomination(_) + | RuntimeCall::Oracle(_) + | RuntimeCall::Redeem(_) + | RuntimeCall::Replace(_) + | RuntimeCall::Security(_) + | RuntimeCall::StellarRelay(_) + | RuntimeCall::VaultRegistry(_) + | RuntimeCall::PooledVaultRewards(_) + | RuntimeCall::Farming(_) + | RuntimeCall::TokenAllowance(_) + | RuntimeCall::AssetRegistry(_) + | RuntimeCall::Proxy(_) + | RuntimeCall::OrmlExtension(_) + | RuntimeCall::TreasuryBuyoutExtension(_) + | RuntimeCall::RewardDistribution(_) + | RuntimeCall::ParachainInfo(_) + | RuntimeCall::CumulusXcm(_) + | RuntimeCall::VaultStaking(_) => true, // All pallets are allowed, but exhaustive match is defensive + // in the case of adding new pallets. } } } @@ -1072,13 +1073,7 @@ impl pallet_contracts::Config for Runtime { type CodeHashLockupDepositPercent = CodeHashLockupDepositPercent; type MaxDelegateDependencies = MaxDelegateDependencies; type RuntimeHoldReason = RuntimeHoldReason; - type Migrations = ( - v11::Migration, - v12::Migration, - v13::Migration, - v14::Migration, - v15::Migration, - ); + type Migrations = (v11::Migration, v12::Migration, v13::Migration, v14::Migration, v15::Migration ); type Debug = (); type Environment = (); } @@ -1985,14 +1980,14 @@ impl_runtime_apis! { let gas_limit = gas_limit.unwrap_or(RuntimeBlockWeights::get().max_block); Contracts::bare_call( origin, - dest, - value, - gas_limit, - storage_deposit_limit, - input_data, - pallet_contracts::DebugInfo::UnsafeDebug, - pallet_contracts::CollectEvents::UnsafeCollect, - pallet_contracts::Determinism::Enforced, + dest, + value, + gas_limit, + storage_deposit_limit, + input_data, + pallet_contracts::DebugInfo::UnsafeDebug, + pallet_contracts::CollectEvents::UnsafeCollect, + pallet_contracts::Determinism::Enforced, ) } @@ -2009,14 +2004,14 @@ impl_runtime_apis! { let gas_limit = gas_limit.unwrap_or(RuntimeBlockWeights::get().max_block); Contracts::bare_instantiate( origin, - value, - gas_limit, - storage_deposit_limit, - code, - data, - salt, - pallet_contracts::DebugInfo::UnsafeDebug, - pallet_contracts::CollectEvents::UnsafeCollect, + value, + gas_limit, + storage_deposit_limit, + code, + data, + salt, + pallet_contracts::DebugInfo::UnsafeDebug, + pallet_contracts::CollectEvents::UnsafeCollect, ) } diff --git a/runtime/foucoco/src/weights/mod.rs b/runtime/foucoco/src/weights/mod.rs index d8430393e..32e1c12ce 100644 --- a/runtime/foucoco/src/weights/mod.rs +++ b/runtime/foucoco/src/weights/mod.rs @@ -20,21 +20,21 @@ pub mod block_weights; pub mod dia_oracle; pub mod extrinsic_weights; +pub mod pallet_xcm; +pub mod paritydb_weights; +pub mod rocksdb_weights; +pub mod parachain_staking; +pub mod orml_asset_registry; +pub mod orml_currencies_allowance_extension; +pub mod orml_tokens_management_extension; +pub mod treasury_buyout_extension; pub mod fee; pub mod issue; pub mod nomination; pub mod oracle; -pub mod orml_asset_registry; -pub mod orml_currencies_allowance_extension; -pub mod orml_tokens_management_extension; -pub mod pallet_xcm; -pub mod parachain_staking; -pub mod paritydb_weights; pub mod redeem; pub mod replace; -pub mod rocksdb_weights; pub mod stellar_relay; -pub mod treasury_buyout_extension; pub mod vault_registry; pub use block_weights::constants::BlockExecutionWeight; diff --git a/runtime/foucoco/src/xcm_config.rs b/runtime/foucoco/src/xcm_config.rs index 1a82d7794..ed0eb0ae3 100644 --- a/runtime/foucoco/src/xcm_config.rs +++ b/runtime/foucoco/src/xcm_config.rs @@ -5,12 +5,12 @@ use frame_support::{ match_types, parameter_types, traits::{ConstU32, ContainsPair, Everything, Nothing, ProcessMessageError}, }; -use log; use orml_asset_registry::{AssetRegistryTrader, FixedRateAssetRegistryTrader}; use orml_traits::{ location::{RelativeReserveProvider, Reserve}, parameter_type_with_key, }; +use log; use orml_xcm_support::{DepositToAlternative, IsNativeConcrete, MultiCurrencyAdapter}; use pallet_xcm::XcmPassthrough; use polkadot_parachain::primitives::Sibling; @@ -23,10 +23,7 @@ use xcm_builder::{ ParentIsPreset, RelayChainAsNative, SiblingParachainAsNative, SiblingParachainConvertsVia, SignedAccountId32AsNative, SignedToAccountId32, SovereignSignedViaLocation, TakeWeightCredit, }; -use xcm_executor::{ - traits::{Properties, ShouldExecute}, - XcmExecutor, -}; +use xcm_executor::{traits::{ShouldExecute, Properties}, XcmExecutor}; use super::{ AccountId, AssetRegistry, Balance, Balances, Currencies, CurrencyId, FoucocoTreasuryAccount, diff --git a/runtime/integration-tests/src/amplitude_tests.rs b/runtime/integration-tests/src/amplitude_tests.rs index c40d5af5d..1d9f5a37d 100644 --- a/runtime/integration-tests/src/amplitude_tests.rs +++ b/runtime/integration-tests/src/amplitude_tests.rs @@ -1,5 +1,4 @@ -use crate::{ - mock::{assets_metadata_for_registry_amplitude, USDT_ASSET_ID}, +use crate::{mock::{ USDT_ASSET_ID, assets_metadata_for_registry_amplitude}, sibling, test_macros::{ parachain1_transfer_asset_to_parachain2, parachain1_transfer_asset_to_parachain2_and_back, @@ -11,22 +10,22 @@ use crate::{ AMPLITUDE_ID, ASSETHUB_ID, SIBLING_ID, }; -use asset_hub_kusama_runtime; use frame_support::assert_ok; -use integration_tests_common::constants::{asset_hub_kusama, kusama}; +use asset_hub_kusama_runtime; +use integration_tests_common::{ + constants::{kusama, asset_hub_kusama}, +}; use crate::genesis::{genesis_gen, genesis_sibling}; -use frame_support::traits::OnInitialize; use xcm::latest::NetworkId; -use xcm_emulator::{ - decl_test_networks, decl_test_parachains, decl_test_relay_chains, DefaultMessageProcessor, -}; +use xcm_emulator::{decl_test_networks, decl_test_parachains, decl_test_relay_chains, DefaultMessageProcessor}; +use frame_support::traits::OnInitialize; + // Native fee expected for each token according to the `fee_per_second` values defined in the mock const NATIVE_FEE_WHEN_TRANSFER_TO_PARACHAIN: polkadot_core_primitives::Balance = 4000000000; const BASE_FEE_WHEN_TRANSFER_NON_NATIVE_ASSET: polkadot_core_primitives::Balance = 5000000000; -const KSM_FEE_WHEN_TRANSFER_TO_PARACHAIN: polkadot_core_primitives::Balance = - BASE_FEE_WHEN_TRANSFER_NON_NATIVE_ASSET / 20; +const KSM_FEE_WHEN_TRANSFER_TO_PARACHAIN: polkadot_core_primitives::Balance = BASE_FEE_WHEN_TRANSFER_NON_NATIVE_ASSET/ 20; const USDT_FEE_WHEN_TRANSFER_TO_PARACHAIN: polkadot_core_primitives::Balance = BASE_FEE_WHEN_TRANSFER_NON_NATIVE_ASSET / 10; @@ -132,6 +131,7 @@ fn transfer_ksm_from_kusama_to_amplitude() { ); } + #[test] fn transfer_ksm_from_amplitude_to_kusama() { transfer_10_relay_token_from_parachain_to_relay_chain!( diff --git a/runtime/integration-tests/src/mock.rs b/runtime/integration-tests/src/mock.rs index a9d973e06..729cf69f9 100644 --- a/runtime/integration-tests/src/mock.rs +++ b/runtime/integration-tests/src/mock.rs @@ -1,11 +1,13 @@ -use crate::definitions::asset_hub; +use crate::{definitions::asset_hub}; use amplitude_runtime::CurrencyId as AmplitudeCurrencyId; +use pendulum_runtime::CurrencyId as PendulumCurrencyId; +use polkadot_core_primitives::Balance; use codec::Encode; use frame_support::BoundedVec; -use pendulum_runtime::{definitions::moonbeam, CurrencyId as PendulumCurrencyId}; -use polkadot_core_primitives::Balance; use runtime_common::asset_registry::{CustomMetadata, DiaKeys, StringLimit}; use xcm::{v3::MultiLocation, VersionedMultiLocation}; +use pendulum_runtime::definitions::moonbeam; + pub const UNIT: Balance = 1_000_000_000_000; pub const TEN_UNITS: Balance = 10_000_000_000_000; @@ -43,9 +45,7 @@ pub fn assets_metadata_for_registry_pendulum() -> Vec<(PendulumCurrencyId, Vec::truncate_from( - "USDT Assethub".as_bytes().to_vec(), - ), + name: BoundedVec::::truncate_from("USDT Assethub".as_bytes().to_vec()), symbol: BoundedVec::::truncate_from("USDT".as_bytes().to_vec()), existential_deposit: 1_000u128, location: Some(VersionedMultiLocation::V3(asset_hub::USDT_location())), @@ -81,9 +81,7 @@ pub fn assets_metadata_for_registry_pendulum() -> Vec<(PendulumCurrencyId, Vec::truncate_from( - "Moonbeam BRZ".as_bytes().to_vec(), - ), + name: BoundedVec::::truncate_from("Moonbeam BRZ".as_bytes().to_vec()), symbol: BoundedVec::::truncate_from("BRZ".as_bytes().to_vec()), existential_deposit: 1_000u128, location: Some(xcm::VersionedMultiLocation::V3(moonbeam::BRZ_location())), @@ -127,9 +125,7 @@ pub fn assets_metadata_for_registry_amplitude() -> Vec<(AmplitudeCurrencyId, Vec AmplitudeCurrencyId::XCM(1), orml_asset_registry::AssetMetadata { decimals: 12u32, - name: BoundedVec::::truncate_from( - "USDT Assethub".as_bytes().to_vec(), - ), + name: BoundedVec::::truncate_from("USDT Assethub".as_bytes().to_vec()), symbol: BoundedVec::::truncate_from("USDT".as_bytes().to_vec()), existential_deposit: 1_000u128, location: Some(VersionedMultiLocation::V3(asset_hub::USDT_location())), @@ -163,3 +159,4 @@ pub fn assets_metadata_for_registry_amplitude() -> Vec<(AmplitudeCurrencyId, Vec ), ] } + diff --git a/runtime/integration-tests/src/pendulum_tests.rs b/runtime/integration-tests/src/pendulum_tests.rs index 36c7be1e5..dca720905 100644 --- a/runtime/integration-tests/src/pendulum_tests.rs +++ b/runtime/integration-tests/src/pendulum_tests.rs @@ -1,26 +1,21 @@ -use crate::{ - mock::{assets_metadata_for_registry_pendulum, USDT_ASSET_ID}, - sibling, - test_macros::{ +use crate::{mock::{ USDT_ASSET_ID, assets_metadata_for_registry_pendulum}, + sibling, test_macros::{ moonbeam_transfers_token_and_handle_automation, parachain1_transfer_asset_to_parachain2, parachain1_transfer_asset_to_parachain2_and_back, parachain1_transfer_incorrect_asset_to_parachain2_should_fail, transfer_10_relay_token_from_parachain_to_relay_chain, transfer_20_relay_token_from_relay_chain_to_parachain, transfer_native_token_from_parachain1_to_parachain2_and_back, - }, - ASSETHUB_ID, PENDULUM_ID, SIBLING_ID, -}; + }, ASSETHUB_ID, PENDULUM_ID, SIBLING_ID}; -use crate::genesis::{genesis_gen, genesis_sibling}; -use frame_support::{assert_ok, traits::OnInitialize}; -use integration_tests_common::constants::{asset_hub_polkadot, polkadot}; +use frame_support::assert_ok; #[allow(unused_imports)] use pendulum_runtime::definitions::moonbeam::PARA_ID as MOONBEAM_PARA_ID; use xcm::latest::NetworkId; -use xcm_emulator::{ - decl_test_networks, decl_test_parachains, decl_test_relay_chains, DefaultMessageProcessor, -}; +use xcm_emulator::{decl_test_networks, decl_test_relay_chains, decl_test_parachains, DefaultMessageProcessor}; +use crate::genesis::{genesis_gen, genesis_sibling}; +use integration_tests_common::constants::{polkadot, asset_hub_polkadot}; +use frame_support::traits::OnInitialize; // Native fee expected for each token according to the `fee_per_second` values defined in the mock diff --git a/runtime/integration-tests/src/test_macros.rs b/runtime/integration-tests/src/test_macros.rs index 8f90817d0..38e9d609f 100644 --- a/runtime/integration-tests/src/test_macros.rs +++ b/runtime/integration-tests/src/test_macros.rs @@ -8,11 +8,11 @@ macro_rules! transfer_20_relay_token_from_relay_chain_to_parachain { $parachain_id:ident, $tx_fee:ident ) => {{ - use crate::mock::units; + use xcm_emulator::{Network, TestExt}; + use crate::mock::{units}; use frame_support::traits::fungibles::Inspect; use polkadot_core_primitives::Balance; use xcm::latest::{Junction, Junction::Parachain, Junctions::Here}; - use xcm_emulator::{Network, TestExt}; use $para_runtime::CurrencyId; use integration_tests_common::constants::accounts; @@ -24,21 +24,20 @@ macro_rules! transfer_20_relay_token_from_relay_chain_to_parachain { // get ALICE's balance before the transfer $parachain::execute_with(|| { - orml_tokens_before = $para_runtime::Tokens::balance( - CurrencyId::XCM(0), - &alice_account_id.clone().into(), - ); + orml_tokens_before = $para_runtime::Tokens::balance(CurrencyId::XCM(0), &alice_account_id.clone().into()); }); + // get ALICE's balance in the relay chain, before the transfer. Ensure it is enough to transfer. $relaychain::execute_with(|| { - let before_alice_free_balance = - $relay_runtime::Balances::free_balance(&alice_account_id.clone().into()); + let before_alice_free_balance = $relay_runtime::Balances::free_balance(&alice_account_id.clone().into()); assert!(before_alice_free_balance > transfer_amount); }); + // execute the transfer from relay chain $relaychain::execute_with(|| { + assert_ok!($relay_runtime::XcmPallet::reserve_transfer_assets( $relay_runtime::RuntimeOrigin::signed(alice_account_id.clone().into()), Box::new(Parachain($parachain_id).into()), @@ -50,6 +49,7 @@ macro_rules! transfer_20_relay_token_from_relay_chain_to_parachain { Box::new((Here, transfer_amount).into()), 0 )); + }); // a "Deposited" event occurred is proof that the transfer was successful @@ -57,8 +57,8 @@ macro_rules! transfer_20_relay_token_from_relay_chain_to_parachain { use $para_runtime::{RuntimeEvent, System}; for event in System::events() { - println! {"Parachain events when receiving of relay token"} - println! {"{:?}", event} + println!{"Parachain events when receiving of relay token"} + println!{"{:?}", event} } assert!(System::events().iter().any(|r| matches!( @@ -74,10 +74,7 @@ macro_rules! transfer_20_relay_token_from_relay_chain_to_parachain { $parachain::execute_with(|| { assert_eq!( - $para_runtime::Tokens::balance( - CurrencyId::XCM(0), - &alice_account_id.clone().into() - ), + $para_runtime::Tokens::balance(CurrencyId::XCM(0), &alice_account_id.clone().into()), orml_tokens_before + transfer_amount - $tx_fee, "Incorrect amount received" ); @@ -195,8 +192,8 @@ macro_rules! parachain1_transfer_incorrect_asset_to_parachain2_should_fail { $parachain2_id:ident ) => {{ use crate::mock::{INCORRECT_ASSET_ID, TEN_UNITS, UNIT}; + use xcm_emulator::TestExt; use frame_support::traits::{fungibles::Inspect, Currency}; - use integration_tests_common::constants::accounts; use polkadot_core_primitives::AccountId; use polkadot_parachain::primitives::Sibling; use sp_runtime::{traits::AccountIdConversion, MultiAddress}; @@ -206,7 +203,7 @@ macro_rules! parachain1_transfer_incorrect_asset_to_parachain2_should_fail { Junctions::{X1, X2}, MultiLocation, WeightLimit, }; - use xcm_emulator::TestExt; + use integration_tests_common::constants::accounts; use $para2_runtime::CurrencyId; let parachain2_account: AccountId = Sibling::from($parachain2_id).into_account_truncating(); @@ -252,10 +249,7 @@ macro_rules! parachain1_transfer_incorrect_asset_to_parachain2_should_fail { assert_ok!(PolkadotXcm::limited_reserve_transfer_assets( origin.clone(), Box::new(MultiLocation::new(1, X1(Parachain($parachain2_id))).into()), - Box::new( - Junction::AccountId32 { id: bob_account_id.clone().into(), network: None } - .into() - ), + Box::new(Junction::AccountId32 { id: bob_account_id.clone().into(), network: None }.into()), Box::new( (X2(PalletInstance(50), GeneralIndex(INCORRECT_ASSET_ID as u128)), TEN_UNITS) .into() @@ -284,8 +278,7 @@ macro_rules! parachain1_transfer_incorrect_asset_to_parachain2_should_fail { RuntimeEvent::XcmpQueue(cumulus_pallet_xcmp_queue::Event::Fail { message_hash: _, error: xcm::v3::Error::TooExpensive, - weight: _, - .. + weight: _, .. }) ))); }); @@ -309,9 +302,9 @@ macro_rules! parachain1_transfer_asset_to_parachain2 { $parachain2_id:ident, $tx_fee:ident ) => {{ + use xcm_emulator::TestExt; use crate::mock::{TEN_UNITS, UNIT}; use frame_support::traits::{fungibles::Inspect, Currency}; - use integration_tests_common::constants::accounts; use polkadot_core_primitives::AccountId; use polkadot_parachain::primitives::Sibling; use sp_runtime::{traits::AccountIdConversion, MultiAddress}; @@ -321,8 +314,8 @@ macro_rules! parachain1_transfer_asset_to_parachain2 { Junctions::{X1, X2}, MultiLocation, WeightLimit, }; - use xcm_emulator::TestExt; use $para2_runtime::CurrencyId; + use integration_tests_common::constants::accounts; let alice_account_id = accounts::init_balances()[0].clone(); let bob_account_id = accounts::init_balances()[1].clone(); @@ -330,13 +323,7 @@ macro_rules! parachain1_transfer_asset_to_parachain2 { let parachain2_account: AccountId = Sibling::from($parachain2_id).into_account_truncating(); $parachain2::execute_with(|| { - assert_eq!( - $para2_runtime::Tokens::balance( - CurrencyId::XCM(1), - &alice_account_id.clone().into() - ), - 0 - ); + assert_eq!($para2_runtime::Tokens::balance(CurrencyId::XCM(1), &alice_account_id.clone().into()), 0); }); $parachain1::execute_with(|| { @@ -369,10 +356,7 @@ macro_rules! parachain1_transfer_asset_to_parachain2 { assert_ok!(PolkadotXcm::limited_reserve_transfer_assets( origin.clone(), Box::new(MultiLocation::new(1, X1(Parachain($parachain2_id))).into()), - Box::new( - Junction::AccountId32 { id: bob_account_id.clone().into(), network: None } - .into() - ), + Box::new(Junction::AccountId32 { id: bob_account_id.clone().into(), network: None }.into()), Box::new( (X2(PalletInstance(50), GeneralIndex($para1_asset_id as u128)), TEN_UNITS) .into() @@ -411,10 +395,7 @@ macro_rules! parachain1_transfer_asset_to_parachain2 { ))); assert_eq!( - $para2_runtime::Tokens::balance( - $para2_runtime::CurrencyId::XCM(1), - &bob_account_id.clone().into() - ), + $para2_runtime::Tokens::balance($para2_runtime::CurrencyId::XCM(1), &bob_account_id.clone().into()), TEN_UNITS - $tx_fee ); }); @@ -433,13 +414,13 @@ macro_rules! parachain1_transfer_asset_to_parachain2_and_back { $network_id: ident, $tx_fee: ident ) => {{ + use xcm_emulator::TestExt; use crate::mock::{TEN_UNITS, UNIT}; use frame_support::traits::{fungible::Mutate, fungibles::Inspect}; - use integration_tests_common::constants::accounts; use xcm::latest::{ Junction, Junction::Parachain, Junctions::X2, MultiLocation, WeightLimit, }; - use xcm_emulator::TestExt; + use integration_tests_common::constants::accounts; let bob_account_id = accounts::init_balances()[1].clone(); @@ -478,10 +459,7 @@ macro_rules! parachain1_transfer_asset_to_parachain2_and_back { 1, X2( Parachain($parachain1_id), - Junction::AccountId32 { - network: Some($network_id), - id: bob_account_id.clone().into() - } + Junction::AccountId32 { network: Some($network_id), id: bob_account_id.clone().into() } ) ) .into() @@ -503,6 +481,7 @@ macro_rules! parachain1_transfer_asset_to_parachain2_and_back { $parachain1::execute_with(|| { use $para1_runtime::*; + let events = System::events(); match &events[events.len() - 2] { &frame_system::EventRecord { diff --git a/runtime/pendulum/src/lib.rs b/runtime/pendulum/src/lib.rs index ef21ead44..e60907e56 100644 --- a/runtime/pendulum/src/lib.rs +++ b/runtime/pendulum/src/lib.rs @@ -77,8 +77,8 @@ use runtime_common::{ use cumulus_pallet_parachain_system::RelayNumberStrictlyIncreases; -pub use dia_oracle::dia::AssetId; use dia_oracle::DiaOracle; +pub use dia_oracle::dia::AssetId; pub use issue::{Event as IssueEvent, IssueRequest}; pub use nomination::Event as NominationEvent; use oracle::dia::DiaOracleAdapter; @@ -162,10 +162,8 @@ parameter_types! { use pallet_contracts::migration::{v11, v12, v13, v14, v15}; // Custom storage version bump -use frame_support::{ - pallet_prelude::StorageVersion, - traits::{GetStorageVersion, OnRuntimeUpgrade}, -}; +use frame_support::traits::{GetStorageVersion, OnRuntimeUpgrade}; +use frame_support::pallet_prelude::StorageVersion; pub struct CustomOnRuntimeUpgrade; impl OnRuntimeUpgrade for CustomOnRuntimeUpgrade { @@ -190,6 +188,7 @@ impl OnRuntimeUpgrade for CustomOnRuntimeUpgrade { } } + /// Executive: handles dispatch to the various modules. pub type Executive = frame_executive::Executive< Runtime, @@ -197,7 +196,10 @@ pub type Executive = frame_executive::Executive< frame_system::ChainContext, Runtime, AllPalletsWithSystem, - (CustomOnRuntimeUpgrade, pallet_contracts::migration::Migration), + ( + CustomOnRuntimeUpgrade, + pallet_contracts::migration::Migration, + ), >; pub struct ConvertPrice; @@ -336,54 +338,54 @@ impl Contains for BaseFilter { fn contains(call: &RuntimeCall) -> bool { match call { // These modules are all allowed to be called by transactions: - RuntimeCall::Bounties(_) | - RuntimeCall::ChildBounties(_) | - RuntimeCall::ClientsInfo(_) | - RuntimeCall::Treasury(_) | - RuntimeCall::Tokens(_) | - RuntimeCall::Currencies(_) | - RuntimeCall::ParachainStaking(_) | - RuntimeCall::Democracy(_) | - RuntimeCall::Council(_) | - RuntimeCall::TechnicalCommittee(_) | - RuntimeCall::System(_) | - RuntimeCall::Scheduler(_) | - RuntimeCall::Preimage(_) | - RuntimeCall::Timestamp(_) | - RuntimeCall::Balances(_) | - RuntimeCall::Session(_) | - RuntimeCall::ParachainSystem(_) | - RuntimeCall::XcmpQueue(_) | - RuntimeCall::PolkadotXcm(_) | - RuntimeCall::DmpQueue(_) | - RuntimeCall::Utility(_) | - RuntimeCall::Vesting(_) | - RuntimeCall::XTokens(_) | - RuntimeCall::Multisig(_) | - RuntimeCall::Identity(_) | - RuntimeCall::Contracts(_) | - RuntimeCall::ZenlinkProtocol(_) | - RuntimeCall::DiaOracleModule(_) | - RuntimeCall::VestingManager(_) | - RuntimeCall::TokenAllowance(_) | - RuntimeCall::AssetRegistry(_) | - RuntimeCall::Fee(_) | - RuntimeCall::Issue(_) | - RuntimeCall::Nomination(_) | - RuntimeCall::Oracle(_) | - RuntimeCall::Redeem(_) | - RuntimeCall::Replace(_) | - RuntimeCall::Security(_) | - RuntimeCall::StellarRelay(_) | - RuntimeCall::VaultRegistry(_) | - RuntimeCall::PooledVaultRewards(_) | - RuntimeCall::RewardDistribution(_) | - RuntimeCall::Farming(_) | - RuntimeCall::Proxy(_) | - RuntimeCall::TreasuryBuyoutExtension(_) | - RuntimeCall::ParachainInfo(_) | - RuntimeCall::CumulusXcm(_) | - RuntimeCall::VaultStaking(_) => true, + RuntimeCall::Bounties(_) + | RuntimeCall::ChildBounties(_) + | RuntimeCall::ClientsInfo(_) + | RuntimeCall::Treasury(_) + | RuntimeCall::Tokens(_) + | RuntimeCall::Currencies(_) + | RuntimeCall::ParachainStaking(_) + | RuntimeCall::Democracy(_) + | RuntimeCall::Council(_) + | RuntimeCall::TechnicalCommittee(_) + | RuntimeCall::System(_) + | RuntimeCall::Scheduler(_) + | RuntimeCall::Preimage(_) + | RuntimeCall::Timestamp(_) + | RuntimeCall::Balances(_) + | RuntimeCall::Session(_) + | RuntimeCall::ParachainSystem(_) + | RuntimeCall::XcmpQueue(_) + | RuntimeCall::PolkadotXcm(_) + | RuntimeCall::DmpQueue(_) + | RuntimeCall::Utility(_) + | RuntimeCall::Vesting(_) + | RuntimeCall::XTokens(_) + | RuntimeCall::Multisig(_) + | RuntimeCall::Identity(_) + | RuntimeCall::Contracts(_) + | RuntimeCall::ZenlinkProtocol(_) + | RuntimeCall::DiaOracleModule(_) + | RuntimeCall::VestingManager(_) + | RuntimeCall::TokenAllowance(_) + | RuntimeCall::AssetRegistry(_) + | RuntimeCall::Fee(_) + | RuntimeCall::Issue(_) + | RuntimeCall::Nomination(_) + | RuntimeCall::Oracle(_) + | RuntimeCall::Redeem(_) + | RuntimeCall::Replace(_) + | RuntimeCall::Security(_) + | RuntimeCall::StellarRelay(_) + | RuntimeCall::VaultRegistry(_) + | RuntimeCall::PooledVaultRewards(_) + | RuntimeCall::RewardDistribution(_) + | RuntimeCall::Farming(_) + | RuntimeCall::Proxy(_) + | RuntimeCall::TreasuryBuyoutExtension(_) + | RuntimeCall::ParachainInfo(_) + | RuntimeCall::CumulusXcm(_) + | RuntimeCall::VaultStaking(_) => true, // All pallets are allowed, but exhaustive match is defensive // in the case of adding new pallets. } @@ -393,8 +395,8 @@ impl Contains for BaseFilter { // Configure FRAME pallets to include in runtime. impl frame_system::Config for Runtime { - /// The Block type used by the runtime. This is used by construct_runtime to retrieve the extrinsics or other block specific data as needed. - type Block = Block; + /// The Block type used by the runtime. This is used by construct_runtime to retrieve the extrinsics or other block specific data as needed. + type Block = Block; /// The identifier used to distinguish between accounts. type AccountId = AccountId; /// The aggregated dispatch type that is available for extrinsics. @@ -1024,13 +1026,7 @@ impl pallet_contracts::Config for Runtime { type CodeHashLockupDepositPercent = CodeHashLockupDepositPercent; type MaxDelegateDependencies = MaxDelegateDependencies; type RuntimeHoldReason = RuntimeHoldReason; - type Migrations = ( - v11::Migration, - v12::Migration, - v13::Migration, - v14::Migration, - v15::Migration, - ); + type Migrations = (v11::Migration, v12::Migration, v13::Migration, v14::Migration, v15::Migration ); type Debug = (); type Environment = (); } @@ -1968,14 +1964,14 @@ impl_runtime_apis! { let gas_limit = gas_limit.unwrap_or(RuntimeBlockWeights::get().max_block); Contracts::bare_call( origin, - dest, - value, - gas_limit, - storage_deposit_limit, - input_data, - pallet_contracts::DebugInfo::UnsafeDebug, - pallet_contracts::CollectEvents::UnsafeCollect, - pallet_contracts::Determinism::Enforced, + dest, + value, + gas_limit, + storage_deposit_limit, + input_data, + pallet_contracts::DebugInfo::UnsafeDebug, + pallet_contracts::CollectEvents::UnsafeCollect, + pallet_contracts::Determinism::Enforced, ) } @@ -1992,14 +1988,14 @@ impl_runtime_apis! { let gas_limit = gas_limit.unwrap_or(RuntimeBlockWeights::get().max_block); Contracts::bare_instantiate( origin, - value, - gas_limit, - storage_deposit_limit, - code, - data, - salt, - pallet_contracts::DebugInfo::UnsafeDebug, - pallet_contracts::CollectEvents::UnsafeCollect, + value, + gas_limit, + storage_deposit_limit, + code, + data, + salt, + pallet_contracts::DebugInfo::UnsafeDebug, + pallet_contracts::CollectEvents::UnsafeCollect, ) } diff --git a/runtime/pendulum/src/weights/mod.rs b/runtime/pendulum/src/weights/mod.rs index 5206c8949..9d131ef25 100644 --- a/runtime/pendulum/src/weights/mod.rs +++ b/runtime/pendulum/src/weights/mod.rs @@ -19,20 +19,20 @@ pub mod block_weights; pub mod dia_oracle; pub mod extrinsic_weights; +pub mod pallet_xcm; +pub mod paritydb_weights; +pub mod rocksdb_weights; +pub mod parachain_staking; +pub mod orml_asset_registry; +pub mod orml_currencies_allowance_extension; +pub mod treasury_buyout_extension; pub mod fee; pub mod issue; pub mod nomination; pub mod oracle; -pub mod orml_asset_registry; -pub mod orml_currencies_allowance_extension; -pub mod pallet_xcm; -pub mod parachain_staking; -pub mod paritydb_weights; pub mod redeem; pub mod replace; -pub mod rocksdb_weights; pub mod stellar_relay; -pub mod treasury_buyout_extension; pub mod vault_registry; pub use block_weights::constants::BlockExecutionWeight; diff --git a/runtime/pendulum/src/xcm_config.rs b/runtime/pendulum/src/xcm_config.rs index 4d4c511b4..fd3acfbb7 100644 --- a/runtime/pendulum/src/xcm_config.rs +++ b/runtime/pendulum/src/xcm_config.rs @@ -23,10 +23,7 @@ use xcm_builder::{ ParentIsPreset, RelayChainAsNative, SiblingParachainAsNative, SiblingParachainConvertsVia, SignedAccountId32AsNative, SignedToAccountId32, SovereignSignedViaLocation, TakeWeightCredit, }; -use xcm_executor::{ - traits::{Properties, ShouldExecute}, - XcmExecutor, -}; +use xcm_executor::{traits::{ShouldExecute, Properties}, XcmExecutor}; use runtime_common::{ asset_registry::FixedConversionRateProvider, From c262c7a58a4f0b0d453f419cc255740aa7bb92ac Mon Sep 17 00:00:00 2001 From: Gianfranco Date: Wed, 28 Aug 2024 18:25:41 -0300 Subject: [PATCH 08/38] generate weights for dia-oracle pallet --- chain-extensions/price/Cargo.toml | 2 +- runtime/amplitude/src/lib.rs | 4 ---- runtime/amplitude/src/weights/mod.rs | 1 + runtime/common/Cargo.toml | 2 +- runtime/foucoco/Cargo.toml | 4 ++-- runtime/foucoco/src/lib.rs | 4 ---- runtime/foucoco/src/weights/mod.rs | 1 + runtime/pendulum/src/lib.rs | 4 ---- runtime/pendulum/src/weights/mod.rs | 1 + 9 files changed, 7 insertions(+), 16 deletions(-) diff --git a/chain-extensions/price/Cargo.toml b/chain-extensions/price/Cargo.toml index 368ca4633..718630e44 100644 --- a/chain-extensions/price/Cargo.toml +++ b/chain-extensions/price/Cargo.toml @@ -34,7 +34,7 @@ orml-tokens = { git = "https://github.com/open-web3-stack/open-runtime-module-li vesting-manager = { path = "../../pallets/vesting-manager", default-features = false } # DIA -dia-oracle = { git = "https://github.com/pendulum-chain/oracle-pallet", default-features = false, branch = "polkadot-v1.1.0" } +dia-oracle = { git = "https://github.com/pendulum-chain/oracle-pallet", default-features = false, branch = "polkadot-v1.1.0-fix" } [features] diff --git a/runtime/amplitude/src/lib.rs b/runtime/amplitude/src/lib.rs index 35f8cef45..d36d7854e 100644 --- a/runtime/amplitude/src/lib.rs +++ b/runtime/amplitude/src/lib.rs @@ -1822,15 +1822,11 @@ impl_runtime_apis! { use frame_system_benchmarking::Pallet as SystemBench; use baseline::Pallet as BaselineBench; - #[allow(non_local_definitions)] impl frame_system_benchmarking::Config for Runtime {} - #[allow(non_local_definitions)] impl baseline::Config for Runtime {} - #[allow(non_local_definitions)] impl runtime_common::benchmarking::orml_asset_registry::Config for Runtime {} use cumulus_pallet_session_benchmarking::Pallet as SessionBench; - #[allow(non_local_definitions)] impl cumulus_pallet_session_benchmarking::Config for Runtime {} let whitelist: Vec = vec![ diff --git a/runtime/amplitude/src/weights/mod.rs b/runtime/amplitude/src/weights/mod.rs index 7edb0ea68..690046312 100644 --- a/runtime/amplitude/src/weights/mod.rs +++ b/runtime/amplitude/src/weights/mod.rs @@ -35,6 +35,7 @@ pub mod redeem; pub mod replace; pub mod stellar_relay; pub mod vault_registry; +pub mod dia_oracle; pub use block_weights::constants::BlockExecutionWeight; pub use extrinsic_weights::constants::ExtrinsicBaseWeight; diff --git a/runtime/common/Cargo.toml b/runtime/common/Cargo.toml index 80d13b00a..c7b5f8a29 100644 --- a/runtime/common/Cargo.toml +++ b/runtime/common/Cargo.toml @@ -31,7 +31,7 @@ orml-traits = { git = "https://github.com/open-web3-stack/open-runtime-module-li orml-asset-registry = { git = "https://github.com/open-web3-stack/open-runtime-module-library", default-features = false, branch = "polkadot-v1.1.0" } orml-xcm-support = { git = "https://github.com/open-web3-stack/open-runtime-module-library", default-features = false, branch = "polkadot-v1.1.0" } -dia-oracle = { git = "https://github.com/pendulum-chain/oracle-pallet", default-features = false, branch = "polkadot-v1.1.0" } +dia-oracle = { git = "https://github.com/pendulum-chain/oracle-pallet", default-features = false, branch = "polkadot-v1.1.0-fix" } zenlink-protocol = { git = "https://github.com/bifrost-finance/Zenlink-DEX-Module", default-features = false, branch = "release-polkadot-v1.1.0" } spacewalk-primitives = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "580dd307ede65f90f17df6731645b678f3596e0f" } diff --git a/runtime/foucoco/Cargo.toml b/runtime/foucoco/Cargo.toml index d3ae5df3e..bd55492ac 100644 --- a/runtime/foucoco/Cargo.toml +++ b/runtime/foucoco/Cargo.toml @@ -114,8 +114,8 @@ orml-tokens-management-extension = { path = "../../pallets/orml-tokens-managemen treasury-buyout-extension = { path = "../../pallets/treasury-buyout-extension", default-features = false } # DIA -dia-oracle = { git = "https://github.com/pendulum-chain/oracle-pallet", default-features = false, branch = "polkadot-v1.1.0" } -dia-oracle-runtime-api = { git = "https://github.com/pendulum-chain/oracle-pallet", default-features = false, branch = "polkadot-v1.1.0" } +dia-oracle = { git = "https://github.com/pendulum-chain/oracle-pallet", default-features = false, branch = "polkadot-v1.1.0-fix" } +dia-oracle-runtime-api = { git = "https://github.com/pendulum-chain/oracle-pallet", default-features = false, branch = "polkadot-v1.1.0-fix" } # Polkadot pallet-xcm = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, branch = "release-polkadot-v1.1.0" } diff --git a/runtime/foucoco/src/lib.rs b/runtime/foucoco/src/lib.rs index 89b16376b..2035ce79a 100644 --- a/runtime/foucoco/src/lib.rs +++ b/runtime/foucoco/src/lib.rs @@ -1825,15 +1825,11 @@ impl_runtime_apis! { use frame_system_benchmarking::Pallet as SystemBench; use baseline::Pallet as BaselineBench; - #[allow(non_local_definitions)] impl frame_system_benchmarking::Config for Runtime {} - #[allow(non_local_definitions)] impl baseline::Config for Runtime {} - #[allow(non_local_definitions)] impl runtime_common::benchmarking::orml_asset_registry::Config for Runtime {} use cumulus_pallet_session_benchmarking::Pallet as SessionBench; - #[allow(non_local_definitions)] impl cumulus_pallet_session_benchmarking::Config for Runtime {} let whitelist: Vec = vec![ diff --git a/runtime/foucoco/src/weights/mod.rs b/runtime/foucoco/src/weights/mod.rs index 32e1c12ce..0d05e7b7f 100644 --- a/runtime/foucoco/src/weights/mod.rs +++ b/runtime/foucoco/src/weights/mod.rs @@ -36,6 +36,7 @@ pub mod redeem; pub mod replace; pub mod stellar_relay; pub mod vault_registry; +pub mod dia_oracle; pub use block_weights::constants::BlockExecutionWeight; pub use extrinsic_weights::constants::ExtrinsicBaseWeight; diff --git a/runtime/pendulum/src/lib.rs b/runtime/pendulum/src/lib.rs index e60907e56..22a26d3ab 100644 --- a/runtime/pendulum/src/lib.rs +++ b/runtime/pendulum/src/lib.rs @@ -1824,15 +1824,11 @@ impl_runtime_apis! { use frame_system_benchmarking::Pallet as SystemBench; use baseline::Pallet as BaselineBench; - #[allow(non_local_definitions)] impl frame_system_benchmarking::Config for Runtime {} - #[allow(non_local_definitions)] impl baseline::Config for Runtime {} - #[allow(non_local_definitions)] impl runtime_common::benchmarking::orml_asset_registry::Config for Runtime {} use cumulus_pallet_session_benchmarking::Pallet as SessionBench; - #[allow(non_local_definitions)] impl cumulus_pallet_session_benchmarking::Config for Runtime {} diff --git a/runtime/pendulum/src/weights/mod.rs b/runtime/pendulum/src/weights/mod.rs index 9d131ef25..414957f72 100644 --- a/runtime/pendulum/src/weights/mod.rs +++ b/runtime/pendulum/src/weights/mod.rs @@ -34,6 +34,7 @@ pub mod redeem; pub mod replace; pub mod stellar_relay; pub mod vault_registry; +pub mod dia_oracle; pub use block_weights::constants::BlockExecutionWeight; pub use extrinsic_weights::constants::ExtrinsicBaseWeight; From c66910f4957c47ec0d1f150965c1cdcefed4cbac Mon Sep 17 00:00:00 2001 From: Gianfranco Date: Thu, 29 Aug 2024 07:42:08 -0300 Subject: [PATCH 09/38] re-introduce non local definition flag for clippy --- runtime/amplitude/src/lib.rs | 4 ++++ runtime/foucoco/src/lib.rs | 4 ++++ runtime/pendulum/src/lib.rs | 4 ++++ 3 files changed, 12 insertions(+) diff --git a/runtime/amplitude/src/lib.rs b/runtime/amplitude/src/lib.rs index d36d7854e..35f8cef45 100644 --- a/runtime/amplitude/src/lib.rs +++ b/runtime/amplitude/src/lib.rs @@ -1822,11 +1822,15 @@ impl_runtime_apis! { use frame_system_benchmarking::Pallet as SystemBench; use baseline::Pallet as BaselineBench; + #[allow(non_local_definitions)] impl frame_system_benchmarking::Config for Runtime {} + #[allow(non_local_definitions)] impl baseline::Config for Runtime {} + #[allow(non_local_definitions)] impl runtime_common::benchmarking::orml_asset_registry::Config for Runtime {} use cumulus_pallet_session_benchmarking::Pallet as SessionBench; + #[allow(non_local_definitions)] impl cumulus_pallet_session_benchmarking::Config for Runtime {} let whitelist: Vec = vec![ diff --git a/runtime/foucoco/src/lib.rs b/runtime/foucoco/src/lib.rs index 2035ce79a..89b16376b 100644 --- a/runtime/foucoco/src/lib.rs +++ b/runtime/foucoco/src/lib.rs @@ -1825,11 +1825,15 @@ impl_runtime_apis! { use frame_system_benchmarking::Pallet as SystemBench; use baseline::Pallet as BaselineBench; + #[allow(non_local_definitions)] impl frame_system_benchmarking::Config for Runtime {} + #[allow(non_local_definitions)] impl baseline::Config for Runtime {} + #[allow(non_local_definitions)] impl runtime_common::benchmarking::orml_asset_registry::Config for Runtime {} use cumulus_pallet_session_benchmarking::Pallet as SessionBench; + #[allow(non_local_definitions)] impl cumulus_pallet_session_benchmarking::Config for Runtime {} let whitelist: Vec = vec![ diff --git a/runtime/pendulum/src/lib.rs b/runtime/pendulum/src/lib.rs index 22a26d3ab..e60907e56 100644 --- a/runtime/pendulum/src/lib.rs +++ b/runtime/pendulum/src/lib.rs @@ -1824,11 +1824,15 @@ impl_runtime_apis! { use frame_system_benchmarking::Pallet as SystemBench; use baseline::Pallet as BaselineBench; + #[allow(non_local_definitions)] impl frame_system_benchmarking::Config for Runtime {} + #[allow(non_local_definitions)] impl baseline::Config for Runtime {} + #[allow(non_local_definitions)] impl runtime_common::benchmarking::orml_asset_registry::Config for Runtime {} use cumulus_pallet_session_benchmarking::Pallet as SessionBench; + #[allow(non_local_definitions)] impl cumulus_pallet_session_benchmarking::Config for Runtime {} From fe60e2df476794d4b01724bbbef2302a34c82904 Mon Sep 17 00:00:00 2001 From: Gianfranco Date: Thu, 29 Aug 2024 08:46:28 -0300 Subject: [PATCH 10/38] remove temporary dia-oracle fix branch --- chain-extensions/price/Cargo.toml | 2 +- runtime/common/Cargo.toml | 2 +- runtime/foucoco/Cargo.toml | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/chain-extensions/price/Cargo.toml b/chain-extensions/price/Cargo.toml index 718630e44..368ca4633 100644 --- a/chain-extensions/price/Cargo.toml +++ b/chain-extensions/price/Cargo.toml @@ -34,7 +34,7 @@ orml-tokens = { git = "https://github.com/open-web3-stack/open-runtime-module-li vesting-manager = { path = "../../pallets/vesting-manager", default-features = false } # DIA -dia-oracle = { git = "https://github.com/pendulum-chain/oracle-pallet", default-features = false, branch = "polkadot-v1.1.0-fix" } +dia-oracle = { git = "https://github.com/pendulum-chain/oracle-pallet", default-features = false, branch = "polkadot-v1.1.0" } [features] diff --git a/runtime/common/Cargo.toml b/runtime/common/Cargo.toml index c7b5f8a29..80d13b00a 100644 --- a/runtime/common/Cargo.toml +++ b/runtime/common/Cargo.toml @@ -31,7 +31,7 @@ orml-traits = { git = "https://github.com/open-web3-stack/open-runtime-module-li orml-asset-registry = { git = "https://github.com/open-web3-stack/open-runtime-module-library", default-features = false, branch = "polkadot-v1.1.0" } orml-xcm-support = { git = "https://github.com/open-web3-stack/open-runtime-module-library", default-features = false, branch = "polkadot-v1.1.0" } -dia-oracle = { git = "https://github.com/pendulum-chain/oracle-pallet", default-features = false, branch = "polkadot-v1.1.0-fix" } +dia-oracle = { git = "https://github.com/pendulum-chain/oracle-pallet", default-features = false, branch = "polkadot-v1.1.0" } zenlink-protocol = { git = "https://github.com/bifrost-finance/Zenlink-DEX-Module", default-features = false, branch = "release-polkadot-v1.1.0" } spacewalk-primitives = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "580dd307ede65f90f17df6731645b678f3596e0f" } diff --git a/runtime/foucoco/Cargo.toml b/runtime/foucoco/Cargo.toml index bd55492ac..d3ae5df3e 100644 --- a/runtime/foucoco/Cargo.toml +++ b/runtime/foucoco/Cargo.toml @@ -114,8 +114,8 @@ orml-tokens-management-extension = { path = "../../pallets/orml-tokens-managemen treasury-buyout-extension = { path = "../../pallets/treasury-buyout-extension", default-features = false } # DIA -dia-oracle = { git = "https://github.com/pendulum-chain/oracle-pallet", default-features = false, branch = "polkadot-v1.1.0-fix" } -dia-oracle-runtime-api = { git = "https://github.com/pendulum-chain/oracle-pallet", default-features = false, branch = "polkadot-v1.1.0-fix" } +dia-oracle = { git = "https://github.com/pendulum-chain/oracle-pallet", default-features = false, branch = "polkadot-v1.1.0" } +dia-oracle-runtime-api = { git = "https://github.com/pendulum-chain/oracle-pallet", default-features = false, branch = "polkadot-v1.1.0" } # Polkadot pallet-xcm = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, branch = "release-polkadot-v1.1.0" } From 816e908668cd9d491f607505a3fe9029f627e108 Mon Sep 17 00:00:00 2001 From: Gianfranco Date: Tue, 3 Sep 2024 09:15:24 -0300 Subject: [PATCH 11/38] run fmt nightly --- chain-extensions/price/src/lib.rs | 4 +- node/src/chain_spec.rs | 92 ++++++----- node/src/cli.rs | 6 +- node/src/command.rs | 25 +-- node/src/service.rs | 33 ++-- .../src/lib.rs | 7 +- .../src/mock.rs | 2 +- .../src/mock.rs | 2 +- .../rpc/runtime-api/src/lib.rs | 5 +- pallets/parachain-staking/src/benchmarking.rs | 5 +- pallets/parachain-staking/src/lib.rs | 7 +- pallets/parachain-staking/src/mock.rs | 8 +- pallets/parachain-staking/src/set.rs | 2 +- pallets/parachain-staking/src/try_state.rs | 4 +- pallets/treasury-buyout-extension/src/lib.rs | 8 +- pallets/treasury-buyout-extension/src/mock.rs | 5 +- .../treasury-buyout-extension/src/tests.rs | 7 +- runtime/amplitude/src/lib.rs | 149 +++++++++-------- runtime/amplitude/src/weights/mod.rs | 17 +- runtime/amplitude/src/xcm_config.rs | 5 +- runtime/common/src/asset_registry.rs | 10 +- .../src/benchmarking/orml_asset_registry.rs | 9 +- runtime/common/src/zenlink.rs | 45 +++-- runtime/foucoco/src/lib.rs | 151 ++++++++--------- runtime/foucoco/src/weights/mod.rs | 17 +- runtime/foucoco/src/xcm_config.rs | 7 +- .../integration-tests/src/amplitude_tests.rs | 20 +-- runtime/integration-tests/src/mock.rs | 21 ++- .../integration-tests/src/pendulum_tests.rs | 21 ++- runtime/integration-tests/src/test_macros.rs | 69 +++++--- runtime/pendulum/src/lib.rs | 154 +++++++++--------- runtime/pendulum/src/weights/mod.rs | 15 +- runtime/pendulum/src/xcm_config.rs | 5 +- 33 files changed, 505 insertions(+), 432 deletions(-) diff --git a/chain-extensions/price/src/lib.rs b/chain-extensions/price/src/lib.rs index cb621a671..b6b59a30b 100644 --- a/chain-extensions/price/src/lib.rs +++ b/chain-extensions/price/src/lib.rs @@ -8,13 +8,13 @@ use frame_support::{ pallet_prelude::{Get, PhantomData}, DefaultNoBound, }; -use sp_tracing::{error, trace}; -use scale_info::prelude::vec::Vec; use pallet_contracts::chain_extension::{ ChainExtension, Environment, Ext, InitState, RetVal, SysConfig, }; +use scale_info::prelude::vec::Vec; use sp_core::crypto::UncheckedFrom; use sp_runtime::DispatchError; +use sp_tracing::{error, trace}; use sp_weights::Weight; // Enum that handles all supported function id options for this chain extension module diff --git a/node/src/chain_spec.rs b/node/src/chain_spec.rs index e6ab6f713..79b51dda5 100644 --- a/node/src/chain_spec.rs +++ b/node/src/chain_spec.rs @@ -1,5 +1,7 @@ #![allow(clippy::default_constructed_unit_structs)] +use crate::constants::{amplitude, foucoco, pendulum}; +use core::default::Default; use cumulus_primitives_core::ParaId; use runtime_common::{AccountId, AuraId, Balance, BlockNumber, Signature, UNIT}; use sc_chain_spec::{ChainSpecExtension, ChainSpecGroup}; @@ -13,9 +15,7 @@ use sp_runtime::{ traits::{IdentifyAccount, Verify}, FixedPointNumber, FixedU128, Perquintill, }; -use core::default::Default; use spacewalk_primitives::{oracle::Key, Asset, CurrencyId, CurrencyId::XCM, VaultCurrencyPair}; -use crate::constants::{amplitude, foucoco, pendulum}; const MAINNET_USDC_CURRENCY_ID: CurrencyId = pendulum_runtime::GetWrappedCurrencyId::get(); const TESTNET_USDC_CURRENCY_ID: CurrencyId = amplitude_runtime::GetWrappedCurrencyId::get(); @@ -253,25 +253,25 @@ pub fn foucoco_standalone_config() -> FoucocoChainSpec { .map(|ss58| AccountId::from_ss58check(ss58).unwrap()) .collect(); - let sudo_account = get_account_id_from_seed::("Alice"); + let sudo_account = get_account_id_from_seed::("Alice"); let offchain_worker_price_feeder = AccountId::from_ss58check(foucoco::OFF_CHAIN_WORKER_ADDRESS).unwrap(); let allowed_currencies = vec![ - CurrencyId::Native, - CurrencyId::XCM(0), - CurrencyId::XCM(1), - CurrencyId::XCM(2), - CurrencyId::XCM(3), - CurrencyId::XCM(4), - CurrencyId::XCM(5), - CurrencyId::XCM(6), - CurrencyId::XCM(7), - CurrencyId::XCM(8), - CurrencyId::XCM(9), - CurrencyId::XCM(10), - ]; + CurrencyId::Native, + CurrencyId::XCM(0), + CurrencyId::XCM(1), + CurrencyId::XCM(2), + CurrencyId::XCM(3), + CurrencyId::XCM(4), + CurrencyId::XCM(5), + CurrencyId::XCM(6), + CurrencyId::XCM(7), + CurrencyId::XCM(8), + CurrencyId::XCM(9), + CurrencyId::XCM(10), + ]; FoucocoChainSpec::from_genesis( // Name @@ -497,10 +497,13 @@ fn amplitude_genesis( .expect("WASM binary was not build, please build it!") .to_vec(), #[allow(clippy::wrong_self_convention)] - _config: sp_std::marker::PhantomData::default() + _config: sp_std::marker::PhantomData::default(), }, balances: amplitude_runtime::BalancesConfig { balances }, - parachain_info: amplitude_runtime::ParachainInfoConfig { parachain_id: id, _config: sp_std::marker::PhantomData::default() }, + parachain_info: amplitude_runtime::ParachainInfoConfig { + parachain_id: id, + _config: sp_std::marker::PhantomData::default(), + }, parachain_staking: amplitude_runtime::ParachainStakingConfig { stakers, inflation_config, @@ -526,7 +529,7 @@ fn amplitude_genesis( parachain_system: Default::default(), polkadot_xcm: amplitude_runtime::PolkadotXcmConfig { safe_xcm_version: Some(SAFE_XCM_VERSION), - _config: sp_std::marker::PhantomData::default() + _config: sp_std::marker::PhantomData::default(), }, council: amplitude_runtime::CouncilConfig { members: signatories.clone(), @@ -569,7 +572,7 @@ fn amplitude_genesis( } else { amplitude_runtime::StatusCode::Error }, - _phantom: sp_std::marker::PhantomData::default() + _phantom: sp_std::marker::PhantomData::default(), }, oracle: amplitude_runtime::OracleConfig { max_delay: u32::MAX, @@ -612,7 +615,10 @@ fn amplitude_genesis( punishment_fee: FixedU128::checked_from_rational(1, 10).unwrap(), // 10% replace_griefing_collateral: FixedU128::checked_from_rational(1, 10).unwrap(), // 10% }, - nomination: amplitude_runtime::NominationConfig { is_nomination_enabled: false, _phantom: sp_std::marker::PhantomData::default() }, + nomination: amplitude_runtime::NominationConfig { + is_nomination_enabled: false, + _phantom: sp_std::marker::PhantomData::default(), + }, dia_oracle_module: amplitude_runtime::DiaOracleModuleConfig { authorized_accounts: authorized_oracles, supported_currencies: vec![ @@ -625,8 +631,8 @@ fn amplitude_genesis( coin_infos_map: vec![], }, token_allowance: Default::default(), - transaction_payment: Default::default(), - treasury: Default::default(), + transaction_payment: Default::default(), + treasury: Default::default(), treasury_buyout_extension: Default::default(), vesting: Default::default(), zenlink_protocol: Default::default(), @@ -699,10 +705,13 @@ fn foucoco_genesis( code: foucoco_runtime::WASM_BINARY .expect("WASM binary was not build, please build it!") .to_vec(), - _config: sp_std::marker::PhantomData::default() + _config: sp_std::marker::PhantomData::default(), }, balances: foucoco_runtime::BalancesConfig { balances }, - parachain_info: foucoco_runtime::ParachainInfoConfig { parachain_id: id , _config: sp_std::marker::PhantomData::default()}, + parachain_info: foucoco_runtime::ParachainInfoConfig { + parachain_id: id, + _config: sp_std::marker::PhantomData::default(), + }, parachain_staking: foucoco_runtime::ParachainStakingConfig { stakers, inflation_config, @@ -728,7 +737,7 @@ fn foucoco_genesis( parachain_system: Default::default(), polkadot_xcm: foucoco_runtime::PolkadotXcmConfig { safe_xcm_version: Some(SAFE_XCM_VERSION), - _config: sp_std::marker::PhantomData::default() + _config: sp_std::marker::PhantomData::default(), }, council: foucoco_runtime::CouncilConfig { members: signatories.clone(), @@ -772,7 +781,7 @@ fn foucoco_genesis( } else { foucoco_runtime::StatusCode::Error }, - _phantom: sp_std::marker::PhantomData::default() + _phantom: sp_std::marker::PhantomData::default(), }, oracle: foucoco_runtime::OracleConfig { max_delay: 604_800_000, // 7 days @@ -782,7 +791,7 @@ fn foucoco_genesis( Key::ExchangeRate(CurrencyId::Stellar(Asset::StellarNative)), Key::ExchangeRate(TESTNET_USDC_CURRENCY_ID), ], - _phantom: sp_std::marker::PhantomData::default() + _phantom: sp_std::marker::PhantomData::default(), }, vault_registry: foucoco_runtime::VaultRegistryConfig { minimum_collateral_vault: vec![(XCM(0), 0)], @@ -827,7 +836,10 @@ fn foucoco_genesis( punishment_fee: FixedU128::checked_from_rational(1, 10).unwrap(), // 10% replace_griefing_collateral: FixedU128::checked_from_rational(1, 10).unwrap(), // 10% }, - nomination: foucoco_runtime::NominationConfig { is_nomination_enabled: false, _phantom: sp_std::marker::PhantomData::default() }, + nomination: foucoco_runtime::NominationConfig { + is_nomination_enabled: false, + _phantom: sp_std::marker::PhantomData::default(), + }, dia_oracle_module: foucoco_runtime::DiaOracleModuleConfig { authorized_accounts: authorized_oracles, supported_currencies: vec![ @@ -840,8 +852,8 @@ fn foucoco_genesis( coin_infos_map: vec![], }, token_allowance: foucoco_runtime::TokenAllowanceConfig { allowed_currencies }, - transaction_payment: Default::default(), - treasury: Default::default(), + transaction_payment: Default::default(), + treasury: Default::default(), treasury_buyout_extension: Default::default(), vesting: Default::default(), zenlink_protocol: Default::default(), @@ -889,10 +901,13 @@ fn pendulum_genesis( code: pendulum_runtime::WASM_BINARY .expect("WASM binary was not build, please build it!") .to_vec(), - _config: sp_std::marker::PhantomData::default() + _config: sp_std::marker::PhantomData::default(), }, balances: pendulum_runtime::BalancesConfig { balances }, - parachain_info: pendulum_runtime::ParachainInfoConfig { parachain_id: id, _config: sp_std::marker::PhantomData::default() }, + parachain_info: pendulum_runtime::ParachainInfoConfig { + parachain_id: id, + _config: sp_std::marker::PhantomData::default(), + }, parachain_staking: pendulum_runtime::ParachainStakingConfig { stakers, inflation_config, @@ -964,7 +979,7 @@ fn pendulum_genesis( Key::ExchangeRate(CurrencyId::XCM(0)), Key::ExchangeRate(MAINNET_USDC_CURRENCY_ID), ], - _phantom: sp_std::marker::PhantomData::default() + _phantom: sp_std::marker::PhantomData::default(), }, vault_registry: pendulum_runtime::VaultRegistryConfig { minimum_collateral_vault: vec![(XCM(0), 0)], @@ -998,7 +1013,10 @@ fn pendulum_genesis( punishment_fee: FixedU128::checked_from_rational(1, 10).unwrap(), // 10% replace_griefing_collateral: FixedU128::checked_from_rational(1, 10).unwrap(), // 10% }, - nomination: pendulum_runtime::NominationConfig { is_nomination_enabled: false, _phantom: sp_std::marker::PhantomData::default() }, + nomination: pendulum_runtime::NominationConfig { + is_nomination_enabled: false, + _phantom: sp_std::marker::PhantomData::default(), + }, dia_oracle_module: pendulum_runtime::DiaOracleModuleConfig { authorized_accounts: authorized_oracles, supported_currencies: vec![ @@ -1011,8 +1029,8 @@ fn pendulum_genesis( coin_infos_map: vec![], }, token_allowance: Default::default(), - transaction_payment: Default::default(), - treasury: Default::default(), + transaction_payment: Default::default(), + treasury: Default::default(), tokens: Default::default(), treasury_buyout_extension: Default::default(), } diff --git a/node/src/cli.rs b/node/src/cli.rs index e1105c58b..bc3fe47b7 100644 --- a/node/src/cli.rs +++ b/node/src/cli.rs @@ -94,6 +94,10 @@ impl RelayChainCli { let extension = crate::chain_spec::ParachainExtensions::try_get(&*para_config.chain_spec); let chain_id = extension.map(|e| e.relay_chain.clone()); let base_path = para_config.base_path.path().join("polkadot"); - Self { base_path: Some(base_path), chain_id, base: clap::Parser::parse_from(relay_chain_args) } + Self { + base_path: Some(base_path), + chain_id, + base: clap::Parser::parse_from(relay_chain_args), + } } } diff --git a/node/src/command.rs b/node/src/command.rs index 32ca984de..f5cab045a 100644 --- a/node/src/command.rs +++ b/node/src/command.rs @@ -142,7 +142,6 @@ impl SubstrateCli for Cli { None => ChainIdentity::from_json_file(id)?.load_chain_spec_from_json_file(id)?, }) } - } impl SubstrateCli for RelayChainCli { @@ -179,7 +178,6 @@ impl SubstrateCli for RelayChainCli { fn load_spec(&self, id: &str) -> std::result::Result, String> { polkadot_cli::Cli::from_iter([RelayChainCli::executable_name()].iter()).load_spec(id) } - } macro_rules! construct_sync_run { @@ -314,9 +312,10 @@ pub fn run() -> Result<()> { cmd.run(config, polkadot_config) }) }, - Some(Subcommand::ExportGenesisState(cmd)) => construct_async_run!(|components, cli, cmd, config| { - Ok(async move { cmd.run(&*config.chain_spec, &*components.client) }) - }), + Some(Subcommand::ExportGenesisState(cmd)) => + construct_async_run!(|components, cli, cmd, config| { + Ok(async move { cmd.run(&*config.chain_spec, &*components.client) }) + }), Some(Subcommand::ExportGenesisWasm(cmd)) => { let runner = cli.create_runner(cmd)?; runner.sync_run(|_config| { @@ -330,12 +329,16 @@ pub fn run() -> Result<()> { let runner = cli.create_runner(cmd)?; match runner.config().chain_spec.identify() { - ChainIdentity::Amplitude => runner - .sync_run(|config| cmd.run::::ExtendHostFunctions>(config)), - ChainIdentity::Foucoco => runner - .sync_run(|config| cmd.run::::ExtendHostFunctions>(config)), - ChainIdentity::Pendulum => runner - .sync_run(|config| cmd.run::::ExtendHostFunctions>(config)), + ChainIdentity::Amplitude => runner.sync_run(|config| { + cmd.run::::ExtendHostFunctions>(config) + }), + ChainIdentity::Foucoco => + runner.sync_run(|config| { + cmd.run::::ExtendHostFunctions>(config) + }), + ChainIdentity::Pendulum => runner.sync_run(|config| { + cmd.run::::ExtendHostFunctions>(config) + }), ChainIdentity::FoucocoStandalone => unimplemented!(), } } else { diff --git a/node/src/service.rs b/node/src/service.rs index 8e22ead93..42294c549 100644 --- a/node/src/service.rs +++ b/node/src/service.rs @@ -3,18 +3,20 @@ // std use std::{sync::Arc, time::Duration}; -use cumulus_client_cli::{RelayChainMode,CollatorOptions}; +use cumulus_client_cli::{CollatorOptions, RelayChainMode}; // Local Runtime Types use runtime_common::{opaque::Block, AccountId, Balance, Index as Nonce}; // Cumulus Imports -use cumulus_client_consensus_aura::{collators::basic::{Params as BasicAuraParams, self as basic_aura}}; -use cumulus_client_consensus_common::{ - ParachainBlockImport as TParachainBlockImport, +use cumulus_client_collator::service::CollatorService; +use cumulus_client_consensus_aura::collators::basic::{ + self as basic_aura, Params as BasicAuraParams, }; +use cumulus_client_consensus_common::ParachainBlockImport as TParachainBlockImport; +use cumulus_client_consensus_proposer::Proposer; use cumulus_client_network::RequireSecondedInBlockAnnounce; use cumulus_client_service::{ - prepare_node_config, start_relay_chain_tasks, StartRelayChainTasksParams, DARecoveryProfile + prepare_node_config, start_relay_chain_tasks, DARecoveryProfile, StartRelayChainTasksParams, }; use cumulus_primitives_core::{relay_chain::Hash, ParaId}; use cumulus_primitives_parachain_inherent::{ @@ -23,8 +25,6 @@ use cumulus_primitives_parachain_inherent::{ use cumulus_relay_chain_inprocess_interface::build_inprocess_relay_chain; use cumulus_relay_chain_interface::{RelayChainInterface, RelayChainResult}; use cumulus_relay_chain_minimal_node::build_minimal_relay_chain_node_with_rpc; -use cumulus_client_consensus_proposer::Proposer; -use cumulus_client_collator::service::CollatorService; // Substrate Imports use sc_executor::{ @@ -44,11 +44,11 @@ use sp_keystore::KeystorePtr; use sp_runtime::traits::BlakeTwo256; use substrate_prometheus_endpoint::Registry; -use polkadot_service::{CollatorPair, Handle}; -use sc_consensus::{import_queue::ImportQueueService, ImportQueue}; use crate::rpc::{ create_full_amplitude, create_full_foucoco, create_full_pendulum, FullDeps, ResultRpcExtension, }; +use polkadot_service::{CollatorPair, Handle}; +use sc_consensus::{import_queue::ImportQueueService, ImportQueue}; use sc_transaction_pool_api::OffchainTransactionPoolFactory; use sc_client_api::Backend; @@ -134,7 +134,6 @@ impl sc_executor::NativeExecutionDispatch for FoucocoRuntimeExecutor { pub struct PendulumRuntimeExecutor; impl sc_executor::NativeExecutionDispatch for PendulumRuntimeExecutor { - #[cfg(feature = "runtime-benchmarks")] type ExtendHostFunctions = frame_benchmarking::benchmarking::HostFunctions; #[cfg(not(feature = "runtime-benchmarks"))] @@ -299,7 +298,9 @@ async fn setup_common_services( parachain_config: Configuration, params: ResultNewPartial, create_full_rpc: fn(deps: FullDepsOf) -> ResultRpcExtension, - block_announce_validator: Option>>, + block_announce_validator: Option< + RequireSecondedInBlockAnnounce>, + >, ) -> Result< ( NetworkStarter, @@ -371,8 +372,8 @@ where enable_http_requests: true, custom_extensions: |_| vec![], }) - .run(client.clone(), task_manager.spawn_handle()) - .boxed(), + .run(client.clone(), task_manager.spawn_handle()) + .boxed(), ); } @@ -434,7 +435,8 @@ where ) .await .map_err(|e| sc_service::Error::Application(Box::new(e)))?; - let block_announce_validator = RequireSecondedInBlockAnnounce::new(relay_chain_interface.clone(), id); + let block_announce_validator = + RequireSecondedInBlockAnnounce::new(relay_chain_interface.clone(), id); let validator = parachain_config.role.is_authority(); let prometheus_registry = parachain_config.prometheus_registry().cloned(); @@ -514,7 +516,6 @@ where collator_key.clone().expect("Command line arguments do not allow this. qed"), announce_block.clone(), )?; - } start_network.start_network(); @@ -716,7 +717,7 @@ where sync_oracle, keystore, slot_duration, - authoring_duration:Duration::from_millis(500), + authoring_duration: Duration::from_millis(500), relay_chain_slot_duration, para_id: id, overseer_handle, diff --git a/pallets/orml-currencies-allowance-extension/src/lib.rs b/pallets/orml-currencies-allowance-extension/src/lib.rs index 2d44130a0..b4cdfda56 100644 --- a/pallets/orml-currencies-allowance-extension/src/lib.rs +++ b/pallets/orml-currencies-allowance-extension/src/lib.rs @@ -239,7 +239,12 @@ pub mod pallet { } } -#[allow(clippy::forget_non_drop, clippy::swap_ptr_to_ref, forgetting_references, forgetting_copy_types)] +#[allow( + clippy::forget_non_drop, + clippy::swap_ptr_to_ref, + forgetting_references, + forgetting_copy_types +)] #[cfg_attr(test, mockable)] impl Pallet { // Check the amount approved to be spent by an owner to a delegate diff --git a/pallets/orml-currencies-allowance-extension/src/mock.rs b/pallets/orml-currencies-allowance-extension/src/mock.rs index 948557c91..b251cbcca 100644 --- a/pallets/orml-currencies-allowance-extension/src/mock.rs +++ b/pallets/orml-currencies-allowance-extension/src/mock.rs @@ -8,7 +8,7 @@ use orml_traits::parameter_type_with_key; use sp_core::H256; use sp_runtime::{ traits::{BlakeTwo256, IdentityLookup}, - BuildStorage + BuildStorage, }; type Block = frame_system::mocking::MockBlock; diff --git a/pallets/orml-tokens-management-extension/src/mock.rs b/pallets/orml-tokens-management-extension/src/mock.rs index 25549b1dc..24ab3e058 100644 --- a/pallets/orml-tokens-management-extension/src/mock.rs +++ b/pallets/orml-tokens-management-extension/src/mock.rs @@ -11,7 +11,7 @@ use orml_traits::parameter_type_with_key; use sp_core::{ConstU128, H256}; use sp_runtime::{ traits::{BlakeTwo256, IdentityLookup}, - BuildStorage + BuildStorage, }; type Block = frame_system::mocking::MockBlock; diff --git a/pallets/parachain-staking/rpc/runtime-api/src/lib.rs b/pallets/parachain-staking/rpc/runtime-api/src/lib.rs index 9d4139586..dffa466ed 100644 --- a/pallets/parachain-staking/rpc/runtime-api/src/lib.rs +++ b/pallets/parachain-staking/rpc/runtime-api/src/lib.rs @@ -1,12 +1,11 @@ //! Runtime API definition for Parachain Staking. #![cfg_attr(not(feature = "std"), no_std)] -use scale_info::TypeInfo; use module_oracle_rpc_runtime_api::BalanceWrapper; use parity_scale_codec::{Codec, Decode, Encode, MaxEncodedLen}; -use sp_std::fmt::Debug; +use scale_info::TypeInfo; use sp_arithmetic::per_things::Perquintill; - +use sp_std::fmt::Debug; #[cfg(feature = "std")] use serde::{Deserialize, Serialize}; diff --git a/pallets/parachain-staking/src/benchmarking.rs b/pallets/parachain-staking/src/benchmarking.rs index 4e8e82f20..469ab640f 100644 --- a/pallets/parachain-staking/src/benchmarking.rs +++ b/pallets/parachain-staking/src/benchmarking.rs @@ -19,14 +19,13 @@ //! Benchmarking use crate::{types::RoundInfo, *}; use frame_benchmarking::{account, benchmarks, impl_benchmark_test_suite}; -use sp_arithmetic::traits::Zero; use frame_support::{ assert_ok, traits::{Currency, Get, OnInitialize}, }; -use frame_system::{Pallet as System, RawOrigin}; -use frame_system::pallet_prelude::BlockNumberFor; +use frame_system::{pallet_prelude::BlockNumberFor, Pallet as System, RawOrigin}; use pallet_session::Pallet as Session; +use sp_arithmetic::traits::Zero; use sp_runtime::{ traits::{One, SaturatedConversion, StaticLookup}, Perquintill, diff --git a/pallets/parachain-staking/src/lib.rs b/pallets/parachain-staking/src/lib.rs index e177dbf55..d7e8d02e6 100644 --- a/pallets/parachain-staking/src/lib.rs +++ b/pallets/parachain-staking/src/lib.rs @@ -155,11 +155,11 @@ pub mod pallet { use pallet_balances::{BalanceLock, Locks}; use pallet_session::ShouldEndSession; use scale_info::TypeInfo; + use sp_arithmetic::per_things::Perquintill; use sp_runtime::{ traits::{Convert, One, SaturatedConversion, Saturating, StaticLookup, Zero}, Permill, }; - use sp_arithmetic::per_things::Perquintill; use sp_staking::SessionIndex; use sp_std::prelude::*; @@ -893,7 +893,10 @@ pub mod pallet { /// Emits `BlocksPerRoundSet`. #[pallet::call_index(3)] #[pallet::weight(::WeightInfo::set_blocks_per_round())] - pub fn set_blocks_per_round(origin: OriginFor, new: BlockNumberFor) -> DispatchResult { + pub fn set_blocks_per_round( + origin: OriginFor, + new: BlockNumberFor, + ) -> DispatchResult { ensure_root(origin)?; ensure!(new >= T::MinBlocksPerRound::get(), Error::::CannotSetBelowMin); diff --git a/pallets/parachain-staking/src/mock.rs b/pallets/parachain-staking/src/mock.rs index 615fa66af..5b1300f45 100644 --- a/pallets/parachain-staking/src/mock.rs +++ b/pallets/parachain-staking/src/mock.rs @@ -32,8 +32,7 @@ use sp_runtime::{ impl_opaque_keys, testing::UintAuthorityId, traits::{BlakeTwo256, ConstU32, ConvertInto, IdentityLookup, OpaqueKeys}, - Perbill, Perquintill, - BuildStorage + BuildStorage, Perbill, Perquintill, }; use sp_std::fmt::Debug; @@ -73,7 +72,7 @@ impl frame_system::Config for Test { type BaseCallFilter = frame_support::traits::Everything; type DbWeight = (); type RuntimeOrigin = RuntimeOrigin; - type Nonce = u64; + type Nonce = u64; type RuntimeCall = RuntimeCall; type Hash = H256; type Hashing = BlakeTwo256; @@ -291,7 +290,8 @@ impl ExtBuilder { } pub(crate) fn build(self) -> sp_io::TestExternalities { - let mut t = frame_system::GenesisConfig::::default().build_storage() + let mut t = frame_system::GenesisConfig::::default() + .build_storage() .expect("Frame system builds valid default genesis config"); pallet_balances::GenesisConfig:: { balances: self.balances.clone() } diff --git a/pallets/parachain-staking/src/set.rs b/pallets/parachain-staking/src/set.rs index d688ea38e..11f999589 100644 --- a/pallets/parachain-staking/src/set.rs +++ b/pallets/parachain-staking/src/set.rs @@ -19,7 +19,7 @@ use frame_support::{traits::Get, BoundedVec, DefaultNoBound}; use parity_scale_codec::{Decode, Encode, MaxEncodedLen}; use scale_info::TypeInfo; -use sp_runtime::{traits::Zero, SaturatedConversion, RuntimeDebug}; +use sp_runtime::{traits::Zero, RuntimeDebug, SaturatedConversion}; use sp_std::{ cmp::Ordering, convert::TryInto, diff --git a/pallets/parachain-staking/src/try_state.rs b/pallets/parachain-staking/src/try_state.rs index 2deaea2ac..8687fb770 100644 --- a/pallets/parachain-staking/src/try_state.rs +++ b/pallets/parachain-staking/src/try_state.rs @@ -229,8 +229,8 @@ fn validate_delegators() -> Result<(), &'static str> { DelegatorState::::iter_values().try_for_each( |delegator_details| -> Result<(), &'static str> { let Some(owner) = &delegator_details.owner else { - return Err("owner not found"); - }; + return Err("owner not found"); + }; ensure!( CandidatePool::::contains_key(owner), diff --git a/pallets/treasury-buyout-extension/src/lib.rs b/pallets/treasury-buyout-extension/src/lib.rs index 8be412c92..c8c4b5839 100644 --- a/pallets/treasury-buyout-extension/src/lib.rs +++ b/pallets/treasury-buyout-extension/src/lib.rs @@ -30,17 +30,15 @@ use frame_support::{ }; use orml_traits::MultiCurrency; pub use pallet::*; -use sp_arithmetic::traits::{CheckedAdd, CheckedMul, CheckedDiv, Saturating}; +use sp_arithmetic::traits::{CheckedAdd, CheckedDiv, CheckedMul, Saturating}; use sp_runtime::{ traits::{DispatchInfoOf, One, SignedExtension, UniqueSaturatedInto, Zero}, transaction_validity::{ InvalidTransaction, TransactionValidity, TransactionValidityError, ValidTransaction, }, - ArithmeticError, FixedPointNumber, FixedU128, - DispatchError, + ArithmeticError, DispatchError, FixedPointNumber, FixedU128, }; -use sp_std::{fmt::Debug, marker::PhantomData, vec::Vec}; -use sp_std::vec; +use sp_std::{fmt::Debug, marker::PhantomData, vec, vec::Vec}; use spacewalk_primitives::DecimalsLookup; #[frame_support::pallet] diff --git a/pallets/treasury-buyout-extension/src/mock.rs b/pallets/treasury-buyout-extension/src/mock.rs index c3d191152..4cb3e7cd4 100644 --- a/pallets/treasury-buyout-extension/src/mock.rs +++ b/pallets/treasury-buyout-extension/src/mock.rs @@ -9,7 +9,10 @@ use orml_currencies::BasicCurrencyAdapter; use orml_traits::parameter_type_with_key; use sp_arithmetic::{FixedPointNumber, FixedU128, Permill}; use sp_core::H256; -use sp_runtime::{traits::{BlakeTwo256, IdentityLookup, One, Zero}, DispatchError, BuildStorage}; +use sp_runtime::{ + traits::{BlakeTwo256, IdentityLookup, One, Zero}, + BuildStorage, DispatchError, +}; use sp_std::fmt::Debug; use spacewalk_primitives::DecimalsLookup; diff --git a/pallets/treasury-buyout-extension/src/tests.rs b/pallets/treasury-buyout-extension/src/tests.rs index 7cf931105..09275c02f 100644 --- a/pallets/treasury-buyout-extension/src/tests.rs +++ b/pallets/treasury-buyout-extension/src/tests.rs @@ -2,7 +2,7 @@ use crate::{ mock::*, types::{Amount, CurrencyIdOf}, - BuyoutLimit, Buyouts, Config, Error, PriceGetter, ValidityError, DecimalsLookup, + BuyoutLimit, Buyouts, Config, DecimalsLookup, Error, PriceGetter, ValidityError, }; use frame_support::{assert_err, assert_noop, assert_ok}; use orml_traits::MultiCurrency; @@ -37,7 +37,7 @@ fn buyout_using_dot_given_exchange_amount_in_dot_succeeds() { assert_eq!(initial_user_native_balance, USERS_INITIAL_NATIVE_BALANCE); assert_eq!(initial_treasury_native_balance, TREASURY_INITIAL_BALANCE); - + // DOT has 10 decimals let exchange_amount = 100_0000000000; assert_ok!(crate::Pallet::::buyout( @@ -137,7 +137,8 @@ fn buyout_using_dot_given_buyout_amount_in_native_succeeds() { exchange_asset_price, ::decimals(native_currency_id), ::decimals(dot_currency_id), - ).expect("This is mocked so it should not fail"); + ) + .expect("This is mocked so it should not fail"); let final_user_dot_balance = get_free_balance(dot_currency_id, &user); let final_user_native_balance = get_free_balance(native_currency_id, &user); diff --git a/runtime/amplitude/src/lib.rs b/runtime/amplitude/src/lib.rs index 35f8cef45..b98d8bd22 100644 --- a/runtime/amplitude/src/lib.rs +++ b/runtime/amplitude/src/lib.rs @@ -162,8 +162,10 @@ parameter_types! { use pallet_contracts::migration::{v11, v12, v13, v14, v15}; // Custom storage version bump -use frame_support::traits::{GetStorageVersion, OnRuntimeUpgrade}; -use frame_support::pallet_prelude::StorageVersion; +use frame_support::{ + pallet_prelude::StorageVersion, + traits::{GetStorageVersion, OnRuntimeUpgrade}, +}; pub struct CustomOnRuntimeUpgrade; impl OnRuntimeUpgrade for CustomOnRuntimeUpgrade { @@ -195,10 +197,7 @@ pub type Executive = frame_executive::Executive< frame_system::ChainContext, Runtime, AllPalletsWithSystem, - ( - CustomOnRuntimeUpgrade, - pallet_contracts::migration::Migration, - ), + (CustomOnRuntimeUpgrade, pallet_contracts::migration::Migration), >; pub struct ConvertPrice; @@ -337,54 +336,54 @@ impl Contains for BaseFilter { fn contains(call: &RuntimeCall) -> bool { match call { // These modules are all allowed to be called by transactions: - RuntimeCall::Bounties(_) - | RuntimeCall::ChildBounties(_) - | RuntimeCall::ClientsInfo(_) - | RuntimeCall::Treasury(_) - | RuntimeCall::Tokens(_) - | RuntimeCall::Currencies(_) - | RuntimeCall::ParachainStaking(_) - | RuntimeCall::Democracy(_) - | RuntimeCall::Council(_) - | RuntimeCall::TechnicalCommittee(_) - | RuntimeCall::System(_) - | RuntimeCall::Scheduler(_) - | RuntimeCall::Preimage(_) - | RuntimeCall::Timestamp(_) - | RuntimeCall::Balances(_) - | RuntimeCall::Session(_) - | RuntimeCall::ParachainSystem(_) - | RuntimeCall::XcmpQueue(_) - | RuntimeCall::PolkadotXcm(_) - | RuntimeCall::DmpQueue(_) - | RuntimeCall::Utility(_) - | RuntimeCall::Vesting(_) - | RuntimeCall::XTokens(_) - | RuntimeCall::Multisig(_) - | RuntimeCall::Identity(_) - | RuntimeCall::Contracts(_) - | RuntimeCall::ZenlinkProtocol(_) - | RuntimeCall::VestingManager(_) - | RuntimeCall::DiaOracleModule(_) - | RuntimeCall::Fee(_) - | RuntimeCall::Issue(_) - | RuntimeCall::Nomination(_) - | RuntimeCall::Oracle(_) - | RuntimeCall::Redeem(_) - | RuntimeCall::Replace(_) - | RuntimeCall::Security(_) - | RuntimeCall::StellarRelay(_) - | RuntimeCall::VaultRegistry(_) - | RuntimeCall::PooledVaultRewards(_) - | RuntimeCall::Farming(_) - | RuntimeCall::TokenAllowance(_) - | RuntimeCall::AssetRegistry(_) - | RuntimeCall::Proxy(_) - | RuntimeCall::TreasuryBuyoutExtension(_) - | RuntimeCall::RewardDistribution(_) - | RuntimeCall::ParachainInfo(_) - | RuntimeCall::CumulusXcm(_) - | RuntimeCall::VaultStaking(_) => true, + RuntimeCall::Bounties(_) | + RuntimeCall::ChildBounties(_) | + RuntimeCall::ClientsInfo(_) | + RuntimeCall::Treasury(_) | + RuntimeCall::Tokens(_) | + RuntimeCall::Currencies(_) | + RuntimeCall::ParachainStaking(_) | + RuntimeCall::Democracy(_) | + RuntimeCall::Council(_) | + RuntimeCall::TechnicalCommittee(_) | + RuntimeCall::System(_) | + RuntimeCall::Scheduler(_) | + RuntimeCall::Preimage(_) | + RuntimeCall::Timestamp(_) | + RuntimeCall::Balances(_) | + RuntimeCall::Session(_) | + RuntimeCall::ParachainSystem(_) | + RuntimeCall::XcmpQueue(_) | + RuntimeCall::PolkadotXcm(_) | + RuntimeCall::DmpQueue(_) | + RuntimeCall::Utility(_) | + RuntimeCall::Vesting(_) | + RuntimeCall::XTokens(_) | + RuntimeCall::Multisig(_) | + RuntimeCall::Identity(_) | + RuntimeCall::Contracts(_) | + RuntimeCall::ZenlinkProtocol(_) | + RuntimeCall::VestingManager(_) | + RuntimeCall::DiaOracleModule(_) | + RuntimeCall::Fee(_) | + RuntimeCall::Issue(_) | + RuntimeCall::Nomination(_) | + RuntimeCall::Oracle(_) | + RuntimeCall::Redeem(_) | + RuntimeCall::Replace(_) | + RuntimeCall::Security(_) | + RuntimeCall::StellarRelay(_) | + RuntimeCall::VaultRegistry(_) | + RuntimeCall::PooledVaultRewards(_) | + RuntimeCall::Farming(_) | + RuntimeCall::TokenAllowance(_) | + RuntimeCall::AssetRegistry(_) | + RuntimeCall::Proxy(_) | + RuntimeCall::TreasuryBuyoutExtension(_) | + RuntimeCall::RewardDistribution(_) | + RuntimeCall::ParachainInfo(_) | + RuntimeCall::CumulusXcm(_) | + RuntimeCall::VaultStaking(_) => true, // All pallets are allowed, but exhaustive match is defensive // in the case of adding new pallets. } @@ -1025,7 +1024,13 @@ impl pallet_contracts::Config for Runtime { type CodeHashLockupDepositPercent = CodeHashLockupDepositPercent; type MaxDelegateDependencies = MaxDelegateDependencies; type RuntimeHoldReason = RuntimeHoldReason; - type Migrations = (v11::Migration, v12::Migration, v13::Migration, v14::Migration, v15::Migration ); + type Migrations = ( + v11::Migration, + v12::Migration, + v13::Migration, + v14::Migration, + v15::Migration, + ); type Debug = (); type Environment = (); } @@ -1960,15 +1965,15 @@ impl_runtime_apis! { ) -> pallet_contracts_primitives::ContractExecResult { let gas_limit = gas_limit.unwrap_or(RuntimeBlockWeights::get().max_block); Contracts::bare_call( - origin, - dest, - value, - gas_limit, - storage_deposit_limit, - input_data, - pallet_contracts::DebugInfo::UnsafeDebug, - pallet_contracts::CollectEvents::UnsafeCollect, - pallet_contracts::Determinism::Enforced, + origin, + dest, + value, + gas_limit, + storage_deposit_limit, + input_data, + pallet_contracts::DebugInfo::UnsafeDebug, + pallet_contracts::CollectEvents::UnsafeCollect, + pallet_contracts::Determinism::Enforced, ) } @@ -1985,14 +1990,14 @@ impl_runtime_apis! { let gas_limit = gas_limit.unwrap_or(RuntimeBlockWeights::get().max_block); Contracts::bare_instantiate( origin, - value, - gas_limit, - storage_deposit_limit, - code, - data, - salt, - pallet_contracts::DebugInfo::UnsafeDebug, - pallet_contracts::CollectEvents::UnsafeCollect, + value, + gas_limit, + storage_deposit_limit, + code, + data, + salt, + pallet_contracts::DebugInfo::UnsafeDebug, + pallet_contracts::CollectEvents::UnsafeCollect, ) } diff --git a/runtime/amplitude/src/weights/mod.rs b/runtime/amplitude/src/weights/mod.rs index 690046312..8ad802f7b 100644 --- a/runtime/amplitude/src/weights/mod.rs +++ b/runtime/amplitude/src/weights/mod.rs @@ -20,23 +20,22 @@ pub mod block_weights; pub mod dia_oracle; pub mod extrinsic_weights; -pub mod pallet_xcm; -pub mod paritydb_weights; -pub mod rocksdb_weights; -pub mod parachain_staking; -pub mod orml_asset_registry; -pub mod orml_currencies_allowance_extension; -pub mod treasury_buyout_extension; pub mod fee; pub mod issue; pub mod nomination; pub mod oracle; +pub mod orml_asset_registry; +pub mod orml_currencies_allowance_extension; +pub mod pallet_xcm; +pub mod parachain_staking; +pub mod paritydb_weights; pub mod redeem; pub mod replace; +pub mod rocksdb_weights; pub mod stellar_relay; +pub mod treasury_buyout_extension; pub mod vault_registry; -pub mod dia_oracle; pub use block_weights::constants::BlockExecutionWeight; pub use extrinsic_weights::constants::ExtrinsicBaseWeight; -pub use rocksdb_weights::constants::RocksDbWeight; \ No newline at end of file +pub use rocksdb_weights::constants::RocksDbWeight; diff --git a/runtime/amplitude/src/xcm_config.rs b/runtime/amplitude/src/xcm_config.rs index 077745614..3c59b4512 100644 --- a/runtime/amplitude/src/xcm_config.rs +++ b/runtime/amplitude/src/xcm_config.rs @@ -21,7 +21,10 @@ use xcm_builder::{ ParentIsPreset, RelayChainAsNative, SiblingParachainAsNative, SiblingParachainConvertsVia, SignedAccountId32AsNative, SignedToAccountId32, SovereignSignedViaLocation, TakeWeightCredit, }; -use xcm_executor::{traits::{ShouldExecute, Properties}, XcmExecutor}; +use xcm_executor::{ + traits::{Properties, ShouldExecute}, + XcmExecutor, +}; use runtime_common::{asset_registry::FixedConversionRateProvider, CurrencyIdConvert}; diff --git a/runtime/common/src/asset_registry.rs b/runtime/common/src/asset_registry.rs index 8ed3e7da0..e3f741612 100644 --- a/runtime/common/src/asset_registry.rs +++ b/runtime/common/src/asset_registry.rs @@ -9,10 +9,8 @@ use parity_scale_codec::{Decode, Encode, MaxEncodedLen}; use scale_info::TypeInfo; use sp_core::Get; use sp_runtime::{traits::PhantomData, BoundedVec, DispatchError}; -use sp_std::fmt::Debug; -use sp_std::vec::Vec; -use spacewalk_primitives::oracle::Key; -use spacewalk_primitives::CurrencyId; +use sp_std::{fmt::Debug, vec::Vec}; +use spacewalk_primitives::{oracle::Key, CurrencyId}; use xcm::opaque::v3::MultiLocation; #[derive(Clone, PartialOrd, Ord, PartialEq, Eq, Debug, Encode, Decode, TypeInfo, MaxEncodedLen)] @@ -40,7 +38,9 @@ pub struct DiaKeys + TypeInfo + Clone + Eq + Debug + Send + Sync> { )] pub struct CustomAssetProcessor; -impl AssetProcessor> for CustomAssetProcessor { +impl AssetProcessor> + for CustomAssetProcessor +{ fn pre_register( id: Option, metadata: AssetMetadata, diff --git a/runtime/common/src/benchmarking/orml_asset_registry.rs b/runtime/common/src/benchmarking/orml_asset_registry.rs index 83cf48d9e..f874c4e30 100644 --- a/runtime/common/src/benchmarking/orml_asset_registry.rs +++ b/runtime/common/src/benchmarking/orml_asset_registry.rs @@ -20,8 +20,8 @@ pub trait Config: #[benchmarks] pub mod benchmarks { use super::{Config, Pallet, *}; - use orml_asset_registry::Call; use crate::asset_registry::StringLimit; + use orml_asset_registry::Call; fn longest_vec>() -> BoundedVec { // there is no fixed upperbound, but all actions are root-only so an assumed upperbound of 128 will do @@ -34,7 +34,7 @@ pub mod benchmarks { MultiLocation::new(1, X8(key, key, key, key, key, key, key, key)) } - fn get_asset_metadata>() -> AssetMetadata { + fn get_asset_metadata>() -> AssetMetadata { AssetMetadata:: { decimals: 12, name: longest_vec::(), @@ -83,10 +83,7 @@ pub mod benchmarks { Some(1234), Some(Some(location.into())), Some(CustomMetadata { - dia_keys: DiaKeys { - blockchain: longest_vec(), - symbol: longest_vec(), - }, + dia_keys: DiaKeys { blockchain: longest_vec(), symbol: longest_vec() }, fee_per_second: 123, }), ); diff --git a/runtime/common/src/zenlink.rs b/runtime/common/src/zenlink.rs index a61022acd..60b3cd974 100644 --- a/runtime/common/src/zenlink.rs +++ b/runtime/common/src/zenlink.rs @@ -42,24 +42,18 @@ pub fn zenlink_id_to_currency_id( (1, LOCAL) => Some(CurrencyId::XCM(symbol)), (2, LOCAL) => match symbol { 0 => Some(CurrencyId::Stellar(Asset::StellarNative)), - 1 => { - Some(CurrencyId::Stellar(Asset::AlphaNum4 { code: *b"USDC", issuer: USDC_ISSUER })) - }, - 2 => { - Some(CurrencyId::Stellar(Asset::AlphaNum4 { code: *b"TZS\0", issuer: TZS_ISSUER })) - }, - 3 => { - Some(CurrencyId::Stellar(Asset::AlphaNum4 { code: *b"BRL\0", issuer: BRL_ISSUER })) - }, - 4 => { - Some(CurrencyId::Stellar(Asset::AlphaNum4 { code: *b"EURC", issuer: EURC_ISSUER })) - }, - 5 => { - Some(CurrencyId::Stellar(Asset::AlphaNum4 { code: *b"AUDD", issuer: AUDD_ISSUER })) - }, - 6 => { - Some(CurrencyId::Stellar(Asset::AlphaNum4 { code: *b"NGNC", issuer: NGNC_ISSUER })) - }, + 1 => + Some(CurrencyId::Stellar(Asset::AlphaNum4 { code: *b"USDC", issuer: USDC_ISSUER })), + 2 => + Some(CurrencyId::Stellar(Asset::AlphaNum4 { code: *b"TZS\0", issuer: TZS_ISSUER })), + 3 => + Some(CurrencyId::Stellar(Asset::AlphaNum4 { code: *b"BRL\0", issuer: BRL_ISSUER })), + 4 => + Some(CurrencyId::Stellar(Asset::AlphaNum4 { code: *b"EURC", issuer: EURC_ISSUER })), + 5 => + Some(CurrencyId::Stellar(Asset::AlphaNum4 { code: *b"AUDD", issuer: AUDD_ISSUER })), + 6 => + Some(CurrencyId::Stellar(Asset::AlphaNum4 { code: *b"NGNC", issuer: NGNC_ISSUER })), _ => None, }, (3, LOCAL) => { @@ -81,9 +75,8 @@ pub fn currency_id_to_zenlink_id( ) -> Option { let disc = discriminant(¤cy_id) as u64; match currency_id { - CurrencyId::Native => { - Some(ZenlinkAssetId { chain_id: parachain_id, asset_type: NATIVE, asset_index: 0 }) - }, + CurrencyId::Native => + Some(ZenlinkAssetId { chain_id: parachain_id, asset_type: NATIVE, asset_index: 0 }), CurrencyId::XCM(token_id) => Some(ZenlinkAssetId { chain_id: parachain_id, asset_type: LOCAL, @@ -110,11 +103,11 @@ pub fn currency_id_to_zenlink_id( }) }, CurrencyId::ZenlinkLPToken(token1_id, token1_type, token2_id, token2_type) => { - let index = (disc << 8) - + ((token1_id as u64) << 16) - + ((token1_type as u64) << 24) - + ((token2_id as u64) << 32) - + ((token2_type as u64) << 40); + let index = (disc << 8) + + ((token1_id as u64) << 16) + + ((token1_type as u64) << 24) + + ((token2_id as u64) << 32) + + ((token2_type as u64) << 40); Some(ZenlinkAssetId { chain_id: parachain_id, asset_type: LOCAL, asset_index: index }) }, CurrencyId::Token(_) => None, diff --git a/runtime/foucoco/src/lib.rs b/runtime/foucoco/src/lib.rs index 89b16376b..f8af075dd 100644 --- a/runtime/foucoco/src/lib.rs +++ b/runtime/foucoco/src/lib.rs @@ -161,8 +161,10 @@ pub type SignedPayload = generic::SignedPayload; // To be removed after contracts migrations executes. use pallet_contracts::migration::{v11, v12, v13, v14, v15}; // Custom storage version bump -use frame_support::traits::{GetStorageVersion, OnRuntimeUpgrade}; -use frame_support::pallet_prelude::StorageVersion; +use frame_support::{ + pallet_prelude::StorageVersion, + traits::{GetStorageVersion, OnRuntimeUpgrade}, +}; pub struct CustomOnRuntimeUpgrade; impl OnRuntimeUpgrade for CustomOnRuntimeUpgrade { @@ -193,10 +195,7 @@ pub type Executive = frame_executive::Executive< frame_system::ChainContext, Runtime, AllPalletsWithSystem, - ( - CustomOnRuntimeUpgrade, - pallet_contracts::migration::Migration, - ), + (CustomOnRuntimeUpgrade, pallet_contracts::migration::Migration), >; pub struct ConvertPrice; @@ -335,56 +334,56 @@ impl Contains for BaseFilter { fn contains(call: &RuntimeCall) -> bool { match call { // These modules are all allowed to be called by transactions: - RuntimeCall::Bounties(_) - | RuntimeCall::ChildBounties(_) - | RuntimeCall::ClientsInfo(_) - | RuntimeCall::Treasury(_) - | RuntimeCall::Tokens(_) - | RuntimeCall::Currencies(_) - | RuntimeCall::ParachainStaking(_) - | RuntimeCall::Democracy(_) - | RuntimeCall::Council(_) - | RuntimeCall::TechnicalCommittee(_) - | RuntimeCall::System(_) - | RuntimeCall::Scheduler(_) - | RuntimeCall::Preimage(_) - | RuntimeCall::Timestamp(_) - | RuntimeCall::Balances(_) - | RuntimeCall::Session(_) - | RuntimeCall::ParachainSystem(_) - | RuntimeCall::Sudo(_) - | RuntimeCall::XcmpQueue(_) - | RuntimeCall::PolkadotXcm(_) - | RuntimeCall::DmpQueue(_) - | RuntimeCall::Utility(_) - | RuntimeCall::Vesting(_) - | RuntimeCall::XTokens(_) - | RuntimeCall::Multisig(_) - | RuntimeCall::Identity(_) - | RuntimeCall::Contracts(_) - | RuntimeCall::ZenlinkProtocol(_) - | RuntimeCall::DiaOracleModule(_) - | RuntimeCall::Fee(_) - | RuntimeCall::Issue(_) - | RuntimeCall::Nomination(_) - | RuntimeCall::Oracle(_) - | RuntimeCall::Redeem(_) - | RuntimeCall::Replace(_) - | RuntimeCall::Security(_) - | RuntimeCall::StellarRelay(_) - | RuntimeCall::VaultRegistry(_) - | RuntimeCall::PooledVaultRewards(_) - | RuntimeCall::Farming(_) - | RuntimeCall::TokenAllowance(_) - | RuntimeCall::AssetRegistry(_) - | RuntimeCall::Proxy(_) - | RuntimeCall::OrmlExtension(_) - | RuntimeCall::TreasuryBuyoutExtension(_) - | RuntimeCall::RewardDistribution(_) - | RuntimeCall::ParachainInfo(_) - | RuntimeCall::CumulusXcm(_) - | RuntimeCall::VaultStaking(_) => true, // All pallets are allowed, but exhaustive match is defensive - // in the case of adding new pallets. + RuntimeCall::Bounties(_) | + RuntimeCall::ChildBounties(_) | + RuntimeCall::ClientsInfo(_) | + RuntimeCall::Treasury(_) | + RuntimeCall::Tokens(_) | + RuntimeCall::Currencies(_) | + RuntimeCall::ParachainStaking(_) | + RuntimeCall::Democracy(_) | + RuntimeCall::Council(_) | + RuntimeCall::TechnicalCommittee(_) | + RuntimeCall::System(_) | + RuntimeCall::Scheduler(_) | + RuntimeCall::Preimage(_) | + RuntimeCall::Timestamp(_) | + RuntimeCall::Balances(_) | + RuntimeCall::Session(_) | + RuntimeCall::ParachainSystem(_) | + RuntimeCall::Sudo(_) | + RuntimeCall::XcmpQueue(_) | + RuntimeCall::PolkadotXcm(_) | + RuntimeCall::DmpQueue(_) | + RuntimeCall::Utility(_) | + RuntimeCall::Vesting(_) | + RuntimeCall::XTokens(_) | + RuntimeCall::Multisig(_) | + RuntimeCall::Identity(_) | + RuntimeCall::Contracts(_) | + RuntimeCall::ZenlinkProtocol(_) | + RuntimeCall::DiaOracleModule(_) | + RuntimeCall::Fee(_) | + RuntimeCall::Issue(_) | + RuntimeCall::Nomination(_) | + RuntimeCall::Oracle(_) | + RuntimeCall::Redeem(_) | + RuntimeCall::Replace(_) | + RuntimeCall::Security(_) | + RuntimeCall::StellarRelay(_) | + RuntimeCall::VaultRegistry(_) | + RuntimeCall::PooledVaultRewards(_) | + RuntimeCall::Farming(_) | + RuntimeCall::TokenAllowance(_) | + RuntimeCall::AssetRegistry(_) | + RuntimeCall::Proxy(_) | + RuntimeCall::OrmlExtension(_) | + RuntimeCall::TreasuryBuyoutExtension(_) | + RuntimeCall::RewardDistribution(_) | + RuntimeCall::ParachainInfo(_) | + RuntimeCall::CumulusXcm(_) | + RuntimeCall::VaultStaking(_) => true, // All pallets are allowed, but exhaustive match is defensive + // in the case of adding new pallets. } } } @@ -1073,7 +1072,13 @@ impl pallet_contracts::Config for Runtime { type CodeHashLockupDepositPercent = CodeHashLockupDepositPercent; type MaxDelegateDependencies = MaxDelegateDependencies; type RuntimeHoldReason = RuntimeHoldReason; - type Migrations = (v11::Migration, v12::Migration, v13::Migration, v14::Migration, v15::Migration ); + type Migrations = ( + v11::Migration, + v12::Migration, + v13::Migration, + v14::Migration, + v15::Migration, + ); type Debug = (); type Environment = (); } @@ -1980,14 +1985,14 @@ impl_runtime_apis! { let gas_limit = gas_limit.unwrap_or(RuntimeBlockWeights::get().max_block); Contracts::bare_call( origin, - dest, - value, - gas_limit, - storage_deposit_limit, - input_data, - pallet_contracts::DebugInfo::UnsafeDebug, - pallet_contracts::CollectEvents::UnsafeCollect, - pallet_contracts::Determinism::Enforced, + dest, + value, + gas_limit, + storage_deposit_limit, + input_data, + pallet_contracts::DebugInfo::UnsafeDebug, + pallet_contracts::CollectEvents::UnsafeCollect, + pallet_contracts::Determinism::Enforced, ) } @@ -2004,14 +2009,14 @@ impl_runtime_apis! { let gas_limit = gas_limit.unwrap_or(RuntimeBlockWeights::get().max_block); Contracts::bare_instantiate( origin, - value, - gas_limit, - storage_deposit_limit, - code, - data, - salt, - pallet_contracts::DebugInfo::UnsafeDebug, - pallet_contracts::CollectEvents::UnsafeCollect, + value, + gas_limit, + storage_deposit_limit, + code, + data, + salt, + pallet_contracts::DebugInfo::UnsafeDebug, + pallet_contracts::CollectEvents::UnsafeCollect, ) } diff --git a/runtime/foucoco/src/weights/mod.rs b/runtime/foucoco/src/weights/mod.rs index 0d05e7b7f..d8430393e 100644 --- a/runtime/foucoco/src/weights/mod.rs +++ b/runtime/foucoco/src/weights/mod.rs @@ -20,23 +20,22 @@ pub mod block_weights; pub mod dia_oracle; pub mod extrinsic_weights; -pub mod pallet_xcm; -pub mod paritydb_weights; -pub mod rocksdb_weights; -pub mod parachain_staking; -pub mod orml_asset_registry; -pub mod orml_currencies_allowance_extension; -pub mod orml_tokens_management_extension; -pub mod treasury_buyout_extension; pub mod fee; pub mod issue; pub mod nomination; pub mod oracle; +pub mod orml_asset_registry; +pub mod orml_currencies_allowance_extension; +pub mod orml_tokens_management_extension; +pub mod pallet_xcm; +pub mod parachain_staking; +pub mod paritydb_weights; pub mod redeem; pub mod replace; +pub mod rocksdb_weights; pub mod stellar_relay; +pub mod treasury_buyout_extension; pub mod vault_registry; -pub mod dia_oracle; pub use block_weights::constants::BlockExecutionWeight; pub use extrinsic_weights::constants::ExtrinsicBaseWeight; diff --git a/runtime/foucoco/src/xcm_config.rs b/runtime/foucoco/src/xcm_config.rs index ed0eb0ae3..1a82d7794 100644 --- a/runtime/foucoco/src/xcm_config.rs +++ b/runtime/foucoco/src/xcm_config.rs @@ -5,12 +5,12 @@ use frame_support::{ match_types, parameter_types, traits::{ConstU32, ContainsPair, Everything, Nothing, ProcessMessageError}, }; +use log; use orml_asset_registry::{AssetRegistryTrader, FixedRateAssetRegistryTrader}; use orml_traits::{ location::{RelativeReserveProvider, Reserve}, parameter_type_with_key, }; -use log; use orml_xcm_support::{DepositToAlternative, IsNativeConcrete, MultiCurrencyAdapter}; use pallet_xcm::XcmPassthrough; use polkadot_parachain::primitives::Sibling; @@ -23,7 +23,10 @@ use xcm_builder::{ ParentIsPreset, RelayChainAsNative, SiblingParachainAsNative, SiblingParachainConvertsVia, SignedAccountId32AsNative, SignedToAccountId32, SovereignSignedViaLocation, TakeWeightCredit, }; -use xcm_executor::{traits::{ShouldExecute, Properties}, XcmExecutor}; +use xcm_executor::{ + traits::{Properties, ShouldExecute}, + XcmExecutor, +}; use super::{ AccountId, AssetRegistry, Balance, Balances, Currencies, CurrencyId, FoucocoTreasuryAccount, diff --git a/runtime/integration-tests/src/amplitude_tests.rs b/runtime/integration-tests/src/amplitude_tests.rs index 1d9f5a37d..c40d5af5d 100644 --- a/runtime/integration-tests/src/amplitude_tests.rs +++ b/runtime/integration-tests/src/amplitude_tests.rs @@ -1,4 +1,5 @@ -use crate::{mock::{ USDT_ASSET_ID, assets_metadata_for_registry_amplitude}, +use crate::{ + mock::{assets_metadata_for_registry_amplitude, USDT_ASSET_ID}, sibling, test_macros::{ parachain1_transfer_asset_to_parachain2, parachain1_transfer_asset_to_parachain2_and_back, @@ -10,22 +11,22 @@ use crate::{mock::{ USDT_ASSET_ID, assets_metadata_for_registry_amplitude}, AMPLITUDE_ID, ASSETHUB_ID, SIBLING_ID, }; -use frame_support::assert_ok; use asset_hub_kusama_runtime; -use integration_tests_common::{ - constants::{kusama, asset_hub_kusama}, -}; +use frame_support::assert_ok; +use integration_tests_common::constants::{asset_hub_kusama, kusama}; use crate::genesis::{genesis_gen, genesis_sibling}; -use xcm::latest::NetworkId; -use xcm_emulator::{decl_test_networks, decl_test_parachains, decl_test_relay_chains, DefaultMessageProcessor}; use frame_support::traits::OnInitialize; - +use xcm::latest::NetworkId; +use xcm_emulator::{ + decl_test_networks, decl_test_parachains, decl_test_relay_chains, DefaultMessageProcessor, +}; // Native fee expected for each token according to the `fee_per_second` values defined in the mock const NATIVE_FEE_WHEN_TRANSFER_TO_PARACHAIN: polkadot_core_primitives::Balance = 4000000000; const BASE_FEE_WHEN_TRANSFER_NON_NATIVE_ASSET: polkadot_core_primitives::Balance = 5000000000; -const KSM_FEE_WHEN_TRANSFER_TO_PARACHAIN: polkadot_core_primitives::Balance = BASE_FEE_WHEN_TRANSFER_NON_NATIVE_ASSET/ 20; +const KSM_FEE_WHEN_TRANSFER_TO_PARACHAIN: polkadot_core_primitives::Balance = + BASE_FEE_WHEN_TRANSFER_NON_NATIVE_ASSET / 20; const USDT_FEE_WHEN_TRANSFER_TO_PARACHAIN: polkadot_core_primitives::Balance = BASE_FEE_WHEN_TRANSFER_NON_NATIVE_ASSET / 10; @@ -131,7 +132,6 @@ fn transfer_ksm_from_kusama_to_amplitude() { ); } - #[test] fn transfer_ksm_from_amplitude_to_kusama() { transfer_10_relay_token_from_parachain_to_relay_chain!( diff --git a/runtime/integration-tests/src/mock.rs b/runtime/integration-tests/src/mock.rs index 729cf69f9..a9d973e06 100644 --- a/runtime/integration-tests/src/mock.rs +++ b/runtime/integration-tests/src/mock.rs @@ -1,13 +1,11 @@ -use crate::{definitions::asset_hub}; +use crate::definitions::asset_hub; use amplitude_runtime::CurrencyId as AmplitudeCurrencyId; -use pendulum_runtime::CurrencyId as PendulumCurrencyId; -use polkadot_core_primitives::Balance; use codec::Encode; use frame_support::BoundedVec; +use pendulum_runtime::{definitions::moonbeam, CurrencyId as PendulumCurrencyId}; +use polkadot_core_primitives::Balance; use runtime_common::asset_registry::{CustomMetadata, DiaKeys, StringLimit}; use xcm::{v3::MultiLocation, VersionedMultiLocation}; -use pendulum_runtime::definitions::moonbeam; - pub const UNIT: Balance = 1_000_000_000_000; pub const TEN_UNITS: Balance = 10_000_000_000_000; @@ -45,7 +43,9 @@ pub fn assets_metadata_for_registry_pendulum() -> Vec<(PendulumCurrencyId, Vec::truncate_from("USDT Assethub".as_bytes().to_vec()), + name: BoundedVec::::truncate_from( + "USDT Assethub".as_bytes().to_vec(), + ), symbol: BoundedVec::::truncate_from("USDT".as_bytes().to_vec()), existential_deposit: 1_000u128, location: Some(VersionedMultiLocation::V3(asset_hub::USDT_location())), @@ -81,7 +81,9 @@ pub fn assets_metadata_for_registry_pendulum() -> Vec<(PendulumCurrencyId, Vec::truncate_from("Moonbeam BRZ".as_bytes().to_vec()), + name: BoundedVec::::truncate_from( + "Moonbeam BRZ".as_bytes().to_vec(), + ), symbol: BoundedVec::::truncate_from("BRZ".as_bytes().to_vec()), existential_deposit: 1_000u128, location: Some(xcm::VersionedMultiLocation::V3(moonbeam::BRZ_location())), @@ -125,7 +127,9 @@ pub fn assets_metadata_for_registry_amplitude() -> Vec<(AmplitudeCurrencyId, Vec AmplitudeCurrencyId::XCM(1), orml_asset_registry::AssetMetadata { decimals: 12u32, - name: BoundedVec::::truncate_from("USDT Assethub".as_bytes().to_vec()), + name: BoundedVec::::truncate_from( + "USDT Assethub".as_bytes().to_vec(), + ), symbol: BoundedVec::::truncate_from("USDT".as_bytes().to_vec()), existential_deposit: 1_000u128, location: Some(VersionedMultiLocation::V3(asset_hub::USDT_location())), @@ -159,4 +163,3 @@ pub fn assets_metadata_for_registry_amplitude() -> Vec<(AmplitudeCurrencyId, Vec ), ] } - diff --git a/runtime/integration-tests/src/pendulum_tests.rs b/runtime/integration-tests/src/pendulum_tests.rs index dca720905..36c7be1e5 100644 --- a/runtime/integration-tests/src/pendulum_tests.rs +++ b/runtime/integration-tests/src/pendulum_tests.rs @@ -1,21 +1,26 @@ -use crate::{mock::{ USDT_ASSET_ID, assets_metadata_for_registry_pendulum}, - sibling, test_macros::{ +use crate::{ + mock::{assets_metadata_for_registry_pendulum, USDT_ASSET_ID}, + sibling, + test_macros::{ moonbeam_transfers_token_and_handle_automation, parachain1_transfer_asset_to_parachain2, parachain1_transfer_asset_to_parachain2_and_back, parachain1_transfer_incorrect_asset_to_parachain2_should_fail, transfer_10_relay_token_from_parachain_to_relay_chain, transfer_20_relay_token_from_relay_chain_to_parachain, transfer_native_token_from_parachain1_to_parachain2_and_back, - }, ASSETHUB_ID, PENDULUM_ID, SIBLING_ID}; + }, + ASSETHUB_ID, PENDULUM_ID, SIBLING_ID, +}; -use frame_support::assert_ok; +use crate::genesis::{genesis_gen, genesis_sibling}; +use frame_support::{assert_ok, traits::OnInitialize}; +use integration_tests_common::constants::{asset_hub_polkadot, polkadot}; #[allow(unused_imports)] use pendulum_runtime::definitions::moonbeam::PARA_ID as MOONBEAM_PARA_ID; use xcm::latest::NetworkId; -use xcm_emulator::{decl_test_networks, decl_test_relay_chains, decl_test_parachains, DefaultMessageProcessor}; -use crate::genesis::{genesis_gen, genesis_sibling}; -use integration_tests_common::constants::{polkadot, asset_hub_polkadot}; -use frame_support::traits::OnInitialize; +use xcm_emulator::{ + decl_test_networks, decl_test_parachains, decl_test_relay_chains, DefaultMessageProcessor, +}; // Native fee expected for each token according to the `fee_per_second` values defined in the mock diff --git a/runtime/integration-tests/src/test_macros.rs b/runtime/integration-tests/src/test_macros.rs index 38e9d609f..8f90817d0 100644 --- a/runtime/integration-tests/src/test_macros.rs +++ b/runtime/integration-tests/src/test_macros.rs @@ -8,11 +8,11 @@ macro_rules! transfer_20_relay_token_from_relay_chain_to_parachain { $parachain_id:ident, $tx_fee:ident ) => {{ - use xcm_emulator::{Network, TestExt}; - use crate::mock::{units}; + use crate::mock::units; use frame_support::traits::fungibles::Inspect; use polkadot_core_primitives::Balance; use xcm::latest::{Junction, Junction::Parachain, Junctions::Here}; + use xcm_emulator::{Network, TestExt}; use $para_runtime::CurrencyId; use integration_tests_common::constants::accounts; @@ -24,20 +24,21 @@ macro_rules! transfer_20_relay_token_from_relay_chain_to_parachain { // get ALICE's balance before the transfer $parachain::execute_with(|| { - orml_tokens_before = $para_runtime::Tokens::balance(CurrencyId::XCM(0), &alice_account_id.clone().into()); + orml_tokens_before = $para_runtime::Tokens::balance( + CurrencyId::XCM(0), + &alice_account_id.clone().into(), + ); }); - // get ALICE's balance in the relay chain, before the transfer. Ensure it is enough to transfer. $relaychain::execute_with(|| { - let before_alice_free_balance = $relay_runtime::Balances::free_balance(&alice_account_id.clone().into()); + let before_alice_free_balance = + $relay_runtime::Balances::free_balance(&alice_account_id.clone().into()); assert!(before_alice_free_balance > transfer_amount); }); - // execute the transfer from relay chain $relaychain::execute_with(|| { - assert_ok!($relay_runtime::XcmPallet::reserve_transfer_assets( $relay_runtime::RuntimeOrigin::signed(alice_account_id.clone().into()), Box::new(Parachain($parachain_id).into()), @@ -49,7 +50,6 @@ macro_rules! transfer_20_relay_token_from_relay_chain_to_parachain { Box::new((Here, transfer_amount).into()), 0 )); - }); // a "Deposited" event occurred is proof that the transfer was successful @@ -57,8 +57,8 @@ macro_rules! transfer_20_relay_token_from_relay_chain_to_parachain { use $para_runtime::{RuntimeEvent, System}; for event in System::events() { - println!{"Parachain events when receiving of relay token"} - println!{"{:?}", event} + println! {"Parachain events when receiving of relay token"} + println! {"{:?}", event} } assert!(System::events().iter().any(|r| matches!( @@ -74,7 +74,10 @@ macro_rules! transfer_20_relay_token_from_relay_chain_to_parachain { $parachain::execute_with(|| { assert_eq!( - $para_runtime::Tokens::balance(CurrencyId::XCM(0), &alice_account_id.clone().into()), + $para_runtime::Tokens::balance( + CurrencyId::XCM(0), + &alice_account_id.clone().into() + ), orml_tokens_before + transfer_amount - $tx_fee, "Incorrect amount received" ); @@ -192,8 +195,8 @@ macro_rules! parachain1_transfer_incorrect_asset_to_parachain2_should_fail { $parachain2_id:ident ) => {{ use crate::mock::{INCORRECT_ASSET_ID, TEN_UNITS, UNIT}; - use xcm_emulator::TestExt; use frame_support::traits::{fungibles::Inspect, Currency}; + use integration_tests_common::constants::accounts; use polkadot_core_primitives::AccountId; use polkadot_parachain::primitives::Sibling; use sp_runtime::{traits::AccountIdConversion, MultiAddress}; @@ -203,7 +206,7 @@ macro_rules! parachain1_transfer_incorrect_asset_to_parachain2_should_fail { Junctions::{X1, X2}, MultiLocation, WeightLimit, }; - use integration_tests_common::constants::accounts; + use xcm_emulator::TestExt; use $para2_runtime::CurrencyId; let parachain2_account: AccountId = Sibling::from($parachain2_id).into_account_truncating(); @@ -249,7 +252,10 @@ macro_rules! parachain1_transfer_incorrect_asset_to_parachain2_should_fail { assert_ok!(PolkadotXcm::limited_reserve_transfer_assets( origin.clone(), Box::new(MultiLocation::new(1, X1(Parachain($parachain2_id))).into()), - Box::new(Junction::AccountId32 { id: bob_account_id.clone().into(), network: None }.into()), + Box::new( + Junction::AccountId32 { id: bob_account_id.clone().into(), network: None } + .into() + ), Box::new( (X2(PalletInstance(50), GeneralIndex(INCORRECT_ASSET_ID as u128)), TEN_UNITS) .into() @@ -278,7 +284,8 @@ macro_rules! parachain1_transfer_incorrect_asset_to_parachain2_should_fail { RuntimeEvent::XcmpQueue(cumulus_pallet_xcmp_queue::Event::Fail { message_hash: _, error: xcm::v3::Error::TooExpensive, - weight: _, .. + weight: _, + .. }) ))); }); @@ -302,9 +309,9 @@ macro_rules! parachain1_transfer_asset_to_parachain2 { $parachain2_id:ident, $tx_fee:ident ) => {{ - use xcm_emulator::TestExt; use crate::mock::{TEN_UNITS, UNIT}; use frame_support::traits::{fungibles::Inspect, Currency}; + use integration_tests_common::constants::accounts; use polkadot_core_primitives::AccountId; use polkadot_parachain::primitives::Sibling; use sp_runtime::{traits::AccountIdConversion, MultiAddress}; @@ -314,8 +321,8 @@ macro_rules! parachain1_transfer_asset_to_parachain2 { Junctions::{X1, X2}, MultiLocation, WeightLimit, }; + use xcm_emulator::TestExt; use $para2_runtime::CurrencyId; - use integration_tests_common::constants::accounts; let alice_account_id = accounts::init_balances()[0].clone(); let bob_account_id = accounts::init_balances()[1].clone(); @@ -323,7 +330,13 @@ macro_rules! parachain1_transfer_asset_to_parachain2 { let parachain2_account: AccountId = Sibling::from($parachain2_id).into_account_truncating(); $parachain2::execute_with(|| { - assert_eq!($para2_runtime::Tokens::balance(CurrencyId::XCM(1), &alice_account_id.clone().into()), 0); + assert_eq!( + $para2_runtime::Tokens::balance( + CurrencyId::XCM(1), + &alice_account_id.clone().into() + ), + 0 + ); }); $parachain1::execute_with(|| { @@ -356,7 +369,10 @@ macro_rules! parachain1_transfer_asset_to_parachain2 { assert_ok!(PolkadotXcm::limited_reserve_transfer_assets( origin.clone(), Box::new(MultiLocation::new(1, X1(Parachain($parachain2_id))).into()), - Box::new(Junction::AccountId32 { id: bob_account_id.clone().into(), network: None }.into()), + Box::new( + Junction::AccountId32 { id: bob_account_id.clone().into(), network: None } + .into() + ), Box::new( (X2(PalletInstance(50), GeneralIndex($para1_asset_id as u128)), TEN_UNITS) .into() @@ -395,7 +411,10 @@ macro_rules! parachain1_transfer_asset_to_parachain2 { ))); assert_eq!( - $para2_runtime::Tokens::balance($para2_runtime::CurrencyId::XCM(1), &bob_account_id.clone().into()), + $para2_runtime::Tokens::balance( + $para2_runtime::CurrencyId::XCM(1), + &bob_account_id.clone().into() + ), TEN_UNITS - $tx_fee ); }); @@ -414,13 +433,13 @@ macro_rules! parachain1_transfer_asset_to_parachain2_and_back { $network_id: ident, $tx_fee: ident ) => {{ - use xcm_emulator::TestExt; use crate::mock::{TEN_UNITS, UNIT}; use frame_support::traits::{fungible::Mutate, fungibles::Inspect}; + use integration_tests_common::constants::accounts; use xcm::latest::{ Junction, Junction::Parachain, Junctions::X2, MultiLocation, WeightLimit, }; - use integration_tests_common::constants::accounts; + use xcm_emulator::TestExt; let bob_account_id = accounts::init_balances()[1].clone(); @@ -459,7 +478,10 @@ macro_rules! parachain1_transfer_asset_to_parachain2_and_back { 1, X2( Parachain($parachain1_id), - Junction::AccountId32 { network: Some($network_id), id: bob_account_id.clone().into() } + Junction::AccountId32 { + network: Some($network_id), + id: bob_account_id.clone().into() + } ) ) .into() @@ -481,7 +503,6 @@ macro_rules! parachain1_transfer_asset_to_parachain2_and_back { $parachain1::execute_with(|| { use $para1_runtime::*; - let events = System::events(); match &events[events.len() - 2] { &frame_system::EventRecord { diff --git a/runtime/pendulum/src/lib.rs b/runtime/pendulum/src/lib.rs index e60907e56..ef21ead44 100644 --- a/runtime/pendulum/src/lib.rs +++ b/runtime/pendulum/src/lib.rs @@ -77,8 +77,8 @@ use runtime_common::{ use cumulus_pallet_parachain_system::RelayNumberStrictlyIncreases; -use dia_oracle::DiaOracle; pub use dia_oracle::dia::AssetId; +use dia_oracle::DiaOracle; pub use issue::{Event as IssueEvent, IssueRequest}; pub use nomination::Event as NominationEvent; use oracle::dia::DiaOracleAdapter; @@ -162,8 +162,10 @@ parameter_types! { use pallet_contracts::migration::{v11, v12, v13, v14, v15}; // Custom storage version bump -use frame_support::traits::{GetStorageVersion, OnRuntimeUpgrade}; -use frame_support::pallet_prelude::StorageVersion; +use frame_support::{ + pallet_prelude::StorageVersion, + traits::{GetStorageVersion, OnRuntimeUpgrade}, +}; pub struct CustomOnRuntimeUpgrade; impl OnRuntimeUpgrade for CustomOnRuntimeUpgrade { @@ -188,7 +190,6 @@ impl OnRuntimeUpgrade for CustomOnRuntimeUpgrade { } } - /// Executive: handles dispatch to the various modules. pub type Executive = frame_executive::Executive< Runtime, @@ -196,10 +197,7 @@ pub type Executive = frame_executive::Executive< frame_system::ChainContext, Runtime, AllPalletsWithSystem, - ( - CustomOnRuntimeUpgrade, - pallet_contracts::migration::Migration, - ), + (CustomOnRuntimeUpgrade, pallet_contracts::migration::Migration), >; pub struct ConvertPrice; @@ -338,54 +336,54 @@ impl Contains for BaseFilter { fn contains(call: &RuntimeCall) -> bool { match call { // These modules are all allowed to be called by transactions: - RuntimeCall::Bounties(_) - | RuntimeCall::ChildBounties(_) - | RuntimeCall::ClientsInfo(_) - | RuntimeCall::Treasury(_) - | RuntimeCall::Tokens(_) - | RuntimeCall::Currencies(_) - | RuntimeCall::ParachainStaking(_) - | RuntimeCall::Democracy(_) - | RuntimeCall::Council(_) - | RuntimeCall::TechnicalCommittee(_) - | RuntimeCall::System(_) - | RuntimeCall::Scheduler(_) - | RuntimeCall::Preimage(_) - | RuntimeCall::Timestamp(_) - | RuntimeCall::Balances(_) - | RuntimeCall::Session(_) - | RuntimeCall::ParachainSystem(_) - | RuntimeCall::XcmpQueue(_) - | RuntimeCall::PolkadotXcm(_) - | RuntimeCall::DmpQueue(_) - | RuntimeCall::Utility(_) - | RuntimeCall::Vesting(_) - | RuntimeCall::XTokens(_) - | RuntimeCall::Multisig(_) - | RuntimeCall::Identity(_) - | RuntimeCall::Contracts(_) - | RuntimeCall::ZenlinkProtocol(_) - | RuntimeCall::DiaOracleModule(_) - | RuntimeCall::VestingManager(_) - | RuntimeCall::TokenAllowance(_) - | RuntimeCall::AssetRegistry(_) - | RuntimeCall::Fee(_) - | RuntimeCall::Issue(_) - | RuntimeCall::Nomination(_) - | RuntimeCall::Oracle(_) - | RuntimeCall::Redeem(_) - | RuntimeCall::Replace(_) - | RuntimeCall::Security(_) - | RuntimeCall::StellarRelay(_) - | RuntimeCall::VaultRegistry(_) - | RuntimeCall::PooledVaultRewards(_) - | RuntimeCall::RewardDistribution(_) - | RuntimeCall::Farming(_) - | RuntimeCall::Proxy(_) - | RuntimeCall::TreasuryBuyoutExtension(_) - | RuntimeCall::ParachainInfo(_) - | RuntimeCall::CumulusXcm(_) - | RuntimeCall::VaultStaking(_) => true, + RuntimeCall::Bounties(_) | + RuntimeCall::ChildBounties(_) | + RuntimeCall::ClientsInfo(_) | + RuntimeCall::Treasury(_) | + RuntimeCall::Tokens(_) | + RuntimeCall::Currencies(_) | + RuntimeCall::ParachainStaking(_) | + RuntimeCall::Democracy(_) | + RuntimeCall::Council(_) | + RuntimeCall::TechnicalCommittee(_) | + RuntimeCall::System(_) | + RuntimeCall::Scheduler(_) | + RuntimeCall::Preimage(_) | + RuntimeCall::Timestamp(_) | + RuntimeCall::Balances(_) | + RuntimeCall::Session(_) | + RuntimeCall::ParachainSystem(_) | + RuntimeCall::XcmpQueue(_) | + RuntimeCall::PolkadotXcm(_) | + RuntimeCall::DmpQueue(_) | + RuntimeCall::Utility(_) | + RuntimeCall::Vesting(_) | + RuntimeCall::XTokens(_) | + RuntimeCall::Multisig(_) | + RuntimeCall::Identity(_) | + RuntimeCall::Contracts(_) | + RuntimeCall::ZenlinkProtocol(_) | + RuntimeCall::DiaOracleModule(_) | + RuntimeCall::VestingManager(_) | + RuntimeCall::TokenAllowance(_) | + RuntimeCall::AssetRegistry(_) | + RuntimeCall::Fee(_) | + RuntimeCall::Issue(_) | + RuntimeCall::Nomination(_) | + RuntimeCall::Oracle(_) | + RuntimeCall::Redeem(_) | + RuntimeCall::Replace(_) | + RuntimeCall::Security(_) | + RuntimeCall::StellarRelay(_) | + RuntimeCall::VaultRegistry(_) | + RuntimeCall::PooledVaultRewards(_) | + RuntimeCall::RewardDistribution(_) | + RuntimeCall::Farming(_) | + RuntimeCall::Proxy(_) | + RuntimeCall::TreasuryBuyoutExtension(_) | + RuntimeCall::ParachainInfo(_) | + RuntimeCall::CumulusXcm(_) | + RuntimeCall::VaultStaking(_) => true, // All pallets are allowed, but exhaustive match is defensive // in the case of adding new pallets. } @@ -395,8 +393,8 @@ impl Contains for BaseFilter { // Configure FRAME pallets to include in runtime. impl frame_system::Config for Runtime { - /// The Block type used by the runtime. This is used by construct_runtime to retrieve the extrinsics or other block specific data as needed. - type Block = Block; + /// The Block type used by the runtime. This is used by construct_runtime to retrieve the extrinsics or other block specific data as needed. + type Block = Block; /// The identifier used to distinguish between accounts. type AccountId = AccountId; /// The aggregated dispatch type that is available for extrinsics. @@ -1026,7 +1024,13 @@ impl pallet_contracts::Config for Runtime { type CodeHashLockupDepositPercent = CodeHashLockupDepositPercent; type MaxDelegateDependencies = MaxDelegateDependencies; type RuntimeHoldReason = RuntimeHoldReason; - type Migrations = (v11::Migration, v12::Migration, v13::Migration, v14::Migration, v15::Migration ); + type Migrations = ( + v11::Migration, + v12::Migration, + v13::Migration, + v14::Migration, + v15::Migration, + ); type Debug = (); type Environment = (); } @@ -1964,14 +1968,14 @@ impl_runtime_apis! { let gas_limit = gas_limit.unwrap_or(RuntimeBlockWeights::get().max_block); Contracts::bare_call( origin, - dest, - value, - gas_limit, - storage_deposit_limit, - input_data, - pallet_contracts::DebugInfo::UnsafeDebug, - pallet_contracts::CollectEvents::UnsafeCollect, - pallet_contracts::Determinism::Enforced, + dest, + value, + gas_limit, + storage_deposit_limit, + input_data, + pallet_contracts::DebugInfo::UnsafeDebug, + pallet_contracts::CollectEvents::UnsafeCollect, + pallet_contracts::Determinism::Enforced, ) } @@ -1988,14 +1992,14 @@ impl_runtime_apis! { let gas_limit = gas_limit.unwrap_or(RuntimeBlockWeights::get().max_block); Contracts::bare_instantiate( origin, - value, - gas_limit, - storage_deposit_limit, - code, - data, - salt, - pallet_contracts::DebugInfo::UnsafeDebug, - pallet_contracts::CollectEvents::UnsafeCollect, + value, + gas_limit, + storage_deposit_limit, + code, + data, + salt, + pallet_contracts::DebugInfo::UnsafeDebug, + pallet_contracts::CollectEvents::UnsafeCollect, ) } diff --git a/runtime/pendulum/src/weights/mod.rs b/runtime/pendulum/src/weights/mod.rs index 414957f72..5206c8949 100644 --- a/runtime/pendulum/src/weights/mod.rs +++ b/runtime/pendulum/src/weights/mod.rs @@ -19,22 +19,21 @@ pub mod block_weights; pub mod dia_oracle; pub mod extrinsic_weights; -pub mod pallet_xcm; -pub mod paritydb_weights; -pub mod rocksdb_weights; -pub mod parachain_staking; -pub mod orml_asset_registry; -pub mod orml_currencies_allowance_extension; -pub mod treasury_buyout_extension; pub mod fee; pub mod issue; pub mod nomination; pub mod oracle; +pub mod orml_asset_registry; +pub mod orml_currencies_allowance_extension; +pub mod pallet_xcm; +pub mod parachain_staking; +pub mod paritydb_weights; pub mod redeem; pub mod replace; +pub mod rocksdb_weights; pub mod stellar_relay; +pub mod treasury_buyout_extension; pub mod vault_registry; -pub mod dia_oracle; pub use block_weights::constants::BlockExecutionWeight; pub use extrinsic_weights::constants::ExtrinsicBaseWeight; diff --git a/runtime/pendulum/src/xcm_config.rs b/runtime/pendulum/src/xcm_config.rs index fd3acfbb7..4d4c511b4 100644 --- a/runtime/pendulum/src/xcm_config.rs +++ b/runtime/pendulum/src/xcm_config.rs @@ -23,7 +23,10 @@ use xcm_builder::{ ParentIsPreset, RelayChainAsNative, SiblingParachainAsNative, SiblingParachainConvertsVia, SignedAccountId32AsNative, SignedToAccountId32, SovereignSignedViaLocation, TakeWeightCredit, }; -use xcm_executor::{traits::{ShouldExecute, Properties}, XcmExecutor}; +use xcm_executor::{ + traits::{Properties, ShouldExecute}, + XcmExecutor, +}; use runtime_common::{ asset_registry::FixedConversionRateProvider, From a52e89275f6d2e258b516029ca52e1411de00673 Mon Sep 17 00:00:00 2001 From: Gianfranco Date: Wed, 11 Sep 2024 15:43:24 -0300 Subject: [PATCH 12/38] add benchmarkings (those not failed), modify config to use default weight --- runtime/amplitude/src/lib.rs | 24 +- .../src/weights/parachain_staking.rs | 1437 ++++++++++++----- runtime/foucoco/src/lib.rs | 22 +- runtime/pendulum/src/lib.rs | 20 +- 4 files changed, 1075 insertions(+), 428 deletions(-) diff --git a/runtime/amplitude/src/lib.rs b/runtime/amplitude/src/lib.rs index b98d8bd22..432d910f9 100644 --- a/runtime/amplitude/src/lib.rs +++ b/runtime/amplitude/src/lib.rs @@ -939,7 +939,7 @@ impl parachain_staking::Config for Runtime { type NetworkRewardStart = NetworkRewardStart; type NetworkRewardBeneficiary = Treasury; type CollatorRewardRateDecay = CollatorRewardRateDecay; - type WeightInfo = weights::parachain_staking::SubstrateWeight; + type WeightInfo = (); const BLOCKS_PER_YEAR: BlockNumber = BLOCKS_PER_YEAR; } @@ -1070,7 +1070,7 @@ impl dia_oracle::Config for Runtime { type RuntimeEvent = RuntimeEvent; type RuntimeCall = RuntimeCall; type AuthorityId = dia_oracle::crypto::DiaAuthId; - type WeightInfo = weights::dia_oracle::SubstrateWeight; + type WeightInfo = (); } impl frame_system::offchain::SigningTypes for Runtime { @@ -1220,7 +1220,7 @@ cfg_if::cfg_if! { impl oracle::Config for Runtime { type RuntimeEvent = RuntimeEvent; - type WeightInfo = weights::oracle::SubstrateWeight; + type WeightInfo = (); type DecimalsLookup = DecimalsLookupImpl; type DataProvider = DataProviderImpl; #[cfg(feature = "runtime-benchmarks")] @@ -1239,7 +1239,7 @@ impl stellar_relay::Config for Runtime { type OrganizationLimit = OrganizationLimit; type ValidatorLimit = ValidatorLimit; type IsPublicNetwork = IsPublicNetwork; - type WeightInfo = weights::stellar_relay::SubstrateWeight; + type WeightInfo =(); } parameter_types! { @@ -1250,7 +1250,7 @@ parameter_types! { } impl fee::Config for Runtime { type FeePalletId = FeePalletId; - type WeightInfo = weights::fee::SubstrateWeight; + type WeightInfo = (); type SignedFixedPoint = SignedFixedPoint; type SignedInner = SignedInner; type UnsignedFixedPoint = UnsignedFixedPoint; @@ -1266,13 +1266,13 @@ impl vault_registry::Config for Runtime { type PalletId = VaultRegistryPalletId; type RuntimeEvent = RuntimeEvent; type Balance = Balance; - type WeightInfo = weights::vault_registry::SubstrateWeight; + type WeightInfo = (); type GetGriefingCollateralCurrencyId = NativeCurrencyId; } impl redeem::Config for Runtime { type RuntimeEvent = RuntimeEvent; - type WeightInfo = weights::redeem::SubstrateWeight; + type WeightInfo = (); } pub struct BlockNumberToBalance; @@ -1286,17 +1286,17 @@ impl sp_runtime::traits::Convert for BlockNumberToBalance impl issue::Config for Runtime { type RuntimeEvent = RuntimeEvent; type BlockNumberToBalance = BlockNumberToBalance; - type WeightInfo = weights::issue::SubstrateWeight; + type WeightInfo = (); } impl nomination::Config for Runtime { type RuntimeEvent = RuntimeEvent; - type WeightInfo = weights::nomination::SubstrateWeight; + type WeightInfo = (); } impl replace::Config for Runtime { type RuntimeEvent = RuntimeEvent; - type WeightInfo = weights::replace::SubstrateWeight; + type WeightInfo = (); } impl clients_info::Config for Runtime { @@ -1408,7 +1408,7 @@ impl pallet_proxy::Config for Runtime { impl orml_currencies_allowance_extension::Config for Runtime { type RuntimeEvent = RuntimeEvent; - type WeightInfo = weights::orml_currencies_allowance_extension::SubstrateWeight; + type WeightInfo = (); type MaxAllowedCurrencies = ConstU32<256>; } @@ -1444,7 +1444,7 @@ impl treasury_buyout_extension::Config for Runtime { type DecimalsLookup = DecimalsLookupImpl; type MinAmountToBuyout = MinAmountToBuyout; type MaxAllowedBuyoutCurrencies = MaxAllowedBuyoutCurrencies; - type WeightInfo = weights::treasury_buyout_extension::SubstrateWeight; + type WeightInfo = (); #[cfg(feature = "runtime-benchmarks")] type RelayChainCurrencyId = RelayChainCurrencyId; } diff --git a/runtime/amplitude/src/weights/parachain_staking.rs b/runtime/amplitude/src/weights/parachain_staking.rs index 49d64f53d..cb8804ece 100644 --- a/runtime/amplitude/src/weights/parachain_staking.rs +++ b/runtime/amplitude/src/weights/parachain_staking.rs @@ -2,18 +2,17 @@ //! Autogenerated weights for parachain_staking //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2024-06-08, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! DATE: 2024-09-11, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` //! WORST CASE MAP SIZE: `1000000` -//! HOSTNAME: `Bogdans-M2-MacBook-Pro.local`, CPU: `` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("amplitude"), DB CACHE: 1024 +//! HOSTNAME: `Gianfrancos-MacBook-Pro.local`, CPU: `` +//! EXECUTION: , WASM-EXECUTION: Compiled, CHAIN: Some("amplitude"), DB CACHE: 1024 // Executed Command: -// ./target/release/pendulum-node +// ./target/production/pendulum-node // benchmark // pallet // --chain // amplitude -// --execution=wasm // --wasm-execution=compiled // --pallet // parachain-staking @@ -36,74 +35,102 @@ use frame_support::{traits::Get, weights::{Weight, constants::RocksDbWeight}}; use core::marker::PhantomData; +/// Weight functions needed for parachain_staking. +pub trait WeightInfo { + fn on_initialize_no_action() -> Weight; + fn on_initialize_round_update() -> Weight; + fn on_initialize_network_rewards() -> Weight; + fn force_new_round() -> Weight; + fn set_inflation(n: u32, m: u32, ) -> Weight; + fn set_max_selected_candidates(n: u32, m: u32, ) -> Weight; + fn set_blocks_per_round() -> Weight; + fn force_remove_candidate(n: u32, m: u32, ) -> Weight; + fn join_candidates(n: u32, m: u32, ) -> Weight; + fn init_leave_candidates(n: u32, m: u32, ) -> Weight; + fn cancel_leave_candidates(n: u32, m: u32, ) -> Weight; + fn execute_leave_candidates(n: u32, m: u32, ) -> Weight; + fn candidate_stake_more(n: u32, m: u32, u: u32, ) -> Weight; + fn candidate_stake_less(n: u32, m: u32, ) -> Weight; + fn join_delegators(n: u32, m: u32, ) -> Weight; + fn delegator_stake_more(n: u32, m: u32, u: u32, ) -> Weight; + fn delegator_stake_less(n: u32, m: u32, ) -> Weight; + fn leave_delegators(n: u32, m: u32, ) -> Weight; + fn unlock_unstaked(u: u32, ) -> Weight; + fn set_max_candidate_stake() -> Weight; + fn increment_delegator_rewards() -> Weight; + fn increment_collator_rewards(m: u32, ) -> Weight; + fn claim_rewards() -> Weight; + fn execute_scheduled_reward_change(n: u32, m: u32, ) -> Weight; +} + /// Weights for parachain_staking using the Substrate node and recommended hardware. pub struct SubstrateWeight(PhantomData); -impl parachain_staking::WeightInfo for SubstrateWeight { - /// Storage: ParachainStaking Round (r:1 w:0) - /// Proof: ParachainStaking Round (max_values: Some(1), max_size: Some(12), added: 507, mode: MaxEncodedLen) +impl WeightInfo for SubstrateWeight { + /// Storage: `ParachainStaking::Round` (r:1 w:0) + /// Proof: `ParachainStaking::Round` (`max_values`: Some(1), `max_size`: Some(12), added: 507, mode: `MaxEncodedLen`) fn on_initialize_no_action() -> Weight { // Proof Size summary in bytes: // Measured: `427` // Estimated: `1497` - // Minimum execution time: 4_000_000 picoseconds. - Weight::from_parts(5_000_000, 1497) + // Minimum execution time: 3_000_000 picoseconds. + Weight::from_parts(4_000_000, 1497) .saturating_add(T::DbWeight::get().reads(1_u64)) } - /// Storage: ParachainStaking Round (r:1 w:1) - /// Proof: ParachainStaking Round (max_values: Some(1), max_size: Some(12), added: 507, mode: MaxEncodedLen) + /// Storage: `ParachainStaking::Round` (r:1 w:1) + /// Proof: `ParachainStaking::Round` (`max_values`: Some(1), `max_size`: Some(12), added: 507, mode: `MaxEncodedLen`) fn on_initialize_round_update() -> Weight { // Proof Size summary in bytes: // Measured: `427` // Estimated: `1497` - // Minimum execution time: 10_000_000 picoseconds. - Weight::from_parts(10_000_000, 1497) + // Minimum execution time: 7_000_000 picoseconds. + Weight::from_parts(8_000_000, 1497) .saturating_add(T::DbWeight::get().reads(1_u64)) .saturating_add(T::DbWeight::get().writes(1_u64)) } - /// Storage: ParachainStaking Round (r:1 w:0) - /// Proof: ParachainStaking Round (max_values: Some(1), max_size: Some(12), added: 507, mode: MaxEncodedLen) + /// Storage: `ParachainStaking::Round` (r:1 w:0) + /// Proof: `ParachainStaking::Round` (`max_values`: Some(1), `max_size`: Some(12), added: 507, mode: `MaxEncodedLen`) fn on_initialize_network_rewards() -> Weight { // Proof Size summary in bytes: // Measured: `427` // Estimated: `1497` - // Minimum execution time: 5_000_000 picoseconds. - Weight::from_parts(5_000_000, 1497) + // Minimum execution time: 3_000_000 picoseconds. + Weight::from_parts(4_000_000, 1497) .saturating_add(T::DbWeight::get().reads(1_u64)) } - /// Storage: ParachainStaking ForceNewRound (r:0 w:1) - /// Proof: ParachainStaking ForceNewRound (max_values: Some(1), max_size: Some(1), added: 496, mode: MaxEncodedLen) + /// Storage: `ParachainStaking::ForceNewRound` (r:0 w:1) + /// Proof: `ParachainStaking::ForceNewRound` (`max_values`: Some(1), `max_size`: Some(1), added: 496, mode: `MaxEncodedLen`) fn force_new_round() -> Weight { // Proof Size summary in bytes: // Measured: `0` // Estimated: `0` - // Minimum execution time: 3_000_000 picoseconds. - Weight::from_parts(3_000_000, 0) + // Minimum execution time: 2_000_000 picoseconds. + Weight::from_parts(2_000_000, 0) .saturating_add(T::DbWeight::get().writes(1_u64)) } - /// Storage: ParachainStaking CandidatePool (r:41 w:0) - /// Proof: ParachainStaking CandidatePool (max_values: None, max_size: Some(2030), added: 4505, mode: MaxEncodedLen) - /// Storage: ParachainStaking RewardCount (r:1640 w:1640) - /// Proof: ParachainStaking RewardCount (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) - /// Storage: ParachainStaking Rewards (r:40 w:40) - /// Proof: ParachainStaking Rewards (max_values: None, max_size: Some(56), added: 2531, mode: MaxEncodedLen) - /// Storage: ParachainStaking TotalCollatorStake (r:1 w:0) - /// Proof: ParachainStaking TotalCollatorStake (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) - /// Storage: ParachainStaking InflationConfig (r:1 w:1) - /// Proof: ParachainStaking InflationConfig (max_values: Some(1), max_size: Some(96), added: 591, mode: MaxEncodedLen) - /// Storage: ParachainStaking CounterForCandidatePool (r:1 w:0) - /// Proof: ParachainStaking CounterForCandidatePool (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: `ParachainStaking::CandidatePool` (r:41 w:0) + /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::RewardCount` (r:1640 w:1640) + /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::Rewards` (r:40 w:40) + /// Proof: `ParachainStaking::Rewards` (`max_values`: None, `max_size`: Some(56), added: 2531, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:0) + /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::InflationConfig` (r:1 w:1) + /// Proof: `ParachainStaking::InflationConfig` (`max_values`: Some(1), `max_size`: Some(96), added: 591, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::CounterForCandidatePool` (r:1 w:0) + /// Proof: `ParachainStaking::CounterForCandidatePool` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) /// The range of component `n` is `[0, 40]`. /// The range of component `m` is `[0, 40]`. fn set_inflation(n: u32, m: u32, ) -> Weight { // Proof Size summary in bytes: // Measured: `0 + m * (3891 ±0) + n * (4052 ±0)` - // Estimated: `101750 + m * (37911 ±1_054) + n * (33703 ±1_054)` - // Minimum execution time: 595_000_000 picoseconds. - Weight::from_parts(613_000_000, 101750) - // Standard Error: 3_104_233 - .saturating_add(Weight::from_parts(90_791_222, 0).saturating_mul(n.into())) - // Standard Error: 3_104_233 - .saturating_add(Weight::from_parts(93_574_370, 0).saturating_mul(m.into())) + // Estimated: `101750 + m * (37911 ±1_054) + n * (33703 ±9)` + // Minimum execution time: 462_000_000 picoseconds. + Weight::from_parts(474_000_000, 101750) + // Standard Error: 2_594_253 + .saturating_add(Weight::from_parts(78_871_861, 0).saturating_mul(n.into())) + // Standard Error: 2_594_253 + .saturating_add(Weight::from_parts(73_821_932, 0).saturating_mul(m.into())) .saturating_add(T::DbWeight::get().reads(124_u64)) .saturating_add(T::DbWeight::get().reads((14_u64).saturating_mul(n.into()))) .saturating_add(T::DbWeight::get().reads((14_u64).saturating_mul(m.into()))) @@ -113,76 +140,76 @@ impl parachain_staking::WeightInfo for SubstrateWeight< .saturating_add(Weight::from_parts(0, 37911).saturating_mul(m.into())) .saturating_add(Weight::from_parts(0, 33703).saturating_mul(n.into())) } - /// Storage: ParachainStaking MaxSelectedCandidates (r:1 w:1) - /// Proof: ParachainStaking MaxSelectedCandidates (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) - /// Storage: ParachainStaking TopCandidates (r:1 w:0) - /// Proof: ParachainStaking TopCandidates (max_values: Some(1), max_size: Some(1921), added: 2416, mode: MaxEncodedLen) - /// Storage: ParachainStaking TotalCollatorStake (r:1 w:1) - /// Proof: ParachainStaking TotalCollatorStake (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) + /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:1) + /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TopCandidates` (r:1 w:0) + /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) + /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) /// The range of component `n` is `[8, 40]`. /// The range of component `m` is `[0, 40]`. fn set_max_selected_candidates(n: u32, m: u32, ) -> Weight { // Proof Size summary in bytes: // Measured: `434 + n * (48 ±0)` // Estimated: `3406` - // Minimum execution time: 19_000_000 picoseconds. - Weight::from_parts(7_372_613, 3406) - // Standard Error: 11_493 - .saturating_add(Weight::from_parts(285_897, 0).saturating_mul(n.into())) - // Standard Error: 9_233 - .saturating_add(Weight::from_parts(309_585, 0).saturating_mul(m.into())) + // Minimum execution time: 15_000_000 picoseconds. + Weight::from_parts(4_148_612, 3406) + // Standard Error: 14_990 + .saturating_add(Weight::from_parts(341_567, 0).saturating_mul(n.into())) + // Standard Error: 12_042 + .saturating_add(Weight::from_parts(373_225, 0).saturating_mul(m.into())) .saturating_add(T::DbWeight::get().reads(3_u64)) .saturating_add(T::DbWeight::get().writes(2_u64)) } - /// Storage: ParachainStaking Round (r:1 w:1) - /// Proof: ParachainStaking Round (max_values: Some(1), max_size: Some(12), added: 507, mode: MaxEncodedLen) + /// Storage: `ParachainStaking::Round` (r:1 w:1) + /// Proof: `ParachainStaking::Round` (`max_values`: Some(1), `max_size`: Some(12), added: 507, mode: `MaxEncodedLen`) fn set_blocks_per_round() -> Weight { // Proof Size summary in bytes: // Measured: `427` // Estimated: `1497` - // Minimum execution time: 12_000_000 picoseconds. - Weight::from_parts(13_000_000, 1497) + // Minimum execution time: 10_000_000 picoseconds. + Weight::from_parts(10_000_000, 1497) .saturating_add(T::DbWeight::get().reads(1_u64)) .saturating_add(T::DbWeight::get().writes(1_u64)) } - /// Storage: ParachainStaking CandidatePool (r:40 w:1) - /// Proof: ParachainStaking CandidatePool (max_values: None, max_size: Some(2030), added: 4505, mode: MaxEncodedLen) - /// Storage: ParachainStaking TopCandidates (r:1 w:1) - /// Proof: ParachainStaking TopCandidates (max_values: Some(1), max_size: Some(1921), added: 2416, mode: MaxEncodedLen) - /// Storage: ParachainStaking Unstaking (r:41 w:41) - /// Proof: ParachainStaking Unstaking (max_values: None, max_size: Some(241), added: 2716, mode: MaxEncodedLen) - /// Storage: ParachainStaking DelegatorState (r:40 w:40) - /// Proof: ParachainStaking DelegatorState (max_values: None, max_size: Some(89), added: 2564, mode: MaxEncodedLen) - /// Storage: ParachainStaking RewardCount (r:41 w:41) - /// Proof: ParachainStaking RewardCount (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) - /// Storage: ParachainStaking Rewards (r:1 w:1) - /// Proof: ParachainStaking Rewards (max_values: None, max_size: Some(56), added: 2531, mode: MaxEncodedLen) - /// Storage: ParachainStaking TotalCollatorStake (r:1 w:1) - /// Proof: ParachainStaking TotalCollatorStake (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) - /// Storage: ParachainStaking InflationConfig (r:1 w:0) - /// Proof: ParachainStaking InflationConfig (max_values: Some(1), max_size: Some(96), added: 591, mode: MaxEncodedLen) - /// Storage: Session Validators (r:1 w:0) - /// Proof Skipped: Session Validators (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Session DisabledValidators (r:1 w:1) - /// Proof Skipped: Session DisabledValidators (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: System Digest (r:1 w:1) - /// Proof Skipped: System Digest (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: ParachainStaking CounterForCandidatePool (r:1 w:1) - /// Proof: ParachainStaking CounterForCandidatePool (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) - /// Storage: ParachainStaking MaxSelectedCandidates (r:1 w:0) - /// Proof: ParachainStaking MaxSelectedCandidates (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: `ParachainStaking::CandidatePool` (r:40 w:1) + /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TopCandidates` (r:1 w:1) + /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::Unstaking` (r:41 w:41) + /// Proof: `ParachainStaking::Unstaking` (`max_values`: None, `max_size`: Some(241), added: 2716, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::DelegatorState` (r:40 w:40) + /// Proof: `ParachainStaking::DelegatorState` (`max_values`: None, `max_size`: Some(89), added: 2564, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::RewardCount` (r:41 w:41) + /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::Rewards` (r:1 w:1) + /// Proof: `ParachainStaking::Rewards` (`max_values`: None, `max_size`: Some(56), added: 2531, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) + /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::InflationConfig` (r:1 w:0) + /// Proof: `ParachainStaking::InflationConfig` (`max_values`: Some(1), `max_size`: Some(96), added: 591, mode: `MaxEncodedLen`) + /// Storage: `Session::Validators` (r:1 w:0) + /// Proof: `Session::Validators` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) + /// Storage: `Session::DisabledValidators` (r:1 w:1) + /// Proof: `Session::DisabledValidators` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) + /// Storage: `System::Digest` (r:1 w:1) + /// Proof: `System::Digest` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) + /// Storage: `ParachainStaking::CounterForCandidatePool` (r:1 w:1) + /// Proof: `ParachainStaking::CounterForCandidatePool` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:0) + /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) /// The range of component `n` is `[9, 40]`. /// The range of component `m` is `[0, 40]`. fn force_remove_candidate(n: u32, m: u32, ) -> Weight { // Proof Size summary in bytes: // Measured: `0 + m * (3143 ±0) + n * (2723 ±0)` - // Estimated: `9446 + m * (2716 ±28) + n * (4505 ±27)` - // Minimum execution time: 175_000_000 picoseconds. - Weight::from_parts(178_000_000, 9446) - // Standard Error: 76_352 - .saturating_add(Weight::from_parts(1_839_740, 0).saturating_mul(n.into())) - // Standard Error: 78_833 - .saturating_add(Weight::from_parts(17_270_939, 0).saturating_mul(m.into())) + // Estimated: `9446 + m * (2716 ±0) + n * (4505 ±27)` + // Minimum execution time: 148_000_000 picoseconds. + Weight::from_parts(150_000_000, 9446) + // Standard Error: 75_916 + .saturating_add(Weight::from_parts(1_928_052, 0).saturating_mul(n.into())) + // Standard Error: 78_382 + .saturating_add(Weight::from_parts(15_539_211, 0).saturating_mul(m.into())) .saturating_add(T::DbWeight::get().reads(11_u64)) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(n.into()))) .saturating_add(T::DbWeight::get().reads((3_u64).saturating_mul(m.into()))) @@ -191,127 +218,129 @@ impl parachain_staking::WeightInfo for SubstrateWeight< .saturating_add(Weight::from_parts(0, 2716).saturating_mul(m.into())) .saturating_add(Weight::from_parts(0, 4505).saturating_mul(n.into())) } - /// Storage: ParachainStaking CandidatePool (r:1 w:1) - /// Proof: ParachainStaking CandidatePool (max_values: None, max_size: Some(2030), added: 4505, mode: MaxEncodedLen) - /// Storage: ParachainStaking DelegatorState (r:1 w:0) - /// Proof: ParachainStaking DelegatorState (max_values: None, max_size: Some(89), added: 2564, mode: MaxEncodedLen) - /// Storage: ParachainStaking MaxCollatorCandidateStake (r:1 w:0) - /// Proof: ParachainStaking MaxCollatorCandidateStake (max_values: Some(1), max_size: Some(16), added: 511, mode: MaxEncodedLen) - /// Storage: ParachainStaking Unstaking (r:1 w:1) - /// Proof: ParachainStaking Unstaking (max_values: None, max_size: Some(241), added: 2716, mode: MaxEncodedLen) - /// Storage: System Account (r:1 w:1) - /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) - /// Storage: Balances Locks (r:1 w:1) - /// Proof: Balances Locks (max_values: None, max_size: Some(1299), added: 3774, mode: MaxEncodedLen) - /// Storage: Balances Freezes (r:1 w:0) - /// Proof: Balances Freezes (max_values: None, max_size: Some(49), added: 2524, mode: MaxEncodedLen) - /// Storage: ParachainStaking TopCandidates (r:1 w:1) - /// Proof: ParachainStaking TopCandidates (max_values: Some(1), max_size: Some(1921), added: 2416, mode: MaxEncodedLen) - /// Storage: ParachainStaking MaxSelectedCandidates (r:1 w:0) - /// Proof: ParachainStaking MaxSelectedCandidates (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) - /// Storage: ParachainStaking TotalCollatorStake (r:1 w:1) - /// Proof: ParachainStaking TotalCollatorStake (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) - /// Storage: ParachainStaking CounterForCandidatePool (r:1 w:1) - /// Proof: ParachainStaking CounterForCandidatePool (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: `ParachainStaking::CandidatePool` (r:1 w:1) + /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::DelegatorState` (r:1 w:0) + /// Proof: `ParachainStaking::DelegatorState` (`max_values`: None, `max_size`: Some(89), added: 2564, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::MaxCollatorCandidateStake` (r:1 w:0) + /// Proof: `ParachainStaking::MaxCollatorCandidateStake` (`max_values`: Some(1), `max_size`: Some(16), added: 511, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::Unstaking` (r:1 w:1) + /// Proof: `ParachainStaking::Unstaking` (`max_values`: None, `max_size`: Some(241), added: 2716, mode: `MaxEncodedLen`) + /// Storage: `System::Account` (r:1 w:1) + /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) + /// Storage: `Balances::Locks` (r:1 w:1) + /// Proof: `Balances::Locks` (`max_values`: None, `max_size`: Some(1299), added: 3774, mode: `MaxEncodedLen`) + /// Storage: `Balances::Freezes` (r:1 w:0) + /// Proof: `Balances::Freezes` (`max_values`: None, `max_size`: Some(49), added: 2524, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TopCandidates` (r:1 w:1) + /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:0) + /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) + /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::CounterForCandidatePool` (r:1 w:1) + /// Proof: `ParachainStaking::CounterForCandidatePool` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) /// The range of component `n` is `[1, 39]`. /// The range of component `m` is `[0, 40]`. fn join_candidates(n: u32, m: u32, ) -> Weight { // Proof Size summary in bytes: // Measured: `2158 + m * (45 ±0) + n * (86 ±0)` // Estimated: `5495` - // Minimum execution time: 70_000_000 picoseconds. - Weight::from_parts(55_257_753, 5495) - // Standard Error: 15_095 - .saturating_add(Weight::from_parts(568_354, 0).saturating_mul(n.into())) - // Standard Error: 14_352 - .saturating_add(Weight::from_parts(598_729, 0).saturating_mul(m.into())) + // Minimum execution time: 56_000_000 picoseconds. + Weight::from_parts(40_436_003, 5495) + // Standard Error: 16_446 + .saturating_add(Weight::from_parts(578_484, 0).saturating_mul(n.into())) + // Standard Error: 15_636 + .saturating_add(Weight::from_parts(644_742, 0).saturating_mul(m.into())) .saturating_add(T::DbWeight::get().reads(11_u64)) .saturating_add(T::DbWeight::get().writes(7_u64)) } - /// Storage: ParachainStaking CandidatePool (r:39 w:1) - /// Proof: ParachainStaking CandidatePool (max_values: None, max_size: Some(2030), added: 4505, mode: MaxEncodedLen) - /// Storage: ParachainStaking TopCandidates (r:1 w:1) - /// Proof: ParachainStaking TopCandidates (max_values: Some(1), max_size: Some(1921), added: 2416, mode: MaxEncodedLen) - /// Storage: ParachainStaking Round (r:1 w:0) - /// Proof: ParachainStaking Round (max_values: Some(1), max_size: Some(12), added: 507, mode: MaxEncodedLen) - /// Storage: ParachainStaking MaxSelectedCandidates (r:1 w:0) - /// Proof: ParachainStaking MaxSelectedCandidates (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) - /// Storage: ParachainStaking TotalCollatorStake (r:1 w:1) - /// Proof: ParachainStaking TotalCollatorStake (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) + /// Storage: `ParachainStaking::CandidatePool` (r:39 w:1) + /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TopCandidates` (r:1 w:1) + /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::Round` (r:1 w:0) + /// Proof: `ParachainStaking::Round` (`max_values`: Some(1), `max_size`: Some(12), added: 507, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:0) + /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) + /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) /// The range of component `n` is `[9, 39]`. /// The range of component `m` is `[0, 40]`. - fn init_leave_candidates(n: u32, _m: u32, ) -> Weight { + fn init_leave_candidates(n: u32, m: u32, ) -> Weight { // Proof Size summary in bytes: // Measured: `0 + m * (1872 ±0) + n * (2082 ±0)` // Estimated: `3406 + n * (4505 ±0)` - // Minimum execution time: 66_000_000 picoseconds. - Weight::from_parts(67_000_000, 3406) - // Standard Error: 24_947 - .saturating_add(Weight::from_parts(2_817_902, 0).saturating_mul(n.into())) + // Minimum execution time: 59_000_000 picoseconds. + Weight::from_parts(60_000_000, 3406) + // Standard Error: 27_936 + .saturating_add(Weight::from_parts(2_608_487, 0).saturating_mul(n.into())) + // Standard Error: 28_145 + .saturating_add(Weight::from_parts(61_894, 0).saturating_mul(m.into())) .saturating_add(T::DbWeight::get().reads(4_u64)) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(n.into()))) .saturating_add(T::DbWeight::get().writes(3_u64)) .saturating_add(Weight::from_parts(0, 4505).saturating_mul(n.into())) } - /// Storage: ParachainStaking CandidatePool (r:2 w:1) - /// Proof: ParachainStaking CandidatePool (max_values: None, max_size: Some(2030), added: 4505, mode: MaxEncodedLen) - /// Storage: ParachainStaking TopCandidates (r:1 w:1) - /// Proof: ParachainStaking TopCandidates (max_values: Some(1), max_size: Some(1921), added: 2416, mode: MaxEncodedLen) - /// Storage: ParachainStaking MaxSelectedCandidates (r:1 w:0) - /// Proof: ParachainStaking MaxSelectedCandidates (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) - /// Storage: ParachainStaking TotalCollatorStake (r:1 w:1) - /// Proof: ParachainStaking TotalCollatorStake (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) + /// Storage: `ParachainStaking::CandidatePool` (r:2 w:1) + /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TopCandidates` (r:1 w:1) + /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:0) + /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) + /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) /// The range of component `n` is `[9, 39]`. /// The range of component `m` is `[0, 40]`. fn cancel_leave_candidates(n: u32, m: u32, ) -> Weight { // Proof Size summary in bytes: // Measured: `758 + m * (96 ±0) + n * (59 ±0)` // Estimated: `10000` - // Minimum execution time: 35_000_000 picoseconds. - Weight::from_parts(17_763_044, 10000) - // Standard Error: 12_598 - .saturating_add(Weight::from_parts(460_161, 0).saturating_mul(n.into())) - // Standard Error: 9_483 - .saturating_add(Weight::from_parts(419_062, 0).saturating_mul(m.into())) + // Minimum execution time: 28_000_000 picoseconds. + Weight::from_parts(25_829_009, 10000) + // Standard Error: 17_664 + .saturating_add(Weight::from_parts(71_281, 0).saturating_mul(n.into())) + // Standard Error: 13_297 + .saturating_add(Weight::from_parts(393_707, 0).saturating_mul(m.into())) .saturating_add(T::DbWeight::get().reads(5_u64)) .saturating_add(T::DbWeight::get().writes(3_u64)) } - /// Storage: ParachainStaking CandidatePool (r:1 w:1) - /// Proof: ParachainStaking CandidatePool (max_values: None, max_size: Some(2030), added: 4505, mode: MaxEncodedLen) - /// Storage: ParachainStaking Round (r:1 w:0) - /// Proof: ParachainStaking Round (max_values: Some(1), max_size: Some(12), added: 507, mode: MaxEncodedLen) - /// Storage: ParachainStaking Unstaking (r:41 w:41) - /// Proof: ParachainStaking Unstaking (max_values: None, max_size: Some(241), added: 2716, mode: MaxEncodedLen) - /// Storage: ParachainStaking DelegatorState (r:40 w:40) - /// Proof: ParachainStaking DelegatorState (max_values: None, max_size: Some(89), added: 2564, mode: MaxEncodedLen) - /// Storage: ParachainStaking RewardCount (r:41 w:41) - /// Proof: ParachainStaking RewardCount (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) - /// Storage: ParachainStaking Rewards (r:1 w:1) - /// Proof: ParachainStaking Rewards (max_values: None, max_size: Some(56), added: 2531, mode: MaxEncodedLen) - /// Storage: ParachainStaking TotalCollatorStake (r:1 w:0) - /// Proof: ParachainStaking TotalCollatorStake (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) - /// Storage: ParachainStaking InflationConfig (r:1 w:0) - /// Proof: ParachainStaking InflationConfig (max_values: Some(1), max_size: Some(96), added: 591, mode: MaxEncodedLen) - /// Storage: Session Validators (r:1 w:0) - /// Proof Skipped: Session Validators (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Session DisabledValidators (r:1 w:1) - /// Proof Skipped: Session DisabledValidators (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: System Digest (r:1 w:1) - /// Proof Skipped: System Digest (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: ParachainStaking CounterForCandidatePool (r:1 w:1) - /// Proof: ParachainStaking CounterForCandidatePool (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: `ParachainStaking::CandidatePool` (r:1 w:1) + /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::Round` (r:1 w:0) + /// Proof: `ParachainStaking::Round` (`max_values`: Some(1), `max_size`: Some(12), added: 507, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::Unstaking` (r:41 w:41) + /// Proof: `ParachainStaking::Unstaking` (`max_values`: None, `max_size`: Some(241), added: 2716, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::DelegatorState` (r:40 w:40) + /// Proof: `ParachainStaking::DelegatorState` (`max_values`: None, `max_size`: Some(89), added: 2564, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::RewardCount` (r:41 w:41) + /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::Rewards` (r:1 w:1) + /// Proof: `ParachainStaking::Rewards` (`max_values`: None, `max_size`: Some(56), added: 2531, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:0) + /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::InflationConfig` (r:1 w:0) + /// Proof: `ParachainStaking::InflationConfig` (`max_values`: Some(1), `max_size`: Some(96), added: 591, mode: `MaxEncodedLen`) + /// Storage: `Session::Validators` (r:1 w:0) + /// Proof: `Session::Validators` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) + /// Storage: `Session::DisabledValidators` (r:1 w:1) + /// Proof: `Session::DisabledValidators` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) + /// Storage: `System::Digest` (r:1 w:1) + /// Proof: `System::Digest` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) + /// Storage: `ParachainStaking::CounterForCandidatePool` (r:1 w:1) + /// Proof: `ParachainStaking::CounterForCandidatePool` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) /// The range of component `n` is `[9, 39]`. /// The range of component `m` is `[0, 40]`. fn execute_leave_candidates(n: u32, m: u32, ) -> Weight { // Proof Size summary in bytes: // Measured: `0 + m * (1257 ±0) + n * (655 ±0)` - // Estimated: `5495 + m * (2716 ±6) + n * (213 ±6)` - // Minimum execution time: 55_000_000 picoseconds. - Weight::from_parts(56_000_000, 5495) - // Standard Error: 42_885 - .saturating_add(Weight::from_parts(912_996, 0).saturating_mul(n.into())) - // Standard Error: 43_205 - .saturating_add(Weight::from_parts(18_615_890, 0).saturating_mul(m.into())) + // Estimated: `5495 + m * (2716 ±0) + n * (213 ±6)` + // Minimum execution time: 45_000_000 picoseconds. + Weight::from_parts(46_000_000, 5495) + // Standard Error: 43_949 + .saturating_add(Weight::from_parts(904_864, 0).saturating_mul(n.into())) + // Standard Error: 44_277 + .saturating_add(Weight::from_parts(16_154_071, 0).saturating_mul(m.into())) .saturating_add(T::DbWeight::get().reads(11_u64)) .saturating_add(T::DbWeight::get().reads((3_u64).saturating_mul(m.into()))) .saturating_add(T::DbWeight::get().writes(7_u64)) @@ -319,30 +348,30 @@ impl parachain_staking::WeightInfo for SubstrateWeight< .saturating_add(Weight::from_parts(0, 2716).saturating_mul(m.into())) .saturating_add(Weight::from_parts(0, 213).saturating_mul(n.into())) } - /// Storage: ParachainStaking CandidatePool (r:1 w:1) - /// Proof: ParachainStaking CandidatePool (max_values: None, max_size: Some(2030), added: 4505, mode: MaxEncodedLen) - /// Storage: ParachainStaking MaxCollatorCandidateStake (r:1 w:0) - /// Proof: ParachainStaking MaxCollatorCandidateStake (max_values: Some(1), max_size: Some(16), added: 511, mode: MaxEncodedLen) - /// Storage: System Account (r:1 w:1) - /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) - /// Storage: ParachainStaking Unstaking (r:1 w:1) - /// Proof: ParachainStaking Unstaking (max_values: None, max_size: Some(241), added: 2716, mode: MaxEncodedLen) - /// Storage: Balances Locks (r:1 w:1) - /// Proof: Balances Locks (max_values: None, max_size: Some(1299), added: 3774, mode: MaxEncodedLen) - /// Storage: Balances Freezes (r:1 w:0) - /// Proof: Balances Freezes (max_values: None, max_size: Some(49), added: 2524, mode: MaxEncodedLen) - /// Storage: ParachainStaking TopCandidates (r:1 w:1) - /// Proof: ParachainStaking TopCandidates (max_values: Some(1), max_size: Some(1921), added: 2416, mode: MaxEncodedLen) - /// Storage: ParachainStaking MaxSelectedCandidates (r:1 w:0) - /// Proof: ParachainStaking MaxSelectedCandidates (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) - /// Storage: ParachainStaking TotalCollatorStake (r:1 w:1) - /// Proof: ParachainStaking TotalCollatorStake (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) - /// Storage: ParachainStaking RewardCount (r:41 w:41) - /// Proof: ParachainStaking RewardCount (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) - /// Storage: ParachainStaking Rewards (r:1 w:1) - /// Proof: ParachainStaking Rewards (max_values: None, max_size: Some(56), added: 2531, mode: MaxEncodedLen) - /// Storage: ParachainStaking InflationConfig (r:1 w:0) - /// Proof: ParachainStaking InflationConfig (max_values: Some(1), max_size: Some(96), added: 591, mode: MaxEncodedLen) + /// Storage: `ParachainStaking::CandidatePool` (r:1 w:1) + /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::MaxCollatorCandidateStake` (r:1 w:0) + /// Proof: `ParachainStaking::MaxCollatorCandidateStake` (`max_values`: Some(1), `max_size`: Some(16), added: 511, mode: `MaxEncodedLen`) + /// Storage: `System::Account` (r:1 w:1) + /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::Unstaking` (r:1 w:1) + /// Proof: `ParachainStaking::Unstaking` (`max_values`: None, `max_size`: Some(241), added: 2716, mode: `MaxEncodedLen`) + /// Storage: `Balances::Locks` (r:1 w:1) + /// Proof: `Balances::Locks` (`max_values`: None, `max_size`: Some(1299), added: 3774, mode: `MaxEncodedLen`) + /// Storage: `Balances::Freezes` (r:1 w:0) + /// Proof: `Balances::Freezes` (`max_values`: None, `max_size`: Some(49), added: 2524, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TopCandidates` (r:1 w:1) + /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:0) + /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) + /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::RewardCount` (r:41 w:41) + /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::Rewards` (r:1 w:1) + /// Proof: `ParachainStaking::Rewards` (`max_values`: None, `max_size`: Some(56), added: 2531, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::InflationConfig` (r:1 w:0) + /// Proof: `ParachainStaking::InflationConfig` (`max_values`: Some(1), `max_size`: Some(96), added: 591, mode: `MaxEncodedLen`) /// The range of component `n` is `[1, 39]`. /// The range of component `m` is `[0, 40]`. /// The range of component `u` is `[0, 9]`. @@ -350,111 +379,111 @@ impl parachain_staking::WeightInfo for SubstrateWeight< // Proof Size summary in bytes: // Measured: `0 + m * (455 ±0) + n * (292 ±0) + u * (20 ±0)` // Estimated: `5495 + m * (2519 ±0)` - // Minimum execution time: 78_000_000 picoseconds. - Weight::from_parts(79_000_000, 5495) - // Standard Error: 22_379 - .saturating_add(Weight::from_parts(1_080_738, 0).saturating_mul(n.into())) - // Standard Error: 21_608 - .saturating_add(Weight::from_parts(7_477_868, 0).saturating_mul(m.into())) + // Minimum execution time: 62_000_000 picoseconds. + Weight::from_parts(16_178_203, 5495) + // Standard Error: 26_046 + .saturating_add(Weight::from_parts(1_454_280, 0).saturating_mul(n.into())) + // Standard Error: 24_764 + .saturating_add(Weight::from_parts(6_893_201, 0).saturating_mul(m.into())) .saturating_add(T::DbWeight::get().reads(12_u64)) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(m.into()))) .saturating_add(T::DbWeight::get().writes(8_u64)) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(m.into()))) .saturating_add(Weight::from_parts(0, 2519).saturating_mul(m.into())) } - /// Storage: ParachainStaking CandidatePool (r:1 w:1) - /// Proof: ParachainStaking CandidatePool (max_values: None, max_size: Some(2030), added: 4505, mode: MaxEncodedLen) - /// Storage: ParachainStaking Unstaking (r:1 w:1) - /// Proof: ParachainStaking Unstaking (max_values: None, max_size: Some(241), added: 2716, mode: MaxEncodedLen) - /// Storage: ParachainStaking TopCandidates (r:1 w:1) - /// Proof: ParachainStaking TopCandidates (max_values: Some(1), max_size: Some(1921), added: 2416, mode: MaxEncodedLen) - /// Storage: ParachainStaking MaxSelectedCandidates (r:1 w:0) - /// Proof: ParachainStaking MaxSelectedCandidates (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) - /// Storage: ParachainStaking TotalCollatorStake (r:1 w:1) - /// Proof: ParachainStaking TotalCollatorStake (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) - /// Storage: ParachainStaking RewardCount (r:41 w:41) - /// Proof: ParachainStaking RewardCount (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) - /// Storage: ParachainStaking Rewards (r:1 w:1) - /// Proof: ParachainStaking Rewards (max_values: None, max_size: Some(56), added: 2531, mode: MaxEncodedLen) - /// Storage: ParachainStaking InflationConfig (r:1 w:0) - /// Proof: ParachainStaking InflationConfig (max_values: Some(1), max_size: Some(96), added: 591, mode: MaxEncodedLen) + /// Storage: `ParachainStaking::CandidatePool` (r:1 w:1) + /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::Unstaking` (r:1 w:1) + /// Proof: `ParachainStaking::Unstaking` (`max_values`: None, `max_size`: Some(241), added: 2716, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TopCandidates` (r:1 w:1) + /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:0) + /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) + /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::RewardCount` (r:41 w:41) + /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::Rewards` (r:1 w:1) + /// Proof: `ParachainStaking::Rewards` (`max_values`: None, `max_size`: Some(56), added: 2531, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::InflationConfig` (r:1 w:0) + /// Proof: `ParachainStaking::InflationConfig` (`max_values`: Some(1), `max_size`: Some(96), added: 591, mode: `MaxEncodedLen`) /// The range of component `n` is `[1, 39]`. /// The range of component `m` is `[0, 40]`. fn candidate_stake_less(n: u32, m: u32, ) -> Weight { // Proof Size summary in bytes: // Measured: `0 + m * (442 ±0) + n * (276 ±0)` // Estimated: `5495 + m * (2519 ±0)` - // Minimum execution time: 49_000_000 picoseconds. - Weight::from_parts(51_000_000, 5495) - // Standard Error: 21_036 - .saturating_add(Weight::from_parts(521_323, 0).saturating_mul(n.into())) - // Standard Error: 20_572 - .saturating_add(Weight::from_parts(6_885_083, 0).saturating_mul(m.into())) + // Minimum execution time: 40_000_000 picoseconds. + Weight::from_parts(41_000_000, 5495) + // Standard Error: 22_900 + .saturating_add(Weight::from_parts(607_538, 0).saturating_mul(n.into())) + // Standard Error: 22_395 + .saturating_add(Weight::from_parts(5_807_168, 0).saturating_mul(m.into())) .saturating_add(T::DbWeight::get().reads(8_u64)) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(m.into()))) .saturating_add(T::DbWeight::get().writes(6_u64)) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(m.into()))) .saturating_add(Weight::from_parts(0, 2519).saturating_mul(m.into())) } - /// Storage: System Account (r:1 w:1) - /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) - /// Storage: ParachainStaking DelegatorState (r:1 w:1) - /// Proof: ParachainStaking DelegatorState (max_values: None, max_size: Some(89), added: 2564, mode: MaxEncodedLen) - /// Storage: ParachainStaking CandidatePool (r:2 w:1) - /// Proof: ParachainStaking CandidatePool (max_values: None, max_size: Some(2030), added: 4505, mode: MaxEncodedLen) - /// Storage: ParachainStaking Unstaking (r:1 w:1) - /// Proof: ParachainStaking Unstaking (max_values: None, max_size: Some(241), added: 2716, mode: MaxEncodedLen) - /// Storage: ParachainStaking LastDelegation (r:1 w:1) - /// Proof: ParachainStaking LastDelegation (max_values: None, max_size: Some(48), added: 2523, mode: MaxEncodedLen) - /// Storage: ParachainStaking Round (r:1 w:0) - /// Proof: ParachainStaking Round (max_values: Some(1), max_size: Some(12), added: 507, mode: MaxEncodedLen) - /// Storage: Balances Locks (r:1 w:1) - /// Proof: Balances Locks (max_values: None, max_size: Some(1299), added: 3774, mode: MaxEncodedLen) - /// Storage: Balances Freezes (r:1 w:0) - /// Proof: Balances Freezes (max_values: None, max_size: Some(49), added: 2524, mode: MaxEncodedLen) - /// Storage: ParachainStaking TopCandidates (r:1 w:1) - /// Proof: ParachainStaking TopCandidates (max_values: Some(1), max_size: Some(1921), added: 2416, mode: MaxEncodedLen) - /// Storage: ParachainStaking MaxSelectedCandidates (r:1 w:0) - /// Proof: ParachainStaking MaxSelectedCandidates (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) - /// Storage: ParachainStaking TotalCollatorStake (r:1 w:1) - /// Proof: ParachainStaking TotalCollatorStake (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) - /// Storage: ParachainStaking RewardCount (r:1 w:1) - /// Proof: ParachainStaking RewardCount (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) + /// Storage: `System::Account` (r:1 w:1) + /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::DelegatorState` (r:1 w:1) + /// Proof: `ParachainStaking::DelegatorState` (`max_values`: None, `max_size`: Some(89), added: 2564, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::CandidatePool` (r:2 w:1) + /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::Unstaking` (r:1 w:1) + /// Proof: `ParachainStaking::Unstaking` (`max_values`: None, `max_size`: Some(241), added: 2716, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::LastDelegation` (r:1 w:1) + /// Proof: `ParachainStaking::LastDelegation` (`max_values`: None, `max_size`: Some(48), added: 2523, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::Round` (r:1 w:0) + /// Proof: `ParachainStaking::Round` (`max_values`: Some(1), `max_size`: Some(12), added: 507, mode: `MaxEncodedLen`) + /// Storage: `Balances::Locks` (r:1 w:1) + /// Proof: `Balances::Locks` (`max_values`: None, `max_size`: Some(1299), added: 3774, mode: `MaxEncodedLen`) + /// Storage: `Balances::Freezes` (r:1 w:0) + /// Proof: `Balances::Freezes` (`max_values`: None, `max_size`: Some(49), added: 2524, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TopCandidates` (r:1 w:1) + /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:0) + /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) + /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::RewardCount` (r:1 w:1) + /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) /// The range of component `n` is `[1, 40]`. /// The range of component `m` is `[1, 39]`. fn join_delegators(n: u32, m: u32, ) -> Weight { // Proof Size summary in bytes: // Measured: `3555 + m * (113 ±0) + n * (94 ±0)` // Estimated: `10000` - // Minimum execution time: 88_000_000 picoseconds. - Weight::from_parts(61_230_042, 10000) - // Standard Error: 15_096 - .saturating_add(Weight::from_parts(734_668, 0).saturating_mul(n.into())) - // Standard Error: 15_502 - .saturating_add(Weight::from_parts(720_729, 0).saturating_mul(m.into())) + // Minimum execution time: 71_000_000 picoseconds. + Weight::from_parts(42_188_416, 10000) + // Standard Error: 19_323 + .saturating_add(Weight::from_parts(837_613, 0).saturating_mul(n.into())) + // Standard Error: 19_843 + .saturating_add(Weight::from_parts(739_876, 0).saturating_mul(m.into())) .saturating_add(T::DbWeight::get().reads(13_u64)) .saturating_add(T::DbWeight::get().writes(9_u64)) } - /// Storage: ParachainStaking DelegatorState (r:1 w:1) - /// Proof: ParachainStaking DelegatorState (max_values: None, max_size: Some(89), added: 2564, mode: MaxEncodedLen) - /// Storage: ParachainStaking CandidatePool (r:1 w:1) - /// Proof: ParachainStaking CandidatePool (max_values: None, max_size: Some(2030), added: 4505, mode: MaxEncodedLen) - /// Storage: System Account (r:1 w:1) - /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) - /// Storage: ParachainStaking Unstaking (r:1 w:1) - /// Proof: ParachainStaking Unstaking (max_values: None, max_size: Some(241), added: 2716, mode: MaxEncodedLen) - /// Storage: Balances Locks (r:1 w:1) - /// Proof: Balances Locks (max_values: None, max_size: Some(1299), added: 3774, mode: MaxEncodedLen) - /// Storage: Balances Freezes (r:1 w:0) - /// Proof: Balances Freezes (max_values: None, max_size: Some(49), added: 2524, mode: MaxEncodedLen) - /// Storage: ParachainStaking TopCandidates (r:1 w:1) - /// Proof: ParachainStaking TopCandidates (max_values: Some(1), max_size: Some(1921), added: 2416, mode: MaxEncodedLen) - /// Storage: ParachainStaking MaxSelectedCandidates (r:1 w:0) - /// Proof: ParachainStaking MaxSelectedCandidates (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) - /// Storage: ParachainStaking TotalCollatorStake (r:1 w:1) - /// Proof: ParachainStaking TotalCollatorStake (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) - /// Storage: ParachainStaking RewardCount (r:2 w:0) - /// Proof: ParachainStaking RewardCount (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) + /// Storage: `ParachainStaking::DelegatorState` (r:1 w:1) + /// Proof: `ParachainStaking::DelegatorState` (`max_values`: None, `max_size`: Some(89), added: 2564, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::CandidatePool` (r:1 w:1) + /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) + /// Storage: `System::Account` (r:1 w:1) + /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::Unstaking` (r:1 w:1) + /// Proof: `ParachainStaking::Unstaking` (`max_values`: None, `max_size`: Some(241), added: 2716, mode: `MaxEncodedLen`) + /// Storage: `Balances::Locks` (r:1 w:1) + /// Proof: `Balances::Locks` (`max_values`: None, `max_size`: Some(1299), added: 3774, mode: `MaxEncodedLen`) + /// Storage: `Balances::Freezes` (r:1 w:0) + /// Proof: `Balances::Freezes` (`max_values`: None, `max_size`: Some(49), added: 2524, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TopCandidates` (r:1 w:1) + /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:0) + /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) + /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::RewardCount` (r:2 w:0) + /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) /// The range of component `n` is `[1, 40]`. /// The range of component `m` is `[1, 39]`. /// The range of component `u` is `[1, 9]`. @@ -462,186 +491,186 @@ impl parachain_staking::WeightInfo for SubstrateWeight< // Proof Size summary in bytes: // Measured: `3904 + m * (93 ±0) + n * (90 ±0) + u * (20 ±0)` // Estimated: `6028` - // Minimum execution time: 76_000_000 picoseconds. - Weight::from_parts(60_272_765, 6028) - // Standard Error: 16_056 - .saturating_add(Weight::from_parts(661_873, 0).saturating_mul(n.into())) - // Standard Error: 16_487 - .saturating_add(Weight::from_parts(741_269, 0).saturating_mul(m.into())) + // Minimum execution time: 63_000_000 picoseconds. + Weight::from_parts(36_308_645, 6028) + // Standard Error: 25_597 + .saturating_add(Weight::from_parts(819_777, 0).saturating_mul(n.into())) + // Standard Error: 26_284 + .saturating_add(Weight::from_parts(902_701, 0).saturating_mul(m.into())) .saturating_add(T::DbWeight::get().reads(11_u64)) .saturating_add(T::DbWeight::get().writes(7_u64)) } - /// Storage: ParachainStaking DelegatorState (r:1 w:1) - /// Proof: ParachainStaking DelegatorState (max_values: None, max_size: Some(89), added: 2564, mode: MaxEncodedLen) - /// Storage: ParachainStaking CandidatePool (r:1 w:1) - /// Proof: ParachainStaking CandidatePool (max_values: None, max_size: Some(2030), added: 4505, mode: MaxEncodedLen) - /// Storage: ParachainStaking Unstaking (r:1 w:1) - /// Proof: ParachainStaking Unstaking (max_values: None, max_size: Some(241), added: 2716, mode: MaxEncodedLen) - /// Storage: ParachainStaking TopCandidates (r:1 w:1) - /// Proof: ParachainStaking TopCandidates (max_values: Some(1), max_size: Some(1921), added: 2416, mode: MaxEncodedLen) - /// Storage: ParachainStaking MaxSelectedCandidates (r:1 w:0) - /// Proof: ParachainStaking MaxSelectedCandidates (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) - /// Storage: ParachainStaking TotalCollatorStake (r:1 w:1) - /// Proof: ParachainStaking TotalCollatorStake (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) - /// Storage: ParachainStaking RewardCount (r:2 w:0) - /// Proof: ParachainStaking RewardCount (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) + /// Storage: `ParachainStaking::DelegatorState` (r:1 w:1) + /// Proof: `ParachainStaking::DelegatorState` (`max_values`: None, `max_size`: Some(89), added: 2564, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::CandidatePool` (r:1 w:1) + /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::Unstaking` (r:1 w:1) + /// Proof: `ParachainStaking::Unstaking` (`max_values`: None, `max_size`: Some(241), added: 2716, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TopCandidates` (r:1 w:1) + /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:0) + /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) + /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::RewardCount` (r:2 w:0) + /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) /// The range of component `n` is `[1, 40]`. /// The range of component `m` is `[1, 39]`. fn delegator_stake_less(n: u32, m: u32, ) -> Weight { // Proof Size summary in bytes: // Measured: `3155 + m * (74 ±0) + n * (74 ±0)` // Estimated: `6028` - // Minimum execution time: 51_000_000 picoseconds. - Weight::from_parts(24_450_456, 6028) - // Standard Error: 13_176 - .saturating_add(Weight::from_parts(649_197, 0).saturating_mul(n.into())) - // Standard Error: 13_530 - .saturating_add(Weight::from_parts(772_252, 0).saturating_mul(m.into())) + // Minimum execution time: 43_000_000 picoseconds. + Weight::from_parts(14_073_064, 6028) + // Standard Error: 22_457 + .saturating_add(Weight::from_parts(769_795, 0).saturating_mul(n.into())) + // Standard Error: 23_061 + .saturating_add(Weight::from_parts(803_601, 0).saturating_mul(m.into())) .saturating_add(T::DbWeight::get().reads(8_u64)) .saturating_add(T::DbWeight::get().writes(5_u64)) } - /// Storage: ParachainStaking DelegatorState (r:1 w:1) - /// Proof: ParachainStaking DelegatorState (max_values: None, max_size: Some(89), added: 2564, mode: MaxEncodedLen) - /// Storage: ParachainStaking CandidatePool (r:1 w:1) - /// Proof: ParachainStaking CandidatePool (max_values: None, max_size: Some(2030), added: 4505, mode: MaxEncodedLen) - /// Storage: ParachainStaking RewardCount (r:2 w:0) - /// Proof: ParachainStaking RewardCount (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) - /// Storage: ParachainStaking Unstaking (r:1 w:1) - /// Proof: ParachainStaking Unstaking (max_values: None, max_size: Some(241), added: 2716, mode: MaxEncodedLen) - /// Storage: ParachainStaking TopCandidates (r:1 w:1) - /// Proof: ParachainStaking TopCandidates (max_values: Some(1), max_size: Some(1921), added: 2416, mode: MaxEncodedLen) - /// Storage: ParachainStaking MaxSelectedCandidates (r:1 w:0) - /// Proof: ParachainStaking MaxSelectedCandidates (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) - /// Storage: ParachainStaking TotalCollatorStake (r:1 w:1) - /// Proof: ParachainStaking TotalCollatorStake (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) + /// Storage: `ParachainStaking::DelegatorState` (r:1 w:1) + /// Proof: `ParachainStaking::DelegatorState` (`max_values`: None, `max_size`: Some(89), added: 2564, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::CandidatePool` (r:1 w:1) + /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::RewardCount` (r:2 w:0) + /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::Unstaking` (r:1 w:1) + /// Proof: `ParachainStaking::Unstaking` (`max_values`: None, `max_size`: Some(241), added: 2716, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TopCandidates` (r:1 w:1) + /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:0) + /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) + /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) /// The range of component `n` is `[1, 40]`. /// The range of component `m` is `[1, 39]`. fn leave_delegators(n: u32, m: u32, ) -> Weight { // Proof Size summary in bytes: // Measured: `3155 + m * (74 ±0) + n * (74 ±0)` // Estimated: `6028` - // Minimum execution time: 56_000_000 picoseconds. - Weight::from_parts(30_920_715, 6028) - // Standard Error: 15_455 - .saturating_add(Weight::from_parts(670_189, 0).saturating_mul(n.into())) - // Standard Error: 15_870 - .saturating_add(Weight::from_parts(634_001, 0).saturating_mul(m.into())) + // Minimum execution time: 46_000_000 picoseconds. + Weight::from_parts(23_362_096, 6028) + // Standard Error: 19_512 + .saturating_add(Weight::from_parts(765_668, 0).saturating_mul(n.into())) + // Standard Error: 20_036 + .saturating_add(Weight::from_parts(601_373, 0).saturating_mul(m.into())) .saturating_add(T::DbWeight::get().reads(8_u64)) .saturating_add(T::DbWeight::get().writes(5_u64)) } - /// Storage: ParachainStaking Unstaking (r:1 w:1) - /// Proof: ParachainStaking Unstaking (max_values: None, max_size: Some(241), added: 2716, mode: MaxEncodedLen) - /// Storage: Balances Locks (r:1 w:1) - /// Proof: Balances Locks (max_values: None, max_size: Some(1299), added: 3774, mode: MaxEncodedLen) - /// Storage: Balances Freezes (r:1 w:0) - /// Proof: Balances Freezes (max_values: None, max_size: Some(49), added: 2524, mode: MaxEncodedLen) - /// Storage: System Account (r:1 w:1) - /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) + /// Storage: `ParachainStaking::Unstaking` (r:1 w:1) + /// Proof: `ParachainStaking::Unstaking` (`max_values`: None, `max_size`: Some(241), added: 2716, mode: `MaxEncodedLen`) + /// Storage: `Balances::Locks` (r:1 w:1) + /// Proof: `Balances::Locks` (`max_values`: None, `max_size`: Some(1299), added: 3774, mode: `MaxEncodedLen`) + /// Storage: `Balances::Freezes` (r:1 w:0) + /// Proof: `Balances::Freezes` (`max_values`: None, `max_size`: Some(49), added: 2524, mode: `MaxEncodedLen`) + /// Storage: `System::Account` (r:1 w:1) + /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) /// The range of component `u` is `[1, 9]`. fn unlock_unstaked(u: u32, ) -> Weight { // Proof Size summary in bytes: // Measured: `1076 + u * (20 ±0)` // Estimated: `4764` - // Minimum execution time: 36_000_000 picoseconds. - Weight::from_parts(38_811_600, 4764) - // Standard Error: 17_278 - .saturating_add(Weight::from_parts(132_831, 0).saturating_mul(u.into())) + // Minimum execution time: 28_000_000 picoseconds. + Weight::from_parts(29_651_560, 4764) + // Standard Error: 8_901 + .saturating_add(Weight::from_parts(141_690, 0).saturating_mul(u.into())) .saturating_add(T::DbWeight::get().reads(4_u64)) .saturating_add(T::DbWeight::get().writes(3_u64)) } - /// Storage: ParachainStaking MaxCollatorCandidateStake (r:0 w:1) - /// Proof: ParachainStaking MaxCollatorCandidateStake (max_values: Some(1), max_size: Some(16), added: 511, mode: MaxEncodedLen) + /// Storage: `ParachainStaking::MaxCollatorCandidateStake` (r:0 w:1) + /// Proof: `ParachainStaking::MaxCollatorCandidateStake` (`max_values`: Some(1), `max_size`: Some(16), added: 511, mode: `MaxEncodedLen`) fn set_max_candidate_stake() -> Weight { // Proof Size summary in bytes: // Measured: `0` // Estimated: `0` - // Minimum execution time: 8_000_000 picoseconds. - Weight::from_parts(14_000_000, 0) + // Minimum execution time: 5_000_000 picoseconds. + Weight::from_parts(6_000_000, 0) .saturating_add(T::DbWeight::get().writes(1_u64)) } - /// Storage: ParachainStaking DelegatorState (r:1 w:0) - /// Proof: ParachainStaking DelegatorState (max_values: None, max_size: Some(89), added: 2564, mode: MaxEncodedLen) - /// Storage: ParachainStaking RewardCount (r:2 w:1) - /// Proof: ParachainStaking RewardCount (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) - /// Storage: ParachainStaking Rewards (r:1 w:1) - /// Proof: ParachainStaking Rewards (max_values: None, max_size: Some(56), added: 2531, mode: MaxEncodedLen) - /// Storage: ParachainStaking TotalCollatorStake (r:1 w:0) - /// Proof: ParachainStaking TotalCollatorStake (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) - /// Storage: ParachainStaking InflationConfig (r:1 w:0) - /// Proof: ParachainStaking InflationConfig (max_values: Some(1), max_size: Some(96), added: 591, mode: MaxEncodedLen) + /// Storage: `ParachainStaking::DelegatorState` (r:1 w:0) + /// Proof: `ParachainStaking::DelegatorState` (`max_values`: None, `max_size`: Some(89), added: 2564, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::RewardCount` (r:2 w:1) + /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::Rewards` (r:1 w:1) + /// Proof: `ParachainStaking::Rewards` (`max_values`: None, `max_size`: Some(56), added: 2531, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:0) + /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::InflationConfig` (r:1 w:0) + /// Proof: `ParachainStaking::InflationConfig` (`max_values`: Some(1), `max_size`: Some(96), added: 591, mode: `MaxEncodedLen`) fn increment_delegator_rewards() -> Weight { // Proof Size summary in bytes: // Measured: `754` // Estimated: `6028` - // Minimum execution time: 28_000_000 picoseconds. - Weight::from_parts(32_000_000, 6028) + // Minimum execution time: 21_000_000 picoseconds. + Weight::from_parts(21_000_000, 6028) .saturating_add(T::DbWeight::get().reads(6_u64)) .saturating_add(T::DbWeight::get().writes(2_u64)) } - /// Storage: ParachainStaking CandidatePool (r:1 w:0) - /// Proof: ParachainStaking CandidatePool (max_values: None, max_size: Some(2030), added: 4505, mode: MaxEncodedLen) - /// Storage: ParachainStaking RewardCount (r:41 w:41) - /// Proof: ParachainStaking RewardCount (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) - /// Storage: ParachainStaking Rewards (r:41 w:41) - /// Proof: ParachainStaking Rewards (max_values: None, max_size: Some(56), added: 2531, mode: MaxEncodedLen) - /// Storage: ParachainStaking TotalCollatorStake (r:1 w:0) - /// Proof: ParachainStaking TotalCollatorStake (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) - /// Storage: ParachainStaking InflationConfig (r:1 w:0) - /// Proof: ParachainStaking InflationConfig (max_values: Some(1), max_size: Some(96), added: 591, mode: MaxEncodedLen) + /// Storage: `ParachainStaking::CandidatePool` (r:1 w:0) + /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::RewardCount` (r:41 w:41) + /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::Rewards` (r:41 w:41) + /// Proof: `ParachainStaking::Rewards` (`max_values`: None, `max_size`: Some(56), added: 2531, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:0) + /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::InflationConfig` (r:1 w:0) + /// Proof: `ParachainStaking::InflationConfig` (`max_values`: Some(1), `max_size`: Some(96), added: 591, mode: `MaxEncodedLen`) /// The range of component `m` is `[1, 40]`. fn increment_collator_rewards(m: u32, ) -> Weight { // Proof Size summary in bytes: // Measured: `855 + m * (98 ±0)` // Estimated: `5495 + m * (2531 ±0)` - // Minimum execution time: 37_000_000 picoseconds. - Weight::from_parts(28_721_195, 5495) - // Standard Error: 18_671 - .saturating_add(Weight::from_parts(11_788_351, 0).saturating_mul(m.into())) + // Minimum execution time: 29_000_000 picoseconds. + Weight::from_parts(17_699_443, 5495) + // Standard Error: 16_885 + .saturating_add(Weight::from_parts(9_588_938, 0).saturating_mul(m.into())) .saturating_add(T::DbWeight::get().reads(5_u64)) .saturating_add(T::DbWeight::get().reads((2_u64).saturating_mul(m.into()))) .saturating_add(T::DbWeight::get().writes(2_u64)) .saturating_add(T::DbWeight::get().writes((2_u64).saturating_mul(m.into()))) .saturating_add(Weight::from_parts(0, 2531).saturating_mul(m.into())) } - /// Storage: ParachainStaking Rewards (r:1 w:1) - /// Proof: ParachainStaking Rewards (max_values: None, max_size: Some(56), added: 2531, mode: MaxEncodedLen) - /// Storage: System Account (r:1 w:1) - /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) + /// Storage: `ParachainStaking::Rewards` (r:1 w:1) + /// Proof: `ParachainStaking::Rewards` (`max_values`: None, `max_size`: Some(56), added: 2531, mode: `MaxEncodedLen`) + /// Storage: `System::Account` (r:1 w:1) + /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) fn claim_rewards() -> Weight { // Proof Size summary in bytes: // Measured: `575` // Estimated: `3593` - // Minimum execution time: 30_000_000 picoseconds. - Weight::from_parts(31_000_000, 3593) + // Minimum execution time: 22_000_000 picoseconds. + Weight::from_parts(23_000_000, 3593) .saturating_add(T::DbWeight::get().reads(2_u64)) .saturating_add(T::DbWeight::get().writes(2_u64)) } - /// Storage: ParachainStaking LastRewardReduction (r:1 w:1) - /// Proof: ParachainStaking LastRewardReduction (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) - /// Storage: ParachainStaking InflationConfig (r:1 w:1) - /// Proof: ParachainStaking InflationConfig (max_values: Some(1), max_size: Some(96), added: 591, mode: MaxEncodedLen) - /// Storage: ParachainStaking CandidatePool (r:41 w:0) - /// Proof: ParachainStaking CandidatePool (max_values: None, max_size: Some(2030), added: 4505, mode: MaxEncodedLen) - /// Storage: ParachainStaking RewardCount (r:1640 w:1640) - /// Proof: ParachainStaking RewardCount (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) - /// Storage: ParachainStaking Rewards (r:40 w:40) - /// Proof: ParachainStaking Rewards (max_values: None, max_size: Some(56), added: 2531, mode: MaxEncodedLen) - /// Storage: ParachainStaking TotalCollatorStake (r:1 w:0) - /// Proof: ParachainStaking TotalCollatorStake (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) - /// Storage: ParachainStaking CounterForCandidatePool (r:1 w:0) - /// Proof: ParachainStaking CounterForCandidatePool (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: `ParachainStaking::LastRewardReduction` (r:1 w:1) + /// Proof: `ParachainStaking::LastRewardReduction` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::InflationConfig` (r:1 w:1) + /// Proof: `ParachainStaking::InflationConfig` (`max_values`: Some(1), `max_size`: Some(96), added: 591, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::CandidatePool` (r:41 w:0) + /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::RewardCount` (r:1640 w:1640) + /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::Rewards` (r:40 w:40) + /// Proof: `ParachainStaking::Rewards` (`max_values`: None, `max_size`: Some(56), added: 2531, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:0) + /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::CounterForCandidatePool` (r:1 w:0) + /// Proof: `ParachainStaking::CounterForCandidatePool` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) /// The range of component `n` is `[0, 40]`. /// The range of component `m` is `[0, 40]`. fn execute_scheduled_reward_change(n: u32, m: u32, ) -> Weight { // Proof Size summary in bytes: // Measured: `0 + m * (3891 ±0) + n * (3991 ±0)` - // Estimated: `101750 + m * (37911 ±1_054) + n * (33703 ±16)` - // Minimum execution time: 525_000_000 picoseconds. - Weight::from_parts(530_000_000, 101750) - // Standard Error: 2_947_301 - .saturating_add(Weight::from_parts(89_026_856, 0).saturating_mul(n.into())) - // Standard Error: 2_947_301 - .saturating_add(Weight::from_parts(90_345_662, 0).saturating_mul(m.into())) + // Estimated: `101750 + m * (37911 ±1_054) + n * (33703 ±9)` + // Minimum execution time: 420_000_000 picoseconds. + Weight::from_parts(431_000_000, 101750) + // Standard Error: 2_590_217 + .saturating_add(Weight::from_parts(78_634_433, 0).saturating_mul(n.into())) + // Standard Error: 2_590_217 + .saturating_add(Weight::from_parts(78_105_543, 0).saturating_mul(m.into())) .saturating_add(T::DbWeight::get().reads(125_u64)) .saturating_add(T::DbWeight::get().reads((14_u64).saturating_mul(n.into()))) .saturating_add(T::DbWeight::get().reads((14_u64).saturating_mul(m.into()))) @@ -651,4 +680,622 @@ impl parachain_staking::WeightInfo for SubstrateWeight< .saturating_add(Weight::from_parts(0, 37911).saturating_mul(m.into())) .saturating_add(Weight::from_parts(0, 33703).saturating_mul(n.into())) } +} + +// For backwards compatibility and tests +impl WeightInfo for () { + /// Storage: `ParachainStaking::Round` (r:1 w:0) + /// Proof: `ParachainStaking::Round` (`max_values`: Some(1), `max_size`: Some(12), added: 507, mode: `MaxEncodedLen`) + fn on_initialize_no_action() -> Weight { + // Proof Size summary in bytes: + // Measured: `427` + // Estimated: `1497` + // Minimum execution time: 3_000_000 picoseconds. + Weight::from_parts(4_000_000, 1497) + .saturating_add(RocksDbWeight::get().reads(1_u64)) + } + /// Storage: `ParachainStaking::Round` (r:1 w:1) + /// Proof: `ParachainStaking::Round` (`max_values`: Some(1), `max_size`: Some(12), added: 507, mode: `MaxEncodedLen`) + fn on_initialize_round_update() -> Weight { + // Proof Size summary in bytes: + // Measured: `427` + // Estimated: `1497` + // Minimum execution time: 7_000_000 picoseconds. + Weight::from_parts(8_000_000, 1497) + .saturating_add(RocksDbWeight::get().reads(1_u64)) + .saturating_add(RocksDbWeight::get().writes(1_u64)) + } + /// Storage: `ParachainStaking::Round` (r:1 w:0) + /// Proof: `ParachainStaking::Round` (`max_values`: Some(1), `max_size`: Some(12), added: 507, mode: `MaxEncodedLen`) + fn on_initialize_network_rewards() -> Weight { + // Proof Size summary in bytes: + // Measured: `427` + // Estimated: `1497` + // Minimum execution time: 3_000_000 picoseconds. + Weight::from_parts(4_000_000, 1497) + .saturating_add(RocksDbWeight::get().reads(1_u64)) + } + /// Storage: `ParachainStaking::ForceNewRound` (r:0 w:1) + /// Proof: `ParachainStaking::ForceNewRound` (`max_values`: Some(1), `max_size`: Some(1), added: 496, mode: `MaxEncodedLen`) + fn force_new_round() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 2_000_000 picoseconds. + Weight::from_parts(2_000_000, 0) + .saturating_add(RocksDbWeight::get().writes(1_u64)) + } + /// Storage: `ParachainStaking::CandidatePool` (r:41 w:0) + /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::RewardCount` (r:1640 w:1640) + /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::Rewards` (r:40 w:40) + /// Proof: `ParachainStaking::Rewards` (`max_values`: None, `max_size`: Some(56), added: 2531, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:0) + /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::InflationConfig` (r:1 w:1) + /// Proof: `ParachainStaking::InflationConfig` (`max_values`: Some(1), `max_size`: Some(96), added: 591, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::CounterForCandidatePool` (r:1 w:0) + /// Proof: `ParachainStaking::CounterForCandidatePool` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// The range of component `n` is `[0, 40]`. + /// The range of component `m` is `[0, 40]`. + fn set_inflation(n: u32, m: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `0 + m * (3891 ±0) + n * (4052 ±0)` + // Estimated: `101750 + m * (37911 ±1_054) + n * (33703 ±9)` + // Minimum execution time: 462_000_000 picoseconds. + Weight::from_parts(474_000_000, 101750) + // Standard Error: 2_594_253 + .saturating_add(Weight::from_parts(78_871_861, 0).saturating_mul(n.into())) + // Standard Error: 2_594_253 + .saturating_add(Weight::from_parts(73_821_932, 0).saturating_mul(m.into())) + .saturating_add(RocksDbWeight::get().reads(124_u64)) + .saturating_add(RocksDbWeight::get().reads((14_u64).saturating_mul(n.into()))) + .saturating_add(RocksDbWeight::get().reads((14_u64).saturating_mul(m.into()))) + .saturating_add(RocksDbWeight::get().writes(81_u64)) + .saturating_add(RocksDbWeight::get().writes((14_u64).saturating_mul(n.into()))) + .saturating_add(RocksDbWeight::get().writes((14_u64).saturating_mul(m.into()))) + .saturating_add(Weight::from_parts(0, 37911).saturating_mul(m.into())) + .saturating_add(Weight::from_parts(0, 33703).saturating_mul(n.into())) + } + /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:1) + /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TopCandidates` (r:1 w:0) + /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) + /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) + /// The range of component `n` is `[8, 40]`. + /// The range of component `m` is `[0, 40]`. + fn set_max_selected_candidates(n: u32, m: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `434 + n * (48 ±0)` + // Estimated: `3406` + // Minimum execution time: 15_000_000 picoseconds. + Weight::from_parts(4_148_612, 3406) + // Standard Error: 14_990 + .saturating_add(Weight::from_parts(341_567, 0).saturating_mul(n.into())) + // Standard Error: 12_042 + .saturating_add(Weight::from_parts(373_225, 0).saturating_mul(m.into())) + .saturating_add(RocksDbWeight::get().reads(3_u64)) + .saturating_add(RocksDbWeight::get().writes(2_u64)) + } + /// Storage: `ParachainStaking::Round` (r:1 w:1) + /// Proof: `ParachainStaking::Round` (`max_values`: Some(1), `max_size`: Some(12), added: 507, mode: `MaxEncodedLen`) + fn set_blocks_per_round() -> Weight { + // Proof Size summary in bytes: + // Measured: `427` + // Estimated: `1497` + // Minimum execution time: 10_000_000 picoseconds. + Weight::from_parts(10_000_000, 1497) + .saturating_add(RocksDbWeight::get().reads(1_u64)) + .saturating_add(RocksDbWeight::get().writes(1_u64)) + } + /// Storage: `ParachainStaking::CandidatePool` (r:40 w:1) + /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TopCandidates` (r:1 w:1) + /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::Unstaking` (r:41 w:41) + /// Proof: `ParachainStaking::Unstaking` (`max_values`: None, `max_size`: Some(241), added: 2716, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::DelegatorState` (r:40 w:40) + /// Proof: `ParachainStaking::DelegatorState` (`max_values`: None, `max_size`: Some(89), added: 2564, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::RewardCount` (r:41 w:41) + /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::Rewards` (r:1 w:1) + /// Proof: `ParachainStaking::Rewards` (`max_values`: None, `max_size`: Some(56), added: 2531, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) + /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::InflationConfig` (r:1 w:0) + /// Proof: `ParachainStaking::InflationConfig` (`max_values`: Some(1), `max_size`: Some(96), added: 591, mode: `MaxEncodedLen`) + /// Storage: `Session::Validators` (r:1 w:0) + /// Proof: `Session::Validators` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) + /// Storage: `Session::DisabledValidators` (r:1 w:1) + /// Proof: `Session::DisabledValidators` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) + /// Storage: `System::Digest` (r:1 w:1) + /// Proof: `System::Digest` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) + /// Storage: `ParachainStaking::CounterForCandidatePool` (r:1 w:1) + /// Proof: `ParachainStaking::CounterForCandidatePool` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:0) + /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// The range of component `n` is `[9, 40]`. + /// The range of component `m` is `[0, 40]`. + fn force_remove_candidate(n: u32, m: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `0 + m * (3143 ±0) + n * (2723 ±0)` + // Estimated: `9446 + m * (2716 ±0) + n * (4505 ±27)` + // Minimum execution time: 148_000_000 picoseconds. + Weight::from_parts(150_000_000, 9446) + // Standard Error: 75_916 + .saturating_add(Weight::from_parts(1_928_052, 0).saturating_mul(n.into())) + // Standard Error: 78_382 + .saturating_add(Weight::from_parts(15_539_211, 0).saturating_mul(m.into())) + .saturating_add(RocksDbWeight::get().reads(11_u64)) + .saturating_add(RocksDbWeight::get().reads((1_u64).saturating_mul(n.into()))) + .saturating_add(RocksDbWeight::get().reads((3_u64).saturating_mul(m.into()))) + .saturating_add(RocksDbWeight::get().writes(9_u64)) + .saturating_add(RocksDbWeight::get().writes((3_u64).saturating_mul(m.into()))) + .saturating_add(Weight::from_parts(0, 2716).saturating_mul(m.into())) + .saturating_add(Weight::from_parts(0, 4505).saturating_mul(n.into())) + } + /// Storage: `ParachainStaking::CandidatePool` (r:1 w:1) + /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::DelegatorState` (r:1 w:0) + /// Proof: `ParachainStaking::DelegatorState` (`max_values`: None, `max_size`: Some(89), added: 2564, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::MaxCollatorCandidateStake` (r:1 w:0) + /// Proof: `ParachainStaking::MaxCollatorCandidateStake` (`max_values`: Some(1), `max_size`: Some(16), added: 511, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::Unstaking` (r:1 w:1) + /// Proof: `ParachainStaking::Unstaking` (`max_values`: None, `max_size`: Some(241), added: 2716, mode: `MaxEncodedLen`) + /// Storage: `System::Account` (r:1 w:1) + /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) + /// Storage: `Balances::Locks` (r:1 w:1) + /// Proof: `Balances::Locks` (`max_values`: None, `max_size`: Some(1299), added: 3774, mode: `MaxEncodedLen`) + /// Storage: `Balances::Freezes` (r:1 w:0) + /// Proof: `Balances::Freezes` (`max_values`: None, `max_size`: Some(49), added: 2524, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TopCandidates` (r:1 w:1) + /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:0) + /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) + /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::CounterForCandidatePool` (r:1 w:1) + /// Proof: `ParachainStaking::CounterForCandidatePool` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// The range of component `n` is `[1, 39]`. + /// The range of component `m` is `[0, 40]`. + fn join_candidates(n: u32, m: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `2158 + m * (45 ±0) + n * (86 ±0)` + // Estimated: `5495` + // Minimum execution time: 56_000_000 picoseconds. + Weight::from_parts(40_436_003, 5495) + // Standard Error: 16_446 + .saturating_add(Weight::from_parts(578_484, 0).saturating_mul(n.into())) + // Standard Error: 15_636 + .saturating_add(Weight::from_parts(644_742, 0).saturating_mul(m.into())) + .saturating_add(RocksDbWeight::get().reads(11_u64)) + .saturating_add(RocksDbWeight::get().writes(7_u64)) + } + /// Storage: `ParachainStaking::CandidatePool` (r:39 w:1) + /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TopCandidates` (r:1 w:1) + /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::Round` (r:1 w:0) + /// Proof: `ParachainStaking::Round` (`max_values`: Some(1), `max_size`: Some(12), added: 507, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:0) + /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) + /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) + /// The range of component `n` is `[9, 39]`. + /// The range of component `m` is `[0, 40]`. + fn init_leave_candidates(n: u32, m: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `0 + m * (1872 ±0) + n * (2082 ±0)` + // Estimated: `3406 + n * (4505 ±0)` + // Minimum execution time: 59_000_000 picoseconds. + Weight::from_parts(60_000_000, 3406) + // Standard Error: 27_936 + .saturating_add(Weight::from_parts(2_608_487, 0).saturating_mul(n.into())) + // Standard Error: 28_145 + .saturating_add(Weight::from_parts(61_894, 0).saturating_mul(m.into())) + .saturating_add(RocksDbWeight::get().reads(4_u64)) + .saturating_add(RocksDbWeight::get().reads((1_u64).saturating_mul(n.into()))) + .saturating_add(RocksDbWeight::get().writes(3_u64)) + .saturating_add(Weight::from_parts(0, 4505).saturating_mul(n.into())) + } + /// Storage: `ParachainStaking::CandidatePool` (r:2 w:1) + /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TopCandidates` (r:1 w:1) + /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:0) + /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) + /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) + /// The range of component `n` is `[9, 39]`. + /// The range of component `m` is `[0, 40]`. + fn cancel_leave_candidates(n: u32, m: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `758 + m * (96 ±0) + n * (59 ±0)` + // Estimated: `10000` + // Minimum execution time: 28_000_000 picoseconds. + Weight::from_parts(25_829_009, 10000) + // Standard Error: 17_664 + .saturating_add(Weight::from_parts(71_281, 0).saturating_mul(n.into())) + // Standard Error: 13_297 + .saturating_add(Weight::from_parts(393_707, 0).saturating_mul(m.into())) + .saturating_add(RocksDbWeight::get().reads(5_u64)) + .saturating_add(RocksDbWeight::get().writes(3_u64)) + } + /// Storage: `ParachainStaking::CandidatePool` (r:1 w:1) + /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::Round` (r:1 w:0) + /// Proof: `ParachainStaking::Round` (`max_values`: Some(1), `max_size`: Some(12), added: 507, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::Unstaking` (r:41 w:41) + /// Proof: `ParachainStaking::Unstaking` (`max_values`: None, `max_size`: Some(241), added: 2716, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::DelegatorState` (r:40 w:40) + /// Proof: `ParachainStaking::DelegatorState` (`max_values`: None, `max_size`: Some(89), added: 2564, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::RewardCount` (r:41 w:41) + /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::Rewards` (r:1 w:1) + /// Proof: `ParachainStaking::Rewards` (`max_values`: None, `max_size`: Some(56), added: 2531, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:0) + /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::InflationConfig` (r:1 w:0) + /// Proof: `ParachainStaking::InflationConfig` (`max_values`: Some(1), `max_size`: Some(96), added: 591, mode: `MaxEncodedLen`) + /// Storage: `Session::Validators` (r:1 w:0) + /// Proof: `Session::Validators` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) + /// Storage: `Session::DisabledValidators` (r:1 w:1) + /// Proof: `Session::DisabledValidators` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) + /// Storage: `System::Digest` (r:1 w:1) + /// Proof: `System::Digest` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) + /// Storage: `ParachainStaking::CounterForCandidatePool` (r:1 w:1) + /// Proof: `ParachainStaking::CounterForCandidatePool` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// The range of component `n` is `[9, 39]`. + /// The range of component `m` is `[0, 40]`. + fn execute_leave_candidates(n: u32, m: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `0 + m * (1257 ±0) + n * (655 ±0)` + // Estimated: `5495 + m * (2716 ±0) + n * (213 ±6)` + // Minimum execution time: 45_000_000 picoseconds. + Weight::from_parts(46_000_000, 5495) + // Standard Error: 43_949 + .saturating_add(Weight::from_parts(904_864, 0).saturating_mul(n.into())) + // Standard Error: 44_277 + .saturating_add(Weight::from_parts(16_154_071, 0).saturating_mul(m.into())) + .saturating_add(RocksDbWeight::get().reads(11_u64)) + .saturating_add(RocksDbWeight::get().reads((3_u64).saturating_mul(m.into()))) + .saturating_add(RocksDbWeight::get().writes(7_u64)) + .saturating_add(RocksDbWeight::get().writes((3_u64).saturating_mul(m.into()))) + .saturating_add(Weight::from_parts(0, 2716).saturating_mul(m.into())) + .saturating_add(Weight::from_parts(0, 213).saturating_mul(n.into())) + } + /// Storage: `ParachainStaking::CandidatePool` (r:1 w:1) + /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::MaxCollatorCandidateStake` (r:1 w:0) + /// Proof: `ParachainStaking::MaxCollatorCandidateStake` (`max_values`: Some(1), `max_size`: Some(16), added: 511, mode: `MaxEncodedLen`) + /// Storage: `System::Account` (r:1 w:1) + /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::Unstaking` (r:1 w:1) + /// Proof: `ParachainStaking::Unstaking` (`max_values`: None, `max_size`: Some(241), added: 2716, mode: `MaxEncodedLen`) + /// Storage: `Balances::Locks` (r:1 w:1) + /// Proof: `Balances::Locks` (`max_values`: None, `max_size`: Some(1299), added: 3774, mode: `MaxEncodedLen`) + /// Storage: `Balances::Freezes` (r:1 w:0) + /// Proof: `Balances::Freezes` (`max_values`: None, `max_size`: Some(49), added: 2524, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TopCandidates` (r:1 w:1) + /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:0) + /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) + /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::RewardCount` (r:41 w:41) + /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::Rewards` (r:1 w:1) + /// Proof: `ParachainStaking::Rewards` (`max_values`: None, `max_size`: Some(56), added: 2531, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::InflationConfig` (r:1 w:0) + /// Proof: `ParachainStaking::InflationConfig` (`max_values`: Some(1), `max_size`: Some(96), added: 591, mode: `MaxEncodedLen`) + /// The range of component `n` is `[1, 39]`. + /// The range of component `m` is `[0, 40]`. + /// The range of component `u` is `[0, 9]`. + fn candidate_stake_more(n: u32, m: u32, _u: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `0 + m * (455 ±0) + n * (292 ±0) + u * (20 ±0)` + // Estimated: `5495 + m * (2519 ±0)` + // Minimum execution time: 62_000_000 picoseconds. + Weight::from_parts(16_178_203, 5495) + // Standard Error: 26_046 + .saturating_add(Weight::from_parts(1_454_280, 0).saturating_mul(n.into())) + // Standard Error: 24_764 + .saturating_add(Weight::from_parts(6_893_201, 0).saturating_mul(m.into())) + .saturating_add(RocksDbWeight::get().reads(12_u64)) + .saturating_add(RocksDbWeight::get().reads((1_u64).saturating_mul(m.into()))) + .saturating_add(RocksDbWeight::get().writes(8_u64)) + .saturating_add(RocksDbWeight::get().writes((1_u64).saturating_mul(m.into()))) + .saturating_add(Weight::from_parts(0, 2519).saturating_mul(m.into())) + } + /// Storage: `ParachainStaking::CandidatePool` (r:1 w:1) + /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::Unstaking` (r:1 w:1) + /// Proof: `ParachainStaking::Unstaking` (`max_values`: None, `max_size`: Some(241), added: 2716, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TopCandidates` (r:1 w:1) + /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:0) + /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) + /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::RewardCount` (r:41 w:41) + /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::Rewards` (r:1 w:1) + /// Proof: `ParachainStaking::Rewards` (`max_values`: None, `max_size`: Some(56), added: 2531, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::InflationConfig` (r:1 w:0) + /// Proof: `ParachainStaking::InflationConfig` (`max_values`: Some(1), `max_size`: Some(96), added: 591, mode: `MaxEncodedLen`) + /// The range of component `n` is `[1, 39]`. + /// The range of component `m` is `[0, 40]`. + fn candidate_stake_less(n: u32, m: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `0 + m * (442 ±0) + n * (276 ±0)` + // Estimated: `5495 + m * (2519 ±0)` + // Minimum execution time: 40_000_000 picoseconds. + Weight::from_parts(41_000_000, 5495) + // Standard Error: 22_900 + .saturating_add(Weight::from_parts(607_538, 0).saturating_mul(n.into())) + // Standard Error: 22_395 + .saturating_add(Weight::from_parts(5_807_168, 0).saturating_mul(m.into())) + .saturating_add(RocksDbWeight::get().reads(8_u64)) + .saturating_add(RocksDbWeight::get().reads((1_u64).saturating_mul(m.into()))) + .saturating_add(RocksDbWeight::get().writes(6_u64)) + .saturating_add(RocksDbWeight::get().writes((1_u64).saturating_mul(m.into()))) + .saturating_add(Weight::from_parts(0, 2519).saturating_mul(m.into())) + } + /// Storage: `System::Account` (r:1 w:1) + /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::DelegatorState` (r:1 w:1) + /// Proof: `ParachainStaking::DelegatorState` (`max_values`: None, `max_size`: Some(89), added: 2564, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::CandidatePool` (r:2 w:1) + /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::Unstaking` (r:1 w:1) + /// Proof: `ParachainStaking::Unstaking` (`max_values`: None, `max_size`: Some(241), added: 2716, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::LastDelegation` (r:1 w:1) + /// Proof: `ParachainStaking::LastDelegation` (`max_values`: None, `max_size`: Some(48), added: 2523, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::Round` (r:1 w:0) + /// Proof: `ParachainStaking::Round` (`max_values`: Some(1), `max_size`: Some(12), added: 507, mode: `MaxEncodedLen`) + /// Storage: `Balances::Locks` (r:1 w:1) + /// Proof: `Balances::Locks` (`max_values`: None, `max_size`: Some(1299), added: 3774, mode: `MaxEncodedLen`) + /// Storage: `Balances::Freezes` (r:1 w:0) + /// Proof: `Balances::Freezes` (`max_values`: None, `max_size`: Some(49), added: 2524, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TopCandidates` (r:1 w:1) + /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:0) + /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) + /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::RewardCount` (r:1 w:1) + /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) + /// The range of component `n` is `[1, 40]`. + /// The range of component `m` is `[1, 39]`. + fn join_delegators(n: u32, m: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `3555 + m * (113 ±0) + n * (94 ±0)` + // Estimated: `10000` + // Minimum execution time: 71_000_000 picoseconds. + Weight::from_parts(42_188_416, 10000) + // Standard Error: 19_323 + .saturating_add(Weight::from_parts(837_613, 0).saturating_mul(n.into())) + // Standard Error: 19_843 + .saturating_add(Weight::from_parts(739_876, 0).saturating_mul(m.into())) + .saturating_add(RocksDbWeight::get().reads(13_u64)) + .saturating_add(RocksDbWeight::get().writes(9_u64)) + } + /// Storage: `ParachainStaking::DelegatorState` (r:1 w:1) + /// Proof: `ParachainStaking::DelegatorState` (`max_values`: None, `max_size`: Some(89), added: 2564, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::CandidatePool` (r:1 w:1) + /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) + /// Storage: `System::Account` (r:1 w:1) + /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::Unstaking` (r:1 w:1) + /// Proof: `ParachainStaking::Unstaking` (`max_values`: None, `max_size`: Some(241), added: 2716, mode: `MaxEncodedLen`) + /// Storage: `Balances::Locks` (r:1 w:1) + /// Proof: `Balances::Locks` (`max_values`: None, `max_size`: Some(1299), added: 3774, mode: `MaxEncodedLen`) + /// Storage: `Balances::Freezes` (r:1 w:0) + /// Proof: `Balances::Freezes` (`max_values`: None, `max_size`: Some(49), added: 2524, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TopCandidates` (r:1 w:1) + /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:0) + /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) + /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::RewardCount` (r:2 w:0) + /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) + /// The range of component `n` is `[1, 40]`. + /// The range of component `m` is `[1, 39]`. + /// The range of component `u` is `[1, 9]`. + fn delegator_stake_more(n: u32, m: u32, _u: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `3904 + m * (93 ±0) + n * (90 ±0) + u * (20 ±0)` + // Estimated: `6028` + // Minimum execution time: 63_000_000 picoseconds. + Weight::from_parts(36_308_645, 6028) + // Standard Error: 25_597 + .saturating_add(Weight::from_parts(819_777, 0).saturating_mul(n.into())) + // Standard Error: 26_284 + .saturating_add(Weight::from_parts(902_701, 0).saturating_mul(m.into())) + .saturating_add(RocksDbWeight::get().reads(11_u64)) + .saturating_add(RocksDbWeight::get().writes(7_u64)) + } + /// Storage: `ParachainStaking::DelegatorState` (r:1 w:1) + /// Proof: `ParachainStaking::DelegatorState` (`max_values`: None, `max_size`: Some(89), added: 2564, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::CandidatePool` (r:1 w:1) + /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::Unstaking` (r:1 w:1) + /// Proof: `ParachainStaking::Unstaking` (`max_values`: None, `max_size`: Some(241), added: 2716, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TopCandidates` (r:1 w:1) + /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:0) + /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) + /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::RewardCount` (r:2 w:0) + /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) + /// The range of component `n` is `[1, 40]`. + /// The range of component `m` is `[1, 39]`. + fn delegator_stake_less(n: u32, m: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `3155 + m * (74 ±0) + n * (74 ±0)` + // Estimated: `6028` + // Minimum execution time: 43_000_000 picoseconds. + Weight::from_parts(14_073_064, 6028) + // Standard Error: 22_457 + .saturating_add(Weight::from_parts(769_795, 0).saturating_mul(n.into())) + // Standard Error: 23_061 + .saturating_add(Weight::from_parts(803_601, 0).saturating_mul(m.into())) + .saturating_add(RocksDbWeight::get().reads(8_u64)) + .saturating_add(RocksDbWeight::get().writes(5_u64)) + } + /// Storage: `ParachainStaking::DelegatorState` (r:1 w:1) + /// Proof: `ParachainStaking::DelegatorState` (`max_values`: None, `max_size`: Some(89), added: 2564, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::CandidatePool` (r:1 w:1) + /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::RewardCount` (r:2 w:0) + /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::Unstaking` (r:1 w:1) + /// Proof: `ParachainStaking::Unstaking` (`max_values`: None, `max_size`: Some(241), added: 2716, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TopCandidates` (r:1 w:1) + /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:0) + /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) + /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) + /// The range of component `n` is `[1, 40]`. + /// The range of component `m` is `[1, 39]`. + fn leave_delegators(n: u32, m: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `3155 + m * (74 ±0) + n * (74 ±0)` + // Estimated: `6028` + // Minimum execution time: 46_000_000 picoseconds. + Weight::from_parts(23_362_096, 6028) + // Standard Error: 19_512 + .saturating_add(Weight::from_parts(765_668, 0).saturating_mul(n.into())) + // Standard Error: 20_036 + .saturating_add(Weight::from_parts(601_373, 0).saturating_mul(m.into())) + .saturating_add(RocksDbWeight::get().reads(8_u64)) + .saturating_add(RocksDbWeight::get().writes(5_u64)) + } + /// Storage: `ParachainStaking::Unstaking` (r:1 w:1) + /// Proof: `ParachainStaking::Unstaking` (`max_values`: None, `max_size`: Some(241), added: 2716, mode: `MaxEncodedLen`) + /// Storage: `Balances::Locks` (r:1 w:1) + /// Proof: `Balances::Locks` (`max_values`: None, `max_size`: Some(1299), added: 3774, mode: `MaxEncodedLen`) + /// Storage: `Balances::Freezes` (r:1 w:0) + /// Proof: `Balances::Freezes` (`max_values`: None, `max_size`: Some(49), added: 2524, mode: `MaxEncodedLen`) + /// Storage: `System::Account` (r:1 w:1) + /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) + /// The range of component `u` is `[1, 9]`. + fn unlock_unstaked(u: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `1076 + u * (20 ±0)` + // Estimated: `4764` + // Minimum execution time: 28_000_000 picoseconds. + Weight::from_parts(29_651_560, 4764) + // Standard Error: 8_901 + .saturating_add(Weight::from_parts(141_690, 0).saturating_mul(u.into())) + .saturating_add(RocksDbWeight::get().reads(4_u64)) + .saturating_add(RocksDbWeight::get().writes(3_u64)) + } + /// Storage: `ParachainStaking::MaxCollatorCandidateStake` (r:0 w:1) + /// Proof: `ParachainStaking::MaxCollatorCandidateStake` (`max_values`: Some(1), `max_size`: Some(16), added: 511, mode: `MaxEncodedLen`) + fn set_max_candidate_stake() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 5_000_000 picoseconds. + Weight::from_parts(6_000_000, 0) + .saturating_add(RocksDbWeight::get().writes(1_u64)) + } + /// Storage: `ParachainStaking::DelegatorState` (r:1 w:0) + /// Proof: `ParachainStaking::DelegatorState` (`max_values`: None, `max_size`: Some(89), added: 2564, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::RewardCount` (r:2 w:1) + /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::Rewards` (r:1 w:1) + /// Proof: `ParachainStaking::Rewards` (`max_values`: None, `max_size`: Some(56), added: 2531, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:0) + /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::InflationConfig` (r:1 w:0) + /// Proof: `ParachainStaking::InflationConfig` (`max_values`: Some(1), `max_size`: Some(96), added: 591, mode: `MaxEncodedLen`) + fn increment_delegator_rewards() -> Weight { + // Proof Size summary in bytes: + // Measured: `754` + // Estimated: `6028` + // Minimum execution time: 21_000_000 picoseconds. + Weight::from_parts(21_000_000, 6028) + .saturating_add(RocksDbWeight::get().reads(6_u64)) + .saturating_add(RocksDbWeight::get().writes(2_u64)) + } + /// Storage: `ParachainStaking::CandidatePool` (r:1 w:0) + /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::RewardCount` (r:41 w:41) + /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::Rewards` (r:41 w:41) + /// Proof: `ParachainStaking::Rewards` (`max_values`: None, `max_size`: Some(56), added: 2531, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:0) + /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::InflationConfig` (r:1 w:0) + /// Proof: `ParachainStaking::InflationConfig` (`max_values`: Some(1), `max_size`: Some(96), added: 591, mode: `MaxEncodedLen`) + /// The range of component `m` is `[1, 40]`. + fn increment_collator_rewards(m: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `855 + m * (98 ±0)` + // Estimated: `5495 + m * (2531 ±0)` + // Minimum execution time: 29_000_000 picoseconds. + Weight::from_parts(17_699_443, 5495) + // Standard Error: 16_885 + .saturating_add(Weight::from_parts(9_588_938, 0).saturating_mul(m.into())) + .saturating_add(RocksDbWeight::get().reads(5_u64)) + .saturating_add(RocksDbWeight::get().reads((2_u64).saturating_mul(m.into()))) + .saturating_add(RocksDbWeight::get().writes(2_u64)) + .saturating_add(RocksDbWeight::get().writes((2_u64).saturating_mul(m.into()))) + .saturating_add(Weight::from_parts(0, 2531).saturating_mul(m.into())) + } + /// Storage: `ParachainStaking::Rewards` (r:1 w:1) + /// Proof: `ParachainStaking::Rewards` (`max_values`: None, `max_size`: Some(56), added: 2531, mode: `MaxEncodedLen`) + /// Storage: `System::Account` (r:1 w:1) + /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) + fn claim_rewards() -> Weight { + // Proof Size summary in bytes: + // Measured: `575` + // Estimated: `3593` + // Minimum execution time: 22_000_000 picoseconds. + Weight::from_parts(23_000_000, 3593) + .saturating_add(RocksDbWeight::get().reads(2_u64)) + .saturating_add(RocksDbWeight::get().writes(2_u64)) + } + /// Storage: `ParachainStaking::LastRewardReduction` (r:1 w:1) + /// Proof: `ParachainStaking::LastRewardReduction` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::InflationConfig` (r:1 w:1) + /// Proof: `ParachainStaking::InflationConfig` (`max_values`: Some(1), `max_size`: Some(96), added: 591, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::CandidatePool` (r:41 w:0) + /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::RewardCount` (r:1640 w:1640) + /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::Rewards` (r:40 w:40) + /// Proof: `ParachainStaking::Rewards` (`max_values`: None, `max_size`: Some(56), added: 2531, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:0) + /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) + /// Storage: `ParachainStaking::CounterForCandidatePool` (r:1 w:0) + /// Proof: `ParachainStaking::CounterForCandidatePool` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// The range of component `n` is `[0, 40]`. + /// The range of component `m` is `[0, 40]`. + fn execute_scheduled_reward_change(n: u32, m: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `0 + m * (3891 ±0) + n * (3991 ±0)` + // Estimated: `101750 + m * (37911 ±1_054) + n * (33703 ±9)` + // Minimum execution time: 420_000_000 picoseconds. + Weight::from_parts(431_000_000, 101750) + // Standard Error: 2_590_217 + .saturating_add(Weight::from_parts(78_634_433, 0).saturating_mul(n.into())) + // Standard Error: 2_590_217 + .saturating_add(Weight::from_parts(78_105_543, 0).saturating_mul(m.into())) + .saturating_add(RocksDbWeight::get().reads(125_u64)) + .saturating_add(RocksDbWeight::get().reads((14_u64).saturating_mul(n.into()))) + .saturating_add(RocksDbWeight::get().reads((14_u64).saturating_mul(m.into()))) + .saturating_add(RocksDbWeight::get().writes(82_u64)) + .saturating_add(RocksDbWeight::get().writes((14_u64).saturating_mul(n.into()))) + .saturating_add(RocksDbWeight::get().writes((14_u64).saturating_mul(m.into()))) + .saturating_add(Weight::from_parts(0, 37911).saturating_mul(m.into())) + .saturating_add(Weight::from_parts(0, 33703).saturating_mul(n.into())) + } } \ No newline at end of file diff --git a/runtime/foucoco/src/lib.rs b/runtime/foucoco/src/lib.rs index f8af075dd..f3891e326 100644 --- a/runtime/foucoco/src/lib.rs +++ b/runtime/foucoco/src/lib.rs @@ -1030,7 +1030,7 @@ impl treasury_buyout_extension::Config for Runtime { type DecimalsLookup = DecimalsLookupImpl; type MinAmountToBuyout = MinAmountToBuyout; type MaxAllowedBuyoutCurrencies = MaxAllowedBuyoutCurrencies; - type WeightInfo = weights::treasury_buyout_extension::SubstrateWeight; + type WeightInfo = (); #[cfg(feature = "runtime-benchmarks")] type RelayChainCurrencyId = RelayChainCurrencyId; } @@ -1087,7 +1087,7 @@ impl pallet_insecure_randomness_collective_flip::Config for Runtime {} impl orml_currencies_allowance_extension::Config for Runtime { type RuntimeEvent = RuntimeEvent; - type WeightInfo = weights::orml_currencies_allowance_extension::SubstrateWeight; + type WeightInfo = (); type MaxAllowedCurrencies = ConstU32<256>; } @@ -1124,7 +1124,7 @@ impl dia_oracle::Config for Runtime { type RuntimeEvent = RuntimeEvent; type RuntimeCall = RuntimeCall; type AuthorityId = dia_oracle::crypto::DiaAuthId; - type WeightInfo = weights::dia_oracle::SubstrateWeight; + type WeightInfo = (); } impl frame_system::offchain::SigningTypes for Runtime { @@ -1273,7 +1273,7 @@ cfg_if::cfg_if! { impl oracle::Config for Runtime { type RuntimeEvent = RuntimeEvent; - type WeightInfo = weights::oracle::SubstrateWeight; + type WeightInfo = (); type DecimalsLookup = DecimalsLookupImpl; type DataProvider = DataProviderImpl; #[cfg(feature = "runtime-benchmarks")] @@ -1292,7 +1292,7 @@ impl stellar_relay::Config for Runtime { type OrganizationLimit = OrganizationLimit; type ValidatorLimit = ValidatorLimit; type IsPublicNetwork = IsPublicNetwork; - type WeightInfo = weights::stellar_relay::SubstrateWeight; + type WeightInfo = (); } parameter_types! { @@ -1305,7 +1305,7 @@ parameter_types! { impl fee::Config for Runtime { type FeePalletId = FeePalletId; - type WeightInfo = weights::fee::SubstrateWeight; + type WeightInfo = (); type SignedFixedPoint = SignedFixedPoint; type SignedInner = SignedInner; type UnsignedFixedPoint = UnsignedFixedPoint; @@ -1321,13 +1321,13 @@ impl vault_registry::Config for Runtime { type PalletId = VaultRegistryPalletId; type RuntimeEvent = RuntimeEvent; type Balance = Balance; - type WeightInfo = weights::vault_registry::SubstrateWeight; + type WeightInfo = (); type GetGriefingCollateralCurrencyId = NativeCurrencyId; } impl redeem::Config for Runtime { type RuntimeEvent = RuntimeEvent; - type WeightInfo = weights::redeem::SubstrateWeight; + type WeightInfo = (); } pub struct BlockNumberToBalance; @@ -1341,17 +1341,17 @@ impl sp_runtime::traits::Convert for BlockNumberToBalance impl issue::Config for Runtime { type RuntimeEvent = RuntimeEvent; type BlockNumberToBalance = BlockNumberToBalance; - type WeightInfo = weights::issue::SubstrateWeight; + type WeightInfo = (); } impl nomination::Config for Runtime { type RuntimeEvent = RuntimeEvent; - type WeightInfo = weights::nomination::SubstrateWeight; + type WeightInfo = (); } impl replace::Config for Runtime { type RuntimeEvent = RuntimeEvent; - type WeightInfo = weights::replace::SubstrateWeight; + type WeightInfo = (); } impl clients_info::Config for Runtime { diff --git a/runtime/pendulum/src/lib.rs b/runtime/pendulum/src/lib.rs index ef21ead44..4f4c29406 100644 --- a/runtime/pendulum/src/lib.rs +++ b/runtime/pendulum/src/lib.rs @@ -1070,7 +1070,7 @@ impl dia_oracle::Config for Runtime { type RuntimeEvent = RuntimeEvent; type RuntimeCall = RuntimeCall; type AuthorityId = dia_oracle::crypto::DiaAuthId; - type WeightInfo = weights::dia_oracle::SubstrateWeight; + type WeightInfo = (); } parameter_types! { @@ -1243,7 +1243,7 @@ cfg_if::cfg_if! { impl oracle::Config for Runtime { type RuntimeEvent = RuntimeEvent; - type WeightInfo = weights::oracle::SubstrateWeight; + type WeightInfo = (); type DecimalsLookup = DecimalsLookupImpl; type DataProvider = DataProviderImpl; #[cfg(feature = "runtime-benchmarks")] @@ -1262,7 +1262,7 @@ impl stellar_relay::Config for Runtime { type OrganizationLimit = OrganizationLimit; type ValidatorLimit = ValidatorLimit; type IsPublicNetwork = IsPublicNetwork; - type WeightInfo = weights::stellar_relay::SubstrateWeight; + type WeightInfo = (); } parameter_types! { @@ -1273,7 +1273,7 @@ parameter_types! { } impl fee::Config for Runtime { type FeePalletId = FeePalletId; - type WeightInfo = weights::fee::SubstrateWeight; + type WeightInfo = (); type SignedFixedPoint = SignedFixedPoint; type SignedInner = SignedInner; type UnsignedFixedPoint = UnsignedFixedPoint; @@ -1289,7 +1289,7 @@ impl vault_registry::Config for Runtime { type PalletId = VaultRegistryPalletId; type RuntimeEvent = RuntimeEvent; type Balance = Balance; - type WeightInfo = weights::vault_registry::SubstrateWeight; + type WeightInfo = (); type GetGriefingCollateralCurrencyId = NativeCurrencyId; } @@ -1309,17 +1309,17 @@ impl sp_runtime::traits::Convert for BlockNumberToBalance impl issue::Config for Runtime { type RuntimeEvent = RuntimeEvent; type BlockNumberToBalance = BlockNumberToBalance; - type WeightInfo = weights::issue::SubstrateWeight; + type WeightInfo = (); } impl nomination::Config for Runtime { type RuntimeEvent = RuntimeEvent; - type WeightInfo = weights::nomination::SubstrateWeight; + type WeightInfo = (); } impl replace::Config for Runtime { type RuntimeEvent = RuntimeEvent; - type WeightInfo = weights::replace::SubstrateWeight; + type WeightInfo = (); } impl clients_info::Config for Runtime { @@ -1408,7 +1408,7 @@ impl pallet_proxy::Config for Runtime { impl orml_currencies_allowance_extension::Config for Runtime { type RuntimeEvent = RuntimeEvent; - type WeightInfo = weights::orml_currencies_allowance_extension::SubstrateWeight; + type WeightInfo = (); type MaxAllowedCurrencies = ConstU32<256>; } @@ -1444,7 +1444,7 @@ impl treasury_buyout_extension::Config for Runtime { type DecimalsLookup = DecimalsLookupImpl; type MinAmountToBuyout = MinAmountToBuyout; type MaxAllowedBuyoutCurrencies = MaxAllowedBuyoutCurrencies; - type WeightInfo = weights::treasury_buyout_extension::SubstrateWeight; + type WeightInfo = (); #[cfg(feature = "runtime-benchmarks")] type RelayChainCurrencyId = RelayChainCurrencyId; } From 7b10533b2b1ba5b80dde646e98e25682c612ea07 Mon Sep 17 00:00:00 2001 From: Gianfranco Date: Wed, 11 Sep 2024 16:30:47 -0300 Subject: [PATCH 13/38] Revert "add benchmarkings (those not failed), modify config to use default weight" This reverts commit 79012a103e1f57fcefa852a91691307ba338b69d. --- Cargo.lock | 8 +- runtime/amplitude/src/lib.rs | 24 +- .../src/weights/parachain_staking.rs | 1437 +++++------------ runtime/foucoco/src/lib.rs | 22 +- runtime/pendulum/src/lib.rs | 20 +- 5 files changed, 432 insertions(+), 1079 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 14a660e51..a8c2a0a29 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -446,7 +446,7 @@ dependencies = [ [[package]] name = "ark-secret-scalar" version = "0.0.2" -source = "git+https://github.com/w3f//ring-vrf?rev=3ddc20#3ddc2051066c4b3f0eadd0ba5700df12500d9754" +source = "git+https://github.com/w3f//ring-vrf?rev=3ddc20?rev=3ddc20#3ddc2051066c4b3f0eadd0ba5700df12500d9754" dependencies = [ "ark-ec", "ark-ff", @@ -494,7 +494,7 @@ dependencies = [ [[package]] name = "ark-transcript" version = "0.0.2" -source = "git+https://github.com/w3f//ring-vrf?rev=3ddc20#3ddc2051066c4b3f0eadd0ba5700df12500d9754" +source = "git+https://github.com/w3f//ring-vrf?rev=3ddc20?rev=3ddc20#3ddc2051066c4b3f0eadd0ba5700df12500d9754" dependencies = [ "ark-ff", "ark-serialize", @@ -1059,7 +1059,7 @@ dependencies = [ [[package]] name = "bandersnatch_vrfs" version = "0.0.4" -source = "git+https://github.com/w3f//ring-vrf?rev=3ddc20#3ddc2051066c4b3f0eadd0ba5700df12500d9754" +source = "git+https://github.com/w3f//ring-vrf?rev=3ddc20?rev=3ddc20#3ddc2051066c4b3f0eadd0ba5700df12500d9754" dependencies = [ "ark-bls12-381", "ark-ec", @@ -3560,7 +3560,7 @@ dependencies = [ [[package]] name = "dleq_vrf" version = "0.0.2" -source = "git+https://github.com/w3f//ring-vrf?rev=3ddc20#3ddc2051066c4b3f0eadd0ba5700df12500d9754" +source = "git+https://github.com/w3f//ring-vrf?rev=3ddc20?rev=3ddc20#3ddc2051066c4b3f0eadd0ba5700df12500d9754" dependencies = [ "ark-ec", "ark-ff", diff --git a/runtime/amplitude/src/lib.rs b/runtime/amplitude/src/lib.rs index 432d910f9..b98d8bd22 100644 --- a/runtime/amplitude/src/lib.rs +++ b/runtime/amplitude/src/lib.rs @@ -939,7 +939,7 @@ impl parachain_staking::Config for Runtime { type NetworkRewardStart = NetworkRewardStart; type NetworkRewardBeneficiary = Treasury; type CollatorRewardRateDecay = CollatorRewardRateDecay; - type WeightInfo = (); + type WeightInfo = weights::parachain_staking::SubstrateWeight; const BLOCKS_PER_YEAR: BlockNumber = BLOCKS_PER_YEAR; } @@ -1070,7 +1070,7 @@ impl dia_oracle::Config for Runtime { type RuntimeEvent = RuntimeEvent; type RuntimeCall = RuntimeCall; type AuthorityId = dia_oracle::crypto::DiaAuthId; - type WeightInfo = (); + type WeightInfo = weights::dia_oracle::SubstrateWeight; } impl frame_system::offchain::SigningTypes for Runtime { @@ -1220,7 +1220,7 @@ cfg_if::cfg_if! { impl oracle::Config for Runtime { type RuntimeEvent = RuntimeEvent; - type WeightInfo = (); + type WeightInfo = weights::oracle::SubstrateWeight; type DecimalsLookup = DecimalsLookupImpl; type DataProvider = DataProviderImpl; #[cfg(feature = "runtime-benchmarks")] @@ -1239,7 +1239,7 @@ impl stellar_relay::Config for Runtime { type OrganizationLimit = OrganizationLimit; type ValidatorLimit = ValidatorLimit; type IsPublicNetwork = IsPublicNetwork; - type WeightInfo =(); + type WeightInfo = weights::stellar_relay::SubstrateWeight; } parameter_types! { @@ -1250,7 +1250,7 @@ parameter_types! { } impl fee::Config for Runtime { type FeePalletId = FeePalletId; - type WeightInfo = (); + type WeightInfo = weights::fee::SubstrateWeight; type SignedFixedPoint = SignedFixedPoint; type SignedInner = SignedInner; type UnsignedFixedPoint = UnsignedFixedPoint; @@ -1266,13 +1266,13 @@ impl vault_registry::Config for Runtime { type PalletId = VaultRegistryPalletId; type RuntimeEvent = RuntimeEvent; type Balance = Balance; - type WeightInfo = (); + type WeightInfo = weights::vault_registry::SubstrateWeight; type GetGriefingCollateralCurrencyId = NativeCurrencyId; } impl redeem::Config for Runtime { type RuntimeEvent = RuntimeEvent; - type WeightInfo = (); + type WeightInfo = weights::redeem::SubstrateWeight; } pub struct BlockNumberToBalance; @@ -1286,17 +1286,17 @@ impl sp_runtime::traits::Convert for BlockNumberToBalance impl issue::Config for Runtime { type RuntimeEvent = RuntimeEvent; type BlockNumberToBalance = BlockNumberToBalance; - type WeightInfo = (); + type WeightInfo = weights::issue::SubstrateWeight; } impl nomination::Config for Runtime { type RuntimeEvent = RuntimeEvent; - type WeightInfo = (); + type WeightInfo = weights::nomination::SubstrateWeight; } impl replace::Config for Runtime { type RuntimeEvent = RuntimeEvent; - type WeightInfo = (); + type WeightInfo = weights::replace::SubstrateWeight; } impl clients_info::Config for Runtime { @@ -1408,7 +1408,7 @@ impl pallet_proxy::Config for Runtime { impl orml_currencies_allowance_extension::Config for Runtime { type RuntimeEvent = RuntimeEvent; - type WeightInfo = (); + type WeightInfo = weights::orml_currencies_allowance_extension::SubstrateWeight; type MaxAllowedCurrencies = ConstU32<256>; } @@ -1444,7 +1444,7 @@ impl treasury_buyout_extension::Config for Runtime { type DecimalsLookup = DecimalsLookupImpl; type MinAmountToBuyout = MinAmountToBuyout; type MaxAllowedBuyoutCurrencies = MaxAllowedBuyoutCurrencies; - type WeightInfo = (); + type WeightInfo = weights::treasury_buyout_extension::SubstrateWeight; #[cfg(feature = "runtime-benchmarks")] type RelayChainCurrencyId = RelayChainCurrencyId; } diff --git a/runtime/amplitude/src/weights/parachain_staking.rs b/runtime/amplitude/src/weights/parachain_staking.rs index cb8804ece..49d64f53d 100644 --- a/runtime/amplitude/src/weights/parachain_staking.rs +++ b/runtime/amplitude/src/weights/parachain_staking.rs @@ -2,17 +2,18 @@ //! Autogenerated weights for parachain_staking //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2024-09-11, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! DATE: 2024-06-08, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` //! WORST CASE MAP SIZE: `1000000` -//! HOSTNAME: `Gianfrancos-MacBook-Pro.local`, CPU: `` -//! EXECUTION: , WASM-EXECUTION: Compiled, CHAIN: Some("amplitude"), DB CACHE: 1024 +//! HOSTNAME: `Bogdans-M2-MacBook-Pro.local`, CPU: `` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("amplitude"), DB CACHE: 1024 // Executed Command: -// ./target/production/pendulum-node +// ./target/release/pendulum-node // benchmark // pallet // --chain // amplitude +// --execution=wasm // --wasm-execution=compiled // --pallet // parachain-staking @@ -35,102 +36,74 @@ use frame_support::{traits::Get, weights::{Weight, constants::RocksDbWeight}}; use core::marker::PhantomData; -/// Weight functions needed for parachain_staking. -pub trait WeightInfo { - fn on_initialize_no_action() -> Weight; - fn on_initialize_round_update() -> Weight; - fn on_initialize_network_rewards() -> Weight; - fn force_new_round() -> Weight; - fn set_inflation(n: u32, m: u32, ) -> Weight; - fn set_max_selected_candidates(n: u32, m: u32, ) -> Weight; - fn set_blocks_per_round() -> Weight; - fn force_remove_candidate(n: u32, m: u32, ) -> Weight; - fn join_candidates(n: u32, m: u32, ) -> Weight; - fn init_leave_candidates(n: u32, m: u32, ) -> Weight; - fn cancel_leave_candidates(n: u32, m: u32, ) -> Weight; - fn execute_leave_candidates(n: u32, m: u32, ) -> Weight; - fn candidate_stake_more(n: u32, m: u32, u: u32, ) -> Weight; - fn candidate_stake_less(n: u32, m: u32, ) -> Weight; - fn join_delegators(n: u32, m: u32, ) -> Weight; - fn delegator_stake_more(n: u32, m: u32, u: u32, ) -> Weight; - fn delegator_stake_less(n: u32, m: u32, ) -> Weight; - fn leave_delegators(n: u32, m: u32, ) -> Weight; - fn unlock_unstaked(u: u32, ) -> Weight; - fn set_max_candidate_stake() -> Weight; - fn increment_delegator_rewards() -> Weight; - fn increment_collator_rewards(m: u32, ) -> Weight; - fn claim_rewards() -> Weight; - fn execute_scheduled_reward_change(n: u32, m: u32, ) -> Weight; -} - /// Weights for parachain_staking using the Substrate node and recommended hardware. pub struct SubstrateWeight(PhantomData); -impl WeightInfo for SubstrateWeight { - /// Storage: `ParachainStaking::Round` (r:1 w:0) - /// Proof: `ParachainStaking::Round` (`max_values`: Some(1), `max_size`: Some(12), added: 507, mode: `MaxEncodedLen`) +impl parachain_staking::WeightInfo for SubstrateWeight { + /// Storage: ParachainStaking Round (r:1 w:0) + /// Proof: ParachainStaking Round (max_values: Some(1), max_size: Some(12), added: 507, mode: MaxEncodedLen) fn on_initialize_no_action() -> Weight { // Proof Size summary in bytes: // Measured: `427` // Estimated: `1497` - // Minimum execution time: 3_000_000 picoseconds. - Weight::from_parts(4_000_000, 1497) + // Minimum execution time: 4_000_000 picoseconds. + Weight::from_parts(5_000_000, 1497) .saturating_add(T::DbWeight::get().reads(1_u64)) } - /// Storage: `ParachainStaking::Round` (r:1 w:1) - /// Proof: `ParachainStaking::Round` (`max_values`: Some(1), `max_size`: Some(12), added: 507, mode: `MaxEncodedLen`) + /// Storage: ParachainStaking Round (r:1 w:1) + /// Proof: ParachainStaking Round (max_values: Some(1), max_size: Some(12), added: 507, mode: MaxEncodedLen) fn on_initialize_round_update() -> Weight { // Proof Size summary in bytes: // Measured: `427` // Estimated: `1497` - // Minimum execution time: 7_000_000 picoseconds. - Weight::from_parts(8_000_000, 1497) + // Minimum execution time: 10_000_000 picoseconds. + Weight::from_parts(10_000_000, 1497) .saturating_add(T::DbWeight::get().reads(1_u64)) .saturating_add(T::DbWeight::get().writes(1_u64)) } - /// Storage: `ParachainStaking::Round` (r:1 w:0) - /// Proof: `ParachainStaking::Round` (`max_values`: Some(1), `max_size`: Some(12), added: 507, mode: `MaxEncodedLen`) + /// Storage: ParachainStaking Round (r:1 w:0) + /// Proof: ParachainStaking Round (max_values: Some(1), max_size: Some(12), added: 507, mode: MaxEncodedLen) fn on_initialize_network_rewards() -> Weight { // Proof Size summary in bytes: // Measured: `427` // Estimated: `1497` - // Minimum execution time: 3_000_000 picoseconds. - Weight::from_parts(4_000_000, 1497) + // Minimum execution time: 5_000_000 picoseconds. + Weight::from_parts(5_000_000, 1497) .saturating_add(T::DbWeight::get().reads(1_u64)) } - /// Storage: `ParachainStaking::ForceNewRound` (r:0 w:1) - /// Proof: `ParachainStaking::ForceNewRound` (`max_values`: Some(1), `max_size`: Some(1), added: 496, mode: `MaxEncodedLen`) + /// Storage: ParachainStaking ForceNewRound (r:0 w:1) + /// Proof: ParachainStaking ForceNewRound (max_values: Some(1), max_size: Some(1), added: 496, mode: MaxEncodedLen) fn force_new_round() -> Weight { // Proof Size summary in bytes: // Measured: `0` // Estimated: `0` - // Minimum execution time: 2_000_000 picoseconds. - Weight::from_parts(2_000_000, 0) + // Minimum execution time: 3_000_000 picoseconds. + Weight::from_parts(3_000_000, 0) .saturating_add(T::DbWeight::get().writes(1_u64)) } - /// Storage: `ParachainStaking::CandidatePool` (r:41 w:0) - /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::RewardCount` (r:1640 w:1640) - /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::Rewards` (r:40 w:40) - /// Proof: `ParachainStaking::Rewards` (`max_values`: None, `max_size`: Some(56), added: 2531, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:0) - /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::InflationConfig` (r:1 w:1) - /// Proof: `ParachainStaking::InflationConfig` (`max_values`: Some(1), `max_size`: Some(96), added: 591, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::CounterForCandidatePool` (r:1 w:0) - /// Proof: `ParachainStaking::CounterForCandidatePool` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// Storage: ParachainStaking CandidatePool (r:41 w:0) + /// Proof: ParachainStaking CandidatePool (max_values: None, max_size: Some(2030), added: 4505, mode: MaxEncodedLen) + /// Storage: ParachainStaking RewardCount (r:1640 w:1640) + /// Proof: ParachainStaking RewardCount (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) + /// Storage: ParachainStaking Rewards (r:40 w:40) + /// Proof: ParachainStaking Rewards (max_values: None, max_size: Some(56), added: 2531, mode: MaxEncodedLen) + /// Storage: ParachainStaking TotalCollatorStake (r:1 w:0) + /// Proof: ParachainStaking TotalCollatorStake (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) + /// Storage: ParachainStaking InflationConfig (r:1 w:1) + /// Proof: ParachainStaking InflationConfig (max_values: Some(1), max_size: Some(96), added: 591, mode: MaxEncodedLen) + /// Storage: ParachainStaking CounterForCandidatePool (r:1 w:0) + /// Proof: ParachainStaking CounterForCandidatePool (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) /// The range of component `n` is `[0, 40]`. /// The range of component `m` is `[0, 40]`. fn set_inflation(n: u32, m: u32, ) -> Weight { // Proof Size summary in bytes: // Measured: `0 + m * (3891 ±0) + n * (4052 ±0)` - // Estimated: `101750 + m * (37911 ±1_054) + n * (33703 ±9)` - // Minimum execution time: 462_000_000 picoseconds. - Weight::from_parts(474_000_000, 101750) - // Standard Error: 2_594_253 - .saturating_add(Weight::from_parts(78_871_861, 0).saturating_mul(n.into())) - // Standard Error: 2_594_253 - .saturating_add(Weight::from_parts(73_821_932, 0).saturating_mul(m.into())) + // Estimated: `101750 + m * (37911 ±1_054) + n * (33703 ±1_054)` + // Minimum execution time: 595_000_000 picoseconds. + Weight::from_parts(613_000_000, 101750) + // Standard Error: 3_104_233 + .saturating_add(Weight::from_parts(90_791_222, 0).saturating_mul(n.into())) + // Standard Error: 3_104_233 + .saturating_add(Weight::from_parts(93_574_370, 0).saturating_mul(m.into())) .saturating_add(T::DbWeight::get().reads(124_u64)) .saturating_add(T::DbWeight::get().reads((14_u64).saturating_mul(n.into()))) .saturating_add(T::DbWeight::get().reads((14_u64).saturating_mul(m.into()))) @@ -140,76 +113,76 @@ impl WeightInfo for SubstrateWeight { .saturating_add(Weight::from_parts(0, 37911).saturating_mul(m.into())) .saturating_add(Weight::from_parts(0, 33703).saturating_mul(n.into())) } - /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:1) - /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TopCandidates` (r:1 w:0) - /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) - /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) + /// Storage: ParachainStaking MaxSelectedCandidates (r:1 w:1) + /// Proof: ParachainStaking MaxSelectedCandidates (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: ParachainStaking TopCandidates (r:1 w:0) + /// Proof: ParachainStaking TopCandidates (max_values: Some(1), max_size: Some(1921), added: 2416, mode: MaxEncodedLen) + /// Storage: ParachainStaking TotalCollatorStake (r:1 w:1) + /// Proof: ParachainStaking TotalCollatorStake (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) /// The range of component `n` is `[8, 40]`. /// The range of component `m` is `[0, 40]`. fn set_max_selected_candidates(n: u32, m: u32, ) -> Weight { // Proof Size summary in bytes: // Measured: `434 + n * (48 ±0)` // Estimated: `3406` - // Minimum execution time: 15_000_000 picoseconds. - Weight::from_parts(4_148_612, 3406) - // Standard Error: 14_990 - .saturating_add(Weight::from_parts(341_567, 0).saturating_mul(n.into())) - // Standard Error: 12_042 - .saturating_add(Weight::from_parts(373_225, 0).saturating_mul(m.into())) + // Minimum execution time: 19_000_000 picoseconds. + Weight::from_parts(7_372_613, 3406) + // Standard Error: 11_493 + .saturating_add(Weight::from_parts(285_897, 0).saturating_mul(n.into())) + // Standard Error: 9_233 + .saturating_add(Weight::from_parts(309_585, 0).saturating_mul(m.into())) .saturating_add(T::DbWeight::get().reads(3_u64)) .saturating_add(T::DbWeight::get().writes(2_u64)) } - /// Storage: `ParachainStaking::Round` (r:1 w:1) - /// Proof: `ParachainStaking::Round` (`max_values`: Some(1), `max_size`: Some(12), added: 507, mode: `MaxEncodedLen`) + /// Storage: ParachainStaking Round (r:1 w:1) + /// Proof: ParachainStaking Round (max_values: Some(1), max_size: Some(12), added: 507, mode: MaxEncodedLen) fn set_blocks_per_round() -> Weight { // Proof Size summary in bytes: // Measured: `427` // Estimated: `1497` - // Minimum execution time: 10_000_000 picoseconds. - Weight::from_parts(10_000_000, 1497) + // Minimum execution time: 12_000_000 picoseconds. + Weight::from_parts(13_000_000, 1497) .saturating_add(T::DbWeight::get().reads(1_u64)) .saturating_add(T::DbWeight::get().writes(1_u64)) } - /// Storage: `ParachainStaking::CandidatePool` (r:40 w:1) - /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TopCandidates` (r:1 w:1) - /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::Unstaking` (r:41 w:41) - /// Proof: `ParachainStaking::Unstaking` (`max_values`: None, `max_size`: Some(241), added: 2716, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::DelegatorState` (r:40 w:40) - /// Proof: `ParachainStaking::DelegatorState` (`max_values`: None, `max_size`: Some(89), added: 2564, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::RewardCount` (r:41 w:41) - /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::Rewards` (r:1 w:1) - /// Proof: `ParachainStaking::Rewards` (`max_values`: None, `max_size`: Some(56), added: 2531, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) - /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::InflationConfig` (r:1 w:0) - /// Proof: `ParachainStaking::InflationConfig` (`max_values`: Some(1), `max_size`: Some(96), added: 591, mode: `MaxEncodedLen`) - /// Storage: `Session::Validators` (r:1 w:0) - /// Proof: `Session::Validators` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) - /// Storage: `Session::DisabledValidators` (r:1 w:1) - /// Proof: `Session::DisabledValidators` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) - /// Storage: `System::Digest` (r:1 w:1) - /// Proof: `System::Digest` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) - /// Storage: `ParachainStaking::CounterForCandidatePool` (r:1 w:1) - /// Proof: `ParachainStaking::CounterForCandidatePool` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:0) - /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// Storage: ParachainStaking CandidatePool (r:40 w:1) + /// Proof: ParachainStaking CandidatePool (max_values: None, max_size: Some(2030), added: 4505, mode: MaxEncodedLen) + /// Storage: ParachainStaking TopCandidates (r:1 w:1) + /// Proof: ParachainStaking TopCandidates (max_values: Some(1), max_size: Some(1921), added: 2416, mode: MaxEncodedLen) + /// Storage: ParachainStaking Unstaking (r:41 w:41) + /// Proof: ParachainStaking Unstaking (max_values: None, max_size: Some(241), added: 2716, mode: MaxEncodedLen) + /// Storage: ParachainStaking DelegatorState (r:40 w:40) + /// Proof: ParachainStaking DelegatorState (max_values: None, max_size: Some(89), added: 2564, mode: MaxEncodedLen) + /// Storage: ParachainStaking RewardCount (r:41 w:41) + /// Proof: ParachainStaking RewardCount (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) + /// Storage: ParachainStaking Rewards (r:1 w:1) + /// Proof: ParachainStaking Rewards (max_values: None, max_size: Some(56), added: 2531, mode: MaxEncodedLen) + /// Storage: ParachainStaking TotalCollatorStake (r:1 w:1) + /// Proof: ParachainStaking TotalCollatorStake (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) + /// Storage: ParachainStaking InflationConfig (r:1 w:0) + /// Proof: ParachainStaking InflationConfig (max_values: Some(1), max_size: Some(96), added: 591, mode: MaxEncodedLen) + /// Storage: Session Validators (r:1 w:0) + /// Proof Skipped: Session Validators (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Session DisabledValidators (r:1 w:1) + /// Proof Skipped: Session DisabledValidators (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: System Digest (r:1 w:1) + /// Proof Skipped: System Digest (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking CounterForCandidatePool (r:1 w:1) + /// Proof: ParachainStaking CounterForCandidatePool (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: ParachainStaking MaxSelectedCandidates (r:1 w:0) + /// Proof: ParachainStaking MaxSelectedCandidates (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) /// The range of component `n` is `[9, 40]`. /// The range of component `m` is `[0, 40]`. fn force_remove_candidate(n: u32, m: u32, ) -> Weight { // Proof Size summary in bytes: // Measured: `0 + m * (3143 ±0) + n * (2723 ±0)` - // Estimated: `9446 + m * (2716 ±0) + n * (4505 ±27)` - // Minimum execution time: 148_000_000 picoseconds. - Weight::from_parts(150_000_000, 9446) - // Standard Error: 75_916 - .saturating_add(Weight::from_parts(1_928_052, 0).saturating_mul(n.into())) - // Standard Error: 78_382 - .saturating_add(Weight::from_parts(15_539_211, 0).saturating_mul(m.into())) + // Estimated: `9446 + m * (2716 ±28) + n * (4505 ±27)` + // Minimum execution time: 175_000_000 picoseconds. + Weight::from_parts(178_000_000, 9446) + // Standard Error: 76_352 + .saturating_add(Weight::from_parts(1_839_740, 0).saturating_mul(n.into())) + // Standard Error: 78_833 + .saturating_add(Weight::from_parts(17_270_939, 0).saturating_mul(m.into())) .saturating_add(T::DbWeight::get().reads(11_u64)) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(n.into()))) .saturating_add(T::DbWeight::get().reads((3_u64).saturating_mul(m.into()))) @@ -218,129 +191,127 @@ impl WeightInfo for SubstrateWeight { .saturating_add(Weight::from_parts(0, 2716).saturating_mul(m.into())) .saturating_add(Weight::from_parts(0, 4505).saturating_mul(n.into())) } - /// Storage: `ParachainStaking::CandidatePool` (r:1 w:1) - /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::DelegatorState` (r:1 w:0) - /// Proof: `ParachainStaking::DelegatorState` (`max_values`: None, `max_size`: Some(89), added: 2564, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::MaxCollatorCandidateStake` (r:1 w:0) - /// Proof: `ParachainStaking::MaxCollatorCandidateStake` (`max_values`: Some(1), `max_size`: Some(16), added: 511, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::Unstaking` (r:1 w:1) - /// Proof: `ParachainStaking::Unstaking` (`max_values`: None, `max_size`: Some(241), added: 2716, mode: `MaxEncodedLen`) - /// Storage: `System::Account` (r:1 w:1) - /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) - /// Storage: `Balances::Locks` (r:1 w:1) - /// Proof: `Balances::Locks` (`max_values`: None, `max_size`: Some(1299), added: 3774, mode: `MaxEncodedLen`) - /// Storage: `Balances::Freezes` (r:1 w:0) - /// Proof: `Balances::Freezes` (`max_values`: None, `max_size`: Some(49), added: 2524, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TopCandidates` (r:1 w:1) - /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:0) - /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) - /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::CounterForCandidatePool` (r:1 w:1) - /// Proof: `ParachainStaking::CounterForCandidatePool` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof: ParachainStaking CandidatePool (max_values: None, max_size: Some(2030), added: 4505, mode: MaxEncodedLen) + /// Storage: ParachainStaking DelegatorState (r:1 w:0) + /// Proof: ParachainStaking DelegatorState (max_values: None, max_size: Some(89), added: 2564, mode: MaxEncodedLen) + /// Storage: ParachainStaking MaxCollatorCandidateStake (r:1 w:0) + /// Proof: ParachainStaking MaxCollatorCandidateStake (max_values: Some(1), max_size: Some(16), added: 511, mode: MaxEncodedLen) + /// Storage: ParachainStaking Unstaking (r:1 w:1) + /// Proof: ParachainStaking Unstaking (max_values: None, max_size: Some(241), added: 2716, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1299), added: 3774, mode: MaxEncodedLen) + /// Storage: Balances Freezes (r:1 w:0) + /// Proof: Balances Freezes (max_values: None, max_size: Some(49), added: 2524, mode: MaxEncodedLen) + /// Storage: ParachainStaking TopCandidates (r:1 w:1) + /// Proof: ParachainStaking TopCandidates (max_values: Some(1), max_size: Some(1921), added: 2416, mode: MaxEncodedLen) + /// Storage: ParachainStaking MaxSelectedCandidates (r:1 w:0) + /// Proof: ParachainStaking MaxSelectedCandidates (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: ParachainStaking TotalCollatorStake (r:1 w:1) + /// Proof: ParachainStaking TotalCollatorStake (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) + /// Storage: ParachainStaking CounterForCandidatePool (r:1 w:1) + /// Proof: ParachainStaking CounterForCandidatePool (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) /// The range of component `n` is `[1, 39]`. /// The range of component `m` is `[0, 40]`. fn join_candidates(n: u32, m: u32, ) -> Weight { // Proof Size summary in bytes: // Measured: `2158 + m * (45 ±0) + n * (86 ±0)` // Estimated: `5495` - // Minimum execution time: 56_000_000 picoseconds. - Weight::from_parts(40_436_003, 5495) - // Standard Error: 16_446 - .saturating_add(Weight::from_parts(578_484, 0).saturating_mul(n.into())) - // Standard Error: 15_636 - .saturating_add(Weight::from_parts(644_742, 0).saturating_mul(m.into())) + // Minimum execution time: 70_000_000 picoseconds. + Weight::from_parts(55_257_753, 5495) + // Standard Error: 15_095 + .saturating_add(Weight::from_parts(568_354, 0).saturating_mul(n.into())) + // Standard Error: 14_352 + .saturating_add(Weight::from_parts(598_729, 0).saturating_mul(m.into())) .saturating_add(T::DbWeight::get().reads(11_u64)) .saturating_add(T::DbWeight::get().writes(7_u64)) } - /// Storage: `ParachainStaking::CandidatePool` (r:39 w:1) - /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TopCandidates` (r:1 w:1) - /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::Round` (r:1 w:0) - /// Proof: `ParachainStaking::Round` (`max_values`: Some(1), `max_size`: Some(12), added: 507, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:0) - /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) - /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) + /// Storage: ParachainStaking CandidatePool (r:39 w:1) + /// Proof: ParachainStaking CandidatePool (max_values: None, max_size: Some(2030), added: 4505, mode: MaxEncodedLen) + /// Storage: ParachainStaking TopCandidates (r:1 w:1) + /// Proof: ParachainStaking TopCandidates (max_values: Some(1), max_size: Some(1921), added: 2416, mode: MaxEncodedLen) + /// Storage: ParachainStaking Round (r:1 w:0) + /// Proof: ParachainStaking Round (max_values: Some(1), max_size: Some(12), added: 507, mode: MaxEncodedLen) + /// Storage: ParachainStaking MaxSelectedCandidates (r:1 w:0) + /// Proof: ParachainStaking MaxSelectedCandidates (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: ParachainStaking TotalCollatorStake (r:1 w:1) + /// Proof: ParachainStaking TotalCollatorStake (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) /// The range of component `n` is `[9, 39]`. /// The range of component `m` is `[0, 40]`. - fn init_leave_candidates(n: u32, m: u32, ) -> Weight { + fn init_leave_candidates(n: u32, _m: u32, ) -> Weight { // Proof Size summary in bytes: // Measured: `0 + m * (1872 ±0) + n * (2082 ±0)` // Estimated: `3406 + n * (4505 ±0)` - // Minimum execution time: 59_000_000 picoseconds. - Weight::from_parts(60_000_000, 3406) - // Standard Error: 27_936 - .saturating_add(Weight::from_parts(2_608_487, 0).saturating_mul(n.into())) - // Standard Error: 28_145 - .saturating_add(Weight::from_parts(61_894, 0).saturating_mul(m.into())) + // Minimum execution time: 66_000_000 picoseconds. + Weight::from_parts(67_000_000, 3406) + // Standard Error: 24_947 + .saturating_add(Weight::from_parts(2_817_902, 0).saturating_mul(n.into())) .saturating_add(T::DbWeight::get().reads(4_u64)) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(n.into()))) .saturating_add(T::DbWeight::get().writes(3_u64)) .saturating_add(Weight::from_parts(0, 4505).saturating_mul(n.into())) } - /// Storage: `ParachainStaking::CandidatePool` (r:2 w:1) - /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TopCandidates` (r:1 w:1) - /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:0) - /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) - /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) + /// Storage: ParachainStaking CandidatePool (r:2 w:1) + /// Proof: ParachainStaking CandidatePool (max_values: None, max_size: Some(2030), added: 4505, mode: MaxEncodedLen) + /// Storage: ParachainStaking TopCandidates (r:1 w:1) + /// Proof: ParachainStaking TopCandidates (max_values: Some(1), max_size: Some(1921), added: 2416, mode: MaxEncodedLen) + /// Storage: ParachainStaking MaxSelectedCandidates (r:1 w:0) + /// Proof: ParachainStaking MaxSelectedCandidates (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: ParachainStaking TotalCollatorStake (r:1 w:1) + /// Proof: ParachainStaking TotalCollatorStake (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) /// The range of component `n` is `[9, 39]`. /// The range of component `m` is `[0, 40]`. fn cancel_leave_candidates(n: u32, m: u32, ) -> Weight { // Proof Size summary in bytes: // Measured: `758 + m * (96 ±0) + n * (59 ±0)` // Estimated: `10000` - // Minimum execution time: 28_000_000 picoseconds. - Weight::from_parts(25_829_009, 10000) - // Standard Error: 17_664 - .saturating_add(Weight::from_parts(71_281, 0).saturating_mul(n.into())) - // Standard Error: 13_297 - .saturating_add(Weight::from_parts(393_707, 0).saturating_mul(m.into())) + // Minimum execution time: 35_000_000 picoseconds. + Weight::from_parts(17_763_044, 10000) + // Standard Error: 12_598 + .saturating_add(Weight::from_parts(460_161, 0).saturating_mul(n.into())) + // Standard Error: 9_483 + .saturating_add(Weight::from_parts(419_062, 0).saturating_mul(m.into())) .saturating_add(T::DbWeight::get().reads(5_u64)) .saturating_add(T::DbWeight::get().writes(3_u64)) } - /// Storage: `ParachainStaking::CandidatePool` (r:1 w:1) - /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::Round` (r:1 w:0) - /// Proof: `ParachainStaking::Round` (`max_values`: Some(1), `max_size`: Some(12), added: 507, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::Unstaking` (r:41 w:41) - /// Proof: `ParachainStaking::Unstaking` (`max_values`: None, `max_size`: Some(241), added: 2716, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::DelegatorState` (r:40 w:40) - /// Proof: `ParachainStaking::DelegatorState` (`max_values`: None, `max_size`: Some(89), added: 2564, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::RewardCount` (r:41 w:41) - /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::Rewards` (r:1 w:1) - /// Proof: `ParachainStaking::Rewards` (`max_values`: None, `max_size`: Some(56), added: 2531, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:0) - /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::InflationConfig` (r:1 w:0) - /// Proof: `ParachainStaking::InflationConfig` (`max_values`: Some(1), `max_size`: Some(96), added: 591, mode: `MaxEncodedLen`) - /// Storage: `Session::Validators` (r:1 w:0) - /// Proof: `Session::Validators` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) - /// Storage: `Session::DisabledValidators` (r:1 w:1) - /// Proof: `Session::DisabledValidators` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) - /// Storage: `System::Digest` (r:1 w:1) - /// Proof: `System::Digest` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) - /// Storage: `ParachainStaking::CounterForCandidatePool` (r:1 w:1) - /// Proof: `ParachainStaking::CounterForCandidatePool` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof: ParachainStaking CandidatePool (max_values: None, max_size: Some(2030), added: 4505, mode: MaxEncodedLen) + /// Storage: ParachainStaking Round (r:1 w:0) + /// Proof: ParachainStaking Round (max_values: Some(1), max_size: Some(12), added: 507, mode: MaxEncodedLen) + /// Storage: ParachainStaking Unstaking (r:41 w:41) + /// Proof: ParachainStaking Unstaking (max_values: None, max_size: Some(241), added: 2716, mode: MaxEncodedLen) + /// Storage: ParachainStaking DelegatorState (r:40 w:40) + /// Proof: ParachainStaking DelegatorState (max_values: None, max_size: Some(89), added: 2564, mode: MaxEncodedLen) + /// Storage: ParachainStaking RewardCount (r:41 w:41) + /// Proof: ParachainStaking RewardCount (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) + /// Storage: ParachainStaking Rewards (r:1 w:1) + /// Proof: ParachainStaking Rewards (max_values: None, max_size: Some(56), added: 2531, mode: MaxEncodedLen) + /// Storage: ParachainStaking TotalCollatorStake (r:1 w:0) + /// Proof: ParachainStaking TotalCollatorStake (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) + /// Storage: ParachainStaking InflationConfig (r:1 w:0) + /// Proof: ParachainStaking InflationConfig (max_values: Some(1), max_size: Some(96), added: 591, mode: MaxEncodedLen) + /// Storage: Session Validators (r:1 w:0) + /// Proof Skipped: Session Validators (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Session DisabledValidators (r:1 w:1) + /// Proof Skipped: Session DisabledValidators (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: System Digest (r:1 w:1) + /// Proof Skipped: System Digest (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking CounterForCandidatePool (r:1 w:1) + /// Proof: ParachainStaking CounterForCandidatePool (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) /// The range of component `n` is `[9, 39]`. /// The range of component `m` is `[0, 40]`. fn execute_leave_candidates(n: u32, m: u32, ) -> Weight { // Proof Size summary in bytes: // Measured: `0 + m * (1257 ±0) + n * (655 ±0)` - // Estimated: `5495 + m * (2716 ±0) + n * (213 ±6)` - // Minimum execution time: 45_000_000 picoseconds. - Weight::from_parts(46_000_000, 5495) - // Standard Error: 43_949 - .saturating_add(Weight::from_parts(904_864, 0).saturating_mul(n.into())) - // Standard Error: 44_277 - .saturating_add(Weight::from_parts(16_154_071, 0).saturating_mul(m.into())) + // Estimated: `5495 + m * (2716 ±6) + n * (213 ±6)` + // Minimum execution time: 55_000_000 picoseconds. + Weight::from_parts(56_000_000, 5495) + // Standard Error: 42_885 + .saturating_add(Weight::from_parts(912_996, 0).saturating_mul(n.into())) + // Standard Error: 43_205 + .saturating_add(Weight::from_parts(18_615_890, 0).saturating_mul(m.into())) .saturating_add(T::DbWeight::get().reads(11_u64)) .saturating_add(T::DbWeight::get().reads((3_u64).saturating_mul(m.into()))) .saturating_add(T::DbWeight::get().writes(7_u64)) @@ -348,30 +319,30 @@ impl WeightInfo for SubstrateWeight { .saturating_add(Weight::from_parts(0, 2716).saturating_mul(m.into())) .saturating_add(Weight::from_parts(0, 213).saturating_mul(n.into())) } - /// Storage: `ParachainStaking::CandidatePool` (r:1 w:1) - /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::MaxCollatorCandidateStake` (r:1 w:0) - /// Proof: `ParachainStaking::MaxCollatorCandidateStake` (`max_values`: Some(1), `max_size`: Some(16), added: 511, mode: `MaxEncodedLen`) - /// Storage: `System::Account` (r:1 w:1) - /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::Unstaking` (r:1 w:1) - /// Proof: `ParachainStaking::Unstaking` (`max_values`: None, `max_size`: Some(241), added: 2716, mode: `MaxEncodedLen`) - /// Storage: `Balances::Locks` (r:1 w:1) - /// Proof: `Balances::Locks` (`max_values`: None, `max_size`: Some(1299), added: 3774, mode: `MaxEncodedLen`) - /// Storage: `Balances::Freezes` (r:1 w:0) - /// Proof: `Balances::Freezes` (`max_values`: None, `max_size`: Some(49), added: 2524, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TopCandidates` (r:1 w:1) - /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:0) - /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) - /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::RewardCount` (r:41 w:41) - /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::Rewards` (r:1 w:1) - /// Proof: `ParachainStaking::Rewards` (`max_values`: None, `max_size`: Some(56), added: 2531, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::InflationConfig` (r:1 w:0) - /// Proof: `ParachainStaking::InflationConfig` (`max_values`: Some(1), `max_size`: Some(96), added: 591, mode: `MaxEncodedLen`) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof: ParachainStaking CandidatePool (max_values: None, max_size: Some(2030), added: 4505, mode: MaxEncodedLen) + /// Storage: ParachainStaking MaxCollatorCandidateStake (r:1 w:0) + /// Proof: ParachainStaking MaxCollatorCandidateStake (max_values: Some(1), max_size: Some(16), added: 511, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) + /// Storage: ParachainStaking Unstaking (r:1 w:1) + /// Proof: ParachainStaking Unstaking (max_values: None, max_size: Some(241), added: 2716, mode: MaxEncodedLen) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1299), added: 3774, mode: MaxEncodedLen) + /// Storage: Balances Freezes (r:1 w:0) + /// Proof: Balances Freezes (max_values: None, max_size: Some(49), added: 2524, mode: MaxEncodedLen) + /// Storage: ParachainStaking TopCandidates (r:1 w:1) + /// Proof: ParachainStaking TopCandidates (max_values: Some(1), max_size: Some(1921), added: 2416, mode: MaxEncodedLen) + /// Storage: ParachainStaking MaxSelectedCandidates (r:1 w:0) + /// Proof: ParachainStaking MaxSelectedCandidates (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: ParachainStaking TotalCollatorStake (r:1 w:1) + /// Proof: ParachainStaking TotalCollatorStake (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) + /// Storage: ParachainStaking RewardCount (r:41 w:41) + /// Proof: ParachainStaking RewardCount (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) + /// Storage: ParachainStaking Rewards (r:1 w:1) + /// Proof: ParachainStaking Rewards (max_values: None, max_size: Some(56), added: 2531, mode: MaxEncodedLen) + /// Storage: ParachainStaking InflationConfig (r:1 w:0) + /// Proof: ParachainStaking InflationConfig (max_values: Some(1), max_size: Some(96), added: 591, mode: MaxEncodedLen) /// The range of component `n` is `[1, 39]`. /// The range of component `m` is `[0, 40]`. /// The range of component `u` is `[0, 9]`. @@ -379,111 +350,111 @@ impl WeightInfo for SubstrateWeight { // Proof Size summary in bytes: // Measured: `0 + m * (455 ±0) + n * (292 ±0) + u * (20 ±0)` // Estimated: `5495 + m * (2519 ±0)` - // Minimum execution time: 62_000_000 picoseconds. - Weight::from_parts(16_178_203, 5495) - // Standard Error: 26_046 - .saturating_add(Weight::from_parts(1_454_280, 0).saturating_mul(n.into())) - // Standard Error: 24_764 - .saturating_add(Weight::from_parts(6_893_201, 0).saturating_mul(m.into())) + // Minimum execution time: 78_000_000 picoseconds. + Weight::from_parts(79_000_000, 5495) + // Standard Error: 22_379 + .saturating_add(Weight::from_parts(1_080_738, 0).saturating_mul(n.into())) + // Standard Error: 21_608 + .saturating_add(Weight::from_parts(7_477_868, 0).saturating_mul(m.into())) .saturating_add(T::DbWeight::get().reads(12_u64)) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(m.into()))) .saturating_add(T::DbWeight::get().writes(8_u64)) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(m.into()))) .saturating_add(Weight::from_parts(0, 2519).saturating_mul(m.into())) } - /// Storage: `ParachainStaking::CandidatePool` (r:1 w:1) - /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::Unstaking` (r:1 w:1) - /// Proof: `ParachainStaking::Unstaking` (`max_values`: None, `max_size`: Some(241), added: 2716, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TopCandidates` (r:1 w:1) - /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:0) - /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) - /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::RewardCount` (r:41 w:41) - /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::Rewards` (r:1 w:1) - /// Proof: `ParachainStaking::Rewards` (`max_values`: None, `max_size`: Some(56), added: 2531, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::InflationConfig` (r:1 w:0) - /// Proof: `ParachainStaking::InflationConfig` (`max_values`: Some(1), `max_size`: Some(96), added: 591, mode: `MaxEncodedLen`) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof: ParachainStaking CandidatePool (max_values: None, max_size: Some(2030), added: 4505, mode: MaxEncodedLen) + /// Storage: ParachainStaking Unstaking (r:1 w:1) + /// Proof: ParachainStaking Unstaking (max_values: None, max_size: Some(241), added: 2716, mode: MaxEncodedLen) + /// Storage: ParachainStaking TopCandidates (r:1 w:1) + /// Proof: ParachainStaking TopCandidates (max_values: Some(1), max_size: Some(1921), added: 2416, mode: MaxEncodedLen) + /// Storage: ParachainStaking MaxSelectedCandidates (r:1 w:0) + /// Proof: ParachainStaking MaxSelectedCandidates (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: ParachainStaking TotalCollatorStake (r:1 w:1) + /// Proof: ParachainStaking TotalCollatorStake (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) + /// Storage: ParachainStaking RewardCount (r:41 w:41) + /// Proof: ParachainStaking RewardCount (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) + /// Storage: ParachainStaking Rewards (r:1 w:1) + /// Proof: ParachainStaking Rewards (max_values: None, max_size: Some(56), added: 2531, mode: MaxEncodedLen) + /// Storage: ParachainStaking InflationConfig (r:1 w:0) + /// Proof: ParachainStaking InflationConfig (max_values: Some(1), max_size: Some(96), added: 591, mode: MaxEncodedLen) /// The range of component `n` is `[1, 39]`. /// The range of component `m` is `[0, 40]`. fn candidate_stake_less(n: u32, m: u32, ) -> Weight { // Proof Size summary in bytes: // Measured: `0 + m * (442 ±0) + n * (276 ±0)` // Estimated: `5495 + m * (2519 ±0)` - // Minimum execution time: 40_000_000 picoseconds. - Weight::from_parts(41_000_000, 5495) - // Standard Error: 22_900 - .saturating_add(Weight::from_parts(607_538, 0).saturating_mul(n.into())) - // Standard Error: 22_395 - .saturating_add(Weight::from_parts(5_807_168, 0).saturating_mul(m.into())) + // Minimum execution time: 49_000_000 picoseconds. + Weight::from_parts(51_000_000, 5495) + // Standard Error: 21_036 + .saturating_add(Weight::from_parts(521_323, 0).saturating_mul(n.into())) + // Standard Error: 20_572 + .saturating_add(Weight::from_parts(6_885_083, 0).saturating_mul(m.into())) .saturating_add(T::DbWeight::get().reads(8_u64)) .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(m.into()))) .saturating_add(T::DbWeight::get().writes(6_u64)) .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(m.into()))) .saturating_add(Weight::from_parts(0, 2519).saturating_mul(m.into())) } - /// Storage: `System::Account` (r:1 w:1) - /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::DelegatorState` (r:1 w:1) - /// Proof: `ParachainStaking::DelegatorState` (`max_values`: None, `max_size`: Some(89), added: 2564, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::CandidatePool` (r:2 w:1) - /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::Unstaking` (r:1 w:1) - /// Proof: `ParachainStaking::Unstaking` (`max_values`: None, `max_size`: Some(241), added: 2716, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::LastDelegation` (r:1 w:1) - /// Proof: `ParachainStaking::LastDelegation` (`max_values`: None, `max_size`: Some(48), added: 2523, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::Round` (r:1 w:0) - /// Proof: `ParachainStaking::Round` (`max_values`: Some(1), `max_size`: Some(12), added: 507, mode: `MaxEncodedLen`) - /// Storage: `Balances::Locks` (r:1 w:1) - /// Proof: `Balances::Locks` (`max_values`: None, `max_size`: Some(1299), added: 3774, mode: `MaxEncodedLen`) - /// Storage: `Balances::Freezes` (r:1 w:0) - /// Proof: `Balances::Freezes` (`max_values`: None, `max_size`: Some(49), added: 2524, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TopCandidates` (r:1 w:1) - /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:0) - /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) - /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::RewardCount` (r:1 w:1) - /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) + /// Storage: ParachainStaking DelegatorState (r:1 w:1) + /// Proof: ParachainStaking DelegatorState (max_values: None, max_size: Some(89), added: 2564, mode: MaxEncodedLen) + /// Storage: ParachainStaking CandidatePool (r:2 w:1) + /// Proof: ParachainStaking CandidatePool (max_values: None, max_size: Some(2030), added: 4505, mode: MaxEncodedLen) + /// Storage: ParachainStaking Unstaking (r:1 w:1) + /// Proof: ParachainStaking Unstaking (max_values: None, max_size: Some(241), added: 2716, mode: MaxEncodedLen) + /// Storage: ParachainStaking LastDelegation (r:1 w:1) + /// Proof: ParachainStaking LastDelegation (max_values: None, max_size: Some(48), added: 2523, mode: MaxEncodedLen) + /// Storage: ParachainStaking Round (r:1 w:0) + /// Proof: ParachainStaking Round (max_values: Some(1), max_size: Some(12), added: 507, mode: MaxEncodedLen) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1299), added: 3774, mode: MaxEncodedLen) + /// Storage: Balances Freezes (r:1 w:0) + /// Proof: Balances Freezes (max_values: None, max_size: Some(49), added: 2524, mode: MaxEncodedLen) + /// Storage: ParachainStaking TopCandidates (r:1 w:1) + /// Proof: ParachainStaking TopCandidates (max_values: Some(1), max_size: Some(1921), added: 2416, mode: MaxEncodedLen) + /// Storage: ParachainStaking MaxSelectedCandidates (r:1 w:0) + /// Proof: ParachainStaking MaxSelectedCandidates (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: ParachainStaking TotalCollatorStake (r:1 w:1) + /// Proof: ParachainStaking TotalCollatorStake (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) + /// Storage: ParachainStaking RewardCount (r:1 w:1) + /// Proof: ParachainStaking RewardCount (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) /// The range of component `n` is `[1, 40]`. /// The range of component `m` is `[1, 39]`. fn join_delegators(n: u32, m: u32, ) -> Weight { // Proof Size summary in bytes: // Measured: `3555 + m * (113 ±0) + n * (94 ±0)` // Estimated: `10000` - // Minimum execution time: 71_000_000 picoseconds. - Weight::from_parts(42_188_416, 10000) - // Standard Error: 19_323 - .saturating_add(Weight::from_parts(837_613, 0).saturating_mul(n.into())) - // Standard Error: 19_843 - .saturating_add(Weight::from_parts(739_876, 0).saturating_mul(m.into())) + // Minimum execution time: 88_000_000 picoseconds. + Weight::from_parts(61_230_042, 10000) + // Standard Error: 15_096 + .saturating_add(Weight::from_parts(734_668, 0).saturating_mul(n.into())) + // Standard Error: 15_502 + .saturating_add(Weight::from_parts(720_729, 0).saturating_mul(m.into())) .saturating_add(T::DbWeight::get().reads(13_u64)) .saturating_add(T::DbWeight::get().writes(9_u64)) } - /// Storage: `ParachainStaking::DelegatorState` (r:1 w:1) - /// Proof: `ParachainStaking::DelegatorState` (`max_values`: None, `max_size`: Some(89), added: 2564, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::CandidatePool` (r:1 w:1) - /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) - /// Storage: `System::Account` (r:1 w:1) - /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::Unstaking` (r:1 w:1) - /// Proof: `ParachainStaking::Unstaking` (`max_values`: None, `max_size`: Some(241), added: 2716, mode: `MaxEncodedLen`) - /// Storage: `Balances::Locks` (r:1 w:1) - /// Proof: `Balances::Locks` (`max_values`: None, `max_size`: Some(1299), added: 3774, mode: `MaxEncodedLen`) - /// Storage: `Balances::Freezes` (r:1 w:0) - /// Proof: `Balances::Freezes` (`max_values`: None, `max_size`: Some(49), added: 2524, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TopCandidates` (r:1 w:1) - /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:0) - /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) - /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::RewardCount` (r:2 w:0) - /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) + /// Storage: ParachainStaking DelegatorState (r:1 w:1) + /// Proof: ParachainStaking DelegatorState (max_values: None, max_size: Some(89), added: 2564, mode: MaxEncodedLen) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof: ParachainStaking CandidatePool (max_values: None, max_size: Some(2030), added: 4505, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) + /// Storage: ParachainStaking Unstaking (r:1 w:1) + /// Proof: ParachainStaking Unstaking (max_values: None, max_size: Some(241), added: 2716, mode: MaxEncodedLen) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1299), added: 3774, mode: MaxEncodedLen) + /// Storage: Balances Freezes (r:1 w:0) + /// Proof: Balances Freezes (max_values: None, max_size: Some(49), added: 2524, mode: MaxEncodedLen) + /// Storage: ParachainStaking TopCandidates (r:1 w:1) + /// Proof: ParachainStaking TopCandidates (max_values: Some(1), max_size: Some(1921), added: 2416, mode: MaxEncodedLen) + /// Storage: ParachainStaking MaxSelectedCandidates (r:1 w:0) + /// Proof: ParachainStaking MaxSelectedCandidates (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: ParachainStaking TotalCollatorStake (r:1 w:1) + /// Proof: ParachainStaking TotalCollatorStake (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) + /// Storage: ParachainStaking RewardCount (r:2 w:0) + /// Proof: ParachainStaking RewardCount (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) /// The range of component `n` is `[1, 40]`. /// The range of component `m` is `[1, 39]`. /// The range of component `u` is `[1, 9]`. @@ -491,186 +462,186 @@ impl WeightInfo for SubstrateWeight { // Proof Size summary in bytes: // Measured: `3904 + m * (93 ±0) + n * (90 ±0) + u * (20 ±0)` // Estimated: `6028` - // Minimum execution time: 63_000_000 picoseconds. - Weight::from_parts(36_308_645, 6028) - // Standard Error: 25_597 - .saturating_add(Weight::from_parts(819_777, 0).saturating_mul(n.into())) - // Standard Error: 26_284 - .saturating_add(Weight::from_parts(902_701, 0).saturating_mul(m.into())) + // Minimum execution time: 76_000_000 picoseconds. + Weight::from_parts(60_272_765, 6028) + // Standard Error: 16_056 + .saturating_add(Weight::from_parts(661_873, 0).saturating_mul(n.into())) + // Standard Error: 16_487 + .saturating_add(Weight::from_parts(741_269, 0).saturating_mul(m.into())) .saturating_add(T::DbWeight::get().reads(11_u64)) .saturating_add(T::DbWeight::get().writes(7_u64)) } - /// Storage: `ParachainStaking::DelegatorState` (r:1 w:1) - /// Proof: `ParachainStaking::DelegatorState` (`max_values`: None, `max_size`: Some(89), added: 2564, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::CandidatePool` (r:1 w:1) - /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::Unstaking` (r:1 w:1) - /// Proof: `ParachainStaking::Unstaking` (`max_values`: None, `max_size`: Some(241), added: 2716, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TopCandidates` (r:1 w:1) - /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:0) - /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) - /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::RewardCount` (r:2 w:0) - /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) + /// Storage: ParachainStaking DelegatorState (r:1 w:1) + /// Proof: ParachainStaking DelegatorState (max_values: None, max_size: Some(89), added: 2564, mode: MaxEncodedLen) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof: ParachainStaking CandidatePool (max_values: None, max_size: Some(2030), added: 4505, mode: MaxEncodedLen) + /// Storage: ParachainStaking Unstaking (r:1 w:1) + /// Proof: ParachainStaking Unstaking (max_values: None, max_size: Some(241), added: 2716, mode: MaxEncodedLen) + /// Storage: ParachainStaking TopCandidates (r:1 w:1) + /// Proof: ParachainStaking TopCandidates (max_values: Some(1), max_size: Some(1921), added: 2416, mode: MaxEncodedLen) + /// Storage: ParachainStaking MaxSelectedCandidates (r:1 w:0) + /// Proof: ParachainStaking MaxSelectedCandidates (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: ParachainStaking TotalCollatorStake (r:1 w:1) + /// Proof: ParachainStaking TotalCollatorStake (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) + /// Storage: ParachainStaking RewardCount (r:2 w:0) + /// Proof: ParachainStaking RewardCount (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) /// The range of component `n` is `[1, 40]`. /// The range of component `m` is `[1, 39]`. fn delegator_stake_less(n: u32, m: u32, ) -> Weight { // Proof Size summary in bytes: // Measured: `3155 + m * (74 ±0) + n * (74 ±0)` // Estimated: `6028` - // Minimum execution time: 43_000_000 picoseconds. - Weight::from_parts(14_073_064, 6028) - // Standard Error: 22_457 - .saturating_add(Weight::from_parts(769_795, 0).saturating_mul(n.into())) - // Standard Error: 23_061 - .saturating_add(Weight::from_parts(803_601, 0).saturating_mul(m.into())) + // Minimum execution time: 51_000_000 picoseconds. + Weight::from_parts(24_450_456, 6028) + // Standard Error: 13_176 + .saturating_add(Weight::from_parts(649_197, 0).saturating_mul(n.into())) + // Standard Error: 13_530 + .saturating_add(Weight::from_parts(772_252, 0).saturating_mul(m.into())) .saturating_add(T::DbWeight::get().reads(8_u64)) .saturating_add(T::DbWeight::get().writes(5_u64)) } - /// Storage: `ParachainStaking::DelegatorState` (r:1 w:1) - /// Proof: `ParachainStaking::DelegatorState` (`max_values`: None, `max_size`: Some(89), added: 2564, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::CandidatePool` (r:1 w:1) - /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::RewardCount` (r:2 w:0) - /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::Unstaking` (r:1 w:1) - /// Proof: `ParachainStaking::Unstaking` (`max_values`: None, `max_size`: Some(241), added: 2716, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TopCandidates` (r:1 w:1) - /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:0) - /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) - /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) + /// Storage: ParachainStaking DelegatorState (r:1 w:1) + /// Proof: ParachainStaking DelegatorState (max_values: None, max_size: Some(89), added: 2564, mode: MaxEncodedLen) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof: ParachainStaking CandidatePool (max_values: None, max_size: Some(2030), added: 4505, mode: MaxEncodedLen) + /// Storage: ParachainStaking RewardCount (r:2 w:0) + /// Proof: ParachainStaking RewardCount (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) + /// Storage: ParachainStaking Unstaking (r:1 w:1) + /// Proof: ParachainStaking Unstaking (max_values: None, max_size: Some(241), added: 2716, mode: MaxEncodedLen) + /// Storage: ParachainStaking TopCandidates (r:1 w:1) + /// Proof: ParachainStaking TopCandidates (max_values: Some(1), max_size: Some(1921), added: 2416, mode: MaxEncodedLen) + /// Storage: ParachainStaking MaxSelectedCandidates (r:1 w:0) + /// Proof: ParachainStaking MaxSelectedCandidates (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: ParachainStaking TotalCollatorStake (r:1 w:1) + /// Proof: ParachainStaking TotalCollatorStake (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) /// The range of component `n` is `[1, 40]`. /// The range of component `m` is `[1, 39]`. fn leave_delegators(n: u32, m: u32, ) -> Weight { // Proof Size summary in bytes: // Measured: `3155 + m * (74 ±0) + n * (74 ±0)` // Estimated: `6028` - // Minimum execution time: 46_000_000 picoseconds. - Weight::from_parts(23_362_096, 6028) - // Standard Error: 19_512 - .saturating_add(Weight::from_parts(765_668, 0).saturating_mul(n.into())) - // Standard Error: 20_036 - .saturating_add(Weight::from_parts(601_373, 0).saturating_mul(m.into())) + // Minimum execution time: 56_000_000 picoseconds. + Weight::from_parts(30_920_715, 6028) + // Standard Error: 15_455 + .saturating_add(Weight::from_parts(670_189, 0).saturating_mul(n.into())) + // Standard Error: 15_870 + .saturating_add(Weight::from_parts(634_001, 0).saturating_mul(m.into())) .saturating_add(T::DbWeight::get().reads(8_u64)) .saturating_add(T::DbWeight::get().writes(5_u64)) } - /// Storage: `ParachainStaking::Unstaking` (r:1 w:1) - /// Proof: `ParachainStaking::Unstaking` (`max_values`: None, `max_size`: Some(241), added: 2716, mode: `MaxEncodedLen`) - /// Storage: `Balances::Locks` (r:1 w:1) - /// Proof: `Balances::Locks` (`max_values`: None, `max_size`: Some(1299), added: 3774, mode: `MaxEncodedLen`) - /// Storage: `Balances::Freezes` (r:1 w:0) - /// Proof: `Balances::Freezes` (`max_values`: None, `max_size`: Some(49), added: 2524, mode: `MaxEncodedLen`) - /// Storage: `System::Account` (r:1 w:1) - /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) + /// Storage: ParachainStaking Unstaking (r:1 w:1) + /// Proof: ParachainStaking Unstaking (max_values: None, max_size: Some(241), added: 2716, mode: MaxEncodedLen) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1299), added: 3774, mode: MaxEncodedLen) + /// Storage: Balances Freezes (r:1 w:0) + /// Proof: Balances Freezes (max_values: None, max_size: Some(49), added: 2524, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) /// The range of component `u` is `[1, 9]`. fn unlock_unstaked(u: u32, ) -> Weight { // Proof Size summary in bytes: // Measured: `1076 + u * (20 ±0)` // Estimated: `4764` - // Minimum execution time: 28_000_000 picoseconds. - Weight::from_parts(29_651_560, 4764) - // Standard Error: 8_901 - .saturating_add(Weight::from_parts(141_690, 0).saturating_mul(u.into())) + // Minimum execution time: 36_000_000 picoseconds. + Weight::from_parts(38_811_600, 4764) + // Standard Error: 17_278 + .saturating_add(Weight::from_parts(132_831, 0).saturating_mul(u.into())) .saturating_add(T::DbWeight::get().reads(4_u64)) .saturating_add(T::DbWeight::get().writes(3_u64)) } - /// Storage: `ParachainStaking::MaxCollatorCandidateStake` (r:0 w:1) - /// Proof: `ParachainStaking::MaxCollatorCandidateStake` (`max_values`: Some(1), `max_size`: Some(16), added: 511, mode: `MaxEncodedLen`) + /// Storage: ParachainStaking MaxCollatorCandidateStake (r:0 w:1) + /// Proof: ParachainStaking MaxCollatorCandidateStake (max_values: Some(1), max_size: Some(16), added: 511, mode: MaxEncodedLen) fn set_max_candidate_stake() -> Weight { // Proof Size summary in bytes: // Measured: `0` // Estimated: `0` - // Minimum execution time: 5_000_000 picoseconds. - Weight::from_parts(6_000_000, 0) + // Minimum execution time: 8_000_000 picoseconds. + Weight::from_parts(14_000_000, 0) .saturating_add(T::DbWeight::get().writes(1_u64)) } - /// Storage: `ParachainStaking::DelegatorState` (r:1 w:0) - /// Proof: `ParachainStaking::DelegatorState` (`max_values`: None, `max_size`: Some(89), added: 2564, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::RewardCount` (r:2 w:1) - /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::Rewards` (r:1 w:1) - /// Proof: `ParachainStaking::Rewards` (`max_values`: None, `max_size`: Some(56), added: 2531, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:0) - /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::InflationConfig` (r:1 w:0) - /// Proof: `ParachainStaking::InflationConfig` (`max_values`: Some(1), `max_size`: Some(96), added: 591, mode: `MaxEncodedLen`) + /// Storage: ParachainStaking DelegatorState (r:1 w:0) + /// Proof: ParachainStaking DelegatorState (max_values: None, max_size: Some(89), added: 2564, mode: MaxEncodedLen) + /// Storage: ParachainStaking RewardCount (r:2 w:1) + /// Proof: ParachainStaking RewardCount (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) + /// Storage: ParachainStaking Rewards (r:1 w:1) + /// Proof: ParachainStaking Rewards (max_values: None, max_size: Some(56), added: 2531, mode: MaxEncodedLen) + /// Storage: ParachainStaking TotalCollatorStake (r:1 w:0) + /// Proof: ParachainStaking TotalCollatorStake (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) + /// Storage: ParachainStaking InflationConfig (r:1 w:0) + /// Proof: ParachainStaking InflationConfig (max_values: Some(1), max_size: Some(96), added: 591, mode: MaxEncodedLen) fn increment_delegator_rewards() -> Weight { // Proof Size summary in bytes: // Measured: `754` // Estimated: `6028` - // Minimum execution time: 21_000_000 picoseconds. - Weight::from_parts(21_000_000, 6028) + // Minimum execution time: 28_000_000 picoseconds. + Weight::from_parts(32_000_000, 6028) .saturating_add(T::DbWeight::get().reads(6_u64)) .saturating_add(T::DbWeight::get().writes(2_u64)) } - /// Storage: `ParachainStaking::CandidatePool` (r:1 w:0) - /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::RewardCount` (r:41 w:41) - /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::Rewards` (r:41 w:41) - /// Proof: `ParachainStaking::Rewards` (`max_values`: None, `max_size`: Some(56), added: 2531, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:0) - /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::InflationConfig` (r:1 w:0) - /// Proof: `ParachainStaking::InflationConfig` (`max_values`: Some(1), `max_size`: Some(96), added: 591, mode: `MaxEncodedLen`) + /// Storage: ParachainStaking CandidatePool (r:1 w:0) + /// Proof: ParachainStaking CandidatePool (max_values: None, max_size: Some(2030), added: 4505, mode: MaxEncodedLen) + /// Storage: ParachainStaking RewardCount (r:41 w:41) + /// Proof: ParachainStaking RewardCount (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) + /// Storage: ParachainStaking Rewards (r:41 w:41) + /// Proof: ParachainStaking Rewards (max_values: None, max_size: Some(56), added: 2531, mode: MaxEncodedLen) + /// Storage: ParachainStaking TotalCollatorStake (r:1 w:0) + /// Proof: ParachainStaking TotalCollatorStake (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) + /// Storage: ParachainStaking InflationConfig (r:1 w:0) + /// Proof: ParachainStaking InflationConfig (max_values: Some(1), max_size: Some(96), added: 591, mode: MaxEncodedLen) /// The range of component `m` is `[1, 40]`. fn increment_collator_rewards(m: u32, ) -> Weight { // Proof Size summary in bytes: // Measured: `855 + m * (98 ±0)` // Estimated: `5495 + m * (2531 ±0)` - // Minimum execution time: 29_000_000 picoseconds. - Weight::from_parts(17_699_443, 5495) - // Standard Error: 16_885 - .saturating_add(Weight::from_parts(9_588_938, 0).saturating_mul(m.into())) + // Minimum execution time: 37_000_000 picoseconds. + Weight::from_parts(28_721_195, 5495) + // Standard Error: 18_671 + .saturating_add(Weight::from_parts(11_788_351, 0).saturating_mul(m.into())) .saturating_add(T::DbWeight::get().reads(5_u64)) .saturating_add(T::DbWeight::get().reads((2_u64).saturating_mul(m.into()))) .saturating_add(T::DbWeight::get().writes(2_u64)) .saturating_add(T::DbWeight::get().writes((2_u64).saturating_mul(m.into()))) .saturating_add(Weight::from_parts(0, 2531).saturating_mul(m.into())) } - /// Storage: `ParachainStaking::Rewards` (r:1 w:1) - /// Proof: `ParachainStaking::Rewards` (`max_values`: None, `max_size`: Some(56), added: 2531, mode: `MaxEncodedLen`) - /// Storage: `System::Account` (r:1 w:1) - /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) + /// Storage: ParachainStaking Rewards (r:1 w:1) + /// Proof: ParachainStaking Rewards (max_values: None, max_size: Some(56), added: 2531, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) fn claim_rewards() -> Weight { // Proof Size summary in bytes: // Measured: `575` // Estimated: `3593` - // Minimum execution time: 22_000_000 picoseconds. - Weight::from_parts(23_000_000, 3593) + // Minimum execution time: 30_000_000 picoseconds. + Weight::from_parts(31_000_000, 3593) .saturating_add(T::DbWeight::get().reads(2_u64)) .saturating_add(T::DbWeight::get().writes(2_u64)) } - /// Storage: `ParachainStaking::LastRewardReduction` (r:1 w:1) - /// Proof: `ParachainStaking::LastRewardReduction` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::InflationConfig` (r:1 w:1) - /// Proof: `ParachainStaking::InflationConfig` (`max_values`: Some(1), `max_size`: Some(96), added: 591, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::CandidatePool` (r:41 w:0) - /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::RewardCount` (r:1640 w:1640) - /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::Rewards` (r:40 w:40) - /// Proof: `ParachainStaking::Rewards` (`max_values`: None, `max_size`: Some(56), added: 2531, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:0) - /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::CounterForCandidatePool` (r:1 w:0) - /// Proof: `ParachainStaking::CounterForCandidatePool` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// Storage: ParachainStaking LastRewardReduction (r:1 w:1) + /// Proof: ParachainStaking LastRewardReduction (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: ParachainStaking InflationConfig (r:1 w:1) + /// Proof: ParachainStaking InflationConfig (max_values: Some(1), max_size: Some(96), added: 591, mode: MaxEncodedLen) + /// Storage: ParachainStaking CandidatePool (r:41 w:0) + /// Proof: ParachainStaking CandidatePool (max_values: None, max_size: Some(2030), added: 4505, mode: MaxEncodedLen) + /// Storage: ParachainStaking RewardCount (r:1640 w:1640) + /// Proof: ParachainStaking RewardCount (max_values: None, max_size: Some(44), added: 2519, mode: MaxEncodedLen) + /// Storage: ParachainStaking Rewards (r:40 w:40) + /// Proof: ParachainStaking Rewards (max_values: None, max_size: Some(56), added: 2531, mode: MaxEncodedLen) + /// Storage: ParachainStaking TotalCollatorStake (r:1 w:0) + /// Proof: ParachainStaking TotalCollatorStake (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) + /// Storage: ParachainStaking CounterForCandidatePool (r:1 w:0) + /// Proof: ParachainStaking CounterForCandidatePool (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) /// The range of component `n` is `[0, 40]`. /// The range of component `m` is `[0, 40]`. fn execute_scheduled_reward_change(n: u32, m: u32, ) -> Weight { // Proof Size summary in bytes: // Measured: `0 + m * (3891 ±0) + n * (3991 ±0)` - // Estimated: `101750 + m * (37911 ±1_054) + n * (33703 ±9)` - // Minimum execution time: 420_000_000 picoseconds. - Weight::from_parts(431_000_000, 101750) - // Standard Error: 2_590_217 - .saturating_add(Weight::from_parts(78_634_433, 0).saturating_mul(n.into())) - // Standard Error: 2_590_217 - .saturating_add(Weight::from_parts(78_105_543, 0).saturating_mul(m.into())) + // Estimated: `101750 + m * (37911 ±1_054) + n * (33703 ±16)` + // Minimum execution time: 525_000_000 picoseconds. + Weight::from_parts(530_000_000, 101750) + // Standard Error: 2_947_301 + .saturating_add(Weight::from_parts(89_026_856, 0).saturating_mul(n.into())) + // Standard Error: 2_947_301 + .saturating_add(Weight::from_parts(90_345_662, 0).saturating_mul(m.into())) .saturating_add(T::DbWeight::get().reads(125_u64)) .saturating_add(T::DbWeight::get().reads((14_u64).saturating_mul(n.into()))) .saturating_add(T::DbWeight::get().reads((14_u64).saturating_mul(m.into()))) @@ -680,622 +651,4 @@ impl WeightInfo for SubstrateWeight { .saturating_add(Weight::from_parts(0, 37911).saturating_mul(m.into())) .saturating_add(Weight::from_parts(0, 33703).saturating_mul(n.into())) } -} - -// For backwards compatibility and tests -impl WeightInfo for () { - /// Storage: `ParachainStaking::Round` (r:1 w:0) - /// Proof: `ParachainStaking::Round` (`max_values`: Some(1), `max_size`: Some(12), added: 507, mode: `MaxEncodedLen`) - fn on_initialize_no_action() -> Weight { - // Proof Size summary in bytes: - // Measured: `427` - // Estimated: `1497` - // Minimum execution time: 3_000_000 picoseconds. - Weight::from_parts(4_000_000, 1497) - .saturating_add(RocksDbWeight::get().reads(1_u64)) - } - /// Storage: `ParachainStaking::Round` (r:1 w:1) - /// Proof: `ParachainStaking::Round` (`max_values`: Some(1), `max_size`: Some(12), added: 507, mode: `MaxEncodedLen`) - fn on_initialize_round_update() -> Weight { - // Proof Size summary in bytes: - // Measured: `427` - // Estimated: `1497` - // Minimum execution time: 7_000_000 picoseconds. - Weight::from_parts(8_000_000, 1497) - .saturating_add(RocksDbWeight::get().reads(1_u64)) - .saturating_add(RocksDbWeight::get().writes(1_u64)) - } - /// Storage: `ParachainStaking::Round` (r:1 w:0) - /// Proof: `ParachainStaking::Round` (`max_values`: Some(1), `max_size`: Some(12), added: 507, mode: `MaxEncodedLen`) - fn on_initialize_network_rewards() -> Weight { - // Proof Size summary in bytes: - // Measured: `427` - // Estimated: `1497` - // Minimum execution time: 3_000_000 picoseconds. - Weight::from_parts(4_000_000, 1497) - .saturating_add(RocksDbWeight::get().reads(1_u64)) - } - /// Storage: `ParachainStaking::ForceNewRound` (r:0 w:1) - /// Proof: `ParachainStaking::ForceNewRound` (`max_values`: Some(1), `max_size`: Some(1), added: 496, mode: `MaxEncodedLen`) - fn force_new_round() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 2_000_000 picoseconds. - Weight::from_parts(2_000_000, 0) - .saturating_add(RocksDbWeight::get().writes(1_u64)) - } - /// Storage: `ParachainStaking::CandidatePool` (r:41 w:0) - /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::RewardCount` (r:1640 w:1640) - /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::Rewards` (r:40 w:40) - /// Proof: `ParachainStaking::Rewards` (`max_values`: None, `max_size`: Some(56), added: 2531, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:0) - /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::InflationConfig` (r:1 w:1) - /// Proof: `ParachainStaking::InflationConfig` (`max_values`: Some(1), `max_size`: Some(96), added: 591, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::CounterForCandidatePool` (r:1 w:0) - /// Proof: `ParachainStaking::CounterForCandidatePool` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) - /// The range of component `n` is `[0, 40]`. - /// The range of component `m` is `[0, 40]`. - fn set_inflation(n: u32, m: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `0 + m * (3891 ±0) + n * (4052 ±0)` - // Estimated: `101750 + m * (37911 ±1_054) + n * (33703 ±9)` - // Minimum execution time: 462_000_000 picoseconds. - Weight::from_parts(474_000_000, 101750) - // Standard Error: 2_594_253 - .saturating_add(Weight::from_parts(78_871_861, 0).saturating_mul(n.into())) - // Standard Error: 2_594_253 - .saturating_add(Weight::from_parts(73_821_932, 0).saturating_mul(m.into())) - .saturating_add(RocksDbWeight::get().reads(124_u64)) - .saturating_add(RocksDbWeight::get().reads((14_u64).saturating_mul(n.into()))) - .saturating_add(RocksDbWeight::get().reads((14_u64).saturating_mul(m.into()))) - .saturating_add(RocksDbWeight::get().writes(81_u64)) - .saturating_add(RocksDbWeight::get().writes((14_u64).saturating_mul(n.into()))) - .saturating_add(RocksDbWeight::get().writes((14_u64).saturating_mul(m.into()))) - .saturating_add(Weight::from_parts(0, 37911).saturating_mul(m.into())) - .saturating_add(Weight::from_parts(0, 33703).saturating_mul(n.into())) - } - /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:1) - /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TopCandidates` (r:1 w:0) - /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) - /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) - /// The range of component `n` is `[8, 40]`. - /// The range of component `m` is `[0, 40]`. - fn set_max_selected_candidates(n: u32, m: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `434 + n * (48 ±0)` - // Estimated: `3406` - // Minimum execution time: 15_000_000 picoseconds. - Weight::from_parts(4_148_612, 3406) - // Standard Error: 14_990 - .saturating_add(Weight::from_parts(341_567, 0).saturating_mul(n.into())) - // Standard Error: 12_042 - .saturating_add(Weight::from_parts(373_225, 0).saturating_mul(m.into())) - .saturating_add(RocksDbWeight::get().reads(3_u64)) - .saturating_add(RocksDbWeight::get().writes(2_u64)) - } - /// Storage: `ParachainStaking::Round` (r:1 w:1) - /// Proof: `ParachainStaking::Round` (`max_values`: Some(1), `max_size`: Some(12), added: 507, mode: `MaxEncodedLen`) - fn set_blocks_per_round() -> Weight { - // Proof Size summary in bytes: - // Measured: `427` - // Estimated: `1497` - // Minimum execution time: 10_000_000 picoseconds. - Weight::from_parts(10_000_000, 1497) - .saturating_add(RocksDbWeight::get().reads(1_u64)) - .saturating_add(RocksDbWeight::get().writes(1_u64)) - } - /// Storage: `ParachainStaking::CandidatePool` (r:40 w:1) - /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TopCandidates` (r:1 w:1) - /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::Unstaking` (r:41 w:41) - /// Proof: `ParachainStaking::Unstaking` (`max_values`: None, `max_size`: Some(241), added: 2716, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::DelegatorState` (r:40 w:40) - /// Proof: `ParachainStaking::DelegatorState` (`max_values`: None, `max_size`: Some(89), added: 2564, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::RewardCount` (r:41 w:41) - /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::Rewards` (r:1 w:1) - /// Proof: `ParachainStaking::Rewards` (`max_values`: None, `max_size`: Some(56), added: 2531, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) - /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::InflationConfig` (r:1 w:0) - /// Proof: `ParachainStaking::InflationConfig` (`max_values`: Some(1), `max_size`: Some(96), added: 591, mode: `MaxEncodedLen`) - /// Storage: `Session::Validators` (r:1 w:0) - /// Proof: `Session::Validators` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) - /// Storage: `Session::DisabledValidators` (r:1 w:1) - /// Proof: `Session::DisabledValidators` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) - /// Storage: `System::Digest` (r:1 w:1) - /// Proof: `System::Digest` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) - /// Storage: `ParachainStaking::CounterForCandidatePool` (r:1 w:1) - /// Proof: `ParachainStaking::CounterForCandidatePool` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:0) - /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) - /// The range of component `n` is `[9, 40]`. - /// The range of component `m` is `[0, 40]`. - fn force_remove_candidate(n: u32, m: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `0 + m * (3143 ±0) + n * (2723 ±0)` - // Estimated: `9446 + m * (2716 ±0) + n * (4505 ±27)` - // Minimum execution time: 148_000_000 picoseconds. - Weight::from_parts(150_000_000, 9446) - // Standard Error: 75_916 - .saturating_add(Weight::from_parts(1_928_052, 0).saturating_mul(n.into())) - // Standard Error: 78_382 - .saturating_add(Weight::from_parts(15_539_211, 0).saturating_mul(m.into())) - .saturating_add(RocksDbWeight::get().reads(11_u64)) - .saturating_add(RocksDbWeight::get().reads((1_u64).saturating_mul(n.into()))) - .saturating_add(RocksDbWeight::get().reads((3_u64).saturating_mul(m.into()))) - .saturating_add(RocksDbWeight::get().writes(9_u64)) - .saturating_add(RocksDbWeight::get().writes((3_u64).saturating_mul(m.into()))) - .saturating_add(Weight::from_parts(0, 2716).saturating_mul(m.into())) - .saturating_add(Weight::from_parts(0, 4505).saturating_mul(n.into())) - } - /// Storage: `ParachainStaking::CandidatePool` (r:1 w:1) - /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::DelegatorState` (r:1 w:0) - /// Proof: `ParachainStaking::DelegatorState` (`max_values`: None, `max_size`: Some(89), added: 2564, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::MaxCollatorCandidateStake` (r:1 w:0) - /// Proof: `ParachainStaking::MaxCollatorCandidateStake` (`max_values`: Some(1), `max_size`: Some(16), added: 511, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::Unstaking` (r:1 w:1) - /// Proof: `ParachainStaking::Unstaking` (`max_values`: None, `max_size`: Some(241), added: 2716, mode: `MaxEncodedLen`) - /// Storage: `System::Account` (r:1 w:1) - /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) - /// Storage: `Balances::Locks` (r:1 w:1) - /// Proof: `Balances::Locks` (`max_values`: None, `max_size`: Some(1299), added: 3774, mode: `MaxEncodedLen`) - /// Storage: `Balances::Freezes` (r:1 w:0) - /// Proof: `Balances::Freezes` (`max_values`: None, `max_size`: Some(49), added: 2524, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TopCandidates` (r:1 w:1) - /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:0) - /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) - /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::CounterForCandidatePool` (r:1 w:1) - /// Proof: `ParachainStaking::CounterForCandidatePool` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) - /// The range of component `n` is `[1, 39]`. - /// The range of component `m` is `[0, 40]`. - fn join_candidates(n: u32, m: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `2158 + m * (45 ±0) + n * (86 ±0)` - // Estimated: `5495` - // Minimum execution time: 56_000_000 picoseconds. - Weight::from_parts(40_436_003, 5495) - // Standard Error: 16_446 - .saturating_add(Weight::from_parts(578_484, 0).saturating_mul(n.into())) - // Standard Error: 15_636 - .saturating_add(Weight::from_parts(644_742, 0).saturating_mul(m.into())) - .saturating_add(RocksDbWeight::get().reads(11_u64)) - .saturating_add(RocksDbWeight::get().writes(7_u64)) - } - /// Storage: `ParachainStaking::CandidatePool` (r:39 w:1) - /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TopCandidates` (r:1 w:1) - /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::Round` (r:1 w:0) - /// Proof: `ParachainStaking::Round` (`max_values`: Some(1), `max_size`: Some(12), added: 507, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:0) - /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) - /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) - /// The range of component `n` is `[9, 39]`. - /// The range of component `m` is `[0, 40]`. - fn init_leave_candidates(n: u32, m: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `0 + m * (1872 ±0) + n * (2082 ±0)` - // Estimated: `3406 + n * (4505 ±0)` - // Minimum execution time: 59_000_000 picoseconds. - Weight::from_parts(60_000_000, 3406) - // Standard Error: 27_936 - .saturating_add(Weight::from_parts(2_608_487, 0).saturating_mul(n.into())) - // Standard Error: 28_145 - .saturating_add(Weight::from_parts(61_894, 0).saturating_mul(m.into())) - .saturating_add(RocksDbWeight::get().reads(4_u64)) - .saturating_add(RocksDbWeight::get().reads((1_u64).saturating_mul(n.into()))) - .saturating_add(RocksDbWeight::get().writes(3_u64)) - .saturating_add(Weight::from_parts(0, 4505).saturating_mul(n.into())) - } - /// Storage: `ParachainStaking::CandidatePool` (r:2 w:1) - /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TopCandidates` (r:1 w:1) - /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:0) - /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) - /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) - /// The range of component `n` is `[9, 39]`. - /// The range of component `m` is `[0, 40]`. - fn cancel_leave_candidates(n: u32, m: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `758 + m * (96 ±0) + n * (59 ±0)` - // Estimated: `10000` - // Minimum execution time: 28_000_000 picoseconds. - Weight::from_parts(25_829_009, 10000) - // Standard Error: 17_664 - .saturating_add(Weight::from_parts(71_281, 0).saturating_mul(n.into())) - // Standard Error: 13_297 - .saturating_add(Weight::from_parts(393_707, 0).saturating_mul(m.into())) - .saturating_add(RocksDbWeight::get().reads(5_u64)) - .saturating_add(RocksDbWeight::get().writes(3_u64)) - } - /// Storage: `ParachainStaking::CandidatePool` (r:1 w:1) - /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::Round` (r:1 w:0) - /// Proof: `ParachainStaking::Round` (`max_values`: Some(1), `max_size`: Some(12), added: 507, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::Unstaking` (r:41 w:41) - /// Proof: `ParachainStaking::Unstaking` (`max_values`: None, `max_size`: Some(241), added: 2716, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::DelegatorState` (r:40 w:40) - /// Proof: `ParachainStaking::DelegatorState` (`max_values`: None, `max_size`: Some(89), added: 2564, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::RewardCount` (r:41 w:41) - /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::Rewards` (r:1 w:1) - /// Proof: `ParachainStaking::Rewards` (`max_values`: None, `max_size`: Some(56), added: 2531, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:0) - /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::InflationConfig` (r:1 w:0) - /// Proof: `ParachainStaking::InflationConfig` (`max_values`: Some(1), `max_size`: Some(96), added: 591, mode: `MaxEncodedLen`) - /// Storage: `Session::Validators` (r:1 w:0) - /// Proof: `Session::Validators` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) - /// Storage: `Session::DisabledValidators` (r:1 w:1) - /// Proof: `Session::DisabledValidators` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) - /// Storage: `System::Digest` (r:1 w:1) - /// Proof: `System::Digest` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) - /// Storage: `ParachainStaking::CounterForCandidatePool` (r:1 w:1) - /// Proof: `ParachainStaking::CounterForCandidatePool` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) - /// The range of component `n` is `[9, 39]`. - /// The range of component `m` is `[0, 40]`. - fn execute_leave_candidates(n: u32, m: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `0 + m * (1257 ±0) + n * (655 ±0)` - // Estimated: `5495 + m * (2716 ±0) + n * (213 ±6)` - // Minimum execution time: 45_000_000 picoseconds. - Weight::from_parts(46_000_000, 5495) - // Standard Error: 43_949 - .saturating_add(Weight::from_parts(904_864, 0).saturating_mul(n.into())) - // Standard Error: 44_277 - .saturating_add(Weight::from_parts(16_154_071, 0).saturating_mul(m.into())) - .saturating_add(RocksDbWeight::get().reads(11_u64)) - .saturating_add(RocksDbWeight::get().reads((3_u64).saturating_mul(m.into()))) - .saturating_add(RocksDbWeight::get().writes(7_u64)) - .saturating_add(RocksDbWeight::get().writes((3_u64).saturating_mul(m.into()))) - .saturating_add(Weight::from_parts(0, 2716).saturating_mul(m.into())) - .saturating_add(Weight::from_parts(0, 213).saturating_mul(n.into())) - } - /// Storage: `ParachainStaking::CandidatePool` (r:1 w:1) - /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::MaxCollatorCandidateStake` (r:1 w:0) - /// Proof: `ParachainStaking::MaxCollatorCandidateStake` (`max_values`: Some(1), `max_size`: Some(16), added: 511, mode: `MaxEncodedLen`) - /// Storage: `System::Account` (r:1 w:1) - /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::Unstaking` (r:1 w:1) - /// Proof: `ParachainStaking::Unstaking` (`max_values`: None, `max_size`: Some(241), added: 2716, mode: `MaxEncodedLen`) - /// Storage: `Balances::Locks` (r:1 w:1) - /// Proof: `Balances::Locks` (`max_values`: None, `max_size`: Some(1299), added: 3774, mode: `MaxEncodedLen`) - /// Storage: `Balances::Freezes` (r:1 w:0) - /// Proof: `Balances::Freezes` (`max_values`: None, `max_size`: Some(49), added: 2524, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TopCandidates` (r:1 w:1) - /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:0) - /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) - /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::RewardCount` (r:41 w:41) - /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::Rewards` (r:1 w:1) - /// Proof: `ParachainStaking::Rewards` (`max_values`: None, `max_size`: Some(56), added: 2531, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::InflationConfig` (r:1 w:0) - /// Proof: `ParachainStaking::InflationConfig` (`max_values`: Some(1), `max_size`: Some(96), added: 591, mode: `MaxEncodedLen`) - /// The range of component `n` is `[1, 39]`. - /// The range of component `m` is `[0, 40]`. - /// The range of component `u` is `[0, 9]`. - fn candidate_stake_more(n: u32, m: u32, _u: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `0 + m * (455 ±0) + n * (292 ±0) + u * (20 ±0)` - // Estimated: `5495 + m * (2519 ±0)` - // Minimum execution time: 62_000_000 picoseconds. - Weight::from_parts(16_178_203, 5495) - // Standard Error: 26_046 - .saturating_add(Weight::from_parts(1_454_280, 0).saturating_mul(n.into())) - // Standard Error: 24_764 - .saturating_add(Weight::from_parts(6_893_201, 0).saturating_mul(m.into())) - .saturating_add(RocksDbWeight::get().reads(12_u64)) - .saturating_add(RocksDbWeight::get().reads((1_u64).saturating_mul(m.into()))) - .saturating_add(RocksDbWeight::get().writes(8_u64)) - .saturating_add(RocksDbWeight::get().writes((1_u64).saturating_mul(m.into()))) - .saturating_add(Weight::from_parts(0, 2519).saturating_mul(m.into())) - } - /// Storage: `ParachainStaking::CandidatePool` (r:1 w:1) - /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::Unstaking` (r:1 w:1) - /// Proof: `ParachainStaking::Unstaking` (`max_values`: None, `max_size`: Some(241), added: 2716, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TopCandidates` (r:1 w:1) - /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:0) - /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) - /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::RewardCount` (r:41 w:41) - /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::Rewards` (r:1 w:1) - /// Proof: `ParachainStaking::Rewards` (`max_values`: None, `max_size`: Some(56), added: 2531, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::InflationConfig` (r:1 w:0) - /// Proof: `ParachainStaking::InflationConfig` (`max_values`: Some(1), `max_size`: Some(96), added: 591, mode: `MaxEncodedLen`) - /// The range of component `n` is `[1, 39]`. - /// The range of component `m` is `[0, 40]`. - fn candidate_stake_less(n: u32, m: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `0 + m * (442 ±0) + n * (276 ±0)` - // Estimated: `5495 + m * (2519 ±0)` - // Minimum execution time: 40_000_000 picoseconds. - Weight::from_parts(41_000_000, 5495) - // Standard Error: 22_900 - .saturating_add(Weight::from_parts(607_538, 0).saturating_mul(n.into())) - // Standard Error: 22_395 - .saturating_add(Weight::from_parts(5_807_168, 0).saturating_mul(m.into())) - .saturating_add(RocksDbWeight::get().reads(8_u64)) - .saturating_add(RocksDbWeight::get().reads((1_u64).saturating_mul(m.into()))) - .saturating_add(RocksDbWeight::get().writes(6_u64)) - .saturating_add(RocksDbWeight::get().writes((1_u64).saturating_mul(m.into()))) - .saturating_add(Weight::from_parts(0, 2519).saturating_mul(m.into())) - } - /// Storage: `System::Account` (r:1 w:1) - /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::DelegatorState` (r:1 w:1) - /// Proof: `ParachainStaking::DelegatorState` (`max_values`: None, `max_size`: Some(89), added: 2564, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::CandidatePool` (r:2 w:1) - /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::Unstaking` (r:1 w:1) - /// Proof: `ParachainStaking::Unstaking` (`max_values`: None, `max_size`: Some(241), added: 2716, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::LastDelegation` (r:1 w:1) - /// Proof: `ParachainStaking::LastDelegation` (`max_values`: None, `max_size`: Some(48), added: 2523, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::Round` (r:1 w:0) - /// Proof: `ParachainStaking::Round` (`max_values`: Some(1), `max_size`: Some(12), added: 507, mode: `MaxEncodedLen`) - /// Storage: `Balances::Locks` (r:1 w:1) - /// Proof: `Balances::Locks` (`max_values`: None, `max_size`: Some(1299), added: 3774, mode: `MaxEncodedLen`) - /// Storage: `Balances::Freezes` (r:1 w:0) - /// Proof: `Balances::Freezes` (`max_values`: None, `max_size`: Some(49), added: 2524, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TopCandidates` (r:1 w:1) - /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:0) - /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) - /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::RewardCount` (r:1 w:1) - /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) - /// The range of component `n` is `[1, 40]`. - /// The range of component `m` is `[1, 39]`. - fn join_delegators(n: u32, m: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `3555 + m * (113 ±0) + n * (94 ±0)` - // Estimated: `10000` - // Minimum execution time: 71_000_000 picoseconds. - Weight::from_parts(42_188_416, 10000) - // Standard Error: 19_323 - .saturating_add(Weight::from_parts(837_613, 0).saturating_mul(n.into())) - // Standard Error: 19_843 - .saturating_add(Weight::from_parts(739_876, 0).saturating_mul(m.into())) - .saturating_add(RocksDbWeight::get().reads(13_u64)) - .saturating_add(RocksDbWeight::get().writes(9_u64)) - } - /// Storage: `ParachainStaking::DelegatorState` (r:1 w:1) - /// Proof: `ParachainStaking::DelegatorState` (`max_values`: None, `max_size`: Some(89), added: 2564, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::CandidatePool` (r:1 w:1) - /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) - /// Storage: `System::Account` (r:1 w:1) - /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::Unstaking` (r:1 w:1) - /// Proof: `ParachainStaking::Unstaking` (`max_values`: None, `max_size`: Some(241), added: 2716, mode: `MaxEncodedLen`) - /// Storage: `Balances::Locks` (r:1 w:1) - /// Proof: `Balances::Locks` (`max_values`: None, `max_size`: Some(1299), added: 3774, mode: `MaxEncodedLen`) - /// Storage: `Balances::Freezes` (r:1 w:0) - /// Proof: `Balances::Freezes` (`max_values`: None, `max_size`: Some(49), added: 2524, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TopCandidates` (r:1 w:1) - /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:0) - /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) - /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::RewardCount` (r:2 w:0) - /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) - /// The range of component `n` is `[1, 40]`. - /// The range of component `m` is `[1, 39]`. - /// The range of component `u` is `[1, 9]`. - fn delegator_stake_more(n: u32, m: u32, _u: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `3904 + m * (93 ±0) + n * (90 ±0) + u * (20 ±0)` - // Estimated: `6028` - // Minimum execution time: 63_000_000 picoseconds. - Weight::from_parts(36_308_645, 6028) - // Standard Error: 25_597 - .saturating_add(Weight::from_parts(819_777, 0).saturating_mul(n.into())) - // Standard Error: 26_284 - .saturating_add(Weight::from_parts(902_701, 0).saturating_mul(m.into())) - .saturating_add(RocksDbWeight::get().reads(11_u64)) - .saturating_add(RocksDbWeight::get().writes(7_u64)) - } - /// Storage: `ParachainStaking::DelegatorState` (r:1 w:1) - /// Proof: `ParachainStaking::DelegatorState` (`max_values`: None, `max_size`: Some(89), added: 2564, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::CandidatePool` (r:1 w:1) - /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::Unstaking` (r:1 w:1) - /// Proof: `ParachainStaking::Unstaking` (`max_values`: None, `max_size`: Some(241), added: 2716, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TopCandidates` (r:1 w:1) - /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:0) - /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) - /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::RewardCount` (r:2 w:0) - /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) - /// The range of component `n` is `[1, 40]`. - /// The range of component `m` is `[1, 39]`. - fn delegator_stake_less(n: u32, m: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `3155 + m * (74 ±0) + n * (74 ±0)` - // Estimated: `6028` - // Minimum execution time: 43_000_000 picoseconds. - Weight::from_parts(14_073_064, 6028) - // Standard Error: 22_457 - .saturating_add(Weight::from_parts(769_795, 0).saturating_mul(n.into())) - // Standard Error: 23_061 - .saturating_add(Weight::from_parts(803_601, 0).saturating_mul(m.into())) - .saturating_add(RocksDbWeight::get().reads(8_u64)) - .saturating_add(RocksDbWeight::get().writes(5_u64)) - } - /// Storage: `ParachainStaking::DelegatorState` (r:1 w:1) - /// Proof: `ParachainStaking::DelegatorState` (`max_values`: None, `max_size`: Some(89), added: 2564, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::CandidatePool` (r:1 w:1) - /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::RewardCount` (r:2 w:0) - /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::Unstaking` (r:1 w:1) - /// Proof: `ParachainStaking::Unstaking` (`max_values`: None, `max_size`: Some(241), added: 2716, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TopCandidates` (r:1 w:1) - /// Proof: `ParachainStaking::TopCandidates` (`max_values`: Some(1), `max_size`: Some(1921), added: 2416, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::MaxSelectedCandidates` (r:1 w:0) - /// Proof: `ParachainStaking::MaxSelectedCandidates` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:1) - /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) - /// The range of component `n` is `[1, 40]`. - /// The range of component `m` is `[1, 39]`. - fn leave_delegators(n: u32, m: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `3155 + m * (74 ±0) + n * (74 ±0)` - // Estimated: `6028` - // Minimum execution time: 46_000_000 picoseconds. - Weight::from_parts(23_362_096, 6028) - // Standard Error: 19_512 - .saturating_add(Weight::from_parts(765_668, 0).saturating_mul(n.into())) - // Standard Error: 20_036 - .saturating_add(Weight::from_parts(601_373, 0).saturating_mul(m.into())) - .saturating_add(RocksDbWeight::get().reads(8_u64)) - .saturating_add(RocksDbWeight::get().writes(5_u64)) - } - /// Storage: `ParachainStaking::Unstaking` (r:1 w:1) - /// Proof: `ParachainStaking::Unstaking` (`max_values`: None, `max_size`: Some(241), added: 2716, mode: `MaxEncodedLen`) - /// Storage: `Balances::Locks` (r:1 w:1) - /// Proof: `Balances::Locks` (`max_values`: None, `max_size`: Some(1299), added: 3774, mode: `MaxEncodedLen`) - /// Storage: `Balances::Freezes` (r:1 w:0) - /// Proof: `Balances::Freezes` (`max_values`: None, `max_size`: Some(49), added: 2524, mode: `MaxEncodedLen`) - /// Storage: `System::Account` (r:1 w:1) - /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) - /// The range of component `u` is `[1, 9]`. - fn unlock_unstaked(u: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `1076 + u * (20 ±0)` - // Estimated: `4764` - // Minimum execution time: 28_000_000 picoseconds. - Weight::from_parts(29_651_560, 4764) - // Standard Error: 8_901 - .saturating_add(Weight::from_parts(141_690, 0).saturating_mul(u.into())) - .saturating_add(RocksDbWeight::get().reads(4_u64)) - .saturating_add(RocksDbWeight::get().writes(3_u64)) - } - /// Storage: `ParachainStaking::MaxCollatorCandidateStake` (r:0 w:1) - /// Proof: `ParachainStaking::MaxCollatorCandidateStake` (`max_values`: Some(1), `max_size`: Some(16), added: 511, mode: `MaxEncodedLen`) - fn set_max_candidate_stake() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 5_000_000 picoseconds. - Weight::from_parts(6_000_000, 0) - .saturating_add(RocksDbWeight::get().writes(1_u64)) - } - /// Storage: `ParachainStaking::DelegatorState` (r:1 w:0) - /// Proof: `ParachainStaking::DelegatorState` (`max_values`: None, `max_size`: Some(89), added: 2564, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::RewardCount` (r:2 w:1) - /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::Rewards` (r:1 w:1) - /// Proof: `ParachainStaking::Rewards` (`max_values`: None, `max_size`: Some(56), added: 2531, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:0) - /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::InflationConfig` (r:1 w:0) - /// Proof: `ParachainStaking::InflationConfig` (`max_values`: Some(1), `max_size`: Some(96), added: 591, mode: `MaxEncodedLen`) - fn increment_delegator_rewards() -> Weight { - // Proof Size summary in bytes: - // Measured: `754` - // Estimated: `6028` - // Minimum execution time: 21_000_000 picoseconds. - Weight::from_parts(21_000_000, 6028) - .saturating_add(RocksDbWeight::get().reads(6_u64)) - .saturating_add(RocksDbWeight::get().writes(2_u64)) - } - /// Storage: `ParachainStaking::CandidatePool` (r:1 w:0) - /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::RewardCount` (r:41 w:41) - /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::Rewards` (r:41 w:41) - /// Proof: `ParachainStaking::Rewards` (`max_values`: None, `max_size`: Some(56), added: 2531, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:0) - /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::InflationConfig` (r:1 w:0) - /// Proof: `ParachainStaking::InflationConfig` (`max_values`: Some(1), `max_size`: Some(96), added: 591, mode: `MaxEncodedLen`) - /// The range of component `m` is `[1, 40]`. - fn increment_collator_rewards(m: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `855 + m * (98 ±0)` - // Estimated: `5495 + m * (2531 ±0)` - // Minimum execution time: 29_000_000 picoseconds. - Weight::from_parts(17_699_443, 5495) - // Standard Error: 16_885 - .saturating_add(Weight::from_parts(9_588_938, 0).saturating_mul(m.into())) - .saturating_add(RocksDbWeight::get().reads(5_u64)) - .saturating_add(RocksDbWeight::get().reads((2_u64).saturating_mul(m.into()))) - .saturating_add(RocksDbWeight::get().writes(2_u64)) - .saturating_add(RocksDbWeight::get().writes((2_u64).saturating_mul(m.into()))) - .saturating_add(Weight::from_parts(0, 2531).saturating_mul(m.into())) - } - /// Storage: `ParachainStaking::Rewards` (r:1 w:1) - /// Proof: `ParachainStaking::Rewards` (`max_values`: None, `max_size`: Some(56), added: 2531, mode: `MaxEncodedLen`) - /// Storage: `System::Account` (r:1 w:1) - /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) - fn claim_rewards() -> Weight { - // Proof Size summary in bytes: - // Measured: `575` - // Estimated: `3593` - // Minimum execution time: 22_000_000 picoseconds. - Weight::from_parts(23_000_000, 3593) - .saturating_add(RocksDbWeight::get().reads(2_u64)) - .saturating_add(RocksDbWeight::get().writes(2_u64)) - } - /// Storage: `ParachainStaking::LastRewardReduction` (r:1 w:1) - /// Proof: `ParachainStaking::LastRewardReduction` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::InflationConfig` (r:1 w:1) - /// Proof: `ParachainStaking::InflationConfig` (`max_values`: Some(1), `max_size`: Some(96), added: 591, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::CandidatePool` (r:41 w:0) - /// Proof: `ParachainStaking::CandidatePool` (`max_values`: None, `max_size`: Some(2030), added: 4505, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::RewardCount` (r:1640 w:1640) - /// Proof: `ParachainStaking::RewardCount` (`max_values`: None, `max_size`: Some(44), added: 2519, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::Rewards` (r:40 w:40) - /// Proof: `ParachainStaking::Rewards` (`max_values`: None, `max_size`: Some(56), added: 2531, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::TotalCollatorStake` (r:1 w:0) - /// Proof: `ParachainStaking::TotalCollatorStake` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`) - /// Storage: `ParachainStaking::CounterForCandidatePool` (r:1 w:0) - /// Proof: `ParachainStaking::CounterForCandidatePool` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) - /// The range of component `n` is `[0, 40]`. - /// The range of component `m` is `[0, 40]`. - fn execute_scheduled_reward_change(n: u32, m: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `0 + m * (3891 ±0) + n * (3991 ±0)` - // Estimated: `101750 + m * (37911 ±1_054) + n * (33703 ±9)` - // Minimum execution time: 420_000_000 picoseconds. - Weight::from_parts(431_000_000, 101750) - // Standard Error: 2_590_217 - .saturating_add(Weight::from_parts(78_634_433, 0).saturating_mul(n.into())) - // Standard Error: 2_590_217 - .saturating_add(Weight::from_parts(78_105_543, 0).saturating_mul(m.into())) - .saturating_add(RocksDbWeight::get().reads(125_u64)) - .saturating_add(RocksDbWeight::get().reads((14_u64).saturating_mul(n.into()))) - .saturating_add(RocksDbWeight::get().reads((14_u64).saturating_mul(m.into()))) - .saturating_add(RocksDbWeight::get().writes(82_u64)) - .saturating_add(RocksDbWeight::get().writes((14_u64).saturating_mul(n.into()))) - .saturating_add(RocksDbWeight::get().writes((14_u64).saturating_mul(m.into()))) - .saturating_add(Weight::from_parts(0, 37911).saturating_mul(m.into())) - .saturating_add(Weight::from_parts(0, 33703).saturating_mul(n.into())) - } } \ No newline at end of file diff --git a/runtime/foucoco/src/lib.rs b/runtime/foucoco/src/lib.rs index f3891e326..f8af075dd 100644 --- a/runtime/foucoco/src/lib.rs +++ b/runtime/foucoco/src/lib.rs @@ -1030,7 +1030,7 @@ impl treasury_buyout_extension::Config for Runtime { type DecimalsLookup = DecimalsLookupImpl; type MinAmountToBuyout = MinAmountToBuyout; type MaxAllowedBuyoutCurrencies = MaxAllowedBuyoutCurrencies; - type WeightInfo = (); + type WeightInfo = weights::treasury_buyout_extension::SubstrateWeight; #[cfg(feature = "runtime-benchmarks")] type RelayChainCurrencyId = RelayChainCurrencyId; } @@ -1087,7 +1087,7 @@ impl pallet_insecure_randomness_collective_flip::Config for Runtime {} impl orml_currencies_allowance_extension::Config for Runtime { type RuntimeEvent = RuntimeEvent; - type WeightInfo = (); + type WeightInfo = weights::orml_currencies_allowance_extension::SubstrateWeight; type MaxAllowedCurrencies = ConstU32<256>; } @@ -1124,7 +1124,7 @@ impl dia_oracle::Config for Runtime { type RuntimeEvent = RuntimeEvent; type RuntimeCall = RuntimeCall; type AuthorityId = dia_oracle::crypto::DiaAuthId; - type WeightInfo = (); + type WeightInfo = weights::dia_oracle::SubstrateWeight; } impl frame_system::offchain::SigningTypes for Runtime { @@ -1273,7 +1273,7 @@ cfg_if::cfg_if! { impl oracle::Config for Runtime { type RuntimeEvent = RuntimeEvent; - type WeightInfo = (); + type WeightInfo = weights::oracle::SubstrateWeight; type DecimalsLookup = DecimalsLookupImpl; type DataProvider = DataProviderImpl; #[cfg(feature = "runtime-benchmarks")] @@ -1292,7 +1292,7 @@ impl stellar_relay::Config for Runtime { type OrganizationLimit = OrganizationLimit; type ValidatorLimit = ValidatorLimit; type IsPublicNetwork = IsPublicNetwork; - type WeightInfo = (); + type WeightInfo = weights::stellar_relay::SubstrateWeight; } parameter_types! { @@ -1305,7 +1305,7 @@ parameter_types! { impl fee::Config for Runtime { type FeePalletId = FeePalletId; - type WeightInfo = (); + type WeightInfo = weights::fee::SubstrateWeight; type SignedFixedPoint = SignedFixedPoint; type SignedInner = SignedInner; type UnsignedFixedPoint = UnsignedFixedPoint; @@ -1321,13 +1321,13 @@ impl vault_registry::Config for Runtime { type PalletId = VaultRegistryPalletId; type RuntimeEvent = RuntimeEvent; type Balance = Balance; - type WeightInfo = (); + type WeightInfo = weights::vault_registry::SubstrateWeight; type GetGriefingCollateralCurrencyId = NativeCurrencyId; } impl redeem::Config for Runtime { type RuntimeEvent = RuntimeEvent; - type WeightInfo = (); + type WeightInfo = weights::redeem::SubstrateWeight; } pub struct BlockNumberToBalance; @@ -1341,17 +1341,17 @@ impl sp_runtime::traits::Convert for BlockNumberToBalance impl issue::Config for Runtime { type RuntimeEvent = RuntimeEvent; type BlockNumberToBalance = BlockNumberToBalance; - type WeightInfo = (); + type WeightInfo = weights::issue::SubstrateWeight; } impl nomination::Config for Runtime { type RuntimeEvent = RuntimeEvent; - type WeightInfo = (); + type WeightInfo = weights::nomination::SubstrateWeight; } impl replace::Config for Runtime { type RuntimeEvent = RuntimeEvent; - type WeightInfo = (); + type WeightInfo = weights::replace::SubstrateWeight; } impl clients_info::Config for Runtime { diff --git a/runtime/pendulum/src/lib.rs b/runtime/pendulum/src/lib.rs index 4f4c29406..ef21ead44 100644 --- a/runtime/pendulum/src/lib.rs +++ b/runtime/pendulum/src/lib.rs @@ -1070,7 +1070,7 @@ impl dia_oracle::Config for Runtime { type RuntimeEvent = RuntimeEvent; type RuntimeCall = RuntimeCall; type AuthorityId = dia_oracle::crypto::DiaAuthId; - type WeightInfo = (); + type WeightInfo = weights::dia_oracle::SubstrateWeight; } parameter_types! { @@ -1243,7 +1243,7 @@ cfg_if::cfg_if! { impl oracle::Config for Runtime { type RuntimeEvent = RuntimeEvent; - type WeightInfo = (); + type WeightInfo = weights::oracle::SubstrateWeight; type DecimalsLookup = DecimalsLookupImpl; type DataProvider = DataProviderImpl; #[cfg(feature = "runtime-benchmarks")] @@ -1262,7 +1262,7 @@ impl stellar_relay::Config for Runtime { type OrganizationLimit = OrganizationLimit; type ValidatorLimit = ValidatorLimit; type IsPublicNetwork = IsPublicNetwork; - type WeightInfo = (); + type WeightInfo = weights::stellar_relay::SubstrateWeight; } parameter_types! { @@ -1273,7 +1273,7 @@ parameter_types! { } impl fee::Config for Runtime { type FeePalletId = FeePalletId; - type WeightInfo = (); + type WeightInfo = weights::fee::SubstrateWeight; type SignedFixedPoint = SignedFixedPoint; type SignedInner = SignedInner; type UnsignedFixedPoint = UnsignedFixedPoint; @@ -1289,7 +1289,7 @@ impl vault_registry::Config for Runtime { type PalletId = VaultRegistryPalletId; type RuntimeEvent = RuntimeEvent; type Balance = Balance; - type WeightInfo = (); + type WeightInfo = weights::vault_registry::SubstrateWeight; type GetGriefingCollateralCurrencyId = NativeCurrencyId; } @@ -1309,17 +1309,17 @@ impl sp_runtime::traits::Convert for BlockNumberToBalance impl issue::Config for Runtime { type RuntimeEvent = RuntimeEvent; type BlockNumberToBalance = BlockNumberToBalance; - type WeightInfo = (); + type WeightInfo = weights::issue::SubstrateWeight; } impl nomination::Config for Runtime { type RuntimeEvent = RuntimeEvent; - type WeightInfo = (); + type WeightInfo = weights::nomination::SubstrateWeight; } impl replace::Config for Runtime { type RuntimeEvent = RuntimeEvent; - type WeightInfo = (); + type WeightInfo = weights::replace::SubstrateWeight; } impl clients_info::Config for Runtime { @@ -1408,7 +1408,7 @@ impl pallet_proxy::Config for Runtime { impl orml_currencies_allowance_extension::Config for Runtime { type RuntimeEvent = RuntimeEvent; - type WeightInfo = (); + type WeightInfo = weights::orml_currencies_allowance_extension::SubstrateWeight; type MaxAllowedCurrencies = ConstU32<256>; } @@ -1444,7 +1444,7 @@ impl treasury_buyout_extension::Config for Runtime { type DecimalsLookup = DecimalsLookupImpl; type MinAmountToBuyout = MinAmountToBuyout; type MaxAllowedBuyoutCurrencies = MaxAllowedBuyoutCurrencies; - type WeightInfo = (); + type WeightInfo = weights::treasury_buyout_extension::SubstrateWeight; #[cfg(feature = "runtime-benchmarks")] type RelayChainCurrencyId = RelayChainCurrencyId; } From cdf430d6bfd752fce394adf490d28aaad5fa1576 Mon Sep 17 00:00:00 2001 From: Gianfranco Date: Wed, 11 Sep 2024 17:34:23 -0300 Subject: [PATCH 14/38] fix benchmark for orml-tokens-management, add benchmark helper script, run benchmarks --- Cargo.lock | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index a8c2a0a29..14a660e51 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -446,7 +446,7 @@ dependencies = [ [[package]] name = "ark-secret-scalar" version = "0.0.2" -source = "git+https://github.com/w3f//ring-vrf?rev=3ddc20?rev=3ddc20#3ddc2051066c4b3f0eadd0ba5700df12500d9754" +source = "git+https://github.com/w3f//ring-vrf?rev=3ddc20#3ddc2051066c4b3f0eadd0ba5700df12500d9754" dependencies = [ "ark-ec", "ark-ff", @@ -494,7 +494,7 @@ dependencies = [ [[package]] name = "ark-transcript" version = "0.0.2" -source = "git+https://github.com/w3f//ring-vrf?rev=3ddc20?rev=3ddc20#3ddc2051066c4b3f0eadd0ba5700df12500d9754" +source = "git+https://github.com/w3f//ring-vrf?rev=3ddc20#3ddc2051066c4b3f0eadd0ba5700df12500d9754" dependencies = [ "ark-ff", "ark-serialize", @@ -1059,7 +1059,7 @@ dependencies = [ [[package]] name = "bandersnatch_vrfs" version = "0.0.4" -source = "git+https://github.com/w3f//ring-vrf?rev=3ddc20?rev=3ddc20#3ddc2051066c4b3f0eadd0ba5700df12500d9754" +source = "git+https://github.com/w3f//ring-vrf?rev=3ddc20#3ddc2051066c4b3f0eadd0ba5700df12500d9754" dependencies = [ "ark-bls12-381", "ark-ec", @@ -3560,7 +3560,7 @@ dependencies = [ [[package]] name = "dleq_vrf" version = "0.0.2" -source = "git+https://github.com/w3f//ring-vrf?rev=3ddc20?rev=3ddc20#3ddc2051066c4b3f0eadd0ba5700df12500d9754" +source = "git+https://github.com/w3f//ring-vrf?rev=3ddc20#3ddc2051066c4b3f0eadd0ba5700df12500d9754" dependencies = [ "ark-ec", "ark-ff", From 99992e6bd0fc4506dc04b1769805bb9b192e9023 Mon Sep 17 00:00:00 2001 From: b-yap <2826165+b-yap@users.noreply.github.com> Date: Wed, 24 Jul 2024 17:07:31 +0800 Subject: [PATCH 15/38] initial push. Does not ``` error[E0046]: not all trait items implemented, missing: `try_successful_origin` --> /Users/b.carlayap/.cargo/git/checkouts/cumulus-59522f43471fa161/f603a61/parachains/runtimes/assets/common/src/foreign_creators.rs:28:1 | 28 | / impl< 29 | | IsForeign: ContainsPair, 30 | | AccountOf: Convert, 31 | | AccountId: Clone, ... | 36 | | RuntimeOrigin::PalletsOrigin: 37 | | From + TryInto, | |___________________________________________________________________________________^ missing `try_successful_origin` in implementation ``` just yet --- .github/workflows/test-code.yml | 2 +- runtime/integration-tests/Cargo.toml | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/test-code.yml b/.github/workflows/test-code.yml index e1263947f..444c05e17 100644 --- a/.github/workflows/test-code.yml +++ b/.github/workflows/test-code.yml @@ -44,7 +44,7 @@ jobs: with: toolchain: nightly-2024-05-30 command: test - args: --release + args: --release --features runtime-benchmarks try-runtime - name: Clippy -- Main uses: actions-rs/cargo@v1 diff --git a/runtime/integration-tests/Cargo.toml b/runtime/integration-tests/Cargo.toml index 073c6f780..73ea9e560 100644 --- a/runtime/integration-tests/Cargo.toml +++ b/runtime/integration-tests/Cargo.toml @@ -81,4 +81,5 @@ amplitude-runtime = { path = "../amplitude" } default = ["std"] std = [ "codec/std", + "xcm-builder/std" ] From bf5ef6ee443a20598bf9347e61616f3514b1fa88 Mon Sep 17 00:00:00 2001 From: b-yap <2826165+b-yap@users.noreply.github.com> Date: Fri, 26 Jul 2024 22:15:55 +0800 Subject: [PATCH 16/38] fix https://github.com/pendulum-chain/pendulum/actions/runs/10076985515/job/27858509228?pr=488#step:8:1708 and diagnostic issue --- runtime/integration-tests/Cargo.toml | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/runtime/integration-tests/Cargo.toml b/runtime/integration-tests/Cargo.toml index 73ea9e560..7b5cb16b8 100644 --- a/runtime/integration-tests/Cargo.toml +++ b/runtime/integration-tests/Cargo.toml @@ -83,3 +83,17 @@ std = [ "codec/std", "xcm-builder/std" ] + +try-runtime = [ + "kusama-runtime/try-runtime", + "polkadot-runtime-parachains/try-runtime", + "statemine-runtime/frame-try-runtime", + "statemint-runtime/try-runtime" +] + +runtime-benchmarks = [ + "kusama-runtime/runtime-benchmarks", + "polkadot-parachain/runtime-benchmarks", + "statemine-runtime/runtime-benchmarks", + "statemint-runtime/runtime-benchmarks" +] \ No newline at end of file From 0f2896a9e22c0b182538834a24b8a294c5b46173 Mon Sep 17 00:00:00 2001 From: b-yap <2826165+b-yap@users.noreply.github.com> Date: Mon, 9 Sep 2024 20:05:52 +0800 Subject: [PATCH 17/38] rebase with polkadot-v1.1.0; removed mocktopus --- Cargo.toml | 2 +- pallets/orml-currencies-allowance-extension/Cargo.toml | 1 - pallets/orml-currencies-allowance-extension/src/lib.rs | 5 ----- pallets/orml-tokens-management-extension/Cargo.toml | 1 - pallets/orml-tokens-management-extension/src/ext.rs | 3 --- pallets/orml-tokens-management-extension/src/lib.rs | 6 +----- pallets/treasury-buyout-extension/Cargo.toml | 1 - 7 files changed, 2 insertions(+), 17 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 36ea682c1..f1de1f426 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -17,7 +17,7 @@ members = [ "runtime/amplitude", "runtime/foucoco", "runtime/pendulum", - "runtime/integration-tests", +# "runtime/integration-tests", "chain-extensions/token", "chain-extensions/price", "chain-extensions/common", diff --git a/pallets/orml-currencies-allowance-extension/Cargo.toml b/pallets/orml-currencies-allowance-extension/Cargo.toml index 0cd99fc0c..7c80f90d8 100644 --- a/pallets/orml-currencies-allowance-extension/Cargo.toml +++ b/pallets/orml-currencies-allowance-extension/Cargo.toml @@ -25,7 +25,6 @@ orml-traits = { git = "https://github.com/open-web3-stack/open-runtime-module-li pallet-balances = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.1.0", default-features = false, optional = true } [dev-dependencies] -mocktopus = "0.8.0" frame-benchmarking = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.1.0" } sp-io = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.1.0", default-features = false } diff --git a/pallets/orml-currencies-allowance-extension/src/lib.rs b/pallets/orml-currencies-allowance-extension/src/lib.rs index b4cdfda56..1fc748de2 100644 --- a/pallets/orml-currencies-allowance-extension/src/lib.rs +++ b/pallets/orml-currencies-allowance-extension/src/lib.rs @@ -2,13 +2,9 @@ #![cfg_attr(test, feature(proc_macro_hygiene))] #![cfg_attr(not(feature = "std"), no_std)] -#[cfg(test)] -extern crate mocktopus; use frame_support::{dispatch::DispatchResult, ensure}; -#[cfg(test)] -use mocktopus::macros::mockable; use orml_traits::MultiCurrency; use sp_runtime::traits::*; use sp_std::{convert::TryInto, prelude::*, vec}; @@ -245,7 +241,6 @@ pub mod pallet { forgetting_references, forgetting_copy_types )] -#[cfg_attr(test, mockable)] impl Pallet { // Check the amount approved to be spent by an owner to a delegate pub fn is_allowed_currency(asset: CurrencyOf) -> bool { diff --git a/pallets/orml-tokens-management-extension/Cargo.toml b/pallets/orml-tokens-management-extension/Cargo.toml index e29d8efb0..49b8e2d2e 100644 --- a/pallets/orml-tokens-management-extension/Cargo.toml +++ b/pallets/orml-tokens-management-extension/Cargo.toml @@ -26,7 +26,6 @@ orml-tokens = { git = "https://github.com/open-web3-stack/open-runtime-module-li [dev-dependencies] -mocktopus = "0.8.0" frame-benchmarking = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.1.0" } sp-io = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, branch = "release-polkadot-v1.1.0" } pallet-balances = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.1.0" } diff --git a/pallets/orml-tokens-management-extension/src/ext.rs b/pallets/orml-tokens-management-extension/src/ext.rs index 3cb1a5077..503caf995 100644 --- a/pallets/orml-tokens-management-extension/src/ext.rs +++ b/pallets/orml-tokens-management-extension/src/ext.rs @@ -1,7 +1,4 @@ -#[cfg(test)] -use mocktopus::macros::mockable; -#[cfg_attr(test, mockable)] pub(crate) mod orml_currencies_ext { use crate::types::{AccountIdOf, BalanceOf, CurrencyOf}; use frame_support::traits::BalanceStatus; diff --git a/pallets/orml-tokens-management-extension/src/lib.rs b/pallets/orml-tokens-management-extension/src/lib.rs index 81dd145e9..1a5d60662 100644 --- a/pallets/orml-tokens-management-extension/src/lib.rs +++ b/pallets/orml-tokens-management-extension/src/lib.rs @@ -2,11 +2,8 @@ #![cfg_attr(test, feature(proc_macro_hygiene))] #![cfg_attr(not(feature = "std"), no_std)] -#[cfg(test)] -extern crate mocktopus; -#[cfg(test)] -use mocktopus::macros::mockable; + use sp_std::{convert::TryInto, prelude::*, vec}; #[cfg(feature = "runtime-benchmarks")] @@ -326,7 +323,6 @@ pub mod pallet { } } -#[cfg_attr(test, mockable)] impl Pallet {} pub trait CurrencyIdCheck { diff --git a/pallets/treasury-buyout-extension/Cargo.toml b/pallets/treasury-buyout-extension/Cargo.toml index 68c458604..23d4f2c48 100644 --- a/pallets/treasury-buyout-extension/Cargo.toml +++ b/pallets/treasury-buyout-extension/Cargo.toml @@ -28,7 +28,6 @@ orml-tokens = { git = "https://github.com/open-web3-stack/open-runtime-module-li spacewalk-primitives = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "580dd307ede65f90f17df6731645b678f3596e0f" } [dev-dependencies] -mocktopus = "0.8.0" frame-benchmarking = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.1.0" } sp-io = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.1.0", default-features = false } xcm = { git = "https://github.com/paritytech/polkadot-sdk", package = "staging-xcm", branch = "release-polkadot-v1.1.0" } From 007381aa0898e0fed365227cc111e6b47493a1ba Mon Sep 17 00:00:00 2001 From: b-yap <2826165+b-yap@users.noreply.github.com> Date: Tue, 10 Sep 2024 23:49:57 +0800 Subject: [PATCH 18/38] fix unimplemented runtime-benchmarks --- Cargo.lock | 43 ++++++++-------------------- Cargo.toml | 2 +- runtime/integration-tests/Cargo.toml | 10 +++---- 3 files changed, 17 insertions(+), 38 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 14a660e51..7ff444c5e 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -676,6 +676,7 @@ dependencies = [ "frame-system-benchmarking", "frame-system-rpc-runtime-api", "frame-try-runtime", + "hex-literal 0.4.1", "log", "pallet-asset-tx-payment", "pallet-assets", @@ -745,6 +746,7 @@ dependencies = [ "frame-system-benchmarking", "frame-system-rpc-runtime-api", "frame-try-runtime", + "hex-literal 0.4.1", "log", "pallet-asset-conversion", "pallet-asset-conversion-tx-payment", @@ -6830,26 +6832,6 @@ dependencies = [ "syn 1.0.109", ] -[[package]] -name = "mocktopus" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e4f0d5a1621fea252541cf67533c4b9c32ee892d790768f4ad48f1063059537" -dependencies = [ - "mocktopus_macros", -] - -[[package]] -name = "mocktopus_macros" -version = "0.7.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3048ef3680533a27f9f8e7d6a0bce44dc61e4895ea0f42709337fa1c8616fefe" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - [[package]] name = "module-issue-rpc" version = "1.0.10" @@ -7474,7 +7456,7 @@ dependencies = [ [[package]] name = "orml-asset-registry" version = "0.4.1-dev" -source = "git+https://github.com/open-web3-stack/open-runtime-module-library?branch=polkadot-v1.1.0#981d707437a22d881b993f9e902d27b163ad8bca" +source = "git+https://github.com/open-web3-stack/open-runtime-module-library?branch=polkadot-v1.1.0#2778a86fb12a1a61ca8ea9348f68b3c974f786e0" dependencies = [ "frame-support", "frame-system", @@ -7495,7 +7477,7 @@ dependencies = [ [[package]] name = "orml-currencies" version = "0.4.1-dev" -source = "git+https://github.com/open-web3-stack/open-runtime-module-library?branch=polkadot-v1.1.0#981d707437a22d881b993f9e902d27b163ad8bca" +source = "git+https://github.com/open-web3-stack/open-runtime-module-library?branch=polkadot-v1.1.0#2778a86fb12a1a61ca8ea9348f68b3c974f786e0" dependencies = [ "frame-support", "frame-system", @@ -7516,7 +7498,6 @@ dependencies = [ "frame-benchmarking", "frame-support", "frame-system", - "mocktopus", "orml-currencies", "orml-tokens", "orml-traits", @@ -7534,7 +7515,7 @@ dependencies = [ [[package]] name = "orml-oracle" version = "0.4.1-dev" -source = "git+https://github.com/open-web3-stack/open-runtime-module-library?branch=polkadot-v1.1.0#981d707437a22d881b993f9e902d27b163ad8bca" +source = "git+https://github.com/open-web3-stack/open-runtime-module-library?branch=polkadot-v1.1.0#2778a86fb12a1a61ca8ea9348f68b3c974f786e0" dependencies = [ "frame-support", "frame-system", @@ -7591,7 +7572,6 @@ dependencies = [ "frame-benchmarking", "frame-support", "frame-system", - "mocktopus", "orml-currencies", "orml-tokens", "orml-traits", @@ -7645,7 +7625,7 @@ dependencies = [ [[package]] name = "orml-utilities" version = "0.4.1-dev" -source = "git+https://github.com/open-web3-stack/open-runtime-module-library?branch=polkadot-v1.1.0#981d707437a22d881b993f9e902d27b163ad8bca" +source = "git+https://github.com/open-web3-stack/open-runtime-module-library?branch=polkadot-v1.1.0#2778a86fb12a1a61ca8ea9348f68b3c974f786e0" dependencies = [ "frame-support", "parity-scale-codec", @@ -7675,7 +7655,7 @@ dependencies = [ [[package]] name = "orml-xcm" version = "0.4.1-dev" -source = "git+https://github.com/open-web3-stack/open-runtime-module-library?branch=polkadot-v1.1.0#981d707437a22d881b993f9e902d27b163ad8bca" +source = "git+https://github.com/open-web3-stack/open-runtime-module-library?branch=polkadot-v1.1.0#2778a86fb12a1a61ca8ea9348f68b3c974f786e0" dependencies = [ "frame-support", "frame-system", @@ -7689,7 +7669,7 @@ dependencies = [ [[package]] name = "orml-xcm-support" version = "0.4.1-dev" -source = "git+https://github.com/open-web3-stack/open-runtime-module-library?branch=polkadot-v1.1.0#981d707437a22d881b993f9e902d27b163ad8bca" +source = "git+https://github.com/open-web3-stack/open-runtime-module-library?branch=polkadot-v1.1.0#2778a86fb12a1a61ca8ea9348f68b3c974f786e0" dependencies = [ "frame-support", "orml-traits", @@ -7703,7 +7683,7 @@ dependencies = [ [[package]] name = "orml-xtokens" version = "0.4.1-dev" -source = "git+https://github.com/open-web3-stack/open-runtime-module-library?branch=polkadot-v1.1.0#981d707437a22d881b993f9e902d27b163ad8bca" +source = "git+https://github.com/open-web3-stack/open-runtime-module-library?branch=polkadot-v1.1.0#2778a86fb12a1a61ca8ea9348f68b3c974f786e0" dependencies = [ "cumulus-primitives-core", "frame-support", @@ -7727,6 +7707,7 @@ name = "pallet-alliance" version = "4.0.0-dev" source = "git+https://github.com/paritytech/polkadot-sdk?branch=release-polkadot-v1.1.0#e51a91fcac27d2f95ad631989622848aa8043f9e" dependencies = [ + "array-bytes", "frame-benchmarking", "frame-support", "frame-system", @@ -9562,6 +9543,7 @@ dependencies = [ "frame-system-benchmarking", "frame-system-rpc-runtime-api", "frame-try-runtime", + "hex-literal 0.4.1", "log", "pallet-asset-tx-payment", "pallet-assets", @@ -15890,7 +15872,6 @@ dependencies = [ "frame-benchmarking", "frame-support", "frame-system", - "mocktopus", "orml-currencies", "orml-tokens", "orml-traits", @@ -16034,7 +16015,7 @@ checksum = "97fee6b57c6a41524a810daee9286c02d7752c4253064d0b05472833a438f675" dependencies = [ "cfg-if", "digest 0.10.7", - "rand 0.7.3", + "rand 0.8.5", "static_assertions", ] diff --git a/Cargo.toml b/Cargo.toml index f1de1f426..36ea682c1 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -17,7 +17,7 @@ members = [ "runtime/amplitude", "runtime/foucoco", "runtime/pendulum", -# "runtime/integration-tests", + "runtime/integration-tests", "chain-extensions/token", "chain-extensions/price", "chain-extensions/common", diff --git a/runtime/integration-tests/Cargo.toml b/runtime/integration-tests/Cargo.toml index 7b5cb16b8..99166112c 100644 --- a/runtime/integration-tests/Cargo.toml +++ b/runtime/integration-tests/Cargo.toml @@ -86,14 +86,12 @@ std = [ try-runtime = [ "kusama-runtime/try-runtime", - "polkadot-runtime-parachains/try-runtime", - "statemine-runtime/frame-try-runtime", - "statemint-runtime/try-runtime" -] + "polkadot-runtime-parachains/try-runtime" runtime-benchmarks = [ "kusama-runtime/runtime-benchmarks", "polkadot-parachain/runtime-benchmarks", - "statemine-runtime/runtime-benchmarks", - "statemint-runtime/runtime-benchmarks" + "integration-tests-common/runtime-benchmarks", + "amplitude-runtime/runtime-benchmarks", + "pendulum-runtime/runtime-benchmarks" ] \ No newline at end of file From e6427cf7a81e8aec84c4c73d355761848b505b14 Mon Sep 17 00:00:00 2001 From: b-yap <2826165+b-yap@users.noreply.github.com> Date: Tue, 10 Sep 2024 23:56:48 +0800 Subject: [PATCH 19/38] fix invalid array --- runtime/integration-tests/Cargo.toml | 1 + 1 file changed, 1 insertion(+) diff --git a/runtime/integration-tests/Cargo.toml b/runtime/integration-tests/Cargo.toml index 99166112c..7db5f2dbc 100644 --- a/runtime/integration-tests/Cargo.toml +++ b/runtime/integration-tests/Cargo.toml @@ -87,6 +87,7 @@ std = [ try-runtime = [ "kusama-runtime/try-runtime", "polkadot-runtime-parachains/try-runtime" +] runtime-benchmarks = [ "kusama-runtime/runtime-benchmarks", From ae3e39bc8e8492b4cc2cd5277420bc3b19249b1b Mon Sep 17 00:00:00 2001 From: b-yap <2826165+b-yap@users.noreply.github.com> Date: Wed, 11 Sep 2024 02:26:43 +0800 Subject: [PATCH 20/38] fix unimplemented traits and run in workflow --- .github/workflows/test-code.yml | 7 +++++++ runtime/integration-tests/Cargo.toml | 6 ++++-- runtime/integration-tests/src/sibling.rs | 3 +++ 3 files changed, 14 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-code.yml b/.github/workflows/test-code.yml index 444c05e17..815b5fb60 100644 --- a/.github/workflows/test-code.yml +++ b/.github/workflows/test-code.yml @@ -46,6 +46,13 @@ jobs: command: test args: --release --features runtime-benchmarks try-runtime + - name: Test For runtime benchmarks + uses: actions-rs/cargo@v1 + with: + toolchain: nightly-2024-05-30 + command: test + args: --all --release --features runtime-benchmarks try-runtime + - name: Clippy -- Main uses: actions-rs/cargo@v1 with: diff --git a/runtime/integration-tests/Cargo.toml b/runtime/integration-tests/Cargo.toml index 7db5f2dbc..0ab1735d2 100644 --- a/runtime/integration-tests/Cargo.toml +++ b/runtime/integration-tests/Cargo.toml @@ -86,7 +86,9 @@ std = [ try-runtime = [ "kusama-runtime/try-runtime", - "polkadot-runtime-parachains/try-runtime" + "polkadot-runtime-parachains/try-runtime", + "amplitude-runtime/try-runtime", + "pendulum-runtime/try-runtime", ] runtime-benchmarks = [ @@ -94,5 +96,5 @@ runtime-benchmarks = [ "polkadot-parachain/runtime-benchmarks", "integration-tests-common/runtime-benchmarks", "amplitude-runtime/runtime-benchmarks", - "pendulum-runtime/runtime-benchmarks" + "pendulum-runtime/runtime-benchmarks", ] \ No newline at end of file diff --git a/runtime/integration-tests/src/sibling.rs b/runtime/integration-tests/src/sibling.rs index f696f9a5c..12dabc227 100644 --- a/runtime/integration-tests/src/sibling.rs +++ b/runtime/integration-tests/src/sibling.rs @@ -406,6 +406,9 @@ impl pallet_xcm::Config for Runtime { type AdminOrigin = EnsureRoot; type MaxRemoteLockConsumers = ConstU32<0>; type RemoteLockConsumerIdentifier = (); + + #[cfg(feature = "runtime-benchmarks")] + type ReachableDest = (); } parameter_type_with_key! { From 839684fc37ab07187c654eecb52e4e93beb4318e Mon Sep 17 00:00:00 2001 From: b-yap <2826165+b-yap@users.noreply.github.com> Date: Thu, 12 Sep 2024 14:27:25 +0800 Subject: [PATCH 21/38] https://github.com/pendulum-chain/pendulum/pull/488#issuecomment-2343128993 --- .github/workflows/test-code.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-code.yml b/.github/workflows/test-code.yml index 815b5fb60..d3dcbbeb8 100644 --- a/.github/workflows/test-code.yml +++ b/.github/workflows/test-code.yml @@ -2,8 +2,9 @@ name: Test Code on: pull_request: - branches: - - main + types: + - opened + - synchronized push: branches: - main From fbe53efc35d17423c3d000b7011f6c1aac244db9 Mon Sep 17 00:00:00 2001 From: b-yap <2826165+b-yap@users.noreply.github.com> Date: Thu, 12 Sep 2024 14:48:25 +0800 Subject: [PATCH 22/38] run workflow on edited --- .github/workflows/test-code.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/test-code.yml b/.github/workflows/test-code.yml index d3dcbbeb8..ac2e0fbac 100644 --- a/.github/workflows/test-code.yml +++ b/.github/workflows/test-code.yml @@ -5,6 +5,7 @@ on: types: - opened - synchronized + - edited push: branches: - main From 9057f2b053d6dd61a5fcdbd720c04b2a33c4d950 Mon Sep 17 00:00:00 2001 From: b-yap <2826165+b-yap@users.noreply.github.com> Date: Thu, 12 Sep 2024 14:53:58 +0800 Subject: [PATCH 23/38] do not specify type or branch --- .github/workflows/test-code.yml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/.github/workflows/test-code.yml b/.github/workflows/test-code.yml index ac2e0fbac..f12d97005 100644 --- a/.github/workflows/test-code.yml +++ b/.github/workflows/test-code.yml @@ -2,10 +2,6 @@ name: Test Code on: pull_request: - types: - - opened - - synchronized - - edited push: branches: - main From 747616d04dacfe018a55be03f98e5318a9c8b8e0 Mon Sep 17 00:00:00 2001 From: b-yap <2826165+b-yap@users.noreply.github.com> Date: Thu, 12 Sep 2024 16:25:23 +0800 Subject: [PATCH 24/38] completely remove nightly --- .github/workflows/test-code.yml | 20 ------------ Cargo.lock | 32 +++++++++++++------ Cargo.toml | 5 +-- README.md | 6 +--- .../src/lib.rs | 1 - .../src/lib.rs | 1 - pallets/treasury-buyout-extension/src/lib.rs | 1 - runtime/amplitude/src/lib.rs | 8 ++--- runtime/foucoco/src/lib.rs | 8 ++--- runtime/pendulum/src/lib.rs | 8 ++--- 10 files changed, 38 insertions(+), 52 deletions(-) diff --git a/.github/workflows/test-code.yml b/.github/workflows/test-code.yml index f12d97005..b6a205a18 100644 --- a/.github/workflows/test-code.yml +++ b/.github/workflows/test-code.yml @@ -17,21 +17,6 @@ jobs: - uses: actions/checkout@v3 - uses: ./.github/actions/shared - - name: Remove rust-toolchain.toml - # To make sure that the nightly version will be used all throughout - run: | - rm /home/runner/work/pendulum/pendulum/rust-toolchain.toml - - - name: Setup nightly Rust toolchain - uses: dtolnay/rust-toolchain@nightly - with: - toolchain: nightly-2024-05-30 - components: rustfmt, clippy - target: wasm32-unknown-unknown - - - name: Setup nightly Rust as default - run: rustup default nightly-2024-05-30 - - name: Install Protoc uses: arduino/setup-protoc@v1 with: @@ -40,28 +25,24 @@ jobs: - name: Test uses: actions-rs/cargo@v1 with: - toolchain: nightly-2024-05-30 command: test args: --release --features runtime-benchmarks try-runtime - name: Test For runtime benchmarks uses: actions-rs/cargo@v1 with: - toolchain: nightly-2024-05-30 command: test args: --all --release --features runtime-benchmarks try-runtime - name: Clippy -- Main uses: actions-rs/cargo@v1 with: - toolchain: nightly-2024-05-30 command: clippy args: --release --all-features -- -W clippy::all -A clippy::style -A forgetting_copy_types -A forgetting_references - name: Clippy -- All Targets (except integration) uses: actions-rs/cargo@v1 with: - toolchain: nightly-2024-05-30 command: clippy # We are a bit more forgiving when it comes to the code in tests and only check for correctness args: --workspace --release --all-features --all-targets --exclude runtime-integration-tests -- -A clippy::all -W clippy::correctness -A forgetting_copy_types -A forgetting_references @@ -69,7 +50,6 @@ jobs: - name: Clippy -- Integration uses: actions-rs/cargo@v1 with: - toolchain: nightly-2024-05-30 command: clippy # We are a bit more forgiving when it comes to the code in tests and only check for correctness args: --package runtime-integration-tests --release --all-features --all-targets -- -A clippy::all -W clippy::correctness -A forgetting_copy_types -A forgetting_references diff --git a/Cargo.lock b/Cargo.lock index 7ff444c5e..97956f136 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -429,6 +429,19 @@ dependencies = [ "hashbrown 0.13.2", ] +[[package]] +name = "ark-scale" +version = "0.0.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "49b08346a3e38e2be792ef53ee168623c9244d968ff00cd70fb9932f6fe36393" +dependencies = [ + "ark-ec", + "ark-ff", + "ark-serialize", + "ark-std", + "parity-scale-codec", +] + [[package]] name = "ark-scale" version = "0.0.11" @@ -446,7 +459,7 @@ dependencies = [ [[package]] name = "ark-secret-scalar" version = "0.0.2" -source = "git+https://github.com/w3f//ring-vrf?rev=3ddc20#3ddc2051066c4b3f0eadd0ba5700df12500d9754" +source = "git+https://github.com/w3f/ring-vrf?rev=3119f51#3119f51b54b69308abfb0671f6176cb125ae1bf1" dependencies = [ "ark-ec", "ark-ff", @@ -494,7 +507,7 @@ dependencies = [ [[package]] name = "ark-transcript" version = "0.0.2" -source = "git+https://github.com/w3f//ring-vrf?rev=3ddc20#3ddc2051066c4b3f0eadd0ba5700df12500d9754" +source = "git+https://github.com/w3f/ring-vrf?rev=3119f51#3119f51b54b69308abfb0671f6176cb125ae1bf1" dependencies = [ "ark-ff", "ark-serialize", @@ -1060,13 +1073,14 @@ dependencies = [ [[package]] name = "bandersnatch_vrfs" -version = "0.0.4" -source = "git+https://github.com/w3f//ring-vrf?rev=3ddc20#3ddc2051066c4b3f0eadd0ba5700df12500d9754" +version = "0.0.1" +source = "git+https://github.com/w3f/ring-vrf?rev=3119f51#3119f51b54b69308abfb0671f6176cb125ae1bf1" dependencies = [ "ark-bls12-381", "ark-ec", "ark-ed-on-bls12-381-bandersnatch", "ark-ff", + "ark-scale 0.0.11", "ark-serialize", "ark-std", "dleq_vrf", @@ -2286,7 +2300,7 @@ dependencies = [ [[package]] name = "common" version = "0.1.0" -source = "git+https://github.com/burdges/ring-proof?branch=patch-1#05a756076cb20f981a52afea3a620168de49f95f" +source = "git+https://github.com/w3f/ring-proof?rev=0e948f3#0e948f3c28cbacecdd3020403c4841c0eb339213" dependencies = [ "ark-ec", "ark-ff", @@ -2295,7 +2309,6 @@ dependencies = [ "ark-std", "fflonk", "merlin 3.0.0", - "rand_chacha 0.3.1", ] [[package]] @@ -3562,11 +3575,11 @@ dependencies = [ [[package]] name = "dleq_vrf" version = "0.0.2" -source = "git+https://github.com/w3f//ring-vrf?rev=3ddc20#3ddc2051066c4b3f0eadd0ba5700df12500d9754" +source = "git+https://github.com/w3f/ring-vrf?rev=3119f51#3119f51b54b69308abfb0671f6176cb125ae1bf1" dependencies = [ "ark-ec", "ark-ff", - "ark-scale", + "ark-scale 0.0.10", "ark-secret-scalar", "ark-serialize", "ark-std", @@ -11728,14 +11741,13 @@ dependencies = [ [[package]] name = "ring" version = "0.1.0" -source = "git+https://github.com/burdges/ring-proof?branch=patch-1#05a756076cb20f981a52afea3a620168de49f95f" +source = "git+https://github.com/w3f/ring-proof?rev=0e948f3#0e948f3c28cbacecdd3020403c4841c0eb339213" dependencies = [ "ark-ec", "ark-ff", "ark-poly", "ark-serialize", "ark-std", - "blake2", "common", "fflonk", "merlin 3.0.0", diff --git a/Cargo.toml b/Cargo.toml index 36ea682c1..149b80fbe 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -34,5 +34,6 @@ orml-tokens = { git = "https://github.com/open-web3-stack//open-runtime-module-l ### orml packages { version = "0.4.1-dev" } ### zenlink packages { version = "*" } -[patch."https://github.com/w3f/ring-vrf"] -bandersnatch_vrfs = { git = "https://github.com/w3f//ring-vrf", version = "0.0.4", rev = "3ddc20" } \ No newline at end of file +# probable patch for nightly +#[patch."https://github.com/w3f/ring-vrf"] +#bandersnatch_vrfs = { git = "https://github.com/w3f//ring-vrf", version = "0.0.4", rev = "3ddc20" } \ No newline at end of file diff --git a/README.md b/README.md index 7fb059e37..01cd56a44 100644 --- a/README.md +++ b/README.md @@ -3,12 +3,8 @@ Pendulum chain by SatoshiPay. More information about Pendulum can be found [here](https://docs.pendulumchain.org/). ### How to Run Tests - -[`mocktopus`](https://docs.rs/mocktopus/latest/mocktopus/) is nightly-only lib, and is used in testing. -So to run the tests, override the toolchain with nightly; minimum version is `nightly-2024-05-30`. - ``` -cargo +nightly test +cargo test ``` ### How to Build diff --git a/pallets/orml-currencies-allowance-extension/src/lib.rs b/pallets/orml-currencies-allowance-extension/src/lib.rs index 1fc748de2..7f488a0e4 100644 --- a/pallets/orml-currencies-allowance-extension/src/lib.rs +++ b/pallets/orml-currencies-allowance-extension/src/lib.rs @@ -1,5 +1,4 @@ #![deny(warnings)] -#![cfg_attr(test, feature(proc_macro_hygiene))] #![cfg_attr(not(feature = "std"), no_std)] diff --git a/pallets/orml-tokens-management-extension/src/lib.rs b/pallets/orml-tokens-management-extension/src/lib.rs index 1a5d60662..ad0cc7549 100644 --- a/pallets/orml-tokens-management-extension/src/lib.rs +++ b/pallets/orml-tokens-management-extension/src/lib.rs @@ -1,5 +1,4 @@ #![deny(warnings)] -#![cfg_attr(test, feature(proc_macro_hygiene))] #![cfg_attr(not(feature = "std"), no_std)] diff --git a/pallets/treasury-buyout-extension/src/lib.rs b/pallets/treasury-buyout-extension/src/lib.rs index c8c4b5839..a1831fdc6 100644 --- a/pallets/treasury-buyout-extension/src/lib.rs +++ b/pallets/treasury-buyout-extension/src/lib.rs @@ -1,5 +1,4 @@ #![deny(warnings)] -#![cfg_attr(test, feature(proc_macro_hygiene))] #![cfg_attr(not(feature = "std"), no_std)] #[cfg(feature = "runtime-benchmarks")] diff --git a/runtime/amplitude/src/lib.rs b/runtime/amplitude/src/lib.rs index b98d8bd22..3e60d49c0 100644 --- a/runtime/amplitude/src/lib.rs +++ b/runtime/amplitude/src/lib.rs @@ -1827,15 +1827,15 @@ impl_runtime_apis! { use frame_system_benchmarking::Pallet as SystemBench; use baseline::Pallet as BaselineBench; - #[allow(non_local_definitions)] + impl frame_system_benchmarking::Config for Runtime {} - #[allow(non_local_definitions)] + impl baseline::Config for Runtime {} - #[allow(non_local_definitions)] + impl runtime_common::benchmarking::orml_asset_registry::Config for Runtime {} use cumulus_pallet_session_benchmarking::Pallet as SessionBench; - #[allow(non_local_definitions)] + impl cumulus_pallet_session_benchmarking::Config for Runtime {} let whitelist: Vec = vec![ diff --git a/runtime/foucoco/src/lib.rs b/runtime/foucoco/src/lib.rs index f8af075dd..cdba2df50 100644 --- a/runtime/foucoco/src/lib.rs +++ b/runtime/foucoco/src/lib.rs @@ -1830,15 +1830,15 @@ impl_runtime_apis! { use frame_system_benchmarking::Pallet as SystemBench; use baseline::Pallet as BaselineBench; - #[allow(non_local_definitions)] + impl frame_system_benchmarking::Config for Runtime {} - #[allow(non_local_definitions)] + impl baseline::Config for Runtime {} - #[allow(non_local_definitions)] + impl runtime_common::benchmarking::orml_asset_registry::Config for Runtime {} use cumulus_pallet_session_benchmarking::Pallet as SessionBench; - #[allow(non_local_definitions)] + impl cumulus_pallet_session_benchmarking::Config for Runtime {} let whitelist: Vec = vec![ diff --git a/runtime/pendulum/src/lib.rs b/runtime/pendulum/src/lib.rs index ef21ead44..dfab128c4 100644 --- a/runtime/pendulum/src/lib.rs +++ b/runtime/pendulum/src/lib.rs @@ -1828,15 +1828,15 @@ impl_runtime_apis! { use frame_system_benchmarking::Pallet as SystemBench; use baseline::Pallet as BaselineBench; - #[allow(non_local_definitions)] + impl frame_system_benchmarking::Config for Runtime {} - #[allow(non_local_definitions)] + impl baseline::Config for Runtime {} - #[allow(non_local_definitions)] + impl runtime_common::benchmarking::orml_asset_registry::Config for Runtime {} use cumulus_pallet_session_benchmarking::Pallet as SessionBench; - #[allow(non_local_definitions)] + impl cumulus_pallet_session_benchmarking::Config for Runtime {} From 1fb9a234670d4fa25f427fca9fc88f4e42b5c761 Mon Sep 17 00:00:00 2001 From: b-yap <2826165+b-yap@users.noreply.github.com> Date: Fri, 13 Sep 2024 13:14:41 +0800 Subject: [PATCH 25/38] https://github.com/pendulum-chain/pendulum/actions/runs/10827044810/job/30039330371#step:5:1949 --- runtime/integration-tests/src/genesis.rs | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime/integration-tests/src/genesis.rs b/runtime/integration-tests/src/genesis.rs index 84abb30a3..672031da2 100644 --- a/runtime/integration-tests/src/genesis.rs +++ b/runtime/integration-tests/src/genesis.rs @@ -81,7 +81,6 @@ macro_rules! genesis_gen { pub fn genesis_sibling(para_id: u32) -> Storage { use sibling::BuildStorage; - use crate::genesis::SAFE_XCM_VERSION; let token_balances = accounts::init_balances() .iter() From 1c4f8e5d27354be5a91da5a18fa372ec599290b4 Mon Sep 17 00:00:00 2001 From: b-yap <2826165+b-yap@users.noreply.github.com> Date: Fri, 13 Sep 2024 16:47:48 +0800 Subject: [PATCH 26/38] set the features, remove `--all` --- .github/workflows/test-code.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-code.yml b/.github/workflows/test-code.yml index b6a205a18..e30fa6799 100644 --- a/.github/workflows/test-code.yml +++ b/.github/workflows/test-code.yml @@ -32,7 +32,7 @@ jobs: uses: actions-rs/cargo@v1 with: command: test - args: --all --release --features runtime-benchmarks try-runtime + args: --release --features=runtime-benchmarks,try-runtime - name: Clippy -- Main uses: actions-rs/cargo@v1 From 27b8c03b6e4e379eb3f8ea220847f7eae7dbcf0b Mon Sep 17 00:00:00 2001 From: b-yap <2826165+b-yap@users.noreply.github.com> Date: Fri, 13 Sep 2024 23:39:05 +0800 Subject: [PATCH 27/38] integration-test does not need the `runtime-benchmarks` and `try-runtime` move the benchmark to another workflow --- .github/workflows/test-benchmark.yml | 29 ++++++++++++++++++++++++++++ runtime/integration-tests/src/lib.rs | 2 ++ 2 files changed, 31 insertions(+) create mode 100644 .github/workflows/test-benchmark.yml diff --git a/.github/workflows/test-benchmark.yml b/.github/workflows/test-benchmark.yml new file mode 100644 index 000000000..87edf0c02 --- /dev/null +++ b/.github/workflows/test-benchmark.yml @@ -0,0 +1,29 @@ +name: Test Code + +on: + pull_request: + push: + branches: + - main + +jobs: + test-code: + runs-on: ubuntu-latest + env: + # Make sure CI fails on all warnings, including Clippy lints + RUSTFLAGS: "-Dwarnings" + + steps: + - uses: actions/checkout@v3 + - uses: ./.github/actions/shared + + - name: Install Protoc + uses: arduino/setup-protoc@v1 + with: + repo-token: ${{ secrets.GITHUB_TOKEN }} + + - name: Test For runtime benchmarks + uses: actions-rs/cargo@v1 + with: + command: test + args: --features=runtime-benchmarks,try-runtime \ No newline at end of file diff --git a/runtime/integration-tests/src/lib.rs b/runtime/integration-tests/src/lib.rs index 5f4b82297..af2125453 100644 --- a/runtime/integration-tests/src/lib.rs +++ b/runtime/integration-tests/src/lib.rs @@ -1,3 +1,5 @@ +#![cfg(all(test, not(any(feature = "try-runtime", feature = "runtime-benchmarks"))))] + #[cfg(test)] mod mock; From 7f42598e577e5ea9f7869e96e31b76e3ab5893e0 Mon Sep 17 00:00:00 2001 From: b-yap <2826165+b-yap@users.noreply.github.com> Date: Fri, 13 Sep 2024 23:40:06 +0800 Subject: [PATCH 28/38] rename the workflow name --- .github/workflows/test-benchmark.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-benchmark.yml b/.github/workflows/test-benchmark.yml index 87edf0c02..76e09cbda 100644 --- a/.github/workflows/test-benchmark.yml +++ b/.github/workflows/test-benchmark.yml @@ -1,4 +1,4 @@ -name: Test Code +name: Test Benchmark on: pull_request: From 13cb0200523f60aebb7c8514fa59e665dc2c0a0d Mon Sep 17 00:00:00 2001 From: b-yap <2826165+b-yap@users.noreply.github.com> Date: Sat, 14 Sep 2024 02:02:39 +0800 Subject: [PATCH 29/38] revert to ubuntu-20 --- .github/workflows/test-benchmark.yml | 2 +- .github/workflows/test-code.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-benchmark.yml b/.github/workflows/test-benchmark.yml index 76e09cbda..bc164745d 100644 --- a/.github/workflows/test-benchmark.yml +++ b/.github/workflows/test-benchmark.yml @@ -8,7 +8,7 @@ on: jobs: test-code: - runs-on: ubuntu-latest + runs-on: ubuntu-20.04 env: # Make sure CI fails on all warnings, including Clippy lints RUSTFLAGS: "-Dwarnings" diff --git a/.github/workflows/test-code.yml b/.github/workflows/test-code.yml index e30fa6799..3ddadf6c2 100644 --- a/.github/workflows/test-code.yml +++ b/.github/workflows/test-code.yml @@ -8,7 +8,7 @@ on: jobs: test-code: - runs-on: ubuntu-latest + runs-on: ubuntu-20.04 env: # Make sure CI fails on all warnings, including Clippy lints RUSTFLAGS: "-Dwarnings" From 24814eed2a86cbf349b0354de0de5a9d6d970310 Mon Sep 17 00:00:00 2001 From: b-yap <2826165+b-yap@users.noreply.github.com> Date: Mon, 16 Sep 2024 14:28:34 +0800 Subject: [PATCH 30/38] clear disk space --- .github/workflows/test-benchmark.yml | 8 ++++++-- .github/workflows/test-code.yml | 11 +++++++++-- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/.github/workflows/test-benchmark.yml b/.github/workflows/test-benchmark.yml index bc164745d..ed2660c78 100644 --- a/.github/workflows/test-benchmark.yml +++ b/.github/workflows/test-benchmark.yml @@ -14,8 +14,12 @@ jobs: RUSTFLAGS: "-Dwarnings" steps: - - uses: actions/checkout@v3 - - uses: ./.github/actions/shared + # Free GitHub Actions Environment Disk Space + - name: Maximize Build Space + uses: jlumbroso/free-disk-space@main + with: + tool-cache: false + large-packages: false - name: Install Protoc uses: arduino/setup-protoc@v1 diff --git a/.github/workflows/test-code.yml b/.github/workflows/test-code.yml index 3ddadf6c2..94083ed9f 100644 --- a/.github/workflows/test-code.yml +++ b/.github/workflows/test-code.yml @@ -14,8 +14,15 @@ jobs: RUSTFLAGS: "-Dwarnings" steps: - - uses: actions/checkout@v3 - - uses: ./.github/actions/shared + # Free GitHub Actions Environment Disk Space + - name: Maximize Build Space + uses: jlumbroso/free-disk-space@main + with: + tool-cache: false + large-packages: false + +# - uses: actions/checkout@v3 +# - uses: ./.github/actions/shared - name: Install Protoc uses: arduino/setup-protoc@v1 From c5dacb5577b84aac2008b9170657ae609ffa34ee Mon Sep 17 00:00:00 2001 From: b-yap <2826165+b-yap@users.noreply.github.com> Date: Mon, 16 Sep 2024 14:46:04 +0800 Subject: [PATCH 31/38] add back the accidentally deleted checkout --- .github/workflows/test-benchmark.yml | 2 ++ .github/workflows/test-code.yml | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/test-benchmark.yml b/.github/workflows/test-benchmark.yml index ed2660c78..0f92df09b 100644 --- a/.github/workflows/test-benchmark.yml +++ b/.github/workflows/test-benchmark.yml @@ -21,6 +21,8 @@ jobs: tool-cache: false large-packages: false + - uses: actions/checkout@v3 + - name: Install Protoc uses: arduino/setup-protoc@v1 with: diff --git a/.github/workflows/test-code.yml b/.github/workflows/test-code.yml index 94083ed9f..b0919610e 100644 --- a/.github/workflows/test-code.yml +++ b/.github/workflows/test-code.yml @@ -21,7 +21,7 @@ jobs: tool-cache: false large-packages: false -# - uses: actions/checkout@v3 + - uses: actions/checkout@v3 # - uses: ./.github/actions/shared - name: Install Protoc From de2fced73a52735746195a1b69d7f0c0adee8b92 Mon Sep 17 00:00:00 2001 From: b-yap <2826165+b-yap@users.noreply.github.com> Date: Mon, 16 Sep 2024 16:32:31 +0800 Subject: [PATCH 32/38] revert to latest because of https://github.com/rust-lang/rustup/issues/3581 --- .github/workflows/test-benchmark.yml | 2 +- .github/workflows/test-code.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-benchmark.yml b/.github/workflows/test-benchmark.yml index 0f92df09b..e06d3e4dd 100644 --- a/.github/workflows/test-benchmark.yml +++ b/.github/workflows/test-benchmark.yml @@ -8,7 +8,7 @@ on: jobs: test-code: - runs-on: ubuntu-20.04 + runs-on: ubuntu-latest env: # Make sure CI fails on all warnings, including Clippy lints RUSTFLAGS: "-Dwarnings" diff --git a/.github/workflows/test-code.yml b/.github/workflows/test-code.yml index b0919610e..5bb82b40d 100644 --- a/.github/workflows/test-code.yml +++ b/.github/workflows/test-code.yml @@ -8,7 +8,7 @@ on: jobs: test-code: - runs-on: ubuntu-20.04 + runs-on: ubuntu-latest env: # Make sure CI fails on all warnings, including Clippy lints RUSTFLAGS: "-Dwarnings" From fe498b13f27bff15deb11cf1e03344a15ce42a53 Mon Sep 17 00:00:00 2001 From: b-yap <2826165+b-yap@users.noreply.github.com> Date: Mon, 16 Sep 2024 18:09:59 +0800 Subject: [PATCH 33/38] reapply the other cleans --- .github/workflows/test-benchmark.yml | 1 + .github/workflows/test-code.yml | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/test-benchmark.yml b/.github/workflows/test-benchmark.yml index e06d3e4dd..803e308b5 100644 --- a/.github/workflows/test-benchmark.yml +++ b/.github/workflows/test-benchmark.yml @@ -21,6 +21,7 @@ jobs: tool-cache: false large-packages: false + - uses: ./.github/actions/shared - uses: actions/checkout@v3 - name: Install Protoc diff --git a/.github/workflows/test-code.yml b/.github/workflows/test-code.yml index 5bb82b40d..838ece41d 100644 --- a/.github/workflows/test-code.yml +++ b/.github/workflows/test-code.yml @@ -21,8 +21,8 @@ jobs: tool-cache: false large-packages: false + - uses: ./.github/actions/shared - uses: actions/checkout@v3 -# - uses: ./.github/actions/shared - name: Install Protoc uses: arduino/setup-protoc@v1 From a788bc29eeac79fe9c1db87504e6be8f2330ec80 Mon Sep 17 00:00:00 2001 From: b-yap <2826165+b-yap@users.noreply.github.com> Date: Tue, 17 Sep 2024 18:14:22 +0800 Subject: [PATCH 34/38] fix CI --- .github/actions/shared/action.yml | 7 +++++ .github/workflows/clippy-checks.yml | 38 +++++++++++++++++++++++++ .github/workflows/test-benchmark.yml | 12 +++----- .github/workflows/test-code.yml | 42 ++++------------------------ 4 files changed, 54 insertions(+), 45 deletions(-) create mode 100644 .github/workflows/clippy-checks.yml diff --git a/.github/actions/shared/action.yml b/.github/actions/shared/action.yml index f09694c88..8f3035901 100644 --- a/.github/actions/shared/action.yml +++ b/.github/actions/shared/action.yml @@ -25,6 +25,13 @@ runs: df -h shell: bash + # Free GitHub Actions Environment Disk Space + - name: Maximize Build Space + uses: jlumbroso/free-disk-space@main + with: + tool-cache: false + large-packages: false + - name: Install package run: | echo 'APT::Get::Always-Include-Phased-Updates "false";' | sudo tee /etc/apt/apt.conf.d/99-phased-updates diff --git a/.github/workflows/clippy-checks.yml b/.github/workflows/clippy-checks.yml new file mode 100644 index 000000000..fc5704602 --- /dev/null +++ b/.github/workflows/clippy-checks.yml @@ -0,0 +1,38 @@ +name: Clippy Checks + +on: + pull_request: + push: + branches: + - main + +jobs: + clippy-checks: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Free up Space and Installation + uses: ./.github/actions/shared + + - name: Clippy -- Main + uses: actions-rs/cargo@v1 + with: + command: clippy + args: --all-features -- -W clippy::all -A clippy::style -A forgetting_copy_types -A forgetting_references + + - name: Clippy -- All Targets (except integration) + uses: actions-rs/cargo@v1 + with: + command: clippy + # We are a bit more forgiving when it comes to the code in tests and only check for correctness + args: --workspace --all-features --all-targets --exclude runtime-integration-tests -- -A clippy::all -W clippy::correctness -A forgetting_copy_types -A forgetting_references + + - name: Clippy -- Integration + uses: actions-rs/cargo@v1 + with: + command: clippy + # We are a bit more forgiving when it comes to the code in tests and only check for correctness + args: --package runtime-integration-tests --all-features --all-targets -- -A clippy::all -W clippy::correctness -A forgetting_copy_types -A forgetting_references + diff --git a/.github/workflows/test-benchmark.yml b/.github/workflows/test-benchmark.yml index 803e308b5..e6cd4b437 100644 --- a/.github/workflows/test-benchmark.yml +++ b/.github/workflows/test-benchmark.yml @@ -14,15 +14,11 @@ jobs: RUSTFLAGS: "-Dwarnings" steps: - # Free GitHub Actions Environment Disk Space - - name: Maximize Build Space - uses: jlumbroso/free-disk-space@main - with: - tool-cache: false - large-packages: false + - name: Checkout + uses: actions/checkout@v4 - - uses: ./.github/actions/shared - - uses: actions/checkout@v3 + - name: Free up Space and Installation + uses: ./.github/actions/shared - name: Install Protoc uses: arduino/setup-protoc@v1 diff --git a/.github/workflows/test-code.yml b/.github/workflows/test-code.yml index 838ece41d..eb22b8e8b 100644 --- a/.github/workflows/test-code.yml +++ b/.github/workflows/test-code.yml @@ -14,15 +14,11 @@ jobs: RUSTFLAGS: "-Dwarnings" steps: - # Free GitHub Actions Environment Disk Space - - name: Maximize Build Space - uses: jlumbroso/free-disk-space@main - with: - tool-cache: false - large-packages: false + - name: Checkout + uses: actions/checkout@v4 - - uses: ./.github/actions/shared - - uses: actions/checkout@v3 + - name: Free up Space and Installation + uses: ./.github/actions/shared - name: Install Protoc uses: arduino/setup-protoc@v1 @@ -32,32 +28,4 @@ jobs: - name: Test uses: actions-rs/cargo@v1 with: - command: test - args: --release --features runtime-benchmarks try-runtime - - - name: Test For runtime benchmarks - uses: actions-rs/cargo@v1 - with: - command: test - args: --release --features=runtime-benchmarks,try-runtime - - - name: Clippy -- Main - uses: actions-rs/cargo@v1 - with: - command: clippy - args: --release --all-features -- -W clippy::all -A clippy::style -A forgetting_copy_types -A forgetting_references - - - name: Clippy -- All Targets (except integration) - uses: actions-rs/cargo@v1 - with: - command: clippy - # We are a bit more forgiving when it comes to the code in tests and only check for correctness - args: --workspace --release --all-features --all-targets --exclude runtime-integration-tests -- -A clippy::all -W clippy::correctness -A forgetting_copy_types -A forgetting_references - - - name: Clippy -- Integration - uses: actions-rs/cargo@v1 - with: - command: clippy - # We are a bit more forgiving when it comes to the code in tests and only check for correctness - args: --package runtime-integration-tests --release --all-features --all-targets -- -A clippy::all -W clippy::correctness -A forgetting_copy_types -A forgetting_references - \ No newline at end of file + command: test \ No newline at end of file From 5ff9f5842a3851decc3b6e30454d3dad8fd4db43 Mon Sep 17 00:00:00 2001 From: b-yap <2826165+b-yap@users.noreply.github.com> Date: Tue, 17 Sep 2024 19:59:05 +0800 Subject: [PATCH 35/38] remove bandersnatch update CI to 1 file only --- .github/actions/shared/action.yml | 11 ++++-- .github/workflows/clippy-checks.yml | 38 ------------------- .github/workflows/test-benchmark.yml | 32 ---------------- .github/workflows/test-code.yml | 57 ++++++++++++++++++++++++---- Cargo.toml | 6 +-- 5 files changed, 58 insertions(+), 86 deletions(-) delete mode 100644 .github/workflows/clippy-checks.yml delete mode 100644 .github/workflows/test-benchmark.yml diff --git a/.github/actions/shared/action.yml b/.github/actions/shared/action.yml index 8f3035901..8087e1cf4 100644 --- a/.github/actions/shared/action.yml +++ b/.github/actions/shared/action.yml @@ -32,12 +32,17 @@ runs: tool-cache: false large-packages: false - - name: Install package + # Steps taken from https://github.com/actions/runner-images/issues/7192#issuecomment-1446766800 + - name: Disable Phase Updates + shell: bash run: | echo 'APT::Get::Always-Include-Phased-Updates "false";' | sudo tee /etc/apt/apt.conf.d/99-phased-updates - sudo apt-get update && sudo apt-get upgrade -y - sudo apt-get install -y protobuf-compiler libprotobuf-dev + + - name: Update, Upgrade, and Install Protobuf shell: bash + run: | + sudo apt-get update && sudo apt-get upgrade -y + sudo apt-get install -y protobuf-compiler libprotobuf-dev # Steps taken from https://github.com/actions/cache/blob/master/examples.md#rust---cargo - name: Cache cargo registry diff --git a/.github/workflows/clippy-checks.yml b/.github/workflows/clippy-checks.yml deleted file mode 100644 index fc5704602..000000000 --- a/.github/workflows/clippy-checks.yml +++ /dev/null @@ -1,38 +0,0 @@ -name: Clippy Checks - -on: - pull_request: - push: - branches: - - main - -jobs: - clippy-checks: - runs-on: ubuntu-latest - steps: - - name: Checkout - uses: actions/checkout@v4 - - - name: Free up Space and Installation - uses: ./.github/actions/shared - - - name: Clippy -- Main - uses: actions-rs/cargo@v1 - with: - command: clippy - args: --all-features -- -W clippy::all -A clippy::style -A forgetting_copy_types -A forgetting_references - - - name: Clippy -- All Targets (except integration) - uses: actions-rs/cargo@v1 - with: - command: clippy - # We are a bit more forgiving when it comes to the code in tests and only check for correctness - args: --workspace --all-features --all-targets --exclude runtime-integration-tests -- -A clippy::all -W clippy::correctness -A forgetting_copy_types -A forgetting_references - - - name: Clippy -- Integration - uses: actions-rs/cargo@v1 - with: - command: clippy - # We are a bit more forgiving when it comes to the code in tests and only check for correctness - args: --package runtime-integration-tests --all-features --all-targets -- -A clippy::all -W clippy::correctness -A forgetting_copy_types -A forgetting_references - diff --git a/.github/workflows/test-benchmark.yml b/.github/workflows/test-benchmark.yml deleted file mode 100644 index e6cd4b437..000000000 --- a/.github/workflows/test-benchmark.yml +++ /dev/null @@ -1,32 +0,0 @@ -name: Test Benchmark - -on: - pull_request: - push: - branches: - - main - -jobs: - test-code: - runs-on: ubuntu-latest - env: - # Make sure CI fails on all warnings, including Clippy lints - RUSTFLAGS: "-Dwarnings" - - steps: - - name: Checkout - uses: actions/checkout@v4 - - - name: Free up Space and Installation - uses: ./.github/actions/shared - - - name: Install Protoc - uses: arduino/setup-protoc@v1 - with: - repo-token: ${{ secrets.GITHUB_TOKEN }} - - - name: Test For runtime benchmarks - uses: actions-rs/cargo@v1 - with: - command: test - args: --features=runtime-benchmarks,try-runtime \ No newline at end of file diff --git a/.github/workflows/test-code.yml b/.github/workflows/test-code.yml index eb22b8e8b..daa6c045a 100644 --- a/.github/workflows/test-code.yml +++ b/.github/workflows/test-code.yml @@ -5,13 +5,13 @@ on: push: branches: - main +env: + # Make sure CI fails on all warnings, including Clippy lints + RUSTFLAGS: "-Dwarnings" jobs: test-code: runs-on: ubuntu-latest - env: - # Make sure CI fails on all warnings, including Clippy lints - RUSTFLAGS: "-Dwarnings" steps: - name: Checkout @@ -20,12 +20,53 @@ jobs: - name: Free up Space and Installation uses: ./.github/actions/shared - - name: Install Protoc - uses: arduino/setup-protoc@v1 + - name: Test + uses: actions-rs/cargo@v1 with: - repo-token: ${{ secrets.GITHUB_TOKEN }} + command: test - - name: Test + test-benchmarks: + runs-on: ubuntu-latest + + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Free up Space and Installation + uses: ./.github/actions/shared + + - name: Test For runtime benchmarks + uses: actions-rs/cargo@v1 + with: + command: test + args: --features=runtime-benchmarks,try-runtime + + clippy-checks: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Free up Space and Installation + uses: ./.github/actions/shared + + - name: Clippy -- Main uses: actions-rs/cargo@v1 with: - command: test \ No newline at end of file + command: clippy + args: --all-features -- -W clippy::all -A clippy::style -A forgetting_copy_types -A forgetting_references + + - name: Clippy -- All Targets (except integration) + uses: actions-rs/cargo@v1 + with: + command: clippy + # We are a bit more forgiving when it comes to the code in tests and only check for correctness + args: --workspace --all-features --all-targets --exclude runtime-integration-tests -- -A clippy::all -W clippy::correctness -A forgetting_copy_types -A forgetting_references + + - name: Clippy -- Integration + uses: actions-rs/cargo@v1 + with: + command: clippy + # We are a bit more forgiving when it comes to the code in tests and only check for correctness + args: --package runtime-integration-tests --all-features --all-targets -- -A clippy::all -W clippy::correctness -A forgetting_copy_types -A forgetting_references + diff --git a/Cargo.toml b/Cargo.toml index 149b80fbe..12401da87 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -32,8 +32,4 @@ orml-tokens = { git = "https://github.com/open-web3-stack//open-runtime-module-l ### need this because of bifrost farming dependency in runtime ### bifrost uses : ### orml packages { version = "0.4.1-dev" } -### zenlink packages { version = "*" } - -# probable patch for nightly -#[patch."https://github.com/w3f/ring-vrf"] -#bandersnatch_vrfs = { git = "https://github.com/w3f//ring-vrf", version = "0.0.4", rev = "3ddc20" } \ No newline at end of file +### zenlink packages { version = "*" } \ No newline at end of file From dc61d7aa07930b19711153666710e4cf108bf288 Mon Sep 17 00:00:00 2001 From: b-yap <2826165+b-yap@users.noreply.github.com> Date: Tue, 17 Sep 2024 22:45:50 +0800 Subject: [PATCH 36/38] revert from https://github.com/pendulum-chain/pendulum/pull/488/commits/71396e6a6d22e29b5863b79a5ea20f36527df627 --- .github/workflows/clippy-checks.yml | 38 +++++++++++++++++++ .github/workflows/test-benchmark.yml | 32 ++++++++++++++++ .github/workflows/test-code.yml | 57 ++++------------------------ 3 files changed, 78 insertions(+), 49 deletions(-) create mode 100644 .github/workflows/clippy-checks.yml create mode 100644 .github/workflows/test-benchmark.yml diff --git a/.github/workflows/clippy-checks.yml b/.github/workflows/clippy-checks.yml new file mode 100644 index 000000000..fc5704602 --- /dev/null +++ b/.github/workflows/clippy-checks.yml @@ -0,0 +1,38 @@ +name: Clippy Checks + +on: + pull_request: + push: + branches: + - main + +jobs: + clippy-checks: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Free up Space and Installation + uses: ./.github/actions/shared + + - name: Clippy -- Main + uses: actions-rs/cargo@v1 + with: + command: clippy + args: --all-features -- -W clippy::all -A clippy::style -A forgetting_copy_types -A forgetting_references + + - name: Clippy -- All Targets (except integration) + uses: actions-rs/cargo@v1 + with: + command: clippy + # We are a bit more forgiving when it comes to the code in tests and only check for correctness + args: --workspace --all-features --all-targets --exclude runtime-integration-tests -- -A clippy::all -W clippy::correctness -A forgetting_copy_types -A forgetting_references + + - name: Clippy -- Integration + uses: actions-rs/cargo@v1 + with: + command: clippy + # We are a bit more forgiving when it comes to the code in tests and only check for correctness + args: --package runtime-integration-tests --all-features --all-targets -- -A clippy::all -W clippy::correctness -A forgetting_copy_types -A forgetting_references + diff --git a/.github/workflows/test-benchmark.yml b/.github/workflows/test-benchmark.yml new file mode 100644 index 000000000..e6cd4b437 --- /dev/null +++ b/.github/workflows/test-benchmark.yml @@ -0,0 +1,32 @@ +name: Test Benchmark + +on: + pull_request: + push: + branches: + - main + +jobs: + test-code: + runs-on: ubuntu-latest + env: + # Make sure CI fails on all warnings, including Clippy lints + RUSTFLAGS: "-Dwarnings" + + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Free up Space and Installation + uses: ./.github/actions/shared + + - name: Install Protoc + uses: arduino/setup-protoc@v1 + with: + repo-token: ${{ secrets.GITHUB_TOKEN }} + + - name: Test For runtime benchmarks + uses: actions-rs/cargo@v1 + with: + command: test + args: --features=runtime-benchmarks,try-runtime \ No newline at end of file diff --git a/.github/workflows/test-code.yml b/.github/workflows/test-code.yml index daa6c045a..eb22b8e8b 100644 --- a/.github/workflows/test-code.yml +++ b/.github/workflows/test-code.yml @@ -5,13 +5,13 @@ on: push: branches: - main -env: - # Make sure CI fails on all warnings, including Clippy lints - RUSTFLAGS: "-Dwarnings" jobs: test-code: runs-on: ubuntu-latest + env: + # Make sure CI fails on all warnings, including Clippy lints + RUSTFLAGS: "-Dwarnings" steps: - name: Checkout @@ -20,53 +20,12 @@ jobs: - name: Free up Space and Installation uses: ./.github/actions/shared - - name: Test - uses: actions-rs/cargo@v1 - with: - command: test - - test-benchmarks: - runs-on: ubuntu-latest - - steps: - - name: Checkout - uses: actions/checkout@v4 - - - name: Free up Space and Installation - uses: ./.github/actions/shared - - - name: Test For runtime benchmarks - uses: actions-rs/cargo@v1 - with: - command: test - args: --features=runtime-benchmarks,try-runtime - - clippy-checks: - runs-on: ubuntu-latest - steps: - - name: Checkout - uses: actions/checkout@v4 - - - name: Free up Space and Installation - uses: ./.github/actions/shared - - - name: Clippy -- Main - uses: actions-rs/cargo@v1 + - name: Install Protoc + uses: arduino/setup-protoc@v1 with: - command: clippy - args: --all-features -- -W clippy::all -A clippy::style -A forgetting_copy_types -A forgetting_references + repo-token: ${{ secrets.GITHUB_TOKEN }} - - name: Clippy -- All Targets (except integration) - uses: actions-rs/cargo@v1 - with: - command: clippy - # We are a bit more forgiving when it comes to the code in tests and only check for correctness - args: --workspace --all-features --all-targets --exclude runtime-integration-tests -- -A clippy::all -W clippy::correctness -A forgetting_copy_types -A forgetting_references - - - name: Clippy -- Integration + - name: Test uses: actions-rs/cargo@v1 with: - command: clippy - # We are a bit more forgiving when it comes to the code in tests and only check for correctness - args: --package runtime-integration-tests --all-features --all-targets -- -A clippy::all -W clippy::correctness -A forgetting_copy_types -A forgetting_references - + command: test \ No newline at end of file From 40f0e158c1ee96ab44a94806b92f9336ee3b9081 Mon Sep 17 00:00:00 2001 From: b-yap <2826165+b-yap@users.noreply.github.com> Date: Tue, 22 Oct 2024 21:07:15 +0800 Subject: [PATCH 37/38] rebase and fix yml files. --- .github/workflows/clippy-checks.yml | 6 +++--- .github/workflows/test-benchmark.yml | 32 ---------------------------- .github/workflows/test-code.yml | 9 +++++++- 3 files changed, 11 insertions(+), 36 deletions(-) delete mode 100644 .github/workflows/test-benchmark.yml diff --git a/.github/workflows/clippy-checks.yml b/.github/workflows/clippy-checks.yml index fc5704602..a2626806c 100644 --- a/.github/workflows/clippy-checks.yml +++ b/.github/workflows/clippy-checks.yml @@ -20,19 +20,19 @@ jobs: uses: actions-rs/cargo@v1 with: command: clippy - args: --all-features -- -W clippy::all -A clippy::style -A forgetting_copy_types -A forgetting_references + args: --release --all-features -- -W clippy::all -A clippy::style -A forgetting_copy_types -A forgetting_references - name: Clippy -- All Targets (except integration) uses: actions-rs/cargo@v1 with: command: clippy # We are a bit more forgiving when it comes to the code in tests and only check for correctness - args: --workspace --all-features --all-targets --exclude runtime-integration-tests -- -A clippy::all -W clippy::correctness -A forgetting_copy_types -A forgetting_references + args: --release --workspace --all-features --all-targets --exclude runtime-integration-tests -- -A clippy::all -W clippy::correctness -A forgetting_copy_types -A forgetting_references - name: Clippy -- Integration uses: actions-rs/cargo@v1 with: command: clippy # We are a bit more forgiving when it comes to the code in tests and only check for correctness - args: --package runtime-integration-tests --all-features --all-targets -- -A clippy::all -W clippy::correctness -A forgetting_copy_types -A forgetting_references + args: --release --package runtime-integration-tests --all-features --all-targets -- -A clippy::all -W clippy::correctness -A forgetting_copy_types -A forgetting_references diff --git a/.github/workflows/test-benchmark.yml b/.github/workflows/test-benchmark.yml deleted file mode 100644 index e6cd4b437..000000000 --- a/.github/workflows/test-benchmark.yml +++ /dev/null @@ -1,32 +0,0 @@ -name: Test Benchmark - -on: - pull_request: - push: - branches: - - main - -jobs: - test-code: - runs-on: ubuntu-latest - env: - # Make sure CI fails on all warnings, including Clippy lints - RUSTFLAGS: "-Dwarnings" - - steps: - - name: Checkout - uses: actions/checkout@v4 - - - name: Free up Space and Installation - uses: ./.github/actions/shared - - - name: Install Protoc - uses: arduino/setup-protoc@v1 - with: - repo-token: ${{ secrets.GITHUB_TOKEN }} - - - name: Test For runtime benchmarks - uses: actions-rs/cargo@v1 - with: - command: test - args: --features=runtime-benchmarks,try-runtime \ No newline at end of file diff --git a/.github/workflows/test-code.yml b/.github/workflows/test-code.yml index eb22b8e8b..b00ec0604 100644 --- a/.github/workflows/test-code.yml +++ b/.github/workflows/test-code.yml @@ -28,4 +28,11 @@ jobs: - name: Test uses: actions-rs/cargo@v1 with: - command: test \ No newline at end of file + command: test + args: --release + + - name: Test for Runtime Benchmarks + uses: actions-rs/cargo@v1 + with: + command: test + args: --release --features=runtime-benchmarks,try-runtime \ No newline at end of file From 1cd5e1b9758b44a41d283304e04df0eb61046a2c Mon Sep 17 00:00:00 2001 From: b-yap <2826165+b-yap@users.noreply.github.com> Date: Tue, 22 Oct 2024 21:15:55 +0800 Subject: [PATCH 38/38] fix issues unrelated to this ticket --- chain-extensions/token/src/lib.rs | 3 +- .../src/lib.rs | 1 - runtime/amplitude/src/lib.rs | 96 +++++++++---------- 3 files changed, 50 insertions(+), 50 deletions(-) diff --git a/chain-extensions/token/src/lib.rs b/chain-extensions/token/src/lib.rs index 47f01db6e..6c4884b43 100644 --- a/chain-extensions/token/src/lib.rs +++ b/chain-extensions/token/src/lib.rs @@ -157,7 +157,8 @@ where T: SysConfig + orml_tokens::Config + pallet_contracts::Config - + orml_currencies::Config + + orml_currencies::Config + + pallet_balances::Config + orml_currencies_allowance_extension::Config, E: Ext, Tokens: orml_traits::MultiCurrency, diff --git a/pallets/orml-tokens-management-extension/src/lib.rs b/pallets/orml-tokens-management-extension/src/lib.rs index ad0cc7549..bcff84c1f 100644 --- a/pallets/orml-tokens-management-extension/src/lib.rs +++ b/pallets/orml-tokens-management-extension/src/lib.rs @@ -2,7 +2,6 @@ #![cfg_attr(not(feature = "std"), no_std)] - use sp_std::{convert::TryInto, prelude::*, vec}; #[cfg(feature = "runtime-benchmarks")] diff --git a/runtime/amplitude/src/lib.rs b/runtime/amplitude/src/lib.rs index 3e60d49c0..9f1cf8db0 100644 --- a/runtime/amplitude/src/lib.rs +++ b/runtime/amplitude/src/lib.rs @@ -336,54 +336,54 @@ impl Contains for BaseFilter { fn contains(call: &RuntimeCall) -> bool { match call { // These modules are all allowed to be called by transactions: - RuntimeCall::Bounties(_) | - RuntimeCall::ChildBounties(_) | - RuntimeCall::ClientsInfo(_) | - RuntimeCall::Treasury(_) | - RuntimeCall::Tokens(_) | - RuntimeCall::Currencies(_) | - RuntimeCall::ParachainStaking(_) | - RuntimeCall::Democracy(_) | - RuntimeCall::Council(_) | - RuntimeCall::TechnicalCommittee(_) | - RuntimeCall::System(_) | - RuntimeCall::Scheduler(_) | - RuntimeCall::Preimage(_) | - RuntimeCall::Timestamp(_) | - RuntimeCall::Balances(_) | - RuntimeCall::Session(_) | - RuntimeCall::ParachainSystem(_) | - RuntimeCall::XcmpQueue(_) | - RuntimeCall::PolkadotXcm(_) | - RuntimeCall::DmpQueue(_) | - RuntimeCall::Utility(_) | - RuntimeCall::Vesting(_) | - RuntimeCall::XTokens(_) | - RuntimeCall::Multisig(_) | - RuntimeCall::Identity(_) | - RuntimeCall::Contracts(_) | - RuntimeCall::ZenlinkProtocol(_) | - RuntimeCall::VestingManager(_) | - RuntimeCall::DiaOracleModule(_) | - RuntimeCall::Fee(_) | - RuntimeCall::Issue(_) | - RuntimeCall::Nomination(_) | - RuntimeCall::Oracle(_) | - RuntimeCall::Redeem(_) | - RuntimeCall::Replace(_) | - RuntimeCall::Security(_) | - RuntimeCall::StellarRelay(_) | - RuntimeCall::VaultRegistry(_) | - RuntimeCall::PooledVaultRewards(_) | - RuntimeCall::Farming(_) | - RuntimeCall::TokenAllowance(_) | - RuntimeCall::AssetRegistry(_) | - RuntimeCall::Proxy(_) | - RuntimeCall::TreasuryBuyoutExtension(_) | - RuntimeCall::RewardDistribution(_) | - RuntimeCall::ParachainInfo(_) | - RuntimeCall::CumulusXcm(_) | - RuntimeCall::VaultStaking(_) => true, + RuntimeCall::Bounties(_) + | RuntimeCall::ChildBounties(_) + | RuntimeCall::ClientsInfo(_) + | RuntimeCall::Treasury(_) + | RuntimeCall::Tokens(_) + | RuntimeCall::Currencies(_) + | RuntimeCall::ParachainStaking(_) + | RuntimeCall::Democracy(_) + | RuntimeCall::Council(_) + | RuntimeCall::TechnicalCommittee(_) + | RuntimeCall::System(_) + | RuntimeCall::Scheduler(_) + | RuntimeCall::Preimage(_) + | RuntimeCall::Timestamp(_) + | RuntimeCall::Balances(_) + | RuntimeCall::Session(_) + | RuntimeCall::ParachainSystem(_) + | RuntimeCall::XcmpQueue(_) + | RuntimeCall::PolkadotXcm(_) + | RuntimeCall::DmpQueue(_) + | RuntimeCall::Utility(_) + | RuntimeCall::Vesting(_) + | RuntimeCall::XTokens(_) + | RuntimeCall::Multisig(_) + | RuntimeCall::Identity(_) + | RuntimeCall::Contracts(_) + | RuntimeCall::ZenlinkProtocol(_) + | RuntimeCall::VestingManager(_) + | RuntimeCall::DiaOracleModule(_) + | RuntimeCall::Fee(_) + | RuntimeCall::Issue(_) + | RuntimeCall::Nomination(_) + | RuntimeCall::Oracle(_) + | RuntimeCall::Redeem(_) + | RuntimeCall::Replace(_) + | RuntimeCall::Security(_) + | RuntimeCall::StellarRelay(_) + | RuntimeCall::VaultRegistry(_) + | RuntimeCall::PooledVaultRewards(_) + | RuntimeCall::Farming(_) + | RuntimeCall::TokenAllowance(_) + | RuntimeCall::AssetRegistry(_) + | RuntimeCall::Proxy(_) + | RuntimeCall::TreasuryBuyoutExtension(_) + | RuntimeCall::RewardDistribution(_) + | RuntimeCall::ParachainInfo(_) + | RuntimeCall::CumulusXcm(_) + | RuntimeCall::VaultStaking(_) => true, // All pallets are allowed, but exhaustive match is defensive // in the case of adding new pallets. }