Skip to content

-ddump-rules does not list all rules in effect

Hi,

the attached code has a function breakOn which calls "break (c==)" from Bytestring. That function has a rewrite rule, rewriting it to "breakChar c". I’d expect "ghc -ddump-rules" to tell me that this function was called, but that is not the case:

$ ghc -O -ddump-rules --make breakOn.hs 
[1 of 1] Compiling Main             ( breakOn.hs, breakOn.o )

==================== Transformation rules ====================
Local rules

Imported rules



==================== Top-level specialisations ====================


Linking breakOn ...

But in fact, the rule does fire, as this excert from "ghc -ddump-inlinings" shows:

Considering inlining
    bytestring-0.9.1.4:Data.ByteString.Char8.breakChar{v r3m} [gid] active: False
                                                                    arg infos [False]
                                                                    interesting continuation BoringCtxt
                                                                    is value: True
                                                                    is cheap: True
                                                                    guidance IF_ARGS 2 [0 0] 4 6
                                                                    ANSWER = NO

}}}

Trac metadata
Trac field Value
Version 6.10.4
Type Bug
TypeOfFailure OtherFailure
Priority normal
Resolution Unresolved
Component Compiler
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