mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-11-24 18:44:20 +08:00
Change frame_filter_flags to use DEF_ENUM_FLAGS_TYPE
This changes frame_filter_flags to use DEF_ENUM_FLAGS_TYPE, and updates all the uses. It also changes the enum constants to use <<, as suggested by Sergio. ChangeLog 2018-02-26 Tom Tromey <tom@tromey.com> * stack.c (backtrace_command_1): Update. * python/python-internal.h (gdbpy_apply_frame_filter): Change type of "flags". * python/py-framefilter.c (py_print_frame) (gdbpy_apply_frame_filter): Change type of "flags". * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type of "flags". (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals) (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update. * extension.h (enum frame_filter_flag): Rename from frame_filter_flags. (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE. (apply_ext_lang_frame_filter): Change type of "flags". * extension.c (apply_ext_lang_frame_filter): Change type of "flags". * extension-priv.h (struct extension_language_ops) <apply_frame_filter>: Change type of "flags".
This commit is contained in:
parent
6893c19a8b
commit
d4dd32824a
@ -1,3 +1,23 @@
|
||||
2018-02-26 Tom Tromey <tom@tromey.com>
|
||||
|
||||
* stack.c (backtrace_command_1): Update.
|
||||
* python/python-internal.h (gdbpy_apply_frame_filter): Change type
|
||||
of "flags".
|
||||
* python/py-framefilter.c (py_print_frame)
|
||||
(gdbpy_apply_frame_filter): Change type of "flags".
|
||||
* mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
|
||||
of "flags".
|
||||
(mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
|
||||
(mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
|
||||
* extension.h (enum frame_filter_flag): Rename from
|
||||
frame_filter_flags.
|
||||
(frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
|
||||
(apply_ext_lang_frame_filter): Change type of "flags".
|
||||
* extension.c (apply_ext_lang_frame_filter): Change type of
|
||||
"flags".
|
||||
* extension-priv.h (struct extension_language_ops)
|
||||
<apply_frame_filter>: Change type of "flags".
|
||||
|
||||
2018-02-26 Tom Tromey <tom@tromey.com>
|
||||
|
||||
PR python/16497:
|
||||
|
@ -183,7 +183,8 @@ struct extension_language_ops
|
||||
or SCR_BT_COMPLETED on success. */
|
||||
enum ext_lang_bt_status (*apply_frame_filter)
|
||||
(const struct extension_language_defn *,
|
||||
struct frame_info *frame, int flags, enum ext_lang_frame_args args_type,
|
||||
struct frame_info *frame, frame_filter_flags flags,
|
||||
enum ext_lang_frame_args args_type,
|
||||
struct ui_out *out, int frame_low, int frame_high);
|
||||
|
||||
/* Update values held by the extension language when OBJFILE is discarded.
|
||||
|
@ -553,7 +553,8 @@ apply_ext_lang_val_pretty_printer (struct type *type,
|
||||
rather than trying filters in other extension languages. */
|
||||
|
||||
enum ext_lang_bt_status
|
||||
apply_ext_lang_frame_filter (struct frame_info *frame, int flags,
|
||||
apply_ext_lang_frame_filter (struct frame_info *frame,
|
||||
frame_filter_flags flags,
|
||||
enum ext_lang_frame_args args_type,
|
||||
struct ui_out *out,
|
||||
int frame_low, int frame_high)
|
||||
|
@ -87,24 +87,26 @@ enum ext_lang_bt_status
|
||||
|
||||
/* Flags to pass to apply_extlang_frame_filter. */
|
||||
|
||||
enum frame_filter_flags
|
||||
enum frame_filter_flag
|
||||
{
|
||||
/* Set this flag if frame level is to be printed. */
|
||||
PRINT_LEVEL = 1,
|
||||
PRINT_LEVEL = 1 << 0,
|
||||
|
||||
/* Set this flag if frame information is to be printed. */
|
||||
PRINT_FRAME_INFO = 2,
|
||||
PRINT_FRAME_INFO = 1 << 1,
|
||||
|
||||
/* Set this flag if frame arguments are to be printed. */
|
||||
PRINT_ARGS = 4,
|
||||
PRINT_ARGS = 1 << 2,
|
||||
|
||||
/* Set this flag if frame locals are to be printed. */
|
||||
PRINT_LOCALS = 8,
|
||||
PRINT_LOCALS = 1 << 3,
|
||||
|
||||
/* Set this flag if a "More frames" message is to be printed. */
|
||||
PRINT_MORE_FRAMES = 16,
|
||||
PRINT_MORE_FRAMES = 1 << 4,
|
||||
};
|
||||
|
||||
DEF_ENUM_FLAGS_TYPE (enum frame_filter_flag, frame_filter_flags);
|
||||
|
||||
/* A choice of the different frame argument printing strategies that
|
||||
can occur in different cases of frame filter instantiation. */
|
||||
|
||||
@ -287,7 +289,8 @@ extern int apply_ext_lang_val_pretty_printer
|
||||
const struct language_defn *language);
|
||||
|
||||
extern enum ext_lang_bt_status apply_ext_lang_frame_filter
|
||||
(struct frame_info *frame, int flags, enum ext_lang_frame_args args_type,
|
||||
(struct frame_info *frame, frame_filter_flags flags,
|
||||
enum ext_lang_frame_args args_type,
|
||||
struct ui_out *out, int frame_low, int frame_high);
|
||||
|
||||
extern void preserve_ext_lang_values (struct objfile *, htab_t copied_types);
|
||||
|
@ -57,7 +57,8 @@ mi_cmd_enable_frame_filters (const char *command, char **argv, int argc)
|
||||
/* Like apply_ext_lang_frame_filter, but take a print_values */
|
||||
|
||||
static enum ext_lang_bt_status
|
||||
mi_apply_ext_lang_frame_filter (struct frame_info *frame, int flags,
|
||||
mi_apply_ext_lang_frame_filter (struct frame_info *frame,
|
||||
frame_filter_flags flags,
|
||||
enum print_values print_values,
|
||||
struct ui_out *out,
|
||||
int frame_low, int frame_high)
|
||||
@ -146,7 +147,7 @@ mi_cmd_stack_list_frames (const char *command, char **argv, int argc)
|
||||
|
||||
if (! raw_arg && frame_filters)
|
||||
{
|
||||
int flags = PRINT_LEVEL | PRINT_FRAME_INFO;
|
||||
frame_filter_flags flags = PRINT_LEVEL | PRINT_FRAME_INFO;
|
||||
int py_frame_low = frame_low;
|
||||
|
||||
/* We cannot pass -1 to frame_low, as that would signify a
|
||||
@ -262,7 +263,7 @@ mi_cmd_stack_list_locals (const char *command, char **argv, int argc)
|
||||
|
||||
if (! raw_arg && frame_filters)
|
||||
{
|
||||
int flags = PRINT_LEVEL | PRINT_LOCALS;
|
||||
frame_filter_flags flags = PRINT_LEVEL | PRINT_LOCALS;
|
||||
|
||||
result = mi_apply_ext_lang_frame_filter (frame, flags, print_value,
|
||||
current_uiout, 0, 0);
|
||||
@ -359,7 +360,7 @@ mi_cmd_stack_list_args (const char *command, char **argv, int argc)
|
||||
|
||||
if (! raw_arg && frame_filters)
|
||||
{
|
||||
int flags = PRINT_LEVEL | PRINT_ARGS;
|
||||
frame_filter_flags flags = PRINT_LEVEL | PRINT_ARGS;
|
||||
int py_frame_low = frame_low;
|
||||
|
||||
/* We cannot pass -1 to frame_low, as that would signify a
|
||||
@ -451,7 +452,7 @@ mi_cmd_stack_list_variables (const char *command, char **argv, int argc)
|
||||
|
||||
if (! raw_arg && frame_filters)
|
||||
{
|
||||
int flags = PRINT_LEVEL | PRINT_ARGS | PRINT_LOCALS;
|
||||
frame_filter_flags flags = PRINT_LEVEL | PRINT_ARGS | PRINT_LOCALS;
|
||||
|
||||
result = mi_apply_ext_lang_frame_filter (frame, flags,
|
||||
print_value,
|
||||
|
@ -920,7 +920,7 @@ py_print_args (PyObject *filter,
|
||||
on success. It can also throw an exception RETURN_QUIT. */
|
||||
|
||||
static enum ext_lang_bt_status
|
||||
py_print_frame (PyObject *filter, int flags,
|
||||
py_print_frame (PyObject *filter, frame_filter_flags flags,
|
||||
enum ext_lang_frame_args args_type,
|
||||
struct ui_out *out, int indent, htab_t levels_printed)
|
||||
{
|
||||
@ -1332,7 +1332,7 @@ bootstrap_python_frame_filters (struct frame_info *frame,
|
||||
|
||||
enum ext_lang_bt_status
|
||||
gdbpy_apply_frame_filter (const struct extension_language_defn *extlang,
|
||||
struct frame_info *frame, int flags,
|
||||
struct frame_info *frame, frame_filter_flags flags,
|
||||
enum ext_lang_frame_args args_type,
|
||||
struct ui_out *out, int frame_low, int frame_high)
|
||||
{
|
||||
|
@ -459,7 +459,8 @@ extern enum ext_lang_rc gdbpy_apply_val_pretty_printer
|
||||
const struct language_defn *language);
|
||||
extern enum ext_lang_bt_status gdbpy_apply_frame_filter
|
||||
(const struct extension_language_defn *,
|
||||
struct frame_info *frame, int flags, enum ext_lang_frame_args args_type,
|
||||
struct frame_info *frame, frame_filter_flags flags,
|
||||
enum ext_lang_frame_args args_type,
|
||||
struct ui_out *out, int frame_low, int frame_high);
|
||||
extern void gdbpy_preserve_values (const struct extension_language_defn *,
|
||||
struct objfile *objfile,
|
||||
|
@ -1775,7 +1775,7 @@ backtrace_command_1 (const char *count_exp, int show_locals, int no_filters,
|
||||
|
||||
if (! no_filters)
|
||||
{
|
||||
int flags = PRINT_LEVEL | PRINT_FRAME_INFO | PRINT_ARGS;
|
||||
frame_filter_flags flags = PRINT_LEVEL | PRINT_FRAME_INFO | PRINT_ARGS;
|
||||
enum ext_lang_frame_args arg_type;
|
||||
|
||||
if (show_locals)
|
||||
|
Loading…
Reference in New Issue
Block a user