+2020-12-18 Jakub Jelinek <jakub@redhat.com>
+
+ * gimplify.c (struct gimplify_omp_ctx): Add has_depend member.
+ (gimplify_scan_omp_clauses): Set it to true if OMP_CLAUSE_DEPEND
+ appears on OMP_TASK.
+ (gimplify_adjust_omp_clauses_1, gimplify_adjust_omp_clauses): Force
+ GOVD_WRITTEN on shared variables if task construct has depend clause.
+
+2020-12-18 Przemyslaw Wirkus <przemyslaw.wirkus@arm.com>
+
+ PR target/98177
+ * tree-vect-loop.c (vect_create_epilog_for_reduction): Use
+ get_same_sized_vectype to obtain index type.
+ (vectorizable_reduction): Likewise.
+
+2020-12-18 Kwok Cheung Yeung <kcy@codesourcery.com>
+
+ * langhooks-def.h (lhd_get_decl_init): New.
+ (lhd_finish_decl_inits): New.
+ (LANG_HOOKS_GET_DECL_INIT): New.
+ (LANG_HOOKS_OMP_FINISH_DECL_INITS): New.
+ (LANG_HOOKS_DECLS): Add LANG_HOOKS_GET_DECL_INIT and
+ LANG_HOOKS_OMP_FINISH_DECL_INITS.
+ * langhooks.c (lhd_omp_get_decl_init): New.
+ (lhd_omp_finish_decl_inits): New.
+ * langhooks.h (struct lang_hooks_for_decls): Add omp_get_decl_init
+ and omp_finish_decl_inits.
+ * omp-offload.c (omp_discover_declare_target_var_r): Use
+ get_decl_init langhook in place of DECL_INITIAL. Call
+ omp_finish_decl_inits langhook at end of function.
+
+2020-12-18 Richard Sandiford <richard.sandiford@arm.com>
+
+ * config/aarch64/aarch64.c (aarch64_preferred_simd_mode): Use
+ aarch64_full_sve_mode and aarch64_vq_mode directly, instead of
+ going via aarch64_simd_container_mode.
+
+2020-12-18 Tamar Christina <tamar.christina@arm.com>
+
+ * config/arm/iterators.md (rot): Add UNSPEC_VCMUL, UNSPEC_VCMUL90,
+ UNSPEC_VCMUL180, UNSPEC_VCMUL270.
+
2020-12-17 Przemyslaw Wirkus <przemyslaw.wirkus@arm.com>
* config/arm/arm-cpus.in: Add Cortex-A78C core.
+2020-12-18 Kwok Cheung Yeung <kcy@codesourcery.com>
+
+ * cp-lang.c (cxx_get_decl_init): New.
+ (cxx_omp_finish_decl_inits): New.
+ (LANG_HOOKS_GET_DECL_INIT): New.
+ (LANG_HOOKS_OMP_FINISH_DECL_INITS): New.
+ * cp-tree.h (dynamic_initializers): New.
+ * decl.c (dynamic_initializers): New.
+ * decl2.c (c_parse_final_cleanups): Add initializer entries
+ from vars to dynamic_initializers.
+
+2020-12-18 Nathan Sidwell <nathan@acm.org>
+
+ * module.cc (O_CLOEXEC, O_BINARY): Add window's support.
+ (elf_in::defrost, module_state::do_import)
+ (finish_module_processing): Use O_BINARY.
+
+2020-12-18 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/98343
+ * cp-gimplify.c (source_location_table_entry_hash::pch_nx): Override
+ static member functions from ggc_remove.
+
+2020-12-18 Patrick Palka <ppalka@redhat.com>
+
+ * constraint.cc (satisfying_constraint): Move up definition
+ and give it bool type.
+ (failed_type_completion_count): Replace with ...
+ (failed_type_completions): ... this.
+ (note_failed_type_completion_for_satisfaction): Append the
+ supplied argument to failed_type_completions.
+ (some_type_complete_p): Define.
+ (sat_entry::maybe_unstable): Replace with ...
+ (sat_entry::ftc_begin, sat_entry::ftc_end): ... these.
+ (satisfaction_cache::ftc_count): Replace with ...
+ (satisfaction_cache::ftc_begin): ... this.
+ (satisfaction_cache::satisfaction_cache): Adjust accordingly.
+ (satisfaction_cache::get): Adjust accordingly, using
+ some_type_complete_p.
+ (satisfaction_cache::save): Adjust accordingly.
+ (satisfying_constraint_p): Remove unused function.
+ (satisfy_constraint): Set satisfying_constraint.
+ (satisfy_declaration_constraints): Likewise.
+ * decl.c (require_deduced_type): Call
+ note_failed_type_completion_for_satisfaction.
+
+2020-12-18 Patrick Palka <ppalka@redhat.com>
+
+ * constraint.cc (sat_entry::evaluating): New member.
+ (satisfaction_cache::get): If entry->evaluating, diagnose
+ self-recursive satisfaction. Otherwise, set entry->evaluating
+ if we're not reusing a cached satisfaction result.
+ (satisfaction_cache::save): Clear entry->evaluating.
+ (satisfy_atom): Set up diagnosing_failed_constraint before the
+ first call to get().
+
+2020-12-18 Patrick Palka <ppalka@redhat.com>
+
+ * constraint.cc (failed_type_completion_count): New.
+ (note_failed_type_completion_for_satisfaction): New.
+ (sat_entry::constr): Rename to ...
+ (sat_entry::atom): ... this.
+ (sat_entry::location): New member.
+ (sat_entry::maybe_unstable): New member.
+ (sat_entry::diagnose_instability): New member.
+ (struct sat_hasher): Adjust after the above renaming.
+ (get_satisfaction, save_satisfaction): Remove.
+ (satisfaction_cache): Rewrite completely.
+ (satisfy_atom): When instantiation of the parameter mapping
+ fails, set diagnose_instability. Propagate location from
+ inst_cache.entry to cache.entry if the secondary lookup
+ succeeded.
+ (satisfy_declaration_constraints): When
+ failed_type_completion_count differs before and after
+ satisfaction, then don't cache the satisfaction result.
+ * cp-tree.h (note_failed_type_completion_for_satisfaction):
+ Declare.
+ * pt.c (tsubst) <case TYPENAME_TYPE>: Use
+ complete_type_or_maybe_complain instead of open-coding it.
+ * typeck.c (complete_type_or_maybe_complain): Call
+ note_failed_type_completion_for_satisfaction when type
+ completion fails.
+
2020-12-17 Nathan Sidwell <nathan@acm.org>
PR c++/98340
+2020-12-18 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/83118
+ PR fortran/96012
+ * resolve.c (resolve_ordinary_assign): Generate a vtable if
+ necessary for scalar non-polymorphic rhs's to unlimited lhs's.
+ * trans-array.c (get_class_info_from_ss): New function.
+ (gfc_trans_allocate_array_storage): Defer obtaining class
+ element type until all sources of class exprs are tried. Use
+ class API rather than TREE_OPERAND. Look for class expressions
+ in ss->info by calling get_class_info_from_ss. After, obtain
+ the element size for class descriptors. Where the element type
+ is unknown, cast the data as character(len=size) to overcome
+ unlimited polymorphic problems.
+ (gfc_conv_ss_descriptor): Do not fix class variable refs.
+ (build_class_array_ref, structure_alloc_comps): Replace code
+ replicating the new function gfc_resize_class_size_with_len.
+ (gfc_alloc_allocatable_for_assignment): Obtain element size
+ for lhs in cases of deferred characters and class enitities.
+ Move code for the element size of rhs to start of block. Clean
+ up extraction of class parameters throughout this function.
+ After the shape check test whether or not the lhs and rhs
+ element sizes are the same. Use earlier evaluation of
+ 'cond_null'. Reallocation of lhs only to happen if size changes
+ or element size changes.
+ * trans-expr.c (gfc_resize_class_size_with_len): New function.
+ (gfc_get_class_from_expr): If a constant expression is
+ encountered, return NULL_TREE;
+ (trans_scalar_class_assign): New function.
+ (gfc_conv_procedure_call): Ensure the vtable is present for
+ passing a non-class actual to an unlimited formal.
+ (trans_class_vptr_len_assignment): For expressions of type
+ BT_CLASS, extract the class expression if necessary. Use a
+ statement block outside the loop body. Ensure that 'rhs' is
+ of the correct type. Obtain rhs vptr in all circumstances.
+ (gfc_trans_scalar_assign): Call trans_scalar_class_assign to
+ make maximum use of the vptr copy in place of assignment.
+ (trans_class_assignment): Actually do reallocation if needed.
+ (gfc_trans_assignment_1): Simplify some of the logic with
+ 'realloc_flag'. Set 'vptr_copy' for all array assignments to
+ unlimited polymorphic lhs.
+ * trans.c (gfc_build_array_ref): Call gfc_resize_class_size_
+ with_len to correct span for unlimited polymorphic decls.
+ * trans.h : Add prototype for gfc_resize_class_size_with_len.
+
2020-12-17 Tobias Burnus <tobias@codesourcery.com>
PR fortran/92587
+2020-12-18 Andrew MacLeod <amacleod@redhat.com>
+
+ * gcc.dg/pr97750.c: Remove check for warning.
+
+2020-12-18 Kwok Cheung Yeung <kcy@codesourcery.com>
+
+ * g++.dg/gomp/declare-target-3.C: Only check .offload_var_table
+ entries if offloading is enabled.
+
+2020-12-18 Przemyslaw Wirkus <przemyslaw.wirkus@arm.com>
+
+ PR target/98177
+ * g++.target/aarch64/sve/pr98177-1.C: New test.
+ * g++.target/aarch64/sve/pr98177-2.C: New test.
+ * gcc.target/aarch64/sve/pr98177-1.c: New test.
+ * gcc.target/aarch64/sve/pr98177-2.c: New test.
+
+2020-12-18 Kwok Cheung Yeung <kcy@codesourcery.com>
+
+ * g++.dg/gomp/declare-target-3.C: New.
+
+2020-12-18 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/83118
+ PR fortran/96012
+ * gfortran.dg/dependency_60.f90: New test.
+ * gfortran.dg/class_allocate_25.f90: New test.
+ * gfortran.dg/class_assign_4.f90: New test.
+ * gfortran.dg/unlimited_polymorphic_32.f03: New test.
+
+2020-12-18 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/98343
+ * g++.dg/pch/pr98343.C: New test.
+ * g++.dg/pch/pr98343.Hs: New file.
+
+2020-12-18 Ian Lance Taylor <iant@golang.org>
+
+ * go.test/go-test.exp (go-set-goos): New procedure.
+ (go-gc-match): New procedure.
+ (go-gc-tests): Call go-set-goos. Use go-gc-match to handle +build
+ lines. Look for +build lines beyond first line of file.
+
+2020-12-18 Patrick Palka <ppalka@redhat.com>
+
+ PR c++/96840
+ * g++.dg/cpp2a/concepts-pr88395.C: Adjust to expect the
+ self-recursive satisfaction to get directly diagnosed.
+ * g++.dg/cpp2a/concepts-recursive-sat2.C: Likewise.
+ * g++.dg/cpp2a/concepts-recursive-sat4.C: New test.
+
+2020-12-18 Patrick Palka <ppalka@redhat.com>
+
+ * g++.dg/cpp2a/concepts-complete1.C: New test.
+ * g++.dg/cpp2a/concepts-complete2.C: New test.
+ * g++.dg/cpp2a/concepts-complete3.C: New test.
+
2020-12-17 Andrew MacLeod <amacleod@redhat.com>
* gcc.dg/pr97750.c: New.
+2020-12-18 Jakub Jelinek <jakub@redhat.com>
+
+ PR bootstrap/98380
+ * configure.ac: Set darwin_dynamic_lookup=no instead to empty
+ string.
+ * configure: Regenerated.
+
2020-12-05 Iain Sandoe <iain@sandoe.co.uk>
PR target/97865
+2020-12-18 Jakub Jelinek <jakub@redhat.com>
+
+ * testsuite/libgomp.c/task-6.c: New test.
+
2020-12-09 Andrew Stubbs <ams@codesourcery.com>
* plugin/plugin-gcn.c: Include hsa_ext_amd.h.
+2020-12-18 Patrick Palka <ppalka@redhat.com>
+
+ PR libstdc++/98377
+ * src/c++17/floating_to_chars.cc (__floating_to_chars_precision):
+ Fix mistake.
+
+2020-12-18 Patrick Palka <ppalka@redhat.com>
+
+ PR libstdc++/98370
+ * src/c++17/floating_to_chars.cc (__floating_to_chars_shortest):
+ Provide explicit template arguments to the call to std::max.
+
+2020-12-18 Patrick Palka <ppalka@redhat.com>
+
+ PR libstdc++/98374
+ * src/c++17/floating_to_chars.cc: Guard include of <langinfo.h>
+ with __has_include.
+ (__floating_to_chars_precision) [!defined(RADIXCHAR)]: Don't
+ attempt to obtain the radix character of the current locale,
+ just assume it's '.'.
+
+2020-12-18 Patrick Palka <ppalka@redhat.com>
+
+ * src/c++17/floating_from_chars.cc (from_chars_impl)
+ [!defined(FE_TONEAREST)]: Don't adjust the rounding mode.
+ * src/c++17/floating_to_chars.cc (__floating_to_chars_precision):
+ Likewise.
+
+2020-12-18 Patrick Palka <ppalka@redhat.com>
+
+ * testsuite/20_util/to_chars/double.cc: New test, consisting of
+ testcases imported from the MSVC STL testsuite.
+ * testsuite/20_util/to_chars/float.cc: Likewise.
+
+2020-12-18 Patrick Palka <ppalka@redhat.com>
+
+ * config/abi/pre/gnu.ver: Add new exports.
+ * include/std/charconv (to_chars): Declare the floating-point
+ overloads for float, double and long double.
+ * src/c++17/Makefile.am (sources): Add floating_to_chars.cc.
+ * src/c++17/Makefile.in: Regenerate.
+ * src/c++17/floating_to_chars.cc: New file.
+ (to_chars): Define for float, double and long double.
+ * testsuite/20_util/to_chars/long_double.cc: New test.
+
+2020-12-18 Patrick Palka <ppalka@redhat.com>
+
+ * src/c++17/ryu/common.h, src/c++17/ryu/d2fixed.c,
+ src/c++17/ryu/d2fixed_full_table.h, src/c++17/ryu/d2s.c,
+ src/c++17/ryu/d2s_intrinsics.h, src/c++17/ryu/f2s.c,
+ src/c++17/ryu/f2s_intrinsics.h, src/c++17/ryu/generic_128.c:
+ Apply local modifications.
+
+2020-12-18 Patrick Palka <ppalka@redhat.com>
+
+ * src/c++17/ryu/MERGE: New file.
+ * src/c++17/ryu/common.h, src/c++17/ryu/d2fixed.c,
+ src/c++17/ryu/d2fixed_full_table.h, src/c++17/ryu/d2s.c,
+ src/c++17/ryu/d2s_full_table.h, src/c++17/ryu/d2s_intrinsics.h,
+ src/c++17/ryu/digit_table.h, src/c++17/ryu/f2s.c,
+ src/c++17/ryu/f2s_intrinsics.h, src/c++17/ryu/generic_128.c,
+ src/c++17/ryu/generic_128.h, src/c++17/ryu/ryu_generic_128.h:
+ Import these files from the Ryu library.
+
2020-12-17 Jonathan Wakely <jwakely@redhat.com>
* config/os/djgpp/error_constants.h: Test POSIX errno macros