* parse.c (parse_fprintf): New function used to avoid calls to
fprintf in bison parser generated debug code.
* parser-defs.h: Declaration of new parse_fprintf function.
* ada-exp.y, c-exp.y, f-exp.y, jv-exp.y, m2-exp.y, p-exp.y:
Set YYDEBUG to 1 by default.
Set YYFPRINTF as parse_fprintf.
* f-exp.y: Also use new prev_lexptr variable
to improve error reporting. Based on Michael Snyder
2002-04-24 dated patch to c-exp.y.
* jv-exp.y: Likewise.
* m2-exp.y: Likewise.
allow symbols with dots.
* gdbtypes.c (check_stub_method): Cosmetic. Use more descriptive
names for parameters.
start-sanitize-java
* jv-exp.y: Parser now accepts primitive types.
* (parse_number): Use correct ifdef for scanf long double support.
* jv-lang.c (java_array_type): Initial cut at array support.
end-sanitize-java
* language.c language.h (set_language): Now returns previous language.
* symtab.c (find_methods): Make static. Cosmetic changes, including
indentation, and adding descriptive comments. Move local variable defs
into the block they are used in.
* Don't call check_stub_method any more. Use gdb_mangle_name to
generate the full method name. find_method doesn't need all the other
goobldegook that check_stub_method does.
* (gdb_mangle_name): Use more descriptive names for parameters. Fix
comment.
start-sanitize-java
* (lookup_partial_symbol lookup_block_symbol): Check for java to
ensure we can find mangled names.
end-sanitize-java
* (decode_line_1): Move local variable defs into the block they are
used in. (Improves code readability.)
* parse.c, parser-defs.h (length_of_subexp): Make non-static.
* jv-exp.y (FieldAccess): Handle dollar-VARIABLE as primary.
(ArrayAccess): Likewise. Also remove warnings.
(CastExpression): Implement (typename) UnaryExpression.
(push_qualified_expression_name): Fix small bug.
* jv-lang.c: Use TYPE_TAG_NAME, not TYPE_NAME for class names.
(_initialize_jave_language): Fix typo (jave -> java).
(java_language): Java does *not* have C-style arrays.
(java_class_from_object): Make more general (and complicated).
(java_link_class_type): Fix typo "super" -> "class". Handle arrays.
(java_emit_char, java_printchar): New function.
(evaluate_subexp_java case BINOP_SUBSCRIPT): Handle Java arrays.
* jv-valprint.c (java_value_print): Implement printing of Java arrays.
(java_print_value_fields): New function.
(java_val_print): Better printing of TYPE_CODE_CHAR, TYPE_CODE_STRUCT.
(push_expression_name): New, to handle expression names.
(push_qualified_expression_name): New, for qualified expression names.
(parse_number): Fix bugs in parsing of non-decimal integers.
* jv-lang.h, jv-lang.c (java_demangle_type_signature): New.
* jv-lang.c (type_from_class): Just use name with java_lookup_class.
(java_link_class_type): Add dummy "class" field.
(java_lookup_type): New.
(evaluate_subexp_java case STRUCTOP_STRUCT): Force to address.
* jv-typeprint.c (java_type_print_base): Don't print "class" field.
Use java_demangle_type_signature to print array class types.
* jv-valprint.c (java_value_print): Preliminary array support.
Print pointer as TYPE@HEXADDR, instead of (TYPE)0xHEXADDR.
(java_val_print): Move check for object type to java_value_print.
Check for null. Print pointer as @HEXADDR, not 0xHEXADDR.