https://gcc.gnu.org/g:1c0cbc1b300e08df5ebfce00a7195890d78f2064

commit r16-268-g1c0cbc1b300e08df5ebfce00a7195890d78f2064
Author: GCC Administrator <gccadmin@gcc.gnu.org>
Date:   Tue Apr 29 00:20:16 2025 +0000

    Daily bump.

Diff:
---
 ChangeLog               |   4 +
 gcc/ChangeLog           | 293 +++++++++++++++++++++++++++++++++
 gcc/DATESTAMP           |   2 +-
 gcc/analyzer/ChangeLog  | 419 ++++++++++++++++++++++++++++++++++++++++++++++++
 gcc/c-family/ChangeLog  |  17 ++
 gcc/c/ChangeLog         |  28 ++++
 gcc/cp/ChangeLog        |  35 ++++
 gcc/jit/ChangeLog       |   5 +
 gcc/rust/ChangeLog      | 353 ++++++++++++++++++++++++++++++++++++++++
 gcc/testsuite/ChangeLog | 312 +++++++++++++++++++++++++++++++++++
 libcpp/ChangeLog        |   6 +
 libstdc++-v3/ChangeLog  |  64 ++++++++
 12 files changed, 1537 insertions(+), 1 deletion(-)

diff --git a/ChangeLog b/ChangeLog
index 2fb380b95477..9c7c932e2f0e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2025-04-28  Kwok Cheung Yeung  <kcye...@baylibre.com>
+
+       * MAINTAINERS (kcy): Add gcc.gnu.org username.
+
 2025-04-22  Rainer Orth  <r...@cebitec.uni-bielefeld.de>
 
        PR cobol/119217
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 5e84f0591f70..eab323120d82 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,296 @@
+2025-04-28  David Malcolm  <dmalc...@redhat.com>
+
+       PR analyzer/97111
+       * doc/invoke.texi: Add -Wanalyzer-throw-of-unexpected-type.
+       * gimple.h (gimple_call_nothrow_p): Make arg const.
+
+2025-04-28  David Malcolm  <dmalc...@redhat.com>
+
+       * diagnostic-format-json.cc: Drop include of "make-unique.h".
+       Replace uses of ::make_unique with std::make_unique.
+       * diagnostic-format-sarif.cc: Likewise.
+       * diagnostic-format-text.cc: Likewise.
+       * diagnostic.cc: Likewise.
+       * dumpfile.cc: Likewise.
+       * gcc-attribute-urlifier.cc: Likewise.
+       * gcc-urlifier.cc: Likewise.
+       * json-parsing.cc: Likewise.
+       * json.cc: Likewise.
+       * lazy-diagnostic-path.cc: Likewise.
+       * libgdiagnostics.cc: Likewise.
+       * libsarifreplay.cc: Likewise.
+       * lto-wrapper.cc: Likewise.
+       * make-unique.h: Delete.
+       * opts-diagnostic.cc: Drop include of "make-unique.h".
+       Replace uses of ::make_unique with std::make_unique.
+       * pretty-print.cc: Likewise.
+       * text-art/style.cc: Likewise.
+       * text-art/styled-string.cc: Likewise.
+       * text-art/table.cc: Likewise.
+       * text-art/tree-widget.cc: Likewise.
+       * text-art/widget.cc: Likewise.
+       * timevar.cc: Likewise.
+       * toplev.cc: Likewise.
+       * tree-diagnostic-client-data-hooks.cc: Likewise.
+
+2025-04-28  David Malcolm  <dmalc...@redhat.com>
+
+       * pass_manager.h (class pass_manager): Add "m_" prefix to all pass
+       fields.
+       * passes.cc (pass_manager::execute_early_local_passes): Update
+       for added "m_" prefix.
+       (pass_manager::execute_pass_mode_switching): Likewise.
+       (pass_manager::finish_optimization_passes): Likewise.
+       (pass_manager::pass_manager): Likewise.
+       (pass_manager::dump_profile_report): Likewise.
+
+2025-04-28  David Malcolm  <dmalc...@redhat.com>
+
+       * diagnostic.h (diagnostic_context::m_opt_permissive): Convert
+       from int to diagnostic_option_id.  Update comment.
+
+2025-04-28  David Malcolm  <dmalc...@redhat.com>
+
+       * diagnostic.h (diagnostic_context::set_abort_on_error): New.
+       (diagnostic_context::m_abort_on_error): Make private.
+       (diagnostic_abort_on_error): Delete.
+       * opts.cc (setup_core_dumping): Update for above changes.
+
+2025-04-28  David Malcolm  <dmalc...@redhat.com>
+
+       * diagnostic-format-sarif.cc (sarif_builder::get_opts): New
+       accessor.
+       (sarif_builder::get_version): Update for...
+       (sarif_builder::m_version): Replace this field...
+       (sarif_builder::m_m_sarif_gen_opts): ...with this.
+       (sarif_builder::sarif_builder): Replace version with
+       sarif_gen_opts throughout.
+       (sarif_builder::make_top_level_object): Use get_version.
+       (sarif_output_format::sarif_output_format): Replace version with
+       sarif_gen_opts throughout.
+       (sarif_stream_output_format::sarif_stream_output_format):
+       Likewise.
+       (sarif_file_output_format::sarif_file_output_format): Likewise.
+       (diagnostic_output_format_init_sarif_stderr): Drop version param
+       and use default for sarif_generation_options instead.
+       (diagnostic_output_format_init_sarif_file): Likewise.
+       (diagnostic_output_format_init_sarif_stream): Likewise.
+       (make_sarif_sink): Replace version with sarif_gen_opts throughout.
+       (sarif_generation_options::sarif_generation_options): New.
+       
(selftest::test_sarif_diagnostic_context::test_sarif_diagnostic_context):
+       Replace version with sarif_gen_opts throughout.
+       (selftest::test_make_location_object): Likewise.
+       (selftest::test_simple_log): Likewise.
+       (selftest::test_simple_log_2): Likewise.
+       (selftest::test_message_with_embedded_link): Likewise.
+       (selftest::test_message_with_braces): Likewise.
+       (selftest::test_buffering): Likewise.
+       (selftest::run_tests_per_version): Replace with...
+       (selftest::for_each_sarif_gen_option): ...this...
+       (selftest::run_line_table_case_tests_per_version): ...and this.
+       (selftest::diagnostic_format_sarif_cc_tests): Update to use
+       for_each_sarif_gen_option and
+       run_line_table_case_tests_per_version.
+       * diagnostic-format-sarif.h (enum class sarif_version): Move lower
+       down.
+       (diagnostic_output_format_init_sarif_stderr): Drop "version"
+       param.
+       (diagnostic_output_format_init_sarif_file): Likewise.
+       (diagnostic_output_format_init_sarif_stream): Likewise.
+       (struct sarif_generation_options): New.
+       (make_sarif_sink): Add "formatted" param.  Replace version param
+       with sarif_gen_opts.
+       * diagnostic.cc (diagnostic_output_format_init): Drop hardcoded
+       sarif_version::v2_1_0 arguments from calls, which instead use
+       the default ctor for sarif_generation_options internally.
+       * libgdiagnostics.cc (sarif_sink::sarif_sink): Replace version
+       param with sarif_gen_opts, and update for changes to
+       make_sarif_sink.
+       (diagnostic_manager_add_sarif_sink): Use sarif_gen_opts rather
+       than version.
+       * opts-diagnostic.cc (sarif_scheme_handler::make_sink): Likewise.
+       Pass "true" for "formatted" param.
+
+2025-04-28  Andrew MacLeod  <amacl...@redhat.com>
+
+       * value-relation.cc (value_relation::swap): New.
+       (value_relation::negate): Remove.
+       (dom_oracle::next_relation): New.
+       (block_relation_iterator::block_relation_iterator): New.
+       (block_relation_iterator::get_next_relation): New.
+       (dom_oracle::dump): Use iterator.
+       * value-relation.h (relation_oracle::next_relation): New.
+       (dom_oracle::next_relation): New prototype.
+       (class block_relation_iterator): New.
+       (FOR_EACH_RELATION_BB): New.
+       (FOR_EACH_RELATION_NAME): New.
+
+2025-04-28  Andrew MacLeod  <amacl...@redhat.com>
+
+       * range-op-ptr.cc (range_operator::lhs_op1_relation): Add
+       prange/prange/irange (PPI) default.
+       (pointer_plus_operator::lhs_op1_relation): New.
+       * range-op.cc (range_op_handler::lhs_op1_relation): Add RO_PPI case.
+       * range-op.h (range_op_handler::lhs_op1_relation): Add prototype.
+
+2025-04-28  Andrew MacLeod  <amacl...@redhat.com>
+
+       * gimple-range-fold.cc (fold_using_range::range_of_range_op): Use a
+       new local variable for intermediate relation results.
+
+2025-04-28  Andrew MacLeod  <amacl...@redhat.com>
+
+       * gimple-range-cache.cc (ranger_cache::apply_inferred_ranges): Pass
+       'this' as the range-query to the inferred range constructor.
+
+2025-04-28  Andrew MacLeod  <amacl...@redhat.com>
+
+       PR tree-optimization/95801
+       * range-op.cc (operator_div::op2_range): New.
+
+2025-04-28  Andrew MacLeod  <amacl...@redhat.com>
+
+       PR tree-optimization/119712
+       * value-range.cc (range_bitmask::adjust_range): Delete.
+       (irange::set_range_from_bitmask): Integrate adjust_range.
+       (irange::update_bitmask): Do nothing if bitmask doesnt change.
+       (irange:intersect_bitmask): Do not call adjust_range. Exit if there
+       is no second bitmask.
+       * value-range.h (adjust_range): Remove prototype.
+
+2025-04-28  Andrew Pinski  <quic_apin...@quicinc.com>
+
+       PR tree-optimization/67797
+       * tree-tailcall.cc (find_tail_calls): Add support for ERF_RETURNS_ARG.
+
+2025-04-28  Andrew Pinski  <quic_apin...@quicinc.com>
+
+       * tree-cfg.cc (verify_gimple_cond): Error out if the comparison
+       throws.
+
+2025-04-28  Andrew Pinski  <quic_apin...@quicinc.com>
+
+       PR c/119432
+       * tree-pretty-print.cc (op_symbol_code): For LROTATE_EXPR,
+       output __ROTATE_LEFT for gimple.
+       For RROTATE_EXPR output __ROTATE_RIGHT for gimple.
+
+2025-04-28  Richard Sandiford  <richard.sandif...@arm.com>
+
+       * rtl.h (native_decode_int): Declare.
+       * simplify-rtx.cc (native_decode_int): New function, split out from...
+       (native_decode_rtx): ...here.
+
+2025-04-28  H.J. Lu  <hjl.to...@gmail.com>
+           Uros Bizjak  <ubiz...@gmail.com>
+
+       PR target/109780
+       PR target/109093
+       * config/i386/i386.cc (stack_access_data): New.
+       (ix86_update_stack_alignment): Likewise.
+       (ix86_find_all_reg_use_1): Likewise.
+       (ix86_find_all_reg_use): Likewise.
+       (ix86_find_max_used_stack_alignment): Also check memory accesses
+       from registers defined by stack or frame registers.
+
+2025-04-28  Richard Biener  <rguent...@suse.de>
+
+       PR ipa/119973
+       * tree-ssa-structalias.cc (create_variable_info_for):
+       Build constraints from DECL_INITIAL directly rather than
+       the IPA reference list which is incomplete.
+
+2025-04-28  Richard Biener  <rguent...@suse.de>
+
+       PR lto/113207
+       * ipa-free-lang-data.cc (fld_type_variant): Add extra checking.
+
+2025-04-28  Richard Biener  <rguent...@suse.de>
+
+       PR tree-optimization/119044
+       * tree-predcom.cc (ref_at_iteration): Copy alias info
+       from the original ref.
+
+2025-04-28  Richard Biener  <rguent...@suse.de>
+
+       PR tree-optimization/119103
+       * tree-ssa-loop-im.cc (in_loop_pipeline): Globalize.
+       (compute_invariantness): Override costing when we run
+       right before PRE and PRE is enabled.
+       (pass_lim::execute): Adjust.
+       * tree-vect-patterns.cc (vect_determine_precisions_from_users):
+       For variable shift amounts use range information.
+
+2025-04-28  Richard Biener  <rguent...@suse.de>
+
+       * genmatch.cc (::gen_transform): Add in_place parameter.
+       Assert it isn't set in unexpected places.
+       (possible_noop_convert): New.
+       (expr::gen_transform): Support in_place and emit code to
+       compute a child in-place when the operation is a conversion.
+       (dt_simplify::gen_1): Arrange for an outermost conversion
+       to be elided by generating the transform of the operand
+       in-place.
+       * match.pd (__real cepxi (x) -> cos (x)): Use single_use.
+
+2025-04-28  Richard Biener  <rguent...@suse.de>
+
+       PR middle-end/60779
+       * common.opt (fcx-method=): New, map to flag_complex_method.
+       (Enum complex_method): New.
+       (fcx-limited-range): Alias to -fcx-method=limited-range.
+       (fcx-fortran-rules): Alias to -fcx-medhot=fortran.
+       * ipa-inline-transform.cc (inline_call): Check flag_complex_method.
+       * ipa-inline.cc (can_inline_edge_by_limits_p): Likewise.
+       * opts.cc (finish_options): Adjust.
+       (set_fast_math_flags): Likewise.
+       * doc/invoke.texi (fcx-method=): Document.
+
+2025-04-28  Richard Biener  <rguent...@suse.de>
+
+       PR middle-end/116083
+       * stor-layout.cc (layout_type): Compute TYPE_SIZE and
+       TYPE_SIZE_UNIT for vector types from the component mode
+       sizes.
+
+2025-04-28  Richard Biener  <rguent...@suse.de>
+
+       * tree-vect-loop.cc (vect_analyze_loop_operations): Prune
+       all actual analysis and only fail when we discover a not
+       SLP covered stmt.
+       (vect_analyze_loop_2): Remove path trying without SLP.
+
+2025-04-28  Richard Biener  <rguent...@suse.de>
+
+       * tree-vect-loop.cc (vect_loop_kill_debug_uses): Remove.
+       (maybe_set_vectorized_backedge_value): Likewise.
+       (vect_transform_loop_stmt): Likewise.  Move dump printing
+       to vect_transform_stmt.
+       (vect_transform_loop): Remove loop over loop stmts transforming
+       them, but retain some DCE code still necessary.
+       * tree-vect-stmts.cc (vect_transform_stmt): Dump that
+       we're vectorizing a stmt.
+
+2025-04-28  Richard Biener  <rguent...@suse.de>
+
+       * params.opt (--param=vect-force-slp): Remove.
+       * doc/invoke.texi (--param=vect-force-slp): Likewise.
+       * tree-vect-loop.cc (vect_analyze_loop_2): Assume
+       param_vect_force_slp is 1.
+       * tree-vect-stmts.cc (vect_analyze_stmt): Likewise.
+
+2025-04-28  Jakub Jelinek  <ja...@redhat.com>
+
+       PR tree-optimization/119493
+       * tree-tailcall.cc (find_tail_calls): Handle non-gimple_reg_type
+       arguments which aren't just passed through for tail recursions
+       even for non-musttail calls.
+
+2025-04-28  LIU Hao  <lh_mo...@126.com>
+
+       PR target/111107
+       * config/i386/cygming.h (STACK_REALIGN_DEFAULT): Copy from sol2.h.
+
 2025-04-27  H.J. Lu  <hjl.to...@gmail.com>
 
        PR c/48274
diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP
index bd9df64a394f..e69718003fe1 100644
--- a/gcc/DATESTAMP
+++ b/gcc/DATESTAMP
@@ -1 +1 @@
-20250428
+20250429
diff --git a/gcc/analyzer/ChangeLog b/gcc/analyzer/ChangeLog
index 443dc6d3124d..ce2f385b62c8 100644
--- a/gcc/analyzer/ChangeLog
+++ b/gcc/analyzer/ChangeLog
@@ -1,3 +1,422 @@
+2025-04-28  David Malcolm  <dmalc...@redhat.com>
+
+       PR analyzer/111536
+       * engine.cc (maybe_update_for_edge): Update for new call_stmt
+       param to region_model::push_frame.
+       * program-state.cc (program_state::push_frame): Likewise.
+       * region-model.cc (region_model::update_for_gcall): Likewise.
+       (region_model::push_frame): Add "call_stmt" param.
+       Handle DECL_RESULT with DECL_BY_REFERENCE set on it by stashing
+       the region of the lhs of the call_stmt in the caller frame,
+       and writing a reference to it within the "result" in the callee
+       frame.
+       (region_model::pop_frame): Don't write back to the LHS for
+       DECL_BY_REFERENCE results.
+       (selftest::test_stack_frames): Update for new call_stmt param to
+       region_model::push_frame.
+       (selftest::test_get_representative_path_var): Likewise.
+       (selftest::test_state_merging): Likewise.
+       (selftest::test_alloca): Likewise.
+       * region-model.h (region_model::push_frame): Add "call_stmt"
+       param.
+       * region.cc: Include "tree-ssa.h".
+       (region::can_have_initial_svalue_p): Use ssa_defined_default_def_p
+       for ssa names, rather than special-casing it for just parameters.
+       This should now also cover DECL_RESULT with DECL_BY_REFERENCE and
+       hard registers.
+       * sm-signal.cc (update_model_for_signal_handler): Update for new
+       call_stmt param to region_model::push_frame.
+       * state-purge.cc (state_purge_per_decl::process_worklists):
+       Likewise.
+
+2025-04-28  David Malcolm  <dmalc...@redhat.com>
+
+       PR analyzer/109366
+       * region-model-manager.cc
+       (region_model_manager::maybe_fold_sub_svalue): Sub-values of zero
+       constants are zero.
+
+2025-04-28  David Malcolm  <dmalc...@redhat.com>
+
+       PR analyzer/97111
+       * analyzer.cc (is_cxa_throw_p): New.
+       (is_cxa_rethrow_p): New.
+       * analyzer.opt (Wanalyzer-throw-of-unexpected-type): New.
+       * analyzer.opt.urls: Regenerate.
+       * call-info.cc (custom_edge_info::create_enode): New.
+       * call-info.h (call_info::print): Drop "final".
+       (call_info::add_events_to_path): Likewise.
+       * checker-event.cc (event_kind_to_string): Add cases for
+       event_kind::catch_, event_kind::throw_, and event_kind::unwind.
+       (explicit_throw_event::print_desc): New.
+       (throw_from_call_to_external_fn_event::print_desc): New.
+       (unwind_event::print_desc): New.
+       * checker-event.h (enum class event_kind): Add catch_, throw_,
+       and unwind.
+       (class catch_cfg_edge_event): New.
+       (class throw_event): New.
+       (class explicit_throw_event): New.
+       (class throw_from_call_to_external_fn_event): New.
+       (class unwind_event): New.
+       * common.h (class eh_dispatch_cfg_superedge): New forward decl.
+       (class eh_dispatch_try_cfg_superedge): New forward decl.
+       (class eh_dispatch_allowed_cfg_superedge): New forward decl.
+       (custom_edge_info::create_enode): New vfunc decl.
+       (is_cxa_throw_p): New decl.
+       (is_cxa_rethrow_p): New decl.
+       * diagnostic-manager.cc
+       (diagnostic_manager::add_events_for_superedge): Special-case edges
+       for eh_dispach_try.
+       (diagnostic_manager::prune_path): Call consolidate_unwind_events.
+       (diagnostic_manager::prune_for_sm_diagnostic): Don't filter the new
+       event_kinds.
+       (diagnostic_manager::consolidate_unwind_events): New.
+       * diagnostic-manager.h
+       (diagnostic_manager::consolidate_unwind_events): New decl.
+       * engine.cc (exploded_node::on_stmt_pre): Handle "__cxa_throw",
+       "__cxa_rethrow", and resx statements.
+       (class throw_custom_edge): New.
+       (class unwind_custom_edge): New.
+       (get_eh_outedge): New.
+       (exploded_graph::unwind_from_exception): New.
+       (exploded_node::on_throw): New.
+       (exploded_node::on_resx): New.
+       (exploded_graph::get_or_create_node): Add "add_to_worklist" param
+       and use it.
+       (exploded_graph::process_node): Use edge_info's create_enode vfunc
+       to create enodes, rather than calling get_or_create_node directly.
+       Ignore CFG edges in the sgraph flagged with EH whilst we're
+       exploring the egraph.
+       (exploded_graph_annotator::print_enode): Handle case
+       exploded_node::status::special.
+       * exploded-graph.h (exploded_node::status): Add value "special".
+       (exploded_node::on_throw): New decl.
+       (exploded_node::on_resx): New decl.
+       (exploded_graph::get_or_create_node): Add optional
+       "add_to_worklist" param.
+       (exploded_graph::unwind_from_exception): New decl.
+       * kf-lang-cp.cc (class kf_cxa_allocate_exception): New.
+       (class kf_cxa_begin_catch): New.
+       (class kf_cxa_end_catch): New.
+       (class throw_of_unexpected_type): New.
+       (class kf_cxa_call_unexpected): New.
+       (register_known_functions_lang_cp): Register known functions
+       "__cxa_allocate_exception", "__cxa_begin_catch",
+       "__cxa_end_catch", and "__cxa_call_unexpected".
+       * kf.cc (class kf_eh_pointer): New.
+       (register_known_functions): Register it for BUILT_IN_EH_POINTER.
+       * region-model.cc: Include "analyzer/function-set.h".
+       (exception_node::operator==): New.
+       (exception_node::dump_to_pp): New.
+       (exception_node::dump): New.
+       (exception_node::to_json): New.
+       (exception_node::make_dump_widget): New.
+       (exception_node::maybe_get_type): New.
+       (exception_node::add_to_reachable_regions): New.
+       (region_model::region_model): Initialize
+       m_thrown_exceptions_stack and m_caught_exceptions_stack.
+       (region_model::operator=): Likewise.
+       (region_model::operator==): Compare them.
+       (region_model::dump_to_pp): Dump exception stacks.
+       (region_model::to_json): Add exception stacks.
+       (region_model::make_dump_widget): Likewise.
+       (class exception_thrown_from_unrecognized_call): New.
+       (get_fns_assumed_not_to_throw): New.
+       (can_throw_p): New.
+       (region_model::check_for_throw_inside_call): New.
+       (region_model::on_call_pre): Call check_for_throw_inside_call
+       on unknown fns or those we don't have a body for.
+       (region_model::maybe_update_for_edge): Handle eh_dispatch_stmt
+       statements.  Drop old code that called
+       apply_constraints_for_exception on EDGE_EH edges.
+       (class rejected_eh_dispatch): New.
+       (exception_matches_type_p): New.
+       (matches_any_exception_type_p): New.
+       (region_model::apply_constraints_for_eh_dispatch): New.
+       (region_model::apply_constraints_for_eh_dispatch_try): New.
+       (region_model::apply_constraints_for_eh_dispatch_allowed): New.
+       (region_model::apply_constraints_for_exception): Delete.
+       (region_model::can_merge_with_p): Don't merge models with
+       non-equal exception stacks.
+       (region_model::get_referenced_base_regions): Add regions from
+       exception stacks.
+       * region-model.h (struct exception_node): New.
+       (region_model::push_thrown_exception): New.
+       (region_model::get_current_thrown_exception): New.
+       (region_model::pop_thrown_exception): New.
+       (region_model::push_caught_exception): New.
+       (region_model::get_current_caught_exception): New.
+       (region_model::pop_caught_exception): New.
+       (region_model::apply_constraints_for_eh_dispatch_try): New decl.
+       (region_model::apply_constraints_for_eh_dispatch_allowed) New decl.
+       (region_model::apply_constraints_for_exception): Delete.
+       (region_model::apply_constraints_for_eh_dispatch): New decl.
+       (region_model::check_for_throw_inside_call): New decl.
+       (region_model::m_thrown_exceptions_stack): New field.
+       (region_model::m_caught_exceptions_stack): New field.
+       * supergraph.cc: Include "except.h" and "analyzer/region-model.h".
+       (supergraph::add_cfg_edge): Special-case eh_dispatch edges.
+       (superedge::get_description): Use default_tree_printer.
+       (get_catch): New.
+       (eh_dispatch_cfg_superedge::make): New.
+       (eh_dispatch_cfg_superedge::eh_dispatch_cfg_superedge): New.
+       (eh_dispatch_cfg_superedge::get_eh_status): New.
+       (eh_dispatch_try_cfg_superedge::dump_label_to_pp): New.
+       (eh_dispatch_try_cfg_superedge::apply_constraints): New.
+       (eh_dispatch_allowed_cfg_superedge::eh_dispatch_allowed_cfg_superedge):
+       New.
+       (eh_dispatch_allowed_cfg_superedge::dump_label_to_pp): New.
+       (eh_dispatch_allowed_cfg_superedge::apply_constraints): New.
+       * supergraph.h: Include "except.h".
+       (superedge::dyn_cast_eh_dispatch_cfg_superedge): New vfunc.
+       (superedge::dyn_cast_eh_dispatch_try_cfg_superedge): New vfunc.
+       (superedge::dyn_cast_eh_dispatch_allowed_cfg_superedge): New
+       vfunc.
+       (class eh_dispatch_cfg_superedge): New.
+       (is_a_helper <const eh_dispatch_cfg_superedge *>::test): New.
+       (class eh_dispatch_try_cfg_superedge): New.
+       (is_a_helper <const eh_dispatch_try_cfg_superedge *>::test): New.
+       (class eh_dispatch_allowed_cfg_superedge): New.
+       (is_a_helper <const eh_dispatch_allowed_cfg_superedge *>::test):
+       New.
+       * svalue.cc (svalue::maybe_get_type_from_typeinfo): New.
+       * svalue.h (svalue::maybe_get_type_from_typeinfo): New decl.
+
+2025-04-28  David Malcolm  <dmalc...@redhat.com>
+
+       * access-diagram.cc: Replace uses of ::make_unique with
+       std::make_unique.
+       * analyzer.cc: Likewise.
+       * bounds-checking.cc: Likewise.
+       * call-details.cc: Likewise.
+       * call-info.cc: Likewise.
+       * call-string.cc: Likewise.
+       * checker-path.cc: Likewise.
+       * common.h: Drop include of "make-unique.h".
+       * constraint-manager.cc: Replace uses of ::make_unique with
+       std::make_unique.
+       * diagnostic-manager.cc: Likewise.
+       * engine.cc: Likewise.
+       * infinite-loop.cc: Likewise.
+       * infinite-recursion.cc: Likewise.
+       * kf-analyzer.cc: Likewise.
+       * kf-lang-cp.cc: Likewise.
+       * kf.cc: Likewise.
+       * pending-diagnostic.cc: Likewise.
+       * program-point.cc: Likewise; drop #include.
+       * program-state.cc: Likewise.
+       * ranges.cc: Likewise.
+       * region-model.cc: Likewise.
+       * region.cc: Likewise; drop #include.
+       * sm-fd.cc: Likewise.
+       * sm-file.cc: Likewise.
+       * sm-malloc.cc: Likewise.
+       * sm-pattern-test.cc: Likewise.
+       * sm-sensitive.cc: Likewise.
+       * sm-signal.cc: Likewise.
+       * sm-taint.cc: Likewise.
+       * sm.cc: Likewise.
+       * store.cc: Likewise.
+       * supergraph.cc: Likewise.
+       * svalue.cc: Likewise; drop #include.
+       * varargs.cc: Likewise.
+
+2025-04-28  David Malcolm  <dmalc...@redhat.com>
+
+       * engine.cc (class plugin_analyzer_init_impl): Convert
+       "m_checkers" to use std::vector of std::unique_ptr.  Convert
+       "m_known_fn_mgr" to a reference.
+       (impl_run_checkers): Convert "checkers" to use std::vector of
+       std::unique_ptr and move it into the extrinsic_state.
+       * program-state.cc (extrinsic_state::dump_to_pp): Update for
+       changes to m_checkers.
+       (extrinsic_state::to_json): Likewise.
+       (extrinsic_state::get_sm_idx_by_name): Likewise.
+       (selftest::test_sm_state_map): Update to use std::unique_ptr
+       for state machines.
+       (selftest::test_program_state_1): Likewise.
+       (selftest::test_program_state_2): Likewise.
+       (selftest::test_program_state_merging): Likewise.
+       (selftest::test_program_state_merging_2): Likewise.
+       * program-state.h (class extrinsic_state): Convert "m_checkers" to
+       use std::vector of std::unique_ptr and to be owned by this object,
+       rather than a reference.  Add ctor for use in selftests.
+       * sm-fd.cc (make_fd_state_machine): Update to use std::unique_ptr.
+       * sm-file.cc (make_fileptr_state_machine): Likewise.
+       * sm-malloc.cc (make_malloc_state_machine): Likewise.
+       * sm-pattern-test.cc (make_pattern_test_state_machine): Likewise.
+       * sm-sensitive.cc (make_sensitive_state_machine): Likewise.
+       * sm-signal.cc (make_signal_state_machine): Likewise.
+       * sm-taint.cc (make_taint_state_machine): Likewise.
+       * sm.cc: Define INCLUDE_LIST.
+       (make_checkers): Return the vector directly, rather than pass it
+       in by reference.  Update to use std::unique_ptr throughout.  Use
+       an intermediate list, and use that to filter with
+       flag_analyzer_checker, fixing memory leak for this case.
+       * sm.h: (make_checkers): Return the vector directly, rather than
+       pass it in by reference, and use std::vector of std::unique_ptr.
+       (make_malloc_state_machine): Convert return type to use std::unique_ptr.
+       (make_fileptr_state_machine): Likewise.
+       (make_taint_state_machine): Likewise.
+       (make_sensitive_state_machine): Likewise.
+       (make_signal_state_machine): Likewise.
+       (make_pattern_test_state_machine): Likewise.
+       (make_va_list_state_machine): Likewise.
+       (make_fd_state_machine): Likewise.
+       * varargs.cc (make_va_list_state_machine): Update to use
+       std::unique_ptr.
+
+2025-04-28  David Malcolm  <dmalc...@redhat.com>
+
+       * call-summary.cc (call_summary_replay::call_summary_replay):
+       Convert "summary" from call_summary * to call_summary &.
+       (call_summary_replay::dump_to_pp): Likewise for m_summary.
+       * call-summary.h (call_summary_replay::call_summary_replay):
+       Likewise for "summary".
+       (call_summary_replay::m_summary): Likewise.
+       * engine.cc (call_summary_edge_info::call_summary_edge_info):
+       Likewise.
+       (call_summary_edge_info::update_state): Likewise.
+       (call_summary_edge_info::update_model): Likewise.
+       (call_summary_edge_info::print_desc): Likewise for m_summary.
+       (call_summary_edge_info::m_summary): Likewise.
+       (exploded_node::replay_call_summaries): Update for change to
+       replay_call_summary.
+       (exploded_node::replay_call_summary): Convert "summary" from
+       call_summary * to call_summary &.
+       * exploded-graph.h (exploded_node::replay_call_summary): Likewise.
+
+2025-04-28  David Malcolm  <dmalc...@redhat.com>
+
+       * analyzer.cc: Convert gcall * to gcall & where we know the
+       pointer must be non-null.
+       * call-details.cc: Likewise.
+       * call-details.h: Likewise.
+       * call-info.cc: Likewise.
+       * call-info.h: Likewise.
+       * call-summary.h: Likewise.
+       * checker-event.cc: Likewise.
+       * checker-event.h: Likewise.
+       * common.h: Likewise.
+       * diagnostic-manager.cc: Likewise.
+       * engine.cc: Likewise.
+       * exploded-graph.h: Likewise.
+       * kf-analyzer.cc: Likewise.
+       * kf-lang-cp.cc: Likewise.
+       * kf.cc: Likewise.
+       * known-function-manager.cc: Likewise.
+       * program-state.cc: Likewise.
+       * program-state.h: Likewise.
+       * region-model.cc: Likewise.
+       * region-model.h: Likewise.
+       * sm-fd.cc: Likewise.
+       * sm-file.cc: Likewise.
+       * sm-malloc.cc: Likewise.
+       * sm-sensitive.cc: Likewise.
+       * sm-signal.cc: Likewise.
+       * sm-taint.cc: Likewise.
+       * sm.h: Likewise.
+       * store.cc: Likewise.
+       * store.h: Likewise.
+       * supergraph.cc: Likewise.
+       * supergraph.h: Likewise.
+       * svalue.h: Likewise.
+       * varargs.cc: Likewise.
+
+2025-04-28  David Malcolm  <dmalc...@redhat.com>
+
+       * access-diagram.cc: Convert enum access_direction to
+       "enum class".
+       * bounds-checking.cc: Likewise.
+       * checker-event.cc: Convert enum event_kind to "enum class".
+       * checker-event.h: Likewise.
+       * checker-path.cc: Likewise.
+       * common.h: Convert enum access_direction to "enum class".
+       * constraint-manager.cc: Convert enum bound_kind to "enum class".
+       * constraint-manager.h: Likewise.
+       * diagnostic-manager.cc: Convert enum event_kind to "enum class".
+       * engine.cc: Convert enum status to "enum class".
+       * exploded-graph.h: Likewise.
+       * infinite-loop.cc: Likewise.
+       * kf-lang-cp.cc: Convert enum poison_kind to "enum class".
+       * kf.cc: Likewise.
+       * region-model-manager.cc: Likewise.
+       * region-model.cc: Likewise; also for enum access_direction.
+       * svalue.cc: Likewise.
+       * svalue.h: Likewise.
+
+2025-04-28  David Malcolm  <dmalc...@redhat.com>
+
+       * analyzer.h: Rename to...
+       * common.h: ...this.  Add define of INCLUDE_VECTOR, includes of
+       "config.h", "system.h", "coretypes.h", "make-unique.h", "tree.h",
+       "function.h", "basic-block.h", "gimple.h", "options.h",
+       "bitmap.h", "diagnostic-core.h", and "diagnostic-path.h".
+       * access-diagram.h: Don't include "analyzer/analyzer.h".
+       * access-diagram.cc: Reorganize includes to #include
+       "analyzer/common.h" first, then group by subsystem, dropping
+       redundant headers.
+       * analysis-plan.cc: Likewise.
+       * analyzer-language.cc: Likewise.
+       * analyzer-pass.cc: Likewise.
+       * analyzer-selftests.cc: Likewise.
+       * analyzer.cc: Likewise.
+       * bounds-checking.cc: Likewise.
+       * call-details.cc: Likewise.
+       * call-info.cc: Likewise.
+       * call-string.cc: Likewise.
+       * call-summary.cc: Likewise.
+       * checker-event.cc: Likewise.
+       * checker-path.cc: Likewise.
+       * complexity.cc: Likewise.
+       * constraint-manager.cc: Likewise.
+       * diagnostic-manager.cc: Likewise.
+       * engine.cc: Likewise.
+       * feasible-graph.cc: Likewise.
+       * infinite-loop.cc: Likewise.
+       * infinite-recursion.cc: Likewise.
+       * kf-analyzer.cc: Likewise.
+       * kf-lang-cp.cc: Likewise.
+       * kf.cc: Likewise.
+       * known-function-manager.cc: Likewise.
+       * pending-diagnostic.cc: Likewise.
+       * program-point.cc: Likewise.
+       * program-state.cc: Likewise.
+       * ranges.cc: Likewise.
+       * record-layout.cc: Likewise.
+       * region-model-asm.cc: Likewise.
+       * region-model-manager.cc: Likewise.
+       * region-model-reachability.cc: Likewise.
+       * region-model.cc: Likewise.
+       * region.cc: Likewise.
+       * sm-fd.cc: Likewise.
+       * sm-file.cc: Likewise.
+       * sm-malloc.cc: Likewise.
+       * sm-pattern-test.cc: Likewise.
+       * sm-sensitive.cc: Likewise.
+       * sm-signal.cc: Likewise.
+       * sm-taint.cc: Likewise.
+       * sm.cc: Likewise.
+       * state-purge.cc: Likewise.
+       * store.cc: Likewise.
+       * supergraph.cc: Likewise.
+       * svalue.cc: Likewise.
+       * symbol.cc: Likewise.
+       * trimmed-graph.cc: Likewise.
+       * varargs.cc: Likewise.
+
+2025-04-28  David Malcolm  <dmalc...@redhat.com>
+
+       * region-model.cc (region_model::on_stmt_pre): Use internal_error
+       if we see an unexpected gimple stmt code.
+
+2025-04-28  David Malcolm  <dmalc...@redhat.com>
+
+       * call-details.cc (call_details::dump): New overload.
+       (call_details::make_dump_widget): New.
+       * call-details.h (call_details::dump): Declare new overload.
+       (call_details::make_dump_widget): New decl.
+
 2025-03-14  Jakub Jelinek  <ja...@redhat.com>
 
        PR analyzer/119278
diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog
index 732b2c95d8e7..1572c8ba9f90 100644
--- a/gcc/c-family/ChangeLog
+++ b/gcc/c-family/ChangeLog
@@ -1,3 +1,20 @@
+2025-04-28  David Malcolm  <dmalc...@redhat.com>
+
+       * c-pretty-print.cc: Drop include of "make-unique.h".
+       Replace uses of ::make_unique with std::make_unique.
+
+2025-04-28  David Malcolm  <dmalc...@redhat.com>
+
+       * name-hint.h (name_hint::name_hint): Use std::unique_ptr for
+       param.
+
+2025-04-28  Lewis Hyatt  <lhy...@gmail.com>
+
+       PR c/118838
+       * c-lex.cc (cb_def_pragma): Call cpp_get_diagnostic_override_loc()
+       to get a valid location at which to issue -Wunknown-pragmas, in case
+       it was triggered from a _Pragma.
+
 2025-04-25  Jason Merrill  <ja...@redhat.com>
 
        * c-opts.cc (c_common_post_options): Bump default ABI to 21
diff --git a/gcc/c/ChangeLog b/gcc/c/ChangeLog
index c8f9206fb7c9..4c8fde71aeba 100644
--- a/gcc/c/ChangeLog
+++ b/gcc/c/ChangeLog
@@ -1,3 +1,31 @@
+2025-04-28  David Malcolm  <dmalc...@redhat.com>
+
+       * c-decl.cc: Drop include of "make-unique.h".
+       Replace uses of ::make_unique with std::make_unique.
+       * c-objc-common.cc: Likewise.
+       * c-parser.cc: Likewise.
+
+2025-04-28  David Malcolm  <dmalc...@redhat.com>
+
+       * c-decl.cc: Include "make-unique.h".
+       (lookup_name_fuzzy): Use ::make_unique rather than "new" when
+       making suggest_missing_header and suggest_missing_option.
+       * c-parser.cc: Include "make-unique.h"
+       (c_parser_error_richloc): Use ::make_unique rather than "new" when
+       making suggest_missing_header.
+
+2025-04-28  Andrew Pinski  <quic_apin...@quicinc.com>
+
+       PR c/119432
+       * gimple-parser.cc (gimple_binary_identifier_code): Add
+       __ROTATE_LEFT and __ROTATE_RIGHT.
+
+2025-04-28  Andrew Pinski  <quic_apin...@quicinc.com>
+
+       * gimple-parser.cc (gimple_binary_identifier_code): New variable.
+       (c_parser_gimple_binary_expression): Use gimple_binary_identifier_code
+       instead of doing if statements on the strings.
+
 2025-04-27  H.J. Lu  <hjl.to...@gmail.com>
 
        PR c/48274
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 9d5db0657779..480e9c43157d 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,38 @@
+2025-04-28  David Malcolm  <dmalc...@redhat.com>
+
+       * parser.cc: Include "analyzer/analyzer-language.h".
+       (ana::cp_translation_unit): New class.
+       (cp_parser_translation_unit): Add call to
+       ana::on_finish_translation_unit.
+
+2025-04-28  David Malcolm  <dmalc...@redhat.com>
+
+       * cxx-pretty-print.cc: Drop include of "make-unique.h".
+       Replace uses of ::make_unique with std::make_unique.
+       * error.cc: Likewise.
+       * name-lookup.cc: Likewise.
+       * parser.cc: Likewise.
+
+2025-04-28  David Malcolm  <dmalc...@redhat.com>
+
+       * name-lookup.cc: Include "make-unique.h".
+       (namespace_hints::convert_candidates_to_name_hint): Use
+       ::make_unique rather than "new" when making
+       show_candidate_location and suggest_alternatives.
+       (namespace_hints::maybe_decorate_with_limit): Likewise when making
+       namespace_limit_reached.
+       (suggest_alternatives_for_1): Likewise when making
+       suggest_missing_option.
+       (maybe_suggest_missing_std_header): Likewise when making
+       missing_std_header.
+       (macro_use_before_def::maybe_make): Use std::unique_ptr.
+       (macro_use_before_def::macro_use_before_def): Make public.
+       (lookup_name_fuzzy): Use ::make_unique rather than "new" when
+       making suggest_missing_header.
+       * parser.cc: Include "make-unique.h".
+       (cp_parser_error_1): Use ::make_unique rather than "new" when
+       making suggest_missing_header.
+
 2025-04-27  Nathaniel Shead  <nathanielosh...@gmail.com>
 
        PR c++/119939
