https://gcc.gnu.org/g:e5af677005c7ab7a86f825bfabd6b665044f68fd

commit r17-2271-ge5af677005c7ab7a86f825bfabd6b665044f68fd
Author: GCC Administrator <[email protected]>
Date:   Thu Jul 9 00:16:52 2026 +0000

    Daily bump.

Diff:
---
 gcc/ChangeLog           | 227 +++++++++++++++++++++
 gcc/DATESTAMP           |   2 +-
 gcc/c-family/ChangeLog  |   6 +
 gcc/c/ChangeLog         |  27 +++
 gcc/cobol/ChangeLog     |  44 ++++
 gcc/fortran/ChangeLog   |  51 +++++
 gcc/rust/ChangeLog      | 532 ++++++++++++++++++++++++++++++++++++++++++++++++
 gcc/testsuite/ChangeLog | 288 ++++++++++++++++++++++++++
 libgcc/ChangeLog        |   8 +
 libgfortran/ChangeLog   |  17 ++
 libstdc++-v3/ChangeLog  |  13 ++
 11 files changed, 1214 insertions(+), 1 deletion(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 2340e2ed0c8e..770f30ca1a10 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,230 @@
+2026-07-08  Jim Lin  <[email protected]>
+
+       * config/riscv/riscv.h (TARGET_SFB_ALU): Add andes_45_series.
+
+2026-07-08  Uros Bizjak  <[email protected]>
+
+       PR target/126148
+       * config/i386/i386-expand.cc (ix86_gen_ccmp_first): Restrict
+       floating-point modes accepted for ccmp according to the
+       available floating-point instruction set.
+
+2026-07-08  Jeff Law  <[email protected]>
+
+       PR rtl-optimization/126136
+       * ifcvt.cc (noce_try_store_flag_logical): Fix for STORE_FLAG_VALUE
+       of -1.
+
+2026-07-08  Jim Lin  <[email protected]>
+
+       * config/riscv/spacemit-x60.md (spacemit_x60_alu): Remove cpop
+       from the type list.
+
+2026-07-08  Richard Biener  <[email protected]>
+
+       * tree-vect-slp.cc (vect_build_slp_tree_1): Remove group_size
+       argument and adjust.
+       (vect_build_slp_tree_2): Likewise.
+       (vect_build_slp_tree): Likewise.
+       (optimize_load_redistribution_1): Likewise.
+       (vect_build_slp_instance): Likewise.
+       (vect_analyze_slp_reduc_chain): Likewise.
+       (vect_analyze_slp_reduction): Likewise.
+       (vect_analyze_slp_reduction_group): Likewise.
+       (vect_analyze_slp_instance): Likewise.
+       (vect_lower_load_permutations): Likewise.
+
+2026-07-08  Richard Biener  <[email protected]>
+
+       PR tree-optimization/126150
+       * tree-cfg.cc (replace_uses_by): Delay purging of EH edges
+       until after FOR_EACH_IMM_USE_STMT finished.
+
+2026-07-08  Martin Uecker  <[email protected]>
+
+       * tree.h (flexible_array_member_type_p): New helper function.
+       * tree.cc (flexible_array_member_type_p): New helper function.
+       (flexible_array_type_p): Use new helper function.
+
+2026-07-08  Richard Biener  <[email protected]>
+
+       PR tree-optimization/126159
+       * tree-data-ref.cc (dr_analyze_indices): Handle non-aggregate
+       union field accesses.
+       (access_fn_component_p): Adjust.
+
+2026-07-08  Pengfei Li  <[email protected]>
+
+       * match.pd: Simplify SAD(x, x, acc) into acc.
+
+2026-07-08  Evgeny Karpov  <[email protected]>
+
+       * config/i386/cygming.h (TARGET_ASM_FUNCTION_END_PROLOGUE):
+       Rename.
+       (TARGET_ASM_EMIT_EXCEPT_PERSONALITY): Likewise.
+       (TARGET_ASM_INIT_SECTIONS): Likewise.
+       (SUBTARGET_ASM_UNWIND_INIT): Likewise.
+       (ASM_DECLARE_FUNCTION_SIZE): Likewise.
+       (ASM_DECLARE_COLD_FUNCTION_SIZE): Likewise.
+       * config/i386/i386-protos.h (i386_pe_end_function):
+       Remove declarations.
+       (i386_pe_end_cold_function): Likewise.
+       (i386_pe_seh_init): Likewise.
+       (i386_pe_seh_end_prologue): Likewise.
+       (i386_pe_seh_cold_init): Likewise.
+       (i386_pe_seh_emit_except_personality): Likewise.
+       (i386_pe_seh_init_sections): Likewise.
+       * config/mingw/winnt.cc (defined): Update.
+       (struct seh_frame_state): Move to mingw/winnt.h.
+       (i386_pe_seh_init): Rename into ...
+       (mingw_pe_seh_init): ... this.
+       (i386_pe_seh_end_prologue): Rename into ...
+       (mingw_pe_seh_end_prologue): ... this.
+       (i386_pe_seh_cold_init): Rename into ...
+       (mingw_pe_seh_cold_init): ... this.
+       (i386_pe_seh_fini): Rename into ...
+       (mingw_pe_seh_fini): ... this.
+       (seh_emit_stackalloc): Rename into ...
+       (mingw_pe_seh_emit_stackalloc): ... this.
+       (seh_cfa_adjust_cfa): Update.
+       (seh_frame_related_expr): Update.
+       (i386_pe_seh_emit_except_personality): Rename into ...
+       (mingw_pe_seh_emit_except_personality): ... this.
+       (i386_pe_seh_init_sections): Rename into ...
+       (mingw_pe_seh_init_sections): ... this.
+       (i386_pe_end_function): Rename into ...
+       (mingw_pe_end_function): ... this.
+       (i386_pe_end_cold_function): Rename into ...
+       (mingw_pe_end_cold_function): ... this.
+       * config/mingw/winnt.h (struct seh_frame_state):
+       Move from mingw/winnt.cc.
+       (mingw_pe_end_cold_function): Add declarations.
+       (mingw_pe_end_function): Likewise.
+       (mingw_pe_seh_init): Likewise.
+       (mingw_pe_seh_init_sections): Likewise.
+       (mingw_pe_seh_cold_init): Likewise.
+       (mingw_pe_seh_emit_except_personality): Likewise.
+       (mingw_pe_seh_end_prologue): Likewise.
+
+2026-07-08  Tamar Christina  <[email protected]>
+
+       * tree-vect-data-refs.cc (vect_create_addr_base_for_vector_ref):
+       Restructure computations to force separate base.
+
+2026-07-08  Tamar Christina  <[email protected]>
+
+       * tree-vect-data-refs.cc (vect_slp_analyze_store_dependences,
+       vect_slp_analyze_load_dependences,
+       vect_slp_analyze_instance_dependence): Use for-each over for with len.
+       * tree-vect-slp.cc (vect_mark_slp_stmts_relevant,
+       ,vect_find_last_scalar_stmt_in_slp, vect_find_first_scalar_stmt_in_slp,
+       vect_build_slp_store_interleaving, vect_analyze_slp,
+       vect_slp_prune_covered_roots, vect_bb_partition_graph_r,
+       vect_remove_slp_scalar_calls): Likewise.
+
+2026-07-08  Richard Biener  <[email protected]>
+
+       * gimple-ssa-pta-constraints.cc (find_func_aliases_for_builtin_call):
+       Correctly use SCALAR rhs from the variadic argument part of
+       the function info or from NONLOCAL in case of intra-PTA.
+       (find_func_aliases_for_call): Handle .VA_ARG.
+
+2026-07-08  Philipp Tomsich  <[email protected]>
+
+       * config/aarch64/tuning_models/ampere1.h (ampere1_scalar_issue_info)
+       (ampere1_advsimd_issue_info, ampere1_vec_issue_info): New.
+       (ampere1_vector_cost): Use ampere1_vec_issue_info for issue_info.
+       * config/aarch64/tuning_models/ampere1b.h (ampere1b_scalar_issue_info)
+       (ampere1b_advsimd_issue_info, ampere1b_vec_issue_info): New.
+       (ampere1b_vector_cost): Use ampere1b_vec_issue_info for issue_info.
+
+2026-07-08  H.J. Lu  <[email protected]>
+           Richard Sandiford  <[email protected]>
+
+       PR target/124798
+       PR target/125436
+       * config/i386/i386-expand.cc: Include "function-abi.h".
+       (x86_64_ms_sysv_extra_clobbered_registers): Removed.
+       (ix86_expand_call): Don't add explicit call and ABI-switch
+       clobbers.
+       * config/i386/i386-features.cc (ix86_emit_tls_call): Call
+       ix86_tls_get_addr_abi to get GNU TLS ABI and use it, instead of
+       default_function_abi, for registers clobbered by GNU TLS call.
+       (ix86_place_single_tls_call): Set CALL_INSN_ABI_ID on TLS calls.
+       * config/i386/i386-options.cc (ix86_set_current_function): Don't
+       call reinit_regs.
+       * config/i386/i386-protos.h
+       (ix86_type_no_callee_saved_registers_p): Removed.
+       (ix86_tls_get_addr_abi): New.
+       * config/i386/i386.cc (ix86_alternate_abi): New prototype.
+       (ix86_conditional_register_usage): Changed to describe the
+       system ABI.
+       (ix86_type_no_callee_saved_registers_p): Make it static.
+       (ix86_function_value_regno_p): Replace ix86_cfun_abi () with
+       ix86_abi.
+       (ix86_save_reg): Only check TYPE_NO_CALLEE_SAVED_REGISTERS as
+       a special case.
+       (ix86_tls_get_addr_abi): New.
+       (legitimize_tls_address): Set CALL_INSN_ABI_ID on TLS calls.
+       Call ix86_alternate_abi to initialize the alternate function ABI.
+       (ix86_initialize_abi): New function.
+       (ix86_no_callee_saved_abi): Likewise.
+       (ix86_no_caller_saved_abi): Likewise.
+       (ix86_standard_abi): Likewise.
+       (ix86_alternate_abi): Likewise.
+       (ix86_function_abi_id): Likewise.
+       (ix86_fntype_abi): Likewise.
+       (ix86_hard_regno_call_part_clobbered): Handle newly added ABIs.
+       (TARGET_FNTYPE_ABI): New.
+       * config/i386/i386.md: Add ABI_ALTERNATE, ABI_NO_CALLEE_SAVED,
+       ABI_NO_CALLER_SAVED_RETURN_VOID, ABI_NO_CALLER_SAVED_RETURN_AX,
+       ABI_NO_CALLER_SAVED_RETURN_AX_DX,
+       ABI_NO_CALLER_SAVED_RETURN_AX_XMM0,
+       ABI_NO_CALLER_SAVED_RETURN_XMM0 and
+       ABI_NO_CALLER_SAVED_RETURN_XMM0_XMM1.
+
+2026-07-08  Richard Sandiford  <[email protected]>
+
+       * config/i386/i386.cc (ix86_function_arg): Remove always-true
+       condition.
+
+2026-07-08  Richard Sandiford  <[email protected]>
+
+       * config/i386/i386-features.cc: Include function-abi.h.
+       (ix86_emit_tls_call): Use default_function_abi instead of
+       call_used_regs.
+       * config/i386/i386.cc (x86_order_regs_for_local_alloc): Likewise.
+       (ix86_save_reg, x86_64_select_profile_regnum): Use crtl->abi
+       instead of call_used_regs.
+
+2026-07-08  Richard Sandiford  <[email protected]>
+
+       * config/i386/i386-protos.h (ix86_fntype_call_saved_registers):
+       Declare.
+       * config/i386/i386-options.cc (ix86_fntype_call_saved_registers): New
+       function, split out from...
+       (ix86_set_func_type): ...here.  Avoid calling it if the result
+       would be ignored.
+       * config/i386/i386.cc (ix86_type_no_callee_saved_registers_p): Use
+       ix86_fntype_call_saved_registers instead of querying attributes
+       directly.
+
+2026-07-08  Pan Li  <[email protected]>
+
+       * config/riscv/constraints.md (Wtt): Rename to Wvr to
+       indicate widen vector register constraint.
+       * config/riscv/riscv-protos.h (riscv_widen_overlap_ok): Rename
+       from...
+       (riscv_vector_mode_p): Add new decl for riscv-v.cc visibile.
+       (riscv_hard_regno_nregs): Ditto.
+       (riscv_v_widen_constraint_ok): Rename to...
+       * config/riscv/riscv-v.cc (riscv_v_widen_constraint_ok): Rename
+       to... and take care of Wvr constraint.
+       * config/riscv/riscv.cc (riscv_vector_mode_p): Remove static.
+       (riscv_hard_regno_nregs): Ditto.
+       (riscv_widen_overlap_ok): Remove.
+       * config/riscv/vector.md: Rename to Wvr.
+
 2026-07-07  Richard Earnshaw  <[email protected]>
 
        * config/aarch64/aarch64-option-extensions.def (AARCH64_OPT_EXTENSION):
diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP
index 60ebd5a31783..76403c9887d1 100644
--- a/gcc/DATESTAMP
+++ b/gcc/DATESTAMP
@@ -1 +1 @@
-20260708
+20260709
diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog
index 9fa5a27dbc73..b007bf17d097 100644
--- a/gcc/c-family/ChangeLog
+++ b/gcc/c-family/ChangeLog
@@ -1,3 +1,9 @@
+2026-07-08  Martin Uecker  <[email protected]>
+
+       * c-attribs.cc (handle_counted_by_attribute): Adapt.
+       * c-common.h (c_flexible_array_member_type_p): Remove.
+       * c-common.cc (c_flexible_array_member_type_p): Remove.
+
 2026-06-30  Jakub Jelinek  <[email protected]>
 
        PR c++/125837
diff --git a/gcc/c/ChangeLog b/gcc/c/ChangeLog
index b0b84638689a..38d90f6d0959 100644
--- a/gcc/c/ChangeLog
+++ b/gcc/c/ChangeLog
@@ -1,3 +1,30 @@
+2026-07-08  Martin Uecker  <[email protected]>
+
+       * c-tree.h (zero_length_array_type_p,
+       c_build_array_type_zero_size) Add prototypes.
+       * c-decl.cc (zero_length_array_type_p): External linkage.
+       (c_build_array_type_zero_size): New.
+       (grokdeclarator): Use new function.
+       * c-typeck.cc (c_verify_type): New consistency checks.
+       (c_build_array_type_zero_size): New function
+       (composite_type_internal): Refactor.
+       (comptypes_internal): Refactor.
+
+2026-07-08  Martin Uecker  <[email protected]>
+
+       * c-decl.cc (grokdeclarator): Add assertion.
+       (add_flexible_array_elts_to_size): Adapt.
+       (is_flexible_array_member_p): Adapt.
+       (verify_counted_by_attribute): Adapt.
+       (finish_struct): Adapt.
+       * c-typeck.cc (check_counted_by_attribute): Adapt.
+       (build_counted_by_ref): Adapt.
+       (build_access_with_size_for_counted_by): Adapt.
+       (handle_counted_by_for_component_ref): Adapt.
+       (c_incomplete_type_error): Use new helper function.
+       (digest_init): Use new helper function.
+       (pop_init_level): Use new helper function.
+
 2026-06-30  Chung-Lin Tang  <[email protected]>
 
        * c-typeck.cc (c_finish_omp_clauses): Fix comments.
diff --git a/gcc/cobol/ChangeLog b/gcc/cobol/ChangeLog
index 965bed032086..4d2700a1ab6c 100644
--- a/gcc/cobol/ChangeLog
+++ b/gcc/cobol/ChangeLog
@@ -1,3 +1,47 @@
+2026-07-08  James K. Lowden  <[email protected]>
+
+       * genapi.cc (parser_call_targets_dump): Remove function.
+       * genapi.h (parser_call_targets_dump): Same.
+       * parse.y: Instantiate forward labels consistently.
+       (label_add) Capture forward references for efficiency.
+       (paragraph_reference) Use forward reference.
+       (label_add_once): New function.
+       * parse_ante.h (label_add_once): Declare function.
+       (label_instantiate): New function.
+       (ast_enter_exit_section): Improve debug message.
+       * symbols.cc (label_cmp): Allow forward reference to have a parent.
+       (cbl_label_ref_t): Remove class.
+       (symbol_label): Whitespace.
+       (symbols_dump): Add information to output.
+       (symbol_add): Remove program label symbol-assignment to 
symbol_label_add.
+       (cbl_label_t::str): Add information to output.
+       (symbol_label_add): Assign id to program label.
+       * symbols.h (class cbl_label_ref_t): Remove.
+       (struct symbol_elem_t): Remove struct keyword.
+       (struct cbl_label_t): Same.
+       (struct cbl_special_name_t): Same.
+       (struct cbl_field_t): Same.
+       (symbol_typedef): Same.
+       (symbol_field): Same.
+       (symbol_label): Same.
+       (symbol_function): Same.
+       (symbol_function_any): Same.
+       (symbol_program): Same.
+       (symbol_literalA): Same.
+       (symbol_special): Same.
+       (symbol_locale): Same.
+       (symbol_alphabet): Same.
+       (symbol_file): Same.
+       (symbol_file_record): Same.
+       (struct cbl_section_t): Same.
+       (symbol_section): Same.
+       (parent_of): Same.
+       * util.cc: (match_proc::find) Use only section and paragraph names.
+
+2026-07-08  James K. Lowden  <[email protected]>
+
+       * parse.y (literal_refmod_valid): Do not deference NULL pointer.
+
 2026-07-06  James K. Lowden  <[email protected]>
 
        * cbldiag.h (struct cbl_loc_t): Add as_first_line() function.
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index 099f1d533889..a632c48e84bd 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,54 @@
+2026-07-08  Jerry DeLisle  <[email protected]>
+
+       * trans-array.cc (gfc_array_init_size): Set the rank for the
+       dtype.
+
+2026-07-08  Harald Anlauf  <[email protected]>
+
+       PR fortran/126127
+       * interface.cc (find_symtree0): Check for NULL pointer.
+       (gfc_find_sym_in_symtree): Also search user-defined operator list
+       when the symbol refers to a function.
+
+2026-07-08  Mikael Morin  <[email protected]>
+
+       * trans-types.h (gfc_array_dim_rank_type): New type node
+       declaration.
+       * trans-types.cc (gfc_array_dim_rank_type): Likewise.
+       (gfc_init_types) : Initialize the new type node.
+       (get_dtype_type_node): Use the new type for the rank field.
+       * trans-descriptor.cc (gfc_conv_descriptor_rank): Likewise.
+       * trans-const.h (gfc_index_zero_node, gfc_index_one_node): Make
+       each macro a separate node declaration.
+       * trans-const.cc (gfc_index_zero_node, gfc_index_one_node):
+       Declare new nodes.
+       (gfc_init_constants): Initialize them.  Use the new type for the
+       constants of the gfc_rank_cst array.
+       * trans-array.cc (gfc_tree_array_size): Use the new type for the
+       RANK, IDX and DIM variables.  Avoid negative intermediary value
+       in comparison using the new type.
+       (gfc_conv_array_parameter): Use the new type when assigning a
+       value to the descriptor's rank.  Use the new type for the IDX
+       variable.
+       * trans-decl.cc (gfc_conv_cfi_to_gfc): Use the new type for the
+       rank, and the dimension index variable (including loop initial
+       value and step).
+       * trans-expr.cc (gfc_conv_gfc_desc_to_cfi_desc): Likewise.
+       (gfc_conv_variable): Use the new type for the rank variable.
+       (gfc_trans_structure_assign): Use the new type when assigning a
+       value to the descriptor's rank.
+       * trans-openmp.cc (gfc_omp_get_array_size): Use the new type
+       for the dimension index variable and the loop initialization,
+       bound and step.
+       * trans-intrinsic.cc (gfc_conv_intrinsic_bound): Use the new
+       type for the DIM argument and the rank.
+       (conv_intrinsic_cobound): Likewise.
+       (trans_this_image): Likewise.  Use the new type for the loop
+       variable, initialization, bound and step.
+       (gfc_conv_intrinsic_sizeof): Likewise.
+       * trans-stmt.cc (gfc_trans_select_rank_cases): Use signed char
+       as type for the select value.
+
 2026-07-07  Jerry DeLisle  <[email protected]>
 
        PR fortran/103367
diff --git a/gcc/rust/ChangeLog b/gcc/rust/ChangeLog
index 7121e50e06d3..42a37d91ac8d 100644
--- a/gcc/rust/ChangeLog
+++ b/gcc/rust/ChangeLog
@@ -1,3 +1,535 @@
+2026-07-08  Philip Herron  <[email protected]>
+
+       * typecheck/rust-hir-type-check-expr.cc (TypeCheckExpr::visit): respect 
context for labels
+
+2026-07-08  Lucas Ly Ba  <[email protected]>
+
+       * hir/tree/rust-hir-item.h (ExternBlock): Track whether the ABI
+       was explicit and expose it through has_abi.
+       * hir/tree/rust-hir-item.cc (ExternBlock::ExternBlock): Likewise.
+       (ExternBlock::operator=): Likewise.
+       * hir/rust-ast-lower-base.cc (ASTLoweringBase::lower_extern_block):
+       Forward the AST has_abi flag to the HIR node.
+       * checks/lints/unused/rust-unused-checker.cc (UnusedChecker::visit):
+       New.
+       * checks/lints/unused/rust-unused-checker.h (UnusedChecker::visit):
+       New.
+
+2026-07-08  Enes Cevik  <[email protected]>
+
+       * backend/rust-compile.cc
+       (HIRCompileBase::compute_address_for_trait_item): Ensure the
+       impl block type matches the receiver type.
+
+2026-07-08  Philip Herron  <[email protected]>
+
+       * rust-gcc.cc (pointer_type): turn on can alias
+
+2026-07-08  Enes Cevik  <[email protected]>
+
+       * backend/rust-compile-intrinsic.cc (generic_intrinsics): Add
+       min_align_of_val_handler to the map.
+       * backend/rust-intrinsic-handlers.cc (min_align_of_val_handler):
+       New function.
+       * backend/rust-intrinsic-handlers.h (min_align_of_val_handler):
+       New declaration.
+       * typecheck/rust-hir-type-check-intrinsic.cc
+       (IntrinsicChecker::intrinsic_rules): Add min_align_of_val
+       signature rule to the map.
+       * util/rust-intrinsic-values.h (class Intrinsics): Add
+       MIN_ALIGN_OF_VAL constexpr.
+
+2026-07-08  Enes Cevik  <[email protected]>
+
+       * backend/rust-compile-intrinsic.cc (generic_intrinsics): Add
+       size_of_val_handler to the map.
+       * backend/rust-intrinsic-handlers.cc (size_of_val_handler): New
+       function.
+       * backend/rust-intrinsic-handlers.h (size_of_val_handler): New
+       declaration.
+       * typecheck/rust-hir-type-check-intrinsic.cc
+       (IntrinsicChecker::intrinsic_rules): Add size_of_val signature
+       rule to the map.
+       * util/rust-intrinsic-values.h (class Intrinsics): Add
+       SIZE_OF_VAL constexpr.
+
+2026-07-08  Philip Herron  <[email protected]>
+
+       * typecheck/rust-unify.cc (UnifyRules::expect_adt): check defid
+
+2026-07-08  Philip Herron  <[email protected]>
+
+       * typecheck/rust-hir-type-check-item.cc (TypeCheckItem::visit): check 
valid
+
+2026-07-08  João Novo  <[email protected]>
+
+       * typecheck/rust-hir-type-check-item.cc (TypeCheckItem::visit):
+       Add check for infer type on struct's attribute or its subtypes.
+       * typecheck/rust-tyty.cc (BaseType::contains_infer):
+       Add check for an array type's capacity being an infer type.
+
+2026-07-08  Enes Cevik  <[email protected]>
+
+       * ast/rust-expr.h (BoxExpr): Add comment description to class.
+       * backend/rust-compile-block.h (visit): Add stub for BoxExpr.
+       * backend/rust-compile-expr.cc (compile_box_struct): New
+       function.
+       (compile_box): New function.
+       (build_box_inner_ptr): New function.
+       (CompileExpr::visit): Implement BoxExpr lowering using
+       exchange_malloc and constructor expressions. Handle owned_box
+       in FieldAccessExpr and DereferenceExpr.
+       (HIRCompileBase::resolve_deref_adjustment): Support owned_box
+       in deref adjustments.
+       * backend/rust-compile-expr.h (visit): Declare BoxExpr visitor.
+       * checks/errors/borrowck/rust-bir-builder-expr-stmt.cc
+       (ExprStmtBuilder::visit): Evaluate inner expression and push
+       tmp assignment for BoxExpr.
+       * checks/errors/borrowck/rust-bir-builder-expr-stmt.h (visit):
+       Declare BoxExpr visitor.
+       * checks/errors/borrowck/rust-bir-builder-lazyboolexpr.h
+       (visit): Mark BoxExpr as unreachable.
+       * checks/errors/borrowck/rust-bir-builder-struct.h (visit):
+       Likewise.
+       * checks/errors/borrowck/rust-function-collector.h (visit):
+       Add visit stub for BoxExpr.
+       * checks/errors/privacy/rust-privacy-reporter.cc
+       (PrivacyReporter::visit): Delegate privacy reporting to inner
+       expression of BoxExpr.
+       * checks/errors/privacy/rust-privacy-reporter.h (visit):
+       Declare BoxExpr visitor.
+       * checks/errors/rust-const-checker.cc (ConstChecker::visit):
+       Delegate const checking to inner expression.
+       * checks/errors/rust-const-checker.h (visit): Declare BoxExpr
+       visitor.
+       * checks/errors/rust-hir-pattern-analysis.cc
+       (PatternChecker::visit): Delegate pattern analysis to inner
+       expression.
+       * checks/errors/rust-hir-pattern-analysis.h (visit): Declare
+       BoxExpr visitor.
+       * checks/errors/rust-unsafe-checker.cc (UnsafeChecker::visit):
+       Delegate unsafe checking to inner expression.
+       * checks/errors/rust-unsafe-checker.h (visit): Declare BoxExpr
+       visitor.
+       * checks/lints/rust-lint-marklive.cc (MarkLive::visit): Resolve
+       inner ADT type for owned_box when marking live fields.
+       * checks/lints/rust-lint-marklive.h (visit): Declare BoxExpr
+       visitor.
+       * hir/rust-ast-lower-expr.cc (ASTLoweringExpr::visit): Translate
+       AST BoxExpr to HIR BoxExpr.
+       * hir/rust-hir-dump.cc (Dump::visit): Dump HIR BoxExpr.
+       * hir/rust-hir-dump.h (visit): Declare BoxExpr visitor.
+       * hir/tree/rust-hir-expr-abstract.h (ExprType): Add Box to enum.
+       * hir/tree/rust-hir-expr.cc (BoxExpr::BoxExpr): Implement
+       constructors for BoxExpr. (BoxExpr::operator=): Implement
+       assignment operator.
+       * hir/tree/rust-hir-expr.h (class BoxExpr): Define HIR BoxExpr
+       node.
+       * hir/tree/rust-hir-full-decls.h (class BoxExpr): Forward
+       declaration.
+       * hir/tree/rust-hir-visitor.cc (DefaultHIRVisitor::walk): Walk
+       inner expression of BoxExpr.
+       * hir/tree/rust-hir-visitor.h (visit): Add routing for BoxExpr.
+       * hir/tree/rust-hir.cc (BoxExpr::to_string): Implement
+       to_string.
+       (BoxExpr::accept_vis): Implement visitor acceptance.
+       * typecheck/rust-autoderef.cc (AutoderefCycle::cycle): Attempt
+       autoderef using the owned_box lang item.
+       * typecheck/rust-hir-type-check-expr.cc (TypeCheckExpr::visit):
+       Implement type checking, validation, and generic substitution
+       for BoxExpr. Support owned_box autoderef in field access and
+       dereferencing operations.
+       * typecheck/rust-tyty.cc (try_get_box_inner_type): New function.
+       * typecheck/rust-tyty.h (try_get_box_inner_type): New
+       declaration.
+       * typecheck/rust-hir-type-check-expr.h (visit): Declare BoxExpr
+       visitor.
+       * util/rust-lang-item.cc (Rust::LangItem::lang_items): Register
+       owned_box to BiMap.
+       * util/rust-lang-item.h (LangItem::Kind): Add OWNED_BOX.
+
+2026-07-08  Lishin  <[email protected]>
+
+       * Make-lang.in: Add rust-compile-drop-builder.o.
+       * backend/rust-compile-base.cc
+       (HIRCompileBase::compile_function_body):
+       Update CompileDrop calls.
+       * backend/rust-compile-block.cc (CompileBlock::visit):
+       Update CompileDrop calls.
+       * backend/rust-compile-context.h (Context): Allow
+       DropBuilder to access drop candidate storage and move
+       drop candidate APIs to DropBuilder.
+       * backend/rust-compile-drop.cc (CompileDrop::CompileDrop):
+       Add constructor.
+       (CompileDrop::type_has_drop_impl): Use stored Context member.
+       (CompileDrop::compile_drop_call): Likewise.
+       (CompileDrop::emit_current_scope_drop_calls): Use stored
+       Context member and get drop candidates from DropBuilder.
+       * backend/rust-compile-drop.h: Store Context as a member.
+       * backend/rust-compile-pattern.cc (CompilePatternLet::visit):
+       Use DropBuilder and update CompileDrop calls.
+       * backend/rust-compile-drop-builder.cc: New file.
+       * backend/rust-compile-drop-builder.h: New file.
+
+2026-07-08  Enes Cevik  <[email protected]>
+
+       * backend/rust-compile-context.h (class Context): Add
+       insert_vtable and lookup_vtable methods.
+       * backend/rust-compile-expr.cc
+       (CompileExpr::get_fn_addr_from_dyn): Change access method
+       array access to struct field access.
+       * backend/rust-compile-type.cc
+       (TyTyResolveCompile::create_dyn_obj_record): Create vtable type
+       as a record instead of an array.
+       * backend/rust-compile.cc
+       (HIRCompileBase::coerce_to_dyn_object): Change vtable structure.
+
+2026-07-08  Enes Cevik  <[email protected]>
+
+       * backend/rust-compile-intrinsic.cc (generic_intrinsics): Add
+       arith_offset handler to map.
+       * backend/rust-intrinsic-handlers.cc (arith_offset_handler): New
+       function.
+       * backend/rust-intrinsic-handlers.h (arith_offset_handler): New
+       declaration.
+       * typecheck/rust-hir-type-check-intrinsic.cc
+       (IntrinsicChecker::intrinsic_rules): Add arith_offset rule.
+       * util/rust-intrinsic-values.h (class Intrinsics): Add
+       ARITH_OFFSET constexpr.
+
+2026-07-08  Enes Cevik  <[email protected]>
+
+       * backend/rust-compile-intrinsic.cc (generic_intrinsics): Add
+       write_bytes handler to map.
+       * backend/rust-intrinsic-handlers.cc (write_bytes_handler): New
+       function.
+       * backend/rust-intrinsic-handlers.h (write_bytes_handler): New
+       declaration.
+       * typecheck/rust-hir-type-check-intrinsic.cc
+       (IntrinsicChecker::intrinsic_rules): Add write_bytes rule.
+       * util/rust-intrinsic-values.h (class Intrinsics): Add
+       WRITE_BYTES constexpr.
+
+2026-07-08  Lucas Ly Ba  <[email protected]>
+
+       * backend/rust-compile-expr.cc (CompileExpr::visit): Associate the loop
+       result temporary with the loop label.
+
+2026-07-08  Lucas Ly Ba  <[email protected]>
+
+       * typecheck/rust-hir-type-check-item.cc (TypeCheckItem::visit): Resolve
+       the generic parameters of a type alias.
+
+2026-07-08  Lucas Ly Ba  <[email protected]>
+
+       * checks/lints/unused/rust-unused-checker.cc (UnusedChecker::visit):
+       New.
+       * checks/lints/unused/rust-unused-checker.h (UnusedChecker::visit):
+       New.
+
+2026-07-08  Owen Avery  <[email protected]>
+
+       * expand/rust-macro-expand.cc
+       (MacroExpander::expand_eager_invocations): Handle errors during
+       eager expansion.
+       (MacroExpander::expand_invoc): Avoid expanding macros which have
+       pending eager invocations and return error fragments in more
+       cases.
+
+2026-07-08  Yap Zhi Heng  <[email protected]>
+
+       * backend/rust-compile-expr.cc (CompileExpr::visit (FieldAccessExpr)):
+       Handle DST fat pointers by reinterpreting the fat pointer as its field 
type.
+
+2026-07-08  Yap Zhi Heng  <[email protected]>
+
+       * util/rust-lang-item.h (LangItem::Kind): New CSTR kind.
+       * util/rust-lang-item.cc (LangItem::lang_items): Ditto.
+       * backend/rust-compile-type.cc (visit(TyTy::ReferenceType)): Add 
specific record
+       type for CStr.
+       * typecheck/rust-tyty.h (ReferenceType): Add function definition for 
is_dyn_cstr_type.
+       * typecheck/rust-tyty.cc (ReferenceType::is_dyn_object): Update to 
include
+       is_dyn_cstr_type.
+       (ReferenceType::is_dyn_cstr_type): Add implementation to check whether 
the
+       ReferenceType is of type CStr.
+       * typecheck/rust-hir-type-check-base.cc(resolve_literal): Update 
C_STRING case to
+       resolve to the CStr language item instead.
+
+2026-07-08  Yap Zhi Heng  <[email protected]>
+
+       * lang.opt: Add new -frust-c-style-string-literals option.
+       * parse/rust-parse.h: Import options.h for reading 
flag_c_style_string_literals.
+       * parse/rust-parse-impl-expr.hxx 
(Parser<ManagedTokenSource>::parse_literal_expr):
+       Abort parsing C-style string literals if flag_c_style_string_literals 
is not set.
+       (Parser<ManagedTokenSource>::null_denotation_not_path): Ditto.
+
+2026-07-08  Yap Zhi Heng  <[email protected]>
+
+       * lex/rust-token.h (RS_TOKEN_LIST): Add C_STRING_LITERAL and 
RAW_C_STRING_LITERAL
+       (unused for now).
+       * lex/rust-lex.h (Lexer): Define new parse_c_string function.
+       * lex/rust-lex.cc (Lexer::build_token): Implement lexing for C-style 
string
+       literals.
+       (Lexer::parse_c_string): Add implementation.
+       * hir/tree/rust-hir-literal.h (HIR::Literal): Define new C_STRING 
LitType.
+       * hir/rust-ast-lower-base.cc (ASTLoweringBase::lower_literal): Add new 
case for
+       C_STRING.
+       * parse/rust-parse-impl-attribute.hxx 
(Parser<ManagedTokenSource>::parse_attr_input):
+       Add new case for C_STRING.
+       * parse/rust-parse-impl-expr.hxx 
(Parser<ManagedTokenSource>::parse_literal_expr):
+       Add new case for parsing C_STRING.
+       (Parser<ManagedTokenSource>::null_denotation_not_path): Add new case 
for C_STRING.
+       * ast/rust-ast.h (Token::is_string_lit): Add new case for 
C_STRING_LITERAL.
+       * ast/rust-ast.cc (AttributeParser::parse_meta_item_inner): Add new 
case for
+       C_STRING_LITERAL.
+       * ast/rust-ast-collector.cc (TokenCollector::visit): Add new case for
+       C_STRING_LITERAL.
+       * typecheck/rust-hir-type-check-base.cc 
(TypeCheckBase::resolve_literal):
+       Implement type checking for the new C_STRING type.
+       * backend/rust-compile-expr.h (CompileExpr): Define new function
+       compile_c_string_literal.
+       * backend/rust-compile-expr.cc (CompileExpr::visit(LiteralExpr)): Add 
new case
+       for C_STRING.
+       (CompileExpr::compile_c_string_literal): Implement compilation of 
C-style string
+       literals.
+
+2026-07-08  hriztam  <[email protected]>
+
+       * parse/rust-parse-error.h (StructExprField): Add
+       STRUCT_BASE_ATTRIBUTES.
+       * parse/rust-parse-impl-expr.hxx
+       (Parser<ManagedTokenSource>::parse_struct_expr_field):
+       Reject attributes before struct-base `..`.
+       (Parser<ManagedTokenSource>::parse_struct_expr_struct_partial):
+       Handle struct-base parse results without dereferencing an errored
+       expected.
+
+2026-07-08  Lucas Ly Ba  <[email protected]>
+
+       * checks/lints/unused/rust-unused-checker.cc (UnusedChecker::visit):
+       New.
+       * checks/lints/unused/rust-unused-checker.h (UnusedChecker::visit):
+       New.
+
+2026-07-08  Lucas Ly Ba  <[email protected]>
+
+       * checks/lints/unused/rust-unused-checker.cc (UnusedChecker::visit):
+       Warn on a visibility qualifier on a `const _` item.
+
+2026-07-08  Owen Avery  <[email protected]>
+
+       * expand/rust-macro-builtins-log-debug.cc
+       (MacroBuiltin::assert_handler): Forward any custom message on to
+       the built-in panic macro.
+
+2026-07-08  Philip Herron  <[email protected]>
+
+       * backend/rust-compile-resolve-path.cc: use error_mark_node
+
+2026-07-08  Philip Herron  <[email protected]>
+
+       * typecheck/rust-hir-type-check-item.cc (TypeCheckItem::visit): remove 
error_at
+
+2026-07-08  Philip Herron  <[email protected]>
+
+       * backend/rust-compile-extern.h: add expr locus
+       * backend/rust-compile-intrinsic.cc (Intrinsics::compile): likewise
+       * backend/rust-compile-intrinsic.h: likewise
+       * backend/rust-compile-resolve-path.cc: likewise
+       * backend/rust-intrinsic-handlers.cc (op_with_overflow): likewise
+       (rotate_left): likewise
+       (rotate_right): likewise
+       (wrapping_op): likewise
+       (atomic_store): likewise
+       (atomic_load): likewise
+       (unchecked_op): likewise
+       (copy): likewise
+       (expect): likewise
+       (try_handler): likewise
+       (sorry): likewise
+       (assume): likewise
+       (discriminant_value): likewise
+       (variant_count): likewise
+       (move_val_init): likewise
+       (uninit): likewise
+       (prefetch_read_data): likewise
+       (prefetch_write_data): likewise
+       (transmute): likewise
+       (sizeof_handler): likewise
+       (min_align_of_handler): likewise
+       (offset): likewise
+       (bswap_handler): likewise
+       (ctlz_handler): likewise
+       (ctlz_nonzero_handler): likewise
+       (cttz_handler): likewise
+       (cttz_nonzero_handler): likewise
+       * backend/rust-intrinsic-handlers.h (std::function<tree): likewise
+       (rotate_left): likewise
+       (rotate_right): likewise
+       (offset): likewise
+       (sizeof_handler): likewise
+       (min_align_of_handler): likewise
+       (transmute): likewise
+       (uninit): likewise
+       (move_val_init): likewise
+       (assume): likewise
+       (discriminant_value): likewise
+       (variant_count): likewise
+       (bswap_handler): likewise
+       (ctlz_handler): likewise
+       (ctlz_nonzero_handler): likewise
+       (cttz_handler): likewise
+       (cttz_nonzero_handler): likewise
+       (wrapping_op): likewise
+       (prefetch_read_data): likewise
+       (prefetch_write_data): likewise
+       (sorry): likewise
+       * backend/rust-tree.cc (pointer_offset_expression): check for size
+
+2026-07-08  Philip Herron  <[email protected]>
+
+       * backend/rust-compile-item.cc (CompileItem::visit): check instead of 
assert
+
+2026-07-08  Philip Herron  <[email protected]>
+
+       * backend/rust-compile-expr.cc (CompileExpr::generate_closure_fntype):
+       Stop eagerly setting FnOnce::Output
+       * backend/rust-compile-item.cc (CompileItem::visit): Push impl-trait
+       * backend/rust-compile-type.cc (TyTyResolveCompile::visit): Normalize
+       projection types
+       * backend/rust-intrinsic-handlers.cc (discriminant_value): Handle
+       projection
+       * checks/errors/privacy/rust-privacy-reporter.cc
+       (PrivacyReporter::check_base_type_privacy): Skip unresolved
+       * typecheck/rust-hir-type-check-intrinsic.cc 
(IntrinsicChecker::check_type): make permissive
+       * typecheck/rust-autoderef.cc: remove old
+       * typecheck/rust-hir-impl-trait-context.h: New file.
+       * typecheck/rust-hir-trait-reference.cc (TraitReference::on_resolved):
+       Pass the trait reference into item resolution.
+       (TraitReference::clear_associated_types): Remove.
+       (TraitReference::clear_associated_type_projections): Remove.
+       (AssociatedImplTrait::AssociatedImplTrait): Store an impl trait frame
+       (AssociatedImplTrait::get_frame): New function.
+       * typecheck/rust-hir-trait-reference.h: Add impl trait context
+       * typecheck/rust-hir-trait-resolve.cc (TraitItemReference::on_resolved):
+       Pass trait reference
+       (TraitItemReference::resolve_item): Represent associated types as
+       projection types
+       (TraitItemReference::associated_type_set): Remove.
+       (TraitItemReference::associated_type_reset): Remove.
+       (AssociatedImplTrait::setup_raw_associated_types): Remove.
+       (AssociatedImplTrait::bind_impl_for_projection): New function.
+       (AssociatedImplTrait::bind_impl_for_bound): New function.
+       (AssociatedImplTrait::reset_associated_types): Remove.
+       * typecheck/rust-hir-type-check-base.cc
+       (TypeCheckBase::ResolvePredicateFromBound): New function.
+       * typecheck/rust-hir-type-check-base.h
+       (TypeCheckBase::ResolvePredicateFromBound): Declare.
+       * typecheck/rust-hir-type-check-expr.cc (TypeCheckExpr::visit):
+       Handle projection
+       (TypeCheckExpr::resolve_fn_trait_call): monomorphized
+       * typecheck/rust-hir-type-check-implitem.cc
+       (TypeCheckImplItemWithTrait::visit): Store impl associated types as
+       projections
+       * typecheck/rust-hir-type-check-item.cc
+       (TypeCheckItem::ResolveImplBlockSubstitutions): New function.
+       (TypeCheckItem::ResolveImplTraitAssociatedTypes): New function.
+       (TypeCheckItem::validate_trait_impl_block): cleanup
+       (TypeCheckItem::visit): Split inherent and trait impl handling.
+       (TypeCheckItem::resolve_impl_block): New function.
+       (TypeCheckItem::resolve_trait_impl_block): New function.
+       (TypeCheckItem::resolve_impl_block_substitutions): cleanup
+       * typecheck/rust-hir-type-check-item.h: helpers
+       * typecheck/rust-hir-type-check-path.cc (TypeCheckExpr::visit):
+       cleanup
+       (TypeCheckExpr::resolve_segments): Use lazy projection normalization
+       * typecheck/rust-hir-type-check-type.cc (TypeCheckType::visit):
+       Normalize type path projections and build qualified associated types
+       * typecheck/rust-hir-type-check.h (class ScopedPush): New class.
+       (class ImplTraitFrameGuard): New class.
+       * typecheck/rust-type-util.cc (query_type): Push impl trait frames
+       while resolving impl items.
+       (rebind_projection_self_from_fn): New function.
+       (normalize_projection): New function.
+       * typecheck/rust-type-util.h (normalize_projection): Declare.
+       (rebind_projection_self_from_fn): Declare.
+       * typecheck/rust-typecheck-context.cc
+       (TypeCheckContext::find_matching_impl_trait_frame): New function.
+       (TypeCheckContext::have_impl_trait_context): New function.
+       (TypeCheckContext::push_impl_trait_context): New function.
+       (TypeCheckContext::pop_impl_trait_context): New function.
+       (TypeCheckContext::peek_impl_trait_context): New function.
+       * typecheck/rust-tyty-bounds.cc
+       (TypeBoundPredicate::apply_argument_mappings): Stop mutating
+       associated type items for binding arguments.
+       (TypeBoundPredicateItem::get_tyty_for_receiver): Rebase projections
+       using trait substitution coordinates.
+       (TypeBoundPredicate::handle_substitions): Stop mutating associated
+       type items for binding arguments.
+       * typecheck/rust-tyty-call.cc (TypeCheckCallExpr::visit): Rebind
+       projection self types after function monomorphization.
+       * typecheck/rust-tyty-subst.cc
+       (SubstitutionParamMapping::fill_param_ty): Guard recursive
+       (SubstitutionRef::get_mappings_from_generic_args): Account for outer
+       GAT parameters.
+       (SubstitutionRef::prepare_higher_ranked_bounds): Remove.
+       (SubstitutionRef::monomorphize): Bind matching impls
+       * typecheck/rust-tyty-subst.h
+       (SubstitutionRef::get_outer_param_count): New function.
+       (SubstitutionRef::prepare_higher_ranked_bounds): Remove.
+       * typecheck/rust-tyty.cc (BaseType::satisfies_bound): Check
+       associated type bindings through projection types.
+       (BaseType::destructure): Stop destructuring through projections.
+       (BaseType::monomorphized_clone): Normalize projection clones.
+       (BaseType::is_concrete): Handle projections
+       (ClosureType::setup_fn_once_output): Remove.
+       (destructure_through_projections): New function.
+       (ReferenceType::is_dyn_slice_type): Normalize projections
+       (ReferenceType::is_dyn_str_type): Likewise.
+       (ReferenceType::is_dyn_obj_type): Likewise.
+       (PointerType::is_dyn_slice_type): Likewise.
+       (PointerType::is_dyn_str_type): Likewise.
+       (PointerType::is_dyn_obj_type): Likewise.
+       (ParamType::get_name): Guard recursive
+       (PlaceholderType::set_associated_type): Remove
+       (PlaceholderType::clear_associated_type): Remove
+       (ProjectionType::ProjectionType): Track projection self type and
+       inherited trait substitutions.
+       (ProjectionType::is_trait_position): New function
+       (ProjectionType::get): Handle non-trait-position projections
+       (ProjectionType::get_self): New function.
+       (ProjectionType::get_trait_ref): New function.
+       (ProjectionType::get_item_defid): New function.
+       (ProjectionType::as_string): Include projection self and trait
+       (ProjectionType::clone): Clone projection self and preserve bounds
+       (ProjectionType::handle_substitions): Substitute projection self
+       * typecheck/rust-tyty.h: Update projection
+       * typecheck/rust-unify.cc (UnifyRules::go): Normalize projections
+       (UnifyRules::expect_projection): Support projection-to-projection
+
+2026-07-08  Philip Herron  <[email protected]>
+
+       * typecheck/rust-hir-type-check-expr.cc (TypeCheckExpr::visit): push 
expected type
+       * typecheck/rust-hir-type-check-stmt.cc (TypeCheckStmt::visit): apply 
expected ty on tail
+       * typecheck/rust-hir-type-check.h: helpers
+       * typecheck/rust-typecheck-context.cc 
(TypeCheckContext::push_expected_type): likewise
+       (TypeCheckContext::pop_expected_type): likewise
+       (TypeCheckContext::peek_expected_type): likewise
+       * typecheck/rust-tyty-call.cc (TypeCheckCallExpr::visit): check expected
+
+2026-07-08  Philip Herron  <[email protected]>
+
+       * ast/rust-ast-collector.cc (TokenCollector::visit): check for lang item
+
+2026-07-08  Philip Herron  <[email protected]>
+
+       * typecheck/rust-tyty-bounds.cc 
(TypeBoundPredicate::TypeBoundPredicate): missing argument
+       (TypeBoundPredicate::operator=): likewise
+
+2026-07-08  Philip Herron  <[email protected]>
+
+       * typecheck/rust-tyty-subst.cc: we can optionally apply inherited 
arguments
+
 2026-06-28  Kevin Stefanov  <[email protected]>
 
        PR middle-end/125274
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index a3492d7171d6..394fbe66f7ac 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,291 @@
+2026-07-08  Jerry DeLisle  <[email protected]>
+
+       * gfortran.dg/allocate_with_mold_6.f90: New test.
+       * gfortran.dg/allocate_with_mold_7.f90: New test.
+
+2026-07-08  Jerry DeLisle  <[email protected]>
+
+       PR libfortran/126116
+       * gfortran.dg/pr126116.f90: New test.
+
+2026-07-08  Harald Anlauf  <[email protected]>
+
+       PR fortran/126127
+       * gfortran.dg/block_18.f90: New test.
+
+2026-07-08  Uros Bizjak  <[email protected]>
+
+       PR target/126148
+       * gcc.target/i386/pr126148.c: New test.
+
+2026-07-08  Jeff Law  <[email protected]>
+
+       PR rtl-optimization/126136
+       * gcc.dg/torture/pr126136.c: New test.
+
+2026-07-08  Philip Herron  <[email protected]>
+
+       * rust/compile/issue-4538.rs: New test.
+
+2026-07-08  Lucas Ly Ba  <[email protected]>
+
+       * rust/compile/missing-abi_0.rs: New test.
+
+2026-07-08  Enes Cevik  <[email protected]>
+
+       * rust/execute/trait-multi-impl.rs: New test.
+       * rust/execute/trait-multi-impl-generic.rs: New test.
+       * rust/execute/trait-multi-impl-generic2.rs: New test.
+
+2026-07-08  Philip Herron  <[email protected]>
+
+       * rust/execute/raw-pointer-aliasing.rs: New test.
+
+2026-07-08  Enes Cevik  <[email protected]>
+
+       * rust/execute/min-align-of-val.rs: New test.
+
+2026-07-08  Enes Cevik  <[email protected]>
+
+       * rust/execute/size-of-val.rs: New test.
+
+2026-07-08  Philip Herron  <[email protected]>
+
+       * rust/compile/issue-4617.rs: New test.
+
+2026-07-08  João Novo  <[email protected]>
+
+       * rust/compile/infer-type-issue-3583.rs: New test.
+
+2026-07-08  Enes Cevik  <[email protected]>
+
+       * rust/compile/box-expr.rs: New test.
+       * rust/compile/lang-owned-box-error1.rs: New test.
+       * rust/compile/lang-owned-box-error2.rs: New test.
+
+2026-07-08  Lishin  <[email protected]>
+
+       * rust/execute/drop-local-binding-lifo.rs: New test.
+       * rust/execute/drop-nested-block-scope.rs: New test.
+
+2026-07-08  Enes Cevik  <[email protected]>
+
+       * rust/execute/torture/dyn_object.rs: New test.
+
+2026-07-08  Enes Cevik  <[email protected]>
+
+       * rust/execute/arith-offset.rs: New test.
+
+2026-07-08  Enes Cevik  <[email protected]>
+
+       * rust/execute/write-bytes.rs: New test.
+
+2026-07-08  Lucas Ly Ba  <[email protected]>
+
+       * rust/compile/break-label-loop.rs: New test.
+
+2026-07-08  Lucas Ly Ba  <[email protected]>
+
+       * rust/compile/type-alias-generic-params.rs: New test.
+
+2026-07-08  Lucas Ly Ba  <[email protected]>
+
+       * rust/compile/non-contiguous-range-endpoints_0.rs: New test.
+
+2026-07-08  Owen Avery  <[email protected]>
+
+       * rust/compile/macros/builtin/eager4.rs: New test.
+
+2026-07-08  Yap Zhi Heng  <[email protected]>
+
+       * rust/execute/torture/c_string.rs: Add CStr language item definition.
+       * rust/compile/c_string_null_byte_check.rs: Ditto.
+       * rust/execute/torture/c_string_ensure_null_term.rs: New test.
+
+2026-07-08  Yap Zhi Heng  <[email protected]>
+
+       * rust/execute/torture/c_string.rs: Set -frust-c-style-string-literals.
+       * rust/compile/c_string_null_byte_check.rs: Set 
-frust-c-style-string-literals.
+
+2026-07-08  Yap Zhi Heng  <[email protected]>
+
+       * rust/compile/c_string_null_byte_check.rs: New file.
+       * rust/execute/torture/c_string.rs: New file.
+
+2026-07-08  hriztam  <[email protected]>
+
+       * rust/compile/issue-4476.rs: New test.
+
+2026-07-08  Lucas Ly Ba  <[email protected]>
+
+       * rust/compile/non-shorthand-field-patterns_0.rs: New test.
+
+2026-07-08  Lucas Ly Ba  <[email protected]>
+
+       * rust/compile/unused-visibilities_0.rs: New test.
+
+2026-07-08  Owen Avery  <[email protected]>
+
+       * rust/compile/assert_missing_panic.rs: Add usage of the second
+       form of assert.
+
+2026-07-08  Philip Herron  <[email protected]>
+
+       * rust/compile/issue-4302.rs: New test.
+
+2026-07-08  Philip Herron  <[email protected]>
+
+       * rust/compile/issue-2479.rs: update test
+
+2026-07-08  Philip Herron  <[email protected]>
+
+       * rust/compile/issue-4471-1.rs: New test.
+       * rust/compile/issue-4471-2.rs: New test.
+
+2026-07-08  Philip Herron  <[email protected]>
+
+       * rust/compile/issue-4481.rs: New test.
+
+2026-07-08  Philip Herron  <[email protected]>
+
+       * rust/compile/issue-4592.rs: New test.
+
+2026-07-08  Philip Herron  <[email protected]>
+
+       * rust/compile/issue-4486-1.rs: New test.
+       * rust/compile/issue-4486-2.rs: New test.
+
+2026-07-08  Philip Herron  <[email protected]>
+
+       * rust/compile/gat1.rs: Add lang item setup.
+       * rust/compile/gat2.rs: Use no_core setup.
+       * rust/compile/issue-2036.rs: Remove obsolete type inference error.
+       * rust/compile/issue-2905-2.rs: Enable iterator impl coverage.
+       * rust/compile/torture/traits18.rs: Move to...
+       * rust/compile/torture/traits18.rs.disabled: ...here.
+       * rust/compile/gat3.rs: New test.
+       * rust/compile/gat4.rs: New test.
+       * rust/compile/gat5.rs: New test.
+       * rust/compile/gat6.rs: New test.
+       * rust/compile/gat7.rs: New test.
+       * rust/compile/gat8.rs: New test.
+       * rust/compile/issue-4293.rs: New test.
+
+2026-07-08  Philip Herron  <[email protected]>
+
+       * rust/compile/gat2.rs: New test.
+
+2026-07-08  Richard Biener  <[email protected]>
+
+       PR tree-optimization/126150
+       * g++.dg/pr126150.C: New testcase.
+
+2026-07-08  Richard Biener  <[email protected]>
+
+       PR tree-optimization/126159
+       * gcc.dg/vect/vect-pr126159-1.c: New testcase.
+       * gcc.dg/vect/vect-pr126159-2.c: Likewise.
+
+2026-07-08  Pengfei Li  <[email protected]>
+
+       * gcc.target/aarch64/sve/sad_2.c: New test.
+
+2026-07-08  Tamar Christina  <[email protected]>
+
+       * gcc.target/aarch64/sve/vect-early-break-cbranch_18.c: New test.
+
+2026-07-08  Richard Biener  <[email protected]>
+
+       * gcc.dg/ipa/ipa-pta-20.c: New testcase.
+       * g++.target/i386/pr99679-1.C: Remove expected error.
+       * g++.target/i386/pr99679-2.C: Likewise.
+
+2026-07-08  Philipp Tomsich  <[email protected]>
+
+       * gcc.target/aarch64/ampere1-reduction-unroll-1.c: New test.
+
+2026-07-08  H.J. Lu  <[email protected]>
+           Richard Sandiford  <[email protected]>
+
+       PR target/124798
+       PR target/125436
+       * gcc.target/i386/abi-mix-1.c: New test.
+       * gcc.target/i386/abi-mix-2.c: Likewise.
+       * gcc.target/i386/no-callee-saved-20.c: Likewise.
+       * gcc.target/i386/no-caller-saved-1-ms.c: Likewise.
+       * gcc.target/i386/no-caller-saved-1-sysv.c: Likewise.
+       * gcc.target/i386/no-caller-saved-1.c: Likewise.
+       * gcc.target/i386/no-caller-saved-2.c: Likewise.
+       * gcc.target/i386/no-caller-saved-3.c: Likewise.
+       * gcc.target/i386/no-caller-saved-4.c: Likewise.
+       * gcc.target/i386/no-caller-saved-5.c: Likewise.
+       * gcc.target/i386/no-caller-saved-6.c: Likewise.
+       * gcc.target/i386/no-caller-saved-7.c: Likewise.
+       * gcc.target/i386/no-caller-saved-8.c: Likewise.
+       * gcc.target/i386/no-caller-saved-9.c: Likewise.
+       * gcc.target/i386/no-caller-saved-10.c: Likewise.
+       * gcc.target/i386/no-caller-saved-11.c: Likewise.
+       * gcc.target/i386/pr125436-1a.c: Likewise.
+       * gcc.target/i386/pr125436-1b.c: Likewise.
+       * gcc.target/i386/pr125436-2a.c: Likewise.
+       * gcc.target/i386/pr125436-2b.c: Likewise.
+       * gcc.target/i386/pr125436-3.c: Likewise.
+       * gcc.target/i386/pr125436-4.c: Likewise.
+       * gcc.target/i386/pr119784b.c: Adjusted for unused RBP.
+       * gcc.target/i386/no-callee-saved-18.c: Don't check frame
+       register.
+       * gcc.target/i386/no-callee-saved-19b.c: Update the expected
+       instruction order.
+       * gcc.target/i386/no-callee-saved-19d.c: Likewise.
+       * gcc.target/i386/no-callee-saved-19e.c: Likewise.
+       * gcc.target/i386/no-callee-saved-2.c: Check frame register isn't
+       saved nor restored in 64-bit mode.
+       * gcc.target/i386/no-callee-saved-8.c: Expect no saving nor
+       restoring caller-saved registers.
+       * gcc.target/i386/no-callee-saved-9.c: Likewise.
+       * gcc.target/i386/preserve-none-14.c: Don't check frame register.
+       * gcc.target/i386/preserve-none-23.c: Likewise.
+       * gcc.target/i386/preserve-none-7.c: Check frame register isn't
+       saved nor restored in 64-bit mode.
+
+2026-07-08  Pan Li  <[email protected]>
+
+       * gcc.target/riscv/rvv/autovec/group_overlap/vzext_vf2-u16-m1.c: New 
test.
+       * gcc.target/riscv/rvv/autovec/group_overlap/vzext_vf2-u16-m2.c: New 
test.
+       * gcc.target/riscv/rvv/autovec/group_overlap/vzext_vf2-u16-m4.c: New 
test.
+       * gcc.target/riscv/rvv/autovec/group_overlap/vzext_vf2-u16-mf2.c: New 
test.
+       * gcc.target/riscv/rvv/autovec/group_overlap/vzext_vf2-u16-mf4.c: New 
test.
+       * gcc.target/riscv/rvv/autovec/group_overlap/vzext_vf2-u32-m1.c: New 
test.
+       * gcc.target/riscv/rvv/autovec/group_overlap/vzext_vf2-u32-m2.c: New 
test.
+       * gcc.target/riscv/rvv/autovec/group_overlap/vzext_vf2-u32-m4.c: New 
test.
+       * gcc.target/riscv/rvv/autovec/group_overlap/vzext_vf2-u32-mf2.c: New 
test.
+       * gcc.target/riscv/rvv/autovec/group_overlap/vzext_vf2-u8-m1.c: New 
test.
+       * gcc.target/riscv/rvv/autovec/group_overlap/vzext_vf2-u8-m2.c: New 
test.
+       * gcc.target/riscv/rvv/autovec/group_overlap/vzext_vf2-u8-m4.c: New 
test.
+       * gcc.target/riscv/rvv/autovec/group_overlap/vzext_vf2-u8-mf2.c: New 
test.
+       * gcc.target/riscv/rvv/autovec/group_overlap/vzext_vf2-u8-mf4.c: New 
test.
+       * gcc.target/riscv/rvv/autovec/group_overlap/vzext_vf2-u8-mf8.c: New 
test.
+
+2026-07-08  Pan Li  <[email protected]>
+
+       * gcc.target/riscv/rvv/rvv.exp: Add group_overlap folder.
+       * gcc.target/riscv/rvv/autovec/group_overlap/group_overlap.h: New test.
+       * gcc.target/riscv/rvv/autovec/group_overlap/vsext_vf2-i16-m1.c: New 
test.
+       * gcc.target/riscv/rvv/autovec/group_overlap/vsext_vf2-i16-m2.c: New 
test.
+       * gcc.target/riscv/rvv/autovec/group_overlap/vsext_vf2-i16-m4.c: New 
test.
+       * gcc.target/riscv/rvv/autovec/group_overlap/vsext_vf2-i16-mf2.c: New 
test.
+       * gcc.target/riscv/rvv/autovec/group_overlap/vsext_vf2-i16-mf4.c: New 
test.
+       * gcc.target/riscv/rvv/autovec/group_overlap/vsext_vf2-i32-m1.c: New 
test.
+       * gcc.target/riscv/rvv/autovec/group_overlap/vsext_vf2-i32-m2.c: New 
test.
+       * gcc.target/riscv/rvv/autovec/group_overlap/vsext_vf2-i32-m4.c: New 
test.
+       * gcc.target/riscv/rvv/autovec/group_overlap/vsext_vf2-i32-mf2.c: New 
test.
+       * gcc.target/riscv/rvv/autovec/group_overlap/vsext_vf2-i8-m1.c: New 
test.
+       * gcc.target/riscv/rvv/autovec/group_overlap/vsext_vf2-i8-m2.c: New 
test.
+       * gcc.target/riscv/rvv/autovec/group_overlap/vsext_vf2-i8-m4.c: New 
test.
+       * gcc.target/riscv/rvv/autovec/group_overlap/vsext_vf2-i8-mf2.c: New 
test.
+       * gcc.target/riscv/rvv/autovec/group_overlap/vsext_vf2-i8-mf4.c: New 
test.
+       * gcc.target/riscv/rvv/autovec/group_overlap/vsext_vf2-i8-mf8.c: New 
test.
+
 2026-07-07  Egas Ribeiro  <[email protected]>
 
        * g++.dg/eh/can-convert-nullptr.C: New test.
diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog
index 88cc6a3a7cbe..8f50e7e1a4c0 100644
--- a/libgcc/ChangeLog
+++ b/libgcc/ChangeLog
@@ -1,3 +1,11 @@
+2026-07-08  Georg-Johann Lay  <[email protected]>
+
+       * config/avr/t-avr (LIB1ASMFUNCS): Add _negsi2_r18.
+       * config/avr/asm-defs.h (.call_if_neg): New .macro.
+       * config/avr/lib1funcs.S (__divmodsi4): Use .call_if_neg.
+       (__negsi2_r18): New function.
+       * config/avr/lib1funcs-fixed.S (__divsa3): Use .call_if_neg.
+
 2026-07-05  Rainer Orth  <[email protected]>
 
        * configure.ac (solaris_ld_v2_maps): Remove.
diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog
index 67b707b93b43..09c5b493919c 100644
--- a/libgfortran/ChangeLog
+++ b/libgfortran/ChangeLog
@@ -1,3 +1,20 @@
+2026-07-08  Jerry DeLisle  <[email protected]>
+
+       PR libfortran/126116
+       * io/io.h (struct gfc_unit): Add bool for tracking.
+       Fix some white space problems.
+       * io/unit.c (close_unit_1): Add a declaration for this
+       function so it can be called before it has been defined.
+       Use the new bool.
+       (is_internal_reserved): New helper function. Returns true
+       only if the unit is not null and the internal unit kind is zero
+       meaning its not a character string.
+       (find_unit): Use the new helper function
+       (find_or_create_unit): Use the new helper.
+       (get_unit): Set the new bool.
+       (close_unit): Update the close_unit_1 argument list.
+       (close_units): Likewise.
+
 2026-07-06  Harald Anlauf  <[email protected]>
 
        PR fortran/121366
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index de12dd175fd4..b46582080922 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,16 @@
+2026-07-08  Nathan Myers  <[email protected]>
+
+       PR libstdc++/118851
+       * include/bits/stl_tree.h (_M_equal_range_tr): Rewrite to match
+       non-heterogeneous equal_range implementation.
+       * testsuite/23_containers/map/operations/hetero/equal_range.cc:
+       New test.
+       * testsuite/23_containers/multimap/operations/hetero/equal_range.cc:
+       Same.
+       * testsuite/23_containers/multiset/operations/hetero/equal_range.cc:
+       Same.
+       * testsuite/23_containers/set/operations/hetero/equal_range.cc: Same.
+
 2026-07-07  Tomasz Kamiński  <[email protected]>
 
        * include/std/mdspan

Reply via email to