@@ -6,8 +6,8 @@ struct X0 {
6
6
template <typename U> struct Inner0 {
7
7
static const unsigned value = 0 ;
8
8
};
9
-
10
- template <typename U> struct Inner0 <U*> {
9
+
10
+ template <typename U> struct Inner0 <U*> {
11
11
static const unsigned value = 1 ;
12
12
};
13
13
};
@@ -23,18 +23,18 @@ int array2[X0<int>::Inner0<const int*>::value == 2? 1 : -1];
23
23
24
24
// Make sure we can provide out-of-line class template partial specializations
25
25
// for member templates (and instantiate them).
26
- template <class T > struct A {
26
+ template <class T > struct A {
27
27
struct C {
28
28
template <class T2 > struct B ;
29
29
};
30
30
};
31
31
32
- // partial specialization of A<T>::C::B<T2>
33
- template <class T > template <class T2 > struct A <T>::C::B<T2*> { };
32
+ // partial specialization of A<T>::C::B<T2>
33
+ template <class T > template <class T2 > struct A <T>::C::B<T2*> { };
34
34
35
35
A<short >::C::B<int *> absip;
36
36
37
- // Check for conflicts during template instantiation.
37
+ // Check for conflicts during template instantiation.
38
38
template <typename T, typename U>
39
39
struct Outer {
40
40
template <typename X, typename Y> struct Inner ;
@@ -61,12 +61,12 @@ namespace rdar8651930 {
61
61
struct Inner ;
62
62
63
63
template <typename T>
64
- struct Inner <T, T> {
64
+ struct Inner <T, T> {
65
65
static const bool value = true ;
66
66
};
67
67
68
68
template <typename T, typename U>
69
- struct Inner {
69
+ struct Inner {
70
70
static const bool value = false ;
71
71
};
72
72
};
0 commit comments