1999-01-19 Fernando Nasser <fnasser@totem.to.cygnus.com>
[deliverable/binutils-gdb.git] / gdb / language.h
index 877238d39a693f8c82f30f100eb1b42c366cb58e..e33686914919e3e3563653ff629270d0a29d8c9a 100644 (file)
@@ -134,12 +134,16 @@ struct language_defn
   void (*la_error) PARAMS ((char *));
 
   /* Evaluate an expression. */
-  struct value * (*evaluate_exp) PARAMS ((struct type*, struct expression *, 
+  struct value * (*evaluate_exp) PARAMS ((struct type *, struct expression *, 
                                          int *, enum noside));
 
-  void (*la_printchar) PARAMS ((int, GDB_FILE *));
+  void (*la_printchar) PARAMS ((int ch, GDB_FILE *stream));
 
-  void (*la_printstr) PARAMS ((GDB_FILE *, char *, unsigned int, int));
+  void (*la_printstr) PARAMS ((GDB_FILE *stream, char *string,
+                              unsigned int length, int width,
+                              int force_ellipses));
+
+  void (*la_emitchar) PARAMS ((int ch, GDB_FILE *stream, int quoter));
 
   struct type *(*la_fund_type) PARAMS ((struct objfile *, int));
 
@@ -149,7 +153,7 @@ struct language_defn
 
   /* Print a value using syntax appropriate for this language. */
 
-  int (*la_val_print) PARAMS ((struct type *, char *,  CORE_ADDR, GDB_FILE *,
+  int (*la_val_print) PARAMS ((struct type *, char *, int, CORE_ADDR, GDB_FILE *,
                               int, int, int, enum val_prettyprint));
 
   /* Print a top-level value using syntax appropriate for this language. */
@@ -260,8 +264,8 @@ set_language PARAMS ((enum language));
 #define LA_PRINT_TYPE(type,varstring,stream,show,level) \
   (current_language->la_print_type(type,varstring,stream,show,level))
 
-#define LA_VAL_PRINT(type,valaddr,addr,stream,fmt,deref,recurse,pretty) \
-  (current_language->la_val_print(type,valaddr,addr,stream,fmt,deref, \
+#define LA_VAL_PRINT(type,valaddr,offset,addr,stream,fmt,deref,recurse,pretty) \
+  (current_language->la_val_print(type,valaddr,offset,addr,stream,fmt,deref, \
                                  recurse,pretty))
 #define LA_VALUE_PRINT(val,stream,fmt,pretty) \
   (current_language->la_value_print(val,stream,fmt,pretty))
@@ -309,8 +313,10 @@ set_language PARAMS ((enum language));
 
 #define LA_PRINT_CHAR(ch, stream) \
   (current_language->la_printchar(ch, stream))
-#define LA_PRINT_STRING(stream, string, length, force_ellipses) \
-  (current_language->la_printstr(stream, string, length, force_ellipses))
+#define LA_PRINT_STRING(stream, string, length, width, force_ellipses) \
+  (current_language->la_printstr(stream, string, length, width, force_ellipses))
+#define LA_EMIT_CHAR(ch, stream, quoter) \
+  (current_language->la_emitchar(ch, stream, quoter))
 
 /* Test a character to decide whether it can be printed in literal form
    or needs to be printed in another representation.  For example,
@@ -318,8 +324,10 @@ set_language PARAMS ((enum language));
    and the "other representation" is '\141'.  The "other representation"
    is program language dependent. */
 
-#define PRINT_LITERAL_FORM(c) \
-  ((c)>=0x20 && ((c)<0x7F || (c)>=0xA0) && (!sevenbit_strings || (c)<0x80))
+#define PRINT_LITERAL_FORM(c)          \
+  ((c) >= 0x20                         \
+   && ((c) < 0x7F || (c) >= 0xA0)      \
+   && (!sevenbit_strings || (c) < 0x80))
 
 /* Return a format string for printf that will print a number in one of
    the local (language-specific) formats.  Result is static and is
This page took 0.023859 seconds and 4 git commands to generate.