-
Notifications
You must be signed in to change notification settings - Fork 12.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Type params and assoc types have unit metadata if they are sized #93977
Type params and assoc types have unit metadata if they are sized #93977
Conversation
r? @wesleywiser (rust-highfive has picked a reviewer for you, use r? to override) |
This comment has been minimized.
This comment has been minimized.
ad8a907
to
4774961
Compare
This comment has been minimized.
This comment has been minimized.
83c9cb1
to
0ad6212
Compare
Building stage0 std artifacts (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
Compiling alloc v0.0.0 (/home/simon/projects/rust/library/alloc)
thread 'rustc' panicked at 'no entry found for key', compiler/rustc_metadata/src/rmeta/decoder.rs:1617:13 Building stage0 std artifacts (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
Compiling alloc v0.0.0 (/home/simon/projects/rust/library/alloc)
thread 'rustc' panicked at 'no entry found for key', compiler/rustc_metadata/src/rmeta/decoder.rs:1617:13
stack backtrace:
0: 0x7f6180be8ccc - std::backtrace_rs::backtrace::libunwind::trace::hc419169bf6ef9454
at /rustc/28c8a34e18fc05277c81328d1bbf5ed931f4d22e/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5
1: 0x7f6180be8ccc - std::backtrace_rs::backtrace::trace_unsynchronized::h9d59fe14733c6869
at /rustc/28c8a34e18fc05277c81328d1bbf5ed931f4d22e/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
2: 0x7f6180be8ccc - std::sys_common::backtrace::_print_fmt::h7b4753f1990145e4
at /rustc/28c8a34e18fc05277c81328d1bbf5ed931f4d22e/library/std/src/sys_common/backtrace.rs:67:5
3: 0x7f6180be8ccc - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::he933bf90d5f823a3
at /rustc/28c8a34e18fc05277c81328d1bbf5ed931f4d22e/library/std/src/sys_common/backtrace.rs:46:22
4: 0x7f6180c49b5c - core::fmt::write::h4f22e68bd4c318cf
at /rustc/28c8a34e18fc05277c81328d1bbf5ed931f4d22e/library/core/src/fmt/mod.rs:1168:17
5: 0x7f6180bd8143 - std::io::Write::write_fmt::h91e45975cc2ac4f4
at /rustc/28c8a34e18fc05277c81328d1bbf5ed931f4d22e/library/std/src/io/mod.rs:1660:15
6: 0x7f6180becdd2 - std::sys_common::backtrace::_print::h53eaa013323ce8bd
at /rustc/28c8a34e18fc05277c81328d1bbf5ed931f4d22e/library/std/src/sys_common/backtrace.rs:49:5
7: 0x7f6180becdd2 - std::sys_common::backtrace::print::hddd71819e54744d2
at /rustc/28c8a34e18fc05277c81328d1bbf5ed931f4d22e/library/std/src/sys_common/backtrace.rs:36:9
8: 0x7f6180becdd2 - std::panicking::default_hook::{{closure}}::ha7bb60f433497f90
at /rustc/28c8a34e18fc05277c81328d1bbf5ed931f4d22e/library/std/src/panicking.rs:211:50
9: 0x7f6180bec9b5 - std::panicking::default_hook::he08c1b6dbe4ebf2d
at /rustc/28c8a34e18fc05277c81328d1bbf5ed931f4d22e/library/std/src/panicking.rs:228:9
10: 0x7f61813d95f1 - rustc_driver[6192c8833b08d212]::DEFAULT_HOOK::{closure#0}::{closure#0}
11: 0x7f6180bed585 - std::panicking::rust_panic_with_hook::h4a7addec02e7dc8c
at /rustc/28c8a34e18fc05277c81328d1bbf5ed931f4d22e/library/std/src/panicking.rs:610:17
12: 0x7f6180bed280 - std::panicking::begin_panic_handler::{{closure}}::hd61a91341efd4038
at /rustc/28c8a34e18fc05277c81328d1bbf5ed931f4d22e/library/std/src/panicking.rs:502:13
13: 0x7f6180be9174 - std::sys_common::backtrace::__rust_end_short_backtrace::hf785c5cc16e3ea16
at /rustc/28c8a34e18fc05277c81328d1bbf5ed931f4d22e/library/std/src/sys_common/backtrace.rs:139:18
14: 0x7f6180becfb9 - rust_begin_unwind
at /rustc/28c8a34e18fc05277c81328d1bbf5ed931f4d22e/library/std/src/panicking.rs:498:5
15: 0x7f6180bb5041 - core::panicking::panic_fmt::ha2f5c0f1190ddcde
at /rustc/28c8a34e18fc05277c81328d1bbf5ed931f4d22e/library/core/src/panicking.rs:107:14
16: 0x7f6180c469e1 - core::panicking::panic_display::ha88d4cfddda37f53
at /rustc/28c8a34e18fc05277c81328d1bbf5ed931f4d22e/library/core/src/panicking.rs:63:5
17: 0x7f6180c4698b - core::panicking::panic_str::h1d816edb2312ac8d
at /rustc/28c8a34e18fc05277c81328d1bbf5ed931f4d22e/library/core/src/panicking.rs:55:5
18: 0x7f6180bb4f36 - core::option::expect_failed::hfe692c498deeb864
at /rustc/28c8a34e18fc05277c81328d1bbf5ed931f4d22e/library/core/src/option.rs:1817:5
19: 0x7f6182037a6e - <rustc_metadata[72dae10b32ad85]::creader::CStore as rustc_session[d69b998f511832b7]::cstore::CrateStore>::expn_hash_to_expn_id
20: 0x7f6183869088 - <rustc_span[257a5d576bad4151]::hygiene::ExpnId as rustc_serialize[e0a901503b8dbcae]::serialize::Decodable<rustc_query_impl[18d0a3fa2bdd5685]::on_disk_cache::CacheDecoder>>::decode
21: 0x7f6183869675 - <rustc_span[257a5d576bad4151]::hygiene::SyntaxContextData as rustc_serialize[e0a901503b8dbcae]::serialize::Decodable<rustc_query_impl[18d0a3fa2bdd5685]::on_disk_cache::CacheDecoder>>::decode
22: 0x7f6182d508b1 - <rustc_query_impl[18d0a3fa2bdd5685]::on_disk_cache::CacheDecoder as rustc_middle[57c2e03db41ceede]::ty::codec::TyDecoder>::with_position::<<rustc_span[257a5d576bad4151]::hygiene::SyntaxContext as rustc_serialize[e0a901503b8dbcae]::serialize::Decodable<rustc_query_impl[18d0a3fa2bdd5685]::on_disk_cache::CacheDecoder>>::decode::{closure#0}::{closure#0}, core[5ae97c210862f887]::result::Result<rustc_span[257a5d576bad4151]::hygiene::SyntaxContextData, alloc[5dfd09a990d64525]::string::String>>
23: 0x7f6182d894c1 - <rustc_span[257a5d576bad4151]::span_encoding::Span as rustc_serialize[e0a901503b8dbcae]::serialize::Decodable<rustc_query_impl[18d0a3fa2bdd5685]::on_disk_cache::CacheDecoder>>::decode
24: 0x7f6182d8608b - <rustc_middle[57c2e03db41ceede]::ty::VariantDef as rustc_serialize[e0a901503b8dbcae]::serialize::Decodable<rustc_query_impl[18d0a3fa2bdd5685]::on_disk_cache::CacheDecoder>>::decode
25: 0x7f6182d49d97 - <rustc_query_impl[18d0a3fa2bdd5685]::on_disk_cache::CacheDecoder as rustc_serialize[e0a901503b8dbcae]::serialize::Decoder>::read_seq::<alloc[5dfd09a990d64525]::vec::Vec<rustc_middle[57c2e03db41ceede]::ty::VariantDef>, <alloc[5dfd09a990d64525]::vec::Vec<rustc_middle[57c2e03db41ceede]::ty::VariantDef> as rustc_serialize[e0a901503b8dbcae]::serialize::Decodable<rustc_query_impl[18d0a3fa2bdd5685]::on_disk_cache::CacheDecoder>>::decode::{closure#0}>
26: 0x7f61837f0347 - <rustc_middle[57c2e03db41ceede]::ty::adt::AdtDef as rustc_serialize[e0a901503b8dbcae]::serialize::Decodable<rustc_query_impl[18d0a3fa2bdd5685]::on_disk_cache::CacheDecoder>>::decode
27: 0x7f6182d2ec4b - <rustc_middle[57c2e03db41ceede]::ty::sty::TyKind as rustc_serialize[e0a901503b8dbcae]::serialize::Decodable<rustc_query_impl[18d0a3fa2bdd5685]::on_disk_cache::CacheDecoder>>::decode
28: 0x7f6182d7f2c1 - <&rustc_middle[57c2e03db41ceede]::ty::TyS as rustc_serialize[e0a901503b8dbcae]::serialize::Decodable<rustc_query_impl[18d0a3fa2bdd5685]::on_disk_cache::CacheDecoder>>::decode
29: 0x7f618380d029 - <rustc_query_impl[18d0a3fa2bdd5685]::on_disk_cache::OnDiskCache>::try_load_query_result::<&rustc_middle[57c2e03db41ceede]::ty::TyS>
30: 0x7f6182cce098 - rustc_query_system[89fe9b701e431ad8]::query::plumbing::try_load_from_disk_and_cache_in_memory::<rustc_query_impl[18d0a3fa2bdd5685]::plumbing::QueryCtxt, rustc_span[257a5d576bad4151]::def_id::DefId, &rustc_middle[57c2e03db41ceede]::ty::TyS>
31: 0x7f6182d19ccc - <rustc_query_impl[18d0a3fa2bdd5685]::Queries as rustc_middle[57c2e03db41ceede]::ty::query::QueryEngine>::type_of
32: 0x7f61828cc9d1 - <rustc_typeck[3061d5ce007a7ddd]::outlives::implicit_infer::InferVisitor as rustc_hir[486658192172cdf0]::itemlikevisit::ItemLikeVisitor>::visit_item
33: 0x7f61828a425b - <rustc_middle[57c2e03db41ceede]::hir::map::Map>::visit_all_item_likes::<rustc_typeck[3061d5ce007a7ddd]::outlives::implicit_infer::InferVisitor>
34: 0x7f6183556517 - rustc_typeck[3061d5ce007a7ddd]::outlives::inferred_outlives_crate
35: 0x7f6181ce3d80 - <rustc_middle[57c2e03db41ceede]::dep_graph::dep_node::DepKind as rustc_query_system[89fe9b701e431ad8]::dep_graph::DepKind>::with_deps::<<rustc_query_system[89fe9b701e431ad8]::dep_graph::graph::DepGraph<rustc_middle[57c2e03db41ceede]::dep_graph::dep_node::DepKind>>::with_task_impl<rustc_middle[57c2e03db41ceede]::ty::context::TyCtxt, (), rustc_middle[57c2e03db41ceede]::ty::CratePredicatesMap>::{closure#0}, rustc_middle[57c2e03db41ceede]::ty::CratePredicatesMap>
36: 0x7f6181db62e9 - <rustc_query_system[89fe9b701e431ad8]::dep_graph::graph::DepGraph<rustc_middle[57c2e03db41ceede]::dep_graph::dep_node::DepKind>>::with_task::<rustc_middle[57c2e03db41ceede]::ty::context::TyCtxt, (), rustc_middle[57c2e03db41ceede]::ty::CratePredicatesMap>
37: 0x7f6181cd09fc - rustc_data_structures[5bcc8dcfb4a3daf1]::stack::ensure_sufficient_stack::<(rustc_middle[57c2e03db41ceede]::ty::CratePredicatesMap, rustc_query_system[89fe9b701e431ad8]::dep_graph::graph::DepNodeIndex), rustc_query_system[89fe9b701e431ad8]::query::plumbing::execute_job<rustc_query_impl[18d0a3fa2bdd5685]::plumbing::QueryCtxt, (), rustc_middle[57c2e03db41ceede]::ty::CratePredicatesMap>::{closure#3}>
38: 0x7f61836f906b - rustc_query_system[89fe9b701e431ad8]::query::plumbing::try_execute_query::<rustc_query_impl[18d0a3fa2bdd5685]::plumbing::QueryCtxt, rustc_query_system[89fe9b701e431ad8]::query::caches::ArenaCache<(), rustc_middle[57c2e03db41ceede]::ty::CratePredicatesMap>>
39: 0x7f6181c755aa - rustc_query_system[89fe9b701e431ad8]::query::plumbing::force_query::<rustc_query_impl[18d0a3fa2bdd5685]::queries::inferred_outlives_crate, rustc_query_impl[18d0a3fa2bdd5685]::plumbing::QueryCtxt>
40: 0x7f6181d233c6 - rustc_query_impl[18d0a3fa2bdd5685]::query_callbacks::inferred_outlives_crate::force_from_dep_node
41: 0x7f6183ad7b21 - <rustc_middle[57c2e03db41ceede]::ty::context::TyCtxt as rustc_query_system[89fe9b701e431ad8]::dep_graph::DepContext>::try_force_from_dep_node
42: 0x7f6182d5ef47 - <rustc_query_system[89fe9b701e431ad8]::dep_graph::graph::DepGraph<rustc_middle[57c2e03db41ceede]::dep_graph::dep_node::DepKind>>::try_mark_previous_green::<rustc_query_impl[18d0a3fa2bdd5685]::plumbing::QueryCtxt>
43: 0x7f6182d5e6f6 - <rustc_query_system[89fe9b701e431ad8]::dep_graph::graph::DepGraph<rustc_middle[57c2e03db41ceede]::dep_graph::dep_node::DepKind>>::try_mark_previous_green::<rustc_query_impl[18d0a3fa2bdd5685]::plumbing::QueryCtxt>
44: 0x7f6182d5e6f6 - <rustc_query_system[89fe9b701e431ad8]::dep_graph::graph::DepGraph<rustc_middle[57c2e03db41ceede]::dep_graph::dep_node::DepKind>>::try_mark_previous_green::<rustc_query_impl[18d0a3fa2bdd5685]::plumbing::QueryCtxt>
45: 0x7f6182d5e6f6 - <rustc_query_system[89fe9b701e431ad8]::dep_graph::graph::DepGraph<rustc_middle[57c2e03db41ceede]::dep_graph::dep_node::DepKind>>::try_mark_previous_green::<rustc_query_impl[18d0a3fa2bdd5685]::plumbing::QueryCtxt>
46: 0x7f6182d5e6f6 - <rustc_query_system[89fe9b701e431ad8]::dep_graph::graph::DepGraph<rustc_middle[57c2e03db41ceede]::dep_graph::dep_node::DepKind>>::try_mark_previous_green::<rustc_query_impl[18d0a3fa2bdd5685]::plumbing::QueryCtxt>
47: 0x7f6182d5e6f6 - <rustc_query_system[89fe9b701e431ad8]::dep_graph::graph::DepGraph<rustc_middle[57c2e03db41ceede]::dep_graph::dep_node::DepKind>>::try_mark_previous_green::<rustc_query_impl[18d0a3fa2bdd5685]::plumbing::QueryCtxt>
48: 0x7f6182d5e6f6 - <rustc_query_system[89fe9b701e431ad8]::dep_graph::graph::DepGraph<rustc_middle[57c2e03db41ceede]::dep_graph::dep_node::DepKind>>::try_mark_previous_green::<rustc_query_impl[18d0a3fa2bdd5685]::plumbing::QueryCtxt>
49: 0x7f6182d5e6f6 - <rustc_query_system[89fe9b701e431ad8]::dep_graph::graph::DepGraph<rustc_middle[57c2e03db41ceede]::dep_graph::dep_node::DepKind>>::try_mark_previous_green::<rustc_query_impl[18d0a3fa2bdd5685]::plumbing::QueryCtxt>
50: 0x7f6182cce5d6 - rustc_query_system[89fe9b701e431ad8]::query::plumbing::ensure_must_run::<rustc_query_impl[18d0a3fa2bdd5685]::plumbing::QueryCtxt, rustc_span[257a5d576bad4151]::def_id::LocalDefId, ()>
51: 0x7f618377f91a - rustc_query_system[89fe9b701e431ad8]::query::plumbing::get_query::<rustc_query_impl[18d0a3fa2bdd5685]::queries::check_mod_const_bodies, rustc_query_impl[18d0a3fa2bdd5685]::plumbing::QueryCtxt>
52: 0x7f61832b34fd - <core[5ae97c210862f887]::panic::unwind_safe::AssertUnwindSafe<rustc_interface[dcd6c118f3bc6900]::passes::analysis::{closure#0}::{closure#1}> as core[5ae97c210862f887]::ops::function::FnOnce<()>>::call_once
53: 0x7f61832b003e - <rustc_session[d69b998f511832b7]::session::Session>::time::<(), rustc_interface[dcd6c118f3bc6900]::passes::analysis::{closure#0}>
54: 0x7f618328ab6e - rustc_interface[dcd6c118f3bc6900]::passes::analysis
55: 0x7f6183853446 - <rustc_query_system[89fe9b701e431ad8]::dep_graph::graph::DepGraph<rustc_middle[57c2e03db41ceede]::dep_graph::dep_node::DepKind>>::with_task::<rustc_middle[57c2e03db41ceede]::ty::context::TyCtxt, (), core[5ae97c210862f887]::result::Result<(), rustc_errors[3fa4551cef5b7d38]::ErrorReported>>
56: 0x7f61837b09a3 - rustc_data_structures[5bcc8dcfb4a3daf1]::stack::ensure_sufficient_stack::<(core[5ae97c210862f887]::result::Result<(), rustc_errors[3fa4551cef5b7d38]::ErrorReported>, rustc_query_system[89fe9b701e431ad8]::dep_graph::graph::DepNodeIndex), rustc_query_system[89fe9b701e431ad8]::query::plumbing::execute_job<rustc_query_impl[18d0a3fa2bdd5685]::plumbing::QueryCtxt, (), core[5ae97c210862f887]::result::Result<(), rustc_errors[3fa4551cef5b7d38]::ErrorReported>>::{closure#3}>
57: 0x7f6183731f66 - rustc_query_system[89fe9b701e431ad8]::query::plumbing::try_execute_query::<rustc_query_impl[18d0a3fa2bdd5685]::plumbing::QueryCtxt, rustc_query_system[89fe9b701e431ad8]::query::caches::DefaultCache<(), core[5ae97c210862f887]::result::Result<(), rustc_errors[3fa4551cef5b7d38]::ErrorReported>>>
58: 0x7f618378ae75 - rustc_query_system[89fe9b701e431ad8]::query::plumbing::get_query::<rustc_query_impl[18d0a3fa2bdd5685]::queries::analysis, rustc_query_impl[18d0a3fa2bdd5685]::plumbing::QueryCtxt>
59: 0x7f618326bab0 - <rustc_interface[dcd6c118f3bc6900]::interface::Compiler>::enter::<rustc_driver[6192c8833b08d212]::run_compiler::{closure#1}::{closure#2}, core[5ae97c210862f887]::result::Result<core[5ae97c210862f887]::option::Option<rustc_interface[dcd6c118f3bc6900]::queries::Linker>, rustc_errors[3fa4551cef5b7d38]::ErrorReported>>
60: 0x7f618324d7bc - rustc_span[257a5d576bad4151]::with_source_map::<core[5ae97c210862f887]::result::Result<(), rustc_errors[3fa4551cef5b7d38]::ErrorReported>, rustc_interface[dcd6c118f3bc6900]::interface::create_compiler_and_run<core[5ae97c210862f887]::result::Result<(), rustc_errors[3fa4551cef5b7d38]::ErrorReported>, rustc_driver[6192c8833b08d212]::run_compiler::{closure#1}>::{closure#1}>
61: 0x7f618326ae8e - rustc_interface[dcd6c118f3bc6900]::interface::create_compiler_and_run::<core[5ae97c210862f887]::result::Result<(), rustc_errors[3fa4551cef5b7d38]::ErrorReported>, rustc_driver[6192c8833b08d212]::run_compiler::{closure#1}>
62: 0x7f618324ed1b - <scoped_tls[bc78695e5e7f043a]::ScopedKey<rustc_span[257a5d576bad4151]::SessionGlobals>>::set::<rustc_interface[dcd6c118f3bc6900]::util::setup_callbacks_and_run_in_thread_pool_with_globals<rustc_interface[dcd6c118f3bc6900]::interface::run_compiler<core[5ae97c210862f887]::result::Result<(), rustc_errors[3fa4551cef5b7d38]::ErrorReported>, rustc_driver[6192c8833b08d212]::run_compiler::{closure#1}>::{closure#0}, core[5ae97c210862f887]::result::Result<(), rustc_errors[3fa4551cef5b7d38]::ErrorReported>>::{closure#0}::{closure#0}, core[5ae97c210862f887]::result::Result<(), rustc_errors[3fa4551cef5b7d38]::ErrorReported>>
63: 0x7f618324eb15 - std[b709ef98f7a12fb4]::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface[dcd6c118f3bc6900]::util::setup_callbacks_and_run_in_thread_pool_with_globals<rustc_interface[dcd6c118f3bc6900]::interface::run_compiler<core[5ae97c210862f887]::result::Result<(), rustc_errors[3fa4551cef5b7d38]::ErrorReported>, rustc_driver[6192c8833b08d212]::run_compiler::{closure#1}>::{closure#0}, core[5ae97c210862f887]::result::Result<(), rustc_errors[3fa4551cef5b7d38]::ErrorReported>>::{closure#0}, core[5ae97c210862f887]::result::Result<(), rustc_errors[3fa4551cef5b7d38]::ErrorReported>>
64: 0x7f618327b429 - <<std[b709ef98f7a12fb4]::thread::Builder>::spawn_unchecked<rustc_interface[dcd6c118f3bc6900]::util::setup_callbacks_and_run_in_thread_pool_with_globals<rustc_interface[dcd6c118f3bc6900]::interface::run_compiler<core[5ae97c210862f887]::result::Result<(), rustc_errors[3fa4551cef5b7d38]::ErrorReported>, rustc_driver[6192c8833b08d212]::run_compiler::{closure#1}>::{closure#0}, core[5ae97c210862f887]::result::Result<(), rustc_errors[3fa4551cef5b7d38]::ErrorReported>>::{closure#0}, core[5ae97c210862f887]::result::Result<(), rustc_errors[3fa4551cef5b7d38]::ErrorReported>>::{closure#1} as core[5ae97c210862f887]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
65: 0x7f6180bf91a3 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h2f7659ee59dd0ada
at /rustc/28c8a34e18fc05277c81328d1bbf5ed931f4d22e/library/alloc/src/boxed.rs:1854:9
66: 0x7f6180bf91a3 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h95b83a7b24076276
at /rustc/28c8a34e18fc05277c81328d1bbf5ed931f4d22e/library/alloc/src/boxed.rs:1854:9
67: 0x7f6180bf91a3 - std::sys::unix::thread::Thread::new::thread_start::h1cd6c1faf6f6ab03
at /rustc/28c8a34e18fc05277c81328d1bbf5ed931f4d22e/library/std/src/sys/unix/thread.rs:108:17
68: 0x7f6180b08259 - start_thread
69: 0x7f6180a245e3 - __GI___clone
70: 0x0 - <unknown>
error: internal compiler error: unexpected panic
note: the compiler unexpectedly panicked. this is a bug.
note: we would appreciate a bug report: https://github.com/rust-lang/rust/issues/new?labels=C-bug%2C+I-ICE%2C+T-compiler&template=ice.md
note: rustc 1.59.0-beta.5 (28c8a34e1 2022-01-27) running on x86_64-unknown-linux-gnu
note: compiler flags: -Z unstable-options -Z macro-backtrace -Z crate-attr=doc(html_root_url="https://doc.rust-lang.org/nightly/") -Z binary-dep-depinfo -Z force-unstable-if-unmarked -C opt-level=3 -C embed-bitcode=no -C debuginfo=0 -C incremental -C symbol-mangling-version=legacy -C link-args=-Wl,-z,origin -C link-args=-Wl,-rpath,$ORIGIN/../lib -C prefer-dynamic -C llvm-args=-import-instr-limit=10 --crate-type lib
note: some of the compiler flags provided by cargo are hidden query stack during panic:
#0 [type_of] computing type of `sync::ArcInner::strong`
#1 [inferred_outlives_crate] computing the inferred outlives predicates for items in this crate
#2 [analysis] running analysis passes on this crate
end of query stack
error: could not compile `alloc` Map indexing in rust/compiler/rustc_metadata/src/rmeta/decoder.rs Lines 1609 to 1617 in 28c8a34
|
Are you sure you don't need to Like I don't know if this is related to the PR. |
Indeed |
☔ The latest upstream changes (presumably #93148) made this pull request unmergeable. Please resolve the merge conflicts. |
@compiler-errors I’ve pushed a rebase at https://github.com/SimonSapin/rust/commits/sized-generic-metadata |
0ad6212
to
877dec5
Compare
This comment has been minimized.
This comment has been minimized.
whoops! fixed bug after rebase |
877dec5
to
b1d6179
Compare
b1d6179
to
210e829
Compare
This comment was marked as outdated.
This comment was marked as outdated.
@wesleywiser, mind taking a look at this again? added that test you asked for |
Thanks @compiler-errors! @bors r+ |
📌 Commit 210e829 has been approved by |
…askrgr Rollup of 5 pull requests Successful merges: - rust-lang#90621 (Stabilise `aarch64_target_feature`) - rust-lang#93977 (Type params and assoc types have unit metadata if they are sized) - rust-lang#94670 (Improve `expect` impl and handle `#[expect(unfulfilled_lint_expectations)]` (RFC 2383)) - rust-lang#94884 (Fix remaining meta-variable expression TODOs) - rust-lang#94931 (update miri) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup
Fixes rust-lang#93959 This change was accepted in https://rust-lang.github.io/rfcs/2580-ptr-meta.html Note that this changes the signature of **stable** functions. The change should be backward-compatible, but it is **insta-stable** since it cannot (easily, at all?) be made available only through a `#![feature(…)]` opt-in. The RFC also proposed the same change for `NonNull::dangling`, which makes sense it terms of its signature but not in terms of its implementation. `dangling` uses `align_of()` as an address. But what `align_of()` should be for extern types or whether it should be allowed at all remains an open question. This commit depends on rust-lang#93977, which is not yet part of the bootstrap compiler. So `#[cfg]` is used to only apply the change in stage 1+. As far a I know bounds cannot be made conditional with `#[cfg]`, so the entire functions are duplicated. This is unfortunate but temporary. Since this duplication makes it less obvious in the diff, the new definitions differ in: * More permissive bounds (`Thin` instead of implied `Sized`) * Different implementation * Having `rustc_allow_const_fn_unstable(ptr_metadata)`
Extend ptr::null and null_mut to all thin (including extern) types Fixes rust-lang#93959 This change was accepted in https://rust-lang.github.io/rfcs/2580-ptr-meta.html Note that this changes the signature of **stable** functions. The change should be backward-compatible, but it is **insta-stable** since it cannot (easily, at all?) be made available only through a `#![feature(…)]` opt-in. The RFC also proposed the same change for `NonNull::dangling`, which makes sense it terms of its signature but not in terms of its implementation. `dangling` uses `align_of()` as an address. But what `align_of()` should be for extern types or whether it should be allowed at all remains an open question. This commit depends on rust-lang#93977, which is not yet part of the bootstrap compiler. So `#[cfg]` is used to only apply the change in stage 1+. As far a I know bounds cannot be made conditional with `#[cfg]`, so the entire functions are duplicated. This is unfortunate but temporary. Since this duplication makes it less obvious in the diff, the new definitions differ in: * More permissive bounds (`Thin` instead of implied `Sized`) * Different implementation * Having `rustc_allow_const_fn_unstable(const_fn_trait_bound)` * Having `rustc_allow_const_fn_unstable(ptr_metadata)`
Fixes rust-lang/rust#93959 This change was accepted in https://rust-lang.github.io/rfcs/2580-ptr-meta.html Note that this changes the signature of **stable** functions. The change should be backward-compatible, but it is **insta-stable** since it cannot (easily, at all?) be made available only through a `#![feature(…)]` opt-in. The RFC also proposed the same change for `NonNull::dangling`, which makes sense it terms of its signature but not in terms of its implementation. `dangling` uses `align_of()` as an address. But what `align_of()` should be for extern types or whether it should be allowed at all remains an open question. This commit depends on rust-lang/rust#93977, which is not yet part of the bootstrap compiler. So `#[cfg]` is used to only apply the change in stage 1+. As far a I know bounds cannot be made conditional with `#[cfg]`, so the entire functions are duplicated. This is unfortunate but temporary. Since this duplication makes it less obvious in the diff, the new definitions differ in: * More permissive bounds (`Thin` instead of implied `Sized`) * Different implementation * Having `rustc_allow_const_fn_unstable(ptr_metadata)`
Extend ptr::null and null_mut to all thin (including extern) types Fixes rust-lang/rust#93959 This change was accepted in https://rust-lang.github.io/rfcs/2580-ptr-meta.html Note that this changes the signature of **stable** functions. The change should be backward-compatible, but it is **insta-stable** since it cannot (easily, at all?) be made available only through a `#![feature(…)]` opt-in. The RFC also proposed the same change for `NonNull::dangling`, which makes sense it terms of its signature but not in terms of its implementation. `dangling` uses `align_of()` as an address. But what `align_of()` should be for extern types or whether it should be allowed at all remains an open question. This commit depends on rust-lang/rust#93977, which is not yet part of the bootstrap compiler. So `#[cfg]` is used to only apply the change in stage 1+. As far a I know bounds cannot be made conditional with `#[cfg]`, so the entire functions are duplicated. This is unfortunate but temporary. Since this duplication makes it less obvious in the diff, the new definitions differ in: * More permissive bounds (`Thin` instead of implied `Sized`) * Different implementation * Having `rustc_allow_const_fn_unstable(const_fn_trait_bound)` * Having `rustc_allow_const_fn_unstable(ptr_metadata)`
Extend the logic in
Pointee
projection to ensure that we can satisfy<T as Pointee>::Metadata = ()
ifT: Sized
.cc: @SimonSapin and #93959