Compute boot-defined TyCon names from ModIface.
authorEdward Z. Yang <ezyang@cs.stanford.edu>
Sun, 3 Jul 2016 01:08:55 +0000 (18:08 -0700)
committerEdward Z. Yang <ezyang@cs.stanford.edu>
Tue, 26 Jul 2016 23:10:45 +0000 (16:10 -0700)
commit8f63ba30b170c7063640b789ce703f68dca2c21b
tree23e3b52b1ab17132cf70af4d645c19082b974714
parent9d62f0d1086ad5c112b41a0ddae10c20e8ffb77e
Compute boot-defined TyCon names from ModIface.

Summary:
Three things in this commit:

    1. Get rid of sb_ids; we are not going to use them
    to avoid infinite unfoldings in hs-boot files.

    2. Compute sb_tcs from ModIface rather than ModDetails.
    This means that the typechecker can look at this field
    without forcing the boot ModDetails, which would be
    bad if the ModDetails is not available yet (due to
    knot tying.)

    3. A big honking comment explaining what is going on
    here.

Signed-off-by: Edward Z. Yang <ezyang@cs.stanford.edu>
Reviewers: simonpj, austin, bgamari

Subscribers: thomie

Differential Revision: https://phabricator.haskell.org/D2380
compiler/iface/TcIface.hs
compiler/rename/RnSource.hs
compiler/typecheck/TcRnTypes.hs