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