OSDN Git Service

Switch the license of all .c files to GPLv3.
[pf3gnuchains/pf3gnuchains3x.git] / gdb / testsuite / gdb.base / gcore.c
1 /* Copyright 2002, 2004, 2007 Free Software Foundation, Inc.
2
3    This file is part of GDB.
4
5    This program is free software; you can redistribute it and/or modify
6    it under the terms of the GNU General Public License as published by
7    the Free Software Foundation; either version 3 of the License, or
8    (at your option) any later version.
9
10    This program is distributed in the hope that it will be useful,
11    but WITHOUT ANY WARRANTY; without even the implied warranty of
12    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13    GNU General Public License for more details.
14
15    You should have received a copy of the GNU General Public License
16    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
17
18 /*
19  * Test GDB's ability to save and reload a corefile.
20  */
21
22 #include <stdlib.h>
23 #include <string.h>
24
25 int extern_array[4] = {1, 2, 3, 4};
26 static int static_array[4] = {5, 6, 7, 8};
27 static int un_initialized_array[4];
28 static char *heap_string;
29
30 void 
31 terminal_func ()
32 {
33   return;
34 }
35
36 void
37 array_func ()
38 {
39   int local_array[4];
40   int i;
41
42   heap_string = (char *) malloc (80);
43   strcpy (heap_string, "I'm a little teapot, short and stout...");
44   for (i = 0; i < 4; i++)
45     {
46       un_initialized_array[i] = extern_array[i] + 8;
47       local_array[i] = extern_array[i] + 12;
48     }
49   terminal_func ();
50 }
51
52 #ifdef PROTOTYPES
53 int factorial_func (int value)
54 #else
55 int factorial_func (value)
56      int value;
57 #endif
58 {
59   if (value > 1) {
60     value *= factorial_func (value - 1);
61   }
62   array_func ();
63   return (value);
64 }
65
66 main()
67 {
68   factorial_func (6);
69   return 0;
70 }