OSDN Git Service

* gcc.dg/20020201-1.c: Use cleanup-coverage_files.
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / g++.old-deja / g++.other / comdat2.C
1 // { dg-do run  }
2 // { dg-additional-sources " comdat2-aux.cc" }
3 // { dg-options "-O" }
4 // Test that statics in inline functions are unified between
5 // translation units.  Currently we handle this by just suppressing
6 // inling and relying on unification of the function itself.
7
8 template <class T>
9 struct S {
10   static int f ()
11   {
12     static int i;
13     return ++i;
14   }
15   S () {};
16   ~S () {};
17 };
18
19 typedef S<int> a;
20
21 int g ();
22
23 int main ()
24 {
25   if (a::f() != 1
26       || g() != 2
27       || a::f() != 3)
28     return 1;
29   return 0;
30 }