-
Notifications
You must be signed in to change notification settings - Fork 12.8k
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
internal compiler error: failed to process buffered lint here #81531
Comments
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
Minimized: macro_rules! foo {
() => { true; }
}
async fn func() {
let _ = foo!();
}
fn main() {} Caused by #79819 |
When we run rust/compiler/rustc_resolve/src/def_collector.rs Lines 124 to 130 in b122908
As a result, the |
Nightly has been broken for 3 days, if there's disagreement on how to fix the issue, can we revert #79819 while the fix is being worked on? |
This will be fixed by PR #81541 |
…ochenkov Fix early lints inside an async desugaring Fixes rust-lang#81531 When we buffer an early lint for a macro invocation, we need to determine which NodeId to take the lint level from. Currently, we use the NodeId of the closest def parent. However, if the macro invocation is inside the desugared closure from an `async fn` or async closure, that NodeId does not actually exist in the AST. This commit uses the parent of a desugared closure when computing `lint_node_id`, which is something that actually exists in the AST (an `async fn` or async closure).
I'm still hitting this bug with the latest nightly. use futures::prelude::*;
use failure::bail;
fn main() {
let _: std::pin::Pin<Box<dyn futures::Future<Output = Result<(), failure::Error>>>> = (async move {
bail!("")
}).boxed_local();
} |
Add semicolon after warn Work around error appearing in Rust nightly 2021-01-30 (rust-lang/rust#81531, rust-lang/rust#81724)
Code
I don't have a minimal example yet, but here's the code. Sample:
The ICE happens on the
warn!
anderror!
macros, which are both from thelog
crate.Meta
This began with commit 74500b9.
Error output
Backtrace
The text was updated successfully, but these errors were encountered: