summaryrefslogtreecommitdiff
path: root/testsuite/tests/haddock/should_compile_flag_haddock
diff options
context:
space:
mode:
Diffstat (limited to 'testsuite/tests/haddock/should_compile_flag_haddock')
-rw-r--r--testsuite/tests/haddock/should_compile_flag_haddock/T11768.stderr4
-rw-r--r--testsuite/tests/haddock/should_compile_flag_haddock/all.T4
-rw-r--r--testsuite/tests/haddock/should_compile_flag_haddock/haddockA014.stderr2
-rw-r--r--testsuite/tests/haddock/should_compile_flag_haddock/haddockA015.stderr2
-rw-r--r--testsuite/tests/haddock/should_compile_flag_haddock/haddockA016.stderr2
-rw-r--r--testsuite/tests/haddock/should_compile_flag_haddock/haddockA018.stderr2
-rw-r--r--testsuite/tests/haddock/should_compile_flag_haddock/haddockA019.stderr2
-rw-r--r--testsuite/tests/haddock/should_compile_flag_haddock/haddockA020.stderr2
-rw-r--r--testsuite/tests/haddock/should_compile_flag_haddock/haddockA021.stderr4
-rw-r--r--testsuite/tests/haddock/should_compile_flag_haddock/haddockA023.stderr2
-rw-r--r--testsuite/tests/haddock/should_compile_flag_haddock/haddockA024.stderr2
-rw-r--r--testsuite/tests/haddock/should_compile_flag_haddock/haddockA025.stderr2
-rw-r--r--testsuite/tests/haddock/should_compile_flag_haddock/haddockA026.stderr2
-rw-r--r--testsuite/tests/haddock/should_compile_flag_haddock/haddockA027.stderr4
-rw-r--r--testsuite/tests/haddock/should_compile_flag_haddock/haddockA028.stderr2
-rw-r--r--testsuite/tests/haddock/should_compile_flag_haddock/haddockA029.stderr2
-rw-r--r--testsuite/tests/haddock/should_compile_flag_haddock/haddockA030.stderr5
-rw-r--r--testsuite/tests/haddock/should_compile_flag_haddock/haddockA031.stderr4
-rw-r--r--testsuite/tests/haddock/should_compile_flag_haddock/haddockA032.stderr6
-rw-r--r--testsuite/tests/haddock/should_compile_flag_haddock/haddockA034.stderr4
-rw-r--r--testsuite/tests/haddock/should_compile_flag_haddock/haddockA035.hs9
-rw-r--r--testsuite/tests/haddock/should_compile_flag_haddock/haddockA035.stderr11
-rw-r--r--testsuite/tests/haddock/should_compile_flag_haddock/haddockA036.hs19
-rw-r--r--testsuite/tests/haddock/should_compile_flag_haddock/haddockA036.stderr14
-rw-r--r--testsuite/tests/haddock/should_compile_flag_haddock/haddockA037.hs10
-rw-r--r--testsuite/tests/haddock/should_compile_flag_haddock/haddockA037.stderr9
-rw-r--r--testsuite/tests/haddock/should_compile_flag_haddock/haddockA038.hs14
-rw-r--r--testsuite/tests/haddock/should_compile_flag_haddock/haddockA038.stderr7
-rw-r--r--testsuite/tests/haddock/should_compile_flag_haddock/haddockA039.hs29
-rw-r--r--testsuite/tests/haddock/should_compile_flag_haddock/haddockA039.stderr11
30 files changed, 167 insertions, 25 deletions
diff --git a/testsuite/tests/haddock/should_compile_flag_haddock/T11768.stderr b/testsuite/tests/haddock/should_compile_flag_haddock/T11768.stderr
index 060dd06ad2..997c2ef24c 100644
--- a/testsuite/tests/haddock/should_compile_flag_haddock/T11768.stderr
+++ b/testsuite/tests/haddock/should_compile_flag_haddock/T11768.stderr
@@ -3,10 +3,10 @@
module T11768 where
data Foo
= Foo
- deriving Eq Documenting a single type
+ deriving Eq " Documenting a single type"
data Bar
= Bar
- deriving (Eq Documenting one of multiple types, Ord)
+ deriving (Eq " Documenting one of multiple types", Ord)
<document comment>
deriving instance Read Bar
diff --git a/testsuite/tests/haddock/should_compile_flag_haddock/all.T b/testsuite/tests/haddock/should_compile_flag_haddock/all.T
index 7db4379b16..5450fcbe7f 100644
--- a/testsuite/tests/haddock/should_compile_flag_haddock/all.T
+++ b/testsuite/tests/haddock/should_compile_flag_haddock/all.T
@@ -39,6 +39,10 @@ test('haddockA029', normal, compile, ['-haddock -ddump-parsed'])
test('haddockA030', normal, compile, ['-haddock -ddump-parsed'])
test('haddockA031', normal, compile, ['-haddock -ddump-parsed -XExistentialQuantification'])
test('haddockA032', normal, compile, ['-haddock -ddump-parsed'])
+test('haddockA035', normal, compile, ['-haddock -ddump-parsed'])
+test('haddockA036', normal, compile, ['-haddock -ddump-parsed'])
+test('haddockA037', normal, compile, ['-haddock -ddump-parsed'])
+test('haddockA038', normal, compile, ['-haddock -ddump-parsed'])
# The tests below this line are not duplicated in
# should_compile_noflag_haddock.
diff --git a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA014.stderr b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA014.stderr
index a70f624278..f55f8afab1 100644
--- a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA014.stderr
+++ b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA014.stderr
@@ -1,6 +1,6 @@
==================== Parser ====================
- a header
+" a header"
module HeaderTest where
<document comment>
x = 0
diff --git a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA015.stderr b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA015.stderr
index 3bfc17d811..15adf3e54e 100644
--- a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA015.stderr
+++ b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA015.stderr
@@ -1,6 +1,6 @@
==================== Parser ====================
- a header
+" a header"
module HeaderTest where
<document comment>
x = 0
diff --git a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA016.stderr b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA016.stderr
index 48dd0870c9..e9ccec44a0 100644
--- a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA016.stderr
+++ b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA016.stderr
@@ -1,6 +1,6 @@
==================== Parser ====================
-Module description
+"Module description"
module A where
diff --git a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA018.stderr b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA018.stderr
index 2aa5245f50..357f7540e2 100644
--- a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA018.stderr
+++ b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA018.stderr
@@ -1,6 +1,6 @@
==================== Parser ====================
- module header bla bla
+" module header bla bla "
module A where
diff --git a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA019.stderr b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA019.stderr
index ca316bc8b8..c7a34730d9 100644
--- a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA019.stderr
+++ b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA019.stderr
@@ -1,7 +1,7 @@
==================== Parser ====================
module A (
- bla bla, blabla
+ " bla bla", " blabla "
) where
diff --git a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA020.stderr b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA020.stderr
index 2aaa3eba98..660b28036e 100644
--- a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA020.stderr
+++ b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA020.stderr
@@ -1,7 +1,7 @@
==================== Parser ====================
module A (
- bla bla, blabla , x, <IEGroup: 2>, qweljqwelkqjwelqjkq
+ " bla bla", " blabla ", x, <IEGroup: 2>, " qweljqwelkqjwelqjkq"
) where
x = True
diff --git a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA021.stderr b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA021.stderr
index 162c403b84..befbee45f9 100644
--- a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA021.stderr
+++ b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA021.stderr
@@ -1,8 +1,8 @@
==================== Parser ====================
module A (
- bla bla, blabla , x, <IEGroup: 2>, qweljqwelkqjwelqjkq, y,
- dkashdakj, z, <IEGroup: 1>
+ " bla bla", " blabla ", x, <IEGroup: 2>, " qweljqwelkqjwelqjkq", y,
+ " dkashdakj", z, <IEGroup: 1>
) where
x = True
y = False
diff --git a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA023.stderr b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA023.stderr
index fcb953a495..d04558c301 100644
--- a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA023.stderr
+++ b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA023.stderr
@@ -1,7 +1,7 @@
==================== Parser ====================
module ShouldCompile where
-test :: (Eq a) => [a] doc1 -> [a] doc2 -> [a] doc3
+test :: (Eq a) => [a] " doc1" -> [a] " doc2 " -> [a] " doc3"
test xs ys = xs
diff --git a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA024.stderr b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA024.stderr
index 9f57f5df07..c453e071a3 100644
--- a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA024.stderr
+++ b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA024.stderr
@@ -1,7 +1,7 @@
==================== Parser ====================
module ShouldCompile where
-test2 :: a doc1 -> b doc2 -> a doc 3
+test2 :: a " doc1 " -> b " doc2 " -> a " doc 3 "
test2 x y = x
diff --git a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA025.stderr b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA025.stderr
index 472ec1a1eb..e0b8a4a7bf 100644
--- a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA025.stderr
+++ b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA025.stderr
@@ -1,7 +1,7 @@
==================== Parser ====================
module ShouldCompile where
-test2 :: a doc1 -> a
+test2 :: a " doc1 " -> a
test2 x = x
diff --git a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA026.stderr b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA026.stderr
index 5f7335b6b9..37135099a0 100644
--- a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA026.stderr
+++ b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA026.stderr
@@ -2,7 +2,7 @@
==================== Parser ====================
module ShouldCompile where
test ::
- (Eq a) => [a] doc1 -> forall b. [b] doc2 -> [a] doc3
+ (Eq a) => [a] " doc1" -> forall b. [b] " doc2 " -> [a] " doc3"
test xs ys = xs
diff --git a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA027.stderr b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA027.stderr
index e7707c5ec0..0bbb612119 100644
--- a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA027.stderr
+++ b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA027.stderr
@@ -2,9 +2,9 @@
==================== Parser ====================
module ShouldCompile where
test ::
- [a] doc1
+ [a] " doc1"
-> forall b.
- (Ord b) => [b] doc2 -> forall c. (Num c) => [c] doc3 -> [a]
+ (Ord b) => [b] " doc2 " -> forall c. (Num c) => [c] " doc3" -> [a]
test xs ys zs = xs
diff --git a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA028.stderr b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA028.stderr
index 47d2468ea5..3c1bbc9565 100644
--- a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA028.stderr
+++ b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA028.stderr
@@ -2,7 +2,7 @@
==================== Parser ====================
module ShouldCompile where
data a <--> b = Mk a b
-test :: [a] doc1 -> a <--> b -> [a] blabla
+test :: [a] " doc1 " -> a <--> b -> [a] " blabla"
test xs ys = xs
diff --git a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA029.stderr b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA029.stderr
index 820ffa6708..7271238e3e 100644
--- a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA029.stderr
+++ b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA029.stderr
@@ -2,6 +2,6 @@
==================== Parser ====================
module ShouldCompile where
data A
- = A comment that documents the first constructor A | B | C | D
+ = " A comment that documents the first constructor" A | B | C | D
diff --git a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA030.stderr b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA030.stderr
index b0ef139199..e09cfa2187 100644
--- a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA030.stderr
+++ b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA030.stderr
@@ -2,6 +2,9 @@
==================== Parser ====================
module ShouldCompile where
data A
- = comment for A A | comment for B B | comment for C C | D
+ = " comment for A " A |
+ " comment for B " B |
+ " comment for C " C |
+ D
diff --git a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA031.stderr b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA031.stderr
index 1d033cd6d7..eb6fcaef1e 100644
--- a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA031.stderr
+++ b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA031.stderr
@@ -3,7 +3,7 @@
module ShouldCompile where
data A
= A |
- comment for B forall a. B a a |
- comment for C forall a. Num a => C a
+ " comment for B " forall a. B a a |
+ " comment for C " forall a. Num a => C a
diff --git a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA032.stderr b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA032.stderr
index 5cf2d9b034..eec30285f5 100644
--- a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA032.stderr
+++ b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA032.stderr
@@ -3,8 +3,8 @@
module ShouldCompile where
data R a
= R {field1 :: a,
- field2 :: a comment for field2,
- field3 :: a comment for field3,
- field4 :: a comment for field4 }
+ field2 :: a " comment for field2",
+ field3 :: a " comment for field3",
+ field4 :: a " comment for field4 "}
diff --git a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA034.stderr b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA034.stderr
index f743393349..64478fed12 100644
--- a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA034.stderr
+++ b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA034.stderr
@@ -2,4 +2,6 @@
==================== Parser ====================
module Hi where
<document comment>
-data Hi where This is a GADT constructor. Hi :: () -> Hi
+data Hi where " This is a GADT constructor." Hi :: () -> Hi
+
+
diff --git a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA035.hs b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA035.hs
new file mode 100644
index 0000000000..25ed2acb83
--- /dev/null
+++ b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA035.hs
@@ -0,0 +1,9 @@
+{-# LANGUAGE GADTs #-}
+
+module Hi where
+
+data Hi where
+ Hi :: () -- ^ This is a comment on the '()' field of 'Hi'
+ -> Int
+ -> String -- ^ This is a comment on the 'String' field of 'Hi'
+ -> Hi -- ^ This is a comment on the return type of 'Hi'
diff --git a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA035.stderr b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA035.stderr
new file mode 100644
index 0000000000..3f12a0cffd
--- /dev/null
+++ b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA035.stderr
@@ -0,0 +1,11 @@
+
+==================== Parser ====================
+module Hi where
+data Hi
+ where
+ Hi :: () " This is a comment on the '()' field of 'Hi'"
+ -> Int
+ -> String " This is a comment on the 'String' field of 'Hi'"
+ -> Hi " This is a comment on the return type of 'Hi'"
+
+
diff --git a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA036.hs b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA036.hs
new file mode 100644
index 0000000000..02dd1f9022
--- /dev/null
+++ b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA036.hs
@@ -0,0 +1,19 @@
+module ConstructorFields where
+
+data Foo
+ = Bar Int String -- ^ doc on `Bar` constructor
+
+ | Baz -- ^ doc on the `Baz` constructor
+ Int -- ^ doc on the `Int` field of `Baz`
+ String -- ^ doc on the `String` field of `Baz`
+
+ | Int :+ String -- ^ doc on the `:+` constructor
+
+ | Int -- ^ doc on the `Int` field of the `:*` constructor
+ :* -- ^ doc on the `:*` constructor
+ String -- ^ doc on the `String` field of the `:*` constructor
+
+ | Boo { x :: () } -- ^ doc on the `Boo` record constructor
+
+ | Boa -- ^ doc on the `Boa` record constructor
+ { y :: () }
diff --git a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA036.stderr b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA036.stderr
new file mode 100644
index 0000000000..5cd0a59a05
--- /dev/null
+++ b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA036.stderr
@@ -0,0 +1,14 @@
+
+==================== Parser ====================
+module ConstructorFields where
+data Foo
+ = " doc on `Bar` constructor" Bar Int String |
+ " doc on the `Baz` constructor"
+ Baz Int " doc on the `Int` field of `Baz`" String " doc on the `String` field of `Baz`" |
+ " doc on the `:+` constructor" Int :+ String |
+ " doc on the `:*` constructor"
+ Int " doc on the `Int` field of the `:*` constructor" :* String " doc on the `String` field of the `:*` constructor" |
+ " doc on the `Boo` record constructor" Boo {x :: ()} |
+ " doc on the `Boa` record constructor" Boa {y :: ()}
+
+
diff --git a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA037.hs b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA037.hs
new file mode 100644
index 0000000000..4571e09583
--- /dev/null
+++ b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA037.hs
@@ -0,0 +1,10 @@
+module UnamedConstructorFields where
+
+data A = A
+data B = B
+data C = C
+
+-- Haddock on 'A' prevents the haddock on 'C' from being applied to 'MkFoo'
+data Foo = MkFoo A -- ^ 'A' has a comment
+ B -- This doesn't
+ C -- ^ 'C' has a comment
diff --git a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA037.stderr b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA037.stderr
new file mode 100644
index 0000000000..b9ecfa6303
--- /dev/null
+++ b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA037.stderr
@@ -0,0 +1,9 @@
+
+==================== Parser ====================
+module UnamedConstructorFields where
+data A = A
+data B = B
+data C = C
+data Foo = MkFoo A " 'A' has a comment" B C " 'C' has a comment"
+
+
diff --git a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA038.hs b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA038.hs
new file mode 100644
index 0000000000..b839bdee22
--- /dev/null
+++ b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA038.hs
@@ -0,0 +1,14 @@
+module UnamedConstructorStrictFields where
+-- See #15206
+
+data A = A
+data B = B
+
+data Foo = MkFoo
+ {-# UNPACK #-} !A -- ^ Unpacked strict field
+ B
+
+data Bar =
+ {-# UNPACK #-} !A -- ^ Unpacked strict field
+ :%%
+ B
diff --git a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA038.stderr b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA038.stderr
new file mode 100644
index 0000000000..3021fa7195
--- /dev/null
+++ b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA038.stderr
@@ -0,0 +1,7 @@
+
+==================== Parser ====================
+module UnamedConstructorStrictFields where
+data A = A
+data B = B
+data Foo = MkFoo {-# UNPACK #-} !A " Unpacked strict field" B
+data Bar = {-# UNPACK #-} !A " Unpacked strict field" :%% B
diff --git a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA039.hs b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA039.hs
new file mode 100644
index 0000000000..79d23e9ec1
--- /dev/null
+++ b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA039.hs
@@ -0,0 +1,29 @@
+module CommentsBeforeArguments where
+
+data A = A
+data B = B
+
+f1 :: {-| Comment before -}
+ () ->
+
+ ()
+ {-^ Comment after -} ->
+
+ ()
+ {-^ Result after -}
+f1 _ _ = ()
+
+
+f2 :: {-| Comment before -}
+ () ->
+
+ ()
+ {-^ Comment after -} ->
+
+ {-| Result after -}
+ ()
+f2 _ _ = ()
+
+
+
+
diff --git a/testsuite/tests/haddock/should_compile_flag_haddock/haddockA039.stderr b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA039.stderr
new file mode 100644
index 0000000000..0c12f5c62f
--- /dev/null
+++ b/testsuite/tests/haddock/should_compile_flag_haddock/haddockA039.stderr
@@ -0,0 +1,11 @@
+
+==================== Parser ====================
+module CommentsBeforeArguments where
+f1 ::
+ () Comment before -> () Comment after -> () Result after
+f1 _ _ = ()
+f2 ::
+ () Comment before -> () Comment after -> () Result after
+f2 _ _ = ()
+
+