[commit: haddock] ghc-7.8: Add test case for inter-module type/data family instances (46d4c21)
git at git.haskell.org
git at git.haskell.org
Mon Feb 17 14:09:45 UTC 2014
Repository : ssh://git@git.haskell.org/haddock
On branch : ghc-7.8
Link : http://git.haskell.org/haddock.git/commitdiff/46d4c218d10d0ef9dd4c3ddcd550e4ea7ba5013f
>---------------------------------------------------------------
commit 46d4c218d10d0ef9dd4c3ddcd550e4ea7ba5013f
Author: Niklas Haas <git at nand.wakku.to>
Date: Sat Feb 15 08:41:40 2014 +0100
Add test case for inter-module type/data family instances
These should show up in every place where the class is visible, and
indeed they do right now.
Signed-off-by: Mateusz Kowalczyk <fuuzetsu at fuuzetsu.co.uk>
(cherry picked from commit 6b35adfb811d9e41e5bfa1c11963e441740c2836)
>---------------------------------------------------------------
46d4c218d10d0ef9dd4c3ddcd550e4ea7ba5013f
html-test/ref/TypeFamilies.html | 28 +++++++++++++++
html-test/ref/TypeFamilies2.html | 72 ++++++++++++++++++++++++++++++++++++++
html-test/src/TypeFamilies.hs | 8 +++++
html-test/src/TypeFamilies2.hs | 5 ++-
4 files changed, 112 insertions(+), 1 deletion(-)
diff --git a/html-test/ref/TypeFamilies.html b/html-test/ref/TypeFamilies.html
index 6584510..53a8b9d 100644
--- a/html-test/ref/TypeFamilies.html
+++ b/html-test/ref/TypeFamilies.html
@@ -235,6 +235,22 @@ window.onload = function () {pageLoad();setSynopsis("mini_TypeFamilies.html");};
><tr
><td class="src"
><span class="keyword"
+ >type</span
+ > <a href="TypeFamilies2.html#t:Foo"
+ >Foo</a
+ > <a href="TypeFamilies.html#t:X"
+ >X</a
+ > = <a href="TypeFamilies.html#t:Y"
+ >Y</a
+ ></td
+ ><td class="doc"
+ ><p
+ >External instance</p
+ ></td
+ ></tr
+ ><tr
+ ><td class="src"
+ ><span class="keyword"
>data</span
> <a href="TypeFamilies.html#t:Bat"
>Bat</a
@@ -398,6 +414,18 @@ window.onload = function () {pageLoad();setSynopsis("mini_TypeFamilies.html");};
><td class="src"
><span class="keyword"
>data</span
+ > <a href="TypeFamilies2.html#t:Bar"
+ >Bar</a
+ > <a href="TypeFamilies.html#t:Y"
+ >Y</a
+ ></td
+ ><td class="doc empty"
+ > </td
+ ></tr
+ ><tr
+ ><td class="src"
+ ><span class="keyword"
+ >data</span
> <a href="TypeFamilies.html#t:Bat"
>Bat</a
> <a href="TypeFamilies.html#t:Y"
diff --git a/html-test/ref/TypeFamilies2.html b/html-test/ref/TypeFamilies2.html
index eaa0772..d822e19 100644
--- a/html-test/ref/TypeFamilies2.html
+++ b/html-test/ref/TypeFamilies2.html
@@ -59,6 +59,20 @@ window.onload = function () {pageLoad();setSynopsis("mini_TypeFamilies2.html");}
><tr
><td class="src"
><span class="keyword"
+ >data</span
+ > <a href="TypeFamilies2.html#t:Bar"
+ >Bar</a
+ > <a href="TypeFamilies2.html#t:X"
+ >X</a
+ > = <a name="v:BarX" class="def"
+ >BarX</a
+ > Y</td
+ ><td class="doc empty"
+ > </td
+ ></tr
+ ><tr
+ ><td class="src"
+ ><span class="keyword"
>type</span
> <a href="TypeFamilies2.html#t:Foo"
>Foo</a
@@ -96,6 +110,64 @@ window.onload = function () {pageLoad();setSynopsis("mini_TypeFamilies2.html");}
><td class="doc empty"
> </td
></tr
+ ><tr
+ ><td class="src"
+ ><span class="keyword"
+ >type</span
+ > <a href="TypeFamilies2.html#t:Foo"
+ >Foo</a
+ > <a href="TypeFamilies.html#t:X"
+ >X</a
+ > = <a href="TypeFamilies.html#t:Y"
+ >Y</a
+ ></td
+ ><td class="doc"
+ ><p
+ >External instance</p
+ ></td
+ ></tr
+ ></table
+ ></div
+ ></div
+ ></div
+ ><div class="top"
+ ><p class="src"
+ ><span class="keyword"
+ >data family</span
+ > <a name="t:Bar" class="def"
+ >Bar</a
+ > a</p
+ ><div class="subs instances"
+ ><p id="control.i:Bar" class="caption collapser" onclick="toggleSection('i:Bar')"
+ >Instances</p
+ ><div id="section.i:Bar" class="show"
+ ><table
+ ><tr
+ ><td class="src"
+ ><span class="keyword"
+ >data</span
+ > <a href="TypeFamilies2.html#t:Bar"
+ >Bar</a
+ > <a href="TypeFamilies2.html#t:X"
+ >X</a
+ > = <a name="v:BarX" class="def"
+ >BarX</a
+ > Y</td
+ ><td class="doc empty"
+ > </td
+ ></tr
+ ><tr
+ ><td class="src"
+ ><span class="keyword"
+ >data</span
+ > <a href="TypeFamilies2.html#t:Bar"
+ >Bar</a
+ > <a href="TypeFamilies.html#t:Y"
+ >Y</a
+ ></td
+ ><td class="doc empty"
+ > </td
+ ></tr
></table
></div
></div
diff --git a/html-test/src/TypeFamilies.hs b/html-test/src/TypeFamilies.hs
index e7cc045..5cd4480 100644
--- a/html-test/src/TypeFamilies.hs
+++ b/html-test/src/TypeFamilies.hs
@@ -3,6 +3,8 @@
-- | Doc for: module TypeFamilies
module TypeFamilies where
+import qualified TypeFamilies2 as TF
+
-- | Doc for: data X
data X
= X -- ^ Doc for: X
@@ -76,3 +78,9 @@ type instance XXX <> XX = 'X
class (><) (a :: k) (b :: k)
instance XX >< XXX
+
+-- | External instance
+
+type instance TF.Foo X = Y
+
+data instance TF.Bar Y
diff --git a/html-test/src/TypeFamilies2.hs b/html-test/src/TypeFamilies2.hs
index 718e11d..093f77c 100644
--- a/html-test/src/TypeFamilies2.hs
+++ b/html-test/src/TypeFamilies2.hs
@@ -3,10 +3,13 @@
-- in type instances. The expected behaviour is
-- that we get the instance, Y is not linked and
-- Haddock shows a linking warning.
-module TypeFamilies2 (X, Foo) where
+module TypeFamilies2 (X, Foo, Bar) where
data X
data Y
type family Foo a
type instance Foo X = Y
+
+data family Bar a
+data instance Bar X = BarX Y
More information about the ghc-commits
mailing list