[project @ 2001-03-19 16:13:22 by simonpj]
authorsimonpj <unknown>
Mon, 19 Mar 2001 16:13:23 +0000 (16:13 +0000)
committersimonpj <unknown>
Mon, 19 Mar 2001 16:13:23 +0000 (16:13 +0000)
commit17d765ce13bf28d9b79672a567d7faf28c822c76
tree236c084bf3d1c97baa9cbbffc91dfb2d7ad841aa
parentbc83a34d48b33181fc06365ff2a67ee8d8e568cb
[project @ 2001-03-19 16:13:22 by simonpj]
-------------------------------
Improve orphan-module resolution
-------------------------------

Consider the following rule (and there are lots of these in
the Prelude):

fromIntegral T = fromIntegral_T

where T is defined in the module being compiled.

is an orphan.  Of course it isn't, an declaring it an orphan would
make the whole module an orphan module, which is bad.

This commit arranges to determine orphan rules, and the orphan-hood
of a module, much later than before.  (Before mi_orphan was set by
the renamer, now it is set by MkIface.)
ghc/compiler/coreSyn/CoreFVs.lhs
ghc/compiler/coreSyn/CoreTidy.lhs
ghc/compiler/main/HscMain.lhs
ghc/compiler/main/MkIface.lhs
ghc/compiler/rename/Rename.lhs
ghc/compiler/specialise/Rules.lhs