]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/ada/ChangeLog
calls.c (load_register_parameters): Remove spurious FIXME token.
[thirdparty/gcc.git] / gcc / ada / ChangeLog
CommitLineData
4a90aeeb
NS
12004-08-15 Nathan Sidwell <nathan@codesourcery.com>
2
3 * cuintp.c (UI_To_gnu): Use build_int_cst..
4 * trans.c (Exception_Handler_to_gnu_sjlj, gnat_to_gnu): Likewise.
5 * utils.c (init_gigi_decls): Likewise.
6 * utils2.c (build_call_raise): Likewise.
7
244e5a2c
AC
82004-08-13 Olivier Hainque <hainque@act-europe.fr>
9
10 * decl.c (gnat_to_gnu_entity) <E_Variable>: When building an allocator
11 for a global aliased object with a variable size and an unconstrained
12 nominal subtype, pretend there is no initializer if the one we have is
13 incomplete, and avoid referencing an inexistant component in there. The
14 part we have will be rebuilt anyway and the reference may confuse
15 further operations.
16
172004-08-13 Thomas Quinot <quinot@act-europe.fr>
18
19 * einfo.ads: Minor reformatting
20
21 * lib-writ.adb (Output_Main_Program_Line): Do not set parameter
22 restrictions in the ALI if we only want to warn about violations.
23
242004-08-13 Vincent Celier <celier@gnat.com>
25
26 * ali.adb (Scan_ALI): Initialize component Body_Needed_For_SAL to False
27 when creating a new Unit_Record in table Units.
28
29 * gnatls.adb (Output_Unit): In verbose mode, output the restrictions
30 that are violated, if any.
31
32 * prj-nmsc.adb (Ada_Check.Get_Path_Names_And_Record_Sources): Do not
33 add directory separator if path already ends with a directory separator.
34
352004-08-13 Ed Schonberg <schonberg@gnat.com>
36
37 * rtsfind.adb (Entity_Not_Defined): If the error ocurrs in a predefined
38 unit, this is an attempt to inline a construct that is not available in
39 the current restricted mode, so abort rather than trying to continue.
40
41 * sem_ch3.adb (Build_Underlying_Full_View): If the new type has
42 discriminants that rename those of the parent, recover names of
43 original discriminants for the constraint on the full view of the
44 parent.
45 (Complete_Private_Subtype): Do not create a subtype declaration if the
46 subtype is an itype.
47
48 * gnat_rm.texi: Added section on implementation of discriminated
49 records with default values for discriminants.
50
512004-08-13 Ed Schonberg <schonberg@gnat.com>
52
53 PR ada/15601
54 * sem_res.adb (Make_Call_Into_Operator): Handle properly the case where
55 the second operand is overloaded.
56
1a186ec5
RH
572004-08-10 Richard Henderson <rth@redhat.com>
58
59 * utils.c (gnat_install_builtins): Remove __builtin_stack_alloc,
60 add __builtin_alloca.
61
89f1a702
RH
622004-08-10 Richard Henderson <rth@redhat.com>
63
64 * config-lang.in (boot_language): Yes.
65
5d09245e
AC
662004-08-09 Thomas Quinot <quinot@act-europe.fr>
67
68 * g-socket.adb (Abort_Selector): Initialize Buf to prevent valgrind
69 from complaining on potential uninitialized reference.
70 Change calls to GNAT.Sockets.Thin.Is_Socket_In_Set to account for
71 new specification and test explicitly for non-zero return value.
72
73 * g-socthi.ads (Is_Socket_In_Set): Declare imported function as
74 returning C.int, to avoid using a derived boolean type.
75
76 * exp_ch5.adb (Make_Tag_Ctrl_Assignments): Use
77 Duplicate_Subexpr_No_Checks in preference to direct use of
78 Remove_Side_Effects and New_Copy_Tree.
79 Clear Comes_From_Source on prefix of 'Size attribute reference.
80
81 * g-socthi.adb, g-socthi-vms.adb, g-socthi-mingw.adb,
82 g-socthi-vxworks.adb: Change calls to
83 GNAT.Sockets.Thin.Is_Socket_In_Set to account for new specification
84 and test explicitly for non-zero return value.
85
86 * g-socthi-vms.ads, g-socthi-mingw.ads, g-socthi-vxworks.ads:
87 (Is_Socket_In_Set): Declare imported function as returning C.int, to
88 avoid using a derived boolean type.
89
902004-08-09 Albert Lee <lee@gnat.com>
91
92 * system-irix-n32.ads: Refine tasking priority constants for IRIX.
93
942004-08-09 Pascal Obry <obry@gnat.com>
95
96 * gnat_ugn.texi: Document new way to build DLLs on Windows using
97 GCC's -shared option.
98
99 * mlib-tgt-mingw.adb (Build_Dynamic_Library): Pass GCC's options into
100 Options_2 parameter (options put after object files).
101
1022004-08-09 Olivier Hainque <hainque@act-europe.fr>
103
104 * decl.c (gnat_to_gnu_entity) <E_Array_Subtype>: Adjust condition to
105 ignore overflows on low and high bounds of an index to also account for
106 differences in signedness between sizetype and gnu_index_subtype.
107 These are as legitimate as the ones caused by a lower TYPE_PRECISION
108 on sizetype.
109
1102004-08-09 Robert Dewar <dewar@gnat.com>
111
112 * s-solita.ads, s-solita.adb: Minor reformatting
113
114 * gnat_rm.texi: Add documentation for pragma Profile (Restricted)
115 Move pragma Restricted_Run_Time, No_Run_Time, Ravenscar to new
116 obsolescent section
117 Add note that No_Implicit_Conditionals does not suppress
118 run time constraint checks.
119
120 * vms_conv.ads: Minor reformatting
121
122 * s-secsta.adb: Use SS_Ptr instead of Mark_Id as stack pointer (cleanup
123 and necessary for following change).
124 (Mark): Return new format Mark_Id containing sec stack address
125 (Release): Use sec stack address from Mark_Id avoiding Self call
126
127 * s-secsta.ads: Define SS_Ptr to be used instead of Mark_Id as stack
128 pointer (cleanup and necessary for following change).
129 Define Mark_Id as record containing address of secondary stack, that way
130 Release does not need to find the stack again, decreasing the number of
131 calls to Self and improving efficiency.
132
133 * sem_util.ads: Add a ??? comment for Is_Local_Variable_Reference
134
135 * sem_ch5.adb (Analyze_Case_Statement): Add circuitry to track value of
136 case variable into the individual case branches when possible.
137
138 * sem_ch11.adb: Minor reformatting
139
140 * prj.ads: Correct spelling of suffixs
141
142 * prj-nmsc.adb: Minor reformatting
143 Correct spelling suffixs throughout (also in identifiers)
144
145 * freeze.adb: Minor spelling correction
146
147 * exp_ch2.adb: Cleanups to handling of Current_Value
148 (no functional effect).
149
150 * bld.adb: Correct spelling of suffixs
151
152 * einfo.adb (Enclosing_Dynamic_Scope): Defend against junk argument
153
1542004-08-09 Ed Schonberg <schonberg@gnat.com>
155
156 PR ada/15408
157
158 * sem_ch7.adb (Install_Private_Declarations): In the body of the
159 package or of a child, private entities are both immediately_visible
160 and not hidden.
161
1622004-08-09 Ed Schonberg <schonberg@gnat.com>
163
164 * sem_eval.adb (Eval_Integer_Literal): If the context is Any_Integer,
165 there are no range checks on the value of the literal.
166
167 * exp_ch7.adb (Insert_Actions_In_Scope_Around): If the node being
168 wrapped is the triggering alternative of an asynchronous select, action
169 statements mustbe inserted before the select itself.
170
171 * sem_attr.adb (Analyze_Attribute, case 'Size): Handle properly the
172 case where the prefix is a protected function call.
173 (Resolve_Attribute, case 'Access): The attribute reference on a
174 subprogram is legal in a generic body if the subprogram is declared
175 elsewhere.
176
1772004-08-09 Vincent Celier <celier@gnat.com>
178
179 * makegpr.adb (Build_Library): Link with g++ if C++ is one of the
180 languages, otherwise building the library may fail with unresolved
181 symbols.
182 (Compile_Sources): Do not build libraries if -c switch is used
183
184 * gnatlink.adb (Process_Args): New switches -M and -Mmap
185 (Write_Usage): If map file creation is supported, output new switches
186 -M and -Mmap.
187 (Gnatlink): When -M is specified, add the necessary switch(es) to the
188 gcc call, when supported.
189
190 * Makefile.in: Added indepsw.o to the object list for gnatlink
191 Specified the AIX, GNU/Linux and Windows versions of indepsw.adb
192
193 * indepsw-aix.adb, indepsw-linux.adb, indepsw-mingw.adb,
194 indepsw.adb, indepsw.ads: New files.
195
1962004-08-09 Bernard Banner <banner@gnat.com>
197
198 * system-vxworks-x86.ads, s-vxwork-x86.ads: New files.
199
200 * Makefile.in: add section for vxworks x86
201
2022004-08-09 Hristian Kirtchev <kirtchev@gnat.com>
203
204 * exp_ch3.adb (Build_Init_Statements): Add extra condition to deal with
205 per-object constrained components where the discriminant is of an
206 Access type.
207 (Build_Record_Init_Proc): Add condition to prevent the inheritance of
208 the parent initialization procedure for derived Unchecked_Unions.
209 Instead, derived Unchecked_Unions build their own initialization
210 procedure.
211 (Build_Variant_Record_Equality): Implement Unchecked_Union equality.
212 Check the body of the subprogram for details.
213 (Freeze_Record_Type): Prevent the inheritance of discriminant checking
214 functions for derived Unchecked_Union types by introducing a condition.
215 Allow the creation of TSS equality functions for Unchecked_Unions.
216 (Make_Eq_Case): Rename formal parameter Node to E in function signature.
217 Add formal parameter Discr to function signature. Discr is used to
218 control the generated case statement for Unchecked_Union types.
219 (Make_Eq_If): Rename formal parameter Node to E in function signature.
220
221 * exp_ch4.adb (Build_Equality_Call): Implement equality calls for
222 Unchecked_Unions.
223 Check the body of the subprogram for details.
224 (Expand_Composite_Equality): Augment composite type equality to include
225 correct handling of Unchecked_Union components.
226 (Expand_N_In): Add condition to detect illegal membership tests when the
227 subtype mark is a constrained Unchecked_Union and the expression lacks
228 inferable discriminants, and build a Raise_Program_Error node.
229 (Expand_N_Op_Eq): Add function Has_Unconstrained_UU_Component. Used
230 to detect types that contain components of unconstrained Unchecked_Union
231 subtype. Add condition to detect equality between types that have an
232 unconstrained Unchecked_Union component, and build a Raise_Program_Error
233 node. Add condition to detect equality between Unchecked_Union types
234 that lack inferable discriminants, and build a Raise_Program_Error node.
235 Otherwise build a TSS equality function call.
236 (Expand_N_Type_Conversion): Add condition to detect illegal conversions
237 from a derived Unchecked_Union to an unconstrained non-Unchecked_Union
238 with the operand lacking inferable discriminants, and build a Raise_
239 Program_Error node.
240 (Expand_Record_Equality): Remove guard that prevents Unchecked_Union
241 composite equality.
242 (Has_Inferable_Discriminants): Implement new predicate for objects and
243 expressions of Unchecked_Union type. Check the body of subprogram for
244 details.
245 (Has_Unconstrained_UU_Components): Add function
246 Component_Is_Unconstrained_UU. It is used to detect whether a single
247 component is of an unconstrained Unchecked_Union subtype. Add function
248 Variant_Is_Unconstrained_UU. It is used to detect whether a single
249 component inside a variant is of an unconstrained Unchecked_Union type.
250
251 * exp_ch5.adb (Expand_Assign_Record): Add condition to copy the
252 inferred discriminant values. Add condition to generate a case
253 statement with an inferred discriminant as the switch.
254 (Make_Component_List_Assign): Introduce a Boolean flag that determines
255 the behaviour of the subprogram in the presence of an Unchecked_Union.
256 Add condition to trigger the usage of the inferred discriminant value
257 as the generated case statement switch.
258 (Make_Field_Assign): Introduce a Boolean flag that determines the
259 behaviour of the subprogram in the presence of an Unchecked_Union. Add
260 condition to trigger the usage of the inferred discriminant value as
261 the right-hand side of the generated assignment.
262
263 * exp_ch6.adb (Expand_Call): Add condition to skip extra actual
264 parameter generation when dealing with Unchecked_Unions.
265
266 * checks.adb (Apply_Discriminant_Check): Do not apply discriminant
267 checks for Unchecked_Unions.
268
269 * einfo.ads: Update comment on usage of flag Has_Per_Object_Constraint
270
271 * exp_attr.adb (Expand_N_Attribute_Reference): Produce
272 Raise_Program_Error nodes for the execution of Read and Write
273 attributes of Unchecked_Union types and the execution of Input and
274 Output attributes of Unchecked_Union types that lack default
275 discriminant values.
276
277 * sem_prag.adb (Analyze_Pragma): Remodel the analysis of pragma
278 Unchecked_Union. Add procedure Check_Component. It is used to inspect
279 per-object constrained components of Unchecked_Unions for being
280 Unchecked_Unions themselves. Add procedure Check_Variant. It is used to
281 check individual components withing a variant.
282
283 * sem_res.adb (Resolve_Comparison_Op): Remove guard that prevents
284 comparison of Unchecked_Unions.
285 (Resolve_Equality_OP): Remove guard that prevents equality between
286 Unchecked_Unions.
287
288 * sem_util.adb (Build_Component_Subtype): Add guard to prevent creation
289 of component subtypes for Unchecked_Union components.
290 (Get_Actual_Subtype): Add condition that returs the Unchecked_Union type
291 since it is the actual subtype.
292
293 * sem_ch12.adb (Instantiate_Type): Add condition to detect the correct
294 pass of Unchecked_Union subtypes as generic actuals to formal types
295 that lack known_discriminant_parts or that are derived Unchecked_Union
296 types, and do nothing. In any other case, produce an error message.
297
298 * sem_ch3.adb (Analyze_Component_Declaration): Add function
299 Contains_POC. It determines whether a constraint uses the discriminant
300 of an enclosing record type.
301 Add condition to detect per-object constrained component and set the
302 appropriate flag.
303 (Derived_Type_Declaration): Remove guard that prevents derivation from
304 Unchecked_Union types.
305 (Process_Subtype): Remove quard that prevents the creation of Unchecked_
306 Union subtypes.
307
308 * sem_ch4.adb (Analyze_Selected_Component): Correct the detection of
309 references to Unchecked_Union discriminants.
310
311 * sem_ch6.adb (Create_Extra_Formals): Add condition to skip extra
312 formal generation when dealing with Unchecked_Unions.
313 (Set_Actual_Subtypes): Add condition to prevent generation of actual
314 subtypes for Unchecked_Unions.
315
316 * sem_ch7.adb (Analyze_Package_Specification): Add procedure
317 Inspect_Unchecked_Union_Completion. It is used to detect incorrect
318 completions of discriminated partial views by Unchecked_Unions and
319 produce an error message.
320
3212004-08-09 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
322
323 * trans.c (struct stmt_group): New field, GLOBAL.
324 (global_stmt_group, gnu_elab_proc_decl, build_unit_elab): Deleted.
325 (struct elab_info): New struct.
326 (elab_info_list, gnu_elab_proc_stack): New variables.
327 (Compilation_Unit_to_gnu): New procedure.
328 (gigi): Call it and also handle elaboration procs we've saved.
329 (gnat_init_stmt_group): Don't set global_stmt_group; instead initialize
330 global field from parent.
331 (gnat_to_gnu): Get decl from gnu_elab_proc_stack.
332 (gnat_to_gnu, case N_Compilation_Unit): Call Compilation_Unit_to_gnu.
333 (start_stmt_group): Initialize global field from parent.
334 (add_decl_expr): Set to global for current statement group.
335 (gnat_gimplify_expr, case NULL_EXPR): Add operand 0 to pre list, not
336 post.
337
338 * utils.c (global_bindings_p): True when no current_function_decl; no
339 longer check current_binding_level.
340
3412004-08-09 Ben Brosgol <brosgol@gnat.com>
342
343 * xgnatugn.adb: Added logic to deal with @ifset/@ifclear for edition
344 choice.
345
346 * gnat_rm.texi, gnat_ugn.texi: Added edition conditionalization logic.
347
160ff372
AS
3482004-08-06 Andreas Schwab <schwab@suse.de>
349
350 * utils.c (gnat_define_builtin): Remove second parameter of
351 make_decl_rtl.
352 (begin_subprog_body): Likewise.
353
615cbd95
AC
3542004-07-26 Arnaud Charlet <charlet@act-europe.fr>
355
356 * sem_util.adb (Requires_Transient_Scope): Temporarily disable
357 optimization, not supported by the tree-ssa back-end.
358
3592004-07-26 Olivier Hainque <hainque@act-europe.fr>
360
361 * s-mastop-irix.adb: Update comments.
362
363 * a-except.adb (Exception_Information): Raise Constraint_Error if
364 exception Id is Null_Id.
365 This is required behavior, which is more reliably and clearly checked
366 at the top level interface level.
367
3682004-07-26 Javier Miranda <miranda@gnat.com>
369
370 * exp_aggr.adb (Build_Array_Aggr_Code): Do not build the initialization
371 call if a component has no default_expression and the box is used.
372
373 * sem_aggr.adb (Resolve_Array_Aggregate): If a component has no
374 default_expression and you use box, it behaves as if you had declared a
375 stand-alone object.
376 (Resolve_Record_Aggregate): If a component has no default_expression and
377 you use box, it behaves as if you had declared a stand-alone object.
378
379 * sem_ch10.adb (Install_Siblings): Do not make visible the private
380 entities of private-with siblings.
381
3822004-07-26 Ed Schonberg <schonberg@gnat.com>
383
384 * sem_ch3.adb (Build_Underlying_Full_View): If this is the full view
385 for a component of an itype, set the parent pointer for analysis,
386 there is no list in which to insert it.
387
388 * sem_res.adb (Resolve): Call Rewrite_Renamed_Operator only for
389 bona-fide renamings, not for inherited operations.
390
391 * exp_ch4.adb (Expand_Allocator_Expression): If the allocator is an
392 actual for a formal that is an access parameter, create local
393 finalization list even if the expression is not an aggregate.
394
3952004-07-26 Ed Schonberg <schonberg@gnat.com>
396
397 PR ada/16213
398 * sem_ch8.adb (Attribute_Renaming, Check_Library_Level_Renaming):
399 Diagnose properly illegal subprogram renamings that are library units.
400
4012004-07-26 Ed Schonberg <schonberg@gnat.com>
402
403 PR ada/15588
404 * sem_util.adb (Is_OK_Variable_For_Out_Formal): If actual is a type
405 conversion rewritten as an unchecked conversion, check that original
406 expression is a variable.
407
408 * exp_ch4.adb (Expand_N_Type_Conversion): If rewriting as an
409 unchecked_conversion, create new node rather than rewriting in place,
410 to preserve original construct.
411
4122004-07-26 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
413
414 * gigi.h (gnat_expand_body): Deleted.
415
416 * Make-lang.in: (trans.o): Depends on function.h.
417
418 * misc.c: (gnat_expand_body): Moved to here.
419
420 * trans.c (gnat_expand_body_1): Deleted.
421 (gnat_expand_body): Moved from here.
422 (gnat_to_gnu): N_Implicit_Label_Declaration forces being in elab proc.
423 (add_stmt): Check for marked visited with global_bindings_p.
424 (gnat_gimplify_expr, case COMPONENT_REF): New case.
425 (gnat_gimplify_expr, case NULL_EXPR): Set TREE_NO_WARNING for temp.
426
427 * utils2.c (build_binary_op, case MODIFY_EXPR): Put LHS in a
428 VIEW_CONVERT_EXPR if not operation type.
429
430 * utils.c (update_pointer_to): Set DECL_ORIGINAL_FIELD for
431 fat pointer.
432
433 * decl.c, cuintp.c, gigi.h, misc.c, trans.c, utils.c, utils2.c: Minor
434 changes: reformatting of negation operators, removing unneeded
435 inequality comparison with zero, converting equality comparisons with
436 zero to negations, changing int/0/1 to bool/false/true, replace calls
437 to gigi_abort with abort, and various other similar changes.
438
4392004-07-26 Vincent Celier <celier@gnat.com>
440
441 * gnatcmd.adb (GNATCmd): Add processing for new built-in command
442 "setup".
443
444 * make.adb (Gnatmake): Fail when a library is not present and there is
445 no object directory.
446
447 * mlib-prj.adb (Check_Library): No need to check if the library needs
448 to be rebuilt if there is no object directory, hence no object files
449 to build the library.
450
451 * opt.ads (Setup_Projects): New Boolean flag.
452
453 * prj-nmsc.adb (Locate_Directory): New parameter Project, Kind and
454 Location.
455 Create directory when Kind /= "" and in "gnat setup". Report error if
456 directory cannot be created.
457 (Ada_Check): Create library interface copy dir if it does not exist
458 and we are in "gnat setup".
459 (Find_Sources): No error if in "gnat setup" and no Ada sources were
460 found.
461 (Language_Independent_Check): Create object directory, exec directory
462 and/or library directory if they do not exist and we are in
463 "gnat setup".
464
465 * vms_conv.ads: (Command_Type): New command Setup.
466
467 * vms_conv.adb (Initialize): Add Setup component of Cammand_List.
468
469 * vms_data.ads: Add qualifiers/switches for new built-in command
470 "setup".
471
b785f485
RH
4722004-07-25 Richard Henderson <rth@redhat.com>
473
474 * utils.c (create_subprog_decl): Set DECL_ARTIFICIAL and
475 DECL_IGNORED_P on RESULT_DECL.
476
35ae2ed8
AC
4772004-07-20 Olivier Hainque <hainque@act-europe.fr>
478
479 * a-elchha.adb (Last_Chance_Handler): Remove the bogus buffer dynamic
480 allocation and potentially overflowing update with
481 Tailored_Exception_Information. Use the sec-stack free procedural
482 interface to output Exception_Information instead.
483
484 * a-except.adb (To_Stderr): New subprogram for character, and string
485 version moved from a-exextr to be visible from other separate units.
486 (Tailored_Exception_Information): Remove the procedural version,
487 previously used by the default Last_Chance_Handler and not any more.
488 Adjust various comments.
489
490 * a-exexda.adb: Generalize the exception information procedural
491 interface, to minimize the use of secondary stack and the need for
492 local buffers when the info is to be output to stderr:
493 (Address_Image): Removed.
494 (Append_Info_Character): New subprogram, checking for overflows and
495 outputing to stderr if buffer to fill is of length 0.
496 (Append_Info_String): Output to stderr if buffer to fill is of length 0.
497 (Append_Info_Address, Append_Info_Exception_Name,
498 Append_Info_Exception_Message, Append_Info_Basic_Exception_Information,
499 Append_Info_Basic_Exception_Traceback,
500 Append_Info_Exception_Information): New subprograms.
501 (Append_Info_Nat, Append_Info_NL): Use Append_Info_Character.
502 (Basic_Exception_Info_Maxlength, Basic_Exception_Tback_Maxlength,
503 Exception_Info_Maxlength, Exception_Name_Length,
504 Exception_Message_Length): New subprograms.
505 (Exception_Information): Use Append_Info_Exception_Information.
506 (Tailored_Exception_Information): Use
507 Append_Info_Basic_Exception_Information.
508 Export services for the default Last_Chance_Handler.
509
510 * a-exextr.adb (To_Stderr): Remove. Now in a-except to be usable by
511 other separate units.
512
5132004-07-20 Vincent Celier <celier@gnat.com>
514
515 * clean.adb, mlib-utl.adb, osint.adb, makegpr.adb: Minor reformatting.
516
5172004-07-20 Ed Schonberg <schonberg@gnat.com>
518
519 * freeze.adb (Freeze_Entity): If entity is a discriminated record type,
520 emit itype references for the designated types of component types that
521 are declared outside of the full record declaration, and that may
522 denote a partial view of that record type.
523
5242004-07-20 Ed Schonberg <schonberg@gnat.com>
525
526 PR ada/15607
527 * sem_ch3.adb (Build_Discriminated_Subtype): Do not attach a subtype
528 which is the designated type in an access component declaration, to the
529 list of incomplete dependents of the parent type, to avoid elaboration
530 issues with out-of-scope subtypes.
531 (Complete_Private_Subtype): Recompute Has_Unknown_Discriminants from the
532 full view of the parent.
533
5342004-07-20 Ed Schonberg <schonberg@gnat.com>
535
536 PR ada/15610
537 * sem_ch8.adb (Find_Expanded_Name): If name is overloaded, reject
538 entities that are hidden, such as references to generic actuals
539 outside an instance.
540
5412004-07-20 Javier Miranda <miranda@gnat.com>
542
543 * sem_ch4.adb (Try_Object_Operation): New subprogram that gives
544 support to the new notation.
545 (Analyze_Selected_Component): Add call to Try_Object_Operation.
546
5472004-07-20 Jose Ruiz <ruiz@act-europe.fr>
548
549 * s-taprob.adb: Adding the elaboration code required for initializing
550 the tasking soft links that are common to the full and the restricted
551 run times.
552
553 * s-tarest.adb (Init_RTS): Tasking soft links that are shared with the
554 restricted run time has been moved to the package
555 System.Soft_Links.Tasking.
556
557 * s-tasini.adb (Init_RTS): Tasking soft links that are shared with the
558 restricted run time has been moved to the package
559 System.Soft_Links.Tasking.
560
561 * Makefile.rtl: Add entry for s-solita.o in run-time library list.
562
563 * s-solita.ads, s-solita.adb: New files.
564
5652004-07-20 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
566
567 * trans.c (Identifier_to_gnu, Pragma_to_gnu, Attribute_to_gnu,
568 Case_Statement_to_gnu): Split off from gnat_to_gnu.
569 (Loop_Statement_to_gnu, Subprogram_Body_to_gnu, call_to_gnu,
570 Handled_Sequence_Of_Statements_to_gnu, Exception_Handler_to_gnu_sjlj,
571 Exception_Handler_to_gnu_zcx): Likewise.
572
6e34d3a3
JM
5732004-07-17 Joseph S. Myers <jsm@polyomino.org.uk>
574
575 * gigi.h (builtin_function): Declare.
576
523456db
AC
5772004-07-15 Robert Dewar <dewar@gnat.com>
578
579 * makegpr.adb, s-secsta.ads, sem_ch3.adb, sem_case.adb: Minor
580 reformatting
581
582 * gnat_ugn.texi: Add instantiation of direct_io or sequential_io with
583 access values as an example of a warning.
584
585 * gnat_rm.texi: Document new attribute Has_Access_Values
586
587 * gnat-style.texi: Document that box comments belong on nested
588 subprograms
589
590 * sem_util.ads (Has_Access_Values): Improved documentation
591
592 * s-finimp.ads, s-finimp.adb: Fix spelling error in comment
593
594 * sem_prag.adb (Check_Duplicated_Export_Name): New procedure
595 (Process_Interface_Name): Call to this new procedure
596 (Set_Extended_Import_Export_External_Name): Call to this new procedure
597
598 * s-mastop-x86.adb, 9drpc.adb: Fix spelling error in comment
599
600 * a-direio.ads, a-sequio.ads: Warn if Element_Type has access values
601
602 * einfo.ads: Minor comment typo fixed
603
6042004-07-15 Jose Ruiz <ruiz@act-europe.fr>
605
606 * snames.adb: Add _atcb.
607
608 * snames.ads: Add Name_uATCB.
609
610 * s-tarest.adb (Create_Restricted_Task): ATCBs are always preallocated
611 (in the expanded code) when using the restricted run time.
612
613 * s-tarest.ads (Create_Restricted_Task): Created_Task transformed into
614 a in parameter in order to allow ATCBs to be preallocated (in the
615 expanded code).
616
617 * s-taskin.adb (Initialize_ATCB): T converted into a in parameter in
618 order to allow ATCBs to be preallocated. In case of error, the ATCB is
619 deallocated in System.Tasking.Stages.
620
621 * s-taskin.ads (Initialize_ATCB): T converted into a in parameter in
622 order to allow ATCBs to be preallocated.
623
624 * s-tassta.adb (Create_Task): In case of error the ATCB is deallocated
625 here. It was previously done in Initialize_ATCB.
626
627 * rtsfind.ads: Make the Ada_Task_Control_Block visible.
628
629 * exp_ch9.adb: Preallocate the Ada_Task_Control_Block when using the
630 Restricted run time.
631
632 * exp_ch3.adb: When using the Restricted run time, pass the
633 preallocated Ada_Task_Control_Block when creating a task.
634
6352004-07-15 Ed Schonberg <schonberg@gnat.com>
636
637 * sem_util.adb (Normalize_Actuals): If there are no actuals on a
638 function call that is itself an actual in an enclosing call, diagnose
639 problem here rather than assuming that resolution will catch it.
640
641 * sem_ch7.adb (Analyze_Package_Specification): If the specification is
642 the local copy of a generic unit for a formal package, and the generic
643 is a child unit, install private part of ancestors before compiling
644 private part of spec.
645
646 * sem_cat.adb (Validate_Categorization_Dependency): Simplify code to
647 use scope entities rather than tree structures, to handle properly
648 parent units that are instances rewritten as bodies for inlining
649 purposes.
650
651 * sem_ch10.adb (Get_Parent_Entity, Implicit_With_On_Parent,
652 Remove_Parents): Handle properly a parent unit that is an
653 instantiation, when the unit has been rewritten as a body for inlining
654 purposes.
655
656 * par.adb (Goto_List): Global variable to collect goto statements in a
657 given unit, for use in detecting natural loops.
658
659 * par-ch5.adb (P_Goto_Statement): Add goto to global Goto_List, for
660 use in detecting natural loops.
661
662 * par-labl.adb (Find_Natural_Loops): Recognize loops create by
663 backwards goto's, and rewrite as a infinite loop, to improve locality
664 of temporaries.
665
666 * exp_util.adb (Force_Evaluation): Recognize a left-hand side
667 subcomponent that includes an indexed reference, to prevent the
668 generation of copies that would miscompile the desired assignment
669 statement.
670 (Build_Task_Image_Decls): Add a numeric suffix to
671 generated name for string variable, to avoid spurious conflicts with
672 the name of the type of a single protected object.
673
674 * exp_ch4.adb (Expand_Array_Equality): If indices are distinct, use a
675 loop with an explicit exit statement, to avoid generating an
676 out-of-range value with 'Succ leading to spurious constraint_errors
677 when compiling with -gnatVo.
678
6792004-07-15 Thomas Quinot <quinot@act-europe.fr>
680
681 * sem_ch4.adb (Analyze_Slice): Always call Analyze on the prefix: it
682 might not be analyzed yet, even if its Etype is already set (case of an
683 unchecked conversion built using Unchecked_Convert_To, for example).
684 If the prefix has already been analyzed, this will be a nop anyway.
685
686 * exp_ch5.adb (Make_Tag_Ctrl_Assignment): For an assignment of a
687 controller type, or an assignment of a record type with controlled
688 components, copy only user data, and leave the finalization chain
689 pointers untouched.
690
6912004-07-15 Vincent Celier <celier@gnat.com>
692
693 * make.adb (Collect_Arguments): Improve error message when attempting
694 to compile a source not part of any project, when -x is not used.
695
696 * prj.ads: (Defined_Variable_Kind): New subtype
697
698 * prj-attr.adb (Register_New_Package): Two new procedures to register
699 a package with or without its attributes.
700 (Register_New_Attribute): Mew procedure to register a new attribute in a
701 package.
702 New attribute oriented subprograms: Attribute_Node_Id_Of,
703 Attribute_Kind_Of, Set_Attribute_Kind_Of, Attribute_Name_Of,
704 Variable_Kind_Of, Set_Variable_Kind_Of, Optional_Index_Of,
705 Next_Attribute.
706 New package oriented subprograms: Package_Node_Id_Of,
707 Add_Unknown_Package, First_Attribute_Of, Add_Attribute.
708
709 * prj-attr.ads (Attribute_Node_Id): Now a private, self initialized
710 type.
711 (Package_Node_Id): Now a private, self initialized type
712 (Register_New_Package): New procedure to register a package with its
713 attributes.
714 New attribute oriented subprograms: Attribute_Node_Id_Of,
715 Attribute_Kind_Of, Set_Attribute_Kind_Of, Attribute_Name_Of,
716 Variable_Kind_Of, Set_Variable_Kind_Of, Optional_Index_Of,
717 Next_Attribute.
718 New package oriented subprograms: Package_Node_Id_Of,
719 Add_Unknown_Package, First_Attribute_Of, Add_Attribute.
720
721 * prj-dect.adb (Parse_Attribute_Declaration,
722 Parse_Package_Declaration): Adapt to new spec of Prj.Attr.
723
724 * prj-makr.adb (Make): Parse existing project file before creating
725 other files. Fail if there was an error during parsing.
726
727 * prj-proc.adb (Add_Attributes, Process_Declarative_Items): Adapt to
728 new spec of Prj.Attr.
729
730 * prj-strt.adb (Attribute_Reference, Parse_Variable_Reference): Adapt
731 to new spec of Prj.Attr.
732
7332004-07-15 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
734
735 * utils2.c: Fix typo in comment.
736
7372004-07-14 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
54805e13
RK
738
739 * trans.c (add_decl_expr): Clear TREE_READONLY if clear DECL_INITIAL.
740 * utils.c (unchecked_convert): Don't do two VIEW_CONVERT_EXPRs.
741
a1c7af89
AS
7422004-07-14 Andreas Schwab <schwab@suse.de>
743
744 * trans.c (gnat_init_stmt_group): Remove duplicate definition.
745
a5cb3b30
AC
7462004-07-13 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
747
748 * decl.c: (gnat_to_gnu_entity, object case): Convert initializer to
749 object type.
750 (gnat_to_gnu_entity, case E_Record_Subtype): Properly set
751 TYPE_STUB_DECL.
752
753 * misc.c (gnat_types_compatible_p): New function.
754 (LANG_HOOKS_TYPES_COMPATIBLE_P): New hook, to use it.
755 (LANG_HOOKS_TYPE_MAX_SIZE, gnat_type_max_size): New.
756
757 * trans.c (gigi): Move processing of main N_Compilation_Unit here.
758 (gnat_to_gnu, case N_Compilation_Unit): Just handle nested case here.
759 (add_stmt): Force walking of sizes and DECL_INITIAL for DECL_EXPR.
760 (mark_visited): Don't mark dummy type.
761 (tree_transform <N_Procedure_Call_Statement>): Unless this is an In
762 parameter, we must remove any LJM building from GNU_NAME.
763 (gnat_to_gnu, case N_String_Literal): Fill in indices in CONSTRUCTOR.
764 (pos_to_constructor): Use int_const_binop.
765 (gnat_to_gnu, case N_Identifier): Don't reference DECL_INITIAL of
766 PARM_DECL.
767
768 * utils.c (gnat_init_decl_processing): Don't make two "void" decls.
769 (gnat_pushlevel): Set TREE_USE on BLOCK node.
770 (gnat_install_builtins): Add __builtin_memset.
771
7722004-07-13 Olivier Hainque <hainque@act-europe.fr>
773
774 * decl.c (gnat_to_gnu_entity <E_Variable>): If we are making a pointer
775 for a renaming, stabilize the initialization expression if we are at a
776 local level. At the local level, uses of the renaming may be performed
777 by a direct dereference of the initializing expression, and we don't
778 want possible variables there to be evaluated for every use.
779
780 * trans.c (gnat_stabilize_reference, gnat_stabilize_reference_1):
781 Propagate TREE_SIDE_EFFECTS and TREE_THIS_VOLATILE to avoid loosing
782 them on the way. Account for the fact that we may introduce side
783 effects in the process.
784
0976078c
RH
7852004-07-13 Richard Henderson <rth@redhat.com>
786
787 * misc.c (default_pass_by_ref): Use pass_by_reference.
788
9dcf6e73
JM
7892004-07-11 Joseph S. Myers <jsm@polyomino.org.uk>
790
791 * misc.c (LANG_HOOKS_CLEAR_BINDING_STACK, LANG_HOOKS_PUSHLEVEL,
792 LANG_HOOKS_POPLEVEL, LANG_HOOKS_SET_BLOCK): Remove.
793
ac45df5d
RH
7942004-07-08 Richard Henderson <rth@redhat.com>
795
796 * trans.c (gnat_to_gnu <N_Handled_Sequence_Of_Statements>): Update
797 commentary.
798
15ce9ca2
AC
7992004-07-06 Vincent Celier <celier@gnat.com>
800
801 * vms_conv.ads: Minor reformatting.
802 Alphabetical order for enumerated values of type Command_Type, to have
803 the command in alphabetical order for the usage.
804
805 * vms_conv.adb (Process_Argument): Set Keep_Temporary_Files to True for
806 the special qualifier /KEEP_TEMPORARY_FILES (minimum 6 characters).
807
808 * gnat_ugn.texi: Document new switch -dn for the GNAT driver.
809
810 * makegpr.adb (Global_Archive_Exists): New global Boolean variable
811 (Add_Archive_Path): Only add the global archive if there is one.
812 (Build_Global_Archive): Set Global_Archive_Exists depending if there is
813 or not any object file to put in the global archive, and don't build
814 a global archive if there is none.
815 (X_Switches): New table
816 (Compile_Link_With_Gnatmake): Pass to gnatmake the -X switches stored
817 in the X_Switches table, if any.
818 (Initialize): Make sure the X_Switches table is empty
819 (Scan_Arg): Record -X switches in table X_Switches
820
821 * opt.ads (Keep_Temporary_Files): New Boolean flag, defaulted to False.
822
823 * make.adb: Minor comment fix
824
825 * gnatname.adb (Gnatname): When not on VMS, and gnatname has been
826 invoked with directory information, add the directory in front of the
827 path.
828
829 * gnatchop.adb (Gnatchop): When not on VMS, and gnatchop has been
830 invoked with directory information, add the directory in front of the
831 path.
832
833 * gnatcmd.adb (Delete_Temp_Config_Files): Only delete temporary files
834 when Keep_Temporary_Files is False.
835 (GNATCmd): When not on VMS, and the GNAT driver has been invoked with
836 directory information, add the directory in front of the path.
837 When not on VMS, handle new switch -dn before the command to set
838 Keep_Temporary_Files to True.
839 (Non_VMS_Usage): Use lower case for the non VMS usage: this is valid
840 everywhere.
841
842 * gnatlink.adb (Gnatlink): When not on VMS, and gnatlink has been
843 invoked with directory information, add the directory in front of the
844 path.
845
8462004-07-06 Thomas Quinot <quinot@act-europe.fr>
847
848 * snames.ads, snames.adb (Name_Stub): New name for the distributed
849 systems annex.
850
851 * rtsfind.ads: New RTE TC_Object, for DSA/PolyORB.
852 New RTEs RAS_Proxy_Type and RAS_Proxy_Type_Access, for DSA.
853
854 * g-socket.adb (To_Timeval): Fix incorrect conversion of
855 Selector_Duration to Timeval for the case of 0.0.
856
857 * exp_util.ads (Evolve_Or_Else): Fix overenthusiastic copy/paste of
858 documentation from Evolve_And_Then.
859
8602004-07-06 Jose Ruiz <ruiz@act-europe.fr>
861
862 * s-taprop-tru64.adb, s-taprop-os2.adb,
863 s-taprop-mingw.adb, s-taprop-posix.adb: Update comment.
864
8652004-07-06 Robert Dewar <dewar@gnat.com>
866
867 * s-osinte-hpux.ads, s-osinte-freebsd.ads,
868 s-osinte-lynxos.ads, s-taprop-lynxos.adb, s-osinte-tru64.ads,
869 s-osinte-aix.ads, s-osinte-irix.ads, s-taprop-irix.adb,
870 s-interr-sigaction.adb, s-taprop-irix-athread.adb,
871 s-osinte-hpux-dce.adb, s-taprop-hpux-dce.adb,
872 s-taprop-linux.adb, s-taprop-dummy.adb, s-taprop-solaris.adb,
873 s-interr-vms.adb, s-osinte-vms.ads, s-taprop-vms.adb,
874 s-osinte-vxworks.ads, s-osprim-vxworks.adb, a-numaux-x86.adb,
875 a-except.adb, a-exexpr.adb, a-intsig.adb, a-tags.adb,
876 a-tags.ads, bindgen.ads, checks.adb, checks.adb,
877 csets.ads, einfo.ads, einfo.ads, elists.adb, exp_ch4.adb,
878 exp_ch7.adb, exp_dist.adb, exp_util.adb, freeze.adb,
879 g-dynhta.adb, gnatmem.adb, g-regexp.adb, inline.adb,
880 i-os2thr.ads, osint.adb, prj.adb, scng.adb, sem_cat.adb,
881 sem_ch10.adb, sem_ch12.adb, sem_ch4.adb, sem_ch7.adb,
882 sem_ch8.adb, sem_disp.adb, sem_prag.adb, sem_res.adb,
883 sem_type.adb, sem_type.ads, sem_warn.adb, s-ficobl.ads,
884 s-finimp.adb, s-htable.adb, sinfo.ads, sinput-l.ads,
885 s-interr.adb, s-interr.ads, sprint.adb, s-tarest.adb,
886 s-tasini.ads, s-taskin.ads, s-taskin.ads, uname.adb,
887 vms_data.ads: Minor reformatting,
888 Fix bad box comment format.
889
890 * gnat_rm.texi: Fix minor grammatical error
891
892 * sem_attr.adb, exp_attr.adb: New attribute Has_Access_Values
893
894 * sem_util.ads, sem_util.adb (Requires_Transient_Scope): Allow many
895 more cases of discriminated records to be recognized as not needing a
896 secondary stack.
897 (Has_Access_Values): New function.
898
899 * snames.h, snames.adb, snames.ads: New attribute Has_Access_Values
900
901 * cstand.adb, layout.ads, layout.adb, sem_ch13.ads: Change name
902 Set_Prim_Alignment to Set_Elem_Alignment (more accurate correspondence
903 with LRM terminology).
904 Change terminology in comments primitive type => elementary type.
905
9062004-07-06 Ed Schonberg <schonberg@gnat.com>
907
908 PR ada/15602
909 * sem_ch7.adb (Unit_Requires_Body): For a generic package, the formal
910 parameters do not impose any requirements on the presence of a body.
911
9122004-07-06 Ed Schonberg <schonberg@gnat.com>
913
914 PR ada/15593
915 * sem_ch12.adb (Analyze_Package_Instantiation): If the generic is not a
916 compilation unit and is in an open scope at the point of instantiation,
917 assume that a body may be present later.
918
9192004-07-06 Ed Schonberg <schonberg@gnat.com>
920
921 * sem_ch13.adb (Analyze_Attribute_Definition_Clause, case 'Size):
922 Improve error message when specified size is not supported.
923
924 * sem_ch6.adb (Maybe_Primitive_Operation): A library-level subprogram
925 is never a primitive operation.
926
cb42deba
AS
9272004-07-05 Andreas Schwab <schwab@suse.de>
928
929 * ada-tree.h (TYPE_LEFT_JUSTIFIED_MODULAR_P): Use
930 RECORD_OR_UNION_CHECK.
931 (TYPE_CONTAINS_TEMPLATE_P): Likewise.
932
98877933
KC
9332004-07-04 Kelley Cook <kcook@gcc.gnu.org>
934
935 * Make-lang.in (doc/gnat_ugn_unw.texi): Eliminate explicit
936 dependency on xgnatugn, instead build it via a submake.
937 (ADA_INFOFILES): Add doc/gnat_ugn_unw.texi.
938
8fff4fc1
RH
9392004-07-04 Richard Henderson <rth@redhat.com>
940
941 * utils2.c (gnat_mark_addressable): Don't put_var_into_stack.
942
4dfa0342
RH
9432004-07-01 Richard Henderson <rth@redhat.com>
944
945 * trans.c (gnat_stabilize_reference): Don't handle RTL_EXPR.
946 * utils.c (max_size): Likewise.
947
909f21b3
RK
9482004-06-28 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
949
950 * decl.c: Remove calls to add_decl_expr, pushdecl, rest_of_compilation,
951 and rest_of_type_compilation; add arg to create_*_decl.
952 (annotate_decl_with_node): Deleted.
953 (gnat_to_gnu_entity, case E_Array_Type): Set location of fields.
954 * gigi.h (get_decls, block_has_vars, pushdecl): Deleted.
955 (get_current_block_context, gnat_pushdecl): New declarations.
956 (gnat_init_stmt_group): Likewise.
957 (create_var_decl, create_type_decl, create_subprog_decl): Add new arg.
958 * misc.c (LANG_HOOKS_CLEAR_BINDING_STACK): Deleted.
959 (LANG_HOOKS_GETDECLS, LANG_HOOKS_PUSHDECL): Deleted.
960 (gnat_init): Call gnat_init_stmt_group.
961 * trans.c (global_stmt_group, gnu_elab_proc_decl): New variables.
962 (gnu_pending_elaboration_list): Deleted.
963 (mark_visited, mark_unvisited, gnat_init_stmt_group): New functions.
964 (gigi): Rearrange initialization calls and move some to last above.
965 (gnat_to_gnu): If statement and not in procedure, go into elab proc.
966 Delete calls to add_decl_expr; add arg to create_*_decl.
967 (gnat_to_gnu, case N_Loop): Recalculate side effects on COND_EXPR.
968 (gnat_to_gnu, case N_Subprogram_Body): Move some code to
969 begin_subprog_body and call it.
970 Don't push and pop ggc context.
971 (gnat_to_gnu, case N_Compilation_Unit): Rework to support elab proc.
972 (add_stmt): Remove handling of DECL_EXPR from here.
973 If not in function, mark visited.
974 (add_decl_expr): Put global at top level.
975 Check for cases of DECL_INITIAL we have to handle here.
976 (process_type): Add extra arg to create_type_decl.
977 (build_unit_elab): Rework to just gimplify.
978 * utils.c (pending_elaborations, elist_stack, getdecls): Deleted.
979 (block_has_vars, mark_visited, add_pending_elaborations): Likewise.
980 (get_pending_elaborations, pending_elaborations_p): Likewise.
981 (push_pending_elaborations, pop_pending_elaborations): Likewise.
982 (get_elaboration_location, insert_elaboration_list): Likewise.
983 (gnat_binding_level): Renamed from ada_binding_level.
984 (init_gnat_to_gnu): Don't clear pending_elaborations.
985 (global_bindings_p): Treat as global if no current_binding_level.
986 (set_current_block_context): New function.
987 (gnat_pushdecl): Renamed from pushdecl; major rework.
988 All callers changed.
989 (create_type_decl, create_var_decl, create_subprog_decl): Add new arg.
990 (finish_record_type): Call call pushdecl for stub decl.
991 (function_nesting_depth): Deleted.
992 (begin_subprog_body): Delete obsolete code.
993 * utils2.c (build_call_alloc_dealloc): Add new arg to create_var_decl.
994
246d2ceb
AC
9952004-06-28 Robert Dewar <dewar@gnat.com>
996
997 * mlib-tgt-tru64.adb, mlib-tgt-aix.adb, mlib-tgt-irix.adb,
998 mlib-tgt-irix.adb, mlib-tgt-hpux.adb, mlib-tgt-linux.adb,
999 mlib-tgt-linux.adb, mlib-tgt-solaris.adb, mlib-tgt-solaris.adb,
1000 mlib-tgt-vms-alpha.adb, mlib-tgt-vms-alpha.adb, mlib-tgt-vms-ia64.adb,
1001 a-strmap.adb, a-strmap.ads, clean.adb: Minor reformatting
1002
1003 * exp_util.adb (Is_Possibly_Unaligned_Slice): Completely rewritten, to
1004 deal with problem of inefficient slices on machines with strict
1005 alignment, when the slice is a component of a composite.
1006
1007 * checks.adb (Apply_Array_Size_Check): Do not special case 64-bit
1008 machines, we need the check there as well.
1009
10102004-06-28 Ed Schonberg <schonberg@gnat.com>
1011
1012 * exp_ch5.adb (Expand_Assign_Array): Use correct condition to
1013 determine safe copying direction for overlapping slice assignments
1014 when component is controlled.
1015
1016 * sem_ch12.adb (Instantiate_Formal_Package): Implicit operations of a
1017 formal derived type in the actual for a formal package are visible in
1018 the enclosing instance.
1019
10202004-06-28 Ed Schonberg <schonberg@gnat.com>
1021
1022 PR ada/15600
1023 * sem_util.adb (Trace_Components): Diagnose properly an illegal
1024 circularity involving a private type whose completion includes a
1025 self-referential component.
1026 (Enter_Name): Use Is_Inherited_Operation to distinguish a source
1027 renaming or an instantiation from an implicit derived operation.
1028
10292004-06-28 Pascal Obry <obry@gnat.com>
1030
1031 * mlib-tgt-mingw.adb: (Library_Exists_For): Remove "lib" prefix from
1032 DLL.
1033 (Library_File_Name_For): Idem.
1034
10352004-06-28 Matthew Gingell <gingell@gnat.com>
1036
1037 * g-traceb.ads: Add explanatory note on the format of addresses
1038 expected by addr2line.
1039
10402004-06-28 Jerome Guitton <guitton@act-europe.fr>
1041
1042 * Makefile.in: Force debugging information on s-tasdeb.adb,
1043 a-except.adb and s-assert.adb needed by the debugger.
1044
10452004-06-28 Vincent Celier <celier@gnat.com>
1046
1047 * make.adb (Collect_Arguments_And_Compile): Change Flag1 to
1048 Need_To_Build_Lib.
1049 (Gnatmake): Ditto.
1050
1051 * mlib-prj.adb (Check_Library): Replace Flag1 with Need_To_Build_Lib
1052
1053 * prj.adb: Minor reformatting
1054 (Project_Empty): Change Flag1 to Need_To_Build_Lib. Remove Flag2.
1055
1056 * prj.ads: Comment updates
1057 Minor reformatting
1058 (Project_Data): Change Flag1 to Need_To_Build_Lib.
1059 Remove Flag2: not used.
1060
1061 * prj-dect.adb (Parse_Declarative_Items): Accept "null" as a
1062 declaration.
1063
1064 * gnat_ugn.texi: Put a "null;" declaration in one project file example
1065
1066 * gnat_rm.texi: Document Empty declarations "null;".
1067
1068 * makegpr.adb (Compile_Link_With_Gnatmake): Put the global archives in
1069 front of the linker options.
1070 (Link_Foreign): Put the global archives and the libraries in front of
1071 the linker options.
1072
10732004-06-28 Javier Miranda <miranda@gnat.com>
1074
1075 * rtsfind.adb: (Get_Unit_Name): Fix typo in comment
1076 (RTU_Loaded): Code cleanup
1077 (Set_RTU_Loaded): New procedure to register as *loaded* explicitly
1078 withed predefined units.
1079
1080 * rtsfind.ads (Set_RTU_Loaded): New procedure to register as *loaded*
1081 explicitly withed predefined units.
1082 Fix typo in comment
1083
1084 * sem_ch10.adb (Analyze_Compilation_Unit): Register as *loaded*
1085 explicitly withed predefined units.
1086
bce3da32
RK
10872004-06-26 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1088
1089 * ada-tree.def (DECL_STMT): Deleted.
1090 * ada-tree.h (IS_ADA_STMT): Now test against STMT_STMT.
1091 (DECL_STMT_VAR): Deleted.
1092 * decl.c: add_decl_stmt now add_decl_expr.
1093 * gigi.h: Likewise.
1094 * trans.c: Likewise.
1095 (gnat_gimplify_type_sizes, gnat_gimplify_one_sizepos): Deleted.
1096 (gnat_to_gnu, case N_Subprogram_Body): Set cfun->function_end_locus.
1097 (add_stmt): Only handle padded type here.
1098 (add_stmt_with_node): Allow gnat_node to not be present.
1099 (gnat_gimplify_stmt, case USE_STMT): Set *STMT_P to null.
1100 (gnat_gimplify_stmt, case DECL_STMT): Deleted.
1101 (gnat_stabilize_reference_1): If COMPONENT_REF of fat pointer,
1102 make a SAVE_EXPR for the entire fat pointer.
1103 * utils.c (pushdecl): Walk a DECL_EXPR in global case.
1104 (create_index_type): Make a DECL_EXPR.
1105 (end_subprog_body): Don't call allocate_struct_function here but
1106 do clear cfun.
1107
0da2c8ac
AC
11082004-06-25 Pascal Obry <obry@gnat.com>
1109
1110 * makegpr.adb (Build_Library): Remove parameter Lib_Address and
1111 Relocatable from Build_Dynamic_Library call.
1112
1113 * gnat_ugn.texi: Change documentation about Library_Kind. Dynamic and
1114 Relocatable are now synonym.
1115
1116 * Makefile.in: Use s-parame-mingw.adb on MingW platform.
1117
1118 * mlib-prj.adb (Build_Library): Remove DLL_Address constant definition.
1119 Remove parameter Lib_Address and Relocatable from Build_Dynamic_Library
1120 call.
1121
1122 * mlib-tgt.ads, mlib-tgt.adb (Build_Dynamic_Library): Remove parameter
1123 Lib_Address and Relocatable.
1124 (Default_DLL_Address): Removed.
1125
1126 * mlib-tgt-tru64.adb, mlib-tgt-aix.adb, mlib-tgt-irix.adb,
1127 mlib-tgt-hpux.adb, mlib-tgt-linux.adb, mlib-tgt-solaris.adb,
1128 mlib-tgt-vms-alpha.adb, mlib-tgt-vms-ia64.adb, mlib-tgt-vxworks.adb:
1129 (Build_Dynamic_Library): Remove parameter Lib_Address and Relocatable.
1130 (Default_DLL_Address): Removed.
1131
1132 * mlib-tgt-mingw.adb: Ditto.
1133 (Build_Dynamic_Library): Do not add "lib" prefix to the DLL name.
1134
1135 * s-taprop-mingw.adb (Create_Task): Use Adjust_Storage_Size to compute
1136 the initial thread stack size.
1137
1138 * a-strmap.ads: Move package L to private part as it is not used in
1139 the spec. Found while reading code.
1140
11412004-06-25 Olivier Hainque <hainque@act-europe.fr>
1142
1143 * tracebak.c: Introduce support for a GCC infrastructure based
1144 implementation of __gnat_backtrace.
1145
1146 * raise.c: Don't rely on a C mapping of the GNAT_GCC_Exception record
1147 any more. Use accessors instead. This eases maintenance and relaxes
1148 some alignment constraints.
1149 (_GNAT_Exception structure): Remove the Ada specific fields
1150 (EID_For, Adjust_N_Cleanups_For): New accessors, exported by
1151 a-exexpr.adb.
1152 (is_handled_by, __gnat_eh_personality): Replace component references to
1153 exception structure by use of the new accessors.
1154
1155 * init.c (__gnat_initialize): Adjust comments to match the just
1156 reverted meaning of the -static link-time option.
1157
1158 * adaint.c (convert_addresses): Arrange not to define a stub for
1159 mips-irix any more, as we now want to rely on a real version from a
1160 recent libaddr2line.
1161
1162 * a-exexpr.adb: Provide new accessors to a GNAT_GCC occurrence, so that
1163 the personality routine can use them and not have to rely on a C
1164 counterpart of the record anymore. This simplifies maintenance and
1165 relaxes the constraint of having Standard'Maximum_Alignment match
1166 BIGGEST_ALIGNMENT.
1167 Update comments, and add a section on the common header alignment issue.
1168
11692004-06-25 Geert Bosch <bosch@gnat.com>
1170
1171 * a-ngelfu.adb (Tanh): Use full 20 digit precision for constants in
1172 polynomial approximation. Fixes inconsistency with Cody/Waite algorithm.
1173
11742004-06-25 Robert Dewar <dewar@gnat.com>
1175
1176 * gnat_rm.texi: Fix section on component clauses to indicate that the
1177 restriction on byte boundary placement still applies for bit packed
1178 arrays.
1179 Add comment on stack usage from Initialize_Scalars
1180
1181 * gnat_ugn.texi: Add documentation for -gnatyLnnn
1182
1183 * stylesw.ads, stylesw.adb: Implement new -gnatyLnnn option for
1184 limiting nesting level.
1185
1186 * usage.adb: Add line for -gnatyLnnn switch
1187
1188 * g-debpoo.ads, xtreeprs.adb, sinput.ads, sem_ch13.ads,
1189 sem_ch13.adb, exp_aggr.adb: Minor reformatting
1190
1191 * sem_prag.adb (Process_Atomic_Shared_Volatile): Set Is_Atomic on base
1192 type as well as on the subtype. This corrects a problem in freeze in
1193 setting alignments of atomic types.
1194
1195 * sem_eval.ads: Minor comment typo fixed
1196
1197 * par-util.adb (Push_Scope_Stack): Check for violation of max nesting
1198 level. Minor reformatting.
1199
1200 * fname.adb (Is_Predefined_File_Name): Require a letter after the
1201 minus sign. This means that file names like a--b.adb will not be
1202 considered predefined.
1203
1204 * freeze.adb: Propagate new flag Must_Be_On_Byte_Boundary to containing
1205 record Test new flag and give diagnostic for bad component clause.
1206 (Freeze_Entity): Set alignment of array from component alignment in
1207 cases where this is safe to do.
1208
1209 * exp_pakd.adb: Set new flag Must_Be_On_Byte_Boundary for large packed
1210 arrays.
1211
1212 * cstand.adb: (Create_Standard): Set alignment of String to 1
1213
1214 * einfo.ads, einfo.adb: Introduce new flag Must_Be_On_Byte_Boundary
1215
1216 * exp_ch4.adb (Expand_Array_Equality): Improve efficiency of generated
1217 code in the common constrained array cases.
1218
1219 * a-storio.adb: Change implementation to avoid possible alignment
1220 problems on machines requiring strict alignment (data should be moved
1221 as type Buffer, not type Elmt).
1222
1223 * checks.adb (Apply_Array_Size_Check): Improve these checks by
1224 killing the overflow checks which we really do not need (64-bits is
1225 enough).
1226
12272004-06-25 Vincent Celier <celier@gnat.com>
1228
1229 * makegpr.adb (Is_Included_In_Global_Archive): New Boolean function
1230 (Add_Archives.Recursive_Add_Archives): Call Add_Archive_Path
1231 inconditionally for the main project.
1232 (Recursive_Add_Archives.Add_Archive_Path): New procedure
1233 (Link_Executables.Check_Time_Stamps): New procedure
1234 (Link_Executables.Link_Foreign): New procedure
1235 Changes made to reduce nesting level of this package
1236 (Check): New procedure
1237 (Add_Switches): When not in quiet output, check that a switch is not
1238 the concatenation of several valid switches. If it is, issue a warning.
1239 (Build_Global_Archive): If the global archive is rebuilt, linking need
1240 to be done.
1241 (Compile_Sources): Rebuilding a library archive does not imply
1242 rebuilding the global archive.
1243 (Build_Global_Archive): New procedure
1244 (Build_Library): New name for Build_Archive, now only for library
1245 project
1246 (Check_Archive_Builder): New procedure
1247 (Create_Global_Archive_Dependency_File): New procedure
1248 (Gprmake): Call Build_Global_Archive before linking
1249 * makegpr.adb: Use Other_Sources_Present instead of Sources_Present
1250 throughout.
1251 (Scan_Arg): Display the Copyright notice when -v is used
1252
1253 * gnat_ugn.texi: Document new switch -files= (VMS qualifier /FILES=)
1254 for gnatls.
1255
1256 * vms_data.ads: Add qualifier /MAX_NESTING=nnn (-gnatyLnnn) for GNAT
1257 COMPILE.
1258 Add new GNAT LIST qualifier /FILES=
1259 Added qualifier /DIRECTORY= to GNAT METRIC
1260 Added qualifier /FILES= to GNAT METRIC
1261 Added qualifier /FILES to GNAT PRETTY
1262
1263 * switch.adb (Is_Front_End_Switch): Refine the test for --RTS or -fRTS,
1264 to take into account both versions of the switch.
1265
1266 * switch-c.adb (Scan_Front_End_Switches): New switch -gnatez. Should
1267 always be the last switch to the gcc driver. Disable switch storing so
1268 that switches automatically added by the gcc driver are not put in the
1269 ALI file.
1270
1271 * prj.adb (Project_Empty): Take into account changes in components of
1272 Project_Data.
1273
1274 * prj.ads (Languages_Processed): New enumaration value All_Languages.
1275
1276 * prj.ads (Project_Data): Remove component Lib_Elaboration: never
1277 used. Split Boolean component Ada_Sources_Present in two Boolean
1278 components Ada_Sources_Present and Other_Sources_Present.
1279 Minor reformatting
1280
1281 * prj-env.adb (For_All_Source_Dirs.Add): Use Ada_Sources_Present
1282 instead of Sources_Present.
1283 (Set_Ada_Paths.Add.Recursive_Add): Ditto
1284
1285 * prj-nmsc.adb: Minor reformatting
1286 (Check_Ada_Naming_Scheme): New name of procedure Check_Naming_Scheme
1287 (Check_Ada_Naming_Scheme_Validity): New name of previous procedure
1288 Check_Ada_Naming_Scheme.
1289 Change Sources_Present to Ada_Sources_Present or Other_Sources_Present
1290 throughout.
1291
1292 * prj-part.adb (Post_Parse_Context_Clause): New Boolean parameter
1293 In_Limited.
1294 Make sure that all cycles where there is at least one "limited with"
1295 are detected.
1296 (Parse_Single_Project): New Boolean parameter In_Limited
1297
1298 * prj-proc.adb (Recursive_Check): When Process_Languages is
1299 All_Languages, call first Prj.Nmsc.Ada_Check, then
1300 Prj.Nmsc.Other_Languages_Check.
1301
1302 * prj-proc.adb (Process): Use Ada_Sources_Present or
1303 Other_Sources_Present (instead of Sources_Present) depending on
1304 Process_Languages.
1305
1306 * lang-specs.h: Keep -g and -m switches in the same order, and as the
1307 last switches.
1308
1309 * lib.adb (Switch_Storing_Enabled): New global Boolean flag
1310 (Disable_Switch_Storing): New procedure. Set Switch_Storing_Enabled to
1311 False.
1312 (Store_Compilation_Switch): Do nothing if Switch_Storing_Enabled is
1313 False.
1314
1315 * lib.ads (Disable_Switch_Storing): New procedure.
1316
1317 * make.adb: Modifications to reduce nesting level of this package.
1318 (Check_Standard_Library): New procedure
1319 (Gnatmake.Check_Mains): New procedure
1320 (Gnatmake.Create_Binder_Mapping_File): New procedure
1321 (Compile_Sources.Compile): Add switch -gnatez as the last option
1322 (Display): Never display -gnatez
1323
1324 * Makefile.generic:
1325 When using $(MAIN_OBJECT), always use $(OBJ_DIR)/$(MAIN_OBJECT)
1326
1327 * gnatcmd.adb (Check_Project): New function
1328 (Process_Link): New procedure to reduce nesting depth
1329 (Check_Files): New procedure to reduce the nesting depth.
1330 For GNAT METRIC, include the inherited sources in extending projects.
1331 (GNATCmd): When GNAT LS is invoked with a project file and no files,
1332 add the list of files from the sources of the project file. If this list
1333 is too long, put it in a temp text files and use switch -files=
1334 (Delete_Temp_Config_Files): Delete the temp text file that contains
1335 a list of source for gnatpp or gnatmetric, if one has been created.
1336 (GNATCmd): For GNAT METRIC and GNAT PRETTY, if the number of sources
1337 in the project file is too large, create a temporary text file that
1338 list them and pass it to the tool with "-files=<temp text file>".
1339 (GNATCmd): For GNAT METRIC add "-d=<abject dir>" as the first switch
1340
1341 * gnatlink.adb (Gnatlink): Do not compile with --RTS= when the
1342 generated file is in not in Ada.
1343
1344 * gnatls.adb: Remove all parameters And_Save that are no longer used.
1345 (Scan_Ls_Arg): Add processing for -files=
1346 (Usage): Add line for -files=
1347
1348 * g-os_lib.adb (On_Windows): New global constant Boolean flag
1349 (Normalize_Pathname): When on Windows and the path starts with a
1350 directory separator, make sure that the resulting path will start with
1351 a drive letter.
1352
1353 * clean.adb (Clean_Archive): New procedure
1354 (Clean_Project): When there is non-Ada code, delete the global archive,
1355 the archive dependency files, the object files and their dependency
1356 files, if they exist.
1357 (Gnatclean): Call Prj.Pars.Parse for All_Languages, not for Ada only.
1358
13592004-06-25 Thomas Quinot <quinot@act-europe.fr>
1360
1361 * sinfo.ads: Fix typo in comment.
1362
1363 * sem_dist.adb (Process_Remote_AST_Attribute): Simplify code that uses
1364 the TSS for remote access-to-subprogram types, since these TSS are
1365 always present once the type has been analyzed.
1366 (RAS_E_Dereference): Same.
1367
1368 * sem_attr.adb (Analyze_Attribute): When analysis of an attribute
1369 reference raises Bad_Attribute, mark the reference as analyzed so the
1370 node (and any children resulting from rewrites that could have occurred
1371 during the analysis that ultimately failed) is not analyzed again.
1372
1373 * exp_ch7.ads (Find_Final_List): Fix misaligned comment.
1374
1375 * exp_dist.adb: Minor comment fix.
1376
1377 * exp_ch4.adb (Expand_N_Allocator): For an allocator whose expected
1378 type is an anonymous access type, no unchecked deallocation of the
1379 allocated object can occur. If the object is controlled, attach it with
1380 a count of 1. This allows attachment to the Global_Final_List, if
1381 no other relevant list is available.
1382 (Get_Allocator_Final_List): For an anonymous access type that is
1383 the type of a discriminant or record component, the corresponding
1384 finalisation list is the one of the scope of the type.
1385
13862004-06-25 Ed Schonberg <schonberg@gnat.com>
1387
1388 * sem_ch3.adb (Replace_Type): When computing the signature of an
1389 inherited subprogram, use the first subtype if the derived type
1390 declaration has no constraint.
1391
1392 * exp_ch6.adb (Add_Call_By_Copy_Code): Check that formal is an array
1393 before applying previous optimization. Minor code cleanup.
1394
1395 * exp_util.adb (Is_Possibly_Unaligned_Slice): If the component is
1396 placed at the beginning of an unpacked record without explicit
1397 alignment, a slice of it will be aligned and does not need a copy when
1398 used as an actual.
1399
14002004-06-25 Ed Schonberg <schonberg@gnat.com>
1401
1402 PR ada/15591
1403 PR ada/15592
1404 * sem_ch8.adb (Attribute_Renaming): Reject renaming if the attribute
1405 reference is written with expressions mimicking parameters.
1406
14072004-06-25 Hristian Kirtchev <kirtchev@gnat.com>
1408
1409 PR ada/15589
1410 * sem_ch3.adb (Build_Derived_Record_Type): Add additional check to
1411 STEP 2a. The constraints of a full type declaration of a derived record
1412 type are checked for conformance with those declared in the
1413 corresponding private extension declaration. The message
1414 "not conformant with previous declaration" is emitted if an error is
1415 detected.
1416
14172004-06-25 Vasiliy Fofanov <fofanov@act-europe.fr>
1418
1419 * g-traceb.ads: Document the need for -E binder switch in the spec.
1420
1421 * g-trasym.ads: Document the need for -E binder switch in the spec.
1422
14232004-06-25 Jose Ruiz <ruiz@act-europe.fr>
1424
1425 * sem_prag.adb: Add handling of pragma Detect_Blocking.
1426
1427 * snames.h, snames.ads, snames.adb: Add entry for pragma
1428 Detect_Blocking.
1429
1430 * s-rident.ads: Change reference to pragma Detect_Blocking.
1431
1432 * targparm.ads, targparm.adb: Allow pragma Detect_Blocking in
1433 system.ads.
1434
1435 * opt.ads (Detect_Blocking): New Boolean variable (defaulted to False)
1436 to indicate whether pragma Detect_Blocking is active.
1437
1438 * par-prag.adb: Add entry for pragma Detect_Blocking.
1439
1440 * rtsfind.adb (RTU_Loaded): Fix the temporary kludge to get past bug
1441 of not handling WITH.
1442 Note that this replaces the previous update which was incorrect.
1443
14442004-06-25 Javier Miranda <miranda@gnat.com>
1445
1446 * sem_ch10.adb (Re_Install_Use_Clauses): Force the installation of the
1447 use-clauses to have a clean environment.
1448
1449 * sem_ch8.adb (Install_Use_Clauses): Addition of a new formal to force
1450 the installation of the use-clauses to stablish a clean environment in
1451 case of compilation of a separate unit; otherwise the call to
1452 use_one_package is protected by the barrier Applicable_Use.
1453
1454 * sem_ch8.ads (Install_Use_Clauses): Addition of a new formal to force
1455 the installation of the use-clauses to stablish a clean environment in
1456 case of compilation of a separate unit.
1457 (End_Use_Clauses): Minor comment cleanup.
1458
14592004-06-25 Sergey Rybin <rybin@act-europe.fr>
1460
1461 * gnat_ugn.texi: Add description of the gnatpp 'files' switch
1462
65355d53
RH
14632004-06-23 Richard Henderson <rth@redhat.com>
1464
1465 * trans.c (gnat_gimplify_stmt): Update gimplify_type_sizes call.
1466
c0e3aa48
RK
14672004-06-20 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1468
1469 * decl.c (elaborate_expression, elaborate_expression_1): Arguments
1470 now bool instead of int.
1471 (gnat_to_gnu_entity, elaborate_expression_1): New arg to COMPONENT_REF.
1472 * trans.c (gnu_switch_label_stack): New function.
1473 (gnat_to_gnu, N_Object_Renaming_Declaration): Result is what the
1474 elaboration of renamed entity returns.
1475 (gnat_to_gnu, case N_Case_Statement): Add branches to end label.
1476 (add_decl_stmt): Don't add TYPE_DECL for UNCONSTRAINED_ARRAY_TYPE.
1477 (gnat_gimplify_stmt): Use alloc_stmt_list, not build_empty_stmt.
1478 (gnat_gimplify_stmt, case DECL_STMT): gimplify DECL_SIZE and
1479 DECL_SIZE_UNIT and simplify variable-sized case.
1480 (gnat_gimplify_type_sizes, gnat_gimplify_one_sizepos): Deleted.
1481 Callers changes to call gimplify_type_sizes and gimplify_one_sizepos.
1482 (gnat_stabilize_reference): Add arg to COMPONENT_REF.
1483 (build_unit_elab): Disable for now.
1484 * utils.c (mark_visited): New function.
1485 (pushdecl): Walk tree to call it for global decl.
1486 (update_pointer_to): Update all variants of pointer and ref types.
1487 Add arg to COMPONENT_REF.
1488 (convert): Likewise.
1489 Move check for converting between variants lower down.
1490 * utils2.c (build_simple_component_ref): Add arg to COMPONENT_REF.
1491 (build_allocator): Don't force type of MODIFY_EXPR.
1492 (gnat_mark_addressable, case VAR_DECL): Unconditionally call
1493 put_var_into_stack.
1494
966389ee
RK
14952004-06-14 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1496
1497 * ada-tree.def (LOOP_STMT, EXIT_STMT): Update documentation.
1498 * ada-tree.h (EXIT_STMT_LABEL): Renamed from EXIT_STMT_LOOP.
1499 * decl.c (gnat_to_gnu_entity): Also set force_global for imported
1500 subprograms.
1501 * trans.c (gnu_loop_label_stack): Renamed from gnu_loop_stmt_stack;
1502 all callers changed.
1503 (gnat_to_gnu, case N_Loop_Statement, case N_Exit_Statement): Change
1504 the way that EXIT_STMT finds the loop label.
1505 (gnat_gimplify_stmt, case LOOP_STMT, EXIT_STMT): Likewise.
1506 (gnat_gimplify_stmt, case DECL_STMT): Handle variable-sized decls here.
1507 (add_stmt): Use annotate_with_locus insted of setting directly.
1508 (pos_to_construct): Set TREE_PURPOSE of each entry to index.
1509 (gnat_stabilize_reference, case ARRAY_RANGE_REF): Merge with ARRAY_REF.
1510 * utils.c (gnat_install_builtins): Install __builtin_memcmp.
1511 (build_vms_descriptor): Add extra args to ARRAY_REF.
1512 (convert): Use VIEW_CONVERT_EXPR between aggregate types.
1513 * utils2.c (gnat_truthvalue_conversion, case INTEGER_CST, REAL_CST):
1514 New cases.
1515 (build_binary_op): Don't make explicit CONVERT_EXPR.
1516 Add extra rgs to ARRAY_REF.
1517
cc335f43
AC
15182004-06-14 Pascal Obry <obry@gnat.com>
1519
1520 * gnat_ugn.texi: Document relocatable vs. dynamic Library_Kind on
1521 Windows. Fix minor typo.
1522
1523 * mlib-tgt-mingw.adb: New implementation using the GCC -shared option
1524 which is now supported on Windows. With this implementation using the
1525 Library Project feature is no different on Windows than on UNIX.
1526
15272004-06-14 Vincent Celier <celier@gnat.com>
1528
1529 * makegpr.adb (Compile_Sources): Nothing to do when there are no
1530 non-Ada sources.
1531
1532 * mlib-tgt-vxworks.adb (Library_Exists_For): Remove incorrect comment
1533
1534 * prj-part.adb (Parse_Single_Project): When a duplicate project name is
1535 found, show the project name and the path of the previously parsed
1536 project file.
1537
15382004-06-14 Ed Schonberg <schonberg@gnat.com>
1539
1540 * exp_ch6.adb (Add_Call_By_Copy_Code): For an out-parameter that is an
1541 array, avoid copying the actual before the call.
1542
15432004-06-14 Thomas Quinot <quinot@act-europe.fr>
1544
1545 * g-debpoo.adb: Remove alignment assumptions from GNAT.Debug_Pools.
1546 Instead, allocate memory on worst-case alignment assumptions, and then
1547 return an aligned address within the allocated zone.
1548
15492004-06-14 Robert Dewar <dewar@gnat.com>
1550
1551 * bindgen.adb (Gen_Adainit_Ada): Do not generate external references to
1552 elab entities in predefined units in No_Run_Time_Mode.
1553 (Gen_Adainit_C): Same fix
1554 (Gen_Elab_Calls_Ada): Do not generate calls to elaborate predefined
1555 units in No_Run_Time_Mode
1556 (Gen_Elab_Calls_C): Same fix
1557
1558 * symbols-vms-alpha.adb: Minor reformatting
1559
1560 * g-debpoo.ads: Minor reformatting
1561
1562 * lib.adb (In_Same_Extended_Unit): Version working on node id's
1563
1564 * lib.ads (In_Same_Extended_Unit): Version working on node id's
1565
1566 * lib-xref.adb: Minor cleanup, use new version of In_Same_Extended_Unit
1567 working on nodes.
1568
1569 * make.adb: Minor reformatting
1570
1571 * par-ch12.adb: Minor reformatting
1572
1573 * par-prag.adb: Add dummy entry for pragma Profile_Warnings
1574
1575 * prj-strt.adb: Minor reformatting
1576
1577 * restrict.ads, restrict.adb: Redo handling of profile restrictions to
1578 be more general.
1579
1580 * sem_attr.adb: Minor reformatting
1581
1582 * sem_ch7.adb: Minor reformatting
1583
1584 * sem_elab.adb (Check_A_Call): Deal with problem of calling init proc
1585 for type in the same unit as the object declaration.
1586
1587 * sem_prag.adb (Check_Arg_Is_External_Name): New procedure, allows
1588 static string expressions and not just string literals.
1589 Minor reformatting
1590 (Set_Warning): Reset restriction warning flag for restriction pragma
1591 Implement pragma Profile_Warnings
1592 Implement pragma Profile (Restricted)
1593 Give obolescent messages for old restrictions and pragmas
1594
1595 * snames.h, snames.ads, snames.adb: Add new entry for pragma
1596 Profile_Warnings.
1597
1598 * s-rident.ads: Add declarations for restrictions required by profile
1599 Restricted and profile Ravenscar.
1600
1601 * targparm.ads, targparm.adb: Allow pragma Profile in system.ads
1602
1603 * gnat_ugn.texi: Correct some missing entries in the list of GNAT
1604 configuration pragmas.
1605
5453d5bd
AC
16062004-06-11 Vincent Celier <celier@gnat.com>
1607
1608 * mlib-tgt-vms-alpha.adb (Build_Dynamic_Library): Issue switch -R to
1609 gnatsym, when symbol policy is Restricted.
1610
1611 * mlib-tgt-vms-ia64.adb (Build_Dynamic_Library): Issue switch -R to
1612 gnatsym, when symbol policy is Restricted.
1613
1614 * symbols-vms-alpha.adb (Initialize): When symbol policy is Restricted,
1615 read the symbol file.
1616 (Finalize): Fail in symbol policy Restricted if a symbol in the original
1617 symbol file is not in the object files. Do not create a new symbol file
1618 when symbol policy is Restricted.
1619
1620 * gnatbind.adb (Gnatbind): Initialize Snames, because Snames is used
1621 in Scng.
1622
1623 * gnatsym.adb (Parse_Vmd_Line): Process new switch -R for symbol policy
1624 Restricted.
1625 (Usage): Line for new switch -R
1626
1627 * make.adb (Initialize): When the platform is not VMS, add the
1628 directory where gnatmake is invoked in the front of the path, if
1629 gnatmake is invoked with directory information. Change the Scan_Args
1630 while loop to a for loop.
1631 (Recursive_Compute_Depth): Remove parameter Visited. Improve efficiency:
1632 if Depth is equal or greater than the proposed depth, there is nothing
1633 to do.
1634 (Initialize): Call Recursive_Compute_Depth with initial Depth equal to 1
1635 instead of 0.
1636
1637 * prj.ads: Add new symbol policy Restricted.
1638
1639 * prj-dect.adb (Parse_Case_Construction): Call End_Case_Construction
1640 with the new parameters Check_All_Labels and Case_Location.
1641
1642 * prj-nmsc.adb (Ada_Check): Process new symbol policy Restricted
1643 (Library_Symbol_File needs to be defined).
1644
1645 * prj-strt.adb (End_Case_Construction): New parameters Check_All_Labels
1646 and Case_Location If Check_All_Labels is True, check that all values of
1647 the string type are used, and output warning(s) if they are not.
1648
1649 * prj-strt.ads (End_Case_Construction): New parameters Check_All_Labels
1650 and Case_Location.
1651
1652 * gnat_ugn.texi: Reorder subclauses in menus "Switches for gcc"
1653
1654 * gnat_ugn.texi: Update documentation about the library directory in
1655 Library Projects.
1656
1657 * makegpr.adb (Display_Command): In verbose mode, also display the
1658 value of the CPATH env var, when the compiler is gcc.
1659 (Initialize): Change the Scan_Args while loop to a for loop
1660 (Compile_Individual_Sources): Change directory to object directory
1661 before compilations.
1662
1663 * symbols.ads: New symbol policy Restricted.
1664
16652004-06-11 Olivier Hainque <hainque@act-europe.fr>
1666
1667 * a-except.adb (Raise_After_Setup family): Remove. The responsibility
1668 is now taken care of internally in the Exception_Propagation package
1669 and does not require clients assistance any more.
1670
1671 * a-exexpr.adb (Is_Setup_And_Not_Propagated,
1672 Set_Setup_And_Not_Propagated, and Clear_Setup_And_Not_Propagated): New
1673 functions. Helpers to maintain a predicate required in the handling of
1674 occurrence transfer between tasks.
1675 This is now handled internally and does not require clients assistance
1676 for the setup/propagate separation anymore.
1677 (Setup_Exception, Propagate_Exception): Simplify the Private_Data
1678 allocation strategy, handle the Setup_And_Not_Propagated predicate and
1679 document.
1680
1681 * s-taenca.adb (Check_Exception): Use raise_with_msg instead of
1682 raise_after_setup, now that everything is handled internally within the
1683 setup/propagation engine.
1684
16852004-06-11 Hristian Kirtchev <kirtchev@gnat.com>
1686
1687 * exp_ch6.adb (Expand_Inlined_Call): Add function Formal_Is_Used_Once.
1688 Add additional conditions for the case of an actual being a simple
1689 name or literal. Improve inlining by preventing the generation
1690 of temporaries with a short lifetime (one use).
1691
16922004-06-11 Hristian Kirtchev <kirtchev@gnat.com>
1693
1694 PR ada/15587
1695
1696 * einfo.ads: Minor comment updates for Has_Completion and
1697 E_Constant list of flags.
1698
1699 * sem_ch3.adb (Analyze_Object_Declaration): Full constant declarations
1700 and constant redeclarations now set the Has_Completion flag of their
1701 defining identifiers.
1702
1703 * sem_ch7.adb (Analyze_Package_Spec): Add procedure
1704 Inspect_Deferred_Constant_Completion.
1705 Used to detect private deferred constants that have not been completed
1706 either by a constant redeclaration or pragma Import. Emits error message
1707 "constant declaration requires initialization expression".
1708
1709 * sem_prag.adb (Process_Import_Or_Interface): An Import pragma now
1710 completes a deferred constant.
1711
17122004-06-11 Geert Bosch <bosch@gnat.com>
1713
1714 * eval_fat.adb (Decompose_Int): Fix rounding of negative numbers.
1715
1716 * s-fatgen.adb (Gradual_Scaling): Correct off-by-one error in
1717 calculating exponent for scaling denormal numbers.
1718 (Leading_Part): Properly raise Constraint_Error for zero or negative
1719 Adjustment.
1720 (Remainder): Properly raise Constraint_Error for zero divisor.
1721
17222004-06-11 Thomas Quinot <quinot@act-europe.fr>
1723
1724 * sem_util.adb: Minor reformatting.
1725
1726 * exp_ch2.adb (Expand_Entry_Parameter): Generate an explicit
1727 dereference when accessing the entry parameter record.
1728 (Check_Array_Type): Always check for possible implicit dereference.
1729 (maybe_implicit_dereference): Rename to check_no_implicit_derefence.
1730 Abort if a pointer is still present (denoting that an implicit
1731 dereference was left in the tree by the front-end).
1732
1733 * sem_attr.adb (Expand_Entry_Parameter): Generate an explicit
1734 dereference when accessing the entry parameter record.
1735 (Check_Array_Type): Always check for possible implicit dereference.
1736 (maybe_implicit_dereference): Rename to check_no_implicit_derefence.
1737 Abort if a pointer is still present (denoting that an implicit
1738 dereference was left in the tree by the front-end).
1739
17402004-06-11 Emmanuel Briot <briot@act-europe.fr>
1741
1742 * g-debpoo.adb (Deallocate, Dereference): Add prefix "error:" to error
1743 message, like the compiler itself does. Easier to parse the output.
1744
1745 * g-debpoo.ads: (Allocate, Deallocate, Dereference): Add comments.
1746
1747 * gnat_ugn.texi (gnatxref, gnatfind): Clarify that source names should
1748 be base names, and not includes directories.
1749
17502004-06-11 Arnaud Charlet <charlet@act-europe.fr>
1751
1752 * Makefile.generic ($(EXEC)): Depend on $(OBJECTS), not $(OBJ_FILES),
1753 so that dependencies are properly taken into account by make.
1754
17552004-06-11 Arnaud Charlet <charlet@act-europe.fr>
1756
1757 PR ada/15622
1758 * s-unstyp.ads, s-maccod.ads, sem_ch8.adb, s-auxdec.ads,
1759 exp_intr.adb, s-auxdec-vms_64.ads: Fix typo: instrinsic -> intrinsic
1760
17612004-06-11 Jerome Guitton <guitton@act-europe.fr>
1762
1763 * Makefile.in (install-gnatlib): install target-specific run-time files.
1764
1765 * Make-lang.in: Remove obsolete targets.
1766
17672004-06-11 Ed Schonberg <schonberg@gnat.com>
1768
1769 * par-ch12.adb (P_Generic): Add scope before analyzing subprogram
1770 specification, to catch misuses of program unit names.
1771
1772 * sem_res.adb (Resolve_Type_Conversion): Do not emit warnings on
1773 superfluous conversions in an instance.
1774
17752004-06-11 Ed Schonberg <schonberg@gnat.com>
1776
1777 PR ada/15403
1778
1779 * sem_ch12.adb (Save_References): If operator node has been folded to
1780 enumeration literal, associated_node must be discarded.
1781
17822004-06-11 Jose Ruiz <ruiz@act-europe.fr>
1783
1784 * s-stchop-vxworks.adb: Add required pragma Convention to
1785 Task_Descriptor because it is updated by a C function.
1786
a98f59be
AC
17872004-06-08 Arnaud Charlet <charlet@act-europe.fr>
1788
1789 PR ada/15568
1790
1791 * Makefile.in: Remove target specific SO_OPT on IRIX
1792
821e1ea1
RK
17932004-06-07 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1794
1795 * ada-tree.def (TRANSFORM_EXPR, ALLOCATE_EXPR, USE_EXPR): Deleted.
1796 (GNAT_NOP_EXPR, GNAT_LOOP_ID, EXPR_STMT, NULL_STMT): Likewise.
1797 (BLOCK_STMT, IF_STMT, GOTO_STMT, LABEL_STMT, RETURN_STMT): Likewise.
1798 (ASM_STMT, BREAK_STMT, REGION_STMT,HANDLER_STMT): Likewise.
1799 (STMT_STMT, USE_STMT): New statement codes.
1800 (LOOP_STMT, EXIT_STMT): Make slight semantic changes.
1801 * ada-tree.h: Reflect above changes.
1802 (struct tree_loop_id): Deleted.
1803 (union lang_tree_node, struct lang_decl, struct lang_type):
1804 Now just contains a tree node; update macros using TYPE_LANG_SPECIFIC
1805 and DECL_LANGUAGE_SPECIFIC to reflect these changes.
1806 (DECL_INIT_BY_ASSIGN_P, TRE_LOOP_NODE_ID, TREE_SLOC): Deleted.
1807 (IS_ADA_STMT): New macro.
1808 * decl.c (annotate_decl_with_node): New function.
1809 (gnat_to_gnu_entity): Use it and Sloc_to_locus instead of set_lineno.
1810 (gnat_to_gnu_entity, case object): Remove call to expand CONVERT_EXPR.
1811 Call add_stmt_with_node to do needed assignments.
1812 Add call to update setjmp buffer directly, not via EXPR_STMT.
1813 (maybe_variable): Argment GNAT_NODE deleted.
1814 * gigi.h (maybe_variable): Likewise.
1815 (make_transform, add_stmt_with_node, set_block_for_group): New.
1816 (gnat_gimplify_expr, gnat_expand_body, Sloc_to_locus): Likewise.
1817 (set_block_jmpbuf_decl, get_block_jmpbuf_decl): Likewise.
1818 (discard_file_names, gnu_block_stack, gnat_to_code): Deleted.
1819 (set_lineno, set_lineno_from_sloc): Likewise.
1820 (record_code_position, insert_code_for): Likewise.
1821 (gnat_poplevel): Now returns void.
1822 (end_subprog_body): Now takes argument.
1823 * misc.c (cgraph.h, tree-inline.h): New includes.
1824 (gnat_tree_size, LANG_HOOKS_TREE_SIZE): Deleted.
1825 (gnat_post_options, LANG_HOOKS_POST_OPTIONS): New.
1826 (LANG_HOOKS_CALLGRAPH_EXPAND_FUNCTION): Likewise.
1827 (LANG_HOOKS_RTL_EXPAND_STMT, LANG_HOOKS_GIMPLIFY_EXPR): Likewise.
1828 (gnat_parse_file): Don't set immediate_size_expand.
1829 Call cgraph functions.
1830 (gnat_expand_expr): Remove most cases.
1831 (record_code_position, insert_code_for): Remove from here.
1832 * trans.c (toplev.h, tree-gimple.h): Now included.
1833 (discard_file_names): Deleted.
1834 (gnu_block_stack, gnu_block_stmt_node, gnu_block_stmt_free_list): Del.
1835 (first_nondeleted_insn, make_expr_stmt_from_rtl): Likewise.
1836 (struct stmt_group, current_stmt_group, stmt_group_free_list): New.
1837 (gnu_stack_free_list, record_cost_position, insert_code_for): Likewise.
1838 (add_cleanup, push_stack, gnat_gimplify_stmt, add_cleanup): Likewise.
1839 (gnat_gimplify_type_sizes, gnat_gimplify_one_sizepos): Likewise.
1840 (gnat_expand_body_1, gnat_gimplify_expr, annotate_with_node): Likewise.
1841 (set_block_for_group, add_stmt_list): Likewise.
1842 (start_stmt_group): Renamed from start_block_stmt.
1843 (end_stmt_group): Likewise, from end_block_stmt.
1844 (build_stmt_group): Likewise, from build_block_stmt, also add arg.
1845 (gigi): Don't set discard_file_names or call set_lineno.
1846 Disallow front end ZCX; call gnat_to_gnu, not gnat_to_code.
1847 (tree_transform): Deleted, now renamed to be gnat_to_gnu.
1848 Numerous changes throughout to reflect new names and complete
1849 function-at-a-time implementation.
1850 (gnat_expand_stmt): Delete or comment out all cases.
1851 (process_inlined_subprograms): Use add_stmt.
1852 (process_decls): Use gnat_to_gnu, not gnat_to_code, and don't
1853 call set_lineno; also remove unneeded block handling.
1854 (process_type): Remove unneeded block handling.
1855 (build_unit_elab): Remove calls to deleted functions.
1856 * utils.c (cgraph.h, tree-inline.h, tree-gimple.h): Now include.
1857 (tree-dump.h): Likewise.
1858 (struct ada_binding_level): Add field jmpbuf_decl.
1859 (gnat_define_builtin, gnat_install_builtins): New.
1860 (gnat_gimplify_function, gnat_finalize): Likewise.
1861 (gnat_poplevel): No longer return BLOCK, set it instead.
1862 Remove code dealing with nested functions.
1863 (gnat_init_decl_processing): Also set size_type_node.
1864 Call gnat_install_builtins.
1865 (create_var_decl): Don't set DECL_INIT_BY_ASSIGN.
1866 (create_subprog_decl): Change handling of inline_flag; set TREE_STATIC.
1867 Remove special-case for "main".
1868 (end_subprog_body): Add arg and rework for tree-ssa.
1869 (convert): Don't use GNAT_NOP_EXPR or look for TRANSFORM_EXPR.
1870 Add case for BOOLEAN_TYPE.
1871 * utils2.c (rtl.h): Now include.
1872 (build_call_raise): Test Debug_Flag_NN directly.
1873 (build_call_alloc_dealloc): Don't use local stack allocation for now.
1874 (gnat_mark_addressable, case GNAT_NOP_EXPR): Deleted.
1875 (gnat_mark_addressable, case VAR_DECL): Handle both early & late cases.
1876
0ab80019
AC
18772004-06-07 Robert Dewar <dewar@gnat.com>
1878
1879 * a-direct.ads, einfo.ads: Minor comment updates
1880
1881 * s-taprop-lynxos.adb, s-taprop-tru64.adb, s-taprop-irix.adb,
1882 s-taprop-irix-athread.adb, s-taprop-hpux-dce.adb, s-taprop-linux.adb,
1883 s-taprop-dummy.adb, s-taprop-os2.adb, s-taprop-solaris.adb,
1884 s-taprop-vms.adb, s-taprop-mingw.adb, s-taprop-vxworks.adb,
1885 s-taprop-posix.adb, s-taprop.ads, exp_dbug.adb: Minor reformatting.
1886
1887 * s-interr-sigaction.adb: Remove unreferenced variable
1888 (Attached_Interrupts). Minor reformatting.
1889 Avoid use of variable I (replace by J).
1890
1891 * par-ch10.adb: Fix text of one error message
1892
1893 * checks.adb, checks.ads, cstand.adb, vms_data.ads, errout.ads,
1894 exp_aggr.adb, exp_ch3.adb, exp_ch3.ads, exp_ch5.adb, exp_ch6.adb,
1895 exp_ch9.adb, exp_code.adb, gnat1drv.adb, lib-load.adb, lib-writ.adb,
1896 opt.adb, par.adb, opt.ads, par-ch11.adb, par-ch3.adb, par-ch4.adb,
1897 par-ch5.adb, par-ch6.adb, par-ch8.adb, par-ch9.adb, par-prag.adb,
1898 par-util.adb, scng.adb, sem_aggr.adb, sem_attr.adb, sem_cat.adb,
1899 sem_ch10.adb, sem_ch10.adb, sem_ch11.adb, sem_ch12.adb, sem_ch2.adb,
1900 sem_ch3.adb, sem_ch3.ads, sem_ch4.adb, sem_ch5.adb, sem_ch6.adb,
1901 sem_ch7.adb, sem_ch8.adb, sem_ch9.adb, sem_eval.adb, sem_prag.adb,
1902 sem_res.adb, sem_type.adb, sem_util.adb, sinfo.ads, snames.adb,
1903 snames.ads, snames.h, sprint.adb, switch-c.adb: Modifications for Ada
1904 2005 support.
1905
19062004-06-07 Doug Rupp <rupp@gnat.com>
1907
1908 * mlib-tgt-vms.adb: Rename mlib-tgt-vms.adb mlib-tgt-vms-alpha.adb
1909
1910 * s-vaflop-vms.adb: Rename s-vaflop-vms.adb to s-vaflop-vms-alpha.adb
1911
1912 * mlib-tgt-vms-ia64.adb: New file.
1913
1914 * Makefile.in: Rename mlib-tgt-vms.adb to mlib-tgt-vms-alpha.adb
1915 Add mlib-tgt-vms-ia64.adb
1916 Rename s-vaflop-vms.adb to s-vaflop-vms-alpha.adb.
1917 Move to alpha specific ifeq section.
1918 Add VMS specific versions of symbols.adb
1919 Renaming of 5q vms files.
1920
1921 * 5qsystem.ads renamed to system-vms_64.ads.
1922
19232004-06-07 Vincent Celier <celier@gnat.com>
1924
1925 * a-calend.ads: Add a GNAT Note comment after function Time_Of to
1926 explain that when a time of day corresponding to the non existing hour
1927 on the day switching to DST is specified, Split may return a different
1928 value for Seconds.
1929
1930 * gnatcmd.adb: Add processing of GNAT METRIC (for gnatmetric), similar
1931 to GNAT PRETTY.
1932
1933 * g-os_lib.adb (OpenVMS): New Boolean value imported from System.
1934 (Normalize_Pathname): Only resolve VMS logical names when on VMS.
1935
1936 * mlib-prj.adb (Build_Library): New flag Gtrasymobj_Needed, initialize
1937 to False.
1938 If Gtrasymobj_Needed is True, add the full path of g-trasym.obj to
1939 the linking options.
1940 (Build_Library.Check_Libs): On VMS, if there is a dependency on
1941 g-trasym.ads, set Gtrasymobj_Needed to True.
1942
1943 * prj-attr.adb: Add new package Metrics for gnatmetric
1944
1945 * prj-nmsc.adb (Record_Other_Sources): Put source file names in
1946 canonical case to take into account files with upper case characters on
1947 Windows.
1948 (Ada_Check): Load the reference symbol file name in the name buffer to
1949 check it, not the symbol file name.
1950
1951 * snames.ads, snames.adb: Add standard name Metrics (name of project
1952 file package for gnatmetric).
1953
1954 * vms_conv.ads: Add Metric to Comment_Type
1955
1956 * vms_conv.adb (Initialize): Add component dor Metric in Command_List
1957
1958 * vms_data.ads: Add qualifiers for GNAT METRIC
1959
1960 * makegpr.adb (Link_Executables): Take into account the switches
1961 specified in package Linker of the main project.
1962
19632004-06-07 Thomas Quinot <quinot@act-europe.fr>
1964
1965 * bindgen.adb (Set_Unit_Number): Units is an instance of Table, and so
1966 the index of the last element is Units.Last, not Units.Table'Last
1967 (which is usually not a valid index within the actually allocated
1968 storage for the table).
1969
1970 * exp_ch4.adb (Insert_Dereference_Action): Change predicate that
1971 determines whether to generate a call to a checked storage pool
1972 Dereference action.
1973 Generate such a call only for a dereference that either comes from
1974 source, or is the result of rewriting a dereference that comes from
1975 source.
1976
19772004-06-07 Romain Berrendonner <berrendo@act-europe.fr>
1978
1979 * bindgen.adb (Gen_Output_File): Add support for GAP builds.
1980
19812004-06-07 Eric Botcazou <ebotcazou@act-europe.fr>
1982
1983 (gnat_to_gnu_entity) <E_Array_Subtype>: For multi-dimensional arrays at
1984 file level, elaborate the stride for inner dimensions in alignment
1985 units, not bytes.
1986
1987 * exp_ch5.adb: Correct wrong reference to Component_May_Be_Bit_Aligned
1988 in a comment.
1989
19902004-06-07 Javier Miranda <miranda@gnat.com>
1991
1992 * exp_ch6.adb: Correct wrong modification in previous patch
1993
19942004-06-07 Vasiliy Fofanov <fofanov@act-europe.fr>
1995
1996 * g-trasym.ads: Corrected comment to properly reflect level of support
1997 on VMS.
1998
19992004-06-07 Hristian Kirtchev <kirtchev@gnat.com>
2000
2001 * lib-xref.adb (Generate_Reference): Add nested function Is_On_LHS. It
2002 includes case of a variable referenced on the left hand side of an
2003 assignment, therefore remove redundant code. Variables and prefixes of
2004 indexed or selected components are now marked as referenced on left
2005 hand side. Warnings are now properly emitted when variables or prefixes
2006 are assigned but not read.
2007
2008 * sem_warn.adb (Output_Unreferenced_Messages): Add additional checks to
2009 left hand side referenced variables. Private access types do not
2010 produce the warning "variable ... is assigned but never read".
2011 Add also additional checks to left hand side referenced variables.
2012 Aliased, renamed objects and access types do not produce the warning
2013 "variable ... is assigned but never read" since other entities may read
2014 the memory location.
2015
20162004-06-07 Jerome Guitton <guitton@act-europe.fr>
2017
2018 * Makefile.in: In the powerpc/vxworks-specific section, restore
2019 EXTRA_GNATRTL_NONTASKING_OBJS and EXTRA_GNATRTL_TASKING_OBJS (removed
2020 by mistake).
2021
20222004-06-07 Ed Schonberg <schonberg@gnat.com>
2023
2024 * sem_ch4.adb (Remove_Abstract_Operations): Refine the removal of
2025 predefined operators.
2026 Removes spurious type errors from g-trasym-vms.adb.
2027
2028 * sem_res.adb (Rewrite_Renamed_Operator): If intrinsic operator is
2029 distinct from the operator appearing in the source, call appropriate
2030 routine to insert conversions when needed, and complete resolution of
2031 node.
2032 (Resolve_Intrinsic_Operator): Fix cut-and-paste bug on transfer of
2033 interpretations for rewritten right operand.
2034 (Set_Mixed_Mode_Operand): Handle properly a universal real operand when
2035 the other operand is overloaded and the context is a type conversion.
2036
20372004-06-07 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2038
2039 * ada-tree.def (BLOCK_STMT): Now has two operands.
2040 (BREAK_STMT): New.
2041
2042 * ada-tree.h: (BLOCK_STMT_BLOCK): New macro.
2043
2044 * gigi.h: (gnat_poplevel): Now returns a tree.
2045
2046 * trans.c (end_block_stmt): Add arg; all callers changed.
2047 (tree_transform, case N_Case_Statement): Make a BLOCK_STMT for a WHEN.
2048 (start_block_stmt): Clear BLOCK_STMT_BLOCK.
2049 (add_stmt): Set TREE_TYPE.
2050 (gnat_expand_stmt, case BLOCK_STMT): Handle BLOCK_STMT_BLOCK.
2051 (gnat_expand_stmt, case BREAK_STMT): New case.
2052
2053 * utils.c (gnat_poplevel): Return a BLOCK, if we made one.
2054
20552004-06-07 Jose Ruiz <ruiz@act-europe.fr>
2056
2057 * s-stchop.adsm s-stchop.adb, s-stchop-vxworks.adb: Remove the
2058 procedure Set_Stack_Size that is not needed.
2059
20602004-06-07 Sergey Rybin <rybin@act-europe.fr>
2061
2062 * gnat_ugn.texi: Clarify the case when non-standard naming scheme is
2063 used for gnatpp input file and for the files upon which it depends
2064
20652004-06-07 Ben Brosgol <brosgol@gnat.com>
2066
2067 * gnat_ugn.texi: Wordsmithing of "GNAT and Libraries" chapter
2068
20692004-06-07 Arnaud Charlet <charlet@act-europe.fr>
2070
2071 * gnatvsn.ads: Bump version numbers appropriately.
2072 Add new build type.
2073
20742004-06-07 Pascal Obry <obry@gnat.com>
2075
2076 * gnat_ugn.texi: Improve comments about imported names and link names
2077 on Windows. Add a note about the requirement to use -k gnatdll's option
2078 when working with a DLL which has stripped stdcall symbols (no @nn
2079 suffix).
2080
8a36a0cc
AC
20812004-05-27 Vincent Celier <celier@gnat.com>
2082
2083 * vms_data.ads: Add new GNAT PRETTY qualifiers /NO_BACKUP and
2084 COMMENTS_LAYOUT=UNTOUCHED
2085
2086 * symbols-vms.adb, symbols-vms-alpha.adb: Renamed symbols-vms.adb to
2087 symbols-vms-alpha.adb
2088
20892004-05-27 Thomas Quinot <quinot@act-europe.fr>
2090
2091 * sem.ads: Clarify documentation on checks suppression.
2092
2093 * einfo.ads (Is_Known_Non_Null): Minor comment typo fix and rephrasing.
2094
20952004-05-27 Ed Schonberg <schonberg@gnat.com>
2096
2097 * sem_util.adb (Is_Descendent_Of): Examine properly all ancestors in
2098 the case of multiple derivations.
2099 (Is_Object_Reference): For a selected component, verify that the prefix
2100 is itself an object and not a value.
2101
2102 * sem_ch12.adb (Same_Instantiated_Constant): New name for
2103 Same_Instantiated_Entity.
2104 (Same_Instantiated_Variable): Subsidiary to
2105 Check_Formal_Package_Instance, to recognize actuals for in-out generic
2106 formals that are obtained from a previous formal package.
2107 (Instantiate_Subprogram_Body): Emit proper error when
2108 generating code and the proper body of a stub is missing.
2109
2110 * sem_ch4.adb (Remove_Address_Interpretations): If the operation still
2111 has a universal interpretation, do the disambiguation here.
2112
2113 * exp_ch4.adb (Expand_N_Type_Conversion,
2114 Expand_N_Unchecked_Type_Conversion): Special handling when target type
2115 is Address, to avoid typing anomalies when Address is a visible integer
2116 type.
2117
2118 * exp_ch6.adb (Expand_N_Subprogram_Body): Use Is_Descendent_Of_Address
2119 to determine whether a subprogram should not be marked Pure, even when
2120 declared in a pure package.
2121
21222004-05-27 Jose Ruiz <ruiz@act-europe.fr>
2123
2124 * gnat_ugn.texi: Replace pragma Ravenscar by pragma Profile.
2125
2126 * gnat_rm.texi: Replace Max_Entry_Queue_Depth by Max_Entry_Queue_Length
2127 Document No_Dynamic_Attachment, that supersedes No_Dynamic_Interrupts.
2128 Update the documentation about the Ravenscar profile, following the
2129 definition found in AI-249.
2130
2131 * sem_prag.adb: Use FIFO_Within_Priorities and Ceiling_Locking when
2132 setting the Profile (Ravenscar). This must be done in addition to
2133 setting the required restrictions.
2134
2135 * rtsfind.ads: Add the set of operations defined in package
2136 Ada.Interrupts.
2137
2138 * exp_ch6.adb: Check whether we are violating the No_Dynamic_Attachment
2139 restriction.
2140
21412004-05-27 Eric Botcazou <ebotcazou@act-europe.fr>
2142
2143 lang-specs.h: Always require -c or -S and always redirect to /dev/null
2144 if -gnatc or -gnats is passed.
2145
21462004-05-27 Hristian Kirtchev <kirtchev@gnat.com>
2147
2148 * sem_prag.adb (Sig_Flags): A Pragma_Unchecked_Union does not count as
2149 a significant reference. Warnings are now properly emitted when a
2150 discriminated type is not referenced.
2151
2152 * lib-xref.adb (Generate_Reference): A deferred constant completion,
2153 record representation clause or record type discriminant does not
2154 produce a reference to its corresponding entity. Warnings are now
2155 properly emitted when deferred constants and record types are not
2156 referenced.
2157
21582004-05-27 Geert Bosch <bosch@gnat.com>
2159
2160 * Makefile.in: Use long version of libm routines on ia64 gnu/linux.
2161 Fixes ACATS Annex G tests.
2162
21632004-05-27 Robert Dewar <dewar@gnat.com>
2164
2165 * rtsfind.adb (RTU_Loaded): Temporary kludge to get past bug of not
2166 handling WITH
2167
21682004-05-27 Arnaud Charlet <charlet@act-europe.fr>
2169
2170 * s-interr.adb (Server_Task): Take into account case of early return
2171 from sigwait under e.g. linux.
2172
21732004-05-27 Sergey Rybin <rybin@act-europe.fr>
2174
2175 * gnat_ugn.texi: Add description for the new gnatpp options:
2176 -rnb - replace the original source without creating its backup copy
2177 -c0 - do not format comments
2178
0fb2ea01
AC
21792004-05-24 Geert Bosch <bosch@gnat.com>
2180
2181 * a-numaux-x86.adb (Reduce): Reimplement using an approximation of Pi
2182 with 192 bits of precision, sufficient to reduce a double-extended
2183 arguments X with a maximum relative error of T'Machine_Epsilon, for X
2184 in -2.0**32 .. 2.0**32.
2185 (Cos, Sin): Always reduce arguments of 1/4 Pi or larger, to prevent
2186 reduction by the processor, which only uses a 68-bit approximation of
2187 Pi.
2188 (Tan): Always reduce arguments and compute function either using
2189 the processor's fptan instruction, or by dividing sin and cos as needed.
2190
21912004-05-24 Doug Rupp <rupp@gnat.com>
2192
2193 * adaint.c (__gnat_readdir): Cast CRTL function retun value to avoid
2194 gcc error on 32/64 bit VMS.
2195
21962004-05-24 Olivier Hainque <hainque@act-europe.fr>
2197
2198 * init.c (__gnat_error_handler): Handle EEXIST as EACCES for SIGSEGVs,
2199 since this is what we get for stack overflows although not documented
2200 as such.
2201 Document the issues which may require adjustments to our signal
2202 handlers.
2203
22042004-05-24 Ed Schonberg <schonberg@gnat.com>
2205
2206 * inline.adb (Add_Scope_To_Clean): Do not add cleanup actions to the
2207 enclosing dynamic scope if the instantiation is within a generic unit.
2208
22092004-05-24 Arnaud Charlet <charlet@act-europe.fr>
2210
2211 * exp_dbug.ads: Fix typo.
2212
2213 * Makefile.in: s-osinte-linux-ia64.ads was misnamed.
2214 Rename it to its proper name: system-linux-ia64.ads
2215 (stamp-gnatlib1): Remove extra target specific run time files when
2216 setting up the rts directory.
2217
22182004-05-24 Javier Miranda <miranda@gnat.com>
2219
2220 * einfo.ads, einfo.adb (Limited_Views): Removed.
2221 (Limited_View): New attribute that replaces the previous one. It is
2222 now a bona fide package with the limited-view list through the
2223 first_entity and first_private attributes.
2224
2225 * sem_ch10.adb (Install_Private_With_Clauses): Give support to
2226 limited-private-with clause.
2227 (Install_Limited_Withed_Unit): Install the private declarations of a
2228 limited-private-withed package. Update the installation of the shadow
2229 entities according to the new structure (see Build_Limited_Views)
2230 (Build_Limited_Views): Replace the previous implementation of the
2231 limited view by a package entity that references the first shadow
2232 entity plus the first shadow private entity (required for limited-
2233 private-with clause)
2234 (New_Internal_Shadow_Entity): Code cleanup.
2235 (Remove_Limited_With_Clause): Update the implementation to undo the
2236 new work carried out by Build_Limited_Views.
2237 (Build_Chain): Complete documentation.
2238 Replace Ada0Y by Ada 0Y in comments
2239 Minor reformating
2240
2241 * sem_ch3.adb (Array_Type_Declaration): In case of anonymous access
2242 types the level of accessibility depends on the enclosing type
2243 declaration.
2244
2245 * sem_ch8.adb (Find_Expanded_Name): Fix condition to detect shadow
2246 entities. Complete documentation of previous change.
2247
22482004-05-24 Robert Dewar <dewar@gnat.com>
2249
2250 * namet.adb: Minor reformatting
2251 Avoid use of name I (replace by J)
2252 Minor code restructuring
2253
2254 * sem_ch6.adb: Minor reformatting
2255
2256 * lib-writ.adb: Do not set restriction as active if this is a
2257 Restriction_Warning case.
2258
2259 * sem_prag.adb: Reset restriction warning flag if real pragma
2260 restriction encountered.
2261
2262 * s-htable.adb: Minor reformatting
2263 Change rotate count to 3 in Hash (improves hash for small strings)
2264
2265 * 5qsystem.ads: Add comments for type Address (no literals allowed).
2266
2267 * gnat_ugn.texi: Add new section of documentation "Code Generation
2268 Control", which describes the use of -m switches.
2269
22702004-05-24 Eric Botcazou <ebotcazou@act-europe.fr>
2271
a1db9d9c
AC
2272 trans.c (tree_transform) <N_Identifier>: Do the dereference directly
2273 through the DECL_INITIAL for renamed variables.
0fb2ea01 2274
7599f1b0
AC
22752004-05-24 Arnaud Charlet <charlet@act-europe.fr>
2276
2277 * s-osinte-linux-ia64.ads: Renamed system-linux-ia64.ads
2278
c37bb106
AC
22792004-05-19 Joel Brobecker <brobecker@gnat.com>
2280
2281 * exp_dbug.ads: Correct comments concerning handling of overloading,
2282 since we no longer use $ anymore.
2283
22842004-05-19 Sergey Rybin <rybin@act-europe.fr>
2285
2286 * sem_ch10.adb (Optional_Subunit): When loading a subunit, do not
2287 ignore errors if ASIS_Mode is set. This prevents creating ASIS trees
2288 with illegal subunits.
2289
22902004-05-19 Ed Schonberg <schonberg@gnat.com>
2291
2292 * sem_ch6.adb (Check_Following_Pragma): When compiling a subprogram
2293 body with front-end inlining enabled, check whether an inline pragma
2294 appears immediately after the body and applies to it.
2295
2296 * sem_prag.adb (Cannot_Inline): Emit warning if front-end inlining is
2297 enabled and the pragma appears after the body of the subprogram.
2298
b5e792e2
AC
22992004-05-17 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2300
2301 Part of function-at-a-time conversion
2302
2303 * misc.c (adjust_decl_rtl): Deleted.
2304 (LANG_HOOKS_PUSHLEVEL, LANG_HOOKS_POPLEVEL, LANG_HOOKS_SET_BLOCK):
2305 Define.
2306
2307 * gigi.h: (adjust_decl_rtl, kept_level_p, set_block): Deleted.
2308 (add_decl_stmt, add_stmt, block_has_vars): New functions.
2309 (gnat_pushlevel, gnat_poplevel): Renamed from pushlevel and poplevel.
2310
2311 * decl.c (elaborate_expression, maybe_pad_type): Call add_decl_stmt
2312 when making a decl.
2313 (gnat_to_gnu_entity): Likewise.
2314 Use add_stmt to update setjmp buffer.
2315 Set TREE_ADDRESSABLE instead of calling put_var_into_stack and
2316 flush_addressof.
2317 No longer call adjust_decl_rtl.
2318 (DECL_INIT_BY_ASSIGN_P): New macro.
2319 (DECL_STMT_VAR): Likewise.
2320
2321 * trans.c (gigi): Call start_block_stmt to make the outermost
2322 BLOCK_STMT.
2323 (gnat_to_code, gnu_to_gnu, tree_transform, process_decls, process_type):
2324 Call start_block_stmt and end_block_stmt temporarily.
2325 Use gnat_expand_stmt instead of expand_expr_stmt.
2326 (add_decl_stmt): New function.
2327 (tree_transform): Call it.
2328 (add_stmt): Also emit initializing assignment for DECL_STMT if needed.
2329 (end_block_stmt): Set type and NULL_STMT.
2330 (gnat_expand_stmt): Make recursize call instead of calling
2331 expand_expr_stmt.
2332 (gnat_expand_stmt, case DECL_STMT): New case.
2333 (set_lineno_from_sloc): Do nothing if global.
2334 (gnu_block_stmt_node, gnu_block_stmt_free_list): New variables.
2335 (start_block_stmt, add_stmt, end_block_stmt): New functions.
2336 (build_block_stmt): Call them.
2337 (gnat_to_code): Don't expand NULL_STMT.
2338 (build_unit_elab): Rename pushlevel and poplevel to gnat_* and change
2339 args.
2340 (tree_transform): Likewise.
2341 (tree_transform, case N_Null_Statement): Return NULL_STMT.
2342 (gnat_expand_stmt, case NULL_STMT): New case.
2343 (gnat_expand_stmt, case IF_STMT): Allow nested IF_STMT to have no
2344 IF_STMT_TRUE.
2345
2346 * utils2.c (gnat_mark_addressable, case VAR_DECL): Do not set
2347 TREE_ADDRESSABLE.
2348
2349 * utils.c (create_var_decl): Do not call expand_decl or
2350 expand_decl_init.
2351 Set TREE_ADDRESSABLE instead of calling gnat_mark_addressable.
2352 Set DECL_INIT_BY_ASSIGN_P when needed and do not generate MODIFY_EXPR
2353 here.
2354 (struct e_stack): Add chain_next to GTY.
2355 (struct binding_level): Deleted.
2356 (struct ada_binding_level): New struct.
2357 (free_block_chain): New.
2358 (global_binding_level, clear_binding_level): Deleted.
2359 (global_bindings_p): Rework to see if no chain.
2360 (kept_level_p, set_block): Deleted.
2361 (gnat_pushlevel): Renamed from pushlevel and extensive reworked to use
2362 new data structure and work directly on BLOCK node.
2363 (gnat_poplevel): Similarly.
2364 (get_decls): Look at BLOCK_VARS.
2365 (insert_block): Work directly on BLOCK node.
2366 (block_has_var): New function.
2367 (pushdecl): Rework for new binding structures.
2368 (gnat_init_decl_processing): Rename and rework calls to pushlevel and
2369 poplevel.
2370 (build_subprog_body): Likewise.
2371 (end_subprog_body): Likewise; also set up BLOCK in DECL_INITIAL.
2372
2373 * ada-tree.def (DECL_STMT, NULL_STMT): New codes.
2374
2375 * ada-tree.h: (DECL_INIT_BY_ASSIGN_P): New macro.
2376 (DECL_STMT_VAR): Likewise.
2377
23782004-05-17 Robert Dewar <dewar@gnat.com>
2379
2380 * restrict.ads, restrict.adb (Process_Restriction_Synonym): New
2381 procedure
2382
2383 * sem_prag.adb (Analyze_Pragma, case Restrictions): Cleanup handling
2384 of restriction synonyums by using
2385 Restrict.Process_Restriction_Synonyms.
2386
2387 * snames.ads, snames.adb: Add entries for Process_Restriction_Synonym
2388
2389 * s-restri.ads (Tasking_Allowed): Correct missing comment
2390
2391 * s-rident.ads: Add entries for restriction synonyms
2392
2393 * ali.adb: Fix some problems with badly formatted ALI files that can
2394 result in infinite loops.
2395
2396 * s-taprop-lynxos.adb, s-tpopsp-lynxos.adb, s-taprop-tru64.adb,
2397 s-tpopsp-posix-foreign.adb, s-taprop-irix.adb, s-interr-sigaction.adb,
2398 s-taprop-irix-athread.adb, s-taprop-hpux-dce.adb, s-taprop-linux.adb,
2399 s-taprop-dummy.adb, s-interr-dummy.adb, s-taprop-os2.adb,
2400 s-taprop-solaris.adb, s-tpopsp-solaris.adb, s-asthan-vms.adb,
2401 s-inmaop-vms.adb, s-interr-vms.adb, s-taprop-vms.adb,
2402 s-tpopde-vms.adb, s-taprop-mingw.adb, s-interr-vxworks.adb,
2403 s-taprop-vxworks.adb, s-tpopsp-vxworks.adb, s-taprop-posix.adb,
2404 s-tpopsp-posix.adb, s-tratas-default.adb, a-dynpri.adb,
2405 a-tasatt.adb, a-taside.adb, a-taside.ads, exp_attr.adb,
2406 exp_ch9.adb, g-thread.adb, rtsfind.ads, sem_attr.adb,
2407 s-interr.adb, s-interr.ads, s-soflin.ads, s-taasde.adb,
2408 s-taasde.ads, s-taenca.adb, s-taenca.ads, s-taprop.ads,
2409 s-tarest.adb, s-tarest.ads, s-tasdeb.adb, s-tasdeb.ads,
2410 s-tasini.adb, s-tasini.ads, s-taskin.adb, s-taskin.ads,
2411 s-tasque.adb, s-tasque.ads, s-tasren.adb, s-tasren.ads,
2412 s-tassta.adb, s-tassta.ads, s-tasuti.adb, s-tasuti.ads,
2413 s-tataat.adb, s-tataat.ads, s-tpinop.adb, s-tpinop.ads,
2414 s-tpoben.adb, s-tpobop.adb, s-tpobop.ads, s-tporft.adb,
2415 s-tposen.adb, s-tposen.ads, s-tratas.adb, s-tratas.ads: Change Task_ID
2416 to Task_Id (minor cleanup).
2417
24182004-05-17 Vincent Celier <celier@gnat.com>
2419
2420 * g-os_lib.adb (Normalize_Pathname.Final_Value): Remove trailing
2421 directory separator.
2422
2423 * prj-proc.adb (Recursive_Process): Inherit attribute Languages from
2424 project being extended, if Languages is not declared in extending
2425 project.
2426
24272004-05-17 Javier Miranda <miranda@gnat.com>
2428
2429 * sem_ch10.adb (Install_Limited_Withed_Unit): Do not install the
2430 limited view of a visible sibling.
2431
9bc856dd
AC
24322004-05-14 Robert Dewar <dewar@gnat.com>
2433
2434 * gnat_ugn.texi: Minor change to -gnatS documentation
2435
2436 * sprint.adb: Remove some instances of Assert (False) and for this
2437 purpose replace them by output of a ??? string.
2438
2439 * checks.adb, exp_aggr.adb, sem_elim.adb: Remove useless pragma
2440 Assert (False).
2441
2442 * lib-writ.adb, lib-load.adb, lib.ads, lib.adb: Remove Dependent_Unit
2443 flag processing. This was suppressing required dependencies in
2444 No_Run_Time mode and is not needed since the binder does not generate
2445 references for things in libgnat anyway.
2446
2447 * sem_ch3.adb (Access_Type_Declaration): Reorganize code to avoid GCC
2448 warning.
2449
24502004-05-14 Thomas Quinot <quinot@act-europe.fr>
2451
2452 * gnat_ugn.texi: Document AIX-specific issue with initialization of
2453 resolver library.
2454
2455 * exp_ch4.adb (Insert_Dereference_Action): Do not generate dereference
2456 action for the case of an actual parameter in an init proc call.
2457
24582004-05-14 Ed Schonberg <schonberg@gnat.com>
2459
2460 * sem_ch4.adb (Analyze_Selected_Component): If prefix is a protected
2461 subtype, check visible entities in base type.
2462
2463 * exp_ch7.adb (Clean_Simple_Protected_Objects): Do not generate cleanup
2464 actions if the object is a renaming.
2465
2466 * sem_ch12.adb (Same_Instantiated_Entity): Predicate for
2467 Check_Formal_Package_Instance, to determine more precisely when the
2468 formal and the actual denote the same entity.
2469
24702004-05-14 Javier Miranda <miranda@gnat.com>
2471
2472 * par-ch10.adb (P_Context_Clause): Complete documentation on AI-262
2473
2474 * sem_ch10.adb (Analyze_With_Clause): After analyzed, the entity
2475 corresponding to a private_with must be removed from visibility; it
2476 will be made visible later, just before we analyze the private part of
2477 the package.
2478 (Check_Private_Child_Unit): Allow private_with clauses in public
2479 siblings.
2480 (Install_Siblings): Make visible the private entities of private-withed
2481 siblings.
2482 (Install_Withed_Unit): Do not install the private withed unit if we
2483 are compiling a package declaration and the Private_With_OK flag was
2484 not set by the caller. These declarations will be installed later,
2485 just before we analyze the private part of the package.
2486
2487 * sem_ch3.adb (Analyze_Object_Declaration): In case of errors detected
2488 during the evaluation of the expression that initializes the object,
2489 decorate it with the expected type to avoid cascade errors.
2490 Code cleanup.
2491
2492 * sem_ch6.adb (Analyze_Subprogram_Body): If we are compiling a library
2493 subprogram we have to install the private_with clauses after its
2494 specification has been analyzed (as documented in AI-262.TXT).
2495
2496 * sem_ch8.adb (Has_Private_With): New function. Determines if the
2497 current compilation unit has a private with on a given entity.
2498 (Find_Direct_Name): Detect the Beaujolais problem described in
2499 AI-262.TXT
2500
2501 * sem_utils.ads, sem_util.adb (Is_Ancestor_Package): New function. It
2502 provides the functionality of the function Is_Ancestor that was
2503 previously available in sem_ch10. It has been renamed to avoid
2504 overloading.
2505
2506 * sprint.adb (Sprint_Node_Actual): Print limited_with clauses
2507
25082004-05-14 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2509
2510 * utils.c (build_vms_descriptor): Use SImode pointers.
2511
25122004-05-14 Vasiliy Fofanov <fofanov@act-europe.fr>
2513
2514 * gnat_ugn.texi: Revised chapter "GNAT and Libraries".
2515
25162004-05-14 GNAT Script <nobody@gnat.com>
2517
2518 * Make-lang.in: Makefile automatically updated
2519
084c663c
AC
25202004-05-14 Arnaud Charlet <charlet@act-europe.fr>
2521
2522 Renaming of target specific files for clarity
2523
2524 * Makefile.in: Rename GNAT target specific files.
2525
2526 * 31soccon.ads, 31soliop.ads 35soccon.ads, 3asoccon.ads,
2527 3bsoccon.ads, 3gsoccon.ads, 3hsoccon.ads, 3psoccon.ads,
2528 3ssoccon.ads, 3ssoliop.ads, 3veacodu.adb, 3vexpect.adb,
2529 3vsoccon.ads, 3vsocthi.adb, 3vsocthi.ads, 3vtrasym.adb,
2530 3wsoccon.ads, 3wsocthi.adb, 3wsocthi.ads, 3wsoliop.ads,
2531 3zsoccon.ads, 3zsocthi.adb, 3zsocthi.ads, 41intnam.ads,
2532 42intnam.ads, 45intnam.ads, 4aintnam.ads, 4cintnam.ads,
2533 4gintnam.ads, 4hexcpol.adb, 4hintnam.ads, 4lintnam.ads,
2534 4nintnam.ads, 4ointnam.ads, 4onumaux.ads, 4pintnam.ads,
2535 4sintnam.ads, 4vcaldel.adb, 4vcalend.adb, 4vcalend.ads,
2536 4vintnam.ads, 4wcalend.adb, 4wexcpol.adb, 4wintnam.ads,
2537 4zintnam.ads, 4znumaux.ads, 4zsytaco.adb, 4zsytaco.ads,
2538 51osinte.adb, 51osinte.ads, 51system.ads,
2539 52osinte.adb, 52osinte.ads, 53osinte.ads, 54osinte.ads,
2540 55osinte.adb, 55osinte.ads, 55system.ads, 56osinte.adb,
2541 56osinte.ads, 56system.ads, 56taprop.adb, 56taspri.ads,
2542 56tpopsp.adb, 57system.ads, 58system.ads,
2543 5amastop.adb, 5aml-tgt.adb, 5aosinte.adb, 5aosinte.ads,
2544 5asystem.ads, 5ataprop.adb, 5atasinf.ads, 5ataspri.ads,
2545 5atpopsp.adb, 5avxwork.ads, 5bml-tgt.adb, 5bosinte.adb,
2546 5bosinte.ads, 5bsystem.ads, 5cosinte.ads, 5csystem.ads,
2547 5dsystem.ads, 5esystem.ads, 5fintman.adb, 5fosinte.adb,
2548 5fosinte.ads, 5fsystem.ads, 5ftaprop.adb, 5ftasinf.ads,
2549 5ginterr.adb, 5gintman.adb, 5gmastop.adb, 5gml-tgt.adb,
2550 5gosinte.ads, 5gproinf.adb, 5gproinf.ads, 5gsystem.ads,
2551 5gtaprop.adb, 5gtasinf.adb, 5gtasinf.ads, 5gtpgetc.adb,
2552 5hml-tgt.adb, 5hosinte.adb, 5hosinte.ads, 5hparame.ads,
2553 5hsystem.ads, 5htaprop.adb, 5htaspri.ads, 5htraceb.adb,
2554 5iosinte.adb, 5iosinte.ads, 5itaprop.adb, 5itaspri.ads,
2555 5ksystem.ads, 5kvxwork.ads, 5lml-tgt.adb, 5losinte.ads,
2556 5lparame.adb, 5lsystem.ads, 5msystem.ads, 5mvxwork.ads,
2557 5ninmaop.adb, 5nintman.adb, 5nosinte.ads, 5nsystem.ads,
2558 5ntaprop.adb, 5ntaspri.ads, 5ointerr.adb, 5omastop.adb,
2559 5oosinte.adb, 5oosinte.ads, 5oosprim.adb, 5oparame.adb,
2560 5osystem.ads, 5otaprop.adb, 5otaspri.ads, 5posinte.ads,
2561 5posprim.adb, 5psystem.ads, 5pvxwork.ads, 5sintman.adb,
2562 5sml-tgt.adb, 5sosinte.adb, 5sosinte.ads, 5sosprim.adb,
2563 5sparame.adb, 5ssystem.ads, 5staprop.adb, 5stasinf.adb,
2564 5stasinf.ads, 5staspri.ads, 5stpopsp.adb, 5svxwork.ads,
2565 5tosinte.ads, 5usystem.ads, 5vasthan.adb, 5vdirval.adb,
2566 5vinmaop.adb, 5vinterr.adb, 5vintman.adb, 5vintman.ads,
2567 5vmastop.adb, 5vml-tgt.adb, 5vosinte.adb, 5vosinte.ads,
2568 5vosprim.adb, 5vosprim.ads, 5vparame.ads, 5vsymbol.adb,
2569 5vsystem.ads, 5vtaprop.adb, 5vtaspri.ads, 5vtpopde.adb,
2570 5vtpopde.ads, 5vtraent.adb, 5vtraent.ads, 5vvaflop.adb,
2571 5wdirval.adb, 5wgloloc.adb, 5wintman.adb, 5wmemory.adb,
2572 5wml-tgt.adb, 5wosinte.ads, 5wosprim.adb, 5wsystem.ads,
2573 5wtaprop.adb, 5wtaspri.ads, 5xparame.ads, 5xsystem.ads,
2574 5xvxwork.ads, 5yparame.ads, 5ysystem.ads, 5zinterr.adb,
2575 5zintman.adb, 5zintman.ads, 5zml-tgt.adb, 5zosinte.adb,
2576 5zosinte.ads, 5zosprim.adb, 5zparame.ads, 5zstchop.adb,
2577 5zsystem.ads, 5ztaprop.adb, 5ztaspri.ads, 5ztfsetr.adb,
2578 5ztpopsp.adb, 6vcpp.adb, 6vcstrea.adb, 6vinterf.ads,
2579 7sinmaop.adb, 7sintman.adb, 7sosinte.adb, 7sosprim.adb,
2580 7staprop.adb, 7staspri.ads, 7stfsetr.adb, 7stpopsp.adb,
2581 7straceb.adb, 7straces.adb, 7strafor.adb, 7strafor.ads,
2582 7stratas.adb, 86numaux.adb, 86numaux.ads: Replaced by files below.
2583
2584 * a-caldel-vms.adb, a-calend-mingw.adb, a-calend-vms.adb,
2585 a-calend-vms.ads, a-dirval-mingw.adb, a-dirval-vms.adb,
2586 a-excpol-abort.adb, a-excpol-interix.adb, a-intnam-aix.ads,
2587 a-intnam-dummy.ads, a-intnam-freebsd.ads, a-intnam-hpux.ads,
2588 a-intnam-interix.ads, a-intnam-irix.ads, a-intnam-linux.ads,
2589 a-intnam-lynxos.ads, a-intnam-mingw.ads, a-intnam-os2.ads,
2590 a-intnam-solaris.ads, a-intnam-tru64.ads, a-intnam-unixware.ads,
2591 a-intnam-vms.ads, a-intnam-vxworks.ads, a-numaux-libc-x86.ads,
2592 a-numaux-vxworks.ads, a-numaux-x86.adb, a-numaux-x86.ads,
2593 a-sytaco-vxworks.adb, a-sytaco-vxworks.ads, g-eacodu-vms.adb,
2594 g-expect-vms.adb, g-soccon-aix.ads, g-soccon-freebsd.ads,
2595 g-soccon-hpux.ads, g-soccon-interix.ads, g-soccon-irix.ads,
2596 g-soccon-mingw.ads, g-soccon-solaris.ads, g-soccon-tru64.ads,
2597 g-soccon-unixware.ads, g-soccon-vms.adb, g-soccon-vxworks.ads,
2598 g-socthi-mingw.adb, g-socthi-mingw.ads, g-socthi-vms.adb,
2599 g-socthi-vms.ads, g-socthi-vxworks.adb, g-socthi-vxworks.ads,
2600 g-soliop-mingw.ads, g-soliop-solaris.ads, g-soliop-unixware.ads,
2601 g-trasym-vms.adb, i-cpp-vms.adb, i-cstrea-vms.adb,
2602 interfac-vms.ads, mlib-tgt-aix.adb, mlib-tgt-hpux.adb,
2603 mlib-tgt-irix.adb, mlib-tgt-linux.adb, mlib-tgt-mingw.adb,
2604 mlib-tgt-solaris.adb, mlib-tgt-tru64.adb, mlib-tgt-vms.adb,
2605 mlib-tgt-vxworks.adb, s-asthan-vms.adb, s-gloloc-mingw.adb,
2606 s-inmaop-dummy.adb, s-inmaop-posix.adb, s-inmaop-vms.adb,
2607 s-interr-dummy.adb, s-interr-sigaction.adb, s-interr-vms.adb,
2608 s-interr-vxworks.adb, s-intman-dummy.adb, s-intman-irix.adb,
2609 s-intman-irix-athread.adb, s-intman-mingw.adb, s-intman-posix.adb,
2610 s-intman-solaris.adb, s-intman-vms.adb, s-intman-vms.ads,
2611 s-intman-vxworks.adb, s-intman-vxworks.ads, s-mastop-irix.adb,
2612 s-mastop-tru64.adb, s-mastop-vms.adb, s-mastop-x86.adb,
2613 s-memory-mingw.adb, s-osinte-aix.adb, s-osinte-aix.ads,
2614 s-osinte-aix-fsu.ads, s-osinte-dummy.ads, s-osinte-freebsd.adb,
2615 s-osinte-freebsd.ads, s-osinte-fsu.adb, s-osinte-hpux.ads,
2616 s-osinte-hpux-dce.adb, s-osinte-hpux-dce.ads, s-osinte-interix.ads,
2617 s-osinte-irix.adb, s-osinte-irix.ads, s-osinte-irix-athread.ads,
2618 s-osinte-linux.ads, s-osinte-linux-fsu.ads, s-osinte-linux-ia64.ads,
2619 s-osinte-lynxos-3.adb, s-osinte-lynxos-3.ads, s-osinte-lynxos.adb,
2620 s-osinte-lynxos.ads, s-osinte-mingw.ads, s-osinte-os2.adb,
2621 s-osinte-os2.ads, s-osinte-posix.adb, s-osinte-solaris.adb,
2622 s-osinte-solaris.ads, s-osinte-solaris-fsu.ads,
2623 s-osinte-solaris-posix.ads, s-osinte-tru64.adb, s-osinte-tru64.ads,
2624 s-osinte-unixware.adb, s-osinte-unixware.ads, s-osinte-vms.adb,
2625 s-osinte-vms.ads, s-osinte-vxworks.adb,
2626 s-osinte-vxworks.ads, s-osprim-mingw.adb,
2627 s-osprim-os2.adb, s-osprim-posix.adb, s-osprim-solaris.adb,
2628 s-osprim-unix.adb, s-osprim-vms.adb, s-osprim-vms.ads,
2629 s-osprim-vxworks.adb, s-parame-ae653.ads, s-parame-hpux.ads,
2630 s-parame-linux.adb, s-parame-os2.adb, s-parame-solaris.adb,
2631 s-parame-vms.ads, s-parame-vms-restrict.ads, s-parame-vxworks.ads,
2632 s-proinf-irix-athread.adb, s-proinf-irix-athread.ads,
2633 s-stchop-vxworks.adb, s-taprop-dummy.adb,
2634 s-taprop-hpux-dce.adb, s-taprop-irix.adb,
2635 s-taprop-irix-athread.adb, s-taprop-linux.adb, s-taprop-lynxos.adb,
2636 s-taprop-mingw.adb, s-taprop-os2.adb, s-taprop-posix.adb,
2637 s-taprop-solaris.adb, s-taprop-tru64.adb, s-taprop-vms.adb,
2638 s-taprop-vxworks.adb, s-tasinf-irix.ads, s-tasinf-irix-athread.adb,
2639 s-tasinf-irix-athread.ads, s-tasinf-solaris.adb, s-tasinf-solaris.ads,
2640 s-tasinf-tru64.ads, s-taspri-dummy.ads, s-taspri-hpux-dce.ads,
2641 s-taspri-linux.ads, s-taspri-lynxos.ads, s-taspri-mingw.ads,
2642 s-taspri-os2.ads, s-taspri-posix.ads, s-taspri-solaris.ads,
2643 s-taspri-tru64.ads, s-taspri-vms.ads, s-taspri-vxworks.ads,
2644 s-tfsetr-default.adb, s-tfsetr-vxworks.adb, s-tpopde-vms.adb,
2645 s-tpopde-vms.ads, s-tpopsp-lynxos.adb, s-tpopsp-posix.adb,
2646 s-tpopsp-posix-foreign.adb, s-tpopsp-solaris.adb, s-tpopsp-vxworks.adb,
2647 s-traceb-hpux.adb, s-traceb-mastop.adb, s-traces-default.adb,
2648 s-traent-vms.adb, s-traent-vms.ads, s-trafor-default.adb,
2649 s-trafor-default.ads, s-tratas-default.adb, s-vaflop-vms.adb,
2650 s-vxwork-alpha.ads, s-vxwork-m68k.ads, s-vxwork-mips.ads,
2651 s-vxwork-ppc.ads, s-vxwork-sparcv9.ads, s-vxwork-xscale.ads,
2652 symbols-vms.adb, system-aix.ads, system-freebsd-x86.ads,
2653 system-hpux.ads, system-interix.ads, system-irix-n32.ads,
2654 system-irix-o32.ads, system-linux-x86_64.ads,
2655 system-linux-x86.ads, system-lynxos-ppc.ads, system-lynxos-x86.ads,
2656 system-mingw.ads, system-os2.ads, system-solaris-sparc.ads,
2657 system-solaris-sparcv9.ads, system-solaris-x86.ads, system-tru64.ads,
2658 system-unixware.ads, system-vms.ads, system-vms-zcx.ads,
2659 system-vxworks-alpha.ads, system-vxworks-m68k.ads,
2660 system-vxworks-mips.ads, system-vxworks-ppc.ads,
2661 system-vxworks-sparcv9.ads, system-vxworks-xscale.ads: Replace files
2662 above.
2663
90afe2c9
ZW
26642004-05-13 Zack Weinberg <zack@codesourcery.com>
2665
2666 * trans.c (gnat_stabilize_reference_1): Remove case 'b'.
2667
6de9cd9a
DN
26682004-05-13 Diego Novillo <dnovillo@redhat.com>
2669
2670 Merge from tree-ssa-20020619-branch.
2671
2672 * config-lang.in (boot_language, build_by_default): Set
2673 to no.
2674 * utils.c (unchecked_convert): Use OEP_ONLY_CONST.
2675 (max_size): Add static chain op for call_expr.
2676
f5657d67
RS
26772004-05-12 Richard Sandiford <rsandifo@redhat.com>
2678
2679 PR target/15331
2680 * 5gmastop.adb (Roff): Choose between '4' and '0', not '4' and ' '.
2681
4413b636
RS
26822004-05-11 Roger Sayle <roger@eyesopen.com>
2683
2684 * utils.c (max_size): Use MIN_EXPR to find the minimum value of a
2685 COND_EXPR.
2686
5950a3ac
AC
26872004-05-10 Doug Rupp <rupp@gnat.com>
2688
2689 * 5qsystem.ads: Remove Short_Address subtype declaration. Moved to
2690 system.aux_dec.
2691
2692 * s-auxdec.ads: Add Short_Address subtype (moved here from System).
2693
2694 * Makefile.in: [VMS]: Add translation for 5qauxdec.ads.
2695
2696 * init.c: [VMS] Macroize LIB$ calls for IA64 and Alpha.
2697 Fixes undefined symbols in IA64 gnatlib.
2698
2699 * 5vinmaop.adb: Reference s-auxdec for Short_Address.
2700
2701 * 5xsystem.ads, 5vsystem.ads: Back out last change (addition of subtype
2702 Short_Address). This will be moved to system.auxdec.
2703
27042004-05-10 Thomas Quinot <quinot@act-europe.fr>
2705
2706 * sem_util.adb: Replace test for presence of a node that is always
2707 present with a call to Discard_Node.
2708
2709 * sem_ch10.adb (Analyze_Compilation_Unit): Remove superfluous call to
2710 Analyze on the library unit node after generation of distribution stub
2711 constructs. The call was a no-op because Unit_Node has already been
2712 Analyzed, and the tree fragments for the distribution stubs are
2713 analyzed as they are inserted in Exp_Dist.
2714 Update comment regarding to distribution stubs to reflect that we
2715 do not generate stub in separate files anymore.
2716
2717 * einfo.ads: Clarify the fact that a tagged private type has the
2718 E_Record_Type_With_Private Ekind.
2719
2720 * erroutc.adb: Minor reformatting
2721
2722 * erroutc.ads (Max_Msg_Length): Increase to cover possible larger
2723 values if line length is increased using -gnatyM (noticed during code
2724 reading).
2725
2726 * eval_fat.adb: Minor reformatting
2727 Put spaces around exponentiation operator
2728
27292004-05-10 Ed Schonberg <schonberg@gnat.com>
2730
2731 PR ada/15005
2732 * sem_util.adb (Is_Dependent_Component_Of_Mutable_Object): If prefix
2733 has been rewritten as an explicit dereference, retrieve type of
2734 original node to check for possibly unconstrained record type.
2735
27362004-05-10 Ed Schonberg <schonberg@gnat.com>
2737
2738 * exp_ch7.adb (Check_Visibly_Controlled): If given operation is not
2739 overriding, use the operation of the parent unconditionally.
2740
2741 * sem_ch4.adb (Remove_Address_Interpretations): Remove address
2742 operation when either operand is a literal, to avoid further
2743 ambiguities.
2744
2745 * sem_ch6.adb (New_Overloaded_Entity): If new entity is inherited and
2746 overridden by a previous explicit declaration, mark the previous entity
2747 as overriding.
2748
2749 * sem_disp.adb (Check_Dispatching_Operation): New predicate
2750 Is_Visibly_Controlled, to determine whether a declaration of a
2751 primitive control operation for a derived type overrides an inherited
2752 one. Add warning if the explicit declaration does not override.
2753
27542004-05-10 Vincent Celier <celier@gnat.com>
2755
2756 * gnatls.adb (Gnatls): Initialize Snames, to avoid assertion error in
2757 some cases when the sources are no longer present.
2758
2759 * make.adb (Collect_Arguments): Fail if an external source, not part
2760 of any project need to be compiled, when switch -x has not been
2761 specified.
2762
2763 * makeusg.adb: Document new switch -x
2764
2765 * opt.ads (External_Unit_Compilation_Allowed): New Boolean flag,
2766 defaulted to False.
2767
2768 * switch-m.adb (Scan_Make_Switches): New switch -x
2769
2770 * vms_data.ads: Add VMS qualifier /NON_PROJECT_UNIT_COMPILATION for
2771 gnatmake switch -x.
2772
2773 * gnat_ugn.texi: Document new gnatmake switch -x
2774
27752004-05-10 Eric Botcazou <ebotcazou@act-europe.fr>
2776
2777 * misc.c (gnat_init_options): Set flag_zero_initialized_in_bss to 0.
2778
2779 * utils.c (create_var_decl): Do not modify the DECL_COMMON flag.
2780 (process_attributes): Likewise.
2781
27822004-05-10 Joel Brobecker <brobecker@gnat.com>
2783
2784 * s-inmaop.ads: Fix spelling mistake in one of the comments.
2785
27862004-05-10 Robert Dewar <dewar@gnat.com>
2787
2788 * gnat_ugn.texi: Document that for config pragma files, the maximum
2789 line length is always 32767.
2790
2791 * gnat_rm.texi: For pragma Eliminate, note that concatenation of string
2792 literals is now allowed.
2793
2794 * gnat-style.texi: Remove statement about splitting long lines before
2795 an operator rather than after, since we do not follow this rule at all.
2796 Clarify rule (really lack of rule) for spaces around exponentiation
2797
2798 * sem_elim.adb: Allow concatenation of string literals as well as a
2799 single string literal for pragma arguments.
2800
2801 * sem_prag.ads, sem_prag.adb: (Is_Config_Static_String): New function
2802
2803 * a-textio.adb (Terminate_Line): Do not add line feed if nothing
2804 written for append case.
2805
2806 * frontend.adb: Changes to avoid checking max line length in config
2807 pragma files.
2808
2809 * g-os_lib.ads: Minor reformatting
2810
2811 * mlib-utl.adb: Do not define Max_Line_Length locally (definition was
2812 wrong in any case. Instead use standard value. Noticed during code
2813 reading.
2814
2815 * opt.ads (Max_Line_Length): New field, used to implement removal of
2816 limitation on length of lines when scanning config pragma files.
2817
2818 * osint.ads, prj-dect.adb, prj-strt.adb, prj-tree.adb,
2819 makeutl.ads, makeutl.adb: Minor reformatting
2820
2821 * scn.adb: Do not check line length while scanning config pragma files
2822 Do not check line length while scanning out license information
2823
2824 * scng.adb: Changes to avoid line length checks while parsing config
2825 pragma files.
2826
28272004-05-10 GNAT Script <nobody@gnat.com>
2828
2829 * Make-lang.in: Makefile automatically updated
2830
48664302
AC
28312004-05-05 Arnaud Charlet <charlet@act-europe.fr>
2832
2833 * osint.adb (Find_Program_Name): Fix handling of VMS version
2834 number.
2835
aa720a54
AC
28362004-05-05 Emmanuel Briot <briot@act-europe.fr>
2837
2838 * g-os_lib.ads (Invalid_Time): New constant
2839
2840 * adaint.h, adaint.c (__gnat_file_time_name, __gnat_file_time_fd): Now
2841 return OS_Time instead of time_t to match what is imported by Ada.
2842 Now return -1 if the file doesn't exist, instead of a random value
2843
28442004-05-05 Robert Dewar <dewar@gnat.com>
2845
2846 * usage.adb: Add line for -gnatR?s switch
2847
2848 * sem_ch13.adb, exp_ch2.adb: Minor reformatting
2849
2850 * g-regpat.ads, g-regpat.adb: Add documentation on handling of Size
2851 and for Match (Data_First, Data_last)
2852
2853 * lib-writ.adb (Write_With_Lines): Ensure that correct index number is
2854 written when we are dealing with multi-unit files.
2855
28562004-05-05 Jerome Guitton <guitton@act-europe.fr>
2857
2858 * Makefile.in: Remove unused targets and variables.
2859
28602004-05-05 Vincent Celier <celier@gnat.com>
2861
2862 * switch-m.adb: New gnatmake switch -eI
2863
2864 * vms_data.ads: Add VMS equivalents of new gnatclean swith -innn and
2865 of new gnatmake switch -eInnn.
2866
2867 * makegpr.adb: Take into account new parameters Index and Src_Index in
2868 Prj.Util.
2869
2870 * clean.adb: Implement support for multi-unit sources, including new
2871 switch -i.
2872
2873 * gnatcmd.adb (GNATCmd): Call Prj.Util.Value_Of with new parameter
2874 Src_Index.
2875
2876 * make.ads, make.adb (Insert_Q): New parameter Index, defaulted to 0
2877 (Extract_From_Q): New out parameter Index
2878 (Mark, Is_Marked): Subprograms moved to Makeutl
2879 (Switches_Of): New parameter Source_Index
2880 (Add_Switch): New parameter Index
2881 (Check): New parameter Source_Index
2882 (Collect_Arguments): New parameter Source_Index
2883 (Collect_Arguments_And_Compile): New parameter Source_Index
2884 (Compile): New parameter Source_Index
2885 Put subprograms in alphabetical order
2886 Add support for multi-source sources, including in project files.
2887
2888 * makeutl.ads, makeutl.adb (Unit_Index_Of): New function
2889 (Mark, Is_Marked, Delete_All_Marks): New subprograms, moved from
2890 Make.
2891
2892 * makeusg.adb: New gnatmake switch -eInnn
2893
2894 * mlib-prj.adb (Build_Library): Add new parameter Src_Index to call to
2895 Prj.Util.Value_Of.
2896
2897 * opt.ads (Main_Index): New variable, defaulted to 0.
2898
2899 * osint.ads, osinte.adb (Add_File): New parameter Index
2900 (Current_Source_Index): New function
2901
2902 * prj.adb: Take into account new components Index and Src_Index
2903
2904 * prj.ads (String_Element): New component Index
2905 (Variable_Value): New component Index
2906 (Array_Element): New component Src_Index
2907
2908 * prj-attr.adb: Indicate that optional index may be specified for
2909 attributes Main, Executable, Spec, Body and some of Switches.
2910
2911 * prj-attr.ads (Attribute_Kind): New values for optional indexes
2912 (Attribute_Record): New component Optional_Index
2913
2914 * prj-com.ads (File_Name_Data): New component Index
2915
2916 * prj-dect.adb (Parse_Attribute_Declaration): Process optional index
2917
2918 * prj-env.adb (Put): Output optional index
2919
2920 * prj-makr.adb: Put indexes for multi-unit sources in SFN pragmas and
2921 attributes Spec and Body.
2922
2923 * prj-nmsc.adb: Process optional indexes
2924
2925 * prj-pp.adb: Ouput "at" for optional indexes
2926
2927 * prj-proc.adb: Take into account optional indexes
2928
2929 * prj-strt.ads, prj-strt.adb (Terms): New Boolean parameter
2930 Optional_Index. For string literal,
2931 process optional index when Optional_Index is True.
2932 (Parse_Expresion): New Boolean parameter Optional_Index
2933
2934 * prj-tree.ads, prj-tree.adb (Source_Index_Of): New function
2935 (Set_Source_Index_Of): New procedure
2936
2937 * prj-util.adb (Executable_Of, Value_Of): Take into account optional
2938 index.
2939
2940 * prj-util.ads (Executable_Of): New parameter Index
2941 (Value_Of (Name_Id, Array_Element_Id) returning Variable_Value):
2942 New parameter Src_Index, defaulted to 0.
2943
29442004-05-05 Ed Schonberg <schonberg@gnat.com>
2945
2946 PR ada/15257
2947 * sem_ch3.adb (Access_Definition): If this is an access parameter
2948 whose designated type is imported through a limited_with clause, do
2949 not add the enclosing subprogram to the list of private dependents of
2950 the type.
2951
29522004-05-05 Ed Schonberg <schonberg@gnat.com>
2953
2954 PR ada/15258
2955 * sem_ch6.adb (Base_Types_Match): True if one type is imported through
2956 a limited_with clause, and the other is its non-limited view.
2957
29582004-05-05 Thomas Quinot <quinot@act-europe.fr>
2959
2960 * cstand.adb (Create_Standard): Initialize Stand.Boolean_Literals.
2961
90afe2c9 2962 * exp_attr.adb, exp_ch5.adb, exp_ch9.adb, exp_disp.adb,
aa720a54
AC
2963 exp_fixd.adb, sem_attr.adb, sem_dist.adb, sem_util.adb: Use
2964 Stand.Boolean_Literals to produce references to entities
2965 Standard_False and Standard_True from compile-time computed boolean
2966 values.
2967
2968 * stand.ads (Boolean_Literals): New variable, provides the entity
2969 values for False and True, for use by the expander.
2970
29712004-05-05 Doug Rupp <rupp@gnat.com>
2972
2973 * 5vinmaop.adb, 5[vx]system.ads: Add Short_Address subtype
2974 5vinmaop.adb: Unchecked convert Short_Address vice Address
2975
2976 * adaint.c, raise.c: Caste CRTL function return value
2977 to avoid gcc error on 32/64 bit IVMS.
2978
2979 * Makefile.in [VMS]: Use iar archiver if host = Alpha/VMS and
2980 target = IA64/VMS.
2981
2982 * init.c[VMS]: Only call Alpha specific __gnat_error_prehandler IN_RTS.
2983
2984 * 5qsystem.ads (Address): Declare as Long_Integer
2985 (Short_Address): Declare as 32 bit subtype of Address
2986 Declare abstract address operations to avoid gratuitous ambiguities.
2987
29882004-05-05 Jose Ruiz <ruiz@act-europe.fr>
2989
2990 * gnat_rm.texi: Use the new restriction Simple_Barriers (AI-249)
2991 instead of the old Boolean_Entry_Barriers.
2992 Ditto for No_Task_Attributes_Package instead of No_Task_Attributes.
2993
29942004-05-05 GNAT Script <nobody@gnat.com>
2995
2996 * Make-lang.in: Makefile automatically updated
2997
1ab2888d
AC
29982004-05-03 Arnaud Charlet <charlet@act-europe.fr>
2999
3000 * 50system.ads, 59system.ads, s-thread.ads: Removed, no longer used.
3001
9f4fd324
AC
30022004-05-03 Olivier Hainque <hainque@act-europe.fr>
3003
3004 PR ada/15152
3005
3006 * exp_ch2.adb (Expand_Current_Value): Leave Machine_Code Asm arguments
3007 alone. Replacing object references by literals is inappropriate in a
3008 so low level context.
3009
30102004-05-03 Arnaud Charlet <charlet@act-europe.fr>
3011
3012 * a-exexpr.adb: Add comments
3013
30142004-05-03 Joel Brobecker <brobecker@gnat.com>
3015
3016 * a-tags.adb (Tag_Table): Add Index_Check pragma Suppress. Allows us to
3017 declare the Ancestor_Tags array in Type_Specific_Data with a small size
3018 without risking a bounds check error when accessing one of its
3019 components.
3020 (Type_Specific_Data): Define Ancestor_Tags as a small array.
3021 This prevents us from hitting a limitation during the debug info
3022 generation when using stabs.
3023
3024 * a-tags.adb (Dispatch_Table): Define the Prims_Ptr component as a
3025 small array.
3026 This prevents us from hitting a limitation during the debug info
3027 generation when using stabs.
3028
30292004-05-03 Eric Botcazou <ebotcazou@act-europe.fr>
3030
3031 lang-specs.h: Remove -gnatz* from specs.
3032
30332004-05-03 Vincent Celier <celier@gnat.com>
3034
3035 * gprmake.adb, makegpr.ads, makegpr.adb: New files.
3036
3037 * Make-lang.in, Makefile.in: Add gprmake
3038
30392004-05-03 Thomas Quinot <quinot@act-europe.fr>
3040
3041 * sem_aggr.adb: Fix typo in comment.
3042
30432004-05-03 Robert Dewar <dewar@gnat.com>
3044
3045 * make.adb: Minor reformatting
3046
3047 * rtsfind.ads, rtsfind.adb: (RTU_Loaded): New function
3048
3049 * sem_attr.adb (Eval_Attribute, case Type_Class): Fix check for address
3050 so that it works when address is not a private type.
3051
3052 * sem_ch13.adb (Check_Expr_Constants, case N_Integer_Literal): Deal
3053 properly with rewritten unchecked conversions. This prevents
3054 order-of-elaboration issues that can otherwise arise.
3055 (Minimum_Size): Don't check size of access types under VMS
3056
3057 * sem_ch4.adb (Remove_Address_Interpretation): New circuit to remove
3058 interpretations of integer literals as type System.Address.
3059
3060 * sem_util.ads, sem_util.adb (Is_Descendent_Of_Address): New function
3061 (Is_Descendent_Of): New function
3062
30632004-05-03 Jose Ruiz <ruiz@act-europe.fr>
3064
3065 * sem_prag.adb: Boolean_Entry_Barriers is a synonym of Simple_Barriers.
3066 Max_Entry_Queue_Depth is a synonym of Max_Entry_Queue_Length.
3067 No_Dynamic_Interrupts is a synonym of No_Dynamic_Attachment.
3068
3069 * sem_res.adb: Use the new restriction Max_Entry_Queue_Length instead
3070 of the old Max_Entry_Queue_Depth.
3071
3072 * snames.adb: Boolean_Entry_Barriers is a synonym of Simple_Barriers.
3073 Max_Entry_Queue_Depth is a synonym of Max_Entry_Queue_Length
3074 No_Dynamic_Interrupts is a synonym of No_Dynamic_Attachment
3075
3076 * snames.ads: New entry for proper handling of Boolean_Entry_Barriers.
3077 New entry for proper handling of Max_Entry_Queue_Depth.
3078 New entry for proper handling of No_Dynamic_Interrupts.
3079
3080 * s-rident.ads: Adding restriction Simple_Barriers (AI-00249) that
3081 supersedes the GNAT specific restriction Boolean_Entry_Barriers.
3082 Adding restriction Max_Entry_Queue_Length (AI-00249) that supersedes
3083 the GNAT specific restriction Max_Entry_Queue_Depth.
3084 Adding restriction No_Dynamic_Attachment (AI-00249) that supersedes
3085 the GNAT specific restriction No_Dynamic_Interrupts.
3086
3087 * restrict.ads, restrict.adb: Use the new restriction Simple_Barriers
3088 instead of the old Boolean_Entry_Barriers.
3089 Use the new restriction No_Dynamic_Attachment instead of the old
3090 No_Dynamic_Interrupts.
3091
3092 * exp_ch9.adb: Check restriction Simple_Barriers (AI-00249) that
3093 supersedes the GNAT specific restriction Boolean_Entry_Barriers.
3094
3095 * gnatbind.adb: Use the new restriction Max_Entry_Queue_Length instead
3096 of the old Max_Entry_Queue_Depth.
3097
30982004-05-03 GNAT Script <nobody@gnat.com>
3099
3100 * Make-lang.in: Makefile automatically updated
3101
d935a36e
AC
31022004-04-29 Ed Schonberg <schonberg@gnat.com>
3103
3104 * checks.adb (Enable_Range_Check): If the prefix of an index component
3105 is an access to an unconstrained array, perform check unconditionally.
3106
31072004-04-29 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3108
3109 * decl.c (gnat_to_gnu_field): Also call make_packable_type if
3110 Component_Clause.
3111
31122004-04-29 Olivier Hainque <hainque@act-europe.fr>
3113
3114 * init.c (__gnat_install_handler, __gnat_error_handler): Remove
3115 alternate stack setting. There was no support for the tasking cases
3116 and the changes eventually caused a number of side-effect failures in
3117 the non-tasking case too.
3118
31192004-04-29 Eric Botcazou <ebotcazou@act-europe.fr>
3120
3121 lang-specs.h: Redirect output to /dev/null if -gnatc or -gnatz or
3122 -gnats is passed.
3123
31242004-04-29 Vincent Celier <celier@gnat.com>
3125
3126 * make.adb (Gnatmake): Increase max size of argument array for
3127 gnatbind for the potential addition of -F.
3128 If there are Stand-Alone Library projects, invoke gnatbind with -F to
3129 be sure that elaboration flags will be checked.
3130
3131 * switch-c.adb: Correct call to Scan_Pos for -gnateI
3132
31332004-04-29 Thomas Quinot <quinot@act-europe.fr>
3134
3135 * sem_warn.adb (Check_References): Move '<access-variable> may be
3136 null' warning out of under Warn_On_No_Value_Assigned.
3137
31382004-04-29 Ed Falis <falis@gnat.com>
3139
3140 * gnat_ugn.texi: Fixed texi error
3141
31422004-04-29 Robert Dewar <dewar@gnat.com>
3143
3144 * sem_ch4.adb (Remove_Abstract_Operations): Unconditionally remove
3145 abstract operations if they come from predefined files.
3146
3147 * gnat_rm.texi: Fix bad doc for pragma Elaboration_Checks (should be
3148 Dynamic, not RM).
3149
3150 * s-addope.adb: Correct obvious error in mod function
3151
31522004-04-28 Andrew W. Reynolds <awreynolds@mac.com>
3153
3154 * Makefile.in: Add target pairs for powerpc darwin*
3155 tasking support.
3156
3157 * a-intnam-darwin.ads, s-osinte-darwin.adb,
3158 s-osinte-darwin.ads, system-darwin-ppc.ads: New files.
3159
ea16c81b
UW
31602004-04-28 Ulrich Weigand <uweigand@de.ibm.com>
3161
3162 * Makefile.in: Add target macro definitions for s390*-linux*.
3163 * system-linux-s390.ads: New file.
3164 * system-linux-s390x.ads: New file.
3165
f0e6f845
JM
31662004-04-28 Joseph S. Myers <jsm@polyomino.org.uk>
3167
3168 * gnat_ugn.texi: Correct argument to @setfilename.
3169
e8c2eedc
UW
31702004-04-28 Ulrich Weigand <uweigand@de.ibm.com>
3171
3172 * a-exexpr.adb (Unwind_Word): New data type.
3173 (Unwind_Exception): Use it as type of Private1 and Private2.
3174
3175 * raise.c (db_action_for): Fix debug printf.
3176
f2c9e65a
AC
31772004-04-27 Ed Schonberg <schonberg@gnat.com>
3178
3179 * a-wtmoio.ads: Formal type must be a modular type, not a signed
3180 integer type.
3181
31822004-04-27 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3183
3184 * decl.c (gnat_to_gnu_entity, case object): Call
3185 __builtin_update_setjmp_buf.
3186
3187 * gigi.h (update_setjmp_buf): Deleted.
3188 (ADT_update_setjmp_buf_decl, update_setjmp_buf_decl): New.
3189
3190 * misc.c: (update_setjmp_buf): Deleted.
3191
3192 * trans.c (gnat_to_gnu): Call do_pending_stack_adjust and emit_queue
3193 around block of RTL.
3194
3195 * utils.c (init_gigi_decls): Initialize update_setjmp_buf.
3196
35b7fa6a
AC
31972004-04-26 Thomas Quinot <quinot@act-europe.fr>
3198
3199 * sem_dist.adb, exp_dist.adb: When constructing a RAS value for a local
3200 subprogram for which no pragma All_Calls_Remote applies, store the
3201 address of the real subprogram in the underlying record type, so local
3202 dereferences do not go through the PCS.
3203
32042004-04-26 Robert Dewar <dewar@gnat.com>
3205
3206 * i-c.ads: Add some type qualifications to avoid ambiguities when
3207 compiling with s-auxdec.ads and a non-private address type.
3208
32092004-04-26 Arnaud Charlet <charlet@act-europe.fr>
3210
3211 * Makefile.rtl: Fix error in previous check-in:
3212 Add s-addope.o to non tasking object list (rather than tasking object
3213 list).
3214
32152004-04-26 Javier Miranda <miranda@gnat.com>
3216
3217 * sem_aggr.adb: Fix typo in comments
3218 (Resolve_Aggr_Expr): Propagate the type to the nested aggregate.
3219 Required to check the null-exclusion attribute.
3220
3221 * sem_attr.adb (Resolve_Attribute): Check the accessibility level in
3222 case of anonymous access types in record and array components. For a
3223 component definition the level is the same of the enclosing composite
3224 type.
3225
3226 * sem_ch3.adb (Analyze_Component_Declaration): In case of components
3227 that are anonymous access types the level of accessibility depends on
3228 the enclosing type declaration. In order to have this information, set
3229 the scope of the anonymous access type to the enclosing record type
3230 declaration.
3231 (Array_Type_Declaration): In case of components that are anonymous
3232 access types the level of accessibility depends on the enclosing type
3233 declaration. In order to have this information, set the scope of the
3234 anonymous access type to the enclosing array type declaration.
3235
3236 * sem_ch3.adb (Array_Type_Declaration): Set the scope of the anonymous
3237 access type.
3238
3239 * sem_ch8.adb (Analyze_Object_Renaming): Add check to verify that
3240 renaming of anonymous access-to-constant types allowed if and only if
3241 the renamed object is access-to-constant.
3242
3243 * sem_util.adb (Type_Access_Level): In case of anonymous access types
3244 that are component_definition or discriminants of a nonlimited type,
3245 the level is the same as that of the enclosing component type.
3246
32472004-04-26 Sergey Rybin <rybin@act-europe.fr>
3248
3249 * sem_elim.adb: Some minor code reorganization from code reading. Fix
3250 misprint in the function name (File_Name_Match).
3251
5a944040
LG
32522004-04-23 Laurent GUERBY <laurent@guerby.net>
3253
90afe2c9 3254 * Makefile.in: Remove RANLIB_TEST, use -$(RANLIB) including after
5a944040 3255 install.
90afe2c9 3256
d0fd1344
RO
32572004-04-23 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
3258
3259 * Make-lang.in (GNATBIND_OBJS): Add s-addope.o.
3260
cc4f0de1
AC
32612004-04-23 Emmanuel Briot <briot@act-europe.fr>
3262
3263 * adaint.c (__gnat_try_lock): No longer requires that the parent
3264 directory be writable, the directory itself is enough.
3265 (gnat_is_absolute_path): Change profile, so that the call from
3266 GNAT.OS_Lib can be made more efficient.
3267
3268 * adaint.h (gnat_is_absolute_path): Change profile, so that the call
3269 from GNAT.OS_Lib can be made more efficient.
3270
3271 * g-os_lib.adb (Is_Absolute_Path): More efficient implementation, avoid
3272 one copy of the file name. Found by code reading.
3273
32742004-04-23 Vincent Celier <celier@gnat.com>
3275
3276 * gnat_ugn.texi: Add documentation for gnatmake switch -eL
3277 Correct documentation on gnatmake switches transmitted to the compiler
3278
3279 * ali.ads: Minor comment fix
3280
32812004-04-23 Javier Miranda <miranda@gnat.com>
3282
3283 * sem_ch6.adb: (Confirming Types): Code cleanup
3284
3285 * decl.c (gnat_to_gnu_entity): Give support to anonymous access to
3286 subprogram types: E_Anonymous_Access_Subprogram_Type and
3287 E_Anonymous_Access_Protected_Subprogram_Type.
3288
32892004-04-23 Thomas Quinot <quinot@act-europe.fr>
3290
3291 * sem_dist.adb: Add a new paramter to the RAS_Access TSS indicating
3292 whether a pragma All_Calls_Remote applies to the subprogram on which
3293 'Access is taken.
3294 No functional change is introduced by this revision; the new parameter
3295 will be used to allow calls to local RCI subprograms to be optimized
3296 to not use the PCS in the case where no pragma All_Calls_Remote applies,
3297 as is already done in the PolyORB implementation of the DSA.
3298
3299 * exp_dist.adb: Add a new paramter to the RAS_Access TSS indicating
3300 whether a pragma All_Calls_Remote applies to the subprogram on which
3301 'Access is taken.
3302 No functional change is introduced by this revision; the new parameter
3303 will be used to allow calls to local RCI subprograms to be optimized
3304 to not use the PCS in the case where no pragma All_Calls_Remote applies,
3305 as is already done in the PolyORB implementation of the DSA.
3306
33072004-04-23 Robert Dewar <dewar@gnat.com>
3308
3309 * Makefile.rtl: Add entry for s-addope.o in run time library list
3310 * Make-lang.in: Add entry for s-addope.o to GNAT1 objects
3311 * s-addope.ads, s-addope.adb: New files.
3312
90afe2c9
ZW
3313 * s-carsi8.adb, s-carun8.adb, s-casi16.adb, s-casi32.adb,
3314 s-casi64.adb, s-caun16.adb, s-caun32.adb, s-caun64.adb,
cc4f0de1
AC
3315 s-finimp.adb, s-geveop.adb, s-stoele.adb: Modifications to allow
3316 System.Address to be non-private and signed.
3317
3318 * sem_elim.adb: Minor reformatting (fairly extensive)
3319 Some minor code reorganization from code reading
3320 Add a couple of ??? comments
3321
33222004-04-23 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3323
3324 * trans.c (tree_transform, build_unit_elab): Don't call getdecls.
90afe2c9 3325 (tree_transform, case N_If_Statement): Remove non-determinism.
cc4f0de1
AC
3326
3327 * utils.c (begin_subprog_body): Just set DECL_CONTEXT in PARM_DECL.
3328
33292004-04-23 Sergey Rybin <rybin@act-europe.fr>
3330
3331 * gnat_rm.texi: Small fixes in the changes made in the 'pragma
3332 Eliminate' section.
3333
3334 * snames.ads, snames.adb: Remove Name_Homonym_Number (Homonym_Number is
3335 no longer used as a parameter name for Eliminate pragma).
3336
78bad775
LG
33372004-04-22 Laurent GUERBY <laurent@guerby.net>
3338
3339 PR optimization/14984
3340 PR optimization/14985
3341 * trans.c (gigi): Fix non determinism leading to bootstrap
3342 comparison failures.
3343
af4b9434
AC
33442004-04-21 Pascal Obry <obry@gnat.com>
3345
3346 * adaint.c (__gnat_portable_spawn): Quote first argument (argv[0])
3347 passed to spawnvp() to properly handle program pathname with spaces on
3348 Win32.
3349
33502004-04-21 Emmanuel Briot <briot@act-europe.fr>
3351
3352 * g-debpoo.adb (Print_Info): Avoid extra work if Display_Slots is False.
3353 (Allocate, Deallocate, Free_Physically): Make sure the tasks are
3354 unlocked in case of exceptions.
3355
33562004-04-21 Joel Brobecker <brobecker@gnat.com>
3357
3358 * gigi.h (get_target_no_dollar_in_label): Remove extern declaration.
3359 This function does not exist anymore.
3360
33612004-04-21 Thomas Quinot <quinot@act-europe.fr>
3362
3363 * gnatbind.adb, gnatlink.adb: Update name of imported C symbol.
3364
3365 * link.c: Move variables to the __gnat name space.
3366
3367 * Makefile.in: list link.o explicitly when needed.
3368
3369 * mlib.adb: Remove pragma Linker_Option for "link.o" from mlib.
3370
33712004-04-21 Javier Miranda <miranda@gnat.com>
3372
3373 * einfo.adb (Original_Access_Type): New subprogram
3374 (Set_Original_Access_Type): New subprogram
3375 (Write_Field21_Name): Write the name of the new field
3376
3377 * einfo.ads (Original_Access_Type): New field present in access to
3378 subprogram types.
3379 Addition of two new entities: E_Anonymous_Access_Subprogram_Type, and
3380 E_Anonymous_Access_Protected_Subprogram_Type.
3381
3382 * lib-xref.adb (Output_One_Ref): Give support to anonymous access to
3383 subprogram types.
3384
3385 * lib-xref.ads (Xref_Entity_Letters): Initialize values corresponding
3386 to anonymous access to subprogram types.
3387
3388 * sem_attr.adb (Resolve_Attribute): Give support to anonymous access
3389 to subprogram types.
3390
3391 * sem_ch3.adb (Access_Definition): Complete decoration of entities
3392 corresponding to anonymous access to subprogram types.
3393 (Analyze_Component_Declaration): Add new actual to the call to
3394 subprogram replace_anonymous_access_to_protected_subprogram.
3395 (Array_Type_Declaration): Add new actual to the call to subprogram
3396 replace_anonymous_access_to_protected_subprogram.
3397 (Process_Discriminants): Add new actual to the call to subprogram
3398 replace_anonymous_access_to_protected_subprogram.
3399 (Replace_Anonymous_Access_To_Protected_Subprogram): New formal.
3400
3401 * sem_ch3.ads (Replace_Anonymous_Access_To_Protected_Subprogram): New
3402 formal.
3403
3404 * sem_ch6.adb, sem_type.adb, sem_res.adb: Give support to anonymous
3405 access to subprogram types.
3406
3407 * sem_util.adb (Has_Declarations): Addition of package_specification
3408 nodes.
3409
34102004-04-21 Ed Schonberg <schonberg@gnat.com>
3411
3412 * sem_prag.adb (Make_Inline): If subprogram is a renaming, propagate
3413 inlined flags to renamed entity only if in current unit.
3414
34152004-04-21 Thomas Quinot <quinot@act-europe.fr>
3416
3417 * s-parint.ads: Add DSA implementation marker.
3418
3419 * rtsfind.ads, rtsfind.adb, snames.ads, snames.adb, s-rpc.adb: Use the
3420 value of System.Partition_Interface.DSA_Implementation to determine
3421 what version of the distributed systems annex is available (no
3422 implementation, GLADE, or PolyORB).
3423
34242004-04-21 Joel Brobecker <brobecker@gnat.com>
3425
3426 * targtyps.c (get_target_no_dollar_in_label): Remove, no longer used.
3427
34282004-04-21 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3429
3430 * utils.c (convert, case CONSTRUCTOR, COMPONENT_REF): Do not make node
3431 with new type if alias sets differ.
3432 Fixes ACATS c41103b.
3433
34342004-04-21 Vincent Celier <celier@gnat.com>
3435
3436 * prj.ads: Remove FORTRAN as an accepted language: not tested yet.
3437 Add array Lang_Args for the language specific compiling argument
3438 switches.
3439
3440 * gnat_ugn.texi: Explain in more details when a library is rebuilt.
3441
34422004-04-21 Sergey Rybin <rybin@act-europe.fr>
3443
3444 * gnat_rm.texi: Update the descripton of the Eliminate pragma
3445 according to the recent changes in the format of the parameters of the
3446 pragma (replacing Homonym_Number with Source_Location).
3447
7324bf49
AC
34482004-04-19 Arnaud Charlet <charlet@act-europe.fr>
3449
3450 * 5isystem.ads: Removed, unused.
3451
3452 * gnat_rm.texi: Redo 1.13 change.
3453
34542004-04-19 Robert Dewar <dewar@gnat.com>
3455
3456 * s-stoele.ads: Clean up definition of Storage_Offset (the new
3457 definition is cleaner, avoids the kludge of explicit Standard operator
3458 references, and also is consistent with a visible System.Address with
3459 no visible operations.
3460
3461 * s-geveop.adb: Add declarations to avoid assumption of visible
3462 operations on type System.Address (since these might not be available
3463 if Address is a non-private type for which the operations
3464 are made abstract).
3465
3466 * sem_eval.adb: Minor reformatting
3467
3468 * s-carsi8.ads, s-carun8.ads, s-casi16.ads, s-casi32.ads,
3469 s-casi64.ads, s-caun16.ads, s-caun32.ads, s-caun64.ads: Minor
3470 reformatting (new function spec format).
3471
3472 * s-auxdec.adb, s-carsi8.adb, s-carun8.adb, s-casi16.adb,
3473 s-casi32.adb, s-casi64.adb, s-caun16.adb, s-caun32.adb,
3474 s-caun64.adb: Add declarations to avoid assumption of visible
3475 operations on type System.Address (since these might not be available
3476 if Address is a non-private type for which the operations are made
3477 abstract).
3478
3479 * lib.ads, lib.adb (Synchronize_Serial_Number): New procedure.
3480
3481 * exp_intr.adb: Minor comment update
3482
3483 * exp_aggr.adb, exp_attr.adb, exp_ch13.adb: Minor reformatting.
3484
3485 * 5omastop.adb: Add declarations to avoid assumption of visible
3486 operations on type System.Address (since these might not be available
3487 if Address is a non-private type for which the operations
3488 are made abstract).
3489
34902004-04-19 Vincent Celier <celier@gnat.com>
3491
3492 * switch-m.adb: (Scan_Make_Switches): Process new switch -eL
3493
3494 * prj-pars.ads (Parse): New Boolean parameter Process_Languages,
3495 defaulted to Ada.
3496
3497 * prj-proc.adb (Process): New Boolean parameter Process_Languages,
3498 defaulted to Ada.
3499 Call Check with Process_Languages.
3500 (Check): New Boolean parameter Process_Languages. Call Recursive_Check
3501 with Process_Languages.
3502 (Recursive_Check): New Boolean parameter Process_Languages. Call
3503 Nmsc.Ada_Check or Nmsc.Other_Languages_Check according to
3504 Process_Languages.
3505
3506 * prj-proc.ads (Process): New Boolean parameter Process_Languages,
3507
3508 * prj-util.ads, prj-util.adb (Executable_Of): New Boolean
3509 parameter Ada_Main, defaulted to True.
3510 Check for Ada specific characteristics only when Ada_Main is True.
3511
3512 * opt.ads: (Follow_Links): New Boolean flag for gnatmake
3513
3514 * prj.adb: (Project_Empty): Add new Project_Data components.
3515
3516 * prj.ads: New types and tables for non Ada languages.
3517 (Project_Data): New components Languages, Impl_Suffixes,
3518 First_Other_Source, Last_Other_Source, Imported_Directories_Switches,
3519 Include_Path, Include_Data_Set.
3520
3521 * prj-env.ads, prj-env.adb: Minor reformatting
3522
3523 * prj-nmsc.ads, prj-nmsc.adb: (Other_Languages_Check): New procedure
3524 Put subprograms in alphabetical order
3525
3526 * prj-pars.adb (Parse): New Boolean parameter Process_Languages,
3527 defaulted to Ada; Call Prj.Proc.Process with Process_Languages and
3528 Opt.Follow_Links.
3529
3530 * mlib-prj.adb: Back out modification in last version, as they are
3531 incorrect.
3532 (Build_Library.Check_Libs): Remove useless pragma Warnings (Off)
3533
3534 * make.adb: (Mains): Moved to package Makeutl
3535 (Linker_Opts): Moved to package Makeutl
3536 (Is_External_Assignment): Moved to package Makeutl
3537 (Test_If_Relative_Path): Moved to package Makeutl
3538 (Gnatmake): Move sorting of linker options to function
3539 Makeutl.Linker_Options_Switches.
3540
8f9df7d8
VC
3541 * makeutl.ads, makeutl.adb: New files.
3542
7324bf49
AC
3543 * Makefile.in: Add makeutl.o to the object files for gnatmake
3544
3545 * makeusg.adb: Add line for new switch -eL.
3546
3547 * gnatls.adb (Image): New function.
3548 (Output_Unit): If in verbose mode, output the list of restrictions
3549 specified by pragmas Restrictions.
3550
3551 * 5bml-tgt.adb, 5vml-tgt.adb (Build_Dynamic_Library): Do not use
3552 Text_IO.
3553
3554 * a-calend.adb (Split): Shift the date by multiple of 56 years, if
3555 needed, to put it in the range 1970 (included) - 2026 (excluded).
3556 (Time_Of): Do not shift Unix_Min_Year (1970).
3557 Shift the date by multiple of 56 years, if needed, to put it in the
3558 range 1970 (included) - 2026 (excluded).
3559
3560 * adaint.h, adaint.c (__gnat_set_executable): New function.
3561
35622004-04-19 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3563
3564 * trans.c (tree_transform, case N_Subprogram_Body): Temporarily push
3565 and pop GC context.
3566 (tree_transform, case N_Procedure_Call): Fix typo in setting TREE_TYPE.
3567 (tree_transform, case N_Label): Don't set LABEL_STMT_FIRST_IN_EH.
3568 (tree_transform, case N_Procedure_Call_Statement): Build a tree.
3569 (tree_transform, case N_Code_Statement): Likewise.
3570 (gnat_expand_stmt, case LABEL_STMT): Don't look at
3571 LABEL_STMT_FIRST_IN_EH.
3572 (gnat_expand_stmt, case ASM_STMT): New case.
3573
3574 * utils2.c (build_unary_op): Properly set TREE_READONLY of
3575 UNCONSTRAINED_ARRAY_REF.
3576
3577 * utils.c (poplevel): Temporarily push/pop GC context around inline
3578 function expansion.
3579
3580 * decl.c (maybe_variable): Properly set TREE_READONLY of
3581 UNCONSTRAINED_ARRAY_REF.
3582 (make_packable_type): Only reference TYPE_IS_PADDING_P for RECORD_TYPE.
3583
3584 * ada-tree.def: (ASM_STMT): New.
3585
3586 * ada-tree.h: (LABEL_STMT_FIRST_IN_EH): Deleted.
3587 (ASM_STMT_TEMPLATE, ASM_STMT_OUTPUT, ASM_STMT_ORIG_OUT,
3588 ASM_STMT_INPUT): New.
3589 (ASM_STMT_CLOBBER): Likewise.
3590
35912004-04-19 Thomas Quinot <quinot@act-europe.fr>
3592
3593 * a-except.adb, s-parint.ads, s-parint.adb, types.ads, types.h: Use
3594 general rcheck mechanism to raise Program_Error for E.4(18), instead
3595 of a custom raiser in System.Partition_Interface.
3596 Part of general cleanup work before PolyORB integration.
3597
3598 * snames.ads, snames.adb: Add new runtime library entities and names
3599 for PolyORB DSA.
3600
3601 * sem_dist.ads, sem_dist.adb (Get_Subprogram_Id): Move from sem_dist to
3602 exp_dist.
3603 (Build_Subprogram_Id): New subprogram provided by exp_dist
3604 Code reorganisation in preparation for PolyORB integration.
3605
3606 * exp_dist.ads, exp_dist.adb (Get_Subprogram_Id): Move from sem_dist to
3607 exp_dist.
3608 (Build_Subprogram_Id): New subprogram provided by exp_dist
3609
3610 * sem_ch4.adb (Analyze_One_Call): Fix error message for mismatch in
3611 actual parameter types for call to dereference of an
3612 access-to-subprogram type.
3613
3614 * rtsfind.ads: Add new runtime library entities and names for PolyORB
3615 DSA.
3616
3617 * gnatlink.adb (Value): Remove. Use Interfaces.C.Strings.Value
3618 instead, which has the same behaviour here since we never pass it a
3619 NULL pointer.
3620
3621 * link.c (run_path_option, Solaris case): Use -Wl, as for other
3622 platforms.
3623
3624 * Makefile.in: adjust object file lists for gnatlink and gnatmake
3625 to account for new dependency upon Interfaces.C.Strings + link.o
3626 For x86 FreeBSD, use 86numaux.
3627
3628 * make.adb, gnatcmd.adb: Linker_Library_Path_Option has been moved up
3629 from Mlib.Tgt to Mlib.
3630
3631 * mlib.ads, mlib.adb (Linker_Library_Path_Option): New subprogram, now
3632 target-independent.
3633
3634 * mlib-tgt.ads, mlib-tgt.adb (Linker_Library_Path_Option): Remove
3635 target-specific versions of this subprogram, now implemented as a
3636 target-independent function in Mlib.
3637
3638 * 5aml-tgt.adb, 5bml-tgt.adb, 5gml-tgt.adb, 5hml-tgt.adb, 5lml-tgt.adb,
3639 5sml-tgt.adb, 5vml-tgt.adb, 5zml-tgt.adb, 5wml-tgt.adb
3640 (Linker_Library_Path_Option): Remove target-specific versions of this
3641 subprogram, now implemented as a target-independent function in Mlib.
3642
3643 * atree.adb: (Allocate_Initialize_Node): New subprogram.
3644 Factors out node table slots allocation.
3645 (Fix_Parents): New subprogram.
3646 Encapsulate the pattern of fixing up parent pointers for syntactic
3647 children of a rewritten node.
3648 (New_Copy_Tree): Use New_Copy to copy non-entity nodes.
3649 (Rewrite): Use New_Copy when creating saved copy of original node.
3650 (Replace): Use Copy_Node to copy nodes.
3651
36522004-04-19 Javier Miranda <miranda@gnat.com>
3653
3654 * sprint.adb (Sprint_Node_Actual): Give support to the new
3655 Access_To_Subprogram node available in Access_Definition nodes. In
3656 addition, give support to the AI-231 node fields: null-exclusion,
3657 all-present, constant-present.
3658
3659 * sem_util.ads, sem_util.adb: (Has_Declarations): New subprogram
3660
90afe2c9 3661 * sinfo.ads, sinfo.adb:
7324bf49
AC
3662 New field Access_To_Subprogram_Definition in Access_Definition nodes
3663
3664 * sem_ch6.adb (Process_Formals): Move here the code that creates and
3665 decorates internal subtype declaration corresponding to the
3666 null-excluding formal. This code was previously in Set_Actual_Subtypes.
3667 In addition, carry out some code cleanup on this code. In case of
3668 access to protected subprogram call
3669 Replace_Anonymous_Access_To_Protected_Subprogram.
3670 (Set_Actual_Subtypes): Code cleanup.
3671
3672 * sem_ch8.adb (Analyze_Object_Renaming): Remove un-necessary call to
3673 Find_Type in case of anonymous access renamings. Add warning in case of
3674 null-excluding attribute used in anonymous access renaming.
3675
3676 * sem_ch3.ads (Replace_Anonymous_Access_To_Protected_Subprogram): New
3677 subprogram
3678
3679 * sem_ch3.adb (Replace_Anonymous_Access_To_Protected_Subprogram): New
3680 subprogram.
3681 (Access_Definition): In case of anonymous access to subprograms call
3682 the corresponding semantic routine to decorate the node.
3683 (Access_Subprogram_Declaration): Addition of some comments indicating
3684 some code that probably should be added here. Detected by comparison
3685 with the access_definition subprogram.
3686 (Analyze_Component_Declaration): In case of access to protected
3687 subprogram call Replace_Anonymous_Access_To_Protected.
3688 (Array_Type_Declaration): In case of access to protected subprogram call
3689 Replace_Anonymous_Access_To_Protected_Subprogram.
3690 (Process_Discriminants): In case of access to protected subprogram call
3691 Replace_Anonymous_Access_To_Protected_Subprogram.
3692
3693 * par.adb (P_Access_Definition): New formal that indicates if the
3694 null-exclusion part was present.
3695 (P_Access_Type_Definition): New formal that indicates if the caller has
3696 already parsed the null-excluding part.
3697
3698 * par-ch3.adb (P_Subtype_Declaration): Code cleanup.
3699 (P_Identifier_Declarations): Code cleanup and give support to renamings
3700 of anonymous access to subprogram types.
3701 (P_Derived_Type_Def_Or_Private_Ext_Decl): Code cleanup.
3702 (P_Array_Type_Definition): Give support to AI-254.
3703 (P_Component_Items): Give support to AI-254.
3704 (P_Access_Definition): New formal that indicates if the header was
3705 already parsed by the caller.
3706 (P_Access_Type_Definition): New formal that indicates if the caller has
3707 already parsed the null-excluding part.
3708
3709 * par-ch6.adb (P_Formal_Part): Add the null-excluding parameter to the
3710 call to P_Access_Definition.
3711
37122004-04-19 Geert Bosch <bosch@gnat.com>
3713
3714 * checks.adb (Apply_Float_Conversion_Check): New procedure to implement
3715 the delicate semantics of floating-point to integer conversion.
3716 (Apply_Type_Conversion_Checks): Use Apply_Float_Conversion_Check.
3717
3718 * eval_fat.adb (Machine_Mantissa): Moved to spec.
3719 (Machine_Radix): New function.
3720
3721 * eval_fat.ads (Machine_Mantissa): Moved from body for use in
3722 conversion checks.
3723 (Machine_Radix): New function also for use in conversion checks.
3724
37252004-04-19 Ed Schonberg <schonberg@gnat.com>
3726
3727 * par-prag.adb (Source_File_Name_Project): Fix typo in error message.
3728
3729 * exp_ch9.adb (Expand_Access_Protected_Subprogram_Type): Call analyze
3730 to decorate the access-to-protected subprogram and the equivalent type.
3731
3732 * checks.adb (Null_Exclusion_Static_Checks): Code cleanup. Give support
3733 to anonymous access to subprogram types.
3734
3735 * exp_ch4.adb (Expand_N_In): Preserve Static flag before
3736 constant-folding, for legality checks in contexts that require an RM
3737 static expression.
3738
3739 * exp_ch6.adb (Expand_N_Function_Call): If call may generate large
3740 temporary but stack checking is not enabled, increment serial number
3741 to so that symbol generation is consistent with and without stack
3742 checking.
3743
3744 * exp_util.ads, exp_util.adb (May_Generate_Large_Temp): Predicate is
3745 independent on whether stack checking is enabled, caller must check
3746 the corresponding flag.
3747
3748 * sem_ch3.adb (Constrain_Index): Index bounds given by attributes need
3749 range checks.
3750 (Build_Derived_Concurrent_Type): Inherit Is_Constrained flag from
3751 parent if it has discriminants.
3752 (Build_Derived_Private_Type): Constructed full view does
3753 not come from source.
3754 (Process_Discriminants): Default discriminants on a tagged type are
3755 legal if this is the internal completion of a private untagged
3756 derivation.
3757
3758 * sem_ch6.adb (Set_Actual_Subtypes): The generated declaration needs
3759 no constraint checks, because it corresponds to an existing object.
3760
3761 * sem_prag.adb (Process_Convention): Pragma applies
3762 only to subprograms in the same declarative part, i.e. the same unit,
3763 not the same scope.
3764
3765 * sem_res.adb (Valid_Conversion): In an instance or inlined body,
3766 ignore type mismatch on a numeric conversion if expression comes from
3767 expansion.
3768
37692004-04-19 Sergey Rybin <rybin@act-europe.fr>
3770
3771 * sem_elim.adb (Process_Eliminate_Pragma): Remove the processing for
3772 Homonym_Number parameter, add processing for Source_Location parameter
3773 corresponding.
3774 (Check_Eliminated): Remove the check for homonym numbers, add the check
3775 for source location traces.
3776
3777 * sem_elim.ads (Process_Eliminate_Pragma): Replace Arg_Homonym_Number
3778 with Arg_Source_Location corresponding to the changes in the format of
3779 the pragma.
3780
3781 * sem_prag.adb: (Analyze_Pragma): Changes in the processing of
3782 Eliminate pragma corresponding to the changes in the format of the
3783 pragma: Homonym_Number is replaced with Source_Location, two ways of
3784 distinguishing homonyms are mutially-exclusive.
3785
37862004-04-19 Joel Brobecker <brobecker@gnat.com>
3787
3788 * get_targ.ads (Get_No_Dollar_In_Label): Remove.
3789
3790 * exp_dbug.adb (Output_Homonym_Numbers_Suffix): Remove use of
3791 No_Dollar_In_Label, no longer necessary, as it is always True.
3792 (Strip_Suffixes): Likewise.
3793
37942004-04-19 Gary Dismukes <dismukes@gnat.com>
3795
3796 * s-stalib.ads (type Exception_Code): Use Integer'Size for exponent of
3797 modulus for compatibility with size clause on targets with 16-bit
3798 Integer.
3799
3800 * layout.adb (Discrimify): In the case of private types, set Vtyp to
3801 full type to fix type mismatches on calls to size functions for
3802 discriminant-dependent array components.
3803
38042004-04-19 Jerome Guitton <guitton@act-europe.fr>
3805
3806 * Makefile.in (gnatlib-zcx): New target, for building a ZCX run-time
3807 lib.
3808
38092004-04-19 Pascal Obry <obry@gnat.com>
3810
3811 * mdll-utl.adb (Locate): New version is idempotent.
3812
38132004-04-17 Laurent Guerby <laurent@guerby.net>
fa795c69
LG
3814
3815 PR ada/14988 (partial)
3816 * impunit.adb: Fix typo.
90afe2c9 3817
cce0244b
NN
38182004-04-14 Nathanael Nerode <neroden@gcc.gnu.org>
3819
3820 * Make-lang.in: Remove obsolete rts-none, rts-cert, install-rts-none,
3821 and install-rts-cert targets. Remove all gnatlib and gnattools
3822 targets and all other rts-* targets (moved to libada). Remove (now)
3823 unused Make variables CHMOD, CHMOD_AX_FLAGS, shext, THREAD_KIND,
3824 TRACE, GNATLIBFLAGS, GNATLIBCFLAGS.
3825
af152989
AC
38262004-04-08 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3827
3828 * trans.c (tree_transform): Shortcut returning error_mark_node for
3829 statements in annotate_only_mode.
3830 (tree_transform, case N_Label, case N_Return_Statement,
3831 N_Goto_Statement): Make statement tree instead of generating code.
3832 (tree_transform, case N_Assignment_Statement): No longer check
3833 type_annotate_only.
3834 (gnat_expand_stmt, case GOTO_STMT, case LABEL_STMT, case
3835 RETURN_STMT): New.
3836 (first_nondeleted_insn, build_block_stmt, make_expr_stmt_from_rtl):
3837 New fcns.
3838 (gnat_to_gnu): Collect any RTL generated and deal with it.
3839 (tree_transform, case N_And_Then): Refine when have non-null RTL_EXPR.
3840 (tree_transform case N_If_Statement): Rewrite to make IF_STMT.
3841 (gnat_expand_stmt, case BLOCK_STMT, IF_STMT): New cases.
3842
3843 * ada-tree.def (GOTO_STMT, LABEL_STMT, RETURN_STMT): New tree nodes.
3844
3845 * ada-tree.def (EXPR_STMT): Fix typo in name.
3846 (BLOCK_STMT, IF_STMT): New nodes.
3847
3848 * ada-tree.h (GOTO_STMT_LABEL, LABEL_STMT_LABEL,
3849 LABEL_STMT_FIRST_IN_EH): New macros.
3850 (RETURN_STMT_EXPR): Likewise.
3851
3852 * ada-tree.h: (BLOCK_STMT_LIST, IF_STMT_COND, IF_STMT_TRUE,
3853 IF_STMT_ELSEIF, IF_STMT_ELSE): New macros.
3854
38552004-04-08 Thomas Quinot <quinot@act-europe.fr>
3856
3857 * atree.ads: Correct documentation on extended nodes.
3858
3859 * link.c: Set run_path_option for FreeBSD.
3860
38612004-04-08 Vincent Celier <celier@gnat.com>
3862
3863 * mlib-prj.adb (Build_Library.Check_Libs): On OpenVMS, if dec.ali is
3864 one of the ALI file, do not link with DEC lib.
3865
3866 * par.adb Remove the last two characters ("%s" or "%b") when checking
3867 if a language defined unit may be recompiled.
3868
38692004-04-08 Ed Schonberg <schonberg@gnat.com>
3870
3871 * sem_ch4.adb (Remove_Abstract_Operations): Improve error message when
3872 removal of abstract operation leaves no possible interpretation for
3873 expression.
3874
3875 * sem_eval.adb (Eval_Qualified_Expression): Use
3876 Set_Raises_Constraint_Error on node when needed, so that it does not
3877 get optimized away by subsequent optimizations.
3878
3879 * sem_res.adb (Resolve_Intrinsic_Operator): Save interpretations of
3880 operands even when they are not wrapped in a type conversion.
3881
38822004-04-08 Olivier Hainque <hainque@act-europe.fr>
3883
3884 * sem_prag.adb (Set_Exported): Warn about making static as result of
3885 export only when the export is coming from source. This may be not
3886 be true e.g. on VMS where we expand export pragmas for exception codes
3887 together with imported or exported exceptions, and we don't want the
3888 user to be warned about something he didn't write.
3889
38902004-04-08 Thomas Quinot <quinot@act-europe.fr>
3891
3892 * sem_util.adb (Note_Possible_Modification): Reorganize to remove code
3893 duplication between normal entities and those declared as renamings.
3894 No functional change.
3895
90afe2c9 3896 * s-fileio.ads (Form): Remove pragma Inline, as we cannot currently
af152989
AC
3897 inline functions returning an unconstrained result.
3898
38992004-04-08 Eric Botcazou <ebotcazou@act-europe.fr>
3900
3901 * utils.c (type_for_mode): Handle BLKmode and VOIDmode properly, to
3902 conform to what other front-ends do.
3903
39042004-04-08 Doug Rupp <rupp@gnat.com>
3905
3906 * 5vml-tgt.adb: Use Gas instead of VMS Macro to build auto init shared
3907 libraries.
3908
3984e89a
AC
39092004-04-06 Pascal Obry <obry@gnat.com>
3910
3911 * adaint.c (DIR_SEPARATOR): Properly set DIR_SEPARATOR on Win32.
3912
3913 * osint.adb (Program_Name): Do not look past a directory separator.
3914
39152004-04-06 Thomas Quinot <quinot@act-europe.fr>
3916
3917 * atree.adb: Update comment (Rewrite_Substitute_Node no longer exists).
3918
3919 * exp_ch6.adb (Rewrite_Function_Call): Clarify documentation of
3920 requirement for preserving a copy of the original assignment node.
3921
3922 * sinfo.ads: Update comment (Original_Tree -> Original_Node).
3923
39242004-04-06 Olivier Hainque <hainque@act-europe.fr>
3925
3926 (__gnat_initialize [Vxworks]): Enable references to the crtstuff bits
3927 when supported.
3928
39292004-04-06 Ed Schonberg <schonberg@gnat.com>
3930
3931 * sem_ch4.adb (Remove_Abstract_Operations): Extend previous changes to
3932 operator calls in functional notation, and apply
3933 Universal_Interpretation to operands, not to their type.
3934
39352004-04-06 Robert Dewar <dewar@gnat.com>
3936
3937 * 5wdirval.adb: Minor reformatting
3938
39392004-04-06 Ed Falis <falis@gnat.com>
3940
3941 * gnat_rm.texi: Improve a reference to the GCC manual
3942
30c20106
AC
39432004-04-05 Vincent Celier <celier@gnat.com>
3944
3945 * adaint.h, adaint.c: Add function __gnat_named_file_length
3946
3947 * impunit.adb: Add Ada.Directories to the list
3948
3949 * Makefile.in: Add VMS and Windows versions of
3950 Ada.Directories.Validity package body.
3951
3952 * Makefile.rtl: Add a-direct and a-dirval
3953
3954 * mlib-tgt.ads: Minor comment update.
3955
3956 * a-dirval.ads, a-dirval.adb, 5vdirval.adb, 5wdirval.adb,
3957 a-direct.ads, a-direct.adb: New files.
3958
39592004-04-05 Vincent Celier <celier@gnat.com>
3960
3961 PR ada/13620
3962 * make.adb (Scan_Make_Arg): Pass any -fxxx switches to gnatlink, not
3963 just to the compiler.
3964
39652004-04-05 Robert Dewar <dewar@gnat.com>
3966
3967 * a-except.adb (Exception_Name_Simple): Make sure lower bound of
3968 returned string is 1.
3969
3970 * ali-util.adb: Use proper specific form for Warnings (Off, entity)
3971
3972 * eval_fat.ads: Minor reformatting
3973
3974 * g-curexc.ads: Document that lower bound of returned string values
3975 is always one.
3976
3977 * gnatlink.adb: Add ??? comment for previous change
3978 (need to document why this is VMS specific)
3979
3980 * s-stoele.ads: Minor reformatting
3981
3982 * tbuild.ads: Minor reformatting throughout (new function specs)
3983
3984 * par-ch10.adb (P_Context_Clause): Handle comma instead of semicolon
3985 after WITH.
3986
3987 * scng.adb: Minor reformatting
3988
39892004-04-05 Geert Bosch <bosch@gnat.com>
3990
3991 * eval_fat.adb (Machine): Remove unnecessary suppression of warning.
3992 (Leading_Part): Still perform truncation to machine number if the
3993 specified radix_digits is greater or equal to machine_mantissa.
3994
39952004-04-05 Javier Miranda <miranda@gnat.com>
3996
3997 * par-ch3.adb: Complete documentation of previous change
3998 Correct wrong syntax documentation of the OBJECT_DECLARATION rule
3999 (aliased must appear before constant).
4000
4001 * par-ch4.adb: Complete documentation of previous change.
4002
4003 * par-ch6.adb: Complete documentation of previous change.
4004
4005 * sinfo.ads: Fix typo in commment.
4006
40072004-04-05 Ed Schonberg <schonberg@gnat.com>
4008
4009 * sem_ch3.adb (Inherit_Components): If derived type is private and has
4010 stored discriminants, use its discriminants to constrain parent type,
4011 as is done for non-private derived record types.
4012
4013 * sem_ch4.adb (Remove_Abstract_Operations): New subprogram to implement
4014 Ada 2005 AI-310: an abstract non-dispatching operation is not a
4015 candidate interpretation in an overloaded call.
4016
4017 * tbuild.adb (Unchecked_Convert_To): Preserve conversion node if
4018 expression is Null and target type is not an access type (e.g. a
4019 non-private address type).
4020
40212004-04-05 Thomas Quinot <quinot@act-europe.fr>
4022
4023 * exp_ch6.adb (Rewrite_Function_Call): When rewriting an assignment
4024 statement whose right-hand side is an inlined call, save a copy of the
4025 original assignment subtree to preserve enough consistency for
4026 Analyze_Assignment to proceed.
4027
4028 * sem_ch5.adb (Analyze_Assignment): Remove a costly copy of the
4029 complete assignment subtree which is now unnecessary, as the expansion
4030 of inlined call has been improved to preserve a consistent assignment
4031 tree. Note_Possible_Modification must be called only
4032 after checks have been applied, or else unnecessary checks will
4033 be generated.
4034
4035 * sem_util.adb (Note_Possible_Modification): Reorganise the handling
4036 of explicit dereferences that do not Come_From_Source:
4037 - be selective on cases where we must go back to the dereferenced
4038 pointer (an assignment to an implicit dereference must not be
4039 recorded as modifying the pointer);
4040 - do not rely on Original_Node being present (Analyze_Assignment
4041 calls Note_Possible_Modification on a copied tree).
4042
4043 * sem_warn.adb (Check_References): When an unset reference to a pointer
4044 that is never assigned is encountered, prefer '<pointer> may be null'
4045 warning over '<pointer> is never assigned a value'.
4046
40472004-04-05 Ramon Fernandez <fernandez@gnat.com>
4048
4049 * tracebak.c: Change STOP_FRAME in ppc vxworks to be compliant with
4050 the ABI.
4051
40522004-04-05 Olivier Hainque <hainque@act-europe.fr>
4053
4054 * 5gmastop.adb (Pop_Frame): Comment out the pragma Linker_Option for
4055 libexc. We currently don't reference anything in this library and
4056 linking it in triggers linker warnings we don't want to see.
4057
4058 * init.c: Update comments.
4059
4f976745
RK
40602004-04-05 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
4061
4062 * decl.c (gnat_to_gnu_entity): Use TYPE_READONLY.
4063 * utils.c (create_field_decl): Likewise.
4064 * utils2.c (build_unary_op, gnat_build_constructor): Likewise.
4065
6da7d579
AC
40662004-04-02 Arnaud Charlet <charlet@act-europe.fr>
4067
4068 * gnat-style.texi, gnat_rm.texi, gnat_ugn.texi: Remove RCS tags.
4069 Replace ifinfo by ifnottex, to make makeinfo --html happy again.
4070 Add info directory entry and category.
4071
18c6ada9
JH
40722004-04-02 Jan Hubicka <jh@suse.cz>
4073
4074 * utils.c: Include function.h
4075 (end_subprog_body): Clear DECL_STRUCT_FUNCTION.
4076
7cd4527e
AC
40772004-04-01 Arnaud Charlet <charlet@act-europe.fr>
4078
4079 PR ada/14150
4080 * Make-lang.in: Clean up generation of documentation
4081
4082 * gnat-style.texi, gnat_rm.texi, ug_words: Resync with AdaCore version
4083
4084 * xgnatug.adb: Removed, replaced by xgnatugn.adb
4085
4086 * xgnatugn.adb: Replaces xgnatug.adb
4087
4088 * gnat_ug.texi: Removed, replaced by gnat_ugn.texi
4089
4090 * gnat_ugn.texi: Replaces gnat_ug.texi. Resync with AdaCore version
4091
4092 * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
4093 gnat_ug_wnt.texi: Removed.
4094
0c250f07
AC
40952004-04-01 Arnaud Charlet <charlet@act-europe.fr>
4096
4097 * utils2.c: Update copyright notice.
4098
6b6fcd3e
AC
40992004-04-01 Robert Dewar <dewar@gnat.com>
4100
4101 * checks.adb: Minor reformatting throughout
4102 Note that prev checkin added RM reference to alignment warning
4103
41042004-04-01 Ed Schonberg <schonberg@gnat.com>
4105
4106 * exp_aggr.adb (Get_Component_Val): Treat a string literal as
4107 non-static when building aggregate for bit-packed array.
4108
4109 * exp_ch4.adb (Expand_N_Slice): If a packed slice is an actual of a
4110 function call that is itself the actual in a procedure call, build
4111 temporary for it.
4112
4113 * exp_pakd.adb (Expand_Bit_Packed_Element_Set): If right-hand side is
4114 a string literal, create a temporary for it, constant folding only
4115 handles scalars here.
4116
41172004-04-01 Vincent Celier <celier@gnat.com>
4118
4119 * ali-util.adb (Post_Scan, Error_Msg, Error_Msg_S, Error_Msg_SC,
4120 Error_Msg_SP): New empty procedures to instantiate the Scanner.
4121 (Style, Scanner): Instantiations of Styleg and Scng to be able to scan
4122 tokens.
4123 (Accumulate_Checksum, Initialize_Checksum): Remove procedures.
4124 (Get_File_Checksum): Use the instantiated scanner to scan all the tokens
4125 and get the checksum.
4126
4127 * make.adb (Gnatmake): Do not insert into Q the Main_Source if it is
4128 already in the Q.
4129 Increase the Marking_Label at the end of the Multiple_Main_Loop,
4130 instead of at the beginning.
4131
4132 * osint.adb (Lib_File_Name): Use Multi_Unit_Index_Character, not '~'
4133 directly.
4134 (Osint package elaboration): Change Multi_Unit_Index_Character to '$' if
4135 on VMS.
4136
4137 * osint.ads (Multi_Unit_Index_Character): New Character global variable
4138
4139 * osint-c.adb (Set_Library_Info_Name): Use Multi_Unit_Index_Character,
4140 not '~' directly.
4141
4142 * par.adb: Remove test on file name to detect language defined units.
4143 Add test on unit name, after parsing, to detect language defined units
4144 that are not compiled with -gnatg (except System.RPC and its children)
4145
4146 * par-ch10.adb (P_Compilation_Unit): In multi-unit sources, scan the
4147 following units without style checking.
4148
4149 * switch-c.adb: Change -gnatC to -gnateI
4150
4151 * usage.adb: Document new switch -gnateInnn
4152
4153 * scng.adb (Accumulate_Token_Checksum): New procedure
4154 (Scan): Call Accumulate_Token_Checksum after each identifier, reserved
4155 word or literal number.
4156 (Scan.Nlit.Scan_Integer): Do not accumulate internal '_' in litteral
4157 numbers.
4158
41592004-04-01 Thomas Quinot <quinot@act-europe.fr>
4160
4161 * a-tasatt.adb,
4162 g-comlin.adb, sinput-c.adb, s-secsta.adb, s-tpobop.adb,
4163 switch-m.adb, 56taprop.adb, 5ginterr.adb, 5gmastop.adb,
4164 5staprop.adb, 5vinterr.adb, 5vtaprop.adb, 5vtpopde.adb,
4165 5vtpopde.adb: Add missing 'constant' keywords.
4166
41672004-04-01 Javier Miranda <miranda@gnat.com>
4168
4169 * par-ch4.adb: (P_Allocator): Code cleanup
4170
4171 * sem_ch3.adb (Access_Definition): Properly set the null-excluding
4172 attribute.
4173
4174 * sinfo.ads: Complete documentation of previous change
4175
41762004-04-01 Pascal Obry <obry@gnat.com>
4177
4178 * gnatlink.adb (Process_Binder_File): Remove duplicate linker options
4179 only on VMS. This special handling was done because an old GNU/ld bug
4180 on Windows which has been fixed.
4181
41822004-04-01 GNAT Script <nobody@gnat.com>
4183
4184 * Make-lang.in: Makefile automatically updated
4185
8df83eae
RK
41862004-03-31 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
4187
4188 * decl.c (gnat_to_gnu_entity, make_type_from_size):
4189 Use TYPE_UNSIGNED, not TREE_UNSIGNED.
4190 * trans.c (tree_transform, convert_with_check): Likewise.
4191 * utils.c (gnat_signed_or_unsigned_type): Likewise.
4192 (build_vms_descriptor, unchecked_convert): Likewise.
4193 * utils2.c (nonbinary_modular_operation): Likewise.
4194
2820d220
AC
41952004-03-29 Javier Miranda <miranda@gnat.com>
4196
4197 * checks.adb (Null_Exclusion_Static_Checks): New subprogram
4198 (Install_Null_Excluding_Check): Local subprogram that determines whether
4199 an access node requires a runtime access check and if so inserts the
4200 appropriate run-time check.
4201 (Apply_Access_Check): Call Install_Null_Excluding check if required
4202 (Apply_Constraint_Check): Call Install_Null_Excluding check if required
4203
4204 * checks.ads: (Null_Exclusion_Static_Checks): New subprogram
4205
4206 * einfo.ads: Fix typo in comment
4207
4208 * exp_ch3.adb (Build_Assignment): Generate conversion to the
4209 null-excluding type to force the corresponding run-time check.
4210 (Expand_N_Object_Declaration): Generate conversion to the null-excluding
4211 type to force the corresponding run-time check.
4212
4213 * exp_ch5.adb (Expand_N_Assignment_Statement): Generate conversion to
4214 the null-excluding type to force the corresponding run-time check.
4215
4216 * exp_ch6.adb (Expand_Call): Do not generate the run-time check in
4217 case of access types unless they have the null-excluding attribute.
4218
4219 * sprint.adb (Sprint_Node_Actual): Give support to the null-exclusing
4220 part.
4221
4222 * exp_util.ads: Fix typo in comment
4223
4224 * par.adb (P_Null_Exclusion): New subprogram
4225 (P_Subtype_Indication): New formal that indicates if the null-excluding
4226 part has been scanned-out and it was present
4227
4228 * par-ch3.adb, par-ch4.adb, par-ch6.adb: Give support to AI-231
4229
4230 * sem_aggr.adb: (Check_Can_Never_Be_Null): New subprogram
4231 (Aggregate_Constraint_Checks): Generate conversion to the null-excluding
4232 type to force the corresponding run-time check
4233 (Resolve_Aggregate): Propagate the null-excluding attribute to the array
4234 components
4235 (Resolve_Array_Aggregate): Carry out some static checks
4236 (Resolve_Record_Aggregate.Get_Value): Carry out some static check
4237
4238 * sem_ch3.adb (Access_Definition): In Ada 0Y the Can_Never_Be_Null
4239 attribute must be set only if specified by means of the null-excluding
4240 part. In addition, we must also propagate the access-constant attribute
4241 if present.
4242 (Access_Subprogram_Declaration, Access_Type_Declaration,
4243 Analyze_Component_Declaration, Analyze_Object_Declaration,
4244 Array_Type_Declaration, Process_Discriminants,
4245 Analyze_Subtype_Declaration): Propagate the null-excluding attribute
4246 and carry out some static checks.
4247 (Build_Derived_Access_Type): Set the null-excluding attribute
4248 (Derived_Type_Declaration, Process_Subtype): Carry out some static
4249 checks.
4250
4251 * sem_ch4.adb (Analyze_Allocator): Carry out some static checks
4252
4253 * sem_ch5.adb (Analyze_Assignment): Carry out some static checks
4254
4255 * sem_ch6.adb (Process_Formals): Carry out some static checks.
4256 (Set_Actual_Subtypes): Generate null-excluding subtype if the
4257 null-excluding part was present; it is not required to be done here in
4258 case of anonymous access types.
4259 (Set_Formal_Mode): Ada 0Y allows anonymous access to have the null
4260 value.
4261
4262 * sem_res.adb (Resolve_Actuals): Carry out some static check
4263 (Resolve_Null): Allow null in anonymous access
4264
4265 * sinfo.adb: New subprogram Null_Exclusion_Present
4266 All_Present and Constant_Present available on access_definition nodes
4267
4268 * sinfo.ads: New flag Null_Exclusion_Present on subtype_declaration,
4269 object_declaration, derived_type_definition, component_definition,
4270 discriminant_specification, access_to_object_definition,
4271 access_function_definition, allocator, access_procedure_definition,
4272 access_definition, parameter_specification, All_Present and
4273 Constant_Present flags available on access_definition nodes.
4274
42752004-03-29 Robert Dewar <dewar@gnat.com>
4276
4277 * fname.adb, fname.ads, fname-sf.adb, fname-uf.adb, fname-uf.ads,
4278 gnat1drv.adb, lib.adb, lib.ads, lib-load.adb, lib-writ.adb,
4279 opt.ads, osint.adb, osint.ads, osint-c.adb, par.adb,
4280 par-ch10.adb, par-load.adb, par-prag.adb, sfn_scan.adb,
4281 sfn_scan.ads, sinput-l.adb, sinput-l.ads, switch-c.adb,
4282 sem_prag.adb: Updates to handle multiple units/file
4283
4284 * par.adb: Change test for s-rpc to s-rp for detecting rpc and children
4285
4286 * par.adb, memtrack.adb, prj-makr.adb, prj-part.adb,
4287 sem_util.adb: Minor reformatting
4288
4289 * sem_ch12.adb: Add comment for previous change
4290
42912004-03-29 Laurent Pautet <pautet@act-europe.fr>
4292
4293 * osint.adb (Executable_Prefix): Set Exec_Name to the current
4294 executable name when not initialized. Otherwise, use its current value.
4295
4296 * osint.ads (Exec_Name): Move Exec_Name from body to spec in order to
4297 initialize it to another executable name than the current one. This
4298 allows to configure paths for an executable name (gnatmake) different
4299 from the current one (gnatdist).
4300
43012004-03-29 Ed Schonberg <schonberg@gnat.com>
4302
4303 * exp_ch6.adb (Expand_Call): A call to a function declared in the
4304 current unit cannot be inlined if it appears in the body of a withed
4305 unit, to avoid order of elaboration problems in gigi.
4306
4307 * exp_ch9.adb (Build_Protected_Sub_Specification): Generate debugging
4308 information for protected (wrapper) operation as well, to simplify gdb
4309 use.
4310
4311 * sem_ch6.adb (Analyze_Subprogram_Body): For a private operation in a
4312 protected body, indicate that the entity for the generated spec comes
4313 from source, to ensure that references are properly generated for it.
4314 (Build_Body_To_Inline): Do not inline a function that returns a
4315 controlled type.
4316
4317 * sem_prag.adb (Process_Convention): If subprogram is overloaded, only
4318 apply convention to homonyms that are declared explicitly.
4319
4320 * sem_res.adb (Make_Call_Into_Operator): If the operation is a function
4321 that renames an equality operator and the operands are overloaded,
4322 resolve them with the declared formal types, before rewriting as an
4323 operator.
4324
43252004-03-29 GNAT Script <nobody@gnat.com>
4326
4327 * Make-lang.in: Makefile automatically updated
4328
6d11af89
AC
43292004-03-25 Vasiliy Fofanov <fofanov@act-europe.fr>
4330
4331 * memtrack.adb: Log realloc calls, which are treated as free followed
4332 by alloc.
4333
43342004-03-25 Vincent Celier <celier@gnat.com>
4335
4336 * prj-makr.adb (Process_Directories): Detect when a file contains
4337 several units. Do not include such files in the config pragmas or
4338 in the naming scheme.
4339
4340 * prj-nmsc.adb (Record_Source): New parameter Trusted_Mode.
4341 Resolve links only when not in Trusted_Mode.
4342 (Find_Sources, Recursive_Find_Dirs, Find_Source_Dirs, Locate_Directory):
4343 Do not resolve links for the display names.
4344
4345 * prj-part.adb (Parse_Single_Project, Project_Path_Name_Of): Do not
4346 resolve links when computing the display names.
4347
43482004-03-25 Thomas Quinot <quinot@act-europe.fr>
4349
4350 * sem_attr.adb (Check_Dereference): When the prefix of a 'Tag
4351 attribute reference does not denote a subtype, it can be any
4352 expression that has a classwide type, potentially after an implicit
4353 dereference. In particular, the prefix can be a view conversion for
4354 a classwide type (for which Is_Object_Reference holds), but it can
4355 also be a value conversion for an access-to-classwide type. In the
4356 latter case, there is an implicit dereference, and the original node
4357 for the prefix does not verify Is_Object_Reference.
4358
4359 * sem_util.adb (Is_Dependent_Component_Of_Mutable_Object): A view
4360 conversion of a discriminant-dependent component of a mutable object
4361 is one itself.
4362
43632004-03-25 Ed Schonberg <schonberg@gnat.com>
4364
4365 * freeze.adb (Freeze_Entity): When an inherited subprogram is
4366 inherited, has convention C, and has unconstrained array parameters,
4367 place the corresponding warning on the derived type declaration rather
4368 than the original subprogram.
4369
4370 * sem_ch12.adb (Instantiate_Formal_Subprogram): Set From_Default
4371 indication on renaming declaration, if formal has a box and actual
4372 is absent.
4373
4374 * sem_ch8.adb (Analyze_Subprogram_Renaming): Use From_Default flag to
4375 determine whether to generate an implicit or explicit reference to
4376 the renamed entity.
4377
4378 * sinfo.ads, sinfo.adb: New flag From_Default, to indicate that a
4379 subprogram renaming comes from a defaulted formal subprogram in an
4380 instance.
4381
43822004-03-25 Gary Dismukes <dismukes@gnat.com>
4383
4384 * sem_elab.adb (Check_Elab_Call): Refine loop that checks for default
4385 value expressions to ensure that calls within a component definition
4386 will be checked (since those are evaluated during the record type's
4387 elaboration).
4388
43892004-03-25 Arnaud Charlet <charlet@act-europe.fr>
4390
4391 * s-tpobop.adb: Code clean up:
4392 (Requeue_Call): Extract from PO_Service_Entries to remove duplicated
4393 code.
4394 (PO_Do_Or_Queue): Remove duplicated code and use Requeue_Call.
4395
43962004-03-25 Jose Ruiz <ruiz@act-europe.fr>
4397
4398 * Makefile.in: Clean up in the ravenscar run time.
4399
22421b79
RK
44002004-03-23 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
4401
4402 * decl.c (gnat_to_gnu_entity, case E_Access_Type): Pass value
4403 of No_Strict_Aliasing to build_pointer_type_for_mode.
4404 * utils.c (update_pointer_to): Walk pointer and ref chains.
4405
24105bab
AC
44062004-03-22 Cyrille Comar <comar@act-europe.fr>
4407
4408 * ali.ads: Fix Comment about Dynamic_Elab.
4409
4410 * gnatls.adb (Output_Unit): Add output of many flags (Dynamic_Elab,
4411 Has_RACW, Is_Generic, etc.)
4412 (Output_Object, Gnatls): Take into account ALI files not attached to
4413 an object.
4414
44152004-03-22 Vincent Celier <celier@gnat.com>
4416
4417 * gprep.adb: Change all String_Access to Name_Id
4418 (Is_ASCII_Letter): new function
4419 (Double_File_Name_Buffer): New procedure
4420 (Preprocess_Infile_Name): New procedure
4421 (Process_Files): New procedure
4422 (Gnatprep): Check if output and input are existing directories.
4423 Call Process_Files to do the real job.
4424
44252004-03-22 Robert Dewar <dewar@gnat.com>
4426
4427 * prj-env.adb, prj-nmsc.ads, prj-proc.ads,
4428 s-stache.ads, s-stache.adb: Comment updates. Minor reformatting.
4429
44302004-03-22 Sergey Rybin <rybin@act-europe.fr>
4431
4432 * scn.adb (Contains): Add check for EOF, is needed for a degenerated
4433 case when the source contains only comments.
4434
44352004-03-22 Ed Schonberg <schonberg@gnat.com>
4436
4437 * sem_ch10.adb (Analyze_Compilation_Unit): When generating a
4438 declaration for a child subprogram body that acts as a spec, indicate
4439 that the entity in the declaration needs debugging information.
4440
4441 * sem_ch3.adb (Complete_Private_Subtype): Do not build an underlying
4442 full view if the subtype is created for a constrained record component;
4443 gigi has enough information to construct the record, and there is no
4444 place in the tree for the declaration.
4445
4446 * sem_ch6.adb (Build_Body_To_Inline): Use an internal name without
4447 serial number for the dummy body that is built for analysis, to avoid
4448 inconsistencies in the generation of internal names when compiling
4449 with -gnatN.
4450
44512004-03-22 Thomas Quinot <quinot@act-europe.fr>
4452
4453 * sem_util.adb (Is_Object_Reference): A view conversion denotes an
4454 object.
4455
44562004-03-22 GNAT Script <nobody@gnat.com>
4457
4458 * Make-lang.in: Makefile automatically updated
4459
6fce44af
RK
44602004-03-21 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
4461
4462 * decl.c (gnat_to_gnu_entity): Use SUBSTITUTE_PLACEHOLDER_IN_EXPR.
4463 * trans.c (tree_transform, emit_index_check): Likewise.
4464 * utils.c (build_template): Likewise.
4465 (max_size, convert): Remove handling of WITH_RECORD_EXPR.
4466 (maybe_unconstrained_array, unchecked_convert): Likewise.
4467 * utils2.c (gnat_truthvalue_conversion, build_binary_op): Likewise.
4468 (build_unary_op): Likewise.
4469 (compare_arrays, build_allocator): Use SUBSTITUTE_PLACEHOLDER_IN_EXPR.
4470 (fill_vms_descriptor): Likewise.
4471 (build_call_alloc_dealloc): Likewise.
4472 ALIGN is unsigned.
4473 * gigi.h (build_call_alloc_dealloc): Alignment is unsigned.
4474
802f6d4b
JM
44752004-03-20 Joseph S. Myers <jsm@polyomino.org.uk>
4476
4477 PR other/14630
4478 * gnat_ug.texi: Add info directory category and entry.
4479 * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
4480 gnat_ug_wnt.texi: Regenerate.
4481
30f3b32b
AC
44822004-03-19 Arnaud Charlet <charlet@act-europe.fr>
4483
4484 * ada-tree.h: Update copyright notice.
4485 Minor reformatting.
4486
44872004-03-19 Olivier Hainque <hainque@act-europe.fr>
4488
4489 * decl.c (gnat_to_gnu_entity, case E_Exception): Handle VMS exceptions
4490 as regular exception objects and not as mere integers representing the
4491 condition code. The latter approach required some dynamics to mask off
4492 severity bits, which did not fit well into the GCC table based model.
4493 (gnat_to_gnu_entity, objects): Don't supply an external name for VMS
4494 exception data objects. We don't it and it would conflict with the other
4495 external symbol we have to generate for such exceptions.
4496
4497 * trans.c (tree_transform, case N_Exception_Handler): Remove part of
4498 the special code for VMS exceptions, since these are now represented
4499 as regular exceptions objects.
4500
7548281d
RK
45012004-03-19 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
4502
4503 * decl.c (debug_no_type_hash): Remove.
4504 (gnat_to_gnu_entity, case E_Array_Type): Don't set and clear it.
4505 * misc.c (LANG_HOOK_HASH_TYPE): Redefine.
4506
7324bf49 45072004-03-19 Laurent Guerby <laurent@guerby.net>
dbee7ab9 4508
90afe2c9 4509 * sem_prag.adb (Suppress_Unsuppress_Echeck): use loop instead of
dbee7ab9 4510 aggregate, allows bootstrap from 3.3 on powerpc-darwin.
90afe2c9 4511
eb34af89
RK
45122004-03-18 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
4513
4514 * ada-tree.h (TYPE_LEFT_JUSTIFIED_MODULAR_P): Add checking.
4515 (TYPE_CONTAINS_TEMPLATE_P, TYPE_OBJECT_RECORD_TYPE): Likewise.
4516 (TYPE_RM_SIZE_INT): Directly use type.values.
4517 (TREE_LOOP_ID): Clean up check.
4518 * decl.c (gnat_to_gnu_entity, case E_Enumeration_Type): Use
4519 TYPE_VALUES, not TYPE_FIELDS.
4520 * trans.c (convert_with_check): Delay access of bounds of basetype
4521 until sure is numeric.
4522
a336eaca
AC
45232004-03-18 Arnaud Charlet <charlet@act-europe.fr>
4524
4525 * 5atpopsp.adb: Remove RTEMS from list of platforms using this file.
4526
4527 Code clean up:
4528 * 5ataprop.adb, 5ftaprop.adb, 5htaprop.adb, 5itaprop.adb, 5staprop.adb,
4529 5vtaprop.adb, 5wtaprop.adb, 7staprop.adb (Finalize_TCB): Use
4530 Specific.Set instead of direct call to e.g pthread_setspecific.
4531
45322004-03-18 Thomas Quinot <quinot@act-europe.fr>
4533
4534 * adaint.c: Update comments.
4535
4536 * Makefile.in: set PREFIX_OBJS, SYMLIB, THREADSLIB, and
4537 GNATLIB_SHARED for FreeBSD.
4538
45392004-03-18 Jose Ruiz <ruiz@act-europe.fr>
4540
4541 * init.c [VxWorks]: Do not fix the stack size for the environment task.
4542 When needed (stack checking) the stack size is retrieved
4543 from the VxWorks kernel.
4544
4545 * Makefile.in: Flag -nostdinc is required when building the run time
4546 for avoiding looking for files in the base compiler.
4547 Add the VxWorks specific version of the package body for
4548 System.Stack_checking.Operations (5zstchop.adb).
4549
4550 * Make-lang.in: Add the object file for
4551 System.Stack_Checking.Operations.
4552
4553 * Makefile.rtl: Add object file for the package
4554 System.Stack_Checking.Operations.
4555
4556 * s-stchop.ads, s-stchop.adb, 5zstchop.adb: New files.
4557
4558 * s-stache.ads, s-stache.adb: Move the operations related to stack
4559 checking from this package to package System.Stack_Checking.Operations.
4560 This way, stack checking operations are only linked in the final
4561 executable when using the -fstack-check flag.
4562
45632004-03-18 Doug Rupp <rupp@gnat.com>
4564
4565 * Makefile.in [VMS]: Handle 64 bit specs (5qsystem.ads, 5xcrtl.ads).
4566 Reorganize ifeq's.
4567
4568 * 5qsystem.ads, 5xcrtl.ads: New files.
4569
45702004-03-18 Vincent Celier <celier@gnat.com>
4571
4572 * prj.adb (Reset): Reset hash table Files_Htable
4573
4574 * prj-env.adb (Source_Paths, Object_Paths): New tables.
4575 (Add_To_Source_Path, Add_To_Object_Path): New procedures, to replace
4576 the procedures Add_To_Path_File.
4577 (Set_Ada_Paths): Accumulate source and object dirs in the tables,
4578 making sure that each directory is present only once and, for object
4579 dirs, when a directory already present is added, the duplicate is
4580 removed and the directory is always put as the last in the table.
4581 Write the path files at the end of these accumulations.
4582
4583 * prj-nmsc.adb (Record_Source): Add source file name in hash table
4584 Files_Htable for all sources.
4585
4586 * prj-proc.adb (Process): Remove restrictions between not directly
4587 related extending projects.
4588
45892004-03-18 Emmanuel Briot <briot@act-europe.fr>
4590
4591 * prj-nmsc.ads, prj-nmsc.adb (Ada_Check): New parameter Trusted_Mode.
4592 (Find_Sources): Minor speed optimization.
4593
4594 * prj-proc.ads, prj-proc.adb (Check, Recursive_Check, Process): New
4595 parameter Trusted_Mode.
4596
45972004-03-18 Sergey Rybin <rybin@act-europe.fr>
4598
4599 * scn.adb (Determine_License): Take into account a degenerated case
4600 when the source contains only comments.
4601
46022004-03-18 Ed Schonberg <schonberg@gnat.com>
4603
4604 * sem_warn.adb (Check_References): For a warning on a selected
4605 component that does not come from source, locate an uninitialized
4606 component of the record type to produce a more precise error message.
4607
e6f69614
AC
46082004-03-15 Jerome Guitton <guitton@act-europe.fr>
4609
4610 * 3zsoccon.ads: Fix multicast options.
4611
4612 * s-thread.ads: Move unchecked conversion from ATSD_Access to Address
4613 in the spec.
4614
46152004-03-15 Robert Dewar <dewar@gnat.com>
4616
4617 * sem_prag.adb: Make sure No_Strict_Aliasing flag is set right when
4618 pragma used for a private type.
4619
4620 * lib-xref.adb (Generate_Reference): Do not generate warning if
4621 reference is in a different unit from the pragma Unreferenced.
4622
4623 * 5vtpopde.adb: Minor reformatting
4624 Fix casing of To_Task_ID
4625
4626 * sem_ch13.adb (Validate_Unchecked_Conversion): Set No_Strict_Aliasing
4627 flag if we have an unchecked conversion to an access type in the same
4628 unit.
4629
46302004-03-15 Geert Bosch <bosch@gnat.com>
4631
4632 * a-ngcoty.adb (Modulus): In alternate formula for large real or
4633 imaginary parts, use Double precision throughout.
4634
4635 * a-tifiio.adb (Put_Scaled): Remove remaining pragma Debug. Not only
4636 we want to be able to compile run-time with -gnata for testing, but
4637 this may also be instantiated in user code that is compiled with -gnata.
4638
46392004-03-15 Olivier Hainque <hainque@act-europe.fr>
4640
4641 * s-stalib.ads (Exception_Code): New type, to represent Import/Export
4642 codes. Having a separate type for this is useful to enforce consistency
4643 throughout the various run-time units.
4644 (Exception_Data): Use Exception_Code for Import_Code.
4645
4646 * s-vmextra.ads, s-vmexta.adb: Use Exception_Code instead of a mix of
4647 Natural and Integer in various places.
4648 (Register_VMS_Exception): Use Base_Code_In to compute the exception code
4649 with the severity bits masked off.
4650 (Register_VMS_Exception): Handle the additional exception data pointer
4651 argument.
4652
4653 * raise.c (_GNAT_Exception structure): Remove the handled_by_others
4654 component, now reflected by an exported accessor.
4655 (is_handled_by): New routine to compute whether the propagated
4656 occurrence matches some handler choice specification. Extracted out of
4657 get_action_description_for, and expanded to take care of the VMS
4658 specifities.
4659 (get_action_description_for): Use is_handled_by instead of an explicit
4660 complex condition to decide if the current choice at hand catches the
4661 propagated occurrence.
4662
4663 * raise.h (Exception_Code): New type for C.
4664
4665 * rtsfind.ads (RE_Id, RE_Unit_Table): Add
4666 System.Standard_Library.Exception_Code, to allow references from the
4667 pragma import/export expander.
4668
4669 * a-exexpr.adb (Is_Handled_By_Others, Language_For, Import_Code_For):
4670 New accessors to allow easy access to GNAT exception data
4671 characteristics.
4672 (GNAT_GCC_Exception record, Propagate_Exception): Get rid of the
4673 redundant Handled_By_Others component, helper for the personality
4674 routine which will now be able to call the appropriate exception data
4675 accessor instead.
4676
4677 * cstand.adb (Create_Standard): Adjust the type of the Import_Code
4678 component of Standard_Exception_Type to be the closest possible to
4679 Exception_Code in System.Standard_Library, that we cannot get at this
4680 point. Expand a ??? comment to notify that this type node should
4681 probably be rewritten later on.
4682
4683 * exp_prag.adb (Expand_Pragma_Import_Export_Exception): Adjust the
4684 registration call to include a pointer to the exception object in the
4685 arguments.
4686
4687 * init.c (__gnat_error_handler): Use Exception_Code and Base_Code_In
4688 instead of int and explicit bitmasks.
4689
46902004-03-15 Vincent Celier <celier@gnat.com>
4691
4692 * vms_data.ads: Add new GNAT BIND qualifier /STATIC. Makes /NOSHARED
4693 equivalent to /STATIC and /NOSTATIC equivalent to /SHARED.
4694
4695 * a-tasatt.adb (To_Access_Code): Remove this UC instantiation, no
4696 longer needed now that it is in the spec of
4697 System.Tasking.Task_Attributes.
4698
4699 * adaint.h, adaint.c: (__gnat_create_output_file): New function
4700
4701 * gnatcmd.adb: Fix bug introduced in previous rev: /= instead of =
4702
4703 * g-os_lib.ads, g-os_lib.adb (Create_Output_Text_File): New function.
4704
4705 * make.adb (Gnatmake): Do not check the executable suffix; it is being
4706 taken care of in Scan_Make_Arg.
4707 (Scan_Make_Arg): Add the executable suffix only if the argument
4708 following -o, in canonical case, does not end with the executable
4709 suffix. When in verbose mode and executable file name does not end
4710 with executable suffix, output the executable name, in canonical case.
4711
4712 * s-tataat.ads (Access_Dummy_Wrapper): Add pragma No_Strict_Aliasing
4713 to avoid warnings when instantiating Ada.Task_Attributes.
4714 Minor reformating.
4715
4716 * mlib-prj.adb (Process_Imported_Libraries): Get the imported libraries
4717 in the correct order.
4718
4719 * prj-makr.adb (Process_Directory): No longer use GNAT.Expect, but
4720 redirect standard output and error to a file for the invocation of the
4721 compiler, then read the file.
4722
4723 * prj-nmsc.adb (Find_Sources): Use the Display_Value for each
4724 directory, instead of the Value.
4725 (Find_Source_Dirs): Remove useless code & comments.
4726
47272004-03-15 Ed Schonberg <schonberg@gnat.com>
4728
4729 * exp_ch3.adb (Freeze_Record_Type): If a primitive operation of a
4730 tagged type is inherited, and the parent operation is not frozen yet,
4731 force generation of a freeze node for the inherited operation, so the
4732 corresponding dispatch entry is properly initialized.
4733 (Make_Predefined_Primitive_Specs): Check that return type is Boolean
4734 when looking for user-defined equality operation.
4735
4736 * exp_ch4.adb (Expand_Composite_Equality): Check that return type is
4737 boolean when locating primitive equality of tagged component.
4738
4739 * exp_ch5.adb (Expand_Assign_Array): If the left-hand side is a
4740 bit-aligned field and the right-hand side a string literal, introduce
4741 a temporary before expanding assignment into a loop.
4742
4743 * exp_ch9.adb (Expand_N_Task_Type_Declaration): Copy expression for
4744 priority in full, to ensure that any expanded subepxressions of it are
4745 elaborated in the scope of the init_proc.
4746
4747 * exp_prag.adb (Expand_Pragma_Import): Search for initialization call
4748 after object declaration, skipping over code that may have been
4749 generated for validity checks.
4750
4751 * sem_ch12.adb (Validate_Private_Type_Instance): If type has unknown
4752 discriminants, ignore the known discriminants of its full view, if
4753 any, to check legality.
4754
4755 * sem_ch3.adb (Complete_Private_Subtype): Do not create constrained
4756 component if type has unknown discriminants.
4757 (Analyze_Private_Extension_Declaration): Discriminant constraint is
4758 null if type has unknown discriminants.
4759
4760 * sem_ch6.adb (Analyze_Generic_Subprogram_Body): Generate reference
4761 for end label when present.
4762
4763 * s-fileio.adb (Open): When called with a C_Stream, use given name for
4764 temporary file, rather than an empty string.
4765
47662004-03-15 Ed Falis <falis@gnat.com>
4767
4768 * s-thread.adb: Removed, no longer used.
4769
47702004-03-15 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
4771
4772 * decl.c (target.h): Now include.
4773 (gnat_to_gnu_entity, case E_Access_Type): Use mode derived from ESIZE
4774 in new build_pointer_from_mode calls for non-fat/non-thin pointer.
4775 (validate_size): For POINTER_TYPE, get smallest size permitted on
4776 machine.
4777
4778 * fe.h: Sort Einfo decls and add Set_Mechanism.
4779
4780 * Makefile.in: (LIBGNAT_SRCS): Remove types.h.
4781 (ada/decl.o): Depends on target.h.
4782
4783 * trans.c (tree_transform, N_Unchecked_Type_Conversion): Do not use
4784 FUNCTION_BOUNDARY; always use TYPE_ALIGN.
4785
47862004-03-15 Thomas Quinot <quinot@act-europe.fr>
4787
4788 * 5ztpopsp.adb, 56tpopsp.adb: Fix spelling of Task_ID.
4789
4790 * exp_ch4.adb (Expand_N_Indexed_Component): Do not call
4791 Insert_Dereference_Action when rewriting an implicit dereference into
4792 an explicit one, this will be taken care of during expansion of the
4793 explicit dereference.
4794 (Expand_N_Slice): Same. Always do the rewriting, even for the case
4795 of non-packed slices, since the dereference action generated by
4796 expansion of the explicit dereference is needed in any case.
4797 (Expand_N_Selected_Component): When rewriting an implicit dereference,
4798 analyze and resolve the rewritten explicit dereference so it is seen
4799 by the expander.
4800 (Insert_Dereference_Action): This procedure is now called only for the
4801 expansion of an N_Explcit_Dereference_Node. Do insert a check even for
4802 dereferences that do not come from source (including explicit
4803 dereferences resulting from rewriting implicit ones), but do not
4804 recursively insert a check for the dereference nodes contained within
4805 the check.
4806 (Insert_Dereference_Action): Clarify and correct comment.
4807
e4c9c075
PB
48082004-03-08 Paolo Bonzini <bonzini@gnu.org>
4809
4810 PR ada/14131
4811 Move language detection to the top level.
4812 * config-lang.in: Build by default.
4813
8a6a52dc
AC
48142004-03-05 Robert Dewar <dewar@gnat.com>
4815
4816 * 56taprop.adb, 5ataprop.adb: Remove unneeded unchecked conversions
4817
4818 * a-tags.adb, a-tags.ads, s-finimp.adb, s-finroo.ads,
4819 i-cpoint.ads, i-cpoint.adb, i-cstrin.adb, i-cstrin.ads,
90afe2c9 4820 5iosinte.ads, 5sosinte.ads, 5staspri.ads, 5itaprop.adb,
8a6a52dc
AC
4821 5staprop.adb, 5wtaprop.adb, s-tataat.ads, s-tataat.adb: Move
4822 unchecked conversion to spec to avoid warnings.
4823
4824 * s-tasini.adb, s-taskin.ads, 5atpopsp.adb: Correct spelling Task_Id
4825 to Task_ID
4826
4827 * 7stpopsp.adb: Correct casing in To_Task_ID call
4828
4829 * a-strsea.ads, a-strsea.adb: Minor reformatting
4830
4831 * einfo.ads, einfo.adb: Define new flag No_Strict_Aliasing
4832
4833 * errout.ads: Switch for VMS is now NO_STRICT_ALIASING.
4834 Adjust Max_Msg_Length to be clearly large enough.
4835
4836 * fe.h: Define In_Same_Source_Unit
4837
4838 * osint.adb: Add pragma Warnings Off to suppress warnings
4839 * g-dyntab.adb, g-table.adb, g-thread.adb: Add Warnings (Off) to kill
4840 aliasing warnings.
4841
4842 * opt.ads: Put entries in alpha order. Add entry for No_Strict_Aliasing
4843
4844 * par-prag.adb: Add dummy entry for No_Strict_Aliasing pragma
4845
4846 * sem_ch13.adb: Generate validate unchecked conversion nodes for gcc.
4847
4848 * sem_ch3.adb: Set No_Strict_Aliasing flag if config pragma set.
4849
4850 * sem_prag.adb: Implement pragma No_Strict_Aliasing.
4851
4852 * sinfo.ads: Remove obsolete comment on validate unchecked conversion
4853 node. We now do generate them for gcc back end.
4854
4855 * table.adb, sinput.adb: Add pragma Warnings Off to suppress aliasing
4856 warning.
4857
4858 * sinput-c.adb: Fix bad name in header.
4859 Add pragma Warnings Off to suppress aliasing warning.
4860
4861 * sinput-l.adb: Add pragma Warnings Off to suppress aliasing warning.
4862
4863 * snames.h, snames.ads, snames.adb: Add entry for pragma
4864 No_Strict_Aliasing.
4865
48662004-03-05 Vincent Celier <celier@gnat.com>
4867
4868 * prj-com.ads: Add hash table Files_Htable to check when a file name
4869 is already a source of another project.
4870
4871 * prj-nmsc.adb (Record_Source): Before recording a new source, check
4872 if its file name is not already a source of another project. Report an
4873 error if it is.
4874
4875 * gnatcmd.adb: When GNAT PRETTY is invoked with a project file and no
4876 source file name, call gnatpp with all the sources of the main project.
4877
4878 * vms_conv.adb (Initialize): GNAT PRETTY may be called with any number
4879 of file names.
4880
4881 * vms_data.ads: Correct documentation of new /OPTIMIZE keyword
4882 NO_STRICT_ALIASING. Add new qualifier for GNAT PRETTY:
4883 /RUNTIME_SYSTEM=, converted to --RTS=
4884 /NOTABS, converted to -notabs
4885
48862004-03-05 Pascal Obry <obry@gnat.com>
4887
4888 * make.adb: Minor reformatting.
4889
48902004-03-05 Ed Schonberg <schonberg@gnat.com>
4891
4892 Part of implemention of AI-262.
4893 * par-ch10.adb (P_Context_Clause): Recognize private with_clauses.
4894
4895 * sem_ch10.ads, sem_ch10.adb: (Install_Private_With_Clauses): New
4896 procedure.
4897
4898 * sem_ch3.adb (Analyze_Component_Declaration): Improve error message
4899 when component type is a partially constrained class-wide subtype.
4900 (Constrain_Discriminated_Type): If parent type has unknown
4901 discriminants, a constraint is illegal, even if full view has
4902 discriminants.
4903 (Build_Derived_Record_Type): Inherit discriminants when deriving a type
4904 with unknown discriminants whose full view is a discriminated record.
4905
4906 * sem_ch7.adb (Preserve_Full_Attributes): Preserve Has_Discriminants
4907 flag, to handle properly derivations of tagged types with unknown
4908 discriminants.
4909 (Analyze_Package_Spec, Analyze_Package_Body): Install
4910 Private_With_Clauses before analyzing private part or body.
4911
4912 * einfo.ads: Indicate that both Has_Unknown_Discriminants and
4913 Has_Discriminants can be true for a given type (documentation).
4914
49152004-03-05 Arnaud Charlet <charlet@act-europe.fr>
4916
4917 * s-restri.ads: Fix license (GPL->GMGPL).
4918
4919 * s-tassta.adb: Minor reformatting.
4920
4921 * s-tasren.adb: Replace manual handling of Self_Id.ATC_Nesting_Level
4922 by calls to Exit_One_ATC_Level, since additional clean up is performed
4923 by this function.
4924
4925 * s-tpobop.adb: Replace manual handling of Self_Id.ATC_Nesting_Level
4926 by calls to Exit_One_ATC_Level, since additional clean up is performed
4927 by this function.
4928
49292004-03-05 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
4930
4931 * trans.c: Reflect GCC changes to fix bootstrap problem.
4932 Add warning for suspicious aliasing unchecked conversion.
4933
49342004-03-05 GNAT Script <nobody@gnat.com>
4935
4936 * Make-lang.in: Makefile automatically updated
4937
555360a5
AC
49382004-03-02 Emmanuel Briot <briot@act-europe.fr>
4939
4940 * ali.adb (Read_Instantiation_Instance): Do not modify the
4941 current_file_num when reading information about instantiations, since
4942 this corrupts files in later references.
4943
49442004-03-02 Vincent Celier <celier@gnat.com>
4945
4946 * bcheck.adb (Check_Consistency): Get the full path of an ALI file
4947 before checking if it is read-only.
4948
4949 * bld.adb (Recursive_Process): Concatenate <PROJECT>.src_dirs in front
4950 of SRC_DIRS and eliminate duplicates.
4951
4952 * gprcmd.adb: Replace command "path" with command "path_sep" to return
4953 the path separator.
4954 (Usage): Document path_sep
4955
4956 * Makefile.generic: For Ada and GNU C++ cases, link directly with the
4957 C++ compiler. No need for a script.
4958 Replace use of C*_INCLUDE_PATH env var for GCC compilers with CPATH.
4959 Do not call gprcmd to build the C*_INCLUDE_PATHs, do it with function
4960 subst.
4961
4962 * prj-env.adb (For_All_Source_Dirs): Only add source dirs in project
4963 where there are Ada sources.
4964 (Set_Ada_Paths): Only add to the include path the source dirs of project
4965 with Ada sources.
4966 (Add_To_Path): Add the Display_Values of the directories, not their
4967 Values.
4968
4969 * prj-nmsc.adb (Find_Sources): Set flag Sources_Present in the project
4970 data.
4971
4972 * prj-nmsc.adb (Add_ALI_For): Make sure that the element Display_Value
4973 is not No_Name.
4974 (Find_Source_Dirs): Set Display_Value to a non canonicalized value, only
4975 Value is canonicalized.
4976 (Language_Independent_Check): Do not copy Value to Display_Value when
4977 canonicalizing Value.
4978
4979 * prj-part.adb (Post_Parse_Context_Clause): Compare canonical cased
4980 path to find limited with cycles.
4981 (Parse_Single_Project): Use canonical cased path to find the end of a
4982 with cycle.
4983
49842004-03-02 Ed Schonberg <schonberg@gnat.com>
4985
4986 * sem_ch10.adb (Optional_Subunit): Verify that unit contains a subunit
4987 and not a child unit.
4988
4989 * sinfo.ads, sinfo.adb: Rearrange flags so that Private_Present can
4990 appear in a with_clause.
4991
4992 * decl.c (gnat_to_gnu_type): If entity is a generic type, which can
4993 only happen in type_annotate mode, do not try to elaborate it.
4994
4995 * exp_util.adb (Force_Evaluation): If expression is a selected
4996 component on the left of an assignment, use a renaming rather than a
4997 temporary to remove side effects.
4998
4999 * freeze.adb (Freeze_Entity): Do not freeze a global entity within an
5000 inlined instance body, which is analyzed before the end of the
5001 enclosing scope.
5002
50032004-03-02 Robert Dewar <dewar@gnat.com>
5004
5005 * par-ch10.adb, par-ch3.adb, par-ch4.adb, scng.adb,
5006 sem_ch4.adb: Use new feature for substitution of keywords in VMS
5007
5008 * errout.ads, errout.adb: Implement new circuit for substitution of
5009 keywords in VMS.
5010
5011 * sem_case.adb (Analyze_Choices): Place message properly when case is
5012 a subtype reference rather than an explicit range.
5013
5014 * sem_elim.adb, s-tpobop.ads, exp_ch2.adb: Minor reformatting
5015
50162004-03-02 Doug Rupp <rupp@gnat.com>
5017
5018 * init.c (__gnat_initialize)[VMS]: Resignal RDB-E-STREAM_EOF.
5019
50202004-03-02 Thomas Quinot <quinot@act-europe.fr>
5021
5022 * s-tporft.adb: Add missing locking around call to Initialize_ATCB.
5023
50242004-03-02 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
5025
5026 * utils.c (finish_record_type): Do not set DECL_NONADDRESSABLE for a
5027 BLKmode bitfield.
5028
8a7988f5
AC
50292004-02-25 Robert Dewar <dewar@gnat.com>
5030
5031 * 51osinte.ads, 52osinte.ads, 53osinte.ads, 54osinte.ads,
5032 55osinte.ads, 56osinte.ads, 5aosinte.ads, 5bosinte.ads,
5033 5cosinte.ads, 5fosinte.ads, 5gosinte.ads, 5hosinte.ads,
5034 5iosinte.ads, 5losinte.ads, 5nosinte.ads, 5oosinte.ads,
5035 5posinte.ads, 5sosinte.ads, 5tosinte.ads, 5vosinte.ads,
5036 5wosinte.ads, 5zosinte.ads: Move instances of Unchecked_Conversion to
5037 the defining instance of the type to avoid aliasing problems.
5038 Fix copyright header. Fix bad comments in package header.
5039
5040 * exp_util.adb, prj-part.adb, prj-part.adb: Minor reformatting
5041
50422004-02-25 Ed Schonberg <schonberg@gnat.com>
5043
5044 * exp_ch2.adb (Param_Entity): Handle properly formals that have been
5045 rewritten as references when aliased through an address clause.
5046
5047 * sem_ch4.adb (Try_Indirect_Call): Normalize actuals before checking
5048 whether call can be interpreted as an indirect call to the result of a
5049 parameterless function call returning an access subprogram.
5050
50512004-02-25 Arnaud Charlet <charlet@act-europe.fr>
5052
5053 Code clean up:
5054 * exp_ch7.adb (Make_Clean): Remove generation of calls to
5055 Unlock[_Entries], since this is now done by Service_Entries directly.
5056
5057 * exp_ch9.adb (Build_Protected_Subprogram_Body): ditto.
5058
5059 * s-tpobop.ads, s-tpobop.adb (PO_Service_Entries): New nested procedure
5060 Requeue_Call for better code readability. Change spec and update calls:
5061 PO_Service_Entries now unlock the PO on exit.
5062 (Protected_Entry_Call, Timed_Protected_Entry_Call): Update calls to
5063 PO_Service_Entries.
5064
5065 * s-tposen.ads, s-tposen.adb (Service_Entry): Now unlock the PO on exit.
5066
5067 * s-taenca.adb, s-tasren.adb: Update calls to PO_Service_Entries.
5068
50692004-02-25 Sergey Rybin <rybin@act-europe.fr>
5070
5071 * exp_ch9.adb (Build_Simple_Entry_Call): Prevent expanding the
5072 protected subprogram call and analyzing the result of such expanding
5073 in case when the called protected subprogram is eliminated.
5074
5075 * sem_elim.adb (Check_Eliminated): Skip blocks when comparing scope
5076 names.
5077
50782004-02-25 Jerome Guitton <guitton@act-europe.fr>
5079
5080 * Makefile.in: Clean ups.
5081
6871ba5f
AC
50822004-02-23 Ed Schonberg <schonberg@gnat.com>
5083
5084 * exp_ch6.adb (Expand_N_Subprogram_Declaration): Do not create
5085 protected operations if original subprogram is flagged as eliminated.
5086 (Expand_N_Subprogram_Body): For a protected operation, create
5087 discriminals for next operation before checking whether the operation
5088 is eliminated.
5089
5090 * exp_ch9.adb (Expand_N_Protected_Body,
5091 Expand_N_Protected_Type_Declaration): Do not generate specs and bodies
5092 for internal protected operations if the original subprogram is
5093 eliminated.
5094
5095 * sem_elim.adb (Check_Eliminated): Handle properly protected operations
5096 declared in a single protected object.
5097
50982004-02-23 Vincent Celier <celier@gnat.com>
5099
5100 * prj-attr.adb: Make attribute Builder'Executable an associative array,
5101 case insensitive if file names are case insensitive, instead of a
5102 standard associative array.
5103
5104 * prj-attr.adb (Initialize): For 'b' associative arrays, do not set
5105 them as case insensitive on platforms where the file names are case
5106 sensitive.
5107
5108 * prj-part.adb (Parse_Single_Project): Make sure, when checking if
5109 project file has already been parsed that canonical path are compared.
5110
51112004-02-23 Robert Dewar <dewar@gnat.com>
5112
5113 * sinput-c.ads: Correct bad unit title in header
5114
5115 * freeze.adb: Minor reformatting
5116
51172004-02-23 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
5118
5119 * trans.c (tree_transform, case N_Procedure_Call_Statement): For
5120 nonaddressable COMPONENT_REF that is removing padding that we are
5121 taking the address of, take the address of the padded record instead
5122 if item is variable size.
5123
6e059adb
AC
51242004-02-20 Robert Dewar <dewar@gnat.com>
5125
5126 * bld.adb, exp_util.adb, gprcmd.adb: Minor reformatting
5127
51282004-02-20 Ed Schonberg <schonberg@gnat.com>
5129
5130 * freeze.adb (Freeze_Record_Type): Generalize mechanism that generates
5131 itype references for the constrained designated type of a component
5132 whose base type is already frozen.
5133
51342004-02-20 Arnaud Charlet <charlet@act-europe.fr>
5135
5136 * init.c (__gnat_error_handler [tru64]): Rewrite previous change to
5137 avoid GCC warnings.
5138
51392004-02-20 Sergey Rybin <rybin@act-europe.fr>
5140
5141 * sem_ch12.adb (Analyze_Formal_Package): Create a new defining
5142 identifier for a phantom package that rewrites the formal package
5143 declaration with a box. The Add semantic decorations for the defining
5144 identifier from the original node (that represents the formal package).
5145
88e3a2a3
MK
51462004-02-19 Matt Kraai <kraai@alumni.cmu.edu>
5147
5148 * Make-lang.in (ada/stamp-sdefault): Use the top level
5149 move-if-change.
5150
4221057e
RH
51512004-02-19 Richard Henderson <rth@redhat.com>
5152
5153 * misc.c (record_code_position): Add third build arg for RTL_EXPR.
5154
5c1c8a03
AC
51552004-02-18 Emmanuel Briot <briot@act-europe.fr>
5156
5157 * ali.ads, ali.adb (First_Sdep_Entry): No longer a constant, so that
5158 Scan_ALI can be used for multiple ALI files without reinitializing
5159 between calls.
5160
51612004-02-18 Robert Dewar <dewar@gnat.com>
5162
5163 * debug.adb: Minor reformatting.
5164
51652004-02-18 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
5166
5167 * decl.c (gnat_to_gnu_entity, case object): Set DECL_POINTER_ALIAS_SET
5168 to zero if there is an address clause.
5169
51702004-02-18 Thomas Quinot <quinot@act-europe.fr>
5171
5172 * exp_util.adb (Side_Effect_Free): Any literal is side effects free.
5173
51742004-02-18 Gary Dismukes <dismukes@gnat.com>
5175
5176 * layout.adb (Layout_Component_List): Revise generation of call to
5177 discriminant-checking function to pass selections of all of the type's
5178 discriminants rather than just the variant-controlling discriminant.
5179
51802004-02-18 Olivier Hainque <hainque@act-europe.fr>
5181
5182 * 5gmastop.adb (Pop_Frame): Do not call exc_unwind, which is bound to
5183 fail in the current setup and triggers spurious system error messages.
5184 Pretend it occurred and failed instead.
5185
51862004-02-18 Vincent Celier <celier@gnat.com>
5187
5188 * bld.adb: Mark FLDFLAGS as saved
5189 (Process_Declarative_Items): Add Linker'Linker_Options to FLDFLAGS when
5190 it is not the root project. Put each directory to be
5191 extended between double quotes to prevent it to be expanded on Windows.
5192 (Recursive_Process): Reset CFLAGS/CXXFLAGS to nothing before processing
5193 the project file. Set them back to their initial values if they have not
5194 been set in the project file.
5195
5196 * gprcmd.adb: (Gprdebug, Debug): New global variables
5197 (Display_Command): New procedure
5198 (Usage): Document new command "linkopts"
5199 Call Display_Command when env var GPRDEBUG has the value "TRUE"
5200 Implement new command "linkopts"
5201 Remove quotes that may be around arguments for "extend"
5202 Always call Normalize_Pathname with arguments formatted for the platform
5203
5204 * Makefile.generic: Link C/C++ mains with $(FLDFLAGS)
5205 Change @echo to @$(display) in target clean to be able to clean silently
5206
5207 * Makefile.prolog: Save FLDFLAGS and give it an initial empty value
5208
5209 * prj-part.adb (Project_Path_Name_Of): Do not put final result in
5210 canonical case.
5211
5212 * prj-part.adb (Parse_Single_Project): Always call with From_Extended
5213 = Extending_All when current project is an extending all project.
5214
5215 * vms_conv.adb (Output_File_Expected): New Boolean global variable,
5216 set to True only for LINK command, after Unix switch -o.
5217 (Process_Arguments): Set Output_File_Expected to True for LINK command
5218 after Unix switch -o. When Output_File_Expected is True, never add an
5219 extension to a file name.
5220
5221 * 5vml-tgt.adb (Build_Dynamic_Library): Do not append "/OPTIONS" to the
5222 option file name, only to the --for-linker= switch.
5223 (Option_File_Name): If option file name do not end with ".opt", append
5224 "/OPTIONS".
5225
52262004-02-18 GNAT Script <nobody@gnat.com>
5227
5228 * Make-lang.in: Makefile automatically updated
5229
80bcb4d2
MK
52302004-02-17 Matt Kraai <kraai@alumni.cmu.edu>
5231
5232 * Make-lang.in (stamp-sdefault): Do not depend on
5233 move-if-change.
5234
1daa84b6
ZW
52352004-02-12 Zack Weinberg <zack@codesourcery.com>
5236
5237 * config-lang.in: Disable Ada by default until probe logic for
5238 a bootstrap Ada compiler can be moved to the top level configure
5239 script.
5240
18c0ecbe
AC
52412004-02-12 Olivier Hainque <hainque@act-europe.fr>
5242
5243 * decl.c (components_to_record): Don't claim that the internal fields
5244 we make to hold the variant parts are semantically addressable, because
5245 they are not.
5246
5247 * exp_pakd.adb (Create_Packed_Array_Type): Rename Esiz into PASize and
5248 adjust the comment describing the modular type form when we can use it.
5249 (Install_PAT): Account for the Esiz renaming.
5250
5251 * init.c (__gnat_error_handler for alpha-tru64): Arrange to clear the
5252 sc_onstack context indication before raising the exception to which
5253 the signal is mapped. Allows better handling of later signals possibly
5254 triggered by the resumed user code if the exception is handled.
5255
52562004-02-12 Arnaud Charlet <charlet@act-europe.fr>
5257
5258 * 5zinit.adb: Removed, no longer used.
5259
52602004-02-12 Robert Dewar <dewar@gnat.com>
5261
5262 * ali.adb: Remove separating space between parameters on R line. Makes
5263 format consistent with format used by the binder for Set_Globals call.
5264
5265 * atree.ads, atree.adb: Minor reformatting (new function header format)
5266
5267 * bindgen.adb: Add Run-Time Globals documentation section containing
5268 detailed documentation of the globals passed from the binder file to
5269 the run time.
5270
5271 * gnatls.adb: Minor reformatting
5272
5273 * init.c (__gnat_set_globals): Add note pointing to documentation in
5274 bindgen.
5275
5276 * lib-writ.ads, lib-writ.adb: Remove separating space between
5277 parameters on R line.
5278 Makes format consistent with format used by the binder for Set_Globals
5279 call.
5280
5281 * osint.ads: Add 2004 to copyright notice
5282 Minor reformatting
5283
5284 * snames.ads: Correct capitalization of FIFO_Within_Priorities
5285 Noticed during code reading, documentation issue only
5286
5287 * usage.adb: Remove junk line for obsolete C switch
5288 Noticed during code reading
5289
52902004-02-12 Vincent Celier <celier@gnat.com>
5291
5292 * bld.adb (Process_Declarative_Items): For Source_Dirs call gprcmd
5293 extend for each directory, so that multiple /** directories are
5294 extended individually.
5295 (Recursive_Process): Set the default for LANGUAGES to ada
5296
5297 * gprcmd.adb: Define new command "ignore", to do nothing.
5298 Implement new comment "path".
5299
5300 * Makefile.generic: Suppress output when SILENT is set
5301 Make sure that when compiler for C/C++ is gcc, the correct -x switch is
5302 used, so that the correct compiler is invoked.
5303 When compiler is gcc/g++, put search path in env vars C_INCLUDE_PATH/
5304 CXX_INCLUDE_PATH, to avoid failure with too long command lines.
5305
53062004-02-12 Jerome Guitton <guitton@act-europe.fr>
5307
5308 * Makefile.in: Clean ups and remove obsolete targets.
5309
53102004-02-12 Ed Schonberg <schonberg@gnat.com>
5311
5312 * exp_ch5.adb: Remove Possible_Unligned_Slice, in favor of the similar
5313 predicate declared in exp_util.
5314
5315 * exp_util.adb: Add comments.
5316
5317 * sem_ch10.adb (Analyze_Subunit): Remove ultimate parent unit from
5318 visibility before compiling context of the subunit.
5319
5320 * sem_res.adb (Check_Parameterless_Call): If the context expects a
5321 value but the name is a procedure, do not attempt to analyze as a call,
5322 in order to obtain more telling diagnostics.
5323
5324 * sem_util.adb (Wrong_Type): Further enhancement to diagnose missing
5325 'Access on parameterless function calls.
5326 (Normalize_Actuals): For a parameterless function call with missing
5327 actuals, defer diagnostic until resolution of enclosing call.
5328
5329 * sem_util.adb (Wrong_Type): If the context type is an access to
5330 subprogram and the expression is a procedure name, suggest a missing
5331 'attribute.
5332
c1dcfa14
AC
53332004-02-10 Arnaud Charlet <charlet@act-europe.fr>,
5334 Nathanael Nerode <neroden@gcc.gnu.org>
5335
5336 PR ada/6637, PR ada/5911
5337 Merge with libada-branch:
90afe2c9 5338 * config-lang.in: Build libada only when ada is built.
c1dcfa14 5339
2e071734
AC
53402004-02-09 Ed Schonberg <schonberg@gnat.com>
5341
5342 * exp_ch4.adb (Expand_N_Op_Eq): When looking for the primitive equality
5343 for a tagged type, verify that both formals have the same type.
5344
5345 * exp_ch6.adb (Add_Call_By_Copy_Code): Initialize properly the
5346 temporary when the formal is an in-parameter and the actual a possibly
5347 unaligned slice.
5348
5349 * exp_ch9.adb (Expand_Entry_Barrier): Resolve barrier expression even
5350 when expansion is disabled, to ensure proper name capture with
5351 overloaded literals. Condition can be of any boolean type, resolve
5352 accordingly.
5353
5354 * sem_ch8.adb (Analyze_Subprogram_Renaming): Emit warning if the
5355 renaming is for a formal subprogram with a default operator name, and
5356 there is a usable operator that is visible at the point of
5357 instantiation.
5358
53592004-02-09 Robert Dewar <dewar@gnat.com>
5360
5361 * ali.adb (Scan_Ali) Add Ignore_Errors argument. This is a major
5362 rewrite to ignore errors in ali files, intended to allow tools downward
5363 compatibility with new versions of ali files.
5364
5365 * ali.ads: Add new parameter Ignore_Errors
5366
5367 * bcheck.adb (Check_Consistent_Restrictions): Fix error of sometimes
5368 duplicating the error message giving the file with restrictions.
5369
5370 * debug.adb: Add debug flag I for gnatbind
5371
5372 * errout.adb (Set_Msg_Insertion_Node): Suppress extra quotes around
5373 operators for the case where the operator is a defining operator.
5374
5375 * exp_ch3.adb: Minor reformatting (new function spec format).
5376
5377 * exp_ch4.adb: Add comment for previous change, and make minor
5378 adjustment to loop to always check for improper loop termination.
5379 Minor reformatting throughout (new function spec format).
5380
5381 * gnatbind.adb: Implement -di debug flag for gnatbind
5382
5383 * gnatlink.adb: Call Scan_ALI with Ignore_Errors set to True
5384
5385 * gnatls.adb: Call Scan_ALI with Ignore_Errors set to True
5386
5387 * lib-load.adb: Fix bad assertion.
5388 Found by testing and code reading.
5389 Minor reformatting.
5390
5391 * lib-load.ads: Minor reformatting.
5392
5393 * lib-writ.adb: There is only one R line now.
5394
5395 * lib-writ.ads: Add documentation on making downward compatible changes
5396 to ali files so old tools work with new ali files.
5397 There is only one R line now.
5398 Add documentation on format incompatibilities (with special GPS note)
5399
5400 * namet.ads, namet.adb: (Is_Operator_Name): New procedure
5401
5402 * par-load.adb: Minor reformatting
5403
5404 * sem_ch8.adb: Fix to error message from last update
5405 Minor reformatting and restructuring of code from last update
5406
5407 * par-prag.adb, snames.adb, snames.ads, snames.h,
5408 sem_prag.adb: Implement pragma Profile.
5409
5410 * stylesw.adb: Implement -gnatyN switch to turn off all style check
5411 options.
5412
5413 * usage.adb: Add line for -gnatyN switch
5414
5415 * vms_data.ads: Add entry STYLE_CHECKS=NONE for -gnatyN
5416
a41ea816
AC
54172004-02-09 Albert Lee <lee@gnat.com>
5418
5419 * errno.c: define _SGI_MP_SOURCE for task-safe errno on IRIX
5420
54212004-02-09 Ed Schonberg <schonberg@gnat.com>
5422
5423 * exp_ch3.adb (Build_Slice_Assignment): Handle properly case of null
5424 slices.
5425
5426 * exp_ch6.adb (Expand_Call): Do not inline a call when the subprogram
5427 is nested in an instance that is not frozen yet, to avoid
5428 order-of-elaboration problems in gigi.
5429
5430 * sem_attr.adb (Analyze_Attribute, case 'Access): Within an inlined
5431 body the attribute is legal.
5432
54332004-02-09 Robert Dewar <dewar@gnat.com>
5434
5435 * s-rident.ads: Minor comment correction
5436
5437 * targparm.adb: Remove dependence on uintp completely. There was
5438 always a bug in Make in that it called Targparm before initializing
5439 the Uint package. The old code appeared to get away with this, but
5440 the new code did not! This caused an assertion error in gnatmake.
5441
5442 * targparm.ads: Fix bad comment, restriction pragmas with parameters
5443 are indeed fully supported.
5444
725c60f8
AM
54452004-02-06 Alan Modra <amodra@bigpond.net.au>
5446
5447 * misc.c (default_pass_by_ref): Update INIT_CUMULATIVE_ARGS call.
5448
136e64db
KH
54492004-02-05 Kazu Hirata <kazu@cs.umass.edu>
5450
5451 * ada/utils.c (create_param_decl): Replace PROMOTE_PROTOTYPES
5452 with targetm.calls.promote_prototypes.
5453
06effe87
AC
54542004-02-04 Robert Dewar <dewar@gnat.com>
5455
5456 * 5gtasinf.adb, 5gtasinf.ads, 5gtaprop.adb, ali.adb,
5457 ali.ads, gprcmd.adb: Minor reformatting
5458
5459 * bindgen.adb: Output restrictions string for new style restrictions
5460 handling
5461
5462 * impunit.adb: Add s-rident.ads (System.Rident) and
5463 s-restri (System.Restrictions)
5464
5465 * lib-writ.adb: Fix bug in writing restrictions string (last few
5466 entries wrong)
5467
5468 * s-restri.ads, s-restri.adb: Change name Restrictions to
5469 Run_Time_Restrictions to avoid conflict with package name.
5470 Add circuit to read and acquire run time restrictions.
5471
54722004-02-04 Jose Ruiz <ruiz@act-europe.fr>
5473
5474 * restrict.ads, restrict.adb: Use the new restriction
5475 No_Task_Attributes_Package instead of the old No_Task_Attributes.
5476
5477 * sem_prag.adb: No_Task_Attributes is a synonym of
5478 No_Task_Attributes_Package.
5479
5480 * snames.ads, snames.adb: New entry for proper handling of
5481 No_Task_Attributes.
5482
5483 * s-rident.ads: Adding restriction No_Task_Attributes_Package
5484 (AI-00249) that supersedes the GNAT specific restriction
5485 No_Task_Attributes.
5486
54872004-02-04 Ed Schonberg <schonberg@gnat.com>
5488
90afe2c9 5489 * sem_prag.adb:
06effe87
AC
5490 (Analyze_Pragma, case Warnings): In an inlined body, as in an instance
5491 body, an identifier may be wrapped in an unchecked conversion.
5492
54932004-02-04 Vincent Celier <celier@gnat.com>
5494
5495 * lib-writ.ads: Comment update for the W lines
5496
5497 * bld.adb: (Expression): An empty string list is static
5498
5499 * fname-uf.adb: Minor comment update
5500
5501 * fname-uf.ads: (Get_File_Name): Document new parameter May_Fail
5502
5503 * gnatbind.adb: Initialize Cumulative_Restrictions with the
5504 restrictions on the target.
5505
2fb00d7f
KH
55062004-02-03 Kazu Hirata <kazu@cs.umass.edu>
5507
5508 * ada/trans.c (gigi): Use gen_rtx_SYMBOL_REF instead of
5509 gen_rtx.
5510
5ed23e25
AC
55112004-02-02 Arnaud Charlet <charlet@gnat.com>
5512
5513 * Makefile.in: Remove setting of THREADSLIB on mips o32, unneeded.
5514
6e937c1c
AC
55152004-02-02 Vincent Celier <celier@gnat.com>
5516
5517 * gprcmd.adb (Check_Args): If condition is false, print the invoked
5518 comment before the usage.
5519 Gprcmd: Fail when command is not recognized.
5520 (Usage): Document command "prefix"
5521
5522 * g-md5.adb (Digest): Process last block.
5523 (Update): Do not process last block. Store remaining characters and
5524 length in Context.
5525
5526 * g-md5.ads (Update): Document that several call to update are
5527 equivalent to one call with the concatenated string.
5528 (Context): Add fields to allow new Update behaviour.
5529
5530 * fname-uf.ads/adb (Get_File_Name): New Boolean parameter May_Fail,
5531 defaulted to False.
5532 When May_Fail is True and no existing file can be found, return No_File.
5533
5534 * 6vcstrea.adb: Inlined functions are now wrappers to implementation
5535 functions.
5536
5537 * lib-writ.adb (Write_With_Lines): When body file does not exist, use
5538 spec file name instead on the W line.
5539
55402004-02-02 Robert Dewar <dewar@gnat.com>
5541
5542 * ali.adb: Read and acquire info from new format restrictions lines
5543
5544 * bcheck.adb: Add circuits for checking restrictions with parameters
5545
5546 * bindgen.adb: Output dummy restrictions data
5547 To be changed later
5548
5549 * ali.ads, checks.adb, exp_aggr.adb, exp_attr.adb, exp_ch11.adb,
5550 exp_ch3.adb, exp_ch5.adb, exp_ch6.adb, exp_ch7.adb, exp_util.adb,
5551 freeze.adb, gnat1drv.adb, sem_attr.adb, sem_ch10.adb, sem_ch11.adb,
5552 sem_ch12.adb, targparm.adb, targparm.ads, tbuild.adb, sem_ch2.adb,
5553 sem_elab.adb, sem_res.adb: Minor changes for new restrictions handling.
5554
5555 * exp_ch9.adb (Build_Master_Entity): Cleanup the code (also suppresses
5556 the warning message on access to possibly uninitialized variable S)
5557 Minor changes for new restrictions handling.
5558
5559 * gnatbind.adb: Minor reformatting
5560 Minor changes for new restrictions handling
5561 Move circuit for -r processing here from bcheck (cleaner)
5562
5563 * gnatcmd.adb, gnatlink.adb: Minor reformatting
5564
5565 * lib-writ.adb: Output new format restrictions lines
5566
5567 * lib-writ.ads: Document new R format lines for new restrictions
5568 handling.
5569
5570 * s-restri.ads/adb: New files
5571
5572 * Makefile.rtl: Add entry for s-restri.ads/adb
5573
5574 * par-ch3.adb: Fix bad error messages starting with upper case letter
5575 Minor reformatting
5576
5577 * restrict.adb: Major rewrite throughout for new restrictions handling
5578 Major point is to handle restrictions with parameters
5579
5580 * restrict.ads: Major changes in interface to handle restrictions with
5581 parameters. Also generally simplifies setting of restrictions.
5582
5583 * snames.ads/adb: New entry for proper handling of No_Requeue
5584
5585 * sem_ch3.adb (Count_Tasks): New circuitry for implementing Max_Tasks
5586 restriction counting.
5587 Other minor changes for new restrictions handling
5588
5589 * sem_prag.adb: No_Requeue is a synonym for No_Requeue_Statements.
5590 Restriction_Warnings now allows full parameter notation
5591 Major rewrite of Restrictions for new restrictions handling
5592
55932004-02-02 Javier Miranda <miranda@gnat.com>
5594
5595 * par-ch3.adb (P_Identifier_Declarations): Give support to the Ada 0Y
5596 syntax rule for object renaming declarations.
5597 (P_Array_Type_Definition): Give support for the Ada 0Y syntax rule for
5598 component definitions.
5599
5600 * sem_ch3.adb (Analyze_Component_Declaration): Give support to access
5601 components.
5602 (Array_Type_Declaration): Give support to access components. In addition
5603 it was also modified to reflect the name of the object in anonymous
5604 array types. The old code did not take into account that it is possible
5605 to have an unconstrained anonymous array with an initial value.
5606 (Check_Or_Process_Discriminants): Allow access discriminant in
5607 non-limited types.
5608 (Process_Discriminants): Allow access discriminant in non-limited types
5609 Initialize the new Access_Definition field in N_Object_Renaming_Decl
5610 node. Change Ada0Y to Ada 0Y in comments
5611
5612 * sem_ch4.adb (Find_Equality_Types): Allow anonymous access types in
5613 equality operators.
5614 Change Ada0Y to Ada 0Y in comments
5615
5616 * sem_ch8.adb (Analyze_Object_Renaming): Give support to access
5617 renamings Change Ada0Y to Ada 0Y in comments
5618
5619 * sem_type.adb (Find_Unique_Type): Give support to the equality
5620 operators for universal access types
5621 Change Ada0Y to Ada 0Y in comments
5622
5623 * sinfo.adb (Access_Definition, Set_Access_Definition): New subprograms
5624
5625 * sinfo.ads (N_Component_Definition): Addition of Access_Definition
5626 field.
5627 (N_Object_Renaming_Declaration): Addition of Access_Definition field
5628 Change Ada0Y to Ada 0Y in comments
5629
5630 * sprint.adb (Sprint_Node_Actual): Give support to the new syntax for
5631 component definition and object renaming nodes
5632 Change Ada0Y to Ada 0Y in comments
5633
56342004-02-02 Jose Ruiz <ruiz@act-europe.fr>
5635
5636 * restrict.adb: Use the new restriction identifier
5637 No_Requeue_Statements instead of the old No_Requeue for defining the
5638 restricted profile.
5639
5640 * sem_ch9.adb (Analyze_Requeue): Check the new restriction
5641 No_Requeue_Statements.
5642
5643 * s-rident.ads: Adding restriction No_Requeue_Statements (AI-00249)
5644 that supersedes the GNAT specific restriction No_Requeue. The later is
5645 kept for backward compatibility.
5646
56472004-02-02 Ed Schonberg <schonberg@gnat.com>
5648
5649 * lib.ads, i-cobol.ads, * s-stoele.ads, s-thread.ads, style.ads,
5650 5staprop.adb, atree.adb, atree.ads, g-crc32.ads: Remove redundant
5651 pragma and fix incorrect ones.
5652
5653 * sem_prag.adb For pragma Inline and pragma Pure_Function, emit a
5654 warning if the pragma is redundant.
5655
56562004-02-02 Thomas Quinot <quinot@act-europe.fr>
5657
5658 * 5staprop.adb: Add missing 'constant' keywords.
5659
5660 * Makefile.in: use consistent value for SYMLIB on
5661 platforms where libaddr2line is supported.
5662
56632004-02-02 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
5664
5665 * utils.c (end_subprog_body): Do not call rest_of_compilation if just
5666 annotating types.
5667
56682004-02-02 Olivier Hainque <hainque@act-europe.fr>
5669
5670 * init.c (__gnat_install_handler): Setup an alternate stack for signal
5671 handlers in the environment thread. This allows proper propagation of
5672 an exception on stack overflows in this thread even when the builtin
5673 ABI stack-checking scheme is used without support for a stack reserve
5674 region.
5675
5676 * utils.c (create_field_decl): Augment the head comment about bitfield
5677 creation, and don't account for DECL_BIT_FIELD in DECL_NONADDRESSABLE_P
5678 here, because the former is not accurate enough at this point.
5679 Let finish_record_type decide instead.
5680 Don't make a bitfield if the field is to be addressable.
5681 Always set a size for the field if the record is packed, to ensure the
5682 checks for bitfield creation are triggered.
5683 (finish_record_type): During last pass over the fields, clear
5684 DECL_BIT_FIELD when possible in the !STRICT_ALIGNMENT case, as this is
5685 not covered by the calls to layout_decl. Adjust DECL_NONADDRESSABLE_P
5686 from DECL_BIT_FIELD.
5687
71cbe2c1
KC
56882004-01-30 Kelley Cook <kcook@gcc.gnu.org>
5689
90afe2c9 5690 * Make-lang.in (doc/gnat_ug_unx.dvi): Use $(abs_docdir).
71cbe2c1
KC
5691 (doc/gnat_ug_vms.dvi, doc/gnat_ug_unx.dvi): Likewise.
5692 (doc/gnat_ug_unx.dvi, doc/gnat-style.dvi): Likewise.
5693
7f996f90
RO
56942004-01-26 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
5695
5696 * Makefile.in (mips-sgi-irix5): Remove -lathread from THREADSLIB.
5697
5698 * 5fsystem.ads (Functions_Return_By_DSP): Set to False.
5699 (ZCX_By_Default): Likewise.
5700 (Front_End_ZCX_Support): Likewise.
5701
5702 * 5gtaprop.adb (Stack_Guard): Mark T, On unreferenced.
5703 (Initialize_Lock): Mark Level unreferenced.
5704 (Sleep): Mark Reason unreferenced.
5705 (Timed_Sleep): Likewise.
5706 (Wakeup): Likewise.
5707 (Exit_Task): Use Result.
5708 (Check_No_Locks): Mark Self_ID unreferenced.
90afe2c9 5709
7f996f90
RO
5710 * 5gtasinf.adb (New_Sproc): Make Attr constant.
5711 (Bound_Thread_Attributes): Make Sproc constant.
5712 (New_Bound_Thread_Attributes): Likewise.
5713
26fd4eae
AC
57142004-01-26 Ed Schonberg <schonberg@gnat.com>
5715
5716 * exp_ch3.adb (Build_Slice_Assignment): New TSS procedure for
5717 one-dimensional array an slice assignments, when component type is
5718 controlled.
5719
5720 * exp_ch5.adb (Expand_Assign_Array): If array is one-dimensional,
5721 component type is controlled, and control_actions are in effect, use
5722 TSS procedure rather than generating inline code.
5723
5724 * exp_tss.ads (TSS_Slice_Assign): New TSS procedure for one-dimensional
5725 arrays with controlled components.
5726
57272004-01-26 Vincent Celier <celier@gnat.com>
5728
5729 * gnatcmd.adb (GNATCmd): Add specification of argument file on the
5730 command line for the non VMS case.
5731
5732 * gnatlink.adb (Process_Binder_File): When building object file, if
5733 GNU linker is used, put all object paths between quotes, to prevent ld
5734 error when there are unusual characters (such as '!') in the paths.
5735
5736 * Makefile.generic: When there are sources in Ada and the main is in
5737 C/C++, invoke gnatmake with -B, instead of -z.
5738
5739 * vms_conv.adb (Preprocess_Command_Data): New procedure, extracted
5740 from VMS_Conversion.
5741 (Process_Argument): New procedure, extracted from VMS_Conversion. Add
5742 specification of argument file on the command line.
5743
57442004-01-26 Bernard Banner <banner@gnat.com>
5745
5746 * Makefile.in: Enable GMEM_LIB and SYMLIB for x86_64
5747
57482004-01-26 Ed Schonberg <schonberg@gnat.com>
5749
5750 * snames.adb: Update copyright notice.
5751 Add info on slice assignment for controlled arrays.
5752
b7e429ab
AC
57532004-01-23 Robert Dewar <dewar@gnat.com>
5754
5755 * exp_aggr.adb: Minor reformatting
5756
5757 * exp_ch9.adb: Minor code clean up
5758 Minor reformatting
5759 Fix bad character in comment
5760
5761 PR ada/13471
5762 * targparm.adb (Get_Target_Parameters): Give clean abort error on
5763 unexpected end of file, along with more detailed message.
5764
57652004-01-23 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
5766
5767 * exp_pakd.adb (Install_PAT): Clear Freeze_Node for PAT and Etype of
5768 PAT.
5769
5770 * decl.c (copy_alias_set): New function.
5771 (gnat_to_gnu_entity, make_aligning_type, make_packable_type): Use it.
5772
57732004-01-23 Doug Rupp <rupp@gnat.com>
5774
5775 * Makefile.in (install-gnatlib): Change occurrences of lib$$file to
5776 lib$${file} in case subsequent character is not a separator.
5777
57782004-01-23 Vincent Celier <celier@gnat.com>
5779
5780 * 5vml-tgt.adb (Build_Dynamic_Library): Invoke gcc with -shared-libgcc
5781 when the GCC version is at least 3.
5782
5783 * make.adb: (Scan_Make_Arg): Pass -B to Scan_Make_Switches
5784 Remove all "Opt.", to prepare for opt split
5785
5786 * prj-part.adb (Parse_Single_Project): New Boolean out parameter
5787 Extends_All. Set to True when the project parsed is an extending all
5788 project. Fails for importing an extending all project only when the
5789 imported project is an extending all project.
5790 (Post_Parse_Context_Clause): Set Is_Extending_All to the with clause,
5791 depending on the value of Extends_All returned.
5792
5793 * prj-proc.adb (Process): Check that no project shares its object
5794 directory with a project that extends it, directly or indirectly,
5795 including a virtual project.
5796 Check that no project extended by another project shares its object
5797 directory with another also extended project.
5798
5799 * prj-tree.adb (Is_Extending_All, Set_Is_Extending_All): Allow for
5800 Kind = N_With_Clause
5801
5802 * prj-tree.ads: Minor reformatting
5803 Indicate that Flag2 also applies to N_With_Clause (Is_Extending_All).
5804
58052004-01-23 Ed Schonberg <schonberg@gnat.com>
5806
5807 * sem_ch13.adb (Analyze_Attribute_Definition_Clause): If the attribute
5808 applies to a type with an incomplete view, use full view in Name of
5809 clause, for consistency with uses of Get_Attribute_Definition_Clause.
5810
58112004-01-23 Arnaud Charlet <charlet@act-europe.fr>
5812
5813 * 5itaprop.adb (Set_Priority): Reset the priority to 0 when using
5814 SCHED_RR, since other values are not supported by this policy.
5815 (Initialize): Move initialization of mutex attribute to package
5816 elaboration, to prevent early access to this variable.
5817
5818 * Makefile.in: Remove mention of Makefile.adalib, unused.
5819
b291953f
AC
5820 * Makefile.adalib, 1aexcept.adb, 1aexcept.ads, 1ic.ads, 1ssecsta.adb,
5821 1ssecsta.ads: Removed, unused.
b7e429ab 5822
adc04486
AC
58232004-01-21 Javier Miranda <miranda@gnat.com>
5824
5825 * exp_aggr.adb (Build_Record_Aggr_Code): Do not build the master
5826 entity if already built in the current scope.
5827
5828 * exp_ch9.adb (Build_Master_Entity): Do not set the has_master_entity
5829 reminder in internal scopes. Required for nested limited aggregates.
5830
58312004-01-21 Doug Rupp <rupp@gnat.com>
5832
5833 * Makefile.in (hyphen): New variable, default value '-'. Set to '_' on
5834 VMS. Replace all occurences of libgnat- and libgnarl- with
5835 libgnat$(hyphen) and libgnarl$(hyphen).
5836 Fixed shared library build problem on VMS.
5837
58382004-01-21 Robert Dewar <dewar@gnat.com>
5839
5840 * mlib-prj.adb: Minor reformatting
5841
58422004-01-21 Thomas Quinot <quinot@act-europe.fr>
5843
5844 * prj-tree.adb, 7staprop.adb, vms_conv.adb, xr_tabls.adb: Add missing
5845 'constant' keywords for declaration of pointers that are not modified.
5846
5847 * exp_pakd.adb: Fix English in comment.
5848
58492004-01-21 Ed Schonberg <schonberg@gnat.com>
5850
5851 PR ada/10889
5852 * sem_ch3.adb (Analyze_Subtype_Declaration): For an array subtype,
5853 copy all attributes of the parent, including the foreign language
5854 convention.
5855
58562004-01-21 Sergey Rybin <rybin@act-europe.fr>
5857
5858 PR ada/10565
5859 * sem_ch9.adb (Analyze_Delay_Alternative): Add expression type check
5860 for 'delay until' statement.
5861
a541f69d
KC
58622004-01-20 Kelley Cook <kcook@gcc.gnu.org>
5863
5864 * Make-lang.in: Replace $(docdir) with doc.
5865 (doc/gnat_ug_unx.info, doc/gnat_ug_vwx.info, doc/gnat_ug_vms.info
5866 doc/gnat_ug_wnt.info, doc/gnat_rm.info, doc/gnat-style.info): Update
5867 to use consistent MAKEINFO rule.
5868 (ada.man, ada.srcman): Dummy entry.
5869 (ADA_INFOFILES): Define.
5870 (ada.info, ada.srcinfo): New rules.
5871
c01a9391
AC
58722004-01-19 Arnaud Charlet <charlet@act-europe.fr>
5873
5874 * utils.c: Update copyright notice, missed in previous change.
5875
58762004-01-19 Vincent Celier <celier@gnat.com>
5877
5878 * mlib-prj.adb (Build_Library.Add_ALI_For): Only add the ALI to the
5879 args if Bind is True. Set First_ALI, if not already done.
5880 (Build_Library): For Stand Alone Libraries, extract from one ALI file
5881 an eventual --RTS switch, for gnatbind, and all backend switches +
5882 --RTS, for linking.
5883
58842004-01-19 Robert Dewar <dewar@gnat.com>
5885
5886 * sem_attr.adb, memtrack.adb: Minor reformatting
5887
58882004-01-19 Ed Schonberg <schonberg@gnat.com>
5889
5890 * exp_ch6.adb (Expand_Call): Remove code to fold calls to functions
5891 that rename enumeration literals. This is properly done in sem_eval.
5892
5893 * sem_eval.ads, sem_eval.adb (Eval_Call): New procedure to fold calls
5894 to functions that rename enumeration literals.
5895
5896 * sem_res.adb (Resolve_Call): Use Eval_Call to fold static calls to
5897 functions that rename enumeration literals.
5898
510d1e80
KH
58992004-01-16 Kazu Hirata <kazu@cs.umass.edu>
5900
5901 * Make-lang.in (utils.o): Depend on target.h.
5902 * utils.c: Include target.h.
5903 (process_attributes): Use targetm.have_named_sections instead
5904 of ASM_OUTPUT_SECTION_NAME.
5905
fbf3e0dd
AJ
59062004-01-16 Andreas Jaeger <aj@suse.de>
5907
5908 * Makefile.in: Add $(DESTDIR).
5909
acd47d2a
AC
59102004-01-15 Olivier Hainque <hainque@act-europe.fr>
5911
5912 * decl.c (gnat_to_gnu_entity, E_Variable): Retrieve the object size
5913 also when not defining if a Size clause applies. That information is
5914 not to be ignored.
5915
59162004-01-15 Arnaud Charlet <charlet@act-europe.fr>
5917
5918 * Makefile.in (install-gnatlib, gnatlib-shared-default): Set up
5919 symbolic links for the shared gnat run time when needed.
5920
59212004-01-15 Vasiliy Fofanov <fofanov@act-europe.fr>
5922
5923 * memtrack.adb (Gmem_Initialize): check that gmem.out could be opened
5924 for writing, and terminate with an error message if not.
5925
59262004-01-15 Ed Schonberg <schonberg@gnat.com>
5927
5928 * sem_attr.adb (Resolve_Attribute, case 'Access): Remove spurious
5929 warning on an access to subprogram in an instance, when the target
5930 type is declared in the same generic unit.
5931 (Eval_Attribute): If 'access is known to fail accessibility check,
5932 rewrite as a raise statement.
5933
59342004-01-15 GNAT Script <nobody@gnat.com>
5935
5936 * Make-lang.in: Makefile automatically updated
5937
03787dfd
KC
59382004-01-15 Kelley Cook <kcook@gcc.gnu.org>
5939
5940 * Make-lang.in (ada.srcextra): Dummy entry.
5941
73e232f0
KC
59422004-01-14 Kelley Cook <kcook@gcc.gnu.org>
5943
5944 * Make-lang.in: Only regenerate texi files if --enable-maintainer-mode.
5945
9bc43c53
AC
59462004-01-13 Ed Schonberg <schonberg@gnat.com>
5947
5948 * exp_ch3.adb (Build_Assignment): Fix bug in handling of controlled
5949 components that are initialized with aggregates.
5950
59512004-01-13 Vincent Celier <celier@gnat.com>
5952
5953 * gnatlink.adb (Process_Binder_File): To find directory of shared
5954 libgcc, if "gcc-lib" is not a subdirectory, look for the last
5955 subdirectory "lib" in the path of the shared libgnat or libgnarl.
5956
5957 * make.adb (Gnatmake): If GCC version is at least 3, link with
5958 -shared-libgcc, when there is at least one shared library project.
5959
5960 * opt.ads (GCC_Version): New integer constant.
5961
5962 * adaint.c (get_gcc_version): New function.
5963
59642004-01-13 Robert Dewar <dewar@gnat.com>
5965
5966 * sem_dist.adb, sem_res.adb, sem_util.adb,
5967 sprint.adb, 3zsocthi.adb, einfo.adb, cstand.adb,
5968 exp_ch4.adb, exp_ch9.adb, exp_dist.adb: Minor reformatting
5969
59702004-01-13 Thomas Quinot <quinot@act-europe.fr>
5971
5972 * s-interr.adb, s-stache.adb, s-taenca.adb, g-regpat.adb,
5973 g-spitbo.adb, 5itaprop.adb: Add missing 'constant' keywords in object
5974 declarations.
5975
8b52de7b
AC
59762004-01-12 Arnaud Charlet <charlet@act-europe.fr>
5977
f6ea0188
AC
5978 * misc.c: Remove trailing spaces.
5979 Update copyright notice missed in previous change.
5980
8b52de7b
AC
5981 PR ada/13572
5982 * bld.adb (Recursive_Process): Reference prefix/share/gnat instead of
5983 prefix/share/make
5984
5985 * Makefile.generic: Update copyright.
5986 Add license notice.
5987
5988 * Makefile.in (ADA_SHARE_MAKE_DIR): Set to prefix/share/gnat instead
5989 of prefix/share/make.
5990
5991 * Makefile.prolog: Update copyright.
5992 Add license notice.
5993
59942004-01-12 Laurent Pautet <pautet@act-europe.fr>
5995
5996 * 3vsocthi.adb, 3vsocthi.ads, 3wsocthi.adb,
5997 3wsocthi.ads, 3zsocthi.adb, 3zsocthi.ads, g-socthi.adb,
5998 g-socthi.ads (Socket_Error_Message): Return C.Strings.chars_ptr
5999 instead of String.
6000
6001 * g-socket.adb (Raise_Socket_Error): Use new Socket_Error_Message
6002 signature.
6003
60042004-01-12 Javier Miranda <miranda@gnat.com>
6005
6006 * cstand.adb, exp_aggr.adb, exp_ch3.adb, exp_ch9.adb, exp_dist.adb,
6007 exp_imgv.adb, exp_pakd.adb, exp_util.adb, par-ch3.adb, sem.adb,
6008 sem_ch12.adb, sem_ch3.adb, sem_dist.adb, sem_prag.adb, sem_res.adb,
6009 sem_util.adb, sinfo.adb, sinfo.ads, sprint.adb: Addition of
6010 Component_Definition node.
6011
60122004-01-12 Ed Falis <falis@gnat.com>
6013
6014 * impunit.adb: Add GNAT.Secondary_Stack_Info as user-visible unit
6015
60162004-01-12 Thomas Quinot <quinot@act-europe.fr>
6017
6018 * link.c: Change default libgnat kind to STATIC for FreeBSD.
6019
60202004-01-12 Bernard Banner <banner@gnat.com>
6021
6022 * Makefile.in: map 86numaux to a-numaux for x86_64
6023
60242004-01-12 Ed Schonberg <schonberg@gnat.com>
6025
6026 * lib-xref.adb (Get_Type_Reference): If the type is the subtype entity
6027 generated to rename a generic actual, go to the actual itself, the
6028 subtype is not a user-visible entity.
6029
6030 * sem_ch7.adb (Uninstall_Declarations): If an entity in the visible
6031 part is a private subtype, reset the visibility of its full view, if
6032 any, to be consistent.
6033
6034 PR ada/13417
6035 * sem_ch12.adb (Analyze_Formal_Package): Diagnose properly an attempt
6036 to use a generic package G as a formal package for another generic
6037 declared within G.
6038
60392004-01-12 Robert Dewar <dewar@gnat.com>
6040
6041 * trans.c (Eliminate_Error_Msg): New procedure called to generate msg
6042
6043 * usage.adb: Remove mention of obsolete -gnatwb switch
6044 Noticed during code reading
6045
60462004-01-12 Jerome Guitton <guitton@act-europe.fr>
6047
6048 * 1ssecsta.adb: Minor changes for -gnatwa warnings
6049
60502004-01-12 GNAT Script <nobody@gnat.com>
6051
6052 * Make-lang.in: Makefile automatically updated
6053
0fab64a3
MM
60542004-01-09 Mark Mitchell <mark@codesourcery.com>
6055
6056 * misc.c (gnat_expand_expr): Add alt_rtl parameter.
6057
47527624
RO
60582004-01-07 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
6059
6060 * link.c [sgi] (shared_libgnat_default): Change to STATIC.
6061
dedebde1
KC
60622004-01-05 Kelley Cook <kcook@gcc.gnu.org>
6063
fbf3e0dd 6064 * Make-lang.in: Revert stamp-xgnatug change from 2003-12-18.
dedebde1
KC
6065 Update comment and copyright date.
6066 * stamp-xgnatug: Delete.
6067
91b1417d
AC
60682004-01-05 Robert Dewar <dewar@gnat.com>
6069
6070 * 1ssecsta.ads: Default_Secondary_Stack is not a constant since it may
6071 be modified by the binder generated main program if the -D switch is
6072 used.
6073
6074 * 4onumaux.ads, 4znumaux.ads: Add Pure_Function pragmas for all
6075 imported functions (since now we expect this to be done for imported
6076 functions)
6077
6078 * 5vtaprop.adb: Add several ??? for sections requiring more comments
6079 Minor reformatting throughout
6080
6081 * 5zinit.adb: Minor reformatting
6082 Add 2004 to copyright date
6083 Minor changes to avoid -gnatwa warnings
6084 Correct some instances of using OR instead of OR ELSE (noted while
6085 doing reformatting)
6086
6087 * sprint.adb: Minor updates to avoid -gnatwa warnings
6088
fbf3e0dd 6089 * s-secsta.ads, s-secsta.adb:
91b1417d
AC
6090 (SS_Get_Max): New function to obtain high water mark for ss stack
6091 Default_Secondary_Stack is not a constant since it may be modified by
6092 the binder generated main program if the -D switch is used.
6093
6094 * switch-b.adb: New -Dnnn switch for binder
6095
fbf3e0dd 6096 * switch-c.adb:
91b1417d
AC
6097 Make -gnatg imply all warnings currently in -gnatwa
6098
6099 * vms_conv.adb: Minor reformatting
6100 Add 2004 to copyright notice
6101 Add 2004 to printed copyright notice
6102
6103 * 3vexpect.adb, 4zsytaco.adb, 3wsocthi.adb, 3zsocthi.adb,
6104 3zsocthi.adb, 56taprop.adb, 56tpopsp.adb, 5amastop.adb,
6105 5aml-tgt.adb, 5ataprop.adb, 5ataprop.adb, 5atpopsp.adb,
6106 5ftaprop.adb, 5ginterr.adb, 5gmastop.adb, 5gml-tgt.adb,
6107 5gtaprop.adb, 5hml-tgt.adb, 5hml-tgt.adb, 5hml-tgt.adb,
6108 5htaprop.adb, 5htraceb.adb, 5itaprop.adb, 5lml-tgt.adb,
6109 5sml-tgt.adb, 5staprop.adb, 5staprop.adb, 5stpopsp.adb,
6110 5vasthan.adb, 5vinmaop.adb, 5vinterr.adb, 5vtaprop.adb,
6111 5vml-tgt.adb, 5vtaprop.adb, 5wosprim.adb, 5wtaprop.adb,
6112 5zinterr.adb, 5zintman.adb, 5zml-tgt.adb, 5ztaprop.adb,
6113 6vcpp.adb, 6vcstrea.adb, 7staprop.adb, 7stpopsp.adb,
6114 vxaddr2line.adb, vxaddr2line.adb, xref_lib.adb, xr_tabls.adb,
6115 xr_tabls.ads, s-tasdeb.adb, s-tasdeb.adb, sem_res.ads,
6116 sem_util.adb, sem_util.adb, sem_util.ads, s-interr.adb,
6117 checks.adb, clean.adb, cstand.adb, einfo.ads,
6118 einfo.adb, exp_aggr.adb, exp_ch11.adb, exp_ch3.adb,
6119 exp_ch4.adb, exp_ch5.adb, exp_ch7.adb, exp_ch9.adb,
6120 prj-nmsc.adb, prj-pp.adb, prj-util.adb, sem_attr.adb,
6121 sem_ch10.adb, sem_ch12.adb, sem_ch4.adb, g-dirope.adb,
6122 g-dirope.ads, gnatlbr.adb, i-cstrea.adb, inline.adb,
6123 lib-xref.adb, sem_ch5.adb, sem_ch7.adb, sem_ch8.adb:
6124 Minor reformatting and code clean ups.
6125 Minor changes to prevent -gnatwa warnings
6126
6127 * ali.adb: Minor reformatting and cleanup of code
6128 Acquire new SS indication of secondary stack use from ali files
6129
6130 * a-numaux.ads: Add Pure_Function pragmas for all imported functions
6131 (since now we expect this to be done for imported functions)
6132
6133 * bindgen.adb: Generate call to modify default secondary stack size if
6134 -Dnnn switch given
6135
6136 * bindusg.adb: Add line for new -D switch
6137
6138 * exp_aggr.adb (Type_May_Have_Bit_Aligned_Components): More appropriate
6139 replacement name for Type_May_Have_Non_Bit_Aligned_Components!
6140 Add circuitry for both records and arrays to avoid gigi
6141 processing if the type involved has non-bit-aligned components
6142
6143 * exp_ch5.adb (Expand_Assign_Array): Avoid assumption that
6144 N_String_Literal node always references an E_String_Literal_Subtype
6145 entity. This may not be true in the future.
6146 (Possible_Bit_Aligned_Component): Move processing of
6147 Component_May_Be_Bit_Aligned from exp_ch5 to exp_util
6148
6149 * exp_ch6.adb (Expand_Thread_Body): Pick up
6150 Default_Secondary_Stack_Size as variable so that we get value modified
6151 by possible -Dnnn binder parameter.
6152
6153 * exp_util.adb (Component_May_Be_Bit_Aligned): New function.
6154 (Type_May_Have_Bit_Aligned_Components): New function.
6155
6156 * exp_util.ads (Component_May_Be_Bit_Aligned): New function.
6157 (Type_May_Have_Bit_Aligned_Components): New function.
6158
6159 * fe.h: (Set_Identifier_Casing): Fix prototype.
6160 Add declaration for Sem_Elim.Eliminate_Error_Msg.
6161 Minor reformatting.
6162
6163 * freeze.adb (Freeze_Entity): Add RM reference to error message about
6164 importing constant atomic/volatile objects.
6165 (Freeze_Subprogram): Reset Is_Pure indication for imported subprogram
6166 unless explicit Pure_Function pragma given, to avoid insidious bug of
6167 call to non-pure imported function getting eliminated.
6168
6169 * gnat1drv.adb, gnatbind.adb, gnatchop.adb, gnatfind.adb,
6170 gnatls.adb, gnatlink.adb, gnatmem.adb, gnatname.adb, gnatsym.adb,
6171 gnatxref.adb, gprcmd.adb, gprep.adb, make.adb: Minor reformatting
6172 Add 2004 to printed copyright notice
6173
6174 * lib-writ.ads, lib-writ.adb: Put new SS flag in ali file if secondary
6175 stack used.
6176
6177 * Makefile.rtl: Add entry for g-sestin.o
6178 g-sestin.ads: New file.
6179
6180 * mdll.adb: Minor changes to avoid -gnatwa warnings
6181
6182 * mlib-tgt.adb: Minor reformatting
6183
6184 * opt.ads: New parameter Default_Secondary_Stack_Size (GNATBIND)
6185 New switch Sec_Stack_Used (GNAT, GNATBIND)
6186 Make Default_Secondary_Stack_Size a variable instead of a constant,
6187 so that it can be modified by the new -Dnnn bind switch.
6188
6189 * rtsfind.adb (Load_Fail): Give full error message in configurable
6190 run-time mode if all_errors mode is set. This was not done in the case
6191 of a file not found, which was an oversight.
6192 Note if secondary stack unit is used by compiler.
6193
6194 * sem_elab.adb (Check_A_Call): Rewrite to avoid trying to put
6195 ineffective elaborate all pragmas on non-visible packages (this
6196 happened when a renamed subprogram was called). Now the elaborate all
6197 always goes on the package containing the renaming rather than the one
6198 containing the renamed subprogram.
6199
6200 * sem_elim.ads, sem_elim.adb (Eliminate_Error_Msg): New procedure
6201 (Process_Eliminate_Pragma): Add parameter to capture pragma location.
6202
6203 * sem_eval.adb (Eval_String_Literal): Do not assume that string literal
6204 has an Etype that references an E_String_Literal.
6205 (Eval_String_Literal): Avoid assumption that N_String_Literal node
6206 always references an E_String_Literal_Subtype entity. This may not
6207 be true in the future.
6208
6209 * sem_prag.adb (Process_Eliminate_Pragma): Add parameter to capture
6210 pragma location.
6211
6212 * sem_res.adb (Resolve): Specialize msg for function name used in proc
6213 call.
6214
62152004-01-05 Ed Falis <falis@gnat.com>
6216
6217 * g-debuti.adb: Replaced direct boolean operator with short-circuit
6218 form.
6219
62202004-01-05 Vincent Celier <celier@gnat.com>
6221
6222 * bld.adb: Minor comment updates
6223 (Process_Declarative_Items): Correct incorrect name (Index_Name instead
6224 of Item_Name).
6225
6226 * make.adb (Gnatmake): Special process for files to compile/check when
6227 -B is specified. Fail when there are only foreign mains in attribute
6228 Main of the project file and -B is not specified. Do not skip bind/link
6229 steps when -B is specified.
6230
6231 * makeusg.adb: Document new switch -B
6232
6233 * opt.ads (Build_Bind_And_Link_Full_Project): New Boolean flag
6234
6235 * switch-m.adb: (Scan_Make_Switches): Process -B switch
6236
6237 * vms_data.ads: Add new GNAT PRETTY qualifier
6238 /FORM_FEED_AFTER_PRAGMA_PAGE for switch -ff
6239
62402004-01-05 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
6241
6242 * trans.c (tree_transform, case N_Free_Statement): Handle thin pointer
6243 case.
6244
6245 * misc.c (gnat_printable_name): If VERBOSITY is 2, call
6246 Set_Identifier_Casing.
6247
6248 * decl.c (gnat_to_gnu_entity, E_Function): Give error if return type
6249 has size that overflows.
6250
62512004-01-05 Gary Dismukes <dismukes@gnat.com>
6252
6253 * exp_ch4.adb (Expand_Array_Comparison): Add Boolean constant to avoid
6254 -gnatwa warning on static condition.
6255
62562004-01-05 Doug Rupp <rupp@gnat.com>
6257
6258 * link.c: (shared_libgnat_default) [VMS]: Change to STATIC.
6259
62602004-01-05 Arnaud Charlet <charlet@act-europe.fr>
6261
6262 * Makefile.in: Install ali files using INSTALL_DATA_DATE to preserve
6263 all attributes, including read-only attribute.
6264
62652004-01-05 Pascal Obry <obry@gnat.com>
6266
6267 * bindgen.adb (Gen_Object_Files_Options): Generate the new shared
6268 library naming scheme.
6269
6270 * mlib-prj.adb (Build_Library): Generate different names for the static
6271 or dynamic version of the GNAT runtime. This is needed to support the
6272 new shared library naming scheme.
6273 (Process_Binder_File): Add detection of shared library in binder file
6274 based on the new naming scheme.
6275
6276 * gnatlink.adb (Process_Binder_File): Properly detect the new naming
6277 scheme for the shared runtime libraries.
6278
6279 * Makefile.in:
6280 (LIBRARY_VERSION) [VMS]: Convert all . to _ to conform to new naming
6281 scheme.
6282 (install-gnatlib): Do not create symlinks for shared libraries.
6283 (gnatlib-shared-default): Idem.
6284 (gnatlib-shared-dual-win32): New target. Not used for now as the
6285 auto-import feature does not support arrays/records.
6286 (gnatlib-shared-win32): Do not create copy for the shared libraries.
6287 (gnatlib-shared-vms): Fix shared runtime libraries names.
6288
6289 * osint.ads, osint.adb (Shared_Lib): New routine, returns the target
6290 dependent runtime shared library name.
6291
62922004-01-05 Vasiliy Fofanov <fofanov@act-europe.fr>
6293
6294 * osint.adb (Read_Library_Info): Remove bogus check if ALI is older
6295 than the object.
6296
62972004-01-05 Ed Schonberg <schonberg@gnat.com>
6298
6299 * sem_ch4.adb (Analyze_Allocator): Check restriction on dynamic
6300 protected objects when allocator has a subtype indication, not a
6301 qualified expression. Note that qualified expressions may have to be
6302 checked when limited aggregates are implemented.
6303
6304 * sem_prag.adb (Analyze_Pragma, case Import): If enclosing package is
6305 pure, emit warning.
6306 (Analyze_Pragma, case Pure_Function): If enclosing package is pure and
6307 subprogram is imported, remove warning.
6308
63092004-01-05 Geert Bosch <bosch@gnat.com>
6310
6311 * s-poosiz.adb: Update copyright notice.
6312 (Allocate): Use Task_Lock to protect against concurrent access.
6313 (Deallocate): Likewise.
6314
63152004-01-05 Joel Brobecker <brobecker@gnat.com>
6316
6317 * s-stalib.adb (Elab_Final_Code): Add missing year in date inside ???
6318 comment.
6319
2ab127f3
KC
63202003-12-23 Kelley Cook <kcook@gcc.gnu.org>
6321
6322 * gnat_ug.texi: Force a CVS commit by updating copyright.
6323 * gnat_ug_vxw.texi: Regenerate.
6324 * gnat_ug_wnt.texi: Regenerate.
6325 * gnat_ug_vms.texi: Regenerate.
6326 * gnat_ug_unx.texi: Regenerate.
6327
aed8bfdc
KH
63282003-12-20 Kazu Hirata <kazu@cs.umass.edu>
6329
6330 * trans.c: Remove uses of "register" specifier in
6331 declarations of local variables.
6332
90c2f1de
KC
63332003-12-18 Kelley Cook <kcook@gcc.gnu.org>
6334
6335 * stamp-xgnatug: New stamp file.
6336 * Make-lang.in (stamp-xgnatug): New stamp file and comment.
6337 (ada/doctools/xgnatug): Add $(build_exeext).
6338 (ada/gnat_ug_unx.texi, ada/gnat_ug_vwx.texi, ada/gnat_ug_vms.texi
6339 ada/gnat_ug_wnt.texi): Update to depend on stamp-xgnatug.
6340
891a6e79
AC
63412003-12-17 Ed Falis <falis@gnat.com>
6342
6343 * a-elchha.adb (Tailored_Exception_Information): made Info constant to
6344 eliminate warning.
6345
6346 * a-exextr.adb: Add context clause for
6347 Ada.Exceptions.Last_Chance_Handler.
6348
63492003-12-17 Sergey Rybin <rybin@act-europe.fr>
6350
6351 * cstand.adb (Create_Standard): Change the way how the declaration of
6352 the Duration type is created (making it the same way as it is for all
6353 the other standard types).
6354
63552003-12-17 Robert Dewar <dewar@gnat.com>
6356
6357 * s-crtl.ads: Fix header format
6358 Change Pure to Preelaborate
6359
63602003-12-17 Ed Schonberg <schonberg@gnat.com>
6361
6362 * checks.adb (Selected_Length_Checks): Generate an Itype reference for
6363 the expression type only if it is declared in the current unit.
6364
6365 * sem_ch3.adb (Constrain_Index): Handle properly a range whose bounds
6366 are universal and already analyzed, as can occur in constrained
6367 subcomponents that depend on discriminants, when one constraint is a
6368 subtype mark.
6369
6370 * sem_res.adb (Resolve_Type_Conversion): Any arithmetic expression of
6371 type Any_Fixed is legal as the argument of a conversion, if only one
6372 fixed-point type is in context.
6373
63742003-12-17 GNAT Script <nobody@gnat.com>
6375
6376 * Make-lang.in: Makefile automatically updated
6377
209db2bf
AC
63782003-12-15 Robert Dewar <dewar@gnat.com>
6379
6380 * exp_ch6.adb (Expand_Thread_Body): Fix error in picking up default
6381 sec stack size.
6382
63832003-12-15 Vincent Celier <celier@gnat.com>
6384
6385 * gnatchop.adb: (Error_Msg): Do not exit on error for a warning
6386 (Gnatchop): Do not set failure status when reporting the number of
6387 warnings.
6388
63892003-12-15 Doug Rupp <rupp@gnat.com>
6390
6391 * s-ctrl.ads: New file.
6392
6393 * Makefile.rtl (GNAT_RTL_NONTASKING_OBJS): Add s-crtl$(objext).
6394
6395 * Make-lang.in: (GNAT_ADA_OBJS): Add ada/s-crtl.o.
6396 (GNATBIND_OBJS): Add ada/s-crtl.o.
6397
6398 * Makefile.in [VMS]: Clean up ifeq rules.
6399
6400 * gnatlink.adb, 6vcstrea.adb, a-direio.adb, a-sequio.adb,
6401 a-ststio.adb, a-textio.adb, g-os_lib.adb, a-witeio.adb,
6402 g-os_lib.ads, i-cstrea.adb, i-cstrea.ads, s-direio.adb,
6403 s-fileio.adb, s-memcop.ads, s-memory.adb, s-stache.adb,
6404 s-tasdeb.adb: Update copyright.
6405 Import System.CRTL.
6406 Make minor modifications to use System.CRTL declared functions instead
6407 of importing locally.
6408
64092003-12-15 GNAT Script <nobody@gnat.com>
6410
6411 * Make-lang.in: Makefile automatically updated
6412
a9f4e3d2
AC
64132003-12-11 Ed Falis <falis@gnat.com>
6414
6415 * 5zinit.adb: Clean up.
6416
6417 * 5zintman.adb (Notify_Exception): replaced case statement with a call
6418 to __gnat_map_signal, imported from init.c to support
6419 signal -> exception mappings that depend on the vxWorks version.
6420
fbf3e0dd 6421 * init.c:
a9f4e3d2
AC
6422 Created and exported __gnat_map_signal to support signal -> exception
6423 mapping that is dependent on the VxWorks version.
6424 Change mapping of SIGBUS from Program_Error to Storage_Error on VxWorks
6425
64262003-12-11 Vasiliy Fofanv <fofanov@act-europe.fr>
6427
6428 * 5wosinte.ads: Link with -mthreads switch.
6429
64302003-12-11 Arnaud Charlet <charlet@act-europe.fr>
6431
6432 * init.c (__gnat_install_handler [NetBSD]): Set
6433 __gnat_handler_installed, as done on all other platforms.
6434 Remove duplicated code.
6435
64362003-12-11 Jerome Guitton <guitton@act-europe.fr>
6437
6438 * Makefile.in (rts-zfp, rts-ravenscar): Create libgnat.a.
6439
64402003-12-11 Thomas Quinot <quinot@act-europe.fr>
6441
6442 * sinfo.ads: Fix inconsistent example code in comment.
6443
64442003-12-11 Robert Dewar <dewar@gnat.com>
6445
6446 * a-tiinau.adb: Add a couple of comments
6447
6448 * sem_ch3.adb: Minor reformatting
6449
fbf3e0dd 6450 * sem_prag.adb:
a9f4e3d2
AC
6451 Fix bad prototype of Same_Base_Type in body (code reading cleanup)
6452 Minor reformatting throughout
6453
64542003-12-11 Ed Schonberg <schonberg@gnat.com>
6455
6456 * exp_ch7.adb (Establish_Transient_Scope): If the call is within the
6457 bounds of a loop, create a separate block in order to generate proper
6458 cleanup actions to prevent memory leaks.
6459
6460 * sem_res.adb (Resolve_Call): After a call to
6461 Establish_Transient_Scope, the call may be rewritten and relocated, in
6462 which case no further processing is needed.
6463
6464 * sem_util.adb: (Wrong_Type): Refine previous fix.
6465 Fixes ACATS regressions.
6466
6467 PR ada/13353
6468
6469 * sem_prag.adb (Back_End_Cannot_Inline): A renaming_as_body can always
6470 be inlined.
6471
c45b6ae0
AC
64722003-12-08 Jerome Guitton <guitton@act-europe.fr>
6473
6474 * 5ytiitho.adb, 5zthrini.adb, 5ztiitho.adb, i-vthrea.adb,
6475 i-vthrea.ads, s-tpae65.adb, s-tpae65.ads: Cleanup: Remove a bunch of
6476 obsolete files.
6477
6478 * Makefile.in: (rts-ravenscar): Generate an empty libgnat.a.
6479 (rts-zfp): Ditto.
6480
64812003-12-08 Robert Dewar <dewar@gnat.com>
6482
6483 * 7sintman.adb: Minor reformatting
6484
6485 * bindgen.adb: Configurable_Run_Time mode no longer suppresses the
6486 standard linker options to get standard libraries linked. We now plan
6487 to provide dummy versions of these libraries to match the appropriate
6488 configurable run-time (e.g. if a library is not needed at all, provide
6489 a dummy empty library).
6490
6491 * targparm.ads: Configurable_Run_Time mode no longer affects linker
6492 options (-L parameters and standard libraries). What we plan to do is
6493 to provide dummy libraries where the libraries are not required.
6494
6495 * gnatbind.adb: Minor comment improvement
6496
64972003-12-08 Javier Miranda <miranda@gnat.com>
6498
6499 * exp_aggr.adb (Build_Record_Aggr_Code): Do not remove the expanded
6500 aggregate in the parent. Otherwise constants with limited aggregates
6501 are not supported. Add new formal to pass the component type (Ctype).
6502 It is required to call the corresponding IP subprogram in case of
6503 default initialized components.
6504 (Gen_Assign): In case of default-initialized component, generate a
6505 call to the IP subprogram associated with the component.
6506 (Build_Record_Aggr_Code): Remove the aggregate from the parent in case
6507 of aggregate with default initialized components.
6508 (Has_Default_Init_Comps): Improve implementation to recursively check
6509 all the present expressions.
6510
6511 * exp_ch3.ads, exp_ch3.adb (Build_Initialization_Call): Add new formal
6512 to indicate that the initialization call corresponds to a
6513 default-initialized component of an aggregate.
6514 In case of default initialized aggregate with tasks this parameter is
6515 used to generate a null string (this is just a workaround that must be
6516 improved later). In case of discriminants, this parameter is used to
6517 generate a selected component node that gives access to the discriminant
6518 value.
6519
6520 * exp_ch9.ads, exp_ch9.adb (Build_Task_Allocate_Block_With_Stmts): New
6521 subprogram, based on Build_Task_Allocate_Block, but adapted to expand
6522 allocated aggregates with default-initialized components.
6523
6524 * par-ch4.adb (P_Aggregate_Or_Paren_Expr): Improve error message if
6525 the box notation is used in positional aggregates.
6526
65272003-12-08 Samuel Tardieu <tardieu@act-europe.fr>
6528
6529 * lib.ads: Fix typo in comment
6530
65312003-12-08 Vincent Celier <celier@gnat.com>
6532
6533 * prj.adb (Project_Empty): New component Unkept_Comments
6534 (Scan): Remove procedure; moved to Prj.Err.
6535
6536 * prj.ads (Project_Data): New Boolean component Unkept_Comments
6537 (Scan): Remove procedure; moved to Prj.Err.
6538
6539 * prj-dect.adb: Manage comments for the different declarations.
6540
6541 * prj-part.adb (With_Record): New component Node
6542 (Parse): New Boolean parameter Store_Comments, defaulted to False.
6543 Set the scanner to return ends of line and comments as tokens, if
6544 Store_Comments is True.
6545 (Pre_Parse_Context_Clause): Create the N_With_Clause nodes so that
6546 comments are associated with these nodes. Store the node IDs in the
6547 With_Records.
6548 (Post_Parse_Context_Clause): Use the N_With_Clause nodes stored in the
6549 With_Records.
6550 (Parse_Single_Project): Call Pre_Parse_Context_Clause before creating
6551 the N_Project node. Call Tree.Save and Tree.Reset before scanning the
6552 current project. Call Tree.Restore afterwards. Set the various nodes
6553 for comment storage (Next_End, End_Of_Line, Previous_Line,
6554 Previous_End).
6555
6556 * prj-part.ads (Parse): New Boolean parameter Store_Comments,
6557 defaulted to False.
6558
6559 * prj-pp.adb (Write_String): New Boolean parameter Truncated, defaulted
6560 to False. When Truncated is True, truncate the string, never go to the
6561 next line.
6562 (Write_End_Of_Line_Comment): New procedure
6563 (Print): Process comments for nodes N_With_Clause,
6564 N_Package_Declaration, N_String_Type_Declaration,
6565 N_Attribute_Declaration, N_Typed_Variable_Declaration,
6566 N_Variable_Declaration, N_Case_Construction, N_Case_Item.
6567 Process nodes N_Comment.
6568
6569 * prj-tree.ads, prj-tree.adb (Default_Project_Node): If it is a node
6570 without comments and there are some comments, set the flag
6571 Unkept_Comments to True.
6572 (Scan): If there are comments, set the flag Unkept_Comments to True and
6573 clear the comments.
6574 (Project_Node_Kind): Add enum values N_Comment_Zones, N_Comment
6575 (Next_End_Nodes: New table
6576 (Comment_Zones_Of): New function
6577 (Scan): New procedure; moved from Prj. Accumulate comments in the
6578 Comments table and set end of line comments, comments after, after end
6579 and before end.
6580 (Add_Comments): New procedure
6581 (Save, Restore, Seset_State): New procedures
6582 (There_Are_Unkept_Comments): New function
6583 (Set_Previous_Line_Node, Set_Previous_End_Node): New procedures
6584 (Set_End_Of_Line, Set_Next_End_Node, Remove_Next_End_Node): New
6585 procedures.
6586 (First_Comment_After, First_Comment_After_End): New functions
6587 (First_Comment_Before, First_Comment_Before_End): New functions
6588 (Next_Comment): New function
6589 (End_Of_Line_Comment, Follows_Empty_Line,
6590 Is_Followed_By_Empty_Line): New functions
6591 (Set_First_Comment_After, Set_First_Comment_After_End): New procedures
6592 (Set_First_Comment_Before, Set_First_Comment_Before_End): New procedures
6593 (Set_Next_Comment): New procedure
6594 (Default_Project_Node): Associate comment before if the node can store
6595 comments.
6596
6597 * scans.ads (Token_Type): New enumeration value Tok_Comment
6598 (Comment_Id): New global variable
6599
6600 * scng.ads, scng.adb (Comment_Is_Token): New Boolean global variable,
6601 defaulted to False.
6602 (Scan): Store position of start of comment. If comments are tokens, set
6603 Comment_Id and set Token to Tok_Comment when scanning a comment.
6604 (Set_Comment_As_Token): New procedure
6605
6606 * sinput-p.adb: Update Copyright notice
6607 (Source_File_Is_Subunit): Call Prj.Err.Scanner.Scan instead of Prj.Scan
6608 that no longer exists.
6609
66102003-12-08 Javier Miranda <miranda@gnat.com>
6611
6612 * sem_aggr.adb: Add dependence on Exp_Tss package
6613 Correct typo in comment
6614 (Resolve_Aggregate): In case of array aggregates set the estimated
6615 type of the aggregate before calling resolve. This is needed to know
6616 the name of the corresponding IP in case of limited array aggregates.
6617 (Resolve_Array_Aggregate): Delay the resolution to the expansion phase
6618 in case of default initialized array components.
6619
6620 * sem_ch12.adb (Analyze_Formal_Object_Declaration): Allow limited
6621 types. Required to give support to limited aggregates in generic
6622 formals.
6623
66242003-12-08 Ed Schonberg <schonberg@gnat.com>
6625
6626 * sem_ch3.adb (Check_Initialization): For legality purposes, an
6627 inlined body functions like an instantiation.
6628 (Decimal_Fixed_Point_Declaration): Do not set kind of first subtype
6629 until bounds are analyzed, to diagnose premature use of type.
6630
6631 * sem_util.adb (Wrong_Type): Improve error message when the type of
6632 the expression is used prematurely.
6633
66342003-12-08 GNAT Script <nobody@gnat.com>
6635
6636 * Make-lang.in: Makefile automatically updated
6637
0875a894
AC
66382003-12-08 Arnaud Charlet <charlet@act-europe.fr>
6639
7618d510
AC
6640 * sinfo.h, einfo.h, nmake.ads, nmake.adb, treeprs.ads: Removed, since
6641 they are automatically generated by Make-lang.in and cause nothing but
0875a894
AC
6642 maintenance troubles.
6643
5b4994bc
AC
66442003-12-05 Thomas Quinot <quinot@act-europe.fr>
6645
6646 * 3ssoliop.ads: Fix comment (this is the Solaris, not the UnixWare,
6647 version of this unit).
6648
66492003-12-05 Olivier Hainque <hainque@act-europe.fr>
6650
6651 * 53osinte.ads, 54osinte.ads, 55osinte.ads, 56osinte.ads, 5bosinte.ads,
6652 5cosinte.ads, 5hosinte.ads, 5iosinte.ads, 5losinte.ads,
6653 5tosinte.ads: Define the SA_SIGINFO constant, to allow references from
6654 the body of System.Interrupt_Management common to several targets.
6655 Update copyright notice when appropriate.
6656
6657 * 52osinte.ads, 5posinte.ads: Define a dummy value for the SA_SIGINFO
6658 constant.
6659
6660 * 7sintman.adb (elaboration): Set SA_SIGINFO in the sigaction flags,
6661 to ensure that the kernel fills in the interrupted context structure
6662 before calling a signal handler, which is necessary to be able to
6663 unwind past it. Update the copyright notice.
6664
66652003-12-05 Jerome Guitton <guitton@act-europe.fr>
6666
6667 * a-elchha.ads: New file.
6668
6669 * a-elchha.adb: New default last chance handler. Contents taken from
6670 Ada.Exceptions.Exception_Traces.Unhandled_Exception_Terminate.
6671
6672 * a-exextr.adb (Unhandled_Exception_Terminate): Most of this routine
6673 is moved to a-elchha.adb to provide a target-independent default last
6674 chance handler.
6675
6676 * Makefile.rtl: Add a-elchha.o
6677
6678 * Make-lang.in (GNAT_ADA_OBJS, GNATBIND_OBJS): Add a-elchha.o.
6679
66802003-12-05 Ed Schonberg <schonberg@gnat.com>
6681
6682 * exp_ch6.adb (Expand_Call): If the subprogram is inlined and is
6683 declared in an instance, do not inline the call if the instance is not
6684 frozen yet, to prevent order of elaboration problems.
6685
6686 * sem_prag.adb: Add comments for previous fix.
6687
66882003-12-05 Samuel Tardieu <tardieu@act-europe.fr>
6689
6690 * g-table.adb: Use the right variable in Set_Item.
6691 Update copyright notice.
6692
66932003-12-05 Arnaud Charlet <charlet@act-europe.fr>
6694
6695 * Makefile.in: Remove unused rules.
6696
66972003-12-05 Vincent Celier <celier@gnat.com>
6698
6699 * switch-c.adb (Scan_Front_End_Switches): Remove processing of
6700 -nostdlib. Not needed here after all.
6701
efdfd311
AC
67022003-12-03 Thomas Quinot <quinot@act-europe.fr>
6703
6704 PR ada/11724
6705
fbf3e0dd 6706 * adaint.h, adaint.c, g-os_lib.ads:
efdfd311
AC
6707 Do not assume that the offset argument to lseek(2) is a 32 bit integer,
6708 on some platforms (including FreeBSD), it is a 64 bit value.
6709 Introduce a __gnat_lseek wrapper in adaint.c to allow for portability.
6710
67112003-12-03 Arnaud Charlet <charlet@act-europe.fr>
6712
6713 * gnatvsn.ads (Library_Version): Now contain only the relevant
6714 version info.
6715 (Verbose_Library_Version): New constant.
6716
6717 * g-spipat.adb, g-awk.adb, g-debpoo.adb,
6718 g-memdum.adb, g-thread.adb, s-geveop.adb, s-interr.adb,
6719 s-taskin.adb, s-tassta.adb: Make code compile with -gnatwa.
6720
6721 * gnatlbr.adb: Clean up: replace Library_Version by
6722 Verbose_Library_Version.
6723
fbf3e0dd 6724 * make.adb, lib-writ.adb, exp_attr.adb:
efdfd311
AC
6725 Clean up: replace Library_Version by Verbose_Library_Version.
6726
6727 * 5lintman.adb: Removed.
6728
fbf3e0dd 6729 * Makefile.in:
efdfd311
AC
6730 Update and simplify computation of LIBRARY_VERSION.
6731 Fix computation of GSMATCH_VERSION.
6732 5lintman.adb is no longer used: replaced by 7sintman.adb.
6733
67342003-12-03 Robert Dewar <dewar@gnat.com>
6735
fbf3e0dd 6736 * exp_ch5.adb:
efdfd311
AC
6737 (Possible_Bit_Aligned_Component): Maybe_Bit_Aligned_Large_Component new
6738 name. Modified to consider small non-bit-packed arrays as troublesome
6739 and in need of component-by-component assigment expansion.
6740
67412003-12-03 Vincent Celier <celier@gnat.com>
6742
6743 * lang-specs.h: Process nostdlib as nostdinc
6744
6745 * back_end.adb: Update Copyright notice
6746 (Scan_Compiler_Arguments): Process -nostdlib directly.
6747
67482003-12-03 Jose Ruiz <ruiz@act-europe.fr>
6749
fbf3e0dd 6750 * Makefile.in:
efdfd311
AC
6751 When defining LIBGNAT_TARGET_PAIRS for bare board targets, remove the
6752 redundant inclusion of EXTRA_HIE_NONE_TARGET_PAIRS, which is always
6753 included in HIE_NONE_TARGET_PAIRS.
6754
67552003-12-03 Ed Schonberg <schonberg@gnat.com>
6756
fbf3e0dd 6757 * sem_attr.adb:
efdfd311
AC
6758 (Legal_Formal_Attribute): Attribute is legal in an inlined body, as it
6759 is legal in an instance, because legality is cheched in the template.
6760
fbf3e0dd 6761 * sem_prag.adb:
efdfd311
AC
6762 (Analyze_Pragma, case Warnings): In an inlined body, the pragma may be
6763 appplied to an unchecked conversion of a formal parameter.
6764
fbf3e0dd 6765 * sem_warn.adb:
efdfd311
AC
6766 (Output_Unreferenced_Messages): Suppress "not read" warnings on imported
6767 variables.
6768
67692003-12-03 Olivier Hainque <hainque@act-europe.fr>
6770
6771 * tb-alvms.c (unwind_regular_code, unwind_kernel_handler): New
6772 routines. The second one is new functionality to deal with backtracing
6773 through signal handlers.
6774 (unwind): Split into the two separate subroutines above.
6775 Update the documentation, and deal properly with sizeof (REG) different
6776 from sizeof (void*).
6777
08aa9a4a
AC
67782003-12-01 Nicolas Setton <setton@act-europe.fr>
6779
6780 * a-except.adb (Raise_Current_Excep): Add a pragma Inspection_Point,
6781 so that the debugger can reliably access the value of the parameter,
6782 and therefore is able to display the exception name when an exception
6783 breakpoint is reached.
6784
67852003-12-01 Thomas Quinot <quinot@act-europe.fr>
6786
6787 * fmap.adb: Fix typo in warning message.
6788
6789 * g-socket.ads, g-socket.adb: Make Free a visible instance of
6790 Ada.Unchecked_Deallocation (no need to wrap it in a subprogram).
6791
67922003-12-01 Vincent Celier <celier@gnat.com>
6793
6794 * mlib-prj.adb (Build_Library.Process): Do not check a withed unit if
6795 ther is no Afile.
6796 (Build_Library): Get the switches only if Default_Switches is declared
6797 in package Binder.
6798
67992003-12-01 Ed Schonberg <schonberg@gnat.com>
6800
6801 * exp_ch6.adb (Expand_Actuals): When applying validity checks to
6802 actuals that are indexed components, reanalyze actual to ensure that
6803 packed array references are properly expanded.
6804
6805 * sem_ch5.adb (Diagnose_Non_Variable_Lhs): Add special case for
6806 attempted assignment to a discriminant.
6807
68082003-12-01 Robert Dewar <dewar@gnat.com>
6809
6810 * rtsfind.adb, exp_ch4.adb, s-exnint.ads, s-exnint.adb: Minor
6811 reformatting.
6812
6813 * switch-c.adb: Minor reformatting of comments
6814
68152003-12-01 Arnaud Charlet <charlet@act-europe.fr>
6816
6817 * Makefile.in: Clean ups.
6818
68192003-12-01 GNAT Script <nobody@gnat.com>
6820
6821 * Make-lang.in: Makefile automatically updated
6822
c6135994
AC
68232003-12-01 Arnaud Charlet <charlet@act-europe.fr>
6824
6825 * 5wsystem.ads: Disable zero cost exception, not ready yet.
6826
51a30506
UW
68272003-11-29 Ulrich Weigand <uweigand@de.ibm.com>
6828
6829 * Make-lang.in (nmake.ads): Add dependency on ada/nmake.adb
6830 to force serialization.
6831
81a5b587
AC
68322003-11-26 Thomas Quinot <quinot@act-europe.fr>
6833
fbf3e0dd 6834 * g-socket.ads, g-socket.adb:
81a5b587
AC
6835 Clarify documentation of function Stream. Introduce a Free procedure
6836 to release the returned Stream once it becomes unused.
6837
6838 * 5asystem.ads: For Alpha Tru64, enable ZCX by default.
6839
68402003-11-26 Arnaud Charlet <charlet@act-europe.fr>
6841
6842 (Cond_Timed_Wait): Introduce new constant Time_Out_Max,
6843 since NT 4 cannot handle timeout values that are too large,
6844 e.g. DWORD'Last - 1.
6845
68462003-11-26 Ed Schonberg <schonberg@gnat.com>
6847
fbf3e0dd 6848 * exp_ch4.adb:
81a5b587
AC
6849 (Expand_N_Slice): Recognize all cases of slices that appear as actuals
6850 in procedure calls and whose expansion must be deferred.
6851
6852 * exp_ch6.adb (Add_Call_By_Copy_Node): Remove previous fix. Proper fix
6853 is in exp_ch4.
6854
fbf3e0dd 6855 * sem_ch3.adb:
81a5b587
AC
6856 (Build_Derived_Array_Type): Create operator for unconstrained type
6857 if ancestor is unconstrained.
6858
68592003-11-26 Vincent Celier <celier@gnat.com>
6860
6861 * make.adb (Project_Object_Directory): New global variable
6862 (Change_To_Object_Directory): New procedure
6863 (Collect_Arguments_And_Compile): Call Change_To_Object_Directory instead
6864 of Change_Dir directly. Do not change working directory to object
6865 directory of main project after each compilation.
6866 (Gnatmake): Use Change_To_Object_Directory instead of Change_Dir
6867 directly.
6868 Change to object directory of main project before binding step.
6869 (Initialize): Initialize Project_Object_Directory to No_Project
6870
fbf3e0dd 6871 * mlib-prj.adb:
81a5b587
AC
6872 (Build_Library): Take into account Builder'Default_Switches ("Ada") when
6873 binding a Stand-Alone Library.
6874
6875 * output.adb: Update Copyright notice
6876 (Write_Char): Output buffer when full
6877
68782003-11-26 Robert Dewar <dewar@gnat.com>
6879
6880 * sem_ch13.adb: (Check_Size): Reset size if size is too small
6881
fbf3e0dd 6882 * sem_ch13.ads:
81a5b587
AC
6883 (Check_Size): Fix documentation to include bit-packed array case
6884
6885 * sem_res.adb: Implement restriction No_Direct_Boolean_Operators
6886
6887 * s-rident.ads: Put No_Direct_Boolean_Operators in proper order
6888
6889 * s-rident.ads: Add new restriction No_Direct_Boolean_Operators
6890
d4c47b51
AC
68912003-11-24 Arnaud Charlet <charlet@act-europe.fr>
6892
6893 PR ada/13142
6894 * utils.c (init_gigi_decls): Change name of built-in setjmp to
6895 __builtin_setjmp, since this is apparently needed by recent
6896 non Ada changes.
6897
7677e9e0
RO
68982003-11-24 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
6899
d4c47b51 6900 * adadecode.c: Only include ctype.h if not IN_GCC.
7677e9e0
RO
6901 (__gnat_decode): Use ISDIGIT from safe-ctype.h.
6902
6c1e24d3
AC
69032003-11-24 Jose Ruiz <ruiz@act-europe.fr>
6904
fbf3e0dd 6905 * Makefile.in:
6c1e24d3
AC
6906 Use 5zintman.ads for VxWorks targets. This file avoid confusion between
6907 signals and interrupts.
6908
6909 * 5zintman.ads: New File.
6910
6911 * 5zintman.adb: Replace Exception_Interrupts by Exception_Signals, and
6912 add exception signals to the set of unmasked signals.
6913
fbf3e0dd 6914 * 5ztaprop.adb:
6c1e24d3
AC
6915 Use Abort_Task_Signal instead of Abort_Task_Interrupt to avoid confusion
6916 between signals and interrupts.
6917 Add to Unblocked_Signal_Mask the set of signals that are in
6918 Keep_Unmasked.
6919
fbf3e0dd 6920 * 7sinmaop.adb:
6c1e24d3
AC
6921 Adding a check to see whether the Interrupt_ID we want to unmask is in
6922 the range of Keep_Unmasked (in procedure Interrupt_Self_Process). The
6923 reason is that the index type of the Keep_Unmasked array is not always
6924 Interrupt_ID; it may be a subtype of Interrupt_ID.
6925
69262003-11-24 Gary Dismukes <dismukes@gnat.com>
6927
fbf3e0dd 6928 * exp_util.adb:
6c1e24d3
AC
6929 (Remove_Side_Effects): Condition constantness of object created for a
6930 an unchecked type conversion on the constantness of the expression
6931 to ensure the correct value for 'Constrained when passing components
6932 of view-converted class-wide objects.
6933
69342003-11-24 Robert Dewar <dewar@gnat.com>
6935
6936 * par-load.adb (Load): Improve handling of misspelled and missing units
6937 Removes several cases of compilation abandoned messages
6938
6939 * lib.adb: (Remove_Unit): New procedure
6940
6941 * lib.ads: (Remove_Unit): New procedure
6942
6943 * lib-load.adb: Minor reformatting
6944
69452003-11-24 Vincent Celier <celier@gnat.com>
6946
fbf3e0dd 6947 * make.adb:
6c1e24d3
AC
6948 (Gnatmake, Initialize): Call Usage instead of Makeusg directly
6949 (Marking_Label): Label to mark processed source files. Incremented for
6950 each executable.
6951 (Gnatmake): Increase Marking_Labet for each executable
6952 (Is_Marked): Compare against marking label
6953 (Mark): Mark with marking label
6954
69552003-11-24 Jerome Guitton <guitton@act-europe.fr>
6956
fbf3e0dd 6957 * s-thread.ads:
6c1e24d3
AC
6958 Move the declaration of the TSD for System.Threads to System.Soft_Links.
6959 Add some comments.
6960
6961 * Makefile.in: Added target pair for s-thread.adb for cert runtime.
6962 (rts-cert): build a single relocatable object for the run-time lib.
6963 Fix perms.
6964
69652003-11-24 Vasiliy Fofanov <fofanov@act-europe.fr>
6966
fbf3e0dd 6967 * Make-lang.in:
6c1e24d3
AC
6968 Use gnatls rather than gcc to obtain the location of GNAT RTL for
6969 crosstools build.
6970
69712003-11-24 Sergey Rybin <rybin@act-europe.fr>
6972
6973 * opt.adb (Tree_Write): Gnat_Version_String is now a function, so we
6974 can not use it as before (that is, as a variable) when dumping it into
6975 the tree file. Add a local variable to store the result of this
6976 function and to be used as the string to be written into the tree.
6977
6978 * scn.adb (Initialize_Scanner): Add comments explaining the recent
6979 changes.
6980
6981 * sinput.adb (Source_First, Source_Last): In case of
6982 Internal_Source_File, replace returning attributes of
6983 Internal_Source_Ptr (which is wrong) with returning attributes of
6984 Internal_Source.
6985
69862003-11-24 Ed Schonberg <schonberg@gnat.com>
6987
fbf3e0dd 6988 * sem_ch3.adb:
6c1e24d3
AC
6989 (New_Concatenation_Op): Proper name for New_Binary_Operator, only
6990 used for implicit concatenation operators.
6991 Code cleanup.
6992
fbf3e0dd 6993 * sem_elab.adb:
6c1e24d3
AC
6994 (Check_Elab_Call): Set No_Elaboration_Check appropriately on calls in
6995 task bodies that are in the scope of a Suppress pragma.
6996 (Check_A Call): Use the flag to prevent spurious elaboration checks.
6997
fbf3e0dd 6998 * sinfo.ads, sinfo.adb:
6c1e24d3
AC
6999 New flag No_Elaboration_Check on function/procedure calls, to properly
7000 suppress checks on calls in task bodies that are within a local suppress
7001 pragma.
7002
fbf3e0dd 7003 * exp_ch4.adb:
6c1e24d3
AC
7004 (Expand_Concatenate_Other): Use the proper integer type for the
7005 expression for the upper bound, to avoid universal_integer computations
7006 when possible.
7007
6f2aeb72
KC
70082003-11-21 Kelley Cook <kcook@gcc.gnu.org>
7009
7010 * .cvsignore: Delete.
7011
e9f85cd6
AS
70122003-11-21 Andreas Schwab <schwab@suse.de>
7013
7014 * 55system.ads: Set ZCX_By_Default and GCC_ZCX_Support to True.
7015
4e074baf
VF
70162003-11-21 Vasiliy Fofanov <fofanov@act-europe.fr>
7017
7018 * 5wsystem.ads: Enable zero cost exception.
7019
f1f9fe30
AC
70202003-11-21 Jerome Guitton <guitton@act-europe.fr>
7021
7022 * 5ztiitho.adb: Remove an unreferenced variable.
7023
70242003-11-21 Thomas Quinot <quinot@act-europe.fr>
7025
7026 * adaint.c: For FreeBSD, use mkstemp.
7027
70282003-11-21 Arnaud Charlet <charlet@act-europe.fr>
7029
7030 * gnatlbr.adb: Now reference Gnat_Static_Version_String.
7031
70322003-11-21 Robert Dewar <dewar@gnat.com>
7033
7034 * bld.adb: Remove useless USE of gnatvsn
7035
7036 * gnatchop.adb: Minor reformatting
7037 Clean up version handling to be more consistent
7038
7039 * gnatxref.adb: Minor reformatting
7040
7041 * gprcmd.adb: Minor reformatting
7042 Fix output of copyright to be more consistent with other tools
7043
70442003-11-21 Vincent Celier <celier@gnat.com>
7045
7046 * make.adb (Scan_Make_Args): Do not transmit --RTS= to gnatlink
7047
70482003-11-21 Sergey Rybin <rybin@act-europe.fr>
7049
7050 * atree.adb (Initialize): Add initializations for global variables
7051 used in New_Copy_Tree.
7052
7053 * cstand.adb (Create_Standard): Add call to Initialize_Scanner (with
7054 Internal_Source_File as the actual).
7055 Put the set of statements creating Any_Character before the set of
7056 statements creating Any_Array to have Any_Character fully initialized
7057 when it is used in creating Any_Array.
7058
7059 * scn.adb (Initialize_Scanner): Do not set Comes_From_Source ON and do
7060 not call Scan in case if the actual is Internal_Source_File
7061 Add 2003 to copyright note.
7062
7063 * sinput.adb (Source_First, Source_Last, Source_Text): Add code for
7064 processing Internal_Source_File.
7065
7066 * types.ads: Add the constant Internal_Source_File representing the
7067 source buffer for artificial source-code-like strings created within
7068 the compiler (the definition of Source_File_Index is changed).
7069
c5b2a8ae
AC
70702003-11-20 Arnaud Charlet <charlet@act-europe.fr>
7071
7072 * 35soccon.ads, 45intnam.ads, 55osinte.adb, 55osinte.ads,
7073 56system.ads: New file, FreeBSD version.
7074
a03ad584
JM
70752003-11-20 Joseph S. Myers <jsm@polyomino.org.uk>
7076
7077 * Make-lang.in (ada.extraclean): Delete.
7078
19f0526a
AC
70792003-11-19 Arnaud Charlet <charlet@act-europe.fr>
7080
7081 * gnatmem.adb: Clean up verbose output.
7082
7083 * gprcmd.adb: Change copyright to FSF.
7084
70852003-11-19 Vincent Celier <celier@gnat.com>
7086
7087 * symbols.adb: (Initialize): New parameters Reference, Symbol_Policy
7088 and Version (ignored).
7089
7090 * symbols.ads: (Policy): New type
7091 (Initialize): New parameter Reference, Symbol_Policy and
7092 Library_Version.
7093 Remove parameter Force.
7094 Minor reformatting.
7095
7096 * snames.ads, snames.adbadb: New standard names
7097 Library_Reference_Symbol_File and Library_Symbol_Policy
7098
fbf3e0dd 7099 * mlib-prj.adb:
19f0526a
AC
7100 (Build_Library): Call Build_Dinamic_Library with the Symbol_Data of the
7101 project.
7102
fbf3e0dd 7103 * mlib-tgt.adb:
19f0526a
AC
7104 (Build_Dynamic_Library): New parameter Symbol_Data (ignored)
7105
7106 * mlib-tgt.ads: (Build_Dynamic_Library): New parameter Symbol_Data
7107
7108 * prj.adb: (Project_Empty): New component Symbol_Data
7109
7110 * prj.ads: (Policy, Symbol_Record): New types
7111 (Project_Data): New component Symbol_Data
7112
fbf3e0dd 7113 * prj-attr.adb:
19f0526a
AC
7114 New attributes Library_Symbol_File, Library_Symbol_Policy and
7115 Library_Reference_Symbol_File.
7116
fbf3e0dd 7117 * prj-nmsc.adb:
19f0526a
AC
7118 (Ada_Check): When project is a Stand-Alone library project, process
7119 attribute Library_Symbol_File, Library_Symbol_Policy and
7120 Library_Reference_Symbol_File.
7121
7122 * 5aml-tgt.adb, 5bml-tgt.adb, 5gml-tgt.adb, 5hml-tgt.adb,
7123 5wml-tgt.adb, 5zml-tgt.adb, 5lml-tgt.adb,
7124 5sml-tgt.adb (Build_Dynamic_Library): New parameter
7125 Symbol_Data (ignored).
7126
7127 * 5vml-tgt.adb (VMS_Options): Remove --for-linker=gsmatch=equal,1,0
7128 (Build_Dynamic_Library): New parameter Symbol_Data. New internal
7129 functions Option_File_Name and Version_String. Set new options of
7130 gnatsym related to symbol file, symbol policy and reference symbol
7131 file.
7132
fbf3e0dd 7133 * 5vsymbol.adb:
19f0526a
AC
7134 Extensive modifications to take into account the reference symbol file,
7135 the symbol policy, the library version and to put in the symbol file the
7136 minor and major IDs.
7137
7138 * bld.adb (Process_Declarative_Items): Put second argument of
7139 gprcmd to_absolute between single quotes, to avoid problems with
7140 Windows.
7141
7142 * bld-io.adb: Update Copyright notice.
7143 (Flush): Remove last character of a line, if it is a back slash, to
7144 avoid make problems.
7145
fbf3e0dd 7146 * gnatsym.adb:
19f0526a
AC
7147 Implement new scheme with reference symbol file and symbol policy.
7148
7149 * g-os_lib.ads: (Is_Directory): Clarify comment
7150
71512003-11-19 Robert Dewar <dewar@gnat.com>
7152
7153 * atree.adb: Move New_Copy_Tree global variables to head of package
7154
7155 * errout.adb: Minor reformatting
7156
71572003-11-19 Javier Miranda <miranda@gnat.com>
7158
7159 * sem_ch4.adb: (Diagnose_Call): Improve error message.
7160 Add reference to Ada0Y (AI-50217)
7161
7162 * sem_ch6.adb, sem_ch8.adb, sem_type.adb,
7163 sem_util.adb: Add reference to AI-50217
7164
7165 * sinfo.ads: (N_With_Clause): Document fields referred to AI-50217
7166
7167 * sprint.adb: Add reference to Ada0Y (AI-50217, AI-287)
7168
7169 * sem_aggr.adb: Complete documentation of AI-287 changes
7170
7171 * par-ch4.adb: Document previous changes.
7172
7173 * lib-load.adb, lib-writ.adb, einfo.ads, par-ch10.adb,
7174 sem_cat.adb, sem_ch3.adb, sem_ch10.adb, sem_ch12.adb: Add references to
7175 Ada0Y (AI-50217)
7176
7177 * exp_aggr.adb: Add references to AI-287 in previous changes
7178
71792003-11-19 Ed Schonberg <schonberg@gnat.com>
7180
fbf3e0dd 7181 * exp_ch6.adb:
19f0526a
AC
7182 (Add_Call_By_Copy_Node): Do not original node of rewritten expression
7183 in the rewriting is the result of an inlined call.
7184
7185 * exp_ch6.adb (Add_Call_By_Copy_Node): If actual for (in-)out
7186 parameter is a type conversion, use original node to construct the
7187 post-call assignment, because expression may have been rewritten, e.g.
7188 if it is a packed array.
7189
fbf3e0dd 7190 * sem_attr.adb:
19f0526a
AC
7191 (Resolve_Attribute, case 'Constrained): Attribute is legal in an inlined
7192 body, just as it is in an instance.
7193 Categorization routines
7194
7195 * sem_ch12.adb (Analyze_Association, Instantiate_Formal_Subprogram,
7196 Instantiate_Object): Set proper sloc reference for message on missing
7197 actual.
7198
71992003-11-19 Thomas Quinot <quinot@act-europe.fr>
7200
7201 * Makefile.in: Add FreeBSD libgnat pairs.
7202
7203 * usage.adb: Fix typo in usage message.
7204
72052003-11-19 Jerome Guitton <guitton@act-europe.fr>
7206
7207 * Makefile.in: On powerpc-wrs-vxworksae: Add s-thread.ad?,
7208 s-thrini.ad? and s-tiitho.adb to the full runtime, to support the
7209 pragma Thread_Body.
7210 Remove i-vthrea.ad? and s-tpae65.ad?, not needed anymore.
7211
7212 * s-thread.adb: This file is now a dummy implementation of
7213 System.Thread.
7214
72152003-11-19 Sergey Rybin <rybin@act-europe.fr>
7216
7217 * rtsfind.adb (Initialize): Add initialization for RTE_Is_Available
7218
72192003-11-19 Emmanuel Briot <briot@act-europe.fr>
7220
7221 * xref_lib.adb (Parse_Identifier_Info): Add handling of generic
7222 instanciation references in the parent type description.
7223
0d77ab84
AC
72242003-11-18 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
7225
7226 * ada-tree.def: (ALLOCATE_EXPR): Class is "2", not "s".
7227
7228 * decl.c (gnat_to_gnu_entity, case E_Floating_Point_Subtype): Set
7229 TYPE_PRECISION directly from esize.
7230
72312003-11-18 Thomas Quinot <quinot@act-europe.fr>
7232
fbf3e0dd 7233 * cstreams.c:
0d77ab84
AC
7234 Use realpath(3) on FreeBSD. Fix typo in comment while we are at it.
7235
7236 * init.c: Initialization routines for FreeBSD
7237
7238 * link.c: Link info for FreeBSD
7239
7240 * sysdep.c: Add the case of FreeBSD
7241
cb7a5092
AC
72422003-11-17 Jerome Guitton <guitton@act-europe.fr>
7243
7244 * 5zthrini.adb: Remove the call to Init_RTS at elaboration, as it is
7245 already called in System.Threads.
7246
7247 * 5ztiitho.adb (Initialize_Task_Hooks): Remove the registration of the
7248 environment task, as it has been moved to System.Threads.Initialization.
7249
72502003-11-17 Arnaud Charlet <charlet@act-europe.fr>
7251
7252 * adaint.c (__gnatlib_install_locks): Only reference
7253 __gnat_install_locks on VMS, since other platforms can avoid using
7254 --enable-threads=gnat
7255
72562003-11-17 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
7257
7258 * ada-tree.h: (TYPE_IS_PACKED_ARRAY_TYPE_P): New macro.
7259
7260 * decl.c (gnat_to_gnu_entity, case E_Array_Subtype): Set
7261 TYPE_PACKED_ARRAY_TYPE_P.
7262 (validate_size): Do not verify size if TYPE_IS_PACKED_ARRAY_TYPE_P.
7263
7264 Part of PR ada/12806
7265 * utils.c (float_type_for_precision): Renamed from float_type_for_size.
7266 Use GET_MODE_PRECISION instead of GET_MODE_BITSIZE.
7267
72682003-11-17 Vincent Celier <celier@gnat.com>
7269
7270 * gnatchop.adb (Error_Msg): New Boolean parameter Warning, defaulted
7271 to False.
7272 Do not set exit status to Failure when Warning is True.
7273 (Gnatchop): Make errors "no compilation units found" and
7274 "no source files written" warnings only.
7275
7276 * make.adb (Gnatmake): When using a project file, set
7277 Look_In_Primary_Dir to False.
7278 (Configuration_Pragmas_Switch): Check for Global_Configuration_Pragmas
7279 and Local_Configuration_Pragmas in the project where they are declared
7280 not an extending project which might have inherited them.
7281
7282 * osint.adb (Locate_File): If Name is already an absolute path, do not
7283 look for a directory.
7284
7285 * par-ch10.adb (P_Compilation_Unit): If source contains no token, and
7286 -gnats (Check_Syntax) is used, issue only a warning, not an error.
7287
7288 * prj.adb (Register_Default_Naming_Scheme): Add new component Project
7289 in objects of type Variable_Value.
7290
7291 * prj.ads: (Variable_Value): New component Project
7292
7293 * prj-nmsc.adb (Ada_Check.Warn_If_Not_Sources): No warning if source
7294 is in a project extended by Project.
7295
7296 * prj-proc.adb (Add_Attributes): New parameter Project. Set component
7297 Project of Variable_Values to this new parameter value.
7298 (Expression): Set component Project of Variable_Values.
7299 (Process_Declarative_Items): Call Add_Attributes with parameter Project.
7300 Set the component Project in array elements.
7301
73022003-11-17 Sergey Rybin <rybin@act-europe.fr>
7303
7304 * errout.adb: (Initialize): Add initialization for error nodes.
7305
7306 * sem_ch12.adb (Initialize): Add missing initializations for
7307 Exchanged_Views and Hidden_Entities.
7308
73092003-11-17 Ed Schonberg <schonberg@gnat.com>
7310
7311 * sem_ch12.adb (Copy_Generic_Node): Preserve entity when copying an
7312 already instantiated tree for use in subsequent inlining.
7313 (Analyze_Associations, Instantiate_Formal_Subprogram,
7314 Instantiate_Object): improve error message for mismatch in
7315 instantiations.
7316
7317 * sem_ch6.adb (Build_Body_To_Inline): Major cleanup to handle
7318 instantiations of subprograms declared in instances.
7319
73202003-11-17 Javier Miranda <miranda@gnat.com>
7321
7322 * sem_ch4.adb (Analyze_Allocator): Previous modification must be
7323 executed only under the Extensions_Allowed flag.
7324
73252003-11-17 Robert Dewar <dewar@gnat.com>
7326
7327 * a-exexda.adb (Address_Image): Fix documentation to indicate leading
7328 zeroes suppressed.
7329 (Address_Image): Fix bug of returning 0x instead of 0x0
7330 Minor reformatting (function specs).
7331
7332 * einfo.ads: Minor fix for documentation of Is_Bit_Packed_Array
7333 (missed case of 33-63)
7334
7335 * freeze.adb, sem_ch13.adb: Properly check size of packed bit array
7336
7337 * s-thread.adb: Add comments for pragma Restriction
7338
7339 * exp_aggr.adb, g-debuti.adb, par-ch4.adb, sem_aggr.adb,
7340 sem_ch6.adb, sprint.adb, xref_lib.adb: Minor reformatting
7341
73422003-11-17 Ed Falis <falis@gnat.com>
7343
7344 * s-thread.adb: Added No_Tasking restriction for this implementation.
7345
73462003-11-17 Emmanuel Briot <briot@act-europe.fr>
7347
7348 * xref_lib.adb (Parse_Identifier_Info): Add handling of generic
7349 instanciation references in the parent type description.
7350
73512003-11-17 GNAT Script <nobody@gnat.com>
7352
7353 * Make-lang.in: Makefile automatically updated
7354
7d60db05
JM
73552003-11-16 Jason Merrill <jason@redhat.com>
7356
7357 * Make-lang.in (ada.tags): Create TAGS.sub files in each directory
7358 and TAGS files that include them for each front end.
7359
c0040397
AJ
73602003-11-14 Andreas Jaeger <aj@suse.de>
7361
a477ab83 7362 * lang.opt: Change -Wno-long-long to -Wlong-long since the latter
fbf3e0dd 7363 is the canonical version.
a477ab83
AJ
7364 * misc.c (gnat_handle_option): Likewise.
7365
c0040397
AJ
7366 * Makefile.in (LIBGNAT_TARGET_PAIRS): Add rules for x86_64-linux.
7367
7368 * 5nsystem.ads: New file for x86_64-linux-gnu.
7369
95a6aaf9
AC
73702003-11-14 Arnaud Charlet <charlet@act-europe.fr>
7371
262cc585 7372 * nmake.ads, nmake.adb, sinfo.h, treeprs.ads: Regenerated.
95a6aaf9 7373
4a4fe537
AC
7374 * comperr.adb: Fix logic in previous change.
7375
65356e64
AC
73762003-11-13 Vincent Celier <celier@gnat.com>
7377
7378 * 5bml-tgt.adb (Build_Dynamic_Library): Use
7379 Osint.Include_Dir_Default_Prefix instead of
7380 Sdefault.Include_Dir_Default_Name.
7381
7382 * gnatlbr.adb: Update Copyright notice
7383 (Gnatlbr): : Use Osint.Include_Dir_Default_Prefix instead of
7384 Sdefault.Include_Dir_Default_Name and Osint.Object_Dir_Default_Prefix
7385 instead of Sdefault.Object_Dir_Default_Name
7386
c0040397 7387 * gnatlink.adb:
65356e64
AC
7388 (Process_Binder_File): Never suppress the option following -Xlinker
7389
c0040397 7390 * mdll-utl.adb:
65356e64
AC
7391 (Gcc): Use Osint.Object_Dir_Default_Prefix instead of
7392 Sdefault.Object_Dir_Default_Name.
7393
c0040397 7394 * osint.ads, osint.adb:
65356e64
AC
7395 (Include_Dir_Default_Prefix, Object_Dir_Default_Prefix): New functions
7396 Minor reformatting.
7397
7398 * vms_conv.ads: Minor reformating
7399 Remove GNAT STANDARD and GNAT PSTA
7400
c0040397 7401 * vms_conv.adb:
65356e64
AC
7402 Allow GNAT MAKE to have several files on the command line.
7403 (Init_Object_Dirs): Use Osint.Object_Dir_Default_Prefix instead of
7404 Sdefault.Object_Dir_Default_Name.
7405 Minor Reformating
7406 Remove data for GNAT STANDARD
7407
c0040397 7408 * vms_data.ads:
65356e64
AC
7409 Add new compiler qualifier /PRINT_STANDARD (-gnatS)
7410 Remove data for GNAT STANDARD
7411 Remove options and documentation for -gnatwb/-gnatwB: these warning
7412 options no longer exist.
7413
74142003-11-13 Ed Falis <falis@gnat.com>
7415
7416 * 5zthrini.adb: (Init_RTS): Made visible
7417
c0040397 7418 * 5zthrini.adb:
65356e64
AC
7419 (Register): Removed unnecessary call to taskVarGet that checked whether
7420 an ATSD was already set as a task var for the argument thread.
7421
c0040397 7422 * s-thread.adb:
65356e64
AC
7423 Updated comment to reflect that this is a VxWorks version
7424 Added context clause for System.Threads.Initialization
7425 Added call to System.Threads.Initialization.Init_RTS
7426
74272003-11-13 Jerome Guitton <guitton@act-europe.fr>
7428
c0040397 7429 * 5zthrini.adb:
65356e64
AC
7430 (Init_RTS): New procedure, for the initialization of the run-time lib.
7431
c0040397 7432 * s-thread.adb:
65356e64
AC
7433 Remove dependancy on System.Init, so that this file can be used in the
7434 AE653 sequential run-time lib.
7435
74362003-11-13 Robert Dewar <dewar@gnat.com>
7437
7438 * bindgen.adb: Minor reformatting
7439
74402003-11-13 Ed Schonberg <schonberg@gnat.com>
7441
c0040397 7442 * checks.adb:
65356e64
AC
7443 (Apply_Discriminant_Check): Do no apply check if target type is derived
7444 from source type with no applicable constraint.
7445
c0040397 7446 * lib-writ.adb:
65356e64
AC
7447 (Ensure_System_Dependency): Do not apply the style checks that may have
7448 been specified for the main unit.
7449
c0040397 7450 * sem_ch8.adb:
65356e64
AC
7451 (Find_Selected_Component): Further improvement in error message, with
7452 RM reference.
7453
c0040397 7454 * sem_res.adb:
65356e64
AC
7455 (Resolve): Handle properly the case of an illegal overloaded protected
7456 procedure.
7457
74582003-11-13 Javier Miranda <miranda@gnat.com>
7459
c0040397 7460 * exp_aggr.adb:
65356e64
AC
7461 (Has_Default_Init_Comps): New function to check the presence of
7462 default initialization in an aggregate.
7463 (Build_Record_Aggr_Code): Recursively expand the ancestor in case of
7464 extension aggregate of a limited record. In addition, a new formal
7465 was added to do not initialize the record controller (if any) during
7466 this recursive expansion of ancestors.
7467 (Init_Controller): Add support for limited record components.
7468 (Expand_Record_Aggregate): In case of default initialized components
7469 convert the aggregate into a set of assignments.
7470
7471 * par-ch4.adb (P_Aggregate_Or_Paren_Expr): Update the comment
7472 describing the new syntax.
7473 Nothing else needed to be done because this subprogram delegates part of
7474 its work to P_Precord_Or_Array_Component_Association.
7475 (P_Record_Or_Array_Component_Association): Give support to the new
7476 syntax for default initialization of components.
7477
c0040397 7478 * sem_aggr.adb:
65356e64
AC
7479 (Resolve_Aggregate): Relax the strictness of the frontend in case of
7480 limited aggregates.
7481 (Resolve_Record_Aggregate): Give support to default initialized
7482 components.
7483 (Get_Value): In case of default initialized components, duplicate
7484 the corresponding default expression (from the record type
7485 declaration). In case of default initialization in the *others*
7486 choice, do not check that all components have the same type.
7487 (Resolve_Extension_Aggregate): Give support to limited extension
7488 aggregates.
7489
c0040397 7490 * sem_ch3.adb:
65356e64
AC
7491 (Check_Initialization): Relax the strictness of the front-end in case
7492 of aggregate and extension aggregates. This test is now done in
7493 Get_Value in a per-component manner.
7494
7495 * sem_ch4.adb (Analyze_Allocator): Don't post an error if the
7496 expression corresponds to a limited aggregate. This test is now done
7497 in Get_Value.
7498
7499 * sinfo.ads, sinfo.adb (N_Component_Association): Addition of
7500 Box_Present flag.
7501
7502 * sprint.adb (Sprint_Node_Actual): Modified to print an mbox if
7503 present in an N_Component_Association node
7504
75052003-11-13 Thomas Quinot <quinot@act-europe.fr>
7506
7507 * sem_ch9.adb (Analyze_Accept_Statement): A procedure hides a
7508 type-conformant entry only if they are homographs.
7509
75102003-11-13 GNAT Script <nobody@gnat.com>
7511
7512 * Make-lang.in: Makefile automatically updated
7513
49add53f
RO
75142003-11-12 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
7515
7516 * adadecode.c: Use <> form of include for ctype.h.
7517 * sysdep.c [IN_RTS]: Use <> form of include for time.h.
7518
94bae1cc
RO
75192003-11-12 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
7520
7521 * 5gsystem.ads (Functions_Return_By_DSP): Set to False.
7522 Works around PR middle-end/6552.
7523
463f452c
AC
75242003-11-10 Ed Falis <falis@gnat.com>
7525
7526 * 5ytiitho.adb: (procStartHookAdd): Definition and call deleted
7527
7528 * 5zinit.adb: (Install_Handler): Moved back to spec
7529 (Install_Signal_Handlers): Deleted
7530
7531 * 5zthrini.adb: Added context clause for System.Storage_Elements
7532 (Register): Only handles creation of taskVar; initialization moved to
7533 Thread_Body_Enter.
7534 (Reset_TSD): Deleted; replaced by Thread_Body_Enter
7535 Added declaration of environment task secondary stack and
7536 initialization.
7537
7538 * s-thread.adb: Implement bodies for thread body processing
7539
c0040397 7540 * s-thread.ads:
463f452c
AC
7541 Added comment identifying supported targets for pragma Thread_Body.
7542
75432003-11-10 Pascal Obry <obry@gnat.com>
7544
7545 * adaint.c (_gnat_stat) [WIN32]: Check if name is not bigger than
7546 GNAT_MAX_PATH_LEN.
7547
c0040397 7548 * s-fileio.adb:
463f452c
AC
7549 (Open): Properly check for string length before copying into the buffer.
7550 Raises Name_Error if buffer is too small. Note that this was a potential
7551 buffer overflow.
7552
75532003-11-10 Romain Berrendonner <berrendo@act-europe.fr>
7554
7555 * bindgen.adb, comperr.adb: Code clean ups.
7556 * gnatvsn.ads, gnatvsn.adb (Get_Gnat_Version_Type): New function.
7557
75582003-11-10 Sergey Rybin <rybin@act-europe.fr>
7559
7560 * gnat1drv.adb: Add call to Sem_Elim.Initialize.
7561
75622003-11-10 Vincent Celier <celier@gnat.com>
7563
c0040397 7564 * gprcmd.adb:
463f452c
AC
7565 (Gprcmd): Add new command "prefix" to get the prefix of the GNAT
7566 installation.
7567
7568 * make.adb (Scan_Make_Arg): Transmit -nostdlib to the compiler
7569
7570 * prj.adb: (Project_Empty): Add new boolean component Virtual
7571
7572 * prj.ads: (Virtual_Prefix): New constant string
7573 (Project_Data): New boolean component Virtual
7574
7575 * prj-nmsc.adb (Language_Independent_Check): Adjust error message when
7576 a library project is extended by a virtual extending project.
7577
c0040397 7578 * prj-part.adb:
463f452c
AC
7579 Modifications throughout to implement extending-all project, including:
7580 (Virtual_Hash, Processed_Hash): New hash tables
7581 (Create_Virtual_Extending_Project): New procedure
7582 (Look_For_Virtual_Projects_For): New procedure
7583
c0040397 7584 * prj-proc.adb:
463f452c
AC
7585 (Process): After checking the projects, if main project is an
7586 extending-all project, set the object directory of all virtual extending
7587 project to the object directory of the main project.
7588 Adjust error message when a virtual extending project has the same
7589 object directory as an project being extended.
7590 (Recursive_Process): If name starts with the virtual prefix, set Virtual
7591 to True in the project data.
7592
c0040397 7593 * prj-tree.adb:
463f452c
AC
7594 (Default_Project_Node): Add new boolean component Extending_All
7595 (Is_Extending_All): New function
7596 (Set_Is_Extending_All): New procedure
7597
7598 * prj-tree.ads: (Is_Extending_All): New function
7599 (Set_Is_Extending_All): New procedure
7600 (Project_Node_Record): New boolean component Extending_All
7601
7602 * switch-c.adb: (Scan_Front_End_Switches): Process -nostdlib
7603
c0040397 7604 * vms_data.ads:
463f452c
AC
7605 Add qualifier /NOSTD_LIBRARIES (-nostdlib) for the compiler
7606
7607 * bld.adb (Recursive_Process): If MAKE_ROOT is not defined, call
7608 "gprcmd prefix" to define it.
7609
76102003-11-10 Thomas Quinot <quinot@act-europe.fr>
7611
7612 * einfo.ads: Fix a typo and remove an extraneous word in comments.
7613
c0040397 7614 * lib-load.adb:
463f452c
AC
7615 (Create_Dummy_Package_Unit): Set the scope of the entity for the
7616 created dummy package to Standard_Standard, not to itself, to
7617 defend other parts of the front-end against encoutering a cycle in
7618 the scope chain.
7619
c0040397 7620 * sem_ch10.adb:
463f452c
AC
7621 (Analyze_With_Clause): When setting the entities for the successive
7622 N_Expanded_Names that constitute the name of a child unit, do not
7623 attempt to go further than Standard_Standard in the chain of scopes.
7624 This case arises from the placeholder units created by
7625 Create_Dummy_Package_Unit in the case of a with_clause for a
7626 nonexistent child unit.
7627
76282003-11-10 Ed Schonberg <schonberg@gnat.com>
7629
c0040397 7630 * exp_ch6.adb:
463f452c
AC
7631 (Expand_Thread_Body): Place subprogram on scope stack, so that new
7632 declarations are given the proper scope.
7633
c0040397 7634 * sem_ch13.adb:
463f452c
AC
7635 (Check_Expr_Constants): Reject an expression that contains a constant
7636 created during expansion, and that appears after the object to which
7637 the address clause applies.
7638
7639 * sem_ch5.adb (Check_Controlled_Array_Attribute): Subsidiary of
7640 Analyze_Iteration_Scheme, to rewrite a loop parameter specification
7641 that uses 'Range of a function call with controlled components, so
7642 that the function result can be finalized before starting the loop.
7643
c0040397 7644 * sem_ch8.adb:
463f452c
AC
7645 (Find_Selected_Component): Improve error message when prefix is
7646 an implicit dereference of an incomplete type.
7647
76482003-11-10 Robert Dewar <dewar@gnat.com>
7649
7650 * opt.ads: New Print_Standard flag for -gnatS switch
7651
7652 * sem_ch13.adb: Remove some additional checks for unaligned arrays
7653
7654 * cstand.adb (Create_Standard): Print out package standard if -gnatS
7655 switch set
7656
7657 * debug.adb: Update doc for -gnatds to discuss relationship with new
7658 -gnatS flag
7659
7660 * sinfo.adb: Add new field Entity_Or_Associated_Node
7661
7662 * sinfo.ads: Add new field Entity_Or_Associated_Node
7663 Update documentation for Associated_Node and Entity fields to clarify
7664 relationship and usage.
7665
c0040397 7666 * sprint.adb:
463f452c
AC
7667 (Write_Id): Properly process Associated_Node field in generic template
7668
c0040397 7669 * switch-c.adb:
463f452c
AC
7670 Recognize new -gnatS switch for printing package Standard
7671 This replaces gnatpsta
7672
c0040397 7673 * usage.adb:
463f452c
AC
7674 Add line for new -gnatS switch for printing package Standard
7675 This replaces gnatpsta
7676
c77c5f2e
AJ
76772003-11-10 Andreas Jaeger <aj@suse.de>
7678
7679 * 7sosprim.adb: tv_usec of struct_timeval and time_t are long
7680 integer.
7681
5c90f17f
AC
76822003-11-10 Arnaud Charlet <charlet@act-europe.fr>
7683
7684 * misc.c, lang.opt: Add handling of -nostdlib, now recognized/needed
7685 by gnat1.
7686
139f0d1e
AC
76872003-11-10 Arnaud Charlet <charlet@act-europe.fr>
7688
7689 * Makefile.in, Make-lang.in: Remove build of gnat_wrapper and gnatpsta,
7690 no longer needed.
7691
7692 * gnatpsta.adb, gnat_wrapper.adb: Removed, no longer needed.
7693
7694 * sysdep.c: Add handling of cygwin.
7695
f3e4c05c
GS
76962003-11-10 GNAT Script <nobody@gnat.com>
7697
7698 * Make-lang.in: Makefile automatically updated
7699
2cdc8909
AC
77002003-11-10 Arnaud Charlet <charlet@act-europe.fr>
7701
7702 PR 12950
7703 * osint.ads, osint.adb (Relocate_Path, Executable_Suffix): New
7704 functions. Used to handle dynamic prefix relocation, via set_std_prefix.
7705 Replace GNAT_ROOT by GCC_ROOT.
7706
7707 * Make-lang.in: Use new function Relocate_Path to generate sdefault.adb
7708
37783865
ZW
77092003-11-06 Zack Weinberg <zack@codesourcery.com>
7710
7711 * misc.c (fp_prec_to_size, fp_size_to_prec): Use GET_MODE_PRECISION
7712 and update for changed meaning of GET_MODE_BITSIZE.
7713
6bc1c519
AC
77142003-11-04 Doug Rupp <rupp@gnat.com>
7715
7716 * sysdep.c: Problem discovered during IA64 VMS port.
7717 [VMS] #include <unixio.h> to get proper prototypes.
7718
37783865 7719 * adaint.c:
6bc1c519
AC
7720 Issues discovered/problems fixed during IA64 VMS port.
7721 [VMS] #define _POSIX_EXIT for proper semantics.
7722 [VMS] #include <unixio.h> for proper prototypes.
7723 [VMS] (fork): #define IA64 version.
7724 (__gnat_os_exit): Remove unnecessary VMS specific code.
7725
77262003-11-04 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
7727
7728 Part of PR ada/12806
7729
7730 * ada-tree.h (TYPE_DIGITS_VALUE, SET_TYPE_DIGITS_VALUE): Save count as
7731 tree, not integer.
7732
37783865 7733 * decl.c:
6bc1c519
AC
7734 (gnat_to_gnu_entity, case E_Floating_Point_Type): Save count as tree,
7735 not integer.
7736
7737 * targtyps.c, decl.c, misc.c,
7738 gigi.h (fp_prec_to_size, fp_size_to_prec): Temporary
7739 routines to work around change in FP sizing semantics in GCC.
7740
37783865 7741 * utils.c:
6bc1c519
AC
7742 (build_vms_descriptor): TYPE_DIGITS_VALUE is tree, not integer.
7743
7744 * gigi.h: (enumerate_modes): New function.
7745
7746 * Make-lang.in: (ada/misc.o): Add real.h.
7747
7748 * misc.c: (enumerate_modes): New function.
7749
77502003-11-04 Robert Dewar <dewar@gnat.com>
7751
7752 * 3vtrasym.adb: Minor reformatting
7753 Use terminology encoded/decoded name, rather than C++ specific notion
7754 of mangling (this is the terminology used throughout GNAT).
7755
7756 * einfo.h: Regenerated
7757
7758 * einfo.ads, einfo.adb: Add new flag Is_Thread_Body
7759
37783865 7760 * exp_ch6.adb:
6bc1c519
AC
7761 (Expand_N_Subprogram_Body): Handle expansion of thread body procedure
7762
7763 * par-prag.adb: Add dummy entry for Thread_Body pragma
7764
37783865 7765 * rtsfind.ads:
6bc1c519
AC
7766 Add entries for System.Threads entities for thread body processing
7767
37783865 7768 * sem_attr.adb:
6bc1c519
AC
7769 (Analyze_Pragma, Access attributes): Check these are not applied to a
7770 thread body, since this is not permitted
7771
7772 * sem_prag.adb: Add processing for Thread_Body pragma.
7773 Minor comment fix.
7774
37783865 7775 * sem_res.adb:
6bc1c519
AC
7776 (Resolve_Call): Check for incorrect attempt to call a thread body
7777 procedure with a direct call.
7778
7779 * snames.ads, snames.adb: Add entry for Thread_Body pragma
7780 Add names associated with thread body expansion
7781
7782 * snames.h: Add entry for Thread_Body pragma
7783
7784 * s-thread.adb: Add entries for thread body processing
7785 These are dummy bodies so far
7786
7787 * s-thread.ads: Add documentation on thread body handling.
7788 Add entries for thread body processing.
7789
77902003-11-04 Javier Miranda <miranda@gnat.com>
7791
37783865 7792 * sem_ch10.adb:
6bc1c519
AC
7793 (Build_Limited_Views): Return after posting an error in case of limited
7794 with_clause on subprograms, generics, instances or generic renamings
7795 (Install_Limited_Withed_Unit): Do nothing in case of limited with_clause
7796 on subprograms, generics, instances or generic renamings
7797
77982003-11-04 Arnaud Charlet <charlet@act-europe.fr>
7799
7800 * raise.c (setup_to_install): Correct mistake in last revision; two
7801 arguments out of order.
7802
7803 * trans.c, cuintp.c, argv.c, aux-io.c, cal.c, errno.c, exit.c,
7804 gnatbl.c, init.c, stringt.h, utils.c, utils2.c: Update copyright
7805 notice, missed in previous change.
7806 Remove trailing blanks and other style errors introduced in previous
7807 change.
7808
78092003-11-04 Olivier Hainque <hainque@act-europe.fr>
7810
7811 * decl.c (gnat_to_gnu_field): Adjust the conditions under which we get
7812 rid of the wrapper for a LJM type, ensuring we don't do that if the
7813 field is addressable. This avoids potential low level type view
7814 mismatches later on, for instance in a by-reference argument passing
7815 process.
7816
78172003-11-04 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
7818
7819 * decl.c (gnat_to_gnu_field): No longer check for BLKmode being
7820 aligned at byte boundary.
7821
78222003-11-04 Joel Brobecker <brobecker@gnat.com>
7823
7824 * decl.c (components_to_record): Do not delete the empty variants from
7825 the end of the union type.
7826
78272003-11-04 Ed Schonberg <schonberg@gnat.com>
7828
7829 * exp_ch4.adb (Expand_N_Op_Eq): Use base type when locating primitive
7830 operation for a derived type, an explicit declaration may use a local
7831 subtype of Boolean.
7832
78332003-11-04 Vincent Celier <celier@gnat.com>
7834
7835 * make.adb (Gnatmake): Allow main sources on the command line with a
7836 library project when it is only for compilation (no binding or
7837 linking).
7838
487e9fff
RO
78392003-11-04 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
7840
7841 * Makefile.in: Remove many duplicate variables.
7842
63069342
KC
78432003-11-03 Kelley Cook <kcook@gcc.gnu.org>
7844
7845 * Make-lang.in (dvi): Move targets to $(docobjdir).
7846 (gnat_ug_vms.dvi): Simplify rule and adjust target.
7847 (gnat_ug_wnt.dvi): Likewise.
7848 (gnat_ug_unx.dvi): Likewise.
7849 (gnat_ug_vxw.dvi): Likewise.
7850 (gnat_rm.dvi): Likewise.
7851 (gnat-style.dvi): Likewise.
7852
c2edc52b
KC
78532003-10-31 Kelley Cook <kcook@gcc.gnu.org>
7854
7855 * gigi.h: Missed commit from update for C90.
7856
14df9585
KC
78572003-10-31 Kelley Cook <kcook@gcc.gnu.org>
7858
7859 * Makefile.in (ada/b_gnat1.o): Compile with -Wno-error.
7860
acd8e984
AS
78612003-10-31 Andreas Schwab <schwab@suse.de>
7862
7863 * raise.c (get_action_description_for): Fix typo in last change.
7864
b2c62c45
NN
78652003-10-31 Nathanael Nerode <neroden@gcc.gnu.org>
7866
7867 PR ada/12761
7868 * ada/Make-lang.in: Move default definitions of X_ADA_CFLAGS,
7869 T_ADA_CFLAGS, X_ADAFLAGS, T_ADAFLAGS from here to master Makefile.in.
7870
9373164a
KC
78712003-10-30 Kelley Cook <kcook@gcc.gnu.org>
7872
7873 * adadecode.c, adaint.c, argv.c, aux-io.c, cal.c, cio.c, cstreams.c,
7874 ctrl_c.c, cuintp.c, decl.c, errno.c, exit.c, expect.c, final.c,
7875 gigi.h, gmem.c, gnatbl.c, init.c, misc.c, mkdir.c, raise.c, socket.c,
7876 sysdep.c, sysdep.c, targtyps.c, tb-alvms.c, tb-alvxw.c, tracebak.c,
7877 trans.c, utils.c, utils2.c: Convert function prototypes to C90.
7878
bde58e32
AC
78792003-10-30 Vasiliy Fofanov <fofanov@act-europe.fr>
7880
37783865 7881 * 3vtrasym.adb:
bde58e32
AC
7882 Demangle Ada symbols returned by TBK$SYMBOLIZE. Correctly align line
7883 numbers when symbol name is too long.
7884
78852003-10-30 Ed Falis <falis@gnat.com>
7886
7887 * g-signal.ads, g-signal.adb: New files
7888
7889 * impunit.adb: (Non_Imp_File_Names): Added "g-signal"
7890
7891 * Makefile.rtl: Introduce GNAT.Signals
7892
78932003-10-30 Robert Dewar <dewar@gnat.com>
7894
7895 * freeze.adb: Minor reformatting
7896
7897 * lib-writ.adb (Write_ALI): Never write ali file if -gnats is specified
7898
37783865
ZW
7899 * par.adb, par-ch12.adb, par-ch13.adb, par-ch2.adb, par-ch3.adb,
7900 par-ch5.adb, par-ch6.adb, par-ch9.adb, par-util.adb:
bde58e32
AC
7901 New handling of Id_Check parameter to improve recognition of keywords
7902 used as identifiers.
7903 Update copyright notice to include 2003
7904
657a9dd9
AC
79052003-10-29 Robert Dewar <dewar@gnat.com>
7906
7907 * 3vtrasym.adb, 5vtraent.ads, sprint.adb,
7908 sem_ch10.adb: Minor reformatting
7909
7910 * exp_ch5.adb (Expand_Assign_Array): Test for bit unaligned operands
7911 (Expand_Assign_Record): Test right hand side for bit unaligned as well
7912
79132003-10-29 Vasiliy Fofanov <fofanov@act-europe.fr>
7914
37783865 7915 * 3vtrasym.adb, 5vtraent.adb, 5vtraent.ads, tb-alvms.c:
657a9dd9
AC
7916 Support for TBK$SYMBOLIZE-based symbolic traceback.
7917
79182003-10-29 Jose Ruiz <ruiz@act-europe.fr>
7919
37783865 7920 * exp_disp.adb:
657a9dd9
AC
7921 Revert previous change, that did not work well when pragma No_Run_Time
7922 was used in conjunction with a run-time other than ZFP.
7923
79242003-10-29 Vincent Celier <celier@gnat.com>
7925
37783865 7926 * make.adb:
657a9dd9
AC
7927 (Gnatmake): When there are no Ada mains in attribute Main, disable the
7928 bind and link steps only is switch -z is not used.
7929
79302003-10-29 Arnaud Charlet <charlet@act-europe.fr>
7931
7932 * Makefile.generic: Remove duplicated setting of CC.
7933
7934 * Makefile.prolog: Set CC to gcc by default, to override make's
7935 default (cc).
7936
7937 * einfo.h: Regenerated.
7938
79392003-10-29 Ed Schonberg <schonberg@gnat.com>
7940
7941 * sem_ch10.adb (Analyze_Subunit): Restore state of suppress flags for
7942 current body, after compiling subunit.
7943
7944 * itypes.adb (Create_Itype): In ASIS_Mode, do not freeze the itype
7945 when in deleted code, because gigi needs properly ordered freeze
7946 actions to annotate types.
7947
7948 * freeze.adb (Is_Fully_Defined): Predicate must be recursive, to
7949 prevent the premature freezing of record type that contains
7950 subcomponents with a private type that does not yet have a completion.
7951
79522003-10-29 Javier Miranda <miranda@gnat.com>
7953
37783865 7954 * sem_ch12.adb:
657a9dd9
AC
7955 (Analyze_Package_Instantiation): Check that instances can not be used in
7956 limited with_clauses.
7957
37783865 7958 * sem_ch8.adb:
657a9dd9
AC
7959 (Analyze_Package_Renaming): Check that limited withed packages cannot
7960 be renamed. Improve text on error messages related to limited
7961 with_clauses.
7962
7963 * einfo.adb, einfo.ads: Remove Non_Limited_Views attribute.
7964
7965 * sprint.adb: (Sprint_Node_Actual): Print limited with_clauses.
7966 Update copyright notice.
7967
7968 * sem_ch10.adb: (Build_Limited_Views): Complete its documentation.
7969 (Install_Limited_Context_Clauses): New subprogram that isolates all the
7970 checks required for limited context_clauses and installs the limited
7971 view.
7972 (Install_Limited_Withed_Unit): Complete its documentation.
7973 (Analyze_Context): Check that limited with_clauses are only allowed in
7974 package specs.
7975 (Install_Context): Call Install_Limited_Context_Clauses after the
7976 parents have been installed.
7977 (Install_Limited_Withed_Unit): Add documentation. Mark the installed
7978 package as 'From_With_Type'; this mark indicates that the limited view
7979 is installed. Used to check bad usages of limited with_clauses.
7980 (Build_Limited_Views): Do not add shadow entities to the scope's list
7981 of entities. Do not add real entities to the Non_Limited_Views chain.
7982 Improve error notification.
7983 (Remove_Context_Clauses): Remove context clauses in two phases:
7984 limited views first and regular views later (to maintain the
7985 stack model).
7986 (Remove_Limited_With_Clause): If the package is analyzed then reinstall
7987 its visible entities.
7988
79892003-10-29 Thomas Quinot <quinot@act-europe.fr>
7990
7991 * sem_type.adb (Specific_Type): Type Universal_Fixed is compatible
7992 with any type that Is_Fixed_Point_Type.
7993
7994 * sinfo.ads: Fix documentation for Associated_Node attribute.
7995
79962003-10-29 Sergey Rybin <rybin@act-europe.fr>
7997
7998 * switch-c.adb (Scan_Front_End_Switches): ASIS_Mode is set now when
7999 both '-gnatc' and '-gnatt' are specified.
8000
8001 * atree.adb (Initialize): Add initialization for Node_Count (set to
8002 zero).
8003
80042003-10-29 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
8005
8006 * decl.c (gnat_to_gnu_entity, case E_Subprogram): If no return value,
8007 do not consider as Pure.
8008
8009 Part of implementation of function-at-a-time:
8010
8011 * trans.c (gnat_to_gnu_code): If IS_STMT, call expand_expr_stmt.
8012 (tree_transform): Add new argument to build_component_ref.
8013 (tree_transform, case N_Assignment_Statement): Make and return an
8014 EXPR_STMT.
8015 (tree_transform): If result IS_STMT, set flags and return it.
8016 (gnat_expand_stmt, set_lineno_from_sloc): New functions.
8017
8018 * utils2.c (build_simple_component_ref, build_component_ref): Add new
8019 arg, NO_FOLD_P.
8020 (build_binary_op, case EQ_EXPR): Pass additional arg to it.
8021 (build_allocator): Likewise.
8022
8023 * utils.c (convert_to_fat_pointer, convert_to_thin_pointer, convert):
8024 Add new arg to build_component_ref.
8025 (maybe_unconstrained_array, unchecked_convert): Likewise.
8026
8027 * ada-tree.def (EXPR_STMT): New code.
8028
8029 * ada-tree.h (IS_STMT, TREE_SLOC, EXPR_STMT_EXPR): New macros.
8030
8031 * decl.c (gnat_to_gnu_entity, case object): Add extra arg to
8032 build_component_ref calls.
8033
8034 * misc.c (gnat_expand_expr): If IS_STMT, call gnat_expand_stmt.
8035
8036 * gigi.h (gnat_expand_stmt, set_lineno_from_sloc): New functions.
8037 (build_component_ref): Add new argument, NO_FOLD_P.
8038
ecad994d
AC
80392003-10-27 Arnaud Charlet <charlet@act-europe.fr>
8040
8041 * Makefile.generic: Add missing substitution on object_deps handling.
8042
8043 PR ada/5909:
8044 * Make-lang.in (check-ada): Enable ACATS test suite.
8045
80462003-10-27 Robert Dewar <dewar@gnat.com>
8047
37783865 8048 * exp_ch3.adb:
ecad994d
AC
8049 (Freeze_Array_Type): We do not need an initialization routine for types
8050 derived from String or Wide_String. They should be treated the same
8051 as String and Wide_String themselves. This caused problems with the
8052 use of Initialize_Scalars.
8053
37783865 8054 * exp_ch5.adb:
ecad994d
AC
8055 (Expand_Assign_Record): Do component-wise assignment of non-byte aligned
8056 composites. This allows use of component clauses that are not byte
8057 aligned.
8058
37783865 8059 * sem_prag.adb:
ecad994d
AC
8060 (Analyze_Pragma, case Pack): Generate warning and ignore pack if there
8061 is an attempt to pack an array of atomic objects.
8062
8063 * make.adb, prj-env.adb, prj-env.ads: Minor reformatting
8064
80652003-10-27 Pascal Obry <obry@gnat.com>
8066
37783865 8067 * g-dirope.adb:
ecad994d
AC
8068 (Basename): Check for drive letters in a pathname only on DOS based OS.
8069
80702003-10-27 Vincent Celier <celier@gnat.com>
8071
37783865 8072 * make.adb:
ecad994d
AC
8073 (Gnatmake): When unable to change dir to the object dir, display the
8074 content of the parent dir of the obj dir, to try to understand why this
8075 happens.
8076
80772003-10-27 GNAT Script <nobody@gnat.com>
8078
8079 * Make-lang.in: Makefile automatically updated
8080
80812003-10-27 Ed Schonberg <schonberg@gnat.com>
8082
37783865 8083 * sem_ch12.adb:
ecad994d
AC
8084 (Inline_Instance_Body): Indicate that the save/restore of use_clauses
8085 should not be done in Save/Restore_Scope_Stack, because it is performed
8086 locally.
8087
37783865 8088 * sem_ch8.adb:
ecad994d
AC
8089 (Save_Scope_Stack, Restore_Scope_Stack): Add parameter to indicate
8090 whether use clauses should be removed/restored.
8091
37783865 8092 * sem_ch8.ads:
ecad994d
AC
8093 (Save_Scope_Stack, Restore_Scope_Stack): Add parameter to indicate
8094 whether use clauses should be removed/restored.
8095
b6b3c138
AJ
80962003-10-26 Andreas Jaeger <aj@suse.de>
8097
8098 * Makefile.in: Remove duplicated lines.
8099
b6d83931
AC
81002003-10-24 Arnaud Charlet <charlet@act-europe.fr>
8101
8102 * gnatvsn.ads (Gnat_Static_Version_String): New constant, used to
8103 minimize the differences with ACT tree.
8104
8105 * gnatkr.adb, gnatlink.adb, gnatls.adb, gnatmake.adb,
8106 gnatprep.adb, gnatpsta.adb, gnatvsn.ads: Take advantage of
8107 Gnatvsn.Gnat_Static_Version_String to reduce differences between
8108 ACT and FSF trees.
8109
81102003-10-24 Pascal Obry <obry@gnat.com>
8111
8112 * adadecode.c (ostrcpy): New function.
8113 (__gnat_decode): Use ostrcpy of strcpy.
8114 (has_prefix): Set first parameter a const.
8115 (has_suffix): Set first parameter a const.
8116 Update copyright notice. Fix source name in header.
8117 Removes a trailing space.
8118 PR ada/12014.
8119
81202003-10-24 Jose Ruiz <ruiz@act-europe.fr>
8121
b6b3c138 8122 * exp_disp.adb:
b6d83931
AC
8123 Remove the test against being in No_Run_Time_Mode before generating a
8124 call to Register_Tag. It is redundant with the test against the
8125 availability of the function Register_Tag.
8126
81272003-10-24 Vincent Celier <celier@gnat.com>
8128
8129 * g-catiio.adb: (Month_Name): Correct spelling of February
8130
8131 * make.adb: (Mains): New package
8132 (Initialize): Call Mains.Delete
8133 (Gnatmake): Check that each main on the command line is a source of a
8134 project file and, if there are several mains, each of them is a source
8135 of the same project file.
8136 (Gnatmake): When a foreign language is specified in attribute Languages,
8137 no main is specified on the command line and attribute Mains is not
8138 empty, only build the Ada main. If there is no Ada main, just compile
8139 the Ada sources and their closure.
8140 (Gnatmake): If a main is specified on the command line with directory
8141 information, check that the source exists and, if it does, that the path
8142 is the actual path of a source of a project.
8143
b6b3c138 8144 * prj-env.adb:
b6d83931
AC
8145 (File_Name_Of_Library_Unit_Body): New Boolean parameter Full_Path. When
8146 Full_Path is True, return the full path instead of the simple file name.
8147 (Project_Of): New function
8148
b6b3c138 8149 * prj-env.ads:
b6d83931
AC
8150 (File_Name_Of_Library_Unit_Body): New Boolean parameter Full_Path,
8151 defaulted to False.
8152 (Project_Of): New function
8153
81542003-10-24 Arnaud Charlet <charlet@act-europe.fr>
8155
b6b3c138 8156 * Makefile.generic:
b6d83931
AC
8157 Ensure objects of main project are always checked and rebuilt if needed.
8158 Set CC to gcc by default.
8159 Prepare new handling of link by creating a global archive (not activated
8160 yet).
8161
8162 * adadecode.h, atree.h, elists.h, nlists.h, raise.h,
8163 stringt.h: Update copyright notice. Remove trailing blanks.
8164 Fix source name in header.
8165
81662003-10-24 Robert Dewar <dewar@gnat.com>
8167
8168 * sem_ch12.adb: Minor reformatting
8169
b6b3c138 8170 * sem_ch3.adb:
b6d83931
AC
8171 Minor reformatting (including new function return style throughout)
8172
b6b3c138 8173 * sem_ch3.ads:
b6d83931
AC
8174 Minor reformatting (including new function return style throughout)
8175
81762003-10-24 Arnaud Charlet <charlet@act-europe.fr>
8177
8178 * adadecode.h, atree.h, elists.h, nlists.h, raise.h,
8179 stringt.h: Update copyright notice. Remove trailing blanks.
8180 Fix source name in header.
8181
81822003-10-24 GNAT Script <nobody@gnat.com>
8183
8184 * Make-lang.in: Makefile automatically updated
8185
b4e2d709
NN
81862003-10-23 Nathanael Nerode <neroden@gcc.gnu.org>
8187
8188 * adadecode.h, atree.h, elists.h, namet.h, nlists.h, raise.h,
8189 stringt.h: Convert to ISO C90 declarations and definitions.
8190
9d7d51be
AC
81912003-10-23 Thomas Quinot <quinot@act-europe.fr>
8192
8193 PR ada/11978:
8194 * exp_ch13.adb (Expand_N_Freeze_Entity): Do not consider inherited
8195 External_Tag attribute definition clauses.
8196
81972003-10-23 Ed Schonberg <schonberg@gnat.com>
8198
8199 PR ada/7613:
8200 * exp_dbug.adb (Debug_Renaming_Declaration): For the renaming of a
8201 child unit, generate a fully qualified name to avoid spurious errors
8202 when the context contains renamings of different child units with
8203 the same simple name.
8204
8205 * exp_dbug.ads: Add documentation on name qualification for renamings
8206 of child units.
8207
82082003-10-23 Robert Dewar <dewar@gnat.com>
8209
8210 * g-regpat.ads, g-regpat.adb: Minor reformatting
8211
82122003-10-23 Jose Ruiz <ruiz@act-europe.fr>
8213
8214 * Makefile.in: Use the file 1atags.ads with the ZFP and cert run-times.
8215
82162003-10-23 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
8217
8218 * trans.c: (tree_transform, case N_Real_Literal): Add extra arg to
8219 Machine call.
8220
8221 * urealp.h: (Machine): Update to proper definition.
8222
6d244bbe
AC
82232003-10-23 Arnaud Charlet <charlet@act-europe.fr>
8224
8225 * init.c, adaint.c: Minor reformatting.
8226
8f4eb34b
DS
82272003-10-23 Danny Smith <dannysmith@users.sourceforge.net>
8228
6d244bbe 8229 * adaint.c (w32_epoch_offset): Define static const at file level.
8f4eb34b
DS
8230 (win32_filetime): Replace offset with w32_epoch_offset. Use NULL
8231 rather than t_create, t_access in call to GetFileTime. Use union
8232 to convert between FILETIME and unsigned long long.
8233 (__gnat_file_time_name): Test for invalid file handle.
8234 (__gnat_set_filetime_name): Support win32 targets using
8235 w32api SetFileTime.
8236
25412599
DS
82372003-10-22 Danny Smith <dannysmith@users.sourceforge.net>
8238
8239 * sysdep.c: Include conio.h if __MINGW32__ and !OLD_MINGW.
8240
8241 * ctrl_c.c (__gnat_int_handler): Remove declaration.
8242
8243 * decl.c (creat_concat_name): Const-ify prefix.
8244
8245 * adaint.c: Include ctype.h if __MINGW32__.
8246 (__gnat_readlink): Mark arguments as possibly unused.
8247 (__gnat_symlink): Likewise.
8248 (__gnat_is_symbolic_link): Likewise.
8249 (__gnat_portable_spawn): Likewise. Cast last arg of spawnvp to match
8250 declaration
b6b3c138 8251 (__gnat_file_time_name): Don't declare struct stat statbuf when
25412599
DS
8252 not needed.
8253 (__gnat_is_absolute_path): Add parenthesis around condition of
8254 'if' statement to avoid warning.
8255 (__gnat_plist_init): Specify void as parameter.
8256 (plist_enter): Likewise.
8257 (plist_leave): Likewise.
8258 (remove_handle): Make static. Initialize prev.
8259
698a5e79
AC
82602003-10-22 Arnaud Charlet <charlet@act-europe.fr>
8261
6d244bbe 8262 * Makefile.in: Disable build of gnatpsta. PR ada/10110.
698a5e79
AC
8263 * cstreams.c (__gnat_full_name): Minor improvements and clean up
8264 of previous change.
8265
e97c30aa
RO
82662003-10-22 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
8267
8268 * tracebak.c (MAX): Avoid redefinition warning.
8269
8270 * init.c [sgi] (__gnat_error_handler): Remove i, unused.
8271 Change msg to const char *.
8272 (__gnat_install_handler): Remove ss, unused.
8273 [sun && __SVR4 && !__vxworks] (__gnat_error_handler): Change msg
8274 to const char *.
8275 * cstreams.c (__gnat_full_name): Declare p only when used.
8276 (__gnat_full_name) [sgi] Return buffer.
8277
65f1ebd1
AC
82782003-10-22 Arnaud Charlet <charlet@act-europe.fr>
8279
8280 * mingw32.h: New file.
0c644933
AC
8281 * gnat_wrapper.adb: New file.
8282
6d244bbe 82832003-10-22 Jerome Roussel <roussel@act-europe.fr>
0c644933
AC
8284
8285 * g-regpat.ads, g-regpat.adb (Match): new function, to know if a
8286 string match a pre compiled regular expression (the corresponding
8287 version of the function working on a raw regular expression)
8288 Fix typos in various comments
8289 Update copyright notice in spec
8290
6d244bbe 82912003-10-21 Gary Dismukes <dismukes@gnat.com>
0c644933 8292
b6b3c138 8293 * exp_ch3.adb:
0c644933
AC
8294 (Component_Needs_Simple_Initialization): Return False when the type is a
8295 packed bit array. Revise spec comments to document this case.
8296
b6b3c138 8297 * exp_prag.adb:
0c644933
AC
8298 (Expand_Pragma_Import): Set any expression on the imported object to
8299 empty to avoid initializing imported objects (in particular this
8300 covers the case of zero-initialization of bit arrays).
8301 Update copyright notice.
8302
6d244bbe 83032003-10-21 Ed Schonberg <schonberg@gnat.com>
0c644933 8304
b6b3c138 8305 * sem_ch12.adb:
0c644933
AC
8306 (Load_Parent_Of_Generic): If parent is compilation unit, stop search,
8307 a subunit is missing.
8308 (Instantiate_Subprogram_Body): If body of function is missing, set type
8309 of return expression explicitly in dummy body, to prevent cascaded
8310 errors when a subunit is missing.
8311 Fixes PR 5677.
8312
b6b3c138 8313 * sem_ch3.adb:
0c644933
AC
8314 (Access_Subprogram_Declaration): Verify that return type is valid.
8315 Fixes PR 8693.
8316
b6b3c138 8317 * sem_elab.adb:
0c644933
AC
8318 (Check_Elab_Calls): Do not apply elaboration checks if the main unit is
8319 generic.
8320 Fixes PR 12318.
8321
b6b3c138 8322 * sem_util.adb:
0c644933
AC
8323 (Corresponding_Discriminant): If the scope of the discriminant is a
8324 private type without discriminant, use its full view.
8325 Fixes PR 8247.
65f1ebd1 8326
fbf5a39b
AC
83272003-10-21 Arnaud Charlet <charlet@act-europe.fr>
8328
8329 * 3psoccon.ads, 3veacodu.adb, 3vexpect.adb, 3vsoccon.ads,
8330 3vsocthi.adb, 3vsocthi.ads, 3vtrasym.adb, 3zsoccon.ads,
8331 3zsocthi.adb, 3zsocthi.ads, 50system.ads, 51system.ads,
8332 55system.ads, 56osinte.adb, 56osinte.ads, 56taprop.adb,
8333 56taspri.ads, 56tpopsp.adb, 57system.ads, 58system.ads,
8334 59system.ads, 5aml-tgt.adb, 5bml-tgt.adb, 5csystem.ads,
8335 5dsystem.ads, 5fosinte.adb, 5gml-tgt.adb, 5hml-tgt.adb,
8336 5isystem.ads, 5lparame.adb, 5msystem.ads, 5psystem.ads,
8337 5sml-tgt.adb, 5sosprim.adb, 5stpopsp.adb, 5tsystem.ads,
8338 5usystem.ads, 5vml-tgt.adb, 5vsymbol.adb, 5vtraent.adb,
8339 5vtraent.ads, 5wml-tgt.adb, 5xparame.ads, 5xsystem.ads,
8340 5xvxwork.ads, 5yparame.ads, 5ytiitho.adb, 5zinit.adb,
8341 5zml-tgt.adb, 5zparame.ads, 5ztaspri.ads, 5ztfsetr.adb,
8342 5zthrini.adb, 5ztiitho.adb, 5ztpopsp.adb, 7stfsetr.adb,
8343 7straces.adb, 7strafor.adb, 7strafor.ads, 7stratas.adb,
8344 a-excach.adb, a-exexda.adb, a-exexpr.adb, a-exextr.adb,
8345 a-exstat.adb, a-strsup.adb, a-strsup.ads, a-stwisu.adb,
8346 a-stwisu.ads, bld.adb, bld.ads, bld-io.adb,
8347 bld-io.ads, clean.adb, clean.ads, ctrl_c.c,
8348 erroutc.adb, erroutc.ads, errutil.adb, errutil.ads,
8349 err_vars.ads, final.c, g-arrspl.adb, g-arrspl.ads,
8350 g-boubuf.adb, g-boubuf.ads, g-boumai.ads, g-bubsor.adb,
8351 g-bubsor.ads, g-comver.adb, g-comver.ads, g-ctrl_c.ads,
8352 g-dynhta.adb, g-dynhta.ads, g-eacodu.adb, g-excact.adb,
8353 g-excact.ads, g-heasor.adb, g-heasor.ads, g-memdum.adb,
8354 g-memdum.ads, gnatclean.adb, gnatsym.adb, g-pehage.adb,
8355 g-pehage.ads, g-perhas.ads, gpr2make.adb, gpr2make.ads,
8356 gprcmd.adb, gprep.adb, gprep.ads, g-semaph.adb,
8357 g-semaph.ads, g-string.adb, g-string.ads, g-strspl.ads,
8358 g-wistsp.ads, i-vthrea.adb, i-vthrea.ads, i-vxwoio.adb,
8359 i-vxwoio.ads, Makefile.generic, Makefile.prolog, Makefile.rtl,
8360 prep.adb, prep.ads, prepcomp.adb, prepcomp.ads,
8361 prj-err.adb, prj-err.ads, s-boarop.ads, s-carsi8.adb,
8362 s-carsi8.ads, s-carun8.adb, s-carun8.ads, s-casi16.adb,
8363 s-casi16.ads, s-casi32.adb, s-casi32.ads, s-casi64.adb,
8364 s-casi64.ads, s-casuti.adb, s-casuti.ads, s-caun16.adb,
8365 s-caun16.ads, s-caun32.adb, s-caun32.ads, s-caun64.adb,
8366 s-caun64.ads, scng.adb, scng.ads, s-exnint.adb,
8367 s-exnllf.adb, s-exnlli.adb, s-expint.adb, s-explli.adb,
8368 s-geveop.adb, s-geveop.ads, s-hibaen.ads, s-htable.adb,
8369 s-htable.ads, sinput-c.adb, sinput-c.ads, s-memcop.ads,
8370 socket.c, s-purexc.ads, s-scaval.adb, s-stopoo.adb,
8371 s-strcom.adb, s-strcom.ads, s-strxdr.adb, s-rident.ads,
8372 s-thread.adb, s-thread.ads, s-tpae65.adb, s-tpae65.ads,
8373 s-tporft.adb, s-traent.adb, s-traent.ads, styleg.adb,
8374 styleg.ads, styleg-c.adb, styleg-c.ads, s-veboop.adb,
8375 s-veboop.ads, s-vector.ads, symbols.adb, symbols.ads,
8376 tb-alvms.c, tb-alvxw.c, tempdir.adb, tempdir.ads,
8377 vms_conv.ads, vms_conv.adb, vms_data.ads,
8378 vxaddr2line.adb: Files added. Merge with ACT tree.
8379
8380 * 4dintnam.ads, 4mintnam.ads, 4uintnam.ads, 52system.ads,
8381 5dosinte.ads, 5etpopse.adb, 5mosinte.ads, 5qosinte.adb,
8382 5qosinte.ads, 5qstache.adb, 5qtaprop.adb, 5qtaspri.ads,
8383 5stpopse.adb, 5uintman.adb, 5uosinte.ads, adafinal.c,
8384 g-enblsp.adb, io-aux.c, scn-nlit.adb, scn-slit.adb,
8385 s-exnflt.ads, s-exngen.adb, s-exngen.ads, s-exnlfl.ads,
8386 s-exnlin.ads, s-exnsfl.ads, s-exnsin.ads, s-exnssi.ads,
8387 s-expflt.ads, s-expgen.adb, s-expgen.ads, s-explfl.ads,
8388 s-explin.ads, s-expllf.ads, s-expsfl.ads, s-expsin.ads,
8389 s-expssi.ads, style.adb: Files removed. Merge with ACT tree.
8390
8391 * 1ic.ads, 31soccon.ads, 31soliop.ads, 3asoccon.ads,
8392 3bsoccon.ads, 3gsoccon.ads, 3hsoccon.ads, 3ssoccon.ads,
8393 3ssoliop.ads, 3wsoccon.ads, 3wsocthi.adb, 3wsocthi.ads,
8394 3wsoliop.ads, 41intnam.ads, 42intnam.ads, 4aintnam.ads,
8395 4cintnam.ads, 4gintnam.ads, 4hexcpol.adb, 4hintnam.ads,
8396 4lintnam.ads, 4nintnam.ads, 4ointnam.ads, 4onumaux.ads,
8397 4pintnam.ads, 4sintnam.ads, 4vcaldel.adb, 4vcalend.adb,
8398 4vintnam.ads, 4wexcpol.adb, 4wintnam.ads, 4zintnam.ads,
8399 51osinte.adb, 51osinte.ads, 52osinte.adb, 52osinte.ads,
8400 53osinte.ads, 54osinte.ads, 5aosinte.adb, 5aosinte.ads,
8401 5asystem.ads, 5ataprop.adb, 5atasinf.ads, 5ataspri.ads,
8402 5atpopsp.adb, 5avxwork.ads, 5bosinte.adb, 5bosinte.ads,
8403 5bsystem.ads, 5cosinte.ads, 5esystem.ads, 5fintman.adb,
8404 5fosinte.ads, 5fsystem.ads, 5ftaprop.adb, 5ftasinf.ads,
8405 5ginterr.adb, 5gintman.adb, 5gmastop.adb, 5gosinte.ads,
8406 5gproinf.ads, 5gsystem.ads, 5gtaprop.adb, 5gtasinf.ads,
8407 5gtpgetc.adb, 5hosinte.adb, 5hosinte.ads, 5hsystem.ads,
8408 5htaprop.adb, 5htaspri.ads, 5htraceb.adb, 5iosinte.adb,
8409 5itaprop.adb, 5itaspri.ads, 5ksystem.ads, 5kvxwork.ads,
8410 5lintman.adb, 5lml-tgt.adb, 5losinte.ads, 5lsystem.ads,
8411 5mvxwork.ads, 5ninmaop.adb, 5nintman.adb, 5nosinte.ads,
8412 5ntaprop.adb, 5ntaspri.ads, 5ointerr.adb, 5omastop.adb,
8413 5oosinte.adb, 5oosinte.ads, 5oosprim.adb, 5oparame.adb,
8414 5osystem.ads, 5otaprop.adb, 5otaspri.ads, 5posinte.ads,
8415 5posprim.adb, 5pvxwork.ads, 5sintman.adb, 5sosinte.adb,
8416 5sosinte.ads, 5ssystem.ads, 5staprop.adb, 5stasinf.ads,
8417 5staspri.ads, 5svxwork.ads, 5tosinte.ads, 5vasthan.adb,
8418 5vinmaop.adb, 5vinterr.adb, 5vintman.adb, 5vintman.ads,
8419 5vmastop.adb, 5vosinte.adb, 5vosinte.ads, 5vosprim.adb,
8420 5vsystem.ads, 5vtaprop.adb, 5vtaspri.ads, 5vtpopde.adb,
8421 5vtpopde.ads, 5wgloloc.adb, 5wintman.adb, 5wmemory.adb,
8422 5wosprim.adb, 5wsystem.ads, 5wtaprop.adb, 5wtaspri.ads,
8423 5ysystem.ads, 5zinterr.adb, 5zintman.adb, 5zosinte.adb,
8424 5zosinte.ads, 5zosprim.adb, 5zsystem.ads, 5ztaprop.adb,
8425 6vcpp.adb, 6vcstrea.adb, 6vinterf.ads, 7sinmaop.adb,
8426 7sintman.adb, 7sosinte.adb, 7sosprim.adb, 7staprop.adb,
8427 7staspri.ads, 7stpopsp.adb, 7straceb.adb, 9drpc.adb,
8428 a-caldel.adb, a-caldel.ads, a-charac.ads, a-colien.ads,
8429 a-comlin.adb, adaint.c, adaint.h, ada-tree.def,
8430 a-diocst.adb, a-diocst.ads, a-direio.adb, a-except.adb,
8431 a-except.ads, a-excpol.adb, a-exctra.adb, a-exctra.ads,
8432 a-filico.adb, a-interr.adb, a-intsig.adb, a-intsig.ads,
8433 ali.adb, ali.ads, ali-util.adb, ali-util.ads,
8434 a-ngcefu.adb, a-ngcoty.adb, a-ngelfu.adb, a-nudira.adb,
8435 a-nudira.ads, a-nuflra.adb, a-nuflra.ads, a-reatim.adb,
8436 a-reatim.ads, a-retide.ads, a-sequio.adb, a-siocst.adb,
8437 a-siocst.ads, a-ssicst.adb, a-ssicst.ads, a-strbou.adb,
8438 a-strbou.ads, a-strfix.adb, a-strmap.adb, a-strsea.ads,
8439 a-strunb.adb, a-strunb.ads, a-ststio.adb, a-stunau.adb,
8440 a-stunau.ads, a-stwibo.adb, a-stwibo.ads, a-stwifi.adb,
8441 a-stwima.adb, a-stwiun.adb, a-stwiun.ads, a-tags.adb,
8442 a-tags.ads, a-tasatt.adb, a-taside.adb, a-teioed.adb,
8443 a-textio.adb, a-textio.ads, a-tienau.adb, a-tifiio.adb,
8444 a-tiflau.adb, a-tiflio.adb, a-tigeau.adb, a-tigeau.ads,
8445 a-tiinau.adb, a-timoau.adb, a-tiocst.adb, a-tiocst.ads,
8446 atree.adb, atree.ads, a-witeio.adb, a-witeio.ads,
8447 a-wtcstr.adb, a-wtcstr.ads, a-wtdeio.adb, a-wtedit.adb,
8448 a-wtenau.adb, a-wtflau.adb, a-wtinau.adb, a-wtmoau.adb,
8449 bcheck.adb, binde.adb, bindgen.adb, bindusg.adb,
8450 checks.adb, checks.ads, cio.c, comperr.adb,
8451 comperr.ads, csets.adb, cstand.adb, cstreams.c,
8452 debug_a.adb, debug_a.ads, debug.adb, decl.c,
8453 einfo.adb, einfo.ads, errout.adb, errout.ads,
8454 eval_fat.adb, eval_fat.ads, exp_aggr.adb, expander.adb,
8455 expander.ads, exp_attr.adb, exp_ch11.adb, exp_ch13.adb,
8456 exp_ch2.adb, exp_ch3.adb, exp_ch3.ads, exp_ch4.adb,
8457 exp_ch5.adb, exp_ch6.adb, exp_ch7.adb, exp_ch7.ads,
8458 exp_ch8.adb, exp_ch9.adb, exp_code.adb, exp_dbug.adb,
8459 exp_dbug.ads, exp_disp.adb, exp_dist.adb, expect.c,
8460 exp_fixd.adb, exp_imgv.adb, exp_intr.adb, exp_pakd.adb,
8461 exp_prag.adb, exp_strm.adb, exp_strm.ads, exp_tss.adb,
8462 exp_tss.ads, exp_util.adb, exp_util.ads, exp_vfpt.adb,
8463 fe.h, fmap.adb, fmap.ads, fname.adb,
8464 fname.ads, fname-uf.adb, fname-uf.ads, freeze.adb,
8465 freeze.ads, frontend.adb, g-awk.adb, g-awk.ads,
8466 g-busora.adb, g-busora.ads, g-busorg.adb, g-busorg.ads,
8467 g-casuti.adb, g-casuti.ads, g-catiio.adb, g-catiio.ads,
8468 g-cgi.adb, g-cgi.ads, g-cgicoo.adb, g-cgicoo.ads,
8469 g-cgideb.adb, g-cgideb.ads, g-comlin.adb, g-comlin.ads,
8470 g-crc32.adb, g-crc32.ads, g-debpoo.adb, g-debpoo.ads,
8471 g-debuti.adb, g-debuti.ads, g-diopit.adb, g-diopit.ads,
8472 g-dirope.adb, g-dirope.ads, g-dyntab.adb, g-dyntab.ads,
8473 g-except.ads, g-exctra.adb, g-exctra.ads, g-expect.adb,
8474 g-expect.ads, g-hesora.adb, g-hesora.ads, g-hesorg.adb,
8475 g-hesorg.ads, g-htable.adb, g-htable.ads, gigi.h,
8476 g-io.adb, g-io.ads, g-io_aux.adb, g-io_aux.ads,
8477 g-locfil.adb, g-locfil.ads, g-md5.adb, g-md5.ads,
8478 gmem.c, gnat1drv.adb, gnatbind.adb, gnatchop.adb,
8479 gnatcmd.adb, gnatfind.adb, gnatkr.adb, gnatlbr.adb,
8480 gnatlink.adb, gnatls.adb, gnatmake.adb, gnatmem.adb,
8481 gnatname.adb, gnatprep.adb, gnatprep.ads, gnatpsta.adb,
8482 gnatxref.adb, g-os_lib.adb, g-os_lib.ads, g-regexp.adb,
8483 g-regexp.ads, g-regist.adb, g-regist.ads, g-regpat.adb,
8484 g-regpat.ads, g-soccon.ads, g-socket.adb, g-socket.ads,
8485 g-socthi.adb, g-socthi.ads, g-soliop.ads, g-souinf.ads,
8486 g-speche.adb, g-speche.ads, g-spipat.adb, g-spipat.ads,
8487 g-spitbo.adb, g-spitbo.ads, g-sptabo.ads, g-sptain.ads,
8488 g-sptavs.ads, g-table.adb, g-table.ads, g-tasloc.adb,
8489 g-tasloc.ads, g-thread.adb, g-thread.ads, g-traceb.adb,
8490 g-traceb.ads, g-trasym.adb, g-trasym.ads, hostparm.ads,
8491 i-c.ads, i-cobol.adb, i-cpp.adb, i-cstrea.ads,
8492 i-cstrin.adb, i-cstrin.ads, impunit.adb, init.c,
8493 inline.adb, interfac.ads, i-pacdec.ads, itypes.adb,
8494 itypes.ads, i-vxwork.ads, lang.opt, lang-specs.h,
8495 layout.adb, lib.adb, lib.ads, lib-list.adb,
8496 lib-load.adb, lib-load.ads, lib-sort.adb, lib-util.adb,
8497 lib-writ.adb, lib-writ.ads, lib-xref.adb, lib-xref.ads,
8498 link.c, live.adb, make.adb, make.ads,
8499 Makefile.adalib, Makefile.in, Make-lang.in, makeusg.adb,
8500 mdll.adb, mdll-fil.adb, mdll-fil.ads, mdll-utl.adb,
8501 mdll-utl.ads, memroot.adb, memroot.ads, memtrack.adb,
8502 misc.c, mkdir.c, mlib.adb, mlib.ads,
8503 mlib-fil.adb, mlib-fil.ads, mlib-prj.adb, mlib-prj.ads,
8504 mlib-tgt.adb, mlib-tgt.ads, mlib-utl.adb, mlib-utl.ads,
8505 namet.adb, namet.ads, namet.h, nlists.ads,
8506 nlists.h, nmake.adt, opt.adb, opt.ads,
8507 osint.adb, osint.ads, osint-b.adb, osint-c.adb,
8508 par.adb, par-ch10.adb, par-ch11.adb, par-ch2.adb,
8509 par-ch3.adb, par-ch4.adb, par-ch5.adb, par-ch6.adb,
8510 par-ch9.adb, par-endh.adb, par-labl.adb, par-load.adb,
8511 par-prag.adb, par-sync.adb, par-tchk.adb, par-util.adb,
8512 prj.adb, prj.ads, prj-attr.adb, prj-attr.ads,
8513 prj-com.adb, prj-com.ads, prj-dect.adb, prj-dect.ads,
8514 prj-env.adb, prj-env.ads, prj-ext.adb, prj-ext.ads,
8515 prj-makr.adb, prj-makr.ads, prj-nmsc.adb, prj-nmsc.ads,
8516 prj-pars.adb, prj-pars.ads, prj-part.adb, prj-part.ads,
8517 prj-pp.adb, prj-pp.ads, prj-proc.adb, prj-proc.ads,
8518 prj-strt.adb, prj-strt.ads, prj-tree.adb, prj-tree.ads,
8519 prj-util.adb, prj-util.ads, raise.c, raise.h,
8520 repinfo.adb, repinfo.h, restrict.adb, restrict.ads,
8521 rident.ads, rtsfind.adb, rtsfind.ads, s-addima.ads,
8522 s-arit64.adb, s-assert.adb, s-assert.ads, s-atacco.adb,
8523 s-atacco.ads, s-auxdec.adb, s-auxdec.ads, s-bitops.adb,
8524 scans.ads, scn.adb, scn.ads, s-crc32.adb,
8525 s-crc32.ads, s-direio.adb, sem.adb, sem.ads,
8526 sem_aggr.adb, sem_attr.adb, sem_attr.ads, sem_case.adb,
8527 sem_case.ads, sem_cat.adb, sem_cat.ads, sem_ch10.adb,
8528 sem_ch11.adb, sem_ch12.adb, sem_ch12.ads, sem_ch13.adb,
8529 sem_ch13.ads, sem_ch3.adb, sem_ch3.ads, sem_ch4.adb,
8530 sem_ch5.adb, sem_ch5.ads, sem_ch6.adb, sem_ch6.ads,
8531 sem_ch7.adb, sem_ch7.ads, sem_ch8.adb, sem_ch8.ads,
8532 sem_ch9.adb, sem_disp.adb, sem_disp.ads, sem_dist.adb,
8533 sem_elab.adb, sem_eval.adb, sem_eval.ads, sem_intr.adb,
8534 sem_maps.adb, sem_mech.adb, sem_prag.adb, sem_prag.ads,
8535 sem_res.adb, sem_res.ads, sem_type.adb, sem_type.ads,
8536 sem_util.adb, sem_util.ads, sem_warn.adb, s-errrep.adb,
8537 s-errrep.ads, s-exctab.adb, s-exctab.ads, s-exnint.ads,
8538 s-exnllf.ads, s-exnlli.ads, s-expint.ads, s-explli.ads,
8539 s-expuns.ads, s-fatflt.ads, s-fatgen.adb, s-fatgen.ads,
8540 s-fatlfl.ads, s-fatllf.ads, s-fatsfl.ads, s-fileio.adb,
8541 s-fileio.ads, s-finimp.adb, s-finimp.ads, s-finroo.adb,
8542 s-finroo.ads, sfn_scan.adb, s-gloloc.adb, s-gloloc.ads,
8543 s-imgdec.adb, s-imgenu.adb, s-imgrea.adb, s-imgwch.adb,
8544 sinfo.adb, sinfo.ads, s-inmaop.ads, sinput.adb,
8545 sinput.ads, sinput-d.adb, sinput-l.adb, sinput-l.ads,
8546 sinput-p.adb, sinput-p.ads, s-interr.adb, s-interr.ads,
8547 s-intman.ads, s-maccod.ads, s-mastop.adb, s-mastop.ads,
8548 s-memory.adb, s-memory.ads, snames.adb, snames.ads,
8549 snames.h, s-osprim.ads, s-parame.ads, s-parint.ads,
8550 s-pooloc.adb, s-pooloc.ads, s-poosiz.adb, sprint.adb,
8551 s-proinf.ads, s-scaval.ads, s-secsta.adb, s-secsta.ads,
8552 s-sequio.adb, s-shasto.adb, s-shasto.ads, s-soflin.ads,
8553 s-stache.adb, s-stache.ads, s-stalib.adb, s-stalib.ads,
8554 s-stoele.ads, s-stopoo.ads, s-stratt.adb, s-stratt.ads,
8555 s-strops.adb, s-strops.ads, s-taasde.adb, s-taasde.ads,
8556 s-tadeca.adb, s-tadeca.ads, s-tadert.adb, s-tadert.ads,
8557 s-taenca.adb, s-taenca.ads, s-taprob.adb, s-taprob.ads,
8558 s-taprop.ads, s-tarest.adb, s-tarest.ads, s-tasdeb.adb,
8559 s-tasdeb.ads, s-tasinf.adb, s-tasinf.ads, s-tasini.adb,
8560 s-tasini.ads, s-taskin.adb, s-taskin.ads, s-tasque.adb,
8561 s-tasque.ads, s-tasren.adb, s-tasren.ads, s-tasres.ads,
8562 s-tassta.adb, s-tassta.ads, s-tasuti.adb, s-tasuti.ads,
8563 s-tataat.adb, s-tataat.ads, s-tpinop.adb, s-tpinop.ads,
8564 s-tpoben.adb, s-tpoben.ads, s-tpobop.adb, s-tpobop.ads,
8565 s-tposen.adb, s-tposen.ads, s-traceb.adb, s-traceb.ads,
8566 stringt.adb, stringt.ads, stringt.h, style.ads,
8567 stylesw.adb, stylesw.ads, s-unstyp.ads, s-vaflop.ads,
8568 s-valrea.adb, s-valuti.adb, s-vercon.adb, s-vmexta.adb,
8569 s-wchcnv.ads, s-wchcon.ads, s-widcha.adb, switch.adb,
8570 switch.ads, switch-b.adb, switch-c.adb, switch-m.adb,
8571 s-wwdcha.adb, s-wwdwch.adb, sysdep.c, system.ads,
8572 table.adb, table.ads, targparm.adb, targparm.ads,
8573 targtyps.c, tbuild.adb, tbuild.ads, tracebak.c,
8574 trans.c, tree_io.adb, treepr.adb, treeprs.adt,
8575 ttypes.ads, types.ads, types.h, uintp.adb,
8576 uintp.ads, uintp.h, uname.adb, urealp.adb,
8577 urealp.ads, urealp.h, usage.adb, utils2.c,
8578 utils.c, validsw.adb, validsw.ads, widechar.adb,
8579 xeinfo.adb, xnmake.adb, xref_lib.adb, xref_lib.ads,
8580 xr_tabls.adb, xr_tabls.ads, xtreeprs.adb, xsnames.adb,
8581 einfo.h, sinfo.h, treeprs.ads, nmake.ads, nmake.adb,
8582 gnatvsn.ads: Merge with ACT tree.
8583
8584 * gnatvsn.adb: Rewritten in a simpler and more efficient way.
8585
97ae108d
MM
85862003-10-20 Mark Mitchell <mark@codesourcery.com>
8587
de696511
MM
8588 * Make-lang.in (gnat_ug_unx.info): Add dependency on stmp-docobjdir.
8589 (gnat_ug_vmx.info): Likewise.
8590 (gnat_ug_vxw.info): Likewise.
8591 (gnat_ug_wnt.info): Likewise.
8592 (gnat_rm.info): Likewise.
8593 (gnat-style.info): Likewise.
8594
97ae108d
MM
8595 * Make-lang.in (ada.install-info): Remove target.
8596 (info): New target.
8597 (install-info): Likewise.
8598 (gnat_ug_unx.info): Simplify rule.
8599 (gnat_ug_vmx.info): Likewise.
8600 (gnat_ug_vxw.info): Likewise.
8601 (gnat_ug_wnt.info): Likewise.
8602 (gnat_rm.info): Likewise.
8603 (gnat-style.info): Likewise.
8604
43aba518
NN
86052003-10-14 Nathanael Nerode <neroden@gcc.gnu.org>
8606
8607 * Make-lang.in: Replace uses of $(target_alias) with
8608 $(target_noncanonical).
8609 * ada/Makefile.in: Remove unused mention of $(target_alias).
8610
62b81e45
MM
86112003-10-06 Mark Mitchell <mark@codesourcery.com>
8612
8613 * Make-lang.in (ada.info): Replace with ...
8614 (info): ... this.
8615 (ada.dvi): Replace with ...
8616 (dvi): ... this.
8617
783be936
ZW
86182003-09-29 Zack Weinberg <zack@codesourcery.com>
8619
8620 * trans.c (gigi): Use REAL_ARITHMETIC, not REAL_VALUE_ATOF, to
8621 initialize dconstp5 and dconstmp5.
8622
177560b2
RH
86232003-09-28 Richard Henderson <rth@redhat.com>
8624
8625 * trans.c (tree_transform): Update call to expand_asm_operands.
8626
f31686a3
RH
86272003-09-21 Richard Henderson <rth@redhat.com>
8628
8629 * trans.c, utils.c: Revert.
8630
7e2af53a
RH
86312003-09-21 Richard Henderson <rth@redhat.com>
8632
8633 * trans.c, utils.c: Update for DECL_SOURCE_LOCATION rename and
8634 change to const.
8635
5f1e32fa
MM
86362003-09-04 Michael Matz <matz@suse.de>
8637
8638 * misc.c: Include "target.h".
8639 * Make-lang.in (misc.o): Add dependency on target.h.
8640
61f71b34
DD
86412003-09-03 DJ Delorie <dj@redhat.com>
8642
8643 * misc.c (default_pass_by_ref): Convert to calls.return_in_memory
8644 hook.
8645
2ed26f6b
ZW
86462003-08-30 Zack Weinberg <zack@codesourcery.com>
8647
8648 * Makefile.in: Update substitutions to match changes to
8649 configure. Use include directives instead of @-insertions
8650 to read in host and target fragments. Add a rule to
8651 regenerate ada/Makefile.
8652
b2e608ca
NB
86532003-07-18 Neil Booth <neil@daikokuya.co.uk>
8654
8655 * lang-options.h: Remove.
8656 * lang.opt: Add help text.
8657
0cea056b
NS
86582003-07-07 Nathan Sidwell <nathan@codesourcery.com>
8659
8660 * trans.c (build_unit_elab, set_lineno): Adjust emit_line_note
8661 calls.
8662
cb66e385
NB
86632003-07-06 Neil Booth <neil@daikokuya.co.uk>
8664
8665 * misc.c (gnat_handle_option): Don't handle filenames.
8666
8c90b13a
L
86672003-07-04 H.J. Lu <hongjiu.lu@intel.com>
8668
8669 * Make-lang.in: Replace PWD with PWD_COMMAND.
8670 * Makefile.adalib: Likewise.
8671 * Makefile.in: Likewise.
8672
9c286213
MK
86732003-07-04 Matt Kraai <kraai@alumni.cmu.edu>
8674
8675 * misc.c (gnat_argv): Revert last change.
8676 (gnat_handle_option, gnat_init_options): Copy arguments.
8677
b9add449
NB
86782003-07-03 Neil Booth <neil@daikokuya.co.uk>
8679
9c286213 8680 * misc.c (gnat_argv): Make const.
b9add449 8681
836d77a9
NB
86822003-07-02 Neil Booth <neil@daikokuya.co.uk>
8683
8684 * misc.c (save_argc, save_argv): Keep non-static!
8685
b86f6cd9
NB
86862003-07-02 Neil Booth <neil@daikokuya.co.uk>
8687
8688 * misc.c (save_argc, save_argv): Make static.
8689 (gnat_init_options): New prototype.
8690 (gnat_init_options): Update.
8691
6344b1f1
MK
86922003-07-01 Matt Kraai <kraai@alumni.cmu.edu>
8693
8694 * gnat_ug.texi: Remove unlikely characters from @vars.
8695 * gnat_ug_vms.texi: Regenerate.
8696
2e040219
NS
86972003-06-27 Nathan Sidwell <nathan@codesourcery.com>
8698
8699 * misc.c (record_code_position): Adjust emit_note call.
8700
9eee5e72
NB
87012003-06-26 Neil Booth <neil@daikokuya.co.uk>
8702
8703 * misc.c (gnat_handle_option): Don't check for missing arguments.
8704
1f9cc6db
NS
87052003-06-20 Nathan Sidwell <nathan@codesourcery.com>
8706
8707 * utils.c (end_subprog_body): Adjust expand_function_end call.
8708
23d6baa3
MK
87092003-06-16 Matt Kraai <kraai@alumni.cmu.edu>
8710
8711 * bindgen.adb (Gen_Main_Ada, Gen_Main_C): Do not test
8712 Bind_Main_Program.
8713
be43ab4e
NB
87142003-06-15 Neil Booth <neil@daikokuya.co.uk>
8715
8716 * lang.opt: Declare Ada.
8717 * misc.c (gnat_init_options): Update.
8718
ee6b0296
NS
87192003-06-14 Nathan Sidwell <nathan@codesourcery.com>
8720
8721 * utils.c (begin_subprog_body): Adjust init_function_start call.
8722
d7b42618
NB
87232003-06-14 Neil Booth <neil@daikokuya.co.uk>
8724
8725 * Make-lang.in: Update to use options.c and options.h.
8726 * misc.c: Include options.h not aoptions.h.
8727 (gnat_handle_option): Abort on unrecognized switch.
8728 (gnat_init_options): Request Ada switches.
8729
57eb6503
NB
87302003-06-14 Neil Booth <neil@daikokuya.co.uk>
8731
8732 * lang.opt: Add -Wall.
8733 * misc.c (gnat_handle_option): Handle it.
8734
70fd6569
NB
87352003-06-12 Neil Booth <neil@daikokuya.co.uk>
8736
8737 * misc.c (gnat_handle_option): Fix warnings.
8738
8cdea5a1
MK
87392003-06-11 Matt Kraai <kraai@alumni.cmu.edu>
8740
8741 * Make-lang.in (gnatbind): Remove $(LIBIBERTY).
8742
3c900cb5
NB
87432003-06-11 Neil Booth <neil@daikokuya.co.uk>
8744
8745 * Make-lang.in: Update to handle command-line options.
8746 * lang.opt: New file.
8747 * misc.c: Include aoptions.h.
8748 (cl_options_count, cl_options): Remove.
8749 (gnat_handle_option): New.
8750 (gnat_decode_option): Remove.
8751 (LANG_HOOKS_DECODE_OPTION): Remove.
8752 (LANG_HOOKS_HANDLE_OPTION): Override.
8753
e8face4c
NN
87542003-06-10 Nathanael Nerode <neroden@gcc.gnu.org>
8755
8756 * init.c, misc.c, trans.c, utils.c: Remove dead code.
8757
4665e56c
NN
87582003-06-09 Nathanael Nerode <neroden@gcc.gnu.org>
8759
8760 * Makefile.in: Replace "host_canonical" with "host" for autoconf
8761 substitution.
8762
a165c302
NB
87632003-06-08 Neil Booth <neil@daikokuya.co.uk>
8764
8765 * Make-lang.in: Update.
8766 * misc.c: Include opts.h. Define cl_options_count and cl_options.
8767
2772ef3e
NB
87682003-06-07 Neil Booth <neil@daikokuya.co.uk>
8769
8770 * misc.c (gnat_init_options): Update.
8771
d8277a55
MK
87722003-06-05 Matt Kraai <kraai@alumni.cmu.edu>
8773
8774 * Make-lang.in (ada/b_gnatb.o-warn): Remove.
8775 * bindgen.adb (Gen_Main_C): Mark ensure_reference with
8776 __attribute__ ((__unused__)).
8777
602a82f3 87782003-06-05 Jan Hubicka <jh@suse.cz>
8f231b5d
JH
8779
8780 * Make-lang.in: Add support for stageprofile and stagefeedback
8781
3aa07c6d
MK
87822003-06-05 Matt Kraai <kraai@alumni.cmu.edu>
8783
8784 * bindgen.adb (Gen_Adafinal_C, Gen_Adainit_C, Gen_Elab_Defs_C)
8785 (Gen_Main_C, Gen_Output_File_C): Generate ISO C.
8786
f1093866
MK
87872003-06-04 Matt Kraai <kraai@alumni.cmu.edu>
8788
8789 * gnat_ug.texi (The GNAT Run-Time Library Builder gnatlbr):
8790 Remove non-VMS directive.
8791 (Switches for gnatlbr, Optimization Levels): Remove non-VMS
8792 alternatives.
8793 (Examples of gnatls Usage): Remove VMS alternative.
dee2df72
OH
8794
87952003-06-04 Olivier Hainque <hainque@act-europe.fr>
8796
2ed26f6b
ZW
8797 PR ada/9953:
8798 * 5hsystem.ads: Remove pragma Linker_Option for pthreads library,
8799 and turn ZCX_By_Default back to False since the underlying support
8800 is not quite there yet.
dee2df72 8801
80eaf415
AJ
88022003-06-01 Andreas Jaeger <aj@suse.de>
8803
8804 * utils.c (finish_record_type): Remove usages of ROUND_TYPE_SIZE
8805 and ROUND_TYPE_SIZE_UNIT.
8806
36f9020c
GB
88072003-05-22 Geert Bosch <bosch@gnat.com>
8808
8809 * gnat_rm.texi : Remove reference to Ada Core Technologies.
8810
e7b5f0c9
NS
88112003-05-03 Nathan Sidwell <nathan@codesourcery.com>
8812
8813 * trans.c (tree_transform): Use location_t and input_location
8814 directly.
8815 (build_unit_elab): Likewise.
8816 * utils.c (create_label_decl): Likewise.
8817
d479d37f
NS
88182003-05-01 Nathan Sidwell <nathan@codesourcery.com>
8819
561712fe
NS
8820 * trans.c (tree_transform, build_unit_elab,
8821 set_lineno): Rename lineno to input_line.
d479d37f
NS
8822 * utils.c (pushdecl, create_label_decl, begin_subprog_body,
8823 end_subprog_body): Likewise.
8824 * utils2.c (build_call_raise): Likewise.
8825
4f9335cd
LG
88262003-05-01 Laurent Guerby <guerby@acm.org>
8827
2ed26f6b
ZW
8828 PR ada/10546
8829 * 5iosinte.ads: Increase pthread_cond_t size to match recent
8830 LinuxThread and NPTL version, merge from ACT.
80eaf415 8831
0864034e
ZW
88322003-04-28 Zack Weinberg <zack@codesourcery.com>
8833
8834 * utils.c (convert): No need to clear TREE_CST_RTL.
8835
bcea76b6
GB
88362003-04-23 Geert Bosch <bosch@gnat.com>
8837
8838 * 1aexcept.adb, 1aexcept.ads, 1ic.ads, 1ssecsta.adb,
8839 1ssecsta.ads, 31soccon.ads, 31soliop.ads, 3asoccon.ads,
8840 3bsoccon.ads, 3gsoccon.ads, 3hsoccon.ads, 3ssoccon.ads,
8841 3ssoliop.ads, 3wsoccon.ads, 3wsocthi.adb, 3wsocthi.ads,
8842 3wsoliop.ads, 41intnam.ads, 42intnam.ads, 4aintnam.ads,
8843 4cintnam.ads, 4dintnam.ads, 4gintnam.ads, 4hexcpol.adb,
8844 4hintnam.ads, 4lintnam.ads, 4mintnam.ads, 4nintnam.ads,
8845 4ointnam.ads, 4onumaux.ads, 4pintnam.ads, 4rintnam.ads,
8846 4sintnam.ads, 4uintnam.ads, 4vcaldel.adb, 4vcalend.adb,
8847 4vcalend.ads, 4vintnam.ads, 4wcalend.adb, 4wexcpol.adb,
8848 4wintnam.ads, 4zintnam.ads, 4znumaux.ads, 4zsytaco.adb,
8849 4zsytaco.ads, 51osinte.adb, 51osinte.ads, 52osinte.adb,
8850 52osinte.ads, 52system.ads, 53osinte.ads, 54osinte.ads,
8851 5amastop.adb, 5aosinte.adb, 5aosinte.ads, 5asystem.ads,
8852 5ataprop.adb, 5atasinf.ads, 5ataspri.ads, 5atpopsp.adb,
8853 5avxwork.ads, 5bosinte.adb, 5bosinte.ads, 5bsystem.ads,
8854 5cosinte.ads, 5dosinte.ads, 5esystem.ads, 5etpopse.adb,
8855 5fintman.adb, 5fosinte.ads, 5fsystem.ads, 5ftaprop.adb,
8856 5ftasinf.ads, 5ginterr.adb, 5gintman.adb, 5gmastop.adb,
8857 5gosinte.ads, 5gproinf.adb, 5gproinf.ads, 5gsystem.ads,
8858 5gtaprop.adb, 5gtasinf.adb, 5gtasinf.ads, 5gtpgetc.adb,
8859 5hosinte.adb, 5hosinte.ads, 5hparame.ads, 5hsystem.ads,
8860 5htaprop.adb, 5htaspri.ads, 5htraceb.adb, 5iosinte.adb,
8861 5iosinte.ads, 5itaprop.adb, 5itaspri.ads, 5ksystem.ads,
8862 5kvxwork.ads, 5lintman.adb, 5lml-tgt.adb, 5losinte.ads,
8863 5lsystem.ads, 5mosinte.ads, 5mvxwork.ads, 5ninmaop.adb,
8864 5nintman.adb, 5nosinte.ads, 5ntaprop.adb, 5ntaspri.ads,
8865 5ointerr.adb, 5omastop.adb, 5oosinte.adb, 5oosinte.ads,
8866 5oosprim.adb, 5oparame.adb, 5osystem.ads, 5otaprop.adb,
8867 5otaspri.ads, 5posinte.ads, 5posprim.adb, 5pvxwork.ads,
8868 5qosinte.adb, 5qosinte.ads, 5qstache.adb, 5qtaprop.adb,
8869 5qtaspri.ads, 5rosinte.adb, 5rosinte.ads, 5rparame.adb,
8870 5sintman.adb, 5sosinte.adb, 5sosinte.ads, 5sparame.adb,
8871 5ssystem.ads, 5staprop.adb, 5stasinf.adb, 5stasinf.ads,
8872 5staspri.ads, 5stpopse.adb, 5svxwork.ads, 5tosinte.ads,
8873 5uintman.adb, 5uosinte.ads, 5vasthan.adb, 5vinmaop.adb,
8874 5vinterr.adb, 5vintman.adb, 5vintman.ads, 5vmastop.adb,
8875 5vosinte.adb, 5vosinte.ads, 5vosprim.adb, 5vosprim.ads,
8876 5vparame.ads, 5vsystem.ads, 5vtaprop.adb, 5vtaspri.ads,
8877 5vtpopde.adb, 5vtpopde.ads, 5vvaflop.adb, 5wgloloc.adb,
8878 5wintman.adb, 5wmemory.adb, 5wosinte.ads, 5wosprim.adb,
8879 5wsystem.ads, 5wtaprop.adb, 5wtaspri.ads, 5ysystem.ads,
8880 5zinterr.adb, 5zintman.adb, 5zosinte.adb, 5zosinte.ads,
8881 5zosprim.adb, 5zsystem.ads, 5ztaprop.adb, 6vcpp.adb,
8882 6vcstrea.adb, 6vinterf.ads, 7sinmaop.adb, 7sintman.adb,
8883 7sosinte.adb, 7sosprim.adb, 7staprop.adb, 7staspri.ads,
8884 7stpopsp.adb, 7straceb.adb, 86numaux.adb, 86numaux.ads,
8885 9drpc.adb, a-astaco.adb, a-astaco.ads, a-caldel.adb,
8886 a-caldel.ads, a-calend.adb, a-calend.ads, a-chahan.adb,
8887 a-chahan.ads, a-charac.ads, a-chlat1.ads, a-chlat9.ads,
8888 a-colien.adb, a-colien.ads, a-colire.adb, a-colire.ads,
8889 a-comlin.adb, a-comlin.ads, a-cwila1.ads, a-cwila9.ads,
8890 a-decima.adb, a-decima.ads, a-diocst.adb, a-diocst.ads,
8891 a-direio.adb, a-direio.ads, a-dynpri.adb, a-dynpri.ads,
8892 a-einuoc.adb, a-einuoc.ads, a-except.adb, a-except.ads,
8893 a-excpol.adb, a-exctra.adb, a-exctra.ads, a-filico.adb,
8894 a-filico.ads, a-finali.adb, a-finali.ads, a-flteio.ads,
8895 a-fwteio.ads, a-inteio.ads, a-interr.adb, a-interr.ads,
8896 a-intnam.ads, a-intsig.adb, a-intsig.ads, a-ioexce.ads,
8897 a-iwteio.ads, a-lfteio.ads, a-lfwtio.ads, a-liteio.ads,
8898 a-liwtio.ads, a-llftio.ads, a-llfwti.ads, a-llitio.ads,
8899 a-lliwti.ads, a-ncelfu.ads, a-ngcefu.adb, a-ngcefu.ads,
8900 a-ngcoty.adb, a-ngcoty.ads, a-ngelfu.adb, a-ngelfu.ads,
8901 a-nlcefu.ads, a-nlcoty.ads, a-nlelfu.ads, a-nllcef.ads,
8902 a-nllcty.ads, a-nllefu.ads, a-nscefu.ads, a-nscoty.ads,
8903 a-nselfu.ads, a-nucoty.ads, a-nudira.adb, a-nudira.ads,
8904 a-nuelfu.ads, a-nuflra.adb, a-nuflra.ads, a-numaux.ads,
8905 a-numeri.ads, a-reatim.adb, a-reatim.ads, a-retide.adb,
8906 a-retide.ads, a-sequio.adb, a-sequio.ads, a-sfteio.ads,
8907 a-sfwtio.ads, a-siocst.adb, a-siocst.ads, a-siteio.ads,
8908 a-siwtio.ads, a-ssicst.adb, a-ssicst.ads, a-ssitio.ads,
8909 a-ssiwti.ads, a-stmaco.ads, a-storio.adb, a-storio.ads,
8910 a-strbou.adb, a-strbou.ads, a-stream.ads, a-strfix.adb,
8911 a-strfix.ads, a-string.ads, a-strmap.adb, a-strmap.ads,
8912 a-strsea.adb, a-strsea.ads, a-strunb.adb, a-strunb.ads,
8913 a-ststio.adb, a-ststio.ads, a-stunau.adb, a-stunau.ads,
8914 a-stwibo.adb, a-stwibo.ads, a-stwifi.adb, a-stwifi.ads,
8915 a-stwima.adb, a-stwima.ads, a-stwise.adb, a-stwise.ads,
8916 a-stwiun.adb, a-stwiun.ads, a-suteio.adb, a-suteio.ads,
8917 a-swmwco.ads, a-swuwti.adb, a-swuwti.ads, a-sytaco.adb,
8918 a-sytaco.ads, a-tags.adb, a-tags.ads, a-tasatt.adb,
8919 a-tasatt.ads, a-taside.adb, a-taside.ads, a-teioed.adb,
8920 a-teioed.ads, a-textio.adb, a-textio.ads, a-ticoau.adb,
8921 a-ticoau.ads, a-ticoio.adb, a-ticoio.ads, a-tideau.adb,
8922 a-tideau.ads, a-tideio.adb, a-tideio.ads, a-tienau.adb,
8923 a-tienau.ads, a-tienio.adb, a-tienio.ads, a-tifiio.adb,
8924 a-tifiio.ads, a-tiflau.adb, a-tiflau.ads, a-tiflio.adb,
8925 a-tiflio.ads, a-tigeau.adb, a-tigeau.ads, a-tiinau.adb,
8926 a-tiinau.ads, a-tiinio.adb, a-tiinio.ads, a-timoau.adb,
8927 a-timoau.ads, a-timoio.adb, a-timoio.ads, a-tiocst.adb,
8928 a-tiocst.ads, a-titest.adb, a-titest.ads, a-unccon.ads,
8929 a-uncdea.ads, a-witeio.adb, a-witeio.ads, a-wtcoau.adb,
8930 a-wtcoau.ads, a-wtcoio.adb, a-wtcoio.ads, a-wtcstr.adb,
8931 a-wtcstr.ads, a-wtdeau.adb, a-wtdeau.ads, a-wtdeio.adb,
8932 a-wtdeio.ads, a-wtedit.adb, a-wtedit.ads, a-wtenau.adb,
8933 a-wtenau.ads, a-wtenio.adb, a-wtenio.ads, a-wtfiio.adb,
8934 a-wtfiio.ads, a-wtflau.adb, a-wtflau.ads, a-wtflio.adb,
8935 a-wtflio.ads, a-wtgeau.adb, a-wtgeau.ads, a-wtinau.adb,
8936 a-wtinau.ads, a-wtinio.adb, a-wtinio.ads, a-wtmoau.adb,
8937 a-wtmoau.ads, a-wtmoio.adb, a-wtmoio.ads, a-wttest.adb,
8938 a-wttest.ads, ada-tree.h, ada.ads, ada.h,
8939 adadecode.c, adadecode.h, ali-util.adb, ali-util.ads,
8940 ali.adb, ali.ads, alloc.ads, argv.c,
8941 atree.adb, atree.ads, atree.h, aux-io.c,
8942 back_end.adb, back_end.ads, bcheck.adb, bcheck.ads,
8943 binde.adb, binde.ads, binderr.adb, binderr.ads,
8944 bindgen.adb, bindgen.ads, bindusg.adb, bindusg.ads,
8945 butil.adb, butil.ads, cal.c, calendar.ads,
8946 casing.adb, casing.ads, ceinfo.adb, checks.adb,
8947 checks.ads, cio.c, comperr.adb, comperr.ads,
8948 config-lang.in, csets.adb, csets.ads, csinfo.adb,
8949 cstand.adb, cstand.ads, cuintp.c, debug.adb,
8950 debug.ads, debug_a.adb, debug_a.ads, dec-io.adb,
8951 dec-io.ads, dec.ads, deftarg.c, directio.ads,
8952 einfo.adb, einfo.ads, elists.adb, elists.ads,
8953 elists.h, errno.c, errout.adb, errout.ads,
8954 eval_fat.adb, eval_fat.ads, exit.c, exp_aggr.adb,
8955 exp_aggr.ads, exp_attr.adb, exp_attr.ads, exp_ch10.ads,
8956 exp_ch11.adb, exp_ch11.ads, exp_ch12.adb, exp_ch12.ads,
8957 exp_ch13.adb, exp_ch13.ads, exp_ch2.adb, exp_ch2.ads,
8958 exp_ch3.adb, exp_ch3.ads, exp_ch4.adb, exp_ch4.ads,
8959 exp_ch5.adb, exp_ch5.ads, exp_ch6.adb, exp_ch6.ads,
8960 exp_ch7.adb, exp_ch7.ads, exp_ch8.adb, exp_ch8.ads,
8961 exp_ch9.adb, exp_ch9.ads, exp_code.adb, exp_code.ads,
8962 exp_dbug.adb, exp_dbug.ads, exp_disp.adb, exp_disp.ads,
8963 exp_dist.adb, exp_dist.ads, exp_fixd.adb, exp_fixd.ads,
8964 exp_imgv.adb, exp_imgv.ads, exp_intr.adb, exp_intr.ads,
8965 exp_pakd.adb, exp_pakd.ads, exp_prag.adb, exp_prag.ads,
8966 exp_smem.adb, exp_smem.ads, exp_strm.adb, exp_strm.ads,
8967 exp_tss.adb, exp_tss.ads, exp_util.adb, exp_util.ads,
8968 exp_vfpt.adb, exp_vfpt.ads, expander.adb, expander.ads,
8969 fmap.adb, fmap.ads, fname-sf.adb, fname-sf.ads,
8970 fname-uf.adb, fname-uf.ads, fname.adb, fname.ads,
8971 freeze.adb, freeze.ads, frontend.adb, frontend.ads,
8972 g-awk.adb, g-awk.ads, g-busora.adb, g-busora.ads,
8973 g-busorg.adb, g-busorg.ads, g-calend.adb, g-calend.ads,
8974 g-casuti.adb, g-casuti.ads, g-catiio.adb, g-catiio.ads,
8975 g-cgi.adb, g-cgi.ads, g-cgicoo.adb, g-cgicoo.ads,
8976 g-cgideb.adb, g-cgideb.ads, g-comlin.adb, g-comlin.ads,
8977 g-crc32.adb, g-crc32.ads, g-curexc.ads, g-debpoo.adb,
8978 g-debpoo.ads, g-debuti.adb, g-debuti.ads, g-diopit.adb,
8979 g-diopit.ads, g-dirope.adb, g-dirope.ads, g-dyntab.adb,
8980 g-dyntab.ads, g-enblsp.adb, g-except.ads, g-exctra.adb,
8981 g-exctra.ads, g-expect.adb, g-expect.ads, g-flocon.ads,
8982 g-hesora.adb, g-hesora.ads, g-hesorg.adb, g-hesorg.ads,
8983 g-htable.adb, g-htable.ads, g-io.adb, g-io.ads,
8984 g-io_aux.adb, g-io_aux.ads, g-locfil.ads, g-md5.adb,
8985 g-md5.ads, g-moreex.adb, g-moreex.ads, g-os_lib.adb,
8986 g-os_lib.ads, g-regexp.adb, g-regexp.ads, g-regist.ads,
8987 g-regpat.adb, g-regpat.ads, g-soccon.ads, g-socket.adb,
8988 g-socket.ads, g-socthi.adb, g-socthi.ads, g-soliop.ads,
8989 g-souinf.ads, g-speche.adb, g-speche.ads, g-spipat.adb,
8990 g-spipat.ads, g-spitbo.adb, g-spitbo.ads, g-sptabo.ads,
8991 g-sptain.ads, g-sptavs.ads, g-table.adb, g-table.ads,
8992 g-tasloc.adb, g-tasloc.ads, g-thread.adb, g-thread.ads,
8993 g-traceb.adb, g-traceb.ads, g-trasym.adb, g-trasym.ads,
8994 get_targ.adb, get_targ.ads, gnat-style.texi, gnat.ads,
8995 gnat1drv.adb, gnat1drv.ads, gnatbind.adb, gnatbind.ads,
8996 gnatbl.c, gnatchop.adb, gnatcmd.adb, gnatcmd.ads,
8997 gnatdll.adb, gnatfind.adb, gnatkr.adb, gnatkr.ads,
8998 gnatlbr.adb, gnatlink.adb, gnatlink.ads, gnatls.adb,
8999 gnatls.ads, gnatmake.adb, gnatmake.ads, gnatmem.adb,
9000 gnatname.adb, gnatname.ads, gnatprep.adb, gnatprep.ads,
9001 gnatpsta.adb, gnatvsn.adb, gnatvsn.ads, gnatxref.adb,
9002 hlo.adb, hlo.ads, hostparm.ads, i-c.adb,
9003 i-c.ads, i-cexten.ads, i-cobol.adb, i-cobol.ads,
9004 i-cpoint.adb, i-cpoint.ads, i-cpp.adb, i-cpp.ads,
9005 i-cstrea.adb, i-cstrea.ads, i-cstrin.adb, i-cstrin.ads,
9006 i-fortra.adb, i-fortra.ads, i-os2err.ads, i-os2lib.adb,
9007 i-os2lib.ads, i-os2syn.ads, i-os2thr.ads, i-pacdec.adb,
9008 i-pacdec.ads, i-vxwork.ads, impunit.adb, impunit.ads,
9009 inline.adb, inline.ads, interfac.ads, ioexcept.ads,
9010 itypes.adb, itypes.ads, krunch.adb, krunch.ads,
9011 layout.adb, layout.ads, lib-list.adb, lib-load.adb,
9012 lib-load.ads, lib-sort.adb, lib-util.adb, lib-util.ads,
9013 lib-writ.adb, lib-writ.ads, lib-xref.adb, lib-xref.ads,
9014 lib.adb, lib.ads, live.adb, live.ads,
9015 machcode.ads, make.adb, make.ads, makeusg.adb,
9016 makeusg.ads, math_lib.adb, mdll-fil.adb, mdll-fil.ads,
9017 mdll-utl.adb, mdll-utl.ads, mdll.adb, mdll.ads,
9018 memroot.adb, memroot.ads, memtrack.adb, mlib-fil.adb,
9019 mlib-fil.ads, mlib-prj.adb, mlib-prj.ads, mlib-tgt.adb,
9020 mlib-tgt.ads, mlib-utl.adb, mlib-utl.ads, mlib.adb,
9021 mlib.ads, namet.adb, namet.ads, nlists.adb,
9022 nlists.ads, opt.adb, opt.ads, osint-b.adb,
9023 osint-b.ads, osint-c.adb, osint-c.ads, osint-l.adb,
9024 osint-l.ads, osint-m.adb, osint-m.ads, osint.adb,
9025 osint.ads, output.adb, output.ads, par-ch10.adb,
9026 par-ch11.adb, par-ch12.adb, par-ch13.adb, par-ch2.adb,
9027 par-ch3.adb, par-ch4.adb, par-ch5.adb, par-ch6.adb,
9028 par-ch7.adb, par-ch8.adb, par-ch9.adb, par-endh.adb,
9029 par-labl.adb, par-load.adb, par-prag.adb, par-sync.adb,
9030 par-tchk.adb, par-util.adb, par.adb, par.ads,
9031 prj-attr.adb, prj-attr.ads, prj-com.adb, prj-com.ads,
9032 prj-dect.adb, prj-dect.ads, prj-env.adb, prj-env.ads,
9033 prj-ext.adb, prj-ext.ads, prj-makr.adb, prj-makr.ads,
9034 prj-nmsc.adb, prj-nmsc.ads, prj-pars.adb, prj-pars.ads,
9035 prj-part.adb, prj-part.ads, prj-pp.adb, prj-pp.ads,
9036 prj-proc.adb, prj-proc.ads, prj-strt.adb, prj-strt.ads,
9037 prj-tree.adb, prj-tree.ads, prj-util.adb, prj-util.ads,
9038 prj.adb, prj.ads, repinfo.adb, repinfo.ads,
9039 restrict.adb, restrict.ads, rident.ads, rtsfind.adb,
9040 rtsfind.ads, s-addima.adb, s-addima.ads, s-arit64.adb,
9041 s-arit64.ads, s-assert.adb, s-assert.ads, s-asthan.adb,
9042 s-asthan.ads, s-atacco.adb, s-atacco.ads, s-auxdec.adb,
9043 s-auxdec.ads, s-bitops.adb, s-bitops.ads, s-chepoo.ads,
9044 s-crc32.adb, s-crc32.ads, s-direio.adb, s-direio.ads,
9045 s-errrep.adb, s-errrep.ads, s-except.ads, s-exctab.adb,
9046 s-exctab.ads, s-exnflt.ads, s-exngen.adb, s-exngen.ads,
9047 s-exnint.ads, s-exnlfl.ads, s-exnlin.ads, s-exnllf.ads,
9048 s-exnlli.ads, s-exnsfl.ads, s-exnsin.ads, s-exnssi.ads,
9049 s-expflt.ads, s-expgen.adb, s-expgen.ads, s-expint.ads,
9050 s-explfl.ads, s-explin.ads, s-expllf.ads, s-explli.ads,
9051 s-expllu.adb, s-expllu.ads, s-expmod.adb, s-expmod.ads,
9052 s-expsfl.ads, s-expsin.ads, s-expssi.ads, s-expuns.adb,
9053 s-expuns.ads, s-fatflt.ads, s-fatgen.adb, s-fatgen.ads,
9054 s-fatlfl.ads, s-fatllf.ads, s-fatsfl.ads, s-ficobl.ads,
9055 s-fileio.adb, s-fileio.ads, s-finimp.adb, s-finimp.ads,
9056 s-finroo.adb, s-finroo.ads, s-fore.adb, s-fore.ads,
9057 s-gloloc.adb, s-gloloc.ads, s-imgbiu.adb, s-imgbiu.ads,
9058 s-imgboo.adb, s-imgboo.ads, s-imgcha.adb, s-imgcha.ads,
9059 s-imgdec.adb, s-imgdec.ads, s-imgenu.adb, s-imgenu.ads,
9060 s-imgint.adb, s-imgint.ads, s-imgllb.adb, s-imgllb.ads,
9061 s-imglld.adb, s-imglld.ads, s-imglli.adb, s-imglli.ads,
9062 s-imgllu.adb, s-imgllu.ads, s-imgllw.adb, s-imgllw.ads,
9063 s-imgrea.adb, s-imgrea.ads, s-imguns.adb, s-imguns.ads,
9064 s-imgwch.adb, s-imgwch.ads, s-imgwiu.adb, s-imgwiu.ads,
9065 s-inmaop.ads, s-interr.adb, s-interr.ads, s-intman.ads,
9066 s-io.adb, s-io.ads, s-maccod.ads, s-mantis.adb,
9067 s-mantis.ads, s-mastop.adb, s-mastop.ads, s-memory.adb,
9068 s-memory.ads, s-osprim.ads, s-pack03.adb, s-pack03.ads,
9069 s-pack05.adb, s-pack05.ads, s-pack06.adb, s-pack06.ads,
9070 s-pack07.adb, s-pack07.ads, s-pack09.adb, s-pack09.ads,
9071 s-pack10.adb, s-pack10.ads, s-pack11.adb, s-pack11.ads,
9072 s-pack12.adb, s-pack12.ads, s-pack13.adb, s-pack13.ads,
9073 s-pack14.adb, s-pack14.ads, s-pack15.adb, s-pack15.ads,
9074 s-pack17.adb, s-pack17.ads, s-pack18.adb, s-pack18.ads,
9075 s-pack19.adb, s-pack19.ads, s-pack20.adb, s-pack20.ads,
9076 s-pack21.adb, s-pack21.ads, s-pack22.adb, s-pack22.ads,
9077 s-pack23.adb, s-pack23.ads, s-pack24.adb, s-pack24.ads,
9078 s-pack25.adb, s-pack25.ads, s-pack26.adb, s-pack26.ads,
9079 s-pack27.adb, s-pack27.ads, s-pack28.adb, s-pack28.ads,
9080 s-pack29.adb, s-pack29.ads, s-pack30.adb, s-pack30.ads,
9081 s-pack31.adb, s-pack31.ads, s-pack33.adb, s-pack33.ads,
9082 s-pack34.adb, s-pack34.ads, s-pack35.adb, s-pack35.ads,
9083 s-pack36.adb, s-pack36.ads, s-pack37.adb, s-pack37.ads,
9084 s-pack38.adb, s-pack38.ads, s-pack39.adb, s-pack39.ads,
9085 s-pack40.adb, s-pack40.ads, s-pack41.adb, s-pack41.ads,
9086 s-pack42.adb, s-pack42.ads, s-pack43.adb, s-pack43.ads,
9087 s-pack44.adb, s-pack44.ads, s-pack45.adb, s-pack45.ads,
9088 s-pack46.adb, s-pack46.ads, s-pack47.adb, s-pack47.ads,
9089 s-pack48.adb, s-pack48.ads, s-pack49.adb, s-pack49.ads,
9090 s-pack50.adb, s-pack50.ads, s-pack51.adb, s-pack51.ads,
9091 s-pack52.adb, s-pack52.ads, s-pack53.adb, s-pack53.ads,
9092 s-pack54.adb, s-pack54.ads, s-pack55.adb, s-pack55.ads,
9093 s-pack56.adb, s-pack56.ads, s-pack57.adb, s-pack57.ads,
9094 s-pack58.adb, s-pack58.ads, s-pack59.adb, s-pack59.ads,
9095 s-pack60.adb, s-pack60.ads, s-pack61.adb, s-pack61.ads,
9096 s-pack62.adb, s-pack62.ads, s-pack63.adb, s-pack63.ads,
9097 s-parame.adb, s-parame.ads, s-parint.adb, s-parint.ads,
9098 s-pooglo.adb, s-pooglo.ads, s-pooloc.adb, s-pooloc.ads,
9099 s-poosiz.adb, s-poosiz.ads, s-powtab.ads, s-proinf.adb,
9100 s-proinf.ads, s-rpc.adb, s-rpc.ads, s-scaval.ads,
9101 s-secsta.adb, s-secsta.ads, s-sequio.adb, s-sequio.ads,
9102 s-shasto.adb, s-shasto.ads, s-soflin.adb, s-soflin.ads,
9103 s-sopco3.adb, s-sopco3.ads, s-sopco4.adb, s-sopco4.ads,
9104 s-sopco5.adb, s-sopco5.ads, s-stache.adb, s-stache.ads,
9105 s-stalib.adb, s-stalib.ads, s-stoele.adb, s-stoele.ads,
9106 s-stopoo.ads, s-stratt.adb, s-stratt.ads, s-strops.adb,
9107 s-strops.ads, s-taasde.adb, s-taasde.ads, s-tadeca.adb,
9108 s-tadeca.ads, s-tadert.adb, s-tadert.ads, s-taenca.adb,
9109 s-taenca.ads, s-taprob.adb, s-taprob.ads, s-taprop.ads,
9110 s-tarest.adb, s-tarest.ads, s-tasdeb.adb, s-tasdeb.ads,
9111 s-tasinf.adb, s-tasinf.ads, s-tasini.adb, s-tasini.ads,
9112 s-taskin.adb, s-taskin.ads, s-tasque.adb, s-tasque.ads,
9113 s-tasren.adb, s-tasren.ads, s-tasres.ads, s-tassta.adb,
9114 s-tassta.ads, s-tasuti.adb, s-tasuti.ads, s-tataat.adb,
9115 s-tataat.ads, s-tpinop.adb, s-tpinop.ads, s-tpoben.adb,
9116 s-tpoben.ads, s-tpobop.adb, s-tpobop.ads, s-tposen.adb,
9117 s-tposen.ads, s-traceb.adb, s-traceb.ads, s-traces.adb,
9118 s-traces.ads, s-tratas.adb, s-tratas.ads, s-unstyp.ads,
9119 s-vaflop.adb, s-vaflop.ads, s-valboo.adb, s-valboo.ads,
9120 s-valcha.adb, s-valcha.ads, s-valdec.adb, s-valdec.ads,
9121 s-valenu.adb, s-valenu.ads, s-valint.adb, s-valint.ads,
9122 s-vallld.adb, s-vallld.ads, s-vallli.adb, s-vallli.ads,
9123 s-valllu.adb, s-valllu.ads, s-valrea.adb, s-valrea.ads,
9124 s-valuns.adb, s-valuns.ads, s-valuti.adb, s-valuti.ads,
9125 s-valwch.adb, s-valwch.ads, s-vercon.adb, s-vercon.ads,
9126 s-vmexta.adb, s-vmexta.ads, s-wchcnv.adb, s-wchcnv.ads,
9127 s-wchcon.ads, s-wchjis.adb, s-wchjis.ads, s-wchstw.adb,
9128 s-wchstw.ads, s-wchwts.adb, s-wchwts.ads, s-widboo.adb,
9129 s-widboo.ads, s-widcha.adb, s-widcha.ads, s-widenu.adb,
9130 s-widenu.ads, s-widlli.adb, s-widlli.ads, s-widllu.adb,
9131 s-widllu.ads, s-widwch.adb, s-widwch.ads, s-wwdcha.adb,
9132 s-wwdcha.ads, s-wwdenu.adb, s-wwdenu.ads, s-wwdwch.adb,
9133 s-wwdwch.ads, scans.adb, scans.ads, scn-nlit.adb,
9134 scn-slit.adb, scn.adb, scn.ads, sdefault.ads,
9135 sem.adb, sem.ads, sem_aggr.adb, sem_aggr.ads,
9136 sem_attr.adb, sem_attr.ads, sem_case.adb, sem_case.ads,
9137 sem_cat.adb, sem_cat.ads, sem_ch10.adb, sem_ch10.ads,
9138 sem_ch11.adb, sem_ch11.ads, sem_ch12.adb, sem_ch12.ads,
9139 sem_ch13.adb, sem_ch13.ads, sem_ch2.adb, sem_ch2.ads,
9140 sem_ch3.adb, sem_ch3.ads, sem_ch4.adb, sem_ch4.ads,
9141 sem_ch5.adb, sem_ch5.ads, sem_ch6.adb, sem_ch6.ads,
9142 sem_ch7.adb, sem_ch7.ads, sem_ch8.adb, sem_ch8.ads,
9143 sem_ch9.adb, sem_ch9.ads, sem_disp.adb, sem_disp.ads,
9144 sem_dist.adb, sem_dist.ads, sem_elab.adb, sem_elab.ads,
9145 sem_elim.adb, sem_elim.ads, sem_eval.adb, sem_eval.ads,
9146 sem_intr.adb, sem_intr.ads, sem_maps.adb, sem_maps.ads,
9147 sem_mech.adb, sem_mech.ads, sem_prag.adb, sem_prag.ads,
9148 sem_res.adb, sem_res.ads, sem_smem.adb, sem_smem.ads,
9149 sem_type.adb, sem_type.ads, sem_util.adb, sem_util.ads,
9150 sem_vfpt.adb, sem_vfpt.ads, sem_warn.adb, sem_warn.ads,
9151 sequenio.ads, sfn_scan.adb, sfn_scan.ads, sinfo-cn.adb,
9152 sinfo-cn.ads, sinfo.adb, sinfo.ads, sinput-d.adb,
9153 sinput-d.ads, sinput-l.adb, sinput-l.ads, sinput-p.adb,
9154 sinput-p.ads, sinput.adb, sinput.ads, snames.adb,
9155 snames.ads, sprint.adb, sprint.ads, stand.adb,
9156 stand.ads, stringt.adb, stringt.ads, style.adb,
9157 style.ads, stylesw.adb, stylesw.ads, switch-b.adb,
9158 switch-b.ads, switch-c.adb, switch-c.ads, switch-m.adb,
9159 switch-m.ads, switch.adb, switch.ads, system.ads,
9160 table.adb, table.ads, targparm.adb, targparm.ads,
9161 tbuild.adb, tbuild.ads, text_io.ads, trans.c,
9162 tree_gen.adb, tree_gen.ads, tree_in.adb, tree_in.ads,
9163 tree_io.adb, tree_io.ads, treepr.adb, treepr.ads,
9164 ttypef.ads, ttypes.ads, types.adb, types.ads,
9165 uintp.adb, uintp.ads, uname.adb, uname.ads,
9166 unchconv.ads, unchdeal.ads, urealp.adb, urealp.ads,
9167 usage.adb, usage.ads, validsw.adb, validsw.ads,
9168 widechar.adb, widechar.ads, xeinfo.adb, xnmake.adb,
9169 xr_tabls.adb, xr_tabls.ads, xref_lib.adb, xref_lib.ads,
9170 xsinfo.adb, xsnames.adb, xtreeprs.adb : Merge header,
9171 formatting and other trivial changes from ACT.
9172
dcf92453
ZW
91732003-04-12 Zack Weinberg <zack@codesourcery.com>
9174
9175 * gigi.h, utils2.c (build_constructor):
9176 Rename gnat_build_constructor. Use build_constructor.
9177 * decl.c (gnat_to_gnu_entity)
9178 * trans.c (tree_transform, pos_to_constructor, extract_values)
9179 * ada/utils.c (build_template, convert_to_fat_pointer, convert)
9180 (unchecked_convert)
9181 * ada/utils2.c (build_binary_op, build_call_raise, build_allocator)
9182 (fill_vms_descriptor):
9183 Update to match.
9184
d78e771d
ZW
91852003-04-06 Zack Weinberg <zack@codesourcery.com>
9186
9187 * ada-tree.def: Make fourth element for GNAT_LOOP_ID zero.
9188 * misc.c (gnat_tree_size): New function.
9189 (LANG_HOOKS_TREE_SIZE): Override.
9190
78d55cc8
JM
91912003-04-03 Jason Merrill <jason@redhat.com>
9192
9193 * misc.c (gnat_adjust_rli): #if 0.
9194
b174e2d4
GB
91952003-03-31 Geert Bosch <bosch@gnat.com>
9196
9197 PR ada/10020
9198 * link.c : Fix misspelled "const" keyword
9199
f29a2bd1
MM
92002003-03-23 Mark Mitchell <mark@codesourcery.com>
9201
9202 PR c++/7086
9203 * utils2.c: Adjust calls to put_var_into_stack.
9204
08e247b1
NN
92052003-03-12 Nathanael Nerode <neroden@gcc.gnu.org>
9206
9207 * Make-lang.in, Makefile.in, config-lang.in: GCC, not GNU CC.
9208
4bfec483
NB
92092003-03-08 Neil Booth <neil@daikokuya.co.uk>
9210
9211 * misc.c (gnat_init): Update for new prototype.
9212
3d713bb8
GB
92132003-03-05 Olivier Hainque <hainque@gnat.com>
9214
9215 ada/9961
78d55cc8
JM
9216 * raise.c (__gnat_Unwind_RaiseException): Add prototype to avoid
9217 warning, and fix return type for the IN_RTS && !SJLJ case.
3d713bb8 9218
8b89fcdf
TT
92192003-03-04 Tom Tromey <tromey@redhat.com>
9220
9221 * Make-lang.in (ada.tags): New target.
9222
3d713bb8 92232003-03-04 Olivier Hainque <hainque@act-europe.fr>
23cae84f
OH
9224
9225 ada/9911
9226 * a-except.adb (Unwind_RaiseException): Import a GNAT specific
9227 wrapper, which name remains constant whatever underlying GCC
9228 scheme.
9229
9230 * raise.c (__gnat_Unwind_RaiseException): New wrappers, providing
9231 the stable interface needed for a-except.
9232
f4ae98be
AJ
92332003-03-02 Andreas Jaeger <aj@suse.de>
9234
9235 * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
9236 gnat_ug_wnt.texi: Regenerate.
9237
5348742b
LG
92382003-03-02 Laurent Guerby <guerby@acm.org>
9239
f4ae98be 9240 * Makefile.in (install-gnatlib): Match previous change there
5348742b 9241 so it works.
f4ae98be 9242
8c108db2
AS
92432003-02-28 Andreas Schwab <schwab@suse.de>
9244
9245 * Make-lang.in (install-gnatlib): Change to ada directory before
9246 running make instead of using ada/Makefile directly.
9247
601d71bc
BE
92482003-02-18 Ben Elliston <bje@redhat.com>
9249
9250 Part of fix for PR ada/9406
9251 * gnat_ug.texi (Binder output file): Grammar fix.
9252
bf7c02dd
BE
92532003-02-18 Ben Elliston <bje@redhat.com>
9254
9255 PR other/7350
9256 * 5qtaprop.adb (Sleep): Fix typo in comment.
9257
b3a8389d
JM
92582003-02-04 Joseph S. Myers <jsm@polyomino.org.uk>
9259
9260 * gnat_rm.texi, gnat_ug.texi: Update to GFDL 1.2.
9261 * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
9262 gnat_ug_wnt.texi: Regenerate.
9263
5da14cb5
CC
92642003-02-03 Christian Cornelssen <ccorn@cs.tu-berlin.de>
9265
9266 * Make-lang.in (ada.install-info): Let $(DESTDIR)$(infodir)
9267 be created if necessary.
9268 (ada.install-common): Let $(DESTDIR)$(bindir) be created
9269 if necessary. Remove erroneous and redundant gnatchop
9270 installation commands. Test for gnatdll before attempting
9271 to install it.
9272 (ada.uninstall): Also uninstall gnatfind, gnatxref, gnatlbr,
9273 and gnatdll from all plausible locations.
9274
271bd540
RS
92752003-02-01 Richard Sandiford <rsandifo@redhat.com>
9276
9277 * utils2.c (build_unary_op): Don't check flag_volatile.
9278 * gnat_ug.texi: Remove -fvolatile from example.
9279 * gnat_ug_vxw.texi: Likewise.
9280
c1cc6a51
LG
92812003-01-29 Laurent Guerby <guerby@acm.org>
9282
d78e771d
ZW
9283 PR ada/8344
9284 * final.c: rename to adafinal.c to avoid file name conflicts with gcc file.
9285 * Makefile.in: match previous change.
9286 * Make-lang.in: match previous change.
c1cc6a51 9287
c4039eb0
JS
92882003-01-29 Joel Sherrill <joel@OARcorp.com>
9289
9290 * 5rosinte.ads: Add SIGXCPU.
9291 * 5rtpopsp.adb: New file.
9292 * Make-lang.in: Do not build gnatpsta and gnatpsys when cross.
9293 * Makefile.in: Recognize more RTEMS targets and add the RTEMS
9294 specific file 5rtpopsp.adb.
9295 * adaint.h: Add include of <stdio.h> when target is RTEMS. This
9296 is likely needed for all newlib targets.
9297 * init.c: Add RTEMS specific version of __gnat_initialize().
9298
00d29f7d
RO
92992003-01-28 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
9300
9301 * adaint.c, adaint.h, gmem.c, init.c: Update copyright year.
9302
437026ef
RO
93032003-01-27 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
9304
9305 * init.c (__gnat_error_handler): Make msg const.
9306
9307 * gmem.c (convert_addresses): Move declaration ...
9308 * adaint.h: ... here.
9309 * adaint.c (convert_addresses): Adapt addrs type to match
9310 prototype.
9311
9312 * adaint.c (__gnat_try_lock): Cast pid_t to long, adapt format.
9313
e12825cd
AS
93142003-01-24 Andreas Schwab <schwab@suse.de>
9315
9316 * ada-tree.h (SET_TYPE_DIGITS_VALUE): Add intermediate cast to
9317 size_t to avoid warning.
9318
a8729406
ZW
93192003-01-21 Zack Weinberg <zack@codesourcery.com>
9320
b09b91b9 9321 * Make-lang.in: Disable -Werror for tracebak.c and b_gnatb.c.
a8729406 9322
17211ab5
GK
93232003-01-09 Geoffrey Keating <geoffk@apple.com>
9324
9325 * gnat_rm.texi: Remove RCS version number.
9326
9327 * ada-tree.h (union lang_tree_node): Add chain_next option.
9328
1d27195c
CC
93292003-01-09 Christian Cornelssen <ccorn@cs.tu-berlin.de>
9330
9331 * Make-lang.in (ada.install-info, ada.install-common,
9332 ada.uninstall): Prepend $(DESTDIR) to the destination
9333 directory in all (un)installation commands.
9334 * Makefile.in (install-gnatlib, install-rts): Ditto.
9335
bdefb2ab
JM
93362002-12-28 Joseph S. Myers <jsm@polyomino.org.uk>
9337
9338 * gnat_rm.texi, gnat_ug.texi: Use @copying.
9339 * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
9340 gnat_ug_wnt.texi: Regenerate.
9341
46d40353
JM
93422002-12-23 Joseph S. Myers <jsm@polyomino.org.uk>
9343
9344 * gnat_rm.texi: Include gcc-common.texi. Use GCC version number
9345 only.
9346 * Make-lang.in ($(srcdir)/ada/gnat_ug_unx.info,
9347 $(srcdir)/ada/gnat_ug_vms.info, $(srcdir)/ada/gnat_ug_vxw.info,
9348 $(srcdir)/ada/gnat_ug_wnt.info, $(srcdir)/ada/gnat_rm.info,
9349 ada/gnat_ug_unx.dvi, ada/gnat_ug_vms.dvi, ada/gnat_ug_vxw.dvi,
9350 ada/gnat_ug_wnt.dvi, ada/gnat_rm.dvi): Depend on
9351 $(srcdir)/doc/include/gcc-common.texi.
9352
d2f97d3e
GB
93532002-12-15 Geert Bosch <bosch@gnat.com>
9354
9355 * sem_ch6.adb (Analyze_Subprogram_Body): Fix typo and formatting
9356
93a81b02
GB
93572002-12-14 Geert Bosch <bosch@gnat.com>
9358
4977bab6
ZW
9359 * sem_ch6.adb (Analyze_Subprogram_Body): Recognize additional
9360 case of a body created for a Renaming_As_Body, on which
9361 conformance checks are not performed. Fixes PR ada/5690.
9362
93632002-11-30 Zack Weinberg <zack@codesourcery.com>
9364
9365 * cuintp.c, decl.c, deftarg.c, misc.c, targtyps.c, trans.c,
9366 utils.c, utils2.c: Include coretypes.h and tm.h, and system.h when
9367 not already included.
9368 * Make-lang.in: Update dependencies.
93a81b02 9369
dfc15546
NN
93702002-11-18 Nathanael Nerode <neroden@gcc.gnu.org>
9371 * adaint.c (__gnat_tmp_name): Better, but good enough for now,
4977bab6 9372 solution to buffer overflow bug on GNU/Linux.
dfc15546 9373
8b54424d
NN
93742002-11-14 Nathanael Nerode <neroden@gcc.gnu.org>
9375 Closes PR ada/5856 and PR ada/6919 !
9376 * bindgen.adb: Remove all references to Public_Version.
9377 * comperr.adb: Remove all references to Public_Version and
9378 GNATPRO_Version; correct bug reporting instructions.
9379 * comperr.ads: Change to match bug box.
9380 * gnatvsn.ads: Remove all references to Public version and
9381 GNATPRO version.
9382
cc41268d 93832002-11-13 Nathanael Nerode <neroden@gcc.gnu.org>
1a083c0e
NN
9384 PR ada/6919
9385 * adaint.c (__gnat_tmp_name): Remove buffer overflow bug on
9386 GNU/Linux.
9387
cc41268d
NN
9388 PR ada/6558
9389 * config-lang.in: Remove diff_excludes.
9390
1c7b0712
GS
93912002-11-05 Graham Stott <graham.stott@btinternet.com>
9392 PR ada/8358
9393 * trans.c (gnu_pending_elaboration_lists): New GC root.
4977bab6 9394 (build_unit_elab): Use..
1c7b0712 9395
1c4048ca
GB
93962002-10-30 Geert Bosch <bosch@gnat.com>
9397 PR ada/6558
9398 * misc.c : Include optabs.h
9399
9400 * Make-lang.in (misc.o): Add dependency on optabs.h
9401
f0d96f9c 94022002-10-29 Geert Bosch <bosch@gnat.com>
4977bab6 9403 PR ada/6558
f0d96f9c
GB
9404 * Make-lang.in (gnatbind): Depend on CONFIG_H
9405
a7512dec 94062002-10-29 Geert bosch <bosch@gnat.com>
4977bab6
ZW
9407 PR ada/6558
9408 * misc.c: Unrevert misc.c (1.13)
a7512dec 9409
c6362f4f
NN
94102002-10-28 Nathanael Nerode <neroden@gcc.gnu.org>
9411
9412 * a-chlat9.ads a-cwila9.ads a-dynpri.adb a-retide.adb: Update
9413 maintainership comments.
9414
94152002-09-25 Nathanael Nerode <neroden@gcc.gnu.org>
91ed4b19 9416 PR ada/5904
4977bab6
ZW
9417 * 5ataprop.adb 5atpopsp.adb 5bosinte.adb 5ftaprop.adb
9418 5gtaprop.adb 5htaprop.adb 5rosinte.ads 5staprop.adb
9419 5stpopse.adb 5vtaspri.ads 5zintman.adb 5ztaprop.adb
9420 7staprop.adb: Correct statements in comments about
91ed4b19
NN
9421 maintainership of GNAT.
9422
1f02b6af 9423 PR ada/5904
4977bab6
ZW
9424 * 1ssecsta.adb 1ssecsta.ads adadecode.c adadecode.h aux-io.c
9425 gnatname.adb gnatname.ads mkdir.c osint-b.adb osint-b.ads
9426 osint-c.adb osint-c.ads osint-l.adb osint-l.ads osint-m.adb
9427 osint-m.ads prj-makr.adb prj-makr.ads prj-pp.adb prj-pp.ads
9428 s-atacco.ads s-traceb.adb s-traceb.ads s-traces.adb
9429 s-traces.ads s-tratas.adb s-tratas.ads sinput-d.adb
9430 sinput-d.ads switch-b.adb switch-b.ads switch-c.adb
1f02b6af
NN
9431 switch-c.ads switch-m.adb switch-m.ads: Correct statements in
9432 comments about maintainership of GNAT.
9433
71ff80dc 9434 PR ada/6919 (forward port of patch for PR ada/5904)
4977bab6
ZW
9435 * 1aexcept.adb 1aexcept.ads 41intnam.ads 42intnam.ads
9436 4aintnam.ads 4cintnam.ads 4dintnam.ads 4hexcpol.adb
9437 4lintnam.ads 4mintnam.ads 4nintnam.ads 4onumaux.ads
9438 4pintnam.ads 4rintnam.ads 4sintnam.ads 4uintnam.ads
9439 4vcalend.adb 4vintnam.ads 4wcalend.adb 4wexcpol.adb
9440 4wintnam.ads 4zintnam.ads 4znumaux.ads 4zsytaco.adb
9441 4zsytaco.ads 51osinte.adb 51osinte.ads 52osinte.adb
9442 52osinte.ads 52system.ads 53osinte.ads 5aosinte.ads
9443 5asystem.ads 5atasinf.ads 5ataspri.ads 5avxwork.ads
9444 5bosinte.ads 5bsystem.ads 5cosinte.ads 5dosinte.ads
9445 5esystem.ads 5fosinte.ads 5fsystem.ads 5ftasinf.ads
9446 5ginterr.adb 5gmastop.adb 5gosinte.ads 5gproinf.adb
9447 5gproinf.ads 5gsystem.ads 5gtasinf.adb 5gtasinf.ads
9448 5gtpgetc.adb 5hparame.ads 5hsystem.ads 5htaspri.ads
9449 5iosinte.ads 5itaspri.ads 5ksystem.ads 5kvxwork.ads
9450 5losinte.ads 5lsystem.ads 5mosinte.ads 5mvxwork.ads
9451 5ninmaop.adb 5nintman.adb 5nosinte.ads 5ntaspri.ads
9452 5oosprim.adb 5oparame.adb 5osystem.ads 5posinte.ads
9453 5posprim.adb 5pvxwork.ads 5rosinte.ads 5rparame.adb
9454 5sintman.adb 5sosinte.ads 5sparame.adb 5ssystem.ads
9455 5stasinf.adb 5stasinf.ads 5staspri.ads 5svxwork.ads
9456 5tosinte.ads 5uosinte.ads 5vasthan.adb 5vinterr.adb
9457 5vintman.ads 5vosinte.ads 5vosprim.adb 5vosprim.ads
9458 5vparame.ads 5vsystem.ads 5vtaspri.ads 5vtpopde.adb
9459 5vtpopde.ads 5vvaflop.adb 5wintman.adb 5wmemory.adb
9460 5wosinte.ads 5wosprim.adb 5wsystem.ads 5wtaprop.adb
9461 5wtaspri.ads 5ysystem.ads 5zinterr.adb 5zosinte.adb
9462 5zosinte.ads 5zosprim.adb 5zsystem.ads 6vcpp.adb 6vcstrea.adb
9463 7sosprim.adb 86numaux.adb 86numaux.ads 9drpc.adb a-astaco.adb
9464 a-caldel.ads a-calend.adb a-calend.ads a-chahan.adb
9465 a-chahan.ads a-colien.adb a-colien.ads a-colire.adb
9466 a-colire.ads a-comlin.adb a-comlin.ads a-cwila1.ads
9467 a-decima.adb a-decima.ads a-diocst.adb a-diocst.ads
9468 a-direio.adb a-direio.ads a-einuoc.adb a-einuoc.ads
9469 a-except.adb a-except.ads a-excpol.adb a-exctra.adb
9470 a-exctra.ads a-filico.adb a-filico.ads a-finali.adb
9471 a-finali.ads a-interr.ads a-intsig.adb a-intsig.ads
9472 a-ngcefu.adb a-ngcoty.adb a-ngcoty.ads a-ngelfu.adb
9473 a-nudira.adb a-nudira.ads a-nuflra.adb a-nuflra.ads
9474 a-numaux.ads a-reatim.ads a-retide.ads a-sequio.adb
9475 a-sequio.ads a-siocst.adb a-siocst.ads a-ssicst.adb
9476 a-ssicst.ads a-stmaco.ads a-storio.adb a-strbou.adb
9477 a-strbou.ads a-stream.ads a-strfix.adb a-strfix.ads
9478 a-strmap.adb a-strmap.ads a-strsea.adb a-strsea.ads
9479 a-strunb.adb a-strunb.ads a-ststio.adb a-ststio.ads
9480 a-stunau.adb a-stunau.ads a-stwibo.adb a-stwibo.ads
9481 a-stwifi.adb a-stwima.adb a-stwima.ads a-stwise.adb
9482 a-stwise.ads a-stwiun.adb a-stwiun.ads a-suteio.adb
9483 a-suteio.ads a-swmwco.ads a-swuwti.adb a-swuwti.ads
9484 a-sytaco.adb a-sytaco.ads a-tags.adb a-tags.ads a-tasatt.ads
9485 a-taside.adb a-taside.ads a-teioed.adb a-teioed.ads
9486 a-textio.adb a-textio.ads a-ticoau.adb a-ticoau.ads
9487 a-ticoio.adb a-ticoio.ads a-tideau.adb a-tideau.ads
9488 a-tideio.adb a-tideio.ads a-tienau.adb a-tienau.ads
9489 a-tienio.adb a-tienio.ads a-tifiio.adb a-tifiio.ads
9490 a-tiflau.adb a-tiflau.ads a-tiflio.adb a-tiflio.ads
9491 a-tigeau.adb a-tigeau.ads a-tiinau.adb a-tiinau.ads
9492 a-tiinio.adb a-tiinio.ads a-timoau.adb a-timoau.ads
9493 a-timoio.adb a-timoio.ads a-tiocst.adb a-tiocst.ads
9494 a-titest.adb a-witeio.adb a-witeio.ads a-wtcoau.adb
9495 a-wtcoau.ads a-wtcoio.adb a-wtcstr.adb a-wtcstr.ads
9496 a-wtdeau.adb a-wtdeau.ads a-wtdeio.adb a-wtdeio.ads
9497 a-wtedit.adb a-wtedit.ads a-wtenau.adb a-wtenau.ads
9498 a-wtenio.adb a-wtenio.ads a-wtfiio.adb a-wtfiio.ads
9499 a-wtflau.adb a-wtflau.ads a-wtflio.adb a-wtflio.ads
9500 a-wtgeau.adb a-wtgeau.ads a-wtinau.adb a-wtinau.ads
9501 a-wtinio.adb a-wtmoau.adb a-wtmoau.ads a-wtmoio.adb
9502 a-wtmoio.ads a-wttest.adb ada-tree.def ada-tree.h ada.h
9503 adaint.c adaint.h ali-util.adb ali-util.ads ali.adb ali.ads
9504 alloc.ads argv.c atree.adb atree.ads atree.h back_end.adb
9505 back_end.ads bcheck.adb bcheck.ads binde.adb binde.ads
9506 binderr.adb binderr.ads bindgen.adb bindgen.ads bindusg.adb
9507 bindusg.ads butil.adb butil.ads cal.c casing.adb casing.ads
9508 ceinfo.adb checks.adb checks.ads cio.c comperr.adb comperr.ads
9509 csets.adb csets.ads csinfo.adb cstand.adb cstand.ads
9510 cstreams.c cuintp.c debug.adb debug.ads debug_a.adb
9511 debug_a.ads dec-io.adb dec-io.ads dec.ads decl.c deftarg.c
9512 einfo.adb einfo.ads einfo.h elists.adb elists.ads elists.h
9513 errno.c errout.adb errout.ads eval_fat.adb eval_fat.ads exit.c
9514 exp_aggr.adb exp_aggr.ads exp_attr.adb exp_attr.ads
9515 exp_ch10.ads exp_ch11.adb exp_ch11.ads exp_ch12.adb
9516 exp_ch12.ads exp_ch13.adb exp_ch13.ads exp_ch2.adb exp_ch2.ads
9517 exp_ch3.adb exp_ch3.ads exp_ch4.adb exp_ch4.ads exp_ch5.adb
9518 exp_ch5.ads exp_ch6.adb exp_ch6.ads exp_ch7.adb exp_ch7.ads
9519 exp_ch8.adb exp_ch8.ads exp_ch9.adb exp_ch9.ads exp_code.adb
9520 exp_code.ads exp_dbug.adb exp_dbug.ads exp_disp.adb
9521 exp_disp.ads exp_dist.adb exp_dist.ads exp_fixd.adb
9522 exp_fixd.ads exp_imgv.adb exp_imgv.ads exp_intr.adb
9523 exp_intr.ads exp_pakd.adb exp_pakd.ads exp_prag.adb
9524 exp_prag.ads exp_smem.adb exp_smem.ads exp_strm.adb
9525 exp_strm.ads exp_tss.adb exp_tss.ads exp_util.adb exp_util.ads
9526 exp_vfpt.adb exp_vfpt.ads expander.adb expander.ads fe.h
9527 final.c fmap.adb fmap.ads fname-sf.adb fname-sf.ads
9528 fname-uf.adb fname-uf.ads fname.adb fname.ads freeze.adb
9529 freeze.ads frontend.adb frontend.ads g-calend.ads g-comlin.adb
9530 g-debpoo.adb g-debpoo.ads g-locfil.adb g-os_lib.ads
9531 g-regist.adb g-regist.ads get_targ.adb get_targ.ads gigi.h
9532 gmem.c gnat1drv.adb gnat1drv.ads gnat_ug.texi gnatbind.adb
9533 gnatbind.ads gnatbl.c gnatcmd.adb gnatcmd.ads gnatdll.adb
9534 gnatfind.adb gnatkr.adb gnatkr.ads gnatlbr.adb gnatlink.adb
9535 gnatlink.ads gnatls.adb gnatls.ads gnatmake.adb gnatmake.ads
9536 gnatmem.adb gnatprep.adb gnatprep.ads gnatpsta.adb gnatvsn.ads
9537 gnatxref.adb hlo.adb hlo.ads hostparm.ads i-c.adb i-cexten.ads
9538 i-cobol.adb i-cobol.ads i-cpoint.adb i-cpoint.ads i-cpp.adb
9539 i-cpp.ads i-cstrea.adb i-cstrea.ads i-cstrin.adb i-cstrin.ads
9540 i-fortra.adb i-os2err.ads i-os2lib.adb i-os2lib.ads
9541 i-os2syn.ads i-os2thr.ads i-pacdec.adb i-pacdec.ads
9542 impunit.adb impunit.ads init.c inline.adb inline.ads io-aux.c
9543 itypes.adb itypes.ads krunch.adb krunch.ads lang-options.h
9544 lang-specs.h layout.adb layout.ads lib-list.adb lib-load.adb
9545 lib-load.ads lib-sort.adb lib-util.adb lib-util.ads
9546 lib-writ.adb lib-writ.ads lib-xref.adb lib-xref.ads lib.adb
9547 lib.ads link.c live.adb live.ads make.adb make.ads makeusg.adb
9548 makeusg.ads math_lib.adb mdll.adb mdll.ads memtrack.adb misc.c
9549 namet.adb namet.ads namet.h nlists.adb nlists.ads nlists.h
9550 nmake.adb nmake.ads nmake.adt opt.adb opt.ads osint.adb
9551 osint.ads output.adb output.ads par-ch10.adb par-ch11.adb
9552 par-ch12.adb par-ch13.adb par-ch2.adb par-ch3.adb par-ch4.adb
9553 par-ch5.adb par-ch6.adb par-ch7.adb par-ch8.adb par-ch9.adb
9554 par-endh.adb par-labl.adb par-load.adb par-prag.adb
9555 par-sync.adb par-tchk.adb par-util.adb par.adb par.ads
9556 prj-attr.adb prj-attr.ads prj-com.adb prj-com.ads prj-dect.adb
9557 prj-dect.ads prj-env.adb prj-env.ads prj-ext.adb prj-ext.ads
9558 prj-nmsc.adb prj-nmsc.ads prj-pars.adb prj-pars.ads
9559 prj-part.adb prj-part.ads prj-proc.adb prj-proc.ads
9560 prj-strt.adb prj-strt.ads prj-tree.adb prj-tree.ads
9561 prj-util.adb prj-util.ads prj.adb prj.ads raise.c raise.h
9562 repinfo.adb repinfo.ads repinfo.h restrict.adb restrict.ads
9563 rident.ads rtsfind.adb rtsfind.ads s-addima.adb s-addima.ads
9564 s-arit64.adb s-arit64.ads s-assert.adb s-assert.ads
9565 s-asthan.adb s-asthan.ads s-atacco.adb s-auxdec.adb
9566 s-auxdec.ads s-bitops.adb s-bitops.ads s-chepoo.ads
9567 s-direio.adb s-direio.ads s-except.ads s-exctab.adb
9568 s-exctab.ads s-exnflt.ads s-exngen.adb s-exngen.ads
9569 s-exnint.ads s-exnlfl.ads s-exnlin.ads s-exnllf.ads
9570 s-exnlli.ads s-exnsfl.ads s-exnsin.ads s-exnssi.ads
9571 s-expflt.ads s-expgen.adb s-expgen.ads s-expint.ads
9572 s-explfl.ads s-explin.ads s-expllf.ads s-explli.ads
9573 s-expllu.adb s-expllu.ads s-expmod.adb s-expmod.ads
9574 s-expsfl.ads s-expsin.ads s-expssi.ads s-expuns.adb
9575 s-expuns.ads s-fatflt.ads s-fatgen.adb s-fatgen.ads
9576 s-fatlfl.ads s-fatllf.ads s-fatsfl.ads s-ficobl.ads
9577 s-fileio.adb s-fileio.ads s-finimp.adb s-finimp.ads
9578 s-finroo.adb s-finroo.ads s-fore.adb s-fore.ads s-imgbiu.adb
9579 s-imgbiu.ads s-imgboo.adb s-imgboo.ads s-imgcha.adb
9580 s-imgcha.ads s-imgdec.adb s-imgdec.ads s-imgenu.adb
9581 s-imgenu.ads s-imgint.adb s-imgint.ads s-imgllb.adb
9582 s-imgllb.ads s-imglld.adb s-imglld.ads s-imglli.adb
9583 s-imglli.ads s-imgllu.adb s-imgllu.ads s-imgllw.adb
9584 s-imgllw.ads s-imgrea.adb s-imgrea.ads s-imguns.adb
9585 s-imguns.ads s-imgwch.adb s-imgwch.ads s-imgwiu.adb
9586 s-imgwiu.ads s-inmaop.ads s-interr.adb s-interr.ads
9587 s-intman.ads s-io.adb s-io.ads s-maccod.ads s-mantis.adb
9588 s-mantis.ads s-memory.adb s-memory.ads s-osprim.ads
9589 s-pack03.adb s-pack03.ads s-pack05.adb s-pack05.ads
9590 s-pack06.adb s-pack06.ads s-pack07.adb s-pack07.ads
9591 s-pack09.adb s-pack09.ads s-pack10.adb s-pack10.ads
9592 s-pack11.adb s-pack11.ads s-pack12.adb s-pack12.ads
9593 s-pack13.adb s-pack13.ads s-pack14.adb s-pack14.ads
9594 s-pack15.adb s-pack15.ads s-pack17.adb s-pack17.ads
9595 s-pack18.adb s-pack18.ads s-pack19.adb s-pack19.ads
9596 s-pack20.adb s-pack20.ads s-pack21.adb s-pack21.ads
9597 s-pack22.adb s-pack22.ads s-pack23.adb s-pack23.ads
9598 s-pack24.adb s-pack24.ads s-pack25.adb s-pack25.ads
9599 s-pack26.adb s-pack26.ads s-pack27.adb s-pack27.ads
9600 s-pack28.adb s-pack28.ads s-pack29.adb s-pack29.ads
9601 s-pack30.adb s-pack30.ads s-pack31.adb s-pack31.ads
9602 s-pack33.adb s-pack33.ads s-pack34.adb s-pack34.ads
9603 s-pack35.adb s-pack35.ads s-pack36.adb s-pack36.ads
9604 s-pack37.adb s-pack37.ads s-pack38.adb s-pack38.ads
9605 s-pack39.adb s-pack39.ads s-pack40.adb s-pack40.ads
9606 s-pack41.adb s-pack41.ads s-pack42.adb s-pack42.ads
9607 s-pack43.adb s-pack43.ads s-pack44.adb s-pack44.ads
9608 s-pack45.adb s-pack45.ads s-pack46.adb s-pack46.ads
9609 s-pack47.adb s-pack47.ads s-pack48.adb s-pack48.ads
9610 s-pack49.adb s-pack49.ads s-pack50.adb s-pack50.ads
9611 s-pack51.adb s-pack51.ads s-pack52.adb s-pack52.ads
9612 s-pack53.adb s-pack53.ads s-pack54.adb s-pack54.ads
9613 s-pack55.adb s-pack55.ads s-pack56.adb s-pack56.ads
9614 s-pack57.adb s-pack57.ads s-pack58.adb s-pack58.ads
9615 s-pack59.adb s-pack59.ads s-pack60.adb s-pack60.ads
9616 s-pack61.adb s-pack61.ads s-pack62.adb s-pack62.ads
9617 s-pack63.adb s-pack63.ads s-parame.adb s-parame.ads
9618 s-parint.adb s-parint.ads s-pooglo.adb s-pooglo.ads
9619 s-pooloc.adb s-pooloc.ads s-poosiz.adb s-poosiz.ads
9620 s-powtab.ads s-proinf.adb s-proinf.ads s-rpc.adb s-rpc.ads
9621 s-scaval.ads s-secsta.adb s-secsta.ads s-sequio.adb
9622 s-sequio.ads s-shasto.adb s-shasto.ads s-soflin.adb
9623 s-soflin.ads s-sopco3.adb s-sopco3.ads s-sopco4.adb
9624 s-sopco4.ads s-sopco5.adb s-sopco5.ads s-stache.adb
9625 s-stache.ads s-stalib.adb s-stalib.ads s-stoele.adb
9626 s-stopoo.ads s-stratt.adb s-stratt.ads s-strops.adb
9627 s-strops.ads s-taprob.ads s-taprop.ads s-tarest.ads
9628 s-tasdeb.adb s-tasdeb.ads s-tasinf.adb s-tasinf.ads
9629 s-tasini.ads s-taskin.ads s-tasren.ads s-tasres.ads
9630 s-tassta.ads s-tpinop.adb s-tpinop.ads s-tpoben.ads
9631 s-tpobop.ads s-unstyp.ads s-vaflop.adb s-vaflop.ads
9632 s-valboo.adb s-valboo.ads s-valcha.adb s-valcha.ads
9633 s-valdec.adb s-valdec.ads s-valenu.adb s-valenu.ads
9634 s-valint.adb s-valint.ads s-vallld.adb s-vallld.ads
9635 s-vallli.adb s-vallli.ads s-valllu.adb s-valllu.ads
9636 s-valrea.adb s-valrea.ads s-valuns.adb s-valuns.ads
9637 s-valuti.adb s-valuti.ads s-valwch.adb s-valwch.ads
9638 s-vercon.adb s-vercon.ads s-vmexta.adb s-vmexta.ads
9639 s-wchcnv.adb s-wchcnv.ads s-wchcon.ads s-wchjis.adb
9640 s-wchjis.ads s-wchstw.adb s-wchstw.ads s-wchwts.adb
9641 s-wchwts.ads s-widboo.adb s-widboo.ads s-widcha.adb
9642 s-widcha.ads s-widenu.adb s-widenu.ads s-widlli.adb
9643 s-widlli.ads s-widllu.adb s-widllu.ads s-widwch.adb
9644 s-widwch.ads s-wwdcha.adb s-wwdcha.ads s-wwdenu.adb
9645 s-wwdenu.ads s-wwdwch.adb s-wwdwch.ads scans.adb scans.ads
9646 scn-nlit.adb scn-slit.adb scn.adb scn.ads sdefault.ads sem.adb
9647 sem.ads sem_aggr.adb sem_aggr.ads sem_attr.adb sem_attr.ads
9648 sem_case.adb sem_case.ads sem_cat.adb sem_cat.ads sem_ch10.adb
9649 sem_ch10.ads sem_ch11.adb sem_ch11.ads sem_ch12.adb
9650 sem_ch12.ads sem_ch13.adb sem_ch13.ads sem_ch2.adb sem_ch2.ads
9651 sem_ch3.adb sem_ch3.ads sem_ch4.adb sem_ch4.ads sem_ch5.adb
9652 sem_ch5.ads sem_ch6.adb sem_ch6.ads sem_ch7.adb sem_ch7.ads
9653 sem_ch8.adb sem_ch8.ads sem_ch9.adb sem_ch9.ads sem_disp.adb
9654 sem_disp.ads sem_dist.adb sem_dist.ads sem_elab.adb
9655 sem_elab.ads sem_elim.adb sem_elim.ads sem_eval.adb
9656 sem_eval.ads sem_intr.adb sem_intr.ads sem_maps.adb
9657 sem_maps.ads sem_mech.adb sem_mech.ads sem_prag.adb
9658 sem_prag.ads sem_res.adb sem_res.ads sem_smem.adb sem_smem.ads
9659 sem_type.adb sem_type.ads sem_util.adb sem_util.ads
9660 sem_vfpt.adb sem_vfpt.ads sem_warn.adb sem_warn.ads
9661 sfn_scan.adb sfn_scan.ads sinfo-cn.adb sinfo-cn.ads sinfo.adb
9662 sinfo.ads sinfo.h sinput-l.adb sinput-l.ads sinput-p.adb
9663 sinput-p.ads sinput.adb sinput.ads snames.adb snames.ads
9664 snames.h sprint.adb sprint.ads stand.adb stand.ads stringt.adb
9665 stringt.ads stringt.h style.adb style.ads stylesw.adb
9666 stylesw.ads switch.adb switch.ads sysdep.c system.ads
9667 table.adb table.ads targparm.adb targparm.ads targtyps.c
9668 tbuild.adb tbuild.ads trans.c tree_gen.adb tree_gen.ads
9669 tree_in.adb tree_in.ads tree_io.adb tree_io.ads treepr.adb
9670 treepr.ads treeprs.ads treeprs.adt ttypef.ads ttypes.ads
9671 types.adb types.ads types.h uintp.adb uintp.ads uintp.h
9672 uname.adb uname.ads urealp.adb urealp.ads urealp.h usage.adb
9673 usage.ads utils.c utils2.c validsw.adb validsw.ads
9674 widechar.adb widechar.ads xeinfo.adb xnmake.adb xr_tabls.adb
9675 xr_tabls.ads xref_lib.adb xref_lib.ads xsinfo.adb xsnames.adb
71ff80dc
NN
9676 xtreeprs.adb: Correct statements in comments about maintainership
9677 of GNAT.
9678
b4f94ac1
ZW
96792002-09-23 Zack Weinberg <zack@codesourcery.com>
9680
9681 * Make-lang.in (EXTRA_GNATBIND_OBJS): Add version.o.
9682 * Makefile.in (TOOLS_LIBS): Add ../../version.o.
9683 * gnatvsn.ads: Gnat_Version_String is now a function.
9684 * gnatvsn.adb: New file. When asked for Gnat_Version_String,
9685 copy the C version_string into a String and return it.
9686 * gnatcmd.adb, gnatkr.adb, gnatlbr.adb, gnatlink.adb,
9687 gnatls.adb,gnatmake.adb, gnatprep.adb, gnatpsta.adb:
9688 Remove pragma Ident (Gnat_Version_String). If this was the
9689 sole use of package Gnatvsn, remove the with statement too.
9690 * gnat1drv.adb: Tweak -gnatv output.
9691
eaff3bf8
RH
96922002-09-17 Richard Henderson <rth@redhat.com>
9693
9694 * trans.c (tree_transform): Use real_ldexp not REAL_VALUE_LDEXP.
9695 * config/dsp16xx/dsp16xx.md (fixuns_trunchfhi2): Use real_2expN.
9696 * config/mips/mips.md (fixuns_truncdfsi2): Likewise.
9697 (fixuns_truncdfdi2, fixuns_truncsfsi2, fixuns_truncsfdi2): Likewise.
9698 * config/m68k/m68k.c (floating_exact_log2): Use real_exponent
9699 and real_2expN instead of a loop.
9700 * doc/tm.texi (REAL_VALUE_LDEXP): Remove.
9701 (REAL_VALUE_RNDZINT, REAL_VALUE_UNSIGNED_RNDZINT): Remove.
9702
d241f75b 97032002-08-25 Andre Leis <a.leis@gmx.net>
f4ae98be 9704 David Billinghurst (David.Billinghurst@riotinto.com>
d241f75b 9705
f4ae98be 9706 * sysdep.c (__gnat_ttyname): include <termios.h> on cygwin
d241f75b 9707
4320085a
RO
97082002-08-13 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
9709
9710 * Make-lang.in (gnatbind$(exeext)): Link with $(SYSLIBS).
9711 Remove $(CONFIG_H) dependency.
9712
22aa533e
NS
97132002-08-08 Nathan Sidwell <nathan@codesourcery.com>
9714
9715 * ada/Make-lang.in (ada.mostlyclean): Remove coverage files.
9716
1dcd444b
KG
97172002-07-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
9718
9719 * adadecode.c (ada_demangle): Use xstrdup in lieu of
9720 xmalloc/strcpy.
9721 * misc.c (gnat_decode_option): Likewise.
9722
7bc7d27b
FW
97232002-07-15 Florian Weimer <fw@deneb.enyo.de>
9724
9725 * make.adb (Add_Switch): Make Generic_Position a procedure. The
9726 function approach did not work well because of a side effect (the
9727 function call could reallocate the table which was being indexed
9728 using its result). Fixes ada/4851. [RESURRECTED]
9729
6a2dd09a
RS
97302002-07-01 Roger Sayle <roger@eyesopen.com>
9731
9732 * ada/utils.c (builtin_function): Accept an additional parameter.
9733
c168bbd7
AJ
97342002-06-28 Andreas Jaeger <aj@suse.de>
9735
9736 PR ada/7144
9737 * Makefile.in: Fix typo in comment, patch by Adrian Knoth
9738 <adi@thur.de>.
9739
b41e09a7
KG
97402002-06-24 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
9741
9742 * Makefile.in (SHELL): Set to @SHELL@.
9743
62c71f4b
KG
97442002-06-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
9745
9746 * utils.c (init_gigi_decls): Use ARRAY_SIZE in lieu of explicit
9747 array size calculation.
9748
94213cff
AJ
97492002-06-04 Andreas Jaeger <aj@suse.de>
9750
9751 * Make-lang.in (gnatbind): Readd rule that has been lost in last
9752 patch.
9753
e2500fed
GK
97542002-06-03 Geoffrey Keating <geoffk@redhat.com>
9755
9756 Merge from pch-branch:
9757
9758 * config-lang.in (gtfiles): Add ada-tree.h.
9759 * ada-tree.h (SET_TYPE_CI_CO_LIST): New.
9760 (SET_TYPE_MODULUS): New.
9761 (SET_TYPE_INDEX): New.
9762 (SET_TYPE_DIGITS_VALUE): New.
9763 (SET_TYPE_RM_SIZE): New.
9764 (SET_TYPE_UNCONSTRAINED_ARRAY): New.
9765 (SET_TYPE_ADA_SIZE): New.
9766 (SET_TYPE_ACTUAL_BOUNDS): New.
9767 (SET_DECL_CONST_CORRESPONDING_VAR): New.
9768 (SET_DECL_ORIGINAL_FIELD): New.
9769 (TREE_LOOP_ID): Correct typo.
9770 * decl.c: Use new macros.
9771 * utils.c: Include debug.h, use new macros.
94213cff 9772 * utils2.c: Use new macros.
e2500fed
GK
9773
9774 * ada-tree.h: Update all macros for new tree description.
9775 (struct tree_loop_id): New.
9776 (union lang_tree_node): New.
9777 (struct lang_decl): New.
9778 (struct lang_type): New.
9779 * misc.c (gnat_mark_tree): Delete.
9780 (LANG_HOOKS_MARK_TREE): Delete.
9781 * trans.c (tree_transform): No longer any need to cast
9782 for TREE_LOOP_ID.
9783
9784 * utils.c (struct language_function): New dummy structure.
9785
9786 * Makefile.in (decl.o): gt-ada-<filename.h> is in objdir, not srcdir.
9787 (misc.o): Likewise.
9788 (utils.o): Likewise; also gtype-ada.h.
9789 * Make-lang.in (gnat1): Add dependency on s-gtype.
9790 (gnatbind): Add dependency on $(CONFIG_H).
9791 * utils.c: Correct last #include.
9792 (stuct e_stack): Remove unnecessary 'static'.
9793 (mark_e_stack): Remove unused prototype.
9794
9795 * scn-nlit.adb: Remove whitespace after version number to
9796 keep lines under 80 chars.
9797 * snames.adb: Likewise.
9798 * treepr.ads: Likewise.
94213cff 9799
e2500fed
GK
9800 * Makefile.in (decl.o): Include gt-ada-<filename>.h.
9801 (misc.o): Likewise.
9802 (utils.o): Include gt-ada-<filename>.h and gtype-ada.h.
9803 * config-lang.in (gtfiles): New.
9804 * decl.c: Use gengtype for roots.
9805 * gigi.h: Use gengtype for roots.
9806 * trans.c: Use gengtype for roots.
9807 * utils.c: Use gengtype for roots, marking. Include gtype-ada.h.
9808
27e511e0
GDR
98092002-06-02 Gabriel Dos Reis <gdr@codesourcery.com>
9810
9811 * misc.c (gnat_init): Adjust setting of internal_error_function.
9812
113dc143
JM
98132002-06-01 Joseph S. Myers <jsm28@cam.ac.uk>
9814
9815 * gnat_ug.texi: Use @ifnottex instead of @ifinfo.
9816 * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
9817 gnat_ug_wnt.texi: Regenerate.
9818
5321fb3e
FW
98192002-05-31 Florian Weimer <fw@deneb.enyo.de>
9820
15e6136e
FW
9821 * 5ntaprop.adb (with System.OS_Primitives): Remove.
9822
019310ac
FW
9823 * cstreams.c (max_path_len): Move from here ...
9824 * adaint.c (__gnat_max_path_len): ... to here.
9825 * adaint.c (__gnat_max_path_len): Declare.
9826 * g-dirope.adb (Max_Path): Adjust.
9827 * g-os_lib.adb (Normalize_Pathname.Max_Path): Adjust.
94213cff 9828 * i-cstrea.ads (max_path_len): Adjust.
019310ac
FW
9829 * osint.adb (Get_RTS_Search_Dir.Max_Path): Adjust.
9830 * xr_tabls.adb (Dir_Name.Max_Path: Adjust.
9831
5321fb3e
FW
9832 * Makefile.in, Make-lang.in: Documentation is now built in
9833 Make-lang.in. Store Info and generated Texinfo files in the
9834 source directory.
9835 * gnat_ug.texi: Remove CVS keywords, correct version number.
9836 Set file name correctly.
9837
9838 * gnat_ug_*.texi: Add.
9839 * .cvsignore: Ignore generated Texinfo files.
9840
b1c12c4b
ZW
98412002-05-30 Zack Weinberg <zack@codesourcery.com>
9842
9843 * ada.h: Add MI guard macro.
9844 (SUBTYPE): Define constants with an anonymous enum, not static
9845 const variables.
9846 (IN): Cast constants to appropriate type before use.
9847
ead33da9
JM
98482002-05-26 Joseph S. Myers <jsm28@cam.ac.uk>
9849
9850 * gnatvsn.ads (Gnat_Version_String): Change to "3.2 20020526
9851 (experimental)".
9852
7d600178
RO
98532002-05-23 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
9854
9855 * Make-lang.in (CP, ECHO): Copy from Makefile.in.
9856 (X_ADA_CFLAGS, T_ADA_CFLAGS, X_ADAFLAGS, T_ADAFLAGS): Likewise.
9857 (ALL_ADAFLAGS, FORCE_DEBUG_ADAFLAGS, ADA_CFLAGS): Likewise.
9858 (ALL_ADA_CFLAGS): Likewise.
9859 (ADA_INCLUDES): Likewise.
9860 Adapt for new working dir.
9861 (GNATBIND): Use Makefile.in version.
9862 (.SUFFIXES): Copy from Makefile.in.
9863 (ada-warn): Define.
9864 (.adb.o, .ads.o): Copy from Makefile.in.
9865 Added $(OUTPUT_OPTION).
9866 (GNAT1_C_OBJS): Moved from Makefile.in.
9867 Prefix with ada subdir.
9868 (GNAT_ADA_OBJS, GNAT1_ADA_OBJS, GNAT1_OBJS, GNATBIND_OBJS): Likewise.
9869 (EXTRA_GNAT1_OBJS): Moved from Makefile.in.
9870 Adapt for new working dir.
9871 (EXTRA_GNATBIND_OBJS): Likewise.
9872 (ADA_BACKEND): Moved from Makefile.in.
9873 Renamed to avoid conflict with global BACKEND.
9874 Use that one.
9875 (TARGET_ADA_SRCS): Moved from Makefile.in.
9876 (gnat1$(exeext)): Replaced recursive rule with Makefile.in version.
9877 Use ADA_BACKEND.
9878 (gnatbind$(exeext)): Replaced recursive rule with Makefile.in version.
9879 (ada_extra_files): Moved from Makefile.in.
9880 Prefix with ada subdir.
9881 (ada/b_gnat1.c, ada/b_gnat1.o, ada/b_gnatb.c, ada/b_gnatb.o): Likewise.
9882 (ada/treeprs.ads, ada/einfo.h, ada/sinfo.h, ada/nmake.adb): Likewise.
9883 (ada/nmake.ads): Likewise.
9884 (update-sources): Moved from Makefile.in.
9885 Prefix with ada subdir.
9886 (ada/sdefault.adb, ada/stamp-sdefault, ada/sdefault.o): Likewise.
9887 (ADA_TREE_H): Likewise.
9888 (ada/a-except.o, ada/s-assert.o, ada/s-memory.o): Likewise.
9889 (ada/memtrack.o): Likewise.
9890 (ada/adadecode.o): Likewise.
9891 Update dependencies.
9892 (ada/adaint.o): New.
9893 (ada/argv.o): Moved from Makefile.in.
9894 Prefix with ada subdir.
94213cff 9895 Update dependencies.
7d600178
RO
9896 (ada/cstreams.o, ada/exit.o, ada/final.o, ada/link.o): Likewise.
9897 (ada/cio.o, ada/init.o, ada/raise.o, ada/tracebak.o): Likewise.
9898 (ada/cuintp.o, ada/decl.o, ada/misc.o): Moved from Makefile.in.
9899 Prefix with ada subdir.
9900 (ada/targtyps.o, ada/trans.o, ada/utils.o, ada/utils2.o): Likewise.
9901 (GNAT DEPENDENCIES): Regenerate.
9902 * Makefile.in (MACHMODE_H, RTL_H, TREE_H): Removed, provided by
9903 toplevel Makefile.in.
9904 (EXTRA_GNAT1_OBJS, EXTRA_GNATBIND_OBJS): Removed.
9905 (TARGET_ADA_SRCS): Removed.
9906 (GNAT1_C_OBJS, GNAT_ADA_OBJS, GNAT1_ADA_OBJS, GNAT1_OBJS): Likewise.
9907 (GNATBIND_OBJS): Likewise.
9908 (ADA_INCLUDE_DIR, ADA_RTL_OBJ_DIR): Moved here.
9909 (BACKEND): Removed.
9910 (../gnat1$(exeext), ../gnatbind$(exeext)): Likewise.
9911 (TREE_H): Likewise.
9912 (ada_extra_files): Likewise.
9913 (b_gnat1.c, b_gnat1.o, b_gnatb.c, b_gnatb.o): Likewise.
9914 (treeprs.ads, einfo.h, sinfo.h, nmake.adb, nmake.ads): Likewise.
9915 (update-sources): Likewise.
9916 (sdefault.adb, stamp-sdefault, sdefault.o): Likewise
9917 (ADA_TREE_H): Likewise.
9918 (adadecoce.o): Likewise.
9919 (cuintp.o, decl.o, misc.o, trans.o, utils.o, utils2.o): Likewise.
9920 (GNAT DEPENDENCIES): Likewise.
9921
1e6347d8
RO
99222002-05-16 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
9923
9924 * Makefile.adalib: Allow for PWDCMD to override hardcoded pwd.
9925 * Makefile.in: Likewise.
9926
db80834f
RO
99272002-05-14 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
9928
9929 * Make-lang.in (gnat1$(exeext), gnatbind$(exeext), gnattools):
9930 Restore $(CONFIG_H) and prefix.o dependencies.
9931 (ada.stage[1-4]): Depend on stage?-start.
9932
9933 * Makefile.in (b_gnatb.c): Depend on interfac.o.
9934
ac293f98
JW
99352002-05-02 Jim Wilson <wilson@redhat.com>
9936
9937 * utils.c (finish_record_type): Change record_size to record_type.
9938
b303008e
JDA
99392001-05-02 John David Anglin <dave@hiauly1.hia.nrc.ca>
9940
9941 * ada/Makefile.in (X_ADA_CFLAGS, T_ADA_CFLAGS): New fragment overrides.
9942 (ALL_ADA_CFLAGS): Define. Replace ADA_CFLAGS with ALL_ADA_CFLAGS in
9943 ALL_ADAFLAGS, MOST_ADAFLAGS, and all compilations using CC.
94213cff 9944
ff45c01e
NB
99452002-04-25 Neil Booth <neil@daikokuya.demon.co.uk>
9946
9947 * misc.c (gnat_parse_file): Update.
9948
349ae713
NB
99492002-04-24 Neil Booth <neil@daikokuya.demon.co.uk>
9950
9951 * misc.c (gnat_init): Don't set lang_attribute_common.
9952
ace133aa
JM
99532002-04-21 Joseph S. Myers <jsm28@cam.ac.uk>
9954
9955 * gnat_rm.texi: Use @ifnottex instead of @ifinfo.
9956
5c558dd9
FW
99572002-04-21 Florian Weimer <fw@deneb.enyo.de>
9958
b4f94ac1 9959 * gnat_ug.texi: New file.
88e1739c 9960
5c558dd9
FW
9961 * gnat_rm.texi: Do not include texiplus.texi. Include fdl.texi
9962 instead of gfdl.texi
9963
9964 * xgnatug.adb, ug_words: New files.
9965
9966 * Makefile.in (doc, dvi): New targets. Build gnat_ug_*,
b4f94ac1 9967 gnat_rm and gnat-style manuals.
5c558dd9 9968
7a228918
NB
99692002-04-18 Neil Booth <neil@daikokuya.demon.co.uk>
9970
9971 * gigi.h (incomplete_type_error): Remove.
9972 * utils.c (incomplete_type_error): Remove.
9973
b2123dc0
MM
99742002-04-16 Mark Mitchell <mark@codesourcery.com>
9975
9976 * trans.c (tree_transform): Add has_scope argument to
9977 expand_start_stmt_expr.
9978
78ef5b89
NB
99792002-04-04 Neil Booth <neil@daikokuya.demon.co.uk>
9980
9981 * gigi.h (truthvalue_conversion): Rename.
9982 * misc.c (LANG_HOOKS_TRUTHVALUE_CONVERSION): Redefine.
9983 * trans.c (tree_transform): Update.
9984 * utils2.c (truthvalue_conversion): Rename, update.
9985 (build_binary_op, build_unary_op): Update.
9986
a71742a8
LG
99872002-04-04 Laurent Guerby <guerby@acm.org>
9988
9989 * make.adb: Implement -margs, remove restriction about file name placement.
9990 * makeusg.adb: Documentation update.
9991 * Makefile.in (TOOLS_FLAGS_TO_PASS): Add VPATH=$(fsrcdir).
9992 * Makefile.in (gnattools3): Comment out, gnatmem does not build without libaddr2line.
9993
82a4b025
NB
99942002-04-04 Neil Booth <neil@daikokuya.demon.co.uk>
9995
9996 * utils.c (create_subprog_decl): Use SET_DECL_ASSEMBLER_NAME.
9997 (builtin_function): Similarly.
9998
dffd7eb6
NB
99992002-04-01 Neil Booth <neil@daikokuya.demon.co.uk>
10000
10001 * decl.c (gnat_to_gnu_entity): Update.
10002 * gigi.h (mark_addressable): Rename.
10003 * misc.c (LANG_HOOKS_MARK_ADDRESSABLE): Redefine.
10004 * trans.c (tree_transform): Update.
10005 * utils.c (create_var_decl): Update.
10006 * util2.c (build_binary_op, build_unary_op,
10007 fill_vms_descriptor): Update.
10008 (mark_addressable): Rename, update.
10009
ceef8ce4
NB
100102002-04-01 Neil Booth <neil@daikokuya.demon.co.uk>
10011
10012 * gigi.h (unsigned_type, signed_type, signed_or_unsigned_type):
10013 Rename.
10014 * misc.c (LANG_HOOKS_SIGNED_TYPE, LANG_HOOKS_UNSIGNED_TYPE,
10015 LANG_HOOKS_SIGNED_OR_UNSIGNED_TYPE): New.
10016 * trans.c (tree_transform, convert_with_check): Update.
10017 * utils.c (unsigned_type, signed_type, signed_or_unsigned_type):
10018 Rename.
10019
48a7a235
NB
100202002-03-31 Neil Booth <neil@daikokuya.demon.co.uk>
10021
10022 * gigi.h (finish_incomplete_decl): Rename.
10023 * misc.c (LANG_HOOKS_FINISH_INCOMPLETE_DECL): Redefine.
10024 * utils.c (gnat_init_decl_processing): Don't set hook.
10025 (finish_incomplete_decl): Rename.
10026
1d5af871
AS
100272002-03-29 Andreas Schwab <schwab@suse.de>
10028
10029 * Makefile.in: Pass VPATH=$(fsrcdir) when calling make in rts
10030 directory.
10031
8cbb664e
MG
100322001-03-28 Robert Dewar <dewar@gnat.com>
10033
10034 * checks.ads:
10035 (Remove_Checks): New procedure
10036
10037 * checks.adb:
10038 (Remove_Checks): New procedure
10039
10040 * exp_util.adb:
10041 Use new Duplicate_Subexpr functions
10042 (Duplicate_Subexpr_No_Checks): New procedure
10043 (Duplicate_Subexpr_No_Checks_Orig): New procedure
10044 (Duplicate_Subexpr): Restore original form (checks duplicated)
10045 (Duplicate_Subexpr): Call Remove_Checks
10046
82a4b025 10047 * exp_util.ads:
8cbb664e
MG
10048 (Duplicate_Subexpr_No_Checks): New procedure
10049 (Duplicate_Subexpr_No_Checks_Orig): New procedure
10050 Add 2002 to copyright notice
10051
10052 * sem_util.adb: Use new Duplicate_Subexpr functions
10053
82a4b025 10054 * sem_eval.adb:
8cbb664e
MG
10055 (Eval_Indexed_Component): This is the place to call
10056 Constant_Array_Ref and to replace the value. We simply merge
10057 the code of this function in here, since it is now no longer
10058 used elsewhere. This fixes the problem of the back end not
10059 realizing we were clever enough to see that this was
10060 constant.
10061 (Expr_Val): Remove call to Constant_Array_Ref
10062 (Expr_Rep_Val): Remove call to Constant_Array_Ref
10063 Minor reformatting
10064 (Constant_Array_Ref): Deal with string literals (patch
10065 suggested by Zack Weinberg on the gcc list)
10066
100672001-03-28 Ed Schonberg <schonber@gnat.com>
10068
82a4b025 10069 * exp_util.adb: Duplicate_Subexpr_No_Checks_Orig =>
8cbb664e
MG
10070 Duplicate_Subexpr_Move_Checks.
10071
82a4b025 10072 * exp_util.ads: Duplicate_Subexpr_No_Checks_Orig =>
8cbb664e
MG
10073 Duplicate_Subexpr_Move_Checks.
10074
82a4b025
NB
10075 * sem_eval.adb: (Constant_Array_Ref): Verify that constant
10076 value of array exists before retrieving it (it may a private
8cbb664e
MG
10077 protected component in a function).
10078
792c4e74
GB
100792002-03-28 Geert Bosch <bosch@gnat.com>
10080
10081 * prj-pp.adb : New file.
10082
10083 * prj-pp.ads : New file.
10084
915e8bad
AJ
100852002-03-28 Andreas Jaeger <aj@suse.de>
10086
10087 * Makefile.in (stamp-sdefault): Fix path for Makefile.
10088
0840811c
NB
100892002-03-28 Neil Booth <neil@daikokuya.demon.co.uk>
10090
10091 * misc.c (gnat_expand_expr): Move prototype.
10092
7ffb4fd2
NB
100932002-03-27 Neil Booth <neil@daikokuya.demon.co.uk>
10094
10095 * misc.c (insert_default_attributes): Remove.
10096
c9d892a8
NB
100972002-03-27 Neil Booth <neil@daikokuya.demon.co.uk>
10098
10099 * misc.c (LANG_HOOKS_EXPAND_EXPR): Redefine.
10100 (gnat_init): Don't set hook.
10101 (gnat_expand_expr): Fix prototype.
10102
31c816cf
NB
101032002-03-27 Neil Booth <neil@daikokuya.demon.co.uk>
10104
10105 * misc.c (ggc_p): Remove.
10106
ef83161c
GB
101072002-03-27 Geert Bosch <bosch@gnat.com>
10108
10109 * prj-makr.ads, prj-makr.adb : New files.
10110
4f0ade92
NB
101112002-03-26 Neil Booth <neil@daikokuya.demon.co.uk>
10112
10113 * misc.c (LANG_HOOKS_MARK_TREE): Redefine.
10114 (lang_mark_tree): Make static, rename.
10115
c88770e9
NB
101162002-03-25 Neil Booth <neil@daikokuya.demon.co.uk>
10117
10118 * misc.c (maybe_build_cleanup): Remove.
10119
05671968
NB
101202002-03-24 Neil Booth <neil@daikokuya.demon.co.uk>
10121
10122 * gigi.h (yyparse): Remove.
10123
ad42149c
FW
101242002-03-23 Florian Weimer <fw@deneb.enyo.de>
10125
82a4b025 10126 * gnat_rm.texi: Sync with ACT version.
b4f94ac1 10127 (From Ben Brosgol <brosgol@gnat.com>)
ad42149c 10128
7afff7cf
NB
101292002-03-20 Neil Booth <neil@daikokuya.demon.co.uk>
10130
10131 * misc.c (LANG_HOOKS_DECL_PRINTABLE_NAME): Redefine.
10132 (gnat_init): Remove old hook.
10133
52dabb6c
NB
101342002-03-17 Neil Booth <neil@daikokuya.demon.co.uk>
10135
10136 * misc.c (LANG_HOOKS_PARSE_FILE): Redefine.
10137 (yyparse): Rename gnat_parse_file.
10138
6cbcc541
GK
101392002-03-14 Geoffrey Keating <geoffk@redhat.com>
10140
10141 Delete all lines containing "$Revision:".
10142 * xeinfo.adb: Don't look for revision numbers.
10143 * xnmake.adb: Likewise.
10144 * xsinfo.adb: Likewise.
10145 * xsnames.adb: Likewise.
10146 * xtreeprs.adb: Likewise.
10147
2f9834e8
KG
101482002-03-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
10149
10150 * misc.c (gnat_tree_code_type, gnat_tree_code_length,
10151 gnat_tree_code_name): Delete.
10152 (tree_code_type, tree_code_length, tree_code_name): Define.
10153 (gnat_init): Don't try to copy into the various tree_code
10154 arrays.
10155
63adb4ff
RH
101562002-03-11 Richard Henderson <rth@redhat.com>
10157
10158 * Makefile.in (.NOTPARALLEL): Add fake tag.
10159
43ff4547
GB
101602002-03-07 Geert Bosch <bosch@gnat.com>
10161
82a4b025
NB
10162 * adadecode.c, adadecode.h, aux-io.c, s-traces.adb, s-traces.ads,
10163 s-tratas.adb, s-tratas.ads, sinput-d.adb, sinput-d.ads,
10164 switch-b.adb, switch-b.ads, switch-c.adb, switch-c.ads,
43ff4547
GB
10165 switch-m.adb, switch-m.ads : New files.
10166
07fc65c4
GB
101672002-03-07 Geert Bosch <bosch@gnat.com>
10168
10169 * 41intnam.ads, 42intnam.ads, 4aintnam.ads, 4cintnam.ads,
10170 4dintnam.ads, 4gintnam.ads, 4hintnam.ads, 4lintnam.ads,
10171 4mintnam.ads, 4pintnam.ads, 4rintnam.ads, 4sintnam.ads,
10172 4uintnam.ads, 4vcalend.adb, 4zintnam.ads, 52system.ads,
10173 5amastop.adb, 5asystem.ads, 5ataprop.adb, 5atpopsp.adb,
10174 5avxwork.ads, 5bosinte.adb, 5bsystem.ads, 5esystem.ads,
10175 5fsystem.ads, 5ftaprop.adb, 5ginterr.adb, 5gmastop.adb,
10176 5gsystem.ads, 5gtaprop.adb, 5gtasinf.adb, 5gtasinf.ads,
10177 5hparame.ads, 5hsystem.ads, 5htaprop.adb, 5htraceb.adb,
10178 5itaprop.adb, 5ksystem.ads, 5kvxwork.ads, 5lintman.adb,
10179 5lsystem.ads, 5mvxwork.ads, 5ninmaop.adb, 5nosinte.ads,
10180 5ntaprop.adb, 5ointerr.adb, 5omastop.adb, 5oosinte.adb,
10181 5osystem.ads, 5otaprop.adb, 5otaspri.ads, 5pvxwork.ads,
10182 5qtaprop.adb, 5sintman.adb, 5ssystem.ads, 5staprop.adb,
10183 5stpopse.adb, 5svxwork.ads, 5tosinte.ads, 5uintman.adb,
10184 5vasthan.adb, 5vinmaop.adb, 5vinterr.adb, 5vintman.adb,
10185 5vmastop.adb, 5vparame.ads, 5vsystem.ads, 5vtaprop.adb,
10186 5vtpopde.adb, 5wmemory.adb, 5wsystem.ads, 5wtaprop.adb,
10187 5ysystem.ads, 5zinterr.adb, 5zintman.adb, 5zosinte.adb,
10188 5zosinte.ads, 5zsystem.ads, 5ztaprop.adb, 6vcpp.adb, 6vcstrea.adb,
10189 7sintman.adb, 7staprop.adb, 7stpopsp.adb, 9drpc.adb,
10190 Make-lang.in, Makefile.in, a-caldel.adb, a-comlin.ads,
10191 a-dynpri.adb, a-except.adb, a-except.ads, a-finali.adb,
10192 a-ncelfu.ads, a-reatim.adb, a-retide.adb, a-stream.ads,
10193 a-ststio.adb, a-ststio.ads, a-stwifi.adb, a-tags.adb, a-tasatt.adb,
10194 a-textio.adb, a-tideau.adb, a-tiflau.adb, a-tigeau.adb,
10195 a-tigeau.ads, a-tiinau.adb, a-timoau.adb, a-witeio.adb,
10196 a-wtdeau.adb, a-wtenau.adb, a-wtflau.adb, a-wtgeau.adb,
10197 a-wtgeau.ads, a-wtinau.adb, a-wtmoau.adb, ada-tree.def, ada-tree.h,
10198 adaint.c, adaint.h, ali-util.adb, ali.adb, ali.ads, atree.adb,
10199 atree.ads, atree.h, back_end.adb, bcheck.adb, bindgen.adb,
10200 bindusg.adb, checks.adb, comperr.adb, config-lang.in, csets.adb,
10201 csets.ads, cstand.adb, cstreams.c, debug.adb, debug.ads, decl.c,
10202 einfo.adb, einfo.ads, einfo.h, elists.h, errout.adb, errout.ads,
10203 eval_fat.adb, exp_aggr.adb, exp_attr.adb, exp_ch11.adb,
10204 exp_ch12.adb, exp_ch13.adb, exp_ch2.adb, exp_ch3.adb, exp_ch3.ads,
10205 exp_ch4.adb, exp_ch5.adb, exp_ch6.adb, exp_ch7.adb, exp_ch7.ads,
10206 exp_ch9.adb, exp_ch9.ads, exp_dbug.adb, exp_dbug.ads, exp_disp.ads,
10207 exp_dist.adb, exp_fixd.adb, exp_intr.adb, exp_pakd.adb,
10208 exp_prag.adb, exp_strm.adb, exp_util.adb, exp_util.ads,
10209 expander.adb, expect.c, fe.h, fmap.adb, fmap.ads, fname-uf.adb,
10210 freeze.adb, frontend.adb, g-awk.adb, g-cgideb.adb, g-comlin.adb,
10211 g-comlin.ads, g-debpoo.adb, g-dirope.adb, g-dirope.ads,
10212 g-dyntab.adb, g-expect.adb, g-expect.ads, g-io.ads, g-io_aux.adb,
10213 g-io_aux.ads, g-locfil.adb, g-locfil.ads, g-os_lib.adb,
10214 g-os_lib.ads, g-regexp.adb, g-regpat.adb, g-socket.adb,
10215 g-socket.ads, g-spipat.adb, g-table.adb, g-trasym.adb,
10216 g-trasym.ads, gigi.h, gmem.c, gnat1drv.adb, gnatbind.adb, gnatbl.c,
10217 gnatchop.adb, gnatcmd.adb, gnatdll.adb, gnatfind.adb, gnatlbr.adb,
10218 gnatlink.adb, gnatls.adb, gnatmem.adb, gnatprep.adb, gnatvsn.ads,
10219 gnatxref.adb, hlo.adb, hostparm.ads, i-cobol.adb, i-cpp.adb,
10220 i-cstrea.ads, i-cstrin.adb, i-pacdec.adb, i-vxwork.ads,
10221 impunit.adb, init.c, inline.adb, io-aux.c, layout.adb, lib-load.adb,
10222 lib-util.adb, lib-writ.adb, lib-writ.ads, lib-xref.adb,
10223 lib-xref.ads, lib.adb, lib.ads, make.adb, makeusg.adb, mdll.adb,
10224 memroot.adb, misc.c, mlib-tgt.adb, mlib-utl.adb, mlib-utl.ads,
10225 mlib.adb, namet.adb, namet.ads, namet.h, nlists.h, nmake.adb,
10226 nmake.ads, nmake.adt, opt.adb, opt.ads, osint.adb, osint.ads,
10227 output.adb, output.ads, par-ch2.adb, par-ch3.adb, par-ch5.adb,
10228 par-prag.adb, par-tchk.adb, par-util.adb, par.adb, prj-attr.adb,
10229 prj-dect.adb, prj-env.adb, prj-env.ads, prj-nmsc.adb, prj-part.adb,
10230 prj-proc.adb, prj-strt.adb, prj-tree.adb, prj-tree.ads, prj.adb,
10231 prj.ads, raise.c, raise.h, repinfo.adb, restrict.adb, restrict.ads,
10232 rident.ads, rtsfind.adb, rtsfind.ads, s-arit64.adb, s-asthan.adb,
10233 s-atacco.adb, s-atacco.ads, s-auxdec.adb, s-crc32.adb, s-crc32.ads,
10234 s-direio.adb, s-fatgen.adb, s-fileio.adb, s-finimp.adb,
10235 s-gloloc.adb, s-gloloc.ads, s-interr.adb, s-mastop.adb,
10236 s-mastop.ads, s-memory.adb, s-parame.ads, s-parint.adb,
10237 s-pooglo.adb, s-pooloc.adb, s-rpc.adb, s-secsta.adb, s-sequio.adb,
10238 s-shasto.adb, s-soflin.adb, s-soflin.ads, s-stache.adb,
10239 s-taasde.adb, s-taasde.ads, s-tadeca.adb, s-tadeca.ads,
10240 s-tadert.adb, s-tadert.ads, s-taenca.adb, s-taenca.ads,
10241 s-taprob.adb, s-taprop.ads, s-tarest.adb, s-tasdeb.adb,
10242 s-tasini.adb, s-tasini.ads, s-taskin.adb, s-taskin.ads,
10243 s-tasque.adb, s-tasque.ads, s-tasren.adb, s-tasren.ads,
10244 s-tassta.adb, s-tasuti.adb, s-tasuti.ads, s-tataat.adb,
10245 s-tataat.ads, s-tpoben.adb, s-tpoben.ads, s-tpobop.adb,
10246 s-tposen.adb, s-tposen.ads, s-traceb.adb, s-traceb.ads,
10247 s-unstyp.ads, s-widenu.adb, scn-nlit.adb, scn.adb, sem.adb,
10248 sem_aggr.adb, sem_attr.adb, sem_attr.ads, sem_case.adb,
10249 sem_ch10.adb, sem_ch11.adb, sem_ch11.ads, sem_ch12.adb,
10250 sem_ch13.adb, sem_ch13.ads, sem_ch2.adb, sem_ch3.adb, sem_ch3.ads,
10251 sem_ch4.adb, sem_ch5.adb, sem_ch6.adb, sem_ch6.ads, sem_ch7.adb,
10252 sem_ch8.adb, sem_ch8.ads, sem_ch9.adb, sem_disp.adb, sem_dist.adb,
10253 sem_elab.adb, sem_elim.adb, sem_elim.ads, sem_eval.adb,
10254 sem_intr.adb, sem_mech.adb, sem_prag.adb, sem_res.adb,
10255 sem_type.adb, sem_util.adb, sem_util.ads, sem_vfpt.adb,
10256 sem_warn.adb, sinfo.adb, sinfo.ads, sinfo.h, sinput-l.adb,
10257 sinput-l.ads, sinput.adb, sinput.ads, snames.adb, snames.ads,
10258 snames.h, sprint.adb, sprint.ads, stringt.adb, stringt.ads,
10259 stringt.h, style.adb, switch.adb, switch.ads, sysdep.c, system.ads,
10260 table.adb, targparm.adb, targparm.ads, targtyps.c, tbuild.adb,
10261 tbuild.ads, tracebak.c, trans.c, tree_gen.adb, tree_io.adb,
10262 treepr.adb, treepr.ads, treeprs.ads, treeprs.adt, ttypes.ads,
10263 types.adb, types.ads, types.h, uintp.ads, urealp.ads, usage.adb,
10264 utils.c, utils2.c, validsw.adb, xnmake.adb, xr_tabls.adb,
10265 xr_tabls.ads, xref_lib.adb, xref_lib.ads : Merge in ACT changes.
10266
10267 * 1ssecsta.adb, 1ssecsta.ads, a-chlat9.ads, a-cwila9.ads,
10268 g-enblsp.adb, g-md5.adb, g-md5.ads, gnatname.adb, gnatname.ads,
10269 mkdir.c, osint-b.adb, osint-b.ads, osint-c.adb, osint-c.ads,
10270 osint-l.adb, osint-l.ads, osint-m.adb, osint-m.ads : New files
10271
10272 * 3lsoccon.ads, 5qparame.ads, 5qvxwork.ads, 5smastop.adb,
10273 5zparame.ads, gnatmain.adb, gnatmain.ads, gnatpsys.adb : Removed
10274
10275 * mdllfile.adb, mdllfile.ads, mdlltool.adb, mdlltool.ads : Renamed
10276 to mdll-fil.ad[bs] and mdll-util.ad[bs]
10277
10278 * mdll-fil.adb, mdll-fil.ads, mdll-utl.adb, mdll-utl.ads : Renamed
10279 from mdllfile.ad[bs] and mdlltool.ad[bs]
10280
ca7558fc
KG
102812002-03-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
10282
10283 * utils.c (init_gnat_to_gnu, init_gigi_decls): Use ARRAY_SIZE in
10284 lieu of explicit sizeof/sizeof.
10285
63e1b1c4
NB
102862002-02-28 Neil Booth <neil@daikokuya.demon.co.uk>
10287
10288 * misc.c (copy_lang_decl): Remove.
10289
f458d1d5
ZW
102902002-02-27 Zack Weinberg <zack@codesourcery.com>
10291
10292 * misc.c: Delete traditional-mode-related code copied from the
10293 C front end but not used, or used only to permit the compiler
10294 to link.
10295
21e09952
RH
102962002-02-07 Richard Henderson <rth@redhat.com>
10297
10298 * adaint.c (__gnat_to_gm_time): First arg is int, not time_t.
10299 * adaint.h (__gnat_to_gm_time): Update prototype.
10300
ead39bdf 103012002-01-30 Richard Henderson <rth@redhat.com>
e803a64b
RH
10302
10303 * trans.c (tree_transform) [N_Loop_Statement]: Use
10304 expand_exit_loop_top_cond.
10305
72ac12bf
RH
103062001-12-23 Richard Henderson <rth@redhat.com>
10307
10308 * utils.c (end_subprog_body): Push GC context around
10309 rest_of_compilation for nested functions.
10310
14aacce7
RH
103112001-12-23 Richard Henderson <rth@redhat.com>
10312
10313 * 5nosinte.ads: Get definition of "int" from Interfaces.C.
10314
b3d45d87
FW
103152001-12-23 Florian Weimer <fw@deneb.enyo.de>
10316
ece2d1b8
FW
10317 * gnat-style.texi (Declarations and Types): Remove ancient style
10318 rule which was mandated by code generation issues.
82a4b025 10319
b3d45d87
FW
10320 * gnat-style.texi (header): Add @dircategory, @direntry.
10321 (title page): Remove date.
10322 (general) Add @./@: where approriate, and two spaces after the
10323 full stop at the end of a sentence. Use @samp markup when
10324 referring concrete lexical entities (keywords, attribute names
10325 etc.), and @syntax for ARM grammar elements. Use @r for English
10326 text in comments. Use @emph for emphasis. Change "if-statements"
10327 etc. to "if statements" (without @samp). Break long lines. Make
10328 casing of section names consistent.
10329 (Identifiers): Use @samp markup for variable names.
10330 (Comments): Use @samp markup for comment characters. Line-end
10331 comments may follow any Ada code, not just statements. Fix
10332 misspelling of "Integer" as "integer".
10333 (Loop statements): Do not use variable name "I", use "J".
10334 (Subprogram Declarations): Document alignment.
10335 (Subprogram Bodies, Block statements): Document empty line before
10336 "begin".
10337
7a73ad55
FW
103382001-12-22 Florian Weimer <fw@deneb.enyo.de>
10339
10340 * make.adb (Add_Switch): Make Generic_Position a procedure. The
10341 function approach did not work well because of a side effect (the
10342 function call could reallocate the table which was being indexed
10343 using its result). Fixes ada/4851.
10344
17c5c8a5
GB
103452001-12-19 Robert Dewar <dewar@gnat.com>
10346
10347 * bindgen.adb: Minor reformatting
82a4b025 10348
17c5c8a5 10349 * cstand.adb: Minor reformatting
82a4b025 10350
17c5c8a5
GB
10351 * fmap.adb: Minor reformatting
10352 Change name from Add for Add_To_File_Map (Add is much too generic)
10353 Change Path_Name_Of to Mapped_Path_Name
10354 Change File_Name_Of to Mapped_File_Name
10355 Fix copyright dates in header
82a4b025 10356
17c5c8a5
GB
10357 * fmap.ads:
10358 Change name from Add for Add_To_File_Map (Add is much too generic)
10359 Change Path_Name_Of to Mapped_Path_Name
10360 Change File_Name_Of to Mapped_File_Name
10361 Fix copyright dates in header
82a4b025 10362
17c5c8a5
GB
10363 * fname-uf.adb: Minor reformatting. New names of stuff in Fmap.
10364 Add use clause for Fmap.
82a4b025 10365
17c5c8a5 10366 * make.adb: Minor reformatting
82a4b025 10367
17c5c8a5
GB
10368 * osint.adb: Minor reformatting. Change of names in Fmap.
10369 Add use clause for Fmap.
82a4b025 10370
17c5c8a5 10371 * prj-env.adb: Minor reformatting
82a4b025 10372
17c5c8a5 10373 * prj-env.ads: Minor reformatting
82a4b025 10374
07fc65c4
GB
10375 * switch.adb: Minor reformatting. Do proper raise of Bad_Switch if
10376 error found (there were odd exceptions to this general rule in
17c5c8a5 10377 -gnatec/-gnatem processing)
82a4b025 10378
17c5c8a5
GB
103792001-12-19 Olivier Hainque <hainque@gnat.com>
10380
07fc65c4
GB
10381 * raise.c (__gnat_eh_personality): Exception handling personality
10382 routine for Ada. Still in rough state, inspired from the C++ version
17c5c8a5 10383 and still containing a bunch of debugging artifacts.
07fc65c4 10384 (parse_lsda_header, get_ttype_entry): Local (static) helpers, also
17c5c8a5 10385 inspired from the C++ library.
82a4b025 10386
07fc65c4 10387 * raise.c (eh_personality): Add comments. Part of work for the GCC 3
17c5c8a5 10388 exception handling integration.
82a4b025 10389
17c5c8a5
GB
103902001-12-19 Arnaud Charlet <charlet@gnat.com>
10391
10392 * Makefile.in: Remove use of 5smastop.adb which is obsolete.
10393 (HIE_SOURCES): Add s-secsta.ad{s,b}.
10394 (HIE_OBJS): Add s-fat*.o
07fc65c4 10395 (RAVEN_SOURCES): Remove files that are no longer required. Add
17c5c8a5
GB
10396 interrupt handling files.
10397 (RAVEN_MOD): Removed, no longer needed.
82a4b025 10398
17c5c8a5
GB
103992001-12-19 Robert Dewar <dewar@gnat.com>
10400
10401 * a-ngelfu.adb: Remove ??? comment for inappropriate Inline_Always
10402 Add 2001 to copyright date
82a4b025 10403
07fc65c4 10404 * g-regpat.adb: Change pragma Inline_Always to Inline. There is no
17c5c8a5 10405 need to force universal inlining for these cases.
82a4b025 10406
17c5c8a5
GB
104072001-12-19 Arnaud Charlet <charlet@gnat.com>
10408
07fc65c4 10409 * s-taprob.adb: Minor clean ups so that this unit can be used in
17c5c8a5 10410 Ravenscar HI.
82a4b025 10411
17c5c8a5
GB
10412 * exp_ch7.adb: Allow use of secondary stack in HI mode.
10413 Disallow it when pragma Restrictions (No_Secondary_Stack) is specified.
82a4b025 10414
17c5c8a5
GB
104152001-12-19 Vincent Celier <celier@gnat.com>
10416
07fc65c4 10417 * prj-tree.ads (Project_Node_Record): Add comments for components
17c5c8a5 10418 Pkg_Id and Case_Insensitive.
82a4b025 10419
17c5c8a5
GB
104202001-12-19 Pascal Obry <obry@gnat.com>
10421
10422 * g-socket.adb: Minor reformatting. Found while reading code.
82a4b025 10423
17c5c8a5
GB
104242001-12-19 Robert Dewar <dewar@gnat.com>
10425
10426 * prj-tree.ads: Minor reformatting
10427
38be19f6
JM
104282001-12-20 Joseph S. Myers <jsm28@cam.ac.uk>
10429
10430 * config-lang.in (diff_excludes): Remove.
10431
6510f4c9
GB
104322001-12-17 Ed Schonberg <schonber@gnat.com>
10433
07fc65c4
GB
10434 * sem_res.adb (Resolve_Selected_Component): do not generate a
10435 discriminant check if the selected component is a component of
6510f4c9
GB
10436 the argument of an initialization procedure.
10437
07fc65c4
GB
10438 * trans.c (tree_transform, case of arithmetic operators): If result
10439 type is private, the gnu_type is the base type of the full view,
6510f4c9 10440 given that the full view itself may be a subtype.
82a4b025 10441
6510f4c9
GB
104422001-12-17 Robert Dewar <dewar@gnat.com>
10443
10444 * sem_res.adb: Minor reformatting
82a4b025 10445
07fc65c4
GB
10446 * trans.c (tree_transform, case N_Real_Literal): Add missing third
10447 parameter in call to Machine (unknown horrible effects from this
6510f4c9 10448 omission).
82a4b025 10449
6510f4c9
GB
10450 * urealp.h: Add definition of Round_Even for call to Machine
10451 Add third parameter for Machine
82a4b025 10452
6510f4c9
GB
104532001-12-17 Ed Schonberg <schonber@gnat.com>
10454
07fc65c4 10455 * sem_warn.adb (Check_One_Unit): Suppress warnings completely on
6510f4c9 10456 predefined units in No_Run_Time mode.
82a4b025 10457
6510f4c9
GB
104582001-12-17 Richard Kenner <kenner@gnat.com>
10459
10460 * misc.c (insn-codes.h): Now include.
82a4b025 10461
6510f4c9
GB
104622001-12-17 Olivier Hainque <hainque@gnat.com>
10463
07fc65c4 10464 * a-except.adb: Preparation work for future integration of the GCC 3
6510f4c9
GB
10465 exception handling mechanism
10466 (Notify_Handled_Exception, Notify_Unhandled_Exception): New routines
10467 to factorize previous code sequences and make them externally callable,
10468 e.g. for the Ada personality routine when the GCC 3 mechanism is used.
10469 (Propagate_Exception, Raise_Current_Excep, Raise_From_Signal_Handler):
10470 Use the new notification routines.
82a4b025 10471
6510f4c9
GB
104722001-12-17 Emmanuel Briot <briot@gnat.com>
10473
10474 * prj-tree.ads (First_Choice_Of): Document the when others case
82a4b025 10475
6510f4c9
GB
104762001-12-17 Arnaud Charlet <charlet@gnat.com>
10477
07fc65c4 10478 * bindgen.adb (Gen_Ada_Init_*): Set priority of environment task in
6510f4c9 10479 HI-E mode, in order to support Ravenscar profile properly.
82a4b025 10480
07fc65c4 10481 * cstand.adb (Create_Standard): Duration is a 32 bit type in HI-E
6510f4c9 10482 mode on 32 bits targets.
82a4b025 10483
6510f4c9
GB
104842001-12-17 Vincent Celier <celier@gnat.com>
10485
10486 * fmap.adb: Initial version.
82a4b025 10487
6510f4c9 10488 * fmap.ads: Initial version.
82a4b025 10489
6510f4c9
GB
10490 * fname-uf.adb (Get_File_Name): Use mapping if unit name mapped.
10491 If search is successfully done, add to mapping.
82a4b025 10492
6510f4c9 10493 * frontend.adb: Initialize the mapping if a -gnatem switch was used.
82a4b025 10494
6510f4c9
GB
10495 * make.adb:
10496 (Gnatmake): Add new local variable Mapping_File_Name.
10497 Create mapping file when using project file(s).
10498 Delete mapping file before exiting.
82a4b025 10499
6510f4c9 10500 * opt.ads (Mapping_File_Name): New variable
82a4b025 10501
6510f4c9 10502 * osint.adb (Find_File): Use path name found in mapping, if any.
82a4b025 10503
6510f4c9 10504 * prj-env.adb (Create_Mapping_File): New procedure
82a4b025 10505
6510f4c9 10506 * prj-env.ads (Create_Mapping_File): New procedure.
82a4b025 10507
07fc65c4 10508 * switch.adb (Scan_Front_End_Switches): Add processing for -gnatem
6510f4c9 10509 (Mapping_File)
82a4b025 10510
6510f4c9 10511 * usage.adb: Add entry for new switch -gnatem.
82a4b025 10512
6510f4c9 10513 * Makefile.in: Add dependencies for fmap.o.
82a4b025 10514
6510f4c9
GB
105152001-12-17 Ed Schonberg <schonber@gnat.com>
10516
07fc65c4 10517 * sem_ch10.adb (Analyze_With_Clause): Retrieve proper entity when unit
6510f4c9
GB
10518 is a package instantiation rewritten as a package body.
10519 (Install_Withed_Unit): Undo previous change, now redundant.
82a4b025 10520
6510f4c9
GB
105212001-12-17 Gary Dismukes <dismukes@gnat.com>
10522
10523 * layout.adb:
10524 (Compute_Length): Move conversion to Unsigned to callers.
10525 (Get_Max_Size): Convert Len expression to Unsigned after calls to
10526 Compute_Length and Determine_Range.
10527 (Layout_Array_Type): Convert Len expression to Unsigned after calls to
10528 Compute_Length and Determine_Range.
10529 Above changes fix problem with length computation for supernull arrays
07fc65c4 10530 where Max (Len, 0) wasn't getting applied due to the Unsigned
6510f4c9 10531 conversion used by Compute_Length.
82a4b025 10532
6510f4c9
GB
105332001-12-17 Arnaud Charlet <charlet@gnat.com>
10534
10535 * rtsfind.ads:
10536 (OK_To_Use_In_No_Run_Time_Mode): Allow Ada.Exceptions and
10537 System.Secondary_Stack.
10538 (OK_To_Use_In_Ravenscar_Mode): New table needed to implement Ravenscar
10539 in HI-E mode.
10540 Remove unused entity RE_Exception_Data.
82a4b025 10541
6510f4c9 10542 * rtsfind.adb (RTE): Allow Ravenscar Profile in HI mode.
82a4b025 10543
6510f4c9
GB
10544 * rident.ads (No_Secondary_Stack): New restriction.
10545
3a77b68d
GB
105462001-12-17 Joel Brobecker <brobecke@gnat.com>
10547
07fc65c4 10548 * gnat_rm.texi: Fix minor typos. Found while reading the section
3a77b68d
GB
10549 regarding "Bit_Order Clauses" that was sent to a customer.
10550 Very interesting documentation!
82a4b025 10551
3a77b68d
GB
105522001-12-17 Robert Dewar <dewar@gnat.com>
10553
07fc65c4
GB
10554 * sem_case.adb (Choice_Image): Avoid creating improper character
10555 literal names by using the routine Set_Character_Literal_Name. This
3a77b68d 10556 fixes bombs in certain error message cases.
82a4b025 10557
3a77b68d
GB
105582001-12-17 Arnaud Charlet <charlet@gnat.com>
10559
10560 * a-reatim.adb: Minor reformatting.
82a4b025 10561
3a77b68d
GB
105622001-12-17 Ed Schonberg <schonber@gnat.com>
10563
07fc65c4
GB
10564 * sem_ch12.adb (Validate_Derived_Type_Instance): Handle properly the
10565 case where the formal is an extension of another formal in the current
3a77b68d 10566 unit or in a parent generic unit.
82a4b025 10567
3a77b68d
GB
105682001-12-17 Arnaud Charlet <charlet@gnat.com>
10569
07fc65c4 10570 * s-tposen.adb: Update comments. Minor reformatting.
3a77b68d 10571 Minor code clean up.
82a4b025 10572
3a77b68d 10573 * s-tarest.adb: Update comments. Minor code reorganization.
82a4b025 10574
3a77b68d
GB
105752001-12-17 Gary Dismukes <dismukes@gnat.com>
10576
07fc65c4 10577 * exp_attr.adb (Attribute_Tag): Suppress expansion of <type_name>'Tag
3a77b68d 10578 when Java_VM.
82a4b025 10579
3a77b68d
GB
105802001-12-17 Robert Dewar <dewar@gnat.com>
10581
10582 * exp_attr.adb: Minor reformatting
82a4b025 10583
3a77b68d
GB
105842001-12-17 Ed Schonberg <schonber@gnat.com>
10585
07fc65c4 10586 * sem_ch3.adb (Build_Derived_Private_Type): Refine check to handle
3a77b68d
GB
10587 derivations nested within a child unit: verify that the parent
10588 type is declared in an outer scope.
82a4b025 10589
3a77b68d
GB
105902001-12-17 Robert Dewar <dewar@gnat.com>
10591
10592 * sem_ch12.adb: Minor reformatting
82a4b025 10593
3a77b68d
GB
105942001-12-17 Ed Schonberg <schonber@gnat.com>
10595
07fc65c4
GB
10596 * sem_warn.adb (Check_One_Unit): In No_Run_Time mode, do not post
10597 warning if current unit is a predefined one, from which bodies may
3a77b68d 10598 have been deleted.
82a4b025 10599
3a77b68d
GB
106002001-12-17 Robert Dewar <dewar@gnat.com>
10601
10602 * eval_fat.ads: Add comment that Round_Even is referenced in Ada code
10603 Fix header format. Add 2001 to copyright date.
82a4b025 10604
07fc65c4 10605 * exp_dbug.adb (Get_Encoded_Name): Fix out of bounds reference,
3a77b68d
GB
10606 which caused CE during compilation if checks were enabled.
10607
79503fdd
GB
106082001-12-17 Vincent Celier <celier@gnat.com>
10609
10610 * make.adb:
10611 (Switches_Of): New function
10612 (Test_If_Relative_Path): New procedure
10613 (Add_Switches): Use new function Switches_Of
10614 (Collect_Arguments_And_Compile): Use new function Switches_Of.
10615 When using a project file, test if there are any relative
10616 search path. Fail if there are any.
07fc65c4
GB
10617 (Gnatmake): Only add switches for the primary directory when not using
10618 a project file. When using a project file, change directory to the
10619 object directory of the main project file. When using a project file,
10620 test if there are any relative search path. Fail if there are any.
10621 When using a project file, fail if specified executable is relative
10622 path with directory information, and prepend executable, if not
10623 specified as an absolute path, with the exec directory. Make sure
79503fdd 10624 that only one -o switch is transmitted to the linker.
82a4b025 10625
79503fdd 10626 * prj-attr.adb (Initialization_Data): Add project attribute Exec_Dir
82a4b025 10627
79503fdd
GB
10628 * prj-nmsc.adb:
10629 (Ada_Check): Get Spec_Suffix_Loc and Impl_Suffix_Loc,
10630 when using a non standard naming scheme.
10631 (Check_Ada_Naming_Scheme): Make sure that error messages
10632 do not raise exceptions.
10633 (Is_Illegal_Append): Return True if there is no dot in the suffix.
10634 (Language_Independent_Check): Check the exec directory.
82a4b025 10635
79503fdd 10636 * prj.adb (Project_Empty): Add new component Exec_Directory
82a4b025 10637
79503fdd
GB
10638 * prj.ads:
10639 (Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Add defaults.
10640 (Project_Data): Add component Exec_Directory
82a4b025 10641
79503fdd 10642 * snames.adb: Updated to match snames.ads revision 1.215
82a4b025 10643
79503fdd 10644 * snames.ads: Added Exec_Dir
82a4b025 10645
79503fdd
GB
106462001-12-17 Robert Dewar <dewar@gnat.com>
10647
10648 * make.adb: Minor reformatting
82a4b025 10649
79503fdd 10650 * prj-nmsc.adb: Minor reformatting
82a4b025 10651
79503fdd 10652 * snames.adb: Updated to match snames.ads
82a4b025 10653
79503fdd
GB
10654 * snames.ads: Alphebetize entries for project file
10655
106562001-12-17 Ed Schonberg <schonber@gnat.com>
10657
07fc65c4 10658 * trans.c (process_freeze_entity): Do nothing if the entity is a
79503fdd 10659 subprogram that was already elaborated.
82a4b025 10660
79503fdd 106612001-12-17 Richard Kenner <kenner@gnat.com>
82a4b025 10662
07fc65c4 10663 * decl.c (gnat_to_gnu_entity, object): Do not back-annotate Alignment
79503fdd
GB
10664 and Esize if object is referenced via pointer.
10665
855ff2e1
GB
106662001-12-17 Ed Schonberg <schonber@gnat.com>
10667
07fc65c4 10668 * sem_ch3.adb (Analyze_Variant_Part): check that type of discriminant
855ff2e1 10669 is discrete before analyzing choices.
82a4b025 10670
855ff2e1
GB
106712001-12-17 Joel Brobecker <brobecke@gnat.com>
10672
07fc65c4
GB
10673 * bindgen.adb (Gen_Output_File_Ada): Generate a new C-like string
10674 containing the name of the Ada Main Program. This string is mainly
855ff2e1
GB
10675 intended for the debugger.
10676 (Gen_Output_File_C): Do the equivalent change when generating a C file.
82a4b025 10677
855ff2e1
GB
106782001-12-17 Robert Dewar <dewar@gnat.com>
10679
10680 * ali.adb: Set new Dummy_Entry field in dependency entry
82a4b025 10681
855ff2e1 10682 * ali.ads: Add Dummy_Entry field to source dependency table
82a4b025 10683
855ff2e1 10684 * bcheck.adb (Check_Consistency): Ignore dummy D lines
82a4b025 10685
855ff2e1 10686 * lib-writ.adb (Writ_ALI): Write dummy D lines for missing source files
82a4b025 10687
855ff2e1 10688 * lib-writ.ads: Document dummy D lines for missing files.
82a4b025 10689
855ff2e1
GB
10690 * types.ads: (Dummy_Time_Stamp): New value for non-existant files
10691
c1c22e7a
GB
106922001-12-17 Robert Dewar <dewar@gnat.com>
10693
10694 * ali.adb: Type reference does not reset current file.
82a4b025 10695
c1c22e7a 10696 * ali.adb: Recognize and scan renaming reference
82a4b025 10697
c1c22e7a 10698 * ali.ads: Add spec for storing renaming references.
82a4b025 10699
c1c22e7a 10700 * lib-xref.ads: Add documentation for handling of renaming references
82a4b025 10701
c1c22e7a 10702 * lib-xref.adb: Implement output of renaming reference.
82a4b025 10703
c1c22e7a
GB
10704 * checks.adb:
10705 (Determine_Range): Document local variables
10706 (Determine_Range): Make sure Hbound is initialized. It looks as though
10707 there could be a real problem here with an uninitialized reference
10708 to Hbound, but no actual example of failure has been found.
82a4b025 10709
c1c22e7a
GB
107102001-12-17 Laurent Pautet <pautet@gnat.com>
10711
10712 * g-socket.ads:
10713 Fix comment of Shutdown_Socket and Close_Socket. These functions
10714 should not fail silently because if they are called twice, this
10715 probably means that there is a race condition in the user program.
10716 Anyway, this behaviour is consistent with the rest of this unit.
10717 When an error occurs, an exception is raised with the error message
10718 as exception message.
10719
7eb7bb07
RD
107202001-12-17 Robert Dewar <dewar@gnat.com>
10721
07fc65c4 10722 * frontend.adb: Move call to Check_Unused_Withs from Frontend, so
7eb7bb07 10723 that it happens before modification of Sloc values for -gnatD.
82a4b025 10724
07fc65c4 10725 * gnat1drv.adb: Move call to Check_Unused_Withs to Frontend,
7eb7bb07 10726 so that it happens before modification of Sloc values for -gnatD.
82a4b025 10727
7eb7bb07
RD
10728 * switch.adb: Minor reformatting
10729
b6434700
RH
107302001-12-15 Richard Henderson <rth@redhat.com>
10731
10732 * sem_ch7.adb: Wrap comment.
10733
44d6a706
JM
107342001-12-16 Joseph S. Myers <jsm28@cam.ac.uk>
10735
10736 * 5ataprop.adb, 5atpopsp.adb, 5ftaprop.adb, 5gmastop.adb,
10737 5gtaprop.adb, 5htaprop.adb, 5itaprop.adb, 5lintman.adb,
10738 5omastop.adb, 5oosinte.adb, 5otaprop.adb, 5staprop.adb,
10739 5vinterr.adb, 5vtaprop.adb, 5vtpopde.adb, 5wintman.adb,
10740 5wtaprop.adb, 5zinterr.adb, 5ztaprop.adb, 6vcstrea.adb,
10741 7sintman.adb, 7staprop.adb, 9drpc.adb, ChangeLog, Makefile.in,
10742 a-except.adb, a-tags.ads, a-tasatt.adb, a-teioed.adb,
10743 a-textio.ads, a-witeio.ads, a-wtedit.adb, ali.ads, comperr.adb,
10744 cstand.adb, einfo.ads, errout.adb, exp_ch11.adb, exp_ch2.adb,
10745 exp_ch3.adb, exp_ch4.adb, exp_ch5.adb, exp_ch6.adb, exp_ch9.adb,
10746 exp_util.adb, exp_util.ads, fname-uf.adb, g-cgi.ads, g-exctra.ads,
10747 g-expect.ads, g-regist.adb, g-spipat.adb, gnatchop.adb,
10748 gnatlink.adb, gnatls.adb, gnatmain.adb, gnatmem.adb, init.c,
10749 make.adb, make.ads, mdlltool.adb, nlists.ads, osint.ads,
10750 par-ch3.adb, par-ch4.adb, par-ch5.adb, par-ch6.adb, par.adb,
10751 repinfo.adb, s-fatflt.ads, s-fatlfl.ads, s-fatllf.ads,
10752 s-fatsfl.ads, s-finimp.adb, s-finimp.ads, s-interr.adb,
10753 s-secsta.ads, s-shasto.ads, s-stalib.adb, s-stalib.ads,
10754 s-tarest.ads, s-tasdeb.adb, s-tassta.adb, s-tassta.ads,
10755 s-vaflop.ads, scans.ads, scn.adb, sem.ads, sem_aggr.adb,
10756 sem_attr.adb, sem_case.ads, sem_ch10.adb, sem_ch12.adb,
10757 sem_ch13.adb, sem_ch3.adb, sem_ch3.ads, sem_ch5.adb, sem_ch7.adb,
10758 sem_ch8.adb, sem_ch8.ads, sem_type.adb, sem_util.ads, sinfo.ads,
10759 sprint.adb, tbuild.ads, types.ads, utils.c, xeinfo.adb: Fix
10760 spelling errors.
10761
226ada7a
GB
107622001-12-14 Vincent Celier <celier@gnat.com>
10763
07fc65c4 10764 * osint.adb(Create_Debug_File): When an object file is specified,
226ada7a 10765 put the .dg file in the same directory as the object file.
82a4b025 10766
226ada7a
GB
107672001-12-14 Robert Dewar <dewar@gnat.com>
10768
10769 * osint.adb: Minor reformatting
82a4b025 10770
07fc65c4 10771 * lib-xref.adb (Output_Instantiation): New procedure to generate
226ada7a 10772 instantiation references.
82a4b025 10773
226ada7a 10774 * lib-xref.ads: Add documentation of handling of generic references.
82a4b025 10775
07fc65c4 10776 * ali.adb (Read_Instantiation_Ref): New procedure to read
226ada7a 10777 instantiation references
82a4b025 10778
226ada7a 10779 * ali.ads: Add spec for storing instantiation references
82a4b025 10780
226ada7a 10781 * bindusg.adb: Minor reformatting
82a4b025 10782
226ada7a 10783 * switch.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
82a4b025 10784
226ada7a 10785 * usage.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
82a4b025 10786
226ada7a 10787 * gnatcmd.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
82a4b025 10788
226ada7a 10789 * csets.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
82a4b025 10790
226ada7a
GB
10791 * csets.ads:
10792 Fix header format
10793 Add 2001 to copyright date
10794 Add entry for Latin-5 (Cyrillic ISO-8859-5)
82a4b025 10795
226ada7a
GB
107962001-12-14 Matt Gingell <gingell@gnat.com>
10797
07fc65c4 10798 * adaint.c: mktemp is a macro on Lynx and can not be used as an
226ada7a 10799 expression.
82a4b025 10800
226ada7a
GB
108012001-12-14 Richard Kenner <kenner@gnat.com>
10802
07fc65c4 10803 * misc.c (gnat_expand_constant): Do not strip UNCHECKED_CONVERT_EXPR
226ada7a 10804 if operand is CONSTRUCTOR.
82a4b025 10805
226ada7a
GB
108062001-12-14 Ed Schonberg <schonber@gnat.com>
10807
07fc65c4
GB
10808 * trans.c (tree_transform, case N_Assignment_Statement): Set lineno
10809 before emiting check on right-hand side, so that exception information
226ada7a
GB
10810 is correct.
10811
108122001-12-14 Richard Kenner <kenner@gnat.com>
82a4b025 10813
07fc65c4 10814 * utils.c (create_var_decl): Throw away initializing expression
226ada7a 10815 if just annotating types and non-constant.
82a4b025 10816
226ada7a
GB
108172001-12-14 Vincent Celier <celier@gnat.com>
10818
10819 * prj-nmsc.adb: (Ada_Check): Migrate drom Ada_Default_... to
10820 Default_Ada_...
82a4b025 10821
07fc65c4 10822 * prj.adb: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
226ada7a
GB
10823 Remove functions.
10824 (Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Move to spec.
82a4b025 10825
07fc65c4 10826 * prj.ads: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
226ada7a
GB
10827 Remove functions.
10828 (Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Move from body.
10829
9b94bf9e
JM
108302001-12-16 Joseph S. Myers <jsm28@cam.ac.uk>
10831
10832 * ChangeLog: Remove piece of diff output.
10833
449d2be3
GB
108342001-12-14 Geert Bosch <bosch@gnat.com>
10835
10836 * config-lang.in: Update copyright notice
10837
10838 * layout.adb: Remove commented out code.
10839
10840 * mdllfile.ads: Update copyright notice. Fix header format.
10841
10842 * sem_case.ads: Likewise.
10843
10844 * sem_ch3.adb: Minor reformatting.
10845
e5bd5cb4
GB
108462001-12-12 Geert Bosch <bosch@gnat.com>
10847
10848 * freeze.ads: Update copyright date.
10849
10850 * g-comlin.ads: Minor reformatting.
10851
10852 * gnat-style.texi: Fix typo.
10853
b468d8ec
GB
108542001-12-12 Geert Bosch <bosch@gnat.com>
10855
10856 * einfo.h: Regenerate.
10857
ed7da216
GB
108582001-12-12 Ed Schonberg <schonber@gnat.com>
10859
07fc65c4 10860 * sem_ch12.adb (Save_Entity_Descendant): Use syntactic field names
ed7da216 10861 on known node types, rather than untyped fields. Further cleanups.
82a4b025 10862
ed7da216
GB
108632001-12-12 Robert Dewar <dewar@gnat.com>
10864
10865 * sem_ch12.adb:
10866 (Save_Entity_Descendant): Minor comment update.
10867 (Copy_Generic_Node): Deal with incorrect reference to Associated_Node
07fc65c4 10868 of an N_Attribute_Reference node. As per note below, this does not
ed7da216 10869 eliminate need for Associated_Node in attribute ref nodes.
07fc65c4 10870 (Associated_Node): Documentation explicitly mentions attribute
ed7da216 10871 reference nodes, since this field is used in such nodes.
82a4b025 10872
ed7da216
GB
10873 * sem_ch12.adb (Associated_Node): Minor documentation cleanup.
10874
de76a39c
GB
108752001-12-12 Robert Dewar <dewar@gnat.com>
10876
10877 * s-stalib.adb: Add more comments on with statements being needed
82a4b025 10878
de76a39c 10879 * par-ch12.adb: Minor reformatting
82a4b025 10880
de76a39c 10881 * prj-dect.ads: Fix copyright header
82a4b025 10882
07fc65c4 10883 * s-arit64.adb (Multiply_With_Ovflo_Check): Fix case where both
de76a39c 10884 inputs fit in 32 bits, but the result still overflows.
82a4b025 10885
de76a39c 10886 * s-fatgen.ads: Minor comment improvement
82a4b025 10887
de76a39c
GB
108882001-12-12 Ed Schonberg <schonber@gnat.com>
10889
07fc65c4
GB
10890 * sem_ch4.adb (Analyze_Selected_Component): If the prefix is of a
10891 formal derived type, look for an inherited component from the full
de76a39c 10892 view of the parent, if any.
82a4b025 10893
de76a39c
GB
108942001-12-12 Robert Dewar <dewar@gnat.com>
10895
10896 * checks.ads (Apply_Alignment_Check): New procedure.
82a4b025 10897
07fc65c4
GB
10898 * exp_ch13.adb (Expand_N_Freeze_Entity): Generate dynamic check to
10899 ensure that the alignment of objects with address clauses is
de76a39c
GB
10900 appropriate, and raise PE if not.
10901
07fc65c4 10902 * exp_util.ads (Must_Be_Aligned): Removed, replaced by
de76a39c 10903 Exp_Pakd.Known_Aligned_Enough
82a4b025 10904
de76a39c
GB
10905 * mdllfile.ads: Minor reformatting
10906
10907 * mlib-fil.ads: Minor reformatting
82a4b025 10908
de76a39c
GB
109092001-12-12 Ed Schonberg <schonber@gnat.com>
10910
07fc65c4
GB
10911 * exp_ch8.adb (Expand_N_Object_Renaming_Declaration): Extend previous
10912 fix to any component reference if enclosing record has non-standard
de76a39c 10913 representation.
82a4b025 10914
de76a39c
GB
109152001-12-12 Vincent Celier <celier@gnat.com>
10916
07fc65c4 10917 * g-dirope.ads (Find, Wildcard_Iterator): Moved to child package
de76a39c 10918 Iteration
82a4b025 10919
de76a39c
GB
109202001-12-12 Ed Schonberg <schonber@gnat.com>
10921
07fc65c4 10922 * freeze.ads: Make Freeze_Fixed_Point_Type visible, for use in
de76a39c 10923 sem_attr.
82a4b025 10924
de76a39c
GB
109252001-12-12 Robert Dewar <dewar@gnat.com>
10926
10927 * impunit.adb: Add entry for GNAT.Directory_Operations.Iteration
82a4b025 10928
de76a39c
GB
109292001-12-12 Emmanuel Briot <briot@gnat.com>
10930
10931 * g-regexp.adb: Remove all debug code, since it isn't required anymore,
10932 and it adds dependencies to system.io.
82a4b025 10933
de76a39c
GB
109342001-12-12 Pascal Obry <obry@gnat.com>
10935
07fc65c4 10936 * g-dirope.adb (Expand_Path.Var): Correctly detect end of
de76a39c
GB
10937 variable name.
10938
0b09835f
ES
109392001-12-11 Ed Schonberg <schonber@gnat.com>
10940
10941 * sem_ch10.adb (Install_Withed_Unit): If the unit is a generic instance
07fc65c4
GB
10942 that is the parent of other generics, the instance body replaces the
10943 instance node. Retrieve the instance of the spec, which is the one
0b09835f
ES
10944 that is visible in clients and within the body.
10945
598c3446
GB
109462001-12-11 Vincent Celier <celier@gnat.com>
10947
10948 * gnatmain.adb: Initial version.
82a4b025 10949
598c3446 10950 * gnatmain.ads: Initial version.
82a4b025 10951
598c3446 10952 * prj-attr.adb (Initialisation_Data): Add package Gnatstub.
82a4b025 10953
598c3446 10954 * snames.adb: Updated to match snames.ads.
82a4b025 10955
598c3446 10956 * snames.ads: Added Gnatstub.
82a4b025 10957
598c3446
GB
109582001-12-11 Vincent Celier <celier@gnat.com>
10959
07fc65c4 10960 * prj-attr.adb (Initialization_Data): Change name from
598c3446 10961 Initialisation_Data.
82a4b025 10962
598c3446
GB
109632001-12-11 Emmanuel Briot <briot@gnat.com>
10964
10965 * g-regpat.adb (Parse_Literal): Properly handle simple operators ?,
10966 + and * applied to backslashed expressions like \r.
82a4b025 10967
598c3446
GB
109682001-12-11 Vasiliy Fofanov <fofanov@gnat.com>
10969
07fc65c4 10970 * g-os_lib.ads: String_List type added, Argument_List type is now
598c3446 10971 subtype of String_List.
82a4b025 10972
598c3446
GB
109732001-12-11 Robert Dewar <dewar@gnat.com>
10974
10975 * g-os_lib.ads: Change copyright to FSF
10976 Add comments for String_List type
82a4b025 10977
598c3446
GB
109782001-12-11 Vincent Celier <celier@gnat.com>
10979
07fc65c4 10980 * g-dirope.adb (Expand_Path): Fix bug. (wrong length when adding a
598c3446
GB
10981 string to the buffer).
10982
7fb754a1
GB
109832001-12-11 Ed Schonberg <schonber@gnat.com>
10984
10985 * freeze.adb: Make Freeze_Fixed_Point_Type visible, for use in
10986 sem_attr.
82a4b025 10987
7fb754a1 10988 * sem_attr.adb: Simplify previous fix for Address.
07fc65c4
GB
10989 (Set_Bounds): If prefix is a non-frozen fixed-point type, freeze now,
10990 to avoid anomalies where the bound of the type appears to raise
7fb754a1
GB
10991 constraint error.
10992
109932001-12-11 Robert Dewar <dewar@gnat.com>
10994
07fc65c4 10995 * lib-xref.adb (Output_Refs): Make sure pointers are always properly
7fb754a1 10996 handled.
82a4b025 10997
7fb754a1
GB
109982001-12-11 Ed Schonberg <schonber@gnat.com>
10999
07fc65c4 11000 * sem_ch12.adb (Analyze_Subprogram_Instantiation): Check for a
7fb754a1 11001 renamed unit before checking for recursive instantiations.
82a4b025 11002
7fb754a1
GB
110032001-12-11 Emmanuel Briot <briot@gnat.com>
11004
11005 * prj.ads: Add comments for some of the fields.
11006
0873bafc
GB
110072001-12-11 Robert Dewar <dewar@gnat.com>
11008
07fc65c4 11009 * lib-xref.adb (Output_Refs): Don't output type references outside
0873bafc 11010 the main unit if they are not otherwise referenced.
82a4b025 11011
0873bafc
GB
110122001-12-11 Ed Schonberg <schonber@gnat.com>
11013
07fc65c4 11014 * sem_attr.adb (Analyze_attribute, case Address and Size): Simplify
0873bafc 11015 code and diagnose additional illegal uses
82a4b025 11016
07fc65c4 11017 * sem_util.adb (Is_Object_Reference): An indexed component is an
0873bafc 11018 object only if the prefix is.
82a4b025 11019
0873bafc
GB
110202001-12-11 Vincent Celier <celier@gnat.com>
11021
11022 * g-diopit.adb: Initial version.
82a4b025 11023
0873bafc 11024 * g-diopit.ads: Initial version.
82a4b025 11025
0873bafc
GB
11026 * g-dirope.adb:
11027 (Expand_Path): Avoid use of Unbounded_String
11028 (Find, Wildcard_Iterator): Moved to child package Iteration
82a4b025 11029
0873bafc 11030 * Makefile.in: Added g-diopit.o to GNATRTL_NONTASKING_OBJS
82a4b025 11031
7fb754a1 110322001-12-11 Robert Dewar <dewar@gnat.com>
0873bafc
GB
11033
11034 * sem_attr.adb: Minor reformatting
11035
d087cd96
GB
110362001-12-11 Ed Schonberg <schonber@gnat.com>
11037
11038 * sem_ch3.adb: Clarify some ???.
82a4b025 11039
d087cd96
GB
110402001-12-11 Robert Dewar <dewar@gnat.com>
11041
07fc65c4 11042 * exp_util.adb (Must_Be_Aligned): Removed, replaced by
d087cd96 11043 Exp_Pakd.Known_Aligned_Enough
82a4b025 11044
07fc65c4 11045 * sem_ch13.adb (Check_Address_Alignment): Removed, extended
d087cd96
GB
11046 version is moved to Exp_Ch13.
11047
110482001-12-11 Robert Dewar <dewar@gnat.com>
11049
11050 * einfo.ads: Minor reformatting
82a4b025 11051
d087cd96 11052 * exp_ch5.adb: Add comment for previous.change
82a4b025 11053
d087cd96 11054 * ali.adb: New interface for extended typeref stuff.
82a4b025 11055
d087cd96 11056 * ali.ads: New interface for typeref stuff.
82a4b025 11057
d087cd96 11058 * checks.adb (Apply_Alignment_Check): New procedure.
82a4b025 11059
d087cd96 11060 * debug.adb: Add -gnatdM for modified ALI output
82a4b025 11061
d087cd96 11062 * exp_pakd.adb (Known_Aligned_Enough): Replaces Known_Aligned_Enough.
82a4b025 11063
07fc65c4
GB
11064 * lib-xref.adb: Extend generation of <..> notation to cover
11065 subtype/object types. Note that this is a complete rewrite,
11066 getting rid of the very nasty quadratic algorithm previously
d087cd96 11067 used for derived type output.
82a4b025 11068
07fc65c4
GB
11069 * lib-xref.ads: Extend description of <..> notation to cover
11070 subtype/object types. Uses {..} for these other cases.
d087cd96 11071 Also use (..) for pointer types.
82a4b025 11072
d087cd96 11073 * sem_util.adb (Check_Potentially_Blocking_Operation): Slight cleanup.
82a4b025 11074
07fc65c4 11075 * exp_pakd.adb: Minor reformatting. Note that prevous RH should say:
d087cd96
GB
11076 (Known_Aligned_Enough): Replaces Must_Be_Aligned.
11077
290986ed
GB
110782001-12-11 Vincent Celier <celier@gnat.com>
11079
11080 * gnatcmd.adb:
11081 Changed /COMPILE_ONLY to /ACTIONS=COMPILE
11082 Changed /BIND_ONLY to /ACTIONS=BIND
11083 Changed /LINK_ONLY to /ACTIONS=LINK
82a4b025 11084
290986ed
GB
110852001-12-11 Ed Schonberg <schonber@gnat.com>
11086
11087 * sem_ch8.adb (Find_Selected_Component): improved search for a
11088 candidate package in case of error.
82a4b025 11089
290986ed
GB
11090 * sem_ch12.adb (Inline_Instance_Body): place head of use_clause
11091 chain back on scope stack before reinstalling use clauses.
82a4b025 11092
290986ed
GB
11093 * exp_ch5.adb (Expand_N_If_Statement): if Constant_Condition_Warnings
11094 is enabled, do not kill the code for the condition, to preserve
11095 warning.
11096
84157f51
GB
110972001-12-11 Robert Dewar <dewar@gnat.com>
11098
07fc65c4 11099 * checks.adb (Insert_Valid_Check): Apply validity check to expression
84157f51
GB
11100 of conversion, not to result of conversion.
11101
111022001-12-11 Ed Schonberg <schonber@gnat.com>
82a4b025 11103
07fc65c4
GB
11104 * sem_ch3.adb (Build_Derived_Record_Type): set Controlled flag
11105 before freezing parent. If the declarations are mutually recursive,
11106 an access to the current record type may be frozen before the
84157f51
GB
11107 derivation is complete.
11108
7ffa903f
VC
111092001-12-05 Vincent Celier <celier@gnat.com>
11110
07fc65c4 11111 * gnatcmd.adb: (MAKE): Add new translations: -b /BIND_ONLY,
7ffa903f 11112 -c /COMPILE_ONLY, -l /LINK_ONLY
82a4b025 11113
7ffa903f
VC
11114 * opt.ads:
11115 (Bind_Only): New Flag
11116 (Link_Only): New flag
82a4b025 11117
07fc65c4 11118 * switch.adb (Scan_Make_Switches): Add processing for -b (Bind_Only)
7ffa903f 11119 and -l (Link_Only)
82a4b025 11120
7ffa903f 11121 * makeusg.adb: Add new switches -b and -l. Update Copyright notice.
82a4b025 11122
7ffa903f
VC
11123 * make.adb:
11124 (Do_Compile_Step, Do_Bind_Step, Do_Link_Step): New flags.
11125 (Gnatmake): Set the step flags. Only perform a step if the
11126 corresponding step flag is True.
11127 (Scan_Make_Arg): Reset the bind and link step flags when -u
11128 or -gnatc has been specified.
11129
f91b40db
GB
111302001-12-05 Ed Schonberg <schonber@gnat.com>
11131
07fc65c4 11132 * sem_eval.adb (Eval_Concatenation): If left operand is a null string,
f91b40db 11133 get bounds from right operand.
82a4b025 11134
f91b40db 11135 * sem_eval.adb: Minor reformatting
82a4b025 11136
07fc65c4 11137 * exp_util.adb (Make_Literal_Range): use bound of literal rather
f91b40db 11138 than Index'First, its lower bound may be different from 1.
82a4b025 11139
07fc65c4 11140 * exp_util.adb: Undo earlier change, fixes ACVC regressions C48009B
f91b40db 11141 and C48009J
82a4b025 11142
f91b40db
GB
111432001-12-05 Vincent Celier <celier@gnat.com>
11144
11145 * prj-nmsc.adb Minor reformatting
82a4b025 11146
07fc65c4 11147 * prj-nmsc.adb (Language_Independent_Check): Reset Library flag if
f91b40db 11148 set and libraries are not supported.
82a4b025 11149
f91b40db
GB
111502001-12-05 Ed Schonberg <schonber@gnat.com>
11151
07fc65c4
GB
11152 * sem_ch3.adb (Build_Derived_Private_Type): set Public status of
11153 private view explicitly, so the back-end can treat as a global
f91b40db
GB
11154 when appropriate.
11155
45d04cbb
GB
111562001-12-05 Ed Schonberg <schonber@gnat.com>
11157
11158 * sem_ch12.adb (Instantiate_Package_Body): if instance is a compilation
11159 unit, always replace instance node with new body, for ASIS use.
11160
111612001-12-05 Vincent Celier <celier@gnat.com>
82a4b025 11162
07fc65c4
GB
11163 * prj-nmsc.adb (Language_Independent_Check): Issue a warning if
11164 libraries are not supported and both attributes Library_Name and
45d04cbb 11165 Library_Dir are specified.
82a4b025 11166
07fc65c4 11167 * prj-proc.adb (Expression): Set location of Result to location of
45d04cbb 11168 first term.
82a4b025 11169
45d04cbb
GB
11170 * Makefile.in: Add mlib.o, mlib-fil.o, mlib-tgt and mlib-utl to GNATLS.
11171 (prj-nmsc is now importing MLib.Tgt)
82a4b025 11172
45d04cbb
GB
11173 * prj-proc.adb: Put the change indicated above that was forgotten.
11174
84436014
RD
111752001-12-05 Robert Dewar <dewar@gnat.com>
11176
11177 * Makefile.in: Add dependencies for System.IO for GNAT.Regexp
11178
7ae0dcd8
ES
111792001-12-05 Ed Schonberg <schonber@gnat.com>
11180
11181 * sem_ch3.adb (Build_Derived_Concurrent_Type): If derivation imposes a
11182 constraint, introduce explicit subtype declaration and derive from it.
82a4b025 11183
7ae0dcd8
ES
11184 * sem_ch3.adb: Minor reformatting
11185
c9a4817d
RD
111862001-12-05 Robert Dewar <dewar@gnat.com>
11187
07fc65c4 11188 * checks.adb (Determine_Range): Increase cache size for checks.
c9a4817d 11189 Minor reformatting
82a4b025 11190
c9a4817d
RD
11191 * exp_ch6.adb: Minor reformatting
11192 (Expand_N_Subprogram_Body): Reset Is_Pure for any subprogram that has
11193 a parameter whose root type is System.Address, since treating such
11194 subprograms as pure in the code generator is almost surely a mistake
11195 that will lead to unexpected results.
82a4b025 11196
07fc65c4 11197 * exp_util.adb (Remove_Side_Effects): Clean up old ??? comment and
c9a4817d 11198 change handling of conversions.
82a4b025 11199
c9a4817d
RD
11200 * g-regexp.adb: Use System.IO instead of Ada.Text_IO.
11201
2514b839
ES
112022001-12-05 Ed Schonberg <schonber@gnat.com>
11203
07fc65c4
GB
11204 * sem_ch3.adb (Analyze_Object_Declaration): If expression is an
11205 aggregate with static wrong size, attach generated Raise node to
2514b839
ES
11206 declaration.
11207
457b6274
RD
112082001-12-05 Robert Dewar <dewar@gnat.com>
11209
07fc65c4 11210 * sem_attr.adb (Analyze_Attribute): Defend against bad Val attribute.
457b6274
RD
11211 Fixes compilation abandoned bomb in B24009B.
11212
19349925
ES
112132001-12-05 Ed Schonberg <schonber@gnat.com>
11214
11215 * sem_ch12.adb:
11216 Document use of Associated_Node on Selected_Components.
11217 (Save_Global_Operand_Descendants): Change to Save_Entity_Descendants,
11218 to clarify use of untyped descendant fields.
11219
6663c393
RD
112202001-12-05 Robert Dewar <dewar@gnat.com>
11221
11222 * prj-dect.ads: Add ??? comment
11223 Add 2001 to copyright notice (was not done in after all)
82a4b025 11224
6663c393 11225 * prj-part.adb: Minor reformatting. Reword one awkward error message.
82a4b025 11226
6663c393 11227 * prj.ads: Minor reformatting throughout, and add some ??? comments
82a4b025 11228
6663c393
RD
11229 * snames.ads: Minor reformatting
11230
d7b2a6af
GB
112312001-12-05 Geert Bosch <bosch@gnat.com>
11232
11233 * snames.adb: Autoupdate
11234
fbc9a404
VC
112352001-12-05 Vincent Celier <celier@gnat.com>
11236
11237 * prj-dect.adb (Parse): Rename parameter Modifying to Extends.
82a4b025 11238
fbc9a404 11239 * prj-dect.ads (Parse): Rename parameter Modifying to Extends.
82a4b025 11240
fbc9a404 11241 * prj-env.adb: Minor comment changes (modifying -> extends).
82a4b025 11242
fbc9a404 11243 * prj-nmsc.adb: Minor comment changes (modifying -> extends).
82a4b025 11244
07fc65c4 11245 * prj-part.adb (Parse_Single_Project): Change Tok_Modifying to
fbc9a404 11246 Tok_Extends.
82a4b025 11247
fbc9a404 11248 * prj.adb (Initialize): Change Modifying to Extends.
82a4b025 11249
fbc9a404 11250 * scans.ads (Token_Type): Change Tok_Modifying to Tok_Extends.
82a4b025 11251
fbc9a404 11252 * prj.ads: Minor comment change (Modifying -> extending).
82a4b025 11253
fbc9a404
VC
11254 * snames.ads: Change modifying to extends.
11255
7cff0b1b
RD
112562001-12-05 Robert Dewar <dewar@gnat.com>
11257
07fc65c4 11258 * sem_warn.adb: Remove stuff for conditionals, we are not going to
7cff0b1b 11259 do this after all.
82a4b025 11260
07fc65c4 11261 * sem_warn.ads: Remove stuff for conditionals, we are not going to
7cff0b1b
RD
11262 do this after all. Add 2001 to copyright notice
11263
4f56ebb7
GB
112642001-12-04 Geert Bosch <bosch@gnat.com>
11265
11266 * einfo.h, sinfo.h, treeprs.ads: Regenerate.
11267
053defdf
RD
112682001-12-04 Robert Dewar <dewar@gnat.com>
11269
07fc65c4
GB
11270 * errout.adb (Error_Msg): Ignore attempt to put error msg at junk
11271 location if we already have errors. Stops some cases of cascaded
053defdf 11272 errors.
82a4b025 11273
053defdf
RD
11274 * errout.adb: Improve comment.
11275
f311e166
RD
112762001-12-04 Robert Dewar <dewar@gnat.com>
11277
11278 * sem_ch12.adb:
11279 (Analyze_Formal_Type_Definition): Defend against Error.
11280 (Analyze_Formal_Subprogram): Defend against Error.
82a4b025 11281
07fc65c4 11282 * par-ch12.adb (F_Formal_Type_Declaration): In case of error,
f311e166
RD
11283 remove following semicolon if present. Removes cascaded error.
11284
d61bd65a
DR
112852001-12-04 Douglas B. Rupp <rupp@gnat.com>
11286
11287 * bindgen.adb:
11288 (Gen_Exception_Table_Ada): Write "begin" and then return if Num
11289 exceptions equals 0.
11290 (Gen_Exception_Table_C): Return if Num exceptions equals 0.
11291 Fixes PIWG E tests (which have to be run with -gnatL).
11292
4ba603e2
RD
112932001-12-04 Robert Dewar <dewar@gnat.com>
11294
11295 * einfo.ads: Minor reformatting
11296
57568d91
ES
112972001-12-04 Ed Schonberg <schonber@gnat.com>
11298
07fc65c4
GB
11299 * einfo.ads: Block_Node points to the identifier of the block, not to
11300 the block node itself, to preserve the link when the block is
11301 rewritten, e.g. within an if-statement with a static condition.
82a4b025 11302
07fc65c4 11303 * inline.adb (Cleanup_Scopes): recover block statement from block
57568d91 11304 entity using new meaning of Block_Node.
82a4b025 11305
07fc65c4 11306 * sem_ch5.adb (Analyze_Block_Statement): set Block_Node to point to
57568d91
ES
11307 identifier of block node, rather than to node itself.
11308
0815d36a 113092001-12-04 Gary Dismukes <dismukes@gnat.com>
82a4b025 11310
0815d36a
GD
11311 * layout.adb:
11312 (Get_Max_Size): Fix "start of processing" comment to say Get_Max_Size.
11313 (Discrimify): Go back to setting the Etypes of the selected component
07fc65c4 11314 because the Vname component does not exist at this point and will
0815d36a
GD
11315 fail name resolution. Also set Analyzed.
11316 Remove with and use of Sem_Res.
11317
edc0f304
AC
113182001-12-04 Arnaud Charlet <charlet@gnat.com>
11319
11320 * Makefile.in: (HIE_SOURCES): add s-fat*.
11321
32213142
RD
113222001-12-04 Robert Dewar <dewar@gnat.com>
11323
11324 * sem_attr.adb:
11325 (Compile_Time_Known_Attribute): New procedure.
11326 (Eval_Attribute, case Size): Use Compile_Time_Known_Attribute to ensure
11327 proper range check.
11328
c0def2ad
ES
113292001-12-04 Ed Schonberg <schonber@gnat.com>
11330
07fc65c4 11331 * sem_ch7.adb (New_Private_Type): Set Is_Tagged_Type flag before
c0def2ad
ES
11332 processing discriminants to diagnose illegal default values.
11333
ee0a48c5
ES
113342001-12-04 Ed Schonberg <schonber@gnat.com>
11335
07fc65c4
GB
11336 * sem_attr.adb (Resolve_Attribute): Handle properly an non-classwide
11337 access discriminant within a type extension that constrains its
ee0a48c5
ES
11338 parent discriminants.
11339
dd5875a6
ES
113402001-12-04 Ed Schonberg <schonber@gnat.com>
11341
07fc65c4 11342 * sem_ch3.adb (Find_Type_Of_Subtype_Indic): If subtype indication
dd5875a6 11343 is malformed, use instance of Any_Id to allow analysis to proceed.
82a4b025 11344
07fc65c4 11345 * par-ch12.adb (P_Formal_Type_Declaration): Propagate Error if
dd5875a6
ES
11346 type definition is illegal.
11347 (P_Formal_Derived_Type_Definition): Better recovery when TAGGED is
11348 misplaced.
11349
c2a41e57
ES
113502001-12-04 Ed Schonberg <schonber@gnat.com>
11351
07fc65c4 11352 * sem_warn.adb (Output_Unreferenced_Messages): Extend previous fix to
c2a41e57
ES
11353 constants.
11354
0ae84753
RD
113552001-12-04 Robert Dewar <dewar@gnat.com>
11356
11357 * errout.adb: Minor reformatting
11358
63db260e
RD
113592001-12-04 Robert Dewar <dewar@gnat.com>
11360
11361 * exp_util.adb: Minor reformatting from last change
82a4b025 11362
07fc65c4
GB
11363 * errout.adb (Check_For_Warning): For a Raised_Constraint_Error node
11364 which is a rewriting of an expression, traverse the original
63db260e
RD
11365 expression to remove warnings that may have been posted on it.
11366
c6d289f4
ES
113672001-12-04 Ed Schonberg <schonber@gnat.com>
11368
07fc65c4 11369 * exp_util.adb (Must_Be_Aligned): Return false for a component of a
c6d289f4
ES
11370 record that has other packed components.
11371
5917e80d
DR
113722001-12-04 Douglass B. Rupp <rupp@gnat.com>
11373
11374 * adaint.c: Minor cleanups.
11375
2c70f9dd
DR
113762001-12-04 Douglass B. Rupp <rupp@gnat.com>
11377
11378 * adaint.c: Do not use utime.h on vxworks.
11379
e59b3387
AC
113802001-12-04 Arnaud Charlet <charlet@gnat.com>
11381
07fc65c4 11382 * Makefile.adalib: Clarify step 3 (use of gnat.adc) as it causes
e59b3387
AC
11383 more confusion than it solves.
11384
e288604a
GB
113852001-12-04 Geert bosch <bosch@gnat.com>
11386
11387 * einfo.h, nmake.adb, nmake.ads, sinfo.h treeprs.ads: Regenerate.
11388
5ac21013
GB
113892001-12-04 Geert Bosch <bosch@gnat.com>
11390
07fc65c4 11391 * Makefile.in (update-sources): New target.
5ac21013
GB
11392 For use by gcc_release script.
11393
7dd5bd5e
ES
113942001-12-04 Ed Schonberg <schonber@gnat.com>
11395
07fc65c4 11396 * sem_prag.adb (Analyze_Pragma, case Validity_Checks): do not treat as
7dd5bd5e
ES
11397 a configuration pragma, it is now legal wherever a pragma can appear.
11398
a078a589
ZW
113992001-12-04 Zack Weinberg <zack@codesourcery.com>
11400
11401 * Makefile.in: Don't set ALL. Delete @cross_defines@,
11402 @cross_overrides@, @build_overrides@ stanzas. INTERNAL_CFLAGS
11403 is now @CROSS@ -DIN_GCC; update comment.
11404
0839863c
GB
114052001-12-04 Robert Dewar <dewar@gnat.com>
11406
11407 * einfo.adb (Has_Pragma_Pure_Function): New flag.
11408 Fix problem that stopped ceinfo from working
82a4b025 11409
0839863c 11410 * einfo.ads (Has_Pragma_Pure_Function): New flag.
82a4b025 11411
0839863c
GB
11412 * sem_prag.adb (Pure_Function): Set new flag Has_Pragma_Pure_Function.
11413
114142001-12-04 Douglas B. Rupp <rupp@gnat.com>
9678de49
DR
11415
11416 * gnatchop.adb:
11417 (File_Time_Stamp): New procedure.
11418 (Preserve_Mode): New boolean.
11419 (Write_Unit): Pass time stamp.
11420 Implement -p switch (preserve time stamps).
82a4b025 11421
9678de49 11422 * gnatcmd.adb (CHOP): Add translation for -p (/PRESERVE).
82a4b025 11423
9678de49 11424 * gnatchop.adb: Do usage info for -p switch
82a4b025 11425
9678de49 11426 * adaint.h (__gnat_set_file_time_name): New function
82a4b025 11427
9678de49 11428 * adaint.c (__gnat_set_file_time_name): Implement
82a4b025 11429
9678de49
DR
11430 * adaint.h: Fix typo
11431
3b9a13c4
RD
114322001-12-03 Robert Dewar <dewar@gnat.com>
11433
667e5c5d 11434 * sinfo.ads: Minor reformatting. N_Freeze_Entity node does not
b4f94ac1 11435 have Associated_Node.
3b9a13c4 11436
767b404e
RD
114372001-12-03 Robert Dewar <dewar@gnat.com>
11438
11439 * prj-proc.adb: Minor reformatting
667e5c5d 11440
767b404e
RD
11441 * make.adb: Minor reformatting
11442
11ac71ba
GB
114432001-12-03 Geert Bosch <bosch@gnat.com>
11444
667e5c5d 11445 * make.adb: Minor reformatting.
11ac71ba 11446
ef3d4d6e 114472001-12-03 Robert Dewar <dewar@gnat.com>
b1446533
RD
11448
11449 * sem_ch12.adb: Minor reformatting
11450
d6d32b24
ES
114512001-12-03 Ed Schonberg <schonber@gnat.com>
11452
667e5c5d
AJ
11453 * sem_ch12.adb (Inline_Instance_Body): Use Save_Scope_Stack and
11454 push Standard on the stack before analyzing the instance body,
d6d32b24 11455 in order to have a clean visibility environment.
667e5c5d
AJ
11456
11457 * sem_ch12.adb (Inline_Instance_Body): Remove redundant code.
d6d32b24 11458
13f08f03
ES
114592001-12-03 Ed Schonberg <schonber@gnat.com>
11460
667e5c5d 11461 * sem_ch12.adb (Instantiate_Package_Body): Protect against double
13f08f03
ES
11462 instantiation of a body that contains an inlined body.
11463
3bd6c100
ES
114642001-12-03 Ed Schonberg <schonber@gnat.com>
11465
11466 * sem_ch12.adb:
11467 (Analyze_generic_subprogram_Declaration): Set outer_generic_scope,
11468 to prevent freezing within formal packages.
11469 (Freeze_Subprogram_Body): If body comes from another instance that
11470 appeared before its own body, place freeze node at end of current
11471 declarative part, to prevent a back-end crash.
11472 (Inline_Instance_Body): Handle properly a package instance within
11473 a subprogram instance that is a child unit.
11474
58d07d8f
GS
114752001-12-01 Graham Stott <grahams@redhat.com>
11476
11477 * Makefile.in (misc.o): Add missing $(srcdir) prefix
11478 and add optabs.h dependency.
11479
11480 * misc.c: Include optabs.h
11481 (gnat_tree_code_type): Make static and const.
11482 (gnat_tree_code_length): Likewise.
11483 (gnat_tree_code_name): Likewise.
11484 (update_setjmp_buf): Obtain operands mode from insn_data.
11485
c87222f0
RH
114862001-11-29 Richard Henderson <rth@redhat.com>
11487
11488 * init.c: Remove obsolete dwarf2 frame.h section.
11489
d3945f0a
JM
114902001-11-29 Joseph S. Myers <jsm28@cam.ac.uk>
11491
11492 * Make-lang.in (ada.generated-manpages): New dummy target.
11493
9f639397
ES
114942001-11-29 Ed Schonberg <schonber@gnat.com>
11495
667e5c5d
AJ
11496 * g-os_lib.adb (Add_To_Command): use explicit loop to move string
11497 into Command, an array conversion is illegal here. Uncovered by
9f639397
ES
11498 ACATS B460005.
11499
c835e5c6
GB
115002001/11/28 Geert Bosch <bosch@gnat.com>
11501
11502 * init.c: Minor whitespace changes.
11503
49bb4548
DR
115042001-11-28 Doug Rupp <rupp@gnat.com>
11505
667e5c5d 11506 * init.c: (__gnat_install_handler,VMS): Increase size of alternate
49bb4548
DR
11507 signal stack.
11508
ea2417e5
ZW
115092001-11-28 Zack Weinberg <zack@codesourcery.com>
11510
11511 * misc.c (gnat_expand_constant): Move declaration above
11512 definition of lang_hooks.
11513 (LANG_HOOKS_EXPAND_CONSTANT): Set to gnat_expand_constant.
11514 (gnat_init): lang_expand_constant no longer exists.
11515
11516 (internal_error_function): Remove #ifdef HAVE_VPRINTF. We
11517 always have vprintf.
11518 (gnat_init): Always call set_internal_error_function.
11519
f8e0aa73
AJ
115202001-11-27 Andreas Jaeger <aj@suse.de>
11521
11522 * Makefile.in (stamp-tool_src_dir): Use symbolic link.
11523
d99b0e79
LG
115242001-11-27 Laurent Guerby <guerby@acm.org>
11525
11526 * Makefile.in: Regenerate Ada dependencies.
11527
3f0496e5
RH
115282001-11-26 Richard Henderson <rth@redhat.com>
11529
11530 * Make-lang.in (gnatbind, gnatmake, gnatbl, gnatchop, gnatcmd,
11531 gnatlink, gnatkr, gnatls, gnatmem, gnatprep, gnatpsta, gnatpsys,
11532 gnatxref, gnatfind, gnatlbr): Depend on CONFIG_H and prefix.o.
11533
92fa4733
LG
115342001-11-25 Laurent Guerby <guerby@acm.org>
11535
11536 * sysdep.c (rts_get_*): Fix style.
11537
07626501
LG
115382001-11-19 Laurent Guerby <guerby@acm.org>
11539
11540 * Makefile.in (INCLUDES_FOR_SUBDIR): Remove redundant system include
11541 since it is of no apparent use and cause warnings.
11542
22703ccc
NB
115432001-11-18 Neil Booth <neil@daikokuya.demon.co.uk>
11544
11545 * misc.c (gnat_decode_option, gnat_init_options): Make definitions
11546 static too.
11547 (gnat_init): Don't return NULL.
11548 (finish_parse): Remove.
11549
b0df4321
LG
115502001-11-17 Laurent Guerby <guerby@acm.org>
11551
11552 * Make-lang.in (GNATLIBFLAGS): Add -W -Wall.
11553 * gigi.h (init_decl_processing): Rename to gnat_init_decl_processing.
11554 * io-aux.c: Provide K&R prototypes to all functions, reformat code.
11555 * lang-spec.h: Add missing struct field to silence warnings.
11556 * sysdep.c (rts_get_*): Provide K&R prototype.
11557 * sysdep.c (Unlock_Task, Lock_Task): Move to K&R prototype.
11558 * traceback.c (Unlock_Task, Lock_Task): Likewise.
11559 * tracebak.c (__gnat_backtrace): Remove unused variable.
11560 * utils.c (end_subprog_body): Move to K&R style.
11561
d215024f
RK
11562Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
11563
11564 * trans.c, utils2.c: Remove PALIGN parameter to get_inner_reference.
11565
f5e99456
NB
115662001-11-15 Neil Booth <neil@daikokuya.demon.co.uk>
11567
11568 * misc.c (gnat_init): Change prototype. Include the
11569 functionality of the old init_parse and init_decl_processing.
11570 (gnat_init_decl_processing): New prototype.
11571 (init_parse): Remove.
11572 * utils.c (init_decl_processing): Rename gnat_init_decl_processing.
11573
5d69f816
NB
115742001-11-09 Neil Booth <neil@daikokuya.demon.co.uk>
11575
11576 * misc.c (gnat_print_decl, gnat_print_type): Renamed.
11577 (LANG_HOOKS_PRINT_DECL, LANG_HOOKS_PRINT_TYPE): Override.
11578 (print_lang_statistics, lang_print_xnode, print_lang_identifier,
11579 set_yydebug): Remove.
11580
3ac88239
NB
115812001-11-09 Neil Booth <neil@daikokuya.demon.co.uk>
11582
11583 * misc.c (LANG_HOOKS_NAME, LANG_HOOKS_IDENTIFIER_SIZE): Override.
11584 (struct lang_hooks): Constify.
11585 (language_string, lang_identify): Remove.
11586 * utils.c (init_decl_processing): Update.
11587
d23c55c2
NB
115882001-11-06 Neil Booth <neil@cat.daikokuya.demon.co.uk>
11589
11590 * misc.c: Include langhooks-def.h.
11591 * Makefile.in: Update.
11592
04a1b79c
RD
115932001-10-30 Robert Dewar <dewar@gnat.com>
11594
11595 * style.adb:
11596 (Check_Identifier): Rewrite circuit to be compatible with use of letters
11597 in the upper half of ASCII.
11598 (Check_Identifier): Minor reformatting
11599
81fa2d39
GB
116002001-10-30 Geert Bosch <bosch@gnat.com>
11601
f8e0aa73 11602 * (Associated_Node, Set_Associated_Node): Do not check for
81fa2d39
GB
11603 Freeze_Entity.
11604
ffc5527f
RD
116052001-10-30 Robert Dewar <dewar@gnat.com>
11606
11607 * a-reatim.ads: Minor reformatting
11608
865335eb
RD
116092001-10-30 Robert Dewar <dewar@gnat.com>
11610
f8e0aa73 11611 * gnatdll.adb: Minor reformatting throughout. Many ??? added for
865335eb
RD
11612 undocumented declarations.
11613
5e257178
PO
116142001-10-30 Pascal Obry <obry@gnat.com>
11615
f8e0aa73 11616 * gnatdll.adb (Parse_Command_Line): handle -g option to be passed
5e257178
PO
11617 to the binder and linker.
11618 Minor style fix.
f8e0aa73 11619
5e257178
PO
11620 * mdll.ads: Fix layout. Update copyright notice.
11621
11622 * mdll.adb: Fix layout. Update copyright notice.
11623
1753e0ad
RD
116242001-10-30 Robert Dewar <dewar@gnat.com>
11625
11626 * usage.adb: Minor fix to output for -gnaty.
11627
84bfdde0
ES
116282001-10-30 Ed Schonberg <schonber@gnat.com>
11629
f8e0aa73
AJ
11630 * a-reatim.ads: Makes Seconds_Count into a 64-bit integer,
11631 to accommodate all its possible values.
84bfdde0 11632
f8e0aa73 11633 * a-reatim.adb (Split): Special-case handling of Time_Span_First
84bfdde0
ES
11634 and of small absolute values of T.
11635
c296e5fc
RK
116362001-10-30 Richard Kenner <kenner@gnat.com>
11637
f8e0aa73
AJ
11638 * misc.c (gnat_expand_expr, case NULL_EXPR): Remove call to
11639 set_mem_attributes since not needed and wrong if RESULT if a REG;
c296e5fc
RK
11640 fixes ACATS failures.
11641
07c809df
GB
116422001-10-30 Geert Bosch <bosch@gnat.com>
11643
11644 * 86numaux.adb, a-tigeau.ads, a-wtgeau.ads, fname-sf.ads, g-traceb.ads,
11645 s-tasdeb.ads, sem_maps.ads: Add 2001 to copyright notice.
11646
54d22416 116472001-10-30 Robert Dewar <dewar@gnat.com>
f8e0aa73 11648
54d22416 11649 * bindusg.adb: Undocument -f switch.
f8e0aa73 11650
54d22416 11651 * gnatcmd.adb: Remove /FULL_ELABORATION.
f8e0aa73
AJ
11652
11653 * opt.ads (Force_RM_Elaboration_Order): Document that this is
54d22416 11654 obsolescent.
f8e0aa73 11655
54d22416 11656 * gnatbind.adb: Output new warning for use of obsolescent -f switch.
f8e0aa73 11657
54d22416
RD
11658 * gnatbind.adb: Minor update of warning msg.
11659
af5cf6f8
VC
116602001-10-30 Vincent Celier <celier@gnat.com>
11661
f8e0aa73 11662 * gnatcmd.adb (MAKE, BIND, LINK, LIST, FIND, XREF): Add translations
af5cf6f8 11663 for project file switches (-P (/PROJECT_FILE=),
f8e0aa73 11664 -X (/EXTERNAL_REFERENCE=) and -vPx (/PROJECT_FILE_VERBOSITY=DEFAULT
af5cf6f8
VC
11665 or MEDIUM or HIGH)
11666
984bc4c3
GB
116672001-10-30 Geert Bosch <bosch@gnat.com>
11668
11669 * decl.c: Minor whitespace fixes.
11670
5dece937
RK
116712001-10-30 Richard Kenner <kenner@gnat.com>
11672
11673 * utils2.c (build_allocator): Test for SIZE overflow in array case too
11674
de4bf6cb
GB
116752001-10-30 Geert Bosch <bosch@gnat.com>
11676
f8e0aa73 11677 * ali-util.adb (Initialize_Checksum): Use out-mode instead of in out.
de4bf6cb 11678 Found due to GCC 3.0 warning of using uninitialized value.
f8e0aa73 11679
de4bf6cb
GB
11680 * layout.adb:
11681 (Get_Max_Size): Use variant record for tracking value/expression.
11682 Makes logic clearer and prevents warnings for uninitialized variables.
11683 (Layout_Array_Type): Use variant record for tracking value/expression.
11684 Makes logic clearer and prevents warnings for uninitialized variables.
11685
f5e44987
RD
116862001-10-30 Robert Dewar <dewar@gnat.com>
11687
11688 * lib.adb: Minor reformatting
11689
11690 * s-taprop.ads: Minor reformatting
11691
45659035 116922001-10-29 Laurent Guerby <guerby@acm.org>
f8e0aa73 11693
45659035
GB
11694 * init.c:
11695 (Raise_From_Signal_Handler, Propagate_Signal_Exception): Make arg
11696 const.
11697 (_gnat_error_handler): Make MSG const.
11698
116992001-10-29 Richard Kenner <kenner@gnat.com>
11700
11701 * sysdep.c: Fix localtime_r problem on LynxOS.
11702 Also remove #elif to avoid warnings.
f8e0aa73
AJ
11703
11704 * misc.c (yyparse): Don't set up and register jmpbuf; remove decls
45659035 11705 used by this.
f8e0aa73 11706
45659035
GB
11707 * decl.c (annotate_value): Make SIZE unsigned to avoid warning.
11708
638e383e
JM
117092001-10-28 Joseph S. Myers <jsm28@cam.ac.uk>
11710
11711 * 86numaux.adb, a-tigeau.ads, a-wtgeau.ads, decl.c, exp_ch6.adb,
11712 exp_ch9.adb, exp_util.adb, fname-sf.ads, freeze.ads, g-awk.adb,
11713 g-comlin.ads, g-dirope.adb, g-dyntab.ads, g-socket.ads,
11714 g-table.ads, g-traceb.ads, gnat-style.texi, gnatchop.adb, init.c,
11715 layout.adb, layout.ads, mdllfile.ads, mlib-fil.ads, osint.ads,
11716 s-fatgen.adb, s-imgrea.adb, s-taprop.ads, s-tasdeb.ads,
11717 sem_aggr.adb, sem_attr.adb, sem_case.ads, sem_ch13.adb,
11718 sem_ch3.adb, sem_elab.adb, sem_maps.ads, sem_res.adb,
11719 sem_util.ads, sinfo.ads, sinput.ads, table.adb, table.ads,
11720 types.ads, urealp.adb: Fix spelling errors.
11721
97f6baa0
LG
117222001-10-27 Laurent Guerby <guerby@acm.org>
11723
11724 * trans.c (gigi): Fix non determinism leading to bootstrap
11725 comparison failures for debugging information.
11726
46b58b8c
FW
117272001-10-26 Florian Weimer <fw@deneb.enyo.de>
11728
11729 * gnat_rm.texi: Use @./@: where appropriate.
11730
30151c7b
RD
117312001-10-26 Robert Dewar <dewar@gnat.com>
11732
11733 * sinfo.adb: Define Associated_Node to overlap Entity field. Cleanup.
11734
c0b1738d
RK
117352001-10-26 Richard Kenner <kenner@gnat.com>
11736
11737 * gmem.c (__gnat_gmem_read_next): Properly check for EOF
11738
5b09c153
RK
117392001-10-26 Richard Kenner <kenner@gnat.com>
11740
f8e0aa73 11741 * decl.c (validate_size): Modify message for bad size to avoid
5b09c153
RK
11742 implication that compiler is modifying the size.
11743
4d553668
RD
117442001-10-26 Robert Dewar <dewar@gnat.com>
11745
11746 * prj-util.adb: Minor reformatting. Fix bad header format.
11747
3e542a58
RD
117482001-10-26 Robert Dewar <dewar@gnat.com>
11749
11750 * sinfo.ads: Define Associated_Node to overlap Entity field. Cleanup.
f8e0aa73 11751
3e542a58 11752 * sinfo.ads: Clarify use of Associated_Node (documentation only).
f8e0aa73
AJ
11753
11754 * sem_ch12.adb: Change Node4 to Associated_Node. Change
11755 Associated_Node to Get_Associated_Node. Put use of Unchecked_Access
3e542a58
RD
11756 much more narrowly in places where needed. These are cleanups.
11757
0bf08bfe
JB
117582001-10-26 Joel Brobecker <brobecke@gnat.com>
11759
11760 * 5zosinte.ads (null_pthread): new constant.
f8e0aa73 11761
0bf08bfe
JB
11762 * 5ztaprop.adb:
11763 (Initialize_TCB): Initialize thread ID to null, to be able to verify
11764 later that this field has been set.
11765 (Finalize_TCB): ditto.
11766 (Suspend_Task): Verify that the thread ID is not null before using it.
11767 (Resume_Task): ditto.
f8e0aa73 11768
0bf08bfe
JB
11769 * s-tasdeb.adb:
11770 (Resume_All_Tasks): Lock the tasks list before using it.
11771 (Suspend_All_Tasks): ditto.
11772
7a3a8c06
RK
117732001-10-26 Richard Kenner <kenner@gnat.com>
11774
f8e0aa73 11775 * decl.c (gnat_to_gnu_entity, case E_General_Access_Type):
7a3a8c06
RK
11776 Make constant variant of designated type for Is_Access_Constant.
11777 Call update_pointer_to with main variant.
f8e0aa73
AJ
11778
11779 * trans.c (process_freeze_entity, process_type):
7a3a8c06 11780 Call update_pointer_to on main variant.
f8e0aa73 11781
7a3a8c06
RK
11782 * utils.c (update_pointer_to): Make corresponding variant for NEW_TYPE.
11783 If main variant, update all other variants.
f8e0aa73
AJ
11784
11785 * utils2.c (build_unary_op, case INDIRECT_REF): No longer set
7a3a8c06
RK
11786 TREE_STATIC.
11787
a160babb
RD
117882001-10-26 Robert Dewar <dewar@gnat.com>
11789
11790 * prj-util.adb: Minor reformatting
11791
b403bd17
RD
117922001-10-26 Robert Dewar <dewar@gnat.com>
11793
11794 * prj-util.adb: Minor reformatting
11795
5fc3b4c7
RD
117962001-10-26 Robert Dewar <dewar@gnat.com>
11797
11798 * prj-attr.adb: Minor reformatting throughout
11799
8c736034
RD
118002001-10-26 Robert Dewar <dewar@gnat.com>
11801
11802 * prj-attr.ads: Minor reformatting
11803 Add ??? comment (this whole spec has almost no comments)
11804
47d5b6ed
VC
118052001-10-26 Vincent Celier <celier@gnat.com>
11806
f8e0aa73 11807 * g-os_lib.adb (Normalize_Pathname): Preserve the double slash
b4f94ac1 11808 ("//") that precede the drive letter on Interix.
47d5b6ed 11809
41af791f
GB
118102001-10-26 Geert Bosch <bosch@gnat.com>
11811
11812 * gnat_rm.texi: Add GNAT Reference Manual.
11813
ed4a1468
RD
118142001-10-25 Robert Dewar <dewar@gnat.com>
11815
f8e0aa73 11816 * sem_ch8.adb (Analyze_Package_Renaming): Skip analysis if Name
b4f94ac1 11817 is Error. Similar change for other renaming cases.
ed4a1468 11818
24377ae4
RD
118192001-10-25 Robert Dewar <dewar@gnat.com>
11820
11821 * s-atacco.ads: Add pragma Inline_Always for functions.
11822 Fix header format. Add copyright 2001
11823
fef3204e
ES
118242001-10-25 Ed Schonberg <schonber@gnat.com>
11825
f8e0aa73 11826 * par-ch3.adb (P_Subtype_Mark_Resync): for an anonymous array
b4f94ac1 11827 return Error rather than Empty so that analysis can proceed.
fef3204e 11828
dfc69d80
ES
118292001-10-25 Ed Schonberg <schonber@gnat.com>
11830
f8e0aa73 11831 * sem_util.adb (Enter_Name): better handling of cascaded error
b4f94ac1 11832 messages when a unit appears in its own context.
dfc69d80 11833
5a15af62
ES
118342001-10-25 Ed Schonberg <schonber@gnat.com>
11835
f8e0aa73 11836 * sem_util.adb (Defining_Entity): in case of error, attach created
b4f94ac1 11837 entity to specification, so that semantic analysis can proceed.
5a15af62 11838
2b881d53
RD
118392001-10-25 Robert Dewar <dewar@gnat.com>
11840
f8e0aa73 11841 * sem_util.adb
b4f94ac1 11842 (Defining_Entity): Deal with Error.
2b881d53
RD
11843 (Process_End_Label): Deal with bad end label for.
11844
578053f2
ES
118452001-10-25 Ed Schonberg <schonber@gnat.com>
11846
f8e0aa73 11847 * sem_elab.adb (Check_A_Call): refine message when call is in an
578053f2
ES
11848 instance but callee is not declared in the generic unit.
11849
0597ce0b 118502001-10-25 Ed Schonberg <schonber@gnat.com>
f8e0aa73
AJ
11851
11852 * sem_elab.adb (Check_A_Call): check for renaming before finding the
0597ce0b
ES
11853 enclosing unit, which may already be different from the calling unit.
11854
3de6e6da
GB
118552001-10-25 Geert Bosch <bosch@gnat.com>
11856
11857 * 4gintnam.ads: fix header format.
11858
6f311316
ES
118592001-10-25 Ed Schonberg <schonber@gnat.com>
11860
f8e0aa73 11861 * sem_res.adb (Resolve_Call): if the call is actually an indexing
b4f94ac1
ZW
11862 operation on the result of a parameterless call, perform elaboration
11863 check after the node has been properly rewritten.
f8e0aa73
AJ
11864
11865 * sem_ch12.adb (Copy_Generic_Node): after the proper body has been
b4f94ac1
ZW
11866 inlined within the generic tree, the defining identifier is not a
11867 compilation_unit.
6f311316 11868
17be0cdf
ES
118692001-10-25 Ed Schonberg <schonber@gnat.com>
11870
f8e0aa73 11871 * sem_res.adb (Resolve): special-case resolution of Null in an
b4f94ac1 11872 instance or an inlined body to avoid view conflicts.
f8e0aa73
AJ
11873
11874 * sem_ch12.adb (Copy_Generic_Node): for allocators, check for view
b4f94ac1 11875 compatibility by retrieving the access type of the generic copy.
17be0cdf 11876
ce9e9122
RD
118772001-10-25 Robert Dewar <dewar@gnat.com>
11878
11879 * sem_ch3.adb:
11880 (Analyze_Number_Declaration): Handle error expression.
11881 (Signed_Integer_Type_Declaration): Handle error bound.
11882 (Analyze_Subtype_Indication): Handle error range.
f8e0aa73 11883
ce9e9122
RD
11884 * sem_util.adb (Get_Index_Bounds): Check for Error.
11885
e12fbc9e
RD
118862001-10-25 Robert Dewar <dewar@gnat.com>
11887
f8e0aa73 11888 * restrict.adb (Set_No_Run_Time_Mode): Set Discard_Names as default
e12fbc9e
RD
11889 in no run time mode.
11890
52b80488
PO
118912001-10-25 Pascal Obry <obry@gnat.com>
11892
f8e0aa73 11893 * gnatmem.adb (Read_Next): fix Curs2 value to properly handle quiet
b4f94ac1 11894 mode case for ALLOC case.
f8e0aa73
AJ
11895
11896 * gnatmem.adb (Read_Next): correctly fix parsing in Quiet mode on
b4f94ac1 11897 all platforms. Improvement of last change.
52b80488 11898
316ad9c5
RD
118992001-10-25 Robert Dewar <dewar@gnat.com>
11900
11901 * exp_ch4.adb (Expand_N_Allocator): Minor reformatting.
11902
1a7e4df4
GB
119032001-10-25 Geert Bosch <bosch@gnat.com>
11904
11905 * osint.adb (Is_Relative): Remove duplicate.
11906
90a9fff2
PO
119072001-10-25 Pascal Obry <obry@gnat.com>
11908
f8e0aa73 11909 * osint.adb (Read_Default_Search_Dirs): correctly detect relative
b4f94ac1 11910 pathnames in UNIX and DOS style with drive letter.
90a9fff2 11911 (Is_Relative): new routine.
f8e0aa73 11912
90a9fff2 11913 * osint.adb: Minor reformatting
f8e0aa73
AJ
11914
11915 * osint.adb (Is_Relative): implementation using
b4f94ac1 11916 GNAT.OS_Lib.Is_Absolute_Path. Better fix.
90a9fff2 11917
5c1ba4cc
PO
119182001-10-25 Pascal Obry <obry@gnat.com>
11919
f8e0aa73 11920 * g-dirope.adb (Basename): correctly compute offset between the
b4f94ac1 11921 original Path and the translated one.
f8e0aa73 11922
5c1ba4cc
PO
11923 * g-dirope.adb: (Base_Name): add some comments.
11924
a7fb206d
RD
119252001-10-25 Robert Dewar <dewar@gnat.com>
11926
f8e0aa73 11927 * exp_imgv.adb (Expand_Image_Attribute): Defend against bad use
b4f94ac1 11928 in HIE mode, avoids compilation abandoned message
f8e0aa73 11929
a7fb206d 11930 * exp_imgv.adb: Correct typo in previous change
f8e0aa73 11931
a7fb206d
RD
11932 * exp_imgv.adb: Correct typo in previous change (not my day!)
11933
e6a7e62e
RD
119342001-10-25 Robert Dewar <dewar@gnat.com>
11935
11936 * s-tpinop.ads: Add 2001 to copyright notice. Fix header format.
11937
0d2b8e0b 119382001-10-25 Pascal Obry <obry@gnat.com>
75c09e7d 11939
f8e0aa73 11940 * g-awk.ads: Move all pragma inlines next to the routine
0d2b8e0b 11941 declarations. This is more uniform with other GNAT spec.
75c09e7d 11942
0d2b8e0b 119432001-10-22 Geert Bosch <bosch@gnat.com>
d2740a69
GB
11944
11945 * Make-lang.in (gnattools, cross-gnattools): Remove gnatmem.
11946
0d2b8e0b 119472001-10-19 Geert Bosch <bosch@gnat.com>
d7ac9bdd
GB
11948
11949 * Makefile.in (tools, gnattools): Remove gnatmem.
11950
17ed6335
RH
119512001-10-17 Richard Henderson <rth@redhat.com>
11952
11953 * Makefile.in (misc.o): Depend on langhooks.h.
11954 * misc.c: Include it.
11955 (LANG_HOOKS_INIT, LANG_HOOKS_INIT_OPTIONS): New.
11956 (LANG_HOOKS_DECODE_OPTION): New.
11957 (lang_hooks): Use LANG_HOOKS_INITIALIZER.
11958
f2436274
FW
119592001-10-16 Florian Weimer <fw@deneb.enyo.de>
11960
11961 * trans.c (tree_transform): Adjust to recent change in
11962 expand_asm_operands to implement named asm operands.
11963
b14127e6
ES
119642001-10-11 Ed Schonberg <schonber@gnat.com>
11965
f8e0aa73 11966 * exp_ch8.adb (Expand_N_Object_Renaming_Declaration): Bugfix in
b14127e6
ES
11967 renaming of discriminant for mutable record type.
11968
e70ee92a
RD
119692001-10-11 Robert Dewar <dewar@gnat.com>
11970
11971 * validsw.adb: Properly save -gnatVn status.
11972
9a5621d7 119732001-10-11 Robert Dewar <dewar@gnat.com>
f8e0aa73 11974
9a5621d7
RD
11975 * usage.adb: Add lines for V switch.
11976
f8e0aa73 11977 * gnatcmd.adb (COMPILE): Revise translations for -gnatV
9a5621d7
RD
11978 (/VALIDITY_CHECKING).
11979
45667f04
ES
119802001-10-11 Ed Schonberg <schonber@gnat.com>
11981
f8e0aa73 11982 * sem_type.adb (Add_One_Interp): an operator for a type declared in
45667f04
ES
11983 an extension of System is known to be visible.
11984
c3de5c4c
ES
119852001-10-11 Ed Schonberg <schonber@gnat.com>
11986
f8e0aa73 11987 * sem_eval.adb (Compare_Fixup): get the bounds of a String_Literal
c3de5c4c
ES
11988 properly. Fixes regression on ACATS C34005G.
11989
4fa964a6
RD
119902001-10-11 Robert Dewar <dewar@gnat.com>
11991
f8e0aa73 11992 * sem_ch5.adb (Analyze_Iteration_Scheme): Suppress warning on null
4fa964a6
RD
11993 loop in generic instance, since this is likely not very useful.
11994
0868e09c
RD
119952001-10-11 Robert Dewar <dewar@gnat.com>
11996
f8e0aa73 11997 * restrict.adb (Disallow in No_Run_Time_Mode): Properly specialize
0868e09c 11998 the error message for high integrity mode.
f8e0aa73
AJ
11999
12000 * rtsfind.adb (RTE): Give message if we try to find an entity that
0868e09c 12001 is not available in high integrity mode.
f8e0aa73 12002
0868e09c
RD
12003 * rtsfind.ads:
12004 (OK_To_Use_In_HIE_Mode): New array.
12005 (RTE): May return Empty in high integrity mode.
f8e0aa73
AJ
12006
12007 * rtsfind.ads (OK_To_Use_In_No_Run_Time_Mode): New name for
12008 OK_To_Use_In_HIE_Mode, now includes System_FAT_xxx.
12009
12010 * sem_ch6.adb (Analyze_Subprogram_Body): Kill body in predefined
12011 unit if not inlined always and in no runtime mode. Fixes problem
0868e09c 12012 caused by new Rtsfind changes.
f8e0aa73
AJ
12013
12014 * sem_ch6.adb (Analyze_Subrogram_Body): Do not Check_References if
0868e09c 12015 body is deleted.
f8e0aa73
AJ
12016
12017 * rtsfind.adb (RTE): Make sure we do not try to load unit after
0868e09c
RD
12018 giving message for entity not available in high integrity mode.
12019
934abf9c 120202001-10-11 Pascal Obry <obry@gnat.com>
f8e0aa73 12021
934abf9c
PO
12022 * impunit.adb: Add GNAT.CRC32.
12023
3c72bea4
ES
120242001-10-11 Ed Schonberg <schonber@gnat.com>
12025
f8e0aa73
AJ
12026 * exp_fixd.adb (Expand_Multiply_Fixed_By_Fixed_Giving_Fixed): handle
12027 properly the case where one universal operand in a non-static
3c72bea4
ES
12028 exponentiation of a real literal.
12029
44d8d2bb
ES
120302001-10-11 Ed Schonberg <schonber@gnat.com>
12031
f8e0aa73
AJ
12032 * exp_ch7.adb (Find_Final_List): for a type appearing in a with_type
12033 clause, return the gobal finalization list, for lack of anthing else.
44d8d2bb 12034
9e2b9627
ES
120352001-10-11 Ed Schonberg <schonber@gnat.com>
12036
f8e0aa73
AJ
12037 * exp_ch7.adb (Make_Transient_Block): if statement is within
12038 exception handler, always use new transient scope to place Clean
9e2b9627
ES
12039 procedure.
12040
cfac6e9f
PO
120412001-10-11 Pascal Obry <obry@gnat.com>
12042
12043 * Makefile.in:
12044 (GNAT_ADA_OBJS): add g-crc32.o, a-tags.o, a-stream.o
12045 (GNATBIND_OBJS): add g-crc32.o, a-tags.o, a-stream.o
12046 (GNATLS_RTL_OBJS): add g-crc32.o
12047 (GNATMAKE_RTL_OBJS): add g-crc32.o
f8e0aa73 12048
cfac6e9f
PO
12049 * ali-util.adb:
12050 (CRC_Match): new function.
f8e0aa73 12051 (Get_File_Checksum): renamed Get_File_CRC. Use the GNAT.CRC32 unit
cfac6e9f
PO
12052 instead of the previous simple checksum algorithm.
12053 (Time_Stamp_Mismatch): use CRC_Match for comparison.
12054 (Set_Source_Table): idem.
f8e0aa73 12055
cfac6e9f 12056 * ali-util.ads:
f8e0aa73 12057 (Get_File_Checksum): renamed Get_File_CRC as now we compute CRC
cfac6e9f
PO
12058 instead of simple checksum.
12059 (CRC_Match): new function.
12060 (CRC_Error): new constant.
f8e0aa73
AJ
12061
12062 * ali.adb (Scan_ALI): rename variable Chk to CRC as we are handling
12063 a CRC now and not a simple checksum. A CRC uses lower-case hex
cfac6e9f 12064 letters, fixes ambiguity in parsing.
f8e0aa73
AJ
12065
12066 * ali.ads (Sdep_Record.Checksum): renamed Sdep_Record.CRC as this
cfac6e9f 12067 is what this variable will store.
f8e0aa73 12068
cfac6e9f 12069 * bcheck.adb: Change reference to chechsum in comments by CRC.
f8e0aa73
AJ
12070 (Check_Consistency): Rename Get_File_Checksum to Get_File_CRC.
12071 rename All_Checksum_Match to All_CRC_Match. Change due to API
12072 renaming since now GNAT does not use a simple checksum but a
cfac6e9f 12073 CRC using GNAT.CRC32.
f8e0aa73
AJ
12074
12075 * gnatls.adb: Rename Checksum to CRC in many places, we use a CRC
cfac6e9f 12076 now and not anymore a simple checksum.
f8e0aa73
AJ
12077
12078 * lib-load.adb: Use Source_CRC instead of Source_Checksum in many
cfac6e9f 12079 places.
f8e0aa73 12080
cfac6e9f 12081 * lib-writ.adb (Write_ALI): Use Source_CRC instead of Source_Checksum.
f8e0aa73 12082
cfac6e9f
PO
12083 * scans.adb:
12084 (Restore_Scan_State): rename Checksum to CRC.
12085 (Save_Scan_State): idem.
f8e0aa73 12086
cfac6e9f
PO
12087 * scans.ads:
12088 With GNAT.CRC32.
12089 (Checksum): rename to CRC.
12090 (Saved_Scan_State): Save_Checksum field renamed to Save_CRC
f8e0aa73
AJ
12091
12092 * scn-nlit.adb: Rename many Accumulate_Checksum to Update (from
cfac6e9f 12093 GNAT.CRC32). Update copyright notice.
f8e0aa73
AJ
12094
12095 * scn-slit.adb: Rename many Accumulate_Checksum to Update (from
cfac6e9f 12096 GNAT.CRC32). Update copyright notice.
f8e0aa73 12097
cfac6e9f
PO
12098 * scn.adb:
12099 (Accumulate_Checksum): removed.
12100 (Update): new procedure. Add a wide-character into the CRC.
f8e0aa73 12101
cfac6e9f
PO
12102 * sinput-l.adb:
12103 (Complete_Source_File_Entry): use CRC32 instead of simple checksum.
f8e0aa73 12104 (Load_File): fix initialization of S (change Source_Checksum to
cfac6e9f 12105 Source_CRC)
f8e0aa73
AJ
12106
12107 * sinput-p.adb (Load_Project_File): rename Source_Checksum to
cfac6e9f 12108 Source_CRC in S initialization.
f8e0aa73 12109
cfac6e9f 12110 * sinput.adb (Source_Checksum): renamed to Source_CRC.
f8e0aa73 12111
cfac6e9f
PO
12112 * sinput.ads (Source_Checksum): renamed to Source_CRC.
12113 Update comments for the CRC.
f8e0aa73 12114
cfac6e9f 12115 * types.adb (Hex): Use lowercase for the letter part.
f8e0aa73
AJ
12116
12117 * types.ads (Get_Hex_String): Returns the hexadecimal representation
12118 for a word. This is currently used only for CRC. In previous version,
12119 the checksum was using a representation with all letter being
12120 upper-case. With the new implementation (using CRC) we do not remove
12121 the 32th bit of the CRC, so we can have an upper-case starting letter
12122 in the CRC. This is not possible to parse in Scan_ALI (ali.adb).
12123 It is ambigous since the CRC was optional and could be followed by
12124 options like EB, EE. So now this routines uses lower-case letter for
12125 the hexadecimal representation. Strange enough only lower case letters
cfac6e9f 12126 where checked in Scan_ALI (even if this was not a possible case).
f8e0aa73 12127
cfac6e9f 12128 * gnatvsn.ads (Library_Version): changed to 3.15a.
f8e0aa73
AJ
12129
12130 * s-crc32.ads: Initial version from GNAT.CRC32. This is the version
cfac6e9f 12131 for the compiler.
f8e0aa73
AJ
12132
12133 * s-crc32.adb: Initial version from GNAT.CRC32. This is the version
cfac6e9f 12134 for the compiler.
f8e0aa73 12135
cfac6e9f
PO
12136 * ali-util.adb: Redo previous change to avoid using word CRC everywhere
12137 Add 2001 to copyright notice
12138 (Accumulate_Checksum): Modify to use System.CRC32.
f8e0aa73
AJ
12139
12140 * ali-util.ads: Redo changes of previous revision to continue to use
cfac6e9f 12141 the word Checksum. Add 2001 to copyright notice.
f8e0aa73 12142
cfac6e9f
PO
12143 * ali.adb: Undo some of previous changes, not needed.
12144 Keep the change for lower case letters in the checksum.
f8e0aa73 12145
cfac6e9f
PO
12146 * ali.ads: Undo previous change not needed.
12147
12148 * bcheck.adb: Undo most of previous change, not needed.
12149 But do use Checksums_Match for checksum comparison.
f8e0aa73 12150
cfac6e9f
PO
12151 * gnatls.adb: Undo most of previous change, not needed.
12152 But do use Checksums_Match for comparing checksums.
f8e0aa73 12153
cfac6e9f 12154 * lib-load.adb: Undo previous change, not needed.
f8e0aa73 12155
cfac6e9f 12156 * lib-writ.adb: Undo previous change, not needed.
f8e0aa73
AJ
12157
12158 * lib-writ.ads: Document that checksums use lower case,
cfac6e9f 12159 not upper case letters.
f8e0aa73 12160
cfac6e9f 12161 * scans.adb: Undo previous change, not needed
f8e0aa73 12162
cfac6e9f 12163 * scans.ads: Undo previous change, not needed.
f8e0aa73 12164
cfac6e9f 12165 * scn-nlit.adb: Undo previous changes, not needed.
f8e0aa73 12166
cfac6e9f 12167 * scn-slit.adb: Undo previous change, not needed. Fix header format.
f8e0aa73 12168
cfac6e9f
PO
12169 * scn.adb:
12170 (Accumulate_Checksum): Use System.CRC32.
12171 (Initialize_Checksum): New procedure.
12172 Remove other changes of previous revision.
f8e0aa73 12173
cfac6e9f 12174 * sinput-p.adb: Undo previous change, not needed.
f8e0aa73 12175
cfac6e9f
PO
12176 * sinput.adb: Undo previous change, not needed.
12177
12178 * sinput-l.adb: Undo previous change, not needed.
f8e0aa73
AJ
12179
12180 * sinput.ads: Undo previous change, not needed. Keep only comment
cfac6e9f 12181 on new checksum algorithm
f8e0aa73 12182
cfac6e9f
PO
12183 * Makefile.in: Add s-crc32 as needed, remove g-crc32.
12184 Also remove a-tags and a-stream from GNAT sources.
f8e0aa73 12185
cfac6e9f 12186 * ali.adb (Scan_ALI): fix typo introduce in latest check-in.
f8e0aa73 12187
cfac6e9f
PO
12188 * Makefile.in (GNATRTL_NONTASKING_OBJS): Add g-crc32.o.
12189
4d6d06a5
GB
121902001-10-11 Geert Bosch <bosch@gnat.com>
12191
12192 * einfo.h: Regenerate.
12193
12194 * nmake.ads: Regenerate.
12195
12196 * nmake.adb: Regenerate.
12197
12198 * sinfo.h: Regenerate.
12199
12200 * treeprs.adb: Regenerate.
12201
c97412e2
GB
122022001-10-10 Geert Bosch <bosch@gnat.com>
12203
12204 * gnat-style.texi: New file describing coding guidelines for Ada.
f8e0aa73 12205
b83018ca
ES
122062001-10-10 Ed Schonberg <schonber@gnat.com>
12207
f8e0aa73 12208 * einfo.adb (Write_Entity_Flags): Elaboration_Entity_Required
b83018ca
ES
12209 is Flag174.
12210
e834fe1f
GB
122112001-10-10 Geert Bosch <bosch@gnat.com>
12212
12213 * snames.ads: Add new names for project facility.
12214
12215 * snames.adb: Update to reflect snames.ads changes.
12216
12217 * snames.h: Update to reflect snames.ads changes.
12218
b30668b7
VC
122192001-10-10 Vincent Celier <celier@gnat.com>
12220
12221 * make.adb:
12222 (Add_Switches): reflect the changes for the switches attributes
12223 Default_Switches indexed by the programming language,
12224 Switches indexed by the file name.
12225 (Collect_Arguments_And_Compile): Idem.
12226 Reflect the attribute name changes.
f8e0aa73 12227
b30668b7
VC
12228 * prj-attr.adb:
12229 (Initialisation_Data): Change the names of some packages and
12230 attributes.
12231 (Initialize): process case insensitive associative arrays.
f8e0aa73 12232
b30668b7
VC
12233 * prj-attr.ads:
12234 (Attribute_Kind): Remove Both, add Case_Insensitive_Associative_Array.
f8e0aa73 12235
b30668b7
VC
12236 * prj-dect.adb:
12237 (Parse_Attribute_Declaration): For case insensitive associative
12238 arrays, set the index string to lower case.
f8e0aa73 12239
b30668b7
VC
12240 * prj-env.adb:
12241 Reflect the changes of the project attributes.
f8e0aa73 12242
b30668b7
VC
12243 * prj-nmsc.adb:
12244 Replace Check_Naming_Scheme by Ada_Check and
12245 Language_Independent_Check.
f8e0aa73 12246
b30668b7
VC
12247 * prj-nmsc.ads:
12248 Replaced Check_Naming_Scheme by 2 procedures:
12249 Ada_Check and Language_Independent_Check.
f8e0aa73 12250
b30668b7
VC
12251 * prj-proc.adb:
12252 (Process_Declarative_Items): For case-insensitive associative
12253 arrays, set the index string to lower case.
12254 (Recursive_Check): Call Prj.Nmsc.Ada_Check, instead of
12255 Prj.Nmsc.Check_Naming_Scheme.
f8e0aa73 12256
b30668b7
VC
12257 * prj-tree.adb:
12258 (Case_Insensitive): New function
12259 (Set_Case_Insensitive): New procedure
f8e0aa73 12260
b30668b7
VC
12261 * prj-tree.ads:
12262 (Case_Insensitive): New function
12263 (Set_Case_Insensitive): New procedure
12264 (Project_Node_Record): New flag Case_Insensitive.
f8e0aa73 12265
b30668b7
VC
12266 * prj-util.adb:
12267 (Value_Of): new function to get the string value of a single
12268 string variable or attribute.
f8e0aa73 12269
b30668b7
VC
12270 * prj-util.ads:
12271 (Value_Of): new function to get the string value of a single
12272 string variable or attribute.
f8e0aa73 12273
b30668b7
VC
12274 * prj.adb:
12275 (Ada_Default_Spec_Suffix): New function
12276 (Ada_Default_Impl_Suffix): New function
12277 Change definitions of several constants to reflect
12278 new components of record types.
f8e0aa73 12279
b30668b7
VC
12280 * prj.ads:
12281 (Naming_Data): Change several components to reflect new
12282 elements of naming schemes.
12283 (Project_Data): New flags Sources_Present and
12284 Language_Independent_Checked.
12285 (Ada_Default_Spec_Suffix): New function.
12286 (Ada_Default_Impl_Suffix): New function.
f8e0aa73 12287
b30668b7
VC
12288 * snames.ads:
12289 Modification of predefined names for project manager: added
12290 Implementation, Specification_Exceptions, Implementation_Exceptions,
12291 Specification_Suffix, Implementation_Suffix, Separate_Suffix,
12292 Default_Switches, _Languages, Builder, Cross_Reference,
12293 Finder. Removed Body_Part, Specification_Append, Body_Append,
12294 Separate_Append, Gnatmake, Gnatxref, Gnatfind, Gnatbind,
12295 Gnatlink.
f8e0aa73 12296
b30668b7
VC
12297 * prj.ads: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
12298 Add comments.
f8e0aa73 12299
b30668b7
VC
12300 * prj-nmsc.adb (Ada_Check): Test that Separate_Suffix is defaulted,
12301 not that it is Nil_Variable_Value.
f8e0aa73 12302
b30668b7
VC
12303 * prj.ads: Add ??? for uncommented declarations
12304
662e57b4
ES
123052001-10-10 Ed Schonberg <schonber@gnat.com>
12306
f8e0aa73
AJ
12307 * sem_prag.adb: (Analyze_Pragma, case External): If entity is a
12308 constant, do not indicate possible modification, so that gigi can
662e57b4
ES
12309 treat it as a bona fide constant.
12310
72e4357f
RD
123112001-10-10 Robert Dewar <dewar@gnat.com>
12312
12313 * sem_prag.adb: Add processing for pragma External.
f8e0aa73 12314
72e4357f 12315 * snames.ads: Add entry for pragma External.
f8e0aa73 12316
72e4357f 12317 * par-prag.adb: Add pragma External.
f8e0aa73 12318
72e4357f
RD
12319 * snames.adb: Updated to match snames.ads.
12320
7bc1c7df
ES
123212001-10-10 Ed Schonberg <schonber@gnat.com>
12322
12323 * exp_ch4.adb (Expand_N_Allocator): Generate meaningful names for
12324 a dynamic task if the allocator appears in an indexed assignment
12325 or selected component assignment.
f8e0aa73
AJ
12326
12327 * exp_util.adb (Build_Task_Array_Image, Build_Task_Record_Image):
12328 For a dynamic task in an assignment statement, use target of
7bc1c7df
ES
12329 assignment to generate meaningful name.
12330
c84700e7
ES
123312001-10-10 Ed Schonberg <schonber@gnat.com>
12332
f8e0aa73 12333 * einfo.adb (Write_Field19_Name): Body_Entity is also defined for
c84700e7
ES
12334 a generic package.
12335
12336 * einfo.ads: Body_Entity is also defined for generic package.
12337 Documentation change only
f8e0aa73
AJ
12338
12339 * exp_aggr.adb (Build_Array_Aggr_Code): When expanding an
12340 others_choice for a discriminated component initialization,
12341 convert discriminant references into the corresponding discriminals.
12342
12343 * exp_ch3.adb (Get_Simple_Init_Val): Add qualification to aggregate
12344 only if original type is private and expression has to be wrapped
c84700e7 12345 in a conversion.
f8e0aa73
AJ
12346
12347 * checks.adb:
12348 (Apply_Constraint_Check): Do not perform length check
c84700e7 12349 if expression is an aggregate with only an others_choice.
f8e0aa73 12350 (Length_N_Cond): two references to the same in_parameter
c84700e7
ES
12351 (typically the discriminal in an init_proc) denote the same value.
12352 Two useful optimization uncovered by bugfixes above.
12353
d8d80dcd
RD
123542001-10-10 Robert Dewar <dewar@gnat.com>
12355
f8e0aa73 12356 * xeinfo.adb: Change int to char in translation of enumeration types.
d8d80dcd
RD
12357 This fixes a problem in the C representation of component alignment.
12358 Add 2001 to copyright notice
12359
a8fee948
RK
123602001-10-10 Richard Kenner <kenner@gnat.com>
12361
f8e0aa73 12362 * decl.c: (validate_size): Do check size of object of integral type
a8fee948
RK
12363 if it is a packed array type.
12364
c2d7fe59
RK
123652001-10-10 Richard Kenner <kenner@gnat.com>
12366
f8e0aa73 12367 * decl.c: (gnat_to_gnu_entity, case object): Also materialize
c2d7fe59
RK
12368 VAR_DECL for constant if not Is_Public but -O0.
12369
fb75e100
RK
123702001-10-10 Richard Kenner <kenner@gnat.com>
12371
12372 * misc.c (struct lang_hooks): Add new initializer to match GCC change.
12373
1724557a
GB
123742001-10-10 Geert Bosch <bosch@gnat.com>
12375
f8e0aa73 12376 * xnmake.adb (XNmake): Fix handling of -s/-b options. No longer
1724557a
GB
12377 use '/' as switch character, allowing for absolute file names.
12378
9f2f9eb6
JM
123792001-10-09 Joseph S. Myers <jsm28@cam.ac.uk>
12380
12381 * 4gintnam.ads, Make-lang.in, Makefile.in, config-lang.in: Update
12382 FSF address.
12383
8fecf41d
GB
123842001-10-08 Geert Bosch <bosch@gnat.com>
12385
12386 * Makefile.in (treeprs.ads, einfo.h, sinfo.h, nmake.adb, nmake.ads):
12387 Automatically build utilities when files need to be regenerated.
12388
589f1edf
GB
123892001-10-08 Geert Bosch <bosch@gnat.com>
12390
12391 * xsnames.adb: New utility for updating snames.ads and snames.adb
12392
67f28219
ZW
123932001-10-08 Zack Weinberg <zack@codesourcery.com>
12394
12395 * Make-lang.in (ADAFLAGS): Add -W -Wall.
12396 (ADA_FLAGS_TO_PASS): Set ADA_CFLAGS=$(CFLAGS) also.
12397 (gnat1): Also depend on attribs.o.
12398 (gnatlib, gnatlib-shared): Set CC and ADAC in recursive make.
12399 * Makefile.in (X_ADAFLAGS, T_ADAFLAGS): New.
12400 (ADAC): Set to @ADAC@ in stage1, $(CC) later.
12401 (ADAFLAGS): Add -W -Wall.
12402 (ALL_ADAFLAGS, MOST_ADAFLAGS): Add X_ADAFLAGS and T_ADAFLAGS;
12403 take out CFLAGS.
12404
12405 (.adb.o, .ads.o, a-numaux.o, a-teioed.o, s-interr.o,
12406 s-taskin.o, sdefault.o, s-tasdeb.o, s-vaflop.o, a-except.o,
12407 s-assert.o, s-stalib.o, s-memory.o, memtrack.o, mlib-tgt.o):
12408 Use $(ADAC), not $(CC), as compilation command.
12409
12410 (gnattools): Depend directly on tools to build, don't use
12411 recursive make.
12412 (gnatlib): Set ADA_CFLAGS=$(GNATLIBCFLAGS) in recursive make.
12413
12414 * einfo.h, sinfo.h: New files (autogenerated).
12415
295ef2bb
RH
124162001-10-08 Richard Henderson <rth@redhat.com>
12417
12418 * comperr.adb (Abort_In_Progress): New.
12419 (Compiler_Abort): Use it to prevent recursion.
12420
5c736541
RD
124212001-10-08 Robert Dewar <dewar@gnat.com>
12422
12423 * atree.adb: Set Error_Posted in Error node, helps error recovery.
67f28219
ZW
12424
12425 * par-endh.adb (Output_End_Expected): We should also not test
5c736541 12426 Error_Posted on the Error node, since now it is always set.
67f28219
ZW
12427
12428 * cstand.adb (Create_Standard): Set Etype of Error to Any_Type
5c736541 12429 to help error recovery. Part of general work on 9407-004.
67f28219 12430
5c736541 12431 * par.adb: Add ??? for misuse of error
67f28219 12432
5c736541
RD
12433 * sem_res.adb:
12434 (Resolve): Defend against Error, fixes 9407-003.
12435 (Resolve_Discrete_Subtype_Indication): Defend against Error.
67f28219
ZW
12436
12437 * sinfo.ads (N_Error): Now has Etype field (which will be set
5c736541
RD
12438 to Any_Type to help error recovery).
12439
a153ae15
RK
124402001-10-08 Richard Kenner (kenner@gnat.com)
12441
12442 * misc.c (gnat_expand_expr, case UNCHECKED_CONVERT_EXPR):
12443 Consistently set MEM attributes from expression; fixes
12444 bootstrap failure on x86.
12445
743f3c7b
GB
124462001-10-08 Geert Bosch (bosch@gnat.com)
12447
12448 * 5oosinte.adb: Add 2001 to copyright notice.
12449
210c4ef4
GB
124502001-10-08 Geert Bosch (bosch@gnat.com)
12451
12452 * ceinfo.adb: Add utility for consistency checking of einfo.ad[bs].
12453
12454 * csinfo.adb: Add utility for consistency checking of sinfo.ad[bs].
12455
cc712abf
JM
124562001-10-07 Joseph S. Myers <jsm28@cam.ac.uk>
12457
12458 * 5oosinte.adb: Fix spelling error of "separate" as "seperate".
12459
4c4abc0f
GB
124602001-10-05 Geert Bosch (bosch@gnat.com)
12461
12462 * adaint.h: Small formatting fix.
12463
7f50e2e3
GB
124642001-10-04 Geert Bosch <bosch@gnat.com>
12465
12466 * sysdep.c (__gnat_set_binary_mode, __gnat_set_text_mode):
12467 Arg is int, not FILE *, in dummy version of functions.
67f28219 12468
7f50e2e3
GB
12469 * adaint.h (__gnat_set_binary_mode, __gnat_set_text_mode):
12470 Arg is int, not FILE *.
12471
5d1a9698
GB
124722001-10-04 Geert Bosch <bosch@gnat.com>
12473
12474 * 3lsoccon.ads: Added file, missed with initial check ins.
67f28219 12475
5d1a9698
GB
12476 * 4lintnam.ads: Fix header format.
12477 Change Linux to GNU/Linux.
67f28219 12478
5d1a9698
GB
12479 * 5iosinte.adb: Change Linux to GNU/Linux.
12480
12481 * 5iosinte.ads: Change Linux to GNU/Linux.
67f28219 12482
5d1a9698 12483 * 5itaprop.adb: Change Linux to GNU/Linux.
67f28219 12484
5d1a9698
GB
12485 * 5itaspri.ads: Change Linux to GNU/Linux.
12486 Update copyright notice.
67f28219 12487
5d1a9698 12488 * 5lintman.adb: Change Linux to GNU/Linux.
67f28219 12489
5d1a9698 12490 * 5lml-tgt.adb: Change Linux to GNU/Linux.
67f28219 12491
5d1a9698 12492 * 5losinte.ads: Change Linux to GNU/Linux.
67f28219 12493
5d1a9698 12494 * 5lsystem.ads: Change Linux to GNU/Linux.
67f28219 12495
5d1a9698 12496 * 5qosinte.adb: Change Linux to GNU/Linux.
67f28219 12497
5d1a9698 12498 * 5qosinte.ads: Change Linux to GNU/Linux.
67f28219 12499
5d1a9698 12500 * 5qparame.ads: Change Linux to GNU/Linux.
67f28219 12501
5d1a9698 12502 * 5qtaprop.adb: Change Linux to GNU/Linux.
67f28219 12503
5d1a9698
GB
12504 * 5qtaspri.ads: Change Linux to GNU/Linux.
12505 Add 2001 to copyright notice.
67f28219 12506
5d1a9698
GB
12507 * 5vintman.ads: Change Linux to GNU/Linux.
12508 Fix header format. Add 2001 to copyright notice.
67f28219 12509
5d1a9698 12510 * g-soccon.ads: Change Linux to GNU/Linux.
67f28219 12511
5d1a9698
GB
12512 * g-trasym.ads: Change Linux to GNU/Linux.
12513 Add 2001 to copyright notice.
67f28219 12514
5d1a9698 12515 * memtrack.adb: Change Linux to GNU/Linux.
67f28219 12516
5d1a9698
GB
12517 * s-intman.ads: Change Linux to GNU/Linux.
12518 Add 2001 to copyright notice. Fix header format.
67f28219 12519
5d1a9698 12520 * s-stache.adb: Change Linux to GNU/Linux.
67f28219 12521
5d1a9698 12522 * adaint.c: Change Linux to GNU/Linux.
67f28219 12523
5d1a9698 12524 * cio.c: Change Linux to GNU/Linux.
67f28219 12525
5d1a9698 12526 * cstreams.c: Change Linux to GNU/Linux.
67f28219 12527
5d1a9698 12528 * init.c: Change Linux to GNU/Linux.
67f28219 12529
5d1a9698 12530 * gmem.c: Change Linux to GNU/Linux.
67f28219 12531
5d1a9698
GB
12532 * tracebak.c: Change Linux to GNU/Linux.
12533
12534
c25ca2d7
GB
125352001-10-02 Geert Bosch <bosch@gnat.com>
12536
12537 * misc.c (insert_default_attributes): Add dummy version.