9.2.6: panic when compiling type-natural-1.1.0.1
Summary
GHC panics while compiling a profiling object of type-natural-1.1.0.1
:
[ 6 of 10] Compiling Data.Type.Natural.Lemma.Order ( src/Data/Type/Natural/Lemma/Order.hs, dist/build/Data/Type/Natural/Lemma/Order.p_o )
src/Data/Type/Natural/Lemma/Order.hs:155:1: warning: [-Wunused-imports]
The import of ‘Numeric.Natural’ is redundant
except perhaps to import instances from ‘Numeric.Natural’
To import instances alone, use: import Numeric.Natural()
|
155 | import Numeric.Natural (Natural)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
<no location info>: error:
ghc: panic! (the 'impossible' happened)
(GHC version 9.2.6:
expectOnly: cgLit:Rubbish
Please report this as a GHC bug: https://www.haskell.org/ghc/reportabug
Steps to reproduce
- Compile
type-natural-1.1.0.1
using GHC 9.2.6 with library profiling enabled - Alternatively: checkout
107c04a3cd80bca46e9025d6a8c9d3c210ead575
of nixpkgs and runnix-build -A haskellPackages.type-natural
full log
configureFlags: --verbose --prefix=/nix/store/kpgqmfzsn5nx08fmh0xbcrfisgrm56hp-type-natural-1.1.0.1 --libdir=$prefix/lib/$compiler --libsubdir=$abi/$libname --docdir=/nix/store/5rzvavmxnk1szn2d1f62x4lk917wvnq5-type-natural-1.1.0.1-doc/share/doc/type-natural-1.1.0.1 --with-gcc=gcc --package-db=/build/tmp.tUb59RTnrx/package.conf.d --ghc-options=-j4 +RTS -A64M -RTS --disable-split-objs --enable-library-profiling --profiling-detail=exported-functions --disable-profiling --enable-shared --disable-coverage --enable-static --disable-executable-dynamic --enable-tests --disable-benchmarks --enable-library-vanilla --disable-library-for-ghci --ghc-option=-split-sections --ghc-options=-haddock --extra-lib-dirs=/nix/store/35s126gfkfrwbiv49kv9kxqdpd9zvcvm-ncurses-6.4/lib --extra-lib-dirs=/nix/store/bmnh7b67zx6l5wi6vgjvsfwrzw7ivfph-libffi-3.4.4/lib --extra-lib-dirs=/nix/store/w3qi8zxj01mn4i92r8asmyljm42ps401-gmp-with-cxx-6.2.1/lib --extra-lib-dirs=/nix/store/322zfsd89g1xph46glm0jjvwjkj09mv4-ghc-9.2.6/lib
Using Parsec parser
Configuring type-natural-1.1.0.1...
Dependency base >=4 && <5: using base-4.16.4.0
Dependency constraints >=0.3: using constraints-0.13.4
Dependency equational-reasoning >=0.4.1.1: using equational-reasoning-0.7.0.1
Dependency ghc: using ghc-9.2.6
Dependency ghc-typelits-knownnat: using ghc-typelits-knownnat-0.7.7
Dependency ghc-typelits-natnormalise >=0.4: using
ghc-typelits-natnormalise-0.7.7
Dependency ghc-typelits-presburger >=0.5.1: using
ghc-typelits-presburger-0.6.2.0
Dependency integer-logarithms: using integer-logarithms-1.0.3.1
Dependency template-haskell >=2.8: using template-haskell-2.18.0.0
Dependency QuickCheck: using QuickCheck-2.14.2
Dependency base: using base-4.16.4.0
Dependency equational-reasoning: using equational-reasoning-0.7.0.1
Dependency integer-logarithms: using integer-logarithms-1.0.3.1
Dependency quickcheck-instances: using quickcheck-instances-0.3.28
Dependency tasty: using tasty-1.4.3
Dependency tasty-discover: using tasty-discover-4.2.2
Dependency tasty-hunit: using tasty-hunit-0.10.0.3
Dependency tasty-quickcheck: using tasty-quickcheck-0.10.2
Dependency template-haskell: using template-haskell-2.18.0.0
Dependency type-natural: using type-natural-1.1.0.1
Source component graph:
component lib
component test:type-natural-test dependency lib
Configured component graph:
component type-natural-1.1.0.1-SEgCR8MpYs49rIBoKC8hD
include base-4.16.4.0
include constraints-0.13.4-Ev2HlZTRtn3DbSYmh9cnHY
include equational-reasoning-0.7.0.1-IShDaZne2bs954OCeB4On5
include ghc-9.2.6
include ghc-typelits-knownnat-0.7.7-CHQVSRxxi9g1VkKmxvlbMN
include ghc-typelits-natnormalise-0.7.7-GaCRdSNHVmr5z4fjv4th
include ghc-typelits-presburger-0.6.2.0-BPR6nvEeHXb55wKrnGmn1x
include integer-logarithms-1.0.3.1-HD4Ba46Xh9wIBhXmf2Qwpm
include template-haskell-2.18.0.0
component type-natural-1.1.0.1-Ha8ntknPWIQ8nXv4Mv1hkp-type-natural-test
include QuickCheck-2.14.2-9swKYhr9FC68rr9oJeIYxS
include base-4.16.4.0
include equational-reasoning-0.7.0.1-IShDaZne2bs954OCeB4On5
include integer-logarithms-1.0.3.1-HD4Ba46Xh9wIBhXmf2Qwpm
include quickcheck-instances-0.3.28-Fo0LIbt2gzJ8KzvgUoV0Qz
include tasty-1.4.3-I7UTXXBNQmpBuxsD7iBDf
include tasty-discover-4.2.2-KJvCoJH3cmyBcXXL7ASDgV
include tasty-hunit-0.10.0.3-5gW5br1avVmDRoG1UA3lIa
include tasty-quickcheck-0.10.2-Hc60Fs2w7MeAFcigstw6gD
include template-haskell-2.18.0.0
include type-natural-1.1.0.1-SEgCR8MpYs49rIBoKC8hD
Linked component graph:
unit type-natural-1.1.0.1-SEgCR8MpYs49rIBoKC8hD
include base-4.16.4.0
include constraints-0.13.4-Ev2HlZTRtn3DbSYmh9cnHY
include equational-reasoning-0.7.0.1-IShDaZne2bs954OCeB4On5
include ghc-9.2.6
include ghc-typelits-knownnat-0.7.7-CHQVSRxxi9g1VkKmxvlbMN
include ghc-typelits-natnormalise-0.7.7-GaCRdSNHVmr5z4fjv4th
include ghc-typelits-presburger-0.6.2.0-BPR6nvEeHXb55wKrnGmn1x
include integer-logarithms-1.0.3.1-HD4Ba46Xh9wIBhXmf2Qwpm
include template-haskell-2.18.0.0
Data.Type.Natural=type-natural-1.1.0.1-SEgCR8MpYs49rIBoKC8hD:Data.Type.Natural,Data.Type.Natural.Builtin=type-natural-1.1.0.1-SEgCR8MpYs49rIBoKC8hD:Data.Type.Natural.Builtin,Data.Type.Natural.Lemma.Arithmetic=type-natural-1.1.0.1-SEgCR8MpYs49rIBoKC8hD:Data.Type.Natural.Lemma.Arithmetic,Data.Type.Natural.Lemma.Order=type-natural-1.1.0.1-SEgCR8MpYs49rIBoKC8hD:Data.Type.Natural.Lemma.Order,Data.Type.Natural.Presburger.MinMaxSolver=type-natural-1.1.0.1-SEgCR8MpYs49rIBoKC8hD:Data.Type.Natural.Presburger.MinMaxSolver,Data.Type.Ordinal=type-natural-1.1.0.1-SEgCR8MpYs49rIBoKC8hD:Data.Type.Ordinal,Data.Type.Ordinal.Builtin=type-natural-1.1.0.1-SEgCR8MpYs49rIBoKC8hD:Data.Type.Ordinal.Builtin
unit type-natural-1.1.0.1-Ha8ntknPWIQ8nXv4Mv1hkp-type-natural-test
include QuickCheck-2.14.2-9swKYhr9FC68rr9oJeIYxS
include base-4.16.4.0
include equational-reasoning-0.7.0.1-IShDaZne2bs954OCeB4On5
include integer-logarithms-1.0.3.1-HD4Ba46Xh9wIBhXmf2Qwpm
include quickcheck-instances-0.3.28-Fo0LIbt2gzJ8KzvgUoV0Qz
include tasty-1.4.3-I7UTXXBNQmpBuxsD7iBDf
include tasty-discover-4.2.2-KJvCoJH3cmyBcXXL7ASDgV
include tasty-hunit-0.10.0.3-5gW5br1avVmDRoG1UA3lIa
include tasty-quickcheck-0.10.2-Hc60Fs2w7MeAFcigstw6gD
include template-haskell-2.18.0.0
include type-natural-1.1.0.1-SEgCR8MpYs49rIBoKC8hD
Ready component graph:
definite type-natural-1.1.0.1-SEgCR8MpYs49rIBoKC8hD
depends base-4.16.4.0
depends constraints-0.13.4-Ev2HlZTRtn3DbSYmh9cnHY
depends equational-reasoning-0.7.0.1-IShDaZne2bs954OCeB4On5
depends ghc-9.2.6
depends ghc-typelits-knownnat-0.7.7-CHQVSRxxi9g1VkKmxvlbMN
depends ghc-typelits-natnormalise-0.7.7-GaCRdSNHVmr5z4fjv4th
depends ghc-typelits-presburger-0.6.2.0-BPR6nvEeHXb55wKrnGmn1x
depends integer-logarithms-1.0.3.1-HD4Ba46Xh9wIBhXmf2Qwpm
depends template-haskell-2.18.0.0
definite type-natural-1.1.0.1-Ha8ntknPWIQ8nXv4Mv1hkp-type-natural-test
depends QuickCheck-2.14.2-9swKYhr9FC68rr9oJeIYxS
depends base-4.16.4.0
depends equational-reasoning-0.7.0.1-IShDaZne2bs954OCeB4On5
depends integer-logarithms-1.0.3.1-HD4Ba46Xh9wIBhXmf2Qwpm
depends quickcheck-instances-0.3.28-Fo0LIbt2gzJ8KzvgUoV0Qz
depends tasty-1.4.3-I7UTXXBNQmpBuxsD7iBDf
depends tasty-discover-4.2.2-KJvCoJH3cmyBcXXL7ASDgV
depends tasty-hunit-0.10.0.3-5gW5br1avVmDRoG1UA3lIa
depends tasty-quickcheck-0.10.2-Hc60Fs2w7MeAFcigstw6gD
depends template-haskell-2.18.0.0
depends type-natural-1.1.0.1-SEgCR8MpYs49rIBoKC8hD
Using Cabal-3.6.3.0 compiled by ghc-9.2
Using compiler: ghc-9.2.6
Using install prefix:
/nix/store/kpgqmfzsn5nx08fmh0xbcrfisgrm56hp-type-natural-1.1.0.1
Executables installed in:
/nix/store/kpgqmfzsn5nx08fmh0xbcrfisgrm56hp-type-natural-1.1.0.1/bin
Libraries installed in:
/nix/store/kpgqmfzsn5nx08fmh0xbcrfisgrm56hp-type-natural-1.1.0.1/lib/ghc-9.2.6/x86_64-linux-ghc-9.2.6/type-natural-1.1.0.1-SEgCR8MpYs49rIBoKC8hD
Dynamic Libraries installed in:
/nix/store/kpgqmfzsn5nx08fmh0xbcrfisgrm56hp-type-natural-1.1.0.1/lib/ghc-9.2.6/x86_64-linux-ghc-9.2.6
Private executables installed in:
/nix/store/kpgqmfzsn5nx08fmh0xbcrfisgrm56hp-type-natural-1.1.0.1/libexec/x86_64-linux-ghc-9.2.6/type-natural-1.1.0.1
Data files installed in:
/nix/store/kpgqmfzsn5nx08fmh0xbcrfisgrm56hp-type-natural-1.1.0.1/share/x86_64-linux-ghc-9.2.6/type-natural-1.1.0.1
Documentation installed in:
/nix/store/5rzvavmxnk1szn2d1f62x4lk917wvnq5-type-natural-1.1.0.1-doc/share/doc/type-natural-1.1.0.1
Configuration files installed in:
/nix/store/kpgqmfzsn5nx08fmh0xbcrfisgrm56hp-type-natural-1.1.0.1/etc
No alex found
Using ar found on system at:
/nix/store/qmmd097h4rwh2pwgz9l9i0byxb0x8q8l-binutils-2.40/bin/ar
No c2hs found
No cpphs found
No doctest found
Using gcc version 12.2.0 given by user at:
/nix/store/l0fvy72hpfdpjjs3dk4112f57x7r3dlm-gcc-wrapper-12.2.0/bin/gcc
Using ghc version 9.2.6 found on system at:
/nix/store/322zfsd89g1xph46glm0jjvwjkj09mv4-ghc-9.2.6/bin/ghc
Using ghc-pkg version 9.2.6 found on system at:
/nix/store/322zfsd89g1xph46glm0jjvwjkj09mv4-ghc-9.2.6/bin/ghc-pkg-9.2.6
No ghcjs found
No ghcjs-pkg found
No greencard found
Using haddock version 2.26.0 found on system at:
/nix/store/322zfsd89g1xph46glm0jjvwjkj09mv4-ghc-9.2.6/bin/haddock-ghc-9.2.6
No happy found
Using haskell-suite found on system at: haskell-suite-dummy-location
Using haskell-suite-pkg found on system at: haskell-suite-pkg-dummy-location
No hmake found
Using hpc version 0.68 found on system at:
/nix/store/322zfsd89g1xph46glm0jjvwjkj09mv4-ghc-9.2.6/bin/hpc
Using hsc2hs version 0.68.8 found on system at:
/nix/store/322zfsd89g1xph46glm0jjvwjkj09mv4-ghc-9.2.6/bin/hsc2hs
Using hscolour version 1.24 found on system at:
/nix/store/cs28fbj8zg8f7m49pgi85xan4x6wjyxn-hscolour-1.24.4/bin/HsColour
No jhc found
Using ld found on system at:
/nix/store/72nvsslmgq8mp6ywxnl9i0rr8x174sjw-binutils-wrapper-2.40/bin/ld.gold
No pkg-config found
Using runghc version 9.2.6 found on system at:
/nix/store/322zfsd89g1xph46glm0jjvwjkj09mv4-ghc-9.2.6/bin/runghc-9.2.6
Using strip version 2.40 found on system at:
/nix/store/l0fvy72hpfdpjjs3dk4112f57x7r3dlm-gcc-wrapper-12.2.0/bin/strip
Using tar found on system at:
/nix/store/dyyx4hjy9sx92nwwlj4mm334b7dkzj70-gnutar-1.34/bin/tar
No uhc found
building
Preprocessing library for type-natural-1.1.0.1..
Building library for type-natural-1.1.0.1..
[ 1 of 10] Compiling Data.Type.Natural.Presburger.MinMaxSolver ( src/Data/Type/Natural/Presburger/MinMaxSolver.hs, dist/build/Data/Type/Natural/Presburger/MinMaxSolver.o, dist/build/Data/Type/Natural/Presburger/MinMaxSolver.dyn_o )
src/Data/Type/Natural/Presburger/MinMaxSolver.hs:14:1: warning: [-Wunused-imports]
The import of ‘GHC.Plugins’ is redundant
except perhaps to import instances from ‘GHC.Plugins’
To import instances alone, use: import GHC.Plugins()
|
14 | import GHC.Plugins
| ^^^^^^^^^^^^^^^^^^...
src/Data/Type/Natural/Presburger/MinMaxSolver.hs:21:1: warning: [-Wunused-imports]
The import of ‘GHC.Tc.Plugin’ is redundant
except perhaps to import instances from ‘GHC.Tc.Plugin’
To import instances alone, use: import GHC.Tc.Plugin()
|
21 | import GHC.Tc.Plugin
| ^^^^^^^^^^^^^^^^^^^^
[ 2 of 10] Compiling Data.Type.Natural.Utils ( src/Data/Type/Natural/Utils.hs, dist/build/Data/Type/Natural/Utils.o, dist/build/Data/Type/Natural/Utils.dyn_o )
[ 3 of 10] Compiling Data.Type.Natural.Core ( src/Data/Type/Natural/Core.hs, dist/build/Data/Type/Natural/Core.o, dist/build/Data/Type/Natural/Core.dyn_o )
src/Data/Type/Natural/Core.hs:76:1: warning: [-Wunused-imports]
The import of ‘Numeric.Natural’ is redundant
except perhaps to import instances from ‘Numeric.Natural’
To import instances alone, use: import Numeric.Natural()
|
76 | import Numeric.Natural (Natural)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[ 4 of 10] Compiling Data.Type.Natural.Lemma.Presburger ( src/Data/Type/Natural/Lemma/Presburger.hs, dist/build/Data/Type/Natural/Lemma/Presburger.o, dist/build/Data/Type/Natural/Lemma/Presburger.dyn_o )
src/Data/Type/Natural/Lemma/Presburger.hs:37:1: warning: [-Woverlapping-patterns]
Pattern match has inaccessible right hand side
In an equation for ‘succNonCyclic’:
succNonCyclic (Succ n) Refl = ...
|
37 | succNonCyclic (Succ n) Refl = succNonCyclic n Refl
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
src/Data/Type/Natural/Lemma/Presburger.hs:37:24: warning: [-Winaccessible-code]
• Could not deduce: 1 ~ 0
from the context: n ~ Succ n1
bound by a pattern with pattern synonym:
Succ :: forall (n :: Natural).
() =>
forall (n1 :: Natural). (n ~ Succ n1) => SNat n1 -> SNat n,
in an equation for ‘succNonCyclic’
at src/Data/Type/Natural/Lemma/Presburger.hs:37:16-21
or from: 0 ~ Succ n
bound by a pattern with constructor:
Refl :: forall {k} (a :: k). a :~: a,
in an equation for ‘succNonCyclic’
at src/Data/Type/Natural/Lemma/Presburger.hs:37:24-27
Inaccessible code in
a pattern with constructor: Refl :: forall {k} (a :: k). a :~: a,
in an equation for ‘succNonCyclic’
• In the pattern: Refl
In an equation for ‘succNonCyclic’:
succNonCyclic (Succ n) Refl = succNonCyclic n Refl
|
37 | succNonCyclic (Succ n) Refl = succNonCyclic n Refl
| ^^^^
[ 5 of 10] Compiling Data.Type.Natural.Lemma.Arithmetic ( src/Data/Type/Natural/Lemma/Arithmetic.hs, dist/build/Data/Type/Natural/Lemma/Arithmetic.o, dist/build/Data/Type/Natural/Lemma/Arithmetic.dyn_o )
src/Data/Type/Natural/Lemma/Arithmetic.hs:290:1: warning: [-Woverlapping-patterns]
Pattern match has inaccessible right hand side
In an equation for ‘multEqSuccElimL’:
multEqSuccElimL Zero _ l Refl = ...
|
290 | multEqSuccElimL Zero _ l Refl = absurd $ succNonCyclic l Refl
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
src/Data/Type/Natural/Lemma/Arithmetic.hs:290:26: warning: [-Winaccessible-code]
• Could not deduce: 1 ~ 0
from the context: n ~ 0
bound by a pattern with pattern synonym:
Zero :: forall (n :: Natural). () => (n ~ 0) => SNat n,
in an equation for ‘multEqSuccElimL’
at src/Data/Type/Natural/Lemma/Arithmetic.hs:290:17-20
or from: Succ l ~ (n * m)
bound by a pattern with constructor:
Refl :: forall {k} (a :: k). a :~: a,
in an equation for ‘multEqSuccElimL’
at src/Data/Type/Natural/Lemma/Arithmetic.hs:290:26-29
Inaccessible code in
a pattern with constructor: Refl :: forall {k} (a :: k). a :~: a,
in an equation for ‘multEqSuccElimL’
• In the pattern: Refl
In an equation for ‘multEqSuccElimL’:
multEqSuccElimL Zero _ l Refl = absurd $ succNonCyclic l Refl
|
290 | multEqSuccElimL Zero _ l Refl = absurd $ succNonCyclic l Refl
| ^^^^
src/Data/Type/Natural/Lemma/Arithmetic.hs:294:1: warning: [-Woverlapping-patterns]
Pattern match has inaccessible right hand side
In an equation for ‘multEqSuccElimR’:
multEqSuccElimR _ Zero l Refl = ...
|
294 | multEqSuccElimR _ Zero l Refl = absurd $ succNonCyclic l Refl
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
src/Data/Type/Natural/Lemma/Arithmetic.hs:294:26: warning: [-Winaccessible-code]
• Could not deduce: 1 ~ 0
from the context: m ~ 0
bound by a pattern with pattern synonym:
Zero :: forall (n :: Natural). () => (n ~ 0) => SNat n,
in an equation for ‘multEqSuccElimR’
at src/Data/Type/Natural/Lemma/Arithmetic.hs:294:19-22
or from: Succ l ~ (n * m)
bound by a pattern with constructor:
Refl :: forall {k} (a :: k). a :~: a,
in an equation for ‘multEqSuccElimR’
at src/Data/Type/Natural/Lemma/Arithmetic.hs:294:26-29
Inaccessible code in
a pattern with constructor: Refl :: forall {k} (a :: k). a :~: a,
in an equation for ‘multEqSuccElimR’
• In the pattern: Refl
In an equation for ‘multEqSuccElimR’:
multEqSuccElimR _ Zero l Refl = absurd $ succNonCyclic l Refl
|
294 | multEqSuccElimR _ Zero l Refl = absurd $ succNonCyclic l Refl
| ^^^^
[ 6 of 10] Compiling Data.Type.Natural.Lemma.Order ( src/Data/Type/Natural/Lemma/Order.hs, dist/build/Data/Type/Natural/Lemma/Order.o, dist/build/Data/Type/Natural/Lemma/Order.dyn_o )
src/Data/Type/Natural/Lemma/Order.hs:155:1: warning: [-Wunused-imports]
The import of ‘Numeric.Natural’ is redundant
except perhaps to import instances from ‘Numeric.Natural’
To import instances alone, use: import Numeric.Natural()
|
155 | import Numeric.Natural (Natural)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[ 7 of 10] Compiling Data.Type.Natural ( src/Data/Type/Natural.hs, dist/build/Data/Type/Natural.o, dist/build/Data/Type/Natural.dyn_o )
src/Data/Type/Natural.hs:118:1: warning: [-Wunused-imports]
The import of ‘Numeric.Natural’ is redundant
except perhaps to import instances from ‘Numeric.Natural’
To import instances alone, use: import Numeric.Natural()
|
118 | import Numeric.Natural
| ^^^^^^^^^^^^^^^^^^^^^^
[ 8 of 10] Compiling Data.Type.Natural.Builtin ( src/Data/Type/Natural/Builtin.hs, dist/build/Data/Type/Natural/Builtin.o, dist/build/Data/Type/Natural/Builtin.dyn_o )
[ 9 of 10] Compiling Data.Type.Ordinal ( src/Data/Type/Ordinal.hs, dist/build/Data/Type/Ordinal.o, dist/build/Data/Type/Ordinal.dyn_o )
src/Data/Type/Ordinal.hs:67:1: warning: [-Wunused-imports]
The import of ‘Data.Type.Natural.Core’ is redundant
except perhaps to import instances from ‘Data.Type.Natural.Core’
To import instances alone, use: import Data.Type.Natural.Core()
|
67 | import Data.Type.Natural.Core (SNat (..))
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[10 of 10] Compiling Data.Type.Ordinal.Builtin ( src/Data/Type/Ordinal/Builtin.hs, dist/build/Data/Type/Ordinal/Builtin.o, dist/build/Data/Type/Ordinal/Builtin.dyn_o )
[ 1 of 10] Compiling Data.Type.Natural.Presburger.MinMaxSolver ( src/Data/Type/Natural/Presburger/MinMaxSolver.hs, dist/build/Data/Type/Natural/Presburger/MinMaxSolver.p_o )
src/Data/Type/Natural/Presburger/MinMaxSolver.hs:14:1: warning: [-Wunused-imports]
The import of ‘GHC.Plugins’ is redundant
except perhaps to import instances from ‘GHC.Plugins’
To import instances alone, use: import GHC.Plugins()
|
14 | import GHC.Plugins
| ^^^^^^^^^^^^^^^^^^...
src/Data/Type/Natural/Presburger/MinMaxSolver.hs:21:1: warning: [-Wunused-imports]
The import of ‘GHC.Tc.Plugin’ is redundant
except perhaps to import instances from ‘GHC.Tc.Plugin’
To import instances alone, use: import GHC.Tc.Plugin()
|
21 | import GHC.Tc.Plugin
| ^^^^^^^^^^^^^^^^^^^^
[ 2 of 10] Compiling Data.Type.Natural.Utils ( src/Data/Type/Natural/Utils.hs, dist/build/Data/Type/Natural/Utils.p_o )
[ 3 of 10] Compiling Data.Type.Natural.Core ( src/Data/Type/Natural/Core.hs, dist/build/Data/Type/Natural/Core.p_o )
src/Data/Type/Natural/Core.hs:76:1: warning: [-Wunused-imports]
The import of ‘Numeric.Natural’ is redundant
except perhaps to import instances from ‘Numeric.Natural’
To import instances alone, use: import Numeric.Natural()
|
76 | import Numeric.Natural (Natural)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[ 4 of 10] Compiling Data.Type.Natural.Lemma.Presburger ( src/Data/Type/Natural/Lemma/Presburger.hs, dist/build/Data/Type/Natural/Lemma/Presburger.p_o )
src/Data/Type/Natural/Lemma/Presburger.hs:37:1: warning: [-Woverlapping-patterns]
Pattern match has inaccessible right hand side
In an equation for ‘succNonCyclic’:
succNonCyclic (Succ n) Refl = ...
|
37 | succNonCyclic (Succ n) Refl = succNonCyclic n Refl
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
src/Data/Type/Natural/Lemma/Presburger.hs:37:24: warning: [-Winaccessible-code]
• Could not deduce: 1 ~ 0
from the context: n ~ Succ n1
bound by a pattern with pattern synonym:
Succ :: forall (n :: Natural).
() =>
forall (n1 :: Natural). (n ~ Succ n1) => SNat n1 -> SNat n,
in an equation for ‘succNonCyclic’
at src/Data/Type/Natural/Lemma/Presburger.hs:37:16-21
or from: 0 ~ Succ n
bound by a pattern with constructor:
Refl :: forall {k} (a :: k). a :~: a,
in an equation for ‘succNonCyclic’
at src/Data/Type/Natural/Lemma/Presburger.hs:37:24-27
Inaccessible code in
a pattern with constructor: Refl :: forall {k} (a :: k). a :~: a,
in an equation for ‘succNonCyclic’
• In the pattern: Refl
In an equation for ‘succNonCyclic’:
succNonCyclic (Succ n) Refl = succNonCyclic n Refl
|
37 | succNonCyclic (Succ n) Refl = succNonCyclic n Refl
| ^^^^
[ 5 of 10] Compiling Data.Type.Natural.Lemma.Arithmetic ( src/Data/Type/Natural/Lemma/Arithmetic.hs, dist/build/Data/Type/Natural/Lemma/Arithmetic.p_o )
src/Data/Type/Natural/Lemma/Arithmetic.hs:290:1: warning: [-Woverlapping-patterns]
Pattern match has inaccessible right hand side
In an equation for ‘multEqSuccElimL’:
multEqSuccElimL Zero _ l Refl = ...
|
290 | multEqSuccElimL Zero _ l Refl = absurd $ succNonCyclic l Refl
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
src/Data/Type/Natural/Lemma/Arithmetic.hs:290:26: warning: [-Winaccessible-code]
• Could not deduce: 1 ~ 0
from the context: n ~ 0
bound by a pattern with pattern synonym:
Zero :: forall (n :: Natural). () => (n ~ 0) => SNat n,
in an equation for ‘multEqSuccElimL’
at src/Data/Type/Natural/Lemma/Arithmetic.hs:290:17-20
or from: Succ l ~ (n * m)
bound by a pattern with constructor:
Refl :: forall {k} (a :: k). a :~: a,
in an equation for ‘multEqSuccElimL’
at src/Data/Type/Natural/Lemma/Arithmetic.hs:290:26-29
Inaccessible code in
a pattern with constructor: Refl :: forall {k} (a :: k). a :~: a,
in an equation for ‘multEqSuccElimL’
• In the pattern: Refl
In an equation for ‘multEqSuccElimL’:
multEqSuccElimL Zero _ l Refl = absurd $ succNonCyclic l Refl
|
290 | multEqSuccElimL Zero _ l Refl = absurd $ succNonCyclic l Refl
| ^^^^
src/Data/Type/Natural/Lemma/Arithmetic.hs:294:1: warning: [-Woverlapping-patterns]
Pattern match has inaccessible right hand side
In an equation for ‘multEqSuccElimR’:
multEqSuccElimR _ Zero l Refl = ...
|
294 | multEqSuccElimR _ Zero l Refl = absurd $ succNonCyclic l Refl
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
src/Data/Type/Natural/Lemma/Arithmetic.hs:294:26: warning: [-Winaccessible-code]
• Could not deduce: 1 ~ 0
from the context: m ~ 0
bound by a pattern with pattern synonym:
Zero :: forall (n :: Natural). () => (n ~ 0) => SNat n,
in an equation for ‘multEqSuccElimR’
at src/Data/Type/Natural/Lemma/Arithmetic.hs:294:19-22
or from: Succ l ~ (n * m)
bound by a pattern with constructor:
Refl :: forall {k} (a :: k). a :~: a,
in an equation for ‘multEqSuccElimR’
at src/Data/Type/Natural/Lemma/Arithmetic.hs:294:26-29
Inaccessible code in
a pattern with constructor: Refl :: forall {k} (a :: k). a :~: a,
in an equation for ‘multEqSuccElimR’
• In the pattern: Refl
In an equation for ‘multEqSuccElimR’:
multEqSuccElimR _ Zero l Refl = absurd $ succNonCyclic l Refl
|
294 | multEqSuccElimR _ Zero l Refl = absurd $ succNonCyclic l Refl
| ^^^^
[ 6 of 10] Compiling Data.Type.Natural.Lemma.Order ( src/Data/Type/Natural/Lemma/Order.hs, dist/build/Data/Type/Natural/Lemma/Order.p_o )
src/Data/Type/Natural/Lemma/Order.hs:155:1: warning: [-Wunused-imports]
The import of ‘Numeric.Natural’ is redundant
except perhaps to import instances from ‘Numeric.Natural’
To import instances alone, use: import Numeric.Natural()
|
155 | import Numeric.Natural (Natural)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
<no location info>: error:
ghc: panic! (the 'impossible' happened)
(GHC version 9.2.6:
expectOnly: cgLit:Rubbish
Please report this as a GHC bug: https://www.haskell.org/ghc/reportabug
Expected behavior
It compiles fine
Environment
- GHC version used: 9.2.6
Optional:
- Operating System: NixOS
- System Architecture: x86_64-linux