Skip to content
Snippets Groups Projects
Forked from Glasgow Haskell Compiler / GHC
1425 commits behind the upstream repository.
Ryan Scott's avatar
Ryan Scott authored
We need to ensure that when we convert an `InvisP` (invisible type pattern) to
a `Pat`, we parenthesize it (at precedence `appPrec`) so that patterns such as
`@(a :: k)` will parse correctly when roundtripped back through the parser.

Fixes #25209.
c2525e9e
History
Code owners
Assign users and groups as approvers for specific file changes. Learn more.

GHC Testsuite Readme

For the full testsuite documentation, please see here.

Quick Guide

Commands to run testsuite:

  • Full testsuite: hadrian/build test
  • Using more threads: hadrian/build test -j12
  • Reduced (fast) testsuite: hadrian/build test --test-speed=fast
  • Run a specific test: hadrian/build test --only="tc055 tc054"
  • Test a specific 'way': hadrian/build test --test-way=optllvm
  • Skip performance tests: hadrian/build test --skip-perf
  • Set verbosity: hadrian/build test --test-verbose=<n> where n=0: No per-test output, n=1: Only failures, n=2: Progress output, n=3: Include commands called (default), n=4: Include perf test results unconditionally, n=5: Echo commands in subsidiary make invocations

Testsuite Ways

The testsuite can be run in a variety of 'ways'. This concept refers to different ways that GHC can compile the code. For example, using the native code generator (-fasm) is one way, while using the LLVM code generator (-fllvm) is another way.

The various ways that GHC supports are defined in config/ghc

Adding Tests

Please see the more extensive documentation here.