From 90e8523311e9616c99a9fc9cfa2454f753eb9f13 Mon Sep 17 00:00:00 2001 From: Yannick Moy Date: Thu, 15 Mar 2012 08:48:36 +0000 Subject: aspects.adb, [...] (Aspect_Id): New GNAT aspect Aspect_Contract_Case. 2012-03-15 Yannick Moy * aspects.adb, aspects.ads (Aspect_Id): New GNAT aspect Aspect_Contract_Case. * gnat_rm.texi Document the new pragma/aspect Contract_Case. Correct the documentation of the existing pragma/aspect Test_Case with the new semantics. * sem_attr.adb (Analyze_Attribute): Allow use of 'Result in the Ensures component of a Contract_Case pragma. * sem_ch13.adb (Analyze_Aspect_Specifications): Check new aspect and translate it into a pragma. (Check_Aspect_At_Freeze_Point): Take into account the new aspect. * sem_ch3.adb, sinfo.adb, sinfo.ads Renaming of TC (for test case) into CTC (for contract and test case). * sem_ch6.adb (Process_PPCs): Generate Check pragmas from Contract_Case pragmas, similarly to what is done already for postconditions. * sem_prag.adb, sem_prag.ads (Check_Contract_Or_Test_Case): Renaming of Check_Test_Case. (Analyze_Pragma, Sig_Flags): Take into account the new pragma. * sem_util.adb, sem_util.ads Renaming to take into account the new pragma, so that functions which applied only to Test_Case now apply to both Test_Case and Contract_Case. * par-prag.adb, sem_warn.adb, snames.ads-tmpl Take into account the new pragma. From-SVN: r185415 --- gcc/ada/sinfo.adb | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'gcc/ada/sinfo.adb') diff --git a/gcc/ada/sinfo.adb b/gcc/ada/sinfo.adb index 96b4570..a8388b1 100644 --- a/gcc/ada/sinfo.adb +++ b/gcc/ada/sinfo.adb @@ -6,7 +6,7 @@ -- -- -- B o d y -- -- -- --- Copyright (C) 1992-2011, Free Software Foundation, Inc. -- +-- Copyright (C) 1992-2012, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -2812,13 +2812,13 @@ package body Sinfo is return Node1 (N); end Spec_PPC_List; - function Spec_TC_List + function Spec_CTC_List (N : Node_Id) return Node_Id is begin pragma Assert (False or else NT (N).Nkind = N_Contract); return Node2 (N); - end Spec_TC_List; + end Spec_CTC_List; function Specification (N : Node_Id) return Node_Id is @@ -5892,13 +5892,13 @@ package body Sinfo is Set_Node1 (N, Val); -- semantic field, no parent set end Set_Spec_PPC_List; - procedure Set_Spec_TC_List + procedure Set_Spec_CTC_List (N : Node_Id; Val : Node_Id) is begin pragma Assert (False or else NT (N).Nkind = N_Contract); Set_Node2 (N, Val); -- semantic field, no parent set - end Set_Spec_TC_List; + end Set_Spec_CTC_List; procedure Set_Specification (N : Node_Id; Val : Node_Id) is -- cgit v1.1