summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Just a pile of debugwip/testingdavean2020-10-121-0/+3
|
* Check things for carterdavean2020-10-121-2/+3
|
* Trying to debug why we can't see something that is actually there.davean2020-10-121-0/+2
|
* testing outputdavean2020-10-121-0/+2
|
* Look in toolchaindavean2020-10-121-0/+1
|
* Fix shell variable names for tools and remove nix-less Darwin code.davean2020-10-091-18/+3
|
* Don't use brew with nix (incomplete fix).davean2020-10-091-2/+2
|
* Fix itBen Gamari2020-10-011-2/+1
|
* testingBen Gamari2020-09-301-1/+5
|
* Regression test for #10709.Richard Eisenberg2020-09-305-0/+110
| | | | Close #10709
* Pmc: Don't call exprType on type arguments (#18767)Sebastian Graf2020-09-301-1/+2
| | | | Fixes #18767.
* Omit redundant kind equality check in solverRichard Eisenberg2020-09-301-13/+21
| | | | | | | See updated Note [Use loose types in inert set] in GHC.Tc.Solver.Monad. Close #18753.
* Remove unused global variablesSylvain Henry2020-09-303-14/+0
| | | | | | | | | | Some removed globals variables were still declared in the RTS. They were removed in the following commits: * 4fc6524a2a4a0003495a96c8b84783286f65c198 * 0dc7985663efa1739aafb480759e2e2e7fca2a36 * bbd3c399939311ec3e308721ab87ca6b9443f358
* Remove unsafeGlobalDynFlags (#17957, #14597)Sylvain Henry2020-09-3017-140/+186
| | | | | There are still global variables but only 3 booleans instead of a single DynFlags.
* Bump Cabal, hsc2hs, directory, process submodulesBen Gamari2020-09-307-3/+3
| | | | Necessary for recent Win32 bump.
* testsuite: Mark T12971 as broken on WindowsBen Gamari2020-09-301-1/+1
| | | | Due to #17945.
* PmCheck: Long-distance information for LocalBinds (#18626)Sebastian Graf2020-09-306-26/+138
| | | | | | | | | | | | | | | | | | | | | | Now `desugarLocalBind` (formerly `desugarLet`) reasons about * `FunBind`s that * Have no pattern matches (so which aren't functions) * Have a singleton match group with a single GRHS * (which may have guards) * and looks through trivial post-typechecking `AbsBinds` in doing so to pick up the introduced renamings. And desugars to `PmLet` LYG-style guards. Since GRHSs are no longer denoted simply by `NonEmpty PmGRHS`, but also need to carry a `[PmGrd]` for the `PmLet`s from `LocalBind`s, I added `PmGRHSs` to capture that. Since we call out to the desugarer more often, I found that there were superfluous warnings emitted when desugaring e.g. case expressions. Thus, I made sure that we deactivate any warnings in the LYG desugaring steps by the new wrapper function `noCheckDs`. There's a regression test in `T18626`. Fixes #18626.
* Make the parser module less dependent on DynFlagsSylvain Henry2020-09-2915-89/+109
| | | | Bump haddock submodule
* Add regression test #18501Ryan Scott2020-09-293-0/+5
| | | | | ghc/ghc!3220 ended up fixing #18501. This patch adds a regression test for #18501 to ensure that it stays fixed.
* Workaround for #18623: GHC crashes bc. under rlimit for vmem it will reserveBenjamin Maurer2020-09-292-5/+58
| | | | | | _all_ of it, leaving nothing for, e.g., thread stacks. Fix will only allocate 2/3rds and check whether remainder is at least large enough for minimum amount of thread stacks.
* Description of flag `-H` was in 'verbosity options', moved to 'misc'.Benjamin Maurer2020-09-291-8/+8
| | | | Fixes #18699
* Improve error messages for (a %m) without LinearTypesVladislav Zavialov2020-09-292-11/+19
| | | | | | | | Detect when the user forgets to enable the LinearTypes extension and produce a better error message. Steals the (a %m) syntax from TypeOperators, the workaround is to write (a % m) instead.
* New linear types syntax: a %p -> b (#18459)Vladislav Zavialov2020-09-2973-162/+183
| | | | | | Implements GHC Proposal #356 Updates the haddock submodule.
* Linear types: fix kind inference when checking dataconsKrzysztof Gogolewski2020-09-291-1/+3
|
* Optimize NthCo (FunCo ...) in coercion optRichard Eisenberg2020-09-293-28/+39
| | | | | | | | | | We were missing this case previously. Close #18528. Metric Decrease: T18223 T5321Fun
* Remove outdated comment in rnHsTyKiVladislav Zavialov2020-09-271-4/+0
| | | | | This comment dates back to 3df40b7b78044206bbcffe3e2c0a57d901baf5e8 and does not seem relevant anymore.
* Don't rearrange (->) in the renamerVladislav Zavialov2020-09-271-36/+26
| | | | | | | | | | The parser produces an AST where the (->) is already associated correctly: 1. (->) has the least possible precedence 2. (->) is right-associative Thus we don't need to handle it in mkHsOpTyRn.
* Comments: change outdated reference to mergeOpswip/docs-no-merge-opsVladislav Zavialov2020-09-271-1/+1
| | | | | | | As of 686e06c59c3aa6b66895e8a501c7afb019b09e36, GHC.Parser.PostProcess.mergeOps no longer exists. [ci skip]
* Fix handling of function coercions (#18747)Krzysztof Gogolewski2020-09-264-1/+135
| | | | This was broken when we added multiplicity to the function type.
* Disallow linear types in FFI (#18472)Krzysztof Gogolewski2020-09-264-10/+48
|
* Make 'undefined x' linear in 'x' (#18731)Krzysztof Gogolewski2020-09-263-2/+13
|
* Bignum: add bigNatFromWordArraySylvain Henry2020-09-262-0/+45
| | | | Reimplementation of integer-gmp's byteArrayToBigNat#
* Extract SharedIdEnv into its own moduleSebastian Graf2020-09-265-143/+160
| | | | | | It's now named `GHC.Types.Unique.SDFM.UniqSDFM`. The implementation is more clear about its stated goals and supported operations.
* PmCheck: Big refactor of module structureSebastian Graf2020-09-2618-1826/+2001
| | | | | | | | | | | | | | * Move everything from `GHC.HsToCore.PmCheck.*` to `GHC.HsToCore.Pmc.*` in analogy to `GHC.Tc`, rename exported `covCheck*` functions to `pmc*` * Rename `Pmc.Oracle` to `Pmc.Solver` * Split off the LYG desugaring and checking steps into their own modules (`Pmc.Desugar` and `Pmc.Check` respectively) * Split off a `Pmc.Utils` module with stuff shared by `Pmc.{,Desugar,Check,Solver}` * Move `Pmc.Types` to `Pmc.Solver.Types`, add a new `Pmc.Types` module with all the LYG types, which form the interfaces between `Pmc.{Desugar,Check,Solver,}`.
* Various documentation fixesKrzysztof Gogolewski2020-09-259-20/+21
| | | | | | | | | | | * Remove UnliftedFFITypes from conf. Some time ago, this extension was undocumented and we had to silence a warning. This is no longer needed. * Use r'' in conf.py. This fixes a Sphinx warning: WARNING: Support for evaluating Python 2 syntax is deprecated and will be removed in Sphinx 4.0. Convert docs/users_guide/conf.py to Python 3 syntax. * Mark GHCForeignImportPrim as documented * Fix formatting in template_haskell.rst * Remove 'recursive do' from the list of unsupported items in TH
* Fix typed holes causing linearity errors (#18491)Krzysztof Gogolewski2020-09-253-0/+10
|
* Bignum: implement extended GCD (#18427)Sylvain Henry2020-09-2513-30/+1415
|
* Bignum: refactor backend modulesSylvain Henry2020-09-258-38/+53
| | | | | | * move backends into GHC.Num.Backend.* * split backend selection into GHC.Num.Backend and GHC.Num.Backend.Selected to avoid duplication with the Check backend
* Pattern guards BindStmt always use multiplicity ManyArnaud Spiwack2020-09-254-1/+21
| | | | | | | | | Fixes #18439 . The rhs of the pattern guard was consumed with multiplicity one, while the pattern assumed it was Many. We use Many everywhere instead. This is behaviour consistent with that of `case` expression. See #18738.
* Print RET_BIG stack closuresSven Tennie2020-09-251-7/+13
| | | | | | | | | A RET_BIG closure has a large bitmap that describes it's payload and can be printed with printLargeBitmap(). Additionally, the output for payload closures of small and big bitmaps is changed: printObj() is used to print a bit more information about what's on the stack.
* Accept new test output for #17218Sebastian Graf2020-09-252-4/+2
| | | | | | The expected test output was plain wrong. It has been fixed for a long time. Thus we can close #17218.
* Add a regression test for #18609Sebastian Graf2020-09-253-0/+75
| | | | | The egregious performance hits are gone since !4050. So we fix #18609.
* Add regression tests for #18371Sebastian Graf2020-09-253-0/+66
| | | | | They have been fixed by !3959, I believe. Fixes #18371.
* gitlab-ci: Drop Darwin cleanup jobBen Gamari2020-09-251-39/+0
| | | | We now have a proper periodic clean-up script installed on the runners.
* Stop removing definitions of record fields in GHC.Iface.Ext.AstZubin Duggal2020-09-251-16/+10
|
* ci: Add ad-hoc performance testing ruleBen Gamari2020-09-252-0/+64
|
* ci.sh: Factor out common utilitiesBen Gamari2020-09-252-47/+55
|
* Make sizeExpr strict in the size threshold to facilitate WW.Andreas Klebinger2020-09-251-1/+4
|
* Namespace the Hadrian linting rule for baseHécate2020-09-241-6/+6
|
* PmCheck: Desugar string literal patterns with -XRebindableSyntax correctly ↵Sebastian Graf2020-09-244-5/+38
| | | | | | (#18708) Fixes #18708.