Skip to content
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

Add miri to rustc docs.rs page #97773

Closed
wants to merge 1 commit into from
Closed

Add miri to rustc docs.rs page #97773

wants to merge 1 commit into from

Conversation

b-ncMN
Copy link
Contributor

@b-ncMN b-ncMN commented Jun 5, 2022

@rust-highfive
Copy link
Collaborator

r? @Mark-Simulacrum

(rust-highfive has picked a reviewer for you, use r? to override)

@rust-highfive rust-highfive added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Jun 5, 2022
@b-ncMN b-ncMN changed the title Add miri to the rustc docs.rs page Add miri to rustc docs.rs page Jun 5, 2022
@b-ncMN
Copy link
Contributor Author

b-ncMN commented Jun 5, 2022

I couldn't figure out a way to generate doc.rust-lang.org/nightly/nightly-rustc
locally
I tried running /.x.py doc but it failed with

Logs
error: passing `TyCtxt<'_>` by reference
   --> src/tools/miri/src/helpers.rs:861:30
    |
861 | pub fn get_local_crates(tcx: &TyCtxt<'_>) -> Vec<CrateNum> {
    |                              ^^^^^^^^^^^ help: try passing by value: `TyCtxt<'_>`
    |
    = note: `-D rustc::pass-by-value` implied by `-D warnings`

error: unresolved link to `x`
  --> src/tools/miri/src/data_race.rs:27:39
   |
27 | //! there is some index x where clock[x] > thread_clock, when this is true clock[candidate-idx] > thread_clock
   |                                       ^ no item named `x` in scope
   |
   = note: `-D rustdoc::broken-intra-doc-links` implied by `-D warnings`
   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`

error: unresolved link to `0`
   --> src/tools/miri/src/eval.rs:400:13
    |
400 | /// in argv[0] cannot be encoded using the standard command line parsing rules.
    |             ^ no item named `0` in scope
    |
    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`

error: Rust code block is empty
   --> src/tools/miri/src/shims/tls.rs:138:13
    |
138 |     ///     // NOTE: this does not need locks because it only operates on current thread data
    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |
    = note: `-D rustdoc::invalid-rust-codeblocks` implied by `-D warnings`

error: this URL is not a hyperlink
 --> src/tools/miri/src/data_race.rs:3:5
  |
3 | //! https://www.doc.ic.ac.uk/~afd/homepages/papers/pdfs/2017/POPL.pdf
  |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use an automatic link instead: `<https://www.doc.ic.ac.uk/~afd/homepages/papers/pdfs/2017/POPL.pdf>`
  |
  = note: `-D rustdoc::bare-urls` implied by `-D warnings`
  = note: bare URLs are not automatically turned into clickable links

error: this URL is not a hyperlink
 --> src/tools/miri/src/data_race.rs:8:51
  |
8 | //! regarding the weakening of release sequences: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p0982r1.html.
  |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use an automatic link instead: `<http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p0982r1.html.>`
  |
  = note: bare URLs are not automatically turned into clickable links

error: this URL is not a hyperlink
  --> src/tools/miri/src/data_race.rs:18:31
   |
18 | //! Data-race definition from(https://en.cppreference.com/w/cpp/language/memory_model#Threads_and_data_races):
   |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use an automatic link instead: `<https://en.cppreference.com/w/cpp/language/memory_model#Threads_and_data_races>`
   |
   = note: bare URLs are not automatically turned into clickable links

error: this URL is not a hyperlink
   --> src/tools/miri/src/shims/tls.rs:350:9
    |
350 |     /// https://github.com/rust-lang/rust/issues/28129.
    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use an automatic link instead: `<https://github.com/rust-lang/rust/issues/28129.>`
    |
    = note: bare URLs are not automatically turned into clickable links

error: this URL is not a hyperlink
   --> src/tools/miri/src/stacked_borrows.rs:948:28
    |
948 |     /// explicit. Also see https://github.com/rust-lang/rust/issues/71117.
    |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use an automatic link instead: `<https://github.com/rust-lang/rust/issues/71117.>`
    |
    = note: bare URLs are not automatically turned into clickable links

error: could not document `miri`

Caused by:
  process didn't exit successfully: `/home/infrandomness/Documents/Dev/rust/build/bootstrap/debug/rustdoc --edition=2021 --crate-type lib --crate-name miri src/tools/miri/src/lib.rs --target x86_64-unknown-linux-gnu -o /home/infrandomness/Documents/Dev/rust/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/doc -Zunstable-options --check-cfg 'values(feature)' --check-cfg 'names()' --check-cfg 'values()' --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat -C metadata=3b297133694f0844 -L dependency=/home/infrandomness/Documents/Dev/rust/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/release/deps -L dependency=/home/infrandomness/Documents/Dev/rust/build/x86_64-unknown-linux-gnu/stage2-tools/release/deps --extern env_logger=/home/infrandomness/Documents/Dev/rust/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/release/deps/libenv_logger-ab2e3e42d7aecdbc.rmeta --extern getrandom=/home/infrandomness/Documents/Dev/rust/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/release/deps/libgetrandom-791bcfb9383522cc.rmeta --extern libc=/home/infrandomness/Documents/Dev/rust/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/release/deps/liblibc-caf8d729160798da.rmeta --extern log=/home/infrandomness/Documents/Dev/rust/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/release/deps/liblog-f2b61be74cb177c1.rmeta --extern measureme=/home/infrandomness/Documents/Dev/rust/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/release/deps/libmeasureme-08bbdc8c28660dc4.rmeta --extern rand=/home/infrandomness/Documents/Dev/rust/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/release/deps/librand-ec279112e72d9cce.rmeta --extern rustc_workspace_hack=/home/infrandomness/Documents/Dev/rust/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/release/deps/librustc_workspace_hack-be8672fb3f4e083e.rmeta --extern shell_escape=/home/infrandomness/Documents/Dev/rust/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/release/deps/libshell_escape-51a981842c8d6165.rmeta --extern smallvec=/home/infrandomness/Documents/Dev/rust/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/release/deps/libsmallvec-8bd8d5b8f92d64b4.rmeta -Csymbol-mangling-version=v0 -Zunstable-options '--check-cfg=values(bootstrap)' '--check-cfg=values(parallel_compiler)' '--check-cfg=values(release)' '--check-cfg=values(no_btreemap_remove_entry)' '--check-cfg=values(crossbeam_loom)' '--check-cfg=values(span_locations)' -Dwarnings '-Wrustdoc::invalid_codeblock_attributes' --crate-version 1.63.0-dev --document-private-items --enable-index-page --show-type-layout --generate-link-to-definition -Zunstable-options` (exit status: 1)
Build completed unsuccessfully in 0:00:22

, so checks might fail here too

@b-ncMN
Copy link
Contributor Author

b-ncMN commented Jun 5, 2022

The pipeline doesn't seem to have failed, but since it failed on my side I don't think the same commands are being ran

@jyn514
Copy link
Member

jyn514 commented Jun 5, 2022

The pipeline doesn't seem to have failed, but since it failed on my side I don't think the same commands are being ran

Correct, documentation is only built in bors try builds. You'll need to get x.py doc working locally before this can be merged. Since miri is a submodule, you'll need to either fix the warnings in rust-lang/miri (my preference) or allow the bootstrap warnings for miri in doc.rs. You should be able to replicate the warnings out of tree with RUSTFLAGS="-Drustc::all -Zunstable-options" cargo doc.

@jyn514 jyn514 assigned jyn514 and unassigned Mark-Simulacrum Jun 5, 2022
@jyn514 jyn514 added T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. A-miri Area: The miri tool and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Jun 5, 2022
@jyn514
Copy link
Member

jyn514 commented Jun 5, 2022

Since miri is a submodule, you'll need to either fix the warnings in rust-lang/miri (my preference

ah wait, I'm wrong - this will block adding further lints to rustdoc and rustc in the future. You need to instead make the SourceMode configurable through a macro parameter: https://github.com/rust-lang/rust/blob/d2598caadafb0a32c8cee58c6bcb3d80f26ee4cf/src/bootstrap/doc.rs#L710

I think tool.rs does something similar, you could copy from there.

@b-ncMN
Copy link
Contributor Author

b-ncMN commented Jun 6, 2022

Since miri is a submodule, you'll need to either fix the warnings in rust-lang/miri (my preference

ah wait, I'm wrong - this will block adding further lints to rustdoc and rustc in the future. You need to instead make the SourceMode configurable through a macro parameter:

https://github.com/rust-lang/rust/blob/d2598caadafb0a32c8cee58c6bcb3d80f26ee4cf/src/bootstrap/doc.rs#L710

I think tool.rs does something similar, you could copy from there.

tool.rs effectively seems to have https://github.com/rust-lang/rust/blob/d2598caadafb0a32c8cee58c6bcb3d80f26ee4cf/src/bootstrap/tool.rs#L767
do I need to modify the run function, as well as the macro, to be able to specify whether the tool is intree or submodule?

@jyn514
Copy link
Member

jyn514 commented Jun 6, 2022

@InfRandomness the tool.rs file is for building miri, not documenting it. You need to change doc.rs to document miri.

I don't understand the rest of your question, sorry.

@b-ncMN
Copy link
Contributor Author

b-ncMN commented Jun 6, 2022

@InfRandomness the tool.rs file is for building miri, not documenting it. You need to change doc.rs to document miri.

I don't understand the rest of your question, sorry.

did you mean that I need to end up with something similar to :

tool_doc!(Miri, "miri", "src/tools/miri", ["miri"], in_tree=false);

?

@jyn514
Copy link
Member

jyn514 commented Jun 6, 2022

Yes, exactly :)

