[MLton] bug in refFlatten

Matthew Fluet fluet@cs.cornell.edu
Thu, 14 Apr 2005 19:23:22 -0400 (EDT)

There appears to be a subtle bug in the refFlatten pass.  The pass seems
to be sensitive to the ordering of functions in the SSA2 program
representation.  While it would be o.k. (though, less than ideal) to get
different results depending on the order of functions, in this situation, 
the semantics of the resulting program changes.

The bug is exhibitted by ref-flatten.sml from the regression suite.  To 
trigger the bug, write a simple SSA2 that simply reverses the order of 
functions in the program representation.  Run this pass immediately before 
the refFlatten pass.  The program prints 13 instead of 44.