OSDN Git Service

2012-02-22 Pascal Obry <obry@adacore.com>
[pf3gnuchains/gcc-fork.git] / gcc / ada / ChangeLog
1 2012-02-22  Pascal Obry  <obry@adacore.com>
2
3         * s-taprop-mingw.adb (Finalize_TCB): Do not wait on thread handle as
4         this is our own thread.
5
6 2012-02-22  Sergey Rybin  <rybin@adacore.com frybin>
7
8         * tree_io.ads: Update ASIS_Version_Number because of the changes
9         in Snames.
10
11 2012-02-22  Hristian Kirtchev  <kirtchev@adacore.com>
12
13         * exp_ch7.adb (Create_Finalizer): Suppress elaboration checks on 
14         stack-related finalizers.
15
16 2012-02-22  Ed Schonberg  <schonberg@adacore.com>
17
18         * sem_ch6.adb (Analyze_Expression_Function): If the construct
19         is a completion, indicate that its formals are the formals of
20         a completion, and as such do not get a cross- reference entry.
21         (Analyze_Subprogram_Specification): Do not generate a definition
22         for the entity of an expression function, because it may be a
23         completion. Definition will be generated if needed when analyzing
24         the generated subprogram declaration.
25
26 2012-02-22  Vincent Celier  <celier@adacore.com>
27
28         * make.adb (Check): When checking if an object file is in the
29         correct object directory, get the unit name from a previous call
30         to Check_Source_Info_In_ALI.
31         * makeutl.adb (Check_Source_Info_In_ALI): Return the name of
32         the unit when everything is OK, otherwise return No_Name.
33         * makeutl.ads (Check_Source_Info_In_ALI): Return Name_Id instead
34         of Boolean
35
36 2012-02-22  Ed Schonberg  <schonberg@adacore.com>
37
38         * sem_ch4.adb (Find_Equality_Types, Try_One_Interp): In an
39         instance, the operator is visible if an operand is of some
40         numeric type which is not in use or directly visible, and the
41         other operand is a numeric literal.
42
43 2012-02-22  Tristan Gingold  <gingold@adacore.com>
44
45         * init.c: Minor code clean up.
46         * gcc-interface/Make-lang.in: Update dependencies.
47
48 2012-02-22  Arnaud Charlet  <charlet@adacore.com>
49
50         * gnatlink.adb (Gnatlink): Use -gnatcC in CodePeer_Node,
51         otherwise GCC will generate an object file.
52
53 2012-02-22  Vincent Celier  <celier@adacore.com>
54
55         * projects.texi: Correct typo related to "**" in Source_Dirs.
56
57 2012-02-22  Steve Baird  <baird@adacore.com>
58
59         * sem_prag.adb (Analyze_PPC_In_Decl_Part): Clean up generation of
60         error message text.
61
62 2012-02-22  Vincent Pucci  <pucci@adacore.com>
63
64         * rtsfind.adb (Get_Unit_Name): Ada_Numerics_Child and
65         System_Dim_Child cases added.
66         * rtsfind.ads: Ada_Numerics,
67         Ada_Numerics_Generic_Elementary_Functions, System_Dim,
68         System_Dim_Float_IO and System_Dim_Integer_IO added to the list
69         of RTU_Id.  Ada_Numerics_Child and System_Dim_Child added as
70         new RTU_Id subtypes.
71         * sem_dim.adb (Is_Dim_IO_Package_Entity): Use of
72         Rtsfind to verify the package entity is located either
73         in System.Dim.Integer_IO or in System.Dim.Float_IO.
74         (Is_Dim_IO_Package_Instantiation): Minor
75         changes.  (Is_Elementary_Function_Call): Removed.
76         (Is_Elementary_Function_Entity): New routine.
77         (Is_Procedure_Put_Call): Is_Dim_IO_Package_Entity call added.
78         * snames.ads-tmpl: Name_Dim and Name_Generic_Elementary_Functions
79         removed.
80
81 2012-02-22  Vincent Pucci  <pucci@adacore.com>
82
83         * sem_prag.adb: Minor reformatting.
84
85 2012-02-22  Ed Schonberg  <schonberg@adacore.com>
86
87         * sem_ch3.adb (Find_Type_Name): When analyzing a private type
88         declaration that is the completion of a tagged incomplete type, do
89         not associate the class-wide type already created with the private
90         type to prevent order-of-elaboration issues in the back-end.
91         * exp_disp.adb (Find_Specific_Type): Find specific type of
92         a class-wide type, and handle the case of an incomplete type
93         coming  either from a limited_with clause or from an incomplete
94         type declaration. Used when expanding a dispatchin call and
95         generating tag checks (minor refactoring).
96
97 2012-02-22  Robert Dewar  <dewar@adacore.com>
98
99         * exp_ch5.adb: Add comment.
100         * sem_ch12.adb, exp_ch6.adb: minor reformatting
101
102 2012-02-22  Ed Schonberg  <schonberg@adacore.com>
103
104         * freeze.adb (Freeze_Entity): Do not perform type layout within
105         a generic unit.
106
107 2012-02-22  Eric Botcazou  <ebotcazou@adacore.com>
108
109         * init.c (__gnat_error_handler) [Linux]: Map SIGBUS to
110         Storage_Error.
111
112 2012-02-22  Ed Schonberg  <schonberg@adacore.com>
113
114         * exp_ch5.adb (Expand_N_Assignment_Statement): Reject an
115         assignment to a classwide type whose type is limited, as
116         can happen in an instantiation in programs that run afoul or
117         AI05-0087.
118
119
120 2012-02-17  Ed Schonberg  <schonberg@adacore.com>
121
122         * exp_ch6.adb (Legal_Copy): If layout is not
123         determined in the front-end, do not emit error message when
124         by-reference actual is potentially unaligned.
125         * gcc-interface/decl.c (gnat_to_gnu_field): Better error message for
126         illegal representation clause on tagged or aliased component, or on
127         by-reference type with forced alignment.
128
129 2012-02-17  Nicolas Roche  <roche@adacore.com>
130
131         * gcc-interface/Makefile.in: Ensure FORCE_DEBUG_ADAFLAGS variables is
132         propagated by gnatlib-sjlj and gnatlib-zcx targets.
133         * gcc-interface/Make-lang.in: Update dependencies.
134
135 2012-02-17  Thomas Quinot  <quinot@adacore.com>
136
137         * sem_ch12.adb (Analyze_Package_Instantiation): For an
138         instantiation in an RCI library unit, omit the instance body
139         if the RCI library unit is the instance itself (E.2.3(18)),
140         but include the body if the instantiation is within the RCI
141         declaration (12.3(12)).
142
143 2012-02-17  Steve Baird  <baird@adacore.com>
144
145         * sem_prag.adb (Analyze_PPC_In_Decl_Part): Pre'Class and
146         Post'Class aspects can only be specified for a primitive operation
147         of a tagged type.
148
149 2012-02-17  Yannick Moy  <moy@adacore.com>
150
151         * gnat_rm.texi: Minor shuffling.
152
153 2012-02-17  Ed Schonberg  <schonberg@adacore.com>
154
155         * aspects.adb: Expression functions can carry pre/postconditions.
156         * par-ch6.adb (P_Subprogram): look for optional pre/postconditions
157         in an expression function.
158         * sem_prag (Check_Precondition_Postcondition): legal on expression
159         functions.
160
161 2012-02-17  Vincent Pucci  <pucci@adacore.com>
162
163         * a-cdlili.adb, a-cidlli.adb, a-cihama.adb, a-cimutr.adb,
164         * a-ciorma.adb, a-cohama.adb, a-coinve.adb, a-comutr.adb,
165         * a-convec.adb, a-coorma.adb (Adjust): New routine.
166         (Constant_Reference): Increment Busy and Lock counters.
167         (Reference): Increase Busy and Lock counters.
168         (Finalize): New routine.
169         * a-cihase.adb, a-ciorse.adb, a-cohase.adb, a-coorse.adb:
170         (Adjust): New routine.  (Constant_Reference): Increment Busy
171         and Lock counters.
172         (Finalize): New routine.
173         * a-cdlili.ads, a-cidlli.ads, a-cihama.ads, a-cihase.ads,
174         * a-cimutr.ads, a-ciorma.ads, a-ciorse.ads, a-cohama.ads,
175         * a-cohase.ads, a-coinve.ads, a-comutr.ads, a-convec.ads,
176         * a-coorma.ads, a-coorse: Controlled component added to the
177         reference types.
178
179 2012-02-17  Robert Dewar  <dewar@adacore.com>
180
181         * restrict.adb (Check_Restriction): Add special handling for
182         No_Obsolescent_Features.
183
184 2012-02-17  Hristian Kirtchev  <kirtchev@adacore.com>
185
186         * exp_util.adb (Find_Finalize_Address): When dealing with an
187         internally built full view for a type with unknown discriminants,
188         use the original record type.
189
190 2012-02-17  Robert Dewar  <dewar@adacore.com>
191
192         * sem_dim.adb: Minor reformatting.
193
194 2012-02-17  Yannick Moy  <moy@adacore.com>
195
196         * gnat_rm.texi: Minor rewording.
197
198 2012-02-17  Thomas Quinot  <quinot@adacore.com>
199
200         * sem_aggr.adb: Minor reformatting.
201
202 2012-02-17  Robert Dewar  <dewar@adacore.com>
203
204         * gnat_ugn.texi: Update doc for -gnatw.m to include 2*x case.
205
206 2012-02-17  Vincent Pucci  <pucci@adacore.com>
207
208         * sem_dim.adb (Is_Dim_IO_Package_Entity): New routine.
209         (Is_Dim_IO_Package_Instantiation): Is_Dim_IO_Package_Entity
210         call added.
211         (Is_Procedure_Put_Call): Is_Dim_IO_Package_Entity
212         call added.
213         * s-dim.ads: Make package Pure.
214
215 2012-02-17  Gary Dismukes  <dismukes@adacore.com>
216
217         * prj-nmsc.adb: Minor reformatting.
218
219 2012-02-17  Yannick Moy  <moy@adacore.com>
220
221         * gnat_rm.texi: Update GNAT RM with a separate chapter on restrictions.
222
223 2012-02-17  Yannick Moy  <moy@adacore.com>
224
225         * gnat_ugn.texi: Fix typos.
226
227 2012-02-17  Pascal Obry  <obry@adacore.com>
228
229         * prj-nmsc.adb: prj-nmsc.adb (Check_Aggregated): Check that an
230         aggregate is not Externally_Built.
231
232 2012-02-17  Ed Schonberg  <schonberg@adacore.com>
233
234         * sem_aggr.adb (Resolve_Record_Aggregate): If a composite
235         component has a box association, copy the default value using
236         the current scope as the scope of internal types, to prevent
237         scoping anomalies in gigi.
238
239 2012-02-17  Robert Dewar  <dewar@adacore.com>
240
241         * sem_dim.adb, sem_dim.ads, s-tasren.adb, prj.adb, prj.ads, freeze.adb,
242         sem_res.adb, exp_ch4.adb, sinput.adb, sinput.ads, exp_aggr.adb,
243         exp_intr.adb, s-os_lib.adb: Minor reformatting.
244
245 2012-02-17  Ed Schonberg  <schonberg@adacore.com>
246
247         * sem_ch6.adb (Is_Non_Overriding_Operation): Add warning if the
248         old operation is abstract, the relevant type is not abstract,
249         and the new subprogram fails to override.
250
251 2012-02-15  Eric Botcazou  <ebotcazou@adacore.com>
252
253         * gcc-interface/trans.c (Identifier_to_gnu): Move block retrieving the
254         type of the result to the end and execute it for a deferred constant of
255         a discriminated type whose full view can be elaborated statically.
256
257 2012-02-15  Eric Botcazou  <ebotcazou@adacore.com>
258
259         * gcc-interface/trans.c (gnat_to_gnu) <N_Qualified_Expression>: If the
260         type is tagged, mark it as used for debugging purposes.
261         <N_Allocator>: Likewise for a qualified expression.
262
263 2012-02-15  Eric Botcazou  <ebotcazou@adacore.com>
264
265         * gcc-interface/trans.c (call_to_gnu): Create the temporary for the
266         return value in the by-reference return type case if this isn't the
267         expression of an object declaration.  Tidy up.
268
269 2012-02-09  Tristan Gingold  <gingold@adacore.com>
270
271         * gcc-interface/Makefile.in: Remove .sym rule (not used).
272         Remove adamsg.o object (requires native message compiler).
273         * init.c (CMA$_EXIT_THREAD, MTH$_FLOOVEMAT, SS$_INTDIV): Define as a
274         macro instead of as extern int.
275         (ADA$_ALREADY_OPEN, ADA$_CONSTRAINT_ERRO, ADA$_DATA_ERROR)
276         (ADA$_DEVICE_ERROR, ADA$_END_ERROR, ADA$_FAC_MODE_MISMAT)
277         (ADA$_IOSYSFAILED, ADA$_KEYSIZERR, ADA$_KEY_MISMATCH)
278         (ADA$_LAYOUT_ERROR, ADA$_LINEXCMRS, ADA$_MAXLINEXC)
279         (ADA$_MODE_ERROR, ADA$_MRN_MISMATCH, ADA$_MRS_MISMATCH)
280         (ADA$_NAME_ERROR, ADA$_NOT_OPEN, ADA$_ORG_MISMATCH)
281         (ADA$_PROGRAM_ERROR, ADA$_RAT_MISMATCH, ADA$_RFM_MISMATCH)
282         (ADA$_STAOVF, ADA$_STATUS_ERROR, ADA$_STORAGE_ERROR)
283         (ADA$_UNSUPPORTED, ADA$_USE_ERROR): Likewise.
284         (struct cond_except): Field cond is now an unsigned int.
285         (dec_ada_cond_except_table): Adjust.
286         (cond_except_table): Likewise.
287         (cond_resignal_table): Likewise.
288         (__gnat_default_resignal_p): Fix style.
289
290 2012-02-08  Vincent Celier  <celier@adacore.com>
291
292         * gcc-interface/Make-lang.in: Add g-byorma.o to gnatbind objects
293         (g-buorma is now imported by sinput).
294         Update dependencies.
295         * scn.adb (Initialize_Scanner): Call Check_For_BOM
296         * sinput-p.adb (Source_File_Is_Subunit): Call Check_For_BOM
297         * sinput.adb: New procedure Check_For_BOM
298         * sinput.ads: New procedure Check_For_BOM
299
300 2012-02-08  Vincent Pucci  <pucci@adacore.com>
301
302         * impunit.adb: Dimension package names updated
303         * Makefile.rtl: s-dim added
304         * sem_dim.adb (Is_Procedure_Put_Call): minor changes
305         (Is_Dim_IO_Package_Instantiation): minor changes
306         * sem_dim.ads: minor changes in comments
307         * snames.ads-tmpl: Name_Dim added Name_Dim_Float_IO and
308         Name_Dim_Integer_IO removed
309         * s-dim.ads: New package. Define the dimension terminology.
310         * s-diflio.adb, s-diinio.adb, s-dimkio.ads, s-dimmks.ads,
311         * s-dmotpr.ads: Package names updated.
312         * s-diflio.ads, s-diinio.ads: Documentation added and package
313         names updated.
314
315 2012-02-08  Gary Dismukes  <dismukes@adacore.com>
316
317         * gcc-interface/utils2.c (build_call_alloc_dealloc_proc): Revise test
318         for storage pools to test for an underlying record type rather than
319         testing Is_Tagged_Type, so that simple storage pools will be handled
320         the same as normal Ada storage pools.
321
322 2012-02-08  Yannick Moy  <moy@adacore.com>
323
324         * gnat_rm.texi: Minor reshuffling to place restriction at
325         appropriate place.
326
327 2012-02-08  Bob Duff  <duff@adacore.com>
328
329         * warnsw.adb (Set_Warning_Switch): Set Warn_On_Suspicious_Modulus_Value
330         False for '-gnatwA', to suppress these warnings.
331
332 2012-02-08  Vincent Celier  <celier@adacore.com>
333
334         * sinput-p.adb (Source_File_Is_Subunit): Check for BOM before
335         starting to scan, so that UTF8 encoding is taken into account.
336
337 2012-02-08  Arnaud Charlet  <charlet@adacore.com>
338
339         * s-tasren.adb, s-tasren.ads (Internal_Complete_Rendezvous): New
340         function.
341         (Complete_Rendezvous): Now call Internal_Complete_Rendezvous.
342         (Exceptional_Complete_Rendezvous): Mark No_Return.
343
344 2012-02-08  Eric Botcazou  <ebotcazou@adacore.com>
345
346         * exp_aggr.adb (Compile_Time_Known_Composite_Value):
347         New predicate to compute whether a composite value can be
348         evaluated at compile time.
349         (Component_Not_OK_For_Backend): Use Compile_Time_Known_Value for all
350         expressions of elementary type and Compile_Time_Known_Composite_Value
351         for all other expressions.
352         (Expand_Record_Aggregate): Convert to assignments in the case
353         of a type with mutable components if the aggregate cannot be
354         built statically.
355
356 2012-02-08  Gary Dismukes  <dismukes@adacore.com>
357
358         * aspects.ads (type Aspect_Id): Add Simple_Storage_Pool_Type.
359         (Impl_Defined_Aspects): Add association for
360         Aspect_Simple_Storage_Pool_Type.
361         (Aspect_Names): Add
362         association for Aspect_Simple_Storage_Pool_Type.
363         * aspects.adb:
364         (Canonical_Aspect): Add association for Simple_Storage_Pool_Type.
365         * exp_attr.adb (Expand_N_Attribute_Reference):
366         Change name to Name_Simple_Storage_Pool_Type.
367         * exp_ch4.adb (Expand_N_Allocator): Change
368         name to Name_Simple_Storage_Pool_Type.
369         * exp_intr.adb (Expand_Unc_Deallocation): Change name to
370         Name_Simple_Storage_Pool_Type.  * freeze.adb (Freeze_Entity):
371         Change names to Name_Simple_Storage_Pool_Type.  * par-prag.adb:
372         Change names to Name_Simple_Storage_Pool_Type.  * sem_attr.adb:
373         (Analyze_Attribute): Change name to Name_Simple_Storage_Pool_Type.
374         * sem_ch13.adb (Analyze_Attribute_Definition_Clause):
375         Change name to Name_Simple_Storage_Pool_Type.
376         * sem_prag.adb:
377         (Analyze_Pragma): Change name to Name_Simple_Storage_Pool_Type.
378         (Sig_Flags): Change name to Name_Simple_Storage_Pool_Type.
379         * sem_res.adb (Resolve_Allocator): Change name to
380         Name_Simple_Storage_Pool_Type.  * snames.ads-tmpl:
381         (Name_Simple_Storage_Pool_Type): New name constant.
382         (type Pragma_Id): Change name to Name_Simple_Storage_Pool_Type and
383         move to main pragma section because it no longer matches the
384         attribute name.
385         * snames.adb-tmpl (Get_Pragma_Id): Remove test for
386         Name_Simple_Storage_Pool.
387         (Is_Pragma_Name): Remove test for Name_Simple_Storage_Pool.
388
389 2012-02-08  Robert Dewar  <dewar@adacore.com>
390
391         * gnat_ugn.texi: Add some clarification to -gnatwA and -gnatws.
392
393 2012-02-08  Pascal Obry  <obry@adacore.com>
394
395         * prj.adb (Compute_All_Imported_Projects): Use new
396         For_Project_And_Aggregated_Context to ensure proper context is
397         used for encapsulated aggregate libraries.
398         * prj-proc.adb (Recursive_Process): Call
399         Process_Aggregated_Projects earlier to ensure that all dependent
400         projects are set with the proper encapsulated status.
401
402 2012-02-08  Pascal Obry  <obry@adacore.com>
403
404         * s-os_lib.adb (Normalize_Arguments): Properly escape last \ in null
405         terminated string.
406
407 2012-02-08  Pascal Obry  <obry@adacore.com>
408
409         * prj.ads, prj.adb (For_Project_And_Aggregated_Context): New
410         generic routine with a context parameter.
411
412 2012-02-08  Robert Dewar  <dewar@adacore.com>
413
414         * a-coinve.adb, sem_util.adb, sem_ch8.adb, a-cobove.adb,
415         a-convec.adb: Minor reformatting and code reorganization.
416
417 2012-02-08  Steve Baird  <baird@adacore.com>
418
419         * sem_cat.adb (In_Preelaborated_Unit): A child
420         unit instantiation does not inherit preelaboration requirements
421         from its parent.
422
423 2012-02-08  Gary Dismukes  <dismukes@adacore.com>
424
425         * aspects.ads (type Aspect_Id): Add Aspect_Simple_Storage_Pool.
426         (Impl_Defined_Aspects): Add entry for Aspect_Simple_Storage_Pool.
427         (Aspect_Argument): Add Name entry for Aspect_Simple_Storage_Pool.
428         (Aspect_Names): Add entry for Aspect_Simple_Storage_Pool.
429         * aspects.adb (Canonical_Aspect): Add entry for
430         Aspect_Simple_Storage_Pool.
431         * exp_attr.adb (Expand_N_Attribute_Reference): Handle case of
432         Attribute_Simple_Storage_Pool in the same way as Storage_Pool
433         (add conversion, analyze/resolve). For the Storage_Size attribute,
434         for the simple pool case, locate and use the simple pool type's
435         Storage_Size function (if any), otherwise evaluate to zero.
436         * exp_ch4.adb (Expand_N_Allocator): In the case of an allocator
437         for an access type with an associated simple storage pool,
438         locate and use the pool type's Allocate.
439         * exp_intr.adb (Expand_Unc_Deallocation): In the case where the
440         access type has a simple storage pool, locate the pool type's
441         Deallocate procedure (if present) and use it as the procedure
442         to call on the Free operation.
443         * freeze.adb (Freeze_Entity): In the case of a full type for
444         a private type defined with pragma Simple_Storage_Pool, check
445         that the full type is also appropriate for the pragma. For
446         a simple storage pool type, validate that the operations
447         Allocate, Deallocate (if present), and Storage_Size
448         (if present) are defined with appropriate expected profiles.
449         (Validate_Simple_Pool_Op_Formal): New procedure
450         (Validate_Simple_Pool_Operation): New procedure Add with and
451         use of Rtsfind.
452         * par-prag.adb: Add Pragma_Simple_Storage_Pool to case statement
453         (no action required).
454         * sem_attr.adb (Analyze_Attribute): For the case of the
455         Storage_Pool attribute, give a warning if the prefix type has an
456         associated simple storage pool, and rewrite the attribute as a
457         raise of Program_Error. In the case of the Simple_Storage_Pool
458         attribute, check that the prefix type has an associated simple
459         storage pool, and set the attribute type to the pool's type.
460         * sem_ch13.adb (Analyze_Aspect_Specifications): Add
461         Aspect_Simple_Storage_Pool case choice.
462         (Analyze_Attribute_Definition_Clause): Add
463         Aspect_Simple_Storage_Pool to case for Ignore_Rep_Clauses
464         (no action). Add handling for Simple_Storage_Pool attribute
465         definition, requiring the name to denote a simple storage pool
466         object.
467         (Check_Aspect_At_Freeze_Point): For a simple storage pool
468         aspect, set the type to that of the name specified for the aspect.
469         * sem_prag.adb (Analyze_Pragma): Add handling for pragma
470         Simple_Storage_Pool, requiring that it applies to a library-level
471         type declared in a package declaration that is a limited private
472         or limited record type.
473         * sem_res.adb (Resolve_Allocator): Flag an attempt to call a
474         build-in-place function in an allocator for an access type with
475         a simple storage pool as unsupported.
476         * snames.ads-tmpl: Add Name_Simple_Storage_Pool.
477         (type Attribute_Id): Add Attribute_Simple_Storage_Pool.
478         (type Pragma_Id): Add Pragma_Simple_Storage_Pool.
479         * snames.adb-tmpl (Get_Pragma_Id): Handle case of
480         Name_Simple_Storage_Pool.
481         (Is_Pragma_Name): Return True for Name_Simple_Storage_Pool.
482
483 2012-02-08  Cyrille Comar  <comar@adacore.com>
484
485         * projects.texi: Clarify doc for interfaces.
486
487 2012-02-07  Eric Botcazou  <ebotcazou@adacore.com>
488
489         * gcc-interface/Make-lang.in (GCC_LINKERFLAGS): New variable.
490         (GCC_LINK): Use it.
491
492 2012-02-01  Tristan Gingold  <gingold@adacore.com>
493
494         * gcc-interface/trans.c (Loop_Statement_to_gnu): Use sizetype
495         instead of size_type_node.
496
497 2012-01-30  Nicolas Roche  <roche@adacore.com>
498
499         * gcc-interface/Make-lang.in: Update dependencies.
500         * gcc-interface/Makefile.in: Use system-vxworks-system-ppc-mils.ads
501         when needed.
502         Remove Linker_Options -crtbe when building sjlj run-time.
503
504 2012-01-30  Robert Dewar  <dewar@adacore.com>
505
506         * sem.adb (Analyze): Call Analyze_Mod for N_Op_Mod mode.
507         * sem_ch3.adb (Modular_Type_Declaration): Warn on mod value of
508         form 2 * small-literal.
509         * sem_ch4.adb (Analyze_Mod): New procedure (warn on suspicious
510         mod value).
511         * sem_ch4.ads (Analyze_Mod): New procedure.
512
513 2012-01-30  Ed Schonberg  <schonberg@adacore.com>
514
515         * sem_ch6.adb: sem_ch6.adb (Analyze_Expression_Function): Copy
516         types and return expression when building spec for implicit
517         body, to preserve global references that may be present in an
518         instantiation.
519
520 2012-01-30  Matthew Heaney  <heaney@adacore.com>
521
522         * a-convec.adb, a-coinve.adb, a-cobove.adb (Sort,
523         Reverse_Elements): Check for cursor tampering.
524
525 2012-01-30  Ed Schonberg  <schonberg@adacore.com>
526
527         * sem_util.adb (Is_Fully_Initialized_Type): In Ada 2012, a
528         type with aspect Default_Value or Default_Component_Value is
529         fully initialized, and use of variables of such types do not
530         generate warnings.
531
532 2012-01-30  Javier Miranda  <miranda@adacore.com>
533
534 PR ada/15846
535         * sem_ch8.adb (Analyze_Subprogram_Renaming):
536         Handle self-renaming when the renamed entity is referenced using
537         its expanded name.
538
539 2012-01-30  Vincent Celier  <celier@adacore.com>
540
541         * projects.texi: Add documentation for attribute Interfaces.
542
543 2012-01-30  Hristian Kirtchev  <kirtchev@adacore.com>
544
545         * exp_ch7.adb (Build_Finalizer_Call): Set loc again.
546         * exp_ch11.adb (Expand_At_End_Handler): Do not provide a source
547         location for the wrapped call to the original AT_END routine
548         and the subsequent return statement.
549
550 2012-01-30  Pascal Obry  <obry@adacore.com>
551
552         * s-rannum.adb: Minor reformatting.
553
554 2012-01-30  Hristian Kirtchev  <kirtchev@adacore.com>
555
556         * a-calend-vms.adb, a-calend.adb: Increment the number of leap seconds
557         to 25 and add the hard time value for 2012-06-30.
558
559 2012-01-30  Robert Dewar  <dewar@adacore.com>
560
561         * a-strhas.ads, einfo.adb, einfo.ads, exp_ch7.adb, exp_ch9.adb,
562         freeze.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-proc.adb, s-llflex.ads,
563         s-ransee.adb, s-ransee.ads, sem_ch13.adb, sem_dim.adb, sem_prag.adb:
564         Minor reformatting/code reorganization.
565
566 2012-01-30  Thomas Quinot  <quinot@adacore.com>
567
568         * s-rannum.adb, s-ransee.adb, s-ransee.ads (Get_Seed): Return
569         Unsigned_64 rather than Duration.
570         (System.Random_Numbers.Reset): Use full value of seed
571         (do not truncate sub-second bits).
572
573 2012-01-30  Thomas Quinot  <quinot@adacore.com>
574
575         * sem_cat.adb, sem_ch12.adb: Minor reformatting.
576
577 2012-01-30  Yannick Moy  <moy@adacore.com>
578
579         * gnat_ugn.texi: Minor correction of GNAT UG, to take into
580         account changes to -gnatwa and more recent warnings.
581
582 2012-01-30  Hristian Kirtchev  <kirtchev@adacore.com>
583
584         * exp_ch7.adb (Build_Finalizer_Call): Do not provide a source
585         location when creating a call to a finalizer.
586         * exp_ch11.adb (Expand_Exception_Handlers): Do not provide
587         a source location for the first actual of Save_Occurrence for
588         consistency sake.
589
590 2012-01-30  Ed Schonberg  <schonberg@adacore.com>
591
592         * einfo.ads, einfo,adb: New attribute on scalar types:
593         Default_Aspect_Value New attribute on  array types:
594         Default_Aspect_Component_Value Move attribute Related_Array_Object
595         to a different position to accomodate new aspect attributes.
596         * freeze.adb (Freeze_Entity): Use new attributes to retrieve value
597         of defaults set with an aspect specification, rather than using
598         the list of aspects attached to the type, to prevent issues with
599         partial views.
600         * sem_ch13.adb (Analyze_Aspect_Specifications): For aspects
601         Default_Value and Default_Component _Value, store corresponding
602         expression in type entity.
603         (Check_Aspect_At_End_Of_Declaration): If the default aspects
604         are declared on the full view, use the full view to resolve the
605         correseponding expression.
606         * exp_ch3.adb (Init_Component): Use attribute
607         Default_Aspect_Component_Value to perform default initialization,
608         rather than relying on the rep item list for the type.
609         (Get_Simple_Init_Val): Ditto.
610
611 2012-01-30  Thomas Quinot  <quinot@adacore.com>
612
613         * a-strhas.ads: Document risk of collision attack.
614
615 2012-01-30  Yannick Moy  <moy@adacore.com>
616
617         * gnat_ugn.texi: Minor update wrt warning switches.
618
619 2012-01-30  Vincent Celier  <celier@adacore.com>
620
621         * prj-nmsc.adb (Check_Interfaces): Report an error when a
622         unit from Library_Interface is not a unit of the project.
623
624 2012-01-30  Vincent Pucci  <pucci@adacore.com>
625
626         * sem_prag.adb (Make_Aspect_For_PPC_In_Gen_Sub_Decl): Parent
627         links fixed inside PPC pragmas.
628         * sem_ch12.adb: Move call to Make_Aspect_For_PPC_In_Gen_Sub_Decl.
629
630 2012-01-30  Thomas Quinot  <quinot@adacore.com>
631
632         * s-ransee.ads: Minor reformatting.
633
634 2012-01-30  Pascal Obry  <obry@adacore.com>
635
636         * prj.ads, prj.adb (For_Each_Source): Add support for skipping
637         sources coming from an encapsulated library.
638
639 2012-01-30  Ed Schonberg  <schonberg@adacore.com>
640
641         * sem_ch3.adb (Process-Full_View): fix typo.
642         * sem_ch13.adb (Aalyze_Aspect_Specifications): if predicates
643         appear on a private type and the full view is available, ensure
644         existence of freeze node for full view.
645         (Build_Predicate_Function): Attach predicate function to both
646         views of a private type.
647
648 2012-01-30  Vincent Celier  <celier@adacore.com>
649
650         * prj-nmsc.adb (Check_Interfaces): Compute the Lib_Interface_ALIs
651         for the project if either attribute Library_Interface or
652         Interfaces is declared.
653         (Check_Stand_Alone_Library): Use Lib_Interface_ALIs computed in
654         Check_Interfaces.
655
656 2012-01-30  Pascal Obry  <obry@adacore.com>
657
658         * prj-proc.adb (Recursive_Process): Set From_Encapsulated_Lib
659         boolean value to true in the process list created by this routine.
660         * prj.ads (Project_List_Element): New field From_Encapsulated_Lib.
661         Continued work for KA06-021.
662         * prj.adb (Compute_All_Imported_Projects): Set
663         From_Encapsulated_Lib boolean flag.
664
665 2012-01-30  Vincent Pucci  <pucci@adacore.com>
666
667         * sem_dim.adb (Expand_Put_Call_With_Dimension_Symbol): Minor
668         code clean up.
669         * s-diflio.ads: Minor change.
670
671 2012-01-30  Javier Miranda  <miranda@adacore.com>
672
673         * exp_ch9.adb (Build_Dispatching_Requeue): Add missing call
674         to Get_Entry_Index.  Required to generate code which provides
675         the correct value of Entry_Index in the target entry.
676
677 2012-01-30  Nicolas Roche  <roche@adacore.com>
678
679         * system-vxworks-ppc.ads: Add pragma Linker_Options -crtbe to
680         fix issue with zcx on VxWorks5.
681
682 2012-01-30  Pascal Obry  <obry@adacore.com>
683
684         * prj.ads, prj.adb (For_Every_Project_Imported): Remove
685         In_Aggregate_Lib.
686         (For_Every_Project_Imported_Context): New generic routine with
687         a context parameter.
688         * prj-nmsc.adb: Revert to use For_Every_Project_Imported Avoid
689         distributed complexity.
690         * prj-env.adb, prj-conf.adb, makeutl.adb, gnatcmd.adb: Ditto.
691
692 2012-01-30  Thomas Quinot  <quinot@adacore.com>
693
694         * exp_aggr.adb (Expand_Record_Aggregate): After creating the
695         _parent aggregate for an extension aggregate, check whether it
696         requires delayed (top-down) expansion.
697
698 2012-01-30  Vincent Pucci  <pucci@adacore.com>
699
700         * sem_dim.adb (Expand_Put_Call_With_Dimension_Symbol): Rewritten.
701         * snames.ads-tmpl: Name_Item and Name_Symbols added.
702         * s-diflio.adb, s-diflio.ads, s-diinio.adb, s-diinio.ads: Rename
703         and change the position of parameter Symbols in every Put routine.
704         * s-dimmks.ads: Convert long float type Mks_Type into long
705         long float.
706         * s-llflex.ads: Modifications in comments.
707
708 2012-01-30  Hristian Kirtchev  <kirtchev@adacore.com>
709
710         * sem_ch12.adb (Earlier): Do not use the
711         top level source locations of the two input nodes.
712
713 2012-01-30  Robert Dewar  <dewar@adacore.com>
714
715         * einfo.ads, sem_prag.adb, sem_attr.adb, aspects.ads,
716         sem_cat.adb, sem_aggr.adb, exp_aggr.adb: Minor reformatting.
717
718 2012-01-30  Robert Dewar  <dewar@adacore.com>
719
720         * a-cdlili.adb, a-cidlli.adb, a-cbdlli.adb: Minor reformatting.
721
722 2012-01-30  Olivier Hainque  <hainque@adacore.com>
723
724         * sigtramp-ppcvxw.c (CFI_COMMON_REGS): Add rule for r1 back +
725         comments.
726
727 2012-01-30  Thomas Quinot  <quinot@adacore.com>
728
729         * gnat_rm.texi, sem_dist.adb, sem_dist.ads, einfo.ads, sem_prag.adb,
730         sem_ch12.adb, sem_attr.adb, aspects.adb, aspects.ads, par-prag.adb,
731         sem_cat.adb, snames.ads-tmpl (Sem_Dist.Is_Valid_Remote_Object_Type):
732         New subprogram (extracted from
733         Sem_Cat.Validate_Remote_Access_Object_Type_Declaration).
734         (Einfo.Is_Remote_Types): Now applies to generic types. Update
735         documentation accordingly.
736         (Sem_Ch12.Analyze_Associations): A RACW type is acceptable as
737         actual for a formal type to which a pragma Remote_Access_Type
738         applies.
739         (Aspects, Par.Prag, Sem_Prag): Support for new pramga/aspect
740         Remote_Access_Type.
741         (Sem_Attr.Analyze_Attribute, case Stub_Type): Attribute can
742         be applied to a generic type if pragma Remote_Access_Type
743         applies, in which case the type of the attribute is
744         System.Partition_Interface.RACW_Stub_Type.
745
746 2012-01-27  Eric Botcazou  <ebotcazou@adacore.com>
747
748         * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Procedure>: Do not set
749         an alignment on fields of the RETURN type built for the CICO mechanism.
750
751 2012-01-27  Eric Botcazou  <ebotcazou@adacore.com>
752
753         * gcc-interface/trans.c (gnat_to_gnu): Avoid making a SAVE_EXPR for
754         a call to a function that returns an unconstrained type with default
755         discriminant.  Similarly, avoid doing the conversion to the nominal
756         result type in this case.
757
758 2012-01-27  Eric Botcazou  <ebotcazou@adacore.com>
759
760         * gcc-interface/ada-tree.h (DECL_ALIASED_P): New flag.
761         * gcc-interface/decl.c (is_variable_size): Rename to...
762         (type_has_variable_size): ...this.
763         (adjust_packed): Adjust to above renaming.
764         (gnat_to_gnu_field): Set DECL_ALIASED_P on the field.
765         (field_is_artificial): New predicate.
766         (field_is_aliased): Likewise.
767         (field_has_self_size): Likewise.
768         (field_has_variable_size): Likewise.
769         (components_to_record): Record information for the final layout during
770         the first pass on fields.
771         If there is an aliased field placed after a field whose length depends
772         on discriminants, put all the fields of the latter sort, last.
773
774 2012-01-27  Eric Botcazou  <ebotcazou@adacore.com>
775
776         * gcc-interface/gigi.h (get_minimal_subprog_decl): Declare.
777         * gcc-interface/decl.c (get_minimal_subprog_decl): New function.
778         * gcc-interface/trans.c (Attribute_to_gnu): Use it for the prefix of an
779         Access-like attribute in a dispatch table if the subprogram is public.
780
781 2012-01-27  Eric Botcazou  <ebotcazou@adacore.com>
782
783         * gcc-interface/gigi.h (create_label_decl): Adjust.
784         * gcc-interface/utils.c (create_label_decl): Add GNAT_NODE parameter
785         and invoke gnat_pushdecl on it.  Remove obsolete settings.
786         * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Label>: Adjust call to
787         create_label_decl.
788         * gcc-interface/trans.c (gnat_to_gnu) <N_Null): Likewise.  Ignore the
789         label for debugging purposes.
790
791 2012-01-27  Eric Botcazou  <ebotcazou@adacore.com>
792
793         * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: For an aliased
794         object with an unconstrained nominal subtype and if optimization isn't
795         enabled, create a special VAR_DECL for debugging purposes.
796
797 2012-01-23  Robert Dewar  <dewar@adacore.com>
798
799         * sem_prag.ads, sem_prag.adb: Minor reformatting.
800
801 2012-01-23  Robert Dewar  <dewar@adacore.com>
802
803         * sem_ch13.adb (Analyze_Aspect_Specifications): Check for
804         language defined aspect applied to renaming or formal type
805         declaration (not permitted)
806
807 2012-01-23  Matthew Heaney  <heaney@adacore.com>
808
809         * a-cdlili.adb, a-cidlli.adb, a-cbdlli.adb (Vet): Replaced
810         comment with pragma Assert.
811
812 2012-01-23  Vincent Pucci  <pucci@adacore.com>
813
814         * sem_ch12.adb (Analyze_Generic_Subprogram_Declaration): Call
815         to Make_Aspect_For_PPC_In_Gen_Sub_Decl added in ASIS mode.
816         * sem_prag.adb, sem_prag.ads (Make_Aspect_For_PPC_In_Gen_Sub_Decl): New
817         routine. In ASIS mode, convert any PPC pragmas into aspects in generic
818         subprogram declaration in order to enable the analysis of PPC boolean
819         expressions.
820
821 2012-01-23  Robert Dewar  <dewar@adacore.com>
822
823         * sem_ch3.adb (Analyze_Object_Declaration): Properly
824         handle Current_Value for volatile variables (also propagate
825         Treat_As_Volatile from type to object).
826
827 2012-01-23  Hristian Kirtchev  <kirtchev@adacore.com>
828
829         * sem_ch12.adb (Install_Body): Detect the case
830         where the enclosing context is a package with a stub body that
831         has already been replaced by the actual body. In such cases,
832         the freeze node for the enclosing context must be inserted after
833         the real body.
834
835 2012-01-23  Ed Schonberg  <schonberg@adacore.com>
836
837         * sem_prag.adb (Analyze_Pragma, case Debug): Freeze the called
838         subprogram before expanding the pragma into an if-statement with
839         a block, to ensure that when the subprogram is null its body is
840         properly generated before expansion.
841
842 2012-01-23  Hristian Kirtchev  <kirtchev@adacore.com>
843
844         * sem_ch12.adb (Analyze_Associations): Alphabetize local variables and
845         constants. Rename Actual_Types to Actuals_To_Freeze. Rename Next_Formal
846         to Saved_Formal.
847         Freeze all eligible subprograms which appear as actuals in
848         the instantiation.
849         (Has_Fully_Defined_Profile): New routine.
850         (Renames_Standard_Subprogram): New routine.
851         (Earlier): Add local variable N. Comment update. Do not use source
852         locations when trying to determine whether one node precedes another.
853
854 2012-01-23  Gary Dismukes  <dismukes@adacore.com>
855
856         * exp_ch4.adb (Expand_Concatenate): In the case
857         where the result of a concatentation can be null, set the to
858         result have both the low and high bounds of the right operand (not
859         just the high bound, as was the case prior to this fix). Also,
860         fix the saved high bound setting (Last_Opnd_High_Bound) in the
861         empty string literal case (should have been low bound minus one,
862         rather than plus one).
863
864 2012-01-23  Thomas Quinot  <quinot@adacore.com>
865
866         * scos.ads, put_scos.adb, get_scos.adb (Get_SCOs, Put_SCOs): Do not
867         omit statement SCOs for disabled pragmas.
868
869 2012-01-23  Matthew Heaney  <heaney@adacore.com>
870
871         * a-cohase.ads, a-cihase.ads, a-cbhase.ads, a-coorse.ads,
872         a-ciorse.ads, a-cborse.ads, a-cohama.ads, a-cihama.ads, a-cbhama.ads,
873         a-coorma.ads, a-ciorma.ads, a-cborma.ads, a-cdlili.ads, a-cidlli.ads,
874         a-cbdlli.ads, a-convec.ads, a-coinve.ads, a-cobove.ads (Cursor'Read,
875         Cursor'Write): Declare in private part.
876         (Reference_Type'Read, Reference_Type'Write): Ditto.
877         (Constant_Reference_Type'Read, Constant_Reference_Type'Write): Ditto.
878
879 2012-01-23  Robert Dewar  <dewar@adacore.com>
880
881         * a-catizo.ads, a-calend.adb, a-calend.ads, par-ch13.adb: Minor
882         reformatting.
883
884 2012-01-23  Ed Schonberg  <schonberg@adacore.com>
885
886         * sem_ch6.adb (Analyze_Subprogram_Declaration): Do not set the
887         Corresponding_Body on a defaulted null formal subprogram.
888         * sem_ch12.adb (Check_Formal_Package_Instance): No check needed
889         on a defaulted formal subprogram that is a null procedure.
890
891 2012-01-23  Hristian Kirtchev  <kirtchev@adacore.com>
892
893         * exp_ch9.adb: Update the comments involving pragma Implemented.
894         * sem_ch3.adb (Check_Pragma_Implemented (Entity_Id)): Add local
895         constant Subp_Alias and local variable Impl_Subp. Properly
896         handle aliases of synchronized wrappers. Code cleanup.
897         (Check_Pragma_Implemented (Entity_Id; Entity_Id)): Add
898         Name_Optional as part of the condition.
899         * sem_prag.adb (Analyze_Pragma): Add "Optional" as one of the
900         valid choices of implementation kind.
901         (Check_Arg_Is_One_Of): New routine.
902         * snames.ads-tmlp: Add Name_Optional.
903
904 2012-01-23  Ed Schonberg  <schonberg@adacore.com>
905
906         * par-ch13.adb: Better error recovery in illegal aspect
907         specification.
908
909 2012-01-23  Hristian Kirtchev  <kirtchev@adacore.com>
910
911         * a-calend.adb: Add with clause for Interfaces.C. Add constant
912         Unix_Max.
913         (Day_Of_Week): Call the internal UTC_Time_Offset.
914         (Split): Call the internal UTC_Time_Offset.
915         (Time_Of): Call the internal UTC_Time_Offset.
916         (Time_Zone_Operations.UTC_Time_Offset): Call internal UTC_Time_Offset.
917         (UTC_Time_Offset): New library-level routine.
918         * a-calend.ads (UTC_Time_Offset): Remove parameter
919         Is_Historic. Update related comment on usage.
920         * a-catizo.adb (UTC_Time_Offset): Removed.
921         (UTC_Time_Offset (Time)): Call Time_Zone_Operations.UTC_Time_Offset.
922         * a-caltizo.ads (UTC_Time_Offset): Removed.
923         (UTC_Time_Offset (Time)): Add back the default expression of parameter
924         Date.
925
926 2012-01-23  Robert Dewar  <dewar@adacore.com>
927
928         * sprint.ads, sprint.adb (Sprint_Node_List): Add New_Lines parameter
929         (pg,po,ps): Make sure each entry starts on new line.
930
931 2012-01-23  Hristian Kirtchev  <kirtchev@adacore.com>
932
933         * a-calend.ads, a-calend.adb: Define types int and int_Pointer. Update
934         the parameter profile of procedure localtime_tzoff and its associated
935         comment.
936         (Day_Of_Week): Do not treat the input date as historical
937         with respect to time zones.
938         (Split): Do not treat the input
939         date as historical with respect to time zones.  (Time_Of): Do
940         not treat the input constituents as forming a historical date
941         with respect to time zones.
942         (UTC_Time_Offset): Add new formal
943         parameter Is_Historic. Add local variable Flag. Update the call
944         to localtime_tzoff.
945         * a-catizo.ads, a-catizo.adb (UTC_Time_Offset): New routine.
946         (UTC_Time_Offset (Time)): Update the call to
947         Time_Zone_Operations.UTC_Time_Offset.
948         * sysdep.c (__gnat_localtime_tzoff): Update parameter
949         profile. Split the processing of offsets on Windows into two - one
950         part of historic time stamps and the other for the current time.
951
952 2012-01-23  Robert Dewar  <dewar@adacore.com>
953
954         * a-calend.adb: Minor reformatting.
955
956 2012-01-23  Ed Schonberg  <schonberg@adacore.com>
957
958         * exp_ch9.adb, sem_ch9.adb: Handle array of access to synchronized
959         interface in requeue statement.
960
961 2012-01-23  Cyrille Comar  <comar@adacore.com>
962
963         * projects.texi: Remove references to main units and replace
964         with references to main programs to be coherent with the
965         documentation.
966
967 2012-01-23  Robert Dewar  <dewar@adacore.com>
968
969         * s-utf_32.adb: Minor reformatting.
970
971 2012-01-23  Vincent Celier  <celier@adacore.com>
972
973         * snames.ads-tmpl: Minor comment addition Indicate that
974         Name_Library_Encapsulated_Options is only used in gprbuild.
975
976 2012-01-23  Robert Dewar  <dewar@adacore.com>
977
978         * sem_ch10.adb (Analyze_Subunit): Properly save/restore cunit
979         restrictions.
980
981 2012-01-23  Ed Schonberg  <schonberg@adacore.com>
982
983         * snames.ads-tmpl: Add Name_Synchronization.
984         * aspects.ads, aspects.adb: Add Aspect_Synchronization to
985         enumeration type and related maps.
986         * sem_ch13.adb (Analyze_Aspect_Specifications): Handle Aspect
987         Synchronization, build corresponding pragma Implemented.
988         * sem_util.adb (Implementation_Kind): Handle both explicit and
989         implicit pragma_argument association to retrieve the given
990         synchronization mode.
991
992 2012-01-23  Robert Dewar  <dewar@adacore.com>
993
994         * sem_ch10.adb, errout.adb: Minor reformatting.
995
996 2012-01-23  Ed Schonberg  <schonberg@adacore.com>
997
998         * sem_res.adb (Resolve_Actuals): An actual in a call to an
999         Ada 2012 Reference function does not lead to a dangerous order
1000         dependence.
1001
1002 2012-01-23  Gary Dismukes  <dismukes@adacore.com>
1003
1004         * exp_util.adb (Is_Iterated_Container): Test
1005         Is_Entity_Name when searching for calls to the default iterator,
1006         to avoid blowing up on indirect calls which have an explicit
1007         dereference as the call name.
1008
1009 2012-01-23  Thomas Quinot  <quinot@adacore.com>
1010
1011         * errout.adb (Set_Msg_Node): For an N_Expanded_Name, output
1012         the complete expanded name, rather than just its Selector_Name.
1013
1014 2012-01-23  Thomas Quinot  <quinot@adacore.com>
1015
1016         * a-textio.adb (Put): Rewrite one-parameter Character version to
1017         just call the two-parameter one with Current_Out.
1018
1019 2012-01-23  Hristian Kirtchev  <kirtchev@adacore.com>
1020
1021         * freeze.adb (Check_Current_Instance): Issue an
1022         error when the prefix of 'Unchecked_Access or 'Access does not
1023         denote a legal aliased view of a type.
1024         (Freeze_Record_Type): Do not halt the processing of record components
1025         once the Has_Controlled_Component is set as this bypasses the remaining
1026         checks.
1027         (Is_Aliased_View_Of_Type): New routine.
1028
1029 2012-01-23  Thomas Quinot  <quinot@adacore.com>
1030
1031         * errout.ads, freeze.adb: Minor reformatting.
1032
1033 2012-01-23  Thomas Quinot  <quinot@adacore.com>
1034
1035         * sem_ch10.adb, sem_prag.adb: Remove redundant apostrophes in error
1036         messages.
1037
1038 2012-01-23  Olivier Hainque  <hainque@adacore.com>
1039
1040         * adadecode.c (__gnat_decode): Deal with empty input early,
1041         preventing potential erroneous memory access later on.
1042
1043 2012-01-21  Eric Botcazou  <ebotcazou@adacore.com>
1044
1045         PR ada/46192
1046         * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: In the case of a
1047         renaming, preserve the volatileness through the indirection, if any.
1048
1049 2012-01-14  Andreas Schwab  <schwab@linux-m68k.org>
1050
1051         * gcc-interface/Makefile.in (OSCONS_EXTRACT): Add
1052         $(GNATLIBCFLAGS).
1053
1054 2012-01-10  Pascal Obry  <obry@adacore.com>
1055
1056         * prj-nmsc.adb (Check_Library_Attributes):
1057         Kill check for object/source directories for aggregate libraries.
1058
1059 2012-01-10  Matthew Heaney  <heaney@adacore.com>
1060
1061         * a-cdlili.adb, a-cdlili.ads, a-cihama.adb, a-cihama.ads, a-coinve.adb,
1062         a-coinve.ads, a-ciorse.adb, a-ciorse.ads, a-coorma.adb, a-coorma.ads,
1063         a-cborma.adb, a-cborma.ads, a-cidlli.adb, a-cidlli.ads, a-cimutr.adb,
1064         a-cimutr.ads, a-cihase.adb, a-cihase.ads, a-cohama.adb, a-cohama.ads,
1065         a-coorse.adb, a-coorse.ads, a-cbhama.adb, a-cbhama.ads, a-cborse.adb,
1066         a-cborse.ads, a-comutr.adb, a-comutr.ads, a-ciorma.adb, a-cobove.adb,
1067         a-ciorma.ads, a-cobove.ads, a-convec.adb, a-convec.ads, a-cohase.adb,
1068         a-cohase.ads, a-cbdlli.adb, a-cbdlli.ads, a-cbmutr.adb, a-cbmutr.ads,
1069         a-cbhase.adb, a-cbhase.ads (Reference, Constant_Reference): Declare
1070         container parameter as aliased in/in out.
1071         Code clean ups.
1072
1073 2012-01-10  Bob Duff  <duff@adacore.com>
1074
1075         * s-os_lib.ads: Improve comment.
1076
1077 2012-01-10  Geert Bosch  <bosch@adacore.com>
1078
1079         * s-gearop.adb (Forward_Eliminate): Avoid improper aliasing
1080         for complex Scalar.
1081
1082 2012-01-10  Bob Duff  <duff@adacore.com>
1083
1084         * sem_intr.adb (Check_Shift): Use RM_Size instead of Esize, when
1085         checking that the 'Size is correct. If the type is "mod 2**12",
1086         for example, it's illegal, but Esize is the 'Object_Size, which
1087         will be something like 16 or 32, so the error ('Size = 12) was
1088         not detected.
1089         * gnat_rm.texi: Improve documentation of shift
1090         and rotate intrinsics.
1091
1092 2012-01-10  Pascal Obry  <obry@adacore.com>
1093
1094         * prj.adb (For_Every_Project_Imported): Fix
1095         implementation to make sure we return each project only once
1096         for aggragte libraries. It is fine to return a project twice for
1097         aggregate projects, this was the case as a Project_Id is different
1098         in each project tree. The new implementation use a table based on
1099         the project name to ensure proper detection of duplicate project
1100         in aggregate library. A new context is then created to continue
1101         retrurning duplicate project for aggregate libraries.
1102
1103 2012-01-09  Eric Botcazou  <ebotcazou@adacore.com>
1104
1105         * gcc-interface/trans.c (call_to_gnu): Create the temporary for the
1106         return value in the variable-sized return type case if the target is
1107         an array with fixed size.  However, do not create it if this is the
1108         expression of an object declaration.
1109
1110 2012-01-09  Eric Botcazou  <ebotcazou@adacore.com>
1111
1112         * gcc-interface/trans.c (addressable_p) <COMPONENT_REF>: Fix thinko.
1113
1114 2012-01-06  Robert Dewar  <dewar@adacore.com>
1115
1116         * a-wichha.ads, a-wichun.ads, a-zchhan.ads, a-zchuni.ads,
1117         s-utf_32.ads: Add pragma Pure
1118         * s-utf_32.adb: Suppress warnings on non-static constants (now
1119         that this is Pure).
1120
1121 2012-01-06  Bob Duff  <duff@adacore.com>
1122
1123         * s-rpc.ads (Read, Write): Add overriding indicators.
1124
1125 2012-01-06  Robert Dewar  <dewar@adacore.com>
1126
1127         * gnat_rm.texi: Add documentation for conventions
1128         Ada_Pass_By_Copy and Ada_Pass_By_Reference.
1129
1130 2012-01-06  Gary Dismukes  <dismukes@adacore.com>
1131
1132         * a-tienio.adb (Put): Add exception message on
1133         raise statements. Remove unneeded blocks and object declarations.
1134
1135 2012-01-06  Robert Dewar  <dewar@adacore.com>
1136
1137         * sem_prag.adb: Minor reformatting.
1138
1139 2012-01-06  Ed Schonberg  <schonberg@adacore.com>
1140
1141         * sinfo.ads, sinfo.adb (Has_Prefixed_Call): New flag to indicate
1142         that a selected component within a generic unit has been resolved
1143         as a prefixed call with local references.
1144         * sem_ch3.adb (Is_Visible_Component): In an instance body a selected
1145         component is always visible.
1146         * sem_ch4.adb (Analyze_Selected_Component): If the node is a
1147         prefixed call in an instance, do not look for visible components
1148         of the type.
1149         * sem_ch12.adb (Reset_Entity): If a selected component has resolved
1150         to a prefixed call, mark the node accordingly when prefix and
1151         selector are local references.
1152
1153 2012-01-02  Eric Botcazou  <ebotcazou@adacore.com>
1154
1155         * gnatvsn.ads (Current_Year): Bump to 2012.
1156 \f
1157 Copyright (C) 2012 Free Software Foundation, Inc.
1158
1159 Copying and distribution of this file, with or without modification,
1160 are permitted in any medium without royalty provided the copyright
1161 notice and this notice are preserved.