]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/ada/ChangeLog
[multiple changes]
[thirdparty/gcc.git] / gcc / ada / ChangeLog
CommitLineData
7ae0d98c
AC
12011-08-04 Hristian Kirtchev <kirtchev@adacore.com>
2
3 * exp_ch7.adb (Build_Raise_Statement): Remove the specialized
4 processing for .NET/JVM. These targets can now benefit from
5 Raise_From_Controlled_Operation and they share the same processing with
6 standard targets.
7 (Establish_Transient_Scope): Remove the restriction for .NET/JVM.
8 These targets need transient scopes in order to properly finalize short
9 lived controlled objects.
10 (Make_Handler_For_Ctrl_Operation): Remove the specialized processing for
11 NET/JVM. These targets can now benefit from
12 Raise_From_Controlled_Operation and they share the same processing with
13 standard targets.
14
152011-08-04 Geert Bosch <bosch@adacore.com>
16
17 * tracebak.c (STOP_FRAME): Stop at any next pointer outside the stack
18
192011-08-04 Ed Schonberg <schonberg@adacore.com>
20
21 * exp_aggr.adb (Has_Visible_Private_Ancestor): subsidiary routine to
22 Expand_Record_Aggregate, to determine whether aggregate must be
23 expanded into assignments. This is the case if the ancestor part is
24 private, regarless of the setting of the flag Has_Private_Ancestor.
25
262011-08-04 Ed Falis <falis@adacore.com>
27
28 * vxaddr2line.adb: Add support for e500v2 and for Linux hosts
29
302011-08-04 Bob Duff <duff@adacore.com>
31
32 * sinfo.ads: Fix comment.
33
342011-08-04 Steve Baird <baird@adacore.com>
35
36 * bindgen.adb (Get_Ada_Main_Name): If CodePeer_Mode is set, then
37 choose a package name in much the same way as is
38 done for JGNAT when VM_Target /= No_VM, except that
39 a slightly more distinctive prefix string is used.
40
412011-08-04 Emmanuel Briot <briot@adacore.com>
42
43 * makeutl.adb (Complete_Mains): no longer accept unit names on the
44 gnatmake command line.
45 This behavior was never documented (and was supported only because of
46 an early bug in the code). This case might lead to ambiguous cases
47 (between unit names and truncated base names without suffixes).
48
87729e5a
AC
492011-08-04 Hristian Kirtchev <kirtchev@adacore.com>
50
51 * a-tags.ads, a-tags.adb (Unregister_Tag): New routine.
52 Remove the external tag of a tagged type from the internal hash table.
53 * exp_ch7.adb (Build_Cleanup_Statements): Update the comment on the
54 expanded usage of the routine. Strenghten the check for Is_Master. Add
55 processing for tagged types.
56 (Build_Finalizer): Create all the necessary lists used in finalizer
57 creation when the processed context is a package that may contain
58 tagged types.
59 (Expand_Cleanup_Actions): Rename the call to Has_Controlled_Objects to
60 Requires_Cleanup_Actions.
61 (Expand_N_Package_Body): Package bodies may need clean up code
62 depending on whether they contain tagged types.
63 (Expand_N_Package_Declaration): Package declarations may need clean up
64 code depending on whether they contain tagged types.
65 (Unregister_Tagged_Types): New routine. Search through a list of
66 declarations or statements, looking for non-abstract Ada tagged types.
67 For each such type, generate code to unregister the external tag.
68 * exp_util.adb (Has_Controlled_Objects (Node_Id)): Renamed to
69 Requires_Cleanup_Actions.
70 (Requires_Cleanup_Actions (List_Id, Boolean)): New routine. Search
71 through a list of declarations or statements looking for non-abstract
72 Ada tagged types or controlled objects.
73 * exp_util.ads (Has_Controlled_Objects (Node_Id)): Renamed to
74 Requires_Cleanup_Actions.
75 (Has_Controlled_Objects (List_Id, Boolean)): Removed.
76 * rtsfind.ads: Add entry RE_Unregister_Tag to tables RE_Id and
77 RE_Unit_Table.
78
792011-08-04 Vincent Celier <celier@adacore.com>
80
81 * prj-env.adb (For_All_Source_Dirs.For_Project): Check if project Prj
82 has Ada sources, not project Project, because if the root project
83 Project has no sources of its own, all projects will be deemed without
84 sources.
85
862011-08-04 Gary Dismukes <dismukes@adacore.com>
87
88 * bindgen.adb (Gen_Adainit_Ada): Move the generation of the declaration
89 of the No_Param_Proc acc-to-subp type used for initialization of
90 __gnat_finalize_library_objects so that it's declared at library level
91 rather than nested inside of the adainit routine.
92
932011-08-04 Javier Miranda <miranda@adacore.com>
94
95 * exp_disp.adb (Make_DT): Generate code to check the external tag ONLY
96 if the tagged type has a representation clause which specifies its
97 external tag.
98
992011-08-04 Ed Schonberg <schonberg@adacore.com>
100
101 * einfo.ads, einfo.adb (Has_Private_Ancestor): now a flag on types.
102 Remove previous procedure with that name.
103 * sem_ch3.adb (Build_Derived_Record_Type): set Has_Private_Ancestor
104 when appropriate.
105 * sem_aggr.adb (Resolve_Extension_Aggregate): if the ancestor part is a
106 subtype mark, the ancestor cannot have unknown discriminants.
107 (Resolve_Record_Aggregate): if the type has invisible components
108 because of a private ancestor, the aggregate is illegal.
109
1102011-08-04 Vincent Celier <celier@adacore.com>
111
112 * switch-m.adb (Normalize_Compiler_Switches): Recognize and take into
113 account switches -gnat2005, -gnat12 and -gnat2012.
114
1152011-08-04 Bob Duff <duff@adacore.com>
116
117 * s-tasdeb.ads: Minor comment fix.
118
1192011-08-04 Arnaud Charlet <charlet@adacore.com>
120
121 * gnatlink.adb (Gnatlink): Pass -gnat83/95/05/12 switch to gcc in
122 CodePeer mode.
123 * switch.ads, switch.adb (Is_Language_Switch): New function.
124
1252011-08-04 Vincent Celier <celier@adacore.com>
126
127 * switch-c.adb: Minor comment addition.
128
1292011-08-04 Vincent Celier <celier@adacore.com>
130
131 * vms_conv.adb (Process_Argument): Fail graciously when qualifier
132 ending with '=' is followed by a space (missing file name).
133
1342011-08-04 Pascal Obry <obry@adacore.com>
135
136 * g-regist.ads: Fix size of HKEY on x86_64-windows.
137
1382011-08-04 Ed Schonberg <schonberg@adacore.com>
139
140 * sem_ch12.adb (Analyze_Associations): New routine
141 Check_Overloaded_Formal_Subprogram to reject a formal package when
142 there is a named association or a box initialisation for an overloaded
143 formal subprogram of the corresponding generic.
144
1452011-08-04 Yannick Moy <moy@adacore.com>
146
147 * alfa.ads (ALFA_Xref_Record): add component for type of entity
148 * get_alfa.adb, put_alfa.adb: Read and write new component of
149 cross-reference.
150 * lib-xref-alfa.adb (Collect_ALFA): generate new component.
151
88f47280
AC
1522011-08-04 Pascal Obry <obry@adacore.com>
153
154 * urealp.adb: Minor reformatting.
155
1562011-08-04 Tristan Gingold <gingold@adacore.com>
157
158 * exp_ch7.adb (build_finalizer.process_declarations.processing_actions):
159 Handle the case when Cleanup_Protected_Object returns Empty.
160
1612011-08-04 Yannick Moy <moy@adacore.com>
162
163 * frontend.adb (Frontend): only qualify names in non-ALFA mode
164
1652011-08-04 Ed Schonberg <schonberg@adacore.com>
166
167 * sem_ch4.adb (Try_Class_Wide_Operation): if the context is a procedure
168 call, ignore functions.
169
05c53a69
GB
1702011-08-04 Geert Bosch <bosch@adacore.com>
171
172 * urealp.adb (Equivalent_Decimal_Exponent): Avoid the use of floating
173 point.
174
23cc1ace
EB
1752011-08-04 Emmanuel Briot <briot@adacore.com>
176
177 * makeutl.adb (Compute_Builder_Switches): no longer accept a unit name
178 as an index for Builder'Switches. This conforms to the documentation.
179 * make.adb (Insert_Project_Sources): avoid duplicate code
180
cef14201
AC
1812011-08-04 Emmanuel Briot <briot@adacore.com>
182
183 * makeutl.adb (Complete_Mains): if the user has passed a relative file
184 name on the command line (for instance "../dummy"), never assume it can
185 be a unit name.
186
1872011-08-04 Tristan Gingold <gingold@adacore.com>
188
189 * bindgen.adb: Remove code the reference or create the
190 Break_Start/__gnat_break_start procedure.
191 * s-stalib.adb (Break_Start): Removed.
192
e2fee30d
EB
1932011-08-04 Emmanuel Briot <briot@adacore.com>
194
195 * make.adb, makeutl.adb, makeutl.ads (Compute_Builder_Switches): now
196 shared with gprbuild.
197
2d395256
AC
1982011-08-04 Yannick Moy <moy@adacore.com>
199
200 * par-ch4.adb (P_Primary): preferentially issue an error message about
201 a missing parenthesis arount a conditional or case expression in Ada
202 2012 mode, if we detect that the alignment is not correct for a
203 statement.
204
2052011-08-04 Hristian Kirtchev <kirtchev@adacore.com>
206
207 * exp_ch7.adb (Process_Declarations): Do not consider the result of a
208 tag-to-class-wide conversion as needing finalization actions.
209 * exp_util.adb (Has_Controlled_Objects): Do not consider the result of
210 a tag-to-class-wide conversion as needing finalization actions.
211 (Is_Finalizable_Transient): The result of a tag-to-class-wide
212 conversion does not need finalization actions.
213 (Is_Tag_To_CW_Conversion): New routine.
214 * exp_util.ads (Is_Tag_To_CW_Conversion): New routine. Determines
215 whether an object is the result of a tag-to-class-wide conversion.
216
2172011-08-04 Yannick Moy <moy@adacore.com>
218
219 * sem_ch13.adb (Analyze_Aspect_Specifications): correct order in which
220 the left-hand-side and right-hand-side of a conjunct are inserted when
221 translating a pre- or postcondition
222 * sem_ch6.adb: Correct typo in comment
223
2242011-08-04 Ed Schonberg <schonberg@adacore.com>
225
226 * gnat_rm.texi: Ravenscar does not prohibit dependence on
227 Unchecked_Conversion and Unchecked_Deallocation.
228
2292011-08-04 Thomas Quinot <quinot@adacore.com>
230
231 * make.adb: Minor reformatting.
232
767ab2fd
EB
2332011-08-04 Emmanuel Briot <briot@adacore.com>
234
235 * prj.adb, prj.ads, makeutl.adb (Complete_Mains): search for the
236 sources in the project and its imported projects, but not in the whole
237 tree.
238
8fb3f5df
AC
2392011-08-04 Emmanuel Briot <briot@adacore.com>
240
241 * make.adb: Remove debug trace.
242
2432011-08-04 Vincent Celier <celier@adacore.com>
244
245 * makeutl.adb (Do_Complete): Get the absolute path name of a relative
246 path in canonical form, to be able to compare path names on platforms
247 such as Windows or Darwin.
248
2492011-08-04 Thomas Quinot <quinot@adacore.com>
250
251 * par_sco.adb (Traverse_Declarations_Or_Statements.Set_Statement_Entry):
252 For a pragma (statement with C1 = 'P'), record the sloc of the pragma.
253 * scos.ads: Update documentation accordingly.
254 * put_scos.adb (Output_SCO_Line): Omit statement SCOs for disabled
255 pragmas.
256
9515740f
AC
2572011-08-04 Ed Schonberg <schonberg@adacore.com>
258
259 * sem_attr.adb (Bad_Attribute_For_Predicate): flag illegal use of
260 attribute only if prefix type is scalar.
261
2622011-08-04 Emmanuel Briot <briot@adacore.com>
263
264 * make.adb, makeutl.adb, prj-env.adb (Check_Mains): put back support
265 in gnatmake for specifying mains on the command line that do not belong
266 to the main project. These mains must currently all belong to the same
267 project, though.
268 (Ultimate_Extension_Of): removed, since duplicated
269 Ultimate_Extending_Project.
270
92966893
AC
2712011-08-04 Arnaud Charlet <charlet@adacore.com>
272
273 * make.adb (Do_Codepeer_Globalize_Step): Removed. Use CodePeer_Mode
274 instead.
275 (CodePeer_Mode_String): New.
276 (Linking_Phase, Binding_Phase): Call gnatlink with -P switch in
277 CodePeer mode.
278 (Scan_Make_Arg): Do not disable binding/linking phase in CodePeer mode.
279 * bindgen.adb (Gen_Elab_Calls_Ada): Ignore subprograms in CodePeer
280 mode, since no useful elaboration subprogram is needed by CodePeer.
281 * gnatlink.adb (Gnatlink): Add support for -P switch (CodePeer mode).
282 In this mode, compile binder file with -gnatC and do stop after this
283 step.
284
2852011-08-04 Vincent Celier <celier@adacore.com>
286
287 * exp_ch7.adb: Minor comment fix.
288
5969611f
RD
2892011-08-04 Robert Dewar <dewar@adacore.com>
290
291 * exp_ch7.adb, make.adb, sem_ch10.adb, bindgen.adb, sem_res.adb,
292 exp_ch4.adb, makeutl.adb: Minor reformatting.
293
6367dd30
AC
2942011-08-04 Emmanuel Briot <briot@adacore.com>
295
296 * make.adb, makeutl.adb, makeutl.ads (Make): major refactoring.
297 Create several new subprograms to move code out of Make. This makes the
298 code more readable, removes code duplication, and is a preparation work
299 for adding support for aggregate projects.
300
3012011-08-04 Tristan Gingold <gingold@adacore.com>
302
303 * s-po32gl.ads, s-po32gl.adb: New files.
304 * exp_ch7.ads (Get_Global_Pool_For_Access_Type): New function.
305 * exp_ch7.adb (Get_Global_Pool_For_Access_Type): New function.
306 (Build_Finalization_Collection): Use it.
307 * exp_ch4.adb (Complete_Controlled_Allocation): Ditto.
308 * rtsfind.ads: System_Pool_32_Global, Re_Global_Pool_32_Object: New
309 literals.
310 * gcc-interface/Makefile.in: Use s-po32gl.o on VMS.
311 * gcc-interface/Make-lang.in: Update dependencies.
312
cd8bfe35
EB
3132011-08-04 Emmanuel Briot <briot@adacore.com>
314
315 * makeutl.adb (Complete_Mains): add support for specs with no suffix on
316 the command line.
317
7db29ea7
EB
3182011-08-04 Emmanuel Briot <briot@adacore.com>
319
320 * make.adb, makeutl.adb (Complete_Mains): if a main specified on the
321 command line is not a file name, also check whether it could be a unit
322 name.
323
d9b056ea
AC
3242011-08-04 Eric Botcazou <ebotcazou@adacore.com>
325
326 * bindgen.adb (Gen_Finalize_Library_Ada): Factor out code to generate
327 the header of the finalization routine.
328 If the unit has no finalizer but is a body whose spec has one, then
329 generate the decrement of the elaboration entity only.
330 If the unit has a finalizer and is a spec, then do not generate the
331 decrement of the elaboration entity.
332 (Gen_Finalize_Library_C): Likewise.
333
3342011-08-04 Hristian Kirtchev <kirtchev@adacore.com>
335
336 * exp_ch7.adb (Alignment_Of): New subsidiary routine.
337 (Bounds_Size_Expression): Removed.
338 (Double_Alignment_Of): New subsidiary routine.
339 (Make_Finalize_Address_Stmts): New local variable Index_Typ. Account
340 for a hole in the dope vector of unconstrained arrays due to different
341 index and element alignments.
342
3432011-08-04 Ed Schonberg <schonberg@adacore.com>
344
345 * sem_res.adb (Resolve_Allocator): diagnose task allocator that will
346 raise program_error because body has not been seen yet.
347
3482011-08-04 Ed Schonberg <schonberg@adacore.com>
349
350 * sem_ch10.adb (Analyze_With_Clause): Protect against child unit with
351 an unresolved name.
352
3532011-08-04 Vincent Celier <celier@adacore.com>
354
355 * makeutl.adb (Do_Complete): Check absolute paths in canonical forms
356
3572011-08-04 Yannick Moy <moy@adacore.com>
358
359 * alfa.adb, alfa.ads (Unique_Defining_Entity): move function from here
360 * sem_util.adb, sem_util.ads (Unique_Defining_Entity): ...to here
361
3622011-08-04 Thomas Quinot <quinot@adacore.com>
363
364 * sem_ch12.adb (Analyze_Package_Instantiation): Do not omit body for
365 instantiation in RCI.
366
3672011-08-04 Emmanuel Briot <briot@adacore.com>
368
369 * make.adb: Share more code with gprbuild
370
f5fc5b9d
AC
3712011-08-04 Emmanuel Briot <briot@adacore.com>
372
373 * projects.texi: Added documentation for the IDE'Gnat project file
374 attribute.
375
3762011-08-04 Nicolas Roche <roche@adacore.com>
377
378 * gnat_rm.texi: Minor editing.
379
3802011-08-04 Javier Miranda <miranda@adacore.com>
381
382 * bindgen.adb (Gen_Adafinal_Ada): Do not differentiate the main case
383 and the library case for VM targets.
384 (Gen_Adainit_Ada): Likewise.
385
3862011-08-04 Robert Dewar <dewar@adacore.com>
387
388 * g-altive.ads: Minor comment updates.
389 * prj-nmsc.adb: Minor reformatting.
390
3912011-08-04 Javier Miranda <miranda@adacore.com>
392
393 * opt.ads
394 (Normalize_Scalars_Config): Value of the configuration switch set by
395 pragma Normalize_Scalars when it appears in the gnat.adc file.
396 (Normalize_Scalars): New field for record Config_Switches_Type. Used
397 to save and restore settings of this pragma.
398 * opt.adb
399 (Register_Opt_Config_Switches, Save_Opt_Config_Switches,
400 Restore_Opt_Config_Switches): Add missing support for Normalize_Scalars.
401
4022011-08-04 Vincent Celier <celier@adacore.com>
403
404 * gnat_ugn.texi: Document gnatlink options -M and -M=mapfile
405
0c4683cf
AC
4062011-08-04 Arnaud Charlet <charlet@adacore.com>
407
408 * makeutl.adb: Minor reformatting.
409
4102011-08-04 Olivier Hainque <hainque@adacore.com>
411
412 * g-altive.ads: Update comments to reflect that only the soft
413 binding is available today.
414
2598ee6d
RD
4152011-08-04 Robert Dewar <dewar@adacore.com>
416
417 * bindgen.adb, einfo.adb, sem_ch12.adb, s-tasren.adb, sem_res.adb,
418 makeutl.adb, prj-nmsc.adb, opt.ads, prj-env.adb: Minor reformatting
419 * gcc-interface/Make-lang.in: Update dependencies.
420
c2db4b32
AC
4212011-08-04 Arnaud Charlet <charlet@adacore.com>
422
423 * prj-env.adb: Remove local debug traces.
424
4252011-08-04 Yannick Moy <moy@adacore.com>
426
427 * checks.adb (Apply_Float_Conversion_Check): correct a typo where Lo_OK
428 was used instead of Hi_OK, which could cause a read of an uninitialized
429 value later on. Detected while working on the new warning.
430 * exp_ch9.adb (Expand_N_Entry_Declaration): remove useless assignment
431 to local variable.
432 * sem_ch5.adb (Analyze_Assignment): set the last assignment component
433 in more cases, in order to detect more unreferenced values.
434 * sem_util.adb, sem_util.ads (Get_Enclosing_Object): return enclosing
435 object for expression, if any.
436
4372011-08-04 Eric Botcazou <ebotcazou@adacore.com>
438
439 * exp_intr.adb (Expand_Binary_Operator_Call): Look at the RM size of
440 the operand types instead of the Esize.
441
4422011-08-04 Steve Baird <baird@adacore.com>
443
444 * switch-b.adb (Scan_Binder_Switches): Add -P binder switch, used to
445 enable CodePeer_Mode.
446 * bindusg.adb (Display): Add help message describing -P binder switch.
447 * gnat_ugn.texi: Document -P binder switch.
448 * bindgen.adb (Gen_Main_Ada): If CodePeer_Mode is set, then call the
449 user-defined main program directly.
450 (Gen_Output_File_Ada): If CodePeer_Mode is set, generate a with of the
451 user-defined main program in the context clause of the package body.
452
ad05f2e9
AC
4532011-08-04 Yannick Moy <moy@adacore.com>
454
455 * alfa.adb, alfa.ads (Get_Entity_For_Decl): remove function, partial
456 duplicate of Defining_Entity
457 (Get_Unique_Entity_For_Decl): rename function into
458 Unique_Defining_Entity
459 * einfo.adb, einfo.ads (Is_In_ALFA, Body_Is_In_ALFA): remove flags
460 (Formal_Proof_On): remove synthesized flag
461 * cstand.adb, sem_ch11.adb, sem_ch2.adb, sem_ch3.adb, sem_ch4.adb,
462 sem_ch5.adb, sem_ch6.adb, sem_ch9.adb, sem_res.adb, sem_util.adb,
463 sem_util.ads, stand.ads: Remove treatment associated to entities in ALFA
464 * sem_prag.adb (Analyze_Pragma): remove special treatment for pragma
465 Annotate (Formal_Proof)
466
4672011-08-04 Emmanuel Briot <briot@adacore.com>
468
469 * prj-env.adb (Create_Config_Pragmas_File): fix handling of multi-unit
470 source files with non-standard naming schemes, in imported projects
471
756ef2a0
AC
4722011-08-04 Emmanuel Briot <briot@adacore.com>
473
474 * makeutl.adb (Complete_Mains): when a multi-unit source file is
475 specified on the gprbuild command line, we need to compile all units
476 within that file, not just the first one we find
477 Fix error message for mains that are not found.
478
4792011-08-04 Thomas Quinot <quinot@adacore.com>
480
481 * sem_ch6.adb: Update comment.
482 * sem_ch12.adb: Minor reformatting.
483
4842011-08-04 Bob Duff <duff@adacore.com>
485
486 * s-tasren.adb (Task_Do_Or_Queue): Previous code was reading
487 Acceptor.Terminate_Alternative without locking Acceptor, which causes a
488 race condition whose symptom is to fail to lock Parent. That, in turn,
489 causes Parent.Awake_Count to be accessed without locking Parent, which
490 causes another race condition whose symptom is that Parent.Awake_Count
491 can be off by 1 (either too high or too low). The solution is to lock
492 Parent unconditionally, and then lock Acceptor, before reading
493 Acceptor.Terminate_Alternative.
494
4fdebd93
AC
4952011-08-04 Arnaud Charlet <charlet@adacore.com>
496
497 * debug.adb: Update comment.
498
4992011-08-04 Robert Dewar <dewar@adacore.com>
500
501 * par_sco.adb, exp_util.adb, make.adb, a-tags.adb, sem_prag.adb,
502 sem_util.adb, sem_attr.adb, exp_ch4.adb, g-comlin.adb, g-comlin.ads,
503 exp_ch6.adb: Minor reformatting.
504
5052011-08-04 Gary Dismukes <dismukes@adacore.com>
506
507 * gnat_ugn.texi: Add sentence about the case of compile-time-detected
508 checks for -gnateE.
509
5102011-08-04 Ed Schonberg <schonberg@adacore.com>
511
512 * gnat_rm.texi: update Ravenscar desription to reflect Ada2012 RM.
513
5142011-08-04 Thomas Quinot <quinot@adacore.com>
515
516 * sinfo.ads: Minor reformatting.
517
5182011-08-04 Emmanuel Briot <briot@adacore.com>
519
520 * makeutl.adb, makeutl.ads, prj-nmsc.adb (Complete_Mains): report error
521 even if there is no location.
522
6aaa0587
ES
5232011-08-04 Ed Schonberg <schonberg@adacore.com>
524
525 * sem_res.adb, sem_ch4.adb: move check for restriction
526 No_Task_Hierarchy to resolve_allocator.
527
35a1c212
AC
5282011-08-04 Thomas Quinot <quinot@adacore.com>
529
530 * sinfo.adb, sinfo.ads, sem_prag.adb, sem_ch12.adb (Pragma_Enabled):
531 This flag of N_Pragma nodes is not used, remove it as well as all of
532 the associated circuitry.
533
5342011-08-04 Javier Miranda <miranda@adacore.com>
535
536 * exp_disp.adb (Make_DT): Switch -gnatdQ disables the generation of the
537 runtime check on duplicated externa tags
538 * debug.adb Document switch -gnatdQ.
539
5402011-08-04 Gary Dismukes <dismukes@adacore.com>
541
542 * a-fihema.ads: Minor typo fix.
543
5442011-08-04 Yannick Moy <moy@adacore.com>
545
546 * sem_ch10.adb: Minor comment update.
547
5482011-08-04 Hristian Kirtchev <kirtchev@adacore.com>
549
550 * einfo.adb: Update the node field usage to reflect the renaming of
551 Return_Flag to Return_ Flag_Or_Transient_Decl.
552 (Return_Flag): Renamed to Return_Flag_Or_Transient_Decl.
553 (Set_Return_Flag): Renamed to Set_Return_Flag_Or_Transient_Decl.
554 (Write_Field15_Name): Change Return_Flag to
555 Return_Flag_Or_Transient_Decl.
556 * einfo.ads: Rename node field Return_Flag to
557 Return_Flag_Or_Transient_Decl. Update the associated comment and all
558 occurrences in entities.
559 (Return_Flag): Renamed to Return_Flag_Or_Transient_Decl. Update
560 associated Inline pragma.
561 (Set_Return_Flag): Renamed to Set_Return_Flag_Or_Transient_Decl. Update
562 associated Inline pragma.
563 * exp_ch4.ads, exp_ch4.adb (Expand_N_Expression_With_Actions): New
564 routine.
565 * exp_ch6.adb (Expand_N_Extended_Return_Statement): Update the calls to
566 Return_Flag and Set_Return_Flag.
567 * exp_ch7.adb (Process_Declarations): Add code to recognize hook
568 objects generated for controlled transients declared inside an
569 Exception_With_Actions. Update the calls to Return_Flag.
570 (Process_Object_Declaration): Add code to add a null guard for hook
571 objects generated for controlled transients declared inside an
572 Exception_With_Actions. Update related comment.
573 * exp_util.adb (Has_Controlled_Objects): Add code to recognize hook
574 objects generated for controlled transients declared inside an
575 Exception_With_Actions. Update the calls to Return_Flag.
576 * expander.adb (Expand): Add new case for N_Expression_With_Actions.
577
5782011-08-04 Ed Schonberg <schonberg@adacore.com>
579
580 * sem_util.adb:(Wrong_Type): Improve error message on a one-element
581 positional aggregate.
582
5832011-08-04 Vincent Celier <celier@adacore.com>
584
585 * par_sco.adb (Process_Decisions.Output_Header): Check and record pragma
586 SLOC only for pragmas.
587
5882011-08-04 Emmanuel Briot <briot@adacore.com>
589
590 * projects.texi: Minor typo fix.
591
5922011-08-04 Emmanuel Briot <briot@adacore.com>
593
594 * prj-nmsc.adb (Check_File): Minor change to traces, to help debugging
595 on case-sensitive file systems.
596
c2873f74
TQ
5972011-08-04 Thomas Quinot <quinot@adacore.com>
598
599 * put_scos.adb (Put_SCOs): Do not emit decision SCO for an X decision
600 nested in a disabled pragma.
601 * scos.ads, scos.adb, par_sco.ads, par_sco.adb: Record sloc of
602 enclosing pragma, if any, for X decisions.
603
6042011-08-04 Thomas Quinot <quinot@adacore.com>
605
606 * sem_prag.adb: Minor reformatting.
607
46414266
VC
6082011-08-04 Vincent Celier <celier@adacore.com>
609
610 * a-tags.adb (Check_TSD): Avoid concatenation of strings, as it is not
611 allowed in no run time mode.
612
6132011-08-04 Vincent Celier <celier@adacore.com>
614
615 * make.adb (Check): When -gnatc is used, check for the source file
616 inside the ALI file with a canonical case file name.
617
afab164f
EB
6182011-08-04 Emmanuel Briot <briot@adacore.com>
619
620 * g-comlin.adb, g-comlin.ads (Add_Switch): Put back support for
621 overriding the separator.
622
fe0ec02f
AC
6232011-08-04 Robert Dewar <dewar@adacore.com>
624
625 * sem_aggr.adb, par_sco.adb, sem_type.adb, exp_util.adb, exp_ch9.adb,
626 prj-nmsc.adb, sem_ch13.adb, exp_strm.adb: Minor reformatting.
627
6282011-08-04 Robert Dewar <dewar@adacore.com>
629
630 * gnat_rm.texi: Minor documentation fix for pragma Annotate.
631
6322011-08-04 Yannick Moy <moy@adacore.com>
633
634 * sem_attr.adb (Analyze_Attribute): add check during pre-analysis that
635 'Result only appears in postcondition of function.
636
6372011-08-04 Thomas Quinot <quinot@adacore.com>
638
639 * a-tags.adb (Check_TSD): When raising PROGRAM_ERROR for a duplicated
640 external tag, include the value of the external tag in the exception
641 message.
642
0180fd26
AC
6432011-08-04 Yannick Moy <moy@adacore.com>
644
645 * sem_attr.adb (Result): modify error message for misplaced 'Result
646
6472011-08-04 Sergey Rybin <rybin@adacore.com>
648
649 * gnat_rm.texi (pragma Annotate): Fix syntax description to make it
650 clear that the second argument must be an identifier.
651
6522011-08-04 Thomas Quinot <quinot@adacore.com>
653
654 * exp_ch9.adb (Build_Barrier_Function): When compiling with
655 -fpreserve-control-flow, insert an IF statement on the barrier
656 condition to ensure that a conditional branch instruction is generated.
657
6582011-08-04 Emmanuel Briot <briot@adacore.com>
659
660 * prj-part.adb, prj.adb, prj.ads, prj-tree.ads
661 (Processing_Flags.Ignore_Missing_With): new flag.
662
6632011-08-04 Emmanuel Briot <briot@adacore.com>
664
665 * prj-nmsc.adb (Find_Sources, Path_Name_Of): Fix handling of
666 Source_List_File on case-insensitive systems where the file is actually
667 on a case-sensitive file system (NFS,...).
668
6692011-08-04 Hristian Kirtchev <kirtchev@adacore.com>
670
671 * sem_ch6.adb (Analyze_Function_Return): In a rare case where a
672 function return contains a controlled [extension] aggregate and the
673 return statement is not part of a handled sequence of statements, wrap
674 the return in a block. This ensures that all controlled temporaries
675 generated during aggregate resolution will be picked up by the
676 finalization machinery.
677
6782011-08-04 Ed Schonberg <schonberg@adacore.com>
679
680 * sem_aggr.adb (Resolve_Aggregate): If aggregate has box-initialized
681 components, freeze type before resolution, to ensure that default
682 initializations are present for all components.
683 * sem_res.adb (Resolve_Actuals): the designated object of an
684 accces-to-constant type is a legal actual in a call to an
685 initialization procedure.
686
6872011-08-04 Hristian Kirtchev <kirtchev@adacore.com>
688
689 * exp_util.adb (Extract_Renamed_Object): Add N_Type_Conversion and
690 N_Unchecked_Type_Conversion to the possible containers of a renamed
691 transient variable.
692
78efd712
AC
6932011-08-04 Yannick Moy <moy@adacore.com>
694
695 * par-ch13.adb (Aspect_Specifications_Present): recognize
696 "with Identifier'Class =>" as an aspect, so that a meaningful warning
697 is issued in Strict mode.
698 * par.adb: Fix typos in comments.
699
7002011-08-04 Yannick Moy <moy@adacore.com>
701
702 * sem_attr.adb (Result): modify error message to take into account Post
703 aspect when compiling Ada 2012 (or newer) code.
704
7052011-08-04 Nicolas Roche <roche@adacore.com>
706
707 * env.c (__gnat_clearenv): Avoid use of dynamic size array in order to
708 remove need for GCC exceptions.
709
7102011-08-04 Vincent Celier <celier@adacore.com>
711
712 * makeutl.adb (Do_Complete): Call Debug_Output with the name of the
713 project, not the source file name.
714 * prj.adb (Find_Sources.Look_For_Sources): If the source has been
715 excluded, continue looking. This excluded source will only be returned
716 if there is no other source with the same base name that is not locally
717 removed.
718
7192011-08-04 Ed Schonberg <schonberg@adacore.com>
720
721 * sem_res.adb (Resolve_Intrinsic_Operator): if the result type is
722 private and one of the operands is a real literal, use a qualified
723 expression rather than a conversion which is not meaningful to the
724 back-end.
725
0170a691
AC
7262011-08-04 Yannick Moy <moy@adacore.com>
727
728 * sem_ch13.adb (Aspect_Loop): when an aspect X and its classwise
729 corresponding aspect X'Class are allowed, proceed with analysis of the
730 aspect instead of skipping it.
731
7322011-08-04 Tristan Gingold <gingold@adacore.com>
733
734 * s-flocon.adb, s-flocon.ads: Add a body for s-flocon.ads
735 This will allow to have an Ada implementation for the subprogram.
736
deb4f5ba
ES
7372011-08-04 Ed Schonberg <schonberg@adacore.com>
738
739 * sem_ch3.adb (Analyze_Full_Type_Declaration): If the declaration is a
740 completion and aspects are present, apply them to the entity for the
741 type which is currently the partial view, but which is the one that
742 will be frozen.
743 * sem_ch13.adb (Analyze_Aspect_Specifications): if the predicate
744 applies to a partial view, indicate that the full view has predicates
745 and delayed aspects.
746 (Replace_Type_Reference): Handle properly predicates that apply to the
747 full view of a private completion.
748
fc893455
AC
7492011-08-04 Eric Botcazou <ebotcazou@adacore.com>
750
751 * layout.adb (Layout_Type): For composite types, do not set Esize.
752 * freeze.adb (Set_Small_Size): Remove test on alignment and do not
753 set Esize.
754 (Size_Known): Look at the RM size of components instead of the Esize.
755 (Freeze_Record_Type): Look at the RM size instead of the Esize to
756 issue warning and activate Implicit_Packing.
757 (Freeze_Entity): Likewise. Do not issue a warning for alias/atomic
758 if the Esize is not known.
759 * sem_ch13.adb (Analyze_Attribute_Definition_Clause) <Size>: Set Esize
760 for elementary types only.
761 (Analyze_Record_Representation_Clause): Look at the RM size instead
762 of the Esize to issue errors.
763 * gcc-interface/decl.c (gnat_to_gnu_entity): Do not set Esize if it
764 is not known.
765 <E_Record_Type>: Look at the RM size instead of the Esize. Remove
766 obsolete block.
767 Look at the RM size instead of the Esize for types if the latter is
768 not known.
769 (gnat_to_gnu_field): Use Known_Esize instead of Known_Static_Esize.
770
7712011-08-04 Ed Schonberg <schonberg@adacore.com>
772
773 * sem_type.adb: proper handling of equality not involving anonymous
774 access types.
775
b37d5bc6
AC
7762011-08-04 Hristian Kirtchev <kirtchev@adacore.com>
777
778 * exp_ch7.adb (Create_Finalizer): Remove local variables Spec_Nod and
779 Vis_Decls. When creating a library-level finalizer for a package spec,
780 both the declaration and body of the finalizer are inserted either in
781 the visible or private declarations of the package spec.
782
7832011-08-04 Javier Miranda <miranda@adacore.com>
784
785 * sem_ch3.adb (Derive_Subprograms): Complete assertion to request the
786 use of the full-view of a type when invoking Is_Ancestor.
787 * sem_type.adb (Is_Ancestor): For consistency, when the traversal of
788 the full-view of private parents is requested, then use also the
789 full-view of the parent of the first derivation.
790
7ab4d95a
AC
7912011-08-04 Tristan Gingold <gingold@adacore.com>
792
793 * s-taprop-vxworks.adb (Enter_Task): Use System.Float_Control.Reset
794 instead of the locally imported procedure.
795 * s-taprop-mingw.adb (Enter_Task): Ditto.
796 * s-valrea.adb (Scan_Real): Ditto.
797 * s-imgrea.adb (Set_Image_Real): Ditto.
798 * s-flocon.ads: Make the package pure.
799
8002011-08-04 Thomas Quinot <quinot@adacore.com>
801
802 * sinfo.ads, sinfo.adb (Debug_Statement, Set_Debug_Statement): Remove.
803 * tbuild.ads, tbuild.adb (Make_Pragma): Adjust accordingly.
804 * sinfo-cn.ads, sinfo-cn.adb (Change_Name_To_Procedure_Call_Statement):
805 New subprogram, moved here from...
806 * par.adb, par-ch5.adb (P_Statement_Name): ... here.
807 * par-prag.adb (Par.Prag, case Pragma_Debug): Do not perform any
808 rewriting of the last argument into a procedure call statement here...
809 * sem_prag.adb (Analyze_Pragma, case Pragma_Debug): ...do it there
810 instead.
811
8122011-08-04 Thomas Quinot <quinot@adacore.com>
813
814 * par_sco.adb: Minor reformatting.
815
51c400f5
AC
8162011-08-04 Robert Dewar <dewar@adacore.com>
817
818 * erroutc.adb: Minor reformatting.
819
8202011-08-04 Thomas Quinot <quinot@adacore.com>
821
822 * par_sco.adb: Comment update.
823
8242011-08-04 Tristan Gingold <gingold@adacore.com>
825
826 * s-flocon.ads: New file.
827 * g-flocon.ads: Now a renaming of s-flocon.
828 * Makefile.rtl: Add s-flocon.o
829
6a49f110
AC
8302011-08-04 Javier Miranda <miranda@adacore.com>
831
832 * exp_strm.adb (Build_Array_Input_Function): if the array type is
833 constrained, do not attempt to build a subtype of it.
834
8352011-08-04 Yannick Moy <moy@adacore.com>
836
837 * errout.ads Change comments: remove 'R'M as an example where quotes
838 are needed; add ALFA as another case where quotes are not needed
839 * erroutc.adb (Set_Msg_Insertion_Reserved_Word): add ALFA as another
840 case where quotes are not needed.
841 * sem_ch11.adb, sem_ch13.adb, sem_ch2.adb, sem_ch3.adb, sem_ch4.adb,
842 sem_ch5.adb, sem_ch6.adb, sem_ch9.adb, sem_prag.adb, sem_res.adb:
843 Remove all occurrences of 'A'L'F'A
844
8452011-08-04 Ed Schonberg <schonberg@adacore.com>
846
847 * sem_ch13.adb: check legality of invariant pragma.
848
a4640a39
AC
8492011-08-04 Eric Botcazou <ebotcazou@adacore.com>
850
851 * bindgen.adb: Add comments.
852
8532011-08-04 Yannick Moy <moy@adacore.com>
854
855 * einfo.adb, einfo.ads: Free Flag254 and make Formal_Proof_On a
856 synthesized flag.
857 * sem_prag.adb (Analyze_Pragma): record the pragma Annotate
858 (Formal_Proof, On/Off) in the Rep_Item list of the current subprogram.
859
8602011-08-04 Robert Dewar <dewar@adacore.com>
861
862 * exp_ch7.adb, exp_ch6.adb, sem_ch3.adb, layout.adb, sem_ch5.adb,
863 osint-c.ads, sem_util.ads, gnat1drv.adb, targparm.ads, sem_ch6.adb,
864 sem_ch13.adb, s-pooloc.adb: Minor reformatting.
865
39ade2f9
AC
8662011-08-04 Thomas Quinot <quinot@adacore.com>
867
868 * s-pooloc.ads, s-pooglo.ads: Minor reformatting
869
8702011-08-04 Thomas Quinot <quinot@adacore.com>
871
872 PR ada/47880
873 * s-pooloc.adb (Deallocate): Fix the case of deallocating the only
874 allocated object.
875
8762011-08-04 Robert Dewar <dewar@adacore.com>
877
878 * einfo.ads, exp_ch4.adb: Minor reformatting.
879
8802011-08-04 Jerome Lambourg <lambourg@adacore.com>
881
882 * back_end.ads (Gen_Or_Update_Object_File): Add more comments.
883
7efc3f2d
AC
8842011-08-04 Ed Schonberg <schonberg@adacore.com>
885
886 * exp_ch4.adb (Expand_Composite_Equality): code cleanup: use component
887 type in all cases to compute list of primitive operations, because full
888 view may be an itype that is not attached to the list of declarations.
889
8902011-08-04 Eric Botcazou <ebotcazou@adacore.com>
891
892 * bindgen.adb (Gen_Adafinal_Ada): Generate an early return if the
893 library has already been finalized.
894 (Gen_Adafinal_C): Likewise.
895 (Gen_Adainit_Ada): Generate an early return if the library has
896 already been elaborated.
897 (Gen_Adainit_C): Likewise.
898 (Gen_Output_File_Ada): Generate an elaboration flag.
899 (Gen_Output_File_C): Likewise.
900
f65df609
HK
9012011-08-04 Hristian Kirtchev <kirtchev@adacore.com>
902
903 * exp_ch4.adb (Expand_Allocator_Expression): Disable the generation of
904 Set_Finalize_Address_Ptr for CodePeer because Finalize_Address was not
905 built in the first place.
906 (Expand_N_Allocator): Disable the generation of Set_Finalize_Address_Ptr
907 for CodePeer because Finalize_Address was not built to begin with.
908 * exp_ch6.adb (Make_Build_In_Place_Call_In_Allocator): Ditto.
909
a0fb8fe8
AC
9102011-08-04 Pascal Obry <obry@adacore.com>
911
912 * adaint.c (__gnat_tmp_name): Use current process id to create temp
913 filenames, this ensures unicity of filenames across processes.
914
9152011-08-04 Hristian Kirtchev <kirtchev@adacore.com>
916
917 * bindgen.adb (Gen_Finalize_Library_Ada): Rename generated routine
918 Raise_Controlled to Raise_From_Controlled_Operation. Update the
919 signature of Raise_From_Controlled_Operation by adding flag From_Abort.
920 Add False as the actual to From_Abort in the generated call to
921 Raise_From_Controlled_Operation.
922
9232011-08-04 Jerome Lambourg <lambourg@adacore.com>
924
925 * osint-c.ads, osint-c.adb (Set_Library_Info_Name): Move to declaration
926 so that the ali file name can be retrieved from outside of this package.
927 * back_end.ads, back_end.adb (Gen_Or_Update_Object_File): New method
928 doing nothing in the general case, but used to update the object file
929 timestamp if directly generated by the backend.
930 * gnat1drv.adb (Gnat1drv): Make sure the object file's timestamp is set
931 to a later time than the ali file one.
932
9534ab17
AC
9332011-08-04 Yannick Moy <moy@adacore.com>
934
935 * einfo.adb, einfo.ads (Formal_Proof_On): new flag set on subprogram
936 entities whose body contains an Annotate pragma which forces formal
937 proof on this body.
938 * sem_ch11.adb, sem_ch2.adb, sem_ch3.adb, sem_ch4.adb, sem_ch5.adb,
939 sem_ch6.adb, sem_ch9.adb, sem_res.adb: Adapt call to
940 Mark_Non_ALFA_Subprogram to pass in a message and node.
941 * sem_prag.adb (Analyze_Pragma): add treatment of pragma Annotate
942 (Forma_Proof, On) which sets the flag Formal_Proof_On in the
943 surrounding subprogram.
944 * sem_util.adb, sem_util.ads (Mark_Non_ALFA_Subprogram,
945 Mark_Non_ALFA_Subprogram_Unconditional): if the subprogram being marked
946 as not in ALFA is annotated with Formal_Proof being On, then an error
947 is issued based on the additional parameters for message and node.
948 * snames.ads-tmpl (Name_Formal_Proof): new name for annotation.
949 * gcc-interface/Make-lang.in: Update dependencies.
950
9512011-08-04 Hristian Kirtchev <kirtchev@adacore.com>
952
953 * exp_ch3.adb (Expand_Freeze_Class_Wide_Type): Do not generate
954 Finalize_Address when CodePeer is enabled.
955
9562011-08-04 Pascal Obry <obry@adacore.com>
957
958 * adaint.c (__gnat_tmp_name): Use _tempnam() instead of tempnam() as
959 the latter returns a pointer to a static buffer which is deallocated
960 at the end of the routine.
961
5c0e97dd
AC
9622011-08-04 Yannick Moy <moy@adacore.com>
963
964 * sem_ch3.adb (Array_Type_Declaration): move test for type in ALFA
965 after index creation; mark unconstrained base array type generated as
966 being in/not in ALFA as well
967 (Make_Index): mark subtype created as in/not in ALFA
968 * sem_ch5.adb (Analyze_Iteration_Scheme): mark entity for iterating
969 over a loop as in/not in ALFA, depending on its type and form of loop
970 iteration.
971
9722011-08-04 Hristian Kirtchev <kirtchev@adacore.com>
973
974 * exp_ch7.adb (Build_Object_Declarations): Initialize flag Abort
975 directly to False on .NET and JVM.
976
7a93c64b
YM
9772011-08-04 Yannick Moy <moy@adacore.com>
978
979 * sem_ch3.adb (Constrain_Enumeration, Constrain_Integer): remove
980 constraint that subtype must come from source code to be in ALFA, so
981 that anonymous subtypes can be in ALFA too.
982
e9a1ed9b
YM
9832011-08-04 Yannick Moy <moy@adacore.com>
984
985 * sem_ch3.adb (Analyze_Object_Declaration): remove obsolete addition of
986 reference for ALFA mode.
987 * lib-xref-alfa.adb, lib-xref.ads (Traverse_Compilation_Unit): make
988 procedure public so as to use it from formal verification back-end.
989
8e293fbd
AC
9902011-08-04 Jerome Lambourg <lambourg@adacore.com>
991
992 * g-comlin.adb (For_Each_Simple_Switch.Is_In_Config): Remove the
993 invalid checks of the Parameter, making Remove_Switch not working
994 correctly.
995
9962011-08-04 Arnaud Charlet <charlet@adacore.com>
997
998 * targparm.ads: Update header: no run-time exception is needed on this
999 file.
1000
10012011-08-04 Vincent Celier <celier@adacore.com>
1002
1003 * a-fihema.adb: Use System.IO instead of GNAT.IO
1004
10052011-08-04 Thomas Quinot <quinot@adacore.com>
1006
1007 * sem_ch3.adb (Access_Definition): Anonymous access to subprogram types
1008 are forbidden in Compiler_Unit mode.
1009
cfae2bed
AC
10102011-08-04 Robert Dewar <dewar@adacore.com>
1011
1012 * sem_util.adb: Minor reformatting.
1013
10142011-08-04 Hristian Kirtchev <kirtchev@adacore.com>
1015
1016 * bindgen.adb (Gen_Finalize_Library_Ada): Update the import string for
1017 library-level finalizers.
1018 (Gen_Finalize_Library_C): Update the import string for library-level
1019 finalizers.
1020 (Gen_Finalize_Library_Defs_C): Update the definition name of a
1021 library-level finalizer.
1022 * exp_ch7.adb: Remove with and use clauses for Stringt.
1023 (Create_Finalizer): Remove local variables Conv_Name, Prag_Decl,
1024 Spec_Decl. Add local variable Body_Id. The names of library-level
1025 finalizers are now manually fully qualified and are no longer external.
1026 A single name is now capable of servicing .NET, JVM and non-VM targets.
1027 Pragma Export is no longer required to provide visibility for the name.
1028 (Create_Finalizer_String): Removed.
1029 (New_Finalizer_Name): New routine which mimics New_..._Name.
1030
01f0729a
AC
10312011-08-04 Eric Botcazou <ebotcazou@adacore.com>
1032
1033 * sem_elab.adb (Check_Internal_Call_Continue): Change the type of the
1034 elaboration counter to Standard_Short_Integer.
1035 * sem_util.adb (Build_Elaboration_Entity): Likewise.
1036 * bindgen.adb (Gen_Elab_Externals_Ada): Adjust to above change.
1037 (Gen_Elab_Externals_C): Likewise.
1038
10392011-08-04 Ed Falis <falis@adacore.com>
1040
1041 * system-vxworks-arm.ads, system-vxworks-sparcv9.ads,
1042 system-vxworks-ppc.ads, system-vxworks-m68k.ads,
1043 system-vxworks-mips.ads, system-vxworks-x86.ads
1044 (Always_Compatible_Rep): set to False for all VxWorks targets.
1045
2c1b72d7
AC
10462011-08-04 Robert Dewar <dewar@adacore.com>
1047
1048 * par_sco.adb, prj-proc.adb, make.adb, bindgen.adb, prj.adb, prj.ads,
1049 makeutl.adb, makeutl.ads, prj-nmsc.adb, exp_ch5.adb, exp_ch12.adb,
1050 exp_ch7.ads, exp_util.ads, sem_util.ads, g-comlin.ads, exp_ch6.adb,
1051 exp_ch6.ads, lib-xref.ads, exp_ch7.adb, exp_util.adb, exp_dist.adb,
1052 exp_strm.adb, gnatcmd.adb, freeze.adb, g-comlin.adb, lib-xref-alfa.adb,
1053 sem_attr.adb, sem_prag.adb, sem_util.adb, sem_elab.adb, sem_ch8.adb,
1054 sem_ch11.adb, sem_eval.adb, sem_ch13.adb, sem_disp.adb, a-fihema.adb:
1055 Minor reformatting and code reorganization.
1056
10572011-08-04 Emmanuel Briot <briot@adacore.com>
1058
1059 * projects.texi: Added doc for aggregate projects.
1060
824e9320
AC
10612011-08-04 Emmanuel Briot <briot@adacore.com>
1062
1063 * prj-proc.adb, prj-nmsc.adb, prj-env.adb (Process_Declarative_Items):
1064 Add support for overriding the Project_Path in aggregate projects.
1065
10662011-08-04 Robert Dewar <dewar@adacore.com>
1067
1068 * a-cofove.ads: Minor reformatting.
1069
10702011-08-04 Hristian Kirtchev <kirtchev@adacore.com>
1071
1072 * exp_ch7.adb (Build_Adjust_Or_Finalize_Statements): Update the comment
1073 on the generated code.
1074 (Build_Finalize_Statements): Update the comment on the generated code.
1075 (Build_Initialize_Statements): Update the comment on the generated code.
1076 (Build_Object_Declarations): Add local variable Result. The object
1077 declarations are now built in sequence.
1078 * rtsfind.ads: Add RE_Exception_Occurrence_Access to tables RE_Id and
1079 RE_Unit_Table.
1080
10812011-08-04 Robert Dewar <dewar@adacore.com>
1082
1083 * checks.adb, alfa.adb, alfa.ads: Minor reformatting.
1084
10852011-08-04 Eric Botcazou <ebotcazou@adacore.com>
1086
1087 * einfo.ads (Elaboration_Entity): Document new definition and use.
1088 (Elaboration_Entity_Required): Adjust to above change.
1089 * exp_attr.adb (Expand_N_Attribute_Reference): Likewise.
1090 * exp_ch12.adb: And with and use for Snames.
1091 (Expand_N_Generic_Instantiation): Test 'Elaborated attribute.
1092 * exp_util.adb (Set_Elaboration_Flag): Likewise.
1093 * sem_attr.adb (Analyze_Attribute) <Check_Library_Unit>: Delete.
1094 <Check_Unit_Name>: Deal with N_Expanded_Name.
1095 <Attribute_Elaborated>: Extend to all unit names.
1096 * sem_elab.adb: And with and use for Uintp.
1097 (Check_Internal_Call_Continue): Adjust to Elaboration_Entity change.
1098 * sem_util.ads (Build_Elaboration_Entity): Adjust comment.
1099 * sem_util.adb (Build_Elaboration_Entity): Change type to Integer.
1100 * bindgen.adb (Gen_Elab_Externals_Ada): New local subprogram taken
1101 from Gen_Adainit_Ada.
1102 (Gen_Elab_Externals_C): Likewise, but taken from Gen_Adainit_C.
1103 (Gen_Adafinal_Ada): Remove redundant test. In the non-main program
1104 case, do not call System.Standard_Library.Adafinal; instead call
1105 finalize_library if needed.
1106 (Gen_Adafinal_C): Likewise.
1107 (Gen_Adainit_Ada): Do not set SSL.Finalize_Library_Objects in the
1108 non-main program case.
1109 (Gen_Adainit_C): Generate a couple of external declarations here.
1110 In the main program case, set SSL.Finalize_Library_Objects.
1111 (Gen_Elab_Calls_Ada): Adjust to Elaboration_Entity change.
1112 (Gen_Elab_Calls_C): Likewise.
1113 (Gen_Finalize_Library_Ada): Likewise. Skip SAL interface units.
1114 (Gen_Finalize_Library_C): Likewise. Generate a full function.
1115 (Gen_Main_C): Put back call to Ada_Final and don't finalize library
1116 objects here.
1117 (Gen_Output_File_Ada): Generate pragma Linker_Destructor for Ada_Final
1118 if -a is specified. Call Gen_Elab_Externals_Ada. Move around call to
1119 Gen_Adafinal_Ada.
1120 (Gen_Output_File_C): Generate __attribute__((destructor)) for Ada_Final
1121 if -a is specified. Call Gen_Elab_Externals_C. Remove useless couple
1122