diff --git a/gcc/jit/ChangeLog b/gcc/jit/ChangeLog
index f0b70c2e00da..adee3de4d1f9 100644
--- a/gcc/jit/ChangeLog
+++ b/gcc/jit/ChangeLog
@@ -1,3 +1,8 @@
+2025-04-28  David Malcolm  <dmalc...@redhat.com>
+
+       * dummy-frontend.cc: Drop include of "make-unique.h".
+       Replace uses of ::make_unique with std::make_unique.
+
 2025-03-29  Iain Sandoe  <i...@sandoe.co.uk>
 
        * libgccjit.exports: Add symbols for ABI 28 to 34.
diff --git a/gcc/rust/ChangeLog b/gcc/rust/ChangeLog
index 453b9f73701f..5cb931132662 100644
--- a/gcc/rust/ChangeLog
+++ b/gcc/rust/ChangeLog
@@ -1,3 +1,356 @@
+2025-04-28  Owen Avery  <powerboat9.ga...@gmail.com>
+
+       * checks/errors/borrowck/rust-bir-place.h
+       (IndexVec::size_type): Add.
+       (IndexVec::MAX_INDEX): Add.
+       (IndexVec::size): Change the return type to the type of the
+       internal value used by the index type.
+       (PlaceDB::lookup_or_add_variable): Use the return value from the
+       PlaceDB::add_place call.
+       * checks/errors/borrowck/rust-bir.h
+       (struct BasicBlockId): Move this definition before the
+       definition of the struct Function.
+
+2025-04-28  Pierre-Emmanuel Patry  <pierre-emmanuel.pa...@embecosm.com>
+
+       * ast/rust-ast-visitor.cc (DefaultASTVisitor::visit): Visit visibility.
+
+2025-04-28  Owen Avery  <powerboat9.ga...@gmail.com>
+
+       * ast/rust-ast-visitor.cc
+       (DefaultASTVisitor::visit): Visit the loop labels of
+       WhileLetLoopExpr instances before visiting their scrutinee
+       expressions.
+       * resolve/rust-early-name-resolver-2.0.cc
+       (Early::resolve_glob_import): Pass the glob import's path
+       directly to NameResolutionContext::resolve_path.
+       * resolve/rust-toplevel-name-resolver-2.0.cc
+       (TopLevel::visit): Remove unnecessary call to
+       Identifier::as_string.
+       (flatten_glob): Improve handling of cases where a glob use tree
+       has no path.
+
+2025-04-28  Pierre-Emmanuel Patry  <pierre-emmanuel.pa...@embecosm.com>
+
+       * expand/rust-derive-clone.cc (DeriveClone::clone_enum_struct): Clone
+       path to avoid using the same nodeid.
+
+2025-04-28  Pierre-Emmanuel Patry  <pierre-emmanuel.pa...@embecosm.com>
+
+       * ast/rust-ast-visitor.cc (DefaultASTVisitor::visit_function_params):
+       Add specialized function to visit function parameters.
+       (DefaultASTVisitor::visit): Remove parameter visit and call specialized
+       function instead.
+       * ast/rust-ast-visitor.h: Add function prototye.
+       * resolve/rust-late-name-resolver-2.0.cc (Late::visit): Remove
+       function.
+       (Late::visit_function_params): Override specialized visit function.
+       * resolve/rust-late-name-resolver-2.0.h: Add overriden function
+       prototype.
+
+2025-04-28  Pierre-Emmanuel Patry  <pierre-emmanuel.pa...@embecosm.com>
+
+       * resolve/rust-name-resolution-context.h: Use BindingLayer instead.
+       * resolve/rust-name-resolution-context.cc (BindingLayer::BindingLayer):
+       Add new constructor for binding layer.
+       (BindingLayer::bind_test): Add a function to test a binding constraint.
+       (BindingLayer::push): Push a new binding group.
+       (BindingLayer::and_binded): Add function to test and-binding
+       constraint.
+       (BindingLayer::or_binded): Add function to test or-binding constraints.
+       (BindingLayer::insert_ident): Insert a new identifier in the current
+       binding group.
+       (BindingLayer::merge): Merge current binding group with it's parent.
+       (BindingLayer::get_source): Get the source of the current binding
+       group.
+       * resolve/rust-late-name-resolver-2.0.cc: Use stacked context for
+       binding group.
+       * util/rust-stacked-contexts.h: Add mutable peek function.
+
+2025-04-28  Pierre-Emmanuel Patry  <pierre-emmanuel.pa...@embecosm.com>
+
+       * resolve/rust-late-name-resolver-2.0.cc (Late::visit): Add binding
+       creation in visitor.
+       * resolve/rust-late-name-resolver-2.0.h: Add function prototypes.
+       * resolve/rust-name-resolution-context.h: Add binding context.
+
+2025-04-28  Pierre-Emmanuel Patry  <pierre-emmanuel.pa...@embecosm.com>
+
+       * resolve/rust-name-resolution-context.h (struct Binding): Add Binding
+       struct to differentiate Or and Product bindings in patterns.
+       (enum class): Add Binding kind.
+       (class BindingContext): Add binding context with Binding stack.
+
+2025-04-28  Pierre-Emmanuel Patry  <pierre-emmanuel.pa...@embecosm.com>
+
+       * ast/rust-ast.h: Add hash function.
+
+2025-04-28  Pierre-Emmanuel Patry  <pierre-emmanuel.pa...@embecosm.com>
+
+       * ast/rust-ast.h: Add equality operator.
+
+2025-04-28  Pierre-Emmanuel Patry  <pierre-emmanuel.pa...@embecosm.com>
+
+       * resolve/rust-default-resolver.cc (DefaultResolver::visit): Add visit
+       function for TypeParam.
+       * resolve/rust-default-resolver.h: Add function prototype.
+       * resolve/rust-forever-stack.h: Add function to check for forward
+       declaration ban.
+       * resolve/rust-late-name-resolver-2.0.cc (Late::visit): Check forward
+       declarations.
+
+2025-04-28  Pierre-Emmanuel Patry  <pierre-emmanuel.pa...@embecosm.com>
+
+       * ast/rust-ast-collector.cc (TokenCollector::visit): Remove error kind
+       and change function call.
+       * ast/rust-ast-visitor.cc (DefaultASTVisitor::visit): Change call name.
+       * ast/rust-path.cc (ConstGenericParam::as_string): Likewise.
+       * ast/rust-path.h: Remove error kind.
+       * hir/rust-ast-lower-type.cc (ASTLowerGenericParam::visit): Change call
+       name.
+       * parse/rust-parse-impl.h (Parser::parse_generic_param): Use optional
+       on parsing failure.
+       (Parser::parse_generic_arg): Likewise.
+       (Parser::parse_path_generic_args): Likewise.
+       * parse/rust-parse.h: Likewise.
+       * resolve/rust-ast-resolve-type.h: Change call name.
+
+2025-04-28  Pierre-Emmanuel Patry  <pierre-emmanuel.pa...@embecosm.com>
+
+       * resolve/rust-late-name-resolver-2.0.cc (Late::visit): Change error
+       message.
+
+2025-04-28  Owen Avery  <powerboat9.ga...@gmail.com>
+
+       * resolve/rust-early-name-resolver-2.0.cc
+       (Early::build_import_mapping): Avoid outputting an "unresolved
+       import" error if other errors are outputted during resolution.
+       * resolve/rust-early-name-resolver-2.0.h
+       (Early::resolve_path_in_all_ns): Collect path resolution errors
+       while avoiding duplicate errors for resolutions in each
+       namespace.
+       * resolve/rust-forever-stack.h
+       (ForeverStack::resolve_path): Add parameter for collecting
+       errors.
+       (ForeverStack::find_starting_point): Likewise.
+       (ForeverStack::resolve_segments): Likewise.
+       * resolve/rust-forever-stack.hxx
+       (check_leading_kw_at_start): Likewise.
+       (ForeverStack::find_starting_point): Likewise.
+       (ForeverStack::resolve_segments): Likewise.
+       (ForeverStack::resolve_path): Likewise.
+       * resolve/rust-name-resolution-context.h
+       (NameResolutionContext::resolve_path): Add optional parameter
+       for collecting errors.
+
+2025-04-28  Philip Herron  <herron.phi...@googlemail.com>
+
+       * backend/rust-compile-expr.cc (CompileExpr::array_copied_expr): 
prealloc the vector
+
+2025-04-28  Philip Herron  <herron.phi...@googlemail.com>
+
+       * ast/rust-ast-visitor.cc (DefaultASTVisitor::visit): add guard
+       * expand/rust-expand-visitor.cc (ExpandVisitor::visit): add guard
+
+2025-04-28  Owen Avery  <powerboat9.ga...@gmail.com>
+
+       * resolve/rust-ast-resolve-path.cc
+       (ResolvePath::resolve_path): Adjust error messages.
+       * resolve/rust-ast-resolve-type.cc
+       (ResolveRelativeTypePath::go): Likewise.
+       * resolve/rust-forever-stack.hxx
+       (check_leading_kw_at_start): Likewise.
+
+2025-04-28  Philip Herron  <herron.phi...@googlemail.com>
+
+       * typecheck/rust-hir-type-check-expr.cc (TypeCheckExpr::visit): fix bad 
assertion
+
+2025-04-28  Owen Avery  <powerboat9.ga...@gmail.com>
+
+       * resolve/rust-forever-stack.hxx
+       (ForeverStack::resolve_path): Pass instance of Node to lambda by
+       reference instead of by value.
+
+2025-04-28  Philip Herron  <herron.phi...@googlemail.com>
+
+       * typecheck/rust-hir-type-check-struct-field.h: keep reference to 
parent expression
+       * typecheck/rust-hir-type-check-struct.cc 
(TypeCheckStructExpr::TypeCheckStructExpr):
+       update ctor
+       (TypeCheckStructExpr::resolve): remove bad rust_fatal_errors
+       (TypeCheckStructExpr::visit): cleanup errors
+
+2025-04-28  Owen Avery  <powerboat9.ga...@gmail.com>
+
+       * resolve/rust-late-name-resolver-2.0.cc
+       (Late::visit): Handle StructPatternFieldIdent.
+       * resolve/rust-late-name-resolver-2.0.h
+       (Late::visit): Likewise.
+
+2025-04-28  Pierre-Emmanuel Patry  <pierre-emmanuel.pa...@embecosm.com>
+
+       * ast/rust-ast-collector.cc (TokenCollector::visit): Dump llvm inline
+       asm tokens.
+
+2025-04-28  Pierre-Emmanuel Patry  <pierre-emmanuel.pa...@embecosm.com>
+
+       * ast/rust-ast-collector.cc (TokenCollector::visit): Remove unreachable
+       code.
+       * ast/rust-expr.h (struct LlvmOperand): Add LlvmOperand struct to
+       represent input and outputs.
+       (class LlvmInlineAsm): Add input, output and clobber operands.
+       (struct TupleTemplateStr): Add locus getter.
+       * backend/rust-compile-block.h: Add visit for LlvmInlineAsm.
+       * backend/rust-compile-expr.cc (CompileExpr::visit): Add llvm inline
+       asm stmt compilation.
+       * backend/rust-compile-expr.h: Add function prototype.
+       * backend/rust-compile-asm.h (class CompileLlvmAsm): Add llvm asm hir
+       not to gimple.
+       * backend/rust-compile-asm.cc (CompileLlvmAsm::CompileLlvmAsm): Add
+       constructor.
+       (CompileLlvmAsm::construct_operands): Add function to construct operand
+       tree.
+       (CompileLlvmAsm::construct_clobbers): Add function to construct clobber
+       tree.
+       (CompileLlvmAsm::tree_codegen_asm): Generate the whole tree for a given
+       llvm inline assembly node.
+       * checks/errors/borrowck/rust-bir-builder-expr-stmt.cc 
(ExprStmtBuilder::visit):
+       Add visit function.
+       * checks/errors/borrowck/rust-bir-builder-expr-stmt.h: Add function
+       prototype.
+       * checks/errors/borrowck/rust-bir-builder-lazyboolexpr.h: Add visit
+       function.
+       * checks/errors/borrowck/rust-bir-builder-struct.h: Likewise.
+       * checks/errors/borrowck/rust-function-collector.h: Likewise.
+       * checks/errors/privacy/rust-privacy-reporter.cc 
(PrivacyReporter::visit):
+       Likewise.
+       * checks/errors/privacy/rust-privacy-reporter.h: Add visit function
+       prototype.
+       * checks/errors/rust-const-checker.cc (ConstChecker::visit): Add visit
+       function.
+       * checks/errors/rust-const-checker.h: Add visit function prototype.
+       * checks/errors/rust-hir-pattern-analysis.cc (PatternChecker::visit):
+       Add visit function.
+       * checks/errors/rust-hir-pattern-analysis.h: Add visit function
+       prototype.
+       * checks/errors/rust-unsafe-checker.cc (UnsafeChecker::visit): Add
+       visit function.
+       * checks/errors/rust-unsafe-checker.h: Add function prototype.
+       * expand/rust-macro-builtins-asm.cc (parse_llvm_templates): Parse
+       templates.
+       (parse_llvm_arguments): Add function to parse non template tokens.
+       (parse_llvm_operands): Add function to parse operands, either input or
+       output.
+       (parse_llvm_outputs): Add function to parse and collect llvm asm
+       outputs.
+       (parse_llvm_inputs): Likewise with inputs.
+       (parse_llvm_clobbers): Add function to parse llvm asm clobbers.
+       (parse_llvm_options): Add function to parse llvm asm options.
+       (parse_llvm_asm): Add function to parse llvm asm.
+       * expand/rust-macro-builtins-asm.h (class LlvmAsmContext): Add context
+       for llvm asm parser.
+       (parse_llvm_outputs): Add function prototype.
+       (parse_llvm_inputs): Likewise.
+       (parse_llvm_clobbers): Likewise.
+       (parse_llvm_options): Likewise.
+       * hir/rust-ast-lower-expr.cc (ASTLoweringExpr::visit): Lower AST llvm
+       asm node to HIR.
+       * hir/rust-ast-lower-expr.h: Add function prototype.
+       * hir/rust-hir-dump.cc (Dump::visit): Add visit function.
+       * hir/rust-hir-dump.h: Add function prototype.
+       * hir/tree/rust-hir-expr-abstract.h: Add HIR llvm asm node kind.
+       * hir/tree/rust-hir-expr.h (struct LlvmOperand): Add LlvmOperand type
+       to represent input and outputs.
+       (class LlvmInlineAsm): Add LlvmInlineAsm hir node.
+       * hir/tree/rust-hir-full-decls.h (class LlvmInlineAsm): Add
+       LlvmInlineAsm hir node forward declaration.
+       * hir/tree/rust-hir-visitor.h: Add visit functions for LlvmInlineAsm
+       hir node.
+       * hir/tree/rust-hir.cc (LlvmInlineAsm::accept_vis): Add hir node
+       visitor related functions.
+       * typecheck/rust-hir-type-check-expr.cc (TypeCheckExpr::visit):
+       Type check input and output operands.
+       * typecheck/rust-hir-type-check-expr.h: Add function prototype.
+       * ast/rust-ast-visitor.cc (DefaultASTVisitor::visit): Visit input and
+       output operand expressions.
+       * resolve/rust-ast-resolve-expr.cc (ResolveExpr::visit): Resolve input
+       and output expressions.
+       * resolve/rust-ast-resolve-expr.h: Add function prototypes.
+
+2025-04-28  Pierre-Emmanuel Patry  <pierre-emmanuel.pa...@embecosm.com>
+
+       * ast/rust-ast-collector.cc (TokenCollector::visit): Make visitor
+       unreachable.
+       * ast/rust-ast-collector.h: Add visit for LlvmInlineAsmNode.
+       * ast/rust-ast-visitor.cc (DefaultASTVisitor::visit): Add visit
+       function for the default ast visitor.
+       * ast/rust-ast-visitor.h: Add function prototype.
+       * ast/rust-ast.cc (LlvmInlineAsm::accept_vis): Add accept_vis to
+       LlvmInlineAsm node.
+       * ast/rust-ast.h: Add LlvmInlineAsm node kind.
+       * ast/rust-expr.h (class LlvmInlineAsm): Add LlvmInlineAsm node.
+       * expand/rust-derive.h: Add visit function for LlvmInlineAsm node.
+       * expand/rust-macro-builtins-asm.cc (MacroBuiltin::llvm_asm_handler):
+       Add handler for llvm inline assembly nodes.
+       (parse_llvm_asm): Add function to parse llvm assembly nodes.
+       * expand/rust-macro-builtins-asm.h (parse_llvm_asm): Add function
+       prototypes.
+       * expand/rust-macro-builtins.cc (inline_llvm_asm_maker): Add macro
+       transcriber.
+       * expand/rust-macro-builtins.h: Add transcriber function prototype.
+       * hir/rust-ast-lower-base.cc (ASTLoweringBase::visit): Add visit
+       function for LlvmInlineAsm node.
+       * hir/rust-ast-lower-base.h: Add visit function prototype.
+       * resolve/rust-ast-resolve-base.cc (ResolverBase::visit): Add visit
+       function for LlvmInlineAsm node.
+       * resolve/rust-ast-resolve-base.h: Add visit function prototype.
+
+2025-04-28  Pierre-Emmanuel Patry  <pierre-emmanuel.pa...@embecosm.com>
+
+       * expand/rust-macro-builtins-asm.cc (parse_asm_arg): Emit error
+       message.
+
+2025-04-28  Philip Herron  <herron.phi...@googlemail.com>
+
+       * typecheck/rust-hir-type-check-item.cc (TypeCheckItem::visit): add 
diagnostic
+       * typecheck/rust-tyty.cc (BaseType::contains_infer): new helper to grab 
first infer var
+       * typecheck/rust-tyty.h: prototype
+
+2025-04-28  Philip Herron  <herron.phi...@googlemail.com>
+
+       * rust-gcc.cc (arithmetic_or_logical_expression): Ensure this is an 
integer
+
+2025-04-28  Philip Herron  <herron.phi...@googlemail.com>
+
+       * hir/rust-hir-dump.cc (Dump::visit): add guard for optional label
+
+2025-04-28  Yap Zhi Heng  <yapz...@gmail.com>
+
+       * typecheck/rust-tyty.h: Remove extra redundant comment.
+       * typecheck/rust-hir-type-check-base.cc: Update comment on repr
+       handling.
+
+2025-04-28  Zhi Heng  <yapz...@gmail.com>
+
+       * typecheck/rust-hir-type-check-base.cc: Set enum representing
+       type properly if repr is an integer type.
+       * typecheck/rust-hir-type-check-item.cc: Update comments.
+
+2025-04-28  Zhi Heng  <yapz...@gmail.com>
+
+       * typecheck/rust-tyty.h: Add new `ReprKind` enum to
+       `ReprOptions`.
+       * typecheck/rust-hir-type-check-base.cc: Handle setting of
+       `repr_kind`.
+       * typecheck/rust-hir-type-check-item.cc: New check for
+       zero-variant enums.
+
+2025-04-28  Philip Herron  <herron.phi...@googlemail.com>
+
+       * checks/errors/rust-unsafe-checker.cc (UnsafeChecker::visit): add null 
check
+       * hir/tree/rust-hir-item.h: add has_type helper
+       * typecheck/rust-hir-trait-resolve.cc 
(TraitItemReference::resolve_item):
+       add missing type checking
+
 2025-04-14  Arthur Cohen  <arthur.co...@embecosm.com>
 
        * util/rust-lang-item.h: Add new manually_drop lang item.
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 314de8d2efa4..053765b699cd 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,315 @@
+2025-04-28  David Malcolm  <dmalc...@redhat.com>
+
+       PR analyzer/111536
+       * c-c++-common/analyzer/hard-reg-1.c: New test.
+       * g++.dg/analyzer/nrvo-1.C: New test.
+       * g++.dg/analyzer/nrvo-2.C: New test.
+       * g++.dg/analyzer/nrvo-pr111536-1.C: New test.
+       * g++.dg/analyzer/nrvo-pr111536-1b.C: New test.
+       * g++.dg/analyzer/nrvo-pr111536-2.C: New test.
+       * g++.dg/analyzer/nrvo-pr111536-2b.C: New test.
+
+2025-04-28  David Malcolm  <dmalc...@redhat.com>
+
+       PR analyzer/109366
+       * g++.dg/analyzer/unique_ptr-1.C: New test.
+       * g++.dg/analyzer/unique_ptr-2.C: New test.
+
+2025-04-28  David Malcolm  <dmalc...@redhat.com>
+
+       PR analyzer/97111
+       * c-c++-common/analyzer/analyzer-verbosity-2a.c: Add
+       -fno-exceptions.
+       * c-c++-common/analyzer/analyzer-verbosity-3a.c: Likewise.
+       * c-c++-common/analyzer/attr-const-2.c: Add
+       __attribute__((nothrow)).
+       * c-c++-common/analyzer/attr-malloc-4.c: Likewise.
+       * c-c++-common/analyzer/attr-malloc-5.c: Likewise.
+       * c-c++-common/analyzer/attr-malloc-6.c: Add -fno-exceptions.
+       * c-c++-common/analyzer/attr-malloc-CVE-2019-19078-usb-leak.c:
+       Likewise.
+       * c-c++-common/analyzer/attr-malloc-exception.c: New test.
+       * c-c++-common/analyzer/call-summaries-pr107158-2.c: Add
+       -fno-exceptions.
+       * c-c++-common/analyzer/call-summaries-pr107158.c: Likewise.
+       * c-c++-common/analyzer/capacity-2.c: Likewise.
+       * c-c++-common/analyzer/coreutils-sum-pr108666.c: Likewise.
+       * c-c++-common/analyzer/data-model-22.c: Likewise.
+       * c-c++-common/analyzer/data-model-5d.c: Likewise.
+       * c-c++-common/analyzer/deref-before-check-pr108455-git-pack-revindex.c:
+       Likewise.
+       * c-c++-common/analyzer/deref-before-check-pr108475-haproxy-tcpcheck.c:
+       Likewise.
+       * c-c++-common/analyzer/edges-2.c: Likewise.
+       * c-c++-common/analyzer/fd-2.c: Likewise.
+       * c-c++-common/analyzer/fd-3.c: Likewise.
+       * c-c++-common/analyzer/fd-meaning.c: Likewise.
+       * c-c++-common/analyzer/file-1.c: Likewise.
+       * c-c++-common/analyzer/file-3.c: Likewise.
+       * c-c++-common/analyzer/file-meaning-1.c: Likewise.
+       * c-c++-common/analyzer/infinite-recursion.c: Likewise.
+       * c-c++-common/analyzer/leak-3.c: Likewise.
+       * c-c++-common/analyzer/malloc-dedupe-1.c: Likewise.
+       * c-c++-common/analyzer/malloc-in-loop.c: Likewise.
+       * c-c++-common/analyzer/malloc-many-paths-3.c: Likewise.
+       * c-c++-common/analyzer/malloc-paths-5.c: Likewise.
+       * c-c++-common/analyzer/malloc-paths-7.c: Likewise.
+       * c-c++-common/analyzer/malloc-paths-8.c: Likewise.
+       * c-c++-common/analyzer/malloc-vs-local-1a.c: Likewise.
+       * c-c++-common/analyzer/malloc-vs-local-2.c: Likewise.
+       * c-c++-common/analyzer/malloc-vs-local-3.c: Likewise.
+       * c-c++-common/analyzer/paths-7.c: Likewise.
+       * c-c++-common/analyzer/pr110830.c: Likewise.
+       * c-c++-common/analyzer/pr93032-mztools-simplified.c: Likewise.
+       * c-c++-common/analyzer/pr93355-localealias-feasibility-3.c:
+       Likewise.
+       * c-c++-common/analyzer/pr93355-localealias-simplified.c:
+       Likewise.
+       * c-c++-common/analyzer/pr96650-1-trans.c: Likewise.
+       * c-c++-common/analyzer/pr97072.c: Add __attribute__((nothrow)).
+       * c-c++-common/analyzer/pr98575-1.c: Likewise.
+       * c-c++-common/analyzer/pr99716-1.c: Add -fno-exceptions.
+       * c-c++-common/analyzer/pr99716-2.c: Likewise.
+       * c-c++-common/analyzer/pr99716-3.c: Likewise.
+       * c-c++-common/analyzer/pragma-2.c: Likewise.
+       * c-c++-common/analyzer/rhbz1878600.c: Likewise.
+       * c-c++-common/analyzer/strndup-1.c: Likewise.
+       * c-c++-common/analyzer/write-to-string-literal-4-disabled.c:
+       Likewise.
+       * c-c++-common/analyzer/write-to-string-literal-4.c: Likewise.
+       * c-c++-common/analyzer/write-to-string-literal-5.c: Likewise.
+       * c-c++-common/analyzer/zlib-5.c: Likewise.
+       * g++.dg/analyzer/exception-could-throw-1.C: New test.
+       * g++.dg/analyzer/exception-could-throw-2.C: New test.
+       * g++.dg/analyzer/exception-dynamic-spec.C: New test.
+       * g++.dg/analyzer/exception-leak-1.C: New test.
+       * g++.dg/analyzer/exception-leak-2.C: New test.
+       * g++.dg/analyzer/exception-leak-3.C: New test.
+       * g++.dg/analyzer/exception-leak-4.C: New test.
+       * g++.dg/analyzer/exception-leak-5.C: New test.
+       * g++.dg/analyzer/exception-leak-6.C: New test.
+       * g++.dg/analyzer/exception-nothrow.C: New test.
+       * g++.dg/analyzer/exception-path-1.C: New test.
+       * g++.dg/analyzer/exception-path-catch-all-1.C: New test.
+       * g++.dg/analyzer/exception-path-catch-all-2.C: New test.
+       * g++.dg/analyzer/exception-path-unwind-multiple-2.C: New test.
+       * g++.dg/analyzer/exception-path-unwind-multiple.C: New test.
+       * g++.dg/analyzer/exception-path-unwind-single.C: New test.
+       * g++.dg/analyzer/exception-path-with-cleanups.C: New test.
+       * g++.dg/analyzer/exception-rethrow-1.C: New test.
+       * g++.dg/analyzer/exception-rethrow-2.C: New test.
+       * g++.dg/analyzer/exception-stack-1.C: New test.
+       * g++.dg/analyzer/exception-stack-2.C: New test.
+       * g++.dg/analyzer/exception-subclass-1.C: New test.
+       * g++.dg/analyzer/exception-subclass-2.C: New test.
+       * g++.dg/analyzer/exception-value-1.C: New test.
+       * g++.dg/analyzer/exception-value-2.C: New test.
+       * g++.dg/analyzer/fno-exception.C: New test.
+       * g++.dg/analyzer/pr94028.C: Drop xfail.
+       * g++.dg/analyzer/std-unexpected.C: New test.
+       * g++.dg/coroutines/pr105287.C: Drop dg-excess-errors.
+
+2025-04-28  David Malcolm  <dmalc...@redhat.com>
+
+       * gcc.dg/plugin/analyzer_cpython_plugin.cc: Drop include of
+       "make-unique.h".  Replace uses of ::make_unique with
+       std::make_unique.
+       * gcc.dg/plugin/analyzer_gil_plugin.cc: Likewise.
+       * gcc.dg/plugin/analyzer_kernel_plugin.cc: Likewise.
+       * gcc.dg/plugin/analyzer_known_fns_plugin.cc: Likewise.
+       * gcc.dg/plugin/diagnostic_group_plugin.cc: Likewise.
+       * gcc.dg/plugin/diagnostic_plugin_xhtml_format.cc: Likewise.
+
+2025-04-28  David Malcolm  <dmalc...@redhat.com>
+
+       * gcc.dg/plugin/analyzer_gil_plugin.cc: Convert gcall * to gcall &
+       where we know the pointer must be non-null.
+
+2025-04-28  David Malcolm  <dmalc...@redhat.com>
+
+       * gcc.dg/plugin/analyzer_cpython_plugin.cc: Convert
+       enum poison_kind to "enum class".
+
+2025-04-28  David Malcolm  <dmalc...@redhat.com>
+
+       * gcc.dg/plugin/analyzer_cpython_plugin.cc: Update for renaming
+       of analyzer/analyzer.h to analyzer/common.h.
+       * gcc.dg/plugin/analyzer_gil_plugin.cc: Likewise.
+       * gcc.dg/plugin/analyzer_kernel_plugin.cc: Likewise.
+       * gcc.dg/plugin/analyzer_known_fns_plugin.cc: Likewise.
+
+2025-04-28  Andrew MacLeod  <amacl...@redhat.com>
+
+       PR tree-optimization/95801
+       * gcc.dg/tree-ssa/pr95801.c: New.
+
+2025-04-28  Andrew MacLeod  <amacl...@redhat.com>
+
+       PR tree-optimization/119712
+       * gcc.dg/pr119712.c: New.
+       * gcc.dg/pr83072-2.c: Adjust.
+       * gcc.dg/tree-ssa/phi-opt-value-5.c: Adjust.
+       * gcc.dg/tree-ssa/vrp122.c: Adjust
+
+2025-04-28  Andrew Pinski  <quic_apin...@quicinc.com>
+
+       PR tree-optimization/67797
+       * gcc.dg/tree-ssa/tailcall-14.c: New test.
+       * gcc.dg/tree-ssa/tailcall-15.c: New test.
+
+2025-04-28  Andrew Pinski  <quic_apin...@quicinc.com>
+
+       PR c/119432
+       * gcc.dg/gimplefe-57.c: New test.
+
+2025-04-28  Andrew Pinski  <quic_apin...@quicinc.com>
+
+       PR tree-optimization/100038
+       * g++.dg/tree-ssa/pr100038.C: New test.
+
+2025-04-28  Pierre-Emmanuel Patry  <pierre-emmanuel.pa...@embecosm.com>
+
+       * rust/compile/nr2/exclude: Remove now passing test from exclusion
+       list.
+
+2025-04-28  Pierre-Emmanuel Patry  <pierre-emmanuel.pa...@embecosm.com>
+
+       * rust/compile/nr2/exclude: Remove passing test from exclusion list.
+
+2025-04-28  Pierre-Emmanuel Patry  <pierre-emmanuel.pa...@embecosm.com>
+
+       * rust/compile/multiple_bindings1.rs: Add missing lang items.
+
+2025-04-28  Pierre-Emmanuel Patry  <pierre-emmanuel.pa...@embecosm.com>
+
+       * rust/compile/nr2/exclude: Remove test from exclusion list.
+       * rust/compile/use_1.rs: Change expected output and remove test from
+       nr1.
+
+2025-04-28  Pierre-Emmanuel Patry  <pierre-emmanuel.pa...@embecosm.com>
+
+       * rust/compile/generics9.rs: Change expected error message.
+       * rust/compile/nr2/exclude: Remove test from exclusion list.
+
+2025-04-28  Pierre-Emmanuel Patry  <pierre-emmanuel.pa...@embecosm.com>
+
+       * rust/compile/nr2/exclude: Remove passing test from exclusion list.
+
+2025-04-28  Owen Avery  <powerboat9.ga...@gmail.com>
+
+       * rust/compile/nr2/exclude: Remove entry.
+
+2025-04-28  Owen Avery  <powerboat9.ga...@gmail.com>
+
+       * rust/compile/derive-debug1.rs: Adjust a path.
+       * rust/compile/nr2/exclude: Remove derive-debug1.rs.
+
+2025-04-28  Philip Herron  <herron.phi...@googlemail.com>
+
+       * rust/compile/nr2/exclude: nr2 is missing error for this
+       * rust/compile/issue-3649.rs: New test.
+
+2025-04-28  Owen Avery  <powerboat9.ga...@gmail.com>
+
+       * rust/compile/issue-3568.rs: Adjust expected errors.
+       * rust/compile/name_resolution9.rs: Likewise.
+       * rust/compile/self-path2.rs: Likewise.
+
+2025-04-28  Philip Herron  <herron.phi...@googlemail.com>
+
+       * rust/compile/nonexistent-field.rs: fix bad error message
+       * rust/compile/issue-3581-1.rs: New test.
+       * rust/compile/issue-3581-2.rs: New test.
+
+2025-04-28  Philip Herron  <herron.phi...@googlemail.com>
+
+       * rust/compile/nr2/exclude: nr2 does not error on the T it should 
require Self::T
+       * rust/compile/issue-3652.rs: New test.
+
+2025-04-28  Philip Herron  <herron.phi...@googlemail.com>
+
+       * rust/compile/macros/mbe/macro-issue2983_2984.rs: cleanup error 
diagnotics
+       * rust/compile/struct_init1.rs: likewise
+       * rust/compile/issue-3628.rs: New test.
+
+2025-04-28  Owen Avery  <powerboat9.ga...@gmail.com>
+
+       * rust/compile/nr2/exclude: Remove entry.
+
+2025-04-28  Philip Herron  <herron.phi...@googlemail.com>
+
+       * rust/compile/issue-3662.rs: New test.
+
+2025-04-28  Philip Herron  <herron.phi...@googlemail.com>
+
+       * rust/compile/issue-3711.rs: New test.
+
+2025-04-28  Pierre-Emmanuel Patry  <pierre-emmanuel.pa...@embecosm.com>
+
+       * rust/compile/black_box.rs: New test.
+
+2025-04-28  Pierre-Emmanuel Patry  <pierre-emmanuel.pa...@embecosm.com>
+
+       * rust/execute/black_box.rs: New test.
+
+2025-04-28  Philip Herron  <herron.phi...@googlemail.com>
+
+       * rust/compile/issue-402.rs: New test.
+
+2025-04-28  Philip Herron  <herron.phi...@googlemail.com>
+
+       * rust/compile/issue-3664.rs: New test.
+
+2025-04-28  Zhi Heng  <yapz...@gmail.com>
+
+       * rust/compile/issue-3530-1.rs: New file.
+       * rust/compile/issue-3530-2.rs: New file.
+
+2025-04-28  Philip Herron  <herron.phi...@googlemail.com>
+
+       * rust/compile/issue-3612.rs: New test.
+
+2025-04-28  H.J. Lu  <hjl.to...@gmail.com>
+           Uros Bizjak  <ubiz...@gmail.com>
+
+       PR target/109780
+       PR target/109093
+       * g++.target/i386/pr109780-1.C: New test.
+       * gcc.target/i386/pr109093-1.c: Likewise.
+       * gcc.target/i386/pr109780-1.c: Likewise.
+       * gcc.target/i386/pr109780-2.c: Likewise.
+       * gcc.target/i386/pr109780-3.c: Likewise.
+
+2025-04-28  Richard Biener  <rguent...@suse.de>
+
+       PR ipa/119973
+       * gcc.dg/torture/pr119973.c: New testcase.
+
+2025-04-28  Richard Biener  <rguent...@suse.de>
+
+       PR tree-optimization/119103
+       * gcc.target/i386/pr119103.c: New testcase.
+
+2025-04-28  Richard Biener  <rguent...@suse.de>
+
+       PR middle-end/60779
+       * gcc.dg/lto/pr60779_0.c: New testcase.
+       * gcc.dg/lto/pr60779_1.c: Likewise.
+
+2025-04-28  Lewis Hyatt  <lhy...@gmail.com>
+
+       PR c/118838
+       * c-c++-common/cpp/pragma-diagnostic-loc-2.c: New test.
+       * g++.dg/gomp/macro-4.C: Adjust expected output.
+       * gcc.dg/gomp/macro-4.c: Likewise.
+       * gcc.dg/cpp/Wunknown-pragmas-1.c: Likewise.
+
+2025-04-28  Jonathan Yong  <10wa...@gmail.com>
+
+       * gcc.dg/graphite/id-15.c: Use __SIZE_TYPE__ instead of
+       unsigned long.
+       * gcc.dg/plugin/infoleak-net-ethtool-ioctl.c: ditto.
+
 2025-04-27  Nathaniel Shead  <nathanielosh...@gmail.com>
 
        PR c++/119939
