Skip to content
Snippets Groups Projects
  1. Apr 30, 2019
  2. Apr 25, 2019
  3. Apr 24, 2019
  4. Apr 23, 2019
  5. Apr 22, 2019
    • Vladislav Zavialov's avatar
      Stop misusing EWildPat in pattern match coverage checking · 1959bad3
      Vladislav Zavialov authored and Marge Bot's avatar Marge Bot committed
      EWildPat is a constructor of HsExpr used in the parser to represent
      wildcards in ambiguous positions:
      
      * in expression context, EWildPat is turned into hsHoleExpr (see rnExpr)
      * in pattern context, EWildPat is turned into WildPat (see checkPattern)
      
      Since EWildPat exists solely for the needs of the parser, we could
      remove it by improving the parser.
      
      However, EWildPat has also been used for a different purpose since
      8a506104: to represent patterns that the coverage checker cannot handle.
      Not only this is a misuse of EWildPat, it also stymies the removal of
      EWildPat.
      1959bad3
    • Alp Mestanogullari's avatar
      Hadrian: use the testsuite driver's config.haddock arg more correctly · 51655fd8
      Alp Mestanogullari authored and Marge Bot's avatar Marge Bot committed
      4 haddock tests assume that .haddock files have been produced, by using the
      'req_haddock' modifier. The testsuite driver assumes that this condition is
      satisfied if 'config.haddock' is non-empty, but before this patch Hadrian was
      always passing the path to where the haddock executable should be, regardless
      of whether it is actually there or not.
      
      Instead, we now pass an empty config.haddock when we can't find all of
      <build root>/docs/html/libraries/<pkg>/<pkg>.haddock>, where <pkg> ranges over
      array, base, ghc-prim, process and template-haskell, and pass the path
      to haddock when all those file exists. This has the (desired) effect of skipping
      the 4 tests (marked as 'missing library') when the docs haven't been built,
      and running the haddock tests when they have.
      51655fd8
    • Matthew Pickering's avatar
      Correct off by one error in ghci +c · 1a7a329b
      Matthew Pickering authored and Marge Bot's avatar Marge Bot committed
      Fixes #16569
      1a7a329b
  6. Apr 21, 2019
  7. Apr 20, 2019
  8. Apr 19, 2019
    • Alec Theriault's avatar
      Add test case for #16384 · fdfd9731
      Alec Theriault authored and Marge Bot's avatar Marge Bot committed
      Now that `TExp` accepts unlifted types, #16384 is fixed. Since the real
      issue there was GHC letting through an ill-kinded type which
      `-dcore-lint` rightly rejected, a reasonable regression test is that
      the program from #16384 can now be accepted without `-dcore-lint`
      complaining.
      fdfd9731
    • Alec Theriault's avatar
      TH: make `Lift` and `TExp` levity-polymorphic · 57cf1133
      Alec Theriault authored and Marge Bot's avatar Marge Bot committed
      Besides the obvious benefits of being able to manipulate `TExp`'s of
      unboxed types, this also simplified `-XDeriveLift` all while making
      it more capable.
      
        * `ghc-prim` is explicitly depended upon by `template-haskell`
      
        * The following TH things are parametrized over `RuntimeRep`:
      
            - `TExp(..)`
            - `unTypeQ`
            - `unsafeTExpCoerce`
            - `Lift(..)`
      
        * The following instances have been added to `Lift`:
      
            - `Int#`, `Word#`, `Float#`, `Double#`, `Char#`, `Addr#`
            - unboxed tuples of lifted types up to arity 7
            - unboxed sums of lifted types up to arity 7
      
          Ideally we would have levity-polymorphic _instances_ of unboxed
          tuples and sums.
      
        * The code generated by `-XDeriveLift` uses expression quotes
          instead of generating large amounts of TH code and having
          special hard-coded cases for some unboxed types.
      57cf1133
    • Alp Mestanogullari's avatar
      Hadrian: fix the value we pass to the test driver for config.compiler_debugged · 5988f17a
      Alp Mestanogullari authored and Marge Bot's avatar Marge Bot committed
      We used to pass YES/NO, while that particular field is set to True/False. This
      happens to fix an unexpected pass, T9208.
      5988f17a
  9. Apr 18, 2019
  10. Apr 16, 2019
    • Andrey Mokhov's avatar
      Hadrian: Generate GHC wrapper scripts · 894ec447
      Andrey Mokhov authored and Marge Bot's avatar Marge Bot committed
      This is a temporary workaround for #16534. We generate wrapper scripts
      <build-root>/ghc-stage1 and <build-root>/ghc-stage2 that can be used to
      run Stage1 and Stage2 GHCs with the right arguments.
      
      See #16534.
      894ec447
    • Dmitry Dolgov's avatar
      Show dynamic object files (#16062) · 57eb5bc6
      Dmitry Dolgov authored and Marge Bot's avatar Marge Bot committed
      Closes #16062. When -dynamic-too is specified, reflect that in the
      progress message, like:
      
      $ ghc Main.hs -dynamic-too
      [1 of 1] Compiling Lib              ( Main.hs, Main.o, Main.dyn_o )
      
      instead of:
      
      $ ghc Main.hs -dynamic-too
      [1 of 1] Compiling Lib              ( Main.hs, Main.o )
      57eb5bc6
Loading