Deny keyword lifetimes pre-expansion https://github.com/rust-lang/rust/pull/126452#issuecomment-2179464266 > Secondly, we confirmed that we're OK with moving the validation of keywords in lifetimes to pre-expansion from post-expansion. We similarly consider this a bug fix. While the breakage of the convenience feature of the with_locals crate that relies on this is unfortunate, and we wish we had not overlooked this earlier for that reason, we're fortunate that the breakage is contained to only one crate, and we're going to accept this breakage as the extra complexity we'd need to carry in the compiler to work around this isn't deemed worth it. T-lang considers it to be a bugfix to deny `'keyword` lifetimes in the parser, rather than during AST validation that only happens post-expansion. This has one breakage: https://github.com/rust-lang/rust/pull/126452#issuecomment-2171654756 This probably should get lang FCP'd just for consistency.
UI Tests
This folder contains rustc
's
UI tests.
Test Directives (Headers)
Typically, a UI test will have some test directives / headers which are special comments that tell compiletest how to build and intepret a test.
As part of an on-going effort to rewrite compiletest
(see https://github.com/rust-lang/compiler-team/issues/536), a major
change proposal to change legacy compiletest-style headers // <directive>
to ui_test
-style headers
//@ <directive>
was accepted (see
https://github.com/rust-lang/compiler-team/issues/512.
An example directive is ignore-test
. In legacy compiletest style, the header
would be written as
// ignore-test
but in ui_test
style, the header would be written as
//@ ignore-test
compiletest is changed to accept only //@
directives for UI tests
(currently), and will reject and report an error if it encounters any
comments // <content>
that may be parsed as an legacy compiletest-style
test header. To fix this, you should migrate to the ui_test
-style header
//@ <content>
.