jhc vs ghc and the surprising result involving ghc generated
fw at deneb.enyo.de
Tue Nov 1 11:30:55 EST 2005
* John Meacham:
> if () goto loop;
> is not equivalent to a do-while loop, loop invarients cannot be hoisted out of
> the above for instance (except in some cases... it is all quite tricky and we
> want gcc to have as much freedom as possible).
do-while loops are converted to this form by the compiler (as of
version 4, use the -fdump-tree-* to see the IL), so the problems you
are observing must be caused by something different.
> use C control constructs rather than gotos.
With GCC version 4, this will have no effect because the gimplifier
converts everything to goto-style anyway.
More information about the Glasgow-haskell-users