diff options
Diffstat (limited to 'clang/test/CodeCompletion/templates.cpp')
-rw-r--r-- | clang/test/CodeCompletion/templates.cpp | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/clang/test/CodeCompletion/templates.cpp b/clang/test/CodeCompletion/templates.cpp new file mode 100644 index 0000000..32a7b21 --- /dev/null +++ b/clang/test/CodeCompletion/templates.cpp @@ -0,0 +1,28 @@ +namespace std { + template<typename T> + class allocator { + public: + void in_base(); + }; + + template<typename T, typename Alloc = std::allocator<T> > + class vector : Alloc { + public: + void foo(); + void stop(); + }; + template<typename Alloc> class vector<bool, Alloc>; +} + +void f() { + std::vector<int> v; + v.foo(); + // RUN: %clang_cc1 -fsyntax-only -code-completion-at=%s:18:8 %s -o - | FileCheck -check-prefix=CHECK-CC1 %s + // CHECK-CC1: allocator<<#typename T#>> + // CHECK-CC1-NEXT: vector<<#typename T#>{#, <#typename Alloc#>#}> + // RUN: %clang_cc1 -fsyntax-only -code-completion-at=%s:19:5 %s -o - | FileCheck -check-prefix=CHECK-CC2 %s + // CHECK-CC2: foo + // CHECK-CC2: in_base + // CHECK-CC2: stop + + |