rust/tests/ui/impl-trait
bors bad50269f8 Auto merge of #147602 - JohnTitor:dedup-lifetime-capture-errors, r=estebank
Deduplicate higher-ranked lifetime capture errors in impl Trait

  Previously, when an `impl Trait` captured multiple higher-ranked
  lifetimes from an outer `impl Trait`, the compiler would emit a
  separate error for each captured lifetime. This resulted in verbose
  and confusing diagnostics, especially in edition 2024 where implicit
  captures caused duplicate errors.

  This commit introduces error accumulation that collects all capture
  spans and lifetime declaration spans, then emits a single consolidated
  diagnostic using MultiSpan. The new error shows all captured lifetimes
  with visual indicators and lists all declarations in a single note.

r? `@estebank`
Fixes https://github.com/rust-lang/rust/issues/143022
2025-12-10 06:52:27 +00:00
..
alias-liveness Add edition checks for some tests that had divergent output 2025-06-25 17:02:26 +00:00
apit move (and remove) impl Trait tests 2025-05-09 02:35:18 +00:00
auto-trait-leakage Use tcx.short_string() in more diagnostics 2025-08-07 21:18:00 +00:00
auxiliary
diagnostics When a trait isn't implemented, but another similar impl is found, point at it: 2025-10-31 20:38:31 +00:00
explicit-generic-args-with-impl-trait Revert suggestion verbosity change 2024-07-22 22:51:53 +00:00
in-bindings When more than a single impl and less than 4 could apply, point at them 2025-10-31 20:44:01 +00:00
in-ctfe [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
in-trait Merge E0412 into E0425 2025-12-02 18:25:13 +00:00
issues Auto merge of #147602 - JohnTitor:dedup-lifetime-capture-errors, r=estebank 2025-12-10 06:52:27 +00:00
member-constraints in opaque type handling lift region vars to static if they outlive placeholders 2025-10-13 15:26:22 +01:00
method Gate 2015 UI tests 2025-11-27 11:19:00 -05:00
multiple-lifetimes Implement #[define_opaque] attribute for functions. 2025-03-11 12:05:02 +00:00
non-defining-uses When a trait isn't implemented, but another similar impl is found, point at it: 2025-10-31 20:38:31 +00:00
precise-capturing reword note 2025-09-28 20:55:35 +00:00
rpit add TypingMode::Borrowck 2025-04-03 11:13:10 +02:00
transmute Separate transmute checking from typeck. 2025-08-22 20:10:27 +00:00
associated-impl-trait-type-generic-trait.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
associated-impl-trait-type-issue-114325.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
associated-impl-trait-type-trivial.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
associated-impl-trait-type.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
associated-type-cycle.rs Fix stack overflow with recursive associated types 2024-03-12 06:03:43 +00:00
associated-type-cycle.stderr Fix stack overflow with recursive associated types 2024-03-12 06:03:43 +00:00
associated-type-fn-bound-issue-72207.rs Add a regression test for #72207 2025-10-12 08:24:39 +09:00
associated-type-undefine.rs Implement #[define_opaque] attribute for functions. 2025-03-11 12:05:02 +00:00
associated-type-undefine.stderr Implement #[define_opaque] attribute for functions. 2025-03-11 12:05:02 +00:00
async_scope_creep.rs Implement #[define_opaque] attribute for functions. 2025-03-11 12:05:02 +00:00
auto-trait-selection-freeze.next.stderr support non-defining uses in HIR typeck 2025-08-25 14:20:18 +02:00
auto-trait-selection-freeze.old.stderr Point to correct argument in Func Call when Self type fails trait bound 2025-07-07 16:47:15 +08:00
auto-trait-selection-freeze.rs Do not assemble candidates for auto traits of opaque types in their defining scope 2024-07-24 16:00:48 +00:00
auto-trait-selection.next.stderr support non-defining uses in HIR typeck 2025-08-25 14:20:18 +02:00
auto-trait-selection.old.stderr Point to correct argument in Func Call when Self type fails trait bound 2025-07-07 16:47:15 +08:00
auto-trait-selection.rs Do not assemble candidates for auto traits of opaque types in their defining scope 2024-07-24 16:00:48 +00:00
autoderef.rs Ignore tests w/ current/next revisions from compare-mode=next-solver 2024-03-10 21:18:41 -04:00
basic-trait-impl.rs cleaned up some tests 2025-06-30 11:50:19 +05:00
bivariant-lifetime-liveness.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
bound-normalization-fail.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
bound-normalization-fail.stderr Stop inverting expectation in normalization errors 2024-10-16 13:44:56 -04:00
bound-normalization-pass.rs Implement #[define_opaque] attribute for functions. 2025-03-11 12:05:02 +00:00
bounds_regression.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
call_method_ambiguous.rs allow method calls on opaques 2025-09-26 16:33:15 +02:00
call_method_on_inherent_impl.rs allow method calls on opaques 2025-09-26 16:33:15 +02:00
call_method_on_inherent_impl_on_rigid_type.current.stderr Gate 2015 UI tests 2025-11-27 11:19:00 -05:00
call_method_on_inherent_impl_on_rigid_type.next.stderr Gate 2015 UI tests 2025-11-27 11:19:00 -05:00
call_method_on_inherent_impl_on_rigid_type.rs Gate 2015 UI tests 2025-11-27 11:19:00 -05:00
call_method_on_inherent_impl_ref-err.current.stderr allow method calls on opaques 2025-09-26 16:33:15 +02:00
call_method_on_inherent_impl_ref-err.next.stderr allow method calls on opaques 2025-09-26 16:33:15 +02:00
call_method_on_inherent_impl_ref-err.rs allow method calls on opaques 2025-09-26 16:33:15 +02:00
call_method_on_inherent_impl_ref-ok.rs allow method calls on opaques 2025-09-26 16:33:15 +02:00
call_method_without_import.no_import.stderr fix: Add col separator before secondary messages with no source 2025-08-26 15:15:17 -06:00
call_method_without_import.rs Add some tests 2024-06-13 10:41:52 +00:00
capture-lifetime-not-in-hir.rs Print the generic parameter along with the variance in dumps. 2024-08-23 23:00:45 +00:00
capture-lifetime-not-in-hir.stderr Print the generic parameter along with the variance in dumps. 2024-08-23 23:00:45 +00:00
captured-invalid-lifetime.rs Fix ICE when opaque captures a duplicated/invalid lifetime 2025-01-01 19:32:51 +00:00
captured-invalid-lifetime.stderr Fix ICE when opaque captures a duplicated/invalid lifetime 2025-01-01 19:32:51 +00:00
closure-calling-parent-fn.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
closure-in-impl-trait-arg.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
closure-in-impl-trait.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
closure-in-type.rs Promote crashes tests to ui. 2024-10-30 16:19:53 +00:00
cross-return-site-inference.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
cross-return-site-inference.stderr Deduplicate more sized errors on call exprs 2024-01-24 02:53:15 +00:00
deduce-signature-from-supertrait.rs Implement #[define_opaque] attribute for functions. 2025-03-11 12:05:02 +00:00
define-via-const.rs Allow defining opaques in statics and consts 2025-03-25 16:44:59 +00:00
define-via-extern.rs Test define opaques in extern items 2025-03-25 16:44:59 +00:00
define-via-extern.stderr Test define opaques in extern items 2025-03-25 16:44:59 +00:00
defined-by-trait-resolution.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
defining-use-captured-non-universal-region.infer.stderr remove test FIXME re once-module-region 2024-03-28 06:41:22 +00:00
defining-use-captured-non-universal-region.rs remove test FIXME re once-module-region 2024-03-28 06:41:22 +00:00
defining-use-captured-non-universal-region.statik.stderr remove test FIXME re once-module-region 2024-03-28 06:41:22 +00:00
defining-use-uncaptured-non-universal-region-2.rs ignore uncaptured lifetimes when checking opaques 2024-03-26 09:26:23 +00:00
defining-use-uncaptured-non-universal-region-3.rs Split part of adt_const_params into unsized_const_params 2024-07-17 11:01:29 +01:00
defining-use-uncaptured-non-universal-region.rs ignore uncaptured lifetimes when checking opaques 2024-03-26 09:26:23 +00:00
deprecated_annotation.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
different_where_bounds.rs Ensure the canonical_param_env_cache does not contain inconsistent information about the defining anchor 2024-04-08 15:08:06 +00:00
divergence.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
does-not-live-long-enough.rs
does-not-live-long-enough.stderr handle opaque types before region inference 2025-08-20 11:04:38 +02:00
dont-suggest-box-on-empty-else-arm.rs Don't suggest boxing an empty if/else arm 2023-06-11 00:19:56 +00:00
dont-suggest-box-on-empty-else-arm.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
dyn-impl-type-mismatch.rs Account for expected dyn Trait found impl Trait 2024-01-24 16:57:15 +00:00
dyn-impl-type-mismatch.stderr Account for expected dyn Trait found impl Trait 2024-01-24 16:57:15 +00:00
dyn-incompatible-trait-in-return-position-dyn-trait.rs Use more detailed spans in dyn compat errors within bodies 2025-05-27 08:18:11 +00:00
dyn-incompatible-trait-in-return-position-dyn-trait.stderr Use more detailed spans in dyn compat errors within bodies 2025-05-27 08:18:11 +00:00
dyn-incompatible-trait-in-return-position-impl-trait.rs UI tests: Rename "object safe" to "dyn compatible" 2024-10-10 01:13:29 +02:00
dyn-incompatible-trait-in-return-position-impl-trait.stderr UI tests: Rename "object safe" to "dyn compatible" 2024-10-10 01:13:29 +02:00
dyn-trait-elided-two-inputs-assoc.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
dyn-trait-elided-two-inputs-param.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
dyn-trait-elided-two-inputs-ref-assoc.rs borrowck: more eagerly prepopulate opaques 2024-05-06 16:04:57 +00:00
dyn-trait-elided-two-inputs-ref-param.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
dyn-trait-return-should-be-impl-trait.edition2015.stderr Add edition checks for some tests that had divergent output 2025-06-25 17:02:26 +00:00
dyn-trait-return-should-be-impl-trait.edition2021.stderr Add edition checks for some tests that had divergent output 2025-06-25 17:02:26 +00:00
dyn-trait-return-should-be-impl-trait.rs Add edition checks for some tests that had divergent output 2025-06-25 17:02:26 +00:00
eagerly-reveal-in-local-body.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
equal-hidden-lifetimes.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
equality-in-canonical-query.rs Pass list of defineable opaque types into canonical queries 2024-04-08 15:00:26 +00:00
equality-rpass.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
equality-rpass.stderr
equality.rs compiletest: Make diagnostic kind mandatory on line annotations 2025-04-30 10:44:24 +03:00
equality.stderr When more than a single impl and less than 4 could apply, point at them 2025-10-31 20:44:01 +00:00
equality2.rs compiletest: Make diagnostic kind mandatory on line annotations 2025-04-30 10:44:24 +03:00
equality2.stderr compiletest: Make diagnostic kind mandatory on line annotations 2025-04-30 10:44:24 +03:00
erased-regions-in-hidden-ty.current.stderr ignore uncaptured lifetimes when checking opaques 2024-03-26 09:26:23 +00:00
erased-regions-in-hidden-ty.next.stderr ignore uncaptured lifetimes when checking opaques 2024-03-26 09:26:23 +00:00
erased-regions-in-hidden-ty.rs Remove the -test suffix from normalize directives 2024-12-27 19:58:16 +11:00
example-calendar.rs distinguish overflow and unimplemented in Step::steps_between 2024-11-21 15:49:55 -08:00
example-st.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
example-st.stderr bless tests with new lint messages 2025-08-19 21:27:10 +02:00
extra-impl-in-trait-impl.fixed Marks ADT live if it appears in pattern 2025-06-14 13:44:43 +08:00
extra-impl-in-trait-impl.rs Marks ADT live if it appears in pattern 2025-06-14 13:44:43 +08:00
extra-impl-in-trait-impl.stderr Marks ADT live if it appears in pattern 2025-06-14 13:44:43 +08:00
extra-item.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
extra-item.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
failed-to-resolve-instance-ice-105488.rs add test for ice called Option::unwrap() on a None value in collector.rs:934:13 #105488 2024-04-07 00:25:56 +02:00
failed-to-resolve-instance-ice-105488.stderr add test for ice called Option::unwrap() on a None value in collector.rs:934:13 #105488 2024-04-07 00:25:56 +02:00
failed-to-resolve-instance-ice-123145.rs add test for ICE: failed to resolve instance for <fn() -> impl ...> #123145 2024-04-07 00:48:47 +02:00
failed-to-resolve-instance-ice-123145.stderr add test for ICE: failed to resolve instance for <fn() -> impl ...> #123145 2024-04-07 00:48:47 +02:00
fallback.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
fallback_inference.rs
fallback_inference.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
feature-self-return-type.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
feature-self-return-type.stderr Stabilize impl_trait_projections 2023-09-08 03:45:36 +00:00
fresh-lifetime-from-bare-trait-obj-114664.rs Bless test fallout (duplicate diagnostics) 2024-03-20 13:00:34 -04:00
fresh-lifetime-from-bare-trait-obj-114664.stderr bless tests with new lint messages 2025-08-19 21:27:10 +02:00
future-no-bound-vars-ice-112347.rs Implement #[define_opaque] attribute for functions. 2025-03-11 12:05:02 +00:00
generic-with-implicit-hrtb-without-dyn.edition2015.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
generic-with-implicit-hrtb-without-dyn.edition2021.stderr Gate 2018 UI tests 2025-11-27 14:13:58 -05:00
generic-with-implicit-hrtb-without-dyn.pre2021.stderr Gate 2018 UI tests 2025-11-27 14:13:58 -05:00
generic-with-implicit-hrtb-without-dyn.rs Gate 2018 UI tests 2025-11-27 14:13:58 -05:00
hidden-lifetimes.edition2015.stderr Add edition checks for some tests that had divergent output 2025-06-25 17:02:26 +00:00
hidden-lifetimes.edition2024.stderr Add edition checks for some tests that had divergent output 2025-06-25 17:02:26 +00:00
hidden-lifetimes.rs Add edition checks for some tests that had divergent output 2025-06-25 17:02:26 +00:00
hidden-type-is-opaque-2.default.stderr Fix; correct placement of type inference error for method calls 2025-10-07 09:51:16 +01:00
hidden-type-is-opaque-2.next.stderr Fix; correct placement of type inference error for method calls 2025-10-07 09:51:16 +01:00
hidden-type-is-opaque-2.rs Implement #[define_opaque] attribute for functions. 2025-03-11 12:05:02 +00:00
hidden-type-is-opaque.rs Implement #[define_opaque] attribute for functions. 2025-03-11 12:05:02 +00:00
higher-ranked-lifetime-capture-deduplication.edition2015.stderr Deduplicate higher-ranked lifetime capture errors in impl Trait 2025-10-12 16:51:28 +09:00
higher-ranked-lifetime-capture-deduplication.edition2024.stderr Deduplicate higher-ranked lifetime capture errors in impl Trait 2025-10-12 16:51:28 +09:00
higher-ranked-lifetime-capture-deduplication.rs Deduplicate higher-ranked lifetime capture errors in impl Trait 2025-10-12 16:51:28 +09:00
ice-148622-opaque-as-const-generics.rs Fix ICE when collecting opaques from trait method declarations 2025-11-21 21:42:40 +09:00
ice-148622-opaque-as-const-generics.stderr Fix ICE when collecting opaques from trait method declarations 2025-11-21 21:42:40 +09:00
ice-unexpected-param-type-whensubstituting-in-region-112823.current.stderr Improve AssocItem::descr. 2025-04-11 11:03:08 +10:00
ice-unexpected-param-type-whensubstituting-in-region-112823.next.stderr Apply nested goals certainty to InspectGoals for normalizes-to 2025-06-09 17:02:09 +00:00
ice-unexpected-param-type-whensubstituting-in-region-112823.rs Apply nested goals certainty to InspectGoals for normalizes-to 2025-06-09 17:02:09 +00:00
impl-fn-hrtb-bounds-2.edition2015.stderr Add edition checks for some tests that had divergent output 2025-06-25 17:02:26 +00:00
impl-fn-hrtb-bounds-2.edition2024.stderr Add edition checks for some tests that had divergent output 2025-06-25 17:02:26 +00:00
impl-fn-hrtb-bounds-2.rs Add edition checks for some tests that had divergent output 2025-06-25 17:02:26 +00:00
impl-fn-hrtb-bounds.rs Replace elided_named_lifetimes with mismatched_lifetime_syntaxes 2025-06-04 10:40:04 -04:00
impl-fn-hrtb-bounds.stderr Deduplicate higher-ranked lifetime capture errors in impl Trait 2025-10-12 16:51:28 +09:00
impl-fn-parsing-ambiguities.rs make type_flags(ReError) & HAS_ERROR 2024-03-20 17:29:58 +00:00
impl-fn-parsing-ambiguities.stderr Deduplicate higher-ranked lifetime capture errors in impl Trait 2025-10-12 16:51:28 +09:00
impl-fn-predefined-lifetimes.edition2015.stderr Add edition checks for some tests that had divergent output 2025-06-25 17:02:26 +00:00
impl-fn-predefined-lifetimes.edition2024.stderr Add edition checks for some tests that had divergent output 2025-06-25 17:02:26 +00:00
impl-fn-predefined-lifetimes.rs Add edition checks for some tests that had divergent output 2025-06-25 17:02:26 +00:00
impl-fn-rpit-opaque-107883.rs Add new ui test for returning an Fn trait that returns impl Trait 2025-02-14 05:55:30 -07:00
impl-generic-mismatch.rs compiletest: Stricter parsing for diagnostic kinds 2025-04-07 19:13:31 +03:00
impl-generic-mismatch.stderr fix: Add col separator before secondary messages with no source 2025-08-26 15:15:17 -06:00
impl-subtyper.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
impl-subtyper2.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
impl-trait-in-macro.rs
impl-trait-in-macro.stderr Highlight clarifying information in "expected/found" error 2025-02-02 02:39:43 +00:00
impl-trait-plus-priority.rs Improve diagnostic for E0178 (bad + in type) 2025-04-15 10:08:49 +02:00
impl-trait-plus-priority.stderr Improve diagnostic for E0178 (bad + in type) 2025-04-15 10:08:49 +02:00
impl_fn_associativity.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
impl_trait_projections.rs Fix TAIT & ATPIT feature gating in the presence of anon consts 2025-03-28 18:15:23 +01:00
impl_trait_projections.stderr Fix TAIT & ATPIT feature gating in the presence of anon consts 2025-03-28 18:15:23 +01:00
implicit-capture-late.rs UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
implicit-capture-late.stderr Remove lifetime_capture_rules_2024 feature 2025-02-09 19:09:45 +00:00
in-assoc-type-unconstrained.rs Use the opaque_types_defined_by query to cheaply check for whether a hidden type may be registered for an opaque type 2023-05-12 10:26:50 +00:00
in-assoc-type-unconstrained.stderr Run wfcheck in one big loop instead of per module 2025-06-03 15:16:51 +00:00
in-assoc-type.rs Require TAITs to be mentioned in the signatures of functions that register hidden types for them 2023-07-07 13:13:18 +00:00
in-assoc-type.stderr Implement #[define_opaque] attribute for functions. 2025-03-11 12:05:02 +00:00
inside-item-nested-in-anon-const.rs Fix TAIT & ATPIT feature gating in the presence of anon consts 2025-03-28 18:15:23 +01:00
lazy_subtyping_of_opaques.rs rename select_where_possible and select_all_or_error 2025-10-07 23:02:23 +01:00
lifetime-ambiguity-regression.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
lifetimes.rs Error on using yield without also using #[coroutine] on the closure 2024-04-24 08:05:29 +00:00
mapping-duplicated-lifetimes-issue-114597.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
multiple-defining-usages-in-body.rs Check that RPITs are compatible with the opaques inferred during HIR typeck too 2023-05-31 17:45:45 +00:00
multiple-defining-usages-in-body.stderr Remove a bunch of diagnostic stashing that doesn't do anything 2025-01-11 19:22:06 +00:00
must_outlive_least_region_or_bound.rs Continue to borrowck even if there were previous errors 2024-02-08 08:10:43 +00:00
must_outlive_least_region_or_bound.stderr Make E0621 missing lifetime suggestion verbose 2025-06-09 19:55:00 +00:00
name-mentioning-macro.rs Don't give APITs names with macro expansion placeholder fragments in it 2025-06-25 15:42:11 +00:00
name-mentioning-macro.stderr Don't give APITs names with macro expansion placeholder fragments in it 2025-06-25 15:42:11 +00:00
needs_least_region_or_bound.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
negative-reasoning.rs Implement #[define_opaque] attribute for functions. 2025-03-11 12:05:02 +00:00
negative-reasoning.stderr Implement #[define_opaque] attribute for functions. 2025-03-11 12:05:02 +00:00
nested-hkl-lifetime.rs Add regression test 2024-04-08 15:00:03 +00:00
nested-return-type.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
nested-return-type2-tait.rs Implement #[define_opaque] attribute for functions. 2025-03-11 12:05:02 +00:00
nested-return-type2-tait.stderr Implement #[define_opaque] attribute for functions. 2025-03-11 12:05:02 +00:00
nested-return-type2-tait2.rs Implement #[define_opaque] attribute for functions. 2025-03-11 12:05:02 +00:00
nested-return-type2-tait2.stderr Remove DefiningAnchor::Bubble from opaque wf check 2023-10-16 15:50:31 +00:00
nested-return-type2-tait3.rs Implement #[define_opaque] attribute for functions. 2025-03-11 12:05:02 +00:00
nested-return-type2-tait3.stderr Remove DefiningAnchor::Bubble from opaque wf check 2023-10-16 15:50:31 +00:00
nested-return-type2.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
nested-return-type3-tait.rs Implement #[define_opaque] attribute for functions. 2025-03-11 12:05:02 +00:00
nested-return-type3-tait.stderr Implement #[define_opaque] attribute for functions. 2025-03-11 12:05:02 +00:00
nested-return-type3-tait2.rs Implement #[define_opaque] attribute for functions. 2025-03-11 12:05:02 +00:00
nested-return-type3-tait2.stderr Add AliasKind::Weak for type aliases. 2023-06-16 19:39:48 +00:00
nested-return-type3-tait3.rs Implement #[define_opaque] attribute for functions. 2025-03-11 12:05:02 +00:00
nested-return-type3-tait3.stderr
nested-return-type3.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
nested-return-type4.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
nested-return-type4.stderr Bless test fallout 2024-08-17 12:43:25 -04:00
nested-rpit-hrtb-2.rs don't ICE on higher ranked hidden types 2023-08-04 15:11:09 +00:00
nested-rpit-hrtb-2.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
nested-rpit-hrtb.rs in opaque type handling lift region vars to static if they outlive placeholders 2025-10-13 15:26:22 +01:00
nested-rpit-hrtb.stderr Auto merge of #147602 - JohnTitor:dedup-lifetime-capture-errors, r=estebank 2025-12-10 06:52:27 +00:00
nested-rpit-with-anonymous-lifetimes.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
nested_impl_trait.rs UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
nested_impl_trait.stderr When more than a single impl and less than 4 could apply, point at them 2025-10-31 20:44:01 +00:00
nesting.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
no-anonymize-regions.rs handle opaque types before region inference 2025-08-20 11:04:38 +02:00
no-method-suggested-traits.rs Gate 2015 UI tests 2025-11-27 11:19:00 -05:00
no-method-suggested-traits.stderr Gate 2015 UI tests 2025-11-27 11:19:00 -05:00
no-trait.rs
no-trait.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
normalize-opaque-with-bound-vars.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
normalize-tait-in-const.rs Change const trait bound syntax from ~const to [const] 2025-06-26 13:46:45 +00:00
normalize-tait-in-const.stderr Constify Fn* traits 2025-07-08 14:36:43 +00:00
not_general_enough_regression_106630.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
opaque-cast-field-access-in-future.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
opaque-cast-field-access-in-future.stderr Point at tail expression on rpit E0277 2024-11-02 03:08:04 +00:00
opaque-hidden-inferred-rpitit.rs Don't ICE in opaque_hidden_inferred_bound lint for RPITIT in trait with no default method body 2024-09-16 12:35:54 -04:00
opaque-used-in-extraneous-argument.rs Bless test fallout (duplicate diagnostics) 2024-03-20 13:00:34 -04:00
opaque-used-in-extraneous-argument.stderr Merge E0412 into E0425 2025-12-02 18:25:13 +00:00
opt-out-bound-not-satisfied.rs Reword diagnostic about relaxing non-Sized bound 2025-07-18 12:13:30 +02:00
opt-out-bound-not-satisfied.stderr Reword diagnostic about relaxing non-Sized bound 2025-07-18 12:13:30 +02:00
point-to-type-err-cause-on-impl-trait-return.rs Make error message less awkward 2025-02-03 19:00:22 +00:00
point-to-type-err-cause-on-impl-trait-return.stderr Show diff suggestion format on verbose replacement 2025-02-10 20:21:39 +00:00
printing-binder.rs
printing-binder.stderr
private_unused.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
projection-mismatch-in-impl-where-clause.rs
projection-mismatch-in-impl-where-clause.stderr Point at tail expression on rpit E0277 2024-11-02 03:08:04 +00:00
projection.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
question_mark.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
recursive-auto-trait.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
recursive-bound-eval.rs allow method calls on opaques 2025-09-26 16:33:15 +02:00
recursive-coroutine-boxed.rs allow method calls on opaques 2025-09-26 16:33:15 +02:00
recursive-coroutine-indirect.current.stderr Eagerly detect coroutine recursion pre-mono when possible 2025-02-05 18:36:17 +00:00
recursive-coroutine-indirect.next.stderr Eagerly detect coroutine recursion pre-mono when possible 2025-02-05 18:36:17 +00:00
recursive-coroutine-indirect.rs Eagerly detect coroutine recursion pre-mono when possible 2025-02-05 18:36:17 +00:00
recursive-ice-101862.rs add test for opaque type with non-universal region substs #101852 2024-03-23 12:01:39 +01:00
recursive-ice-101862.stderr add TypingMode::Borrowck 2025-04-03 11:13:10 +02:00
recursive-impl-trait-type-direct.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
recursive-impl-trait-type-indirect.rs Error on using yield without also using #[coroutine] on the closure 2024-04-24 08:05:29 +00:00
recursive-impl-trait-type-indirect.stderr Just error on recursive opaque ty in HIR typeck 2025-05-20 10:08:56 +00:00
recursive-impl-trait-type-through-non-recursive.rs
recursive-impl-trait-type-through-non-recursive.stderr
recursive-in-exhaustiveness.current.stderr support non-defining uses in HIR typeck 2025-08-25 14:20:18 +02:00
recursive-in-exhaustiveness.next.stderr pass sub_relations into canonical queries 2025-09-08 14:17:56 +02:00
recursive-in-exhaustiveness.rs support non-defining uses in HIR typeck 2025-08-25 14:20:18 +02:00
recursive-parent-trait-method-call.rs Add some tests 2024-06-13 10:41:52 +00:00
recursive-type-alias-impl-trait-declaration-too-subtle-2.rs Implement #[define_opaque] attribute for functions. 2025-03-11 12:05:02 +00:00
recursive-type-alias-impl-trait-declaration-too-subtle.rs Implement #[define_opaque] attribute for functions. 2025-03-11 12:05:02 +00:00
recursive-type-alias-impl-trait-declaration-too-subtle.stderr Run wfcheck in one big loop instead of per module 2025-06-03 15:16:51 +00:00
recursive-type-alias-impl-trait-declaration.rs Implement #[define_opaque] attribute for functions. 2025-03-11 12:05:02 +00:00
recursive-type-alias-impl-trait-declaration.stderr When more than a single impl and less than 4 could apply, point at them 2025-10-31 20:44:01 +00:00
region-escape-via-bound-contravariant-closure.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
region-escape-via-bound-contravariant.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
region-escape-via-bound.rs
region-escape-via-bound.stderr Bless test fallout 2024-08-17 12:43:25 -04:00
return-position-impl-trait-minimal.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
reveal-during-codegen.rs Ignore tests w/ current/next revisions from compare-mode=next-solver 2024-03-10 21:18:41 -04:00
rpit-assoc-pair-with-lifetime.rs Reword mismatched-lifetime-syntaxes text based on feedback 2025-07-14 09:52:58 -04:00
rpit-assoc-pair-with-lifetime.stderr Use unnamed lifetime spans as primary spans for MISMATCHED_LIFETIME_SYNTAXES 2025-08-23 22:11:43 +00:00
rpit-not-sized.rs
rpit-not-sized.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
stashed-diag-issue-121504.rs Reword "crate not found" resolve message 2025-01-24 01:19:50 +00:00
stashed-diag-issue-121504.stderr Reword "crate not found" resolve message 2025-01-24 01:19:50 +00:00
static-lifetime-return-position-impl-trait.rs Split part of adt_const_params into unsized_const_params 2024-07-17 11:01:29 +01:00
static-return-lifetime-infered.rs
static-return-lifetime-infered.stderr Bless test fallout 2024-08-17 12:43:25 -04:00
stranded-opaque.rs Bless test fallout (duplicate diagnostics) 2024-03-20 13:00:34 -04:00
stranded-opaque.stderr Bless test fallout (duplicate diagnostics) 2024-03-20 13:00:34 -04:00
struct-field-fragment-in-name.rs Don't give APITs names with macro expansion placeholder fragments in it 2025-06-25 15:42:11 +00:00
suggest-calling-rpit-closure.rs
suggest-calling-rpit-closure.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
trait_resolution.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
trait_type.rs
trait_type.stderr Show diff suggestion format on verbose replacement 2025-02-10 20:21:39 +00:00
trait_upcasting.rs Allow constraining opaque types during auto trait casting 2024-06-19 08:28:31 +00:00
trait_upcasting_reference_mismatch.rs Allow constraining opaque types during auto trait casting 2024-06-19 08:28:31 +00:00
trait_upcasting_reference_mismatch.stderr Allow constraining opaque types during auto trait casting 2024-06-19 08:28:31 +00:00
two_tait_defining_each_other.current.stderr Implement #[define_opaque] attribute for functions. 2025-03-11 12:05:02 +00:00
two_tait_defining_each_other.rs Implement #[define_opaque] attribute for functions. 2025-03-11 12:05:02 +00:00
two_tait_defining_each_other2.current.stderr add TypingMode::Borrowck 2025-04-03 11:13:10 +02:00
two_tait_defining_each_other2.next.stderr add tests, silence type annotations needed errors for opaques 2025-09-18 12:58:39 +02:00
two_tait_defining_each_other2.rs add tests, silence type annotations needed errors for opaques 2025-09-18 12:58:39 +02:00
two_tait_defining_each_other3.current.stderr Implement #[define_opaque] attribute for functions. 2025-03-11 12:05:02 +00:00
two_tait_defining_each_other3.rs Implement #[define_opaque] attribute for functions. 2025-03-11 12:05:02 +00:00
type-alias-generic-param.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
type-alias-generic-param.stderr bless tests with new lint messages 2025-08-19 21:27:10 +02:00
type-alias-impl-trait-in-fn-body.rs Implement #[define_opaque] attribute for functions. 2025-03-11 12:05:02 +00:00
type-alias-impl-trait-in-fn-body.stderr Implement #[define_opaque] attribute for functions. 2025-03-11 12:05:02 +00:00
type-arg-mismatch-due-to-impl-trait.rs
type-arg-mismatch-due-to-impl-trait.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
type_parameters_captured.rs
type_parameters_captured.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
unactionable_diagnostic.fixed [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
unactionable_diagnostic.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
unactionable_diagnostic.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
universal-mismatched-type.rs
universal-mismatched-type.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
universal-two-impl-traits.rs
universal-two-impl-traits.stderr Highlight clarifying information in "expected/found" error 2025-02-02 02:39:43 +00:00
universal_hrtb_anon.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
universal_hrtb_named.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
universal_in_adt_in_parameters.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
universal_in_impl_trait_in_parameters.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
universal_in_trait_defn_parameters.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
universal_multiple_bounds.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
universal_wrong_bounds.rs
universal_wrong_bounds.stderr Special-case item attributes in the suggestion output 2023-04-12 22:50:10 +00:00
universal_wrong_hrtb.rs migrate lifetime too 2023-06-26 19:14:49 +00:00
universal_wrong_hrtb.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
unsafety-checking-cycle.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
unsize-cast-validation-rpit.rs Don't check unsize goal in MIR validation when opaques remain 2024-10-15 21:01:42 -04:00
unsize_adt.rs Allow constraining opaque types during unsizing 2024-06-19 08:28:31 +00:00
unsize_slice.rs Allow constraining opaque types during unsizing 2024-06-19 08:28:31 +00:00
unsized_coercion.next.stderr do not constrain infer vars in find_best_leaf_obligation 2024-11-26 11:45:01 +01:00
unsized_coercion.rs do not constrain infer vars in find_best_leaf_obligation 2024-11-26 11:45:01 +01:00
unsized_coercion2.old.stderr Add more tests 2024-06-19 08:28:31 +00:00
unsized_coercion2.rs Add more tests 2024-06-19 08:28:31 +00:00
unsized_coercion3.next.stderr When more than a single impl and less than 4 could apply, point at them 2025-10-31 20:44:01 +00:00
unsized_coercion3.old.stderr do not constrain infer vars in find_best_leaf_obligation 2024-11-26 11:45:01 +01:00
unsized_coercion3.rs do not constrain infer vars in find_best_leaf_obligation 2024-11-26 11:45:01 +01:00
unsized_coercion4.rs More tests 2024-06-19 08:40:29 +00:00
unsized_coercion5.old.stderr remove feature(trait_upcasting) from tests and bless them 2025-02-06 23:44:23 +01:00
unsized_coercion5.rs remove feature(trait_upcasting) from tests and bless them 2025-02-06 23:44:23 +01:00
upvar_captures.rs Taint infcx when reporting errors 2024-06-19 04:41:56 +00:00
upvar_captures.stderr Taint infcx when reporting errors 2024-06-19 04:41:56 +00:00
variance.e2024.stderr Remove lifetime_capture_rules_2024 feature 2025-02-09 19:09:45 +00:00
variance.old.stderr Remove lifetime_capture_rules_2024 feature 2025-02-09 19:09:45 +00:00
variance.rs UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
wf-check-hidden-type.rs when defining opaques, require the hidden type to be well-formed 2024-02-27 15:57:49 +01:00
wf-check-hidden-type.stderr diagnostics :3 2025-08-20 11:10:38 +02:00
wf-eval-order.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
where-allowed-2.rs Gate 2018 UI tests 2025-11-27 14:13:58 -05:00
where-allowed-2.stderr Gate 2018 UI tests 2025-11-27 14:13:58 -05:00
where-allowed.rs Gate 2018 UI tests 2025-11-27 14:13:58 -05:00
where-allowed.stderr Gate 2018 UI tests 2025-11-27 14:13:58 -05:00
xcrate.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
xcrate_simple.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00