@@ -23,6 +23,9 @@ struct MyClass {
2323 typedef int MyTypedef;
2424
2525 class NestedClass ;
26+
27+ friend struct Foo ;
28+ template <typename T> friend void friendFunction (int );
2629protected:
2730 int protectedMethod ();
2831
@@ -86,6 +89,44 @@ struct MyClass {
8689// CHECK-NEXT: "USR": "{{[0-9A-F]*}}"
8790// CHECK-NEXT: }
8891// CHECK-NEXT: ],
92+ // CHECK-NOT: "Friends": [
93+ // CHECK-NOT: {
94+ // CHECK-NOT: "IsClass": false,
95+ // CHECK-NOT: "Params": [
96+ // CHECK-NOT: {
97+ // CHECK-NOT: "Name": "",
98+ // CHECK-NOT: "Type": "int"
99+ // CHECK-NOT: }
100+ // CHECK-NOT: ],
101+ // CHECK-NOT: "Reference": {
102+ // CHECK-NOT: "Name": "friendFunction",
103+ // CHECK-NOT: "Path": "",
104+ // CHECK-NOT: "QualName": "friendFunction",
105+ // CHECK-NOT: "USR": "{{[0-9A-F]*}}"
106+ // CHECK-NOT: },
107+ // CHECK-NOT: "ReturnType": {
108+ // CHECK-NOT: "IsBuiltIn": true,
109+ // CHECK-NOT: "IsTemplate": false,
110+ // CHECK-NOT: "Name": "void",
111+ // CHECK-NOT: "QualName": "void",
112+ // CHECK-NOT: "USR": "0000000000000000000000000000000000000000"
113+ // CHECK-NOT: },
114+ // CHECK-NOT: "Template": {
115+ // CHECK-NOT: "Parameters": [
116+ // CHECK-NOT: "typename T"
117+ // CHECK-NOT: ]
118+ // CHECK-NOT: }
119+ // CHECK-NOT: },
120+ // CHECK-NOT: {
121+ // CHECK-NOT: "IsClass": true,
122+ // CHECK-NOT: "Reference": {
123+ // CHECK-NOT: "Name": "Foo",
124+ // CHECK-NOT: "Path": "GlobalNamespace",
125+ // CHECK-NOT: "QualName": "Foo",
126+ // CHECK-NOT: "USR": "{{[0-9A-F]*}}"
127+ // CHECK-NOT: },
128+ // CHECK-NOT: },
129+ // CHECK-NOT: ],
89130// COM: FIXME: FullName is not emitted correctly.
90131// CHECK-NEXT: "FullName": "",
91132// CHECK-NEXT: "IsTypedef": false,
0 commit comments