diff options
author | kenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-02-04 22:44:12 +0000 |
---|---|---|
committer | kenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-02-04 22:44:12 +0000 |
commit | f060a02760f73f379d15babfe5aa33cf0229fbc7 (patch) | |
tree | 8141b8180c25362fac62609d1e35c61c9cc898f6 /gcc/java/jcf-write.c | |
parent | 9e43fb6df1d16cdb3978075c4f4cd1f6c86d0715 (diff) | |
download | gcc-f060a02760f73f379d15babfe5aa33cf0229fbc7.tar.gz |
* diagnostic.h (set_internal_error_function): Renamed.
* toplev.h (internal_error): Renamed from fatal.
(pfatal_with_name): Deleted.
(fatal_io_error): Now has printf-style arguments.
* diagnostic.c (pfatal_with_name): Deleted.
(fatal_io_error): Rework to have args in printf-style.
(set_internal_error_function): Renamed from set_fatal_function.
(internal_error): Renamed from fatal.
(error_recursion, fancy_abort): Call internal_error instead of fatal.
* dwarf2out.c (get_cfa_from_loc_descr): Likewise.
* emit-rtl.c (gen_realpart, gen_imagpart): Likewise.
* expr.c (check_max_integer_computation_mode, expand_expr): Likewise.
* flow.c (verify_flow_info): Likewise.
* config/arm/arm.c (thumb_unexpanded_epilogue): Likewise.
* config/mips/mips.c (save_restore_insns): Likewise.
* cp/init.c (build_java_class_ref): Likewise.
(dsp16xx_reg_class_from_letter): Likewise.
(limit_reload_class, double_reg_to_memory): Likewise.
(print_operand_address, emit_1600_code_shift): Likewise.
(gen_tst_reg, gen_compare_reg): Likewise.
* config/m68hc11/m68hc11.c (m68hc11_emit_libcall): Likewise.
* cp/decl.c (pushdecl): Likewise.
* java/check-init.c (check_init): Likewise.
* java/expr.c (java_lang_expand_expr): Likewise.
* java/jcf-parse.c (get_constant): Likewise.
* java/mangle.c (java_mangle_decl): Likewise.
* java/parse.y (make_nested_class_name, java_complete_lhs): Likewise.
(operator_string): Likewise.
* except.c (duplicate_eh_handlers): Call abort instead of fatal.
* flow.c (verify_flow_info): Likewise.
* ch/convert.c (convert): Likewise.
* ch/except.c (pop_handler, chill_check_no_handlers): Likewise.
* ch/expr.c (chill_expand_expr): Likewise.
* ch/parse.c (peek_token_, pushback_token, require): Likewise.
* config/arm/arm.c (thumb_load_double_from_address): Likewise.
* config/avr/avr.c (pttreg_to_str, unique_section): Likewise.
(avr_normalize_condition): Likewise.
* config/c4x/c4x.c (c4x_emit_libcall, c4x_valid_operands): Likewise.
* config/dsp16xx/dsp16xx.c (dsp16xx_reg_class_from_letter): Likewise.
(limit_reload_class, double_reg_to_memory): Likewise.
(print_operand_address, emit_1600_code_shift): Likewise.
(gen_tst_reg, gen_compare_reg): Likewise.
* config/m68hc11/m68hc11.c (m68hc11_emit_libcall): Likewise.
* cp/decl.c (pushdecl): Likewise.
* java/check-init.c (check_init): Likewise.
* java/class.c (build_class_ref): Likewise.
* java/constants.c (write_constant_pool): Likewise.
* java/decl.c (start_java_method): Likewise.
* java/expr.c (push_type, java_stack_pop, java_stack_swap): Likewise.
(java_stack_dup, encode_newarray_type): Likewise.
(build_java_array_length_access): Likewise.
(build_java_check_indexed_type, expand_java_pushc): Likewise.
(build_java_soft_divmod, build_invokeinterface): Likewise.
* java/java-tree.h (INNER_CLASS_P): Likewise.
* java/jcf-parse.c (parse_signature, get_name_constant): Likewise.
(give_name_to_class, get_class_constant): Likewise.
* java/jcf-write.c (CHECK_PUT, CHECK_OP, get_access_flags): Likewise.
(find_constant_index, generate_bytecode_conditional): Likewise.
(generate_bytecode_insns, perform_relocations): Likewise.
* java/lex.c (java_unget_unicode, java_lex): Likewise.
* java/mangle.c (mangle_type, mangle_record_type): Likewise.
(mangle_pointer_type, mangle_array_type, init_mangling): Likewise.
(finish_mangling): Likewise.
* java/parse.h (MARK_FINAL_PARMS): Likewise.
* java/parse.y (pop_current_osb, unreachable_stmt_error): Likewise.
(obtain_incomplete_type, java_complete_class): Likewise.
(java_check_regular_methods, java_complete_expand_method): Likewise.
(cut_identifier_in_qualified, check_deprecation): Likewise.
(patch_invoke, find_applicable_accessible_methods_list): Likewise.
(java_complete_lhs, lookup_name_in_blocks): Likewise.
(check_final_variable_indirect_assignment, build_unaryop): Likewise.
* java/typeck.c (set_local_type, parse_signature_type): Likewise.
(parse_signature_string, build_java_signature): Likewise;
(set_java_signature): Likewise.
* java/verify.c (type_stack_dup, CHECK_PC_IN_RANGE): Likewise.
* c-parse.in (methoddef): Call fatal_error instead of fatal.
* objc/objc-act.c (build_ivar_chain): Likewise.
* cp/except.c (decl_is_java_type): Likewise.
* cp/init.c (build_java_class_ref): Likewise.
* cp/init.c (build_new_1): Likewise.
* f/com.c (ffecom_init_0): Likewise.
* java/class.c (add_method, build_static_field_ref): Likewise.
* java/expr.c (build_known_method_ref, expand_invoke): Likewise.
* java/jcf-parse.c (get_constant, jcf_parse): Likewise.
* java/lex.c (java_new_new_lexer): Likewise.
* java/jv-scan.c (main): Likewise.
(fatal_error): Renamed from fatal.
* dwarfout.c (dwarfout_init): Call fatal_io_error instead of
pfatal_with_name.
* graph.c (clean_graph_dump_file): Likewise.
* profile.c (init_branch_prob): Likewise.
* ch/grant.c (write_grant_file): Likewise.
* ch/lex.c (init_parse, same_file, yywrap): Likewise.
* f/com.c (init_parse): Likewise.
* java/jcf-parse.c (yyparse): Likewise.
* objc/objc-act.c (objc_init): Likewise.
* java/jcf-parse.c (jcf_parse_source): Call fatal_io_error, not fatal.
(yyparse): Likewise.
* java/jcf-write.c (make_class_file_name, write_classfile): Likewise.
* java/lex.c (java_get_line_col): Likewise.
* hash.c (hash_allocate): Don't check for failure returns from
obstack functions that can't fail.
(hash_table_init_n, hash_table_init): Likewise; also now return void.
* hash.h (hash_table_init_n, hash_table_init): Now return void.
* cp/decl.c (build_typename_type): hash_table_init now returns void.
* ch/lang.c (GNU_xref_begin, GNU_xref_end): Deleted.
* ch/lex.c (convert_bitstring): Delete check for alloca failure.
* config/dsp16xx/dsp16xx.c (dsp16xx_invalid_register_for_compare):
Deleted.
* config/dsp16xx/dsp16xx.md (unnamed cmphi): Call abort instead of it.
* f/com.c (ffecom_decode_include_option_): Make errors non-fatal.
* f/lex.c (ffelex_cfelex_, ffelex_get_directive_line_): Likewise.
(ffelex_hash_): Likewise.
* config/arm/arm.c (arm_override_options): Likewise.
* config/avr/avr.c (avr_override_options): Likewise.
* config/c4x/c4x.c (c4x_expand_prologue): Likewise.
* config/dsp16xx/dsp16xx.c (function_prologue): Likewise.
* config/h8300/h8300.c (h8300_init_once): Likewise.
* config/mips/mips.c (override_options): Likewise.
* config/i386/i386.c (override_options): Likewise, rework.
* config/m68k/m68k.c (override_options): Likewise.
* cp/decl.c (init_decl_processing): Likewise.
* java/jcf-parse.c (load_class): Likewise.
* config/dsp16xx/dsp16xx.c (print_operand): Call output_operand_lossage
instead of fatal.
* config/mips/mips.c (print_operand): Likewise.
* java/lex.c (byteswap_init, need_byteswap): Only #ifdef HAVE_ICONV.
* objc/objc_act.c (objc_check_decl): Remove unneeded fatal call.
(get_object_reference): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@39443 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/java/jcf-write.c')
-rw-r--r-- | gcc/java/jcf-write.c | 69 |
1 files changed, 33 insertions, 36 deletions
diff --git a/gcc/java/jcf-write.c b/gcc/java/jcf-write.c index 1106a759530..5cb4fb368a2 100644 --- a/gcc/java/jcf-write.c +++ b/gcc/java/jcf-write.c @@ -1,5 +1,5 @@ /* Write out a Java(TM) class file. - Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc. + Copyright (C) 1998, 1999, 2000, 2001 Free Software Foundation, Inc. This file is part of GNU CC. @@ -355,14 +355,15 @@ static void append_innerclasses_attribute_entry PARAMS ((struct jcf_partial *, t static int CHECK_PUT PARAMS ((void *, struct jcf_partial *, int)); static int -CHECK_PUT(ptr, state, i) +CHECK_PUT (ptr, state, i) void *ptr; struct jcf_partial *state; int i; { - if ((unsigned char *)ptr < state->chunk->data - || (unsigned char*)ptr + i > state->chunk->data + state->chunk->size) - fatal ("internal error - CHECK_PUT failed"); + if ((unsigned char *) ptr < state->chunk->data + || (unsigned char *) ptr + i > state->chunk->data + state->chunk->size) + abort (); + return 0; } #else @@ -411,16 +412,16 @@ alloc_chunk (last, data, size, work) static int CHECK_OP PARAMS ((struct jcf_partial *)); static int -CHECK_OP(struct jcf_partial *state) +CHECK_OP (state) + struct jcf_partial *state; { if (state->bytecode.ptr > state->bytecode.limit) - { - fatal("internal error - CHECK_OP failed"); - } + abort (); + return 0; } #else -#define CHECK_OP(STATE) ((void)0) +#define CHECK_OP(STATE) ((void) 0) #endif static unsigned char * @@ -687,7 +688,8 @@ get_access_flags (decl) flags |= ACC_PRIVATE; } else - fatal ("internal error - bad argument to get_access_flags"); + abort (); + if (TREE_CODE (decl) == FUNCTION_DECL) { if (METHOD_NATIVE (decl)) @@ -833,11 +835,10 @@ find_constant_index (value, state) } } else if (TREE_CODE (value) == STRING_CST) - { - return find_string_constant (&state->cpool, value); - } + return find_string_constant (&state->cpool, value); + else - fatal ("find_constant_index - bad type"); + abort (); } /* Push 64-bit long constant on VM stack. @@ -1176,12 +1177,12 @@ generate_bytecode_conditional (exp, true_label, false_label, true_label, false_label, true_branch_first, state); if (state->code_SP != save_SP_after) - fatal ("internal error non-matching SP"); + abort (); } break; case TRUTH_NOT_EXPR: - generate_bytecode_conditional (TREE_OPERAND (exp, 0), false_label, true_label, - ! true_branch_first, state); + generate_bytecode_conditional (TREE_OPERAND (exp, 0), false_label, + true_label, ! true_branch_first, state); break; case TRUTH_ANDIF_EXPR: { @@ -1345,7 +1346,7 @@ generate_bytecode_conditional (exp, true_label, false_label, break; } if (save_SP != state->code_SP) - fatal ("internal error - SP mismatch"); + abort (); } /* Call pending cleanups i.e. those for surrounding CLEANUP_POINT_EXPRs @@ -2062,12 +2063,12 @@ generate_bytecode_insns (exp, target, state) else if (TREE_CODE (exp) == ARRAY_REF) { jopcode = OPCODE_iastore + adjust_typed_op (TREE_TYPE (exp), 7); - RESERVE(1); + RESERVE (1); OP1 (jopcode); NOTE_POP (TYPE_IS_WIDE (TREE_TYPE (exp)) ? 4 : 3); } else - fatal ("internal error (bad lhs to MODIFY_EXPR)"); + abort (); break; case PLUS_EXPR: jopcode = OPCODE_iadd; @@ -2579,8 +2580,8 @@ generate_bytecode_insns (exp, target, state) { DECL_CONTEXT (f) = saved_context; if (nargs <= 0) - fatal ("Illegal number of arguments to invokeinterface, nargs=%d", - nargs); + abort (); + OP1 (nargs); OP1 (0); } @@ -2767,7 +2768,7 @@ perform_relocations (state) } } if (new_ptr != chunk->data) - fatal ("internal error - perform_relocations"); + abort (); } state->code_length = pc; } @@ -3288,16 +3289,11 @@ make_class_file_name (clas) if (s == NULL) break; *s = '\0'; - if (stat (r, &sb) == -1) - { + if (stat (r, &sb) == -1 /* Try to make it. */ - if (mkdir (r, 0755) == -1) - { - fatal ("failed to create directory `%s'", r); - free (r); - return NULL; - } - } + && mkdir (r, 0755) == -1) + fatal_io_error ("can't create directory %s", r); + *s = DIR_SEPARATOR; /* Skip consecutive separators. */ for (dname = s + 1; *dname && *dname == DIR_SEPARATOR; ++dname) @@ -3321,15 +3317,16 @@ write_classfile (clas) if (class_file_name != NULL) { - FILE* stream = fopen (class_file_name, "wb"); + FILE *stream = fopen (class_file_name, "wb"); if (stream == NULL) - fatal ("failed to open `%s' for writing", class_file_name); + fatal_io_error ("can't to open %s", class_file_name); + jcf_dependency_add_target (class_file_name); init_jcf_state (state, work); chunks = generate_classfile (clas, state); write_chunks (stream, chunks); if (fclose (stream)) - fatal ("failed to close after writing `%s'", class_file_name); + fatal_io_error ("can't close %s", class_file_name); free (class_file_name); } release_jcf_state (state); |