Hi there,
I came across a VERY STRANGE bug in GHCi. It is difficult to
pin down.
I send a couple of modules. Running "main" in the module
called Toggle, generates a file called "system.galf". This
is wrong!
At line 14, it says "bool(true).". To generate this, it must
use definitions from the module "Theory.hs" that I have not
even used! In fact, it uses the definition of the function
"isBool" from "Theory.hs", that I do not use anywhere else.
It seems to somehow intertwine the definition of "bool" in
"Theory.hs" and the definition of "toggleSystem2" in
"Toggle.hs", as commenting out lines from "bool" will show.
Using Hugs, we can see that the correct behavior at line 14
is: "toggle2(s(t0)).".
Sorry for the big files, but I could not pin this bug down
in a good way. Feel free to request more information.
/Koen.
bug.tar