summaryrefslogtreecommitdiff
path: root/clang/test/CodeGenCXX/static-local-in-local-class.cpp
blob: ebf560ab9805d37aa8c2a47f14e940bc19b8dd5e (about) (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
// RUN: %clang_cc1 -emit-llvm -o %t %s
// PR6769

struct X {
  static void f();
};

void X::f() {
  static int *i;
  {
    struct Y {
      static void g() {
        i = new int();
	*i = 100;
	(*i) = (*i) +1;
      }
    };
    (void)Y::g();
  }
  (void)i;
}

// pr7101
void foo() {
    static int n = 0;
    struct Helper {
        static void Execute() {
            n++;
        }
    };
    Helper::Execute();
}