1/* Copyright 1999-2020 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 *	This simple program that passes different types of arguments
20 *      on function calls.  Useful to test printing frames, stepping, etc.
21 */
22
23#include <stdio.h>
24
25int callee4 (void)
26{
27  int A=1; /* callee4 begin */
28  int B=2;
29  int C;
30  int D[3] = {0, 1, 2};
31
32  C = A + B;
33  return 0;
34}
35
36void callee3 (char *strarg)
37{
38  callee4 ();
39}
40
41void callee2 (int intarg, char *strarg)
42{
43  callee3 (strarg);
44}
45
46void callee1 (int intarg, char *strarg, double fltarg)
47{
48  callee2 (intarg, strarg);
49}
50
51int main ()
52{
53  callee1 (2, "A string argument.", 3.5);
54  callee1 (2, "A string argument.", 3.5);
55
56  printf ("Hello, World!");
57
58  return 0;
59}
60