import gdb-1999-08-02 snapshot
[deliverable/binutils-gdb.git] / gdb / testsuite / gdb.c++ / userdef.exp
CommitLineData
c906108c
SS
1# Copyright (C) 1998 Free Software Foundation, Inc.
2
3# This program is free software; you can redistribute it and/or modify
4# it under the terms of the GNU General Public License as published by
5# the Free Software Foundation; either version 2 of the License, or
6# (at your option) any later version.
7#
8# This program is distributed in the hope that it will be useful,
9# but WITHOUT ANY WARRANTY; without even the implied warranty of
10# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11# GNU General Public License for more details.
12#
13# You should have received a copy of the GNU General Public License
14# along with this program; if not, write to the Free Software
15# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
16
17# Please email any bugs, comments, and/or additions to this file to:
18# bug-gdb@prep.ai.mit.edu
19
20# written by Elena Zannoni (ezannoni@cygnus.com)
21#
22# testing overloaded operators resolution.
23#
24# source file "userdef.cc"
25#
26
27
28if $tracelevel then {
29 strace $tracelevel
30}
31
32# Check to see if we have an executable to test. If not, then either we
33# haven't tried to compile one, or the compilation failed for some reason.
34# In either case, just notify the user and skip the tests in this file.
35
36set testfile "userdef"
37set srcfile ${testfile}.cc
38set binfile ${objdir}/${subdir}/${testfile}
39
40if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug c++}] != "" } {
41 gdb_suppress_entire_file "Testcase compile failed, so all tests in this file will automatically fail."
42}
43
44
45gdb_exit
46gdb_start
47gdb_reinitialize_dir $srcdir/$subdir
48gdb_load ${binfile}
49
50
51if ![runto_main] then {
52 perror "couldn't run to breakpoint"
53 continue
54}
55
56send_gdb "break marker1\n" ; gdb_expect -re ".*$gdb_prompt $"
57 send_gdb "cont\n"
58 gdb_expect {
59 -re "Break.* marker1 \\(\\) at .*:$decimal.*$gdb_prompt $" {
60 send_gdb "up\n"
61 gdb_expect {
62 -re ".*$gdb_prompt $" { pass "up from marker1" }
63 timeout { fail "up from marker1" }
64 }
65 }
66 -re "$gdb_prompt $" { fail "continue to marker1" }
67 timeout { fail "(timeout) continue to marker1" }
68 }
69
70
a0b3c4fd 71setup_xfail "hppa*-*-*"
c906108c
SS
72send_gdb "print one+two\n"
73gdb_expect {
74 -re "FIXME.*$gdb_prompt $" {
75 pass "print value of one + two"
76 }
77 -re ".*$gdb_prompt $" { xfail "print value of one two" }
78 timeout { fail "(timeout) print value of one two" }
79 }
80
a0b3c4fd 81setup_xfail "hppa*-*-*"
c906108c
SS
82send_gdb "print one-two\n"
83gdb_expect {
84 -re ".*FIXME.*$gdb_prompt $" {
85 pass "print value of one - two"
86 }
87 -re ".*$gdb_prompt $" { xfail "print value of one - two" }
88 timeout { fail "(timeout) print value of one - two" }
89 }
90
a0b3c4fd 91setup_xfail "hppa*-*-*"
c906108c
SS
92send_gdb "print one*two\n"
93gdb_expect {
94 -re ".*FIXME.*$gdb_prompt $" {
95 pass "print value of one * two"
96 }
97 -re ".*$gdb_prompt $" { xfail "print value of one * two" }
98 timeout { fail "(timeout) print value of one * two" }
99 }
100
a0b3c4fd 101setup_xfail "hppa*-*-*"
c906108c
SS
102send_gdb "print one/two\n"
103gdb_expect {
104 -re ".*FIXME.*$gdb_prompt $" {
105 pass "print value of one / two"
106 }
107 -re ".*$gdb_prompt $" { xfail "print value of one / two" }
108 timeout { fail "(timeout) print value of one / two" }
109 }
110
a0b3c4fd 111setup_xfail "hppa*-*-*"
c906108c
SS
112send_gdb "print one%two\n"
113gdb_expect {
114 -re ".*FIXME.*$gdb_prompt $" {
115 pass "print value of one % two"
116 }
117 -re ".*$gdb_prompt $" { xfail "print value of one % two" }
118 timeout { fail "(timeout) print value of one % two" }
119 }
120
a0b3c4fd 121setup_xfail "hppa*-*-*"
c906108c
SS
122send_gdb "print one&&two\n"
123gdb_expect {
124 -re ".*FIXME.*$gdb_prompt $" {
125 pass "print value of one && two"
126 }
127 -re ".*$gdb_prompt $" { xfail "print value of one && two" }
128 timeout { fail "(timeout) print value of one && two" }
129 }
130
a0b3c4fd 131setup_xfail "hppa*-*-*"
c906108c
SS
132send_gdb "print one||two\n"
133gdb_expect {
134 -re ".*FIXME.*$gdb_prompt $" {
135 pass "print value of one|| two"
136 }
137 -re ".*$gdb_prompt $" { xfail "print value of one|| two" }
138 timeout { fail "(timeout) print value of one|| two" }
139 }
140
a0b3c4fd 141setup_xfail "hppa*-*-*"
c906108c
SS
142send_gdb "print one&two\n"
143gdb_expect {
144 -re ".*FIXME.*$gdb_prompt $" {
145 pass "print value of one & two"
146 }
147 -re ".*$gdb_prompt $" { xfail "print value of one & two" }
148 timeout { fail "(timeout) print value of one & two" }
149 }
150
a0b3c4fd 151setup_xfail "hppa*-*-*"
c906108c
SS
152send_gdb "print one|two\n"
153gdb_expect {
154 -re ".*FIXME.*$gdb_prompt $" {
155 pass "print value of one | two"
156 }
157 -re ".*$gdb_prompt $" { xfail "print value of one | two" }
158 timeout { fail "(timeout) print value of one | two" }
159 }
160
a0b3c4fd 161setup_xfail "hppa*-*-*"
c906108c
SS
162send_gdb "print one ^ two\n"
163gdb_expect {
164 -re ".*FIXME.*$gdb_prompt $" {
165 pass "print value of one ^ two"
166 }
167 -re ".*$gdb_prompt $" { xfail "print value of one ^ two" }
168 timeout { fail "(timeout) print value of one ^ two" }
169 }
170
a0b3c4fd
JM
171
172setup_xfail "hppa*-*-*"
c906108c
SS
173send_gdb "print one < two\n"
174gdb_expect {
175 -re ".*FIXME.*$gdb_prompt $" {
176 pass "print value of one < two"
177 }
178 -re ".*$gdb_prompt $" { xfail "print value of one < two" }
179 timeout { fail "(timeout) print value of one < two" }
180 }
181
a0b3c4fd 182setup_xfail "hppa*-*-*"
c906108c
SS
183send_gdb "print one <= two\n"
184gdb_expect {
185 -re ".*FIXME.*$gdb_prompt $" {
186 pass "print value of one <= two"
187 }
188 -re ".*$gdb_prompt $" { xfail "print value of one <= two" }
189 timeout { fail "(timeout) print value of one <= two" }
190 }
191
a0b3c4fd 192setup_xfail "hppa*-*-*"
c906108c
SS
193send_gdb "print one > two\n"
194gdb_expect {
195 -re ".*FIXME.*$gdb_prompt $" {
196 pass "print value of one > two"
197 }
198 -re ".*$gdb_prompt $" { xfail "print value of one > two" }
199 timeout { fail "(timeout) print value of one > two" }
200 }
201
a0b3c4fd 202setup_xfail "hppa*-*-*"
c906108c
SS
203send_gdb "print one >= two\n"
204gdb_expect {
205 -re ".*FIXME.*$gdb_prompt $" {
206 pass "print value of one >= two"
207 }
208 -re ".*$gdb_prompt $" { xfail "print value of one >= two" }
209 timeout { fail "(timeout) print value of one >= two" }
210 }
211
212
a0b3c4fd 213setup_xfail "hppa*-*-*"
c906108c
SS
214send_gdb "print one==two\n"
215gdb_expect {
216 -re ".*FIXME.*$gdb_prompt $" {
217 pass "print value of one == two"
218 }
219 -re ".*$gdb_prompt $" { xfail "print value of one == two" }
220 timeout { fail "(timeout) print value of one == two" }
221 }
222
a0b3c4fd
JM
223
224setup_xfail "hppa*-*-*"
c906108c
SS
225send_gdb "print one!=two\n"
226gdb_expect {
227 -re ".*FIXME.*$gdb_prompt $" {
228 pass "print value of one != two"
229 }
230 -re ".*$gdb_prompt $" { xfail "print value of one != two" }
231 timeout { fail "(timeout) print value of one != two" }
232 }
233
a0b3c4fd 234setup_xfail "hppa*-*-*"
c906108c
SS
235send_gdb "print one<<31\n"
236gdb_expect {
237 -re ".*FIXME.*$gdb_prompt $" {
238 pass "print value of one<<31"
239 }
240 -re ".*$gdb_prompt $" { xfail "print value of one<<31" }
241 timeout { fail "(timeout) print value of one<<31" }
242 }
243
a0b3c4fd 244setup_xfail "hppa*-*-*"
c906108c
SS
245send_gdb "print one>>31\n"
246gdb_expect {
247 -re ".*FIXME.*$gdb_prompt $" {
248 pass "print value of one>>31"
249 }
250 -re ".*$gdb_prompt $" { xfail "print value of one>>31" }
251 timeout { fail "(timeout) print value of one>>31" }
252 }
253
a0b3c4fd 254setup_xfail "hppa*-*-*"
c906108c
SS
255send_gdb "print !one\n"
256gdb_expect {
257 -re ".*FIXME.*$gdb_prompt $" {
258 pass "print value of !one"
259 }
260 -re ".*$gdb_prompt $" { xfail "print value of !one" }
261 timeout { fail "(timeout) print value of !one" }
262 }
263
a0b3c4fd 264setup_xfail "hppa*-*-*"
c906108c
SS
265send_gdb "print ~one\n"
266gdb_expect {
267 -re ".*FIXME.*$gdb_prompt $" {
268 pass "print value of ~one"
269 }
270 -re ".*$gdb_prompt $" { xfail "print value of ~one" }
271 timeout { fail "(timeout) print value of ~one" }
272 }
273
a0b3c4fd 274setup_xfail "hppa*-*-*"
c906108c
SS
275send_gdb "print -one\n"
276gdb_expect {
277 -re ".*FIXME.*$gdb_prompt $" {
278 pass "print value of -one"
279 }
280 -re ".*$gdb_prompt $" { xfail "print value of -one" }
281 timeout { fail "(timeout) print value of -one" }
282 }
283
a0b3c4fd 284setup_xfail "hppa*-*-*"
c906108c
SS
285send_gdb "print one++\n"
286gdb_expect {
287 -re ".*FIXME.*$gdb_prompt $" {
288 pass "print value of one++"
289 }
290 -re ".*$gdb_prompt $" { xfail "print value of one++" }
291 timeout { fail "(timeout) print value of one++" }
292 }
293
a0b3c4fd 294setup_xfail "hppa*-*-*"
c906108c
SS
295send_gdb "print ++one\n"
296gdb_expect {
297 -re ".*FIXME.*$gdb_prompt $" {
298 pass "print value of ++one>>31"
299 }
300 -re ".*$gdb_prompt $" { xfail "print value of ++one" }
301 timeout { fail "(timeout) print value of ++one" }
302 }
303
a0b3c4fd 304setup_xfail "hppa*-*-*"
c906108c
SS
305send_gdb "print one--\n"
306gdb_expect {
307 -re ".*.FIXME*$gdb_prompt $" {
308 pass "print value of one-->>31"
309 }
310 -re ".*$gdb_prompt $" { xfail "print value of one-->>31" }
311 timeout { fail "(timeout) print value of one-->>31" }
312 }
313
a0b3c4fd
JM
314
315setup_xfail "hppa*-*-*"
c906108c
SS
316send_gdb "print --one\n"
317gdb_expect {
318 -re ".*FIXME.*$gdb_prompt $" {
319 pass "print value of --one"
320 }
321 -re ".*$gdb_prompt $" { xfail "print value of --one" }
322 timeout { fail "(timeout) print value of --one" }
323 }
324
a0b3c4fd 325setup_xfail "hppa*-*-*"
c906108c
SS
326send_gdb "print one+=7\n"
327gdb_expect {
328 -re ".*FIXME.*$gdb_prompt $" {
329 pass "print value of one+=7"
330 }
331 -re ".*$gdb_prompt $" { xfail "print value of one+=7" }
332 timeout { fail "(timeout) print value of one+=7" }
333 }
334
a0b3c4fd 335setup_xfail "hppa*-*-*"
c906108c
SS
336send_gdb "print two=one\n"
337gdb_expect {
338 -re ".*FIXME.*$gdb_prompt $" {
339 pass "print value of two=one"
340 }
341 -re ".*$gdb_prompt $" { xfail "print value of two=one" }
342 timeout { fail "(timeout) print value of two=one" }
343 }
344
345gdb_exit
346return 0
This page took 0.04942 seconds and 4 git commands to generate.