https://gcc.gnu.org/g:8470a3564cd292d05934c79e606a77e8855946d0

commit r16-8240-g8470a3564cd292d05934c79e606a77e8855946d0
Author: GCC Administrator <[email protected]>
Date:   Sat Mar 21 00:16:37 2026 +0000

    Daily bump.

Diff:
---
 gcc/ChangeLog           |  54 ++++++
 gcc/DATESTAMP           |   2 +-
 gcc/ada/ChangeLog       |  19 +++
 gcc/cp/ChangeLog        |   6 +
 gcc/fortran/ChangeLog   |   6 +
 gcc/po/ChangeLog        |   4 +
 gcc/rust/ChangeLog      | 438 ++++++++++++++++++++++++++++++++++++++++++++++++
 gcc/testsuite/ChangeLog | 115 +++++++++++++
 libgomp/ChangeLog       |  15 ++
 libstdc++-v3/ChangeLog  |  27 +++
 10 files changed, 685 insertions(+), 1 deletion(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 0074f23c97be..c6f0e47e1d18 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,57 @@
+2026-03-20  Tobias Burnus  <[email protected]>
+           Sandra Loosemore  <[email protected]>
+
+       PR c/122866
+       * gimplify.cc (omp_instantiate_mapper): Give a sorry if there are
+       iterators.
+
+2026-03-20  Kwok Cheung Yeung  <[email protected]>
+           Sandra Loosemore  <[email protected]>
+
+       * gimplify.cc (gimplify_omp_workshare): Handle iterators in
+       "target data".
+
+2026-03-20  Kyrylo Tkachov  <[email protected]>
+
+       * config/aarch64/tuning_models/olympus.h (olympus_tunings): Set
+       loop_align to 64:16.
+
+2026-03-20  Takayuki 'January June' Suwa  <[email protected]>
+
+       * config/xtensa/xtensa.cc (gen_int_relational):
+       Specify the table array "info" and the pointer to its elements
+       as const.
+
+2026-03-20  Jakub Jelinek  <[email protected]>
+
+       PR target/124565
+       * config/i386/i386.cc (ix86_build_builtin_va_list_64): Set TREE_PUBLIC
+       on type_decl.
+
+2026-03-20  Jakub Jelinek  <[email protected]>
+
+       PR target/124566
+       * config/sh/sh.cc (sh_build_builtin_va_list): Set TREE_PUBLIC
+       on type_decl.
+
+2026-03-20  Richard Biener  <[email protected]>
+
+       PR tree-optimization/124578
+       * tree-ssa-sccvn.cc (vn_reference_eq): Consistently check
+       fields from vro2.
+
+2026-03-20  Yangyu Chen  <[email protected]>
+
+       * config/aarch64/aarch64.cc (aarch64_generate_version_dispatcher_body):
+       Check DECL_VIRTUAL_P for virtual functions for LTO handling.
+       * config/i386/i386-features.cc (ix86_generate_version_dispatcher_body):
+       Ditto.
+       * config/riscv/riscv.cc (riscv_generate_version_dispatcher_body): Ditto.
+       * config/rs6000/rs6000.cc (rs6000_generate_version_dispatcher_body):
+       Ditto.
+       * config/loongarch/loongarch.cc
+       (loongarch_generate_version_dispatcher_body): Ditto.
+
 2026-03-19  Jakub Jelinek  <[email protected]>
 
        PR target/124565
diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP
index 6c13f7310f8c..c7c076de63af 100644
--- a/gcc/DATESTAMP
+++ b/gcc/DATESTAMP
@@ -1 +1 @@
-20260320
+20260321
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index 80a8d5e7c49a..a7966cf5b567 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -1,3 +1,22 @@
+2026-03-20  Eric Botcazou  <[email protected]>
+
+       PR ada/120669
+       * sem_ch4.adb (Analyze_Explicit_Dereference): Remove interpretations
+       of the prefix only if they are of access types.
+       (Analyze_One_Call.Indicate_Name_And_Type): Check for an implicit
+       dereference only after indicating the name and type of the call.
+       * sem_ch5.adb (Analyze_Assignment): Do not remove interpretations
+       for the LHS if they are for a type with implicit dereference.
+       * sem_res.adb (Resolve): Streamline the processing of overloaded
+       nodes once an interpretation is picked for them.  Add a specific
+       handling for additional interpretations for generalized references.
+       (Resolve_Explicit_Dereference): Remove interpretations of the prefix
+       only if they are of access types.
+       (Is_Ambiguous_Operand): Skip the direct interpretation for a limited
+       type that has implicit dereference.
+       * sem_type.adb (Add_One_Interp): Set the name of the first entry of
+       the table of interpretations in more cases.
+
 2026-03-14  Matthias Klose  <[email protected]>
 
        PR ada/107475
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 900b40da5c74..25881e010d32 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,9 @@
+2026-03-20  Marek Polacek  <[email protected]>
+
+       PR c++/124575
+       * call.cc (set_up_extended_ref_temp): If var is consteval-only,
+       mark it DECL_EXTERNAL.
+
 2026-03-19  Jason Merrill  <[email protected]>
 
        * constexpr.cc (build_constexpr_constructor_member_initializers):
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index 9e0804a361ea..658d0cb306f6 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,9 @@
+2026-03-20  Christopher Albert  <[email protected]>
+
+       PR fortran/120723
+       * trans-openmp.cc (gfc_trans_omp_clauses): Handle bare scalar
+       OpenACC attach/detach clauses without pointer-mapping nodes.
+
 2026-03-19  Paul Thomas  <[email protected]>
 
        PR fortran/124161
diff --git a/gcc/po/ChangeLog b/gcc/po/ChangeLog
index 0ef9f28e104e..b322b35ea5b1 100644
--- a/gcc/po/ChangeLog
+++ b/gcc/po/ChangeLog
@@ -1,3 +1,7 @@
+2026-03-20  Joseph Myers  <[email protected]>
+
+       * sv.po: Update.
+
 2026-03-16  Joseph Myers  <[email protected]>
 
        * fr.po, sv.po: Update.
diff --git a/gcc/rust/ChangeLog b/gcc/rust/ChangeLog
index cdff1eabfb2a..2784e84a396d 100644
--- a/gcc/rust/ChangeLog
+++ b/gcc/rust/ChangeLog
@@ -1,3 +1,441 @@
+2026-03-20  Pierre-Emmanuel Patry  <[email protected]>
+
+       * rust-session-manager.cc (Session::compile_crate): Use additional
+       cli attributes for the injection function. Move additional attribute
+       injection from here...
+       (Session::injection): ... to here.
+       * rust-session-manager.h: Update injection fonction prototype.
+
+2026-03-20  Pierre-Emmanuel Patry  <[email protected]>
+
+       * ast/rust-ast.cc (Crate::inject_inner_attribute): Add member function
+       to inject an inner attribute.
+       * ast/rust-ast.h: Add function prototype.
+       * lang.opt: Add frust-crate-attr argument to the compiler CLI.
+       * rust-lang.cc: Remove unused attribute on  option handler.
+       * rust-session-manager.cc (Session::handle_crate_name): Collect CLI
+       additional inner attributes.
+       (Session::compile_crate): Parse the additional inner attributes and
+       inject them.
+       * rust-session-manager.h (struct CompileOptions): Add collection of
+       additional inner attributes.
+
+2026-03-20  Pierre-Emmanuel Patry  <[email protected]>
+
+       * util/rust-attributes.cc: Add no_std to list of builtin attributes.
+
+2026-03-20  Enes Cevik  <[email protected]>
+
+       * backend/rust-compile-intrinsic.cc: Add bswap_handler.
+       * backend/rust-intrinsic-handlers.cc (bswap_handler): New function.
+       * backend/rust-intrinsic-handlers.h (bswap_handler): New declaration.
+
+2026-03-20  Mohamed Ali  <[email protected]>
+
+       * checks/errors/feature/rust-feature-gate.cc (FeatureGate::visit): Call 
check_no_core_attri.
+       * checks/errors/feature/rust-feature-gate.h: Declare method 
check_no_core_attri.
+
+2026-03-20  Harishankar  <[email protected]>
+
+       * resolve/rust-early-name-resolver-2.0.cc 
(Early::finalize_rebind_import): Add ambiguity
+       check before calling get_node_id() on glob import definitions.
+
+2026-03-20  Pierre-Emmanuel Patry  <[email protected]>
+
+       * backend/rust-compile-intrinsic.cc: Use predefined values.
+       * checks/errors/rust-unsafe-checker.cc (is_safe_intrinsic): Likewise.
+       * util/rust-intrinsic-values.h: New file.
+
+2026-03-20  Pierre-Emmanuel Patry  <[email protected]>
+
+       * Make-lang.in: Add rust-intrinsic-handlers.cc.
+       * backend/rust-compile-intrinsic.cc (get_identifier): Move function
+       to handlers namespace.
+       (is_basic_integer_type): Likewise.
+       (check_for_basic_integer_type): Likewise.
+       (offset_handler): Likewise.
+       (sizeof_handler): Likewise.
+       (transmute_handler): Likewise.
+       (rotate_handler): Likewise.
+       (wrapping_op_handler_inner): Likewise.
+       (op_with_overflow_inner): Likewise.
+       (uninit_handler): Likewise.
+       (move_val_init_handler): Likewise.
+       (assume_handler): Likewise.
+       (discriminant_value_handler): Likewise.
+       (variant_count_handler): Likewise.
+       (enum class): Likewise.
+       (prefetch_data_handler): Likewise.
+       (rotate_left_handler): Likewise.
+       (rotate_right_handler): Likewise.
+       (std::function<tree): Likewise.
+       (wrapping_op_handler): Likewise.
+       (op_with_overflow): Likewise.
+       (prefetch_read_data): Likewise.
+       (prefetch_write_data): Likewise.
+       (atomic_store_handler_inner): Likewise.
+       (atomic_load_handler_inner): Likewise.
+       (atomic_store_handler): Likewise.
+       (atomic_load_handler): Likewise.
+       (unchecked_op_inner): Likewise.
+       (unchecked_op_handler): Likewise.
+       (copy_handler_inner): Likewise.
+       (copy_handler): Likewise.
+       (expect_handler_inner): Likewise.
+       (expect_handler): Likewise.
+       (try_handler_inner): Likewise.
+       (try_handler): Likewise.
+       (sorry_handler): Likewise.
+       (check_for_cached_intrinsic): Likewise.
+       (maybe_override_ctx): Likewise.
+       (compile_fn_params): Likewise.
+       (compile_intrinsic_function): Likewise.
+       (enter_intrinsic_block): Likewise.
+       (finalize_intrinsic_block): Likewise.
+       (make_unsigned_long_tree): Likewise.
+       (build_atomic_builtin_name): Likewise.
+       * backend/rust-intrinsic-handlers.cc: New file.
+       * backend/rust-intrinsic-handlers.h: New file.
+
+2026-03-20  Pierre-Emmanuel Patry  <[email protected]>
+
+       * parse/rust-parse-impl.hxx: Remove additional error message.
+
+2026-03-20  Pierre-Emmanuel Patry  <[email protected]>
+
+       * checks/lints/rust-lint-scan-deadcode.h: Add additional condition
+       to prevent warning emission. Check for underscore prefix.
+
+2026-03-20  Pierre-Emmanuel Patry  <[email protected]>
+
+       * parse/rust-parse-error.h (struct EnumVariant): Add error for enum
+       variant.
+       * parse/rust-parse-impl.hxx: Use new error type instead of nullptr.
+       * parse/rust-parse.h: Update function prototype.
+
+2026-03-20  Pierre-Emmanuel Patry  <[email protected]>
+
+       * checks/lints/rust-lint-unused-var.cc (starts_with_underscore): Add
+       function to detect underscore within symbol name.
+       (check_decl): Call new function for underscore checking.
+
+2026-03-20  Pierre-Emmanuel Patry  <[email protected]>
+
+       * resolve/rust-toplevel-name-resolver-2.0.cc(TopLevel::visit): Insert
+       constant item only if now wildcard.
+
+2026-03-20  Owen Avery  <[email protected]>
+
+       * resolve/rust-default-resolver.cc (DefaultResolver::visit):
+       Override MatchCase visiting function.
+       * resolve/rust-default-resolver.h (DefaultResolver::visit):
+       Likewise.
+
+2026-03-20  jayant chauhan  <[email protected]>
+
+       * expand/rust-derive.cc (DeriveVisitor::derive): Handle
+       `BuiltinMacro::RustcEncodable` and `BuiltinMacro::RustcDecodable`.
+
+2026-03-20  vibhatsu  <[email protected]>
+
+       * ast/rust-macro.h: add initialization for ExternalItem base
+       class in full construtor and use node id inside ExternalItem
+       to populate memeber node id.
+
+2026-03-20  vibhatsu  <[email protected]>
+
+       * ast/rust-macro.h: remove get_macro_node_id and propagate
+       MacroInvocation's node id through get_node_id for consistency
+       * util/rust-hir-map.cc (Mappings::insert_macro_invocation): replace
+       all get_macro_node_id calls with get_node_id calls
+       (Mappings::lookup_macro_invocation): likewise
+       (Mappings::insert_bang_proc_macro_invocation): likewise
+       (Mappings::lookup_bang_proc_macro_invocation): likewise
+
+2026-03-20  Jayant Chauhan  <[email protected]>
+
+       * ast/rust-path.h (GenericArgsBinding::reconstruct): New method.
+       (GenericArg::reconstruct): New method.
+       (GenericArgs::reconstruct): New method.
+       (PathExprSegment::reconstruct): New method.
+       (PathInExpression::reconstruct): New method.
+       (TypePathSegmentGeneric::reconstruct_impl): New method.
+       (TypePathFunction::reconstruct): New method.
+       (TypePathSegmentFunction::reconstruct_impl): New method.
+       (QualifiedPathType::reconstruct): New method.
+       (QualifiedPathInExpression::reconstruct): New method.
+       (QualifiedPathInType::reconstruct_impl): New method.
+       * expand/rust-derive-cmp-common.cc (EnumMatchBuilder::tuple): Use 
path.reconstruct().
+       (EnumMatchBuilder::strukt): Use path.reconstruct().
+
+2026-03-20  Pierre-Emmanuel Patry  <[email protected]>
+
+       * rust-session-manager.cc (Session::compile_crate): Inject std crate
+       when both no_std and no_core attributes are missing.
+       * util/rust-attribute-values.h: Add no_std attribute value.
+
+2026-03-20  Pierre-Emmanuel Patry  <[email protected]>
+
+       * resolve/rust-early-name-resolver-2.0.cc 
(Early::visit_derive_attribute):
+       Change from attribute locus to trait locus.
+       (Early::visit_attributes): Remove function.
+       (Early::visit): Remove functions.
+       * resolve/rust-early-name-resolver-2.0.h: Remove unused prototypes.
+
+2026-03-20  Pierre-Emmanuel Patry  <[email protected]>
+
+       * ast/rust-ast.cc (MetaItemPathExpr::to_attribute): Remove cast to
+       literal.
+       (AttrInputMetaItemContainer::separate_cfg_attrs): Remove PathExpr
+       specific code.
+       * expand/rust-cfg-strip.cc (expand_cfg_attrs): Remove the whole
+       attribute if condition's result is false.
+       * util/rust-attributes.cc (AttributeChecker::visit): Remove specific
+       code section for meta item container. Do not check input if
+       configuration does not match condition.
+
+2026-03-20  Pierre-Emmanuel Patry  <[email protected]>
+
+       * ast/rust-ast-collector.cc (TokenCollector::visit): Add visitor
+       implementation.
+       * ast/rust-ast-visitor.cc (DefaultASTVisitor::visit): Likewise.
+       * ast/rust-ast-collector.h: Add function prototype.
+       * ast/rust-ast-visitor.h: Likewise.
+       * expand/rust-derive.h: Likewise.
+       * hir/rust-ast-lower-base.h: Likewise.
+       * ast/rust-ast.cc (Attribute::get_traits_to_derive): Handle EXPR
+       variant.
+       (AttrInputExpr::AttrInputExpr): Add constructor.
+       (AttrInputExpr::operator=): Add assignment operator implementation.
+       (AttrInputExpr::as_string): Add a string conversion member function.
+       (AttrInputExpr::accept_vis): Add visitor function.
+       * ast/rust-ast.h: Add EXPR type variant to AttrInput.
+       * util/rust-attributes.cc (check_doc_attribute): Handle expr variant.
+       * ast/rust-expr.h (class AttrInputExpr): Add class definition with
+       member function prototypes.
+       * hir/rust-ast-lower-base.cc (ASTLoweringBase::visit): Add empty
+       visitor implementation.
+
+2026-03-20  Pierre-Emmanuel Patry  <[email protected]>
+
+       * ast/rust-ast-dump.cc (debug): Add debug function which calls debug
+       on every crate field.
+       * ast/rust-ast-dump.h (debug): Add function prototype.
+
+2026-03-20  Pierre-Emmanuel Patry  <[email protected]>
+
+       * util/rust-attributes.cc (AttributeChecker::visit): Rename function
+       and make call to ast default visitor.
+       (AttributeChecker::check_attribute): Remove function.
+       * util/rust-attributes.h: Add function prototype.
+
+2026-03-20  Pierre-Emmanuel Patry  <[email protected]>
+
+       * ast/rust-ast.h (class Attribute): Make visitable parent class public.
+
+2026-03-20  Pierre-Emmanuel Patry  <[email protected]>
+
+       * ast/rust-ast.h (class Attribute): Add a node id member.
+
+2026-03-20  Pierre-Emmanuel Patry  <[email protected]>
+
+       * ast/rust-ast-full-decls.h (struct Attribute): Change from here...
+       (class Attribute): ...to a class here.
+       * ast/rust-ast-visitor.cc (DefaultASTVisitor::visit): Add a default
+       visit function for the attributes.
+       * ast/rust-ast-visitor.h: Add a proper visit function declaration for
+       attributes.
+       * ast/rust-ast.cc (Attribute::accept_vis): Add a function to accept a
+       visitor within the attributes.
+       * ast/rust-ast.h (struct Attribute): Add the accept_vis function
+       prototype.
+       (class Attribute): Rename from struct to class.
+       * expand/rust-derive.h: Add an empty implementation for visits to
+       prevent the visitor from recursing into the attributes.
+       * hir/rust-ast-lower-base.cc (ASTLoweringBase::visit): Add missing
+       implementation for attribute visit function. Add a check for derive
+       attributes that would have slipped through the passes.
+       * hir/rust-ast-lower-base.h: Add function prototype.
+       * resolve/rust-early-name-resolver-2.0.cc (Early::visit_attributes):
+       Split the function into two halves.
+       (Early::visit_derive_attribute): Specialized function from
+       visit_attribute for derive attributes.
+       (Early::visit_non_builtin_attribute): Likewise for non builtin
+       attributes.
+       (Early::visit): Rename visit_attributes to visit.
+       * resolve/rust-early-name-resolver-2.0.h (class Early): Update function
+       prototypes.
+
+2026-03-20  Pierre-Emmanuel Patry  <[email protected]>
+
+       * util/rust-attributes.cc: Add "feature", "no_core", "doc",
+       "crate_name", "crate_type" and "may_dandle" to the list of builtin
+       attributes.
+
+2026-03-20  Pierre-Emmanuel Patry  <[email protected]>
+
+       * rust-session-manager.cc (Session::handle_crate_name): Use the new
+       constexpr instead of a raw string value.
+       * util/rust-attribute-values.h: Add crate_name and crate_type values.
+
+2026-03-20  Pierre-Emmanuel Patry  <[email protected]>
+
+       * Make-lang.in: Add new specific feature store file.
+       * checks/errors/feature/rust-feature-gate.cc 
(EarlyFeatureGateStore::get):
+       Move from here to rust-feature-store.cc.
+       (EarlyFeatureGateStore::add): Likewise.
+       (EarlyFeatureGateStore::get_error): Likewise.
+       (FeatureGate::check): Likewise.
+       * checks/errors/feature/rust-feature-gate.h (class 
EarlyFeatureGateStore):
+       Move class declaration to rust-feature-store.h header.
+       * parse/rust-parse.h: Change included header.
+       * checks/errors/feature/rust-feature-store.cc: New file.
+       * checks/errors/feature/rust-feature-store.h: New file.
+
+2026-03-20  Pierre-Emmanuel Patry  <[email protected]>
+
+       * checks/errors/feature/rust-feature-gate.cc 
(EarlyFeatureGateStore::get):
+       Add function to retrieve singleton instance.
+       (EarlyFeatureGateStore::add): New function to add an error and the
+       corresponding feature in the store.
+       (EarlyFeatureGateStore::get_error): Add new function to retrieve the
+       oldest error.
+       (FeatureGate::check): Update the function to retrieve the errors from
+       the store instead of getting it from the parameters.
+       * checks/errors/feature/rust-feature-gate.h (class 
EarlyFeatureGateStore):
+       Add a new class to collect all early feature gating errors.
+       * parse/rust-parse.h: Use store instead of keeping the errors within
+       the parser instance.
+       * rust-session-manager.cc (Session::compile_crate): Remove old early
+       error collection from the main parser.
+       * rust-system.h: Include queue header.
+
+2026-03-20  Pierre-Emmanuel Patry  <[email protected]>
+
+       * checks/errors/feature/rust-feature-gate.cc (FeatureGate::check):
+       Check all parse time errors.
+       * checks/errors/feature/rust-feature-gate.h: Update function prototype
+       with parse time errors.
+       * parse/rust-parse-impl-attribute.hxx: Collect potential gating error
+       with non literal attribute values. Remove error emission.
+       * parse/rust-parse.h: Add a function to gather potential feature gating
+       errors as well as a getter for collected errors.
+       * rust-session-manager.cc (Session::compile_crate): Retrieve potential
+       feature gating errors and check them later during the feature gating
+       step.
+       * util/rust-attributes.cc (check_export_name_attribute): Change
+       attribute checking error emission to prevent errors with macro inputs.
+
+2026-03-20  Pierre-Emmanuel Patry  <[email protected]>
+
+       * checks/errors/feature/contrib/fetch: Bump version from 1.49.0 to
+       1.50.0. Change brace expansion to explicit file fetch.
+       * checks/errors/feature/rust-feature-defs.h: Regenerate.
+       * checks/errors/feature/contrib/copyright-stub.h: Add rfl include
+       directive.
+       * checks/errors/feature/rust-feature-defs-rfl.h: New file.
+
+2026-03-20  Pierre-Emmanuel Patry  <[email protected]>
+
+       * Make-lang.in: Add rust-early-cfg-strip object file.
+       * expand/rust-cfg-strip.h (expand_cfg_attrs): Declare function 
prototype.
+       * rust-session-manager.cc (Session::compile_crate): Reorder feature
+       collection and add early cfg strip.
+       * expand/rust-early-cfg-strip.cc: New file.
+       * expand/rust-early-cfg-strip.h: New file.
+
+2026-03-20  Pierre-Emmanuel Patry  <[email protected]>
+
+       * expand/rust-cfg-strip.cc (CfgStrip::fails_cfg): Remove function.
+       * expand/rust-cfg-strip.h: Remove function prototype.
+
+2026-03-20  Pierre-Emmanuel Patry  <[email protected]>
+
+       * Make-lang.in: Add new feature collector file.
+       * checks/errors/feature/rust-feature-gate.cc (FeatureGate::visit):
+       Remove feature collection from gating visitor.
+       (FeatureGate::gate): Use features from the crate feature entity instead
+       of old class members.
+       * checks/errors/feature/rust-feature-gate.h: Get features from a
+       separate CrateFeatures struct instead of keeping them in the class.
+       * rust-session-manager.cc (Session::compile_crate): Collect features
+       before gating them.
+       * util/rust-attribute-values.h: Add feature attribute value.
+       * checks/errors/feature/rust-feature-collector.cc: New file.
+       * checks/errors/feature/rust-feature-collector.h: New file.
+
+2026-03-20  Pierre-Emmanuel Patry  <[email protected]>
+
+       * util/rust-attributes.cc (is_builtin): Rename from here ...
+       (identify_builtin): ... to here.
+       (is_proc_macro_type): Handle new return value.
+       (AttributeChecker::check_inner_attribute): Likewise.
+       (AttributeChecker::check_attribute): Likewise.
+       (AttributeChecker::visit): Likewise.
+       * util/rust-attributes.h (identify_builtin): Update function prototype.
+
+2026-03-20  jayant chauhan  <[email protected]>
+
+       * ast/rust-ast.cc (Attribute::get_traits_to_derive): Propagate location
+       info from MetaWord to SimplePath.
+
+2026-03-20  Owen Avery  <[email protected]>
+
+       * ast/rust-ast.h: Include "rust-cloneable.h".
+       (struct CloneableDelegate<std::unique_ptr<AST::Pattern>>): Add
+       specialization.
+       * ast/rust-pattern.cc (IdentifierPattern::as_string): Handle
+       field type changes.
+       (RangePattern::as_string): Likewise.
+       (ReferencePattern::as_string): Likewise.
+       (StructPatternFieldTuplePat::as_string): Likewise.
+       (StructPatternFieldIdentPat::as_string): Likewise.
+       (StructPatternElements::as_string): Likewise.
+       (TupleStructItemsNoRest::as_string): Likewise.
+       (TupleStructItemsHasRest::as_string): Likewise.
+       (TupleStructPattern::as_string): Likewise.
+       (TuplePatternItemsNoRest::as_string): Likewise.
+       (TuplePatternItemsHasRest::as_string): Likewise.
+       (TuplePattern::as_string): Likewise.
+       (SlicePatternItemsNoRest::as_string): Likewise.
+       (SlicePatternItemsHasRest::as_string): Likewise.
+       (SlicePattern::as_string): Likewise.
+       (AltPattern::as_string): Likewise.
+       * ast/rust-pattern.h: Include "rust-cloneable.h".
+       (class IdentifierPattern): Use Cloneable to simplify copying.
+       (class RangePattern): Likewise.
+       (class ReferencePattern): Likewise.
+       (class StructPatternFieldTuplePat): Likewise.
+       (class StructPatternFieldIdentPat): Likewise.
+       (class StructPatternElements): Likewise.
+       (class TupleStructItemsNoRest): Likewise.
+       (class TupleStructItemsHasRest): Likewise.
+       (class TupleStructPattern): Likewise.
+       (class TuplePatternItemsNoRest): Likewise.
+       (class TuplePatternItemsHasRest): Likewise.
+       (class TuplePattern): Likewise.
+       (class GroupedPattern): Likewise.
+       (class SlicePatternItemsNoRest): Likewise.
+       (class SlicePatternItemsHasRest): Likewise.
+       (class SlicePattern): Likewise.
+       (class AltPattern): Likewise.
+       (struct
+       CloneableDelegate<std::unique_ptr<AST::RangePatternBound>>): Add
+       specialization.
+       (struct
+       CloneableDelegate<std::unique_ptr<AST::TupleStructItems>>):
+       Likewise.
+       (struct
+       CloneableDelegate<std::unique_ptr<AST::TuplePatternItems>>):
+       Likewise.
+       (struct
+       CloneableDelegate<std::unique_ptr<AST::SlicePatternItems>>):
+       Likewise.
+       (struct
+       CloneableDelegate<std::unique_ptr<AST::StructPatternField>>):
+       Likewise.
+       * util/rust-cloneable.h: New file.
+
 2026-02-27  Islam-Imad  <[email protected]>
 
        * typecheck/rust-hir-type-check-struct.cc: enhance missing fields error 
message
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 1a74bcd05418..72f915bec5d8 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,118 @@
+2026-03-20  Tobias Burnus  <[email protected]>
+           Sandra Loosemore  <[email protected]>
+
+       PR c/122866
+       * c-c++-common/gomp/pr122866.c: New.
+
+2026-03-20  Kwok Cheung Yeung  <[email protected]>
+           Sandra Loosemore  <[email protected]>
+
+       * c-c++-common/gomp/target-map-iterators-6.c: New.
+
+2026-03-20  Eric Botcazou  <[email protected]>
+
+       * gnat.dg/implicit_deref1.adb: New test.
+       * gnat.dg/implicit_deref2.adb: Likewise.
+       * gnat.dg/implicit_deref3.adb: Likewise.
+
+2026-03-20  Marek Polacek  <[email protected]>
+
+       PR c++/124575
+       * g++.dg/reflect/expr16.C: New test.
+
+2026-03-20  Pierre-Emmanuel Patry  <[email protected]>
+
+       * rust/compile/cli_inner_attribute_injection.rs: New test.
+
+2026-03-20  Enes Cevik  <[email protected]>
+
+       * rust/compile/bswap.rs: New test.
+       * rust/execute/bswap.rs: New test.
+
+2026-03-20  Mohamed Ali  <[email protected]>
+
+       * rust/compile/match-scope.rs: Fix test.
+       * rust/compile/no_core_feature_gate.rs: New test.
+
+2026-03-20  Harishankar  <[email protected]>
+
+       * rust/compile/issue-4411.rs: New test.
+
+2026-03-20  Pierre-Emmanuel Patry  <[email protected]>
+
+       * rust/compile/wildcard_items.rs: Move to...
+       * rust/compile/wildcard_const.rs: ...here.
+       * rust/compile/wildcard_enum.rs: New test.
+       * rust/compile/wildcard_enum_variant.rs: New test.
+       * rust/compile/wildcard_static.rs: New test.
+       * rust/compile/wildcard_struct.rs: New test.
+       * rust/compile/wildcard_variable.rs: New test.
+
+2026-03-20  Pierre-Emmanuel Patry  <[email protected]>
+
+       * rust/compile/issue-3947.rs: Do not expect a warning on this
+       underscore prefixed function.
+
+2026-03-20  Pierre-Emmanuel Patry  <[email protected]>
+
+       * rust/compile/wildcard_items.rs: New test.
+
+2026-03-20  Owen Avery  <[email protected]>
+
+       * rust/execute/torture/match-structpattern-tuplefield.rs: Fix
+       test.
+       * rust/compile/match-scope.rs: New test.
+
+2026-03-20  jayant chauhan  <[email protected]>
+
+       * rust/compile/issue-3951.rs: New test.
+
+2026-03-20  Pierre-Emmanuel Patry  <[email protected]>
+
+       * rust/compile/attr_malformed_path.rs: Filter existing test to x86_64
+       exclusively, add two new tests that appear when visiting the resulting
+       expression.
+
+2026-03-20  Pierre-Emmanuel Patry  <[email protected]>
+
+       * rust/compile/issue-4212.rs: Update test with the new errors.
+
+2026-03-20  Pierre-Emmanuel Patry  <[email protected]>
+
+       * rust/compile/issue-3661.rs: Add key_value_attribute feature to
+       prevent error on stringify macro.
+       * rust/compile/early_feature_gate_in_macro.rs: Add test to highlight
+       early feature gate error collection within macros.
+
+2026-03-20  Pierre-Emmanuel Patry  <[email protected]>
+
+       * rust/compile/doc_macro.rs: Enable feature to use a macro within an
+       attribute input.
+       * rust/compile/parse_time_feature_gate.rs: New test.
+
+2026-03-20  Harishankar  <[email protected]>
+
+       * rust/compile/issue-4413.rs: New test.
+
+2026-03-20  jayant chauhan  <[email protected]>
+
+       * rust/compile/issue-4433.rs: Update test to expect valid line numbers.
+
+2026-03-20  Yangyu Chen  <[email protected]>
+
+       * g++.target/aarch64/virtual-lto.C: New test.
+
+2026-03-20  Christopher Albert  <[email protected]>
+
+       PR fortran/84779
+       PR fortran/84779
+       * gfortran.dg/pr84779.f90: New test.
+
+2026-03-20  Christopher Albert  <[email protected]>
+
+       PR fortran/120723
+       * gfortran.dg/goacc/pr120723.f90: New test.
+
 2026-03-19  Paul Thomas  <[email protected]>
 
        PR fortran/124161
diff --git a/libgomp/ChangeLog b/libgomp/ChangeLog
index 6bb1dca4002a..14f60e253351 100644
--- a/libgomp/ChangeLog
+++ b/libgomp/ChangeLog
@@ -1,3 +1,18 @@
+2026-03-20  Tobias Burnus  <[email protected]>
+           Sandra Loosemore  <[email protected]>
+
+       * target.c (gomp_exit_data): Handle iterators.
+       * testsuite/libgomp.c-c++-common/target-enter-data-iterators-1.c: New.
+       * testsuite/libgomp.c-c++-common/target-update-iterators-2.c:
+       Also test "target exit data".
+       * testsuite/libgomp.c-c++-common/target-update-iterators-3.c:
+       Likewise.
+
+2026-03-20  Kwok Cheung Yeung  <[email protected]>
+           Sandra Loosemore  <[email protected]>
+
+       * testsuite/libgomp.c-c++-common/target-data-iterators-1.c: New.
+
 2026-03-18  Arsen Arsenović  <[email protected]>
 
        * plugin/plugin-gcn.c (struct kernel_dispatch): Add a field to
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 447046a19d12..cc47d27d286b 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,30 @@
+2026-03-20  Jonathan Wakely  <[email protected]>
+
+       PR libstdc++/122567
+       * src/c++20/tzdb.cc (tzdb::current_zone): Loop over all trailing
+       components of /etc/localtime path. Use readlink instead of
+       std::filesystem::read_symlink.
+
+2026-03-20  Jonathan Wakely  <[email protected]>
+
+       * src/c++20/tzdb.cc [_AIX]: Change #ifndef to #ifdef.
+
+2026-03-20  Jonathan Wakely  <[email protected]>
+
+       PR libstdc++/124568
+       * testsuite/24_iterators/istreambuf_iterator/105580.cc: Add
+       no_pch option.
+
+2026-03-20  Jonathan Wakely  <[email protected]>
+
+       * src/c++17/fs_path.cc (path::operator+=): Use pointer
+       comparison to detect aliasing instead of a loop.
+
+2026-03-20  Jonathan Wakely  <[email protected]>
+
+       * include/std/generator (_Stateless_alloc): Swap order of
+       constraints.
+
 2026-03-19  François Dumont  <[email protected]>
 
        * src/c++11/debug.cc (_Safe_sequence_base::_M_detach_single): Do not

Reply via email to