diff --git a/Cabal/src/Distribution/Simple/GHC/Build/Link.hs b/Cabal/src/Distribution/Simple/GHC/Build/Link.hs
index 3f9f00c9d28134ac98754ac580548467d4257a01..ef9f33d79c9b46be00b0fd5e3b1771d489b0f0e7 100644
--- a/Cabal/src/Distribution/Simple/GHC/Build/Link.hs
+++ b/Cabal/src/Distribution/Simple/GHC/Build/Link.hs
@@ -735,7 +735,9 @@ runReplOrWriteFlags ghcProg lbi rflags ghcOpts pkg_name target =
         Flag out_dir -> do
           let uid = componentUnitId clbi
               this_unit = prettyShow uid
-              reexported_modules = [mn | LibComponentLocalBuildInfo{} <- [clbi], IPI.ExposedModule mn (Just{}) <- componentExposedModules clbi]
+              reexported_modules =
+                [ mn | LibComponentLocalBuildInfo{componentExposedModules = exposed_mods} <- [clbi], IPI.ExposedModule mn (Just{}) <- exposed_mods
+                ]
               hidden_modules = otherModules bi
               extra_opts =
                 concat $