The logic of run_outcome_with_promise and run_to_termination has only one base view for the whole instruction. This logic is broken if multiple outcomes generate promises in the same instruction. However, in practice that won't happen until we handle async instructions, so I'm just recording this for later. The exact semantics of what happens in that case should be figured-out when that's needed.
The logic of
run_outcome_with_promiseandrun_to_terminationhas only onebaseview for the whole instruction. This logic is broken if multiple outcomes generate promises in the same instruction. However, in practice that won't happen until we handle async instructions, so I'm just recording this for later. The exact semantics of what happens in that case should be figured-out when that's needed.