DCE was deleting an allocation with only destroy_value users. This isn't correct when the deinit can have a side effect. This should be handled in DeadObjectElimination which does additional analysis on deinit to determine if a dead allocation can be eliminated.
DCE was deleting an allocation with only destroy_value users. This isn't correct when the deinit can have a side effect. This should be handled in DeadObjectElimination which does additional analysis on deinit to determine if a dead allocation can be eliminated.