diff options
Diffstat (limited to 'gdb/testsuite')
-rw-r--r-- | gdb/testsuite/ChangeLog | 4 | ||||
-rw-r--r-- | gdb/testsuite/gdb.cp/punctuator.exp | 52 |
2 files changed, 56 insertions, 0 deletions
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index d5ae448..68981fd 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2008-12-22 Tom Tromey <tromey@redhat.com> + + * gdb.cp/punctuator.exp: New file. + 2008-12-22 Jan Kratochvil <jan.kratochvil@redhat.com> * gdb.base/completion.exp (Completing non-existing component): New test. diff --git a/gdb/testsuite/gdb.cp/punctuator.exp b/gdb/testsuite/gdb.cp/punctuator.exp new file mode 100644 index 0000000..046f568 --- /dev/null +++ b/gdb/testsuite/gdb.cp/punctuator.exp @@ -0,0 +1,52 @@ +# Copyright 2008 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +# Simple test for alternate punctuators. + +# This file is part of the gdb testsuite + +if $tracelevel then { + strace $tracelevel + } + +if { [skip_cplus_tests] } { continue } + +gdb_exit +gdb_start + +gdb_test "set lang c++" "" +gdb_test "print (0x5a5a bitand 0xaaaa) == (0x5a5a & 0xaaaa)" " = true" +gdb_test "print (0x5a5a bitor 0xaaaa) == (0x5a5a | 0xaaaa)" " = true" +gdb_test "print (0x5a5a xor 0xaaaa) == (0x5a5a ^ 0xaaaa)" " = true" +gdb_test "print (0x5a5a and 0xaaaa) == (0x5a5a && 0xaaaa)" " = true" +gdb_test "print (0x5a5a or 0xaaaa) == (0x5a5a || 0xaaaa)" " = true" +gdb_test "print (not not 0xaaaa) == (!!0xaaaa)" " = true" +gdb_test "print (compl 0xaaaa) == (~0xaaaa)" " = true" + +gdb_test "set $u = 0x5a5a" "" +gdb_test "set $v = 0x5a5a" "" +gdb_test "print ($u not_eq 0xaaaa) == ($v != 0xaaaa)" "= true" +gdb_test "print ($u and_eq 0xaaaa) == ($v &= 0xaaaa)" "= true" + +gdb_test "set $u = 0x5a5a" "" +gdb_test "set $v = 0x5a5a" "" +gdb_test "print ($u or_eq 0xaaaa) == ($v |= 0xaaaa)" "= true" + +gdb_test "set $u = 0x5a5a" "" +gdb_test "set $v = 0x5a5a" "" +gdb_test "print ($u xor_eq 0xaaaa) == ($v ^= 0xaaaa)" "= true" + +gdb_exit +return 0 |