rust/src/test/ui/suggestions
Dylan DPC 7dc3ace6a9
Rollup merge of #103706 - zbyrn:issue-101637-fix, r=estebank
Fix E0433 No Typo Suggestions

Fixes #48676
Fixes #87791
Fixes #96625
Fixes #95462
Fixes #101637
Follows up PR #72923

Several open issues refer to the problem that E0433 does not suggest typos like other errors normally do. This fix augments the implementation of PR #72923.

**Background**
When the path of a function call, e.g. `Struct::foo()`, involves names that cannot be resolved, there are two errors that could be emitted by the compiler:
 - If `Struct` is not found, it is ``E0433: failed to resolve: use of undeclared type `Struct` ``.
 - If `foo` is not found in `Struct`, it is ``E0599: no function or associated item named `foo` found for struct `Struct` in the current scope``

When a name is used as a type, `e.g. fn foo() -> Struct`, and the name cannot be resolved, it is ``E0412: cannot find type `Struct` in this scope``.

Before #72923, `E0433` does not implement any suggestions, and the PR introduces suggestions for missing `use`s. When a resolution error occurs in the path of a function call, it tries to smart resolve just the type part of the path, e.g. `module::Struct` of a call to `module::Struct::foo()`. However, along with the suggestions, the smart-resolve function will report `E0412` since it only knows that it is a type that we cannot resolve instead of being a part of the path. So, the original implementation swap out `E0412` errors returned by the smart-resolve function with the real `E0433` error, but keeps the "missing `use`" suggestions to be reported to the programmer.

**Issue**
The current implementation only reports if there are "missing `use`" suggestions returned by the smart-resolve function; otherwise, it would fall back the normal reporting, which does not emit suggestions. But the smart-resolve function could also produce typo suggestions, which are omitted currently.

Also, it seems like that not all info has been swapped out when there are missing suggestions. The error message underlining the name in the snippet still says ``not found in this scope``, which is a `E0412` messages, if there are `use` suggestions, but says the normal `use of undeclared type` otherwise.

**Fixes**
This fix swaps out all fields in `Diagnostic` returned by the smart-resolve function except for `suggestions` with the current error, and merges the `suggestions` of the returned error and that of the current error together. If there are `use` suggestions, the error is saved to `use_injection` to be reported at the end; otherwise, the error is emitted immediately as `Resolver::report_error` does.

Some tests are updated to use the correct underlining error messages, and one additional test for typo suggestion is added to the test suite.

