From 5c6ce71d76dc5618b6ebfc967e5c4b99d701ef50 Mon Sep 17 00:00:00 2001 From: Tom Tromey Date: Sat, 27 Sep 2008 21:29:30 +0000 Subject: gdb * scm-lang.c (scm_language_defn): Update. * p-typeprint.c (pascal_print_typedef): New function. * p-lang.h: (pascal_print_typedef): Declare. * p-lang.c (pascal_language_defn): Update. * objc-lang.c (objc_language_defn): Update. * m2-typeprint.c (m2_print_typedef): New function. * m2-lang.h (m2_print_typedef): Declare. * m2-lang.c (m2_language_defn): Update. * language.h (_LANG_c, _LANG_m2, _LANG_fortran, _LANG_pascal): Remove. (struct language_defn) : New field. (default_print_typedef): Declare. (LA_PRINT_TYPEDEF): New define. * language.c (unknown_language_defn): Update. (auto_language_defn): Update. (local_language_defn): Update. * jv-lang.c (java_language_defn): Update. * f-lang.c (f_language_defn): Update. * c-typeprint.c (c_print_typedef): New function. * c-lang.h (c_print_typedef): Declare. * c-lang.c (c_language_defn): Update. (cplus_language_defn): Update. (asm_language_defn): Update. (minimal_language_defn): Update. * ada-lang.c (ada_language_defn): Update. * typeprint.c (default_print_typedef): New function. gdb/doc * gdbint.texinfo (Language Support): Remove text about omitting support for a language. --- gdb/p-typeprint.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'gdb/p-typeprint.c') diff --git a/gdb/p-typeprint.c b/gdb/p-typeprint.c index a10982d773b..afc831cc484 100644 --- a/gdb/p-typeprint.c +++ b/gdb/p-typeprint.c @@ -87,6 +87,21 @@ pascal_print_type (struct type *type, char *varstring, struct ui_file *stream, } +/* Print a typedef using Pascal syntax. TYPE is the underlying type. + NEW_SYMBOL is the symbol naming the type. STREAM is the stream on + which to print. */ + +void +pascal_print_typedef (struct type *type, struct symbol *new_symbol, + struct ui_file *stream) +{ + CHECK_TYPEDEF (type); + fprintf_filtered (stream, "type "); + fprintf_filtered (stream, "%s = ", SYMBOL_PRINT_NAME (new_symbol)); + type_print (type, "", stream, 0); + fprintf_filtered (stream, ";\n"); +} + /* If TYPE is a derived type, then print out derivation information. Print only the actual base classes of this type, not the base classes of the base classes. I.E. for the derivation hierarchy: -- cgit v1.2.3-65-gdbad