haddock-2.3.0 literate comments discarded from .lhs input

Alistair Bayley alistair at abayley.org
Fri Feb 6 04:24:07 EST 2009


I have this test case for Haddock (2.3.0):

--------------------------------------------------

|
Module      :  Test.Haddock
Copyright   :  (c) 2009 Alistair Bayley
License     :  BSD-style
Maintainer  :  alistair at abayley.org
Stability   :  stable
Portability :  portable

Test case for Haddock.


> module Test.Haddock
>   (
>   -- $named_block
>   Fail(..)
>   )
> where
> data Fail = Fail | Succeed

$named_block

This is some hadock documentation.

--------------------------------------------------

This fails with:

[1 of 1] Compiling Test.Fail        ( Test\Fail.hs, Test\Fail.o )

Test\Fail.hs:11:26:
    Can't make a derived instance of `Typeable Fail'
      (You need -XDeriveDataTypeable to derive an instance for this class)
    In the data type declaration for `Fail'

If I manually unlit, then Haddock is happy:

--------------------------------------------------

-- |
-- Module      :  Test.Haddock2
-- Copyright   :  (c) 2009 Alistair Bayley
-- License     :  BSD-style
-- Maintainer  :  alistair at abayley.org
-- Stability   :  stable
-- Portability :  portable
-- 
-- Test case for Haddock.

module Test.Haddock2
  (
  -- $named_block
  Fail(..)
  )
where
data Fail = Fail | Succeed

-- $named_block
-- 
-- This is some hadock documentation.

--------------------------------------------------


so it looks as though it's discarding the literate comments. Is this
intended? I was under the impression that because it used the ghc
parser, it could now properly handle .lhs input.

Ona related note, we have a nice unlitter in cabal that would preserve
these comments before invoking haddock. Is this still used with
haddock2, or does it now assume haddock2 will do the right thing?

Alistair



More information about the cabal-devel mailing list