diff --git a/paddle/pir/src/dialect/shape/utils/constraints_manager.cc b/paddle/pir/src/dialect/shape/utils/constraints_manager.cc index ca9e9999c6fdf1..68e33e0a3a8213 100644 --- a/paddle/pir/src/dialect/shape/utils/constraints_manager.cc +++ b/paddle/pir/src/dialect/shape/utils/constraints_manager.cc @@ -236,11 +236,10 @@ void ConstraintsManager::SubstituteInConstraint(const DimExpr& origin, substitution_pattern[origin] = substituted; EqualConstraints substituted_equals; - auto substituted_equals_map = substituted_equals.GetMap(); EqualConstraintsVisitor([&](auto it) { DimExpr key = SubstituteDimExpr(it->first, substitution_pattern); DimExpr value = SubstituteDimExpr(it->second, substitution_pattern); - (*substituted_equals_map)[key] = value; + substituted_equals.Union(key, value); }); equals_ = substituted_equals;