Compiling the Haskell bindings for ROSE causes a ghc panic
I tried to build the ROSE compiler infrastructure project (rosecompiler.org) on my Debian box. I managed to coerce everything else into at least appearing to work, but when GHC was compiling the Haskell bindings module, it crashed and asked me to report the crash as a bug, so I am doing so. I should note that the configure script supplied with ROSE refused to configure in the absence of GHC 6.10 until I edited it, so perhaps this issue is known, at least to the ROSE team (or maybe they had something else in mind). Anyway, I am reporting the bug like I was told.
I'm running Debian Squeeze on x86_64, GHC version 6.12.1. Here is the relevant portion of the output from make:
/usr/bin/runghc Setup.hs build
Preprocessing library rose-0.9.5.1...
Building rose-0.9.5.1...
[ 1 of 708] Compiling ROSE.CxxContainers ( ROSE/CxxContainers.hs, dist/build/ROSE/CxxContainers.o )
[ 2 of 708] Compiling ROSE.Sage3.Classes ( ROSE/Sage3/Classes.hs, dist/build/ROSE/Sage3/Classes.o )
[ 3 of 708] Compiling ROSE.Sage3.Misc[boot] ( ROSE/Sage3/Misc.hs-boot, dist/build/ROSE/Sage3/Misc.o-boot )
[ 4 of 708] Compiling ROSE.Sage3.Methods.SgNode ( ROSE/Sage3/Methods/SgNode.hs, dist/build/ROSE/Sage3/Methods/SgNode.o )
[ 5 of 708] Compiling ROSE.Sage3.Misc ( ROSE/Sage3/Misc.hs, dist/build/ROSE/Sage3/Misc.o )
[ 6 of 708] Compiling ROSE.Sage3.Methods.SgSupport ( ROSE/Sage3/Methods/SgSupport.hs, dist/build/ROSE/Sage3/Methods/SgSupport.o )
[ 7 of 708] Compiling ROSE.Sage3.Methods.SgModifier ( ROSE/Sage3/Methods/SgModifier.hs, dist/build/ROSE/Sage3/Methods/SgModifier.o )
[ 8 of 708] Compiling ROSE.Sage3.Methods.SgModifierNodes ( ROSE/Sage3/Methods/SgModifierNodes.hs, dist/build/ROSE/Sage3/Methods/SgModifierNodes.o )
[ 9 of 708] Compiling ROSE.Sage3.Methods.SgConstVolatileModifier ( ROSE/Sage3/Methods/SgConstVolatileModifier.hs, dist/build/ROSE/Sage3/Methods/SgConstVolatileModifier.o )
[ 10 of 708] Compiling ROSE.Sage3.Methods.SgStorageModifier ( ROSE/Sage3/Methods/SgStorageModifier.hs, dist/build/ROSE/Sage3/Methods/SgStorageModifier.o )
[ 11 of 708] Compiling ROSE.Sage3.Methods.SgAccessModifier ( ROSE/Sage3/Methods/SgAccessModifier.hs, dist/build/ROSE/Sage3/Methods/SgAccessModifier.o )
[ 12 of 708] Compiling ROSE.Sage3.Methods.SgFunctionModifier ( ROSE/Sage3/Methods/SgFunctionModifier.hs, dist/build/ROSE/Sage3/Methods/SgFunctionModifier.o )
[ 13 of 708] Compiling ROSE.Sage3.Methods.SgUPC_AccessModifier ( ROSE/Sage3/Methods/SgUPC_AccessModifier.hs, dist/build/ROSE/Sage3/Methods/SgUPC_AccessModifier.o )
[ 14 of 708] Compiling ROSE.Sage3.Methods.SgSpecialFunctionModifier ( ROSE/Sage3/Methods/SgSpecialFunctionModifier.hs, dist/build/ROSE/Sage3/Methods/SgSpecialFunctionModifier.o )
[ 15 of 708] Compiling ROSE.Sage3.Methods.SgElaboratedTypeModifier ( ROSE/Sage3/Methods/SgElaboratedTypeModifier.hs, dist/build/ROSE/Sage3/Methods/SgElaboratedTypeModifier.o )
[ 16 of 708] Compiling ROSE.Sage3.Methods.SgLinkageModifier ( ROSE/Sage3/Methods/SgLinkageModifier.hs, dist/build/ROSE/Sage3/Methods/SgLinkageModifier.o )
[ 17 of 708] Compiling ROSE.Sage3.Methods.SgBaseClassModifier ( ROSE/Sage3/Methods/SgBaseClassModifier.hs, dist/build/ROSE/Sage3/Methods/SgBaseClassModifier.o )
[ 18 of 708] Compiling ROSE.Sage3.Methods.SgTypeModifier ( ROSE/Sage3/Methods/SgTypeModifier.hs, dist/build/ROSE/Sage3/Methods/SgTypeModifier.o )
[ 19 of 708] Compiling ROSE.Sage3.Methods.SgDeclarationModifier ( ROSE/Sage3/Methods/SgDeclarationModifier.hs, dist/build/ROSE/Sage3/Methods/SgDeclarationModifier.o )
[ 20 of 708] Compiling ROSE.Sage3.Methods.SgOpenclAccessModeModifier ( ROSE/Sage3/Methods/SgOpenclAccessModeModifier.hs, dist/build/ROSE/Sage3/Methods/SgOpenclAccessModeModifier.o )
[ 21 of 708] Compiling ROSE.Sage3.Methods.SgSymbolTable ( ROSE/Sage3/Methods/SgSymbolTable.hs, dist/build/ROSE/Sage3/Methods/SgSymbolTable.o )
ghc: panic! (the 'impossible' happened)
(GHC version 6.12.1 for x86_64-unknown-linux):
RegAllocLinear.getStackSlotFor: out of stack slots
If you are trying to compile SHA1.hs from the crypto library then this
is a known limitation in the linear allocator.
Try enabling the graph colouring allocator with -fregs-graph instead. You can still file a bug report if you like.
Please report this as a GHC bug: http://www.haskell.org/ghc/reportabug
Debian-specific note: please remove old .hi files and try again.
For details, see /usr/share/doc/ghc6/README.Debian
I also enclose the offending source file as an attachment, in case that will help.
Thank you,
~Alexey
Trac metadata
Trac field | Value |
---|---|
Version | 6.12.1 |
Type | Bug |
TypeOfFailure | OtherFailure |
Priority | normal |
Resolution | Unresolved |
Component | Compiler |
Test case | |
Differential revisions | |
BlockedBy | |
Related | |
Blocking | |
CC | |
Operating system | |
Architecture |