id	summary	reporter	owner	description	type	status	priority	milestone	version	resolution	keywords	cc
52	Haddock Segmentation Fault under Ubuntu 8.04	fons		"Hi, haddock doesn't work properly under my Ubuntu 8.04 installation.

I'm using the ghc 6.8.2 package distributed with Ubuntu. I tested haddock with the haddock package itslef. I also installed the haddock2 documentation found at http://code.haskell.org/~fons/libraries.html-haddock2.tgz in order to get links properly.

The following listing contains how to reproduce the bug. First I install haddock, then I try to generate the haddock documentation of haddock itself. When I realize that the documentation directory is empty, I run the exact haddock command called by Cabal and I realize that the command segfaults. I also attached an strace listing od the segfoulting command in case it helps.


{{{
alfonsoa@s1395:~/haddock-2.0.0.0$ ghc --version
The Glorious Glasgow Haskell Compilation System, version 6.8.2
alfonsoa@s1395:~/haddock-2.0.0.0$ PATH=$HOME/bin:$PATHalfonsoa@s1395:~/haddock-2.0.0.0$ ./Setup.lhs cleancleaning...alfonsoa@s1395:~/haddock-2.0.0.0$ ./Setup.lhs configure --user --prefix=$HOMEConfiguring haddock-2.0.0.0...alfonsoa@s1395:~/haddock-2.0.0.0$ ./Setup.lhs buildPreprocessing library haddock-2.0.0.0...Preprocessing executables for haddock-2.0.0.0...Building haddock-2.0.0.0...[1 of 4] Compiling Haddock.Exception ( src/Haddock/Exception.hs, dist/build/Haddock/Exception.o )[2 of 4] Compiling Haddock.Types    ( src/Haddock/Types.hs, dist/build/Haddock/Types.o )
[3 of 4] Compiling Haddock.InterfaceFile ( src/Haddock/InterfaceFile.hs, dist/build/Haddock/InterfaceFile.o )
[4 of 4] Compiling Distribution.Haddock ( src/Distribution/Haddock.hs, dist/build/Distribution/Haddock.o )
/usr/bin/ar: creating dist/build/libHShaddock-2.0.0.0.a
[ 1 of 24] Compiling Haddock.Comments ( src/Haddock/Comments.hs, dist/build/haddock/haddock-tmp/Haddock/Comments.o )
[ 2 of 24] Compiling Haddock.Backends.HH ( src/Haddock/Backends/HH.hs, dist/build/haddock/haddock-tmp/Haddock/Backends/HH.o )
[ 3 of 24] Compiling Haddock.Backends.HH2 ( src/Haddock/Backends/HH2.hs, dist/build/haddock/haddock-tmp/Haddock/Backends/HH2.o )
[ 4 of 24] Compiling Haddock.Utils.BlockTable ( src/Haddock/Utils/BlockTable.hs, dist/build/haddock/haddock-tmp/Haddock/Utils/BlockTable.o )
[ 5 of 24] Compiling Haddock.Utils.Html ( src/Haddock/Utils/Html.hs, dist/build/haddock/haddock-tmp/Haddock/Utils/Html.o )
[ 6 of 24] Compiling Haddock.Backends.Hoogle ( src/Haddock/Backends/Hoogle.hs, dist/build/haddock/haddock-tmp/Haddock/Backends/Hoogle.o )
[ 7 of 24] Compiling Haddock.GHC.Utils ( src/Haddock/GHC/Utils.hs, dist/build/haddock/haddock-tmp/Haddock/GHC/Utils.o )
[ 8 of 24] Compiling Paths_haddock    ( dist/build/autogen/Paths_haddock.hs, dist/build/haddock/haddock-tmp/Paths_haddock.o )
[ 9 of 24] Compiling Haddock.Version  ( src/Haddock/Version.hs, dist/build/haddock/haddock-tmp/Haddock/Version.o )
[10 of 24] Compiling Haddock.Exception ( src/Haddock/Exception.hs, dist/build/haddock/haddock-tmp/Haddock/Exception.o )
[11 of 24] Compiling Haddock.Types    ( src/Haddock/Types.hs, dist/build/haddock/haddock-tmp/Haddock/Types.o )
[12 of 24] Compiling Haddock.InterfaceFile ( src/Haddock/InterfaceFile.hs, dist/build/haddock/haddock-tmp/Haddock/InterfaceFile.o )
[13 of 24] Compiling Haddock.Utils    ( src/Haddock/Utils.hs, dist/build/haddock/haddock-tmp/Haddock/Utils.o )
[14 of 24] Compiling Haddock.Options  ( src/Haddock/Options.hs, dist/build/haddock/haddock-tmp/Haddock/Options.o )
[15 of 24] Compiling Haddock.GHC.Typecheck ( src/Haddock/GHC/Typecheck.hs, dist/build/haddock/haddock-tmp/Haddock/GHC/Typecheck.o )
[16 of 24] Compiling Haddock.GHC      ( src/Haddock/GHC.hs, dist/build/haddock/haddock-tmp/Haddock/GHC.o )
[17 of 24] Compiling Haddock.Interface.Rename ( src/Haddock/Interface/Rename.hs, dist/build/haddock/haddock-tmp/Haddock/Interface/Rename.o )
[18 of 24] Compiling Haddock.Interface.AttachInstances ( src/Haddock/Interface/AttachInstances.hs, dist/build/haddock/haddock-tmp/Haddock/Interface/AttachInstances.o )
[19 of 24] Compiling Haddock.Interface.Create ( src/Haddock/Interface/Create.hs, dist/build/haddock/haddock-tmp/Haddock/Interface/Create.o )
[20 of 24] Compiling Haddock.Interface ( src/Haddock/Interface.hs, dist/build/haddock/haddock-tmp/Haddock/Interface.o )
[21 of 24] Compiling Haddock.ModuleTree ( src/Haddock/ModuleTree.hs, dist/build/haddock/haddock-tmp/Haddock/ModuleTree.o )
[22 of 24] Compiling Haddock.Backends.DevHelp ( src/Haddock/Backends/DevHelp.hs, dist/build/haddock/haddock-tmp/Haddock/Backends/DevHelp.o )
[23 of 24] Compiling Haddock.Backends.Html ( src/Haddock/Backends/Html.hs, dist/build/haddock/haddock-tmp/Haddock/Backends/Html.o )
[24 of 24] Compiling Main             ( src/Main.hs, dist/build/haddock/haddock-tmp/Main.o )
Linking dist/build/haddock/haddock ...
alfonsoa@s1395:~/haddock-2.0.0.0$ ./Setup.lhs install
Installing: /home/alfonsoa/lib/haddock-2.0.0.0/ghc-6.8.2
Installing: /home/alfonsoa/bin
Registering haddock-2.0.0.0...
Reading package info from ""dist/installed-pkg-config"" ... done.
Saving old package config file... done.
Writing new package config file... done.
alfonsoa@s1395:~/haddock-2.0.0.0$ haddock --version
Haddock version 2.0.0.0, (c) Simon Marlow 2006; ported to the GHC-API by David Waern 2006-2007
alfonsoa@s1395:~/haddock-2.0.0.0$ ./Setup.lhs haddock
Preprocessing library haddock-2.0.0.0...
Preprocessing executables for haddock-2.0.0.0...
Running Haddock for haddock-2.0.0.0...
Warning: The documentation for package ghc-6.8.2 is not installed. No links to it will be generated.
Preprocessing library haddock-2.0.0.0...
Preprocessing executables for haddock-2.0.0.0...
alfonsoa@s1395:~/haddock-2.0.0.0$ ls dist/
build/                              haddock-2.0.0.0-haddock-prolog.txt  setup-config                        
doc/                                installed-pkg-config                
alfonsoa@s1395:~/haddock-2.0.0.0$ ls -r dist/doc/html
haddock
alfonsoa@s1395:~/haddock-2.0.0.0$ ls -d dist/doc/html
dist/doc/html
alfonsoa@s1395:~/haddock-2.0.0.0$ ls -r dist/doc/html/*
alfonsoa@s1395:~/haddock-2.0.0.0$ ls -a dist/doc/html/*
.  ..
alfonsoa@s1395:~/haddock-2.0.0.0$ ls -l dist/doc/html/*
total 0
alfonsoa@s1395:~/haddock-2.0.0.0$ ./Setup.lhs haddock -v
Creating dist/build/tmp (and its parents)
Creating dist/doc/html/haddock (and its parents)
Preprocessing library haddock-2.0.0.0...
Preprocessing executables for haddock-2.0.0.0...
Running Haddock for haddock-2.0.0.0...
/usr/bin/ghc-pkg field base-3.0.1.0 haddock-interfaces
/usr/bin/ghc-pkg field base-3.0.1.0 haddock-html
/usr/bin/ghc-pkg field haskell98-1.0.1.0 haddock-interfaces
/usr/bin/ghc-pkg field haskell98-1.0.1.0 haddock-html
/usr/bin/ghc-pkg field ghc-6.8.2 haddock-interfaces
/usr/bin/ghc-pkg field ghc-6.8.2 haddock-html
Warning: The documentation for package ghc-6.8.2 is not installed. No links to it will be generated.
/usr/bin/ghc-pkg field filepath-1.1.0.0 haddock-interfaces
/usr/bin/ghc-pkg field filepath-1.1.0.0 haddock-html
/usr/bin/ghc-pkg field directory-1.0.0.0 haddock-interfaces
/usr/bin/ghc-pkg field directory-1.0.0.0 haddock-html
/usr/bin/ghc-pkg field pretty-1.0.0.0 haddock-interfaces
/usr/bin/ghc-pkg field pretty-1.0.0.0 haddock-html
/usr/bin/ghc-pkg field containers-0.1.0.1 haddock-interfaces
/usr/bin/ghc-pkg field containers-0.1.0.1 haddock-html
/usr/bin/ghc-pkg field array-0.1.0.0 haddock-interfaces
/usr/bin/ghc-pkg field array-0.1.0.0 haddock-html
/home/alfonsoa/bin/haddock --ghc-version
/usr/bin/ghc --print-libdir
Creating dist/build (and its parents)
Creating dist/build/autogen (and its parents)
Preprocessing library haddock-2.0.0.0...
Preprocessing executables for haddock-2.0.0.0...
/home/alfonsoa/bin/haddock --html --odir=dist/doc/html/haddock --title=haddock-2.0.0.0 --dump-interface=dist/doc/html/haddock/haddock.haddock --prologue=dist/haddock-2.0.0.0-haddock-prolog.txt --optghc=-package-name --optghc=haddock-2.0.0.0 --read-interface=/usr/share/doc/ghc6-doc/libraries/base,/usr/share/doc/ghc6-doc/libraries/base/base.haddock --read-interface=/usr/share/doc/ghc6-doc/libraries/haskell98,/usr/share/doc/ghc6-doc/libraries/haskell98/haskell98.haddock --read-interface=/usr/share/doc/ghc6-doc/libraries/filepath,/usr/share/doc/ghc6-doc/libraries/filepath/filepath.haddock --read-interface=/usr/share/doc/ghc6-doc/libraries/directory,/usr/share/doc/ghc6-doc/libraries/directory/directory.haddock --read-interface=/usr/share/doc/ghc6-doc/libraries/pretty,/usr/share/doc/ghc6-doc/libraries/pretty/pretty.haddock --read-interface=/usr/share/doc/ghc6-doc/libraries/containers,/usr/share/doc/ghc6-doc/libraries/containers/containers.haddock --read-interface=/usr/share/doc/ghc6-doc/libraries/array,/usr/share/doc/ghc6-doc/libraries/array/array.haddock --hide=Haddock.Types --hide=Haddock.InterfaceFile --hide=Haddock.Exception -B/usr/lib/ghc-6.8.2 --optghc=-hide-all-packages --optghc=-package --optghc=base-3.0.1.0 --optghc=-package --optghc=haskell98-1.0.1.0 --optghc=-package --optghc=ghc-6.8.2 --optghc=-package --optghc=filepath-1.1.0.0 --optghc=-package --optghc=directory-1.0.0.0 --optghc=-package --optghc=pretty-1.0.0.0 --optghc=-package --optghc=containers-0.1.0.1 --optghc=-package --optghc=array-0.1.0.0 --optghc=-i --optghc=-fglasgow-exts --optghc=-idist/build/autogen --optghc=-isrc --optghc=-idist/build --optghc=-odir --optghc=dist/build --optghc=-hidir --optghc=dist/build --optghc=-XCPP --optghc=-XPatternGuards Distribution.Haddock Haddock.Types Haddock.InterfaceFile Haddock.Exception
alfonsoa@s1395:~/haddock-2.0.0.0$ ls -a dist/doc/html/
.  ..  haddock
alfonsoa@s1395:~/haddock-2.0.0.0$ ls -a dist/doc/html/haddock/
.  ..
alfonsoa@s1395:~/haddock-2.0.0.0$ /home/alfonsoa/bin/haddock --html --odir=dist/doc/html/haddock --title=haddock-2.0.0.0 --dump-interface=dist/doc/html/haddock/haddock.haddock --prologue=dist/haddock-2.0.0.0-haddock-prolog.txt --optghc=-package-name --optghc=haddock-2.0.0.0 --read-interface=/usr/share/doc/ghc6-doc/libraries/base,/usr/share/doc/ghc6-doc/libraries/base/base.haddock --read-interface=/usr/share/doc/ghc6-doc/libraries/haskell98,/usr/share/doc/ghc6-doc/libraries/haskell98/haskell98.haddock --read-interface=/usr/share/doc/ghc6-doc/libraries/filepath,/usr/share/doc/ghc6-doc/libraries/filepath/filepath.haddock --read-interface=/usr/share/doc/ghc6-doc/libraries/directory,/usr/share/doc/ghc6-doc/libraries/directory/directory.haddock --read-interface=/usr/share/doc/ghc6-doc/libraries/pretty,/usr/share/doc/ghc6-doc/libraries/pretty/pretty.haddock --read-interface=/usr/share/doc/ghc6-doc/libraries/containers,/usr/share/doc/ghc6-doc/libraries/containers/containers.haddock --read-interface=/usr/share/doc/ghc6-doc/libraries/array,/usr/share/doc/ghc6-doc/libraries/array/array.haddock --hide=Haddock.Types --hide=Haddock.InterfaceFile --hide=Haddock.Exception -B/usr/lib/ghc-6.8.2 --optghc=-hide-all-packages --optghc=-package --optghc=base-3.0.1.0 --optghc=-package --optghc=haskell98-1.0.1.0 --optghc=-package --optghc=ghc-6.8.2 --optghc=-package --optghc=filepath-1.1.0.0 --optghc=-package --optghc=directory-1.0.0.0 --optghc=-package --optghc=pretty-1.0.0.0 --optghc=-package --optghc=containers-0.1.0.1 --optghc=-package --optghc=array-0.1.0.0 --optghc=-i --optghc=-fglasgow-exts --optghc=-idist/build/autogen --optghc=-isrc --optghc=-idist/build --optghc=-odir --optghc=dist/build --optghc=-hidir --optghc=dist/build --optghc=-XCPP --optghc=-XPatternGuards Distribution.Haddock Haddock.Types Haddock.InterfaceFile Haddock.Exception
Segmentation fault
alfonsoa@s1395:~/haddock-2.0.0.0$ strace home/alfonsoa/bin/haddock --html --odir=dist/doc/html/haddock --title=haddock-2.0.0.0 --dump-interface=dist/doc/html/haddock/haddock.haddock --prologue=dist/haddock-2.0.0.0-haddock-prolog.txt --optghc=-package-name --optghc=haddock-2.0.0.0 --read-interface=/usr/share/doc/ghc6-doc/libraries/base,/usr/share/doc/ghc6-doc/libraries/base/base.haddock --read-interface=/usr/share/doc/ghc6-doc/libraries/haskell98,/usr/share/doc/ghc6-doc/libraries/haskell98/haskell98.haddock --read-interface=/usr/share/doc/ghc6-doc/libraries/filepath,/usr/share/doc/ghc6-doc/libraries/filepath/filepath.haddock --read-interface=/usr/share/doc/ghc6-doc/libraries/directory,/usr/share/doc/ghc6-doc/libraries/directory/directory.haddock --read-interface=/usr/share/doc/ghc6-doc/libraries/pretty,/usr/share/doc/ghc6-doc/libraries/pretty/pretty.haddock --read-interface=/usr/share/doc/ghc6-doc/libraries/containers,/usr/share/doc/ghc6-doc/libraries/containers/containers.haddock --read-interface=/usr/share/doc/ghc6-doc/libraries/array,/usr/share/doc/ghc6-doc/libraries/array/array.haddock --hide=Haddock.Types --hide=Haddock.InterfaceFile --hide=Haddock.Exception -B/usr/lib/ghc-6.8.2 --optghc=-hide-all-packages --optghc=-package --optghc=base-3.0.1.0 --optghc=-package --optghc=haskell98-1.0.1.0 --optghc=-package --optghc=ghc-6.8.2 --optghc=-package --optghc=filepath-1.1.0.0 --optghc=-package --optghc=directory-1.0.0.0 --optghc=-package --optghc=pretty-1.0.0.0 --optghc=-package --optghc=containers-0.1.0.1 --optghc=-package --optghc=array-0.1.0.0 --optghc=-i --optghc=-fglasgow-exts --optghc=-idist/build/autogen --optghc=-isrc --optghc=-idist/build --optghc=-odir --optghc=dist/build --optghc=-hidir --optghc=dist/build --optghc=-XCPP --optghc=-XPatternGuards Distribution.Haddock Haddock.Types Haddock.InterfaceFile Haddock.Exception 2> haddock.strace
}}}"	defect	closed	critical		2.0.0.0	fixed		ingo@…
