@@ -30,11 +30,11 @@ template <typename T> class A : B<T> {
30
30
g1 (); // COMPLIANT, identifier not found in B
31
31
}
32
32
void m3 (int m) {
33
- m = 0 ; // COMPLIANT, hides member
33
+ m = 0 ; // COMPLIANT, hides member
34
34
}
35
35
void m4 () {
36
36
int m = 0 ;
37
- m = 0 ; // COMPLIANT, hides member
37
+ m = 0 ; // COMPLIANT, hides member
38
38
}
39
39
};
40
40
@@ -59,20 +59,21 @@ class D {
59
59
class C : D {
60
60
public:
61
61
void m1 () {
62
- m = 0 ; // COMPLIANT - does not apply to non-class templates
63
- g (); // COMPLIANT - does not apply to non-class templates
62
+ m = 0 ; // COMPLIANT - does not apply to non-class templates
63
+ g (); // COMPLIANT - does not apply to non-class templates
64
64
sg (); // COMPLIANT - does not apply to non-class templates
65
- TYPE t = 0 ; // COMPLIANT - does not apply to non-class templates
65
+ TYPE t1 = 0 ; // COMPLIANT - does not apply to non-class templates
66
66
// void (*p)() = &g; // NON_COMPILABLE
67
67
}
68
68
};
69
69
70
- template <typename t > class E : D {
70
+ template <typename T > class E : D {
71
71
public:
72
72
void m1 () {
73
- m = 0 ; // COMPLIANT - does not apply to non dependent base types
74
- g (); // COMPLIANT - does not apply to non dependent base types
75
- TYPE t = 0 ; // COMPLIANT - does not apply to non dependent base types
76
- void (*p)() = &g; // COMPLIANT - does not apply to non dependent base types
73
+ m = 0 ; // COMPLIANT - does not apply to non dependent base types
74
+ g (); // COMPLIANT - does not apply to non dependent base types
75
+ TYPE t1 = 0 ; // COMPLIANT - does not apply to non dependent base types
76
+ void (D::*p)() =
77
+ &g; // COMPLIANT - does not apply to non dependent base types
77
78
}
78
79
};
0 commit comments