Skip to content

Improve error messages from type parameter shadowing #20729

@huonw

Description

@huonw
Member

#20728 gives the absolute minimum information about shadowed type parameters, just telling you there is one, and which it is. The span is the whole method and so is suboptimal (would be better to point to the specific problematic type parameter), and it would be nice to indicate the shadowed type parameter, similar to the shadowed lifetime warning.

Activity

added
A-diagnosticsArea: Messages for errors, warnings, and lints
on Jan 8, 2015
steveklabnik

steveklabnik commented on Jan 4, 2016

@steveklabnik
Member

Traige: src/test/compile-fail/shadowed-type-parameter.rs can be used to reproduce, and the span still shows the whole name.

added
T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.
on Mar 9, 2017
estebank

estebank commented on Apr 20, 2017

@estebank
Contributor

Current output:

error[E0194]: type parameter `T` shadows another type parameter of the same name
  --> <anon>:18:27
   |
15 | trait Bar<T> {
   |           - first `T` declared here
...
18 |     fn shadow_in_required<T>(&self);
   |                           ^ shadows another type parameter
Mark-Simulacrum

Mark-Simulacrum commented on Jun 21, 2017

@Mark-Simulacrum
Member

I believe the current output (same as in previous comment) fixes this. Marking as E-needstest, a UI test (moving src/test/compile-fail/shadowed-type-parameter.rs) would be great. I believe this is an easy task, so marking as such -- I can provide mentoring instructions as needed, let me know.

added
E-easyCall for participation: Easy difficulty. Experience needed to fix: Not much. Good first issue.
E-needs-testCall for participation: An issue has been fixed and does not reproduce, but no test has been added.
on Jun 21, 2017
added a commit that references this issue on Jun 29, 2017
4f12154
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-diagnosticsArea: Messages for errors, warnings, and lintsE-easyCall for participation: Easy difficulty. Experience needed to fix: Not much. Good first issue.E-needs-testCall for participation: An issue has been fixed and does not reproduce, but no test has been added.T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

      Development

      No branches or pull requests

        Participants

        @steveklabnik@huonw@estebank@Mark-Simulacrum

        Issue actions

          Improve error messages from type parameter shadowing · Issue #20729 · rust-lang/rust