1. 01 Apr, 2013 11 commits
    • re PR c++/56794 (C++11 Error in range-based for with parameter pack array) · 570e2ca0
      	PR c++/56794
      	* parser.c (cp_parser_range_for): Don't try to do auto deduction
      	in a template if the type of the range is incomplete.
      
      From-SVN: r197324
      Jason Merrill committed
    • re PR fortran/56660 (Fails to read NAMELIST with certain form array syntax) · 123d7a94
      2013-04-01  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
      
      	PR fortran/56660
      	* gfortran.dg/namelist_82.f90:  New test.
      
      From-SVN: r197322
      Jerry DeLisle committed
    • re PR fortran/56660 (Fails to read NAMELIST with certain form array syntax) · ba829325
      2013-04-01  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
      
      	PR libfortran/56660
      	* io/list_read.c (nml_read_obj): Do not reset the read error flag
      	inside nml_read_obj. If the read error flag is found set just exit.
      	Fix some whitespace on comments.
      	(nml_read_obj_data): Reset the read error flag before the first call
      	to nml_read_object.
      
      From-SVN: r197321
      Jerry DeLisle committed
    • call.c (add_function_candidate): Take the address of 'this' here. · a7175123
      	* call.c (add_function_candidate): Take the address of 'this' here.
      	(build_over_call): And here.
      	(build_new_method_call_1, build_op_call_1): Not here.
      	(build_user_type_conversion_1): Or here.
      	(add_candidates): Adjust.
      
      From-SVN: r197317
      Jason Merrill committed
    • cxx-pretty-print.h (pp_cxx_cv_qualifiers): New. · c4101929
      	* cxx-pretty-print.h (pp_cxx_cv_qualifiers): New.
      	* class.c (same_signature_p): Use type_memfn_quals.
      	* cp-tree.h (TYPE_RAISES_EXCEPTIONS): Use
      	FUNCTION_OR_METHOD_TYPE_CHECK.
      	* error.c (dump_type_suffix): Add padding before cv-qualifiers.
      	* pt.c (unify): Use static_fn_type.
      
      From-SVN: r197316
      Jason Merrill committed
    • Implement N2439 (ref-qualifiers for 'this') · 2eed8e37
      	Implement N2439 (ref-qualifiers for 'this')
      	* cp-tree.h (FUNCTION_REF_QUALIFIED): New.
      	(FUNCTION_RVALUE_QUALIFIED): New.
      	(FUNCTION_OR_METHOD_TYPE_CHECK): New.
      	(cpp0x_warn_str): Add CPP0X_REF_QUALIFIER.
      	(cp_ref_qualifier): New enum.
      	(cp_declarator): Add ref_qualifier.
      	* parser.c (cp_parser_ref_qualifier_seq_opt): New.
      	(cp_parser_direct_declarator): Use it.
      	(make_call_declarator): Adjust.
      	(cp_parser_lambda_declarator_opt): Adjust.
      	* call.c (add_function_candidate): Handle ref-qualifier overload
      	resolution semantics.
      	(standard_conversion): Adjust.
      	* class.c (add_method, same_signature_p): Compare ref-qualifiers.
      	* decl.c (grokdeclarator): Handle ref-qualifiers.
      	(grokfndecl): Check for invalid ref-qualifiers.
      	(static_fn_type, revert_static_member_fn): Adjust.
      	* decl2.c (build_memfn_type): Handle ref-qualifiers.
      	(check_classfn): Check them.
      	(cp_reconstruct_complex_type): Retain them.
      	* error.c (dump_ref_qualifier): New.
      	(dump_type_suffix, dump_function_decl): Use it.
      	(maybe_warn_cpp0x): Handle CPP0X_REF_QUALIFIER.
      	* pt.c (tsubst, tsubst_function_type): Instantiate ref-quals.
      	(unify): Retain them.
      	* tree.c (cp_check_qualified_type): New.
      	(cp_build_qualified_type_real): Keep exception spec and ref-qual.
      	(build_ref_qualified_type): New.
      	(strip_typedefs, build_exception_variant): Keep ref-qualifier.
      	(cp_build_type_attribute_variant): Keep ref-qualifier.
      	* typeck.c (merge_types): Keep ref-qualifier.
      	(structural_comptypes): Compare ref-qualifier.
      	(type_memfn_rqual): New.
      	(apply_memfn_quals): Take ref-qual argument.
      	* typeck2.c (build_m_component_ref): Check ref-qualifier.
      
      Co-Authored-By: Jason Merrill <jason@redhat.com>
      
      From-SVN: r197315
      Bronek Kozicki committed
    • cp-tree.h (DECL_UNBOUND_CLASS_TEMPLATE_P): Remove. · 5bc08e85
      2013-04-01  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* cp-tree.h (DECL_UNBOUND_CLASS_TEMPLATE_P): Remove.
      	(DECL_FUNCTION_TEMPLATE_P): Adjust.
      
      	* cxx-pretty-print.c (pp_cxx_nested_name_specifier,
      	pp_cxx_qualified_id): Use get_containing_scope.
      	* parser.c (cp_parser_class_head): Likewise.
      	* pt.c (push_template_decl_real): Likewise.
      
      	* decl2.c (import_export_decl): Use DECL_TEMPLOID_INSTANTIATION.
      	* pt.c (unify): Use CP_INTEGRAL_TYPE_P.
      
      From-SVN: r197309
      Paolo Carlini committed
    • i386.md (*ashl<mode>3_mask): Rewrite as define_insn. · 136fb3f7
      2013-04-01  Wei Mi  <wmi@google.com>
      
              * config/i386/i386.md (*ashl<mode>3_mask): Rewrite as define_insn.
              Truncate operand 2 using %b asm operand modifier.
              (*<shift_insn><mode>3_mask): Ditto.
              (*<rotate_insn><mode>3_mask): Ditto.
      
      From-SVN: r197308
      Wei Mi committed
    • re PR middle-end/56798 (ICE in patch_jump_insn, at cfgrtl.c:1238) · 6388c738
      
      	PR middle-end/56798
      	* cfgbuild.c (inside_basic_block_p): Restore check broken at r197234.
      
      From-SVN: r197307
      Steven Bosscher committed
    • re PR fortran/56500 ([OOP] "IMPLICIT CLASS(...)" wrongly rejected) · c03e6b52
      2013-04-01  Janus Weil  <janus@gcc.gnu.org>
      
      	PR fortran/56500
      	* symbol.c (gfc_set_default_type): Build class container for
      	IMPLICIT CLASS.
      
      2013-04-01  Janus Weil  <janus@gcc.gnu.org>
      
      	PR fortran/56500
      	* gfortran.dg/implicit_class_1.f90: New.
      
      From-SVN: r197306
      Janus Weil committed
    • Daily bump. · 5717a8d4
      From-SVN: r197295
      GCC Administrator committed
  2. 31 Mar, 2013 8 commits
    • re PR libfortran/56786 (Namelist read fails with designators containing embedded spaces) · 5ae7dac5
      2013-03-31  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
      
      	PR fortran/56786
      	* gfortran.dg/namelist_81.f90:  New test.
      
      From-SVN: r197291
      Jerry DeLisle committed
    • re PR libfortran/56786 (Namelist read fails with designators containing embedded spaces) · 83437e67
      2013-03-31  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
      
      	PR libfortran/56786
      	* io/list_read.c (nml_parse_qualifier): Remove spurious next_char call
      	when checking for EOF. Use error return mechanism when EOF detected.
      	Do not return false unless parse_err_msg and parse_err_msg_size have
      	been set. Use hit_eof.
      	(nml_get_obj_data): Likewise use the correct error mechanism.
      	* io/transfer.c (hit_eof): Do not set AFTER_ENDFILE if in namelist
      	mode.
      
      From-SVN: r197290
      Jerry DeLisle committed
    • * de.po: Update. · ce1731f4
      From-SVN: r197287
      Joseph Myers committed
    • sh.md (casesi_worker_1): Use next_active_insn instead of next_real_insn. · f7a4d826
      	* config/sh/sh.md (casesi_worker_1): Use next_active_insn instead
      	of next_real_insn.
      	(casesi_worker_2, casesi_shift_media, casesi_load_media): Likewise.
      
      From-SVN: r197285
      Kaz Kojima committed
    • allocator.xml: Adjust link to Dr.Dobb's article.q · 8bebe0af
      	* doc/xml/manual/allocator.xml: Adjust link to Dr.Dobb's article.q
      
      	* doc/xml/manual/appendix_contributing.xml: Adjust link to GNU
      	Coding Standards.
      
      	* doc/xml/manual/debug.xml: Adjust link for ThreadSanitizer.
      
      	* doc/xml/manual/debug_mode.xml: Adjust link for SafeSTL.
      
      	* doc/xml/manual/documentation_hacking.xml: Adjust Doxygen link.
      
      	* doc/xml/manual/messages.xml: Adjust link to Java API specs.
      
      	* doc/xml/manual/policy_data_structures: Remove direct link to
      	IBM Haifa Research Labs.
      
      	* doc/xml/manual/policy_data_structures_biblio.xml: Adjust links
      	for biblio.maverik_lowerbounds and biblio.nelson96stlpq.
      	Remove direct link to IBM Haifa Research Labs.
      
      	* doc/xml/manual/profile_mode.xml: Adjust two links to acm.org
      	papers.
      
      	* doc/xml/manual/shared_ptr.xml: Use canonical address for
      	www.boost.org.
      
      From-SVN: r197284
      Gerald Pfeifer committed
    • decl2.c (collect_candidates_for_java_method_aliases): Use DECL_CLASS_SCOPE_P. · 9ededfc5
      2013-03-31  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* decl2.c (collect_candidates_for_java_method_aliases): Use
      	DECL_CLASS_SCOPE_P.
      	* name-lookup.c (pushtag_1) Use TYPE_FUNCTION_SCOPE_P.
      	(pushdecl_maybe_friend_1): Use DECL_DECLARES_FUNCTION_P.
      	* decl.c (duplicate_decls): Likewise.
      	* parser.c (cp_parser_template_declaration_after_export): Likewise,
      	also DECL_DECLARES_TYPE_P.
      	* pt.c (instantiate_class_template_1): Likewise.
      	* search.c (lookup_field_1): Use DECL_DECLARES_TYPE_P.
      	(lookup_field_r): Likewise.
      	(friend_accessible_p): Use DECL_DECLARES_FUNCTION_P.
      	(lookup_fnfields_slot_nolazy): Likewise.
      	* semantics.c (finish_member_declaration): Likewise.
      	* typeck.c (convert_for_initialization): Use TYPE_REFFN_P.
      
      From-SVN: r197283
      Paolo Carlini committed
    • 2013-03-31 Tobias Burnus <burnus@net-b.de> · cbde6c0f
              * class.c (finalization_scalarizer,
              * finalizer_insert_packed_call,
              generate_finalization_wrapper): Avoid segfault with absent SIZE=
              argment to TRANSFER and use correct result kind for SIZE.
              * intrinsic.c (gfc_isym_id_by_intmod): Also handle ids of
              nonmodules.
              * trans.c (gfc_build_final_call): Handle coarrays.
      
      From-SVN: r197281
      Tobias Burnus committed
    • Daily bump. · a38b34f1
      From-SVN: r197276
      GCC Administrator committed
  3. 30 Mar, 2013 9 commits
    • In dse.c, remove alias hash tables that are never set. · 4b943a49
      Remove conditions that are then never true.
      Remove functions that are then never called.
      Remove variables that are then never read.
      
      
      Index: gcc/ChangeLog
      
      2013-03-29  Lawrence Crowl  <crowl@google.com>
      
      	* dse.c (clear_alias_sets): Remove never set.
      	(disqualified_clear_alias_sets): Remove never set.
      	(clear_alias_mode_pool): Remove never set.
      	(dse_step0): Remove condition that is never true.
      	(canon_address): Remove condition that is never true.
      	(dse_step7): Remove condition that is never true.
      	(rest_of_handle_dse): Remove condition that is never true.
      	(rest_of_handle_dse::did_global): Remove never read from above.
      	(dse_step2_spill): Remove never called from above.
      	(dse_step5_spill): Remove never called from above.
      
      From-SVN: r197272
      Lawrence Crowl committed
    • * vi.po: Update. · 624e9b1f
      From-SVN: r197270
      Joseph Myers committed
    • md.texi (Standard Names): Update documentation for JUMP_TABLE_DATA changes. · da5c6bde
      
      	* doc/md.texi (Standard Names) <casesi>: Update documentation for
      	JUMP_TABLE_DATA changes.
      	* doc/tm.texi.in (Dispatch Tables) <ASM_OUTPUT_CASE_LABEL>: Likewise.
      	* doc/rtl.texi (Flags) <INSN_DELETED_P, SCHED_GROUP_P>: Likewise.
      	(Insns) <jump_table_data>: New entry.
      	* doc/tm.texi: Regenerate.
      
      From-SVN: r197267
      Steven Bosscher committed
    • cfgrtl.c (fixup_reorder_chain): Do not emit barriers to BB_FOOTER. · 39718607
      
      	* cfgrtl.c (fixup_reorder_chain): Do not emit barriers to BB_FOOTER.
      
      	* postreload-gcse.c (bb_has_well_behaved_predecessors): Correct test
      	for table jump at the end of a basic block using tablejump_p.
      	* targhooks.c (default_invalid_within_doloop): Likewise.
      	* config/rs6000/rs6000.c (TARGET_INVALID_WITHIN_DOLOOP): Remove
      	target hook implementation that is identical to the default hook.
      	(rs6000_invalid_within_doloop): Remove.
      
      	* bb-reorder.c (fix_crossing_unconditional_branches): Remove set but
      	unused variable from tablejump_p call.
      
      	* rtl.def (JUMP_TABLE_DATA): New RTX_INSN object.
      	* rtl.h (RTX_PREV, RTX_NEXT): Adjust for new JUMP_TABLE_DATA.
      	(INSN_DELETED_P): Likewise.
      	(emit_jump_table_data): New prototype.
      	* gengtype.c (adjust_field_rtx_def): Handle JUMP_TABLE_DATA fields
      	after 4th as unused.
      	* print-rtl.c (print_rtl): Handle JUMP_TABLE_DATA.
      	* sched-vis.c (print_insn): Likewise.
      	* emit-rtl.c (active_insn_p): Consider JUMP_TABLE_DATA an active
      	insn for compatibility with back ends that use next_active_insn to
      	identify jump table data.
      	(set_insn_deleted): Remove no longer useful JUMP_TABLE_DATA_P check.
      	(remove_insn): Likewise.
      	(emit_insn): Do not accept JUMP_TABLE_DATA objects in insn chains
      	to be emitted.
      	(emit_debug_insn, emit_jump_insn, emit_call_insn, emit_label): Idem.
      	(emit_jump_table_data): New function.
      
      	* cfgbuild.c (inside_basic_block_p): A JUMP_INSN is always inside a
      	basic block, a JUMP_TABLE_DATA never is.
      	(control_flow_insn_p): JUMP_TABLE_DATA is not a control flow insn.
      	* cfgrtl.c (duplicate_insn_chain): Split handling of JUMP_TABLE_DATA
      	off from code handling real insns.
      	* final.c (get_attr_length_1): Simplify for JUMP_INSNs.
      	* function.c (instantiate_virtual_regs): Remove JUMP_TABLE_DATA_P
      	test, now redundant because JUMP_TABLE_DATA is not an INSN_P insn.
      	* gcse.c (insert_insn_end_basic_block): Likewise, JUMP_TABLE_DATA_P
      	is not a NONDEBUG_INSN_P.
      	* ira-costs.c (scan_one_insn): Likewise.
      	* jump.c (mark_all_labels): Likewise.
      	(mark_jump_label_1): Likewise.
      	* lra-eliminations.c (eliminate_regs_in_insn): Likewise.
      	* lra.c (get_insn_freq): Expect all insns reaching here to be in
      	a basic block.
      	(check_rtl): Remove JUMP_TABLE_DATA_P test, not a NONDEBUG_INSN_P insn.
      	* predict.c (expensive_function_p): Use FOR_BB_INSNS.
      	* reload1.c (calculate_needs_all_insns): Call set_label_offsets for
      	JUMP_TABLE_DATA_P insns.
      	(calculate_elim_costs_all_insns): Likewise.
      	(set_label_offsets): Recurse on the PATTERN of JUMP_TABLE_DATA insns.
      	(elimination_costs_in_insn): Remove redundant JUMP_TABLE_DATA_P test.
      	(delete_output_reload): Code style fixups.
      	* reorg.c (dbr_schedule): Move JUMP_TABLE_DATA_P up to avoid setting
      	insn flags on this non-insn.
      	* sched-rgn.c (add_branch_dependences): Treat JUMP_TABLE_DATA insns
      	as scheduling barriers, for pre-change compatibility.
      	* stmt.c (emit_case_dispatch_table): Emit jump table data not as
      	JUMP_INSN objects but instead as JUMP_TABLE_DATA objects.
      
      	* config/alpha/alpha.c (alpha_does_function_need_gp): Remove
      	redundant JUMP_TABLE_DATA_P test.
      	* config/arm/arm.c (thumb_far_jump_used_p): Likewise.
      	* config/frv/frv.c (frv_function_contains_far_jump): Likewise.
      	(frv_for_each_packet): Likewise.
      	* config/i386/i386.c (min_insn_size): Likewise.
      	(ix86_avoid_jump_mispredicts): Likewise.
      	* config/m32r/m32r.c (m32r_is_insn): Likewise.
      	* config/mep/mep.c (mep_reorg_erepeat): Likewise.
      	* config/mips/mips.c (USEFUL_INSN_P): Likewise.
      	(mips16_insn_length): Robustify.
      	(mips_has_long_branch_p): Remove redundant JUMP_TABLE_DATA_P test.
      	(mips16_split_long_branches): Likewise.
      	* config/pa/pa.c (pa_combine_instructions): Likewise.
      	* config/rs6000/rs6000.c (get_next_active_insn): Treat
      	JUMP_TABLE_DATA objects as active insns, like in active_insn_p.
      	* config/s390/s390.c (s390_chunkify_start): Treat JUMP_TABLE_DATA
      	as contributing to pool range lengths.
      	* config/sh/sh.c (find_barrier): Restore check for ADDR_DIFF_VEC.
      	Remove redundant JUMP_TABLE_DATA_P test.
      	(sh_loop_align): Likewise.
      	(split_branches): Likewise.
      	(sh_insn_length_adjustment): Likewise.
      	* config/spu/spu.c (get_branch_target): Likewise.
      
      From-SVN: r197266
      Steven Bosscher committed
    • Makefile.def (target_modules): Don't install libffi. · 6ab7e76a
      2013-03-30  Matthias Klose  <doko@ubuntu.com>
      
              * Makefile.def (target_modules): Don't install libffi.
              * Makefile.in: Regenerate.
      
      From-SVN: r197264
      Matthias Klose committed
    • ChangeLog: Add commit message from rev. · 244fdda0
      2013-03-30  Thomas Koenig  <tkoenig@gcc.gnu.org>
      
      	* fortran/ChangeLog:  Add commit message from rev. 197261
      	* testsuite/ChangeLog:  Likewise.
      
      From-SVN: r197262
      Thomas Koenig committed
    • trans-expr.c (build_memcmp_call): New function. · 01446eb8
      2013-03-30  Thomas Koenig  <tkoenig@gcc.gnu.org>
      
      	* trans-expr.c (build_memcmp_call):  New function.
      	(gfc_build_compare_string):  If the strings
      	compared have constant and equal lengths and
      	the strings are kind=1, or, for kind=4 strings,
      	the test is for (in)equality, use memcmp().
      
      2013-03-30  Thomas Koenig  <tkoenig@gcc.gnu.org>
      
      	* gfortran.dg/character_comparison_3.f90:  Adjust for use of memcmp
      	for constant and equal string lengths.
      	* gfortran.dg/character_comparison_5.f90:  Likewise.
      	* gfortran.dg/character_comparison_9.f90:  New test.
      
      From-SVN: r197261
      Thomas Koenig committed
    • pt.c (template_parms_to_args): Fix typo in comment. · 03295121
      	* pt.c (template_parms_to_args): Fix typo in comment.
      
      From-SVN: r197259
      Gabriel Dos Reis committed
    • Daily bump. · 33c22f4a
      From-SVN: r197257
      GCC Administrator committed
  4. 29 Mar, 2013 12 commits
    • call.c (build_op_call_1): Use TYPE_PTRFN_P and TYPE_REFFN_P. · 5950480c
      2013-03-29  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* call.c (build_op_call_1): Use TYPE_PTRFN_P and TYPE_REFFN_P.
      
      From-SVN: r197253
      Paolo Carlini committed
    • re PR fortran/35203 (OPTIONAL, VALUE actual argument cannot be an INTEGER 0) · 60f97ac8
      2013-03-29  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/35203
              * trans-decl.c (create_function_arglist): Pass hidden argument
              for passed-by-value optional+value dummies.
              * trans-expr.c (gfc_conv_expr_present,
              gfc_conv_procedure_call): Handle those.
      
      2013-03-29  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/35203
              * gfortran.dg/optional_absent_3.f90: New.
      
      From-SVN: r197252
      Tobias Burnus committed
    • call.c (add_builtin_candidate): Use TYPE_PTR_P and VOID_TYPE_P. · 50e10fa8
      2013-03-29  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* call.c (add_builtin_candidate): Use TYPE_PTR_P and VOID_TYPE_P.
      	(build_op_call_1): Likewise.
      	(build_over_call): Likewise.
      	(compare_ics): Likewise.
      	* class.c (build_base_path): Likewise.
      	(resolve_address_of_overloaded_function): Likewise.
      	* cp-tree.h: Likewise.
      	* cvt.c (cp_convert_to_pointer): Likewise.
      	(convert_to_reference): Likewise.
      	(ocp_convert): Likewise.
      	(convert_force): Likewise, tidy.
      	* cxx-pretty-print.c (pp_cxx_postfix_expression): Likewise.
      	(pp_cxx_ptr_operator): Likewise.
      	* decl.c (duplicate_decls): Likewise.
      	(start_decl): Likewise.
      	(grok_op_properties): Likewise.
      	(start_preparsed_function): Likewise.
      	(store_parm_decls): Likewise.
      	(finish_function): Likewise.
      	* decl2.c (delete_sanity): Likewise.
      	(acceptable_java_type): Likewise.
      	(grokbitfield): Likewise.
      	(cp_reconstruct_complex_type): Likewise.
      	* error.c (dump_type_prefix): Likewise.
      	(dump_expr): Likewise.
      	* except.c (push_eh_cleanup): Likewise.
      	(complete_ptr_ref_or_void_ptr_p): Likewise.
      	(can_convert_eh): Likewise.
      	* init.c (build_new_1): Likewise.
      	(build_delete): Likewise.
      	(build_vec_delete): Likewise.
      	* mangle.c (write_type): Likewise.
      	* parser.c (lookup_literal_operator): Likewise.
      	* pt.c (convert_nontype_argument_function): Likewise.
      	(convert_nontype_argument): Likewise.
      	(tsubst): Likewise.
      	(unify): Likewise.
      	(dependent_type_p_r): Likewise.
      	* rtti.c (build_headof): Likewise.
      	(build_typeid): Likewise.
      	(build_dynamic_cast_1): Likewise.
      	(target_incomplete_p): Likewise.
      	(typeinfo_in_lib_p): Likewise.
      	* semantics.c (finish_omp_for): Likewise.
      	(cxx_eval_call_expression): Likewise.
      	(maybe_resolve_dummy): Likewise.
      	* tree.c (build_target_expr): Likewise.
      	(cp_build_qualified_type_real): Likewise.
      	* typeck.c (composite_pointer_type_r): Likewise.
      	(composite_pointer_type): Likewise.
      	(comp_except_types): Likewise.
      	(cxx_sizeof_nowarn): Likewise.
      	(string_conv_p): Likewise.
      	(cp_build_array_ref): Likewise.
      	(cp_build_function_call_vec): Likewise, also use TYPE_PTRFN_P.
      	(pointer_diff): Likewise.
      	(cp_build_addr_expr_1): Likewise.
      	(cp_build_unary_op): Likewise.
      	(build_static_cast_1): Likewise.
      	(cp_build_c_cast): Likewise.
      	(comp_ptr_ttypes_real): Likewise.
      	(ptr_reasonably_similar): Likewise.
      	(comp_ptr_ttypes_const): Likewise.
      	(casts_away_constness): Likewise.
      	(check_literal_operator_args): Likewise.
      	* typeck2.c (build_x_arrow): Likewise.
      	(add_exception_specifier): Likewise.
      
      From-SVN: r197249
      Paolo Carlini committed
    • cp-tree.h (AUTO_IS_DECLTYPE): New. · 10c6dc8e
      	N3582
      	* cp-tree.h (AUTO_IS_DECLTYPE): New.
      	* parser.c (cp_parser_decltype): Handle decltype(auto).
      	(cp_parser_type_id_1): Allow auto without a late-specified
      	return in C++1y.
      	(cp_parser_primary_expression): Use the return value of
      	finish_parenthesized_expr.
      	(cp_parser_transaction_expression): Likewise.
      	* semantics.c (force_paren_expr): New.
      	(finish_parenthesized_expr): Use it.
      	* call.c (build_conditional_expr_1): Likewise.
      	* pt.c (do_auto_deduction): Handle decltype(auto).
      	(tsubst_copy): Handle PAREN_EXPR.
      	(tsubst_copy_and_build): Likewise.
      	* error.c (dump_expr): Handle PAREN_EXPR.
      	* cxx-pretty-print.c (pp_cxx_expression): Likewise.
      	* mangle.c (write_expression): Ignore PAREN_EXPR.
      
      	* parser.c (cp_parser_decltype_expr): Split out...
      	(cp_parser_decltype): ...from here.
      
      From-SVN: r197248
      Jason Merrill committed
    • parser.c (cp_parser_decltype_expr): Split out... · 15914ac8
      	* parser.c (cp_parser_decltype_expr): Split out...
      	(cp_parser_decltype): ...from here.
      
      From-SVN: r197247
      Jason Merrill committed
    • re PR c++/56774 (G++ 4.8 reverses variadic template types during unpacking) · 4185fb73
      	PR c++/56774
      	PR c++/35722
      	* pt.c (unify_pack_expansion): Fix indexing.
      
      From-SVN: r197244
      Jason Merrill committed
    • lto-cgraph.c (output_profile_summary, [...]): Use gcov streaming; stream hot bb… · 0208f7da
      lto-cgraph.c (output_profile_summary, [...]): Use gcov streaming; stream hot bb threshold to ltrans.
      
      
      	* lto-cgraph.c (output_profile_summary, input_profile_summary): Use
      	gcov streaming; stream hot bb threshold to ltrans.
      	* predict.c (get_hot_bb_threshold): Break out from ....
      	(maybe_hot_count_p): ... here.
      	(set_hot_bb_threshold): New function.
      	* lto-section-in.c (lto_section_name): Add profile.
      	* profile.h (get_hot_bb_threshold, set_hot_bb_threshold): Declare.
      	* ipa.c: Include hash-table.h, tree-inline.h, profile.h, lto-streamer.h
      	and data-streamer.h
      	(histogram_entry): New structure.
      	(histogram, histogram_pool): New global vars.
      	(histogram_hash): New structure.
      	(histogram_hash::hash): New method.
      	(histogram_hash::equal): Likewise.
      	(account_time_size): New function.
      	(cmp_counts): New function.
      	(dump_histogram): New function.
      	(ipa_profile_generate_summary): New function.
      	(ipa_profile_write_summary): New function.
      	(ipa_profile_read_summary): New function.
      	(ipa_profile): Decide on threshold.
      	(pass_ipa_profile): Add ipa_profile_write_summary and ipa_profile_read_summary.
      	* Makefile.in (ipa.o): Update dependencies.
      	* lto-streamer.h (LTO_section_ipa_profile): New section.
      
      From-SVN: r197243
      Jan Hubicka committed
    • tree.h (VAR_P): New. · 5a6ccc94
      	* tree.h (VAR_P): New.
      cp/
      	* call.c (build_java_interface_fn_ref): Likewise.
      	(make_temporary_var_for_ref_to_temp): Likewise.
      	* class.c (check_field_decls): Likewise.
      	(layout_class_type): Likewise.
      	(finish_struct_1): Likewise.
      	(fixed_type_or_null): Likewise.
      	(get_vtbl_decl_for_binfo): Likewise.
      	* cp-gimplify.c (omp_var_to_track): Likewise.
      	(cp_genericize_r): Likewise.
      	* cp-objcp-common.c (cxx_warn_unused_global_decl): Likewise.
      	* cp-tree.h (LANG_DECL_HAS_MIN): Likewise.
      	(DECL_DISCRIMINATOR_P): Likewise.
      	* decl.c (poplevel): Likewise.
      	(decls_match): Likewise.
      	(duplicate_decls): Likewise.
      	(decl_jump_unsafe): Likewise.
      	(start_decl): Likewise.
      	(check_for_uninitialized_const_var): Likewise.
      	(make_rtl_for_nonlocal_decl): Likewise.
      	(cp_finish_decl): Likewise.
      	(expand_static_init): Likewise.
      	(local_variable_p): Likewise.
      	(maybe_register_incomplete_var): Likewise.
      	* decl2.c (grokfield): Likewise.
      	(comdat_linkage): Likewise.
      	(determine_visibility): Likewise.
      	(import_export_decl): Likewise.
      	(prune_vars_needing_no_initialization): Likewise.
      	(decl_maybe_constant_var_p): Likewise.
      	* error.c (dump_simple_decl): Likewise.
      	(dump_template_decl): Likewise.
      	(cp_printer): Likewise.
      	* except.c (build_throw): Likewise.
      	* init.c (build_vtbl_address): Likewise.
      	(member_init_ok_or_else): Likewise.
      	(build_aggr_init): Likewise.
      	(expand_aggr_init_1): Likewise.
      	(build_offset_ref): Likewise.
      	(constant_value_1): Likewise.
      	* mangle.c (write_mangled_name): Likewise.
      	(write_prefix): Likewise.
      	* name-lookup.c (supplement_binding_1): Likewise.
      	(add_decl_to_level): Likewise.
      	(pushdecl_maybe_friend_1): Likewise.
      	(check_for_out_of_scope_variable): Likewise.
      	(validate_nonmember_using_decl): Likewise.
      	(lookup_name_innermost_nonclass_level_1): Likewise.
      	(lookup_arg_dependent_1): Likewise.
      	* parser.c (cp_parser_lambda_introducer): Likewise.
      	(cp_parser_template_argument): Likewise.
      	(cp_parser_single_declaration): Likewise.
      	* pt.c (convert_nontype_argument): Likewise.
      	(instantiate_class_template_1): Likewise.
      	(tsubst_decl): Likewise.
      	(tsubst_expr): Likewise.
      	(do_decl_instantiation): Likewise.
      	(do_type_instantiation): Likewise.
      	(regenerate_decl_from_template): Likewise.
      	(always_instantiate_p): Likewise.
      	(instantiate_decl): Likewise.
      	(type_dependent_expression_p): Likewise.
      	(build_non_dependent_expr): Likewise.
      	* repo.c (repo_emit_p): Likewise.
      	* rtti.c (build_dynamic_cast_1): Likewise.
      	* search.c (shared_member_p): Likewise.
      	* semantics.c (outer_var_p): Likewise.
      	(finish_id_expression): Likewise.
      	(finish_omp_clauses): Likewise.
      	(finish_decltype_type): Likewise.
      	(ensure_literal_type_for_constexpr_object): Likewise.
      	* tree.c (lvalue_kind): Likewise.
      	(bot_replace): Likewise.
      	(cp_tree_equal): Likewise.
      	(handle_init_priority_attribute): Likewise.
      	(decl_storage_duration): Likewise.
      	* typeck.c (cxx_sizeof_expr): Likewise.
      	(cxx_alignof_expr): Likewise.
      	(decay_conversion): Likewise.
      	(build_class_member_access_expr): Likewise.
      	(cp_build_array_ref): Likewise.
      	(cxx_mark_addressable): Likewise.
      	(maybe_warn_about_returning_address_of_local): Likewise.
      	(check_return_expr): Likewise.
      	* typeck2.c (cxx_readonly_error): Likewise.
      	(abstract_virtuals_error_sfinae): Likewise.
      	(cxx_incomplete_type_diagnostic): Likewise.
      
      From-SVN: r197240
      Gabriel Dos Reis committed
    • re PR lto/56777 (bad grammar in fwhole-program documentation) · 39385fa6
      2013-03-29  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR lto/56777
      	* doc/invoke.texi ([-fwhole-program]): Fix typo.
      
      From-SVN: r197237
      Paolo Carlini committed
    • cfgbuild.c (inside_basic_block_p): Use JUMP_TABLE_DATA_P in lieu of tests for… · 34f0d87a
      cfgbuild.c (inside_basic_block_p): Use JUMP_TABLE_DATA_P in lieu of tests for JUMP_P and a ADDR_DIFF_VEC or...
      
      
      	* cfgbuild.c (inside_basic_block_p): Use JUMP_TABLE_DATA_P in lieu
      	of tests for JUMP_P and a ADDR_DIFF_VEC or ADDR_VEC pattern.
      	(control_flow_insn_p): Likewise.
      	* cfgrtl.c (duplicate_insn_chain): Likewise.
      	* final.c (get_attr_length_1): Likewise.
      	(shorten_branches): Likewise.
      	(final_scan_insn): Likewise.
      	* function.c (instantiate_virtual_regs): Likewise.
      	* gcse.c (insert_insn_end_basic_block): Likewise.
      	* ira-costs.c (scan_one_insn): Likewise.
      	* lra-eliminations.c (eliminate_regs_in_insn): Likewise.
      	* lra.c (check_rtl): Likewise.
      	* reload1.c (elimination_costs_in_insn): Likewise.
      	* reorg.c (follow_jumps): Likewise.
      
      	* config/arm/arm.c (is_jump_table): Use JUMP_TABLE_DATA_P in lieu
      	of tests for JUMP_P and a ADDR_DIFF_VEC or ADDR_VEC pattern.
      	(thumb_far_jump_used_p): Likewise.
      	* config/bfin/bfin.c (workaround_rts_anomaly): Likewise.
      	(workaround_speculation): Likewise.
      	(add_sched_insns_for_speculation): Likewise.
      	* config/c6x/c6x.c (reorg_emit_nops): Likewise.
      	* config/frv/frv.c (frv_function_contains_far_jump): Likewise.
      	(frv_for_each_packet): Likewise.
      	* config/i386/i386.c (ix86_avoid_jump_mispredicts): Likewise.
      	* config/ia64/ia64.c (emit_all_insn_group_barriers): Likewise.
      	(final_emit_insn_group_barriers): Likewise.
      	* config/m32r/m32r.c (m32r_is_insn): Likewise.
      	* config/mips/mips.c (USEFUL_INSN_P): Likewise.
      	(mips16_insn_length): Likewise.
      	* config/pa/pa.c (pa_reorg): Likewise.
      	(pa_combine_instructions): Likewise.
      	* config/rs6000/rs6000.c (rs6000_invalid_within_doloop): Likewise.
      	* config/sh/sh.c (fixup_addr_diff_vecs): Likewise.
      	(sh_reorg): Likewise.
      	(split_branches): Likewise.
      	* config/spu/spu.c (get_branch_target): Likewise.
      
      	* config/s390/s390.c (s390_chunkify_start): Simplify logic using
      	JUMP_TABLE_DATA_P.
      
      From-SVN: r197234
      Steven Bosscher committed
    • avx2intrin.h (_mm256_broadcastsi128_si256): Fix declaration name. · 4ac761b0
      ChangeLog:
      	* gcc/config/i386/avx2intrin.h (_mm256_broadcastsi128_si256):
      	Fix declaration name.
      
      testsuite/ChangeLog:
      	* gcc.target/i386/avx2-vbroadcastsi128-1.c: Fix intrinsic name.
      	* gcc.target/i386/avx2-vbroadcastsi128-1.c: Ditto.
      
      From-SVN: r197231
      Kirill Yukhin committed
    • re PR libfortran/56737 (Wrong I/O result with format cache for Hollerith strings) · 357aee92
      2012-03-29  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/56737
              * io/format.c (parse_format_list): Also cache FMT_STRING.
              (parse_format): Update call.
      
      From-SVN: r197230
      Tobias Burnus committed