public inbox for archer-commits@sourceware.org
help / color / mirror / Atom feed
* [SCM] archer-pmuldoon-python-backtrace: Replace RAW-FRAMES with --no-frame-filters in MI
@ 2012-09-27 15:53 pmuldoon
0 siblings, 0 replies; only message in thread
From: pmuldoon @ 2012-09-27 15:53 UTC (permalink / raw)
To: archer-commits
The branch, archer-pmuldoon-python-backtrace has been updated
via 5439b1477fd1cca1fc333b72d969c6b055ad9e81 (commit)
from ce5bf0ab811f2ef1fb528bcdcb6967808c67dc97 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email.
- Log -----------------------------------------------------------------
commit 5439b1477fd1cca1fc333b72d969c6b055ad9e81
Author: Phil Muldoon <pmuldoon@redhat.com>
Date: Thu Sep 27 16:52:44 2012 +0100
Replace RAW-FRAMES with --no-frame-filters in MI
-----------------------------------------------------------------------
Summary of changes:
gdb/mi/mi-cmd-stack.c | 91 +++++++++---------------
gdb/testsuite/gdb.python/py-framefilter-mi.exp | 48 ++++++++-----
2 files changed, 64 insertions(+), 75 deletions(-)
First 500 lines of diff:
diff --git a/gdb/mi/mi-cmd-stack.c b/gdb/mi/mi-cmd-stack.c
index 7560a06..773ab75 100644
--- a/gdb/mi/mi-cmd-stack.c
+++ b/gdb/mi/mi-cmd-stack.c
@@ -50,6 +50,15 @@ stack_enable_frame_filters (void)
frame_filters = 1;
}
+static int
+parse_no_frames_option (char *arg)
+{
+ if (arg && (strcmp (arg, "--no-frame-filters") == 0))
+ return 1;
+
+ return 0;
+}
+
/* Print a list of the stack frames. Args can be none, in which case
we want to print the whole backtrace, or a pair of numbers
specifying the frame numbers at which to start and stop the
@@ -68,19 +77,12 @@ mi_cmd_stack_list_frames (char *command, char **argv, int argc)
int raw_arg = 0;
int j;
- if (argc)
- {
- /* Find 'raw-frames' at argv[0] if passed as an argument */
- for (j = 0; j < strlen (argv[0]); j++)
- argv[0][j] = tolower (argv[0][j]);
-
- if (subset_compare (argv[0], "raw-frames"))
- raw_arg = 1;
- }
+ if (argc > 0)
+ raw_arg = parse_no_frames_option (argv[0]);
if ((argc > 3 && ! raw_arg) || (argc == 1 && ! raw_arg)
|| (argc == 2 && raw_arg))
- error (_("-stack-list-frames: Usage: [RAW-FRAMES FRAME_LOW FRAME_HIGH]"));
+ error (_("-stack-list-frames: Usage: [--no-frame-filters] [FRAME_LOW FRAME_HIGH]"));
if (argc == 3 || argc == 2)
{
@@ -200,44 +202,35 @@ mi_cmd_stack_list_locals (char *command, char **argv, int argc)
struct frame_info *frame;
int raw_arg = 0;
int result = 0;
+ int print_value;
- if (argc == 2)
- {
- int j;
- /* Find 'raw-frames' at argv[1] if passed as an argument */
- for (j = 0; j < strlen (argv[1]); j++)
- argv[1][j] = tolower (argv[1][j]);
-
- if (subset_compare (argv[1], "raw-frames"))
- raw_arg = 1;
- }
+ if (argc > 0)
+ raw_arg = parse_no_frames_option (argv[0]);
if (argc < 1 || argc > 2 || (argc == 2 && ! raw_arg)
|| (argc == 1 && raw_arg))
- error (_("-stack-list-locals: Usage: PRINT_VALUES [RAW-FRAMES]"));
+ error (_("-stack-list-locals: Usage: [--no-frame-filters] PRINT_VALUES"));
frame = get_selected_frame (NULL);
+ print_value = parse_print_values (argv[raw_arg]);
if (! raw_arg && frame_filters)
{
- int count = 1;
- int arg = atoi (argv[0]);
-
result = apply_frame_filter (frame,/* frame */
1, /* print_level */
0, /* print_frame_info */
0, /* print_args */
1, /* print_locals */
- arg, /* mi_print_args_type */
+ print_value, /* mi_print_args_type */
0, /* cli_print_args_type */
current_uiout, /* out */
- count /* count */);
+ 1 /* count */);
}
if (! frame_filters || raw_arg || result == PY_BT_ERROR
|| result == PY_BT_NO_FILTERS)
{
- list_args_or_locals (locals, parse_print_values (argv[0]), frame);
+ list_args_or_locals (locals, print_value, frame);
}
}
@@ -258,20 +251,12 @@ mi_cmd_stack_list_args (char *command, char **argv, int argc)
int raw_arg = 0;
int result = 0;
- if (argc > 1)
- {
- int j;
- /* Find 'raw-frames' at argv[1] if passed as an argument */
- for (j = 0; j < strlen (argv[1]); j++)
- argv[1][j] = tolower (argv[1][j]);
-
- if (subset_compare (argv[1], "raw-frames"))
- raw_arg = 1;
- }
+ if (argc > 0)
+ raw_arg = parse_no_frames_option (argv[0]);
if (argc < 1 || (argc > 3 && ! raw_arg) || (argc == 2 && ! raw_arg))
- error (_("-stack-list-arguments: Usage: "
- "PRINT_VALUES [RAW-FRAMES FRAME_LOW FRAME_HIGH]"));
+ error (_("-stack-list-arguments: Usage: " \
+ "[--no-frame-filters] PRINT_VALUES [FRAME_LOW FRAME_HIGH]"));
if (argc >= 3)
{
@@ -286,7 +271,7 @@ mi_cmd_stack_list_args (char *command, char **argv, int argc)
frame_high = -1;
}
- print_values = parse_print_values (argv[0]);
+ print_values = parse_print_values (argv[raw_arg]);
/* Let's position fi on the frame at which to start the
display. Could be the innermost frame if the whole stack needs
@@ -352,45 +337,37 @@ mi_cmd_stack_list_variables (char *command, char **argv, int argc)
struct frame_info *frame;
int raw_arg = 0;
int result = 0;
+ int print_value;
- if (argc == 2)
- {
- int j;
- /* Find 'raw-frames' at argv[1] if passed as an argument */
- for (j = 0; j < strlen (argv[1]); j++)
- argv[1][j] = tolower (argv[1][j]);
-
- if (subset_compare (argv[1], "raw-frames"))
- raw_arg = 1;
- }
+ if (argc > 0)
+ raw_arg = parse_no_frames_option (argv[0]);
if (argc < 1 || argc > 2 || (argc == 2 && ! raw_arg)
|| (argc == 1 && raw_arg))
- error (_("-stack-list-arguments: Usage: PRINT_VALUES [RAW-FRAMES]"));
+ error (_("-stack-list-arguments: Usage: " \
+ "[--no-frame-filters] PRINT_VALUES"));
frame = get_selected_frame (NULL);
+ print_value = parse_print_values (argv[raw_arg]);
if (! raw_arg && frame_filters)
{
- int count = 1;
- int arg = atoi (argv[0]);
-
result = apply_frame_filter (frame,/* frame */
1, /* print_level */
0, /* print_frame_info */
1, /* print_args */
1, /* print_locals */
- arg, /* mi_print_args_type */
+ print_value, /* mi_print_args_type */
0, /* cli_print_args_type */
current_uiout, /* out */
- count /* count */);
+ 1 /* count */);
}
if (! frame_filters || raw_arg || result == PY_BT_ERROR
|| result == PY_BT_NO_FILTERS)
{
- list_args_or_locals (all, parse_print_values (argv[0]), frame);
+ list_args_or_locals (all, print_value, frame);
}
}
diff --git a/gdb/testsuite/gdb.python/py-framefilter-mi.exp b/gdb/testsuite/gdb.python/py-framefilter-mi.exp
index 1c390d7..bfb22ab 100644
--- a/gdb/testsuite/gdb.python/py-framefilter-mi.exp
+++ b/gdb/testsuite/gdb.python/py-framefilter-mi.exp
@@ -71,9 +71,9 @@ mi_gdb_test "-stack-list-arguments 0" \
"\\^done,stack-args=\\\[frame={level=\"0\",args=\\\[name=\"foo\",name=\"bar\",name=\"fb\",name=\"bf\"\\\]},frame={level=\"1\",args=\\\[\\\]},frame={level=\"2\",args=\\\[name=\"j\"\\\]},.*frame={level=\"22\",args=\\\[\\\],children=\\\[frame={level=\"23\",args=\\\[\\\]}\\\]},.*frame={level=\"26\",args=\\\[name=\"f\",name=\"d\"\\\]},frame={level=\"27\",args=\\\[\\\]}\\\]" \
"stack-list-arguments 0"
-mi_gdb_test "-stack-list-arguments 0 raw-frames" \
+mi_gdb_test "-stack-list-arguments --no-frame-filters 0" \
"\\^done,stack-args=\\\[frame={level=\"0\",args=\\\[name=\"foo\",name=\"bar\",name=\"fb\",name=\"bf\"\\\]},frame={level=\"1\",args=\\\[\\\]},frame={level=\"2\",args=\\\[name=\"j\"\\\]},.*frame={level=\"22\",args=\\\[\\\]},frame={level=\"23\",args=\\\[\\\]},.*frame={level=\"26\",args=\\\[name=\"f\",name=\"d\"\\\]},frame={level=\"27\",args=\\\[\\\]}\\\]" \
- "stack-list-arguments 0 raw-frammes"
+ "stack-list-arguments --no-frame-filters 0"
mi_gdb_test "-stack-list-arguments 0 0 3" \
"\\^done,stack-args=\\\[frame={level=\"0\",args=\\\[name=\"foo\",name=\"bar\",name=\"fb\",name=\"bf\"\\\]},frame={level=\"1\",args=\\\[\\\]},frame={level=\"2\",args=\\\[name=\"j\"\\\]},frame={level=\"3\",args=\\\[\\\]}\\\]" \
@@ -87,9 +87,9 @@ mi_gdb_test "-stack-list-arguments 1" \
"\\^done,stack-args=\\\[frame={level=\"0\",args=\\\[{name=\"foo\",value=\"21\"},{name=\"bar\",value=\"$hex \\\\\"Param\\\\\"\"},{name=\"fb\",value=\"$hex\"},{name=\"bf\",value=\"{nothing = $hex \\\\\"Foo Bar\\\\\", f = 42, s = 19}\"}\\\]},frame={level=\"1\",args=\\\[\\\]},frame={level=\"2\",args=\\\[{name=\"j\",value=\"10\"}\\\]},.*frame={level=\"22\",args=\\\[\\\],children=\\\[frame={level=\"23\",args=\\\[\\\]}\\\]},.*frame={level=\"26\",args=\\\[{name=\"f\",value=\"3\"},{name=\"d\",value=\"5\"}\\\]},frame={level=\"27\",args=\\\[\\\]}\\\]" \
"stack-list-arguments 1"
-mi_gdb_test "-stack-list-arguments 1 raw-frames" \
+mi_gdb_test "-stack-list-arguments --no-frame-filters 1" \
"\\^done,stack-args=\\\[frame={level=\"0\",args=\\\[{name=\"foo\",value=\"21\"},{name=\"bar\",value=\"$hex \\\\\"Param\\\\\"\"},{name=\"fb\",value=\"$hex\"},{name=\"bf\",value=\"{nothing = $hex \\\\\"Foo Bar\\\\\", f = 42, s = 19}\"}\\\]},frame={level=\"1\",args=\\\[\\\]},frame={level=\"2\",args=\\\[{name=\"j\",value=\"10\"}\\\]},.*frame={level=\"22\",args=\\\[\\\]},frame={level=\"23\",args=\\\[\\\]},.*frame={level=\"26\",args=\\\[{name=\"f\",value=\"3\"},{name=\"d\",value=\"5\"}\\\]},frame={level=\"27\",args=\\\[\\\]}\\\]" \
- "stack-list-arguments raw-frames 1"
+ "stack-list-arguments --no-frame-filters 1"
mi_gdb_test "-stack-list-arguments 1 0 3" \
@@ -104,9 +104,9 @@ mi_gdb_test "-stack-list-arguments 2" \
"\\^done,stack-args=\\\[frame={level=\"0\",args=\\\[{name=\"foo\",type=\"int\",value=\"21\"},{name=\"bar\",type=\"char \\\*\",value=\"$hex \\\\\"Param\\\\\"\"},{name=\"fb\",type=\"foobar \\\*\",value=\"$hex\"},{name=\"bf\",type=\"foobar\"\}\\\]},frame={level=\"1\",args=\\\[\\\]},frame={level=\"2\",args=\\\[{name=\"j\",type=\"int\",value=\"10\"}\\\]},.*frame={level=\"22\",args=\\\[\\\],children=\\\[frame={level=\"23\",args=\\\[\\\]}\\\]},.*frame={level=\"26\",args=\\\[{name=\"f\",type=\"int\",value=\"3\"},{name=\"d\",type=\"int\",value=\"5\"}\\\]},frame={level=\"27\",args=\\\[\\\]}\\\]" \
"stack-list-arguments 2"
-mi_gdb_test "-stack-list-arguments 2 raw-frames" \
+mi_gdb_test "-stack-list-arguments --no-frame-filters 2" \
"\\^done,stack-args=\\\[frame={level=\"0\",args=\\\[{name=\"foo\",type=\"int\",value=\"21\"},{name=\"bar\",type=\"char \\\*\",value=\"$hex \\\\\"Param\\\\\"\"},{name=\"fb\",type=\"foobar \\\*\",value=\"$hex\"},{name=\"bf\",type=\"foobar\"}\\\]},frame={level=\"1\",args=\\\[\\\]},frame={level=\"2\",args=\\\[{name=\"j\",type=\"int\",value=\"10\"}\\\]},.*frame={level=\"22\",args=\\\[\\\]},.*frame={level=\"26\",args=\\\[{name=\"f\",type=\"int\",value=\"3\"},{name=\"d\",type=\"int\",value=\"5\"}\\\]},frame={level=\"27\",args=\\\[\\\]}\\\]" \
- "stack-list-arguments 2 raw-frames"
+ "stack-list-arguments --no-frame-filters 2"
mi_gdb_test "-stack-list-arguments 2 0 3" \
@@ -117,22 +117,34 @@ mi_gdb_test "-stack-list-arguments 2 22 27" \
"\\^done,stack-args=\\\[frame={level=\"22\",args=\\\[\\\],children=\\\[frame={level=\"23\",args=\\\[\\\]}\\\]},.*frame={level=\"26\",args=\\\[{name=\"f\",type=\"int\",value=\"3\"},{name=\"d\",type=\"int\",value=\"5\"}\\\]},frame={level=\"27\",args=\\\[\\\]}\\\]" \
"stack-list-arguments 2 22 27"
-mi_gdb_test "-stack-list-arguments 2 raw-frames 22 27" \
+mi_gdb_test "-stack-list-arguments --no-frame-filters 2 22 27" \
"\\^done,stack-args=\\\[frame={level=\"22\",args=\\\[\\\]},frame={level=\"23\",args=\\\[\\\]},.*frame={level=\"26\",args=\\\[{name=\"f\",type=\"int\",value=\"3\"},{name=\"d\",type=\"int\",value=\"5\"}\\\]},frame={level=\"27\",args=\\\[\\\]}\\\]" \
- "stack-list-arguments 2 raw-frames 22 27"
+ "stack-list-arguments --no-frame-filters 2 22 27"
#stack-list-locals
-mi_gdb_test "-stack-list-locals 0 raw-frames" \
+mi_gdb_test "-stack-list-locals --no-frame-filters 0" \
"\\^done,locals=\\\[name=\"str\",name=\"st2\",name=\"b\",name=\"c\"\\\]" \
- "stack-list-locals 0 raw-frames"
+ "stack-list-locals --no-frame-filters 0"
-mi_gdb_test "-stack-list-locals 1 raw-frames" \
+mi_gdb_test "-stack-list-locals --no-frame-filters 1" \
"\\^done,locals=\\\[{name=\"str\",value=\"$hex \\\\\"The End\\\\\"\"},{name=\"st2\",value=\"$hex \\\\\"Is Near\\\\\"\"},{name=\"b\",value=\"12\"},{name=\"c\",value=\"5\"}\\\]" \
- "stack-list-locals 1 raw-frames"
+ "stack-list-locals --no-frame-filters 1"
-mi_gdb_test "-stack-list-locals 2 raw-frames" \
+mi_gdb_test "-stack-list-locals --no-frame-filters 2" \
"\\^done,locals=\\\[{name=\"str\",type=\"const char \\\*\",value=\"$hex \\\\\"The End\\\\\"\"},{name=\"st2\",type=\"const char \\\*\",value=\"$hex \\\\\"Is Near\\\\\"\"},{name=\"b\",type=\"int\",value=\"12\"},{name=\"c\",type=\"short int\",value=\"5\"}\\\]" \
- "stack-list-locals 2 raw-frames"
+ "stack-list-locals --no-frame-filters 2"
+
+mi_gdb_test "-stack-list-locals --no-frame-filters --no-values" \
+ "\\^done,locals=\\\[name=\"str\",name=\"st2\",name=\"b\",name=\"c\"\\\]" \
+ "stack-list-locals --no-frame-filters --no-values"
+
+mi_gdb_test "-stack-list-locals --no-frame-filters --all-values" \
+ "\\^done,locals=\\\[{name=\"str\",value=\"$hex \\\\\"The End\\\\\"\"},{name=\"st2\",value=\"$hex \\\\\"Is Near\\\\\"\"},{name=\"b\",value=\"12\"},{name=\"c\",value=\"5\"}\\\]" \
+ "stack-list-locals --no-frame-filters --all-values"
+
+mi_gdb_test "-stack-list-locals --no-frame-filters --simple-values" \
+ "\\^done,locals=\\\[{name=\"str\",type=\"const char \\\*\",value=\"$hex \\\\\"The End\\\\\"\"},{name=\"st2\",type=\"const char \\\*\",value=\"$hex \\\\\"Is Near\\\\\"\"},{name=\"b\",type=\"int\",value=\"12\"},{name=\"c\",type=\"short int\",value=\"5\"}\\\]" \
+ "stack-list-locals --no-frame-filters --simple-values"
mi_gdb_test "-stack-list-locals 0" \
"\\^done,locals=\\\[name=\"str\",name=\"st2\",name=\"b\",name=\"c\"\\\]" \
@@ -146,13 +158,13 @@ mi_gdb_test "-stack-list-locals 2" \
"\\^done,locals=\\\[{name=\"str\",type=\"const char \\\*\",value=\"$hex \\\\\"The End\\\\\"\"},{name=\"st2\",type=\"const char \\\*\",value=\"$hex \\\\\"Is Near\\\\\"\"},{name=\"b\",type=\"int\",value=\"12\"},{name=\"c\",type=\"short int\",value=\"5\"}\\\]" \
"stack-list-locals 2"
-#stack-list-variables
-mi_gdb_test "-stack-list-variables 0 raw-frames" \
+# stack-list-variables
+mi_gdb_test "-stack-list-variables --no-frame-filters 0" \
"\\^done,variables=\\\[{name=\"foo\",arg=\"1\"},{name=\"bar\",arg=\"1\"},{name=\"fb\",arg=\"1\"},{name=\"bf\",arg=\"1\"},{name=\"str\"},{name=\"st2\"},{name=\"b\"},{name=\"c\"}\\\]" \
- "stack-list-locals 0 raw-frames"
+ "stack-list-variables --no-frame-filters 0"
mi_gdb_test "-stack-list-variables 0" \
"\\^done,variables=\\\[{name=\"foo\",arg=\"1\"},{name=\"bar\",arg=\"1\"},{name=\"fb\",arg=\"1\"},{name=\"bf\",arg=\"1\"},{name=\"str\"},{name=\"st2\"},{name=\"b\"},{name=\"c\"}\\\]" \
- "stack-list-locals 0"
+ "stack-list-variables 0"
remote_file host delete ${remote_python_file}
hooks/post-receive
--
Repository for Project Archer.
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2012-09-27 15:53 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-09-27 15:53 [SCM] archer-pmuldoon-python-backtrace: Replace RAW-FRAMES with --no-frame-filters in MI pmuldoon
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).