rust/compiler/rustc_session/src
Matthias Krüger 494e67c63c
Rollup merge of #113296 - BoxyUwU:proof_trees_on_error, r=lcnr
add flag for enabling global cache usage for proof trees and printing proof trees on error

This adds a few new things:
- `-Zdump-solver-proof-tree=always/never/on-error`
    - `always`/`never` were previosuly specifiable by whether the flag exists or not, th new flag is `on_error` which reruns obligations of fulfillment and selection errors with proof tree generation enabled and prints them out
- `-Zdump-solver-proof-tree-uses-cache`
    - allows forcing global cache to be used or unused for all generated proof trees, global cache is enabled by default for `always` so that it accurately represents what happend. This flag currently would affect misc uses of `GenerateProofTree::Yes` which will be added in the future for things like diagnostics logic and rustdoc's auto_trait file. We can fix this when we start using proof tree generation for those use cases if it's desirable.

I also changed the output to go straight to stdout instead of going through `debug!` so that `-Zdump-solver-proof-tree` can be adequately used on `nightly` not just a locally built toolchain.

The idea for `on-error` is that it should hopefully make it easier to quickly figure out "why doesnt this code compile"- you just pass in `-Zdump-solver-proof-tree=on-error` and you'll only get proof trees you care about.

---

r? `@lcnr` `@compiler-errors`
2023-07-04 17:46:28 +02:00
..
config Change process spawning to inherit the parent's signal mask by default 2022-10-20 14:53:38 -07:00
cgu_reuse_tracker.rs Remove useless borrows and derefs 2022-12-01 17:34:43 +00:00
code_stats.rs Tweak the sort of vtable sizes 2023-06-13 12:39:59 +00:00
config.rs Rollup merge of #113296 - BoxyUwU:proof_trees_on_error, r=lcnr 2023-07-04 17:46:28 +02:00
cstore.rs Remove MetadataRef type alias 2023-05-16 11:55:47 +00:00
errors.rs linker: Report linker flavors incompatible with the current target 2023-05-29 19:58:11 +03:00
filesearch.rs bump windows crate 0.46 -> 0.48 in workspace 2023-05-09 18:20:13 +03:00
lib.rs Collect VTable stats & add -Zprint-vtable-sizes 2023-06-12 15:58:35 +00:00
options.rs Rollup merge of #113296 - BoxyUwU:proof_trees_on_error, r=lcnr 2023-07-04 17:46:28 +02:00
output.rs Write to stdout if - is given as output file 2023-06-06 17:53:29 -04:00
parse.rs Simplify some conditions 2023-06-27 07:40:47 +00:00
search_paths.rs Provide more context for rustc +nightly -Zunstable-options on stable 2023-06-27 23:23:33 +08:00
session.rs Provide more context for rustc +nightly -Zunstable-options on stable 2023-06-27 23:23:33 +08:00
utils.rs Rollup merge of #109231 - Zoxc:fs-non-canon, r=eholk 2023-03-23 19:55:45 +01:00