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

commit r16-8673-gb1fb2157605cd7729ca7e38b1851e4997ab8e74c
Author: GCC Administrator <[email protected]>
Date:   Wed Apr 15 08:16:45 2026 +0000

    Daily bump.

Diff:
---
 config/ChangeLog        |   6 +
 contrib/ChangeLog       |  16 ++
 gcc/ChangeLog           | 118 ++++++++++++
 gcc/DATESTAMP           |   2 +-
 gcc/ada/ChangeLog       |  12 ++
 gcc/cp/ChangeLog        |  96 +++++++++
 gcc/d/ChangeLog         |   4 +
 gcc/fortran/ChangeLog   |  14 ++
 gcc/m2/ChangeLog        |  36 ++++
 gcc/rust/ChangeLog      | 502 ++++++++++++++++++++++++++++++++++++++++++++++++
 gcc/testsuite/ChangeLog | 292 ++++++++++++++++++++++++++++
 libgcc/ChangeLog        |   5 +
 libphobos/ChangeLog     |   4 +
 libstdc++-v3/ChangeLog  |  85 ++++++++
 14 files changed, 1191 insertions(+), 1 deletion(-)

diff --git a/config/ChangeLog b/config/ChangeLog
index 16adb71e88d0..92b186f0d7b0 100644
--- a/config/ChangeLog
+++ b/config/ChangeLog
@@ -1,3 +1,9 @@
+2026-04-13  Torbjörn SVENSSON  <[email protected]>
+
+       PR target/69639
+       * mh-cygwin: Increase to 64MB stack reserve.
+       * mh-mingw: Likewise.
+
 2026-02-04  Prachi Godbole  <[email protected]>
 
        * bootstrap-lto-locality.mk (STAGEprofile_CFLAGS): Remove
diff --git a/contrib/ChangeLog b/contrib/ChangeLog
index 855838f099f0..e1da606fd276 100644
--- a/contrib/ChangeLog
+++ b/contrib/ChangeLog
@@ -1,3 +1,19 @@
+2026-04-15  Jakub Jelinek  <[email protected]>
+
+       * gcc-changelog/git_update_version.py: Add
+       9df40f1f4bec855da864f535e242308ceb1cd5ad and
+       d5fb79718b22207253d62c92dcf8b1c16e1ea370 to ignored_commits.
+
+2026-04-15  Jakub Jelinek  <[email protected]>
+
+       * gcc-changelog/git_update_version.py: Add
+       eec8da328cf1f91db302ab4cee803e269e68ad33 to ignored_commits.
+
+2026-04-15  Jakub Jelinek  <[email protected]>
+
+       * gcc-changelog/git_update_version.py: Add
+       69a2c243dd2cf9f77150c0eb86dfbc0931876bc1 to ignored_commits.
+
 2026-03-14  Jakub Jelinek  <[email protected]>
 
        PR other/124508
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 51f9c66b0715..4b916a7c74c3 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,121 @@
+2026-04-15  H.J. Lu  <[email protected]>
+
+       * config/i386/i386.cc
+       (x86_64_preserve_none_int_parameter_registers): Replace
+       ix86_function_value_regno_p with ix86_function_arg_regno_p in
+       comments.
+
+2026-04-14  Tamar Christina  <[email protected]>
+
+       * config/aarch64/aarch64-cores.def (armagicpu): New.
+       * config/aarch64/aarch64-tune.md: Renegerate
+       * doc/invoke.texi: Document it.
+
+2026-04-14  Andrew MacLeod  <[email protected]>
+
+       PR tree-optimization/124809
+       * value-relation.cc (equiv_oracle::equiv_oracle): Allocate lhs
+       equivalence bitmap.
+       (relation_oracle::record): Check if LHS has already created an
+       equivalence record.
+       * value-relation.h (relation_oracle::relation_oracle): New.
+       (relation_oracle::m_lhs_equiv_set_p): New.
+
+2026-04-14  Richard Earnshaw  <[email protected]>
+
+       PR target/123102
+       * config/arm/arm.md (*cmp_ite0): Apply stricter checks on the
+       comparison mode.
+       (*cmp_ite1, *cmp_and, *cmp_ior): Likewise.
+
+2026-04-14  Martin Jambor  <[email protected]>
+
+       PR ipa/124777
+       * ipa-cp.h (ipacp_value_safe_for_type): Declare.
+       * ipa-cp.cc (ipacp_value_safe_for_type): Make public.
+       * ipa-prop.cc (ipa_set_jf_cst_copy): Fix comment.
+       (ipa_convert_prop_cst_jf): New function.
+       (update_jump_functions_after_inlining): Handle the constant to
+       pass-through case by calling ipa_convert_prop_cst_jf.
+
+2026-04-14  Soumya AR  <[email protected]>
+
+       * config/aarch64/aarch64.opt.urls: Regenerate.
+
+2026-04-14  Richard Biener  <[email protected]>
+
+       PR tree-optimization/124875
+       * tree-ssa-pre.cc (prefer): Also compare TBAA set and base_set.
+       Refactor computing the final prefered expression, do early outs
+       and allow same prefered expressions.
+       (sorted_array_from_bitmap_set): Fix thinko that prevented
+       the last expression in the set of being excluded.
+
+2026-04-14  Soumya AR  <[email protected]>
+           Kyrylo Tkachov  <[email protected]>
+
+       * config.gcc: Add aarch64-narrow-gp-writes.o.
+       * config/aarch64/aarch64-passes.def (INSERT_PASS_BEFORE): Insert
+       pass_narrow_gp_writes before pass_cleanup_barriers.
+       * config/aarch64/aarch64-protos.h (make_pass_narrow_gp_writes): Declare.
+       * config/aarch64/aarch64-tuning-flags.def
+       (AARCH64_EXTRA_TUNING_OPTION): Add NARROW_GP_WRITES.
+       * config/aarch64/aarch64.opt (mnarrow-gp-writes): New option.
+       * config/aarch64/t-aarch64: Add aarch64-narrow-gp-writes.o rule.
+       * config/aarch64/tuning_models/olympus.h: Add
+       AARCH64_EXTRA_TUNE_NARROW_GP_WRITES to tune_flags.
+       * doc/invoke.texi: Document -mnarrow-gp-writes.
+       * config/aarch64/aarch64-narrow-gp-writes.cc: New file.
+
+2026-04-14  Jakub Jelinek  <[email protected]>
+
+       PR tree-optimization/124826
+       * gimple-lower-bitint.cc (bitint_large_huge::handle_load): Look through
+       BIT_FIELD_REF with zero bit offset.
+
+2026-04-14  Jakub Jelinek  <[email protected]>
+
+       * cgraphunit.cc (process_symver_attribute): Fix comment typo,
+       bintuils -> binutils.
+
+2026-04-14  Richard Biener  <[email protected]>
+
+       PR tree-optimization/124868
+       * gimple-ssa-isolate-paths.cc (handle_return_addr_local_phi_arg):
+       Do not diagnose returns in blocks not dominated by the PHI.
+       (find_implicit_erroneous_behavior): Do two sweeps over PHIs,
+       first for NULL dereferences and then for local address returns.
+
+2026-04-14  H.J. Lu  <[email protected]>
+
+       PR target/124876
+       * config/i386/i386.cc (ix86_zero_call_used_regs): Zero ZMM16-31
+       if needed.
+
+2026-04-13  Josef Melcr  <[email protected]>
+
+       PR ipa/124700
+       * cgraph.cc (cgraph_node::is_clone_of): New method, determines
+       whether a node is a descendant of another in the clone tree.
+       * cgraph.h (struct cgraph_node): Add decl of is_clone_of.
+       * cgraphbuild.cc (mark_address): Fix reference creation for
+       cloned callback functions.
+
+2026-04-13  Hu, Lin1  <[email protected]>
+
+       PR target/124710
+       * config/i386/sse.md (iptrps2qq): New mode attribute for
+       ps2qq Intel syntax memory operand size override.
+       
(avx10_2_vcvttps2<sat_cvt_sign_prefix>qqs<mode><mask_name><round_saeonly_name>):
+       Use %<iptrps2qq>1 in Intel syntax to emit qword ptr for V2DI (128-bit)
+       memory operands.
+       (avx10_2_vcvttsd2<sat_cvt_sign_prefix>sis<mode><round_saeonly_name>):
+       Use %q1 in Intel syntax to emit qword ptr for scalar double memory
+       operands.
+       (avx10_2_vcvttss2<sat_cvt_sign_prefix>sis<mode><round_saeonly_name>):
+       Use %k1 in Intel syntax to emit dword ptr for scalar single memory
+       operands.
+
 2026-04-11  Christopher Albert  <[email protected]>
 
        PR fortran/93554
diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP
index a1b35b3687d1..3bd3150050a5 100644
--- a/gcc/DATESTAMP
+++ b/gcc/DATESTAMP
@@ -1 +1 @@
-20260413
+20260415
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index c991efcafbd8..504f4f16c15c 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -1,3 +1,15 @@
+2026-04-13  Eric Botcazou  <[email protected]>
+
+       PR ada/95452
+       * libgnat/g-heasor.adb (Sort.Sift): Add guard against overflow.
+       * libgnat/g-hesorg.adb (Sort.Sift): Likewise.
+       * libgnat/g-hesora.adb (Sort.Sift): Likewise.  Restore consistency.
+
+2026-04-13  Eric Botcazou  <[email protected]>
+
+       PR ada/77535
+       * libgnat/s-pehage.adb (New_Word): Rebase the input.
+
 2026-04-12  Eric Botcazou  <[email protected]>
 
        PR ada/124836
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index fedd56a9f6d0..bd7fe0eb2017 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,99 @@
+2026-04-15  Jakub Jelinek  <[email protected]>
+
+       * pt.cc (finish_expansion_stmt): Implement CWG3149 - Rvalues in
+       destructuring expansion statements.  For esk_destructuring, if
+       expansion_init is not lvalue_p, wrap init into a static_cast
+       to decltype of destruct_decls[i].
+
+2026-04-15  Jakub Jelinek  <[email protected]>
+
+       * mangle.cc (write_reflection): Adjust grammar for type alias
+       reflections.  Don't use write_prefix on arg, instead
+       write_prefix its mangling context, write_unqualified_name of
+       the alias, optionally write_template_args, append underscore
+       and write_type the original type.
+
+2026-04-15  Jakub Jelinek  <[email protected]>
+
+       PR c++/124862
+       * decl.cc (cp_decomp_size): If btype is different from type,
+       check if it is accessible.
+
+2026-04-15  Jakub Jelinek  <[email protected]>
+
+       PR c++/124850
+       * typeck.cc (cxx_mark_addressable): For DECL_ANON_UNION_VAR_P vars
+       also mark their DECL_VALUE_EXPR.
+
+2026-04-15  Jakub Jelinek  <[email protected]>
+
+       * reflect.cc (adjust_array_elt): New function.
+       (get_range_elts): Implement LWG4483 - Multidimensional arrays are not
+       supported by meta::reflect_constant_array and related functions.
+       Handle ARRAY_TYPE valuet.  Don't unshare_expr in the class valuet case,
+       get_template_param_object will unshare.
+
+2026-04-14  Patrick Palka  <[email protected]>
+
+       PR c++/124544
+       * tree.cc (strip_typedefs_expr) <case REFLECT_EXPR>: Don't
+       recurse into a type operand.
+       (cp_tree_equal) <case REFLECT_EXPR>: For a reflection of an
+       alias, also compare TYPE_NAMEs directly.
+
+2026-04-14  Marek Polacek  <[email protected]>
+
+       * cp-tree.h (reflection_function_template_p): Declare.
+       * parser.cc (cp_parser_splice_expression): Use
+       reflection_function_template_p instead of really_overloaded_fn.
+       * reflect.cc (check_splice_expr): Likewise.
+       (reflection_function_template_p): New.
+
+2026-04-13  Marek Polacek  <[email protected]>
+
+       PR c++/123237
+       PR c++/124771
+       PR c++/124842
+       * mangle.cc (write_splice): New.
+       (write_prefix): Call write_splice for SPLICE_SCOPE.
+       (write_type): Likewise.
+       (write_expression): Call write_splice for dependent_splice_p.
+       (write_reflection): Handle the "tt" and "de" prefixes.
+       * reflect.cc (reflection_mangle_prefix): For
+       DECL_TEMPLATE_TEMPLATE_PARM_P, use the prefix "tt".  For
+       dependent reflections, use "de".
+
+2026-04-13  Marek Polacek  <[email protected]>
+
+       PR c++/124835
+       * parser.cc (cp_parser_decltype_expr): Check that [: :] is
+       followed by a close paren before declaring it an unparenthesized
+       splice-expression.
+
+2026-04-13  Jason Merrill  <[email protected]>
+
+       PR c++/103901
+       PR c++/123566
+       * pt.cc (push_template_decl): Sorry on local class in lambda in
+       template parm list.
+
+2026-04-13  Jason Merrill  <[email protected]>
+
+       PR c++/122632
+       * pt.cc (tsubst_exception_specification): Add cp_unevaluated.
+
+2026-04-13  Jason Merrill  <[email protected]>
+
+       PR c++/122884
+       * pt.cc (reconstruct_lambda_capture_pack): New.
+       (tsubst_pack_expansion): Use it.
+       (tsubst_decl): Handle capture proxy.
+       (tsubst): Handle lambda closure.
+       (tsubst_expr): Handle closure field.
+       (tsubst_lambda_expr): Copy closure location.
+       * constraint.cc (satisfy_declaration_constraints): Set up
+       local_specializations for a lambda.
+
 2026-04-10  Jakub Jelinek  <[email protected]>
 
        PR c++/124831
diff --git a/gcc/d/ChangeLog b/gcc/d/ChangeLog
index a73a609d83e5..bae93b196183 100644
--- a/gcc/d/ChangeLog
+++ b/gcc/d/ChangeLog
@@ -1,3 +1,7 @@
+2026-04-14  Iain Buclaw  <[email protected]>
+
+       * dmd/MERGE: Merge upstream dmd e145b91245.
+
 2026-04-07  Sandra Loosemore  <[email protected]>
 
        PR other/124784
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index 2b690d885737..e3de8ff2620f 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,17 @@
+2026-04-14  Harald Anlauf  <[email protected]>
+
+       PR fortran/124807
+       * decl.cc (add_init_expr_to_sym): Suggested by Coverity:
+       Check sym->as != NULL before dereferencing it.
+
+2026-04-13  Christopher Albert  <[email protected]>
+
+       PR fortran/101760
+       PR fortran/102314
+       * trans-openmp.cc (gfc_omp_finish_clause): Compute OMP_CLAUSE_SIZE
+       from the array domain bounds and element size for VLA types instead
+       of using TYPE_SIZE_UNIT directly, to avoid corrupting the type.
+
 2026-04-11  Christopher Albert  <[email protected]>
 
        PR fortran/93814
