summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Delete recursive type check from DmdAnal and see where it breakswip/no-rec-checkSebastian Graf2019-07-231-2/+1
|
* ghc-cabal: Use fromFlagOrDefault instead of fromFlagBen Gamari2019-07-211-2/+2
| | | | | As fromFlag is partial. The only case where we used fromFlag is when determining whether to strip libraries; we now assume that we shouldn't.
* Fix #8487: Debugger confuses variablesRoland Senn2019-07-217-13/+79
| | | | | | | | | | To display the free variables for a single breakpoint, GHCi pulls out the information from the fields `modBreaks_breakInfo` and `modBreaks_vars` of the `ModBreaks` data structure. For a specific breakpoint this gives 2 lists of types 'Id` (`Var`) and `OccName`. They are used to create the Id's for the free variables and must be kept in sync: If we remove an element from the Names list, then we also must remove the corresponding element from the OccNames list.
* Do not ignore events deletion when events to be added are provided (#16916)Ivan Kasatenko2019-07-214-4/+51
| | | | | | | | | | | Kqueue/kevent implementation used to ignore events to be unsubscribed from when events to be subscribed to were provided. This resulted in a lost notification subscription, when GHC runtime didn't listen for any events, yet the kernel considered otherwise and kept waking up the IO manager thread. This commit fixes this issue by always adding and removing all of the provided subscriptions.
* Expose the GhcPrelude module.Andreas Klebinger2019-07-211-3/+1
| | | | | | | | | | This makes it simpler to load Modules importing it when using ghc-the-package. ------------------------- Metric Decrease: haddock.compiler -------------------------
* hadrian: Remove RTS -Waggregate-return warningMatthew Pickering2019-07-201-1/+0
| | | This was removed from make in 077b92fa39839a8e83cd87398435424403cf6486
* Bump nofib submodule.Andreas Klebinger2019-07-201-0/+0
|
* Line wrap when pp long expressions (fixes #16874)Alfredo Di Napoli2019-07-205-2/+27
| | | | | This commit fixes #16874 by using `fsep` rather than `sep` when pretty printing long patterns and expressions.
* Added do-notation examples for Functor, Applicative and Monad combinators.Baldur Blöndal2019-07-204-0/+179
|
* Add module doc for Plugins.Richard Eisenberg2019-07-191-0/+5
| | | | This was requested in #15650.
* Don't maintainer-clean libraries/ghc-boot/ghc.mk (#16953)Ryan Scott2019-07-191-1/+5
| | | | | | | | | This makes the `maintainer-clean` rule in `ghc.mk` slightly more sophisticated so that it does not remove the version-controlled file `libraries/ghc-boot/ghc.mk`, which was checked into version control in commit 24782b89907ab36fb5aef3a17584f4c10f1e2690. Fixes #16953.
* users-guide: corrected -fmax-relevant-binds reverse to be ↵James Foster2019-07-191-3/+3
| | | | -fno-max-relevant-binds
* Make generated ghc-stage<n> scripts executableSebastian Graf2019-07-191-3/+4
|
* Fix #16870 by improving documentation (only)Richard Eisenberg2019-07-192-6/+4
|
* Drop the orphan roles check (#16941)Vladislav Zavialov2019-07-192-38/+13
| | | | | | | | 9366e019 introduced a check for orphan roles to fix #8485 6ab5da99 changed the lookup code and made the check redundant. Now it is removed.
* Hide "Loading package environment" message with -v0 (fix #16879)Artem Pelenitsyn2019-07-192-169/+170
|
* testsuite: Mark T4808 as broken in threaded2 wayBen Gamari2019-07-181-1/+1
| | | | As noted in #16909.
* testsuite: Unmark recomp007 as brokenBen Gamari2019-07-181-1/+0
| | | | Fixed in #14759.
* testsuite: Mark test-hole-plugin as req_thBen Gamari2019-07-181-1/+2
| | | | | This requires code loading and therefore can't be run in the profiled ways when GHC is dynamically linked.
* testsuite: Skip forking tests in profiled waysBen Gamari2019-07-182-0/+0
| | | | | | | As noted in #11645 and #8862, forking and profiling don't go well together. Bumps hpc and unix submodules.
* testsuite: Fix some ints used as boolsBen Gamari2019-07-181-10/+10
|
* testsuite: Print output from hp2psBen Gamari2019-07-181-1/+1
|
* testsuite: Mark hWaitForInput-accurate-stdin as broken in all threaded waysBen Gamari2019-07-181-1/+1
| | | | Previously it was not marked as broken in profthreaded
* Fix formatting of --info's "Debug on" fieldBen Gamari2019-07-182-4/+2
| | | | | | As noted in #16914, the value `True` was used instead of `YES` here, in contrast to the other boolean fields emitted by `--info`. This confused the testsuite driver and broke the `ghc_debugged` testsuite predicate.
* testsuite: Fix req_thBen Gamari2019-07-182-1/+4
|
* testsuite: Set -dinitial-unique when reversing uniquesBen Gamari2019-07-183-3/+3
| | | | | Otherwise the unique counter starts at 0, causing us to immediately underflow.
* testsuite: Mark static-plugins as broken in profiled waysBen Gamari2019-07-181-0/+1
| | | | See #16803.
* Add HasDebugCallStack to unionListsBen Gamari2019-07-181-1/+1
| | | | This should help identify a few cases where this is throwing warnings
* testsuite: More type checking fixesBen Gamari2019-07-186-98/+174
|
* gitlab-ci: Run slow validate in -debug jobBen Gamari2019-07-181-0/+2
| | | | | | | | Otherwise we don't compile the stage2 compiler with DEBUG, meaning the testsuite isn't checked with assertions. Metric Increase: haddock.Cabal
* Make GHC-in-GHCi work on WindowsSebastian Graf2019-07-174-6/+12
| | | | | | | | By not building anything in the dynamic way on Windows, where we don't have a working story for DLLs yet. Also the ghcid command needs to call bash on the hadrian/ghci.sh script explicitly as the path gets interpreted differently otherwise.
* Create {Int,Word}32RepJohn Ericson2019-07-1712-45/+81
| | | | | | | This prepares the way for making Int32# and Word32# the actual size they claim to be. Updates binary submodule for (de)serializing the new runtime reps.
* rts: Rename the nondescript initProfiling2 to refreshProfilingCCSsDaniel Gröber2019-07-163-6/+5
|
* rts: Divorce init of Heap profiler from CCS profilerDaniel Gröber2019-07-164-79/+52
| | | | | | | | | Currently initProfiling gets defined by Profiling.c only if PROFILING is defined. Otherwise the ProfHeap.c defines it. This is just needlessly complicated so in this commit I make Profiling and ProfHeap into properly seperate modules and call their respective init functions from RtsStartup.c.
* Revert "Add support for SIMD operations in the NCG"Ben Gamari2019-07-1645-1512/+246
| | | | | | | Unfortunately this will require more work; register allocation is quite broken. This reverts commit acd795583625401c5554f8e04ec7efca18814011.
* Sort out Hadrian colored output flags (fix #16397)Artem Pelenitsyn2019-07-164-38/+20
| | | | | | | | | | Hadrian used to have a separate flag --progress-colour to control colored output during the build. After introduction of a Shake flag with similar purpose Hadrian's flag became redundant. The commit removes --progress-colour and switches to Shake's flag. The only difference between the two is that Hadrian has special default mode when it tries to determine if the terminal support colored output. The user can override it using (Shake's) `--[no-]color`.
* PV is not P (#16611)Vladislav Zavialov2019-07-152-42/+133
|
* Decouple AddAnn from PVladislav Zavialov2019-07-153-14/+13
|
* Add a note in the simplifier about in-scope set as a substitutionArnaud Spiwack2019-07-153-5/+45
| | | | See also the discussion at #16592
* gitlab-ci: Disable submodule linter for nowBen Gamari2019-07-151-1/+2
|
* primops: haddock: Fix typo in referenced function.Niklas Hambüchen2019-07-141-1/+1
| | | Found by @lehins.
* rename type parameter in `instance Applicative ((->) a)`, fixing #16928xplorld2019-07-144-4/+4
|
* Expunge #ifdef and #ifndef from the codebaseJohn Ericson2019-07-1459-108/+108
| | | | | | | | These are unexploded minds as far as the linter is concerned. I don't want to hit in my MRs by mistake! I did this with `sed`, and then rolled back some changes in the docs, config.guess, and the linter itself.
* Make CPP linter skip certain filesJohn Ericson2019-07-141-0/+7
| | | | | | - docs which document the lint and need to contain the unutterable - vendored code which is outside our purview
* Remove LLVM_TARGET platform macrosJohn Ericson2019-07-147-6/+8
| | | | | Instead following @angerman's suggestion put them in the config file. Maybe we could re-key llvm-targets someday, but this is good for now.
* Don't package settings in bindistBen Gamari2019-07-142-3/+3
| | | | | | | | | | | | Since !712 the `settings` file is produced by the build system instead of autoconf. However, this introduced a subtle bug where we would fail to rebuild the `settings` file with what we have learned from the install-time `configure` invocation. Fix this by not packaging `settings` in the bindist tarball. The build system will take care of the rest. Also fix a bug where the value of `UseLibdw` was not being persisted to the install time `configure`.
* hadrian: Build debug rts with -O0 -g3 and disable rts strippingMatthew Pickering2019-07-142-1/+6
| | | | Fixes #16920
* Remove purely external primopsJohn Ericson2019-07-146-37/+149
| | | | | | | | | | | | The compiler doesn't create uses nor compiles the uses that exist specially. These are just plain C-- FFI. These `await*` ones are especially important to so convert because "true" primops are hard to make platform-specific currently. The other exports are part of this commit so this module always exports something, which avoids silly CPP elsewhere. More will be added later once `foreign import prim` is extended.
* Minor refactoring in CmmBuildInfoTablesÖmer Sinan Ağacan2019-07-131-5/+3
| | | | | - Replace `catMaybes (map ...)` with `mapMaybe ...` - Remove a list->set->list conversion
* Make HsInstances and DynFlags compile with -O0 for Stage0 to speed up ↵James Foster2019-07-131-3/+8
| | | | Hadrian builds (fixes #16936)