Handle void * conversions in FreeBSD/x86 native code to fix C++ build.
[deliverable/binutils-gdb.git] / gdb / testsuite / gdb.python / py-type.c
... / ...
CommitLineData
1/* This testcase is part of GDB, the GNU debugger.
2
3 Copyright 2009-2016 Free Software Foundation, Inc.
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
18struct s
19{
20 int a;
21 int b;
22};
23
24struct SS
25{
26 union { int x; char y; };
27 union { int a; char b; };
28};
29
30typedef struct s TS;
31TS ts;
32
33#ifdef __cplusplus
34struct C
35{
36 int c;
37 int d;
38
39 int
40 a_method (int x, char y)
41 {
42 return x + y;
43 }
44
45 int
46 a_const_method (int x, char y) const
47 {
48 return x + y;
49 }
50
51 static int
52 a_static_method (int x, char y)
53 {
54 return x + y;
55 }
56};
57
58struct D : C
59{
60 int e;
61 int f;
62};
63
64template<typename T, int I, int C::*MP>
65struct Temargs
66{
67};
68
69Temargs<D, 23, &C::c> temvar;
70
71#endif
72
73enum E
74{ v1, v2, v3
75};
76
77struct s vec_data_1 = {1, 1};
78struct s vec_data_2 = {1, 2};
79
80static int
81a_function (int x, char y)
82{
83 return x + y;
84}
85
86int
87main ()
88{
89 int ar[2] = {1,2};
90 struct s st;
91 struct SS ss;
92#ifdef __cplusplus
93 C c;
94 c.c = 1;
95 c.d = 2;
96 D d;
97 d.e = 3;
98 d.f = 4;
99
100 c.a_method (0, 1);
101 c.a_const_method (0, 1);
102 C::a_static_method (0, 1);
103#endif
104 enum E e;
105
106 st.a = 3;
107 st.b = 5;
108
109 e = v2;
110
111 ss.x = 100;
112
113 a_function (0, 1);
114
115 return 0; /* break to inspect struct and array. */
116}
This page took 0.023384 seconds and 4 git commands to generate.