Branches: main
Fix a bug with direct reuse, when a cell dies in multiple branches. After
the branching construct, the dead cell could be reused for a reconstruction
which is compatible with deconstructions in some of the branches, but not
all.
e.g. if a disjunction yields a dead cell with size 2 in one branch and size 1
in another branch, the bug meant that we might reuse that cell for a
construction requiring a size 2 cell.
compiler/structure_reuse.direct.choose_reuse.m:
Fix the bug.
tests/hard_coded/Mercury.options:
tests/hard_coded/Mmakefile:
tests/hard_coded/bad_direct_reuse.exp:
tests/hard_coded/bad_direct_reuse.m:
Add test case.