Skip to content
Snippets Groups Projects
  1. Jan 11, 2016
  2. Jan 10, 2016
  3. Jan 09, 2016
  4. Jan 08, 2016
    • Simon Marlow's avatar
      Docs for stack traces in GHCi · 50658d25
      Simon Marlow authored and Ben Gamari's avatar Ben Gamari committed
      (cherry picked from commit 2bd05b88)
      50658d25
    • Jan Stolarek's avatar
      User's Guide: injective type families section · f66dbdd1
      Jan Stolarek authored and Ben Gamari's avatar Ben Gamari committed
      (cherry picked from commit 6f2e7229)
      f66dbdd1
    • Simon Marlow's avatar
      Support for qRecover in TH with -fexternal-interpreter · 4d5caf1c
      Simon Marlow authored and Ben Gamari's avatar Ben Gamari committed
      Summary: This completes the support for TH with -fexternal-interpreter.
      
      Test Plan: validate
      
      Reviewers: bgamari, ezyang, austin, niteria, goldfire, erikd
      
      Subscribers: thomie
      
      Differential Revision: https://phabricator.haskell.org/D1748
      
      GHC Trac Issues: #11100
      
      (cherry picked from commit 09425cbe)
      4d5caf1c
    • Simon Marlow's avatar
      Enable stack traces with ghci -fexternal-interpreter -prof · 4eba0c54
      Simon Marlow authored and Ben Gamari's avatar Ben Gamari committed
      Summary:
      The main goal here is enable stack traces in GHCi.  After this change,
      if you start GHCi like this:
      
        ghci -fexternal-interpreter -prof
      
      (which requires packages to be built for profiling, but not GHC
      itself) then the interpreter manages cost-centre stacks during
      execution and can produce a stack trace on request.  Call locations
      are available for all interpreted code, and any compiled code that was
      built with the `-fprof-auto` familiy of flags.
      
      There are a couple of ways to get a stack trace:
      
      * `error`/`undefined` automatically get one attached
      * `Debug.Trace.traceStack` can be used anywhere, and prints the current
        stack
      
      Because the interpreter is running in a separate process, only the
      interpreted code is running in profiled mode and the compiler itself
      isn't slowed down by profiling.
      
      The GHCi debugger still doesn't work with -fexternal-interpreter,
      although this patch gets it a step closer.  Most of the functionality
      of breakpoints is implemented, but the runtime value introspection is
      still not supported.
      
      Along the way I also did some refactoring and added type arguments to
      the various remote pointer types in `GHCi.RemotePtr`, so there's
      better type safety and documentation in the bridge code between GHC
      and ghc-iserv.
      
      Test Plan: validate
      
      Reviewers: bgamari, ezyang, austin, hvr, goldfire, erikd
      
      Subscribers: thomie
      
      Differential Revision: https://phabricator.haskell.org/D1747
      
      GHC Trac Issues: #11047, #11100
      4eba0c54
    • Jonas Scholl's avatar
      Improve GHC.Event.IntTable performance · 91bd13cd
      Jonas Scholl authored and Ben Gamari's avatar Ben Gamari committed
      Speed up GHC.Event.IntTable.lookup by removing the IO context from the
      go helper function. This generates a little bit better code as we can
      avoid repeating the stack check.
      
      Remove unused parameter from GHC.Event.IntTable.updateWith.go and
      directly return a bool instead of a maybe and then checking that whether
      it is a Nothing.
      
      Test Plan: validate
      
      Reviewers: austin, hvr, bgamari
      
      Reviewed By: bgamari
      
      Subscribers: thomie
      
      Differential Revision: https://phabricator.haskell.org/D1742
      
      GHC Trac Issues: #8793
      
      (cherry picked from commit 9034824055964e32140f95267a70e4b9e9171db6)
      91bd13cd
    • Ryan Scott's avatar
      Fix Template Haskell's handling of infix GADT constructors · 9578cb21
      Ryan Scott authored
      This is the second (and hopefully last) fix needed to make TH handle
      GADTs properly (after D1465). This Diff addresses some issues with infix
      GADT constructors, specifically:
      
      * Before, you could not determine if a GADT constructor was declared
        infix because TH did not give you the ability to determine if there is
        a //user-specified// fixity declaration for that constructor. The
        return type of `reifyFixity` was changed to `Maybe Fixity` so that it
        yields `Just` the fixity is there is a fixity declaration, and
        `Nothing` otherwise (indicating it has `defaultFixity`).
      * `DsMeta`/`Convert` were changed so that infix GADT constructors are
        turned into `GadtC`, not `InfixC` (which should be reserved for
        Haskell98 datatype declarations).
      * Some minor fixes to the TH pretty-printer so that infix GADT
        constructors will be parenthesized in GADT signatures.
      
      Fixes #11345.
      
      Test Plan: ./validate
      
      Reviewers: goldfire, austin, bgamari, jstolarek
      
      Reviewed By: jstolarek
      
      Subscribers: thomie
      
      Differential Revision: https://phabricator.haskell.org/D1744
      
      GHC Trac Issues: #11345
      
      (cherry picked from commit a701a813dcfe7850bbc3c8a220c80e1dada93f49)
      9578cb21
    • Ben Gamari's avatar
      users guide: Tweak wording of RTS -Nmax description · b37472bc
      Ben Gamari authored
      (cherry picked from commit 0a04837a)
      b37472bc
    • Ben Gamari's avatar
      Rewrite announce file · d191ca72
      Ben Gamari authored
      Incredibly enough this hasn't been touched since 6.10.1
      
      (cherry picked from commit 47367e0f)
      d191ca72
    • Ben Gamari's avatar
      users guide: Add links to release notes · 7319008f
      Ben Gamari authored
      (cherry picked from commit 50406865)
      7319008f
    • Ben Gamari's avatar
      users guide: Add documentation for custom compile-time errors · 91eddc13
      Ben Gamari authored
      (cherry picked from commit 568736d7)
      91eddc13
    • Ryan Scott's avatar
      Fall back on ghc-stage2 when using Windows' GHCi driver · 595eb24f
      Ryan Scott authored
      Reviewers: austin, hvr, bgamari, thomie
      
      Reviewed By: thomie
      
      Differential Revision: https://phabricator.haskell.org/D1721
      
      (cherry picked from commit f01eb541)
      595eb24f
    • Ben Gamari's avatar
      Add a note describing the protocol for adding a language extension · c6190c73
      Ben Gamari authored and Ben Gamari's avatar Ben Gamari committed
      Reviewers: hvr, thomie, austin
      
      Reviewed By: austin
      
      Subscribers: duncan
      
      Differential Revision: https://phabricator.haskell.org/D1741
      
      GHC Trac Issues: #8176, #4437
      
      (cherry picked from commit 7861a225)
      c6190c73
    • Georgios Karachalias's avatar
      Remove -Wtoo-many-guards from default flags (fixes #11316) · 5716c0d6
      Georgios Karachalias authored and Ben Gamari's avatar Ben Gamari committed
      Since #11316 indicates that having flag `-Wtoo-many-guards`
      enabled by default causes issues, the simplest thing is to
      remove it. This patch removes it from the default list, it
      updates the docs and removes the suppression flags for
      `T783` and `types/OptCoercion.hs`
      
      Test Plan: validate
      
      Reviewers: bgamari, austin, goldfire
      
      Subscribers: thomie
      
      Differential Revision: https://phabricator.haskell.org/D1737
      
      GHC Trac Issues: #11316
      
      (cherry picked from commit 77494fa9)
      5716c0d6
    • Jan Stolarek's avatar
      Change Template Haskell representation of GADTs. · e1c6a19a
      Jan Stolarek authored and Ben Gamari's avatar Ben Gamari committed
      Previous representation of GADTs in TH was not expressive enough
      to express possible GADT return types. See #11341
      
      Test Plan: ./validate
      
      Reviewers: goldfire, austin, bgamari
      
      Subscribers: thomie, RyanGlScott
      
      Differential Revision: https://phabricator.haskell.org/D1738
      
      GHC Trac Issues: #11341
      
      (cherry picked from commit cac0795a)
      e1c6a19a
  5. Jan 06, 2016
  6. Jan 05, 2016
    • Duncan Coutts's avatar
      Extend ghc environment file features · 57fa4c59
      Duncan Coutts authored and Ben Gamari's avatar Ben Gamari committed
      A set of changes to enable local ghc env files to be useful for tools
      like cabal. Ultimately it will allow cabal to maintain a ghc env file so
      that users can simple run ghc or ghci in a project directory and get the
      expected environment of the project.
      
      Change the name of .ghc.environment files to include the platform and
      ghc version, e.g. .ghc.environment.x86_64-linux-7.6.3, since their
      content is version specific. Strictly speaking this is not backwards
      compatible, but we think this feature is not widely used yet.
      
      "Look up" for a local env file, like the behaviour of git/darcs etc. So
      you can be anywhere within a project and get the expected environment.
      
      Don't look for local env files when -hide-all-packages is given.
      
      Extend the syntax of env files to allow specifying package dbs too.
      
      Test Plan:
      Currently completely untested. Compiles, that is all.
      Sorry, have to disappear for the hols.
      
      Reviewers: hvr, ezyang, austin, bgamari
      
      Reviewed By: ezyang, bgamari
      
      Subscribers: thomie
      
      Differential Revision: https://phabricator.haskell.org/D1668
      
      GHC Trac Issues: #11268
      57fa4c59
    • Ben Gamari's avatar
      Add Cabal synopses and descriptions · 8270536c
      Ben Gamari authored and Ben Gamari's avatar Ben Gamari committed
      Various people (myself included) have complained about the lack of
      useful descriptions for the various packages included in GHC's source
      tree. Fix this.
      
      Test Plan: Validate
      
      Reviewers: austin, thomie
      
      Reviewed By: thomie
      
      Subscribers: angerman, ezyang
      
      Differential Revision: https://phabricator.haskell.org/D1736
      8270536c
    • Ben Gamari's avatar
      relnotes: Remove redundant entry · 1cff3cac
      Ben Gamari authored
      1cff3cac
    • Georgios Karachalias's avatar
      Avoid generating guards for CoPats if possible (Addresses #11276) · c1acc2a9
      Georgios Karachalias authored and Herbert Valerio Riedel's avatar Herbert Valerio Riedel committed
      When translating a `CoPat` to `PmPat` check whether the wrapper
      is just a hole or a cast with refl. In these cases we can safely
      drop the wrapper and generate less guard patterns. Fixes T11276.
      
      Differential Revision: https://phabricator.haskell.org/D1729
      
      (cherry picked from commit 0acdcf24)
      c1acc2a9
Loading