Skip to content
  • Simon Marlow's avatar
    Fix a bug to do with recursive modules in one-shot mode · d83e1ac4
    Simon Marlow authored
    The problem was that when loading interface files in checkOldIface, we
    were not passing the If monad the mutable variable for use when
    looking up entities in the *current* module, with the result that the
    knots wouldn't be tied properly, and some instances of TyCons would
    be incorrectly abstract.
    This bug has subtle effects: for example, recompiling a module without
    making any changes might lead to a slightly different result (noticed
    due to the new interface-file fingerprints).  The bug doesn't lead to
    any direct failures that we're aware of.