summaryrefslogtreecommitdiff
path: root/compiler/GHC/Unit/Module/ModGuts.hs
diff options
context:
space:
mode:
authorMatthew Pickering <matthewtpickering@gmail.com>2021-06-01 16:11:37 +0100
committerMarge Bot <ben+marge-bot@smart-cactus.org>2021-06-02 16:24:27 -0400
commitb66cf8ad218264593efc8bceddc86c53ce89bbeb (patch)
tree3ef17dec7854d6b7b7b6890293113c16f57d2a7b /compiler/GHC/Unit/Module/ModGuts.hs
parent852a12c82830f25b2d7db5a4ab9d098c71203905 (diff)
downloadhaskell-b66cf8ad218264593efc8bceddc86c53ce89bbeb.tar.gz
Fix infinite looping in hptSomeModulesBelow
When compiling Agda we entered into an infinite loop as the stopping condition was a bit wrong in hptSomeModulesBelow. The bad situation was something like * We would see module A (NotBoot) and follow it dependencies * Later on we would encounter A (Boot) and follow it's dependencies, because the lookup would not match A (NotBoot) and A (IsBoot) * Somewhere in A (Boot)s dependencies, A (Boot) would appear again and lead us into an infinite loop. Now the state marks whether we have been both variants (IsBoot and NotBoot) so we don't follow dependencies for A (Boot) many times.
Diffstat (limited to 'compiler/GHC/Unit/Module/ModGuts.hs')
0 files changed, 0 insertions, 0 deletions