intermodule optimization bug

Fergus Henderson fjh at cs.mu.OZ.AU
Sun Feb 15 02:46:31 AEDT 1998


When compiling with intermodule optimization enabled,
private equivalence types in imported modules are visible,
so previously abstract types may become concrete.
This happens before semantic checking, so it affects whether
or not the compiler reports type errors.  Clearly it can
make type errors go away.  Less obvious is the fact that it
can also introduce ambiguity errors into code that would
otherwise be ambiguity-free. 

This bug causes the compiler to fail to bootstrap when compiled
with options `--intermodule-optimization -O4'.

-- 
Fergus Henderson <fjh at cs.mu.oz.au>   |  "I have always known that the pursuit
WWW: <http://www.cs.mu.oz.au/~fjh>   |  of excellence is a lethal habit"
PGP: finger fjh at 128.250.37.3         |     -- the last words of T. S. Garp.



More information about the developers mailing list