rust/tests/ui
Trevor Gross 9833e21c5d
Rollup merge of #126762 - compiler-errors:kw-lt, r=michaelwoerister
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.
2024-07-16 16:15:15 -05:00
..
abi Auto merge of #123351 - beetrees:x86-ret-snan-rust, r=nikic,workingjubilee 2024-07-12 20:36:43 +00:00
alloc-error Update test directives for `wasm32-wasip1` 2024-03-11 09:36:35 -07:00
allocator Update test directives for `wasm32-wasip1` 2024-03-11 09:36:35 -07:00
annotate-snippet
anon-params
argfile compiletest: add enable-by-default check-cfg 2024-05-04 11:30:38 +02:00
argument-suggestions Use verbose style for argument removal suggestion 2024-07-05 19:40:09 +00:00
array-slice-vec Change E0369 diagnostic give note information for foreign items. 2024-06-25 10:00:30 +08:00
asm Rollup merge of #126922 - asquared31415:asm_binary_label, r=estebank 2024-07-12 13:47:05 -07:00
associated-consts Use subtyping instead of equality, since method resolution also uses subtyping 2024-06-17 10:57:52 +00:00
associated-inherent-types Rollup merge of #125978 - fmease:cleanup-hir-ty-lowering-consolidate-assoc-item-access-checking, r=davidtwco 2024-06-12 03:57:19 -07:00
associated-item
associated-type-bounds Make sure we deny unimplemented RTN on qpath segments 2024-06-28 14:20:44 -04:00
associated-types Automatically taint when reporting errors from ItemCtxt 2024-07-09 07:44:17 +00:00
async-await More accurate incorrect use of `await` suggestion 2024-07-12 03:02:58 +00:00
attributes Make parse error suggestions verbose and fix spans 2024-07-12 03:02:57 +00:00
auto-traits Harmonize use of leaf and root obligation in trait error reporting 2024-06-12 20:57:23 -04:00
autoref-autoderef
auxiliary Move 100 entries from tests/ui into subdirs 2024-05-20 19:55:59 -07:00
backtrace fix interleaved panic output 2024-07-12 11:52:04 -04:00
bench
binding Stabilize exclusive_range 2024-05-02 19:42:31 -04:00
binop Change E0369 diagnostic give note information for foreign items. 2024-06-25 10:00:30 +08:00
blind
block-result
borrowck Suggest a borrow when using dbg 2024-07-16 02:48:47 +08:00
box Mention when type parameter could be `Clone` 2024-04-24 22:21:15 +00:00
btreemap Account for unops when suggesting cloning 2024-04-11 16:41:41 +00:00
builtin-superkinds
c-variadic compiler: Mention C-unwind in C-variadic error 2024-06-22 23:30:31 -07:00
cast Allow casting `*mut dyn T`->`*mut (dyn T + Send)` if `T` has `Send` super trait 2024-07-07 20:07:01 +02:00
cfg RFC 2383: Stabilize `lint_reasons` 🎉 2024-06-25 17:22:22 +02:00
check-cfg Added the `xop` target feature and `xop_target_feature` gate 2024-07-12 23:30:22 +05:30
closure-expected-type Make nll higher ranked equate use bidirectional subtyping in invariant context 2024-02-29 15:27:59 -03:00
closure_context
closures Gate the type length limit check behind a nightly flag 2024-07-12 21:16:09 -04:00
cmse-nonsecure
codegen Gate the type length limit check behind a nightly flag 2024-07-12 21:16:09 -04:00
codemap_tests Fix remaining cases 2024-06-21 19:00:18 -04:00
coercion Remove windows-specific copy of test 2024-06-17 10:57:52 +00:00
coherence rustc_type_ir: Omit some struct fields from Debug output 2024-06-19 03:08:34 +02:00
coinduction
command Update test directives for `wasm32-wasip1` 2024-03-11 09:36:35 -07:00
compare-method show unit output when there is only output diff in diagnostics 2024-07-06 21:00:30 +08:00
compiletest-self-test compiletest: properly handle revisioned run-rustfix tests 2024-04-07 17:06:15 +00:00
conditional-compilation Make parse error suggestions verbose and fix spans 2024-07-12 03:02:57 +00:00
confuse-field-and-method
const-generics Account for `let foo = expr`; to suggest `const foo: Ty = expr;` 2024-07-11 20:39:24 +00:00
const-ptr Always use a colon in `//@ normalize-*:` headers 2024-07-11 12:23:44 +10:00
const_prop Allow type_of to return partially non-error types if the type was already tainted 2024-05-28 11:55:20 +00:00
consts Rollup merge of #127684 - RalfJung:unleashed-mutable-refs, r=oli-obk 2024-07-15 21:11:48 +02:00
coroutine Always use a colon in `//@ normalize-*:` headers 2024-07-11 12:23:44 +10:00
coverage-attr Make parse error suggestions verbose and fix spans 2024-07-12 03:02:57 +00:00
crate-loading Make not finding core a fatal error 2024-03-06 18:19:13 -05:00
cross Provide structured suggestion for `#![feature(foo)]` 2024-03-18 16:08:58 +00:00
cross-crate Closures are recursively reachable 2024-06-04 22:50:35 +02:00
custom_test_frameworks
cycle-trait Merge collect_mod_item_types query into check_well_formed 2024-03-07 14:26:31 +00:00
debuginfo Always use a colon in `//@ normalize-*:` headers 2024-07-11 12:23:44 +10:00
definition-reachable
delegation Delegation: support coercion for target expression 2024-07-16 18:03:15 +03:00
dep-graph
deployment-target Avoid a couple of unnecessary EarlyDiagCtxt uses 2024-06-22 17:06:47 +00:00
deprecation Deprecate no-op codegen option `-Cinline-threshold=...` 2024-06-14 20:25:17 +02:00
deref-patterns Move some tests 2024-04-21 15:43:43 -03:00
derived-errors
derives Rollup merge of #125572 - mu001999-contrib:dead/enhance, r=pnkfelix 2024-06-07 20:14:28 +02:00
deriving Mark format! with must_use hint 2024-07-06 14:24:20 +02:00
dest-prop
destructuring-assignment
diagnostic-flags tests: remove few ignore-stage2 2024-04-25 10:48:11 +03:00
diagnostic-width
diagnostic_namespace Allows `#[diagnostic::do_not_recommend]` to supress trait impls in suggestions as well 2024-07-11 08:14:28 +02:00
did_you_mean Make parse error suggestions verbose and fix spans 2024-07-12 03:02:57 +00:00
directory_ownership
disallowed-deconstructing
dollar-crate
drop tail expression behind terminating scope 2024-06-18 04:14:43 +08:00
drop-bounds
dropck Suggest `.clone()` when moved while borrowed 2024-04-11 16:41:41 +00:00
dst
duplicate Update test directives for `wasm32-wasip1` 2024-03-11 09:36:35 -07:00
dyn-drop
dyn-keyword Deny gen keyword in edition_2024_compat lints 2024-04-22 11:51:50 -04:00
dyn-star Fix test problems discovered by the revision check 2024-05-09 14:47:09 +10:00
dynamically-sized-types
editions Point out exactly what obligation will fail 2024-06-13 21:47:43 -04:00
empty RFC 2383: Stabilize `lint_reasons` 🎉 2024-06-25 17:22:22 +02:00
entry-point Stabilize `imported_main` 2024-03-06 12:01:54 +00:00
enum Tweak tests to avoid confusing suggestion output 2024-07-12 03:02:57 +00:00
enum-discriminant
env-macro Move `option_env!` and `env!` tests to the `env-macro` directory 2024-03-17 21:59:40 +00:00
error-codes Rollup merge of #127407 - estebank:parser-suggestions, r=oli-obk 2024-07-15 21:11:48 +02:00
error-emitter tests: remove some trailing ws 2024-04-27 10:54:31 +03:00
errors E0191 suggestion correction, inserts turbofish without dyn (#91997) 2024-07-09 17:21:31 -06:00
explicit
explicit-tail-calls doc fixups from review 2024-07-07 18:16:38 +02:00
expr Make parse error suggestions verbose and fix spans 2024-07-12 03:02:57 +00:00
extern Make parse error suggestions verbose and fix spans 2024-07-12 03:02:57 +00:00
extern-flag Rollup merge of #125913 - fmease:early-lints-spruce-up-some-diags, r=Nadrieril 2024-06-11 09:14:34 +01:00
feature-gates Added the `xop` target feature and `xop_target_feature` gate 2024-07-12 23:30:22 +05:30
ffi-attrs Move 100 entries from tests/ui into subdirs 2024-05-20 19:55:59 -07:00
fmt Make parse error suggestions verbose and fix spans 2024-07-12 03:02:57 +00:00
fn Make parse error suggestions verbose and fix spans 2024-07-12 03:02:57 +00:00
fn-main Move 100 entries from tests/ui into subdirs 2024-05-20 19:55:59 -07:00
for Report better WF obligation leaf obligations in new solver 2024-05-16 21:08:42 -04:00
for-loop-while Remove note about iteration count in coerce 2024-04-30 12:46:59 +05:30
foreign Move 100 entries from tests/ui into subdirs 2024-05-20 19:55:59 -07:00
fuel Move 100 entries from tests/ui into subdirs 2024-05-20 19:55:59 -07:00
fully-qualified-type
function-pointer
functional-struct-update review comments 2024-04-12 20:57:07 +00:00
functions-closures
generic-associated-types Actually just make can_eq process obligations (almost) everywhere 2024-07-05 11:59:54 -04:00
generic-const-items Migrate tests to use `-Znext-solver` 2024-06-30 17:08:45 +00:00
generics Use more accurate span for `:` to `::` suggestion 2024-07-12 03:02:58 +00:00
half-open-range-patterns Make parse error suggestions verbose and fix spans 2024-07-12 03:02:57 +00:00
hashmap compiletest: Add a `//@ needs-threads` directive 2024-03-06 12:35:07 -08:00
hello_world
higher-ranked instantiate higher ranked goals in candidate selection 2024-07-10 14:13:16 +02:00
hygiene Always use a colon in `//@ normalize-*:` headers 2024-07-11 12:23:44 +10:00
illegal-sized-bound
impl-header-lifetime-elision And more general error 2024-05-24 11:20:33 -04:00
impl-trait Rollup merge of #127407 - estebank:parser-suggestions, r=oli-obk 2024-07-15 21:11:48 +02:00
implied-bounds Auto merge of #127435 - GrigorenkoPV:tests-for-112905, r=cjgillot 2024-07-13 13:12:52 +00:00
imports Fix import suggestion ice 2024-07-04 09:55:00 +00:00
include-macros diagnostics: fix crash on completely empty included file 2024-03-29 18:22:44 -07:00
incoherent-inherent-impls Fix remaining cases 2024-06-21 19:00:18 -04:00
indexing check index `value <= 0xFFFF_FF00` 2024-06-01 09:40:46 +08:00
inference Use verbose style for argument removal suggestion 2024-07-05 19:40:09 +00:00
infinite Automatically taint InferCtxt when errors are emitted 2024-06-26 16:01:45 +00:00
inherent-impls-overlap-check
inline-const Add regression test 2024-06-07 08:33:58 +00:00
instrument-coverage Fix remaining cases 2024-06-21 19:00:18 -04:00
instrument-xray
interior-mutability
internal
internal-lints Use the rustc_private libc less in tests 2024-04-15 08:54:11 -04:00
intrinsics Always use a colon in `//@ normalize-*:` headers 2024-07-11 12:23:44 +10:00
invalid
invalid-compile-flags Add `--print=check-cfg` to get the expected configs 2024-04-25 07:58:31 +02:00
invalid-module-declaration
invalid-self-argument
io-checks Always use a colon in `//@ normalize-*:` headers 2024-07-11 12:23:44 +10:00
issues Rollup merge of #127407 - estebank:parser-suggestions, r=oli-obk 2024-07-15 21:11:48 +02:00
iterators Gate the type length limit check behind a nightly flag 2024-07-12 21:16:09 -04:00
json
keyword
kindck Harmonize use of leaf and root obligation in trait error reporting 2024-06-12 20:57:23 -04:00
label Make parse error suggestions verbose and fix spans 2024-07-12 03:02:57 +00:00
lang-items Always use a colon in `//@ normalize-*:` headers 2024-07-11 12:23:44 +10:00
late-bound-lifetimes
layout Always use a colon in `//@ normalize-*:` headers 2024-07-11 12:23:44 +10:00
lazy-type-alias Spell out other trait diagnostic 2024-06-12 12:34:47 +00:00
lazy-type-alias-impl-trait
let-else Make `;` suggestions inline 2024-07-12 03:22:32 +00:00
lexer Make parse error suggestions verbose and fix spans 2024-07-12 03:02:57 +00:00
lifetimes Better span for "make binding mutable" suggestion 2024-07-04 02:02:21 +00:00
limits Always use a colon in `//@ normalize-*:` headers 2024-07-11 12:23:44 +10:00
linkage-attr unreferenced-used-static: run test everywhere 2024-06-29 13:02:59 +02:00
lint Rollup merge of #127535 - spastorino:unsafe_code-unsafe_extern_blocks, r=oli-obk 2024-07-12 13:47:08 -07:00
liveness Better span for "make binding mutable" suggestion 2024-07-04 02:02:21 +00:00
loops Fix `...` in multline code-skips in suggestions 2024-06-20 04:25:17 +00:00
lowering Change wording 2024-04-29 14:53:38 +02:00
lto rewrite issue-109934-lto-debuginfo as an ui test 2024-07-09 16:52:17 -04:00
lub-glb Rollup merge of #121475 - jieyouxu:tidy-stderr-check, r=the8472,compiler-errors 2024-03-01 17:51:29 +01:00
macro_backtrace
macros Make `impl` and `!` removal suggestion `short` 2024-07-12 03:02:57 +00:00
malformed Make parse error suggestions verbose and fix spans 2024-07-12 03:02:57 +00:00
manual Make more of the test suite run on Mac Catalyst 2024-05-28 12:31:33 +02:00
marker_trait_attr Always make inductive cycles as ambig during typeck 2024-03-31 20:44:30 -04:00
match Match ergonomics 2024: test type inference 2024-07-05 11:17:49 -04:00
meta Handle a few more simple tests 2024-05-20 11:13:10 -04:00
methods Make sure trait def ids match before zipping args in note_function_argument_obligation 2024-07-15 17:53:22 -04:00
mir Always use a colon in `//@ normalize-*:` headers 2024-07-11 12:23:44 +10:00
mir-dataflow
mismatched_types Use multipart_suggestion to avoid place holder in span_to_snippet 2024-07-15 12:54:00 +00:00
missing
missing-trait-bounds Use fulfillment, not evaluate, during method probe 2024-04-21 20:10:12 -04:00
missing_non_modrs_mod
modules Move tests 2024-04-07 17:38:07 -03:00
modules_and_files_visibility
moves Rollup merge of #124599 - estebank:issue-41708, r=wesleywiser 2024-07-11 17:01:36 +02:00
mut Better span for "make binding mutable" suggestion 2024-07-04 02:02:21 +00:00
namespace Tweak output of import suggestions 2024-06-13 20:22:21 +00:00
native-library-link-flags Always use a colon in `//@ normalize-*:` headers 2024-07-11 12:23:44 +10:00
never_type Make `NEVER_TYPE_FALLBACK_FLOWING_INTO_UNSAFE` deny-by-default in e2024 2024-06-28 22:23:43 +02:00
nll More accurate mutability suggestion 2024-07-04 05:36:34 +00:00
no_std
non_modrs_mods
non_modrs_mods_and_inline_mods
not-panic
numbers-arithmetic Rollup merge of #126127 - Alexendoo:other-trait-diag, r=pnkfelix 2024-06-16 03:41:57 -04:00
numeric
object-lifetime make `type_flags(ReError) & HAS_ERROR` 2024-03-20 17:29:58 +00:00
object-safety Make parse error suggestions verbose and fix spans 2024-07-12 03:02:57 +00:00
obsolete-in-place
offset-of offset_of: allow (unstably) taking the offset of slice tail fields 2024-06-08 18:17:55 +02:00
on-unimplemented Spell out other trait diagnostic 2024-06-12 12:34:47 +00:00
operator-recovery Make parse error suggestions verbose and fix spans 2024-07-12 03:02:57 +00:00
or-patterns Make parse error suggestions verbose and fix spans 2024-07-12 03:02:57 +00:00
overloaded
packed Always use a colon in `//@ normalize-*:` headers 2024-07-11 12:23:44 +10:00
panic-handler Always use a colon in `//@ normalize-*:` headers 2024-07-11 12:23:44 +10:00
panic-runtime Enable a few tests on macOS 2024-05-28 12:31:12 +02:00
panics Always use a colon in `//@ normalize-*:` headers 2024-07-11 12:23:44 +10:00
parallel-rustc
parser Deny keyword lifetimes pre-expansion 2024-07-16 12:06:25 -04:00
patchable-function-entry Updated diagnostic messages 2024-06-27 22:24:36 +02:00
pattern Make parse error suggestions verbose and fix spans 2024-07-12 03:02:57 +00:00
pin-macro
polymorphization Mark all missing generic args as errors 2024-06-03 13:16:56 +00:00
precondition-checks Fix revisions syntax 2024-04-11 17:53:27 -04:00
print_type_sizes Error on using `yield` without also using `#[coroutine]` on the closure 2024-04-24 08:05:29 +00:00
privacy Do not ICE in privacy when type inference fails. 2024-06-17 10:09:27 +00:00
proc-macro Always use a colon in `//@ normalize-*:` headers 2024-07-11 12:23:44 +10:00
process Always use a colon in `//@ normalize-*:` headers 2024-07-11 12:23:44 +10:00
process-termination compiletest: Add a `//@ needs-threads` directive 2024-03-06 12:35:07 -08:00
ptr_ops
pub Make parse error suggestions verbose and fix spans 2024-07-12 03:02:57 +00:00
qualified
query-system
range Make parse error suggestions verbose and fix spans 2024-07-12 03:02:57 +00:00
raw-ref-op turn pointer_structural_match into a hard error 2024-05-03 15:56:59 +02:00
reachable Make type_ascribe! not a built-in 2024-03-20 22:28:56 -04:00
recursion Gate the type length limit check behind a nightly flag 2024-07-12 21:16:09 -04:00
recursion_limit
regions Do not ICE when suggesting dereferencing closure arg 2024-06-24 03:39:54 +00:00
repeat-expr Account for `let foo = expr`; to suggest `const foo: Ty = expr;` 2024-07-11 20:39:24 +00:00
repr Always use a colon in `//@ normalize-*:` headers 2024-07-11 12:23:44 +10:00
reserved
resolve Always use a colon in `//@ normalize-*:` headers 2024-07-11 12:23:44 +10:00
return Use full expr span for return suggestion on type error/ambiguity 2024-06-30 23:11:54 -04:00
rfcs Rollup merge of #120990 - chenyukang:yukang-fix-120327-dbg, r=oli-obk 2024-07-16 02:02:23 -05:00
rmeta
runtime Disable stack overflow handler tests on iOS-like platforms 2024-05-28 12:31:12 +02:00
rust-2018 Tweak output of import suggestions 2024-06-13 20:22:21 +00:00
rust-2021 Detect unused structs which implement private traits 2024-05-23 09:07:59 +08:00
rust-2024 Add parse fail test using safe trait/impl trait 2024-07-03 12:08:56 -03:00
rustc-env note value of RUST_MIN_STACK and explain unsetting 2024-05-19 20:09:03 -07:00
rustdoc Update ui tests 2024-02-29 14:43:43 +01:00
sanitizer Undo accidental change to tests/ui/sanitizer/thread.rs 2024-05-20 11:13:33 -04:00
self Deny keyword lifetimes pre-expansion 2024-07-16 12:06:25 -04:00
sepcomp
shadowed
shell-argfiles compiletest: add enable-by-default check-cfg 2024-05-04 11:30:38 +02:00
simd Auto merge of #126171 - RalfJung:simd_bitmask_multibyte, r=workingjubilee 2024-07-05 01:58:22 +00:00
single-use-lifetime Add test to check unused_lifetimes don't duplicate "parameter is never used" error 2024-03-09 18:24:45 +00:00
sized remove unnecessary ignore-endian-big from stack-overflow-trait-infer test 2024-07-02 16:31:40 +02:00
span Use verbose style for argument removal suggestion 2024-07-05 19:40:09 +00:00
specialization bless tests part 1 2024-06-28 10:57:35 +00:00
stability-attribute Migrate tests to use `-Znext-solver` 2024-06-30 17:08:45 +00:00
stable-mir-print Add needs-unwind annotations to a couple of tests 2024-03-25 14:19:07 +00:00
stack-protector
static Automatically taint InferCtxt when errors are emitted 2024-06-26 16:01:45 +00:00
statics Auto merge of #127311 - oli-obk:do_not_count_errors, r=compiler-errors 2024-07-11 11:51:33 +00:00
stats ast: Standardize visiting order 2024-06-26 17:41:24 +03:00
std Move various stdlib tests to library/std/tests 2024-04-28 16:10:12 -04:00
stdlib-unit-tests Move various stdlib tests to library/std/tests 2024-04-28 16:10:12 -04:00
str tests: remove some trailing ws 2024-04-27 10:54:31 +03:00
structs Make parse error suggestions verbose and fix spans 2024-07-12 03:02:57 +00:00
structs-enums Detect pub structs never constructed and unused associated constants in traits 2024-06-05 23:20:09 +08:00
suggestions Make `;` suggestions inline 2024-07-12 03:22:32 +00:00
svh
symbol-mangling-version
symbol-names Enable v0 mangling tests and add checks for `f16`/`f128` 2024-05-14 06:16:48 -04:00
sync Add manual Sync impl for ReentrantLockGuard 2024-05-24 17:44:37 -07:00
target-feature RFC 2383: Stabilize `lint_reasons` 🎉 2024-06-25 17:22:22 +02:00
test-attrs Always use a colon in `//@ normalize-*:` headers 2024-07-11 12:23:44 +10:00
thir-print report pat no field error no recoverd struct variant 2024-07-11 00:18:47 +08:00
thread-local compiletest: Add a `//@ needs-threads` directive 2024-03-06 12:35:07 -08:00
threads-sendsync delete UI tests that only check internal implementation details of thread-locals 2024-05-23 13:44:56 +02:00
tool-attributes Fix diagnostic and add a test for it 2024-07-10 18:56:06 -04:00
track-diagnostics Always use a colon in `//@ normalize-*:` headers 2024-07-11 12:23:44 +10:00
trait-bounds Rollup merge of #122195 - jieyouxu:impl-return-note, r=fmease 2024-03-22 20:31:28 +01:00
traits Fix the issue of invalid suggestion for a reference of iterator 2024-07-16 22:01:55 +08:00
transmutability Rollup merge of #126620 - oli-obk:taint_errors, r=fee1-dead 2024-06-20 07:52:43 +02:00
transmute Always use a colon in `//@ normalize-*:` headers 2024-07-11 12:23:44 +10:00
treat-err-as-bug Always use a colon in `//@ normalize-*:` headers 2024-07-11 12:23:44 +10:00
trivial-bounds Suggest `.clone()` in some move errors 2024-04-11 16:41:41 +00:00
try-block Use shorter span for float literal suggestion 2024-07-04 05:19:35 +00:00
try-trait Fix `...` in multline code-skips in suggestions 2024-06-20 04:25:17 +00:00
tuple Use verbose style for argument removal suggestion 2024-07-05 19:40:09 +00:00
type Rollup merge of #127407 - estebank:parser-suggestions, r=oli-obk 2024-07-15 21:11:48 +02:00
type-alias
type-alias-enum-variants Update documentation 2024-03-20 09:49:57 +00:00
type-alias-impl-trait Auto merge of #127172 - compiler-errors:full-can_eq-everywhere, r=lcnr 2024-07-07 23:03:48 +00:00
type-inference Use `fn` ptr signature instead of `{closure@..}` in infer error 2024-04-10 00:41:27 +00:00
typeck Make parse error suggestions verbose and fix spans 2024-07-12 03:02:57 +00:00
typeof Account for `let foo = expr`; to suggest `const foo: Ty = expr;` 2024-07-11 20:39:24 +00:00
ufcs Use verbose suggestion for changing arg type 2024-07-05 20:58:33 +00:00
unboxed-closures More accurate mutability suggestion 2024-07-04 05:36:34 +00:00
underscore-imports
underscore-lifetime make `type_flags(ReError) & HAS_ERROR` 2024-03-20 17:29:58 +00:00
uniform-paths
uninhabited Handle more cases of value suggestions 2024-04-10 20:36:14 +00:00
union Mention when type parameter could be `Clone` 2024-04-24 22:21:15 +00:00
unknown-unstable-lints
unop Move 100 entries from tests/ui into subdirs 2024-05-20 19:55:59 -07:00
unpretty Always use a colon in `//@ normalize-*:` headers 2024-07-11 12:23:44 +10:00
unresolved
unsafe Tweak raw-pointer field access and array indexing suggestions 2024-07-04 06:06:33 +00:00
unsized [ACP 362] genericize `ptr::from_raw_parts` 2024-05-29 09:34:16 -07:00
unsized-locals add issue numbers via // issue: rust-lang/rust#ISSUE_NUM directive 2024-03-24 09:34:11 +01:00
unused-crate-deps Spruce up the diagnostics of some early lints 2024-06-03 07:25:32 +02:00
unwind-abis Remove c_unwind from tests and fix tests 2024-06-19 13:54:55 +01:00
use Make early lints translatable 2024-05-21 20:16:39 +00:00
variance tests: remove some trailing ws 2024-04-27 10:54:31 +03:00
variants
version Fix test problems discovered by the revision check 2024-05-09 14:47:09 +10:00
warnings tests/ui: Add a directory for warnings, add a test 2024-03-22 11:27:34 -04:00
wasm
wf Taint infcx when reporting errors 2024-06-19 04:41:56 +00:00
where-clauses Taint infcx when reporting errors 2024-06-19 04:41:56 +00:00
while
windows-subsystem rewrite test-harness to rmake 2024-07-02 11:37:59 -04:00
zero-sized
.gitattributes
README.md
alias-uninit-value.rs
allow-non-lint-warnings.rs Make `run-make/allow-non-lint-warnings-cmdline` into a ui test 2024-06-13 12:55:55 +02:00
anonymous-higher-ranked-lifetime.rs
anonymous-higher-ranked-lifetime.stderr Remove `Partial/Ord` from `BoundRegion` 2024-03-27 14:02:16 +00:00
artificial-block.rs
as-precedence.rs
assign-assign.rs
assign-imm-local-twice.rs Better span for "make binding mutable" suggestion 2024-07-04 02:02:21 +00:00
assign-imm-local-twice.stderr Better span for "make binding mutable" suggestion 2024-07-04 02:02:21 +00:00
assoc-lang-items.rs
assoc-lang-items.stderr consistency rename: language item -> lang item 2024-04-17 13:00:43 +02:00
assoc-oddities-3.rs
associated-path-shl.rs
associated-path-shl.stderr
atomic-from-mut-not-available.rs
atomic-from-mut-not-available.stderr
attempted-access-non-fatal.rs
attempted-access-non-fatal.stderr
attr-bad-crate-attr.rs
attr-bad-crate-attr.stderr
attr-shebang.rs
attr-start.rs
attr-usage-inline.rs
attr-usage-inline.stderr
attrs-resolution-errors.rs
attrs-resolution-errors.stderr
attrs-resolution.rs
augmented-assignments-feature-gate-cross.rs
augmented-assignments-rpass.rs
augmented-assignments.rs Account for assign binops in clone suggestions 2024-04-11 16:41:41 +00:00
augmented-assignments.stderr Account for assign binops in clone suggestions 2024-04-11 16:41:41 +00:00
auto-instantiate.rs
auto-ref-slice-plus-ref.rs
auto-ref-slice-plus-ref.stderr
autoderef-full-lval.rs
autoderef-full-lval.stderr Change E0369 diagnostic give note information for foreign items. 2024-06-25 10:00:30 +08:00
bare-fn-implements-fn-mut.rs
bare-static-string.rs
big-literals.rs
bind-by-move.rs
bitwise.rs
bogus-tag.rs
bogus-tag.stderr
borrow-by-val-method-receiver.rs
bounds-lifetime.rs
bounds-lifetime.stderr
break-diverging-value.rs
break-diverging-value.stderr
builtin-clone-unwind.rs
can-copy-pod.rs
cancel-clean-via-immediate-rvalue-ref.rs
cannot-mutate-captured-non-mut-var.rs
cannot-mutate-captured-non-mut-var.stderr More accurate mutability suggestion 2024-07-04 05:36:34 +00:00
capture1.rs
capture1.stderr
catch-unwind-bang.rs
cenum_impl_drop_cast.rs
cenum_impl_drop_cast.stderr
cfguard-run.rs
char.rs
class-cast-to-trait.rs
class-cast-to-trait.stderr
class-method-missing.rs
class-method-missing.stderr
cleanup-rvalue-for-scope.rs
cleanup-rvalue-scopes-cf.rs
cleanup-rvalue-scopes-cf.stderr
cleanup-rvalue-scopes.rs
cleanup-rvalue-temp-during-incomplete-alloc.rs
cleanup-shortcircuit.rs
close-over-big-then-small-data.rs
command-line-diagnostics.rs
command-line-diagnostics.stderr Better span for "make binding mutable" suggestion 2024-07-04 02:02:21 +00:00
complex.rs
conservative_impl_trait.rs
conservative_impl_trait.stderr
constructor-lifetime-args.rs
constructor-lifetime-args.stderr
copy-a-resource.rs
copy-a-resource.stderr
crate-leading-sep.rs
crate-method-reexport-grrrrrrr.rs
crate-name-attr-used.rs
crate-name-mismatch.rs
crate-name-mismatch.stderr
custom-attribute-multisegment.rs
custom-attribute-multisegment.stderr
custom-test-frameworks-simple.rs
custom_attribute.rs
custom_attribute.stderr
deduplicate-diagnostics.deduplicate.stderr
deduplicate-diagnostics.duplicate.stderr
deduplicate-diagnostics.rs
deep.rs
default-method-parsing.rs
default-method-simple.rs
defaults-well-formedness.rs
deprecation-in-force-unstable.rs
deref-non-pointer.rs
deref-non-pointer.stderr
deref-rc.rs
deref.rs
derive-uninhabited-enum-38885.rs
derive-uninhabited-enum-38885.stderr
destructure-trait-ref.rs
destructure-trait-ref.stderr
diverging-fallback-method-chain.rs
diverging-fallback-option.rs
diverging-fn-tail-35849.rs
diverging-fn-tail-35849.stderr
double-ref.rs
double-type-import.rs
double-type-import.stderr
dupe-first-attr.rs
duplicate_entry_error.rs Always use a colon in `//@ normalize-*:` headers 2024-07-11 12:23:44 +10:00
duplicate_entry_error.stderr Rename std::panic::PanicInfo to PanicHookInfo. 2024-06-11 15:47:00 +02:00
early-ret-binop-add.rs
elide-errors-on-mismatched-tuple.rs
elide-errors-on-mismatched-tuple.stderr
elided-test.rs
elided-test.stderr
else-if.rs
empty-allocation-non-null.rs
empty-allocation-rvalue-non-null.rs
empty-type-parameter-list.rs
empty-type-parameter-list.stderr
error-festival.rs
error-festival.stderr
error-should-say-copy-not-pod.rs
error-should-say-copy-not-pod.stderr
exclusive-drop-and-copy.rs
exclusive-drop-and-copy.stderr
explain.rs
explain.stdout
explicit-i-suffix.rs
explore-issue-38412.rs
explore-issue-38412.stderr
ext-expand-inner-exprs.rs
ext-nonexistent.rs
ext-nonexistent.stderr
fact.rs
fail-simple.rs
fail-simple.stderr
filter-block-view-items.rs Unify all the always-false cfgs under the `FALSE` cfg 2024-04-07 01:16:45 +02:00
format-no-std.rs
fun-indirect-call.rs
future-incompatible-lint-group.rs Update ui tests 2024-02-29 14:43:43 +01:00
future-incompatible-lint-group.stderr Update ui tests 2024-02-29 14:43:43 +01:00
global-scope.rs
hello.rs
illegal-ufcs-drop.fixed
illegal-ufcs-drop.rs
illegal-ufcs-drop.stderr
impl-inherent-non-conflict.rs
impl-not-adjacent-to-type.rs Allow unused fields in some tests 2024-03-12 10:59:41 +01:00
impl-privacy-xc-1.rs
impl-unused-rps-in-assoc-type.rs
impl-unused-rps-in-assoc-type.stderr
impl-unused-tps-inherent.rs
impl-unused-tps-inherent.stderr
impl-unused-tps.rs
impl-unused-tps.stderr Merge `check_mod_impl_wf` and `check_mod_type_wf` 2024-03-07 06:27:09 +00:00
implicit-method-bind.rs
implicit-method-bind.stderr
inline-disallow-on-variant.rs
inline-disallow-on-variant.stderr
inlined-main.rs
inner-attrs-on-impl.rs Unify all the always-false cfgs under the `FALSE` cfg 2024-04-07 01:16:45 +02:00
inner-module.rs
inner-static-type-parameter.rs
inner-static-type-parameter.stderr
inner-static.rs
integral-indexing.rs
integral-indexing.stderr
integral-variable-unification-error.rs
integral-variable-unification-error.stderr
invalid_crate_type_syntax.rs
invalid_crate_type_syntax.stderr
invalid_dispatch_from_dyn_impls.rs
invalid_dispatch_from_dyn_impls.stderr
issue-11881.rs
issue-13560.rs
issue-15924.rs
issue-16822.rs
issue-18502.rs
issue-24106.rs
issue-76387-llvm-miscompile.rs
issues-71798.rs
issues-71798.stderr Use root obligation on E0277 for some cases 2024-03-03 18:53:35 +00:00
item-name-overload.rs
kinds-in-metadata.rs
kinds-of-primitive-impl.rs
kinds-of-primitive-impl.stderr
last-use-in-block.rs
last-use-in-cap-clause.rs
last-use-is-capture.rs
lazy-and-or.rs
lexical-scopes.rs
lexical-scopes.stderr
lexical-scoping.rs
link-section.rs Make more of the test suite run on Mac Catalyst 2024-05-28 12:31:33 +02:00
list.rs
log-err-phi.rs
log-knows-the-names-of-variants.rs
log-poly.rs
logging-only-prints-once.rs compiletest: Add a `//@ needs-threads` directive 2024-03-06 12:35:07 -08:00
loud_ui.rs
max-min-classes.rs
maximal_mir_to_hir_coverage.rs
maybe-bounds.rs
maybe-bounds.stderr
method-output-diff-issue-127263.rs show unit output when there is only output diff in diagnostics 2024-07-06 21:00:30 +08:00
method-output-diff-issue-127263.stderr show unit output when there is only output diff in diagnostics 2024-07-06 21:00:30 +08:00
minus-string.rs
minus-string.stderr Change E0369 diagnostic give note information for foreign items. 2024-06-25 10:00:30 +08:00
missing_debug_impls.rs
missing_debug_impls.stderr
mod-subitem-as-enum-variant.rs
mod-subitem-as-enum-variant.stderr
monomorphize-abi-alignment.rs
msvc-data-only.rs
msvc-opt-minsize.rs rewrite test-harness to rmake 2024-07-02 11:37:59 -04:00
multibyte.rs
multiline-comment.rs
mut-function-arguments.rs
mutual-recursion-group.rs
myriad-closures.rs
nested-block-comment.rs
nested-cfg-attrs.rs Unify all the always-false cfgs under the `FALSE` cfg 2024-04-07 01:16:45 +02:00
nested-cfg-attrs.stderr
nested-class.rs
nested-ty-params.rs
nested-ty-params.stderr
new-impl-syntax.rs
new-import-syntax.rs
new-style-constants.rs
new-unicode-escapes.rs
newlambdas.rs
newtype-polymorphic.rs
newtype.rs
no-capture-arc.rs
no-capture-arc.stderr
no-core-1.rs
no-core-2.rs
no-link-unknown-crate.rs
no-link-unknown-crate.stderr
no-reuse-move-arc.rs
no-reuse-move-arc.stderr
no-send-res-ports.rs
no-send-res-ports.stderr
no-warn-on-field-replace-issue-34101.rs
no_crate_type.rs
no_crate_type.stderr
no_send-enum.rs
no_send-enum.stderr
no_send-rc.rs
no_send-rc.stderr
no_share-enum.rs
no_share-enum.stderr
no_share-struct.rs
no_share-struct.stderr
noexporttypeexe.rs
noexporttypeexe.stderr
non-constant-expr-for-arr-len.rs
non-constant-expr-for-arr-len.stderr
non-copyable-void.rs Use the rustc_private libc less in tests 2024-04-15 08:54:11 -04:00
non-copyable-void.stderr Use the rustc_private libc less in tests 2024-04-15 08:54:11 -04:00
non-fmt-panic.fixed
non-fmt-panic.rs
non-fmt-panic.stderr
noncopyable-class.rs
noncopyable-class.stderr
nonscalar-cast.fixed
nonscalar-cast.rs
nonscalar-cast.stderr
not-clone-closure.rs
not-clone-closure.stderr
not-copy-closure.rs
not-copy-closure.stderr
not-enough-arguments.rs
not-enough-arguments.stderr
nul-characters.rs
nullable-pointer-iotareduction.rs
nullable-pointer-size.rs
object-pointer-types.rs
object-pointer-types.stderr
objects-coerce-freeze-borrored.rs
occurs-check-2.rs
occurs-check-2.stderr
occurs-check-3.rs
occurs-check-3.stderr
occurs-check.rs
occurs-check.stderr
once-cant-call-twice-on-heap.rs
once-cant-call-twice-on-heap.stderr Better account for `FnOnce` in move errors 2024-04-11 16:41:42 +00:00
oom_unwind.rs
op-assign-builtins-by-ref.rs
opeq.rs
opt-in-copy.rs
opt-in-copy.stderr
optimization-remark.rs
out-pointer-aliasing.rs
output-slot-variants.rs
over-constrained-vregs.rs
panic-while-printing.rs
panic_implementation-closures.rs
paren-span.rs
paren-span.stderr
partialeq_help.rs
partialeq_help.stderr
path-lookahead.fixed
path-lookahead.rs
path-lookahead.stderr
path.rs
paths-containing-nul.rs Update test directives for `wasm32-wasip1` 2024-03-11 09:36:35 -07:00
phantom-auto-trait.rs
phantom-auto-trait.stderr
point-to-type-err-cause-on-impl-trait-return-2.rs
point-to-type-err-cause-on-impl-trait-return-2.stderr
pptypedef.rs
pptypedef.stderr
primitive-binop-lhs-mut.rs
print-stdout-eprint-stderr.rs Update test directives for `wasm32-wasip1` 2024-03-11 09:36:35 -07:00
project-cache-issue-31849.rs
ptr-coercion-rpass.rs
ptr-coercion.rs
ptr-coercion.stderr
query-visibility.rs
raw-str.rs
realloc-16687.rs
reassign-ref-mut.rs
reassign-ref-mut.stderr
reexport-test-harness-main.rs
removing-extern-crate.fixed
removing-extern-crate.rs
removing-extern-crate.stderr
resource-assign-is-not-copy.rs
resource-destruct.rs
rustc-error.rs
rustc-error.stderr
seq-args.rs
seq-args.stderr
shadow-bool.rs
shadowed-use-visibility.rs
short-error-format.rs
short-error-format.stderr
sized-borrowed-pointer.rs
sized-cycle-note.rs
sized-cycle-note.stderr
sized-owned-pointer.rs
sse2.rs `sudo CI=green` && Review changes <3 2024-06-25 18:06:22 +02:00
stable-addr-of.rs
std-uncopyable-atomics.rs
std-uncopyable-atomics.stderr
stdio-is-blocking.rs Update test directives for `wasm32-wasip1` 2024-03-11 09:36:35 -07:00
string-box-error.rs
struct-ctor-mangling.rs
super-at-top-level.rs
super-at-top-level.stderr
super.rs
svh-add-nothing.rs
swap-1.rs
swap-overlapping.rs
switched-expectations.rs
switched-expectations.stderr
syntax-extension-minor.rs
tag-type-args.rs
tag-type-args.stderr Merge collect_mod_item_types query into check_well_formed 2024-03-07 14:26:31 +00:00
tag-variant-cast-non-nullary.fixed
tag-variant-cast-non-nullary.rs
tag-variant-cast-non-nullary.stderr
tail-call-arg-leak.rs
tail-cps.rs
tail-typeck.rs
tail-typeck.stderr
trailing-comma.rs
trait-method-number-parameters.rs
trait-method-number-parameters.stderr
transmute-equal-assoc-types.rs
transmute-non-immediate-to-immediate.rs
trivial_casts-rpass.rs
trivial_casts-rpass.stderr
try-from-int-error-partial-eq.rs
try-operator-hygiene.rs
try-operator.rs
tydesc-name.rs
type-id-higher-rank-2.rs
type-namespace.rs
type-param-constraints.rs
type-param.rs
type-ptr.rs
type-use-i1-versus-i8.rs
type_length_limit.polonius.stderr
type_length_limit.rs Gate the type length limit check behind a nightly flag 2024-07-12 21:16:09 -04:00
type_length_limit.stderr Re-implement a type-size based limit 2024-07-02 15:48:48 -04:00
typeid-intrinsic.rs
typestate-multi-decl.rs
unconstrained-none.rs
unconstrained-none.stderr
unconstrained-ref.rs
unconstrained-ref.stderr
underscore-ident-matcher.rs
underscore-ident-matcher.stderr
underscore-lifetimes.rs
underscore-method-after-integer.rs
unevaluated_fixed_size_array_len.rs
unevaluated_fixed_size_array_len.stderr
uninit-empty-types.rs
unit.rs
unknown-language-item.rs consistency rename: language item -> lang item 2024-04-17 13:00:43 +02:00
unknown-language-item.stderr consistency rename: language item -> lang item 2024-04-17 13:00:43 +02:00
unknown-llvm-arg.rs Always use a colon in `//@ normalize-*:` headers 2024-07-11 12:23:44 +10:00
unknown-llvm-arg.stderr
unnamed_argument_mode.rs
unreachable-code-1.rs
unreachable-code.rs
unsigned-literal-negation.rs
unsigned-literal-negation.stderr Tweak `-1 as usize` suggestion 2024-07-05 00:52:01 +00:00
unused-move-capture.rs
unused-move.rs
unwind-no-uwtable.rs
use-import-export.rs
use-keyword-2.rs
use-module-level-int-consts.rs
use-nested-groups.rs
used.rs
used.stderr Show `used attribute`'s kind for user when find it isn't applied to a `static` variable. 2024-06-29 19:39:09 +08:00
using-target-feature-unstable.rs
usize-generic-argument-parent.rs
usize-generic-argument-parent.stderr
utf8-bom.rs
utf8_idents.rs
wait-forked-but-failed-child.rs Handle a few more simple tests 2024-05-20 11:13:10 -04:00
walk-struct-literal-with.rs
walk-struct-literal-with.stderr
weak-new-uninhabited-issue-48493.rs
weird-exit-code.rs
weird-exprs.rs Error on using `yield` without also using `#[coroutine]` on the closure 2024-04-24 08:05:29 +00:00
write-fmt-errors.rs io::Write::write_fmt: panic if the formatter fails when the stream does not fail 2024-05-11 15:13:18 +02:00
writing-to-immutable-vec.rs
writing-to-immutable-vec.stderr
wrong-hashset-issue-42918.rs

README.md

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>.