summaryrefslogtreecommitdiffstats
path: root/clang/test/Index/load-classes.cpp
diff options
context:
space:
mode:
authorOlivier Goffart <ogoffart@woboq.com>2016-11-04 06:29:27 +0000
committerOlivier Goffart <ogoffart@woboq.com>2016-11-04 06:29:27 +0000
commitd211c648b901df63e7ff0f14fe393883a168b703 (patch)
treeed4a039c2a9915b7035adfde652877279042dc2b /clang/test/Index/load-classes.cpp
parent6232e4d5d98bf37d9bfd049b4d34ca8912b45380 (diff)
downloadbcm5719-llvm-d211c648b901df63e7ff0f14fe393883a168b703.tar.gz
bcm5719-llvm-d211c648b901df63e7ff0f14fe393883a168b703.zip
[index] Expose FriendDecl
Differential Revision: https://reviews.llvm.org/D26285 llvm-svn: 285984
Diffstat (limited to 'clang/test/Index/load-classes.cpp')
-rw-r--r--clang/test/Index/load-classes.cpp22
1 files changed, 17 insertions, 5 deletions
diff --git a/clang/test/Index/load-classes.cpp b/clang/test/Index/load-classes.cpp
index f527db52108..8b1ed317e3b 100644
--- a/clang/test/Index/load-classes.cpp
+++ b/clang/test/Index/load-classes.cpp
@@ -18,13 +18,18 @@ private:
virtual void virtualMemberFunction();
virtual void pureVirtualMemberFunction() = 0;
+
+ friend void friendFunction();
+ template <typename T>
+ friend void friendFunctionTemplate();
+ friend class F;
};
X::X(int value) {
}
// RUN: c-index-test -test-load-source all %s | FileCheck %s
-// CHECK: load-classes.cpp:3:8: StructDecl=X:3:8 (Definition) Extent=[3:1 - 21:2]
+// CHECK: load-classes.cpp:3:8: StructDecl=X:3:8 (Definition) Extent=[3:1 - 26:2]
// CHECK: load-classes.cpp:4:3: CXXConstructor=X:4:3 (converting constructor) Extent=[4:3 - 4:15] [access=public]
// FIXME: missing TypeRef in the constructor name
// CHECK: load-classes.cpp:4:9: ParmDecl=value:4:9 (Definition) Extent=[4:5 - 4:14]
@@ -46,7 +51,14 @@ X::X(int value) {
// CHECK: load-classes.cpp:16:21: TemplateTypeParameter=T:16:21 (Definition) Extent=[16:12 - 16:22] [access=public]
// CHECK: load-classes.cpp:19:16: CXXMethod=virtualMemberFunction:19:16 (virtual) Extent=[19:3 - 19:39] [access=private]
// CHECK: load-classes.cpp:20:16: CXXMethod=pureVirtualMemberFunction:20:16 (virtual) (pure) Extent=[20:3 - 20:47] [access=private]
-// CHECK: load-classes.cpp:23:4: CXXConstructor=X:23:4 (Definition) (converting constructor) Extent=[23:1 - 24:2] [access=public]
-// CHECK: load-classes.cpp:23:1: TypeRef=struct X:3:8 Extent=[23:1 - 23:2]
-// CHECK: load-classes.cpp:23:10: ParmDecl=value:23:10 (Definition) Extent=[23:6 - 23:15]
-// CHECK: load-classes.cpp:23:17: CompoundStmt= Extent=[23:17 - 24:2]
+// CHECK: load-classes.cpp:22:15: FriendDecl=:22:15 Extent=[22:3 - 22:31] [access=public]
+// CHECK: load-classes.cpp:22:15: FunctionDecl=friendFunction:22:15 Extent=[22:3 - 22:31] [access=public]
+// CHECK: load-classes.cpp:24:15: FriendDecl=:24:15 Extent=[23:3 - 24:39] [access=public]
+// CHECK: load-classes.cpp:24:15: FunctionTemplate=friendFunctionTemplate:24:15 Extent=[23:3 - 24:39] [access=public]
+// CHECK: load-classes.cpp:23:22: TemplateTypeParameter=T:23:22 (Definition) Extent=[23:13 - 23:23] [access=public]
+// CHECK: load-classes.cpp:25:10: FriendDecl=:25:10 Extent=[25:3 - 25:17] [access=public]
+// CHECK: load-classes.cpp:25:16: TypeRef=class F:25:16 Extent=[25:16 - 25:17]
+// CHECK: load-classes.cpp:28:4: CXXConstructor=X:28:4 (Definition) (converting constructor) Extent=[28:1 - 29:2] [access=public]
+// CHECK: load-classes.cpp:28:1: TypeRef=struct X:3:8 Extent=[28:1 - 28:2]
+// CHECK: load-classes.cpp:28:10: ParmDecl=value:28:10 (Definition) Extent=[28:6 - 28:15]
+// CHECK: load-classes.cpp:28:17: CompoundStmt= Extent=[28:17 - 29:2]
OpenPOWER on IntegriCloud