diff options
author | Eric Botcazou <ebotcazou@adacore.com> | 2015-05-27 19:57:43 +0000 |
---|---|---|
committer | Eric Botcazou <ebotcazou@gcc.gnu.org> | 2015-05-27 19:57:43 +0000 |
commit | 73b4a60f5cac0df12dd2346cf3963d9700e8e205 (patch) | |
tree | a1a7a27513bfdb94830d9392e099cbc88b24502e /gcc/ada/gcc-interface | |
parent | ea023bcfd8a6549df22232792038310fd4f2f967 (diff) | |
download | gcc-73b4a60f5cac0df12dd2346cf3963d9700e8e205.zip gcc-73b4a60f5cac0df12dd2346cf3963d9700e8e205.tar.gz gcc-73b4a60f5cac0df12dd2346cf3963d9700e8e205.tar.bz2 |
trans.c (elaborate_all_entities): Do not elaborate an incomplete type coming from a limited_with and whose...
* gcc-interface/trans.c (elaborate_all_entities): Do not elaborate an
incomplete type coming from a limited_with and whose non-limited view
comes from the main unit.
From-SVN: r223772
Diffstat (limited to 'gcc/ada/gcc-interface')
-rw-r--r-- | gcc/ada/gcc-interface/trans.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/ada/gcc-interface/trans.c b/gcc/ada/gcc-interface/trans.c index 7fc8a5c..c3b06c2 100644 --- a/gcc/ada/gcc-interface/trans.c +++ b/gcc/ada/gcc-interface/trans.c @@ -8158,6 +8158,10 @@ elaborate_all_entities (Node_Id gnat_node) && Ekind (gnat_entity) != E_Operator && !(IN (Ekind (gnat_entity), Type_Kind) && !Is_Frozen (gnat_entity)) + && !(IN (Ekind (gnat_entity), Incomplete_Kind) + && From_Limited_With (gnat_entity) + && In_Extended_Main_Code_Unit + (Non_Limited_View (gnat_entity))) && !((Ekind (gnat_entity) == E_Procedure || Ekind (gnat_entity) == E_Function) && Is_Intrinsic_Subprogram (gnat_entity)) |