[2/3] Remove hard-coded line number from templates.exp

Message ID 20180202183642.4288-2-keiths@redhat.com
State New, archived
Headers

Commit Message

Keith Seitz Feb. 2, 2018, 6:36 p.m. UTC
  templates.exp has a hard-coded line number in it:

  gdb_test "b 770" \
      "Breakpoint .* at .*, line 770."

The problems with this are well-known, and this patch simply removes it.
I've also added the missing FSF copyright header to templates.cc.

testsuite/ChangeLog:

	* gdb.cp/templates.cc (main): Add breakpoint marker comment.
	* gdb.cp/templates.exp: Remove hard-coded line number.
---
 gdb/testsuite/gdb.cp/templates.cc  | 19 ++++++++++++++++++-
 gdb/testsuite/gdb.cp/templates.exp |  8 ++------
 2 files changed, 20 insertions(+), 7 deletions(-)
  

Comments

Yao Qi Feb. 5, 2018, 5:03 p.m. UTC | #1
On Fri, Feb 2, 2018 at 6:36 PM, Keith Seitz <keiths@redhat.com> wrote:
> templates.exp has a hard-coded line number in it:
>
>   gdb_test "b 770" \
>       "Breakpoint .* at .*, line 770."
>
> The problems with this are well-known, and this patch simply removes it.
> I've also added the missing FSF copyright header to templates.cc.
>
> testsuite/ChangeLog:
>
>         * gdb.cp/templates.cc (main): Add breakpoint marker comment.
>         * gdb.cp/templates.exp: Remove hard-coded line number.

Patch is good to me.
  

Patch

diff --git a/gdb/testsuite/gdb.cp/templates.cc b/gdb/testsuite/gdb.cp/templates.cc
index 49cf6b66ef..db2dfe8a58 100644
--- a/gdb/testsuite/gdb.cp/templates.cc
+++ b/gdb/testsuite/gdb.cp/templates.cc
@@ -1,3 +1,20 @@ 
+/* This testcase is part of GDB, the GNU debugger.
+
+   Copyright 1992-2018 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/>.  */
+
 /* This test code is from Wendell Baker (wbaker@comet.berkeley.edu) */
 
 #include <stddef.h>
@@ -801,5 +818,5 @@  int main()
 
   arg.method(empty);
 
-  return 0;
+  return 0;			// break here
 }
diff --git a/gdb/testsuite/gdb.cp/templates.exp b/gdb/testsuite/gdb.cp/templates.exp
index 3d8e9aa43e..af722689c7 100644
--- a/gdb/testsuite/gdb.cp/templates.exp
+++ b/gdb/testsuite/gdb.cp/templates.exp
@@ -283,12 +283,8 @@  do_tests
 # weren't breakpointing past a point where the below expressions were
 # initialized in the actual source. - djb
 
-gdb_test "b 770" \
-    "Breakpoint .* at .*, line 770."
-
-gdb_test "c" \
-    "Continuing.*Breakpoint .*" \
-    "continue to line 770"
+gdb_breakpoint [gdb_get_line_number "break here"]
+gdb_continue_to_breakpoint "continue to test marker"
 
 gdb_test "print fint" \
    "\\$\[0-9\]* = \\{x = 0, t = 0\\}"