#4045: Ghc panics 'ASSERT failed! file compiler/typecheck/TcTyFuns.lhs line 318'
when compiling my ghc tree.
-------------------------------+--------------------------------------------
Reporter: milan | Owner:
Type: bug | Status: new
Priority: normal | Milestone:
Component: Compiler | Version: 6.13
Keywords: | Difficulty:
Os: Linux | Testcase:
Architecture: x86_64 (amd64) | Failure: Compile-time crash
-------------------------------+--------------------------------------------
Description changed by simonpj:
Old description:
> In the middle of the work on GHC backend I triggered a bug in GHC. After
> discussing with simonpj, I have snapshotted the source tree, as I could
> not reduce the test case.
>
> When compiled the stage 1 compiler with -DDEBUG, ghc-stage1 compiler
> panics when compiling stage 2. It is enough to invoke 'make' in the tree
> to get following compilation error:
> {{{
> ghc-stage1: panic! (the 'impossible' happened)
> (GHC version 6.13 for x86_64-unknown-linux):
> ASSERT failed! file compiler/typecheck/TcTyFuns.lhs line 318
> [Wanted t_a1KB{tv} [tau] :: hoopl-3.8.0.0:Compiler.Hoopl.Dataflow.Fact{tc
> raN}
> x{tv a1Ks} [sk]
> ghc-6.13:CmmSpillReload.DualLive{tc r11W}
> ~
> hoopl-3.8.0.0:Compiler.Hoopl.Dataflow.Fact{tc
> raN}
> x{tv a1Ks} [sk] f{tv a1Kt} [tau]]
> }}}
>
> The file causing the bug is compiler/cmm/CmmSpillReload.hs. On line 271,
> there is a description of a change that makes the source compile.
New description:
In the middle of the work on GHC backend I triggered a bug in GHC. After
discussing with simonpj, I have snapshotted the source tree, as I could
not reduce the test case.
When compiled the stage 1 compiler with -DDEBUG, ghc-stage1 compiler
panics when compiling stage 2. It is enough to invoke 'make' in the tree
to get following compilation error:
{{{
ghc-stage1: panic! (the 'impossible' happened)
(GHC version 6.13 for x86_64-unknown-linux):
ASSERT failed! file compiler/typecheck/TcTyFuns.lhs line 318
[Wanted t_a1KB{tv} [tau] :: hoopl-3.8.0.0:Compiler.Hoopl.Dataflow.Fact{tc
raN}
x{tv a1Ks} [sk]
ghc-6.13:CmmSpillReload.DualLive{tc r11W}
~
hoopl-3.8.0.0:Compiler.Hoopl.Dataflow.Fact{tc
raN}
x{tv a1Ks} [sk] f{tv a1Kt} [tau]]
}}}
The file causing the bug is compiler/cmm/CmmSpillReload.hs. On line 271,
there is a description of a change that makes the source compile.
This is different to #4044:
* #4044 is a bug in 6.12.2
* #4045 is a bug in the HEAD, when compiling code that 6.12.2 managed to
compile.
Milan managed to find a way to change the source code to avoid both bugs.
--
--
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/4045#comment:2>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
_______________________________________________
Glasgow-haskell-bugs mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs