Skip to content

GHC and GHCi dumps "panic!" ("initTc: unsolved constraints")

Hi, I'm Japanese.

I'm developping https://github.com/aiya000/hs-zuramaru now :)

A problem is happend in https://github.com/aiya000/hs-zuramaru/commit/79b850167537afe9efa4f812ef6ce02ec129630c !

ghci says

[7 of 9] Compiling Maru.Main        ( /home/aiya000/Repository/hs-zuramaru/src/Maru/Main.hs, inte
ghc: panic! (the 'impossible' happened)
  (GHC version 8.0.2 for x86_64-unknown-linux):
        initTc: unsolved constraints
  WC {wc_insol =
        [W] makeLensesWith_amym :: t_amyl[tau:1] (CHoleCan: makeLensesWith)
        [W] .~_amyv :: t_amyu[tau:1] (CHoleCan: .~)
        [W] &_amyE :: t_amyD[tau:1] (CHoleCan: &)
        [W] lensRules_amyL :: t_amyK[tau:1] (CHoleCan: lensRules)}

Please report this as a GHC bug:  http://www.haskell.org/ghc/reportabug

(This is shorten message, I'll write full message to last line)

It maybe happened after I introduced extensible-effects and microlens (microlens-th, microlens-mtl), and used it.

I cannot understand details of the problem x(

My linux distribution is

$ uname -a
Linux BlueAloha 4.6.0-1-surfacepro3 #1 SMP PREEMPT Wed Apr 5 14:12:33 JST 2017 x86_64 GNU/Linux

Below line is the full message of ghci

No extra-dep setting found for package at URL:

https://github.com/aiya000/hs-throwable-exceptions.git

This is usually a mistake, external packages should typically
be treated as extra-deps to avoid spurious test case failures.
No extra-dep setting found for package at URL:

https://github.com/aiya000/hs-throwable-exceptions.git

This is usually a mistake, external packages should typically
be treated as extra-deps to avoid spurious test case failures.
No extra-dep setting found for package at URL:

https://github.com/aiya000/hs-throwable-exceptions.git

This is usually a mistake, external packages should typically
be treated as extra-deps to avoid spurious test case failures.
No extra-dep setting found for package at URL:

https://github.com/aiya000/hs-throwable-exceptions.git

This is usually a mistake, external packages should typically
be treated as extra-deps to avoid spurious test case failures.
zuramaru-0.1.0.0: initial-build-steps (lib + exe)
Log files have been written to: /home/aiya000/Repository/hs-zuramaru/.stack-work/logs/
The following GHC options are incompatible with GHCi and have not been passed to it: -threaded
Configuring GHCi with the following packages: zuramaru, throwable-exceptions
Using main module: 1. Package `zuramaru' component exe:maru with main-is file: /home/aiya000/Repository/hs-zuramaru/app/Main.hs
GHCi, version 8.0.2: http://www.haskell.org/ghc/  :? for help
Loaded GHCi configuration from /home/aiya000/.dotfiles/.ghci
[1 of 7] Compiling Maru.Type.SExpr  ( /home/aiya000/Repository/hs-zuramaru/src/Maru/Type/SExpr.hs, interpreted )
[2 of 7] Compiling Maru.Type.Parser ( /home/aiya000/Repository/hs-zuramaru/src/Maru/Type/Parser.hs, interpreted )
/home/aiya000/Repository/hs-zuramaru/src/Maru/Type/Parser.hs:46:1-22: Splicing declarations
    makeLenses ''MaruState
  ======>
    parseLogs :: Lens.Micro.Type.Lens' MaruState [ParseLog]
    parseLogs f_ahmF (MaruState x_ahmG x_ahmH)
      = fmap (\ y_ahmI -> MaruState y_ahmI x_ahmH) (f_ahmF x_ahmG)
    {-# INLINE parseLogs #-}
    parseNestLevel :: Lens.Micro.Type.Lens' MaruState Int
    parseNestLevel f_ahmJ (MaruState x_ahmK x_ahmL)
      = fmap (\ y_ahmM -> MaruState x_ahmK y_ahmM) (f_ahmJ x_ahmL)
    {-# INLINE parseNestLevel #-}
[3 of 7] Compiling Maru.Type        ( /home/aiya000/Repository/hs-zuramaru/src/Maru/Type.hs, interpreted )
[4 of 7] Compiling Maru.Parser      ( /home/aiya000/Repository/hs-zuramaru/src/Maru/Parser.hs, interpreted )
[5 of 7] Compiling Control.Exception.Throwable.TH ( /home/aiya000/Repository/hs-zuramaru/.stack-work/downloaded/iT3mDZWO7QnR/src/Control/Exception/Throwable/TH.hs, interpreted )
[6 of 7] Compiling Maru.Eval        ( /home/aiya000/Repository/hs-zuramaru/src/Maru/Eval.hs, interpreted )
/home/aiya000/Repository/hs-zuramaru/src/Maru/Eval.hs:29:1-66: Splicing declarations
    declareException "NoSuchSymbolException" ["NoSuchSymbolException"]
  ======>
    data NoSuchSymbolException a_akj2
      = NoSuchSymbolException {noSuchSymbolExceptionCause :: String,
                               noSuchSymbolExceptionClue :: a_akj2}
    instance Show a_akj3 => Show (NoSuchSymbolException a_akj3) where
      show (NoSuchSymbolException cause_akj4 _)
        = ("NoSuchSymbolException: " ++ (show cause_akj4))
    instance (Typeable a_akj5, Show a_akj5) =>
             Exception (NoSuchSymbolException a_akj5)
    noSuchSymbolException :: String -> NoSuchSymbolException ()
    noSuchSymbolException x_akj6 = NoSuchSymbolException x_akj6 ()

/home/aiya000/Repository/hs-zuramaru/src/Maru/Eval.hs:41:1: warning: [-Worphans]
    Orphan instance:
      instance (Monoid a, Monad m) => MonadFail (EitherT a m)
    To avoid this
        move the instance declaration to the module of the class or of the type, or
        wrap the type with a newtype and declare the instance on the new type.

/home/aiya000/Repository/hs-zuramaru/src/Maru/Eval.hs:106:24: warning: [-Wunused-matches]
    Defined but not used: ‘x’

/home/aiya000/Repository/hs-zuramaru/src/Maru/Eval.hs:109:13: warning: [-Wunused-local-binds]
    Defined but not used: ‘val’
[7 of 7] Compiling Maru.Main        ( /home/aiya000/Repository/hs-zuramaru/src/Maru/Main.hs, interpreted )
ghc: panic! (the 'impossible' happened)
  (GHC version 8.0.2 for x86_64-unknown-linux):
        initTc: unsolved constraints
  WC {wc_insol =
        [W] makeLensesWith_amlb :: t_amla[tau:1] (CHoleCan: makeLensesWith)
        [W] .~_amlk :: t_amlj[tau:1] (CHoleCan: .~)
        [W] &_amlt :: t_amls[tau:1] (CHoleCan: &)
        [W] lensRules_amlA :: t_amlz[tau:1] (CHoleCan: lensRules)}

Please report this as a GHC bug:  http://www.haskell.org/ghc/reportabug

[7 of 8] Compiling Maru.Main        ( /home/aiya000/Repository/hs-zuramaru/src/Maru/Main.hs, inte
ghc: panic! (the 'impossible' happened)
  (GHC version 8.0.2 for x86_64-unknown-linux):
        initTc: unsolved constraints
  WC {wc_insol =
        [W] makeLensesWith_amsk :: t_amsj[tau:1] (CHoleCan: makeLensesWith)
        [W] .~_amst :: t_amss[tau:1] (CHoleCan: .~)
        [W] &_amsC :: t_amsB[tau:1] (CHoleCan: &)
        [W] lensRules_amsJ :: t_amsI[tau:1] (CHoleCan: lensRules)}

Please report this as a GHC bug:  http://www.haskell.org/ghc/reportabug

[7 of 9] Compiling Maru.Main        ( /home/aiya000/Repository/hs-zuramaru/src/Maru/Main.hs, inte
ghc: panic! (the 'impossible' happened)
  (GHC version 8.0.2 for x86_64-unknown-linux):
        initTc: unsolved constraints
  WC {wc_insol =
        [W] makeLensesWith_amym :: t_amyl[tau:1] (CHoleCan: makeLensesWith)
        [W] .~_amyv :: t_amyu[tau:1] (CHoleCan: .~)
        [W] &_amyE :: t_amyD[tau:1] (CHoleCan: &)
        [W] lensRules_amyL :: t_amyK[tau:1] (CHoleCan: lensRules)}

Please report this as a GHC bug:  http://www.haskell.org/ghc/reportabug


<no location info>: error:
    Could not find module ‘Control.Exception.Throwable’
    It is a member of the hidden package ‘throwable-exceptions-0.1.0.8@throwable-exceptions-0.1.0
Loaded GHCi configuration from /tmp/ghci30810/ghci-script
Prelude Data.Text Data.Char Language.Haskell.TH T TIO>
Trac metadata
Trac field Value
Version 8.0.1
Type Bug
TypeOfFailure GhciCrash
Priority normal
Resolution Unresolved
Component Compiler
Test case
Differential revisions
BlockedBy
Related
Blocking
CC
Operating system
Architecture
Edited by aiya000
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information