]> git.ipfire.org Git - thirdparty/gcc.git/commit - gcc/ada/sem_ch6.adb
exp_ch6.adb: Remove with and use clause for Sem_Prag.
authorHristian Kirtchev <kirtchev@adacore.com>
Wed, 24 Apr 2013 13:15:27 +0000 (13:15 +0000)
committerArnaud Charlet <charlet@gcc.gnu.org>
Wed, 24 Apr 2013 13:15:27 +0000 (15:15 +0200)
commit5afe5d2d4485638a63fa23f456eb6942f2e5bd38
treeca637ecaa92b39893b465fad03a54cfe9788db99
parentf1c80977503ef50a812c3545c9b902fd65c086eb
exp_ch6.adb: Remove with and use clause for Sem_Prag.

2013-04-24  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_ch6.adb: Remove with and use clause for Sem_Prag.
(Freeze_Subprogram): Call Analyze_Subprogram_Contract to analyze
the contract of a subprogram.
* sem_ch3.adb: Remove with and use clause for Sem_Prag.
(Analyze_Declarations): Call Analyze_Subprogram_Contract to
analyze the contract of a subprogram.
* sem_ch6.adb (Analyze_Subprogram_Contract): New routine.
(Check_Subprogram_Contract): Removed.
* sem_ch6.ads (Analyze_Subprogram_Contract): New routine.
(Check_Subprogram_Contract): Removed.
(Expand_Contract_Cases): Add a guard against malformed contract cases.
* sem_ch13.adb (Analyze_Aspect_Specifications): Call
Decorate_Delayed_Aspect_And_Pragma to decorate aspects
Contract_Cases, Depends and Global. Reimplement the analysis of
aspect Contract_Cases.
(Decorate_Delayed_Aspect_And_Pragma): New routine.
* sem_prag.adb (Analyze_Contract_Cases_In_Decl_Part): New routine.
(Analyze_CTC_In_Decl_Part): Removed.
(Analyze_Pragma): Reimplement the analysis of pragma Contract_Cases.
(Analyze_Test_Case_In_Decl_Part): New routine.
(Find_Related_Subprogram): New routine.
(Requires_Profile_Installation): Add new formal Prag. Update
the logic to take into account the origin of the pragma.
* sem_prag.ads (Analyze_Contract_Cases_In_Decl_Part): New routine.
(Analyze_CTC_In_Decl_Part): Removed.
(Analyze_Test_Case_In_Decl_Part): New routine.

From-SVN: r198227
gcc/ada/ChangeLog
gcc/ada/exp_ch6.adb
gcc/ada/sem_ch13.adb
gcc/ada/sem_ch3.adb
gcc/ada/sem_ch6.adb
gcc/ada/sem_ch6.ads
gcc/ada/sem_prag.adb
gcc/ada/sem_prag.ads