1. 26 May, 2010 21 commits
    • Make tree_if_conversion not return a bool. · 7b371e73
      2010-05-26  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* tree-if-conv.c (tree_if_conversion): Do not return a bool.
      
      From-SVN: r159881
      Sebastian Pop committed
    • Fix comments. · 4ab71973
      2010-05-26  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* tree-if-conv.c: Update copyright years.  Fix comments.
      	Fix indentation.
      
      From-SVN: r159880
      Sebastian Pop committed
    • demangle-expected: Add tests for __int128 and unsigned __int128 types. · a6766312
      libiberty/
      
      2010-05-26  Kai Tietz  <kai.tietz@onevision.com>
      
              * testsuite/demangle-expected: Add tests for __int128
              and unsigned __int128 types.
      
      gcc/testsuite
      2010-05-26  Kai Tietz  <kai.tietz@onevision.com>
      
      	* lib/target-supports.exp (check_effective_target_int128): New
      	function to check if __int128 types are available for target.
      	* testsuite/c-c++-common/int128-types-1.c: New.
      	* testsuite/c-c++-common/int128-1.c: New.
      	* testsuite/c-c++-common/int128-2.c: New.
      	* g++.dg/abi/mangle43.C: New.
      	* g++.dg/init/enum1.C: Handle __int128 case and add -Wno-overflow.
      	* g++.dg/cpp0x/nullptr04.C: Use __SIZE_TYPE__ for getting
      	pointer-wide scalar.
      	* g++.dg/other/pr25632.C: Likewise.
      	* g++.dg/other/large-size-array.C (DIM): Use ULLONG_MAX for win64 case.
      	* g++.dg/warn/pr13358-2.C: Add llp64 for check of special
      	overflow warnings.
      	* g++.dg/warn/pr13358-4.C: Likewise.
      	* g++.dg/warn/Wconversion-null-2.C:  Add 'long long' case.
      	* g++.dg/warn/Wconversion-null.C: Likewise.
      
      gcc/
      2010-05-26  Kai Tietz  <kai.tietz@onevision.com>
      
      	* builtin-types.def (BT_INT128): New primitive type.
      	(BT_UINT128): Likewise.
      	* c-common.c (c_common_r): Add __int128 keyword.
      	(c_common_type_for_size): Handle __int128.
      	(c_common_type_for_mode): Likewise.
      	(c_common_signed_or_unsigned_type): Likewise.
      	(c_common_nodes_and_builtins): Add builtin type
      	if target supports 128-bit integer scalar.
      	* c-common.h (enum rid): Add RID_INT128.
      	* c-cppbuiltin.c (c_cpp_builtins): Define __SIZEOF_INT128__
      	if target supports 128-bit integer scalar.
      	* c-decl.c (declspecs_add_type): Handle new keyword
      	__int128.
      	(finish_declspecs): Likewise.
      	* c-parser.c (c_token_starts_typename): Handle RID_INT128.
      	(c_token_starts_declspecs): Likewise.
      	(c_parser_declspecs): Likewise.
      	(c_parser_attributes): Likewise.
      	(c_parser_objc_selector): Likewise.
      	* c-pretty-print.c (pp_c_integer_constant): Handle __int128.
      	* c-tree.h (enum c_typespec_keyword): Add cts_int128.
      	* gimple.c (gimple_signed_or_unsigned_type): Handle int128 types.
      	* tree.c (make_or_reuse_type): Likewise.
      	(make_unsigned_type): Likewise.
      	(build_common_tree_nodes_2): Likewise.
      	* tree.h (enum integer_type_kind): Add itk_int128 and
      	itk_unsigned_int128.
      	(int128_integer_type_node): New define..
      	(int128_unsigned_type_node): New define.
      	* cp/cp-tree.h (cp_decl_specifier_seq): Add new bifield
      	explicit_int128_p.
      	* cp/decl.c (grokdeclarator): Handle __int128.
      	* cp/parser.c (cp_lexer_next_token_is_decl_specifier_ke): Likewise.
      	(cp_parser_simple_type_specifier): Likewise.
      	* cp/rtti.c (emit_support_tinfos): Add int128 nodes for rtti.
      	* cp/typeck.c (cp_common_type): Handle __int128.
      	* cp/mangle.c (integer_type_codes): Add itk_int128 and
      	itk_unsigned_int128.
      	* doc/extend.texi: Add documentation about __int128 type.
      
      From-SVN: r159879
      Kai Tietz committed
    • tree-ssa-sccvn.c (copy_nary): Adjust. · 880ad25f
      2010-05-26  Richard Guenther  <rguenther@suse.de>
      
      	* tree-ssa-sccvn.c (copy_nary): Adjust.
      	(copy_phis): Rename to ...
      	(copy_phi): ... this.  Adjust.
      	(copy_references): Rename to ...
      	(copy_reference): ... this.  Adjust.
      	(process_scc): Use HTAB_FOR_EACH_ELEMENT to insert the
      	result into the valid table.
      
      From-SVN: r159877
      Richard Guenther committed
    • spu-c.c: Do not include function.h... · 52642070
      	* config/spu/spu-c.c: Do not include function.h, rtl.h, expr.h,
      	insn-config.h, insn-codes.h, recog.h, and optabs.h.
      
      From-SVN: r159876
      Steven Bosscher committed
    • ggc.h (ggc_min_expand_heuristic, [...]): Remove. · 58cd6303
      2010-05-26  Laurynas Biveinis  <laurynas.biveinis@gmail.com>
      
      	* ggc.h (ggc_min_expand_heuristic, ggc_min_heapsize_heuristic):
      	Remove.
      
      From-SVN: r159874
      Laurynas Biveinis committed
    • re PR c++/43382 ([C++0x] ICE with auto return type and variadic templates) · 1dba29f8
      	PR c++/43382
      	* pt.c (fn_type_unification): Don't get confused by recursive
      	unification.
      
      From-SVN: r159873
      Jason Merrill committed
    • opts.c (common_handle_option): Handle OPT_Ofast. · c3a02647
      2010-05-26  Richard Guenther  <rguenther@suse.de>
      
      	* opts.c (common_handle_option): Handle OPT_Ofast.
      
      From-SVN: r159871
      Richard Guenther committed
    • class.c (utf8_decl_list): Delete. · cf484e91
      	* class.c (utf8_decl_list): Delete.
      	(build_utf8_ref): Remove references to it.
      	* java-tree.h (all_class_list): Delete.
      	(predef_filenames): Delete.
      	(enum java_tree_index) [JTI ALL_CLASS_LIST,JTI_PREDEF_FILENAMES]:
      	Delete.
      	* jcf-parse.c (parse_roots): Decrease size to 2.
      	(current_file_list): Convert to a VEC.
      	(all_class_list): Declare.
      	(jcf_parse): Adjust for new type of all_class_list.
      	(java_layout_seen_class_methods): Likewise.
      	(predefined_filenames): Declare.
      	(add_predefined_file): Use it.
      	(predefined_filename_p): Likewise.
      	(java_parse_file): Adjust for new type of current_file_list.                                                                                                                                                     *
      
      From-SVN: r159870
      Nathan Froyd committed
    • diagnostic.c: Don't include opts.h. · 5f0f4a3b
      	* diagnostic.c: Don't include opts.h.
      	(permissive_error_option): Define.
      	(diagnostic_initialize): Take n_opts parameter.  Allocate memory
      	for classify_diagnostic.  Don't use memset for
      	classify_diagnostic.  Initialize new and recently added fields.
      	(diagnostic_classify_diagnostic): Use context->n_opts instead of
      	N_OPTS.
      	(diagnostic_report_diagnostic): Pass context parameter to
      	diagnostic_report_warnings_p.  Use option_enabled and option_name
      	hooks from context.
      	(emit_diagnostic): Use permissive_error_option.
      	(permerror): Likewise.
      	* diagnostic.h: Don't include options.h.
      	(struct diagnostic_context): Add n_opts, opt_permissive,
      	inhibit_warnings, warn_system_headers, option_enabled and
      	option_name fields.  Change classify_diagnostic to a pointer.
      	* opts-diagnostic.h: New file.
      	* opts.c: Include opts-diagnostic.h.
      	(common_handle_option): Set global_dc fields for -Wfatal-errors,
      	-Wsystem-headers, -fshow-column, -pedantic-errors and -w.
      	(option_name): New function.
      	* c-opts.c (c_common_init_options): Set global_dc->opt_permissive.
      	(c_common_handle_option): Set global_dc->permissive for
      	-fpermissive.
      	* c-common.c (c_cpp_error): Save and restore
      	global_dc->warn_system_headers, not variable warn_system_headers.
      	* toplev.c: Include opts-diagnostic.h.
      	(general_init): Update call to diagnostic_initialize.  Set
      	global_dc->show_column, global_dc->option_enabled and
      	global_dc->option_name.
      	(process_options): Don't set global_dc fields here.
      	* Makefile.in (DIAGNOSTIC_H): Remove options.h.
      	(diagnostic.o, opts.o, toplev.o): Update dependencies.
      
      fortran:
      	* cpp.c (cb_cpp_error): Save and restore
      	global_dc->warn_system_headers, not variable warn_system_headers.
      
      From-SVN: r159869
      Joseph Myers committed
    • picochip.md (movsi): Split a movsi from a const after reload. · f024f85d
      	* config/picochip/picochip.md (movsi): Split a movsi from a
      	const after reload.
      
      From-SVN: r159867
      Hariharan Sandanagobalane committed
    • ggc-zone.c: Update copyright year. · e4dfaf72
      2010-05-26  Laurynas Biveinis  <laurynas.biveinis@gmail.com>
      
      	* ggc-zone.c: Update copyright year.
      	(poison_region): Mark memory for Valgrind as undefined before
      	memset () call and inaccessible afterwards.
      	(ggc_pch_total_size): Change type of i to int.
      
      2010-05-26  Laurynas Biveinis  <laurynas.biveinis@gmail.com>
      
      	* ggc-common.c (ggc_free_overhead): Allow empty slot.
      
      2010-05-26  Laurynas Biveinis  <laurynas.biveinis@gmail.com>
      
      	* ggc-common.c: Update copyright year.
      	(ggc_rlimit_bound): Remove prototype.  Compile only if
      	!ENABLE_GC_CHECKING && !ENABLE_GC_ALWAYS_COLLECT.
      	(ggc_min_heapsize_heuristic): Compile only if !ENABLE_GC_CHECKING
      	&& !ENABLE_GC_ALWAYS_COLLECT.  Make static.
      	(ggc_min_heapsize_heuristic): Likewise.
      
      From-SVN: r159863
      Laurynas Biveinis committed
    • * lto-lang.c: Do not include expr.h. · e12da9c2
      From-SVN: r159862
      Steven Bosscher committed
    • re PR rtl-optimization/44164 (Aliasing bug triggered by Boost.Bind/Boost.Function) · 630d3fad
      2010-05-26  Richard Guenther  <rguenther@suse.de>
      
      	PR rtl-optimization/44164
      	* tree-ssa-alias.c (aliasing_component_refs_p): Fix the
      	no-common access-path disambiguation.
      	(indirect_ref_may_alias_decl_p): Adjust.
      	(indirect_refs_may_alias_p): Likewise.
      	(refs_may_alias_p_1): Likewise.
      
      	* gcc.c-torture/execute/pr44164.c: New testcase.
      	* g++.dg/tree-ssa/pr13146.C: Adjust.
      
      From-SVN: r159861
      Richard Guenther committed
    • * c-typeck.c: Do not include expr.h. · b9b6c084
      From-SVN: r159860
      Steven Bosscher committed
    • * cp-lang.c: Do not include expr.h. · fa3adca3
      From-SVN: r159859
      Steven Bosscher committed
    • rtl.h (decl_default_tls_model): Move prototype from here... · d347d97e
      gcc/ChangeLog:
      	* rtl.h (decl_default_tls_model): Move prototype from here...
      	* output.h: ...to here.
      	* c-decl.c: Do not include rtl.h.
      	* c-pragma.c: Likewise.
      	* c-parser.c: Likewise.
      	* c-gimplify.c: Likewise.  And also not hard-reg-set.
      	* c-common.c: Do not include rtl.h.  Include tm_p.h and add a
      	FIXME note for it.  Add a FIXME note for expr.h.
      	* config/i386/i386-protos.h (ix86_enum_va_list, ix86_fn_abi_va_list,
      	ix86_canonical_va_list_type): Make visible even if RTX_CODE is not
      	defined.
      
      cp/ChangeLog:
      	* decl.c: Do not include rtl.h
      	* semantics.c: Likewise.
      
      ada/ChangeLog:
      	* gcc-interface/utils.c: Do not include rtl.h.
      
      fortran/ChangeLog:
      	* trans-common.c: Do not include rtl.h, include output.h instead.
      	* trans-decl.c: Likewise.
      
      From-SVN: r159856
      Steven Bosscher committed
    • re PR target/44199 (ppc64 glibc miscompilation) · 0d65bdbb
      	PR target/44199
      	* config/rs6000/rs6000.c (rs6000_emit_epilogue): If cfun->calls_alloca
      	or total_size is larger than red zone size for non-V4 ABI, emit a
      	stack_tie resp. frame_tie insn before stack pointer restore.
      	* config/rs6000/rs6000.md (frame_tie): New insn.
      
      From-SVN: r159853
      Jakub Jelinek committed
    • re PR fortran/40011 (Problems with -fwhole-file) · cc9a4ca9
      2010-05-26  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/40011
      	* resolve.c (resolve_global_procedure): Resolve the gsymbol's
      	namespace before trying to reorder the gsymbols.
      
      2010-05-26  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/40011
      	* gfortran.dg/whole_file_19.f90 : New test.
      
      From-SVN: r159852
      Paul Thomas committed
    • Daily bump. · 1515fb61
      From-SVN: r159851
      GCC Administrator committed
  2. 25 May, 2010 19 commits
    • function.h (struct function): Add can_throw_non_call_exceptions bit. · 8f4f502f
      	* function.h (struct function): Add can_throw_non_call_exceptions bit.
      	* lto-streamer-in.c (input_function): Stream it in.
      	* lto-streamer-out.c (output_function): Stream it out.
      	* function.c (allocate_struct_function): Set it.
      	(expand_function_end): Substitute cfun->can_throw_non_call_exceptions
      	for flag_non_call_exceptions.
      	* cfgbuild.c (control_flow_insn_p): Likewise.
      	(make_edges): Likewise.
      	* cfgexpand.c (expand_stack_alignment): Likewise.
      	* combine.c (distribute_notes): Likewise.
      	* cse.c (cse_extended_basic_block): Likewise.
      	* except.c (insn_could_throw_p): Likewise.
      	* gcse.c (simple_mem): Likewise.
      	* ipa-pure-const.c (check_call): Likewise.
      	(check_stmt ): Likewise.
      	* lower-subreg.c (lower-subreg.c): Likewise.
      	* optabs.c (emit_libcall_block): Likewise.
      	(prepare_cmp_insn): Likewise.
      	* postreload-gcse.c (eliminate_partially_redundant_loads): Likewise.
      	* postreload.c (rest_of_handle_postreload): Likewise.
      	* reload1.c (reload_as_needed): Likewise.
      	(emit_input_reload_insns): Likewise.
      	(emit_output_reload_insns): Likewise.
      	(fixup_abnormal_edges): Likewise.
      	* sel-sched-ir.c (init_global_and_expr_for_insn): Likewise.
      	* store-motion.c (find_moveable_store): Likewise.
      	* tree-eh.c (stmt_could_throw_p): Likewise.
      	(tree_could_throw_p): Likewise.
      	* tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Likewise.
      	* config/arm/arm.c (arm_expand_prologue): Likewise.
      	(thumb1_expand_prologue): Likewise.
      	* config/rx/rx.md (cbranchsf4): Likewise.
      	(cmpsf): Likewise.
      	* config/s390/s390.c (s390_emit_prologue): Likewise.
      	* tree-inline.c (initialize_cfun): Copy can_throw_non_call_exceptions.
      	(inline_forbidden_into_p): New predicate.
      	(expand_call_inline): Use it to forbid inlining.
      	(tree_can_inline_p): Likewise.
      
      From-SVN: r159847
      Eric Botcazou committed
    • i386-c.c: Do not include rtl.h. · c962b78d
      	* config/i386/i386-c.c: Do not include rtl.h.
      	* config/i386/t-i386: Update dependencies.
      
      From-SVN: r159846
      Steven Bosscher committed
    • attribs.c: Do not include rtl.h. · afb67dc2
      	* attribs.c: Do not include rtl.h.
      	* Makefile.in: Update dependencies.
      
      From-SVN: r159845
      Steven Bosscher committed
    • utils.c: Do not include function.h, pointer-set.h, and gimple.h. · 9b469089
      	* gcc-interface/utils.c: Do not include function.h, pointer-set.h,
      	and gimple.h.  Explain why rtl.h has to be included.
      	(handle_vector_size_attribute): Call reconstruct_complex_type directly.
      	* gcc-interface/targtyps.c: Do not include tm_p.h
      	* gcc-interface/utils2.c: Do not include flags.h.
      	* gcc-interface/trans.c: Do not include expr.h.  Include rtl.h instead,
      	and explain why it has to be included.
      	* gcc-interface/misc.c: Do not include expr.h, libfuncs.h, cgraph.h,
      	and optabs.h.
      	Include function.h and explain why.  Explain why except.h is included.
      	(enumerate_modes): Remove unused function. 
      	* gcc-interface/gigi.h (enumerate_modes): Remove prototype.
      	* gcc-interface/Make-lang.in: Update dependencies.
      
      From-SVN: r159844
      Steven Bosscher committed
    • double-int.h (double_int_and): New. · e233a3b2
      	* double-int.h (double_int_and): New.
      	* combine.c (try_combine): Clean up, use double_int_* and
      	immed_double_int_const functions.
      
      From-SVN: r159842
      Anatoly Sokolov committed
    • configure.ac: Redirect grep stdout, stderr to /dev/null instead of grep -q. · bc492e47
      	libjava:
      	* configure.ac: Redirect grep stdout, stderr to /dev/null instead
      	of grep -q.
      	Use -- instead of grep -e.
      	* configure: Regenerate.
      
      	gcc:
      	* configure.ac (gcc_cv_as_ld_jalr_reloc): Redirect grep stdout,
      	stderr to /dev/null instead of grep -q.
      	* configure: Regenerate.
      
      	contrib:
      	* dg-extract-results.sh: Redirect grep output to /dev/null instead
      	of grep -q.
      
      From-SVN: r159840
      Rainer Orth committed
    • Makefile.in (EXCEPT_H): Fix typo. · 245763e3
      gcc/ChangeLog:
      	* Makefile.in (EXCEPT_H): Fix typo.
      
      objc/ChangeLog:
      	* objc-act.h: Do not include gimple.h.
      	* objc-act.c: Do not include rtl.h, expr.h, libfuncs.h, and tm_p.h.
      	Include gimple.h.  Explain why except.h has to be included.
      	* objc-lang.c: Do not include diagnostics.h.
      	* Make-lang.in: Update dependencies.
      
      objcp/ChangeLog:
      	* objcp-decl.c: Do not include tm.h, rtl.h, expr.h, c-common.h,
      	flags.h, input.h, except.h, output.h, toplev.h, cpplib.h, debug.h,
      	and target.h.
      	* objcp-lang.c: Do not include tm.h, toplev.h, diagnostics.h,
      	and debug.h.  Explain why except.h has to be included.
      	* Make-lang.in: Update dependencies.
      
      cp/ChangeLog:
      	* cp-tree.h: Do not include splay-tree.h.
      	(struct prtmem_cst): Remove unused field and false comment.
      	* typeck.c: Do not include rtl.h, expr.h, and tm_p.h.
      	* optimize.c: Do not inclde rtl.h, insn-config.h, and integrate.h.
      	* init.c: Do not include rtl.h and expr.h.
      	* class.c: Do not include rtl.h.  Include splay-tree.h.
      	(build_clone): Use plain NULL instead of NULL_RTX.
      	* decl.c: Do not include expr.h.  Explain why rtl.h has to be
      	included.  Include splay-tree.h.
      	* method.c: Do not include rtl.h and expr.h.
      	(use_thunk): Use plain NULL instead of NULL_RTX.
      	* except.c: Do not include rtl.h, expr.h, and libfuncs.h.
      	* tree.c: Do not include rtl.h, insn-config.h, integrate.h,
      	and target.h.  Include splay-tree.h.
      	* expr.c: Do not include rtl.h and expr.h.
      	* pt.c: Do not include obstack.h and rtl.h.
      	(tsubst_friend_function): Use plain NULL instead of NULL_RTX.
      	(tsubst_decl): Likewise.
      	(instantiate_decl): Likewise.
      	* semantics.c: Do not include exprt.h and debug.h.  Explain why
      	rtl.h has to be included.
      	* decl2.c: Do not include rtl.h and expr.h.  Include splay-tree.h.
      	* call.c: Do not include rtl.h and expr.h.
      	* search.c: Do not include obstack.h and rtl.h.
      	* friend.c: Do not include rtl.h and expr.h.
      	* Make-lang.in: Update dependencies.
      
      From-SVN: r159839
      Steven Bosscher committed
    • re PR fortran/30668 (-fwhole-file should catch function of wrong type) · 30145da5
      gcc/fortran/:
      2010-05-25  Daniel Franke  <franke.daniel@gmail.com>
      
      	PR fortran/30668
      	PR fortran/31346
      	PR fortran/34260
      	* resolve.c (resolve_global_procedure): Add check for global
      	procedures with implicit interfaces and assumed-shape or optional
      	dummy arguments. Verify that function return type, kind and string
      	lengths match.
      
      gcc/testsuite/:
      2010-05-25  Daniel Franke  <franke.daniel@gmail.com>
      
      	PR fortran/30668
      	PR fortran/31346
      	PR fortran/34260
      	* gfortran.dg/pr40999.f: Fix function type.
      	* gfortran.dg/whole_file_5.f90: Likewise.
      	* gfortran.dg/whole_file_6.f90: Likewise.
      	* gfortran.dg/whole_file_16.f90: New.
      	* gfortran.dg/whole_file_17.f90: New.
      	* gfortran.dg/whole_file_18.f90: New.
      
      From-SVN: r159838
      Daniel Franke committed
    • mangle40.C: Adjust dg-require-alias syntax. · f80e2b00
      2010-05-25  Jack Howarth <howarth@bromo.med.uc.edu>
      	    Iain Sandoe  <iains@gcc.gnu.org>
      
      	* g++.dg/abi/mangle40.C: Adjust dg-require-alias syntax.
      	* gcc.c-torture/compile/pr44197.c: Require alias support.
      	* gcc.dg/lto/20081222_0.c: Ditto.
      
      
      Co-Authored-By: Iain Sandoe <iains@gcc.gnu.org>
      
      From-SVN: r159837
      Jack Howarth committed
    • lang.c (java_classify_record): Return RECORD_IS_INTERFACE for interfaces. · 1a17651b
      	* lang.c (java_classify_record): Return RECORD_IS_INTERFACE
      	for interfaces.
      
      From-SVN: r159835
      Jakub Jelinek committed
    • objc-act.c (objc_build_constructor): Adjust OBJCPLUS impedance mismatch code for VECs. · 263d02e2
      	* objc-act.c (objc_build_constructor): Adjust OBJCPLUS impedance
      	mismatch code for VECs.
      
      From-SVN: r159834
      Nathan Froyd committed
    • re PR libgcj/44216 (All libjava tests fail on IRIX 6.5: ld warns about -no-merge-exidx-entries) · 8352cbb4
      	PR libgcj/44216
      	* configure.ac (libgcj_cv_exidx): Enable AC_LANG_WERROR.
      	Save and restore werror flag.
      	* configure: Regenerate.
      
      From-SVN: r159833
      Rainer Orth committed
    • Rename misnamed test. · c3641fd7
      From-SVN: r159831
      Jakub Jelinek committed
    • ira-build.c (update_conflict_hard_reg_costs): New. · 4ac293e2
              * ira-build.c (update_conflict_hard_reg_costs): New.
              (ira_build): Call update_conflict_hard_reg_costs.
      
      From-SVN: r159830
      Vladimir Makarov committed
    • re PR debug/41371 (var-tracking is slow and memory hungry) · bb9862c6
      	PR debug/41371
      	* var-tracking.c (find_loc_in_1pdv): Guard asserts with
      	ENABLE_CHECKING.
      	(intersect_loc_chains): Walk the s2var's loc_chain together
      	with s1node chain as long as the locations are equal, don't
      	call find_loc_in_1pdv in that case.
      
      From-SVN: r159829
      Jakub Jelinek committed
    • re PR debug/43260 (Java static class members lack DWARF location info) · 6bb0a66a
      	PR debug/43260
      	* java-tree.h (pending_static_fields): New extern declaration.
      	(java_write_globals): New prototype.
      	* lang.c (LANG_HOOKS_WRITE_GLOBALS): Define.
      	* decl.c (java_mark_class_local): When clearing DECL_EXTERNAL
      	of a static field push it into pending_static_fields vector.
      	* class.c (pending_static_fields): New variable.
      	(add_field): If static field is not DECL_EXTERNAL, push it into
      	pending_static_fields vector.
      	(java_write_globals): New function.
      
      From-SVN: r159828
      Jakub Jelinek committed
    • re PR c++/18249 (C++ parser i18n problems) · 9602a7a9
      	PR c++/18249
      	* parser.c (non_integral_constant): Add NIC_NONE.
      	(required_token): Add RT_NONE.
      	(cp_parser_unary_expression): Initialize non_constant_p
      	to NIC_NONE.
      	(cp_parser_asm_definition): Initialize missing to RT_NONE.
      	(cp_parser_primary_expression, cp_parser_postfix_expression,
      	cp_parser_cast_expression, cp_parser_binary_expression,
      	cp_parser_functional_cast): Fix formatting.
      
      From-SVN: r159827
      Jakub Jelinek committed
    • re PR debug/42801 (C VLAs should use DW_AT_allocated) · 60a5d78a
      	PR debug/42801
      	* tree-inline.c (remap_decls): Remap DECL_VALUE_EXPR here...
      	(copy_bind_expr): ... instead of here.
      	(copy_tree_body_r): If id->remapping_type_depth clear TREE_BLOCK
      	if the block hasn't been remapped.
      	* dwarf2out.c (gen_formal_parameter_die, gen_variable_die): When
      	emitting concrete instance of abstract VLA, add DW_AT_type attribute.
      
      	* gcc.dg/guality/sra-2.c: New test.
      
      From-SVN: r159826
      Jakub Jelinek committed
    • re PR middle-end/44069 (optimization bug initializing from cast array) · c946a318
      2010-05-25  Richard Guenther  <rguenther@suse.de>
      
      	PR middle-end/44069
      	* gimple-fold.c (maybe_fold_stmt_addition): Avoid generating
      	out-of-bounds array accesses.
      
      	* g++.dg/torture/pr44069.C: New testcase.
      
      From-SVN: r159824
      Richard Guenther committed