提交 51648848 编写于 作者: L Loïc BRANSTETT

Fix invalid lint_node_id being put on a removed stmt

上级 2f8d1a83
......@@ -1841,7 +1841,7 @@ fn flat_map_generic_param(
self.flat_map_node(node)
}
fn flat_map_stmt(&mut self, mut node: ast::Stmt) -> SmallVec<[ast::Stmt; 1]> {
fn flat_map_stmt(&mut self, node: ast::Stmt) -> SmallVec<[ast::Stmt; 1]> {
// FIXME: invocations in semicolon-less expressions positions are expanded as expressions,
// changing that requires some compatibility measures.
if node.is_expr() {
......@@ -1863,7 +1863,7 @@ fn flat_map_generic_param(
self.cx.current_expansion.is_trailing_mac = false;
res
}
_ => assign_id!(self, &mut node.id, || noop_flat_map_stmt(node, self)),
_ => noop_flat_map_stmt(node, self),
};
}
......
// This test checks that there is no ICE with this code
//
// check-pass
// compile-flags:--check-cfg=names() -Z unstable-options
fn main() {
#[cfg(crossbeam_loom)]
//~^ WARNING unexpected `cfg` condition name
{}
}
warning: unexpected `cfg` condition name
--> $DIR/stmt-no-ice.rs:7:11
|
LL | #[cfg(crossbeam_loom)]
| ^^^^^^^^^^^^^^
|
= note: `#[warn(unexpected_cfgs)]` on by default
warning: 1 warning emitted
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册