-
-
Notifications
You must be signed in to change notification settings - Fork 86
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
unused_parens warning generated #118
Comments
This looks like a strange compiler bug, related to rust-lang/rust#43081. Inserting a Full token streamTokenStream [
Ident {
ident: "impl",
span: #0 bytes(0..0),
},
Ident {
ident: "Resetable",
span: #0 bytes(0..0),
},
Ident {
ident: "for",
span: #0 bytes(0..0),
},
Ident {
ident: "Modifier",
span: #0 bytes(0..0),
},
Group {
delimiter: Brace,
stream: TokenStream [
Ident {
ident: "async",
span: #0 bytes(0..0),
},
Ident {
ident: "fn",
span: #0 bytes(0..0),
},
Ident {
ident: "reset",
span: #0 bytes(0..0),
},
Group {
delimiter: Parenthesis,
stream: TokenStream [
Punct {
ch: '&',
spacing: Alone,
span: #0 bytes(0..0),
},
Ident {
ident: "mut",
span: #0 bytes(0..0),
},
Ident {
ident: "self",
span: #0 bytes(0..0),
},
],
span: #0 bytes(0..0),
},
Group {
delimiter: Brace,
stream: TokenStream [
Ident {
ident: "self",
span: #0 bytes(0..0),
},
Punct {
ch: '.',
spacing: Alone,
span: #0 bytes(0..0),
},
Ident {
ident: "action",
span: #0 bytes(0..0),
},
Punct {
ch: '=',
spacing: Alone,
span: #0 bytes(0..0),
},
Group {
delimiter: Parenthesis,
stream: TokenStream [
Punct {
ch: '|',
spacing: Alone,
span: #0 bytes(0..0),
},
Ident {
ident: "str",
span: #0 bytes(0..0),
},
Punct {
ch: '|',
spacing: Alone,
span: #0 bytes(0..0),
},
Ident {
ident: "str",
span: #0 bytes(0..0),
},
],
span: #0 bytes(0..0),
},
Punct {
ch: ';',
spacing: Alone,
span: #0 bytes(0..0),
},
],
span: #0 bytes(0..0),
},
],
span: #0 bytes(0..0),
},
] Notice in particular this part: Ident {
ident: "self",
span: #0 bytes(0..0),
},
Punct {
ch: '.',
spacing: Alone,
span: #0 bytes(0..0),
},
Ident {
ident: "action",
span: #0 bytes(0..0),
},
Punct {
ch: '=',
spacing: Alone,
span: #0 bytes(0..0),
},
Group {
delimiter: Parenthesis,
stream: TokenStream [
Punct {
ch: '|',
spacing: Alone,
span: #0 bytes(0..0),
},
Ident {
ident: "str",
span: #0 bytes(0..0),
},
Punct {
ch: '|',
spacing: Alone,
span: #0 bytes(0..0),
},
Ident {
ident: "str",
span: #0 bytes(0..0),
},
],
span: #0 bytes(0..0),
}, Rustc inserted unnecessary parentheses around the closure before even calling async_trait, passing the statement as |
I released 0.1.37 which just suppresses the lint as a workaround. |
Now that rust-lang/rust#75734 has been fixed, the lint should no longer fire. |
Hi,
I'm running into an issue wherein I get unused_parens warnings. A reproducible version on the rust playground can be found here.
The code is
If i uncomment the println! on line 24 (on the playground), the warning goes away. Do let me know if you would need any more details with this (or, would like me to try something else). Thanks
The text was updated successfully, but these errors were encountered: