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

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-lints Area: Lints supporting the 2018 edition A-lint 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 Area: Lints supporting the 2018 edition C-bug Category: This is a bug. A-lint 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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-edition-2018-lints Area: Lints supporting the 2018 edition A-lint 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

3 participants