mlprof bug

Matthew Fluet fluet@CS.Cornell.EDU
Sun, 20 Jan 2002 09:13:02 -0500 (EST)


I ran into an minor mlprof bug with -color.   On one linux box, I've got /
(and /tmp) on an ext2 partition and /home on a ReiserFS partition.  mlprof
colors by reading the .cfg.dot and writing a colorized version to /tmp,
and then executing
(src/lib/mlton/basic/) File.move {from = tmp, to = dotFile}
which invokes OS.FileSys.rename (bound to Posix.FileSys.rename),
and, correctly, fails because the rename is trying to move between file
systems.

Anyways, as far as the basis library is concerned, this is all correct.
But, mlprof fails with the unhelpful message
syserr: xdev: Invalid ???   --- damn, I forget exactly.
What seems a little strange was that wasn't an unhandled exception, and I
couldn't find a handler that would print out that type of message and
exit.

In any event, I understand the desire to use a rename/move rather than a
delete followed by a copy (preserving any symlinks, etc.).  So, the
question becomes whether it should be handled just in mlprof, or maybe
make the semantics of (src/lib/mlton/basic/) File.move more robust to
errors.