src/bootstrap/doc.rs Outdated Show resolved Hide resolved
Copy link
Member

@jyn514 jyn514 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

@jyn514
Copy link
Member

jyn514 commented Jun 6, 2022

@bors r+ rollup=iffy (not tested in PR CI)

@bors
Copy link
Contributor

bors commented Jun 6, 2022

📌 Commit 499ca27c974b2c70db1b3a26d8b5ae8bec4607bb has been approved by jyn514

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Jun 6, 2022
@jyn514
Copy link
Member

jyn514 commented Jun 6, 2022

Actually, @InfRandomness can you confirm that x.py doc src/tools/miri --stage 0 works for you locally after the latest commit?

@b-ncMN
Copy link
Contributor Author

b-ncMN commented Jun 6, 2022

Actually, @InfRandomness can you confirm that x.py doc src/tools/miri --stage 0 works for you locally after the latest commit?

hm, nope, for some reason it panicked with the command you provided

logs
 Documenting rustc_infer v0.0.0 (/home/infrandomness/Documents/Dev/rust/compiler/rustc_infer)
thread 'rustc' panicked at 'no entry found for key', compiler/rustc_metadata/src/rmeta/decoder/cstore_impl.rs:564:9
stack backtrace:
   0:     0x7fd57b09dfed - std::backtrace_rs::backtrace::libunwind::trace::ha8406fd4a233ad1f
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5
   1:     0x7fd57b09dfed - std::backtrace_rs::backtrace::trace_unsynchronized::h95f26ca4bd23bd0f
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
   2:     0x7fd57b09dfed - std::sys_common::backtrace::_print_fmt::h9955f0b025c061cd
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/std/src/sys_common/backtrace.rs:66:5
   3:     0x7fd57b09dfed - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h1025ecd2bac85833
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/std/src/sys_common/backtrace.rs:45:22
   4:     0x7fd57b0f9c7c - core::fmt::write::hd5fa34bae8a7f0ea
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/core/src/fmt/mod.rs:1196:17
   5:     0x7fd57b08f6c1 - std::io::Write::write_fmt::h203cec764662c27d
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/std/src/io/mod.rs:1654:15
   6:     0x7fd57b0a0d05 - std::sys_common::backtrace::_print::h330c8fadbab13d8b
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/std/src/sys_common/backtrace.rs:48:5
   7:     0x7fd57b0a0d05 - std::sys_common::backtrace::print::h38d4cf1c3e16e656
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/std/src/sys_common/backtrace.rs:35:9
   8:     0x7fd57b0a0d05 - std::panicking::default_hook::{{closure}}::h56cdf194ec124abb
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/std/src/panicking.rs:295:22
   9:     0x7fd57b0a0979 - std::panicking::default_hook::h9929fdc60733f795
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/std/src/panicking.rs:314:9
  10:     0x7fd57b8ea7e1 - rustc_driver[25b442836e214e3a]::DEFAULT_HOOK::{closure#0}::{closure#0}
  11:     0x7fd567f1e789 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hba67a6b74d57afdc
 Documenting rustc_incremental v0.0.0 (/home/infrandomness/Documents/Dev/rust/compiler/rustc_incremental)
  12:     0x7fd567f254ab - proc_macro::bridge::client::<impl proc_macro::bridge::Bridge>::enter::{{closure}}::{{closure}}::h65019d64185dfc24
  13:     0x7fd57b0a14d6 - std::panicking::rust_panic_with_hook::h490228be5a55104d
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/std/src/panicking.rs:702:17
  14:     0x7fd57b0a12d7 - std::panicking::begin_panic_handler::{{closure}}::hfd963b6683c36656
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/std/src/panicking.rs:588:13
  15:     0x7fd57b09e4a4 - std::sys_common::backtrace::__rust_end_short_backtrace::h2912e3decfe2cba4
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/std/src/sys_common/backtrace.rs:138:18
  16:     0x7fd57b0a1009 - rust_begin_unwind
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/std/src/panicking.rs:584:5
  17:     0x7fd57b066283 - core::panicking::panic_fmt::hf4ba906a2c8693a2
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/core/src/panicking.rs:142:14
  18:     0x7fd57b0f68e1 - core::panicking::panic_display::h85c49ea53beff92d
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/core/src/panicking.rs:72:5
  19:     0x7fd57b0f688b - core::panicking::panic_str::h54aad4367eb7a446
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/core/src/panicking.rs:56:5
  20:     0x7fd57b0660f6 - core::option::expect_failed::h1c20531357267673
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/core/src/option.rs:1854:5
  21:     0x7fd57d49c2ea - <rustc_metadata[861e9325ed4d7b3f]::creader::CStore as rustc_session[42681064e675acd6]::cstore::CrateStore>::stable_crate_id_to_crate_num
  22:     0x7fd57d3a52e1 - <rustc_span[9389a2ea4399dbf9]::span_encoding::Span as rustc_serialize[d140f8edb489d2a6]::serialize::Decodable<rustc_query_impl[d28b29c5c0f26ce3]::on_disk_cache::CacheDecoder>>::decode
  23:     0x7fd57d337ef1 - <[(rustc_middle[b283510e1dd05d73]::ty::Predicate, rustc_span[9389a2ea4399dbf9]::span_encoding::Span)] as rustc_middle[b283510e1dd05d73]::ty::codec::RefDecodable<rustc_query_impl[d28b29c5c0f26ce3]::on_disk_cache::CacheDecoder>>::decode
  24:     0x7fd57d341bc5 - <rustc_query_impl[d28b29c5c0f26ce3]::on_disk_cache::OnDiskCache>::try_load_query_result::<rustc_middle[b283510e1dd05d73]::ty::generics::GenericPredicates>
  25:     0x7fd57d416da0 - <<rustc_query_impl[d28b29c5c0f26ce3]::queries::predicates_of as rustc_query_system[d6f3c753593960fb]::query::config::QueryDescription<rustc_query_impl[d28b29c5c0f26ce3]::plumbing::QueryCtxt>>::TRY_LOAD_FROM_DISK::{closure#0} as core[4a8947a89ffd1b77]::ops::function::FnOnce<(rustc_query_impl[d28b29c5c0f26ce3]::plumbing::QueryCtxt, rustc_query_system[d6f3c753593960fb]::dep_graph::serialized::SerializedDepNodeIndex)>>::call_once
  26:     0x7fd57d3f000e - rustc_query_system[d6f3c753593960fb]::query::plumbing::get_query::<rustc_query_impl[d28b29c5c0f26ce3]::queries::predicates_of, rustc_query_impl[d28b29c5c0f26ce3]::plumbing::QueryCtxt>
  27:     0x7fd57d390f2e - <rustc_query_impl[d28b29c5c0f26ce3]::Queries as rustc_middle[b283510e1dd05d73]::ty::query::QueryEngine>::predicates_of
  28:     0x7fd57cc8f0d9 - <rustc_privacy[c9a24284be258ba6]::ReachEverythingInTheInterfaceVisitor>::predicates
  29:     0x7fd57cc8b076 - <rustc_privacy[c9a24284be258ba6]::EmbargoVisitor as rustc_hir[374f189791373ac]::intravisit::Visitor>::visit_item
  30:     0x7fd57cc8ccfb - <rustc_privacy[c9a24284be258ba6]::EmbargoVisitor as rustc_hir[374f189791373ac]::intravisit::Visitor>::visit_item
  31:     0x7fd57daf43fb - rustc_privacy[c9a24284be258ba6]::privacy_access_levels
  32:     0x7fd57de49ed4 - <rustc_query_system[d6f3c753593960fb]::dep_graph::graph::DepGraph<rustc_middle[b283510e1dd05d73]::dep_graph::dep_node::DepKind>>::with_task::<rustc_middle[b283510e1dd05d73]::ty::context::TyCtxt, (), &rustc_middle[b283510e1dd05d73]::middle::privacy::AccessLevels>
  33:     0x7fd57def20f1 - rustc_query_system[d6f3c753593960fb]::query::plumbing::try_execute_query::<rustc_query_impl[d28b29c5c0f26ce3]::plumbing::QueryCtxt, rustc_query_system[d6f3c753593960fb]::query::caches::DefaultCache<(), &rustc_middle[b283510e1dd05d73]::middle::privacy::AccessLevels>>
  34:     0x7fd57df2040f - rustc_query_system[d6f3c753593960fb]::query::plumbing::get_query::<rustc_query_impl[d28b29c5c0f26ce3]::queries::privacy_access_levels, rustc_query_impl[d28b29c5c0f26ce3]::plumbing::QueryCtxt>
  35:     0x7fd57dcd90e4 - rustc_passes[c56600e865d3cc74]::stability::check_unused_or_stable_features
  36:     0x7fd57d99ffd6 - <rustc_session[42681064e675acd6]::session::Session>::time::<(), rustc_interface[1214bec19156c976]::passes::analysis::{closure#0}::{closure#2}::{closure#0}>
  37:     0x7fd57d9a0f2e - <rustc_session[42681064e675acd6]::session::Session>::time::<(), rustc_interface[1214bec19156c976]::passes::analysis::{closure#0}>
  38:     0x7fd57d99ba9e - rustc_interface[1214bec19156c976]::passes::analysis
  39:     0x7fd57de46a75 - <rustc_query_system[d6f3c753593960fb]::dep_graph::graph::DepGraph<rustc_middle[b283510e1dd05d73]::dep_graph::dep_node::DepKind>>::with_task::<rustc_middle[b283510e1dd05d73]::ty::context::TyCtxt, (), core[4a8947a89ffd1b77]::result::Result<(), rustc_errors[afa4f82815d8f672]::ErrorGuaranteed>>
  40:     0x7fd57deec181 - rustc_query_system[d6f3c753593960fb]::query::plumbing::try_execute_query::<rustc_query_impl[d28b29c5c0f26ce3]::plumbing::QueryCtxt, rustc_query_system[d6f3c753593960fb]::query::caches::DefaultCache<(), core[4a8947a89ffd1b77]::result::Result<(), rustc_errors[afa4f82815d8f672]::ErrorGuaranteed>>>
  41:     0x7fd57df2d49e - rustc_query_system[d6f3c753593960fb]::query::plumbing::get_query::<rustc_query_impl[d28b29c5c0f26ce3]::queries::analysis, rustc_query_impl[d28b29c5c0f26ce3]::plumbing::QueryCtxt>
  42:     0x7fd57d97c527 - <rustc_interface[1214bec19156c976]::passes::QueryContext>::enter::<rustc_driver[25b442836e214e3a]::run_compiler::{closure#1}::{closure#2}::{closure#3}, core[4a8947a89ffd1b77]::result::Result<(), rustc_errors[afa4f82815d8f672]::ErrorGuaranteed>>
  43:     0x7fd57d967588 - <rustc_interface[1214bec19156c976]::interface::Compiler>::enter::<rustc_driver[25b442836e214e3a]::run_compiler::{closure#1}::{closure#2}, core[4a8947a89ffd1b77]::result::Result<core[4a8947a89ffd1b77]::option::Option<rustc_interface[1214bec19156c976]::queries::Linker>, rustc_errors[afa4f82815d8f672]::ErrorGuaranteed>>
  44:     0x7fd57d98fc7f - rustc_span[9389a2ea4399dbf9]::with_source_map::<core[4a8947a89ffd1b77]::result::Result<(), rustc_errors[afa4f82815d8f672]::ErrorGuaranteed>, rustc_interface[1214bec19156c976]::interface::create_compiler_and_run<core[4a8947a89ffd1b77]::result::Result<(), rustc_errors[afa4f82815d8f672]::ErrorGuaranteed>, rustc_driver[25b442836e214e3a]::run_compiler::{closure#1}>::{closure#1}>
  45:     0x7fd57d9682f4 - rustc_interface[1214bec19156c976]::interface::create_compiler_and_run::<core[4a8947a89ffd1b77]::result::Result<(), rustc_errors[afa4f82815d8f672]::ErrorGuaranteed>, rustc_driver[25b442836e214e3a]::run_compiler::{closure#1}>
  46:     0x7fd57d965a92 - <scoped_tls[fdc467f1f45e3091]::ScopedKey<rustc_span[9389a2ea4399dbf9]::SessionGlobals>>::set::<rustc_interface[1214bec19156c976]::interface::run_compiler<core[4a8947a89ffd1b77]::result::Result<(), rustc_errors[afa4f82815d8f672]::ErrorGuaranteed>, rustc_driver[25b442836e214e3a]::run_compiler::{closure#1}>::{closure#0}, core[4a8947a89ffd1b77]::result::Result<(), rustc_errors[afa4f82815d8f672]::ErrorGuaranteed>>
  47:     0x7fd57d97cbaf - std[49987cacb63ffdeb]::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface[1214bec19156c976]::util::run_in_thread_pool_with_globals<rustc_interface[1214bec19156c976]::interface::run_compiler<core[4a8947a89ffd1b77]::result::Result<(), rustc_errors[afa4f82815d8f672]::ErrorGuaranteed>, rustc_driver[25b442836e214e3a]::run_compiler::{closure#1}>::{closure#0}, core[4a8947a89ffd1b77]::result::Result<(), rustc_errors[afa4f82815d8f672]::ErrorGuaranteed>>::{closure#0}, core[4a8947a89ffd1b77]::result::Result<(), rustc_errors[afa4f82815d8f672]::ErrorGuaranteed>>
  48:     0x7fd57d97cce9 - <<std[49987cacb63ffdeb]::thread::Builder>::spawn_unchecked_<rustc_interface[1214bec19156c976]::util::run_in_thread_pool_with_globals<rustc_interface[1214bec19156c976]::interface::run_compiler<core[4a8947a89ffd1b77]::result::Result<(), rustc_errors[afa4f82815d8f672]::ErrorGuaranteed>, rustc_driver[25b442836e214e3a]::run_compiler::{closure#1}>::{closure#0}, core[4a8947a89ffd1b77]::result::Result<(), rustc_errors[afa4f82815d8f672]::ErrorGuaranteed>>::{closure#0}, core[4a8947a89ffd1b77]::result::Result<(), rustc_errors[afa4f82815d8f672]::ErrorGuaranteed>>::{closure#1} as core[4a8947a89ffd1b77]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
  49:     0x7fd57b0ab3f3 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h997dc5bc9efdb91e
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/alloc/src/boxed.rs:1872:9
  50:     0x7fd57b0ab3f3 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h482cb6422469721b
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/alloc/src/boxed.rs:1872:9
  51:     0x7fd57b0ab3f3 - std::sys::unix::thread::Thread::new::thread_start::hcd1011649240eef0
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/std/src/sys/unix/thread.rs:108:17
  52:     0x7fd57aeb0e8d - start_thread
  53:     0x7fd57af31350 - __clone3
  54:                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.62.0-beta.2 (daf68b1f7 2022-05-19) running on x86_64-unknown-linux-gnu

note: compiler flags: --crate-type lib -C opt-level=3 -C embed-bitcode=no -C debuginfo=0 -C incremental -C symbol-mangling-version=v0 -Z macro-backtrace -C link-args=-Wl,-z,origin -C link-args=-Wl,-rpath,$ORIGIN/../lib -Z unstable-options -C split-debuginfo=off -Z tls-model=initial-exec -Z unstable-options -C prefer-dynamic -C llvm-args=-import-instr-limit=10 -Z binary-dep-depinfo -Z force-unstable-if-unmarked

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

query stack during panic:
thread 'rustc' panicked at 'Illegal read of: 67397', /rustc/daf68b1f766e67ffe040260b15c218301853386a/compiler/rustc_query_system/src/dep_graph/graph.rs:436:25
stack backtrace:
   0:     0x7fd57b09dfed - std::backtrace_rs::backtrace::libunwind::trace::ha8406fd4a233ad1f
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5
   1:     0x7fd57b09dfed - std::backtrace_rs::backtrace::trace_unsynchronized::h95f26ca4bd23bd0f
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
   2:     0x7fd57b09dfed - std::sys_common::backtrace::_print_fmt::h9955f0b025c061cd
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/std/src/sys_common/backtrace.rs:66:5
   3:     0x7fd57b09dfed - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h1025ecd2bac85833
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/std/src/sys_common/backtrace.rs:45:22
   4:     0x7fd57b0f9c7c - core::fmt::write::hd5fa34bae8a7f0ea
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/core/src/fmt/mod.rs:1196:17
   5:     0x7fd57b08f6c1 - std::io::Write::write_fmt::h203cec764662c27d
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/std/src/io/mod.rs:1654:15
   6:     0x7fd57b0a0d05 - std::sys_common::backtrace::_print::h330c8fadbab13d8b
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/std/src/sys_common/backtrace.rs:48:5
   7:     0x7fd57b0a0d05 - std::sys_common::backtrace::print::h38d4cf1c3e16e656
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/std/src/sys_common/backtrace.rs:35:9
   8:     0x7fd57b0a0d05 - std::panicking::default_hook::{{closure}}::h56cdf194ec124abb
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/std/src/panicking.rs:295:22
   9:     0x7fd57b0a0979 - std::panicking::default_hook::h9929fdc60733f795
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/std/src/panicking.rs:314:9
  10:     0x7fd57b8ea7e1 - rustc_driver[25b442836e214e3a]::DEFAULT_HOOK::{closure#0}::{closure#0}
  11:     0x7fd567f1e789 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hba67a6b74d57afdc
  12:     0x7fd567f254ab - proc_macro::bridge::client::<impl proc_macro::bridge::Bridge>::enter::{{closure}}::{{closure}}::h65019d64185dfc24
  13:     0x7fd57b0a14d6 - std::panicking::rust_panic_with_hook::h490228be5a55104d
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/std/src/panicking.rs:702:17
  14:     0x7fd57b0a12d7 - std::panicking::begin_panic_handler::{{closure}}::hfd963b6683c36656
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/std/src/panicking.rs:588:13
  15:     0x7fd57b09e4a4 - std::sys_common::backtrace::__rust_end_short_backtrace::h2912e3decfe2cba4
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/std/src/sys_common/backtrace.rs:138:18
  16:     0x7fd57b0a1009 - rust_begin_unwind
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/std/src/panicking.rs:584:5
  17:     0x7fd57b066283 - core::panicking::panic_fmt::hf4ba906a2c8693a2
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/core/src/panicking.rs:142:14
  18:     0x7fd57d34594d - <rustc_middle[b283510e1dd05d73]::dep_graph::dep_node::DepKind as rustc_query_system[d6f3c753593960fb]::dep_graph::DepKind>::read_deps::<<rustc_query_system[d6f3c753593960fb]::dep_graph::graph::DepGraph<rustc_middle[b283510e1dd05d73]::dep_graph::dep_node::DepKind>>::read_index::{closure#0}>
  19:     0x7fd57d41080a - rustc_query_system[d6f3c753593960fb]::query::plumbing::get_query::<rustc_query_impl[d28b29c5c0f26ce3]::queries::def_span, rustc_query_impl[d28b29c5c0f26ce3]::plumbing::QueryCtxt>
  20:     0x7fd57d39336e - <rustc_query_impl[d28b29c5c0f26ce3]::Queries as rustc_middle[b283510e1dd05d73]::ty::query::QueryEngine>::def_span
  21:     0x7fd57c1a14a6 - <rustc_span[9389a2ea4399dbf9]::def_id::DefId as rustc_query_impl[d28b29c5c0f26ce3]::keys::Key>::default_span
  22:     0x7fd57c387389 - rustc_query_impl[d28b29c5c0f26ce3]::make_query::predicates_of
  23:     0x7fd57c28d829 - <rustc_query_system[d6f3c753593960fb]::query::plumbing::QueryState<rustc_span[9389a2ea4399dbf9]::def_id::DefId>>::try_collect_active_jobs::<rustc_query_impl[d28b29c5c0f26ce3]::plumbing::QueryCtxt>
  24:     0x7fd57c26f61c - <rustc_query_impl[d28b29c5c0f26ce3]::Queries>::try_collect_active_jobs
  25:     0x7fd57c206fae - <rustc_query_impl[d28b29c5c0f26ce3]::plumbing::QueryCtxt>::try_print_query_stack
  26:     0x7fd57b98a202 - rustc_interface[1214bec19156c976]::interface::try_print_query_stack
  27:     0x7fd57b8eb4b5 - rustc_driver[25b442836e214e3a]::report_ice
  28:     0x7fd567f1e789 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hba67a6b74d57afdc
  29:     0x7fd567f254ab - proc_macro::bridge::client::<impl proc_macro::bridge::Bridge>::enter::{{closure}}::{{closure}}::h65019d64185dfc24
  30:     0x7fd57b0a14d6 - std::panicking::rust_panic_with_hook::h490228be5a55104d
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/std/src/panicking.rs:702:17
  31:     0x7fd57b0a12d7 - std::panicking::begin_panic_handler::{{closure}}::hfd963b6683c36656
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/std/src/panicking.rs:588:13
  32:     0x7fd57b09e4a4 - std::sys_common::backtrace::__rust_end_short_backtrace::h2912e3decfe2cba4
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/std/src/sys_common/backtrace.rs:138:18
  33:     0x7fd57b0a1009 - rust_begin_unwind
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/std/src/panicking.rs:584:5
  34:     0x7fd57b066283 - core::panicking::panic_fmt::hf4ba906a2c8693a2
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/core/src/panicking.rs:142:14
  35:     0x7fd57b0f68e1 - core::panicking::panic_display::h85c49ea53beff92d
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/core/src/panicking.rs:72:5
  36:     0x7fd57b0f688b - core::panicking::panic_str::h54aad4367eb7a446
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/core/src/panicking.rs:56:5
  37:     0x7fd57b0660f6 - core::option::expect_failed::h1c20531357267673
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/core/src/option.rs:1854:5
  38:     0x7fd57d49c2ea - <rustc_metadata[861e9325ed4d7b3f]::creader::CStore as rustc_session[42681064e675acd6]::cstore::CrateStore>::stable_crate_id_to_crate_num
  39:     0x7fd57d3a52e1 - <rustc_span[9389a2ea4399dbf9]::span_encoding::Span as rustc_serialize[d140f8edb489d2a6]::serialize::Decodable<rustc_query_impl[d28b29c5c0f26ce3]::on_disk_cache::CacheDecoder>>::decode
  40:     0x7fd57d337ef1 - <[(rustc_middle[b283510e1dd05d73]::ty::Predicate, rustc_span[9389a2ea4399dbf9]::span_encoding::Span)] as rustc_middle[b283510e1dd05d73]::ty::codec::RefDecodable<rustc_query_impl[d28b29c5c0f26ce3]::on_disk_cache::CacheDecoder>>::decode
  41:     0x7fd57d341bc5 - <rustc_query_impl[d28b29c5c0f26ce3]::on_disk_cache::OnDiskCache>::try_load_query_result::<rustc_middle[b283510e1dd05d73]::ty::generics::GenericPredicates>
  42:     0x7fd57d416da0 - <<rustc_query_impl[d28b29c5c0f26ce3]::queries::predicates_of as rustc_query_system[d6f3c753593960fb]::query::config::QueryDescription<rustc_query_impl[d28b29c5c0f26ce3]::plumbing::QueryCtxt>>::TRY_LOAD_FROM_DISK::{closure#0} as core[4a8947a89ffd1b77]::ops::function::FnOnce<(rustc_query_impl[d28b29c5c0f26ce3]::plumbing::QueryCtxt, rustc_query_system[d6f3c753593960fb]::dep_graph::serialized::SerializedDepNodeIndex)>>::call_once
  43:     0x7fd57d3f000e - rustc_query_system[d6f3c753593960fb]::query::plumbing::get_query::<rustc_query_impl[d28b29c5c0f26ce3]::queries::predicates_of, rustc_query_impl[d28b29c5c0f26ce3]::plumbing::QueryCtxt>
  44:     0x7fd57d390f2e - <rustc_query_impl[d28b29c5c0f26ce3]::Queries as rustc_middle[b283510e1dd05d73]::ty::query::QueryEngine>::predicates_of
  45:     0x7fd57cc8f0d9 - <rustc_privacy[c9a24284be258ba6]::ReachEverythingInTheInterfaceVisitor>::predicates
  46:     0x7fd57cc8b076 - <rustc_privacy[c9a24284be258ba6]::EmbargoVisitor as rustc_hir[374f189791373ac]::intravisit::Visitor>::visit_item
  47:     0x7fd57cc8ccfb - <rustc_privacy[c9a24284be258ba6]::EmbargoVisitor as rustc_hir[374f189791373ac]::intravisit::Visitor>::visit_item
  48:     0x7fd57daf43fb - rustc_privacy[c9a24284be258ba6]::privacy_access_levels
  49:     0x7fd57de49ed4 - <rustc_query_system[d6f3c753593960fb]::dep_graph::graph::DepGraph<rustc_middle[b283510e1dd05d73]::dep_graph::dep_node::DepKind>>::with_task::<rustc_middle[b283510e1dd05d73]::ty::context::TyCtxt, (), &rustc_middle[b283510e1dd05d73]::middle::privacy::AccessLevels>
  50:     0x7fd57def20f1 - rustc_query_system[d6f3c753593960fb]::query::plumbing::try_execute_query::<rustc_query_impl[d28b29c5c0f26ce3]::plumbing::QueryCtxt, rustc_query_system[d6f3c753593960fb]::query::caches::DefaultCache<(), &rustc_middle[b283510e1dd05d73]::middle::privacy::AccessLevels>>
  51:     0x7fd57df2040f - rustc_query_system[d6f3c753593960fb]::query::plumbing::get_query::<rustc_query_impl[d28b29c5c0f26ce3]::queries::privacy_access_levels, rustc_query_impl[d28b29c5c0f26ce3]::plumbing::QueryCtxt>
  52:     0x7fd57dcd90e4 - rustc_passes[c56600e865d3cc74]::stability::check_unused_or_stable_features
  53:     0x7fd57d99ffd6 - <rustc_session[42681064e675acd6]::session::Session>::time::<(), rustc_interface[1214bec19156c976]::passes::analysis::{closure#0}::{closure#2}::{closure#0}>
  54:     0x7fd57d9a0f2e - <rustc_session[42681064e675acd6]::session::Session>::time::<(), rustc_interface[1214bec19156c976]::passes::analysis::{closure#0}>
  55:     0x7fd57d99ba9e - rustc_interface[1214bec19156c976]::passes::analysis
  56:     0x7fd57de46a75 - <rustc_query_system[d6f3c753593960fb]::dep_graph::graph::DepGraph<rustc_middle[b283510e1dd05d73]::dep_graph::dep_node::DepKind>>::with_task::<rustc_middle[b283510e1dd05d73]::ty::context::TyCtxt, (), core[4a8947a89ffd1b77]::result::Result<(), rustc_errors[afa4f82815d8f672]::ErrorGuaranteed>>
  57:     0x7fd57deec181 - rustc_query_system[d6f3c753593960fb]::query::plumbing::try_execute_query::<rustc_query_impl[d28b29c5c0f26ce3]::plumbing::QueryCtxt, rustc_query_system[d6f3c753593960fb]::query::caches::DefaultCache<(), core[4a8947a89ffd1b77]::result::Result<(), rustc_errors[afa4f82815d8f672]::ErrorGuaranteed>>>
  58:     0x7fd57df2d49e - rustc_query_system[d6f3c753593960fb]::query::plumbing::get_query::<rustc_query_impl[d28b29c5c0f26ce3]::queries::analysis, rustc_query_impl[d28b29c5c0f26ce3]::plumbing::QueryCtxt>
  59:     0x7fd57d97c527 - <rustc_interface[1214bec19156c976]::passes::QueryContext>::enter::<rustc_driver[25b442836e214e3a]::run_compiler::{closure#1}::{closure#2}::{closure#3}, core[4a8947a89ffd1b77]::result::Result<(), rustc_errors[afa4f82815d8f672]::ErrorGuaranteed>>
  60:     0x7fd57d967588 - <rustc_interface[1214bec19156c976]::interface::Compiler>::enter::<rustc_driver[25b442836e214e3a]::run_compiler::{closure#1}::{closure#2}, core[4a8947a89ffd1b77]::result::Result<core[4a8947a89ffd1b77]::option::Option<rustc_interface[1214bec19156c976]::queries::Linker>, rustc_errors[afa4f82815d8f672]::ErrorGuaranteed>>
  61:     0x7fd57d98fc7f - rustc_span[9389a2ea4399dbf9]::with_source_map::<core[4a8947a89ffd1b77]::result::Result<(), rustc_errors[afa4f82815d8f672]::ErrorGuaranteed>, rustc_interface[1214bec19156c976]::interface::create_compiler_and_run<core[4a8947a89ffd1b77]::result::Result<(), rustc_errors[afa4f82815d8f672]::ErrorGuaranteed>, rustc_driver[25b442836e214e3a]::run_compiler::{closure#1}>::{closure#1}>
  62:     0x7fd57d9682f4 - rustc_interface[1214bec19156c976]::interface::create_compiler_and_run::<core[4a8947a89ffd1b77]::result::Result<(), rustc_errors[afa4f82815d8f672]::ErrorGuaranteed>, rustc_driver[25b442836e214e3a]::run_compiler::{closure#1}>
  63:     0x7fd57d965a92 - <scoped_tls[fdc467f1f45e3091]::ScopedKey<rustc_span[9389a2ea4399dbf9]::SessionGlobals>>::set::<rustc_interface[1214bec19156c976]::interface::run_compiler<core[4a8947a89ffd1b77]::result::Result<(), rustc_errors[afa4f82815d8f672]::ErrorGuaranteed>, rustc_driver[25b442836e214e3a]::run_compiler::{closure#1}>::{closure#0}, core[4a8947a89ffd1b77]::result::Result<(), rustc_errors[afa4f82815d8f672]::ErrorGuaranteed>>
  64:     0x7fd57d97cbaf - std[49987cacb63ffdeb]::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface[1214bec19156c976]::util::run_in_thread_pool_with_globals<rustc_interface[1214bec19156c976]::interface::run_compiler<core[4a8947a89ffd1b77]::result::Result<(), rustc_errors[afa4f82815d8f672]::ErrorGuaranteed>, rustc_driver[25b442836e214e3a]::run_compiler::{closure#1}>::{closure#0}, core[4a8947a89ffd1b77]::result::Result<(), rustc_errors[afa4f82815d8f672]::ErrorGuaranteed>>::{closure#0}, core[4a8947a89ffd1b77]::result::Result<(), rustc_errors[afa4f82815d8f672]::ErrorGuaranteed>>
  65:     0x7fd57d97cce9 - <<std[49987cacb63ffdeb]::thread::Builder>::spawn_unchecked_<rustc_interface[1214bec19156c976]::util::run_in_thread_pool_with_globals<rustc_interface[1214bec19156c976]::interface::run_compiler<core[4a8947a89ffd1b77]::result::Result<(), rustc_errors[afa4f82815d8f672]::ErrorGuaranteed>, rustc_driver[25b442836e214e3a]::run_compiler::{closure#1}>::{closure#0}, core[4a8947a89ffd1b77]::result::Result<(), rustc_errors[afa4f82815d8f672]::ErrorGuaranteed>>::{closure#0}, core[4a8947a89ffd1b77]::result::Result<(), rustc_errors[afa4f82815d8f672]::ErrorGuaranteed>>::{closure#1} as core[4a8947a89ffd1b77]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
  66:     0x7fd57b0ab3f3 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h997dc5bc9efdb91e
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/alloc/src/boxed.rs:1872:9
  67:     0x7fd57b0ab3f3 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h482cb6422469721b
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/alloc/src/boxed.rs:1872:9
  68:     0x7fd57b0ab3f3 - std::sys::unix::thread::Thread::new::thread_start::hcd1011649240eef0
                               at /rustc/daf68b1f766e67ffe040260b15c218301853386a/library/std/src/sys/unix/thread.rs:108:17
  69:     0x7fd57aeb0e8d - start_thread
  70:     0x7fd57af31350 - __clone3
  71:                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.62.0-beta.2 (daf68b1f7 2022-05-19) running on x86_64-unknown-linux-gnu

note: compiler flags: --crate-type lib -C opt-level=3 -C embed-bitcode=no -C debuginfo=0 -C incremental -C symbol-mangling-version=v0 -Z macro-backtrace -C link-args=-Wl,-z,origin -C link-args=-Wl,-rpath,$ORIGIN/../lib -Z unstable-options -C split-debuginfo=off -Z tls-model=initial-exec -Z unstable-options -C prefer-dynamic -C llvm-args=-import-instr-limit=10 -Z binary-dep-depinfo -Z force-unstable-if-unmarked

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

query stack during panic:
end of query stack
thread panicked while panicking. aborting.
 Documenting rustc_symbol_mangling v0.0.0 (/home/infrandomness/Documents/Dev/rust/compiler/rustc_symbol_mangling)
 Documenting rustc_metadata v0.0.0 (/home/infrandomness/Documents/Dev/rust/compiler/rustc_metadata)
 Documenting rustc_passes v0.0.0 (/home/infrandomness/Documents/Dev/rust/compiler/rustc_passes)
 Documenting rustc_query_impl v0.0.0 (/home/infrandomness/Documents/Dev/rust/compiler/rustc_query_impl)
 Documenting rustc_mir_dataflow v0.0.0 (/home/infrandomness/Documents/Dev/rust/compiler/rustc_mir_dataflow)
 Documenting rustc_save_analysis v0.0.0 (/home/infrandomness/Documents/Dev/rust/compiler/rustc_save_analysis)
rustc exited with signal: 6 (core dumped)
error: could not compile `rustc_infer`

Caused by:
  process didn't exit successfully: `/home/infrandomness/Documents/Dev/rust/build/bootstrap/debug/rustc --crate-name rustc_infer --edition=2021 compiler/rustc_infer/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --crate-type lib --emit=dep-info,metadata -C opt-level=3 -C embed-bitcode=no -C debuginfo=0 -C metadata=b0d66debf4861707 -C extra-filename=-b0d66debf4861707 --out-dir /home/infrandomness/Documents/Dev/rust/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps --target x86_64-unknown-linux-gnu -C incremental=/home/infrandomness/Documents/Dev/rust/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/incremental -L dependency=/home/infrandomness/Documents/Dev/rust/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps -L dependency=/home/infrandomness/Documents/Dev/rust/build/x86_64-unknown-linux-gnu/stage0-rustc/release/deps --extern rustc_data_structures=/home/infrandomness/Documents/Dev/rust/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps/librustc_data_structures-2c525e2c3660a781.rmeta --extern rustc_errors=/home/infrandomness/Documents/Dev/rust/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps/librustc_errors-758010991976da44.rmeta --extern rustc_hir=/home/infrandomness/Documents/Dev/rust/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps/librustc_hir-fffe5c0d0b0e80e7.rmeta --extern rustc_index=/home/infrandomness/Documents/Dev/rust/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps/librustc_index-64e9a52a9c0395ea.rmeta --extern rustc_macros=/home/infrandomness/Documents/Dev/rust/build/x86_64-unknown-linux-gnu/stage0-rustc/release/deps/librustc_macros-2df35b8caa916477.so --extern rustc_middle=/home/infrandomness/Documents/Dev/rust/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps/librustc_middle-f4d0356882e605cc.rmeta --extern rustc_serialize=/home/infrandomness/Documents/Dev/rust/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps/librustc_serialize-4226a8dc8493a13d.rmeta --extern rustc_session=/home/infrandomness/Documents/Dev/rust/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps/librustc_session-e5e981d914c76294.rmeta --extern rustc_span=/home/infrandomness/Documents/Dev/rust/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps/librustc_span-b642bcf1a6affdb2.rmeta --extern rustc_target=/home/infrandomness/Documents/Dev/rust/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps/librustc_target-73c4ec1e9078dec7.rmeta --extern smallvec=/home/infrandomness/Documents/Dev/rust/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps/libsmallvec-ada4cfc00bc051a5.rmeta --extern tracing=/home/infrandomness/Documents/Dev/rust/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps/libtracing-ec52effc85091138.rmeta --cfg=bootstrap -Csymbol-mangling-version=v0 -Zmacro-backtrace -Clink-args=-Wl,-z,origin '-Clink-args=-Wl,-rpath,$ORIGIN/../lib' -Zunstable-options -Csplit-debuginfo=off -Ztls-model=initial-exec -Zunstable-options '-Wrustc::internal' -Cprefer-dynamic -Cllvm-args=-import-instr-limit=10 -Z binary-dep-depinfo -L native=/home/infrandomness/Documents/Dev/rust/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/build/psm-b9043e4a2f1f60fc/out` (exit status: 254)

ah, seems like it works after having cleaned everything up with ./x.py clean,
I do seem to be having a couple of warnings coming from rustdocs and I would like to fix them beforehand

@jyn514
Copy link
Member

jyn514 commented Jun 6, 2022

I do seem to be having a couple of warnings coming from rustdocs and I would like to fix them beforehand

👍

@bors r-

@bors bors added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Jun 6, 2022
src/bootstrap/doc.rs Outdated Show resolved Hide resolved
@rust-log-analyzer

This comment has been minimized.

@b-ncMN
Copy link
Contributor Author

b-ncMN commented Jun 17, 2022

The job x86_64-gnu-tools failed! Check out the build log: (web) (plain)
Click to see the possible cause of the failure (guessed by this bot)

Huh

@jyn514
Copy link
Member

jyn514 commented Jun 17, 2022

@bors r-

@RalfJung this looks like a failure from the submodule update, not sure if you recognize it

@bors bors added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Jun 17, 2022
@b-ncMN
Copy link
Contributor Author

b-ncMN commented Jun 17, 2022

@bors r-

@RalfJung this looks like a failure from the submodule update, not sure if you recognize it

(not RalfJung but I see that it said)
We detected that this PR updated 'miri', but its tests failed.
but I'm not sure how to reproduce that on my local machine,
do you know ?

@jyn514
Copy link
Member

jyn514 commented Jun 17, 2022

 Running unittests src/lib.rs (build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/release/deps/miri-b55e52d0cc2c0e6d)

you can probably reproduce with x test --stage 2 src/tools/miri. Not sure whether --stage 2 is necessary or not, --stage 1 might work.

@RalfJung
Copy link
Member

this looks like a failure from the submodule update, not sure if you recognize it

Yes, that's #98107

@RalfJung
Copy link
Member

However, this PR shouldn't have to update the submodule. Yes, Miri fails to build on master, but that happens regularly so the documentation generation code here has to be able to handle that situation.

@@ -707,7 +713,7 @@ macro_rules! tool_doc {
target,
"doc",
$path,
SourceType::InTree,
source_type,
&[],
);
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If this command fails for Miri, that failure must be ignored. Miri failing to build is not a bug, it is expected. That's what the entire toolstate stuff is about.

@jyn514
Copy link
Member

jyn514 commented Jun 18, 2022

@RalfJung this has to update the submodule to pull in the documentation fix, not so it gets miri building.

Oh I see what you're saying though - if miri is broken, the docs will be broken too and we have to be able to handle that. @InfRandomness I think the right way to do that is to change https://github.com/rust-lang/rust/blob/7932f823b0fc912df339e28ca0ffac3a7b145e15/src/bootstrap/doc.rs#L732 to use try_run if $in_tree is true, and maybe print a warning if the command fails.

@RalfJung
Copy link
Member

this has to update the submodule to pull in the documentation fix, not so it gets miri building.

The documentation fix is already in the submodule in rustc master. The submodule update in this PR currently does not contain any doc fixes.

@RalfJung
Copy link
Member

to use try_run if $in_tree is true, and maybe print a warning if the command fails.

You mean false? Still in_tree seems like too innocent of a name to also control ignoring build errors...

@jyn514
Copy link
Member

jyn514 commented Jun 18, 2022

🤷 there are only ~3 tools in tree that use submodules, I don't think it's going to cause problems in practice.

@bors
Copy link
Contributor

bors commented Jun 19, 2022

☔ The latest upstream changes (presumably #98237) made this pull request unmergeable. Please resolve the merge conflicts.

@b-ncMN
Copy link
Contributor Author

b-ncMN commented Jun 19, 2022

I don't know how to resolve a conflict with a submodule,
regular 'git add' doesn't seem to work...
anyone knows?

@RalfJung
Copy link
Member

I'd recommend to first remove the submodule update from this commit, and then rebase it.

@b-ncMN
Copy link
Contributor Author

b-ncMN commented Jun 19, 2022

I'd recommend to first remove the submodule update from this commit, and then rebase it.

With git restore?
that doesn't seem to work...

@RalfJung
Copy link
Member

The submodule update is already a separate commit. So just git reset --hard HEAD^ should do it. Then fix the submodules (git submodule update --init --recursive) and then rebase.

@b-ncMN
Copy link
Contributor Author

b-ncMN commented Jun 21, 2022

The submodule update is already a separate commit. So just git reset --hard HEAD^ should do it. Then fix the submodules (git submodule update --init --recursive) and then rebase.

LANG=en_US git submodule update --init --recursive
fatal: 'fork' does not appear to be a git repository
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
fatal: Fetched in submodule path 'src/tools/cargo', but it did not contain 4d92f07f34ba7fb7d7f207564942508f46c225d3. Direct fetching of that commit failed.

and of course I can't rebase because I've got plenty of uncommited changes :

        modified:   Cargo.lock
        modified:   src/tools/cargo (new commits)
        modified:   src/tools/miri (new commits)
        modified:   src/tools/rust-analyzer (new commits, modified content)

This is really really irritating,
I have no idea what the heck is going on with git, it's pissing me of

@RalfJung
Copy link
Member

Looks like you got your checkout into a broken state. I remember seeing some weird behavior with submodule+rebase in the past (git is definitely terrible at handling this), but I have no idea what I did to get out of it again. Probably random bashing against various git commands until it gave in...

You also had bad luck; there was some trouble with the cargo and rust-analyzer submodules right around when you tried that (that is probably the reason of that cargo-related error).

What you want to do is get back to commit d23264b9df5bd9d10b5553956b9ae523b1125055, somehow. If it is still rebasing, try git rebase --abort. Then git reset --hard d23264b9df5bd9d10b5553956b9ae523b1125055. Then git rebase origin/master. And then git submodule update --init --recursive. Then hopefully git status will be clean and you can push to this PR's branch.

@b-ncMN
Copy link
Contributor Author

b-ncMN commented Jun 30, 2022

I tried to git checkout the mentioned commit

[infrandomness@fedora rust]$ git status
HEAD detached at d23264b9df5
Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git restore <file>..." to discard changes in working directory)
  (commit or discard the untracked or modified content in submodules)
	modified:   Cargo.lock
	modified:   src/tools/cargo (new commits)
	modified:   src/tools/miri (new commits)
	modified:   src/tools/rust-analyzer (new commits, modified content)

no changes added to commit (use "git add" and/or "git commit -a")
[infrandomness@fedora rust]$ git rebase --abort
fatal: No rebase in progress?

still kept on going and force pushed

@b-ncMN
Copy link
Contributor Author

b-ncMN commented Jun 30, 2022

Ok I've had enough of this git bullcrap

I'm scraping all of this with my fork, recreating a new fork and a new PR.

@b-ncMN b-ncMN closed this Jun 30, 2022
@b-ncMN
Copy link
Contributor Author

b-ncMN commented Jun 30, 2022

Nvm I won't even bother opening a new PR
I'm done with this.

this submodule system needs to change, it shouldn't be normal for all of this to happen.

@RalfJung
Copy link
Member

Ah, one submodule has "modified content". Not sure if you edited it or some script changed a file in there, but I don't know of a good way to tell git to reset all submodule contents, you have to go to each affected submodule and do it by hand. :(

I re-submitted this as #98714.

RalfJung added a commit to RalfJung/rust that referenced this pull request Jul 3, 2022
add Miri to the nightly docs

This is a follow-up to rust-lang#97773 and to rust-lang#98714

It adds miri to the doc.rust-lang.org/nightly/nightly-rustc](https://doc.rust-lang.org/nightly/nightly-rustc/
RalfJung added a commit to RalfJung/rust that referenced this pull request Jul 3, 2022
add Miri to the nightly docs

This is a follow-up to rust-lang#97773 and to rust-lang#98714

It adds miri to the doc.rust-lang.org/nightly/nightly-rustc](https://doc.rust-lang.org/nightly/nightly-rustc/
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-miri Area: The miri tool S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants