rust/tests/ui
bors f5cd2c5888 Auto merge of #127117 - Urgau:non_local_def-syntactic, r=BoxyUwU
Rework `non_local_definitions` lint to only use a syntactic heuristic

This PR reworks the `non_local_definitions` lint to only use a syntactic heuristic, i.e. not use a type-system logic for whenever an `impl` is local or not.

Instead the new logic wanted by T-lang in https://github.com/rust-lang/rust/issues/126768#issuecomment-2192634762, which is to consider every paths in `Self` and `Trait` and to no longer use the type-system inference trick.

`@rustbot` labels +L-non_local_definitions
Fixes #126768
2024-09-24 03:43:01 +00:00
..
abi Auto merge of #124895 - obeis:static-mut-hidden-ref, r=compiler-errors 2024-09-20 17:25:34 +00:00
alloc-error
allocator
annotate-snippet
anon-params More accurate span for anonymous argument suggestion 2024-07-18 00:19:27 +00:00
argfile compiletest: add enable-by-default check-cfg 2024-05-04 11:30:38 +02:00
argument-suggestions Revert suggestion verbosity change 2024-07-22 22:51:53 +00:00
array-slice-vec Update tests for hidden references to mutable static 2024-09-13 14:10:56 +03:00
asm Update the minimum external LLVM to 18 2024-09-18 13:53:31 -07:00
associated-consts Relate receiver invariantly in method probe for Mode::Path 2024-09-16 10:55:07 -04:00
associated-inherent-types Get rid of predicates_defined_on 2024-08-24 18:25:41 -04:00
associated-item
associated-type-bounds No longer mark RTN as incomplete 2024-09-22 10:46:59 -04:00
associated-types Revert 'Stabilize -Znext-solver=coherence' 2024-09-11 17:57:04 -04:00
async-await No longer mark RTN as incomplete 2024-09-22 10:46:59 -04:00
attributes remove #[cmse_nonsecure_entry] 2024-09-21 13:05:21 +02:00
auto-traits Revert 'Stabilize -Znext-solver=coherence' 2024-09-11 17:57:04 -04:00
autoref-autoderef
auxiliary Move 100 entries from tests/ui into subdirs 2024-05-20 19:55:59 -07:00
backtrace the output in stderr expects panic-unwind 2024-07-30 08:16:47 +02:00
bench
binding Update tests for hidden references to mutable static 2024-09-13 14:10:56 +03:00
binop Don't call const normalize in error reporting 2024-09-22 13:55:06 -04:00
blind Accurate use rename suggestion span 2024-07-18 00:00:04 +00:00
block-result
borrowck No longer mark RTN as incomplete 2024-09-22 10:46:59 -04:00
box Mention when type parameter could be Clone 2024-04-24 22:21:15 +00:00
btreemap Peel off explicit (or implicit) deref before suggesting clone on move error in borrowck 2024-07-26 14:41:56 -04:00
builtin-superkinds
c-variadic Use ordinal number in argument error 2024-07-14 13:50:09 +09:00
cast Arbitrary self types v2: pointers feature gate. 2024-08-27 17:32:35 +00:00
cfg Fix feature name in test 2024-09-20 09:18:47 +00:00
check-cfg Improve handling of raw-idents in check-cfg 2024-09-18 11:07:32 +02:00
closure_context
closure-expected-type
closures Don't suggest adding return type for closures with default return type 2024-08-28 12:54:39 +08:00
cmse-nonsecure disallow cmse ABIs on unsupported platforms 2024-09-21 13:05:23 +02:00
codegen Add a bunch of tests for #107975 2024-07-19 23:27:42 +03:00
codemap_tests Update tests 2024-08-10 12:07:17 +02:00
coercion Relate receiver invariantly in method probe for Mode::Path 2024-09-16 10:55:07 -04:00
coherence Rollup merge of #130311 - heiseish:issue-70849-fix, r=fmease 2024-09-14 20:22:41 +10:00
coinduction
command
compare-method show unit output when there is only output diff in diagnostics 2024-07-06 21:00:30 +08:00
compiletest-self-test Update expectations 2024-08-11 09:58:11 +01:00
conditional-compilation Return earlier in some cases in collect_token. 2024-08-23 14:40:08 +10:00
confuse-field-and-method
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
const-generics Rollup merge of #130714 - compiler-errors:try-structurally-resolve-const, r=BoxyUwU 2024-09-23 06:45:36 +02:00
const-ptr on a signed deref check, mention the right pointer in the error 2024-08-01 14:25:19 +02:00
consts Don't call const normalize in error reporting 2024-09-22 13:55:06 -04:00
coroutine Update tests for hidden references to mutable static 2024-09-13 14:10:56 +03:00
coverage-attr Make parse error suggestions verbose and fix spans 2024-07-12 03:02:57 +00:00
crate-loading
cross
cross-crate Closures are recursively reachable 2024-06-04 22:50:35 +02:00
custom_test_frameworks
cycle-trait
debuginfo TL note: current means target 2024-09-20 10:02:14 -07:00
definition-reachable
delegation Auto merge of #126161 - Bryanskiy:delegation-generics-4, r=petrochenkov 2024-09-07 18:12:05 +00: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 #127907 - RalfJung:byte_slice_in_packed_struct_with_derive, r=nnethercote 2024-08-05 05:40:19 +02:00
deriving derive(SmartPointer): assume pointee from the single generic and better error messages 2024-08-29 01:39:52 +08:00
dest-prop
destructuring-assignment
diagnostic_namespace Add test 2024-08-09 22:02:23 -04:00
diagnostic-flags tests: remove few ignore-stage2 2024-04-25 10:48:11 +03:00
diagnostic-width
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 Update tests for hidden references to mutable static 2024-09-13 14:10:56 +03:00
drop-bounds
dropck Rollup merge of #128438 - Bryanskiy:empty-array-dropck, r=lcnr 2024-07-31 23:20:12 +02:00
dst Detect * operator on !Sized expression 2024-08-08 17:35:40 +00:00
duplicate Explicitly mark a hack as a HACK and elaborate its comment 2024-09-18 19:36:44 +02:00
dyn-drop
dyn-keyword Rollup merge of #127692 - veera-sivarajan:bugfix-125139, r=estebank 2024-09-03 19:13:23 +02: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 Suggest the struct variant pattern syntax on usage of unit variant pattern for a struct variant 2024-08-28 22:55:57 +09:00
entry-point
enum More accurate suggestions when writing wrong style of enum variant literal 2024-07-18 18:20:35 +00:00
enum-discriminant Update tests 2024-08-10 12:07:17 +02:00
env-macro
error-codes Introduce distinct error codes for precise capturing 2024-09-16 10:56:22 -04:00
error-emitter tests: remove some trailing ws 2024-04-27 10:54:31 +03:00
errors rewrite and rename issue-107094 to rmake 2024-07-22 10:12:00 -04:00
explicit
explicit-tail-calls doc fixups from review 2024-07-07 18:16:38 +02:00
expr More accurate suggestions when writing wrong style of enum variant literal 2024-07-18 18:20:35 +00:00
extern TL note: current means target 2024-09-20 10:02:14 -07: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 add unqualified_local_imports lint 2024-09-23 11:57:28 +02:00
ffi-attrs Move 100 entries from tests/ui into subdirs 2024-05-20 19:55:59 -07:00
float move a test to a better location 2024-09-12 08:08:38 +02:00
fmt fmt-debug option 2024-08-28 23:32:40 +01:00
fn Enforce supertrait outlives obligations hold when confirming impl 2024-08-05 09:55:14 -04: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 Update tests for hidden references to mutable static 2024-09-13 14:10:56 +03:00
foreign Don't ICE on Fn trait error for foreign fn 2024-08-16 14:10:06 -04: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 Update tests for hidden references to mutable static 2024-09-13 14:10:56 +03:00
functions-closures
generic-associated-types Pretty-print own args of existential projections 2024-08-22 06:22:36 +02:00
generic-const-items Split part of adt_const_params into unsized_const_params 2024-07-17 11:01:29 +01:00
generics elided_named_lifetimes: bless & add tests 2024-08-31 15:35:42 +03:00
half-open-range-patterns Add suggestions for expressions in patterns 2024-09-18 20:38:43 +02:00
hashmap
hello_world
higher-ranked Revert 'Stabilize -Znext-solver=coherence' 2024-09-11 17:57:04 -04:00
hygiene Bless tests 2024-08-02 11:34:54 +00:00
illegal-sized-bound
impl-header-lifetime-elision And more general error 2024-05-24 11:20:33 -04:00
impl-trait Don't call const normalize in error reporting 2024-09-22 13:55:06 -04:00
implied-bounds Adjust tests 2024-09-05 06:37:38 -04:00
imports skip updating when external binding is existed 2024-08-20 20:34:13 +08:00
include-macros
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 Relate receiver invariantly in method probe for Mode::Path 2024-09-16 10:55:07 -04:00
infinite Automatically taint InferCtxt when errors are emitted 2024-06-26 16:01:45 +00:00
inherent-impls-overlap-check
inline-const stabilize const_mut_refs 2024-09-15 09:51:32 +02:00
instrument-coverage Update the minimum external LLVM to 18 2024-09-18 13:53:31 -07:00
instrument-xray
interior-mutability
internal stabilize const_fn_floating_point_arithmetic 2024-08-22 08:25:54 +02:00
internal-lints Use the rustc_private libc less in tests 2024-04-15 08:54:11 -04:00
intrinsics interpret: add missing alignment check in raw_eq 2024-08-27 19:29:52 +02:00
invalid
invalid-compile-flags Fix #128930: Print documentation of CLI options missing their arg 2024-08-11 09:10:30 +01: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 Don't call const normalize in error reporting 2024-09-22 13:55:06 -04:00
iterators Don't call const normalize in error reporting 2024-09-22 13:55:06 -04:00
json On short error format, append primary span label to message 2024-08-06 04:08:10 +00:00
keyword Structured suggestion for extern crate foo when foo isn't resolved in import 2024-07-29 23:49:51 +00:00
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 Let InstCombine remove Clone shims inside Clone shims 2024-07-25 15:14:42 -04:00
late-bound-lifetimes Revert suggestion verbosity change 2024-07-22 22:51:53 +00:00
layout TL note: current means target 2024-09-20 10:02:14 -07:00
lazy-type-alias Don't call const normalize in error reporting 2024-09-22 13:55:06 -04:00
lazy-type-alias-impl-trait
let-else Make ; suggestions inline 2024-07-12 03:22:32 +00:00
lexer Reserve prefix lifetimes too 2024-09-06 10:32:48 -04:00
lifetimes Re-enable ConstArgKind::Path lowering by default 2024-09-12 13:56:01 -04:00
limits TL note: current means target 2024-09-20 10:02:14 -07:00
linkage-attr Update tests for hidden references to mutable static 2024-09-13 14:10:56 +03:00
lint Auto merge of #127117 - Urgau:non_local_def-syntactic, r=BoxyUwU 2024-09-24 03:43:01 +00: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 Update tests for hidden references to mutable static 2024-09-13 14:10:56 +03:00
lub-glb
macro_backtrace
macros Rollup merge of #130551 - nnethercote:fix-break-last-token, r=petrochenkov 2024-09-23 07:54:44 -07:00
malformed Be more accurate about calculating display_col from a BytePos 2024-07-18 20:08:38 +00:00
manual Make more of the test suite run on Mac Catalyst 2024-05-28 12:31:33 +02:00
marker_trait_attr
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 Auto merge of #124895 - obeis:static-mut-hidden-ref, r=compiler-errors 2024-09-20 17:25:34 +00:00
mir Update tests for hidden references to mutable static 2024-09-13 14:10:56 +03:00
mir-dataflow
mismatched_types Don't call const normalize in error reporting 2024-09-22 13:55:06 -04:00
missing
missing_non_modrs_mod
missing-trait-bounds Use fulfillment, not evaluate, during method probe 2024-04-21 20:10:12 -04:00
modules Move tests 2024-04-07 17:38:07 -03:00
modules_and_files_visibility
moves Peel off explicit (or implicit) deref before suggesting clone on move error in borrowck 2024-07-26 14:41:56 -04: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 Don't call const normalize in error reporting 2024-09-22 13:55:06 -04:00
nll Update tests for hidden references to mutable static 2024-09-13 14:10:56 +03:00
no_std
non_modrs_mods
non_modrs_mods_and_inline_mods
not-panic
numbers-arithmetic Don't call const normalize in error reporting 2024-09-22 13:55:06 -04:00
numeric Tweak "field not found" suggestion when giving struct literal for tuple struct type 2024-07-18 18:20:35 +00:00
object-lifetime Hack around a conflict with clippy::needless_lifetimes 2024-09-06 17:06:35 +03:00
object-safety Rollup merge of #127692 - veera-sivarajan:bugfix-125139, r=estebank 2024-09-03 19:13:23 +02:00
obsolete-in-place
offset-of Fix Parser::break_up_float's right span 2024-09-14 12:41:25 +02:00
on-unimplemented Don't call const normalize in error reporting 2024-09-22 13:55:06 -04:00
operator-recovery Make parse error suggestions verbose and fix spans 2024-07-12 03:02:57 +00:00
or-patterns Reword the "unreachable pattern" explanations 2024-08-19 21:39:57 +02:00
overloaded
packed stabilize raw_ref_op 2024-08-18 19:46:53 +02: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 Bless tests 2024-08-02 11:34:54 +00:00
parallel-rustc
parser Add more test cases for block-no-opening-brace 2024-09-22 23:29:25 +03:00
patchable-function-entry Updated diagnostic messages 2024-06-27 22:24:36 +02:00
pattern Add a machine-applicable suggestion to "unreachable pattern" 2024-09-13 21:01:29 +02:00
pin-macro
polymorphization Don't inline tainted MIR bodies 2024-08-08 20:53:25 -04: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 Bless tests due to new method suggestions. 2024-09-07 21:06:49 +07:00
proc-macro Avoid double-handling of attributes in collect_tokens. 2024-08-24 06:57:47 +10:00
process Bless tests 2024-08-02 11:34:54 +00:00
process-termination
ptr_ops
pub Bless test fallout 2024-08-03 07:57:31 -04:00
qualified
query-system
range Make parse error suggestions verbose and fix spans 2024-07-12 03:02:57 +00:00
raw-ref-op stabilize raw_ref_op 2024-08-18 19:46:53 +02:00
reachable Add a machine-applicable suggestion to "unreachable pattern" 2024-09-13 21:01:29 +02:00
recursion Gate the type length limit check behind a nightly flag 2024-07-12 21:16:09 -04:00
recursion_limit
regions Point at explicit 'static obligations on a trait 2024-08-21 16:40:15 +00:00
repeat-expr Account for let foo = expr; to suggest const foo: Ty = expr; 2024-07-11 20:39:24 +00:00
repr Ban non-array SIMD 2024-09-09 19:39:43 -07:00
reserved
resolve Don't call fn_arg_names for non-fn in resolver 2024-09-07 07:38:22 -04:00
return Fixing span manipulation and indentation of the suggestion introduced by #126187 2024-08-25 20:30:06 +08:00
rfcs Don't elaborate effects predicates into bounds list unless we're actually collecting implied bounds, not super bounds 2024-09-21 12:20:40 -04:00
rmeta
runtime Disable stack overflow handler tests on iOS-like platforms 2024-05-28 12:31:12 +02:00
rust-2018 diagnostics: do not warn when a lifetime bound infers itself 2024-08-09 16:16:16 -07:00
rust-2021 Detect unused structs which implement private traits 2024-05-23 09:07:59 +08:00
rust-2024 Store raw ident span for raw lifetime 2024-09-17 16:43:18 -04:00
rustc-env note value of RUST_MIN_STACK and explain unsetting 2024-05-19 20:09:03 -07:00
rustdoc Be more accurate about calculating display_col from a BytePos 2024-07-18 20:08:38 +00:00
sanitizer Rollup merge of #129179 - compiler-errors:cfi-erase-transparent, r=davidtwco 2024-08-21 18:15:02 +02:00
self Auto merge of #124895 - obeis:static-mut-hidden-ref, r=compiler-errors 2024-09-20 17:25:34 +00:00
sepcomp
shadowed
shell-argfiles compiletest: add enable-by-default check-cfg 2024-05-04 11:30:38 +02:00
simd Update the minimum external LLVM to 18 2024-09-18 13:53:31 -07:00
single-use-lifetime
sized Detect * operator on !Sized expression 2024-08-08 17:35:40 +00:00
span Don't call const normalize in error reporting 2024-09-22 13:55:06 -04:00
specialization Re-enable ConstArgKind::Path lowering by default 2024-09-12 13:56:01 -04:00
stability-attribute Migrate tests to use -Znext-solver 2024-06-30 17:08:45 +00:00
stable-mir-print Set up false edges in lower_match_tree 2024-07-29 09:50:07 +02:00
stack-protector
static Auto merge of #124895 - obeis:static-mut-hidden-ref, r=compiler-errors 2024-09-20 17:25:34 +00:00
statics Auto merge of #124895 - obeis:static-mut-hidden-ref, r=compiler-errors 2024-09-20 17:25:34 +00:00
stats ignore/fix layout-sensitive tests 2024-08-31 23:56:45 +02:00
std More robust extension checking 2024-09-03 14:36:21 +02:00
stdlib-unit-tests Move various stdlib tests to library/std/tests 2024-04-28 16:10:12 -04:00
str Be more accurate about calculating display_col from a BytePos 2024-07-18 20:08:38 +00:00
structs Test more cases of WF-checking for fields 2024-08-05 17:56:50 -07:00
structs-enums Get rid of niche selection's dependence on fields's order 2024-09-18 17:31:56 +08:00
suggestions Rollup merge of #130712 - compiler-errors:const-eval-error-reporting, r=BoxyUwU 2024-09-23 06:45:34 +02:00
svh
symbol-mangling-version
symbol-names Split part of adt_const_params into unsized_const_params 2024-07-17 11:01:29 +01:00
sync Add manual Sync impl for ReentrantLockGuard 2024-05-24 17:44:37 -07:00
target-feature Revert "Auto merge of #127537 - veluca93:struct_tf, r=BoxyUwU" 2024-09-01 16:35:53 +02:00
test-attrs Update name of Windows abort constant to match platform documentation 2024-07-15 22:21:41 +00:00
thir-print report pat no field error no recoverd struct variant 2024-07-11 00:18:47 +08:00
thread-local Auto merge of #124895 - obeis:static-mut-hidden-ref, r=compiler-errors 2024-09-20 17:25:34 +00:00
threads-sendsync format code in tests/ui/threads-sendsync 2024-08-24 05:32:52 +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 Fix malformed suggestion for repeated maybe unsized bounds 2024-07-14 17:46:25 +05:30
traits Don't call const normalize in error reporting 2024-09-22 13:55:06 -04:00
transmutability TL note: current means target 2024-09-20 10:02:14 -07: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 Improve the impl and diag output of lint type_alias_bounds 2024-07-23 01:48:03 +02:00
try-block Peel off explicit (or implicit) deref before suggesting clone on move error in borrowck 2024-07-26 14:41:56 -04:00
try-trait Fixing span manipulation and indentation of the suggestion introduced by #126187 2024-08-25 20:30:06 +08:00
tuple Use ordinal number in argument error 2024-07-14 13:50:09 +09:00
type Don't call const normalize in error reporting 2024-09-22 13:55:06 -04:00
type-alias Suggest full trait ref (with placeholders) on unresolved assoc tys 2024-07-23 01:26:25 +02:00
type-alias-enum-variants Suggest the struct variant pattern syntax on usage of unit variant pattern for a struct variant 2024-08-28 22:55:57 +09:00
type-alias-impl-trait Revert 'Stabilize -Znext-solver=coherence' 2024-09-11 17:57:04 -04:00
type-inference make invalid_type_param_default lint show up in cargo future-compat reports 2024-07-15 22:05:45 +02:00
typeck Don't call const normalize in error reporting 2024-09-22 13:55:06 -04:00
typeof Account for let foo = expr; to suggest const foo: Ty = expr; 2024-07-11 20:39:24 +00:00
ufcs Don't call const normalize in error reporting 2024-09-22 13:55:06 -04:00
unboxed-closures Revert suggestion verbosity change 2024-07-22 22:51:53 +00:00
underscore-imports Structured suggestion for extern crate foo when foo isn't resolved in import 2024-07-29 23:49:51 +00:00
underscore-lifetime
uniform-paths
uninhabited Add a machine-applicable suggestion to "unreachable pattern" 2024-09-13 21:01:29 +02:00
union Update tests for hidden references to mutable static 2024-09-13 14:10:56 +03:00
unknown-unstable-lints
unop Peel off explicit (or implicit) deref before suggesting clone on move error in borrowck 2024-07-26 14:41:56 -04:00
unpretty stabilize raw_ref_op 2024-08-18 19:46:53 +02:00
unresolved Structured suggestion for extern crate foo when foo isn't resolved in import 2024-07-29 23:49:51 +00:00
unsafe Check params for unsafety in THIR 2024-09-18 16:45:48 -04:00
unsized Detect * operator on !Sized expression 2024-08-08 17:35:40 +00:00
unsized-locals
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 Print the generic parameter along with the variance in dumps. 2024-08-23 23:00:45 +00:00
variants Accurate use rename suggestion span 2024-07-18 00:00:04 +00:00
version Fix test problems discovered by the revision check 2024-05-09 14:47:09 +10:00
warnings
wasm
wf Fix ICE caused by missing span in a region error 2024-09-09 12:27:36 +05:30
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
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
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 Peel off explicit (or implicit) deref before suggesting clone on move error in borrowck 2024-07-26 14:41:56 -04:00
augmented-assignments.stderr Peel off explicit (or implicit) deref before suggesting clone on move error in borrowck 2024-07-26 14:41:56 -04: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 Revert suggestion verbosity change 2024-07-22 22:51:53 +00:00
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.rs
custom_attribute.stderr
custom-attribute-multisegment.rs
custom-attribute-multisegment.stderr
custom-test-frameworks-simple.rs
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
duplicate-label-E0381-issue-129274.rs Deduplicate Spans in Uninitialized Check 2024-08-22 09:36:14 -07:00
duplicate-label-E0381-issue-129274.stderr Deduplicate Spans in Uninitialized Check 2024-08-22 09:36:14 -07: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
future-incompatible-lint-group.stderr
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
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 Revert 'Stabilize -Znext-solver=coherence' 2024-09-11 17:57:04 -04:00
impl-unused-tps.stderr Revert 'Stabilize -Znext-solver=coherence' 2024-09-11 17:57:04 -04: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
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 Update tests for hidden references to mutable static 2024-09-13 14:10:56 +03:00
list.rs
log-err-phi.rs
log-knows-the-names-of-variants.rs
log-poly.rs
logging-only-prints-once.rs
loud_ui.rs
max-min-classes.rs
maximal_mir_to_hir_coverage.rs
maybe-bounds.rs
maybe-bounds.stderr Support ?Trait bounds in supertraits and dyn Trait under a feature gate 2024-07-25 20:53:33 +03:00
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_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
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
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 Use ordinal number in argument error 2024-07-14 13:50:09 +09:00
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_implementation-closures.rs
panic-while-printing.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
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-calling-conventions.rs Migrate run-make/print-calling-conventions to ui-test 2024-08-03 20:09:42 -04:00
print-calling-conventions.stdout add C-cmse-nonsecure-entry ABI 2024-09-21 13:04:14 +02:00
print-stdout-eprint-stderr.rs
project-cache-issue-31849.rs
ptr-coercion-rpass.rs
ptr-coercion.rs
ptr-coercion.stderr
query-visibility.rs
raw-str.rs
README.md
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 Revert suggestion verbosity change 2024-07-22 22:51:53 +00:00
shadow-bool.rs
shadowed-use-visibility.rs
short-error-format.rs
short-error-format.stderr On short error format, append primary span label to message 2024-08-06 04:08:10 +00:00
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
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
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_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
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
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_idents.rs
utf8-bom.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

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