public inbox for gcc-cvs@sourceware.org
help / color / mirror / Atom feed
* [gcc r13-5027] ada: Remove unhelpful special case for renamed bodies in GNATprove mode
@ 2023-01-05 14:39 Marc Poulhi?s
0 siblings, 0 replies; only message in thread
From: Marc Poulhi?s @ 2023-01-05 14:39 UTC (permalink / raw)
To: gcc-cvs
https://gcc.gnu.org/g:6147feb54c7473033c5e9344fdd834c417820af4
commit r13-5027-g6147feb54c7473033c5e9344fdd834c417820af4
Author: Piotr Trojanek <trojanek@adacore.com>
Date: Tue Dec 20 16:27:30 2022 +0100
ada: Remove unhelpful special case for renamed bodies in GNATprove mode
This patch reverts a special-case related to inlining of renamed bodies
in GNATprove mode. Its idea was that inlining is decided in routine
Cannot_Inline, which is called much later. This didn't quite work,
because in the meantime the renamed body was prepared to inlining in
Build_Body_To_Inline, which was not designed to handle renamed bodies.
gcc/ada/
* freeze.adb (Build_Renamed_Body): Revert a special case for
GNATprove; remove unnecessary initialization of a local variable.
Diff:
---
gcc/ada/freeze.adb | 7 ++-----
1 file changed, 2 insertions(+), 5 deletions(-)
diff --git a/gcc/ada/freeze.adb b/gcc/ada/freeze.adb
index 97a25d10835..a3ab685f5fc 100644
--- a/gcc/ada/freeze.adb
+++ b/gcc/ada/freeze.adb
@@ -398,7 +398,7 @@ package body Freeze is
Nam : constant Node_Id := Name (N);
Old_S : Entity_Id;
Spec : constant Node_Id := New_Copy_Tree (Specification (Decl));
- Actuals : List_Id := No_List;
+ Actuals : List_Id;
Call_Node : Node_Id;
Call_Name : Node_Id;
Body_Node : Node_Id;
@@ -477,14 +477,11 @@ package body Freeze is
-- calls to the renamed entity. The body must be generated in any case
-- for calls that may appear elsewhere. This is not done in the case
-- where the subprogram is an instantiation because the actual proper
- -- body has not been built yet. This is also not done in GNATprove mode
- -- as we need to check other conditions for creating a body to inline
- -- in that case, which are controlled in Analyze_Subprogram_Body_Helper.
+ -- body has not been built yet.
if Ekind (Old_S) in E_Function | E_Procedure
and then Nkind (Decl) = N_Subprogram_Declaration
and then not Is_Generic_Instance (Old_S)
- and then not GNATprove_Mode
then
Set_Body_To_Inline (Decl, Old_S);
end if;
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2023-01-05 14:39 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-01-05 14:39 [gcc r13-5027] ada: Remove unhelpful special case for renamed bodies in GNATprove mode Marc Poulhi?s
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).