diff options
author | charlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4> | 2009-04-15 12:43:58 +0000 |
---|---|---|
committer | charlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4> | 2009-04-15 12:43:58 +0000 |
commit | 53e876ae3c965af2dee43bf0ff7904c8dedcb41b (patch) | |
tree | 384f96baae68288a3efecddd80744a86175fa651 /gcc/ada/par-ch3.adb | |
parent | 9a8abef624fe1d8fc3528def0388a606a58046bd (diff) | |
download | gcc-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.adb | 11 |
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; |