1static int filelocal = 2; /* In Data section */ 2static int filelocal_bss; /* In BSS section */ 3#ifndef __STDC__ 4#define const /**/ 5#endif 6static const int filelocal_ro = 202; /* In Read-Only Data section */ 7 8void foo () 9{ 10 11 void bar (); 12 13 static int funclocal = 3; /* In Data section */ 14 static int funclocal_bss; /* In BSS section */ 15 static const int funclocal_ro = 203; /* RO Data */ 16 static const int funclocal_ro_bss; /* RO Data */ 17 18 funclocal_bss = 103; 19 bar (); 20} 21 22void bar () 23{ 24 static int funclocal = 4; /* In data section */ 25 static int funclocal_bss; /* In BSS section */ 26 funclocal_bss = 104; 27} 28 29void init1 () 30{ 31 filelocal_bss = 102; 32} 33 34/* On some systems, such as AIX, unreferenced variables are deleted 35 from the executable. */ 36void usestatics1 () 37{ 38 void useit1 (int val); 39 40 useit1 (filelocal); 41 useit1 (filelocal_bss); 42 useit1 (filelocal_ro); 43} 44 45#ifdef PROTOTYPES 46void useit1 (int val) 47#else 48void useit1 (val) int val; 49#endif 50{ 51 static int usedval; 52 53 usedval = val; 54} 55