On Mon, Apr 19, 2010 at 01:40:28PM +0100, Simon Marlow wrote:
> >This patch appears to uncover some strange problem during bootstrapping
> >a ghc-6.13 stage1 compiler with an existing ghc-6.12 compiler.
> >Initially, it lead to the famous panic involved with outdated
> >interface files when compiling HsExpr.lhs:
> >
> >ghc: panic! (the 'impossible' happened)
> > (GHC version 6.12.2 for x86_64-unknown-openbsd):
> > tcIfaceGlobal (local): not found:
> > ghc-6.13:HsExpr.$fxDataHsExpr{v rlX}
[...]
> The panic is obviously a bug, but it's not clear whether it is a bug in
> the build system (a missing dependency) or in GHC. Can you give us
> instructions to reproduce?
Yep.
I'm using ghc-6.12 (in this case from the not-yet-really-released
ghc-6.12.2 tarball, but you get the same results for using ghc 6.12
branch (obviously) or the release candidate. Information about my ghc-6.12:
$ ghc --info
[("Project name","The Glorious Glasgow Haskell Compilation System")
,("Project version","6.12.2")
,("Booter version","6.12.1.20100318")
,("Stage","2")
,("Have interpreter","YES")
,("Object splitting","YES")
,("Have native code generator","YES")
,("Support SMP","YES")
,("Unregisterised","NO")
,("Tables next to code","YES")
,("Win32 DLLs","")
,("RTS ways","l debug thr thr_debug thr_l thr_p ")
,("Leading underscore","NO")
,("Debug on","False")
,("LibDir","/usr/local/lib/ghc")
]
$ ghc +RTS --info
[("GHC RTS", "YES")
,("GHC version", "6.12.2")
,("RTS way", "rts_thr")
,("Host platform", "x86_64-unknown-openbsd")
,("Host architecture", "x86_64")
,("Host OS", "openbsd")
,("Host vendor", "unknown")
,("Build platform", "x86_64-unknown-openbsd")
,("Build architecture", "x86_64")
,("Build OS", "openbsd")
,("Build vendor", "unknown")
,("Target platform", "x86_64-unknown-openbsd")
,("Target architecture", "x86_64")
,("Target OS", "openbsd")
,("Target vendor", "unknown")
,("Word size", "64")
,("Compiler unregisterised", "NO")
,("Tables next to code", "YES")
]
The major difference between this one and `normal' builds maybe
that I'm currently using integer-simple.
For building ghc-head, I'm using the following mk/build.mk:
HSCOLOUR_SRCS = NO
GhcLibHcOpts=-O -fgenerics -fasm
GhcStage1HcOpts=-O -fasm
GhcStage2HcOpts=-O -fasm
SplitObjs=NO
GhcLibWays=v
GhcRTSWays=
INTEGER_LIBRARY=integer-simple
SRC_CC_OPTS += -g -O0
HADDOCK_DOCS=NO
LATEX_DOCS=NO
BUILD_DOCBOOK_HTML=NO
GhcWithInterpreter = YES
GhcWithSMP = NO
Then I just run gmake and get the panic on HsExpr.lhs.
I don't know if it is of any help, but below are the lat (failing)
command line with -v, the output, and a ghc-pkg list -v (from the
ghc-6.12 I'm using for bootstrapping):
"/usr/local/bin/ghc" -v -H32m -O -package-conf libraries/bootstrapping.conf \
-package-name ghc-6.13 -hide-all-packages -i -icompiler/nativeGen \
-icompiler/basicTypes -icompiler/cmm -icompiler/codeGen -icompiler/coreSyn \
-icompiler/deSugar -icompiler/ghci -icompiler/hsSyn -icompiler/iface \
-icompiler/main -icompiler/parser -icompiler/prelude -icompiler/profiling \
-icompiler/rename -icompiler/simplCore -icompiler/simplStg \
-icompiler/specialise -icompiler/stgSyn -icompiler/stranal \
-icompiler/typecheck -icompiler/types -icompiler/utils -icompiler/vectorise \
-icompiler/stage1/build -icompiler/stage1/build/autogen \
-Icompiler/stage1/build -Icompiler/stage1/build/autogen -Icompiler/stage1 \
-Icompiler/../libraries/base/cbits -Icompiler/../libraries/base/include \
-Icompiler/. -Icompiler/parser -Icompiler/utils -optP-include \
-optPcompiler/stage1/build/autogen/cabal_macros.h -package Cabal-1.9.0 \
-package array-0.3.0.0 -package base-4.2.0.1 \
-package bin-package-db-0.0.0.0 -package bytestring-0.9.1.6 \
-package containers-0.3.0.0 -package directory-1.0.1.1 -package
filepath-1.1.0.4 \
-package hpc-0.5.0.5 -package old-time-1.0.0.4 -package process-1.0.1.2 \
-package unix-2.4.0.1 -Wall -fno-warn-name-shadowing -fno-warn-orphans \
-XCPP -XMagicHash -XUnboxedTuples -XPatternGuards \
-XForeignFunctionInterface -XEmptyDataDecls -XTypeSynonymInstances \
-XMultiParamTypeClasses -XFlexibleInstances -XRank2Types \
-XScopedTypeVariables -XDeriveDataTypeable -XRelaxedPolyRec -DSTAGE=1 \
-O -fasm -odir compiler/stage1/build -hidir compiler/stage1/build \
-stubdir compiler/stage1/build -hisuf hi -osuf o -hcsuf hc \
-c compiler/hsSyn/HsExpr.lhs -o compiler/stage1/build/HsExpr.o
And here's the output:
Glasgow Haskell Compiler, Version 6.12.2, for Haskell 98, stage 2 booted by GHC
version 6.12.1.20100318
Using binary package database: /usr/local/lib/ghc/package.conf.d/package.cache
Using package config file: libraries/bootstrapping.conf
package bin-package-db-0.0.0.0-555abdde5052b77b4311e02396fee9cd is shadowed by
package bin-package-db-0.0.0.0-inplace
package binary-0.5.0.2-6e855173990f75b656a36db7e9d948c2 is shadowed by package
binary-0.5.0.2-inplace
package extensible-exceptions-0.1.1.1-f050fb0b3d42075b6d046a1db4efb478 is
shadowed by package extensible-exceptions-0.1.1.1-inplace
package ghc-6.12.2-3b204fa6e462c10fc52b544d21aa1074 is unusable due to missing
or recursive dependencies:
bin-package-db-0.0.0.0-555abdde5052b77b4311e02396fee9cd
hpc-0.5.0.5-20d72620b8f8f931490bd85ad03bfaf2
package hashed-storage-0.4.11-4fdf54f4f332024dc5b213c4749689f0 is unusable due
to missing or recursive dependencies:
binary-0.5.0.2-6e855173990f75b656a36db7e9d948c2
extensible-exceptions-0.1.1.1-f050fb0b3d42075b6d046a1db4efb478
package haskeline-0.6.2.1-c1117699a0a9a3cb7677a765b0dd9833 is unusable due to
missing or recursive dependencies:
extensible-exceptions-0.1.1.1-f050fb0b3d42075b6d046a1db4efb478
terminfo-0.3.1.1-027b2e719a3d2c044001c6d639558f7e
package hpc-0.5.0.5-20d72620b8f8f931490bd85ad03bfaf2 is shadowed by package
hpc-0.5.0.5-inplace
package stringtable-atom-0.0.6.1-fc705e8f6ab37e421dfc85d225d66be0 is unusable
due to missing or recursive dependencies:
binary-0.5.0.2-6e855173990f75b656a36db7e9d948c2
package terminfo-0.3.1.1-027b2e719a3d2c044001c6d639558f7e is unusable due to
missing or recursive dependencies:
extensible-exceptions-0.1.1.1-f050fb0b3d42075b6d046a1db4efb478
wired-in package ghc-prim mapped to
ghc-prim-0.2.0.0-5da421112969a971aa3433fdf154b37a
wired-in package integer-simple mapped to
integer-simple-0.1.0.0-a0a63eea5cd12d23dba736ace80ade5e
wired-in package base mapped to base-4.2.0.1-eb8a2da95653d38174492b61ec8372cc
wired-in package rts mapped to builtin_rts
wired-in package haskell98 mapped to
haskell98-1.0.1.1-c8ca5a0640aa374ec3c52513cf91d1e6
wired-in package template-haskell mapped to
template-haskell-2.4.0.1-d1f775afc8611fafe92143e1bf91682d
wired-in package dph-seq mapped to
dph-seq-0.4.0-afc1ce2a16c9b47c29115f7c2c6196f8
wired-in package dph-par mapped to
dph-par-0.4.0-fddcb63a510f9e900f33faae27810259
Hsc static flags: -static
Created temporary directory: /tmp/ghc22775_0
*** Literate pre-processor:
/usr/local/lib/ghc/unlit -h compiler/hsSyn/HsExpr.lhs compiler/hsSyn/HsExpr.lhs
/tmp/ghc22775_0/ghc22775_0.lpp
*** C pre-processor:
cc -E -undef -traditional -v -I compiler/stage1/build -I compiler/stage1/build
-I compiler/stage1/build/autogen -I compiler/stage1 -I
compiler/../libraries/base/cbits -I compiler/../libraries/base/include -I c
ompiler/. -I compiler/parser -I compiler/utils -I
/usr/local/lib/ghc/bytestring-0.9.1.6/include -I
/usr/local/lib/ghc/process-1.0.1.2/include -I
/usr/local/lib/ghc/directory-1.0.1.1/include -I /usr/local/lib/g
hc/unix-2.4.0.1/include -I /usr/local/lib/ghc/old-time-1.0.0.4/include -I
/usr/local/include -I /usr/local/lib/ghc/base-4.2.0.1/include -I
/usr/local/lib/ghc/include -D__HASKELL1__=5 -D__GLASGOW_HASKELL__=612
-D__HASKELL98__ -D__CONCURRENT_HASKELL__ -include
compiler/stage1/build/autogen/cabal_macros.h -DSTAGE=1 -Dopenbsd_BUILD_OS=1
-Dx86_64_BUILD_ARCH=1 -Dopenbsd_HOST_OS=1 -Dx86_64_HOST_ARCH=1 -x c
/tmp/ghc22775_0
/ghc22775_0.lpp -o /tmp/ghc22775_0/ghc22775_0.hscpp
Reading specs from /usr/lib/gcc-lib/amd64-unknown-openbsd4.7/3.3.5/specs
Configured with:
Thread model: single
gcc version 3.3.5 (propolice)
/usr/lib/gcc-lib/amd64-unknown-openbsd4.7/3.3.5/cc1 -E -traditional-cpp -quiet
-v -I compiler/stage1/build -I compiler/stage1/build -I
compiler/stage1/build/autogen -I compiler/stage1 -I compiler/../libraries
/base/cbits -I compiler/../libraries/base/include -I compiler/. -I
compiler/parser -I compiler/utils -I
/usr/local/lib/ghc/bytestring-0.9.1.6/include -I
/usr/local/lib/ghc/process-1.0.1.2/include -I /usr/local
/lib/ghc/directory-1.0.1.1/include -I /usr/local/lib/ghc/unix-2.4.0.1/include
-I /usr/local/lib/ghc/old-time-1.0.0.4/include -I /usr/local/include -I
/usr/local/lib/ghc/base-4.2.0.1/include -I /usr/local/lib/g
hc/include -D__GNUC__=3 -D__GNUC_MINOR__=3 -D__GNUC_PATCHLEVEL__=5
-D__HASKELL1__=5 -D__GLASGOW_HASKELL__=612 -D__HASKELL98__
-D__CONCURRENT_HASKELL__ -DSTAGE=1 -Dopenbsd_BUILD_OS=1 -Dx86_64_BUILD_ARCH=1
-Dope
nbsd_HOST_OS=1 -Dx86_64_HOST_ARCH=1 -include
compiler/stage1/build/autogen/cabal_macros.h /tmp/ghc22775_0/ghc22775_0.lpp -o
/tmp/ghc22775_0/ghc22775_0.hscpp -undef
ignoring duplicate directory "compiler/stage1/build"
#include "..." search starts here:
#include <...> search starts here:
compiler/stage1/build
compiler/stage1/build/autogen
compiler/stage1
libraries/base/cbits
libraries/base/include
compiler
compiler/parser
compiler/utils
/usr/local/lib/ghc/bytestring-0.9.1.6/include
/usr/local/lib/ghc/process-1.0.1.2/include
/usr/local/lib/ghc/directory-1.0.1.1/include
/usr/local/lib/ghc/unix-2.4.0.1/include
/usr/local/lib/ghc/old-time-1.0.0.4/include
/usr/local/include
/usr/local/lib/ghc/base-4.2.0.1/include
/usr/local/lib/ghc/include
/usr/include
End of search list.
*** Checking old interface for ghc-6.13:HsExpr:
*** Parser:
*** Renamer/typechecker:
*** Desugar:
Result size = 18909
*** Simplifier Phase gentle:
Result size = 10339
Result size = 10042
Result size = 10048
Result size = 10053
Result size = 10053
*** Specialise:
Result size = 13720
*** Float out (not lambdas, constants):
Result size = 15322
*** Float inwards:
Result size = 15322
*** Simplifier Phase 2 [main]:
*** Deleting temp files:
Deleting: /tmp/ghc22775_0/ghc22775_0.s /tmp/ghc22775_0/ghc22775_0.hscpp
/tmp/ghc22775_0/ghc22775_0.lpp
Warning: deleting non-existent /tmp/ghc22775_0/ghc22775_0.s
*** Deleting temp dirs:
Deleting: /tmp/ghc22775_0
ghc: panic! (the 'impossible' happened)
(GHC version 6.12.2 for x86_64-unknown-openbsd):
tcIfaceGlobal (local): not found:
ghc-6.13:HsExpr.$fxDataHsExpr{v rlX}
[(a2NY, Identifier `ic{v a2NY}'), (a2Of, Identifier `ic{v a2Of}'),
[remaining output skipped]
$ ghc-pkg list -v
using cache: /usr/local/lib/ghc/package.conf.d/package.cache
/usr/local/lib/ghc/package.conf.d:
Cabal-1.8.0.4 (Cabal-1.8.0.4-9133c997de86f34b4c392242d71c46c7)
FindBin-0.0.2 (FindBin-0.0.2-ee451d2be863075ed8bde73eaf7c1ebc)
GLUT-2.1.2.1 (GLUT-2.1.2.1-eb920aeb5b24bbb2b4a113ef1855692c)
HTTP-4000.0.9 (HTTP-4000.0.9-c708c341cdaa70772cc7c508667e7330)
HsParrot-0.0.2 (HsParrot-0.0.2-1f22f217538598410827023d70ceed07)
HsSyck-0.45 (HsSyck-0.45-04b11a88b98547681ed9fab5542f2871)
OpenGL-2.2.3.0 (OpenGL-2.2.3.0-c62fcd6a7fe6ec798356bcf54cffedc8)
array-0.3.0.0 (array-0.3.0.0-3ec6cfbe01d9d96268158ab0eeaf813b)
base-3.0.3.2 (base-3.0.3.2-0ec8dbc7a9b09192b8a3ee9212b9ce8c)
base-4.2.0.1 (base-4.2.0.1-eb8a2da95653d38174492b61ec8372cc)
bin-package-db-0.0.0.0
(bin-package-db-0.0.0.0-555abdde5052b77b4311e02396fee9cd)
binary-0.5.0.2 (binary-0.5.0.2-6e855173990f75b656a36db7e9d948c2)
bytestring-0.9.1.6 (bytestring-0.9.1.6-3cc9c57d0ef38b1b539eb008b12c7fec)
containers-0.3.0.0 (containers-0.3.0.0-2ae62fe4212e498a073984f766498f58)
control-timeout-0.1.2
(control-timeout-0.1.2-59d4b82eb63b84a12b831feb866d96d9)
dataenc-0.13.0.2 (dataenc-0.13.0.2-309344a21191de688170e00892b28839)
directory-1.0.1.1 (directory-1.0.1.1-24937285d1d995dfd3e9d65f032ed8fe)
(dph-base-0.4.0 (dph-base-0.4.0-54da968cd1386c694e6c51b113b8afd7))
(dph-par-0.4.0 (dph-par-0.4.0-fddcb63a510f9e900f33faae27810259))
(dph-prim-interface-0.4.0
(dph-prim-interface-0.4.0-b6c767fbd0983936df3818897db62fde))
(dph-prim-par-0.4.0 (dph-prim-par-0.4.0-e49f0ef63f3f9618842a0267e2aa65fc))
(dph-prim-seq-0.4.0 (dph-prim-seq-0.4.0-331fa66d51330406f88bdd7d04e79b71))
(dph-seq-0.4.0 (dph-seq-0.4.0-afc1ce2a16c9b47c29115f7c2c6196f8))
extensible-exceptions-0.1.1.1
(extensible-exceptions-0.1.1.1-f050fb0b3d42075b6d046a1db4efb478)
ffi-1.0 (builtin_ffi)
filepath-1.1.0.4 (filepath-1.1.0.4-9de5ca91c0a4ac8d95666d0aa04c62e6)
(ghc-6.12.2 (ghc-6.12.2-3b204fa6e462c10fc52b544d21aa1074))
(ghc-binary-0.5.0.2 (ghc-binary-0.5.0.2-01f445081fbc55cfefc4b4be8be54f8b))
ghc-paths-0.1.0.6 (ghc-paths-0.1.0.6-e0f75bb8f78dfb229a19f0e303ba4f2f)
ghc-prim-0.2.0.0 (ghc-prim-0.2.0.0-5da421112969a971aa3433fdf154b37a)
hashed-storage-0.4.11
(hashed-storage-0.4.11-4fdf54f4f332024dc5b213c4749689f0)
haskeline-0.6.2.1 (haskeline-0.6.2.1-c1117699a0a9a3cb7677a765b0dd9833)
haskell98-1.0.1.1 (haskell98-1.0.1.1-c8ca5a0640aa374ec3c52513cf91d1e6)
hpc-0.5.0.5 (hpc-0.5.0.5-20d72620b8f8f931490bd85ad03bfaf2)
html-1.0.1.2 (html-1.0.1.2-3a93a2e66b1530554bc868d3639f5ac2)
integer-simple-0.1.0.0
(integer-simple-0.1.0.0-a0a63eea5cd12d23dba736ace80ade5e)
mmap-0.4.1 (mmap-0.4.1-0f2e6c178e944b49158e89726252ae5a)
mtl-1.1.0.2 (mtl-1.1.0.2-f9d5d294a50d9c0b52900df95b0b6564)
network-2.2.1.7 (network-2.2.1.7-c64d1bf06876f7b7abbaa0bf3ad23808)
old-locale-1.0.0.2 (old-locale-1.0.0.2-5c3f530e671523558ccbd5d248763a0e)
old-time-1.0.0.4 (old-time-1.0.0.4-0975548f2a5463fdfec420b2df4d4a06)
parsec-2.1.0.1 (parsec-2.1.0.1-10554b5b1298eb707fe18ab3524f47b0)
pretty-1.0.1.1 (pretty-1.0.1.1-b529c48351867b90ceab2be38ecd0513)
process-1.0.1.2 (process-1.0.1.2-44aa9c3516e4b8fa57fbc16de9058fb3)
pugs-DrIFT-2.2.3.1 (pugs-DrIFT-2.2.3.1-ef5435ea8ea53c4b23d56f9b83a6e196)
random-1.0.0.2 (random-1.0.0.2-21b9594f630a45a167c7db59696bc2c1)
readline-1.0.1.0 (readline-1.0.1.0-95970111b3ea9496631baaed17fc9d73)
regex-base-0.93.1 (regex-base-0.93.1-2602a53419e92d8bbf188e9646198319)
regex-compat-0.92 (regex-compat-0.92-d366826823b86cd962e082260f2d690b)
regex-posix-0.94.1 (regex-posix-0.94.1-527ffa5f995647c7fc23a022ac2879d9)
rts-1.0 (builtin_rts)
stm-2.1.1.2 (stm-2.1.1.2-d3a2d48e9532726af103aa8e89cb07b7)
stringtable-atom-0.0.6.1
(stringtable-atom-0.0.6.1-fc705e8f6ab37e421dfc85d225d66be0)
syb-0.1.0.2 (syb-0.1.0.2-39fe532ecc4dc957fd2a802fcaa8cffd)
template-haskell-2.4.0.1
(template-haskell-2.4.0.1-d1f775afc8611fafe92143e1bf91682d)
terminfo-0.3.1.1 (terminfo-0.3.1.1-027b2e719a3d2c044001c6d639558f7e)
time-1.1.4 (time-1.1.4-a649367533b3047479f0bc495fbf4ab0)
unix-2.4.0.1 (unix-2.4.0.1-cd6190194ee5feee688cfe803d85c861)
utf8-string-0.3.4 (utf8-string-0.3.4-08f775ed8d961b394a025af57bfe5eae)
zlib-0.5.2.0 (zlib-0.5.2.0-c3d3ff622299ddc45699c22ff266e06e)
Ciao,
Kili
_______________________________________________
Cvs-ghc mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/cvs-ghc