]> gcc.gnu.org Git - gcc.git/blame - gcc/ada/ChangeLog
[multiple changes]
[gcc.git] / gcc / ada / ChangeLog
CommitLineData
23c4ff9b
AC
12009-07-13 Emmanuel Briot <briot@adacore.com>
2
3 * prj-env.adb (Create_Config_Pragmas_File): Iterate on sources rather
4 than units.
5
62009-07-13 Thomas Quinot <quinot@adacore.com>
7
8 * sem_ch3.adb (Process_Full_View): Propagate Has_Specified_Stream_{Read,
9 Write,Input,Output} from private view to full view.
10
11 * sem_type.adb, sem_type.ads: Minor reformatting
12
132009-07-13 Nicolas Setton <setton@adacore.com>
14
15 * exp_dbug.ads: Add documentation note on the utility of
16 DW_AT_GNAT_encoding for IDEs.
17
182009-07-13 Robert Dewar <dewar@adacore.com>
19
20 * g-socthi-vxworks.adb: Minor reformatting
21
22 * gnatcmd.adb: Minor reformatting
23
72a3d7c7
AC
242009-07-13 Thomas Quinot <quinot@adacore.com>
25
26 * rtsfind.ads, exp_dist.adb (RE_Allocate_Buffer): Runtime entry
27 removed, not used anymore.
28 (Exp_Dist.PolyORB_Support.Helpers.Assign_Opaque_From_Any):
29 New subprogram, implements copy of an Any value into a limited object.
30 (Exp_Dist.PolyORB_Support.Build_General_Calling_Stubs,
31 Exp_Dist.PolyORB_Support.Build_Subprogram_Receiving_Stubs,
32 Exp_Dist.PolyORB_Support.Helpers.Build_From_Any_Function): For the case
33 of parameters of a limited type, use the above new subprogram.
34
352009-07-13 Emmanuel Briot <briot@adacore.com>
36
37 * prj-nmsc.adb, prj-proc.adb, mlib.adb (Add_Source): new parameter
38 Location.
39 (Copy_ALI_Files): Avoid calls to read when pointing outside of the
40 allocated space.
41 (Error_Report): Remove global variable, replaced by parameters.
42
223eab97
AC
432009-07-13 Thomas Quinot <quinot@adacore.com>
44
45 * g-socthi-vxworks.adb (C_Sendto): VxWorks does not support the
46 standard sendto(2) interface for connected sockets (passing a null
47 destination address). Use send(2) instead for that case.
48
492009-07-13 Pascal Obry <obry@adacore.com>
50
51 * adaint.c: Fix __gnat_stat() with Win32 UNC paths.
52
fdd7e7bb
EB
532009-07-13 Emmanuel Briot <briot@adacore.com>
54
55 * prj-proc.adb, prj-proc.ads, prj.ads, prj-nmsc.adb, prj-nmsc.ads,
56 prj-pars.adb, prj-conf.adb, prj-conf.ads: Remove all remaining global
57 variables and tables in prj-nmsc.adb.
58 (Tree_Processing_Data): Renames Processing_Data, some new fields added
59 (Project_Processing_Data): New record
60 Simplify/unify check for missing sources.
61
fc2c32e2
EB
622009-07-13 Emmanuel Briot <briot@adacore.com>
63
64 * gnatcmd.adb, make.adb, mlib-prj.adb, prj-part.adb, mlib.adb,
65 prj.adb, prj.ads, clean.adb, prj-nmsc.adb, prj-nmsc.ads, prj-pars.adb,
66 prj-pars.ads, prj-conf.adb, prj-conf.ads, prj-tree.adb,
67 prj-tree.ads (Immediate_Directory_Of): Removed.
68 (Prj.Pars): Now parse the project simulating a default config file.
69 (Add_Default_GNAT_Naming_Scheme): New subprogram
70 (Check_Naming_Multi_Lang): Fix default value for Dot_Replacement.
71 Remove gnatmake-specific parsing of source files.
72 (Check_Illegal_Suffix): Renames Is_Illegal_Suffix, since it now raises
73 the error itself to provide more precise diagnostics.
74 (Process_Exceptions_Unit_Based): Avoid duplicate error message when
75 a unit belongs to several projects.
76 (Copy_Interface_Sources): Search the full path of files to copy in the
77 list of sources of the application rather than in the list of units.
78 (Parse_Project_And_Apply_Config): Do not reset the name of the main
79 project file.
80 (Check_File): Use htables to find out whether a source is duplicated.
81 (Add_Source): check whether the source or unit were already seen earlier
82
83 * gcc-interface/Makefile.in: Update gnatmake dependencies.
84
1629f700
RD
852009-07-13 Robert Dewar <dewar@adacore.com>
86
87 * par-ch3.adb (P_Discrete_Choice_List): Choice can only be simple
88 expression if extensions permitted.
89
90 * par-ch4.adb (P_Membership_Test): New procedure (implement membership
91 set tests).
92 (P_Relation): Use P_Membership_Test
93
94 * par.adb (P_Membership_Test): New procedure (implement membership set
95 tests).
96
97 * sinfo.ads, sinfo.adb (N_In, N_Not_In) Add Alternatives field for sets.
98
99 * sprint.adb (Sprint_Node): Handle set form for membership tests.
100
c6f39437
AC
1012009-07-13 Thomas Quinot <quinot@adacore.com>
102
103 * exp_dist.adb (Add_RACW_Primitive_Declarations_And_Bodies):
104 Do not attempt to generate stubs for predefined primitives of
105 synchronized interfaces.
106 (Add_Stub_Type): Factor some code from the PCS-specific variants of
107 Build_Stub_Type.
108
1092009-07-13 Ed Schonberg <schonberg@adacore.com>
110
111 * sem_disp.adb (Override_Dispatching_Operation): Functions inherit the
112 Controlling_Result flag from the operation they override.
113
d97a04d0
AC
1142009-07-13 Arnaud Charlet <charlet@adacore.com>
115
116 * gcc-interface/Make-lang.in: Update dependencies
117
01957849
AC
1182009-07-13 Robert Dewar <dewar@adacore.com>
119
120 * gnat_ugn.texi: The gnatf switch no longer is needed to get full
121 details on unsupported constructs.
122
123 * rtsfind.adb: Remove references to All_Errors_Mode, give errors
124 unconditionally.
125
126 * s-trafor-default.adb: Correct some warnings
127
128 * s-valwch.adb, a-calend.adb, freeze.adb, prj.ads, s-vmexta.adb,
129 sem.adb, sem_ch10.adb, sem_ch6.adb, sem_disp.adb, vxaddr2line.adb:
130 Minor reformatting.
131
132 * par-ch4.adb (Conditional_Expression): Capture proper location for
133 conditional expression, should point to IF.
134
135 * s-tassta.adb, a-wtdeau.adb, s-tasren.adb, s-arit64.adb, s-imgdec.adb,
136 s-direio.adb, s-tpobop.adb, g-socket.adb, s-tposen.adb, s-taskin.adb,
137 g-calend.adb, s-regpat.adb, s-scaval.adb, g-catiio.adb: Minor code
138 reorganization (use conditional expressions).
139
1402009-07-13 Ed Schonberg <schonberg@adacore.com>
141
142 * exp_util.adb (Remove_Side_Effects): If the expression is a call to a
143 build-in-place function that returns an inherently limited type (not
144 just a task type) create proper object declaration so that extra
145 build-in-place actuals are properly added to the call.
146
79afa047
AC
1472009-07-13 Robert Dewar <dewar@adacore.com>
148
149 * freeze.adb (Freeze_Entity): Implement Warn_On_Suspicious_Modulus_Value
150
151 * gnat_ugn.texi: Add documentation for -gnatw.m/.M
152
153 * opt.ads (Warn_On_Suspicious_Modulus_Value): New flag
154
155 * sem_warn.adb (Set_Dot_Warning_Flag): Set/reset
156 Warn_On_Suspicious_Modulus_Value.
157
158 * ug_words: Add entries for -gnatw.m/-gnatw.M.
159
160 * usage.adb: Add lines for -gnatw.m/.M switches.
161
162 * vms_data.ads: Add [NO]SUSPICIOUS_MODULUS for -gnatw.m/w.M
163
1642009-07-13 Javier Miranda <miranda@adacore.com>
165
166 * sem_ch6.adb (Check_Synchronized_Overriding): Add missing check before
167 reading the Is_Interface attribute of the dispatching type.
168
1692009-07-13 Robert Dewar <dewar@adacore.com>
170
171 * a-convec.adb: Minor code reorganization (use conditional expressions)
172
67b3acf8
RD
1732009-07-13 Robert Dewar <dewar@adacore.com>
174
175 * freeze.adb (Check_Suspicious_Modulus): New procedure.
176
cfb120b5
AC
1772009-07-13 Robert Dewar <dewar@adacore.com>
178
179 * i-cobol.ads: Minor code fix (2**4 instead of 16 as modulus to avoid
180 warning).
181
182 * par-ch4.adb: Minor reformatting
183
1842009-07-13 Ed Schonberg <schonberg@adacore.com>
185
186 * freeze.adb, freeze.ads, exp_aggr.adb: Rename Expand_Atomic_Aggregate
187 => Is_Atomic_Aggregate
188
fb2e11ee
AC
1892009-07-13 Emmanuel Briot <briot@adacore.com>
190
191 * prj-nmsc.adb: Avoid traversing the list of source files if
192 we have already processed all locally removed files.
193
1942009-07-13 Jose Ruiz <ruiz@adacore.com>
195
196 * gnat_ugn.texi: Fix typo.
197
1982009-07-13 Robert Dewar <dewar@adacore.com>
199
200 * freeze.adb: Minor reformatting
201 Minor code reorganization (use Nkind_In)
202
01e17342 203 * exp_ch6.adb, prj.adb, sem_res.adb: Minor reformatting
fb2e11ee 204
f4cd2542
EB
2052009-07-11 Eric Botcazou <ebotcazou@adacore.com>
206
207 * checks.adb (Apply_Address_Clause_Check): Remove Size_Warning_Output
208 local variable and do not test it in Compile_Time_Bad_Alignment.
209 Do not issue size or alignment warnings for the X'Address form.
210 * sem_util.ads (Find_Overlaid_Object): Delete.
211 (Find_Overlaid_Entity): New procedure.
212 * sem_util.adb (Find_Overlaid_Object): Rename to...
213 (Find_Overlaid_Entity): ...this and turn into a procedure. Report
214 whether the address is offseted within the overlaid entity.
215 (Has_Compatible_Alignment): Track the offset globally instead of
216 passing it to Check_Offset. For an indexed component, compute the
217 full offset when possible. If the resulting offset is zero, only
218 check the prefix.
219 (Check_Offset): Delete.
220 * sem_ch13.adb (Address_Clause_Check_Record): Add Off field.
221 (Address_Aliased_Entity): Delete.
222 (Analyze_Attribute_Definition_Clause) <Attribute_Address>: Call
223 Find_Overlaid_Entity to find the overlaid entity and the offset.
224 Adjust throughout for above change.
225 (Validate_Address_Clauses): Always use attributes of entities, not of
226 their type. Tweak message for warning. Call Has_Compatible_Alignment
227 if the address is offseted to warn about incompatible alignments.
228 * gcc-interface/gigi.h (annotate_object): Declare.
229 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Annotate renaming
230 entity. Call annotate_object instead of annotating manually objects.
231 (annotate_object): New function.
232 * gcc-interface/trans.c (Subprogram_Body_to_gnu): Annotate parameters
233 at the end.
234
7635b357
EB
2352009-07-11 Eric Botcazou <ebotcazou@adacore.com>
236
237 * gcc-interface/ada-tree.h: Minor reorganization.
238 * gcc-interface/misc.c (gnat_print_decl): Minor tweaks.
239 (gnat_print_type): Likewise.
240
b0159fbe
AC
2412009-07-11 Thomas Quinot <quinot@adacore.com>
242
243 * sem_util.adb, sem_res.adb, sem_warn.adb: Minor comment editing:
244 Lvalue -> lvalue
245
246 * exp_ch6.adb: Minor reformatting
247
2482009-07-11 Ed Schonberg <schonberg@adacore.com>
249
250 * freeze.adb (Expand_Atomic_Aggregate): Clean up code, take into
251 account possible type qualification to determine whether aggregate
252 needs a target temporary to respect atomic type or object.
253
254 * exp_aggr.adb (Expand_Record_Aggregate): Use new version of
255 Expand_Atomic_Aggregate.
256
2572009-07-11 Emmanuel Briot <briot@adacore.com>
258
259 * prj.adb, prj.ads, prj-nmsc.adb (Mark_Excluded_Sources): Speed up
260 algorithm.
261 (Excluded_Sources_Htable): No longer a global table.
262 Change error message to indicate which files are illegal in the list
263 of excluded files, as opposed to only the location in the project
264 file.
265 (Find_Source): New subprogram.
266
811c6a85
AC
2672009-07-10 Thomas Quinot <quinot@adacore.com>
268
269 * exp_ch7.adb: Update comments.
270
2712009-07-10 Arnaud Charlet <charlet@adacore.com>
272
273 * exp_ch13.adb (Expand_N_Record_Representation_Clause): Ignore mod
274 clause if -gnatI is set instead of crashing.
275
2762009-07-10 Ed Schonberg <schonberg@adacore.com>
277
278 * sem_ch11.adb (Same_Expression): Null is always equal to itself.
279 Additional work to remove redundant successive raise statements, in
280 this case access checks.
281
2822009-07-10 Vincent Celier <celier@adacore.com>
283
284 * make.adb (Compile): Always create a deep copy of the mapping file
285 argument (-gnatem=...) as it may be deallocate/reallocate by
286 Normalize_Arguments.
287
2882009-07-10 Javier Miranda <miranda@adacore.com>
289
290 * einfo.adb (Directly_Designated_Type): Add assertion.
291
292 * sem_res.adb (Check_Fully_Declared_Prefix): Add missing check on
293 access types before using attribute Directly_Designated_Type.
294
2952009-07-10 Emmanuel Briot <briot@adacore.com>
296
297 * prj.ads: Minor typo fix
298
2992009-07-10 Ed Schonberg <schonberg@adacore.com>
300
301 * sem_ch6.adb (Add_Extra_Formal): Protected operations do no need
302 special treatment.
303
304 * exp_ch6.adb (Expand_Protected_Subprogram_Call): If rewritten
305 subprogram is a function call, resolve properly, to ensure that extra
306 actuals are added as needed.
307
2be0bff8
TQ
3082009-07-10 Thomas Quinot <quinot@adacore.com>
309
310 * sem_aggr.adb: Minor comments editing
311
312 * exp_tss.adb, exp_ch3.adb: Minor reformatting
313
ac7120ce
RD
3142009-07-10 Robert Dewar <dewar@adacore.com>
315
316 * exp_util.adb: Minor code reorganization (use N_Short_Circuit)
317
318 * exp_ch4.adb: Add ??? comment for conditional expressions on limited
319 types.
320
321 * checks.adb (In_Declarative_Region_Of_Subprogram_Body): New procedure,
322 replaces Safe_To_Capture_In_Parameter_Value, and properly handles the
323 case of conditional expressions that may not be elaborated.
324
325 * sem_util.adb (Safe_To_Capture_Value): Properly handle case of
326 conditional expression where we may not execute then then or else
327 branches.
328
514d0fc5
AC
3292009-07-10 Arnaud Charlet <charlet@adacore.com>
330
331 * i-cexten.ads (bool): New type.
332
3332009-07-10 Robert Dewar <dewar@adacore.com>
334
335 * sinfo.ads (N_Short_Circuit): New definition
336
337 * sem_ch13.adb, sem_ch6.adb, sem_eval.adb, sem_res.adb,
338 treepr.adb: Minor code reorganization (use N_Short_Circuit)
339
7b4db06c
JM
3402009-07-10 Javier Miranda <miranda@adacore.com>
341
342 * exp_ch3.adb (Expand_Freeze_Record_Type): Handle constructors of
343 non-tagged record types.
344
345 * sem_prag.adb
346 (Process_Import_Or_Interface): Allow the use of "pragma Import (CPP,..)"
347 with non-tagged types. Required to import C++ classes that have no
348 virtual primitives.
349 (Analyze_Pragma): For pragma CPP_Constructor. Allow the use of functions
350 returning non-tagged types. For backward compatibility, if the
351 constructor returns a class wide type we internally change the
352 returned type to the corresponding non class-wide type.
353
354 * sem_aggr.adb
355 (Valid_Ancestor_Type): CPP_Constructors code cleanup.
356 (Resolve_Extension_Aggregate): CPP_Constructors code cleanup.
357 (Resolve_Aggr_Expr): CPP_Constructors code cleanup.
358 (Resolve_Record_Aggregate): CPP_Constructors code cleanup.
359
360 * sem_ch3.adb
361 (Analyze_Object_Declaration): CPP_Constructors code cleanup.
362
363 * sem_ch5.adb (Analyze_Assignment): CPP_Constructors code cleanup.
364
365 * sem_util.adb (Is_CPP_Constructor_Call): Code cleanup.
366
367 * sem_res.adb (Resolve_Allocator): CPP_Constructors code cleanup.
368
369 * exp_ch4.adb (Expand_Allocator_Expression): CPP_Constructors code
370 cleanup.
371
372 * exp_aggr.adb (Build_Record_Aggr_Code): CPP_Constructors code clean up.
373
374 * gnat_rm.texi
375 (pragma CPP_Class): Document that it can be used now with non-tagged
376 record types.
377 (pragma CPP_Constructor): Document that it can be used now with
378 functions returning specific types. For backward compatibility
379 we also support functions returning class-wide types.
380
381 * gnat_ugn.texi
382 (Interfacing with C++ constructors): Update the examples to incorporate
383 the new syntax in which the functions used to import C++ constructors
384 return specific types.
385 (Interfacing with C++ at the Class Level): Update the examples to
386 incorporate the new syntax in which the functions used to import
387 C++ constructors return specific types.
388
f2abc637
AC
3892009-07-10 Thomas Quinot <quinot@adacore.com>
390
391 * exp_disp.adb (Make_Disp_Asynchronous_Select_Body,
392 Make_Disp_Conditional_Select_Body,
393 Make_Disp_Timed_Select_Body): For the case of a type that is neither an
394 interface nor a concurrent type, the primitive body is empty. Generate
395 a null statement so that it remains well formed.
396
3972009-07-10 Ed Schonberg <schonberg@adacore.com>
398
399 * exp_aggr.adb (Build_Record_Aggr_Code): If the type has discriminants,
400 replace references to them in defaulted component expressions with
401 references to the values of the discriminants of the target object.
402
b603e37b
AC
4032009-07-10 Ed Schonberg <schonberg@adacore.com>
404
405 * sem_prag.adb (Analyze pragma, case Task_Name): Analyze argument of
406 pragma, to capture global references if the context is generic.
407
408 * exp_ch2.adb (Expand_Discriminant): If a task type discriminant
409 appears within the initialization procedure for the corresponding
410 record, replace it with the proper discriminal.
411
4122009-07-10 Vincent Celier <celier@adacore.com>
413
414 * make.adb: Do not include object directories or library ALI
415 directories of library projects in the object path.
416
4172009-07-10 Javier Miranda <miranda@adacore.com>
418
419 * exp_util.adb (Find_Interface_Tag): Reorder processing of incoming
420 Typ argument to ensure proper management of access types.
421
4222009-07-10 Ed Schonberg <schonberg@adacore.com>
423
424 * exp_ch7.adb (Build_Final_List): If the list is being built for a
425 Taft-Amendment type, place the finalization list in the package body,
426 to ensure that the tree for the spec is identical whenever it is
427 compiled.
428
4292009-07-10 Javier Miranda <miranda@adacore.com>
430
431 * sem_ch3.adb (Build_Derived_Record_Type): Use the full-view when
432 inheriting attributes from a private Parent_Base.
433
4342009-07-10 Ed Schonberg <schonberg@adacore.com>
435
436 * sem_ch11.adb (analyze_raise_xxx_error): Remove consecutive raise
437 statements with the same condition.
438
4392009-07-10 Robert Dewar <dewar@adacore.com>
440
441 * exp_ch4.adb (Raise_Accessibility_Error): New procedure
442
a80b0574
TT
4432009-07-09 Tom Tromey <tromey@redhat.com>
444
445 * raise-gcc.c: Include dwarf2h (unconditionally).
446
24da37f2
AC
4472009-07-09 Ed Schonberg <schonberg@adacore.com>
448
449 * sem_ch10.adb (Install_Context): If the unit is a package body,
450 install the private with_clauses of the corresponding package
451 declaration.
452
4532009-07-09 Robert Dewar <dewar@adacore.com>
454
455 * checks.adb: Minor reformatting
456
4572009-07-09 Vasiliy Fofanov <fofanov@adacore.com>
458
459 * ug_words, gnat_ugn.texi: Move VMS equivalents of the last check in
460 into ug_words.
461
4622009-07-09 Thomas Quinot <quinot@adacore.com>
463
464 * sem_ch13.adb (Analyze_Attribute_Definition_Clause, case Address):
465 Do not warn for a constant overlaying any constant object
466
4672009-07-09 Ed Schonberg <schonberg@adacore.com>
468
469 * sem_ch10.adb (Install_Context): If the unit is a package body,
470 install the private with_clauses of the corresponding package
471 declaration.
472
4732009-07-09 Robert Dewar <dewar@adacore.com>
474
475 * checks.adb: Minor reformatting
476
4772009-07-09 Vasiliy Fofanov <fofanov@adacore.com>
478
479 * ug_words, gnat_ugn.texi: Move VMS equivalents of the last check in
480 into ug_words.
481
4822009-07-09 Thomas Quinot <quinot@adacore.com>
483
484 * sem_ch13.adb (Analyze_Attribute_Definition_Clause, case Address):
485 Do not warn for a constant overlaying any constant object
486
d97a04d0 4872009-07-09 Arnaud Charlet <charlet@adacore.com>
24da37f2
AC
488
489 * gcc-interface/Make-lang.in: Update dependencies
490
7a5debc9
AC
4912009-07-09 Thomas Quinot <quinot@adacore.com>
492
493 * g-socket.adb (Check_Selector): Do not create local copies of the
494 socket sets on the stack.
495
4962009-07-09 Vasiliy Fofanov <fofanov@adacore.com>
497
498 * gnat_ugn.texi: Add missing VMS translations.
499
3f92c93b
AC
5002009-07-09 Ed Schonberg <schonberg@adacore.com>
501
502 * sem_prag.adb (Analyze_Pragma, case Precondition): Do not analyze the
503 condition, to prevent generation of visible code during expansion,
504 when Check is not enabled.
505
5062009-07-09 Gary Dismukes <dismukes@adacore.com>
507
508 * checks.adb (Install_Static_Check): Call Possible_Local_Raise so that
509 the check gets registered for any available local handler
510 (Set_Local_Raise).
511
512 * sem_util.adb: Add with and use of Exp_Ch11.
513 (Apply_Compile_Time_Constraint_Error): Call Possible_Local_Raise so
514 that the check gets registered for any available local handler.
515
516 * exp_ch4.adb (Expand_N_Slice): Remove call to Enable_Range_Check
517 on slice ranges.
518
5192009-07-09 Steve Baird <baird@adacore.com>
520
521 * exp_ch11.adb (Force_Static_Allocation_Of_Referenced_Objects): New
522 function.
523 (Expand_N_Exception_Declaration): Fix handling of exceptions
524 declared in a subprogram.
525
f6cf5b85
AC
5262009-07-09 Emmanuel Briot <briot@adacore.com>
527
528 * prj-nmsc.adb (Find_Sources): Avoid error messages from gprbuild from
529 multi-unit files.
530
5312009-07-09 Thomas Quinot <quinot@adacore.com>
532
533 * freeze.adb: Minor reformatting
534
535 * exp_ch3.adb: Minor comment fix.
536
537 * sinfo.ads: Minor comment fix
538
5392009-07-09 Ed Schonberg <schonberg@adacore.com>
540
541 * exp_ch4.adb (Expand_N_Conditional_Expression): Set Related_Expression.
542
7aedb36a
AC
5432009-07-09 Ed Schonberg <schonberg@adacore.com>
544
545 * freeze.adb (Freeze_Expression): If the expression is the name of a
546 function in a call, and the function has not been frozen yet, create
547 extra formals for it to ensure that the proper actuals are created
548 when expanding the call.
549
5502009-07-09 Emmanuel Briot <briot@adacore.com>
551
552 * prj-pp.adb (Print): Fix handling of source index when set on a
553 declaration node.
554
a4941eec
ES
5552009-07-09 Ed Schonberg <schonberg@adacore.com>
556
557 * einfo.ads, einfo.adb: New attribute Related_Expression, used to link
558 a temporary to the source expression whose value it captures.
559
560 * exp_util.adb (Remove_Side_Effects): Set Related_Expression as needed.
561
5e278028
MLI
5622009-07-07 Manuel López-Ibáñez <manu@gcc.gnu.org>
563
a729ce28 564 * gcc-interface/trans.c (gnat_gimplify_expr): Replace EXPR_LOCUS by
5e278028
MLI
565 EXPR_LOCATION.
566
c2369146
AC
5672009-07-07 Gary Dismukes <dismukes@adacore.com>
568
569 * exp_ch6.adb (Expand_Actuals): Call Add_Call_By_Copy_Code for in out
570 parameters when the subtype of the actual is not known to be a subrange
571 of the formal's subtype.
572 (Expand_Call): Generate a range check only in the E_In_parameter case
573 (in out parameter range checks are now handled in Expand_Actuals).
574
575 * exp_ch4.adb (Expand_N_Slice): Restore code that calls
576 Enable_Range_Check.
577
5782009-07-07 Robert Dewar <dewar@adacore.com>
579
580 * a-stwise.adb, a-stzsea.adb, a-strsea.adb: Add comments
581
5822009-07-07 Javier Miranda <miranda@adacore.com>
583
584 * exp_disp.adb (Expand_Interface_Conversion): Handle access type whose
585 designated type comes from a limited views.
586
5872009-07-07 Emmanuel Briot <briot@adacore.com>
588
589 * prj.ads, prj-nmsc.adb (Mark_Excluded_Sources): Fix handling of
590 locally removed files that are later made visible again in an importing
591 project.
592
5932009-07-07 Robert Dewar <dewar@adacore.com>
594
595 * gnat_rm.texi: Clarify documentation of Stream_Convert pragma
596
5972009-07-07 Sergey Rybin <rybin@adacore.com>
598
599 * gnat_ugn.texi: Add an example to the description of gnatcheck
600 'Style_Checks' rule option.
601
6022009-07-07 Tristan Gingold <gingold@adacore.com>
603
604 * seh_init.c: Fix inline assembly statement in seh_init.c
605
6062009-07-07 Ed Schonberg <schonberg@adacore.com>
607
608 * sem_warn.adb (Check_References): Do not emit warnings on formals of
609 an entry body. Only the formals of the entry declaration are traced.
610
75a5a487
RD
6112009-07-07 Robert Dewar <dewar@adacore.com>
612
a729ce28 613 * s-osprim-mingw.adb: Minor code reorganization
75a5a487 614
85686ad9
AC
6152009-07-07 Robert Dewar <dewar@adacore.com>
616
617 * prj-nmsc.adb: Minor reformatting
618
6192009-07-07 Pascal Obry <obry@adacore.com>
620
621 * a-stwise.adb, a-stzsea.adb, a-strsea.adb (Index): properly handle
622 cases where Pattern is longer than Source.
623
6242009-07-07 Pascal Obry <obry@adacore.com>
625
626 * s-osprim-mingw.adb (Get_Base_Time): Avoid infinite loop.
627
54ecb428
AC
6282009-07-07 Emmanuel Briot <briot@adacore.com>
629
630 * prj-nmsc.adb (Process_Naming): canonicalize file suffixes read in the
631 project file.
632
6332009-07-07 Ed Schonberg <schonberg@adacore.com>
634
635 * exp_ch3.adb (Expand_Freeze_Record_Type): Add extra formals to
636 primitive operations, in case one of them is called in the
637 initialization procedure for the type.
638
84157c9a
RD
6392009-07-07 Robert Dewar <dewar@adacore.com>
640
641 * a-calend.adb: Minor code reorganization (use conditional expressions)
642
643 * s-stusta.ads, s-interr-hwint.adb, g-expect-vms.adb, s-secsta.ads,
644 prj-nmsc.adb, a-teioed.adb, output.ads, prj-attr.ads, a-textio.adb,
645 s-taskin.ads, scans.ads, s-osinte-vms.adb, s-taprop-solaris.adb,
646 s-tpopsp-posix-foreign.adb, s-trafor-default.adb, gnat1drv.adb,
647 s-stchop-vxworks.adb, s-tpopsp-posix.adb, prj-env.adb, prj-env.ads,
648 g-comlin.adb, exp_ch11.adb: Minor reformatting.
649
d79e621a
GD
6502009-07-07 Gary Dismukes <dismukes@adacore.com>
651
652 * checks.adb (Generate_Range_Check): Replace type conversions with
653 unchecked conversions to support the case of performing range checks
654 on Enum'Val (permits integer values to be converted to enumeration).
655
656 * exp_attr.adb (Expand_N_Attribute_Reference, cases Attribute_Pred,
657 Attribute_Succ): Set Do_Range_Check to False before calling
658 Expand_Pred_Succ, to prevent gigi from generating any range checks.
659 (Expand_N_Attribute_Reference, case Attribute_Val):
660 Generate a range check when needed (and set Do_Range_Check to False).
661
662 * exp_ch3.adb (Expand_N_Object_Declaration): Generate a range check on
663 scalar object initialization if needed.
664
665 * exp_ch4.adb (Expand_Allocator_Expression): Generate range checks
666 when needed on scalar allocators.
667 (Expand_N_Qualified_Expression): Generate range check when needed.
668 (Expand_N_Slice): Remove call to Enable_Range_Check on slice ranges.
669 Checks on slice ranges handled in Resolve_Slice.
670
671 * exp_ch5.adb (Expand_N_Assignment_Statement): Generate a range check,
672 when needed, for all scalar assignments, not just discrete.
673 (Expand_Simple_Function_Return): Resolve the conversion created for a
674 scalar function return so that the conversion will get expanded to
675 generate a possible constraint check.
676
677 * exp_ch6.adb (Expand_Actuals): Call Add_Call_By_Copy_Code for out and
678 in out scalar actuals when subtypes don't match, to ensure generation
679 of return checks (and set Do_Range_Check to False).
680 (Expand_Call): Uncomment code to perform range checks, but make it apply
681 only to in and in out parameters (checks on parameter returns are
682 handled in Expand_Actuals). If a scalar actual for a call to a derived
683 subprogram is marked as needing a range check, peform it here (and set
684 Do_Range_Check to False).
685
686 * sem_aggr.adb (Resolve_*_Aggregate.Resolve_Aggr_Expr): Generate a
687 range check on scalar component associations when needed.
688
689 * sem_eval.adb (In_Subrange_Of): Return False when the first type has
690 infinities but the second type does not, as these aren't compatible
691 floating-point types.
692
693 * sem_res.adb (Resolve_Slice): In the case where the prefix of the
694 slice is itself a slice, pick up the Etype of the prefix. This handles
695 the case where the prefix was an Image attribute expanded to a slice,
696 and ensures that we get the subtype with the slice constraint rather
697 than the unconstrained subbtype of the 'Image.
698
e0ba1bfd
ES
6992009-07-07 Ed Schonberg <schonberg@adacore.com>
700
701 * sem_ch4.adb (Analyze_Conditional_Expression): handle properly
702 overloaded expressions in a conditional expressions.
703
704 * sem_res.adb (Resolve): Handle properly overloaded conditional
705 expressions.
706
b46be8a2
RD
7072009-07-07 Robert Dewar <dewar@adacore.com>
708
709 * scng.adb: Minor reformattting
710
711 * par-ch2.adb (Scan_Pragma_Argument_Association): Pragma argument
712 association allows conditional expression without parens.
713
714 * par-ch4.adb (P_Name): Attribute arguments can be conditional
715 expressions without enclosing parentheses, and also as parameters,
716 indexing expressions etc.
717 (P_Conditional_Expression): New procedure
718 (P_Expression_If_OK): New procedure
719
720 * par.adb (P_Conditional_Expression): New procedure
721 (P_Expression_If_OK): New procedure
722
723 * sem_ch4.adb (Analyze_Conditional_Expression): Allow for two argument
724 form of conditional expression.
725
726 * sem_res.adb (Resolve_Conditional_Expression): Deal with supplying
727 missing True argument if ELSE argument missing.
728
729 * sinfo.adb (Is_Elsif): New flag
730
731 * sinfo.ads (N_Conditional_Expression): This node is now a syntactic
732 part of the language, and the documentation is modified accordingly.
733 (Is_Elsif): New flag
734
4fd263a6
OH
7352009-07-06 Olivier Hainque <hainque@adacore.com>
736
737 * gcc-interface/trans.c (Handled_Sequence_Of_Statements_to_gnu,
738 setjmp_longjmp): Attach the exception propagation reraise fallback
739 to the sequence end label location when we have it.
740
d5b7dccd
FXC
7412009-07-04 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
742
743 PR ada/40608
744 * init.c (APPLE): Include <mach/mach_init.h>.
27778058 745 (__gnat_error_handler, APPLE): Add ATTRIBUTE_UNUSED marker.
d5b7dccd 746
9ce8e057
EB
7472009-07-04 Eric Botcazou <ebotcazou@adacore.com>
748
749 * ada-tree.h (SET_TYPE_LANG_SPECIFIC): Rewrite.
750 (SET_DECL_LANG_SPECIFIC): Likewise.
751 (TYPE_RM_VALUE): New macro.
752 (SET_TYPE_RM_VALUE): Likewise.
753 (TYPE_RM_SIZE): Rewrite in terms of TYPE_RM_VALUE.
754 (TYPE_RM_MIN_VALUE): Likewise.
755 (TYPE_RM_MAX_VALUE): Likewise.
756 (SET_TYPE_RM_SIZE): Rewrite in terms of SET_TYPE_RM_VALUE.
757 (SET_TYPE_RM_MIN_VALUE): Likewise.
758 (SET_TYPE_RM_MAX_VALUE): Likewise.
759 * decl.c (gnat_to_gnu_entity) <E_Array_Subtype>: Remove kludge.
760
d8bf0ab8
LG
7612009-07-04 Laurent GUERBY <laurent@guerby.net>
762
763 PR ada/40631
764 * tracebak.c (__gnat_backtrace): Fix old-style definition.
27778058 765
74c9e852
RO
7662009-07-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
767
768 * tracebak.c [i386 && sun] (IS_BAD_PTR): Use -1UL in comparison.
769
882e35a6
JDA
7702009-07-01 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
771
772 PR ada/40609
bf92f919
EB
773 * init.c (__gnat_error_handler, HP-UX): Add ATTRIBUTE_UNUSED marker to
774 ucontext argument.
882e35a6 775
c29fe0c8
EB
7762009-07-01 Eric Botcazou <ebotcazou@adacore.com>
777
778 * init.c (__gnat_error_handler, Solaris): Add ATTRIBUTE_UNUSED marker.
779
342f368c
EB
7802009-06-30 Eric Botcazou <ebotcazou@adacore.com>
781
782 * gcc-interface/utils2.c (build_binary_op) <MODIFY_EXPR>: Do not use
783 the type of the left operand if it pads a self-referential type when
784 the right operand is a constructor.
785
786 * gcc-interface/lang-specs.h: Fix copyright date.
787
f82a627c
EB
7882009-06-30 Eric Botcazou <ebotcazou@adacore.com>
789
790 * gcc-interface/decl.c: Include tree-inline.h.
791 (annotate_value) <CALL_EXPR>: Try to inline the call in the expression.
792 * gcc-interface/utils.c (max_size) <CALL_EXPR>: Likewise.
793 * gcc-interface/utils2.c: Include tree-inline.
794 (known_alignment) <CALL_EXPR>: Likewise.
795
a2350322
EB
7962009-06-30 Eric Botcazou <ebotcazou@adacore.com>
797
b6a1a144 798 * raise-gcc.c: Include dwarf2.h conditionally.
a2350322 799
bbf531f0
TT
8002009-06-29 Tom Tromey <tromey@redhat.com>
801
802 * raise-gcc.c: Include elf/dwarf2.h.
803
6ccbcf32
LG
8042009-06-27 Laurent GUERBY <laurent@guerby.net>
805
806 * tb-gcc.c (trace_callback): Add casts to silence warning.
807
463d9ac4
EB
8082009-06-27 Eric Botcazou <ebotcazou@adacore.com>
809
810 * tb-gcc.c: Fix copyright notice.
811
c6bd4220
EB
8122009-06-27 Eric Botcazou <ebotcazou@adacore.com>
813
814 * init.c (__gnat_set_globals): Add prototype.
815 * adaint.c (__gnat_binder_supports_auto_init): Likewise.
816 (__gnat_sals_init_using_constructors): Likewise.
817 * gcc-interface/utils.c (gnat_pushlevel): Likewise.
818 (get_block_jmpbuf_decl): Likewise.
819 (gnat_poplevel): Likewise.
820 (merge_sizes): Rename local variable.
821 (copy_type): Likewise.
822 (build_vms_descriptor32): Likewise.
823 (build_vms_descriptor): Likewise.
824 (convert_vms_descriptor64): Likewise.
825 (convert_vms_descriptor32): Likewise.
826 (convert_to_fat_pointer): Likewise.
827 (maybe_unconstrained_array): Likewise.
828 (def_fn_type): Use promoted type with va_arg.
829 * gcc-interface/decl.c (gnat_to_gnu_entity): Add declaration.
830 (substitute_in_type): Rename local variable.
831 * gcc-interface/Make-lang.in (ada-warn): Use STRICT_WARN.
832
6bf68a93
LG
8332009-06-26 Laurent GUERBY <laurent@guerby.net>
834
835 * tb-gcc.c (trace_callback): Use char* instead of void*.
91dc2352
EB
836 * gcc-interface/misc.c (enumerate_modes): Make loop C++ compatible.
837 * gcc-interface/trans.c (parm_attr): Rename to parm_attr_d.
838 (Attribute_to_gnu): Adjust for above change.
839 (Subprogram_Body_to_gnu): Likewise.
840 * gcc-interface/utils.c (merge_sizes): Rename local variable.
841 (copy_type): Likewise.
842 (build_vms_descriptor32): Likewise.
843 (build_vms_descriptor): Likewise.
844 (convert_vms_descriptor64): Likewise.
845 (convert_vms_descriptor32): Likewise.
846 (convert_to_fat_pointer): Likewise.
847 (maybe_unconstrained_array): Likewise.
848 * gcc-interface/decl.c (substitute_in_type): Likewise.
849
f45f9664
EB
8502009-06-26 Eric Botcazou <ebotcazou@adacore.com>
851
852 * gcc-interface/decl.c (cannot_be_superflat_p): New predicate.
853 (gnat_to_gnu_entity) <E_Array_Subtype>: Use it to build the expression
854 of the upper bound of the index types.
855
c0e1e108
EB
8562009-06-26 Eric Botcazou <ebotcazou@adacore.com>
857
858 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Subtype>: Factor
859 out common predicate. Use the maximum to compute the upper bound of
860 the index type only when it is not wider than sizetype. Perform the
861 comparison in the index type for the generic expression. Use real
862 precision to decide whether to generate special types for debugging
863 information.
864
ffa5876f
AC
8652009-06-26 Matthew Gingell <gingell@adacore.com>
866
867 * adaint.c: Do not use the dummy version of convert_addresses on LynxOS
868
8692009-06-26 Vincent Celier <celier@adacore.com>
870
871 * prj.ads (No_Language_Config): Value of Dependency_Kind is None by
872 default.
873
8742009-06-26 Robert Dewar <dewar@adacore.com>
875
876 * exp_ch4.adb, gnatcmd.adb, make.adb: Minor reformatting
877
4e6602a8
EB
8782009-06-26 Eric Botcazou <ebotcazou@adacore.com>
879
880 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Pass
881 correct arguments to create_field_decl. Remove redundant iteration.
882 Rewrite computation of the maximum size.
883 <E_Array_Subtype>: Reorder and simplify handling of special cases.
884 Rewrite computation of the maximum size. Use consistent naming.
885 * gcc-interface/trans.c (Attribute_to_gnu) <Attr_Length>: Swap
886 comparison order for consistency. Use generic integer node to
887 build the operator and fold the result.
888
2a31c32b
AC
8892009-06-25 Vincent Celier <celier@adacore.com>
890
891 * vms_data.ads: Minor comment change
892
8932009-06-25 Gary Dismukes <dismukes@adacore.com>
894
895 * exp_ch5.adb (Expand_N_Extended_Return_Statement): Don't build an
896 assignment statement to targeting a caller-provided object when the
897 result type is an interface type.
898
899 * exp_ch6.adb (Expand_Call): Remove redundant test of
900 Is_Limited_Interface (Is_Inherently_Limited is sufficient).
901 (Is_Build_In_Place_Function): Remove test for Is_Limited_Interface.
902
903 * sem_aggr.adb (Check_Expr_OK_In_Limited_Aggregate): Add type in call
904 to OK_For_Limited_Init.
905
906 * sem_aux.adb (Is_Inherently_Limited_Type): Revise limited type
907 condition so that True is returned for all limited interfaces, not
908 just synchronized ones. Ignore components of an interface type when
909 checking for limited components (such a component can be a parent
910 component).
911
912 * sem_ch3.ads (OK_For_Limited_Init_In_05): Add type parameter.
913 (OK_For_Limited_Init): Add type parameter.
914
915 * sem_ch3.adb (Check_Initialization): Add type in call to
916 OK_For_Limited_Init.
917 (OK_For_Limited_Init): Add new type param in call to
918 OK_For_Limited_Init_In_05.
919 (OK_For_Limited_Init_In_05): Permit arbitrary expressions of a
920 nonlimited type when the context type is a limited interface. Add type
921 on recursive calls.
922
923 * sem_ch4.adb (Analyze_Allocator): Add type in call to
924 OK_For_Limited_Init.
925
926 * sem_ch6.adb (Check_Limited_Return): Add type in call to
927 OK_For_Limited_Init.
928
929 * sem_ch12.adb (Analyze_Formal_Object_Declaration): Add type in call to
930 OK_For_Limited_Init.
931 (Instantiate_Object): Add type in call to OK_For_Limited_Init.
932
933 * sem_type.adb (Interface_Present_In_Ancestor): In the case of a
934 class-wide interface, get the base type before applying Etype, in order
935 to account for class-wide subtypes.
936
fadcf313
AC
9372009-06-25 Emmanuel Briot <briot@adacore.com>
938
939 * gnatcmd.adb, prj-proc.adb, make.adb, prj.adb, prj.ads, prj-nmsc.adb,
940 prj-util.adb, prj-env.adb, prj-env.ads: Merge handling of naming_data
941 between gnatmake and gprbuild.
942 (Naming_Data): Removed, no longer used
943 (Naming_Table, Project_Tree_Ref.Namings): Removed, since this is only
944 needed locally in one subprogram, no need to store forever in the
945 structure.
946 (Check_Naming_Scheme, Check_Package_Naming): Merged, since they play
947 a similar role.
948 (Body_Suffix_Of, Body_Suffix_Id_Of, Register_Default_Naming_Scheme,
949 Same_Naming_Scheme, Set_Body_Suffix, Set_Spec_Suffix, Spec_Suffix_Of,
950 Spec_Suffix_Id_Of): removed, no longer used.
951
9522009-06-25 Javier Miranda <miranda@adacore.com>
953
954 * sem_res.adb (Resolve_Allocator): Skip test requiring exact match of
955 types on qualified expression in calls to imported C++ constructors.
956
957 * exp_ch4.adb (Expand_Allocator_Expression): Add missing support for
958 imported C++ constructors.
959
9602009-06-25 Sergey Rybin <rybin@adacore.com>
961
962 * vms_data.ads: Add qualifier for new gnatcheck '-t' option.
963
5b900a45
AC
9642009-06-25 Vincent Celier <celier@adacore.com>
965
966 * s-os_lib.adb (Normalize_Pathname.Get_Directory): If directory
967 provided, on Windows change all '/' to '\'.
968
969 * fmap.ads, fmap.adb (Remove_Forbidden_File_Name): Remove, no longer
970 used. Minor comment changes
971
972 * prj-nmsc.adb: Do not call Fmap.Add_Forbidden_File_Name or
973 Remove_Forbidden_File_Name.
974
9752009-06-25 Quentin Ochem <ochem@adacore.com>
976
977 * prj.ads (Unit_Index): Now general access type.
fadcf313 978
a2b62f99
PO
9792009-06-25 Pascal Obry <obry@adacore.com>
980
981 * a-stwise.adb, a-stzsea.adb: Fix confusion between 'Length and 'Last.
982
1d24fc5e
EB
9832009-06-25 Emmanuel Briot <briot@adacore.com>
984
985 * fmap.ads, make.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb,
986 prj-env.ads (Source_Data.Get_Object): Field removed, since it can be
987 computed efficiently from the other fields.
988 (Object_To_Global_Archive): New subprogram
989 (Create_Mapping): Remove unneeded call to Remove_Forbidden_File_Name.
990 (Override_Kind): Fix handling of separates in Ada.
991 (Create_Mapping_File): Remove duplicate code
992 (Naming_Data.Implementation_Exception, Specification_Exception):
993 field removed, since never used.
994 (Naming_Data.Specs, .Bodies): field removed, since this is only
995 used while processing the project and is not needed once the tree
996 is in memory. This brings Naming_Data and Lang_Naming_Data
997 closer (same content now, but different use still).
998
8f2eeab7
PO
9992009-06-25 Pascal Obry <obry@adacore.com>
1000
1001 * sem_ch4.adb: Minor reformatting.
1002
1003 * a-strsea.adb: Fix confusion between 'Length and 'Last.
1004
bea993f9
AC
10052009-06-25 Ed Schonberg <schonberg@adacore.com>
1006
1007 * exp_attr.adb (Expand_N_Attribute_Reference, case 'Access and
1008 Unchecked_Access): If the context is an interface type, and the prefix
1009 is of the corresponding class-wide type, do not insert a conversion
1010 because the pointer displacement has already taken place, and we must
1011 retain the class-wide type in a dispatching context.
1012
10132009-06-25 Emmanuel Briot <briot@adacore.com>
1014
1015 * prj-nmsc.adb, prj-env.adb (Override_Kind): Unset the unit field of
1016 the previous source file.
1017 (Create_Mapping): Iterate on sources rather than on units.
1018
cabadd1c
AC
10192009-06-25 Emmanuel Briot <briot@adacore.com>
1020
1021 * gnatcmd.adb, make.adb, mlib-prj.adb, prj.adb, prj.ads, prj-nmsc.adb,
1022 prj-env.adb, prj-env.ads (Slash): removed, no longer used
1023 (Source_Data): no longer use Path.Name to point to a locally removed
1024 file. Instead we use the field Locally_Removed which is clearer
1025
10262009-06-25 Arnaud Charlet <charlet@adacore.com>
1027
1028 * gcc-interface/Make-lang.in: Remove references to sem_maps.o
1029
1030 * sem_maps.adb, sem_maps.ads: Removed, not used.
1031
9763f8c8
AC
10322009-06-25 Ed Falis <falis@adacore.com>
1033
1034 * s-vxwext-rtp.ads: Add missing declaration
1035
10362009-06-25 Matthew Gingell <gingell@adacore.com>
1037
1038 * a-stwise.adb, a-stzsea.adb (Count, Index): Avoid local copy on stack,
1039 speed up unmapped case.
1040
10412009-06-25 Vincent Celier <celier@adacore.com>
1042
1043 * prj-nmsc.adb (Check): Change error message for illegal abstract
1044 projects.
1045
10462009-06-25 Robert Dewar <dewar@adacore.com>
1047
1048 * gnat_ugn.texi: Add note on use of -gnatct for ASIS
1049
10502009-06-25 Emmanuel Briot <briot@adacore.com>
1051
1052 * fmap.ads: Add documentation on mapping files
1053
d6533e74
RD
10542009-06-25 Robert Dewar <dewar@adacore.com>
1055
1056 * exp_ch6.adb, g-socket.ads, g-socket.adb, sem_ch3.adb: Minor
1057 reformatting
1058
e1f3cb58
AC
10592009-06-24 Robert Dewar <dewar@adacore.com>
1060
1061 * prj-nmsc.adb, prj-nmsc.ads, prj-proc.adb, prj.adb: Minor reformatting
1062
1063 * a-strsea.adb (Count): Avoid local copy on stack, speed up unmapped
1064 case.
1065 (Index): Ditto.
1066
10672009-06-24 Ed Schonberg <schonberg@adacore.com>
1068
1069 * sem_ch4.adb (Analyze_One_Call): Check that at least one actual is
1070 present when checking whether a call may be interpreted as an indexing
1071 of the result of a call.
1072
1073 * exp_ch9.adb (Expand_N_Subprogram_Declaration): Place the generated
1074 body for a null procedure on the freeze actions for the procedure, so
1075 that it will be analyzed at the proper place without premature freezing
1076 of actuals.
1077
1078 * sem_ch3.adb (Check_Completion): Code cleanup.
1079 Do not diagnose a null procedure without a body, if previous errors
1080 have disabled expansion.
1081
10822009-06-24 Doug Rupp <rupp@adacore.com>
1083
1084 * init.c [VMS] Resignal C$_SIGKILL
1085
10862009-06-24 Ed Falis <falis@adacore.com>
1087
1088 * s-vxwext.adb, s-vxwext-kernel.adb: Add s-vxwext body for VxWorks 5
1089 Define ERROR in body for VxWorks 6 kernel
1090
10912009-06-24 Pascal Obry <obry@adacore.com>
1092
1093 * g-socket.adb, g-socket.ads: Fix possible unexpected constraint error
1094 in [Send/Receive]_Socket.
1095
c9287857
EB
10962009-06-24 Emmanuel Briot <briot@adacore.com>
1097
1098 * prj-proc.adb, prj-proc.ads, prj.ads, prj-nmsc.adb, prj-nmsc.ads,
1099 prj-conf.adb, prj-conf.ads (Allow_Duplicate_Basenames): New parameter
1100 to several subprograms.
1101 (Source_Data.Other_Part): Removed, since can be computed from the
1102 language.
1103 (Other_Part): New subprogram.
1104
2b426674
EB
11052009-06-24 Emmanuel Briot <briot@adacore.com>
1106
1107 * gnat_ugn.texi, prj-nmsc.adb (Suffix_Matches): A suffix can also match
1108 the full base name of the file when the suffix doesn't start with a '.'.
1109
95cd3246
AC
11102009-06-24 Vincent Celier <celier@adacore.com>
1111
1112 * prj-nmsc.adb (Check): A project declared abstract is legal if no
1113 attribute Source_Dirs, Source_Files, Source_List_File or Languages is
1114 declared.
1115
11162009-06-24 Robert Dewar <dewar@adacore.com>
1117
1118 * clean.adb, gnatcmd.adb, make.adb, mlib-prj.adb,
1119 prj-env.adb: Minor reformatting
1120
11212009-06-24 Ed Falis <falis@adacore.com>
1122
1123 * s-taprop-vxworks.adb, s-osinte-vxworks.ads, s-vxwext.ads,
1124 s-vxwext-kernel.adb, s-vxwext-kernel.ads, s-vxwext-rtp.adb,
1125 s-tasinf-vxworks.ads, gcc-interface/Makefile.in: Add processor affinity
1126 support for VxWorks SMP.
1127
1128 * gcc-interface/Make-lang.in: Update dependencies
1129
5a66a766
EB
11302009-06-24 Emmanuel Briot <briot@adacore.com>
1131
1132 * gnatcmd.adb, make.adb, mlib-prj.adb, prj.adb, prj.ads, clean.adb,
1133 prj-nmsc.adb, prj-env.adb, prj-proc.adb (Units_Table): Removed, since
1134 no longer useful.
1135 (Source_Data.Lang_Kind): Removed, since it duplicates information
1136 already available through Language.Config.
1137 (Source_Data.Compile): Removed, since information is already available
1138 through the language.
1139 (Is_Compilable): New subprogram.
1140 (Source_Data.Dependency): Removed, since already available through
1141 the language.
1142 (Source_Data.Object_Exist, Object_Linked): Removed since available
1143 through the language already.
1144 (Unit_Data.File_Names): Is now also set in multi_language mode, to
1145 bring the two modes closer in the resulting data structures.
1146 (Source_Data.Unit): Now a direct pointer to the unit data, rather than
1147 just the name that would point into a hash table.
1148 (Get_Language_From_Name): New subprogram.
1149
852dba80
AC
11502009-06-24 Javier Miranda <miranda@adacore.com>
1151
1152 * exp_ch4.adb (Expand_N_Type_Conversion): Handle entities that are
1153 visible through limited-with context clauses. In addition, avoid an
1154 extra tag check that is not required when the class-wide
1155 designated types of the operand and target types are
1156 the same entity.
1157 (Tagged_Membership): Handle entities from the limited view.
1158
11592009-06-24 Emmanuel Briot <briot@adacore.com>
1160
1161 * gnatcmd.adb, make.adb, mlib-prj.adb, prj.ads, clean.adb,
1162 prj-nmsc.adb, prj-env.adb (File_Name_Data): removed
1163 (Spec_Or_Body): now a subtype of Source_Kind, to avoid using two
1164 different vocabularies for similar concepts (Impl/Body_Part and
1165 Spec/Specification).
1166 (Unit_Data): now points directly to a Source_Id, rather than duplicating
1167 some of the information in File_Name_Data. This also saves a bit of
1168 memory. However, since we are now using a pointer we need to test
1169 for null explicitly in several places of the code
1170
950d217a
AC
11712009-06-24 Javier Miranda <miranda@adacore.com>
1172
1173 * exp_ch4.adb (Expand_N_Type_Conversion): return immediately
1174 from processing the type conversion when the node is
1175 replaced by an N_Raise_Program_Error node.
1176
11772009-06-24 Hristian Kirtchev <kirtchev@adacore.com>
1178
1179 * sem_ch6.adb (Designates_From_With_Type): New routine.
1180 (Process_Formals): Since anonymous access types are no longer flagged
1181 as from with types, traverse the designated type to determine whether
1182 it is coming from a limited view.
1183
1184 * sem_res.adb: Remove with and use clauses for Sem_Ch10.
1185 (Full_Designated_Type): Use Available_View to extract the non-limited /
1186 full view of a type.
1187
dd3e1ff5
AC
11882009-06-24 Robert Dewar <dewar@adacore.com>
1189
1190 * exp_ch6.adb: Minor reformatting
1191
1192 * layout.adb: Minor reformatting
1193
1194 * make.adb: Minor reformatting
1195
11962009-06-24 Thomas Quinot <quinot@adacore.com>
1197
1198 * sem_ch10.adb: Minor code reorganization.
1199
0386aad1
AC
12002009-06-24 Eric Botcazou <ebotcazou@adacore.com>
1201
1202 * ttypes.ads: Minor editing.
1203
12042009-06-24 Robert Dewar <dewar@adacore.com>
1205
1206 * exp_ch6.adb (Expand_Actuals): Use Is_Volatile, not Treat_As_Volatile
1207 in deciding to do call-by-copy code.
1208
12092009-06-24 Vincent Celier <celier@adacore.com>
1210
1211 * make.adb (Gnatmake): To decide if an executable should be rebuilt,
1212 check if an externally built library file is more current than the
1213 executable.
1214
2724e58f
OH
12152009-06-23 Olivier Hainque <hainque@adacore.com>
1216
1217 * gcc-interface/utils.c (handle_vector_size_attribute): Import from
1218 c-common.c and populate in gnat_internal_attribute_table.
1219
14e33999
AC
12202009-06-23 Ed Schonberg <schonberg@adacore.com>
1221
1222 * sem_res.adb (Valid_Conversion, Full_Designated_Type): Use
1223 Available_View only when designated type of an anonymous access type
1224 is limited view.
1225
12262009-06-23 Robert Dewar <dewar@adacore.com>
1227
1228 * sem_ch10.adb: Minor reformatting
1229
792569a9
RD
1230 * ali.ads: Mino reformatting.
1231
14e33999
AC
1232 * gnat1drv.adb (Adjust_Global_Switches): New procedure (take care of
1233 turning off inlining if ASIS mode active).
1234
1235 * switch-c.adb: Remove fiddling with Inspector_Mode and ASIS_Mode
1236 This belongs in gnat1drv.adb after switches are scanned.
1237
c0985d4e
HK
12382009-06-23 Hristian Kirtchev <kirtchev@adacore.com>
1239
1240 * sem_attr.adb: Add with and use clauses for Sem_Ch10.
1241 (Check_Not_Incomplete_Type): Minor reformatting. Retrieve the root type
1242 when dealing with class-wide types. Detect a legal shadow entity and
1243 retrieve its non-limited view.
1244
1245 * sem_ch10.adb (Has_With_Clause): Move the spec and body of the
1246 subprogram to top package level from Intall_Limited_Withed_Unit.
1247 (Install_Limited_Withed_Unit): Remove spec and body of Has_With_Clause.
1248 Add check which prevents the installation of a limited view if the
1249 non-limited view is already visible through a with clause.
1250 (Is_Legal_Shadow_Entity_In_Body): New routine. Detect a residual, but
1251 legal shadow entity which may occur in subprogram formals of anonymous
1252 access type.
1253
1254 * sem_ch10.ads (Is_Legal_Shadow_Entity_In_Body): New routine.
1255
1256 * sem_ch3.adb (Access_Definition): Remove the propagation of flag
1257 From_With_Type from the designated type to the generated anonymous
1258 access type. Remove associated comment.
1259
1260 * sem_res.adb Add with and use clauses for Sem_Ch10.
1261 (Full_Designated_Type): Detect a legal shadow entity and retrieve its
1262 non-limited view. Since the shadow entity may replace a regular
1263 incomplete type, return the available full view.
1264
0d354370
AC
12652009-06-23 Ed Schonberg <schonberg@adacore.com>
1266
1267 * sem_ch10.adb (Remove_Limited_With_Clause): Clean up code that handles
1268 incomplete type declarations. Previous code was potentially quadratic
1269 in the number of visible declarations in any package appearing in a
1270 limited_with_clause.
1271
12722009-06-23 Robert Dewar <dewar@adacore.com>
1273
1274 * prj-conf.ads, prj-part.adb, prj-proc.adb, prj-proc.ads, sem_ch8.adb,
1275 xref_lib.adb: Minor reformatting
1276
85b7d482
RD
12772009-06-23 Robert Dewar <dewar@adacore.com>
1278
1279 * a-stzhas.adb: Provide dummy body to avoid build problems with old
1280 versions which did have a body for this unit.
1281
efc81a89
AC
12822009-06-23 Vincent Celier <celier@adacore.com>
1283
1284 * prj-attr.adb: Attribute names Initial_Required_Switches and
1285 Final_Required_Switches changed to Leading_Required_Switches and
1286 Trailing_Required_Switches.
1287
1288 * prj-nmsc.adb (Process_Compiler): Attribute names
1289 Initial_Required_Switches and Final_Required_Switches changed to
1290 Leading_Required_Switches and Trailing_Required_Switches.
1291
1292 * prj.ads (Language_Config): Component Initial_Required_Switches and
1293 Final_Required_Switches changed to Leading_Required_Switches and
1294 Trailing_Required_Switches.
1295
1296 * snames.ads-tmpl: Remove standard names Initial_Required_Switches and
1297 Final_Required_Switches; add standard names Leading_Required_Switches
1298 and Trailing_Required_Switches.
1299
13002009-06-23 Thomas Quinot <quinot@adacore.com>
1301
1302 * prj-conf.adb: Minor reformatting
1303
1304 * xref_lib.adb: Minor cleanup
1305
1290ef14
AC
13062009-06-23 Emmanuel Briot <briot@adacore.com>
1307
1308 * prj-proc.adb, prj-proc.ads, prj-nmsc.adb, prj-nmsc.ads, prj-conf.adb,
1309 prj-conf.ads (Check_Configuration): New parameter
1310 Compiler_Driver_Mandatory.
1311
13122009-06-23 Ed Schonberg <schonberg@adacore.com>
1313
1314 * sem_ch10.adb (Analyze_With_Clause): If a subprogram instance in the
1315 context of the current unit has an inline pragma, the instance is not
1316 rewritten as the declaration of the package wrapper. Handle both
1317 possibilities when retrieving the visible subprogram that renames the
1318 instantiation itself.
1319
d6a24cdb
AC
13202009-06-23 Javier Miranda <miranda@adacore.com>
1321
1322 * exp_ch4.adb (Displace_Allocator_Pointer, Expand_N_Allocator): Handle
1323 designated types referencing entities from the limited view.
1324
f91c36dc
AC
13252009-06-23 Robert Dewar <dewar@adacore.com>
1326
1327 * s-strhas.adb, s-strhas.ads: Restrict to 32-bit modular types
1328
1329 * s-imgdec.adb (Set_Decimal_Digits): Fix error of too many digits for
1330 small values
1331
1332 * prj-conf.ads: Minor reformatting
1333
1334 * prj-conf.adb: Minor reformatting
1335
13362009-06-23 Vasiliy Fofanov <fofanov@adacore.com>
1337
1338 * g-debpoo.adb (Dump_Gnatmem): Output dummy timestamps for allocations
1339 to correspond to the log format that gnatmem now expects.
1340
13412009-06-23 Vincent Celier <celier@adacore.com>
1342
1343 * prj-attr.adb: New attributes Initial_Required_Switches,
1344 Final_Required_Switches and Object_File_Switches
1345
1346 * prj-nmsc.adb (Process_Compiler): Process new attributes
1347 Name_Final_Required_Switches, Name_Initial_Required_Switches and
1348 Name_Object_File_Switches.
1349
1350 * prj.ads (Language_Config): New component
1351 Compiler_Initial_Required_Switches (replace Compiler_Required_Switches),
1352 Compiler_Final_Required_Switches and Object_File_Switches.
1353
1354 * snames.ads-tmpl: New standard names Initial_Required_Switches,
1355 Final_Required_Switches and Object_File_Switches
1356
35262047
AC
13572009-06-23 Pascal Obry <obry@adacore.com>
1358
1359 * s-strhas.adb, s-strhas.ads: Minor reformatting.
1360
13612009-06-23 Ed Schonberg <schonberg@adacore.com>
1362
1363 * sem_ch10.adb (Install_Limited_Withed_Unit): a null procedure does
1364 not indicate that the enclosing unit needs a body.
1365
abe19d88
EB
13662009-06-23 Emmanuel Briot <briot@adacore.com>
1367
1368 * prj-conf.ads, prj-conf.adb: New files part of the project manager.
1369
af268547
ES
13702009-06-23 Ed Schonberg <schonberg@adacore.com>
1371
1372 * sem_ch3.adb (Derive_Subprogram): If the inherited subprogram is a
1373 primitive equality include it with its source name even if the
1374 operation is currently invisible, to make sure that the corresponding
1375 slot in the dispatch table is reserved for the internal equality
1376 subsequently generated during expansion.
1377
a3e3b8da
MG
13782009-06-23 Matthew Gingell <gingell@adacore.com>
1379
1380 * Makefile.rtl, a-stwiha.adb: Add a-stwiha.adb back.
1381
f61580d4
AC
13822009-06-22 Jose Ruiz <ruiz@adacore.com>
1383
1384 * sysdep.c (__gnat_localtime_tzoff for RTX):
1385 SystemTimeToTzSpecificLocalTime is not supported by RTX. Use
1386 GetTimeZoneInformation instead.
1387
13882009-06-22 Robert Dewar <dewar@adacore.com>
1389
1390 * sem_res.adb (Check_No_Direct_Boolean_Operators): New procedure
1391
13922009-06-22 Ed Schonberg <schonberg@adacore.com>
1393
1394 * sem_ch12.adb (Collect_Previous_Instances): Do not collect
1395 instantiations declared in a previous generic package body.
1396
13972009-06-22 Robert Dewar <dewar@adacore.com>
1398
1399 * gnat_rm.texi: Add doc that X=True and X=False is allowed for the
1400 restriction No_Direct_Boolean_Operators.
1401
14022009-06-22 Thomas Quinot <quinot@adacore.com>
1403
1404 * bindusg.adb: Minor fixes to gnatbind usage message
1405
1406 * sem_eval.adb: Minor reformatting
1407
6823270c
AC
14082009-06-22 Javier Miranda <miranda@adacore.com>
1409
1410 * sem_ch3.adb (Analyze_Object_Declaration, Freeze_Entity): Move to the
1411 freezing point the check on the use of abstract types in object
1412 declarations. Done to allow the declaration of C++ imported variables
1413 or constants whose type corresponds with an imported C++ classes for
1414 which the constructor is not imported.
1415
14162009-06-22 Thomas Quinot <quinot@adacore.com>
1417
1418 * sem_ch6.adb: Minor reformatting
1419
14202009-06-22 Ed Schonberg <schonberg@adacore.com>
1421
1422 * exp_ch3.adb (Build_Initialization_Call): If a discriminated record
1423 component is constrained with an expression rather than with a
1424 discriminant of the enclosing type, use that expression when building
1425 the call to default-initialize the component, when the call is part of
1426 an aggregate with box initialization.
1427
c9e7bd8e
AC
14282009-06-22 Ed Schonberg <schonberg@adacore.com>
1429
1430 * sem_ch6.adb (Check_Overriding_Indicator): Clean up code, make warning
1431 unconditional rather than a style check, because a formal name out of
1432 order is suspicious.
1433
14342009-06-22 Vincent Celier <celier@adacore.com>
1435
1436 * prj-nmsc.adb (Locate_Directory): Indicate the project name when
1437 creating a directory automatically.
1438
14392009-06-22 Eric Botcazou <ebotcazou@adacore.com>
1440
1441 * sem_ch3.adb (Create_Constrained_Components): For a subtype of an
1442 untagged derived type, add a hidden component for every constrained
1443 discriminant of the parent type to keep record layout consistent.
1444
d88a51b1
AC
14452009-06-22 Thomas Quinot <quinot@adacore.com>
1446
1447 * exp_ch3.adb: Minor code reorganization (avoid an unnecessary tree
1448 copy).
1449
14502009-06-22 Matthew Gingell <gingell@adacore.com>
1451
1452 * a-stzhas.adb, a-stwiha.adb, impunit.adb, a-swbwha.adb, a-shcain.adb,
1453 s-htable.adb, a-szuzha.adb, a-stunha.adb, a-stboha.adb, a-strhas.adb,
1454 g-spitbo.adb, s-strhas.adb, a-szbzha.adb, s-strhas.ads, Makefile.rtl,
1455 a-swuwha.adb: New unit System.String_Hash.
1456 Refactor redundant cut and pasted hash functions with instances of a
1457 new generic hash function.
1458 Implement a new string hashing algorithm which appears in testing to
1459 be move effective than to previous approach.
1460
14612009-06-22 Ed Falis <falis@adacore.com>
1462
1463 * sysdep.c: remove include for nfsLib.h and an NFS specific error
1464 message for VxWorks 653 vThreads: not supported by the OS.
1465
1466 * gsocket.h: disable sockets for VxWorks 653 vThreads.
1467
14682009-06-22 Robert Dewar <dewar@adacore.com>
1469
1470 * sem_ch6.adb: Add ??? comment for bad use of Style_Check
1471
e7d72fb9
AC
14722009-06-22 Robert Dewar <dewar@adacore.com>
1473
1474 * sinput.adb, sinput.ads (Expr_First_Char, Expr_Last_Char): Replaced
1475 by Sloc_Range.
1476
1477 * freeze.adb: Minor comment updates
1478
1479 * s-valrea.adb (Bad_Based_Value): New procedure
1480 (Scan_Real): Raise exceptions with messages
1481
14822009-06-22 Matthew Gingell <gingell@adacore.com>
1483
1484 * adaint.h: Complete previous change.
1485
14862009-06-22 Thomas Quinot <quinot@adacore.com>
1487
1488 * exp_ch7.ads, exp_ch3.adb: Minor reformatting
1489
14902009-06-22 Ed Schonberg <schonberg@adacore.com>
1491
1492 * sem_ch6.adb (Check_Overriding_Indicator): When style checks are
1493 enabled, emit warning when a non-controlling argument of the overriding
1494 operation appears out of place vis-a-vis of the formal of the
1495 overridden operation.
1496
03456e44
AC
14972009-06-22 Vincent Celier <celier@adacore.com>
1498
1499 * gnatcmd.adb (Check_Files): Close temporary files after all file names
1500 have been written into it.
1501
15022009-06-22 Matthew Gingell <gingell@adacore.com>
1503
1504 * adaint.c, adaint.h, cstreams.c: Call stat64 on platforms where it is
1505 available.
1506
15072009-06-22 Thomas Quinot <quinot@adacore.com>
1508
1509 * sem_disp.adb (Check_Direct_Call): Handle the case where the full
1510 view of the root type is visible at the point of the call.
1511
15122009-06-22 Pat Rogers <rogers@adacore.com>
1513
1514 * gnat_ugn.texi: Revised a sentence to correct a minor grammar error.
1515
59366db6
JL
15162009-06-22 Jerome Lambourg <lambourg@adacore.com>
1517
1518 * freeze.adb: Add comments.
1519
f3b57ab0
AC
15202009-06-21 Thomas Quinot <quinot@adacore.com>
1521
1522 * exp_ch3.adb, exp_prag.adb, exp_util.adb, exp_util.ads, freeze.adb,
1523 sem_ch13.adb, sem_elab.adb (Exp_Prag.Expand_Pragma_Import_Or_Interface):
1524 Factor out code to new subprogram...
1525 (Exp_Util.Find_Init_Call): New shared routine to find the init proc call
1526 for a default initialized variable.
1527 (Freeze.Check_Address_Clause): Do not reset Has_Delayed_Freeze on an
1528 entity that has an associated freeze node.
1529 (Sem_Ch13.Analyze_Attribute_Definition_Clause, case Address):
1530 If there is an init call for the object, defer it to the object freeze
1531 point.
1532 (Check_Elab_Call.Find_Init_Call): Rename to Check_Init_Call, to avoid
1533 name clash with new subprogram introduced in Exp_Util.
1534
15352009-06-21 Robert Dewar <dewar@adacore.com>
1536
1537 * einfo.ads: Minor reformatting
1538
4f91a255
AC
15392009-06-21 Ed Falis <falis@adacore.com>
1540
1541 * env.c (__gnat_environ): return NULL for vThreads - unimplemented
1542
15432009-06-21 Eric Botcazou <ebotcazou@adacore.com>
1544
1545 * einfo.ads: Update comments.
1546
15472009-06-21 Hristian Kirtchev <kirtchev@adacore.com>
1548
1549 * sem_disp.adb (Check_Direct_Call): New routine. Dispatching calls
1550 where the controlling formal is of private class-wide type whose
1551 completion is a synchronized type can be converted into direct calls.
1552
15532009-06-21 Vincent Celier <celier@adacore.com>
1554
1555 * gnatcmd.adb (Check_Files): When all sources of the project are to be
1556 indicated to gnatcheck, gnatpp or gnatmetric, always specify the list
1557 of sources using -files=, so that the distinction can be made by the
1558 tool of a call with no source (to display the usage) from a call with
1559 a project file that contains no source.
1560
15612009-06-21 Jerome Lambourg <lambourg@adacore.com>
1562
1563 * exp_ch3.adb (Build_Array_Init_Proc): Do not build the init proc in
1564 case of VM convention arrays.
1565
8a45323c
RD
15662009-06-20 Robert Dewar <dewar@adacore.com>
1567
1568 * a-nudira.adb: Minor reformatting
1569
5afaf827
AC
15702009-06-20 Ed Schonberg <schonberg@adacore.com>
1571
1572 * exp_ch3.adb (Build_Record_Init_Proc): When copying initial
1573 expressions (possibly from a parent type) indicate that the scope of
1574 the new itypes is the initialization procedure being built.
1575
15762009-06-20 Robert Dewar <dewar@adacore.com>
1577
1578 * a-nudira.adb (Fits_In_32_Bits): New name (inverted sense) for
1579 Needs_64, and now computed without anomolies for some dynamic types.
1580
15812009-06-20 Thomas Quinot <quinot@adacore.com>
1582
1583 * sem_prag.adb: Minor reformatting
1584
1585 * exp_disp.ads: Minor reformatting
1586
e80d72ea
ES
15872009-06-20 Ed Schonberg <schonberg@adacore.com>
1588
1589 * sem_ch3.adb (Is_OK_For_Limited_Init): An unchecked conversion of a
1590 function call is a legal expression to initialize a limited object.
1591
1592 * exp_ch3.adb: Rename various freeze operations that perform expansion
1593 actions, to prevent confusion with subprograms in the freeze package.
1594
6ca063eb
AC
15952009-06-20 Ed Schonberg <schonberg@adacore.com>
1596
1597 * sem.adb (Walk_Library_Units): Check instantiations first.
1598
1599 * sem_ch6.adb (Analyze_Subprogram_Declaration): Mark a subprogram as a
1600 private primitive if it is a function with a controlling result that is
1601 a type extension with progenitors.
1602
1603 * exp_ch9.adb (Build_Wrapper_Spec, Build_Wrapper_Body): Handle properly
1604 a primitive operation of a synchronized tagged type that has a
1605 controlling result.
1606
16072009-06-20 Thomas Quinot <quinot@adacore.com>
1608
1609 * einfo.ads: Fix typo.
1610
16112009-06-20 Ed Falis <falis@adacore.com>
1612
1613 * s-vxwext.ads, s-vxwext-kernel.adb: Complete previous change.
1614
502c4bb9
EB
16152009-06-19 Eric Botcazou <ebotcazou@adacore.com>
1616
1617 * gcc-interface/trans.c (emit_check): Do not wrap up the result
1618 in a SAVE_EXPR.
1619 (protect_multiple_eval): Always protect complex expressions.
1620
659819b9
AC
16212009-06-19 Emmanuel Briot <briot@adacore.com>
1622
1623 * prj-ext.adb, makeutl.adb, makeutl.ads (Executable_Prefix_Path): Now
1624 make sure we always return a name ending with a path separator.
1625
16262009-06-19 Javier Miranda <miranda@adacore.com>
1627
1628 * sem_ch12.adb (Instantiate_Package_Body, Instantiate_Subprogram_Body):
1629 Save and restore the visibility of the parent when installed.
1630
16312009-06-19 Jose Ruiz <ruiz@adacore.com>
1632
1633 * s-tposen.ads (Protection_Entry): Replace fields L, Ceiling, and Owner
1634 by Common which contains all these fields.
1635
1636 * s-tposen.adb (Initialize_Protection_Entry, Lock_Entry,
1637 Lock_Read_Only_Entry, Timed_Protected_Single_Entry_Call, Unlock_Entry):
1638 Remove code duplication in this package by means of calling the
1639 equivalent code in s-taprob.
1640
16412009-06-19 Robert Dewar <dewar@adacore.com>
1642
1643 * a-einuoc.ads: Minor reformatting
1644
0eed21bd
EF
16452009-06-19 Ed Falis <falis@adacore.com>
1646
1647 * a-einuoc.ads, s-osinte-vxworks.ads, s-vxwext.ads, s-vxwext-kernel.adb,
1648 s-vxwext-kernel.ads, s-vxwext-rtp.ads: Code clean up.
1649
93c3fca7
AC
16502009-06-19 Eric Botcazou <ebotcazou@adacore.com>
1651
1652 * einfo.ads (Handling of Type'Size Values): Fix Object_Size values.
1653
16542009-06-19 Robert Dewar <dewar@adacore.com>
1655
1656 * a-nudira.adb (Need_64): Handle negative ranges and also dynamic
1657 ranges
1658
1659 * checks.adb (Determine_Range): Move the test for generic types later.
1660
1661 * sem_eval.adb (Compile_Time_Compare): Improve circuitry to catch more
1662 cases.
1663 (Eval_Relational_Op): Fold more cases including string compares
1664
1665 * sem_util.ads, sem_util.adb (References_Generic_Formal_Type): New
1666 function.
1667
e29e2483
AC
16682009-06-19 Robert Dewar <dewar@adacore.com>
1669
1670 * sem_type.ads, sem_ch12.adb: Minor reformatting
1671
1672 * s-wchcnv.adb (UTF_32_To_Char_Sequence): Handle invalid data properly
1673
16742009-06-19 Ed Schonberg <schonberg@adacore.com>
1675
1676 * exp_ch9.adb (Build_Wrapper_Spec): Handle properly an overridden
1677 primitive operation of a rivate extension whose controlling argument
1678 is an out parameter.
1679
1680 * sem.adb (Walk_Library_Units): exclude generic package declarations
1681 from check.
1682
f26d5cd3
AC
16832009-06-19 Thomas Quinot <quinot@adacore.com>
1684
1685 * i-vxwoio.ads: Add comments
1686
16872009-06-19 Thomas Quinot <quinot@adacore.com>
1688
1689 * socket.c, g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
1690 g-socthi-vxworks.ads, g-socthi-mingw.adb, g-socthi-mingw.ads,
1691 g-socthi.adb, g-socthi.ads, g-socket.adb, g-sothco.ads
1692 (GNAT.Sockets.Thin.C_Ioctl): Rename to Socket_Ioctl.
1693 (GNAT.Sockets.Thin.Socket_Ioctl): Use new function
1694 Thin_Common.Socket_Ioctl.
1695 (GNAT.Sockets.Thin_Common.Socket_Ioctl): Binding to new C wrapper
1696 __gnat_socket_ioctl.
1697 (__gnat_socket_ioctl): Wrapper for ioctl(2) called with a single int*
1698 argument after the file descriptor and request code.
1699
17002009-06-19 Robert Dewar <dewar@adacore.com>
1701
1702 * checks.adb: Minor reformatting
1703
1abad480
AC
17042009-06-19 Jose Ruiz <ruiz@adacore.com>
1705
1706 * env.c (__gnat_environ): RTX does not support this functionality.
1707
17082009-06-19 Ed Schonberg <schonberg@adacore.com>
1709
1710 * sem.adb (Walk_Library_Items): Include bodies in the list of units to
1711 traverse, to account for front-end inlining and instantiations in a
1712 spec or in the main unit.
1713
17142009-06-19 Robert Dewar <dewar@adacore.com>
1715
1716 * checks.adb (Determine_Range): Do not attempt to get range of generic
1717 type.
1718
c38e990f
SR
17192009-06-19 Sergey Rybin <rybin@adacore.com>
1720
1721 * gnat_ugn.texi, vms_data.ads: Add the documentation for the new
1722 gnatmetric option for generating the schema file for gnatmetric XML
1723 output. Add corresponding VMS qualifier.
1724
1175f0b6
AC
17252009-06-19 Robert Dewar <dewar@adacore.com>
1726
1727 * g-cgi.adb: Minor reformatting
1728
17292009-06-19 Eric Botcazou <ebotcazou@adacore.com>
1730
1731 * s-intman-solaris.adb (Notify_Exception): Do not discriminate on the
1732 signal code for SIGFPE and raise Program_Error for SIGILL.
1733
1734 * s-osinte-solaris.ads: Remove signal code constants for SIGFPE.
1735
17362009-06-19 Ed Schonberg <schonberg@adacore.com>
1737
1738 * sem_ch8.adb (Nvis_Messages): Do not list an entity declared in a
1739 generic package if there is a visibility candidate that is declared in
1740 a regular package.
1741
4c1a9016
OH
17422009-06-18 Olivier Hainque <hainque@adacore.com>
1743
1744 * system-aix64.ads: New file.
1745 * gcc-interface/Makefile.in (aix LIBGNAT_TARGET_PAIRS): Use the
1746 64bit system.ads for ppc64 multilib variants.
1747
d81b4c61
RD
17482009-06-16 Robert Dewar <dewar@adacore.com>
1749 Olivier Hainque <hainque@adacore.com>
1750
1751 Relax constraints on Machine_Attribute argument types:
1752 * sem_prag.adb (Check_Arg_Is_Static_Expression): Allow for
1753 missing type.
1754 (Analyze_Attribute, case Machine_Attribute): Allow any type for arg 3.
1755 * gcc-interface/decl.c (prepend_attributes): Accept static
1756 expressions of any type as attribute arguments, not only string
1757 literals.
1758 * gnat_rm.texi (pragma Machine_Attribute section): Adjust to reflect
1759 the relaxation of the restriction on the Info argument type.
1760
c172df28
AH
17612009-06-13 Aldy Hernandez <aldyh@redhat.com>
1762
1763 * gcc-interface/utils.c (record_builtin_type): Pass location
1764 argument to build_decl.
1765 (create_type_stub_decl): Same.
1766 (create_type_decl): Same.
1767 (create_var_decl_1): Same.
1768 (create_field_decl): Same.
1769 (create_param_decl): Same.
1770 (create_label_decl): Same.
c172df28
AH
1771 (create_subprog_decl): Same.
1772 * gcc-interface/decl.c (gnat_to_gnu_entity): Same.
1773 * gcc-interface/trans.c (Case_Statement_to_gnu): Pass location
1774 argument to create_artificial_label.
c172df28
AH
1775 (Loop_Statement_to_gnu): Same.
1776 (Subprogram_Body_to_gnu): Same.
1777 (gnat_gimplify_stmt): Same.
1778
53b2323e
RH
17792009-06-11 Richard Henderson <rth@redhat.com>
1780
cd19075f
EB
1781 * gcc-interface/misc.c (gnat_handle_option): Rename OPT_gdwarf_ to
1782 OPT_gdwarfplus.
53b2323e 1783
2995ebee
AC
17842009-06-11 Ed Schonberg <schonberg@adacore.com>
1785
1786 * sem_attr.adb (Resolve_Attribute, case 'access): Add missing
1787 accessibiliy check on access_to_subprogram in the context of an
1788 anonymous access that is not an access parameter.
1789
17902009-06-11 Eric Botcazou <ebotcazou@adacore.com>
1791
1792 * tracebak.c (i386 section): Define IS_BAD_PTR on Solaris.
1793
17942009-06-11 Quentin Ochem <ochem@adacore.com>
1795
1796 * sem_warn.adb, scng.adb, sfn_scan.adb, freeze.adb: Add CODEFIX
1797 comments for message handled by GPS.
1798
17992009-06-11 Matthew Gingell <gingell@adacore.com>
1800
1801 * adaint.c: Use fopen64 instead of fopen on platforms where we know
1802 it's supported.
1803
18042009-06-11 Pascal Obry <obry@adacore.com>
1805
1806 * g-cgi.ads: Fix comment typo.
1807
1808 * g-cgi.adb: Properly decode "+" in CGI parameters as spaces.
1809
c244bf8f
EB
18102009-06-10 Eric Botcazou <ebotcazou@adacore.com>
1811
1812 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: Use
1813 a reference to the original type for the type of the field of the
1814 XVS type.
1815 (maybe_pad_type): Likewise.
1816
1817 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: Factor
1818 common predicate and remove redundant setting of TYPE_BY_REFERENCE_P.
1819 Pass correctly typed arguments to create_field_decl.
1820 <E_Record_Subtype>: Set BLKmode for tagged and limited types in the
1821 case of contrained discriminants as well. Use the padded base type
1822 in the other case as well. Rename temporary variable. Tweak test.
1823 Factor common access pattern. Set GNU_SIZE only once.
1824
ff346f70
OH
18252009-06-09 Olivier Hainque <hainque@adacore.com>
1826
1827 * gcc-interface/utils2.c (build_call_alloc_dealloc_proc): New
1828 helper for build_call_alloc_dealloc with arguments to be interpreted
1829 identically. Process the case where a GNAT_PROC to call is provided.
1830 (maybe_wrap_malloc): New helper for build_call_alloc_dealloc, to build
1831 and return an allocator for DATA_SIZE bytes aimed at containing a
1832 DATA_TYPE object, using the default __gnat_malloc allocator. Honor
1833 DATA_TYPE alignments greater than what the latter offers.
1834 (maybe_wrap_free): New helper for build_call_alloc_dealloc, to
1835 release a DATA_TYPE object designated by DATA_PTR using the
1836 __gnat_free entry point.
1837 (build_call_alloc_dealloc): Expect object data type instead of naked
1838 alignment constraint. Use the new helpers.
1839 (build_allocator): Remove special processing for the super-aligned
1840 case, now handled by build_call_alloc_dealloc. Pass data
1841 type instead of the former alignment argument, as expected by the new
1842 interface.
1843 * gcc-interface/gigi.h (build_call_alloc_dealloc): Adjust prototype
1844 and comment.
1845 * gcc-interface/trans.c (gnat_to_gnu) <case N_Free_Statement>:
1846 Remove special processing for the super-aligned case, now handled
1847 by build_call_alloc_dealloc. Pass data type instead of the former
1848 alignment argument, as expected by the new interface.
1849
2153915d
AO
18502009-06-08 Alexandre Oliva <aoliva@redhat.com>
1851
1852 * lib-writ.adb (flag_compare_debug): Import.
1853 (Write_ALI): Skip during -fcompare-debug-second.
1854
cdaa0e0b
EB
18552009-06-03 Eric Botcazou <ebotcazou@adacore.com>
1856
1857 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: When
1858 adjusting the discriminant nodes in an extension, use the full view
1859 of the parent subtype if it is of a private kind.
1860
a6a29d0c
EB
18612009-06-03 Eric Botcazou <ebotcazou@adacore.com>
1862
1863 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: Add the
1864 _Parent field, if any, to the record before adding the other fields.
1865 <E_Record_Subtype>: Put the _Controller field before the other fields
1866 except for the _Tag or _Parent fields.
1867 (components_to_record): Likewise. Retrieve the _Parent field from the
1868 record type.
1869
8cd28148
EB
18702009-06-03 Eric Botcazou <ebotcazou@adacore.com>
1871
1872 * gcc-interface/decl.c (substitution_list): Rename to build_subst_list,
1873 remove unused parameter and simplify.
1874 (gnat_to_gnu_entity) <E_Record_Type>: Do not set TYPE_FIELDS. Factor
1875 common predicate. Rewrite loop for clarity. Use GNU_TYPE directly
1876 as context for all discriminants. Fix formatting nits.
1877 <E_Record_Subtype>: Add cosmetic 'break'. Test Has_Discriminants
1878 before Discriminant_Constraint. Adjust for above renaming. Do not
1879 set GNU_TYPE more than once.
1880 (elaborate_entity): Test Has_Discriminants on the entity and use
1881 Implementation_Base_Type.
1882 (components_to_record): Rename component_list to gnat_component_list.
1883 Retrieve the _Parent field from the list. Fix nits in comments.
1884 Clarify logic in loop. Pass correct arguments to create_field_decl.
1885
beb7e030
EB
18862009-06-02 Eric Botcazou <ebotcazou@adacore.com>
1887
1888 * gcc-interface/Make-lang.in: Fix formatting.
1889
db868e1e 18902009-06-01 Olivier Hainque <hainque@adacore.com>
53b2323e 1891 Eric Botcazou <ebotcazou@adacore.com>
db868e1e
OH
1892
1893 * gcc-interface/utils.c (convert) <CONSTRUCTOR case>: When converting
1894 to the packable version of the type, clear TREE_STATIC/TREE_CONSTANT
1895 on the result if at least one of the input fields couldn't be output
1896 as a static constant any more.
1897
324c9b02 18982009-06-01 Olivier Hainque <hainque@adacore.com>
53b2323e 1899 Eric Botcazou <ebotcazou@adacore.com>
324c9b02
OH
1900
1901 * gcc-interface/utils2.c (gnat_build_constructor): Factor
18d6353c 1902 out code. Use initializer_constant_valid_for_bitfield_p and
324c9b02
OH
1903 CONSTRUCTOR_BITFIELD_P for bit-fields.
1904
7980bfb8
ILT
19052009-05-26 Ian Lance Taylor <iant@google.com>
1906
1907 * gcc-interface/Makefile.in (COMPILER): Define.
1908 (COMPILER_FLAGS, ALL_COMPILERFLAGS): Define.
1909 (.c.o, cio.o, init.o, initialize.o, targext.o): Use $(COMPILER).
1910 (seh_init.o, tracebak.o): Likewise.
1911 * gcc-interface/Make-lang.in (ada/targext.o): Likewise.
1912 (ada/cio.o, ada/init.o, ada/initialize.o, ada/raise.o): Likewise.
1913 (ada/tracebak.o, ada/cuintp.o, ada/decl.o, ada/misc.o): Likewise.
1914 (ada/targtyps.o, ada/trans.o, ada/utils.o): Likewise.
1915 (ada/utils2.o): Likewise.
1916
6e00e546
OH
19172009-05-24 Olivier Hainque <hainque@adacore.com>
1918
1919 * switch.adb (Is_Internal_GCC_Switch, Switch_Last): Bodies of ...
1920 * switch.ads (Is_Internal_GCC_Switch, Switch_Last): New functions.
1921 Add -auxbase variants to the list of recognized internal switches.
1922 * back_end.adb (Scan_Back_End_Switches): Use the new functions and
1923 adjust comments.
1924 * lib.ads: Make comment on internal GCC switches more general.
1925 * gcc-interface/lang-specs.h (specs for Ada): Pass -auxbase variants
1926 as for C.
1927
22702f93
EB
19282009-05-23 Eric Botcazou <ebotcazou@adacore.com>
1929
1930 * gcc-interface/misc.c (gnat_get_subrange_bounds): Fix thinko.
1931
03049a4e
EB
19322009-05-23 Eric Botcazou <ebotcazou@adacore.com>
1933
1934 * gcc-interface/decl.c (set_rm_size): Bypass the check for packed array
1935 types.
1936
aae8570a
EB
19372009-05-23 Eric Botcazou <ebotcazou@adacore.com>
1938
1939 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Do not modify the
1940 original type because of the alignment when there is an address clause.
1941
3f6f0eb2
EB
19422009-05-20 Eric Botcazou <ebotcazou@adacore.com>
1943
1944 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: When
1945 discriminants affect the shape of the subtype, retrieve the GCC type
1946 directly from the original field if the GNAT types for the field and
1947 the original field are the same.
1948
84fb43a1
EB
19492009-05-15 Eric Botcazou <ebotcazou@adacore.com>
1950
1951 * gcc-interface/ada-tree.h (TYPE_GCC_MIN_VALUE, TYPE_GCC_MAX_VALUE):
1952 New macros.
1953 (TYPE_RM_VALUES): Likewise.
1954 (TYPE_RM_SIZE): Rewrite in terms of TYPE_RM_VALUES.
1955 (SET_TYPE_RM_SIZE): New macro.
1956 (TYPE_RM_MIN_VALUE, TYPE_RM_MAX_VALUE): Likewise.
1957 (SET_TYPE_RM_SIZE, SET_TYPE_RM_MAX_VALUE): Likewise.
1958 (TYPE_MIN_VALUE, TYPE_MAX_VALUE): Redefine.
1959 * gcc-interface/gigi.h (create_range_type): Declare.
1960 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Modular_Integer_Type>
1961 Use SET_TYPE_RM_MAX_VALUE to set the upper bound on the UMT type.
1962 <E_Signed_Integer_Subtype>: Build a regular integer type first and
1963 then set the RM bounds. Use SET_TYPE_RM_SIZE to set the RM size.
1964 <E_Floating_Point_Subtype>: Build a regular floating-point type first
1965 and then set the RM bounds.
1966 <E_Array_Type>: Use create_range_type instead of build_range_type.
1967 <E_Array_Subtype>: Build a regular integer type first and then set
1968 the RM bounds for the extra subtype.
1969 <E_String_Literal_Subtype>: Use create_range_type instead of
1970 build_range_type.
1971 <all>: Set the RM bounds for enumeration types and the GCC bounds for
1972 floating-point types.
1973 (set_rm_size): Use SET_TYPE_RM_SIZE to set the RM size.
1974 (make_type_from_size) <INTEGER_TYPE>: Use SET_TYPE_RM_{MIN,MAX}_VALUE
1975 to set the bounds. Use SET_TYPE_RM_SIZE to set the RM size.
1976 (substitute_in_type) <INTEGER_TYPE>: Deal with GCC bounds for domain
1977 types and with RM bounds for subtypes.
1978 * gcc-interface/misc.c (LANG_HOOKS_GET_SUBRANGE_BOUNDS): Define.
1979 (gnat_print_type) <REAL_TYPE>: New case.
1980 <ENUMERAL_TYPE>: Fall through to above case.
1981 (gnat_get_subrange_bounds): New function.
1982 * gcc-interface/trans.c (add_decl_expr): Mark the trees rooted as
1983 TYPE_RM_MIN_VALUE and TYPE_RM_MAX_VALUE, if any.
1984 * gcc-interface/utils.c (gnat_init_decl_processing): Use precision 8
1985 for booleans. Adjust and use SET_TYPE_RM_SIZE to set the RM size.
1986 (create_range_type): New function.
1987 (create_param_decl): Build a regular integer type first and then set
1988 the RM bounds for the extra subtype.
1989 (unchecked_convert): Remove kludge for 'Valid.
1990 * gcc-interface/utils2.c (build_binary_op) <ARRAY_RANGE_REF>: Convert
1991 the index to sizetype instead of TYPE_DOMAIN.
1992
a531043b
EB
19932009-05-14 Eric Botcazou <ebotcazou@adacore.com>
1994
1995 * gcc-interface/decl.c (elaborate_expression_1): Remove GNAT_EXPR
1996 parameter and move check for static expression to...
1997 (elaborate_expression): ...here. Adjust call to above function.
1998 (gnat_to_gnu_entity): Likewise for all calls. Use correct arguments
1999 in calls to elaborate_expression.
2000 (elaborate_entity): Likewise.
2001 (substitution_list): Likewise.
2002 (maybe_variable): Fix formatting.
2003 (substitute_in_type) <REAL_TYPE>: Merge with INTEGER_TYPE case and add
2004 missing guard.
2005 * gcc-interface/trans.c (protect_multiple_eval): Minor cleanup.
2006
59141a28
AC
20072009-05-07 Arnaud Charlet <charlet@adacore.com>
2008
c608b4d2 2009 * gcc-interface/Make-lang.in: Update dependencies.
59141a28 2010
c608b4d2
EB
20112009-05-06 Laurent GUERBY <laurent@guerby.net>
2012
2013 * s-linux.ads, s-linux-alpha.ads, s-linux-hppa.ads, osinte-linux.ads:
2014 Define sa_handler_pos.
2015 * s-osinte-linux.ads: Use it.
2016 * s-linux-mipsel.ads: New.
2017 * system-linux-mips64el.ads: New.
2018 * gcc-interface/Makefile.in: Multilib handling for mipsel-linux and
2019 mips64el-linux.
e84efdce 2020
1f110335
AC
20212009-05-06 Arnaud Charlet <charlet@adacore.com>
2022
2023 * exp_ch5.adb, exp_util.adb, exp_attr.adb, sem_util.adb, sem_res.adb,
2024 targparm.adb, targparm.ads, exp_ch4.adb, exp_ch6.adb, exp_disp.adb,
2025 opt.ads, exp_aggr.adb, exp_intr.adb, sem_disp.adb, exp_ch3.adb
2026 (Tagged_Type_Expansion): New flag.
2027 Replace use of VM_Target related to tagged types expansion by
2028 Tagged_Type_Expansion, since tagged type expansion is not necessarily
2029 linked to VM targets.
2030
e0bf7d65
RD
20312009-05-06 Robert Dewar <dewar@adacore.com>
2032
1f110335
AC
2033 * sem_attr.adb: Add processing for Standard'Compiler_Version
2034
e0bf7d65
RD
2035 * sinput.adb (Expr_Last_Char): Fix some copy-paste errors for paren
2036 skipping.
2037 (Expr_First_Char): Add ??? comment that paren skipping needs work
2038 (Expr_Last_Char): Add ??? comment that paren skipping needs work
2039
2040 * exp_attr.adb: Add processing for Compiler_Version
2041
2042 * sem_attr.adb: New attribute Compiler_Version
2043
2044 * snames.ads-tmpl: Add entries for Compiler_Version attribute
2045
2046 * gnat_rm.texi: Document Compiler_Version attribute
2047
483c78cb
RD
20482009-05-06 Robert Dewar <dewar@adacore.com>
2049
2050 * errout.adb: Minor reformatting
2051
2052 * scng.adb, sem_prag.adb, par-ch4.adb, sem_res.adb, par-ch6.adb,
2053 sem_ch6.adb, par-prag.adb, sem_ch8.adb, sem_warn.adb, par-util.adb,
2054 styleg.adb: Add stylized comments to error messages that are included
2055 in the codefix circuitry of IDE's such as GPS.
2056
4e7a4f6e
AC
20572009-05-06 Sergey Rybin <rybin@adacore.com>
2058
2059 * gnat_ugn.texi: For Misnamed_Identifiers rule all description of the
2060 new form of the rule parameter that allows to specify the suffix for
2061 access-to-access type names.
2062
20632009-05-06 Robert Dewar <dewar@adacore.com>
2064
2065 * sem_warn.adb (Warn_On_Useless_Assignment): Avoid false negative for
2066 out parameter assigned when exception handlers are present.
2067
2068 * sem_ch5.adb (Analyze_Exit_Statement): Kill current value last
2069 assignments on exit.
2070
2071 * par-ch9.adb, sem_aggr.adb, par-endh.adb, sem_res.adb, par-ch6.adb,
2072 sinput-l.adb, par-load.adb, errout.ads, sem_ch4.adb, lib-load.adb,
2073 prj-dect.adb, par-ch12.adb, sem_ch8.adb, par-util.adb, par-ch3.adb,
2074 par-tchk.adb, par-ch5.adb: This patch adds stylized comments to error
2075 messages that are included in the codefix circuitry of IDE's such as
2076 GPS.
2077
2078 * sinput.ads, sinput.adb (Expr_First_Char): New function
53b2323e 2079 (Expr_Last_Char): New function
4e7a4f6e 2080
35117aa8
AC
20812009-05-06 Sergey Rybin <rybin@adacore.com>
2082
2083 * gnat_ugn.texi: Add subsection for Exits_From_Conditional_Loops rule
2084 Add formal definition for extra exit point metric
2085
20862009-05-06 Pascal Obry <obry@adacore.com>
2087
2088 * adaint.c: Support for setting attributes on unicode filename on
2089 Windows.
2090
0c020dde
AC
20912009-05-06 Robert Dewar <dewar@adacore.com>
2092
2093 * sem_warn.adb: Minor reformatting
2094
20952009-05-06 Javier Miranda <miranda@adacore.com>
2096
2097 * sem_prag.adb (Process_Import_Or_Interface): Imported CPP types must
2098 not have discriminants or components with default expressions.
2099 (Analyze_Pragma): For pragma CPP_Class check that imported types
2100 have no discriminants and components have no default expression.
2101
2102 * sem_aggr.adb (Resolve_Aggr_Expr): Add missing check on wrong use of
2103 class-wide types in the expression of a record component association.
2104
21052009-05-06 Sergey Rybin <rybin@adacore.com>
2106
2107 * vms_data.ads: Add qualifier for gnatmetric extra exit points metric
2108
2109 * gnat_ugn.texi: Add description for the new extra exit points metric
2110 (gnatmetric section).
2111
deef4289
AC
21122009-05-06 Robert Dewar <dewar@adacore.com>
2113
2114 * s-fileio.adb: Minor comment update
2115
2116 * sem_ch8.adb: Minor reformatting
2117
2118 * exp_ch3.adb: Update comments.
2119
21202009-05-06 Tristan Gingold <gingold@adacore.com>
2121
2122 * init.c, s-osinte-darwin.ads: Reduce alternate stack size
2123
89522556
AC
21242009-05-06 Arnaud Charlet <charlet@adacore.com>
2125
2126 * gcc-interface/Makefile.in: Update LIBGNAT_TARGET_PAIRS for Xenomai.
2127 Fix missing unit for rtp-smp runtime on both ppc and x86 vxworks
2128
2129 * gcc-interface/Make-lang.in: Update dependencies
2130
a693f55e
AC
21312009-05-06 Ed Schonberg <schonberg@adacore.com>
2132
2133 * sem_ch12.adb (Build_Instance_Compilation_Unit_Nodes): Revert previous
2134 change. The context clause of a generic instance declaration must be
2135 preserved until the end of the compilation, because it may have to be
2136 installed/removed repeatedly.
2137 The latest change to sem.adb ensures that the context of both spec and
2138 body of an instance is traversed before the instance itself, making
2139 this patch redundant.
2140
e264efcc
AC
21412009-05-06 Gary Dismukes <dismukes@adacore.com>
2142
2143 * sem_aggr.adb: Fix typo.
2144
21452009-05-06 Thomas Quinot <quinot@adacore.com>
2146
2147 * exp_ch3.adb (Expand_N_Object_Declaration): For a controlled object
2148 declaration, do not adjust if the declaration is to be rewritten into
2149 a renaming.
2150
21512009-05-06 Ed Schonberg <schonberg@adacore.com>
2152
2153 * sem_ch8.adb (Find_Type): Reject the use of a task type in its own
2154 discriminant part.
2155
21562009-05-06 Bob Duff <duff@adacore.com>
2157
2158 * s-fileio.adb (File_IO_Clean_Up_Type): Make this type limited, since
2159 otherwise the compiler would be allowed to optimize away the cleanup
2160 code.
2161
69a0c174
AC
21622009-05-06 Gary Dismukes <dismukes@adacore.com>
2163
2164 * gnat_ugn.texi: Fix typo.
2165
21662009-05-06 Thomas Quinot <quinot@adacore.com>
2167
2168 * g-debuti.adb: Minor reformatting
2169
2170 * exp_attr.adb: Minor reformatting
2171
21722009-05-06 Robert Dewar <dewar@adacore.com>
2173
2174 * sem_aggr.adb: Minor reformatting.
2175
2176 * g-socthi-vms.adb: Minor reformatting
2177
21782009-05-06 Bob Duff <duff@adacore.com>
2179
2180 * g-table.ads, g-table.adb, g-dyntab.ads, g-dyntab.adb:
2181 (Append_All): Add Append_All to g-table and g-dyntab, similar to table.
2182
4e0d20ca
BD
21832009-05-06 Bob Duff <duff@adacore.com>
2184
2185 * gnat_ugn.texi, gnat_rm.texi: Add missing documentation for warnings
2186 flags.
2187
11795185
JM
21882009-05-06 Javier Miranda <miranda@adacore.com>
2189
2190 * sem_aggr.adb (Valid_Ancestor_Type): Add support for C++ constructors.
2191 (Resolve_Extension_Aggregate): Do not reject C++ constructors in
2192 extension aggregates.
2193 (Resolve_Record_Aggregate): Add support for C++ constructors in
2194 extension aggregates.
2195
2196 * exp_aggr.adb (Build_Record_Aggr_Code): Add support for C++
2197 constructors in extension aggregates.
2198
426d2717
AC
21992009-05-06 Robert Dewar <dewar@adacore.com>
2200
2201 * freeze.adb (Freeze_Record_Type): Improve error msg for bad size
2202 clause.
2203
22042009-05-06 Thomas Quinot <quinot@adacore.com>
2205
2206 * g-socthi-vms.adb (C_Recvmsg, C_Sendmsg): Convert Msg to appropriate
2207 packed type, since on OpenVMS, struct msghdr is packed.
2208
22092009-05-06 Ed Schonberg <schonberg@adacore.com>
2210
2211 * sem_ch8.adb (Analyze_Object_Renaming): If the object is a function
2212 call returning an unconstrained composite value, create the proper
2213 subtype for it, as is done for object dclarations with unconstrained
2214 nominal subtypes. Perform this transformation regarless of whether
2215 call comes from source.
2216
8dc10d38
AC
22172009-05-06 Robert Dewar <dewar@adacore.com>
2218
2219 * freeze.adb (Freeze_Record_Type): Implement Implicit_Packing for
2220 records
2221
2222 * gnat_rm.texi:
2223 Add documentation for pragma Implicit_Packing applied to record
2224 types.
2225
22262009-05-06 Ed Schonberg <schonberg@adacore.com>
2227
2228 * sem.adb (Walk_Library_Items): Place all with_clauses of an
2229 instantiation on the spec, because late instance bodies may generate
2230 with_clauses for the instance body but are inserted in the instance
2231 spec.
2232
3249690d
AC
22332009-05-06 Emmanuel Briot <briot@adacore.com>
2234
2235 * prj-nmsc.adb (Locate_Directory): Remove unused parameters, and add
2236 support for returning the directory even if it doesn't exist. This is
2237 used for the object directory, since we are always setting it to a
2238 non-null value, and we should set it to an absolute name rather than a
2239 relative name for the sake of external tools that might depend on it.
2240 (Check_Library_Attributes): When Project.Library_Dir is known, check
2241 that the directory exists.
2242
22432009-05-06 Ed Schonberg <schonberg@adacore.com>
2244
2245 * sem_attr.adb (Check_Dereference): If the prefix of an attribute
2246 reference is an implicit dereference, do not freeze the designated type
2247 if within a default expression or when preanalyzing a pre/postcondtion.
2248
fd366a46
AC
22492009-05-06 Ed Schonberg <schonberg@adacore.com>
2250
2251 * sem_ch8.adb (Analyze_Object_Renaming): If the object is a function
2252 call returning an unconstrained composite value, create the proper
2253 subtype for it, as is done for object dclarations with unconstrained
2254 nominal subtypes
2255
22562009-05-06 Robert Dewar <dewar@adacore.com>
2257
2258 * sem_ch13.adb (Check_Constant_Address_Clause): Minor error message
2259 improvements
2260
2261 * freeze.adb: Minor reformatting
2262
7dd1ab84
AC
22632009-05-06 Thomas Quinot <quinot@adacore.com>
2264
2265 * sem_ch3.adb (Access_Type_Declaration): An access type whose
2266 designated type is a limited view from a limited with clause (flagged
2267 From_With_Type) is not itself such a limited view.
2268
22692009-05-06 Emmanuel Briot <briot@adacore.com>
2270
2271 * prj-nmsc.adb: Remove unused variable.
2272
2273 * clean.adb, gnatcmd.adb, makeutl.ads, prj-pars.adb, prj-pars.ads,
2274 prj-proc.ads, prj.ads, switch-m.adb (Subdirs_Option): Moved to
2275 makeutl.ads, since not all users of prj.ads need this.
2276
28541488
JM
22772009-05-06 Javier Miranda <miranda@adacore.com>
2278
2279 * exp_aggr.adb (Build_Record_Aggr_Code): Add implicit call to the C++
2280 constructor in case of aggregates whose type is a CPP_Class type.
2281
55c078ac
AC
22822009-05-06 Robert Dewar <dewar@adacore.com>
2283
2284 * sem_ch13.adb: Minor comment additions
2285
2286 * osint.adb: Minor reformatting
2287
22882009-05-06 Pascal Obry <obry@adacore.com>
2289
2290 * initialize.c: On Windows, keep full pathname to expanded command
2291 line patterns.
2292
6bde3eb5
AC
22932009-05-06 Ed Schonberg <schonberg@adacore.com>
2294
2295 * sem_aggr.adb (Resolve_Record_Aggregate): If a defaulted component of
2296 an aggregate with box default is of a discriminated private type, do
2297 not build a subaggregate for it.
2298 A proper call to the initialization procedure is generated for it.
2299
23002009-05-06 Thomas Quinot <quinot@adacore.com>
2301
2302 * rtsfind.adb, rtsfind.ads, exp_dist.adb, exp_dist.ads
2303 (Exp_Dist.Build_TC_Call, Build_From_Any_Call, Build_To_Any_Call):
2304 Use PolyORB strings to represent Ada.Strings.Unbounded_String value;
2305 use standard array code for Standard.String.
2306 (Exp_Dist): Bump PolyORB s-parint API version to 3.
2307 (Rtsfind): New entities TA_Std_String, Unbounded_String.
2308
23092009-05-06 Robert Dewar <dewar@adacore.com>
2310
2311 * g-comlin.ads: Minor reformatting
2312
2313 * xoscons.adb: Minor reformatting
2314
3743d5bd
AC
23152009-05-06 Gary Dismukes <dismukes@adacore.com>
2316
2317 * sem_aggr.adb (Resolve_Record_Aggregate): In step 5, get the
2318 Underlying_Type before retrieving the type definition for gathering
2319 components, to account for the case where the type is private.
2320
23212009-05-06 Tristan Gingold <gingold@adacore.com>
2322
2323 * g-comlin.ads: Fix minor typos (Getopt instead of Get_Opt).
2324
23252009-05-06 Thomas Quinot <quinot@adacore.com>
2326
2327 * g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
2328 g-socthi-vxworks.ads, g-socthi-mingw.adb g-socthi-mingw.ads,
2329 g-socthi.adb, g-stsifd-sockets.adb, g-socthi.ads, g-socket.adb
2330 (GNAT.Sockets.Thin.C_Sendmsg, GNAT.Sockets.Thin.C_Recvmsg,
2331 Windows versions): Fix incorrect base
2332 address of Iovec (it's Msg_Iov, not Msg_Iov'Address).
2333 (GNAT.Sockets.Thin.C_Sendto, GNAT.Sockets.Thin.C_Recvfrom): Use a
2334 System.Address for the To parameter instead of a Sockaddr_In_Access, to
2335 achieve independance from AF_INET family, and also to allow this
2336 parameter to be retrieved from a Msghdr for the Windows case where
2337 these routines are used to implement C_Sendmsg and C_Recvmsg.
2338
23392009-05-06 Bob Duff <duff@adacore.com>
2340
2341 * g-expect.adb, g-expect.ads: Minor reformatting
2342
2343 * sdefault.ads: Minor comment fix
2344
2345 * g-expect-vms.adb: Minor reformatting
2346
2347 * table.ads, table.adb (Append_All): New convenience procedure for
2348 appending a whole array.
2349
2350 * comperr.adb (Compiler_Abort): Mention the -gnatd.n switch in the bug
2351 box message. Call Osint.Dump_Source_File_Names to print out the file
2352 list, instead of rummaging around in various data structures.
2353
2354 * debug.adb: New switch -gnatd.n, to print source file names as they
2355 are read.
2356
2357 * alloc.ads: Add parameters for Osint.File_Name_Chars.
2358
2359 * osint.ads, osint.adb (Dump_Source_File_Names): New procedure to print
2360 out source file names during a "bug box".
2361 (Include_Dir_Default_Prefix): Use memo-izing to avoid repeated new/free.
2362 (Read_Source_File): Print out the file name, if requested via -gnatd.n.
2363 If it's not part of the runtimes, store it for later printing by
2364 Dump_Source_File_Names.
2365
23662009-05-06 Javier Miranda <miranda@adacore.com>
2367
2368 * gnat_rm.texi (CPP_Constructor): Avoid duplication of the
2369 documentation and add reference to the GNAT user guide for further
2370 details.
2371
23722009-05-06 Javier Miranda <miranda@adacore.com>
2373
2374 * gnat_ugn.texi: Complete documentation for CPP_Constructor and remove
2375 also wrong examples that use extension aggregates.
2376
23772009-05-06 Albert Lee <lee@adacore.com>
2378
2379 * s-oscons-tmplt.c (System.OS_Constants): Do not use special definition
2380 of Msg_Iovlen_T for VMS.
2381
ffef1219
LG
23822009-05-04 Laurent GUERBY <laurent@guerby.net>
2383
2384 PR ada/38874
2385 * make.adb (Scan_Make_Arg): Pass --param= to compiler and linker.
2386
70b70ce8
AC
23872009-04-29 Ed Schonberg <schonberg@adacore.com>
2388
2389 * sem_ch8.adb (Analyze_Subprogram_Renaming): Improve error message on
2390 box-defaulted operator in an instantiation, when the type of the
2391 operands is not directly visible.
2392
23932009-04-29 Gary Dismukes <dismukes@adacore.com>
2394
2395 * sem_aggr.adb (Valid_Limited_Ancestor): Undo previous change.
2396 (Resolve_Extension_Aggregate): Call Check_Parameterless_Call after the
2397 analysis of the ancestor part. Remove prohibition against limited
2398 interpretations of the ancestor expression in the case of Ada 2005.
2399 Revise error message in overloaded case, adding a message to cover
2400 the Ada 2005 case.
2401
24022009-04-29 Thomas Quinot <quinot@adacore.com>
2403
2404 * xoscons.adb: Minor reformatting
2405
24062009-04-29 Bob Duff <duff@adacore.com>
2407
2408 * sem_ch13.adb (Analyze_Attribute_Definition_Clause): Do not ignore
2409 attribute_definition_clauses for the following attributes when the
2410 -gnatI switch is used: External_Tag, Input, Output, Read, Storage_Pool,
2411 Storage_Size, Write. Otherwise, we get spurious errors (for example,
2412 missing Read attribute on remote types).
2413
2414 * gnat_ugn.texi: Document the change, and add a stern warning.
2415
24162009-04-29 Ed Schonberg <schonberg@adacore.com>
2417
2418 * sem_attr.adb (Check_Local_Access): Indicate that value tracing is
2419 disabled not just for the current scope, but for the innermost dynamic
2420 scope as well.
2421
4cc51f5e
AC
24222009-04-29 Arnaud Charlet <charlet@adacore.com>
2423
2424 * gcc-interface/Make-lang.in: Update dependencies
2425
107b023c
AC
24262009-04-29 Vincent Celier <celier@adacore.com>
2427
2428 * prj-part.adb: Minor comment update
2429
24302009-04-29 Ed Schonberg <schonberg@adacore.com>
2431
2432 * sem_aggr.adb (Resolve_Record_Aggregate): handle properly
2433 box-initialized records with discriminated subcomponents that are
2434 constrained by discriminants of enclosing components. New subsidiary
2435 procedures Add_Discriminant_Values, Propagate_Discriminants.
2436
24372009-04-29 Arnaud Charlet <charlet@adacore.com>
2438
2439 * g-socket.adb: Code clean up.
2440
1933c497
AC
24412009-04-29 Gary Dismukes <dismukes@adacore.com>
2442
2443 * sem_aggr.adb (Valid_Limited_Ancestor): Add test for the name of a
2444 function entity, to cover the case of a parameterless function call
2445 that has not been resolved.
2446
24472009-04-29 Robert Dewar <dewar@adacore.com>
2448
2449 * err_vars.ads, prj-part.adb, scans.ads, exp_tss.adb: Minor
2450 reformatting and comment updates.
2451
51ec70b8
AC
24522009-04-29 Arnaud Charlet <charlet@adacore.com>
2453
2454 * gnat_ugn.texi: Update some documentation about interfacing with C++
2455 Mention -fkeep-inline-functions.
2456
2457 * gnat_ugn.texi: Minor edits
2458
24592009-04-29 Ed Schonberg <schonberg@adacore.com>
2460
2461 * sem_aggr.adb (Resolve_Record_Aggregate): When building an aggregate
2462 for a defaulted component of an enclosing aggregate, inherit the type
2463 from the component declaration of the enclosing type.
2464
24652009-04-29 Albert Lee <lee@adacore.com>
2466
2467 * g-socthi-vms.ads, g-socthi-vxworks.ads, s-oscons-tmplt.c,
2468 g-socthi-mingw.ads, g-socthi.ads, g-socket.adb, g-sothco.ads
2469 (System.OS_Constants): New type Msg_Iovlen_T which follows whether the
2470 msg_iovlen field in struct msghdr is 32 or 64 bits wide.
2471 Relocate the Msghdr record type from GNAT.Sockets.Thin to
2472 GNAT.Sockets.Common, and use System.OS_Constants.Msg_Iovlen_T as the
2473 type for the Msg_Iovlen field.
2474
9e895ab5
AC
24752009-04-29 Vincent Celier <celier@adacore.com>
2476
2477 * sinput-l.adb (Load_File): When preprocessing, set temporarily the
2478 Source_File_Index_Table entries for the source, to avoid crash when
2479 reporting an error.
2480
2481 * gnatcmd.adb (Test_If_Relative_Path): Use
2482 Makeutl.Test_If_Relative_Path.
2483
2484 * makeutl.adb:(Test_If_Relative_Path): Process switches --RTS= only if
2485 Including_RTS is True.
2486
2487 * makeutl.ads (Test_If_Relative_Path): New Boolean parameter
2488 Including_RTS defaulted to False.
2489
2490 * sinput.ads, scans.ads, err_vars.ads: Initialize some variables with
2491 a default value.
2492
24932009-04-29 Javier Miranda <miranda@adacore.com>
2494
2495 * gnat_ugn.texi: Adding documentation for non-default C++ constructors.
2496
236fecbf
JM
24972009-04-29 Javier Miranda <miranda@adacore.com>
2498
2499 * sem_ch3.adb (Analyze_Object_Declaration): Disable error message
2500 associated with dyamically tagged expressions if the expression
2501 initializing a tagged type corresponds with a non default CPP
2502 constructor.
2503 (OK_For_Limited_Init): CPP constructor calls are OK for initialization
2504 of limited type objects.
2505
2506 * sem_ch5.adb (Analyze_Assignment): Improve the error message reported
2507 when a CPP constructor is called in an assignment. Disable also the
2508 error message associated with dyamically tagged expressions if the
2509 exporession initializing a tagged type corresponds with a non default
2510 CPP constructor.
2511
2512 * sem_prag.adb (Analyze_Pragma): Remove code disabling the use of
2513 non-default C++ constructors.
2514
2515 * sem_util.ads, sem_util.adb (Is_CPP_Constructor_Call): New subprogram.
2516
2517 * exp_tss.ads, exp_tss.adb (Base_Init_Proc): Add support for
2518 non-default constructors.
2519 (Init_Proc): Add support for non-default constructors.
2520
2521 * exp_disp.adb (Set_Default_Constructor): Removed.
2522 (Set_CPP_Constructors): Code based in removed Set_Default_Constructor
2523 but extending its functionality to handle non-default constructors.
2524
2525 * exp_aggr.adb (Build_Record_Aggr_Code): Add support for non-default
2526 constructors. Minor code cleanup removing unrequired label and goto
2527 statement.
2528
2529 * exp_ch3.adb (Build_Initialization_Call): Add support for non-default
2530 constructors.
2531 (Build_Init_Statements): Add support for non-default constructors.
2532 (Expand_N_Object_Declaration): Add support for non-default constructors.
2533 (Freeze_Record_Type): Replace call to Set_Default_Constructor by call
2534 to Set_CPP_Constructors.
2535
2536 * exp_ch5.adb (Expand_N_Assignment_Statement): Add support for
2537 non-default constructors.
2538 Required to handle its use in build-in-place statements.
2539
2540 * gnat_rm.texi (CPP_Constructor): Document new extended use of this
2541 pragma for non-default C++ constructors and the new compiler support
2542 that allows the use of these constructors in record components, limited
2543 aggregates, and extended return statements.
2544
0ec21a5b
AC
25452009-04-29 Vincent Celier <celier@adacore.com>
2546
2547 * prj-part.adb (Parse_Single_Project): Do not attempt to find a
2548 project extending an abstract project.
2549
25502009-04-29 Eric Botcazou <ebotcazou@adacore.com>
2551
2552 * targparm.ads: Fix oversight.
2553
96b20738
ES
25542009-04-29 Ed Schonberg <schonberg@adacore.com>
2555
2556 * lib-xref.adb (Output_Overridden_Op): Follow several levels of
2557 derivation when necessary, to find the user-subprogram that is actally
2558 being overridden.
2559
3b4ebfc3
RD
25602009-04-29 Robert Dewar <dewar@adacore.com>
2561
2562 * sem_util.adb (May_Be_Lvalue): Fix cases involving indexed/selected
2563 components
2564
eb9cb0fc
ES
25652009-04-29 Ed Schonberg <schonberg@adacore.com>
2566
2567 * exp_ch9.ads, exp_ch9.adb (Build_Wrapper_Spec): Use source line of
2568 primitive operation, rather than source line of synchronized type, when
2569 building the wrapper for a primitive operation that overrides an
2570 operation inherited from a progenitor, to improve the error message on
2571 duplicate declarations.
2572
2573 * sem_ch3.adb (Process_Full_View): Use new signature of
2574 Build_Wrapper_Spec.
2575
7f7d37cb
AC
25762009-04-29 Robert Dewar <dewar@adacore.com>
2577
2578 * prj-nmsc.ads: Minor reformatting
2579
25802009-04-29 Eric Botcazou <ebotcazou@adacore.com>
2581
2582 * exp_ch4.adb (Expand_N_Conditional_Expression): Set the SLOC of the
2583 expression on the existing parent If statement.
2584
3c638456
RD
25852009-04-29 Robert Dewar <dewar@adacore.com>
2586
2587 * prj-proc.adb, prj.ads: Minor reformatting
2588
fb1949a0
EB
25892009-04-29 Eric Botcazou <ebotcazou@adacore.com>
2590
2591 * exp_ch4.adb (Expand_N_Conditional_Expression): Set the SLOC of an
2592 existing parent If statement on the newly created one.
2593
bd0a4cab
EB
25942009-04-29 Emmanuel Briot <briot@adacore.com>
2595
2596 * gnatcmd.adb, prj-proc.adb, prj-proc.ads, make.adb, prj-part.adb,
2597 prj-part.ads, prj.adb, prj.ads, clean.adb, prj-dect.adb, prj-dect.ads,
2598 prj-nmsc.adb, prj-nmsc.ads, prj-pars.adb, prj-pars.ads, prj-makr.adb
2599 (Set_In_Configuration, In_Configuration): Removed.
2600 Replaced by an extra parameter Is_Config_File in several parameter to
2601 avoid global variables to store the state of the parser.
2602
9af094a1
ES
26032009-04-29 Ed Schonberg <schonberg@adacore.com>
2604
2605 * sinfo.ads, sinfo.adb: New attribute Next_Implicit_With, to chain
2606 with_clauses generated for the same unit through rtsfind, and that
2607 appear in the context of different units.
2608
2609 * rtsfind.adb: New attribute First_Implicit_With, component of the
2610 Unit_Record that stores information about a unit loaded through rtsfind.
2611
ac72c9c5
AC
26122009-04-29 Gary Dismukes <dismukes@adacore.com>
2613
2614 * exp_ch3.adb (Stream_Operation_OK): Return True for limited interfaces
2615 (other conditions permitting), so that abstract stream subprograms will
2616 be declared for them.
2617
26182009-04-29 Bob Duff <duff@adacore.com>
2619
2620 * g-expect.adb (Expect_Internal): Fix check for overfull buffer.
2621
2622 * g-expect.ads: Minor comment fixes.
2623
26242009-04-29 Ed Schonberg <schonberg@adacore.com>
2625
2626 * freeze.adb, lib-xref.adb (Check_Dispatching_Operation): if the
2627 dispatching operation is a body without previous spec, update the list
2628 of primitive operations to ensure that cross-reference information is
2629 up-to-date.
2630
26312009-04-29 Albert Lee <lee@adacore.com>
2632
2633 * g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
2634 g-socthi-vxworks.ads, g-socthi-mingw.adb, g-socthi-mingw.ads,
2635 g-socthi.adb, g-socthi.ads, g-socket.adb, g-socket.ads
2636 (GNAT.Sockets.Thin.C_Readv,
2637 GNAT.Sockets.Thin.C_Writev): Remove unused subprograms.
2638 (GNAT.Sockets.Thin.C_Recvmsg,
2639 GNAT.Sockets.Thin.C_Sendmsg): New bindings to call recvmsg(2) and
2640 sendmsg(2).
2641 (GNAT.Sockets.Receive_Vector, GNAT.Sockets.Send_Vector): Use
2642 C_Recvmsg/C_Sendmsg rather than Readv/C_Writev.
2643
4fc26524
AC
26442009-04-29 Ed Schonberg <schonberg@adacore.com>
2645
2646 * sem_disp.adb (Check_Dispatching_Operation): if the dispatching
2647 operation is a body without previous spec, update the list of
2648 primitive operations to ensure that cross-reference information is
2649 up-to-date.
2650
2651 * sem_ch12.adb (Build_Instance_Compilation_Unit_Nodes): When creating a
2652 new compilation unit node for the instance declaration, keep the
2653 context items of the original unit on it, so that the context of the
2654 instance body only holds the context inherited from the generic body.
2655
26562009-04-29 Bob Duff <duff@adacore.com>
2657
2658 * sem_res.adb: Minor comment fix.
2659
7f4c1903
AC
26602009-04-29 Thomas Quinot <quinot@adacore.com>
2661
2662 * sem_elim.adb: Minor reformatting
2663
26642009-04-29 Ed Schonberg <schonberg@adacore.com>
2665
2666 * exp_aggr.adb (Convert_To_Positional): if the current unit is a
2667 predefined unit, allow arbitrary number of components in static
2668 aggregate, to ensure that the same level of constant folding applies
2669 for Ada 95 and Ada 05 versions of the file.
2670
33374829
AC
26712009-04-29 Ed Schonberg <schonberg@adacore.com>
2672
2673 * sem_elim.adb (Check_Eliminated): Handle new improved eliminate
2674 information: no need for full scope check.
2675 (Eliminate_Error): Do not emit error in a generic context.
2676
26772009-04-29 Ed Falis <falis@adacore.com>
2678
2679 * adaint.c (__gnat_rmdir): return error code if VTHREADS is defined.
2680 VxWorks 653 POS does not support rmdir.
2681
26822009-04-29 Matteo Bordin <bordin@adacore.com>
2683
2684 * s-stausa.adb, s-stausa.ads: Get_Usage_Range: changing the way
2685 results are printed.
2686
91c2cbdb
AC
26872009-04-29 Arnaud Charlet <charlet@adacore.com>
2688
2689 * s-taskin.adb (Initialize): Remove pragma Warnings Off and remove
2690 unused assignment.
2691
26922009-04-29 Thomas Quinot <quinot@adacore.com>
2693
2694 * make.adb: Minor reformatting.
2695 Minor code reorganization throughout.
2696
26972009-04-29 Matteo Bordin <bordin@adacore.com>
2698
2699 * s-stausa.ads: Changed visibility of type Task_Result: moved to
2700 public part to give application visibility over it.
2701 This is for future improvement and to build a public API on top of it.
2702 Changed record components name of type Task_Result to reflect the new
2703 way of reporting.
2704
2705 * s-stausa.adb: Actual_Size_Str changed to reflect the new way of
2706 reporting Stack usage.
2707
2708 * gnat_ugn.texi: Update doc of stack usage report.
2709
2710 * g-tastus.ads, s-stusta.ads, s-stusta.adb: New files.
2711
2712 * Makefile.rtl: Add new run-time files.
2713
6d47b1e3
PO
27142009-04-29 Pascal Obry <obry@adacore.com>
2715
2716 * initialize.c: Do not expand quoted arguments.
2717
d45871da
EB
27182009-04-29 Emmanuel Briot <briot@adacore.com>
2719
2720 * prj-ext.adb, prj.adb, prj.ads: Fix memory leaks.
2721
2722 * clean.adb (Ultimate_Extension_Of): removed, since duplicate of
2723 Prj.Ultimate_Extending_Project_Of
2724
4f87ded3
ES
27252009-04-29 Ed Schonberg <schonberg@adacore.com>
2726
2727 * exp_ch7.adb (Build_Final_List): If the designated type is a Taft
2728 Amendment type, add the with_clause for Finalization.List_Controller
2729 only if the current context is a package body.
2730
349ff68f
AC
27312009-04-29 Thomas Quinot <quinot@adacore.com>
2732
2733 * sem_ch12.adb: Minor reformatting
2734
2735 * sem_aggr.adb: Minor reformatting
2736
2737 * sem_ch6.adb, sem_cat.ads: Minor reformatting
2738
2739 * sem_ch10.adb, gnat1drv.adb, prj-nmsc.adb: Minor reformatting
2740
27412009-04-29 Quentin Ochem <ochem@adacore.com>
2742
2743 * prj.ads (Source_Id): Now general pointer type.
2744
d81b4bfe
TQ
27452009-04-29 Thomas Quinot <quinot@adacore.com>
2746
2747 * exp_ch7.adb, rtsfind.adb: Minor reformatting
2748
2749 * sem_res.adb: Minor reformatting
2750
4342eda9
TQ
27512009-04-29 Thomas Quinot <quinot@adacore.com>
2752
2753 * sem_res.adb (Static_Concatenation): An N_Op_Concat with static
2754 operands is static only if it is a predefined concatenation operator.
2755
2756 * sem_util.adb: Minor reformatting
2757
2758 * sem_ch12.adb (Save_References): When propagating semantic information
2759 from generic copy back to generic template, for the case of an
2760 identifier that has been rewritten to an explicit dereference whose
2761 prefix is either an object name or a parameterless funcion call
2762 denoting a global object or function, properly capture the denoted
2763 global entity: perform the corresponding rewriting in the template,
2764 and point the rewritten identifier to the correct global entity (not
2765 to the associated identifier in the generic copy).
2766
0b8074ed
AC
27672009-04-29 Robert Dewar <dewar@adacore.com>
2768
2769 * rtsfind.adb, prj-env.adb: Minor reformatting
2770 Minor code reorganization
2771
27722009-04-29 Emmanuel Briot <briot@adacore.com>
2773
2774 * make.adb: Fix comment
2775
2776 * prj.adb (Ultimate_Extending_Project_Of): Fix handling when no project
2777 is given as argument, as might happen in gnatmake.
2778
8f983e64
ES
27792009-04-29 Ed Schonberg <schonberg@adacore.com>
2780
2781 * sem_ch3.adb (Check_Abstract_Overriding): Improve error message when
2782 an abstract operation of a progenitor is not properly overridden by an
2783 operation of a derived synchronized type.
2784
132410cb
RD
27852009-04-29 Robert Dewar <dewar@adacore.com>
2786
2787 * mlib-prj.adb, mlib-tgt.adb, mlib-tgt.ads, prj-nmsc.adb,
2788 prj-proc.adb: Minor reformatting
2789 Minor code reorganization
2790
66713d62
AC
27912009-04-29 Bob Duff <duff@adacore.com>
2792
2793 * exp_ch7.adb (Build_Final_List): For an access type that designates a
2794 Taft Amendment type, if the access type needs finalization, make sure
2795 the implicit with clause for List_Controller occurs on the package spec.
2796
2797 * rtsfind.adb (Text_IO_Kludge): Fine tune the creation of implicit
2798 with's created for the pseudo-children of Text_IO and friends. In
2799 particular, avoid cycles, such as Ada.Wide_Text_IO.Integer_IO and
2800 Ada.Text_IO.Integer_IO both with-ing each other.
2801
2802 * sem.adb (Walk_Library_Items): Suppress assertion failure in certain
2803 oddball cases when pragma Extend_System is used.
2804
2805 * sem_ch12.adb (Get_Associated_Node): Prevent direct 'with' cycles in
2806 the case where a package spec instantiates a generic whose body with's
2807 this package, so Walk_Library_Items won't complain about cyclic with's.
2808
28092009-04-29 Emmanuel Briot <briot@adacore.com>
2810
2811 * gnatcmd.adb, prj-proc.adb, make.adb, mlib-prj.adb, prj.adb, prj.ads,
2812 prj-pp.adb, prj-pp.ads, makeutl.adb, clean.adb, prj-nmsc.adb,
2813 mlib-tgt.adb, mlib-tgt.ads, prj-util.adb, prj-env.adb, prj-env.ads
2814 (Project_Id): now a real pointer to Project_Data, instead of an index
2815 into the Projects_Table. This simplifies the API significantly, avoiding
2816 extra lookups in this table and the need to pass the Project_Tree_Ref
2817 parameter in several cases
2818
059caa3e
NS
28192009-04-29 Nicolas Setton <setton@adacore.com>
2820
2821 * gcc-interface/Makefile.in: Produce .dSYM files for shared libs on
2822 darwin.
2823
19440588
EB
28242009-04-25 Eric Botcazou <ebotcazou@adacore.com>
2825
2826 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Subtype>: Put
2827 back kludge.
2828
b178461a
RD
28292009-04-24 Robert Dewar <dewar@adacore.com>
2830
2831 * mlib-prj.adb, prj-env.adb, prj-nmsc.adb, prj-proc.adb, make.adb,
2832 clean.adb: Minor reformatting.
2833 Minor code reorganization and message improvement.
2834
e1c9f239
EB
28352009-04-24 Emmanuel Briot <briot@adacore.com>
2836
2837 * prj-proc.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-nmsc.ads
2838 (Alternate_Languages): now implemented as a malloc-ed list rather
2839 than through a table.
2840
c72a85f2
TQ
28412009-04-24 Thomas Quinot <quinot@adacore.com>
2842
2843 * sem_res.adb (Static_Concatenation): Simplify predicate to make it
2844 accurately handle cases such as "lit" & "lit" and
2845 "lit" & static_string_constant
2846
3563739b
AC
28472009-04-24 Emmanuel Briot <briot@adacore.com>
2848
2849 * prj-proc.adb, make.adb, mlib-prj.adb, prj.adb, prj.ads, clean.adb,
2850 prj-nmsc.adb, prj-env.adb (Project_List_Table, Project_Element):
2851 removed. Lists of projects are now implemented via standard malloc
2852 rather than through the table.
2853
28542009-04-24 Thomas Quinot <quinot@adacore.com>
2855
2856 * sem_ch12.adb: Minor reformatting
2857
2858 * g-trasym.adb: Minor reformatting
2859
2860 * exp_ch6.adb: Minor reformatting
2861
28622009-04-24 Robert Dewar <dewar@adacore.com>
2863
2864 * layout.adb (Layout_Type): For packed array type, copy unset
2865 size/alignment fields from the referenced Packed_Array_Type.
2866
28672009-04-24 Bob Duff <duff@adacore.com>
2868
2869 * lib-load.adb (Make_Instance_Unit): Revert previous change, no
2870 longer needed after sem_ch12 changes.
2871
2872 * sem.adb (Walk_Library_Items): Include with's in some debugging
2873 printouts.
2874
757240b3
AC
28752009-04-24 Emmanuel Briot <briot@adacore.com>
2876
2877 * prj.ads, prj-nmsc.adb (Unit_Project): removed, since in fact we were
2878 only ever using the Project field.
2879
28802009-04-24 Ed Schonberg <schonberg@adacore.com>
2881
2882 * sem_ch12.adb (Build_Instance_Compilation_Unit_Nodes): Do not set
2883 Body_Required on the generated compilation node. The new node is linked
2884 to its body, but both share the same file, so we do not set this flag
2885 on the new unit so as not to create a spurious dependency on a
2886 non-existent body in the ali file for the instance.
2887
28882009-04-24 Robert Dewar <dewar@adacore.com>
2889
2890 * make.adb: Minor reformatting
2891
aca53298
AC
28922009-04-24 Emmanuel Briot <briot@adacore.com>
2893
2894 * prj.adb, prj.ads, prj-nmsc.adb (Check_File, Record_Ada_Source,
2895 Add_Source): merge some code between those. In particular change where
2896 file normalization is done to avoid a few extra calls to
2897 Canonicalize_File_Name. This also removes the need for passing
2898 Current_Dir in a number of subprograms.
2899
29002009-04-24 Bob Duff <duff@adacore.com>
2901
2902 * lib-load.adb (Make_Instance_Unit): In the case where In_Main is
2903 False, assign the correct unit to the Cunit field of the new table
2904 entry. We want the spec unit, not the body unit.
2905
2906 * rtsfind.adb (Make_Unit_Name, Maybe_Add_With): Simplify calling
2907 interface for these.
2908 (Maybe_Add_With): Check whether we're trying to a with on the current
2909 unit, and avoid creating such directly self-referential with clauses.
2910 (Text_IO_Kludge): Add implicit with's for the generic pseudo-children of
2911 [[Wide_]Wide_]Text_IO. These are needed for Walk_Library_Items,
2912 and matches existing comments in the spec.
2913
2914 * sem.adb (Walk_Library_Items): Add various special cases to make the
2915 assertions pass.
2916
2917 * sem_ch12.adb (Build_Instance_Compilation_Unit_Nodes): Use Body_Cunit
2918 instead of Parent (N), for uniformity.
2919
6db828c3
AC
29202009-04-24 Robert Dewar <dewar@adacore.com>
2921
2922 * errout.ads: Minor reformatting
2923
29242009-04-24 Emmanuel Briot <briot@adacore.com>
2925
2926 * gnat_ugn.texi (Library Projects): add documentation on gnatmake's
2927 behavior when the project includes sources from multiple languages
2928
29292009-04-24 Vincent Celier <celier@adacore.com>
2930
2931 * prj.adb (Has_Foreign_Sources): Returns True in Ada_Only mode if there
2932 is a language other than Ada declared.
2933
2934 * makeutl.adb (Linker_Options_Switches): Call For_All_Projects with
2935 Imported_First set to True.
2936
a7a3cf5c
AC
29372009-04-24 Ed Schonberg <schonberg@adacore.com>
2938
2939 * sem_res.adb: additional optimization to inhibit creation of
2940 redundant transient scopes.
2941
29422009-04-24 Bob Duff <duff@adacore.com>
2943
2944 * rtsfind.ads: Minor comment fix
2945
29462009-04-24 Emmanuel Briot <briot@adacore.com>
2947
2948 * prj-proc.adb, prj-nmsc.adb (Find_Ada_Sources,
2949 Get_Path_Name_And_Record_Ada_Sources): merged, since these were
2950 basically doing the same work (for explicit or implicit sources).
2951 (Find_Explicit_Sources): renamed to Find_Sources to better reflect its
2952 role. Rewritten to share some code (testing that all explicit sources
2953 have been found) between ada_only and multi_language modes.
2954
29552009-04-24 Jerome Lambourg <lambourg@adacore.com>
2956
2957 * sem_prag.adb (Check_Form_Of_Interface_Name): Allow space in Ext_Name
2958 for CLI imported types.
2959 (Analyze_Pragma): Allow CIL or Java imported functions returning
2960 access-to-subprogram types.
2961
2324b3fd
EB
29622009-04-24 Emmanuel Briot <briot@adacore.com>
2963
2964 * make.adb, prj.adb, prj.ads, makeutl.adb, makeutl.ads:
2965 (Project_Data.Dir_Path): field removed, since it can be computed
2966 directly from .Directory, and is needed only once when processing the
2967 project is buildgpr.adb or make.adb
2968
8eaf1723
RD
29692009-04-24 Robert Dewar <dewar@adacore.com>
2970
2971 * prj-env.adb, prj-proc.adb, prj.adb, prj.ads,
2972 rtsfind.adb: Minor reformatting.
2973 Minor code reorganization
2974
04f33e7b
AC
29752009-04-24 Arnaud Charlet <charlet@adacore.com>
2976
2977 * mlib-prj.adb: Use friendlier english identifier.
2978
2979 * gnatcmd.adb, make.adb: Use better english identifiers.
2980
29812009-04-24 Robert Dewar <dewar@adacore.com>
2982
2983 * clean.adb: Minor reformatting
2984
d1f453b7
RD
29852009-04-24 Robert Dewar <dewar@adacore.com>
2986
2987 * einfo.adb (OK_To_Rename): New flag
2988
2989 * einfo.ads (OK_To_Rename): New flag
2990
2991 * exp_ch3.adb (Expand_N_Object_Declaration): Rewrite as renames if
2992 OK_To_Rename set.
2993
2994 * exp_ch4.adb (Expand_Concatenate): Mark temp variable OK_To_Rename
2995
2996 * sem_ch7.adb (Uninstall_Declarations): Allow for renames from
2997 OK_To_Rename.
2998
8b9890fa
EB
29992009-04-24 Emmanuel Briot <briot@adacore.com>
3000
3001 * prj-proc.adb, make.adb, mlib-prj.adb, prj.adb, prj.ads, makeutl.adb,
3002 clean.adb, prj-nmsc.adb, prj-env.adb, prj-env.ads (Project_Data.Seen):
3003 field removed. This is not a property of the
3004 project, just a boolean used to traverse the project tree, and storing
3005 it in the structure prevents doing multiple traversal in parallel.
3006 (Project_Data.Checked): also removed, since it was playing the same role
3007 as Seen when we had two nested loops, and this is no longer necessary
3008 (For_All_Imported_Projects): removed, since in fact there was already
3009 the equivalent in For_Every_Project_Imported. The latter was rewritten
3010 to use a local hash table instead of Project_Data.Seen
3011 Various loops were rewritten to use For_Every_Project_Imported, thus
3012 removing the need for Project_Data.Seen. This avoids a lot of code
3013 duplication
3014
76e776e5
AC
30152009-04-24 Ed Schonberg <schonberg@adacore.com>
3016
3017 * sem_res.adb (Resolve_Actuals): Do not create blocks around code
3018 statements, even though the actual of the call is a concatenation,
3019 because the argument is static, and we want to preserve warning
3020 messages about sequences of code statements that are not marked
3021 volatile.
3022
3023 * sem_warn.adb: remove obsolete comment about warning being obsolete
3024
3025 * s-tasren.adb (Task_Do_Or_Queue): If a timed entry call is being
3026 requeued and the delay has expired while within the accept statement
3027 that executes the requeue, do not perform the requeue and indicate that
3028 the timed call has been aborted.
3029
30302009-04-24 Emmanuel Briot <briot@adacore.com>
3031
3032 * mlib-prj.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb
3033 (Has_Ada_Sources, Has_Foreign_Sources): new subprograms
3034 (Project_Data.Ada_Sources_Present, Foreign_Sources_Present): removed,
3035 since they can be computed from the above.
3036
481f29eb
VC
30372009-04-24 Vincent Celier <celier@adacore.com>
3038
3039 * gnatcmd.adb: Call Prj.Env.Initialize with the Project_Tree
3040
3041 * prj-env.adb: Move all global variables to the private part of the
3042 project tree data.
3043 Access these new components instead of the global variables no longer
3044 in existence.
3045 (Add_To_Path): New Project_Tree_Ref parameter, to access the new
3046 components that were previously global variables.
3047
3048 * prj-env.ads (Initialize): New Project_Tree_Ref parameter
3049 (Set_Mapping_File_Initial_State_To_Empty): New Project_Tree_Ref
3050 parameter.
3051
3052 * prj-nmsc.adb (Compute_Unit_Name): New Project_Tree_Ref parameter to
3053 be able to call Set_Mapping_File_Initial_State_To_Empty with it.
3054
3055 * prj.adb (Initialize): Do not call Prj.Env.Initialize
3056 (Reset): Do not call Prj.Env.Initialize. Instead, initialize the new
3057 components in the private part of the project tree data.
3058
3059 * prj.ads (Private_Project_Tree_Data): new components moved from
3060 Prj.Env: Current_Source_Path_File, Current_Object_Path_File,
3061 Ada_Path_Buffer, Ada_Path_Length, Ada_Prj_Include_File_Set,
3062 Ada_Prj_Objects_File_Set, Fill_Mapping_File.
3063
c54ab0b5
AC
30642009-04-24 Vincent Celier <celier@adacore.com>
3065
3066 * opt.ads (Unchecked_Shared_Lib_Imports): New Boolean flag.
3067
3068 * prj-nmsc.adb (Check_Library): No error for imports by shared library
3069 projects, when --unchecked-shared-lib-imports is used.
3070
30712009-04-24 Robert Dewar <dewar@adacore.com>
3072
3073 * sem_ch7.adb: Minor reformatting
3074
b3520ca0
AC
30752009-04-24 Tristan Gingold <gingold@adacore.com>
3076
3077 * s-osinte-darwin.adb, s-osinte-darwin.ads: lwp_self now returns the
3078 mach thread id.
3079
30802009-04-24 Emmanuel Briot <briot@adacore.com>
3081
3082 * prj-env.adb, prj-env.ads (Body_Path_Name_Of, Spec_Path_Name_Of,
3083 Path_Name_Of_Library_Unit_Body): rEmove unused subprograms.
3084 (For_All_Imported_Projects): new procedure
3085 (For_All_Source_Dirs, For_All_Object_Dirs): Rewritten based on the
3086 above rather than duplicating code.
3087
5d07d0cf
EB
30882009-04-24 Emmanuel Briot <briot@adacore.com>
3089
3090 * prj-proc.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb
3091 (Source_Id, Source_Data): use a real list to store sources rather than
3092 using an external table to store the elements. This makes code more
3093 efficient and more readable.
3094
5eed512d
EB
30952009-04-24 Emmanuel Briot <briot@adacore.com>
3096
3097 * prj-proc.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb
3098 (Source_Iterator): new type.
53b2323e
RH
3099 This removes the need for having the sources on three different
3100 lists at the project tree, project and language level. They are now
3101 on a single list.
5eed512d 3102
5876578b
EB
31032009-04-24 Emmanuel Briot <briot@adacore.com>
3104
3105 * gnatcmd.adb, prj.adb, prj.ads: Remove unused entities
3106
a9d17e32
ES
31072009-04-24 Ed Schonberg <schonberg@adacore.com>
3108
3109 * sem_warn.adb: Add comment on obsolete warning
3110
144c034d
AC
31112009-04-24 Arnaud Charlet <charlet@adacore.com>
3112
3113 * s-tassta.adb (Create_Task): Fix violation of locking rule.
3114
e0697153
EB
31152009-04-24 Emmanuel Briot <briot@adacore.com>
3116
3117 * prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb (Language_Index): renamed
3118 to Language_Ptr to better reflect its new implementation.
3119 (Project_Data.First_Languages_Processing): renamed to Languages now
3120 that the field with that name is no longer used
3121 (Project_Data.Languages): removed, no longer used, and duplicates
3122 information already available through First_Language_Processing.
3123 (Prj.Language_Index): now an actual pointer, instead of an index into
3124 a table. This makes the list somewhat more obvious, but more importantly
3125 removes the need to pass a pointer to the project_tree_data in a few
3126 places, and makes accessing the attributes of a languages more
3127 efficient.
3128
18e6d56a 31292009-04-24 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
53b2323e 3130 Thomas Quinot <quinot@adacore.com>
18e6d56a
RK
3131
3132 * fe.h (Set_Identifier_Casing): Add const to second parameter.
c91f9cd4 3133 * gcc-interface/misc.c (internal_error_function): Make copy of return
18e6d56a
RK
3134 from pp_formatted_text before assigning BUFFER to it.
3135 (gnat_init): Likewise for main_input_filename and gnat_argv.
3136 (gnat_printable_name): Remove cast from call to Set_Identifier_Casing.
3137
caa9d12a
EB
31382009-04-24 Eric Botcazou <ebotcazou@adacore.com>
3139
3140 * ttypes.ads (Target_Double_Float_Alignment): New variable.
3141 (Target_Double_Scalar_Alignment): Likewise.
3142 * get_targ.ads (Get_Strict_Alignment): Adjust external name.
3143 (Get_Double_Float_Alignment): New imported function.
3144 (Get_Double_Scalar_Alignment): Likewise.
3145 * layout.adb (Set_Elem_Alignment): Take into account specific caps for
3146 the alignment of "double" floating-point types and "double" or larger
3147 scalar types, as parameterized by Target_Double_Float_Alignment and
3148 Target_Double_Scalar_Alignment respectively.
3149 * gcc-interface/gigi.h (double_float_alignment): Declare.
3150 (double_scalar_alignment): Likewise.
3151 (is_double_float_or_array): Likewise.
3152 (is_double_scalar_or_array): Likewise.
3153 (get_target_double_float_alignment): Likewise.
3154 (get_target_double_scalar_alignment): Likewise.
3155 * gcc-interface/targtyps.c (get_strict_alignment): Rename into...
3156 (get_target_strict_alignment): ...this.
3157 (get_target_double_float_alignment): New function.
3158 (get_target_double_scalar_alignment): Likewise.
3159 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Signed_Integer_Subtype>:
3160 Test the presence of an alignment clause for under-aligned integer
3161 types. Take into account specific caps for the alignment of "double"
3162 floating-point types and "double" or larger scalar types, as
3163 parameterized by Target_Double_Float_Alignment and
3164 Target_Double_Scalar_Alignment respectively.
3165 (validate_alignment): Likewise.
3166 * gcc-interface/trans.c (Attribute_to_gnu) <Attr_Alignment>: Likewise.
3167 (gigi): Initialize double_float_alignment and double_scalar_alignment.
3168 * gcc-interface/utils.c (double_float_alignment): New global variable.
3169 (double_scalar_alignment): Likewise.
3170 (is_double_float_or_array): New predicate.
3171 (is_double_scalar_or_array): Likewise.
3172
1275de7d
EB
31732009-04-24 Eric Botcazou <ebotcazou@adacore.com>
3174
3175 * gcc-interface/utils2.c (build_cond_expr): Move SAVE_EXPR ahead of
3176 the conditional expression only if it is common to both arms.
3177
6f61bd41
EB
31782009-04-24 Eric Botcazou <ebotcazou@adacore.com>
3179
3180 * gcc-interface/gigi.h (build_call_alloc_dealloc): Update comment.
3181 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Pass correct
3182 arguments to build_allocator.
3183 * gcc-interface/utils2.c (build_call_alloc_dealloc): Update comment.
3184 Remove code handling special allocator and assert its uselessness.
3185
0d858698
EB
31862009-04-24 Eric Botcazou <ebotcazou@adacore.com>
3187
3188 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: If an
3189 alignment is specified, do not promote that of the component type
3190 beyond it.
3191 <E_Array_Subtype>: Likewise.
3192
bbaba73f
EB
31932009-04-23 Eric Botcazou <ebotcazou@adacore.com>
3194
3195 * einfo.ads (Is_True_Constant): Lift restriction on atomic objects.
3196 * sinfo.ads (Object Declaration): Likewise.
3197 (Assignment Statement): Likewise.
3198 * freeze.adb (Expand_Atomic_Aggregate): Remove useless test.
3199 Do not force Is_True_Constant to false on the temporary.
3200 (Freeze_Entity): Do not force Is_True_Constant to false on names on
3201 the RHS of object declarations.
3202 * gcc-interface/trans.c (lvalue_required_p) <N_Object_Declaration>:
3203 New case. Return 1 if the object is atomic.
3204 <N_Assignment_Statement>: Likewise.
3205
4fd78fe6
EB
32062009-04-23 Eric Botcazou <ebotcazou@adacore.com>
3207
3208 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Modular_Integer_Subtype>
3209 For packed array types, make the original array type a parallel type
3210 for the modular type and its JM wrapper if the type is bit-packed.
3211 <E_Array_Subtype>: Likewise. Do not generate the special XA parallel
3212 record type for packed array types. Remove kludge.
3213
c1abd261
EB
32142009-04-23 Eric Botcazou <ebotcazou@adacore.com>
3215
3216 * gcc-interface/gigi.h (create_index_type): Adjust head comment.
3217 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Signed_Integer_Subtype>:
3218 Use front-end predicates to compute signedness and precision.
3219 <E_String_Literal_Subtype>: Fold range type.
3220 Make sure to set longest_float_type_node to a scalar type.
3221 (elaborate_entity): Use consistent Constraint_Error spelling.
3222 (substitute_in_type) <INTEGER_TYPE>: Always copy the type.
3223 * gcc-interface/misc.c (gnat_print_type) <INTEGER_TYPE>: Use brief
3224 output for the modulus, if any.
3225 <ENUMERAL_TYPE>: Likewise for the RM size.
3226 * gcc-interface/trans.c (gnat_to_gnu): Use consistent Constraint_Error
3227 spelling.
3228 * gcc-interface/utils.c (finish_record_type): Really test the alignment
3229 of BLKmode bit-fields to compute their addressability.
3230 (create_index_type): Adjust comments.
3231 (create_param_decl): Create the biased subtype manually.
3232 * gcc-interface/utils2.c (build_component_ref): Use consistent
3233 Constraint_Error spelling.
3234
8713b7e4
EB
32352009-04-23 Eric Botcazou <ebotcazou@adacore.com>
3236
3237 * gcc-interface/cuintp.c: Clean up include directives.
3238 * gcc-interface/targtyps.c: Likewise.
3239 * gcc-interface/decl.c: Likewise.
3240 * gcc-interface/misc.c: Likewise.
3241 * gcc-interface/trans.c: Likewise.
3242 * gcc-interface/utils.c: Likewise.
3243 * gcc-interface/utils2.c: Likewise.
3244 * gcc-interface/Make-lang.in: Adjust dependencies accordingly.
3245
26383c64
EB
32462009-04-23 Eric Botcazou <ebotcazou@adacore.com>
3247
3248 * gcc-interface/ada-tree.h (union lang_tree_node): Use standard idiom.
3249 (SET_TYPE_LANG_SPECIFIC): Likewise. Fix formatting.
3250 (SET_DECL_LANG_SPECIFIC): Likewise.
3251 Reorder macros.
3252 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Signed_Integer_Subtype>:
3253 Update comment about use of build_range_type.
3254 <E_Array_Type, E_Array_Subtype>: Use consistent naming convention.
3255 <E_Array_Subtype>: Rework comments about TYPE_ACTUAL_BOUNDS and add
3256 check for other cases of overloading.
3257 * gcc-interface/trans.c (gigi): Use size_int in lieu of build_int_cst.
3258 * gcc-interface/utils2.c (build_call_raise): Fix off-by-one error.
3259 Use size_int in lieu of build_int_cst.
3260 (build_call_alloc_dealloc): Use build_index_2_type in lieu of
3261 build_range_type.
3262
b7babd5d
EB
32632009-04-22 Eric Botcazou <ebotcazou@adacore.com>
3264
3265 * gcc-interface/utils2.c (build_binary_op) <PLUS_EXPR>: If operation's
3266 type is an enumeral or a boolean type, change it to an integer type
3267 with the same mode and signedness.
3268
5225a138
EB
32692009-04-22 Eric Botcazou <ebotcazou@adacore.com>
3270
3271 * gcc-interface/utils.c (create_var_decl_1): Do not emit debug info
3272 for an external constant whose initializer is not absolute.
3273
32742009-04-22 Taras Glek <tglek@mozilla.com>
d1b38208
TG
3275
3276 * gcc-interface/ada-tree.h: Update GTY annotations to new syntax.
3277 * gcc-interface/trans.c: Likewise.
3278 * gcc-interface/utils.c: Likewise.
3279
a52fefe6
AC
32802009-04-22 Ed Schonberg <schonberg@adacore.com>
3281
3282 * sem_res.adb: Create block around procedure call when actual is a
3283 concatenation.
3284
32852009-04-22 Thomas Quinot <quinot@adacore.com>
3286
3287 * s-soflin.ads: Fix typos
3288
32892009-04-22 Vincent Celier <celier@adacore.com>
3290
3291 * prj-env.adb: Minor comment change
3292
3293 * prj-nmsc.adb (Check_Common): Add guard to avoid calling
3294 Get_Name_String with No_File.
3295
3296 * tempdir.adb (Create_Temp_File): Output diagnostic when temp file
3297 cannot be created even when not in verbose mode.
3298
2f1e0b61
EB
32992009-04-22 Emmanuel Briot <briot@adacore.com>
3300
3301 * make.adb, prj-env.adb, prj-env.ads, prj-nmsc.adb, prj.adb,
3302 prj.ads (Create_Mapping_File): merge the two versions for Ada_Only and
3303 Multi_Language modes, to avoid code duplication.
3304 (Project_Data.Include_Language): Removed.
3305
35afb012
AC
33062009-04-22 Vincent Celier <celier@adacore.com>
3307
3308 * tempdir.adb (Create_Temp_File): Add a diagnostic in verbose mode when
3309 the temporary file cannot be created, indicating the directory when the
3310 creation was attempted.
3311
33122009-04-22 Emmanuel Briot <briot@adacore.com>
3313
3314 * prj-env.adb, prj-env.ads (Create_Mapping_File): we need to compare
3315 the language names, not their indices.
3316
10d2a6f7
EB
33172009-04-22 Emmanuel Briot <briot@adacore.com>
3318
3319 * prj.ads, prj-nmsc.adb, prj-env.adb, prj-env.ads
3320 (Source_Data.Language_Name): Field removed.
3321
39d4e04a
EB
33222009-04-22 Emmanuel Briot <briot@adacore.com>
3323
3324 * prj.adb, prj.ads, prj-nmsc.adb (Project_Data.Unit_Based_Language_*):
3325 Two fields removed.
3326
f1eea135
EB
33272009-04-22 Emmanuel Briot <briot@adacore.com>
3328
3329 * prj-nmsc.adb (Check_Naming_Ada_Only): Properly initialize the
3330 separate_suffix to the same value as the body_suffix.
3331
d9c0e057
AC
33322009-04-22 Robert Dewar <dewar@adacore.com>
3333
3334 * prj.adb: Minor code reorganization
3335 Code clean up.
3336
3337 * prj-proc.adb: Minor code reorganization, clean up.
3338
3339 * prj-nmsc.adb: Minor reformatting
3340 Minor code reorganization
3341
3342 * gnat_ugn.texi: Add to doc on strict aliasing
3343
33442009-04-22 Pascal Obry <obry@adacore.com>
3345
3346 * s-osinte-mingw.ads: Rename Reserved field in CRITICAL_SECTION to
3347 SpinCount.
3348
3349 * s-tasini.adb: Minor reformatting.
3350
3351 * s-tassta.adb: Minor reformatting.
3352
ce30eccb
EB
33532009-04-22 Emmanuel Briot <briot@adacore.com>
3354
3355 * prj-proc.adb, prj-nmsc.adb (Check_Naming_Schemes): split into several
3356 smaller subprograms.
3357 Renamed to Check_File_Naming_Schemes to avoid confusion with the
3358 other Check_Naming_Schemes functions that plays a totally different
3359 role.
3360 (Check_Unit_Based_Lang, Check_File_Based_Lang): new subprograms,
3361 extracted from the above. These were partially rewritten to avoid
3362 unnecessary code and temporary variables.
3363 (Compute_Unit_Name): new subprogram, merge of Check_Unit_Based_Lang
3364 and Get_Unit (which for now still exist since they contain mode-specific
3365 code)
3366
347ab254
EB
33672009-04-22 Emmanuel Briot <briot@adacore.com>
3368
3369 * prj.ads, prj.adb, prj-nmsc.adb, prj-proc.adb (Recursive_Process):
3370 Remove duplicated code.
3371 (Canonical_Case_File_Name): new subprogram
3372 (Check_And_Normalize_Unit_Names): new subprogram
3373 (Write_Attr): new subprogram
3374 Better sharing of code
3375 (Check_Naming_Ada_Only, Check_Naming_Multi_Lang): new subprogram, to
3376 split Check_Naming and help find duplicated code
3377 (Check_Common): new subprogram, sharing code between ada_only and
3378 multi_language mode.
3379 (Naming_Data.Dot_Repl_Loc): field removed
3380
aa903780
EB
33812009-04-22 Emmanuel Briot <briot@adacore.com>
3382
3383 * prj-proc.adb, prj-nmsc.adb (Load_Naming_Exceptions): New subprogram.
3384 Minor refactoring to reduce the size of
3385 Process_Sources_In_Multi_Language_Mode.
3386 Avoid extra copied of Source_Data, which we found in the past could be
3387 quite slow.
3388 (Mark_Excluded_Sources): new subprogram.
3389 (Remove_Locally_Removed_Files_From_Units): merged into the above
3390 Refactors Process_Sources_In_Multi_Language_Mode to reduce its size,
3391 and allow better sharing of code between multi_lang and ada_only modes
3392 (Project_Extends): removed, since exact duplicate of Prj.Is_Extending
3393
95c05c62
EB
33942009-04-22 Emmanuel Briot <briot@adacore.com>
3395
3396 * prj-proc.adb, prj.adb, prj.ads (Project_Data.First_Referred_By):
3397 Removed, since unused.
3398
c9a1acdc
AC
33992009-04-22 Vincent Celier <celier@adacore.com>
3400
3401 * prj-attr.adb: New single project level attribute
3402 Separate_Run_Path_Options.
3403
3404 * prj-nmsc.adb (Process_Project_Level_Simple_Attributes): Process
3405 attribute Seperate_Run_Path_Options.
3406
3407 * prj.ads: (Project_Configuration): New Boolean component
3408 Separate_Run_Path_Options, defaulted to False.
3409
3410 * snames.ads-tmpl: New standard name Seperate_Run_Path_Options
3411
6d2a1120
RD
34122009-04-22 Robert Dewar <dewar@adacore.com>
3413
c9a1acdc
AC
3414 * sem_type.adb: Minor reformatting
3415
6d2a1120
RD
3416 * mlib.adb: Minor reformatting
3417
3418 * sem_aggr.adb: Minor reformatting. Defend against junk aggregate from
3419 syntax error.
3420
3b81743f
NS
34212009-04-22 Nicolas Setton <setton@adacore.com>
3422
3423 * link.c: Add flag __gnat_separate_run_path_options.
3424
3425 * mlib.adb (Separate_Run_Path_Options): New subprogram.
3426
3427 * mlib.ads (Separate_Run_Path_Options): Declare.
3428
3429 * gnatcmd.adb (Process_Link): Add support for emitting one "rpath"
3430 switch per directory, rather than one "rpath" switch listing all
3431 directories.
3432
3433 * gnatlink.adb (Process_Binder_File): Likewise.
3434
3435 * make.adb (Gnatmake): Likewise.
3436
3a69b5ff
AC
34372009-04-22 Hristian Kirtchev <kirtchev@adacore.com>
3438
3439 * exp_ch6.adb (Make_Build_In_Place_Call_In_Assignment): Code cleanup.
3440 Add a call to Move_Final_List when the target of the assignment is a
3441 return object that needs finalization and the expression is a
3442 controlled build-in-place function.
3443
34442009-04-22 Vincent Celier <celier@adacore.com>
3445
3446 * make.adb (Gnatmake, Bind_Step): call Set_Ada_Paths with
3447 Including_Libraries set to True.
3448
f3a67cfc
ES
34492009-04-22 Ed Schonberg <schonberg@adacore.com>
3450
3451 * lib-load.ads, lib-load.adb (Make_Child_Decl_Unit): New subprogram, to
3452 create a unit table entry for the subprogram declaration created for a
3453 child suprogram body that has no separate specification.
3454
3455 * sem_ch10.adb (Analyze_Compilation_Unit): For a child unit that is a
3456 subprogram body, call Make_Child_Decl_Unit.
3457
3458 * lib.adb (Get_Cunit_Unit_Number): Verify that an entry not yet in the
3459 table can only be the created specification of a child subprogram body
3460 that is the main unit, which has not been entered in the table yet.
3461
3462 * errout.adb (Output_Messages): Ignore created specification of a
3463 child subprogram body to prevent repeated listing of error messages.
3464
3465 * gnat1drv.adb (gnat1drv): The generated specification for a child
3466 subprogram body does not generate code.
3467
1ef4d0a8
AC
34682009-04-22 Arnaud Charlet <charlet@adacore.com>
3469
3470 * s-bitops.adb, s-bitops.ads (Raise_Error): Do not use Ada 05 syntax,
3471 since this unit is now part of bootstrap units, so must use Ada 95
3472 syntax only.
3473
34742009-04-22 Thomas Quinot <quinot@adacore.com>
3475
3476 * a-tasatt.adb: Minor reformatting
3477
34782009-04-22 Bob Duff <duff@adacore.com>
3479
3480 * s-stalib.ads: Remove "with System;" since we're inside System, so
3481 it's unnecessary.
3482
34832009-04-22 Vincent Celier <celier@adacore.com>
3484
3485 * prj-nmsc.adb (Add_Source): Always put the dependency file name in
3486 the source record, as there may be a dependency file even if no object
3487 file is created.
3488
1cb46af0
RD
34892009-04-22 Robert Dewar <dewar@adacore.com>
3490
1ef4d0a8 3491 * lib-load.adb: Minor reformatting
1cb46af0
RD
3492
3493 * lib-load.ads: Minor reformatting
3494
3495 * sinfo.ads: Minor reformatting
3496
218e53ff
BD
34972009-04-22 Bob Duff <duff@adacore.com>
3498
3499 * exp_pakd.adb: Minor comment fixes.
3500
3501 * sinfo.ads, par-load.adb, sem_ch10.adb, lib-load.ads, lib-load.adb
3502 sem_ch12.adb: Change the meaning of the Library_Unit attribute to
3503 include units containing instantiations, as well as units that are
3504 generic instantiations.
3505
3506 * sem.adb: Include dependents and corresponding specs/bodies in the
3507 unit walk.
3508
3509 * gcc-interface/Make-lang.in:
3510 sem now depends on s-bitops, because of the packed array of Booleans.
3511
feec4372
EB
35122009-04-22 Eric Botcazou <ebotcazou@adacore.com>
3513
3514 * gcc-interface/ada-tree.def: Fix formatting nits.
3515 (REGION_STMT): Delete.
3516 (HANDLER_STMT): Likewise.
3517 * gcc-interface/ada-tree.h: Fix formatting nits.
3518 (IS_STMT): Delete.
3519 (REGION_STMT_BODY): Likewise.
3520 (REGION_STMT_HANDLE): Likewise.
3521 (REGION_STMT_BLOCK): Likewise.
3522 (HANDLER_STMT_ARG): Likewise.
3523 (HANDLER_STMT_LIST): Likewise.
3524 (HANDLER_STMT_BLOCK): Likewise.
3525 * gcc-interface/gigi.h (fp_prec_to_size): Update comment.
3526 (fp_size_to_prec): Likewise.
3527 (largest_move_alignment): Delete.
3528 (gnat_compute_largest_alignment): Likewise.
3529 Fix minor nits.
3530 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Signed_Integer_Subtype>:
3531 Remove redundant code.
3532 <E_Array_Type>: Remove redundant assert.
3533 <E_Array_Subtype>: Exit early from index computation in pathological
3534 cases.
3535 Rewrite conditional assignment.
3536 (make_type_from_size): Likewise.
3537 * gcc-interface/misc.c (largest_move_alignment): Delete.
3538 (gnat_finish_incomplete_decl): Likewise.
3539 (LANG_HOOKS_FINISH_INCOMPLETE_DECL): Likewise.
3540 (asm_out_file): Likewise
3541 (gnat_print_type) <INTEGER_TYPE>: Fall through to ENUMERAL_TYPE case.
3542 (gnat_dwarf_name): Move around.
3543 * gcc-interface/trans.c (Attribute_to_gnu): Fix minor nits.
3544 (gigi): Remove call to gnat_compute_largest_alignment.
3545 * utils.c (create_field_decl): Rewrite conditional assignment.
3546 Fix minor nits.
3547
a8e05f92
EB
35482009-04-22 Eric Botcazou <ebotcazou@adacore.com>
3549
3550 * gcc-interface/decl.c (gnat_to_gnu_entity): Compute is_type predicate
3551 on entry. Defer common processing for types. Reorder and clean up.
3552 Compute the equivalent GNAT node and the default size for types only.
3553 <E_Modular_Integer_Type>: Directly use Esize for the type's precision.
3554 <E_Access_Type>: For an unconstrained designated type, do not pretend
3555 that a dummy type is always made.
3556 <all> Fix nits in comments.
3557 (validate_size): Fix formatting nits and comments.
3558 (set_rm_size): Likewise.
3559 * gcc-interface/utils.c (create_param_decl): Replace bogus argument
3560 passed to TARGET_PROMOTE_PROTOTYPES hook.
3561
0fb2335d
EB
35622009-04-22 Eric Botcazou <ebotcazou@adacore.com>
3563
3564 * fe.h (Get_External_Name): Declare.
3565 * gcc-interface/gigi.h (concat_id_with_name): Rename to...
3566 (concat_name): ...this.
3567 * gcc-interface/decl.c (gnat_to_gnu_entity): Rename gnu_entity_id to
3568 gnu_entity_name and adjust for above renaming.
3569 <E_Access_Type>: Use create_concat_name to get the name of the various
3570 types associated with unconstrained array types.
3571 (make_aligning_type): Adjust for above renaming.
3572 (maybe_pad_type): Likewise.
a8e05f92 3573 (components_to_record): Likewise. Use get_identifier_with_length for
0fb2335d
EB
3574 the encoding of the variant.
3575 (get_entity_name): Use get_identifier_with_length.
a8e05f92 3576 (create_concat_name): Likewise. Use Get_External_Name if no suffix.
0fb2335d
EB
3577 Do not fiddle with Name_Buffer.
3578 (concat_id_with_name): Rename to...
a8e05f92 3579 (concat_name): ...this. Use get_identifier_with_length. Do not fiddle
0fb2335d
EB
3580 with Name_Buffer.
3581 * gcc-interface/utils.c (rest_of_record_type_compilation): Adjust for
3582 above renaming.
3583
ad41bd84
JM
35842009-04-21 Joseph Myers <joseph@codesourcery.com>
3585
3586 * ChangeLog, ChangeLog.ptr, ChangeLog.tree-ssa: Add copyright and
3587 license notices.
3588
ca80e52b
EB
35892009-04-21 Eric Botcazou <ebotcazou@adacore.com>
3590
3591 * gcc-interface/trans.c (gnat_to_gnu): Do not overwrite location info.
3592
b4680ca1
EB
35932009-04-21 Eric Botcazou <ebotcazou@adacore.com>
3594
71b495a2 3595 * gcc-interface/ada-tree.h (TYPE_RM_SIZE_NUM): Delete.
b4680ca1 3596 (TYPE_RM_SIZE): Access TYPE_LANG_SLOT_1 directly for integral types.
71b495a2
EB
3597 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Modular_Integer_Type>:
3598 Remove useless support code for packed array types and assert its
3599 uselessness.
b4680ca1
EB
3600 <E_Signed_Integer_Subtype>: Reuse entity identifier in more places and
3601 adjust for TYPE_RM_SIZE change.
3602 <all> Fix nits in comments. Use Original_Array_Type accessor instead
3603 of Associated_Node_For_Itype accessor for packed array types.
3604 (make_packable_type): Likewise.
3605 (maybe_pad_type): Likewise.
3606 (set_rm_size): Likewise. Rework conditional statement. Adjust for
3607 TYPE_RM_SIZE change.
3608 (make_type_from_size): Adjust for TYPE_RM_SIZE change.
3609 (rm_size): Fix nits in comments. Rework conditional statements.
71b495a2
EB
3610 * gcc-interface/misc.c (gnat_print_type): Adjust for TYPE_RM_SIZE
3611 change.
3612 * gcc-interface/trans.c (Attribute_to_gnu): Fix nits in comments.
3613 * gcc-interface/utils.c (gnat_init_decl_processing): Use more
3614 appropriate function to initialize the size_type_node. Adjust for
3615 TYPE_RM_SIZE change.
b4680ca1 3616
a962b0a1
EB
36172009-04-21 Eric Botcazou <ebotcazou@adacore.com>
3618
3619 * gcc-interface/decl.c (gnat_to_gnu_entity): Do not set force_global
3620 for imported subprograms.
3621
2f283818
EB
36222009-04-21 Eric Botcazou <ebotcazou@adacore.com>
3623
3624 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Do not make
3625 constant objects covered by 13.3(19) volatile.
3626
ac53d5f2
EB
36272009-04-21 Eric Botcazou <ebotcazou@adacore.com>
3628
3629 * gcc-interface/utils.c (create_type_decl): Do not pass declarations
3630 of dummy fat pointer types to the debug back-end.
3631
6e0f0975
EB
36322009-04-20 Eric Botcazou <ebotcazou@adacore.com>
3633
3634 * gcc-interface/decl.c (gnat_to_gnu_entity): Rewrite Esize calculation.
3635 <E_Signed_Integer_Subtype>: Set the RM size on the integer type
3636 before wrapping it up in the record type. Do not overwrite the
3637 Ada size of the record type with the Esize.
3638
c2efda0d
EB
36392009-04-20 Eric Botcazou <ebotcazou@adacore.com>
3640
3641 * gcc-interface/trans.c (unchecked_conversion_lhs_nop): New predicate.
3642 (gnat_to_gnu) <N_Unchecked_Type_Conversion>: Return the expression
3643 if the conversion is on the LHS of an assignment and a no-op.
3644 <all> Do not convert the result to the result type if the Parent
3645 node is such a conversion.
3646
77022fa8
EB
36472009-04-20 Eric Botcazou <ebotcazou@adacore.com>
3648
3649 * gcc-interface/ada-tree.h (DECL_HAS_REP_P): Delete.
3650 * gcc-interface/decl.c (gnat_to_gnu_entity): Add support for extension
3651 of types with unknown discriminants.
3652 (substitute_in_type): Rewrite and restrict to formal substitutions.
3653 * gcc-interface/utils.c (create_field_decl): Do not set DECL_HAS_REP_P.
3654 (update_pointer_to): Update comment.
3655
e69614ad
AC
36562009-04-20 Ed Schonberg <schonberg@adacore.com>
3657
3658 * sem_ch8.adb (Use_One_Package): In an instance, if two
3659 potentially_use_visible and non-overloadable homonyms are available
3660 from the actuals of distinct formal packages, retain the current one,
3661 which was visible in the generic, to prevent spurious visibility
3662 errors.
3663 (End_Use_Package): Restore use_visibility when needed.
3664
36652009-04-20 Sergey Rybin <rybin@adacore.com>
3666
3667 * gnat_ugn.texi, vms_data.ads: Update doc.
3668
32838704
AC
36692009-04-20 Arnaud Charlet <charlet@adacore.com>
3670
3671 * gcc-interface/Make-lang.in: Update dependencies
3672
3673 * gcc-interface/Makefile.in: Link run-time against winsock2 lib under
3674 Windows.
3675
37951d8e
AC
36762009-04-20 Robert Dewar <dewar@adacore.com>
3677
3678 * checks.ads: Fix documentation of range check handling
3679
36802009-04-20 Ed Schonberg <schonberg@adacore.com>
3681
3682 * sem_ch8.adb (Use_One_Type): Use proper entity on warning message for
3683 a redundant use_type clause.
3684
5d5832bc
AC
36852009-04-20 Robert Dewar <dewar@adacore.com>
3686
3687 * sem_attr.adb (Eval_Attribute, case Length): Catch more cases where
3688 this attribute can be evaluated at compile time.
3689 (Eval_Attribute, case Range_Length): Same improvement
3690
3691 * sem_eval.ads, sem_eval.adb (Compile_Time_Compare): New procedure
3692
36932009-04-20 Ed Schonberg <schonberg@adacore.com>
3694
3695 * sem_ch6.adb (Analye_Subprogram_Declaration): Code reorganization,
3696 for better handling of null procedures.
3697 (Check_Overriding_Indicator): Do not emit a warning on a missing
3698 overriding indicator on an operator when the type of which the operator
3699 is a primitive is private.
3700
97a8fb16
AC
37012009-04-20 Bob Duff <duff@adacore.com>
3702
3703 * sem.adb, gnat1drv.adb, debug.adb: Use the -gnatd.W switch to control
3704 debugging output.
3705
37062009-04-20 Robert Dewar <dewar@adacore.com>
3707
3708 * sem_attr.adb: Minor reformatting
3709
3710 * gnatcmd.adb: Minor reformatting
3711
7340e432
AC
37122009-04-20 Ed Schonberg <schonberg@adacore.com>
3713
3714 * sem_ch4.adb (Analyze_User_Defined_Binary_Op): If left operand is
3715 overloaded and one interpretation matches the context, label the
3716 operand with the type of first formal.
3717
37182009-04-20 Bob Duff <duff@adacore.com>
3719
3720 * debug.ads: Minor comment fix.
3721
3722 * debug.adb: Minor comment fixes.
3723
37242009-04-20 Javier Miranda <miranda@adacore.com>
3725
3726 * rtsfind.ads (RE_Null_Id): New entity of package Ada.Exceptions
3727
3728 * exp_ch6.adb (Expand_Inlined_Call): Undo previous patch.
3729
3730 * exp_ch11.adb (Expand_N_Raise_Statement): When the raise stmt
3731 is expanded into a call to Raise_Exception, avoid passing the
3732 exception-name'identity in runtimes in which this argument
3733 is not used.
3734
bf06d37f
AC
37352009-04-20 Jerome Lambourg <lambourg@adacore.com>
3736
3737 * impunit.adb: Add i-cil and i-cilobj packages, now needed by the
3738 generated bindings for cil.
3739
37402009-04-20 Ed Schonberg <schonberg@adacore.com>
3741
3742 * sem_aggr.adb (Resolve_Record_Aggregate): If the type has unknown
3743 discriminants, collect components from the Underlying_Record_View,
3744 which will be used in the expansion of the aggregate into assignments.
3745
3746 * sem_ch3.adb: Do not label derived type with unknown discriminants as
3747 having a private declaration.
3748
58a9d876
AC
37492009-04-20 Ed Schonberg <schonberg@adacore.com>
3750
3751 * exp_util.adb (Expand_Subtype_From_Expr): use the
3752 underlying_record_view when available, to create the proper constrained
3753 subtype for an object of a derived type with unknown discriminants.
3754
37552009-04-20 Javier Miranda <miranda@adacore.com>
3756
3757 * exp_ch6.adb (Expand_Inlined_Call): Avoid generation of temporaries for
3758 formals that have pragma unreferenced.
3759
e34ca162
AC
37602009-04-20 Pascal Obry <obry@adacore.com>
3761
3762 * a-direct.adb (To_Lower_If_Case_Insensitive): Removed.
3763 Remove all calls to To_Lower_If_Case_Insensitive to preserve
3764 the pathname original casing.
3765
37662009-04-20 Robert Dewar <dewar@adacore.com>
3767
3768 * g-trasym.adb: Minor reformatting
3769
3770 * s-os_lib.adb: Minor reformatting
3771
3772 * sem.adb: Minor reformatting
3773 Minor code reorganization
3774
3775 * sem_ch3.adb: Minor reformatting
3776
3777 * sem_ch4.adb: Minor reformatting
3778
3779 * sem_ch8.adb: Minor reformatting
3780
3781 * sem_type.adb: Minor reformatting
3782
ee9aa7b6
AC
37832009-04-20 Javier Miranda <miranda@adacore.com>
3784
3785 * sem_disp.adb (Find_Dispatching_Type): For subprograms internally
3786 generated by derivations of tagged types use the aliased subprogram a
3787 reference to locate their controlling type.
3788
37892009-04-20 Tristan Gingold <gingold@adacore.com>
3790
3791 * g-trasym.adb: Set size of result buffer before calling
3792 convert_address.
3793
37942009-04-20 Ed Schonberg <schonberg@adacore.com>
3795
3796 * sem_ch4.adb (Valid_Candidate): When checking whether a prefixed call
3797 to a function returning an array can be interpreted as a call with
3798 defaulted parameters whose result is indexed, take into account the
3799 types of all the indices of the array result type.
3800
38012009-04-20 Pascal Obry <obry@adacore.com>
3802
3803 * a-direct.adb, s-os_lib.adb: Minor reformatting.
3804
bddd6058
AC
38052009-04-20 Ed Schonberg <schonberg@adacore.com>
3806
3807 * sem_ch8.adb (Analyze_Object_Renaming): Proper checks on incorrect
3808 null exclusion qualifiers for object renaming declarations.
3809
38102009-04-20 Nicolas Roche <roche@adacore.com>
3811
3812 * sysdep.c (__gnat_localtime_tzoff): on Windows, manipulated times are
3813 unsigned long long. So compare local_time and utc_time before computing
3814 the difference.
3815
38162009-04-20 Eric Botcazou <ebotcazou@adacore.com>
3817
3818 * sem_ch3.adb (Build_Derived_Private_Type): Insert the declaration
3819 of the Underlying_Record_View before that of the derived type.
3820
3821 * exp_ch3.adb (Expand_Record_Extension): Do not special-case types
3822 with unknown discriminants with regard to the parent subtype.
3823
4f18d860
BD
38242009-04-20 Bob Duff <duff@adacore.com>
3825
3826 * sem.adb (Semantics, Walk_Library_Items): Include dependents of bodies
3827 that are not included. This is necessary if the main unit is a generic
3828 instantiation.
3829
3830 * gnat1drv.adb (Gnat1drv): Comment out the call to Check_Library_Items,
3831 because it doesn't work if -gnatn is used.
3832
5987e59c
AC
38332009-04-20 Ed Schonberg <schonberg@adacore.com>
3834
3835 * rtsfind.adb (RTE, RTE_Record_Component): In
3836 Configurable_Run_Time_Mode, do not enable front-end inlining.
3837
38382009-04-20 Thomas Quinot <quinot@adacore.com>
3839
3840 * g-socthi-vms.adb: Remove now unnecessary WITH clause on
3841 System.Address_To_Access_Conversions.
3842
38432009-04-20 Ed Schonberg <schonberg@adacore.com>
3844
3845 * sem.adb: Guard against ill-formed subunits.
3846
38472009-04-20 Bob Duff <duff@adacore.com>
3848
3849 * output.adb (Flush_Buffer): Do not indent blank lines.
3850 (Ignore_Output): New procedure for output suppression.
3851
38522009-04-20 Hristian Kirtchev <kirtchev@adacore.com>
3853
3854 * a-calfor.adb (Image): Subtract 0.5 from the sub second component only
3855 when it is positive. This avoids a potential constraint error raised
3856 by the conversion to Natural.
3857
38582009-04-20 Gary Dismukes <dismukes@adacore.com>
3859
3860 * exp_ch5.adb (Expand_Assign_Array): For the case where the assignment
3861 involves a target that has a specified address, don't set Forward_OK
3862 and Backward_OK to False if the rhs is an aggregate, since overlap
3863 can't occur.
3864
38652009-04-20 Ed Schonberg <schonberg@adacore.com>
3866
451800a0 3867 * sem_ch8.adb (Analyze_Object_Renaming): Reject ambiguous expressions
5987e59c
AC
3868 in an object renaming declaration when the expected type is an
3869 anonymous access type.
3870
3871 * sem_type.adb (Disambiguate): Use anonymousness to resolve a potential
3872 ambiguity when one interpretation is an anonymous access type and the
3873 other is a named access type, and the context itself is anonymous
3874
38752009-04-20 Thomas Quinot <quinot@adacore.com>
3876
3877 * einfo.ads: Minor comment rewording
3878
3879 * sem_aggr.adb: Minor comment rewording
3880
3881 * sem_ch3.adb, sem_ch6.adb: Minor reformatting
3882
38832009-04-20 Pascal Obry <obry@adacore.com>
3884
3885 * adaint.c (__gnat_is_readable_file): Check for file existence
3886 when not using ACL (always the case on remote drives).
3887
8737a29a
AC
38882009-04-20 Robert Dewar <dewar@adacore.com>
3889
3890 * sinfo.ads: Minor comment fixes
3891
3892 * exp_disp.adb: Minor reformatting
3893
3894 * gnat1drv.adb: Minor reformatting
3895
3896 * output.adb: Minor reformatting
3897
3898 * s-vxwext-kernel.ads: Minor reformatting
3899
3900 * sem.ads: Minor reformatting
3901
3902 * sem.adb: Minor reformatting
3903
3904 * sem_elim.adb: Minor reformatting
3905
3906 * uname.ads: Minor reformatting
3907
39082009-04-20 Eric Botcazou <ebotcazou@adacore.com>
3909
3910 * init.c (__gnat_adjust_context_for_raise): On x86{-64}/Linux, add
3911 a small dope of 4 words to the adjustment to the stack pointer.
3912
39132009-04-20 Thomas Quinot <quinot@adacore.com>
3914
3915 * xoscons.adb: generate C header s-oscons.h in
3916 addition to s-oscons.ads.
3917
3918 * socket.c: On VMS, use s-oscons.h.
3919
3920 * sem_ch3.adb: Minor reformatting
3921
3922 * exp_ch9.adb: Minor reformatting
3923
85087bcb
EB
39242009-04-20 Eric Botcazou <ebotcazou@adacore.com>
3925
3926 * gcc-interface/trans.c (check_for_eliminated_entity): Remove.
3927 (Attribute_to_gnu): Do not call check_for_eliminated_entity.
3928 (call_to_gnu): Likewise.
3929
ecc3905a
EB
39302009-04-20 Eric Botcazou <ebotcazou@adacore.com>
3931
3932 * gcc-interface/trans.c (gigi): Declare the name of the compilation
3933 unit as the first global name at the very beginning.
3934
2907036d
TQ
39352009-04-20 Thomas Quinot <quinot@adacore.com>
3936
3937 * socket.c, g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.ads,
3938 s-oscons-tmplt.c, gsocket.h, g-socthi-mingw.ads, g-socthi.ads,
3939 g-sothco.ads (__gnat_inet_pton): Needs to be enabled for HP-UX as well,
3940 since HP-UX supports neither inet_aton nor inet_pton (altough the
3941 latter is part of the Single UNIX Specification!).
3942 So reorganize code, and share C implementation based on inet_addr(3)
3943 with VMS (instead of having a VMS specific Ada implementation in
3944 g-socthi-vms.adb).
3945
d5063351
AC
39462009-04-20 Gary Dismukes <dismukes@adacore.com>
3947
3948 * osint-c.ads, osint-c.adb (Get_Object_Output_File_Name): New function
3949 to return the object file name saved by Set_Object_Output_File_Name.
3950
39512009-04-20 Emmanuel Briot <briot@adacore.com>
3952
3953 * g-comlin.adb (Initialize_Option_Scan): Fix initialization of parsers
3954 for the standard command line, when argc has been modified since the
3955 start of the application.
3956
39572009-04-20 Thomas Quinot <quinot@adacore.com>
3958
3959 * socket.c (__gnat_inet_pton, Windows case): Adjust return value.
3960 WSAStringToAddress returns 0 for success and SOCKET_ERROR for failure.
3961
3edf2f76
AC
39622009-04-20 Bob Duff <duff@adacore.com>
3963
3964 * gnat1drv.adb (Gnat1drv): Put call to Check_Library_Items inside
3965 pragma Debug.
3966
39672009-04-20 Ed Schonberg <schonberg@adacore.com>
3968
3969 * exp_ch9.adb (Build_Protected_Sub_Specification): Mark generated
3970 subprogram as Eliminated when source operation is.
3971 (Expand_N_Protected_Type_Declaration): Generate protected and
3972 unprotected specs for the internal operations, even if the source
3973 operation is eliminated.
3974
39752009-04-20 Hristian Kirtchev <kirtchev@adacore.com>
3976
3977 * exp_ch3.adb (Make_Predefined_Primitive_Specs,
3978 Predefined_Primitive_Bodies): Do not create the declarations and bodies
3979 of the primitive subprograms associated with dispatching select
3980 statements when the runtime is in configurable mode.
3981
39822009-04-20 Ed Falis <falis@adacore.com>
3983
3984 * s-vxwext-kernel.ads (tickGet): Use tick64Get.
3985
4fd1e8b0
AC
39862009-04-20 Thomas Quinot <quinot@adacore.com>
3987
3988 * s-oscons-tmplt.c: Add support for generating a dummy version of
3989 s-oscons.ads providing all possible constants.
3990
3991 * g-socthi-mingw.ads: Fix calling convention for __gnat_inet_pton.
3992
3993 * socket.c (__gnat_inet_pton): On Windows make sure we always use the
3994 ANSI version (not the UNICODE version) of WSAStringToAddress.
3995
39962009-04-20 Pascal Obry <obry@adacore.com>
3997
3998 * adaint.c (__gnat_set_OWNER_ACL): properly free memory
3999 allocated for the security descriptor and make sure all
4000 handles are closed before leaving this procedure.
4001
9013065b
AC
40022009-04-20 Javier Miranda <miranda@adacore.com>
4003
4004 * einfo.ads, einfo.adb (Is_Underlying_Record_View): New subprogram
4005 (Set_Is_Underlying_Record_View): New subprogram
4006
4007 * sem_aggr.adb (Discr_Present, Resolve_Record_Aggregate): In case of
4008 private types with unknown discriminants use the underlying record view
4009 if available.
4010
4011 * sem_ch3.adb (Build_Derived_Private_Type): Enable construction of the
4012 underlying record view in the full view of private types whose parent
4013 has unknown discriminants.
4014 (Build_Derived_Record_Type): Avoid generating the class-wide entity
4015 associated with an underlying record view.
4016 (Derived_Type_Declaration): Avoid deriving parent primitives in
4017 underlying record views.
4018
4019 * sem_ch6.adb (Check_Return_Subtype_Indication): Add support for
4020 records with unknown discriminants.
4021
4022 * sem_type.adb (Covers): Handle underlying record views.
4023 (Is_Ancestor): Add support for underlying record views.
4024
4025 * exp_attr.adb (Expand_Attribute): Expand attribute 'size into a
4026 dispatching call if the type of the target object is tagged and has
4027 unknown discriminants.
4028
4029 * exp_aggr.adb (Resolve_Record_Aggregate): Add support for records with
4030 unknown discriminants.
4031
4032 * exp_disp.adb (Build_Dispatch_Tables): Avoid generating dispatch
4033 tables for internally built underlying record views.
4034
4035 * sprint.adb (sprint_node_actual): Improve output of aggregates with an
4036 empty list of component associations.
4037
40382009-04-20 Thomas Quinot <quinot@adacore.com>
4039
4040 * sem_ch10.adb: Minor reformatting
4041
4042 * socket.c, g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.ads,
4043 g-socthi-mingw.ads, g-socthi.ads, g-socket.adb
4044 (GNAT.Sockets.Inet_Addr): Do not use non-portable inet_aton, instead use
4045 standard inet_pton API (and emulate it on platforms that do not
4046 support it).
4047 (GNAT.Sockets.Thin.Inet_Pton, VMS case): Implement in terms of
4048 DECC$INET_ADDR, imported in Ada.
4049 (GNAT.Sockets.Thin.Inet_Pton, VxWorks and Windows cases): Use C
4050 implementation provided by GNAT runtime.
4051 (__gnat_inet_pton): C implementation of inet_pton(3) for VxWorks and
4052 Windows.
4053
7289b80c
AC
40542009-04-20 Eric Botcazou <ebotcazou@adacore.com>
4055
4056 * gnat_ugn.texi: Add documentation for -fno-ivopts.
4057
40582009-04-20 Ed Schonberg <schonberg@adacore.com>
4059
4060 * sem_ch10.adb (Analyze_Context): Do not analyze a unit in a
4061 with_clause if it is the main unit.
4062
c09a557e
AC
40632009-04-20 Thomas Quinot <quinot@adacore.com>
4064
4065 * sem_type.adb, ali.adb, erroutc.adb: Minor code reorganization
4066 (no behaviour change): Use Append instead of Increment_Last followed
4067 by assignment.
4068
40692009-04-20 Hristian Kirtchev <kirtchev@adacore.com>
4070
4071 * exp_ch3.adb (Make_Predefined_Primitive_Specs): Do not generate the
4072 declarations of all primitives associated with dispatching asynchronous,
4073 conditional and timed selects when dispaching calls are forbidden and
4074 select statements are not allowed (such as in Ravenscar).
4075 (Predefined_Primitive_Bodies): Ditto for bodies.
4076
4077 * exp_disp.ad (Make_DT): Do not create and populate the
4078 Select_Specific_Data of the dispatch table when dispatching calls are
4079 forbidden and select statements are not allowed (such as in Ravenscar).
4080
40812009-04-20 Robert Dewar <dewar@adacore.com>
4082
4083 * a-tifiio.adb: Minor reformatting
4084
40852009-04-20 Thomas Quinot <quinot@adacore.com>
4086
4087 * g-socthi-vms.adb, g-socket.adb, g-socket.ads: inet_aton(3), unlike
4088 other C library functions, report *failure* with a zero status, and
4089 success with a non-zero status.
4090
40912009-04-20 Bob Duff <duff@adacore.com>
4092
4093 * sem.ads, sem.adb (Walk_Library_Items): New generic procedure.
4094 (Semantics): After analyzing each unit, Append it to the
4095 Comp_Unit_List, if appropriate.
4096
4097 * gnat1drv.adb (Check_Library_Items): New procedure for debugging
4098 purposes.
4099 (Gnat1drv): Correct comment regarding Back_End_Mode.
4100
41012009-04-20 Eric Botcazou <ebotcazou@adacore.com>
4102
4103 * gnat_ugn.texi: Add documentation for -fno-inline-small-functions.
4104
7e728b0f
TQ
41052009-04-20 Thomas Quinot <quinot@adacore.com>
4106
4107 * s-taprop-irix.adb, s-taprop-tru64.adb, s-taprop-vms.adb,
4108 output.adb, output.ads, s-taprop-hpux-dce.adb,
4109 s-taprop-linux.adb, s-taprop-solaris.adb, s-taprop-posix.adb: Minor
4110 reformatting.
4111
5e39baa6
TQ
41122009-04-20 Thomas Quinot <quinot@adacore.com>
4113
4114 * g-socket.adb, g-socket.ads, g-socthi-mingw.ads, g-socthi-vms.adb,
4115 g-socthi-vms.ads, g-socthi-vxworks.ads, g-socthi.ads
4116 (GNAT.Sockets.Thin.C_Inet_Addr): Remove.
4117 (GNAT.Sockets.Thin.Inet_Aton): New function, imported from C library
4118 except for VMS where it is reimplemented in Ada using DECC$INET_ADDR.
4119 (GNAT.Sockets.Inet_Addr): Use inet_aton(3) instead of inet_addr(3).
4120
4121 * debug.adb: Fix typo
4122
4123 * gnat_rm.texi: Minor doc fix.
4124
4125 * sem_ch7.adb, freeze.adb: Minor reformatting
4126
3568b271
AC
41272009-04-20 Thomas Quinot <quinot@adacore.com>
4128
4129 * g-socket.ads: Add new constants:
4130 Loopback_Inet_Addr
4131 Unspecified_Group_Inet_Addr
4132 All_Hosts_Group_Inet_Addr
4133 All_Routers_Group_Inet_Addr
4134
4135 * s-oscons-tmplt.c, g-sttsne-vxworks.adb (System.OS_Constants): Add
4136 ERANGE (Result too large).
4137 (GNAT.Sockets.Thin.Task_Safe_NetDB, VxWorks version): Add missing
4138 propagation of errno to caller.
4139
41402009-04-20 Hristian Kirtchev <kirtchev@adacore.com>
4141
4142 * a-calend.adb, a-calend-vms.adb: Increase the number of leap seconds
4143 to 24. Increment Leap_Seconds_Count and add an entry to aggregate
4144 Leap_Second_Times.
4145
41462009-04-20 Gary Dismukes <dismukes@adacore.com>
4147
4148 * sem_elim.ads (Check_For_Eliminated_Subprogram): New procedure for
4149 checking for references to eliminated subprograms that should be
4150 flagged.
4151 (Eliminate_Error_Message): Update comment to say "references" rather
4152 than "calls" (since attribute cases are handled here as well).
4153
4154 * sem_elim.adb (Check_For_Eliminated_Subprogram): New procedure for
4155 checking for references to eliminated subprograms that should be
4156 flagged. Add with and use of Sem and Sem_Util.
4157
4158 * sem_res.adb (Resolve_Call): Reject calls to eliminated subprograms.
4159 Add with and use of Sem_Elim.
4160
4161 * sem_attr.adb (Analyze_Access_Attribute): Reject access attributes
4162 applied to eliminated subprograms.
4163 (Analyze_Attribute): Reject 'Address and 'Code_Address applied to
4164 eliminated subprograms.
4165 Add with and use of Sem_Elim.
4166
4167 * sem_disp.adb (Check_Dispatching_Call): Remove error check for calls
4168 to eliminated subprograms, now handled during Resolve_Call.
4169 Remove with and use of Sem_Elim.
4170
4171 * exp_disp.adb (Make_DT): Get Ultimate_Alias of primitive before
4172 testing Is_Eliminated, for proper handling of primitive derived from
4173 eliminated subprograms.
4174
41752009-04-20 Vincent Celier <celier@adacore.com>
4176
4177 * mlib-prj.adb (Build_Library): Use the shared library linker, if one
4178 has been declared (Library_GCC or Linker'Driver), for the driver name.
4179
4180 * prj-nmsc.adb (Process_Linker): If Library_GCC is not declared and
4181 Linker'Driver is, use Linker'Driver as the shared library linker.
4182 (Process_Project_Level_Simple_Attributes): Issue a warning if attribute
4183 Library_GCC is declared.
4184 (Check_Library_Attributes): Set up the shared linker driver: either
4185 Library_GCC or Linker'Driver. Issue a warning if Library_GCC is
4186 declared.
4187
6e55ac7a
TQ
41882009-04-20 Thomas Quinot <quinot@adacore.com>
4189
4190 * g-socket.ads (Send_Socket): Fix misleading comment.
4191
68218f7c
AC
41922009-04-20 Arnaud Charlet <charlet@adacore.com>
4193
4194 * switch-c.adb (Scan_Front_End_Switches): Disable inspector mode in
4195 ASIS mode.
4196
41972009-04-20 Geert Bosch <bosch@adacore.com>
4198
4199 * a-tifiio.adb (Put): Avoid generating too many digits for certain
4200 fixed types with smalls that are neither integer or the reciprocal
4201 of an integer.
4202
42032009-04-20 Bob Duff <duff@adacore.com>
4204
4205 * uname.ads: Minor comment fix.
4206
4207 * types.ads: Minor comment fix.
4208
262991d8
PO
42092009-04-20 Pascal Obry <obry@adacore.com>
4210
4211 * adaint.c (__gnat_get_libraries_from_registry): Fix code to
4212 avoid warning. At the same time fix a memory leak.
4213
4214 * osint.adb (Get_Libraries_From_Registry): Properly free memory
4215 returned by the above routine.
4216
d0f8d157
AC
42172009-04-20 Robert Dewar <dewar@adacore.com>
4218
4219 * s-conca5.adb, s-conca5.ads, s-conca7.adb, s-conca7.ads, s-conca9.adb,
4220 s-conca9.ads, rtsfind.ads, s-conca2.adb, s-conca2.ads, s-conca4.adb,
4221 s-conca4.ads, s-conca6.adb, s-conca6.ads, s-conca8.adb, s-conca8.ads,
4222 s-conca3.adb, s-conca3.ads (Str_Concat_Bounds_x): New functions.
4223
4224 * exp_ch4.adb (Expand_Concatenate): Minor code reorganization
4225
42262009-04-20 Pascal Obry <obry@adacore.com>
4227
4228 * initialize.c (__gnat_initialize): Add braces to kill warning.
4229
262991d8 4230 * adaint.c: Minor reformatting, remove trailing spaces.
d0f8d157 4231
34c25b32
AC
42322009-04-17 Arnaud Charlet <charlet@adacore.com>
4233
4234 * gcc-interface/Make-lang.in: Update dependencies.
4235
9549767b
AC
42362009-04-20 Eric Botcazou <ebotcazou@adacore.com>
4237
4238 * adaint.h (__gnat_lwp_self): Declare on Linux.
4239
4240 * adaint.c (__gnat_os_filename): Add ATTRIBUTE_UNUSED on 'filename'.
4241
42422009-04-20 Robert Dewar <dewar@adacore.com>
4243
4244 * exp_ch5.adb, usage.adb, back_end.adb, opt.ads: Implement
4245 front-end part of -fpreserve-control-flow switch.
4246
d7f94401
AC
42472009-04-20 Bob Duff <duff@adacore.com>
4248
4249 * rtsfind.adb: Minor comment fix
4250
42512009-04-20 Robert Dewar <dewar@adacore.com>
4252
4253 * exp_aggr.adb: Minor reformatting
4254 Minor code reorganization (use Nkind_In)
4255
4256 * g-socket.adb: Minor reformatting
4257
4258 * g-socket.ads: Minor comment fix
4259
4260 * s-auxdec.ads: Minor comment and organization update.
4261
4262 * s-auxdec-vms_64.ads: Minor comment and organization update.
4263
4264 * sem_ch10.adb: Minor addition of ??? comment
4265
4266 * sem_disp.adb: Minor reformatting
4267
f8b86c2d
AC
42682009-04-20 Ed Schonberg <schonberg@adacore.com>
4269
4270 * inline.adb (Add_Inlined_Subprogram): Do not place on the back-end
4271 list a caller of an inlined subprogram, if the caller itself is not
4272 called.
4273
42742009-04-20 Pascal Obry <obry@adacore.com>
4275
4276 * adaint.c: Disable use of ACL on network drives.
4277
42782009-04-20 Arnaud Charlet <charlet@adacore.com>
4279
4280 * gnat_ugn.texi: Add examples.
4281
efec4f2a
TQ
42822009-04-20 Thomas Quinot <quinot@adacore.com>
4283
4284 * g-socket.ads (Abort_Selector): Clarify documentation.
4285
ff2e7c1e
AC
42862009-04-20 Arnaud Charlet <charlet@adacore.com>
4287
4288 * opt.ads (Inspector_Mode): Update documentation of this flag.
4289
42902009-04-20 Thomas Quinot <quinot@adacore.com>
4291
4292 * g-socket.ads: Minor reformatting
4293
4294 * socket.c, gsocket.h (__gnat_get_h_errno, VxWorks case): No need to
4295 consider S_resolvLib error codes since we only use the hostLib wrappers.
4296
42972009-04-20 Eric Botcazou <ebotcazou@adacore.com>
4298
4299 * sem_ch3.adb (Build_Derived_Private_Type): Insert the declaration
4300 of the Underlying_Record_View after that of the derived type.
4301
26a43556
AC
43022009-04-20 Arnaud Charlet <charlet@adacore.com>
4303
4304 * switch-c.adb (Scan_Front_End_Switches): Disable front-end inlining
4305 in inspector mode.
4306
43072009-04-20 Javier Miranda <miranda@adacore.com>
4308
4309 * sem_ch6.adb (New_Overloaded_Entity): Minor reformating.
4310
4311 * sem_ch6.ads (Subtype_Conformant, Type_Conformant): Add missing
4312 documentation.
4313
4314 * exp_aggr.adb (Build_Record_Aggr_Code): Code cleanup.
4315
4316 * sem_disp.adb
4317 (Check_Dispatching_Operation): Set attribute Is_Dispatching_Operation
4318 in internally built overriding subprograms.
4319
43202009-04-20 Doug Rupp <rupp@adacore.com>
4321
4322 * s-auxdec-vms_64.ads (Integer_{8,16,32,64}_Array): New array types.
4323
4324 * s-auxdec.ads: Likewise
4325
43262009-04-20 Ed Schonberg <schonberg@adacore.com>
4327
4328 * sem_ch3.adb (Find_Type_Name): Reject the completion of a private
4329 type by an interface.
4330
4331 * exp_ch6.adb (Expand_Call): Inline To_Address unconditionally, to
4332 minimze difference in expanded tree when compiled as spec of the main
4333 unit, or as a spec in the context of another unit.
4334
3f25c54d
AC
43352009-04-20 Hristian Kirtchev <kirtchev@adacore.com>
4336
4337 * a-calend.adb: Remove types char_Pointer, int, tm and tm_Pointer.
4338 (localtime_tzoff): This routine no longer accepts an actual of type
4339 tm_Pointer.
4340 (UTC_Time_Offset): Remove local variable Secs_TM.
4341
4342 * sysdep.c (__gnat_localtime_tzoff): This routine no longer accepts an
4343 actual of type struct tm*. Add local variable of type struct tm for all
4344 targets that provide localtime_r and need to invoke it.
4345
43462009-04-20 Thomas Quinot <quinot@adacore.com>
4347
4348 * s-oscons-tmplt.c, g-socket.adb, g-socket.ads
4349 (GNAT.Sockets.Resolve_Error): Add case of EPIPE
4350 Add case of EAGAIN for platforms where it is not equal to EWOULDBLOCK
4351
8dbf3473
AC
43522009-04-20 Robert Dewar <dewar@adacore.com>
4353
4354 * sem_ch3.adb: Minor reformatting
4355
4356 * lib-load.adb: Minor reformatting
4357
4358 * sem_ch4.adb: Minor reformatting
4359
43602009-04-20 Robert Dewar <dewar@adacore.com>
4361
4362 * namet-sp.ads, namet-sp.adb (Is_Bad_Spelling_Of): Implement new spec
4363 (equal values => False).
4364
43652009-04-20 Ed Schonberg <schonberg@adacore.com>
4366
4367 * exp_ch6.adb (Is_Null_Procedure): predicate is global, so that calls
4368 to null procedures can be inlined unconditionally.
4369
56fe7b05
EB
43702009-04-20 Eric Botcazou <ebotcazou@adacore.com>
4371
4372 * gcc-interface/trans.c (call_to_gnu): When creating the copy for a
4373 non-addressable parameter passed by reference, do not convert the
4374 actual if its type is already the nominal type, unless it is of
4375 self-referential size.
4376
9fcf2a0b
AC
43772009-04-20 Arnaud Charlet <charlet@adacore.com>
4378
4379 * gnat_ugn.texi: Fix typos.
4380
43812009-04-20 Robert Dewar <dewar@adacore.com>
4382
4383 * debug.adb, gnat1drv.adb, sem_ch13.adb: Add circuitry to
4384 Validate_Unchecked_Warnings to suppress warnings about size or
4385 alignment or extra bits if either type involved has pragma Warnings
4386 (Off) set for the type entity.
4387
f7ebc6a8
EB
43882009-04-19 Eric Botcazou <ebotcazou@adacore.com>
4389
4390 * gcc-interface/trans.c (gigi): Make the special IA-64 descriptor type
4391 a builtin type and give it a name.
4392
105ab5db
DN
43932009-04-17 Diego Novillo <dnovillo@google.com>
4394
4395 * gcc-interface/misc.c (gnat_expand_expr): Remove.
4396 (LANG_HOOKS_EXPAND_EXPR): Remove.
4397
03b64787
AC
43982009-04-17 Robert Dewar <dewar@adacore.com>
4399
4400 * sem_ch3.adb: Minor reformatting
4401
44022009-04-17 Pascal Obry <obry@adacore.com>
4403
4404 * adaint.c: Add __gnat_use_acl global variable to control use of ACL.
4405
054275e4
ES
44062009-04-17 Ed Schonberg <schonberg@adacore.com>
4407
4408 * sem_ch3.adb (Build_Derived_Enumeration_Type): Diagnose properly
4409 illegal constraints on type derived from formal discrete types.
4410
aed6fda8
TQ
44112009-04-17 Thomas Quinot <quinot@adacore.com>
4412
4413 PR ada/35953
4414
4415 * g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
4416 g-socthi-vxworks.ads, g-socthi-mingw.adb, g-socthi-mingw.ads,
4417 g-socthi.adb, g-stsifd-sockets.adb, g-socthi.ads, g-socket.adb,
4418 g-socket.ads (GNAT.Sockets.Thin.C_Send,
4419 GNAT.Sockets.Thin.Syscall_Send): Remove unused subprograms.
4420 Replace calls to send(2) with equivalent sendto(2) calls.
4421 (GNAT.Sockets.Send_Socket): Factor common code in inlined subprogram.
4422 (GNAT.Sockets.Write): Account for the case of hyper-empty arrays, do not
4423 report an error in that case. Factor code common to the two versions
4424 (datagram and stream) in common routine Stream_Write.
4425
c5d91669
AC
44262009-04-17 Robert Dewar <dewar@adacore.com>
4427
4428 * exp_disp.adb: Minor reformatting
4429 Minor code reorganization (use Nkind_In)
4430
4431 * prepcomp.adb: Minor reformatting
4432
4433 * sem_ch3.adb: Minor reformatting
4434
4435 * sem_res.adb: Minor comment addition
4436
4437 * exp_ch5.adb (Expand_Assign_Array): Use Has_Address_Clause to test
4438 for address clause
4439
4440 * lib-xref.adb (Generate_Reference): Exclude recursive calls from
4441 setting Is_Referenced
4442
4443 * types.ads: Minor reformatting
4444
44452009-04-17 Arnaud Charlet <charlet@adacore.com>
4446
4447 * gnat_ugn.texi: Initial documentation on binding generator.
4448
39f346aa
ES
44492009-04-17 Ed Schonberg <schonberg@adacore.com>
4450
4451 * einfo.ads, einfo.adb: New attribute Underlying_Record_View, to handle
4452 type extensions whose parent is a type with unknown discriminants.
4453
4454 * exp_aggr.adb (Expand_Record_Aggregate): If the type of an extension
4455 aggregate has unknown discriminants, use the Underlying_Record_View to
4456 obtain the discriminants of the ancestor part.
4457
4458 * exp_disp.adb (Build_Dispatch_Tables): Types that are
4459 Underlying_Record_Views share the dispatching information of the
4460 original record extension.
4461
4462 * exp_ch3.adb (Expand_Record_Extension): If the type inherits unknown
4463 discriminants, propagate dispach table information to the
4464 Underlying_Record_View.
4465
4466 * sem_ch3.adb (Build_Derived_Private_Type): If parent type has unknown
4467 discriminants and declaration is not a completion, generate
4468 Underlying_Record_View to provide proper discriminant information to
4469 the front-end and to gigi.
4470
8c64de1e
RD
44712009-04-17 Robert Dewar <dewar@adacore.com>
4472
4473 * s-conca5.adb, g-sercom.adb, s-conca5.ads, s-conca7.adb, exp_imgv.adb,
4474 s-conca7.ads, s-crc32.adb, s-crc32.ads, s-conca9.adb, s-conca9.ads,
4475 s-addope.adb, i-cstrin.ads, s-addope.ads, s-carun8.adb, s-carun8.ads,
4476 g-htable.ads, g-hesora.adb, g-hesora.ads, s-htable.adb, s-htable.ads,
4477 s-conca2.adb, s-conca2.ads, a-except.adb, s-conca4.adb, a-except.ads,
4478 s-conca4.ads, s-except.adb, s-except.ads, s-conca6.adb, s-conca6.ads,
4479 g-spchge.adb, g-spchge.ads, g-u3spch.adb, g-u3spch.ads, s-conca8.adb,
4480 s-conca8.ads, g-byorma.adb, g-byorma.ads, s-memory.adb, s-memory.ads,
4481 g-speche.adb, g-speche.ads, g-stsifd-sockets.adb, exp_dist.adb,
4482 s-imgenu.adb, s-imgenu.ads, s-mastop.adb, s-mastop.ads, s-exctab.adb,
4483 s-exctab.ads, s-imenne.adb, s-imenne.ads, s-casuti.adb, osint.adb,
4484 s-assert.adb, s-casuti.ads, s-assert.ads, s-os_lib.adb, s-conca3.adb,
4485 s-conca3.ads: Remove unneeded pragma Warnings
4486
74e63df1
RD
44872009-04-17 Robert Dewar <dewar@adacore.com>
4488
4489 * g-moreex.adb: Add comments.
4490
4491 * s-auxdec.ads: Add ??? comment for uncommented pragma Warnings (Off)
4492
4493 * s-auxdec-vms_64.ads: Add ??? comment for uncommented pragma
4494 Warnings (Off)
4495
4496 * prepcomp.adb: Add ??? comment
4497
4498 * a-tasatt.adb: Minor reformatting
4499
4500 * g-trasym-vms-alpha.adb: Add ??? comment
4501
4502 * g-trasym-vms-ia64.adb: Add ??? comment
4503
4504 * xoscons.adb: Minor reformatting
4505
4506 * s-tassta.adb: Minor reformatting
4507
4508 * s-scaval.adb: Add ??? comment
4509
4510 * stand.ads: Minor code clean up (remove junk with of Namet)
4511
4512 * s-strcom.adb, s-strcom.ads, s-string.adb, s-string.ads, s-sopco3.adb,
4513 s-sopco3.ads, s-strops.adb, s-strops.ads, s-sopco5.adb, s-sopco5.ads,
4514 s-wchcnv.adb, s-wchcnv.ads, s-ststop.adb, s-ststop.ads, s-soflin.adb,
4515 s-soflin.ads, s-traceb.adb, s-traceb.ads, s-traent.adb, s-traent.ads,
4516 s-secsta.adb, s-secsta.ads, s-utf_32.adb, s-utf_32.ads, s-wchcon.adb,
4517 s-wchjis.adb, s-wchcon.ads, s-wchjis.ads, s-sopco4.adb, s-sopco4.ads,
4518 s-stache.adb, s-stache.ads, s-stoele.adb, s-stoele.ads, s-stalib.adb,
4519 s-stalib.ads, s-os_lib.ads, s-purexc.ads: Remove no longer needed
4520 Warnings off pragmas.
4521
df416fb0
AC
45222009-04-17 Pascal Obry <obry@adacore.com>
4523
4524 * initialize.c: Fix test for reallocating the arguments array.
4525
45262009-04-17 Geert Bosch <bosch@adacore.com>
4527
4528 * exp_fixd.adb (Expand_Convert_Float_To_Fixed): Have float to fixed
4529 conversion truncate only for decimal fixed point types.
4530
45312009-04-17 Jerome Lambourg <lambourg@adacore.com>
4532
4533 * g-comlin.adb (Initialize_Scan_Option): Make sure the sections are
4534 reinitialized.
4535
01cd0938
AC
45362009-04-17 Robert Dewar <dewar@adacore.com>
4537
4538 * exp_ch5.adb (Expand_Assign_Array): Do not set Forwards_OK and
4539 Backwards_OK if either operand has an address clause.
4540
45412009-04-17 Pascal Obry <obry@adacore.com>
4542
4543 * initialize.c: Code clean up, use realloc.
4544
46e26fe3
PO
45452009-04-17 Pascal Obry <obry@adacore.com>
4546
4547 * initialize.c: Do not get Unicode command line if Unicode support not
4548 activated.
4549 Add support for wildcard expansion for Unicode parameters on Win32.
4550
4551 * mingw32.h: Add missing macros when Unicode support not activated.
4552
b20de9b9
AC
45532009-04-17 Javier Miranda <miranda@adacore.com>
4554
4555 * sem_ch6.adb (Check_Anonymous_Return): Add missing checks to
4556 avoid generating code that references the Current_Master
4557 when compiling without tasks.
4558
45592009-04-17 Vincent Celier <celier@adacore.com>
4560
4561 * prj-attr.adb: New project level attribute Target
4562
4563 * prj-nmsc.adb (Process_Project_Level_Simple_Attributes): Process
4564 attribute Target
4565
4566 * prj.ads (Project_Configuration): New component Target
4567
a8f59a33
AC
45682009-04-17 Thomas Quinot <quinot@adacore.com>
4569
4570 * exp_ch7.adb (Expand_Ctrl_Function_Call): Remove incorrect special
4571 case for the case of an aggregate component, the attach call for the
4572 result is actually needed.
4573
4574 * exp_aggr.adb (Backend_Processing_Possible): Backend processing for
4575 an array aggregate must be disabled if the component type requires
4576 controlled actions.
4577
4578 * exp_ch3.adb: Minor reformatting
4579
45802009-04-17 Bob Duff <duff@adacore.com>
4581
4582 * output.ads (Indent,Outdent): New procedures for indenting the output.
4583 (Write_Char): Correct comment -- LF _is_ allowed.
4584
4585 * output.adb (Indent,Outdent): New procedures for indenting the output.
4586 Keep track of the indentation level, and make sure it doesn't get too
4587 high.
4588 (Flush_Buffer): Insert spaces at the beginning of each line, if
4589 indentation level is nonzero.
4590 (Save_Output_Buffer,Restore_Output_Buffer): Save and restore the current
4591 indentation level.
4592 (Set_Standard_Error,Set_Standard_Output): Remove superfluous
4593 "Next_Col := 1;". Flush_Buffer does that.
4594
4595 * sem_ch6.adb, sem_ch7.adb (Debug_Flag_C): Reorganize the output
4596 controlled by the -gnatdc switch. It now occurs on entry/exit to the
4597 relevant analysis routines, and calls Indent/Outdent to make the
4598 indentation reflect the nesting level. Add "helper" routines, since
4599 otherwise lots of "return;" statements would skip the debugging output.
4600
46012009-04-17 Arnaud Charlet <charlet@adacore.com>
4602
4603 * s-taprop-tru64.adb, s-taprop-vms.adb, s-taprop-linux.adb,
4604 s-taprop-solaris.adb, s-taprop-irix.adb, s-taprop-hpux-dce.adb,
4605 s-taprop-posix.adb (Suspend_Until_True): Protect against early wakeup.
4606
32beb1f3
AC
46072009-04-17 Thomas Quinot <quinot@adacore.com>
4608
4609 * exp_aggr.adb: Minor code reorganization, no behaviour change.
4610
46112009-04-17 Ed Schonberg <schonberg@adacore.com>
4612
4613 * sem_ch8.adb (Use_One_Type): Handle properly a redundant use type
4614 clause in a unit that is a package body or a subunit, when the previous
4615 clause appears in a spec or a parent.
4616
36c73552
AC
46172009-04-17 Thomas Quinot <quinot@adacore.com>
4618
4619 * sinfo.ads, exp_aggr.adb, exp_aggr.ads: Minor reformatting
4620
4621 * exp_ch7.adb: Minor reformatting
4622
46232009-04-17 Bob Duff <duff@adacore.com>
4624
4625 * exp_ch4.adb (Expand_Allocator_Expression): In an initialized
4626 allocator, check that the expression of the qualified expression obeys
4627 the constraints of the subtype of the qualified expression.
4628
46292009-04-17 Thomas Quinot <quinot@adacore.com>
4630
4631 * sprint.adb (Write_Itype): Add handling of enumeration subtypes.
4632
cac5a801
AC
46332009-04-17 Ed Schonberg <schonberg@adacore.com>
4634
4635 * exp_ch4.adb (Expand_Allocator_Expression): Apply constraint check to
4636 aggregate, using context imposed by subtype mark in allocator.
4637
46382009-04-17 Pascal Obry <obry@adacore.com>
4639
4640 * gnat_rm.texi: Document GNAT_CODE_PAGE environment variable
4641
03f050b6
AC
46422009-04-17 Nicolas Roche <roche@adacore.com>
4643
4644 * initialize.c (__gnat_initialize): remove MAX_PATH limitation on each
4645 argument length.
4646
46472009-04-17 Gary Dismukes <dismukes@adacore.com>
4648
4649 * sem_elim.adb (Eliminate_Error_Msg): Minor change to error message to
4650 cover both calls and attribute references ("call" => "reference").
4651
46522009-04-17 Ed Schonberg <schonberg@adacore.com>
4653
4654 * sem_ch3.adb (Analyze_Subtype_Declaration): A subtype of an access
4655 type for which Storage_Size is set to 0 is legal in a pure unit.
4656
bf327c92
AC
46572009-04-17 Thomas Quinot <quinot@adacore.com>
4658
4659 * exp_ch7.adb: Minor reformatting
4660
46612009-04-17 Robert Dewar <dewar@adacore.com>
4662
4663 * restrict.adb (Check_Restriction_No_Dependence): Don't check
4664 restriction if outside main extended source unit.
4665
4666 * sem_ch10.adb (Analyze_With_Clause): Check No_Dependence restriction
4667 for parents of child units as well as the child unit itself.
4668
46692009-04-17 Bob Duff <duff@adacore.com>
4670
4671 * checks.ads: Minor comment fix
4672
4673 * exp_aggr.ads: Minor comment fix
4674
46752009-04-17 Nicolas Roche <roche@adacore.com>
4676
4677 * adaint.c: Improve cross compiler detection and handling.
4678
ffec8e81
AC
46792009-04-17 Eric Botcazou <ebotcazou@adacore.com>
4680
4681 * exp_ch4.adb (Expand_Concatenation): Do not use calls at -Os.
4682
46832009-04-17 Pascal Obry <obry@adacore.com>
4684
4685 * mingw32.h: Add S2WSC and WS2SC macros to convert to/from
4686 CurrentCodePage.
4687
4688 * adaint.h: Encoding_Unspecified is now defined. Corresponds to the
4689 value when no encoding form paramter is set on Text_IO services.
4690
4691 * adaint.c: CurrentCodePage new variable on Windows.
4692 Use new macros S2WSC and WS2SC instead of the UTF-8 oriented
4693 ones.
4694
4695 * mkdir.c: Use new macros S2WSC and WS2SC instead of the UTF-8 oriented
4696 ones.
4697
4698 * initialize.c: Initialize CurrentCodePage depending on GNAT_CODE_PAGE
4699 environment variable value. Default is UTF-8.
4700
4701 * s-crtl.ads: Filename_Encoding add Unspecified in the enumeration type.
4702 fopen and freopen encoding parameter is now set to Unspecified.
4703 The default value is in this case UTF-8 (as it was before) but
4704 use the new macros that convert to/from the code page set
4705 at runtime (CurrentCodePage).
4706
4707 * s-fileio.adb: When no encoding specified use Unspecified value.
4708
47092009-04-17 Ed Schonberg <schonberg@adacore.com>
4710
4711 * atree.adb, atree.ads: Remove dead code.
4712
432e3422
AC
47132009-04-17 Arnaud Charlet <charlet@adacore.com>
4714
4715 * gcc-interface/Make-lang.in: Update dependencies.
4716
f3b01cd9
AC
47172009-04-17 Ed Schonberg <schonberg@adacore.com>
4718
4719 * sem_ch3.adb (Access_Subprogram_Definition): Additional checks on
4720 illegal uses of incomplete types in formal parts and return types.
4721
4722 * sem_ch6.adb (Process_Formals): Taft-amendment types are legal in
4723 access to subprograms.
4724
4725 * sem_ch7.adb (Uninstall_Declarations): diagnose attempts to use
4726 Taft-amendment types as the return type of an access_to_function type.
4727
4728 * freeze.adb (Freeze_Entity): Remove tests on formals of an incomplete
4729 type for access_to_subprograms. The check is performed on package exit.
4730
47312009-04-17 Ed Schonberg <schonberg@adacore.com>
4732
4733 * atree.ads, atree.adb: Move New_Copy_Tree.to sem_util.
4734
4735 * nlists.ads, nlists.adb: Move New_Copy_List to sem_util.
4736
4737 * lib-load.adb: Use Copy_Separate_Tree rather than New_Copy_Tree
4738
4739 * sem_util.ads, sem_util.adb: New_Copy_Tree and New_Copy_List belong in
4740 semantic units, because the handling of itypes in the copied tree
4741 requires semantic information that does not belong in atree.
4742
47432009-04-17 Robert Dewar <dewar@adacore.com>
4744
4745 * par-ch6.adb: Minor reformatting
4746
4747 * prj.adb: Minor reformatting
4748
618fb570
AC
47492009-04-17 Gary Dismukes <dismukes@adacore.com>
4750
4751 * par-ch6.adb (P_Subprogram): Overriding indicators should be allowed
4752 on protected subprogram bodies, so exclude the case where Pf_Flags is
4753 Pf_Decl_Pbod from the error check.
4754
4755 * par-ch9.adb (P_Protected_Operation_Items): Permit overriding
4756 indicators on subprograms in protected bodies, and proceed with parsing
4757 the subprogram.
4758
4759 * sem_ch6.adb (Verify_Overriding_Indicator): Exclude protected
4760 subprograms from the check for primitiveness on subprograms with
4761 overriding indicators.
4762 (Check_Overriding_Indicator): Include protected subprograms in the
4763 style check for missing overriding indicators.
4764
47652009-04-17 Tristan Gingold <gingold@adacore.com>
4766
4767 * init.c: Fix stack checking for x86 Darwin.
4768
47692009-04-17 Vincent Celier <celier@adacore.com>
4770
4771 * prj-attr.adb: New project level attribute Object_File_Suffix
4772 (<language>).
4773
4774 * prj-nmsc.adb (Add_Source): Use the object file suffix to get the
4775 object file name
4776 (Process_Compiler): Process attribute Object_File_Suffix
4777
4778 * prj.adb (Object_Name): Use suffix Object_File_Suffix instead of
4779 platform suffix, when specified.
4780
4781 * prj.ads (Language_Config): New component Object_File_Suffix,
4782 defaulted to No_Name.
4783 (Object_Name): New parameter Object_File_Suffix, defaulted to No_Name
4784
4785 * snames.ads-tmpl: New standard name Object_File_Suffix
4786
93bcda23
AC
47872009-04-17 Robert Dewar <dewar@adacore.com>
4788
4789 * gnat_rm.texi: Add documentation about No_Streams restriction
4790
4791 * sem_attr.adb (Check_Stream_Attribute): Exclude implicit stream
4792 attributes when checking No_Streams restriction.
4793
47942009-04-17 Thomas Quinot <quinot@adacore.com>
4795
4796 * rtsfind.ads (RE_Request_Destroy): New PolyORB s-parint entity.
4797
4798 * exp_dist.adb (PolyORB_Support.Build_General_Calling_Stubs): Add
4799 missing calls to RE_Request_Destroy to deallocate request objects after
4800 use.
4801
48022009-04-17 Nicolas Setton <setton@adacore.com>
4803
4804 * link.c: Fix support for passing a response file under Darwin.
4805
48062009-04-17 Emmanuel Briot <briot@adacore.com>
4807
4808 * prj.adb (Free): new subprogram.
4809
48102009-04-17 Ed Schonberg <schonberg@adacore.com>
4811
4812 * sem_ch3.adb: additional initialization on incomplete subtypes.
4813
4814 * sem_ch6.adb (Process_Formals): if the subprogram is in the private
4815 part and one of the formals is an incomplete tagged type, attach to
4816 list of private dependends of the type for later validation.
4817
4818 * sem_ch7.adb (Uninstall_Declarations): diagnose attempts to declare
4819 primitive operations of a Taft-amendmment type.
4820
4821 * freeze.adb (Freeze_Entity): Remove tests on formals of an incomplete
4822 type. The check is performed on package exit, possibly after the
4823 subprogram is frozen.
4824
48252009-04-17 Vincent Celier <celier@adacore.com>
4826
4827 * prj-nmsc.adb (Get_Directories): Get the object and exec directory
4828 before looking for source directories, but make sure that there are nil
4829 if they are not explicitely declared and there is explicitely no
4830 sources in the project.
4831
ba4a2f78 48322009-04-17 Pascal Obry <obry@adacore.com>
78246a6e 4833
ba4a2f78 4834 * initialize.c: Set gnat_argv with UTF-8 encoded strings on Windows.
78246a6e 4835
ba4a2f78 4836 * init.c: Fix minor typo and style fix.
ee00428a 4837
ba4a2f78 48382009-04-17 Robert Dewar <dewar@adacore.com>
ee00428a 4839
ba4a2f78 4840 * a-except.adb, a-except-2005.adb: Add PE_Address_Of_Intrinsic
ee00428a 4841
ba4a2f78
AC
4842 * sem_attr.adb (Analyze_Attribute, case Address): Use
4843 PE_Address_Of_Intrinsic.
4844
4845 * types.ads: Add PE_Address_Of_Intrinsic
4846
4847 * types.h: Add PE_Address_Of_Intrinsic
4848
48492009-04-17 Nicolas Setton <setton@adacore.com>
4850
4851 * gcc-interface/Makefile.in: Under darwin, build shared libraries
4852 with install_name starting with "@rpath/".
ee00428a
AC
4853
48542009-04-17 Nicolas Setton <setton@adacore.com>
4855
4856 * link.c: Add darwin section
4857
9fbb3ae6
AC
48582009-04-16 Robert Dewar <dewar@adacore.com>
4859
4860 * g-pehage.adb: Minor reformatting
4861
4862 * sem_ch12.adb: Minor reformatting
4863
4864 * exp_dist.adb: Minor reformatting
4865
4866 * bindgen.adb: Minor style fixes.
4867
48682009-04-16 Ed Schonberg <schonberg@adacore.com>
4869
4870 * sem_eval.adb (Eval_Indexed_Component): Extend constant-folding of
4871 indexed components to the case where the prefix is a static string
4872 literal.
4873
48742009-04-16 Javier Miranda <miranda@adacore.com>
4875
4876 * exp_ch3.adb (Expand_N_Object_Declaration): In case of build-in-place
4877 objects avoid any further expansion of the expression initializing the
4878 object.
4879
c1c5e0fa
AC
48802009-04-16 Ed Schonberg <schonberg@adacore.com>
4881
4882 * sem_ch12.adb (Preanalyze_Actuals): If the instance is a child unit
4883 that hides an outer homograph, make that homograph invisible when
4884 analyzing the actuals, to to prevent illegal direct visibility on it.
4885
48862009-04-16 Eric Botcazou <ebotcazou@adacore.com>
4887
4888 * g-pehage.adb (Initialize): Fix off-by-one error.
4889
d15d61c6
AC
48902009-04-16 Tristan Gingold <gingold@adacore.com>
4891
4892 * init.c: Detect real stack overflow on Darwin.
4893
4894 * system-darwin-x86.ads: Use stack probing on darwin x86.
4895
48962009-04-16 Ed Schonberg <schonberg@adacore.com>
4897
4898 * sem_attr.adb (Analyze_Attribute, case 'Address): It is illegal to
4899 take the address of an intrinsic subprogram.
4900
0a0a18c3
AC
49012009-04-16 Arnaud Charlet <charlet@adacore.com>
4902
4903 * gcc-interface/Makefile.in: Change g-trasym to g-trasym-unimplemented
4904 for the targets where GNAT.Traceback.Symbolic is not supported.
4905
d15d61c6
AC
49062009-04-16 Vincent Celier <celier@adacore.com>
4907
4908 * g-trasym-unimplemented.ads, g-trasym-unimplemented.adb: New file.
4909
4910 * g-trasym.ads: Update comments.
4911
49122009-04-16 Vasiliy Fofanov <fofanov@adacore.com>
4913
4914 * tracebak.c (STOP_FRAME): Verify validity of the current address
4915 before dereferencing.
4916
b61ebe4f
AC
49172009-04-16 Ed Schonberg <schonberg@adacore.com>
4918
4919 * sprint.adb (Write_Itype): If the itype is an array subtype, preserve
4920 the original location of the index expressions and the index subtypes,
4921 to prevent spurious out-of-scope references in gigi.
4922
49232009-04-16 Tristan Gingold <gingold@adacore.com>
4924
4925 * init.c, s-osinte-darwin.ads, system-darwin-x86_64.ads:
4926 Add support for stack checking on darwin.
4927
49282009-04-16 Vincent Celier <celier@adacore.com>
4929
4930 * prj-attr.adb: New attribute Runtime_Source_Dir
4931
4932 * prj-nmsc.adb (Process_Project_Level_Array_Attributes): Process
4933 attribute Runtime_Source_Dir.
4934 (Check_Naming_Schemes): Give default values to out parameters to avoid
4935 invalid data.
4936
4937 * prj.ads (Language_Config): New component Runtime_Source_Dir
4938
4939 * snames.ads-tmpl: New standard name Runtime_Source_Dir
4940
468ee337
PO
49412009-04-16 Pascal Obry <obry@adacore.com>
4942
4943 * adaint.h, adaint.c (__gnat_rmdir): New routine.
4944 Simple wrapper routines used to convert to proper encoding on
4945 Windows.
4946
4947 * s-crtl.ads: Use __gnat_rmdir instead of direct call to the C library.
4948
4949 * g-dirope.adb (Remove_Dir): Fix a bug, the root directory was removed
4950 twice.
4951
bca17d51
PO
49522009-04-16 Pascal Obry <obry@adacore.com>
4953
4954 * s-crtl.ads, s-os_lib.adb: Minor code clean-up.
4955
4e0079cc
AC
49562009-04-16 Thomas Quinot <quinot@adacore.com>
4957
4958 * snames.ads-tmpl (Name_Defined): New predefined name for use by the
4959 integrated preprocessor.
4960
4961 * prep.ads, prep.adb (Setup_Hooks): New subprogram.
4962 (Initialize): Split into two subprograms, Initialize (to be called
4963 prior to compiler command line processing) and Setup_Hooks (to be called
4964 later on when the first source file is loaded).
4965
4966 * gprep.adb: Change call to Prep.Initialize to call to Prep.Setup_Hooks.
4967 Add call to Prep.Initialize.
4968
4969 * sinput-l.adb, prepcomp.adb: Change call to Prep.Initialize to call
4970 to Prep.Setup_Hooks.
4971
49722009-04-16 Pascal Obry <obry@adacore.com>
4973
4974 * adaint.h, adaint.c (__gnat_chdir): New routine.
4975 Simple wrapper routines used to convert to proper encoding on
4976 Windows.
4977
4978 * s-crtl.ads: Use __gnat_chdir instead of direct call to the C library.
4979
4980 * a-direct.adb, g-dirope.adb: Use chdir from System.CRTL.
4981
cbbdee52
AC
49822009-04-16 Quentin Ochem <ochem@adacore.com>
4983
4984 * sinput-p.adb (Clear_Source_File_Table): Use Sinput.Initialize instead
4985 of Source.Init.
4986
49872009-04-16 Eric Botcazou <ebotcazou@adacore.com>
4988
4989 * a-convec.ads (Is_Empty): Mark inline.
4990
49912009-04-16 Nicolas Roche <roche@adacore.com>
4992
4993 * init.c (__gnat_init_float): Initialize FPU on x86_64 windows
4994
49952009-04-16 Thomas Quinot <quinot@adacore.com>
4996
4997 * prepcomp.adb: Minor reformatting
4998
7e8ed0a6
AC
49992009-04-16 Jerome Lambourg <lambourg@adacore.com>
5000
5001 * sem_prag.adb (Process_Import_Or_Interface): With .NET,
5002 Access_Subprogram types can also be imported.
5003 (Check_Form_Of_Interface_Name): Accept '/' character in entity CIL
5004 names.
5005
50062009-04-16 Ed Schonberg <schonberg@adacore.com>
5007
5008 * exp_ch6.adb (Make_Build_In_Place_Call_In_Object_Declaration):
5009 preserve homonym chain when the declaration is rewritten into a
5010 renaming declaration, in order to preserve visibility structure.
5011
540b5d9c
AC
50122009-04-16 Jerome Lambourg <lambourg@adacore.com>
5013
5014 * sem_prag.adb (Analyze_Pragma): Make sure that pragma pack is not
5015 taken into account for VM targets.
5016
50172009-04-16 Hristian Kirtchev <kirtchev@adacore.com>
5018
5019 * g-calend.ads, g-calend.adb (Week_In_Year): Now calls
5020 Year_Week_In_Year.
5021 (Year_Week_In_Year): New routine which contains the original code from
5022 Week_In_Year. Add the missing special case for January 1st falling on
5023 a Monday.
5024
dae4faf2
TQ
50252009-04-16 Thomas Quinot <quinot@adacore.com>
5026
5027 * exp_dist.adb (Build_From_Any_Call): For a subtype that is a generic
5028 actual type, use the base type to build the To_Any function.
5029 (Build_From_Any_Function): Remove junk, useless subtype conversion.
5030
50312009-04-16 Thomas Quinot <quinot@adacore.com>
5032
5033 * exp_ch9.adb, exp_code.adb, tbuild.adb, sem_case.adb,
5034 restrict.adb: Minor code reorganization (use
5035 Add_{Char,Str}_To_Name_Buffer instead of inlining it by hand).
5036
2794f022
AC
50372009-04-16 Bob Duff <duff@adacore.com>
5038
5039 * exp_ch6.ads, exp_ch6.adb (Is_Build_In_Place_Function_Return): Remove,
5040 unused.
5041
50422009-04-16 Thomas Quinot <quinot@adacore.com>
5043
5044 * sem_ch4.adb: Minor reformatting
5045
5046 * adaint.c: Remove junk duplicated code.
5047
5048 * sem_ch3.adb: Minor reformatting
5049
5050 * exp_dist.adb: Minor comment rewording
5051
a8e65aa5
AC
50522009-04-16 Robert Dewar <dewar@adacore.com>
5053
5054 * gnat_rm.texi: Document effect of Assume_No_Invalid_Values and -gnatVa
5055 used together.
5056
50572009-04-16 Ed Schonberg <schonberg@adacore.com>
5058
5059 * sem_ch4.adb (Find_Equality_Types): Filter out types that are not
5060 usable before calling Add_One_Interp, to resolve spurious ambiguities.
5061
bded454f
RD
50622009-04-16 Robert Dewar <dewar@adacore.com>
5063
b0fbf3c0
RD
5064 * Make-lang.in: Add entries for s-conca?.o
5065
bded454f
RD
5066 * Makefile.rtl: Add entries for s-conca?
5067
5068 * debug.adb: Add debug flags -gnatd.c and -gnatd.C to control behavior
5069 of concatenation expansion
5070
5071 * exp_ch4.adb (Expand_Concatenation): Generate calls for certain
5072 string cases instead of expanding assignments inline.
5073
5074 * opt.ads (Optimize_Size): New flag
5075
5076 * s-conca2.ads, s-conca2.adb, s-conca3.adb, s-conca3.ads,
5077 s-conca4.adb, s-conca4.ads, s-conca5.adb, s-conca5.ads, s-conca6.adb,
5078 s-conca6.ads, s-conca7.ads, s-conca7.adb, s-conca8.adb, s-conca8.ads,
5079 s-conca9.adb, s-conca9.ads: New file.
5080
4a3b249c
RD
50812009-04-16 Robert Dewar <dewar@adacore.com>
5082
5083 * exp_ch6.adb: Add comments
5084
5085 * rtsfind.ads: Add entries for s-conca? routines
5086
e8e028cb 50872009-04-16 Arnaud Charlet <charlet@adacore.com>
14814170
AC
5088
5089 * gcc-interface/Make-lang.in: Update dependencies.
5090
5091 * gcc-interface/Makefile.in: Update translation for vms.
5092
3204b9cd
AC
50932009-04-16 Ed Schonberg <schonberg@adacore.com>
5094
5095 * sem_ch12.adb (Map_Formal_Package_Entities): renamed from Map_Entities
5096 and made global, to be used when installing parents of a child
5097 instance, to provide mappings for entities declared in formal packages
5098 of ancestor units. Now called from Install_Formal_Packages.
5099
51002009-04-16 Doug Rupp <rupp@adacore.com>
5101
5102 * s-taskin.adb (Initialize_ATCB): Initialize Debug_Events with others
5103 notation for clarity.
5104
5105 * s-taprop-vxworks.adb, s-taprop-tru64.adb, s-taprop-vms.adb,
5106 s-taprop-mingw.adb, s-taprop-linux.adb, s-taprop-solaris.adb,
5107 s-taprop-irix.adb, s-taprop-hpux-dce.adb, s-taprop-posix.adb
5108 (Initialize): Initialize Known_Tasks with Environment task.
5109
5110 * s-taskin.ads (Task_States): Move new states to end for the sake of
5111 GDB compatibility.
5112
5113 * s-tassta.adb (Task_Wrapper): Fix comment about Enter_Task.
5114
f17f3601
ES
51152009-04-16 Ed Schonberg <schonberg@adacore.com>
5116
5117 * exp_ch9.adb (Expand_N_Protected_Type_Declaration): If a protected
5118 operation has an inline pragma, propagate the flag to the internal
5119 unprotected subprogram.
5120
5e44c5ea
DR
51212009-04-16 Doug Rupp <rupp@adacore.com>
5122
5123 * s-taprop-vxworks.adb, s-taprop-tru64.adb, s-taprop-mingw.adb,
5124 s-taprop-linux.adb, s-taprop-solaris.adb, s-taprop-irix.adb,
5125 s-taprop-hpux-dce.adb, s-taprop-posix.adb
5126 (Enter_Task): Move Known_Tasks initialization to s-tassta.adb
5127
5128 * s-taprop-vms.adb (Enter_Task): Likewise.
5129 (Initialize): Import DBEXT, Debug_Register. Register DBGEXT callback.
5130
5131 * s-tassta.adb (Activate_Tasks): After task creation set state to
5132 Activating, vice Runnable. Initialize Known_Tasks, moved here from
5133 s-taprop.adb (Enter_Task). Set Debug_Event_Activating for debugger.
5134 Set state to Runnable after above.
5135 (Task_Wrapper): Set Debug_Event_Run. In exception block set
5136 Debug_Event_Terminated.
5137
5138 * s-taskin.ads (Task_States): Add new states Activiting and
5139 Activator_Delay_Sleep.
5140 (Bit_Array, Debug_Event_Array): New types.
5141 (Global_Task_Debug_Event_Set: New flag.
5142 (Common_ATCB): New field Debug_Events.
5143
5144 * s-taskin.adb (Initialize_ATCB): Initialize Debug_Events.
5145
5146 * s-tasren.adb (Timed_Selective_Wait): Set Activator_Delay_Sleep vice
5147 Activator_Sleep.
5148
5149 * s-tasini.adb (Locked_Abort_To_Level): Add case alternatives for when
5150 Activating and when Acceptor_Delay_Sleep.
5151
5152 * s-tasdeb.ads: Add constants for Debug_Events.
5153 (Debug_Event_Kind_Type): New subtype.
5154 (Signal_Debug_Event): New subprogram.
5155
5156 * s-tasdeb.adb (Signal_Debug_Event): New null subprogram.
5157
205c14b0
TQ
51582009-04-16 Thomas Quinot <quinot@adacore.com>
5159
5160 * sem_elim.adb: Minor reformatting
5161
5162 * freeze.adb: Minor reformatting
5163
5164 * exp_ch4.adb: Minor reformatting
5165
b4763f5c
AC
51662009-04-16 Emmanuel Briot <briot@adacore.com>
5167
5168 * prj-nmsc.adb (Path_Name_Of): fix memory leak
5169
51702009-04-16 Robert Dewar <dewar@adacore.com>
5171
5172 * sinfo.ads (Backwards_OK, Forwards_OK): Clarify documentation
5173
51742009-04-16 Vincent Celier <celier@adacore.com>
5175
5176 * fmap.adb (Initialize): Show the current line when the mapping file
5177 is detected as "incorrectly formatted".
5178
51792009-04-16 Robert Dewar <dewar@adacore.com>
5180
5181 * sem_ch12.adb: Minor reformatting
5182
5183 * sem_ch5.adb: Minor comment addition
5184
5185 * sem_util.adb: Minor reformatting
5186
5187 * sinput-p.adb: Minor reformatting
5188 Add missing pragma Warnings (On)
5189
0c72247e
AC
51902009-04-16 Ed Falis <falis@adacore.com>
5191
5192 * s-vxwext-kernel.adb: (ERROR): deleted unused constant
5193
51942009-04-16 Vincent Celier <celier@adacore.com>
5195
5196 * ali-util.adb: Minor comment spelling error fix
5197
014caddb
EB
51982009-04-16 Eric Botcazou <ebotcazou@adacore.com>
5199
5200 * exp_ch5.adb (Expand_Assign_Array): For the GCC back-end, do not
5201 generate an assignment loop in case of overlap.
5202
b2ed7a03
AC
52032009-04-16 Olivier Hainque <hainque@adacore.com>
5204
5205 * gnat_ugn.texi (gnatmem description): Make it explicit that
5206 gnatmem is designed to work in association with static runtime
5207 library only.
5208
52092009-04-16 Thomas Quinot <quinot@adacore.com>
5210
5211 * sem_type.adb: Minor reformatting
5212
52132009-04-16 Hristian Kirtchev <kirtchev@adacore.com>
5214
5215 * s-osprim-darwin.adb, s-osprim-posix.adb (Clock): Add comment
5216 concerning return codes of gettimeofday and return value check.
5217
52182009-04-16 Ed Falis <falis@adacore.com>
5219
5220 * s-vxwext-kernel.ads (Int_Lock, Int_Unlock): set to convention C so
5221 body can be renaming of imported routines.
5222
52232009-04-16 Vasiliy Fofanov <fofanov@adacore.com>
5224
5225 * s-asthan-vms-alpha.adb: Disable warnings on alignment in a more
5226 targeted fashion.
5227
8a912a6e
AC
52282009-04-15 Hristian Kirtchev <kirtchev@adacore.com>
5229
5230 * exp_ch9.adb: Comment improvements.
5231 (Build_Entry_Family_Name): Add parentheses around the index of a entry
5232 family member.
5233
52342009-04-15 Bob Duff <duff@adacore.com>
5235
5236 * sem_warn.adb (Check_Infinite_Loop_Warning): Catch cases like
5237 "while X /= null loop" where X is unchanged inside the loop. We were
5238 not warning in this case, because of the pointers -- we feared that the
5239 loop variable could be updated via a pointer, if there are any pointers
5240 around the place. But that is impossible in this case.
5241
5242 * sem_util.adb (May_Be_Lvalue): This routine was overly pessimistic in
5243 the case of dereferences. In X.all, X cannot be an l-value. We now
5244 catch that case (and implicit dereferences, too).
5245
52462009-04-15 Vincent Celier <celier@adacore.com>
5247
5248 * sinput-p.ads, sinput-p.adb (Clear_Source_File_Table): New procedure
5249
52502009-04-15 Ed Schonberg <schonberg@adacore.com>
5251
5252 * sem_ch12.adb (Is_Actual_Of_Previous_Formal): Make fully recursive.
5253 From code reading.
5254 (Analyze_Package_Instantiation): If generic unit in child instance is
5255 the same as generic unit in parent instance, look for an outer homonym
5256 to locate the desired generic.
5257
4a13695c
AC
52582009-04-15 Bob Duff <duff@adacore.com>
5259
5260 * sem_ch5.adb (Analyze_Loop_Statement): Don't check for infinite loop
5261 warnings unless the loop comes from source, because checking generated
5262 loops is a waste of time, and makes it harder to debug
5263 Check_Infinite_Loop_Warning.
5264
5265 * sem_warn.adb (Check_Infinite_Loop_Warning): If the local variable
5266 tested in the while loop is a renaming, do not warn. Otherwise, we get
5267 false alarms, because it's usually renaming something that we can't
5268 deal with (an indexed component, a global variable, ...).
5269
5270 * gnat_rm.texi: Fix typo
5271
52722009-04-15 Thomas Quinot <quinot@adacore.com>
5273
5274 * sem_ch6.adb: Minor reformatting
5275
c3b36d48
AC
52762009-04-15 Hristian Kirtchev <kirtchev@adacore.com>
5277
5278 * exp_ch7.adb (Expand_Ctrl_Function_Call): Check for the case where the
5279 immediate parent of the controlled function call is a component
5280 association.
5281
52822009-04-15 Ed Schonberg <schonberg@adacore.com>
5283
5284 * sem_ch8.adb (Use_One_Type): If the type is tagged, indicate that the
5285 corresponding class-wide type is also in use.
5286
52872009-04-15 Thomas Quinot <quinot@adacore.com>
5288
5289 * frontend.adb: Minor comment fix
5290
1f07382d
AC
52912009-04-15 Robert Dewar <dewar@adacore.com>
5292
5293 * gnatchop.adb (BOM_Length): New global variable
5294 (Write_Unit): Add new parameter Write_BOM
5295 (Write_Chopped_Files): Check for BOM and set Write_BOM for call
5296 to Write_Unit
5297
5298 * gnat_ugn.texi: Add note on propagation of BOM by gnatchop
5299
53002009-04-15 Geert Bosch <bosch@adacore.com>
5301
5302 * system-mingw-x86_64.ads, system-darwin-x86_64.ads
5303 (Backend_Overflow_Checks): Set to True.
5304
53052009-04-15 Gary Dismukes <dismukes@adacore.com>
5306
5307 * par-ch3.adb (P_Type_Declaration): Issue an error if the synchronized
5308 keyword is given in a record extension.
5309
53102009-04-15 Hristian Kirtchev <kirtchev@adacore.com>
5311
5312 * exp_ch7.adb (Expand_Ctrl_Function_Call): Procede with the expansion
5313 of a controlled function call in the context of a record aggregate.
5314 This does not apply to array aggregates since the call will be expanded
5315 into assignments.
5316
53172009-04-15 Ed Falis <falis@adacore.com>
5318
5319 * s-osinte-vxworks-kernel.adb, s-osinte-vxworks.adb,
5320 s-osinte-vxworks.ads s-vxwext.ads, s-vxwext-kernel.adb,
3405870d
EF
5321 s-vxwext-kernel.ads, s-vxwext-rtp.ads, s-vxwext-rtp.adb: Reorganize
5322 s-osinte-vxworks* and s-vxwext*.
1f07382d 5323
6cc60200
AC
53242009-04-15 Arnaud Charlet <charlet@adacore.com>
5325
5326 * gcc-interface/Make-lang.in: Update dependencies.
5327
5328 * gcc-interface/Makefile.in: Reorganization of s-osinte-vxworks*
5329 and s-vxwext*.
5330
f66d46ec
AC
53312009-04-15 Robert Dewar <dewar@adacore.com>
5332
5333 * sem_ch13.adb (Unchecked_Conversions): Store source location instead
5334 of node for location for warning messages.
5335
5336 * gnatchop.adb: Minor reformatting
5337
53382009-04-15 Ed Schonberg <schonberg@adacore.com>
5339
5340 * exp_ch6.adb: additional guard for renaming declarations for in
5341 parameters of an array type.
5342
bafc9e1d
AC
53432009-04-15 Robert Dewar <dewar@adacore.com>
5344
5345 * sem_eval.adb (Get_Static_Length): Go to origin node for array bounds
5346 in case they were rewritten by expander (Force_Evaluation).
5347
5348 * targparm.adb (Get_Target_Parameters): Correct check for
5349 Suppress_Exception_Locations.
5350
53512009-04-15 Ed Schonberg <schonberg@adacore.com>
5352
5353 * exp_ch6.adb (Expand_Inlined_Call): If an in-parameter in a call to be
5354 inlined is of an array type that is not bit-packed, use a renaming
5355 declaration to capture its value, rather than a constant declaration.
5356
443614e3
AC
53572009-04-15 Robert Dewar <dewar@adacore.com>
5358
5359 * rtsfind.adb: Minor reformatting.
5360
53612009-04-15 Emmanuel Briot <briot@adacore.com>
5362
5363 * prj-part.adb, prj-tree.adb, prj-tree.ads (Restore_And_Free): renames
5364 Restore, and free the saved context.
5365
53662009-04-15 Gary Dismukes <dismukes@adacore.com>
5367
5368 * sem_ch3.adb (Analyze_Private_Extension_Declaration): Move error check
5369 for illegal private extension from a synchronized interface parent in
5370 front of check for illegal limited extension so that limited extension
5371 from a synchronized interface will be rejected.
5372 (Check_Ifaces): Check that a private extension that has a synchronized
5373 interface as a progenitor must be explicitly declared synchronized.
5374 Also check that a record extension cannot derive from a synchronized
5375 interface.
5376
991395ab
AC
53772009-04-15 Pascal Obry <obry@adacore.com>
5378
5379 * adaint.h (__gnat_unlink): Add spec.
5380 (__gnat_rename): Likewise.
5381
53822009-04-15 Vincent Celier <celier@adacore.com>
5383
5384 * prj-nmsc.adb: Minor spelling error corrections in error messages
5385
53862009-04-15 Robert Dewar <dewar@adacore.com>
5387
5388 * sinfo.ads: Minor comment update
5389
5390 * opt.ads: Minor comment updates
5391
5392 * checks.adb (Enable_Overflow_Check): Do not set Do_Overflow_Check for
5393 modular type.
5394
53952009-04-15 Ed Schonberg <schonberg@adacore.com>
5396
5397 * exp_disp.ads, exp_disp.adb (Register_Primitive): Is now a function
5398 that generates the code needed to update a dispatch table when a
5399 primitive operation is declared with a subprogram body without previous
5400 spec. Insertion of the generated code is responsibility of the caller.
5401 (Make_DT): When building static tables, append the code created by
5402 Register_Primitive to update a secondary table after it has been
5403 constructed.
5404
5405 * exp_ch3.adb, exp_ch6.adb: use new version of Register_Primitive.
5406
5407 * sem_disp.adb (Check_Dispatching_Operation): Call Register_Primitive
5408 on an overriding operation that implements an interface operation only
5409 if not building static dispatch tables.
5410
54112009-04-15 Hristian Kirtchev <kirtchev@adacore.com>
5412
5413 * a-caldel-vms.adb (To_Duration): Declare a "safe" end of time which
5414 does not cause overflow when converted to Duration. Use the safe value
5415 as the maximum allowable time delay..
5416
54172009-04-15 Jerome Lambourg <lambourg@adacore.com>
5418
5419 * g-comlin.adb (Set_Command_Line): When adding a switch with attached
5420 parameter, specify that the delimiter is NUL, otherwise "-j2" will be
5421 translated to "-j 2".
5422
54232009-04-15 Bob Duff <duff@adacore.com>
5424
5425 * rtsfind.adb (Maybe_Add_With): Split out procedure to add implicit
5426 with_clauses, to avoid code duplication. Change this processing so we
5427 always add a with_clause on the main unit if needed.
5428
55cc1a05
AC
54292009-04-15 Pascal Obry <obry@adacore.com>
5430
5431 Add support for Win32 native encoding for delete/rename routines.
5432
5433 * adaint.c (__gnat_unlink): New routine.
5434 (__gnat_rename): New routine.
5435 Simple wrapper routines used to convert to proper encoding on
5436 Windows.
5437
5438 * s-os_lib.adb: Use __gnat_unlink and __gnat_rename instead of direct
5439 call to the C library.
5440
5441 * g-sercom-mingw.adb, s-win32.ads: Update Win32 binding.
5442
54432009-04-15 Robert Dewar <dewar@adacore.com>
5444
5445 * s-tassta.adb: Minor reformatting
5446
1f6821b4
AC
54472009-04-15 Robert Dewar <dewar@adacore.com>
5448
5449 * frontend.adb (Frontend): Set proper default for
5450 Warn_On_Non_Local_Exception.
5451
5452 * opt.ads (Exception_Handler_Encountered): New flag
5453 (No_Warn_On_Non_Local_Exception): New flag
5454
5455 * par-ch11.adb (P_Exception_Handler): Set Exception_Handler_Encountered
5456
5457 * sem_warn.adb (Set_Warning_Switch): Set No_Warn_On_Non_Local_Exception
5458 (Set_Dot_Warning_Switch): Set No_Warn_On_Non_Local_Exception
5459
54602009-04-15 Cyrille Comar <comar@adacore.com>
5461
5462 * s-tassta.adb, a-exextr.adb, a-elchha.adb
5463 (Ada.Exception.Last_Chance_Handler): Do not print unhandled exception
5464 message when exception traces are active since it would generate
5465 redundant information.
5466 (Exception_Traces.Notify_Exception): put message output by a critical
5467 section to avoid unsynchronized output.
5468 (Trace_Unhandled_Exception_In_Task): put message output by a critical
5469 section to avoid unsynchronized output.
5470
54712009-04-15 Emmanuel Briot <briot@adacore.com>
5472
5473 * g-comlin.adb, prj-tree.adb, prj-tree.ads, prj.adb, prj.ads
5474 (Free): New subprogram.
5475
8aec446b
AC
54762009-04-15 Hristian Kirtchev <kirtchev@adacore.com>
5477
5478 * a-calend.adb: Add new constant Nanos_In_Four_Years.
5479 (Formatting_Operations.Time_Of): Change the way four year chunks of
5480 nanoseconds are added to the intermediate result.
5481
54822009-04-15 Nicolas Setton <setton@adacore.com>
5483
5484 * sysdep.c: Add __APPLE__ in the list of systems where get_immediate
5485 does not need to wait for a carriage return.
5486
54872009-04-15 Tristan Gingold <gingold@adacore.com>
5488
5489 * bindgen.adb: Do not generate adafinal if No_Finalization restriction
5490 is set.
5491
54922009-04-15 Ed Schonberg <schonberg@adacore.com>
5493
5494 * freeze.adb (Freeze_Entity): improve error message for improper use of
5495 incomplete types.
5496 Diagnose additional illegal uses of incomplete types in formal parts.
5497 appearing in formal parts.
5498
5499 * sem_ch6.adb (Process_Formals, Analyze_Return_Type): ditto.
5500
55012009-04-15 Robert Dewar <dewar@adacore.com>
5502
5503 * exp_ch4.adb (Expand_N_Allocator): Install test for object too large.
5504
442dd5fb
NR
55052009-04-15 Nicolas Roche <roche@adacore.com>
5506
5507 * adaint.c: Add function __gnat_lwp_self that retrieves the LWP of the
5508 current thread.
5509
5510 * s-osinte-linux.ads: Import the __gnat_lwp_self function as lwp_self
5511
5512 * s-taprop-linux.adb (Enter_Task): Store the LWP in the TCB
5513
61bee0e3
AC
55142009-04-15 Ed Schonberg <schonberg@adacore.com>
5515
5516 * sem_ch4.adb: improve error message on exponentiation.
5517
55182009-04-15 Hristian Kirtchev <kirtchev@adacore.com>
5519
5520 * a-calend.adb: Move constant Epoch_Offset from package
5521 Conversion_Operations to top level.
5522 (Delay_Operations.To_Duration): Define a constant which represents
5523 "end of time" and use it as a guard against very distant delay dates.
5524 Protect the code against overflow when performing the origin shift to
5525 Unix time.
5526
361effb1
AC
55272009-04-15 Robert Dewar <dewar@adacore.com>
5528
5529 * sem_prag.adb: Minor reformatting.
5530
5531 * sem_type.adb: Minor reformatting
5532
55332009-04-15 Javier Miranda <miranda@adacore.com>
5534
5535 * sem_ch6.adb (Analyze_Abstract_Subprogram_Declaration): Add missing
5536 support to check eliminated subprograms.
5537
5538 * sem_elim.ads (Eliminate_Error_Msg): Update documentation.
5539
5540 * sem_elim.adb (Set_Eliminated): Add support for elimination of
5541 dispatching subprograms.
5542
5543 * exp_disp.adb (Make_DT): Minor code cleanup when freezing primitive
5544 operations. Initialize with "null" the slots of eliminated dispaching
5545 primitives.
5546 (Write_DT): Add output for eliminated primitives.
5547
5548 * sem_disp.adb (Check_Dispatching_Call): Check eliminated primitives.
5549
f7ca1d04
AC
55502009-04-15 Ed Schonberg <schonberg@adacore.com>
5551
5552 * sem_ch8.adb (Use_One_Type): If both clauses appear on the same unit,
5553 the second is redundant, regardless of scopes.
5554
55552009-04-15 Vincent Celier <celier@adacore.com>
5556
5557 * prj-nmsc.adb (Get_Directories): Check for sources before checking
5558 the object directory as when there are no sources, they may not be any
5559 object directory.
5560
5561 * make.adb (Gnatmake): Do not attempt to get the path name of the exec
5562 directory, when there are no exec directory.
5563
55642009-04-15 Ed Schonberg <schonberg@adacore.com>
5565
5566 * sem_type.adb (Remove_Conversions): In order to resolve spurious
5567 ambiguities, refine removal of universal interpretations from complex
5568 expressions with literal arguments, when some numeric operators have
5569 been declared abstract.
5570
55712009-04-15 Ed Falis <falis@adacore.com>
5572
5573 * init.c: Map SIGSEGV to Storage_Error for all targets for uniformity
5574 and backward compatibility for targets using probing for stack overflow
5575
55762009-04-15 Ed Schonberg <schonberg@adacore.com>
5577
5578 * sem_prag.adb (Analyze_Pragma, case 'Obsolescent): Pragma is legal
5579 after any declaration, including renaming declarations.
5580
4bffd4e0
AC
55812009-04-15 Arnaud Charlet <charlet@adacore.com>
5582
5583 * gcc-interface/Make-lang.in: Update dependencies.
5584
5585 * gcc-interface/Makefile.in: Fix VxWorks target pairs.
cbd8be94 5586 Update xenomai target pairs.
4bffd4e0 5587
a523b302
JM
55882009-04-15 Javier Miranda <miranda@adacore.com>
5589
5590 * exp_ch4.adb (Expand_N_Allocator): Code cleanup.
5591
5592 * sem_ch6.adb (Check_Anonymous_Return): Add missing support for
5593 functions returning anonymous access to class-wide limited types. Mark
5594 also the containing scope as a task master.
5595
5596 * sem_ch8.adb (Restore_Scope_Stack): Add missing management for
5597 limited-withed packages. Required to restore their visibility after
5598 processing packages associated with implicit with-clauses.
5599
5600 * exp_ch3.adb (Build_Class_Wide_Master): Avoid marking masters
5601 associated with return statements because this work is now done by
5602 Check_Anonymous_Return.
5603 (Build_Master): Code cleanup.
5604
e358346d
AC
56052009-04-15 Thomas Quinot <quinot@adacore.com>
5606
5607 * sem_warn.ads: Minor reformatting
5608
56092009-04-15 Ed Schonberg <schonberg@adacore.com>
5610
5611 * sem_ch3.adb: better error message for illegal interfaces
5612
5613 * sem_ch6.adb (Possible_Freeze): Delay freezing a subprogram if a
5614 formal is an incomplete type from a limited_with clause.
5615
a9872a59
VC
56162009-04-15 Vincent Celier <celier@adacore.com>
5617
5618 * prj-nmsc.adb (Locate_Directory): New Boolean parameter
5619 Externally_Built indicating if the project is externally built. If it
5620 is, and --subdirs is specified, but the subdir does not exist, look
5621 for the specified directory, without the subdir.
5622
b8aadf01
AC
56232009-04-15 Gary Dismukes <dismukes@adacore.com>
5624
5625 * a-tasatt.adb: Fix typo, plus minor reformatting
5626
5627 * sem_ch3.ads: Add missing hyphen ("class wide" => "class-wide").
5628
5629 * sem_ch10.adb: Add missing hyphen ("use visible" => "use-visible").
5630
56312009-04-15 Ed Schonberg <schonberg@adacore.com>
5632
5633 * sem_ch3.adb (Analyze_Private_Extension_Declaration): Verify that a
5634 private extension whose parent is a synchronized interface carries an
5635 explicit synchronized keyword.
5636
a808ba1b
TQ
56372009-04-15 Thomas Quinot <quinot@adacore.com>
5638
5639 * exp_smem.adb (Make_Shared_Var_Procs): For a protected type,
5640 instantiate generic shared object package with the corresponding
5641 record type.
5642
e0568eec
AC
56432009-04-15 Arnaud Charlet <charlet@adacore.com>
5644
5645 * system-linux-sparc.ads: Remove obsolete entries.
5646
56472009-04-15 Thomas Quinot <quinot@adacore.com>
5648
5649 * s-tasuti.ads: Add ??? comment
5650
28450a75
ES
56512009-04-15 Ed Schonberg <schonberg@adacore.com>
5652
5653 * sem_ch3.adb (Analyze_Type_Declaration): Create freeze node for access
5654 type even if the designated type comes from a limited_with clause, to
5655 ensure that the symbol for the finalization list of the access type is
5656 created.
5657
b0d3b11d
AC
56582009-04-10 Robert Dewar <dewar@adacore.com>
5659
5660 * sem_warn.ads, sem_warn.adb (Check_Low_Bound_Tested): Catch more cases
5661 for warning suppression.
5662
56632009-04-10 Ed Schonberg <schonberg@adacore.com>
5664
5665 * sem_ch8.adb (Use_One_Type): If the two use_type clauses are
5666 identical, there is no redudancy to check.
5667
56682009-04-10 Gary Dismukes <dismukes@adacore.com>
5669
5670 * exp_ch5.adb (Expand_N_Extended_Return_Statement): Delete redundant
5671 calls initializing SS_Allocator (which is initialized in following
5672 code).
5673 (Expand_Simple_Function_Return): Add comment about False value for
5674 Comes_From_Source on secondary-stack allocator.
5675
5676 * exp_ch9.adb (Build_Entry_Family_Name): Add comment.
5677 (Build_Entry_Name): Add comment.
5678
fad0600d
AC
56792009-04-10 Robert Dewar <dewar@adacore.com>
5680
5681 * einfo.ads, einfo.adb (Low_Bound_Tested): New name for Low_Bound_Known
5682
5683 * sem_prag.adb (Analyze_Pragma, case Check): Remove check for lower
5684 bound tested, since this is now done more generally in Sem_Res.
5685
5686 * sem_res.adb (Resolve_Comparison_Op): Add call to
5687 Check_Lower_Bound_Tested.
5688 (Resolve_Equality_Op): Add call to Check_Lower_Bound_Tested
5689
5690 * sem_warn.ads, sem_warn.adb (Check_Low_Bound_Tested): New procedure
5691 (Low_Bound_Tested): New name for Low_Bound_Known flag
5692
5693 * exp_ch5.adb: Minor reformatting
5694
5695 * exp_ch4.adb:
5696 Add comments on copying the Comes_From_Source flag for allocators
5697
5698 * sinfo.ads:
5699 Add comments on copying the Comes_From_Source flag for allocators
5700
5701 * exp_ch6.adb (Make_Build_In_Place_Call_In_Allocator): Copy
5702 Comes_From_Source flag from old allocator to new one.
5703
57042009-04-10 Ed Schonberg <schonberg@adacore.com>
5705
5706 * sem_ch6.ads: Address missing documentation query
5707
57082009-04-10 Vincent Celier <celier@adacore.com>
5709
5710 * prj-attr.adb:
5711 Add new Linker attributes Max_Command_Line_Length, Response_File_Format
5712 and Response_File_Switches.
5713
5714 * prj-nmsc.adb (Process_Linker): Process new attributes
5715 Max_Command_Line_Length, Response_File_Format and
5716 Response_File_Switches.
5717
5718 * prj.ads (Response_File_Format): New enumeration type
5719 (Project_Configuration): New componants Max_Command_Line_Length,
5720 Resp_File_Format and Resp_File_Options.
5721
5722 * snames.ads-tmpl: Add new standard names for linking response files
5723 for gprbuild: GNU, None, Object_List, Option_List,
5724 Max_Command_Line_Length, Response_File_Format and
5725 Response_File_Switches.
5726
57272009-04-10 Geert Bosch <bosch@adacore.com>
5728
5729 * system-aix.ads, system-darwin-ppc.ads, system-darwin-x86.ads,
5730 system-freebsd-x86.ads, system-hpux.ads, system-hpux-ia64.ads,
5731 system-irix-n32.ads, system-irix-o32.ads, system-linux-alpha.ads,
5732 system-linux-hppa.ads, system-linux-ia64.ads, system-linux-ppc.ads,
5733 system-linux-s390.ads, system-linux-s390x.ads, system-linux-sh4.ads,
5734 system-linux-sparc.ads, system-linux-x86_64.ads, system-linux-x86.ads,
5735 system-mingw.ads, system-solaris-sparc.ads, system-solaris-sparcv9.ads,
5736 system-solaris-x86.ads, system-tru64.ads, system-vms_64.ads,
5737 system-vms.ads, system-vms-ia64.ads, system-vms-zcx.ads,
5738 system-vxworks-arm.ads, system-vxworks-m68k.ads,
5739 system-vxworks-mips.ads, system-vxworks-ppc.ads,
5740 system-vxworks-sparcv9.ads, system-vxworks-x86.ads
5741 (Backend_Overflow_Checks): Set to True.
5742
934a3a25
AC
57432009-04-10 Thomas Quinot <quinot@adacore.com>
5744
5745 * exp_attr.adb: Minor reformatting
5746
57472009-04-10 Ed Schonberg <schonberg@adacore.com>
5748
5749 * sem_prag.adb (Check_Precondition_Postcondition): Within a generic,
5750 analyze the expression for a postcondition, even if the compiler mode
5751 is Generate_Code.
5752
ab8e1b35
RD
57532009-04-10 Robert Dewar <dewar@adacore.com>
5754
5755 * sem_aux.adb: Minor reformatting
5756
2c880bdf
EF
57572009-04-10 Ed Falis <falis@adacore.com>
5758
5759 * init.c: Change VxWorks 6 stack overflow checking for kernel apps.
5760
5761 * system-vxworks-ppc.ads, system-vxworks-x86.ads: Update header.
5762
d8221f45
TQ
57632009-04-10 Thomas Quinot <quinot@adacore.com>
5764
5765 * sem_ch6.ads (Check_Subtype_Conformant): Add ??? comment for
5766 undocumented formal.
5767 Minor reformatting
5768
5769 * a-direio.ads: Fix typo in comment
5770
5771 * sem_ch3.adb, g-dirope.adb, sem_type.adb, sem_ch12.adb, sem_case.adb,
5772 errout.adb, sem_ch4.adb, sem_ch11.adb, exp_dist.adb, sem_ch13.adb:
5773 Use uniform phrasing for comment at start of subprogram body.
5774
5775 * xsnamest.adb: Add note to explain why we use specific names for the
5776 newly generated files instead of generating snames.{ads,adb,h} directly
5777
f559e62f
AC
57782009-04-10 Sergey Rybin <rybin@adacore.com>
5779
5780 * vms_data.ads:
5781 Add qualifier for new gnatstub option '--no-exception'
5782
5783 * gnat_ugn.texi:
5784 Add the description of the new gnatstub option '--no-exception'
5785
57862009-04-10 Robert Dewar <dewar@adacore.com>
5787
5788 * rtsfind.adb: Minor reformatting
5789
57902009-04-10 Thomas Quinot <quinot@adacore.com>
5791
5792 * sem_disp.adb: Minor reformatting.
5793 Add comment pointing to RM clause for the case of warning against a
5794 (failed) attempt at declaring a primitive operation elsewhere than in a
5795 package spec.
5796
57972009-04-10 Ed Schonberg <schonberg@adacore.com>
5798
5799 * sem_ch12.adb (Denotes_Formal_Package): Check whether the package is
5800 an actual for a previous formal package of the current instance.
5801
e50e1c5e
AC
58022009-04-10 Bob Duff <duff@adacore.com>
5803
5804 * rtsfind.adb (RTE): Put implicit with_clauses on whatever unit needs
5805 them first, rather than on the extended main unit.
5806
58072009-04-10 Ed Schonberg <schonberg@adacore.com>
5808
5809 * sem_ch6.adb (Check_Discriminant_Conformance): If discriminant
5810 specification of full view carries a null exclusion indicator, create
5811 an itype for it, to check for conformance with partial view.
5812
cb736868
AC
58132009-04-10 Bob Duff <duff@adacore.com>
5814
5815 * rtsfind.ads: Minor code change: make RE_Unit_Table constant.
5816
5817 * rtsfind.adb: Minor comment changes, and remove useless code.
5818
5819 * sinfo.ads: Add ??? comment.
5820
58212009-04-10 Vincent Celier <celier@adacore.com>
5822
5823 * vms_data.ads: Add missing GNAT SYNC VMS qualifiers -main= and -U
5824
8a78c50d
AC
58252009-04-10 Ed Schonberg <schonberg@adacore.com>
5826
5827 * exp_attr.adb (Expand_N_Attribute_Reference, case 'Tag): If the tagged
5828 type is a synchronized type, retrieve tag information from the
5829 corresponding record, which has the dispatch table link.
5830
58312009-04-10 Jerome Lambourg <lambourg@adacore.com>
5832
5833 * g-comlin.adb (Group_Analysis): Take care of switches that might be
5834 decomposed afterwards, but are present as-is in the command line
5835 configuration, and thus should be kept as-is.
5836
b66c3ff4
AC
58372009-04-10 Robert Dewar <dewar@adacore.com>
5838
5839 * gnat_rm.texi: Document that postconditions are tested on implicit
5840 returns.
5841
5842 * sem_aux.adb: Minor reformatting
5843
58442009-04-10 Gary Dismukes <dismukes@adacore.com>
5845
5846 * itypes.adb (Create_Null_Excluding_Itype): Apply Base_Type when
5847 setting Etype.
5848
5849 * par-ch3.adb (P_Access_Type_Definition): Set new attribute
5850 Null_Exclusion_In_Return_Present when an access-to-function type has a
5851 result type with an explicit not null.
5852
5853 * sem_ch3.adb (Access_Subprogram_Definition): If a null exclusion is
5854 given on the result type, then create a null-excluding itype for the
5855 function.
5856
5857 * sem_ch6.adb (Analyze_Return_Type): Create a null-excluding itype in
5858 the case where a null exclusion is imposed on a named access type.
5859 (Analyze_Subprogram_Specification): Push and pop the scope of the
5860 function around the call to Analyze_Return_Type in the case of no
5861 formals, for consistency with handling when formals are present
5862 (Process_Formals does this). Ensures that any itype created for the
5863 return type will be associated with the proper scope.
5864
5865 * sem_ch12.adb (Analyze_Generic_Subprogram_Declaration): If a null
5866 exclusion is given on a generic function's result type, then create a
5867 null-excluding itype for the generic function.
5868 (Instantiate_Object): Set Null_Exclusion_Present of a constant created
5869 for an actual for a formal in object according to the setting on the
5870 formal. Ensures null exclusion checks are done when the association is
5871 elaborated.
5872
5873 * sinfo.ads: Add new flag Null_Exclusion_In_Return_Present on
5874 N_Access_Function_Definition.
5875
5876 * sinfo.adb: Add Get_ and Set_ operations for
5877 Null_Exclusion_In_Return_Present.
5878
5334d18f
BD
58792009-04-10 Bob Duff <duff@adacore.com>
5880
5881 * exp_ch5.adb, exp_ch6.adb, sem_ch6.adb: Move the code that creates a
5882 call to the _Postconditions procedure in the case of implicit returns
5883 from analysis to expansion. This eliminates some duplicated code. Use
5884 the Postcondition_Proc to find the identity of this procedure during
5885 expansion.
5886
701b7fbb
RD
58872009-04-10 Robert Dewar <dewar@adacore.com>
5888
5889 * sem_ch6.adb: Minor code clean up.
5890
5891 * einfo.ads, sem_attr.adb: Minor comment fixes.
5892
58932009-04-10 Robert Dewar <dewar@adacore.com>
5894
5895 * sem_ch8.adb: Minor reformatting
5896
7ca78bba
RD
58972009-04-10 Robert Dewar <dewar@adacore.com>
5898
5899 * einfo.ads, einfo.adb (Postcondition_Proc): New attribute for
5900 procedures.
5901
5902 * sem_ch6.adb: Minor code clean up.
5903
043ce308
AC
59042009-04-10 Robert Dewar <dewar@adacore.com>
5905
5906 * mlib-tgt-specific-xi.adb: Minor reformatting
5907
59082009-04-10 Bob Duff <duff@adacore.com>
5909
5910 * einfo.ads: Minor comment fixes
5911
59122009-04-10 Vincent Celier <celier@adacore.com>
5913
5914 * snames.ads-tmpl: Remove names that are no longer used in the
5915 Project Manager.
5916 Mark specifically those that are used only in gprbuild
5917
59182009-04-10 Eric Botcazou <ebotcazou@adacore.com>
5919
5920 * init.c: Adjust EH support code on Alpha/Tru64.
5921
59222009-04-10 Bob Duff <duff@adacore.com>
5923
5924 * sem_ch6.adb (Process_PPCs): Add a call to the _Postconditions
5925 procedure on every path that could return implicitly (not via a return
5926 statement) from a procedure.
5927
59282009-04-10 Ed Schonberg <schonberg@adacore.com>
5929
5930 * exp_ch9.adb (Build_Master_Entity): An extended return statement is a
5931 valid scope for a task declarations and therefore for a master id.
5932
59332009-04-10 Robert Dewar <dewar@adacore.com>
5934
5935 * sem_aux.adb: Minor reformatting
5936
59372009-04-10 Vincent Celier <celier@adacore.com>
5938
5939 * scn.adb (Obsolescent_Check_Flag): New Boolean flag, initialized to
5940 True.
5941 (Obsolescent_Check): Do nothing if Obsolescent_Check_Flag is False
5942 (Set_Obsolescent_Check): New procedure to change the value of
5943 Obsolescent_Check_Flag.
5944
5945 * scn.ads (Set_Obsolescent_Check): New procedure to control
5946 Obsolescent_Check.
5947
5948 * sinput-l.adb (Load_File): Do not check for pragma Restrictions on
5949 obsolescent features while preprocessing.
5950
550f4135
AC
59512009-04-10 Thomas Quinot <quinot@adacore.com>
5952
5953 * xsnamest.adb: Use XUtil to have uniform line endings (UNIX style) in
5954 generated files on all platforms.
5955
59562009-04-10 Robert Dewar <dewar@adacore.com>
5957
5958 * sem_aux.adb: Minor reformatting
5959
59602009-04-10 Ed Schonberg <schonberg@adacore.com>
5961
5962 * sem_ch3.adb (Access_Definition): Handle properly the case of a
5963 protected function with formals that returns an anonymous access type.
5964
59652009-04-10 Thomas Quinot <quinot@adacore.com>
5966
5967 * sem_disp.adb: Minor reformatting
5968
59692009-04-10 Vasiliy Fofanov <fofanov@adacore.com>
5970
5971 * seh_init.c: Do not use the 32-bit specific implementation of
5972 __gnat_install_SEH_handler on 64-bit Windows target (64-bit specific
5973 version TBD).
5974
59752009-04-10 Jose Ruiz <ruiz@adacore.com>
5976
5977 * mlib-tgt-specific-xi.adb (Get_Target_Prefix): Target_Name may contain
5978 a '/' at the end so we better use the complete target name to determine
5979 whether it is a PowerPC 55xx target.
5980
3996951a
TQ
59812009-04-10 Thomas Quinot <quinot@adacore.com>
5982
5983 * sem_eval.adb: Minor reformatting
5984
b62a90f2
AC
59852009-04-10 Thomas Quinot <quinot@adacore.com>
5986
5987 * snames.h, snames.ads, snames.adb: Remove files, now generated from
5988 templates.
5989
5990 * snames.h-tmpl, snames.ads-tmpl, snames.adb-tmpl: Templates for the
5991 above.
5992
5993 * xsnamest.adb: New file.
5994
5995 * gcc-interface/Make-lang.in: New target for automated generation of
5996 snames.ads, snames.adb and snames.h
5997
62298c61
TG
59982009-04-10 Tristan Gingold <gingold@adacore.com>
5999
6000 * gcc-interface/Makefile.in, gcc-interface/utils.c: Include "rtl.h" to
6001 avoid compile time warnings.
6002 Do not add gcc/config in include search list while compiling the RTS.
6003 Pragma Thread_Local_Storage is available on any target.
6004
3764bb00
BD
60052009-04-10 Bob Duff <duff@adacore.com>
6006
6007 * sem.ads, par.adb, sem_ch6.adb, sem_ch8.adb: Minor comment fixes.
6008
b3b9865d
AC
60092009-04-10 Tristan Gingold <gingold@adacore.com>
6010
6011 * init.c: Install signal handler on Darwin.
6012
60132009-04-10 Robert Dewar <dewar@adacore.com>
6014
6015 * sem_prag.adb: Minor reformatting
6016
6017 * exp_util.adb (Make_Non_Empty_Check): New function
6018 (Silly_Boolean_Array_Not_Test): Add call to Make_Non_Empty_Check
6019 (Silly_Boolean_Array_Xor_Test): Use Make_Non_Empty_Check
6020
60212009-04-10 Arnaud Charlet <charlet@adacore.com>
6022
6023 * make.adb, gnatlink.adb: Rename JGNAT toolchain.
6024
60252009-04-10 Jose Ruiz <ruiz@adacore.com>
6026
6027 * mlib-tgt-specific-xi.adb (Get_Target_Prefix): Insert the appropriate
6028 tool prefix for AVR and PowerPC 55xx targets.
6029
60302009-04-10 Robert Dewar <dewar@adacore.com>
6031
6032 * sem_warn.adb (Within_Postcondition): New function
6033 (Check_Unset_Reference): Use Within_Postcondition to stop bad warning
6034
c5288c90
AC
60352009-04-10 Robert Dewar <dewar@adacore.com>
6036
6037 * sem_warn.adb: Minor reformatting
6038
6039 * make.adb: Minor reformatting.
6040
60412009-04-10 Gary Dismukes <dismukes@adacore.com>
6042
6043 * exp_ch7.adb (Find_Final_List): When creating a finalization-chain
6044 entity and the scope is a subprogram, retrieve the Sloc of the
6045 subprogram's body rather than using the sloc of the spec, for better
6046 line-stepping behavior in gdb.
6047 (Wrap_Transient_Declaration): For the Sloc of nodes created with a list
6048 controller, use the Sloc of the first declaration of the containing list
6049 rather than that of the node that triggered creation of the list
6050 controller.
6051
2844b330
AC
60522009-04-10 Vincent Celier <celier@adacore.com>
6053
6054 * prj-nmsc.adb (Check_Naming_Schemes): Initialize local variable Casing
6055 to avoid gcc warning.
6056
60572009-04-10 Robert Dewar <dewar@adacore.com>
6058
6059 * g-comlin.adb: Add ??? comment
6060
60612009-04-10 Ed Schonberg <schonberg@adacore.com>
6062
6063 * sem_warn.adb (Check_Unused_Withs): Do not emit message about
6064 unreferenced entities for a package with no visible declarations.
6065
60662009-04-10 Robert Dewar <dewar@adacore.com>
6067
6068 * exp_ch9.adb: Minor reformatting
6069
be21e9d8
AC
60702009-04-10 Thomas Quinot <quinot@adacore.com>
6071
6072 * sem_prag.adb: Minor reformatting
6073
60742009-04-10 Vincent Celier <celier@adacore.com>
6075
6076 * prj-nmsc.adb:
6077 (Check_Library_Attributes): For a project qualified as a library project
6078 that is not a library project, indicate in the error message which
6079 attributes are missing (Library_Dir and/or Library_Name).
6080
4a7dedcb
BD
60812009-04-10 Bob Duff <duff@adacore.com>
6082
6083 * exp_ch5.adb, exp_ch9.adb: Avoid use of No_Position in Sloc of
6084 generated nodes, because it might confuse various circuits in the FE.
6085
4017021b
AC
60862009-04-10 Ed Schonberg <schonberg@adacore.com>
6087
6088 * sem_prag.adb (Analyze_Pragma, case Task_Name): Do not expand argument
6089 of pragma. It will be recopied and analyzed when used in call to
6090 Create_Task.
6091
6092 * sem_res.adb (Resolve_Call): Clarify use of secondary stack within
6093 initialization operations and recognize use of it in procedure calls
6094 within init_procs.
6095
6096 * exp_ch9.adb (Make_Task_Create_Call): Copy full tree of Task_Name
6097 argument, because it may have side-effects.
6098
6099 * exp_ch2.adb: Remove obsolete comments on default functions
6100
61012009-04-10 Jose Ruiz <ruiz@adacore.com>
6102
6103 * adaint.c (RTX section): Do for RTX the same thing as we do for
6104 Windows (include ctype.h and define a fallback ISALPHA if IN_RTS).
6105
24357840
RD
61062009-04-10 Robert Dewar <dewar@adacore.com>
6107
6108 * sem_aux.ads, sem_aux.adb (Nearest_Current_Scope): New function.
6109
6110 * sem_res.adb (Resolve_Call): Fix test for
6111 Suppress_Value_Tracking_On_Call (was wrong for the case of a call from
6112 a non-dynamic scope).
6113
4f64abad
AC
61142009-04-10 Robert Dewar <dewar@adacore.com>
6115
6116 * make.adb: Add comment.
6117 Minor reformatting
6118
61192009-04-10 Nicolas Setton <setton@adacore.com>
6120
6121 * s-osprim-darwin.adb: New file.
6122
6123 * s-osinte-darwin.adb, s-osinte-darwin.ads: Fix binding to timespec.
6124
61252009-04-10 Thomas Quinot <quinot@adacore.com>
6126
6127 * g-socket.ads: Add comment clarifying alignment requirement for Fd_Set
6128
748086b7
JJ
61292009-04-09 Nick Clifton <nickc@redhat.com>
6130
6131 * adadecode.h: Change copyright header to refer to version
6132 3 of the GNU General Public License with version 3.1 of the
6133 GCC Runtime Library Exception and to point readers at the
6134 COPYING3 and COPYING3.RUNTIME files and the FSF's license web
6135 page.
6136 * 9drpc.adb: Likewise.
6137 * a-assert.adb: Likewise.
6138 * a-astaco.adb: Likewise.
6139 * a-calari.adb: Likewise.
6140 * a-calcon.adb: Likewise.
6141 * a-calcon.ads: Likewise.
6142 * a-caldel.ads: Likewise.
6143 * a-calend-vms.adb: Likewise.
6144 * a-calend-vms.ads: Likewise.
6145 * a-calend.adb: Likewise.
6146 * a-calend.ads: Likewise.
6147 * a-calfor.adb: Likewise.
6148 * a-catizo.adb: Likewise.
6149 * a-cdlili.adb: Likewise.
6150 * a-cdlili.ads: Likewise.
6151 * a-cgaaso.adb: Likewise.
6152 * a-cgaaso.ads: Likewise.
6153 * a-cgarso.adb: Likewise.
6154 * a-cgcaso.adb: Likewise.
6155 * a-chacon.adb: Likewise.
6156 * a-chacon.ads: Likewise.
6157 * a-chahan.adb: Likewise.
6158 * a-chahan.ads: Likewise.
6159 * a-chlat9.ads: Likewise.
6160 * a-chtgke.adb: Likewise.
6161 * a-chtgke.ads: Likewise.
6162 * a-chtgop.adb: Likewise.
6163 * a-chtgop.ads: Likewise.
6164 * a-chzla1.ads: Likewise.
6165 * a-chzla9.ads: Likewise.
6166 * a-cidlli.adb: Likewise.
6167 * a-cidlli.ads: Likewise.
6168 * a-cihama.adb: Likewise.
6169 * a-cihama.ads: Likewise.
6170 * a-cihase.adb: Likewise.
6171 * a-cihase.ads: Likewise.
6172 * a-ciorma.adb: Likewise.
6173 * a-ciorma.ads: Likewise.
6174 * a-ciormu.adb: Likewise.
6175 * a-ciormu.ads: Likewise.
6176 * a-ciorse.adb: Likewise.
6177 * a-ciorse.ads: Likewise.
6178 * a-clrefi.adb: Likewise.
6179 * a-clrefi.ads: Likewise.
6180 * a-cohama.adb: Likewise.
6181 * a-cohama.ads: Likewise.
6182 * a-cohase.adb: Likewise.
6183 * a-cohase.ads: Likewise.
6184 * a-cohata.ads: Likewise.
6185 * a-coinve.adb: Likewise.
6186 * a-coinve.ads: Likewise.
6187 * a-colien.adb: Likewise.
6188 * a-colien.ads: Likewise.
6189 * a-colire.adb: Likewise.
6190 * a-colire.ads: Likewise.
6191 * a-comlin.adb: Likewise.
6192 * a-comlin.ads: Likewise.
6193 * a-convec.adb: Likewise.
6194 * a-convec.ads: Likewise.
6195 * a-coorma.adb: Likewise.
6196 * a-coorma.ads: Likewise.
6197 * a-coormu.adb: Likewise.
6198 * a-coormu.ads: Likewise.
6199 * a-coorse.adb: Likewise.
6200 * a-coorse.ads: Likewise.
6201 * a-coprnu.adb: Likewise.
6202 * a-coprnu.ads: Likewise.
6203 * a-crbltr.ads: Likewise.
6204 * a-crbtgk.adb: Likewise.
6205 * a-crbtgk.ads: Likewise.
6206 * a-crbtgo.adb: Likewise.
6207 * a-crbtgo.ads: Likewise.
6208 * a-crdlli.adb: Likewise.
6209 * a-crdlli.ads: Likewise.
6210 * a-cwila1.ads: Likewise.
6211 * a-cwila9.ads: Likewise.
6212 * a-decima.adb: Likewise.
6213 * a-decima.ads: Likewise.
6214 * a-diocst.adb: Likewise.
6215 * a-diocst.ads: Likewise.
6216 * a-direct.adb: Likewise.
6217 * a-direct.ads: Likewise.
6218 * a-direio.adb: Likewise.
6219 * a-direio.ads: Likewise.
6220 * a-dirval-mingw.adb: Likewise.
6221 * a-dirval-vms.adb: Likewise.
6222 * a-dirval.adb: Likewise.
6223 * a-dirval.ads: Likewise.
6224 * a-dynpri.adb: Likewise.
6225 * a-einuoc.adb: Likewise.
6226 * a-einuoc.ads: Likewise.
6227 * a-elchha.adb: Likewise.
6228 * a-elchha.ads: Likewise.
6229 * a-envvar.adb: Likewise.
6230 * a-excach.adb: Likewise.
6231 * a-except-2005.adb: Likewise.
6232 * a-except-2005.ads: Likewise.
6233 * a-except.adb: Likewise.
6234 * a-except.ads: Likewise.
6235 * a-excpol-abort.adb: Likewise.
6236 * a-excpol.adb: Likewise.
6237 * a-exctra.adb: Likewise.
6238 * a-exctra.ads: Likewise.
6239 * a-exetim-mingw.adb: Likewise.
6240 * a-exetim-mingw.ads: Likewise.
6241 * a-exexda.adb: Likewise.
6242 * a-exexpr-gcc.adb: Likewise.
6243 * a-exexpr.adb: Likewise.
6244 * a-exextr.adb: Likewise.
6245 * a-exstat.adb: Likewise.
6246 * a-filico.adb: Likewise.
6247 * a-filico.ads: Likewise.
6248 * a-finali.adb: Likewise.
6249 * a-finali.ads: Likewise.
6250 * a-interr.ads: Likewise.
6251 * a-intnam-aix.ads: Likewise.
6252 * a-intnam-darwin.ads: Likewise.
6253 * a-intnam-dummy.ads: Likewise.
6254 * a-intnam-freebsd.ads: Likewise.
6255 * a-intnam-hpux.ads: Likewise.
6256 * a-intnam-irix.ads: Likewise.
6257 * a-intnam-linux.ads: Likewise.
6258 * a-intnam-lynxos.ads: Likewise.
6259 * a-intnam-mingw.ads: Likewise.
6260 * a-intnam-rtems.ads: Likewise.
6261 * a-intnam-solaris.ads: Likewise.
6262 * a-intnam-tru64.ads: Likewise.
6263 * a-intnam-vms.ads: Likewise.
6264 * a-intnam-vxworks.ads: Likewise.
6265 * a-intsig.adb: Likewise.
6266 * a-intsig.ads: Likewise.
6267 * a-ngcefu.adb: Likewise.
6268 * a-ngcoar.adb: Likewise.
6269 * a-ngcoty.adb: Likewise.
6270 * a-ngcoty.ads: Likewise.
6271 * a-ngelfu.adb: Likewise.
6272 * a-ngrear.adb: Likewise.
6273 * a-ngrear.ads: Likewise.
6274 * a-nudira.adb: Likewise.
6275 * a-nudira.ads: Likewise.
6276 * a-nuflra.adb: Likewise.
6277 * a-nuflra.ads: Likewise.
6278 * a-numaux-darwin.adb: Likewise.
6279 * a-numaux-darwin.ads: Likewise.
6280 * a-numaux-libc-x86.ads: Likewise.
6281 * a-numaux-vxworks.ads: Likewise.
6282 * a-numaux-x86.adb: Likewise.
6283 * a-numaux-x86.ads: Likewise.
6284 * a-numaux.ads: Likewise.
6285 * a-rbtgso.adb: Likewise.
6286 * a-rbtgso.ads: Likewise.
6287 * a-reatim.ads: Likewise.
6288 * a-retide.adb: Likewise.
6289 * a-retide.ads: Likewise.
6290 * a-rttiev.adb: Likewise.
6291 * a-rttiev.ads: Likewise.
6292 * a-secain.adb: Likewise.
6293 * a-secain.ads: Likewise.
6294 * a-sequio.adb: Likewise.
6295 * a-sequio.ads: Likewise.
6296 * a-shcain.adb: Likewise.
6297 * a-shcain.ads: Likewise.
6298 * a-siocst.adb: Likewise.
6299 * a-siocst.ads: Likewise.
6300 * a-slcain.adb: Likewise.
6301 * a-slcain.ads: Likewise.
6302 * a-ssicst.adb: Likewise.
6303 * a-ssicst.ads: Likewise.
6304 * a-stboha.adb: Likewise.
6305 * a-stmaco.ads: Likewise.
6306 * a-storio.adb: Likewise.
6307 * a-strbou.adb: Likewise.
6308 * a-strbou.ads: Likewise.
6309 * a-stream.ads: Likewise.
6310 * a-strfix.adb: Likewise.
6311 * a-strhas.adb: Likewise.
6312 * a-strmap.adb: Likewise.
6313 * a-strmap.ads: Likewise.
6314 * a-strsea.adb: Likewise.
6315 * a-strsea.ads: Likewise.
6316 * a-strsup.adb: Likewise.
6317 * a-strsup.ads: Likewise.
6318 * a-strunb.adb: Likewise.
6319 * a-strunb.ads: Likewise.
6320 * a-ststio.adb: Likewise.
6321 * a-ststio.ads: Likewise.
6322 * a-stunau.adb: Likewise.
6323 * a-stunau.ads: Likewise.
6324 * a-stunha.adb: Likewise.
6325 * a-stwibo.adb: Likewise.
6326 * a-stwibo.ads: Likewise.
6327 * a-stwifi.adb: Likewise.
6328 * a-stwiha.adb: Likewise.
6329 * a-stwima.adb: Likewise.
6330 * a-stwima.ads: Likewise.
6331 * a-stwise.adb: Likewise.
6332 * a-stwise.ads: Likewise.
6333 * a-stwisu.adb: Likewise.
6334 * a-stwisu.ads: Likewise.
6335 * a-stwiun.adb: Likewise.
6336 * a-stwiun.ads: Likewise.
6337 * a-stzbou.adb: Likewise.
6338 * a-stzbou.ads: Likewise.
6339 * a-stzfix.adb: Likewise.
6340 * a-stzhas.adb: Likewise.
6341 * a-stzmap.adb: Likewise.
6342 * a-stzmap.ads: Likewise.
6343 * a-stzsea.adb: Likewise.
6344 * a-stzsea.ads: Likewise.
6345 * a-stzsup.adb: Likewise.
6346 * a-stzsup.ads: Likewise.
6347 * a-stzunb.adb: Likewise.
6348 * a-stzunb.ads: Likewise.
6349 * a-suteio.adb: Likewise.
6350 * a-suteio.ads: Likewise.
6351 * a-swbwha.adb: Likewise.
6352 * a-swmwco.ads: Likewise.
6353 * a-swunau.adb: Likewise.
6354 * a-swunau.ads: Likewise.
6355 * a-swuwha.adb: Likewise.
6356 * a-swuwti.adb: Likewise.
6357 * a-swuwti.ads: Likewise.
6358 * a-sytaco.adb: Likewise.
6359 * a-sytaco.ads: Likewise.
6360 * a-szbzha.adb: Likewise.
6361 * a-szmzco.ads: Likewise.
6362 * a-szunau.adb: Likewise.
6363 * a-szunau.ads: Likewise.
6364 * a-szuzha.adb: Likewise.
6365 * a-szuzti.adb: Likewise.
6366 * a-szuzti.ads: Likewise.
6367 * a-tags.adb: Likewise.
6368 * a-tags.ads: Likewise.
6369 * a-tasatt.ads: Likewise.
6370 * a-taside.adb: Likewise.
6371 * a-taside.ads: Likewise.
6372 * a-taster.adb: Likewise.
6373 * a-teioed.adb: Likewise.
6374 * a-teioed.ads: Likewise.
6375 * a-textio.adb: Likewise.
6376 * a-textio.ads: Likewise.
6377 * a-tiboio.adb: Likewise.
6378 * a-ticoau.adb: Likewise.
6379 * a-ticoau.ads: Likewise.
6380 * a-ticoio.adb: Likewise.
6381 * a-ticoio.ads: Likewise.
6382 * a-tideau.adb: Likewise.
6383 * a-tideau.ads: Likewise.
6384 * a-tideio.adb: Likewise.
6385 * a-tideio.ads: Likewise.
6386 * a-tienau.adb: Likewise.
6387 * a-tienau.ads: Likewise.
6388 * a-tienio.adb: Likewise.
6389 * a-tienio.ads: Likewise.
6390 * a-tifiio.adb: Likewise.
6391 * a-tifiio.ads: Likewise.
6392 * a-tiflau.adb: Likewise.
6393 * a-tiflau.ads: Likewise.
6394 * a-tiflio.adb: Likewise.
6395 * a-tiflio.ads: Likewise.
6396 * a-tigeau.adb: Likewise.
6397 * a-tigeau.ads: Likewise.
6398 * a-tiinau.adb: Likewise.
6399 * a-tiinau.ads: Likewise.
6400 * a-tiinio.adb: Likewise.
6401 * a-tiinio.ads: Likewise.
6402 * a-timoau.adb: Likewise.
6403 * a-timoau.ads: Likewise.
6404 * a-timoio.adb: Likewise.
6405 * a-timoio.ads: Likewise.
6406 * a-tiocst.adb: Likewise.
6407 * a-tiocst.ads: Likewise.
6408 * a-titest.adb: Likewise.
6409 * a-wichun.adb: Likewise.
6410 * a-wichun.ads: Likewise.
6411 * a-witeio.adb: Likewise.
6412 * a-witeio.ads: Likewise.
6413 * a-wtcoau.adb: Likewise.
6414 * a-wtcoau.ads: Likewise.
6415 * a-wtcoio.adb: Likewise.
6416 * a-wtcstr.adb: Likewise.
6417 * a-wtcstr.ads: Likewise.
6418 * a-wtdeau.adb: Likewise.
6419 * a-wtdeau.ads: Likewise.
6420 * a-wtdeio.adb: Likewise.
6421 * a-wtdeio.ads: Likewise.
6422 * a-wtedit.adb: Likewise.
6423 * a-wtedit.ads: Likewise.
6424 * a-wtenau.adb: Likewise.
6425 * a-wtenau.ads: Likewise.
6426 * a-wtenio.adb: Likewise.
6427 * a-wtenio.ads: Likewise.
6428 * a-wtfiio.adb: Likewise.
6429 * a-wtfiio.ads: Likewise.
6430 * a-wtflau.adb: Likewise.
6431 * a-wtflau.ads: Likewise.
6432 * a-wtflio.adb: Likewise.
6433 * a-wtflio.ads: Likewise.
6434 * a-wtgeau.adb: Likewise.
6435 * a-wtgeau.ads: Likewise.
6436 * a-wtinau.adb: Likewise.
6437 * a-wtinau.ads: Likewise.
6438 * a-wtinio.adb: Likewise.
6439 * a-wtmoau.adb: Likewise.
6440 * a-wtmoau.ads: Likewise.
6441 * a-wtmoio.adb: Likewise.
6442 * a-wtmoio.ads: Likewise.
6443 * a-wttest.adb: Likewise.
6444 * a-wwboio.adb: Likewise.
6445 * a-zchuni.adb: Likewise.
6446 * a-zchuni.ads: Likewise.
6447 * a-ztcoau.adb: Likewise.
6448 * a-ztcoau.ads: Likewise.
6449 * a-ztcoio.adb: Likewise.
6450 * a-ztcstr.adb: Likewise.
6451 * a-ztcstr.ads: Likewise.
6452 * a-ztdeau.adb: Likewise.
6453 * a-ztdeau.ads: Likewise.
6454 * a-ztdeio.adb: Likewise.
6455 * a-ztdeio.ads: Likewise.
6456 * a-ztedit.adb: Likewise.
6457 * a-ztedit.ads: Likewise.
6458 * a-ztenau.adb: Likewise.
6459 * a-ztenau.ads: Likewise.
6460 * a-ztenio.adb: Likewise.
6461 * a-ztenio.ads: Likewise.
6462 * a-ztexio.adb: Likewise.
6463 * a-ztexio.ads: Likewise.
6464 * a-ztfiio.adb: Likewise.
6465 * a-ztfiio.ads: Likewise.
6466 * a-ztflau.adb: Likewise.
6467 * a-ztflau.ads: Likewise.
6468 * a-ztflio.adb: Likewise.
6469 * a-ztflio.ads: Likewise.
6470 * a-ztgeau.adb: Likewise.
6471 * a-ztgeau.ads: Likewise.
6472 * a-ztinau.adb: Likewise.
6473 * a-ztinau.ads: Likewise.
6474 * a-ztinio.adb: Likewise.
6475 * a-ztmoau.adb: Likewise.
6476 * a-ztmoau.ads: Likewise.
6477 * a-ztmoio.adb: Likewise.
6478 * a-ztmoio.ads: Likewise.
6479 * a-zttest.adb: Likewise.
6480 * a-zzboio.adb: Likewise.
6481 * adadecode.c: Likewise.
6482 * adaint.c: Likewise.
6483 * adaint.h: Likewise.
6484 * alloc.ads: Likewise.
6485 * argv.c: Likewise.
6486 * arit64.c: Likewise.
6487 * atree.adb: Likewise.
6488 * atree.ads: Likewise.
6489 * aux-io.c: Likewise.
6490 * cal.c: Likewise.
6491 * casing.adb: Likewise.
6492 * casing.ads: Likewise.
6493 * cio.c: Likewise.
6494 * csets.adb: Likewise.
6495 * csets.ads: Likewise.
6496 * cstreams.c: Likewise.
6497 * ctrl_c.c: Likewise.
6498 * debug.adb: Likewise.
6499 * debug.ads: Likewise.
6500 * dec.ads: Likewise.
6501 * einfo.adb: Likewise.
6502 * einfo.ads: Likewise.
6503 * elists.adb: Likewise.
6504 * elists.ads: Likewise.
6505 * env.c: Likewise.
6506 * env.h: Likewise.
6507 * errno.c: Likewise.
6508 * exit.c: Likewise.
6509 * fe.h: Likewise.
6510 * final.c: Likewise.
6511 * fname.adb: Likewise.
6512 * fname.ads: Likewise.
6513 * g-allein.ads: Likewise.
6514 * g-alleve.adb: Likewise.
6515 * g-alleve.ads: Likewise.
6516 * g-altcon.adb: Likewise.
6517 * g-altcon.ads: Likewise.
6518 * g-altive.ads: Likewise.
6519 * g-alveop.adb: Likewise.
6520 * g-alveop.ads: Likewise.
6521 * g-alvety.ads: Likewise.
6522 * g-alvevi.ads: Likewise.
6523 * g-arrspl.adb: Likewise.
6524 * g-arrspl.ads: Likewise.
6525 * g-calend.ads: Likewise.
6526 * g-comlin.adb: Likewise.
6527 * g-debpoo.adb: Likewise.
6528 * g-debpoo.ads: Likewise.
6529 * g-eacodu-vms.adb: Likewise.
6530 * g-eacodu.adb: Likewise.
6531 * g-excact.adb: Likewise.
6532 * g-excact.ads: Likewise.
6533 * g-locfil.adb: Likewise.
6534 * g-os_lib.ads: Likewise.
6535 * g-rannum.adb: Likewise.
6536 * g-rannum.ads: Likewise.
6537 * g-regist.adb: Likewise.
6538 * g-regist.ads: Likewise.
6539 * g-signal.adb: Likewise.
6540 * g-signal.ads: Likewise.
6541 * g-soccon.ads: Likewise.
6542 * g-string.adb: Likewise.
6543 * g-string.ads: Likewise.
6544 * g-strspl.ads: Likewise.
6545 * g-timsta.adb: Likewise.
6546 * g-timsta.ads: Likewise.
6547 * g-trasym-vms-alpha.adb: Likewise.
6548 * g-trasym-vms-ia64.adb: Likewise.
6549 * g-utf_32.adb: Likewise.
6550 * g-utf_32.ads: Likewise.
6551 * g-wistsp.ads: Likewise.
6552 * g-zstspl.ads: Likewise.
6553 * gmem.c: Likewise.
6554 * gnatvsn.adb: Likewise.
6555 * gnatvsn.ads: Likewise.
6556 * gsocket.h: Likewise.
6557 * hostparm.ads: Likewise.
6558 * i-c.adb: Likewise.
6559 * i-cexten.ads: Likewise.
6560 * i-cobol.adb: Likewise.
6561 * i-cobol.ads: Likewise.
6562 * i-cpoint.adb: Likewise.
6563 * i-cpoint.ads: Likewise.
6564 * i-cpp.adb: Likewise.
6565 * i-cpp.ads: Likewise.
6566 * i-cstrea-vms.adb: Likewise.
6567 * i-cstrea.adb: Likewise.
6568 * i-cstrea.ads: Likewise.
6569 * i-cstrin.adb: Likewise.
6570 * i-cstrin.ads: Likewise.
6571 * i-forbla-darwin.adb: Likewise.
6572 * i-forbla-unimplemented.ads: Likewise.
6573 * i-forbla.adb: Likewise.
6574 * i-forbla.ads: Likewise.
6575 * i-forlap.ads: Likewise.
6576 * i-fortra.adb: Likewise.
6577 * i-pacdec.adb: Likewise.
6578 * i-pacdec.ads: Likewise.
6579 * i-vxwoio.adb: Likewise.
6580 * i-vxwoio.ads: Likewise.
6581 * indepsw-aix.adb: Likewise.
6582 * indepsw-gnu.adb: Likewise.
6583 * indepsw-mingw.adb: Likewise.
6584 * indepsw.adb: Likewise.
6585 * indepsw.ads: Likewise.
6586 * init.c: Likewise.
6587 * initialize.c: Likewise.
6588 * interfac.ads: Likewise.
6589 * krunch.adb: Likewise.
6590 * krunch.ads: Likewise.
6591 * lib-list.adb: Likewise.
6592 * lib-sort.adb: Likewise.
6593 * lib.adb: Likewise.
6594 * lib.ads: Likewise.
6595 * link.c: Likewise.
6596 * math_lib.adb: Likewise.
6597 * memtrack.adb: Likewise.
6598 * mingw32.h: Likewise.
6599 * mkdir.c: Likewise.
6600 * namet-sp.adb: Likewise.
6601 * namet-sp.ads: Likewise.
6602 * namet.adb: Likewise.
6603 * namet.ads: Likewise.
6604 * nlists.adb: Likewise.
6605 * nlists.ads: Likewise.
6606 * opt.adb: Likewise.
6607 * opt.ads: Likewise.
6608 * output.adb: Likewise.
6609 * output.ads: Likewise.
6610 * raise-gcc.c: Likewise.
6611 * raise.c: Likewise.
6612 * raise.h: Likewise.
6613 * repinfo.adb: Likewise.
6614 * repinfo.ads: Likewise.
6615 * repinfo.h: Likewise.
6616 * rident.ads: Likewise.
6617 * s-addima.adb: Likewise.
6618 * s-addima.ads: Likewise.
6619 * s-addope.adb: Likewise.
6620 * s-addope.ads: Likewise.
6621 * s-arit64.adb: Likewise.
6622 * s-arit64.ads: Likewise.
6623 * s-assert.adb: Likewise.
6624 * s-assert.ads: Likewise.
6625 * s-asthan-vms-alpha.adb: Likewise.
6626 * s-asthan.adb: Likewise.
6627 * s-asthan.ads: Likewise.
6628 * s-atacco.adb: Likewise.
6629 * s-atacco.ads: Likewise.
6630 * s-auxdec-empty.adb: Likewise.
6631 * s-auxdec-empty.ads: Likewise.
6632 * s-auxdec-vms_64.ads: Likewise.
6633 * s-auxdec.adb: Likewise.
6634 * s-auxdec.ads: Likewise.
6635 * s-bitops.adb: Likewise.
6636 * s-bitops.ads: Likewise.
6637 * s-boarop.ads: Likewise.
6638 * s-carsi8.adb: Likewise.
6639 * s-carsi8.ads: Likewise.
6640 * s-carun8.adb: Likewise.
6641 * s-carun8.ads: Likewise.
6642 * s-casi16.adb: Likewise.
6643 * s-casi16.ads: Likewise.
6644 * s-casi32.adb: Likewise.
6645 * s-casi32.ads: Likewise.
6646 * s-casi64.adb: Likewise.
6647 * s-casi64.ads: Likewise.
6648 * s-casuti.ads: Likewise.
6649 * s-caun16.adb: Likewise.
6650 * s-caun16.ads: Likewise.
6651 * s-caun32.adb: Likewise.
6652 * s-caun32.ads: Likewise.
6653 * s-caun64.adb: Likewise.
6654 * s-caun64.ads: Likewise.
6655 * s-chepoo.ads: Likewise.
6656 * s-crc32.adb: Likewise.
6657 * s-crc32.ads: Likewise.
6658 * s-crtl.ads: Likewise.
6659 * s-direio.adb: Likewise.
6660 * s-direio.ads: Likewise.
6661 * s-dsaser.ads: Likewise.
6662 * s-except.adb: Likewise.
6663 * s-except.ads: Likewise.
6664 * s-exctab.adb: Likewise.
6665 * s-exctab.ads: Likewise.
6666 * s-exnint.adb: Likewise.
6667 * s-exnint.ads: Likewise.
6668 * s-exnllf.adb: Likewise.
6669 * s-exnllf.ads: Likewise.
6670 * s-exnlli.adb: Likewise.
6671 * s-exnlli.ads: Likewise.
6672 * s-expint.adb: Likewise.
6673 * s-expint.ads: Likewise.
6674 * s-explli.adb: Likewise.
6675 * s-explli.ads: Likewise.
6676 * s-expllu.adb: Likewise.
6677 * s-expllu.ads: Likewise.
6678 * s-expmod.adb: Likewise.
6679 * s-expmod.ads: Likewise.
6680 * s-expuns.adb: Likewise.
6681 * s-expuns.ads: Likewise.
6682 * s-fatflt.ads: Likewise.
6683 * s-fatgen.adb: Likewise.
6684 * s-fatgen.ads: Likewise.
6685 * s-fatlfl.ads: Likewise.
6686 * s-fatllf.ads: Likewise.
6687 * s-fatsfl.ads: Likewise.
6688 * s-ficobl.ads: Likewise.
6689 * s-fileio.adb: Likewise.
6690 * s-fileio.ads: Likewise.
6691 * s-filofl.ads: Likewise.
6692 * s-finimp.adb: Likewise.
6693 * s-finimp.ads: Likewise.
6694 * s-finroo.adb: Likewise.
6695 * s-finroo.ads: Likewise.
6696 * s-fishfl.ads: Likewise.
6697 * s-fore.adb: Likewise.
6698 * s-fore.ads: Likewise.
6699 * s-fvadfl.ads: Likewise.
6700 * s-fvaffl.ads: Likewise.
6701 * s-fvagfl.ads: Likewise.
6702 * s-gearop.adb: Likewise.
6703 * s-gearop.ads: Likewise.
6704 * s-gecobl.adb: Likewise.
6705 * s-gecobl.ads: Likewise.
6706 * s-gecola.adb: Likewise.
6707 * s-gecola.ads: Likewise.
6708 * s-gerebl.adb: Likewise.
6709 * s-gerebl.ads: Likewise.
6710 * s-gerela.adb: Likewise.
6711 * s-gerela.ads: Likewise.
6712 * s-geveop.adb: Likewise.
6713 * s-geveop.ads: Likewise.
6714 * s-gloloc.adb: Likewise.
6715 * s-gloloc.ads: Likewise.
6716 * s-hibaen.ads: Likewise.
6717 * s-imenne.adb: Likewise.
6718 * s-imenne.ads: Likewise.
6719 * s-imgbiu.adb: Likewise.
6720 * s-imgbiu.ads: Likewise.
6721 * s-imgboo.adb: Likewise.
6722 * s-imgboo.ads: Likewise.
6723 * s-imgcha.adb: Likewise.
6724 * s-imgcha.ads: Likewise.
6725 * s-imgdec.adb: Likewise.
6726 * s-imgdec.ads: Likewise.
6727 * s-imgenu.adb: Likewise.
6728 * s-imgenu.ads: Likewise.
6729 * s-imgint.adb: Likewise.
6730 * s-imgint.ads: Likewise.
6731 * s-imgllb.adb: Likewise.
6732 * s-imgllb.ads: Likewise.
6733 * s-imglld.adb: Likewise.
6734 * s-imglld.ads: Likewise.
6735 * s-imglli.adb: Likewise.
6736 * s-imglli.ads: Likewise.
6737 * s-imgllu.adb: Likewise.
6738 * s-imgllu.ads: Likewise.
6739 * s-imgllw.adb: Likewise.
6740 * s-imgllw.ads: Likewise.
6741 * s-imgrea.adb: Likewise.
6742 * s-imgrea.ads: Likewise.
6743 * s-imguns.adb: Likewise.
6744 * s-imguns.ads: Likewise.
6745 * s-imgwch.adb: Likewise.
6746 * s-imgwch.ads: Likewise.
6747 * s-imgwiu.adb: Likewise.
6748 * s-imgwiu.ads: Likewise.
6749 * s-inmaop-dummy.adb: Likewise.
6750 * s-inmaop-vms.adb: Likewise.
6751 * s-inmaop.ads: Likewise.
6752 * s-interr-hwint.adb: Likewise.
6753 * s-interr-sigaction.adb: Likewise.
6754 * s-interr-vms.adb: Likewise.
6755 * s-interr.adb: Likewise.
6756 * s-interr.ads: Likewise.
6757 * s-intman-dummy.adb: Likewise.
6758 * s-intman-mingw.adb: Likewise.
6759 * s-intman-posix.adb: Likewise.
6760 * s-intman-solaris.adb: Likewise.
6761 * s-intman-vms.adb: Likewise.
6762 * s-intman-vms.ads: Likewise.
6763 * s-intman-vxworks.adb: Likewise.
6764 * s-intman-vxworks.ads: Likewise.
6765 * s-intman.ads: Likewise.
6766 * s-io.adb: Likewise.
6767 * s-io.ads: Likewise.
6768 * s-linux-alpha.ads: Likewise.
6769 * s-linux-hppa.ads: Likewise.
6770 * s-linux.ads: Likewise.
6771 * s-maccod.ads: Likewise.
6772 * s-mantis.adb: Likewise.
6773 * s-mantis.ads: Likewise.
6774 * s-mastop-irix.adb: Likewise.
6775 * s-mastop.adb: Likewise.
6776 * s-mastop.ads: Likewise.
6777 * s-memcop.ads: Likewise.
6778 * s-memory-mingw.adb: Likewise.
6779 * s-memory.adb: Likewise.
6780 * s-memory.ads: Likewise.
6781 * s-os_lib.ads: Likewise.
6782 * s-oscons-tmplt.c: Likewise.
6783 * s-osinte-aix.adb: Likewise.
6784 * s-osinte-darwin.adb: Likewise.
6785 * s-osinte-freebsd.adb: Likewise.
6786 * s-osinte-irix.adb: Likewise.
6787 * s-osinte-lynxos-3.adb: Likewise.
6788 * s-osinte-rtems.ads: Likewise.
6789 * s-osinte-tru64.adb: Likewise.
6790 * s-osinte-vxworks-kernel.adb: Likewise.
6791 * s-osinte-vxworks.adb: Likewise.
6792 * s-osprim-mingw.adb: Likewise.
6793 * s-osprim-posix.adb: Likewise.
6794 * s-osprim-solaris.adb: Likewise.
6795 * s-osprim-unix.adb: Likewise.
6796 * s-osprim-vms.adb: Likewise.
6797 * s-osprim-vms.ads: Likewise.
6798 * s-osprim-vxworks.adb: Likewise.
6799 * s-osprim.ads: Likewise.
6800 * s-pack03.adb: Likewise.
6801 * s-pack03.ads: Likewise.
6802 * s-pack05.adb: Likewise.
6803 * s-pack05.ads: Likewise.
6804 * s-pack06.adb: Likewise.
6805 * s-pack06.ads: Likewise.
6806 * s-pack07.adb: Likewise.
6807 * s-pack07.ads: Likewise.
6808 * s-pack09.adb: Likewise.
6809 * s-pack09.ads: Likewise.
6810 * s-pack10.adb: Likewise.
6811 * s-pack10.ads: Likewise.
6812 * s-pack11.adb: Likewise.
6813 * s-pack11.ads: Likewise.
6814 * s-pack12.adb: Likewise.
6815 * s-pack12.ads: Likewise.
6816 * s-pack13.adb: Likewise.
6817 * s-pack13.ads: Likewise.
6818 * s-pack14.adb: Likewise.
6819 * s-pack14.ads: Likewise.
6820 * s-pack15.adb: Likewise.
6821 * s-pack15.ads: Likewise.
6822 * s-pack17.adb: Likewise.
6823 * s-pack17.ads: Likewise.
6824 * s-pack18.adb: Likewise.
6825 * s-pack18.ads: Likewise.
6826 * s-pack19.adb: Likewise.
6827 * s-pack19.ads: Likewise.
6828 * s-pack20.adb: Likewise.
6829 * s-pack20.ads: Likewise.
6830 * s-pack21.adb: Likewise.
6831 * s-pack21.ads: Likewise.
6832 * s-pack22.adb: Likewise.
6833 * s-pack22.ads: Likewise.
6834 * s-pack23.adb: Likewise.
6835 * s-pack23.ads: Likewise.
6836 * s-pack24.adb: Likewise.
6837 * s-pack24.ads: Likewise.
6838 * s-pack25.adb: Likewise.
6839 * s-pack25.ads: Likewise.
6840 * s-pack26.adb: Likewise.
6841 * s-pack26.ads: Likewise.
6842 * s-pack27.adb: Likewise.
6843 * s-pack27.ads: Likewise.
6844 * s-pack28.adb: Likewise.
6845 * s-pack28.ads: Likewise.
6846 * s-pack29.adb: Likewise.
6847 * s-pack29.ads: Likewise.
6848 * s-pack30.adb: Likewise.
6849 * s-pack30.ads: Likewise.
6850 * s-pack31.adb: Likewise.
6851 * s-pack31.ads: Likewise.
6852 * s-pack33.adb: Likewise.
6853 * s-pack33.ads: Likewise.
6854 * s-pack34.adb: Likewise.
6855 * s-pack34.ads: Likewise.
6856 * s-pack35.adb: Likewise.
6857 * s-pack35.ads: Likewise.
6858 * s-pack36.adb: Likewise.
6859 * s-pack36.ads: Likewise.
6860 * s-pack37.adb: Likewise.
6861 * s-pack37.ads: Likewise.
6862 * s-pack38.adb: Likewise.
6863 * s-pack38.ads: Likewise.
6864 * s-pack39.adb: Likewise.
6865 * s-pack39.ads: Likewise.
6866 * s-pack40.adb: Likewise.
6867 * s-pack40.ads: Likewise.
6868 * s-pack41.adb: Likewise.
6869 * s-pack41.ads: Likewise.
6870 * s-pack42.adb: Likewise.
6871 * s-pack42.ads: Likewise.
6872 * s-pack43.adb: Likewise.
6873 * s-pack43.ads: Likewise.
6874 * s-pack44.adb: Likewise.
6875 * s-pack44.ads: Likewise.
6876 * s-pack45.adb: Likewise.
6877 * s-pack45.ads: Likewise.
6878 * s-pack46.adb: Likewise.
6879 * s-pack46.ads: Likewise.
6880 * s-pack47.adb: Likewise.
6881 * s-pack47.ads: Likewise.
6882 * s-pack48.adb: Likewise.
6883 * s-pack48.ads: Likewise.
6884 * s-pack49.adb: Likewise.
6885 * s-pack49.ads: Likewise.
6886 * s-pack50.adb: Likewise.
6887 * s-pack50.ads: Likewise.
6888 * s-pack51.adb: Likewise.
6889 * s-pack51.ads: Likewise.
6890 * s-pack52.adb: Likewise.
6891 * s-pack52.ads: Likewise.
6892 * s-pack53.adb: Likewise.
6893 * s-pack53.ads: Likewise.
6894 * s-pack54.adb: Likewise.
6895 * s-pack54.ads: Likewise.
6896 * s-pack55.adb: Likewise.
6897 * s-pack55.ads: Likewise.
6898 * s-pack56.adb: Likewise.
6899 * s-pack56.ads: Likewise.
6900 * s-pack57.adb: Likewise.
6901 * s-pack57.ads: Likewise.
6902 * s-pack58.adb: Likewise.
6903 * s-pack58.ads: Likewise.
6904 * s-pack59.adb: Likewise.
6905 * s-pack59.ads: Likewise.
6906 * s-pack60.adb: Likewise.
6907 * s-pack60.ads: Likewise.
6908 * s-pack61.adb: Likewise.
6909 * s-pack61.ads: Likewise.
6910 * s-pack62.adb: Likewise.
6911 * s-pack62.ads: Likewise.
6912 * s-pack63.adb: Likewise.
6913 * s-pack63.ads: Likewise.
6914 * s-parame-ae653.ads: Likewise.
6915 * s-parame-hpux.ads: Likewise.
6916 * s-parame-rtems.adb: Likewise.
6917 * s-parame-vms-alpha.ads: Likewise.
6918 * s-parame-vms-ia64.ads: Likewise.
6919 * s-parame-vms-restrict.ads: Likewise.
6920 * s-parame-vxworks.adb: Likewise.
6921 * s-parame-vxworks.ads: Likewise.
6922 * s-parame.adb: Likewise.
6923 * s-parame.ads: Likewise.
6924 * s-parint.adb: Likewise.
6925 * s-parint.ads: Likewise.
6926 * s-pooglo.adb: Likewise.
6927 * s-pooglo.ads: Likewise.
6928 * s-pooloc.adb: Likewise.
6929 * s-pooloc.ads: Likewise.
6930 * s-poosiz.adb: Likewise.
6931 * s-poosiz.ads: Likewise.
6932 * s-powtab.ads: Likewise.
6933 * s-proinf-irix-athread.adb: Likewise.
6934 * s-proinf-irix-athread.ads: Likewise.
6935 * s-proinf.adb: Likewise.
6936 * s-proinf.ads: Likewise.
6937 * s-purexc.ads: Likewise.
6938 * s-rannum.adb: Likewise.
6939 * s-rannum.ads: Likewise.
6940 * s-restri.adb: Likewise.
6941 * s-restri.ads: Likewise.
6942 * s-rident.ads: Likewise.
6943 * s-rpc.adb: Likewise.
6944 * s-rpc.ads: Likewise.
6945 * s-scaval.adb: Likewise.
6946 * s-scaval.ads: Likewise.
6947 * s-secsta.adb: Likewise.
6948 * s-secsta.ads: Likewise.
6949 * s-sequio.adb: Likewise.
6950 * s-sequio.ads: Likewise.
6951 * s-shasto.adb: Likewise.
6952 * s-shasto.ads: Likewise.
6953 * s-soflin.adb: Likewise.
6954 * s-soflin.ads: Likewise.
6955 * s-solita.adb: Likewise.
6956 * s-solita.ads: Likewise.
6957 * s-sopco3.adb: Likewise.
6958 * s-sopco3.ads: Likewise.
6959 * s-sopco4.adb: Likewise.
6960 * s-sopco4.ads: Likewise.
6961 * s-sopco5.adb: Likewise.
6962 * s-sopco5.ads: Likewise.
6963 * s-stache.adb: Likewise.
6964 * s-stache.ads: Likewise.
6965 * s-stalib.adb: Likewise.
6966 * s-stalib.ads: Likewise.
6967 * s-stausa.adb: Likewise.
6968 * s-stausa.ads: Likewise.
6969 * s-stchop-limit.ads: Likewise.
6970 * s-stchop-rtems.adb: Likewise.
6971 * s-stchop-vxworks.adb: Likewise.
6972 * s-stchop.adb: Likewise.
6973 * s-stchop.ads: Likewise.
6974 * s-stoele.adb: Likewise.
6975 * s-stoele.ads: Likewise.
6976 * s-stopoo.adb: Likewise.
6977 * s-stopoo.ads: Likewise.
6978 * s-stratt.adb: Likewise.
6979 * s-stratt.ads: Likewise.
6980 * s-strcom.adb: Likewise.
6981 * s-strcom.ads: Likewise.
6982 * s-string.adb: Likewise.
6983 * s-string.ads: Likewise.
6984 * s-strops.adb: Likewise.
6985 * s-strops.ads: Likewise.
6986 * s-strxdr.adb: Likewise.
6987 * s-ststop.adb: Likewise.
6988 * s-ststop.ads: Likewise.
6989 * s-taasde.adb: Likewise.
6990 * s-taasde.ads: Likewise.
6991 * s-tadeca.adb: Likewise.
6992 * s-tadeca.ads: Likewise.
6993 * s-tadert.adb: Likewise.
6994 * s-tadert.ads: Likewise.
6995 * s-taenca.adb: Likewise.
6996 * s-taenca.ads: Likewise.
6997 * s-taprob.ads: Likewise.
6998 * s-taprop-dummy.adb: Likewise.
6999 * s-taprop-hpux-dce.adb: Likewise.
7000 * s-taprop-irix.adb: Likewise.
7001 * s-taprop-linux.adb: Likewise.
7002 * s-taprop-lynxos.adb: Likewise.
7003 * s-taprop-mingw.adb: Likewise.
7004 * s-taprop-posix.adb: Likewise.
7005 * s-taprop-solaris.adb: Likewise.
7006 * s-taprop-tru64.adb: Likewise.
7007 * s-taprop-vms.adb: Likewise.
7008 * s-taprop-vxworks.adb: Likewise.
7009 * s-taprop.ads: Likewise.
7010 * s-tarest.adb: Likewise.
7011 * s-tarest.ads: Likewise.
7012 * s-tasdeb.adb: Likewise.
7013 * s-tasdeb.ads: Likewise.
7014 * s-tasinf-irix.ads: Likewise.
7015 * s-tasinf-linux.adb: Likewise.
7016 * s-tasinf-linux.ads: Likewise.
7017 * s-tasinf-mingw.adb: Likewise.
7018 * s-tasinf-mingw.ads: Likewise.
7019 * s-tasinf-solaris.adb: Likewise.
7020 * s-tasinf-solaris.ads: Likewise.
7021 * s-tasinf-tru64.ads: Likewise.
7022 * s-tasinf.adb: Likewise.
7023 * s-tasinf.ads: Likewise.
7024 * s-tasini.adb: Likewise.
7025 * s-tasini.ads: Likewise.
7026 * s-taskin.adb: Likewise.
7027 * s-taskin.ads: Likewise.
7028 * s-taspri-dummy.ads: Likewise.
7029 * s-taspri-hpux-dce.ads: Likewise.
7030 * s-taspri-mingw.ads: Likewise.
7031 * s-taspri-solaris.ads: Likewise.
7032 * s-taspri-tru64.ads: Likewise.
7033 * s-taspri-vms.ads: Likewise.
7034 * s-taspri-vxworks.ads: Likewise.
7035 * s-tasque.adb: Likewise.
7036 * s-tasque.ads: Likewise.
7037 * s-tasren.adb: Likewise.
7038 * s-tasren.ads: Likewise.
7039 * s-tasres.ads: Likewise.
7040 * s-tassta.adb: Likewise.
7041 * s-tassta.ads: Likewise.
7042 * s-tasuti.adb: Likewise.
7043 * s-tasuti.ads: Likewise.
7044 * s-tfsetr-default.adb: Likewise.
7045 * s-tfsetr-vxworks.adb: Likewise.
7046 * s-tpinop.adb: Likewise.
7047 * s-tpinop.ads: Likewise.
7048 * s-tpoben.adb: Likewise.
7049 * s-tpoben.ads: Likewise.
7050 * s-tpobop.adb: Likewise.
7051 * s-tpobop.ads: Likewise.
7052 * s-tpopde-vms.adb: Likewise.
7053 * s-tpopde-vms.ads: Likewise.
7054 * s-tpopsp-lynxos.adb: Likewise.
7055 * s-tpopsp-posix-foreign.adb: Likewise.
7056 * s-tpopsp-posix.adb: Likewise.
7057 * s-tpopsp-solaris.adb: Likewise.
7058 * s-tpopsp-vxworks.adb: Likewise.
7059 * s-tporft.adb: Likewise.
7060 * s-tposen.adb: Likewise.
7061 * s-tposen.ads: Likewise.
7062 * s-traceb.adb: Likewise.
7063 * s-traceb.ads: Likewise.
7064 * s-traces-default.adb: Likewise.
7065 * s-traces.adb: Likewise.
7066 * s-traces.ads: Likewise.
7067 * s-traent-vms.adb: Likewise.
7068 * s-traent-vms.ads: Likewise.
7069 * s-traent.adb: Likewise.
7070 * s-traent.ads: Likewise.
7071 * s-trafor-default.adb: Likewise.
7072 * s-trafor-default.ads: Likewise.
7073 * s-tratas-default.adb: Likewise.
7074 * s-tratas.adb: Likewise.
7075 * s-tratas.ads: Likewise.
7076 * s-unstyp.ads: Likewise.
7077 * s-utf_32.adb: Likewise.
7078 * s-utf_32.ads: Likewise.
7079 * s-vaflop-vms-alpha.adb: Likewise.
7080 * s-vaflop.adb: Likewise.
7081 * s-vaflop.ads: Likewise.
7082 * s-valboo.adb: Likewise.
7083 * s-valboo.ads: Likewise.
7084 * s-valcha.adb: Likewise.
7085 * s-valcha.ads: Likewise.
7086 * s-valdec.adb: Likewise.
7087 * s-valdec.ads: Likewise.
7088 * s-valenu.adb: Likewise.
7089 * s-valenu.ads: Likewise.
7090 * s-valint.adb: Likewise.
7091 * s-valint.ads: Likewise.
7092 * s-vallld.adb: Likewise.
7093 * s-vallld.ads: Likewise.
7094 * s-vallli.adb: Likewise.
7095 * s-vallli.ads: Likewise.
7096 * s-valllu.adb: Likewise.
7097 * s-valllu.ads: Likewise.
7098 * s-valrea.adb: Likewise.
7099 * s-valrea.ads: Likewise.
7100 * s-valuns.adb: Likewise.
7101 * s-valuns.ads: Likewise.
7102 * s-valuti.adb: Likewise.
7103 * s-valuti.ads: Likewise.
7104 * s-valwch.adb: Likewise.
7105 * s-valwch.ads: Likewise.
7106 * s-veboop.adb: Likewise.
7107 * s-veboop.ads: Likewise.
7108 * s-vector.ads: Likewise.
7109 * s-vercon.adb: Likewise.
7110 * s-vercon.ads: Likewise.
7111 * s-vmexta.adb: Likewise.
7112 * s-vmexta.ads: Likewise.
7113 * s-vxwext-kernel.ads: Likewise.
7114 * s-vxwext-rtp.adb: Likewise.
7115 * s-vxwext-rtp.ads: Likewise.
7116 * s-vxwext.ads: Likewise.
7117 * s-vxwork-arm.ads: Likewise.
7118 * s-vxwork-m68k.ads: Likewise.
7119 * s-vxwork-mips.ads: Likewise.
7120 * s-vxwork-ppc.ads: Likewise.
7121 * s-vxwork-sparcv9.ads: Likewise.
7122 * s-vxwork-x86.ads: Likewise.
7123 * s-wchcnv.adb: Likewise.
7124 * s-wchcnv.ads: Likewise.
7125 * s-wchcon.adb: Likewise.
7126 * s-wchcon.ads: Likewise.
7127 * s-wchjis.adb: Likewise.
7128 * s-wchjis.ads: Likewise.
7129 * s-wchstw.adb: Likewise.
7130 * s-wchstw.ads: Likewise.
7131 * s-wchwts.adb: Likewise.
7132 * s-wchwts.ads: Likewise.
7133 * s-widboo.adb: Likewise.
7134 * s-widboo.ads: Likewise.
7135 * s-widcha.adb: Likewise.
7136 * s-widcha.ads: Likewise.
7137 * s-widenu.adb: Likewise.
7138 * s-widenu.ads: Likewise.
7139 * s-widlli.adb: Likewise.
7140 * s-widlli.ads: Likewise.
7141 * s-widllu.adb: Likewise.
7142 * s-widllu.ads: Likewise.
7143 * s-widwch.adb: Likewise.
7144 * s-widwch.ads: Likewise.
7145 * s-win32.ads: Likewise.
7146 * s-winext.ads: Likewise.
7147 * s-wwdcha.adb: Likewise.
7148 * s-wwdcha.ads: Likewise.
7149 * s-wwdenu.adb: Likewise.
7150 * s-wwdenu.ads: Likewise.
7151 * s-wwdwch.adb: Likewise.
7152 * s-wwdwch.ads: Likewise.
7153 * scans.adb: Likewise.
7154 * scans.ads: Likewise.
7155 * seh_init.c: Likewise.
7156 * sfn_scan.adb: Likewise.
7157 * sinfo.adb: Likewise.
7158 * sinfo.ads: Likewise.
7159 * sinput.adb: Likewise.
7160 * sinput.ads: Likewise.
7161 * snames.adb: Likewise.
7162 * snames.ads: Likewise.
7163 * socket.c: Likewise.
7164 * stand.adb: Likewise.
7165 * stand.ads: Likewise.
7166 * stringt.adb: Likewise.
7167 * stringt.ads: Likewise.
7168 * sysdep.c: Likewise.
7169 * system-aix.ads: Likewise.
7170 * system-darwin-ppc.ads: Likewise.
7171 * system-darwin-x86.ads: Likewise.
7172 * system-darwin-x86_64.ads: Likewise.
7173 * system-freebsd-x86.ads: Likewise.
7174 * system-hpux-ia64.ads: Likewise.
7175 * system-hpux.ads: Likewise.
7176 * system-irix-n32.ads: Likewise.
7177 * system-irix-n64.ads: Likewise.
7178 * system-irix-o32.ads: Likewise.
7179 * system-linux-alpha.ads: Likewise.
7180 * system-linux-hppa.ads: Likewise.
7181 * system-linux-ia64.ads: Likewise.
7182 * system-linux-mips.ads: Likewise.
7183 * system-linux-mipsel.ads: Likewise.
7184 * system-linux-ppc.ads: Likewise.
7185 * system-linux-ppc64.ads: Likewise.
7186 * system-linux-s390.ads: Likewise.
7187 * system-linux-s390x.ads: Likewise.
7188 * system-linux-sh4.ads: Likewise.
7189 * system-linux-sparc.ads: Likewise.
7190 * system-linux-sparcv9.ads: Likewise.
7191 * system-linux-x86.ads: Likewise.
7192 * system-linux-x86_64.ads: Likewise.
7193 * system-lynxos-ppc.ads: Likewise.
7194 * system-lynxos-x86.ads: Likewise.
7195 * system-mingw-x86_64.ads: Likewise.
7196 * system-mingw.ads: Likewise.
7197 * system-rtems.ads: Likewise.
7198 * system-solaris-sparc.ads: Likewise.
7199 * system-solaris-sparcv9.ads: Likewise.
7200 * system-solaris-x86.ads: Likewise.
7201 * system-solaris-x86_64.ads: Likewise.
7202 * system-tru64.ads: Likewise.
7203 * system-vms-ia64.ads: Likewise.
7204 * system-vms-zcx.ads: Likewise.
7205 * system-vms.ads: Likewise.
7206 * system-vms_64.ads: Likewise.
7207 * system-vxworks-arm.ads: Likewise.
7208 * system-vxworks-m68k.ads: Likewise.
7209 * system-vxworks-mips.ads: Likewise.
7210 * system-vxworks-ppc.ads: Likewise.
7211 * system-vxworks-sparcv9.ads: Likewise.
7212 * system-vxworks-x86.ads: Likewise.
7213 * system.ads: Likewise.
7214 * table.adb: Likewise.
7215 * table.ads: Likewise.
7216 * targext.c: Likewise.
7217 * targparm.ads: Likewise.
7218 * tree_in.adb: Likewise.
7219 * tree_in.ads: Likewise.
7220 * tree_io.adb: Likewise.
7221 * tree_io.ads: Likewise.
7222 * types.adb: Likewise.
7223 * types.ads: Likewise.
7224 * uintp.adb: Likewise.
7225 * uintp.ads: Likewise.
7226 * uname.adb: Likewise.
7227 * uname.ads: Likewise.
7228 * urealp.adb: Likewise.
7229 * urealp.ads: Likewise.
7230 * vx_stack_info.c: Likewise.
7231 * widechar.adb: Likewise.
7232 * widechar.ads: Likewise.
7233 * exp_attr.adb: Change copyright header to refer to version
7234 3 of the GNU General Public License and to point readers at the
7235 COPYING3 file and the FSF's license web page.
7236 * sem.adb: Likewise.
7237 * sem_attr.ads: Likewise.
7238 * freeze.adb: Likewise.
7239 * freeze.ads: Likewise.
7240 * errout.ads: Likewise.
7241 * erroutc.adb: Likewise.
7242 * exp_ch11.ads: Likewise.
7243
72442009-04-09 Jakub Jelinek <jakub@redhat.com>
7245
7246 * config-lang.in: Change copyright header to refer to version
7247 3 of the GNU General Public License and to point readers at the
7248 COPYING3 file and the FSF's license web page.
7249 * gcc-interface/trans.c: Likewise.
7250 * gnathtml.pl: Likewise.
7251 * gcc-interface/ada.h: Likewise. Remove runtime exception.
7252 * gcc-interface/gigi.h: Likewise.
7253 * gcc-interface/misc.c: Likewise.
7254 * gcc-interface/targtyps.c: Likewise.
7255
dd8cfe3a
AC
72562009-04-09 Nicolas Setton <setton@adacore.com>
7257
7258 * s-osinte-darwin.ads: Fix wrong binding to struc timeval.
7259
7260 * s-osinte-darwin.adb (To_Timeval): Adapt to fixed implementation of
7261 struct_timeval.
7262
72632009-04-09 Bob Duff <duff@adacore.com>
7264
7265 * exp_ch5.adb, exp_ch9.adb: Correct miscellaneous Slocs in
7266 internally-generated nodes related to select statements to avoid
7267 confusing the debugger.
7268
72692009-04-09 Pascal Obry <obry@adacore.com>
7270
7271 * make.adb: Ensure that all linker arguments are duplicated.
7272
59f3dd0a
AC
72732009-04-09 Robert Dewar <dewar@adacore.com>
7274
7275 * sem_ch5.adb: Minor reformatting
7276
72772009-04-09 Vincent Celier <celier@adacore.com>
7278
7279 * vms_data.ads:
7280 Change GNAT CHECK qualifier /DIAGNOSIS_LIMIT to /DIAGNOSTIC_LIMIT
7281 New qualifier /LEXPAND_SOURCE=nnn for -gnatGnnn
7282 New qualifier /LXDEBUG=nnn for -gnatDnnn
7283 For H820-010
7284
7285 * gnat_ugn.texi:
7286 Update documentation for VMS qualifiers equivalent to -gnatGnn and
7287 -gnatDnn
7288
72892009-04-09 Nicolas Setton <setton@adacore.com>
7290
7291 * s-osinte-darwin.ads: (Pad_Type): Make this an array of unsigned_long,
7292 to match layout of siginfo_t in sys/signal.h.
7293
7294 * gcc-interface/Makefile.in: Add section for x86_64 darwin.
7295
72962009-04-09 Thomas Quinot <quinot@adacore.com>
7297
7298 * g-socket.ads: (Fd_Set): Use Interfaces.C.long alignment.
7299
73002009-04-09 Nicolas Setton <setton@adacore.com>
7301
7302 * s-oscons-tmplt.c: Allow long lines in the generated spec.
7303 Add generation of Darwin-specific constants needed when binding to the
7304 pthread library.
7305
73062009-04-09 Robert Dewar <dewar@adacore.com>
7307
53b2323e
RH
7308 * checks.adb:
7309 (Insert_Valid_Check): Avoid unnecessary generation of junk declaration
7310 when no invalid values exist, Avoid duplicate read of atomic variable.
59f3dd0a 7311
53b2323e
RH
7312 * cstand.adb (Build_Signed_Integer_Type): Set Is_Known_Valid
7313 (Standard_Unsigned): Set Is_Known_Valid
59f3dd0a 7314
53b2323e 7315 * sem_ch3.adb (Analyze_Subtype_Declaration): Copy Is_Known_Valid on
59f3dd0a 7316 subtype declaration if no constraint.
53b2323e
RH
7317 (Set_Modular_Size): Set Is_Known_Valid if appropriate
7318 (Build_Derived_Numeric_Type): Copy Is_Known_Valid if no constraint
59f3dd0a 7319
f7d7bb51
AC
73202009-04-09 Robert Dewar <dewar@adacore.com>
7321
7322 * switch-c.adb, gnat_ugn.texi, vms_data.ads, switch.adb,
7323 switch.ads: for numeric switches, an optional equal sign is always
7324 allowed.
7325
73262009-04-09 Vincent Celier <celier@adacore.com>
7327
7328 * prj-nmsc.adb (Get_Unit): Do not consider Casing on platform where
7329 the case of file names is not significant.
7330
c75c4293
AC
73312009-04-09 Vincent Celier <celier@adacore.com>
7332
7333 * errout.adb: Remove dependency on package Style
7334
7335 * style.ads, styleg.adb, styleg.ads (RM_Column_Check): Remove function,
7336 moved to Stylesw.
7337
7338 * stylesw.ads, stylesw.adb (RM_Column_Check): New function, moved from
7339 Styleg.
7340
7341 * errutil.adb, par.adb: Import Stylesw
7342
73432009-04-09 Arnaud Charlet <charlet@adacore.com>
7344
7345 * opt.ads: Fix typos.
7346
73472009-04-09 Robert Dewar <dewar@adacore.com>
7348
7349 * einfo.adb: Minor reformatting
7350
e7aea0fa
RD
73512009-04-09 Robert Dewar <dewar@adacore.com>
7352
7353 * gcc-interface/Make-lang.in, style.ads, style.adb: Reorganize style
7354 units.
7355
7356 * styleg-c.ads, styleg-c.adb: Removed, no longer used.
7357
1c383b4c
AC
73582009-04-09 Robert Dewar <dewar@adacore.com>
7359
7360 * g-comver.adb: Minor reformatting.
7361
73622009-04-09 Thomas Quinot <quinot@adacore.com>
7363
7364 * lib-load.ads (Load_Unit): Update documentation.
7365
73662009-04-09 Ed Schonberg <schonberg@adacore.com>
7367
7368 * lib-load.adb (Load_Unit): When loading the parent of a child unit
7369 named in a with_clause, retain the with_clause to preserve a
7370 limited_with indication.
7371
d7ba4df4
RD
73722009-04-09 Robert Dewar <dewar@adacore.com>
7373
7374 * sem_ch7.adb, sem_ch10.adb, sem_prag.adb, sem_ch12.adb, sem_util.adb,
7375 exp_ch13.adb, sem_ch6.adb, exp_disp.adb, sem_ch8.adb, sem_warn.adb,
7376 sem_cat.adb: Code clean up: use Is_Package_Or_Generic_Package where
7377 possible to replace an OR of two separate tests.
7378
923e6ff3
RD
73792009-04-09 Robert Dewar <dewar@adacore.com>
7380
7381 * binderr.adb, errout.adb, errutil.adb: New circuitry for handling
7382 Maximum_Messages.
7383
7384 * erroutc.adb, erroutc.ads (Warnings_Suppressed): Now tests global
7385 warning status as well.
7386
7387 * opt.ads (Maximum_Messages): New name for Maximum_Errors.
7388
7389 * switch-b.adb, switch-c.adb: Change name Maximum_Errors to
7390 Maximum_Messages.
7391
7392 * bindusg.adb, usage.adb: Update line for -gnatm switch
7393
7394 * gnat_ugn.texi: Update documentation for -gnatmnn compiler switch and
7395 -mnn binder switch.
7396
73972009-04-09 Robert Dewar <dewar@adacore.com>
7398
7399 * sem_ch10.adb: Minor reformatting.
7400
beb50807
AC
74012009-04-09 Bob Duff <duff@adacore.com>
7402
7403 * exp_ch11.adb (Expand_Exception_Handlers, Prepend_Call_To_Handler):
7404 Set Sloc of generated nodes for calls to Undefer_Aborts and
7405 Save_Occurrence to No_Location, so the debugger ignores them and
7406 therefore does not jump back and forth when single stepping.
7407
74082009-04-09 Robert Dewar <dewar@adacore.com>
7409
7410 * switch-b.adb: Minor reformatting.
7411
a4100e55
RD
74122009-04-09 Robert Dewar <dewar@adacore.com>
7413
7414 * sem_aggr.adb, exp_ch5.adb, sem_ch3.adb, exp_atag.adb, layout.adb,
7415 sem_dist.adb, exp_ch7.adb, sem_ch5.adb, sem_type.adb, exp_imgv.adb,
7416 exp_util.adb, sem_aux.adb, sem_aux.ads, exp_attr.adb, exp_ch9.adb,
7417 sem_ch7.adb, inline.adb, fe.h, sem_ch9.adb, exp_code.adb, einfo.adb,
7418 einfo.ads, exp_pakd.adb, checks.adb, sem_ch12.adb, exp_smem.adb,
7419 tbuild.adb, freeze.adb, sem_util.adb, sem_res.adb, sem_attr.adb,
7420 exp_dbug.adb, sem_case.adb, exp_tss.adb, exp_ch4.adb, exp_ch6.adb,
7421 sem_smem.adb, sem_ch4.adb, sem_mech.adb, sem_ch6.adb, exp_disp.adb,
7422 sem_ch8.adb, exp_aggr.adb, sem_eval.adb, sem_cat.adb, exp_dist.adb,
7423 sem_ch13.adb, exp_strm.adb, lib-xref.adb, sem_disp.adb, exp_ch3.adb:
7424 Reorganize einfo/sem_aux, moving routines from einfo to sem_aux
7425
f17889b3
RD
74262009-04-09 Robert Dewar <dewar@adacore.com>
7427
7428 * exp_util.adb (Silly_Boolean_Array_Xor_Test): Simplify existing code.
7429
7430 * atree.h: Add Elist26
7431
7432 * gnat_ugn.texi: Complete documentation deprecating -gnatN for non-gcc
7433 backends.
7434
b16d9747
JM
74352009-04-09 Javier Miranda <miranda@adacore.com>
7436
7437 * exp_disp.adb (Export_DT): Addition of a new argument (Index); used to
7438 retrieve from the Dispatch_Table_Wrappers list the external name.
7439 Addition of documentation.
7440 (Make_Secondary_DT): Addition of a new argument (Suffix_Index) that is
7441 used to export secondary dispatch tables (in the previous version of
7442 the frontend only primary dispatch tables were exported). Addition of
7443 documentation.
7444 (Import_DT): New subprogram (internal of Make_Tags). Used to import a
7445 dispatch table of a given tagged type.
7446 (Make_Tags): Modified to import secondary dispatch tables.
7447
7448 * sem_ch3.adb (Analyze_Object_Declaration): Code cleanup.
7449 (Constant_Redeclaration): Code cleanup.
7450
7451 * einfo.ads (Dispatch_Table_Wrapper): Renamed to
7452 Dispatch_Table_Wrappers. Update documentation.
7453
7454 * einfo.adb (Dispatch_Table_Wrapper, Set_Dispatch_Table_Wrapper):
7455 Renamed to Dispatch_Table_Wrappers.
7456
7457 * sem_util.adb (Collect_Interface_Components): Improve handling of
7458 private types.
7459
7460 * atree.ads (Elist26, Set_Elist26): New subprograms
7461
7462 * atree.adb (Elist26, Set_Elist26): New subprograms
7463
59262ebb
AC
74642009-04-09 Javier Miranda <miranda@adacore.com>
7465
7466 * sem_ch3.adb (Build_Derived_Record_Type): Fix typo.
7467 (Derive_Progenitor_Subprograms): Handle interfaces in subtypes of
7468 tagged types.
7469
74702009-04-09 Robert Dewar <dewar@adacore.com>
7471
7472 * s-direio.adb: Minor reformatting
7473
7474 * exp_ch4.adb (Expand_Concatenate): Avoid overflow checks for String
7475
fa969310
AC
74762009-04-09 Robert Dewar <dewar@adacore.com>
7477
7478 * exp_ch4.adb (Expand_Concatenate): Improve handling of overflow cases
7479
74802009-04-09 Pascal Obry <obry@adacore.com>
7481
7482 * a-cihama.adb, a-cihama.ads, a-coinve.adb, a-coinve.ads,
7483 s-tpoben.adb, s-tpoben.ads, s-finimp.adb, s-finimp.ads,
7484 a-convec.adb, a-convec.ads, a-finali.adb, a-finali.ads,
7485 a-filico.ads: Add some missing overriding keywords.
7486
3c25856a
AC
74872009-04-09 Pascal Obry <obry@adacore.com>
7488
7489 * a-cihama.adb, a-cihama.ads, a-coinve.adb, a-coorma.ads, a-cihase.adb,
7490 a-cihase.ads, a-cohama.adb, a-cohama.ads, a-coorse.adb, a-coorse.ads,
7491 a-coormu.adb, a-coormu.ads, a-cohase.adb, a-cohase.ads: Minor
7492 reformatting.
7493
74942009-04-09 Ed Schonberg <schonberg@adacore.com>
7495
7496 * sem_ch6.adb (Check_Overriding_Indicator): Do not generate warning on
7497 missing overriding indicator if the new declaration is not seen as
7498 primitive.
7499
76c597a1
AC
75002009-04-09 Thomas Quinot <quinot@adacore.com>
7501
7502 * exp_ch4.adb (Expand_Concatenate): Add circuitry to properly handle
7503 overflows in computation of bounds.
7504
75052009-04-09 Pascal Obry <obry@adacore.com>
7506
7507 * a-cihama.adb, a-cgcaso.adb, a-cihase.adb, a-cohase.adb: Fix some
7508 typos in comment.
7509
95b89f1b
AC
75102009-04-09 Robert Dewar <dewar@adacore.com>
7511
7512 * sem_attr.adb (Check_Stream_Attribute): Check violation of
7513 restriction No_Streams
7514
7515 * gnat_rm.texi: Clarify No_Streams restriction
7516
7517 * g-socket.adb: Minor reformatting.
7518
75192009-04-09 Thomas Quinot <quinot@adacore.com>
7520
7521 * g-socket.ads: Mark Initialize and Finalize as obsolesent interfaces.
7522
75232009-04-09 Geert Bosch <bosch@adacore.com>
7524
7525 * exp_fixd.adb (Build_Conversion): Accept new optional Trunc argument.
7526 (Set_Result): Likewise.
7527 (Expand_Convert_Float_To_Fixed): Have Set_Result truncate the
7528 conversion, as required by RM 4.6(31).
7529
3d5952be
AC
75302009-04-08 Robert Dewar <dewar@adacore.com>
7531
7532 * checks.adb (Enable_Overflow_Check): Do not enable if overflow checks
7533 suppressed.
7534
7535 * exp_ch4.adb (Expand_Concatenate): Make sure checks are off for all
7536 resolution steps.
7537
75382009-04-08 Robert Dewar <dewar@adacore.com>
7539
7540 * sem_ch12.adb (Analyze_Package_Instantiation): Remove test for
7541 No_Local_Allocators restriction preventing local instantiation.
7542
75432009-04-08 Thomas Quinot <quinot@adacore.com>
7544
7545 * sem_eval.adb: Minor comment fix
7546
75472009-04-08 Thomas Quinot <quinot@adacore.com>
7548
7549 * g-socket.adb, g-socket.ads (GNAT.Sockets.Sockets_Library_Controller):
7550 New limited controlled type used to automate the initialization and
7551 finalization of the sockets implementation.
7552 (GNAT.Sockets.Initialize, Finalize): Make these no-ops
7553
75542009-04-08 Vincent Celier <celier@adacore.com>
7555
7556 * prj-attr.adb: New read-only project-level attribute Project_Dir
7557
7558 * prj-proc.adb (Add_Attributes): New parameter Project_Dir, value of
7559 read-only attribute of the same name.
7560 (Process_Declarative_Items): Call Add_Attributes with Project_Dir
7561 (Recursive_Process): Ditto
7562
7563 * snames.adb: Add new standard name Project_Dir
7564
7565 * snames.ads: Add new standard name Project_Dir
7566
b568955d
AC
75672009-04-08 Thomas Quinot <quinot@adacore.com>
7568
7569 * checks.adb: Minor reformatting
7570
75712009-04-08 Vincent Celier <celier@adacore.com>
7572
7573 * vms_data.ads: Add documentation for new style keyword
7574 OVERRIDING_INDICATORS
7575
75762009-04-08 Robert Dewar <dewar@adacore.com>
7577
7578 * sem_ch3.adb (Check_Completion.Post_Error): Post error on spec if the
7579 spec is in the current unit.
7580
ed57136d
AC
75812009-04-08 Ed Schonberg <schonberg@adacore.com>
7582
7583 * sem_util.adb (Is_Protected_Self_Reference): Add guard to check for
7584 presence of entity.
7585
7586 * usage.adb, gnat_ugn.texi: add info on -gnatyO: overriding indicators
7587
75882009-04-08 Vincent Celier <celier@adacore.com>
7589
7590 * vms_data.ads: Add VMS equivalent for -gnatyO (OVERRIDING_INDICATORS)
7591
75922009-04-08 Thomas Quinot <quinot@adacore.com>
7593
7594 * checks.ads: Minor reformatting
7595
75962009-04-08 Robert Dewar <dewar@adacore.com>
7597
7598 * gnat_rm.texi: Update documentation of pragma Obsolescent
7599
7600 * sem_prag.adb (Analyze_Pragma, case Obsolescent): Allow identifiers to
7601 be omitted, and allow Entity parameter to be omitted.
7602
ef7c5692
AC
76032009-04-08 Thomas Quinot <quinot@adacore.com>
7604
7605 * exp_util.adb: Minor comment fix
7606
76072009-04-08 Robert Dewar <dewar@adacore.com>
7608
7609 * g-socket.ads: Fix bad syntax in pragma Obsolescent
7610
7611 * par-ch2.adb (Scan_Pragma_Argument_Association): Check for error of
7612 argument with no identifier following one that has an identifier. Was
7613 missed in some cases.
7614
7615 * sem_prag.adb (Analyze_Pragma, case Check_Policy): Allow Policy
7616 identifier.
7617 (Analyze_Pragma, case Obsolescent): Allow Message, Version identifiers
7618
7619 * snames.adb: Add Name_Policy
7620
7621 * snames.ads: Add Name_Policy
7622
0c7f5241
RD
76232009-04-08 Robert Dewar <dewar@adacore.com>
7624
7625 * gnat_rm.texi: Minor reformatting
7626
7627 * par-ch2.adb: Minor reformatting
7628
ae8c7d87
RD
76292009-04-08 Robert Dewar <dewar@adacore.com>
7630
7631 * exp_attr.adb, sem_attr.adb, sem_util.adb: Code clean up.
7632
ff69f95a
RD
76332009-04-08 Robert Dewar <dewar@adacore.com>
7634
7635 * sem_cat.adb (Check_Categorization_Dependencies): Handle Preelaborate
7636 properly in the presence of Remote_Types or Remote_Call_Interface.
7637
7638 * sem_util.adb: Add comment.
7639
2db15b1d
AC
76402009-04-08 Robert Dewar <dewar@adacore.com>
7641
7642 * ug_words: Add /ASSUME_VALID for -gnatB
7643
7644 * vms_data.ads: Add /ASSUME_VALID for -gnatB
7645
7646 * sem_cat.adb: Add clarifying commment
7647
7648 * a-direio.ads (Bytes): Make sure value is non-zero
7649
76502009-04-08 Ed Schonberg <schonberg@adacore.com>
7651
7652 * sem_util.adb (Is_Variable): If the prefix is an explicit dereference
7653 that does not come from source, check for a rewritten function call in
7654 prefixed notation before other forms of rewriting.
7655
76562009-04-08 Robert Dewar <dewar@adacore.com>
7657
7658 * Makefile.rtl: Remove s-strops and s-sopco? from the run time, since
7659 these are now obsolescent units used only for bootrapping with an
7660 older compiler.
7661
94fd3dc6
AC
76622009-04-08 Robert Dewar <dewar@adacore.com>
7663
7664 * gnat_rm.texi: Add documentation for pragma Thread_Local_Storage
7665
7666 * sem_ch3.adb: Minor comment updates
7667
76682009-04-08 Ed Schonberg <schonberg@adacore.com>
7669
7670 * inline.adb (Back_End_Cannot_Inline): restrict warning to subprograms
7671 that come from source.
7672
40a14772
TG
76732009-04-08 Tristan Gingold <gingold@adacore.com>
7674
cac9d8d6
EB
7675 * gcc-interface/gigi.h (enum attr_type): Add ATTR_THREAD_LOCAL_STORAGE.
7676 * gcc-interface/decl.c (prepend_attributes): New case
7677 Pragma_Thread_Local_Storage.
7678 * gcc-interface/utils.c (process_attributes): New case
7679 ATTR_THREAD_LOCAL_STORAGE.
7680
46ff89f3
AC
76812009-04-08 Ed Schonberg <schonberg@adacore.com>
7682
7683 * inline.adb (Back_End_Cannot_Inline): Do not mark a body as inlineable
7684 by the back-end if it contains a call to a subprogram without a
7685 previous spec that is declared in the same unit.
7686
7687 * errout.ads: Update comments on uses of dirs
7688
76892009-04-08 Robert Dewar <dewar@adacore.com>
7690
7691 * exp_ch4.adb (Expand_Concatenate): Make sure nodes are properly typed
7692
812f574f
AC
76932009-04-08 Tristan Gingold <gingold@adacore.com>
7694
7695 * sem_prag.adb: Restrict pragma Thread_Local_Storage to library level
7696 variables.
7697 Set Has_Gigi_Rep_Item flag to TLS variables (to ease gigi work).
7698
76992009-04-08 Vincent Celier <celier@adacore.com>
7700
7701 * prj-nmsc.adb:
7702 (Add_Source): Add the mapping of the unit name to source file name in
7703 the Unit_Sources_HT hash table, if the unit name is not null.
7704
7705 * prj.adb (Reset): Reset hash table Tree.Unit_Sources_HT
7706
7707 * prj.ads (Unit_Sources_Htable): New hash table instantiation
7708 (Project_Tree_Data): New component Unit_Sources_HT
7709
4c8a5bb8
AC
77102009-04-08 Thomas Quinot <quinot@adacore.com>
7711
7712 * sem_ch8.adb: Minor reformatting.
7713 Minor code reorganization.
7714
77152009-04-08 Robert Dewar <dewar@adacore.com>
7716
7717 * snames.h, einfo.adb, einfo.ads, sem_prag.adb, snames.adb,
7718 snames.ads, freeze.adb, par-prag.adb: Add implementation of
7719 pragma Thread_Local_Storage, setting new flag
7720 Has_Pragma_Thread_Local_Storage in corresponding entities.
7721
ecc4ddde
AC
77222009-04-08 Emmanuel Briot <briot@adacore.com>
7723
7724 * prj.ads: Update comment on switches file
7725
7726 * prj-nmsc.adb: Code clean up. Use renaming clauses.
7727
77282009-04-08 Robert Dewar <dewar@adacore.com>
7729
7730 * exp_ch4.adb (Expand_Concatenate): Further fixes to bounds handling
7731
77322009-04-08 Thomas Quinot <quinot@adacore.com>
7733
7734 * ali-util.adb: Minor comment fix
7735
77362009-04-08 Ed Schonberg <schonberg@adacore.com>
7737
7738 * sem_ch8.adb (Analyze_Use_Type): Improve error message when clause
7739 appears in a context clause, and the enclosing package is mentioned in
7740 a limited_with_clause.
7741 (Use_One_Type): Reject clause if type is still incomplete.
7742
a29262fd
AC
77432009-04-08 Emmanuel Briot <briot@adacore.com>
7744
7745 * prj-nmsc.adb (Check_File, Process_Sources_In_Multi_Language_Mode):
7746 avoid copies of Source_Data variables when possible, since these
7747 involve calls to memcpy() which are done too many times.
7748
77492009-04-08 Robert Dewar <dewar@adacore.com>
7750
7751 * exp_ch4.adb (Expand_Concatenate): Clean up code
7752
a2dc5812
AC
77532009-04-07 Thomas Quinot <quinot@adacore.com>
7754
7755 * exp_ch4.adb (Expand_Concatenate): Add missing conversion to index
7756 type for the case of concatenating a constrained array indexed by an
7757 enumeration type.
7758
77592009-04-07 Ed Schonberg <schonberg@adacore.com>
7760
7761 * sem_ch6.adb (Check_Conformance): when checking conformance of an
7762 operation that overrides an abstract operation inherited from an
7763 interface, return False if only one of the controlling formals is an
7764 access parameter.
7765
77662009-04-07 Ed Schonberg <schonberg@adacore.com>
7767
7768 * sem_ch8.adb (Analyze_Object_Renaming): additional error messages
7769 mandated by AI05-105.
7770
77712009-04-07 Vincent Celier <celier@adacore.com>
7772
7773 * prj-nmsc.adb (Get_Mains): Warn if a main is an empty string
7774
77752009-04-07 Thomas Quinot <quinot@adacore.com>
7776
7777 * usage.adb: Minor fix in usage message.
7778
7779 * sem_ch10.adb (Remove_Homonyms): Fix subtype of formal in body to
7780 match declaration; the correct subtype is Node_Id, not Entity_Id,
7781 because the expected node kind is an identifier, not a defining
7782 identifier.
7783
7784 * switch-c.adb: Minor reformatting.
7785
7786 * uintp.adb: Minor reformatting.
7787
77882009-04-07 Robert Dewar <dewar@adacore.com>
7789
7790 * exp_ch13.adb: Minor reformatting
7791
0ac73189
AC
77922009-04-07 Robert Dewar <dewar@adacore.com>
7793
7794 * sem_warn.adb (Check_Infinite_Loop_Warning.Test_Ref): Add defence
7795 against missing parent.
7796
77972009-04-07 Thomas Quinot <quinot@adacore.com>
7798
7799 * xoscons.adb: Minor reformatting
7800
78012009-04-07 Robert Dewar <dewar@adacore.com>
7802
7803 * rtsfind.ads: Remove obsolete string concatenation entries
7804
78052009-04-07 Robert Dewar <dewar@adacore.com>
7806
7807 * exp_ch4.adb (Expand_Concatenate): Redo handling of bounds
7808
78092009-04-07 Ed Schonberg <schonberg@adacore.com>
7810
7811 * sem_ch10.adb (Check_Body_Required): Handle properly imported
7812 subprograms.
7813
78142009-04-07 Gary Dismukes <dismukes@adacore.com>
7815
7816 * exp_ch13.adb (Expand_N_Attribute_Definition_Clause, case
7817 Attribute_Address): When Init_Or_Norm_Scalars is True and the object
7818 is of a scalar or string type then suppress the setting of the
7819 expression to Empty.
7820
7821 * freeze.adb (Warn_Overlay): Also emit the warnings about default
7822 initialization for the cases of scalar and string objects when
7823 Init_Or_Norm_Scalars is True.
7824
1732c156
AC
78252009-04-07 Bob Duff <duff@adacore.com>
7826
7827 * s-secsta.ads, g-pehage.ads, s-fileio.ads: Minor comment fixes
7828
78292009-04-07 Bob Duff <duff@adacore.com>
7830
7831 * gnat_rm.texi, s-fileio.adb (System.File_IO.Open): New feature: A
7832 Form parameter of Text_Translation=No allows binary mode for Text_IO
7833 files.
7834
7835 * gnat_rm.texi: Document Form parameter Text_Translation=xxx.
7836
78372009-04-07 Javier Miranda <miranda@adacore.com>
7838
7839 * exp_ch5.adb (Expand_Assign_Array): Add implicit conversion when
7840 processing the bounds for bit packed arrays or VM target machines.
7841
f16d05d9
AC
78422009-04-07 Thomas Quinot <quinot@adacore.com>
7843
7844 * g-sothco.ads (Int_Access): Remove extraneous access type (use
7845 anonymous access instead).
7846 (Get_Socket_From_Set): Fix incorrectly reverted formals
7847 Last and Socket to match the underlying C routine.
7848
ad1536a1 7849 * g-socket.adb, g-socket.ads
f16d05d9
AC
7850 (Get): Use named parameter associations instead of positional ones in
7851 call go Get_Socket_From_Set, since this routine has two formals of the
7852 same type.
ad1536a1 7853 (Image): New procedure.
f16d05d9
AC
7854
7855 * g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
7856 g-socthi-vxworks.ads, g-socthi-mingw.ads, g-socthi.adb, g-socthi.ads:
7857 (C_Ioctl, Syscall_Ioctl): use "access C.int" instead of "Int_Access"
7858 for type of Arg formal.
7859
7860 * sem_warn.adb: Minor reformatting
7861
78622009-04-07 Ed Schonberg <schonberg@adacore.com>
7863
7864 * sem_util.adb (Has_Tagged_Component): Fix typo in loop that iterates
7865 over record components.
7866
78672009-04-07 Nicolas Roche <roche@adacore.com>
7868
7869 * gsocket.h:
7870 Don't include resolvLib.h on VxWorks 6 (kernel and rtp). This library
7871 has disappeared between VxWorks 6.4 and VxWorks 6.5
7872 In RTP mode use time.h instead of times.h
7873
78742009-04-07 Robert Dewar <dewar@adacore.com>
7875
7876 * exp_ch4.adb (Expand_N_Op_Concat): Improve lower bound handling
7877
78782009-04-07 Kevin Pouget <pouget@adacore.com>
7879
7880 * exp_dist.adb: Modify Build_From_Any_Fonction procedure to correct
7881 expanded code for constrained types.
7882
78832009-04-07 Ed Schonberg <schonberg@adacore.com>
7884
7885 * sem_ch4.adb (Analyze_Overloaded_Selected_Component): implement
7886 AI05-105: in an object renaming declaration, anonymousness is a name
7887 resolution rule.
7888
7889 * sem_ch8.adb (Analyze_Object_Renaming): Ditto.
7890
78912009-04-07 Arnaud Charlet <charlet@adacore.com>
7892
7893 * g-comlin.adb (Expansion): Fix old regression: also return directory
7894 names when matching.
7895
2fc05e3d
AC
78962009-04-07 Robert Dewar <dewar@adacore.com>
7897
7898 * exp_ch4.adb:
7899 (Expand_N_Op_Concat): Call Expand_Concatenate for all cases
7900 (Expand_Concatenate): New name for Expand_Concatenate_String which has
7901 been rewritten to handle all types.
7902 (Expand_Concatenate_Other): Remove
7903
79042009-04-07 Ed Schonberg <schonberg@adacore.com>
7905
7906 * lib-xref.adb (Generate_Reference): A default subprogram in an
7907 instance appears within the tree for the instance, but generates an
7908 implicit reference in the ALI.
7909
fdac1f80
AC
79102009-04-07 Javier Miranda <miranda@adacore.com>
7911
7912 * sem_ch3.adb (Build_Derived_Record_Type): When processing a tagged
7913 derived type that has discriminants, propagate the list of interfaces
7914 to the corresponding new base type. In addition, propagate also
7915 attribute Limited_Present (found working in this patch).
7916
79172009-04-07 Robert Dewar <dewar@adacore.com>
7918
7919 * exp_ch4.adb: Rewrite concatenation expansion.
7920
8dbd1460
AC
79212009-04-07 Ed Schonberg <schonberg@adacore.com>
7922
7923 * sem_ch8.adb (Restore_Scope_Stack): First_Private_Entity is only
7924 relevant to packages.
7925
79262009-04-07 Robert Dewar <dewar@adacore.com>
7927
7928 * sem_attr.adb: Minor reformatting
7929
7930 * sem_ch6.adb: Minor reformatting
7931
2ddc2000
AC
79322009-04-07 Tristan Gingold <gingold@adacore.com>
7933
7934 * socket.c: Add more protections against S_resolvLib_ macros.
7935
79362009-04-07 Thomas Quinot <quinot@adacore.com>
7937
7938 * sem_attr.adb: Minor reformatting
7939
79402009-04-07 Ed Schonberg <schonberg@adacore.com>
7941
7942 * sem_ch6.adb (New_Overloaded_Entity): New predicate
7943 Is_Overriding_Alias to handle properly types that inherit two homonym
7944 operations that have distinct dispatch table entries.
7945
06a16f58
AC
79462009-04-07 Emmanuel Briot <briot@adacore.com>
7947
7948 * s-regexp.adb (Create_Mapping): Ignore excaped open parenthesis when
7949 looking for the end of a parenthesis group
7950
79512009-04-07 Tristan Gingold <gingold@adacore.com>
7952
7953 * gsocket.h Don't #include resolvLib.h if __RTP__ is defined.
7954
7955 * socket.c Don't use resolvLib_ macros if not defined.
7956
df46b832
AC
79572009-04-07 Robert Dewar <dewar@adacore.com>
7958
7959 * g-socket.adb: Minor reformatting.
7960
7961 * g-socthi-mingw.adb: Minor reformatting
7962
7963 * g-sothco.ads: Minor reformatting
7964
7965 * exp_ch4.adb:
7966 (Expand_Concatenate_String): Complete rewrite to generate efficient code
7967 inline instead of relying on external library routines.
7968
7969 * s-strops.ads, s-sopco5.ads, s-sopco5.adb, s-sopco4.ads, s-sopco4.adb,
7970 s-sopco3.ads, s-sopco3.adb, s-strops.adb: Note that this unit is now
7971 obsolescent
7972
79732009-04-07 Ed Schonberg <schonberg@adacore.com>
7974
7975 * sem_attr.adb:
7976 (Eval_Attribute): for attributes of array objects that are not strings,
7977 attributes are not static if nominal subtype of object is unconstrained.
7978
79792009-04-07 Ed Schonberg <schonberg@adacore.com>
7980
7981 * sem_ch6.adb (New_Overloaded_Entity): If two implicit homonym
7982 operations for a type T in an instance do not override each other,
7983 when T is derived from a formal private type, the corresponding
7984 operations inherited by a type derived from T outside
7985 of the instance do not override each other either.
7986
3dd9959c
AC
79872009-04-07 Robert Dewar <dewar@adacore.com>
7988
7989 (Osint.Fail): Change calling sequence to have one string arg
7990 (Make.Make_Failed): Same change
7991 All callers are adjusted to use concatenation
7992
79932009-04-07 Robert Dewar <dewar@adacore.com>
7994
7995 * exp_ch4.adb: Fix documentation typo
7996
79972009-04-07 Robert Dewar <dewar@adacore.com>
7998
7999 * tbuild.ads: Minor reformatting
8000
80012009-04-07 Javier Miranda <miranda@adacore.com>
8002
8003 * exp_disp.adb (Make_DT): Avoid the generation of the OSD_Table
8004 when compiling under ZFP runtime.
8005
80062009-04-07 Robert Dewar <dewar@adacore.com>
8007
8008 * g-comlin.adb: Minor reformatting
8009
80102009-04-07 Thomas Quinot <quinot@adacore.com>
8011
8012 * socket.c, g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
8013 g-socthi-vxworks.ads, g-socthi-mingw.adb, g-socthi-mingw.ads,
8014 g-socthi.adb, g-socthi.ads, g-socket.adb, g-socket.ads, g-sothco.ads:
8015 Remove dynamic allocation of Fd_Set in Socket_Set_Type objects.
8016
dcd8728b
RD
80172009-04-07 Robert Dewar <dewar@adacore.com>
8018
8019 * gnat_ugn.texi: Document -gnatDnn/-gnatGnn
8020
8021 * opt.ads (Sprint_Line_Limit): New parameter
8022
8023 * sprint.adb: Usa Sprint_Line_Limit instead of Line_Limit throughout
8024
8025 * switch-c.adb: Recognize -gnatDnnn and -gnatGnnn switches
8026
8027 * usage.adb: Output information for -gnatGnn -gnatDnn
8028
80292009-04-07 Robert Dewar <dewar@adacore.com>
8030
8031 * make.adb: Minor reformatting
8032
80332009-04-07 Robert Dewar <dewar@adacore.com>
8034
8035 * mlib-tgt-specific-vms-alpha.adb: Minor reformatting
8036
80372009-04-07 Robert Dewar <dewar@adacore.com>
8038
8039 * mlib-tgt-specific-vms-ia64.adb: Minor reformatting
8040
c27f2f15
RD
80412009-04-07 Robert Dewar <dewar@adacore.com>
8042
8043 * checks.adb:
8044 Remove Assume_Valid parameter from In_Subrange_Of calls
8045
8046 * sem_eval.adb:
8047 (Is_Subrange_Of): Remove Assume_Valid parameter, not needed
8048 (Is_In_Range): Remove incorrect use of Assume_Valid
8049 (Is_Out_Of_Range): Remove incorrect use of Assume_Valid
8050
8051 * sem_eval.ads:
8052 (Is_Subrange_Of): Remove Assume_Valid parameter, not needed
8053 (Is_In_Range): Documentation cleanup
8054 (Is_Out_Of_Range): Documentation cleanup
8055
8056 * gnat_rm.texi:
8057 Add documentation for Assume_No_Invalid_Values pragma
8058
8059 * sem_ch12.adb: Minor reformatting
8060
8061 * sem_ch6.adb: (Check_Conformance): Avoid cascaded errors
8062
8063 * sem_prag.adb: Improve error message.
8064
8065 * gnatchop.adb, osint.ads, sinput.adb, sinput.ads, styleg.adb:
8066 LF/CR no longer recognized as line terminator
8067
8068 * switch.ads: Minor documentation improvement
8069
8070 * vms_data.ads: Minor reformatting
8071
c800f862
RD
80722009-04-07 Robert Dewar <dewar@adacore.com>
8073
8074 * checks.adb (Determine_Range): Add Assume_Valid parameter
8075
8076 * checks.ads (Determine_Range): Add Assume_Valid parameter
8077
8078 * errout.adb (Error_Msg_NEL): Use Suppress_Loop_Warnings rather than
8079 Is_Null_Loop to suppress warnings in a loop body.
8080
8081 * exp_ch4.adb:
8082 (Rewrite_Comparison): Major rewrite to accomodate invalid values
8083
8084 * exp_ch5.adb:
8085 (Expand_N_Loop_Statement): Delete loop known not to execute
8086
8087 * opt.ads:
8088 (Assume_No_Invalid_Values): Now set to False, and as documented, this
8089 fully enables the proper handling of invalid values.
8090
8091 * sem_attr.adb:
8092 New calling sequence for Is_In_Range
8093
8094 * sem_ch5.adb:
8095 (Analyze_Iteration_Scheme): Accomodate possible invalid values
8096 in determining if a loop range is null.
8097
8098 * sem_eval.adb:
8099 (Is_In_Range): Add Assume_Valid parameter
8100 (Is_Out_Of_Range): Add Assume_Valid_Parameter
8101 (Compile_Time_Compare): Major rewrite to accomodate invalid values and
8102 also to do more accurate and complete range analysis, catching more
8103 cases.
8104
8105 * sem_eval.ads:
8106 (Is_In_Range): Add Assume_Valid parameter
8107 (Is_Out_Of_Range): Add Assume_Valid_Parameter
8108
8109 * sem_util.adb:
8110 New calling sequence for Is_In_Range
8111
8112 * sinfo.adb:
8113 (Suppress_Loop_Warnings): New flag
8114
8115 * sinfo.ads:
8116 (Is_Null_Loop): Update documentation
8117 (Suppress_Loop_Warnings): New flag
8118
8119 * gnat_ugn.texi: Document -gnatB switch
8120
9d00840d
AC
81212009-04-07 Arnaud Charlet <charlet@adacore.com>
8122
8123 * gnatvsn.ads: Bump version number.
8124
5f143024
AC
81252009-04-07 Thomas Quinot <quinot@adacore.com>
8126
8127 * exp_ch3.adb: Minor rewording (comments)
8128
81292009-04-07 Robert Dewar <dewar@adacore.com>
8130
8131 * exp_disp.adb: Minor reformatting
8132
d5859bf4
EB
81332009-04-07 Eric Botcazou <ebotcazou@adacore.com>
8134
8135 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Test the
8136 underlying type.
8137 * gcc-interface/trans.c (lvalue_required_p): Likewise.
8138
c86f07f6
EB
81392009-04-07 Eric Botcazou <ebotcazou@adacore.com>
8140
8141 * gcc-interface/trans.c (Attribute_to_gnu) <Max_Size_In_Storage_Elmts>:
8142 Do not convert the result. Remove obsolete comment.
8143
2d5be6c1
EB
81442009-04-07 Eric Botcazou <ebotcazou@adacore.com>
8145
8146 * gcc-interface/trans.c (establish_gnat_vms_condition_handler): Clear
8147 DECL_CONTEXT.
8148 (Subprogram_Body_to_gnu): Fix pasto.
8149
10069d53
EB
81502009-04-07 Eric Botcazou <ebotcazou@adacore.com>
8151
8152 * gcc-interface/gigi.h (standard_datatypes): Remove ADT_void_type_decl.
8153 (void_type_decl_node): Remove.
8154 (init_gigi_decls): Likewise.
8155 (gnat_install_builtins): Declare.
8156 (record_builtin_type): Likewise.
8157 (create_type_stub_decl): Likewise.
8158 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Void>: Use void_type.
8159 (gnat_to_gnu_entity) <E_Array_Type>: Make fat and thin pointer types
8160 artificial.
8161 <E_Array_Subtype>: Use the index types, not only their name, in the
8162 record giving the names of the bounds, if any.
8163 For a packed array type, make it artificial only if the base type
8164 was artificial as well. Remove redundant statement.
8165 (gnat_to_gnu_entity) <E_Incomplete_Type>: Do not create TYPE_DECL for
8166 dummy types.
8167 Use create_type_stub_decl to build the TYPE_STUB_DECL of types.
8168 (rest_of_type_decl_compilation_no_defer): Likewise.
8169 * gcc-interface/misc.c (gnat_printable_name): Add missing guard.
8170 * gcc-interface/utils.c (make_dummy_type): Always create TYPE_STUB_DECL
8171 and use create_type_stub_decl to build it.
8172 (gnat_pushdecl): Rewrite condition.
8173 (gnat_install_builtins): Remove bogus declaration.
8174 (record_builtin_type): New function.
8175 (finish_record_type): Use create_type_stub_decl to build TYPE_STUB_DECL
8176 of types.
8177 (create_type_stub_decl): New function.
8178 (create_type_decl): Assert that the type is not dummy. If the type
8179 hasn't been named yet, equate the TYPE_STUB_DECL to the created node.
8180 (build_vms_descriptor32): Do not create TYPE_DECL for the descriptor.
8181 (build_vms_descriptor): Likewise.
8182 (init_gigi_decls): Delete and move bulk of code to...
8183 * gcc-interface/trans.c (gigi): ...here. Use record_builtin_type.
8184 (emit_range_check): Add gnat_node parameter.
8185 (emit_index_check): Likewise.
8186 (emit_check): Likewise.
8187 (build_unary_op_trapv): Likewise.
8188 (build_binary_op_trapv): Likewise.
8189 (convert_with_check): Likewise.
8190 (Attribute_to_gnu): Adjust calls for above changes.
8191 (call_to_gnu): Likewise.
8192 (gnat_to_gnu): Likewise.
8193 (assoc_to_constructor): Likewise.
8194 (pos_to_constructor): Likewise.
8195 (Sloc_to_locus): Set BUILTINS_LOCATION for Standard_Location nodes.
8196 (process_type): Do not create TYPE_DECL for dummy types.
8197
229077b0
EB
81982009-04-07 Eric Botcazou <ebotcazou@adacore.com>
8199
1e17ef87
EB
8200 * gcc-interface/decl.c (gnat_to_gnu_entity): Reorder local variables.
8201 * gcc-interface/trans.c: Fix formatting throughout. Fix comments.
8202 * gcc-interface/utils.c: Fix comments.
8203
82042009-04-07 Eric Botcazou <ebotcazou@adacore.com>
8205
8206 * gcc-interface/decl.c (compile_time_known_address_p): Rewrite and
8207 move around.
229077b0
EB
8208 (gnat_to_gnu_type): Move around.
8209 (get_unpadded_type): Likewise.
1e17ef87
EB
8210 * gcc-interface/utils.c (update_pointer_to): Use synthetic macro.
8211 Tidy comments.
229077b0 8212
aa1aa786
EB
82132009-04-07 Eric Botcazou <ebotcazou@adacore.com>
8214
8215 * gcc-interface/trans.c (check_for_eliminated_entity): New function.
8216 (Attribute_to_gnu): Invoke it for Access- and Address-like attributes.
8217 (call_to_gnu): Invoke it instead of manually checking.
8218
63787194
EB
82192009-04-04 Eric Botcazou <ebotcazou@adacore.com>
8220
8221 * gcc-interface/utils.c (finish_record_type): Force structural equality
8222 checks if the record type is discriminated.
8223
d236ace7
EB
82242009-03-31 Eric Botcazou <ebotcazou@adacore.com>
8225
8226 * system-linux-alpha.ads (Functions_Return_By_DSP): Remove.
8227 * system-linux-mips.ads (Functions_Return_By_DSP): Likewise.
8228 * system-linux-mipsel.ads (Functions_Return_By_DSP): Likewise.
8229 * system-linux-s390.ads (Functions_Return_By_DSP): Likewise.
8230 * system-linux-s390x.ads (Functions_Return_By_DSP): Likewise.
8231 * system-linux-sparc.ads (Functions_Return_By_DSP): Likewise.
8232 * system-linux-sparcv9.ads (Functions_Return_By_DSP): Likewise.
8233
bd9f68e0
PB
82342009-03-30 Paolo Bonzini <bonzini@gnu.org>
8235
d7be99f1
EB
8236 * gcc-interface/decl.c (maybe_pad_type): Use TREE_OVERFLOW instead
8237 of TREE_CONSTANT_OVERFLOW.
bd9f68e0 8238
8ce94e44
JM
82392009-03-30 Joseph Myers <joseph@codesourcery.com>
8240
8241 PR rtl-optimization/323
8242 * gcc-interface/misc.c (gnat_post_options): Set
8243 flag_excess_precision_cmdline. Give an error for
8244 -fexcess-precision=standard for processors where the option is
8245 significant.
8246
d9223014
L
82472009-03-27 H.J. Lu <hongjiu.lu@intel.com>
8248
8249 PR c/39323
8250 * gcc-interface/utils.c (create_field_decl): Use "unsigned int"
8251 on bit_align.
8252
76761bbd
OH
82532009-03-11 Olivier Hainque <hainque@adacore.com>
8254
8255 * gcc-interface/trans.c (gnat_to_gnu) <case N_Slice>: In range
8256 checks processing, remove unintended TREE_TYPE walk on index type.
8257
39ae51e0
EB
82582009-03-01 Eric Botcazou <ebotcazou@adacore.com>
8259
8260 PR ada/39264
8261 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Do no
8262 call make_packable_type on fat pointer types.
8263 <E_Array_Subtype>: Likewise.
8264 <E_Record_Subtype>: Call make_packable_type on all record types
8265 except for fat pointer types.
8266 (make_packable_type): Likewise.
8267 (gnat_to_gnu_field): Likewise.
8268
7d01864f
EB
82692009-02-28 Eric Botcazou <ebotcazou@adacore.com>
8270
8271 * gcc-interface/Makefile.in (cygwin/mingw): Revert accidental
67901d32 8272 EH_MECHANISM change made on 2007-12-06.
7d01864f 8273
a760c977
AS
82742009-02-26 Andreas Schwab <schwab@suse.de>
8275
4c354194 8276 PR ada/39172
a760c977 8277 * Makefile.in (srcdir): Set to @top_srcdir@ instead of @srcdir@.
a760c977
AS
8278 * gcc-interface/Makefile.in: Change all uses of $(srcdir),
8279 $(fsrcdir) and $(fsrcpfx) to add ada subdir.
8280 (AWK): Substitute.
8281 (target_cpu_default): Substitute.
8282
054efbba
LG
82832009-02-25 Laurent GUERBY <laurent@guerby.net>
8284
975a4fd6 8285 PR ada/39221
a760c977
AS
8286 * a-teioed.adb (Expand): Fix Result overflow.
8287
c608b4d2 82882009-02-25 Laurent GUERBY <laurent@guerby.net>
2692d7f5 8289
a760c977
AS
8290 * gcc-interface/Makefile.in: Fix multilib handling for
8291 sparc64-linux.
8292
ea675ec3
RO
82932009-02-23 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
8294
8295 * s-oscons-tmplt.c [__osf__ && !_SS_MAXSIZE]: Undef AF_UNIX6.
8296
e98c0739
L
82972009-02-18 H.J. Lu <hongjiu.lu@intel.com>
8298
8299 * gcc-interface/misc.c (gnat_post_options): Turn off warn_psabi.
8300
70f5fc7c
EB
83012009-02-16 Eric Botcazou <ebotcazou@adacore.com>
8302
8303 * gcc-interface/deftarg.c: Remove.
8304
794511d2 83052009-02-10 Olivier Hainque <hainque@adacore.com>
e98c0739 8306 Eric Botcazou <ebotcazou@adacore.com>
794511d2
EB
8307
8308 * gcc-interface/decl.c (enum alias_set_op): New enumeration.
8309 (copy_alias_set): Rename into...
8310 (relate_alias_sets): ...this. Add third parameter OP. Retrieve the
8311 underlying array of unconstrained arrays for the new type as well.
8312 If the old and new alias sets don't conflict, make one a subset of
8313 the other as per the OP parameter.
8314 (gnat_to_gnu_entity): Adjust calls to copy_alias_set.
8315 <E_Record_Type>: Do not copy the alias set for derived types.
8316 For all types, make the alias set of derived types a superset of
8317 that of their parent type.
8318 (make_aligning_type): Adjust calls to copy_alias_set.
8319 (make_packable_type): Likewise.
8320 * gcc-interface/trans.c (gnat_to_gnu)<N_Validate_Unchecked_Conversion>:
8321 Check for alias set conflict instead of strict equality to issue the
8322 warning.
8323
c3734896
EB
83242009-02-09 Eric Botcazou <ebotcazou@adacore.com>
8325
8326 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_String_Literal_Subtype>:
8327 Set TYPE_NONALIASED_COMPONENT on the array type only if appropriate.
8328 (copy_alias_set): Assert that arrays have the same aliasing settings.
8329 (substitute_in_type) <ARRAY_TYPE>: Copy TYPE_NONALIASED_COMPONENT.
8330
9a58d4d2
EB
83312009-02-08 Eric Botcazou <ebotcazou@adacore.com>
8332
8333 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_String_Literal_Subtype>:
8334 Set TYPE_NONALIASED_COMPONENT on the array type.
8335
d0ec4c99
LG
83362009-01-31 Laurent GUERBY <laurent@guerby.net>
8337
8338 * gcc-interface/Makefile.in: Fix mipsel linux handling.
a760c977 8339
4dcb8fd1
JJ
83402009-01-16 Jakub Jelinek <jakub@redhat.com>
8341
8342 * gcc-interface/Makefile.in: Fix multilib handling for
8343 powerpc64-linux.
8344
3b9c1abd
EB
83452009-01-12 Eric Botcazou <ebotcazou@adacore.com>
8346
8347 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Really strip
8348 only useless conversions around renamed objects.
8349
13318d2f
EB
83502009-01-11 Eric Botcazou <ebotcazou@adacore.com>
8351
8352 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: Put
8353 the _Tag field before any discriminants in the field list.
8354 (components_to_record): Remove obsolete comment.
8355
ad41bd84
JM
8356
8357\f
8ff1dd83 8358Copyright (C) 2009 Free Software Foundation, Inc.
ad41bd84
JM
8359
8360Copying and distribution of this file, with or without modification,
8361are permitted in any medium without royalty provided the copyright
8362notice and this notice are preserved.
This page took 1.317832 seconds and 5 git commands to generate.