1. 19 Nov, 2014 8 commits
    • thomie's avatar
      Refactor: use System.FilePath.splitSearchPath · 6fc78fdf
      thomie authored
      To address #2521 ("Trailing colon on GHC_PACKAGE_PATH doesn't work with
      ghc-pkg"), we were using a custom version of splitSearchPath (e4f46f5d). This
      solution however caused issue #9698 ("GHC_PACKAGE_PATH should be more lenient
      for empty paths").
      This patch reverts back to System.FilePath.splitSearchPath (fixes #9698) and
      adresses (#2521) by testing for a trailing search path separators explicitly
      (instead of implicitly using empty search path elements).
      Empty paths are now allowed (ignored on Windows, interpreted as current
      directory on Posix systems), and trailing path separator still tack on the
      user and system package databases.
      Also update submodule filepath, which has a version of splitSearchPath which
      handles quotes in the same way as our custom version did.
      Test Plan:
      $ GHC_PACKAGE_PATH=/::/home: ./ghc-pkg list
      db stack: ["/",".","/home","<userdb>","<systemdb>"]
      Reviewers: austin
      Reviewed By: austin
      Subscribers: thomie, carter, simonmar
      Differential Revision: https://phabricator.haskell.org/D414
      GHC Trac Issues: #2521, #9698
    • gintas's avatar
      The test runner now also works under the msys-native Python. · 101c62e2
      gintas authored
      Msys binaries apply heuristics to escape paths in arguments intended for
      non-msys binaries, which breaks timeout invocations, see #9626.
      Signed-off-by: default avatarAustin Seipp <austin@well-typed.com>
    • Austin Seipp's avatar
      rts: remove old-style field designator extension (#9396) · 8e0a480c
      Austin Seipp authored
      Authored-by: jrp
      Signed-off-by: default avatarAustin Seipp <austin@well-typed.com>
    • Herbert Valerio Riedel's avatar
      Optimise `Identity` instances with `coerce` · 4ba884bd
      Herbert Valerio Riedel authored
      This also overrides all optional `Foldable` methods
      (which would otherwise be default-implemented in terms of `foldMap`)
      with supposedly optimally minimal implementations.
      While at it, this also removes the redundant `{-# LANGUAGE CPP #-}`.
      Reviewed By: austin, dfeuer
      Differential Revision: https://phabricator.haskell.org/D467
    • Herbert Valerio Riedel's avatar
      Restore exact old semantics of `decodeFloat` · e2af452c
      Herbert Valerio Riedel authored
      `integer-gmp2` uses the new 64bit-based IEEE deconstructing primop
      introduced in b62bd5ec.
      However, the returned values differ for exceptional IEEE values:
      Previous (expected) semantics:
        > decodeFloat (-1/0)
        > decodeFloat (1/0)
        > decodeFloat (0/0)
      Currently (broken) semantics:
        > decodeFloat (-1/0 :: Double)
        > decodeFloat (1/0 :: Double)
        > decodeFloat (0/0 :: Double)
      This patch reverts to the old expected semantics.
      I plan to revisit the implementation during GHC 7.11 development.
      This should address #9810
      Reviewed By: austin, ekmett, luite
      Differential Revision: https://phabricator.haskell.org/D486
    • Herbert Valerio Riedel's avatar
      Reimplement im/export primitives for integer-gmp2 · 42244668
      Herbert Valerio Riedel authored
      The import/export operations were available in `integer-gmp-0.5.1`
      already, but need to be reimplemented from scratch for the
      `integer-gmp-1.0.0` rewrite.
      This also adds a few more operations than were previously available for
      use w/ the `BigNat` type (which will be useful for implementing
      serialisation for the upcoming `Natural` type)
      Specifically, the following operations are (re)added (albeit with
      slightly different type-signatures):
       - `sizeInBaseBigNat`
       - `sizeInBaseInteger`
       - `sizeInBaseWord#`
       - `exportBigNatToAddr`
       - `exportIntegerToAddr`
       - `exportWordToAddr`
       - `exportBigNatToMutableByteArray`
       - `exportIntegerToMutableByteArray`
       - `exportWordToMutableByteArray`
       - `importBigNatFromAddr`
       - `importIntegerFromAddr`
       - `importBigNatFromByteArray`
       - `importIntegerFromByteArray`
      NOTE: The `integerGmpInternals` test-case is updated but not yet
            re-enabled as it contains tests for other primitives which aren't
            yet reimplemented.
      This addresses #9281
      Reviewed By: austin, duncan
      Differential Revision: https://phabricator.haskell.org/D480
    • Edward Z. Yang's avatar
      Support for "with" renaming syntax, and output a feature flag. · 7c748d9f
      Edward Z. Yang authored
      - Feature flag indicates to Cabal that we support thinning and renaming as
        it needs.
      - Support -package "base with (Foo as Bar)" which brings the ordinary
        modules into scope, as well as adding the renamings to scope.
      Signed-off-by: default avatarEdward Z. Yang <ezyang@cs.stanford.edu>
      Test Plan: validate
      Reviewers: simonpj, austin
      Subscribers: thomie, carter
      Differential Revision: https://phabricator.haskell.org/D485
    • Edward Z. Yang's avatar
      When outputting list of available instances, sort it. · 1019e3c6
      Edward Z. Yang authored
      The intent of this commit is to make test suite cases more stable, so that
      it doesn't matter what order we load interface files in, the test output
      doesn't change.
      Signed-off-by: default avatarEdward Z. Yang <ezyang@cs.stanford.edu>
      Test Plan: validate
      Reviewers: simonpj, austin
      Subscribers: thomie, carter
      Differential Revision: https://phabricator.haskell.org/D484
  2. 18 Nov, 2014 22 commits
  3. 17 Nov, 2014 2 commits
  4. 15 Nov, 2014 4 commits
    • Herbert Valerio Riedel's avatar
      Fix compilation of `integer-gmp2` with `-O0` · c45e2e29
      Herbert Valerio Riedel authored
      At optimization level `-O0` `wordToInteger` wasn't inlined, and this caused a
      `__integer` literal to turn up in final Core, which would trigger the GHC panic
        ghc-stage1: panic! (the 'impossible' happened)
          (GHC version 7.9.20141114 for x86_64-unknown-linux):
      	Can't use Integer in integer-*
      By forcing inlining via `inline` this is avoided.
      This should hopefully address #9800.
    • Herbert Valerio Riedel's avatar
      Update to (unreleased) `deepseq-` · 609cd28a
      Herbert Valerio Riedel authored
      This pulls in the new `Generic`-based `-XDefaultSignature`-based default
      implementation for `rnf`[1], and will be interesting to use in combination
      with the soon to be merged `-XDeriveAnyClass` extension.
      This requires updating several other submodules as well in order
      to relax the upper bound on `deepseq` and/or in a few cases to
      avoid relying on the default method implementation of `rnf`:
       - `Cabal`
       - `bytestring`
       - `containers`
       - `parallel`
       - `process`
       - `time`
       [1]: http://permalink.gmane.org/gmane.comp.lang.haskell.libraries/23031
    • Herbert Valerio Riedel's avatar
      Workaround 452d6aa9 breaking TrustworthySafe03 · 18548252
      Herbert Valerio Riedel authored
      This is only a temporary kludge until the issue workarounded by 452d6aa9
      gets properly fixed
    • Edward Z. Yang's avatar
      Generalize exposed-modules field in installed package database · e14a9732
      Edward Z. Yang authored
      Instead of recording exposed-modules and reexported-modules as seperate
      fields in the installed package database, this commit merges them into
      a single field (exposed-modules).  The motivation for this change is
      in preparation for the inclusion of *signatures* into the installed
      package database, which may also be reexported.  Merging the representation
      means that we can treat reexports uniformly, no matter if they're a normal
      module or a signature.
      This commit adds a stub for signatures, but that code isn't wired up to
      anything yet.
      Contains Cabal submodule update to accommodate these changes.
      Signed-off-by: default avatarEdward Z. Yang <ezyang@cs.stanford.edu>
      Test Plan: validate
      Reviewers: simonpj, duncan, austin
      Subscribers: thomie, carter, simonmar
      Differential Revision: https://phabricator.haskell.org/D421
  5. 14 Nov, 2014 2 commits
  6. 13 Nov, 2014 2 commits