From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 22068 invoked by alias); 28 Feb 2014 18:07:23 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 22015 invoked by uid 89); 28 Feb 2014 18:07:22 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.5 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.3.2 X-HELO: rock.gnat.com Received: from rock.gnat.com (HELO rock.gnat.com) (205.232.38.15) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES256-SHA encrypted) ESMTPS; Fri, 28 Feb 2014 18:07:19 +0000 Received: from localhost (localhost.localdomain [127.0.0.1]) by filtered-rock.gnat.com (Postfix) with ESMTP id E4B901165B4; Fri, 28 Feb 2014 13:07:17 -0500 (EST) Received: from rock.gnat.com ([127.0.0.1]) by localhost (rock.gnat.com [127.0.0.1]) (amavisd-new, port 10024) with LMTP id rQIgduurw5Pn; Fri, 28 Feb 2014 13:07:17 -0500 (EST) Received: from joel.gnat.com (localhost.localdomain [127.0.0.1]) by rock.gnat.com (Postfix) with ESMTP id AD9F21165A7; Fri, 28 Feb 2014 13:07:17 -0500 (EST) Received: by joel.gnat.com (Postfix, from userid 1000) id DAD25E03BD; Fri, 28 Feb 2014 10:07:16 -0800 (PST) Date: Fri, 28 Feb 2014 18:07:00 -0000 From: Joel Brobecker To: Sanimir Agovic Cc: tromey@redhat.com, keven.boell@intel.com, gdb-patches@sourceware.org Subject: Re: [PATCH v5 15/15] test: add mi vla test Message-ID: <20140228180716.GH16479@adacore.com> References: <1391704056-25246-1-git-send-email-sanimir.agovic@intel.com> <1391704056-25246-16-git-send-email-sanimir.agovic@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1391704056-25246-16-git-send-email-sanimir.agovic@intel.com> User-Agent: Mutt/1.5.21 (2010-09-15) X-SW-Source: 2014-02/txt/msg00875.txt.bz2 On Thu, Feb 06, 2014 at 05:27:36PM +0100, Sanimir Agovic wrote: > 2013-10-18 Keven Boell > Sanimir Agovic > > 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 > --- > 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. > +# > +# 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 . > + > +# 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. > + > + 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 . */ > + > +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