summaryrefslogtreecommitdiff
path: root/gcc/ada/par-ch3.adb
diff options
context:
space:
mode:
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2009-04-15 12:43:58 +0000
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2009-04-15 12:43:58 +0000
commit53e876ae3c965af2dee43bf0ff7904c8dedcb41b (patch)
tree384f96baae68288a3efecddd80744a86175fa651 /gcc/ada/par-ch3.adb
parent9a8abef624fe1d8fc3528def0388a606a58046bd (diff)
downloadgcc-53e876ae3c965af2dee43bf0ff7904c8dedcb41b.tar.gz
2009-04-15 Robert Dewar <dewar@adacore.com>
* gnatchop.adb (BOM_Length): New global variable (Write_Unit): Add new parameter Write_BOM (Write_Chopped_Files): Check for BOM and set Write_BOM for call to Write_Unit * gnat_ugn.texi: Add note on propagation of BOM by gnatchop 2009-04-15 Geert Bosch <bosch@adacore.com> * system-mingw-x86_64.ads, system-darwin-x86_64.ads (Backend_Overflow_Checks): Set to True. 2009-04-15 Gary Dismukes <dismukes@adacore.com> * par-ch3.adb (P_Type_Declaration): Issue an error if the synchronized keyword is given in a record extension. 2009-04-15 Hristian Kirtchev <kirtchev@adacore.com> * exp_ch7.adb (Expand_Ctrl_Function_Call): Procede with the expansion of a controlled function call in the context of a record aggregate. This does not apply to array aggregates since the call will be expanded into assignments. 2009-04-15 Ed Falis <falis@adacore.com> * s-osinte-vxworks-kernel.adb, s-osinte-vxworks.adb, s-osinte-vxworks.ads s-vxwext.ads, s-vxwext-kernel.adb, s-vxwext-kernel.ads: Reorganize s-osinte-vxworks* and s-vxwext*. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146108 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/par-ch3.adb')
-rw-r--r--gcc/ada/par-ch3.adb11
1 files changed, 10 insertions, 1 deletions
diff --git a/gcc/ada/par-ch3.adb b/gcc/ada/par-ch3.adb
index a7e6fb65c28..b90e0840652 100644
--- a/gcc/ada/par-ch3.adb
+++ b/gcc/ada/par-ch3.adb
@@ -763,7 +763,16 @@ package body Ch3 is
Typedef_Node := P_Derived_Type_Def_Or_Private_Ext_Decl;
if Saved_Token = Tok_Synchronized then
- Set_Synchronized_Present (Typedef_Node);
+ if Nkind (Typedef_Node) =
+ N_Derived_Type_Definition
+ then
+ Error_Msg_N
+ ("SYNCHRONIZED not allowed for record extension",
+ Typedef_Node);
+ else
+ Set_Synchronized_Present (Typedef_Node);
+ end if;
+
else
Error_Msg_SC ("invalid kind of private extension");
end if;