From: Javier Miranda Date: Tue, 12 May 2020 15:01:16 +0000 (-0400) Subject: [Ada] Ada2020: AI12-0198 potentially unevaluated components of arrays X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=572fa852f2f5cba25f70fc49c9bf18493433617c;p=gcc.git [Ada] Ada2020: AI12-0198 potentially unevaluated components of arrays gcc/ada/ * sem_util.adb (Is_Potentially_Unevaluated): Protect reading attribute Etype. --- diff --git a/gcc/ada/sem_util.adb b/gcc/ada/sem_util.adb index 9383c5f6d0d..d0bde3344f8 100644 --- a/gcc/ada/sem_util.adb +++ b/gcc/ada/sem_util.adb @@ -17805,6 +17805,8 @@ package body Sem_Util is N_Or_Else, N_Quantified_Expression) and then not (Nkind (Par) = N_Aggregate + and then Present (Etype (Par)) + and then Etype (Par) /= Any_Composite and then Is_Array_Type (Etype (Par))) loop Expr := Par; @@ -17871,6 +17873,7 @@ package body Sem_Util is return True; elsif Nkind (Choice) = N_Identifier + and then Present (Etype (Choice)) and then Present (Scalar_Range (Etype (Choice))) and then Non_Static_Or_Null_Range (Scalar_Range (Etype (Choice)))