/* Java language support routines for GDB, the GNU debugger.
- Copyright 1997 Free Software Foundation, Inc.
+ Copyright 1997, 1998 Free Software Foundation, Inc.
This file is part of GDB.
struct type *java_double_type;
struct type *java_void_type;
-struct type *java_object_type;
+static void java_emit_char PARAMS ((int c, GDB_FILE *stream, int quoter));
/* This objfile contains symtabs that have been dynamically created
to record dynamically loaded Java classes and dynamically
compiled java methods. */
-struct objfile *dynamics_objfile = NULL;
-struct type *java_link_class_type PARAMS((struct type*, value_ptr));
+static struct objfile *dynamics_objfile = NULL;
-struct objfile *
+static struct type *java_link_class_type PARAMS ((struct type *, value_ptr));
+
+static struct objfile *
get_dynamics_objfile ()
{
if (dynamics_objfile == NULL)
{
- dynamics_objfile = allocate_objfile (NULL, 0);
+
+/* CHECK WITH STU -- edie. Params 3 and 4 are USER_LOADED and IS_SOLIB.
+ USER_LOADED - used by run_command to remove old objfile entries which
+ are no longer valid
+ IS_SOLIB - 1 if the object file is a shared library */
+
+ dynamics_objfile = allocate_objfile (NULL, 0, 0, 0);
}
return dynamics_objfile;
}
return type;
}
-struct type*
+static struct type *java_object_type;
+
+struct type *
get_java_object_type ()
{
return java_object_type;
error ("not implemented - java_value_string"); /* FIXME */
}
-static void java_printchar PARAMS ((int c, GDB_FILE *stream));
+/* Print the character C on STREAM as part of the contents of a literal
+ string whose delimiter is QUOTER. Note that that format for printing
+ characters and strings is language specific. */
static void
-java_printchar (c, stream)
+java_emit_char (c, stream, quoter)
int c;
GDB_FILE *stream;
+ int quoter;
{
- fputc_filtered ('\'', stream);
-
switch (c)
{
case '\\':
fprintf_filtered (stream, "\\u%.4x", (unsigned int) c);
break;
}
-
- fputc_filtered ('\'', stream);
}
static value_ptr
java_parse,
java_error,
evaluate_subexp_java,
- java_printchar, /* Print a character constant */
+ c_printchar, /* Print a character constant */
c_printstr, /* Function to print string constant */
+ java_emit_char, /* Function to print a single character */
java_create_fundamental_type, /* Create fundamental type in this language */
java_print_type, /* Print a type using appropriate syntax */
java_val_print, /* Print a value using appropriate syntax */