X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=gdb%2Fjv-lang.h;h=7183bd660cbccd1b9a47db10f22745f66ab36ba7;hb=38b022b4452f996fb5a8598f80d850b594621bcf;hp=5d62c382e873706c850f236dbf734585728fe1e0;hpb=27e232885db363fb545fd2f450e72d929e59b8f6;p=deliverable%2Fbinutils-gdb.git diff --git a/gdb/jv-lang.h b/gdb/jv-lang.h index 5d62c382e8..7183bd660c 100644 --- a/gdb/jv-lang.h +++ b/gdb/jv-lang.h @@ -1,11 +1,12 @@ /* Java language support definitions for GDB, the GNU debugger. - Copyright 1997-2000 Free Software Foundation, Inc. + + Copyright (C) 1997-2016 Free Software Foundation, Inc. This file is part of GDB. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or + the Free Software Foundation; either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -14,53 +15,65 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place - Suite 330, - Boston, MA 02111-1307, USA. */ + along with this program. If not, see . */ + +#ifndef JV_LANG_H +#define JV_LANG_H -extern int java_parse (void); /* Defined in jv-exp.y */ +struct value; +struct type_print_options; +struct parser_state; -extern void java_error (char *); /* Defined in jv-exp.y */ +extern int java_parse (struct parser_state *); /* Defined in jv-exp.y */ -/* sizeof (struct Object) */ -#define JAVA_OBJECT_SIZE (get_java_object_header_size ()) +extern void java_yyerror (char *); /* Defined in jv-exp.y */ -extern struct type *java_int_type; -extern struct type *java_byte_type; -extern struct type *java_short_type; -extern struct type *java_long_type; -extern struct type *java_boolean_type; -extern struct type *java_char_type; -extern struct type *java_float_type; -extern struct type *java_double_type; -extern struct type *java_void_type; +struct builtin_java_type +{ + struct type *builtin_int; + struct type *builtin_byte; + struct type *builtin_short; + struct type *builtin_long; + struct type *builtin_boolean; + struct type *builtin_char; + struct type *builtin_float; + struct type *builtin_double; + struct type *builtin_void; +}; -extern int java_val_print (struct type *, char *, int, CORE_ADDR, - struct ui_file *, int, int, int, - enum val_prettyprint); +extern const struct builtin_java_type *builtin_java_type (struct gdbarch *); -extern int java_value_print (struct value *, struct ui_file *, int, - enum val_prettyprint); +extern void java_val_print (struct type *, const gdb_byte *, int, CORE_ADDR, + struct ui_file *, int, + const struct value *, + const struct value_print_options *); -extern value_ptr java_class_from_object (value_ptr); +extern void java_value_print (struct value *, struct ui_file *, + const struct value_print_options *); -extern struct type *type_from_class (struct value *); +extern struct value *java_class_from_object (struct value *); -extern struct type *java_primitive_type (int signature); +extern struct type *type_from_class (struct gdbarch *, struct value *); -extern struct type *java_primitive_type_from_name (char *, int); +extern struct type *java_primitive_type (struct gdbarch *, int signature); + +extern struct type *java_primitive_type_from_name (struct gdbarch *, + const char *, int); extern struct type *java_array_type (struct type *, int); extern struct type *get_java_object_type (void); -extern int get_java_object_header_size (void); +extern int get_java_object_header_size (struct gdbarch *); extern struct type *java_lookup_class (char *); extern int is_object_type (struct type *); /* Defined in jv-typeprint.c */ -extern void java_print_type (struct type *, char *, struct ui_file *, int, - int); +extern void java_print_type (struct type *, const char *, + struct ui_file *, int, int, + const struct type_print_options *); + +extern char *java_demangle_type_signature (const char *); -extern char *java_demangle_type_signature (char *); +#endif