rustc-dev-guide/src
bors 9f227ffb56 Auto merge of #139578 - ferrocene:pa-compiletest-edition, r=jieyouxu
Fix breakage when running compiletest with `--test-args=--edition=2015`

Compiletest has an `--edition` flag to change the default edition tests are run with. Unfortunately no test suite successfully executes when that flag is passed. If the edition is set to something greater than 2015 the breakage is expected, since the test suite currently supports only edition 2015 (Ferrous Systems will open an MCP about fixing that soonish). Surprisingly, the test suite is also broken if `--edition=2015` is passed to compiletest. This PR focuses on fixing the latter.

This PR fixes the two categories of failures happening when `--edition=2015` is passed:

* Some edition-specific tests set their edition through `//@ compile-flags` instead of `//@ edition`. Compiletest doesn't parse the compile flags, so it would see no `//@ edition` and add another `--edition` flag, leading to a rustc error.
* Compiletest would add the edition after `//@ compile-flags`, while some tests depend on flags passed to `//@ compile-flags` being the last flags in the rustc invocation.

Note that for the first category, I opted to manually go and replace all `//@ compile-flags` setting an edition with an explicit `//@ edition`. We could've changed compiletest to instead check whether an edition was set in `//@ compile-flags`, but I thought it was better to enforce a consistent way to set the edition in tests.

I also added the edition to the stamp, so that changing `--edition` results in tests being re-executed.

