blob: a0c50021da093b8fc5f6a2cfcb69e794df42c010 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
#include <iostream>
template<typename DATA>
struct ATB
{
int data;
ATB() : data(0) {}
};
template<typename DATA,
typename DerivedType >
class A : public ATB<DATA>
{
public:
static DerivedType const DEFAULT_INSTANCE;
};
template<typename DATA, typename DerivedType>
const DerivedType A<DATA, DerivedType>::DEFAULT_INSTANCE;
class B : public A<int, B>
{
};
int main()
{
B b;
// If this if-block is removed then GDB shall
// not infinitely recurse when trying to print b.
return 0; // marker
}
|