summaryrefslogtreecommitdiffstats
path: root/gcc/ada/errout.adb
diff options
context:
space:
mode:
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2011-08-02 09:05:58 +0000
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2011-08-02 09:05:58 +0000
commit3bf0edc61006a0d62405526b5feacc582817a019 (patch)
treecb9b7a1d6235246bd0d94db6e3ea4af1b309ef91 /gcc/ada/errout.adb
parent93449281c468eadf81fdc93223b7eb858a346062 (diff)
downloadppe42-gcc-3bf0edc61006a0d62405526b5feacc582817a019.tar.gz
ppe42-gcc-3bf0edc61006a0d62405526b5feacc582817a019.zip
2011-08-02 Yannick Moy <moy@adacore.com>
* errout.adb, errout.ads (Check_Formal_Restriction): new procedure which issues an error in formal mode if its argument node is originally from source * sem_ch3.adb (Analyze_Full_Type_Declaration): move test that a type has a discriminant specification so that it does not include the case of derived types (Derived_Type_Declaration): move here the test that a derived type has a discriminant specification * sem_aggr.adb (Resolve_Record_Aggregate): test the presence of the first element of a component association before accessing its choices (presence of component association is not enough) * exp_ch6.adb (Expand_N_Subprogram_Declaration): test if a subprogram declaration is a library item before accessing the next element in a list, as library items are not member of lists * sem_attr.adb, sem_ch11.adb, sem_ch4.adb, sem_ch5.adb, sem_ch6.adb, sem_ch8.adb, sem_ch9.adb, sem_res.adb, sem_util.adb: use Check_Formal_Restriction whenever possible. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177099 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/errout.adb')
-rw-r--r--gcc/ada/errout.adb13
1 files changed, 13 insertions, 0 deletions
diff --git a/gcc/ada/errout.adb b/gcc/ada/errout.adb
index 59babb14581..dcc1159cffe 100644
--- a/gcc/ada/errout.adb
+++ b/gcc/ada/errout.adb
@@ -224,6 +224,19 @@ package body Errout is
end if;
end Change_Error_Text;
+ ------------------------------
+ -- Check_Formal_Restriction --
+ ------------------------------
+
+ procedure Check_Formal_Restriction (Msg : String; N : Node_Id) is
+ begin
+ if Formal_Verification_Mode
+ and then Comes_From_Source (Original_Node (N))
+ then
+ Error_Msg_F ("|~~" & Msg, N);
+ end if;
+ end Check_Formal_Restriction;
+
------------------------
-- Compilation_Errors --
------------------------
OpenPOWER on IntegriCloud