[gcc r16-8240] Daily bump.
GCC Administrator
gccadmin@gcc.gnu.org
Sat Mar 21 00:17:03 GMT 2026
https://gcc.gnu.org/g:8470a3564cd292d05934c79e606a77e8855946d0
commit r16-8240-g8470a3564cd292d05934c79e606a77e8855946d0
Author: GCC Administrator <gccadmin@gcc.gnu.org>
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 <tburnus@baylibre.com>
+ Sandra Loosemore <sloosemore@baylibre.com>
+
+ PR c/122866
+ * gimplify.cc (omp_instantiate_mapper): Give a sorry if there are
+ iterators.
+
+2026-03-20 Kwok Cheung Yeung <kcyeung@baylibre.com>
+ Sandra Loosemore <sloosemore@baylibre.com>
+
+ * gimplify.cc (gimplify_omp_workshare): Handle iterators in
+ "target data".
+
+2026-03-20 Kyrylo Tkachov <ktkachov@nvidia.com>
+
+ * config/aarch64/tuning_models/olympus.h (olympus_tunings): Set
+ loop_align to 64:16.
+
+2026-03-20 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp>
+
+ * 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 <jakub@redhat.com>
+
+ PR target/124565
+ * config/i386/i386.cc (ix86_build_builtin_va_list_64): Set TREE_PUBLIC
+ on type_decl.
+
+2026-03-20 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/124566
+ * config/sh/sh.cc (sh_build_builtin_va_list): Set TREE_PUBLIC
+ on type_decl.
+
+2026-03-20 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/124578
+ * tree-ssa-sccvn.cc (vn_reference_eq): Consistently check
+ fields from vro2.
+
+2026-03-20 Yangyu Chen <cyy@cyyself.name>
+
+ * 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 <jakub@redhat.com>
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 <ebotcazou@adacore.com>
+
+ 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 <doko@gcc.gnu.org>
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 <polacek@redhat.com>
+
+ PR c++/124575
+ * call.cc (set_up_extended_ref_temp): If var is consteval-only,
+ mark it DECL_EXTERNAL.
+
2026-03-19 Jason Merrill <jason@redhat.com>
* 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 <albert@tugraz.at>
+
+ 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 <pault@gcc.gnu.org>
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 <josmyers@redhat.com>
+
+ * sv.po: Update.
+
2026-03-16 Joseph Myers <josmyers@redhat.com>
* 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 <pierre-emmanuel.patry@embecosm.com>
+
+ * 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 <pierre-emmanuel.patry@embecosm.com>
+
+ * 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 <pierre-emmanuel.patry@embecosm.com>
+
+ * util/rust-attributes.cc: Add no_std to list of builtin attributes.
+
+2026-03-20 Enes Cevik <nsvke@proton.me>
+
+ * 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 <mohmedali1462005@gmail.com>
+
+ * 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 <harishankarpp7@gmail.com>
+
+ * 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 <pierre-emmanuel.patry@embecosm.com>
+
+ * 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 <pierre-emmanuel.patry@embecosm.com>
+
+ * 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 <pierre-emmanuel.patry@embecosm.com>
+
+ * parse/rust-parse-impl.hxx: Remove additional error message.
+
+2026-03-20 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com>
+
+ * checks/lints/rust-lint-scan-deadcode.h: Add additional condition
+ to prevent warning emission. Check for underscore prefix.
+
+2026-03-20 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com>
+
+ * 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 <pierre-emmanuel.patry@embecosm.com>
+
+ * 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 <pierre-emmanuel.patry@embecosm.com>
+
+ * resolve/rust-toplevel-name-resolver-2.0.cc(TopLevel::visit): Insert
+ constant item only if now wildcard.
+
+2026-03-20 Owen Avery <powerboat9.gamer@gmail.com>
+
+ * resolve/rust-default-resolver.cc (DefaultResolver::visit):
+ Override MatchCase visiting function.
+ * resolve/rust-default-resolver.h (DefaultResolver::visit):
+ Likewise.
+
+2026-03-20 jayant chauhan <0001jayant@gmail.com>
+
+ * expand/rust-derive.cc (DeriveVisitor::derive): Handle
+ `BuiltinMacro::RustcEncodable` and `BuiltinMacro::RustcDecodable`.
+
+2026-03-20 vibhatsu <maulikbarot2915@gmail.com>
+
+ * 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 <maulikbarot2915@gmail.com>
+
+ * 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 <0001jayant@gmail.com>
+
+ * 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 <pierre-emmanuel.patry@embecosm.com>
+
+ * 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 <pierre-emmanuel.patry@embecosm.com>
+
+ * 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 <pierre-emmanuel.patry@embecosm.com>
+
+ * 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 <pierre-emmanuel.patry@embecosm.com>
+
+ * 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 <pierre-emmanuel.patry@embecosm.com>
+
+ * 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 <pierre-emmanuel.patry@embecosm.com>
+
+ * 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 <pierre-emmanuel.patry@embecosm.com>
+
+ * ast/rust-ast.h (class Attribute): Make visitable parent class public.
+
+2026-03-20 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com>
+
+ * ast/rust-ast.h (class Attribute): Add a node id member.
+
+2026-03-20 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com>
+
+ * 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 <pierre-emmanuel.patry@embecosm.com>
+
+ * 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 <pierre-emmanuel.patry@embecosm.com>
+
+ * 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 <pierre-emmanuel.patry@embecosm.com>
+
+ * 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 <pierre-emmanuel.patry@embecosm.com>
+
+ * 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 <pierre-emmanuel.patry@embecosm.com>
+
+ * 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 <pierre-emmanuel.patry@embecosm.com>
+
+ * 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 <pierre-emmanuel.patry@embecosm.com>
+
+ * 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 <pierre-emmanuel.patry@embecosm.com>
+
+ * expand/rust-cfg-strip.cc (CfgStrip::fails_cfg): Remove function.
+ * expand/rust-cfg-strip.h: Remove function prototype.
+
+2026-03-20 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com>
+
+ * 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 <pierre-emmanuel.patry@embecosm.com>
+
+ * 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 <0001jayant@gmail.com>
+
+ * ast/rust-ast.cc (Attribute::get_traits_to_derive): Propagate location
+ info from MetaWord to SimplePath.
+
+2026-03-20 Owen Avery <powerboat9.gamer@gmail.com>
+
+ * 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 <islamimad404@gmail.com>
* 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 <tburnus@baylibre.com>
+ Sandra Loosemore <sloosemore@baylibre.com>
+
+ PR c/122866
+ * c-c++-common/gomp/pr122866.c: New.
+
+2026-03-20 Kwok Cheung Yeung <kcyeung@baylibre.com>
+ Sandra Loosemore <sloosemore@baylibre.com>
+
+ * c-c++-common/gomp/target-map-iterators-6.c: New.
+
+2026-03-20 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gnat.dg/implicit_deref1.adb: New test.
+ * gnat.dg/implicit_deref2.adb: Likewise.
+ * gnat.dg/implicit_deref3.adb: Likewise.
+
+2026-03-20 Marek Polacek <polacek@redhat.com>
+
+ PR c++/124575
+ * g++.dg/reflect/expr16.C: New test.
+
+2026-03-20 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com>
+
+ * rust/compile/cli_inner_attribute_injection.rs: New test.
+
+2026-03-20 Enes Cevik <nsvke@proton.me>
+
+ * rust/compile/bswap.rs: New test.
+ * rust/execute/bswap.rs: New test.
+
+2026-03-20 Mohamed Ali <mohmedali1462005@gmail.com>
+
+ * rust/compile/match-scope.rs: Fix test.
+ * rust/compile/no_core_feature_gate.rs: New test.
+
+2026-03-20 Harishankar <harishankarpp7@gmail.com>
+
+ * rust/compile/issue-4411.rs: New test.
+
+2026-03-20 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com>
+
+ * 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 <pierre-emmanuel.patry@embecosm.com>
+
+ * rust/compile/issue-3947.rs: Do not expect a warning on this
+ underscore prefixed function.
+
+2026-03-20 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com>
+
+ * rust/compile/wildcard_items.rs: New test.
+
+2026-03-20 Owen Avery <powerboat9.gamer@gmail.com>
+
+ * rust/execute/torture/match-structpattern-tuplefield.rs: Fix
+ test.
+ * rust/compile/match-scope.rs: New test.
+
+2026-03-20 jayant chauhan <0001jayant@gmail.com>
+
+ * rust/compile/issue-3951.rs: New test.
+
+2026-03-20 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com>
+
+ * 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 <pierre-emmanuel.patry@embecosm.com>
+
+ * rust/compile/issue-4212.rs: Update test with the new errors.
+
+2026-03-20 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com>
+
+ * 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 <pierre-emmanuel.patry@embecosm.com>
+
+ * 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 <harishankarpp7@gmail.com>
+
+ * rust/compile/issue-4413.rs: New test.
+
+2026-03-20 jayant chauhan <0001jayant@gmail.com>
+
+ * rust/compile/issue-4433.rs: Update test to expect valid line numbers.
+
+2026-03-20 Yangyu Chen <cyy@cyyself.name>
+
+ * g++.target/aarch64/virtual-lto.C: New test.
+
+2026-03-20 Christopher Albert <albert@tugraz.at>
+
+ PR fortran/84779
+ PR fortran/84779
+ * gfortran.dg/pr84779.f90: New test.
+
+2026-03-20 Christopher Albert <albert@tugraz.at>
+
+ PR fortran/120723
+ * gfortran.dg/goacc/pr120723.f90: New test.
+
2026-03-19 Paul Thomas <pault@gcc.gnu.org>
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 <tburnus@baylibre.com>
+ Sandra Loosemore <sloosemore@baylibre.com>
+
+ * 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 <kcyeung@baylibre.com>
+ Sandra Loosemore <sloosemore@baylibre.com>
+
+ * testsuite/libgomp.c-c++-common/target-data-iterators-1.c: New.
+
2026-03-18 Arsen Arsenović <aarsenovic@baylibre.com>
* 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 <jwakely@redhat.com>
+
+ 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 <jwakely@redhat.com>
+
+ * src/c++20/tzdb.cc [_AIX]: Change #ifndef to #ifdef.
+
+2026-03-20 Jonathan Wakely <jwakely@redhat.com>
+
+ PR libstdc++/124568
+ * testsuite/24_iterators/istreambuf_iterator/105580.cc: Add
+ no_pch option.
+
+2026-03-20 Jonathan Wakely <jwakely@redhat.com>
+
+ * src/c++17/fs_path.cc (path::operator+=): Use pointer
+ comparison to detect aliasing instead of a loop.
+
+2026-03-20 Jonathan Wakely <jwakely@redhat.com>
+
+ * include/std/generator (_Stateless_alloc): Swap order of
+ constraints.
+
2026-03-19 François Dumont <frs.dumont@gmail.com>
* src/c++11/debug.cc (_Safe_sequence_base::_M_detach_single): Do not
More information about the Libstdc++-cvs
mailing list