- 10 Apr, 2016 7 commits
-
-
Herbert Valerio Riedel authored
The commit 28f951ed introduced the `-fmax-pmcheck-iterations` flag and set the default limit to 1e7 iterations. However, this value is still high enough that it can result GHC to exhibit memory spikes beyond 1 GiB of RAM usage (heap profile showed several `(:)`s, as well as `THUNK_2_0`, and `PmCon` during the memory spikes) A value of 2e6 seems to be a safer upper bound which still manages to let the checker not run into the limit in most cases. Test Plan: Validate, try building a few Hackage packages Reviewers: austin, gkaracha, bgamari Reviewed By: bgamari Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2095
-
bollmann authored
Record selectors of data types spliced in with Template Haskell are not renamer-resolved correctly in GHC HEAD. The culprit is `newRecordSelector` which violates notes `Note [Binders in Template Haskell] in Convert.hs` and `Note [Looking up Exact RdrNames] in RnEnv.hs`. This commit fixes `newRecordSelector` accordingly. Test Plan: ./validate Reviewers: thomie, mpickering, bgamari, austin, simonpj, goldfire Reviewed By: goldfire Differential Revision: https://phabricator.haskell.org/D2091 GHC Trac Issues: #11809
-
wereHamster authored
Reviewers: austin, bgamari Reviewed By: bgamari Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2096
-
Herbert Valerio Riedel authored
The last user of this file was the "-dynload wrapper" which was removed in 169f5972 for addressing #4275 Reviewers: austin, erikd, bgamari Reviewed By: bgamari Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2098 GHC Trac Issues: #4275
-
Chris Martin authored
This is another documentation addition similar to D1989, this time comparing the type of the Kleisli composition operator (<=<) to that of plain function composition (.). Reviewers: hvr, austin, bgamari Reviewed By: bgamari Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2100
-
Michael Snoyman authored
In my testing, the worker/wrapper transformation applied here significantly decreases the number of allocations performed when using replicateM_. Additionally, this version of the function behaves correctly for negative numbers (namely, it will behave the same as replicateM_ 0, which is what previous versions of base have done). Reviewers: bgamari, simonpj, hvr, austin Reviewed By: bgamari, simonpj, austin Subscribers: nomeata, simonpj, mpickering, thomie Differential Revision: https://phabricator.haskell.org/D2086 GHC Trac Issues: #11795
-
Simon Marlow authored
-
- 08 Apr, 2016 3 commits
-
-
niteria authored
Someone must have forgotten to change this.
-
Joachim Breitner authored
-
Joachim Breitner authored
Since recent changes to CSE, the previous definition were no longer CSEd with thenIO, which resulted in extra steps in the simplifier and hence slightly larger compile times. See ticket:11781#comment:7. Differential Revision: https://phabricator.haskell.org/D2092
-
- 07 Apr, 2016 7 commits
-
-
Ben Gamari authored
This reverts commit 06b7ce21.
-
Ben Gamari authored
69822f0c broke this as it held on to a reference into the `arg` string, which is later freed. Humbug. Test Plan: Try using filtering Reviewers: austin Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2090 GHC Trac Issues: #11810
-
Ben Gamari authored
Previously the `_static` and `_sources` directories were installed in the wrong parents. See #11803
-
Ben Gamari authored
(cherry picked from commit 6d36d8e1)
-
Joachim Breitner authored
to what phabricator found; not sure why my local validation yielded different numbers.
-
Eugene Akentyev authored
Reviewed By: erikd, austin Differential Revision: https://phabricator.haskell.org/D2082 GHC Trac Issues: #8594
-
Facundo Domínguez authored
Summary: Till now tct_closed determined whether the type of a binding is closed. With this patch tct_closed indicates whether the binding is closed. Test Plan: ./validate Reviewers: simonpj, austin, bgamari Reviewed By: simonpj Subscribers: mboes, thomie, simonpj Differential Revision: https://phabricator.haskell.org/D2016 GHC Trac Issues: #11698
-
- 06 Apr, 2016 6 commits
-
-
Joachim Breitner authored
as suggested in ticket:11770#comment:1. This code was buggy (#11770), and the occurrence analyzer does the same job anyways. This also elaborates the notes in the occurrence analyzer accordingly. Previously, the worker/wrapper code would go through lengths to transfer the oneShot annotations from the original function to both the worker and the wrapper. We now simply transfer the demand on the worker, and let the subsequent occurrence analyzer push this onto the lambda binders. This also requires the occurrence analyzer to do this more reliably. Previously, it would not hand out OneShot annotatoins to things that would not `certainly_inline` (and it might not have mattered, as the Demand Analysis might have handed out the annotations). Now we hand out one-shot annotations unconditionally. Differential Revision: https://phabricator.haskell.org/D2085
-
Simon Peyton Jones authored
Triggered by an observation by Joachim, Simon felt the urge to clean up the CSE code a bit. This is the result. (Code by Simon, commit message and other leg-work by Joachim) Differential Revision: https://phabricator.haskell.org/D2074
-
Joachim Breitner authored
as they (especially their id info with absence information) clutter the output too much. They come back with debug_on. Differential Revision: https://phabricator.haskell.org/D2072
-
Ben Gamari authored
It's been quite a while since this has happened for some of our tests.
-
Ben Gamari authored
Shifts by amounts greater-than-or-equal-to the word size are undefined.
-
Ben Gamari authored
-
- 05 Apr, 2016 2 commits
-
-
Herbert Valerio Riedel authored
This fixes a bug where warnings actually controlled by - `Opt_WarnUnusedMatches` - `Opt_WarnUnusedTypePatterns` - `Opt_WarnUnusedTopBinds` were incorrectly reported as being controlled by `Opt_WarnUnusedLocalBinds` as well This bug was introduced in bb5afd3c while implementing #10752 Test Plan: ./validate still running -- testsuite output wiggles expected Reviewers: barrucadu, quchen, austin, bgamari Reviewed By: bgamari Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2077
-
Simon Peyton Jones authored
Richard suggested this, a good idea
-
- 04 Apr, 2016 5 commits
-
-
Eric Seidel authored
We originally wanted CallStacks to be opt-in, but dealing with let binders complicated things, forcing us to infer CallStacks. It turns out that the inference is actually unnecessary though, we can let the wanted CallStacks bubble up to the outer context by refusing to quantify over them. Eventually they'll be solved from a given CallStack or defaulted to the empty CallStack if they reach the top. So this patch prevents GHC from quantifying over CallStacks, getting us back to the original plan. There's a small ugliness to do with PartialTypeSignatures, if the partial theta contains a CallStack constraint, we *do* want to quantify over the CallStack; the user asked us to! Note that this means that foo :: _ => CallStack foo = getCallStack callStack will be an *empty* CallStack, since we won't infer a CallStack for the hole in the theta. I think this is the right move though, since we want CallStacks to be opt-in. One can always write foo :: (HasCallStack, _) => CallStack foo = getCallStack callStack to get the CallStack and still have GHC infer the rest of the theta. Test Plan: ./validate Reviewers: goldfire, simonpj, austin, hvr, bgamari Reviewed By: simonpj, bgamari Subscribers: bitemyapp, thomie Projects: #ghc Differential Revision: https://phabricator.haskell.org/D1912 GHC Trac Issues: #11573
-
Ben Gamari authored
-
Simon Peyton Jones authored
This just adds the Prox stuff from the Description in Trac #11376 to the test case, The class stuff seems weird becuase the type is ambiguous
-
Jason Eisenberg authored
Stable pointers can now be safely dereferenced while the stable pointer table is simultaneously being enlarged. Test Plan: ./validate Reviewers: ezyang, austin, bgamari, simonmar Subscribers: carter, thomie Differential Revision: https://phabricator.haskell.org/D2031 GHC Trac Issues: #10296
-
Simon Peyton Jones authored
See Trac #11376 and Note [Deeply instantiate in :type] in TcRnDriver Sadly this showed up one new problem (Trac #11786) and one opportunity (Trac #11787), so test T11549 is now marked expect-broken on these two.
-
- 02 Apr, 2016 1 commit
-
-
Rik Steenkamp authored
Add the function `pprPatSynType :: PatSyn -> SDoc` for printing pattern synonym types, and remove the ambiguous `patSynType` function. Also, the types in a `PatSyn` are now tidy. Haddock submodule updated to reflect the removal of `patSynType` by mpickering. Fixes: #11213. Reviewers: goldfire, simonpj, austin, mpickering, bgamari Reviewed By: simonpj, mpickering Subscribers: bollmann, simonpj, thomie Differential Revision: https://phabricator.haskell.org/D1896 GHC Trac Issues: #11213
-
- 01 Apr, 2016 1 commit
-
-
niteria authored
`ghc` fails without `-dep-suffix ''`. Test Plan: visual inspection Reviewers: austin, bgamari Reviewed By: bgamari Subscribers: thomie, simonmar Differential Revision: https://phabricator.haskell.org/D2075
-
- 31 Mar, 2016 8 commits
-
-
Joachim Breitner authored
This reverts commit 28fe0eea due to various regressions. I’m not sure why my local ./validate --slow run did not catch this, though.
-
Simon Peyton Jones authored
Richard accidetally introduced this change in his big kind-equality patch. The code is wrong, and potentially could cause binders to be re-ordered. Worth merging to 8.0.
-
Joachim Breitner authored
as suggested in ticket:11770#comment:1. This code was buggy (#11770), and the occurrence analyzer does the same job anyways. This also elaborates the notes in the occurrence analyzer accordingly. Differential Revision: https://phabricator.haskell.org/D2070
-
Simon Peyton Jones authored
The result of a series of patches on type-error messages for pattern synonyms had become a bit baroque. This tidies it up a bit. Still not fantastic, but better.
-
Simon Peyton Jones authored
For some reason a SigSkol had an ExpType in it, and there were lots of places where we needed it to have a TcType. And was indeed always a Check. All a lot of fuss about nothing. Delete code, fewer failure points, types are more precise. All good.
-
Simon Peyton Jones authored
Mainly to make it clearer that tauifyExpType is a no-op on (Check ty)
-
Simon Peyton Jones authored
* Move the several calls of tauifyMultipleMatches into tcMatches, so that it can be called only once, and the invariants are clearer * I discovered in doing this that HsLamCase had a redundant and tiresome argument, so I removed it. That in turn allowed some modest but nice code simplification
-
Simon Peyton Jones authored
-