Marge Bot pushed to branch master at Glasgow Haskell Compiler / GHC
Commits:
-
99b233f4
by Alison at 2025-09-13T16:51:04-04:00
1 changed file:
Changes:
... | ... | @@ -67,10 +67,26 @@ import GHC.Exts.Heap.ClosureTypes |
67 | 67 | import GHC.Exts.Heap.Constants
|
68 | 68 | import GHC.Exts.Heap.ProfInfo.Types
|
69 | 69 | #if defined(PROFILING)
|
70 | +import GHC.Exts.Heap.InfoTable () -- See Note [No way-dependent imports]
|
|
70 | 71 | import GHC.Exts.Heap.InfoTableProf
|
71 | 72 | #else
|
72 | 73 | import GHC.Exts.Heap.InfoTable
|
74 | +import GHC.Exts.Heap.InfoTableProf () -- See Note [No way-dependent imports]
|
|
75 | + |
|
76 | +{-
|
|
77 | +Note [No way-dependent imports]
|
|
78 | +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
79 | +`ghc -M` currently assumes that the imports for a module are the same
|
|
80 | +in every way. This is arguably a bug, but breaking this assumption by
|
|
81 | +importing different things in different ways can cause trouble. For
|
|
82 | +example, this module in the profiling way imports and uses
|
|
83 | +GHC.Exts.Heap.InfoTableProf. When it was not also imported in the
|
|
84 | +vanilla way, there were intermittent build failures due to this module
|
|
85 | +being compiled in the profiling way before GHC.Exts.Heap.InfoTableProf
|
|
86 | +in the profiling way. (#15197)
|
|
87 | +-}
|
|
73 | 88 | #endif
|
89 | + |
|
74 | 90 | import GHC.Exts.Heap.Utils
|
75 | 91 | import qualified GHC.Exts.Heap.FFIClosures as FFIClosures
|
76 | 92 | import qualified GHC.Exts.Heap.ProfInfo.PeekProfInfo as PPI
|