1 static int filelocal = 2; /* In Data section */ 2 static int filelocal_bss; /* In BSS section */ 3 #ifndef __STDC__ 4 #define const /**/ 5 #endif 6 static const int filelocal_ro = 202; /* In Read-Only Data section */ 7 8 void 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 22 void bar () 23 { 24 static int funclocal = 4; /* In data section */ 25 static int funclocal_bss; /* In BSS section */ 26 funclocal_bss = 104; 27 } 28 29 void init1 () 30 { 31 filelocal_bss = 102; 32 } 33 34 /* On some systems, such as AIX, unreferenced variables are deleted 35 from the executable. */ 36 void usestatics1 () 37 { 38 void useit1 (int val); 39 40 useit1 (filelocal); 41 useit1 (filelocal_bss); 42 useit1 (filelocal_ro); 43 } 44 45 #ifdef PROTOTYPES 46 void useit1 (int val) 47 #else 48 void useit1 (val) int val; 49 #endif 50 { 51 static int usedval; 52 53 usedval = val; 54 } 55