diff --git a/libcpp/ChangeLog b/libcpp/ChangeLog
index 775b0001b3a2..9a5208c27717 100644
--- a/libcpp/ChangeLog
+++ b/libcpp/ChangeLog
@@ -1,3 +1,9 @@
+2025-04-28  Lewis Hyatt  <lhy...@gmail.com>
+
+       PR c/118838
+       * errors.cc (cpp_get_diagnostic_override_loc): New function.
+       * include/cpplib.h (cpp_get_diagnostic_override_loc): Declare.
+
 2025-04-24  Jakub Jelinek  <ja...@redhat.com>
 
        PR c++/110343
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 7458220f6ca0..3d27c9114522 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,67 @@
+2025-04-28  Giuseppe D'Angelo  <giuseppe.dang...@kdab.com>
+
+       * testsuite/20_util/shared_ptr/requirements/1.cc: Test both
+       shared_ptr and weak_ptr.
+       Add more tests.
+       * testsuite/20_util/weak_ptr/requirements/1.cc: Removed as
+       superseded by the other test.
+
+2025-04-28  Tomasz Kamiński  <tkami...@redhat.com>
+
+       PR libstdc++/119970
+       * include/std/ostream (vprint_unicode) [_WIN32 && !__CYGWIN__]: Call
+       _Str_sink::_M_span instead of view.
+       * include/std/print (vprint_unicode) [_WIN32 && !__CYGWIN__]: Call
+       _Str_sink::_M_span instead of view.
+
+2025-04-28  Tomasz Kamiński  <tkami...@redhat.com>
+
+       * include/bits/ranges_base.h (__detail::__range_key_type):
+       Replace remove_const_t with remove_cvref_t.
+       (__detail::__range_mapped_type): Apply remove_cvref_t.
+       * include/bits/stl_iterator.h: (__detail::__iter_key_t):
+       Replace remove_const_t with __remove_cvref_t.
+       (__detail::__iter_val_t): Apply __remove_cvref_t.
+       * testsuite/23_containers/flat_map/1.cc: New tests.
+       * testsuite/23_containers/flat_multimap/1.cc: New tests.
+       * testsuite/23_containers/map/cons/deduction.cc: New tests.
+       * testsuite/23_containers/map/cons/from_range.cc: New tests.
+       * testsuite/23_containers/multimap/cons/deduction.cc: New tests.
+       * testsuite/23_containers/multimap/cons/from_range.cc: New tests.
+       * testsuite/23_containers/unordered_map/cons/deduction.cc: New tests.
+       * testsuite/23_containers/unordered_map/cons/from_range.cc: New tests.
+       * testsuite/23_containers/unordered_multimap/cons/deduction.cc:
+       New tests.
+       * testsuite/23_containers/unordered_multimap/cons/from_range.cc:
+       New tests.
+
+2025-04-28  Tomasz Kamiński  <tkami...@redhat.com>
+
+       * include/bits/unordered_map.h (unordered_map):
+       Define constructors accepting:
+       (_InputIterator, _InputIterator, const allocator_type&),
+       (initializer_list<value_type>, const allocator_type&),
+       (unordered_multimap): Likewise.
+       * include/debug/unordered_map (unordered_map): Likewise.
+       (unordered_multimap): Likewise.
+       * include/bits/unordered_set.h (unordered_set):
+       Define constructors and deduction guide accepting:
+       (_InputIterator, _InputIterator, const allocator_type&),
+       (initializer_list<value_type>, const allocator_type&),
+       (unordered_multiset): Likewise.
+       * include/debug/unordered_set (unordered_set): Likewise.
+       (unordered_multiset): Likewise.
+       * testsuite/23_containers/unordered_map/cons/66055.cc: New tests.
+       * testsuite/23_containers/unordered_map/cons/deduction.cc: New tests.
+       * testsuite/23_containers/unordered_multimap/cons/66055.cc: New tests.
+       * testsuite/23_containers/unordered_multimap/cons/deduction.cc: New
+       tests.
+       * testsuite/23_containers/unordered_multiset/cons/66055.cc: New tests.
+       * testsuite/23_containers/unordered_multiset/cons/deduction.cc: New
+       tests.
+       * testsuite/23_containers/unordered_set/cons/66055.cc: New tests.
+       * testsuite/23_containers/unordered_set/cons/deduction.cc: New tests.
+
 2025-04-25  Jonathan Wakely  <jwak...@redhat.com>
 
        * include/bits/ptr_traits.h (to_address): Use markdown for

Reply via email to