From c81c812a7aa355526da81443df27aa7ce6699800 Mon Sep 17 00:00:00 2001 From: Joel Brobecker Date: Mon, 17 May 2010 21:32:57 +0000 Subject: [PATCH] make parameter being watched is a non-constant. The gdb.ada/watch_arg testcase is testing a situation where we are leaving the scope where a parameter being watched is defined. The testcase is a little non-sensical that we're watching a parameter declared as an "access integer", which in non-Ada terms means a constant pointer. Doesn't make much sense to watch a constant... So this patch changes the code a little to use an "in out Integer", which makes the parameter a non-constant integer, rather than a constant access Integer. I verified that I could still reproduce the problem with the original debugger and the modified testcase. This was motivated by a patch that Sergio is about to submit which will forbid the user from watching a constant (discussed on IRC) 2010-05-17 Joel Brobecker * gdb.ada/watch_arg/watch.adb: Rewrite testcase to avoid the parameter that we want to watch being a constant. Tested on both sparc-solaris (where the ancient debugger could still run ;-), and on x86_64-linux. --- gdb/testsuite/ChangeLog | 5 +++++ gdb/testsuite/gdb.ada/watch_arg/watch.adb | 8 ++++---- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index bc55d701dbf..91fea82ee27 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2010-05-17 Joel Brobecker + + * gdb.ada/watch_arg/watch.adb: Rewrite testcase to avoid the + parameter that we want to watch being a constant. + 2010-05-17 Joel Brobecker * gdb.ada/cond_lang: New testcase. diff --git a/gdb/testsuite/gdb.ada/watch_arg/watch.adb b/gdb/testsuite/gdb.ada/watch_arg/watch.adb index b95e3a0d655..3b7cb27a727 100644 --- a/gdb/testsuite/gdb.ada/watch_arg/watch.adb +++ b/gdb/testsuite/gdb.ada/watch_arg/watch.adb @@ -15,15 +15,15 @@ procedure Watch is - procedure Foo (X : access Integer) is + procedure Foo (X : in out Integer) is begin - X.all := 3; -- BREAK1 + X := 3; -- BREAK1 end Foo; - X : aliased Integer := 1; + X : Integer := 1; begin - Foo (X'Access); + Foo (X); X := 2; -- BREAK2 end Watch; -- 2.30.2