aboutsummaryrefslogtreecommitdiff
path: root/gcc/java/parse.h
AgeCommit message (Collapse)AuthorFilesLines
2015-01-05Update copyright years.Jakub Jelinek1-1/+1
From-SVN: r219188
2014-01-02Update copyright years in gcc/Richard Sandiford1-1/+1
From-SVN: r206289
2013-01-10Update copyright years in gcc/Richard Sandiford1-2/+1
From-SVN: r195098
2010-09-29optc-gen.awk: Generate global_options initializer instead of individual ↵Joseph Myers1-2/+1
variables. gcc: * optc-gen.awk: Generate global_options initializer instead of individual variables. Add x_ prefix to names of structure members. * opth-gen.awk: Generate gcc_options structure. Add x_ prefix to names of structure members. * doc/tm.texi.in (HARD_FRAME_POINTER_IS_FRAME_POINTER, HARD_FRAME_POINTER_IS_ARG_POINTER): Document. * doc/tm.texi: Regenerate. * alias.c: Use HARD_FRAME_POINTER_IS_FRAME_POINTER * builtins.c: Use HARD_FRAME_POINTER_IS_ARG_POINTER. * c-parser.c (disable_extension_diagnostics, restore_extension_diagnostics): Update names of cpp_options members. * combine.c: Use HARD_FRAME_POINTER_IS_FRAME_POINTER * common.opt (fcompare-debug-second): Don't use Var. * config/alpha/alpha.h (target_flags): Remove. * config/arm/arm.h (HARD_FRAME_POINTER_IS_FRAME_POINTER, HARD_FRAME_POINTER_IS_ARG_POINTER): Define. * config/bfin/bfin.h (target_flags): Remove. * config/cris/cris.h (target_flags): Remove. * config/i386/i386-c.c (ix86_pragma_target_parse): Update names of cl_target_option members. * config/i386/i386.c (ix86_force_align_arg_pointer): Remove. (ix86_function_specific_print, ix86_valid_target_attribute_tree, ix86_can_inline_p): Update names of cl_target_option members. * config/i386/i386.h (ix86_isa_flags): Remove. * config/lm32/lm32.h (target_flags): Remove. * config/mcore/mcore.h (mcore_stack_increment): Remove. * config/mcore/mcore.md (addsi3): Remove extern declaration of flag_omit_frame_pointer. * config/mep/mep.h (target_flags): Remove. * config/mips/mips.h (HARD_FRAME_POINTER_IS_FRAME_POINTER, HARD_FRAME_POINTER_IS_ARG_POINTER): Define. * config/mmix/mmix.h (target_flags): Remove. * config/rs6000/rs6000.h (rs6000_xilinx_fpu, flag_pic, flag_expensive_optimizations): Remove. * config/s390/s390.h (flag_pic): Remove. * config/score/score-conv.h (target_flags): Remove. * config/sh/sh.h (sh_fixed_range_str): Remove. * config/spu/spu.h (target_flags, spu_fixed_range_string): Remove. * dbxout.c: Use HARD_FRAME_POINTER_IS_ARG_POINTER * df-scan.c: Use HARD_FRAME_POINTER_IS_FRAME_POINTER. * diagnostic.c (diagnostic_initialize): Update names of diagnostic_context members. * diagnostic.h (diagnostic_context): Rename inhibit_warnings and warn_system_headers. (diagnostic_report_warnings_p): Update for new names. * dwarf2out.c: Use HARD_FRAME_POINTER_IS_ARG_POINTER * emit-rtl.c: Use HARD_FRAME_POINTER_IS_FRAME_POINTER and HARD_FRAME_POINTER_IS_ARG_POINTER. * flags.h (flag_compare_debug): Declare. * ira.c: Use HARD_FRAME_POINTER_IS_FRAME_POINTER * opts.c (flag_compare_debug): Define. (common_handle_option): Update names of diagnostic_context members. Handle -fcompare-debug-second. (fast_math_flags_struct_set_p): Update names of cl_optimization members. * reginfo.c: Use HARD_FRAME_POINTER_IS_FRAME_POINTER. * regrename.c: Use HARD_FRAME_POINTER_IS_FRAME_POINTER. * reload.c: Use HARD_FRAME_POINTER_IS_FRAME_POINTER. * reload1.c: Use HARD_FRAME_POINTER_IS_FRAME_POINTER. * resource.c: Use HARD_FRAME_POINTER_IS_FRAME_POINTER. * rtl.h (HARD_FRAME_POINTER_IS_FRAME_POINTER, HARD_FRAME_POINTER_IS_ARG_POINTER): Define and use. * sel-sched.c: Use HARD_FRAME_POINTER_IS_FRAME_POINTER * stmt.c: Use HARD_FRAME_POINTER_IS_ARG_POINTER. gcc/c-family: * c-common.c (c_cpp_error): Update names of diagnostic_context members. * c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Update names of cl_optimization members. * c-opts.c (warning_as_error_callback, c_common_handle_option, sanitize_cpp_opts, finish_options): Update names of cpp_options members. gcc/fortran: * cpp.c (cpp_define_builtins): Update names of gfc_option_t members. (gfc_cpp_post_options): Update names of cpp_options members. (cb_cpp_error): Update names of diagnostic_context members. * f95-lang.c (gfc_init_builtin_functions): Update names of gfc_option_t members. * gfortran.h (gfc_option_t): Rename warn_conversion and flag_openmp. * intrinsic.c (gfc_convert_type_warn): Update names of gfc_option_t members. * options.c (gfc_init_options, gfc_post_options, set_Wall, gfc_handle_option): Update names of gfc_option_t members. * parse.c (next_free, next_fixed): Update names of gfc_option_t members. * scanner.c (pedantic): Remove extern declaration. (skip_free_comments, skip_fixed_comments, include_line): Update names of gfc_option_t members. * trans-decl.c (gfc_generate_function_code): Update names of gfc_option_t members. gcc/java: * java-tree.h (flag_filelist_file, flag_assert, flag_jni, flag_force_classes_archive_check, flag_redundant, flag_newer, flag_use_divide_subroutine, flag_use_atomic_builtins, flag_use_boehm_gc, flag_hash_synchronization, flag_check_references, flag_optimize_sci, flag_indirect_classes, flag_indirect_dispatch, flag_store_check, flag_reduced_reflection): Remove. * jcf-dump.c (flag_newer): Remove. * jcf.h (quiet_flag): Remove. * parse.h (quiet_flag): Remove. libcpp: * include/cpplib.h (cpp_options): Rename warn_deprecated, warn_traditional, warn_long_long and pedantic. * directives.c (directive_diagnostics, _cpp_handle_directive): Update names of cpp_options members. * expr.c (cpp_classify_number, eval_token): Update names of cpp_options members. * init.c (cpp_create_reader, post_options): Update names of cpp_options members. * internal.h (CPP_PEDANTIC, CPP_WTRADITIONAL): Update names of cpp_options members. * macro.c (parse_params): Update names of cpp_options members. From-SVN: r164723
2007-07-31java-gimplify.c: Change copyright header to refer to version 3 of the GNU ↵Nick Clifton1-4/+3
General Public... * java-gimplify.c: Change copyright header to refer to version 3 of the GNU General Public License and to point readers at the COPYING3 file and the FSF's license web page. * typeck.c, lang-specs.h, mangle_name.c, jcf-dump.c, class.c, decl.c, config-lang.in, jcf-parse.c, constants.c, Make-lang.in, resource.c, except.c, builtins.c, jvspec.c, java-tree.def, javaop.def, jcf-path.c, verify-glue.c, jcf-depend.c, lang.opt, jcf-reader.c, mangle.c, zextract.c, jcf-io.c, jcf.h, zipfile.h, verify.h, java-except.h, win32-host.c, expr.c, jvgenmain.c, parse.h, lang.c, java-tree.h, javaop.h, boehm.c: Likewise. From-SVN: r127098
2007-01-09Merged gcj-eclipse branch to trunk.Tom Tromey1-897/+2
From-SVN: r120621
2006-02-04decl.c (java_init_decl_processing): Create char_type_node as a regular ↵Roger Sayle1-2/+1
INTEGER_TYPE node. * decl.c (java_init_decl_processing): Create char_type_node as a regular INTEGER_TYPE node. (push_promoted_type): Preserve TYPE_STRING_FLAG on types. * typeck.c (convert): No longer check for CHAR_TYPEs but instead test for char_type_node and promoted_char_type_node as special instances of INTEGER_TYPE tree codes. (promote_type,build_java_signature): Likewise. * jcf-write.c (adjust_typed_op): Likewise. * mangle.c (mangle_type): Likewise. * parse.y (do_unary_numeric_promotion): No longer handle CHAR_TYPE. * parse.h (JINTEGRAL_TYPE_P): Likewise. From-SVN: r110592
2005-09-06check-init.c, [...]: Fix comment typos.Kazu Hirata1-1/+1
* check-init.c, decl.c, expr.c, gcj.texi, java-tree.h, jcf-parse.c, jcf.h, parse.h, parse.y, typeck.c: Fix comment typos. Follow spelling conventions. From-SVN: r103927
2005-06-25Update FSF address.Kelley Cook1-2/+2
From-SVN: r101309
2005-06-09gjavah.c (error): Add ATTRIBUTE_PRINTF_1.Kaveh R. Ghazi1-0/+4
* gjavah.c (error): Add ATTRIBUTE_PRINTF_1. * java-tree.h (parse_error_context): Move... * parse.h (parse_error_context): ... here, add ATTRIBUTE_GCC_DIAG. * parse.y (parse_warning_context): Add ATTRIBUTE_GCC_DIAG. * verify-impl.c (debug_print): Add ATTRIBUTE_PRINTF_1. From-SVN: r100795
2005-05-10re PR java/21436 (imports not remembered for previously compiled files)Paolo Bonzini1-1/+2
gcc/java: 2005-05-10 Paolo Bonzini <bonzini@gnu.org> PR java/21436 * class.c (maybe_layout_super_class): Look for imports in this_class. * parse.h (ctxp_for_generation_last): New. (do_resolve_class): Add a parameter. * parse.y (ctxp_for_generation_last): New. (java_pop_parser_context): Add at end of list. (find_in_imports, find_in_imports_on_demand): Look in ctxp if the TYPE_IMPORT_LIST or respectively the TYPE_IMPORT_DEMAND_LIST of the given type are NULL. (do_resolve_class): Look into the imports of the new second parameter. Adjust recursive calls. (resolve_class, resolve_inner_class, find_as_inner_class): Adjust calls to do_resolve_class. (create_class): Set the TYPE_IMPORT_LIST and TYPE_IMPORT_DEMAND_LIST. (java_complete_class): Do not do that here. libjava: 2005-05-10 Paolo Bonzini <bonzini@gnu.org> PR java/21436 * testsuite/libjava.jacks/jacks.xfail: Adjust. From-SVN: r99513
2005-03-06jcf-dump.c, [...]: Update copyright.Kazu Hirata1-1/+1
* jcf-dump.c, jcf-io.c, jcf-reader.c, lang.c, parse.h, typeck.c: Update copyright. From-SVN: r95967
2005-03-06Remove xref code.Ranjit Mathew1-4/+0
* xref.c, xref.h: Remove file. * Make-lang.in (java/xref.o): Remove. * java-tree.h (flag_emit_xref, do_not_fold): Remove declaration. * lang.c (flag_emit_xref): Remove definition. * parse.h (DECL_END_SOURCE_LINE, DECL_INHERITED_SOURCE_LINE): Remove. * typeck.c (convert): Remove use of do_not_fold. * parse.y (do_not_fold): Remove definition. (parser grammar): Remove xref code. (maybe_create_class_interface_decl, create_class): Likewise. (register_fields, method_header, finish_method_declaration): Likewise. (declare_local_variables, source_end_java_method): Likewise. (java_complete_expand_classes): Do not set do_not_fold. (java_complete_expand_method): Remove xref code. (java_expand_classes, resolve_field_access, patch_invoke): Likewise. (java_complete_tree, java_complete_lhs, patch_assignment): Likewise. (patch_binop, build_string_concatenation, patch_array_ref): Likewise. (patch_synchronized_statement, patch_throw_statement): Likewise. (maybe_build_class_init_for_field): Likewise. From-SVN: r95965
2004-10-15parse.y (parse_warning_context): Remove ATTRIBUTE_PRINTF_2 and rename ↵Ranjit Mathew1-7/+7
parameter 'msg' to 'msgid' in function... * parse.y (parse_warning_context): Remove ATTRIBUTE_PRINTF_2 and rename parameter 'msg' to 'msgid' in function declaration. (issue_warning_error_from_context): Likewise. (yyerror): Rename parameter 'msg' to 'msgid'. (all over): Use new quoting style for diagnostics. * check-init.c: Use %<, %> and %q for quoting in diagnostics, if possible, else convert `foo' to 'foo'. * class.c: Likewise. * decl.c: Likewise. * expr.c: Likewise. * jcf-io.c: Likewise. * jcf-parse.c: Likewise. * lang.c: Likewise. * lex.c: Likewise. * parse.h: Likewise. From-SVN: r89110
2004-09-30Simplify lexer. Implement --enable-mapped-location support.Per Bothner1-21/+40
* jcf-parse.c (parse_class_file): Use linemap_line_start. (parse_source_file_1): Pass filename as extra parameter, so we can call linemap_add and set input_location here, rather than in both callers. (read_class): Pass copied filename to parse_source_file_1. Don't initialize wfl_operator - only needed for source compilation. (read_class, jcf_parse): Call linemap_add with LC_LEAVE. * lex.h: Remove a bunch of debugging macros. * lex.h (struct_java_line, struct java_error): Remove types. (JAVA_COLUMN_DELTA): Remove - use java_lexer.next_colums instead. (struct java_lc_s): Remove prev_col field. (struct java_lexer): New fields next_unicode, next_columns, and avail_unicode. New position field, and maybe token_start field. Don't need hit_eof field - use next_unicode == -1 instead. (JAVA_INTEGERAL_RANGE_ERROR): Rename to JAVA_RANGE_ERROR. (JAVA_RANGE_ERROR, JAVA_FLOAT_ANGE_ERROR): Update accordingly. * parse.h: Various changes for USE_MAPPED_LOCATION. (EXPR_WFL_EMIT_LINE_NOTE): XXX (BUILD_EXPR_WFL, EXPR_WFL_ADD_COL): Remove no-longer-used macros. (struct parser_ctxt): New file_start_location field. Remove p_line, c_line fields since we no longer save lines. Remove elc, lineno, and current_jcf fields - no longer used. * parse.y: Updates for USE_MAPPED_LOCATION and new lexer. Don't use EXPR_WFL_ADD_COL since that isn't trivial with source_location and is probably not needed anymore anyway. Use new expr_add_Location function. (SET_EXPR_LOCATION_FROM_TOKEN): New convenience macro. (java_pop_parser_context): Minor cleanup. (java_parser_context_save_global, java_parser_context_restore_global, java_pop_parser_context): Save/restore input_location as a unit. (issue_warning_error_from_context): If USE_MAPPED_LOCATION take a source_location instead of a wfl context node. (check_class_interface_creation): input_filename is not addressable. (create_artificial_method): Calling java_parser_context_save_global and java_parser_context_restore_global is overkill. Instead, temporarily set input_location from class decl. (java_layout_seen_class_methods): Set input_location from method decl. (fix_constructors): Make more robust if no EXPR_WITH_FILE_LOCATION. (finish_loop_body): Likewise. * lex.c: Updates for USE_MAPPED_LOCATION. Use build_unknwon_wfl. (java_sprint_unicode): Take a character, not index in line. (java_sneak_uncode): Replaced by java_peek_unicode. (java_unget_unicode): No longer used. (java_allocate_new_line. java_store_unicode): Removed, since we no longer remember "lines". (java_new_lexer): Update for new data structures. (java_read_char): Move unget_value checking to java_read_unicode. (java_get_unicode, java_peek_unicode, java_next_unicode): New more efficient functions that are used directly when lexing. (java_read_unicode_collapsing_terminators): No longer needed. (java_parse_end_comment, java_parse_escape_sequence, do_java_lex): Re-organize to use java_peek_unicode to avoid java_unget_unicode. (java_parse_escape_sequence): Rewrite to be simpler / more efficient. (do_java_lex): Lots of movings around to avoid java_unget_unicode, combine switch branches, and test for common token kinds earlier. (java_lex_error): Rewrite. * jv-scan.c (expand_location): New function, copied from tree.c. (main): Set ctxp->filename instead of setting input_filename directly. From-SVN: r88367
2004-09-29java-tree.h: Redefine some macros and add soem declaration to handle the ↵Per Bothner1-1/+1
USE_MAPPED_LOCATION... * java-tree.h: Redefine some macros and add soem declaration to handle the USE_MAPPED_LOCATION case. * parse.h (EXPR_WFL_QUALIFICATION): Use operand 1, not 2. * java-tree.h (EXPR_WFL_FILENAME_NODE): Use operand 2, not 1. * java-tree.def (EXPR_WITH_FILE_LOCATION): Only need two operands in USE_MAPPED_LOCATION case, since EXPR_WFL_FILENAME_NODE is gone. From-SVN: r88323
2004-08-19tree.h (TYPE_CACHED_VALUES_P): New.Nathan Sidwell1-2/+2
* tree.h (TYPE_CACHED_VALUES_P): New. (TYPE_CACHED_VALUES): New. (TYPE_ORIG_SIZE_TYPE): Adjust. * tree.def (INTEGER_CST): Update documentation. * tree.c: Inlcude params.h. (build_int_cst): Cache small values. (build_type_copy): Do not copy the value cache. * c-common.c (c_common_nodes_and_builtins): Add comment, remove unneeded zeroing. * c-typeck.c (build_c_cast): Add comment about OVERFLOW setting. * expmed.c (const_mult_add_overflow_p): Clear type copy's value cache. * fold-const.c (force_fit_type): Copy value when setting overflows. (int_const_binop): Likewise. * stor-layout.c: Include params.h (set_sizetype): Create values cache. (fixup_unsigned_type): Set UNSIGNED_P before caching any values. * params.def (PARAM_INTEGER_SHARE_LIMIT): New. * params.h (INTEGER_SHARE_LIMIT): New. * Makefile.in (tree.o, stor-layout.o): Depend on PARAMS_H. * cp/decl.c (finish_enum): Do not copy value node early, copy later. * cp/lex.c (cxx_init): Force null_node to be unique. * java/parse.h (JAVA_RADIX10_FLAG): Rename to ... (JAVA_NOT_RADIX10_FLAG): ... here. Invert meaning. * java/lex.c (do_java_lex): Adjust. (error_if_numeric_overflow): Likewise. From-SVN: r86247
2004-08-01decl.c (update_aliases, [...]): Replace calls to build with calls to buildN.Roger Sayle1-3/+3
* decl.c (update_aliases, initialize_local_variable): Replace calls to build with calls to buildN. * java-gimplify.c (java_gimplify_modify_expr): Likewise. * java-tree.h (BUILD_MONITOR_ENTER, BUILD_MONITOR_EXIT): Likewise. * parse.h (BUILD_THROW): Likewise. * parse.y (switch_expression, synchronized_statement, catch_clause_parameter, array_creation_expression, conditional_expression, make_qualified_name, resolve_qualified_expression_name, patch_method_invocation, patch_invoke, build_method_invocation, build_new_invocation, build_assignment, patch_assignment, build_binop, patch_binop, build_string_concatenation, build_incdec, patch_unaryop, patch_cast, build_array_ref, build_newarray_node, patch_newarray, patch_return, build_if_else_statement, build_labeled_block, build_new_loop, build_loop_body, build_bc_statement, build_assertion, encapsulate_with_try_catch, build_try_statement, build_try_finally_statement, patch_synchronized_statement, emit_test_initialization): Likewise, replace build with buildN. From-SVN: r85410
2004-07-10re PR java/8618 (call to private constructor allowed for anonymous inner class)Bryce McKinlay1-1/+1
2004-07-09 Bryce McKinlay <mckinlay@redhat.com> PR java/8618 * parse.y (create_anonymous_class): Remove 'location' argument. Use the WFL from TYPE_NAME to get line number for the decl. Fix comment. (craft_constructor): Inherit access flags for implicit constructor from the enclosing class. (create_class): Fix comment typo. (resolve_qualified_expression_name): Pass type of qualifier to not_accessible_p, not the type in which target field was found. (not_accessible_p): Handle inner classes. Expand protected qualifier-subtype check to enclosing instances, but don't apply this check to static members. Allow protected access to inner classes of a subtype. Allow private access within common enclosing context. (build_super_invocation): Get WFL line number info from current class decl. (build_incomplete_class_ref): Update for new create_anonymous_class signature. * parse.h (INNER_ENCLOSING_SCOPE_CHECK): Use common_enclosing_instance_p. * class.c (common_enclosing_context_p): New. Determine if types share a common enclosing context, even across static contexts. (common_enclosing_instance_p): Renamed from common_enclosing_context_p. Determines if types share a common non-static enclosing instance. * java-tree.h (common_enclosing_instance_p): Declare. * jcf-write.c (get_method_access_flags): New. Surpress private flag for inner class constructors. (generate_classfile): Use get_method_access_flags. From-SVN: r84443
2004-06-21tree-alias-common.h (struct tree_alias_ops): Change ip and ip_partial to ↵Joseph Myers1-1/+1
unsigned int. * tree-alias-common.h (struct tree_alias_ops): Change ip and ip_partial to unsigned int. fortran: * trans.h (stmtblock_t): Change has_scope to unsigned int. java: * jcf.h (struct JCF): Change java_source, right_zip and finished to unsigned int. * lex.h (struct java_lexer): Change hit_eof, read_anything, byte_swap and use_fallback to unsigned int. * parse.h (struct _jdep): Change flag0 to unsigned int. From-SVN: r83430
2004-03-30gengtype.c (create_option): New function.Zack Weinberg1-5/+5
* gengtype.c (create_option): New function. * gengtype.h: Prototype it. * gengtype-yacc.y (stringseq): New rule. (option): Use create_option. Add new bare ID production. Use stringseq, not STRING directly. * alias.c, bitmap.c, c-decl.c, cgraph.h, cpplib.h, cselib.h * dwarf2out.c, emit-rtl.c, function.h, lists.c, tree.h * varray.h, config/alpha/alpha.c, cp/name-lookup.c, cp/parser.c * f/com.c, java/builtins.c, java/expr.c, java/jcf.h, java/parse.h: Use new shorter form of GTY markers. * doc/gty.texi: Rewrite. From-SVN: r80091
2004-02-27bb-reorder.c, [...]: Update copyright.Kazu Hirata1-1/+1
gcc/ * bb-reorder.c, cfgbuild.c, diagnostic.c, explow.c, profile.c, ra-build.c, read-rtl.c, tracer.c, unwind-dw2-fde-glibc.c, value-prof.c, config/darwin-protos.h, config/frv/frv-abi.h, config/i386/pmmintrin.h, config/pa/pa-hpux.h: Update copyright. gcc/java/ * java/parse.h: Update copyright. From-SVN: r78566
2004-02-25Improve some comments.Per Bothner1-1/+1
From-SVN: r78486
2003-10-09stmt.c (resolve_asm_operand_names): Call check_unique_operand_names here.Jason Merrill1-1/+1
* stmt.c (resolve_asm_operand_names): Call check_unique_operand_names here. (expand_asm_operands): Not here. (parse_input_constraint): No longer static. * tree.h: Declare it. * coverage.c (build_ctr_info_value): Use build_decl to make a VAR_DECL. (create_coverage): Likewise. java/ * parse.y (patch_assignment): Use make_node to create a BLOCK. * parse.h (BUILD_PTR_FROM_NAME): Use make_node to create a POINTER_TYPE. cp/ * tree.c (build_cplus_new): Use build_decl to create a VAR_DECL. (build_target_expr_with_type): Likewise. * pt.c (instantiate_class_template): Sanity check that our enclosing class has been instantiated. From-SVN: r72255
2003-09-03decl.c (java_expand_body): New function.Jeff Sturm1-0/+1
* decl.c (java_expand_body): New function. * expr.c (build_class_init): Set DECL_IGNORED_P. * java-tree.h (start_complete_expand_method, java_expand_body): Declare. * jcf-parse.c (cgraph.h): Include. (java_parse_file): Handle flag_unit_at_a_time. * lang.c (LANG_HOOKS_TREE_INLINING_START_INLINING, LANG_HOOKS_CALLGRAPH_EXPAND_FUNCTION): Define. (java_estimate_num_insns): Use walk_tree_without_duplicates. (java_start_inlining): New function. * parse.h (java_finish_classes): Declare. * parse.y: Include cgraph.h. (block): Don't special-case empty block production. (craft_constructor): Set DECL_INLINE. (source_end_java_method): Handle flag_unit_at_a_time. Replace inline code with call to java_expand_body. (start_complete_expand_method): Remove static modifier. (java_expand_method_bodies): Patch function tree for class initialization and/or synchronization as needed. Don't begin RTL expansion yet. (java_expand_classes): Check flag_unit_at_a_time before calling finish_class. (java_finish_classes): New function. (java_complete_lhs): Ensure COMPOUND_EXPR has non-NULL type. (patch_assignment): Set DECL_CONTEXT on temporary variable. (emit_test_initialization): Set DECL_IGNORED_P. From-SVN: r71024
2003-06-09tree-inline.c (expand_call_inline): DECL_SOURCE_LINE_FIRST is removed.Nathan Sidwell1-8/+0
* tree-inline.c (expand_call_inline): DECL_SOURCE_LINE_FIRST is removed. * java/java-tree.h (DECL_FUNCTION_LAST_LINE): New. (struct lang_decl_func): Add last_line field. * java/parse.h (DECL_SOURCE_LINE_MERGE, DECL_SOURCE_LINE_FIRST, DECL_SOURCE_LINE_LAST): Remove. * java/parse.y (missing_return_error, finish_method_declaration, lookup_cl, start_artificial_method_body, source_end_java_method, start_complete_expand_method): Adjust. From-SVN: r67661
2003-05-01input.h (lineno): Rename to ...Nathan Sidwell1-1/+1
* input.h (lineno): Rename to ... (input_line): ... here. * tree.h (lineno): Rename to ... (input_line): ... here. * scan.h (lineno): Rename to ... (input_line): ... here. * toplev.c (lineno): Rename to ... (input_line): ... here. (push_srcloc, pop_srcloc): Rename lineno to input_line. * c-common.c (c_expand_start_cond, fname_decl): Likewise. * c-decl.c (poplevel, pop_label_level, lookup_label, lookup_tag, store_parm_decls, c_expand_body_1): Likewise. * c-errors.c (pedwarn_c99): Likewise. * c-format.c (status_warning): Likewise. * c-lex.c (fe_file_change, cb_def_pragma, c_lex): Likewise. * c-opts.c (c_common_post_options, c_common_parse_file): Likewise. * c-parse.in (save_filename, maybe_type_qual, ifc): Likwise. * c-semantics.c (finish_stmt_tree, build_stmt, emit_local_var, gentrtl_goto_stmt, genrtl_expr_stmt_value, genrtl_decl_stmt, genrtl_if_stmt, genrtl_while_stmt, genrtl_do_stmt, genrtl_return_stmt, genrtl_for_stmt, build_break_stmt, build_continue_stmt, genrtl_switch_stmt, genrtl_asm_stmt, prep_stmt, find_reachable_label, expand_unreachable_stmt): Likewise. * coverage.c (create_coverage): Likewise. * diagnostic.c (pedwarn, sorry, error, fatal_error, internal_error, warning, diagnostic_report_current_module, inform): Likewise. * expr.c (expand_expr): Likewise. * integrate.c (expand_inline_function, output_inline_function): Likewise. * rtl-error.c (file_and_line_for_asm): Likewise. * tree-inline.c (find_alloca_call, find_builtin_longjmp_call, walk_tree): Likewise. * tree.c (make_node): Likewise. * ada, cp, f, java, objc, treelang: Likewise. ada * trans.c (build_unit_elab, set_lineno): Rename lineno to input_line. * utils.c (pushdecl, create_label_decl, begin_subprog_body, end_subprog_body): Likewise. * utils2.c (build_call_raise): Likewise. cp * class.c (finish_struct): Rename lineno to input_line. * decl.c (push_binding_level, pop_binding_level, suspend_binding_level, resume_binding_level, make_label_decl, use_label, start_function): Likewise. * decl2.c (warn_if_unknown_interface, start_static_initialization_or_destruction, generate_ctor_or_dtor_function, finish_file): Likewise. * error.c (cp_line_of, print_instantiation_full_context, print_instantiation_context): Likewise. * except.c (check_handlers_1, check_handlers): Likewise. * init.c (create_temporary_var): Likewise. * method.c (use_thunk, synthesize_method): Likewise. * parser.c (cp_lexer_set_source_position_from_token, cp_lexer_get_preprocessor_token): Likewise. * pt.c (push_tinst_level, pop_tinst_level, tsubst_friend_function, instantiate_class_template, tsubst_decl, tsubst, tsubst_expr, instantiate_decl): Likewise. * semantics.c (genrtl_try_block, finish_label_stmt, begin_class_definition, expand_body, genrtl_finish_function): Likewise. * tree.c (build_min_nt, build_min): Likewise. f * ansify.c (die_unless): Rename lineno to input_line. * com.c (ffecom_subscript_check_, ffecom_do_entry_, ffecom_gen_sfuncdef_, ffecom_start_progunit_, ffecom_sym_transform_, ffecom_sym_transform_assign_, bison_rule_pushlevel_, bison_rule_compstmt_, finish_function, store_parm_decls): Likewise. * intrin.c (ffeintrin_fulfill_generic): Likewise. * lex.c (ffelex_hash_, ffelex_include_, ffelex_next_line_, ffelex_file_fixed, ffelex_file_free): Likewise. * std.c (ffestd_exec_end): Likewise. * ste.c (ffeste_emit_line_note_, ffeste_start_block_, ffeste_start_stmt_): Likewise. * ste.h (ffeste_filelinenum, ffeste_set_line): Likewise. java * lex.h (lineno): Rename to ... (input_line): ... here * parse-scan.y (lineno): Rename to ... (input_line): ... here. (reset_report): Rename lineno to input_line. * check-init.c (check_init): Likewise. * class.c (push_class): Likewise. * decl.c (complete_start_java_method, end_java_method): Likewise. * expr.c (expand_byte_code): Likewise. * jcf-parse.c (give_name_to_class, parse_class_file): Likewise. * jcf-write.c (generate_bytecode_insns): Likewise. * lex.c (java_init_lex, java_allocate_new_line, do_java_lex): Likewise. * parse.h (YYNOT_TWICE): Likewise. * parse.y (empty_statement, expression_statement, java_pop_parser_context, java_parser_context_save_global, yyerror, register_fields, method_header, safe_layout_class, find_in_imports_on_demand, create_artificial_method, source_end_java_method, start_complete_expand_method, build_thisn_assign, java_complete_lhs, maybe_absorb_scoping_block): Likewise. objc * objc-act.c (objc_init): Rename lineno to input_line. (build_module_descriptor, build_selector_translation_table, build_protocol_template, build_method_prototype_list_template, build_category_template, build_selector_table, build_class_template, build_super_template, build_ivar_template, build_ivar_list_template, build_method_list_template, build_method_template, add_instance_variable): Likewise. treelang * tree1.c (treelang_init): Rename lineno to input_line. From-SVN: r66333
2003-02-24lang-options.h: Added -Wdeprecated.Tom Tromey1-0/+8
* lang-options.h: Added -Wdeprecated. * gcj.texi (Warnings): Document -Wdeprecated. * java-tree.h (flag_deprecated): Declare. * lang.c (lang_W_options): Added deprecated. (flag_deprecated): New global. * chartables.h: Rebuilt. * gen-table.pl (process_one): Look at whitespace. (print_tables): Define LETTER_SPACE, LETTER_MASK. * parse.h (CLEAR_DEPRECATED): New macro. (CHECK_DEPRECATED_NO_RESET): New macro. * jcf-parse.c (handle_deprecated): New function. (HANDLE_DEPRECATED_ATTRIBUTE): New define. * jcf-reader.c (get_attribute): Handle Deprecated attribute. * parse.y (resolve_type_during_patch): Check deprecation. (jdep_resolve_class): Likewise. (process_imports): Likewise. (resolve_expression_name): Likewise. (check_deprecation): Strip arrays from decl. Check flag_deprecated. (patch_method_invocation): Also check the particular constructor for deprecation. (register_fields): Use CHECK_DEPRECATED_NO_RESET in loop. * jcf-write.c (append_deprecated_attribute): New function. (generate_classfile): Generate deprecated attribute when appropriate. * lex.c (java_parse_doc_section): Return type now void. Rewrote. (java_lex) [case '*']: Simplify logic. (java_start_char_p): Use LETTER_MASK. (java_part_char_p): Likewise. (java_space_char_p): New function. From-SVN: r63350
2003-01-10Merge from pch-branch.Geoffrey Keating1-19/+14
From-SVN: r61136
2003-01-09* All Files: Remove PARAMS macro.Kaveh R. Ghazi1-21/+21
From-SVN: r61133
2003-01-01Make-lang.in, [...]: Replace "GNU CC" with "GCC" in the copyright header.Steven Bosscher1-5/+6
* Make-lang.in, boehm.c, buffer.c, buffer.h, builtins.c, class.c, config-lang.in, constants.c, convert.h, decl.c, except.c, expr.c, java-except.h, java-tree.h, javaop.def, jcf-parse.c, jcf-write.c, jv-scan.c, jvgenmain.c, jvspec.c, keyword.gperf, keyword.h, lang-options.h, lang-specs.h, lang.c, lex.c, lex.h, mangle.c, mangle_name.c, parse-scan.y, parse.h, parse.y, typeck.c, verify.c, xref.c, xref.h: Replace "GNU CC" with "GCC" in the copyright header. * check-init.c, gjavah.c, javaop.h, jcf-depend.c, jcf-dump.c, jcf-io.c, jcf-path.c, jcf-reader.c, jcf.h, zextract.c, zipfile.h: These files are "part of GCC". Also say "GCC" not "GNU CC". From-SVN: r60747
2002-08-04Index: ChangeLogGeoffrey Keating1-1/+0
2002-08-04 Geoffrey Keating <geoffk@redhat.com> * Makefile.in (sdbout.o): Doesn't need $(OBSTACK_H). * collect2.h (permanent_obstack): Delete declaration. * collect2.c (permanent_obstack): Delete definition. (main): Don't initialise permanent_obstack. Use xstrdup instead. * expr.c: Don't include obstack.h. (permanent_obstack): Delete declaration. * function.c: Don't include obstack.h. (permanent_obstack): Delete declaration. * integrate.c: Don't include obstack.h. (function_maybepermanent_obstack): Delete declaration. * print-tree.c (debug_tree): Use x*alloc not permalloc. * sdbout.c (gen_fake_label): Use x*alloc not permalloc. * tlink.c (pfgets): Use xstrdup not permanent_obstack. * toplev.c (lang_independent_init): Rename init_obstacks to init_ttree. * tree.h: Rename init_obstacks to init_ttree. Remove declarations of permalloc, expralloc, perm_calloc. * tree.c (permanent_obstack): Delete definition. (init_ttree): Rename from init_obstacks. (permalloc): Delete. (perm_calloc): Delete. (dump_tree_statistics): Don't print information about permanent_obstack. * varasm.c (assemble_start_function): Use xstrdup instead of permalloc/strcpy. (assemble_variable): Likewise. * config/alpha/alpha.c (unicosmk_need_dex): Use xmalloc instead of permalloc. (unicosmk_add_extern): Likewise. * config/c4x/c4x.c (c4x_external_ref): Likewise. (c4x_global_label): Likewise. * config/frv/frv.c (frv_encode_section_info): Likewise. * config/i386/winnt.c (i386_pe_record_external_function): Likewise. (i386_pe_record_exported_symbol): Likewise. * config/mips/mips.c (mips_output_external): Likewise. (mips_output_external_libcall): Likewise. * config/pa/pa.c: (permanent_obstack): Delete declaration. (output_call): Use ggc_strdup instead of allocating on permanent_obstack. * config/romp/romp.c: Include ggc.h. (get_symref): Don't declare permanent_obstack, use ggc_strdup intead of permanent_obstack. * config/rs6000/aix31.h (ASM_OUTPUT_EXTERNAL): Use concat instead of permalloc. * config/rs6000/rs6000.c (rs6000_gen_section_name): Use xmalloc instead of permalloc * config/rs6000/xcoff.h (ASM_OUTPUT_EXTERNAL): Use concat instead of permalloc. * config/vax/vax.c (vms_check_external): Use xmalloc instead of permalloc. Index: cp/ChangeLog 2002-08-04 Geoffrey Keating <geoffk@redhat.com> * cvt.c (ocp_convert): Delete obsolete code. * parse.y (permanent_obstack): Delete declaration. * pt.c (permanent_obstack): Delete declaration. * repo.c (permanent_obstack): Delete declaration. (open_repo_file): Use xmalloc instead of permanent_obstack. (init_repo): Use xstrdup instead of permanent_obstack. Index: java/ChangeLog 2002-08-04 Geoffrey Keating <geoffk@redhat.com> * class.c: (permanent_obstack): Delete declaration. * constants.c: (permanent_obstack): Delete declaration. * except.c: (permanent_obstack): Delete declaration. * expr.c: (permanent_obstack): Delete declaration. * jcf-parse.c: (permanent_obstack): Delete declaration. (saveable_obstack): Delete declaration. * parse.h: (permanent_obstack): Delete declaration. * typeck.c: (permanent_obstack): Delete declaration. From-SVN: r56035
2002-04-17re PR java/6294 (private inner interface is flagged illegal)Bryce McKinlay1-1/+2
Fix for PR java/6294: * parse.h (INNER_INTERFACE_MODIFIERS): Allow ACC_PRIVATE for inner interfaces. From-SVN: r52411
2002-03-26re PR java/5942 (tree check failure when compiling Classpath with strictfp ↵Tom Tromey1-1/+1
StrictMath class) Fix for PR java/5942: * parse.y (init_src_parse): Added sanity check. * parse.h (struct parser_ctxt) [modifier_ctx]: Array has 12 elements, not 11. From-SVN: r51398
2002-02-18java-tree.h (TYPE_STRICTFP): New macro.Tom Tromey1-4/+5
* java-tree.h (TYPE_STRICTFP): New macro. (struct lang_type) [strictfp]: New field. (CLASS_STRICTFP): New macro. (METHOD_STRICTFP): New macro. (struct lang_decl) [strictfp]: New field. * parse.y (method_header): Disallow strictfp constructor or abstract method. (STRICT_TK): Move before MODIFIER_TK. * parse.h (CLASS_MODIFIERS): Added ACC_STRICT. (METHOD_MODIFIERS): Likewise. (INTERFACE_MODIFIERS): Likewise. * jcf-write.c (get_access_flags): Likewise. * class.c (set_class_decl_access_flags): Recognize ACC_STRICT. (add_method_1): Likewise. (get_access_flags_from_decl): Likewise. * jcf-dump.c (print_access_flags): Print in standard order. Also, recognize strictfp flag. * jcf.h (ACC_STRICT): New define. From-SVN: r49834
2001-12-16ChangeLog, [...]: Fix spelling errors.Joseph Myers1-1/+1
* ChangeLog, Make-lang.in, class.c, expr.c, gcj.texi, java-tree.h, jcf-parse.c, jcf-write.c, lex.c, parse.h, parse.y, verify.c: Fix spelling errors. From-SVN: r48075
2001-11-20parse.h (java_expand_switch): Remove old prototype.Roger Sayle1-1/+0
2001-11-18 Roger Sayle <roger@eyesopen.com> * parse.h (java_expand_switch): Remove old prototype. From-SVN: r47221
2001-11-08parse.y (trap_overflow_corner_case): New rule.Tom Tromey1-2/+5
* parse.y (trap_overflow_corner_case): New rule. (unary_expression): Use it. * lex.c (java_init_lex): Don't set minus_seen. (yylex): Don't use minus_seen. Communicate overflow to parser for it to handle. (error_if_numeric_overflow): New function. * parse.h (minus_seen): Removed field. (JAVA_RADIX10_FLAG): New define. From-SVN: r46846
2001-10-25mangle.c (static tree compression_table): Fixed leading comment.Alexandre Petit-Bianco1-1/+1
2001-10-24 Alexandre Petit-Bianco <apbianco@redhat.com> * mangle.c (static tree compression_table): Fixed leading comment. * parse.h (struct parser_ctxt): Fixed field comment. * parse.y (check_pkg_class_access): New prototype, fixed leading comment, new parameter used to emit error only if passed as true. (parse_check_super): Pass extra argument to check_pkg_class_access. (do_resolve_class): Likewise. (process_imports): Likewise. (read_import_dir): Fixed indentation. (find_in_imports_on_demand): New local class_type_name. Local node_to_use deleted. while loop changed into for loop. Report multiple definition only for accessible classes. Improved error message. (start_complete_expand_method): Local `ptr' removed. DECL_ARGUMENTS assigned to parameter list, fixed indentation. while loop changed into for loop, restore TREE_CHAIN on local `tem' before the next iteration. ( http://gcc.gnu.org/ml/gcc-patches/2001-10/msg01323.html ) From-SVN: r46498
2001-09-21parse.h: (WFL_STRIP_BRACKET): Re-written using build_type_name_from_array_name.Alexandre Petit-Bianco1-18/+28
2001-09-19 Alexandre Petit-Bianco <apbianco@redhat.com> * parse.h: (WFL_STRIP_BRACKET): Re-written using build_type_name_from_array_name. (STRING_STRIP_BRACKETS): New macro. * parse.y (build_type_name_from_array_name): New function. (array_creation_expression:): Accumulate []s instead of [s. (cast_expression:): Accumulate []s instead of [s after cast type name. (build_array_from_name): Local string deleted, use build_type_name_from_array_name. (build_unresolved_array_type): Accumulate []s instead of [s after type name. (register_fields): Fixed comment. (resolve_class): Local name, base deleted, new locals tname and array_dims. Use build_type_name_from_array_name. Use array_dims to build array type. (purify_type_name): Use STRING_STRIP_BRACKETS. ( http://gcc.gnu.org/ml/gcc-patches/2001-09/msg00779.html ) From-SVN: r45732
2001-09-11* parse.h (ctxp_for_generation): Mark extern.Richard Henderson1-1/+1
From-SVN: r45552
2001-07-31[multiple changes]Alexandre Petit-Bianco1-1/+1
2001-07-18 Alexandre Petit-Bianco <apbianco@redhat.com> * parse.y (create_interface): Avoid cyclic inheritance report when syntax error encountered during class definition. Fixes PR java/2956 2001-07-17 Alexandre Petit-Bianco <apbianco@redhat.com> * parse.h (INTERFACE_INNER_MODIFIERS): Disallow `private.' * parse.y (check_class_interface_creation): Allow `private' if the enclosing is not an interface. (create_interface): Interface tagged public if the enclosing context is an interface. (create_class): Class tagged public if the enclosing context is an interface. Fixes PR java/2959 2001-07-17 Alexandre Petit-Bianco <apbianco@redhat.com> * class.c (push_class): Set DECL_SIZE to `integer_zero_node.' Fixes PR java/2665 2001-07-13 Alexandre Petit-Bianco <apbianco@redhat.com> * parse.y (java_complete_lsh): Set CAN_COMPLETE_NORMALLY and unset TREE_CONSTANT_OVERFLOW of CASE_EXPR value. Fixes PR java/3602 (http://gcc.gnu.org/ml/gcc-patches/2001-07/msg02297.html ) From-SVN: r44524
2001-07-11[multiple changes]Alexandre Petit-Bianco1-2/+5
2001-07-10 Alexandre Petit-Bianco <apbianco@redhat.com> * lang-specs.h: Forbit the use if `-femit-class-file{s}' without `-fsyntax-only.' Fixes PR java/3248 2001-07-10 Alexandre Petit-Bianco <apbianco@redhat.com> * jcf-io.c (find_class): Clarified error message. Fixes PR java/2603 2001-07-10 Alexandre Petit-Bianco <apbianco@redhat.com> * parse.h (INNER_ENCLOSING_SCOPE_CHECK): No `this' is fine if the current function is static. Fixes PR java/1970 2001-07-09 Alexandre Petit-Bianco <apbianco@redhat.com> * parse.y (patch_method_invocation): Add enclosing context to ctor calls if necessary. Fixes PR java/2953 2001-07-09 Alexandre Petit-Bianco <apbianco@redhat.com> * parse.y (resolve_package): Abort if qualified expression member isn't right. (qualify_ambiguous_name): Don't qualify as type if `this' in use. Fixes PR java/1391 (http://gcc.gnu.org/ml/gcc-patches/2001-07/msg00701.html ) From-SVN: r43927
2001-05-25Standardize header guards.Richard Henderson1-3/+4
From-SVN: r42615
2001-05-01* parse.h (REGISTER_IMPORT): Use tree_cons instead of chainon.Per Bothner1-2/+1
From-SVN: r41741
2001-03-28IA-64 ABI Exception Handling.Richard Henderson1-8/+0
From-SVN: r40924
2001-03-28java-tree.h (throw_node): Define as a single member of java_global_trees ↵Richard Henderson1-7/+7
instead of a separate array. * java-tree.h (throw_node): Define as a single member of java_global_trees instead of a separate array. (JTI_THROW_NODE): New. * decl.c (throw_node): Don't declare. (init_decl_processing): Init a scalar throw_node. Don't register it for gc. * check-init.c (check_init): Reference scalar throw_node. * expr.c (build_java_athrow): Likewise. * jcf-write.c (generate_bytecode_insns): Likewise. * parse.h (BUILD_THROW): Likewise. From-SVN: r40922
2001-03-27Make -fsjlj-exceptions a configure option.Richard Henderson1-1/+1
From-SVN: r40905
2001-03-27c-common.h (DECL_NUM_STMTS): New macro.Mark Mitchell1-1/+1
* c-common.h (DECL_NUM_STMTS): New macro. * c-decl.c (duplicate_decls): Copy DECL_NUM_STMTS, not DECL_FRAME_SIZE. (pushdecl): Likewise. * c-semantics.c (add_stmt): Update DECL_NUM_STMTS. * integrate.c (expand_inline_function): Don't check DECL_FRAME_SIZE. * print-tree.c (print_node): Don't print it. * toplev.c (rest_of_compilation): Don't try to inline when flag_no_inline is on. * tree.h (DECL_FRAME_SIZE): Remove. (tree_decl): Adjust accordingly. * Makefile.in (optimize.o): Depend on params.h. (duplicate_decls): Copy DECL_NUM_STMTS, not DECL_FRAME_SIZE. (init_decl_processing): Set flag_no_inline when doing inlining-on-trees. * optimize.c: Include params.h. (struct inline_data): Improve documentation of FNS. Add FIRST_INLINED_FN, INLINED_STMTS, and CLONING_P. (INSNS_PER_STMT): New macro. (remap_block): Use CLONING_P. (inlinable_function_p): Don't inline big functions. (expand_call_inline): Keep track of how much inlining we've done. (optimize_function): Set FIRST_INLINED_FN. (maybe_clone_body): Set CLONING_P. * semantics.c (simplify_aggr_init_exprs_r): Fix typing problems in tree nodes. (genrtl_finish_function): Clear DECL_DEFER_OUTPUT before calling rest_of_compilation. Clear DECL_RTL for local variables afterwards. (clear_decl_rtl): New function. * com.c (duplicate_decls): Don't copy DECL_FRAME_SIZE. * parse.h (DECL_END_SOURCE_LINE): Don't rely on DECL_FRAME_SIZE. From-SVN: r40859
2001-03-17parse.h (JDEP_SOLV): Removed.Per Bothner1-1/+0
* parse.h (JDEP_SOLV): Removed. * parse.y (incomplete_class_list): Removed. (register_incomplete_type): Use JDEP_TO_RESOLVE instead of JDEP_SOLV. * parse.y (obtain_incomplete_type): Removed. It doesn't work if resolve_class changes the name of an array type that is on the list and then someone else looks for the modified name. Also, seems liable to break when compiling multiple source files at once. So the simplest is to just remove incomplete_class_list - it is only a minor space win and it is not even clear it saves time. * parse.y (resolve_class): Remove unneeded promote_type. From-SVN: r40584