-
Notifications
You must be signed in to change notification settings - Fork 13.6k
Open
Labels
A-lintsArea: Lints (warnings about flaws in source code) such as unused_mut.Area: Lints (warnings about flaws in source code) such as unused_mut.A-proc-macro-back-compatArea: Backwards compatibility hacks for proc macrosArea: Backwards compatibility hacks for proc macrosA-proc-macrosArea: Procedural macrosArea: Procedural macrosC-future-incompatibilityCategory: Future-incompatibility lintsCategory: Future-incompatibility lintsC-tracking-issueCategory: An issue tracking the progress of sth. like the implementation of an RFCCategory: An issue tracking the progress of sth. like the implementation of an RFCT-compilerRelevant to the compiler team, which will review and decide on the PR/issue.Relevant to the compiler team, which will review and decide on the PR/issue.T-langRelevant to the language teamRelevant to the language team
Description
This is a lint for code like
struct S;
mod m {
type A = S;
}
when it comes from a derive macro.
The code should obviously not compile because S
is not in scope at its point of use, but before #51952 it compiled if the code was produced by a derive macro, and some popular crates like actix_derive
, diesel_derives
and palette_derive
exploited this in the wild.
This deprecation lint was added in #51952 as warn-by-default.
Wandalen
Metadata
Metadata
Assignees
Labels
A-lintsArea: Lints (warnings about flaws in source code) such as unused_mut.Area: Lints (warnings about flaws in source code) such as unused_mut.A-proc-macro-back-compatArea: Backwards compatibility hacks for proc macrosArea: Backwards compatibility hacks for proc macrosA-proc-macrosArea: Procedural macrosArea: Procedural macrosC-future-incompatibilityCategory: Future-incompatibility lintsCategory: Future-incompatibility lintsC-tracking-issueCategory: An issue tracking the progress of sth. like the implementation of an RFCCategory: An issue tracking the progress of sth. like the implementation of an RFCT-compilerRelevant to the compiler team, which will review and decide on the PR/issue.Relevant to the compiler team, which will review and decide on the PR/issue.T-langRelevant to the language teamRelevant to the language team
Type
Projects
Status
Idea