[gcc/devel/c++-modules] Daily bump.

Nathan Sidwell nathan@gcc.gnu.org
Thu Jun 25 14:31:40 GMT 2020


https://gcc.gnu.org/g:ec6ffbb919cdde26da3fbc949e65d564c70a3084

commit ec6ffbb919cdde26da3fbc949e65d564c70a3084
Author: GCC Administrator <gccadmin@gcc.gnu.org>
Date:   Thu Jun 11 00:16:45 2020 +0000

    Daily bump.

Diff:
---
 contrib/ChangeLog       |  19 +++++
 gcc/ChangeLog           | 220 ++++++++++++++++++++++++++++++++++++++++++++++++
 gcc/DATESTAMP           |   2 +-
 gcc/ada/ChangeLog       | 209 +++++++++++++++++++++++++++++++++++++++++++++
 gcc/c-family/ChangeLog  |  10 +++
 gcc/cp/ChangeLog        |  15 ++++
 gcc/testsuite/ChangeLog |  59 +++++++++++++
 libstdc++-v3/ChangeLog  |  49 +++++++++++
 8 files changed, 582 insertions(+), 1 deletion(-)

diff --git a/contrib/ChangeLog b/contrib/ChangeLog
index 458989eda3c..3a385d68c50 100644
--- a/contrib/ChangeLog
+++ b/contrib/ChangeLog
@@ -1,3 +1,22 @@
+2020-06-10  Martin Liska  <mliska@suse.cz>
+
+	* gcc-changelog/git_commit.py: Fix renamed files in
+	parse_git_name_status.
+	* gcc-changelog/test_email.py: Add test for it.
+
+2020-06-10  Martin Liska  <mliska@suse.cz>
+
+	* gcc-changelog/git_commit.py: Add more supported prefixes.
+	* gcc-changelog/test_email.py: Fix one flake8 error.
+	* gcc-changelog/test_patches.txt: Add tested for newly
+	supported prefixes.
+
+2020-06-10  Jonathan Wakely  <jwakely@redhat.com>
+
+	* gcc-changelog/git_commit.py (GitCommit.parse_changelog):
+	Improve error strings.
+	* gcc-changelog/test_email.py: Update expected errors.
+
 2020-06-09  Jonathan Wakely  <jwakely@redhat.com>
 
 	* gcc-changelog/git_email.py: Set exit status on error.
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 5f2b16a17a1..b0860738d04 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,223 @@
+2020-06-10  Martin Sebor  <msebor@redhat.com>
+
+	PR middle-end/95353
+	PR middle-end/92939
+	* builtins.c (inform_access): New function.
+	(check_access): Call it.  Add argument.
+	(addr_decl_size): Remove.
+	(get_range): New function.
+	(compute_objsize): New overload.  Only use compute_builtin_object_size
+	with raw memory function.
+	(check_memop_access): Pass new argument to compute_objsize and
+	check_access.
+	(expand_builtin_memchr, expand_builtin_strcat): Same.
+	(expand_builtin_strcpy, expand_builtin_stpcpy_1): Same.
+	(expand_builtin_stpncpy, check_strncat_sizes): Same.
+	(expand_builtin_strncat, expand_builtin_strncpy): Same.
+	(expand_builtin_memcmp): Same.
+	* builtins.h (check_nul_terminated_array): Declare extern.
+	(check_access): Add argument.
+	(struct access_ref, struct access_data): New structs.
+	* gimple-ssa-warn-restrict.c (clamp_offset): New helper.
+	(builtin_access::overlap): Call it.
+	* tree-object-size.c (decl_init_size): Declare extern.
+	(addr_object_size): Correct offset computation.
+	* tree-object-size.h (decl_init_size): Declare.
+	* tree-ssa-strlen.c (handle_integral_assign): Remove a call
+	to maybe_warn_overflow when assigning to an SSA_NAME.
+
+2020-06-10  Richard Biener  <rguenther@suse.de>
+
+	* tree-vect-loop.c (vect_determine_vectorization_factor):
+	Skip debug stmts.
+	(_loop_vec_info::_loop_vec_info): Likewise.
+	(vect_update_vf_for_slp): Likewise.
+	(vect_analyze_loop_operations): Likewise.
+	(update_epilogue_loop_vinfo): Likewise.
+	* tree-vect-patterns.c (vect_determine_precisions): Likewise.
+	(vect_pattern_recog): Likewise.
+	* tree-vect-slp.c (vect_detect_hybrid_slp): Likewise.
+	(_bb_vec_info::_bb_vec_info): Likewise.
+	* tree-vect-stmts.c (vect_mark_stmts_to_be_vectorized):
+	Likewise.
+
+2020-06-10  Richard Biener  <rguenther@suse.de>
+
+	PR tree-optimization/95576
+	* tree-vect-slp.c (vect_slp_bb): Skip leading debug stmts.
+
+2020-06-10  Haijian Zhang  <z.zhanghaijian@huawei.com>
+
+	PR target/95523
+	* config/aarch64/aarch64-sve-builtins.h
+	(sve_switcher::m_old_maximum_field_alignment): New member.
+	* config/aarch64/aarch64-sve-builtins.cc
+	(sve_switcher::sve_switcher): Save maximum_field_alignment in
+	m_old_maximum_field_alignment and clear maximum_field_alignment.
+	(sve_switcher::~sve_switcher): Restore maximum_field_alignment.
+
+2020-06-10  Richard Biener  <rguenther@suse.de>
+
+	* tree-vectorizer.h (_slp_tree::vec_stmts): Make it a vector
+	of gimple * stmts.
+	(_stmt_vec_info::vec_stmts): Likewise.
+	(vec_info::stmt_vec_info_ro): New flag.
+	(vect_finish_replace_stmt): Adjust declaration.
+	(vect_finish_stmt_generation): Likewise.
+	(vectorizable_induction): Likewise.
+	(vect_transform_reduction): Likewise.
+	(vectorizable_lc_phi): Likewise.
+	* tree-vect-data-refs.c (vect_create_data_ref_ptr): Do not
+	allocate stmt infos for increments.
+	(vect_record_grouped_load_vectors): Adjust.
+	* tree-vect-loop.c (vect_create_epilog_for_reduction): Likewise.
+	(vectorize_fold_left_reduction): Likewise.
+	(vect_transform_reduction): Likewise.
+	(vect_transform_cycle_phi): Likewise.
+	(vectorizable_lc_phi): Likewise.
+	(vectorizable_induction): Likewise.
+	(vectorizable_live_operation): Likewise.
+	(vect_transform_loop): Likewise.
+	* tree-vect-patterns.c (vect_pattern_recog): Set stmt_vec_info_ro.
+	* tree-vect-slp.c (vect_get_slp_vect_def): Adjust.
+	(vect_get_slp_defs): Likewise.
+	(vect_transform_slp_perm_load): Likewise.
+	(vect_schedule_slp_instance): Likewise.
+	(vectorize_slp_instance_root_stmt): Likewise.
+	* tree-vect-stmts.c (vect_get_vec_defs_for_operand): Likewise.
+	(vect_finish_stmt_generation_1): Do not allocate a stmt info.
+	(vect_finish_replace_stmt): Do not return anything.
+	(vect_finish_stmt_generation): Likewise.
+	(vect_build_gather_load_calls): Adjust.
+	(vectorizable_bswap): Likewise.
+	(vectorizable_call): Likewise.
+	(vectorizable_simd_clone_call): Likewise.
+	(vect_create_vectorized_demotion_stmts): Likewise.
+	(vectorizable_conversion): Likewise.
+	(vectorizable_assignment): Likewise.
+	(vectorizable_shift): Likewise.
+	(vectorizable_operation): Likewise.
+	(vectorizable_scan_store): Likewise.
+	(vectorizable_store): Likewise.
+	(vectorizable_load): Likewise.
+	(vectorizable_condition): Likewise.
+	(vectorizable_comparison): Likewise.
+	(vect_transform_stmt): Likewise.
+	* tree-vectorizer.c (vec_info::vec_info): Initialize
+	stmt_vec_info_ro.
+	(vec_info::replace_stmt): Copy over stmt UID rather than
+	unsetting/setting a stmt info allocating a new UID.
+	(vec_info::set_vinfo_for_stmt): Assert !stmt_vec_info_ro.
+
+2020-06-10  Aldy Hernandez  <aldyh@redhat.com>
+
+	* gimple-loop-versioning.cc (loop_versioning::name_prop::get_value):
+	Add stmt parameter.
+	* gimple-ssa-evrp.c (class evrp_folder): New.
+	(class evrp_dom_walker): Remove.
+	(execute_early_vrp): Use evrp_folder instead of evrp_dom_walker.
+	* tree-ssa-ccp.c (ccp_folder::get_value): Add stmt parameter.
+	* tree-ssa-copy.c (copy_folder::get_value): Same.
+	* tree-ssa-propagate.c (substitute_and_fold_engine::replace_uses_in):
+	Pass stmt to get_value.
+	(substitute_and_fold_engine::replace_phi_args_in): Same.
+	(substitute_and_fold_dom_walker::after_dom_children): Call
+	post_fold_bb.
+	(substitute_and_fold_dom_walker::foreach_new_stmt_in_bb): New.
+	(substitute_and_fold_dom_walker::propagate_into_phi_args): New.
+	(substitute_and_fold_dom_walker::before_dom_children): Adjust to
+	call virtual functions for folding, pre_folding, and post folding.
+	Call get_value with PHI.  Tweak dump.
+	* tree-ssa-propagate.h (class substitute_and_fold_engine):
+	New argument to get_value.
+	New virtual function pre_fold_bb.
+	New virtual function post_fold_bb.
+	New virtual function pre_fold_stmt.
+	New virtual function post_new_stmt.
+	New function propagate_into_phi_args.
+	* tree-vrp.c (vrp_folder::get_value): Add stmt argument.
+	* vr-values.c (vr_values::extract_range_from_stmt): Adjust dump
+	output.
+	(vr_values::fold_cond): New.
+	(vr_values::simplify_cond_using_ranges_1): Call fold_cond.
+	* vr-values.h (class vr_values): Add
+	simplify_cond_using_ranges_when_edge_is_known.
+
+2020-06-10  Martin Liska  <mliska@suse.cz>
+
+	PR sanitizer/94910
+	* asan.c (asan_emit_stack_protection): Emit
+	also **SavedFlagPtr(FakeStack, class_id) = 0 in order to release
+	a stack frame.
+
+2020-06-10  Tamar Christina  <tamar.christina@arm.com>
+
+	* config/aarch64/aarch64.c (aarch64_rtx_mult_cost): Adjust costs for mul.
+
+2020-06-10  Richard Biener  <rguenther@suse.de>
+
+	* tree-vect-data-refs.c (vect_vfa_access_size): Adjust.
+	(vect_record_grouped_load_vectors): Likewise.
+	* tree-vect-loop.c (vect_create_epilog_for_reduction): Likewise.
+	(vectorize_fold_left_reduction): Likewise.
+	(vect_transform_reduction): Likewise.
+	(vect_transform_cycle_phi): Likewise.
+	(vectorizable_lc_phi): Likewise.
+	(vectorizable_induction): Likewise.
+	(vectorizable_live_operation): Likewise.
+	(vect_transform_loop): Likewise.
+	* tree-vect-slp.c (vect_get_slp_defs): New function, split out
+	from overload.
+	* tree-vect-stmts.c (vect_get_vec_def_for_operand_1): Remove.
+	(vect_get_vec_def_for_operand): Likewise.
+	(vect_get_vec_def_for_stmt_copy): Likewise.
+	(vect_get_vec_defs_for_stmt_copy): Likewise.
+	(vect_get_vec_defs_for_operand): New function.
+	(vect_get_vec_defs): Likewise.
+	(vect_build_gather_load_calls): Adjust.
+	(vect_get_gather_scatter_ops): Likewise.
+	(vectorizable_bswap): Likewise.
+	(vectorizable_call): Likewise.
+	(vectorizable_simd_clone_call): Likewise.
+	(vect_get_loop_based_defs): Remove.
+	(vect_create_vectorized_demotion_stmts): Adjust.
+	(vectorizable_conversion): Likewise.
+	(vectorizable_assignment): Likewise.
+	(vectorizable_shift): Likewise.
+	(vectorizable_operation): Likewise.
+	(vectorizable_scan_store): Likewise.
+	(vectorizable_store): Likewise.
+	(vectorizable_load): Likewise.
+	(vectorizable_condition): Likewise.
+	(vectorizable_comparison): Likewise.
+	(vect_transform_stmt): Adjust and remove no longer applicable
+	sanity checks.
+	* tree-vectorizer.c (vec_info::new_stmt_vec_info): Initialize
+	STMT_VINFO_VEC_STMTS.
+	(vec_info::free_stmt_vec_info): Relase it.
+	* tree-vectorizer.h (_stmt_vec_info::vectorized_stmt): Remove.
+	(_stmt_vec_info::vec_stmts): Add.
+	(STMT_VINFO_VEC_STMT): Remove.
+	(STMT_VINFO_VEC_STMTS): New.
+	(vect_get_vec_def_for_operand_1): Remove.
+	(vect_get_vec_def_for_operand): Likewise.
+	(vect_get_vec_defs_for_stmt_copy): Likewise.
+	(vect_get_vec_def_for_stmt_copy): Likewise.
+	(vect_get_vec_defs): New overloads.
+	(vect_get_vec_defs_for_operand): New.
+	(vect_get_slp_defs): Declare.
+
+2020-06-10  Qian Chao  <qianchao9@huawei.com>
+
+	PR tree-optimization/95569
+	* trans-mem.c (expand_assign_tm): Ensure that rtmp is marked TREE_ADDRESSABLE.
+
+2020-06-10  Martin Liska  <mliska@suse.cz>
+
+	PR tree-optimization/92860
+	* optc-save-gen.awk: Generate new function cl_optimization_compare.
+	* opth-gen.awk: Generate declaration of the function.
+
 2020-06-09  Michael Meissner  <meissner@linux.ibm.com>
 
 	* config/rs6000/ppc-auxv.h (PPC_PLATFORM_FUTURE): Allocate
diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP
index 51c41f0bb81..1094e86b516 100644
--- a/gcc/DATESTAMP
+++ b/gcc/DATESTAMP
@@ -1 +1 @@
-20200610
+20200611
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index f125850ccdb..b4258dccde0 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -1,3 +1,212 @@
+2020-06-10  Arnaud Charlet  <charlet@adacore.com>
+
+	* libgnat/s-aomoar.ads, libgnat/s-aomoar.adb: New files.
+	* libgnat/s-atopar.ads: Move...
+	* libgnat/s-aoinar.ads: Here.
+	* libgnat/s-atopar.adb: Move...
+	* libgnat/s-aoinar.adb: Here.
+	* impunit.adb: Update list of runtime files.
+	* Makefile.rtl (GNATRTL_NONTASKING_OBJS=): Adjust.
+
+2020-06-10  Arnaud Charlet  <charlet@adacore.com>
+
+	* snames.ads-tmpl (Name_Characters_Assertion_Check,
+	Name_Containers_Assertion_Check,
+	Name_Interfaces_Assertion_Check, Name_IO_Assertion_Check,
+	Name_Numerics_Assertion_Check, Name_Strings_Assertion_Check,
+	Name_System_Assertion_Check): New constants.
+	* types.ads (Characters_Assertion_Check,
+	Containers_Assertion_Check, Interfaces_Assertion_Check,
+	IO_Assertion_Check, Numerics_Assertion_Check,
+	Strings_Assertion_Check, System_Assertion_Check): New constants.
+	(All_Checks): Update accordingly.
+
+2020-06-10  Ghjuvan Lacambre  <lacambre@adacore.com>
+
+	* exp_ch3.adb (Build_Equivalent_Record_Aggregate): Return Empty
+	if Etype of record component has predicates.
+
+2020-06-10  Arnaud Charlet  <charlet@adacore.com>
+
+	* exp_ch3.adb (Build_Init_Statements): Implement the notion of
+	"require late initialization".
+
+2020-06-10  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* sem_util.adb (Copy_And_Maybe_Dereference): Temporarily copy
+	the parent node of the original tree when dereferencing.
+
+2020-06-10  Ed Schonberg  <schonberg@adacore.com>
+
+	* sem_warn.adb (Warn_On_Overlapping_Actuals): Add a warning when
+	two actuals in a call overlap, both are composite types that may
+	be passed by reference, and only one of them is writable.
+
+2020-06-10  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* exp_ch4.adb (Expand_N_In): Use an expression with actions to
+	insert the PE raise statement for the Unchecked_Union case.
+
+2020-06-10  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* sem_ch4.adb (Analyze_Call): Use idiomatic condition.
+	* sem_res.adb (Resolve_Call): Remove obsolete code.
+
+2020-06-10  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* sem_util.adb (Copy_And_Maybe_Dereference): New function.
+	(Build_Access_Record_Constraint): Use it to copy the prefix.
+	(Build_Actual_Array_Constraint): Likewise.
+	(Build_Actual_Record_Constraint): Likewise.
+
+2020-06-10  Bob Duff  <duff@adacore.com>
+
+	* sem_prag.adb (Invariant): Remove the pragma removing code.  It
+	doesn't work to remove the pragma, because various flags are set
+	during Build_Invariant_Procedure_Declaration and
+	Build_Invariant_Procedure_Body that need to be set to avoid the
+	spurious warnings.
+	* exp_util.adb (Make_Invariant_Call): Avoid calling the
+	invariant-checking procedure if the body is empty. This is an
+	optimization.
+
+2020-06-10  Vasiliy Fofanov  <fofanov@adacore.com>
+
+	* doc/gnat_ugn/gnat_utility_programs.rst: Fix gnatmetric
+	switches description.
+
+2020-06-10  Arnaud Charlet  <charlet@adacore.com>
+
+	* repinfo-input.ads, repinfo-input.adb, repinfo.adb,
+	repinfo.ads: Update header.
+
+2020-06-10  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* exp_aggr.adb (In_Place_Assign_OK): Do not necessarily return
+	false for a type with discriminants.
+	(Convert_To_Assignments): Use Parent_Node and Parent_Kind more
+	consistently.  In the in-place assignment case, first apply a
+	discriminant check if need be, and be prepared for a rewritten
+	aggregate as a result.
+
+2020-06-10  Arnaud Charlet  <charlet@adacore.com>
+
+	* atree.adb, contracts.adb, debug.adb, freeze.adb,
+	repinfo-input.adb, repinfo.adb, sem_attr.adb, sem_ch10.adb,
+	sem_ch13.adb, sem_ch3.adb, sem_ch5.adb, sem_ch6.adb,
+	sem_ch8.adb, sem_ch9.adb, sem_disp.adb, sem_eval.adb,
+	sem_prag.adb: Remove more references to ASIS.
+
+2020-06-10  Arnaud Charlet  <charlet@adacore.com>
+
+	* libgnat/s-secsta.adb (Round_Up): Fix typo in exception
+	message.
+
+2020-06-10  Piotr Trojanek  <trojanek@adacore.com>
+
+	* par-ch4.adb (P_Membership_Test): Fix typo in a grammar rule.
+
+2020-06-10  Piotr Trojanek  <trojanek@adacore.com>
+
+	* exp_spark.adb (Expand_SPARK_N_Attribute_Reference): Remove
+	expansion of First and Last attributes.
+
+2020-06-10  Piotr Trojanek  <trojanek@adacore.com>
+
+	* exp_attr.adb (Expand_N_Attribute_Reference): Remove folding
+	for Enum_Rep attribute.
+	* exp_spark.adb (Expand_SPARK_N_Attribute_Reference): Remove
+	duplicated code for folding Enum_Rep attribute.
+	* sem_attr.adb (Eval_Attribute): Relax condition for folding
+	Enum_Rep attribute; previously dead code is now executed when
+	the attribute prefix is an enumeration literal; refine type in
+	processing of Enum_Val.
+
+2020-06-10  Javier Miranda  <miranda@adacore.com>
+
+	* sem_ch3.adb (Analyze_Declarations): Adjust the machinery that
+	takes care of late body overriding of initialize, adjust,
+	finalize.  Remove ASIS mode code.
+
+2020-06-10  Ed Schonberg  <schonberg@adacore.com>
+
+	* einfo.ads (Access_Subprogram_Wrapper): New attribute of
+	Subprogram_Type entities. Denotes subprogram constructed for
+	Access_To_Subprogram types that include pre- and postconditions.
+	* einfo.adb: Subprogram bodies for Access_Subprogram_Wrapper.
+	* exp_ch6.adb (Expand_Call): An indirect call through an
+	Access_To_subprogram that includes contracts is rewritten as a
+	call to the corresponding Access_ ubprogram_Wrapper. Handle
+	derived types that inherit contract from parent.
+	* sem_prag.adb (Build_Access_Subprogram_Wrapper): Build
+	subprogram declaration for subprogram that incorporates the
+	contracts of an Access_To_Subprogram type declaration. Build
+	corresponding body and attach it to freeze actions for type.
+	* sem_util.ads, sem_util.adb (Is_Access_Subprogram_Wrapper):
+	Utility that uses signature of the subprogram to determine
+	whether it is a generated wrapper for an Access_To_Subprogram
+	type.
+
+2020-06-10  Ghjuvan Lacambre  <lacambre@adacore.com>
+
+	* par-ch6.adb (P_Subprogram): Make sure the specification
+	belongs to a procedure.
+
+2020-06-10  Piotr Trojanek  <trojanek@adacore.com>
+
+	* sem_ch13.adb (All_Membership_Choices_Static): Assert an AST
+	property documented in sinfo.ads and simplify an excessive
+	condition.
+
+2020-06-10  Piotr Trojanek  <trojanek@adacore.com>
+
+	* exp_attr.adb (Expand_N_Attribute_Reference): Fix a copy-paste
+	mistake in comment.
+	* sem_res.adb (Flag_Effectively_Volatile_Objects): Fix a type in
+	the SPARK RM rule number.
+	* exp_ch4.adb, sem_util.adb: Fix style in single line comments.
+
+2020-06-10  Piotr Trojanek  <trojanek@adacore.com>
+
+	* sem_aux.ads, sem_aux.adb (Get_Low_Bound): Remove.
+
+2020-06-10  Arnaud Charlet  <charlet@adacore.com>
+
+	* scn.adb (Determine_License): Remove.
+
+2020-06-10  Justin Squirek  <squirek@adacore.com>
+
+	* exp_ch3.adb (Expand_N_Object_Declaration): Add condition to
+	handle processing of objects initialized by a call to a function
+	return an anonymous access type.
+	* exp_ch6.adb, exp_ch6.ads
+	(Has_Unconstrained_Access_Discriminants): Moved to sem_util.adb
+	(Needs_Result_Accessibility_Level): Moved to sem_util.adb
+	* sem_util.adb, sem_util.ads
+	(Has_Unconstrained_Access_Discriminants): Moved from exp_ch6.adb
+	(Needs_Result_Accessibility_Level): Moved from exp_ch6.adb
+	* sem_res.adb (Valid_Conversion): Add condition for the special
+	case where the operand of a conversion is the result of an
+	anonymous access type
+
+2020-06-10  Ghjuvan Lacambre  <lacambre@adacore.com>
+
+	* par-ch6.adb (P_Subprogram): Reject duplicate subprogram
+	declarations.
+
+2020-06-10  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* exp_ch6.adb (Insert_Post_Call_Actions): Deal with the context
+	of an if-expression and with a call written in prefixed notation.
+
+2020-06-10  Gary Dismukes  <dismukes@adacore.com>
+
+	* einfo.ads: Minor reformatting of a comment.
+	* exp_aggr.adb: Minor reformatting and a grammar correction.
+	* exp_attr.adb: Minor reformatting and a typo fix in some
+	comments.
+	* sem_ch12.adb: Fix three typos in comments.
+
 2020-06-09  Javier Miranda  <miranda@adacore.com>
 
 	* sem_ch6.adb (New_Overloaded_Entity): Add missing call to check
diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog
index b9da4b9fa37..71085837dd3 100644
--- a/gcc/c-family/ChangeLog
+++ b/gcc/c-family/ChangeLog
@@ -1,3 +1,13 @@
+2020-06-10  Martin Liska  <mliska@suse.cz>
+
+	PR tree-optimization/92860
+	* c-attribs.c (handle_optimize_attribute):
+	Save global options and compare it after parsing of function
+	attribute.
+	* c-pragma.c (opt_stack::saved_global_options): New field.
+	(handle_pragma_push_options): Save global_options.
+	(handle_pragma_pop_options): Compare them after pop.
+
 2020-06-09  Jakub Jelinek  <jakub@redhat.com>
 
 	PR c/95580
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 0fc815a81b0..c6448360f93 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,18 @@
+2020-06-10  Iain Sandoe  <iain@sandoe.co.uk>
+
+	PR c++/95440
+	* call.c (add_candidates): Use vec_safe_length() for
+	testing the arguments list.
+	(build_new_method_call_1): Use vec_safe_is_empty() when
+	checking for an empty args list.
+
+2020-06-10  Marek Polacek  <polacek@redhat.com>
+
+	PR c++/95562
+	* parser.c (cp_parser_direct_declarator): Clear
+	CP_PARSER_FLAGS_DELAY_NOEXCEPT if the declarator kind is not
+	cdk_id.
+
 2020-06-09  Iain Sandoe  <iain@sandoe.co.uk>
 
 	PR c++/95137
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 7a33e89b5fa..83751a117d9 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,62 @@
+2020-06-10  Alexandre Oliva  <oliva@adacore.com>
+
+	PR rtl-optimization/51447
+	* gcc.c-torture/execute/pr51447.c (main): Preserve call-saved
+	register.
+
+2020-06-10  Iain Sandoe  <iain@sandoe.co.uk>
+
+	PR c++/95440
+	* g++.dg/coroutines/pr95440.C: New test.
+
+2020-06-10  Martin Sebor  <msebor@redhat.com>
+
+	PR middle-end/95353
+	PR middle-end/92939
+	* c-c++-common/Wstringop-truncation.c: Remove an xfail.
+	* gcc.dg/Warray-bounds-46.c: Remove a bogus warning.
+	* gcc.dg/Wrestrict-9.c: Disable -Wstringop-overflow.
+	* gcc.dg/Wstringop-overflow-12.c: Remove xfails.
+	* gcc.dg/Wstringop-overflow-28.c: Same.
+	* gcc.dg/builtin-stringop-chk-4.c: Same.
+	* gcc.dg/builtin-stringop-chk-5.c: Same.
+	* gcc.dg/builtin-stringop-chk-8.c: Same.
+	* gcc.dg/strlenopt-74.c: Avoid buffer overflow.
+	* gcc.dg/Wstringop-overflow-34.c: New test.
+	* gcc.dg/Wstringop-overflow-35.c: New test.
+	* gcc.dg/Wstringop-overflow-36.c: New test.
+	* gcc.dg/Wstringop-overflow-37.c: New test.
+	* gcc.dg/Wstringop-overflow-38.c: New test.
+
+2020-06-10  Richard Biener  <rguenther@suse.de>
+
+	PR tree-optimization/95576
+	* g++.dg/vect/pr95576.cc: New testcase.
+
+2020-06-10  Haijian Zhang  <z.zhanghaijian@huawei.com>
+
+	PR target/95523
+	* gcc.target/aarch64/sve/pr95523.c: New test.
+
+2020-06-10  Marek Polacek  <polacek@redhat.com>
+
+	PR c++/95562
+	* g++.dg/cpp0x/noexcept60.C: New test.
+
+2020-06-10  Aldy Hernandez  <aldyh@redhat.com>
+
+	* gcc.dg/tree-ssa/ssa-dse-30.c: Adjust test for folding of
+	memmove happening later.
+
+2020-06-10  Tamar Christina  <tamar.christina@arm.com>
+
+	* gcc.target/aarch64/asimd-mull-elem.c: New test.
+
+2020-06-10  Qian Chao  <qianchao9@huawei.com>
+
+	PR tree-optimization/95569
+	* gcc.dg/tm/pr95569.c: New test.
+
 2020-06-09  Michael Meissner  <meissner@linux.ibm.com>
 
 	* gcc.target/powerpc/clone3.c: New test for using 'future' with
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index b068f4f0451..6f8e2f2e186 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,52 @@
+2020-06-10  Patrick Palka  <ppalka@redhat.com>
+
+	PR libstdc++/95578
+	* include/bits/ranges_algo.h (__lexicographical_compare_fn):
+	Also check that the iterator and sentinel have the same type before
+	applying the unwrapping optimization for __normal_iterator.
+	Split the check into two, one for the first iterator/sentinel
+	pair and another for second iterator/sentinel pair.  Remove uses
+	of __niter_base, and remove uses of std::move on a
+	__normal_iterator.
+	* include/bits/ranges_algobase.h (__equal_fn): Likewise.
+	(__copy_or_move): Likewise.  Perform similar adjustments for
+	the reverse_iterator and move_iterator optimizations.  Inline
+	the checks into the if-constexprs, and use using-declarations to
+	make them less visually noisy.  Remove uses of __niter_wrap.
+	(__copy_or_move_backward): Likewise.
+	* testsuite/25_algorithms/copy/95578.cc: New test.
+	* testsuite/25_algorithms/copy_backward/95578.cc: New test.
+	* testsuite/25_algorithms/equal/95578.cc: New test.
+	* testsuite/25_algorithms/lexicographical_compare/95578.cc: New test.
+	* testsuite/25_algorithms/move/95578.cc: New test.
+	* testsuite/25_algorithms/move_backward/95578.cc: New test.
+
+2020-06-10  François Dumont  <fdumont@gcc.gnu.org>
+	    Jonathan Wakely  <jwakely@redhat.com>
+
+	* include/bits/deque.tcc (__lex_cmp_dit): New.
+	(__lexicographical_compare_aux1): Define overloads for deque
+	iterators.
+	* include/bits/stl_algobase.h (__lexicographical_compare::__3way):
+	New static member function.
+	(__lexicographical_compare<true>::__3way): Likewise.
+	(__lexicographical_compare<true>::__lc): Use __3way.
+	(__lexicographical_compare_aux): Rename to
+	__lexicographical_compare_aux1 and declare overloads for deque
+	iterators.
+	(__lexicographical_compare_aux): Define new forwarding function
+	that calls __lexicographical_compare_aux1 and declare new overloads
+	for safe iterators.
+	(lexicographical_compare): Do not use __niter_base on
+	parameters.
+	* include/debug/safe_iterator.tcc
+	(__lexicographical_compare_aux): Define overloads for safe
+	iterators.
+	* testsuite/25_algorithms/lexicographical_compare/1.cc: Add
+	checks with random access iterators.
+	* testsuite/25_algorithms/lexicographical_compare/deque_iterators/1.cc:
+	New test.
+
 2020-06-09  Jonathan Wakely  <jwakely@redhat.com>
 
 	* include/bits/stl_iterator.h (move_iterator::operator=): Define.


More information about the Libstdc++-cvs mailing list