aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2004-07-20[multiple changes]Arnaud Charlet20-2568/+3254
2004-07-20 Olivier Hainque <hainque@act-europe.fr> * a-elchha.adb (Last_Chance_Handler): Remove the bogus buffer dynamic allocation and potentially overflowing update with Tailored_Exception_Information. Use the sec-stack free procedural interface to output Exception_Information instead. * a-except.adb (To_Stderr): New subprogram for character, and string version moved from a-exextr to be visible from other separate units. (Tailored_Exception_Information): Remove the procedural version, previously used by the default Last_Chance_Handler and not any more. Adjust various comments. * a-exexda.adb: Generalize the exception information procedural interface, to minimize the use of secondary stack and the need for local buffers when the info is to be output to stderr: (Address_Image): Removed. (Append_Info_Character): New subprogram, checking for overflows and outputing to stderr if buffer to fill is of length 0. (Append_Info_String): Output to stderr if buffer to fill is of length 0. (Append_Info_Address, Append_Info_Exception_Name, Append_Info_Exception_Message, Append_Info_Basic_Exception_Information, Append_Info_Basic_Exception_Traceback, Append_Info_Exception_Information): New subprograms. (Append_Info_Nat, Append_Info_NL): Use Append_Info_Character. (Basic_Exception_Info_Maxlength, Basic_Exception_Tback_Maxlength, Exception_Info_Maxlength, Exception_Name_Length, Exception_Message_Length): New subprograms. (Exception_Information): Use Append_Info_Exception_Information. (Tailored_Exception_Information): Use Append_Info_Basic_Exception_Information. Export services for the default Last_Chance_Handler. * a-exextr.adb (To_Stderr): Remove. Now in a-except to be usable by other separate units. 2004-07-20 Vincent Celier <celier@gnat.com> * clean.adb, mlib-utl.adb, osint.adb, makegpr.adb: Minor reformatting. 2004-07-20 Ed Schonberg <schonberg@gnat.com> * freeze.adb (Freeze_Entity): If entity is a discriminated record type, emit itype references for the designated types of component types that are declared outside of the full record declaration, and that may denote a partial view of that record type. 2004-07-20 Ed Schonberg <schonberg@gnat.com> PR ada/15607 * sem_ch3.adb (Build_Discriminated_Subtype): Do not attach a subtype which is the designated type in an access component declaration, to the list of incomplete dependents of the parent type, to avoid elaboration issues with out-of-scope subtypes. (Complete_Private_Subtype): Recompute Has_Unknown_Discriminants from the full view of the parent. 2004-07-20 Ed Schonberg <schonberg@gnat.com> PR ada/15610 * sem_ch8.adb (Find_Expanded_Name): If name is overloaded, reject entities that are hidden, such as references to generic actuals outside an instance. 2004-07-20 Javier Miranda <miranda@gnat.com> * sem_ch4.adb (Try_Object_Operation): New subprogram that gives support to the new notation. (Analyze_Selected_Component): Add call to Try_Object_Operation. 2004-07-20 Jose Ruiz <ruiz@act-europe.fr> * s-taprob.adb: Adding the elaboration code required for initializing the tasking soft links that are common to the full and the restricted run times. * s-tarest.adb (Init_RTS): Tasking soft links that are shared with the restricted run time has been moved to the package System.Soft_Links.Tasking. * s-tasini.adb (Init_RTS): Tasking soft links that are shared with the restricted run time has been moved to the package System.Soft_Links.Tasking. * Makefile.rtl: Add entry for s-solita.o in run-time library list. * s-solita.ads, s-solita.adb: New files. 2004-07-20 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> * trans.c (Identifier_to_gnu, Pragma_to_gnu, Attribute_to_gnu, Case_Statement_to_gnu): Split off from gnat_to_gnu. (Loop_Statement_to_gnu, Subprogram_Body_to_gnu, call_to_gnu, Handled_Sequence_Of_Statements_to_gnu, Exception_Handler_to_gnu_sjlj, Exception_Handler_to_gnu_zcx): Likewise. From-SVN: r84948
2004-07-20c-common.h (check_case_value): Remove prototype.Steven Bosscher14-331/+241
* c-common.h (check_case_value): Remove prototype. (c_add_case_label): Adjust prototype. * c-common.c (check_case_value): Make static. (check_case_bounds): New function. (c_add_case_label): Use it. Take new argument orig_type. * c-typeck.c (struct c_switch): New orig_type field. (c_start_case): Set it. (do_case): Pass it to c_add_case_label. * expr.c (expand_expr_real_1): Don't warn for out-of-bounds cases from here. Add the labels in reverse order. * stmt.c (struct case_node): Adjust comment. Remove balance field. (add_case_node): Return nothing, don't check for duplicate cases. Insert new case nodes in a list, not in an AVL tree. (expand_end_case_type): Don't turn a case tree into a case list. (case_tree2list): Remove. * tree.h (add_case_node): Adjust prototype. cp/ * cp-tree.h (struct lang_decl_flags): Unify the template_info and thunk_alias, and the access and virtual_offset fields. (THUNK_VIRTUAL_OFFSET, THUNK_ALIAS): Adjust. * decl.c (finish_case_label): Update c_add_case_node call. testsuite/ * testsuite/gcc.dg/switch-warn-1.c: New test. * testsuite/gcc.dg/switch-warn-2.c: New test. * gcc.c-torture/compile/pr14730.c: Update From-SVN: r84947
2004-07-20* include/c_std/std_cwchar.h (wcsstr): Correct signature.Danny Smith2-1/+5
From-SVN: r84945
2004-07-20genattr.c (struct range, [...]): Remove them.Paolo Bonzini32-3094/+306
2004-07-19 Paolo Bonzini <bonzini@gnu.org> * genattr.c (struct range, struct function_unit, write_units, extend_range, init_range): Remove them. (main): Remove code dealing with DEFINE_FUNCTION_UNIT. Output "#define INSN_SCHEDULING" here. * genattrtab.c (struct range, struct function_unit_op, struct function_unit, struct dimension, enum operator, operate_exp, expand_units, simplify_knowing, encode_units_mask, simplify_by_exploding, find_and_mark_used_attributes, unmark_used_attributes, add_values_to_cover, increment_current_value, test_for_current_value, simplify_with_current_value, simplify_with_current_value_aux, gen_unit, write_unit_name, write_function_unit_info, write_complex_function, write_toplevel_expr, find_single_value, extend_range): Remove. (write_attr_get): Do not handle common_av->value being an FFS. (struct attr_desc): Remove func_units_p and blockage_p. (write_attr_valueq): Do not handle them. (find_attr): Do not clear them. (make_internal_attr): Do not initialize them. (main): Remove code dealing with DEFINE_FUNCTION_UNIT. * sched-vis.c (init_target_units, insn_print_units, init_block_visualization, print_block_visualization, visualize_scheduled_insns, visualize_no_unit, visualize_stall_cycles, visualize_alloc, visualize_free, target_units, get_visual_tbl_length, MAX_VISUAL_LINES, INSN_LEN, n_visual_lines, visual_tbl_line_length, visual_tbl, n_vis_no_unit, MAX_VISUAL_NO_UNIT, vis_no_unit): Remove. * haifa-sched.c (blockage_range, clear_units, schedule_unit, actual_hazard, potential_hazard, insn_unit, unit_last_insn, unit_tick, actual_hazard_this_instance, potential_hazard, schedule_unit, max_insn_queue_index_value): Remove. (MAX_INSN_QUEUE_INDEX): Removed, renamed throughout to max_insn_queue_index. * rtl.def (DEFINE_FUNCTION_UNIT): Remove. * doc/md.texi (Processor pipeline description): Remove references to old pipeline descriptions. (Automaton pipeline description): Merge with the above. (Old pipeline description, Comparison of the two descriptions): Remove. * bt-load.c (migrate_btr_def): Remove references to use_pipeline_interface. * haifa-sched.c (insn_cost, schedule_insn, schedule_block, advance_one_cycle, sched_init, queue_to_ready, sched_finish): Likewise. * modulo-sched.c (sms_schedule, advance_one_cycle, ps_has_conflicts): Likewise. * sched-rgn.c (init_ready): Likewise. (debug_dependencies): Likewise, and remove an "if (1)". * target.h (use_dfa_pipeline_interface): Remove. * config/alpha/alpha.c (TARGET_USE_DFA_PIPELINE_INTERFACE): Remove. * config/arc/arc.c (TARGET_USE_DFA_PIPELINE_INTERFACE): Remove. * config/arm/arm.c (TARGET_USE_DFA_PIPELINE_INTERFACE): Remove. * config/c4x/c4x.c (TARGET_USE_DFA_PIPELINE_INTERFACE): Remove. * config/frv/frv.c (TARGET_USE_DFA_PIPELINE_INTERFACE): Remove. * config/i386/i386.c (TARGET_USE_DFA_PIPELINE_INTERFACE): Remove. * config/ia64/ia64.c (TARGET_USE_DFA_PIPELINE_INTERFACE): Remove. * config/iq2000/iq2000.c (TARGET_USE_DFA_PIPELINE_INTERFACE): Remove. * config/m32r/m32r.c (TARGET_USE_DFA_PIPELINE_INTERFACE): Remove. * config/mcore/mcore.c (TARGET_USE_DFA_PIPELINE_INTERFACE): Remove. * config/mips/mips.c (TARGET_USE_DFA_PIPELINE_INTERFACE): Remove. * config/pa/pa.c (TARGET_USE_DFA_PIPELINE_INTERFACE): Remove. * config/rs6000/rs6000.c (TARGET_USE_DFA_PIPELINE_INTERFACE): Remove. * config/s390/s390.c (TARGET_USE_DFA_PIPELINE_INTERFACE): Remove. * config/sh/sh.c (TARGET_USE_DFA_PIPELINE_INTERFACE): Remove. * config/sparc/sparc.c (TARGET_USE_DFA_PIPELINE_INTERFACE): Remove. * config/v850/v850.c (TARGET_USE_DFA_PIPELINE_INTERFACE): Remove. * config/xtensa/xtensa.c (TARGET_USE_DFA_PIPELINE_INTERFACE): Remove. * doc/tm.texi (TARGET_USE_DFA_PIPELINE_INTERFACE): Remove. From-SVN: r84944
2004-07-20Revert patch for PR c++/16623.Mark Mitchell4-14/+6
From-SVN: r84942
2004-07-20Remove DOS style trailing Carriage ReturnsKelley Cook11-242/+253
From-SVN: r84941
2004-07-20Daily bump.GCC Administrator2-2/+2
From-SVN: r84939
2004-07-19re PR libstdc++/15488 (possibly insufficient file permissions for executing ↵Benjamin Kosnik2-3/+5
test suite) 2004-07-19 Benjamin Kosnik <bkoz@redhat.com> PR libstdc++/15488 * testsuite/lib/libstdc++.exp (v3-copy-files): Revert. From-SVN: r84935
2004-07-19jartool.c (main): Ensure that only one of ftruncate and _chsize is used.Bryce McKinlay2-2/+6
2004-07-19 Bryce McKinlay <mckinlay@redhat.com> * jartool.c (main): Ensure that only one of ftruncate and _chsize is used. From-SVN: r84931
2004-07-19* rtlanal.c (reg_set_p): Add check for regs_invalidated_by_call.Roger Sayle2-7/+7
From-SVN: r84930
2004-07-19re PR java/16472 (jartool.c uses ftruncate, nonexistant on mingw32)Bryce McKinlay5-0/+127
2004-07-11 Bryce McKinlay <mckinlay@redhat.com> PR java/16472 * configure.ac: Check for ftruncate() and _chsize(). * jartool.c (main): Use _chsize if ftruncate not available. * configure, config.h.in: Rebuilt. From-SVN: r84929
2004-07-19re PR c++/16623 (g++ ICE in tsubst_decl:6081)Mark Mitchell6-2/+45
PR c++/16623 * cp-tree.h (lang_type_class): Add lazy_assignment_op. (CLASSTYPE_LAZY_ASSIGNMENT_OP): New macro. * class.c (add_implicitly_declared_members): Use CLASSTYPE_LAZY_ASSIGNMENT_OP. * method.c (lazily_declare_fn): Clear CLASSTYPE_LAZY_ASSIGNMENT_OP. * search.c (lookup_fnfields_1): Check it. PR c++/16623 * g++.dg/template/assign1.C: New test. From-SVN: r84928
2004-07-19tree-ssa-dom.c (single_incoming_edge_ignoring_loop_edges): New.Jeff Law2-17/+46
* tree-ssa-dom.c (single_incoming_edge_ignoring_loop_edges): New. (get_eq_expr_value): Use it. Simplify slightly. From-SVN: r84927
2004-07-19Print -verbose:message on "loading", not initialization.Per Bothner5-7/+27
* java/lang/Class.h (JV_STATE_LOADED, JV_STATE_COMPILED): Swap order. * defineclass.cc (_Jv_ClassReader::parse): Print message if gcj::verbose_class_flag. * java/lang/natClass.cc (initializeClass): Don't print message here. * java/lang/natClassLoader.cc (_Jv_WaitForState): If state was _JV_STATE_COMPILED, set to JV_STATE_LOADED and may print message. (_Jv_PrepareCompiledClass): Likewise. From-SVN: r84926
2004-07-19mips.md (mulsidi3_32bit_r4000): Fix the clobber list.Maciej W. Rozycki2-4/+7
* config/mips/mips.md (mulsidi3_32bit_r4000): Fix the clobber list. (umulsidi3_32bit_r4000): Likewise. From-SVN: r84925
2004-07-19vec.h: Propagate location information properly.Nathan Sidwell9-156/+259
.: * vec.h: Propagate location information properly. (VEC_T_iterate): Add result pointer parameter. (VEC_T_space): New. (VEC_T_reserve): Use it. cp: * class.c (add_method): Delay adding the slot until the end. (determine_primary_base): Adjust VEC_iterate invokation. (resort_type_method_vec, finish_struct_methods, warn_hidden, walk_subobject_offsets, end_of_class, warn_about_ambiguous_bases, build_vtbl_initializer): Likewise. * init.c (sort_mem_initializers, build_delete, push_base_cleanups, build_vbase_delete): Likewise. * method.c (do_build_copy_constructor): Likewise. * name-lookup.c (new_class_binding, print_binding_level, poplevel_class, store_class_bindings, push_to_top_level, pop_from_top_level): Likewise. * pt.c (check_explicit_specialization): Likewise. * search.c (lookup_conversion_operator, lookup_fnfields_1, get_pure_virtuals, add_conversions, dfs_check_overlap, binfo_for_vbase): Likewise. From-SVN: r84924
2004-07-19re PR c++/12170 (ICE in cp_type_quals)Kriang Lerdsuwanakij4-4/+42
PR c++/12170 * pt.c (unify) <BOUND_TEMPLATE_TEMPLATE_PARM case>: Use only innermost set of template arguments during deduction. Simplify. * g++.dg/template/ttp9.C: New test. From-SVN: r84921
2004-07-19Makefile.in (c-format.o): Depend on c-format.h.Daniel Jacobowitz16-412/+701
gcc/ * Makefile.in (c-format.o): Depend on c-format.h. * c-format.h: New file. (struct format_char_info): Add CHAIN member. * c-format.c: Move some types and constants to c-format.h. (format_type_error): Set to -1. (struct function_format_info): Use an int for format_type. (decode_format_type): Return an int. Return format_type_error on error. (print_char_table, asm_fprintf_char_table, gcc_diag_char_table) (gcc_diag_char_table, gcc_cdiag_char_table, gcc_cxxdiag_char_table) (scan_char_table, time_char_table, monetary_char_table): Initialize CHAIN to NULL. (n_format_types): New variable. (check_format_info_main): Handle CHAIN in format_char_info. (handle_format_attribute): Handle TARGET_FORMAT_TYPES and TARGET_N_FORMAT_TYPES. * config.gcc (i[34567]86-*-solaris2*, sparc64-*-solaris2*) (sparc-*-solaris2*): Include config/t-sol2 and config/sol2-c.c. * config/sol2-c.c: New file. * config/t-sol2: New file. * config/sol2.h (TARGET_N_FORMAT_TYPES, TARGET_FORMAT_TYPES): Define. * config/sparc/elf.h, config/sparc/sp64-elf.h: Undefine TARGET_N_FORMAT_TYPES and TARGET_FORMAT_TYPES. * doc/extend.texi (Target Format Checks): New section. (Function Attributes): Mention it. * doc/invoke.texi: Mention target format checks. * doc/sourcebuild.texi: Mention target format checks. * dc/tm.texi (Misc): Document TARGET_N_FORMAT_TYPES and TARGET_FORMAT_TYPES. testsuite/ * gcc.dg/format/cmn-err-1.c: New test. From-SVN: r84920
2004-07-19s390-protos.h (s390_return_address_offset): Prototype added.Andreas Krebbel5-47/+80
2004-07-19 Andreas Krebbel <krebbel1@de.ibm.com> * config/s390/s390-protos.h (s390_return_address_offset): Prototype added. * config/s390/s390.c (regclass_map initializer): Register 35 added to ADDR_REGS. (load_multiple_operation, store_multiple_operation): Removed pointless sanity check. (s390_decompose_address): Added check for return_address_pointer_rtx. (s390_return_addr_rtx): Use return_address_pointer_rtx for count == 0. (s390_return_address_offset): New function. * config/s390/s390.h (FIRST_PSEUDO_REGISTER): Increased to 36. (FRAME_REGNO_P): Added check for register 35. (FIXED_REGISTERS, CALL_USED_REGISTERS, CALL_REALLY_USED_REGISTERS, REG_ALLOC_ORDER): Appended entry for register 35. (REG_CLASS_CONTENTS): Adjusted class masks for register 35. (EH_RETURN_HANDLER_RTX): Use return_address_pointer_rtx. (RETURN_ADDRESS_POINTER_REGNUM): New macro. (ELIMINABLE_REGS, INITIAL_ELIMINATION_OFFSET): Return address pointer is eliminable using stack pointer or hard frame pointer. (REGISTER_NAMES): Added name for register 35. * config/s390/s390.md ("load_multiple", "store_multiple"): Removed pointless sanity check. From-SVN: r84918
2004-07-19fold-const.c (tree_expr_nonzero_p): Add function prototype.Roger Sayle2-50/+34
* fold-const.c (tree_expr_nonzero_p): Add function prototype. (fold) <EQ_EXPR>: Move tree_expr_nonzero_p optimization from fold_relational_const to here, i.e. "(x | 5) == 0" -> false. (fold) (UNEQ_EXPR>: Add optimizations for unordered comparisons of the form "x op x" where op is UNLE, UNGE, UNEQ or LTGT. (fold_relational_const): Tidy up handling of floating point comparisons by calling real_compare. Remove tree_expr_nonzero_p transformation; fold_relational_const assumes constant operands. From-SVN: r84916
2004-07-19sourcebuild.texi: Add libcpp, now that CPP has its own directory.Gabriel Dos Reis2-0/+8
2004-07-19 Gabriel Dos Reis <gdr@integrable-solution.net> * doc/sourcebuild.texi: Add libcpp, now that CPP has its own directory. From-SVN: r84912
2004-07-19c-tree.h (struct c_expr): Define.Joseph Myers14-201/+399
* c-tree.h (struct c_expr): Define. (C_SET_EXP_ORIGINAL_CODE): Remove. (parser_build_binary_op, build_compound_expr): Update prototypes. * c-parse.in (%union): Add exprtype. (FUNC_NAME): Mark as ttype. (expr, expr_no_commas, cast_expr, unary_expr, primary): Change to exprtype. (expr): Update. Define directly in terms of expr_no_commas instead of using nonnull_exprlist. (nonnull_exprlist, unary_expr, cast_expr, expr_no_commas, primary, offsetof_member_designator, typespec_nonreserved_nonattr, init, initval, designator, component_declarator, component_notype_declarator, enumerator, array_declarator, condition, exexpr, switch_statement, stmt_nocomp, stmt, nonnull_asm_operands, ivar_declarator, receiver): Update. Don't set C_EXP_ORIGINAL_CODE. Use TREE_NO_WARNING for assignments where appropriate. * c-common.h (C_EXP_ORIGINAL_CODE): Remove. * c-common.c (c_common_truthvalue_conversion): Don't check C_EXP_ORIGINAL_CODE. * c-typeck.c (parser_build_binary_op): Use c_expr structures. Don't use C_EXP_ORIGINAL_CODE. (default_conversion, default_function_array_conversion): Don't use C_EXP_ORIGINAL_CODE. Preserve TREE_NO_WARNING. (internal_build_compound_expr): Merge into build_compound_expr. (build_compound_expr): Take two operands instead of a TREE_LIST. * objc/objc-act.c (get_super_receiver): Update calls to build_compound_expr. cp: * typeck.c (build_modify_expr, build_x_modify_expr): Set TREE_NO_WARNING on assignments with an operator other than '='. testsuite: * g++.dg/warn/Wparentheses-1.C, g++.dg/warn/Wparentheses-2.C, gcc.dg/Wparentheses-10.c: New tests. * gcc.dg/Wparentheses-5.c: Remove XFAILs. From-SVN: r84911
2004-07-19sh.c (sh_use_dfa_interface): Remove.Paolo Bonzini6-591/+674
2004-07-19 Paolo Bonzini <bonzini@gnu.org> * config/sh/sh.c (sh_use_dfa_interface): Remove. (TARGET_SCHED_USE_DFA_PIPELINE_INTERFACE): Set to hook_int_void_1. * config/sh/sh.md: Extract pipeline descriptions into separate files. * config/sh/sh1.md: New file, extracted from sh.md. * config/sh/sh4.md: New file, extracted from sh.md. * config/sh/shmedia.md: New file, extracted from sh.md and rewritten using new-style pipeline description. From-SVN: r84910
2004-07-19tree.c (no_linkage_helper): Remove.Mark Mitchell2-22/+55
* tree.c (no_linkage_helper): Remove. (no_linkage_check): Don't use walk_tree_without_duplicates. From-SVN: r84909
2004-07-19pa.md: Delete the two remaining define_peephole patterns.Zack Weinberg2-82/+11
* config/pa/pa.md: Delete the two remaining define_peephole patterns. From-SVN: r84908
2004-07-19Daily bump.GCC Administrator2-2/+2
From-SVN: r84906
2004-07-18c-common.c (c_common_truthvalue_conversion): Don't warn if TREE_NO_WARNING ↵Steven Bosscher6-15/+22
is set. * c-common.c (c_common_truthvalue_conversion): Don't warn if TREE_NO_WARNING is set. cp/ * cp-tree.h (C_SET_EXP_ORIGINAL_CODE): Remove. * decl2.c (grokfield): Don't check current_class_depth via unused TREE_COMPLEXITY. * semantics.c (finish_parenthesized_expr): Set TREE_NO_WARNING to avoid the missing parentheses warning. Don't set C_SET_EXP_ORIGINAL_CODE. Co-Authored-By: Joseph Myers <jsm@polyomino.org.uk> From-SVN: r84903
2004-07-18mangle.c (write_expression): Issue a sorry for zero-operand functional casts.Mark Mitchell2-1/+12
* mangle.c (write_expression): Issue a sorry for zero-operand functional casts. From-SVN: r84899
2004-07-18builtins.c (simplify_builtin_memcmp, [...]): Delete.Roger Sayle2-254/+146
* builtins.c (simplify_builtin_memcmp, simplify_builtin_strcmp, simplify_builtin_strncmp): Delete. (fold_builtin_memcmp, fold_builtin_strcmp, fold_builtin_strncmp): Change argument to accept an arglist instead of an "exp". Assume that the return type is always integer_type_node. Copy missing transformations from their now obsolete simplify_builtin_* equivalents. (fold_builtin_1): Pass arglist instead of exp to fold_builtin_memcmp, fold_builtin_strcmp and fold_builtin_strncmp. (simplify_builtin): Call fold_builtin_memcmp, fold_builtin_strcmp and fold_builtin_strncmp instead of simplify_builtin_memcmp, simplify_builtin_strcmp and simplify_builtin_strncmp respectively. From-SVN: r84898
2004-07-18* Makefile.in (tree-alias-common.o): Update dependencies.Daniel Jacobowitz2-1/+9
From-SVN: r84897
2004-07-18* cfgloop.c (flow_loop_nested_p): Fix comment.Sebastian Pop2-1/+6
From-SVN: r84896
2004-07-18re PR tree-optimization/16115 (double-destruction problem with argument ↵Jason Merrill1-1/+0
passing via temporary (breaks auto_ptr)) PR c++/16115 * stor-layout.c (relayout_decl): New fn. * tree.h: Declare it. (DECL_BY_REFERENCE): New macro. * cp/call.c (type_passed_as): Make the invisible reference type __restrict. * cp/cp-gimplify.c (gimplify_cleanup_stmt): Rename to cp_genericize_r. Handle invisible reference lowering. (is_invisiref_parm): New fn. (cp_genericize): Adjust the types of invisible reference parms. Don't repeat the walk for clones. * cp/decl.c (store_parm_decls): Don't generate any code for clones. From-SVN: r84895
2004-07-18builtins.c (max_builtin, [...]): Replace calls to build with buildN.Roger Sayle9-104/+121
* builtins.c (max_builtin, min_builtin, java_build_function_call_expr): Replace calls to build with buildN. * class.c (build_class_ref, build_static_field_ref, get_dispatch_table, make_class_data, layout_class_method): Likewise. * constants.c (build_ref_from_constant_pool): Likewise. * decl.c (update_aliases, push_jvm_slot, poplevel, finish_method, add_stmt_to_compound): Likewise. * except.c (build_exception_object_ref, expand_end_java_handler): Likewise. * java-gimplify.c (java_gimplify_case_expr, java_gimplify_default_expr, java_gimplify_block, java_gimplify_new_array_init, java_gimplify_try_expr): Likewise. * jcf-write.c (generate_bytecode_insns): Likewise. * typeck.c (convert_ieee_real_to_integer): Likewise. From-SVN: r84894
2004-07-18re PR fortran/16465 (parser chokes with ffixed-line-length-7)Tobias Schlüter6-5/+42
PR fortran/16465 * gfortran.dg/g77//ffixed-line-length-0.f, gfortran.dg/g77/ffixed-line-length-132.f, gfortran.dg/g77/ffixed-line-length-72.f, gfortran.dg/g77/ffixed-line-length-none.f: Copy from g77.dg. gfortran.dg/g77/README: Update. From-SVN: r84892
2004-07-18re PR fortran/16465 (parser chokes with ffixed-line-length-7)Tobias Schlüter4-22/+81
PR fortran/16465 * lang.opt (ffixed-line-length-none, ffixed-line-length-): New options. (ffixed-line-length-80, ffixed-line-length-132): Remove. * options.c (gfc_handle_options): Deal with changed options. * scanner.c (load_line): Change second arg to 'char **', allocate if pointing to NULL. Keep track of buffer's length. Adapt buffer size to overlong lines. Pad lines to full length in fixed form. (load_file): Adapt to new interface of load_line. From-SVN: r84891
2004-07-18configure.ac: Add check for LFS support.Bud Davis3-2/+367
2004-07-18 Bud Davis <bdavis9659@comcast.net> * configure.ac: Add check for LFS support. * configure: Regenerate From-SVN: r84890
2004-07-18re PR c++/13092 (Accepts invalid pointer-to-member conversion)Kriang Lerdsuwanakij11-7/+144
PR c++/13092 * init.c (build_offset_ref): Build SCOPE_REF with non-null TREE_TYPE for non-dependent names. * typeck.c (build_x_unary_op): Handle non-dependent SCOPE_REF. * pt.c (type_dependent_expression_p): Handle SCOPE_REF with unknown_type_node as its TREE_TYPE. * cxx-pretty_print.c (pp_cxx_unqualified_id): Handle BASELINK. * error.c (dump_decl) <SCOPE_REF case>: Use pp_expression. (dump_expr) <SCOPE_REF case>: Likewise. * g++.dg/template/non-dependent7.C: New test. * g++.dg/template/non-dependent8.C: Likewise. * g++.dg/template/non-dependent9.C: Likewise. * g++.dg/template/non-dependent10.C: Likewise. From-SVN: r84889
2004-07-18configure.in: Substitute target_noncanonical.Matthias Klose3-343/+353
2004-07-18 Matthias Klose <doko@debian.org> * configure.in: Substitute target_noncanonical. * configure: Regenerate From-SVN: r84888
2004-07-18re PR tree-optimization/16115 (double-destruction problem with argument ↵Jason Merrill7-18/+130
passing via temporary (breaks auto_ptr)) PR c++/16115 * stor-layout.c (relayout_decl): New fn. * tree.h: Declare it. (DECL_BY_REFERENCE): New macro. * cp/call.c (type_passed_as): Make the invisible reference type __restrict. * cp/cp-gimplify.c (gimplify_cleanup_stmt): Rename to cp_genericize_r. Handle invisible reference lowering. (is_invisiref_parm): New fn. (cp_genericize): Adjust the types of invisible reference parms. Don't repeat the walk for clones. * cp/decl.c (store_parm_decls): Don't generate any code for clones. From-SVN: r84887
2004-07-18Daily bump.GCC Administrator2-2/+2
From-SVN: r84884
2004-07-17libgcc2.c (__enable_execute_stack): New symbol.Eric Botcazou17-21/+76
* libgcc2.c (__enable_execute_stack): New symbol. * libgcc-std.ver (GCC_3.4.2): New version. Inherit from GCC_3.4 and declare __enable_execute_stack. * mklibgcc.in (lib2funcs): Add _enable_execute_stack. * config/netbsd.h (NETBSD_ENABLE_EXECUTE_STACK): ANSIfy. * config/sol2.h (TRANSFER_FROM_TRAMPOLINE): Rename into ENABLE_EXECUTE_STACK. * config/alpha/alpha.c (alpha_initialize_trampoline): Conditionalize on ENABLE_EXECUTE_STACK instead of TRANSFER_FROM_TRAMPOLINE. * config/alpha/netbsd.h (TRANSFER_FROM_TRAMPOLINE): Rename into ENABLE_EXECUTE_STACK. * config/alpha/osf.h (TRANSFER_FROM_TRAMPOLINE): Likewise. * config/i386/i386.c (x86_initialize_trampoline): Conditionalize on ENABLE_EXECUTE_STACK instead of TRANSFER_FROM_TRAMPOLINE. * config/i386/netbsd-elf.h (TRANSFER_FROM_TRAMPOLINE): Rename into ENABLE_EXECUTE_STACK. * config/i386/netbsd.h (TRANSFER_FROM_TRAMPOLINE): Likewise. * config/i386/netbsd64.h (TRANSFER_FROM_TRAMPOLINE): Likewise. * config/sparc/freebsd.h (TRANSFER_FROM_TRAMPOLINE): Likewise. * config/sparc/netbsd-elf.h (TRANSFER_FROM_TRAMPOLINE): Likewise. * config/sparc/sparc.c (sparc_initialize_trampoline): Conditionalize on ENABLE_EXECUTE_STACK instead of TRANSFER_FROM_TRAMPOLINE. (sparc64_initialize_trampoline): Likewise. * doc/tm.texi (trampolines): Add ENABLE_EXECUTE_STACK macro. From-SVN: r84880
2004-07-17langhooks.h (builtin_function): New langhook.Joseph Myers26-82/+156
* langhooks.h (builtin_function): New langhook. * langhooks-def.h (LANG_HOOKS_BUILTIN_FUNCTION): New. (LANG_HOOKS_INITIALIZER): Update. * tree.h (builtin_function): Remove. * doc/tm.texi: Update. * c-tree.h (builtin_function): Declare. * c-common.c, config/alpha/alpha.c, config/arm/arm.c, config/c4x/c4x.c, config/frv/frv.c, config/i386/i386.c, config/ia64/ia64.c, config/iq2000/iq2000.c, config/rs6000/rs6000.c, config/s390/s390.c, config/sh/sh.c, config/stormy16/stormy16.c: All callers of builtin_function changed. ada: * gigi.h (builtin_function): Declare. cp: * cp-tree.h (builtin_function): Declare. fortran: * trans.h (builtin_function): Declare. java: * java-tree.h (builtin_function): Declare. From-SVN: r84878
2004-07-17re PR target/16556 (minor cosmetic issue, easy to fix though)Andrew Pinski2-1/+7
2004-07-17 Andrew Pinski <pinskia@physics.uc.edu> PR target/16556 * config/i386/darwin.h (UNLIKELY_EXECUTED_TEXT_SECTION_NAME): Remove white space after the backslash. From-SVN: r84877
2004-07-17re PR bootstrap/16469 (bootstrap fails in libstdc++-v3/testsuite)Richard Sandiford2-1/+6
PR bootstrap/16469 * scripts/create_testsuite_files: Pass -print to find. From-SVN: r84875
2004-07-17re PR rtl-optimization/16294 (Missed delay slot scheduling opportunity)Eric Botcazou2-2/+36
PR rtl-optimization/16294 * resource.c (return_insn_p): New predicate. (mark_target_live_regs): Use it. Special-case return insns. (init_resource_info): Use it. Don't scan the epilogue past a return. From-SVN: r84874
2004-07-17loop-init.c (loop_optimizer_init, [...]): Do not destroy dominance information.Zdenek Dvorak5-11/+68
* loop-init.c (loop_optimizer_init, loop_optimizer_finalize): Do not destroy dominance information. * passes.c (rest_of_handle_loop2): Free dominance information. * tree-cfg.c (cleanup_tree_cfg): Remove unreachable blocks before jump threading. (thread_jumps): Update dominance information and remove unreachable blocks. * tree-ssa-phiopt.c (replace_phi_with_stmt): Update dominance information and remove the unreachable block. From-SVN: r84873
2004-07-17re PR c++/16337 (bug defining multiple altivec vectors in same C++ statement)Mark Mitchell2-0/+20
PR c++/16337 * g++.dg/parse/attr2.C: New test. From-SVN: r84872
2004-07-17* emit-rtl.c (reorder_insns): Don't set BB for a BARRIER insn.Graham Stott2-1/+6
From-SVN: r84871
2004-07-17String.java: Fixed javadocs all over.Michael Koch2-20/+24
2004-07-17 Michael Koch <konqueror@gmx.de> * java/lang/String.java: Fixed javadocs all over. From-SVN: r84870
2004-07-17sourcebuild.texi: Remove libf2c entry.Toon Moene2-3/+4
2004-07-17 Toon Moene <toon@moene.indiv.nluug.nl> * doc/sourcebuild.texi: Remove libf2c entry. From-SVN: r84869