OSDN Git Service

c18fcedbb44d30f43f637cded4be0754650dbb68
[pf3gnuchains/gcc-fork.git] / gcc / ada / ChangeLog
1 2012-01-23  Robert Dewar  <dewar@adacore.com>
2
3         * sem_prag.ads, sem_prag.adb: Minor reformatting.
4
5 2012-01-23  Robert Dewar  <dewar@adacore.com>
6
7         * sem_ch13.adb (Analyze_Aspect_Specifications): Check for
8         language defined aspect applied to renaming or formal type
9         declaration (not permitted)
10
11 2012-01-23  Matthew Heaney  <heaney@adacore.com>
12
13         * a-cdlili.adb, a-cidlli.adb, a-cbdlli.adb (Vet): Replaced
14         comment with pragma Assert.
15
16 2012-01-23  Vincent Pucci  <pucci@adacore.com>
17
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
23         expressions.
24
25 2012-01-23  Robert Dewar  <dewar@adacore.com>
26
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).
30
31 2012-01-23  Hristian Kirtchev  <kirtchev@adacore.com>
32
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
37         the real body.
38
39 2012-01-23  Ed Schonberg  <schonberg@adacore.com>
40
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.
45
46 2012-01-23  Hristian Kirtchev  <kirtchev@adacore.com>
47
48         * sem_ch12.adb (Analyze_Associations): Alphabetize local variables and
49         constants. Rename Actual_Types to Actuals_To_Freeze. Rename Next_Formal
50         to Saved_Formal.
51         Freeze all eligible subprograms which appear as actuals in
52         the instantiation.
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.
57
58 2012-01-23  Gary Dismukes  <dismukes@adacore.com>
59
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).
67
68 2012-01-23  Thomas Quinot  <quinot@adacore.com>
69
70         * scos.ads, put_scos.adb, get_scos.adb (Get_SCOs, Put_SCOs): Do not
71         omit statement SCOs for disabled pragmas.
72
73 2012-01-23  Matthew Heaney  <heaney@adacore.com>
74
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.
82
83 2012-01-23  Robert Dewar  <dewar@adacore.com>
84
85         * a-catizo.ads, a-calend.adb, a-calend.ads, par-ch13.adb: Minor
86         reformatting.
87
88 2012-01-23  Ed Schonberg  <schonberg@adacore.com>
89
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.
94
95 2012-01-23  Hristian Kirtchev  <kirtchev@adacore.com>
96
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.
107
108 2012-01-23  Ed Schonberg  <schonberg@adacore.com>
109
110         * par-ch13.adb: Better error recovery in illegal aspect
111         specification.
112
113 2012-01-23  Hristian Kirtchev  <kirtchev@adacore.com>
114
115         * a-calend.adb: Add with clause for Interfaces.C. Add constant
116         Unix_Max.
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
128         Date.
129
130 2012-01-23  Robert Dewar  <dewar@adacore.com>
131
132         * sprint.ads, sprint.adb (Sprint_Node_List): Add New_Lines parameter
133         (pg,po,ps): Make sure each entry starts on new line.
134
135 2012-01-23  Hristian Kirtchev  <kirtchev@adacore.com>
136
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
139         comment.
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
148         to localtime_tzoff.
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.
155
156 2012-01-23  Robert Dewar  <dewar@adacore.com>
157
158         * a-calend.adb: Minor reformatting.
159
160 2012-01-23  Ed Schonberg  <schonberg@adacore.com>
161
162         * exp_ch9.adb, sem_ch9.adb: Handle array of access to synchronized
163         interface in requeue statement.
164
165 2012-01-23  Cyrille Comar  <comar@adacore.com>
166
167         * projects.texi: Remove references to main units and replace
168         with references to main programs to be coherent with the
169         documentation.
170
171 2012-01-23  Robert Dewar  <dewar@adacore.com>
172
173         * s-utf_32.adb: Minor reformatting.
174
175 2012-01-23  Vincent Celier  <celier@adacore.com>
176
177         * snames.ads-tmpl: Minor comment addition Indicate that
178         Name_Library_Encapsulated_Options is only used in gprbuild.
179
180 2012-01-23  Robert Dewar  <dewar@adacore.com>
181
182         * sem_ch10.adb (Analyze_Subunit): Properly save/restore cunit
183         restrictions.
184
185 2012-01-23  Ed Schonberg  <schonberg@adacore.com>
186
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.
195
196 2012-01-23  Robert Dewar  <dewar@adacore.com>
197
198         * sem_ch10.adb, errout.adb: Minor reformatting.
199
200 2012-01-23  Ed Schonberg  <schonberg@adacore.com>
201
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
204         dependence.
205
206 2012-01-23  Gary Dismukes  <dismukes@adacore.com>
207
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.
212
213 2012-01-23  Thomas Quinot  <quinot@adacore.com>
214
215         * errout.adb (Set_Msg_Node): For an N_Expanded_Name, output
216         the complete expanded name, rather than just its Selector_Name.
217
218 2012-01-23  Thomas Quinot  <quinot@adacore.com>
219
220         * a-textio.adb (Put): Rewrite one-parameter Character version to
221         just call the two-parameter one with Current_Out.
222
223 2012-01-23  Hristian Kirtchev  <kirtchev@adacore.com>
224
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
230         checks.
231         (Is_Aliased_View_Of_Type): New routine.
232
233 2012-01-23  Thomas Quinot  <quinot@adacore.com>
234
235         * errout.ads, freeze.adb: Minor reformatting.
236
237 2012-01-23  Thomas Quinot  <quinot@adacore.com>
238
239         * sem_ch10.adb, sem_prag.adb: Remove redundant apostrophes in error
240         messages.
241
242 2012-01-23  Olivier Hainque  <hainque@adacore.com>
243
244         * adadecode.c (__gnat_decode): Deal with empty input early,
245         preventing potential erroneous memory access later on.
246
247 2012-01-21  Eric Botcazou  <ebotcazou@adacore.com>
248
249         PR ada/46192
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.
252
253 2012-01-14  Andreas Schwab  <schwab@linux-m68k.org>
254
255         * gcc-interface/Makefile.in (OSCONS_EXTRACT): Add
256         $(GNATLIBCFLAGS).
257
258 2012-01-10  Pascal Obry  <obry@adacore.com>
259
260         * prj-nmsc.adb (Check_Library_Attributes):
261         Kill check for object/source directories for aggregate libraries.
262
263 2012-01-10  Matthew Heaney  <heaney@adacore.com>
264
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.
275         Code clean ups.
276
277 2012-01-10  Bob Duff  <duff@adacore.com>
278
279         * s-os_lib.ads: Improve comment.
280
281 2012-01-10  Geert Bosch  <bosch@adacore.com>
282
283         * s-gearop.adb (Forward_Eliminate): Avoid improper aliasing
284         for complex Scalar.
285
286 2012-01-10  Bob Duff  <duff@adacore.com>
287
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
292         not detected.
293         * gnat_rm.texi: Improve documentation of shift
294         and rotate intrinsics.
295
296 2012-01-10  Pascal Obry  <obry@adacore.com>
297
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.
306
307 2012-01-09  Eric Botcazou  <ebotcazou@adacore.com>
308
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.
313
314 2012-01-09  Eric Botcazou  <ebotcazou@adacore.com>
315
316         * gcc-interface/trans.c (addressable_p) <COMPONENT_REF>: Fix thinko.
317
318 2012-01-06  Robert Dewar  <dewar@adacore.com>
319
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
323         that this is Pure).
324
325 2012-01-06  Bob Duff  <duff@adacore.com>
326
327         * s-rpc.ads (Read, Write): Add overriding indicators.
328
329 2012-01-06  Robert Dewar  <dewar@adacore.com>
330
331         * gnat_rm.texi: Add documentation for conventions
332         Ada_Pass_By_Copy and Ada_Pass_By_Reference.
333
334 2012-01-06  Gary Dismukes  <dismukes@adacore.com>
335
336         * a-tienio.adb (Put): Add exception message on
337         raise statements. Remove unneeded blocks and object declarations.
338
339 2012-01-06  Robert Dewar  <dewar@adacore.com>
340
341         * sem_prag.adb: Minor reformatting.
342
343 2012-01-06  Ed Schonberg  <schonberg@adacore.com>
344
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
352         of the type.
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.
356
357 2012-01-02  Eric Botcazou  <ebotcazou@adacore.com>
358
359         * gnatvsn.ads (Current_Year): Bump to 2012.
360 \f
361 Copyright (C) 2012 Free Software Foundation, Inc.
362
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.