rust/tests/rustdoc-ui
Matthias Krüger 14663e09b7
Rollup merge of #116257 - estebank:issue-101351, r=b-naber
Suggest trait bounds for used associated type on type param

Fix #101351.

When an associated type on a type parameter is used, and the type parameter isn't constrained by the correct trait, suggest the appropriate trait bound:

```
error[E0220]: associated type `Associated` not found for `T`
 --> file.rs:6:15
  |
6 |     field: T::Associated,
  |               ^^^^^^^^^^ there is a similarly named associated type `Associated` in the trait `Foo`
  |
help: consider restricting type parameter `T`
  |
5 | struct Generic<T: Foo> {
  |                 +++++
  ```

When an associated type on a type parameter has a typo, suggest fixing
it:

```
error[E0220]: associated type `Baa` not found for `T`
  --> $DIR/issue-55673.rs:9:8
   |
LL |     T::Baa: std::fmt::Debug,
   |        ^^^ there is a similarly named associated type `Bar` in the trait `Foo`
   |
help: change the associated type name to use `Bar` from `Foo`
   |
LL |     T::Bar: std::fmt::Debug,
   |        ~~~
```
2023-10-16 19:10:49 +02:00
..
auxiliary Move some rustdoc-ui tests to subdirectories 2023-04-29 11:36:19 -05:00
check-cfg check-cfg: update rustdoc ui check-cfg tests 2023-10-12 18:39:35 +02:00
coverage Update tests for rustc_doc_primitive 2023-03-30 22:56:52 +02:00
doctest check-cfg: update rustdoc ui check-cfg tests 2023-10-12 18:39:35 +02:00
error-in-impl-trait Add a failing rustdoc-ui test for public infinite recursive type 2023-04-18 14:13:44 +02:00
generate-link-to-definition Move some rustdoc-ui tests to subdirectories 2023-04-29 11:36:19 -05:00
intra-doc Add a note to duplicate diagnostics 2023-10-05 01:04:41 +00:00
issues Tweak wording 2023-10-13 19:18:46 +00:00
lints Add a note to duplicate diagnostics 2023-10-05 01:04:41 +00:00
scrape-examples Move some rustdoc-ui tests to subdirectories 2023-04-29 11:36:19 -05:00
suggestions
ambiguous-inherent-assoc-ty.rs
bounded-hr-lifetime.rs
bounded-hr-lifetime.stderr Make configure_and_expand "infalllible" by just aborting the compilation if it fails instead of bubbling out an error 2023-02-20 15:28:59 +00:00
check-doc-alias-attr-location.rs
check-doc-alias-attr-location.stderr
check-doc-alias-attr.rs
check-doc-alias-attr.stderr
commandline-argfile-badutf8.args
commandline-argfile-badutf8.rs
commandline-argfile-badutf8.stderr
commandline-argfile-missing.rs
commandline-argfile-missing.stderr
commandline-argfile.args
commandline-argfile.rs
const_arg_in_type_position.rs rustdoc: run more HIR validation to mirror rustc 2023-03-30 14:55:03 +02:00
const_arg_in_type_position.stderr rustdoc: run more HIR validation to mirror rustc 2023-03-30 14:55:03 +02:00
const-evalutation-ice.rs
const-evalutation-ice.stderr
crate-reference-in-block-module.rs rustdoc: Don't crash on crate references in blocks 2023-03-10 17:49:13 +01:00
crate-reference-in-block-module.stderr rustdoc: Don't crash on crate references in blocks 2023-03-10 17:49:13 +01:00
custom_code_classes_in_docs-warning3.rs Add support for double quotes in markdown codeblock attributes 2023-09-15 21:32:28 +02:00
custom_code_classes_in_docs-warning3.stderr Add a note to duplicate diagnostics 2023-10-05 01:04:41 +00:00
custom_code_classes_in_docs-warning.rs Update tests for custom classes 2023-09-19 17:29:39 +02:00
custom_code_classes_in_docs-warning.stderr Update tests for custom classes 2023-09-19 17:29:39 +02:00
deprecated-attrs.rs
deprecated-attrs.stderr
deref-generic.rs
diagnostic-width.rs
diagnostic-width.stderr
doc-alias-assoc-const.rs
doc-alias-assoc-const.stderr
doc-alias-crate-level.rs
doc-alias-crate-level.stderr
doc-alias-same-name.rs
doc-alias-same-name.stderr
doc-cfg.rs
doc-cfg.stderr
doc-include-suggestion.rs
doc-include-suggestion.stderr
feature-gate-custom_code_classes_in_docs.rs Update tests for custom classes 2023-09-19 17:29:39 +02:00
feature-gate-custom_code_classes_in_docs.stderr Update tests for custom classes 2023-09-19 17:29:39 +02:00
feature-gate-doc_cfg_hide.rs
feature-gate-doc_cfg_hide.stderr Make configure_and_expand "infalllible" by just aborting the compilation if it fails instead of bubbling out an error 2023-02-20 15:28:59 +00:00
ice-bug-report-url.rs Fix test output. 2023-07-29 11:42:53 +02:00
ice-bug-report-url.stderr Fix test output. 2023-07-29 11:42:53 +02:00
ignore-block-help.rs
ignore-block-help.stderr
impl-fn-nesting.rs
impl-fn-nesting.stderr Make configure_and_expand "infalllible" by just aborting the compilation if it fails instead of bubbling out an error 2023-02-20 15:28:59 +00:00
infinite-recursive-type.rs
infinite-recursive-type.stderr
invalid_associated_const.rs rustdoc: run more HIR validation to mirror rustc 2023-03-30 14:55:03 +02:00
invalid_associated_const.stderr rustdoc: run more HIR validation to mirror rustc 2023-03-30 14:55:03 +02:00
invalid_const_in_lifetime_position.rs rustdoc: run more HIR validation to mirror rustc 2023-03-30 14:55:03 +02:00
invalid_const_in_lifetime_position.stderr rustdoc: run more HIR validation to mirror rustc 2023-03-30 14:55:03 +02:00
invalid_infered_static_and_const.rs rustdoc: run more HIR validation to mirror rustc 2023-03-30 14:55:03 +02:00
invalid_infered_static_and_const.stderr rustdoc: run more HIR validation to mirror rustc 2023-03-30 14:55:03 +02:00
invalid-cfg.rs
invalid-cfg.stderr
invalid-keyword.rs
invalid-keyword.stderr
invalid-syntax.rs
invalid-syntax.stderr Emit a single error for contiguous sequences of Unicode homoglyphs 2023-01-12 00:15:32 +00:00
invalid-theme-name.rs
invalid-theme-name.stderr
issue-102467.rs Add regression test for #102467 2023-09-24 14:09:38 +02:00
issue-102467.stderr Add regression test for #102467 2023-09-24 14:09:38 +02:00
issue-110629-private-type-cycle-dyn.rs rustdoc: catch and don't blow up on impl Trait cycles 2023-04-29 16:53:02 -07:00
issue-110629-private-type-cycle-dyn.stderr fix issue-110629-private-type-cycle-dyn test 2023-07-19 10:02:15 -04:00
issue-110629-private-type-cycle.rs rustdoc: catch and don't blow up on impl Trait cycles 2023-04-29 16:53:02 -07:00
macro-docs.rs
macro-docs.stderr
macro-docs.stdout
mismatched_arg_count.rs rustdoc: remove excess from rustdoc test 2023-03-30 14:55:03 +02:00
mismatched_arg_count.stderr rustdoc: remove excess from rustdoc test 2023-03-30 14:55:03 +02:00
normalize-cycle.rs
normalize-overflow.rs
output-format-html-stable.rs
proc_macro_bug.rs Test rustdoc encountering proc_macro_derive in a non-proc-macro crate 2023-02-23 09:00:33 +00:00
proc_macro_bug.stderr Test rustdoc encountering proc_macro_derive in a non-proc-macro crate 2023-02-23 09:00:33 +00:00
range-pattern.rs
recursive-deref-ice.rs
rustc-check-passes.rs
rustc-check-passes.stderr
search-index-generics-recursion-bug-issue-59502.rs
track-diagnostics.rs
track-diagnostics.stderr Modify primary span label for E0308 2023-01-30 20:12:19 +00:00
tuple-variadic-check.rs
tuple-variadic-check.stderr
unable-fulfill-trait.rs
unable-fulfill-trait.stderr rustdoc: update UI test for dropping "this" article 2023-02-23 11:59:26 -07:00
unescaped_backticks.rs Still resolving rustdoc resolution panicking 2023-08-18 15:19:17 +08:00
unescaped_backticks.stderr Add a note to duplicate diagnostics 2023-10-05 01:04:41 +00:00
unused-extern-crate.rs
use_both_out_dir_and_output_options.rs
use_both_out_dir_and_output_options.stderr
wasm-safe.rs