Skip to content

Repeated "impossible" go_axiom_rule error.

I am getting the following error repeatedly:

ghc: panic! (the 'impossible' happened)
  (GHC version 8.4.1 for x86_64-unknown-linux):
	go_axiom_rule
  Sub0R
  Call stack:
      CallStack (from HasCallStack):
        callStackDoc, called at compiler/utils/Outputable.hs:1150:37 in ghc:Outputable
        pprPanic, called at compiler/iface/TcIface.hs:1371:15 in ghc:TcIface

I got it on 8.2.1, and tried upgrading to 8.4.1 to see if it went away, but it did not.

It occurs frequently when I do a --make and recompile a subset of modules. I can avoid it by force-recompiling all modules, although of course this is inefficient.

Since I'm working with a codebase of thousands of lines and don't understand ghc's innards, I'm not sure where to start looking for the cause, to produce a minimal failing example. But it did start happening around the time I expanded my use of this module:

https://github.com/agrafix/superrecord

Since there are unsafe operations in there, it is possible it is doing something illicit, but it is hard to see how it would cause this.

Trac metadata
Trac field Value
Version 8.4.1
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