diff --git a/gcc/m2/ChangeLog b/gcc/m2/ChangeLog
index eb1112339237..60564c3df380 100644
--- a/gcc/m2/ChangeLog
+++ b/gcc/m2/ChangeLog
@@ -1,3 +1,39 @@
+2026-04-14  Gaius Mulley  <[email protected]>
+
+       PR modula2/105408
+       * Make-lang.in (GM2-COMP-BOOT-MODS): Remove duplicate NameKey.mod.
+       * gm2-compiler/M2GenGCC.mod (import): Remove BuildAssignmentTree.
+       Add CopyMemcpy.
+       (IsSystemTypeBecomes): New procedure function.
+       (CodeAssignment): Rewrite using CopyMemcpy and IsSystemTypeBecomes.
+       * gm2-gcc/m2convert.cc (const_to_ISO_aggregate_type): Reverse
+       array elements if BYTES_BIG_ENDIAN.
+       * gm2-gcc/m2pp.cc (ps): New function.
+       * gm2-gcc/m2pp.h (pf): Added comment.
+       (pe): Ditto.
+       (pt): Ditto.
+       (ptl): Ditto.
+       (pv): Ditto.
+       (ptcl): Ditto.
+       * gm2-gcc/m2statement.cc (copy_memcpy): Replace with ...
+       (m2statement_CopyMemcpy): ... this.
+       (CopyByField_Lower): Call m2statement_CopyMemcpy instead of copy_memcpy.
+       (m2statement_BuildAssignmentTree): Tidied up comment.
+       Add test for ARRAY_TYPE CONSTRUCTOR expr and use
+       m2statement_CopyMemcpy.
+       Return type changed to void.
+       * gm2-gcc/m2statement.def (BuildAssignmentTree): Rewrite declaration.
+       (CopyMemcpy): New procedure declaration.
+       * gm2-gcc/m2statement.h (m2statement_BuildAssignmentTree): Replace
+       return type with void.
+       (m2statement_CopyMemcpy): New function declaration.
+       * gm2-gcc/m2type.cc (m2type_ReverseArrayConstructorElements): New
+       function.
+       * gm2-gcc/m2type.def (ReverseArrayConstructorElements): New
+       procedure function declaration.
+       * gm2-gcc/m2type.h (m2type_ReverseArrayConstructorElements): New
+       function declaration.
+
 2026-04-10  Gaius Mulley  <[email protected]>
 
        PR modula2/124840
