[gcc r14-3699] ada: Elide the copy in extended returns for nonlimited by-reference types
Marc Poulhi?s
dkm@gcc.gnu.org
Tue Sep 5 11:09:32 GMT 2023
https://gcc.gnu.org/g:da4e06d476d55193dad66628160a089e5ec1e737
commit r14-3699-gda4e06d476d55193dad66628160a089e5ec1e737
Author: Eric Botcazou <ebotcazou@adacore.com>
Date: Wed Aug 23 15:11:57 2023 +0200
ada: Elide the copy in extended returns for nonlimited by-reference types
gcc/ada/
* gcc-interface/trans.cc (gnat_to_gnu): Really test Storage_Pool on
the simple return statement.
Diff:
---
gcc/ada/gcc-interface/trans.cc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gcc/ada/gcc-interface/trans.cc b/gcc/ada/gcc-interface/trans.cc
index 5d93060c6d85..e99fbb4eb5ed 100644
--- a/gcc/ada/gcc-interface/trans.cc
+++ b/gcc/ada/gcc-interface/trans.cc
@@ -8519,7 +8519,7 @@ gnat_to_gnu (Node_Id gnat_node)
&& ((Nkind (Parent (gnat_node)) == N_Attribute_Reference
&& lvalue_required_for_attribute_p (Parent (gnat_node)))
|| (Nkind (Parent (gnat_node)) == N_Simple_Return_Statement
- && No (Storage_Pool (gnat_node)))))
+ && No (Storage_Pool (Parent (gnat_node))))))
;
else if (TREE_TYPE (gnu_result) != gnu_result_type)
More information about the Gcc-cvs
mailing list