| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
| |
The Stack build script `build.stack.bat` currently fails on Windows
when invoked with the `--configure` flag, see:
https://ghc.haskell.org/trac/ghc/ticket/15982
The Cabal build script `build.cabal.bat` works reliably on my Windows
machine, so I am proposing to switch to it by default, that is, to run
it from the default `build.bat` script.
The Stack build script can still be run directly if need be.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
This fixes #15471
In the typechecker we check that the splice has the right type but we
crucially don't zonk the generated expression. This is because we might
end up unifying type variables from outer scopes later on.
Reviewers: simonpj, goldfire, bgamari
Subscribers: rwbarton, carter
GHC Trac Issues: #15471
Differential Revision: https://phabricator.haskell.org/D5286
|
|
|
|
|
| |
This helped me debug one of the bugs in #15508. I'm not sure if this is
a good idea, but it worked for me, so wanted to submit this as a MR.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This ticket enables the building of a `stage3` compiler by making the
build logic more consistent and predictable in Hadrian.
Two of the main changes are:
1. In order to build anything at stageN we use the package database
present at stageN. Fixing #16069
2. `haddock` and `ghc-tags` are built
as stage1 executables (with the stage1 compiler) rather than as
stage2 compiler. Fixing
[hadrian#661](https://github.com/snowleopard/hadrian/issues/661)
In order to build a stage3 compiler, you have to set the new `finalStage` hadrian option to `Stage3`.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
We currently permit any and all uses of unsaturated type
synonyms and type families in GHCi's `:kind` command, which allows
strange interactions like this one:
```
> :set -XTypeFamilies -XPolyKinds
> type family Id (a :: k)
> type instance Id a = a
> type Foo x = Maybe
> :kind! Id Foo
```
This is probably a stretch too far, so this patch moves to disallow
unsaturated synonyms that aren't at the top level (we still want to
allow `:kind Id`, for instance). We do this by augmenting `GhciCtxt`
with an additional `Bool` field to indicate if we are at the
outermost level of the type being passed to `:kind` or not. See
`Note [Unsaturated type synonyms in GHCi]` in `TcValidity` for the
full story.
Test Plan: make test TEST=T16013
Reviewers: goldfire, bgamari
Reviewed By: goldfire
Subscribers: simonpj, goldfire, rwbarton, carter
GHC Trac Issues: #16013
Differential Revision: https://phabricator.haskell.org/D5471
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
We use 'gcc -B<base-location> --print-file-name mylib.a' as a way of
checking if 'gcc' can discover 'mylib.a' at the given location. However,
this can break down if there is a folder caller 'mylib.a' that 'gcc' can
discover. We can guard against this by explicitly checking that the path
returned by 'gcc' is a file.
This may seem like a far-fetched scenario, but since
3d17f1f10fc00540ac052f2fd03182906aa47e35, we look for libraries without
any prefix or suffix (ie. 'extra-libraries: softfloat', we look for just
'softfloat' as well as 'softloat.a', 'softfloat.dll.a', etc.) which means
that there might actusally be a folder of that name in one of the base
locations.
Reviewers: Phyx, bgamari, hvr, angerman
Reviewed By: Phyx, angerman
Subscribers: angerman, rwbarton, carter
GHC Trac Issues: #16063
Differential Revision: https://phabricator.haskell.org/D5462
|
|
|
|
| |
Debian Jessie only runs Python 3.4, whereas typing was introduced in Python 3.5.
|
|
|
|
| |
This ensures that changes requiring haddock changes can be built under CI.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is the hadrain version of {D5169}
* We build squashed .o and .p_o for ghci when `dynamicGhcPrograms` is
`False`
* We no longer build them for rts as ghci never loads it
we need https://github.com/haskell/cabal/pull/5592 for cabal to copy
the built `.p_o` file.
Test Plan:
```
$ grep dynamicGhc hadrian/UserSettings.hs
, dynamicGhcPrograms = return False
$ touch ...
$ hadrian/build.sh --flavour=user -j --digest-or
$ find _build/stage1/libraries/ -name 'HS*-*.*o' | wc
62 62 3664
```
```
$ grep -C3 dynamicGhc hadrian/UserSettings.hs
userFlavour :: Flavour
userFlavour = performanceFlavour
{ name = "user"
, dynamicGhcPrograms = return False
}
$ hadrian/build.sh -j --flavour=user test --verbose
Unexpected results from:
TEST="T3807 T9208 T9293 annth_make ghci057 haddock.Cabal haddock.base
haddock.compiler"
SUMMARY for test run started at Wed Dec 5 17:45:39 2018 PST
0:03:16 spent to go through
6708 total tests, which gave rise to
26015 test cases, of which
19290 were skipped
29 had missing libraries
6600 expected passes
88 expected failures
3 caused framework failures
0 caused framework warnings
1 unexpected passes
7 unexpected failures
0 unexpected stat failures
$ find _build -name 'HSbase*.*o'
_build/stage1/lib/x86_64-linux-ghc-8.7.20181204/base-4.12.0.0/HSbase-4.1
2.0.0.o
_build/stage1/lib/x86_64-linux-ghc-8.7.20181204/base-4.12.0.0/HSbase-4.1
2.0.0.p_o
_build/stage1/libraries/base/build/HSbase-4.12.0.0.o
_build/stage1/libraries/base/build/HSbase-4.12.0.0.p_o
```
Reviewers: bgamari, simonmar, snowleopard
Reviewed By: snowleopard
Subscribers: alpmestan, rwbarton, carter
GHC Trac Issues: #15779
Differential Revision: https://phabricator.haskell.org/D5270
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
https://phabricator.haskell.org/D5169 built libghci for both vanilla way
and profiling way. We need to include both in the bindist list so they
will be installed.
Test Plan:
```
$ grep '^BuildFlavour' mk/build.mk
BuildFlavour=perf
$ make test_bindist
$ grep HSghc-prim bindist-list.uniq
ghc-8.7.20190101/libraries/ghc-prim/dist-install/build/HSghc-prim-0.5.3.o
ghc-8.7.20190101/libraries/ghc-prim/dist-install/build/HSghc-prim-0.5.3.p_o
ghc-8.7.20190101/libraries/ghc-prim/dist-install/build/libHSghc-prim-0.5.3.a
ghc-8.7.20190101/libraries/ghc-prim/dist-install/build/libHSghc-prim-0.5.3-ghc8.7.20190101.so
ghc-8.7.20190101/libraries/ghc-prim/dist-install/build/libHSghc-prim-0.5.3_p.a
```
|
|
|
|
|
|
|
|
|
|
| |
Currently build logs from GitLab CI around around 7 megabytes each. Of this,
around 2 megabytes is latex output. This is quite silly as essentially all of
this output is unresolved references in the early latex iterations.
Here we silence this output.
However, to make sure that we don't silence errors we allow each xelatex
invocation besides the last to fail.
|
|
|
|
| |
GHC Trac Issues: #15447
|
|
|
|
| |
Carter says that the builder issues have now been sorted.
|
| |
|
|
|
|
|
| |
Use `showsPrec` instead of `show` to respect the precedence of the surrounding
context.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Warn users when -XDerivingStrategies is enabled but not used, at each
potential use site.
add -Wmissing-deriving-strategies
Reviewers: bgamari, RyanGlScott
Subscribers: andrewthad, rwbarton, carter
GHC Trac Issues: #15798
Differential Revision: https://phabricator.haskell.org/D5451
|
|
|
|
|
|
|
|
| |
Summary:
This was broken when PromptFunction was introduced that the settings are
ignored and default values are always used.
Test Plan: ./validate
|
| |
|
|
|
|
| |
Fixes #16131
|
|
|
|
|
| |
Previously haddock would link 'Maybe' to GHC.Maybe.
Now it links to Data.Maybe.
|
|
|
|
| |
[ci skip]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
This patch implements visible kind application (GHC Proposal 15/#12045), as well as #15360 and #15362.
It also refactors unnamed wildcard handling, and requires that type equations in type families in Template Haskell be
written with full type on lhs. PartialTypeSignatures are on and warnings are off automatically with visible kind
application, just like in term-level.
There are a few remaining issues with this patch, as documented in
ticket #16082.
Includes a submodule update for Haddock.
Test Plan: Tests T12045a/b/c/TH1/TH2, T15362, T15592a
Reviewers: simonpj, goldfire, bgamari, alanz, RyanGlScott, Iceland_jack
Subscribers: ningning, Iceland_jack, RyanGlScott, int-index, rwbarton, mpickering, carter
GHC Trac Issues: `#12045`, `#15362`, `#15592`, `#15788`, `#15793`, `#15795`, `#15797`, `#15799`, `#15801`, `#15807`, `#15816`
Differential Revision: https://phabricator.haskell.org/D5229
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Modify old filename `.lhs` to `.hs` in the following file:
* docs/stg-spec/StgSyn.ott
Since PDF has not been registered in the past, I have not committed generated PDF(`stg-spec.pdf`).
[ci skip]
|
|
|
|
|
|
|
|
| |
Modify old filename `.lhs` to `.hs` in following file:
* docs/core-spec/core-spec.pdf (generated PDF)
[ci skip]
|
|
|
|
|
|
|
|
|
|
|
| |
Modify old filename `.lhs` to `.hs` in following files:
* docs/core-spec/README
* docs/core-spec/CoreLint.ott
* docs/core-spec/CoreSyn.ott
* docs/core-spec/core-spec.mng
[ci skip]
|
|
|
|
|
|
| |
of the GHC var
Also updates the windows gitlab ci to use the new configure variables.
|
|
|
|
|
|
|
| |
Support for Mac OS X on PowerPC has been dropped by Apple years ago. We
follow suit and remove PowerPC support for Darwin.
Fixes #16106.
|
|
|
|
|
|
|
| |
... for testing presence of NCG
This commit adds a criterion for checking whether we can expect sensible
output from --ddump-asm.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Build failure on OpenBSD-6.4 the the following:
```
rts/RtsSymbols.c:994:1: error:
error: redefinition of '_DYNAMIC' as different kind of symbol
|
994 | RTS_OPENBSD_ONLY_SYMBOLS
| ^
RTS_OPENBSD_ONLY_SYMBOLS
^
```
On OpenBSD `_DYNAMIC` was always defined in `<elf.h>` headers
but used not to be included.
The change explicitly includes `<elf.h>` as a source of symbol definition.
Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
Test Plan: build-tested on OpenBSD-6.4
Reviewers: bgamari, erikd, simonmar
Subscribers: rwbarton, carter
GHC Trac Issues: #15945
Differential Revision: https://phabricator.haskell.org/D5461
|
|
|
|
|
|
| |
This disables `ghcilink005`, `foreignInterruptable`, and `T7040_ghci` in
the unregisterised build as they tend to fail non-deterministically. See
ticket #16085.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We want to match the behaviour of `Integer` as well as
`Integer`/`Natural` from `integer-gmp`, namely to have
divMod x 0 = _|_
not
divMod x 0 = (_|_, _|_)
See #16091 for an example of where this matters.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Initially -fno-stack-protector was added for openbsd specifically for ghc-6.5:
changeset:f638fdfe1d9de1307355c8074fbff9c28342c0ef (2006)
and later it was extended to cover osx:
changeset:c2cd83e7d85c11e6a33e1cde263eb2312566d535 (2009)
None of the reports hint at exact breakage. I guess both happened
in -fvia-C mode where GHC's Evil Mangler had a chance to mangle
stack canaries generated by fstack-protector.
ghc has no evil mangler anymore and the change is not needed
at least for C codegen.
validated the patch on OpenBSD-6.4. No new failures compared to
clean master branch.
Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
Test Plan: validated on OpenBSD
Reviewers: bgamari
Subscribers: rwbarton, erikd, carter
GHC Trac Issues: #16046
Differential Revision: https://phabricator.haskell.org/D5465
|
|
|
|
|
|
| |
It seems no matter how many machines I throw at Windows it's constantly behind.
Perhaps the quick build flavour will be fast enough to allow us to keep until
while we sort out our toolchain issues (#16084).
|
|
|
|
| |
While we sort out #16084.
|
|
|
|
| |
The last step of #15915.
|
|
|
|
|
|
|
|
| |
As reported in #15382 the `ASSERT(ctr != NULL)` is currently getting routinely
hit during testsuite runs. While this is certainly a bug I would far prefer
getting a proper error message than a segmentation fault. Consequently I'm
turning the `ASSERT` into a proper `if` so we get a proper error in non-debug
builds.
|
|
|
|
| |
As noted in #16085 this test is fragile in unregisterised compilers.
|
|
|
|
|
| |
It seems like currently the runner doesn't delete the working tree after
finishing a job. At least we can delete the binary artifacts for now.
|
| |
|
|
|
|
|
|
|
| |
I have seen several instances of inexplicable "Access denied" errors on Windows.
Using per-build temporary directories avoids any chance of interference between
builds and eliminates the possibility of temporary files leaking beyond the life
of the build.
|
|
|
|
| |
This reverts commit 442be690e1ca162e22d632df695c29f90625f33e.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Mark arith011 as broken with integer-simple
As noted in #16091, arith011 fails when run against integer-simple with a
"divide by zero" exception. This suggests that integer-gmp and integer-simple
are handling division by zero differently.
* This also fixes broken_without_gmp; the lack of types made the previous
failure silent, sadly. Improves situation of #16043.
* Mark several tests implicitly depending upon integer-gmp as broken
with integer-simple. These expect to see Core coming from integer-gmp,
which breaks with integer-simple.
* Increase runtime timeout multiplier of T11627a with integer-simple
I previously saw that T11627a timed out in all profiling ways when run against
integer-simple. I suspect this is due to integer-simple's rather verbose heap
representation. Let's see whether increasing the runtime timeout helps.
Fixes test for #11627.
This is all in service of fixing #16043.
|
|
|
|
|
|
| |
The retainer profiler no longer uses the C stack for its mark stack (#14758).
Consequently even the small C stack provided on Darwin should be sufficient to
run this test. See #11627
|
|
|
|
|
| |
The representation of Integer depends upon the choice of integer backend whereas
Char should be consistent.
|