[gcc r17-187] Daily bump.
GCC Administrator
gccadmin@gcc.gnu.org
Wed Apr 29 00:17:05 GMT 2026
https://gcc.gnu.org/g:fccea8edc376af8f2447b91a8aea25478c26dde1
commit r17-187-gfccea8edc376af8f2447b91a8aea25478c26dde1
Author: GCC Administrator <gccadmin@gcc.gnu.org>
Date: Wed Apr 29 00:16:40 2026 +0000
Daily bump.
Diff:
---
ChangeLog | 4 +
gcc/ChangeLog | 390 ++++++++++++++++++++++++++++++++++++++++++++++++
gcc/DATESTAMP | 2 +-
gcc/analyzer/ChangeLog | 263 ++++++++++++++++++++++++++++++++
gcc/c-family/ChangeLog | 10 ++
gcc/c/ChangeLog | 6 +
gcc/cp/ChangeLog | 19 +++
gcc/testsuite/ChangeLog | 252 +++++++++++++++++++++++++++++++
libgomp/ChangeLog | 5 +
libsanitizer/ChangeLog | 4 +
libstdc++-v3/ChangeLog | 23 +++
11 files changed, 977 insertions(+), 1 deletion(-)
diff --git a/ChangeLog b/ChangeLog
index 4069580a5294..6e67c1dc4e8e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2026-04-28 Bohan Lei <garthlei@linux.alibaba.com>
+
+ * MAINTAINERS: Add myself to write after approval and DCO.
+
2026-04-01 David Faust <david.faust@oracle.com>
* MAINTAINERS: Add my bugzilla account.
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 12bb46f01091..8ec41237655d 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,393 @@
+2026-04-28 David Malcolm <dmalcolm@redhat.com>
+
+ PR analyzer/124217
+ * doc/invoke.texi: Add -Wanalyzer-div-by-zero.
+
+2026-04-28 David Malcolm <dmalcolm@redhat.com>
+
+ * Makefile.in (ANALYZER_OBJS): Add analyzer/exploded-path.o.
+
+2026-04-28 David Malcolm <dmalcolm@redhat.com>
+
+ * Makefile.in (ANALYZER_OBJS): Add analyzer/setjmp-longjmp.o.
+
+2026-04-28 David Malcolm <dmalcolm@redhat.com>
+
+ * Makefile.in (ANALYZER_OBJS): Add
+ analyzer/poisoned-value-diagnostic.o,
+ analyzer/shift-diagnostics.o, and
+ analyzer/write-to-const-diagnostics.o.
+
+2026-04-28 Tomás Ortín Fernández <quanrong@mailbox.org>
+
+ PR analyzer/105890
+ * doc/invoke.texi: Rename -Wanalyzer-mkstemp-missing-suffix to
+ -Wanalyzer-mktemp-missing-placeholder and
+ -Wanalyzer-mkstemp-of-string-literal to
+ -Wanalyzer-mktemp-of-string-literal. Add
+ -Wanalyzer-mkostemp-redundant-flags. Fix alphabetical ordering
+ of detailed descriptions.
+
+2026-04-28 Tomás Ortín Fernández <quanrong@mailbox.org>
+
+ PR analyzer/105890
+ * doc/invoke.texi: Add -Wanalyzer-mkstemp-missing-suffix and
+ -Wanalyzer-mkstemp-of-string-literal.
+
+2026-04-28 David Malcolm <dmalcolm@redhat.com>
+
+ * diagnostics/html-sink.cc: Update status comment.
+
+2026-04-28 David Malcolm <dmalcolm@redhat.com>
+
+ * doc/libgdiagnostics/topics/execution-paths.rst
+ (diagnostic_execution_path_add_event_via_msg_buf): Fix
+ indentation.
+ * doc/libgdiagnostics/topics/message-buffers.rst: Replace
+ duplicate entry for diagnostic_message_buffer_end_url with entry
+ for diagnostic_message_buffer_end_quote.
+
+2026-04-28 David Malcolm <dmalcolm@redhat.com>
+
+ * diagnostics/context.h (diagnostics::context::make_option_name):
+ Convert return type from char * to label_text, and rename to...
+ (diagnostics::context::get_option_name): ...this.
+ (diagnostics::context::make_option_url): Likewise, renaming to...
+ (diagnostics::context::get_option_url): ...this.
+ * diagnostics/html-sink.cc
+ (html_builder::make_element_for_diagnostic): Update for above
+ changes.
+ * diagnostics/lazy-paths.cc (selftest::all_warnings_disabled):
+ Update for above changes.
+ * diagnostics/option-id-manager.h
+ (diagnostics::option_id_manager::make_option_name): Convert return
+ type from char * to label_text, and rename to...
+ (diagnostics::option_id_manager::get_option_name): ...this.
+ (diagnostics::option_id_manager::make_option_url): Likewise,
+ renaming to...
+ (diagnostics::option_id_manager::get_option_url): ...this.
+ * diagnostics/sarif-sink.cc: Add #define INCLUDE_SET.
+ (sarif_builder::m_rule_id_set): Convert from
+ hash_set <free_string_hash> to std::set<std::string>.
+ (sarif_builder::make_result_object): Update for above changes,
+ removing manual memory management.
+ (sarif_builder::make_reporting_descriptor_object_for_warning):
+ Likewise.
+ * diagnostics/text-sink.cc (text_sink::print_option_information):
+ Likewise.
+ * lto-wrapper.cc (print_lto_docs_link): Likewise.
+ (lto_diagnostic_option_id_manager::make_option_name): Convert
+ return type from char * to label_text, and rename to...
+ (lto_diagnostic_option_id_manager::get_option_name): ...this.
+ * opts-diagnostic.h (gcc_diagnostic_option_id_manager): Update for
+ above changes.
+ * opts.cc
+ (compiler_diagnostic_option_id_manager::make_option_name): Update
+ as above, renaming to...
+ (compiler_diagnostic_option_id_manager::get_option_name): ...this.
+ (gcc_diagnostic_option_id_manager::make_option_url): Likewise,
+ renaming to...
+ (gcc_diagnostic_option_id_manager::get_option_url): ...this.
+
+2026-04-28 David Malcolm <dmalcolm@redhat.com>
+
+ PR sarif-replay/123056
+ * libsarifreplay.cc: Include "json-pointer-parsing.h".
+ (sarif_replayer::sarif_replayer): Initialize m_root_val.
+ (sarif_replayer::m_root_val): New field.
+ (sarif_replayer::replay_file): Store m_root_val.
+ (sarif_replayer::append_embeddded_link): Add message_obj param.
+ Attempt to decode intra-sarif links, turning them into event IDs.
+ (sarif_replayer::decode_link_within_sarif): New.
+ (sarif_replayer::make_plain_text_within_result_message): Pass
+ message_obj to append_embeddded_link.
+
+2026-04-28 David Malcolm <dmalcolm@redhat.com>
+
+ * Makefile.in (OBJS-libcommon): Add json-pointer-parsing.o.
+ * json-pointer-parsing.cc: New file.
+ * json-pointer-parsing.h: New file.
+ * json.cc (json::object::set_string): Return a borrowed pointer to
+ the new json::value.
+ (json::object::set_integer): Likewise.
+ (json::array::append_string): Likewise.
+ * json.h (json::object::set_string): Likewise.
+ (json::object::set_integer): Likewise.
+ (json::array::append_string): Likewise.
+ * selftest-run-tests.cc (selftest::run_tests): Call
+ selftest::json_pointer_parsing_cc_tests.
+ * selftest.h (selftest::json_pointer_parsing_cc_tests): New decl.
+
+2026-04-28 David Malcolm <dmalcolm@redhat.com>
+
+ * Makefile.in (OBJS-libcommon): Add pretty-print-token-buffer.o.
+ * libgdiagnostics.cc: Drop include of "auto-obstack.h".
+ Include "pretty-print-token-buffer.h".
+ (class copying_token_printer): Move to
+ pretty-print-token-buffer.cc.
+ (struct diagnostic_message_buffer): Reimplement as a subclass of
+ pretty_print_token_buffer.
+ (diagnostic_message_buffer::to_string): Rename to
+ pretty_print_token_buffer::to_string and move to
+ pretty-print-token-buffer.cc.
+ * pretty-print-token-buffer.cc: New file, based on material from
+ libgdiagnostics.cc.
+ * pretty-print-token-buffer.h: New file, based on material from
+ libgdiagnostics.h.
+ * selftest-run-tests.cc (selftest::run_tests): Call
+ selftest::pretty_print_token_buffer_cc_tests.
+ * selftest.h (selftest::pretty_print_token_buffer_cc_tests): New
+ decl.
+
+2026-04-28 David Malcolm <dmalcolm@redhat.com>
+
+ * json-diagnostic.cc: Include "pretty-print-markup-json.h".
+ (class pp_markup::quoted_json_pointer): Move to...
+ * pretty-print-markup-json.h: ...this new file.
+
+2026-04-28 Jeff Law <jeffrey.law@oss.qualcomm.com>
+
+ PR target/124760
+ * config/riscv/bitmanip.md (SI->DI promoting shadd pattern): Promote
+ intermediate SI ops to DI ops when there's a final extending op.
+
+2026-04-28 Andrew Pinski <andrew.pinski@oss.qualcomm.com>
+
+ PR tree-optimization/125067
+ * tree-ssa-phiprop.cc (can_handle_load): Fix copy and pasto
+ on dominated_by_p.
+
+2026-04-28 Vladimir N. Makarov <vmakarov@redhat.com>
+
+ * lra-eliminations.cc (mark_not_eliminable): Fix condition to
+ consider hard regs instead of pseudos for INC/DEC/MODIFY operands.
+
+2026-04-28 Vladimir N. Makarov <vmakarov@redhat.com>
+
+ * lra-constraints.cc (curr_insn_transform): When recreating subreg
+ of a const put in pool, use the original subreg mode.
+
+2026-04-28 Vladimir N. Makarov <vmakarov@redhat.com>
+
+ * ira-lives.cc (ira_implicitly_set_insn_hard_regs): Use the same
+ start prefered for all operand.
+
+2026-04-28 Andrew Pinski <andrew.pinski@oss.qualcomm.com>
+
+ * tree-ssa-phiprop.cc (propagate_with_phi): Move vuse variable
+ declaration right before its use.
+
+2026-04-28 Andrew Pinski <andrew.pinski@oss.qualcomm.com>
+
+ * tree-ssa-phiprop.cc (propagate_with_phi): Move vuse checks
+ before the dominator tests.
+
+2026-04-28 Andrew Pinski <andrew.pinski@oss.qualcomm.com>
+
+ * tree-ssa-phiprop.cc (propagate_with_phi): Factor out
+ checking the load for vdef to ....
+ (can_move_into_conditional): Here.
+
+2026-04-28 Philipp Tomsich <philipp.tomsich@vrull.eu>
+
+ * fold-mem-offsets.cc (pass_fold_mem_offsets::execute): Remove
+ optimize_bb_for_size_p check.
+ * config/riscv/riscv.cc (riscv_option_override): Disable
+ flag_fold_mem_offsets when optimizing for size with compressed
+ instructions.
+
+2026-04-28 Jiawei <jiawei@iscas.ac.cn>
+ Edwin Lu <ewlu@rivosinc.com>
+
+ * config/riscv/riscv-ext.def: New extension.
+ * config/riscv/riscv-ext.opt: Ditto.
+ * config/riscv/sync-rvwmo.md: Add check for zalasr.
+ * config/riscv/sync-ztso.md: Ditto.
+ * doc/riscv-ext.texi: New extension.
+
+2026-04-28 Maximilian Ciric <max.ciric@gmail.com>
+
+ * config/riscv/riscv.cc (riscv_can_tag_addresses): New function.
+ (RISCV_HWASAN_TAG_SIZE): New definition.
+ (riscv_memtag_tag_bitsize): New function.
+ (TARGET_MEMTAG_CAN_TAG_ADDRESSES): New definition.
+ (TARGET_MEMTAG_TAG_BITSIZE): Likewise.
+
+2026-04-28 Dimitar Dimitrov <dimitar@dinux.eu>
+
+ * config/pru/pru.h (ASM_SPEC): Define.
+
+2026-04-28 Jeff Law <jeffrey.law@oss.qualcomm.com>
+
+ PR tree-optimization/94892
+ * config/riscv/riscv.md (sign_bit_splat_equality_test): New pattern.
+
+2026-04-28 Richard Biener <rguenther@suse.de>
+
+ * tree-vect-slp.cc (vect_bb_slp_mark_live_stmts): Do not
+ attempt to live code-generate defs that are kept in scalar
+ form anyway.
+ * tree-vect-loop.cc (vectorizable_live_operation): Update
+ comment.
+
+2026-04-28 Richard Biener <rguenther@suse.de>
+
+ * tree-vectorizer.h (_slp_tree::live_lanes): New vector.
+ (SLP_TREE_LIVE_LANES): New.
+ * tree-vect-loop.cc (vectorizable_live_operation): Append
+ to SLP_TREE_LIVE_LANES.
+ * tree-vect-slp.cc (_slp_tree::_slp_tree): Initialize
+ SLP_TREE_LIVE_LANES.
+ (_slp_tree::~_slp_tree): Release SLP_TREE_LIVE_LANES.
+ (vect_print_slp_tree): Adjust live lane dumping, indicating
+ the SLP node a lane is code generated from.
+ (vect_bb_slp_mark_live_stmts): No longer verify we can
+ code-generate from all SLP nodes but at least one, picking
+ the first.
+ * tree-vect-stmts.cc (vect_transform_stmt): Iterate over
+ SLP_TREE_LIVE_LANES.
+ (vect_analyze_stmt): Also analyze reductions for live
+ lanes.
+
+2026-04-28 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/124222
+ * tree-vect-slp.cc (vect_slp_gather_vectorized_scalar_stmts): Remove.
+ (vect_bb_slp_scalar_cost): Simplify by using SLP_TREE_TYPE and
+ a use-def walk of the scalar stmts SSA uses.
+ (vect_bb_vectorization_profitable_p): Simplify.
+
+2026-04-28 Richard Biener <rguenther@suse.de>
+
+ * tree-vect-slp.cc (vec_slp_has_scalar_use): Remove.
+ (vect_bb_slp_mark_live_stmts): Simplify.
+
+2026-04-28 Richard Biener <rguenther@suse.de>
+
+ * tree-vect-slp.cc (vect_slp_analyze_bb_1): Split out pure_slp
+ marking into ...
+ (vect_bb_slp_mark_stmts_vectorized): ... new function. Compute
+ full scalar stmt coverage of the SLP graph.
+ (vect_slp_gather_extern_scalar_stmts): New helper.
+ (vect_bb_slp_mark_live_stmts): Adjust.
+ * tree-vect-loop.cc (vectorizable_live_operation): Likewise.
+
+2026-04-28 Richard Biener <rguenther@suse.de>
+
+ * tree-vect-slp.cc (struct slp_oprnds): New.
+
+2026-04-28 Richard Biener <rguenther@suse.de>
+
+ * tree-vect-slp.cc (vect_slp_analyze_operations): Move
+ vect_bb_slp_mark_live_stmts call ...
+ (vect_slp_analyze_bb_1): ... here. Move SLP stmt marking
+ right before it.
+ (vect_mark_slp_stmts): Remove unused overload.
+
+2026-04-28 Richard Biener <rguenther@suse.de>
+
+ * tree-vectorizer.h (vect_slp_child_index_for_operand): Get
+ a stmt_vec_info, elide gather-scatter flag.
+ * tree-vect-stmts.cc (vect_check_store_rhs): Adjust.
+ (vectorizable_simd_clone_call): Likewise.
+ (vectorizable_store): Likewise.
+ (vectorizable_load): Likewise.
+ * tree-vect-slp.cc (vect_get_operand_map): New overload
+ with a stmt_vec_info argument.
+ (vect_slp_child_index_for_operand): Adjust.
+ (vect_get_and_check_slp_defs): Likewise.
+ (compatible_calls_p): Likewise.
+ (vect_build_slp_tree_2): Likewise.
+
+2026-04-28 Richard Biener <rguenther@suse.de>
+
+ * tree-vect-slp.cc (vect_get_operand_map): Put operand map
+ data here. Handle VIEW_CONVERT_EXPR, use else if, factor
+ out assertion.
+ (vect_get_and_check_slp_defs): Remove explicit VIEW_CONVERT_EXPR
+ handling here.
+
+2026-04-28 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/i386/i386.cc (construct_container): Remove redundant
+ early call to classify_argument. Recompute the classification
+ only when needed and assert that it succeeds.
+ (examine_argument): Change in_return parameter type to bool.
+ (function_arg_advance_64): Update call to examine_argument.
+ (function_arg_64): Update call to construct_container.
+ (function_value_64): Likewise.
+ (ix86_return_in_memory): Update call to examine_argument.
+ (ix86_gimplify_va_arg): Update calls to construct_container
+ and examine_argument.
+
+2026-04-28 Bohan Lei <garthlei@linux.alibaba.com>
+
+ * config/riscv/riscv.h (OPTION_DEFAULT_SPECS): Specify -mcpu
+ instead of -march when --with-cpu is used.
+
+2026-04-28 Bohan Lei <garthlei@linux.alibaba.com>
+
+ * simplify-rtx.cc (simplify_context::simplify_relational_operation_1):
+ Add simplifications for `(cmp (and/ior x C1) C2)`.
+
+2026-04-28 Richard Biener <rguenther@suse.de>
+
+ * tree-vect-loop.cc (vect_estimate_min_profitable_iters):
+ Add comment about costing of prologue/epilogue.
+
+2026-04-28 Richard Biener <rguenther@suse.de>
+
+ * tree-vect-loop.cc (vect_get_known_peeling_cost): Use
+ scalar_costs instead of guesstimating it.
+
+2026-04-28 Richard Biener <rguenther@suse.de>
+
+ * tree-vect-loop.cc (vect_compute_single_scalar_iteration_cost):
+ Record stmt cost to vect_body.
+
+2026-04-28 Richard Biener <rguenther@suse.de>
+
+ * tree-vectorizer.h (vect_get_known_peeling_cost): Simplify API.
+ * tree-vect-loop.cc (vect_get_known_peeling_cost): Avoid
+ all the overhead of record_stmt_cost as we only are interested
+ in the overall sum of the included builtin_vectorization_cost
+ calls.
+ * tree-vect-data-refs.cc (vect_peeling_hash_get_lowest_cost):
+ Adjust.
+ (vect_enhance_data_refs_alignment): Likewise.
+
+2026-04-28 Netanel Komm <netanelkomm@gmail.com>
+
+ PR tree-optimization/112659
+ PR tree-optimization/122996
+ * match.pd: Extend conditional addition pattern to handle
+ a third constant and uniform vectors.
+
+2026-04-28 Monk Chiang <monk.chiang@sifive.com>
+
+ * config/riscv/riscv.md (length attribute): Check CROSSING_JUMP_P
+ for jump instructions and use length 8 for crossing jumps.
+ (jump): Update comment to explain when long form is used.
+
+2026-04-28 Jakub Jelinek <jakub@redhat.com>
+
+ PR tree-optimization/125039
+ * range-op-float.cc (operator_not_equal::fold_range): Call
+ empty_range_varying when not calling frelop_early_resolve.
+
+2026-04-28 Jakub Jelinek <jakub@redhat.com>
+
+ * tree.cc (build_bitint_type): Allow build_bitint_type (1, 0).
+ (signed_or_unsigned_type_for): Call that for !unsignedp case
+ of BITINT_TYPE with bits 1.
+
+2026-04-28 Andrew Pinski <andrew.pinski@oss.qualcomm.com>
+
+ PR tree-optimization/125036
+ * tree-ssa-loop-ivopts.cc (add_iv_candidate_for_doloop): Don't
+ assert on niniter being integer type. Convert to a full mode
+ integer type if non integer or non-full mode integer type.
+
2026-04-27 Jeff Law <jeffrey.law@oss.qualcomm.com>
PR tree-optimization/57650
diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP
index bf2612c1d525..9d1459a9cd52 100644
--- a/gcc/DATESTAMP
+++ b/gcc/DATESTAMP
@@ -1 +1 @@
-20260428
+20260429
diff --git a/gcc/analyzer/ChangeLog b/gcc/analyzer/ChangeLog
index 055739a4a70b..f49637b48bfe 100644
--- a/gcc/analyzer/ChangeLog
+++ b/gcc/analyzer/ChangeLog
@@ -1,3 +1,266 @@
+2026-04-28 David Malcolm <dmalcolm@redhat.com>
+
+ PR analyzer/124217
+ * analyzer.opt (Wanalyzer-div-by-zero): New.
+ * analyzer.opt.urls: Regenerate.
+ * region-model.cc (class div_by_zero_diagnostic): New.
+ (region_model::get_gassign_result): Add warning for division by
+ zero if ctxt is non-null. Bail out on such cases even if ctxt
+ is null.
+ * svalue.cc (type_can_have_value_range_p): Also handle frange.
+
+2026-04-28 David Malcolm <dmalcolm@redhat.com>
+
+ * diagnostic-manager.cc: Include "analyzer/exploded-path.h".
+ * engine.cc: Likewise.
+ (exploded_path::exploded_path): Move to exploded-path.cc.
+ (exploded_path::find_stmt_backwards): Likewise.
+ (exploded_path::get_final_enode): Likewise.
+ (exploded_path::feasible_p): Likewise.
+ (exploded_path::dump_to_pp): Likewise.
+ (exploded_path::dump): Likewise.
+ (exploded_path::dump_to_file): Likewise.
+ * exploded-graph.h (class exploded_path): Move to exploded-path.h.
+ (shortest_exploded_paths): Likewise.
+ * exploded-path.cc: New file, taken from the above.
+ * exploded-path.h: Likewise.
+ * feasible-graph.cc: Include "analyzer/exploded-path.h".
+
+2026-04-28 David Malcolm <dmalcolm@redhat.com>
+
+ * analyzer.cc (is_setjmp_call_p): Move to setjmp-longjmp.cc.
+ (is_longjmp_call_p): Likewise.
+ * engine.cc (setjmp_record::cmp): Likewise.
+ (setjmp_svalue::accept): Likewise.
+ (setjmp_svalue::dump_to_pp): Likewise.
+ (setjmp_svalue::print_dump_widget_label): Likewise.
+ (setjmp_svalue::add_dump_widget_children): Likewise.
+ (setjmp_svalue::get_enode_index): Likewise.
+ (valid_longjmp_stack_p): Likewise.
+ (class stale_jmp_buf): Likewise.
+ (exploded_node::on_longjmp): Likewise.
+ (rewind_info_t::update_model): Likewise.
+ (rewind_info_t::add_events_to_path): Likewise.
+ * region-model.cc (region_model::on_setjmp): Likewise.
+ (region_model::on_longjmp): Likewise.
+ * setjmp-longjmp.cc: New file, made from the above material.
+ * svalue.cc: Update comment.
+
+2026-04-28 David Malcolm <dmalcolm@redhat.com>
+
+ * poisoned-value-diagnostic.cc: New file, taken from material in
+ region-model.cc.
+ * region-model.cc (class poisoned_value_diagnostic): Move to
+ poisoned-value-diagnostic.cc.
+ (class shift_count_negative_diagnostic): Move to
+ shift-diagnostics.cc.
+ (class shift_count_overflow_diagnostic): Likewise.
+ (region_model::get_gassign_result): Use factory functions when
+ creating diagnostics so that the subclasses can be moved to their
+ own source files.
+ (region_model::check_for_poison): Likewise.
+ (region_model::deref_rvalue): Likewise.
+ (class write_to_const_diagnostic): Move to
+ write-to-const-diagnostics.cc.
+ (class write_to_string_literal_diagnostic): Likewise.
+ (region_model::check_for_writable_region): Use factory functions
+ when creating diagnostics so that the subclasses can be moved to
+ their own source files.
+ * region-model.h (make_poisoned_value_diagnostic): New decl.
+ (make_shift_count_negative_diagnostic): New decl.
+ (make_shift_count_overflow_diagnostic): New decl.
+ (make_write_to_const_diagnostic): New decl.
+ (make_write_to_string_literal_diagnostic): New decl.
+ * shift-diagnostics.cc: New file, taken from material in
+ region-model.cc.
+ * write-to-const-diagnostics.cc: Likewise.
+
+2026-04-28 David Malcolm <dmalcolm@redhat.com>
+
+ PR analyzer/123145
+ * access-diagram.cc
+ (compound_svalue_spatial_item::compound_svalue_spatial_item):
+ Update for compound_svalue using concrete_binding_map rather than
+ binding_map.
+ * bounds-checking.cc (strip_types): Likewise.
+ * call-summary.cc
+ (call_summary_replay::convert_svalue_from_summary_1): Update for
+ reimplementation of class binding_map.
+ (call_summary_replay::convert_svalue_from_summary_1): Likewise.
+ * infinite-recursion.cc (contains_unknown_p): Update for
+ compound_svalue using concrete_binding_map rather than
+ binding_map.
+ * program-state.cc (sm_state_map::impl_set_state): Likewise.
+ * region-model-manager.cc (maybe_undo_optimize_bit_field_compare):
+ Likewise.
+ (maybe_undo_optimize_bit_field_compare): Avoid building a
+ concrete_binding key by using get_any_exact_binding.
+ (region_model_manager::get_or_create_compound_svalue): New
+ overload, consuming a concrete_binding_map &&.
+ * region-model-manager.h
+ (region_model_manager::get_or_create_compound_svalue): New decl
+ for the above.
+ * region-model-reachability.cc (reachable_regions::handle_sval):
+ Update for compound_svalue using concrete_binding_map rather than
+ binding_map.
+ (reachable_regions::handle_parm): Likewise.
+ * region-model.cc (region_model::scan_for_null_terminator_1): Port
+ from binding_map to concrete_binding_map.
+ (exposure_through_uninit_copy::calc_num_uninit_bits): Update for
+ compound_svalue using concrete_binding_map rather than
+ binding_map.
+ (contains_uninit_p): Likewise.
+ * region.cc (decl_region::calc_svalue_for_constructor): Port from
+ binding_map to concrete_binding_map.
+ (decl_region::get_svalue_for_initializer): Update call to
+ get_or_create_compound_svalue.
+ * store.cc (concrete_binding_map::dump_to_pp): New.
+ (concrete_binding_map::dump): New.
+ (concrete_binding_map::add_to_tree_widget): New.
+ (concrete_binding_map::validate): New.
+ (binding_map::cmp): Convert to...
+ (concrete_binding_map::cmp): ...this.
+ (concrete_binding_map::get_any_exact_binding): New.
+ (concrete_binding_map::calc_complexity): New.
+ (concrete_binding_map::remove_overlapping_binding): New.
+ (concrete_binding_map::remove_overlapping_bindings): New.
+ (concrete_binding_map::get_overlapping_bindings): New.
+ (binding_map::put): Update for change to m_concrete.
+ (binding_map::validate): Likewise.
+ (binding_map::apply_ctor_to_region): Convert to...
+ (concrete_binding_map::apply_ctor_to_region): ...this.
+ (binding_map::apply_ctor_val_to_range): Convert to...
+ (concrete_binding_map::apply_ctor_val_to_range): ...this.
+ (binding_map::apply_ctor_pair_to_child_region): Convert to...
+ (concrete_binding_map::apply_ctor_pair_to_child_region): ...this.
+ (binding_map::remove_overlapping_bindings): Move part of
+ implementation to
+ concrete_binding_map::remove_overlapping_binding.
+ (binding_cluster::bind_compound_sval): Simplify using
+ concrete_binding_map.
+ (binding_cluster::maybe_get_compound_binding): Likewise.
+ (store::replay_call_summary_cluster): Update for change
+ to compound_svalue.
+ * store.h: Include "analyzer/complexity.h".
+ (class concrete_binding_map): New, based on
+ binding_map::concrete_bindings_t.
+ (binding_map::concrete_bindings_t): Use concrete_binding_map.
+ (binding_map::empty_p): Update for above.
+ (binding_map::apply_ctor_to_region): Drop decl.
+ (binding_map::cmp): Likewise.
+ (binding_map::apply_ctor_val_to_range): Likewise.
+ (binding_map::apply_ctor_pair_to_child_region): Likewise.
+ * svalue.cc (svalue::cmp_ptr): Update for change to
+ compound_svalue.
+ (compound_svalue::compound_svalue): Port from binding_map to
+ concrete_binding_map.
+ (compound_svalue::accept): Likewise.
+ (compound_svalue::calc_complexity): Drop.
+ (compound_svalue::maybe_fold_bits_within): Port from binding_map
+ to concrete_binding_map.
+ * svalue.h (class compound_svalue): Update leading comment. Port
+ from binding_map to concrete_binding_map.
+
+2026-04-28 Virginia Kodsy <virginiahany9@gmail.com>
+
+ * kf.cc (class kf_strcasecmp): New.
+ (kf_strcasecmp::impl_call_post): New.
+ (register_known_functions): Register BUILT_IN_STRCASECMP,
+ "strcasecmp", and "__builtin_strcasecmp".
+
+2026-04-28 Ridham Khurana <khurana.ridham222@gmail.com>
+
+ * kf.cc (class kf_getenv): New.
+ (kf_getenv::impl_call_post): New.
+ (register_known_functions): Register kf_getenv.
+
+2026-04-28 Tomás Ortín Fernández <quanrong@mailbox.org>
+
+ PR analyzer/105890
+ * kf.cc (class kf_mktemp_family): Add nested outcome enum,
+ constructor, and nested failure and success classes.
+ (kf_mktemp_family::check_template_with_suffixlen_arg): Remove.
+ (kf_mktemp_family::check_template): Remove. Both replaced
+ by...
+ (kf_mktemp_family::check_for_string_literal_arg): ...this.
+ (kf_mktemp_family::get_trailing_len): New.
+ (kf_mktemp_family::impl_call_post): New.
+ (class kf_mktemp_simple): Add constructor taking outcome.
+ Replace check_template with check_for_string_literal_arg.
+ Remove set_any_lhs_with_defaults call.
+ (class kf_mkostemp): Add constructor. Replace check_template
+ with check_for_string_literal_arg. Remove
+ set_any_lhs_with_defaults call.
+ (class kf_mkostemps): Likewise.
+ (class kf_mkstemps): Likewise.
+ (register_known_functions): Pass outcome to kf_mktemp_simple
+ instantiations.
+ * region-model.cc (region_model::update_for_null_return): New.
+ * region-model.h (class region_model): Add
+ update_for_null_return.
+
+2026-04-28 Tomás Ortín Fernández <quanrong@mailbox.org>
+
+ PR analyzer/105890
+ * analyzer-language.cc (stash_named_constants): Stash O_CREAT,
+ O_EXCL, and O_RDWR for use by kf.cc.
+ * analyzer.opt: Rename -Wanalyzer-mkstemp-missing-suffix to
+ -Wanalyzer-mktemp-missing-placeholder and
+ -Wanalyzer-mkstemp-of-string-literal to
+ -Wanalyzer-mktemp-of-string-literal. Add
+ -Wanalyzer-mkostemp-redundant-flags. Fix alphabetical ordering.
+ * analyzer.opt.urls: Regenerate.
+ * kf.cc (class mkstemp_of_string_literal): Rename to...
+ (class mktemp_of_string_literal): ...this.
+ (class mkstemp_missing_suffix): Rename to...
+ (class mktemp_missing_placeholder): ...this. Add trailing_len
+ parameter for suffixed variants.
+ (class mkostemp_redundant_flags): New diagnostic class.
+ (class kf_mktemp_family): New base class with shared template
+ and flags checking logic.
+ (kf_mktemp_family::check_template_with_suffixlen_arg): New.
+ (kf_mktemp_family::check_template): New.
+ (kf_mktemp_family::check_flags): New.
+ (kf_mktemp_family::check_placeholder): New.
+ (class kf_mkstemp): Rename to...
+ (class kf_mktemp_simple): ...this. Generalize to handle mktemp,
+ mkstemp, and mkdtemp.
+ (class kf_mkostemp): New known_function handler.
+ (class kf_mkostemps): New known_function handler.
+ (class kf_mkstemps): New known_function handler.
+ (register_known_functions): Register all mktemp family handlers.
+
+2026-04-28 Tomás Ortín Fernández <quanrong@mailbox.org>
+
+ PR analyzer/105890
+ * analyzer.opt: Add -Wanalyzer-mkstemp-missing-suffix and
+ -Wanalyzer-mkstemp-of-string-literal.
+ * analyzer.opt.urls: Add URL entries for the new warnings.
+ * kf.cc (class mkstemp_of_string_literal): New diagnostic class
+ for mkstemp called on a string literal.
+ (class mkstemp_missing_suffix): New diagnostic class for mkstemp
+ called with a template missing the "XXXXXX" suffix.
+ (class kf_mkstemp): New known_function handler for mkstemp.
+ (register_known_functions): Register kf_mkstemp.
+
+2026-04-28 Saksham Gupta <io.sakshamgupta@gmail.com>
+
+ * kf.cc (class kf_atoi_family): New class.
+ (register_known_functions): Register atoi, atol, and atoll.
+
+2026-04-28 David Malcolm <dmalcolm@redhat.com>
+
+ * access-diagram.cc
+ (access_diagram_impl::add_aligned_child_table): Use
+ std::make_unique rather than "new".
+ (access_diagram_impl::add_valid_vs_invalid_ruler): Likewise.
+ * checker-path.h (checker_path::replace_event): Use
+ std::unique_ptr.
+ * diagnostic-manager.cc
+ (diagnostic_manager::consolidate_conditions): Use std::make_unique
+ rather than "new".
+ * feasible-graph.cc (feasible_graph::make_epath): Likewise.
+
2026-04-16 Torbjörn SVENSSON <torbjorn.svensson@foss.st.com>
* engine.cc (impl_region_model_context::on_unexpected_tree_code): Print
diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog
index d5036a2ac39d..6851725b2b4b 100644
--- a/gcc/c-family/ChangeLog
+++ b/gcc/c-family/ChangeLog
@@ -1,3 +1,13 @@
+2026-04-28 Jakub Jelinek <jakub@redhat.com>
+
+ * c-common.cc (c_common_signed_or_unsigned_type): Use
+ build_bitint_type for TREE_CODE (type) == BITINT_TYPE whenever
+ flag_isoc2y even when precision is 1.
+ (c_common_get_alias_set): Don't special case BITINT_TYPE
+ with precision 1 for flag_isoc2y.
+ * c-lex.cc (interpret_integer): Use _BitInt(1) type for 0wb
+ if flag_isoc2y, rather than _BitInt(2).
+
2026-04-22 Jakub Jelinek <jakub@redhat.com>
* c-cppbuiltin.cc (c_cpp_builtins): Bump __cpp_impl_reflection value
diff --git a/gcc/c/ChangeLog b/gcc/c/ChangeLog
index a1cc6fc978d3..305041fb081c 100644
--- a/gcc/c/ChangeLog
+++ b/gcc/c/ChangeLog
@@ -1,3 +1,9 @@
+2026-04-28 Jakub Jelinek <jakub@redhat.com>
+
+ * c-decl.cc (finish_declspecs) <case cts_bitint>: Implement
+ C2Y N3747 - Integer Sets, v5. Allow signed _BitInt(1) for
+ flag_isoc2y.
+
2026-04-25 Martin Uecker <uecker@tugraz.at>
PR c/124303
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index c51be716a94f..786cb94b48b0 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,22 @@
+2026-04-28 Marek Polacek <polacek@redhat.com>
+
+ PR c++/124756
+ * reflect.cc (get_reflection): Give an error when taking the
+ reflection of a block-scope extern.
+
+2026-04-28 Marek Polacek <polacek@redhat.com>
+
+ * error.cc (inform_tree_category): Also print concept and alias
+ template.
+ * pt.cc (tsubst_splice_scope): Reword the diagnostic messages.
+ Call inform_tree_category.
+
+2026-04-28 Jason Merrill <jason@redhat.com>
+
+ PR c++/125022
+ * decl.cc (store_parm_decls): Only do trivial_abi stuff when
+ !processing_template_decl.
+
2026-04-27 Patrick Palka <ppalka@redhat.com>
PR c++/124978
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 2cd01582a9c8..5e7e1f3056b0 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,255 @@
+2026-04-28 David Malcolm <dmalcolm@redhat.com>
+
+ PR analyzer/124217
+ * c-c++-common/analyzer/divide-by-zero-1.c: Update to expect
+ -Wanalyzer-div-by-zero.
+ * c-c++-common/analyzer/divide-by-zero-pr124195-2.c: Likewise.
+ * gcc.dg/analyzer/data-model-1.c (test_21): Split out division by
+ zero cases into...
+ (test_21_division_by_zero): ...this, and...
+ (test_21_modulus_by_zero): ...this, updating these to expect
+ -Wanalyzer-div-by-zero warnings.
+ * gcc.dg/analyzer/divide-by-zero-float.c: New test.
+ * gcc.dg/analyzer/divide-by-zero-ice-pr124433.c: Update to expect
+ -Wanalyzer-div-by-zero.
+ * gcc.dg/analyzer/divide-by-zero-pr124195-1.c: Likewise.
+
+2026-04-28 Virginia Kodsy <virginiahany9@gmail.com>
+
+ * gcc.dg/analyzer/strcasecmp-1.c: New test.
+
+2026-04-28 Ridham Khurana <khurana.ridham222@gmail.com>
+
+ * gcc.dg/analyzer/getenv-1.c (test_passthrough): New test.
+
+2026-04-28 Ridham Khurana <khurana.ridham222@gmail.com>
+
+ * gcc.dg/analyzer/getenv-1.c: New test.
+
+2026-04-28 Tomás Ortín Fernández <quanrong@mailbox.org>
+
+ PR analyzer/105890
+ * gcc.dg/analyzer/mkdtemp-1.c: Add tests for errno on
+ success/failure, non-null return identity, and no-lhs call.
+ * gcc.dg/analyzer/mkostemp-1.c: Prune fd leak warnings.
+ * gcc.dg/analyzer/mkostemps-1.c: Likewise.
+ * gcc.dg/analyzer/mkstemp-1.c: Likewise.
+ * gcc.dg/analyzer/mkstemps-1.c: Likewise.
+ * gcc.dg/analyzer/mktemp-1.c: Add errno, failure, and success
+ path tests.
+ * gcc.dg/analyzer/fd-mktemp-family.c: New test.
+
+2026-04-28 Tomás Ortín Fernández <quanrong@mailbox.org>
+
+ PR analyzer/105890
+ * gcc.dg/analyzer/mkstemp-1.c: Update terminology from "suffix"
+ to "placeholder".
+ * gcc.dg/analyzer/mkdtemp-1.c: New test.
+ * gcc.dg/analyzer/mkostemp-1.c: New test.
+ * gcc.dg/analyzer/mkostemps-1.c: New test.
+ * gcc.dg/analyzer/mkstemps-1.c: New test.
+ * gcc.dg/analyzer/mktemp-1.c: New test.
+
+2026-04-28 Tomás Ortín Fernández <quanrong@mailbox.org>
+
+ PR analyzer/105890
+ * gcc.dg/analyzer/mkstemp-1.c: New test.
+
+2026-04-28 Saksham Gupta <io.sakshamgupta@gmail.com>
+
+ * gcc.dg/analyzer/atoi-1.c: Update test coverage.
+
+2026-04-28 David Malcolm <dmalcolm@redhat.com>
+
+ PR sarif-replay/123056
+ * sarif-replay.dg/2.1.0-invalid/3.10.3-bad-json-pointer.sarif: New
+ test.
+ * sarif-replay.dg/2.1.0-valid/embedded-links-pr123056-check-sarif-roundtrip.py
+ (test_roundtrip_of_url_in_generated_sarif): Update expected
+ result, to expect the URL for the event.
+
+2026-04-28 David Malcolm <dmalcolm@redhat.com>
+
+ * selftests/json-pointer.json: New support file, taken directly
+ from RFC 6901.
+
+2026-04-28 Jeff Law <jeffrey.law@oss.qualcomm.com>
+
+ PR target/124760
+ * gcc.target/riscv/pr124760.c: New test.
+
+2026-04-28 Marek Polacek <polacek@redhat.com>
+
+ PR c++/124756
+ * g++.dg/reflect/identifier_of3.C: Add dg-error.
+ * g++.dg/reflect/pr123612.C: Likewise.
+ * g++.dg/reflect/error13.C: New test.
+
+2026-04-28 Marek Polacek <polacek@redhat.com>
+
+ * g++.dg/reflect/ns5.C: Adjust expected diagnostics.
+ * g++.dg/reflect/type9.C: Likewise.
+
+2026-04-28 Andrew Pinski <andrew.pinski@oss.qualcomm.com>
+
+ PR tree-optimization/116823
+ * g++.dg/tree-ssa/phiprop-1.C: New test.
+
+2026-04-28 Jiawei <jiawei@iscas.ac.cn>
+ Edwin Lu <ewlu@rivosinc.com>
+
+ * gcc.target/riscv/amo/a-rvwmo-fence.c: Disable zalasr from -march.
+ * gcc.target/riscv/amo/a-rvwmo-load-acquire.c: Ditto.
+ * gcc.target/riscv/amo/a-rvwmo-load-relaxed.c: Ditto.
+ * gcc.target/riscv/amo/a-rvwmo-load-seq-cst.c: Ditto.
+ * gcc.target/riscv/amo/a-rvwmo-store-compat-seq-cst.c: Ditto.
+ * gcc.target/riscv/amo/a-rvwmo-store-relaxed.c: Ditto.
+ * gcc.target/riscv/amo/a-rvwmo-store-release.c: Ditto.
+ * gcc.target/riscv/amo/a-ztso-fence.c: Ditto.
+ * gcc.target/riscv/amo/a-ztso-load-acquire.c: Ditto.
+ * gcc.target/riscv/amo/a-ztso-load-relaxed.c: Ditto.
+ * gcc.target/riscv/amo/a-ztso-load-seq-cst.c: Ditto.
+ * gcc.target/riscv/amo/a-ztso-store-compat-seq-cst.c: Ditto.
+ * gcc.target/riscv/amo/a-ztso-store-relaxed.c: Ditto.
+ * gcc.target/riscv/amo/a-ztso-store-release.c: Ditto.
+ * gcc.target/riscv/amo/zaamo-preferred-over-zalrsc.c: Ditto.
+ * gcc.target/riscv/amo/zaamo-rvwmo-amo-add-int.c: Ditto.
+ * gcc.target/riscv/amo/zaamo-ztso-amo-add-int.c: Ditto.
+ * gcc.target/riscv/amo/zabha-rvwmo-all-amo-ops-char.c: Ditto.
+ * gcc.target/riscv/amo/zabha-rvwmo-all-amo-ops-short.c: Ditto.
+ * gcc.target/riscv/amo/zabha-rvwmo-amo-add-char.c: Ditto.
+ * gcc.target/riscv/amo/zabha-rvwmo-amo-add-short.c: Ditto.
+ * gcc.target/riscv/amo/zabha-zacas-atomic-cas.c: Ditto.
+ * gcc.target/riscv/amo/zabha-zacas-preferred-over-zalrsc.c: Ditto.
+ * gcc.target/riscv/amo/zabha-ztso-amo-add-char.c: Ditto.
+ * gcc.target/riscv/amo/zabha-ztso-amo-add-short.c: Ditto.
+ * gcc.target/riscv/amo/zacas-char-requires-zabha.c: Ditto.
+ * gcc.target/riscv/amo/zacas-char-requires-zacas.c: Ditto.
+ * gcc.target/riscv/amo/zacas-preferred-over-zalrsc.c: Ditto.
+ * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-char-acq-rel.c: Ditto.
+ * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-char-acquire.c: Ditto.
+ * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-char-relaxed.c: Ditto.
+ * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-char-release.c: Ditto.
+ * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-char-seq-cst.c: Ditto.
+ * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-compatability-mapping-no-fence.c: Ditto.
+ * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-compatability-mapping.cc: Ditto.
+ * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-int-acq-rel.c: Ditto.
+ * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-int-acquire.c: Ditto.
+ * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-int-relaxed.c: Ditto.
+ * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-int-release.c: Ditto.
+ * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-int-seq-cst.c: Ditto.
+ * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-short-acq-rel.c: Ditto.
+ * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-short-acquire.c: Ditto.
+ * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-short-relaxed.c: Ditto.
+ * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-short-release.c: Ditto.
+ * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-short-seq-cst.c: Ditto.
+ * gcc.target/riscv/amo/zacas-ztso-compare-exchange-char.c: Ditto.
+ * gcc.target/riscv/amo/zacas-ztso-compare-exchange-compatability-mapping-no-fence.c: Ditto.
+ * gcc.target/riscv/amo/zacas-ztso-compare-exchange-compatability-mapping.cc: Ditto.
+ * gcc.target/riscv/amo/zacas-ztso-compare-exchange-int-seq-cst.c: Ditto.
+ * gcc.target/riscv/amo/zacas-ztso-compare-exchange-int.c: Ditto.
+ * gcc.target/riscv/amo/zacas-ztso-compare-exchange-short-seq-cst.c: Ditto.
+ * gcc.target/riscv/amo/zacas-ztso-compare-exchange-short.c: Ditto.
+ * gcc.target/riscv/amo/zalrsc-rvwmo-amo-add-int.c: Ditto.
+ * gcc.target/riscv/amo/zalrsc-rvwmo-compare-exchange-int-acquire-release.c: Ditto.
+ * gcc.target/riscv/amo/zalrsc-rvwmo-compare-exchange-int-acquire.c: Ditto.
+ * gcc.target/riscv/amo/zalrsc-rvwmo-compare-exchange-int-consume.c: Ditto.
+ * gcc.target/riscv/amo/zalrsc-rvwmo-compare-exchange-int-relaxed.c: Ditto.
+ * gcc.target/riscv/amo/zalrsc-rvwmo-compare-exchange-int-release.c: Ditto.
+ * gcc.target/riscv/amo/zalrsc-rvwmo-compare-exchange-int-seq-cst-relaxed.c: Ditto.
+ * gcc.target/riscv/amo/zalrsc-rvwmo-compare-exchange-int-seq-cst.c: Ditto.
+ * gcc.target/riscv/amo/zalrsc-rvwmo-subword-amo-add-char-acq-rel.c: Ditto.
+ * gcc.target/riscv/amo/zalrsc-rvwmo-subword-amo-add-char-acquire.c: Ditto.
+ * gcc.target/riscv/amo/zalrsc-rvwmo-subword-amo-add-char-relaxed.c: Ditto.
+ * gcc.target/riscv/amo/zalrsc-rvwmo-subword-amo-add-char-release.c: Ditto.
+ * gcc.target/riscv/amo/zalrsc-rvwmo-subword-amo-add-char-seq-cst.c: Ditto.
+ * gcc.target/riscv/amo/zalrsc-ztso-amo-add-int.c: Ditto.
+ * gcc.target/riscv/amo/zalrsc-ztso-compare-exchange-int-acquire-release.c: Ditto.
+ * gcc.target/riscv/amo/zalrsc-ztso-compare-exchange-int-acquire.c: Ditto.
+ * gcc.target/riscv/amo/zalrsc-ztso-compare-exchange-int-consume.c: Ditto.
+ * gcc.target/riscv/amo/zalrsc-ztso-compare-exchange-int-relaxed.c: Ditto.
+ * gcc.target/riscv/amo/zalrsc-ztso-compare-exchange-int-release.c: Ditto.
+ * gcc.target/riscv/amo/zalrsc-ztso-compare-exchange-int-seq-cst-relaxed.c: Ditto.
+ * gcc.target/riscv/amo/zalrsc-ztso-compare-exchange-int-seq-cst.c: Ditto.
+ * gcc.target/riscv/amo/zalrsc-ztso-subword-amo-add-char-acq-rel.c: Ditto.
+ * gcc.target/riscv/amo/zalrsc-ztso-subword-amo-add-char-acquire.c: Ditto.
+ * gcc.target/riscv/amo/zalrsc-ztso-subword-amo-add-char-relaxed.c: Ditto.
+ * gcc.target/riscv/amo/zalrsc-ztso-subword-amo-add-char-release.c: Ditto.
+ * gcc.target/riscv/amo/zalrsc-ztso-subword-amo-add-char-seq-cst.c: Ditto.
+ * lib/target-supports.exp: Add zalasr checks.
+ * gcc.target/riscv/amo/zalasr-rvwmo-load-acquire.c: New test.
+ * gcc.target/riscv/amo/zalasr-rvwmo-load-relaxed.c: New test.
+ * gcc.target/riscv/amo/zalasr-rvwmo-load-seq-cst.c: New test.
+ * gcc.target/riscv/amo/zalasr-rvwmo-store-compat-seq-cst.c: New test.
+ * gcc.target/riscv/amo/zalasr-rvwmo-store-relaxed.c: New test.
+ * gcc.target/riscv/amo/zalasr-rvwmo-store-release.c: New test.
+ * gcc.target/riscv/amo/zalasr-ztso-load-acquire.c: New test.
+ * gcc.target/riscv/amo/zalasr-ztso-load-relaxed.c: New test.
+ * gcc.target/riscv/amo/zalasr-ztso-load-seq-cst.c: New test.
+ * gcc.target/riscv/amo/zalasr-ztso-store-compat-seq-cst.c: New test.
+ * gcc.target/riscv/amo/zalasr-ztso-store-relaxed.c: New test.
+ * gcc.target/riscv/amo/zalasr-ztso-store-release.c: New test.
+ Co-Authored-by: Edwin Lu <ewlu@rivosinc.com>
+
+2026-04-28 Jeff Law <jeffrey.law@oss.qualcomm.com>
+
+ PR tree-optimization/94892
+ * gcc.target/riscv/pr94892.c: New test.
+
+2026-04-28 Tomasz Kamiński <tkaminsk@redhat.com>
+
+ * g++.dg/cpp26/type-order1.C: Add tests for more type.
+
+2026-04-28 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/124222
+ * gcc.dg/vect/costmodel/x86_64/costmodel-pr124222.c: New testcase.
+
+2026-04-28 Bohan Lei <garthlei@linux.alibaba.com>
+
+ * gcc.target/i386/pr113609-1.c: Change assembly check after
+ optimization.
+ * gcc.target/riscv/zbs-if_then_else-02.c: New test.
+
+2026-04-28 Netanel Komm <netanelkomm@gmail.com>
+
+ PR tree-optimization/112659
+ PR tree-optimization/122996
+ * g++.dg/tree-ssa/cond-add-vec-1.C: New test (positive cases).
+ * g++.dg/tree-ssa/cond-add-vec-2.C: New test (negative cases).
+ * gcc.dg/tree-ssa/cond-add-1.c: New test (positive cases).
+ * gcc.dg/tree-ssa/cond-add-2.c: New test (negative cases).
+
+2026-04-28 Monk Chiang <monk.chiang@sifive.com>
+
+ * gcc.target/riscv/pr-crossing-jump-1.c: New test.
+ * gcc.target/riscv/pr-crossing-jump-2.c: New test.
+ * gcc.target/riscv/pr-crossing-jump-3.c: New test.
+
+2026-04-28 Jakub Jelinek <jakub@redhat.com>
+
+ PR tree-optimization/125039
+ * gcc.c-torture/compile/pr125039.c: New test.
+
+2026-04-28 Jakub Jelinek <jakub@redhat.com>
+
+ * gcc.dg/torture/bitint-96.c: New test.
+ * gcc.dg/torture/bitint-97.c: New test.
+ * gcc.dg/torture/bitint-98.c: New test.
+ * gcc.dg/bitint-130.c: New test.
+ * gcc.dg/bitint-131.c: New test.
+ * gcc.dg/bitint-132.c: New test.
+
+2026-04-28 Andrew Pinski <andrew.pinski@oss.qualcomm.com>
+
+ PR tree-optimization/125036
+ * gcc.dg/torture/pr125036-1.c: New test.
+
+2026-04-28 Jason Merrill <jason@redhat.com>
+
+ PR c++/125022
+ * g++.dg/cpp0x/attr-trivial_abi7.C: New test.
+
2026-04-27 Jeff Law <jeffrey.law@oss.qualcomm.com>
PR tree-optimization/57650
diff --git a/libgomp/ChangeLog b/libgomp/ChangeLog
index b3dc5f4ade33..341984ff04bf 100644
--- a/libgomp/ChangeLog
+++ b/libgomp/ChangeLog
@@ -1,3 +1,8 @@
+2026-04-28 Tobias Burnus <tburnus@baylibre.com>
+
+ * testsuite/libgomp.fortran/map-subarray-6.f90: Fix, extend, and
+ robustify.
+
2026-04-17 Thomas Schwinge <tschwinge@baylibre.com>
* testsuite/libgomp.c/declare-variant-3-sm50.c: New.
diff --git a/libsanitizer/ChangeLog b/libsanitizer/ChangeLog
index 60bc501754c8..a58e7de581be 100644
--- a/libsanitizer/ChangeLog
+++ b/libsanitizer/ChangeLog
@@ -1,3 +1,7 @@
+2026-04-28 Maximilian Ciric <max.ciric@gmail.com>
+
+ * configure.tgt: Enable HWASAN support for RISC-V target.
+
2026-04-21 Marian Buschsieweke <maribu@users.noreply.github.com>
PR sanitizer/124248
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index c8ffba1bed54..0a9136386ba9 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,26 @@
+2026-04-28 Jonathan Wakely <jwakely@redhat.com>
+
+ * doc/xml/manual/status_cxx2023.xml: Update status table.
+ * doc/html/manual/status.html: Regenerate.
+
+2026-04-28 Jonathan Wakely <jwakely@redhat.com>
+
+ * doc/xml/manual/using.xml (Flags): Update description of
+ default value for -std option.
+ * doc/html/manual/using.html: Regenerate.
+
+2026-04-28 Tomasz Kamiński <tkaminsk@redhat.com>
+
+ * include/bits/ptr_traits.h (__ptr_traits_ptr_to::pointer_to):
+ Define as constexpr since C++20.
+ * testsuite/20_util/pointer_traits/pointer_to_constexpr.cc:
+ New test for custom pointer-like type.
+
+2026-04-28 Tomasz Kamiński <tkaminsk@redhat.com>
+
+ * testsuite/18_support/comparisons/type_order/1.cc: Add tests
+ for more type.
+
2026-04-27 Jakub Jelinek <jakub@redhat.com>
PR libstdc++/125024
More information about the Libstdc++-cvs
mailing list