gdb: Convert language la_printchar field to a method
This commit changes the language_data::la_printchar function pointer member variable into a member function of language_defn. There should be no user visible changes after this commit. gdb/ChangeLog: * ada-lang.c (ada_language_data): Delete la_printchar initializer. (ada_language::printchar): New member function. * c-lang.c (c_language_data): Delete la_printchar initializer. (cplus_language_data): Likewise. (asm_language_data): Likewise. (minimal_language_data): Likewise. * d-lang.c (d_language_data): Likewise. * f-lang.c (f_printchar): Rename to f_language::printchar. (f_language_data): Delete la_printchar initializer. (f_language::printchar): New member function, implementation from f_printchar. * go-lang.c (go_language_data): Delete la_printchar initializer. * language.c (unk_lang_printchar): Delete. (language_defn::printchar): Define new member function. (unknown_language_data): Delete la_printchar initializer. (unknown_language::printchar): New member function. (auto_language_data): Delete la_printchar initializer. (auto_language::printchar): New member function. * language.h (language_data): Delete la_printchar field. (language_defn::printchar): Declare new member function. (LA_PRINT_CHAR): Update call to printchar. * m2-lang.c (m2_language_data): Delete la_printchar initializer. (m2_language::printchar): New member function. * objc-lang.c (objc_language_data): Delete la_printchar initializer. * opencl-lang.c (opencl_language_data): Likewise. * p-lang.c (pascal_language_data): Delete la_printchar initializer. (pascal_language::printchar): New member function. * rust-lang.c (rust_printchar): Rename to rust_language::printchar. (rust_language_data): Delete la_printchar initializer. (rust_language::printchar): New member function, implementation from rust_printchar.
This commit is contained in:
parent
ec8cec5b96
commit
52b50f2c1b
13 changed files with 111 additions and 51 deletions
23
gdb/f-lang.c
23
gdb/f-lang.c
|
@ -41,8 +41,6 @@
|
|||
|
||||
/* Local functions */
|
||||
|
||||
static void f_printchar (int c, struct type *type, struct ui_file * stream);
|
||||
|
||||
/* Return the encoding that should be used for the character type
|
||||
TYPE. */
|
||||
|
||||
|
@ -70,16 +68,6 @@ f_get_encoding (struct type *type)
|
|||
return encoding;
|
||||
}
|
||||
|
||||
/* Implementation of la_printchar. */
|
||||
|
||||
static void
|
||||
f_printchar (int c, struct type *type, struct ui_file *stream)
|
||||
{
|
||||
fputs_filtered ("'", stream);
|
||||
LA_EMIT_CHAR (c, type, stream, '\'');
|
||||
fputs_filtered ("'", stream);
|
||||
}
|
||||
|
||||
/* Print the character string STRING, printing at most LENGTH characters.
|
||||
Printing stops early if the number hits print_max; repeat counts
|
||||
are printed as appropriate. Print ellipses at the end if we
|
||||
|
@ -548,7 +536,6 @@ extern const struct language_data f_language_data =
|
|||
macro_expansion_no,
|
||||
f_extensions,
|
||||
&exp_descriptor_f,
|
||||
f_printchar, /* Print character constant */
|
||||
f_printstr, /* function to print string constant */
|
||||
f_print_typedef, /* Print a typedef using appropriate syntax */
|
||||
NULL, /* name_of_this */
|
||||
|
@ -710,6 +697,16 @@ public:
|
|||
generic_emit_char (ch, chtype, stream, quoter, encoding);
|
||||
}
|
||||
|
||||
/* See language.h. */
|
||||
|
||||
void printchar (int ch, struct type *chtype,
|
||||
struct ui_file *stream) const override
|
||||
{
|
||||
fputs_filtered ("'", stream);
|
||||
LA_EMIT_CHAR (ch, chtype, stream, '\'');
|
||||
fputs_filtered ("'", stream);
|
||||
}
|
||||
|
||||
protected:
|
||||
|
||||
/* See language.h. */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue