diff options
author | Eric Botcazou <ebotcazou@adacore.com> | 2023-06-09 20:24:41 +0200 |
---|---|---|
committer | Marc Poulhiès <poulhies@adacore.com> | 2023-06-20 13:25:28 +0200 |
commit | 6f695bfd736c8cc4dd7a93f42f3574aa9f459163 (patch) | |
tree | c9f459bc925a6d9bd4268683bf11c5b698c3d11a /gcc | |
parent | c11ef75cb2cd60b0c4408aa8ed1898b69b8c946a (diff) | |
download | gcc-6f695bfd736c8cc4dd7a93f42f3574aa9f459163.zip gcc-6f695bfd736c8cc4dd7a93f42f3574aa9f459163.tar.gz gcc-6f695bfd736c8cc4dd7a93f42f3574aa9f459163.tar.bz2 |
ada: Minor tweaks
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.
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ada/gcc-interface/decl.cc | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/gcc/ada/gcc-interface/decl.cc b/gcc/ada/gcc-interface/decl.cc index b2b7778..494b24e 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); } |