diff options
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ada/contracts.adb | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/gcc/ada/contracts.adb b/gcc/ada/contracts.adb index 65f341a..15b65ee 100644 --- a/gcc/ada/contracts.adb +++ b/gcc/ada/contracts.adb @@ -4936,9 +4936,11 @@ package body Contracts is begin if Par /= Parent_Node then - pragma Assert (not Is_List_Member (Node) - or else Nkind (Par) = N_Function_Call); - Set_Parent (Node, Parent_Node); + if Is_List_Member (Node) then + Set_List_Parent (List_Containing (Node), Parent_Node); + else + Set_Parent (Node, Parent_Node); + end if; end if; return OK; |