summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Drop external build-dep on `containers`wip/drop-containers-dep-from-thHerbert Valerio Riedel2014-04-244-10/+119
| | | | | | | | | | | | | | This is an attempt to address https://github.com/haskell/cabal/issues/1811 by ripping the less than 100 lines of code actually used from the containers package into an internal non-exposed `template-haskell` module. Moreover, `template-haskell` does not expose the `Map` type, so this change should have no visible effect on the public API. Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
* Be more aggressive in `make clean`Herbert Valerio Riedel2014-04-221-0/+8
| | | | | | | | | | This quiets down the utils/testremove/checkremove step Basically the idea is to have 'make clean' remove everything that was generated by `make`, while `make distclean` ought to remove everything created by `./configure`. Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
* Handle base et al. specially in foreachLibrary.mkHerbert Valerio Riedel2014-04-221-2/+15
| | | | | | | | | | | | This adapts the foreachLibrary rule to match the new situation of base.git, ghc-prim.git, integer-gmp.git, integer-simple.git, and template-haskell.git being folded into ghc.git (re #9016), and thus not being mentioned anymore in the `packages` file. One visible effect of this oversight was that the `clean_libraries` make target would fail to clean those packages. Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
* Update integer-gmp's .gitignore fileHerbert Valerio Riedel2014-04-221-12/+13
| | | | | | Note: the .gitignore pattern rules are not that obvious Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
* Adapt .gitignore (re #8545)Herbert Valerio Riedel2014-04-221-5/+0
| | | | | | | | This adapts the top-level .gitignore file to match the new situation of base.git, ghc-prim.git, integer-gmp.git, integer-simple.git, and template-haskell.git being folded into ghc.git Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
* Fix `make help`Kyle J. Van Berendonck2014-04-211-2/+2
| | | | Signed-off-by: Austin Seipp <austin@well-typed.com>
* Separate thousands when printing allocated bytesErlend Hamberg2014-04-211-1/+6
| | | | | | | | When printing allocated bytes (`:set +s` in ghci), separate thousands to make it easier to read large allocations sizes, e.g. “1,200,000 bytes”. Signed-off-by: Austin Seipp <austin@well-typed.com>
* Add the powerpc64le architectureColin Watson2014-04-211-1/+4
| | | | | | | | | | This is ArchUnknown for now, as it requires some porting work over and above powerpc64 due to such things as the different function calling sequence in the ELFv2 ABI. For now, an unregisterised port is better than nothing. Signed-off-by: Colin Watson <cjwatson@debian.org> Signed-off-by: Austin Seipp <austin@well-typed.com>
* Be less untruthful about the prototypes of external functionsColin Watson2014-04-211-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | GHC's generated C code uses dummy prototypes for foreign imports. At the moment these all claim to be (void), i.e. functions of zero arguments. On most platforms this doesn't matter very much: calls to these functions put the parameters in the usual places anyway, and (with the exception of varargs) things just work. However, the ELFv2 ABI on ppc64 optimises stack allocation (http://gcc.gnu.org/ml/gcc-patches/2013-11/msg01149.html): a call to a function that has a prototype, is not varargs, and receives all parameters in registers rather than on the stack does not require the caller to allocate an argument save area. The incorrect prototypes cause GCC to believe that all functions declared this way can be called without an argument save area, but if the callee has sufficiently many arguments then it will expect that area to be present, and will thus corrupt the caller's stack. This happens in particular with calls to runInteractiveProcess in libraries/process/cbits/runProcess.c. The simplest fix appears to be to declare these external functions with an unspecified argument list rather than a void argument list. This is no worse for platforms that don't care either way, and allows a successful bootstrap of GHC 7.8 on little-endian Linux ppc64 (which uses the ELFv2 ABI). Fixes #8965 Signed-off-by: Colin Watson <cjwatson@debian.org> Signed-off-by: Austin Seipp <austin@well-typed.com>
* ghc: initial AArch64 patchesColin Watson2014-04-2110-1/+142
| | | | Signed-off-by: Austin Seipp <austin@well-typed.com>
* ghc & docs: kill unused flagsAustin Seipp2014-04-213-33/+0
| | | | | | | | | | | | This removes the following, now defunct flags, which will not be recognized by GHC 7.10: -fwarn-lazy-unlifted-bindings -pgmm and -optm (used for the Mangler, long dead) -keep-raw-s-file & -keep-raw-s-files -monly[432]-reg-only Signed-off-by: Austin Seipp <austin@well-typed.com>
* Generalise type of recently added System.Exit.dieHerbert Valerio Riedel2014-04-211-1/+1
| | | | | | | | | | This is a follow-up to 77ea2eb0ab36d1a (re #9016) which added `die` with a return type of `IO ()` even though all other functions in System.Exit have the more general return type `IO a`. It is assumed this was an oversight in the original proposal. Acked-by: Edward Kmett <ekmett@gmail.com> Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
* Kill whitespace after cpp's `-I` flagHerbert Valerio Riedel2014-04-211-1/+1
| | | | | | This clean-up is in a similiar spirit as 574ef4293b8676. Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
* Add System.Exit.die (re #9016)Simon Hengel2014-04-213-0/+9
| | | | | | | | | The original proposal discussion can be found at http://thread.gmane.org/gmane.comp.lang.haskell.libraries/20872 Note this also updates the Haddock submodule to remove Hadock's local `die` implementation.
* Use import list to hide new System.Exit.dieHerbert Valerio Riedel2014-04-212-1/+1
| | | | | | | | | Soon, System.Exit will export the new `die` (see #9016) which would clash with Cabal's own `die` implementation. This commit provides forward-compatiblity. This also updates the Cabal submodule which requires a similiar fix. Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
* ghc: Do not add a space in '-U __PIC__'Austin Seipp2014-04-211-4/+4
| | | | | | | | | | | | | | | | GHC previously introduced a space here. However, this can in some cases be interpreted as "-U __PIC__" - note that in shell, the -U would still be recognized with an argument, but the argument would be " __PIC__", with a space in front, as opposed to the single string '__PIC__'. In practice most tools seem to handle this OK. But the Coverity Scan analysis tool does not: it errors on the fact that ' __PIC__' is an invalid CPP name to undefine. With this, it seems the Coverity analysis tool can easily analyze the entire GHC build. Signed-off-by: Austin Seipp <austin@well-typed.com>
* testsuite/spec001: untabify, kill trailing whitespaceAustin Seipp2014-04-201-99/+99
| | | | Signed-off-by: Austin Seipp <austin@well-typed.com>
* Deprecate the AMP warnings.Austin Seipp2014-04-2014-232/+14
| | | | | | | | Now that we're in development mode, Applicative will soon be a superclass of Monad in HEAD. So let's go ahead and deprecate the -fno-warn-amp flag, remove the checks, and tweak a few tests Signed-off-by: Austin Seipp <austin@well-typed.com>
* Update submodule to final Cabal-1.20.0.0 releaseHerbert Valerio Riedel2014-04-201-0/+0
| | | | Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
* Remove -fno-warn-amp sledgehammers for validateAustin Seipp2014-04-201-2/+0
| | | | | | | | GHC should now fully compliant with respect to the Applicative Monad proposal (including all upstream libraries), and does not need to suppress this warning anymore. Signed-off-by: Austin Seipp <austin@well-typed.com>
* Update Cabal source-repository entries (re #8545)Herbert Valerio Riedel2014-04-195-20/+10
| | | | | | | | This adapts the source-repository entries to match the new situation of base.git, ghc-prim.git, integer-gmp.git, integer-simple.git, and template-haskell.git being folded into ghc.git Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
* Do not use basename()Joachim Breitner2014-04-191-1/+1
|
* More github url variantsJoachim Breitner2014-04-191-1/+1
|
* Remove some redundancy in sync-allJoachim Breitner2014-04-191-150/+33
|
* sync-all: Apply submodule url rewriting also to stuff in util/Joachim Breitner2014-04-191-4/+4
|
* Normalize GHC Trac URLsHerbert Valerio Riedel2014-04-1915-18/+18
| | | | | | | | | | | | | | Update several old http://hackage.haskell.org/trac/ghc URLs references to the current http://ghc.haskell.org/trac/ghc URLs. Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
* Kill trailing whitespace in recently touched filesHerbert Valerio Riedel2014-04-192-6/+5
| | | | Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
* Weaken constraints on Data.Complex functionsHerbert Valerio Riedel2014-04-192-5/+7
| | | | | | | | | | | | | | | | | | | | | | | | The RealFloat data type context was dropped from Data.Complex some time ago (see ea280135dd888ac41d8804a9e37e358180cf13ac). However, the rest of the API in that module was left as-is even though many of the accessors in that module would work with much more general types now. This change simplifies the signatures of the functions above, which in the current API all unnecessarily take a RealFloat constraint that they don't use (and which may cause to pass around superflous type-class dictionaries): realPart :: Complex a -> a imagPart :: Complex a -> a conjugate :: Num a => Complex a -> Complex a mkPolar :: Floating a => a -> a -> Complex a cis :: Floating a => a -> Complex a This was originally proposed by Edward Kmett in http://www.haskell.org/pipermail/libraries/2014-March/022358.html Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
* Fix sync-all error message introduced in 41f5b7e3eHerbert Valerio Riedel2014-04-191-6/+6
| | | | | | Curiously, 'aforesaid' has the same length as the word 'testsuite'... Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
* Add Data.List.sortOn function (re #9004 and #2659)Alexander Berntsen2014-04-192-0/+16
| | | | | | | | | | | | | | | | | | `sortOn` sorts a list by comparing the results of a key function applied to each element. `sortOn f` is equivalent to `sortBy . comparing f`, but has the performance advantage of only evaluating `f` once for each element in the input list. Historical note: This was already proposed in 2008 as part of http://www.haskell.org/pipermail/libraries/2008-October/010797.html It was, however, the recent re-attempt http://www.haskell.org/pipermail/libraries/2014-April/022489.html that let `sortOn` make it into base at last. Maybe the other functions mentioned in #2659 might be worth reconsidering as well.
* Add reverse application operator Data.Function.(&)Alexander Berntsen2014-04-193-2/+19
| | | | | | | | | Add `&` as the reverse application operator with `infixl 1`, which allows it to be nested in `$` (re #9008). Approved by the core libraries committee on 2013-10-14. This also bumps the `base` version number to 4.7.1.0
* Validate inferred theta. Fixes #8883Jan Stolarek2014-04-1919-9/+47
| | | | | | | This checks that all the required extensions are enabled for the inferred type signature. Updates binary and vector submodules.
* Update `sync-all` and `packages` wrt to fold-inHerbert Valerio Riedel2014-04-192-5/+81
| | | | | | | | | | | | | | | | This adapts `sync-all` and `packages` to the recently folded-in Git repositories - `base.git` - `ghc-prim.git` - `integer-gmp.git` - `integer-simple.git` - `template-haskell.git` See #8545 as well as 5f54d67818ee7a74325eed130438beba96510e43 for more details. Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
* Fold template-haskell.git into ghc.git (re #8545)Herbert Valerio Riedel2014-04-1915-0/+3266
|\ | | | | | | | | | | | | At the time of merge, template-haskell.git was at [9bcc122819a6f4a2ae7ad569717324b8368e801c/template-haskell] Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
| * Bump to 2.10.0.0Herbert Valerio Riedel2014-03-231-3/+3
| | | | | | | | | | | | Due to backward-incompat changes in 57b662c (re #7021) Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
| * Add documentation to why Pred has become a type synonym.Richard Eisenberg2014-02-091-0/+3
| |
| * Change type of equalityT to be more parallel with others.Richard Eisenberg2014-02-091-7/+2
| |
| * Make Pred a type synonym of Type (issue #7021)YoEight2014-02-094-49/+37
| | | | | | | | | | | | In order to make any type as a Predicate in Template Haskell, as allowed by ConstraintKinds Signed-off-by: Richard Eisenberg <eir@cis.upenn.edu>
| * Deprecate TH.global (Trac #8656)Simon Peyton Jones2014-01-091-0/+2
| |
| * Improve mkName, so that it correctly parses the name ^..Simon Peyton Jones2013-12-301-4/+20
| | | | | | | | This fixes Trac #8633; thanks to aavogt for a first draft.
| * Kill trailing whitespacesJan Stolarek2013-12-281-18/+18
| |
| * Use type synonymJan Stolarek2013-12-281-1/+1
| |
| * Use addDependentFile in quoteFile.Austin Seipp2013-11-031-1/+2
| | | | | | | | | | | | | | We'd expect recompilation if these files change. Authored-by: Adam Vogt <vogt.adam@gmail.com> Signed-off-by: Austin Seipp <austin@well-typed.com>
| * Allow module reification (#1480)Austin Seipp2013-11-014-4/+38
| | | | | | | | | | Authored-by: Gergely Risko <gergely@risko.hu> Signed-off-by: Austin Seipp <austin@well-typed.com>
| * Refactor & modernize `.cabal` to `cabal-version>=1.10`Herbert Valerio Riedel2013-10-241-23/+47
| | | | | | | | | | | | | | | | | | | | | | | | Updates the `description` include a link to the Haskell wiki and list potantially used extensions in `other-extensions`. This also sets proper `build-depends` which effectively tie `template-haskell` to GHC 7.7/7.8 and thus should help keep `cabal-install` from attempting to compile the `template-haskell` package with older/newer GHCs. Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
| * Declare all language extensions via `{-# LANGUAGE #-}`Herbert Valerio Riedel2013-10-242-2/+2
| | | | | | | | | | | | Only a few were missing in the `{-# LANGUAGE #-}` annotations. Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
| * Make TExp's argument have nominal role (Trac #8459)Simon Peyton Jones2013-10-221-1/+15
| |
| * Add reifyAnnotations (#8397)Austin Seipp2013-10-112-3/+20
| | | | | | | | Signed-off-by: Austin Seipp <austin@well-typed.com>
| * Merge New Template Haskell branch.Geoffrey Mainland2013-10-044-3/+67
| |\
| | * Add Template Haskell state.Geoffrey Mainland2013-10-041-0/+16
| | | | | | | | | | | | | | | | | | The Quasi monad can now carry state, and this state can be shared amongst quasiquoters/splices/etc. State is stored in a finite map of Dynamic values and is indexed by TypeReps.