https://gcc.gnu.org/g:78eca0d5c82fc5893a93bf276ca7142a0a8443ca

commit r16-6230-g78eca0d5c82fc5893a93bf276ca7142a0a8443ca
Author: GCC Administrator <[email protected]>
Date:   Thu Dec 18 00:16:33 2025 +0000

    Daily bump.

Diff:
---
 ChangeLog               |   4 +
 gcc/ChangeLog           | 100 ++++++++++++++++
 gcc/DATESTAMP           |   2 +-
 gcc/algol68/ChangeLog   |  11 ++
 gcc/cp/ChangeLog        |  18 +++
 gcc/m2/ChangeLog        |  18 +++
 gcc/rust/ChangeLog      | 308 ++++++++++++++++++++++++++++++++++++++++++++++++
 gcc/testsuite/ChangeLog |  78 ++++++++++++
 libgomp/ChangeLog       |   4 +
 libstdc++-v3/ChangeLog  | 118 +++++++++++++++++++
 10 files changed, 660 insertions(+), 1 deletion(-)

diff --git a/ChangeLog b/ChangeLog
index 49729eb39278..192b3bdd4762 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2025-12-17  Jeff Law  <[email protected]>
+
+       * MAINTAINERS: Use my oss.qualcomm.com address.
+
 2025-12-15  Jose E. Marchesi  <[email protected]>
 
        * MAINTAINERS: Add myself to DCO section.
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 0957357ed11a..ebae44665afe 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,103 @@
+2025-12-17  H.J. Lu  <[email protected]>
+
+       PR target/122343
+       * cselib.cc (cselib_redundant_set_p): Return false for volatile
+       memory source or destination.
+
+2025-12-17  Georg-Johann Lay  <[email protected]>
+
+       * config/avr/avr.cc (avr_out_shift_with_cnt): Tweak
+       execution time by count-1 cycles in some cases.
+
+2025-12-17  Georg-Johann Lay  <[email protected]>
+
+       * config/avr/avr-protos.h (out_shift_with_cnt): Remove.
+       * config/avr/avr.cc (avr_out_shift_with_cnt): New static
+       function from out_shift_with_cnt: Pass shift rtx_code instead
+       of asm template.
+       (avr_out_shift_1): New static helper function.
+       (ashlqi3_out, ashlhi3_out, avr_out_ashlpsi3, ashlsi3_out)
+       (ashrqi3_out, ashrhi3_out, avr_out_ashrpsi3, ashrsi3_out)
+       (lshrqi3_out, lshrhi3_out, avr_out_lshrpsi3, lshrsi3_out):
+       Adjust avr_out_shift_with_cnt to new interface.
+
+2025-12-17  Jeff Law  <[email protected]>
+
+       * config/riscv/sync.md (atomic compare and set): Reorder patterns
+       so the stricter pattern comes first.
+
+2025-12-17  Jakub Jelinek  <[email protected]>
+
+       PR target/123155
+       * config/i386/xmmintrin.h (_mm_maskmove_si64): Rename offset automatic
+       variable to __offset.
+
+2025-12-17  Jakub Jelinek  <[email protected]>
+
+       PR target/123155
+       * config/i386/avx10_2bf16intrin.h (_mm512_roundscale_pbh,
+       _mm512_mask_roundscale_pbh, _mm512_maskz_roundscale_pbh,
+       _mm256_roundscale_pbh, _mm256_mask_roundscale_pbh,
+       _mm256_maskz_roundscale_pbh, _mm_roundscale_pbh,
+       _mm_mask_roundscale_pbh, _mm_maskz_roundscale_pbh,
+       _mm512_reduce_pbh, _mm512_mask_reduce_pbh, _mm512_maskz_reduce_pbh,
+       _mm256_reduce_pbh, _mm256_mask_reduce_pbh, _mm256_maskz_reduce_pbh,
+       _mm_reduce_pbh, _mm_mask_reduce_pbh, _mm_maskz_reduce_pbh): Rename
+       B argument to __B.
+
+2025-12-17  Umesh Kalvakuntla  <[email protected]>
+
+       * common/config/i386/cpuinfo.h (get_amd_cpu): Add znver6 1Ah
+       family model numbers.
+       (get_available_features): Set feature AVX512BMM.
+       * common/config/i386/i386-common.cc (OPTION_MASK_ISA2_AVX512BMM_SET):
+       New macro.
+       (OPTION_MASK_ISA2_AVX512BMM_UNSET): New macro.
+       (OPTION_MASK_ISA2_AVX512BW_UNSET): Unset AVX512BMM.
+       (ix86_handle_option): Likewise.
+       * common/config/i386/i386-cpuinfo.h (enum processor_subtypes):
+       Add AMDFAM1AH_ZNVER6.
+       (enum processor_features): Add FEATURE_AVX512BMM.
+       * common/config/i386/i386-isas.h: Likewise.
+       * config.gcc: Add avx512bmmintrin.h, avx512bmmvlintrin.h,
+       znver6.
+       * config/i386/cpuid.h (bit_AVX512BMM): New macro.
+       * config/i386/driver-i386.cc (host_detect_local_cpu): Likewise.
+       * config/i386/i386-builtin.def (BDESC): Add AVX512BMM builtins.
+       * config/i386/i386-c.cc (ix86_target_macros_internal): Likewise.
+       * config/i386/i386-isa.def (AVX512BMM): Likewise.
+       * config/i386/i386-options.cc (m_ZNVER6): New macro.
+       (m_ZNVER): Add m_ZNVER6.
+       (processor_cost_table): Uses znver5_cost table for
+       PROCESSOR_ZNVER6 for now.
+       (ix86_valid_target_attribute_inner_p): Likewise.
+       * config/i386/i386.cc (ix86_reassociation_width): Likewise.
+       * config/i386/i386.h (enum processor_type): Likewise.
+       * config/i386/i386.md: Likewise.
+       * config/i386/i386.opt: Likewise.
+       * config/i386/i386.opt.urls: Likewise.
+       * config/i386/immintrin.h: Likewise.
+       * config/i386/sse.md (avx512bmm_vbmacor16x16x16_<mode>): New
+       define_insn.
+       (avx512bmm_vbmacxor16x16x16_<mode>): Likewise.
+       (avx512bmm_vbitrevb_<mode>_mask): Likewise.
+       (avx512bmm_vbitrevb_<mode>): Likewise.
+       * config/i386/x86-tune-sched.cc (ix86_issue_rate): Likewise.
+       (ix86_adjust_cost): Likewise.
+       * config/i386/x86-tune.def (X86_TUNE_FUSE_ALU_AND_BRANCH): Add
+       m_ZNVER6.
+       (X86_TUNE_FUSE_MOV_AND_ALU): Likewise.
+       (X86_TUNE_USE_SCATTER_2PARTS): Likewise.
+       (X86_TUNE_USE_SCATTER_4PARTS): Likewise.
+       (X86_TUNE_USE_SCATTER_8PARTS): Likewise.
+       (X86_TUNE_AVOID_256FMA_CHAINS): Likewise.
+       (X86_TUNE_AVOID_512FMA_CHAINS): Likewise.
+       (X86_TUNE_AVX512_MOVE_BY_PIECES): Likewise.
+       * doc/extend.texi: Likewise.
+       * doc/invoke.texi: Likewise.
+       * config/i386/avx512bmmintrin.h: New file.
+       * config/i386/avx512bmmvlintrin.h: New file.
+
 2025-12-16  Iain Sandoe  <[email protected]>
 
        * config/aarch64/aarch64.cc
diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP
index f9e8e911bab6..0488a44f70fb 100644
--- a/gcc/DATESTAMP
+++ b/gcc/DATESTAMP
@@ -1 +1 @@
-20251217
+20251218
diff --git a/gcc/algol68/ChangeLog b/gcc/algol68/ChangeLog
index b7640b9e702d..70e834334cf1 100644
--- a/gcc/algol68/ChangeLog
+++ b/gcc/algol68/ChangeLog
@@ -1,3 +1,14 @@
+2025-12-17  Jose E. Marchesi  <[email protected]>
+
+       PR algol68/123006
+       * a68-imports.cc (complete_encoded_mode): Fix handling of flex
+       modes.
+
+2025-12-17  Jose E. Marchesi  <[email protected]>
+
+       PR algol68/123132
+       * a68-imports.cc (DOFFSET): Fix big-endian path.
+
 2025-12-16  Jose E. Marchesi  <[email protected]>
 
        * a68-parser-bottom-up.cc (reduce_prelude_packet): Do not support
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index de69cca78259..30dec8f6831e 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,21 @@
+2025-12-17  benwu25  <[email protected]>
+
+       * parser.cc (cp_parser_init_declarator): Adjust comment.
+
+2025-12-17  benwu25  <[email protected]>
+
+       PR c++/121443
+       * parser.cc (cp_parser_lambda_expression): Clear
+       in_declarator_p.
+
+2025-12-17  Nathaniel Shead  <[email protected]>
+
+       PR c++/123075
+       * constraint.cc (evaluate_concept_check): Push to an unrelated
+       scope, but keep the same access context.
+       * pt.cc (tsubst_lambda_expr): Don't record lambda scopes for
+       lambdas attached to a concept.
+
 2025-12-15  Patrick Palka  <[email protected]>
 
        * parser.cc (cp_parser_template_id): Rebuild instead of modifying
