@@ -20,7 +20,7 @@ import Distribution.FieldGrammar
2020import Distribution.FieldGrammar.FieldDescrs
2121import Distribution.License
2222import Distribution.ModuleName
23- import Distribution.Package
23+ import Distribution.Package hiding ( pkgCompiler )
2424import Distribution.Parsec
2525import Distribution.Pretty
2626import Distribution.Types.LibraryName
@@ -38,7 +38,7 @@ import qualified Text.PrettyPrint as Disp
3838import Distribution.Types.InstalledPackageInfo
3939
4040import qualified Distribution.Types.InstalledPackageInfo.Lens as L
41- import qualified Distribution.Types.PackageId.Lens as L
41+ import qualified Distribution.Types.PackageId.Lens as L hiding ( pkgCompiler )
4242
4343-- Note: GHC goes nuts and inlines everything,
4444-- One can see e.g. in -ddump-simpl-stats:
@@ -133,7 +133,7 @@ ipiFieldGrammar =
133133 InstalledPackageInfo
134134 -- _basicPkgName is not used
135135 -- setMaybePackageId says it can be no-op.
136- (PackageIdentifier pn _basicVersion)
136+ (PackageIdentifier pn _basicVersion _basicCompilerId )
137137 (combineLibraryName ln _basicLibName)
138138 (mkComponentId " " ) -- installedComponentId_, not in use
139139 _basicLibVisibility
@@ -256,6 +256,7 @@ data Basic = Basic
256256 , _basicPkgName :: Maybe PackageName
257257 , _basicLibName :: LibraryName
258258 , _basicLibVisibility :: LibraryVisibility
259+ , _basicCompilerId :: Maybe CompilerId
259260 }
260261
261262basic :: Lens' InstalledPackageInfo Basic
@@ -268,14 +269,16 @@ basic f ipi = g <$> f b
268269 (maybePackageName ipi)
269270 (sourceLibName ipi)
270271 (libVisibility ipi)
272+ (pkgCompiler ipi)
271273
272- g (Basic n v pn ln lv) =
274+ g (Basic n v pn ln lv compid ) =
273275 ipi
274276 & setMungedPackageName n
275277 & L. sourcePackageId . L. pkgVersion .~ v
276278 & setMaybePackageName pn
277279 & L. sourceLibName .~ ln
278280 & L. libVisibility .~ lv
281+ & L. pkgCompiler .~ compid
279282
280283basicName :: Lens' Basic MungedPackageName
281284basicName f b = (\ x -> b{_basicName = x}) <$> f (_basicName b)
@@ -319,7 +322,7 @@ basicFieldGrammar =
319322 <*> optionalField " lib-name" basicLibName
320323 <*> optionalFieldDef " visibility" basicLibVisibility LibraryVisibilityPrivate
321324 where
322- mkBasic n v pn ln lv = Basic n v pn ln' lv'
325+ mkBasic n v pn ln lv = Basic n v pn ln' lv' Nothing
323326 where
324327 ln' = maybe LMainLibName LSubLibName ln
325328 -- Older GHCs (<8.8) always report installed libraries as private
0 commit comments