From 14037bbc9c7d2229754399f96ad6fa2cb6ee6161 Mon Sep 17 00:00:00 2001 From: Ed Schonberg Date: Fri, 1 Aug 2008 11:03:23 +0200 Subject: [PATCH] 2008-08-01 Ed Schonberg * sem_prag.adb: (Check_Precondition_Postcondition): If not generating code, analyze the expression in a postcondition that appears in a subprogram body, so that it is properly decorated for ASIS use. From-SVN: r138489 --- gcc/ada/sem_prag.adb | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/gcc/ada/sem_prag.adb b/gcc/ada/sem_prag.adb index b54cda616cf..99f9f8f9f52 100644 --- a/gcc/ada/sem_prag.adb +++ b/gcc/ada/sem_prag.adb @@ -1451,6 +1451,15 @@ package body Sem_Prag is if Nkind (Parent (N)) = N_Subprogram_Body and then List_Containing (N) = Declarations (Parent (N)) then + if Operating_Mode /= Generate_Code then + + -- Analyze expression in pragma, for correctness + -- and for ASIS use. + + Preanalyze_Spec_Expression + (Get_Pragma_Arg (Arg1), Standard_Boolean); + end if; + In_Body := True; return;