diff --git a/gcc/m2/ChangeLog b/gcc/m2/ChangeLog
index 17e5383b7c4b..9292c536bc02 100644
--- a/gcc/m2/ChangeLog
+++ b/gcc/m2/ChangeLog
@@ -1,3 +1,21 @@
+2025-12-17  Gaius Mulley  <[email protected]>
+
+       PR modula2/23178
+       * gm2-compiler/P3SymBuild.mod (CheckCanBeImported): Reimplement to
+       use MetaError2 and provide spell hints if possible for unknown symbols.
+
+2025-12-17  Gaius Mulley  <[email protected]>
+
+       PR modula2/123151
+       * gm2-libs/FIO.def (IsError): New procedure function.
+       (IsActive): Rewrite the comment.
+       (Exists): Ditto.
+       (OpenToRead): Ditto.
+       (OpenToWrite): Ditto.
+       (Close): Add an optional BOOLEAN return result.
+       * gm2-libs/FIO.mod (Close): Reimplement with an
+       optional BOOLEAN return result.
+
 2025-12-12  Pietro Monteiro  <[email protected]>
 
        * lang.opt.urls: Regenerate.
diff --git a/gcc/rust/ChangeLog b/gcc/rust/ChangeLog
index d9d291101c14..5adb1173529c 100644
--- a/gcc/rust/ChangeLog
+++ b/gcc/rust/ChangeLog
@@ -1,3 +1,311 @@
+2025-12-17  Pierre-Emmanuel Patry  <[email protected]>
+
+       * parse/rust-parse-impl-lexer.cc: Fix included file name.
+       * parse/rust-parse-impl-macro.cc: Likewise.
+       * parse/rust-parse-impl-proc-macro.cc: Likewise.
+       * parse/rust-parse-impl.h: Move to...
+       * parse/rust-parse-impl.hxx: ...here.
+
+2025-12-17  Pierre-Emmanuel Patry  <[email protected]>
+
+       * parse/rust-parse-impl.h (Parser::parse_inner_attributes): Move to
+       rust-parse-impl-XXX.hxx implementation file.
+       (Parser::parse_doc_comment): Likewise. Change return type to
+       AttributeBody.
+       (Parser::parse_inner_attribute): Likewise.
+       (Parser::parse_attribute_body): Likewise.
+       (Parser::parse_identifier_or_keyword_token): Likewise.
+       (Parser::parse_outer_attributes): Likewise.
+       (Parser::is_macro_rules_def): Likewise.
+       (Parser::parse_simple_path): Likewise.
+       (Parser::parse_item): Likewise.
+       (Parser::parse_simple_path_segment): Likewise.
+       (Parser::parse_path_ident_segment): Likewise.
+       (Parser::parse_vis_item): Likewise.
+       (Parser::parse_attr_input): Likewise.
+       (Parser::parse_async_item): Likewise.
+       (Parser::parse_delim_token_tree): Likewise.
+       (Parser::parse_macro_rules_def): Likewise.
+       (Parser::parse_decl_macro_def): Likewise.
+       (Parser::parse_token_tree): Likewise.
+       (Parser::parse_visibility): Likewise.
+       (Parser::parse_module): Likewise.
+       (Parser::parse_outer_attribute): Likewise.
+       (Parser::parse_extern_crate): Likewise.
+       (Parser::parse_use_decl): Likewise.
+       (Parser::parse_use_tree): Likewise.
+       (Parser::parse_function): Likewise.
+       (Parser::parse_macro_invocation): Likewise.
+       (Parser::parse_macro_rule): Likewise.
+       (Parser::parse_function_qualifiers): Likewise.
+       (Parser::parse_macro_matcher): Likewise.
+       (Parser::parse_generic_params_in_angles): Likewise.
+       (Parser::parse_macro_match): Likewise.
+       (Parser::parse_generic_param): Likewise.
+       (Parser::parse_macro_match_fragment): Likewise.
+       (Parser::parse_macro_match_repetition): Likewise.
+       (Parser::parse_generic_params): Likewise.
+       (Parser::parse_lifetime_params): Likewise.
+       (Parser::parse_lifetime_params_objs): Likewise.
+       (Parser::parse_lifetime_param): Likewise.
+       (Parser::parse_type_params): Likewise.
+       (Parser::parse_type_param): Likewise.
+       (Parser::parse_function_params): Likewise.
+       (Parser::parse_function_param): Likewise.
+       (Parser::parse_function_return_type): Likewise.
+       (Parser::parse_where_clause): Likewise.
+       (Parser::parse_lifetime_where_clause_item): Likewise.
+       (Parser::parse_for_lifetimes): Likewise.
+       (Parser::parse_type_param_bounds): Likewise.
+       (Parser::parse_type_param_bound): Likewise.
+       (Parser::parse_trait_bound): Likewise.
+       (Parser::parse_lifetime_bounds): Likewise.
+       (Parser::parse_lifetime): Likewise.
+       (Parser::lifetime_from_token): Likewise.
+       (Parser::parse_external_type_item): Likewise.
+       (Parser::parse_type_alias): Likewise.
+       (Parser::parse_struct): Likewise.
+       (Parser::parse_struct_fields): Likewise.
+       (Parser::parse_struct_field): Likewise.
+       (Parser::parse_tuple_fields): Likewise.
+       (Parser::parse_tuple_field): Likewise.
+       (Parser::parse_enum): Likewise.
+       (Parser::parse_enum_items): Likewise.
+       (Parser::parse_enum_item): Likewise.
+       (Parser::parse_union): Likewise.
+       (Parser::parse_const_item): Likewise.
+       (Parser::parse_static_item): Likewise.
+       (Parser::parse_trait): Likewise.
+       (Parser::parse_trait_item): Likewise.
+       (Parser::parse_trait_type): Likewise.
+       (Parser::parse_trait_const): Likewise.
+       (Parser::parse_impl): Likewise.
+       (Parser::parse_inherent_impl_item): Likewise.
+       (Parser::parse_trait_impl_item): Likewise.
+       (Parser::parse_extern_block): Likewise.
+       (Parser::parse_external_item): Likewise.
+       (Parser::parse_stmt): Likewise.
+       (Parser::parse_let_stmt): Likewise.
+       (Parser::parse_generic_arg): Likewise.
+       (Parser::parse_path_generic_args): Likewise.
+       (Parser::parse_generic_args_binding): Likewise.
+       (Parser::parse_self_param): Likewise.
+       (Parser::parse_expr_stmt): Likewise.
+       (Parser::parse_anon_const): Likewise.
+       (Parser::parse_const_block_expr): Likewise.
+       (Parser::parse_grouped_expr): Likewise.
+       (Parser::parse_type_path): Likewise.
+       (Parser::parse_closure_expr): Likewise.
+       (Parser::parse_literal_expr): Likewise.
+       (Parser::parse_box_expr): Likewise.
+       (Parser::parse_return_expr): Likewise.
+       (Parser::parse_try_expr): Likewise.
+       (Parser::parse_break_expr): Likewise.
+       (Parser::parse_continue_expr): Likewise.
+       (Parser::parse_type_path_segment): Likewise.
+       (Parser::parse_loop_label): Likewise.
+       (Parser::parse_type_path_function): Likewise.
+       (Parser::parse_if_expr): Likewise.
+       (Parser::parse_path_in_expression): Likewise.
+       (Parser::parse_path_expr_segment): Likewise.
+       (Parser::parse_if_let_expr): Likewise.
+       (Parser::parse_loop_expr): Likewise.
+       (Parser::parse_qualified_path_in_type): Likewise.
+       (Parser::parse_labelled_loop_expr): Likewise.
+       (Parser::parse_match_expr): Likewise.
+       (Parser::parse_match_arm): Likewise.
+       (Parser::parse_match_arm_patterns): Likewise.
+       (Parser::parse_async_block_expr): Likewise.
+       (Parser::parse_array_expr): Likewise.
+       (Parser::parse_closure_param): Likewise.
+       (Parser::parse_type): Likewise.
+       (Parser::parse_paren_prefixed_type): Likewise.
+       (Parser::parse_for_prefixed_type): Likewise.
+       (Parser::parse_maybe_named_param): Likewise.
+       (Parser::parse_reference_type_inner): Likewise.
+       (Parser::parse_reference_type): Likewise.
+       (Parser::parse_raw_pointer_type): Likewise.
+       (Parser::parse_slice_or_array_type): Likewise.
+       (Parser::parse_type_no_bounds): Likewise.
+       (Parser::parse_paren_prefixed_type_no_bounds): Likewise.
+       (Parser::parse_literal_or_range_pattern): Likewise.
+       (Parser::parse_range_pattern_bound): Likewise.
+       (Parser::parse_pattern): Likewise.
+       (Parser::parse_pattern_no_alt): Likewise.
+       (Parser::parse_reference_pattern): Likewise.
+       (Parser::parse_grouped_or_tuple_pattern): Likewise.
+       (Parser::parse_slice_pattern): Likewise.
+       (Parser::parse_identifier_pattern): Likewise.
+       (Parser::parse_ident_leading_pattern): Likewise.
+       (Parser::parse_struct_pattern_elems): Likewise.
+       (Parser::parse_struct_pattern_field): Likewise.
+       (Parser::unexpected_token): Likewise.
+       (Parser::skip_after_semicolon): Likewise.
+       (Parser::skip_token): Likewise.
+       (Parser::maybe_skip_token): Likewise.
+       (Parser::expect_token): Likewise.
+       (Parser::skip_after_end): Likewise.
+       (Parser::skip_after_end_block): Likewise.
+       (Parser::skip_after_next_block): Likewise.
+       (Parser::skip_after_end_attribute): Likewise.
+       (Parser::done_end_or_else): Likewise.
+       (Parser::done_end): Likewise.
+       * parse/rust-parse.h: Change function return type to AttributeBody
+       instead of a tuple (parse_doc_comment). Move enum binding powers from
+       impl file.
+       * parse/rust-parse-impl-attribute.hxx: New file.
+       * parse/rust-parse-impl-macro.hxx: New file.
+       * parse/rust-parse-impl-path.hxx: New file.
+       * parse/rust-parse-impl-pattern.hxx: New file.
+       * parse/rust-parse-impl-ttree.hxx: New file.
+       * parse/rust-parse-impl-utils.hxx: New file.
+       * parse/rust-parse-impl-expr.hxx: New file.
+
+2025-12-17  Pierre-Emmanuel Patry  <[email protected]>
+
+       * parse/rust-parse-impl.h (can_tok_start_type): Move function from ...
+       * parse/rust-parse-utils.h (can_tok_start_type): ... to here.
+
+2025-12-17  Pierre-Emmanuel Patry  <[email protected]>
+
+       * parse/rust-parse-impl.h (is_right_angle_tok): Move function ...
+       (Parser::parse_generic_params_in_angles): Change call.
+       (Parser::parse_for_lifetimes): Likewise.
+       (Parser::parse_path_generic_args): Likewise.
+       * parse/rust-parse-utils.h (is_right_angle_tok): ... to here.
+
+2025-12-17  Pierre-Emmanuel Patry  <[email protected]>
+
+       * rust-session-manager.cc (Session::enable_dump): Rework error message
+       and remove magic value.
+       (Session::handle_excluded_node): Remove static buffer size.
+
+2025-12-17  Pierre-Emmanuel Patry  <[email protected]>
+
+       * ast/rust-ast-collector.cc (TokenCollector::begin_describe_node):
+       Remove function.
+       (TokenCollector::end_describe_node): Likewise.
+       (TokenCollector::describe_node): Remove calls to begin/end.
+       * ast/rust-ast-collector.h: Specialize begin and end collect items. Add
+       more constructors to begin/end description.
+       * ast/rust-ast-dump.cc (Dump::Dump): Adapt to new configuration
+       options.
+       * ast/rust-ast-dump.h: Add new configuration options.
+       * rust-session-manager.cc (Session::dump_ast_pretty_internal): Use new
+       configuration options.
+
+2025-12-17  Pierre-Emmanuel Patry  <[email protected]>
+
+       * ast/rust-ast-collector.cc (TokenCollector::comment): Use comment kind
+       (TokenCollector::begin_internal_comment): Rename from this...
+       (TokenCollector::begin_describe_node): ... to this.
+       (TokenCollector::end_internal_comment): Rename from this...
+       (TokenCollector::end_describe_node): ... to this.
+       (TokenCollector::internal_comment): Rename from this...
+       (TokenCollector::describe_node): ... to this.
+       (TokenCollector::visit): Change name in function calls.
+       (TokenCollector::visit_closure_common): Likewise.
+       (TokenCollector::visit_loop_common): Likewise.
+       * ast/rust-ast-collector.h: Adapt function prototypes, add a new
+       collect item kind for node description.
+
+2025-12-17  Benjamin Thos  <[email protected]>
+
+       * ast/rust-ast-collector.cc (TokenCollector::internal_comment):
+               Wrapper function to add both  comment.
+       (TokenCollector::visit): call of the wrapper function.
+       (TokenCollector::visit_closure_common): Same.
+       (TokenCollector::visit_loop_common): Same.
+       * ast/rust-ast-collector.h: Prototype of the wrapper function
+
+2025-12-17  Benjamin Thos  <[email protected]>
+
+       * ast/rust-ast-collector.cc (TokenCollector::begin_internal_comment):
+       Change a boolean with an enum.
+       (TokenCollector::end_internal_comment): Likewise.
+       * ast/rust-ast-collector.h: Likewise + change include.
+       * ast/rust-ast-dump.cc (Dump::Dump): Change variable name.
+       * ast/rust-ast-dump.h: Likewise + replace vector with a set.
+       * rust-session-manager.cc (Session::enable_dump): Change variable
+       name.
+       (Session::handle_internal_blacklist): Change function name.
+       (Session::handle_excluded_node): Likewise.
+       (Session::dump_ast_pretty_internal): Change vector with a set.
+       * rust-session-manager.h (struct CompileOptions): Likewise + change
+       variable name.
+
+2025-12-17  Benjamin Thos  <[email protected]>
+
+       * ast/rust-ast-collector.cc (TokenCollector::begin_internal_comment):
+       Add internal comment to print node beginning.
+       (TokenCollector::end_internal_comment): Add internal comment to print
+       node end.
+       (TokenCollector::visit): Add the comments of the node visited.
+       (TokenCollector::visit_closure_common): Likewise.
+       (TokenCollector::visit_loop_common): Likewise.
+       * ast/rust-ast-collector.h: Add internal comment as a nes Kind.
+       * ast/rust-ast-dump.cc (Dump::Dump): add a Dump constructor to enable
+       internal.
+       * ast/rust-ast-dump.h: Add printing of internal comment in the dump
+       * rust-session-manager.cc (Session::enable_dump): Activate ast dump
+       and fill the blacklist.
+       (Session::handle_internal_blacklist): Parse the flag to get node to
+       be blacklisted.
+       (Session::compile_crate): Launch ast dump internal when asked.
+       (Session::dump_ast_pretty_internal): Call the visitor to dump
+       the internals.
+       * rust-session-manager.h (struct CompileOptions): add Interal in
+       Dump option enum.
+
+2025-12-17  Pierre-Emmanuel Patry  <[email protected]>
+
+       * ast/rust-expr.h: Use path locus.
+
+2025-12-17  Pierre-Emmanuel Patry  <[email protected]>
+
+       * parse/rust-parse-impl.h (Parser::parse_inner_attributes): Change
+       return type to avoid empty/error values that may break invariants in
+       the AST.
+       (Parser::parse_inner_attribute): Likewise.
+       (Parser::parse_outer_attribute): Likewise.
+       (Parser::parse_outer_attributes): Likewise.
+       (Parser::parse_attribute_body): Likewise.
+       (Parser::parse_simple_path): Likewise.
+       (Parser::parse_macro_invocation): Likewise.
+       (Parser::parse_visibility): Likewise.
+       (Parser::parse_use_tree): Likewise.
+       (Parser::parse_delim_token_tree): Likewise.
+       (Parser::parse_identifier_or_keyword_token): Likewise.
+       (Parser::parse_token_tree): Likewise.
+       (Parser::parse_macro_rules_def): Likewise.
+       (Parser::parse_decl_macro_def): Likewise.
+       (Parser::parse_macro_invocation): Likewise.
+       (Parser::parse_macro_rule): Likewise.
+       (Parser::parse_macro_matcher): Likewise.
+       (Parser::parse_type_path_segment): Likewise.
+       (Parser::parse_path_expr_segment): Likewise.
+       (Parser::parse_type): Likewise.
+       (Parser::parse_type_no_bounds): Likewise.
+       (Parser::parse_items): Circumvent GCC 5 to 7 bug.
+       (is_simple_path_segment): Move to utility file.
+       (token_id_matches_delims): Likewise.
+       (is_likely_path_next): Remove unused function.
+       (Parser::parse_attr_input): Return a structure instead of a tuple.
+       * expand/rust-macro-builtins-offset-of.cc: Adapt call to expected.
+       * ast/rust-ast.cc (AttributeParser::parse_path_meta_item): Use empty
+       vector when an error is encountered.
+       * expand/rust-macro-builtins-include.cc: Likewise.
+       * parse/rust-parse.h: Update prototypes.
+       * parse/rust-parse-impl-proc-macro.cc: Likewise.
+       * ast/rust-ast.h: Remove error state from Visibility.
+       * ast/rust-item.h: Use private visibility instead of error.
+       * ast/rust-macro.h: Likewise.
+       * expand/rust-macro-expand.cc: Likewise.
+       * hir/rust-ast-lower.cc: Remove error case.
+       * rust-session-manager.cc: Use private visibility
+       * parse/rust-parse-utils.h: New file.
+       * parse/rust-parse-error.h: New file.
+
 2025-12-12  Pietro Monteiro  <[email protected]>
 
        * lang.opt.urls: Regenerate.
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 4dd919bdc240..f3a979ed73e5 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,81 @@
+2025-12-17  H.J. Lu  <[email protected]>
+
+       PR target/122343
+       * gcc.dg/pr122343-1.c: New test.
+
+2025-12-17  Jose E. Marchesi  <[email protected]>
+
+       * algol68/execute/modules/module11.a68: Remove multiple definition
+       module.
+
+2025-12-17  Gaius Mulley  <[email protected]>
+
+       PR modula2/23178
+       * gm2/pim/fail/badprocedure.mod: New test.
+
+2025-12-17  Ulrich Weigand  <[email protected]>
+
+       PR testsuite/123166
+       * gfortran.dg/bessel_6.f90: Add { dg-do run } annotation.
+       * gfortran.dg/erf_2.F90: Likewise.
+       * gfortran.dg/integer_exponentiation_3.F90: Likewise.
+       * gfortran.dg/integer_exponentiation_5.F90: Likewise.
+
+2025-12-17  Gaius Mulley  <[email protected]>
+
+       PR modula2/123151
+       * gm2/pimlib/base/run/pass/FIO.mod: Reimplement.
+       Copy from gm2-libs/FIO.mod since FIO.def api has changed.
+       * gm2/pimlib/run/pass/testclose.mod: New test.
+
+2025-12-17  Rainer Orth  <[email protected]>
+
+       * gcc.target/i386/pr120881-1a.c: Restrict to Linux.
+       * gcc.target/i386/pr120881-1b.c: Likewise.
+
+2025-12-17  Rainer Orth  <[email protected]>
+
+       PR c++/112652
+       * g++.dg/cpp26/literals2.C: Skip on Solaris.
+
+2025-12-17  Rainer Orth  <[email protected]>
+
+       * gcc.dg/plugin/crash-test-nested-write-through-null-html.py:
+       Import re.
+       (test_results): Allow for "Segmentation Fault", too.
+       * gcc.dg/plugin/crash-test-nested-write-through-null-sarif.py:
+       Likewise.
+       * gcc.dg/plugin/crash-test-write-through-null-stderr.c
+       (test_inject_write_through_null): Likewise.
+
+2025-12-17  benwu25  <[email protected]>
+
+       PR c++/121443
+       * g++.dg/parse/pr121443.C: New test.
+
+2025-12-17  Nathaniel Shead  <[email protected]>
+
+       PR c++/123075
+       * g++.dg/cpp2a/concepts-lambda25.C: New test.
+       * g++.dg/modules/lambda-13.h: New test.
+       * g++.dg/modules/lambda-13_a.H: New test.
+       * g++.dg/modules/lambda-13_b.C: New test.
+
+2025-12-17  Pierre-Emmanuel Patry  <[email protected]>
+
+       * rust/compile/issue-4301.rs: New test.
+
+2025-12-17  Pierre-Emmanuel Patry  <[email protected]>
+
+       * rust/compile/macros/mbe/macro-issue3608.rs: Update error messages.
+
+2025-12-17  Umesh Kalvakuntla  <[email protected]>
+
+       * g++.target/i386/mv29.C: Likewise.
+       * gcc.target/i386/funcspec-56.inc: Likewise.
+       * gcc.target/i386/avx512bmm-1.c: New test.
+       * gcc.target/i386/avx512bmmvl-1.c: New test.
+
 2025-12-16  Jose E. Marchesi  <[email protected]>
 
        PR algol68/123131
