From 00ba7be81367fd082166105ab3e8b8f43d04051c Mon Sep 17 00:00:00 2001 From: Arnaud Charlet Date: Mon, 27 Jan 2014 17:43:29 +0100 Subject: [multiple changes] 2014-01-27 Robert Dewar * exp_smem.adb: Minor reformatting. 2014-01-27 Thomas Quinot * a-calfor.ads: Fix incorrect reference to operator "-" in comment. 2014-01-27 Ed Schonberg * sem_res.adb (Make_Call_Into_Operator): In ASIS mode, relocate nodes for operands to the original node for the call, to preserve Original_Node pointers within the resolved operands, given that they may have been rewritten as well. Previous approach copied the operands into a new tree and lost those pointers. 2014-01-27 Claire Dross * a-cofove.adb, a-cofove.ads: Add Strict_Equal function to the API. 2014-01-27 Ed Schonberg * sem_util.adb (Check_Internal_Protected_Use): A call through an anonymous access parameter of the current protected function is not a potential modification of the current object. 2014-01-27 Ed Schonberg * a-cobove.adb (Reserve_Capacity): Procedure raises Capacity_Error, not Constraint_Error, when request cannot be satisfied. 2014-01-27 Vincent Celier * a-coorma.adb, a-cohama.adb (Assign): Copy the Source to the Target, not the Target to itself. 2014-01-27 Ed Schonberg * exp_ch4.adb (Expand_Concatenate): If the target of the concatenation is a library-level entity, always use the off-line version of concatenation, regardless of optimization level. This is space-efficient, and prevents linking problems when some units are compiled with different optimization levels. 2014-01-27 Ed Schonberg * sem_ch5.adb: Code clean up. 2014-01-27 Ed Schonberg * par-ch5.adb (P_Iterator_Specification): Improve error recovery when an array or container iterator includes a subtype indication, which is only legal in an element iterator. From-SVN: r207141 --- gcc/ada/par-ch5.adb | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'gcc/ada/par-ch5.adb') diff --git a/gcc/ada/par-ch5.adb b/gcc/ada/par-ch5.adb index 8992f15..bf28e23 100644 --- a/gcc/ada/par-ch5.adb +++ b/gcc/ada/par-ch5.adb @@ -1736,6 +1736,19 @@ package body Ch5 is elsif Token = Tok_In then Scan; -- past IN + elsif Prev_Token = Tok_In + and then Present (Subtype_Indication (Node1)) + then + + -- Simplest recovery is to transform it into an element iterator. + -- Error message on 'in" has already been emitted when parsing the + -- optional constraint. + + Set_Of_Present (Node1); + Error_Msg_N + ("subtype indication is only legal on on element iterator", + Subtype_Indication (Node1)); + else return Error; end if; -- cgit v1.1