PredType for type constraints in the pattern match checker instead of EvVar

Using EvVars for capturing type constraints implied side-effects in DsM
when we just wanted to *construct* type constraints.

But giving names to type constraints is only necessary when passing
Givens to the type checker, of which the majority of the pattern match
checker should be unaware.

Thus, we simply generate `newtype TyCt = TyCt PredType`, which are
nicely stateless. But at the same time this means we have to allocate
EvVars when we want to query the type oracle! So we keep the type oracle
state as `newtype TyState = TySt (Bag EvVar)`, which nicely makes a
distinction between new, unchecked `TyCt`s and the inert set in
`TyState`.
21 jobs for master in 398 minutes and 6 seconds (queued for 11 seconds)
Status Job ID Name Coverage
  Lint
passed #160587
lint
lint-linters

00:00:18

passed #160590
lint
lint-submods-branch

00:00:20

passed #160588
lint
lint-testsuite

00:00:18

passed #160589
lint
typecheck-testsuite

00:00:14

 
  Build
passed #160592
x86_64-linux
hadrian-ghc-in-ghci

00:20:21

passed #160594
x86_64-linux
release-x86_64-linux-deb9-dwarf

01:51:53

passed #160593
x86_64-linux
validate-x86_64-linux-deb9-debug

02:40:55

passed #160591
x86_64-linux
validate-x86_64-linux-deb9-hadrian

01:55:08

 
  Full Build
failed #160596
aarch64-linux allowed to fail
validate-aarch64-linux-deb9

00:58:50

passed #160597
x86_64-linux
validate-i386-linux-deb9

01:02:24

passed #160595
x86_64-darwin
validate-x86_64-darwin

00:56:08

passed #160598
x86_64-linux
validate-x86_64-linux-deb9-integer-simple

01:03:20

passed #160599
x86_64-linux
validate-x86_64-linux-deb9-unreg

03:19:48

passed #160600
x86_64-linux
validate-x86_64-linux-fedora27

00:41:59

failed #160602
x86_64-windows allowed to fail
validate-x86_64-windows

00:04:50

failed #160601
x86_64-windows allowed to fail
validate-x86_64-windows-hadrian

00:06:59

 
  Cleanup
passed #160603
x86_64-darwin
cleanup-darwin

00:00:04

 
  Packaging
failed #160604
x86_64-linux allowed to fail
doc-tarball

00:00:26

 
  Testing
manual #160605
x86_64-linux allowed to fail manual
hackage
passed #160606
x86_64-linux
perf-nofib

00:33:51

 
  Deploy
failed #160607
x86_64-linux allowed to fail
pages

00:02:00

 
Name Stage Failure
failed
pages Deploy
Synchronizing submodule url for 'utils/hsc2hs'
$ git submodule update --init --recursive
$ git checkout .gitmodules
$ git fetch https://gitlab.haskell.org/ghc/ghc-performance-notes.git refs/notes/perf:refs/notes/perf || true
$ mkdir -p public/doc
$ tar -xf haddock.html.tar.xz -C public/doc
tar: haddock.html.tar.xz: Cannot open: No such file or directory
tar: Error is not recoverable: exiting now
ERROR: Job failed: exit code 1
failed
validate-x86_64-windows-hadrian Full Build
Runtime platform                                    arch=amd64 os=windows pid=4368 revision=1f513601 version=11.10.1
WARNING: ghc.tar.xz: no matching files
WARNING: junit.xml: no matching files
ERROR: No files to upload
Uploading artifacts...
Runtime platform
arch=amd64 os=windows pid=4956 revision=1f513601 version=11.10.1
WARNING: junit.xml: no matching files
ERROR: No files to upload
ERROR: Job failed: exit status 9
failed
validate-aarch64-linux-deb9 Full Build
$ cp -Rf $HOME/.cabal cabal-cache
Uploading artifacts...
WARNING: ghc-*.tar.xz: no matching files
WARNING: junit.xml: no matching files
ERROR: No files to upload
Uploading artifacts...
WARNING: junit.xml: no matching files
ERROR: No files to upload
ERROR: Job failed: exit code 1
failed
validate-x86_64-windows Full Build
Runtime platform                                    arch=amd64 os=windows pid=416 revision=1f513601 version=11.10.1
WARNING: ghc-*.tar.xz: no matching files
WARNING: junit.xml: no matching files
ERROR: No files to upload
Uploading artifacts...
Runtime platform
arch=amd64 os=windows pid=772 revision=1f513601 version=11.10.1
WARNING: junit.xml: no matching files
ERROR: No files to upload
ERROR: Job failed: exit status 9
failed
doc-tarball Packaging
Synchronizing submodule url for 'utils/hsc2hs'
$ git submodule update --init --recursive
$ git checkout .gitmodules
$ git fetch https://gitlab.haskell.org/ghc/ghc-performance-notes.git refs/notes/perf:refs/notes/perf || true
From https://gitlab.haskell.org/ghc/ghc-performance-notes
a096af9e3a..86fa59abba refs/notes/perf -> refs/notes/perf
$ if [ ! -f "$LINUX_BINDIST" ]; then # collapsed multi-line command
Error: ghc-x86_64-mingw32.tar.xz does not exist. Did the 64-bit Windows job fail?
ERROR: Job failed: exit code 1