Skip to content

hpc reports spurious results with .lhs files even after processing with ghc -E

I've done a bit of investigation and it seems there are at least two problems:

  1. I have literate haskell files (.lhs).
  2. Even if I run them through the pre-processor (ghc -E) they still don't work

but if I manually remove these lines (which seem to get inserted by the pre-processor)

{-# LINE 1 "ASNTYPE.lhs" #-} #line 1 "ASNTYPE.lhs"

then it does actually work.

I still have a problem with another project which doesn't use literate haskell but does require the use of -cpp and has got #ifdef's. I haven't got to the bottom of it yet but I'm suspicious that lines starting with # cause hpc to misbehave.

It's strange that hpc should behave like this as I would have thought it wouldn't care about hs / lhs and # as ghc would have done some of its standard processing before hpc got engaged.

This happens on linux and windows (not surprisingly).

Trac metadata
Trac field Value
Version 6.10.2
Type Bug
TypeOfFailure OtherFailure
Priority normal
Resolution Unresolved
Component Code Coverage
Test case
Differential revisions
BlockedBy
Related
Blocking
CC
Operating system
Architecture
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information