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