r? rust-lang/diagnostics
2022-11-01 14:12:26 +05:30
..
auxiliary
dont-suggest-doc-hidden-variant-for-enum
dont-suggest-ref
lifetimes Name impl trait in region bound suggestion 2022-10-25 16:37:11 +00:00
abi-typo.fixed
abi-typo.rs
abi-typo.stderr
adt-param-with-implicit-sized-bound.rs
adt-param-with-implicit-sized-bound.stderr
args-instead-of-tuple-errors.rs
args-instead-of-tuple-errors.stderr
args-instead-of-tuple.fixed
args-instead-of-tuple.rs
args-instead-of-tuple.stderr
as-ref-2.rs
as-ref-2.stderr
as-ref.rs
as-ref.stderr
assoc_fn_without_self.rs
assoc_fn_without_self.stderr Delay function resolution error until typeck 2022-10-05 06:42:35 +00:00
assoc-const-as-field.rs
assoc-const-as-field.stderr
assoc-type-in-method-return.rs
assoc-type-in-method-return.stderr
async-fn-ctor-passed-as-arg-where-it-should-have-been-called.rs
async-fn-ctor-passed-as-arg-where-it-should-have-been-called.stderr Generalize call suggestion for unsatisfied predicate 2022-10-19 02:06:19 +00:00
attribute-typos.rs
attribute-typos.stderr
bool_typo_err_suggest.rs
bool_typo_err_suggest.stderr
borrow-for-loop-head.rs
borrow-for-loop-head.stderr
bound-suggestions.fixed
bound-suggestions.rs
bound-suggestions.stderr
box-future-wrong-output.rs
box-future-wrong-output.stderr
boxed-variant-field.rs Suggest .into() when all other coercion suggestions fail 2022-10-05 02:47:31 +00:00
boxed-variant-field.stderr Suggest .into() when all other coercion suggestions fail 2022-10-05 02:47:31 +00:00
call-boxed.rs
call-boxed.stderr
call-on-missing.rs
call-on-missing.stderr
call-on-unimplemented-ctor.rs instantiate -> construct 2022-10-19 02:55:23 +00:00
call-on-unimplemented-ctor.stderr instantiate -> construct 2022-10-19 02:55:23 +00:00
call-on-unimplemented-fn-ptr.rs Generalize call suggestion for unsatisfied predicate 2022-10-19 02:06:19 +00:00
call-on-unimplemented-fn-ptr.stderr Generalize call suggestion for unsatisfied predicate 2022-10-19 02:06:19 +00:00
chain-method-call-mutation-in-place.rs
chain-method-call-mutation-in-place.stderr
const-in-struct-pat.rs
const-in-struct-pat.stderr
const-no-type.rs
const-no-type.stderr
const-pat-non-exaustive-let-new-var.rs
const-pat-non-exaustive-let-new-var.stderr
constrain-suggest-ice.rs
constrain-suggest-ice.stderr
constrain-trait.fixed
constrain-trait.rs
constrain-trait.stderr
copied-and-cloned.fixed
copied-and-cloned.rs
copied-and-cloned.stderr
core-std-import-order-issue-83564.rs
core-std-import-order-issue-83564.stderr Correct inconsistent error messages in tests 2022-10-27 01:36:07 -05:00
count2len.rs
count2len.stderr
crate-or-module-typo.rs
crate-or-module-typo.stderr
deref-path-method.rs
deref-path-method.stderr
derive-clone-for-eq.fixed
derive-clone-for-eq.rs
derive-clone-for-eq.stderr
derive-macro-missing-bounds.rs
derive-macro-missing-bounds.stderr
derive-trait-for-method-call.rs
derive-trait-for-method-call.stderr
do-not-attempt-to-add-suggestions-with-no-changes.rs
do-not-attempt-to-add-suggestions-with-no-changes.stderr
dont-suggest-deref-inside-macro-issue-58298.rs
dont-suggest-deref-inside-macro-issue-58298.stderr
dont-suggest-pin-array-dot-set.rs
dont-suggest-pin-array-dot-set.stderr
dont-suggest-try_into-in-macros.rs
dont-suggest-try_into-in-macros.stderr
dont-try-removing-the-field.rs
dont-try-removing-the-field.stderr
dont-wrap-ambiguous-receivers.rs
dont-wrap-ambiguous-receivers.stderr
enum-method-probe.fixed
enum-method-probe.rs
enum-method-probe.stderr
expected-boxed-future-isnt-pinned.rs
expected-boxed-future-isnt-pinned.stderr
field-access-considering-privacy.rs
field-access-considering-privacy.stderr
field-access.fixed
field-access.rs
field-access.stderr
field-has-method.rs
field-has-method.stderr
fn-ctor-passed-as-arg-where-it-should-have-been-called.rs
fn-ctor-passed-as-arg-where-it-should-have-been-called.stderr Generalize call suggestion for unsatisfied predicate 2022-10-19 02:06:19 +00:00
fn-missing-lifetime-in-item.rs
fn-missing-lifetime-in-item.stderr
fn-needing-specified-return-type-param.rs
fn-needing-specified-return-type-param.stderr
fn-or-tuple-struct-with-underscore-args.rs
fn-or-tuple-struct-with-underscore-args.stderr
fn-or-tuple-struct-without-args.rs
fn-or-tuple-struct-without-args.stderr instantiate -> construct 2022-10-19 02:55:23 +00:00
fn-to-method.rs Suggest calling method if fn does not exist 2022-10-05 06:42:49 +00:00
fn-to-method.stderr Suggest calling method if fn does not exist 2022-10-05 06:42:49 +00:00
fn-trait-notation.fixed
fn-trait-notation.rs
fn-trait-notation.stderr
for-i-in-vec.fixed
for-i-in-vec.rs
for-i-in-vec.stderr
format-borrow.rs
format-borrow.stderr suggest type annotation for local statement initialed by ref expression 2022-10-24 17:16:31 +08:00
if-let-typo.rs
if-let-typo.stderr
if-then-neeing-semi.rs
if-then-neeing-semi.stderr
ignore-nested-field-binding.fixed
ignore-nested-field-binding.rs
ignore-nested-field-binding.stderr
imm-ref-trait-object-literal-bound-regions.rs
imm-ref-trait-object-literal-bound-regions.stderr
imm-ref-trait-object-literal.rs
imm-ref-trait-object-literal.stderr
imm-ref-trait-object.rs
imm-ref-trait-object.stderr
impl-on-dyn-trait-with-implicit-static-bound-needing-more-suggestions.rs
impl-on-dyn-trait-with-implicit-static-bound-needing-more-suggestions.stderr
impl-on-dyn-trait-with-implicit-static-bound.rs
impl-on-dyn-trait-with-implicit-static-bound.stderr
impl-trait-missing-lifetime-gated.rs
impl-trait-missing-lifetime-gated.stderr
impl-trait-missing-lifetime.rs
impl-trait-missing-lifetime.stderr
impl-trait-return-trailing-semicolon.rs
impl-trait-return-trailing-semicolon.stderr
impl-trait-with-missing-bounds.rs
impl-trait-with-missing-bounds.stderr
impl-trait-with-missing-trait-bounds-in-arg.fixed
impl-trait-with-missing-trait-bounds-in-arg.rs
impl-trait-with-missing-trait-bounds-in-arg.stderr
import-trait-for-method-call.rs
import-trait-for-method-call.stderr
inner_type2.rs
inner_type2.stderr
inner_type.fixed
inner_type.rs
inner_type.stderr
into-convert.rs Suggest .into() when all other coercion suggestions fail 2022-10-05 02:47:31 +00:00
into-convert.stderr Suggest .into() when all other coercion suggestions fail 2022-10-05 02:47:31 +00:00
into-str.rs
into-str.stderr
invalid-bin-op.rs
invalid-bin-op.stderr
issue-21673.rs
issue-21673.stderr
issue-51055-missing-semicolon-between-call-and-tuple.rs
issue-51055-missing-semicolon-between-call-and-tuple.stderr
issue-52820.fixed
issue-52820.rs
issue-52820.stderr
issue-53692.fixed
issue-53692.rs
issue-53692.stderr
issue-57672.rs
issue-59819.fixed
issue-59819.rs
issue-59819.stderr
issue-61226.fixed
issue-61226.rs
issue-61226.stderr
issue-61963.rs
issue-61963.stderr
issue-62843.rs
issue-62843.stderr
issue-64252-self-type.rs
issue-64252-self-type.stderr
issue-66968-suggest-sorted-words.rs
issue-66968-suggest-sorted-words.stderr
issue-68049-1.rs
issue-68049-1.stderr
issue-68049-2.rs
issue-68049-2.stderr
issue-71394-no-from-impl.rs
issue-71394-no-from-impl.stderr
issue-72766.rs
issue-72766.stderr
issue-79843-impl-trait-with-missing-bounds-on-async-fn.rs
issue-79843-impl-trait-with-missing-bounds-on-async-fn.stderr
issue-81098.rs
issue-81098.stderr
issue-81839.rs
issue-81839.stderr
issue-82361.fixed
issue-82361.rs
issue-82361.stderr
issue-82566-1.rs
issue-82566-1.stderr
issue-82566-2.rs
issue-82566-2.stderr
issue-83892.fixed
issue-83892.rs
issue-83892.stderr
issue-83943.fixed
issue-83943.rs
issue-83943.stderr
issue-84592.rs
issue-84592.stderr
issue-84700.rs
issue-84700.stderr
issue-84973-2.rs
issue-84973-2.stderr
issue-84973-blacklist.rs
issue-84973-blacklist.stderr
issue-84973-negative.rs
issue-84973-negative.stderr
issue-84973.rs
issue-84973.stderr
issue-85347.rs
issue-85347.stderr
issue-85943-no-suggest-unsized-indirection-in-where-clause.rs
issue-85943-no-suggest-unsized-indirection-in-where-clause.stderr
issue-85945-check-where-clause-before-suggesting-unsized.rs
issue-85945-check-where-clause-before-suggesting-unsized.stderr
issue-86100-tuple-paren-comma.rs
issue-86100-tuple-paren-comma.stderr
issue-86667.rs
issue-86667.stderr
issue-88730.rs
issue-88730.stderr
issue-89064.rs
issue-89064.stderr
issue-89333.rs
issue-89333.stderr
issue-90213-expected-boxfuture-self-ice.rs
issue-90213-expected-boxfuture-self-ice.stderr
issue-90974.rs
issue-90974.stderr
issue-96223.rs
issue-96223.stderr
issue-96555.rs
issue-96555.stderr
issue-97677.fixed
issue-97677.rs
issue-97677.stderr
issue-97704.fixed
issue-97704.rs
issue-97704.stderr
issue-97760.rs
issue-97760.stderr
issue-98500.rs
issue-98500.stderr
issue-99080.rs
issue-99080.stderr
issue-99240-2.rs
issue-99240-2.stderr
issue-99240.rs
issue-99240.stderr
issue-101065.fixed
issue-101065.rs
issue-101065.stderr
issue-101421.rs
issue-101421.stderr
issue-101465.rs
issue-101465.stderr
issue-101623.rs
issue-101623.stderr
issue-101984.rs
issue-101984.stderr
issue-102354.rs diagnostics: add test case for issue 102354 2022-10-25 15:28:02 -07:00
issue-102354.stderr diagnostics: add test case for issue 102354 2022-10-25 15:28:02 -07:00
issue-102892.rs suggest type annotation for local statement initialed by ref expression 2022-10-24 17:16:31 +08:00
issue-102892.stderr suggest type annotation for local statement initialed by ref expression 2022-10-24 17:16:31 +08:00
issue-103112.rs fix #103112, add diagnostic for calling a function with the same name when a Macro is not found 2022-10-20 11:55:30 +08:00
issue-103112.stderr fix span for suggestion 2022-10-20 11:55:30 +08:00
js-style-comparison-op-separate-eq-token.rs
js-style-comparison-op-separate-eq-token.stderr
js-style-comparison-op.fixed
js-style-comparison-op.rs
js-style-comparison-op.stderr
let-binding-init-expr-as-ty.rs
let-binding-init-expr-as-ty.stderr
many-type-ascription.rs
many-type-ascription.stderr
match-ergonomics.rs
match-ergonomics.stderr
match-needing-semi.rs
match-needing-semi.stderr
match-prev-arm-needing-semi.rs
match-prev-arm-needing-semi.stderr
match-with-different-arm-types-as-stmt-instead-of-expr.rs
match-with-different-arm-types-as-stmt-instead-of-expr.stderr
method-missing-parentheses.rs
method-missing-parentheses.stderr
mismatched-types-numeric-from.rs
mismatched-types-numeric-from.stderr
missing-assoc-fn-applicable-suggestions.fixed
missing-assoc-fn-applicable-suggestions.rs
missing-assoc-fn-applicable-suggestions.stderr
missing-assoc-fn.rs
missing-assoc-fn.stderr
missing-assoc-type-bound-restriction.rs
missing-bound-in-derive-copy-impl-2.fixed
missing-bound-in-derive-copy-impl-2.rs
missing-bound-in-derive-copy-impl-2.stderr
missing-bound-in-derive-copy-impl-3.fixed
missing-bound-in-derive-copy-impl-3.rs
missing-bound-in-derive-copy-impl-3.stderr
missing-bound-in-derive-copy-impl.rs
missing-bound-in-derive-copy-impl.stderr
missing-bound-in-manual-copy-impl-2.fixed
missing-bound-in-manual-copy-impl-2.rs
missing-bound-in-manual-copy-impl-2.stderr
missing-bound-in-manual-copy-impl.fixed
missing-bound-in-manual-copy-impl.rs
missing-bound-in-manual-copy-impl.stderr
missing-lifetime-in-assoc-const-type.rs
missing-lifetime-in-assoc-const-type.stderr
missing-lifetime-specifier.rs
missing-lifetime-specifier.stderr
missing-lt-for-hrtb.rs
missing-lt-for-hrtb.stderr
missing-trait-item.fixed
missing-trait-item.rs
missing-trait-item.stderr
missing-type-param-used-in-param.fixed
missing-type-param-used-in-param.rs
missing-type-param-used-in-param.stderr
move-generic-to-trait-in-method-with-params.rs
move-generic-to-trait-in-method-with-params.stderr
multibyte-escapes.rs
multibyte-escapes.stderr
mut-borrow-needed-by-trait.rs
mut-borrow-needed-by-trait.stderr
mut-ref-reassignment.rs
mut-ref-reassignment.stderr
negative-literal-index.fixed
negative-literal-index.rs
negative-literal-index.stderr
nested-non-tuple-tuple-struct.rs
nested-non-tuple-tuple-struct.stderr
no-extern-crate-in-type.rs
no-extern-crate-in-type.stderr
non-existent-field-present-in-subfield-recursion-limit.rs
non-existent-field-present-in-subfield-recursion-limit.stderr
non-existent-field-present-in-subfield.fixed
non-existent-field-present-in-subfield.rs
non-existent-field-present-in-subfield.stderr
object-unsafe-trait-references-self.rs
object-unsafe-trait-references-self.stderr
object-unsafe-trait-should-use-self.rs
object-unsafe-trait-should-use-self.stderr
object-unsafe-trait-should-use-where-sized.fixed
object-unsafe-trait-should-use-where-sized.rs
object-unsafe-trait-should-use-where-sized.stderr
opaque-type-error.rs
opaque-type-error.stderr
option-content-move2.rs
option-content-move2.stderr
option-content-move-from-tuple-match.rs
option-content-move-from-tuple-match.stderr
option-content-move.rs
option-content-move.stderr
parenthesized-deref-suggestion.rs
parenthesized-deref-suggestion.stderr
path-by-value.rs
path-by-value.stderr
path-display.rs
path-display.stderr
pattern-slice-vec.fixed
pattern-slice-vec.rs
pattern-slice-vec.stderr
pattern-struct-with-slice-vec-field.rs
pattern-struct-with-slice-vec-field.stderr
private-field.rs
private-field.stderr
raw-byte-string-prefix.rs
raw-byte-string-prefix.stderr
raw-name-use-suggestion.rs
raw-name-use-suggestion.stderr
recover-from-semicolon-trailing-item.rs
recover-from-semicolon-trailing-item.stderr
recover-invalid-float.fixed
recover-invalid-float.rs
recover-invalid-float.stderr
recover-missing-turbofish-surrounding-angle-braket.rs
recover-missing-turbofish-surrounding-angle-braket.stderr
removal-of-multiline-trait-bound-in-where-clause.rs
removal-of-multiline-trait-bound-in-where-clause.stderr
remove-as_str.rs
remove-as_str.stderr
restrict-type-argument.rs
restrict-type-argument.stderr
restrict-type-not-param.rs
restrict-type-not-param.stderr
return-bindings-multi.rs
return-bindings-multi.stderr
return-bindings.rs
return-bindings.stderr
return-closures.rs
return-closures.stderr
return-cycle-2.rs
return-cycle-2.stderr
return-cycle.rs
return-cycle.stderr
return-elided-lifetime.rs
return-elided-lifetime.stderr
return-without-lifetime.rs
return-without-lifetime.stderr
slice-issue-87994.rs
slice-issue-87994.stderr
struct-field-type-including-single-colon.rs
struct-field-type-including-single-colon.stderr
struct-initializer-comma.fixed
struct-initializer-comma.rs
struct-initializer-comma.stderr
sugg_with_positional_args_and_debug_fmt.rs
sugg_with_positional_args_and_debug_fmt.stderr
sugg-else-for-closure.fixed
sugg-else-for-closure.rs
sugg-else-for-closure.stderr
suggest-add-self.rs
suggest-add-self.stderr
suggest-adding-reference-to-trait-assoc-item.fixed
suggest-adding-reference-to-trait-assoc-item.rs
suggest-adding-reference-to-trait-assoc-item.stderr
suggest-assoc-fn-call-with-turbofish-through-deref.rs
suggest-assoc-fn-call-with-turbofish-through-deref.stderr
suggest-assoc-fn-call-with-turbofish.rs
suggest-assoc-fn-call-with-turbofish.stderr
suggest-blanket-impl-local-trait.rs
suggest-blanket-impl-local-trait.stderr
suggest-borrow-to-dyn-object.rs
suggest-borrow-to-dyn-object.stderr
suggest-box.fixed
suggest-box.rs
suggest-box.stderr
suggest-change-mut.rs
suggest-change-mut.stderr
suggest-closure-return-type-1.rs
suggest-closure-return-type-1.stderr
suggest-closure-return-type-2.rs
suggest-closure-return-type-2.stderr
suggest-closure-return-type-3.rs
suggest-closure-return-type-3.stderr
suggest-dereferencing-index.fixed
suggest-dereferencing-index.rs
suggest-dereferencing-index.stderr
suggest-full-enum-variant-for-local-module.rs
suggest-full-enum-variant-for-local-module.stderr
suggest-imm-mut-trait-implementations.rs
suggest-imm-mut-trait-implementations.stderr
suggest-impl-trait-lifetime.fixed
suggest-impl-trait-lifetime.rs
suggest-impl-trait-lifetime.stderr
suggest-labels.rs
suggest-labels.stderr
suggest-let-for-assignment.fixed fix rust-lang#101880: suggest let for assignment, and some code refactor 2022-10-20 22:54:02 +08:00
suggest-let-for-assignment.rs fix rust-lang#101880: suggest let for assignment, and some code refactor 2022-10-20 22:54:02 +08:00
suggest-let-for-assignment.stderr fix rust-lang#101880: suggest let for assignment, and some code refactor 2022-10-20 22:54:02 +08:00
suggest-methods.rs
suggest-methods.stderr
suggest-move-lifetimes.rs
suggest-move-lifetimes.stderr
suggest-move-types.rs
suggest-move-types.stderr
suggest-mut-method-for-loop-hashmap.fixed
suggest-mut-method-for-loop-hashmap.rs
suggest-mut-method-for-loop-hashmap.stderr
suggest-mut-method-for-loop.rs
suggest-mut-method-for-loop.stderr
suggest-on-bare-closure-call.rs
suggest-on-bare-closure-call.stderr
suggest-ref-macro.rs
suggest-ref-macro.stderr
suggest-ref-mut.rs
suggest-ref-mut.stderr
suggest-remove-refs-1.fixed
suggest-remove-refs-1.rs
suggest-remove-refs-1.stderr
suggest-remove-refs-2.fixed
suggest-remove-refs-2.rs
suggest-remove-refs-2.stderr
suggest-remove-refs-3.fixed
suggest-remove-refs-3.rs
suggest-remove-refs-3.stderr
suggest-semicolon-for-fn-in-extern-block.fixed
suggest-semicolon-for-fn-in-extern-block.rs
suggest-semicolon-for-fn-in-extern-block.stderr
suggest-split-at-mut.rs
suggest-split-at-mut.stderr
suggest-std-when-using-type.fixed
suggest-std-when-using-type.rs
suggest-std-when-using-type.stderr
suggest-swapping-self-ty-and-trait-edition-2021.rs
suggest-swapping-self-ty-and-trait-edition-2021.stderr
suggest-swapping-self-ty-and-trait.rs
suggest-swapping-self-ty-and-trait.stderr
suggest-trait-items.rs
suggest-trait-items.stderr
suggest-tryinto-edition-change.rs Correct inconsistent error messages in tests 2022-10-27 01:36:07 -05:00
suggest-tryinto-edition-change.stderr Correct inconsistent error messages in tests 2022-10-27 01:36:07 -05:00
suggest-using-chars.rs
suggest-using-chars.stderr
suggest-variants.rs
suggest-variants.stderr
too-many-field-suggestions.rs
too-many-field-suggestions.stderr
trait-with-missing-associated-type-restriction-fixable.fixed
trait-with-missing-associated-type-restriction-fixable.rs
trait-with-missing-associated-type-restriction-fixable.stderr
trait-with-missing-associated-type-restriction.rs
trait-with-missing-associated-type-restriction.stderr
try-operator-dont-suggest-semicolon.rs
try-operator-dont-suggest-semicolon.stderr
try-removing-the-field.rs
try-removing-the-field.stderr
type-ascription-and-other-error.rs
type-ascription-and-other-error.stderr
type-ascription-instead-of-let.rs
type-ascription-instead-of-let.stderr
type-ascription-instead-of-method.fixed
type-ascription-instead-of-method.rs
type-ascription-instead-of-method.stderr
type-ascription-instead-of-path-2.fixed
type-ascription-instead-of-path-2.rs
type-ascription-instead-of-path-2.stderr
type-ascription-instead-of-path-in-type.rs
type-ascription-instead-of-path-in-type.stderr
type-ascription-instead-of-path.rs
type-ascription-instead-of-path.stderr
type-ascription-instead-of-variant.fixed
type-ascription-instead-of-variant.rs
type-ascription-instead-of-variant.stderr
type-mismatch-struct-field-shorthand-2.rs
type-mismatch-struct-field-shorthand-2.stderr
type-mismatch-struct-field-shorthand.fixed
type-mismatch-struct-field-shorthand.rs
type-mismatch-struct-field-shorthand.stderr
type-not-found-in-adt-field.rs
type-not-found-in-adt-field.stderr
undeclared-module-alloc.rs
undeclared-module-alloc.stderr
unnamable-types.rs
unnamable-types.stderr
unsized-function-parameter.fixed
unsized-function-parameter.rs
unsized-function-parameter.stderr
unused-closure-argument.rs
unused-closure-argument.stderr
use-placement-resolve.fixed
use-placement-resolve.rs
use-placement-resolve.stderr
use-placement-typeck.fixed
use-placement-typeck.rs
use-placement-typeck.stderr
use-type-argument-instead-of-assoc-type.rs
use-type-argument-instead-of-assoc-type.stderr
while-let-typo.rs
while-let-typo.stderr