Use move semantics for branches