From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 2168) id 51F4D38582B2; Tue, 13 Sep 2022 00:18:58 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 51F4D38582B2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1663028338; bh=p5cvILI1rnv5t27BgW4UHK3h2jEzKEH5RN/iJm3qOd4=; h=From:To:Subject:Date:From; b=EKe5Cbo3qcTtdjFjCx8A9tJhkP9tT/BQnKfTFg4DmukGiq000aX57RL0aS03/tv4Z UVzSoPabUhVJsQ05oqUHZsxGRWYAiAsLyankZt9ff+irQSwOGmAo3Nz7rggINc9f3m eDSk7GanwI49hBkBVdrHy0XOsbzdDRJ6X87Mna3M= MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="utf-8" From: GCC Administrator To: gcc-cvs@gcc.gnu.org, libstdc++-cvs@gcc.gnu.org Subject: [gcc r13-2635] Daily bump. X-Act-Checkin: gcc X-Git-Author: GCC Administrator X-Git-Refname: refs/heads/master X-Git-Oldrev: c17fa0f20eb29bd1cab5e438c72b96281693ac29 X-Git-Newrev: b5f09bd766008fe11aa35ccaa4038f7b09e3492e Message-Id: <20220913001858.51F4D38582B2@sourceware.org> Date: Tue, 13 Sep 2022 00:18:58 +0000 (GMT) List-Id: https://gcc.gnu.org/g:b5f09bd766008fe11aa35ccaa4038f7b09e3492e commit r13-2635-gb5f09bd766008fe11aa35ccaa4038f7b09e3492e Author: GCC Administrator Date: Tue Sep 13 00:18:20 2022 +0000 Daily bump. Diff: --- gcc/ChangeLog | 36 ++++ gcc/DATESTAMP | 2 +- gcc/ada/ChangeLog | 498 ++++++++++++++++++++++++++++++++++++++++++++++++ gcc/analyzer/ChangeLog | 5 + gcc/cp/ChangeLog | 94 +++++++++ gcc/testsuite/ChangeLog | 53 ++++++ libgomp/ChangeLog | 25 +++ libstdc++-v3/ChangeLog | 29 +++ 8 files changed, 741 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index e670caecef2..95705a4931a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,39 @@ +2022-09-12 Takayuki 'January June' Suwa + + * config/xtensa/xtensa.cc (TARGET_CONSTANT_OK_FOR_CPROP_P): + New macro definition. + (xtensa_constant_ok_for_cprop_p): + Implement the hook as mentioned above. + +2022-09-12 Joseph Myers + + * ginclude/stdatomic.h [defined __STDC_VERSION__ && + __STDC_VERSION__ > 201710L] (ATOMIC_VAR_INIT): Do not define. + +2022-09-12 Tobias Burnus + + * config/nvptx/mkoffload.cc (process): Replace a fatal_error by + a warning + not enabling offloading if -misa=sm_30 prevents + reverse offload. + (main): Use tool_name as progname for diagnostic. + * config/gcn/mkoffload.cc (main): Likewise. + +2022-09-12 Aldy Hernandez + + * value-range.cc (frange::set_signbit): Avoid changing sign when + already in the correct sign. + +2022-09-12 Max Filippov + + * config/xtensa/xtensa.cc (xtensa_function_value_regno_p): + Recognize all 4 return registers. + * config/xtensa/xtensa.h (GP_RETURN_REG_COUNT): New definition. + * config/xtensa/xtensa.md (untyped_call): New pattern. + +2022-09-12 Jonathan Wakely + + * doc/extend.texi (Floating Types): Fix "_float128" typo. + 2022-09-10 Takayuki 'January June' Suwa * config/xtensa/xtensa.cc (xtensa_constantsynth): diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index eaf59824aca..3ab9ae22f92 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20220912 +20220913 diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index b1fbd1ec2db..5a029ed1b84 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,501 @@ +2022-09-12 Eric Botcazou + + * gcc-interface/decl.cc (gnat_to_gnu_entity): Relax assertion when + front-end unnesting is enabled. + +2022-09-12 Justin Squirek + + * sem_util.adb + (Innermost_Master_Scope_Depth): Detect and handle case where scope + depth is not set on an enclosing scope. + +2022-09-12 Steve Baird + + * bindgen.adb: When the binder is invoked for the host, generate a + "with CUDA.Internal;" with clause. + +2022-09-12 Piotr Trojanek + + * doc/gnat_rm/implementation_defined_pragmas.rst + (Pragma Unreferenced): Sync description with + Sem_Warn.Has_Junk_Name routine. + * gnat_rm.texi: Regenerate. + * gnat_ugn.texi: Regenerate. + +2022-09-12 Piotr Trojanek + + * sem_attr.adb (Analyze_Attribute [Valid_Scalars]): Move check for + unchecked union before checks for private and public types. + +2022-09-12 Steve Baird + + * bindgen.adb: When the binder is invoked for the host, it + declares imported subprograms corresponding to the Adainit and + Adafinal routines on the device. Declare string constants and + expression functions for the Ada source names and the link names + of these routines. Generate these subprogram declarations (and + accompanying Import pragmas) in Gen_CUDA_Defs. Generate + CUDA_Execute pragmas to call these subprograms from the host in + Gen_Adafinal and Gen_CUDA_Init. When the binder is invoked for the + device, include a CUDA_Global aspect declaration in the + declarations of Adainit and Adafinal and use the aforementioned + link names in the Export pragmas generated for those two routines. + * debug.adb: Update comments about "d_c" and "d_d" switches. + * opt.ads: Declare new Boolean variable, + Enable_CUDA_Device_Expansion. This complements the existing + Enable_CUDA_Expansion variable, which is used to enable host-side + CUDA expansion. The new variable enables device-side CUDA + expansion. It is currently never set during compilation; it is + only set via a binder switch. + * switch-b.adb + (scan_debug_switches): Add new use of the "-d_d" binder switch. + The new switch and the variable Opt.Enabled_CUDA_Device_Expansion + follow the existing pattern of the "-d_c" switch and the variable + Opt.Enabled_CUDA_Expansion. Flag error if both "-d_c" and "-d_d" + are specified. + +2022-09-12 Eric Botcazou + + * contracts.adb (uild_Subprogram_Contract_Wrapper): Remove useless + local variable. In the case of a function, replace the extended + return statement by a block statement declaring a renaming of the + call to the local subprogram after removing side effects manually. + (Expand_Subprogram_Contract): Adjust description accordingly. + * exp_ch6.adb (Expand_Ctrl_Function_Call): Rewrite obsolete + comment and do not apply the transformation twice. + * sem_attr.adb (Analyze_Attribute_Old_Result): Now expect a block + statement instead of an extended return statement. + +2022-09-12 Piotr Trojanek + + * erroutc.adb (Set_Msg_Insertion_Name): Special-case printing with + acronyms. + +2022-09-12 Yannick Moy + + * libgnat/s-imagei.adb (Image_Integer): Add justification. + +2022-09-12 Piotr Trojanek + + * sem_prag.adb (Get_SPARK_Mode_Type): Fix header box; replace + chained IF with a CASE statement. + +2022-09-12 Yannick Moy + + * sem_prag.adb (Analyze_Pragma): Accept SPARK_Mode=>Auto as + configuration pragma. + (Get_SPARK_Mode): Make the value for Auto explicit. + * snames.ads-tmpl (Name_Auto): Add name. + +2022-09-12 Joffrey Huguet + + * doc/gnat_rm/the_gnat_library.rst: Remove paragraphs about SPARK + containers. + * gnat_rm.texi, gnat_ugn.texi: Regenerate. + +2022-09-12 Yannick Moy + + * libgnat/s-maccod.ads: Mark package as SPARK_Mode Off. + +2022-09-12 Eric Botcazou + + * fe.h (Unnest_Subprogram_Mode): Declare. + +2022-09-12 Steve Baird + + * contracts.adb + (Analyze_Package_Contract): Do not analyze the contract of a + temporary package created just to check conformance of an actual + package. + +2022-09-12 Joffrey Huguet + + * Makefile.rtl: Remove SPARK containers filenames. + * impunit.adb: Remove SPARK containers packages names. + * libgnat/a-cfdlli.adb, libgnat/a-cfdlli.ads: Remove content and + add pragma Compile_Time_Error with suitable message. + * libgnat/a-cfhama.adb, libgnat/a-cfhama.ads: Likewise. + * libgnat/a-cfhase.adb, libgnat/a-cfhase.ads: Likewise. + * libgnat/a-cfidll.adb, libgnat/a-cfidll.ads: Likewise. + * libgnat/a-cfinse.adb, libgnat/a-cfinse.ads: Likewise. + * libgnat/a-cfinve.adb, libgnat/a-cfinve.ads: Likewise. + * libgnat/a-cforma.adb, libgnat/a-cforma.ads: Likewise. + * libgnat/a-cforse.adb, libgnat/a-cforse.ads: Likewise. + * libgnat/a-cofove.adb, libgnat/a-cofove.ads: Likewise. + * libgnat/a-cofuma.adb, libgnat/a-cofuma.ads: Likewise. + * libgnat/a-cofuse.adb, libgnat/a-cofuse.ads: Likewise. + * libgnat/a-cofuve.adb, libgnat/a-cofuve.ads: Likewise. + * libgnat/a-cofuba.adb, libgnat/a-cofuba.ads: Remove package. + +2022-09-12 Piotr Trojanek + + * exp_attr.adb (Expand_N_Attribute_Reference [Attribute_Old]): + Adapt to object declaration being rewritten into object renaming. + +2022-09-12 Justin Squirek + + * contracts.adb, contracts.ads + (Analyze_Pragmas_In_Declarations): Added to aid in the new + expansion model so that pragmas relating to contracts can get + processed early before the rest of the subprogram containing them. + (Build_Subprogram_Contract_Wrapper): Created to do the majority of + expansion for postconditions. It builds a local wrapper with the + statements and declarations within a given subprogram. + (Is_Prologue_Renaming): Moved out from Process_Preconditions to be + used generally within the contracts package. + (Build_Entry_Contract_Wrapper): Moved from exp_ch7. + (Expand_Subprogram_Contract): Add new local variable Decls to + store expanded declarations needed for evaluation of contracts. + Call new wrapper building procedure and modify comments to match + new expansion model. + (Get_Postcond_Enabled): Deleted. + (Get_Result_Object_For_Postcond): Deleted. + (Get_Return_Success_For_Postcond): Deleted. + (Process_Contract_Cases): Add new parameter to store declarations. + (Process_Postconditions): Add new parameter to store declarations. + (Process_Preconditions): Add new parameter to store declarations. + Add code to move entry-call prologue renamings + * einfo.ads: Document new field Wrapped_Statements and modify + comment for Postconditions_Proc. + * exp_attr.adb + (Analyze_Attribute): Modify expansion of the 'Old attribute to + recognize new expansion model and use Wrapped_Statements instead + of Postconditions_Proc. + * exp_ch6.adb + (Add_Return): Remove special expansion for postconditions. + (Expand_Call): Modify condition checking for calls to access + subprogram wrappers to handle new expansion models. + (Expand_Call_Helper): Remove special expansion for postconditions. + (Expand_Non_Function_Return): Remove special expansion for + postconditions. + (Expand_Simple_Function_Return): Remove special expansion for + postconditions. + * exp_ch7.adb + (Build_Finalizer): Deleted, but replaced by code in + Build_Finalizer_Helper + (Build_Finalizer_Helper): Renamed to Build_Finalizer, and special + handling of 'Old objects removed. + * exp_ch9.adb + (Build_Contract_Wrapper): Renamed and moved to contracts package. + * exp_prag.adb + (Expand_Pragma_Contract_Cases): Delay analysis of contracts since + they now instead get analyzed as part of the wrapper generation + instead of after analysis of their corresponding subprogram's + body. + (Expand_Pragma_Check): Label expanded if-statements which come + from the expansion of assertion statements as + Comes_From_Check_Or_Contract. + * freeze.adb + (Freeze_Entity): Add special case to avoid freezing when a freeze + node gets generated as part of the expansion of a postcondition + check. + * gen_il-gen-gen_nodes.adb: Add new flag + Comes_From_Check_Or_Contract. + * gen_il-fields.ads: Add new field Wrapped_Statements. Add new + flag Comes_From_Check_Or_Contract. + * gen_il-gen-gen_entities.adb: Add new field Wrapped_Statements. + * ghost.adb + (Is_OK_Declaration): Replace Name_uPostconditions with + Name_uWrapped_Statements. + (Is_OK_Statement): Simplify condition due to the loss of + Original_Node as a result of the new expansion model of contracts + and use new flag Comes_From_Check_Or_Contract in its place. + * inline.adb + (Declare_Postconditions_Result): Replace Name_uPostconditions with + Name_uWrapped_Statements. + (Expand_Inlined_Call): Replace Name_uPostconditions with + Name_uWrapped_Statements. + * lib.adb, lib.ads + (ipu): Created to aid in debugging. + * lib-xref.adb + (Generate_References): Remove special handling for postcondition + procedures. + * sem_attr.adb + (Analyze_Attribute_Old_Result): Add new context in which 'Old can + appear due to the changes in expansion. Replace + Name_uPostconditions with Name_uWrapped_Statements. + (Result): Replace Name_uPostconditions with + Name_uWrapped_Statements. + * sem_ch11.adb + (Analyze_Handled_Statements): Remove check to exclude warnings on + useless assignments within postcondition procedures since + postconditions no longer get isolated into separate subprograms. + * sem_ch6.adb + (Analyze_Generic_Subprogram_Body): Modify expansion of generic + subprogram bodies so that contracts (and their associated pragmas) + get analyzed first. + (Analyze_Subprogram_Body_Helper): Remove global HSS variable due + to the HSS of the body potentially changing during the expansion + of contracts. In cases where it was used instead directly call + Handled_Statement_Sequence. Modify expansion of subprogram bodies + so that contracts (and their associated pragmas) get analyzed + first. + (Check_Missing_Return): Create local HSS variable instead of using + a global one. + (Move_Pragmas): Use new pragma table instead of an explicit list. + * sem_elab.adb + (Is_Postconditions_Proc): Deleted since the new scheme of + expansion no longer divides postcondition checks to a separate + subprogram and so cannot be easily identified (similar to + pre-condition checks). + (Info_Call): Remove info printing for _Postconditions subprograms. + (Is_Assertion_Pragma_Target): Remove check for postconditions + procedure + (Is_Bridge_Target): Remove check for postconditions procedure. + (Get_Invocation_Attributes): Remove unneeded local variables and + check for postconditions procedure. + (Output_Call): Remove info printing for _Postconditions + subprograms. + * sem_prag.adb, sem_prag.ads: Add new Pragma table for pragmas + significant to subprograms, along with tech-debt comment. + (Check_Arg_Is_Local_Name): Modified to recognize the new + _Wrapped_Statements internal subprogram and the new expansion + model. + (Relocate_Pragmas_To_Body): Replace Name_uPostconditions with + Name_uWrapped_Statements. + * sem_res.adb + (Resolve_Entry_Call): Add conditional to detect both contract + based wrappers of entries, but also wrappers generated as part of + general contract expansion (e.g. local postconditions + subprograms). + * sem_util.adb + (Accessibility_Level): Verify 'Access is not taken based on a + component of a function result. + (Has_Significant_Contracts): Replace Name_uPostconditions with + Name_uWrapped_Statements. + (Same_Or_Aliased_Subprogram): Add conditional to detect and obtain + the original subprogram based on the new concept of + "postcondition" wrappers. + * sinfo.ads: Add documentation for new flag + Comes_From_Check_Or_Contract. + * snames.ads-tmpl: Remove Name_uPostconditions and add + Name_uWrapped_Statements + +2022-09-12 Eric Botcazou + + * exp_unst.adb (Unnest_Subprograms.Search_Subprograms): Skip the + subprogram bodies that are not to be unnested. + +2022-09-12 Steve Baird + + * sem_aggr.adb + (Resolve_Array_Aggregate): Generate an appropriate error message + in the case where an error in the source code leads to an + N_Iterated_Element_Association node in a bad context. + +2022-09-12 Steve Baird + + * sem_ch4.adb + (Analyze_Selected_Component): Initialize the local variable Comp + to avoid having CodePeer generate an uninitialized variable + warning. + +2022-09-12 Steve Baird + + * sem_ch4.adb + (Analyze_Selected_Component): Avoid initializing the local + variable Comp if the variable is not going to be subsequently + referenced. This is a correctness issue because the call to + First_Entity can fail. + +2022-09-12 Steve Baird + + * sem_ch9.adb + (Satisfies_Lock_Free_Requirements): If Ceiling_Locking locking + policy has been specified, then either return False (if Lock_Free + was not explicitly specified) or generate a warning that ceiling + locking will not be implemented for this protected unit (if + Lock_Free was explicitly specified). Generate an error message (in + addition to returning False) if an explicit Lock_Free aspect + specification is rejected because atomic primitives are not + supported on the given target. + * doc/gnat_rm/implementation_defined_pragmas.rst: Clarify that the + Lock_Free aspect for a protected unit takes precedence over the + Ceiling_Locking locking policy in the case where both apply. + * gnat_rm.texi: Regenerate. + +2022-09-12 Eric Botcazou + + * exp_ch9.adb (Build_Protected_Spec): Tidy up and propagate the + Comes_From_Source flag onto the new formal parameters. + * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Do not check + references for subprograms generated for protected subprograms. + +2022-09-12 Gary Dismukes + + * sem_res.adb + (Resolve_Equality_Op): Add handling for equality ops with + user-defined literal operands. + * sem_util.ads + (Is_User_Defined_Literal): Update spec comment to indicate + inclusion of named number cases. + * sem_util.adb + (Corresponding_Primitive_Op): Rather than following the chain of + ancestor subprograms via Alias and Overridden_Operation links, we + check for matching profiles between primitive subprograms of the + descendant type and the ancestor subprogram (by calling a new + nested function Profile_Matches_Ancestor). This prevents the + compiler from hanging due to circular linkages via those fields + that can occur between inherited and overriding subprograms + (which might indicate a latent bug, but one that may be rather + delicate to resolve). + (Profile_Matches_Ancestor): New nested subprogram to compare the + profile of a primitive subprogram with the profile of a candidate + ancestor subprogram. + (Is_User_Defined_Literal): Also return True in cases where the + node N denotes a named number (E_Name_Integer and E_Named_Real). + +2022-09-12 Steve Baird + + * debug.adb: remove a comment. + +2022-09-12 Bob Duff + + * checks.adb + (Selected_Length_Checks): In the message for an aggregate that has + too few or too many elements, add "!!" to make sure the warning + gets printed in with'ed units. Note that we have to put "!!" + before the "??", because Compile_Time_Constraint_Error detects + warnings by comparing the last character of the message with '?' + (which is bit dubious, but we're not changing that here). + (Length_Mismatch_Info_Message): Use Unat for some things that + can't be negative. Specify Decimal instead of Auto in calls to + UI_Image. + * sem_util.adb + (Compile_Time_Constraint_Error): Minor. + * uintp.adb + (Image_Uint): It's always better to initialize objects on their + declaration. + +2022-09-12 Patrick Bernardi + + * libgnat/system-vxworks7-x86_64-kernel.ads: Set + Support_Atomic_Primitives to false. + * libgnat/system-vxworks7-x86_64-rtp-smp.ads: Ditto. + +2022-09-12 Patrick Bernardi + + * libgnat/system-qnx-arm.ads: Set Support_Atomic_Primitives to + false. + * libgnat/system-vxworks7-aarch64.ads: Ditto. + * libgnat/system-vxworks7-aarch64-rtp-smp.ads: Ditto. + * libgnat/system-vxworks7-arm.ads: Ditto. + * libgnat/system-vxworks7-arm-rtp-smp.ads: Ditto. + * libgnat/system-vxworks7-x86-kernel.ads: Ditto. + * libgnat/system-vxworks7-x86-rtp-smp.ads: Ditto. + +2022-09-12 Bob Duff + + * par-tchk.adb, par-util.adb, prep.adb, prepcomp.adb, scng.adb: + Use "in" instead of chains of "=" connected with "or else". + Likewise for "not in", "/=", "and then". Misc cleanup. + * par-ch10.adb, par-ch12.adb, par-ch13.adb, par-ch4.adb: Likewise. + * par-ch8.adb, par-ch9.adb, par-endh.adb, par-sync.adb: Likewise. + * par.adb + (Pf_Rec): Remove filler, which was added August 25, 1993 to get + around a compiler limitation that no longer exists. Minor cleanup. + Remove useless qualfications. + * par-ch3.adb: Remove redundant return statements. + (Component_Scan_Loop): Remove loop name; there are no nested + loops, so it's unnecessary and possibly misleading, and it causes + too-long lines. + * par-ch5.adb: DRY: Remove comments that repeat the comments in + par.adb. + (P_Sequence_Of_Statements): It is better to initialize things on + the declaration. And constants are better than variables. + (Test_Statement_Required): Remove unnecessary insertion of a null + statement. + * par-ch6.adb, par-ch7.adb: DRY: Remove comments that repeat the + comments in par.adb. + +2022-09-12 Javier Miranda + + Revert: + 2022-09-06 Javier Miranda + + * debug.adb + (Debug_Flag_Underscore_X): Switch added temporarily to allow + disabling extra formal checks. + * exp_attr.adb + (Expand_N_Attribute_Reference [access types]): Add extra formals + to the subprogram referenced in the prefix of 'Unchecked_Access, + 'Unrestricted_Access or 'Access; required to check that its extra + formals match the extra formals of the corresponding subprogram + type. + * exp_ch3.adb + (Stream_Operation_OK): Declaration moved to the public part of the + package. + (Validate_Tagged_Type_Extra_Formals): New subprogram. + (Expand_Freeze_Record_Type): Improve the code that takes care of + adding the extra formals of dispatching primitives; extended to + add also the extra formals to renamings of dispatching primitives. + * exp_ch3.ads + (Stream_Operation_OK): Declaration moved from the package body. + * exp_ch6.adb + (Has_BIP_Extra_Formal): Subprogram declaration moved to the public + part of the package. In addition, a parameter has been added to + disable an assertion that requires its use with frozen entities. + (Expand_Call_Helper): Enforce assertion checking extra formals on + thunks. + (Is_Build_In_Place_Function): Return False for entities with + foreign convention. + (Make_Build_In_Place_Call_In_Object_Declaration): Occurrences of + Is_Return_Object replaced by the local variable + Is_OK_Return_Object that evaluates to False for scopes with + foreign convention. + (Might_Have_Tasks): Fix check of class-wide limited record types. + (Needs_BIP_Task_Actuals): Remove assertion to allow calling this + function in more contexts; in addition it returns False for + functions returning objects with foreign convention. + (Needs_BIP_Finalization_Master): Likewise. + (Needs_BIP_Alloc_Form): Likewise. + * exp_ch6.ads + (Stream_Operation_OK): Declaration moved from the package body. In + addition, a parameter has been added to disable assertion that + requires its use with frozen entities. + * freeze.adb + (Check_Itype): Add extra formals to anonymous access subprogram + itypes. + (Freeze_Expression): Improve code that disables the addition of + extra formals to functions with foreign convention. + (Check_Extra_Formals): Moved to package Sem_Ch6 as + Extra_Formals_OK. + (Freeze_Subprogram): Add extra formals to non-dispatching + subprograms. + * sem_ch3.adb + (Access_Subprogram_Declaration): Defer the addition of extra + formals to the freezing point so that we know the convention. + (Check_Anonymous_Access_Component): Likewise. + (Derive_Subprogram): Fix documentation. + * sem_ch6.adb + (Check_Anonymous_Return): Fix check of access to class-wide + limited record types. + (Check_Untagged_Equality): Placed in alphabetical order. + (Extra_Formals_OK): Subprogram moved from freeze.adb. + (Extra_Formals_Match_OK): New subprogram. + (Has_BIP_Formals): New subprogram. + (Has_Extra_Formals): New subprograms. + (Needs_Accessibility_Check_Extra): New subprogram. + (Needs_Constrained_Extra): New subprogram. + (Parent_Subprogram): New subprogram. + (Add_Extra_Formal): Minor code cleanup. + (Create_Extra_Formals): Enforce matching extra formals on + overridden and aliased entities. + (Has_Reliable_Extra_Formals): New subprogram. + * sem_ch6.ads + (Extra_Formals_OK): Subprogram moved from freeze.adb. + (Extra_Formals_Match_OK): New subprogram. + * sem_eval.adb + (Compile_Time_Known_Value): Improve predicate to avoid assertion + failure; found working on this ticket; this change does not affect + the behavior of the compiler because this subprogram has an + exception handler that returns False when the assertion fails. + * sem_util.adb + (Needs_Result_Accessibility_Level): Do not return False for + dispatching operations compiled with Ada_Version < 2012 since they + they may be overridden by primitives compiled with Ada_Version >= + Ada_2012. + 2022-09-06 Eric Botcazou * gcc-interface/decl.cc (gnat_to_gnu_param): Set DECL_ARTIFICIAL. diff --git a/gcc/analyzer/ChangeLog b/gcc/analyzer/ChangeLog index ea6d5eeff3e..3af1a38cec3 100644 --- a/gcc/analyzer/ChangeLog +++ b/gcc/analyzer/ChangeLog @@ -1,3 +1,8 @@ +2022-09-12 Martin Liska + + * region-model.cc (region_model::maybe_complain_about_infoleak): + Remove unused fields. + 2022-09-11 Tim Lange PR analyzer/106845 diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 0f374234018..61ad2f8bb7e 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,97 @@ +2022-09-12 Patrick Palka + + * call.cc (build_conditional_expr): Adjust calls to + '_sfinae'-suffixed functions. + (build_temp): Likewise. + (convert_like_internal): Likewise. + (convert_arg_to_ellipsis): Likewise. + (build_over_call): Likewise. + (build_cxx_call): Likewise. + (build_new_method_call): Likewise. + * constexpr.cc (cxx_eval_outermost_constant_expr): Likewise. + (cxx_constant_value_sfinae): Rename to ... + (cxx_constant_value): ... this. Document its default arguments. + (fold_non_dependent_expr): Adjust function comment. + * cp-tree.h (instantiate_non_dependent_expr_sfinae): Rename to ... + (instantiate_non_dependent_expr): ... this. Give its 'complain' + parameter a default argument. + (get_target_expr_sfinae, get_target_expr): Likewise. + (require_complete_type_sfinae, require_complete_type): Likewise. + (abstract_virtuals_error_sfinae, abstract_virtuals_error): + Likewise. + (cxx_constant_value_sfinae, cxx_constant_value): Likewise. + * cvt.cc (build_up_reference): Adjust calls to '_sfinae'-suffixed + functions. + (ocp_convert): Likewise. + * decl.cc (build_explicit_specifier): Likewise. + * except.cc (build_noexcept_spec): Likewise. + * init.cc (build_new_1): Likewise. + * pt.cc (expand_integer_pack): Likewise. + (instantiate_non_dependent_expr_internal): Adjust function + comment. + (instantiate_non_dependent_expr): Rename to ... + (instantiate_non_dependent_expr_sfinae): ... this. Document its + default argument. + (tsubst_init): Adjust calls to '_sfinae'-suffixed functions. + (fold_targs_r): Likewise. + * semantics.cc (finish_compound_literal): Likewise. + (finish_decltype_type): Likewise. + (cp_build_bit_cast): Likewise. + * tree.cc (build_cplus_new): Likewise. + (get_target_expr): Rename to ... + (get_target_expr_sfinae): ... this. Document its default + argument. + * typeck.cc (require_complete_type): Rename to ... + (require_complete_type_sfinae): ... this. Document its default + argument. + (cp_build_array_ref): Adjust calls to '_sfinae'-suffixed + functions. + (convert_arguments): Likewise. + (cp_build_binary_op): Likewise. + (build_static_cast_1): Likewise. + (cp_build_modify_expr): Likewise. + (convert_for_initialization): Likewise. + * typeck2.cc (abstract_virtuals_error): Rename to ... + (abstract_virtuals_error_sfinae): ... this. Document its default + argument. + (build_functional_cast_1): Adjust calls to '_sfinae'-suffixed + functions. + +2022-09-12 Patrick Palka + + PR c++/101906 + * pt.cc (tsubst_template_args): Set cp_evaluated here. + (tsubst_aggr_type): Not here. + +2022-09-12 Jason Merrill + + PR c++/106893 + PR c++/90451 + * decl.cc (cp_finish_decl): Call mark_single_function. + +2022-09-12 Jason Merrill + + PR c++/93259 + * pt.cc (type_dependent_expression_p): Treat a compound + literal of array-of-unknown-bound type like a variable. + +2022-09-12 Jason Merrill + + PR c++/106567 + * lambda.cc (type_deducible_expression_p): Check + array_of_unknown_bound_p. + +2022-09-12 Jonathan Wakely + + PR c++/86491 + * decl2.cc (constrain_class_visibility): Adjust wording of + -Wsubobject-linkage for cases where anonymous + namespaces aren't used. + * tree.cc (decl_anon_ns_mem_p): Now only true for actual anonymous + namespace members, rename old semantics to... + (decl_internal_context_p): ...this. + * cp-tree.h, name-lookup.cc, pt.cc: Adjust. + 2022-09-08 Jonathan Wakely PR c++/106838 diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 21459ed708e..2dbed4a35a8 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,56 @@ +2022-09-12 Patrick Palka + + PR c++/101906 + * g++.dg/template/evaluated1.C: New test. + * g++.dg/template/evaluated1a.C: New test. + * g++.dg/template/evaluated1b.C: New test. + * g++.dg/template/evaluated1c.C: New test. + +2022-09-12 Jason Merrill + + PR c++/106893 + PR c++/90451 + * g++.dg/cpp1y/auto-fn65.C: New test. + +2022-09-12 Jason Merrill + + PR c++/93259 + * g++.dg/cpp0x/initlist-array17.C: New test. + +2022-09-12 Jason Merrill + + PR c++/106567 + * g++.dg/cpp0x/lambda/lambda-array4.C: New test. + +2022-09-12 Jonathan Wakely + + PR c++/86491 + * g++.dg/warn/anonymous-namespace-3.C: Use separate dg-warning + directives for C++98 and everything else. + * g++.dg/warn/Wsubobject-linkage-5.C: New test. + +2022-09-12 Joseph Myers + + * gcc.dg/atomic/c2x-stdatomic-var-init-1.c: New test. + +2022-09-12 Torbjörn SVENSSON + + * g++.dg/gcov/gcov.exp: Respect triplet when looking for gcov. + * gcc.misc-tests/gcov.exp: Likewise. + +2022-09-12 Joffrey Huguet + + * gnat.dg/aspect2.adb: Removed. + * gnat.dg/aspect2.ads: Removed. + * gnat.dg/config_pragma1.adb: Removed. + * gnat.dg/config_pragma1_pkg.ads: Removed. + * gnat.dg/equal8.adb: Removed. + * gnat.dg/equal8.ads: Removed. + * gnat.dg/equal8_pkg.ads: Removed. + * gnat.dg/formal_containers.adb: Removed. + * gnat.dg/iter1.adb: Removed. + * gnat.dg/iter1.ads: Removed. + 2022-09-11 Tim Lange PR analyzer/106845 diff --git a/libgomp/ChangeLog b/libgomp/ChangeLog index ea62dc623ed..3ff9d25d76b 100644 --- a/libgomp/ChangeLog +++ b/libgomp/ChangeLog @@ -1,3 +1,28 @@ +2022-09-12 Tobias Burnus + + * libgomp.texi (Offload-Target Specifics: nvptx): Document + that reverse offload requires >= -march=sm_35. + * testsuite/libgomp.c-c++-common/requires-4.c: Build for nvptx + with -misa=sm_35. + * testsuite/libgomp.c-c++-common/requires-5.c: Likewise. + * testsuite/libgomp.c-c++-common/requires-6.c: Likewise. + * testsuite/libgomp.c-c++-common/reverse-offload-1.c: Likewise. + * testsuite/libgomp.fortran/reverse-offload-1.f90: Likewise. + * testsuite/libgomp.c/reverse-offload-sm30.c: New test. + +2022-09-12 Tobias Burnus + + * libgomp.texi (OpenMP 5.1 Impl. Status): Add two new minor items. + (OpenMP 5.2 Impl. Status): Improve omp/omx/ompx wording. + +2022-09-12 Jakub Jelinek + + PR libgomp/106894 + * testsuite/libgomp.c-c++-common/icv-6.c: Include string.h. + (main): Avoid tests for which corresponding non-_ALL suffixed variable + is in the environment, or for OMP_NUM_TEAMS on the device + OMP_NUM_TEAMS_DEV_?. + 2022-09-10 Iain Sandoe * env.c (initialize_env): Include libiberty environ.h. diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 2e15013bd0a..5ee68604bbf 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,32 @@ +2022-09-12 Patrick Palka + + PR libstdc++/106320 + * testsuite/std/ranges/adaptors/join.cc (test13): New test. + +2022-09-12 Jonathan Wakely + + * testsuite/19_diagnostics/error_code/cons/lwg3629.cc: Fix + comments. + * testsuite/19_diagnostics/error_condition/cons/lwg3629.cc: + Likewise. + +2022-09-12 Jakub Jelinek + + PR tree-optimization/105329 + * acinclude.m4 (libtool_VERSION): Change to 6:31:0. + * config/abi/pre/gnu.ver (GLIBCXX_3.4.21): Don't export + std::basic_string methods with name length of 15. + (GLIBCXX_3.4.31): Export std::basic_string::_M_replace_cold. + * testsuite/util/testsuite_abi.cc (check_version): Handle + GLIBCXX_3.4.31. + * include/bits/basic_string.h (std::basic_string::_M_replace_cold): + Declare. + * include/bits/basic_string.tcc (std::basic_string::_M_replace_cold): + Define and export even for C++20. + (std::basic_string::_M_replace): Use __builtin_expect, outline + the overlapping case to _M_replace_cold. + * configure: Regenerated. + 2022-09-09 Jonathan Wakely * include/bits/atomic_base.h (__atomic_impl::__compare_exchange):