From: Andrew Cagney <cagney@gnu.org>
To: Nick Roberts <nickrob@snap.net.nz>
Cc: gdb-patches@sources.redhat.com
Subject: Re: [PATCH: gdb/mi + doco] -var-update
Date: Mon, 21 Feb 2005 02:36:00 -0000 [thread overview]
Message-ID: <4218ACB1.6010508@gnu.org> (raw)
In-Reply-To: <16919.7660.144228.334687@farnswood.snap.net.nz>
Nick Roberts wrote:
> This patch is very similar to ones that I have previously contributed for
> -var-list-children and -stack-list-locals. Testcases to follow
> (assuming the patch is favourably received).
>
> Nick
>
>
> Purpose:
>
> Currently the MI command "-var-update" gives the names of the variable objects
> but not their value which must be accessed individually (using the MI command
> -var-evaluate-expression). This means that a front end can take too long
> processing a separate MI command for variable object. This patch adapts
> "-var-update" so that it gives values, if required. The existing behaviour is
> preserved for backward compatibility.
>
> *** /home/nick/src/gdb/mi/mi-cmd-var.c.~1.21.~ 2005-02-13 00:36:20.000000000 +1300
> --- /home/nick/src/gdb/mi/mi-cmd-var.c 2005-02-19 22:49:18.000000000 +1300
> ***************
> *** 32,38 ****
>
> extern int varobjdebug; /* defined in varobj.c */
>
> ! static int varobj_update_one (struct varobj *var);
>
> /* VAROBJ operations */
>
> --- 32,39 ----
>
> extern int varobjdebug; /* defined in varobj.c */
>
> ! static int varobj_update_one (struct varobj *var,
> ! enum print_values print_values);
>
> /* VAROBJ operations */
>
> ***************
> *** 426,436 ****
> struct cleanup *cleanup;
> char *name;
> int nv;
>
> ! if (argc != 1)
> ! error (_("mi_cmd_var_update: Usage: NAME."));
>
> ! name = argv[0];
>
> /* Check if the parameter is a "*" which means that we want
> to update all variables */
> --- 427,450 ----
> struct cleanup *cleanup;
> char *name;
> int nv;
> + enum print_values print_values;
>
> ! if (argc != 1 && argc != 2)
> ! error (_("mi_cmd_var_update: Usage: [PRINT_VALUES] NAME."));
>
> ! if (argc == 1) name = argv[0];
> ! else name = (argv[1]);
> !
> ! if (argc == 2)
> ! if (strcmp (argv[0], "0") == 0
> ! || strcmp (argv[0], "--no-values") == 0)
> ! print_values = PRINT_NO_VALUES;
> ! else if (strcmp (argv[0], "1") == 0
> ! || strcmp (argv[0], "--all-values") == 0)
> ! print_values = PRINT_ALL_VALUES;
> ! else
> ! error (_("Unknown value for PRINT_VALUES: must be: 0 or \"--no-values\", 1 or \"--all-values\""));
> ! else print_values = PRINT_NO_VALUES;
Nick,
it should use mi-getopt (which correctly [?] implements the MI input
syntax). If you find doing this alters the commands semantics (quoting
of parameters might be affected) then we'll need to introduce a new
``fixed'' command.
Andrew
(I'm fine with the theory)
next prev parent reply other threads:[~2005-02-20 15:31 UTC|newest]
Thread overview: 45+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-02-20 2:06 Nick Roberts
2005-02-20 5:02 ` Eli Zaretskii
2005-02-20 5:51 ` Nick Roberts
2005-02-20 15:31 ` Eli Zaretskii
2005-02-21 4:33 ` Nick Roberts
2005-02-21 7:17 ` Eli Zaretskii
2005-02-22 9:23 ` Nick Roberts
2005-02-22 9:34 ` Eli Zaretskii
2005-02-27 5:03 ` Nick Roberts
2005-02-27 16:53 ` Eli Zaretskii
2005-02-27 16:56 ` Nick Roberts
2005-02-28 12:27 ` Eli Zaretskii
2005-03-19 3:55 ` Nick Roberts
2005-04-01 1:51 ` Bob Rossi
2005-04-01 11:01 ` Nick Roberts
2005-05-02 2:06 ` Nick Roberts
2005-05-02 4:05 ` Daniel Jacobowitz
2005-05-02 7:24 ` Nick Roberts
2005-06-17 3:43 ` Daniel Jacobowitz
2005-06-17 10:09 ` Eli Zaretskii
2005-06-17 14:04 ` Daniel Jacobowitz
2005-06-18 8:53 ` Eli Zaretskii
2005-07-03 19:56 ` Daniel Jacobowitz
2005-07-04 3:07 ` Nick Roberts
2005-07-04 3:51 ` Daniel Jacobowitz
2005-07-04 4:55 ` Eli Zaretskii
2005-07-04 5:02 ` Daniel Jacobowitz
2005-07-04 10:17 ` Nick Roberts
2005-07-06 10:00 ` Nick Roberts
2005-07-15 1:44 ` Daniel Jacobowitz
2005-07-15 3:59 ` Nick Roberts
2005-07-15 4:16 ` Daniel Jacobowitz
2005-07-15 15:11 ` Nick Roberts
2005-07-15 15:28 ` Daniel Jacobowitz
2005-07-15 22:37 ` Nick Roberts
2005-07-04 21:15 ` Nick Roberts
2005-07-04 22:24 ` Eli Zaretskii
2005-07-05 3:25 ` Nick Roberts
2005-07-05 19:37 ` Eli Zaretskii
2005-07-15 9:42 ` Nick Roberts
2005-06-17 11:42 ` Nick Roberts
2005-06-17 14:06 ` Daniel Jacobowitz
2005-06-17 23:12 ` Nick Roberts
2005-02-21 2:36 ` Andrew Cagney [this message]
2005-02-21 3:28 ` Nick Roberts
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4218ACB1.6010508@gnu.org \
--to=cagney@gnu.org \
--cc=gdb-patches@sources.redhat.com \
--cc=nickrob@snap.net.nz \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox