os-rust/tests/ui/type
Matthias Krüger 54bd3a7b8d
Rollup merge of #127301 - estebank:fix-suggestions, r=Urgau
Tweak some structured suggestions to be more verbose and accurate

Addressing some issues I found while working on #127282.
```
error: this URL is not a hyperlink
  --> $DIR/auxiliary/include-str-bare-urls.md:1:11
   |
LL | HEADS UP! https://example.com MUST SHOW UP IN THE STDERR FILE!
   |           ^^^^^^^^^^^^^^^^^^^
   |
   = note: bare URLs are not automatically turned into clickable links
note: the lint level is defined here
  --> $DIR/include-str-bare-urls.rs:14:9
   |
LL | #![deny(rustdoc::bare_urls)]
   |         ^^^^^^^^^^^^^^^^^^
help: use an automatic link instead
   |
LL | HEADS UP! <https://example.com> MUST SHOW UP IN THE STDERR FILE!
   |           +                   +
```
```
error[E0384]: cannot assign twice to immutable variable `v`
  --> $DIR/assign-imm-local-twice.rs:7:5
   |
LL |     v = 1;
   |     ----- first assignment to `v`
LL |     println!("v={}", v);
LL |     v = 2;
   |     ^^^^^ cannot assign twice to immutable variable
   |
help: consider making this binding mutable
   |
LL |     let mut v: isize;
   |         +++
```
```
error[E0393]: the type parameter `Rhs` must be explicitly specified
  --> $DIR/issue-22560.rs:9:23
   |
LL | trait Sub<Rhs=Self> {
   | ------------------- type parameter `Rhs` must be specified for this
...
LL | type Test = dyn Add + Sub;
   |                       ^^^
   |
   = note: because of the default `Self` reference, type parameters must be specified on object types
help: set the type parameter to the desired type
   |
LL | type Test = dyn Add + Sub<Rhs>;
   |                          +++++
```
```
error[E0596]: cannot borrow `v` as mutable, as it is not declared as mutable
  --> $DIR/issue-33819.rs:4:34
   |
LL |         Some(ref v) => { let a = &mut v; },
   |                                  ^^^^^^ cannot borrow as mutable
   |
help: try removing `&mut` here
   |
LL -         Some(ref v) => { let a = &mut v; },
LL +         Some(ref v) => { let a = v; },
   |
```
```
help: remove the invocation before committing it to a version control system
   |
LL -     dbg!();
   |
```
```
error[E0308]: mismatched types
  --> $DIR/issue-39974.rs:1:21
   |
LL | const LENGTH: f64 = 2;
   |                     ^ expected `f64`, found integer
   |
help: use a float literal
   |
LL | const LENGTH: f64 = 2.0;
   |                      ++
```
```
error[E0529]: expected an array or slice, found `Vec<i32>`
  --> $DIR/match-ergonomics.rs:8:9
   |
LL |         [&v] => {},
   |         ^^^^ pattern cannot match with input type `Vec<i32>`
   |
help: consider slicing here
   |
LL |     match x[..] {
   |            ++++
```
```
error[E0609]: no field `0` on type `[u32; 1]`
  --> $DIR/parenthesized-deref-suggestion.rs:10:21
   |
LL |     (x as [u32; 1]).0;
   |                     ^ unknown field
   |
help: instead of using tuple indexing, use array indexing
   |
LL |     (x as [u32; 1])[0];
   |                    ~ +
```
2024-07-04 18:16:24 +02:00
..
ascription [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
auxiliary
pattern_types Rename HIR TypeBinding to AssocItemConstraint and related cleanup 2024-05-30 22:52:33 +02:00
type-check Check closure args and returns are WF 2024-04-25 10:03:17 -04:00
binding-assigned-block-without-tail-expression.rs
binding-assigned-block-without-tail-expression.stderr
clarify-error-for-generics-with-default-issue-120785.rs Update item order in test 2024-02-28 19:28:34 -05:00
clarify-error-for-generics-with-default-issue-120785.stderr Update item order in test 2024-02-28 19:28:34 -05:00
closure-with-wrong-borrows.rs
closure-with-wrong-borrows.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
issue-7607-1.rs Move some tests 2024-04-21 15:43:43 -03:00
issue-7607-1.stderr Move some tests 2024-04-21 15:43:43 -03:00
issue-7607-2.rs Move some tests 2024-04-21 15:43:43 -03:00
issue-58355.rs
issue-58355.stderr Provide more context on derived obligation error primary label 2024-01-30 21:28:18 +00:00
issue-67690-type-alias-bound-diagnostic-crash.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
issue-67690-type-alias-bound-diagnostic-crash.stderr
issue-91268.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
issue-91268.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
issue-94187-verbose-type-name.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
issue-100584.rs
issue-100584.stderr
issue-101866.rs
issue-101866.stderr Deduplicate more sized errors on call exprs 2024-01-24 02:53:15 +00:00
issue-102598.rs
issue-102598.stderr
issue-103271.rs
issue-103271.stderr
missing-let-in-binding-2.fixed [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
missing-let-in-binding-2.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
missing-let-in-binding-2.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
missing-let-in-binding-3.rs fix ice in suggesting 2023-05-08 11:16:17 +08:00
missing-let-in-binding-3.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
missing-let-in-binding-4.rs code refactor and fix wrong suggestion 2023-05-08 14:56:36 +08:00
missing-let-in-binding-4.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
missing-let-in-binding.fixed [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
missing-let-in-binding.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
missing-let-in-binding.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
option-ref-advice.rs Rename tests/ui/issues/issue-100605.rs to ../type/option-ref-advice.rs 2023-08-05 15:36:19 +02:00
option-ref-advice.stderr Rename tests/ui/issues/issue-100605.rs to ../type/option-ref-advice.rs 2023-08-05 15:36:19 +02:00
type-alias-bounds.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
type-alias-bounds.stderr
type-annotation-needed.rs
type-annotation-needed.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
type-arg-out-of-scope.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
type-arg-out-of-scope.stderr Generalize E0401 2023-09-10 23:06:14 +02:00
type-ascription-instead-of-initializer.rs
type-ascription-instead-of-initializer.stderr Detect more cases of = to : typo 2024-03-01 02:03:00 +00:00
type-ascription-instead-of-statement-end.rs Rip it out 2023-05-01 16:15:13 +08:00
type-ascription-instead-of-statement-end.stderr soften the wording for removing type ascription 2023-05-01 16:37:00 +08:00
type-ascription-precedence.rs fix test cases 2023-05-01 16:15:17 +08:00
type-ascription-precedence.stderr fix test cases 2023-05-01 16:15:17 +08:00
type-ascription-soundness.rs
type-ascription-soundness.stderr
type-ascription-with-fn-call.fixed [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
type-ascription-with-fn-call.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
type-ascription-with-fn-call.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
type-ascription.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
type-check-defaults.rs
type-check-defaults.stderr Spell out other trait diagnostic 2024-06-12 12:34:47 +00:00
type-dependent-def-issue-49241.rs Suppress "erroneous constant used" for constants tainted by errors 2023-05-15 00:00:00 +00:00
type-dependent-def-issue-49241.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
type-error-break-tail.rs
type-error-break-tail.stderr Tweak value suggestions in borrowck and hir_analysis 2024-04-09 23:37:13 +00:00
type-mismatch-multiple.rs
type-mismatch-multiple.stderr
type-mismatch-same-crate-name.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
type-mismatch-same-crate-name.stderr
type-mismatch.rs
type-mismatch.stderr recurse into refs when comparing tys for diagnostics 2023-12-07 23:00:46 -05:00
type-parameter-defaults-referencing-Self-ppaux.rs
type-parameter-defaults-referencing-Self-ppaux.stderr On object safety error, mention new enum as alternative 2023-10-29 23:55:46 +00:00
type-parameter-defaults-referencing-Self.rs
type-parameter-defaults-referencing-Self.stderr Better suggestion span for missing type parameter 2024-07-04 02:41:13 +00:00
type-parameter-names.rs
type-parameter-names.stderr Note that type param is chosen by caller when suggesting return impl Trait 2024-03-16 23:20:42 +00:00
type-params-in-different-spaces-1.rs
type-params-in-different-spaces-1.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
type-params-in-different-spaces-2.rs
type-params-in-different-spaces-2.stderr
type-params-in-different-spaces-3.rs
type-params-in-different-spaces-3.stderr Note that type param is chosen by caller when suggesting return impl Trait 2024-03-16 23:20:42 +00:00
type-path-err-node-types.rs
type-path-err-node-types.stderr refactor(resolve): clean up the early error return caused by non-call 2023-05-10 22:35:01 +08:00
type-recursive-box-shadowed.rs
type-recursive-box-shadowed.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
type-recursive.rs
type-recursive.stderr
type-shadow.rs
type-shadow.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
type-unsatisfiable.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
type-unsatisfiable.usage.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
verbose.normal.stderr don't elide shared parts of types in diagnostics when --verbose is passed 2023-12-24 16:47:18 -05:00
verbose.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
verbose.verbose.stderr don't elide shared parts of types in diagnostics when --verbose is passed 2023-12-24 16:47:18 -05:00
wrong-call-return-type-due-to-generic-arg.rs
wrong-call-return-type-due-to-generic-arg.stderr diagnostics: update test cases to refer to assoc fn with self as method 2023-02-22 08:40:47 -07:00