let combinePredecessors _stmt ~old new_ =
    if new_ = State.Start then
      R.error "forward traversal shouldn't go through Start, stmt %d, prev %a !"
        _stmt.sid State.pretty old;
    State.test_and_merge ~old new_