diff --git a/haddock-api/src/Haddock/InterfaceFile.hs b/haddock-api/src/Haddock/InterfaceFile.hs
index 966901dfada7af54faa7bef3467610a0640a88d6..69201eb0b903f2c88771d8c07cf2a18b03f0b573 100644
--- a/haddock-api/src/Haddock/InterfaceFile.hs
+++ b/haddock-api/src/Haddock/InterfaceFile.hs
@@ -46,9 +46,6 @@ import GHC.Types.Unique.FM
 import GHC.Types.Unique.Supply
 import GHC.Types.Unique
 
-import Documentation.Haddock.Parser (parseModLink)
-
-
 data InterfaceFile = InterfaceFile {
   ifLinkEnv         :: LinkEnv,
   ifInstalledIfaces :: [InstalledInterface]
@@ -625,7 +622,10 @@ instance (Binary mod, Binary id) => Binary (DocH mod id) where
               -- See note [The DocModule story]
               5 -> do
                     af <- get bh
-                    return (parseModLink af)
+                    return $ DocModule ModLink
+                      { modLinkName  = af
+                      , modLinkLabel = Nothing
+                      }
               6 -> do
                     ag <- get bh
                     return (DocEmphasis ag)
diff --git a/haddock-library/src/Documentation/Haddock/Parser.hs b/haddock-library/src/Documentation/Haddock/Parser.hs
index bb8745a50c038d19d002645970c19f84370643b3..de336d45edf411d5b8668ef8c1b5faf1b8b545e0 100644
--- a/haddock-library/src/Documentation/Haddock/Parser.hs
+++ b/haddock-library/src/Documentation/Haddock/Parser.hs
@@ -18,7 +18,6 @@
 module Documentation.Haddock.Parser (
   parseString,
   parseParas,
-  parseModLink,
   overIdentifier,
   toRegular,
   Identifier
@@ -137,9 +136,6 @@ parseString = parseText . T.pack
 parseText :: Text -> DocH mod Identifier
 parseText = parseParagraph . T.dropWhile isSpace . T.filter (/= '\r')
 
-parseModLink :: String -> DocH mod id
-parseModLink s = snd $ parse moduleName (T.pack s)
-
 parseParagraph :: Text -> DocH mod Identifier
 parseParagraph = snd . parse p
   where