From e2171b3cd2aeafc3cd868f532b7728ad4208d5bd Mon Sep 17 00:00:00 2001 From: Keith Seitz Date: Wed, 28 Mar 2012 17:33:33 +0000 Subject: [PATCH] * gdb.linespec/ls-dollar.cc: New file. * gdb.linespec/ls-dollar.exp: New test. --- gdb/testsuite/ChangeLog | 7 ++++- gdb/testsuite/gdb.linespec/ls-dollar.cc | 26 ++++++++++++++++ gdb/testsuite/gdb.linespec/ls-dollar.exp | 38 ++++++++++++++++++++++++ 3 files changed, 70 insertions(+), 1 deletion(-) create mode 100644 gdb/testsuite/gdb.linespec/ls-dollar.cc create mode 100644 gdb/testsuite/gdb.linespec/ls-dollar.exp diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index 97037efd7c2..2aa0493eb54 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,4 +1,9 @@ -2012-03-26 Keith Seitz +2012-03-28 Keith Seitz + + * gdb.linespec/ls-dollar.cc: New file. + * gdb.linespec/ls-dollar.exp: New test. + +2012-03-28 Keith Seitz * gdb.cp/namespace.exp: Add breakpoint tests for functions starting with the global namespace. diff --git a/gdb/testsuite/gdb.linespec/ls-dollar.cc b/gdb/testsuite/gdb.linespec/ls-dollar.cc new file mode 100644 index 00000000000..72e792b9a2a --- /dev/null +++ b/gdb/testsuite/gdb.linespec/ls-dollar.cc @@ -0,0 +1,26 @@ +/* This testcase is part of GDB, the GNU debugger. + + Copyright 2012 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 . */ + +static int $dollar_var = 0; + +int $dollar_func (void) { return $dollar_var; } /* dollar_func */ + +int +main (void) +{ + return $dollar_func (); +} diff --git a/gdb/testsuite/gdb.linespec/ls-dollar.exp b/gdb/testsuite/gdb.linespec/ls-dollar.exp new file mode 100644 index 00000000000..7b1f0d63910 --- /dev/null +++ b/gdb/testsuite/gdb.linespec/ls-dollar.exp @@ -0,0 +1,38 @@ +# Copyright 2012 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 . + +# Tests for dollar signs in linespecs + +set base "ls-dollar" +set srcfile "$base.cc" +set testfile "$base.exp" +set exefile $base + +if {[skip_cplus_tests]} { + unsupported "skipping C++ tests" + return +} + +if {[prepare_for_testing $testfile $exefile $srcfile \ + {debug nowarnings c++}]} { + return -1 +} + +gdb_test_no_output "set listsize 1" + +gdb_test "list \$dollar_var" \ + ".*static int [string_to_regexp {$dollar_var}] = 0;" +gdb_test "break \$dollar_func" \ + "Breakpoint $decimal at $hex: file .*$srcfile, line [gdb_get_line_number {dollar_func}]\\\." -- 2.30.2