Make rustc consider itself a stable compiler when RUSTC_BOOTSTRAP=-1#132993
Make rustc consider itself a stable compiler when RUSTC_BOOTSTRAP=-1#132993bors merged 2 commits intorust-lang:masterfrom
RUSTC_BOOTSTRAP=-1#132993Conversation
|
I was thinking about doing this myself recently, because we have some code paths for adjusting |
7d8d712 to
151d885
Compare
151d885 to
d6f3b18
Compare
| // also affected by `RUSTC_BOOTSTRAP`. | ||
| //@[force_stable] rustc-env:RUSTC_BOOTSTRAP=-1 | ||
| //@[force_stable] compile-flags: -Z unstable-options | ||
| //@[force_stable] regex-error-pattern: error: the option `Z` is only accepted on the nightly compiler |
There was a problem hiding this comment.
N.B.: this doesn't check in a snapshot because the exact error message will be different between beta/stable/dev depending on channel info.
d6f3b18 to
c130501
Compare
|
Rebased and fixed a comment in order for sentence to sentence, no functional changes. |
|
@bors r+ rollup |
Rollup of 7 pull requests Successful merges: - rust-lang#132795 (Check `use<..>` in RPITIT for refinement) - rust-lang#132944 (add parentheses when unboxing suggestion needed) - rust-lang#132993 (Make rustc consider itself a stable compiler when `RUSTC_BOOTSTRAP=-1`) - rust-lang#133130 (`suggest_borrow_generic_arg`: instantiate clauses properly) - rust-lang#133133 (rustdoc-search: add standalone trailing `::` test) - rust-lang#133143 (Diagnostics for let mut in item context) - rust-lang#133147 (Fixup some test directives) r? `@ghost` `@rustbot` modify labels: rollup
Rollup merge of rust-lang#132993 - jieyouxu:i_am_very_stable, r=chenyukang Make rustc consider itself a stable compiler when `RUSTC_BOOTSTRAP=-1` Addresses rust-lang#123404 to allow test writers to specify `//@ rustc-env:RUSTC_BOOTSTRAP=-1` to have a given rustc consider itself a stable rustc. This is only intended for testing usages. I did not use `RUSTC_BOOTSTRAP=0` because that can be confusing, i.e. one might think that means "not bootstrapping", but "forcing a given rustc to consider itself a stable compiler" is a different use case. I also added a specific test to check `RUSTC_BOOTSTRAP`'s various values and how that interacts with rustc's stability story w.r.t. features and cli flags. Noticed when trying to write a test for enabling ICE file dumping on stable. Dunno if this needs a compiler FCP or MCP, but I can file an MCP or ask someone to start an FCP if needed. Note that `RUSTC_BOOTSTRAP` is a perma-unstable env var and has no stability guarantees (heh) whatsoever. This does not affect bootstrapping because bootstrap never sets `RUSTC_BOOTSTRAP=-1`. If someone does set that when bootstrapping, it is considered PEBKAC. Accompanying dev-guide PR: rust-lang/rustc-dev-guide#2136 cc `@estebank` and `@rust-lang/wg-diagnostics` for FYI
|
Maybe we could replace the empty feature list in with this? Not sure if it has the same behavior though. |
|
Yeah, that is actually somewhat inaccurate if you really wanted to emulate a |
This comment was marked as resolved.
This comment was marked as resolved.
There was a problem hiding this comment.
(there's a typo on rustc_bootstap.rs ^^)
Addresses #123404 to allow test writers to specify
//@ rustc-env:RUSTC_BOOTSTRAP=-1to have a given rustc consider itself a stable rustc. This is only intended for testing usages.I did not use
RUSTC_BOOTSTRAP=0because that can be confusing, i.e. one might think that means "not bootstrapping", but "forcing a given rustc to consider itself a stable compiler" is a different use case.I also added a specific test to check
RUSTC_BOOTSTRAP's various values and how that interacts with rustc's stability story w.r.t. features and cli flags.Noticed when trying to write a test for enabling ICE file dumping on stable.
Dunno if this needs a compiler FCP or MCP, but I can file an MCP or ask someone to start an FCP if needed. Note that
RUSTC_BOOTSTRAPis a perma-unstable env var and has no stability guarantees (heh) whatsoever. This does not affect bootstrapping because bootstrap never setsRUSTC_BOOTSTRAP=-1. If someone does set that when bootstrapping, it is considered PEBKAC.Accompanying dev-guide PR: rust-lang/rustc-dev-guide#2136
cc @estebank and @rust-lang/wg-diagnostics for FYI