[COMMITTED] ada: Minor tweaks

Message ID 20230620112635.1299512-1-poulhies@adacore.com
State Accepted
Headers
Series [COMMITTED] ada: Minor tweaks |

Checks

Context Check Description
snail/gcc-patch-check success Github commit url

Commit Message

Marc Poulhiès June 20, 2023, 11:26 a.m. UTC
  From: Eric Botcazou <ebotcazou@adacore.com>

gcc/ada/

	* gcc-interface/decl.cc (gnat_to_gnu_entity) <E_Variable>: Pass
	the NULL_TREE explicitly and test imported_p in lieu of
	Is_Imported. <E_Function>: Remove public_flag local variable and
	make extern_flag local variable a constant.

Tested on x86_64-pc-linux-gnu, committed on master.

---
 gcc/ada/gcc-interface/decl.cc | 14 ++++++--------
 1 file changed, 6 insertions(+), 8 deletions(-)
  

Patch

diff --git a/gcc/ada/gcc-interface/decl.cc b/gcc/ada/gcc-interface/decl.cc
index b2b77787bc0..494b24e2111 100644
--- a/gcc/ada/gcc-interface/decl.cc
+++ b/gcc/ada/gcc-interface/decl.cc
@@ -1162,7 +1162,7 @@  gnat_to_gnu_entity (Entity_Id gnat_entity, tree gnu_expr, bool definition)
 
 		    gnu_expr = build_unary_op (ADDR_EXPR, gnu_type, gnu_expr);
 
-		    create_var_decl (gnu_entity_name, gnu_ext_name,
+		    create_var_decl (gnu_entity_name, NULL_TREE,
 				     TREE_TYPE (gnu_expr), gnu_expr,
 				     const_flag, Is_Public (gnat_entity),
 				     imported_p, static_flag, volatile_flag,
@@ -1533,7 +1533,7 @@  gnat_to_gnu_entity (Entity_Id gnat_entity, tree gnu_expr, bool definition)
 
 	/* If this name is external or a name was specified, use it, but don't
 	   use the Interface_Name with an address clause (see cd30005).  */
-	if ((Is_Public (gnat_entity) && !Is_Imported (gnat_entity))
+	if ((Is_Public (gnat_entity) && !imported_p)
 	    || (Present (Interface_Name (gnat_entity))
 		&& No (Address_Clause (gnat_entity))))
 	  gnu_ext_name = create_concat_name (gnat_entity, NULL);
@@ -3977,10 +3977,9 @@  gnat_to_gnu_entity (Entity_Id gnat_entity, tree gnu_expr, bool definition)
 	  = gnu_ext_name_for_subprog (gnat_entity, gnu_entity_name);
 	const enum inline_status_t inline_status
 	  = inline_status_for_subprog (gnat_entity);
-	bool public_flag = Is_Public (gnat_entity) || imported_p;
 	/* Subprograms marked both Intrinsic and Always_Inline need not
 	   have a body of their own.  */
-	bool extern_flag
+	const bool extern_flag
 	  = ((Is_Public (gnat_entity) && !definition)
 	     || imported_p
 	     || (Is_Intrinsic_Subprogram (gnat_entity)
@@ -4135,10 +4134,9 @@  gnat_to_gnu_entity (Entity_Id gnat_entity, tree gnu_expr, bool definition)
 	    else
 	      gnu_decl
 		= create_subprog_decl (gnu_entity_name, gnu_ext_name,
-				       gnu_type, gnu_param_list,
-				       inline_status, public_flag,
-				       extern_flag, artificial_p,
-				       debug_info_p,
+				       gnu_type, gnu_param_list, inline_status,
+				       Is_Public (gnat_entity) || imported_p,
+				       extern_flag, artificial_p, debug_info_p,
 				       definition && imported_p, attr_list,
 				       gnat_entity);
 	  }