fix: 编译缓存键递归纳入解构形态绑定名

This commit is contained in:
2026-10-10 07:17:35 +00:00
parent 3cc811e730
commit 17e5992dcc
7 changed files with 217 additions and 38 deletions
+2 -3
View File
@@ -58,9 +58,8 @@ pub(super) fn hash_expression(expr: &Expression, h: &mut rustc_hash::FxHasher, i
}
Expression::AssignmentExpression(assign) => {
std::mem::discriminant(&assign.operator).hash(h);
if let Some(target) = assign.left.as_simple_assignment_target() {
target::hash_simple_assignment_target(target, h, include_binding_names);
}
// 全量分派:简单目标与数组/对象解构目标都计入,左值整体不得漏哈希。
target::hash_assignment_target(&assign.left, h, include_binding_names);
hash_expression(&assign.right, h, include_binding_names);
}
Expression::UpdateExpression(update) => {