Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

in which we decline to suggest the anonymous lifetime in declarations #61679

Merged

Commits on Jun 14, 2019

  1. in which we decline to suggest the anonymous lifetime in declarations

    The elided-lifetimes-in-path lint (part of our suite of Rust 2018
    idiom lints which we are hoping to promote to Warn status) was firing
    with an illegal suggestion to write an anonymous lifetime in a
    struct/item declaration (where we don't allow it). The linting code
    was already deciding whether to act on the basis of a `ParamMode`
    enum, indicating whether the present path-segment was part of an
    expression, or anywhere else. The present case seemed to be part of
    the "anywhere else", and yet meriting different rules as far as the
    lint was concerned, so it seemed expedient to introduce a new enum
    member. We yank out a `TyKind::Path` arm into its own method so that
    we can call it with our new `ParamMode` specifically when lowering
    struct fields. (The alternative strategy of changing the signature of
    `lower_ty` to take a `ParamMode` would be inelegant given that most of
    the `TyKind` match arm bodies therein don't concern themselves with
    `ParamMode`.)
    
    Resolves rust-lang#61124.
    zackmdavis committed Jun 14, 2019
    Configuration menu
    Copy the full SHA
    7a3184a View commit details
    Browse the repository at this point in the history