1. 23 Nov, 2015 1 commit
    • Ben Gamari's avatar
      build.mk.sample: Document meaning of WERROR · 02c689cd
      Ben Gamari authored
      31bcf9b6 changed the behavior of WERROR
      such that it would only apply to the stage 2 build. The reason for this
      was to avoid silly redundant imports and such breaking validation on
      different bootstrap compiler versions.
      Document the fact that WERROR now only applies to the stage 2 build.
  2. 22 Nov, 2015 6 commits
    • niteria's avatar
      Make abstractVars deterministic in SetLevel · 6393dd8e
      niteria authored and Ben Gamari's avatar Ben Gamari committed
      This fixes a non-determinism bug where depending on the order
      of uniques allocated, the type variables would be in a different order
      when abstracted for the purpose of lifting out an expression.
      Test Plan:
      I've added a new testcase that reproduces the problem
      Reviewers: simonmar, austin, bgamari, simonpj
      Reviewed By: simonpj
      Subscribers: nomeata, thomie
      Differential Revision: https://phabricator.haskell.org/D1504
      GHC Trac Issues: #4012
    • Alan Zimmerman's avatar
      ApiAnnotations: Make all RdrName occurences Located · 3df9563e
      Alan Zimmerman authored and Ben Gamari's avatar Ben Gamari committed
      At the moment the API Annotations can only be used on the ParsedSource,
      as there are changes made to the RenamedSource that prevent it from
      being used to round trip source code.
      It is possible to build a map from every Located Name in the
      RenamedSource from its location to the Name, which can then be used when
      resolved names are required when changing the ParsedSource.
      However, there are instances where the identifier is not located,
        (GHC.VarPat name)
        (GHC.HsVar name)
        (GHC.UserTyVar name)
        (GHC.HsTyVar name)
      Replace each of the name types above with (Located name)
      Updates the haddock submodule.
      Test Plan: ./validate
      Reviewers: austin, goldfire, bgamari
      Reviewed By: bgamari
      Subscribers: goldfire, thomie, mpickering
      Differential Revision: https://phabricator.haskell.org/D1512
      GHC Trac Issues: #11019
    • Erik de Castro Lopo's avatar
      New expected test output for 32 bit platforms · 64737f2d
      Erik de Castro Lopo authored and Ben Gamari's avatar Ben Gamari committed
      Test Plan: Test on Arm and PowerPc.
      Reviewers: bgamari, thomie, austin
      Differential Revision: https://phabricator.haskell.org/D1510
      GHC Trac Issues: #11060
    • Alan Zimmerman's avatar
      Add comment to Parser.y re extra API Annotation · 638fde50
      Alan Zimmerman authored
      Document extra AnnRarrow annotation on a HsFunTy
    • Herbert Valerio Riedel's avatar
      Follow-up fix to 3e2a4eef (re #11109) · 4976ab2b
      Herbert Valerio Riedel authored
      Using `:` as sed-`s`-expr separator is not a good idea on windows, as
      this can result in an expression like
         's:@INSTALL@:$(subst ../install-sh,E:/msys64/home/foo/ghc/install-sh,@INSTALL@):g'
      (note the `E:/` drive component)
      Using `|` instead of `:` has less risk of collision with the substitution expression
    • Herbert Valerio Riedel's avatar
      Remove accidentally added T10359 blob · a703fbce
      Herbert Valerio Riedel authored
      This sneaked in via 2325bd4e / D1468 / #4012
      This is frustrating... we've added a useless 2.4MiB binary blob to our
      Git history which wastes *everyones* bandwidth for eternity
      (unless we truncate or rewrite history).
      We should add lint-checks and/or a pre-receive commit hook test to prevent
      this in future.
  3. 21 Nov, 2015 6 commits
    • roshats's avatar
      Function definition in GHCi · b98ff3cc
      roshats authored and Ben Gamari's avatar Ben Gamari committed
      This patch allows define and re-define functions in ghci. `let` is not
      required anymore (but can be used).
      Idea: If ghci input string can be parsed as statement then run it as
      statement else run it as declaration.
      Reviewers: mpickering, bgamari, austin
      Reviewed By: mpickering, bgamari, austin
      Subscribers: hvr, mpickering, dterei, thomie
      Differential Revision: https://phabricator.haskell.org/D1299
      GHC Trac Issues: #7253
    • niteria's avatar
      Create a deterministic version of tyVarsOfType · 2325bd4e
      niteria authored and Ben Gamari's avatar Ben Gamari committed
      I've run into situations where I need deterministic `tyVarsOfType` and
      this implementation achieves that and also brings an algorithmic
      improvement.  Union of two `VarSet`s takes linear time the size of the
      sets and in the worst case we can have `n` unions of sets of sizes
      `(n-1, 1), (n-2, 1)...` making it quadratic.
      One reason why we need deterministic `tyVarsOfType` is in `abstractVars`
      in `SetLevels`. When we abstract type variables when floating we want
      them to be abstracted in deterministic order.
      Test Plan: harbormaster
      Reviewers: simonpj, goldfire, austin, hvr, simonmar, bgamari
      Reviewed By: simonmar
      Subscribers: thomie
      Differential Revision: https://phabricator.haskell.org/D1468
      GHC Trac Issues: #4012
    • niteria's avatar
      Add DVarSet - a deterministic set of Vars · 6664ab83
      niteria authored and Ben Gamari's avatar Ben Gamari committed
      This implements `DVarSet`, a deterministic set of Vars, with an
      interface very similar to `VarSet` with a couple of functions missing.
      I will need this in changes that follow, one of them will be about
      changing the type of the set of Vars that `RuleInfo` holds to make the
      free variable computation deterministic.
      Test Plan:
      I can add new tests if anyone wants me to.
      Reviewers: simonpj, simonmar, austin, bgamari
      Reviewed By: simonmar, bgamari
      Subscribers: thomie
      Differential Revision: https://phabricator.haskell.org/D1487
      GHC Trac Issues: #4012
    • Herbert Valerio Riedel's avatar
      Suppress conflicting types for builtins warnings · 192dd068
      Herbert Valerio Riedel authored and Ben Gamari's avatar Ben Gamari committed
      GCC 4.0 and later warn about type-conflicting prototypes for built-in
      functions such as `strlen`. This is a problem for the via-c backend as
      it generates code such as
        typedef void *(*(*StgFunPtr)(void))(void);
        extern StgFunPtr strlen();
      However, by using the `-fno-builtin` flag, GCC is told not to try to
      auto-detect such built-in functions and instead treat them as ordinary
      external functions.  This also suppresses this warning.
      This address #7660
      Test Plan: IIAM
      Reviewers: bgamari, austin
      Reviewed By: austin
      Subscribers: thomie, erikd
      Differential Revision: https://phabricator.haskell.org/D1506
      GHC Trac Issues: #7660
    • Ben Gamari's avatar
      RtsFlags: Fix const warning · d585073d
      Ben Gamari authored and Ben Gamari's avatar Ben Gamari committed
      Reviewers: austin
      Reviewed By: austin
      Subscribers: thomie
      Differential Revision: https://phabricator.haskell.org/D1509
    • Tamar Christina's avatar
      Fix Windows builds after D1242 · 7f77e4e9
      Tamar Christina authored
      Only use the merge_sections.ld linker script if SplitSections is enabled.
      I thought I had a way to make the linker script actually work on Windows
      and produce object files instead of image files (by using the "INSERT AFTER"
      linker script command to get the default script's output format setting),
      but that fix caused ghci to crash with an illegal instruction on startup.
      Gave up and made a simpler fix of just disabling this for normal builds,
      as it's only really relevant with SplitSections enabled anyway.
      Reviewers: austin, thomie, bgamari
      Reviewed By: austin, thomie
      Subscribers: Phyx, thomie
      Differential Revision: https://phabricator.haskell.org/D1505
      GHC Trac Issues: #8405
  4. 20 Nov, 2015 5 commits
  5. 19 Nov, 2015 10 commits
  6. 18 Nov, 2015 12 commits