blob: 0b155cef83556ef00ca3e27945186fe4d4d26ca2 [file] [log] [blame]
Daniel Dunbard295d782010-03-11 18:23:02 +00001// RUN: %clang_cc1 %s -emit-llvm-only
Rafael Espindola3c1c4aa2010-03-10 02:43:01 +00002
3namespace test0 {
4template <typename T> struct X {
5 virtual void foo();
6 virtual void bar();
7 virtual void baz();
8};
9
10template <typename T> void X<T>::foo() {}
11template <typename T> void X<T>::bar() {}
12template <typename T> void X<T>::baz() {}
13
14template <> void X<char>::foo() {}
15template <> void X<char>::bar() {}
16}
17
18namespace test1 {
19template <typename T> struct X {
20 virtual void foo();
21 virtual void bar();
22 virtual void baz();
23};
24
25template <typename T> void X<T>::foo() {}
26template <typename T> void X<T>::bar() {}
27template <typename T> void X<T>::baz() {}
28
29template <> void X<char>::bar() {}
30template <> void X<char>::foo() {}
31}