[gcc r16-6186] Daily bump.

GCC Administrator gccadmin@gcc.gnu.org
Wed Dec 17 00:17:00 GMT 2025


https://gcc.gnu.org/g:5d69161a7c36a2da8565967eb0cc2df1322a05a3

commit r16-6186-g5d69161a7c36a2da8565967eb0cc2df1322a05a3
Author: GCC Administrator <gccadmin@gcc.gnu.org>
Date:   Wed Dec 17 00:16:30 2025 +0000

    Daily bump.

Diff:
---
 gcc/ChangeLog                | 199 +++++++++++++++++++++++++++++++++++++++++++
 gcc/DATESTAMP                |   2 +-
 gcc/algol68/ChangeLog        |  40 +++++++++
 gcc/analyzer/ChangeLog       |  39 +++++++++
 gcc/testsuite/ChangeLog      |  93 ++++++++++++++++++++
 libga68/ChangeLog            |   5 ++
 libstdc++-v3/ChangeLog       |  86 +++++++++++++++++++
 maintainer-scripts/ChangeLog |   4 +
 8 files changed, 467 insertions(+), 1 deletion(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index bbbe3933db42..0957357ed11a 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,202 @@
+2025-12-16  Iain Sandoe  <iain@sandoe.co.uk>
+
+	* config/aarch64/aarch64.cc
+	(aarch64_function_abi): Use checking assert.
+	(aarch64_fndecl_abi): Test for the availability of the
+	machine content before trying to look up the cached PCS.
+	Use a checking assert.
+
+2025-12-16  Jose E. Marchesi  <jose.marchesi@oracle.com>
+
+	* common.opt.urls: Regenerate.
+
+2025-12-16  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>
+
+	* config/xtensa/xtensa.cc (xtensa_expand_scc_SALT):
+	New sub-function that emits the SALT/SALTU instructions.
+	(xtensa_expand_scc): Change the part related to the SALT/SALTU
+	instructions to a call to the above sub-function.
+
+2025-12-16  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>
+
+	* config/xtensa/xtensa.cc
+	(xtensa_expand_block_set_libcall,
+	xtensa_expand_block_set_unrolled_loop,
+	xtensa_expand_block_set_small_loop, xtensa_call_tls_desc):
+	Change the return statement to pass the return value of
+	end_sequence() directly without going through a variable, and
+	remove the definition of that variable.
+
+2025-12-16  Claudiu Zissulescu  <claudiu.zissulescu-ianculescu@oracle.com>
+	    Indu Bhagat  <indu.bhagat@oracle.com>
+
+	* config/aarch64/aarch64.md (addg): Update pattern to use
+	addg/subg instructions.
+	(stg): Update pattern.
+	(st2g): New pattern.
+	(tag_memory): Likewise.
+	(compose_tag): Likewise.
+	(irq): Update pattern to accept xzr register.
+	(gmi): Likewise.
+	(UNSPECV_TAG_SPACE): Define.
+	* config/aarch64/aarch64.cc (AARCH64_MEMTAG_GRANULE_SIZE):
+	Define.
+	(AARCH64_MEMTAG_TAG_BITSIZE): Likewise.
+	(aarch64_override_options_internal): Error out if MTE instructions
+	are not available.
+	(aarch64_post_cfi_startproc): Emit .cfi_mte_tagged_frame.
+	(aarch64_can_tag_addresses): Add MEMTAG specific handling.
+	(aarch64_memtag_tag_bitsize): New function
+	(aarch64_memtag_granule_size): Likewise.
+	(aarch64_memtag_insert_random_tag): Likwise.
+	(aarch64_memtag_add_tag): Likewise.
+	(aarch64_memtag_extract_tag): Likewise.
+	(aarch64_granule16_memory_address_p): Likewise.
+	(aarch64_emit_stxg_insn): Likewise.
+	(aarch64_memtag_tag_memory_via_loop): New definition.
+	(aarch64_expand_tag_memory): Likewise.
+	(aarch64_check_memtag_ops): Likewise.
+	(TARGET_MEMTAG_TAG_BITSIZE): Likewise.
+	(TARGET_MEMTAG_GRANULE_SIZE): Likewise.
+	(TARGET_MEMTAG_INSERT_RANDOM_TAG): Likewise.
+	(TARGET_MEMTAG_ADD_TAG): Likewise.
+	(TARGET_MEMTAG_EXTRACT_TAG): Likewise.
+	* config/aarch64/aarch64-builtins.cc
+	(aarch64_expand_builtin_memtag): Update set tag builtin logic.
+	* config/aarch64/aarch64-linux.h: Pass memtag-stack sanitizer
+	specific options to the linker.
+	* config/aarch64/aarch64-protos.h
+	(aarch64_granule16_memory_address_p): New prototype.
+	(aarch64_check_memtag_ops): Likewise.
+	(aarch64_expand_tag_memory): Likewise.
+	* config/aarch64/constraints.md (Umg): New memory constraint.
+	(Uag): New constraint.
+	(Ung): Likewise.
+	* config/aarch64/predicates.md (aarch64_memtag_tag_offset):
+	Refactor it.
+	(aarch64_granule16_imm6): Rename from aarch64_granule16_uimm6 and
+	refactor it.
+	(aarch64_granule16_memory_operand): New constraint.
+	* config/aarch64/iterators.md (MTE_PP): New code iterator to be
+	used for mte instructions.
+	(stg_ops): New code attributes.
+	(st2g_ops): Likewise.
+	(mte_name): Likewise.
+	* config/aarch64/aarch64.opt (aarch64-tag-memory-loop-threshold):
+	New parameter.
+	* doc/invoke.texi: Update documentation.
+
+2025-12-16  Claudiu Zissulescu  <claudiu.zissulescu-ianculescu@oracle.com>
+	    Indu Bhagat  <indu.bhagat@oracle.com>
+
+	* asan.cc (handle_builtin_stack_restore): Accommodate MEMTAG
+	sanitizer.
+	(handle_builtin_alloca): Expand differently if MEMTAG sanitizer.
+	(get_mem_refs_of_builtin_call): Include MEMTAG along with
+	HWASAN.
+	(memtag_sanitize_stack_p): New definition.
+	(memtag_sanitize_allocas_p): Likewise.
+	(memtag_memintrin): Likewise.
+	(hwassist_sanitize_p): Likewise.
+	(hwassist_sanitize_stack_p): Likewise.
+	(report_error_func): Include MEMTAG along with HWASAN.
+	(build_check_stmt): Likewise.
+	(instrument_derefs): MEMTAG too does not deal with globals yet.
+	(instrument_builtin_call): Include MEMTAG along with HWASAN.
+	(maybe_instrument_call): Likewise.
+	(asan_expand_mark_ifn): Likewise.
+	(asan_expand_check_ifn): Likewise.
+	(asan_expand_poison_ifn): Expand differently if MEMTAG sanitizer.
+	(asan_instrument): Include MEMTAG along with HWASAN.
+	(hwasan_emit_prologue): Expand differently if MEMTAG sanitizer.
+	(hwasan_emit_untag_frame): Likewise.
+	* asan.h (memtag_sanitize_stack_p): New declaration.
+	(memtag_sanitize_allocas_p): Likewise.
+	(hwassist_sanitize_p): Likewise.
+	(hwassist_sanitize_stack_p): Likewise.
+	(asan_sanitize_use_after_scope): Include MEMTAG along with
+	HWASAN.
+	* cfgexpand.cc (align_local_variable): Likewise.
+	(expand_one_stack_var_at): Likewise.
+	(expand_stack_vars): Likewise.
+	(expand_one_stack_var_1): Likewise.
+	(init_vars_expansion): Likewise.
+	(expand_used_vars): Likewise.
+	(pass_expand::execute): Likewise.
+	* gimplify.cc (asan_poison_variable): Likewise.
+	* internal-fn.cc (expand_HWASAN_ALLOCA_POISON): New definition.
+	(expand_HWASAN_ALLOCA_UNPOISON): Expand differently if MEMTAG
+	sanitizer.
+	(expand_HWASAN_MARK): Likewise.
+	* internal-fn.def (HWASAN_ALLOCA_POISON): Define new.
+	* params.opt: Document new param.
+	* sanopt.cc (pass_sanopt::execute): Include MEMTAG along with
+	HWASAN.
+	* gcc.cc (sanitize_spec_function): Add check for memtag-stack.
+	* doc/tm.texi: Regenerate.
+	* target.def (extract_tag): Update documentation.
+	(add_tag): Likewise.
+	(insert_random_tag): Likewise.
+
+2025-12-16  Indu Bhagat  <indu.bhagat@oracle.com>
+	    Claudiu Zissulescu  <claudiu.zissulescu-ianculescu@oracle.com>
+
+	* builtins.def: Adjust the macro to include the new
+	SANTIZIE_MEMTAG_STACK.
+	* flag-types.h (enum sanitize_code): Add new enumerator for
+	SANITIZE_MEMTAG and SANITIZE_MEMTAG_STACK.
+	* opts.cc (finish_options): memtag-stack sanitizer conflicts with
+	hwaddress and address sanitizers.
+	(sanitizer_opts): Add new memtag-stack sanitizer.
+	(parse_sanitizer_options): memtag-stack sanitizer cannot recover.
+	* params.opt: Add new params for memtag-stack sanitizer.
+	* doc/invoke.texi: Update documentation.
+
+2025-12-16  Claudiu Zissulescu  <claudiu.zissulescu-ianculescu@oracle.com>
+
+	* target-insns.def (compose_tag): New target instruction.
+	* doc/md.texi (compose_tag): Add documentation.
+
+2025-12-16  Claudiu Zissulescu  <claudiu.zissulescu-ianculescu@oracle.com>
+
+	* target-insns.def (tag_memory): New target instruction.
+	* doc/md.texi (tag_memory): Add documentation.
+
+2025-12-16  Jennifer Schmitz  <jschmitz@nvidia.com>
+
+	* config/aarch64/aarch64.md: Include olympus.md.
+	* config/aarch64/olympus.md: New file.
+	* config/aarch64/tuning_models/olympus.h: Add dispatch
+	constraints and enable dispatch scheduling.
+
+2025-12-16  Maxim Kuvyrkov  <maxim.kuvyrkov@linaro.org>
+
+	* haifa-sched.cc (choose_ready): Don't require dfa_lookahead <= 0
+	to schedule SCHED_GROUP_P insns first.
+
+2025-12-16  Richard Biener  <rguenther@suse.de>
+
+	PR ipa/122456
+	* cgraph.cc (cgraph_edge::resolve_speculation): Handle
+	a NULL symtab_node::get (callee_decl).
+
+2025-12-16  Andrew Pinski  <andrew.pinski@oss.qualcomm.com>
+
+	PR tree-optimization/123110
+	* tree-cfgcleanup.cc (maybe_remove_forwarder_block): Add back
+	check for eh landing pad or non-local dest on the dest.
+
+2025-12-16  Andrew Pinski  <andrew.pinski@oss.qualcomm.com>
+
+	PR tree-optimization/123111
+	* tree-cfg.cc (ifconvertable_edge): New function.
+	(make_forwarders_with_degenerate_phis):	Add skip_ifcvtable argument,
+	check ifconvertable_edge if skip_ifcvtable is true.
+	* tree-cfg.h (make_forwarders_with_degenerate_phis): New argument
+	with default of false.
+	* tree-cfgcleanup.cc (execute_cleanup_cfg_post_optimizing): Update
+	argument to make_forwarders_with_degenerate_phis.
+
 2025-12-15  Martin Jambor  <mjambor@suse.cz>
 
 	PR ipa/107666
diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP
index dc4c16cb4cb8..f9e8e911bab6 100644
--- a/gcc/DATESTAMP
+++ b/gcc/DATESTAMP
@@ -1 +1 @@
-20251216
+20251217
diff --git a/gcc/algol68/ChangeLog b/gcc/algol68/ChangeLog
index 4444b1219a1f..b7640b9e702d 100644
--- a/gcc/algol68/ChangeLog
+++ b/gcc/algol68/ChangeLog
@@ -1,3 +1,43 @@
+2025-12-16  Jose E. Marchesi  <jose.marchesi@oracle.com>
+
+	* a68-parser-bottom-up.cc (reduce_prelude_packet): Do not support
+	multiple module definitions per packet.
+
+2025-12-16  Jose E. Marchesi  <jose.marchesi@oracle.com>
+
+	* lang.opt.urls: Regenerate.
+
+2025-12-16  Jose E. Marchesi  <jose.marchesi@oracle.com>
+
+	* lang.opt (-fmodules-map): New option.
+	(-fmodules-map-file): Likewise.
+	* a68.h: Add prototype for a68_process_module_map.
+	* a68-imports.cc (SKIP_WHITESPACES): Define.
+	(PARSE_BASENAME): Likewise.
+	(PARSE_INDICANT): Likewise.
+	(a68_process_module_map): New function.
+	* a68-lang.cc: (a68_init): Move initialization of
+	A68_MODULE_FILES from there...
+	(a68_init_options): to here.
+	(a68_handle_option): Handle OPT_fmodules_map and
+	OPT_fmodules_map_.
+	* a68-parser-pragmat.cc (handle_access_in_pragmat): Normalize
+	module indicants to upper case.
+	* ga68.texi (Module search options): New section.
+
+2025-12-16  Jose E. Marchesi  <jose.marchesi@oracle.com>
+
+	* a68.h: Prototypes for a68_get_file_size and a68_file_read.
+	* a68-parser-scanner.cc (a68_file_size): New function.
+	(a68_file_read): Renamed from io_read.
+	(get_source_size): Deleted function.
+	(include_files): Use a68_file_size and a68_file_read.
+
+2025-12-16  Mohammad-Reza Nabipoor  <mnabipoor@gnu.org>
+
+	* a68-imports.cc (dump_encoded_mode): Replace "basic" with
+	"string".
+
 2025-12-15  Mohammad-Reza Nabipoor  <mnabipoor@gnu.org>
 
 	* ga68-exports.pk (ga68_text_reloc_64): Renamed and
diff --git a/gcc/analyzer/ChangeLog b/gcc/analyzer/ChangeLog
index 08d73549f8e9..ceaebdcf0184 100644
--- a/gcc/analyzer/ChangeLog
+++ b/gcc/analyzer/ChangeLog
@@ -1,3 +1,42 @@
+2025-12-16  David Malcolm  <dmalcolm@redhat.com>
+
+	PR analyzer/123136
+	* engine.cc
+	(strongly_connected_components::strongly_connected_components):
+	Consistently use size_t.
+	(strongly_connected_components::dump): Likewise.
+	(strongly_connected_components::to_json): Likewise.
+	(exploded_graph::print_bar_charts): Likewise.
+	(exploded_path::feasible_p): Remove unused locals.
+	(exploded_graph_annotator::exploded_graph_annotator): Use size_t
+	for iterator var.
+	(impl_run_checkers): Drop logger param of engine ctor.
+	* ops.cc (phis_for_edge_op::maybe_make): Drop unused param of
+	phis_for_edge_op ctor.
+	(phis_for_edge_op::phis_for_edge_op): Likewise.
+	* ops.h (operation::~operation): Make virtual.
+	(control_flow_op::dyn_cast_control_flow_op): Add "final override".
+	(phis_for_edge_op::phis_for_edge_op): Drop unused param.
+	(phis_for_edge_op::m_cfg_in_edge): Drop unused field.
+	* region-model.cc (engine::engine): Drop unused "logger" param.
+	* region-model.h (engine::engine): Likewise.
+	* supergraph-fixup-locations.cc (location_fixer::location_fixer):
+	Drop m_sg field.
+	(location_fixer::m_sg): Drop unused field.
+	(location_fixer::m_purge_map): Drop unused field.
+	* supergraph-sorting.cc (class sorting_worklist): Drop unused
+	m_worklist field.
+
+2025-12-16  David Malcolm  <dmalcolm@redhat.com>
+
+	* supergraph.cc (supernode::dump_dot): Escape filename.
+
+2025-12-16  David Malcolm  <dmalcolm@redhat.com>
+
+	PR analyzer/122003
+	* checker-event.cc (return_event::get_program_state): New.
+	* checker-event.h (return_event::get_program_state): New decl.
+
 2025-12-15  David Malcolm  <dmalcolm@redhat.com>
 
 	PR analyzer/123085
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 8dd96a70dfdb..4dd919bdc240 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,96 @@
+2025-12-16  Jose E. Marchesi  <jose.marchesi@oracle.com>
+
+	PR algol68/123131
+	* algol68/compile/modules/compile.exp: Pass module include path
+	via extra_flags to algol68-dg-runtest.
+	* algol68/execute/modules/execute.exp: Pass module include path
+	via algol68_compile_args.
+	* lib/algol68-dg.exp (MODULES_OPTIONS): Delete.
+	(algol68-dg-runtest): Do not use MODULE_OPTIONS.
+	* lib/algol68-torture.exp (BUILT_MODULES_DIR): Delete.
+	(algol68-torture-execute): Do not use BUILT_MODULES_DIR.
+
+2025-12-16  David Malcolm  <dmalcolm@redhat.com>
+
+	PR diagnostics/123142
+	* gcc.dg/plugin/diagnostic-test-graphs-html.c: Add
+	dg-require-dot directive.
+
+2025-12-16  Jose E. Marchesi  <jose.marchesi@oracle.com>
+
+	* algol68/compile/error-compile-unknown-tag-1.a68: Use a single
+	module per packet.
+	* algol68/compile/error-module-coercions-1.a68: Likewise.
+	* algol68/compile/error-module-ranges-1.a68: Likewise.
+	* algol68/compile/module-2.a68: Likewise.
+	* algol68/compile/module-pub-mangling-1.a68: Likewise.
+	* algol68/compile/module-pub-mangling-2.a68: Likewise.
+	* algol68/compile/module-pub-mangling-3.a68: Likewise.
+	* algol68/compile/module-pub-mangling-4.a68: Likewise.
+	* algol68/compile/module-pub-mangling-5.a68: Likewise.
+	* algol68/compile/module-pub-mangling-6.a68: Likewise.
+	* algol68/compile/warning-module-hidding-1.a68: Likewise.
+
+2025-12-16  Jose E. Marchesi  <jose.marchesi@oracle.com>
+
+	* algol68/execute/modules/Modules20.map: New file.
+	* algol68/execute/modules/module-bar.a68: New file.
+	* algol68/execute/modules/module-foo.a68: New file.
+	* algol68/execute/modules/program-19.a68: New file.
+	* algol68/execute/modules/program-20.a68: New file.
+
+2025-12-16  Richard Biener  <rguenther@suse.de>
+
+	PR testsuite/123137
+	* g++.dg/vect/pr64410.cc: Add -mfpmath=sse -msse on x86.
+
+2025-12-16  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+	* gcc.target/i386/shift-gf2p8affine-2.c: Skip on Solaris
+	without gas.
+
+2025-12-16  Claudiu Zissulescu  <claudiu.zissulescu-ianculescu@oracle.com>
+	    Indu Bhagat  <indu.bhagat@oracle.com>
+
+	* gcc.target/aarch64/memtag/alloca-1.c: New test.
+	* gcc.target/aarch64/memtag/alloca-2.c: New test.
+	* gcc.target/aarch64/memtag/alloca-3.c: New test.
+	* gcc.target/aarch64/memtag/arguments-1.c: New test.
+	* gcc.target/aarch64/memtag/arguments-2.c: New test.
+	* gcc.target/aarch64/memtag/arguments-3.c: New test.
+	* gcc.target/aarch64/memtag/arguments-4.c: New test.
+	* gcc.target/aarch64/memtag/arguments.c: New test.
+	* gcc.target/aarch64/memtag/basic-1.c: New test.
+	* gcc.target/aarch64/memtag/basic-3.c: New test.
+	* gcc.target/aarch64/memtag/basic-struct.c: New test.
+	* gcc.target/aarch64/memtag/large-array.c: New test.
+	* gcc.target/aarch64/memtag/local-no-escape.c: New test.
+	* gcc.target/aarch64/memtag/memtag.exp: New file.
+	* gcc.target/aarch64/memtag/no-sanitize-attribute.c: New test.
+	* gcc.target/aarch64/memtag/value-init.c: New test.
+	* gcc.target/aarch64/memtag/vararray-gimple.c: New test.
+	* gcc.target/aarch64/memtag/vararray.c: New test.
+	* gcc.target/aarch64/memtag/zero-init.c: New test.
+	* gcc.target/aarch64/memtag/texec-1.c: New test.
+	* gcc.target/aarch64/memtag/texec-2.c: New test.
+	* gcc.target/aarch64/memtag/texec-3.c: New test.
+	* gcc.target/aarch64/memtag/vla-1.c: New test.
+	* gcc.target/aarch64/memtag/vla-2.c: New test.
+	* lib/target-supports.exp (check_effective_target_aarch64_mte):
+	New function.
+	* gcc.target/aarch64/memtag/cfi-mte-memtag-frame-1.c: New file.
+	* gcc.target/aarch64/memtag/mte-sig.h: New file.
+
+2025-12-16  Claudiu Zissulescu  <claudiu.zissulescu-ianculescu@oracle.com>
+	    Indu Bhagat  <indu.bhagat@oracle.com>
+
+	* gcc.target/aarch64/acle/memtag_1.c: Update test.
+
+2025-12-16  Andrew Pinski  <andrew.pinski@oss.qualcomm.com>
+
+	PR tree-optimization/123110
+	* gcc.dg/pr123110-1.c: New test.
+
 2025-12-15  Martin Jambor  <mjambor@suse.cz>
 
 	* gcc.dg/lto/fnptr-from-rec-1_0.c: New test.
diff --git a/libga68/ChangeLog b/libga68/ChangeLog
index b1fd5d6a487a..129bbeb1943a 100644
--- a/libga68/ChangeLog
+++ b/libga68/ChangeLog
@@ -1,3 +1,8 @@
+2025-12-16  Pietro Monteiro  <pietro@sociotechnical.xyz>
+
+	* ga68-unistr.c (_libga68_u32_cmp): Add `static' specifier.
+	* ga68.h (_libga68_u32_cmp): Remove prototype.
+
 2025-11-30  Jose E. Marchesi  <jose.marchesi@oracle.com>
 
 	* Makefile.am: New file.
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 9d123c647a5e..504345dd38c2 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,89 @@
+2025-12-16  Jonathan Wakely  <jwakely@redhat.com>
+
+	* include/std/type_traits (_Integer_kind): New enum type.
+	(__is_integral_helper::_S_kind): New static data member in
+	primary template and each explicit specialization.
+	(__is_signed_integer, __is_unsigned_integer): Use _S_kind
+	instead of O(n) disjunction with is_same.
+
+2025-12-16  Jonathan Wakely  <jwakely@redhat.com>
+
+	PR libstdc++/122907
+	* include/bits/cpp_type_traits.h (__memcpyable_integer<bool>):
+	Define as false.
+	* testsuite/25_algorithms/copy/122907.cc: New test.
+
+2025-12-16  Jonathan Wakely  <jwakely@redhat.com>
+
+	* testsuite/lib/libstdc++.exp (dg-v3-runtest) Set default_std to
+	20.
+
+2025-12-16  Jonathan Wakely  <jwakely@redhat.com>
+
+	* include/std/chrono (chrono::__detail::__get_leap_second_info):
+	Update expiry date for leap seconds list.
+	* src/c++20/tzdb.cc (tzdb_list::_Node::_S_read_leap_seconds):
+	Likewise.
+	* src/c++20/tzdata.zi: Import new file from 2025c release.
+
+2025-12-16  Nathan Myers  <ncm@cantrip.org>
+
+	PR libstdc++/119739
+	* include/bits/random.tcc: Add generate_canonical impl for C++26.
+	* testsuite/26_numerics/random/uniform_real_distribution/operators/64351.cc:
+	Adapt test for both pre- and post- C++26.
+	* testsuite/26_numerics/random/uniform_real_distribution/operators/gencanon.cc:
+	Test for float and double from 32-bit RNG, including 1.0 do-over.
+
+2025-12-16  Patrick Palka  <ppalka@redhat.com>
+
+	PR libstdc++/113299
+	* include/bits/deque.tcc (__copy_move_a1): Constrain with
+	__is_any_random_access_iter instead of __is_random_access_iter.
+	(__copy_move_backward_a1): Likewise.
+	(__equal_aux1): Likewise.
+	* include/bits/stl_algo.h (__search_n): Use
+	__iter_concept_or_category instead of __iterator_category
+	or iterator_traits::iterator_category.
+	(find_end): Likewise.
+	(__is_permutation): Likewise.
+	(for_each_n): Likewise.
+	(unique_copy): Likewise, for constant iterators.
+	(sample): Likewise, for constant iterators.
+	* include/bits/stl_algobase.h (__copy_move_a1): Adjust
+	deque-based forward declaration accordingly.
+	(__copy_move_backward_a1): Likewise.
+	(__equal_aux1): Likewise.
+	(__lexicographical_compare_impl): Use
+	__iter_concept_or_category instead of __iterator_category or
+	iterator_traits::iterator_category.
+	(__equal4): Likewise.
+	* include/bits/stl_iterator_base_funcs.h
+	(__iter_concept_or_category): New.
+	(__is_any_random_access_iter): New.
+	(_GLIBCXX_ITER_MOVE): New.
+	* include/bits/stl_uninitialized.h (uninitialized_copy_n):
+	Use __iterator_concept_or_category instead of
+	__iterator_category for the constant iterator __first.
+	(__uninitialized_copy_n_pair): Likewise.
+	* include/bits/version.def (algorithm_iterator_requirements):
+	Define.
+	* include/bits/version.h: Regenerate.
+	* include/std/algorithm: Provide the FTM
+	__cpp_lib_algorithm_iterator_requirements.
+	* include/std/memory: Likewise.
+	* include/std/numeric: Likewise.  Include
+	<bits/stl_iterator_base_funcs.h>.
+	(reduce): Use __is_any_random_access_iter instead of
+	__is_random_access_iter.
+	(transform_reduce): Likewise.
+	(inclusive_scan): Use _GLIBCXX_ITER_MOVE instead of std::move.
+	* testsuite/25_algorithms/find_end/c++20_iter.cc: New test.
+	* testsuite/25_algorithms/sample/c++20_iter.cc: New test.
+	* testsuite/25_algorithms/search_n/c++20_iter.cc: New test.
+	* testsuite/25_algorithms/unique_copy/c++20_iter.cc: New test.
+	* testsuite/26_numerics/inclusive_scan/c++20_iter.cc: New test.
+
 2025-12-12  Luc Grosheintz  <luc.grosheintz@gmail.com>
 
 	* include/std/mdspan (submdspan): Fix missing '::template'.
diff --git a/maintainer-scripts/ChangeLog b/maintainer-scripts/ChangeLog
index dbbe1db5c14d..a6ee65436be7 100644
--- a/maintainer-scripts/ChangeLog
+++ b/maintainer-scripts/ChangeLog
@@ -1,3 +1,7 @@
+2025-12-16  Pietro Monteiro  <pietro@sociotechnical.xyz>
+
+	* update_web_docs_git (MANUALS): Add ga68 and ga68-internals.
+
 2025-09-01  Gerald Pfeifer  <gerald@pfeifer.com>
 
 	* update_web_docs_libstdcxx_git: Copy our "inner" documentation


More information about the Gcc-cvs mailing list