diff --git a/gcc/rust/ChangeLog b/gcc/rust/ChangeLog
index 2784e84a396d..10dcdb27a0c3 100644
--- a/gcc/rust/ChangeLog
+++ b/gcc/rust/ChangeLog
@@ -1,3 +1,505 @@
+2026-04-14  jayant chauhan  <[email protected]>
+
+       * backend/rust-compile-item.cc (CompileItem::visit): Do not insert
+       const_expr into the context if it is an error_mark_node.
+       * backend/rust-compile-implitem.cc (CompileTraitItem::visit): Likewise.
+
+2026-04-14  AhmedSaid3617  <[email protected]>
+
+       * ast/rust-item.h:(PathType::get_glob_type): Added const qualifier to 
allow
+       function call from const objects.
+       * resolve/rust-forever-stack.hxx:
+       (ForeverStack<N>::resolve_path): Check for empty segments vector and
+       return starting point.
+       * resolve/rust-toplevel-name-resolver-2.0.cc (flatten_glob): Preserve 
the
+       opening scope resolution property of the use statement.
+
+2026-04-14  Islam-Imad  <[email protected]>
+
+       * backend/rust-compile-expr.cc (CompileExpr::visit): set unit type.
+
+2026-04-14  Mohamed Ali  <[email protected]>
+
+       * backend/rust-compile-intrinsic.cc: Register cttz and cttz_nonzero 
intrinsics.
+       * backend/rust-intrinsic-handlers.cc (cttz_handler): Implemnt 
cttz_handler.
+       (cttz_nonzero_handler): Implemnt cttz_nonzero_handler.
+       * backend/rust-intrinsic-handlers.h (cttz_handler): Add decl for 
cttz_handler.
+       (cttz_nonzero_handler): Add decl for cttz_handler.
+       * util/rust-intrinsic-values.h: map cttz_nonzero to its name.
+
+2026-04-14  Owen Avery  <[email protected]>
+
+       * backend/rust-compile-asm.cc: Include "rust-ggc.h".
+       (chain_asm_operand): Use GGC::ChainList.
+       (CompileAsm::asm_construct_outputs): Likewise.
+       (CompileAsm::asm_construct_inputs): Likewise.
+       (CompileLlvmAsm::construct_operands): Likewise.
+       (CompileLlvmAsm::construct_clobbers): Likewise.
+       * util/rust-ggc.h (class ChainList): New class.
+
+2026-04-14  Philipp Gesang  <[email protected]>
+
+       * parse/rust-parse-impl.hxx: Refactor qualifier parsing
+       * parse/rust-parse.h: (parse_function_qualifiers) Likewise
+
+2026-04-14  Philipp Gesang  <[email protected]>
+
+       * parse/rust-parse-impl.hxx (parse_function_qualifiers)
+       Collect qualifiers into vector before generating the
+       error message
+       * parse/rust-parse.h: (parse_function_qualifiers) Make
+       function fallible
+
+2026-04-14  Kushal Pal  <[email protected]>
+
+       * checks/errors/rust-ast-validation.cc (ASTValidation::visit):
+       Add error for functions with `default` qualifier outside of impl
+       blocks.
+       * parse/rust-parse-impl.hxx (Parser::parse_item):
+       Allow parsing of functions with `default` qualifier.
+       (Parser::parse_vis_item): Likewise.
+
+2026-04-14  Kushal Pal  <[email protected]>
+
+       * ast/rust-ast-builder.cc (AstBuilder::fn_qualifiers):
+       Add new parameter.
+       * ast/rust-ast-builder.h: Likewise.
+       * ast/rust-ast.cc (Function::Function):
+       Remove current default parameter.
+       (Function::operator=):
+       Remove current default parameter.
+       * ast/rust-item.h (class FunctionQualifiers):
+       Add data member to represent defaultness of a function.
+       (class Function):
+       Remove current default parameter.
+       * parse/rust-parse-impl.hxx (Parser::parse_function_qualifiers):
+       Parse function qualifiers in order.
+       * util/rust-common.h (enum class): Create enum to represent
+       defaultness of a function.
+
+2026-04-14  Yap Zhi Heng  <[email protected]>
+
+       * typecheck/rust-hir-type-check-base.cc 
(TypeCheckBase::parse_repr_options):
+       Allow parsing of AttrInputMetaItemContainer.
+
+2026-04-14  Pierre-Emmanuel Patry  <[email protected]>
+
+       * Make-lang.in: Add a new rust-attribute-checker file.
+       * checks/errors/rust-builtin-attribute-checker.h 
(check_valid_attribute_for_item):
+       Change BuiltinAttributeChecker doc comment.
+       * rust-session-manager.cc: Include the new rust-attribute-checker
+       header.
+       * util/rust-attributes.cc (AttributeChecker::AttributeChecker): Move to
+       rust-attribute-checker.cc.
+       (AttributeChecker::go): Likewise.
+       (is_proc_macro_type): Likewise.
+       (check_proc_macro_non_function): Likewise.
+       (check_proc_macro_non_root): Likewise.
+       (AttributeChecker::visit): Likewise.
+       * util/rust-attributes.h (class AttributeChecker): Move to
+       rust-attribute-checker.h.
+       * checks/errors/rust-attribute-checker.cc: New file.
+       * checks/errors/rust-attribute-checker.h: New file.
+
+2026-04-14  Pierre-Emmanuel Patry  <[email protected]>
+
+       * checks/errors/rust-builtin-attribute-checker.cc (std::function<void):
+       Use the new attribute value variables instead of raw values.
+       * util/rust-attribute-values.h: Add deny, warn and forbid values.
+
+2026-04-14  Pierre-Emmanuel Patry  <[email protected]>
+
+       * checks/errors/rust-builtin-attribute-checker.cc (check_doc_attribute):
+       Move from here...
+       (doc): ...to here.
+       (check_deprecated_attribute): Move from here...
+       (deprecated): ...to here.
+       (check_link_section_attribute): Move from here...
+       (link_section): ... to here.
+       (check_export_name_attribute): Move from here...
+       (export_name): ... to here.
+       (check_no_mangle_function): Remove internal structure checking and move
+       it to no_mangle handler.
+       (check_lint_attribute): Move from here...
+       (lint): ... to here.
+       (link_name): Likewise with link_name.
+       (check_crate_type): Move to anonymous namespace within the handler
+       namespace.
+       (proc_macro_derive): Add proc macro specific handler.
+       (proc_macro): Likewise.
+       (target_feature): Likewise.
+       (no_mangle): Add specific handler for no_mangler attribute internal
+       structure checking.
+       (std::function<void): Add map with attribute name to handler matching.
+       (tl::optional<std::function<void): Likewise.
+       (lookup_handler): Add an helper function to retrieve the handler of any
+       builtin attribute.
+       (BuiltinAttributeChecker::visit): Change attribute visitor call with
+       new handler call.
+       * checks/errors/rust-builtin-attribute-checker.h 
(check_valid_attribute_for_item):
+       Add prototype.
+
+2026-04-14  Pierre-Emmanuel Patry  <[email protected]>
+
+       * checks/errors/rust-builtin-attribute-checker.cc 
(BuiltinAttributeChecker::visit):
+       Deduplicate lines using the new templated function within the visitor
+       functions.
+       * checks/errors/rust-builtin-attribute-checker.h (class 
BuiltinAttributeChecker):
+       Create a new templated function that achieves the default attribute
+       checking operations.
+
+2026-04-14  Pierre-Emmanuel Patry  <[email protected]>
+
+       * expand/rust-expand-visitor.cc (ExpandVisitor::visit): Flatten
+       AttrInputExpr containing a literal to an AttrInputLiteral.
+       * expand/rust-expand-visitor.h: Add function prototype.
+
+2026-04-14  Pierre-Emmanuel Patry  <[email protected]>
+
+       * ast/rust-ast.h: Add helper to set a new attribute input.
+       * expand/rust-expand-visitor.cc (ExpandVisitor::expand_inner_stmts):
+       Visit builtin attributes.
+       (ExpandVisitor::visit): Likewise.
+       * resolve/rust-early-name-resolver-2.0.cc (Early::visit): Expand
+       attribute input expr.
+
+2026-04-14  Pierre-Emmanuel Patry  <[email protected]>
+
+       * Make-lang.in: Add file for builtin attribute checking.
+       * hir/rust-ast-lower-base.cc 
(ASTLoweringBase::handle_doc_item_attribute):
+       Remove error emission and replace it with an assert. The error message
+       will now be emitted from the builtin attribute checking pass.
+       * rust-session-manager.cc (Session::compile_crate): Add builtin
+       attribute checking step after expansion.
+       * util/rust-attributes.cc (Attributes::is_known): Move down.
+       (Attributes::extract_string_literal): Likewise.
+       (Attributes::valid_outer_attribute): Add a function to retrieve outer/
+       inner status for a given builtin attribute value.
+       (AttributeChecker::visit): Move some checking to builtin attribute
+       checker.
+       (identify_builtin): Rename function from here ...
+       (lookup_builtin): ... to here.
+       (check_doc_alias): Move to builtin attribute checker.
+       (check_doc_attribute): Likewise.
+       (check_deprecated_attribute): Likewise.
+       (check_valid_attribute_for_item): Likewise.
+       (AttributeChecker::check_inner_attribute): Likewise.
+       (check_link_section_attribute): Likewise.
+       (check_export_name_attribute): Likewise.
+       (check_lint_attribute): Likewise.
+       (check_no_mangle_function): Likewise.
+       (is_proc_macro_type): Update function call name.
+       * util/rust-attributes.h (identify_builtin): Update prototype.
+       (lookup_builtin): Likewise.
+       * checks/errors/rust-builtin-attribute-checker.cc: New file.
+       * checks/errors/rust-builtin-attribute-checker.h: New file.
+
+2026-04-14  Pierre-Emmanuel Patry  <[email protected]>
+
+       * ast/rust-ast-collector.cc (TokenCollector::visit): Remove
+       AttrInputMacro handling.
+       * ast/rust-ast-collector.h: Remove function prototype.
+       * ast/rust-ast-full-decls.h (class AttrInputMacro): Remove forward
+       declaration.
+       * ast/rust-ast-visitor.cc (DefaultASTVisitor::visit): Remove function.
+       * ast/rust-ast-visitor.h: Remove function prototypes.
+       * ast/rust-ast.cc (Attribute::get_traits_to_derive): Remove handling of
+       macros.
+       (AttrInputMacro::as_string): Remove function.
+       (AttrInputMacro::AttrInputMacro): Likewise.
+       (AttrInputMacro::operator=): Likewise.
+       (AttrInputMacro::accept_vis): Likewise.
+       * ast/rust-ast.h: Remove MACRO kind.
+       * ast/rust-expr.h (class AttrInputMacro): Add getter for expr pointer.
+       Remove AttrInputMacro class.
+       * expand/rust-derive.h: Remove function prototype.
+       * expand/rust-expand-visitor.cc (ExpandVisitor::visit): Change function
+       to AttrInputExpr.
+       * expand/rust-expand-visitor.h: Update prototype.
+       * hir/rust-ast-lower-base.cc (ASTLoweringBase::visit): Remove function.
+       * hir/rust-ast-lower-base.h: Remove function prototype.
+       * parse/rust-parse-impl-attribute.hxx: Parse the attribute content as
+       AttrInputExpr instead.
+       * util/rust-attributes.cc (check_doc_attribute): Remove MACRO kind
+       handling.
+       (check_export_name_attribute): Remove switch and only handle literals.
+       (AttributeChecker::visit): Remove function.
+       * util/rust-attributes.h: Remove function prototype.
+
+2026-04-14  Egas Ribeiro  <[email protected]>
+
+       * hir/rust-ast-lower-item.cc (ASTLoweringItem::visit): added
+       refutable pattern checks for function params.
+
+2026-04-14  Owen Avery  <[email protected]>
+
+       * Make-lang.in (GRS_OBJS): Add rust-identifier-path.o.
+       * resolve/rust-early-name-resolver-2.0.cc: Include
+       "rust-identifier-path.h".
+       (Early::go): Use IdentifierPathPass.
+       (Early::visit): Handle identifier patterns which should be path
+       patterns.
+       * resolve/rust-early-name-resolver-2.0.h: Include
+       "rust-pattern.h".
+       (Early::visit): Add visiting function declaration for
+       IdentifierPattern.
+       (Early::ident_path_to_convert): New member variable.
+       * resolve/rust-toplevel-name-resolver-2.0.cc (TopLevel::visit):
+       Call Mappings::add_function_node.
+       * util/rust-hir-map.cc (Mappings::add_function_node): New
+       member function definition.
+       (Mappings::is_function_node): Likewise.
+       * util/rust-hir-map.h (Mappings::add_function_node): New
+       member function declaration.
+       (Mappings::is_function_node): Likewise.
+       (Mappings::function_nodes): New member variable.
+       * resolve/rust-identifier-path.cc: New file.
+       * resolve/rust-identifier-path.h: New file.
+
+2026-04-14  Pierre-Emmanuel Patry  <[email protected]>
+
+       * ast/rust-ast-pointer-visitor.cc (PointerVisitor::visit): Remove
+       duplicated functions.
+       * ast/rust-ast-pointer-visitor.h: Remove duplicated function
+       prototypes.
+
+2026-04-14  Owen Avery  <[email protected]>
+
+       * expand/rust-macro-expand.cc (MacroExpander::expand_crate):
+       Remove usage of Resolver::get_macro_scope.
+       * resolve/rust-name-resolver.cc (Resolver::Resolver): Handle
+       removal of member variables.
+       (Resolver::push_new_name_rib): Remove function definition.
+       (Resolver::push_new_type_rib): Likewise.
+       (Resolver::push_new_label_rib): Likewise.
+       (Resolver::push_new_macro_rib): Likewise.
+       (Resolver::find_name_rib): Likewise.
+       (Resolver::find_type_rib): Likewise.
+       (Resolver::find_macro_rib): Likewise.
+       (Resolver::insert_builtin_types): Likewise.
+       (Resolver::get_builtin_types): Likewise.
+       (Resolver::generate_builtins): Likewise.
+       (Resolver::setup_builtin): Likewise.
+       (Resolver::insert_resolved_label): Likewise.
+       (Resolver::lookup_resolved_label): Likewise.
+       (Resolver::insert_resolved_macro): Likewise.
+       (Resolver::lookup_resolved_macro): Likewise.
+       (Resolver::push_closure_context): Likewise.
+       (Resolver::pop_closure_context): Likewise.
+       (Resolver::insert_captured_item): Likewise.
+       (Resolver::decl_needs_capture): Likewise.
+       (Resolver::get_captures): Likewise.
+       (Resolver::insert_resolved_name): Replace function
+       implementation with rust_unreachable call.
+       (Resolver::lookup_resolved_name): Likewise.
+       (Resolver::insert_resolved_type): Likewise.
+       (Resolver::lookup_resolved_type): Likewise.
+       (Resolver::insert_resolved_misc): Likewise.
+       (Resolver::lookup_resolved_misc): Likewise.
+       * resolve/rust-name-resolver.h (Resolver::insert_builtin_types):
+       Remove member function declaration.
+       (Resolver::get_builtin_types): Likewise.
+       (Resolver::push_new_name_rib): Likewise.
+       (Resolver::push_new_type_rib): Likewise.
+       (Resolver::push_new_label_rib): Likewise.
+       (Resolver::push_new_macro_rib): Likewise.
+       (Resolver::find_name_rib): Likewise.
+       (Resolver::find_type_rib): Likewise.
+       (Resolver::find_label_rib): Likewise.
+       (Resolver::find_macro_rib): Likewise.
+       (Resolver::insert_resolved_label): Likewise.
+       (Resolver::lookup_resolved_label): Likewise.
+       (Resolver::insert_resolved_macro): Likewise.
+       (Resolver::lookup_resolved_macro): Likewise.
+       (Resolver::get_name_scope): Likewise.
+       (Resolver::get_type_scope): Likewise.
+       (Resolver::get_label_scope): Likewise.
+       (Resolver::get_macro_scope): Likewise.
+       (Resolver::get_global_type_node_id): Likewise.
+       (Resolver::set_unit_type_node_id): Likewise.
+       (Resolver::get_unit_type_node_id): Likewise.
+       (Resolver::set_never_type_node_id): Likewise.
+       (Resolver::get_never_type_node_id): Likewise.
+       (Resolver::push_new_module_scope): Likewise.
+       (Resolver::pop_module_scope): Likewise.
+       (Resolver::peek_current_module_scope): Likewise.
+       (Resolver::peek_crate_module_scope): Likewise.
+       (Resolver::peek_parent_module_scope): Likewise.
+       (Resolver::push_closure_context): Likewise.
+       (Resolver::pop_closure_context): Likewise.
+       (Resolver::insert_captured_item): Likewise.
+       (Resolver::get_captures): Likewise.
+       (Resolver::as_debug_string): Likewise.
+       (Resolver::decl_needs_capture): Likewise.
+       (Resolver::generate_builtins): Likewise.
+       (Resolver::setup_builtin): Likewise.
+       (Resolver::mappings): Remove member variable.
+       (Resolver::tyctx): Likewise.
+       (Resolver::builtins): Likewise.
+       (Resolver::name_scope): Likewise.
+       (Resolver::type_scope): Likewise.
+       (Resolver::label_scope): Likewise.
+       (Resolver::macro_scope): Likewise.
+       (Resolver::global_type_node_id): Likewise.
+       (Resolver::unit_ty_node_id): Likewise.
+       (Resolver::never_ty_node_id): Likewise.
+       (Resolver::name_ribs): Likewise.
+       (Resolver::type_ribs): Likewise.
+       (Resolver::label_ribs): Likewise.
+       (Resolver::macro_ribs): Likewise.
+       (Resolver::resolved_names): Likewise.
+       (Resolver::resolved_types): Likewise.
+       (Resolver::resolved_labels): Likewise.
+       (Resolver::resolved_macros): Likewise.
+       (Resolver::misc_resolved_items): Likewise.
+       (Resolver::current_module_stack): Likewise.
+       (Resolver::closure_context): Likewise.
+       (Resolver::closures_capture_mappings): Likewise.
+
+2026-04-14  Owen Avery  <[email protected]>
+
+       * checks/errors/rust-const-checker.cc: Remove inclusion of
+       "options.h".
+       (ConstChecker::ConstChecker): Initialize 2.0 resolver.
+       (ConstChecker::visit): Assume nr2.0 is enabled.
+       * checks/errors/rust-const-checker.h: Adjust includes.
+       (ConstChecker::resolver): Change type to 2.0 resolver.
+       * checks/errors/rust-unsafe-checker.cc: Remove inclusion of
+       "options.h".
+       (UnsafeChecker::UnsafeChecker): Initialize 2.0 resolver.
+       (UnsafeChecker::visit): Assume nr2.0 is enabled.
+       * checks/errors/rust-unsafe-checker.h: Adjust includes.
+       (UnsafeChecker::resolver): Change type to 2.0 resolver.
+       * checks/lints/rust-lint-marklive.cc
+       (MarkLive::visit_path_segment): Assume nr2.0 is enabled.
+       (MarkLive::visit): Likewise.
+       (MarkLive::find_ref_node_id): Likewise.
+       * checks/lints/rust-lint-marklive.h: Include
+       "rust-immutable-name-resolution-context.h".
+       (MarkLive::resolver): Change type to 2.0 resolver, as a
+       reference instead of a pointer.
+       (MarkLive::MarkLive): Initialize 2.0 resolver.
+
+2026-04-14  Owen Avery  <[email protected]>
+
+       * expand/rust-expand-visitor.cc (ExpandVisitor::visit): Remove
+       some redundant function overloads.
+       * expand/rust-expand-visitor.h (ExpandVisitor::visit): Likewise.
+
+2026-04-14  Pierre-Emmanuel Patry  <[email protected]>
+
+       * util/rust-attribute-values.h: Add "no_builtins"
+       attribute value.
+       * util/rust-attributes.cc: Add "no_builtins" to
+       the list of builtin attributes.
+
+2026-04-14  Pierre-Emmanuel Patry  <[email protected]>
+
+       * checks/errors/feature/rust-feature-gate.cc (FeatureGate::visit):
+       Rework visit to avoid multiple iterations. Add check for
+       "compiler_builtins" attribute.
+       (FeatureGate::check_no_core_attribute): Remove loop.
+       * checks/errors/feature/rust-feature-gate.h: Update function prototype.
+       * util/rust-attribute-values.h: Add "compiler_builtins" attribute
+       value.
+       * util/rust-attributes.cc: Add "compiler_builtins" to the list of
+       builtin attributes.
+
+2026-04-14  Mohamed Ali  <[email protected]>
+
+       * backend/rust-compile-intrinsic.cc: Register ctlz and ctlz_nonzero 
intrinsics.
+       * backend/rust-intrinsic-handlers.cc (ctlz_handler): Implement 
ctlz_handler.
+       (ctlz_nonzero_handler): Implement ctlz_nonzero_handler.
+       * backend/rust-intrinsic-handlers.h (ctlz_handler): Add decl for 
ctlz_handler.
+       (ctlz_nonzero_handler): Add decl for ctlz_nonzero_handler.
+       * util/rust-intrinsic-values.h: map ctlz_nonzero to its name.
+
+2026-04-14  Enes Cevik  <[email protected]>
+
+       * lex/rust-lex.cc (Lexer::parse_non_decimal_int_literal): Use GMP
+       for base conversion to support 128-bit literals. Remove existent_str
+       parameter.
+       (Lexer::parse_non_decimal_int_literals): Remove prefix string
+       initialization and update function calls.
+       * lex/rust-lex.h (Lexer::parse_non_decimal_int_literal): Update
+       function signature to remove existent_str.
+
+2026-04-14  Owen Avery  <[email protected]>
+
+       * checks/errors/rust-hir-pattern-analysis.cc
+       (PlaceInfo::specialize): Handle VariantType::UNIT.
+       (WitnessPat::to_string): Likewise.
+       (WitnessMatrix::apply_constructor): Likewise.
+       * typecheck/rust-hir-type-check-item.cc (TypeCheckItem::visit):
+       Conditionally create VariantType::UNIT variants.
+       * typecheck/rust-hir-type-check-pattern.cc
+       (TypeCheckPattern::visit): Fix typo, handle VariantType::UNIT.
+       * typecheck/rust-tyty-variance-analysis.cc
+       (GenericTyVisitorCtx::process_type): Handle VariantType::UNIT.
+       * typecheck/rust-tyty.cc (BaseType::contains_infer): Likewise.
+       (BaseType::is_concrete): Likewise.
+       (VariantDef::variant_type_string): Likewise.
+       (VariantDef::VariantDef): Likewise.
+       * typecheck/rust-tyty.h (VariantDef::VariantType::UNIT): New
+       enumerator.
+
+2026-04-14  Owen Avery  <[email protected]>
+
+       * resolve/rust-finalize-imports-2.0.cc
+       (GlobbingVisitor::visit_enum_container): Conditionally insert
+       into value namespace as well.
+       * resolve/rust-forever-stack.hxx (ForeverStack::insert_variant):
+       Add template specialization for value namespace.
+       * resolve/rust-name-resolution-context.cc
+       (NameResolutionContext::insert_variant): Allow insertion into
+       value namespace.
+       * resolve/rust-name-resolution-context.h
+       (NameResolutionContext::insert_variant): Likewise.
+       * resolve/rust-toplevel-name-resolver-2.0.cc
+       (TopLevel::insert_enum_variant_or_error_out): Likewise.
+       (TopLevel::visit): Use tweaked insert_enum_variant_or_error_out
+       properly for all enum item kinds.
+       * resolve/rust-toplevel-name-resolver-2.0.h
+       (TopLevel::insert_enum_variant_or_error_out): Tweak function
+       signature.
+
+2026-04-14  Owen Avery  <[email protected]>
+
+       * typecheck/rust-hir-type-check-pattern.cc
+       (TypeCheckPattern::visit): Fix typo "constatnt".
+
+2026-04-14  hriztam  <[email protected]>
+
+       * ast/rust-fmt.h: Explicitly instantiate FFIVec<Piece>.
+
+2026-04-14  Andrew Pinski  <[email protected]>
+
+       * typecheck/rust-tyty.cc (generate_tree_str): Remove opem_memstream
+       and print_generic_stmt call with call to dump_generic_node.
+
+2026-04-14  Owen Avery  <[email protected]>
+
+       * resolve/rust-forever-stack.h: Include more headers.
+       (class ResolutionPath): New class for representing paths.
+       (ForeverStack::resolve_path): Change function signature.
+       (ForeverStack::find_starting_point): Likewise.
+       (ForeverStack::resolve_segments): Likewise.
+       (ForeverStack::SegIterator): Change type alias.
+       * resolve/rust-forever-stack.hxx (check_leading_kw_at_start):
+       Change function signature.
+       (ForeverStack::find_starting_point): Likewise.
+       (ForeverStack::resolve_segments): Likewise.
+       (ForeverStack::resolve_path): Likewise.
+       * resolve/rust-name-resolution-context.h: Tweak include guard,
+       include "rust-name-resolution.h".
+       (NameResolutionContext::resolve_path): Use ResolutionPath and
+       ResolutionBuilder.
+       (class NameResolutionContext::ResolutionBuilder): New class.
+       (class Usage): Move this...
+       (class Definition): ...and this...
+       * resolve/rust-name-resolution.h: ...to new file.
+       * util/rust-unwrap-segment.h: Add include guard.
+
 2026-03-20  Pierre-Emmanuel Patry  <[email protected]>
 
        * rust-session-manager.cc (Session::compile_crate): Use additional
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 14820bfe8fb4..349043df2dc4 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,295 @@
+2026-04-15  Jakub Jelinek  <[email protected]>
+
+       * g++.dg/reflect/mangle2.C: Expect \[jmy] instead of just m for size_t
+       mangling.
+       * g++.dg/reflect/mangle3.C: Expect \[ilx] instead of just l for
+       ptrdiff_t mangling.
+
+2026-04-15  Jakub Jelinek  <[email protected]>
+
+       * gcc.dg/bitint-31.c: Require hard_float effective target, add
+       -frounding-math to dg-options.
+
+2026-04-15  Jakub Jelinek  <[email protected]>
+
+       * g++.dg/cpp26/expansion-stmt39.C: New test.
+       * g++.dg/reflect/cwg3149.C: New test.
+
+2026-04-15  Jakub Jelinek  <[email protected]>
+
+       * g++.dg/reflect/mangle1.C: Adjust expected mangling of type
+       aliases.
+
+2026-04-15  Jakub Jelinek  <[email protected]>
+
+       PR c++/124862
+       * g++.dg/ext/builtin-structured-binding-size5.C: New test.
+       * g++.dg/ext/builtin-structured-binding-size6.C: New test.
+
+2026-04-15  Jakub Jelinek  <[email protected]>
+
+       PR c++/124850
+       * g++.dg/other/anon-union8.C: New test.
+
+2026-04-15  Jakub Jelinek  <[email protected]>
+
+       * g++.dg/reflect/reflect_constant_array9.C: New test.
+       * g++.dg/reflect/reflect_constant_array10.C: New test.
+       * g++.dg/reflect/reflect_constant_array11.C: New test.
+       * g++.dg/reflect/define_static_array6.C: New test.
+       * g++.dg/reflect/define_static_object2.C: Uncomment older tests and
+       fix them, add tests for unions.
+
+2026-04-15  Torbjörn SVENSSON  <[email protected]>
+
+       * gcc.dg/plugin/analyzer_known_fns_plugin.cc: Add missing
+       override to member function.
+
+2026-04-15  Torbjörn SVENSSON  <[email protected]>
+
+       * gcc.dg/plugin/diagnostic_plugin_test_paths.cc: Compare with
+       NULL in if statement.
+
+2026-04-14  jayant chauhan  <[email protected]>
+
+       * rust/compile/issue-3910.rs: New test.
+
+2026-04-14  AhmedSaid3617  <[email protected]>
+
+       * rust/compile/glob-import-all.rs: New test.
+
+2026-04-14  Islam-Imad  <[email protected]>
+
+       * rust/compile/issue-4517.rs: New test.
+
+2026-04-14  Mohamed Ali  <[email protected]>
+
+       * rust/compile/cttz.rs: New test.
+       * rust/compile/cttz_nonzero.rs: New test.
+       * rust/execute/torture/cttz.rs: New test.
+       * rust/execute/torture/cttz_nonzero.rs: New test.
+
+2026-04-14  Philipp Gesang  <[email protected]>
+
+       * rust/compile/func-qualifier-default.rs:
+       Adapt to change in compiler messages
+       * rust/compile/func-qualifier-order.rs: Renamed existing
+       test file for clarity (from)
+       * rust/compile/func-qualifier-order-1.rs: Renamed existing
+       test file (to)
+       * rust/compile/func-qualifier-order-2.rs: New test file
+       * rust/compile/func-qualifier-order-3.rs: New test file
+
+2026-04-14  Philipp Gesang  <[email protected]>
+
+       * rust/compile/func-qualifier-order.rs: New test file
+       * rust/compile/func-qualifier-default.rs: New test file
+
+2026-04-14  Yap Zhi Heng  <[email protected]>
+
+       * rust/compile/issue-3550.rs: New file.
+
+2026-04-14  Pierre-Emmanuel Patry  <[email protected]>
+
+       * rust/compile/doc_macro.rs: Add macro_export on macro.
+
+2026-04-14  Pierre-Emmanuel Patry  <[email protected]>
+
+       * rust/compile/doc_macro.rs: Add concat builtin macro definition.
+       * rust/compile/early_feature_gate_in_macro.rs: Add stringify builtin
+       macro definition.
+       * rust/compile/issue-3661.rs: Likewise.
+       * rust/compile/parse_time_feature_gate.rs: Add concat and stringify
+       builtin macro definition.
+
+2026-04-14  Pierre-Emmanuel Patry  <[email protected]>
+
+       * rust/compile/issue-4226.rs: Update text to match error message from
+       attribute checking pass that was not triggered before.
+
+2026-04-14  Egas Ribeiro  <[email protected]>
+
+       * rust/compile/issue-3919-ice-func-parms.rs: New test.
+
+2026-04-14  Owen Avery  <[email protected]>
+
+       * rust/execute/ident_pat_vs_path_1.rs: New test.
+       * rust/execute/ident_pat_vs_path_2.rs: New test.
+
+2026-04-14  Jayant Chauhan  <[email protected]>
+
+       * rust/compile/issue-3875.rs: New test.
+
+2026-04-14  Pierre-Emmanuel Patry  <[email protected]>
+
+       * rust/compile/compiler_builtins_gate.rs: New test.
+
+2026-04-14  Mohamed Ali  <[email protected]>
+
+       * rust/execute/torture/ctlz_i16.rs: New test.
+       * rust/execute/torture/ctlz_i32.rs: New test.
+       * rust/execute/torture/ctlz_i64.rs: New test.
+       * rust/execute/torture/ctlz_i8.rs: New test.
+       * rust/execute/torture/ctlz_nonzero_i16.rs: New test.
+       * rust/execute/torture/ctlz_nonzero_i32.rs: New test.
+       * rust/execute/torture/ctlz_nonzero_i64.rs: New test.
+       * rust/execute/torture/ctlz_nonzero_i8.rs: New test.
+       * rust/execute/torture/ctlz_nonzero_u16.rs: New test.
+       * rust/execute/torture/ctlz_nonzero_u32.rs: New test.
+       * rust/execute/torture/ctlz_nonzero_u64.rs: New test.
+       * rust/execute/torture/ctlz_nonzero_u8.rs: New test.
+       * rust/execute/torture/ctlz_u16.rs: New test.
+       * rust/execute/torture/ctlz_u32.rs: New test.
+       * rust/execute/torture/ctlz_u64.rs: New test.
+       * rust/execute/torture/ctlz_u8.rs: New test.
+
+2026-04-14  Mohamed Ali  <[email protected]>
+
+       * rust/compile/ctlz.rs: New test.
+       * rust/compile/ctlz_nonzero.rs: New test.
+       * rust/execute/torture/ctlz.rs: New test.
+       * rust/execute/torture/ctlz_nonzero.rs: New test.
+
+2026-04-14  Enes Cevik  <[email protected]>
+
+       * rust/execute/non_decimal_128_saturation.rs: New test.
+
+2026-04-14  Owen Avery  <[email protected]>
+
+       * rust/compile/match-struct-path.rs: Increase test coverage.
+
+2026-04-14  Yap Zhi Heng  <[email protected]>
+
+       * rust/compile/issue-3555.rs: New test case.
+       * rust/compile/issue-3591.rs: New test case.
+       * rust/compile/issue-3597.rs: New test case.
+       * rust/compile/issue-3651.rs: New test case.
+       * rust/compile/issue-3670.rs: New test case.
+       * rust/compile/issue-3672.rs: New test case.
+
+2026-04-14  Harishankar  <[email protected]>
+
+       * rust/compile/issue-3931.rs: New test.
+
+2026-04-14  Patrick Palka  <[email protected]>
+
+       PR c++/124544
+       * g++.dg/reflect/alias1.C: New test.
+       * g++.dg/reflect/alias2.C: New test.
+
+2026-04-14  Andrew MacLeod  <[email protected]>
+
+       PR tree-optimization/124809
+       * gcc.dg/pr124809.c: New.
+
+2026-04-14  Martin Jambor  <[email protected]>
+
+       PR ipa/124777
+       * gcc.dg/ipa/pr124777.c: New test.
+
+2026-04-14  Gaius Mulley  <[email protected]>
+
+       PR modula2/105408
+       * gm2/iso/run/pass/testgeneric.mod: Corrected printf arguments.
+       * gm2/iso/run/pass/printsize.mod: New test.
+       * gm2/iso/run/pass/testgeneric2.mod: New test.
+       * gm2/iso/run/pass/testgeneric3.mod: New test.
+       * gm2/iso/run/pass/testgeneric4.mod: New test.
+       * gm2/iso/run/pass/testgeneric5.mod: New test.
+
+2026-04-14  Richard Biener  <[email protected]>
+
+       PR tree-optimization/124875
+       * g++.dg/torture/pr124875.C: New testcase.
+
+2026-04-14  Soumya AR  <[email protected]>
+           Kyrylo Tkachov  <[email protected]>
+
+       * gcc.target/aarch64/narrow-gp-writes-1.c: New test.
+       * gcc.target/aarch64/narrow-gp-writes-2.c: New test.
+       * gcc.target/aarch64/narrow-gp-writes-3.c: New test.
+       * gcc.target/aarch64/narrow-gp-writes-4.c: New test.
+       * gcc.target/aarch64/narrow-gp-writes-5.c: New test.
+       * gcc.target/aarch64/narrow-gp-writes-6.c: New test.
+       * gcc.target/aarch64/narrow-gp-writes-7.c: New test.
+
+2026-04-14  Jakub Jelinek  <[email protected]>
+
+       PR tree-optimization/124826
+       * gcc.dg/bitint-128.c: New test.
+
+2026-04-14  Richard Biener  <[email protected]>
+
+       PR tree-optimization/124868
+       * gcc.dg/torture/pr124868.c: New testcase.
+
+2026-04-14  H.J. Lu  <[email protected]>
+
+       PR target/124876
+       * gcc.target/i386/zero-scratch-regs-23.c: Scan vpxord on ZMM16-31.
+       * gcc.target/i386/zero-scratch-regs-33.c: New test.
+
+2026-04-13  Marek Polacek  <[email protected]>
+
+       PR c++/123237
+       PR c++/124771
+       PR c++/124842
+       * g++.dg/reflect/mangle2.C: New test.
+       * g++.dg/reflect/mangle3.C: New test.
+       * g++.dg/reflect/mangle4.C: New test.
+       * g++.dg/reflect/mangle5.C: New test.
+
+2026-04-13  Christopher Albert  <[email protected]>
+
+       PR fortran/101760
+       PR fortran/102314
+       * gfortran.dg/gomp/pr101760.f90: New test.
+       * gfortran.dg/gomp/pr102314.f90: New test.
+
+2026-04-13  Marek Polacek  <[email protected]>
+
+       PR c++/124835
+       * g++.dg/reflect/decltype2.C: New test.
+
+2026-04-13  Andrew Pinski  <[email protected]>
+
+       PR target/123238
+       * gcc.target/aarch64/pr123238.c:
+
+2026-04-13  Jason Merrill  <[email protected]>
+
+       PR c++/103901
+       PR c++/123566
+       * g++.dg/cpp2a/lambda-targ25.C: New test.
+
+2026-04-13  Jason Merrill  <[email protected]>
+
+       PR c++/122632
+       * g++.dg/cpp23/lambda-scope11.C: New test.
+
+2026-04-13  Jakub Jelinek  <[email protected]>
+
+       PR c++/124246
+       * g++.dg/reflect/type_trait13.C: Uncomment commented out 
is_swappable_type and
+       is_nothrow_swappable_type assertions with std::priority_queue.
+
+2026-04-13  Josef Melcr  <[email protected]>
+
+       PR ipa/124700
+       * g++.dg/gomp/pr124700.C: New test.
+
+2026-04-13  Hu, Lin1  <[email protected]>
+
+       PR target/124710
+       * gcc.target/i386/pr124710-1.c: New test.
+       * gcc.target/i386/pr124710-2.c: Ditto.
+
+2026-04-13  Jason Merrill  <[email protected]>
+
+       PR c++/122884
+       * g++.dg/cpp23/lambda-scope10.C: New test.
+       * g++.dg/cpp23/lambda-scope10a.C: New test.
+
 2026-04-11  Christopher Albert  <[email protected]>
 
        PR fortran/93554
diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog
index 730417053429..efba86e010cf 100644
--- a/libgcc/ChangeLog
+++ b/libgcc/ChangeLog
@@ -1,3 +1,8 @@
+2026-04-15  Torbjörn SVENSSON  <[email protected]>
+
+       * libgcov-driver-system.c (gcov_exit_open_gcda_file): Handle
+       potential NULL value from malloc.
+
 2026-03-30  Saurabh Jha  <[email protected]>
            Evgeny Karpov  <[email protected]>
 
diff --git a/libphobos/ChangeLog b/libphobos/ChangeLog
index 41de699dcba8..e2c238d03ed4 100644
--- a/libphobos/ChangeLog
+++ b/libphobos/ChangeLog
@@ -1,3 +1,7 @@
+2026-04-14  Iain Buclaw  <[email protected]>
+
+       * libdruntime/MERGE: Merge upstream druntime e145b91245.
+
 2026-04-08  Rainer Orth  <[email protected]>
 
        PR d/88150
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index eb821efef1be..7f9d58af2180 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,88 @@
+2026-04-15  Matthias Kretz  <[email protected]>
+
+       * include/bits/simd_vec.h (basic_vec deduction guide): Explicit
+       cast to simd-size-type from range size type.
+
+2026-04-15  Jakub Jelinek  <[email protected]>
+
+       * include/std/meta (define_static_object): Adjust for LWG4483 changes
+       - handle unions and arrays differently.
+
+2026-04-14  Tomasz Kamiński  <[email protected]>
+
+       * include/bits/version.def (stdbit_h, stdckdint_h): Define.
+       * include/bits/version.h: Regenerate.
+       * include/c_compatibility/stdbit.h (__cpp_lib_stdbit_h): Define
+       and use it in guards.
+       * include/c_compatibility/stdckdint.h (__cpp_lib_stdckdint_h):
+       Define and use it in guards.
+
+2026-04-14  Tomasz Kamiński  <[email protected]>
+
+       * testsuite/std/format/fill.cc: New test.
+       * testsuite/std/format/fill_nonunicode.cc: New test.
+
+2026-04-14  Tomasz Kamiński  <[email protected]>
+
+       * testsuite/20_util/constant_wrapper/generic.cc: Replace
+       std::std::invalid_argument with NegativeArgument and
+       removed <stdexcept> include.
+
+2026-04-14  Tomasz Kamiński  <[email protected]>
+
+       * include/bits/version.def (constant_wrapped): Updated to 202603L.
+       * include/bits/version.h: Regenerate.
+       * include/bits/utility.h (_CwOperators::operator())
+       (_CwOperators:operator[]): Delete, they are now provided by...
+       (constant_wrapper::operator(), constant_wrapper::operator[]):
+       Define.
+       * testsuite/20_util/constant_wrapper/generic.cc: Add additional
+       test cases for invoke and subscript.
+       * testsuite/20_util/constant_wrapper/version.cc: Update tested
+       value.
+
+2026-04-14  Matthias Wippich  <[email protected]>
+           Ivan Lazaric  <[email protected]>
+
+       * include/bits/utility.h (std::tuple_size, std::tuple_element):
+       Add partial specializations for integer_sequence.
+       (std::get(integer_sequence<_Tp, _Idx...>)): Define.
+       * include/bits/version.def (integer_sequence): Bump to 202511L.
+       * include/bits/version.h: Regenerate.
+       * testsuite/20_util/integer_sequence/tuple_access.cc: New test.
+       * testsuite/20_util/integer_sequence/tuple_access_neg.cc: New test.
+       * testsuite/experimental/feat-cxx14.cc: Updated check for
+       __cpp_lib_integer_sequence value.
+
+2026-04-13  François Dumont  <[email protected]>
+
+       * include/bits/hashtable.h: Replace usages of std::__addressof with
+       std::addressof.
+       * include/bits/hashtable_policy.h: Likewise.
+
+2026-04-13  Tomasz Kamiński  <[email protected]>
+
+       * include/bits/version.def (replaceable_contract_violation_handler)
+       [(__cplusplus > 202302L) && (__cpp_contracts >= 202502L)]:
+       Define to 202603 for ELF targets, and 0 otherwise.
+       * include/bits/version.h: Regenerate.
+       * include/std/contracts: Define
+       __cpp_lib_replaceable_contract_violation_handler.
+
+2026-04-13  Tomasz Kamiński  <[email protected]>
+
+       * config/abi/pre/gnu.ver (GLIBCXX_3.4): Remove _ZNKSs11_[MS]_*
+       and _ZNKSbIwSt11char_traitsIwESaIwEE11_[MS]_* patterns.
+
+2026-04-13  Tomasz Kamiński  <[email protected]>
+
+       * include/bits/version.def (function_ref): Bump to 202603L.
+       * include/bits/version.h: Regenerate.
+       * testsuite/20_util/function_ref/assign.cc: Remove repeated
+       check for feature test macro.
+       * testsuite/20_util/function_ref/cons.cc: Updated checked
+       value.
+
 2026-04-10  Patrick Palka  <[email protected]>
 
        * include/std/ranges (lazy_split_view::begin): Add

Reply via email to