Please sign in to comment.
Discover additional DefIds by looking in the def_path_table.
The "definition path table" is a mapping from DefIds to definition paths. There's an entry for every item than appears in the compiler's metadata, thus making it an excellent discovery tool for our serialiser code to find DefIds in dependent crates (if you run with `-Z always-encode-mir`)! We also switch to using tcx.mir_keys() for finding the DefIds in the current crate. Previously we used tcx.collect_and_partition_mono_items() which may miss some stuff. A future change will remove the work list used in the serialised, as this code supersedes it. That will be a fairly large change, so saving it for another PR. Another future change will enable `-Z always-encode-mir` by default for ykrustc. One of the tests we disabled here is being discussed upstream here: rust-lang/rust#63742 When this is resolved, we might have to revisit this test in our fork.
- Loading branch information...
Showing with 26 additions and 4 deletions.