[Haskell-cafe] HPC question
David Turner
d.turner at tracsis.com
Wed May 23 11:40:00 CEST 2012
Dear Haskell Cafe,
I've been playing around with the -fhpc option to GHC and have come
across some things being highlighted yellow in the HTML markup for which
I can't work out the right way to 'cover' them.
A cut down program that shows what I'm talking about is at
http://hpaste.org/68888
Looking at the output of hpc show, I see:
47 0 Main 15:6-15:9 ExpBox False
48 2 Main 15:6-15:9 ExpBox False
49 0 Main 15:6-15:9 ExpBox False
50 0 Main 15:6-15:9 ExpBox False
51 1 Main 22:13-22:14 TopLevelBox
["=="]
52 0 Main 22:13-22:14 TopLevelBox
["/="]
53 1 Main 22:17-22:20 TopLevelBox
["showsPrec"]
54 0 Main 22:17-22:20 TopLevelBox
["showList"]
I.e. each of those bits whose highlighting I don't understand is made of
some overlapping boxes, one of which is used.
Now, if I fiddle in the .tix file by hand to fake a usage of (/=) by
changing the 52nd entry from 0 to 1, the Eq instance isn't highlighted
any more in the HTML output. More strangely, if I then remove the usage
of (==) by changing the 51st entry from 1 to 0, the Eq instance still
isn't highlighted. A similar effect happens with the Show instance. It
seems to be highlighting based only on the last entry in the .tix file,
where there are two or more identically-placed boxes. Is this right? I'd
have expected that if I use (==) then the deriving (Eq) clause should be
considered 'used'.
Secondly, I can't work out what the four boxes in position 15:6-15:9 are
supposed to be. If I use -ddump-simpl I can see many calls to 'tick' but
there's no mention of numbers 47, 49 or 50. Perhaps they've been
simplified away? I'm afraid I don't know what else to try dumping to get
at the instrumented code before the simplifier's had a go at it.
I'm using Haskell Platform 2011.2.0.1 (GHC 7.0.3) on Windows if that's
relevant.
Thanks in advance,
David
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 4922 bytes
Desc: S/MIME Cryptographic Signature
URL: <http://www.haskell.org/pipermail/haskell-cafe/attachments/20120523/98ee7c1b/attachment.bin>
More information about the Haskell-Cafe
mailing list