summaryrefslogtreecommitdiff
path: root/gcc/ada/atree.adb
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/ada/atree.adb')
-rw-r--r--gcc/ada/atree.adb21
1 files changed, 21 insertions, 0 deletions
diff --git a/gcc/ada/atree.adb b/gcc/ada/atree.adb
index 7bfff100a56..f9c24bf2930 100644
--- a/gcc/ada/atree.adb
+++ b/gcc/ada/atree.adb
@@ -2354,6 +2354,27 @@ package body Atree is
return OK;
end if;
+ when OK_Orig =>
+ declare
+ Onode : constant Node_Id := Original_Node (Node);
+
+ begin
+ if Traverse_Field (Union_Id (Field1 (Onode))) = Abandon
+ or else
+ Traverse_Field (Union_Id (Field2 (Onode))) = Abandon
+ or else
+ Traverse_Field (Union_Id (Field3 (Onode))) = Abandon
+ or else
+ Traverse_Field (Union_Id (Field4 (Onode))) = Abandon
+ or else
+ Traverse_Field (Union_Id (Field5 (Onode))) = Abandon
+ then
+ return Abandon;
+
+ else
+ return OK_Orig;
+ end if;
+ end;
end case;
end Traverse_Func;