1 2012-01-23 Robert Dewar <dewar@adacore.com>
3 * sem_prag.ads, sem_prag.adb: Minor reformatting.
5 2012-01-23 Robert Dewar <dewar@adacore.com>
7 * sem_ch13.adb (Analyze_Aspect_Specifications): Check for
8 language defined aspect applied to renaming or formal type
9 declaration (not permitted)
11 2012-01-23 Matthew Heaney <heaney@adacore.com>
13 * a-cdlili.adb, a-cidlli.adb, a-cbdlli.adb (Vet): Replaced
14 comment with pragma Assert.
16 2012-01-23 Vincent Pucci <pucci@adacore.com>
18 * sem_ch12.adb (Analyze_Generic_Subprogram_Declaration): Call
19 to Make_Aspect_For_PPC_In_Gen_Sub_Decl added in ASIS mode.
20 * sem_prag.adb, sem_prag.ads (Make_Aspect_For_PPC_In_Gen_Sub_Decl): New
21 routine. In ASIS mode, convert any PPC pragmas into aspects in generic
22 subprogram declaration in order to enable the analysis of PPC boolean
25 2012-01-23 Robert Dewar <dewar@adacore.com>
27 * sem_ch3.adb (Analyze_Object_Declaration): Properly
28 handle Current_Value for volatile variables (also propagate
29 Treat_As_Volatile from type to object).
31 2012-01-23 Hristian Kirtchev <kirtchev@adacore.com>
33 * sem_ch12.adb (Install_Body): Detect the case
34 where the enclosing context is a package with a stub body that
35 has already been replaced by the actual body. In such cases,
36 the freeze node for the enclosing context must be inserted after
39 2012-01-23 Ed Schonberg <schonberg@adacore.com>
41 * sem_prag.adb (Analyze_Pragma, case Debug): Freeze the called
42 subprogram before expanding the pragma into an if-statement with
43 a block, to ensure that when the subprogram is null its body is
44 properly generated before expansion.
46 2012-01-23 Hristian Kirtchev <kirtchev@adacore.com>
48 * sem_ch12.adb (Analyze_Associations): Alphabetize local variables and
49 constants. Rename Actual_Types to Actuals_To_Freeze. Rename Next_Formal
51 Freeze all eligible subprograms which appear as actuals in
53 (Has_Fully_Defined_Profile): New routine.
54 (Renames_Standard_Subprogram): New routine.
55 (Earlier): Add local variable N. Comment update. Do not use source
56 locations when trying to determine whether one node precedes another.
58 2012-01-23 Gary Dismukes <dismukes@adacore.com>
60 * exp_ch4.adb (Expand_Concatenate): In the case
61 where the result of a concatentation can be null, set the to
62 result have both the low and high bounds of the right operand (not
63 just the high bound, as was the case prior to this fix). Also,
64 fix the saved high bound setting (Last_Opnd_High_Bound) in the
65 empty string literal case (should have been low bound minus one,
66 rather than plus one).
68 2012-01-23 Thomas Quinot <quinot@adacore.com>
70 * scos.ads, put_scos.adb, get_scos.adb (Get_SCOs, Put_SCOs): Do not
71 omit statement SCOs for disabled pragmas.
73 2012-01-23 Matthew Heaney <heaney@adacore.com>
75 * a-cohase.ads, a-cihase.ads, a-cbhase.ads, a-coorse.ads,
76 a-ciorse.ads, a-cborse.ads, a-cohama.ads, a-cihama.ads, a-cbhama.ads,
77 a-coorma.ads, a-ciorma.ads, a-cborma.ads, a-cdlili.ads, a-cidlli.ads,
78 a-cbdlli.ads, a-convec.ads, a-coinve.ads, a-cobove.ads (Cursor'Read,
79 Cursor'Write): Declare in private part.
80 (Reference_Type'Read, Reference_Type'Write): Ditto.
81 (Constant_Reference_Type'Read, Constant_Reference_Type'Write): Ditto.
83 2012-01-23 Robert Dewar <dewar@adacore.com>
85 * a-catizo.ads, a-calend.adb, a-calend.ads, par-ch13.adb: Minor
88 2012-01-23 Ed Schonberg <schonberg@adacore.com>
90 * sem_ch6.adb (Analyze_Subprogram_Declaration): Do not set the
91 Corresponding_Body on a defaulted null formal subprogram.
92 * sem_ch12.adb (Check_Formal_Package_Instance): No check needed
93 on a defaulted formal subprogram that is a null procedure.
95 2012-01-23 Hristian Kirtchev <kirtchev@adacore.com>
97 * exp_ch9.adb: Update the comments involving pragma Implemented.
98 * sem_ch3.adb (Check_Pragma_Implemented (Entity_Id)): Add local
99 constant Subp_Alias and local variable Impl_Subp. Properly
100 handle aliases of synchronized wrappers. Code cleanup.
101 (Check_Pragma_Implemented (Entity_Id; Entity_Id)): Add
102 Name_Optional as part of the condition.
103 * sem_prag.adb (Analyze_Pragma): Add "Optional" as one of the
104 valid choices of implementation kind.
105 (Check_Arg_Is_One_Of): New routine.
106 * snames.ads-tmlp: Add Name_Optional.
108 2012-01-23 Ed Schonberg <schonberg@adacore.com>
110 * par-ch13.adb: Better error recovery in illegal aspect
113 2012-01-23 Hristian Kirtchev <kirtchev@adacore.com>
115 * a-calend.adb: Add with clause for Interfaces.C. Add constant
117 (Day_Of_Week): Call the internal UTC_Time_Offset.
118 (Split): Call the internal UTC_Time_Offset.
119 (Time_Of): Call the internal UTC_Time_Offset.
120 (Time_Zone_Operations.UTC_Time_Offset): Call internal UTC_Time_Offset.
121 (UTC_Time_Offset): New library-level routine.
122 * a-calend.ads (UTC_Time_Offset): Remove parameter
123 Is_Historic. Update related comment on usage.
124 * a-catizo.adb (UTC_Time_Offset): Removed.
125 (UTC_Time_Offset (Time)): Call Time_Zone_Operations.UTC_Time_Offset.
126 * a-caltizo.ads (UTC_Time_Offset): Removed.
127 (UTC_Time_Offset (Time)): Add back the default expression of parameter
130 2012-01-23 Robert Dewar <dewar@adacore.com>
132 * sprint.ads, sprint.adb (Sprint_Node_List): Add New_Lines parameter
133 (pg,po,ps): Make sure each entry starts on new line.
135 2012-01-23 Hristian Kirtchev <kirtchev@adacore.com>
137 * a-calend.ads, a-calend.adb: Define types int and int_Pointer. Update
138 the parameter profile of procedure localtime_tzoff and its associated
140 (Day_Of_Week): Do not treat the input date as historical
141 with respect to time zones.
142 (Split): Do not treat the input
143 date as historical with respect to time zones. (Time_Of): Do
144 not treat the input constituents as forming a historical date
145 with respect to time zones.
146 (UTC_Time_Offset): Add new formal
147 parameter Is_Historic. Add local variable Flag. Update the call
149 * a-catizo.ads, a-catizo.adb (UTC_Time_Offset): New routine.
150 (UTC_Time_Offset (Time)): Update the call to
151 Time_Zone_Operations.UTC_Time_Offset.
152 * sysdep.c (__gnat_localtime_tzoff): Update parameter
153 profile. Split the processing of offsets on Windows into two - one
154 part of historic time stamps and the other for the current time.
156 2012-01-23 Robert Dewar <dewar@adacore.com>
158 * a-calend.adb: Minor reformatting.
160 2012-01-23 Ed Schonberg <schonberg@adacore.com>
162 * exp_ch9.adb, sem_ch9.adb: Handle array of access to synchronized
163 interface in requeue statement.
165 2012-01-23 Cyrille Comar <comar@adacore.com>
167 * projects.texi: Remove references to main units and replace
168 with references to main programs to be coherent with the
171 2012-01-23 Robert Dewar <dewar@adacore.com>
173 * s-utf_32.adb: Minor reformatting.
175 2012-01-23 Vincent Celier <celier@adacore.com>
177 * snames.ads-tmpl: Minor comment addition Indicate that
178 Name_Library_Encapsulated_Options is only used in gprbuild.
180 2012-01-23 Robert Dewar <dewar@adacore.com>
182 * sem_ch10.adb (Analyze_Subunit): Properly save/restore cunit
185 2012-01-23 Ed Schonberg <schonberg@adacore.com>
187 * snames.ads-tmpl: Add Name_Synchronization.
188 * aspects.ads, aspects.adb: Add Aspect_Synchronization to
189 enumeration type and related maps.
190 * sem_ch13.adb (Analyze_Aspect_Specifications): Handle Aspect
191 Synchronization, build corresponding pragma Implemented.
192 * sem_util.adb (Implementation_Kind): Handle both explicit and
193 implicit pragma_argument association to retrieve the given
194 synchronization mode.
196 2012-01-23 Robert Dewar <dewar@adacore.com>
198 * sem_ch10.adb, errout.adb: Minor reformatting.
200 2012-01-23 Ed Schonberg <schonberg@adacore.com>
202 * sem_res.adb (Resolve_Actuals): An actual in a call to an
203 Ada 2012 Reference function does not lead to a dangerous order
206 2012-01-23 Gary Dismukes <dismukes@adacore.com>
208 * exp_util.adb (Is_Iterated_Container): Test
209 Is_Entity_Name when searching for calls to the default iterator,
210 to avoid blowing up on indirect calls which have an explicit
211 dereference as the call name.
213 2012-01-23 Thomas Quinot <quinot@adacore.com>
215 * errout.adb (Set_Msg_Node): For an N_Expanded_Name, output
216 the complete expanded name, rather than just its Selector_Name.
218 2012-01-23 Thomas Quinot <quinot@adacore.com>
220 * a-textio.adb (Put): Rewrite one-parameter Character version to
221 just call the two-parameter one with Current_Out.
223 2012-01-23 Hristian Kirtchev <kirtchev@adacore.com>
225 * freeze.adb (Check_Current_Instance): Issue an
226 error when the prefix of 'Unchecked_Access or 'Access does not
227 denote a legal aliased view of a type.
228 (Freeze_Record_Type): Do not halt the processing of record components
229 once the Has_Controlled_Component is set as this bypasses the remaining
231 (Is_Aliased_View_Of_Type): New routine.
233 2012-01-23 Thomas Quinot <quinot@adacore.com>
235 * errout.ads, freeze.adb: Minor reformatting.
237 2012-01-23 Thomas Quinot <quinot@adacore.com>
239 * sem_ch10.adb, sem_prag.adb: Remove redundant apostrophes in error
242 2012-01-23 Olivier Hainque <hainque@adacore.com>
244 * adadecode.c (__gnat_decode): Deal with empty input early,
245 preventing potential erroneous memory access later on.
247 2012-01-21 Eric Botcazou <ebotcazou@adacore.com>
250 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: In the case of a
251 renaming, preserve the volatileness through the indirection, if any.
253 2012-01-14 Andreas Schwab <schwab@linux-m68k.org>
255 * gcc-interface/Makefile.in (OSCONS_EXTRACT): Add
258 2012-01-10 Pascal Obry <obry@adacore.com>
260 * prj-nmsc.adb (Check_Library_Attributes):
261 Kill check for object/source directories for aggregate libraries.
263 2012-01-10 Matthew Heaney <heaney@adacore.com>
265 * a-cdlili.adb, a-cdlili.ads, a-cihama.adb, a-cihama.ads, a-coinve.adb,
266 a-coinve.ads, a-ciorse.adb, a-ciorse.ads, a-coorma.adb, a-coorma.ads,
267 a-cborma.adb, a-cborma.ads, a-cidlli.adb, a-cidlli.ads, a-cimutr.adb,
268 a-cimutr.ads, a-cihase.adb, a-cihase.ads, a-cohama.adb, a-cohama.ads,
269 a-coorse.adb, a-coorse.ads, a-cbhama.adb, a-cbhama.ads, a-cborse.adb,
270 a-cborse.ads, a-comutr.adb, a-comutr.ads, a-ciorma.adb, a-cobove.adb,
271 a-ciorma.ads, a-cobove.ads, a-convec.adb, a-convec.ads, a-cohase.adb,
272 a-cohase.ads, a-cbdlli.adb, a-cbdlli.ads, a-cbmutr.adb, a-cbmutr.ads,
273 a-cbhase.adb, a-cbhase.ads (Reference, Constant_Reference): Declare
274 container parameter as aliased in/in out.
277 2012-01-10 Bob Duff <duff@adacore.com>
279 * s-os_lib.ads: Improve comment.
281 2012-01-10 Geert Bosch <bosch@adacore.com>
283 * s-gearop.adb (Forward_Eliminate): Avoid improper aliasing
286 2012-01-10 Bob Duff <duff@adacore.com>
288 * sem_intr.adb (Check_Shift): Use RM_Size instead of Esize, when
289 checking that the 'Size is correct. If the type is "mod 2**12",
290 for example, it's illegal, but Esize is the 'Object_Size, which
291 will be something like 16 or 32, so the error ('Size = 12) was
293 * gnat_rm.texi: Improve documentation of shift
294 and rotate intrinsics.
296 2012-01-10 Pascal Obry <obry@adacore.com>
298 * prj.adb (For_Every_Project_Imported): Fix
299 implementation to make sure we return each project only once
300 for aggragte libraries. It is fine to return a project twice for
301 aggregate projects, this was the case as a Project_Id is different
302 in each project tree. The new implementation use a table based on
303 the project name to ensure proper detection of duplicate project
304 in aggregate library. A new context is then created to continue
305 retrurning duplicate project for aggregate libraries.
307 2012-01-09 Eric Botcazou <ebotcazou@adacore.com>
309 * gcc-interface/trans.c (call_to_gnu): Create the temporary for the
310 return value in the variable-sized return type case if the target is
311 an array with fixed size. However, do not create it if this is the
312 expression of an object declaration.
314 2012-01-09 Eric Botcazou <ebotcazou@adacore.com>
316 * gcc-interface/trans.c (addressable_p) <COMPONENT_REF>: Fix thinko.
318 2012-01-06 Robert Dewar <dewar@adacore.com>
320 * a-wichha.ads, a-wichun.ads, a-zchhan.ads, a-zchuni.ads,
321 s-utf_32.ads: Add pragma Pure
322 * s-utf_32.adb: Suppress warnings on non-static constants (now
325 2012-01-06 Bob Duff <duff@adacore.com>
327 * s-rpc.ads (Read, Write): Add overriding indicators.
329 2012-01-06 Robert Dewar <dewar@adacore.com>
331 * gnat_rm.texi: Add documentation for conventions
332 Ada_Pass_By_Copy and Ada_Pass_By_Reference.
334 2012-01-06 Gary Dismukes <dismukes@adacore.com>
336 * a-tienio.adb (Put): Add exception message on
337 raise statements. Remove unneeded blocks and object declarations.
339 2012-01-06 Robert Dewar <dewar@adacore.com>
341 * sem_prag.adb: Minor reformatting.
343 2012-01-06 Ed Schonberg <schonberg@adacore.com>
345 * sinfo.ads, sinfo.adb (Has_Prefixed_Call): New flag to indicate
346 that a selected component within a generic unit has been resolved
347 as a prefixed call with local references.
348 * sem_ch3.adb (Is_Visible_Component): In an instance body a selected
349 component is always visible.
350 * sem_ch4.adb (Analyze_Selected_Component): If the node is a
351 prefixed call in an instance, do not look for visible components
353 * sem_ch12.adb (Reset_Entity): If a selected component has resolved
354 to a prefixed call, mark the node accordingly when prefix and
355 selector are local references.
357 2012-01-02 Eric Botcazou <ebotcazou@adacore.com>
359 * gnatvsn.ads (Current_Year): Bump to 2012.
361 Copyright (C) 2012 Free Software Foundation, Inc.
363 Copying and distribution of this file, with or without modification,
364 are permitted in any medium without royalty provided the copyright
365 notice and this notice are preserved.