xref: /openbsd-src/gnu/usr.bin/binutils/gdb/testsuite/gdb.base/execd-prog.c (revision b725ae7711052a2233e31a66fefb8a752c388d7a)
1*b725ae77Skettenis #include <stdio.h>
2*b725ae77Skettenis #include <stdlib.h>
3*b725ae77Skettenis #include <unistd.h>
4*b725ae77Skettenis 
5*b725ae77Skettenis /* There is a global_i in foll-exec, which exec's us.  We
6*b725ae77Skettenis    should not be able to see that other definition of global_i
7*b725ae77Skettenis    after we are exec'd.
8*b725ae77Skettenis    */
9*b725ae77Skettenis int  global_i = 0;
10*b725ae77Skettenis 
11*b725ae77Skettenis #ifdef PROTOTYPES
main(int argc,char ** argv)12*b725ae77Skettenis int main (int argc, char **argv)
13*b725ae77Skettenis #else
14*b725ae77Skettenis main (argc, argv)
15*b725ae77Skettenis   int  argc;
16*b725ae77Skettenis   char *  argv[];
17*b725ae77Skettenis #endif
18*b725ae77Skettenis {
19*b725ae77Skettenis   /* There is a local_j in foll-exec, which exec's us.  We
20*b725ae77Skettenis      should not be able to see that other definition of local_j
21*b725ae77Skettenis      after we are exec'd.
22*b725ae77Skettenis      */
23*b725ae77Skettenis   int  local_j = argc;
24*b725ae77Skettenis   char *  s;
25*b725ae77Skettenis 
26*b725ae77Skettenis   printf ("Hello from execd-prog...\n");
27*b725ae77Skettenis   if (argc != 2)
28*b725ae77Skettenis     {
29*b725ae77Skettenis       printf ("expected one string argument\n");
30*b725ae77Skettenis       exit (-1);
31*b725ae77Skettenis     }
32*b725ae77Skettenis   s = argv[1];
33*b725ae77Skettenis   printf ("argument received: %s\n", s);
34*b725ae77Skettenis }
35