[Ada] Cleanup expansion of protected entry families
Expansion of entry families contained a condition that was always true. Cleanup related to detection of uninitialized scalar objects (which uncovered that expansion of entry families creates a slightly illegal AST with Elsif_Parts being an empty list). gcc/ada/ * exp_ch9.adb (Build_Find_Body_Index): Remove IF statement whose condition was true-by-construction; remove excessive assertion (since the call to Elsif_Parts will check that Nod is present and it is an if-statement).
This commit is contained in:
parent
4e474137e7
commit
b626498f6e
@ -2793,20 +2793,14 @@ package body Exp_Ch9 is
|
||||
Expression => Make_Integer_Literal (Loc, 1));
|
||||
|
||||
else
|
||||
pragma Assert (Present (Ret));
|
||||
-- Ranges are in increasing order, so last one doesn't need guard
|
||||
|
||||
if Nkind (Ret) = N_If_Statement then
|
||||
|
||||
-- Ranges are in increasing order, so last one doesn't need
|
||||
-- guard.
|
||||
|
||||
declare
|
||||
Nod : constant Node_Id := Last (Elsif_Parts (Ret));
|
||||
begin
|
||||
Remove (Nod);
|
||||
Set_Else_Statements (Ret, Then_Statements (Nod));
|
||||
end;
|
||||
end if;
|
||||
declare
|
||||
Nod : constant Node_Id := Last (Elsif_Parts (Ret));
|
||||
begin
|
||||
Remove (Nod);
|
||||
Set_Else_Statements (Ret, Then_Statements (Nod));
|
||||
end;
|
||||
end if;
|
||||
end if;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user