summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* testsuite: Don't check_stats at runtime if not requestedwip/T17387Ben Gamari2019-11-101-4/+9
| | | | | | Previously we would call check_stats to check the runtime metrics even if the test definition hadn't requested it. This would result in an error since the .stats file doesn't exist.
* testsuite: Use small allocation area when measuring residencyBen Gamari2019-11-105-83/+67
| | | | | | | | | | | | | | | | | | | | | | | | | | As suggested in #17387; this helps reduce the variance in our residency sampling. Metric Increase: T10370 T3586 lazy-bs-alloc Metric Decrease 'compile_time/peak_megabytes_allocated': T1969 Metric Decrease 'runtime/bytes allocated': space_leak_001 Metric Increase 'compile_time/bytes allocated': T1969 Metric Increase 'runtime/peak_megabytes_allocated': space_leak_001 Metric Decrease: T3064 T9675
* testsuite: Mark tests fragile in threaded2 as fragile in all concurrent waysBen Gamari2019-11-106-4/+4
|
* Fix #17405 by not checking imported equationsRichard Eisenberg2019-11-1017-177/+241
| | | | | | | | | | | | | Previously, we checked all imported type family equations for injectivity. This is very silly. Now, we check only for conflicts. Before I could even imagine doing the fix, I needed to untangle several functions that were (in my opinion) overly complicated. It's still not quite as perfect as I'd like, but it's good enough for now. Test case: typecheck/should_compile/T17405
* Update release notes about #16512 / #17405.Richard Eisenberg2019-11-101-0/+12
|
* Improve SPECIALIZE pragma error messages (Fixes #12126)Alina Banerjee2019-11-106-8/+10
|
* Fix incorrect pluralsBrian Wignall2019-11-091-1/+1
|
* Incorporate MR review suggestions; add change in changelogBrian Wignall2019-11-092-3/+6
|
* Add IsList instance for ZipList (closes #17433)ghc-8.11-startBrian Wignall2019-11-091-1/+9
|
* Use the right type in :forceSimon Peyton Jones2019-11-095-3/+31
| | | | | | | | A missing prime meant that we were considering the wrong type in the GHCi debugger, when doing :force on multiple arguments (issue #17431). The fix is trivial.
* testsuite: Mark T16219 as fragile on WindowsBen Gamari2019-11-091-1/+2
| | | | | | As noted in #17452, this test produces very long file paths which exceed the Windows MAX_PATH limitation. Mark the test as fragile for not until we can come up with a better solution.
* testsuite: Drop T7995Ben Gamari2019-11-093-12/+0
| | | | | | | | | | | This test is quite sensitive to the build configuration as it requires that ghc have unfoldings, which isn't true in the quick build flavours. I considered various options to make the test more robust but none of them seemed particularly appealing. Moreover, Simon PJ was a bit skeptical of the value of the test to begin with and I strongly suspect that any regression in #7995 would be accompanied by failures in our other compiler performance tests. Closes #17399.
* testsuite: Fix putStrLn in saks028Ben Gamari2019-11-091-1/+2
| | | | | | | | | | | | | | | | | Bizarrely, `saks028` previously failed reliably, but only on Windows (#17450). The test would exit with a zero exit code but simply didn't emit the expected text to stderr. I believe this was due to the fact that the test used `putStrLn`, resulting in the output ending up on stdout. This worked on other platforms since (apparently) we redirect stdout to stderr when evaluating splices. However, on Windows it seems that the redirected output wasn't flushed as it was on other platforms. Anyways, it seems like the right thing to do here is to be explicit about our desire for the output to end up on stderr. Closes #17450.
* testsuite: Ignore stderr in PartialDownsweepBen Gamari2019-11-093-35/+1
| | | | | | | | | As described in #17449, PartialDownsweep is currently fragile due to its dependence on the error messages produced by the C preprocessor. To eliminate this dependence we simply ignore stderr output, instead relying on the fact that the test will exit with a non-zero exit code on failure. Fixes #17449.
* testsuite: Mark T17414 as fragile on WindowsBen Gamari2019-11-091-1/+5
| | | | | | This consistently times out on Windows as described in #17453. I have tried increasing the timeout multiplier to two yet it stills fails. Disabling until we have time to investigate.
* testsuite: Remove redundant cleaning logic from T16511Ben Gamari2019-11-091-3/+0
| | | | | | | | | | | | The GHCi script for T16511 had some `rm` commands to clean up output from previous runs. This should be harmless since stderr was redirected to /dev/null; however, it seems that this redirection doesn't work on Windows (perhaps because GHCi uses `cmd` to execute the command-line; I'm not sure). I tried to fix it but was unable to find a sensible solution. Regardless, the cleaning logic is quite redundant now that we run each test in a hermetic environment. Let's just remove it.
* testsuite: Mark T16219 as unbrokenBen Gamari2019-11-091-2/+1
| | | | This was previously broken due to #16386 yet it passes for me locally.
* testsuite: Mark T11627b as fragileBen Gamari2019-11-091-2/+1
| | | | | It was previously marked as broken due to #12236 however it passes for me locally while failing on CI.
* testsuite: Mark T13676 as broken on Darwin and WindowsBen Gamari2019-11-091-2/+3
| | | | Due to #17447.
* testsuite: Fix header #include order on WindowsBen Gamari2019-11-091-2/+3
| | | | <Rts.h> must always come first.
* gitlab-ci: Don't allow Windows make job to failBen Gamari2019-11-091-2/+0
| | | | | | While linking is still slow (#16084) all of the correctness issues which were preventing us from being able to enforce testsuite-green on Windows are now resolved.
* testsuite: Skip T14931 on WindowsBen Gamari2019-11-091-1/+3
| | | | This test uses -dynamic-too, which is not supported on Windows.
* testsuite: Skip T16916 on WindowsBen Gamari2019-11-091-1/+2
| | | | The event manager is not supported on Windows.
* testsuite: Fix Windows cleanup pathBen Gamari2019-11-091-2/+2
| | | | This was a regression introduced with the Path refactoring.
* template-haskell: Fix italics in changelogRyan Scott2019-11-091-2/+2
| | | | [ci-skip]
* base: Fix TBA in changelogBen Gamari2019-11-091-2/+2
|
* template-haskell: Fix TBAs in changelogBen Gamari2019-11-091-2/+2
|
* template-haskell: Document assembler foreign file supportBen Gamari2019-11-092-0/+4
| | | | See #16180.
* Bump unix submoduleBen Gamari2019-11-081-0/+0
| | | | Marks executeFile001 as broken in all concurrent ways.
* rts/nonmoving: Catch failure of createOSThreadBen Gamari2019-11-081-2/+4
|
* testsuite: Run tests in nonmoving_thr in speed==slowBen Gamari2019-11-081-0/+2
|
* SetLevels: Don't set context level when floating casesBen Gamari2019-11-084-5/+53
| | | | | | | | | | | When floating a single-alternative case we previously would set the context level to the level where we were floating the case. However, this is wrong as we are only moving the case and its binders. This resulted in #16978, where the disrepancy caused us to unnecessarily abstract over some free variables of the case body, resulting in shadowing and consequently Core Lint failures. (cherry picked from commit a2a0e6f3bb2d02a9347dec4c7c4f6d4480bc2421)
* hadrian: Add enableTickyGhc helperBen Gamari2019-11-081-1/+12
| | | | | This took a bit of trial-and-error to get working so it seems worth having in the tree.
* Set correct length of DWARF .debug_aranges section (fixes #17428)Szymon Nowicki-Korgol2019-11-081-1/+2
|
* Testsuite: Introduce req_rts_linkerStefan Schulze Frielinghaus2019-11-0816-37/+38
| | | | | Some tests depend on the RTS linker. Introduce a modifier to skip such tests, in case the RTS linker is not available.
* users_guide: Set flags list file encodingBen Gamari2019-11-071-1/+1
| | | | Otherwise this fails on Windows.
* rts/NonMoving: Fix various Windows build issuesBen Gamari2019-11-072-5/+6
| | | | | The Windows build seems to be stricter about not providing threading primitives in the non-threaded RTS.
* base: Add missing imports in Windows locking implementationBen Gamari2019-11-071-0/+3
|
* rts: Remove undesireable inline specifierBen Gamari2019-11-071-1/+1
| | | | | I have no idea why I marked this as inline originally but clearly it shouldn't be inlined.
* rts: Ensure that Rts.h is always included firstBen Gamari2019-11-077-6/+18
| | | | | | | | | | In general this is the convention that we use in the RTS. On Windows things actually fail if we break it. For instance, you see things like: includes\stg\Types.h:26:9: error: warning: #warning "Mismatch between __USE_MINGW_ANSI_STDIO definitions. If using Rts.h make sure it is the first header included." [-Wcpp]
* rts: Fix m32 allocator build on WindowsBen Gamari2019-11-073-5/+9
| | | | | An inconsistency in the name of m32_allocator_flush caused the build to fail with a missing prototype error.
* Bump hsc2hs submoduleBen Gamari2019-11-071-0/+0
|
* Bump the process submoduleBen Gamari2019-11-071-0/+0
| | | | | This should fix the #17108 and #17249 with the fix from https://github.com/haskell/process/pull/159.
* hadrian: fix support for the recording of perf test resultsAlp Mestanogullari2019-11-072-3/+19
| | | | | | | | | | Before this patch, Hadrian didn't care about the TEST_ENV and METRICS_FILE environment variables, that the performance testing infrastructure uses to record perf tests results from CI jobs. It now looks them up right before running the testsuite driver, and passes suitable --test-env/--metrics-file arguments when these environment variables are set.
* configure: Modify ERROR to WARN for sphinx's python checkTakenobu Tani2019-11-071-1/+2
| | | | | | | | | | | | If sphinx's python version check failed, many people prefer to build without documents instead of stopping on the error. So this commit fixes the following: * Modify AC_MSG_ERROR to AC_MSG_WARN * Add clearing of SPHINXBUILD variable when check fails See also !2016.
* Bump libffi-tarballs submoduleStefan Schulze Frielinghaus2019-11-071-0/+0
|
* FlagChecker: Add ticky flags to hashed flagsBen Gamari2019-11-071-1/+5
| | | | These affect output and therefore should be part of the flag hash.
* For s390x issue a warning if LLVM 9 or older is usedStefan Schulze Frielinghaus2019-11-071-0/+6
| | | | | For s390x the GHC calling convention is only supported since LLVM version 10. Issue a warning in case an older version of LLVM is used.
* Clean up TH's treatment of unary tuples (or, #16881 part two)Ryan Scott2019-11-0720-76/+210
| | | | | | | | | | | | | | !1906 left some loose ends in regards to Template Haskell's treatment of unary tuples. This patch ends to tie up those loose ends: * In addition to having `TupleT 1` produce unary tuples, `TupE [exp]` and `TupP [pat]` also now produce unary tuples. * I have added various special cases in GHC's pretty-printers to ensure that explicit 1-tuples are printed using the `Unit` type. See `testsuite/tests/th/T17380`. * The GHC 8.10.1 release notes entry has been tidied up a little. Fixes #16881. Fixes #17371. Fixes #17380.
* Adding examples to Semigroup/monoidDan Brooks2019-11-062-0/+21
|