]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - test/Sema/warn-documentation.m
Vendor import of clang trunk r161861:
[FreeBSD/FreeBSD.git] / test / Sema / warn-documentation.m
1 // RUN: %clang_cc1 -fsyntax-only -Wno-objc-root-class -Wdocumentation -Wdocumentation-pedantic -verify %s
2
3 @class NSString;
4
5 // expected-warning@+1 {{empty paragraph passed to '\brief' command}}
6 /// \brief\author Aaa
7 @interface Test1
8 // expected-warning@+2 {{empty paragraph passed to '\brief' command}}
9 /**
10  * \brief\author Aaa
11  * \param aaa Aaa
12  * \param bbb Bbb
13  */
14 + (NSString *)test1:(NSString *)aaa suffix:(NSString *)bbb;
15
16 // expected-warning@+2 {{parameter 'aab' not found in the function declaration}} expected-note@+2 {{did you mean 'aaa'?}}
17 /**
18  * \param aab Aaa
19  */
20 + (NSString *)test2:(NSString *)aaa;
21
22 // expected-warning@+1 {{empty paragraph passed to '\brief' command}}
23 /// \brief\author Aaa
24 @property int test3; // a property: ObjCPropertyDecl
25
26 // expected-warning@+1 {{empty paragraph passed to '\brief' command}}
27 /// \brief\author Aaa
28 @property int test4; // a property: ObjCPropertyDecl
29 @end
30
31 // expected-warning@+1 {{empty paragraph passed to '\brief' command}}
32 /// \brief\author Aaa
33 @interface Test1()
34 @end
35
36 // expected-warning@+1 {{empty paragraph passed to '\brief' command}}
37 /// \brief\author Aaa
38 @implementation Test1 // a class implementation : ObjCImplementationDecl
39 + (NSString *)test1:(NSString *)aaa suffix:(NSString *)bbb {
40   return 0;
41 }
42
43 + (NSString *)test2:(NSString *)aaa {
44   return 0;
45 }
46
47 @synthesize test3; // a property implementation: ObjCPropertyImplDecl
48 @dynamic test4; // a property implementation: ObjCPropertyImplDecl
49
50 // expected-warning@+1 {{empty paragraph passed to '\brief' command}}
51 /// \brief\author Aaa
52 NSString *_test5;
53 @end
54
55 // expected-warning@+1 {{empty paragraph passed to '\brief' command}}
56 /// \brief\author Aaa
57 @interface Test1(Test1Category) // a category: ObjCCategoryDecl
58 // expected-warning@+1 {{empty paragraph passed to '\brief' command}}
59 /// \brief\author Aaa
60 + (NSString *)test3:(NSString *)aaa;
61 @end
62
63 // expected-warning@+1 {{empty paragraph passed to '\brief' command}}
64 /// \brief\author Aaa
65 @implementation Test1(Test1Category) // a category implementation: ObjCCategoryImplDecl
66 + (NSString *)test3:(NSString *)aaa {
67   return 0;
68 }
69 @end
70
71 // expected-warning@+1 {{empty paragraph passed to '\brief' command}}
72 /// \brief\author Aaa
73 @protocol TestProto1 // a protocol: ObjCProtocolDecl
74 @end
75
76 int a;
77
78 // expected-warning@+1 {{empty paragraph passed to '\brief' command}}
79 /// \brief\author Aaa
80 @interface Test4
81 @end
82
83 int b;
84
85 @interface TestReturns1
86 /// \returns Aaa
87 - (int)test1:(NSString *)aaa;
88
89 // expected-warning@+1 {{'\returns' command used in a comment that is attached to a method returning void}}
90 /// \returns Aaa
91 - (void)test2:(NSString *)aaa;
92 @end
93