r? `@jieyouxu`
2025-04-11 10:53:45 +00:00
..
appendix Update `ParamEnv` section for `TypingEnv` changes 2025-03-20 17:30:22 +00:00
backend Fix deadlink in libs-and-metadata.md 2025-04-06 20:05:03 +08:00
borrow_check nyaa 2025-01-15 14:23:48 +01:00
building Fix partial clone link 2025-03-30 13:21:01 +01:00
const-eval
diagnostics tree-wide: parallel: Fully removed all `Lrc`, replaced with `Arc` 2025-02-03 13:25:57 +03:00
guides Fix some broken links 2025-01-14 21:52:33 -08:00
img
mir intern valtrees 2025-02-13 00:38:17 +01:00
notification-groups Merge from rustc 2025-04-02 23:26:35 +08:00
profiling replace config.toml to bootstrap.toml in src:doc:rustc-dev-guide 2025-03-17 12:56:44 +05:30
queries Use `id` attribute for `<a>` tags instead of deprecated `name` attribute (#2184) 2024-12-31 22:02:50 +08:00
rustc-driver Merge pull request #2289 from y1lan/fix_compiler_err_of_examples 2025-03-29 23:10:13 +02:00
rustdoc-internals typo 2025-03-24 10:41:19 +02:00
solve Remove redundant words 2025-04-09 18:46:50 +08:00
tests Auto merge of #139578 - ferrocene:pa-compiletest-edition, r=jieyouxu 2025-04-11 10:53:45 +00:00
traits Update `ParamEnv` section for `TypingEnv` changes 2025-03-20 17:30:22 +00:00
ty_module Fix trivial typo of `BoundVariableKind` 2025-03-28 21:04:21 +01:00
SUMMARY.md Merge pull request #2299 from jieyouxu/test-jobs-reorg 2025-03-24 16:29:25 +08:00
about-this-guide.md Update about-this-guide.md 2025-01-28 07:43:16 +01:00
asm.md
ast-lowering.md
ast-validation.md
attributes.md
borrow_check.md
bug-fix-procedure.md Fix broken raw HTML (#2198) 2025-01-07 16:00:59 +08:00
cli.md
closure.md fix some more typos 2025-01-14 23:01:42 -08:00
coherence.md
compiler-debugging.md replace config.toml to bootstrap.toml in src:doc:rustc-dev-guide 2025-03-17 12:56:44 +05:30
compiler-src.md
compiler-team.md
const-eval.md Update `ParamEnv` section for `TypingEnv` changes 2025-03-20 17:30:22 +00:00
contributing.md Fix MCP links 2025-03-14 15:18:58 +01:00
conventions.md Fix a typo in conventions.md 2025-01-31 10:23:46 +11:00
coroutine-closures.md
crates-io.md
debugging-support-in-rustc.md
diagnostics.md Delete from_method from rustc_on_unimplemented documentation 2025-03-27 18:32:48 +01:00
early_late_parameters.md Remove accidental leading empty line in code block 2025-01-26 02:42:09 +01:00
effects.md consider `explicit_implied_const_bounds` 2025-03-08 16:38:44 +08:00
external-repos.md Add portable SIMD to list of subtrees 2025-01-20 13:53:10 +01:00
feature-gate-ck.md
feature-gates.md
fuzzing.md replace config.toml to bootstrap.toml in src:doc:rustc-dev-guide 2025-03-17 12:56:44 +05:30
generic_parameters_summary.md Split stuff out of representing types, and rewrite early/late bound chapter (#2192) 2025-01-05 17:51:45 +01:00
getting-started.md Remove "Port run-make tests from Make to Rust" tracking issue from Recurring work 2025-02-04 01:26:15 +05:30
git.md
hir-debugging.md
hir.md Move methods from `Map` to `TyCtxt`, part 4. 2025-03-12 08:55:37 +11:00
implementing_new_features.md Fix MCP links 2025-03-14 15:18:58 +01:00
incrcomp-debugging.md
lang-items.md
licenses.md
llvm-coverage-instrumentation.md replace config.toml to bootstrap.toml in src:doc:rustc-dev-guide 2025-03-17 12:56:44 +05:30
macro-expansion.md
memory.md
method-lookup.md comment out FIXMEs to not display them on UI (#2186) 2025-01-05 17:51:45 +01:00
name-resolution.md Fix rib example 2025-01-07 21:29:45 +01:00
opaque-types-impl-trait-inference.md fix some more typos 2025-01-14 23:01:42 -08:00
opaque-types-type-alias-impl-trait.md
overview.md replace config.toml to bootstrap.toml in src:doc:rustc-dev-guide 2025-03-17 12:56:44 +05:30
panic-implementation.md
parallel-rustc.md Remove some unnecessary aliases from `rustc_data_structures::sync` 2025-03-03 20:20:24 +11:00
part-2-intro.md
part-3-intro.md
part-4-intro.md
part-5-intro.md
pat-exhaustive-checking.md
profile-guided-optimization.md replace config.toml to bootstrap.toml in src:doc:rustc-dev-guide 2025-03-17 12:56:44 +05:30
profiling.md replace config.toml to bootstrap.toml in src:doc:rustc-dev-guide 2025-03-17 12:56:44 +05:30
query.md
return-position-impl-trait-in-trait.md
rustbot.md
rustdoc-internals.md
rustdoc.md add some links about the rustdoc-gui test suite 2025-04-03 15:09:11 -05:00
sanitizers.md replace config.toml to bootstrap.toml in src:doc:rustc-dev-guide 2025-03-17 12:56:44 +05:30
serialization.md
stability.md rustc-dev-guide: add note about not adding rustc_allowed_through_unstable_modules to more items 2025-01-14 17:00:12 +01:00
stabilization_guide.md Use `id` attribute for `<a>` tags instead of deprecated `name` attribute (#2184) 2024-12-31 22:02:50 +08:00
syntax-intro.md
test-implementation.md
the-parser.md Fix some broken links 2025-01-14 21:52:33 -08:00
thir.md
tracing.md replace config.toml to bootstrap.toml in src:doc:rustc-dev-guide 2025-03-17 12:56:44 +05:30
ty-fold.md
ty.md
type-checking.md
type-inference.md Use `id` attribute for `<a>` tags instead of deprecated `name` attribute (#2184) 2024-12-31 22:02:50 +08:00
typing_parameter_envs.md Update `ParamEnv` section for `TypingEnv` changes 2025-03-20 17:30:22 +00:00
unsafety-checking.md
variance.md Use `id` attribute for `<a>` tags instead of deprecated `name` attribute (#2184) 2024-12-31 22:02:50 +08:00
walkthrough.md Use `id` attribute for `<a>` tags instead of deprecated `name` attribute (#2184) 2024-12-31 22:02:50 +08:00