diff options
author | Eric Botcazou <ebotcazou@adacore.com> | 2017-12-13 09:18:24 +0000 |
---|---|---|
committer | Eric Botcazou <ebotcazou@gcc.gnu.org> | 2017-12-13 09:18:24 +0000 |
commit | 692317f4310e9652099f5097313e5965703aca92 (patch) | |
tree | 255740e1636874bd43d01a60ac650f6a6718d0f6 /gcc/ada | |
parent | a3fc8f169fc51d7774c6217056532b2540ce7290 (diff) | |
download | gcc-692317f4310e9652099f5097313e5965703aca92.zip gcc-692317f4310e9652099f5097313e5965703aca92.tar.gz gcc-692317f4310e9652099f5097313e5965703aca92.tar.bz2 |
trans.c (process_freeze_entity): Be prepared for a package without body.
* gcc-interface/trans.c (process_freeze_entity): Be prepared for a
package without body.
From-SVN: r255601
Diffstat (limited to 'gcc/ada')
-rw-r--r-- | gcc/ada/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/ada/gcc-interface/trans.c | 8 |
2 files changed, 9 insertions, 4 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 70c596e..534b8cf 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,5 +1,10 @@ 2017-12-13 Eric Botcazou <ebotcazou@adacore.com> + * gcc-interface/trans.c (process_freeze_entity): Be prepared for a + package without body. + +2017-12-13 Eric Botcazou <ebotcazou@adacore.com> + * gcc-interface/decl.c (gnat_to_gnu_entity): Robustify test for types descendant of System.Address. (gnat_to_gnu_subprog_type): Likewise. diff --git a/gcc/ada/gcc-interface/trans.c b/gcc/ada/gcc-interface/trans.c index 4739923..7a83acf 100644 --- a/gcc/ada/gcc-interface/trans.c +++ b/gcc/ada/gcc-interface/trans.c @@ -8718,12 +8718,12 @@ process_freeze_entity (Node_Id gnat_node) const Entity_Kind kind = Ekind (gnat_entity); tree gnu_old, gnu_new; - /* If this is a package, we need to generate code for the package. */ + /* If this is a package, generate code for the package body, if any. */ if (kind == E_Package) { - insert_code_for - (Parent (Corresponding_Body - (Parent (Declaration_Node (gnat_entity))))); + const Node_Id gnat_decl = Parent (Declaration_Node (gnat_entity)); + if (Present (Corresponding_Body (gnat_decl))) + insert_code_for (Parent (Corresponding_Body (gnat_decl))); return; } |