diff options
author | Simon Peyton Jones <simonpj@microsoft.com> | 2017-11-28 11:33:37 +0000 |
---|---|---|
committer | Simon Peyton Jones <simonpj@microsoft.com> | 2017-12-07 14:40:35 +0000 |
commit | fa29df02a1b0b926afb2525a258172dcbf0ea460 (patch) | |
tree | 594244e6f84a99a36acfd962eeb62b4a35f42726 /testsuite/tests/ghc-api | |
parent | 5f332e1dab000e1f79c127d441f618280d14d2bd (diff) | |
download | haskell-fa29df02a1b0b926afb2525a258172dcbf0ea460.tar.gz |
Refactor ConDecl: Trac #14529
This patch refactors HsDecls.ConDecl. Specifically
* ConDeclGADT was horrible, with all the information hidden
inside con_res_ty. Now it's kept separate, as it should be.
* ConDeclH98: use [LHsTyVarBndr] instead of LHsQTyVars for the
existentials. There is no implicit binding here.
* Add a field con_forall to both ConDeclGADT and ConDeclH98
which says if there is an explicit user-written forall.
* Field renamings in ConDecl
con_cxt to con_mb_cxt
con_details to con_args
There is an accompanying submodule update to Haddock.
Also the following change turned out to remove a lot of clutter:
* add a smart constructor for HsAppsTy, namely mkHsAppsTy,
and use it consistently. This avoids a lot of painful pattern
matching for the common singleton case.
Two api-annotation tests (T10278, and T10399) are broken, hence marking
them as expect_broken(14529). Alan is going to fix them, probably by
changing the con_forall field to
con_forall :: Maybe SrcSpan
instead of Bool
Diffstat (limited to 'testsuite/tests/ghc-api')
-rw-r--r-- | testsuite/tests/ghc-api/annotations/all.T | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/testsuite/tests/ghc-api/annotations/all.T b/testsuite/tests/ghc-api/annotations/all.T index adc0d14370..a0c0b24d73 100644 --- a/testsuite/tests/ghc-api/annotations/all.T +++ b/testsuite/tests/ghc-api/annotations/all.T @@ -28,13 +28,15 @@ test('T10357', [extra_files(['Test10357.hs']), ignore_stderr], run_command, ['$MAKE -s --no-print-directory T10357']) test('T10358', [extra_files(['Test10358.hs']), ignore_stderr], run_command, ['$MAKE -s --no-print-directory T10358']) -test('T10278', [extra_files(['Test10278.hs']), +test('T10278', [expect_broken(14529), + extra_files(['Test10278.hs']), ignore_stderr], run_command, ['$MAKE -s --no-print-directory T10278']) test('T10354', [extra_files(['Test10354.hs']), ignore_stderr], run_command, ['$MAKE -s --no-print-directory T10354']) test('T10396', [extra_files(['Test10396.hs']), ignore_stderr], run_command, ['$MAKE -s --no-print-directory T10396']) -test('T10399', [extra_files(['Test10399.hs']), +test('T10399', [expect_broken(14529), + extra_files(['Test10399.hs']), ignore_stderr], run_command, ['$MAKE -s --no-print-directory T10399']) test('T10313', [extra_files(['Test10313.hs', 'stringSource.hs']), ignore_stderr], run_command, ['$MAKE -s --no-print-directory T10313']) |