/* Output generating routines for GDB.
- Copyright (C) 1999-2019 Free Software Foundation, Inc.
+ Copyright (C) 1999-2020 Free Software Foundation, Inc.
Contributed by Cygnus Solutions.
Written by Fernando Nasser for Cygnus.
/* The possible kinds of fields. */
enum class field_kind
{
- SIGNED,
- STRING,
+ /* "FIELD_STRING" needs a funny name to avoid clashes with tokens
+ named "STRING". See PR build/25250. FIELD_SIGNED is given a
+ similar name for consistency. */
+ FIELD_SIGNED,
+ FIELD_STRING,
};
/* The base type of all fields that can be emitted using %pF. */
signed_field_s &&tmp = {})
{
tmp.name = name;
- tmp.kind = field_kind::SIGNED;
+ tmp.kind = field_kind::FIELD_SIGNED;
tmp.val = val;
return &tmp;
}
string_field_s &&tmp = {})
{
tmp.name = name;
- tmp.kind = field_kind::STRING;
+ tmp.kind = field_kind::FIELD_STRING;
tmp.str = str;
return &tmp;
}
void field_skip (const char *fldname);
void field_fmt (const char *fldname, const char *format, ...)
ATTRIBUTE_PRINTF (3, 4);
+ void field_fmt (const char *fldname, const ui_file_style &style,
+ const char *format, ...)
+ ATTRIBUTE_PRINTF (4, 5);
void spaces (int numspaces);
void text (const char *string);
const char *fldname, const char *string,
const ui_file_style &style) = 0;
virtual void do_field_fmt (int fldno, int width, ui_align align,
- const char *fldname, const char *format,
- va_list args)
- ATTRIBUTE_PRINTF (6,0) = 0;
+ const char *fldname, const ui_file_style &style,
+ const char *format, va_list args)
+ ATTRIBUTE_PRINTF (7, 0) = 0;
virtual void do_spaces (int numspaces) = 0;
virtual void do_text (const char *string) = 0;
virtual void do_message (const ui_file_style &style,