We need this so that we can generate a dependency on the
Template Haskell package, becuase the desugarer is going
to emit loads of references to TH symbols. The reference
is implicit rather than explicit, so we have to zap a
mutable variable.

It doesn't matter whether any of these dependencies
are actually used when compiling the module; they
are listed if they are below it at all. For
example, suppose M imports A which imports X. Then
compiling M might not need to consult X.hi, but X
is still listed in M's dependencies.