Skip to content

Commit

Permalink
Rollup merge of rust-lang#128412 - compiler-errors:crate-level-only, …
Browse files Browse the repository at this point in the history
…r=cjgillot

Remove `crate_level_only` from `ELIDED_LIFETIMES_IN_PATHS`

As far as I can tell, we provide the right node id to the `ELIDED_LIFETIMES_IN_PATHS` lint:

https://github.com/rust-lang/rust/blob/f8060d282d42770fadd73905e3eefb85660d3278/compiler/rustc_resolve/src/late.rs#L2015-L2027

So I've gone ahead and removed the restriction from this lint.
  • Loading branch information
matthiaskrgr authored Jul 31, 2024
2 parents e2d8f1a + e657773 commit 06b8372
Show file tree
Hide file tree
Showing 3 changed files with 32 additions and 2 deletions.
3 changes: 1 addition & 2 deletions compiler/rustc_lint_defs/src/builtin.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1834,8 +1834,7 @@ declare_lint! {
/// [placeholder lifetime]: https://doc.rust-lang.org/reference/lifetime-elision.html#lifetime-elision-in-functions
pub ELIDED_LIFETIMES_IN_PATHS,
Allow,
"hidden lifetime parameters in types are deprecated",
crate_level_only
"hidden lifetime parameters in types are deprecated"
}

declare_lint! {
Expand Down
11 changes: 11 additions & 0 deletions tests/ui/lifetimes/elided-lint-in-mod.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
struct Foo<'a>(&'a ());

fn test(_: Foo) {}

#[deny(elided_lifetimes_in_paths)]
mod w {
fn test2(_: super::Foo) {}
//~^ ERROR hidden lifetime parameters in types are deprecated
}

fn main() {}
20 changes: 20 additions & 0 deletions tests/ui/lifetimes/elided-lint-in-mod.stderr
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
error: hidden lifetime parameters in types are deprecated
--> $DIR/elided-lint-in-mod.rs:7:24
|
LL | fn test2(_: super::Foo) {}
| -------^^^
| |
| expected lifetime parameter
|
note: the lint level is defined here
--> $DIR/elided-lint-in-mod.rs:5:8
|
LL | #[deny(elided_lifetimes_in_paths)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^
help: indicate the anonymous lifetime
|
LL | fn test2(_: super::Foo<'_>) {}
| ++++

error: aborting due to 1 previous error

0 comments on commit 06b8372

Please sign in to comment.