diff --git a/src/mir/join_ir/lowering/scope_manager.rs b/src/mir/join_ir/lowering/scope_manager.rs index a2d289da..e1f25823 100644 --- a/src/mir/join_ir/lowering/scope_manager.rs +++ b/src/mir/join_ir/lowering/scope_manager.rs @@ -179,7 +179,12 @@ impl<'a> ScopeManager for Pattern2ScopeManager<'a> { } // 4. Promoted LoopBodyLocal → Carrier lookup(命名規約は CarrierInfo 側に集約) - self.carrier_info.resolve_promoted_join_id(name) + // Phase 77: promoted_bindings は導入済みだが、ここ(ScopeManager::lookup)は依然として + // “name-only” 入力なので、legacy の name-based promoted 解決を残す。 + #[allow(deprecated)] + { + self.carrier_info.resolve_promoted_join_id(name) + } } fn scope_of(&self, name: &str) -> Option { @@ -261,8 +266,6 @@ impl<'a> ScopeManager for Pattern2ScopeManager<'a> { /// promoters populate promoted_bindings map and all call sites provide BindingId. #[cfg(feature = "normalized_dev")] fn lookup_with_binding(&self, binding_id: Option, name: &str) -> Option { - use crate::mir::BindingId; - if let Some(bid) = binding_id { // Step 1: Try direct BindingId lookup in ConditionEnv (Phase 75) if let Some(value_id) = self.condition_env.resolve_var_with_binding(Some(bid), name) {