blob: 7fc15f0b00bd8daa73f212386311acd4609024d2 [file] [log] [blame]
Fariborz Jahanian6553c682012-10-15 18:58:50 +00001// RUN: rm -rf %t
2// RUN: mkdir %t
3// RUN: c-index-test -test-load-source all -comments-xml-schema=%S/../../bindings/xml/comment-xml-schema.rng %s > %t/out
4// RUN: FileCheck %s < %t/out
5// Test to search overridden methods for documentation when overriding method has none. rdar://12378793
6
7// Ensure that XML we generate is not invalid.
8// RUN: FileCheck %s -check-prefix=WRONG < %t/out
9// WRONG-NOT: CommentXMLInvalid
10
11/// \tparam
12/// \param AAA Blah blah
13template<typename T>
14void comment_to_html_conversion_17(T AAA);
15
Stephen Hines0e2c34f2015-03-23 12:09:02 -070016// CHECK: FullCommentAsXML=[<Function templateKind="template" file="{{[^"]+}}overriding-ftemplate-comments.cpp" line="[[@LINE-2]]" column="6"><Name>comment_to_html_conversion_17</Name><USR>c:@FT@&gt;1#Tcomment_to_html_conversion_17#t0.0#v#</USR><Declaration>template &lt;typename T&gt; void comment_to_html_conversion_17(T AAA)</Declaration><Parameters><Parameter><Name>AAA</Name><Index>0</Index><Direction isExplicit="0">in</Direction><Discussion><Para> Blah blah</Para></Discussion></Parameter></Parameters></Function>]
Dmitri Gribenkoe60729a2012-11-16 22:34:07 +000017
Fariborz Jahanian6553c682012-10-15 18:58:50 +000018template<typename T>
19void comment_to_html_conversion_17(T PPP);
20
Stephen Hines0e2c34f2015-03-23 12:09:02 -070021// CHECK: FullCommentAsXML=[<Function templateKind="template" file="{{[^"]+}}overriding-ftemplate-comments.cpp" line="[[@LINE-2]]" column="6"><Name>comment_to_html_conversion_17</Name><USR>c:@FT@&gt;1#Tcomment_to_html_conversion_17#t0.0#v#</USR><Declaration>template &lt;typename T&gt; void comment_to_html_conversion_17(T PPP)</Declaration><Parameters><Parameter><Name>PPP</Name><Index>0</Index><Direction isExplicit="0">in</Direction><Discussion><Para> Blah blah</Para></Discussion></Parameter></Parameters></Function>]
Dmitri Gribenkoe60729a2012-11-16 22:34:07 +000022
23//===----------------------------------------------------------------------===//
24
Fariborz Jahanian6553c682012-10-15 18:58:50 +000025/// \tparam BBB Bbb
26/// \tparam AAA Aaa
27template<typename AAA, typename BBB>
28void comment_to_html_conversion_19(AAA aaa, BBB bbb);
29
Stephen Hines0e2c34f2015-03-23 12:09:02 -070030// CHECK: FullCommentAsXML=[<Function templateKind="template" file="{{[^"]+}}overriding-ftemplate-comments.cpp" line="[[@LINE-2]]" column="6"><Name>comment_to_html_conversion_19</Name><USR>c:@FT@&gt;2#T#Tcomment_to_html_conversion_19#t0.0#t0.1#v#</USR><Declaration>template &lt;typename AAA, typename BBB&gt;\nvoid comment_to_html_conversion_19(AAA aaa, BBB bbb)</Declaration><TemplateParameters><Parameter><Name>AAA</Name><Index>0</Index><Discussion><Para> Aaa</Para></Discussion></Parameter><Parameter><Name>BBB</Name><Index>1</Index><Discussion><Para> Bbb </Para></Discussion></Parameter></TemplateParameters></Function>]
Dmitri Gribenkoe60729a2012-11-16 22:34:07 +000031
Fariborz Jahanian6553c682012-10-15 18:58:50 +000032template<typename PPP, typename QQQ>
33void comment_to_html_conversion_19(PPP aaa, QQQ bbb);
34
Stephen Hines0e2c34f2015-03-23 12:09:02 -070035// CHECK: FullCommentAsXML=[<Function templateKind="template" file="{{[^"]+}}overriding-ftemplate-comments.cpp" line="[[@LINE-2]]" column="6"><Name>comment_to_html_conversion_19</Name><USR>c:@FT@&gt;2#T#Tcomment_to_html_conversion_19#t0.0#t0.1#v#</USR><Declaration>template &lt;typename PPP, typename QQQ&gt;\nvoid comment_to_html_conversion_19(PPP aaa, QQQ bbb)</Declaration><TemplateParameters><Parameter><Name>PPP</Name><Index>0</Index><Discussion><Para> Aaa</Para></Discussion></Parameter><Parameter><Name>QQQ</Name><Index>1</Index><Discussion><Para> Bbb </Para></Discussion></Parameter></TemplateParameters></Function>]
Dmitri Gribenkoe60729a2012-11-16 22:34:07 +000036
37//===----------------------------------------------------------------------===//
38
Fariborz Jahanian6553c682012-10-15 18:58:50 +000039/// \tparam BBB Bbb
40/// \tparam UUU Zzz
41/// \tparam CCC Ccc
42/// \tparam AAA Aaa
43template<typename AAA, typename BBB, int CCC>
44void comment_to_html_conversion_20(AAA aaa, BBB bbb);
45
Stephen Hines0e2c34f2015-03-23 12:09:02 -070046// CHECK: FullCommentAsXML=[<Function templateKind="template" file="{{[^"]+}}overriding-ftemplate-comments.cpp" line="[[@LINE-2]]" column="6"><Name>comment_to_html_conversion_20</Name><USR>c:@FT@&gt;3#T#T#NIcomment_to_html_conversion_20#t0.0#t0.1#v#</USR><Declaration>template &lt;typename AAA, typename BBB, int CCC&gt;\nvoid comment_to_html_conversion_20(AAA aaa, BBB bbb)</Declaration><TemplateParameters><Parameter><Name>AAA</Name><Index>0</Index><Discussion><Para> Aaa</Para></Discussion></Parameter><Parameter><Name>BBB</Name><Index>1</Index><Discussion><Para> Bbb </Para></Discussion></Parameter><Parameter><Name>CCC</Name><Index>2</Index><Discussion><Para> Ccc </Para></Discussion></Parameter><Parameter><Name>UUU</Name><Discussion><Para> Zzz </Para></Discussion></Parameter></TemplateParameters></Function>]
Dmitri Gribenkoe60729a2012-11-16 22:34:07 +000047
Fariborz Jahanian6553c682012-10-15 18:58:50 +000048template<typename PPP, typename QQQ, int RRR>
49void comment_to_html_conversion_20(PPP aaa, QQQ bbb);
50
Stephen Hines0e2c34f2015-03-23 12:09:02 -070051// CHECK: FullCommentAsXML=[<Function templateKind="template" file="{{[^"]+}}overriding-ftemplate-comments.cpp" line="[[@LINE-2]]" column="6"><Name>comment_to_html_conversion_20</Name><USR>c:@FT@&gt;3#T#T#NIcomment_to_html_conversion_20#t0.0#t0.1#v#</USR><Declaration>template &lt;typename PPP, typename QQQ, int RRR&gt;\nvoid comment_to_html_conversion_20(PPP aaa, QQQ bbb)</Declaration><TemplateParameters><Parameter><Name>PPP</Name><Index>0</Index><Discussion><Para> Aaa</Para></Discussion></Parameter><Parameter><Name>QQQ</Name><Index>1</Index><Discussion><Para> Bbb </Para></Discussion></Parameter><Parameter><Name>RRR</Name><Index>2</Index><Discussion><Para> Ccc </Para></Discussion></Parameter><Parameter><Name>UUU</Name><Discussion><Para> Zzz </Para></Discussion></Parameter></TemplateParameters></Function>]
Dmitri Gribenkoe60729a2012-11-16 22:34:07 +000052
53//===----------------------------------------------------------------------===//
54
Fariborz Jahanian6553c682012-10-15 18:58:50 +000055/// \tparam AAA Aaa
56/// \tparam BBB Bbb
57/// \tparam CCC Ccc
58/// \tparam DDD Ddd
59template<template<template<typename CCC> class DDD, class BBB> class AAA>
60void comment_to_html_conversion_21();
61
Stephen Hines0e2c34f2015-03-23 12:09:02 -070062// CHECK: FullCommentAsXML=[<Function templateKind="template" file="{{[^"]+}}overriding-ftemplate-comments.cpp" line="[[@LINE-2]]" column="6"><Name>comment_to_html_conversion_21</Name><USR>c:@FT@&gt;1#t&gt;2#t&gt;1#T#Tcomment_to_html_conversion_21#v#</USR><Declaration>template &lt;template &lt;template &lt;typename CCC&gt; class DDD, class BBB&gt; class AAA&gt;\nvoid comment_to_html_conversion_21()</Declaration><TemplateParameters><Parameter><Name>AAA</Name><Index>0</Index><Discussion><Para> Aaa </Para></Discussion></Parameter><Parameter><Name>BBB</Name><Discussion><Para> Bbb </Para></Discussion></Parameter><Parameter><Name>CCC</Name><Discussion><Para> Ccc </Para></Discussion></Parameter><Parameter><Name>DDD</Name><Discussion><Para> Ddd</Para></Discussion></Parameter></TemplateParameters></Function>]
Dmitri Gribenkoe60729a2012-11-16 22:34:07 +000063
Fariborz Jahanian6553c682012-10-15 18:58:50 +000064template<template<template<typename RRR> class SSS, class QQQ> class PPP>
65void comment_to_html_conversion_21();
66
Stephen Hines0e2c34f2015-03-23 12:09:02 -070067// CHECK: FullCommentAsXML=[<Function templateKind="template" file="{{[^"]+}}overriding-ftemplate-comments.cpp" line="[[@LINE-2]]" column="6"><Name>comment_to_html_conversion_21</Name><USR>c:@FT@&gt;1#t&gt;2#t&gt;1#T#Tcomment_to_html_conversion_21#v#</USR><Declaration>template &lt;template &lt;template &lt;typename RRR&gt; class SSS, class QQQ&gt; class PPP&gt;\nvoid comment_to_html_conversion_21()</Declaration><TemplateParameters><Parameter><Name>PPP</Name><Index>0</Index><Discussion><Para> Aaa </Para></Discussion></Parameter><Parameter><Name>QQQ</Name><Discussion><Para> Bbb </Para></Discussion></Parameter><Parameter><Name>RRR</Name><Discussion><Para> Ccc </Para></Discussion></Parameter><Parameter><Name>SSS</Name><Discussion><Para> Ddd</Para></Discussion></Parameter></TemplateParameters></Function>]
Dmitri Gribenkoe60729a2012-11-16 22:34:07 +000068
69//===----------------------------------------------------------------------===//
70
Fariborz Jahanian6553c682012-10-15 18:58:50 +000071/// \tparam C1 Ccc 1
72/// \tparam AAA Zzz
73/// \tparam C2 Ccc 2
74/// \tparam C3 Ccc 3
75/// \tparam C4 Ccc 4
76/// \tparam BBB Bbb
Daniel Jasper032f2532013-01-21 14:39:22 +000077template <class C1, template <class C2, template <class C3, class C4> class BBB > class AAA>
Fariborz Jahanian6553c682012-10-15 18:58:50 +000078void comment_to_html_conversion_22();
79
Stephen Hines0e2c34f2015-03-23 12:09:02 -070080// CHECK: FullCommentAsXML=[<Function templateKind="template" file="{{[^"]+}}overriding-ftemplate-comments.cpp" line="[[@LINE-2]]" column="6"><Name>comment_to_html_conversion_22</Name><USR>c:@FT@&gt;2#T#t&gt;2#T#t&gt;2#T#Tcomment_to_html_conversion_22#v#</USR><Declaration>template &lt;class C1, template &lt;class C2, template &lt;class C3, class C4&gt; class BBB&gt;\n class AAA&gt;\nvoid comment_to_html_conversion_22()</Declaration><TemplateParameters><Parameter><Name>C1</Name><Index>0</Index><Discussion><Para> Ccc 1 </Para></Discussion></Parameter><Parameter><Name>AAA</Name><Index>1</Index><Discussion><Para> Zzz </Para></Discussion></Parameter><Parameter><Name>C2</Name><Discussion><Para> Ccc 2 </Para></Discussion></Parameter><Parameter><Name>C3</Name><Discussion><Para> Ccc 3 </Para></Discussion></Parameter><Parameter><Name>C4</Name><Discussion><Para> Ccc 4 </Para></Discussion></Parameter><Parameter><Name>BBB</Name><Discussion><Para> Bbb</Para></Discussion></Parameter></TemplateParameters></Function>]
Fariborz Jahanian6553c682012-10-15 18:58:50 +000081
82template<class CCC1, template<class CCC2, template<class CCC3, class CCC4> class QQQ> class PPP>
83void comment_to_html_conversion_22();
84
Stephen Hines0e2c34f2015-03-23 12:09:02 -070085// CHECK: FullCommentAsXML=[<Function templateKind="template" file="{{[^"]+}}overriding-ftemplate-comments.cpp" line="[[@LINE-2]]" column="6"><Name>comment_to_html_conversion_22</Name><USR>c:@FT@&gt;2#T#t&gt;2#T#t&gt;2#T#Tcomment_to_html_conversion_22#v#</USR><Declaration>template &lt;class CCC1, template &lt;class CCC2, template &lt;class CCC3, class CCC4&gt;\n class QQQ&gt; class PPP&gt;\nvoid comment_to_html_conversion_22()</Declaration><TemplateParameters><Parameter><Name>CCC1</Name><Index>0</Index><Discussion><Para> Ccc 1 </Para></Discussion></Parameter><Parameter><Name>PPP</Name><Index>1</Index><Discussion><Para> Zzz </Para></Discussion></Parameter><Parameter><Name>CCC2</Name><Discussion><Para> Ccc 2 </Para></Discussion></Parameter><Parameter><Name>CCC3</Name><Discussion><Para> Ccc 3 </Para></Discussion></Parameter><Parameter><Name>CCC4</Name><Discussion><Para> Ccc 4 </Para></Discussion></Parameter><Parameter><Name>QQQ</Name><Discussion><Para> Bbb</Para></Discussion></Parameter></TemplateParameters></Function>]
Fariborz Jahanian1bfb00d2012-10-17 21:58:03 +000086