diff options
author | David Waern <david.waern@gmail.com> | 2010-04-10 10:46:14 +0000 |
---|---|---|
committer | David Waern <david.waern@gmail.com> | 2010-04-10 10:46:14 +0000 |
commit | a2a41c8b812cbc55d4541cec3285ee32f863a227 (patch) | |
tree | 786745653693708cd8fe1cf11a981b8d6dabafff /src/Haddock/Interface.hs | |
parent | 6f47cab6685dd30c9795fe56eb947cd94c7255ee (diff) |
Fix #112
No link was generated for 'Addr#' in a doc comment. The reason was simply that
the identifier didn't parse. We were using parseIdentifier from the GHC API,
with a parser state built from 'defaultDynFlags'. If we pass the dynflags of
the module instead, the right options are turned on on while parsing the
identifer (in this case -XMagicHash), and the parse succeeds.
Diffstat (limited to 'src/Haddock/Interface.hs')
-rw-r--r-- | src/Haddock/Interface.hs | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/Haddock/Interface.hs b/src/Haddock/Interface.hs index 33a2f7de..477bf09d 100644 --- a/src/Haddock/Interface.hs +++ b/src/Haddock/Interface.hs @@ -153,7 +153,8 @@ mkGhcModule (mdl, file, checkedMod) dynflags = GhcModule { ghcExportedNames = modInfoExports modInfo, ghcDefinedNames = map getName $ modInfoTyThings modInfo, ghcNamesInScope = fromJust $ modInfoTopLevelScope modInfo, - ghcInstances = modInfoInstances modInfo + ghcInstances = modInfoInstances modInfo, + ghcDynFlags = dynflags } where mbOpts = haddockOptions dynflags |