diff options
author | Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | 1999-08-04 13:30:51 +0000 |
---|---|---|
committer | Kaveh Ghazi <ghazi@gcc.gnu.org> | 1999-08-04 13:30:51 +0000 |
commit | 49f48c719e00f7aa5ff80a07ee4a4c8740cb662e (patch) | |
tree | 7ed9d2bdd4e749c40cb45884bcc897adc9697db6 /gcc/java/parse.y | |
parent | cc3dea85a80afdd34f4e021a7d186e7dd384ca0c (diff) | |
download | gcc-49f48c719e00f7aa5ff80a07ee4a4c8740cb662e.zip gcc-49f48c719e00f7aa5ff80a07ee4a4c8740cb662e.tar.gz gcc-49f48c719e00f7aa5ff80a07ee4a4c8740cb662e.tar.bz2 |
Warning fixes:
* Makefile.in (lang.o): Depend on $(RTL_H) $(EXPR_H).
* expr.c (java_stack_pop, java_array_data_offset,
build_java_throw_out_of_bounds_exception, case_identity,
build_java_check_indexed_type): Add static prototypes.
(linenumber_table, expand_invoke, expand_java_field_op,
build_primtype_type_ref, expand_byte_code): Constify a char*.
* java-tree.h (build_primtype_type_ref, linenumber_table):
Constify a char*.
(java_lang_expand_expr): Add prototype.
* lang.c: Include rtl.h and expr.h. Remove extern prototype for
`java_lang_expand_expr'.
* lex.c (java_lex_error): Constify a char*.
(java_get_unicode, java_read_char, java_allocate_new_line,
java_unget_unicode, java_sneak_unicode): Prototype.
* parse-scan.y (current_class, package_name, method_declarator,
report_class_declaration, yyerror): Constify a char*.
* parse.h (java_report_errors): Prototype.
(yyerror): Constify a char*.
* parse.y (classitf_redefinition_error, check_modifiers,
parse_jdk1_1_error, lookup_package_type,
lookup_package_type_and_set_next, get_printable_method_name,
purify_type_name): Constify a char*.
(build_super_invocation, maybe_generate_finit,
verify_constructor_super, parser_add_interface,
add_superinterfaces, jdep_resolve_class, note_possible_classname,
java_complete_expand_methods, java_expand_finals,
cut_identifier_in_qualified, java_stabilize_reference,
do_unary_numeric_promotion, operator_string, do_merge_string_cste,
merge_string_cste): Prototype.
(single_type_import_declaration, yyerror,
variable_redefinition_error, build_array_from_name,
build_unresolved_array_type, check_class_interface_creation,
resolve_class, complete_class_report_errors,
note_possible_classname, read_import_dir,
find_in_imports_on_demand, resolve_package, fix_constructors,
check_deprecation, lookup_method_invoke,
maybe_build_primttype_type_ref, array_constructor_check_entry):
Constify a char*.
(java_complete_expand_methods, java_expand_finals): Make static.
(convert_narrow): Remove static prototype.
From-SVN: r28498
Diffstat (limited to 'gcc/java/parse.y')
-rw-r--r-- | gcc/java/parse.y | 117 |
1 files changed, 64 insertions, 53 deletions
diff --git a/gcc/java/parse.y b/gcc/java/parse.y index 5e344ea..98e8e60 100644 --- a/gcc/java/parse.y +++ b/gcc/java/parse.y @@ -72,9 +72,9 @@ definitions and other extensions. */ /* Local function prototypes */ static char *java_accstring_lookup PROTO ((int)); -static void classitf_redefinition_error PROTO ((char *,tree, tree, tree)); +static void classitf_redefinition_error PROTO ((const char *,tree, tree, tree)); static void variable_redefinition_error PROTO ((tree, tree, tree, int)); -static void check_modifiers PROTO ((char *, int, int)); +static void check_modifiers PROTO ((const char *, int, int)); static tree create_class PROTO ((int, tree, tree, tree)); static tree create_interface PROTO ((int, tree, tree)); static tree find_field PROTO ((tree, tree)); @@ -93,7 +93,7 @@ static tree method_declarator PROTO ((tree, tree)); static void parse_warning_context PVPROTO ((tree cl, const char *msg, ...)) ATTRIBUTE_PRINTF_2; static void issue_warning_error_from_context PROTO ((tree, const char *msg, va_list)); -static tree parse_jdk1_1_error PROTO ((char *)); +static tree parse_jdk1_1_error PROTO ((const char *)); static void complete_class_report_errors PROTO ((jdep *)); static int process_imports PROTO ((void)); static void read_import_dir PROTO ((tree)); @@ -101,8 +101,8 @@ static int find_in_imports_on_demand PROTO ((tree)); static int find_in_imports PROTO ((tree)); static int check_pkg_class_access PROTO ((tree, tree)); static tree resolve_package PROTO ((tree, tree *)); -static tree lookup_package_type PROTO ((char *, int)); -static tree lookup_package_type_and_set_next PROTO ((char *, int, tree *)); +static tree lookup_package_type PROTO ((const char *, int)); +static tree lookup_package_type_and_set_next PROTO ((const char *, int, tree *)); static tree resolve_class PROTO ((tree, tree, tree)); static void declare_local_variables PROTO ((int, tree, tree)); static void source_start_java_method PROTO ((tree)); @@ -215,16 +215,16 @@ static int check_thrown_exceptions_do PROTO ((tree)); static void purge_unchecked_exceptions PROTO ((tree)); static void check_throws_clauses PROTO ((tree, tree, tree)); static void finish_method_declaration PROTO ((tree)); -static tree build_super_invocation PROTO (()); +static tree build_super_invocation PROTO ((void)); static int verify_constructor_circularity PROTO ((tree, tree)); static char *constructor_circularity_msg PROTO ((tree, tree)); static tree build_this_super_qualified_invocation PROTO ((int, tree, tree, int, int)); -static char *get_printable_method_name PROTO ((tree)); +static const char *get_printable_method_name PROTO ((tree)); static tree patch_conditional_expr PROTO ((tree, tree, tree)); -static void maybe_generate_finit PROTO (()); +static void maybe_generate_finit PROTO ((void)); static void fix_constructors PROTO ((tree)); -static int verify_constructor_super PROTO (()); +static int verify_constructor_super PROTO ((void)); static tree create_artificial_method PROTO ((tree, int, tree, tree, tree)); static void start_artificial_method_body PROTO ((tree)); static void end_artificial_method_body PROTO ((tree)); @@ -240,11 +240,23 @@ static tree build_new_array_init PROTO ((int, tree)); static tree patch_new_array_init PROTO ((tree, tree)); static tree maybe_build_array_element_wfl PROTO ((tree)); static int array_constructor_check_entry PROTO ((tree, tree)); -static char *purify_type_name PROTO ((char *)); +static const char *purify_type_name PROTO ((const char *)); static tree fold_constant_for_init PROTO ((tree, tree)); static tree strip_out_static_field_access_decl PROTO ((tree)); static jdeplist *reverse_jdep_list PROTO ((struct parser_ctxt *)); static void static_ref_err PROTO ((tree, tree, tree)); +static void parser_add_interface PROTO ((tree, tree, tree)); +static void add_superinterfaces PROTO ((tree, tree)); +static tree jdep_resolve_class PROTO ((jdep *)); +static int note_possible_classname PROTO ((const char *, int)); +static void java_complete_expand_methods PROTO ((void)); +static void java_expand_finals PROTO ((void)); +static tree cut_identifier_in_qualified PROTO ((tree)); +static tree java_stabilize_reference PROTO ((tree)); +static tree do_unary_numeric_promotion PROTO ((tree)); +static char * operator_string PROTO ((tree)); +static tree do_merge_string_cste PROTO ((tree, const char *, int, int)); +static tree merge_string_cste PROTO ((tree, tree, int)); /* Number of error found so far. */ int java_error_count; @@ -583,7 +595,7 @@ single_type_import_declaration: { tree name = EXPR_WFL_NODE ($2), node, last_name; int i = IDENTIFIER_LENGTH (name)-1; - char *last = &IDENTIFIER_POINTER (name)[i]; + const char *last = &IDENTIFIER_POINTER (name)[i]; while (last != IDENTIFIER_POINTER (name)) { if (last [0] == '.') @@ -2050,7 +2062,7 @@ cast_expression: /* Error handling here is potentially weak */ { $$ = build_cast ($1.location, $2, $4); } | OP_TK name dims CP_TK unary_expression_not_plus_minus { - char *ptr; + const char *ptr; while (CURRENT_OSB (ctxp)--) obstack_1grow (&temporary_obstack, '['); ctxp->osb_depth--; @@ -2415,7 +2427,7 @@ java_pop_parser_context (generate) static tree parse_jdk1_1_error (msg) - char *msg; + const char *msg; { sorry (": `%s' JDK1.1(TM) feature", msg); java_error_count++; @@ -2426,11 +2438,11 @@ static int do_warning = 0; void yyerror (msg) - char *msg; + const char *msg; { static java_lc elc; static int prev_lineno; - static char *prev_msg; + static const char *prev_msg; int save_lineno; char *remainder, *code_from_source; @@ -2680,7 +2692,7 @@ java_accstring_lookup (flags) static void classitf_redefinition_error (context, id, decl, cl) - char *context; + const char *context; tree id, decl, cl; { parse_error_context (cl, "%s `%s' already defined in %s:%d", @@ -2694,7 +2706,7 @@ variable_redefinition_error (context, name, type, line) tree context, name, type; int line; { - char *type_name; + const char *type_name; /* Figure a proper name for type. We might haven't resolved it */ if (TREE_CODE (type) == POINTER_TYPE && !TREE_TYPE (type)) @@ -2714,7 +2726,7 @@ build_array_from_name (type, type_wfl, name, ret_name) tree type, type_wfl, name, *ret_name; { int more_dims = 0; - char *string; + const char *string; /* Eventually get more dims */ string = IDENTIFIER_POINTER (name); @@ -2765,7 +2777,7 @@ static tree build_unresolved_array_type (type_or_wfl) tree type_or_wfl; { - char *ptr; + const char *ptr; /* TYPE_OR_WFL might be an array on a resolved type. In this case, just create a array type */ @@ -2792,7 +2804,7 @@ build_unresolved_array_type (type_or_wfl) static void check_modifiers (message, value, mask) - char *message; + const char *message; int value; int mask; { @@ -2853,7 +2865,7 @@ check_class_interface_creation (is_interface, flags, raw_name, qualified_name, d /* If public, file name should match class/interface name */ if (flags & ACC_PUBLIC) { - char *f; + const char *f; /* Contains OS dependent assumption on path separator. FIXME */ for (f = &input_filename [strlen (input_filename)]; @@ -4149,8 +4161,8 @@ static tree resolve_class (class_type, decl, cl) tree class_type, decl, cl; { - char *name = IDENTIFIER_POINTER (TYPE_NAME (class_type)); - char *base = name; + const char *name = IDENTIFIER_POINTER (TYPE_NAME (class_type)); + const char *base = name; tree resolved_type = TREE_TYPE (class_type); tree resolved_type_decl; @@ -4366,9 +4378,9 @@ resolve_no_layout (name, cl) /* Called when reporting errors. Skip leader '[' in a complex array type description that failed to be resolved. */ -static char * +static const char * purify_type_name (name) - char *name; + const char *name; { while (*name && *name == '[') name++; @@ -4381,7 +4393,7 @@ static void complete_class_report_errors (dep) jdep *dep; { - char *name; + const char *name; if (!JDEP_WFL (dep)) return; @@ -4454,11 +4466,11 @@ java_check_final () DECL is a constructor, use the class name instead of the form <init> */ -static char * +static const char * get_printable_method_name (decl) tree decl; { - char *to_return; + const char *to_return; tree name = NULL_TREE; if (DECL_CONSTRUCTOR_P (decl)) @@ -5035,7 +5047,7 @@ find_in_imports (class_type) static int note_possible_classname (name, len) - char *name; + const char *name; int len; { tree node; @@ -5060,7 +5072,7 @@ read_import_dir (wfl) tree wfl; { tree package_id = EXPR_WFL_NODE (wfl); - char *package_name = IDENTIFIER_POINTER (package_id); + const char *package_name = IDENTIFIER_POINTER (package_id); int package_length = IDENTIFIER_LENGTH (package_id); DIR *dirp = NULL; JCF *saved_jcf = current_jcf; @@ -5080,7 +5092,7 @@ read_import_dir (wfl) for (entry = jcf_path_start (); entry != NULL; entry = jcf_path_next (entry)) { - char *entry_name = jcf_path_name (entry); + const char *entry_name = jcf_path_name (entry); int entry_length = strlen (entry_name); if (jcf_path_is_zipfile (entry)) { @@ -5104,7 +5116,7 @@ read_import_dir (wfl) for (k = 0; k < zipf->count; k++, zipd = ZIPDIR_NEXT (zipd)) { - char *current_entry = ZIPDIR_FILENAME (zipd); + const char *current_entry = ZIPDIR_FILENAME (zipd); int current_entry_len = zipd->filename_length; if (current_entry_len >= BUFFER_LENGTH (filename) @@ -5136,7 +5148,7 @@ read_import_dir (wfl) for (;;) { int len; - char *d_name; + const char *d_name; struct dirent *direntp = readdir (dirp); if (!direntp) break; @@ -5192,7 +5204,7 @@ find_in_imports_on_demand (class_type) for (import = ctxp->import_demand_list; import; import = TREE_CHAIN (import)) { - char *id_name; + const char *id_name; obstack_grow (&temporary_obstack, IDENTIFIER_POINTER (EXPR_WFL_NODE (TREE_PURPOSE (import))), IDENTIFIER_LENGTH (EXPR_WFL_NODE (TREE_PURPOSE (import)))); @@ -5250,7 +5262,7 @@ resolve_package (pkg, next) { tree current; tree type_name = NULL_TREE; - char *name = IDENTIFIER_POINTER (EXPR_WFL_NODE (pkg)); + const char *name = IDENTIFIER_POINTER (EXPR_WFL_NODE (pkg)); /* The trick is to determine when the package name stops and were the name of something contained in the package starts. Then we @@ -5309,11 +5321,11 @@ resolve_package (pkg, next) static tree lookup_package_type_and_set_next (name, len, next) - char *name; + const char *name; int len; tree *next; { - char *ptr; + const char *ptr; tree type_name = lookup_package_type (name, len); if (!type_name) @@ -5330,11 +5342,11 @@ lookup_package_type_and_set_next (name, len, next) static tree lookup_package_type (name, from) - char *name; + const char *name; int from; { char subname [128]; - char *sub = &name[from+1]; + const char *sub = &name[from+1]; while (*sub != '.' && *sub) sub++; strncpy (subname, name, sub-name); @@ -5800,7 +5812,7 @@ java_layout_classes () /* Expand all methods in all registered classes. */ -void +static void java_complete_expand_methods () { tree current; @@ -5998,7 +6010,7 @@ fix_constructors (mdecl) if (verify_constructor_super ()) { tree sclass_decl = TYPE_NAME (CLASSTYPE_SUPER (current_class)); - char *n = IDENTIFIER_POINTER (DECL_NAME (sclass_decl)); + const char *n = IDENTIFIER_POINTER (DECL_NAME (sclass_decl)); parse_error_context (lookup_cl (TYPE_NAME (current_class)), "No constructor matching `%s()' found in " "class `%s'", n, n); @@ -6079,7 +6091,7 @@ verify_constructor_super () /* Expand finals. */ -void +static void java_expand_finals () { } @@ -6820,7 +6832,7 @@ static void check_deprecation (wfl, decl) tree wfl, decl; { - char *file = DECL_SOURCE_FILE (decl); + const char *file = DECL_SOURCE_FILE (decl); /* Complain if the field is deprecated and the file it was defined in isn't compiled at the same time the file which contains its use is */ @@ -7352,7 +7364,7 @@ lookup_method_invoke (lc, cl, class, name, arg_list) { tree atl = end_params_node; /* Arg Type List */ tree method, signature, list, node; - char *candidates; /* Used for error report */ + const char *candidates; /* Used for error report */ /* Fix the arguments */ for (node = arg_list; node; node = TREE_CHAIN (node)) @@ -8828,7 +8840,7 @@ maybe_build_primttype_type_ref (rhs, wfl) && DECL_NAME (n) == TYPE_identifier_node && rhs_type == class_ptr_type) { - char *self_name = IDENTIFIER_POINTER (EXPR_WFL_NODE (wfl)); + const char *self_name = IDENTIFIER_POINTER (EXPR_WFL_NODE (wfl)); if (!strncmp (self_name, "java.lang.", 10)) to_return = build_primtype_type_ref (self_name); } @@ -9722,11 +9734,11 @@ patch_binop (node, wfl_op1, wfl_op2) static tree do_merge_string_cste (cste, string, string_len, after) tree cste; - char *string; + const char *string; int string_len, after; { int len = TREE_STRING_LENGTH (cste) + string_len; - char *old = TREE_STRING_POINTER (cste); + const char *old = TREE_STRING_POINTER (cste); TREE_STRING_LENGTH (cste) = len; TREE_STRING_POINTER (cste) = obstack_alloc (expression_obstack, len+1); if (after) @@ -9758,11 +9770,11 @@ merge_string_cste (op1, op2, after) /* Reasonable integer constant can be treated right away */ if (TREE_CODE (op2) == INTEGER_CST && !TREE_CONSTANT_OVERFLOW (op2)) { - static char *boolean_true = "true"; - static char *boolean_false = "false"; - static char *null_pointer = "null"; + static const char *boolean_true = "true"; + static const char *boolean_false = "false"; + static const char *null_pointer = "null"; char ch[3]; - char *string; + const char *string; if (op2 == boolean_true_node) string = boolean_true; @@ -10209,7 +10221,6 @@ patch_cast (node, wfl_operator) /* Check on cast that are proven correct at compile time */ if (JNUMERIC_TYPE_P (cast_type) && JNUMERIC_TYPE_P (op_type)) { - static tree convert_narrow (); /* Same type */ if (cast_type == op_type) return node; @@ -10602,7 +10613,7 @@ array_constructor_check_entry (type, entry) /* Check and report errors */ if (!new_value) { - char *msg = (!valid_cast_to_p (type_value, type) ? + const char *msg = (!valid_cast_to_p (type_value, type) ? "Can't" : "Explicit cast needed to"); if (!array_type_string) array_type_string = strdup (lang_printable_name (type, 1)); |