X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=gdb%2Fp-lang.c;h=cd05a2484ea40641bbe295a30240d74a9a946214;hb=502bdb00ee094e41445a0d3458a2848f8adcca57;hp=8cfa2b00d3efd51dc0530452b68bfcf3258edba8;hpb=973177d3c5d517f8de4b4f1b7a4a75c9e5936375;p=external%2Fbinutils.git diff --git a/gdb/p-lang.c b/gdb/p-lang.c index 8cfa2b0..cd05a24 100644 --- a/gdb/p-lang.c +++ b/gdb/p-lang.c @@ -1,5 +1,7 @@ /* Pascal language support routines for GDB, the GNU debugger. - Copyright 2000, 2002 Free Software Foundation, Inc. + + Copyright 2000, 2002, 2003, 2004, 2005 Free Software Foundation, + Inc. This file is part of GDB. @@ -28,6 +30,7 @@ #include "language.h" #include "p-lang.h" #include "valprint.h" +#include "value.h" #include extern void _initialize_pascal_language (void); @@ -98,7 +101,7 @@ static void pascal_one_char (int, struct ui_file *, int *); In_quotes is reset to 0 if a char is written with #4 notation */ static void -pascal_one_char (register int c, struct ui_file *stream, int *in_quotes) +pascal_one_char (int c, struct ui_file *stream, int *in_quotes) { c &= 0xFF; /* Avoid sign bit follies */ @@ -131,7 +134,7 @@ static void pascal_emit_char (int c, struct ui_file *stream, int quoter); characters and strings is language specific. */ static void -pascal_emit_char (register int c, struct ui_file *stream, int quoter) +pascal_emit_char (int c, struct ui_file *stream, int quoter) { int in_quotes = 0; pascal_one_char (c, stream, &in_quotes); @@ -154,10 +157,10 @@ pascal_printchar (int c, struct ui_file *stream) had to stop before printing LENGTH characters, or if FORCE_ELLIPSES. */ void -pascal_printstr (struct ui_file *stream, char *string, unsigned int length, - int width, int force_ellipses) +pascal_printstr (struct ui_file *stream, const gdb_byte *string, + unsigned int length, int width, int force_ellipses) { - register unsigned int i; + unsigned int i; unsigned int things_printed = 0; int in_quotes = 0; int need_comma = 0; @@ -273,7 +276,7 @@ pascal_printstr (struct ui_file *stream, char *string, unsigned int length, struct type * pascal_create_fundamental_type (struct objfile *objfile, int typeid) { - register struct type *type = NULL; + struct type *type = NULL; switch (typeid) { @@ -285,7 +288,7 @@ pascal_create_fundamental_type (struct objfile *objfile, int typeid) type = init_type (TYPE_CODE_INT, TARGET_INT_BIT / TARGET_CHAR_BIT, 0, "", objfile); - warning ("internal error: no Pascal fundamental type %d", typeid); + warning (_("internal error: no Pascal fundamental type %d"), typeid); break; case FT_VOID: type = init_type (TYPE_CODE_VOID, @@ -450,9 +453,11 @@ const struct language_defn pascal_language_defn = range_check_on, type_check_on, case_sensitive_on, + array_row_major, + &exp_descriptor_standard, pascal_parse, pascal_error, - evaluate_subexp_standard, + null_post_parser, pascal_printchar, /* Print a character constant */ pascal_printstr, /* Function to print string constant */ pascal_emit_char, /* Print a single char */ @@ -461,15 +466,17 @@ const struct language_defn pascal_language_defn = pascal_val_print, /* Print a value using appropriate syntax */ pascal_value_print, /* Print a top-level value */ NULL, /* Language specific skip_trampoline */ + value_of_this, /* value_of_this */ + basic_lookup_symbol_nonlocal, /* lookup_symbol_nonlocal */ + basic_lookup_transparent_type,/* lookup_transparent_type */ NULL, /* Language specific symbol demangler */ - {"", "%", "b", ""}, /* Binary format info */ - {"0%lo", "0", "o", ""}, /* Octal format info */ - {"%ld", "", "d", ""}, /* Decimal format info */ - {"$%lx", "$", "x", ""}, /* Hex format info */ + NULL, /* Language specific class_name_from_physname */ pascal_op_print_tab, /* expression operators for printing */ 1, /* c-style arrays */ 0, /* String lower bound */ &builtin_type_char, /* Type of string elements */ + default_word_break_characters, + NULL, /* FIXME: la_language_arch_info. */ LANG_MAGIC };