Ticket #294 (closed defect: fixed)

Opened 4 months ago

Last modified 4 months ago

dbus-0.10.7 triggers internal error: internal: extractDecl

Reported by: simons Owned by: Fūzetsu
Priority: major Milestone:
Version: 2.15.0 Keywords:
Cc:

Description

The haddock binary shipped with GHC 7.8.1-rc1 (version 2.14.0) fails with an internal error while processing the documentation of the dbus-0.10.7 library. A complete build log (from Linux/x86_64) is available at <http://hydra.cryp.to/build/44040/nixlog/1/raw>.

Change History

Changed 4 months ago by Fūzetsu

  • owner set to Fūzetsu
  • status changed from new to assigned
  • version changed from 2.14.0 to 2.15.0

Interesting, I can replicate with GHC and Haddock HEAD. Build instructions for anyone not wanting to go through the log:

cabal unpack dbus-0.10.7 && cd dbus-0.10.7
cabal sandbox init && cabal install --only-dependencies --enable-documentation
cabal configure --disable-split-objs --disable-library-profiling --enable-shared --enable-library-vanilla --enable-executable-dynamic --disable-tests  --ghc-option=-optl=-Wl
cabal haddock

I'll try to look at it today but no promises.

Changed 4 months ago by haasn

Be sure to check exporting:

- Constructor of a data family instance - Record field of a data family instance - Constructor of an associated data family instance - Record field of an associated data family instance

Changed 4 months ago by Fūzetsu

Smaller test case

{-# LANGUAGE TypeFamilies #-}
-- This tests that we are able to extract record selectors for
-- associated types when the type itself is not exported. Making this
-- bug exhibit is very simple: simply mention a record field defined
-- inside of the associated type anywhere in the export list.
module Bug294 (problemField, T(..), TO(..)) where

class T t where
  data TO t :: *

instance T () where
  data TO () = AT { problemField :: Integer }

Changed 4 months ago by Fūzetsu

  • status changed from assigned to closed
  • resolution set to fixed
Note: See TracTickets for help on using tickets.