Fix value_print, which used to be ostensibly langauge-indepentdent,

but would print pointers and arrays in C syntax.  Instead, call
	a language-specific function.  See ChangeLog for details.
This commit is contained in:
Per Bothner
1994-06-05 01:43:40 +00:00
parent c4d7d826d7
commit e10cfcaa37
10 changed files with 216 additions and 1 deletions

View File

@@ -144,6 +144,11 @@ struct language_defn
int (*la_val_print) PARAMS ((struct type *, char *, CORE_ADDR, GDB_FILE *,
int, int, int, enum val_prettyprint));
/* Print a top-level value using syntax appropriate for this language. */
int (*la_value_print) PARAMS ((struct value *, GDB_FILE *,
int, enum val_prettyprint));
/* Longest floating point type */
struct type **la_longest_float;
@@ -247,6 +252,8 @@ set_language PARAMS ((enum language));
#define LA_VAL_PRINT(type,valaddr,addr,stream,fmt,deref,recurse,pretty) \
(current_language->la_val_print(type,valaddr,addr,stream,fmt,deref, \
recurse,pretty))
#define LA_VALUE_PRINT(val,stream,fmt,pretty) \
(current_language->la_value_print(val,stream,fmt,pretty))
/* Return a format string for printf that will print a number in one of
the local (language-specific) formats. Result is static and is