diff options
Diffstat (limited to 'gcc/ada/atree.adb')
-rw-r--r-- | gcc/ada/atree.adb | 21 |
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; |