summaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2009-08-21 22:16:40 +0000
committerDouglas Gregor <dgregor@apple.com>2009-08-21 22:16:40 +0000
commitac373c4ca596a144d906570f284d46d702e10719 (patch)
tree2f5ee3a40a459c9c1488b5736bec8215033585a9 /test
parentdec06664a1c4d8984251083db2215875aea1c80d (diff)
Fix parsing for out-of-line definitions of constructors and
destructors of class templates. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79678 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test')
-rw-r--r--test/CXX/temp/temp.decls/temp.class/temp.mem.func/p1.cpp11
1 files changed, 10 insertions, 1 deletions
diff --git a/test/CXX/temp/temp.decls/temp.class/temp.mem.func/p1.cpp b/test/CXX/temp/temp.decls/temp.class/temp.mem.func/p1.cpp
index c1da8a1f48..84454900bb 100644
--- a/test/CXX/temp/temp.decls/temp.class/temp.mem.func/p1.cpp
+++ b/test/CXX/temp/temp.decls/temp.class/temp.mem.func/p1.cpp
@@ -5,6 +5,9 @@ class X0 {
public:
typedef int size_type;
+ X0(int);
+ ~X0();
+
void f0(const T&, const U&);
T& operator[](int i) const;
@@ -46,4 +49,10 @@ template<typename T, typename U>
void X0<T, U>::f0(const T&, const U&) { // expected-error{{redefinition}}
}
-// FIXME: test out-of-line constructors, destructors
+// Test out-of-line constructors, destructors
+template<typename T, typename U>
+X0<T, U>::X0(int x) : value(x) { }
+
+template<typename T, typename U>
+X0<T, U>::~X0() { }
+