Ticket #1 (new defect)
graph operations don't detect duplicate-label errors
|Reported by:||nr||Owned by:||somebody|
Hoopl should detect a situation in which two graphs are spliced and the labels of the blocks overlap. At presesent, Hoopl uses Data.IntSet?.mapUnion and Data.IntSet?.insert, neither of which fails if a duplicate label appears. Graph splicing and other code needs to be modified to panic if labels overlap during splicing. We therefore need something like
unionWithKey (\l _ _ -> panic ("duplicate blocks with label " ++ show l))
and similarly for insertion.