This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [PATCH] testsuite: introduce index in varobj child eval.
- From: Keven Boell <keven dot boell at linux dot intel dot com>
- To: Tom Tromey <tromey at redhat dot com>
- Cc: gdb-patches at sourceware dot org
- Date: Thu, 28 Nov 2013 11:56:14 +0100
- Subject: Re: [PATCH] testsuite: introduce index in varobj child eval.
- Authentication-results: sourceware.org; auth=none
- References: <1385467825-5236-1-git-send-email-keven dot boell at intel dot com> <87fvqj5h3e dot fsf at fleche dot redhat dot com> <5295E492 dot 7050501 at linux dot intel dot com> <87r4a13ngb dot fsf at fleche dot redhat dot com>
Looks like my mail client screwed it up. Please see the patch below.
Is it ok to check it in?
Thanks,
Keven
>From 5e99f34f1fb0b10715f5558a9dea781d4a14e864 Mon Sep 17 00:00:00 2001
From: Keven Boell <keven.boell@intel.com>
Date: Thu, 21 Nov 2013 10:54:47 +0100
Subject: [PATCH] testsuite: introduce index in varobj child eval.
In some languages, e.g. fortran, arrays start with index 1
instead 0. This patch changes the MI library to support testing
varobj children of fortran arrays.
2013-11-21 Keven Boell <keven.boell@intel.com>
testsuite/
* lib/mi-support.exp (mi_list_varobj_children_range): Add
call to mi_list_array_varobj_children_with_index.
(mi_list_array_varobj_children_with_index): New function.
Add parameter to specify array start.
Change-Id: Ib9e46843ca6302f16ef7cb24df25f9f8c1d11793
Signed-off-by: Keven Boell <keven.boell@intel.com>
---
gdb/testsuite/lib/mi-support.exp | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)
diff --git a/gdb/testsuite/lib/mi-support.exp b/gdb/testsuite/lib/mi-support.exp
index 0c3cdbe..cb7bf90 100644
--- a/gdb/testsuite/lib/mi-support.exp
+++ b/gdb/testsuite/lib/mi-support.exp
@@ -1487,9 +1487,18 @@ proc mi_list_varobj_children_range {varname from to numchildren children testnam
# Verifies that variable object VARNAME has NUMBER children,
# where each one is named $VARNAME.<index-of-child> and has type TYPE.
proc mi_list_array_varobj_children { varname number type testname } {
+ mi_list_array_varobj_children_with_index $varname $number 0 $type $testname
+}
+
+# Same as mi_list_array_varobj_children, but allowing to pass a start index
+# for an array.
+proc mi_list_array_varobj_children_with_index { varname number start_index \
+ type testname } {
set t {}
+ set index $start_index
for {set i 0} {$i < $number} {incr i} {
- lappend t [list $varname.$i $i 0 $type]
+ lappend t [list $varname.$index $index 0 $type]
+ incr index
}
mi_list_varobj_children $varname $t $testname
}
--
1.7.9.5
On 27.11.2013 15:53, Tom Tromey wrote:
>>>>>> "Keven" == Keven Boell <keven.boell@linux.intel.com> writes:
>
> Keven> * lib/mi-support.exp (mi_list_varobj_children_range): Add
> Keven> call to mi_list_array_varobj_children_with_index.
> Keven> (mi_list_array_varobj_children_with_index): New function.
> Keven> Add parameter to specify array start.
>
> Ok.
>
> Keven> + mi_list_array_varobj_children_with_index $varname $number 0 $type
> Keven> $testname
>
> Your patch got wrapped.
>
> Tom
>