1int count = 0;
2
3class T {
4  int i;
5public:
6  T() {
7    i = 1;
8    ++count;
9  }
10  T(const T& o) {
11    i = o.i;
12    ++count;
13  }
14  T operator +(const T& o) {
15    T r;
16    r.i = this->i + o.i;
17    return r;
18  }
19  operator int () {
20    return i;
21  }
22  ~T() {
23    --count;
24  }
25} s, b;
26
27void bar() {
28  static int j = int(s+b);
29  int i = int(s+b);
30}
31
32int i = int(s+b);
33
34int main() {
35  bar();
36  bar();
37  return count != 2;
38}
39