ByteString builder causes the optimiser to run out of ticks
I received the following error message from GHC:
<no location info>:
ghc: panic! (the 'impossible' happened)
(GHC version 7.10.3 for x86_64-unknown-linux):
Simplifier ticks exhausted
When trying UnfoldingDone $fStorableWord21
To increase the limit, use -fsimpl-tick-factor=N (default 100)
If you need to do this, let GHC HQ know, and what factor you needed
To see detailed counts use -ddump-simpl-stats
Total ticks: 8040
Please report this as a GHC bug: http://www.haskell.org/ghc/reportabug
When I followed the suggestion of adding -fsimpl-tick-factor=200 the compiler proceeds normally (finding a syntax error in a file). Removing this option, strangely, also causes the compiler to proceed normally. I can no longer reproduce this bug, although several compilations in a row (before adding the option) reproduced the bug.
Although I cannot reproduce this bug, the syntax error that is present came from an error of the form:
f :: A -> M B
f a =
do
x <- g a
let
c = h a
in do
...
The actual file is attached.
Trac metadata
| Trac field | Value |
|---|---|
| Version | 8.0.1 |
| Type | Bug |
| TypeOfFailure | OtherFailure |
| Priority | normal |
| Resolution | Unresolved |
| Component | Compiler |
| Test case | |
| Differential revisions | |
| BlockedBy | |
| Related | |
| Blocking | |
| CC | |
| Operating system | |
| Architecture |
Edited by Matthew Pickering