Skip to content
Snippets Groups Projects
  1. Apr 19, 2018
    • Ben Gamari's avatar
      boot: Fix computation of TOP · 8fa688a8
      Ben Gamari authored and Ben Gamari's avatar Ben Gamari committed
      Test Plan: Run `./boot`, check to make sure that
      `libraries/ghc-prim/GNUmakefile` is sane
      
      Subscribers: thomie, carter, sjakobi
      
      Differential Revision: https://phabricator.haskell.org/D4580
      8fa688a8
    • Ben Gamari's avatar
      configure: Use -Werror to check for existence of -no-pie · cbd73bbb
      Ben Gamari authored and Ben Gamari's avatar Ben Gamari committed
      Clang throws a warning instead of an error when it is passed -no-pie,
      
          clang: warning: argument unused during compilation: '-nopie'
          [-Wunused-command-line-argument]
      
      Consequently configure concludes that it supports -no-pie. However, this
      will fail when used with -Werror. The solution is to simply use -Werror
      in the configure check.
      
      Thanks to @goldfire for reporting this.
      
      Reviewers: hvr
      
      Subscribers: thomie, carter, goldfire
      
      Differential Revision: https://phabricator.haskell.org/D4557
      cbd73bbb
    • Ben Gamari's avatar
      parsec: Make version hack compatible with Windows · 3c3e7310
      Ben Gamari authored
      Fixes D4609 on Windows by bumping parsec submodule.
      3c3e7310
    • Alp Mestanogullari's avatar
      testsuite: Fix `./validate --slow` · d9d80151
      Alp Mestanogullari authored and Ben Gamari's avatar Ben Gamari committed
      This fixes all unexpected passes and unexpected failures from a
      `./validate --slow` run I did last week. I commented on many
      tickets and created a few more as I was going through the failing
      tests. A summary of the entire process is available at:
      
        https://gist.github.com/alpmestan/c371840968f086c8dc5b56af8325f0a9
      
      This is part of an attempt to have `./validate --slow` pass,
      tracked in #14890. Another patch will be necessary for the unexpected
      stats failures.
      
      Test Plan: ./validate --slow (not green yet)
      
      Reviewers: bgamari, simonmar
      
      Subscribers: thomie, carter
      
      Differential Revision: https://phabricator.haskell.org/D4546
      d9d80151
    • Ryan Scott's avatar
      Bump base to version 4.12.0.0 · 8f19ecc9
      Ryan Scott authored
      Summary: Bumps several submodules.
      
      Test Plan: ./validate
      
      Reviewers: hvr, bgamari
      
      Reviewed By: bgamari
      
      Subscribers: thomie, carter
      
      GHC Trac Issues: #15018
      
      Differential Revision: https://phabricator.haskell.org/D4609
      8f19ecc9
    • Ryan Scott's avatar
      Fix #15012 with a well-placed use of Any · b08a6d75
      Ryan Scott authored
      Previously, derived `Generic1` instances could have associated `Rep1`
      type family instances with unbound variables, such as in the following
      example:
      
      ```lang=haskell
      data T a = MkT (FakeOut a) deriving Generic1
      type FakeOut a = Int
      
      ==>
      
      instance Generic1 T where
        type Rep1 T = ... (Rec0 (FakeOut a))
      ```
      
      Yikes! To avoid this, we simply map the last type variable in a
      derived `Generic1` instance to `Any`.
      
      Test Plan: make test TEST=T15012
      
      Reviewers: bgamari
      
      Reviewed By: bgamari
      
      Subscribers: simonpj, thomie, carter
      
      GHC Trac Issues: #15012
      
      Differential Revision: https://phabricator.haskell.org/D4602
      b08a6d75
    • Tao He's avatar
      Better error message for empty character literal, for Trac #13450. · cac8be61
      Tao He authored
      For empty character literal, the `''`, report error message properly
      rather than just throw a "parser error" with wrong error location.
      
      Test Plan: make test TEST="T13450 T13450TH"
      
      Reviewers: goldfire, bgamari
      
      Reviewed By: bgamari
      
      Subscribers: thomie, mpickering, carter
      
      GHC Trac Issues: #13450
      
      Differential Revision: https://phabricator.haskell.org/D4594
      cac8be61
    • Ömer Sinan Ağacan's avatar
      Add a test for #14815: · f7f567d5
      Ömer Sinan Ağacan authored
      Because the program doesn't have any binders that -XStrict can make
      strict, the desugarer output should be identical when it's compiled with
      and without -XStrict. This wasn't the case with GHC 8.2.2, but
      apparently it was fixed some time between 8.2.2 and 8.4.1. We now add a
      test case to make sure it stays fixed.
      
      Reviewers: bgamari
      
      Reviewed By: bgamari
      
      Subscribers: simonpj, rwbarton, thomie, carter
      
      GHC Trac Issues: #14815
      
      Differential Revision: https://phabricator.haskell.org/D4531
      f7f567d5
    • Sergei Trofimovich's avatar
      rts: fix format arguments for debugBelch calls on 32-bit systems · 48b88421
      Sergei Trofimovich authored and Ben Gamari's avatar Ben Gamari committed
      
      This change fixes build failure like this:
      ```
        rts/Stats.c:1467:14: error:
           error: format '%u' expects argument of type 'unsigned int',
               but argument 4 has type 'long unsigned int' [-Werror=format=]
             debugBelch("%51s%9" FMT_Word " %9" FMT_Word "\n",
                        ^~~~~~~~
                        "",tot_live*sizeof(W_),tot_slop*sizeof(W_));
                                               ~~~~~~~~~~~~~~~~~~~
      ```
      
      The fix is to cast sizeof() result to Word (W_).
      
      Signed-off-by: default avatarSergei Trofimovich <slyfox@gentoo.org>
      
      Test Plan: build for 32-bit target
      
      Reviewers: bgamari, erikd, simonmar
      
      Reviewed By: simonmar
      
      Subscribers: thomie, carter
      
      Differential Revision: https://phabricator.haskell.org/D4608
      48b88421
    • Ben Gamari's avatar
      users-guide: Override mathjax_path · 803178a5
      Ben Gamari authored and Ben Gamari's avatar Ben Gamari committed
      The Mathjax CDN no longer exists. Use CDNJS instead.
      
      See #15006.
      
      Test Plan: Build HTML users guide, see whether math is rendered.
      
      Reviewers: alpmestan
      
      Reviewed By: alpmestan
      
      Subscribers: thomie, carter
      
      GHC Trac Issues: #15006
      
      Differential Revision: https://phabricator.haskell.org/D4603
      803178a5
    • Ben Gamari's avatar
      Add a test case from the nested CPR work · 19ddd044
      Ben Gamari authored
      Reviewers: bgamari
      
      Reviewed By: bgamari
      
      Subscribers: thomie, carter
      
      Differential Revision: https://phabricator.haskell.org/D4565
      19ddd044
    • Ryan Scott's avatar
      Bump unix submodule to version 2.8.0.0 · 2fdfe056
      Ryan Scott authored
      Summary: Requires bumping several submodules.
      
      Test Plan: ./validate
      
      Reviewers: hvr, bgamari
      
      Subscribers: thomie, carter
      
      GHC Trac Issues: #15042
      
      Differential Revision: https://phabricator.haskell.org/D4604
      2fdfe056
    • Ryan Scott's avatar
      Fix #14710 with more validity checks during renaming · 447d1264
      Ryan Scott authored
      Summary:
      #14710 revealed two unfortunate regressions related to kind
      polymorphism that had crept in in recent GHC releases:
      
      1. While GHC was able to catch illegal uses of kind polymorphism
         (i.e., if `PolyKinds` wasn't enabled) in limited situations, it
         wasn't able to catch kind polymorphism of the following form:
      
      ```lang=haskell
      f :: forall a. a -> a
      f x = const x g
        where
          g :: Proxy (x :: a)
          g = Proxy
      ```
      
      Note that the variable `a` is being used as a kind variable in the
      type signature of `g`, but GHC happily accepts it, even without
      the use of `PolyKinds`.
      
      2. If you have `PolyKinds` (but not `TypeInType`) enabled, then GHC
         incorrectly accepts the following definition:
      
      ```lang=haskell
      f :: forall k (a :: k). Proxy a
      f = Proxy
      ```
      
      Even though `k` is explicitly bound and then later used as a kind
      variable within the same telescope.
      
      This patch fixes these two bugs as follows:
      
      1. Whenever we rename any `HsTyVar`, we check if the following three
         criteria are met:
      
         (a) It's a type variable
         (b) It's used at the kind level
         (c) `PolyKinds` is not enabled
      
         If so, then we have found an illegal use of kind polymorphism, so
         throw an error.
      
         This check replaces the `checkBadKindBndrs` function, which could
         only catch illegal uses of kind polymorphism in very limited
         situations (when the bad kind variable happened to be implicitly
         quantified in the same type signature).
      
      2. In `extract_hs_tv_bndrs`, we must error if `TypeInType` is not
         enabled and either of the following criteria are met:
      
         (a) An explicitly bound type variable is used in kind position
             in the body of a `forall` type.
         (b) An explicitly bound type variable is used in kind position
             in the kind of a bound type variable in a `forall` type.
      
         `extract_hs_tv_bndrs` was checking (a), but not (b). Easily fixed.
      
      Test Plan: ./validate
      
      Reviewers: goldfire, simonpj, bgamari, hvr
      
      Reviewed By: simonpj
      
      Subscribers: thomie, carter
      
      GHC Trac Issues: #14710
      
      Differential Revision: https://phabricator.haskell.org/D4554
      447d1264
  2. Apr 17, 2018
  3. Apr 16, 2018
  4. Apr 13, 2018
  5. Apr 12, 2018
Loading