Automatic Copyright Year update after running gdb/copyright.py
[deliverable/binutils-gdb.git] / gdb / testsuite / gdb.base / max-depth.c
CommitLineData
2e62ab40
AB
1/* This testcase is part of GDB, the GNU debugger.
2
88b9d363 3 Copyright 2019-2022 Free Software Foundation, Inc.
2e62ab40
AB
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 s1
19{
20 int x;
21 int y;
22} s1;
23
24struct s2
25{
26 int x;
27 int y;
28 struct
29 {
30 int z;
31 int a;
32 };
33} s2;
34
35struct s3
36{
37 int x;
38 int y;
39 struct
40 {
41 int z;
42 int a;
43 struct
44 {
45 int b;
46 int c;
47 };
48 };
49} s3;
50
51struct s4
52{
53 int x;
54 int y;
55 struct
56 {
57 int x;
58 int y;
59 struct
60 {
61 int x;
62 int y;
63 } l2;
64 } l1;
65} s4;
66
67struct s5
68{
69 union
70 {
71 int raw[3];
72 struct
73 {
74 int x;
75 int y;
76 int z;
77 };
78 };
79} s5;
80
81typedef struct
82{
83 union
84 {
85 int raw[3];
86 struct
87 {
88 int x;
89 int y;
90 int z;
91 };
92 };
93} s6_t;
94
95s6_t s6;
96
97struct s7
98{
99 struct
100 {
101 int x;
102 int y;
103 };
104 struct
105 {
106 int z;
107 int a;
108 };
109 struct
110 {
111 int b;
112 int c;
113 };
114} s7;
115
116struct s8
117{
118 int x;
119 int y;
120 struct
121 {
122 int z;
123 int a;
124 struct
125 {
126 int b;
127 int c;
128 };
129 } d1;
130} s8;
131
132struct s9
133{
134 int x;
135 int y;
136 struct
137 {
138 int k;
139 int j;
140 struct
141 {
142 int z;
143 int a;
144 struct
145 {
146 int b;
147 int c;
148 };
149 } d1;
150 };
151 struct
152 {
153 int z;
154 int a;
155 struct
156 {
157 int b;
158 int c;
159 };
160 } d2;
161} s9;
162
163struct s10
164{
165 int x[10];
166 int y;
167 struct
168 {
169 int k[10];
170 int j;
171 struct
172 {
173 int z;
174 int a;
175 struct
176 {
177 int b[10];
178 int c;
179 };
180 } d1;
181 };
182 struct
183 {
184 int z;
185 int a;
186 struct
187 {
188 int b[10];
189 int c;
190 };
191 } d2;
192} s10;
193
194struct s11
195{
196 int x;
197 char s[10];
198 struct
199 {
200 int z;
201 int a;
202 };
203} s11;
204
205/* The following are C++ inheritance testing. */
206#ifdef __cplusplus
207
208/* This is non-virtual inheritance. */
209struct C1 { int c1 = 1; } c1;
210struct C2 { int c2 = 2; } c2;
211struct C3 : C2 { int c3 = 3; } c3;
212struct C4 { int c4 = 4; } c4;
213struct C5 : C4 { int c5 = 5; } c5;
214struct C6 : C5 { int c6 = 6; } c6;
215struct C7 : C1, C3, C6 { int c7 = 7; } c7;
216
217/* This is virtual inheritance. */
218struct V1 { int v1 = 1; } v1;
219struct V2 : virtual V1 { int v2 = 2; } v2;
220struct V3 : virtual V1 { int v3 = 3; } v3;
221struct V4 : virtual V2 { int v4 = 4; } v4;
222struct V5 : virtual V2 { int v5 = 1; } v5;
223struct V6 : virtual V2, virtual V3 { int v6 = 1; } v6;
224struct V7 : virtual V4, virtual V5, virtual V6 { int v7 = 1; } v7;
225
226#endif /* __cplusplus */
227
228int
229main ()
230{
231 return 0;
232}
This page took 0.380738 seconds and 4 git commands to generate.