https://gcc.gnu.org/g:36e4ffe36eebd790106117dd7046cfb077774fae

commit r17-369-g36e4ffe36eebd790106117dd7046cfb077774fae
Author: GCC Administrator <[email protected]>
Date:   Thu May 7 00:16:25 2026 +0000

    Daily bump.

Diff:
---
 gcc/ChangeLog           | 150 +++++++++++++++++++++++++++
 gcc/DATESTAMP           |   2 +-
 gcc/analyzer/ChangeLog  | 262 ++++++++++++++++++++++++++++++++++++++++++++++++
 gcc/c/ChangeLog         |   7 ++
 gcc/cp/ChangeLog        |   9 ++
 gcc/testsuite/ChangeLog |  59 +++++++++++
 libgfortran/ChangeLog   |   9 ++
 libstdc++-v3/ChangeLog  |  78 ++++++++++++++
 8 files changed, 575 insertions(+), 1 deletion(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 0ead28c8e988..43fbd776157f 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,153 @@
+2026-05-06  Jason Merrill  <[email protected]>
+
+       * Makefile.in (TAGS): Add diagnostics/ and text-art/.
+
+2026-05-06  David Malcolm  <[email protected]>
+
+       * range-op-float.cc (fop_unordered): Make static and const.
+       (fop_ordered): Likewise.
+       (fop_unordered_lt): Likewise.
+       (fop_unordered_le): Likewise.
+       (fop_unordered_gt): Likewise.
+       (fop_unordered_ge): Likewise.
+       (fop_unordered_equal): Likewise.
+       (fop_ltgt): Likewise.
+       (fop_div): Likewise.
+       * range-op-ptr.cc (op_pointer_plus): Likewise.
+       (op_pointer_diff): Likewise.
+       * range-op.cc (op_equal): Likewise.
+       (op_not_equal): Likewise.
+       (op_lt): Likewise.
+       (op_le): Likewise.
+       (op_gt): Likewise.
+       (op_ge): Likewise.
+       (op_ident): Likewise.
+       (op_cst): Likewise.
+       (op_cast): Likewise.
+       (op_view): Likewise.
+       (op_plus): Likewise.
+       (op_abs): Likewise.
+       (op_minus): Likewise.
+       (op_negate): Likewise.
+       (op_mult): Likewise.
+       (op_addr): Likewise.
+       (op_bitwise_not): Likewise.
+       (op_bitwise_xor): Likewise.
+       (op_bitwise_and): Likewise.
+       (op_bitwise_or): Likewise.
+       (op_min): Likewise.
+       (op_max): Likewise.
+       (operator_table): Make static.  Fix typo in comment.
+       (range_op_handler::range_op_handler): Fix typo in leading comment.
+       (range_op_handler::range_op): Make returned ptr const.  Use
+       nullptr.
+       (RO_III): Make static.
+       (RO_IFI): Likewise.
+       (RO_IFF): Likewise.
+       (RO_FFF): Likewise.
+       (RO_FIF): Likewise.
+       (RO_FII): Likewise.
+       (RO_PPP): Likewise.
+       (RO_PPI): Likewise.
+       (RO_IPP): Likewise.
+       (RO_IPI): Likewise.
+       (RO_PIP): Likewise.
+       (RO_PII): Likewise.
+       (op_trunc_div): Make const.
+       (op_floor_div): Likewise.
+       (op_round_div): Likewise.
+       (op_ceil_div): Likewise.
+       * range-op.h (range_op_handler::range_op): Make returned ptr
+       const.
+       (range_op_handler::m_operator): Make const.
+       (range_op_table::operator[]): Make const.  Make returned ptr
+       const.
+       (range_op_table::set): Make range_operator const.
+       (range_op_table::m_range_tree): Make ptrs const.
+
+2026-05-06  David Malcolm  <[email protected]>
+
+       * value-range.cc (value_range::print): New, based on
+       value_range::dump.
+       * value-range.h (value_range::print): New decl.
+
+2026-05-06  David Malcolm  <[email protected]>
+
+       * value-range.h: Remove stray slash in comment.
+
+2026-05-06  David Malcolm  <[email protected]>
+
+       * Makefile.in (ANALYZER_OBJS): Add analyzer/state-transition.o.
+       * digraph.cc (test_path::append_edge): New.
+       (test_path::reverse): New.
+       * shortest-paths.h (get_shortest_path): Use append_edge and
+       reverse.
+       * tree-diagnostic.h
+       (tree_dump_pretty_printer::~tree_dump_pretty_printer): Only flush
+       when the buffer's stream is non-null.
+
+2026-05-06  Andrew MacLeod  <[email protected]>
+
+       * value-range-storage.cc (prange_storage::alloc): Use prange_format.
+       (prange_storage::prange_storage): Likewise.
+       (prange_format::prange_format): New.
+       (prange_storage::set_prange): Use prange_foramt and only write
+       required words to storage.
+       (prange_storage::get_prange): Only read required words.
+       (prange_storage::equal_p): Adjust for new enum.
+       (prange_storage::fits_p): Use prange_format to determine size.
+       * value-range-storage.h (enum prange_kind): New.
+       (class prange_format): New.
+       (get_low, get_high, get_value, get_mask): Replace with get_word.
+       (set_low, set_high, set_value, set_mask): Replace with set_word.
+       (get_word): New.
+       (set_word): New.
+
+2026-05-06  Andrew MacLeod  <[email protected]>
+
+       * gimple-fold.cc (get_maxval_strlen): Return the same value if
+       passed a constant.
+
+2026-05-06  Zhongyao Chen  <[email protected]>
+
+       PR target/122558
+       * config/riscv/riscv-vector-costs.cc (get_lmul_cost_scaling):
+       New function to calculate multiplicative scaling factors.
+       (costs::adjust_stmt_cost): Apply LMUL scaling uniformly to all
+       vector statements.
+
+2026-05-06  Lulu Cheng  <[email protected]>
+
+       * config/loongarch/loongarch.cc (loongarch_rtx_costs): Add
+       RTX cost handling for the ORDERED RTX code.
+
+2026-05-06  Lulu Cheng  <[email protected]>
+
+       PR target/125057
+       * config/loongarch/loongarch.cc
+       (loongarch_split_vector_move): Complete the split condition.
+       * config/loongarch/loongarch.h (LSX_REG_RTX_P): Delete.
+       (LASX_REG_RTX_P): Delete.
+       (GP_REG_RTX_P): Define macro.
+
+2026-05-06  Robin Dapp  <[email protected]>
+
+       * config/riscv/riscv-protos.h (whole_reg_to_reg_move_p):
+       Rename from this...
+       (whole_reg_move_p): ...to this.
+       (whole_reg_loadstore_p): Declare.
+       * config/riscv/riscv-v.cc (whole_reg_to_reg_move_p): Ditto.
+       (whole_reg_move_p): Ditto.
+       (whole_reg_loadstore_p): New function.
+       * config/riscv/thead-vector.md: Use renamed function.
+       * config/riscv/vector.md (@pred_store<mode>): Use new function.
+
+2026-05-06  Richard Biener  <[email protected]>
+
+       * config/i386/x86-tune.def (avx512_two_epilogues): Enable
+       for m_ZNVER6.
+       (avx512_masked_epilogues): Likewise.
+
 2026-05-05  H.J. Lu  <[email protected]>
 
        PR target/120587
diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP
index 3bc992c09c39..4700f4f5c2f7 100644
--- a/gcc/DATESTAMP
+++ b/gcc/DATESTAMP
@@ -1 +1 @@
-20260506
+20260507
diff --git a/gcc/analyzer/ChangeLog b/gcc/analyzer/ChangeLog
index 099b32ecf922..24ee876fce95 100644
--- a/gcc/analyzer/ChangeLog
+++ b/gcc/analyzer/ChangeLog
@@ -1,3 +1,265 @@
+2026-05-06  David Malcolm  <[email protected]>
+
+       * svalue.cc (svalue::make_dump_widget): Show value ranges in
+       svalue dumps.
+
+2026-05-06  David Malcolm  <[email protected]>
+
+       * analyzer-logging.h (class text_art::canvas): New forward decl.
+       (logger::log_canvas): New decl.
+       * diagnostic-manager.cc (path_builder::get_supergraph): New.
+       (logger::log_canvas): New.
+       (dump_to_logger): New.
+       (log_region_model): New.
+       (epath_rewind_context::epath_rewind_context): Add params
+       src_model and dst_model, using them to initialize m_src_model and
+       m_dst_model.
+       (epath_rewind_context::get_src_region_model): New.
+       (epath_rewind_context::get_dst_region_model): New.
+       (epath_rewind_context::m_src_model): New.
+       (epath_rewind_context::m_dst_model): New.
+       (make_raw_dst_region_model): New.
+       (diagnostic_manager::annotate_exploded_path): Walk EPATH forwards,
+       populating new vectors src_models and dst_models without state
+       purging or merging, so that we can reliably rewind state.  Pass
+       these models to epath_rewind_context when rewinding state.
+       * engine.cc (interprocedural_call::try_to_rewind_data_flow): Get
+       src and dst region_model instances via vfuncs of ctxt, rather than
+       accessing the eedge.
+       * ops.cc (rewind_context::on_data_origin): Get src and dst
+       region_model instances via vfuncs of ctxt, rather than accessing
+       the eedge.
+       (greturn_op::try_to_rewind_data_flow): Likewise.
+       * ops.h (rewind_context::rewind_context): Drop param "eedge".
+       (rewind_context::get_src_region_model): New vfunc.
+       (rewind_context::get_dst_region_model): New vfunc.
+       (rewind_context::m_eedge): Drop field.
+
+2026-05-06  David Malcolm  <[email protected]>
+
+       * analyzer.cc (printable_expr_p): New.
+       * call-info.cc: Include "analyzer/state-transition.h".
+       (call_info::add_events_to_path): Add state_transition param.
+       * call-info.h (call_info::add_events_to_path): Likewise.
+       * callsite-expr.h: New file, based on material from supergraph.h.
+       (class callsite_expr_element): New.
+       * checker-event.cc: Include "analyzer/callsite-expr.h" and
+       "analyzer/state-transition.h".
+       (event_kind_to_string): Handle event_kind::state_transition.
+       (state_transition_event::print_desc): New.
+       (state_transition_event::prepare_for_emission): New.
+       (function_entry_event::function_entry_event): Drop.
+       (function_entry_event::print_desc): Use any m_state_trans.
+       (function_entry_event::prepare_for_emission): New.
+       (call_event::call_event): Add "state_trans" param and store it in
+       m_state_trans.
+       (call_event::print_desc): Use m_state_trans if present to call
+       describe_call_with_state, adding a fallback wording for
+       pending_diagnostic subclasses that don't implement it.
+       (call_event::prepare_for_emission): New, storing event id into
+       state_transition.
+       (return_event::return_event): Add "state_trans" param and store it
+       in m_state_trans.
+       (return_event::print_desc): Use m_state_trans if present to call
+       describe_return_of_state.
+       (return_event::prepare_for_emission): New, storing event id into
+       state_transition.
+       * checker-event.h (enum class event_kind): Add state_transition.
+       (class state_transition_event): New.
+       (function_entry_event::function_entry_event): Add "state_trans"
+       param and store it in m_state_trans.  Drop 2nd ctor.
+       (function_entry_event::prepare_for_emission): New decl.
+       (function_entry_event::get_state_transition_at_call): New.
+       (function_entry_event::m_state_trans): New.
+       (call_event::call_event): Add "state_trans" param.
+       (call_event::prepare_for_emission): New decl.
+       (call_event::get_state_transition_at_call): New.
+       (call_event::m_state_trans): New.
+       (return_event::return_event): Add "state_trans" param.
+       (return_event::prepare_for_emission): New decl.
+       (return_event::m_state_trans): New.
+       * common.h: Define INCLUDE_ALGORITHM.
+       (class state_transition): New forward decl
+       (class state_transition_at_call): New forward decl
+       (class state_transition_at_return): New forward decl
+       (printable_expr_p): New decl.
+       (struct diagnostic_state): New.
+       (struct rewind_context): New forward decl.
+       (custom_edge_info::add_events_to_path): Add "state_trans" param.
+       (try_to_rewind_data_flow): New vfunc.
+       * diagnostic-manager.cc (compatible_epath_p): Update for change
+       from m_edges to m_elements.
+       (diagnostic_manager::emit_saved_diagnostic):  Make "epath"
+       non-const.  Call annotate_exploded_path on it and log before and
+       after.  Update for new param to add_events_for_eedge.
+       (class epath_rewind_context): New.
+       (diagnostic_manager::annotate_exploded_path): New.
+       (diagnostic_manager::build_emission_path): Update for change from
+       m_edges to m_elements.  Pass any state transition to
+       add_events_for_eedge.
+       (diagnostic_manager::add_events_for_eedge): Add "state_trans"
+       parameter.  Pass it when creating events, and if we don't create
+       an event referencing it, make a state_transition_event for it.
+       (diagnostic_manager::prune_for_sm_diagnostic): Handl
+       event_kind::state_transition.
+       * diagnostic-manager.h (saved_diagnostic::get_best_epath): Drop
+       "const" from return value.
+       (diagnostic_manager::annotate_exploded_path): New decl.
+       (diagnostic_manager::add_events_for_eedge): Add "state_trans"
+       param.
+       * engine.cc: Include "pretty-print-markup.h".
+       (leak_ploc_fixer_for_epath::fixup_for_epath): Update for change
+       from m_edges to m_elements.
+       (throw_custom_edge::add_events_to_path): Add state_transition
+       param.
+       (unwind_custom_edge::add_events_to_path): Likewise.
+       (interprocedural_call::print): Use get_gcall.
+       (interprocedural_call::update_model): Likewise.
+       (interprocedural_call::add_events_to_path): Likewise.  Pass
+       state_transition if of correct subclass.
+       (interprocedural_call::try_to_rewind_data_flow): New.
+       (interprocedural_call::get_gcall): New.
+       (interprocedural_return::add_events_to_path): Add state_transition
+       param and pass if of correct subclass.
+       (interprocedural_return::try_to_rewind_data_flow): New.
+       (tainted_args_function_info::add_events_to_path): Add
+       state_transition param.
+       (tainted_args_call_info::add_events_to_path): Likewise.
+       * event-loc-info.h (event_loc_info_for_function_entry): New decl.
+       * exploded-graph.h (interprocedural_call::interprocedural_call):
+       Pass and store call_and_return_op rather than gcall.
+       (interprocedural_call::add_events_to_path): Add state_trans param.
+       (interprocedural_call::try_to_rewind_data_flow): New.
+       (interprocedural_call::m_call_stmt): Replace with...
+       (interprocedural_call::m_op): ...this.
+       (interprocedural_return::add_events_to_path): Add state_trans
+       param.
+       (interprocedural_return::try_to_rewind_data_flow): New.
+       (rewind_info_t::add_events_to_path): New.
+       * exploded-path.cc (exploded_path::exploded_path): Drop explicit
+       copy ctor.
+       (diagnostic_state::dump_to_pp): New.
+       (diagnostic_state::dump): New.
+       (exploded_path::find_stmt_backwards): Update for change from
+       m_edges to m_elements.
+       (exploded_path::get_final_enode): Likewise.
+       (exploded_path::feasible_p): Likewise.
+       (exploded_path::dump_to_pp): Likewise.  Dump state transitions.
+       (exploded_path::maybe_log): New.
+       (exploded_path::reverse): New.
+       * exploded-path.h: Include "analyzer/checker-event.h" and
+       "analyzer/state-transition.h".
+       (struct exploded_path::element_t): New.
+       (exploded_path::exploded_path): Replace ctors with "= default".
+       (exploded_path::length): Reimplement.
+       (exploded_path::maybe_log): New decl.
+       (exploded_path::append_edge): New.
+       (exploded_path::reverse): New.
+       (exploded_path::m_edges): Replace with...
+       (exploded_path::m_elements): ...this, using std::vector rather
+       than auto_vec.
+       * feasible-graph.cc (feasible_graph::make_epath): Update for
+       change from m_edges to m_elements.
+       * infinite-recursion.cc
+       (infinite_recursion_diagnostic::add_function_entry_event): Add
+       "state_trans" param and pass it to base class call.
+       (recursive_function_entry_event::recursive_function_entry_event):
+       Pass nullptr for state transition.
+       * ops.cc: Include "analyzer/callsite-expr.h" and
+       "analyzer/state-transition.h".
+       (event_loc_info_for_function_entry): New.
+       (rewind_context::on_data_origin): New.
+       (rewind_context::on_data_flow): New.
+       (gassign_op::try_to_rewind_data_flow): New.
+       (greturn_op::try_to_rewind_data_flow): New.
+       (call_and_return_op::execute): Update for change to
+       interprocedural_call.
+       (call_and_return_op::try_to_rewind_data_flow): New.
+       (phis_for_edge_op::try_to_rewind_data_flow): New.
+       * ops.h (struct rewind_context): New.
+       (operation::try_to_rewind_data_flow): New vfunc.
+       (gassign_op::try_to_rewind_data_flow): New.
+       (predict_op::try_to_rewind_data_flow): New.
+       (greturn_op::try_to_rewind_data_flow): New.
+       (call_and_return_op::try_to_rewind_data_flow): New.
+       (control_flow_op::try_to_rewind_data_flow): New.
+       (phis_for_edge_op::try_to_rewind_data_flow): New.
+       * pending-diagnostic.cc (interesting_t::add_read_region): New.
+       (interesting_t::dump_to_pp): Dump m_read_regions.
+       (pending_diagnostic::add_function_entry_event): Add "state_trans"
+       param and pass it to function_entry_event.  Call
+       event_loc_info_for_function_entry.
+       (pending_diagnostic::add_call_event): Add "state_trans" param and
+       pass it to call_event.
+       * pending-diagnostic.h: Include "analyzer/state-transition.h".
+       (struct interesting_t): Update leading comment.
+       (interesting_t::add_read_region): New.
+       (interesting_t::m_read_regions): New.
+       (struct origin_of_state): New.
+       (call_with_state::call_with_state): Add state_trans param and use
+       it to initialize m_state_trans and m_src_event_id.
+       (call_with_state::m_state_trans): New field.
+       (call_with_state::m_src_event_id): New field.
+       (return_of_state::return_of_state): Add state_trans param and use
+       it to initialize m_state_trans and m_src_event_id.
+       (return_of_state::m_state_trans): New field.
+       (return_of_state::m_src_event_id): New field.
+       (struct copy_of_state): New.
+       (struct use_of_state): New.
+       (pending_diagnostic::describe_origin_of_state): New vfunc.
+       (pending_diagnostic::describe_copy_of_state): New vfunc.
+       (pending_diagnostic::describe_use_of_state): New vfunc.
+       (pending_diagnostic::add_function_entry_event): Add "state_trans"
+       param.
+       (pending_diagnostic::add_call_event): Likewise.
+       * poisoned-value-diagnostic.cc
+       (poisoned_value_diagnostic::mark_interesting_stuff): Add call to
+       add_read_region.
+       * region-model.cc: Include "analyzer/state-transition.h".
+       (callsite_expr::maybe_get_param_location): New.
+       (callsite_expr::get_param_tree): New.
+       (div_by_zero_diagnostic::div_by_zero_diagnostic): Add
+       "divisor_reg" param and use it to initialize m_divisor_reg.
+       (div_by_zero_diagnostic::mark_interesting_stuff): New.
+       (div_by_zero_diagnostic::add_function_entry_event): New.
+       (div_by_zero_diagnostic::describe_origin_of_state): New.
+       (div_by_zero_diagnostic::describe_call_with_state): New.
+       (div_by_zero_diagnostic::describe_return_of_state): New.
+       (div_by_zero_diagnostic::describe_copy_of_state): New.
+       (div_by_zero_diagnostic::describe_use_of_state): New.
+       (div_by_zero_diagnostic::m_divisor_reg): New field.
+       (region_model::get_gassign_result): Pass region to calls to
+       make_shift_count_negative_diagnostic,
+       make_shift_count_overflow_diagnostic, and
+       div_by_zero_diagnostic.
+       (exception_thrown_from_unrecognized_call::add_events_to_path): Add
+       state_transition param.
+       * region-model.h (make_shift_count_negative_diagnostic): Add
+       "src_region" param.
+       (make_shift_count_overflow_diagnostic): Likewise.
+       * region.h: Include "analyzer/store.h" and
+       "text-art/tree-widget.h".
+       * setjmp-longjmp.cc (rewind_info_t::add_events_to_path): Add
+       state_transition param.
+       * shift-diagnostics.cc
+       (shift_count_negative_diagnostic::shift_count_negative_diagnostic):
+       Add src_region param and use it to initialize m_src_region.
+       (shift_count_negative_diagnostic::mark_interesting_stuff): New.
+       (shift_count_negative_diagnostic::m_src_region): New.
+       (make_shift_count_negative_diagnostic): Add src_region param.
+       (shift_count_overflow_diagnostic::shift_count_overflow_diagnostic):
+       Add src_region param and use it to initialize m_src_region.
+       (shift_count_overflow_diagnostic::mark_interesting_stuff): New.
+       (shift_count_overflow_diagnostic::m_src_region): New field.
+       (make_shift_count_overflow_diagnostic): Add src_region param.
+       * sm-signal.cc (signal_delivery_edge_info_t::add_events_to_path):
+       Add state_transition param.
+       * state-transition.cc: New file.
+       * state-transition.h: New file.
+       * supergraph.h (class callsite_expr): Move to callsite-expr.h.
+       * varargs.cc (va_arg_diagnostic::add_call_event): Add state_trans
+       param.
+
 2026-05-05  Jakub Jelinek  <[email protected]>
 
        * kf.cc (kf_strcasecmp::impl_call_post): Remove unused variable.
diff --git a/gcc/c/ChangeLog b/gcc/c/ChangeLog
index aaf983533439..16d99dd4ed88 100644
--- a/gcc/c/ChangeLog
+++ b/gcc/c/ChangeLog
@@ -1,3 +1,10 @@
+2026-05-06  Martin Uecker  <[email protected]>
+
+       PR c/124985
+       * c-decl.cc (pushtag): Update comment.
+       (declspecs_add_type): Mark TYPE_STUB_DECL as used.
+       * c-typeck.cc (function_to_pointer_conversion): Fix grammar in comment.
+
 2026-05-01  Martin Uecker  <[email protected]>
 
        PR c/124576
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index ee5795c7fe5a..64cd76833937 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,12 @@
+2026-05-06  Patrick Palka  <[email protected]>
+
+       PR c++/125179
+       * reflect.cc: (consteval_only_type_r): Remove this cp_walk_tree
+       callback and replace with ...
+       (consteval_only_walker): ... this recursive memoized
+       implementation.
+       (consteval_only_p): Define in terms of consteval_only_walker.
+
 2026-05-05  Patrick Palka  <[email protected]>
 
        PR c++/124957
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 9654d7692d41..3fff73c8423a 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,62 @@
+2026-05-06  Harald Anlauf  <[email protected]>
+
+       PR libfortran/125095
+       * gfortran.dg/namelist_102.f90: New test.
+
+2026-05-06  Martin Uecker  <[email protected]>
+
+       PR c/124985
+       * gcc.dg/Wreturn-nested-3.c: New test.
+       * gcc.dg/pr124985.c: New test.
+
+2026-05-06  David Malcolm  <[email protected]>
+
+       * gcc.dg/analyzer/divide-by-zero-4.c: Drop option.
+       -fno-analyzer-state-merge.
+       * gcc.dg/analyzer/divide-by-zero-5.c: Likewise.
+       * gcc.dg/analyzer/divide-by-zero-6.c: Likewise.
+
+2026-05-06  David Malcolm  <[email protected]>
+
+       * c-c++-common/analyzer/divide-by-zero-1.c: Add expected message
+       for origin of zero value.
+       * c-c++-common/analyzer/divide-by-zero-2.c: New test.
+       * c-c++-common/analyzer/divide-by-zero-3.c: New test.
+       * c-c++-common/analyzer/invalid-shift-1.c: Add expected messages
+       about call to op3 and about pertinent param of op3.
+       * c-c++-common/analyzer/invalid-shift-2.c: New test.
+       * c-c++-common/analyzer/invalid-shift-3.c: New test.
+       * c-c++-common/analyzer/invalid-shift-4.c: New test.
+       * g++.dg/analyzer/divide-by-zero-7.C: New test.
+       * gcc.dg/analyzer/divide-by-zero-4.c: New test.
+       * gcc.dg/analyzer/divide-by-zero-5.c: New test.
+       * gcc.dg/analyzer/divide-by-zero-6.c: New test.
+       * gcc.dg/analyzer/divide-by-zero-float.c: Add expected message
+       for origin of zero value.
+
+2026-05-06  Zhongyao Chen  <[email protected]>
+
+       PR target/122558
+       * gcc.target/riscv/rvv/autovec/pr122558.c: New test.
+       * gcc.target/riscv/rvv/autovec/dyn-lmul-conv-1.c: Update expected
+       dump counts after VLA LMUL cost scaling.
+       * gcc.target/riscv/rvv/autovec/dyn-lmul-conv-2.c: Likewise.
+       * gcc.target/riscv/rvv/autovec/partial/slp-16.c: Likewise.
+       * gcc.target/riscv/rvv/autovec/partial/slp-5.c: Likewise.
+       * gcc.dg/vect/costmodel/riscv/rvv/pr113112-4.c: Likewise.
+
+2026-05-06  Lulu Cheng  <[email protected]>
+
+       PR target/125057
+       * gcc.target/loongarch/vector/lasx/pr125057.c: New test.
+       * gcc.target/loongarch/vector/lsx/lsx-mov-2.c: New test.
+
+2026-05-06  Robin Dapp  <[email protected]>
+
+       * gcc.target/riscv/rvv/autovec/reduc/reduc_call-4.c: Disable
+       instruction scheduling.
+       * gcc.target/riscv/rvv/base/vle-vl1r.c: New test.
+
 2026-05-05  Iain Buclaw  <[email protected]>
 
        PR d/125089
diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog
index 4af531e07f95..85aa2dfc90a5 100644
--- a/libgfortran/ChangeLog
+++ b/libgfortran/ChangeLog
@@ -1,3 +1,12 @@
+2026-05-06  Harald Anlauf  <[email protected]>
+
+       PR libfortran/125095
+       * io/list_read.c (read_logical): Eat comments in namelist read mode.
+       (read_integer): Likewise.
+       (read_character): Likewise.
+       (read_complex): Likewise.
+       (read_real): Likewise.
+
 2026-05-05  Pietro Monteiro  <[email protected]>
 
        * Makefile.in: Regenerate.
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 41af9f518ebd..607f56d44b9e 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,81 @@
+2026-05-06  Jonathan Wakely  <[email protected]>
+
+       * include/bits/out_ptr.h (out_ptr_t::_Impl::~_Impl): Adjust
+       access to shared_ptr internals.
+       * include/bits/shared_ptr_base.h (_Sp_counted_deleter): Remove
+       _Impl class and replace _M_impl with the data members it
+       contained.
+       (_Sp_counted_ptr_inplace): Likewise.
+
+2026-05-06  Jonathan Wakely  <[email protected]>
+
+       * include/bits/shared_ptr_base.h (_Sp_ebo_helper): Simplify by
+       using [[__no_unique_address__]] instead of EBO. Use the
+       attribute unconditionally for the unstable ABI.
+       (_Sp_counted_deleter::_Impl): Adjust uses of _Sp_ebo_helper.
+       (_Sp_counted_ptr_inplace::_Impl): Likewise.
+       * include/std/tuple (_Head_base): Remove implementation for
+       compilers that don't support [[__no_unique_address__]]. Use the
+       attribute unconditionally for the unstable ABI.
+
+2026-05-06  Tomasz Kamiński  <[email protected]>
+
+       * include/std/format (range_formatter::format): Format all
+       contiguous ranges as span<__format::__maybe_const<_Tp, _CharT>>.
+
+2026-05-06  Jonathan Wakely  <[email protected]>
+
+       * include/bits/shared_ptr.h (_UnboundedArray, _BoundedArray)
+       (_NotUnboundedArray): Remove fallback definition for C++20
+       compilers that don't define __cpp_concepts.
+       * include/bits/shared_ptr_base.h (_Sp_counted_ptr_inplace):
+       Remove fallback declaration of _Sp_overwrite_tag partial
+       specialization.
+
+2026-05-06  Tomasz Kamiński  <[email protected]>
+
+       PR libstdc++/119126
+       * include/bits/funcwrap.h : (__polyfunc::__invoker_of):
+       Updated to use _Invoker::_Signature and mark as constexpr.
+       (__polyfunc::_base_of): Mark as constexpr.
+       (__std:::__is_function_ref_v, __polyfunc::_Ref_base)
+       (__polyfunc::__is_funcref_assignable): Define.
+       * include/bits/funcref_impl.h (std::function_ref): Add base class
+       of type__polyfunc::_Ref_base. Befriend __invoker_of, __base_of,
+       __is_invoker_convertible, __is_invoker_convertible.
+       (function_ref::_Base): Define.
+       (function_ref::_M_init, function_ref::_M_ptrs): Move to base class.
+       (function_ref::function_ref(_Fn&&), function_ref::operator=): Handle
+       specializations of function_ref with compatible signatures.
+       (function_ref::function_ref): Init base class before _M_invoke
+       consistently, and remove setting of _M_nullptr.
+       * include/bits/cpyfunc_impl.h (copyable_function): Udpdated friend
+       declarations.
+       (copyable_function::_Signature): Remove.
+       * include/bits/mofunc_impl.h (move_only_function): Udpdated friend
+       declarations.
+       (move_only_function::_Signature): Remove.
+       * include/bits/version.def (function_ref): Bump to 202604.
+       * include/bits/version.h: Regnerate.
+       * testsuite/20_util/function_ref/cons.cc: Updated checked FTM value.
+       * testsuite/20_util/function_ref/conv.cc: Updated test to illustrate
+       that double indirection is avoided.
+       * testsuite/20_util/function_ref/dangling.cc: Test for initializing
+       from function_ref with compatible signature.
+       * testsuite/20_util/function_ref/dangling_neg.cc: Test for
+       initializing from function_ref with incompatible signature.
+
+2026-05-06  Jonathan Wakely  <[email protected]>
+
+       * src/c++20/atomic.cc (__waitable_state::_S_align): Remove.
+       (__waitable_state::_M_waiters, __waitable_state::_M_ver): Use
+       std::hardware_destructive_interference_size for alignment.
+
+2026-05-06  Jonathan Wakely  <[email protected]>
+
+       PR libstdc++/97001
+       * include/bits/range_access.h: Improve Doxygen comments.
+
 2026-05-05  Jonathan Wakely  <[email protected]>
 
        PR libstdc++/124657

Reply via email to