func (b *Block) SetNext(o *Block) {
	if b.Next != nil && b.Next.ID != o.ID {
		panic(fmt.Sprintf("%s.Next already set to %s, now setting to %s",
			b.ID, b.Next.ID, o.ID))
	}
	b.Next = o
	o.addFrom(b)
}
SetNext sets the next basic block.
package ssa
import (
	"fmt"
	"io"
	"strings"
	"github.com/markkurossi/mpc/types"
)
type Block struct {
	ID         string
	Name       string
	From       []*Block
	Next       *Block
	BranchCond Value
	Branch     *Block
	Instr      []Instr
	Bindings   *Bindings
	Dead       bool
	Processed  bool
}
func (b *Block) String() string {
	return b.ID
}
func (b *Block) Equals(o *Block) bool {
	return b.ID == o.ID
}