]> Git Repo - binutils.git/blob - gdb/testsuite/gdb.base/condbreak.c
import gdb-1999-06-28 snapshot
[binutils.git] / gdb / testsuite / gdb.base / condbreak.c
1 #ifdef vxworks
2
3 #  include <stdio.h>
4
5 /* VxWorks does not supply atoi.  */
6 static int
7 atoi (z)
8      char *z;
9 {
10   int i = 0;
11
12   while (*z >= '0' && *z <= '9')
13     i = i * 10 + (*z++ - '0');
14   return i;
15 }
16
17 /* I don't know of any way to pass an array to VxWorks.  This function
18    can be called directly from gdb.  */
19
20 vxmain (arg)
21 char *arg;
22 {
23   char *argv[2];
24
25   argv[0] = "";
26   argv[1] = arg;
27   main (2, argv, (char **) 0);
28 }
29
30 #else /* ! vxworks */
31 #  include <stdio.h>
32 #  include <stdlib.h>
33 #endif /* ! vxworks */
34
35 /*
36  * The following functions do nothing useful.  They are included simply
37  * as places to try setting breakpoints at.  They are explicitly
38  * "one-line functions" to verify that this case works (some versions
39  * of gcc have or have had problems with this).
40  */
41
42 #ifdef PROTOTYPES
43 int marker1 (void) { return (0); }
44 int marker2 (int a) { return (1); }
45 void marker3 (char *a, char *b) {}
46 void marker4 (long d) {}
47 #else
48 int marker1 () { return (0); }
49 int marker2 (a) int a; { return (1); }
50 void marker3 (a, b) char *a, *b; {}
51 void marker4 (d) long d; {}
52 #endif
53
54 /*
55  *      This simple classical example of recursion is useful for
56  *      testing stack backtraces and such.
57  */
58
59 #ifdef PROTOTYPES
60 int factorial(int);
61
62 int
63 main (int argc, char **argv, char **envp)
64 #else
65 int
66 main (argc, argv, envp)
67 int argc;
68 char *argv[], **envp;
69 #endif
70 {
71 #ifdef usestubs
72     set_debug_traps();
73     breakpoint();
74 #endif
75     if (argc == 123456) {
76         fprintf (stderr, "usage:  factorial <number>\n");
77         return 1;
78     }
79     printf ("%d\n", factorial (atoi ("6")));
80
81     marker1 ();
82     marker2 (43);
83     marker3 ("stack", "trace");
84     marker4 (177601976L);
85     return 0;
86 }
87
88 #ifdef PROTOTYPES
89 int factorial (int value)
90 #else
91 int factorial (value)
92 int value;
93 #endif
94 {
95     if (value > 1) {
96         value *= factorial (value - 1);
97     }
98     return (value);
99 }
100
This page took 0.027991 seconds and 4 git commands to generate.