1. 05 Jun, 2010 22 commits
  2. 04 Jun, 2010 18 commits
    • jason's avatar
      * pt.c (value_dependent_expression_p) [NOEXCEPT_EXPR]: Avoid · 3dbd9723
      jason authored
      	using an uninitialized variable.
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@160300 138bc75d-0d04-0410-961f-82ee72b054a4
      3dbd9723
    • jason's avatar
      * cxx-pretty-print.c (pp_cxx_unary_expression): Handle NOEXCEPT_EXPR. · 07144145
      jason authored
      	(pp_cxx_expression): Likewise.
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@160299 138bc75d-0d04-0410-961f-82ee72b054a4
      07144145
    • jason's avatar
      Implement noexcept-specification (15.4) · 3644efa5
      jason authored
      	* parser.c (cp_parser_exception_specification_opt): Parse it.
      	Give -Wdeprecated warning about throw() specs.
      	* pt.c (tsubst_exception_specification): Handle it.
      	* error.c (dump_exception_spec): Handle it.
      	* cxx-pretty-print.c (pp_cxx_exception_specification): Likewise.
      	* typeck.c (comp_except_specs): Handle compatibility rules.
      	Change exact parm to take an enum.
      	* typeck2.c (merge_exception_specifiers): Handle noexcept.
      	* except.c (nothrow_spec_p, type_noexcept_p): New fns.
      	(type_throw_all_p, build_noexcept_spec): New fns.
      	* cp-tree.h (TYPE_NOTHROW_P, TYPE_NOEXCEPT_P): Use them.
      	(comp_except_specs): Define ce_derived, ce_normal, ce_exact enums.
      	(cp_tree_index): Add CPTI_NOEXCEPT_TRUE_SPEC, CPTI_NOEXCEPT_FALSE_SPEC.
      	(noexcept_true_spec, noexcept_false_spec): New macros.
      	* name-lookup.c (pushdecl_maybe_friend): Adjust.
      	* search.c (check_final_overrider): Adjust.
      	* decl.c (check_redeclaration_exception_specification): Adjust.
      	(use_eh_spec_block): Use type_throw_all_p.
      	(cxx_init_decl_processing): Set noexcept_false_spec,noexcept_true_spec.
      	Give operator new a noexcept-specification in C++0x mode.
      	* tree.c (build_exception_variant, cxx_type_hash_eq): Adjust.
      	(cp_build_type_attribute_variant): Don't test TYPE_RAISES_EXCEPTIONS.
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@160298 138bc75d-0d04-0410-961f-82ee72b054a4
      3644efa5
    • jason's avatar
      Implement noexcept operator (5.3.7) · 98fe9664
      jason authored
      	* c-common.c (c_common_reswords): Add noexcept.
      	* c-common.h (enum rid): Add RID_NOEXCEPT.
      cp/
      	* cp-tree.def (NOEXCEPT_EXPR): New.
      	* except.c (check_noexcept_r, finish_noexcept_expr): New.
      	* cp-tree.h: Declare finish_noexcept_expr.
      	* parser.c (cp_parser_unary_expression): Parse noexcept-expression.
      	* pt.c (tsubst_copy_and_build): And tsubst it.
      	(type_dependent_expression_p): Handle it.
      	(value_dependent_expression_p): Handle it.
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@160297 138bc75d-0d04-0410-961f-82ee72b054a4
      98fe9664
    • jason's avatar
      * call.c (build_conditional_expr): Never fold in unevaluated context. · c0f83203
      jason authored
      	* tree.c (build_aggr_init_expr): Propagate TREE_NOTHROW.
      	* semantics.c (simplify_aggr_init_expr): Likewise.
      	* typeck.c (merge_types): Call merge_exception_specifiers.
      	* decl.c (duplicate_decls): Check DECL_SOURCE_LOCATION rather than
      	DECL_ANTICIPATED for preferring new type.
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@160296 138bc75d-0d04-0410-961f-82ee72b054a4
      c0f83203
    • jsm28's avatar
      * config/darwin-driver.c (darwin_default_min_version): Use · a8c464ac
      jsm28 authored
      	* GCC-specific formats in diagnostics.
      	* cppspec.c (lang_specific_driver): Use GCC-specific formats in
      	diagnostics.
      	* gcc.c (translate_options, read_specs, add_sysrooted_prefix,
      	execute, process_command, end_going_arg, do_self_spec, do_spec_1,
      	eval_spec_function, handle_braces, process_brace_body, main,
      	perror_with_name, used_arg, set_multilib_dir, print_multilib_info,
      	getenv_spec_function, compare_version_strings,
      	version_compare_spec_function): Use GCC-specific formats in
      	diagnostics.
      
      cp:
      	* g++spec.c (lang_specific_driver): Use GCC-specific formats in
      	diagnostics.
      
      fortran:
      	* gfortranspec.c (append_arg, lang_specific_driver): Use
      	GCC-specific formats in diagnostics.
      
      java:
      	* jvspec.c (lang_specific_driver): Use GCC-specific formats in
      	diagnostics.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@160292 138bc75d-0d04-0410-961f-82ee72b054a4
      a8c464ac
    • jakub's avatar
      PR c++/44412 · 35f2d7a7
      jakub authored
      	* typeck.c (build_class_member_access_expr): Call mark_exp_read
      	on object for static data members.
      
      	* g++.dg/warn/Wunused-var-10.C: New test.
      	* g++.dg/warn/Wunused-var-11.C: New test.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@160290 138bc75d-0d04-0410-961f-82ee72b054a4
      35f2d7a7
    • jakub's avatar
      PR c++/44362 · f6a0d96c
      jakub authored
      	* call.c (build_conditional_expr): If both arg2 and arg3 are lvalues
      	with the same type, call mark_lvalue_use on both.
      
      	* c-c++-common/Wunused-var-10.c: New test.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@160289 138bc75d-0d04-0410-961f-82ee72b054a4
      f6a0d96c
    • uros's avatar
      * config/i386/i386.md (*addhi_1_lea) <TYPE_INCDEC, default>: Assert · 347edd95
      uros authored
      	that operand 0 and operand 1 are equal.
      	(*addqi_1_lea) <TYPE_INCDEC, default>: Ditto.
      	(*add<mode>_2) <TYPE_INCDEC>: Remove assert that operand 0
      	and operand 1 are equal.
      	<default>: Ditto. Remove ??? comment.
      	(*add<mode>_3) <TYPE_INCDEC>: Remove assert that operand 0
      	and operand 1 are equal.
      	<default>: Ditto. Remove ??? comment.
      	(*adddi_4) <default>:  Remove assert that operand 0 and operand 1
      	are equal.
      	(*add<mode>_4) <default>: Ditto.
      	(*add<mode>_5) <TYPE_INCDEC, default>: Ditto.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@160287 138bc75d-0d04-0410-961f-82ee72b054a4
      347edd95
    • froydnj's avatar
      * config/i386/i386-protos.h (ix86_print_operand): Declare. · 99b6f860
      froydnj authored
      	* config/i386/i386.c (ix86_print_operand): Make non-static.
      	* config/i386/sol2.h (ASM_OUTPUT_CALL): Call ix86_print_operand.
      	* output.h (output_operand): Declare.
      	* final.c (output_operand): Make non-static.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@160286 138bc75d-0d04-0410-961f-82ee72b054a4
      99b6f860
    • jakub's avatar
      PR rtl-optimization/44013 · 3e0431fe
      jakub authored
      	* sched-deps.c (add_dependence_list_and_free): Don't free lists
      	when processing debug insns.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@160281 138bc75d-0d04-0410-961f-82ee72b054a4
      3e0431fe
    • jakub's avatar
      PR debug/41371 · 685ead0b
      jakub authored
      	* var-tracking.c (find_loc_in_1pdv): Mark initial value before
      	recursing.  Check that recursion is bounded.  Rename inner var
      	to avoid hiding incoming argument.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@160280 138bc75d-0d04-0410-961f-82ee72b054a4
      685ead0b
    • uros's avatar
      * config/i386/i386.md (*addqi_2): Do not assert operands[2] == 255 · 6f8be845
      uros authored
      	for TYPE_INCDEC operands.
      	(*addqi_3): Ditto.
      	(*addqi_4): Ditto.
      	(*addqi_5): Ditto.
      	(*addqi_ext_1_rex64): Ditto.
      	(*addqi_ext_1): Ditto.
      
      	(*addqi_4): Check for incdec_operand in QImode.
      
      	(*add<mode>_2): Macroize insn from *add<mode>_2 and *add{qi,hi}_2
      	using SWI mode iterator.
      	(*add<mode>_3): Ditto from *add<mode>_3 and *add{qi,hi}_3.
      	(*add<mode>_4): Macroize insn from *add{qi,hi,si}_4 using SWI124
      	mode iterator.
      	(*add<mode>_5): Macroize insn from *add<mode>_5 and *add{qi,hi}_5
      	using SWI mode iterator.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@160277 138bc75d-0d04-0410-961f-82ee72b054a4
      6f8be845
    • manu's avatar
      2010-06-04 Manuel López-Ibáñez <manu@gcc.gnu.org> · 754eb2f5
      manu authored
      	PR c/25880
      	* c-objc-common.c (c_tree_printer): Handle %V, %v and %#v.
      	* c-format.c (gcc_diag_flag_specs): Add hash.
      	(gcc_cxxdiag_flag_specs): Use gcc_diag_flag_specs directly.
      	(gcc_tdiag_char_table,gcc_cdiag_char_table): Handle %V and %v.
      	* c-pretty-print.c (pp_c_cv_qualifier): Rename as
      	pp_c_cv_qualifiers. Handle qualifiers spelling here.
      	(pp_c_type_qualifier_list): Call the function above.
      	* c-pretty-print.h (pp_c_cv_qualifiers): Declare.
      	* c-typeck.c (handle_warn_cast_qual): Print qualifiers.
      	(WARN_FOR_QUALIFIERS): New macro.
      	(convert_for_assignment): Use it.
      testsuite/
      	* gcc.dg/assign-warn-2.c: Update.
      	* gcc.dg/cpp/line3.c: Update.
      	* gcc.dg/c99-array-lval-8.c: Update.
      	* gcc.dg/cast-qual-2.c: Update.
      	* gcc.dg/c99-arraydecl-3.c:  Update.
      	* gcc.dg/assign-warn-1.c:  Update.
      	* gcc.dg/format/gcc_diag-1.c:  Update.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@160274 138bc75d-0d04-0410-961f-82ee72b054a4
      754eb2f5
    • ktietz's avatar
      2010-06-04 Kai Tietz <kai.tietz@onevision.com> · f7656ceb
      ktietz authored
              * config/i386/cygming.h (ASM_GENERATE_INTERNAL_LABEL): Prefix
              by '*'.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@160272 138bc75d-0d04-0410-961f-82ee72b054a4
      f7656ceb
    • hubicka's avatar
      · f53d14b1
      hubicka authored
      	* df.h (df_rd_bb_info, df_md_bb_info, df_lr_bb_info, df_live_bb_info,
      	df_byte_lr_bb_info): Embedd bitmap_head into the structure.
      	(DF_LIVE_IN, DF_LIVE_OUT, DF_LR_IN, DF_LR_OUT, DF_BYTE_LR_IN,
      	DF_BYTE_LR_OUT): Update for embedded bitmaps.
      	* fwprop.c (single_def_use_enter_block): Likewise.
      	* ddg.c (create_ddg_dep_from_intra_loop_link,
      	add_cross_iteration_register_deps, build_inter_loop_deps): Likewise.
      	* loop-iv.c (latch_dominating_def): Likewise.
      	* df-problems.c (df_rd_free_bb_info, df_rd_alloc,
      	df_rd_bb_local_compute_process_def, df_rd_bb_local_compute_process_def,
      	df_rd_init_solution, df_rd_init_solution, df_rd_transfer_function,
      	df_rd_transfer_function, df_rd_top_dump,
      	df_rd_bottom_dump): Update.
      	(df_lr_free_bb_info, df_lr_alloc, df_lr_reset, df_lr_bb_local_compute,
      	df_lr_bb_local_compute, df_lr_bb_local_compute, df_lr_bb_local_compute,
      	df_lr_bb_local_compute, df_lr_local_compute, df_lr_init, df_lr_init,
      	df_lr_confluence_0, df_lr_free, df_lr_top_dump, df_lr_bottom_dump,
      	df_lr_verify_solution_start, df_lr_verify_solution_end,
      	df_lr_verify_transfer_functions, df_lr_verify_transfer_functions,
      	df_live_free_bb_info, df_live_alloc, df_live_reset,
      	df_live_bb_local_compute, df_live_init, df_live_transfer_function,
      	df_live_finalize, df_live_free, df_live_top_dump, df_live_bottom_dump,
      	df_live_verify_solution_start, df_live_verify_solution_end,
      	df_live_verify_transfer_functions, df_chain_create_bb,
      	df_byte_lr_free_bb_info, df_byte_lr_alloc, df_byte_lr_reset,
      	df_byte_lr_bb_local_compute, df_byte_lr_bb_local_compute,
      	df_byte_lr_bb_local_compute, df_byte_lr_bb_local_compute,
      	df_byte_lr_bb_local_compute, df_byte_lr_local_compute, df_byte_lr_init,
      	df_byte_lr_confluence_0, df_byte_lr_confluence_n,
      	df_byte_lr_transfer_function, df_byte_lr_top_dump,
      	df_byte_lr_bottom_dump, df_create_unused_note,
      	df_note_bb_compute, df_md_free_bb_info, df_md_alloc,
      	df_md_bb_local_compute_process_def, df_md_local_compute, df_md_reset,
      	df_md_transfer_function, df_md_init, df_md_confluence_0,
      	df_md_confluence_n,
      	df_md_top_dump, df_md_bottom_dump): Update.  (struct df_lr_problem_data):
      	Embedd bitmap headers.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@160268 138bc75d-0d04-0410-961f-82ee72b054a4
      f53d14b1
    • ro's avatar
      libjava/classpath: · 80adfc2d
      ro authored
      	* scripts/check_jni_methods.sh.in: Don't use diff -U.
      	Adapt grep regex, ignore file and problem message.
      
      	contrib:
      	* test_summary: Don't use diff -u.
      	Adapt egrep regex.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@160264 138bc75d-0d04-0410-961f-82ee72b054a4
      80adfc2d
    • hubicka's avatar
      * dce.c (dce_process_block): Do not re-scan already marked instructions. · cbc39d5b
      hubicka authored
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@160262 138bc75d-0d04-0410-961f-82ee72b054a4
      cbc39d5b