1. 18 May, 2017 25 commits
    • dumpfile.h (enum dump_kind): Remove stray comma. · 286c97f3
      2017-05-18  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* dumpfile.h (enum dump_kind): Remove stray comma.
      
      From-SVN: r248244
      Paolo Carlini committed
    • Makefile.in: Add ipa-predicate.o and ipa-predicate.h · 2f30407b
      	* Makefile.in: Add ipa-predicate.o and ipa-predicate.h
      	* ipa-inline-analysis.c (NUM_CONDITIONS): turn into
      	predicate::num_conditions
      	(IS_NOT_CONSTANT): turn into predicate::is_not_constant.
      	(CHANGED): turn into predicate::changed.
      	(agg_position_info): Move to ipa-predicate.h
      	(add_condition, predicate::add_clause, predicate::operator &=,
      	predicate::or_with, predicate::evaluate, predicate::probability,
      	dump_condition, dump_clause, predicate::dump,
      	predicate::remap_after_duplication, predicate::remap_after_inlining,
      	predicate::stream_in, predicate::stream_out): Move to ipa-predicate.c
      	(evaluate_conditions_for_known_args): Update.
      	(set_cond_stmt_execution_predicate): Update.
      	* ipa-inline.h: Include ipa-predicate.h
      	(condition, inline_param_summary, conditions, agg_position_info,
      	predicate): Move to ipa-predicate.h
      	* ipa-predicate.c: New file.
      	* ipa-predicate.h: New file.
      
      From-SVN: r248243
      Jan Hubicka committed
    • c-format.c (local_tree_type_node): Add GTY attribute. · 6ecd2339
      gcc/c-family:
      2017-05-18  Bernd Edlinger  <bernd.edlinger@hotmail.de>
      
              * c-format.c (local_tree_type_node): Add GTY attribute.
      
      gcc/c:
      2017-05-18  Bernd Edlinger  <bernd.edlinger@hotmail.de>
      
              * config-lang.in (gtfiles): Add c-family/c-format.c.
      
      From-SVN: r248242
      Bernd Edlinger committed
    • Makefile.in: Add ipa-predicate.o and ipa-predicate.h · b679b55b
      	* Makefile.in: Add ipa-predicate.o and ipa-predicate.h
      	* ipa-inline-analysis.c (NUM_CONDITIONS): turn into
      	predicate::num_conditions
      	(IS_NOT_CONSTANT): turn into predicate::is_not_constant.
      	(CHANGED): turn into predicate::changed.
      	(agg_position_info): Move to ipa-predicate.h
      	(add_condition, predicate::add_clause, predicate::operator &=,
      	predicate::or_with, predicate::evaluate, predicate::probability,
      	dump_condition, dump_clause, predicate::dump,
      	predicate::remap_after_duplication, predicate::remap_after_inlining,
      	predicate::stream_in, predicate::stream_out): Move to ipa-predicate.c
      	(evaluate_conditions_for_known_args): Update.
      	(set_cond_stmt_execution_predicate): Update.
      	* ipa-inline.h: Include ipa-predicate.h
      	(condition, inline_param_summary, conditions, agg_position_info,
      	predicate): Move to ipa-predicate.h
      	* ipa-predicate.c: New file.
      	* ipa-predicate.h: New file.
      
      From-SVN: r248241
      Jan Hubicka committed
    • Add an assert to leaf_function_p to ensure it is not called from a prolog or... · 00d60013
      Add an assert to leaf_function_p to ensure it is not called from a
      prolog or epilog sequence (which would incorrectly return true in a
      non-leaf function).  There are several targets which still call
      leaf_function_p, and while most appear safe or appear aware of the
      issue, it is likely not all such calls are safe.  This check enables
      any such latent bugs to be found.
      
          gcc/
      	* final.c (leaf_function_p): Check we are not in a sequence.
      
      From-SVN: r248240
      Wilco Dijkstra committed
    • cp-tree.h (OVL_USED): Replace with ... · 2063b07f
      	* cp-tree.h (OVL_USED): Replace with ...
      	(OVL_USING_P): ... this.
      	(ovl_iterator::using_p): Adjust.
      	* name-lookup.c (push_overloaded_decl_1)
      	do_nonmember_using_decl): Adjust.
      	* search.c (lookup_field_r): Adjust.
      	* tree.c (ovl_insert, ovl_scope): Adjust.
      (--This line, and those below, will be ignored--
      
      M    cp/tree.c
      M    cp/cp-tree.h
      M    cp/name-lookup.c
      M    cp/search.c
      M    cp/ChangeLog
      
      From-SVN: r248229
      Nathan Sidwell committed
    • Transform TDF_{lang,tree,ipa,rtl} to dump_kind enum. · 8264c84d
      2017-05-18  Martin Liska  <mliska@suse.cz>
      
      	* cfgrtl.c (rtl_verify_edges): Remove usage of TDF_RTL.
      	* dumpfile.c (dump_register): Use new enum dump_kind.
      	(get_dump_file_name): Likewise.
      	(dump_enable_all): Likewise.
      	(dump_switch_p_1): Likewise.
      	(enable_rtl_dump_file): Remove usage of TDF_RTL.
      	* dumpfile.h (enum dump_kind): New enum type.
      	(struct dump_file_info): Create constructor and
      	format fields and comments.
      	* passes.c (pass_manager::register_one_dump_file):
      	Use num dump_kind.
      	* statistics.c (statistics_early_init): Likewise.
      	* tree-ssa-loop-prefetch.c (dump_mem_details): Replace
      	TDF_TREE with TDF_SLIM.
      	(gather_memory_references_ref): Likewise.
      
      From-SVN: r248206
      Martin Liska committed
    • Define CONSTEXPR macro and use it in vec.h. · 671d5bcb
      2017-05-18  Martin Liska  <mliska@suse.cz>
      
      	* ansidecl.h: Define CONSTEXPR macro.
      2017-05-18  Martin Liska  <mliska@suse.cz>
      
      	* vec.h (struct vnull): Use it.
      
      From-SVN: r248205
      Martin Liska committed
    • ipa-inline-analysis.c (predicate_conditions): Move to ipa-inline.h (true_predicate... · dbcb3c74
      	* ipa-inline-analysis.c (predicate_conditions): Move to ipa-inline.h
      	(true_predicate, false_predicate, true_predicate_p,
      	false_predicate_p): Remove.
      	(single_cond_predicate, not_inlined_predicate): Turn to member function
      	in ipa-inline.h
      	(add_condition): Update.
      	(add_clause): Turn to...
      	(predicate::add_clause): ... this one; update; allow passing NULL
      	as parameter.
      	(and_predicates): Turn to ...
      	(predicate::operator &=): ... this one.
      	(predicates_equal_p): Move to predicate::operator == in ipa-inline.h
      	(or_predicates): Turn to ...
      	(predicate::or_with): ... this one.
      	(evaluate_predicate): Turn to ...
      	(predicate::evaluate): ... this one.
      	(predicate_probability): Turn to ...
      	(predicate::probability): ... this one.
      	(dump_condition): Update.
      	(dump_predicate): Turn to ...
      	(predicate::dump): ... this one.
      	(account_size_time): Update.
      	(edge_set_predicate): Update.
      	(set_hint_predicate): UPdate.
      	(evaluate_conditions_for_known_args): Update.
      	(evaluate_properties_for_edge): Update.
      	(remap_predicate_after_duplication): Turn to...
      	(predicate::remap_after_duplication): ... this one.
      	(remap_hint_predicate_after_duplication): Update.
      	(inline_summary_t::duplicate): UPdate.
      	(dump_inline_edge_summary): Update.
      	(dump_inline_summary): Update.
      	(set_cond_stmt_execution_predicate): Update.
      	(set_switch_stmt_execution_predicate): Update.
      	(compute_bb_predicates): Update.
      	(will_be_nonconstant_expr_predicate): Update.
      	(will_be_nonconstant_predicate): Update.
      	(phi_result_unknown_predicate): Update.
      	(predicate_for_phi_result): Update.
      	(array_index_predicate): Update.
      	(estimate_function_body_sizes): Update.
      	(estimate_node_size_and_time): Update.
      	(estimate_ipcp_clone_size_and_time): Update.
      	(remap_predicate): Rename to ...
      	(predicate::remap_after_inlining): ... this one.
      	(remap_hint_predicate): Update.
      	(inline_merge_summary): Update.
      	(inline_update_overall_summary): Update.
      	(estimate_size_after_inlining): Update.
      	(read_predicate): Rename to ...
      	(predicate::stream_in): ... this one.
      	(read_inline_edge_summary): Update.
      	(write_predicate): Rename to ...
      	(predicate::stream_out): ... this one.
      	(write_inline_edge_summary): Update.
      	* ipa-inline.h (MAX_CLAUSES): Turn to predicate::max_clauses.
      	(clause_t): Turn to uint32_t
      	(predicate): Turn to class; implement constructor and operators
      	==, !=, &
      	(size_time_entry): Update.
      	(inline_summary): Update.
      	(inline_edge_summary): Update.
      
      From-SVN: r248204
      Jan Hubicka committed
    • fold-vec-div-float.c: Update dg-requires and dg-options statements. · cdefeea2
      2017-05-18  Will Schmidt  <will_schmidt@vnet.ibm.com>
      
      [gcc/testsuite]
      
      	* fold-vec-div-float.c: Update dg-requires and dg-options statements.
      	* fold-vec-div-floatdouble.c: Likewise.
      	* fold-vec-logical-ands-char.c: Likewise.
      	* fold-vec-logical-ands-int.c: Likewise.
      	* fold-vec-logical-ands-short.c: Likewise.
      	* fold-vec-logical-ors-char.c: Likewise.
      	* fold-vec-logical-ors-int.c: Likewise.
      	* fold-vec-logical-ors-short.c: Likewise.
      	* fold-vec-logical-other-char.c: Likewise.
      	* fold-vec-mule-misc.c: Likewise.
      	* fold-vec-mult-float.c: Likewise.
      	* fold-vec-mult-floatdouble.c: Likewise.
      	* fold-vec-mult-int.c: Likewise.
      	* fold-vec-mult-int128-p9.c: Likewise.
      	* fold-vec-sub-floatdouble.c: Likewise.
      	* fold-vec-div-longlong.c: Update dg-requires and dg-options statements.
      	Add lp64 requirement.
      	* fold-vec-mult-int128-p8.c: Likewise.
      	* fold-vec-logical-ors-longlong.c: Fix comment typo.
      
      From-SVN: r248202
      Will Schmidt committed
    • Fix up dg-option to resolve problems reported by David Edelshon for AIX. · 62ee030a
      2017-05-17  Steven Munroe  <munroesj@gcc.gnu.org>
      
      	* gcc.target/powerpc/bmi-andn-1.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi-andn-2.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi-bextr-1.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi-bextr-2.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi-bextr-4.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi-bextr-5.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi-blsi-1.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi-blsi-2.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi-blsmsk-1.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi-blsmsk-2.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi-blsr-1.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi-blsr-2.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi-tzcnt-1.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi-tzcnt-2.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi2-bzhi32-1.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi2-bzhi64-1.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi2-bzhi64-1a.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi2-mulx32-1.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi2-mulx32-2.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi2-mulx64-1.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi2-mulx64-2.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi2-pdep32-1.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi2-pdep64-1.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi2-pext32-1.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi2-pext64-1.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi2-pext64-1a.c: Fix-up dg-options.
      
      From-SVN: r248201
      Steven Munroe committed
    • More dump_flags_t conversion · c7ddc044
      	gcc/brig/
      	* brigfrontend/brig-to-generic.h (class brig_to_generic): Use
      	"dump_flags_t" for "m_dump_flags" member.
      
      From-SVN: r248200
      Thomas Schwinge committed
    • * c-decl.c (pushdecl_top_level): Delete unused function. · 8a57ecff
      From-SVN: r248199
      Nathan Sidwell committed
    • cp-tree.h (lookup_add): Swap args. · 31ab89c1
      	* cp-tree.h (lookup_add): Swap args.
      	(ovl_cons, build_overload): Delete.
      	* name-lookup.c (add_function, push_overloaded_decl_1)
      	do_nonmember_using_decl, merge_functions, remove_hidden_names):
      	Use lookup_add, ovl_insert.
      	* pt.c (check_explicit_specialization): Use lookup_add.
      	(do_class_deduction): Likewise. Refactor if.
      	* tree.c (lookup_add): Swap args.
      	(ovl_cons, build_overload): Delete.
      (--This line, and those below, will be ignored--
      
      M    cp/cp-tree.h
      M    cp/name-lookup.c
      M    cp/pt.c
      M    cp/ChangeLog
      M    cp/tree.c
      
      From-SVN: r248198
      Nathan Sidwell committed
    • c-common.c (c_common_type_for_size): Use NULL_TREE instead of 0. · 6574d78e
      	* c-common.c (c_common_type_for_size): Use NULL_TREE instead of 0.
      	(c_common_fixed_point_type_for_size): Likewise.
      	(c_common_type_for_mode): Likewise.
      	(shorten_compare): Likewise.
      	(c_promoting_integer_type_p): Use false/true instead of 0/1.
      	* c-pragma.c (maybe_apply_renaming_pragma): Use NULL_TREE instead of 0.
      
      	* c-decl.c (match_builtin_function_types): Use NULL_TREE instead of 0.
      	(check_earlier_gotos): Likewise.
      	(define_label): Likewise.
      	(pending_xref_error): Likewise.
      	(smallest_type_quals_location): Likewise.
      	(grokdeclarator): Likewise.
      	(grokparms): Likewise.
      	(identifier_global_value): Likewise.
      	* c-typeck.c (set_nonincremental_init_from_string): Likewise.
      	(find_init_member): Likewise.
      
      From-SVN: r248195
      Marek Polacek committed
    • Move X==15-X to match.pd · 8b656ca7
      2017-05-18  Marc Glisse  <marc.glisse@inria.fr>
      
      	* fold-const.c (fold_binary_loc): Move transformation...
      	* match.pd (C - X CMP X): ... here.
      
      From-SVN: r248193
      Marc Glisse committed
    • c-common.c (self_promoting_args_p): Change the return type to bool. · e3455240
      	* c-common.c (self_promoting_args_p): Change the return type to bool.
      	Use false/true instead of 0/1.
      	* c-common.h (self_promoting_args_p): Update.
      
      	* c-decl.c (start_decl): Use false/true instead of 0/1.
      	(grokdeclarator): Likewise.
      	(finish_struct): Likewise.
      	(start_function): Change the return type to bool.  Use false/true
      	instead of 0/1.
      	(declspecs_add_qual): Use UNKNOWN_LOCATION instead of 0.
      	* c-tree.h (start_function): Update.
      	* c-typeck.c (same_translation_unit_p): Change the return type to bool.
      	(set_designator): Change the return type to bool.  Use false/true
      	instead of 0/1.
      
      From-SVN: r248192
      Marek Polacek committed
    • name-lookup.c (find_local_binding): New, broken out of ... · 59a4ede9
      	* name-lookup.c (find_local_binding): New, broken out of ...
      	(lookup_name_innermost_nonclass_level_1): ... here.  Call it.
      	(set_namespace_binding): Swap scope & name args.
      	(namespace_binding_1): Likewise.
      	(pushdecl_maybe_friend_1): Adjust set_namespace_binding call.
      	(push_overloaded_decl_1): Likewise.
      	(set_global_binding): Likewise.
      	(get_namespace_binding): Adjust namespace_binding_1 call.
      
      From-SVN: r248191
      Nathan Sidwell committed
    • Fix typos in libstdc++ manual · 8985968c
      	* doc/xml/manual/policy_data_structures.xml: Fix typo.
      	* doc/xml/manual/test_policy_data_structures.xml: Likewise.
      	* doc/html/*: Regenerate.
      
      From-SVN: r248189
      Jonathan Wakely committed
    • re PR fortran/79968 (diagnostics: merge similar diagnostics containing -fdec-structure) · cf004230
      2017-05-18  Fritz Reese <fritzoreese@gmail.com>
      
          PR fortran/79968
      
          gcc/fortran/ChangeLog:
      
      	PR fortran/79968
      	* decl.c (match_attr_spec, gfc_match_automatic,
      	gfc_match_static, gfc_match_structure_decl): Unify diagnostic
      	errors regarding -fdec options.
      	* io.c (match_dec_etag, match_dec_vtag, match_dec_ftag): Ditto.
      
      From-SVN: r248188
      Fritz Reese committed
    • Update libstdc++ version info in manual · 8268fc60
      	* doc/xml/manual/abi.xml: Document latest library versions.
      	* doc/xml/manual/build_hacking.xml: Document requirement to update
      	abi.xml when bumping library versions.
      	* doc/html/*: Regenerate.
      
      From-SVN: r248186
      Jonathan Wakely committed
    • MAINTAINERS: Add self to Write After Approval · 7880c1a5
      	* MAINTAINERS: Add self to Write After Approval
      
      From-SVN: r248185
      Sheldon Lobo committed
    • Minor SPARC T4 and M7 fixes and additions. · 00a84d0e
      	* config/sparc/sparc.c (sparc_option_override): Set function
      	alignment for -mcpu=niagara7 to 64 to match the I$ line.
      	* config/sparc/sparc.h (BRANCH_COST): Set the SPARC M7 branch
      	latency to 1.
      	* config/sparc/sparc.h (BRANCH_COST): Set the SPARC T4 branch
      	latency to 2.
      	* config/sparc/sol2.h: Fix a ASM_CPU32_DEFAULT_SPEC typo.
      	* gcc.target/sparc/niagara7-align.c: New test.
      
      From-SVN: r248184
      Sheldon Lobo committed
    • re PR sanitizer/80797 (-fsanitize=null doesn't instrument &s->x) · 243c2883
      	PR sanitizer/80797
      	* ubsan.c (instrument_null): Unwrap ADDR_EXPRs.
      	(pass_ubsan::execute): Call gimple_assign_single_p instead of
      	gimple_assign_load_p.
      
      	* c-c++-common/ubsan/null-12.c: New test.
      
      From-SVN: r248179
      Marek Polacek committed
    • Daily bump. · a7ab6638
      From-SVN: r248178
      GCC Administrator committed
  2. 17 May, 2017 15 commits
    • Fix comparison of decimal float zeroes (PR80692) · e98e6340
      Decimal float negative zero should compare equal to positive zero.
      Decimal float zeroes are encoded as value class "normal" (in real.c);
      they need to be handled specially, but in this one case that does not
      yet happen.  This fixes it.
      
      
      	PR middle-end/80692
      	* real.c (do_compare): Give decimal_do_compare preference over
      	comparing just the signs.
      
      gcc/testsuite/
      	PR middle-end/80692
      	* gcc.c-torture/execute/pr80692.c: New testcase.
      
      From-SVN: r248174
      Segher Boessenkool committed
    • unwind-arm.h: Make _Unwind_GetIP... · 78eca309
      2017-05-17  Andreas Tobler  <andreast@gcc.gnu.org>
      
          * config/arm/unwind-arm.h: Make _Unwind_GetIP, _Unwind_GetIPInfo and
          _Unwind_SetIP available as functions for arm*-*-freebsd*.
          * config/arm/unwind-arm.c: Implement the above.
      
      From-SVN: r248173
      Andreas Tobler committed
    • re PR fortran/80741 ([Regression 7/8] DTIO wrong code causes incorrect behaviour of namelist READ) · 0152001b
      2017-05-17  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
      
      	PR libgfortran/80741
      	* gfortran.dg/read_4.f90: New test.
      
      From-SVN: r248172
      Jerry DeLisle committed
    • re PR fortran/80741 ([Regression 7/8] DTIO wrong code causes incorrect behaviour of namelist READ) · 42f94417
      2017-05-17  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
      
      	PR libgfortran/80741
      	* gfortran.dg/read_4.f90: New test.
      
      From-SVN: r248171
      Jerry DeLisle committed
    • re PR fortran/80741 ([Regression 7/8] DTIO wrong code causes incorrect behaviour of namelist READ) · 7f72e402
      2017-05-17  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
      
      	PR libgfortran/80741
      	* transfer.c (finalize_transfer): Reset last_char to 'empty'.
      	* file_pos.c (formatted_backspace): Likewise.
      	(st_endfile): Likewise.
      	(st_rewind): Likewise.
      	(st_flush): Likewise.
      
      	PR fortran/80741
      	* trans-io.c (transfer_namelist_element): Change check from
      	NULL_TREE to null_pointer_node.
      
      From-SVN: r248170
      Jerry DeLisle committed
    • libgo: add "vendor" to pkgpath for vendored standard packages · 7ded3472
          
          Ensure that the packages vendored into the standard library do not
          have the same pkgpath as the actual packages.  If we don't, attempts
          to build and test the actual packages will get confused.  The specific
          error I was seeing was import loops, causing some of the packages to
          fail to get initialized, causing an obscure run time crash.
          
          Reviewed-on: https://go-review.googlesource.com/43610
      
      From-SVN: r248168
      Ian Lance Taylor committed
    • pr78604.c: Fix typo in dg-options. · c8ded430
      2017-05-17  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
      
      	* gcc.target/powerpc/pr78604.c: Fix typo in dg-options.
      
      From-SVN: r248165
      Bill Schmidt committed
    • c-common.c: Use NULL_TREE instead of 0 where appropriate. · 3fa8871b
      	* c-common.c: Use NULL_TREE instead of 0 where appropriate.
      	* c-warn.c: Likewise.
      
      	* c-decl.c: Use NULL_TREE instead of 0 where appropriate.
      	* c-typeck.c: Likewise.
      
      From-SVN: r248161
      Marek Polacek committed
    • Fixes to Doxygen comments in libstdc++ headers · 26bddba3
      	* include/bits/refwrap.h: Fix Doxygen warning.
      	* include/bits/specfun.h: Likewise.
      	* include/bits/std_function.h: Likewise.
      	* include/bits/stl_algo.h (set_union, set_intersection)
      	(set_difference, set_symmetric_difference): Add Doxygen @param tags
      	for output iterator parameters.
      	* include/bits/stl_iterator.h (inserter): Add Doxygen @param tag for
      	iterator parameter.
      	* include/std/mutex (try_lock, lock): Change Mutex to Lockable in
      	Doxygen comments.
      
      From-SVN: r248160
      Jonathan Wakely committed
    • cp-tree.h (default_hash_traits <lang_identifier *>): New specialization. · 539f481a
      	* cp-tree.h (default_hash_traits <lang_identifier *>): New
      	specialization.
      	* name-lookup.c (lookup_extern_c_fun_in_all_ns): Delete.
      	(extern_c_fns): New hash table.
      	(check_extern_c_conflict): New, broken out of ...
      	(pushdecl_maybe_friend_1): ... here.  Call it.
      	(c_linkage_bindings): Just look in hash table.
      
      From-SVN: r248159
      Nathan Sidwell committed
    • re PR fortran/80668 (wrong error message with -finit-derived) · e5b1f5a1
      2017-05-17  Fritz Reese <fritzoreese@gmail.com>
      
          PR fortran/80668
      
          gcc/fortran/ChangeLog:
      
      	PR fortran/80668
      	* expr.c (component_initializer): Don't generate initializers for
      	pointer components.
      	* invoke.texi (-finit-derived): Document.
      
          gcc/testsuite/ChangeLog:
      
      	PR fortran/80668
      	* gfortran.dg/pr80668.f90: New.
      
      From-SVN: r248158
      Fritz Reese committed
    • md.texi (Canonicalization of Instructions): Describe the canonical form of… · 81ad201a
      md.texi (Canonicalization of Instructions): Describe the canonical form of instructions that inherently set a condition...
      
      	* doc/md.texi (Canonicalization of Instructions): Describe the
      	canonical form of instructions that inherently set a condition
      	code register.
      
      From-SVN: r248156
      Uros Bizjak committed
    • re PR middle-end/80775 (-O3 produces ice in group_case_labels_stmt) · 9853cb28
      gcc/
      	PR middle-end/80775
      	* tree-cfg.c: Move deletion of unreachable case statements to after
      	the merging of consecutive case labels.
      
      gcc/testsuite/
      	PR middle-end/80775
      	* gcc.dg/pr80775.c: New test.
      
      From-SVN: r248155
      Peter Bergner committed
    • Implement new C++ intrinsics __is_assignable and __is_constructible. · b42cc3ca
      c-family/
      
      Implement new C++ intrinsics __is_assignable and __is_constructible.
      * c-common.c (__is_assignable, __is_constructible): New.
      * c-common.h (RID_IS_ASSIGNABLE, RID_IS_CONSTRUCTIBLE): Likewise.
      
      cp/
      
      PR c++/80654
      PR c++/80682
      Implement new C++ intrinsics __is_assignable and __is_constructible.
      * cp-tree.h (CPTK_IS_ASSIGNABLE, CPTK_IS_CONSTRUCTIBLE): New.
      (is_xible): New.
      * cxx-pretty-print.c (pp_cxx_trait_expression): Handle
      CPTK_IS_ASSIGNABLE and CPTK_IS_CONSTRUCTIBLE.
      * method.c (constructible_expr): Set cp_unevaluated.
      (is_xible_helper): New.
      (is_trivially_xible): Adjust.
      (is_xible): New.
      * parser.c (cp_parser_primary_expression): Handle
      RID_IS_ASSIGNABLE and RID_IS_CONSTRUCTIBLE.
      (cp_parser_trait_expr): Likewise.
      * semantics.c (trait_expr_value): Handle
      CPTK_IS_ASSIGNABLE and CPTK_IS_CONSTRUCTIBLE.
      
      testsuite/
      
      * g++.dg/ext/80654.C: New.
      
      libstdc++-v3/
      
      Implement new C++ intrinsics __is_assignable and __is_constructible.
      * include/std/type_traits (__do_is_static_castable_impl): Remove.
      (__is_static_castable_impl, __is_static_castable_safe): Likewise.
      (__is_static_castable, __do_is_direct_constructible_impl): Likewise.
      (__is_direct_constructible_impl): Likewise.
      (__is_direct_constructible_new_safe): Likewise.
      (__is_base_to_derived_ref, __is_lvalue_to_rvalue_ref): Likewise.
      (__is_direct_constructible_ref_cast): Likewise.
      (__is_direct_constructible_new, __is_direct_constructible): Likewise.
      (__do_is_nary_constructible_impl): Likewise.
      (__is_nary_constructible_impl, __is_nary_constructible): Likewise.
      (__is_constructible_impl): Likewise.
      (is_constructible): Call the intrinsic.
      (__is_assignable_helper): Remove.
      (is_assignable): Call the intrinsic.
      (is_trivially_constructible): Likewise.
      (__is_trivially_copy_constructible_impl): New.
      (is_trivially_copy_constructible): Use it.
      (__is_trivially_move_constructible_impl): New.
      (is_trivially_move_constructible): Use it.
      (is_trivially_assignable): Call the intrinsic.
      (__is_trivially_copy_assignable_impl): New.
      (is_trivially_copy_assignable): Use it.
      (__is_trivially_move_assignable_impl): New.
      (is_trivially_move_assignable): Use it.
      (testsuite/20_util/declval/requirements/1_neg.cc): Adjust.
      (testsuite/20_util/is_trivially_copy_assignable/value.cc):
      Add test for void.
      (testsuite/20_util/is_trivially_copy_constructible/value.cc): Likewise.
      (testsuite/20_util/is_trivially_move_assignable/value.cc): Likewise.
      (testsuite/20_util/is_trivially_move_constructible/value.cc): Likewise.
      (testsuite/20_util/make_signed/requirements/typedefs_neg.cc): Adjust.
      (testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc):
      Likewise.
      
      From-SVN: r248153
      Ville Voutilainen committed