diff --git a/libgomp/ChangeLog b/libgomp/ChangeLog
index faa355e6e18f..e062deac33eb 100644
--- a/libgomp/ChangeLog
+++ b/libgomp/ChangeLog
@@ -1,3 +1,7 @@
+2025-12-17  Rainer Orth  <[email protected]>
+
+       * testsuite/libgomp.c/affinity-1.c: Always add warnings.
+
 2025-12-15  Jakub Jelinek  <[email protected]>
 
        * plugin/build-target-indirect-htab.h (create_target_indirect_map):
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 504345dd38c2..d3f9f0f53cb8 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,121 @@
+2025-12-17  Jonathan Wakely  <[email protected]>
+
+       * include/bits/version.def (constexpr_exceptions): Add
+       cxx11abi=yes.
+       * include/bits/version.h: Regenerate.
+       * testsuite/18_support/exception/version.cc: Require effectiove
+       target cxx11_abi.
+       * testsuite/18_support/exception_ptr/exception_ptr_cast.cc: Only
+       check for constexpr support in cxx11 ABI.
+       * testsuite/19_diagnostics/headers/stdexcept/version.cc: Require
+       effective target cxx11_abi.
+       * testsuite/19_diagnostics/logic_error/constexpr.cc: Likewise.
+       * testsuite/19_diagnostics/runtime_error/constexpr.cc: Likewise.
+       * testsuite/20_util/expected/version.cc: Only check for
+       __cpp_lib_constexpr_exceptions macro for cxx11 ABI.
+       * testsuite/20_util/optional/version.cc: Likewise.
+       * testsuite/20_util/variant/version.cc: Likewise.
+
+2025-12-17  Jonathan Wakely  <[email protected]>
+           Jakub Jelinek  <[email protected]>
+
+       * include/bits/random.h [!__SIZEOF_INT128__] (__rand_uint128):
+       Refactor and rename _Select_uint_least_t<128>::type to a new
+       class. Make all members constexpr. Add new member functions for
+       additional arithmetic and bitwise operations, and comparisons.
+       (__detail::_Select_uint_least_t<>::type): Define as an alias of
+       __rand_uint128.
+       * include/bits/random.tcc (philox_engine::_M_mulhi): Use
+       _Select_uint_least_t<w*2>::type instead of __uint128_t.
+       (philox_engine::_M_transition): Likewise.
+       * include/bits/version.def (philox_engine): Remove extra_cond.
+       * include/bits/version.h: Regenerate.
+       * testsuite/26_numerics/random/philox4x32.cc: Remove
+       dg-require-cpp-feature-test directive.
+       * testsuite/26_numerics/random/philox4x64.cc: Likewise.
+       * testsuite/26_numerics/random/philox_engine/cons/copy.cc:
+       Likewise.
+       * testsuite/26_numerics/random/philox_engine/cons/default.cc:
+       Likewise.
+       * testsuite/26_numerics/random/philox_engine/cons/seed.cc:
+       Likewise.
+       * testsuite/26_numerics/random/philox_engine/operators/equal.cc:
+       Likewise.
+       * testsuite/26_numerics/random/philox_engine/operators/serialize.cc:
+       Likewise.
+       * testsuite/26_numerics/random/philox_engine/requirements/constants.cc:
+       Likewise.
+       * testsuite/26_numerics/random/philox_engine/requirements/typedefs.cc:
+       Likewise.
+
+2025-12-17  Jonathan Wakely  <[email protected]>
+
+       * 
testsuite/26_numerics/random/uniform_real_distribution/operators/64351.cc:
+       Add -fexcess-precision=standard to options.
+       * 
testsuite/26_numerics/random/uniform_real_distribution/operators/gencanon.cc:
+       Likewise.
+
+2025-12-17  Jonathan Wakely  <[email protected]>
+
+       * 
testsuite/26_numerics/random/uniform_real_distribution/operators/64351.cc
+       [_GLIBCXX_USE_OLD_GENERATE_CANONICAL]: Restore test01. Do not discard an
+       extra value in test02.
+       * 
testsuite/26_numerics/random/uniform_real_distribution/operators/gencanon.cc:
+       Skip if _GLIBCXX_USE_OLD_GENERATE_CANONICAL is defined in options.
+
+2025-12-17  Jonathan Wakely  <[email protected]>
+
+       * include/bits/random.h [!_GLIBCXX_USE_OLD_GENERATE_CANONICAL]
+       (generate_canonical): Use inline namespace _V2.
+       * include/bits/random.tcc [!_GLIBCXX_USE_OLD_GENERATE_CANONICAL]
+       (generate_canonical): Likewise.
+       * testsuite/26_numerics/random/pr60037-neg.cc: Remove lineno so
+       that one dg-error matches both diagnostics.
+
+2025-12-17  Jonathan Wakely  <[email protected]>
+
+       * include/bits/random.tcc [_GLIBCXX_USE_OLD_GENERATE_CANONICAL]
+       (generate_canonical): Restore braces around statement.
+
+2025-12-17  Tomasz Kamiński  <[email protected]>
+
+       * include/bits/random.tcc (generate_canonical)
+       [!_GLIBCXX_USE_OLD_GENERATE_CANONICAL]: Use static_assert
+       instead of type-constraint on template parameter.
+       * testsuite/26_numerics/random/pr60037-neg.cc: Updated line
+       of error.
+
+2025-12-17  Tomasz Kamiński  <[email protected]>
+
+       * include/bits/random.tcc (generate_canonical): Update
+       error message to match pre-existing one in random.h.
+       * testsuite/26_numerics/random/pr60037-neg.cc: Updated
+       line for error message.
+
+2025-12-17  Jakub Jelinek  <[email protected]>
+
+       * include/bits/random.tcc (std::generate_canonical): Use
+       __extension__ before __generate_canonical_{pow2,any} calls with
+       unsigned __int128 template arguments.
+
+2025-12-17  Tomasz Kamiński  <[email protected]>
+
+       * include/bits/atomic_base.h
+       (__atomic_ref_base<const _Tp>::__atomic_ref_base): Accept
+       pointer instead of reference. Remove precondition check and
+       mark as noexcept.
+       (__atomic_ref_base<_Tp>::__atomic_ref_base): Accept pointer
+       insted of reference, and mark as noexcept.
+       * include/std/atomic (atomic_ref::atomic_ref(_Tp&)): Add
+       precondition check and take address of argument.
+       (atomic_ref::atomic_ref(_Tp&&)): Define as deleted.
+       (atomic_ref::atomic_ref(atomic_ref<_Up>)): Define.
+       * include/bits/shared_ptr_atomic.h (_Sp_atomic::_Atomic_count):
+       Pass address to __atomic_ref constructor.
+       * include/std/barrier (__tree_barrier_base::_M_arrive)
+       (__tree_barrier::arrive): Pass address to __atomic_ref constructor.
+       * testsuite/29_atomics/atomic_ref/ctor.cc: New test.
+
 2025-12-16  Jonathan Wakely  <[email protected]>
 
        * include/std/type_traits (_Integer_kind): New enum type.

Reply via email to