def update_aliases(self, lhs_name, rhs_names):
    """
    Once we've gotten all the RHS names being assigned to the 
    LHS var, we do a recursively lookup into may_alias since
    we may have code like:
      a = tuple(b,c)
      d = tuple(a,e) 
    and we want the alias set of d to be {a,e,b,c}
    """
    if lhs_name not in self.immutable:
      combined_set = self.may_alias[lhs_name]
      for rhs_name in rhs_names:
        if not self.immutable_name(rhs_name):
          combined_set.update(self.may_alias[rhs_name])
      for alias in combined_set:
        self.may_alias[alias] = combined_set
      return combined_set
dataset/ETHPy150Open iskandr/parakeet/parakeet/analysis/escape_analysis.py/EscapeAnalysis.update_aliases/original