rust/tests/ui/lifetimes
Matthias Krüger 49f950434b
Rollup merge of #125407 - pacak:no-lending-iterators, r=pnkfelix
Detect when user is trying to create a lending `Iterator` and give a custom explanation

The scope for this diagnostic is to detect lending iterators specifically and it's main goal is to help beginners to understand that what they are trying to implement might not be possible for `Iterator` trait specifically.

I ended up to changing the wording from originally proposed in the ticket because it might be misleading otherwise: `Data` might have a lifetime parameter but it can be unrelated to items user is planning to return.

Fixes https://github.com/rust-lang/rust/issues/125337
2024-06-05 18:21:08 +02:00
..
auxiliary [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
lifetime-errors Detect when a lifetime is being reused in suggestion 2024-05-17 21:23:47 +00:00
anonymize-unnamed-bound-vars-in-binders.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
bare-trait-object-borrowck.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
bare-trait-object.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
borrowck-let-suggestion.rs
borrowck-let-suggestion.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
conflicting-bounds.rs
conflicting-bounds.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
copy_modulo_regions.rs
copy_modulo_regions.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
could-not-resolve-issue-121503.rs make type_flags(ReError) & HAS_ERROR 2024-03-20 17:29:58 +00:00
could-not-resolve-issue-121503.stderr make type_flags(ReError) & HAS_ERROR 2024-03-20 17:29:58 +00:00
elided-lifetime-in-anon-const.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
elided-lifetime-in-param-pat.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
elided-lifetime-in-path-in-impl-Fn.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
elided-lifetime-in-path-in-pat.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
elided-lifetime-in-path-in-type-relative-expression.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
fullwidth-ampersand.rs
fullwidth-ampersand.stderr
issue-17728.rs Continue to borrowck even if there were previous errors 2024-02-08 08:10:43 +00:00
issue-17728.stderr Tweak suggested lifetimes to modify return type instead of &self receiver 2024-05-17 20:31:13 +00:00
issue-19707.rs Move tests 2024-02-13 18:08:25 -03:00
issue-19707.stderr Move tests 2024-02-13 18:08:25 -03:00
issue-26638.rs make type_flags(ReError) & HAS_ERROR 2024-03-20 17:29:58 +00:00
issue-26638.stderr make type_flags(ReError) & HAS_ERROR 2024-03-20 17:29:58 +00:00
issue-34979.rs
issue-34979.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
issue-36744-without-calls.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
issue-54378.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
issue-55796.rs
issue-55796.stderr
issue-64173-unused-lifetimes.rs improve diagnostics and bless tests 2023-05-05 21:42:54 +01:00
issue-64173-unused-lifetimes.stderr Improve the diagnostics for unused generic parameters 2024-02-01 16:18:03 +01:00
issue-67498.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
issue-69314.fixed Stop proving outlives constraints on regions we already reported errors on 2024-05-29 09:27:07 +00:00
issue-69314.rs Stop proving outlives constraints on regions we already reported errors on 2024-05-29 09:27:07 +00:00
issue-69314.stderr Stop proving outlives constraints on regions we already reported errors on 2024-05-29 09:27:07 +00:00
issue-70917-lifetimes-in-fn-def.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
issue-76168-hr-outlives-2.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
issue-76168-hr-outlives-3.rs Consolidate WF for aliases 2024-03-14 12:17:00 -04:00
issue-76168-hr-outlives-3.stderr Use parenthetical notation for Fn traits 2024-05-29 22:26:54 +00:00
issue-76168-hr-outlives.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
issue-77175.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
issue-79187-2.rs eagerly instantiate binders to avoid relying on sub 2024-03-14 17:19:40 +01:00
issue-79187-2.stderr eagerly instantiate binders to avoid relying on sub 2024-03-14 17:19:40 +01:00
issue-79187.rs eagerly instantiate binders to avoid relying on sub 2024-03-14 17:19:40 +01:00
issue-79187.stderr eagerly instantiate binders to avoid relying on sub 2024-03-14 17:19:40 +01:00
issue-83737-binders-across-types.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
issue-83737-erasing-bound-vars.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
issue-83753-invalid-associated-type-supertrait-hrtb.rs Rename HIR TypeBinding to AssocItemConstraint and related cleanup 2024-05-30 22:52:33 +02:00
issue-83753-invalid-associated-type-supertrait-hrtb.stderr Rename HIR TypeBinding to AssocItemConstraint and related cleanup 2024-05-30 22:52:33 +02:00
issue-83907-invalid-fn-like-path.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
issue-83907-invalid-fn-like-path.stderr
issue-84398.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
issue-84604.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
issue-90170-elision-mismatch.fixed [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
issue-90170-elision-mismatch.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
issue-90170-elision-mismatch.stderr Detect when a lifetime is being reused in suggestion 2024-05-17 21:23:47 +00:00
issue-90600-expected-return-static-indirect.rs
issue-90600-expected-return-static-indirect.stderr Tweak the post-order for multi-successor blocks 2023-05-21 17:48:36 -07:00
issue-91763.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
issue-91763.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
issue-93911.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
issue-95023.rs Rename HIR TypeBinding to AssocItemConstraint and related cleanup 2024-05-30 22:52:33 +02:00
issue-95023.stderr Auto merge of #125778 - estebank:issue-67100, r=compiler-errors 2024-06-03 08:14:03 +00:00
issue-97193.rs
issue-97193.stderr
issue-97194.rs
issue-97194.stderr
issue-103582-hint-for-missing-lifetime-bound-on-trait-object-using-type-alias.fixed [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
issue-103582-hint-for-missing-lifetime-bound-on-trait-object-using-type-alias.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
issue-103582-hint-for-missing-lifetime-bound-on-trait-object-using-type-alias.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
issue-104432-unused-lifetimes-in-expansion.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
issue-105227.fixed [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
issue-105227.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
issue-105227.stderr Label opaque type for 'captures lifetime' error message 2023-03-03 05:02:34 +00:00
issue-105507.fixed [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
issue-105507.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
issue-105507.stderr
issue-105675.rs Fix obligation param and bless tests 2024-04-01 22:48:23 -04:00
issue-105675.stderr eagerly instantiate binders to avoid relying on sub 2024-03-14 17:19:40 +01:00
issue-107492-default-value-for-lifetime.rs
issue-107492-default-value-for-lifetime.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
issue-107988.rs Don't trigger ICE for ReError when the other region is empty. 2023-02-26 20:47:18 -06:00
issue-107988.stderr Don't trigger ICE for ReError when the other region is empty. 2023-02-26 20:47:18 -06:00
lifetime-bound-will-change-warning.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
lifetime-bound-will-change-warning.stderr
lifetime-doesnt-live-long-enough.rs
lifetime-doesnt-live-long-enough.stderr remove trailing dots 2023-10-08 10:06:17 +00:00
lifetime-elision-return-type-requires-explicit-lifetime.rs
lifetime-elision-return-type-requires-explicit-lifetime.stderr Fix incorrect lifetime suggestion 2023-11-20 23:44:37 +00:00
lifetime-elision-return-type-trait.rs
lifetime-elision-return-type-trait.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
lifetime-mismatch-between-trait-and-impl.rs
lifetime-mismatch-between-trait-and-impl.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
lifetime-no-keyword.rs
lifetime-no-keyword.stderr
missing-lifetime-in-alias.rs Avoid silencing relevant follow-up errors 2024-01-09 21:08:16 +00:00
missing-lifetime-in-alias.stderr Merge collect_mod_item_types query into check_well_formed 2024-03-07 14:26:31 +00:00
nested-binder-print.rs
nested-binder-print.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
nested.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
no_lending_iterators.rs And more general error 2024-05-24 11:20:33 -04:00
no_lending_iterators.stderr And more general error 2024-05-24 11:20:33 -04:00
noisy-follow-up-erro.rs Add regression test 2024-06-03 13:03:52 +00:00
noisy-follow-up-erro.stderr Add regression test 2024-06-03 13:03:52 +00:00
re-empty-in-error.rs
re-empty-in-error.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
shadow.rs
shadow.stderr
suggest-introducing-and-adding-missing-lifetime.fixed [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
suggest-introducing-and-adding-missing-lifetime.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
suggest-introducing-and-adding-missing-lifetime.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
temporary-lifetime-extension.rs Add clarifying comment to test. 2024-02-21 15:45:13 +01:00
undeclared-lifetime-used-in-debug-macro-issue-70152.rs
undeclared-lifetime-used-in-debug-macro-issue-70152.stderr
unnamed-closure-doesnt-life-long-enough-issue-67634.rs
unnamed-closure-doesnt-life-long-enough-issue-67634.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
unusual-rib-combinations.rs Allow type_of to return partially non-error types if the type was already tainted 2024-05-28 11:55:20 +00:00
unusual-rib-combinations.stderr Allow type_of to return partially non-error types if the type was already tainted 2024-05-28 11:55:20 +00:00