Skip to content
New issue

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

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

Already on GitHub? # to your account

duplicate_macro_exports lint says it will be a hard error in 2018 but it is still a lint #61221

Closed
ehuss opened this issue May 26, 2019 · 3 comments
Labels
A-edition-2018 Area: The 2018 edition A-lints Area: Lints (warnings about flaws in source code) such as unused_mut. A-macros Area: All kinds of macros (custom derive, macro_rules!, proc macros, ..) C-bug Category: This is a bug. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.

Comments

@ehuss
Copy link
Contributor

ehuss commented May 26, 2019

duplicate_macro_exports is marked as a future incompatible lint. However, it was never made a hard error, so in 2018 you still get the note:

this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2018 edition!

and points to a closed issue.

If I am understanding the terminology correctly, there is a difference between a "hard error" and a "deny by default lint" where a hard error cannot be disabled, correct?

AFAIK, this is the only future incompatible lint (with a specified edition) that does not have a hard error implemented.

I'm not sure if this is intentional or tracked anywhere (I can't find any). It's a minor pedantic issue, since it is deny-by-default, it seems unlikely to be a problem. I'm not sure if it should be left as-is, make it a hard error in 2018, or remove the edition from the future note.

cc @petrochenkov

@petrochenkov
Copy link
Contributor

I remember making it a deny-by-default lint, but don't remember making it edition-dependent (this is a part of macro modularization, which happened on both editions), perhaps it was an accidental copy-paste.

I'd be ok with making it an error after a crater run.

@jonas-schievink jonas-schievink added A-edition-2018-lints C-bug Category: This is a bug. A-lints Area: Lints (warnings about flaws in source code) such as unused_mut. labels Jul 28, 2019
@jonas-schievink jonas-schievink added A-macros Area: All kinds of macros (custom derive, macro_rules!, proc macros, ..) T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. labels Apr 21, 2020
@jonas-schievink
Copy link
Contributor

This is now a hard error from what I can tell.

@ehuss
Copy link
Contributor Author

ehuss commented Apr 21, 2020

Was converted to an error in #65785.

@fmease fmease added A-edition-2018 Area: The 2018 edition A-lints Area: Lints (warnings about flaws in source code) such as unused_mut. and removed A-lints Area: Lints (warnings about flaws in source code) such as unused_mut. A-edition-2018-lints labels Dec 21, 2024
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
A-edition-2018 Area: The 2018 edition A-lints Area: Lints (warnings about flaws in source code) such as unused_mut. A-macros Area: All kinds of macros (custom derive, macro_rules!, proc macros, ..) C-bug Category: This is a bug. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.
Projects
None yet
Development

No branches or pull requests

4 participants