[commit: testsuite] master: Add test for Trac #7488 (4f6baef)
Repository : ssh://darcs.haskell.org//srv/darcs/testsuite On branch : master http://hackage.haskell.org/trac/ghc/changeset/4f6baef92fd3d30e5c7a78e7c8fb1d73e6b4b45d --- commit 4f6baef92fd3d30e5c7a78e7c8fb1d73e6b4b45d Author: Simon Peyton Jones simo...@microsoft.com Date: Fri Dec 21 08:14:14 2012 + Add test for Trac #7488 --- tests/polykinds/T7488.hs |8 tests/polykinds/all.T|1 + 2 files changed, 9 insertions(+), 0 deletions(-) diff --git a/tests/polykinds/T7488.hs b/tests/polykinds/T7488.hs new file mode 100644 index 000..c76de84 --- /dev/null +++ b/tests/polykinds/T7488.hs @@ -0,0 +1,8 @@ +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE KindSignatures #-} +{-# LANGUAGE GADTs #-} + +module T7488 where + +newtype A = A Int +data B (x :: A) diff --git a/tests/polykinds/all.T b/tests/polykinds/all.T index 4665255..99f8424 100644 --- a/tests/polykinds/all.T +++ b/tests/polykinds/all.T @@ -81,3 +81,4 @@ test('T7433', normal, compile_fail,['']) test('T7438', normal, run_command, ['$MAKE -s --no-print-directory T7438']) test('T7404', normal, compile_fail,['']) test('T7502', normal, compile,['']) +test('T7488', normal, compile,['']) ___ Cvs-ghc mailing list Cvs-ghc@haskell.org http://www.haskell.org/mailman/listinfo/cvs-ghc
pgj-freebsd-i386-stable (x86 FreeBSD STABLE), build 756, Success
pgj-freebsd-i386-stable (x86 FreeBSD STABLE), build 756 Build succeeded Details: http://darcs.haskell.org/ghcBuilder/builders/pgj-freebsd-i386-stable/756.html git clone| Success create mk/build.mk | Success get subrepos | Success repo versions| Success touching clean-check files | Success setting version date | Success booting | Success configuring | Success creating check-remove-before | Success compiling| Success creating check-remove-after | Success compiling testremove | Success simulating clean | Success checking clean | Success making bindist | Success publishing bindist | Success testing bindist | Success testing | Success testsuite summary| Success Build succeeded Details: http://darcs.haskell.org/ghcBuilder/builders/pgj-freebsd-i386-stable/756.html File not deleted:compiler/ghc.cabal.old File not deleted:inplace File not deleted:libraries/base/include/EventConfig.h Deleted before file: libraries/time/include/HsTimeConfig.h File not deleted:mk/config.mk.old File not deleted:mk/project.mk.old File not deleted:rts/libs.depend File not deleted:rts/package.conf.inplace File not deleted:rts/package.conf.inplace.raw OVERALL SUMMARY for test run started at Fri Dec 21 08:28:13 UTC 2012 3402 total tests, which gave rise to 14436 test cases, of which 10 caused framework failures 11364 were skipped 2956 expected passes 48 had missing libraries 34 expected failures 5 unexpected passes 29 unexpected failures Unexpected passes: ../../libraries/unix/tests getEnvironment01 (normal) ../../libraries/unix/tests getEnvironment02 (normal) ../../libraries/unix/tests getGroupEntryForName (normal) ../../libraries/unix/tests getUserEntryForName (normal) ../../libraries/unix/tests queryfdoption01 (normal) Unexpected failures: ../../libraries/base/tests/IOopenFile008 [bad exit code] (normal) ../../libraries/directory/tests getPermissions001 [bad exit code] (normal) ../../libraries/process/testsprocess007 [bad stdout] (normal) ../../libraries/unix/tests/libposix posix005 [bad stdout] (normal) driver dynHelloWorld [bad exit code] (dyn) driver/recomp011 recomp011 [bad stdout] (normal) dynlibs T3807 [bad exit code] (normal) dynlibs T5373 [bad stdout] (normal) ghci/scripts T5979 [bad stderr] (ghci) perf/haddock haddock.Cabal [stat too good] (normal) perf/haddock haddock.base [stat too good] (normal) perf/haddock haddock.compiler [stat too good] (normal) plugins plugins01 [bad exit code] (normal) plugins plugins02 [stderr mismatch] (normal) plugins plugins03 [stderr mismatch] (normal) rts T2615 [bad stdout] (normal) safeHaskell/check/pkg01 ImpSafeOnly01 [exit code non-0] (normal) safeHaskell/check/pkg01 ImpSafeOnly02 [exit code non-0] (normal) safeHaskell/check/pkg01 ImpSafeOnly03 [stderr mismatch] (normal) safeHaskell/check/pkg01 ImpSafeOnly04 [exit code non-0] (normal) safeHaskell/check/pkg01 ImpSafeOnly05 [stderr mismatch] (normal) safeHaskell/check/pkg01 ImpSafeOnly06 [exit code non-0] (normal) safeHaskell/check/pkg01 ImpSafeOnly07 [stderr mismatch] (normal) safeHaskell/check/pkg01 ImpSafeOnly08 [stderr mismatch] (normal) safeHaskell/check/pkg01 ImpSafeOnly09 [stderr mismatch] (normal) safeHaskell/check/pkg01 ImpSafeOnly10 [exit code non-0] (normal) safeHaskell/check/pkg01 safePkg01 [bad exit code] (normal) typecheck/should_failT5300 [stderr mismatch] (normal) typecheck/should_failT5691 [stderr mismatch] (normal) ___ Cvs-ghc mailing list Cvs-ghc@haskell.org http://www.haskell.org/mailman/listinfo/cvs-ghc
pgj2 (amd64 FreeBSD HEAD), build 896, Success
pgj2 (amd64 FreeBSD HEAD), build 896 Build succeeded Details: http://darcs.haskell.org/ghcBuilder/builders/pgj2/896.html git clone| Success create mk/build.mk | Success get subrepos | Success repo versions| Success touching clean-check files | Success setting version date | Success booting | Success configuring | Success creating check-remove-before | Success compiling| Success creating check-remove-after | Success compiling testremove | Success simulating clean | Success checking clean | Success making bindist | Success publishing bindist | Success testing bindist | Success testing | Success testsuite summary| Success Build succeeded Details: http://darcs.haskell.org/ghcBuilder/builders/pgj2/896.html File not deleted:compiler/ghc.cabal.old File not deleted:includes/dist-derivedconstants File not deleted:includes/dist-derivedconstants/header File not deleted:includes/dist-derivedconstants/header/DerivedConstants.h File not deleted: includes/dist-derivedconstants/header/GHCConstantsHaskellExports.hs File not deleted: includes/dist-derivedconstants/header/GHCConstantsHaskellType.hs File not deleted: includes/dist-derivedconstants/header/GHCConstantsHaskellWrappers.hs File not deleted:includes/dist-derivedconstants/header/platformConstants File not deleted:includes/dist-derivedconstants/header/tmp.c File not deleted:includes/dist-derivedconstants/header/tmp.o File not deleted:inplace File not deleted:libraries/base/include/EventConfig.h File not deleted:mk/config.mk.old File not deleted:mk/project.mk.old File not deleted:rts/libs.depend File not deleted:rts/package.conf.inplace File not deleted:rts/package.conf.inplace.raw OVERALL SUMMARY for test run started at Fri Dec 21 09:19:34 UTC 2012 3516 total tests, which gave rise to 11721 test cases, of which 0 caused framework failures 8544 were skipped 2870 expected passes 26 had missing libraries 36 expected failures 22 unexpected passes 223 unexpected failures Unexpected passes: codeGen/should_runT7319 (prof) profiling/should_compile 2410 (normal) profiling/should_compile prof001 (normal) profiling/should_compile prof002 (normal) profiling/should_run 5314 (prof) profiling/should_run T2552 (prof) profiling/should_run T3001 (prof_hb) profiling/should_run T3001-2 (prof_hb) profiling/should_run T5363 (prof) profiling/should_run T5559 (prof) profiling/should_run T680 (prof) profiling/should_run T949 (prof) profiling/should_run callstack001 (prof) profiling/should_run callstack002 (prof) profiling/should_run heapprof001 (prof) profiling/should_run prof-doc-fib (prof) profiling/should_run prof-doc-last (prof) profiling/should_run profinline001 (prof) profiling/should_run scc001 (prof) profiling/should_run scc002 (prof) profiling/should_run scc003 (prof) stranal/should_compilenewtype (optasm) Unexpected failures: ../../libraries/base/tests qsemn001 [exit code non-0] (normal) ../../libraries/base/tests/IO3307 [bad stderr] (normal) ../../libraries/base/tests/IOenvironment001 [bad stderr] (normal) ../../libraries/base/tests/IOopenFile008 [bad exit code] (normal) ../../libraries/directory/tests getPermissions001 [bad exit code] (normal) ../../libraries/hpc/tests/ghc_ghci hpc_ghc_ghci [bad stderr] (normal) ../../libraries/process/testsprocess007 [bad stdout] (normal) ../../libraries/process/testsprocess009 [bad stdout] (normal) ../../libraries/unix/tests/libposix posix005 [bad stdout] (normal) cabal1750 [bad stderr] (normal) cabalghcpkg01 [bad stderr] (normal) cabalghcpkg03 [bad stderr] (normal) cabalghcpkg05 [bad stderr] (normal) cabalghcpkg06 [bad stderr] (normal) cabalshadow [bad stderr] (normal) cabal/cabal01cabal01 [bad stderr] (normal) cabal/cabal04cabal04 [bad stderr] (normal) codeGen/should_compile 2578 [bad stderr] (normal) codeGen/should_run cgrun068 [exit code non-0] (normal) deSugar/should_compile T5252 [bad stderr] (normal) deSugar/should_compile T5252Take2 [bad stderr] (normal) deriving/should_fail drvfail016 [bad stderr] (normal) driver 2566 [bad stderr] (normal) driver
pgj-freebsd-amd64-stable (amd64 FreeBSD STABLE), build 768, Success
pgj-freebsd-amd64-stable (amd64 FreeBSD STABLE), build 768 Build succeeded Details: http://darcs.haskell.org/ghcBuilder/builders/pgj-freebsd-amd64-stable/768.html git clone| Success create mk/build.mk | Success get subrepos | Success repo versions| Success touching clean-check files | Success setting version date | Success booting | Success configuring | Success creating check-remove-before | Success compiling| Success creating check-remove-after | Success compiling testremove | Success simulating clean | Success checking clean | Success making bindist | Success publishing bindist | Success testing bindist | Success testing | Success testsuite summary| Success Build succeeded Details: http://darcs.haskell.org/ghcBuilder/builders/pgj-freebsd-amd64-stable/768.html File not deleted:compiler/ghc.cabal.old File not deleted:inplace File not deleted:libraries/base/include/EventConfig.h Deleted before file: libraries/time/include/HsTimeConfig.h File not deleted:mk/config.mk.old File not deleted:mk/project.mk.old File not deleted:rts/libs.depend File not deleted:rts/package.conf.inplace File not deleted:rts/package.conf.inplace.raw OVERALL SUMMARY for test run started at Fri Dec 21 09:43:26 UTC 2012 3402 total tests, which gave rise to 14436 test cases, of which 10 caused framework failures 11363 were skipped 2960 expected passes 48 had missing libraries 35 expected failures 0 unexpected passes 30 unexpected failures Unexpected failures: ../../libraries/base/tests/IOopenFile008 [bad exit code] (normal) ../../libraries/directory/tests getPermissions001 [bad exit code] (normal) ../../libraries/process/testsprocess007 [bad stdout] (normal) ../../libraries/unix/tests/libposix posix005 [bad stdout] (normal) driver dynHelloWorld [bad exit code] (dyn) driver/recomp011 recomp011 [bad stdout] (normal) dynlibs T3807 [bad exit code] (normal) dynlibs T5373 [bad stdout] (normal) ghci/scripts T5979 [bad stderr] (ghci) perf/compilerT6048 [stat not good enough] (optasm) perf/haddock haddock.Cabal [stat not good enough] (normal) perf/haddock haddock.base [stat not good enough] (normal) perf/haddock haddock.compiler [stat not good enough] (normal) plugins plugins01 [bad exit code] (normal) plugins plugins02 [stderr mismatch] (normal) plugins plugins03 [stderr mismatch] (normal) rts T2615 [bad stdout] (normal) safeHaskell/check/pkg01 ImpSafeOnly01 [exit code non-0] (normal) safeHaskell/check/pkg01 ImpSafeOnly02 [exit code non-0] (normal) safeHaskell/check/pkg01 ImpSafeOnly03 [stderr mismatch] (normal) safeHaskell/check/pkg01 ImpSafeOnly04 [exit code non-0] (normal) safeHaskell/check/pkg01 ImpSafeOnly05 [stderr mismatch] (normal) safeHaskell/check/pkg01 ImpSafeOnly06 [exit code non-0] (normal) safeHaskell/check/pkg01 ImpSafeOnly07 [stderr mismatch] (normal) safeHaskell/check/pkg01 ImpSafeOnly08 [stderr mismatch] (normal) safeHaskell/check/pkg01 ImpSafeOnly09 [stderr mismatch] (normal) safeHaskell/check/pkg01 ImpSafeOnly10 [exit code non-0] (normal) safeHaskell/check/pkg01 safePkg01 [bad exit code] (normal) typecheck/should_failT5300 [stderr mismatch] (normal) typecheck/should_failT5691 [stderr mismatch] (normal) ___ Cvs-ghc mailing list Cvs-ghc@haskell.org http://www.haskell.org/mailman/listinfo/cvs-ghc
STM faiure
Simon, I'm getting this validation failure on Linux. Should I? Simon Unexpected failures: ../../libraries/base/tests qsemn001 [exit code non-0] (normal) = qsemn001(normal) 3440 of 3517 [0, 0, 0] cd ../../libraries/base/tests '/5playpen/simonpj/HEAD/inplace/bin/ghc-stage2' -fforce-recomp -dcore-lint -dcmm-lint -dno-debug-output -no-user-package-db -rtsopts -fno-ghci-history -o qsemn001 qsemn001.hsqsemn001.comp.stderr 21 cd ../../libraries/base/tests ./qsem001/dev/null qsem001.run.stdout 2qsem001.run.stderr Compile failed (status 256) errors were: qsemn001.hs:5:8: Could not find module `Control.Concurrent.STM' Perhaps you meant Control.Concurrent.QSem (from base) Control.Concurrent (from base) Control.Concurrent.Chan (from base) Use -v to see a list of the files searched for. ___ Cvs-ghc mailing list Cvs-ghc@haskell.org http://www.haskell.org/mailman/listinfo/cvs-ghc
[commit: ghc] master: Allow newtypes to be promoted (b8739b2)
Repository : ssh://darcs.haskell.org//srv/darcs/ghc On branch : master http://hackage.haskell.org/trac/ghc/changeset/b8739b28f5bc855b7c5406425b516698cf3b2f0d --- commit b8739b28f5bc855b7c5406425b516698cf3b2f0d Author: Simon Peyton Jones simo...@microsoft.com Date: Fri Dec 21 08:05:58 2012 + Allow newtypes to be promoted Fixes Trac #7488 --- compiler/basicTypes/DataCon.lhs |5 +++-- 1 files changed, 3 insertions(+), 2 deletions(-) diff --git a/compiler/basicTypes/DataCon.lhs b/compiler/basicTypes/DataCon.lhs index 1b14179..7a58a7b 100644 --- a/compiler/basicTypes/DataCon.lhs +++ b/compiler/basicTypes/DataCon.lhs @@ -1035,8 +1035,9 @@ isPromotableType _ = False -- If tc's kind is [ *^n - * ] returns [ Just n ], else returns [ Nothing ] isPromotableTyCon :: TyCon - Maybe Int isPromotableTyCon tc - | isDataTyCon tc -- Only *data* types can be promoted, not newtypes - -- not synonyms, not type families + | isDataTyCon tc || isNewTyCon tc + -- Only *data* and *newtype* types can be promoted, + -- not synonyms, not type/data families , all isLiftedTypeKind (res:args) = Just $ length args | otherwise = Nothing where ___ Cvs-ghc mailing list Cvs-ghc@haskell.org http://www.haskell.org/mailman/listinfo/cvs-ghc
[commit: ghc] master: Merge branch 'master' of darcs.haskell.org:/home/darcs/ghc (40ef925)
Repository : ssh://darcs.haskell.org//srv/darcs/ghc On branch : master http://hackage.haskell.org/trac/ghc/changeset/40ef925c54e46ef31ed1c5a97f98d9dfd6123082 --- commit 40ef925c54e46ef31ed1c5a97f98d9dfd6123082 Merge: b8739b2... 866d28d... Author: Simon Peyton Jones simo...@microsoft.com Date: Fri Dec 21 08:06:16 2012 + Merge branch 'master' of darcs.haskell.org:/home/darcs/ghc compiler/cmm/CmmPipeline.hs | 37 +- compiler/cmm/CmmProcPoint.hs |2 +- compiler/main/DynFlags.hs| 48 +++ compiler/main/HscMain.hs |8 ++-- compiler/main/InteractiveEval.hs | 43 +++- compiler/typecheck/TcUnify.lhs | 79 +++--- sync-all | 10 +++-- 7 files changed, 123 insertions(+), 104 deletions(-) ___ Cvs-ghc mailing list Cvs-ghc@haskell.org http://www.haskell.org/mailman/listinfo/cvs-ghc
[commit: ghc] master: Clarify promotion rules for newtypes in the documentation (6290c7b)
Repository : ssh://darcs.haskell.org//srv/darcs/ghc On branch : master http://hackage.haskell.org/trac/ghc/changeset/6290c7bd0941dc2ae02df200d903d35ca825c4aa --- commit 6290c7bd0941dc2ae02df200d903d35ca825c4aa Author: Simon Peyton Jones simo...@microsoft.com Date: Fri Dec 21 09:14:19 2012 + Clarify promotion rules for newtypes in the documentation --- docs/users_guide/glasgow_exts.xml |7 --- 1 files changed, 4 insertions(+), 3 deletions(-) diff --git a/docs/users_guide/glasgow_exts.xml b/docs/users_guide/glasgow_exts.xml index c7b695c..7898677 100644 --- a/docs/users_guide/glasgow_exts.xml +++ b/docs/users_guide/glasgow_exts.xml @@ -5528,7 +5528,10 @@ kinds have sort literalBOX/literal. para The following restrictions apply to promotion: itemizedlist - listitemparaWe only promote datatypes whose kinds are of the form + listitemparaWe promote literaldata/literal types and literalnewtypes/literal, +but not type synonyms, or type/data families (xref linkend=type-families/). + /para/listitem + listitemparaWe only promote types whose kinds are of the form literal* - ... - * - */literal. In particular, we do not promote higher-kinded datatypes such as literaldata Fix f = In (f (Fix f))/literal, or datatypes whose kinds involve promoted types such as @@ -5537,8 +5540,6 @@ The following restrictions apply to promotion: polymorphic, involve constraints, mention type or data families, or involve types that are not promotable. /para/listitem - listitemparaWe do not promote data family instances (xref linkend=data-families/). - /para/listitem /itemizedlist /para /sect2 ___ Cvs-ghc mailing list Cvs-ghc@haskell.org http://www.haskell.org/mailman/listinfo/cvs-ghc
[commit: ghc] master: Likely fix to uninitialized DynFlags in plugins. (66fa188)
Repository : ssh://darcs.haskell.org//srv/darcs/ghc On branch : master http://hackage.haskell.org/trac/ghc/changeset/66fa1886769c9e4b7aec4d278a797538a6220ced --- commit 66fa1886769c9e4b7aec4d278a797538a6220ced Author: Daniel Vainsencher daniel.vainsenc...@gmail.com Date: Thu Dec 13 18:19:43 2012 + Likely fix to uninitialized DynFlags in plugins. --- compiler/simplCore/CoreMonad.lhs |3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) diff --git a/compiler/simplCore/CoreMonad.lhs b/compiler/simplCore/CoreMonad.lhs index c2c2650..5726cf5 100644 --- a/compiler/simplCore/CoreMonad.lhs +++ b/compiler/simplCore/CoreMonad.lhs @@ -922,8 +922,11 @@ argument to the plugin function so that we can turn this function into reinitializeGlobals :: CoreM () reinitializeGlobals = do (sf_globals, linker_globals) - read cr_globals +hsc_env - getHscEnv +let dflags = hsc_dflags hsc_env liftIO $ restoreStaticFlagGlobals sf_globals liftIO $ restoreLinkerGlobals linker_globals +liftIO $ setUnsafeGlobalDynFlags dflags \end{code} % ___ Cvs-ghc mailing list Cvs-ghc@haskell.org http://www.haskell.org/mailman/listinfo/cvs-ghc
[commit: ghc] master: Only allow special NeverActive syntax for RULES. (c56c355)
Repository : ssh://darcs.haskell.org//srv/darcs/ghc On branch : master http://hackage.haskell.org/trac/ghc/changeset/c56c355b0f5504f8afd062ca4c78a8bb40905299 --- commit c56c355b0f5504f8afd062ca4c78a8bb40905299 Author: Andrew Farmer afar...@ittc.ku.edu Date: Thu Dec 6 15:47:33 2012 -0600 Only allow special NeverActive syntax for RULES. --- compiler/parser/Parser.y.pp | 17 + docs/users_guide/glasgow_exts.xml |3 +++ 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/compiler/parser/Parser.y.pp b/compiler/parser/Parser.y.pp index 1907ab3..510d7c4 100644 --- a/compiler/parser/Parser.y.pp +++ b/compiler/parser/Parser.y.pp @@ -870,16 +870,17 @@ rules :: { OrdList (LHsDecl RdrName) } | {- empty -} { nilOL } rule:: { LHsDecl RdrName } -: STRING activation rule_forall infixexp '=' exp +: STRING rule_activation rule_forall infixexp '=' exp { LL $ RuleD (HsRule (getSTRING $1) ($2 `orElse` AlwaysActive) $3 $4 placeHolderNames $6 placeHolderNames) } -activation :: { Maybe Activation } +-- Rules can be specified to be NeverActive, unlike inline/specialize pragmas +rule_activation :: { Maybe Activation } : {- empty -} { Nothing } -| explicit_activation { Just $1 } +| rule_explicit_activation { Just $1 } -explicit_activation :: { Activation } -- In brackets +rule_explicit_activation :: { Activation } -- In brackets : '[' INTEGER ']' { ActiveAfter (fromInteger (getINTEGER $2)) } | '[' '~' INTEGER ']' { ActiveBefore (fromInteger (getINTEGER $3)) } | '[' '~' ']' { NeverActive } @@ -1374,6 +1375,14 @@ sigdecl :: { Located (OrdList (LHsDecl RdrName)) } | '{-# SPECIALISE' 'instance' inst_type '#-}' { LL $ unitOL (LL $ SigD (SpecInstSig $3)) } +activation :: { Maybe Activation } +: {- empty -} { Nothing } +| explicit_activation { Just $1 } + +explicit_activation :: { Activation } -- In brackets +: '[' INTEGER ']' { ActiveAfter (fromInteger (getINTEGER $2)) } +| '[' '~' INTEGER ']' { ActiveBefore (fromInteger (getINTEGER $3)) } + - -- Expressions diff --git a/docs/users_guide/glasgow_exts.xml b/docs/users_guide/glasgow_exts.xml index 7898677..49b6ea3 100644 --- a/docs/users_guide/glasgow_exts.xml +++ b/docs/users_guide/glasgow_exts.xml @@ -9469,6 +9469,9 @@ The [2] means that the rule is active in Phase 2 and subsequent phases. The i notation [~2] is also accepted, meaning that the rule is active up to, but not including, Phase 2. /para +para +Rules support the special phase-control notation [~], which means the rule is never active. +/para /listitem ___ Cvs-ghc mailing list Cvs-ghc@haskell.org http://www.haskell.org/mailman/listinfo/cvs-ghc
[commit: ghc] master: Clarify documentation of [~] syntax on RULE activations (d3e2912)
Repository : ssh://darcs.haskell.org//srv/darcs/ghc On branch : master http://hackage.haskell.org/trac/ghc/changeset/d3e2912ac2048346828539e0dfef6c0cefef0d38 --- commit d3e2912ac2048346828539e0dfef6c0cefef0d38 Author: Simon Peyton Jones simo...@microsoft.com Date: Fri Dec 21 13:17:26 2012 + Clarify documentation of [~] syntax on RULE activations --- docs/users_guide/glasgow_exts.xml |3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) diff --git a/docs/users_guide/glasgow_exts.xml b/docs/users_guide/glasgow_exts.xml index 49b6ea3..4eb39c4 100644 --- a/docs/users_guide/glasgow_exts.xml +++ b/docs/users_guide/glasgow_exts.xml @@ -9471,6 +9471,9 @@ Phase 2. /para para Rules support the special phase-control notation [~], which means the rule is never active. +This feature supports plugins (see xref linkend=compiler-plugins/), by making it possible +to define a RULE that is never run by GHC, but is nevertheless parsed, typechecked etc, so that +it is available to the plugin. /para /listitem ___ Cvs-ghc mailing list Cvs-ghc@haskell.org http://www.haskell.org/mailman/listinfo/cvs-ghc
Re: STM faiure
On 21/12/12 12:15, Simon Peyton-Jones wrote: Simon, I’m getting this validation failure on Linux. Should I? Sorry - fix coming. I have stm in my validate tree so it didn't fail for me. Cheers, Simon Simon Unexpected failures: ../../libraries/base/tests qsemn001 [exit code non-0] (normal) = qsemn001(normal) 3440 of 3517 [0, 0, 0] cd ../../libraries/base/tests '/5playpen/simonpj/HEAD/inplace/bin/ghc-stage2' -fforce-recomp -dcore-lint -dcmm-lint -dno-debug-output -no-user-package-db -rtsopts -fno-ghci-history -o qsemn001 qsemn001.hsqsemn001.comp.stderr 21 cd ../../libraries/base/tests ./qsem001/dev/null qsem001.run.stdout 2qsem001.run.stderr Compile failed (status 256) errors were: qsemn001.hs:5:8: Could not find module `Control.Concurrent.STM' Perhaps you meant Control.Concurrent.QSem (from base) Control.Concurrent (from base) Control.Concurrent.Chan (from base) Use -v to see a list of the files searched for. ___ Cvs-ghc mailing list Cvs-ghc@haskell.org http://www.haskell.org/mailman/listinfo/cvs-ghc
[nightly] 21-Dec-2012 build of HEAD on i386-unknown-linux (cam-02-unx)
Build description = HEAD on i386-unknown-linux (cam-02-unx) Build location= /playpen/simonmar/nightly/HEAD Build config file = /home/simonmar/nightly/site/msrc/conf-HEAD-cam-02-unx Nightly build started on cam-02-unx at Fri Dec 21 18:00:02 GMT 2012. checking out new source tree ... warning: libraries/xhtml already present; omitting Submodule 'libraries/Cabal' (http://darcs.haskell.org/libraries/Cabal.git/) registered for path 'libraries/Cabal' Submodule 'libraries/Win32' (http://darcs.haskell.org/libraries/Win32.git/) registered for path 'libraries/Win32' Submodule 'libraries/binary' (http://darcs.haskell.org/libraries/binary.git/) registered for path 'libraries/binary' Submodule 'libraries/bytestring' (http://darcs.haskell.org/libraries/bytestring.git/) registered for path 'libraries/bytestring' Submodule 'libraries/containers' (http://darcs.haskell.org/libraries/containers.git/) registered for path 'libraries/containers' Submodule 'libraries/haskeline' (http://darcs.haskell.org/libraries/haskeline.git/) registered for path 'libraries/haskeline' Submodule 'libraries/pretty' (http://darcs.haskell.org/libraries/pretty.git/) registered for path 'libraries/pretty' Submodule 'libraries/primitive' (http://darcs.haskell.org/libraries/primitive.git/) registered for path 'libraries/primitive' Submodule 'libraries/terminfo' (http://darcs.haskell.org/libraries/terminfo.git/) registered for path 'libraries/terminfo' Submodule 'libraries/time' (http://darcs.haskell.org/libraries/time.git/) registered for path 'libraries/time' Submodule 'libraries/transformers' (http://darcs.haskell.org/libraries/transformers.git/) registered for path 'libraries/transformers' Submodule 'libraries/vector' (http://darcs.haskell.org/libraries/vector.git/) registered for path 'libraries/vector' Submodule 'libraries/xhtml' (http://darcs.haskell.org/libraries/xhtml.git/) registered for path 'libraries/xhtml' Cloning into 'libraries/Cabal'... Submodule path 'libraries/Cabal': checked out '4b43bd95753e5f3e29d7bfbe6bba8477715ac296' Cloning into 'libraries/Win32'... Submodule path 'libraries/Win32': checked out '21335a30161c099da79ae9619c9782e5e32e4644' Cloning into 'libraries/binary'... Submodule path 'libraries/binary': checked out '2d31cea238d0d08885c457475fc354dbf2b88976' Cloning into 'libraries/bytestring'... Submodule path 'libraries/bytestring': checked out '6bd69fe27af33e878e38f4c579983f6a23120a87' Cloning into 'libraries/containers'... Submodule path 'libraries/containers': checked out 'a9b7224068ae60f73baacd5f76d2c27624d90120' Cloning into 'libraries/haskeline'... Submodule path 'libraries/haskeline': checked out '6ee5fc8ccdee410486a826cadfb2a0a560d60506' Cloning into 'libraries/pretty'... Submodule path 'libraries/pretty': checked out 'ab7e8d91470bb94c9e184dffbec89d0aae116f9b' Cloning into 'libraries/primitive'... Submodule path 'libraries/primitive': checked out '75c3379b6d76e914cc3c7ffd290b6b1cad7ea3e6' Cloning into 'libraries/terminfo'... Submodule path 'libraries/terminfo': checked out '579d2c324e69856ff8d1ea8b5036e30c920e1973' Cloning into 'libraries/time'... Submodule path 'libraries/time': checked out 'c98806fe0c9cde7371452ec30fa2900d28d16b16' Cloning into 'libraries/transformers'... Submodule path 'libraries/transformers': checked out 'a59fb93860f84ccd44178dcbbb82cfea7e02cd07' Cloning into 'libraries/vector'... Submodule path 'libraries/vector': checked out 'c4c5a740ec977a4300449bc85f4707ec641be923' Cloning into 'libraries/xhtml'... Submodule path 'libraries/xhtml': checked out 'fb9e0bbb69e15873682a9f25d39652099a3ccac1' ok. Building stage 1 compiler... failed; relevant barfage is below. GHC Version 7.7.20121213 No successfully built compilers to test; aborting. The last 30 lines of /playpen/simonmar/nightly/HEAD/logs/i386-unknown-linux-stage1 are rts/AdjustorAsm.S:129:0: Error: no such instruction: `load r12,WPTR_OFF(r2)' rts/AdjustorAsm.S:131:0: Error: no such instruction: `mtctr r12' rts/AdjustorAsm.S:133:0: Error: no such instruction: `load r0,0(r12)' rts/AdjustorAsm.S:137:0: Error: no such instruction: `mtctr r0' rts/AdjustorAsm.S:138:0: Error: no such instruction: `load r2,WS(r12)' rts/AdjustorAsm.S:140:0: Error: no such instruction: `bctrl' rts/AdjustorAsm.S:142:0: Error: no such instruction: `load r1,0(r1)' rts/AdjustorAsm.S:143:0: Error: no such instruction: `load r0,LINK_SLOT(r1)' rts/AdjustorAsm.S:144:0: Error: no such instruction: `mtlr r0' rts/AdjustorAsm.S:145:0: Error: no such instruction: `blr' make[1]: *** [rts/dist/build/AdjustorAsm.o] Error 1 make: *** [stage1_libs] Error 2 Command exited with
[nightly] 21-Dec-2012 build of HEAD on x86_64-unknown-linux (cam-04-unx)
Build description = HEAD on x86_64-unknown-linux (cam-04-unx) Build location= /64playpen/simonmar/nightly/HEAD-cam-04-unx Build config file = /home/simonmar/nightly/site/msrc/conf-HEAD-cam-04-unx Nightly build started on cam-04-unx at Fri Dec 21 18:00:02 GMT 2012. checking out new source tree ... warning: libraries/xhtml already present; omitting Submodule 'libraries/Cabal' (http://darcs.haskell.org/libraries/Cabal.git/) registered for path 'libraries/Cabal' Submodule 'libraries/Win32' (http://darcs.haskell.org/libraries/Win32.git/) registered for path 'libraries/Win32' Submodule 'libraries/binary' (http://darcs.haskell.org/libraries/binary.git/) registered for path 'libraries/binary' Submodule 'libraries/bytestring' (http://darcs.haskell.org/libraries/bytestring.git/) registered for path 'libraries/bytestring' Submodule 'libraries/containers' (http://darcs.haskell.org/libraries/containers.git/) registered for path 'libraries/containers' Submodule 'libraries/haskeline' (http://darcs.haskell.org/libraries/haskeline.git/) registered for path 'libraries/haskeline' Submodule 'libraries/pretty' (http://darcs.haskell.org/libraries/pretty.git/) registered for path 'libraries/pretty' Submodule 'libraries/primitive' (http://darcs.haskell.org/libraries/primitive.git/) registered for path 'libraries/primitive' Submodule 'libraries/terminfo' (http://darcs.haskell.org/libraries/terminfo.git/) registered for path 'libraries/terminfo' Submodule 'libraries/time' (http://darcs.haskell.org/libraries/time.git/) registered for path 'libraries/time' Submodule 'libraries/transformers' (http://darcs.haskell.org/libraries/transformers.git/) registered for path 'libraries/transformers' Submodule 'libraries/vector' (http://darcs.haskell.org/libraries/vector.git/) registered for path 'libraries/vector' Submodule 'libraries/xhtml' (http://darcs.haskell.org/libraries/xhtml.git/) registered for path 'libraries/xhtml' Cloning into 'libraries/Cabal'... Submodule path 'libraries/Cabal': checked out '4b43bd95753e5f3e29d7bfbe6bba8477715ac296' Cloning into 'libraries/Win32'... Submodule path 'libraries/Win32': checked out '21335a30161c099da79ae9619c9782e5e32e4644' Cloning into 'libraries/binary'... Submodule path 'libraries/binary': checked out '2d31cea238d0d08885c457475fc354dbf2b88976' Cloning into 'libraries/bytestring'... Submodule path 'libraries/bytestring': checked out '6bd69fe27af33e878e38f4c579983f6a23120a87' Cloning into 'libraries/containers'... Submodule path 'libraries/containers': checked out 'a9b7224068ae60f73baacd5f76d2c27624d90120' Cloning into 'libraries/haskeline'... Submodule path 'libraries/haskeline': checked out '6ee5fc8ccdee410486a826cadfb2a0a560d60506' Cloning into 'libraries/pretty'... Submodule path 'libraries/pretty': checked out 'ab7e8d91470bb94c9e184dffbec89d0aae116f9b' Cloning into 'libraries/primitive'... Submodule path 'libraries/primitive': checked out '75c3379b6d76e914cc3c7ffd290b6b1cad7ea3e6' Cloning into 'libraries/terminfo'... Submodule path 'libraries/terminfo': checked out '579d2c324e69856ff8d1ea8b5036e30c920e1973' Cloning into 'libraries/time'... Submodule path 'libraries/time': checked out 'c98806fe0c9cde7371452ec30fa2900d28d16b16' Cloning into 'libraries/transformers'... Submodule path 'libraries/transformers': checked out 'a59fb93860f84ccd44178dcbbb82cfea7e02cd07' Cloning into 'libraries/vector'... Submodule path 'libraries/vector': checked out 'c4c5a740ec977a4300449bc85f4707ec641be923' Cloning into 'libraries/xhtml'... Submodule path 'libraries/xhtml': checked out 'fb9e0bbb69e15873682a9f25d39652099a3ccac1' ok. Building stage 1 compiler... ok. GHC Version 7.7.20121213 Building stage 2 compiler... failed; relevant barfage is below. building source distribution ... ok. uploading source distribution... ok. building testsuite tools ... failed. building compiler binary distribution... ok. uploading binary distribution... ok. running nofib (-rtsopts -O2) ... ok. running nofib (-rtsopts -O2 -fllvm) ... ok. (1 failures) running nofib (-rtsopts -O2 -prof -auto-all -static)... ok. (92 failures) running nofib (-rtsopts -O2 -prof -auto-all -fllvm -static)... ok. (92 failures) publishing logs ... ok. Logs are at http://www.haskell.org/ghc/dist/current/logs Dists are at http://www.haskell.org/ghc/dist/current/dist Docs are at http://www.haskell.org/ghc/dist/current/docs - Respository hashes: .|c79f733460c17d66853c184ccd1782d0be21b4dc ghc-tarballs|18e0c37f8023abf469af991e2fc2d3b024319c27 libraries/array|442ff7744fb51004c5358ec626e704f4536e3d6c libraries/base|8afc23c65498a0aeedc93290816e5930f03bbcf8
[nightly] 21-Dec-2012 build of HEAD (unreg) on x86_64-unknown-linux (cam-04-unx)
Build description = HEAD (unreg) on x86_64-unknown-linux (cam-04-unx) Build location= /64playpen/simonmar/nightly/HEAD-unreg-cam-04-unx Build config file = /home/simonmar/nightly/site/msrc/conf-HEAD-unreg-cam-04-unx Nightly build started on cam-04-unx at Fri Dec 21 18:20:01 GMT 2012. checking out new source tree ... warning: libraries/xhtml already present; omitting Submodule 'libraries/Cabal' (http://darcs.haskell.org/libraries/Cabal.git/) registered for path 'libraries/Cabal' Submodule 'libraries/Win32' (http://darcs.haskell.org/libraries/Win32.git/) registered for path 'libraries/Win32' Submodule 'libraries/binary' (http://darcs.haskell.org/libraries/binary.git/) registered for path 'libraries/binary' Submodule 'libraries/bytestring' (http://darcs.haskell.org/libraries/bytestring.git/) registered for path 'libraries/bytestring' Submodule 'libraries/containers' (http://darcs.haskell.org/libraries/containers.git/) registered for path 'libraries/containers' Submodule 'libraries/haskeline' (http://darcs.haskell.org/libraries/haskeline.git/) registered for path 'libraries/haskeline' Submodule 'libraries/pretty' (http://darcs.haskell.org/libraries/pretty.git/) registered for path 'libraries/pretty' Submodule 'libraries/primitive' (http://darcs.haskell.org/libraries/primitive.git/) registered for path 'libraries/primitive' Submodule 'libraries/terminfo' (http://darcs.haskell.org/libraries/terminfo.git/) registered for path 'libraries/terminfo' Submodule 'libraries/time' (http://darcs.haskell.org/libraries/time.git/) registered for path 'libraries/time' Submodule 'libraries/transformers' (http://darcs.haskell.org/libraries/transformers.git/) registered for path 'libraries/transformers' Submodule 'libraries/vector' (http://darcs.haskell.org/libraries/vector.git/) registered for path 'libraries/vector' Submodule 'libraries/xhtml' (http://darcs.haskell.org/libraries/xhtml.git/) registered for path 'libraries/xhtml' Cloning into 'libraries/Cabal'... Submodule path 'libraries/Cabal': checked out '4b43bd95753e5f3e29d7bfbe6bba8477715ac296' Cloning into 'libraries/Win32'... Submodule path 'libraries/Win32': checked out '21335a30161c099da79ae9619c9782e5e32e4644' Cloning into 'libraries/binary'... Submodule path 'libraries/binary': checked out '2d31cea238d0d08885c457475fc354dbf2b88976' Cloning into 'libraries/bytestring'... Submodule path 'libraries/bytestring': checked out '6bd69fe27af33e878e38f4c579983f6a23120a87' Cloning into 'libraries/containers'... Submodule path 'libraries/containers': checked out 'a9b7224068ae60f73baacd5f76d2c27624d90120' Cloning into 'libraries/haskeline'... Submodule path 'libraries/haskeline': checked out '6ee5fc8ccdee410486a826cadfb2a0a560d60506' Cloning into 'libraries/pretty'... Submodule path 'libraries/pretty': checked out 'ab7e8d91470bb94c9e184dffbec89d0aae116f9b' Cloning into 'libraries/primitive'... Submodule path 'libraries/primitive': checked out '75c3379b6d76e914cc3c7ffd290b6b1cad7ea3e6' Cloning into 'libraries/terminfo'... Submodule path 'libraries/terminfo': checked out '579d2c324e69856ff8d1ea8b5036e30c920e1973' Cloning into 'libraries/time'... Submodule path 'libraries/time': checked out 'c98806fe0c9cde7371452ec30fa2900d28d16b16' Cloning into 'libraries/transformers'... Submodule path 'libraries/transformers': checked out 'a59fb93860f84ccd44178dcbbb82cfea7e02cd07' Cloning into 'libraries/vector'... Submodule path 'libraries/vector': checked out 'c4c5a740ec977a4300449bc85f4707ec641be923' Cloning into 'libraries/xhtml'... Submodule path 'libraries/xhtml': checked out 'fb9e0bbb69e15873682a9f25d39652099a3ccac1' ok. Building stage 1 compiler... ok. GHC Version 7.7 Building stage 2 compiler... failed; relevant barfage is below. building testsuite tools ... failed. running nofib (-rtsopts -O2) ... ok. (2 failures) - Respository hashes: .|c79f733460c17d66853c184ccd1782d0be21b4dc ghc-tarballs|18e0c37f8023abf469af991e2fc2d3b024319c27 libraries/array|442ff7744fb51004c5358ec626e704f4536e3d6c libraries/base|8afc23c65498a0aeedc93290816e5930f03bbcf8 libraries/deepseq|420507ea418db8664a79aedaa6588b772e8c97c6 libraries/directory|2fcd7016ed71c3fdbce658ab973c3ce5aa217d76 libraries/dph|4d6f89bb5923de0b6181e644d9e856b946754aa6 libraries/filepath|abf31a9aef45d2119a5757dafbe4adf611388ee8 libraries/ghc-prim|dbe66a7ea2e109d3c7744badf5e0b434f3d0f2a7 libraries/haskell2010|71bea78ccdbcd8bb8095dee2ebab8423e19ca959 libraries/haskell98|df1846099be1a7220e7d46aef167403eed53ebe5 libraries/hoopl|8e0ef3b7bf6d25919209f74d65c4a77c6689934d libraries/hpc|02d402f04b2af44dd95340f1d64e81a3fcac049d libraries/integer-gmp|f6e76d0cef900713a1b5be49c55004f39627de91 libraries/integer-simple|30c4af5165f181ef4f089b3d245371230f0aafad libraries/old-locale|df98c76b078de507ba2f7f23d4473c0ea09d5686
[nightly] 21-Dec-2012 build of STABLE on x86_64-unknown-linux (cam-04-unx)
Build description = STABLE on x86_64-unknown-linux (cam-04-unx) Build location= /64playpen/simonmar/nightly/STABLE-cam-04-unx Build config file = /home/simonmar/nightly/site/msrc/conf-STABLE-cam-04-unx Nightly build started on cam-04-unx at Fri Dec 21 18:10:01 GMT 2012. checking out new source tree ... warning: Remote branch ghc-7.6 not found in upstream origin, using HEAD instead ok. Building stage 1 compiler... ok. GHC Version 7.6.1.20121207 Building stage 2 compiler... ok. Building stage 3 compiler... ok. building source distribution ... ok. uploading source distribution... ok. building testsuite tools ... ok. running tests... ok (summary below). building compiler binary distribution... ok. uploading binary distribution... ok. running nofib (-rtsopts -O2) ... ok. running nofib (-rtsopts -O2 -fllvm) ... ok. running nofib (-rtsopts -O2 -prof -auto-all -static)... ok. running nofib (-rtsopts -O2 -prof -auto-all -fllvm -static)... ok. publishing logs ... ok. Logs are at http://www.haskell.org/ghc/dist/stable/logs Dists are at http://www.haskell.org/ghc/dist/stable/dist Docs are at http://www.haskell.org/ghc/dist/stable/docs - Respository hashes: .|1183080b1b45dbcaa6af1154e2e668f924598772 ghc-tarballs|18e0c37f8023abf469af991e2fc2d3b024319c27 libraries/Cabal|e7e7ce1029707a67d26e6dc29de11141734898e3 libraries/Win32|e13098aecd0489399435dbf8643e1db2272e1e02 libraries/array|8dcd15240a9c2ba142fcbd31f597b51cf2f560bf libraries/base|56c8295c638a03676a9be8d34195e6be945ddc2c libraries/binary|2d31cea238d0d08885c457475fc354dbf2b88976 libraries/bytestring|65e40bdf5b3a2484b36221a71b054e4400361a5f libraries/containers|a9b7224068ae60f73baacd5f76d2c27624d90120 libraries/deepseq|4821349305c2a73efacdd58d2ba485b07eb84eda libraries/directory|ef17afe1bd44ae10ef413146e5ade8867cb05625 libraries/filepath|2d60d0dd5d8fc924420bb238902266929f4e2cfb libraries/ghc-prim|03144fbee792555bfd6de6184228ebaeffed2896 libraries/haskeline|f4040ab5831866c260e03fc8601edf7e1ed77049 libraries/haskell2010|d7e33da36585c250cd0bfb45b518c95e44197f3c libraries/haskell98|c5a0db5eb4ce6a3736bf4f5caac3ff465b3dbaf9 libraries/hoopl|293d339303097641e7f14a1c0365a3801a87918d libraries/hpc|c1b783dbbb0ab917208655c53a0af5c7538c2a0b libraries/integer-gmp|2d9eca147f5c8b6f390eca15e03b315f67f2df01 libraries/integer-simple|47737f6f16d891b743a3d02b0a016100fd3a36d1 libraries/old-locale|47542432234f6fc406a9abf5d3f94e43d9bd10f6 libraries/old-time|cf225c367e5490201a5b04b1b8cb322f6e230d46 libraries/pretty|0a22cc0b3a4f8db876c4019013a30bfd1c0dd9a2 libraries/process|0ab69a65edae8c1a34ecee3a97b3839c833985f2 libraries/template-haskell|db0b4de55926b0bc98717c92ba543bcf9b89d024 libraries/terminfo|579d2c324e69856ff8d1ea8b5036e30c920e1973 libraries/transformers|a59fb93860f84ccd44178dcbbb82cfea7e02cd07 libraries/unix|b08de9ba4b5b6d4dc8ee43302ef99072059b2c01 libraries/utf8-string|73ca1b9def3f350ad28e55fcba077e6be3b67e93 libraries/xhtml|fb9e0bbb69e15873682a9f25d39652099a3ccac1 nofib|890caa4077655494f83fa3b6670f6d99d8c58744 testsuite|c96a151e2e48092efe58bfb2ba11aad428480b27 utils/haddock|3d25ea2929a9a9bd0768339b8ac5fd1b7c4670ad utils/hsc2hs|67b8c663216690150b6f762e09b32ebbe6334ddd - All done! Nightly build finished successfully at Sat Dec 22 01:15:55 GMT 2012 - GHC Test summary - OVERALL SUMMARY for test run started at Fri Dec 21 21:31:36 GMT 2012 3402 total tests, which gave rise to 16613 test cases, of which 10 caused framework failures 3563 were skipped 12537 expected passes 367 had missing libraries 131 expected failures 0 unexpected passes 15 unexpected failures Unexpected failures: perf/compilerT6048 [stat not good enough] (optasm) perf/haddock haddock.Cabal [stat not good enough] (normal) perf/haddock haddock.base [stat not good enough] (normal) perf/haddock haddock.compiler [stat not good enough] (normal) safeHaskell/check/pkg01 ImpSafeOnly01 [exit code non-0] (normal) safeHaskell/check/pkg01 ImpSafeOnly02 [exit code non-0] (normal) safeHaskell/check/pkg01 ImpSafeOnly03 [stderr mismatch] (normal) safeHaskell/check/pkg01 ImpSafeOnly04 [exit code non-0] (normal) safeHaskell/check/pkg01 ImpSafeOnly05 [stderr mismatch] (normal) safeHaskell/check/pkg01 ImpSafeOnly06 [exit code non-0] (normal) safeHaskell/check/pkg01 ImpSafeOnly07 [stderr mismatch] (normal) safeHaskell/check/pkg01 ImpSafeOnly08 [stderr mismatch] (normal) safeHaskell/check/pkg01
[commit: ghc] overlapping-tyfams: Merge branch 'master' into overlapping-tyfams (0cd7e7b)
Repository : ssh://darcs.haskell.org//srv/darcs/ghc On branch : overlapping-tyfams http://hackage.haskell.org/trac/ghc/changeset/0cd7e7b8ccf0c88f3d5793b8aebef21320edae46 --- commit 0cd7e7b8ccf0c88f3d5793b8aebef21320edae46 Merge: 29193cd... d3e2912... Author: Richard Eisenberg e...@cis.upenn.edu Date: Fri Dec 21 19:10:00 2012 -0500 Merge branch 'master' into overlapping-tyfams Conflicts: compiler/basicTypes/MkId.lhs compiler/hsSyn/Convert.lhs compiler/types/FamInstEnv.lhs compiler/basicTypes/BasicTypes.lhs | 27 +- compiler/basicTypes/DataCon.lhs | 282 +++--- compiler/basicTypes/DataCon.lhs-boot|1 + compiler/basicTypes/Literal.lhs |7 +- compiler/basicTypes/MkId.lhs| 653 +-- compiler/basicTypes/MkId.lhs-boot | 10 +- compiler/cmm/CmmMachOp.hs |2 + compiler/cmm/CmmPipeline.hs | 37 +- compiler/cmm/CmmProcPoint.hs|2 +- compiler/cmm/PprC.hs|4 + compiler/codeGen/StgCmmPrim.hs |6 + compiler/codeGen/StgCmmUtils.hs |3 +- compiler/coreSyn/CoreUnfold.lhs |3 +- compiler/coreSyn/MkCore.lhs |4 +- compiler/coreSyn/MkExternalCore.lhs |3 +- compiler/deSugar/Check.lhs |2 +- compiler/deSugar/DsBinds.lhs|2 +- compiler/deSugar/DsMeta.hs |6 +- compiler/deSugar/DsUtils.lhs| 12 +- compiler/deSugar/MatchLit.lhs |6 +- compiler/ghci/ByteCodeGen.lhs | 10 +- compiler/hsSyn/Convert.lhs | 364 +- compiler/hsSyn/HsLit.lhs|3 +- compiler/iface/BinIface.hs | 19 +- compiler/iface/BuildTyCl.lhs|8 +- compiler/iface/LoadIface.lhs| 24 +- compiler/iface/MkIface.lhs |7 +- compiler/llvmGen/LlvmCodeGen/CodeGen.hs | 12 + compiler/main/CodeOutput.lhs| 14 +- compiler/main/DriverPipeline.hs | 43 ++- compiler/main/DynFlags.hs | 174 ++--- compiler/main/GHC.hs| 27 ++ compiler/main/HscMain.hs| 17 +- compiler/main/HscTypes.lhs |4 + compiler/main/InteractiveEval.hs| 43 ++- compiler/main/PprTyThing.hs | 24 +- compiler/nativeGen/AsmCodeGen.lhs | 311 --- compiler/nativeGen/CPrim.hs | 12 +- compiler/nativeGen/PPC/CodeGen.hs |2 + compiler/nativeGen/PPC/Instr.hs | 575 +++- compiler/nativeGen/SPARC/CodeGen.hs |2 + compiler/nativeGen/X86/CodeGen.hs | 13 + compiler/nativeGen/X86/Instr.hs |2 +- compiler/parser/Lexer.x |7 +- compiler/parser/Parser.y.pp | 23 +- compiler/parser/ParserCore.y|2 +- compiler/prelude/PrelNames.lhs |8 +- compiler/prelude/PrelRules.lhs |3 +- compiler/prelude/TysPrim.lhs|7 - compiler/prelude/TysWiredIn.lhs | 37 ++- compiler/prelude/TysWiredIn.lhs-boot|1 + compiler/prelude/primops.txt.pp |3 + compiler/rename/RnExpr.lhs |2 +- compiler/simplCore/CoreMonad.lhs|3 + compiler/stranal/WwLib.lhs | 65 +++- compiler/typecheck/TcForeign.lhs| 12 +- compiler/typecheck/TcGenGenerics.lhs| 14 +- compiler/typecheck/TcHsType.lhs | 15 +- compiler/typecheck/TcInstDcls.lhs | 13 +- compiler/typecheck/TcRnMonad.lhs|9 + compiler/typecheck/TcRnTypes.lhs|2 + compiler/typecheck/TcTyClsDecls.lhs | 195 +++--- compiler/typecheck/TcUnify.lhs | 79 ++-- compiler/types/Kind.lhs |1 - compiler/types/Type.lhs |8 +- compiler/utils/Binary.hs| 36 +- compiler/utils/BufWrite.hs | 31 +- compiler/utils/FastString.lhs | 240 --- compiler/utils/Outputable.lhs |6 +- docs/users_guide/bugs.xml | 22 +- docs/users_guide/ffi-chap.xml | 28 +- docs/users_guide/flags.xml | 15 +- docs/users_guide/ghci.xml |5 +- docs/users_guide/glasgow_exts.xml | 120 +++--- docs/users_guide/using.xml | 47 +++ includes/Stg.h |7 +- includes/rts/Threads.h |3 + includes/rts/storage/ClosureMacros.h|4 +- includes/stg/TailCalls.h| 185 - rts/Capability.h|3 +- rts/Linker.c|1 + rts/STM.c | 60 ++- sync-all| 37 +- 83 files changed, 2179 insertions(+), 1962 deletions(-)
[commit: ghc] overlapping-tyfams: Edited added code to work with overlapping tyfams. (566237c)
Repository : ssh://darcs.haskell.org//srv/darcs/ghc On branch : overlapping-tyfams http://hackage.haskell.org/trac/ghc/changeset/566237c0bbaf1f9bcbc43f0dd43b1c4dbf0b90dd --- commit 566237c0bbaf1f9bcbc43f0dd43b1c4dbf0b90dd Author: Richard Eisenberg e...@cis.upenn.edu Date: Fri Dec 21 20:36:19 2012 -0500 Edited added code to work with overlapping tyfams. --- compiler/basicTypes/MkId.lhs |7 --- 1 files changed, 4 insertions(+), 3 deletions(-) diff --git a/compiler/basicTypes/MkId.lhs b/compiler/basicTypes/MkId.lhs index e458e93..6811b11 100644 --- a/compiler/basicTypes/MkId.lhs +++ b/compiler/basicTypes/MkId.lhs @@ -48,7 +48,8 @@ import TysPrim import TysWiredIn import PrelRules import Type -import Coercion( mkReflCo, mkAxInstCo, mkSymCo, coercionKind, mkUnsafeCo ) +import Coercion( mkReflCo, mkAxInstCo, mkSymCo, coercionKind, mkUnsafeCo, + mkUnbranchedAxInstCo ) import TcType import MkCore import CoreUtils ( exprType, mkCast ) @@ -649,7 +650,7 @@ dataConArgUnpack arg_ty unbox_tc_app tc tc_args con | isNewTyCon tc , let rep_ty = newTyConInstRhs tc tc_args -co = mkAxInstCo (newTyConCo tc) tc_args -- arg_ty ~ rep_ty +co = mkUnbranchedAxInstCo (newTyConCo tc) tc_args -- arg_ty ~ rep_ty , (yes, rep_tys, unbox_rep, box_rep) - dataConArgUnpack rep_ty = ( yes, rep_tys , \ arg_id - @@ -663,7 +664,7 @@ dataConArgUnpack arg_ty UnitBox - do { rep_id - newLocal (substTy subst rep_ty) ; return ([rep_id], Var rep_id) } Boxer boxer - boxer subst - ; let sco = mkAxInstCo (newTyConCo tc) (substTys subst tc_args) + ; let sco = mkUnbranchedAxInstCo (newTyConCo tc) (substTys subst tc_args) ; return (rep_ids, rep_expr `Cast` mkSymCo sco) } ) | otherwise ___ Cvs-ghc mailing list Cvs-ghc@haskell.org http://www.haskell.org/mailman/listinfo/cvs-ghc
[commit: ghc] overlapping-tyfams's head updated: Edited added code to work with overlapping tyfams. (566237c)
Repository : ssh://darcs.haskell.org//srv/darcs/ghc Branch 'overlapping-tyfams' now includes: 566920c... Add -funbox-strict-primitive-fields e4feb52... fix description of ghci instance env bug 250f026... fix code in library initialisation example (#7471) 27770ae... Invalidate the ModSummary cache in setSessionDynFlags (#7478) b85a849... Pessimistically assume that unknown arches can't do unaligned loads e415777... Detabbing 4f7027d... Document -funbox-strict-primitive-fields 86e2a2a... Don't set -O0 -g C flags when -debug is given c1c2d84... Merge branch 'master' of darcs.haskell.org:/srv/darcs//ghc 7bf6eb9... Minor twiddle to -funbox-strict-primitive-fields docs 1435eef... Refactor primitive field unpacking check 609aecb... Tweaks to dynamic-too code 713c514... Merge branch 'master' of darcs.haskell.org:/srv/darcs//ghc d7d25db... Merge branch 'master' of http://darcs.haskell.org/ghc cea7aa3... Merge branch 'master' of http://darcs.haskell.org/ghc e5182b7... Add replaceDynFlags to the ContainsDynFlags class 0c4a9f3... Add a function to change DynFlags to be suitable for compiling for way=dynamic ecd9676... Fix loading dynamic interfaces when using -dynamic-too b339dd4... Change how sync-all handles directory changes 332e681... Add -funbox-strict-primitive-fields example f184d9c... Fix a bug in the handling of nested orElse 31d8900... Fix #7487 b0339aa... document special this syntax for PackageImports (#7409) d684114... add enabled_capabilities (#7491) 497cb61... Merge branch 'master' of http://darcs.haskell.org/ghc 48bb69a... Small refactoring: Use more idiomatic strictness forcing in AsmCodeGen d23148a... Package the NativeGen state up into a named type 8246c7a... Tweak how 'count' is handled in the nativeCodeGen 8685535... Add more plumbing to the nativeCodeGen bd8f7fc... Implement the -dynamic-too optimised path for the NCG 5d0d1d9... typo 750a34b... Small code tidy-up 7df6d78... Add a comment d5b5d48... Use ByteString rather than FastBytes inside FastZString 589b628... Merge ../bs 7651b67... Make FastBytes a synonym for ByteString 2e8c769... Implement word2Float# and word2Double# e2564ce... Merge ../bs ab9de78... Merge branch 'master' of darcs.haskell.org:/srv/darcs//ghc 2b977d9... Remove most of TailCalls.h 265af43... Make enabled_capabilities visible (fixes dynamic linking) c79f733... Merge branch 'master' of darcs.haskell.org:/srv/darcs//ghc 7085b84... Inline some FastBytes/ByteString wrappers fae0d4c... Whitespace only in hsSyn/Convert.lhs 3c17143... Use BS.pack instead of mkFastBytesByteList 80a3a15... Remove a couple more FastBytes functions faa8ff4... Major refactoring of the way that UNPACK pragmas are handled 96acba6... Merge branch 'master' of darcs.haskell.org:/home/darcs/ghc a243fa7... Use ByteString rather than FastBytes in Binary ca56668... Remove the trivial mkFastStringFastBytes wrapper 6409ba5... Rename remaining FastBytes usages to ByteString bcf7123... Implement the slow mode of -dynamic-too eec4c10... Call gcc with '-x assembler-with-cpp' instead of '-x assembler'. 6a990ac... De-tab compiler/nativeGen/PPC/Instr.hs. 51d3645... PPC: Implement stack resizing for the linear register allocator. 6e0d45a... Small refactoring: makes it easier to see what nativeCodeGen actually does 55c55f1... Revert Fix a bug in the handling of nested orElse a006ecd... A better fix for #7493 (see comment for details) 909d52e... Document the behavior of info!. ea8490e... Tidy up documtation of monomorphsim restriction etc b585312... Wibbles to faa8ff40 (UNPACK pragmas) 650f76f... Merge branch 'master' of darcs.haskell.org:/home/darcs/ghc e3aa165... typo a38b832... spelling in doc 942939c... Fix Trac #7506 (missing check for form of FFI type) 8c1aab0... Merge branch 'master' of darcs.haskell.org:/home/darcs/ghc aad93f5... Move the kind Nat and Symbol out of TysPrim and into TysWiredIn a62c437... Add some ASSERTs to calls of zipTopTvSubst 3394d49... Pass the correct inst_tys argument to dataConCannotMatch, in mkRecSelBinds be5cc2e... Fix TcUnify.matchExpectedTyConApp so that it returns types of compatible kinds 9429d79... Merge branch 'master' of http://darcs.haskell.org/ghc f6f881f... Rename all of the 'cmmz' flags and make them more consistent. 54a3963... 'sync-all get -q' also passes -q to 'git submodule' 02c4ab0... Redirect asynchronous exceptions to the sandbox thread in runStmt (#1381) 1353d1e... Fix over-zealous ASSERT in TcUnify 866d28d... Merge branch 'master' of http://darcs.haskell.org/ghc b8739b2... Allow newtypes to be promoted 40ef925... Merge branch 'master' of darcs.haskell.org:/home/darcs/ghc
[commit: ghc] overlapping-tyfams: Fixed tcApartTys to work; changed singleton to unbranched. (29193cd)
Repository : ssh://darcs.haskell.org//srv/darcs/ghc On branch : overlapping-tyfams http://hackage.haskell.org/trac/ghc/changeset/29193cde8ce482db9e0dcec5a704ac3dc890285c --- commit 29193cde8ce482db9e0dcec5a704ac3dc890285c Author: Richard Eisenberg e...@cis.upenn.edu Date: Fri Dec 21 10:28:09 2012 -0500 Fixed tcApartTys to work; changed singleton to unbranched. compiler/basicTypes/MkId.lhs | 20 +- compiler/typecheck/TcBinds.lhs|2 +- compiler/typecheck/TcDeriv.lhs|4 +- compiler/typecheck/TcEvidence.lhs |6 +- compiler/typecheck/TcExpr.lhs |4 +- compiler/typecheck/TcForeign.lhs |2 +- compiler/typecheck/TcPat.lhs |2 +- compiler/types/CoAxiom.lhs| 54 +- compiler/types/Coercion.lhs | 16 +- compiler/types/FamInstEnv.lhs | 24 ++- compiler/types/Unify.lhs | 216 +++-- compiler/vectorise/Vectorise/Generic/PAMethods.hs | 12 +- compiler/vectorise/Vectorise/Utils/PADict.hs |4 +- 13 files changed, 209 insertions(+), 157 deletions(-) Diff suppressed because of size. To see it, use: git show 29193cde8ce482db9e0dcec5a704ac3dc890285c ___ Cvs-ghc mailing list Cvs-ghc@haskell.org http://www.haskell.org/mailman/listinfo/cvs-ghc
[commit: testsuite] overlapping-tyfams: Merge branch 'master' into overlapping-tyfams (d2e05e4)
Repository : ssh://darcs.haskell.org//srv/darcs/testsuite On branch : overlapping-tyfams http://hackage.haskell.org/trac/ghc/changeset/d2e05e49f869699d84d75e72b1ea947f0de5864d --- commit d2e05e49f869699d84d75e72b1ea947f0de5864d Merge: 063c8db... 4f6baef... Author: Richard Eisenberg e...@cis.upenn.edu Date: Fri Dec 21 19:11:38 2012 -0500 Merge branch 'master' into overlapping-tyfams Conflicts: tests/th/all.T config/ghc |3 + driver/testglobals.py |3 + driver/testlib.py | 36 mk/test.mk |9 +++- tests/codeGen/should_run/Word2Float.hs | 17 ++ tests/codeGen/should_run/Word2Float.stdout |4 + tests/codeGen/should_run/all.T |1 + tests/driver/dynamicToo/A001.hs|6 ++ tests/driver/dynamicToo/B001.hs|6 ++ tests/driver/dynamicToo/B001_1.hs |6 ++ tests/driver/dynamicToo/B001_2.hs |6 ++ tests/driver/dynamicToo/C001.hs|9 +++ tests/driver/dynamicToo/Makefile | 23 +++ tests/driver/dynamicToo/all.T | 13 tests/driver/dynamicToo/dynamicToo001.stdout |4 + tests/ffi/should_fail/T7506.hs |6 ++ tests/ffi/should_fail/T7506.stderr |7 ++ tests/ffi/should_fail/all.T|1 + tests/generics/GenCanDoRep1.hs |4 + tests/ghc-api/T7478/A.hs |6 ++ tests/ghc-api/T7478/B.hs |4 + tests/ghc-api/T7478/C.hs |4 + tests/ghc-api/T7478/Makefile | 11 tests/ghc-api/T7478/T7478.hs | 61 tests/ghc-api/T7478/T7478.stdout |8 +++ tests/ghc-api/T7478/all.T |2 + tests/indexed-types/should_compile/T7474.hs| 17 ++ tests/indexed-types/should_compile/T7489.hs| 12 tests/indexed-types/should_compile/all.T |2 + tests/parser/should_compile/T7476/Makefile | 10 +++ tests/parser/should_compile/T7476/T7476.hs |2 + tests/parser/should_compile/T7476/T7476.stdout |1 + tests/parser/should_compile/T7476/all.T|6 ++ tests/perf/compiler/all.T |4 +- tests/perf/should_run/Conversions.hs | 21 +++ tests/perf/should_run/Conversions.stdout |2 + tests/perf/should_run/all.T| 12 tests/plugins/simple-plugin/Simple/Plugin.hs |2 +- tests/polykinds/T7488.hs |8 +++ tests/polykinds/T7502.hs |4 + tests/polykinds/all.T |2 + tests/rename/should_fail/rnfail055.stderr |2 +- tests/th/Makefile |3 + tests/th/T7445.hs |6 ++ tests/th/T7445a.hs | 13 tests/th/all.T |3 + .../should_compile/UnboxStrictPrimitiveFields.hs | 28 + tests/typecheck/should_compile/all.T |3 +- tests/typecheck/should_fail/all.T |2 +- 49 files changed, 419 insertions(+), 6 deletions(-) diff --cc tests/th/all.T index 4ac8bf5,78e7655..1a97cff --- a/tests/th/all.T +++ b/tests/th/all.T @@@ -255,8 -255,6 +255,11 @@@ test('T7092', extra_clean(['T7092a.hi', test('T7276', normal, compile_fail, ['-v0']) test('T7276a', combined_output, ghci_script, ['T7276a.script']) +test('TH_TyInstWhere1', normal, compile, ['-v0 -ddump-splices -dsuppress-uniques']) +test('TH_TyInstWhere2', normal, compile, ['-v0']) +test('TH_TyInstWhere3', normal, compile, ['-v0']) +test('TH_TyInstWhere4', normal, compile, ['-v0']) + + test('T7445', extra_clean(['T7445a.hi', 'T7445a.o']), + run_command, + ['$MAKE -s --no-print-directory T7445'] ) ___ Cvs-ghc mailing list Cvs-ghc@haskell.org http://www.haskell.org/mailman/listinfo/cvs-ghc
[commit: testsuite] overlapping-tyfams's head updated: Merge branch 'master' into overlapping-tyfams (d2e05e4)
Repository : ssh://darcs.haskell.org//srv/darcs/testsuite Branch 'overlapping-tyfams' now includes: b2c5047... Add test for -funbox-strict-primitive-fields 6fec11b... Test Trac #7445 fbfb43d... Merge branch 'master' of http://darcs.haskell.org/testsuite fd681c4... add test for #7478 e0ba47a... delete stray file 56036c9... Move UnboxStrictPrimitiveFields.hs to the right directory fc20d6c... Add a test for #7476 a1be96f... Add a test for #7474 877361e... Add test for #7487 894e4a2... T3294 now uses more space 8b3c309... Add test for word2Double# and word2Float# e668693... plugins*: Follow changes in ghc 9f1f5ff... Add a test for -dynamic-too 890fea0... Only run dynamicToo001 if we have both vanilla and dynamic libraries 9f4dd2d... perf test for Word-Float/Double conversion 30ef58b... Test Trac #7506 7c1faf8... Test Trac #7502 46e0cc5... Wibbles for new UNPACK stuff ff0b4a0... Test Trac #7489 4f6baef... Add test for Trac #7488 d2e05e4... Merge branch 'master' into overlapping-tyfams ___ Cvs-ghc mailing list Cvs-ghc@haskell.org http://www.haskell.org/mailman/listinfo/cvs-ghc
[commit: haddock] overlapping-tyfams: Merge branch 'master' into overlapping-tyfams (8d3c11a)
Repository : ssh://darcs.haskell.org//srv/darcs/haddock On branch : overlapping-tyfams http://hackage.haskell.org/trac/ghc/changeset/8d3c11a3e9161738a701e4f870c973058fca913d --- commit 8d3c11a3e9161738a701e4f870c973058fca913d Merge: aa9d6ce... a6ab966... Author: Richard Eisenberg e...@cis.upenn.edu Date: Fri Dec 21 19:16:10 2012 -0500 Merge branch 'master' into overlapping-tyfams Conflicts: src/Haddock/Convert.hs src/Haddock/Convert.hs | 24 ++-- 1 files changed, 14 insertions(+), 10 deletions(-) diff --cc src/Haddock/Convert.hs index c522ed7,aca1218..8894793 --- a/src/Haddock/Convert.hs +++ b/src/Haddock/Convert.hs @@@ -91,23 -83,20 +91,24 @@@ synifyATDefault :: TyCon - LTyFamInstD synifyATDefault tc = noLoc (synifyAxiom ax) where Just ax = tyConFamilyCoercion_maybe tc -synifyAxiom :: CoAxiom - FamInstDecl Name -synifyAxiom (CoAxiom { co_ax_tvs = tkvs, co_ax_lhs = lhs, co_ax_rhs = rhs }) - | Just (tc, args) - tcSplitTyConApp_maybe lhs - = let name = synifyName tc -typats= map (synifyType WithinType) args -hs_rhs_ty = synifyType WithinType rhs +synifyAxBranch :: TyCon - CoAxBranch - TyFamInstEqn Name - synifyAxBranch tc (CoAxBranch { cab_tvs = tvs, cab_lhs = args, cab_rhs = rhs }) - = let name = synifyName tc - typats = map (synifyType WithinType) args - hs_rhs = synifyType WithinType rhs ++synifyAxBranch tc (CoAxBranch { cab_tvs = tkvs, cab_lhs = args, cab_rhs = rhs }) ++ = let name = synifyName tc ++typats = map (synifyType WithinType) args ++hs_rhs = synifyType WithinType rhs + (kvs, tvs) = partition isKindVar tkvs -in FamInstDecl { fid_tycon = name - , fid_pats = HsWB { hswb_cts = typats - , hswb_kvs = map tyVarName kvs - , hswb_tvs = map tyVarName tvs } - , fid_defn = TySynonym hs_rhs_ty, fid_fvs = placeHolderNames } - | otherwise - = error synifyAxiom +in TyFamInstEqn { tfie_tycon = name +, tfie_pats = HsWB { hswb_cts = typats - , hswb_kvs = [] ++, hswb_kvs = map tyVarName kvs +, hswb_tvs = map tyVarName tvs } +, tfie_rhs = hs_rhs } + +synifyAxiom :: CoAxiom br - TyFamInstDecl Name +synifyAxiom (CoAxiom { co_ax_tc = tc, co_ax_branches = branches }) + = let eqns = brListMap (noLoc . synifyAxBranch tc) branches +in TyFamInstDecl { tfid_eqns = eqns + , tfid_group = (brListLength branches /= 1) + , tfid_fvs = placeHolderNames } synifyTyCon :: TyCon - TyClDecl Name synifyTyCon tc ___ Cvs-ghc mailing list Cvs-ghc@haskell.org http://www.haskell.org/mailman/listinfo/cvs-ghc
[commit: haddock] overlapping-tyfams's head updated: Merge branch 'master' into overlapping-tyfams (8d3c11a)
Repository : ssh://darcs.haskell.org//srv/darcs/haddock Branch 'overlapping-tyfams' now includes: a6ab966... Track changes in UNPACK pragma stuff 8d3c11a... Merge branch 'master' into overlapping-tyfams ___ Cvs-ghc mailing list Cvs-ghc@haskell.org http://www.haskell.org/mailman/listinfo/cvs-ghc
[commit: ghc] master: Implement overlapping type family instances. (8366792)
Repository : ssh://darcs.haskell.org//srv/darcs/ghc On branch : master http://hackage.haskell.org/trac/ghc/changeset/8366792eede3c8eb486ff15d8c8e62e9363f1959 --- commit 8366792eede3c8eb486ff15d8c8e62e9363f1959 Author: Richard Eisenberg e...@cis.upenn.edu Date: Fri Dec 21 20:54:15 2012 -0500 Implement overlapping type family instances. An ordered, overlapping type family instance is introduced by 'type instance where', followed by equations. See the new section in the user manual (7.7.2.2) for details. The canonical example is Boolean equality at the type level: type family Equals (a :: k) (b :: k) :: Bool type instance where Equals a a = True Equals a b = False A branched family instance, such as this one, checks its equations in order and applies only the first the matches. As explained in the note [Instance checking within groups] in FamInstEnv.lhs, we must be careful not to simplify, say, (Equals Int b) to False, because b might later unify with Int. This commit includes all of the commits on the overlapping-tyfams branch. SPJ requested that I combine all my commits over the past several months into one monolithic commit. The following GHC repos are affected: ghc, testsuite, utils/haddock, libraries/template-haskell, and libraries/dph. Here are some details for the interested: - The definition of CoAxiom has been moved from TyCon.lhs to a new file CoAxiom.lhs. I made this decision because of the number of definitions necessary to support BranchList. - BranchList is a GADT whose type tracks whether it is a singleton list or not-necessarily-a-singleton-list. The reason I introduced this type is to increase static checking of places where GHC code assumes that a FamInst or CoAxiom is indeed a singleton. This assumption takes place roughly 10 times throughout the code. I was worried that a future change to GHC would invalidate the assumption, and GHC might subtly fail to do the right thing. By explicitly labeling CoAxioms and FamInsts as being Unbranched (singleton) or Branched (not-necessarily-singleton), we make this assumption explicit and checkable. Furthermore, to enforce the accuracy of this label, the list of branches of a CoAxiom or FamInst is stored using a BranchList, whose constructors constrain its type index appropriately. I think that the decision to use BranchList is probably the most controversial decision I made from a code design point of view. Although I provide conversions to/from ordinary lists, it is more efficient to use the brList... functions provided in CoAxiom than always to convert. The use of these functions does not wander far from the core CoAxiom/FamInst logic. BranchLists are motivated and explained in the note [Branched axioms] in CoAxiom.lhs. - The CoAxiom type has changed significantly. You can see the new type in CoAxiom.lhs. It uses a CoAxBranch type to track branches of the CoAxiom. Correspondingly various functions producing and consuming CoAxioms had to change, including the binary layout of interface files. - To get branched axioms to work correctly, it is important to have a notion of type apartness: two types are apart if they cannot unify, and no substitution of variables can ever get them to unify, even after type family simplification. (This is different than the normal failure to unify because of the type family bit.) This notion in encoded in tcApartTys, in Unify.lhs. Because apartness is finer-grained than unification, the tcUnifyTys now calls tcApartTys. - CoreLinting axioms has been updated, both to reflect the new form of CoAxiom and to enforce the apartness rules of branch application. The formalization of the new rules is in docs/core-spec/core-spec.pdf. - The FamInst type (in types/FamInstEnv.lhs) has changed significantly, paralleling the changes to CoAxiom. Of course, this forced minor changes in many files. - There are several new Notes in FamInstEnv.lhs, including one discussing confluent overlap and why we're not doing it. - lookupFamInstEnv, lookupFamInstEnvConflicts, and lookup_fam_inst_env' (the function that actually does the work) have all been more-or-less completely rewritten. There is a Note [lookup_fam_inst_env' implementation] describing the implementation. One of the changes that affects other files is to change the type of matches from a pair of (FamInst, [Type]) to a new datatype (which now includes the index of the matching branch). This seemed a better design. - The
[commit: testsuite] master: Implement overlapping type family instances. (80cac93)
Repository : ssh://darcs.haskell.org//srv/darcs/testsuite On branch : master http://hackage.haskell.org/trac/ghc/changeset/80cac93f030cd0bbd5ff8dd197effaacf6ae651d --- commit 80cac93f030cd0bbd5ff8dd197effaacf6ae651d Author: Richard Eisenberg e...@cis.upenn.edu Date: Fri Dec 21 20:55:29 2012 -0500 Implement overlapping type family instances. An ordered, overlapping type family instance is introduced by 'type instance where', followed by equations. See the new section in the user manual (7.7.2.2) for details. The canonical example is Boolean equality at the type level: type family Equals (a :: k) (b :: k) :: Bool type instance where Equals a a = True Equals a b = False A branched family instance, such as this one, checks its equations in order and applies only the first the matches. As explained in the note [Instance checking within groups] in FamInstEnv.lhs, we must be careful not to simplify, say, (Equals Int b) to False, because b might later unify with Int. This commit includes all of the commits on the overlapping-tyfams branch. SPJ requested that I combine all my commits over the past several months into one monolithic commit. The following GHC repos are affected: ghc, testsuite, utils/haddock, libraries/template-haskell, and libraries/dph. Here are some details for the interested: - The definition of CoAxiom has been moved from TyCon.lhs to a new file CoAxiom.lhs. I made this decision because of the number of definitions necessary to support BranchList. - BranchList is a GADT whose type tracks whether it is a singleton list or not-necessarily-a-singleton-list. The reason I introduced this type is to increase static checking of places where GHC code assumes that a FamInst or CoAxiom is indeed a singleton. This assumption takes place roughly 10 times throughout the code. I was worried that a future change to GHC would invalidate the assumption, and GHC might subtly fail to do the right thing. By explicitly labeling CoAxioms and FamInsts as being Unbranched (singleton) or Branched (not-necessarily-singleton), we make this assumption explicit and checkable. Furthermore, to enforce the accuracy of this label, the list of branches of a CoAxiom or FamInst is stored using a BranchList, whose constructors constrain its type index appropriately. I think that the decision to use BranchList is probably the most controversial decision I made from a code design point of view. Although I provide conversions to/from ordinary lists, it is more efficient to use the brList... functions provided in CoAxiom than always to convert. The use of these functions does not wander far from the core CoAxiom/FamInst logic. BranchLists are motivated and explained in the note [Branched axioms] in CoAxiom.lhs. - The CoAxiom type has changed significantly. You can see the new type in CoAxiom.lhs. It uses a CoAxBranch type to track branches of the CoAxiom. Correspondingly various functions producing and consuming CoAxioms had to change, including the binary layout of interface files. - To get branched axioms to work correctly, it is important to have a notion of type apartness: two types are apart if they cannot unify, and no substitution of variables can ever get them to unify, even after type family simplification. (This is different than the normal failure to unify because of the type family bit.) This notion in encoded in tcApartTys, in Unify.lhs. Because apartness is finer-grained than unification, the tcUnifyTys now calls tcApartTys. - CoreLinting axioms has been updated, both to reflect the new form of CoAxiom and to enforce the apartness rules of branch application. The formalization of the new rules is in docs/core-spec/core-spec.pdf. - The FamInst type (in types/FamInstEnv.lhs) has changed significantly, paralleling the changes to CoAxiom. Of course, this forced minor changes in many files. - There are several new Notes in FamInstEnv.lhs, including one discussing confluent overlap and why we're not doing it. - lookupFamInstEnv, lookupFamInstEnvConflicts, and lookup_fam_inst_env' (the function that actually does the work) have all been more-or-less completely rewritten. There is a Note [lookup_fam_inst_env' implementation] describing the implementation. One of the changes that affects other files is to change the type of matches from a pair of (FamInst, [Type]) to a new datatype (which now includes the index of the matching branch). This seemed a better design. - The
[commit: haddock] master: Implement overlapping type family instances. (8bdd26e)
Repository : ssh://darcs.haskell.org//srv/darcs/haddock On branch : master http://hackage.haskell.org/trac/ghc/changeset/8bdd26e3d2864151c4d0dccbc530c2deac362892 --- commit 8bdd26e3d2864151c4d0dccbc530c2deac362892 Author: Richard Eisenberg e...@cis.upenn.edu Date: Fri Dec 21 20:56:25 2012 -0500 Implement overlapping type family instances. An ordered, overlapping type family instance is introduced by 'type instance where', followed by equations. See the new section in the user manual (7.7.2.2) for details. The canonical example is Boolean equality at the type level: type family Equals (a :: k) (b :: k) :: Bool type instance where Equals a a = True Equals a b = False A branched family instance, such as this one, checks its equations in order and applies only the first the matches. As explained in the note [Instance checking within groups] in FamInstEnv.lhs, we must be careful not to simplify, say, (Equals Int b) to False, because b might later unify with Int. This commit includes all of the commits on the overlapping-tyfams branch. SPJ requested that I combine all my commits over the past several months into one monolithic commit. The following GHC repos are affected: ghc, testsuite, utils/haddock, libraries/template-haskell, and libraries/dph. Here are some details for the interested: - The definition of CoAxiom has been moved from TyCon.lhs to a new file CoAxiom.lhs. I made this decision because of the number of definitions necessary to support BranchList. - BranchList is a GADT whose type tracks whether it is a singleton list or not-necessarily-a-singleton-list. The reason I introduced this type is to increase static checking of places where GHC code assumes that a FamInst or CoAxiom is indeed a singleton. This assumption takes place roughly 10 times throughout the code. I was worried that a future change to GHC would invalidate the assumption, and GHC might subtly fail to do the right thing. By explicitly labeling CoAxioms and FamInsts as being Unbranched (singleton) or Branched (not-necessarily-singleton), we make this assumption explicit and checkable. Furthermore, to enforce the accuracy of this label, the list of branches of a CoAxiom or FamInst is stored using a BranchList, whose constructors constrain its type index appropriately. I think that the decision to use BranchList is probably the most controversial decision I made from a code design point of view. Although I provide conversions to/from ordinary lists, it is more efficient to use the brList... functions provided in CoAxiom than always to convert. The use of these functions does not wander far from the core CoAxiom/FamInst logic. BranchLists are motivated and explained in the note [Branched axioms] in CoAxiom.lhs. - The CoAxiom type has changed significantly. You can see the new type in CoAxiom.lhs. It uses a CoAxBranch type to track branches of the CoAxiom. Correspondingly various functions producing and consuming CoAxioms had to change, including the binary layout of interface files. - To get branched axioms to work correctly, it is important to have a notion of type apartness: two types are apart if they cannot unify, and no substitution of variables can ever get them to unify, even after type family simplification. (This is different than the normal failure to unify because of the type family bit.) This notion in encoded in tcApartTys, in Unify.lhs. Because apartness is finer-grained than unification, the tcUnifyTys now calls tcApartTys. - CoreLinting axioms has been updated, both to reflect the new form of CoAxiom and to enforce the apartness rules of branch application. The formalization of the new rules is in docs/core-spec/core-spec.pdf. - The FamInst type (in types/FamInstEnv.lhs) has changed significantly, paralleling the changes to CoAxiom. Of course, this forced minor changes in many files. - There are several new Notes in FamInstEnv.lhs, including one discussing confluent overlap and why we're not doing it. - lookupFamInstEnv, lookupFamInstEnvConflicts, and lookup_fam_inst_env' (the function that actually does the work) have all been more-or-less completely rewritten. There is a Note [lookup_fam_inst_env' implementation] describing the implementation. One of the changes that affects other files is to change the type of matches from a pair of (FamInst, [Type]) to a new datatype (which now includes the index of the matching branch). This seemed a better design. - The
tn23 (x86 OSX HEAD), build 788, Failure
tn23 (x86 OSX HEAD), build 788 Build failed Details: http://darcs.haskell.org/ghcBuilder/builders/tn23/788.html git clone| Success create mk/build.mk | Success get subrepos | Success repo versions| Success touching clean-check files | Success setting version date | Success booting | Success configuring | Success creating check-remove-before | Success compiling| Failure: Just (ExitFailure 2) Build failed Details: http://darcs.haskell.org/ghcBuilder/builders/tn23/788.html echo 'pgmgcc=/usr/bin/gcc' inplace/bin/runghc cat utils/runghc/runghc.wrapper inplace/bin/runghc chmod +x inplace/bin/runghc inplace/bin/ghc-stage1 -static -H32m -O-hid [...] Main.hs -o utils/mkUserGuidePart/dist/build/Main.o inplace/bin/mkdirhier utils/mkUserGuidePart/dist/build/tmp//. inplace/bin/ghc-stage1 -o utils/mkUserGuidePart/ [...] f hc utils/mkUserGuidePart/dist/build/Main.o cp -p utils/mkUserGuidePart/dist/build/tmp/mkUserGuidePart inplace/bin/mkUserGuidePart inplace/bin/mkdirhier utils/count_lines/dist//. inplace/lib/unlit utils/count_lines/count_lines.lprl utils/count_lines/dist/count_lines.prl rm -f utils/count_lines/dist/count_lines echo '#!/opt/local/bin/perl' utils/count_lines/dist/count_lines echo '$TARGETPLATFORM = i386-apple-darwin;' utils/count_lines/dist/count_lines echo '$TABLES_NEXT_TO_CODE = YES;' utils/count_lines/dist/count_lines cat utils/count_lines/dist/count_lines.prl [...] utils/count_lines/dist/count_lines cp utils/count_lines/dist/count_lines inplace/bin/count_lines chmod +x inplace/bin/count_lines inplace/bin/ghc-stage1 -static -H32m -O-hide-all-packages -i -iutils/compare_sizes/. -iutils/ [...] -osuf o -hcsuf hc -c utils/compare_sizes/./Main.hs -o utils/compare_sizes/dist-install/build/Main.o inplace/bin/mkdirhier utils/compare_sizes/dist-install/build/tmp//. inplace/bin/ghc-stage1 -o utils/compare_sizes/dist-install/build/tmp/compareSizes -static -H32m - [...] /dist-install/build -hisuf hi -osuf o -hcsuf hc utils/compare_sizes/dist-install/build/Main.o inplace/bin/ghc-stage2 -static -H32m -O-package-name old-time-1.1.0.1 -hide-all-packages -i -ilibraries/old-time/. -ilibraries/old-time/dist-install/build -ilibraries/old-time/dist-install/build/auto [...] e/dist-install/build -stubdir libraries/old-time/dist-install/build -hisuf hi -osuf o -hcsuf hc -c libraries/old-time/dist-install/build/System/Time.hs -o libraries/old-time/dist-install/build/System/Time.o inplace/bin/mkdirhier libraries/old-time/dist-install/build/cbits//. inplace/bin/ghc-stage2 -optc-Ilibraries/old-time/include -optc-I'/Users/thorkilnaur/tn/builders/GHCBuilder/tn23/builder/tempbuild/build/libraries/base/include' -optc-I'/Users/thorkilnaur/tn/builders/GHCBuilder/tn23/builder/tempbuild/build/rts/dist/build' -optc-I'/Users/thorkilnaur/tn/builders/GHCBuilder/tn23/builder/tempbuild/build/includes' -optc-I'/Users/thorkilnaur/tn/builders/GHCBuilder/tn23/builder/tempbuild/build/includes/dist-derivedconstants/header' -static -H32m -O-package-name old-time-1.1.0.1 -hide-all-packages -i -ilibraries/old-time/. -ilibraries/old-time/dist-install/build -ilibraries/old-time/dist-install/build/autogen -Ilibraries/old-time/dist-install/build -Ilibraries/old-time/dist-install/build/autogen -Ilibraries/old-time/include -optP-include -optPlibraries/old-time/dist-install/build/autogen/cabal_macros.h -package base-4.7.0.0 -package old-locale-1.0.0.5 -XHaskell98 -XCPP -XForeignFunctionInterface -O2 -no-user-package-db -rtsopts -c libraries/old-time/cbits/timeUtils.c -o libraries/old-time/dist-install/build/cbits/timeUtils.o rm -f libraries/old-time/dist-install/build/libHSold-time-1.1.0.1.a libraries/old-time/dist-install/build/libHSold-time-1.1.0.1.a.contents echo libraries/old-time/dist-install/build/System/Time.o libraries/old-time/dist-install/build/cbits/timeUtils.o libraries/old-time/dist-install/build/libHSold-time-1.1.0.1.a.contents xargs /usr/bin/ar clqs libraries/old-time/dist-install/build/libHSold-time-1.1.0.1.a libraries/old-time/dist-install/build/libHSold-time-1.1.0.1.a.contents rm -f libraries/old-time/dist-install/build/libHSold-time-1.1.0.1.a.contents /usr/bin/ld -arch i386 -r -o libraries/old-time/dist-install/build/HSold-time-1.1.0.1.o libraries/old-time/dist-install/build/System/Time.o libraries/old-time/dist-install/build/cbits/timeUtils.o inplace/bin/ghc-stage2 -static -prof -H32m -O-package-name old-time-1.1.0.1 -hide-all-packages -i -ilibraries/old-time/. -ilibraries/old-time/dist-install/build -ilibraries/old-time/dist-install/build/autogen -Ilibraries/old-time/dist-install/build
pgj (x86 FreeBSD HEAD), build 894, Failure
pgj (x86 FreeBSD HEAD), build 894 Build failed Details: http://darcs.haskell.org/ghcBuilder/builders/pgj/894.html git clone| Success create mk/build.mk | Success get subrepos | Success repo versions| Success touching clean-check files | Success setting version date | Success booting | Success configuring | Success creating check-remove-before | Success compiling| Failure: Just (ExitFailure 2) Build failed Details: http://darcs.haskell.org/ghcBuilder/builders/pgj/894.html echo 'executablename=/usr/home/ghc-builder/work/b [...] inplace/bin/runghc echo 'datadir=/usr/home/ghc-builder/work/builder/ [...] inplace/bin/runghc echo 'bindir=/usr/home/ghc-builder/work/builder/t [...] inplace/bin/runghc echo 'topdir=/usr/home/ghc-builder/work/builder/t [...] ' inplace/bin/runghc echo 'pgmgcc=/usr/bin/gcc' inplace/bin/runghc cat utils/runghc/runghc.wrapper inplace/bin/runghc chmod +x inplace/bin/runghc inplace/bin/mkdirhier utils/count_lines/dist//. inplace/lib/unlit utils/count_lines/count_lines.lprl utils/count_lines/dist/count_lines.prl rm -f utils/count_lines/dist/count_lines echo '#!/usr/bin/perl' utils/count_lines/dist/count_lines echo '$TARGETPLATFORM = i386-unknown-freebsd;' utils/count_lines/dist/count_lines echo '$TABLES_NEXT_TO_CODE = YES;' utils/count_lines/dist/count_lines cat utils/count_lines/dist/count_lines.prl [...] utils/count_lines/dist/count_lines cp utils/count_lines/dist/count_lines inplace/bin/count_lines chmod +x inplace/bin/count_lines inplace/bin/ghc-stage1 -static -H32m -O-hide-all-packages -i -iutils/compare_sizes/. -iutils/ [...] -osuf o -hcsuf hc -c utils/compare_sizes/./Main.hs -o utils/compare_sizes/dist-install/build/Main.o inplace/bin/mkdirhier utils/compare_sizes/dist-install/build/tmp//. inplace/bin/ghc-stage1 -o utils/compare_sizes/dist-install/build/tmp/compareSizes -static -H32m - [...] /dist-install/build -hisuf hi -osuf o -hcsuf hc utils/compare_sizes/dist-install/build/Main.o inplace/bin/ghc-stage2 -static -H32m -O-package-name old-time-1.1.0.1 -hide-all-packages -i -ilibraries/old-time/. -ilibraries/old-time/dist-install/build -ilibraries/old-time/dist-install/build/au [...] dist-install/build -stubdir libraries/old-time/dist-install/build -hisuf hi -osuf o -hcsuf hc -c libraries/old-time/dist-install/build/System/Time.hs -o libraries/old-time/dist-install/build/System/Time.o inplace/bin/mkdirhier libraries/old-time/dist-install/build/cbits//. inplace/bin/ghc-stage2 -optc-Ilibraries/old-time/include -optc-I'/usr/local/include' -optc-I'/usr/home/ghc-builder/work/builder/tempbuild/build/libraries/base/include' -optc-I'/usr/home/ghc-builder/work/builder/tempbuild/build/rts/dist/build' -optc-I'/usr/home/ghc-builder/work/builder/tempbuild/build/includes' -optc-I'/usr/home/ghc-builder/work/builder/tempbuild/build/includes/dist-derivedconstants/header' -static -H32m -O-package-name old-time-1.1.0.1 -hide-all-packages -i -ilibraries/old-time/. -ilibraries/old-time/dist-install/build -ilibraries/old-time/dist-install/build/autogen -Ilibraries/old-time/dist-install/build -Ilibraries/old-time/dist-install/build/autogen -Ilibraries/old-time/include -optP-include -optPlibraries/old-time/dist-install/build/autogen/cabal_macros.h -package base-4.7.0.0 -package old-locale-1.0.0.5 -XHaskell98 -XCPP -XForeignFunctionInterface -O2 -no-user-package-db -rtsopts -c libraries/old-time/cbits/timeUtils.c -o libraries/old-time/dist-install/build/cbits/timeUtils.o rm -f libraries/old-time/dist-install/build/libHSold-time-1.1.0.1.a libraries/old-time/dist-install/build/libHSold-time-1.1.0.1.a.contents echo libraries/old-time/dist-install/build/System/Time.o libraries/old-time/dist-install/build/cbits/timeUtils.o libraries/old-time/dist-install/build/libHSold-time-1.1.0.1.a.contents xargs /usr/bin/ar clqs libraries/old-time/dist-install/build/libHSold-time-1.1.0.1.a libraries/old-time/dist-install/build/libHSold-time-1.1.0.1.a.contents rm -f libraries/old-time/dist-install/build/libHSold-time-1.1.0.1.a.contents /usr/bin/ld -r -o libraries/old-time/dist-install/build/HSold-time-1.1.0.1.o libraries/old-time/dist-install/build/System/Time.o libraries/old-time/dist-install/build/cbits/timeUtils.o inplace/bin/ghc-stage2 -static -prof -H32m -O-package-name old-time-1.1.0.1 -hide-all-packages -i -ilibraries/old-time/. -ilibraries/old-time/dist-install/build -ilibraries/old-time/dist-install/build/autogen -Ilibraries/old-time/dist-install/build
[nightly] 21-Dec-2012 build of STABLE on i386-unknown-linux (cam-02-unx)
Build description = STABLE on i386-unknown-linux (cam-02-unx) Build location= /playpen/simonmar/nightly/STABLE Build config file = /home/simonmar/nightly/site/msrc/conf-STABLE-cam-02-unx Nightly build started on cam-02-unx at Fri Dec 21 18:10:02 GMT 2012. checking out new source tree ... warning: Remote branch ghc-7.6 not found in upstream origin, using HEAD instead ok. Building stage 1 compiler... ok. GHC Version 7.6.1.20121207 Building stage 2 compiler... ok. Building stage 3 compiler... ok. building testsuite tools ... ok. running tests... ok (summary below). building compiler binary distribution... ok. uploading binary distribution... ok. running nofib (-rtsopts -O2) ... ok. (1 failures) running nofib (-rtsopts -O2 -fllvm) ... ok. (1 failures) running nofib (-rtsopts -O2 -prof -auto-all) ... ok. (3 failures) running nofib (-rtsopts -O2 -prof -auto-all -fllvm)... ok. (1 failures) publishing logs ... ok. Logs are at http://www.haskell.org/ghc/dist/stable/logs Dists are at http://www.haskell.org/ghc/dist/stable/dist Docs are at http://www.haskell.org/ghc/dist/stable/docs - Respository hashes: .|1183080b1b45dbcaa6af1154e2e668f924598772 ghc-tarballs|18e0c37f8023abf469af991e2fc2d3b024319c27 libraries/Cabal|e7e7ce1029707a67d26e6dc29de11141734898e3 libraries/Win32|e13098aecd0489399435dbf8643e1db2272e1e02 libraries/array|8dcd15240a9c2ba142fcbd31f597b51cf2f560bf libraries/base|56c8295c638a03676a9be8d34195e6be945ddc2c libraries/binary|2d31cea238d0d08885c457475fc354dbf2b88976 libraries/bytestring|65e40bdf5b3a2484b36221a71b054e4400361a5f libraries/containers|a9b7224068ae60f73baacd5f76d2c27624d90120 libraries/deepseq|4821349305c2a73efacdd58d2ba485b07eb84eda libraries/directory|ef17afe1bd44ae10ef413146e5ade8867cb05625 libraries/filepath|2d60d0dd5d8fc924420bb238902266929f4e2cfb libraries/ghc-prim|03144fbee792555bfd6de6184228ebaeffed2896 libraries/haskeline|f4040ab5831866c260e03fc8601edf7e1ed77049 libraries/haskell2010|d7e33da36585c250cd0bfb45b518c95e44197f3c libraries/haskell98|c5a0db5eb4ce6a3736bf4f5caac3ff465b3dbaf9 libraries/hoopl|293d339303097641e7f14a1c0365a3801a87918d libraries/hpc|c1b783dbbb0ab917208655c53a0af5c7538c2a0b libraries/integer-gmp|2d9eca147f5c8b6f390eca15e03b315f67f2df01 libraries/integer-simple|47737f6f16d891b743a3d02b0a016100fd3a36d1 libraries/old-locale|47542432234f6fc406a9abf5d3f94e43d9bd10f6 libraries/old-time|cf225c367e5490201a5b04b1b8cb322f6e230d46 libraries/pretty|0a22cc0b3a4f8db876c4019013a30bfd1c0dd9a2 libraries/process|0ab69a65edae8c1a34ecee3a97b3839c833985f2 libraries/template-haskell|db0b4de55926b0bc98717c92ba543bcf9b89d024 libraries/terminfo|579d2c324e69856ff8d1ea8b5036e30c920e1973 libraries/transformers|a59fb93860f84ccd44178dcbbb82cfea7e02cd07 libraries/unix|b08de9ba4b5b6d4dc8ee43302ef99072059b2c01 libraries/utf8-string|73ca1b9def3f350ad28e55fcba077e6be3b67e93 libraries/xhtml|fb9e0bbb69e15873682a9f25d39652099a3ccac1 nofib|890caa4077655494f83fa3b6670f6d99d8c58744 testsuite|c96a151e2e48092efe58bfb2ba11aad428480b27 utils/haddock|3d25ea2929a9a9bd0768339b8ac5fd1b7c4670ad utils/hsc2hs|67b8c663216690150b6f762e09b32ebbe6334ddd - All done! Nightly build finished successfully at Sat Dec 22 05:50:47 GMT 2012 - GHC Test summary - OVERALL SUMMARY for test run started at Fri Dec 21 23:16:58 GMT 2012 3402 total tests, which gave rise to 16613 test cases, of which 10 caused framework failures 3573 were skipped 12534 expected passes 367 had missing libraries 126 expected failures 0 unexpected passes 13 unexpected failures Unexpected failures: perf/haddock haddock.Cabal [stat too good] (normal) perf/haddock haddock.base [stat too good] (normal) safeHaskell/check/pkg01 ImpSafeOnly01 [exit code non-0] (normal) safeHaskell/check/pkg01 ImpSafeOnly02 [exit code non-0] (normal) safeHaskell/check/pkg01 ImpSafeOnly03 [stderr mismatch] (normal) safeHaskell/check/pkg01 ImpSafeOnly04 [exit code non-0] (normal) safeHaskell/check/pkg01 ImpSafeOnly05 [stderr mismatch] (normal) safeHaskell/check/pkg01 ImpSafeOnly06 [exit code non-0] (normal) safeHaskell/check/pkg01 ImpSafeOnly07 [stderr mismatch] (normal) safeHaskell/check/pkg01 ImpSafeOnly08 [stderr mismatch] (normal) safeHaskell/check/pkg01 ImpSafeOnly09 [stderr mismatch] (normal) safeHaskell/check/pkg01 ImpSafeOnly10 [exit code non-0] (normal) safeHaskell/check/pkg01 safePkg01 [bad exit code] (normal) Nightly run ended at Sat Dec 22