File: pr9167.cc

package info (click to toggle)
binutils-avr 2.26.20160125%2BAtmel3.6.2-4
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 365,552 kB
  • sloc: ansic: 2,480,046; asm: 892,808; exp: 188,218; cpp: 133,829; makefile: 63,886; sh: 32,212; yacc: 26,783; lisp: 16,709; xml: 7,490; perl: 6,449; python: 4,555; ada: 4,318; pascal: 3,174; lex: 2,250; cs: 879; sed: 334; f90: 298; awk: 168; objc: 134; java: 73; fortran: 43
file content (36 lines) | stat: -rw-r--r-- 536 bytes parent folder | download | duplicates (29)
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
}