summaryrefslogtreecommitdiff
path: root/gcc/ada/sem_ch9.adb
diff options
context:
space:
mode:
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2012-10-01 08:07:19 +0000
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2012-10-01 08:07:19 +0000
commit29a9d4bec9dbe4d6bcdee6e9c35ae43c83ba4594 (patch)
treea633d722b5a544243cf4b6ee732795da47287fd0 /gcc/ada/sem_ch9.adb
parentc22c2d0942f3094d3861a0c027c5a87250c2faef (diff)
downloadgcc-29a9d4bec9dbe4d6bcdee6e9c35ae43c83ba4594.tar.gz
2012-10-01 Robert Dewar <dewar@adacore.com>
* sinfo.ads, exp_aggr.adb, sem_ch13.adb: Minor reformatting. 2012-10-01 Ed Schonberg <schonberg@adacore.com> * sem_aggr.adb (Resolve_Array_Aggregate): Handle properly component associations given by subtypes that have static predicates. Improve error message for overlapping ranges in array aggregates. 2012-10-01 Pascal Obry <obry@adacore.com> * snames.ads-tmpl (Name_Link_Lib_Subdir): New constant. 2012-10-01 Ed Schonberg <schonberg@adacore.com> * sem_ch9.adb (Analyze_Requeue): The target of a requeue statement on a protected entry must be a variable. This is part of AI05-0225. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191889 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/sem_ch9.adb')
-rw-r--r--gcc/ada/sem_ch9.adb12
1 files changed, 12 insertions, 0 deletions
diff --git a/gcc/ada/sem_ch9.adb b/gcc/ada/sem_ch9.adb
index 6ee0bceeb81..d40647ed7ad 100644
--- a/gcc/ada/sem_ch9.adb
+++ b/gcc/ada/sem_ch9.adb
@@ -2379,6 +2379,18 @@ package body Sem_Ch9 is
end;
end if;
end if;
+
+ -- AI05-0225: the target protected object of a requeue must be a
+ -- variable. This is a binding interpretation that applies to all
+ -- versions of the language.
+
+ if Present (Target_Obj)
+ and then Ekind (Scope (Entry_Id)) in Protected_Kind
+ and then not Is_Variable (Target_Obj)
+ then
+ Error_Msg_N
+ ("target protected object of requeue must be a variable", N);
+ end if;
end Analyze_Requeue;
------------------------------