summaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.old-deja/g++.other/comdat1.C
blob: a60c865935cc40b413726975c8ea4e512ad24aae (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// { dg-do run  }
// { dg-additional-sources " comdat1-aux.cc" }
// { dg-options "-O" }
// Test that statics in inline functions are unified between
// translation units.  Currently we handle this by just suppressing
// inling and relying on unification of the function itself.

inline int f ()
{
  static int i;
  return ++i;
}

int g ();

int main ()
{
  if (f() != 1
      || g() != 2
      || f() != 3)
    return 1;
  return 0;
}