summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Set VERSION=7.8.2, RELEASE=YESghc-7.8.2-releaseAustin Seipp2014-04-101-2/+2
| | | | Signed-off-by: Austin Seipp <austin@well-typed.com>
* Update ANNOUNCE for GHC 7.8.2Austin Seipp2014-04-101-23/+7
| | | | Signed-off-by: Austin Seipp <austin@well-typed.com>
* users_guide: Update relnotes for 7.8.2Austin Seipp2014-04-103-0/+25
| | | | Signed-off-by: Austin Seipp <austin@well-typed.com>
* Fix egregious blunder in the type flattenerSimon Peyton Jones2014-04-106-37/+78
| | | | | | | | | | | | | In tidying up the flattener I introduced an error that no regression test caught, giving rise to Trac #8978, #8979. It shows up if you have a type synonym whose RHS mentions type functions, such sas type family F a type T a = (F a, a) -- This synonym isn't properly flattened The fix is easy, but sadly the bug is in the released GHC 7.8.1 (cherry picked from commit b8132a9d2fdb93c5d30107b1d531dd73ac27b262)
* Set RELEASE=NOAustin Seipp2014-04-101-1/+1
| | | | Signed-off-by: Austin Seipp <austin@well-typed.com>
* Set VERSION=7.8.1, RELEASE=YESghc-7.8.1-releaseAustin Seipp2014-04-071-2/+2
| | | | Signed-off-by: Austin Seipp <austin@well-typed.com>
* Update ANNOUNCE for GHC 7.8.1Austin Seipp2014-04-071-21/+18
| | | | Signed-off-by: Austin Seipp <austin@well-typed.com>
* users_guide: note -XPatternSynonyms is required for use sitesAustin Seipp2014-04-071-3/+5
| | | | | Signed-off-by: Austin Seipp <austin@well-typed.com> (cherry picked from commit b059dcc81e9c4097b5f04f85e1ac33586c494110)
* T8958: fix stderrAustin Seipp2014-04-071-4/+4
| | | | Signed-off-by: Austin Seipp <austin@well-typed.com>
* Require PatternSynonyms language flag when encountering a use of pattern synonymDr. ERDI Gergo2014-04-077-5/+27
| | | | | | (#8961) (cherry picked from commit 8f831ec578d22419788542290e164c50524d90f6)
* Revert "Revert ad15c2, which causes Windows seg-faults (Trac #8834)"Austin Seipp2014-04-071-21/+64
| | | | | | This reverts commit a79613a75c7da0d3d225850382f0f578a07113b5. (cherry picked from commit c6c86789c95462216a3167d7b98b202a5bf4c0b2)
* Fix desguaring of bang patterns (Trac #8952)Simon Peyton Jones2014-04-074-5/+15
| | | | | | A palpable bug, although one that will rarely bite (cherry picked from commit 3671d0027329804a31a628a5bee355e0640a2045)
* Fix copy/paste error (#8937)Simon Marlow2014-04-071-1/+1
| | | | (cherry picked from commit 59b9b067b030d551f9b42423b50770c661c9d86c)
* Test Trac #8931Simon Peyton Jones2014-04-073-0/+5
| | | | (cherry picked from commit 8bf8ce1e7cb1b97a1f18ec6f5552e339808ffba9)
* Make sure that polykinded Typeable is defaultable (Trac #8931)Simon Peyton Jones2014-04-071-4/+10
| | | | (cherry picked from commit 791f4fa24dd6929ab2e55c9f8b870d8078337427)
* windows: Fix #8870Austin Seipp2014-04-071-2/+43
| | | | | | | | | | | This bumps the amount of default reserved and committed stack for GHC executables to 8mb, to work around #8870. A proper fix should happen in 7.8.2 See note [Windows stack usage] in SysTools for the details. Signed-off-by: Austin Seipp <austin@well-typed.com> (cherry picked from commit f0af58df4b5d5ace750e7d7a91ad471284c1b429)
* Fix #8958.Richard Eisenberg2014-04-077-5/+74
| | | | | | | We now do role inference on stupid datatype contexts, allowing a lightweight role annotation syntax. (cherry picked from commit d468cd376ffc02cf9f4755275a316be914c482be)
* Bump haddock.base test-case resource limits due to haddock-2.14.2Herbert Valerio Riedel2014-04-011-1/+2
| | | | Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
* Temporarily fight off build bogons on OS XAustin Seipp2014-03-311-1/+1
| | | | | | | | Right now there's a bug with Clang that prevents 'cabal haddock' from working nicely. But there's an easy fix for now. Signed-off-by: Austin Seipp <austin@well-typed.com> (cherry picked from commit 52c6dc970272437aa83a936fc1fe63977fa6178d)
* rts: remove unused functions, fix validate on OS XAustin Seipp2014-03-281-7/+1
| | | | | | | | After a toolchain update, Clang is no longer appreciative of the fact these are unused, thanks to -Werror during validate. Signed-off-by: Austin Seipp <austin@well-typed.com> (cherry picked from commit 7ef3f0d6dbd54d9e58fb6ab1f2db322bc8fac37a)
* Use the correct callClobberedRegs on Windows/x64 (#8834)Simon Marlow2014-03-271-0/+3
| | | | | Signed-off-by: Austin Seipp <austin@well-typed.com> (cherry picked from commit c4eeacdfdf4578eb6e75bbf2e067bfe70ec94ab0)
* Implement ordering comparisons for type-level naturals and symbols.Iavor S. Diatchki2014-03-273-1/+160
| | | | | | | This is done with two built-in type families: `CmpNat and `CmpSymbol`. Both of these return a promoted `Ordering` type (EQ, LT, or GT). (cherry picked from commit 5e4bdb5fc5e741522cbb787731422da3f12aa398)
* Flattener preserves synonyms, rewriteEvidence can drop buggy "optimisation"Simon Peyton Jones2014-03-245-34/+51
| | | | | | | | | | | | | | | | | | There was a special case in rewriteEvidence, looking like: = return (Just (if ctEvPred old_ev `tcEqType` new_pred then old_ev else old_ev { ctev_pred = new_pred })) But this was wrong: old_pred and new_pred might differ in the kind of a TyVar occurrence, in which case tcEqType would not notice, but we really, really want new_pred. This caused Trac #8913. I solved this by dropping the whole test, and instead making the flattener preserve type synonyms. This was easy because TcEvidence has TcTyConAppCo which (unlike) Coercion, handles synonyms. (cherry picked from commit 6ae678e31a5fdd3b0bd1f8613fe164012bb630f4)
* For equalities with incompatible kinds, new IrredCan goes in the inert set, ↵Simon Peyton Jones2014-03-241-25/+16
| | | | | | | | | | | | not work list This change makes the code for canIrred markedly simpler (and more efficient) See Note [Equalities with incompatible kinds]. I don't think there was really a bug here, but I came across it when fixing Trac #8913 (cherry picked from commit c89c57e3b72a8f3de9f35e1bd6e0f70d2b18a941)
* Implicit parameters should not be allowed in class and instance declarationsSimon Peyton Jones2014-03-248-45/+71
| | | | | | | | | | | Trac #8912 pointed out that GHC 7.4 and 7.6 have omitted this test, although 7.2 and earlier had it. This patch puts the test back in, and refactors a little. (cherry picked from commit a8b7b28cdb98d14c6fb43d5ad3293fd4a5c1f8b4) Conflicts: testsuite/tests/typecheck/should_fail/all.T
* relnotes: GND is not -XSafe compatible.Austin Seipp2014-03-241-5/+0
| | | | | Signed-off-by: Austin Seipp <austin@well-typed.com> (cherry picked from commit 73cab206e0f211b75cb6fd62ab9b6ca8ae0950f2)
* Add missing kind-check for tcEqType on forall-typesSimon Peyton Jones2014-03-241-3/+4
| | | | | | This wasn't showing up as a bug, but it was definitely wrong. (cherry picked from commit 74894e0bc405247092e865b9541f5f18d26aa015)
* Revert "change deriveConstants to use nm in a POSIX way (fixes #8781)"Austin Seipp2014-03-241-10/+20
| | | | | | | | It causes a failure on Windows right now. This reverts commit 045b28033a33a48d31951240a8cb35f2b78345dc. (cherry picked from commit 15b1eb7c67e29c4ad6f6859f89d220b33493fd46)
* Enable popcnt test now when segfault is fixedJohan Tibell2014-03-241-1/+1
| | | | | | The fix was to ghc-prim. (cherry picked from commit 16d04d902d4720b3137e07a503fbf72c90b9e164)
* Follow hs_popcntX changes in ghc-primJohan Tibell2014-03-241-5/+5
| | | | (cherry picked from commit 1a63f17f19a6c83980efe453966eac1cf441b277)
* Revert "Fix #8745 - GND is now -XSafe compatible."Austin Seipp2014-03-2411-8/+101
| | | | | | | | | | | See #8827 - for now, we're making GND unsafe again. This also fixes the tests since they were originally not using the new unicode quote style we're using. This reverts commit a8a01e742434df11b830ab99af12d9045dfcbc4b. (cherry picked from commit 8f7303774237a8b0787d98c5ab6f605e3e897f19)
* Test Trac #8893Simon Peyton Jones2014-03-232-0/+12
| | | | (cherry picked from commit 7973bfb87fdbe6e980e64ed5d7b2a90a469effd4)
* Apply the kind subst to the (kinds of the) quanitifed tyvars in deriveTyDataSimon Peyton Jones2014-03-231-13/+43
| | | | | | | | | I've elaboated Note [Unify kinds in deriving] to explain what is going on here. The change fixes Trac #8893. (cherry picked from commit ffed708c30f2d1d4b4c5cd08d9c19aeb0bb623ec)
* Make sure we occurrence-analyse unfoldings (fixes Trac #8892)Simon Peyton Jones2014-03-232-42/+63
| | | | | | | | | | | For DFunUnfoldings we were failing to occurrence-analyse the unfolding, and that meant that a loop breaker wasn't marked as such, which in turn meant it was inlined away when it still had occurrence sites. See Note [Occurrrence analysis of unfoldings] in CoreUnfold. This is a pretty long-standing bug, happily nailed by John Lato. (cherry picked from commit 87bbc69c40d36046492d754c8d7ff02c3be6ce43)
* Test Trac #8889Simon Peyton Jones2014-03-233-0/+19
| | | | (cherry picked from commit 0e2155ddb10f4ccf53e50064756cbc3ce7dd8832)
* Unflatten the constraints of an inferred types (Trac #8889)Simon Peyton Jones2014-03-232-17/+29
| | | | | | | | There was even a comment to warn about this possiblity, and it finally showed up in practice! This patch fixes it quite nicely, with commens to explain. (cherry picked from commit 7a7af1ffc48f605cf365faf8fcef31ef4f13822b)
* Test Trac #8856Simon Peyton Jones2014-03-232-0/+7
| | | | (cherry picked from commit 062391be4f06aa408187582c4a40f1cea80429c3)
* Fix the treatment of lexically scoped kind variables (Trac #8856)Simon Peyton Jones2014-03-2310-113/+110
| | | | | | | | | | | | The issue here is described in Note [Binding scoped type variables] in TcPat. When implementing this fix I was able to make things quite a bit simpler: * The type variables in a type signature now never unify with each other, and so can be straightfoward skolems. * We only need the SigTv stuff for signatures in patterns, and for kind variables. (cherry picked from commit cf1a0f971966af633fbd932ad012ce716680465b)
* Trac #8831 is fixedSimon Peyton Jones2014-03-231-1/+1
| | | | | | | (cherry picked from commit 1a7709ef9b25175566bc040a34b3d479ea8566ed) Conflicts: testsuite/tests/ghci/scripts/all.T
* Simplify handling of the interactive package; fixes Trac #8831Simon Peyton Jones2014-03-232-13/+9
| | | | | | | | | | | | | | | | | | | | | | | This patch is really a fix to the big commint 73c08ab10e4077e18e459a1325996bff110360c3 Re-work the naming story for the GHCi prompt (Trac #8649) which introduced the 'interactive' package See Note [The interactive package] in HscTypes The original commit set both (a) The tcg_mod field of TcGblEnv to 'interactive:Ghci4' (say) (b) The thisPackage field of DynFlags to 'interactive' But the second step interacts badly with linking. :loaded modules are in the package set by 'thisPackage' (usually 'main'); if you change that, then we try to link package 'main', but can't find it, and that is what happened in #8831. The fix was simple: do (a) but not (b). I changed Note [The interactive package] in HscTypes to describe this. (cherry picked from commit 28e8d878b63d06824001ac3a631254679e0f1960)
* Also allow http://github.com (#8824)Joachim Breitner2014-03-231-1/+1
| | | | (cherry picked from commit d246c62afd7312185aee9433b065ea99e4fa4054)
* Make sync-all handle all github protocols correctlyJoachim Breitner2014-03-231-3/+5
| | | | | | This fixes #8824. (cherry picked from commit 3efcb0a7d147e05f86501783144bcd0ad3757e93)
* Correctly clone submodules from githubJoachim Breitner2014-03-231-14/+34
| | | | (cherry picked from commit b755c7bd6af9f2bee47427b1eaa6c29c72b2b17a)
* Switch to relative URLs in .gitmodulesHerbert Valerio Riedel2014-03-231-14/+14
| | | | | | | | | | | | | | | | | Previously, the `http://`-protocol part was hardcoded in the URLs, causing the initial clone process to fall back to `http://` even when the ghc.git repo was cloned via one of the other 3 supported transport protocols. This is slightly related to #8545, as it will make it possible to e.g. git clone --recursive git://git.haskell.org/ghc and clone ghc.git including all submodules in one go (i.e. w/o `sync-all`), and w/o falling back to a different (hardwired) Git transport protocol for the submodules. Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org> (cherry picked from commit ad44e47542a822ac3e02cf514b5d2be52880fc95)
* add --with-ar and --with-ranlib configure parametersKarel Gardas2014-03-222-0/+16
| | | | | | | | | Both --with-ar and --with-ranlib are usable on non-GNU/Linux systems where GNU tools are usually installed (or possible to install), but not into standard location nor with standard name. Tested on Solaris 10. Signed-off-by: Austin Seipp <austin@well-typed.com> (cherry picked from commit ac24bf45258af701cdd67423d6107357f27bbedf)
* change deriveConstants to use nm in a POSIX way (fixes #8781)Karel Gardas2014-03-221-20/+10
| | | | | | | | The patch provided by Christian Maeder <Christian.Maeder@dfki.de> Signed-off-by: Karel Gardas <karel.gardas@centrum.cz> Signed-off-by: Austin Seipp <austin@well-typed.com> (cherry picked from commit 045b28033a33a48d31951240a8cb35f2b78345dc)
* Fix #8917.Richard Eisenberg2014-03-221-3/+3
| | | | | | | | | FamInstEnv.normaliseTcApp should normalise arguments even when the top-level tycon isn't a type family. This was a regression from 7.6 -- not sure when it happened, but it was probably my fault. Fixed now, in any case. (cherry picked from commit c99941cfeee033fca2df45e9523b65c83be20d31)
* Add test case for #8917Richard Eisenberg2014-03-224-0/+17
| | | | (cherry picked from commit 47796026ca35a2438f7a7dc337add2ec3b14f06c)
* Mark test for #8831 as known-brokenJoachim Breitner2014-03-221-1/+1
| | | | | | | | | to keep validate working. (cherry picked from commit 4bc3c8265f988f4456664f502164f52466aab67d) Conflicts: testsuite/tests/ghci/scripts/all.T
* testsuite: add test for #8831Austin Seipp2014-03-224-1/+9
| | | | | | | | Signed-off-by: Austin Seipp <austin@well-typed.com> (cherry picked from commit f9b6a2bb6574904ab11476d79896491b111ad7cc) Conflicts: testsuite/tests/ghci/scripts/all.T