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
