This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: [PATCH v5 15/15] test: add mi vla test


Thanks for your review.

I addressed all issues in the series dealing with tests.

	https://sourceware.org/ml/gdb-patches/2014-02/msg00874.html
	https://sourceware.org/ml/gdb-patches/2014-02/msg00873.html
	https://sourceware.org/ml/gdb-patches/2014-02/msg00872.html
	https://sourceware.org/ml/gdb-patches/2014-02/msg00871.html

 -Sanimir

> -----Original Message-----
> From: Joel Brobecker [mailto:brobecker@adacore.com]
> Sent: Friday, February 28, 2014 07:07 PM
> To: Agovic, Sanimir
> Cc: tromey@redhat.com; Boell, Keven; gdb-patches@sourceware.org
> Subject: Re: [PATCH v5 15/15] test: add mi vla test
> 
> On Thu, Feb 06, 2014 at 05:27:36PM +0100, Sanimir Agovic wrote:
> > 2013-10-18  Keven Boell  <keven.boell@intel.com>
> >             Sanimir Agovic  <sanimir.agovic@intel.com>
> >
> > testsuite/gdb.mi/
> >
> > 	* mi-vla-c99.exp: New file.
> > 	* vla.c: New file.
> 
> Some minor comments as before - pre-approved with those changes.
> 
> > Signed-off-by: Sanimir Agovic <sanimir.agovic@intel.com>
> > ---
> >  gdb/testsuite/gdb.mi/mi-vla-c99.exp | 82 +++++++++++++++++++++++++++++++++++++
> >  gdb/testsuite/gdb.mi/vla.c          | 35 ++++++++++++++++
> >  2 files changed, 117 insertions(+)
> >  create mode 100644 gdb/testsuite/gdb.mi/mi-vla-c99.exp
> >  create mode 100644 gdb/testsuite/gdb.mi/vla.c
> >
> > diff --git a/gdb/testsuite/gdb.mi/mi-vla-c99.exp b/gdb/testsuite/gdb.mi/mi-vla-c99.exp
> > new file mode 100644
> > index 0000000..9d0c6cc
> > --- /dev/null
> > +++ b/gdb/testsuite/gdb.mi/mi-vla-c99.exp
> > @@ -0,0 +1,82 @@
> > +# Copyright 1999-2013 Free Software Foundation, Inc.
> 
> Copyright year range.
> 
> > +
> > +# Contributed by Intel Corp. <keven.boell@intel.com>
> > +#
> > +# 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/>.
> > +
> > +# Verify that, using the MI, we can evaluate a simple C Variable Length
> > +# Array (VLA).
> > +
> > +load_lib mi-support.exp
> > +set MIFLAGS "-i=mi"
> > +
> > +gdb_exit
> > +if [mi_gdb_start] {
> > +    continue
> > +}
> > +
> > +standard_testfile vla.c
> > +
> > +if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" \
> > +                  "${binfile}" executable {debug}] != "" } {
> > +     untested mi-vla-basics.exp
> > +     return -1
> > +}
> > +
> > +mi_delete_breakpoints
> > +mi_gdb_reinitialize_dir $srcdir/$subdir
> > +mi_gdb_load ${binfile}
> > +
> > +set bp_lineno [gdb_get_line_number "vla-filled"]
> > +
> > +mi_create_breakpoint "-t vla.c:$bp_lineno" 1 "del" "func" \
> > +             ".*vla.c" $bp_lineno $hex \
> > +             "insert breakpoint at line $bp_lineno after vla is filled"
> > +mi_run_cmd
> > +mi_expect_stop "breakpoint-hit" "func" "\{name=\"n\",value=\"5\"\}" \
> > +               ".*vla.c" "$bp_lineno" { "" "disp=\"del\"" } \
> > +               "run to breakpoint at line $bp_lineno"
> > +
> > +mi_gdb_test "500-data-evaluate-expression vla" \
> > +    "500\\^done,value=\"\\{0, 1, 2, 3, 4\\}\"" "evaluate complete vla"
> > +
> > +mi_gdb_test "501-data-evaluate-expression vla\[0\]" \
> > +    "501\\^done,value=\"0\"" "evaluate vla\[0\]"
> > +
> > +mi_gdb_test "502-data-evaluate-expression vla\[2\]" \
> > +    "502\\^done,value=\"2\"" "evaluate vla\[2\]"
> > +
> > +mi_gdb_test "503-data-evaluate-expression vla\[4\]" \
> > +    "503\\^done,value=\"4\"" "evaluate vla\[4\]"
> > +
> > +mi_create_varobj_checked vla vla "int \\\[5\\\]" \
> > +                                 "create local variable vla"
> > +
> > +mi_gdb_test "504-var-info-type vla" \
> > +    "504\\^done,type=\"int \\\[5\\\]\"" \
> > +    "info type variable vla"
> > +
> > +mi_gdb_test "505-var-show-format vla" \
> > +    "505\\^done,format=\"natural\"" \
> > +    "show format variable vla"
> > +
> > +mi_gdb_test "506-var-evaluate-expression vla" \
> > +    "506\\^done,value=\"\\\[5\\\]\"" \
> > +    "eval variable vla"
> > +
> > +mi_list_array_varobj_children "vla" "5" "int" \
> > +    "get children of vla"
> > +
> > +mi_gdb_exit
> > +return 0
> > diff --git a/gdb/testsuite/gdb.mi/vla.c b/gdb/testsuite/gdb.mi/vla.c
> > new file mode 100644
> > index 0000000..9b33fc8
> > --- /dev/null
> > +++ b/gdb/testsuite/gdb.mi/vla.c
> > @@ -0,0 +1,35 @@
> > +/* This testcase is part of GDB, the GNU debugger.
> > +
> > +   Contributed by Intel Corp. <keven.boell@intel.com>
> > +
> > +   Copyright 2013 Free Software Foundation, Inc.
> 
> Copyright year range...
> 
> > +
> > +   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/>.  */
> > +
> > +int func (int n)
> 
> Formatting:
> 
> int
> func (int n)
> 
> > +{
> > +  int vla[n], i;
> > +
> > +  for (i = 0; i < n; i++)
> > +    vla[i] = i;
> > +
> > +  return n;                 /* vla-filled */
> > +}
> > +
> > +int main ()
> 
> Rewrite:
> 
> int
> main (void)
> 
> > +{
> > +  func (5);
> > +
> > +  return 0;
> > +}
> > --
> > 1.8.4.2
> 
> --
> Joel
Intel GmbH
Dornacher Strasse 1
85622 Feldkirchen/Muenchen, Deutschland
Sitz der Gesellschaft: Feldkirchen bei Muenchen
Geschaeftsfuehrer: Christian Lamprechter, Hannes Schwaderer, Douglas Lusk
Registergericht: Muenchen HRB 47456
Ust.-IdNr./VAT Registration No.: DE129385895
Citibank Frankfurt a.M. (BLZ 502 109 00) 600119052


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]