https://gcc.gnu.org/g:123a96fd4e471d582cf9b498f0a575be0fecd66e

commit r16-6373-g123a96fd4e471d582cf9b498f0a575be0fecd66e
Author: GCC Administrator <[email protected]>
Date:   Wed Dec 24 00:16:31 2025 +0000

    Daily bump.

Diff:
---
 gcc/ChangeLog           | 105 +++++++++++
 gcc/DATESTAMP           |   2 +-
 gcc/algol68/ChangeLog   |  12 ++
 gcc/c-family/ChangeLog  |   4 +
 gcc/c/ChangeLog         |   4 +
 gcc/cp/ChangeLog        |  37 ++++
 gcc/lto/ChangeLog       |   4 +
 gcc/rust/ChangeLog      | 477 ++++++++++++++++++++++++++++++++++++++++++++++++
 gcc/testsuite/ChangeLog |  89 +++++++++
 9 files changed, 733 insertions(+), 1 deletion(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index eec3ca83baec..59772b18ad9f 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,108 @@
+2025-12-23  Jeff Law  <[email protected]>
+
+       PR target/123274
+       * config/riscv/riscv.md (usmul<mode>3): Add proper condition.
+
+2025-12-23  Jeff Law  <[email protected]>
+
+       PR target/123278
+       * config/riscv/andes-45-series.md (andes_45_fpu_alu_s): Handle
+       BF/HF modes too.
+       (andes_45_fpu_mul_s, andes_45_fpu_mac_s): Likewise.
+
+2025-12-23  Milan Tripkovic  <[email protected]>
+
+       * config/riscv/spacemit-x60.md (spacemit_x60_clmul): Adjust latency.
+
+2025-12-23  Xi Ruoyao  <[email protected]>
+
+       * config.gcc: Relax the check for LoongArch with_tune.
+
+2025-12-23  Andrew Pinski  <[email protected]>
+
+       PR rtl-optimization/123267
+       * ifcvt.cc (noce_try_cond_zero_arith): Pass the original operands
+       of a instead of the stripped off values. The mode of the operand
+       which is being used.
+
+2025-12-23  Dhruv Chawla  <[email protected]>
+
+       * auto-profile.cc (struct summary_info): New struct.
+       (summary_info::read): New function.
+       (summary_info::get_threshold_count): Likewise.
+       (function_instance::read_function_instance): Read
+       afdo_profile_info->sum_max directly from summary info.
+       (autofdo_source_profile::read): Set afdo_hot_bb_threshold from
+       param_hot_bb_count_ws_permille.
+       (read_profile): Call summary_info->read.
+       (end_auto_profile): Free afdo_summary_info.
+       * gcov-io.h (GCOV_TAG_AFDO_SUMMARY): New define.
+
+2025-12-23  Dhruv Chawla  <[email protected]>
+
+       * auto-profile.cc (string_table::~string_table): Update to free
+       original_names_map_.
+       (string_table::original_names_map_): New member.
+       (string_table::clashing_names_map_): Likewise.
+       (string_table::get_original_name): New function.
+       (string_table::read): Figure out clashes while reading.
+       (autofdo_source_profile::offline_external_functions): Call
+       get_original_name.
+
+2025-12-23  Dhruv Chawla  <[email protected]>
+
+       * auto-profile.cc (AUTO_PROFILE_VERSION): Bump to 3.
+       (class function_instance_descriptor): New class.
+       (get_normalized_path): New function.
+       (string_table::~string_table): Update to free filenames.
+       (string_table::vector_): Rename to ...
+       (string_table::symbol_names_): ... this.
+       (string_table::map_): Rename to ...
+       (string_table::symbol_name_map_): ... this.
+       (string_table::filenames_): New member.
+       (string_table::filename_map_): Likewise.
+       (string_table::symbol_to_filename_map_): Likewise.
+       (string_table::get_index): Update to lookup symbol_name_map_.
+       (string_table::get_name): Rename to ...
+       (string_table::get_symbol_name): ... this.
+       (string_table::add_name): Rename to ...
+       (string_table::add_symbol_name): ... this.
+       (string_table::get_filename): New function.
+       (string_table::get_filename_by_symbol): Likewise.
+       (string_table::get_filename_index): Likewise.
+       (string_table::add_filename): Likewise.
+       (string_table::read): Read file names from the GCOV profile.
+       (function_instance::offline): Call
+       get_function_instance_by_descriptor.
+       (string_table::get_cgraph_node): Call get_symbol_name and
+       symbol_name.
+       (function_instance::get_function_instance_by_decl): Likewise.
+       (function_instance::get_cgraph_node): Likewise.
+       (function_instance::merge): Likewise.
+       (match_with_target): Likewise.
+       (function_instance::match): Likewise.
+       (function_instance::dump): Likewise.
+       (function_instance::dump_inline_stack): Likewise.
+       (function_instance::find_icall_target_map): Likewise.
+       (autofdo_source_profile::offline_unrealized_inlines): Likewise.
+       (autofdo_source_profile::offline_external_functions): Likewise.
+       (function_instance::read_function_instance): Likewise.
+       (afdo_indirect_call):
+       Also call find_function_instance, add_function_instance and
+       remove_function_instance.
+       (autofdo_source_profile::read): Likewise.
+       (autofdo_source_profile::get_function_instance_by_decl): Call
+       find_function_instance.
+       (autofdo_source_profile::get_function_instance_by_name_index):
+       Rename to ...
+       (autofdo_source_profile::get_function_instance_by_descriptor):
+       ... this.
+       (autofdo_source_profile::find_iter_for_function_instance): New
+       function.
+       (autofdo_source_profile::find_function_instance): Likewise.
+       (autofdo_source_profile::add_function_instance): Likewise.
+       (autofdo_source_profile::remove_function_instance): Likewise.
+
 2025-12-22  Kugan Vivekanandarajah  <[email protected]>
 
        PR middle-end/123067
diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP
index 0a6c047ea801..bb8327a8a4ff 100644
--- a/gcc/DATESTAMP
+++ b/gcc/DATESTAMP
@@ -1 +1 @@
-20251223
+20251224
diff --git a/gcc/algol68/ChangeLog b/gcc/algol68/ChangeLog
index d94b4fae3b6d..eac44362b002 100644
--- a/gcc/algol68/ChangeLog
+++ b/gcc/algol68/ChangeLog
@@ -1,3 +1,15 @@
+2025-12-23  Mohammad-Reza Nabipoor  <[email protected]>
+
+       * a68.h (a68_file_size): Changed to use file descriptor.
+       (a68_file_read): Likewise.
+       * a68-parser-scanner.cc (a68_file_size): Likewise.
+       (a68_file_read): Likewise.
+       (read_source_file): Adapt `a68_file_{size,read}'.
+       (include_files): Likewise.
+       * a68-lang.cc (a68_handle_option): Likewise.
+       * a68-imports.cc (a68_find_export_data): Implement
+       reading from module's .m68 file if available.
+
 2025-12-22  Jose E. Marchesi  <[email protected]>
 
        * a68-imports.cc (PARSE_INDICANT): Fix handling of uderscore
diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog
index f2d65eb9c09e..9176e3cf57fe 100644
--- a/gcc/c-family/ChangeLog
+++ b/gcc/c-family/ChangeLog
@@ -1,3 +1,7 @@
+2025-12-23  Yuao Ma  <[email protected]>
+
+       * c-common.cc: Mention c_common_init_options.
+
 2025-12-21  Yuao Ma  <[email protected]>
 
        * c-common.h (enum cxx_dialect): c++17 to c++20.
diff --git a/gcc/c/ChangeLog b/gcc/c/ChangeLog
index 5d05142911c2..43263c05bf4a 100644
--- a/gcc/c/ChangeLog
+++ b/gcc/c/ChangeLog
@@ -1,3 +1,7 @@
+2025-12-23  Dhruv Chawla  <[email protected]>
+
+       * Make-lang.in: Bump GCOV version to 3.
+
 2025-12-19  Jakub Jelinek  <[email protected]>
 
        * gimple-parser.cc (c_parser_gimple_switch_stmt): Fix comment typo,
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 53aa09762610..aa799df76c03 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,40 @@
+2025-12-23  Nathaniel Shead  <[email protected]>
+
+       PR c++/122819
+       * decl.cc (start_preparsed_function): Use
+       DECL_TEMPLOID_INSTANTIATION instead of
+       DECL_TEMPLATE_INSTANTIATION to check vague linkage.
+       * decl2.cc (vague_linkage_p): Likewise.
+       (c_parse_final_cleanups): Simplify condition.
+       * pt.cc (non_templated_friend_p): Namespace-scope friend
+       function declarations without a primary template are still
+       non-templated.
+       * semantics.cc (expand_or_defer_fn_1): Also check for temploid
+       friend functions.
+
+2025-12-23  Egas Ribeiro  <[email protected]>
+
+       PR c++/122550
+       * decl.cc (member_like_constrained_friend_p): Check that the
+       friend's enclosing class is an implicit instantiation.
+
+2025-12-23  Egas Ribeiro  <[email protected]>
+
+       PR c++/122958
+       * pt.cc (maybe_new_partial_specialization): Compare template
+       parameter lists when checking for existing specializations and
+       remove flag_concepts check.
+
+2025-12-23  Egas Ribeiro  <[email protected]>
+
+       PR c++/117518
+       * parser.cc (cp_parser_lambda_expression): Clear
+       processing_template_parmlist when parsing lambda body.
+
+2025-12-23  Dhruv Chawla  <[email protected]>
+
+       * Make-lang.in: Bump GCOV version to 3.
+
 2025-12-22  Nathaniel Shead  <[email protected]>
 
        PR c++/122994
diff --git a/gcc/lto/ChangeLog b/gcc/lto/ChangeLog
index 671135aea1e0..a1d7226a0e48 100644
--- a/gcc/lto/ChangeLog
+++ b/gcc/lto/ChangeLog
@@ -1,3 +1,7 @@
+2025-12-23  Dhruv Chawla  <[email protected]>
+
+       * Make-lang.in: Bump GCOV version to 3.
+
 2025-12-19  Jakub Jelinek  <[email protected]>
 
        * lto-common.cc (lto_resolution_read): Fix comment typo, explicitely
diff --git a/gcc/rust/ChangeLog b/gcc/rust/ChangeLog
index 5adb1173529c..b9af707c7769 100644
--- a/gcc/rust/ChangeLog
+++ b/gcc/rust/ChangeLog
@@ -1,3 +1,480 @@
+2025-12-23  lenny.chiadmi-delage  <[email protected]>
+
+       * checks/errors/feature/rust-feature-gate.cc (FeatureGate::visit): Added
+       handling for META_ITEM type attributes to properly process feature 
gates.
+       * expand/rust-cfg-strip.cc (expand_cfg_attrs): Fixed a bug where
+       newly inserted cfg_attr attributes wheren't being reprocessed,
+       and cleaned up the loop increment logic.
+
+2025-12-23  Lucas Ly Ba  <[email protected]>
+
+       * checks/lints/unused/rust-unused-checker.cc 
(UnusedChecker::UnusedChecker):
+       Add warning for identifier pattern and field ident pattern in struct
+       (UnusedChecker::visit): Add methods.
+       * checks/lints/unused/rust-unused-checker.h: Same here.
+       * checks/lints/unused/rust-unused-collector.cc 
(UnusedCollector::UnusedCollector):
+       Collect unused mut variables
+       (UnusedCollector::visit): Add methods.
+       * checks/lints/unused/rust-unused-collector.h: Same here.
+       * checks/lints/unused/rust-unused-context.cc 
(UnusedContext::remove_assign):
+       Add methods for unused mut set.
+       (UnusedContext::add_mut): Same here.
+       (UnusedContext::remove_mut): Same here.
+       (UnusedContext::is_mut_used): Same here.
+       * checks/lints/unused/rust-unused-context.h: Same here.
+
+2025-12-23  Lucas Ly Ba  <[email protected]>
+
+       * Make-lang.in: Compile the right files.
+       * checks/lints/unused-var/rust-unused-var-checker.cc: Move to...
+       * checks/lints/unused/rust-unused-checker.cc: ...here.
+       * checks/lints/unused-var/rust-unused-var-checker.h: Move to...
+       * checks/lints/unused/rust-unused-checker.h: ...here.
+       * checks/lints/unused-var/rust-unused-var-collector.cc: Move to...
+       * checks/lints/unused/rust-unused-collector.cc: ...here.
+       * checks/lints/unused-var/rust-unused-var-collector.h: Move to...
+       * checks/lints/unused/rust-unused-collector.h: ...here.
+       * checks/lints/unused-var/rust-unused-var-context.cc: Move to...
+       * checks/lints/unused/rust-unused-context.cc: ...here.
+       * checks/lints/unused-var/rust-unused-var-context.h: Move to...
+       * checks/lints/unused/rust-unused-context.h: ...here.
+       * rust-session-manager.cc (Session::compile_crate): Call the right 
method.
+
+2025-12-23  Lucas Ly Ba  <[email protected]>
+
+       * checks/lints/unused-var/rust-unused-var-checker.cc 
(UnusedVarChecker::visit):
+       Change unused name warning to unused variable warning.
+       * checks/lints/unused-var/rust-unused-var-collector.cc 
(UnusedVarCollector::visit):
+       Remove useless methods.
+       * checks/lints/unused-var/rust-unused-var-collector.h: Same here.
+       * checks/lints/unused-var/rust-unused-var-context.cc 
(UnusedVarContext::add_variable):
+       Add used variables to set.
+       (UnusedVarContext::mark_used): Remove method.
+       (UnusedVarContext::is_variable_used):
+       Check if the set contains the hir id linked to a variable.
+       (UnusedVarContext::as_string): Refactor method for new set.
+       * checks/lints/unused-var/rust-unused-var-context.h: Refactor methods.
+       * lang.opt: Change description for unused check flag.
+
+2025-12-23  Lucas Ly Ba  <[email protected]>
+
+       * checks/lints/unused-var/rust-unused-var-checker.cc (UnusedVarChecker):
+       Implement unused assignments warning.
+       (UnusedVarChecker::go): Remove unique pointer unused var context.
+       (UnusedVarChecker::visit): Visit AssignExpr in HIR default visitor.
+       * checks/lints/unused-var/rust-unused-var-checker.h: Add visit method.
+       * checks/lints/unused-var/rust-unused-var-collector.cc 
(UnusedVarCollector):
+       Collect warnings for assignments.
+       (UnusedVarCollector::visit): Visit AssignExpr in HIR default visitor.
+       * checks/lints/unused-var/rust-unused-var-collector.h: Add visit method.
+       * checks/lints/unused-var/rust-unused-var-context.cc 
(UnusedVarContext::add_assign):
+       Add assignment in map.
+       (UnusedVarContext::remove_assign): Remove assignment in map.
+       (UnusedVarContext::is_variable_assigned): Check if a variable is 
assigned.
+       * checks/lints/unused-var/rust-unused-var-context.h: Add a map to stock 
assignments.
+
+2025-12-23  Ryutaro Okada  <[email protected]>
+
+       * Make-lang.in: Add new files rules in Makefile.
+       * lang.opt: Add new flag.
+       * rust-session-manager.cc (Session::compile_crate): Execute new 
variable checker.
+       * checks/lints/unused-var/rust-unused-var-checker.cc 
(UnusedVarChecker): Implement unused
+       variable checker.
+       * checks/lints/unused-var/rust-unused-var-checker.h (UnusedVarChecker): 
Implement unused
+       variable checker.
+       * checks/lints/unused-var/rust-unused-var-collector.cc 
(UnusedVarCollector): Implement
+       unused variable collector.
+       * checks/lints/unused-var/rust-unused-var-collector.h 
(UnusedVarCollector): Implement
+       unused variable collector.
+       * checks/lints/unused-var/rust-unused-var-context.cc 
(UnusedVarContext): Implement
+       unused variable context.
+       * checks/lints/unused-var/rust-unused-var-context.h (UnusedVarContext): 
Implement unused
+       variable context.
+
+2025-12-23  Harishankar  <[email protected]>
+
+       * backend/rust-compile-expr.cc (CompileExpr::visit): Always
+       evaluate predicate expression before checking for never type
+       to preserve side effects in while loop conditions.
+       * typecheck/rust-hir-type-check-expr.cc: Update handling of 
break/continue.
+
+2025-12-23  Lucas Ly Ba  <[email protected]>
+
+       * backend/rust-compile-implitem.h: Change as_string to to_string.
+       * backend/rust-compile-type.cc (TyTyResolveCompile::visit): Likewise.
+       * checks/errors/rust-readonly-check.cc 
(ReadonlyChecker::check_variable): Likewise.
+       * hir/rust-hir-dump.cc (Dump::do_vis_item): Likewise.
+       (Dump::do_pathpattern): Likewise.
+       (Dump::do_typepathsegment): Likewise.
+       (Dump::do_baseloopexpr): Likewise.
+       (Dump::do_struct): Likewise.
+       (Dump::do_traitfunctiondecl): Likewise.
+       (Dump::do_externalitem): Likewise.
+       (Dump::do_tuplefield): Likewise.
+       (Dump::do_structfield): Likewise.
+       (Dump::visit): Likewise.
+       * hir/tree/rust-hir-bound-abstract.h: Likewise.
+       * hir/tree/rust-hir-bound.h: Likewise.
+       * hir/tree/rust-hir-expr-abstract.h: Likewise.
+       * hir/tree/rust-hir-expr.cc (OffsetOf::as_string): Likewise.
+       (OffsetOf::to_string): Likewise.
+       * hir/tree/rust-hir-expr.h: Likewise.
+       * hir/tree/rust-hir-generic-param.cc (ConstGenericParam::as_string): 
Likewise.
+       (ConstGenericParam::to_string): Likewise.
+       * hir/tree/rust-hir-generic-param.h: Likewise.
+       * hir/tree/rust-hir-item.h: Likewise.
+       * hir/tree/rust-hir-path.cc (PathInExpression::is_self): Likewise.
+       * hir/tree/rust-hir-path.h: Likewise.
+       * hir/tree/rust-hir-pattern-abstract.h: Likewise.
+       * hir/tree/rust-hir-pattern.h: Likewise.
+       * hir/tree/rust-hir-stmt.h: Likewise.
+       * hir/tree/rust-hir-trait-bound.h: Likewise.
+       * hir/tree/rust-hir-type-abstract.h: Likewise.
+       * hir/tree/rust-hir-type.h: Likewise.
+       * hir/tree/rust-hir-visibility.h: Likewise.
+       * hir/tree/rust-hir.cc (Crate::as_string): Likewise.
+       (Crate::to_string): Likewise.
+       (Visibility::as_string): Likewise.
+       (Visibility::to_string): Likewise.
+       (VisItem::as_string): Likewise.
+       (VisItem::to_string): Likewise.
+       (Item::as_string): Likewise.
+       (Item::to_string): Likewise.
+       (Module::as_string): Likewise.
+       (Module::to_string): Likewise.
+       (StaticItem::as_string): Likewise.
+       (StaticItem::to_string): Likewise.
+       (ExternCrate::as_string): Likewise.
+       (ExternCrate::to_string): Likewise.
+       (TupleStruct::as_string): Likewise.
+       (TupleStruct::to_string): Likewise.
+       (ConstantItem::as_string): Likewise.
+       (ConstantItem::to_string): Likewise.
+       (ImplBlock::as_string): Likewise.
+       (ImplBlock::to_string): Likewise.
+       (StructStruct::as_string): Likewise.
+       (StructStruct::to_string): Likewise.
+       (UseDeclaration::as_string): Likewise.
+       (UseDeclaration::to_string): Likewise.
+       (UseTreeGlob::as_string): Likewise.
+       (UseTreeGlob::to_string): Likewise.
+       (UseTreeList::as_string): Likewise.
+       (UseTreeList::to_string): Likewise.
+       (UseTreeRebind::as_string): Likewise.
+       (UseTreeRebind::to_string): Likewise.
+       (Enum::as_string): Likewise.
+       (Enum::to_string): Likewise.
+       (Trait::as_string): Likewise.
+       (Trait::to_string): Likewise.
+       (Union::as_string): Likewise.
+       (Union::to_string): Likewise.
+       (Function::as_string): Likewise.
+       (Function::to_string): Likewise.
+       (WhereClause::as_string): Likewise.
+       (WhereClause::to_string): Likewise.
+       (BlockExpr::as_string): Likewise.
+       (BlockExpr::to_string): Likewise.
+       (AnonConst::as_string): Likewise.
+       (AnonConst::to_string): Likewise.
+       (ConstBlock::as_string): Likewise.
+       (ConstBlock::to_string): Likewise.
+       (TypeAlias::as_string): Likewise.
+       (TypeAlias::to_string): Likewise.
+       (ExternBlock::as_string): Likewise.
+       (ExternBlock::to_string): Likewise.
+       (PathInExpression::as_string): Likewise.
+       (PathInExpression::to_string): Likewise.
+       (ExprStmt::as_string): Likewise.
+       (ExprStmt::to_string): Likewise.
+       (ClosureParam::as_string): Likewise.
+       (ClosureParam::to_string): Likewise.
+       (ClosureExpr::as_string): Likewise.
+       (ClosureExpr::to_string): Likewise.
+       (PathPattern::as_string): Likewise.
+       (PathPattern::to_string): Likewise.
+       (QualifiedPathType::as_string): Likewise.
+       (QualifiedPathType::to_string): Likewise.
+       (QualifiedPathInExpression::as_string): Likewise.
+       (QualifiedPathInExpression::to_string): Likewise.
+       (BorrowExpr::as_string): Likewise.
+       (BorrowExpr::to_string): Likewise.
+       (ReturnExpr::as_string): Likewise.
+       (ReturnExpr::to_string): Likewise.
+       (GroupedExpr::as_string): Likewise.
+       (GroupedExpr::to_string): Likewise.
+       (RangeToExpr::as_string): Likewise.
+       (RangeToExpr::to_string): Likewise.
+       (ContinueExpr::as_string): Likewise.
+       (ContinueExpr::to_string): Likewise.
+       (NegationExpr::as_string): Likewise.
+       (NegationExpr::to_string): Likewise.
+       (RangeFromExpr::as_string): Likewise.
+       (RangeFromExpr::to_string): Likewise.
+       (RangeFullExpr::as_string): Likewise.
+       (RangeFullExpr::to_string): Likewise.
+       (ArrayIndexExpr::as_string): Likewise.
+       (ArrayIndexExpr::to_string): Likewise.
+       (AssignmentExpr::as_string): Likewise.
+       (AssignmentExpr::to_string): Likewise.
+       (CompoundAssignmentExpr::as_string): Likewise.
+       (CompoundAssignmentExpr::to_string): Likewise.
+       (AsyncBlockExpr::as_string): Likewise.
+       (AsyncBlockExpr::to_string): Likewise.
+       (ComparisonExpr::as_string): Likewise.
+       (ComparisonExpr::to_string): Likewise.
+       (MethodCallExpr::as_string): Likewise.
+       (MethodCallExpr::to_string): Likewise.
+       (TupleIndexExpr::as_string): Likewise.
+       (TupleIndexExpr::to_string): Likewise.
+       (DereferenceExpr::as_string): Likewise.
+       (DereferenceExpr::to_string): Likewise.
+       (FieldAccessExpr::as_string): Likewise.
+       (FieldAccessExpr::to_string): Likewise.
+       (LazyBooleanExpr::as_string): Likewise.
+       (LazyBooleanExpr::to_string): Likewise.
+       (RangeFromToExpr::as_string): Likewise.
+       (RangeFromToExpr::to_string): Likewise.
+       (RangeToInclExpr::as_string): Likewise.
+       (RangeToInclExpr::to_string): Likewise.
+       (UnsafeBlockExpr::as_string): Likewise.
+       (UnsafeBlockExpr::to_string): Likewise.
+       (IfExpr::as_string): Likewise.
+       (IfExpr::to_string): Likewise.
+       (IfExprConseqElse::as_string): Likewise.
+       (IfExprConseqElse::to_string): Likewise.
+       (RangeFromToInclExpr::as_string): Likewise.
+       (RangeFromToInclExpr::to_string): Likewise.
+       (ErrorPropagationExpr::as_string): Likewise.
+       (ErrorPropagationExpr::to_string): Likewise.
+       (ArithmeticOrLogicalExpr::as_string): Likewise.
+       (ArithmeticOrLogicalExpr::to_string): Likewise.
+       (CallExpr::as_string): Likewise.
+       (CallExpr::to_string): Likewise.
+       (WhileLoopExpr::as_string): Likewise.
+       (WhileLoopExpr::to_string): Likewise.
+       (WhileLetLoopExpr::as_string): Likewise.
+       (WhileLetLoopExpr::to_string): Likewise.
+       (LoopExpr::as_string): Likewise.
+       (LoopExpr::to_string): Likewise.
+       (ArrayExpr::as_string): Likewise.
+       (ArrayExpr::to_string): Likewise.
+       (AwaitExpr::as_string): Likewise.
+       (AwaitExpr::to_string): Likewise.
+       (BreakExpr::as_string): Likewise.
+       (BreakExpr::to_string): Likewise.
+       (LoopLabel::as_string): Likewise.
+       (LoopLabel::to_string): Likewise.
+       (MatchArm::as_string): Likewise.
+       (MatchArm::to_string): Likewise.
+       (MatchCase::as_string): Likewise.
+       (MatchCase::to_string): Likewise.
+       (MatchCaseBlockExpr::as_string): Likewise.
+       (MatchCaseBlockExpr::to_string): Likewise.
+       (MatchCaseExpr::as_string): Likewise.
+       (MatchCaseExpr::to_string): Likewise.
+       (MatchExpr::as_string): Likewise.
+       (MatchExpr::to_string): Likewise.
+       (TupleExpr::as_string): Likewise.
+       (TupleExpr::to_string): Likewise.
+       (FunctionParam::as_string): Likewise.
+       (FunctionParam::to_string): Likewise.
+       (FunctionQualifiers::as_string): Likewise.
+       (FunctionQualifiers::to_string): Likewise.
+       (TraitBound::as_string): Likewise.
+       (TraitBound::to_string): Likewise.
+       (LifetimeParam::as_string): Likewise.
+       (LifetimeParam::to_string): Likewise.
+       (QualifiedPathInType::as_string): Likewise.
+       (QualifiedPathInType::to_string): Likewise.
+       (Lifetime::as_string): Likewise.
+       (Lifetime::to_string): Likewise.
+       (TypePath::as_string): Likewise.
+       (TypePath::to_string): Likewise.
+       (TypeParam::as_string): Likewise.
+       (TypeParam::to_string): Likewise.
+       (PathPattern::convert_to_simple_path): Likewise.
+       (TypePath::as_simple_path): Likewise.
+       (PathExprSegment::as_string): Likewise.
+       (PathExprSegment::to_string): Likewise.
+       (GenericArgs::as_string): Likewise.
+       (GenericArgs::to_string): Likewise.
+       (GenericArgsBinding::as_string): Likewise.
+       (GenericArgsBinding::to_string): Likewise.
+       (RangePattern::as_string): Likewise.
+       (RangePattern::to_string): Likewise.
+       (RangePatternBoundLiteral::as_string): Likewise.
+       (RangePatternBoundLiteral::to_string): Likewise.
+       (SlicePatternItemsNoRest::as_string): Likewise.
+       (SlicePatternItemsNoRest::to_string): Likewise.
+       (SlicePatternItemsHasRest::as_string): Likewise.
+       (SlicePatternItemsHasRest::to_string): Likewise.
+       (SlicePattern::as_string): Likewise.
+       (SlicePattern::to_string): Likewise.
+       (AltPattern::as_string): Likewise.
+       (AltPattern::to_string): Likewise.
+       (TuplePatternItemsNoRest::as_string): Likewise.
+       (TuplePatternItemsNoRest::to_string): Likewise.
+       (TuplePatternItemsHasRest::as_string): Likewise.
+       (TuplePatternItemsHasRest::to_string): Likewise.
+       (TuplePattern::as_string): Likewise.
+       (TuplePattern::to_string): Likewise.
+       (StructPatternField::as_string): Likewise.
+       (StructPatternField::to_string): Likewise.
+       (StructPatternFieldIdent::as_string): Likewise.
+       (StructPatternFieldIdent::to_string): Likewise.
+       (StructPatternFieldTuplePat::as_string): Likewise.
+       (StructPatternFieldTuplePat::to_string): Likewise.
+       (StructPatternFieldIdentPat::as_string): Likewise.
+       (StructPatternFieldIdentPat::to_string): Likewise.
+       (StructPatternElements::as_string): Likewise.
+       (StructPatternElements::to_string): Likewise.
+       (StructPattern::as_string): Likewise.
+       (StructPattern::to_string): Likewise.
+       (LiteralPattern::as_string): Likewise.
+       (LiteralPattern::to_string): Likewise.
+       (ReferencePattern::as_string): Likewise.
+       (ReferencePattern::to_string): Likewise.
+       (IdentifierPattern::as_string): Likewise.
+       (IdentifierPattern::to_string): Likewise.
+       (TupleStructItemsNoRest::as_string): Likewise.
+       (TupleStructItemsNoRest::to_string): Likewise.
+       (TupleStructItemsHasRest::as_string): Likewise.
+       (TupleStructItemsHasRest::to_string): Likewise.
+       (TupleStructPattern::as_string): Likewise.
+       (TupleStructPattern::to_string): Likewise.
+       (LetStmt::as_string): Likewise.
+       (LetStmt::to_string): Likewise.
+       (Expr::as_string): Likewise.
+       (Expr::to_string): Likewise.
+       (InferredType::as_string): Likewise.
+       (InferredType::to_string): Likewise.
+       (TypeCastExpr::as_string): Likewise.
+       (TypeCastExpr::to_string): Likewise.
+       (ImplTraitType::as_string): Likewise.
+       (ImplTraitType::to_string): Likewise.
+       (ReferenceType::as_string): Likewise.
+       (ReferenceType::to_string): Likewise.
+       (RawPointerType::as_string): Likewise.
+       (RawPointerType::to_string): Likewise.
+       (TraitObjectType::as_string): Likewise.
+       (TraitObjectType::to_string): Likewise.
+       (BareFunctionType::as_string): Likewise.
+       (BareFunctionType::to_string): Likewise.
+       (TypePathSegmentGeneric::as_string): Likewise.
+       (TypePathSegmentGeneric::to_string): Likewise.
+       (TypePathFunction::as_string): Likewise.
+       (TypePathFunction::to_string): Likewise.
+       (TypePathSegmentFunction::as_string): Likewise.
+       (TypePathSegmentFunction::to_string): Likewise.
+       (ArrayType::as_string): Likewise.
+       (ArrayType::to_string): Likewise.
+       (SliceType::as_string): Likewise.
+       (SliceType::to_string): Likewise.
+       (TupleType::as_string): Likewise.
+       (TupleType::to_string): Likewise.
+       (StructExpr::as_string): Likewise.
+       (StructExpr::to_string): Likewise.
+       (StructExprStruct::as_string): Likewise.
+       (StructExprStruct::to_string): Likewise.
+       (StructBase::as_string): Likewise.
+       (StructBase::to_string): Likewise.
+       (StructExprFieldWithVal::as_string): Likewise.
+       (StructExprFieldWithVal::to_string): Likewise.
+       (StructExprFieldIdentifierValue::as_string): Likewise.
+       (StructExprFieldIdentifierValue::to_string): Likewise.
+       (StructExprFieldIndexValue::as_string): Likewise.
+       (StructExprFieldIndexValue::to_string): Likewise.
+       (StructExprStructFields::as_string): Likewise.
+       (StructExprStructFields::to_string): Likewise.
+       (EnumItem::as_string): Likewise.
+       (EnumItem::to_string): Likewise.
+       (EnumItemTuple::as_string): Likewise.
+       (EnumItemTuple::to_string): Likewise.
+       (TupleField::as_string): Likewise.
+       (TupleField::to_string): Likewise.
+       (EnumItemStruct::as_string): Likewise.
+       (EnumItemStruct::to_string): Likewise.
+       (StructField::as_string): Likewise.
+       (StructField::to_string): Likewise.
+       (EnumItemDiscriminant::as_string): Likewise.
+       (EnumItemDiscriminant::to_string): Likewise.
+       (ExternalItem::as_string): Likewise.
+       (ExternalItem::to_string): Likewise.
+       (ExternalStaticItem::as_string): Likewise.
+       (ExternalStaticItem::to_string): Likewise.
+       (ExternalFunctionItem::as_string): Likewise.
+       (ExternalFunctionItem::to_string): Likewise.
+       (ExternalTypeItem::as_string): Likewise.
+       (ExternalTypeItem::to_string): Likewise.
+       (NamedFunctionParam::as_string): Likewise.
+       (NamedFunctionParam::to_string): Likewise.
+       (attr.as_string): Likewise.
+       (attr.to_string): Likewise.
+       (TraitItemFunc::as_string): Likewise.
+       (TraitItemFunc::to_string): Likewise.
+       (TraitFunctionDecl::as_string): Likewise.
+       (TraitFunctionDecl::to_string): Likewise.
+       (TraitItemConst::as_string): Likewise.
+       (TraitItemConst::to_string): Likewise.
+       (TraitItemType::as_string): Likewise.
+       (TraitItemType::to_string): Likewise.
+       (SelfParam::as_string): Likewise.
+       (SelfParam::to_string): Likewise.
+       (ArrayElemsCopied::as_string): Likewise.
+       (ArrayElemsCopied::to_string): Likewise.
+       (LifetimeWhereClauseItem::as_string): Likewise.
+       (LifetimeWhereClauseItem::to_string): Likewise.
+       (TypeBoundWhereClauseItem::as_string): Likewise.
+       (TypeBoundWhereClauseItem::to_string): Likewise.
+       (ArrayElemsValues::as_string): Likewise.
+       (ArrayElemsValues::to_string): Likewise.
+       (MaybeNamedParam::as_string): Likewise.
+       (MaybeNamedParam::to_string): Likewise.
+       * hir/tree/rust-hir.h: Likewise.
+       * rust-session-manager.cc (Session::dump_hir): Likewise.
+       * typecheck/rust-hir-dot-operator.cc (MethodResolver::select): Likewise.
+       * typecheck/rust-hir-path-probe.cc (PathProbeType::visit): Likewise.
+       (PathProbeType::process_enum_item_for_candiates): Likewise.
+       * typecheck/rust-hir-path-probe.h: Likewise.
+       * typecheck/rust-hir-type-check-expr.cc 
(emit_ambiguous_resolution_error): Likewise.
+       (TypeCheckExpr::visit): Likewise.
+       (TypeCheckExpr::resolve_fn_trait_call): Likewise.
+       * typecheck/rust-hir-type-check-path.cc (TypeCheckExpr::visit): 
Likewise.
+       (TypeCheckExpr::resolve_root_path): Likewise.
+       * typecheck/rust-hir-type-check-pattern.cc (TypeCheckPattern::visit): 
Likewise.
+       * typecheck/rust-hir-type-check-type.cc (TypeCheckType::visit): 
Likewise.
+       (TypeCheckType::resolve_root_path): Likewise.
+       (ResolveWhereClauseItem::visit): Likewise.
+       * typecheck/rust-tyty-bounds.cc: Likewise.
+       * typecheck/rust-tyty.cc (VariantDef::as_string): Likewise.
+       (FnType::as_string): Likewise.
+
+2025-12-23  Ashwani Kumar Kamal  <[email protected]>
+
+       * util/rust-attributes.cc: New function to handle deprecated attribute 
checking
+
+2025-12-23  Owen Avery  <[email protected]>
+
+       * ast/rust-ast-visitor.cc (DefaultASTVisitor::visit): Visit the
+       generic parameters of TraitItemType.
+       * expand/rust-expand-visitor.h (is_derive): Remove defunct
+       function declaration.
+       * hir/rust-ast-lower-item.cc (ASTLoweringItem::visit): Remove
+       unnecessary copy.
+       * resolve/rust-name-resolver.cc (Resolver::Resolver): Skip
+       generating builtins for the old resolver.
+       * util/rust-hir-map.cc (Mappings::get_next_node_id): Detect node
+       id exhaustion.
+       * util/rust-mapping-common.h (MAX_NODEID): Add macro definition.
+
+2025-12-23  lenny.chiadmi-delage  <[email protected]>
+
+       * ast/rust-path.cc (TypePath::to_trait_bound): Check if in
+       parenthesis.
+       * hir/tree/rust-hir-type.cc (ParenthesisedType::to_trait_bound):
+       Likewise.
+       * hir/tree/rust-hir.cc (TypePath::to_trait_bound): Likewise.
+
 2025-12-17  Pierre-Emmanuel Patry  <[email protected]>
 
        * parse/rust-parse-impl-lexer.cc: Fix included file name.
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 4715b739d597..84b1ada63d13 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,92 @@
+2025-12-23  Nathaniel Shead  <[email protected]>
+
+       PR c++/122819
+       * g++.dg/modules/tpl-friend-22.C: New test.
+       * g++.dg/template/friend88.C: New test.
+
+2025-12-23  Mohammad-Reza Nabipoor  <[email protected]>
+
+       * algol68/compile/modules/compile.exp (dg-data): New procedure
+       for writing binary test data to disk.
+       * algol68/compile/modules/program-m68-lp64.a68: New test which
+       embeds binary module data.
+       * algol68/compile/modules/program-m68-llp64.a68: Likewise.
+       * algol68/compile/modules/program-m68-ilp32.a68: Likewise.
+       * algol68/compile/modules/program-m68-lp64-be.a68: Likewise.
+       * algol68/compile/modules/program-m68-llp64-be.a68: Likewise.
+
+2025-12-23  Jeff Law  <[email protected]>
+
+       PR target/123274
+       * gcc.target/riscv/pr123274.c: New test.
+
+2025-12-23  Jeff Law  <[email protected]>
+
+       PR target/123278
+       * gcc.target/riscv/pr123278.c: New test.
+
+2025-12-23  Egas Ribeiro  <[email protected]>
+
+       PR c++/122550
+       * g++.dg/cpp2a/concepts-friend18.C: New test.
+       * g++.dg/cpp2a/concepts-friend18a.C: New test.
+
+2025-12-23  Egas Ribeiro  <[email protected]>
+
+       PR c++/122958
+       * g++.dg/cpp2a/partial-spec-redecl.C: New test.
+
+2025-12-23  lenny.chiadmi-delage  <[email protected]>
+
+       * rust/compile/issue-4245.rs: New test.
+
+2025-12-23  Lucas Ly Ba  <[email protected]>
+
+       * rust/compile/unused-mut-identifier_0.rs: New test.
+       * rust/compile/unused-mut-struct-field_0.rs: New test.
+
+2025-12-23  Lucas Ly Ba  <[email protected]>
+
+       * rust/compile/static_item_0.rs: Modify warning output.
+       * rust/compile/template_function_0.rs: Modify warning output.
+
+2025-12-23  Lucas Ly Ba  <[email protected]>
+
+       * rust/compile/issue-4260_0.rs: New test.
+
+2025-12-23  Ryutaro Okada  <[email protected]>
+
+       * rust/compile/static_item_0.rs: New test.
+       * rust/compile/template_function_0.rs: New test.
+
+2025-12-23  Harishankar  <[email protected]>
+
+       * rust/compile/issue-3977.rs: New test.
+
+2025-12-23  lenny.chiadmi-delage  <[email protected]>
+
+       * rust/compile/issue-4148.rs: Test should produce errors.
+
+2025-12-23  Egas Ribeiro  <[email protected]>
+
+       PR c++/117518
+       * g++.dg/cpp2a/lambda-targ19.C: New test.
+
+2025-12-23  Andrew Pinski  <[email protected]>
+
+       PR rtl-optimization/123267
+       * gcc.dg/torture/pr123267-1.c: New test.
+
+2025-12-23  Dhruv Chawla  <[email protected]>
+
+       * lib/profopt.exp: Bump GCOV version to 3.
+       * gcc.dg/tree-prof/afdo-lto_priv-basic-0.c: New test.
+       * gcc.dg/tree-prof/afdo-lto_priv-basic-1.c: Likewise.
+       * gcc.dg/tree-prof/afdo-lto_priv-header-0.c: Likewise.
+       * gcc.dg/tree-prof/afdo-lto_priv-header-0.h: Likewise.
+       * gcc.dg/tree-prof/afdo-lto_priv-header-1.c: Likewise.
+       * gcc.dg/tree-prof/afdo-lto_priv-header-1.h: Likewise.
+
 2025-12-22  Nathaniel Shead  <[email protected]>
 
        PR c++/122994

Reply via email to