aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/Haddock/Backends/Html.hs10
-rw-r--r--tests/output/A.html6
-rw-r--r--tests/output/Bug1.html6
-rw-r--r--tests/output/Bug2.html2
-rw-r--r--tests/output/Bug3.html2
-rw-r--r--tests/output/Bug4.html2
-rw-r--r--tests/output/Bug6.html38
-rw-r--r--tests/output/Bug7.html10
-rw-r--r--tests/output/Bug8.html8
-rw-r--r--tests/output/Bugs.html6
-rw-r--r--tests/output/Hash.html22
-rw-r--r--tests/output/NoLayout.html2
-rw-r--r--tests/output/Test.html222
-rw-r--r--tests/output/TypeOperators.html32
-rw-r--r--tests/output/Visible.html2
15 files changed, 328 insertions, 42 deletions
diff --git a/src/Haddock/Backends/Html.hs b/src/Haddock/Backends/Html.hs
index a89a9b20..b9922262 100644
--- a/src/Haddock/Backends/Html.hs
+++ b/src/Haddock/Backends/Html.hs
@@ -1806,8 +1806,16 @@ s8, s15 :: HtmlTable
s8 = tda [ theclass "s8" ] << noHtml
s15 = tda [ theclass "s15" ] << noHtml
+
+-- | Generate a named anchor
+--
+-- This actually generates two anchor tags, one with the name unescaped, and one
+-- with the name URI-escaped. This is needed because Opera 9.52 (and later
+-- versions) needs the name to be unescaped, while IE 7 needs it to be escaped.
+--
namedAnchor :: String -> Html -> Html
-namedAnchor n = anchor ! [name (escapeStr n)]
+namedAnchor n = (anchor ! [name n]) . (anchor ! [name (escapeStr n)])
+
--
-- A section of HTML which is collapsible via a +/- button.
diff --git a/tests/output/A.html b/tests/output/A.html
index b5858ddb..22521edf 100644
--- a/tests/output/A.html
+++ b/tests/output/A.html
@@ -70,7 +70,9 @@
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
-> <A NAME="t%3AA"
+> <A NAME="t:A"
+><A NAME="t%3AA"
+></A
></A
><B
>A</B
@@ -88,8 +90,10 @@
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="arg"
+><A NAME="v:A"
><A NAME="v%3AA"
></A
+></A
><B
>A</B
></TD
diff --git a/tests/output/Bug1.html b/tests/output/Bug1.html
index 9be03434..327107ba 100644
--- a/tests/output/Bug1.html
+++ b/tests/output/Bug1.html
@@ -94,7 +94,9 @@
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
-> <A NAME="t%3AT"
+> <A NAME="t:T"
+><A NAME="t%3AT"
+></A
></A
><B
>T</B
@@ -122,8 +124,10 @@
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="arg"
+><A NAME="v:T"
><A NAME="v%3AT"
></A
+></A
><B
>T</B
></TD
diff --git a/tests/output/Bug2.html b/tests/output/Bug2.html
index 5abb6aef..a67097d7 100644
--- a/tests/output/Bug2.html
+++ b/tests/output/Bug2.html
@@ -68,8 +68,10 @@
></TR
><TR
><TD CLASS="decl"
+><A NAME="v:x"
><A NAME="v%3Ax"
></A
+></A
><B
>x</B
> :: <A HREF="A.html#t%3AA"
diff --git a/tests/output/Bug3.html b/tests/output/Bug3.html
index 5c3202fc..da2f5291 100644
--- a/tests/output/Bug3.html
+++ b/tests/output/Bug3.html
@@ -88,8 +88,10 @@
></TR
><TR
><TD CLASS="decl"
+><A NAME="v:foo"
><A NAME="v%3Afoo"
></A
+></A
><B
>foo</B
> :: Int</TD
diff --git a/tests/output/Bug4.html b/tests/output/Bug4.html
index d92ad832..85bee9d9 100644
--- a/tests/output/Bug4.html
+++ b/tests/output/Bug4.html
@@ -88,8 +88,10 @@
></TR
><TR
><TD CLASS="decl"
+><A NAME="v:foo"
><A NAME="v%3Afoo"
></A
+></A
><B
>foo</B
> :: Int</TD
diff --git a/tests/output/Bug6.html b/tests/output/Bug6.html
index e0d676f4..96d371ac 100644
--- a/tests/output/Bug6.html
+++ b/tests/output/Bug6.html
@@ -193,7 +193,9 @@
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
-> <A NAME="t%3AA"
+> <A NAME="t:A"
+><A NAME="t%3AA"
+></A
></A
><B
>A</B
@@ -216,8 +218,10 @@
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="arg"
+><A NAME="v:A"
><A NAME="v%3AA"
></A
+></A
><B
>A</B
> Int</TD
@@ -238,7 +242,9 @@
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
-> <A NAME="t%3AB"
+> <A NAME="t:B"
+><A NAME="t%3AB"
+></A
></A
><B
>B</B
@@ -262,8 +268,10 @@
><TABLE CLASS="vanilla" CELLSPACING="5" CELLPADDING="0"
><TR
><TD CLASS="arg"
+><A NAME="v:B"
><A NAME="v%3AB"
></A
+></A
><B
>B</B
></TD
@@ -275,8 +283,10 @@
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="arg"
+><A NAME="v:b"
><A NAME="v%3Ab"
></A
+></A
><B
>b</B
> :: Int</TD
@@ -298,8 +308,10 @@
></TR
><TR
><TD CLASS="decl"
+><A NAME="v:b"
><A NAME="v%3Ab"
></A
+></A
><B
>b</B
> :: <A HREF="Bug6.html#t%3AB"
@@ -314,7 +326,9 @@
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
-> <A NAME="t%3AC"
+> <A NAME="t:C"
+><A NAME="t%3AC"
+></A
></A
><B
>C</B
@@ -337,8 +351,10 @@
><TABLE CLASS="vanilla" CELLSPACING="5" CELLPADDING="0"
><TR
><TD CLASS="arg"
+><A NAME="v:C"
><A NAME="v%3AC"
></A
+></A
><B
>C</B
></TD
@@ -350,8 +366,10 @@
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="arg"
+><A NAME="v:c1"
><A NAME="v%3Ac1"
></A
+></A
><B
>c1</B
> :: Int</TD
@@ -360,8 +378,10 @@
></TR
><TR
><TD CLASS="arg"
+><A NAME="v:c2"
><A NAME="v%3Ac2"
></A
+></A
><B
>c2</B
> :: Int</TD
@@ -385,7 +405,9 @@
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
-> <A NAME="t%3AD"
+> <A NAME="t:D"
+><A NAME="t%3AD"
+></A
></A
><B
>D</B
@@ -409,8 +431,10 @@
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="arg"
+><A NAME="v:D"
><A NAME="v%3AD"
></A
+></A
><B
>D</B
> Int Int</TD
@@ -431,7 +455,9 @@
><TD CLASS="decl"
><SPAN CLASS="keyword"
>newtype</SPAN
-> <A NAME="t%3AE"
+> <A NAME="t:E"
+><A NAME="t%3AE"
+></A
></A
><B
>E</B
@@ -454,8 +480,10 @@
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="arg"
+><A NAME="v:E"
><A NAME="v%3AE"
></A
+></A
><B
>E</B
> Int</TD
diff --git a/tests/output/Bug7.html b/tests/output/Bug7.html
index 5e800e41..ed330869 100644
--- a/tests/output/Bug7.html
+++ b/tests/output/Bug7.html
@@ -116,7 +116,9 @@
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
-> <A NAME="t%3AFoo"
+> <A NAME="t:Foo"
+><A NAME="t%3AFoo"
+></A
></A
><B
>Foo</B
@@ -139,8 +141,10 @@
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="arg"
+><A NAME="v:Foo"
><A NAME="v%3AFoo"
></A
+></A
><B
>Foo</B
></TD
@@ -184,7 +188,9 @@
><TD CLASS="decl"
><SPAN CLASS="keyword"
>class</SPAN
-> <A NAME="t%3ABar"
+> <A NAME="t:Bar"
+><A NAME="t%3ABar"
+></A
></A
><B
>Bar</B
diff --git a/tests/output/Bug8.html b/tests/output/Bug8.html
index 55a24592..21a4aa9e 100644
--- a/tests/output/Bug8.html
+++ b/tests/output/Bug8.html
@@ -70,7 +70,9 @@
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
-> <A NAME="t%3ATyp"
+> <A NAME="t:Typ"
+><A NAME="t%3ATyp"
+></A
></A
><B
>Typ</B
@@ -88,8 +90,10 @@
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="arg"
+><A NAME="v:Type"
><A NAME="v%3AType"
></A
+></A
><B
>Type</B
> (String, [<A HREF="Bug8.html#t%3ATyp"
@@ -100,8 +104,10 @@
></TR
><TR
><TD CLASS="arg"
+><A NAME="v:TFree"
><A NAME="v%3ATFree"
></A
+></A
><B
>TFree</B
> (String, [String])</TD
diff --git a/tests/output/Bugs.html b/tests/output/Bugs.html
index dfd0320c..3654099f 100644
--- a/tests/output/Bugs.html
+++ b/tests/output/Bugs.html
@@ -70,7 +70,9 @@
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
-> <A NAME="t%3AA"
+> <A NAME="t:A"
+><A NAME="t%3AA"
+></A
></A
><B
>A</B
@@ -88,8 +90,10 @@
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="arg"
+><A NAME="v:A"
><A NAME="v%3AA"
></A
+></A
><B
>A</B
> a (a -&gt; Int)</TD
diff --git a/tests/output/Hash.html b/tests/output/Hash.html
index f89c2419..7dcb3371 100644
--- a/tests/output/Hash.html
+++ b/tests/output/Hash.html
@@ -208,10 +208,12 @@
><TR
><TD CLASS="section1"
><A NAME="1"
+><A NAME="1"
>The <TT
>HashTable</TT
> type
</A
+></A
></TD
></TR
><TR
@@ -222,7 +224,9 @@
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
-> <A NAME="t%3AHashTable"
+> <A NAME="t:HashTable"
+><A NAME="t%3AHashTable"
+></A
></A
><B
>HashTable</B
@@ -255,10 +259,12 @@
><TR
><TD CLASS="section2"
><A NAME="2"
+><A NAME="2"
>Operations on <TT
>HashTable</TT
>s
</A
+></A
></TD
></TR
><TR
@@ -267,8 +273,10 @@
></TR
><TR
><TD CLASS="decl"
+><A NAME="v:new"
><A NAME="v%3Anew"
></A
+></A
><B
>new</B
> :: (Eq key, <A HREF="Hash.html#t%3AHash"
@@ -288,8 +296,10 @@
></TR
><TR
><TD CLASS="decl"
+><A NAME="v:insert"
><A NAME="v%3Ainsert"
></A
+></A
><B
>insert</B
> :: (Eq key, <A HREF="Hash.html#t%3AHash"
@@ -307,8 +317,10 @@
></TR
><TR
><TD CLASS="decl"
+><A NAME="v:lookup"
><A NAME="v%3Alookup"
></A
+></A
><B
>lookup</B
> :: <A HREF="Hash.html#t%3AHash"
@@ -334,10 +346,12 @@
><TR
><TD CLASS="section1"
><A NAME="3"
+><A NAME="3"
>The <TT
>Hash</TT
> class
</A
+></A
></TD
></TR
><TR
@@ -348,7 +362,9 @@
><TD CLASS="decl"
><SPAN CLASS="keyword"
>class</SPAN
-> <A NAME="t%3AHash"
+> <A NAME="t:Hash"
+><A NAME="t%3AHash"
+></A
></A
><B
>Hash</B
@@ -377,8 +393,10 @@
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="decl"
+><A NAME="v:hash"
><A NAME="v%3Ahash"
></A
+></A
><B
>hash</B
> :: a -&gt; Int</TD
diff --git a/tests/output/NoLayout.html b/tests/output/NoLayout.html
index c05be8ac..e9dfc7f0 100644
--- a/tests/output/NoLayout.html
+++ b/tests/output/NoLayout.html
@@ -88,8 +88,10 @@
></TR
><TR
><TD CLASS="decl"
+><A NAME="v:g"
><A NAME="v%3Ag"
></A
+></A
><B
>g</B
> :: Int</TD
diff --git a/tests/output/Test.html b/tests/output/Test.html
index e4852b47..434ac5e8 100644
--- a/tests/output/Test.html
+++ b/tests/output/Test.html
@@ -999,8 +999,10 @@
><TR
><TD CLASS="section1"
><A NAME="1"
+><A NAME="1"
>Type declarations
</A
+></A
></TD
></TR
><TR
@@ -1010,8 +1012,10 @@
><TR
><TD CLASS="section2"
><A NAME="2"
+><A NAME="2"
>Data types
</A
+></A
></TD
></TR
><TR
@@ -1022,7 +1026,9 @@
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
-> <A NAME="t%3AT"
+> <A NAME="t:T"
+><A NAME="t%3AT"
+></A
></A
><B
>T</B
@@ -1048,8 +1054,10 @@
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="arg"
+><A NAME="v:A"
><A NAME="v%3AA"
></A
+></A
><B
>A</B
> Int (Maybe Float)</TD
@@ -1063,8 +1071,10 @@
></TR
><TR
><TD CLASS="arg"
+><A NAME="v:B"
><A NAME="v%3AB"
></A
+></A
><B
>B</B
> (<A HREF="Test.html#t%3AT"
@@ -1094,7 +1104,9 @@
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
-> <A NAME="t%3AT2"
+> <A NAME="t:T2"
+><A NAME="t%3AT2"
+></A
></A
><B
>T2</B
@@ -1119,7 +1131,9 @@
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
-> <A NAME="t%3AT3"
+> <A NAME="t:T3"
+><A NAME="t%3AT3"
+></A
></A
><B
>T3</B
@@ -1142,8 +1156,10 @@
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="arg"
+><A NAME="v:A1"
><A NAME="v%3AA1"
></A
+></A
><B
>A1</B
> a</TD
@@ -1152,8 +1168,10 @@
></TR
><TR
><TD CLASS="arg"
+><A NAME="v:B1"
><A NAME="v%3AB1"
></A
+></A
><B
>B1</B
> b</TD
@@ -1174,7 +1192,9 @@
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
-> <A NAME="t%3AT4"
+> <A NAME="t:T4"
+><A NAME="t%3AT4"
+></A
></A
><B
>T4</B
@@ -1192,8 +1212,10 @@
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="arg"
+><A NAME="v:A2"
><A NAME="v%3AA2"
></A
+></A
><B
>A2</B
> a</TD
@@ -1202,8 +1224,10 @@
></TR
><TR
><TD CLASS="arg"
+><A NAME="v:B2"
><A NAME="v%3AB2"
></A
+></A
><B
>B2</B
> b</TD
@@ -1224,7 +1248,9 @@
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
-> <A NAME="t%3AT5"
+> <A NAME="t:T5"
+><A NAME="t%3AT5"
+></A
></A
><B
>T5</B
@@ -1242,8 +1268,10 @@
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="arg"
+><A NAME="v:A3"
><A NAME="v%3AA3"
></A
+></A
><B
>A3</B
> a</TD
@@ -1257,8 +1285,10 @@
></TR
><TR
><TD CLASS="arg"
+><A NAME="v:B3"
><A NAME="v%3AB3"
></A
+></A
><B
>B3</B
> b</TD
@@ -1284,7 +1314,9 @@
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
-> <A NAME="t%3AT6"
+> <A NAME="t:T6"
+><A NAME="t%3AT6"
+></A
></A
><B
>T6</B
@@ -1307,8 +1339,10 @@
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="arg"
+><A NAME="v:A4"
><A NAME="v%3AA4"
></A
+></A
><B
>A4</B
></TD
@@ -1322,8 +1356,10 @@
></TR
><TR
><TD CLASS="arg"
+><A NAME="v:B4"
><A NAME="v%3AB4"
></A
+></A
><B
>B4</B
></TD
@@ -1337,8 +1373,10 @@
></TR
><TR
><TD CLASS="arg"
+><A NAME="v:C4"
><A NAME="v%3AC4"
></A
+></A
><B
>C4</B
></TD
@@ -1364,7 +1402,9 @@
><TD CLASS="decl"
><SPAN CLASS="keyword"
>newtype</SPAN
-> <A NAME="t%3AN1"
+> <A NAME="t:N1"
+><A NAME="t%3AN1"
+></A
></A
><B
>N1</B
@@ -1387,8 +1427,10 @@
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="arg"
+><A NAME="v:N1"
><A NAME="v%3AN1"
></A
+></A
><B
>N1</B
> a</TD
@@ -1409,7 +1451,9 @@
><TD CLASS="decl"
><SPAN CLASS="keyword"
>newtype</SPAN
-> <A NAME="t%3AN2"
+> <A NAME="t:N2"
+><A NAME="t%3AN2"
+></A
></A
><B
>N2</B
@@ -1432,8 +1476,10 @@
><TABLE CLASS="vanilla" CELLSPACING="5" CELLPADDING="0"
><TR
><TD CLASS="arg"
+><A NAME="v:N2"
><A NAME="v%3AN2"
></A
+></A
><B
>N2</B
></TD
@@ -1445,8 +1491,10 @@
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="arg"
+><A NAME="v:n"
><A NAME="v%3An"
></A
+></A
><B
>n</B
> :: a b</TD
@@ -1470,7 +1518,9 @@
><TD CLASS="decl"
><SPAN CLASS="keyword"
>newtype</SPAN
-> <A NAME="t%3AN3"
+> <A NAME="t:N3"
+><A NAME="t%3AN3"
+></A
></A
><B
>N3</B
@@ -1493,8 +1543,10 @@
><TABLE CLASS="vanilla" CELLSPACING="5" CELLPADDING="0"
><TR
><TD CLASS="arg"
+><A NAME="v:N3"
><A NAME="v%3AN3"
></A
+></A
><B
>N3</B
></TD
@@ -1506,8 +1558,10 @@
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="arg"
+><A NAME="v:n3"
><A NAME="v%3An3"
></A
+></A
><B
>n3</B
> :: a b</TD
@@ -1536,7 +1590,9 @@
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
-> <A NAME="t%3AN4"
+> <A NAME="t:N4"
+><A NAME="t%3AN4"
+></A
></A
><B
>N4</B
@@ -1562,7 +1618,9 @@
><TD CLASS="decl"
><SPAN CLASS="keyword"
>newtype</SPAN
-> <A NAME="t%3AN5"
+> <A NAME="t:N5"
+><A NAME="t%3AN5"
+></A
></A
><B
>N5</B
@@ -1580,8 +1638,10 @@
><TABLE CLASS="vanilla" CELLSPACING="5" CELLPADDING="0"
><TR
><TD CLASS="arg"
+><A NAME="v:N5"
><A NAME="v%3AN5"
></A
+></A
><B
>N5</B
></TD
@@ -1593,8 +1653,10 @@
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="arg"
+><A NAME="v:n5"
><A NAME="v%3An5"
></A
+></A
><B
>n5</B
> :: a b</TD
@@ -1619,7 +1681,9 @@
><TD CLASS="decl"
><SPAN CLASS="keyword"
>newtype</SPAN
-> <A NAME="t%3AN6"
+> <A NAME="t:N6"
+><A NAME="t%3AN6"
+></A
></A
><B
>N6</B
@@ -1637,8 +1701,10 @@
><TABLE CLASS="vanilla" CELLSPACING="5" CELLPADDING="0"
><TR
><TD CLASS="arg"
+><A NAME="v:N6"
><A NAME="v%3AN6"
></A
+></A
><B
>N6</B
></TD
@@ -1651,8 +1717,10 @@
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="arg"
+><A NAME="v:n6"
><A NAME="v%3An6"
></A
+></A
><B
>n6</B
> :: a b</TD
@@ -1676,7 +1744,9 @@
><TD CLASS="decl"
><SPAN CLASS="keyword"
>newtype</SPAN
-> <A NAME="t%3AN7"
+> <A NAME="t:N7"
+><A NAME="t%3AN7"
+></A
></A
><B
>N7</B
@@ -1699,8 +1769,10 @@
><TABLE CLASS="vanilla" CELLSPACING="5" CELLPADDING="0"
><TR
><TD CLASS="arg"
+><A NAME="v:N7"
><A NAME="v%3AN7"
></A
+></A
><B
>N7</B
></TD
@@ -1717,8 +1789,10 @@
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="arg"
+><A NAME="v:n7"
><A NAME="v%3An7"
></A
+></A
><B
>n7</B
> :: a b</TD
@@ -1741,8 +1815,10 @@
><TR
><TD CLASS="section2"
><A NAME="3"
+><A NAME="3"
>Records
</A
+></A
></TD
></TR
><TR
@@ -1753,7 +1829,9 @@
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
-> <A NAME="t%3AR"
+> <A NAME="t:R"
+><A NAME="t%3AR"
+></A
></A
><B
>R</B
@@ -1797,8 +1875,10 @@
><TABLE CLASS="vanilla" CELLSPACING="5" CELLPADDING="0"
><TR
><TD CLASS="arg"
+><A NAME="v:C1"
><A NAME="v%3AC1"
></A
+></A
><B
>C1</B
></TD
@@ -1815,8 +1895,10 @@
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="arg"
+><A NAME="v:p"
><A NAME="v%3Ap"
></A
+></A
><B
>p</B
> :: Int</TD
@@ -1830,8 +1912,10 @@
></TR
><TR
><TD CLASS="arg"
+><A NAME="v:q"
><A NAME="v%3Aq"
></A
+></A
><B
>q</B
> :: <SPAN CLASS="keyword"
@@ -1847,8 +1931,10 @@
></TR
><TR
><TD CLASS="arg"
+><A NAME="v:r"
><A NAME="v%3Ar"
></A
+></A
><B
>r</B
> :: Int</TD
@@ -1866,8 +1952,10 @@
></TR
><TR
><TD CLASS="arg"
+><A NAME="v:s"
><A NAME="v%3As"
></A
+></A
><B
>s</B
> :: Int</TD
@@ -1888,8 +1976,10 @@
></TR
><TR
><TD CLASS="arg"
+><A NAME="v:C2"
><A NAME="v%3AC2"
></A
+></A
><B
>C2</B
></TD
@@ -1906,8 +1996,10 @@
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="arg"
+><A NAME="v:t"
><A NAME="v%3At"
></A
+></A
><B
>t</B
> :: T1 -&gt; <A HREF="Test.html#t%3AT2"
@@ -1924,8 +2016,10 @@
></TR
><TR
><TD CLASS="arg"
+><A NAME="v:u"
><A NAME="v%3Au"
></A
+></A
><B
>u</B
> :: Int</TD
@@ -1934,8 +2028,10 @@
></TR
><TR
><TD CLASS="arg"
+><A NAME="v:v"
><A NAME="v%3Av"
></A
+></A
><B
>v</B
> :: Int</TD
@@ -1959,7 +2055,9 @@
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
-> <A NAME="t%3AR1"
+> <A NAME="t:R1"
+><A NAME="t%3AR1"
+></A
></A
><B
>R1</B
@@ -1982,8 +2080,10 @@
><TABLE CLASS="vanilla" CELLSPACING="5" CELLPADDING="0"
><TR
><TD CLASS="arg"
+><A NAME="v:C3"
><A NAME="v%3AC3"
></A
+></A
><B
>C3</B
></TD
@@ -2000,8 +2100,10 @@
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="arg"
+><A NAME="v:s1"
><A NAME="v%3As1"
></A
+></A
><B
>s1</B
> :: Int</TD
@@ -2015,8 +2117,10 @@
></TR
><TR
><TD CLASS="arg"
+><A NAME="v:s2"
><A NAME="v%3As2"
></A
+></A
><B
>s2</B
> :: Int</TD
@@ -2030,8 +2134,10 @@
></TR
><TR
><TD CLASS="arg"
+><A NAME="v:s3"
><A NAME="v%3As3"
></A
+></A
><B
>s3</B
> :: Int</TD
@@ -2067,8 +2173,10 @@
></TR
><TR
><TD CLASS="decl"
+><A NAME="v:p"
><A NAME="v%3Ap"
></A
+></A
><B
>p</B
> :: <A HREF="Test.html#t%3AR"
@@ -2090,8 +2198,10 @@
></TR
><TR
><TD CLASS="decl"
+><A NAME="v:q"
><A NAME="v%3Aq"
></A
+></A
><B
>q</B
> :: <A HREF="Test.html#t%3AR"
@@ -2115,8 +2225,10 @@
></TR
><TR
><TD CLASS="decl"
+><A NAME="v:u"
><A NAME="v%3Au"
></A
+></A
><B
>u</B
> :: <A HREF="Test.html#t%3AR"
@@ -2130,8 +2242,10 @@
><TR
><TD CLASS="section1"
><A NAME="4"
+><A NAME="4"
>Class declarations
</A
+></A
></TD
></TR
><TR
@@ -2144,7 +2258,9 @@
>class</SPAN
> <A HREF="Test.html#t%3AD"
>D</A
-> a =&gt; <A NAME="t%3AC"
+> a =&gt; <A NAME="t:C"
+><A NAME="t%3AC"
+></A
></A
><B
>C</B
@@ -2179,8 +2295,10 @@
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="decl"
+><A NAME="v:a"
><A NAME="v%3Aa"
></A
+></A
><B
>a</B
> :: IO a</TD
@@ -2200,8 +2318,10 @@
></TR
><TR
><TD CLASS="decl"
+><A NAME="v:b"
><A NAME="v%3Ab"
></A
+></A
><B
>b</B
> :: [a]</TD
@@ -2229,7 +2349,9 @@
><TD CLASS="decl"
><SPAN CLASS="keyword"
>class</SPAN
-> <A NAME="t%3AD"
+> <A NAME="t:D"
+><A NAME="t%3AD"
+></A
></A
><B
>D</B
@@ -2258,8 +2380,10 @@
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="decl"
+><A NAME="v:d"
><A NAME="v%3Ad"
></A
+></A
><B
>d</B
> :: <A HREF="Test.html#t%3AT"
@@ -2272,8 +2396,10 @@
></TR
><TR
><TD CLASS="decl"
+><A NAME="v:e"
><A NAME="v%3Ae"
></A
+></A
><B
>e</B
> :: (a, a)</TD
@@ -2321,7 +2447,9 @@
><TD CLASS="decl"
><SPAN CLASS="keyword"
>class</SPAN
-> <A NAME="t%3AE"
+> <A NAME="t:E"
+><A NAME="t%3AE"
+></A
></A
><B
>E</B
@@ -2346,7 +2474,9 @@
><TD CLASS="decl"
><SPAN CLASS="keyword"
>class</SPAN
-> <A NAME="t%3AF"
+> <A NAME="t:F"
+><A NAME="t%3AF"
+></A
></A
><B
>F</B
@@ -2370,8 +2500,10 @@
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="decl"
+><A NAME="v:ff"
><A NAME="v%3Aff"
></A
+></A
><B
>ff</B
> :: a</TD
@@ -2397,8 +2529,10 @@
></TR
><TR
><TD CLASS="decl"
+><A NAME="v:a"
><A NAME="v%3Aa"
></A
+></A
><B
>a</B
> :: <A HREF="Test.html#t%3AC"
@@ -2421,8 +2555,10 @@
><TR
><TD CLASS="section1"
><A NAME="5"
+><A NAME="5"
>Function types
</A
+></A
></TD
></TR
><TR
@@ -2431,8 +2567,10 @@
></TR
><TR
><TD CLASS="decl"
+><A NAME="v:f"
><A NAME="v%3Af"
></A
+></A
><B
>f</B
> :: <A HREF="Test.html#t%3AC"
@@ -2497,8 +2635,10 @@ using double quotes: <A HREF="Foo.html"
></TR
><TR
><TD CLASS="decl"
+><A NAME="v:g"
><A NAME="v%3Ag"
></A
+></A
><B
>g</B
> :: Int -&gt; IO CInt</TD
@@ -2515,8 +2655,10 @@ using double quotes: <A HREF="Foo.html"
><TR
><TD CLASS="section1"
><A NAME="6"
+><A NAME="6"
>Auxiliary stuff
</A
+></A
></TD
></TR
><TR
@@ -2711,8 +2853,10 @@ test2
><TR
><TD CLASS="section1"
><A NAME="7"
+><A NAME="7"
>A hidden module
</A
+></A
></TD
></TR
><TR
@@ -2721,8 +2865,10 @@ test2
></TR
><TR
><TD CLASS="decl"
+><A NAME="v:hidden"
><A NAME="v%3Ahidden"
></A
+></A
><B
>hidden</B
> :: Int -&gt; Int</TD
@@ -2734,8 +2880,10 @@ test2
><TR
><TD CLASS="section1"
><A NAME="8"
+><A NAME="8"
>A visible module
</A
+></A
></TD
></TR
><TR
@@ -2764,8 +2912,10 @@ test2
><TR
><TD CLASS="section1"
><A NAME="9"
+><A NAME="9"
>Existential / Universal types
</A
+></A
></TD
></TR
><TR
@@ -2776,7 +2926,9 @@ test2
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
-> <A NAME="t%3AEx"
+> <A NAME="t:Ex"
+><A NAME="t%3AEx"
+></A
></A
><B
>Ex</B
@@ -2803,7 +2955,9 @@ test2
>forall</SPAN
> b . <A HREF="Test.html#t%3AC"
>C</A
-> b =&gt; <A NAME="v%3AEx1"
+> b =&gt; <A NAME="v:Ex1"
+><A NAME="v%3AEx1"
+></A
></A
><B
>Ex1</B
@@ -2815,7 +2969,9 @@ test2
><TD CLASS="arg"
><SPAN CLASS="keyword"
>forall</SPAN
-> b . <A NAME="v%3AEx2"
+> b . <A NAME="v:Ex2"
+><A NAME="v%3AEx2"
+></A
></A
><B
>Ex2</B
@@ -2829,7 +2985,9 @@ test2
>forall</SPAN
> b . <A HREF="Test.html#t%3AC"
>C</A
-> a =&gt; <A NAME="v%3AEx3"
+> a =&gt; <A NAME="v:Ex3"
+><A NAME="v%3AEx3"
+></A
></A
><B
>Ex3</B
@@ -2839,8 +2997,10 @@ test2
></TR
><TR
><TD CLASS="arg"
+><A NAME="v:Ex4"
><A NAME="v%3AEx4"
></A
+></A
><B
>Ex4</B
> (<SPAN CLASS="keyword"
@@ -2862,8 +3022,10 @@ test2
><TR
><TD CLASS="section1"
><A NAME="10"
+><A NAME="10"
>Type signatures with argument docs
</A
+></A
></TD
></TR
><TR
@@ -2872,8 +3034,10 @@ test2
></TR
><TR
><TD CLASS="decl"
+><A NAME="v:k"
><A NAME="v%3Ak"
></A
+></A
><B
>k</B
></TD
@@ -2948,8 +3112,10 @@ test2
></TR
><TR
><TD CLASS="decl"
+><A NAME="v:l"
><A NAME="v%3Al"
></A
+></A
><B
>l</B
></TD
@@ -2982,8 +3148,10 @@ test2
></TR
><TR
><TD CLASS="decl"
+><A NAME="v:m"
><A NAME="v%3Am"
></A
+></A
><B
>m</B
></TD
@@ -3029,8 +3197,10 @@ test2
></TR
><TR
><TD CLASS="decl"
+><A NAME="v:o"
><A NAME="v%3Ao"
></A
+></A
><B
>o</B
></TD
@@ -3067,8 +3237,10 @@ test2
><TR
><TD CLASS="section1"
><A NAME="11"
+><A NAME="11"
>A section
</A
+></A
></TD
></TR
><TR
@@ -3078,8 +3250,10 @@ test2
><TR
><TD CLASS="section2"
><A NAME="12"
+><A NAME="12"
>A subsection
</A
+></A
></TD
></TR
><TR
@@ -3104,8 +3278,10 @@ test2
></TR
><TR
><TD CLASS="decl"
+><A NAME="v:f'"
><A NAME="v%3Af%27"
></A
+></A
><B
>f'</B
> :: Int</TD
diff --git a/tests/output/TypeOperators.html b/tests/output/TypeOperators.html
index d9c20493..01b4e3d6 100644
--- a/tests/output/TypeOperators.html
+++ b/tests/output/TypeOperators.html
@@ -194,8 +194,10 @@
><TR
><TD CLASS="section1"
><A NAME="1"
+><A NAME="1"
>stuff
</A
+></A
></TD
></TR
><TR
@@ -206,7 +208,9 @@
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
-> a <A NAME="t%3A%3A-%3A"
+> a <A NAME="t::-:"
+><A NAME="t%3A%3A-%3A"
+></A
></A
><B
>:-:</B
@@ -220,7 +224,9 @@
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
-> (a <A NAME="t%3A%3A%2B%3A"
+> (a <A NAME="t::+:"
+><A NAME="t%3A%3A%2B%3A"
+></A
></A
><B
>:+:</B
@@ -234,7 +240,9 @@
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
-> <A NAME="t%3AOp"
+> <A NAME="t:Op"
+><A NAME="t%3AOp"
+></A
></A
><B
>Op</B
@@ -248,7 +256,9 @@
><TD CLASS="decl"
><SPAN CLASS="keyword"
>newtype</SPAN
-> <A NAME="t%3AO"
+> <A NAME="t:O"
+><A NAME="t%3AO"
+></A
></A
><B
>O</B
@@ -266,8 +276,10 @@
><TABLE CLASS="vanilla" CELLSPACING="5" CELLPADDING="0"
><TR
><TD CLASS="arg"
+><A NAME="v:O"
><A NAME="v%3AO"
></A
+></A
><B
>O</B
></TD
@@ -279,8 +291,10 @@
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="arg"
+><A NAME="v:unO"
><A NAME="v%3AunO"
></A
+></A
><B
>unO</B
> :: g (f a)</TD
@@ -302,8 +316,10 @@
></TR
><TR
><TD CLASS="decl"
+><A NAME="v:biO"
><A NAME="v%3AbiO"
></A
+></A
><B
>biO</B
> :: (g `<A HREF="TypeOperators.html#t%3AO"
@@ -318,7 +334,9 @@
><TD CLASS="decl"
><SPAN CLASS="keyword"
>newtype</SPAN
-> <A NAME="t%3AFlip"
+> <A NAME="t:Flip"
+><A NAME="t%3AFlip"
+></A
></A
><B
>Flip</B
@@ -336,8 +354,10 @@
><TABLE CLASS="vanilla" CELLSPACING="5" CELLPADDING="0"
><TR
><TD CLASS="arg"
+><A NAME="v:Flip"
><A NAME="v%3AFlip"
></A
+></A
><B
>Flip</B
></TD
@@ -349,8 +369,10 @@
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="arg"
+><A NAME="v:unFlip"
><A NAME="v%3AunFlip"
></A
+></A
><B
>unFlip</B
> :: a ~&gt; b</TD
diff --git a/tests/output/Visible.html b/tests/output/Visible.html
index d888ab2e..f3f9dc94 100644
--- a/tests/output/Visible.html
+++ b/tests/output/Visible.html
@@ -68,8 +68,10 @@
></TR
><TR
><TD CLASS="decl"
+><A NAME="v:visible"
><A NAME="v%3Avisible"
></A
+></A
><B
>visible</B
> :: Int -&gt; Int</TD