diff options
author | Ryan Scott <ryan.gl.scott@gmail.com> | 2019-03-19 17:47:55 -0400 |
---|---|---|
committer | Ben Gamari <ben@well-typed.com> | 2019-07-09 11:52:45 -0400 |
commit | 6a03d77b9a9915e4b37fe1ea6688c135e7b00654 (patch) | |
tree | 4154abaa768adbfadc4eb17db620c3ed08b82c5f /testsuite/tests/parser/should_compile/T15323.stderr | |
parent | 5af815f2e43e9f1b5ca9ec0803f9fccabb49e2fe (diff) | |
download | haskell-6a03d77b9a9915e4b37fe1ea6688c135e7b00654.tar.gz |
Use an empty data type in TTG extension constructors (#15247)
To avoid having to `panic` any time a TTG extension constructor is
consumed, this MR introduces an uninhabited 'NoExtCon' type and uses
that in every extension constructor's type family instance where it
is appropriate. This also introduces a 'noExtCon' function which
eliminates a 'NoExtCon', much like 'Data.Void.absurd' eliminates
a 'Void'.
I also renamed the existing `NoExt` type to `NoExtField` to better
distinguish it from `NoExtCon`. Unsurprisingly, there is a lot of
code churn resulting from this.
Bumps the Haddock submodule. Fixes #15247.
Diffstat (limited to 'testsuite/tests/parser/should_compile/T15323.stderr')
-rw-r--r-- | testsuite/tests/parser/should_compile/T15323.stderr | 32 |
1 files changed, 17 insertions, 15 deletions
diff --git a/testsuite/tests/parser/should_compile/T15323.stderr b/testsuite/tests/parser/should_compile/T15323.stderr index 93b254bf32..25b0ed002d 100644 --- a/testsuite/tests/parser/should_compile/T15323.stderr +++ b/testsuite/tests/parser/should_compile/T15323.stderr @@ -10,23 +10,23 @@ [] [({ T15323.hs:(5,1)-(6,56) } (TyClD - (NoExt) + (NoExtField) (DataDecl - (NoExt) + (NoExtField) ({ T15323.hs:5:6-17 } (Unqual {OccName: MaybeDefault})) (HsQTvs - (NoExt) + (NoExtField) [({ T15323.hs:5:19 } (UserTyVar - (NoExt) + (NoExtField) ({ T15323.hs:5:19 } (Unqual {OccName: v}))))]) (Prefix) (HsDataDefn - (NoExt) + (NoExtField) (DataType) ({ <no location info> } []) @@ -34,17 +34,17 @@ (Nothing) [({ T15323.hs:6:5-56 } (ConDeclGADT - (NoExt) + (NoExtField) [({ T15323.hs:6:5-14 } (Unqual {OccName: TestParens}))] ({ T15323.hs:6:21-55 } (True)) (HsQTvs - (NoExt) + (NoExtField) [({ T15323.hs:6:28 } (UserTyVar - (NoExt) + (NoExtField) ({ T15323.hs:6:28 } (Unqual {OccName: v}))))]) @@ -52,20 +52,20 @@ ({ T15323.hs:6:32-37 } [({ T15323.hs:6:32-37 } (HsParTy - (NoExt) + (NoExtField) ({ T15323.hs:6:33-36 } (HsAppTy - (NoExt) + (NoExtField) ({ T15323.hs:6:33-34 } (HsTyVar - (NoExt) + (NoExtField) (NotPromoted) ({ T15323.hs:6:33-34 } (Unqual {OccName: Eq})))) ({ T15323.hs:6:36 } (HsTyVar - (NoExt) + (NoExtField) (NotPromoted) ({ T15323.hs:6:36 } (Unqual @@ -74,17 +74,17 @@ []) ({ T15323.hs:6:42-55 } (HsAppTy - (NoExt) + (NoExtField) ({ T15323.hs:6:42-53 } (HsTyVar - (NoExt) + (NoExtField) (NotPromoted) ({ T15323.hs:6:42-53 } (Unqual {OccName: MaybeDefault})))) ({ T15323.hs:6:55 } (HsTyVar - (NoExt) + (NoExtField) (NotPromoted) ({ T15323.hs:6:55 } (Unqual @@ -94,3 +94,5 @@ [])))))] (Nothing) (Nothing))) + + |