From 4437ea95cc8a9fd845e435527565718e566fa937 Mon Sep 17 00:00:00 2001 From: Arnaud Charlet Date: Fri, 24 Jan 2014 12:42:21 +0100 Subject: [PATCH] [multiple changes] 2014-01-24 Robert Dewar * sem_prag.adb (Analyze_Input_Output): Add missing error check for junk operand. * sem_util.adb (Is_Refined_State): Add defense against junk tree from error. 2014-01-24 Pascal Obry * projects.texi: Removes Build_Slaves attribute documentation. From-SVN: r207027 --- gcc/ada/ChangeLog | 11 +++++++++++ gcc/ada/projects.texi | 3 --- gcc/ada/sem_prag.adb | 4 ++-- gcc/ada/sem_util.adb | 6 ++++++ 4 files changed, 19 insertions(+), 5 deletions(-) diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 4b3c2138469..b553c17e32b 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,14 @@ +2014-01-24 Robert Dewar + + * sem_prag.adb (Analyze_Input_Output): Add missing error check + for junk operand. + * sem_util.adb (Is_Refined_State): Add defense against junk + tree from error. + +2014-01-24 Pascal Obry + + * projects.texi: Removes Build_Slaves attribute documentation. + 2014-01-23 Robert Dewar * opt.adb (Register_Opt_Config_Switches): Save SPARK_Mode_Pragma diff --git a/gcc/ada/projects.texi b/gcc/ada/projects.texi index 0236ba2dc3a..bb067873d25 100644 --- a/gcc/ada/projects.texi +++ b/gcc/ada/projects.texi @@ -4963,10 +4963,7 @@ invoking @code{gnatpp} for the source. @itemize @bullet -@item @b{Build_Slaves}: list -Value is the list of machine names that are to be used in distributed -compilation. @item @b{Root_Dir}: single diff --git a/gcc/ada/sem_prag.adb b/gcc/ada/sem_prag.adb index cffae57dfc2..15679a41ebc 100644 --- a/gcc/ada/sem_prag.adb +++ b/gcc/ada/sem_prag.adb @@ -783,9 +783,9 @@ package body Sem_Prag is Item_Id := Entity_Of (Item); - Record_Possible_Body_Reference (Item, Item_Id); - if Present (Item_Id) then + Record_Possible_Body_Reference (Item, Item_Id); + if Ekind_In (Item_Id, E_Abstract_State, E_In_Parameter, E_In_Out_Parameter, diff --git a/gcc/ada/sem_util.adb b/gcc/ada/sem_util.adb index 9a8428d82a3..dc6a495b9b5 100644 --- a/gcc/ada/sem_util.adb +++ b/gcc/ada/sem_util.adb @@ -3723,6 +3723,12 @@ package body Sem_Util is else Item_Id := Entity_Of (Item); + -- Defend against junk + + if No (Item_Id) then + return False; + end if; + return Ekind (Item_Id) = E_Abstract_State and then Has_Visible_Refinement (Item_Id); -- 2.30.2