https://gcc.gnu.org/g:7b7f49d4c3b2acb6490b9c324408384cc0ad6c94
commit r17-1681-g7b7f49d4c3b2acb6490b9c324408384cc0ad6c94 Author: GCC Administrator <[email protected]> Date: Fri Jun 19 00:16:37 2026 +0000 Daily bump. Diff: --- gcc/ChangeLog | 98 ++++++++++++++++++++ gcc/DATESTAMP | 2 +- gcc/ada/ChangeLog | 236 ++++++++++++++++++++++++++++++++++++++++++++++++ gcc/cobol/ChangeLog | 23 +++++ gcc/cp/ChangeLog | 5 + gcc/fortran/ChangeLog | 32 +++++++ gcc/testsuite/ChangeLog | 36 ++++++++ libgomp/ChangeLog | 38 ++++++++ 8 files changed, 469 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 2ef7bbcb2b0d..3cfe3e4ea869 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,101 @@ +2026-06-18 Milan Tripkovic <[email protected]> + + PR target/125405 + * match.pd: New pattern added. + +2026-06-18 Jeff Law <[email protected]> + + * config/riscv/riscv.md (splitter for equality test): New splitter. + +2026-06-18 Paul Iannetta <[email protected]> + Thomas Schwinge <[email protected]> + + * tree.h (ENCODE_QUAL_ADDR_SPACE): Add missing parentheses. + +2026-06-18 Andrew MacLeod <[email protected]> + + * value-range.cc (prange::intersect): Points-to and away results + in undefined. + +2026-06-18 Andrew MacLeod <[email protected]> + + * value-range.h (prange::pt_invariant_p): Return true or false. + (prange::pt_invariant_away_p): Likewise. + +2026-06-18 Andrew MacLeod <[email protected]> + + * value-range.h (prange::zero_p): Assert that is zero_p is true, + points_to is unknown. + +2026-06-18 Richard Sandiford <[email protected]> + + PR tree-optimization/125872 + * gimple-ssa-backprop.cc (backprop::execute): Don't try to delete + default definitions. + +2026-06-18 Andrew MacLeod <[email protected]> + + * gimple-range-fold.cc (fold_using_range::range_of_phi): Remove + extranous logical not from expression. + +2026-06-18 Andrew MacLeod <[email protected]> + + PR tree-optimization/125854 + * gimple-range-fold.cc (fold_using_range::fold_stmt): Check if the + range_query matches the current one before invoking fold. + +2026-06-18 Martin Jambor <[email protected]> + + PR ipa/124128 + * ipa-cp.cc (ipa_vr_intersect_with_arith_jfunc): Move the check if + the final type conversion needs to happen before the conversion. + +2026-06-18 Richard Biener <[email protected]> + + * config/i386/i386.cc (ix86_vector_costs::add_stmt_cost): + Use vector construction scaling also for mult-lane + VMAT_STRIDED_SLP but use vector composition type recorded + to avoid excessive over-costing. + +2026-06-18 Richard Biener <[email protected]> + + * config/i386/i386.cc (ix86_vector_costs::add_stmt_cost): + Expect vec_deconstruct where formerly handling vec_to_scalar + for emulated gather/scatter, elementwise and strided accesses. + +2026-06-18 Richard Biener <[email protected]> + + * config/i386/i386.cc (ix86_vector_cd_cost): New function, + enhanced and split out from ... + (ix86_default_vector_cost): ... here. + +2026-06-18 Richard Biener <[email protected]> + + * target.h (vect_cost_for_stmt::vec_deconstruct): New kind. + * tree-vect-loop.cc (vect_model_reduction_cost): Use it. + * tree-vect-stmts.cc (vectorizable_store): Likewise. + (vectorizable_load): Likewise. + * tree-vectorizer.cc (dump_stmt_cost): Handle vec_deconstruct. + * config/aarch64/aarch64.cc (aarch64_builtin_vectorization_cost): + Handle vec_deconstruct like vec_construct. + * config/i386/i386.cc (ix86_default_vector_cost): Likewise. + * config/arm/arm.cc (arm_builtin_vectorization_cost): Likewise. + * config/loongarch/loongarch.cc (loongarch_builtin_vectorization_cost): + Likewise. + * config/riscv/riscv.cc (riscv_builtin_vectorization_cost): + Likewise. + * config/rs6000/rs6000.cc (rs6000_builtin_vectorization_cost): + Likewise. + * config/s390/s390.cc (s390_builtin_vectorization_cost): Likewise. + * targhooks.cc (default_builtin_vectorization_cost): Likewise. + +2026-06-18 Richard Biener <[email protected]> + + * tree-vectorizer.h (vect_load_store_data::ls_eltype): New field. + * tree-vect-stmts.cc (vectorizable_load): Record ltype + as ls_eltype for VMAT_STRIDED_SLP. + (vectorizable_store): Likewise. + 2026-06-17 James K. Lowden <[email protected]> * doc/install.texi: COBOL requires Bison 3.8.2. diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index f3e3b81b3d19..671fa4f884c6 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20260618 +20260619 diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 71b5dbdcf548..7c690f7c6912 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,239 @@ +2026-06-18 Eric Botcazou <[email protected]> + + * accessibility.ads (Apply_Accessibility_Check_For_Allocator): + Rename to... + (Apply_Accessibility_Check_For_Class_Wide_Allocator): ...this. + (Apply_Accessibility_Check_For_Discriminated_Allocator): New. + * accessibility.adb (Apply_Accessibility_Check_For_Allocator): + Rename to... + (Apply_Accessibility_Check_For_Class_Wide_Allocator): ...this. + Call Duplicate_Subexpr directly instead of reimplementing it. + (Apply_Accessibility_Check_For_Discriminated_Allocator): New. + (Apply_Accessibility_Check_For_Discriminated_Return): Streamline. + (Apply_Accessibility_Check_For_Return): Tweak comments. + * exp_ch4.adb (Expand_Allocator_Expression): Call + Apply_Accessibility_Check_For_Discriminated_Allocator and + adjust calls to Apply_Accessibility_Check_For_Allocator. + (Expand_N_Allocator): Likewise. + +2026-06-18 Piotr Trojanek <[email protected]> + + * sem_util.adb (Is_OK_Modifies_Context): Accept references in Modifies + clauses. + +2026-06-18 Piotr Trojanek <[email protected]> + + * aspects.ads (Aspect_Id, Implementation_Defined_Aspect, + Aspect_Argument, Is_Representation_Aspect, Aspect_Names, Aspect_Delay): + Add new aspect and its basic characteristics. + * contracts.adb (Add_Contract_Item, + Analyze_Entry_Or_Subprogram_Contract, + Analyze_Entry_Or_Subprogram_Body_Contract, + Analyze_Subprogram_Body_Stub_Contract): Handle new aspect. + * contracts.ads (Add_Contract_Item, + Analyze_Entry_Or_Subprogram_Contract, + Analyze_Entry_Or_Subprogram_Body_Contract, + Analyze_Subprogram_Body_Stub_Contract): Likewise. + * doc/gnat_rm/implementation_defined_aspects.rst (Aspect Modifies): + Document new aspect. + * doc/gnat_rm/implementation_defined_pragmas.rst (Pragma Modifies): + Document corresponding pragma. + * einfo-utils.adb + (Get_Pragma): Handle new pragma + * einfo-utils.ads + (Get_Pragma): Likewise. + * inline.adb (Remove_Aspects_And_Pragmas): Handle new pragma. + * par-ch13.adb (P_Modifies_Specification): Parse special aspect syntax. + (Get_Aspect_Specifications): Parse new aspect. + * par-prag.adb (Prag): Temporarily accept new pragma. + * sem_ch12.adb (Implementation of Generic Contracts): Update list of + supported contracts. + * sem_ch13.adb (Analyze_One_Aspect, Analyze_Aspect_Specifications, + Check_Aspect_At_Freeze_Point): Analyze new aspect. + * sem_ch8.adb (In_Abstract_View_Pragma): Abstract states can appear in + new contract. + * sem_prag.adb (Contract_Freeze_Error, Ensure_Aggregate_Form): Update + list of supported contracts. + (Analyze_Modifies_In_Decl_Part, Analyze_Pragma): Analyze new pragma. + (Sig_Flags): Support new pragma. + * sem_prag.ads (Aspect_Specifying_Pragma, Assertion_Expression_Pragma, + Pragma_Significant_To_Subprograms, Find_Related_Declaration_Or_Body): + Handle new pragma. + (Analyze_Modifies_In_Decl_Part): Analyze new pragma. + * sem_util.adb, sem_util.ads (Is_Subprogram_Contract_Annotation): + Handle new contract. + * sinfo.ads (Is_Generic_Contract_Pragma, Contract): New contract is + a generic contract. + * snames.ads-tmpl: New contract name and new pragma. + * gnat_rm.texi: Regenerate. + +2026-06-18 Piotr Trojanek <[email protected]> + + * doc/gnat_rm/implementation_defined_pragmas.rst + (Subprogram_Variant): Refill paragraph. + * sem_prag.adb (Analyze_Exceptional_Cases_In_Decl_Part): Fix header. + * gnat_rm.texi: Regenerate. + +2026-06-18 Eric Botcazou <[email protected]> + + * sem_util.ads (Get_Pool_Object_Or_Dereference): New function. + * sem_util.adb (Get_Pool_Object_Or_Dereference): Likewise, mostly + taken from... + * sem_ch13.adb (Analyze_Attribute_Definition_Clause) <Object_From>: + ...here. + <Attribute_Storage_Pool>: Call Get_Pool_Object_Or_Dereference. + * exp_ch3.adb (Freeze_Type): Add missing checks of RM 13.11.4(24-27) + and apply them to all regular pools not statically descendants from + Root_Storage_Pool_With_Subpools when its unit has been loaded. + +2026-06-18 Eric Botcazou <[email protected]> + + * exp_ch4.adb (Expand_N_Type_Conversion): Do not apply again static + accessibility checks in instance bodies. + * sem_res.adb (Valid_Conversion): Insert the raise statements for + the failure of static accessibility checks in instance bodies. + +2026-06-18 Ronan Desplanques <[email protected]> + Mathias Aparicio <[email protected]> + + * gen_il-fields.ads (Declared_In_Package_Body): New field. + (Scope): Rename into... + (Scope_Gen_IL_Private): ...this. + * einfo-utils.ads (Scope, Set_Scope): New subprograms. + * einfo-utils.adb (Set_Scope): New subprogram. + * einfo.ads (In_Package_Body): Update documentation. + (Declared_In_Package_Body): Add documentation. + (Is_Package_Body_Entity): Remove. + * fe.h (Scope): New macro. + * gen_il-gen-gen_entities.adb (Gen_Entities): New field. + New contract. Remove Sm (Is_Package_Body_Entity). + * gen_il-gen-gen_nodes.adb (Gen_Nodes): Adapt to renaming. + * gen_il-gen.adb (Compute_Field_Offsets): Adapt to renaming. + * gen_il-internals.adb (Image): Adapt to renaming. + * lib-load.adb, lib.adb: Add with clauses. + * sem_ch3.adb (Analyze_Object_Declaration): Remove field update. + * sem_ch6.adb (Enter_Overloaded_Entity): Likewise. + * sem_util.adb (Collect_Primitive_Operations): Use new field. + (Enter_Name): Replace Is_Package_Body_Entity with + Declared_In_Package_Body. + * treepr.adb (Image): Add F_Scope_Gen_IL_Private alternative + that returns Scope. + * exp_dbug.adb (Is_BNPE): Replace Is_Package_Body_Entity with + Declared_In_Package_Body. + * sem_ch12.adb (Check_Generic_Actuals): Likewise. + * sem_warn.adb (Generic_Package_Spec_Entity): Likewise. + * sem_ch7.adb (Analyze_Package_Body_Helper): Replace + Set_Is_Package_Body_Entity with Set_Declared_In_Package_Body. + +2026-06-18 Viljar Indus <[email protected]> + + * sem_disp.adb (Warn_On_Late_Primitive_After_Private_Extension): + apply warning character correctly. + +2026-06-18 Viljar Indus <[email protected]> + + * sem_elab.adb (Output_Calls): Apply correct warning + characeter for each continuation message. + (Check_Internal_Call_Continue): Use regular warning + character in error messages. + +2026-06-18 Eric Botcazou <[email protected]> + + * accessibility.adb (Accessibility_Level): Also deal with SAOOAAATs + without extra accessibility object alongside formal parameters. + (Check_Return_Construct_Accessibility): Streamline the error message + and adjust it to expression functions. + * exp_ch4.adb (Expand_Allocator_Expression): Do not perform a static + accessibility check here. + * sem_res.adb (Resolve_Allocator): Streamline the implementation of + the static accessibility check of RM 4.8(5.3), use a more consistent + error message, adjust it to instantiation bodies, and specifically + deal with formal parameters. + +2026-06-18 Ronan Desplanques <[email protected]> + + * exp_attr.adb (Skip_Non_Source_Subps): Move before local object + declarations and add formals. + (Build): Move before local object declarations. + (Find_Insertion_Point_For_Ancestor): New local function. + (Build_And_Insert_Type_Attr_Subp): Use new function. + +2026-06-18 Piotr Trojanek <[email protected]> + + * sem_attr.adb (Uneval_Old_Msg): Attribute Old never occurs outside of + a pragma. + * sem_ch13.adb (Analyze_One_Aspect): Attach expression copy of a + class-wide aspect to the corresponding pragma. + * sem_prag.adb (Analyze_Pre_Post_Condition): Likewise for a class-wide + pragma. + +2026-06-18 Viljar Indus <[email protected]> + + * rtsfind.adb (Maybe_Add_With): Fix skipping implicit + withs when only an ignored implicit with exists. + +2026-06-18 Marc Poulhiès <[email protected]> + + * sprint.ads (Sprint_Indented_List): Adjust comment. + +2026-06-18 Eric Botcazou <[email protected]> + + * sem_ch12.adb (Analyze_Generic_Package_Declaration): Do not set the + Body_Needed_For_Inlining flag on the current semantic unit if the + package is declared within an instance or does not require a body. + (Analyze_Generic_Subprogram_Declaration): Similarly, do not set the + Body_Needed_For_Inlining flag on the current semantic unit if the + subprogram is declared within an instance. + +2026-06-18 Javier Miranda <[email protected]> + + * exp_ch4.adb (Expand_N_Allocator): For a class-wide designated + type with a constructor initializer, add a type conversion to + the specific type to avoid a dispatching call (since contructors + are not dispatching primitives). + * sem_ch13.adb (Analyze_Aspect_Specifications) + <Aspect_Initialize>: Avoid reporting a spurious error. + +2026-06-18 Eric Botcazou <[email protected]> + + * accessibility.ads (Check_Return_Construct_Accessibility): Document + that it also implements the 6.8(5) rule. + * accessibility.adb (Accessibility_Message): Remove dead return. + (Apply_Accessibility_Check_For_Anonymous_Return): Do not apply the + static check of 6.5(5.9) here. + (Check_Return_Construct_Accessibility): Do not use "return object" + in the error message. Do not reject synthesized return statements + when the function comes from source to handle expression funtions. + Robustify processing and explicitly deal with formal parameters. + +2026-06-18 Eric Botcazou <[email protected]> + + * sem_ch12.adb (Build_Structural_Instantiation): Temporarily disable + registration of tagged types when analyzing the instantiation. + +2026-06-18 Eric Botcazou <[email protected]> + + * libgnat/a-cbinho.adb (Clear): Deallocate the subpool even if the + container is empty. + +2026-06-18 Viljar Indus <[email protected]> + + * restrict.adb (Process_Restriction_Synonyms): Fix continuation + message. + * sem_prag.adb (Analyze_Pragma): Likewise. + +2026-06-18 Javier Miranda <[email protected]> + + * sem_attr.adb (Analyze_Attribute): Report an error when the number + of actual parameters for a constructor do not match any available + constructor. + * exp_ch6.adb (Make_Init_Proc_Call): Add the _Init_Level accessibility + level formal when building a call to the init proc of a limited record + type. + (Prepend_Constructor_Procedure_Prologue): Restrict the initialization + of the _parent component to cases where a Super aspect is present + or a parameterless parent constructor exists. + 2026-06-09 Eric Botcazou <[email protected]> PR ada/125695 diff --git a/gcc/cobol/ChangeLog b/gcc/cobol/ChangeLog index b348d13c673f..4059c7cc52df 100644 --- a/gcc/cobol/ChangeLog +++ b/gcc/cobol/ChangeLog @@ -1,3 +1,26 @@ +2026-06-18 Robert Dubner <[email protected]> + + * cbldiag.h (current_program_index): Suppress cppcheck warning. + (struct cbl_loc_t): Likewise. + * genutil.cc (get_depending_on_value_from_odo): Check subscript + against occurs-depending-on value. + (get_data_offset): Likewise. + (digit): Fast string-to-binary routine. + (num_disp_dive): Likewise. + (get_binary_value_tree): Likewise. + (copy_little_endian_into_place): Move the function to move.cc. + (get_location): Normalize use of "data" pointer versus using the + address of a known variable. + * genutil.h (copy_little_endian_into_place): Remove declarations. + * move.cc (get_reference_to_data): Eliminate function. + (mh_identical): Simplify the logic that uses get_location. + (copy_little_endian_into_place): Use the routine for both little- + and big-endian targets. Take absolute value of signed inputs when + the target is unsigned. + (mh_little_endian): Handle both little- and big-endian targets. + * symbols.cc (cbl_alphabet_t::cbl_alphabet_t): Suppress + cppcheck warning. + 2026-06-16 Robert Dubner <[email protected]> * compare.cc (numeric_alpha_compare): Use tree_type_from_refer(). diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 38db140d560e..972c34a598ba 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,8 @@ +2026-06-18 Marek Polacek <[email protected]> + + * decl.cc (check_initializer): Don't call + build_aggr_init_full_exprs for {} of an aggregate. + 2026-06-17 Marek Polacek <[email protected]> PR c++/125764 diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index e4a28a9b4bf4..98220aa84a95 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,35 @@ +2026-06-18 Jerry DeLisle <[email protected]> + + PR fortran/125535 + * trans-array.cc (gfc_constructor_is_owned_alloc_comp): New function. + (gfc_trans_array_constructor_value): Add OWNED_SWEEP parameter and, + when set, suppress the per-element finalization. Pass it through the + recursive call. + (trans_array_constructor): Compute OWNED_SWEEP and, when set, + deallocate the allocatable components of the whole temporary in one + sweep. + +2026-06-18 Thomas Koenig <[email protected]> + + PR fortran/30438 + * gfortran.h (gfc_value_set_at): Remove default argument. + (gfc_expr_set_at): Add prototype. + * interface.cc (gfc_compare_actual_formal): Use gfc_expr_set_at. + * intrinsic.cc (mark_args_as_used): Likewise. + * io.cc (resolve_tag): Likewise. + (gfc_resolve_dt): Likewise. + (gfc_resolve_inquire): Likewise. + * resolve.cc (resolve_transfer): Likewise. + (mark_lhs_assignments_set): Likewise. + * symbol.cc (gfc_lvalue_allocated_at): Add comment, fix formatting. + (gfc_expr_set_at): New fuction. + +2026-06-18 Martin Jambor <[email protected]> + + PR fortran/125860 + * interface.cc (gfc_procedure_use): Check a->expr is not NULL before + calling gfc_value_set_and_used. + 2026-06-17 Tobias Burnus <[email protected]> * gfortran.h (struct gfc_omp_udm): Add comment. diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index bbdf62d2c4e5..dba7e75c6157 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,39 @@ +2026-06-18 Milan Tripkovic <[email protected]> + + PR target/125405 + * gcc.dg/pr125405-bitint.c: New test. + * gcc.dg/tree-ssa/pr125405.c: New test. + * gcc.target/riscv/pr125405.c: New test. + +2026-06-18 Jeff Law <[email protected]> + + * gcc.target/riscv/test-equal.c: New test. + +2026-06-18 Jerry DeLisle <[email protected]> + + PR fortran/125535 + * gfortran.dg/asan/implied_do_alloc_comp_leak_1.f90: New test. + +2026-06-18 Thomas Koenig <[email protected]> + + PR fortran/30438 + * gfortran.dg/warn_unused_but_set_variable_2.f90: New test. + +2026-06-18 Richard Sandiford <[email protected]> + + PR tree-optimization/125872 + * gcc.dg/torture/pr125872.c: New test. + +2026-06-18 Andrew MacLeod <[email protected]> + + PR tree-optimization/125854 + * g++.dg/pr125854.C: New. + +2026-06-18 Martin Jambor <[email protected]> + + PR ipa/124128 + * gcc.dg/ipa/pr124128.c: New test. + 2026-06-17 Robert Dubner <[email protected]> * cobol.dg/group2/258_Nested_PERFORM.cob: Removed. diff --git a/libgomp/ChangeLog b/libgomp/ChangeLog index b16a5753de2d..f9c63eda4800 100644 --- a/libgomp/ChangeLog +++ b/libgomp/ChangeLog @@ -1,3 +1,41 @@ +2026-06-18 Thomas Schwinge <[email protected]> + + * config/accel/target-indirect.h (GOMP_INDIRECT_ADDR_MAP) + (GOMP_INDIRECT_ADDR_HMAP): Prototype. + * config/gcn/team.c: Adjust. + * config/nvptx/team.c: Likewise. + +2026-06-18 Thomas Schwinge <[email protected]> + + * config/accel/target-indirect.h: New. + * config/accel/target-indirect.c: Adjust. + * config/gcn/team.c: Likewise. + * config/nvptx/team.c: Likewise. + +2026-06-18 Thomas Schwinge <[email protected]> + + * target-indirect.c: '#include "libgomp.h"'. + +2026-06-18 Thomas Schwinge <[email protected]> + + * libgomp_g.h (GOMP_target_map_indirect_ptr): Sort correctly. + +2026-06-18 Thomas Schwinge <[email protected]> + + * libgomp_g.h (GOMP_atomic_start, GOMP_atomic_end): Sort correctly. + +2026-06-18 Thomas Schwinge <[email protected]> + + * oacc-init.c (acc_init, acc_shutdown, acc_get_num_devices) + (acc_set_device_type, acc_get_device_type, acc_get_device_num) + (acc_set_device_num, acc_get_property, acc_get_property_string) + (acc_on_device): Drop 'ialias'es. + +2026-06-18 Thomas Schwinge <[email protected]> + + * config/nvptx/oacc-parallel.c: Move... + * config/accel/oacc-parallel.c: ... here. + 2026-06-12 Thomas Schwinge <[email protected]> * config/linux/allocator.c: De-duplicate '#define _GNU_SOURCE'.
