[[project @ 2002-11-18 14:57:09 by simonpj]
simonpj**20021118145709
Record some known bugs
] {
hunk ./ghc/docs/users_guide/bugs.sgml 274
-
Known bugs
+ Known bugs or infelicities
hunk ./ghc/docs/users_guide/bugs.sgml 276
-GHC has the following known bugs:
+GHC has the following known bugs or infelicities:
hunk ./ghc/docs/users_guide/bugs.sgml 279
+Dangers with multiple Main modules.
+
+
+ GHC does not insist that module Main lives in a file called Main.hs.
+ This is useful if you want multiple versions of Main. But there's a danger: when
+ compiling module Main (regardless of what file it comes from), GHC looks for
+ the interface Main.hi; it uses this to get version information from the last
+ time it recompiled Main. The trouble is that this Main.hi
+ may not correspond to the source file being compiled.
+
+
+ Solution: remove Main.hi first. A better solution would be for GHC to
+ record the source-file filename in the interface file, or even an MD5 checksum.
+
+
+
+
+
+GHCi does not respect the default declaration in the module whose
+scope you are in. Instead, for expressions typed at the command line, you always
+get the default default-type behaviour; that is, default(Int,Double).
+
+
+It would be better for GHCi to record what the default settings in each module are, and
+use those of the 'current' module (whatever that is).
+
+
+
+GHCi does not keep careful track of what instance declarations are 'in scope' if they
+come from other packages.
+Instead, all instance declarations that GHC has seen in other packages are all in scope
+everywhere, whether or not the module from that package is used by the command-line expression.
+
+
}