]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
exp_ch7.adb (Find_Node_To_Be_Wrapped): If the node appears within the entry_call...
authorEd Schonberg <schonberg@adacore.com>
Thu, 16 Jun 2005 08:37:25 +0000 (10:37 +0200)
committerArnaud Charlet <charlet@gcc.gnu.org>
Thu, 16 Jun 2005 08:37:25 +0000 (10:37 +0200)
2005-06-14  Ed Schonberg  <schonberg@adacore.com>

* exp_ch7.adb (Find_Node_To_Be_Wrapped): If the node appears within
the entry_call alternative of a conditional entry call, wrap the
conditional entry call itself.

From-SVN: r101033

gcc/ada/exp_ch7.adb

index 4e300b9508f0ab391b87c8273927833440f46e2d..bd18e62fc7de002bd80f7850c99943df37ba50ce 100644 (file)
@@ -291,7 +291,7 @@ package body Exp_Ch7 is
    --      controller but this would not tackle view conversions properly.
    --    - A classwide type can always potentially have controlled components
    --      but the record controller of the corresponding actual type may not
-   --      be nown at compile time so the dispatch table contains a special
+   --      be known at compile time so the dispatch table contains a special
    --      field that allows to compute the offset of the record controller
    --      dynamically. See s-finimp.Deep_Tag_Attach and a-tags.RC_Offset
 
@@ -1758,7 +1758,11 @@ package body Exp_Ch7 is
                  N_Procedure_Call_Statement =>
                if Nkind (Parent (The_Parent)) = N_Entry_Call_Alternative
                  and then
-                   Nkind (Parent (Parent (The_Parent))) = N_Timed_Entry_Call
+                   (Nkind (Parent (Parent (The_Parent)))
+                     = N_Timed_Entry_Call
+                   or else
+                     Nkind (Parent (Parent (The_Parent)))
+                       = N_Conditional_Entry_Call)
                then
                   return Parent (Parent (The_Parent));
                else