]> gcc.gnu.org Git - gcc.git/blame - gcc/ada/ChangeLog
re PR c++/17068 (ICE: tree check: expected class 'd', have 'x' (identifier_node)...
[gcc.git] / gcc / ada / ChangeLog
CommitLineData
1f6c00df
NS
12004-08-16 Nathan Sidwell <nathan@codesourcery.com>
2
3 * cuintp.c (UI_To_gnu): Be more conservative with build_int_cst
4 call.s
5 * trans.c (Exception_Handler_to_gnu_sjlj): Likewise.
6 (gnat_to_gnu): Likewise.
7
4c46b835
AC
82004-08-16 Pascal Obry <obry@gnat.com>
9
10 * adaint.c (__gnat_prj_add_obj_files): Set to 0 only on Win32 for GCC
11 backend prior to GCC 3.4. With GCC 3.4 we are using the GCC's shared
12 option and not mdll anymore. Update comment.
13
142004-08-16 Pascal Obry <obry@gnat.com>
15
16 * bld.adb (Put_Include_Project): Properly handle directory separators
17 on Windows.
18
192004-08-16 Ed Schonberg <schonberg@gnat.com>
20
21 * sem_ch4.adb (Try_Object_Operation): Restructure code. Optimize by
22 decreasing the number of allocated junk nodes while searching for the
23 appropriate subprogram.
24
4a90aeeb
NS
252004-08-15 Nathan Sidwell <nathan@codesourcery.com>
26
27 * cuintp.c (UI_To_gnu): Use build_int_cst..
28 * trans.c (Exception_Handler_to_gnu_sjlj, gnat_to_gnu): Likewise.
29 * utils.c (init_gigi_decls): Likewise.
30 * utils2.c (build_call_raise): Likewise.
31
244e5a2c
AC
322004-08-13 Olivier Hainque <hainque@act-europe.fr>
33
34 * decl.c (gnat_to_gnu_entity) <E_Variable>: When building an allocator
35 for a global aliased object with a variable size and an unconstrained
36 nominal subtype, pretend there is no initializer if the one we have is
37 incomplete, and avoid referencing an inexistant component in there. The
38 part we have will be rebuilt anyway and the reference may confuse
39 further operations.
40
412004-08-13 Thomas Quinot <quinot@act-europe.fr>
42
43 * einfo.ads: Minor reformatting
44
45 * lib-writ.adb (Output_Main_Program_Line): Do not set parameter
46 restrictions in the ALI if we only want to warn about violations.
47
482004-08-13 Vincent Celier <celier@gnat.com>
49
50 * ali.adb (Scan_ALI): Initialize component Body_Needed_For_SAL to False
51 when creating a new Unit_Record in table Units.
52
53 * gnatls.adb (Output_Unit): In verbose mode, output the restrictions
54 that are violated, if any.
55
56 * prj-nmsc.adb (Ada_Check.Get_Path_Names_And_Record_Sources): Do not
57 add directory separator if path already ends with a directory separator.
58
592004-08-13 Ed Schonberg <schonberg@gnat.com>
60
61 * rtsfind.adb (Entity_Not_Defined): If the error ocurrs in a predefined
62 unit, this is an attempt to inline a construct that is not available in
63 the current restricted mode, so abort rather than trying to continue.
64
65 * sem_ch3.adb (Build_Underlying_Full_View): If the new type has
66 discriminants that rename those of the parent, recover names of
67 original discriminants for the constraint on the full view of the
68 parent.
69 (Complete_Private_Subtype): Do not create a subtype declaration if the
70 subtype is an itype.
71
72 * gnat_rm.texi: Added section on implementation of discriminated
73 records with default values for discriminants.
74
752004-08-13 Ed Schonberg <schonberg@gnat.com>
76
77 PR ada/15601
78 * sem_res.adb (Make_Call_Into_Operator): Handle properly the case where
79 the second operand is overloaded.
80
1a186ec5
RH
812004-08-10 Richard Henderson <rth@redhat.com>
82
83 * utils.c (gnat_install_builtins): Remove __builtin_stack_alloc,
84 add __builtin_alloca.
85
89f1a702
RH
862004-08-10 Richard Henderson <rth@redhat.com>
87
88 * config-lang.in (boot_language): Yes.
89
5d09245e
AC
902004-08-09 Thomas Quinot <quinot@act-europe.fr>
91
92 * g-socket.adb (Abort_Selector): Initialize Buf to prevent valgrind
93 from complaining on potential uninitialized reference.
94 Change calls to GNAT.Sockets.Thin.Is_Socket_In_Set to account for
95 new specification and test explicitly for non-zero return value.
96
97 * g-socthi.ads (Is_Socket_In_Set): Declare imported function as
98 returning C.int, to avoid using a derived boolean type.
99
100 * exp_ch5.adb (Make_Tag_Ctrl_Assignments): Use
101 Duplicate_Subexpr_No_Checks in preference to direct use of
102 Remove_Side_Effects and New_Copy_Tree.
103 Clear Comes_From_Source on prefix of 'Size attribute reference.
104
105 * g-socthi.adb, g-socthi-vms.adb, g-socthi-mingw.adb,
106 g-socthi-vxworks.adb: Change calls to
107 GNAT.Sockets.Thin.Is_Socket_In_Set to account for new specification
108 and test explicitly for non-zero return value.
109
110 * g-socthi-vms.ads, g-socthi-mingw.ads, g-socthi-vxworks.ads:
111 (Is_Socket_In_Set): Declare imported function as returning C.int, to
112 avoid using a derived boolean type.
113
1142004-08-09 Albert Lee <lee@gnat.com>
115
116 * system-irix-n32.ads: Refine tasking priority constants for IRIX.
117
1182004-08-09 Pascal Obry <obry@gnat.com>
119
120 * gnat_ugn.texi: Document new way to build DLLs on Windows using
121 GCC's -shared option.
122
123 * mlib-tgt-mingw.adb (Build_Dynamic_Library): Pass GCC's options into
124 Options_2 parameter (options put after object files).
125
1262004-08-09 Olivier Hainque <hainque@act-europe.fr>
127
128 * decl.c (gnat_to_gnu_entity) <E_Array_Subtype>: Adjust condition to
129 ignore overflows on low and high bounds of an index to also account for
130 differences in signedness between sizetype and gnu_index_subtype.
131 These are as legitimate as the ones caused by a lower TYPE_PRECISION
132 on sizetype.
133
1342004-08-09 Robert Dewar <dewar@gnat.com>
135
136 * s-solita.ads, s-solita.adb: Minor reformatting
137
138 * gnat_rm.texi: Add documentation for pragma Profile (Restricted)
139 Move pragma Restricted_Run_Time, No_Run_Time, Ravenscar to new
140 obsolescent section
141 Add note that No_Implicit_Conditionals does not suppress
142 run time constraint checks.
143
144 * vms_conv.ads: Minor reformatting
145
146 * s-secsta.adb: Use SS_Ptr instead of Mark_Id as stack pointer (cleanup
147 and necessary for following change).
148 (Mark): Return new format Mark_Id containing sec stack address
149 (Release): Use sec stack address from Mark_Id avoiding Self call
150
151 * s-secsta.ads: Define SS_Ptr to be used instead of Mark_Id as stack
152 pointer (cleanup and necessary for following change).
153 Define Mark_Id as record containing address of secondary stack, that way
154 Release does not need to find the stack again, decreasing the number of
155 calls to Self and improving efficiency.
156
157 * sem_util.ads: Add a ??? comment for Is_Local_Variable_Reference
158
159 * sem_ch5.adb (Analyze_Case_Statement): Add circuitry to track value of
160 case variable into the individual case branches when possible.
161
162 * sem_ch11.adb: Minor reformatting
163
164 * prj.ads: Correct spelling of suffixs
165
166 * prj-nmsc.adb: Minor reformatting
167 Correct spelling suffixs throughout (also in identifiers)
168
169 * freeze.adb: Minor spelling correction
170
171 * exp_ch2.adb: Cleanups to handling of Current_Value
172 (no functional effect).
173
174 * bld.adb: Correct spelling of suffixs
175
176 * einfo.adb (Enclosing_Dynamic_Scope): Defend against junk argument
177
1782004-08-09 Ed Schonberg <schonberg@gnat.com>
179
180 PR ada/15408
181
182 * sem_ch7.adb (Install_Private_Declarations): In the body of the
183 package or of a child, private entities are both immediately_visible
184 and not hidden.
185
1862004-08-09 Ed Schonberg <schonberg@gnat.com>
187
188 * sem_eval.adb (Eval_Integer_Literal): If the context is Any_Integer,
189 there are no range checks on the value of the literal.
190
191 * exp_ch7.adb (Insert_Actions_In_Scope_Around): If the node being
192 wrapped is the triggering alternative of an asynchronous select, action
193 statements mustbe inserted before the select itself.
194
195 * sem_attr.adb (Analyze_Attribute, case 'Size): Handle properly the
196 case where the prefix is a protected function call.
197 (Resolve_Attribute, case 'Access): The attribute reference on a
198 subprogram is legal in a generic body if the subprogram is declared
199 elsewhere.
200
2012004-08-09 Vincent Celier <celier@gnat.com>
202
203 * makegpr.adb (Build_Library): Link with g++ if C++ is one of the
204 languages, otherwise building the library may fail with unresolved
205 symbols.
206 (Compile_Sources): Do not build libraries if -c switch is used
207
208 * gnatlink.adb (Process_Args): New switches -M and -Mmap
209 (Write_Usage): If map file creation is supported, output new switches
210 -M and -Mmap.
211 (Gnatlink): When -M is specified, add the necessary switch(es) to the
212 gcc call, when supported.
213
214 * Makefile.in: Added indepsw.o to the object list for gnatlink
215 Specified the AIX, GNU/Linux and Windows versions of indepsw.adb
216
217 * indepsw-aix.adb, indepsw-linux.adb, indepsw-mingw.adb,
218 indepsw.adb, indepsw.ads: New files.
219
2202004-08-09 Bernard Banner <banner@gnat.com>
221
222 * system-vxworks-x86.ads, s-vxwork-x86.ads: New files.
223
224 * Makefile.in: add section for vxworks x86
225
2262004-08-09 Hristian Kirtchev <kirtchev@gnat.com>
227
228 * exp_ch3.adb (Build_Init_Statements): Add extra condition to deal with
229 per-object constrained components where the discriminant is of an
230 Access type.
231 (Build_Record_Init_Proc): Add condition to prevent the inheritance of
232 the parent initialization procedure for derived Unchecked_Unions.
233 Instead, derived Unchecked_Unions build their own initialization
234 procedure.
235 (Build_Variant_Record_Equality): Implement Unchecked_Union equality.
236 Check the body of the subprogram for details.
237 (Freeze_Record_Type): Prevent the inheritance of discriminant checking
238 functions for derived Unchecked_Union types by introducing a condition.
239 Allow the creation of TSS equality functions for Unchecked_Unions.
240 (Make_Eq_Case): Rename formal parameter Node to E in function signature.
241 Add formal parameter Discr to function signature. Discr is used to
242 control the generated case statement for Unchecked_Union types.
243 (Make_Eq_If): Rename formal parameter Node to E in function signature.
244
245 * exp_ch4.adb (Build_Equality_Call): Implement equality calls for
246 Unchecked_Unions.
247 Check the body of the subprogram for details.
248 (Expand_Composite_Equality): Augment composite type equality to include
249 correct handling of Unchecked_Union components.
250 (Expand_N_In): Add condition to detect illegal membership tests when the
251 subtype mark is a constrained Unchecked_Union and the expression lacks
252 inferable discriminants, and build a Raise_Program_Error node.
253 (Expand_N_Op_Eq): Add function Has_Unconstrained_UU_Component. Used
254 to detect types that contain components of unconstrained Unchecked_Union
255 subtype. Add condition to detect equality between types that have an
256 unconstrained Unchecked_Union component, and build a Raise_Program_Error
257 node. Add condition to detect equality between Unchecked_Union types
258 that lack inferable discriminants, and build a Raise_Program_Error node.
259 Otherwise build a TSS equality function call.
260 (Expand_N_Type_Conversion): Add condition to detect illegal conversions
261 from a derived Unchecked_Union to an unconstrained non-Unchecked_Union
262 with the operand lacking inferable discriminants, and build a Raise_
263 Program_Error node.
264 (Expand_Record_Equality): Remove guard that prevents Unchecked_Union
265 composite equality.
266 (Has_Inferable_Discriminants): Implement new predicate for objects and
267 expressions of Unchecked_Union type. Check the body of subprogram for
268 details.
269 (Has_Unconstrained_UU_Components): Add function
270 Component_Is_Unconstrained_UU. It is used to detect whether a single
271 component is of an unconstrained Unchecked_Union subtype. Add function
272 Variant_Is_Unconstrained_UU. It is used to detect whether a single
273 component inside a variant is of an unconstrained Unchecked_Union type.
274
275 * exp_ch5.adb (Expand_Assign_Record): Add condition to copy the
276 inferred discriminant values. Add condition to generate a case
277 statement with an inferred discriminant as the switch.
278 (Make_Component_List_Assign): Introduce a Boolean flag that determines
279 the behaviour of the subprogram in the presence of an Unchecked_Union.
280 Add condition to trigger the usage of the inferred discriminant value
281 as the generated case statement switch.
282 (Make_Field_Assign): Introduce a Boolean flag that determines the
283 behaviour of the subprogram in the presence of an Unchecked_Union. Add
284 condition to trigger the usage of the inferred discriminant value as
285 the right-hand side of the generated assignment.
286
287 * exp_ch6.adb (Expand_Call): Add condition to skip extra actual
288 parameter generation when dealing with Unchecked_Unions.
289
290 * checks.adb (Apply_Discriminant_Check): Do not apply discriminant
291 checks for Unchecked_Unions.
292
293 * einfo.ads: Update comment on usage of flag Has_Per_Object_Constraint
294
295 * exp_attr.adb (Expand_N_Attribute_Reference): Produce
296 Raise_Program_Error nodes for the execution of Read and Write
297 attributes of Unchecked_Union types and the execution of Input and
298 Output attributes of Unchecked_Union types that lack default
299 discriminant values.
300
301 * sem_prag.adb (Analyze_Pragma): Remodel the analysis of pragma
302 Unchecked_Union. Add procedure Check_Component. It is used to inspect
303 per-object constrained components of Unchecked_Unions for being
304 Unchecked_Unions themselves. Add procedure Check_Variant. It is used to
305 check individual components withing a variant.
306
307 * sem_res.adb (Resolve_Comparison_Op): Remove guard that prevents
308 comparison of Unchecked_Unions.
309 (Resolve_Equality_OP): Remove guard that prevents equality between
310 Unchecked_Unions.
311
312 * sem_util.adb (Build_Component_Subtype): Add guard to prevent creation
313 of component subtypes for Unchecked_Union components.
314 (Get_Actual_Subtype): Add condition that returs the Unchecked_Union type
315 since it is the actual subtype.
316
317 * sem_ch12.adb (Instantiate_Type): Add condition to detect the correct
318 pass of Unchecked_Union subtypes as generic actuals to formal types
319 that lack known_discriminant_parts or that are derived Unchecked_Union
320 types, and do nothing. In any other case, produce an error message.
321
322 * sem_ch3.adb (Analyze_Component_Declaration): Add function
323 Contains_POC. It determines whether a constraint uses the discriminant
324 of an enclosing record type.
325 Add condition to detect per-object constrained component and set the
326 appropriate flag.
327 (Derived_Type_Declaration): Remove guard that prevents derivation from
328 Unchecked_Union types.
329 (Process_Subtype): Remove quard that prevents the creation of Unchecked_
330 Union subtypes.
331
332 * sem_ch4.adb (Analyze_Selected_Component): Correct the detection of
333 references to Unchecked_Union discriminants.
334
335 * sem_ch6.adb (Create_Extra_Formals): Add condition to skip extra
336 formal generation when dealing with Unchecked_Unions.
337 (Set_Actual_Subtypes): Add condition to prevent generation of actual
338 subtypes for Unchecked_Unions.
339
340 * sem_ch7.adb (Analyze_Package_Specification): Add procedure
341 Inspect_Unchecked_Union_Completion. It is used to detect incorrect
342 completions of discriminated partial views by Unchecked_Unions and
343 produce an error message.
344
3452004-08-09 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
346
347 * trans.c (struct stmt_group): New field, GLOBAL.
348 (global_stmt_group, gnu_elab_proc_decl, build_unit_elab): Deleted.
349 (struct elab_info): New struct.
350 (elab_info_list, gnu_elab_proc_stack): New variables.
351 (Compilation_Unit_to_gnu): New procedure.
352 (gigi): Call it and also handle elaboration procs we've saved.
353 (gnat_init_stmt_group): Don't set global_stmt_group; instead initialize
354 global field from parent.
355 (gnat_to_gnu): Get decl from gnu_elab_proc_stack.
356 (gnat_to_gnu, case N_Compilation_Unit): Call Compilation_Unit_to_gnu.
357 (start_stmt_group): Initialize global field from parent.
358 (add_decl_expr): Set to global for current statement group.
359 (gnat_gimplify_expr, case NULL_EXPR): Add operand 0 to pre list, not
360 post.
361
362 * utils.c (global_bindings_p): True when no current_function_decl; no
363 longer check current_binding_level.
364
3652004-08-09 Ben Brosgol <brosgol@gnat.com>
366
367 * xgnatugn.adb: Added logic to deal with @ifset/@ifclear for edition
368 choice.
369
370 * gnat_rm.texi, gnat_ugn.texi: Added edition conditionalization logic.
371
160ff372
AS
3722004-08-06 Andreas Schwab <schwab@suse.de>
373
374 * utils.c (gnat_define_builtin): Remove second parameter of
375 make_decl_rtl.
376 (begin_subprog_body): Likewise.
377
615cbd95
AC
3782004-07-26 Arnaud Charlet <charlet@act-europe.fr>
379
380 * sem_util.adb (Requires_Transient_Scope): Temporarily disable
381 optimization, not supported by the tree-ssa back-end.
382
3832004-07-26 Olivier Hainque <hainque@act-europe.fr>
384
385 * s-mastop-irix.adb: Update comments.
386
387 * a-except.adb (Exception_Information): Raise Constraint_Error if
388 exception Id is Null_Id.
389 This is required behavior, which is more reliably and clearly checked
390 at the top level interface level.
391
3922004-07-26 Javier Miranda <miranda@gnat.com>
393
394 * exp_aggr.adb (Build_Array_Aggr_Code): Do not build the initialization
395 call if a component has no default_expression and the box is used.
396
397 * sem_aggr.adb (Resolve_Array_Aggregate): If a component has no
398 default_expression and you use box, it behaves as if you had declared a
399 stand-alone object.
400 (Resolve_Record_Aggregate): If a component has no default_expression and
401 you use box, it behaves as if you had declared a stand-alone object.
402
403 * sem_ch10.adb (Install_Siblings): Do not make visible the private
404 entities of private-with siblings.
405
4062004-07-26 Ed Schonberg <schonberg@gnat.com>
407
408 * sem_ch3.adb (Build_Underlying_Full_View): If this is the full view
409 for a component of an itype, set the parent pointer for analysis,
410 there is no list in which to insert it.
411
412 * sem_res.adb (Resolve): Call Rewrite_Renamed_Operator only for
413 bona-fide renamings, not for inherited operations.
414
415 * exp_ch4.adb (Expand_Allocator_Expression): If the allocator is an
416 actual for a formal that is an access parameter, create local
417 finalization list even if the expression is not an aggregate.
418
4192004-07-26 Ed Schonberg <schonberg@gnat.com>
420
421 PR ada/16213
422 * sem_ch8.adb (Attribute_Renaming, Check_Library_Level_Renaming):
423 Diagnose properly illegal subprogram renamings that are library units.
424
4252004-07-26 Ed Schonberg <schonberg@gnat.com>
426
427 PR ada/15588
428 * sem_util.adb (Is_OK_Variable_For_Out_Formal): If actual is a type
429 conversion rewritten as an unchecked conversion, check that original
430 expression is a variable.
431
432 * exp_ch4.adb (Expand_N_Type_Conversion): If rewriting as an
433 unchecked_conversion, create new node rather than rewriting in place,
434 to preserve original construct.
435
4362004-07-26 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
437
438 * gigi.h (gnat_expand_body): Deleted.
439
440 * Make-lang.in: (trans.o): Depends on function.h.
441
442 * misc.c: (gnat_expand_body): Moved to here.
443
444 * trans.c (gnat_expand_body_1): Deleted.
445 (gnat_expand_body): Moved from here.
446 (gnat_to_gnu): N_Implicit_Label_Declaration forces being in elab proc.
447 (add_stmt): Check for marked visited with global_bindings_p.
448 (gnat_gimplify_expr, case COMPONENT_REF): New case.
449 (gnat_gimplify_expr, case NULL_EXPR): Set TREE_NO_WARNING for temp.
450
451 * utils2.c (build_binary_op, case MODIFY_EXPR): Put LHS in a
452 VIEW_CONVERT_EXPR if not operation type.
453
454 * utils.c (update_pointer_to): Set DECL_ORIGINAL_FIELD for
455 fat pointer.
456
457 * decl.c, cuintp.c, gigi.h, misc.c, trans.c, utils.c, utils2.c: Minor
458 changes: reformatting of negation operators, removing unneeded
459 inequality comparison with zero, converting equality comparisons with
460 zero to negations, changing int/0/1 to bool/false/true, replace calls
461 to gigi_abort with abort, and various other similar changes.
462
4632004-07-26 Vincent Celier <celier@gnat.com>
464
465 * gnatcmd.adb (GNATCmd): Add processing for new built-in command
466 "setup".
467
468 * make.adb (Gnatmake): Fail when a library is not present and there is
469 no object directory.
470
471 * mlib-prj.adb (Check_Library): No need to check if the library needs
472 to be rebuilt if there is no object directory, hence no object files
473 to build the library.
474
475 * opt.ads (Setup_Projects): New Boolean flag.
476
477 * prj-nmsc.adb (Locate_Directory): New parameter Project, Kind and
478 Location.
479 Create directory when Kind /= "" and in "gnat setup". Report error if
480 directory cannot be created.
481 (Ada_Check): Create library interface copy dir if it does not exist
482 and we are in "gnat setup".
483 (Find_Sources): No error if in "gnat setup" and no Ada sources were
484 found.
485 (Language_Independent_Check): Create object directory, exec directory
486 and/or library directory if they do not exist and we are in
487 "gnat setup".
488
489 * vms_conv.ads: (Command_Type): New command Setup.
490
491 * vms_conv.adb (Initialize): Add Setup component of Cammand_List.
492
493 * vms_data.ads: Add qualifiers/switches for new built-in command
494 "setup".
495
b785f485
RH
4962004-07-25 Richard Henderson <rth@redhat.com>
497
498 * utils.c (create_subprog_decl): Set DECL_ARTIFICIAL and
499 DECL_IGNORED_P on RESULT_DECL.
500
35ae2ed8
AC
5012004-07-20 Olivier Hainque <hainque@act-europe.fr>
502
503 * a-elchha.adb (Last_Chance_Handler): Remove the bogus buffer dynamic
504 allocation and potentially overflowing update with
505 Tailored_Exception_Information. Use the sec-stack free procedural
506 interface to output Exception_Information instead.
507
508 * a-except.adb (To_Stderr): New subprogram for character, and string
509 version moved from a-exextr to be visible from other separate units.
510 (Tailored_Exception_Information): Remove the procedural version,
511 previously used by the default Last_Chance_Handler and not any more.
512 Adjust various comments.
513
514 * a-exexda.adb: Generalize the exception information procedural
515 interface, to minimize the use of secondary stack and the need for
516 local buffers when the info is to be output to stderr:
517 (Address_Image): Removed.
518 (Append_Info_Character): New subprogram, checking for overflows and
519 outputing to stderr if buffer to fill is of length 0.
520 (Append_Info_String): Output to stderr if buffer to fill is of length 0.
521 (Append_Info_Address, Append_Info_Exception_Name,
522 Append_Info_Exception_Message, Append_Info_Basic_Exception_Information,
523 Append_Info_Basic_Exception_Traceback,
524 Append_Info_Exception_Information): New subprograms.
525 (Append_Info_Nat, Append_Info_NL): Use Append_Info_Character.
526 (Basic_Exception_Info_Maxlength, Basic_Exception_Tback_Maxlength,
527 Exception_Info_Maxlength, Exception_Name_Length,
528 Exception_Message_Length): New subprograms.
529 (Exception_Information): Use Append_Info_Exception_Information.
530 (Tailored_Exception_Information): Use
531 Append_Info_Basic_Exception_Information.
532 Export services for the default Last_Chance_Handler.
533
534 * a-exextr.adb (To_Stderr): Remove. Now in a-except to be usable by
535 other separate units.
536
5372004-07-20 Vincent Celier <celier@gnat.com>
538
539 * clean.adb, mlib-utl.adb, osint.adb, makegpr.adb: Minor reformatting.
540
5412004-07-20 Ed Schonberg <schonberg@gnat.com>
542
543 * freeze.adb (Freeze_Entity): If entity is a discriminated record type,
544 emit itype references for the designated types of component types that
545 are declared outside of the full record declaration, and that may
546 denote a partial view of that record type.
547
5482004-07-20 Ed Schonberg <schonberg@gnat.com>
549
550 PR ada/15607
551 * sem_ch3.adb (Build_Discriminated_Subtype): Do not attach a subtype
552 which is the designated type in an access component declaration, to the
553 list of incomplete dependents of the parent type, to avoid elaboration
554 issues with out-of-scope subtypes.
555 (Complete_Private_Subtype): Recompute Has_Unknown_Discriminants from the
556 full view of the parent.
557
5582004-07-20 Ed Schonberg <schonberg@gnat.com>
559
560 PR ada/15610
561 * sem_ch8.adb (Find_Expanded_Name): If name is overloaded, reject
562 entities that are hidden, such as references to generic actuals
563 outside an instance.
564
5652004-07-20 Javier Miranda <miranda@gnat.com>
566
567 * sem_ch4.adb (Try_Object_Operation): New subprogram that gives
568 support to the new notation.
569 (Analyze_Selected_Component): Add call to Try_Object_Operation.
570
5712004-07-20 Jose Ruiz <ruiz@act-europe.fr>
572
573 * s-taprob.adb: Adding the elaboration code required for initializing
574 the tasking soft links that are common to the full and the restricted
575 run times.
576
577 * s-tarest.adb (Init_RTS): Tasking soft links that are shared with the
578 restricted run time has been moved to the package
579 System.Soft_Links.Tasking.
580
581 * s-tasini.adb (Init_RTS): Tasking soft links that are shared with the
582 restricted run time has been moved to the package
583 System.Soft_Links.Tasking.
584
585 * Makefile.rtl: Add entry for s-solita.o in run-time library list.
586
587 * s-solita.ads, s-solita.adb: New files.
588
5892004-07-20 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
590
591 * trans.c (Identifier_to_gnu, Pragma_to_gnu, Attribute_to_gnu,
592 Case_Statement_to_gnu): Split off from gnat_to_gnu.
593 (Loop_Statement_to_gnu, Subprogram_Body_to_gnu, call_to_gnu,
594 Handled_Sequence_Of_Statements_to_gnu, Exception_Handler_to_gnu_sjlj,
595 Exception_Handler_to_gnu_zcx): Likewise.
596
6e34d3a3
JM
5972004-07-17 Joseph S. Myers <jsm@polyomino.org.uk>
598
599 * gigi.h (builtin_function): Declare.
600
523456db
AC
6012004-07-15 Robert Dewar <dewar@gnat.com>
602
603 * makegpr.adb, s-secsta.ads, sem_ch3.adb, sem_case.adb: Minor
604 reformatting
605
606 * gnat_ugn.texi: Add instantiation of direct_io or sequential_io with
607 access values as an example of a warning.
608
609 * gnat_rm.texi: Document new attribute Has_Access_Values
610
611 * gnat-style.texi: Document that box comments belong on nested
612 subprograms
613
614 * sem_util.ads (Has_Access_Values): Improved documentation
615
616 * s-finimp.ads, s-finimp.adb: Fix spelling error in comment
617
618 * sem_prag.adb (Check_Duplicated_Export_Name): New procedure
619 (Process_Interface_Name): Call to this new procedure
620 (Set_Extended_Import_Export_External_Name): Call to this new procedure
621
622 * s-mastop-x86.adb, 9drpc.adb: Fix spelling error in comment
623
624 * a-direio.ads, a-sequio.ads: Warn if Element_Type has access values
625
626 * einfo.ads: Minor comment typo fixed
627
6282004-07-15 Jose Ruiz <ruiz@act-europe.fr>
629
630 * snames.adb: Add _atcb.
631
632 * snames.ads: Add Name_uATCB.
633
634 * s-tarest.adb (Create_Restricted_Task): ATCBs are always preallocated
635 (in the expanded code) when using the restricted run time.
636
637 * s-tarest.ads (Create_Restricted_Task): Created_Task transformed into
638 a in parameter in order to allow ATCBs to be preallocated (in the
639 expanded code).
640
641 * s-taskin.adb (Initialize_ATCB): T converted into a in parameter in
642 order to allow ATCBs to be preallocated. In case of error, the ATCB is
643 deallocated in System.Tasking.Stages.
644
645 * s-taskin.ads (Initialize_ATCB): T converted into a in parameter in
646 order to allow ATCBs to be preallocated.
647
648 * s-tassta.adb (Create_Task): In case of error the ATCB is deallocated
649 here. It was previously done in Initialize_ATCB.
650
651 * rtsfind.ads: Make the Ada_Task_Control_Block visible.
652
653 * exp_ch9.adb: Preallocate the Ada_Task_Control_Block when using the
654 Restricted run time.
655
656 * exp_ch3.adb: When using the Restricted run time, pass the
657 preallocated Ada_Task_Control_Block when creating a task.
658
6592004-07-15 Ed Schonberg <schonberg@gnat.com>
660
661 * sem_util.adb (Normalize_Actuals): If there are no actuals on a
662 function call that is itself an actual in an enclosing call, diagnose
663 problem here rather than assuming that resolution will catch it.
664
665 * sem_ch7.adb (Analyze_Package_Specification): If the specification is
666 the local copy of a generic unit for a formal package, and the generic
667 is a child unit, install private part of ancestors before compiling
668 private part of spec.
669
670 * sem_cat.adb (Validate_Categorization_Dependency): Simplify code to
671 use scope entities rather than tree structures, to handle properly
672 parent units that are instances rewritten as bodies for inlining
673 purposes.
674
675 * sem_ch10.adb (Get_Parent_Entity, Implicit_With_On_Parent,
676 Remove_Parents): Handle properly a parent unit that is an
677 instantiation, when the unit has been rewritten as a body for inlining
678 purposes.
679
680 * par.adb (Goto_List): Global variable to collect goto statements in a
681 given unit, for use in detecting natural loops.
682
683 * par-ch5.adb (P_Goto_Statement): Add goto to global Goto_List, for
684 use in detecting natural loops.
685
686 * par-labl.adb (Find_Natural_Loops): Recognize loops create by
687 backwards goto's, and rewrite as a infinite loop, to improve locality
688 of temporaries.
689
690 * exp_util.adb (Force_Evaluation): Recognize a left-hand side
691 subcomponent that includes an indexed reference, to prevent the
692 generation of copies that would miscompile the desired assignment
693 statement.
694 (Build_Task_Image_Decls): Add a numeric suffix to
695 generated name for string variable, to avoid spurious conflicts with
696 the name of the type of a single protected object.
697
698 * exp_ch4.adb (Expand_Array_Equality): If indices are distinct, use a
699 loop with an explicit exit statement, to avoid generating an
700 out-of-range value with 'Succ leading to spurious constraint_errors
701 when compiling with -gnatVo.
702
7032004-07-15 Thomas Quinot <quinot@act-europe.fr>
704
705 * sem_ch4.adb (Analyze_Slice): Always call Analyze on the prefix: it
706 might not be analyzed yet, even if its Etype is already set (case of an
707 unchecked conversion built using Unchecked_Convert_To, for example).
708 If the prefix has already been analyzed, this will be a nop anyway.
709
710 * exp_ch5.adb (Make_Tag_Ctrl_Assignment): For an assignment of a
711 controller type, or an assignment of a record type with controlled
712 components, copy only user data, and leave the finalization chain
713 pointers untouched.
714
7152004-07-15 Vincent Celier <celier@gnat.com>
716
717 * make.adb (Collect_Arguments): Improve error message when attempting
718 to compile a source not part of any project, when -x is not used.
719
720 * prj.ads: (Defined_Variable_Kind): New subtype
721
722 * prj-attr.adb (Register_New_Package): Two new procedures to register
723 a package with or without its attributes.
724 (Register_New_Attribute): Mew procedure to register a new attribute in a
725 package.
726 New attribute oriented subprograms: Attribute_Node_Id_Of,
727 Attribute_Kind_Of, Set_Attribute_Kind_Of, Attribute_Name_Of,
728 Variable_Kind_Of, Set_Variable_Kind_Of, Optional_Index_Of,
729 Next_Attribute.
730 New package oriented subprograms: Package_Node_Id_Of,
731 Add_Unknown_Package, First_Attribute_Of, Add_Attribute.
732
733 * prj-attr.ads (Attribute_Node_Id): Now a private, self initialized
734 type.
735 (Package_Node_Id): Now a private, self initialized type
736 (Register_New_Package): New procedure to register a package with its
737 attributes.
738 New attribute oriented subprograms: Attribute_Node_Id_Of,
739 Attribute_Kind_Of, Set_Attribute_Kind_Of, Attribute_Name_Of,
740 Variable_Kind_Of, Set_Variable_Kind_Of, Optional_Index_Of,
741 Next_Attribute.
742 New package oriented subprograms: Package_Node_Id_Of,
743 Add_Unknown_Package, First_Attribute_Of, Add_Attribute.
744
745 * prj-dect.adb (Parse_Attribute_Declaration,
746 Parse_Package_Declaration): Adapt to new spec of Prj.Attr.
747
748 * prj-makr.adb (Make): Parse existing project file before creating
749 other files. Fail if there was an error during parsing.
750
751 * prj-proc.adb (Add_Attributes, Process_Declarative_Items): Adapt to
752 new spec of Prj.Attr.
753
754 * prj-strt.adb (Attribute_Reference, Parse_Variable_Reference): Adapt
755 to new spec of Prj.Attr.
756
7572004-07-15 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
758
759 * utils2.c: Fix typo in comment.
760
7612004-07-14 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
54805e13
RK
762
763 * trans.c (add_decl_expr): Clear TREE_READONLY if clear DECL_INITIAL.
764 * utils.c (unchecked_convert): Don't do two VIEW_CONVERT_EXPRs.
765
a1c7af89
AS
7662004-07-14 Andreas Schwab <schwab@suse.de>
767
768 * trans.c (gnat_init_stmt_group): Remove duplicate definition.
769
a5cb3b30
AC
7702004-07-13 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
771
772 * decl.c: (gnat_to_gnu_entity, object case): Convert initializer to
773 object type.
774 (gnat_to_gnu_entity, case E_Record_Subtype): Properly set
775 TYPE_STUB_DECL.
776
777 * misc.c (gnat_types_compatible_p): New function.
778 (LANG_HOOKS_TYPES_COMPATIBLE_P): New hook, to use it.
779 (LANG_HOOKS_TYPE_MAX_SIZE, gnat_type_max_size): New.
780
781 * trans.c (gigi): Move processing of main N_Compilation_Unit here.
782 (gnat_to_gnu, case N_Compilation_Unit): Just handle nested case here.
783 (add_stmt): Force walking of sizes and DECL_INITIAL for DECL_EXPR.
784 (mark_visited): Don't mark dummy type.
785 (tree_transform <N_Procedure_Call_Statement>): Unless this is an In
786 parameter, we must remove any LJM building from GNU_NAME.
787 (gnat_to_gnu, case N_String_Literal): Fill in indices in CONSTRUCTOR.
788 (pos_to_constructor): Use int_const_binop.
789 (gnat_to_gnu, case N_Identifier): Don't reference DECL_INITIAL of
790 PARM_DECL.
791
792 * utils.c (gnat_init_decl_processing): Don't make two "void" decls.
793 (gnat_pushlevel): Set TREE_USE on BLOCK node.
794 (gnat_install_builtins): Add __builtin_memset.
795
7962004-07-13 Olivier Hainque <hainque@act-europe.fr>
797
798 * decl.c (gnat_to_gnu_entity <E_Variable>): If we are making a pointer
799 for a renaming, stabilize the initialization expression if we are at a
800 local level. At the local level, uses of the renaming may be performed
801 by a direct dereference of the initializing expression, and we don't
802 want possible variables there to be evaluated for every use.
803
804 * trans.c (gnat_stabilize_reference, gnat_stabilize_reference_1):
805 Propagate TREE_SIDE_EFFECTS and TREE_THIS_VOLATILE to avoid loosing
806 them on the way. Account for the fact that we may introduce side
807 effects in the process.
808
0976078c
RH
8092004-07-13 Richard Henderson <rth@redhat.com>
810
811 * misc.c (default_pass_by_ref): Use pass_by_reference.
812
9dcf6e73
JM
8132004-07-11 Joseph S. Myers <jsm@polyomino.org.uk>
814
815 * misc.c (LANG_HOOKS_CLEAR_BINDING_STACK, LANG_HOOKS_PUSHLEVEL,
816 LANG_HOOKS_POPLEVEL, LANG_HOOKS_SET_BLOCK): Remove.
817
ac45df5d
RH
8182004-07-08 Richard Henderson <rth@redhat.com>
819
820 * trans.c (gnat_to_gnu <N_Handled_Sequence_Of_Statements>): Update
821 commentary.
822
15ce9ca2
AC
8232004-07-06 Vincent Celier <celier@gnat.com>
824
825 * vms_conv.ads: Minor reformatting.
826 Alphabetical order for enumerated values of type Command_Type, to have
827 the command in alphabetical order for the usage.
828
829 * vms_conv.adb (Process_Argument): Set Keep_Temporary_Files to True for
830 the special qualifier /KEEP_TEMPORARY_FILES (minimum 6 characters).
831
832 * gnat_ugn.texi: Document new switch -dn for the GNAT driver.
833
834 * makegpr.adb (Global_Archive_Exists): New global Boolean variable
835 (Add_Archive_Path): Only add the global archive if there is one.
836 (Build_Global_Archive): Set Global_Archive_Exists depending if there is
837 or not any object file to put in the global archive, and don't build
838 a global archive if there is none.
839 (X_Switches): New table
840 (Compile_Link_With_Gnatmake): Pass to gnatmake the -X switches stored
841 in the X_Switches table, if any.
842 (Initialize): Make sure the X_Switches table is empty
843 (Scan_Arg): Record -X switches in table X_Switches
844
845 * opt.ads (Keep_Temporary_Files): New Boolean flag, defaulted to False.
846
847 * make.adb: Minor comment fix
848
849 * gnatname.adb (Gnatname): When not on VMS, and gnatname has been
850 invoked with directory information, add the directory in front of the
851 path.
852
853 * gnatchop.adb (Gnatchop): When not on VMS, and gnatchop has been
854 invoked with directory information, add the directory in front of the
855 path.
856
857 * gnatcmd.adb (Delete_Temp_Config_Files): Only delete temporary files
858 when Keep_Temporary_Files is False.
859 (GNATCmd): When not on VMS, and the GNAT driver has been invoked with
860 directory information, add the directory in front of the path.
861 When not on VMS, handle new switch -dn before the command to set
862 Keep_Temporary_Files to True.
863 (Non_VMS_Usage): Use lower case for the non VMS usage: this is valid
864 everywhere.
865
866 * gnatlink.adb (Gnatlink): When not on VMS, and gnatlink has been
867 invoked with directory information, add the directory in front of the
868 path.
869
8702004-07-06 Thomas Quinot <quinot@act-europe.fr>
871
872 * snames.ads, snames.adb (Name_Stub): New name for the distributed
873 systems annex.
874
875 * rtsfind.ads: New RTE TC_Object, for DSA/PolyORB.
876 New RTEs RAS_Proxy_Type and RAS_Proxy_Type_Access, for DSA.
877
878 * g-socket.adb (To_Timeval): Fix incorrect conversion of
879 Selector_Duration to Timeval for the case of 0.0.
880
881 * exp_util.ads (Evolve_Or_Else): Fix overenthusiastic copy/paste of
882 documentation from Evolve_And_Then.
883
8842004-07-06 Jose Ruiz <ruiz@act-europe.fr>
885
886 * s-taprop-tru64.adb, s-taprop-os2.adb,
887 s-taprop-mingw.adb, s-taprop-posix.adb: Update comment.
888
8892004-07-06 Robert Dewar <dewar@gnat.com>
890
891 * s-osinte-hpux.ads, s-osinte-freebsd.ads,
892 s-osinte-lynxos.ads, s-taprop-lynxos.adb, s-osinte-tru64.ads,
893 s-osinte-aix.ads, s-osinte-irix.ads, s-taprop-irix.adb,
894 s-interr-sigaction.adb, s-taprop-irix-athread.adb,
895 s-osinte-hpux-dce.adb, s-taprop-hpux-dce.adb,
896 s-taprop-linux.adb, s-taprop-dummy.adb, s-taprop-solaris.adb,
897 s-interr-vms.adb, s-osinte-vms.ads, s-taprop-vms.adb,
898 s-osinte-vxworks.ads, s-osprim-vxworks.adb, a-numaux-x86.adb,
899 a-except.adb, a-exexpr.adb, a-intsig.adb, a-tags.adb,
900 a-tags.ads, bindgen.ads, checks.adb, checks.adb,
901 csets.ads, einfo.ads, einfo.ads, elists.adb, exp_ch4.adb,
902 exp_ch7.adb, exp_dist.adb, exp_util.adb, freeze.adb,
903 g-dynhta.adb, gnatmem.adb, g-regexp.adb, inline.adb,
904 i-os2thr.ads, osint.adb, prj.adb, scng.adb, sem_cat.adb,
905 sem_ch10.adb, sem_ch12.adb, sem_ch4.adb, sem_ch7.adb,
906 sem_ch8.adb, sem_disp.adb, sem_prag.adb, sem_res.adb,
907 sem_type.adb, sem_type.ads, sem_warn.adb, s-ficobl.ads,
908 s-finimp.adb, s-htable.adb, sinfo.ads, sinput-l.ads,
909 s-interr.adb, s-interr.ads, sprint.adb, s-tarest.adb,
910 s-tasini.ads, s-taskin.ads, s-taskin.ads, uname.adb,
911 vms_data.ads: Minor reformatting,
912 Fix bad box comment format.
913
914 * gnat_rm.texi: Fix minor grammatical error
915
916 * sem_attr.adb, exp_attr.adb: New attribute Has_Access_Values
917
918 * sem_util.ads, sem_util.adb (Requires_Transient_Scope): Allow many
919 more cases of discriminated records to be recognized as not needing a
920 secondary stack.
921 (Has_Access_Values): New function.
922
923 * snames.h, snames.adb, snames.ads: New attribute Has_Access_Values
924
925 * cstand.adb, layout.ads, layout.adb, sem_ch13.ads: Change name
926 Set_Prim_Alignment to Set_Elem_Alignment (more accurate correspondence
927 with LRM terminology).
928 Change terminology in comments primitive type => elementary type.
929
9302004-07-06 Ed Schonberg <schonberg@gnat.com>
931
932 PR ada/15602
933 * sem_ch7.adb (Unit_Requires_Body): For a generic package, the formal
934 parameters do not impose any requirements on the presence of a body.
935
9362004-07-06 Ed Schonberg <schonberg@gnat.com>
937
938 PR ada/15593
939 * sem_ch12.adb (Analyze_Package_Instantiation): If the generic is not a
940 compilation unit and is in an open scope at the point of instantiation,
941 assume that a body may be present later.
942
9432004-07-06 Ed Schonberg <schonberg@gnat.com>
944
945 * sem_ch13.adb (Analyze_Attribute_Definition_Clause, case 'Size):
946 Improve error message when specified size is not supported.
947
948 * sem_ch6.adb (Maybe_Primitive_Operation): A library-level subprogram
949 is never a primitive operation.
950
cb42deba
AS
9512004-07-05 Andreas Schwab <schwab@suse.de>
952
953 * ada-tree.h (TYPE_LEFT_JUSTIFIED_MODULAR_P): Use
954 RECORD_OR_UNION_CHECK.
955 (TYPE_CONTAINS_TEMPLATE_P): Likewise.
956
98877933
KC
9572004-07-04 Kelley Cook <kcook@gcc.gnu.org>
958
959 * Make-lang.in (doc/gnat_ugn_unw.texi): Eliminate explicit
960 dependency on xgnatugn, instead build it via a submake.
961 (ADA_INFOFILES): Add doc/gnat_ugn_unw.texi.
962
8fff4fc1
RH
9632004-07-04 Richard Henderson <rth@redhat.com>
964
965 * utils2.c (gnat_mark_addressable): Don't put_var_into_stack.
966
4dfa0342
RH
9672004-07-01 Richard Henderson <rth@redhat.com>
968
969 * trans.c (gnat_stabilize_reference): Don't handle RTL_EXPR.
970 * utils.c (max_size): Likewise.
971
909f21b3
RK
9722004-06-28 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
973
974 * decl.c: Remove calls to add_decl_expr, pushdecl, rest_of_compilation,
975 and rest_of_type_compilation; add arg to create_*_decl.
976 (annotate_decl_with_node): Deleted.
977 (gnat_to_gnu_entity, case E_Array_Type): Set location of fields.
978 * gigi.h (get_decls, block_has_vars, pushdecl): Deleted.
979 (get_current_block_context, gnat_pushdecl): New declarations.
980 (gnat_init_stmt_group): Likewise.
981 (create_var_decl, create_type_decl, create_subprog_decl): Add new arg.
982 * misc.c (LANG_HOOKS_CLEAR_BINDING_STACK): Deleted.
983 (LANG_HOOKS_GETDECLS, LANG_HOOKS_PUSHDECL): Deleted.
984 (gnat_init): Call gnat_init_stmt_group.
985 * trans.c (global_stmt_group, gnu_elab_proc_decl): New variables.
986 (gnu_pending_elaboration_list): Deleted.
987 (mark_visited, mark_unvisited, gnat_init_stmt_group): New functions.
988 (gigi): Rearrange initialization calls and move some to last above.
989 (gnat_to_gnu): If statement and not in procedure, go into elab proc.
990 Delete calls to add_decl_expr; add arg to create_*_decl.
991 (gnat_to_gnu, case N_Loop): Recalculate side effects on COND_EXPR.
992 (gnat_to_gnu, case N_Subprogram_Body): Move some code to
993 begin_subprog_body and call it.
994 Don't push and pop ggc context.
995 (gnat_to_gnu, case N_Compilation_Unit): Rework to support elab proc.
996 (add_stmt): Remove handling of DECL_EXPR from here.
997 If not in function, mark visited.
998 (add_decl_expr): Put global at top level.
999 Check for cases of DECL_INITIAL we have to handle here.
1000 (process_type): Add extra arg to create_type_decl.
1001 (build_unit_elab): Rework to just gimplify.
1002 * utils.c (pending_elaborations, elist_stack, getdecls): Deleted.
1003 (block_has_vars, mark_visited, add_pending_elaborations): Likewise.
1004 (get_pending_elaborations, pending_elaborations_p): Likewise.
1005 (push_pending_elaborations, pop_pending_elaborations): Likewise.
1006 (get_elaboration_location, insert_elaboration_list): Likewise.
1007 (gnat_binding_level): Renamed from ada_binding_level.
1008 (init_gnat_to_gnu): Don't clear pending_elaborations.
1009 (global_bindings_p): Treat as global if no current_binding_level.
1010 (set_current_block_context): New function.
1011 (gnat_pushdecl): Renamed from pushdecl; major rework.
1012 All callers changed.
1013 (create_type_decl, create_var_decl, create_subprog_decl): Add new arg.
1014 (finish_record_type): Call call pushdecl for stub decl.
1015 (function_nesting_depth): Deleted.
1016 (begin_subprog_body): Delete obsolete code.
1017 * utils2.c (build_call_alloc_dealloc): Add new arg to create_var_decl.
1018
246d2ceb
AC
10192004-06-28 Robert Dewar <dewar@gnat.com>
1020
1021 * mlib-tgt-tru64.adb, mlib-tgt-aix.adb, mlib-tgt-irix.adb,
1022 mlib-tgt-irix.adb, mlib-tgt-hpux.adb, mlib-tgt-linux.adb,
1023 mlib-tgt-linux.adb, mlib-tgt-solaris.adb, mlib-tgt-solaris.adb,
1024 mlib-tgt-vms-alpha.adb, mlib-tgt-vms-alpha.adb, mlib-tgt-vms-ia64.adb,
1025 a-strmap.adb, a-strmap.ads, clean.adb: Minor reformatting
1026
1027 * exp_util.adb (Is_Possibly_Unaligned_Slice): Completely rewritten, to
1028 deal with problem of inefficient slices on machines with strict
1029 alignment, when the slice is a component of a composite.
1030
1031 * checks.adb (Apply_Array_Size_Check): Do not special case 64-bit
1032 machines, we need the check there as well.
1033
10342004-06-28 Ed Schonberg <schonberg@gnat.com>
1035
1036 * exp_ch5.adb (Expand_Assign_Array): Use correct condition to
1037 determine safe copying direction for overlapping slice assignments
1038 when component is controlled.
1039
1040 * sem_ch12.adb (Instantiate_Formal_Package): Implicit operations of a
1041 formal derived type in the actual for a formal package are visible in
1042 the enclosing instance.
1043
10442004-06-28 Ed Schonberg <schonberg@gnat.com>
1045
1046 PR ada/15600
1047 * sem_util.adb (Trace_Components): Diagnose properly an illegal
1048 circularity involving a private type whose completion includes a
1049 self-referential component.
1050 (Enter_Name): Use Is_Inherited_Operation to distinguish a source
1051 renaming or an instantiation from an implicit derived operation.
1052
10532004-06-28 Pascal Obry <obry@gnat.com>
1054
1055 * mlib-tgt-mingw.adb: (Library_Exists_For): Remove "lib" prefix from
1056 DLL.
1057 (Library_File_Name_For): Idem.
1058
10592004-06-28 Matthew Gingell <gingell@gnat.com>
1060
1061 * g-traceb.ads: Add explanatory note on the format of addresses
1062 expected by addr2line.
1063
10642004-06-28 Jerome Guitton <guitton@act-europe.fr>
1065
1066 * Makefile.in: Force debugging information on s-tasdeb.adb,
1067 a-except.adb and s-assert.adb needed by the debugger.
1068
10692004-06-28 Vincent Celier <celier@gnat.com>
1070
1071 * make.adb (Collect_Arguments_And_Compile): Change Flag1 to
1072 Need_To_Build_Lib.
1073 (Gnatmake): Ditto.
1074
1075 * mlib-prj.adb (Check_Library): Replace Flag1 with Need_To_Build_Lib
1076
1077 * prj.adb: Minor reformatting
1078 (Project_Empty): Change Flag1 to Need_To_Build_Lib. Remove Flag2.
1079
1080 * prj.ads: Comment updates
1081 Minor reformatting
1082 (Project_Data): Change Flag1 to Need_To_Build_Lib.
1083 Remove Flag2: not used.
1084
1085 * prj-dect.adb (Parse_Declarative_Items): Accept "null" as a
1086 declaration.
1087
1088 * gnat_ugn.texi: Put a "null;" declaration in one project file example
1089
1090 * gnat_rm.texi: Document Empty declarations "null;".
1091
1092 * makegpr.adb (Compile_Link_With_Gnatmake): Put the global archives in
1093 front of the linker options.
1094 (Link_Foreign): Put the global archives and the libraries in front of
1095 the linker options.
1096
10972004-06-28 Javier Miranda <miranda@gnat.com>
1098
1099 * rtsfind.adb: (Get_Unit_Name): Fix typo in comment
1100 (RTU_Loaded): Code cleanup
1101 (Set_RTU_Loaded): New procedure to register as *loaded* explicitly
1102 withed predefined units.
1103
1104 * rtsfind.ads (Set_RTU_Loaded): New procedure to register as *loaded*
1105 explicitly withed predefined units.
1106 Fix typo in comment
1107
1108 * sem_ch10.adb (Analyze_Compilation_Unit): Register as *loaded*
1109 explicitly withed predefined units.
1110
bce3da32
RK
11112004-06-26 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1112
1113 * ada-tree.def (DECL_STMT): Deleted.
1114 * ada-tree.h (IS_ADA_STMT): Now test against STMT_STMT.
1115 (DECL_STMT_VAR): Deleted.
1116 * decl.c: add_decl_stmt now add_decl_expr.
1117 * gigi.h: Likewise.
1118 * trans.c: Likewise.
1119 (gnat_gimplify_type_sizes, gnat_gimplify_one_sizepos): Deleted.
1120 (gnat_to_gnu, case N_Subprogram_Body): Set cfun->function_end_locus.
1121 (add_stmt): Only handle padded type here.
1122 (add_stmt_with_node): Allow gnat_node to not be present.
1123 (gnat_gimplify_stmt, case USE_STMT): Set *STMT_P to null.
1124 (gnat_gimplify_stmt, case DECL_STMT): Deleted.
1125 (gnat_stabilize_reference_1): If COMPONENT_REF of fat pointer,
1126 make a SAVE_EXPR for the entire fat pointer.
1127 * utils.c (pushdecl): Walk a DECL_EXPR in global case.
1128 (create_index_type): Make a DECL_EXPR.
1129 (end_subprog_body): Don't call allocate_struct_function here but
1130 do clear cfun.
1131
0da2c8ac
AC
11322004-06-25 Pascal Obry <obry@gnat.com>
1133
1134 * makegpr.adb (Build_Library): Remove parameter Lib_Address and
1135 Relocatable from Build_Dynamic_Library call.
1136
1137 * gnat_ugn.texi: Change documentation about Library_Kind. Dynamic and
1138 Relocatable are now synonym.
1139
1140 * Makefile.in: Use s-parame-mingw.adb on MingW platform.
1141
1142 * mlib-prj.adb (Build_Library): Remove DLL_Address constant definition.
1143 Remove parameter Lib_Address and Relocatable from Build_Dynamic_Library
1144 call.
1145
1146 * mlib-tgt.ads, mlib-tgt.adb (Build_Dynamic_Library): Remove parameter
1147 Lib_Address and Relocatable.
1148 (Default_DLL_Address): Removed.
1149
1150 * mlib-tgt-tru64.adb, mlib-tgt-aix.adb, mlib-tgt-irix.adb,
1151 mlib-tgt-hpux.adb, mlib-tgt-linux.adb, mlib-tgt-solaris.adb,
1152 mlib-tgt-vms-alpha.adb, mlib-tgt-vms-ia64.adb, mlib-tgt-vxworks.adb:
1153 (Build_Dynamic_Library): Remove parameter Lib_Address and Relocatable.
1154 (Default_DLL_Address): Removed.
1155
1156 * mlib-tgt-mingw.adb: Ditto.
1157 (Build_Dynamic_Library): Do not add "lib" prefix to the DLL name.
1158
1159 * s-taprop-mingw.adb (Create_Task): Use Adjust_Storage_Size to compute
1160 the initial thread stack size.
1161
1162 * a-strmap.ads: Move package L to private part as it is not used in
1163 the spec. Found while reading code.
1164
11652004-06-25 Olivier Hainque <hainque@act-europe.fr>
1166
1167 * tracebak.c: Introduce support for a GCC infrastructure based
1168 implementation of __gnat_backtrace.
1169
1170 * raise.c: Don't rely on a C mapping of the GNAT_GCC_Exception record
1171 any more. Use accessors instead. This eases maintenance and relaxes
1172 some alignment constraints.
1173 (_GNAT_Exception structure): Remove the Ada specific fields
1174 (EID_For, Adjust_N_Cleanups_For): New accessors, exported by
1175 a-exexpr.adb.
1176 (is_handled_by, __gnat_eh_personality): Replace component references to
1177 exception structure by use of the new accessors.
1178
1179 * init.c (__gnat_initialize): Adjust comments to match the just
1180 reverted meaning of the -static link-time option.
1181
1182 * adaint.c (convert_addresses): Arrange not to define a stub for
1183 mips-irix any more, as we now want to rely on a real version from a
1184 recent libaddr2line.
1185
1186 * a-exexpr.adb: Provide new accessors to a GNAT_GCC occurrence, so that
1187 the personality routine can use them and not have to rely on a C
1188 counterpart of the record anymore. This simplifies maintenance and
1189 relaxes the constraint of having Standard'Maximum_Alignment match
1190 BIGGEST_ALIGNMENT.
1191 Update comments, and add a section on the common header alignment issue.
1192
11932004-06-25 Geert Bosch <bosch@gnat.com>
1194
1195 * a-ngelfu.adb (Tanh): Use full 20 digit precision for constants in
1196 polynomial approximation. Fixes inconsistency with Cody/Waite algorithm.
1197
11982004-06-25 Robert Dewar <dewar@gnat.com>
1199
1200 * gnat_rm.texi: Fix section on component clauses to indicate that the
1201 restriction on byte boundary placement still applies for bit packed
1202 arrays.
1203 Add comment on stack usage from Initialize_Scalars
1204
1205 * gnat_ugn.texi: Add documentation for -gnatyLnnn
1206
1207 * stylesw.ads, stylesw.adb: Implement new -gnatyLnnn option for
1208 limiting nesting level.
1209
1210 * usage.adb: Add line for -gnatyLnnn switch
1211
1212 * g-debpoo.ads, xtreeprs.adb, sinput.ads, sem_ch13.ads,
1213 sem_ch13.adb, exp_aggr.adb: Minor reformatting
1214
1215 * sem_prag.adb (Process_Atomic_Shared_Volatile): Set Is_Atomic on base
1216 type as well as on the subtype. This corrects a problem in freeze in
1217 setting alignments of atomic types.
1218
1219 * sem_eval.ads: Minor comment typo fixed
1220
1221 * par-util.adb (Push_Scope_Stack): Check for violation of max nesting
1222 level. Minor reformatting.
1223
1224 * fname.adb (Is_Predefined_File_Name): Require a letter after the
1225 minus sign. This means that file names like a--b.adb will not be
1226 considered predefined.
1227
1228 * freeze.adb: Propagate new flag Must_Be_On_Byte_Boundary to containing
1229 record Test new flag and give diagnostic for bad component clause.
1230 (Freeze_Entity): Set alignment of array from component alignment in
1231 cases where this is safe to do.
1232
1233 * exp_pakd.adb: Set new flag Must_Be_On_Byte_Boundary for large packed
1234 arrays.
1235
1236 * cstand.adb: (Create_Standard): Set alignment of String to 1
1237
1238 * einfo.ads, einfo.adb: Introduce new flag Must_Be_On_Byte_Boundary
1239
1240 * exp_ch4.adb (Expand_Array_Equality): Improve efficiency of generated
1241 code in the common constrained array cases.
1242
1243 * a-storio.adb: Change implementation to avoid possible alignment
1244 problems on machines requiring strict alignment (data should be moved
1245 as type Buffer, not type Elmt).
1246
1247 * checks.adb (Apply_Array_Size_Check): Improve these checks by
1248 killing the overflow checks which we really do not need (64-bits is
1249 enough).
1250
12512004-06-25 Vincent Celier <celier@gnat.com>
1252
1253 * makegpr.adb (Is_Included_In_Global_Archive): New Boolean function
1254 (Add_Archives.Recursive_Add_Archives): Call Add_Archive_Path
1255 inconditionally for the main project.
1256 (Recursive_Add_Archives.Add_Archive_Path): New procedure
1257 (Link_Executables.Check_Time_Stamps): New procedure
1258 (Link_Executables.Link_Foreign): New procedure
1259 Changes made to reduce nesting level of this package
1260 (Check): New procedure
1261 (Add_Switches): When not in quiet output, check that a switch is not
1262 the concatenation of several valid switches. If it is, issue a warning.
1263 (Build_Global_Archive): If the global archive is rebuilt, linking need
1264 to be done.
1265 (Compile_Sources): Rebuilding a library archive does not imply
1266 rebuilding the global archive.
1267 (Build_Global_Archive): New procedure
1268 (Build_Library): New name for Build_Archive, now only for library
1269 project
1270 (Check_Archive_Builder): New procedure
1271 (Create_Global_Archive_Dependency_File): New procedure
1272 (Gprmake): Call Build_Global_Archive before linking
1273 * makegpr.adb: Use Other_Sources_Present instead of Sources_Present
1274 throughout.
1275 (Scan_Arg): Display the Copyright notice when -v is used
1276
1277 * gnat_ugn.texi: Document new switch -files= (VMS qualifier /FILES=)
1278 for gnatls.
1279
1280 * vms_data.ads: Add qualifier /MAX_NESTING=nnn (-gnatyLnnn) for GNAT
1281 COMPILE.
1282 Add new GNAT LIST qualifier /FILES=
1283 Added qualifier /DIRECTORY= to GNAT METRIC
1284 Added qualifier /FILES= to GNAT METRIC
1285 Added qualifier /FILES to GNAT PRETTY
1286
1287 * switch.adb (Is_Front_End_Switch): Refine the test for --RTS or -fRTS,
1288 to take into account both versions of the switch.
1289
1290 * switch-c.adb (Scan_Front_End_Switches): New switch -gnatez. Should
1291 always be the last switch to the gcc driver. Disable switch storing so
1292 that switches automatically added by the gcc driver are not put in the
1293 ALI file.
1294
1295 * prj.adb (Project_Empty): Take into account changes in components of
1296 Project_Data.
1297
1298 * prj.ads (Languages_Processed): New enumaration value All_Languages.
1299
1300 * prj.ads (Project_Data): Remove component Lib_Elaboration: never
1301 used. Split Boolean component Ada_Sources_Present in two Boolean
1302 components Ada_Sources_Present and Other_Sources_Present.
1303 Minor reformatting
1304
1305 * prj-env.adb (For_All_Source_Dirs.Add): Use Ada_Sources_Present
1306 instead of Sources_Present.
1307 (Set_Ada_Paths.Add.Recursive_Add): Ditto
1308
1309 * prj-nmsc.adb: Minor reformatting
1310 (Check_Ada_Naming_Scheme): New name of procedure Check_Naming_Scheme
1311 (Check_Ada_Naming_Scheme_Validity): New name of previous procedure
1312 Check_Ada_Naming_Scheme.
1313 Change Sources_Present to Ada_Sources_Present or Other_Sources_Present
1314 throughout.
1315
1316 * prj-part.adb (Post_Parse_Context_Clause): New Boolean parameter
1317 In_Limited.
1318 Make sure that all cycles where there is at least one "limited with"
1319 are detected.
1320 (Parse_Single_Project): New Boolean parameter In_Limited
1321
1322 * prj-proc.adb (Recursive_Check): When Process_Languages is
1323 All_Languages, call first Prj.Nmsc.Ada_Check, then
1324 Prj.Nmsc.Other_Languages_Check.
1325
1326 * prj-proc.adb (Process): Use Ada_Sources_Present or
1327 Other_Sources_Present (instead of Sources_Present) depending on
1328 Process_Languages.
1329
1330 * lang-specs.h: Keep -g and -m switches in the same order, and as the
1331 last switches.
1332
1333 * lib.adb (Switch_Storing_Enabled): New global Boolean flag
1334 (Disable_Switch_Storing): New procedure. Set Switch_Storing_Enabled to
1335 False.
1336 (Store_Compilation_Switch): Do nothing if Switch_Storing_Enabled is
1337 False.
1338
1339 * lib.ads (Disable_Switch_Storing): New procedure.
1340
1341 * make.adb: Modifications to reduce nesting level of this package.
1342 (Check_Standard_Library): New procedure
1343 (Gnatmake.Check_Mains): New procedure
1344 (Gnatmake.Create_Binder_Mapping_File): New procedure
1345 (Compile_Sources.Compile): Add switch -gnatez as the last option
1346 (Display): Never display -gnatez
1347
1348 * Makefile.generic:
1349 When using $(MAIN_OBJECT), always use $(OBJ_DIR)/$(MAIN_OBJECT)
1350
1351 * gnatcmd.adb (Check_Project): New function
1352 (Process_Link): New procedure to reduce nesting depth
1353 (Check_Files): New procedure to reduce the nesting depth.
1354 For GNAT METRIC, include the inherited sources in extending projects.
1355 (GNATCmd): When GNAT LS is invoked with a project file and no files,
1356 add the list of files from the sources of the project file. If this list
1357 is too long, put it in a temp text files and use switch -files=
1358 (Delete_Temp_Config_Files): Delete the temp text file that contains
1359 a list of source for gnatpp or gnatmetric, if one has been created.
1360 (GNATCmd): For GNAT METRIC and GNAT PRETTY, if the number of sources
1361 in the project file is too large, create a temporary text file that
1362 list them and pass it to the tool with "-files=<temp text file>".
1363 (GNATCmd): For GNAT METRIC add "-d=<abject dir>" as the first switch
1364
1365 * gnatlink.adb (Gnatlink): Do not compile with --RTS= when the
1366 generated file is in not in Ada.
1367
1368 * gnatls.adb: Remove all parameters And_Save that are no longer used.
1369 (Scan_Ls_Arg): Add processing for -files=
1370 (Usage): Add line for -files=
1371
1372 * g-os_lib.adb (On_Windows): New global constant Boolean flag
1373 (Normalize_Pathname): When on Windows and the path starts with a
1374 directory separator, make sure that the resulting path will start with
1375 a drive letter.
1376
1377 * clean.adb (Clean_Archive): New procedure
1378 (Clean_Project): When there is non-Ada code, delete the global archive,
1379 the archive dependency files, the object files and their dependency
1380 files, if they exist.
1381 (Gnatclean): Call Prj.Pars.Parse for All_Languages, not for Ada only.
1382
13832004-06-25 Thomas Quinot <quinot@act-europe.fr>
1384
1385 * sinfo.ads: Fix typo in comment.
1386
1387 * sem_dist.adb (Process_Remote_AST_Attribute): Simplify code that uses
1388 the TSS for remote access-to-subprogram types, since these TSS are
1389 always present once the type has been analyzed.
1390 (RAS_E_Dereference): Same.
1391
1392 * sem_attr.adb (Analyze_Attribute): When analysis of an attribute
1393 reference raises Bad_Attribute, mark the reference as analyzed so the
1394 node (and any children resulting from rewrites that could have occurred
1395 during the analysis that ultimately failed) is not analyzed again.
1396
1397 * exp_ch7.ads (Find_Final_List): Fix misaligned comment.
1398
1399 * exp_dist.adb: Minor comment fix.
1400
1401 * exp_ch4.adb (Expand_N_Allocator): For an allocator whose expected
1402 type is an anonymous access type, no unchecked deallocation of the
1403 allocated object can occur. If the object is controlled, attach it with
1404 a count of 1. This allows attachment to the Global_Final_List, if
1405 no other relevant list is available.
1406 (Get_Allocator_Final_List): For an anonymous access type that is
1407 the type of a discriminant or record component, the corresponding
1408 finalisation list is the one of the scope of the type.
1409
14102004-06-25 Ed Schonberg <schonberg@gnat.com>
1411
1412 * sem_ch3.adb (Replace_Type): When computing the signature of an
1413 inherited subprogram, use the first subtype if the derived type
1414 declaration has no constraint.
1415
1416 * exp_ch6.adb (Add_Call_By_Copy_Code): Check that formal is an array
1417 before applying previous optimization. Minor code cleanup.
1418
1419 * exp_util.adb (Is_Possibly_Unaligned_Slice): If the component is
1420 placed at the beginning of an unpacked record without explicit
1421 alignment, a slice of it will be aligned and does not need a copy when
1422 used as an actual.
1423
14242004-06-25 Ed Schonberg <schonberg@gnat.com>
1425
1426 PR ada/15591
1427 PR ada/15592
1428 * sem_ch8.adb (Attribute_Renaming): Reject renaming if the attribute
1429 reference is written with expressions mimicking parameters.
1430
14312004-06-25 Hristian Kirtchev <kirtchev@gnat.com>
1432
1433 PR ada/15589
1434 * sem_ch3.adb (Build_Derived_Record_Type): Add additional check to
1435 STEP 2a. The constraints of a full type declaration of a derived record
1436 type are checked for conformance with those declared in the
1437 corresponding private extension declaration. The message
1438 "not conformant with previous declaration" is emitted if an error is
1439 detected.
1440
14412004-06-25 Vasiliy Fofanov <fofanov@act-europe.fr>
1442
1443 * g-traceb.ads: Document the need for -E binder switch in the spec.
1444
1445 * g-trasym.ads: Document the need for -E binder switch in the spec.
1446
14472004-06-25 Jose Ruiz <ruiz@act-europe.fr>
1448
1449 * sem_prag.adb: Add handling of pragma Detect_Blocking.
1450
1451 * snames.h, snames.ads, snames.adb: Add entry for pragma
1452 Detect_Blocking.
1453
1454 * s-rident.ads: Change reference to pragma Detect_Blocking.
1455
1456 * targparm.ads, targparm.adb: Allow pragma Detect_Blocking in
1457 system.ads.
1458
1459 * opt.ads (Detect_Blocking): New Boolean variable (defaulted to False)
1460 to indicate whether pragma Detect_Blocking is active.
1461
1462 * par-prag.adb: Add entry for pragma Detect_Blocking.
1463
1464 * rtsfind.adb (RTU_Loaded): Fix the temporary kludge to get past bug
1465 of not handling WITH.
1466 Note that this replaces the previous update which was incorrect.
1467
14682004-06-25 Javier Miranda <miranda@gnat.com>
1469
1470 * sem_ch10.adb (Re_Install_Use_Clauses): Force the installation of the
1471 use-clauses to have a clean environment.
1472
1473 * sem_ch8.adb (Install_Use_Clauses): Addition of a new formal to force
1474 the installation of the use-clauses to stablish a clean environment in
1475 case of compilation of a separate unit; otherwise the call to
1476 use_one_package is protected by the barrier Applicable_Use.
1477
1478 * sem_ch8.ads (Install_Use_Clauses): Addition of a new formal to force
1479 the installation of the use-clauses to stablish a clean environment in
1480 case of compilation of a separate unit.
1481 (End_Use_Clauses): Minor comment cleanup.
1482
14832004-06-25 Sergey Rybin <rybin@act-europe.fr>
1484
1485 * gnat_ugn.texi: Add description of the gnatpp 'files' switch
1486
65355d53
RH
14872004-06-23 Richard Henderson <rth@redhat.com>
1488
1489 * trans.c (gnat_gimplify_stmt): Update gimplify_type_sizes call.
1490
c0e3aa48
RK
14912004-06-20 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1492
1493 * decl.c (elaborate_expression, elaborate_expression_1): Arguments
1494 now bool instead of int.
1495 (gnat_to_gnu_entity, elaborate_expression_1): New arg to COMPONENT_REF.
1496 * trans.c (gnu_switch_label_stack): New function.
1497 (gnat_to_gnu, N_Object_Renaming_Declaration): Result is what the
1498 elaboration of renamed entity returns.
1499 (gnat_to_gnu, case N_Case_Statement): Add branches to end label.
1500 (add_decl_stmt): Don't add TYPE_DECL for UNCONSTRAINED_ARRAY_TYPE.
1501 (gnat_gimplify_stmt): Use alloc_stmt_list, not build_empty_stmt.
1502 (gnat_gimplify_stmt, case DECL_STMT): gimplify DECL_SIZE and
1503 DECL_SIZE_UNIT and simplify variable-sized case.
1504 (gnat_gimplify_type_sizes, gnat_gimplify_one_sizepos): Deleted.
1505 Callers changes to call gimplify_type_sizes and gimplify_one_sizepos.
1506 (gnat_stabilize_reference): Add arg to COMPONENT_REF.
1507 (build_unit_elab): Disable for now.
1508 * utils.c (mark_visited): New function.
1509 (pushdecl): Walk tree to call it for global decl.
1510 (update_pointer_to): Update all variants of pointer and ref types.
1511 Add arg to COMPONENT_REF.
1512 (convert): Likewise.
1513 Move check for converting between variants lower down.
1514 * utils2.c (build_simple_component_ref): Add arg to COMPONENT_REF.
1515 (build_allocator): Don't force type of MODIFY_EXPR.
1516 (gnat_mark_addressable, case VAR_DECL): Unconditionally call
1517 put_var_into_stack.
1518
966389ee
RK
15192004-06-14 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1520
1521 * ada-tree.def (LOOP_STMT, EXIT_STMT): Update documentation.
1522 * ada-tree.h (EXIT_STMT_LABEL): Renamed from EXIT_STMT_LOOP.
1523 * decl.c (gnat_to_gnu_entity): Also set force_global for imported
1524 subprograms.
1525 * trans.c (gnu_loop_label_stack): Renamed from gnu_loop_stmt_stack;
1526 all callers changed.
1527 (gnat_to_gnu, case N_Loop_Statement, case N_Exit_Statement): Change
1528 the way that EXIT_STMT finds the loop label.
1529 (gnat_gimplify_stmt, case LOOP_STMT, EXIT_STMT): Likewise.
1530 (gnat_gimplify_stmt, case DECL_STMT): Handle variable-sized decls here.
1531 (add_stmt): Use annotate_with_locus insted of setting directly.
1532 (pos_to_construct): Set TREE_PURPOSE of each entry to index.
1533 (gnat_stabilize_reference, case ARRAY_RANGE_REF): Merge with ARRAY_REF.
1534 * utils.c (gnat_install_builtins): Install __builtin_memcmp.
1535 (build_vms_descriptor): Add extra args to ARRAY_REF.
1536 (convert): Use VIEW_CONVERT_EXPR between aggregate types.
1537 * utils2.c (gnat_truthvalue_conversion, case INTEGER_CST, REAL_CST):
1538 New cases.
1539 (build_binary_op): Don't make explicit CONVERT_EXPR.
1540 Add extra rgs to ARRAY_REF.
1541
cc335f43
AC
15422004-06-14 Pascal Obry <obry@gnat.com>
1543
1544 * gnat_ugn.texi: Document relocatable vs. dynamic Library_Kind on
1545 Windows. Fix minor typo.
1546
1547 * mlib-tgt-mingw.adb: New implementation using the GCC -shared option
1548 which is now supported on Windows. With this implementation using the
1549 Library Project feature is no different on Windows than on UNIX.
1550
15512004-06-14 Vincent Celier <celier@gnat.com>
1552
1553 * makegpr.adb (Compile_Sources): Nothing to do when there are no
1554 non-Ada sources.
1555
1556 * mlib-tgt-vxworks.adb (Library_Exists_For): Remove incorrect comment
1557
1558 * prj-part.adb (Parse_Single_Project): When a duplicate project name is
1559 found, show the project name and the path of the previously parsed
1560 project file.
1561
15622004-06-14 Ed Schonberg <schonberg@gnat.com>
1563
1564 * exp_ch6.adb (Add_Call_By_Copy_Code): For an out-parameter that is an
1565 array, avoid copying the actual before the call.
1566
15672004-06-14 Thomas Quinot <quinot@act-europe.fr>
1568
1569 * g-debpoo.adb: Remove alignment assumptions from GNAT.Debug_Pools.
1570 Instead, allocate memory on worst-case alignment assumptions, and then
1571 return an aligned address within the allocated zone.
1572
15732004-06-14 Robert Dewar <dewar@gnat.com>
1574
1575 * bindgen.adb (Gen_Adainit_Ada): Do not generate external references to
1576 elab entities in predefined units in No_Run_Time_Mode.
1577 (Gen_Adainit_C): Same fix
1578 (Gen_Elab_Calls_Ada): Do not generate calls to elaborate predefined
1579 units in No_Run_Time_Mode
1580 (Gen_Elab_Calls_C): Same fix
1581
1582 * symbols-vms-alpha.adb: Minor reformatting
1583
1584 * g-debpoo.ads: Minor reformatting
1585
1586 * lib.adb (In_Same_Extended_Unit): Version working on node id's
1587
1588 * lib.ads (In_Same_Extended_Unit): Version working on node id's
1589
1590 * lib-xref.adb: Minor cleanup, use new version of In_Same_Extended_Unit
1591 working on nodes.
1592
1593 * make.adb: Minor reformatting
1594
1595 * par-ch12.adb: Minor reformatting
1596
1597 * par-prag.adb: Add dummy entry for pragma Profile_Warnings
1598
1599 * prj-strt.adb: Minor reformatting
1600
1601 * restrict.ads, restrict.adb: Redo handling of profile restrictions to
1602 be more general.
1603
1604 * sem_attr.adb: Minor reformatting
1605
1606 * sem_ch7.adb: Minor reformatting
1607
1608 * sem_elab.adb (Check_A_Call): Deal with problem of calling init proc
1609 for type in the same unit as the object declaration.
1610
1611 * sem_prag.adb (Check_Arg_Is_External_Name): New procedure, allows
1612 static string expressions and not just string literals.
1613 Minor reformatting
1614 (Set_Warning): Reset restriction warning flag for restriction pragma
1615 Implement pragma Profile_Warnings
1616 Implement pragma Profile (Restricted)
1617 Give obolescent messages for old restrictions and pragmas
1618
1619 * snames.h, snames.ads, snames.adb: Add new entry for pragma
1620 Profile_Warnings.
1621
1622 * s-rident.ads: Add declarations for restrictions required by profile
1623 Restricted and profile Ravenscar.
1624
1625 * targparm.ads, targparm.adb: Allow pragma Profile in system.ads
1626
1627 * gnat_ugn.texi: Correct some missing entries in the list of GNAT
1628 configuration pragmas.
1629
5453d5bd
AC
16302004-06-11 Vincent Celier <celier@gnat.com>
1631
1632 * mlib-tgt-vms-alpha.adb (Build_Dynamic_Library): Issue switch -R to
1633 gnatsym, when symbol policy is Restricted.
1634
1635 * mlib-tgt-vms-ia64.adb (Build_Dynamic_Library): Issue switch -R to
1636 gnatsym, when symbol policy is Restricted.
1637
1638 * symbols-vms-alpha.adb (Initialize): When symbol policy is Restricted,
1639 read the symbol file.
1640 (Finalize): Fail in symbol policy Restricted if a symbol in the original
1641 symbol file is not in the object files. Do not create a new symbol file
1642 when symbol policy is Restricted.
1643
1644 * gnatbind.adb (Gnatbind): Initialize Snames, because Snames is used
1645 in Scng.
1646
1647 * gnatsym.adb (Parse_Vmd_Line): Process new switch -R for symbol policy
1648 Restricted.
1649 (Usage): Line for new switch -R
1650
1651 * make.adb (Initialize): When the platform is not VMS, add the
1652 directory where gnatmake is invoked in the front of the path, if
1653 gnatmake is invoked with directory information. Change the Scan_Args
1654 while loop to a for loop.
1655 (Recursive_Compute_Depth): Remove parameter Visited. Improve efficiency:
1656 if Depth is equal or greater than the proposed depth, there is nothing
1657 to do.
1658 (Initialize): Call Recursive_Compute_Depth with initial Depth equal to 1
1659 instead of 0.
1660
1661 * prj.ads: Add new symbol policy Restricted.
1662
1663 * prj-dect.adb (Parse_Case_Construction): Call End_Case_Construction
1664 with the new parameters Check_All_Labels and Case_Location.
1665
1666 * prj-nmsc.adb (Ada_Check): Process new symbol policy Restricted
1667 (Library_Symbol_File needs to be defined).
1668
1669 * prj-strt.adb (End_Case_Construction): New parameters Check_All_Labels
1670 and Case_Location If Check_All_Labels is True, check that all values of
1671 the string type are used, and output warning(s) if they are not.
1672
1673 * prj-strt.ads (End_Case_Construction): New parameters Check_All_Labels
1674 and Case_Location.
1675
1676 * gnat_ugn.texi: Reorder subclauses in menus "Switches for gcc"
1677
1678 * gnat_ugn.texi: Update documentation about the library directory in
1679 Library Projects.
1680
1681 * makegpr.adb (Display_Command): In verbose mode, also display the
1682 value of the CPATH env var, when the compiler is gcc.
1683 (Initialize): Change the Scan_Args while loop to a for loop
1684 (Compile_Individual_Sources): Change directory to object directory
1685 before compilations.
1686
1687 * symbols.ads: New symbol policy Restricted.
1688
16892004-06-11 Olivier Hainque <hainque@act-europe.fr>
1690
1691 * a-except.adb (Raise_After_Setup family): Remove. The responsibility
1692 is now taken care of internally in the Exception_Propagation package
1693 and does not require clients assistance any more.
1694
1695 * a-exexpr.adb (Is_Setup_And_Not_Propagated,
1696 Set_Setup_And_Not_Propagated, and Clear_Setup_And_Not_Propagated): New
1697 functions. Helpers to maintain a predicate required in the handling of
1698 occurrence transfer between tasks.
1699 This is now handled internally and does not require clients assistance
1700 for the setup/propagate separation anymore.
1701 (Setup_Exception, Propagate_Exception): Simplify the Private_Data
1702 allocation strategy, handle the Setup_And_Not_Propagated predicate and
1703 document.
1704
1705 * s-taenca.adb (Check_Exception): Use raise_with_msg instead of
1706 raise_after_setup, now that everything is handled internally within the
1707 setup/propagation engine.
1708
17092004-06-11 Hristian Kirtchev <kirtchev@gnat.com>
1710
1711 * exp_ch6.adb (Expand_Inlined_Call): Add function Formal_Is_Used_Once.
1712 Add additional conditions for the case of an actual being a simple
1713 name or literal. Improve inlining by preventing the generation
1714 of temporaries with a short lifetime (one use).
1715
17162004-06-11 Hristian Kirtchev <kirtchev@gnat.com>
1717
1718 PR ada/15587
1719
1720 * einfo.ads: Minor comment updates for Has_Completion and
1721 E_Constant list of flags.
1722
1723 * sem_ch3.adb (Analyze_Object_Declaration): Full constant declarations
1724 and constant redeclarations now set the Has_Completion flag of their
1725 defining identifiers.
1726
1727 * sem_ch7.adb (Analyze_Package_Spec): Add procedure
1728 Inspect_Deferred_Constant_Completion.
1729 Used to detect private deferred constants that have not been completed
1730 either by a constant redeclaration or pragma Import. Emits error message
1731 "constant declaration requires initialization expression".
1732
1733 * sem_prag.adb (Process_Import_Or_Interface): An Import pragma now
1734 completes a deferred constant.
1735
17362004-06-11 Geert Bosch <bosch@gnat.com>
1737
1738 * eval_fat.adb (Decompose_Int): Fix rounding of negative numbers.
1739
1740 * s-fatgen.adb (Gradual_Scaling): Correct off-by-one error in
1741 calculating exponent for scaling denormal numbers.
1742 (Leading_Part): Properly raise Constraint_Error for zero or negative
1743 Adjustment.
1744 (Remainder): Properly raise Constraint_Error for zero divisor.
1745
17462004-06-11 Thomas Quinot <quinot@act-europe.fr>
1747
1748 * sem_util.adb: Minor reformatting.
1749
1750 * exp_ch2.adb (Expand_Entry_Parameter): Generate an explicit
1751 dereference when accessing the entry parameter record.
1752 (Check_Array_Type): Always check for possible implicit dereference.
1753 (maybe_implicit_dereference): Rename to check_no_implicit_derefence.
1754 Abort if a pointer is still present (denoting that an implicit
1755 dereference was left in the tree by the front-end).
1756
1757 * sem_attr.adb (Expand_Entry_Parameter): Generate an explicit
1758 dereference when accessing the entry parameter record.
1759 (Check_Array_Type): Always check for possible implicit dereference.
1760 (maybe_implicit_dereference): Rename to check_no_implicit_derefence.
1761 Abort if a pointer is still present (denoting that an implicit
1762 dereference was left in the tree by the front-end).
1763
17642004-06-11 Emmanuel Briot <briot@act-europe.fr>
1765
1766 * g-debpoo.adb (Deallocate, Dereference): Add prefix "error:" to error
1767 message, like the compiler itself does. Easier to parse the output.
1768
1769 * g-debpoo.ads: (Allocate, Deallocate, Dereference): Add comments.
1770
1771 * gnat_ugn.texi (gnatxref, gnatfind): Clarify that source names should
1772 be base names, and not includes directories.
1773
17742004-06-11 Arnaud Charlet <charlet@act-europe.fr>
1775
1776 * Makefile.generic ($(EXEC)): Depend on $(OBJECTS), not $(OBJ_FILES),
1777 so that dependencies are properly taken into account by make.
1778
17792004-06-11 Arnaud Charlet <charlet@act-europe.fr>
1780
1781 PR ada/15622
1782 * s-unstyp.ads, s-maccod.ads, sem_ch8.adb, s-auxdec.ads,
1783 exp_intr.adb, s-auxdec-vms_64.ads: Fix typo: instrinsic -> intrinsic
1784
17852004-06-11 Jerome Guitton <guitton@act-europe.fr>
1786
1787 * Makefile.in (install-gnatlib): install target-specific run-time files.
1788
1789 * Make-lang.in: Remove obsolete targets.
1790
17912004-06-11 Ed Schonberg <schonberg@gnat.com>
1792
1793 * par-ch12.adb (P_Generic): Add scope before analyzing subprogram
1794 specification, to catch misuses of program unit names.
1795
1796 * sem_res.adb (Resolve_Type_Conversion): Do not emit warnings on
1797 superfluous conversions in an instance.
1798
17992004-06-11 Ed Schonberg <schonberg@gnat.com>
1800
1801 PR ada/15403
1802
1803 * sem_ch12.adb (Save_References): If operator node has been folded to
1804 enumeration literal, associated_node must be discarded.
1805
18062004-06-11 Jose Ruiz <ruiz@act-europe.fr>
1807
1808 * s-stchop-vxworks.adb: Add required pragma Convention to
1809 Task_Descriptor because it is updated by a C function.
1810
a98f59be
AC
18112004-06-08 Arnaud Charlet <charlet@act-europe.fr>
1812
1813 PR ada/15568
1814
1815 * Makefile.in: Remove target specific SO_OPT on IRIX
1816
821e1ea1
RK
18172004-06-07 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1818
1819 * ada-tree.def (TRANSFORM_EXPR, ALLOCATE_EXPR, USE_EXPR): Deleted.
1820 (GNAT_NOP_EXPR, GNAT_LOOP_ID, EXPR_STMT, NULL_STMT): Likewise.
1821 (BLOCK_STMT, IF_STMT, GOTO_STMT, LABEL_STMT, RETURN_STMT): Likewise.
1822 (ASM_STMT, BREAK_STMT, REGION_STMT,HANDLER_STMT): Likewise.
1823 (STMT_STMT, USE_STMT): New statement codes.
1824 (LOOP_STMT, EXIT_STMT): Make slight semantic changes.
1825 * ada-tree.h: Reflect above changes.
1826 (struct tree_loop_id): Deleted.
1827 (union lang_tree_node, struct lang_decl, struct lang_type):
1828 Now just contains a tree node; update macros using TYPE_LANG_SPECIFIC
1829 and DECL_LANGUAGE_SPECIFIC to reflect these changes.
1830 (DECL_INIT_BY_ASSIGN_P, TRE_LOOP_NODE_ID, TREE_SLOC): Deleted.
1831 (IS_ADA_STMT): New macro.
1832 * decl.c (annotate_decl_with_node): New function.
1833 (gnat_to_gnu_entity): Use it and Sloc_to_locus instead of set_lineno.
1834 (gnat_to_gnu_entity, case object): Remove call to expand CONVERT_EXPR.
1835 Call add_stmt_with_node to do needed assignments.
1836 Add call to update setjmp buffer directly, not via EXPR_STMT.
1837 (maybe_variable): Argment GNAT_NODE deleted.
1838 * gigi.h (maybe_variable): Likewise.
1839 (make_transform, add_stmt_with_node, set_block_for_group): New.
1840 (gnat_gimplify_expr, gnat_expand_body, Sloc_to_locus): Likewise.
1841 (set_block_jmpbuf_decl, get_block_jmpbuf_decl): Likewise.
1842 (discard_file_names, gnu_block_stack, gnat_to_code): Deleted.
1843 (set_lineno, set_lineno_from_sloc): Likewise.
1844 (record_code_position, insert_code_for): Likewise.
1845 (gnat_poplevel): Now returns void.
1846 (end_subprog_body): Now takes argument.
1847 * misc.c (cgraph.h, tree-inline.h): New includes.
1848 (gnat_tree_size, LANG_HOOKS_TREE_SIZE): Deleted.
1849 (gnat_post_options, LANG_HOOKS_POST_OPTIONS): New.
1850 (LANG_HOOKS_CALLGRAPH_EXPAND_FUNCTION): Likewise.
1851 (LANG_HOOKS_RTL_EXPAND_STMT, LANG_HOOKS_GIMPLIFY_EXPR): Likewise.
1852 (gnat_parse_file): Don't set immediate_size_expand.
1853 Call cgraph functions.
1854 (gnat_expand_expr): Remove most cases.
1855 (record_code_position, insert_code_for): Remove from here.
1856 * trans.c (toplev.h, tree-gimple.h): Now included.
1857 (discard_file_names): Deleted.
1858 (gnu_block_stack, gnu_block_stmt_node, gnu_block_stmt_free_list): Del.
1859 (first_nondeleted_insn, make_expr_stmt_from_rtl): Likewise.
1860 (struct stmt_group, current_stmt_group, stmt_group_free_list): New.
1861 (gnu_stack_free_list, record_cost_position, insert_code_for): Likewise.
1862 (add_cleanup, push_stack, gnat_gimplify_stmt, add_cleanup): Likewise.
1863 (gnat_gimplify_type_sizes, gnat_gimplify_one_sizepos): Likewise.
1864 (gnat_expand_body_1, gnat_gimplify_expr, annotate_with_node): Likewise.
1865 (set_block_for_group, add_stmt_list): Likewise.
1866 (start_stmt_group): Renamed from start_block_stmt.
1867 (end_stmt_group): Likewise, from end_block_stmt.
1868 (build_stmt_group): Likewise, from build_block_stmt, also add arg.
1869 (gigi): Don't set discard_file_names or call set_lineno.
1870 Disallow front end ZCX; call gnat_to_gnu, not gnat_to_code.
1871 (tree_transform): Deleted, now renamed to be gnat_to_gnu.
1872 Numerous changes throughout to reflect new names and complete
1873 function-at-a-time implementation.
1874 (gnat_expand_stmt): Delete or comment out all cases.
1875 (process_inlined_subprograms): Use add_stmt.
1876 (process_decls): Use gnat_to_gnu, not gnat_to_code, and don't
1877 call set_lineno; also remove unneeded block handling.
1878 (process_type): Remove unneeded block handling.
1879 (build_unit_elab): Remove calls to deleted functions.
1880 * utils.c (cgraph.h, tree-inline.h, tree-gimple.h): Now include.
1881 (tree-dump.h): Likewise.
1882 (struct ada_binding_level): Add field jmpbuf_decl.
1883 (gnat_define_builtin, gnat_install_builtins): New.
1884 (gnat_gimplify_function, gnat_finalize): Likewise.
1885 (gnat_poplevel): No longer return BLOCK, set it instead.
1886 Remove code dealing with nested functions.
1887 (gnat_init_decl_processing): Also set size_type_node.
1888 Call gnat_install_builtins.
1889 (create_var_decl): Don't set DECL_INIT_BY_ASSIGN.
1890 (create_subprog_decl): Change handling of inline_flag; set TREE_STATIC.
1891 Remove special-case for "main".
1892 (end_subprog_body): Add arg and rework for tree-ssa.
1893 (convert): Don't use GNAT_NOP_EXPR or look for TRANSFORM_EXPR.
1894 Add case for BOOLEAN_TYPE.
1895 * utils2.c (rtl.h): Now include.
1896 (build_call_raise): Test Debug_Flag_NN directly.
1897 (build_call_alloc_dealloc): Don't use local stack allocation for now.
1898 (gnat_mark_addressable, case GNAT_NOP_EXPR): Deleted.
1899 (gnat_mark_addressable, case VAR_DECL): Handle both early & late cases.
1900
0ab80019
AC
19012004-06-07 Robert Dewar <dewar@gnat.com>
1902
1903 * a-direct.ads, einfo.ads: Minor comment updates
1904
1905 * s-taprop-lynxos.adb, s-taprop-tru64.adb, s-taprop-irix.adb,
1906 s-taprop-irix-athread.adb, s-taprop-hpux-dce.adb, s-taprop-linux.adb,
1907 s-taprop-dummy.adb, s-taprop-os2.adb, s-taprop-solaris.adb,
1908 s-taprop-vms.adb, s-taprop-mingw.adb, s-taprop-vxworks.adb,
1909 s-taprop-posix.adb, s-taprop.ads, exp_dbug.adb: Minor reformatting.
1910
1911 * s-interr-sigaction.adb: Remove unreferenced variable
1912 (Attached_Interrupts). Minor reformatting.
1913 Avoid use of variable I (replace by J).
1914
1915 * par-ch10.adb: Fix text of one error message
1916
1917 * checks.adb, checks.ads, cstand.adb, vms_data.ads, errout.ads,
1918 exp_aggr.adb, exp_ch3.adb, exp_ch3.ads, exp_ch5.adb, exp_ch6.adb,
1919 exp_ch9.adb, exp_code.adb, gnat1drv.adb, lib-load.adb, lib-writ.adb,
1920 opt.adb, par.adb, opt.ads, par-ch11.adb, par-ch3.adb, par-ch4.adb,
1921 par-ch5.adb, par-ch6.adb, par-ch8.adb, par-ch9.adb, par-prag.adb,
1922 par-util.adb, scng.adb, sem_aggr.adb, sem_attr.adb, sem_cat.adb,
1923 sem_ch10.adb, sem_ch10.adb, sem_ch11.adb, sem_ch12.adb, sem_ch2.adb,
1924 sem_ch3.adb, sem_ch3.ads, sem_ch4.adb, sem_ch5.adb, sem_ch6.adb,
1925 sem_ch7.adb, sem_ch8.adb, sem_ch9.adb, sem_eval.adb, sem_prag.adb,
1926 sem_res.adb, sem_type.adb, sem_util.adb, sinfo.ads, snames.adb,
1927 snames.ads, snames.h, sprint.adb, switch-c.adb: Modifications for Ada
1928 2005 support.
1929
19302004-06-07 Doug Rupp <rupp@gnat.com>
1931
1932 * mlib-tgt-vms.adb: Rename mlib-tgt-vms.adb mlib-tgt-vms-alpha.adb
1933
1934 * s-vaflop-vms.adb: Rename s-vaflop-vms.adb to s-vaflop-vms-alpha.adb
1935
1936 * mlib-tgt-vms-ia64.adb: New file.
1937
1938 * Makefile.in: Rename mlib-tgt-vms.adb to mlib-tgt-vms-alpha.adb
1939 Add mlib-tgt-vms-ia64.adb
1940 Rename s-vaflop-vms.adb to s-vaflop-vms-alpha.adb.
1941 Move to alpha specific ifeq section.
1942 Add VMS specific versions of symbols.adb
1943 Renaming of 5q vms files.
1944
1945 * 5qsystem.ads renamed to system-vms_64.ads.
1946
19472004-06-07 Vincent Celier <celier@gnat.com>
1948
1949 * a-calend.ads: Add a GNAT Note comment after function Time_Of to
1950 explain that when a time of day corresponding to the non existing hour
1951 on the day switching to DST is specified, Split may return a different
1952 value for Seconds.
1953
1954 * gnatcmd.adb: Add processing of GNAT METRIC (for gnatmetric), similar
1955 to GNAT PRETTY.
1956
1957 * g-os_lib.adb (OpenVMS): New Boolean value imported from System.
1958 (Normalize_Pathname): Only resolve VMS logical names when on VMS.
1959
1960 * mlib-prj.adb (Build_Library): New flag Gtrasymobj_Needed, initialize
1961 to False.
1962 If Gtrasymobj_Needed is True, add the full path of g-trasym.obj to
1963 the linking options.
1964 (Build_Library.Check_Libs): On VMS, if there is a dependency on
1965 g-trasym.ads, set Gtrasymobj_Needed to True.
1966
1967 * prj-attr.adb: Add new package Metrics for gnatmetric
1968
1969 * prj-nmsc.adb (Record_Other_Sources): Put source file names in
1970 canonical case to take into account files with upper case characters on
1971 Windows.
1972 (Ada_Check): Load the reference symbol file name in the name buffer to
1973 check it, not the symbol file name.
1974
1975 * snames.ads, snames.adb: Add standard name Metrics (name of project
1976 file package for gnatmetric).
1977
1978 * vms_conv.ads: Add Metric to Comment_Type
1979
1980 * vms_conv.adb (Initialize): Add component dor Metric in Command_List
1981
1982 * vms_data.ads: Add qualifiers for GNAT METRIC
1983
1984 * makegpr.adb (Link_Executables): Take into account the switches
1985 specified in package Linker of the main project.
1986
19872004-06-07 Thomas Quinot <quinot@act-europe.fr>
1988
1989 * bindgen.adb (Set_Unit_Number): Units is an instance of Table, and so
1990 the index of the last element is Units.Last, not Units.Table'Last
1991 (which is usually not a valid index within the actually allocated
1992 storage for the table).
1993
1994 * exp_ch4.adb (Insert_Dereference_Action): Change predicate that
1995 determines whether to generate a call to a checked storage pool
1996 Dereference action.
1997 Generate such a call only for a dereference that either comes from
1998 source, or is the result of rewriting a dereference that comes from
1999 source.
2000
20012004-06-07 Romain Berrendonner <berrendo@act-europe.fr>
2002
2003 * bindgen.adb (Gen_Output_File): Add support for GAP builds.
2004
20052004-06-07 Eric Botcazou <ebotcazou@act-europe.fr>
2006
2007 (gnat_to_gnu_entity) <E_Array_Subtype>: For multi-dimensional arrays at
2008 file level, elaborate the stride for inner dimensions in alignment
2009 units, not bytes.
2010
2011 * exp_ch5.adb: Correct wrong reference to Component_May_Be_Bit_Aligned
2012 in a comment.
2013
20142004-06-07 Javier Miranda <miranda@gnat.com>
2015
2016 * exp_ch6.adb: Correct wrong modification in previous patch
2017
20182004-06-07 Vasiliy Fofanov <fofanov@act-europe.fr>
2019
2020 * g-trasym.ads: Corrected comment to properly reflect level of support
2021 on VMS.
2022
20232004-06-07 Hristian Kirtchev <kirtchev@gnat.com>
2024
2025 * lib-xref.adb (Generate_Reference): Add nested function Is_On_LHS. It
2026 includes case of a variable referenced on the left hand side of an
2027 assignment, therefore remove redundant code. Variables and prefixes of
2028 indexed or selected components are now marked as referenced on left
2029 hand side. Warnings are now properly emitted when variables or prefixes
2030 are assigned but not read.
2031
2032 * sem_warn.adb (Output_Unreferenced_Messages): Add additional checks to
2033 left hand side referenced variables. Private access types do not
2034 produce the warning "variable ... is assigned but never read".
2035 Add also additional checks to left hand side referenced variables.
2036 Aliased, renamed objects and access types do not produce the warning
2037 "variable ... is assigned but never read" since other entities may read
2038 the memory location.
2039
20402004-06-07 Jerome Guitton <guitton@act-europe.fr>
2041
2042 * Makefile.in: In the powerpc/vxworks-specific section, restore
2043 EXTRA_GNATRTL_NONTASKING_OBJS and EXTRA_GNATRTL_TASKING_OBJS (removed
2044 by mistake).
2045
20462004-06-07 Ed Schonberg <schonberg@gnat.com>
2047
2048 * sem_ch4.adb (Remove_Abstract_Operations): Refine the removal of
2049 predefined operators.
2050 Removes spurious type errors from g-trasym-vms.adb.
2051
2052 * sem_res.adb (Rewrite_Renamed_Operator): If intrinsic operator is
2053 distinct from the operator appearing in the source, call appropriate
2054 routine to insert conversions when needed, and complete resolution of
2055 node.
2056 (Resolve_Intrinsic_Operator): Fix cut-and-paste bug on transfer of
2057 interpretations for rewritten right operand.
2058 (Set_Mixed_Mode_Operand): Handle properly a universal real operand when
2059 the other operand is overloaded and the context is a type conversion.
2060
20612004-06-07 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2062
2063 * ada-tree.def (BLOCK_STMT): Now has two operands.
2064 (BREAK_STMT): New.
2065
2066 * ada-tree.h: (BLOCK_STMT_BLOCK): New macro.
2067
2068 * gigi.h: (gnat_poplevel): Now returns a tree.
2069
2070 * trans.c (end_block_stmt): Add arg; all callers changed.
2071 (tree_transform, case N_Case_Statement): Make a BLOCK_STMT for a WHEN.
2072 (start_block_stmt): Clear BLOCK_STMT_BLOCK.
2073 (add_stmt): Set TREE_TYPE.
2074 (gnat_expand_stmt, case BLOCK_STMT): Handle BLOCK_STMT_BLOCK.
2075 (gnat_expand_stmt, case BREAK_STMT): New case.
2076
2077 * utils.c (gnat_poplevel): Return a BLOCK, if we made one.
2078
20792004-06-07 Jose Ruiz <ruiz@act-europe.fr>
2080
2081 * s-stchop.adsm s-stchop.adb, s-stchop-vxworks.adb: Remove the
2082 procedure Set_Stack_Size that is not needed.
2083
20842004-06-07 Sergey Rybin <rybin@act-europe.fr>
2085
2086 * gnat_ugn.texi: Clarify the case when non-standard naming scheme is
2087 used for gnatpp input file and for the files upon which it depends
2088
20892004-06-07 Ben Brosgol <brosgol@gnat.com>
2090
2091 * gnat_ugn.texi: Wordsmithing of "GNAT and Libraries" chapter
2092
20932004-06-07 Arnaud Charlet <charlet@act-europe.fr>
2094
2095 * gnatvsn.ads: Bump version numbers appropriately.
2096 Add new build type.
2097
20982004-06-07 Pascal Obry <obry@gnat.com>
2099
2100 * gnat_ugn.texi: Improve comments about imported names and link names
2101 on Windows. Add a note about the requirement to use -k gnatdll's option
2102 when working with a DLL which has stripped stdcall symbols (no @nn
2103 suffix).
2104
8a36a0cc
AC
21052004-05-27 Vincent Celier <celier@gnat.com>
2106
2107 * vms_data.ads: Add new GNAT PRETTY qualifiers /NO_BACKUP and
2108 COMMENTS_LAYOUT=UNTOUCHED
2109
2110 * symbols-vms.adb, symbols-vms-alpha.adb: Renamed symbols-vms.adb to
2111 symbols-vms-alpha.adb
2112
21132004-05-27 Thomas Quinot <quinot@act-europe.fr>
2114
2115 * sem.ads: Clarify documentation on checks suppression.
2116
2117 * einfo.ads (Is_Known_Non_Null): Minor comment typo fix and rephrasing.
2118
21192004-05-27 Ed Schonberg <schonberg@gnat.com>
2120
2121 * sem_util.adb (Is_Descendent_Of): Examine properly all ancestors in
2122 the case of multiple derivations.
2123 (Is_Object_Reference): For a selected component, verify that the prefix
2124 is itself an object and not a value.
2125
2126 * sem_ch12.adb (Same_Instantiated_Constant): New name for
2127 Same_Instantiated_Entity.
2128 (Same_Instantiated_Variable): Subsidiary to
2129 Check_Formal_Package_Instance, to recognize actuals for in-out generic
2130 formals that are obtained from a previous formal package.
2131 (Instantiate_Subprogram_Body): Emit proper error when
2132 generating code and the proper body of a stub is missing.
2133
2134 * sem_ch4.adb (Remove_Address_Interpretations): If the operation still
2135 has a universal interpretation, do the disambiguation here.
2136
2137 * exp_ch4.adb (Expand_N_Type_Conversion,
2138 Expand_N_Unchecked_Type_Conversion): Special handling when target type
2139 is Address, to avoid typing anomalies when Address is a visible integer
2140 type.
2141
2142 * exp_ch6.adb (Expand_N_Subprogram_Body): Use Is_Descendent_Of_Address
2143 to determine whether a subprogram should not be marked Pure, even when
2144 declared in a pure package.
2145
21462004-05-27 Jose Ruiz <ruiz@act-europe.fr>
2147
2148 * gnat_ugn.texi: Replace pragma Ravenscar by pragma Profile.
2149
2150 * gnat_rm.texi: Replace Max_Entry_Queue_Depth by Max_Entry_Queue_Length
2151 Document No_Dynamic_Attachment, that supersedes No_Dynamic_Interrupts.
2152 Update the documentation about the Ravenscar profile, following the
2153 definition found in AI-249.
2154
2155 * sem_prag.adb: Use FIFO_Within_Priorities and Ceiling_Locking when
2156 setting the Profile (Ravenscar). This must be done in addition to
2157 setting the required restrictions.
2158
2159 * rtsfind.ads: Add the set of operations defined in package
2160 Ada.Interrupts.
2161
2162 * exp_ch6.adb: Check whether we are violating the No_Dynamic_Attachment
2163 restriction.
2164
21652004-05-27 Eric Botcazou <ebotcazou@act-europe.fr>
2166
2167 lang-specs.h: Always require -c or -S and always redirect to /dev/null
2168 if -gnatc or -gnats is passed.
2169
21702004-05-27 Hristian Kirtchev <kirtchev@gnat.com>
2171
2172 * sem_prag.adb (Sig_Flags): A Pragma_Unchecked_Union does not count as
2173 a significant reference. Warnings are now properly emitted when a
2174 discriminated type is not referenced.
2175
2176 * lib-xref.adb (Generate_Reference): A deferred constant completion,
2177 record representation clause or record type discriminant does not
2178 produce a reference to its corresponding entity. Warnings are now
2179 properly emitted when deferred constants and record types are not
2180 referenced.
2181
21822004-05-27 Geert Bosch <bosch@gnat.com>
2183
2184 * Makefile.in: Use long version of libm routines on ia64 gnu/linux.
2185 Fixes ACATS Annex G tests.
2186
21872004-05-27 Robert Dewar <dewar@gnat.com>
2188
2189 * rtsfind.adb (RTU_Loaded): Temporary kludge to get past bug of not
2190 handling WITH
2191
21922004-05-27 Arnaud Charlet <charlet@act-europe.fr>
2193
2194 * s-interr.adb (Server_Task): Take into account case of early return
2195 from sigwait under e.g. linux.
2196
21972004-05-27 Sergey Rybin <rybin@act-europe.fr>
2198
2199 * gnat_ugn.texi: Add description for the new gnatpp options:
2200 -rnb - replace the original source without creating its backup copy
2201 -c0 - do not format comments
2202
0fb2ea01
AC
22032004-05-24 Geert Bosch <bosch@gnat.com>
2204
2205 * a-numaux-x86.adb (Reduce): Reimplement using an approximation of Pi
2206 with 192 bits of precision, sufficient to reduce a double-extended
2207 arguments X with a maximum relative error of T'Machine_Epsilon, for X
2208 in -2.0**32 .. 2.0**32.
2209 (Cos, Sin): Always reduce arguments of 1/4 Pi or larger, to prevent
2210 reduction by the processor, which only uses a 68-bit approximation of
2211 Pi.
2212 (Tan): Always reduce arguments and compute function either using
2213 the processor's fptan instruction, or by dividing sin and cos as needed.
2214
22152004-05-24 Doug Rupp <rupp@gnat.com>
2216
2217 * adaint.c (__gnat_readdir): Cast CRTL function retun value to avoid
2218 gcc error on 32/64 bit VMS.
2219
22202004-05-24 Olivier Hainque <hainque@act-europe.fr>
2221
2222 * init.c (__gnat_error_handler): Handle EEXIST as EACCES for SIGSEGVs,
2223 since this is what we get for stack overflows although not documented
2224 as such.
2225 Document the issues which may require adjustments to our signal
2226 handlers.
2227
22282004-05-24 Ed Schonberg <schonberg@gnat.com>
2229
2230 * inline.adb (Add_Scope_To_Clean): Do not add cleanup actions to the
2231 enclosing dynamic scope if the instantiation is within a generic unit.
2232
22332004-05-24 Arnaud Charlet <charlet@act-europe.fr>
2234
2235 * exp_dbug.ads: Fix typo.
2236
2237 * Makefile.in: s-osinte-linux-ia64.ads was misnamed.
2238 Rename it to its proper name: system-linux-ia64.ads
2239 (stamp-gnatlib1): Remove extra target specific run time files when
2240 setting up the rts directory.
2241
22422004-05-24 Javier Miranda <miranda@gnat.com>
2243
2244 * einfo.ads, einfo.adb (Limited_Views): Removed.
2245 (Limited_View): New attribute that replaces the previous one. It is
2246 now a bona fide package with the limited-view list through the
2247 first_entity and first_private attributes.
2248
2249 * sem_ch10.adb (Install_Private_With_Clauses): Give support to
2250 limited-private-with clause.
2251 (Install_Limited_Withed_Unit): Install the private declarations of a
2252 limited-private-withed package. Update the installation of the shadow
2253 entities according to the new structure (see Build_Limited_Views)
2254 (Build_Limited_Views): Replace the previous implementation of the
2255 limited view by a package entity that references the first shadow
2256 entity plus the first shadow private entity (required for limited-
2257 private-with clause)
2258 (New_Internal_Shadow_Entity): Code cleanup.
2259 (Remove_Limited_With_Clause): Update the implementation to undo the
2260 new work carried out by Build_Limited_Views.
2261 (Build_Chain): Complete documentation.
2262 Replace Ada0Y by Ada 0Y in comments
2263 Minor reformating
2264
2265 * sem_ch3.adb (Array_Type_Declaration): In case of anonymous access
2266 types the level of accessibility depends on the enclosing type
2267 declaration.
2268
2269 * sem_ch8.adb (Find_Expanded_Name): Fix condition to detect shadow
2270 entities. Complete documentation of previous change.
2271
22722004-05-24 Robert Dewar <dewar@gnat.com>
2273
2274 * namet.adb: Minor reformatting
2275 Avoid use of name I (replace by J)
2276 Minor code restructuring
2277
2278 * sem_ch6.adb: Minor reformatting
2279
2280 * lib-writ.adb: Do not set restriction as active if this is a
2281 Restriction_Warning case.
2282
2283 * sem_prag.adb: Reset restriction warning flag if real pragma
2284 restriction encountered.
2285
2286 * s-htable.adb: Minor reformatting
2287 Change rotate count to 3 in Hash (improves hash for small strings)
2288
2289 * 5qsystem.ads: Add comments for type Address (no literals allowed).
2290
2291 * gnat_ugn.texi: Add new section of documentation "Code Generation
2292 Control", which describes the use of -m switches.
2293
22942004-05-24 Eric Botcazou <ebotcazou@act-europe.fr>
2295
a1db9d9c
AC
2296 trans.c (tree_transform) <N_Identifier>: Do the dereference directly
2297 through the DECL_INITIAL for renamed variables.
0fb2ea01 2298
7599f1b0
AC
22992004-05-24 Arnaud Charlet <charlet@act-europe.fr>
2300
2301 * s-osinte-linux-ia64.ads: Renamed system-linux-ia64.ads
2302
c37bb106
AC
23032004-05-19 Joel Brobecker <brobecker@gnat.com>
2304
2305 * exp_dbug.ads: Correct comments concerning handling of overloading,
2306 since we no longer use $ anymore.
2307
23082004-05-19 Sergey Rybin <rybin@act-europe.fr>
2309
2310 * sem_ch10.adb (Optional_Subunit): When loading a subunit, do not
2311 ignore errors if ASIS_Mode is set. This prevents creating ASIS trees
2312 with illegal subunits.
2313
23142004-05-19 Ed Schonberg <schonberg@gnat.com>
2315
2316 * sem_ch6.adb (Check_Following_Pragma): When compiling a subprogram
2317 body with front-end inlining enabled, check whether an inline pragma
2318 appears immediately after the body and applies to it.
2319
2320 * sem_prag.adb (Cannot_Inline): Emit warning if front-end inlining is
2321 enabled and the pragma appears after the body of the subprogram.
2322
b5e792e2
AC
23232004-05-17 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2324
2325 Part of function-at-a-time conversion
2326
2327 * misc.c (adjust_decl_rtl): Deleted.
2328 (LANG_HOOKS_PUSHLEVEL, LANG_HOOKS_POPLEVEL, LANG_HOOKS_SET_BLOCK):
2329 Define.
2330
2331 * gigi.h: (adjust_decl_rtl, kept_level_p, set_block): Deleted.
2332 (add_decl_stmt, add_stmt, block_has_vars): New functions.
2333 (gnat_pushlevel, gnat_poplevel): Renamed from pushlevel and poplevel.
2334
2335 * decl.c (elaborate_expression, maybe_pad_type): Call add_decl_stmt
2336 when making a decl.
2337 (gnat_to_gnu_entity): Likewise.
2338 Use add_stmt to update setjmp buffer.
2339 Set TREE_ADDRESSABLE instead of calling put_var_into_stack and
2340 flush_addressof.
2341 No longer call adjust_decl_rtl.
2342 (DECL_INIT_BY_ASSIGN_P): New macro.
2343 (DECL_STMT_VAR): Likewise.
2344
2345 * trans.c (gigi): Call start_block_stmt to make the outermost
2346 BLOCK_STMT.
2347 (gnat_to_code, gnu_to_gnu, tree_transform, process_decls, process_type):
2348 Call start_block_stmt and end_block_stmt temporarily.
2349 Use gnat_expand_stmt instead of expand_expr_stmt.
2350 (add_decl_stmt): New function.
2351 (tree_transform): Call it.
2352 (add_stmt): Also emit initializing assignment for DECL_STMT if needed.
2353 (end_block_stmt): Set type and NULL_STMT.
2354 (gnat_expand_stmt): Make recursize call instead of calling
2355 expand_expr_stmt.
2356 (gnat_expand_stmt, case DECL_STMT): New case.
2357 (set_lineno_from_sloc): Do nothing if global.
2358 (gnu_block_stmt_node, gnu_block_stmt_free_list): New variables.
2359 (start_block_stmt, add_stmt, end_block_stmt): New functions.
2360 (build_block_stmt): Call them.
2361 (gnat_to_code): Don't expand NULL_STMT.
2362 (build_unit_elab): Rename pushlevel and poplevel to gnat_* and change
2363 args.
2364 (tree_transform): Likewise.
2365 (tree_transform, case N_Null_Statement): Return NULL_STMT.
2366 (gnat_expand_stmt, case NULL_STMT): New case.
2367 (gnat_expand_stmt, case IF_STMT): Allow nested IF_STMT to have no
2368 IF_STMT_TRUE.
2369
2370 * utils2.c (gnat_mark_addressable, case VAR_DECL): Do not set
2371 TREE_ADDRESSABLE.
2372
2373 * utils.c (create_var_decl): Do not call expand_decl or
2374 expand_decl_init.
2375 Set TREE_ADDRESSABLE instead of calling gnat_mark_addressable.
2376 Set DECL_INIT_BY_ASSIGN_P when needed and do not generate MODIFY_EXPR
2377 here.
2378 (struct e_stack): Add chain_next to GTY.
2379 (struct binding_level): Deleted.
2380 (struct ada_binding_level): New struct.
2381 (free_block_chain): New.
2382 (global_binding_level, clear_binding_level): Deleted.
2383 (global_bindings_p): Rework to see if no chain.
2384 (kept_level_p, set_block): Deleted.
2385 (gnat_pushlevel): Renamed from pushlevel and extensive reworked to use
2386 new data structure and work directly on BLOCK node.
2387 (gnat_poplevel): Similarly.
2388 (get_decls): Look at BLOCK_VARS.
2389 (insert_block): Work directly on BLOCK node.
2390 (block_has_var): New function.
2391 (pushdecl): Rework for new binding structures.
2392 (gnat_init_decl_processing): Rename and rework calls to pushlevel and
2393 poplevel.
2394 (build_subprog_body): Likewise.
2395 (end_subprog_body): Likewise; also set up BLOCK in DECL_INITIAL.
2396
2397 * ada-tree.def (DECL_STMT, NULL_STMT): New codes.
2398
2399 * ada-tree.h: (DECL_INIT_BY_ASSIGN_P): New macro.
2400 (DECL_STMT_VAR): Likewise.
2401
24022004-05-17 Robert Dewar <dewar@gnat.com>
2403
2404 * restrict.ads, restrict.adb (Process_Restriction_Synonym): New
2405 procedure
2406
2407 * sem_prag.adb (Analyze_Pragma, case Restrictions): Cleanup handling
2408 of restriction synonyums by using
2409 Restrict.Process_Restriction_Synonyms.
2410
2411 * snames.ads, snames.adb: Add entries for Process_Restriction_Synonym
2412
2413 * s-restri.ads (Tasking_Allowed): Correct missing comment
2414
2415 * s-rident.ads: Add entries for restriction synonyms
2416
2417 * ali.adb: Fix some problems with badly formatted ALI files that can
2418 result in infinite loops.
2419
2420 * s-taprop-lynxos.adb, s-tpopsp-lynxos.adb, s-taprop-tru64.adb,
2421 s-tpopsp-posix-foreign.adb, s-taprop-irix.adb, s-interr-sigaction.adb,
2422 s-taprop-irix-athread.adb, s-taprop-hpux-dce.adb, s-taprop-linux.adb,
2423 s-taprop-dummy.adb, s-interr-dummy.adb, s-taprop-os2.adb,
2424 s-taprop-solaris.adb, s-tpopsp-solaris.adb, s-asthan-vms.adb,
2425 s-inmaop-vms.adb, s-interr-vms.adb, s-taprop-vms.adb,
2426 s-tpopde-vms.adb, s-taprop-mingw.adb, s-interr-vxworks.adb,
2427 s-taprop-vxworks.adb, s-tpopsp-vxworks.adb, s-taprop-posix.adb,
2428 s-tpopsp-posix.adb, s-tratas-default.adb, a-dynpri.adb,
2429 a-tasatt.adb, a-taside.adb, a-taside.ads, exp_attr.adb,
2430 exp_ch9.adb, g-thread.adb, rtsfind.ads, sem_attr.adb,
2431 s-interr.adb, s-interr.ads, s-soflin.ads, s-taasde.adb,
2432 s-taasde.ads, s-taenca.adb, s-taenca.ads, s-taprop.ads,
2433 s-tarest.adb, s-tarest.ads, s-tasdeb.adb, s-tasdeb.ads,
2434 s-tasini.adb, s-tasini.ads, s-taskin.adb, s-taskin.ads,
2435 s-tasque.adb, s-tasque.ads, s-tasren.adb, s-tasren.ads,
2436 s-tassta.adb, s-tassta.ads, s-tasuti.adb, s-tasuti.ads,
2437 s-tataat.adb, s-tataat.ads, s-tpinop.adb, s-tpinop.ads,
2438 s-tpoben.adb, s-tpobop.adb, s-tpobop.ads, s-tporft.adb,
2439 s-tposen.adb, s-tposen.ads, s-tratas.adb, s-tratas.ads: Change Task_ID
2440 to Task_Id (minor cleanup).
2441
24422004-05-17 Vincent Celier <celier@gnat.com>
2443
2444 * g-os_lib.adb (Normalize_Pathname.Final_Value): Remove trailing
2445 directory separator.
2446
2447 * prj-proc.adb (Recursive_Process): Inherit attribute Languages from
2448 project being extended, if Languages is not declared in extending
2449 project.
2450
24512004-05-17 Javier Miranda <miranda@gnat.com>
2452
2453 * sem_ch10.adb (Install_Limited_Withed_Unit): Do not install the
2454 limited view of a visible sibling.
2455
9bc856dd
AC
24562004-05-14 Robert Dewar <dewar@gnat.com>
2457
2458 * gnat_ugn.texi: Minor change to -gnatS documentation
2459
2460 * sprint.adb: Remove some instances of Assert (False) and for this
2461 purpose replace them by output of a ??? string.
2462
2463 * checks.adb, exp_aggr.adb, sem_elim.adb: Remove useless pragma
2464 Assert (False).
2465
2466 * lib-writ.adb, lib-load.adb, lib.ads, lib.adb: Remove Dependent_Unit
2467 flag processing. This was suppressing required dependencies in
2468 No_Run_Time mode and is not needed since the binder does not generate
2469 references for things in libgnat anyway.
2470
2471 * sem_ch3.adb (Access_Type_Declaration): Reorganize code to avoid GCC
2472 warning.
2473
24742004-05-14 Thomas Quinot <quinot@act-europe.fr>
2475
2476 * gnat_ugn.texi: Document AIX-specific issue with initialization of
2477 resolver library.
2478
2479 * exp_ch4.adb (Insert_Dereference_Action): Do not generate dereference
2480 action for the case of an actual parameter in an init proc call.
2481
24822004-05-14 Ed Schonberg <schonberg@gnat.com>
2483
2484 * sem_ch4.adb (Analyze_Selected_Component): If prefix is a protected
2485 subtype, check visible entities in base type.
2486
2487 * exp_ch7.adb (Clean_Simple_Protected_Objects): Do not generate cleanup
2488 actions if the object is a renaming.
2489
2490 * sem_ch12.adb (Same_Instantiated_Entity): Predicate for
2491 Check_Formal_Package_Instance, to determine more precisely when the
2492 formal and the actual denote the same entity.
2493
24942004-05-14 Javier Miranda <miranda@gnat.com>
2495
2496 * par-ch10.adb (P_Context_Clause): Complete documentation on AI-262
2497
2498 * sem_ch10.adb (Analyze_With_Clause): After analyzed, the entity
2499 corresponding to a private_with must be removed from visibility; it
2500 will be made visible later, just before we analyze the private part of
2501 the package.
2502 (Check_Private_Child_Unit): Allow private_with clauses in public
2503 siblings.
2504 (Install_Siblings): Make visible the private entities of private-withed
2505 siblings.
2506 (Install_Withed_Unit): Do not install the private withed unit if we
2507 are compiling a package declaration and the Private_With_OK flag was
2508 not set by the caller. These declarations will be installed later,
2509 just before we analyze the private part of the package.
2510
2511 * sem_ch3.adb (Analyze_Object_Declaration): In case of errors detected
2512 during the evaluation of the expression that initializes the object,
2513 decorate it with the expected type to avoid cascade errors.
2514 Code cleanup.
2515
2516 * sem_ch6.adb (Analyze_Subprogram_Body): If we are compiling a library
2517 subprogram we have to install the private_with clauses after its
2518 specification has been analyzed (as documented in AI-262.TXT).
2519
2520 * sem_ch8.adb (Has_Private_With): New function. Determines if the
2521 current compilation unit has a private with on a given entity.
2522 (Find_Direct_Name): Detect the Beaujolais problem described in
2523 AI-262.TXT
2524
2525 * sem_utils.ads, sem_util.adb (Is_Ancestor_Package): New function. It
2526 provides the functionality of the function Is_Ancestor that was
2527 previously available in sem_ch10. It has been renamed to avoid
2528 overloading.
2529
2530 * sprint.adb (Sprint_Node_Actual): Print limited_with clauses
2531
25322004-05-14 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2533
2534 * utils.c (build_vms_descriptor): Use SImode pointers.
2535
25362004-05-14 Vasiliy Fofanov <fofanov@act-europe.fr>
2537
2538 * gnat_ugn.texi: Revised chapter "GNAT and Libraries".
2539
25402004-05-14 GNAT Script <nobody@gnat.com>
2541
2542 * Make-lang.in: Makefile automatically updated
2543
084c663c
AC
25442004-05-14 Arnaud Charlet <charlet@act-europe.fr>
2545
2546 Renaming of target specific files for clarity
2547
2548 * Makefile.in: Rename GNAT target specific files.
2549
2550 * 31soccon.ads, 31soliop.ads 35soccon.ads, 3asoccon.ads,
2551 3bsoccon.ads, 3gsoccon.ads, 3hsoccon.ads, 3psoccon.ads,
2552 3ssoccon.ads, 3ssoliop.ads, 3veacodu.adb, 3vexpect.adb,
2553 3vsoccon.ads, 3vsocthi.adb, 3vsocthi.ads, 3vtrasym.adb,
2554 3wsoccon.ads, 3wsocthi.adb, 3wsocthi.ads, 3wsoliop.ads,
2555 3zsoccon.ads, 3zsocthi.adb, 3zsocthi.ads, 41intnam.ads,
2556 42intnam.ads, 45intnam.ads, 4aintnam.ads, 4cintnam.ads,
2557 4gintnam.ads, 4hexcpol.adb, 4hintnam.ads, 4lintnam.ads,
2558 4nintnam.ads, 4ointnam.ads, 4onumaux.ads, 4pintnam.ads,
2559 4sintnam.ads, 4vcaldel.adb, 4vcalend.adb, 4vcalend.ads,
2560 4vintnam.ads, 4wcalend.adb, 4wexcpol.adb, 4wintnam.ads,
2561 4zintnam.ads, 4znumaux.ads, 4zsytaco.adb, 4zsytaco.ads,
2562 51osinte.adb, 51osinte.ads, 51system.ads,
2563 52osinte.adb, 52osinte.ads, 53osinte.ads, 54osinte.ads,
2564 55osinte.adb, 55osinte.ads, 55system.ads, 56osinte.adb,
2565 56osinte.ads, 56system.ads, 56taprop.adb, 56taspri.ads,
2566 56tpopsp.adb, 57system.ads, 58system.ads,
2567 5amastop.adb, 5aml-tgt.adb, 5aosinte.adb, 5aosinte.ads,
2568 5asystem.ads, 5ataprop.adb, 5atasinf.ads, 5ataspri.ads,
2569 5atpopsp.adb, 5avxwork.ads, 5bml-tgt.adb, 5bosinte.adb,
2570 5bosinte.ads, 5bsystem.ads, 5cosinte.ads, 5csystem.ads,
2571 5dsystem.ads, 5esystem.ads, 5fintman.adb, 5fosinte.adb,
2572 5fosinte.ads, 5fsystem.ads, 5ftaprop.adb, 5ftasinf.ads,
2573 5ginterr.adb, 5gintman.adb, 5gmastop.adb, 5gml-tgt.adb,
2574 5gosinte.ads, 5gproinf.adb, 5gproinf.ads, 5gsystem.ads,
2575 5gtaprop.adb, 5gtasinf.adb, 5gtasinf.ads, 5gtpgetc.adb,
2576 5hml-tgt.adb, 5hosinte.adb, 5hosinte.ads, 5hparame.ads,
2577 5hsystem.ads, 5htaprop.adb, 5htaspri.ads, 5htraceb.adb,
2578 5iosinte.adb, 5iosinte.ads, 5itaprop.adb, 5itaspri.ads,
2579 5ksystem.ads, 5kvxwork.ads, 5lml-tgt.adb, 5losinte.ads,
2580 5lparame.adb, 5lsystem.ads, 5msystem.ads, 5mvxwork.ads,
2581 5ninmaop.adb, 5nintman.adb, 5nosinte.ads, 5nsystem.ads,
2582 5ntaprop.adb, 5ntaspri.ads, 5ointerr.adb, 5omastop.adb,
2583 5oosinte.adb, 5oosinte.ads, 5oosprim.adb, 5oparame.adb,
2584 5osystem.ads, 5otaprop.adb, 5otaspri.ads, 5posinte.ads,
2585 5posprim.adb, 5psystem.ads, 5pvxwork.ads, 5sintman.adb,
2586 5sml-tgt.adb, 5sosinte.adb, 5sosinte.ads, 5sosprim.adb,
2587 5sparame.adb, 5ssystem.ads, 5staprop.adb, 5stasinf.adb,
2588 5stasinf.ads, 5staspri.ads, 5stpopsp.adb, 5svxwork.ads,
2589 5tosinte.ads, 5usystem.ads, 5vasthan.adb, 5vdirval.adb,
2590 5vinmaop.adb, 5vinterr.adb, 5vintman.adb, 5vintman.ads,
2591 5vmastop.adb, 5vml-tgt.adb, 5vosinte.adb, 5vosinte.ads,
2592 5vosprim.adb, 5vosprim.ads, 5vparame.ads, 5vsymbol.adb,
2593 5vsystem.ads, 5vtaprop.adb, 5vtaspri.ads, 5vtpopde.adb,
2594 5vtpopde.ads, 5vtraent.adb, 5vtraent.ads, 5vvaflop.adb,
2595 5wdirval.adb, 5wgloloc.adb, 5wintman.adb, 5wmemory.adb,
2596 5wml-tgt.adb, 5wosinte.ads, 5wosprim.adb, 5wsystem.ads,
2597 5wtaprop.adb, 5wtaspri.ads, 5xparame.ads, 5xsystem.ads,
2598 5xvxwork.ads, 5yparame.ads, 5ysystem.ads, 5zinterr.adb,
2599 5zintman.adb, 5zintman.ads, 5zml-tgt.adb, 5zosinte.adb,
2600 5zosinte.ads, 5zosprim.adb, 5zparame.ads, 5zstchop.adb,
2601 5zsystem.ads, 5ztaprop.adb, 5ztaspri.ads, 5ztfsetr.adb,
2602 5ztpopsp.adb, 6vcpp.adb, 6vcstrea.adb, 6vinterf.ads,
2603 7sinmaop.adb, 7sintman.adb, 7sosinte.adb, 7sosprim.adb,
2604 7staprop.adb, 7staspri.ads, 7stfsetr.adb, 7stpopsp.adb,
2605 7straceb.adb, 7straces.adb, 7strafor.adb, 7strafor.ads,
2606 7stratas.adb, 86numaux.adb, 86numaux.ads: Replaced by files below.
2607
2608 * a-caldel-vms.adb, a-calend-mingw.adb, a-calend-vms.adb,
2609 a-calend-vms.ads, a-dirval-mingw.adb, a-dirval-vms.adb,
2610 a-excpol-abort.adb, a-excpol-interix.adb, a-intnam-aix.ads,
2611 a-intnam-dummy.ads, a-intnam-freebsd.ads, a-intnam-hpux.ads,
2612 a-intnam-interix.ads, a-intnam-irix.ads, a-intnam-linux.ads,
2613 a-intnam-lynxos.ads, a-intnam-mingw.ads, a-intnam-os2.ads,
2614 a-intnam-solaris.ads, a-intnam-tru64.ads, a-intnam-unixware.ads,
2615 a-intnam-vms.ads, a-intnam-vxworks.ads, a-numaux-libc-x86.ads,
2616 a-numaux-vxworks.ads, a-numaux-x86.adb, a-numaux-x86.ads,
2617 a-sytaco-vxworks.adb, a-sytaco-vxworks.ads, g-eacodu-vms.adb,
2618 g-expect-vms.adb, g-soccon-aix.ads, g-soccon-freebsd.ads,
2619 g-soccon-hpux.ads, g-soccon-interix.ads, g-soccon-irix.ads,
2620 g-soccon-mingw.ads, g-soccon-solaris.ads, g-soccon-tru64.ads,
2621 g-soccon-unixware.ads, g-soccon-vms.adb, g-soccon-vxworks.ads,
2622 g-socthi-mingw.adb, g-socthi-mingw.ads, g-socthi-vms.adb,
2623 g-socthi-vms.ads, g-socthi-vxworks.adb, g-socthi-vxworks.ads,
2624 g-soliop-mingw.ads, g-soliop-solaris.ads, g-soliop-unixware.ads,
2625 g-trasym-vms.adb, i-cpp-vms.adb, i-cstrea-vms.adb,
2626 interfac-vms.ads, mlib-tgt-aix.adb, mlib-tgt-hpux.adb,
2627 mlib-tgt-irix.adb, mlib-tgt-linux.adb, mlib-tgt-mingw.adb,
2628 mlib-tgt-solaris.adb, mlib-tgt-tru64.adb, mlib-tgt-vms.adb,
2629 mlib-tgt-vxworks.adb, s-asthan-vms.adb, s-gloloc-mingw.adb,
2630 s-inmaop-dummy.adb, s-inmaop-posix.adb, s-inmaop-vms.adb,
2631 s-interr-dummy.adb, s-interr-sigaction.adb, s-interr-vms.adb,
2632 s-interr-vxworks.adb, s-intman-dummy.adb, s-intman-irix.adb,
2633 s-intman-irix-athread.adb, s-intman-mingw.adb, s-intman-posix.adb,
2634 s-intman-solaris.adb, s-intman-vms.adb, s-intman-vms.ads,
2635 s-intman-vxworks.adb, s-intman-vxworks.ads, s-mastop-irix.adb,
2636 s-mastop-tru64.adb, s-mastop-vms.adb, s-mastop-x86.adb,
2637 s-memory-mingw.adb, s-osinte-aix.adb, s-osinte-aix.ads,
2638 s-osinte-aix-fsu.ads, s-osinte-dummy.ads, s-osinte-freebsd.adb,
2639 s-osinte-freebsd.ads, s-osinte-fsu.adb, s-osinte-hpux.ads,
2640 s-osinte-hpux-dce.adb, s-osinte-hpux-dce.ads, s-osinte-interix.ads,
2641 s-osinte-irix.adb, s-osinte-irix.ads, s-osinte-irix-athread.ads,
2642 s-osinte-linux.ads, s-osinte-linux-fsu.ads, s-osinte-linux-ia64.ads,
2643 s-osinte-lynxos-3.adb, s-osinte-lynxos-3.ads, s-osinte-lynxos.adb,
2644 s-osinte-lynxos.ads, s-osinte-mingw.ads, s-osinte-os2.adb,
2645 s-osinte-os2.ads, s-osinte-posix.adb, s-osinte-solaris.adb,
2646 s-osinte-solaris.ads, s-osinte-solaris-fsu.ads,
2647 s-osinte-solaris-posix.ads, s-osinte-tru64.adb, s-osinte-tru64.ads,
2648 s-osinte-unixware.adb, s-osinte-unixware.ads, s-osinte-vms.adb,
2649 s-osinte-vms.ads, s-osinte-vxworks.adb,
2650 s-osinte-vxworks.ads, s-osprim-mingw.adb,
2651 s-osprim-os2.adb, s-osprim-posix.adb, s-osprim-solaris.adb,
2652 s-osprim-unix.adb, s-osprim-vms.adb, s-osprim-vms.ads,
2653 s-osprim-vxworks.adb, s-parame-ae653.ads, s-parame-hpux.ads,
2654 s-parame-linux.adb, s-parame-os2.adb, s-parame-solaris.adb,
2655 s-parame-vms.ads, s-parame-vms-restrict.ads, s-parame-vxworks.ads,
2656 s-proinf-irix-athread.adb, s-proinf-irix-athread.ads,
2657 s-stchop-vxworks.adb, s-taprop-dummy.adb,
2658 s-taprop-hpux-dce.adb, s-taprop-irix.adb,
2659 s-taprop-irix-athread.adb, s-taprop-linux.adb, s-taprop-lynxos.adb,
2660 s-taprop-mingw.adb, s-taprop-os2.adb, s-taprop-posix.adb,
2661 s-taprop-solaris.adb, s-taprop-tru64.adb, s-taprop-vms.adb,
2662 s-taprop-vxworks.adb, s-tasinf-irix.ads, s-tasinf-irix-athread.adb,
2663 s-tasinf-irix-athread.ads, s-tasinf-solaris.adb, s-tasinf-solaris.ads,
2664 s-tasinf-tru64.ads, s-taspri-dummy.ads, s-taspri-hpux-dce.ads,
2665 s-taspri-linux.ads, s-taspri-lynxos.ads, s-taspri-mingw.ads,
2666 s-taspri-os2.ads, s-taspri-posix.ads, s-taspri-solaris.ads,
2667 s-taspri-tru64.ads, s-taspri-vms.ads, s-taspri-vxworks.ads,
2668 s-tfsetr-default.adb, s-tfsetr-vxworks.adb, s-tpopde-vms.adb,
2669 s-tpopde-vms.ads, s-tpopsp-lynxos.adb, s-tpopsp-posix.adb,
2670 s-tpopsp-posix-foreign.adb, s-tpopsp-solaris.adb, s-tpopsp-vxworks.adb,
2671 s-traceb-hpux.adb, s-traceb-mastop.adb, s-traces-default.adb,
2672 s-traent-vms.adb, s-traent-vms.ads, s-trafor-default.adb,
2673 s-trafor-default.ads, s-tratas-default.adb, s-vaflop-vms.adb,
2674 s-vxwork-alpha.ads, s-vxwork-m68k.ads, s-vxwork-mips.ads,
2675 s-vxwork-ppc.ads, s-vxwork-sparcv9.ads, s-vxwork-xscale.ads,
2676 symbols-vms.adb, system-aix.ads, system-freebsd-x86.ads,
2677 system-hpux.ads, system-interix.ads, system-irix-n32.ads,
2678 system-irix-o32.ads, system-linux-x86_64.ads,
2679 system-linux-x86.ads, system-lynxos-ppc.ads, system-lynxos-x86.ads,
2680 system-mingw.ads, system-os2.ads, system-solaris-sparc.ads,
2681 system-solaris-sparcv9.ads, system-solaris-x86.ads, system-tru64.ads,
2682 system-unixware.ads, system-vms.ads, system-vms-zcx.ads,
2683 system-vxworks-alpha.ads, system-vxworks-m68k.ads,
2684 system-vxworks-mips.ads, system-vxworks-ppc.ads,
2685 system-vxworks-sparcv9.ads, system-vxworks-xscale.ads: Replace files
2686 above.
2687
90afe2c9
ZW
26882004-05-13 Zack Weinberg <zack@codesourcery.com>
2689
2690 * trans.c (gnat_stabilize_reference_1): Remove case 'b'.
2691
6de9cd9a
DN
26922004-05-13 Diego Novillo <dnovillo@redhat.com>
2693
2694 Merge from tree-ssa-20020619-branch.
2695
2696 * config-lang.in (boot_language, build_by_default): Set
2697 to no.
2698 * utils.c (unchecked_convert): Use OEP_ONLY_CONST.
2699 (max_size): Add static chain op for call_expr.
2700
f5657d67
RS
27012004-05-12 Richard Sandiford <rsandifo@redhat.com>
2702
2703 PR target/15331
2704 * 5gmastop.adb (Roff): Choose between '4' and '0', not '4' and ' '.
2705
4413b636
RS
27062004-05-11 Roger Sayle <roger@eyesopen.com>
2707
2708 * utils.c (max_size): Use MIN_EXPR to find the minimum value of a
2709 COND_EXPR.
2710
5950a3ac
AC
27112004-05-10 Doug Rupp <rupp@gnat.com>
2712
2713 * 5qsystem.ads: Remove Short_Address subtype declaration. Moved to
2714 system.aux_dec.
2715
2716 * s-auxdec.ads: Add Short_Address subtype (moved here from System).
2717
2718 * Makefile.in: [VMS]: Add translation for 5qauxdec.ads.
2719
2720 * init.c: [VMS] Macroize LIB$ calls for IA64 and Alpha.
2721 Fixes undefined symbols in IA64 gnatlib.
2722
2723 * 5vinmaop.adb: Reference s-auxdec for Short_Address.
2724
2725 * 5xsystem.ads, 5vsystem.ads: Back out last change (addition of subtype
2726 Short_Address). This will be moved to system.auxdec.
2727
27282004-05-10 Thomas Quinot <quinot@act-europe.fr>
2729
2730 * sem_util.adb: Replace test for presence of a node that is always
2731 present with a call to Discard_Node.
2732
2733 * sem_ch10.adb (Analyze_Compilation_Unit): Remove superfluous call to
2734 Analyze on the library unit node after generation of distribution stub
2735 constructs. The call was a no-op because Unit_Node has already been
2736 Analyzed, and the tree fragments for the distribution stubs are
2737 analyzed as they are inserted in Exp_Dist.
2738 Update comment regarding to distribution stubs to reflect that we
2739 do not generate stub in separate files anymore.
2740
2741 * einfo.ads: Clarify the fact that a tagged private type has the
2742 E_Record_Type_With_Private Ekind.
2743
2744 * erroutc.adb: Minor reformatting
2745
2746 * erroutc.ads (Max_Msg_Length): Increase to cover possible larger
2747 values if line length is increased using -gnatyM (noticed during code
2748 reading).
2749
2750 * eval_fat.adb: Minor reformatting
2751 Put spaces around exponentiation operator
2752
27532004-05-10 Ed Schonberg <schonberg@gnat.com>
2754
2755 PR ada/15005
2756 * sem_util.adb (Is_Dependent_Component_Of_Mutable_Object): If prefix
2757 has been rewritten as an explicit dereference, retrieve type of
2758 original node to check for possibly unconstrained record type.
2759
27602004-05-10 Ed Schonberg <schonberg@gnat.com>
2761
2762 * exp_ch7.adb (Check_Visibly_Controlled): If given operation is not
2763 overriding, use the operation of the parent unconditionally.
2764
2765 * sem_ch4.adb (Remove_Address_Interpretations): Remove address
2766 operation when either operand is a literal, to avoid further
2767 ambiguities.
2768
2769 * sem_ch6.adb (New_Overloaded_Entity): If new entity is inherited and
2770 overridden by a previous explicit declaration, mark the previous entity
2771 as overriding.
2772
2773 * sem_disp.adb (Check_Dispatching_Operation): New predicate
2774 Is_Visibly_Controlled, to determine whether a declaration of a
2775 primitive control operation for a derived type overrides an inherited
2776 one. Add warning if the explicit declaration does not override.
2777
27782004-05-10 Vincent Celier <celier@gnat.com>
2779
2780 * gnatls.adb (Gnatls): Initialize Snames, to avoid assertion error in
2781 some cases when the sources are no longer present.
2782
2783 * make.adb (Collect_Arguments): Fail if an external source, not part
2784 of any project need to be compiled, when switch -x has not been
2785 specified.
2786
2787 * makeusg.adb: Document new switch -x
2788
2789 * opt.ads (External_Unit_Compilation_Allowed): New Boolean flag,
2790 defaulted to False.
2791
2792 * switch-m.adb (Scan_Make_Switches): New switch -x
2793
2794 * vms_data.ads: Add VMS qualifier /NON_PROJECT_UNIT_COMPILATION for
2795 gnatmake switch -x.
2796
2797 * gnat_ugn.texi: Document new gnatmake switch -x
2798
27992004-05-10 Eric Botcazou <ebotcazou@act-europe.fr>
2800
2801 * misc.c (gnat_init_options): Set flag_zero_initialized_in_bss to 0.
2802
2803 * utils.c (create_var_decl): Do not modify the DECL_COMMON flag.
2804 (process_attributes): Likewise.
2805
28062004-05-10 Joel Brobecker <brobecker@gnat.com>
2807
2808 * s-inmaop.ads: Fix spelling mistake in one of the comments.
2809
28102004-05-10 Robert Dewar <dewar@gnat.com>
2811
2812 * gnat_ugn.texi: Document that for config pragma files, the maximum
2813 line length is always 32767.
2814
2815 * gnat_rm.texi: For pragma Eliminate, note that concatenation of string
2816 literals is now allowed.
2817
2818 * gnat-style.texi: Remove statement about splitting long lines before
2819 an operator rather than after, since we do not follow this rule at all.
2820 Clarify rule (really lack of rule) for spaces around exponentiation
2821
2822 * sem_elim.adb: Allow concatenation of string literals as well as a
2823 single string literal for pragma arguments.
2824
2825 * sem_prag.ads, sem_prag.adb: (Is_Config_Static_String): New function
2826
2827 * a-textio.adb (Terminate_Line): Do not add line feed if nothing
2828 written for append case.
2829
2830 * frontend.adb: Changes to avoid checking max line length in config
2831 pragma files.
2832
2833 * g-os_lib.ads: Minor reformatting
2834
2835 * mlib-utl.adb: Do not define Max_Line_Length locally (definition was
2836 wrong in any case. Instead use standard value. Noticed during code
2837 reading.
2838
2839 * opt.ads (Max_Line_Length): New field, used to implement removal of
2840 limitation on length of lines when scanning config pragma files.
2841
2842 * osint.ads, prj-dect.adb, prj-strt.adb, prj-tree.adb,
2843 makeutl.ads, makeutl.adb: Minor reformatting
2844
2845 * scn.adb: Do not check line length while scanning config pragma files
2846 Do not check line length while scanning out license information
2847
2848 * scng.adb: Changes to avoid line length checks while parsing config
2849 pragma files.
2850
28512004-05-10 GNAT Script <nobody@gnat.com>
2852
2853 * Make-lang.in: Makefile automatically updated
2854
48664302
AC
28552004-05-05 Arnaud Charlet <charlet@act-europe.fr>
2856
2857 * osint.adb (Find_Program_Name): Fix handling of VMS version
2858 number.
2859
aa720a54
AC
28602004-05-05 Emmanuel Briot <briot@act-europe.fr>
2861
2862 * g-os_lib.ads (Invalid_Time): New constant
2863
2864 * adaint.h, adaint.c (__gnat_file_time_name, __gnat_file_time_fd): Now
2865 return OS_Time instead of time_t to match what is imported by Ada.
2866 Now return -1 if the file doesn't exist, instead of a random value
2867
28682004-05-05 Robert Dewar <dewar@gnat.com>
2869
2870 * usage.adb: Add line for -gnatR?s switch
2871
2872 * sem_ch13.adb, exp_ch2.adb: Minor reformatting
2873
2874 * g-regpat.ads, g-regpat.adb: Add documentation on handling of Size
2875 and for Match (Data_First, Data_last)
2876
2877 * lib-writ.adb (Write_With_Lines): Ensure that correct index number is
2878 written when we are dealing with multi-unit files.
2879
28802004-05-05 Jerome Guitton <guitton@act-europe.fr>
2881
2882 * Makefile.in: Remove unused targets and variables.
2883
28842004-05-05 Vincent Celier <celier@gnat.com>
2885
2886 * switch-m.adb: New gnatmake switch -eI
2887
2888 * vms_data.ads: Add VMS equivalents of new gnatclean swith -innn and
2889 of new gnatmake switch -eInnn.
2890
2891 * makegpr.adb: Take into account new parameters Index and Src_Index in
2892 Prj.Util.
2893
2894 * clean.adb: Implement support for multi-unit sources, including new
2895 switch -i.
2896
2897 * gnatcmd.adb (GNATCmd): Call Prj.Util.Value_Of with new parameter
2898 Src_Index.
2899
2900 * make.ads, make.adb (Insert_Q): New parameter Index, defaulted to 0
2901 (Extract_From_Q): New out parameter Index
2902 (Mark, Is_Marked): Subprograms moved to Makeutl
2903 (Switches_Of): New parameter Source_Index
2904 (Add_Switch): New parameter Index
2905 (Check): New parameter Source_Index
2906 (Collect_Arguments): New parameter Source_Index
2907 (Collect_Arguments_And_Compile): New parameter Source_Index
2908 (Compile): New parameter Source_Index
2909 Put subprograms in alphabetical order
2910 Add support for multi-source sources, including in project files.
2911
2912 * makeutl.ads, makeutl.adb (Unit_Index_Of): New function
2913 (Mark, Is_Marked, Delete_All_Marks): New subprograms, moved from
2914 Make.
2915
2916 * makeusg.adb: New gnatmake switch -eInnn
2917
2918 * mlib-prj.adb (Build_Library): Add new parameter Src_Index to call to
2919 Prj.Util.Value_Of.
2920
2921 * opt.ads (Main_Index): New variable, defaulted to 0.
2922
2923 * osint.ads, osinte.adb (Add_File): New parameter Index
2924 (Current_Source_Index): New function
2925
2926 * prj.adb: Take into account new components Index and Src_Index
2927
2928 * prj.ads (String_Element): New component Index
2929 (Variable_Value): New component Index
2930 (Array_Element): New component Src_Index
2931
2932 * prj-attr.adb: Indicate that optional index may be specified for
2933 attributes Main, Executable, Spec, Body and some of Switches.
2934
2935 * prj-attr.ads (Attribute_Kind): New values for optional indexes
2936 (Attribute_Record): New component Optional_Index
2937
2938 * prj-com.ads (File_Name_Data): New component Index
2939
2940 * prj-dect.adb (Parse_Attribute_Declaration): Process optional index
2941
2942 * prj-env.adb (Put): Output optional index
2943
2944 * prj-makr.adb: Put indexes for multi-unit sources in SFN pragmas and
2945 attributes Spec and Body.
2946
2947 * prj-nmsc.adb: Process optional indexes
2948
2949 * prj-pp.adb: Ouput "at" for optional indexes
2950
2951 * prj-proc.adb: Take into account optional indexes
2952
2953 * prj-strt.ads, prj-strt.adb (Terms): New Boolean parameter
2954 Optional_Index. For string literal,
2955 process optional index when Optional_Index is True.
2956 (Parse_Expresion): New Boolean parameter Optional_Index
2957
2958 * prj-tree.ads, prj-tree.adb (Source_Index_Of): New function
2959 (Set_Source_Index_Of): New procedure
2960
2961 * prj-util.adb (Executable_Of, Value_Of): Take into account optional
2962 index.
2963
2964 * prj-util.ads (Executable_Of): New parameter Index
2965 (Value_Of (Name_Id, Array_Element_Id) returning Variable_Value):
2966 New parameter Src_Index, defaulted to 0.
2967
29682004-05-05 Ed Schonberg <schonberg@gnat.com>
2969
2970 PR ada/15257
2971 * sem_ch3.adb (Access_Definition): If this is an access parameter
2972 whose designated type is imported through a limited_with clause, do
2973 not add the enclosing subprogram to the list of private dependents of
2974 the type.
2975
29762004-05-05 Ed Schonberg <schonberg@gnat.com>
2977
2978 PR ada/15258
2979 * sem_ch6.adb (Base_Types_Match): True if one type is imported through
2980 a limited_with clause, and the other is its non-limited view.
2981
29822004-05-05 Thomas Quinot <quinot@act-europe.fr>
2983
2984 * cstand.adb (Create_Standard): Initialize Stand.Boolean_Literals.
2985
90afe2c9 2986 * exp_attr.adb, exp_ch5.adb, exp_ch9.adb, exp_disp.adb,
aa720a54
AC
2987 exp_fixd.adb, sem_attr.adb, sem_dist.adb, sem_util.adb: Use
2988 Stand.Boolean_Literals to produce references to entities
2989 Standard_False and Standard_True from compile-time computed boolean
2990 values.
2991
2992 * stand.ads (Boolean_Literals): New variable, provides the entity
2993 values for False and True, for use by the expander.
2994
29952004-05-05 Doug Rupp <rupp@gnat.com>
2996
2997 * 5vinmaop.adb, 5[vx]system.ads: Add Short_Address subtype
2998 5vinmaop.adb: Unchecked convert Short_Address vice Address
2999
3000 * adaint.c, raise.c: Caste CRTL function return value
3001 to avoid gcc error on 32/64 bit IVMS.
3002
3003 * Makefile.in [VMS]: Use iar archiver if host = Alpha/VMS and
3004 target = IA64/VMS.
3005
3006 * init.c[VMS]: Only call Alpha specific __gnat_error_prehandler IN_RTS.
3007
3008 * 5qsystem.ads (Address): Declare as Long_Integer
3009 (Short_Address): Declare as 32 bit subtype of Address
3010 Declare abstract address operations to avoid gratuitous ambiguities.
3011
30122004-05-05 Jose Ruiz <ruiz@act-europe.fr>
3013
3014 * gnat_rm.texi: Use the new restriction Simple_Barriers (AI-249)
3015 instead of the old Boolean_Entry_Barriers.
3016 Ditto for No_Task_Attributes_Package instead of No_Task_Attributes.
3017
30182004-05-05 GNAT Script <nobody@gnat.com>
3019
3020 * Make-lang.in: Makefile automatically updated
3021
1ab2888d
AC
30222004-05-03 Arnaud Charlet <charlet@act-europe.fr>
3023
3024 * 50system.ads, 59system.ads, s-thread.ads: Removed, no longer used.
3025
9f4fd324
AC
30262004-05-03 Olivier Hainque <hainque@act-europe.fr>
3027
3028 PR ada/15152
3029
3030 * exp_ch2.adb (Expand_Current_Value): Leave Machine_Code Asm arguments
3031 alone. Replacing object references by literals is inappropriate in a
3032 so low level context.
3033
30342004-05-03 Arnaud Charlet <charlet@act-europe.fr>
3035
3036 * a-exexpr.adb: Add comments
3037
30382004-05-03 Joel Brobecker <brobecker@gnat.com>
3039
3040 * a-tags.adb (Tag_Table): Add Index_Check pragma Suppress. Allows us to
3041 declare the Ancestor_Tags array in Type_Specific_Data with a small size
3042 without risking a bounds check error when accessing one of its
3043 components.
3044 (Type_Specific_Data): Define Ancestor_Tags as a small array.
3045 This prevents us from hitting a limitation during the debug info
3046 generation when using stabs.
3047
3048 * a-tags.adb (Dispatch_Table): Define the Prims_Ptr component as a
3049 small array.
3050 This prevents us from hitting a limitation during the debug info
3051 generation when using stabs.
3052
30532004-05-03 Eric Botcazou <ebotcazou@act-europe.fr>
3054
3055 lang-specs.h: Remove -gnatz* from specs.
3056
30572004-05-03 Vincent Celier <celier@gnat.com>
3058
3059 * gprmake.adb, makegpr.ads, makegpr.adb: New files.
3060
3061 * Make-lang.in, Makefile.in: Add gprmake
3062
30632004-05-03 Thomas Quinot <quinot@act-europe.fr>
3064
3065 * sem_aggr.adb: Fix typo in comment.
3066
30672004-05-03 Robert Dewar <dewar@gnat.com>
3068
3069 * make.adb: Minor reformatting
3070
3071 * rtsfind.ads, rtsfind.adb: (RTU_Loaded): New function
3072
3073 * sem_attr.adb (Eval_Attribute, case Type_Class): Fix check for address
3074 so that it works when address is not a private type.
3075
3076 * sem_ch13.adb (Check_Expr_Constants, case N_Integer_Literal): Deal
3077 properly with rewritten unchecked conversions. This prevents
3078 order-of-elaboration issues that can otherwise arise.
3079 (Minimum_Size): Don't check size of access types under VMS
3080
3081 * sem_ch4.adb (Remove_Address_Interpretation): New circuit to remove
3082 interpretations of integer literals as type System.Address.
3083
3084 * sem_util.ads, sem_util.adb (Is_Descendent_Of_Address): New function
3085 (Is_Descendent_Of): New function
3086
30872004-05-03 Jose Ruiz <ruiz@act-europe.fr>
3088
3089 * sem_prag.adb: Boolean_Entry_Barriers is a synonym of Simple_Barriers.
3090 Max_Entry_Queue_Depth is a synonym of Max_Entry_Queue_Length.
3091 No_Dynamic_Interrupts is a synonym of No_Dynamic_Attachment.
3092
3093 * sem_res.adb: Use the new restriction Max_Entry_Queue_Length instead
3094 of the old Max_Entry_Queue_Depth.
3095
3096 * snames.adb: Boolean_Entry_Barriers is a synonym of Simple_Barriers.
3097 Max_Entry_Queue_Depth is a synonym of Max_Entry_Queue_Length
3098 No_Dynamic_Interrupts is a synonym of No_Dynamic_Attachment
3099
3100 * snames.ads: New entry for proper handling of Boolean_Entry_Barriers.
3101 New entry for proper handling of Max_Entry_Queue_Depth.
3102 New entry for proper handling of No_Dynamic_Interrupts.
3103
3104 * s-rident.ads: Adding restriction Simple_Barriers (AI-00249) that
3105 supersedes the GNAT specific restriction Boolean_Entry_Barriers.
3106 Adding restriction Max_Entry_Queue_Length (AI-00249) that supersedes
3107 the GNAT specific restriction Max_Entry_Queue_Depth.
3108 Adding restriction No_Dynamic_Attachment (AI-00249) that supersedes
3109 the GNAT specific restriction No_Dynamic_Interrupts.
3110
3111 * restrict.ads, restrict.adb: Use the new restriction Simple_Barriers
3112 instead of the old Boolean_Entry_Barriers.
3113 Use the new restriction No_Dynamic_Attachment instead of the old
3114 No_Dynamic_Interrupts.
3115
3116 * exp_ch9.adb: Check restriction Simple_Barriers (AI-00249) that
3117 supersedes the GNAT specific restriction Boolean_Entry_Barriers.
3118
3119 * gnatbind.adb: Use the new restriction Max_Entry_Queue_Length instead
3120 of the old Max_Entry_Queue_Depth.
3121
31222004-05-03 GNAT Script <nobody@gnat.com>
3123
3124 * Make-lang.in: Makefile automatically updated
3125
d935a36e
AC
31262004-04-29 Ed Schonberg <schonberg@gnat.com>
3127
3128 * checks.adb (Enable_Range_Check): If the prefix of an index component
3129 is an access to an unconstrained array, perform check unconditionally.
3130
31312004-04-29 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3132
3133 * decl.c (gnat_to_gnu_field): Also call make_packable_type if
3134 Component_Clause.
3135
31362004-04-29 Olivier Hainque <hainque@act-europe.fr>
3137
3138 * init.c (__gnat_install_handler, __gnat_error_handler): Remove
3139 alternate stack setting. There was no support for the tasking cases
3140 and the changes eventually caused a number of side-effect failures in
3141 the non-tasking case too.
3142
31432004-04-29 Eric Botcazou <ebotcazou@act-europe.fr>
3144
3145 lang-specs.h: Redirect output to /dev/null if -gnatc or -gnatz or
3146 -gnats is passed.
3147
31482004-04-29 Vincent Celier <celier@gnat.com>
3149
3150 * make.adb (Gnatmake): Increase max size of argument array for
3151 gnatbind for the potential addition of -F.
3152 If there are Stand-Alone Library projects, invoke gnatbind with -F to
3153 be sure that elaboration flags will be checked.
3154
3155 * switch-c.adb: Correct call to Scan_Pos for -gnateI
3156
31572004-04-29 Thomas Quinot <quinot@act-europe.fr>
3158
3159 * sem_warn.adb (Check_References): Move '<access-variable> may be
3160 null' warning out of under Warn_On_No_Value_Assigned.
3161
31622004-04-29 Ed Falis <falis@gnat.com>
3163
3164 * gnat_ugn.texi: Fixed texi error
3165
31662004-04-29 Robert Dewar <dewar@gnat.com>
3167
3168 * sem_ch4.adb (Remove_Abstract_Operations): Unconditionally remove
3169 abstract operations if they come from predefined files.
3170
3171 * gnat_rm.texi: Fix bad doc for pragma Elaboration_Checks (should be
3172 Dynamic, not RM).
3173
3174 * s-addope.adb: Correct obvious error in mod function
3175
31762004-04-28 Andrew W. Reynolds <awreynolds@mac.com>
3177
3178 * Makefile.in: Add target pairs for powerpc darwin*
3179 tasking support.
3180
3181 * a-intnam-darwin.ads, s-osinte-darwin.adb,
3182 s-osinte-darwin.ads, system-darwin-ppc.ads: New files.
3183
ea16c81b
UW
31842004-04-28 Ulrich Weigand <uweigand@de.ibm.com>
3185
3186 * Makefile.in: Add target macro definitions for s390*-linux*.
3187 * system-linux-s390.ads: New file.
3188 * system-linux-s390x.ads: New file.
3189
f0e6f845
JM
31902004-04-28 Joseph S. Myers <jsm@polyomino.org.uk>
3191
3192 * gnat_ugn.texi: Correct argument to @setfilename.
3193
e8c2eedc
UW
31942004-04-28 Ulrich Weigand <uweigand@de.ibm.com>
3195
3196 * a-exexpr.adb (Unwind_Word): New data type.
3197 (Unwind_Exception): Use it as type of Private1 and Private2.
3198
3199 * raise.c (db_action_for): Fix debug printf.
3200
f2c9e65a
AC
32012004-04-27 Ed Schonberg <schonberg@gnat.com>
3202
3203 * a-wtmoio.ads: Formal type must be a modular type, not a signed
3204 integer type.
3205
32062004-04-27 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3207
3208 * decl.c (gnat_to_gnu_entity, case object): Call
3209 __builtin_update_setjmp_buf.
3210
3211 * gigi.h (update_setjmp_buf): Deleted.
3212 (ADT_update_setjmp_buf_decl, update_setjmp_buf_decl): New.
3213
3214 * misc.c: (update_setjmp_buf): Deleted.
3215
3216 * trans.c (gnat_to_gnu): Call do_pending_stack_adjust and emit_queue
3217 around block of RTL.
3218
3219 * utils.c (init_gigi_decls): Initialize update_setjmp_buf.
3220
35b7fa6a
AC
32212004-04-26 Thomas Quinot <quinot@act-europe.fr>
3222
3223 * sem_dist.adb, exp_dist.adb: When constructing a RAS value for a local
3224 subprogram for which no pragma All_Calls_Remote applies, store the
3225 address of the real subprogram in the underlying record type, so local
3226 dereferences do not go through the PCS.
3227
32282004-04-26 Robert Dewar <dewar@gnat.com>
3229
3230 * i-c.ads: Add some type qualifications to avoid ambiguities when
3231 compiling with s-auxdec.ads and a non-private address type.
3232
32332004-04-26 Arnaud Charlet <charlet@act-europe.fr>
3234
3235 * Makefile.rtl: Fix error in previous check-in:
3236 Add s-addope.o to non tasking object list (rather than tasking object
3237 list).
3238
32392004-04-26 Javier Miranda <miranda@gnat.com>
3240
3241 * sem_aggr.adb: Fix typo in comments
3242 (Resolve_Aggr_Expr): Propagate the type to the nested aggregate.
3243 Required to check the null-exclusion attribute.
3244
3245 * sem_attr.adb (Resolve_Attribute): Check the accessibility level in
3246 case of anonymous access types in record and array components. For a
3247 component definition the level is the same of the enclosing composite
3248 type.
3249
3250 * sem_ch3.adb (Analyze_Component_Declaration): In case of components
3251 that are anonymous access types the level of accessibility depends on
3252 the enclosing type declaration. In order to have this information, set
3253 the scope of the anonymous access type to the enclosing record type
3254 declaration.
3255 (Array_Type_Declaration): In case of components that are anonymous
3256 access types the level of accessibility depends on the enclosing type
3257 declaration. In order to have this information, set the scope of the
3258 anonymous access type to the enclosing array type declaration.
3259
3260 * sem_ch3.adb (Array_Type_Declaration): Set the scope of the anonymous
3261 access type.
3262
3263 * sem_ch8.adb (Analyze_Object_Renaming): Add check to verify that
3264 renaming of anonymous access-to-constant types allowed if and only if
3265 the renamed object is access-to-constant.
3266
3267 * sem_util.adb (Type_Access_Level): In case of anonymous access types
3268 that are component_definition or discriminants of a nonlimited type,
3269 the level is the same as that of the enclosing component type.
3270
32712004-04-26 Sergey Rybin <rybin@act-europe.fr>
3272
3273 * sem_elim.adb: Some minor code reorganization from code reading. Fix
3274 misprint in the function name (File_Name_Match).
3275
5a944040
LG
32762004-04-23 Laurent GUERBY <laurent@guerby.net>
3277
90afe2c9 3278 * Makefile.in: Remove RANLIB_TEST, use -$(RANLIB) including after
5a944040 3279 install.
90afe2c9 3280
d0fd1344
RO
32812004-04-23 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
3282
3283 * Make-lang.in (GNATBIND_OBJS): Add s-addope.o.
3284
cc4f0de1
AC
32852004-04-23 Emmanuel Briot <briot@act-europe.fr>
3286
3287 * adaint.c (__gnat_try_lock): No longer requires that the parent
3288 directory be writable, the directory itself is enough.
3289 (gnat_is_absolute_path): Change profile, so that the call from
3290 GNAT.OS_Lib can be made more efficient.
3291
3292 * adaint.h (gnat_is_absolute_path): Change profile, so that the call
3293 from GNAT.OS_Lib can be made more efficient.
3294
3295 * g-os_lib.adb (Is_Absolute_Path): More efficient implementation, avoid
3296 one copy of the file name. Found by code reading.
3297
32982004-04-23 Vincent Celier <celier@gnat.com>
3299
3300 * gnat_ugn.texi: Add documentation for gnatmake switch -eL
3301 Correct documentation on gnatmake switches transmitted to the compiler
3302
3303 * ali.ads: Minor comment fix
3304
33052004-04-23 Javier Miranda <miranda@gnat.com>
3306
3307 * sem_ch6.adb: (Confirming Types): Code cleanup
3308
3309 * decl.c (gnat_to_gnu_entity): Give support to anonymous access to
3310 subprogram types: E_Anonymous_Access_Subprogram_Type and
3311 E_Anonymous_Access_Protected_Subprogram_Type.
3312
33132004-04-23 Thomas Quinot <quinot@act-europe.fr>
3314
3315 * sem_dist.adb: Add a new paramter to the RAS_Access TSS indicating
3316 whether a pragma All_Calls_Remote applies to the subprogram on which
3317 'Access is taken.
3318 No functional change is introduced by this revision; the new parameter
3319 will be used to allow calls to local RCI subprograms to be optimized
3320 to not use the PCS in the case where no pragma All_Calls_Remote applies,
3321 as is already done in the PolyORB implementation of the DSA.
3322
3323 * exp_dist.adb: Add a new paramter to the RAS_Access TSS indicating
3324 whether a pragma All_Calls_Remote applies to the subprogram on which
3325 'Access is taken.
3326 No functional change is introduced by this revision; the new parameter
3327 will be used to allow calls to local RCI subprograms to be optimized
3328 to not use the PCS in the case where no pragma All_Calls_Remote applies,
3329 as is already done in the PolyORB implementation of the DSA.
3330
33312004-04-23 Robert Dewar <dewar@gnat.com>
3332
3333 * Makefile.rtl: Add entry for s-addope.o in run time library list
3334 * Make-lang.in: Add entry for s-addope.o to GNAT1 objects
3335 * s-addope.ads, s-addope.adb: New files.
3336
90afe2c9
ZW
3337 * s-carsi8.adb, s-carun8.adb, s-casi16.adb, s-casi32.adb,
3338 s-casi64.adb, s-caun16.adb, s-caun32.adb, s-caun64.adb,
cc4f0de1
AC
3339 s-finimp.adb, s-geveop.adb, s-stoele.adb: Modifications to allow
3340 System.Address to be non-private and signed.
3341
3342 * sem_elim.adb: Minor reformatting (fairly extensive)
3343 Some minor code reorganization from code reading
3344 Add a couple of ??? comments
3345
33462004-04-23 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3347
3348 * trans.c (tree_transform, build_unit_elab): Don't call getdecls.
90afe2c9 3349 (tree_transform, case N_If_Statement): Remove non-determinism.
cc4f0de1
AC
3350
3351 * utils.c (begin_subprog_body): Just set DECL_CONTEXT in PARM_DECL.
3352
33532004-04-23 Sergey Rybin <rybin@act-europe.fr>
3354
3355 * gnat_rm.texi: Small fixes in the changes made in the 'pragma
3356 Eliminate' section.
3357
3358 * snames.ads, snames.adb: Remove Name_Homonym_Number (Homonym_Number is
3359 no longer used as a parameter name for Eliminate pragma).
3360
78bad775
LG
33612004-04-22 Laurent GUERBY <laurent@guerby.net>
3362
3363 PR optimization/14984
3364 PR optimization/14985
3365 * trans.c (gigi): Fix non determinism leading to bootstrap
3366 comparison failures.
3367
af4b9434
AC
33682004-04-21 Pascal Obry <obry@gnat.com>
3369
3370 * adaint.c (__gnat_portable_spawn): Quote first argument (argv[0])
3371 passed to spawnvp() to properly handle program pathname with spaces on
3372 Win32.
3373
33742004-04-21 Emmanuel Briot <briot@act-europe.fr>
3375
3376 * g-debpoo.adb (Print_Info): Avoid extra work if Display_Slots is False.
3377 (Allocate, Deallocate, Free_Physically): Make sure the tasks are
3378 unlocked in case of exceptions.
3379
33802004-04-21 Joel Brobecker <brobecker@gnat.com>
3381
3382 * gigi.h (get_target_no_dollar_in_label): Remove extern declaration.
3383 This function does not exist anymore.
3384
33852004-04-21 Thomas Quinot <quinot@act-europe.fr>
3386
3387 * gnatbind.adb, gnatlink.adb: Update name of imported C symbol.
3388
3389 * link.c: Move variables to the __gnat name space.
3390
3391 * Makefile.in: list link.o explicitly when needed.
3392
3393 * mlib.adb: Remove pragma Linker_Option for "link.o" from mlib.
3394
33952004-04-21 Javier Miranda <miranda@gnat.com>
3396
3397 * einfo.adb (Original_Access_Type): New subprogram
3398 (Set_Original_Access_Type): New subprogram
3399 (Write_Field21_Name): Write the name of the new field
3400
3401 * einfo.ads (Original_Access_Type): New field present in access to
3402 subprogram types.
3403 Addition of two new entities: E_Anonymous_Access_Subprogram_Type, and
3404 E_Anonymous_Access_Protected_Subprogram_Type.
3405
3406 * lib-xref.adb (Output_One_Ref): Give support to anonymous access to
3407 subprogram types.
3408
3409 * lib-xref.ads (Xref_Entity_Letters): Initialize values corresponding
3410 to anonymous access to subprogram types.
3411
3412 * sem_attr.adb (Resolve_Attribute): Give support to anonymous access
3413 to subprogram types.
3414
3415 * sem_ch3.adb (Access_Definition): Complete decoration of entities
3416 corresponding to anonymous access to subprogram types.
3417 (Analyze_Component_Declaration): Add new actual to the call to
3418 subprogram replace_anonymous_access_to_protected_subprogram.
3419 (Array_Type_Declaration): Add new actual to the call to subprogram
3420 replace_anonymous_access_to_protected_subprogram.
3421 (Process_Discriminants): Add new actual to the call to subprogram
3422 replace_anonymous_access_to_protected_subprogram.
3423 (Replace_Anonymous_Access_To_Protected_Subprogram): New formal.
3424
3425 * sem_ch3.ads (Replace_Anonymous_Access_To_Protected_Subprogram): New
3426 formal.
3427
3428 * sem_ch6.adb, sem_type.adb, sem_res.adb: Give support to anonymous
3429 access to subprogram types.
3430
3431 * sem_util.adb (Has_Declarations): Addition of package_specification
3432 nodes.
3433
34342004-04-21 Ed Schonberg <schonberg@gnat.com>
3435
3436 * sem_prag.adb (Make_Inline): If subprogram is a renaming, propagate
3437 inlined flags to renamed entity only if in current unit.
3438
34392004-04-21 Thomas Quinot <quinot@act-europe.fr>
3440
3441 * s-parint.ads: Add DSA implementation marker.
3442
3443 * rtsfind.ads, rtsfind.adb, snames.ads, snames.adb, s-rpc.adb: Use the
3444 value of System.Partition_Interface.DSA_Implementation to determine
3445 what version of the distributed systems annex is available (no
3446 implementation, GLADE, or PolyORB).
3447
34482004-04-21 Joel Brobecker <brobecker@gnat.com>
3449
3450 * targtyps.c (get_target_no_dollar_in_label): Remove, no longer used.
3451
34522004-04-21 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3453
3454 * utils.c (convert, case CONSTRUCTOR, COMPONENT_REF): Do not make node
3455 with new type if alias sets differ.
3456 Fixes ACATS c41103b.
3457
34582004-04-21 Vincent Celier <celier@gnat.com>
3459
3460 * prj.ads: Remove FORTRAN as an accepted language: not tested yet.
3461 Add array Lang_Args for the language specific compiling argument
3462 switches.
3463
3464 * gnat_ugn.texi: Explain in more details when a library is rebuilt.
3465
34662004-04-21 Sergey Rybin <rybin@act-europe.fr>
3467
3468 * gnat_rm.texi: Update the descripton of the Eliminate pragma
3469 according to the recent changes in the format of the parameters of the
3470 pragma (replacing Homonym_Number with Source_Location).
3471
7324bf49
AC
34722004-04-19 Arnaud Charlet <charlet@act-europe.fr>
3473
3474 * 5isystem.ads: Removed, unused.
3475
3476 * gnat_rm.texi: Redo 1.13 change.
3477
34782004-04-19 Robert Dewar <dewar@gnat.com>
3479
3480 * s-stoele.ads: Clean up definition of Storage_Offset (the new
3481 definition is cleaner, avoids the kludge of explicit Standard operator
3482 references, and also is consistent with a visible System.Address with
3483 no visible operations.
3484
3485 * s-geveop.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
3490 * sem_eval.adb: Minor reformatting
3491
3492 * s-carsi8.ads, s-carun8.ads, s-casi16.ads, s-casi32.ads,
3493 s-casi64.ads, s-caun16.ads, s-caun32.ads, s-caun64.ads: Minor
3494 reformatting (new function spec format).
3495
3496 * s-auxdec.adb, s-carsi8.adb, s-carun8.adb, s-casi16.adb,
3497 s-casi32.adb, s-casi64.adb, s-caun16.adb, s-caun32.adb,
3498 s-caun64.adb: Add declarations to avoid assumption of visible
3499 operations on type System.Address (since these might not be available
3500 if Address is a non-private type for which the operations are made
3501 abstract).
3502
3503 * lib.ads, lib.adb (Synchronize_Serial_Number): New procedure.
3504
3505 * exp_intr.adb: Minor comment update
3506
3507 * exp_aggr.adb, exp_attr.adb, exp_ch13.adb: Minor reformatting.
3508
3509 * 5omastop.adb: Add declarations to avoid assumption of visible
3510 operations on type System.Address (since these might not be available
3511 if Address is a non-private type for which the operations
3512 are made abstract).
3513
35142004-04-19 Vincent Celier <celier@gnat.com>
3515
3516 * switch-m.adb: (Scan_Make_Switches): Process new switch -eL
3517
3518 * prj-pars.ads (Parse): New Boolean parameter Process_Languages,
3519 defaulted to Ada.
3520
3521 * prj-proc.adb (Process): New Boolean parameter Process_Languages,
3522 defaulted to Ada.
3523 Call Check with Process_Languages.
3524 (Check): New Boolean parameter Process_Languages. Call Recursive_Check
3525 with Process_Languages.
3526 (Recursive_Check): New Boolean parameter Process_Languages. Call
3527 Nmsc.Ada_Check or Nmsc.Other_Languages_Check according to
3528 Process_Languages.
3529
3530 * prj-proc.ads (Process): New Boolean parameter Process_Languages,
3531
3532 * prj-util.ads, prj-util.adb (Executable_Of): New Boolean
3533 parameter Ada_Main, defaulted to True.
3534 Check for Ada specific characteristics only when Ada_Main is True.
3535
3536 * opt.ads: (Follow_Links): New Boolean flag for gnatmake
3537
3538 * prj.adb: (Project_Empty): Add new Project_Data components.
3539
3540 * prj.ads: New types and tables for non Ada languages.
3541 (Project_Data): New components Languages, Impl_Suffixes,
3542 First_Other_Source, Last_Other_Source, Imported_Directories_Switches,
3543 Include_Path, Include_Data_Set.
3544
3545 * prj-env.ads, prj-env.adb: Minor reformatting
3546
3547 * prj-nmsc.ads, prj-nmsc.adb: (Other_Languages_Check): New procedure
3548 Put subprograms in alphabetical order
3549
3550 * prj-pars.adb (Parse): New Boolean parameter Process_Languages,
3551 defaulted to Ada; Call Prj.Proc.Process with Process_Languages and
3552 Opt.Follow_Links.
3553
3554 * mlib-prj.adb: Back out modification in last version, as they are
3555 incorrect.
3556 (Build_Library.Check_Libs): Remove useless pragma Warnings (Off)
3557
3558 * make.adb: (Mains): Moved to package Makeutl
3559 (Linker_Opts): Moved to package Makeutl
3560 (Is_External_Assignment): Moved to package Makeutl
3561 (Test_If_Relative_Path): Moved to package Makeutl
3562 (Gnatmake): Move sorting of linker options to function
3563 Makeutl.Linker_Options_Switches.
3564
8f9df7d8
VC
3565 * makeutl.ads, makeutl.adb: New files.
3566
7324bf49
AC
3567 * Makefile.in: Add makeutl.o to the object files for gnatmake
3568
3569 * makeusg.adb: Add line for new switch -eL.
3570
3571 * gnatls.adb (Image): New function.
3572 (Output_Unit): If in verbose mode, output the list of restrictions
3573 specified by pragmas Restrictions.
3574
3575 * 5bml-tgt.adb, 5vml-tgt.adb (Build_Dynamic_Library): Do not use
3576 Text_IO.
3577
3578 * a-calend.adb (Split): Shift the date by multiple of 56 years, if
3579 needed, to put it in the range 1970 (included) - 2026 (excluded).
3580 (Time_Of): Do not shift Unix_Min_Year (1970).
3581 Shift the date by multiple of 56 years, if needed, to put it in the
3582 range 1970 (included) - 2026 (excluded).
3583
3584 * adaint.h, adaint.c (__gnat_set_executable): New function.
3585
35862004-04-19 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3587
3588 * trans.c (tree_transform, case N_Subprogram_Body): Temporarily push
3589 and pop GC context.
3590 (tree_transform, case N_Procedure_Call): Fix typo in setting TREE_TYPE.
3591 (tree_transform, case N_Label): Don't set LABEL_STMT_FIRST_IN_EH.
3592 (tree_transform, case N_Procedure_Call_Statement): Build a tree.
3593 (tree_transform, case N_Code_Statement): Likewise.
3594 (gnat_expand_stmt, case LABEL_STMT): Don't look at
3595 LABEL_STMT_FIRST_IN_EH.
3596 (gnat_expand_stmt, case ASM_STMT): New case.
3597
3598 * utils2.c (build_unary_op): Properly set TREE_READONLY of
3599 UNCONSTRAINED_ARRAY_REF.
3600
3601 * utils.c (poplevel): Temporarily push/pop GC context around inline
3602 function expansion.
3603
3604 * decl.c (maybe_variable): Properly set TREE_READONLY of
3605 UNCONSTRAINED_ARRAY_REF.
3606 (make_packable_type): Only reference TYPE_IS_PADDING_P for RECORD_TYPE.
3607
3608 * ada-tree.def: (ASM_STMT): New.
3609
3610 * ada-tree.h: (LABEL_STMT_FIRST_IN_EH): Deleted.
3611 (ASM_STMT_TEMPLATE, ASM_STMT_OUTPUT, ASM_STMT_ORIG_OUT,
3612 ASM_STMT_INPUT): New.
3613 (ASM_STMT_CLOBBER): Likewise.
3614
36152004-04-19 Thomas Quinot <quinot@act-europe.fr>
3616
3617 * a-except.adb, s-parint.ads, s-parint.adb, types.ads, types.h: Use
3618 general rcheck mechanism to raise Program_Error for E.4(18), instead
3619 of a custom raiser in System.Partition_Interface.
3620 Part of general cleanup work before PolyORB integration.
3621
3622 * snames.ads, snames.adb: Add new runtime library entities and names
3623 for PolyORB DSA.
3624
3625 * sem_dist.ads, sem_dist.adb (Get_Subprogram_Id): Move from sem_dist to
3626 exp_dist.
3627 (Build_Subprogram_Id): New subprogram provided by exp_dist
3628 Code reorganisation in preparation for PolyORB integration.
3629
3630 * exp_dist.ads, exp_dist.adb (Get_Subprogram_Id): Move from sem_dist to
3631 exp_dist.
3632 (Build_Subprogram_Id): New subprogram provided by exp_dist
3633
3634 * sem_ch4.adb (Analyze_One_Call): Fix error message for mismatch in
3635 actual parameter types for call to dereference of an
3636 access-to-subprogram type.
3637
3638 * rtsfind.ads: Add new runtime library entities and names for PolyORB
3639 DSA.
3640
3641 * gnatlink.adb (Value): Remove. Use Interfaces.C.Strings.Value
3642 instead, which has the same behaviour here since we never pass it a
3643 NULL pointer.
3644
3645 * link.c (run_path_option, Solaris case): Use -Wl, as for other
3646 platforms.
3647
3648 * Makefile.in: adjust object file lists for gnatlink and gnatmake
3649 to account for new dependency upon Interfaces.C.Strings + link.o
3650 For x86 FreeBSD, use 86numaux.
3651
3652 * make.adb, gnatcmd.adb: Linker_Library_Path_Option has been moved up
3653 from Mlib.Tgt to Mlib.
3654
3655 * mlib.ads, mlib.adb (Linker_Library_Path_Option): New subprogram, now
3656 target-independent.
3657
3658 * mlib-tgt.ads, mlib-tgt.adb (Linker_Library_Path_Option): Remove
3659 target-specific versions of this subprogram, now implemented as a
3660 target-independent function in Mlib.
3661
3662 * 5aml-tgt.adb, 5bml-tgt.adb, 5gml-tgt.adb, 5hml-tgt.adb, 5lml-tgt.adb,
3663 5sml-tgt.adb, 5vml-tgt.adb, 5zml-tgt.adb, 5wml-tgt.adb
3664 (Linker_Library_Path_Option): Remove target-specific versions of this
3665 subprogram, now implemented as a target-independent function in Mlib.
3666
3667 * atree.adb: (Allocate_Initialize_Node): New subprogram.
3668 Factors out node table slots allocation.
3669 (Fix_Parents): New subprogram.
3670 Encapsulate the pattern of fixing up parent pointers for syntactic
3671 children of a rewritten node.
3672 (New_Copy_Tree): Use New_Copy to copy non-entity nodes.
3673 (Rewrite): Use New_Copy when creating saved copy of original node.
3674 (Replace): Use Copy_Node to copy nodes.
3675
36762004-04-19 Javier Miranda <miranda@gnat.com>
3677
3678 * sprint.adb (Sprint_Node_Actual): Give support to the new
3679 Access_To_Subprogram node available in Access_Definition nodes. In
3680 addition, give support to the AI-231 node fields: null-exclusion,
3681 all-present, constant-present.
3682
3683 * sem_util.ads, sem_util.adb: (Has_Declarations): New subprogram
3684
90afe2c9 3685 * sinfo.ads, sinfo.adb:
7324bf49
AC
3686 New field Access_To_Subprogram_Definition in Access_Definition nodes
3687
3688 * sem_ch6.adb (Process_Formals): Move here the code that creates and
3689 decorates internal subtype declaration corresponding to the
3690 null-excluding formal. This code was previously in Set_Actual_Subtypes.
3691 In addition, carry out some code cleanup on this code. In case of
3692 access to protected subprogram call
3693 Replace_Anonymous_Access_To_Protected_Subprogram.
3694 (Set_Actual_Subtypes): Code cleanup.
3695
3696 * sem_ch8.adb (Analyze_Object_Renaming): Remove un-necessary call to
3697 Find_Type in case of anonymous access renamings. Add warning in case of
3698 null-excluding attribute used in anonymous access renaming.
3699
3700 * sem_ch3.ads (Replace_Anonymous_Access_To_Protected_Subprogram): New
3701 subprogram
3702
3703 * sem_ch3.adb (Replace_Anonymous_Access_To_Protected_Subprogram): New
3704 subprogram.
3705 (Access_Definition): In case of anonymous access to subprograms call
3706 the corresponding semantic routine to decorate the node.
3707 (Access_Subprogram_Declaration): Addition of some comments indicating
3708 some code that probably should be added here. Detected by comparison
3709 with the access_definition subprogram.
3710 (Analyze_Component_Declaration): In case of access to protected
3711 subprogram call Replace_Anonymous_Access_To_Protected.
3712 (Array_Type_Declaration): In case of access to protected subprogram call
3713 Replace_Anonymous_Access_To_Protected_Subprogram.
3714 (Process_Discriminants): In case of access to protected subprogram call
3715 Replace_Anonymous_Access_To_Protected_Subprogram.
3716
3717 * par.adb (P_Access_Definition): New formal that indicates if the
3718 null-exclusion part was present.
3719 (P_Access_Type_Definition): New formal that indicates if the caller has
3720 already parsed the null-excluding part.
3721
3722 * par-ch3.adb (P_Subtype_Declaration): Code cleanup.
3723 (P_Identifier_Declarations): Code cleanup and give support to renamings
3724 of anonymous access to subprogram types.
3725 (P_Derived_Type_Def_Or_Private_Ext_Decl): Code cleanup.
3726 (P_Array_Type_Definition): Give support to AI-254.
3727 (P_Component_Items): Give support to AI-254.
3728 (P_Access_Definition): New formal that indicates if the header was
3729 already parsed by the caller.
3730 (P_Access_Type_Definition): New formal that indicates if the caller has
3731 already parsed the null-excluding part.
3732
3733 * par-ch6.adb (P_Formal_Part): Add the null-excluding parameter to the
3734 call to P_Access_Definition.
3735
37362004-04-19 Geert Bosch <bosch@gnat.com>
3737
3738 * checks.adb (Apply_Float_Conversion_Check): New procedure to implement
3739 the delicate semantics of floating-point to integer conversion.
3740 (Apply_Type_Conversion_Checks): Use Apply_Float_Conversion_Check.
3741
3742 * eval_fat.adb (Machine_Mantissa): Moved to spec.
3743 (Machine_Radix): New function.
3744
3745 * eval_fat.ads (Machine_Mantissa): Moved from body for use in
3746 conversion checks.
3747 (Machine_Radix): New function also for use in conversion checks.
3748
37492004-04-19 Ed Schonberg <schonberg@gnat.com>
3750
3751 * par-prag.adb (Source_File_Name_Project): Fix typo in error message.
3752
3753 * exp_ch9.adb (Expand_Access_Protected_Subprogram_Type): Call analyze
3754 to decorate the access-to-protected subprogram and the equivalent type.
3755
3756 * checks.adb (Null_Exclusion_Static_Checks): Code cleanup. Give support
3757 to anonymous access to subprogram types.
3758
3759 * exp_ch4.adb (Expand_N_In): Preserve Static flag before
3760 constant-folding, for legality checks in contexts that require an RM
3761 static expression.
3762
3763 * exp_ch6.adb (Expand_N_Function_Call): If call may generate large
3764 temporary but stack checking is not enabled, increment serial number
3765 to so that symbol generation is consistent with and without stack
3766 checking.
3767
3768 * exp_util.ads, exp_util.adb (May_Generate_Large_Temp): Predicate is
3769 independent on whether stack checking is enabled, caller must check
3770 the corresponding flag.
3771
3772 * sem_ch3.adb (Constrain_Index): Index bounds given by attributes need
3773 range checks.
3774 (Build_Derived_Concurrent_Type): Inherit Is_Constrained flag from
3775 parent if it has discriminants.
3776 (Build_Derived_Private_Type): Constructed full view does
3777 not come from source.
3778 (Process_Discriminants): Default discriminants on a tagged type are
3779 legal if this is the internal completion of a private untagged
3780 derivation.
3781
3782 * sem_ch6.adb (Set_Actual_Subtypes): The generated declaration needs
3783 no constraint checks, because it corresponds to an existing object.
3784
3785 * sem_prag.adb (Process_Convention): Pragma applies
3786 only to subprograms in the same declarative part, i.e. the same unit,
3787 not the same scope.
3788
3789 * sem_res.adb (Valid_Conversion): In an instance or inlined body,
3790 ignore type mismatch on a numeric conversion if expression comes from
3791 expansion.
3792
37932004-04-19 Sergey Rybin <rybin@act-europe.fr>
3794
3795 * sem_elim.adb (Process_Eliminate_Pragma): Remove the processing for
3796 Homonym_Number parameter, add processing for Source_Location parameter
3797 corresponding.
3798 (Check_Eliminated): Remove the check for homonym numbers, add the check
3799 for source location traces.
3800
3801 * sem_elim.ads (Process_Eliminate_Pragma): Replace Arg_Homonym_Number
3802 with Arg_Source_Location corresponding to the changes in the format of
3803 the pragma.
3804
3805 * sem_prag.adb: (Analyze_Pragma): Changes in the processing of
3806 Eliminate pragma corresponding to the changes in the format of the
3807 pragma: Homonym_Number is replaced with Source_Location, two ways of
3808 distinguishing homonyms are mutially-exclusive.
3809
38102004-04-19 Joel Brobecker <brobecker@gnat.com>
3811
3812 * get_targ.ads (Get_No_Dollar_In_Label): Remove.
3813
3814 * exp_dbug.adb (Output_Homonym_Numbers_Suffix): Remove use of
3815 No_Dollar_In_Label, no longer necessary, as it is always True.
3816 (Strip_Suffixes): Likewise.
3817
38182004-04-19 Gary Dismukes <dismukes@gnat.com>
3819
3820 * s-stalib.ads (type Exception_Code): Use Integer'Size for exponent of
3821 modulus for compatibility with size clause on targets with 16-bit
3822 Integer.
3823
3824 * layout.adb (Discrimify): In the case of private types, set Vtyp to
3825 full type to fix type mismatches on calls to size functions for
3826 discriminant-dependent array components.
3827
38282004-04-19 Jerome Guitton <guitton@act-europe.fr>
3829
3830 * Makefile.in (gnatlib-zcx): New target, for building a ZCX run-time
3831 lib.
3832
38332004-04-19 Pascal Obry <obry@gnat.com>
3834
3835 * mdll-utl.adb (Locate): New version is idempotent.
3836
38372004-04-17 Laurent Guerby <laurent@guerby.net>
fa795c69
LG
3838
3839 PR ada/14988 (partial)
3840 * impunit.adb: Fix typo.
90afe2c9 3841
cce0244b
NN
38422004-04-14 Nathanael Nerode <neroden@gcc.gnu.org>
3843
3844 * Make-lang.in: Remove obsolete rts-none, rts-cert, install-rts-none,
3845 and install-rts-cert targets. Remove all gnatlib and gnattools
3846 targets and all other rts-* targets (moved to libada). Remove (now)
3847 unused Make variables CHMOD, CHMOD_AX_FLAGS, shext, THREAD_KIND,
3848 TRACE, GNATLIBFLAGS, GNATLIBCFLAGS.
3849
af152989
AC
38502004-04-08 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3851
3852 * trans.c (tree_transform): Shortcut returning error_mark_node for
3853 statements in annotate_only_mode.
3854 (tree_transform, case N_Label, case N_Return_Statement,
3855 N_Goto_Statement): Make statement tree instead of generating code.
3856 (tree_transform, case N_Assignment_Statement): No longer check
3857 type_annotate_only.
3858 (gnat_expand_stmt, case GOTO_STMT, case LABEL_STMT, case
3859 RETURN_STMT): New.
3860 (first_nondeleted_insn, build_block_stmt, make_expr_stmt_from_rtl):
3861 New fcns.
3862 (gnat_to_gnu): Collect any RTL generated and deal with it.
3863 (tree_transform, case N_And_Then): Refine when have non-null RTL_EXPR.
3864 (tree_transform case N_If_Statement): Rewrite to make IF_STMT.
3865 (gnat_expand_stmt, case BLOCK_STMT, IF_STMT): New cases.
3866
3867 * ada-tree.def (GOTO_STMT, LABEL_STMT, RETURN_STMT): New tree nodes.
3868
3869 * ada-tree.def (EXPR_STMT): Fix typo in name.
3870 (BLOCK_STMT, IF_STMT): New nodes.
3871
3872 * ada-tree.h (GOTO_STMT_LABEL, LABEL_STMT_LABEL,
3873 LABEL_STMT_FIRST_IN_EH): New macros.
3874 (RETURN_STMT_EXPR): Likewise.
3875
3876 * ada-tree.h: (BLOCK_STMT_LIST, IF_STMT_COND, IF_STMT_TRUE,
3877 IF_STMT_ELSEIF, IF_STMT_ELSE): New macros.
3878
38792004-04-08 Thomas Quinot <quinot@act-europe.fr>
3880
3881 * atree.ads: Correct documentation on extended nodes.
3882
3883 * link.c: Set run_path_option for FreeBSD.
3884
38852004-04-08 Vincent Celier <celier@gnat.com>
3886
3887 * mlib-prj.adb (Build_Library.Check_Libs): On OpenVMS, if dec.ali is
3888 one of the ALI file, do not link with DEC lib.
3889
3890 * par.adb Remove the last two characters ("%s" or "%b") when checking
3891 if a language defined unit may be recompiled.
3892
38932004-04-08 Ed Schonberg <schonberg@gnat.com>
3894
3895 * sem_ch4.adb (Remove_Abstract_Operations): Improve error message when
3896 removal of abstract operation leaves no possible interpretation for
3897 expression.
3898
3899 * sem_eval.adb (Eval_Qualified_Expression): Use
3900 Set_Raises_Constraint_Error on node when needed, so that it does not
3901 get optimized away by subsequent optimizations.
3902
3903 * sem_res.adb (Resolve_Intrinsic_Operator): Save interpretations of
3904 operands even when they are not wrapped in a type conversion.
3905
39062004-04-08 Olivier Hainque <hainque@act-europe.fr>
3907
3908 * sem_prag.adb (Set_Exported): Warn about making static as result of
3909 export only when the export is coming from source. This may be not
3910 be true e.g. on VMS where we expand export pragmas for exception codes
3911 together with imported or exported exceptions, and we don't want the
3912 user to be warned about something he didn't write.
3913
39142004-04-08 Thomas Quinot <quinot@act-europe.fr>
3915
3916 * sem_util.adb (Note_Possible_Modification): Reorganize to remove code
3917 duplication between normal entities and those declared as renamings.
3918 No functional change.
3919
90afe2c9 3920 * s-fileio.ads (Form): Remove pragma Inline, as we cannot currently
af152989
AC
3921 inline functions returning an unconstrained result.
3922
39232004-04-08 Eric Botcazou <ebotcazou@act-europe.fr>
3924
3925 * utils.c (type_for_mode): Handle BLKmode and VOIDmode properly, to
3926 conform to what other front-ends do.
3927
39282004-04-08 Doug Rupp <rupp@gnat.com>
3929
3930 * 5vml-tgt.adb: Use Gas instead of VMS Macro to build auto init shared
3931 libraries.
3932
3984e89a
AC
39332004-04-06 Pascal Obry <obry@gnat.com>
3934
3935 * adaint.c (DIR_SEPARATOR): Properly set DIR_SEPARATOR on Win32.
3936
3937 * osint.adb (Program_Name): Do not look past a directory separator.
3938
39392004-04-06 Thomas Quinot <quinot@act-europe.fr>
3940
3941 * atree.adb: Update comment (Rewrite_Substitute_Node no longer exists).
3942
3943 * exp_ch6.adb (Rewrite_Function_Call): Clarify documentation of
3944 requirement for preserving a copy of the original assignment node.
3945
3946 * sinfo.ads: Update comment (Original_Tree -> Original_Node).
3947
39482004-04-06 Olivier Hainque <hainque@act-europe.fr>
3949
3950 (__gnat_initialize [Vxworks]): Enable references to the crtstuff bits
3951 when supported.
3952
39532004-04-06 Ed Schonberg <schonberg@gnat.com>
3954
3955 * sem_ch4.adb (Remove_Abstract_Operations): Extend previous changes to
3956 operator calls in functional notation, and apply
3957 Universal_Interpretation to operands, not to their type.
3958
39592004-04-06 Robert Dewar <dewar@gnat.com>
3960
3961 * 5wdirval.adb: Minor reformatting
3962
39632004-04-06 Ed Falis <falis@gnat.com>
3964
3965 * gnat_rm.texi: Improve a reference to the GCC manual
3966
30c20106
AC
39672004-04-05 Vincent Celier <celier@gnat.com>
3968
3969 * adaint.h, adaint.c: Add function __gnat_named_file_length
3970
3971 * impunit.adb: Add Ada.Directories to the list
3972
3973 * Makefile.in: Add VMS and Windows versions of
3974 Ada.Directories.Validity package body.
3975
3976 * Makefile.rtl: Add a-direct and a-dirval
3977
3978 * mlib-tgt.ads: Minor comment update.
3979
3980 * a-dirval.ads, a-dirval.adb, 5vdirval.adb, 5wdirval.adb,
3981 a-direct.ads, a-direct.adb: New files.
3982
39832004-04-05 Vincent Celier <celier@gnat.com>
3984
3985 PR ada/13620
3986 * make.adb (Scan_Make_Arg): Pass any -fxxx switches to gnatlink, not
3987 just to the compiler.
3988
39892004-04-05 Robert Dewar <dewar@gnat.com>
3990
3991 * a-except.adb (Exception_Name_Simple): Make sure lower bound of
3992 returned string is 1.
3993
3994 * ali-util.adb: Use proper specific form for Warnings (Off, entity)
3995
3996 * eval_fat.ads: Minor reformatting
3997
3998 * g-curexc.ads: Document that lower bound of returned string values
3999 is always one.
4000
4001 * gnatlink.adb: Add ??? comment for previous change
4002 (need to document why this is VMS specific)
4003
4004 * s-stoele.ads: Minor reformatting
4005
4006 * tbuild.ads: Minor reformatting throughout (new function specs)
4007
4008 * par-ch10.adb (P_Context_Clause): Handle comma instead of semicolon
4009 after WITH.
4010
4011 * scng.adb: Minor reformatting
4012
40132004-04-05 Geert Bosch <bosch@gnat.com>
4014
4015 * eval_fat.adb (Machine): Remove unnecessary suppression of warning.
4016 (Leading_Part): Still perform truncation to machine number if the
4017 specified radix_digits is greater or equal to machine_mantissa.
4018
40192004-04-05 Javier Miranda <miranda@gnat.com>
4020
4021 * par-ch3.adb: Complete documentation of previous change
4022 Correct wrong syntax documentation of the OBJECT_DECLARATION rule
4023 (aliased must appear before constant).
4024
4025 * par-ch4.adb: Complete documentation of previous change.
4026
4027 * par-ch6.adb: Complete documentation of previous change.
4028
4029 * sinfo.ads: Fix typo in commment.
4030
40312004-04-05 Ed Schonberg <schonberg@gnat.com>
4032
4033 * sem_ch3.adb (Inherit_Components): If derived type is private and has
4034 stored discriminants, use its discriminants to constrain parent type,
4035 as is done for non-private derived record types.
4036
4037 * sem_ch4.adb (Remove_Abstract_Operations): New subprogram to implement
4038 Ada 2005 AI-310: an abstract non-dispatching operation is not a
4039 candidate interpretation in an overloaded call.
4040
4041 * tbuild.adb (Unchecked_Convert_To): Preserve conversion node if
4042 expression is Null and target type is not an access type (e.g. a
4043 non-private address type).
4044
40452004-04-05 Thomas Quinot <quinot@act-europe.fr>
4046
4047 * exp_ch6.adb (Rewrite_Function_Call): When rewriting an assignment
4048 statement whose right-hand side is an inlined call, save a copy of the
4049 original assignment subtree to preserve enough consistency for
4050 Analyze_Assignment to proceed.
4051
4052 * sem_ch5.adb (Analyze_Assignment): Remove a costly copy of the
4053 complete assignment subtree which is now unnecessary, as the expansion
4054 of inlined call has been improved to preserve a consistent assignment
4055 tree. Note_Possible_Modification must be called only
4056 after checks have been applied, or else unnecessary checks will
4057 be generated.
4058
4059 * sem_util.adb (Note_Possible_Modification): Reorganise the handling
4060 of explicit dereferences that do not Come_From_Source:
4061 - be selective on cases where we must go back to the dereferenced
4062 pointer (an assignment to an implicit dereference must not be
4063 recorded as modifying the pointer);
4064 - do not rely on Original_Node being present (Analyze_Assignment
4065 calls Note_Possible_Modification on a copied tree).
4066
4067 * sem_warn.adb (Check_References): When an unset reference to a pointer
4068 that is never assigned is encountered, prefer '<pointer> may be null'
4069 warning over '<pointer> is never assigned a value'.
4070
40712004-04-05 Ramon Fernandez <fernandez@gnat.com>
4072
4073 * tracebak.c: Change STOP_FRAME in ppc vxworks to be compliant with
4074 the ABI.
4075
40762004-04-05 Olivier Hainque <hainque@act-europe.fr>
4077
4078 * 5gmastop.adb (Pop_Frame): Comment out the pragma Linker_Option for
4079 libexc. We currently don't reference anything in this library and
4080 linking it in triggers linker warnings we don't want to see.
4081
4082 * init.c: Update comments.
4083
4f976745
RK
40842004-04-05 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
4085
4086 * decl.c (gnat_to_gnu_entity): Use TYPE_READONLY.
4087 * utils.c (create_field_decl): Likewise.
4088 * utils2.c (build_unary_op, gnat_build_constructor): Likewise.
4089
6da7d579
AC
40902004-04-02 Arnaud Charlet <charlet@act-europe.fr>
4091
4092 * gnat-style.texi, gnat_rm.texi, gnat_ugn.texi: Remove RCS tags.
4093 Replace ifinfo by ifnottex, to make makeinfo --html happy again.
4094 Add info directory entry and category.
4095
18c6ada9
JH
40962004-04-02 Jan Hubicka <jh@suse.cz>
4097
4098 * utils.c: Include function.h
4099 (end_subprog_body): Clear DECL_STRUCT_FUNCTION.
4100
7cd4527e
AC
41012004-04-01 Arnaud Charlet <charlet@act-europe.fr>
4102
4103 PR ada/14150
4104 * Make-lang.in: Clean up generation of documentation
4105
4106 * gnat-style.texi, gnat_rm.texi, ug_words: Resync with AdaCore version
4107
4108 * xgnatug.adb: Removed, replaced by xgnatugn.adb
4109
4110 * xgnatugn.adb: Replaces xgnatug.adb
4111
4112 * gnat_ug.texi: Removed, replaced by gnat_ugn.texi
4113
4114 * gnat_ugn.texi: Replaces gnat_ug.texi. Resync with AdaCore version
4115
4116 * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
4117 gnat_ug_wnt.texi: Removed.
4118
0c250f07
AC
41192004-04-01 Arnaud Charlet <charlet@act-europe.fr>
4120
4121 * utils2.c: Update copyright notice.
4122
6b6fcd3e
AC
41232004-04-01 Robert Dewar <dewar@gnat.com>
4124
4125 * checks.adb: Minor reformatting throughout
4126 Note that prev checkin added RM reference to alignment warning
4127
41282004-04-01 Ed Schonberg <schonberg@gnat.com>
4129
4130 * exp_aggr.adb (Get_Component_Val): Treat a string literal as
4131 non-static when building aggregate for bit-packed array.
4132
4133 * exp_ch4.adb (Expand_N_Slice): If a packed slice is an actual of a
4134 function call that is itself the actual in a procedure call, build
4135 temporary for it.
4136
4137 * exp_pakd.adb (Expand_Bit_Packed_Element_Set): If right-hand side is
4138 a string literal, create a temporary for it, constant folding only
4139 handles scalars here.
4140
41412004-04-01 Vincent Celier <celier@gnat.com>
4142
4143 * ali-util.adb (Post_Scan, Error_Msg, Error_Msg_S, Error_Msg_SC,
4144 Error_Msg_SP): New empty procedures to instantiate the Scanner.
4145 (Style, Scanner): Instantiations of Styleg and Scng to be able to scan
4146 tokens.
4147 (Accumulate_Checksum, Initialize_Checksum): Remove procedures.
4148 (Get_File_Checksum): Use the instantiated scanner to scan all the tokens
4149 and get the checksum.
4150
4151 * make.adb (Gnatmake): Do not insert into Q the Main_Source if it is
4152 already in the Q.
4153 Increase the Marking_Label at the end of the Multiple_Main_Loop,
4154 instead of at the beginning.
4155
4156 * osint.adb (Lib_File_Name): Use Multi_Unit_Index_Character, not '~'
4157 directly.
4158 (Osint package elaboration): Change Multi_Unit_Index_Character to '$' if
4159 on VMS.
4160
4161 * osint.ads (Multi_Unit_Index_Character): New Character global variable
4162
4163 * osint-c.adb (Set_Library_Info_Name): Use Multi_Unit_Index_Character,
4164 not '~' directly.
4165
4166 * par.adb: Remove test on file name to detect language defined units.
4167 Add test on unit name, after parsing, to detect language defined units
4168 that are not compiled with -gnatg (except System.RPC and its children)
4169
4170 * par-ch10.adb (P_Compilation_Unit): In multi-unit sources, scan the
4171 following units without style checking.
4172
4173 * switch-c.adb: Change -gnatC to -gnateI
4174
4175 * usage.adb: Document new switch -gnateInnn
4176
4177 * scng.adb (Accumulate_Token_Checksum): New procedure
4178 (Scan): Call Accumulate_Token_Checksum after each identifier, reserved
4179 word or literal number.
4180 (Scan.Nlit.Scan_Integer): Do not accumulate internal '_' in litteral
4181 numbers.
4182
41832004-04-01 Thomas Quinot <quinot@act-europe.fr>
4184
4185 * a-tasatt.adb,
4186 g-comlin.adb, sinput-c.adb, s-secsta.adb, s-tpobop.adb,
4187 switch-m.adb, 56taprop.adb, 5ginterr.adb, 5gmastop.adb,
4188 5staprop.adb, 5vinterr.adb, 5vtaprop.adb, 5vtpopde.adb,
4189 5vtpopde.adb: Add missing 'constant' keywords.
4190
41912004-04-01 Javier Miranda <miranda@gnat.com>
4192
4193 * par-ch4.adb: (P_Allocator): Code cleanup
4194
4195 * sem_ch3.adb (Access_Definition): Properly set the null-excluding
4196 attribute.
4197
4198 * sinfo.ads: Complete documentation of previous change
4199
42002004-04-01 Pascal Obry <obry@gnat.com>
4201
4202 * gnatlink.adb (Process_Binder_File): Remove duplicate linker options
4203 only on VMS. This special handling was done because an old GNU/ld bug
4204 on Windows which has been fixed.
4205
42062004-04-01 GNAT Script <nobody@gnat.com>
4207
4208 * Make-lang.in: Makefile automatically updated
4209
8df83eae
RK
42102004-03-31 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
4211
4212 * decl.c (gnat_to_gnu_entity, make_type_from_size):
4213 Use TYPE_UNSIGNED, not TREE_UNSIGNED.
4214 * trans.c (tree_transform, convert_with_check): Likewise.
4215 * utils.c (gnat_signed_or_unsigned_type): Likewise.
4216 (build_vms_descriptor, unchecked_convert): Likewise.
4217 * utils2.c (nonbinary_modular_operation): Likewise.
4218
2820d220
AC
42192004-03-29 Javier Miranda <miranda@gnat.com>
4220
4221 * checks.adb (Null_Exclusion_Static_Checks): New subprogram
4222 (Install_Null_Excluding_Check): Local subprogram that determines whether
4223 an access node requires a runtime access check and if so inserts the
4224 appropriate run-time check.
4225 (Apply_Access_Check): Call Install_Null_Excluding check if required
4226 (Apply_Constraint_Check): Call Install_Null_Excluding check if required
4227
4228 * checks.ads: (Null_Exclusion_Static_Checks): New subprogram
4229
4230 * einfo.ads: Fix typo in comment
4231
4232 * exp_ch3.adb (Build_Assignment): Generate conversion to the
4233 null-excluding type to force the corresponding run-time check.
4234 (Expand_N_Object_Declaration): Generate conversion to the null-excluding
4235 type to force the corresponding run-time check.
4236
4237 * exp_ch5.adb (Expand_N_Assignment_Statement): Generate conversion to
4238 the null-excluding type to force the corresponding run-time check.
4239
4240 * exp_ch6.adb (Expand_Call): Do not generate the run-time check in
4241 case of access types unless they have the null-excluding attribute.
4242
4243 * sprint.adb (Sprint_Node_Actual): Give support to the null-exclusing
4244 part.
4245
4246 * exp_util.ads: Fix typo in comment
4247
4248 * par.adb (P_Null_Exclusion): New subprogram
4249 (P_Subtype_Indication): New formal that indicates if the null-excluding
4250 part has been scanned-out and it was present
4251
4252 * par-ch3.adb, par-ch4.adb, par-ch6.adb: Give support to AI-231
4253
4254 * sem_aggr.adb: (Check_Can_Never_Be_Null): New subprogram
4255 (Aggregate_Constraint_Checks): Generate conversion to the null-excluding
4256 type to force the corresponding run-time check
4257 (Resolve_Aggregate): Propagate the null-excluding attribute to the array
4258 components
4259 (Resolve_Array_Aggregate): Carry out some static checks
4260 (Resolve_Record_Aggregate.Get_Value): Carry out some static check
4261
4262 * sem_ch3.adb (Access_Definition): In Ada 0Y the Can_Never_Be_Null
4263 attribute must be set only if specified by means of the null-excluding
4264 part. In addition, we must also propagate the access-constant attribute
4265 if present.
4266 (Access_Subprogram_Declaration, Access_Type_Declaration,
4267 Analyze_Component_Declaration, Analyze_Object_Declaration,
4268 Array_Type_Declaration, Process_Discriminants,
4269 Analyze_Subtype_Declaration): Propagate the null-excluding attribute
4270 and carry out some static checks.
4271 (Build_Derived_Access_Type): Set the null-excluding attribute
4272 (Derived_Type_Declaration, Process_Subtype): Carry out some static
4273 checks.
4274
4275 * sem_ch4.adb (Analyze_Allocator): Carry out some static checks
4276
4277 * sem_ch5.adb (Analyze_Assignment): Carry out some static checks
4278
4279 * sem_ch6.adb (Process_Formals): Carry out some static checks.
4280 (Set_Actual_Subtypes): Generate null-excluding subtype if the
4281 null-excluding part was present; it is not required to be done here in
4282 case of anonymous access types.
4283 (Set_Formal_Mode): Ada 0Y allows anonymous access to have the null
4284 value.
4285
4286 * sem_res.adb (Resolve_Actuals): Carry out some static check
4287 (Resolve_Null): Allow null in anonymous access
4288
4289 * sinfo.adb: New subprogram Null_Exclusion_Present
4290 All_Present and Constant_Present available on access_definition nodes
4291
4292 * sinfo.ads: New flag Null_Exclusion_Present on subtype_declaration,
4293 object_declaration, derived_type_definition, component_definition,
4294 discriminant_specification, access_to_object_definition,
4295 access_function_definition, allocator, access_procedure_definition,
4296 access_definition, parameter_specification, All_Present and
4297 Constant_Present flags available on access_definition nodes.
4298
42992004-03-29 Robert Dewar <dewar@gnat.com>
4300
4301 * fname.adb, fname.ads, fname-sf.adb, fname-uf.adb, fname-uf.ads,
4302 gnat1drv.adb, lib.adb, lib.ads, lib-load.adb, lib-writ.adb,
4303 opt.ads, osint.adb, osint.ads, osint-c.adb, par.adb,
4304 par-ch10.adb, par-load.adb, par-prag.adb, sfn_scan.adb,
4305 sfn_scan.ads, sinput-l.adb, sinput-l.ads, switch-c.adb,
4306 sem_prag.adb: Updates to handle multiple units/file
4307
4308 * par.adb: Change test for s-rpc to s-rp for detecting rpc and children
4309
4310 * par.adb, memtrack.adb, prj-makr.adb, prj-part.adb,
4311 sem_util.adb: Minor reformatting
4312
4313 * sem_ch12.adb: Add comment for previous change
4314
43152004-03-29 Laurent Pautet <pautet@act-europe.fr>
4316
4317 * osint.adb (Executable_Prefix): Set Exec_Name to the current
4318 executable name when not initialized. Otherwise, use its current value.
4319
4320 * osint.ads (Exec_Name): Move Exec_Name from body to spec in order to
4321 initialize it to another executable name than the current one. This
4322 allows to configure paths for an executable name (gnatmake) different
4323 from the current one (gnatdist).
4324
43252004-03-29 Ed Schonberg <schonberg@gnat.com>
4326
4327 * exp_ch6.adb (Expand_Call): A call to a function declared in the
4328 current unit cannot be inlined if it appears in the body of a withed
4329 unit, to avoid order of elaboration problems in gigi.
4330
4331 * exp_ch9.adb (Build_Protected_Sub_Specification): Generate debugging
4332 information for protected (wrapper) operation as well, to simplify gdb
4333 use.
4334
4335 * sem_ch6.adb (Analyze_Subprogram_Body): For a private operation in a
4336 protected body, indicate that the entity for the generated spec comes
4337 from source, to ensure that references are properly generated for it.
4338 (Build_Body_To_Inline): Do not inline a function that returns a
4339 controlled type.
4340
4341 * sem_prag.adb (Process_Convention): If subprogram is overloaded, only
4342 apply convention to homonyms that are declared explicitly.
4343
4344 * sem_res.adb (Make_Call_Into_Operator): If the operation is a function
4345 that renames an equality operator and the operands are overloaded,
4346 resolve them with the declared formal types, before rewriting as an
4347 operator.
4348
43492004-03-29 GNAT Script <nobody@gnat.com>
4350
4351 * Make-lang.in: Makefile automatically updated
4352
6d11af89
AC
43532004-03-25 Vasiliy Fofanov <fofanov@act-europe.fr>
4354
4355 * memtrack.adb: Log realloc calls, which are treated as free followed
4356 by alloc.
4357
43582004-03-25 Vincent Celier <celier@gnat.com>
4359
4360 * prj-makr.adb (Process_Directories): Detect when a file contains
4361 several units. Do not include such files in the config pragmas or
4362 in the naming scheme.
4363
4364 * prj-nmsc.adb (Record_Source): New parameter Trusted_Mode.
4365 Resolve links only when not in Trusted_Mode.
4366 (Find_Sources, Recursive_Find_Dirs, Find_Source_Dirs, Locate_Directory):
4367 Do not resolve links for the display names.
4368
4369 * prj-part.adb (Parse_Single_Project, Project_Path_Name_Of): Do not
4370 resolve links when computing the display names.
4371
43722004-03-25 Thomas Quinot <quinot@act-europe.fr>
4373
4374 * sem_attr.adb (Check_Dereference): When the prefix of a 'Tag
4375 attribute reference does not denote a subtype, it can be any
4376 expression that has a classwide type, potentially after an implicit
4377 dereference. In particular, the prefix can be a view conversion for
4378 a classwide type (for which Is_Object_Reference holds), but it can
4379 also be a value conversion for an access-to-classwide type. In the
4380 latter case, there is an implicit dereference, and the original node
4381 for the prefix does not verify Is_Object_Reference.
4382
4383 * sem_util.adb (Is_Dependent_Component_Of_Mutable_Object): A view
4384 conversion of a discriminant-dependent component of a mutable object
4385 is one itself.
4386
43872004-03-25 Ed Schonberg <schonberg@gnat.com>
4388
4389 * freeze.adb (Freeze_Entity): When an inherited subprogram is
4390 inherited, has convention C, and has unconstrained array parameters,
4391 place the corresponding warning on the derived type declaration rather
4392 than the original subprogram.
4393
4394 * sem_ch12.adb (Instantiate_Formal_Subprogram): Set From_Default
4395 indication on renaming declaration, if formal has a box and actual
4396 is absent.
4397
4398 * sem_ch8.adb (Analyze_Subprogram_Renaming): Use From_Default flag to
4399 determine whether to generate an implicit or explicit reference to
4400 the renamed entity.
4401
4402 * sinfo.ads, sinfo.adb: New flag From_Default, to indicate that a
4403 subprogram renaming comes from a defaulted formal subprogram in an
4404 instance.
4405
44062004-03-25 Gary Dismukes <dismukes@gnat.com>
4407
4408 * sem_elab.adb (Check_Elab_Call): Refine loop that checks for default
4409 value expressions to ensure that calls within a component definition
4410 will be checked (since those are evaluated during the record type's
4411 elaboration).
4412
44132004-03-25 Arnaud Charlet <charlet@act-europe.fr>
4414
4415 * s-tpobop.adb: Code clean up:
4416 (Requeue_Call): Extract from PO_Service_Entries to remove duplicated
4417 code.
4418 (PO_Do_Or_Queue): Remove duplicated code and use Requeue_Call.
4419
44202004-03-25 Jose Ruiz <ruiz@act-europe.fr>
4421
4422 * Makefile.in: Clean up in the ravenscar run time.
4423
22421b79
RK
44242004-03-23 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
4425
4426 * decl.c (gnat_to_gnu_entity, case E_Access_Type): Pass value
4427 of No_Strict_Aliasing to build_pointer_type_for_mode.
4428 * utils.c (update_pointer_to): Walk pointer and ref chains.
4429
24105bab
AC
44302004-03-22 Cyrille Comar <comar@act-europe.fr>
4431
4432 * ali.ads: Fix Comment about Dynamic_Elab.
4433
4434 * gnatls.adb (Output_Unit): Add output of many flags (Dynamic_Elab,
4435 Has_RACW, Is_Generic, etc.)
4436 (Output_Object, Gnatls): Take into account ALI files not attached to
4437 an object.
4438
44392004-03-22 Vincent Celier <celier@gnat.com>
4440
4441 * gprep.adb: Change all String_Access to Name_Id
4442 (Is_ASCII_Letter): new function
4443 (Double_File_Name_Buffer): New procedure
4444 (Preprocess_Infile_Name): New procedure
4445 (Process_Files): New procedure
4446 (Gnatprep): Check if output and input are existing directories.
4447 Call Process_Files to do the real job.
4448
44492004-03-22 Robert Dewar <dewar@gnat.com>
4450
4451 * prj-env.adb, prj-nmsc.ads, prj-proc.ads,
4452 s-stache.ads, s-stache.adb: Comment updates. Minor reformatting.
4453
44542004-03-22 Sergey Rybin <rybin@act-europe.fr>
4455
4456 * scn.adb (Contains): Add check for EOF, is needed for a degenerated
4457 case when the source contains only comments.
4458
44592004-03-22 Ed Schonberg <schonberg@gnat.com>
4460
4461 * sem_ch10.adb (Analyze_Compilation_Unit): When generating a
4462 declaration for a child subprogram body that acts as a spec, indicate
4463 that the entity in the declaration needs debugging information.
4464
4465 * sem_ch3.adb (Complete_Private_Subtype): Do not build an underlying
4466 full view if the subtype is created for a constrained record component;
4467 gigi has enough information to construct the record, and there is no
4468 place in the tree for the declaration.
4469
4470 * sem_ch6.adb (Build_Body_To_Inline): Use an internal name without
4471 serial number for the dummy body that is built for analysis, to avoid
4472 inconsistencies in the generation of internal names when compiling
4473 with -gnatN.
4474
44752004-03-22 Thomas Quinot <quinot@act-europe.fr>
4476
4477 * sem_util.adb (Is_Object_Reference): A view conversion denotes an
4478 object.
4479
44802004-03-22 GNAT Script <nobody@gnat.com>
4481
4482 * Make-lang.in: Makefile automatically updated
4483
6fce44af
RK
44842004-03-21 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
4485
4486 * decl.c (gnat_to_gnu_entity): Use SUBSTITUTE_PLACEHOLDER_IN_EXPR.
4487 * trans.c (tree_transform, emit_index_check): Likewise.
4488 * utils.c (build_template): Likewise.
4489 (max_size, convert): Remove handling of WITH_RECORD_EXPR.
4490 (maybe_unconstrained_array, unchecked_convert): Likewise.
4491 * utils2.c (gnat_truthvalue_conversion, build_binary_op): Likewise.
4492 (build_unary_op): Likewise.
4493 (compare_arrays, build_allocator): Use SUBSTITUTE_PLACEHOLDER_IN_EXPR.
4494 (fill_vms_descriptor): Likewise.
4495 (build_call_alloc_dealloc): Likewise.
4496 ALIGN is unsigned.
4497 * gigi.h (build_call_alloc_dealloc): Alignment is unsigned.
4498
802f6d4b
JM
44992004-03-20 Joseph S. Myers <jsm@polyomino.org.uk>
4500
4501 PR other/14630
4502 * gnat_ug.texi: Add info directory category and entry.
4503 * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
4504 gnat_ug_wnt.texi: Regenerate.
4505
30f3b32b
AC
45062004-03-19 Arnaud Charlet <charlet@act-europe.fr>
4507
4508 * ada-tree.h: Update copyright notice.
4509 Minor reformatting.
4510
45112004-03-19 Olivier Hainque <hainque@act-europe.fr>
4512
4513 * decl.c (gnat_to_gnu_entity, case E_Exception): Handle VMS exceptions
4514 as regular exception objects and not as mere integers representing the
4515 condition code. The latter approach required some dynamics to mask off
4516 severity bits, which did not fit well into the GCC table based model.
4517 (gnat_to_gnu_entity, objects): Don't supply an external name for VMS
4518 exception data objects. We don't it and it would conflict with the other
4519 external symbol we have to generate for such exceptions.
4520
4521 * trans.c (tree_transform, case N_Exception_Handler): Remove part of
4522 the special code for VMS exceptions, since these are now represented
4523 as regular exceptions objects.
4524
7548281d
RK
45252004-03-19 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
4526
4527 * decl.c (debug_no_type_hash): Remove.
4528 (gnat_to_gnu_entity, case E_Array_Type): Don't set and clear it.
4529 * misc.c (LANG_HOOK_HASH_TYPE): Redefine.
4530
7324bf49 45312004-03-19 Laurent Guerby <laurent@guerby.net>
dbee7ab9 4532
90afe2c9 4533 * sem_prag.adb (Suppress_Unsuppress_Echeck): use loop instead of
dbee7ab9 4534 aggregate, allows bootstrap from 3.3 on powerpc-darwin.
90afe2c9 4535
eb34af89
RK
45362004-03-18 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
4537
4538 * ada-tree.h (TYPE_LEFT_JUSTIFIED_MODULAR_P): Add checking.
4539 (TYPE_CONTAINS_TEMPLATE_P, TYPE_OBJECT_RECORD_TYPE): Likewise.
4540 (TYPE_RM_SIZE_INT): Directly use type.values.
4541 (TREE_LOOP_ID): Clean up check.
4542 * decl.c (gnat_to_gnu_entity, case E_Enumeration_Type): Use
4543 TYPE_VALUES, not TYPE_FIELDS.
4544 * trans.c (convert_with_check): Delay access of bounds of basetype
4545 until sure is numeric.
4546
a336eaca
AC
45472004-03-18 Arnaud Charlet <charlet@act-europe.fr>
4548
4549 * 5atpopsp.adb: Remove RTEMS from list of platforms using this file.
4550
4551 Code clean up:
4552 * 5ataprop.adb, 5ftaprop.adb, 5htaprop.adb, 5itaprop.adb, 5staprop.adb,
4553 5vtaprop.adb, 5wtaprop.adb, 7staprop.adb (Finalize_TCB): Use
4554 Specific.Set instead of direct call to e.g pthread_setspecific.
4555
45562004-03-18 Thomas Quinot <quinot@act-europe.fr>
4557
4558 * adaint.c: Update comments.
4559
4560 * Makefile.in: set PREFIX_OBJS, SYMLIB, THREADSLIB, and
4561 GNATLIB_SHARED for FreeBSD.
4562
45632004-03-18 Jose Ruiz <ruiz@act-europe.fr>
4564
4565 * init.c [VxWorks]: Do not fix the stack size for the environment task.
4566 When needed (stack checking) the stack size is retrieved
4567 from the VxWorks kernel.
4568
4569 * Makefile.in: Flag -nostdinc is required when building the run time
4570 for avoiding looking for files in the base compiler.
4571 Add the VxWorks specific version of the package body for
4572 System.Stack_checking.Operations (5zstchop.adb).
4573
4574 * Make-lang.in: Add the object file for
4575 System.Stack_Checking.Operations.
4576
4577 * Makefile.rtl: Add object file for the package
4578 System.Stack_Checking.Operations.
4579
4580 * s-stchop.ads, s-stchop.adb, 5zstchop.adb: New files.
4581
4582 * s-stache.ads, s-stache.adb: Move the operations related to stack
4583 checking from this package to package System.Stack_Checking.Operations.
4584 This way, stack checking operations are only linked in the final
4585 executable when using the -fstack-check flag.
4586
45872004-03-18 Doug Rupp <rupp@gnat.com>
4588
4589 * Makefile.in [VMS]: Handle 64 bit specs (5qsystem.ads, 5xcrtl.ads).
4590 Reorganize ifeq's.
4591
4592 * 5qsystem.ads, 5xcrtl.ads: New files.
4593
45942004-03-18 Vincent Celier <celier@gnat.com>
4595
4596 * prj.adb (Reset): Reset hash table Files_Htable
4597
4598 * prj-env.adb (Source_Paths, Object_Paths): New tables.
4599 (Add_To_Source_Path, Add_To_Object_Path): New procedures, to replace
4600 the procedures Add_To_Path_File.
4601 (Set_Ada_Paths): Accumulate source and object dirs in the tables,
4602 making sure that each directory is present only once and, for object
4603 dirs, when a directory already present is added, the duplicate is
4604 removed and the directory is always put as the last in the table.
4605 Write the path files at the end of these accumulations.
4606
4607 * prj-nmsc.adb (Record_Source): Add source file name in hash table
4608 Files_Htable for all sources.
4609
4610 * prj-proc.adb (Process): Remove restrictions between not directly
4611 related extending projects.
4612
46132004-03-18 Emmanuel Briot <briot@act-europe.fr>
4614
4615 * prj-nmsc.ads, prj-nmsc.adb (Ada_Check): New parameter Trusted_Mode.
4616 (Find_Sources): Minor speed optimization.
4617
4618 * prj-proc.ads, prj-proc.adb (Check, Recursive_Check, Process): New
4619 parameter Trusted_Mode.
4620
46212004-03-18 Sergey Rybin <rybin@act-europe.fr>
4622
4623 * scn.adb (Determine_License): Take into account a degenerated case
4624 when the source contains only comments.
4625
46262004-03-18 Ed Schonberg <schonberg@gnat.com>
4627
4628 * sem_warn.adb (Check_References): For a warning on a selected
4629 component that does not come from source, locate an uninitialized
4630 component of the record type to produce a more precise error message.
4631
e6f69614
AC
46322004-03-15 Jerome Guitton <guitton@act-europe.fr>
4633
4634 * 3zsoccon.ads: Fix multicast options.
4635
4636 * s-thread.ads: Move unchecked conversion from ATSD_Access to Address
4637 in the spec.
4638
46392004-03-15 Robert Dewar <dewar@gnat.com>
4640
4641 * sem_prag.adb: Make sure No_Strict_Aliasing flag is set right when
4642 pragma used for a private type.
4643
4644 * lib-xref.adb (Generate_Reference): Do not generate warning if
4645 reference is in a different unit from the pragma Unreferenced.
4646
4647 * 5vtpopde.adb: Minor reformatting
4648 Fix casing of To_Task_ID
4649
4650 * sem_ch13.adb (Validate_Unchecked_Conversion): Set No_Strict_Aliasing
4651 flag if we have an unchecked conversion to an access type in the same
4652 unit.
4653
46542004-03-15 Geert Bosch <bosch@gnat.com>
4655
4656 * a-ngcoty.adb (Modulus): In alternate formula for large real or
4657 imaginary parts, use Double precision throughout.
4658
4659 * a-tifiio.adb (Put_Scaled): Remove remaining pragma Debug. Not only
4660 we want to be able to compile run-time with -gnata for testing, but
4661 this may also be instantiated in user code that is compiled with -gnata.
4662
46632004-03-15 Olivier Hainque <hainque@act-europe.fr>
4664
4665 * s-stalib.ads (Exception_Code): New type, to represent Import/Export
4666 codes. Having a separate type for this is useful to enforce consistency
4667 throughout the various run-time units.
4668 (Exception_Data): Use Exception_Code for Import_Code.
4669
4670 * s-vmextra.ads, s-vmexta.adb: Use Exception_Code instead of a mix of
4671 Natural and Integer in various places.
4672 (Register_VMS_Exception): Use Base_Code_In to compute the exception code
4673 with the severity bits masked off.
4674 (Register_VMS_Exception): Handle the additional exception data pointer
4675 argument.
4676
4677 * raise.c (_GNAT_Exception structure): Remove the handled_by_others
4678 component, now reflected by an exported accessor.
4679 (is_handled_by): New routine to compute whether the propagated
4680 occurrence matches some handler choice specification. Extracted out of
4681 get_action_description_for, and expanded to take care of the VMS
4682 specifities.
4683 (get_action_description_for): Use is_handled_by instead of an explicit
4684 complex condition to decide if the current choice at hand catches the
4685 propagated occurrence.
4686
4687 * raise.h (Exception_Code): New type for C.
4688
4689 * rtsfind.ads (RE_Id, RE_Unit_Table): Add
4690 System.Standard_Library.Exception_Code, to allow references from the
4691 pragma import/export expander.
4692
4693 * a-exexpr.adb (Is_Handled_By_Others, Language_For, Import_Code_For):
4694 New accessors to allow easy access to GNAT exception data
4695 characteristics.
4696 (GNAT_GCC_Exception record, Propagate_Exception): Get rid of the
4697 redundant Handled_By_Others component, helper for the personality
4698 routine which will now be able to call the appropriate exception data
4699 accessor instead.
4700
4701 * cstand.adb (Create_Standard): Adjust the type of the Import_Code
4702 component of Standard_Exception_Type to be the closest possible to
4703 Exception_Code in System.Standard_Library, that we cannot get at this
4704 point. Expand a ??? comment to notify that this type node should
4705 probably be rewritten later on.
4706
4707 * exp_prag.adb (Expand_Pragma_Import_Export_Exception): Adjust the
4708 registration call to include a pointer to the exception object in the
4709 arguments.
4710
4711 * init.c (__gnat_error_handler): Use Exception_Code and Base_Code_In
4712 instead of int and explicit bitmasks.
4713
47142004-03-15 Vincent Celier <celier@gnat.com>
4715
4716 * vms_data.ads: Add new GNAT BIND qualifier /STATIC. Makes /NOSHARED
4717 equivalent to /STATIC and /NOSTATIC equivalent to /SHARED.
4718
4719 * a-tasatt.adb (To_Access_Code): Remove this UC instantiation, no
4720 longer needed now that it is in the spec of
4721 System.Tasking.Task_Attributes.
4722
4723 * adaint.h, adaint.c: (__gnat_create_output_file): New function
4724
4725 * gnatcmd.adb: Fix bug introduced in previous rev: /= instead of =
4726
4727 * g-os_lib.ads, g-os_lib.adb (Create_Output_Text_File): New function.
4728
4729 * make.adb (Gnatmake): Do not check the executable suffix; it is being
4730 taken care of in Scan_Make_Arg.
4731 (Scan_Make_Arg): Add the executable suffix only if the argument
4732 following -o, in canonical case, does not end with the executable
4733 suffix. When in verbose mode and executable file name does not end
4734 with executable suffix, output the executable name, in canonical case.
4735
4736 * s-tataat.ads (Access_Dummy_Wrapper): Add pragma No_Strict_Aliasing
4737 to avoid warnings when instantiating Ada.Task_Attributes.
4738 Minor reformating.
4739
4740 * mlib-prj.adb (Process_Imported_Libraries): Get the imported libraries
4741 in the correct order.
4742
4743 * prj-makr.adb (Process_Directory): No longer use GNAT.Expect, but
4744 redirect standard output and error to a file for the invocation of the
4745 compiler, then read the file.
4746
4747 * prj-nmsc.adb (Find_Sources): Use the Display_Value for each
4748 directory, instead of the Value.
4749 (Find_Source_Dirs): Remove useless code & comments.
4750
47512004-03-15 Ed Schonberg <schonberg@gnat.com>
4752
4753 * exp_ch3.adb (Freeze_Record_Type): If a primitive operation of a
4754 tagged type is inherited, and the parent operation is not frozen yet,
4755 force generation of a freeze node for the inherited operation, so the
4756 corresponding dispatch entry is properly initialized.
4757 (Make_Predefined_Primitive_Specs): Check that return type is Boolean
4758 when looking for user-defined equality operation.
4759
4760 * exp_ch4.adb (Expand_Composite_Equality): Check that return type is
4761 boolean when locating primitive equality of tagged component.
4762
4763 * exp_ch5.adb (Expand_Assign_Array): If the left-hand side is a
4764 bit-aligned field and the right-hand side a string literal, introduce
4765 a temporary before expanding assignment into a loop.
4766
4767 * exp_ch9.adb (Expand_N_Task_Type_Declaration): Copy expression for
4768 priority in full, to ensure that any expanded subepxressions of it are
4769 elaborated in the scope of the init_proc.
4770
4771 * exp_prag.adb (Expand_Pragma_Import): Search for initialization call
4772 after object declaration, skipping over code that may have been
4773 generated for validity checks.
4774
4775 * sem_ch12.adb (Validate_Private_Type_Instance): If type has unknown
4776 discriminants, ignore the known discriminants of its full view, if
4777 any, to check legality.
4778
4779 * sem_ch3.adb (Complete_Private_Subtype): Do not create constrained
4780 component if type has unknown discriminants.
4781 (Analyze_Private_Extension_Declaration): Discriminant constraint is
4782 null if type has unknown discriminants.
4783
4784 * sem_ch6.adb (Analyze_Generic_Subprogram_Body): Generate reference
4785 for end label when present.
4786
4787 * s-fileio.adb (Open): When called with a C_Stream, use given name for
4788 temporary file, rather than an empty string.
4789
47902004-03-15 Ed Falis <falis@gnat.com>
4791
4792 * s-thread.adb: Removed, no longer used.
4793
47942004-03-15 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
4795
4796 * decl.c (target.h): Now include.
4797 (gnat_to_gnu_entity, case E_Access_Type): Use mode derived from ESIZE
4798 in new build_pointer_from_mode calls for non-fat/non-thin pointer.
4799 (validate_size): For POINTER_TYPE, get smallest size permitted on
4800 machine.
4801
4802 * fe.h: Sort Einfo decls and add Set_Mechanism.
4803
4804 * Makefile.in: (LIBGNAT_SRCS): Remove types.h.
4805 (ada/decl.o): Depends on target.h.
4806
4807 * trans.c (tree_transform, N_Unchecked_Type_Conversion): Do not use
4808 FUNCTION_BOUNDARY; always use TYPE_ALIGN.
4809
48102004-03-15 Thomas Quinot <quinot@act-europe.fr>
4811
4812 * 5ztpopsp.adb, 56tpopsp.adb: Fix spelling of Task_ID.
4813
4814 * exp_ch4.adb (Expand_N_Indexed_Component): Do not call
4815 Insert_Dereference_Action when rewriting an implicit dereference into
4816 an explicit one, this will be taken care of during expansion of the
4817 explicit dereference.
4818 (Expand_N_Slice): Same. Always do the rewriting, even for the case
4819 of non-packed slices, since the dereference action generated by
4820 expansion of the explicit dereference is needed in any case.
4821 (Expand_N_Selected_Component): When rewriting an implicit dereference,
4822 analyze and resolve the rewritten explicit dereference so it is seen
4823 by the expander.
4824 (Insert_Dereference_Action): This procedure is now called only for the
4825 expansion of an N_Explcit_Dereference_Node. Do insert a check even for
4826 dereferences that do not come from source (including explicit
4827 dereferences resulting from rewriting implicit ones), but do not
4828 recursively insert a check for the dereference nodes contained within
4829 the check.
4830 (Insert_Dereference_Action): Clarify and correct comment.
4831
e4c9c075
PB
48322004-03-08 Paolo Bonzini <bonzini@gnu.org>
4833
4834 PR ada/14131
4835 Move language detection to the top level.
4836 * config-lang.in: Build by default.
4837
8a6a52dc
AC
48382004-03-05 Robert Dewar <dewar@gnat.com>
4839
4840 * 56taprop.adb, 5ataprop.adb: Remove unneeded unchecked conversions
4841
4842 * a-tags.adb, a-tags.ads, s-finimp.adb, s-finroo.ads,
4843 i-cpoint.ads, i-cpoint.adb, i-cstrin.adb, i-cstrin.ads,
90afe2c9 4844 5iosinte.ads, 5sosinte.ads, 5staspri.ads, 5itaprop.adb,
8a6a52dc
AC
4845 5staprop.adb, 5wtaprop.adb, s-tataat.ads, s-tataat.adb: Move
4846 unchecked conversion to spec to avoid warnings.
4847
4848 * s-tasini.adb, s-taskin.ads, 5atpopsp.adb: Correct spelling Task_Id
4849 to Task_ID
4850
4851 * 7stpopsp.adb: Correct casing in To_Task_ID call
4852
4853 * a-strsea.ads, a-strsea.adb: Minor reformatting
4854
4855 * einfo.ads, einfo.adb: Define new flag No_Strict_Aliasing
4856
4857 * errout.ads: Switch for VMS is now NO_STRICT_ALIASING.
4858 Adjust Max_Msg_Length to be clearly large enough.
4859
4860 * fe.h: Define In_Same_Source_Unit
4861
4862 * osint.adb: Add pragma Warnings Off to suppress warnings
4863 * g-dyntab.adb, g-table.adb, g-thread.adb: Add Warnings (Off) to kill
4864 aliasing warnings.
4865
4866 * opt.ads: Put entries in alpha order. Add entry for No_Strict_Aliasing
4867
4868 * par-prag.adb: Add dummy entry for No_Strict_Aliasing pragma
4869
4870 * sem_ch13.adb: Generate validate unchecked conversion nodes for gcc.
4871
4872 * sem_ch3.adb: Set No_Strict_Aliasing flag if config pragma set.
4873
4874 * sem_prag.adb: Implement pragma No_Strict_Aliasing.
4875
4876 * sinfo.ads: Remove obsolete comment on validate unchecked conversion
4877 node. We now do generate them for gcc back end.
4878
4879 * table.adb, sinput.adb: Add pragma Warnings Off to suppress aliasing
4880 warning.
4881
4882 * sinput-c.adb: Fix bad name in header.
4883 Add pragma Warnings Off to suppress aliasing warning.
4884
4885 * sinput-l.adb: Add pragma Warnings Off to suppress aliasing warning.
4886
4887 * snames.h, snames.ads, snames.adb: Add entry for pragma
4888 No_Strict_Aliasing.
4889
48902004-03-05 Vincent Celier <celier@gnat.com>
4891
4892 * prj-com.ads: Add hash table Files_Htable to check when a file name
4893 is already a source of another project.
4894
4895 * prj-nmsc.adb (Record_Source): Before recording a new source, check
4896 if its file name is not already a source of another project. Report an
4897 error if it is.
4898
4899 * gnatcmd.adb: When GNAT PRETTY is invoked with a project file and no
4900 source file name, call gnatpp with all the sources of the main project.
4901
4902 * vms_conv.adb (Initialize): GNAT PRETTY may be called with any number
4903 of file names.
4904
4905 * vms_data.ads: Correct documentation of new /OPTIMIZE keyword
4906 NO_STRICT_ALIASING. Add new qualifier for GNAT PRETTY:
4907 /RUNTIME_SYSTEM=, converted to --RTS=
4908 /NOTABS, converted to -notabs
4909
49102004-03-05 Pascal Obry <obry@gnat.com>
4911
4912 * make.adb: Minor reformatting.
4913
49142004-03-05 Ed Schonberg <schonberg@gnat.com>
4915
4916 Part of implemention of AI-262.
4917 * par-ch10.adb (P_Context_Clause): Recognize private with_clauses.
4918
4919 * sem_ch10.ads, sem_ch10.adb: (Install_Private_With_Clauses): New
4920 procedure.
4921
4922 * sem_ch3.adb (Analyze_Component_Declaration): Improve error message
4923 when component type is a partially constrained class-wide subtype.
4924 (Constrain_Discriminated_Type): If parent type has unknown
4925 discriminants, a constraint is illegal, even if full view has
4926 discriminants.
4927 (Build_Derived_Record_Type): Inherit discriminants when deriving a type
4928 with unknown discriminants whose full view is a discriminated record.
4929
4930 * sem_ch7.adb (Preserve_Full_Attributes): Preserve Has_Discriminants
4931 flag, to handle properly derivations of tagged types with unknown
4932 discriminants.
4933 (Analyze_Package_Spec, Analyze_Package_Body): Install
4934 Private_With_Clauses before analyzing private part or body.
4935
4936 * einfo.ads: Indicate that both Has_Unknown_Discriminants and
4937 Has_Discriminants can be true for a given type (documentation).
4938
49392004-03-05 Arnaud Charlet <charlet@act-europe.fr>
4940
4941 * s-restri.ads: Fix license (GPL->GMGPL).
4942
4943 * s-tassta.adb: Minor reformatting.
4944
4945 * s-tasren.adb: Replace manual handling of Self_Id.ATC_Nesting_Level
4946 by calls to Exit_One_ATC_Level, since additional clean up is performed
4947 by this function.
4948
4949 * s-tpobop.adb: Replace manual handling of Self_Id.ATC_Nesting_Level
4950 by calls to Exit_One_ATC_Level, since additional clean up is performed
4951 by this function.
4952
49532004-03-05 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
4954
4955 * trans.c: Reflect GCC changes to fix bootstrap problem.
4956 Add warning for suspicious aliasing unchecked conversion.
4957
49582004-03-05 GNAT Script <nobody@gnat.com>
4959
4960 * Make-lang.in: Makefile automatically updated
4961
555360a5
AC
49622004-03-02 Emmanuel Briot <briot@act-europe.fr>
4963
4964 * ali.adb (Read_Instantiation_Instance): Do not modify the
4965 current_file_num when reading information about instantiations, since
4966 this corrupts files in later references.
4967
49682004-03-02 Vincent Celier <celier@gnat.com>
4969
4970 * bcheck.adb (Check_Consistency): Get the full path of an ALI file
4971 before checking if it is read-only.
4972
4973 * bld.adb (Recursive_Process): Concatenate <PROJECT>.src_dirs in front
4974 of SRC_DIRS and eliminate duplicates.
4975
4976 * gprcmd.adb: Replace command "path" with command "path_sep" to return
4977 the path separator.
4978 (Usage): Document path_sep
4979
4980 * Makefile.generic: For Ada and GNU C++ cases, link directly with the
4981 C++ compiler. No need for a script.
4982 Replace use of C*_INCLUDE_PATH env var for GCC compilers with CPATH.
4983 Do not call gprcmd to build the C*_INCLUDE_PATHs, do it with function
4984 subst.
4985
4986 * prj-env.adb (For_All_Source_Dirs): Only add source dirs in project
4987 where there are Ada sources.
4988 (Set_Ada_Paths): Only add to the include path the source dirs of project
4989 with Ada sources.
4990 (Add_To_Path): Add the Display_Values of the directories, not their
4991 Values.
4992
4993 * prj-nmsc.adb (Find_Sources): Set flag Sources_Present in the project
4994 data.
4995
4996 * prj-nmsc.adb (Add_ALI_For): Make sure that the element Display_Value
4997 is not No_Name.
4998 (Find_Source_Dirs): Set Display_Value to a non canonicalized value, only
4999 Value is canonicalized.
5000 (Language_Independent_Check): Do not copy Value to Display_Value when
5001 canonicalizing Value.
5002
5003 * prj-part.adb (Post_Parse_Context_Clause): Compare canonical cased
5004 path to find limited with cycles.
5005 (Parse_Single_Project): Use canonical cased path to find the end of a
5006 with cycle.
5007
50082004-03-02 Ed Schonberg <schonberg@gnat.com>
5009
5010 * sem_ch10.adb (Optional_Subunit): Verify that unit contains a subunit
5011 and not a child unit.
5012
5013 * sinfo.ads, sinfo.adb: Rearrange flags so that Private_Present can
5014 appear in a with_clause.
5015
5016 * decl.c (gnat_to_gnu_type): If entity is a generic type, which can
5017 only happen in type_annotate mode, do not try to elaborate it.
5018
5019 * exp_util.adb (Force_Evaluation): If expression is a selected
5020 component on the left of an assignment, use a renaming rather than a
5021 temporary to remove side effects.
5022
5023 * freeze.adb (Freeze_Entity): Do not freeze a global entity within an
5024 inlined instance body, which is analyzed before the end of the
5025 enclosing scope.
5026
50272004-03-02 Robert Dewar <dewar@gnat.com>
5028
5029 * par-ch10.adb, par-ch3.adb, par-ch4.adb, scng.adb,
5030 sem_ch4.adb: Use new feature for substitution of keywords in VMS
5031
5032 * errout.ads, errout.adb: Implement new circuit for substitution of
5033 keywords in VMS.
5034
5035 * sem_case.adb (Analyze_Choices): Place message properly when case is
5036 a subtype reference rather than an explicit range.
5037
5038 * sem_elim.adb, s-tpobop.ads, exp_ch2.adb: Minor reformatting
5039
50402004-03-02 Doug Rupp <rupp@gnat.com>
5041
5042 * init.c (__gnat_initialize)[VMS]: Resignal RDB-E-STREAM_EOF.
5043
50442004-03-02 Thomas Quinot <quinot@act-europe.fr>
5045
5046 * s-tporft.adb: Add missing locking around call to Initialize_ATCB.
5047
50482004-03-02 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
5049
5050 * utils.c (finish_record_type): Do not set DECL_NONADDRESSABLE for a
5051 BLKmode bitfield.
5052
8a7988f5
AC
50532004-02-25 Robert Dewar <dewar@gnat.com>
5054
5055 * 51osinte.ads, 52osinte.ads, 53osinte.ads, 54osinte.ads,
5056 55osinte.ads, 56osinte.ads, 5aosinte.ads, 5bosinte.ads,
5057 5cosinte.ads, 5fosinte.ads, 5gosinte.ads, 5hosinte.ads,
5058 5iosinte.ads, 5losinte.ads, 5nosinte.ads, 5oosinte.ads,
5059 5posinte.ads, 5sosinte.ads, 5tosinte.ads, 5vosinte.ads,
5060 5wosinte.ads, 5zosinte.ads: Move instances of Unchecked_Conversion to
5061 the defining instance of the type to avoid aliasing problems.
5062 Fix copyright header. Fix bad comments in package header.
5063
5064 * exp_util.adb, prj-part.adb, prj-part.adb: Minor reformatting
5065
50662004-02-25 Ed Schonberg <schonberg@gnat.com>
5067
5068 * exp_ch2.adb (Param_Entity): Handle properly formals that have been
5069 rewritten as references when aliased through an address clause.
5070
5071 * sem_ch4.adb (Try_Indirect_Call): Normalize actuals before checking
5072 whether call can be interpreted as an indirect call to the result of a
5073 parameterless function call returning an access subprogram.
5074
50752004-02-25 Arnaud Charlet <charlet@act-europe.fr>
5076
5077 Code clean up:
5078 * exp_ch7.adb (Make_Clean): Remove generation of calls to
5079 Unlock[_Entries], since this is now done by Service_Entries directly.
5080
5081 * exp_ch9.adb (Build_Protected_Subprogram_Body): ditto.
5082
5083 * s-tpobop.ads, s-tpobop.adb (PO_Service_Entries): New nested procedure
5084 Requeue_Call for better code readability. Change spec and update calls:
5085 PO_Service_Entries now unlock the PO on exit.
5086 (Protected_Entry_Call, Timed_Protected_Entry_Call): Update calls to
5087 PO_Service_Entries.
5088
5089 * s-tposen.ads, s-tposen.adb (Service_Entry): Now unlock the PO on exit.
5090
5091 * s-taenca.adb, s-tasren.adb: Update calls to PO_Service_Entries.
5092
50932004-02-25 Sergey Rybin <rybin@act-europe.fr>
5094
5095 * exp_ch9.adb (Build_Simple_Entry_Call): Prevent expanding the
5096 protected subprogram call and analyzing the result of such expanding
5097 in case when the called protected subprogram is eliminated.
5098
5099 * sem_elim.adb (Check_Eliminated): Skip blocks when comparing scope
5100 names.
5101
51022004-02-25 Jerome Guitton <guitton@act-europe.fr>
5103
5104 * Makefile.in: Clean ups.
5105
6871ba5f
AC
51062004-02-23 Ed Schonberg <schonberg@gnat.com>
5107
5108 * exp_ch6.adb (Expand_N_Subprogram_Declaration): Do not create
5109 protected operations if original subprogram is flagged as eliminated.
5110 (Expand_N_Subprogram_Body): For a protected operation, create
5111 discriminals for next operation before checking whether the operation
5112 is eliminated.
5113
5114 * exp_ch9.adb (Expand_N_Protected_Body,
5115 Expand_N_Protected_Type_Declaration): Do not generate specs and bodies
5116 for internal protected operations if the original subprogram is
5117 eliminated.
5118
5119 * sem_elim.adb (Check_Eliminated): Handle properly protected operations
5120 declared in a single protected object.
5121
51222004-02-23 Vincent Celier <celier@gnat.com>
5123
5124 * prj-attr.adb: Make attribute Builder'Executable an associative array,
5125 case insensitive if file names are case insensitive, instead of a
5126 standard associative array.
5127
5128 * prj-attr.adb (Initialize): For 'b' associative arrays, do not set
5129 them as case insensitive on platforms where the file names are case
5130 sensitive.
5131
5132 * prj-part.adb (Parse_Single_Project): Make sure, when checking if
5133 project file has already been parsed that canonical path are compared.
5134
51352004-02-23 Robert Dewar <dewar@gnat.com>
5136
5137 * sinput-c.ads: Correct bad unit title in header
5138
5139 * freeze.adb: Minor reformatting
5140
51412004-02-23 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
5142
5143 * trans.c (tree_transform, case N_Procedure_Call_Statement): For
5144 nonaddressable COMPONENT_REF that is removing padding that we are
5145 taking the address of, take the address of the padded record instead
5146 if item is variable size.
5147
6e059adb
AC
51482004-02-20 Robert Dewar <dewar@gnat.com>
5149
5150 * bld.adb, exp_util.adb, gprcmd.adb: Minor reformatting
5151
51522004-02-20 Ed Schonberg <schonberg@gnat.com>
5153
5154 * freeze.adb (Freeze_Record_Type): Generalize mechanism that generates
5155 itype references for the constrained designated type of a component
5156 whose base type is already frozen.
5157
51582004-02-20 Arnaud Charlet <charlet@act-europe.fr>
5159
5160 * init.c (__gnat_error_handler [tru64]): Rewrite previous change to
5161 avoid GCC warnings.
5162
51632004-02-20 Sergey Rybin <rybin@act-europe.fr>
5164
5165 * sem_ch12.adb (Analyze_Formal_Package): Create a new defining
5166 identifier for a phantom package that rewrites the formal package
5167 declaration with a box. The Add semantic decorations for the defining
5168 identifier from the original node (that represents the formal package).
5169
88e3a2a3
MK
51702004-02-19 Matt Kraai <kraai@alumni.cmu.edu>
5171
5172 * Make-lang.in (ada/stamp-sdefault): Use the top level
5173 move-if-change.
5174
4221057e
RH
51752004-02-19 Richard Henderson <rth@redhat.com>
5176
5177 * misc.c (record_code_position): Add third build arg for RTL_EXPR.
5178
5c1c8a03
AC
51792004-02-18 Emmanuel Briot <briot@act-europe.fr>
5180
5181 * ali.ads, ali.adb (First_Sdep_Entry): No longer a constant, so that
5182 Scan_ALI can be used for multiple ALI files without reinitializing
5183 between calls.
5184
51852004-02-18 Robert Dewar <dewar@gnat.com>
5186
5187 * debug.adb: Minor reformatting.
5188
51892004-02-18 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
5190
5191 * decl.c (gnat_to_gnu_entity, case object): Set DECL_POINTER_ALIAS_SET
5192 to zero if there is an address clause.
5193
51942004-02-18 Thomas Quinot <quinot@act-europe.fr>
5195
5196 * exp_util.adb (Side_Effect_Free): Any literal is side effects free.
5197
51982004-02-18 Gary Dismukes <dismukes@gnat.com>
5199
5200 * layout.adb (Layout_Component_List): Revise generation of call to
5201 discriminant-checking function to pass selections of all of the type's
5202 discriminants rather than just the variant-controlling discriminant.
5203
52042004-02-18 Olivier Hainque <hainque@act-europe.fr>
5205
5206 * 5gmastop.adb (Pop_Frame): Do not call exc_unwind, which is bound to
5207 fail in the current setup and triggers spurious system error messages.
5208 Pretend it occurred and failed instead.
5209
52102004-02-18 Vincent Celier <celier@gnat.com>
5211
5212 * bld.adb: Mark FLDFLAGS as saved
5213 (Process_Declarative_Items): Add Linker'Linker_Options to FLDFLAGS when
5214 it is not the root project. Put each directory to be
5215 extended between double quotes to prevent it to be expanded on Windows.
5216 (Recursive_Process): Reset CFLAGS/CXXFLAGS to nothing before processing
5217 the project file. Set them back to their initial values if they have not
5218 been set in the project file.
5219
5220 * gprcmd.adb: (Gprdebug, Debug): New global variables
5221 (Display_Command): New procedure
5222 (Usage): Document new command "linkopts"
5223 Call Display_Command when env var GPRDEBUG has the value "TRUE"
5224 Implement new command "linkopts"
5225 Remove quotes that may be around arguments for "extend"
5226 Always call Normalize_Pathname with arguments formatted for the platform
5227
5228 * Makefile.generic: Link C/C++ mains with $(FLDFLAGS)
5229 Change @echo to @$(display) in target clean to be able to clean silently
5230
5231 * Makefile.prolog: Save FLDFLAGS and give it an initial empty value
5232
5233 * prj-part.adb (Project_Path_Name_Of): Do not put final result in
5234 canonical case.
5235
5236 * prj-part.adb (Parse_Single_Project): Always call with From_Extended
5237 = Extending_All when current project is an extending all project.
5238
5239 * vms_conv.adb (Output_File_Expected): New Boolean global variable,
5240 set to True only for LINK command, after Unix switch -o.
5241 (Process_Arguments): Set Output_File_Expected to True for LINK command
5242 after Unix switch -o. When Output_File_Expected is True, never add an
5243 extension to a file name.
5244
5245 * 5vml-tgt.adb (Build_Dynamic_Library): Do not append "/OPTIONS" to the
5246 option file name, only to the --for-linker= switch.
5247 (Option_File_Name): If option file name do not end with ".opt", append
5248 "/OPTIONS".
5249
52502004-02-18 GNAT Script <nobody@gnat.com>
5251
5252 * Make-lang.in: Makefile automatically updated
5253
80bcb4d2
MK
52542004-02-17 Matt Kraai <kraai@alumni.cmu.edu>
5255
5256 * Make-lang.in (stamp-sdefault): Do not depend on
5257 move-if-change.
5258
1daa84b6
ZW
52592004-02-12 Zack Weinberg <zack@codesourcery.com>
5260
5261 * config-lang.in: Disable Ada by default until probe logic for
5262 a bootstrap Ada compiler can be moved to the top level configure
5263 script.
5264
18c0ecbe
AC
52652004-02-12 Olivier Hainque <hainque@act-europe.fr>
5266
5267 * decl.c (components_to_record): Don't claim that the internal fields
5268 we make to hold the variant parts are semantically addressable, because
5269 they are not.
5270
5271 * exp_pakd.adb (Create_Packed_Array_Type): Rename Esiz into PASize and
5272 adjust the comment describing the modular type form when we can use it.
5273 (Install_PAT): Account for the Esiz renaming.
5274
5275 * init.c (__gnat_error_handler for alpha-tru64): Arrange to clear the
5276 sc_onstack context indication before raising the exception to which
5277 the signal is mapped. Allows better handling of later signals possibly
5278 triggered by the resumed user code if the exception is handled.
5279
52802004-02-12 Arnaud Charlet <charlet@act-europe.fr>
5281
5282 * 5zinit.adb: Removed, no longer used.
5283
52842004-02-12 Robert Dewar <dewar@gnat.com>
5285
5286 * ali.adb: Remove separating space between parameters on R line. Makes
5287 format consistent with format used by the binder for Set_Globals call.
5288
5289 * atree.ads, atree.adb: Minor reformatting (new function header format)
5290
5291 * bindgen.adb: Add Run-Time Globals documentation section containing
5292 detailed documentation of the globals passed from the binder file to
5293 the run time.
5294
5295 * gnatls.adb: Minor reformatting
5296
5297 * init.c (__gnat_set_globals): Add note pointing to documentation in
5298 bindgen.
5299
5300 * lib-writ.ads, lib-writ.adb: Remove separating space between
5301 parameters on R line.
5302 Makes format consistent with format used by the binder for Set_Globals
5303 call.
5304
5305 * osint.ads: Add 2004 to copyright notice
5306 Minor reformatting
5307
5308 * snames.ads: Correct capitalization of FIFO_Within_Priorities
5309 Noticed during code reading, documentation issue only
5310
5311 * usage.adb: Remove junk line for obsolete C switch
5312 Noticed during code reading
5313
53142004-02-12 Vincent Celier <celier@gnat.com>
5315
5316 * bld.adb (Process_Declarative_Items): For Source_Dirs call gprcmd
5317 extend for each directory, so that multiple /** directories are
5318 extended individually.
5319 (Recursive_Process): Set the default for LANGUAGES to ada
5320
5321 * gprcmd.adb: Define new command "ignore", to do nothing.
5322 Implement new comment "path".
5323
5324 * Makefile.generic: Suppress output when SILENT is set
5325 Make sure that when compiler for C/C++ is gcc, the correct -x switch is
5326 used, so that the correct compiler is invoked.
5327 When compiler is gcc/g++, put search path in env vars C_INCLUDE_PATH/
5328 CXX_INCLUDE_PATH, to avoid failure with too long command lines.
5329
53302004-02-12 Jerome Guitton <guitton@act-europe.fr>
5331
5332 * Makefile.in: Clean ups and remove obsolete targets.
5333
53342004-02-12 Ed Schonberg <schonberg@gnat.com>
5335
5336 * exp_ch5.adb: Remove Possible_Unligned_Slice, in favor of the similar
5337 predicate declared in exp_util.
5338
5339 * exp_util.adb: Add comments.
5340
5341 * sem_ch10.adb (Analyze_Subunit): Remove ultimate parent unit from
5342 visibility before compiling context of the subunit.
5343
5344 * sem_res.adb (Check_Parameterless_Call): If the context expects a
5345 value but the name is a procedure, do not attempt to analyze as a call,
5346 in order to obtain more telling diagnostics.
5347
5348 * sem_util.adb (Wrong_Type): Further enhancement to diagnose missing
5349 'Access on parameterless function calls.
5350 (Normalize_Actuals): For a parameterless function call with missing
5351 actuals, defer diagnostic until resolution of enclosing call.
5352
5353 * sem_util.adb (Wrong_Type): If the context type is an access to
5354 subprogram and the expression is a procedure name, suggest a missing
5355 'attribute.
5356
c1dcfa14
AC
53572004-02-10 Arnaud Charlet <charlet@act-europe.fr>,
5358 Nathanael Nerode <neroden@gcc.gnu.org>
5359
5360 PR ada/6637, PR ada/5911
5361 Merge with libada-branch:
90afe2c9 5362 * config-lang.in: Build libada only when ada is built.
c1dcfa14 5363
2e071734
AC
53642004-02-09 Ed Schonberg <schonberg@gnat.com>
5365
5366 * exp_ch4.adb (Expand_N_Op_Eq): When looking for the primitive equality
5367 for a tagged type, verify that both formals have the same type.
5368
5369 * exp_ch6.adb (Add_Call_By_Copy_Code): Initialize properly the
5370 temporary when the formal is an in-parameter and the actual a possibly
5371 unaligned slice.
5372
5373 * exp_ch9.adb (Expand_Entry_Barrier): Resolve barrier expression even
5374 when expansion is disabled, to ensure proper name capture with
5375 overloaded literals. Condition can be of any boolean type, resolve
5376 accordingly.
5377
5378 * sem_ch8.adb (Analyze_Subprogram_Renaming): Emit warning if the
5379 renaming is for a formal subprogram with a default operator name, and
5380 there is a usable operator that is visible at the point of
5381 instantiation.
5382
53832004-02-09 Robert Dewar <dewar@gnat.com>
5384
5385 * ali.adb (Scan_Ali) Add Ignore_Errors argument. This is a major
5386 rewrite to ignore errors in ali files, intended to allow tools downward
5387 compatibility with new versions of ali files.
5388
5389 * ali.ads: Add new parameter Ignore_Errors
5390
5391 * bcheck.adb (Check_Consistent_Restrictions): Fix error of sometimes
5392 duplicating the error message giving the file with restrictions.
5393
5394 * debug.adb: Add debug flag I for gnatbind
5395
5396 * errout.adb (Set_Msg_Insertion_Node): Suppress extra quotes around
5397 operators for the case where the operator is a defining operator.
5398
5399 * exp_ch3.adb: Minor reformatting (new function spec format).
5400
5401 * exp_ch4.adb: Add comment for previous change, and make minor
5402 adjustment to loop to always check for improper loop termination.
5403 Minor reformatting throughout (new function spec format).
5404
5405 * gnatbind.adb: Implement -di debug flag for gnatbind
5406
5407 * gnatlink.adb: Call Scan_ALI with Ignore_Errors set to True
5408
5409 * gnatls.adb: Call Scan_ALI with Ignore_Errors set to True
5410
5411 * lib-load.adb: Fix bad assertion.
5412 Found by testing and code reading.
5413 Minor reformatting.
5414
5415 * lib-load.ads: Minor reformatting.
5416
5417 * lib-writ.adb: There is only one R line now.
5418
5419 * lib-writ.ads: Add documentation on making downward compatible changes
5420 to ali files so old tools work with new ali files.
5421 There is only one R line now.
5422 Add documentation on format incompatibilities (with special GPS note)
5423
5424 * namet.ads, namet.adb: (Is_Operator_Name): New procedure
5425
5426 * par-load.adb: Minor reformatting
5427
5428 * sem_ch8.adb: Fix to error message from last update
5429 Minor reformatting and restructuring of code from last update
5430
5431 * par-prag.adb, snames.adb, snames.ads, snames.h,
5432 sem_prag.adb: Implement pragma Profile.
5433
5434 * stylesw.adb: Implement -gnatyN switch to turn off all style check
5435 options.
5436
5437 * usage.adb: Add line for -gnatyN switch
5438
5439 * vms_data.ads: Add entry STYLE_CHECKS=NONE for -gnatyN
5440
a41ea816
AC
54412004-02-09 Albert Lee <lee@gnat.com>
5442
5443 * errno.c: define _SGI_MP_SOURCE for task-safe errno on IRIX
5444
54452004-02-09 Ed Schonberg <schonberg@gnat.com>
5446
5447 * exp_ch3.adb (Build_Slice_Assignment): Handle properly case of null
5448 slices.
5449
5450 * exp_ch6.adb (Expand_Call): Do not inline a call when the subprogram
5451 is nested in an instance that is not frozen yet, to avoid
5452 order-of-elaboration problems in gigi.
5453
5454 * sem_attr.adb (Analyze_Attribute, case 'Access): Within an inlined
5455 body the attribute is legal.
5456
54572004-02-09 Robert Dewar <dewar@gnat.com>
5458
5459 * s-rident.ads: Minor comment correction
5460
5461 * targparm.adb: Remove dependence on uintp completely. There was
5462 always a bug in Make in that it called Targparm before initializing
5463 the Uint package. The old code appeared to get away with this, but
5464 the new code did not! This caused an assertion error in gnatmake.
5465
5466 * targparm.ads: Fix bad comment, restriction pragmas with parameters
5467 are indeed fully supported.
5468
725c60f8
AM
54692004-02-06 Alan Modra <amodra@bigpond.net.au>
5470
5471 * misc.c (default_pass_by_ref): Update INIT_CUMULATIVE_ARGS call.
5472
136e64db
KH
54732004-02-05 Kazu Hirata <kazu@cs.umass.edu>
5474
5475 * ada/utils.c (create_param_decl): Replace PROMOTE_PROTOTYPES
5476 with targetm.calls.promote_prototypes.
5477
06effe87
AC
54782004-02-04 Robert Dewar <dewar@gnat.com>
5479
5480 * 5gtasinf.adb, 5gtasinf.ads, 5gtaprop.adb, ali.adb,
5481 ali.ads, gprcmd.adb: Minor reformatting
5482
5483 * bindgen.adb: Output restrictions string for new style restrictions
5484 handling
5485
5486 * impunit.adb: Add s-rident.ads (System.Rident) and
5487 s-restri (System.Restrictions)
5488
5489 * lib-writ.adb: Fix bug in writing restrictions string (last few
5490 entries wrong)
5491
5492 * s-restri.ads, s-restri.adb: Change name Restrictions to
5493 Run_Time_Restrictions to avoid conflict with package name.
5494 Add circuit to read and acquire run time restrictions.
5495
54962004-02-04 Jose Ruiz <ruiz@act-europe.fr>
5497
5498 * restrict.ads, restrict.adb: Use the new restriction
5499 No_Task_Attributes_Package instead of the old No_Task_Attributes.
5500
5501 * sem_prag.adb: No_Task_Attributes is a synonym of
5502 No_Task_Attributes_Package.
5503
5504 * snames.ads, snames.adb: New entry for proper handling of
5505 No_Task_Attributes.
5506
5507 * s-rident.ads: Adding restriction No_Task_Attributes_Package
5508 (AI-00249) that supersedes the GNAT specific restriction
5509 No_Task_Attributes.
5510
55112004-02-04 Ed Schonberg <schonberg@gnat.com>
5512
90afe2c9 5513 * sem_prag.adb:
06effe87
AC
5514 (Analyze_Pragma, case Warnings): In an inlined body, as in an instance
5515 body, an identifier may be wrapped in an unchecked conversion.
5516
55172004-02-04 Vincent Celier <celier@gnat.com>
5518
5519 * lib-writ.ads: Comment update for the W lines
5520
5521 * bld.adb: (Expression): An empty string list is static
5522
5523 * fname-uf.adb: Minor comment update
5524
5525 * fname-uf.ads: (Get_File_Name): Document new parameter May_Fail
5526
5527 * gnatbind.adb: Initialize Cumulative_Restrictions with the
5528 restrictions on the target.
5529
2fb00d7f
KH
55302004-02-03 Kazu Hirata <kazu@cs.umass.edu>
5531
5532 * ada/trans.c (gigi): Use gen_rtx_SYMBOL_REF instead of
5533 gen_rtx.
5534
5ed23e25
AC
55352004-02-02 Arnaud Charlet <charlet@gnat.com>
5536
5537 * Makefile.in: Remove setting of THREADSLIB on mips o32, unneeded.
5538
6e937c1c
AC
55392004-02-02 Vincent Celier <celier@gnat.com>
5540
5541 * gprcmd.adb (Check_Args): If condition is false, print the invoked
5542 comment before the usage.
5543 Gprcmd: Fail when command is not recognized.
5544 (Usage): Document command "prefix"
5545
5546 * g-md5.adb (Digest): Process last block.
5547 (Update): Do not process last block. Store remaining characters and
5548 length in Context.
5549
5550 * g-md5.ads (Update): Document that several call to update are
5551 equivalent to one call with the concatenated string.
5552 (Context): Add fields to allow new Update behaviour.
5553
5554 * fname-uf.ads/adb (Get_File_Name): New Boolean parameter May_Fail,
5555 defaulted to False.
5556 When May_Fail is True and no existing file can be found, return No_File.
5557
5558 * 6vcstrea.adb: Inlined functions are now wrappers to implementation
5559 functions.
5560
5561 * lib-writ.adb (Write_With_Lines): When body file does not exist, use
5562 spec file name instead on the W line.
5563
55642004-02-02 Robert Dewar <dewar@gnat.com>
5565
5566 * ali.adb: Read and acquire info from new format restrictions lines
5567
5568 * bcheck.adb: Add circuits for checking restrictions with parameters
5569
5570 * bindgen.adb: Output dummy restrictions data
5571 To be changed later
5572
5573 * ali.ads, checks.adb, exp_aggr.adb, exp_attr.adb, exp_ch11.adb,
5574 exp_ch3.adb, exp_ch5.adb, exp_ch6.adb, exp_ch7.adb, exp_util.adb,
5575 freeze.adb, gnat1drv.adb, sem_attr.adb, sem_ch10.adb, sem_ch11.adb,
5576 sem_ch12.adb, targparm.adb, targparm.ads, tbuild.adb, sem_ch2.adb,
5577 sem_elab.adb, sem_res.adb: Minor changes for new restrictions handling.
5578
5579 * exp_ch9.adb (Build_Master_Entity): Cleanup the code (also suppresses
5580 the warning message on access to possibly uninitialized variable S)
5581 Minor changes for new restrictions handling.
5582
5583 * gnatbind.adb: Minor reformatting
5584 Minor changes for new restrictions handling
5585 Move circuit for -r processing here from bcheck (cleaner)
5586
5587 * gnatcmd.adb, gnatlink.adb: Minor reformatting
5588
5589 * lib-writ.adb: Output new format restrictions lines
5590
5591 * lib-writ.ads: Document new R format lines for new restrictions
5592 handling.
5593
5594 * s-restri.ads/adb: New files
5595
5596 * Makefile.rtl: Add entry for s-restri.ads/adb
5597
5598 * par-ch3.adb: Fix bad error messages starting with upper case letter
5599 Minor reformatting
5600
5601 * restrict.adb: Major rewrite throughout for new restrictions handling
5602 Major point is to handle restrictions with parameters
5603
5604 * restrict.ads: Major changes in interface to handle restrictions with
5605 parameters. Also generally simplifies setting of restrictions.
5606
5607 * snames.ads/adb: New entry for proper handling of No_Requeue
5608
5609 * sem_ch3.adb (Count_Tasks): New circuitry for implementing Max_Tasks
5610 restriction counting.
5611 Other minor changes for new restrictions handling
5612
5613 * sem_prag.adb: No_Requeue is a synonym for No_Requeue_Statements.
5614 Restriction_Warnings now allows full parameter notation
5615 Major rewrite of Restrictions for new restrictions handling
5616
56172004-02-02 Javier Miranda <miranda@gnat.com>
5618
5619 * par-ch3.adb (P_Identifier_Declarations): Give support to the Ada 0Y
5620 syntax rule for object renaming declarations.
5621 (P_Array_Type_Definition): Give support for the Ada 0Y syntax rule for
5622 component definitions.
5623
5624 * sem_ch3.adb (Analyze_Component_Declaration): Give support to access
5625 components.
5626 (Array_Type_Declaration): Give support to access components. In addition
5627 it was also modified to reflect the name of the object in anonymous
5628 array types. The old code did not take into account that it is possible
5629 to have an unconstrained anonymous array with an initial value.
5630 (Check_Or_Process_Discriminants): Allow access discriminant in
5631 non-limited types.
5632 (Process_Discriminants): Allow access discriminant in non-limited types
5633 Initialize the new Access_Definition field in N_Object_Renaming_Decl
5634 node. Change Ada0Y to Ada 0Y in comments
5635
5636 * sem_ch4.adb (Find_Equality_Types): Allow anonymous access types in
5637 equality operators.
5638 Change Ada0Y to Ada 0Y in comments
5639
5640 * sem_ch8.adb (Analyze_Object_Renaming): Give support to access
5641 renamings Change Ada0Y to Ada 0Y in comments
5642
5643 * sem_type.adb (Find_Unique_Type): Give support to the equality
5644 operators for universal access types
5645 Change Ada0Y to Ada 0Y in comments
5646
5647 * sinfo.adb (Access_Definition, Set_Access_Definition): New subprograms
5648
5649 * sinfo.ads (N_Component_Definition): Addition of Access_Definition
5650 field.
5651 (N_Object_Renaming_Declaration): Addition of Access_Definition field
5652 Change Ada0Y to Ada 0Y in comments
5653
5654 * sprint.adb (Sprint_Node_Actual): Give support to the new syntax for
5655 component definition and object renaming nodes
5656 Change Ada0Y to Ada 0Y in comments
5657
56582004-02-02 Jose Ruiz <ruiz@act-europe.fr>
5659
5660 * restrict.adb: Use the new restriction identifier
5661 No_Requeue_Statements instead of the old No_Requeue for defining the
5662 restricted profile.
5663
5664 * sem_ch9.adb (Analyze_Requeue): Check the new restriction
5665 No_Requeue_Statements.
5666
5667 * s-rident.ads: Adding restriction No_Requeue_Statements (AI-00249)
5668 that supersedes the GNAT specific restriction No_Requeue. The later is
5669 kept for backward compatibility.
5670
56712004-02-02 Ed Schonberg <schonberg@gnat.com>
5672
5673 * lib.ads, i-cobol.ads, * s-stoele.ads, s-thread.ads, style.ads,
5674 5staprop.adb, atree.adb, atree.ads, g-crc32.ads: Remove redundant
5675 pragma and fix incorrect ones.
5676
5677 * sem_prag.adb For pragma Inline and pragma Pure_Function, emit a
5678 warning if the pragma is redundant.
5679
56802004-02-02 Thomas Quinot <quinot@act-europe.fr>
5681
5682 * 5staprop.adb: Add missing 'constant' keywords.
5683
5684 * Makefile.in: use consistent value for SYMLIB on
5685 platforms where libaddr2line is supported.
5686
56872004-02-02 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
5688
5689 * utils.c (end_subprog_body): Do not call rest_of_compilation if just
5690 annotating types.
5691
56922004-02-02 Olivier Hainque <hainque@act-europe.fr>
5693
5694 * init.c (__gnat_install_handler): Setup an alternate stack for signal
5695 handlers in the environment thread. This allows proper propagation of
5696 an exception on stack overflows in this thread even when the builtin
5697 ABI stack-checking scheme is used without support for a stack reserve
5698 region.
5699
5700 * utils.c (create_field_decl): Augment the head comment about bitfield
5701 creation, and don't account for DECL_BIT_FIELD in DECL_NONADDRESSABLE_P
5702 here, because the former is not accurate enough at this point.
5703 Let finish_record_type decide instead.
5704 Don't make a bitfield if the field is to be addressable.
5705 Always set a size for the field if the record is packed, to ensure the
5706 checks for bitfield creation are triggered.
5707 (finish_record_type): During last pass over the fields, clear
5708 DECL_BIT_FIELD when possible in the !STRICT_ALIGNMENT case, as this is
5709 not covered by the calls to layout_decl. Adjust DECL_NONADDRESSABLE_P
5710 from DECL_BIT_FIELD.
5711
71cbe2c1
KC
57122004-01-30 Kelley Cook <kcook@gcc.gnu.org>
5713
90afe2c9 5714 * Make-lang.in (doc/gnat_ug_unx.dvi): Use $(abs_docdir).
71cbe2c1
KC
5715 (doc/gnat_ug_vms.dvi, doc/gnat_ug_unx.dvi): Likewise.
5716 (doc/gnat_ug_unx.dvi, doc/gnat-style.dvi): Likewise.
5717
7f996f90
RO
57182004-01-26 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
5719
5720 * Makefile.in (mips-sgi-irix5): Remove -lathread from THREADSLIB.
5721
5722 * 5fsystem.ads (Functions_Return_By_DSP): Set to False.
5723 (ZCX_By_Default): Likewise.
5724 (Front_End_ZCX_Support): Likewise.
5725
5726 * 5gtaprop.adb (Stack_Guard): Mark T, On unreferenced.
5727 (Initialize_Lock): Mark Level unreferenced.
5728 (Sleep): Mark Reason unreferenced.
5729 (Timed_Sleep): Likewise.
5730 (Wakeup): Likewise.
5731 (Exit_Task): Use Result.
5732 (Check_No_Locks): Mark Self_ID unreferenced.
90afe2c9 5733
7f996f90
RO
5734 * 5gtasinf.adb (New_Sproc): Make Attr constant.
5735 (Bound_Thread_Attributes): Make Sproc constant.
5736 (New_Bound_Thread_Attributes): Likewise.
5737
26fd4eae
AC
57382004-01-26 Ed Schonberg <schonberg@gnat.com>
5739
5740 * exp_ch3.adb (Build_Slice_Assignment): New TSS procedure for
5741 one-dimensional array an slice assignments, when component type is
5742 controlled.
5743
5744 * exp_ch5.adb (Expand_Assign_Array): If array is one-dimensional,
5745 component type is controlled, and control_actions are in effect, use
5746 TSS procedure rather than generating inline code.
5747
5748 * exp_tss.ads (TSS_Slice_Assign): New TSS procedure for one-dimensional
5749 arrays with controlled components.
5750
57512004-01-26 Vincent Celier <celier@gnat.com>
5752
5753 * gnatcmd.adb (GNATCmd): Add specification of argument file on the
5754 command line for the non VMS case.
5755
5756 * gnatlink.adb (Process_Binder_File): When building object file, if
5757 GNU linker is used, put all object paths between quotes, to prevent ld
5758 error when there are unusual characters (such as '!') in the paths.
5759
5760 * Makefile.generic: When there are sources in Ada and the main is in
5761 C/C++, invoke gnatmake with -B, instead of -z.
5762
5763 * vms_conv.adb (Preprocess_Command_Data): New procedure, extracted
5764 from VMS_Conversion.
5765 (Process_Argument): New procedure, extracted from VMS_Conversion. Add
5766 specification of argument file on the command line.
5767
57682004-01-26 Bernard Banner <banner@gnat.com>
5769
5770 * Makefile.in: Enable GMEM_LIB and SYMLIB for x86_64
5771
57722004-01-26 Ed Schonberg <schonberg@gnat.com>
5773
5774 * snames.adb: Update copyright notice.
5775 Add info on slice assignment for controlled arrays.
5776
b7e429ab
AC
57772004-01-23 Robert Dewar <dewar@gnat.com>
5778
5779 * exp_aggr.adb: Minor reformatting
5780
5781 * exp_ch9.adb: Minor code clean up
5782 Minor reformatting
5783 Fix bad character in comment
5784
5785 PR ada/13471
5786 * targparm.adb (Get_Target_Parameters): Give clean abort error on
5787 unexpected end of file, along with more detailed message.
5788
57892004-01-23 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
5790
5791 * exp_pakd.adb (Install_PAT): Clear Freeze_Node for PAT and Etype of
5792 PAT.
5793
5794 * decl.c (copy_alias_set): New function.
5795 (gnat_to_gnu_entity, make_aligning_type, make_packable_type): Use it.
5796
57972004-01-23 Doug Rupp <rupp@gnat.com>
5798
5799 * Makefile.in (install-gnatlib): Change occurrences of lib$$file to
5800 lib$${file} in case subsequent character is not a separator.
5801
58022004-01-23 Vincent Celier <celier@gnat.com>
5803
5804 * 5vml-tgt.adb (Build_Dynamic_Library): Invoke gcc with -shared-libgcc
5805 when the GCC version is at least 3.
5806
5807 * make.adb: (Scan_Make_Arg): Pass -B to Scan_Make_Switches
5808 Remove all "Opt.", to prepare for opt split
5809
5810 * prj-part.adb (Parse_Single_Project): New Boolean out parameter
5811 Extends_All. Set to True when the project parsed is an extending all
5812 project. Fails for importing an extending all project only when the
5813 imported project is an extending all project.
5814 (Post_Parse_Context_Clause): Set Is_Extending_All to the with clause,
5815 depending on the value of Extends_All returned.
5816
5817 * prj-proc.adb (Process): Check that no project shares its object
5818 directory with a project that extends it, directly or indirectly,
5819 including a virtual project.
5820 Check that no project extended by another project shares its object
5821 directory with another also extended project.
5822
5823 * prj-tree.adb (Is_Extending_All, Set_Is_Extending_All): Allow for
5824 Kind = N_With_Clause
5825
5826 * prj-tree.ads: Minor reformatting
5827 Indicate that Flag2 also applies to N_With_Clause (Is_Extending_All).
5828
58292004-01-23 Ed Schonberg <schonberg@gnat.com>
5830
5831 * sem_ch13.adb (Analyze_Attribute_Definition_Clause): If the attribute
5832 applies to a type with an incomplete view, use full view in Name of
5833 clause, for consistency with uses of Get_Attribute_Definition_Clause.
5834
58352004-01-23 Arnaud Charlet <charlet@act-europe.fr>
5836
5837 * 5itaprop.adb (Set_Priority): Reset the priority to 0 when using
5838 SCHED_RR, since other values are not supported by this policy.
5839 (Initialize): Move initialization of mutex attribute to package
5840 elaboration, to prevent early access to this variable.
5841
5842 * Makefile.in: Remove mention of Makefile.adalib, unused.
5843
b291953f
AC
5844 * Makefile.adalib, 1aexcept.adb, 1aexcept.ads, 1ic.ads, 1ssecsta.adb,
5845 1ssecsta.ads: Removed, unused.
b7e429ab 5846
adc04486
AC
58472004-01-21 Javier Miranda <miranda@gnat.com>
5848
5849 * exp_aggr.adb (Build_Record_Aggr_Code): Do not build the master
5850 entity if already built in the current scope.
5851
5852 * exp_ch9.adb (Build_Master_Entity): Do not set the has_master_entity
5853 reminder in internal scopes. Required for nested limited aggregates.
5854
58552004-01-21 Doug Rupp <rupp@gnat.com>
5856
5857 * Makefile.in (hyphen): New variable, default value '-'. Set to '_' on
5858 VMS. Replace all occurences of libgnat- and libgnarl- with
5859 libgnat$(hyphen) and libgnarl$(hyphen).
5860 Fixed shared library build problem on VMS.
5861
58622004-01-21 Robert Dewar <dewar@gnat.com>
5863
5864 * mlib-prj.adb: Minor reformatting
5865
58662004-01-21 Thomas Quinot <quinot@act-europe.fr>
5867
5868 * prj-tree.adb, 7staprop.adb, vms_conv.adb, xr_tabls.adb: Add missing
5869 'constant' keywords for declaration of pointers that are not modified.
5870
5871 * exp_pakd.adb: Fix English in comment.
5872
58732004-01-21 Ed Schonberg <schonberg@gnat.com>
5874
5875 PR ada/10889
5876 * sem_ch3.adb (Analyze_Subtype_Declaration): For an array subtype,
5877 copy all attributes of the parent, including the foreign language
5878 convention.
5879
58802004-01-21 Sergey Rybin <rybin@act-europe.fr>
5881
5882 PR ada/10565
5883 * sem_ch9.adb (Analyze_Delay_Alternative): Add expression type check
5884 for 'delay until' statement.
5885
a541f69d
KC
58862004-01-20 Kelley Cook <kcook@gcc.gnu.org>
5887
5888 * Make-lang.in: Replace $(docdir) with doc.
5889 (doc/gnat_ug_unx.info, doc/gnat_ug_vwx.info, doc/gnat_ug_vms.info
5890 doc/gnat_ug_wnt.info, doc/gnat_rm.info, doc/gnat-style.info): Update
5891 to use consistent MAKEINFO rule.
5892 (ada.man, ada.srcman): Dummy entry.
5893 (ADA_INFOFILES): Define.
5894 (ada.info, ada.srcinfo): New rules.
5895
c01a9391
AC
58962004-01-19 Arnaud Charlet <charlet@act-europe.fr>
5897
5898 * utils.c: Update copyright notice, missed in previous change.
5899
59002004-01-19 Vincent Celier <celier@gnat.com>
5901
5902 * mlib-prj.adb (Build_Library.Add_ALI_For): Only add the ALI to the
5903 args if Bind is True. Set First_ALI, if not already done.
5904 (Build_Library): For Stand Alone Libraries, extract from one ALI file
5905 an eventual --RTS switch, for gnatbind, and all backend switches +
5906 --RTS, for linking.
5907
59082004-01-19 Robert Dewar <dewar@gnat.com>
5909
5910 * sem_attr.adb, memtrack.adb: Minor reformatting
5911
59122004-01-19 Ed Schonberg <schonberg@gnat.com>
5913
5914 * exp_ch6.adb (Expand_Call): Remove code to fold calls to functions
5915 that rename enumeration literals. This is properly done in sem_eval.
5916
5917 * sem_eval.ads, sem_eval.adb (Eval_Call): New procedure to fold calls
5918 to functions that rename enumeration literals.
5919
5920 * sem_res.adb (Resolve_Call): Use Eval_Call to fold static calls to
5921 functions that rename enumeration literals.
5922
510d1e80
KH
59232004-01-16 Kazu Hirata <kazu@cs.umass.edu>
5924
5925 * Make-lang.in (utils.o): Depend on target.h.
5926 * utils.c: Include target.h.
5927 (process_attributes): Use targetm.have_named_sections instead
5928 of ASM_OUTPUT_SECTION_NAME.
5929
fbf3e0dd
AJ
59302004-01-16 Andreas Jaeger <aj@suse.de>
5931
5932 * Makefile.in: Add $(DESTDIR).
5933
acd47d2a
AC
59342004-01-15 Olivier Hainque <hainque@act-europe.fr>
5935
5936 * decl.c (gnat_to_gnu_entity, E_Variable): Retrieve the object size
5937 also when not defining if a Size clause applies. That information is
5938 not to be ignored.
5939
59402004-01-15 Arnaud Charlet <charlet@act-europe.fr>
5941
5942 * Makefile.in (install-gnatlib, gnatlib-shared-default): Set up
5943 symbolic links for the shared gnat run time when needed.
5944
59452004-01-15 Vasiliy Fofanov <fofanov@act-europe.fr>
5946
5947 * memtrack.adb (Gmem_Initialize): check that gmem.out could be opened
5948 for writing, and terminate with an error message if not.
5949
59502004-01-15 Ed Schonberg <schonberg@gnat.com>
5951
5952 * sem_attr.adb (Resolve_Attribute, case 'Access): Remove spurious
5953 warning on an access to subprogram in an instance, when the target
5954 type is declared in the same generic unit.
5955 (Eval_Attribute): If 'access is known to fail accessibility check,
5956 rewrite as a raise statement.
5957
59582004-01-15 GNAT Script <nobody@gnat.com>
5959
5960 * Make-lang.in: Makefile automatically updated
5961
03787dfd
KC
59622004-01-15 Kelley Cook <kcook@gcc.gnu.org>
5963
5964 * Make-lang.in (ada.srcextra): Dummy entry.
5965
73e232f0
KC
59662004-01-14 Kelley Cook <kcook@gcc.gnu.org>
5967
5968 * Make-lang.in: Only regenerate texi files if --enable-maintainer-mode.
5969
9bc43c53
AC
59702004-01-13 Ed Schonberg <schonberg@gnat.com>
5971
5972 * exp_ch3.adb (Build_Assignment): Fix bug in handling of controlled
5973 components that are initialized with aggregates.
5974
59752004-01-13 Vincent Celier <celier@gnat.com>
5976
5977 * gnatlink.adb (Process_Binder_File): To find directory of shared
5978 libgcc, if "gcc-lib" is not a subdirectory, look for the last
5979 subdirectory "lib" in the path of the shared libgnat or libgnarl.
5980
5981 * make.adb (Gnatmake): If GCC version is at least 3, link with
5982 -shared-libgcc, when there is at least one shared library project.
5983
5984 * opt.ads (GCC_Version): New integer constant.
5985
5986 * adaint.c (get_gcc_version): New function.
5987
59882004-01-13 Robert Dewar <dewar@gnat.com>
5989
5990 * sem_dist.adb, sem_res.adb, sem_util.adb,
5991 sprint.adb, 3zsocthi.adb, einfo.adb, cstand.adb,
5992 exp_ch4.adb, exp_ch9.adb, exp_dist.adb: Minor reformatting
5993
59942004-01-13 Thomas Quinot <quinot@act-europe.fr>
5995
5996 * s-interr.adb, s-stache.adb, s-taenca.adb, g-regpat.adb,
5997 g-spitbo.adb, 5itaprop.adb: Add missing 'constant' keywords in object
5998 declarations.
5999
8b52de7b
AC
60002004-01-12 Arnaud Charlet <charlet@act-europe.fr>
6001
f6ea0188
AC
6002 * misc.c: Remove trailing spaces.
6003 Update copyright notice missed in previous change.
6004
8b52de7b
AC
6005 PR ada/13572
6006 * bld.adb (Recursive_Process): Reference prefix/share/gnat instead of
6007 prefix/share/make
6008
6009 * Makefile.generic: Update copyright.
6010 Add license notice.
6011
6012 * Makefile.in (ADA_SHARE_MAKE_DIR): Set to prefix/share/gnat instead
6013 of prefix/share/make.
6014
6015 * Makefile.prolog: Update copyright.
6016 Add license notice.
6017
60182004-01-12 Laurent Pautet <pautet@act-europe.fr>
6019
6020 * 3vsocthi.adb, 3vsocthi.ads, 3wsocthi.adb,
6021 3wsocthi.ads, 3zsocthi.adb, 3zsocthi.ads, g-socthi.adb,
6022 g-socthi.ads (Socket_Error_Message): Return C.Strings.chars_ptr
6023 instead of String.
6024
6025 * g-socket.adb (Raise_Socket_Error): Use new Socket_Error_Message
6026 signature.
6027
60282004-01-12 Javier Miranda <miranda@gnat.com>
6029
6030 * cstand.adb, exp_aggr.adb, exp_ch3.adb, exp_ch9.adb, exp_dist.adb,
6031 exp_imgv.adb, exp_pakd.adb, exp_util.adb, par-ch3.adb, sem.adb,
6032 sem_ch12.adb, sem_ch3.adb, sem_dist.adb, sem_prag.adb, sem_res.adb,
6033 sem_util.adb, sinfo.adb, sinfo.ads, sprint.adb: Addition of
6034 Component_Definition node.
6035
60362004-01-12 Ed Falis <falis@gnat.com>
6037
6038 * impunit.adb: Add GNAT.Secondary_Stack_Info as user-visible unit
6039
60402004-01-12 Thomas Quinot <quinot@act-europe.fr>
6041
6042 * link.c: Change default libgnat kind to STATIC for FreeBSD.
6043
60442004-01-12 Bernard Banner <banner@gnat.com>
6045
6046 * Makefile.in: map 86numaux to a-numaux for x86_64
6047
60482004-01-12 Ed Schonberg <schonberg@gnat.com>
6049
6050 * lib-xref.adb (Get_Type_Reference): If the type is the subtype entity
6051 generated to rename a generic actual, go to the actual itself, the
6052 subtype is not a user-visible entity.
6053
6054 * sem_ch7.adb (Uninstall_Declarations): If an entity in the visible
6055 part is a private subtype, reset the visibility of its full view, if
6056 any, to be consistent.
6057
6058 PR ada/13417
6059 * sem_ch12.adb (Analyze_Formal_Package): Diagnose properly an attempt
6060 to use a generic package G as a formal package for another generic
6061 declared within G.
6062
60632004-01-12 Robert Dewar <dewar@gnat.com>
6064
6065 * trans.c (Eliminate_Error_Msg): New procedure called to generate msg
6066
6067 * usage.adb: Remove mention of obsolete -gnatwb switch
6068 Noticed during code reading
6069
60702004-01-12 Jerome Guitton <guitton@act-europe.fr>
6071
6072 * 1ssecsta.adb: Minor changes for -gnatwa warnings
6073
60742004-01-12 GNAT Script <nobody@gnat.com>
6075
6076 * Make-lang.in: Makefile automatically updated
6077
0fab64a3
MM
60782004-01-09 Mark Mitchell <mark@codesourcery.com>
6079
6080 * misc.c (gnat_expand_expr): Add alt_rtl parameter.
6081
47527624
RO
60822004-01-07 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
6083
6084 * link.c [sgi] (shared_libgnat_default): Change to STATIC.
6085
dedebde1
KC
60862004-01-05 Kelley Cook <kcook@gcc.gnu.org>
6087
fbf3e0dd 6088 * Make-lang.in: Revert stamp-xgnatug change from 2003-12-18.
dedebde1
KC
6089 Update comment and copyright date.
6090 * stamp-xgnatug: Delete.
6091
91b1417d
AC
60922004-01-05 Robert Dewar <dewar@gnat.com>
6093
6094 * 1ssecsta.ads: Default_Secondary_Stack is not a constant since it may
6095 be modified by the binder generated main program if the -D switch is
6096 used.
6097
6098 * 4onumaux.ads, 4znumaux.ads: Add Pure_Function pragmas for all
6099 imported functions (since now we expect this to be done for imported
6100 functions)
6101
6102 * 5vtaprop.adb: Add several ??? for sections requiring more comments
6103 Minor reformatting throughout
6104
6105 * 5zinit.adb: Minor reformatting
6106 Add 2004 to copyright date
6107 Minor changes to avoid -gnatwa warnings
6108 Correct some instances of using OR instead of OR ELSE (noted while
6109 doing reformatting)
6110
6111 * sprint.adb: Minor updates to avoid -gnatwa warnings
6112
fbf3e0dd 6113 * s-secsta.ads, s-secsta.adb:
91b1417d
AC
6114 (SS_Get_Max): New function to obtain high water mark for ss stack
6115 Default_Secondary_Stack is not a constant since it may be modified by
6116 the binder generated main program if the -D switch is used.
6117
6118 * switch-b.adb: New -Dnnn switch for binder
6119
fbf3e0dd 6120 * switch-c.adb:
91b1417d
AC
6121 Make -gnatg imply all warnings currently in -gnatwa
6122
6123 * vms_conv.adb: Minor reformatting
6124 Add 2004 to copyright notice
6125 Add 2004 to printed copyright notice
6126
6127 * 3vexpect.adb, 4zsytaco.adb, 3wsocthi.adb, 3zsocthi.adb,
6128 3zsocthi.adb, 56taprop.adb, 56tpopsp.adb, 5amastop.adb,
6129 5aml-tgt.adb, 5ataprop.adb, 5ataprop.adb, 5atpopsp.adb,
6130 5ftaprop.adb, 5ginterr.adb, 5gmastop.adb, 5gml-tgt.adb,
6131 5gtaprop.adb, 5hml-tgt.adb, 5hml-tgt.adb, 5hml-tgt.adb,
6132 5htaprop.adb, 5htraceb.adb, 5itaprop.adb, 5lml-tgt.adb,
6133 5sml-tgt.adb, 5staprop.adb, 5staprop.adb, 5stpopsp.adb,
6134 5vasthan.adb, 5vinmaop.adb, 5vinterr.adb, 5vtaprop.adb,
6135 5vml-tgt.adb, 5vtaprop.adb, 5wosprim.adb, 5wtaprop.adb,
6136 5zinterr.adb, 5zintman.adb, 5zml-tgt.adb, 5ztaprop.adb,
6137 6vcpp.adb, 6vcstrea.adb, 7staprop.adb, 7stpopsp.adb,
6138 vxaddr2line.adb, vxaddr2line.adb, xref_lib.adb, xr_tabls.adb,
6139 xr_tabls.ads, s-tasdeb.adb, s-tasdeb.adb, sem_res.ads,
6140 sem_util.adb, sem_util.adb, sem_util.ads, s-interr.adb,
6141 checks.adb, clean.adb, cstand.adb, einfo.ads,
6142 einfo.adb, exp_aggr.adb, exp_ch11.adb, exp_ch3.adb,
6143 exp_ch4.adb, exp_ch5.adb, exp_ch7.adb, exp_ch9.adb,
6144 prj-nmsc.adb, prj-pp.adb, prj-util.adb, sem_attr.adb,
6145 sem_ch10.adb, sem_ch12.adb, sem_ch4.adb, g-dirope.adb,
6146 g-dirope.ads, gnatlbr.adb, i-cstrea.adb, inline.adb,
6147 lib-xref.adb, sem_ch5.adb, sem_ch7.adb, sem_ch8.adb:
6148 Minor reformatting and code clean ups.
6149 Minor changes to prevent -gnatwa warnings
6150
6151 * ali.adb: Minor reformatting and cleanup of code
6152 Acquire new SS indication of secondary stack use from ali files
6153
6154 * a-numaux.ads: Add Pure_Function pragmas for all imported functions
6155 (since now we expect this to be done for imported functions)
6156
6157 * bindgen.adb: Generate call to modify default secondary stack size if
6158 -Dnnn switch given
6159
6160 * bindusg.adb: Add line for new -D switch
6161
6162 * exp_aggr.adb (Type_May_Have_Bit_Aligned_Components): More appropriate
6163 replacement name for Type_May_Have_Non_Bit_Aligned_Components!
6164 Add circuitry for both records and arrays to avoid gigi
6165 processing if the type involved has non-bit-aligned components
6166
6167 * exp_ch5.adb (Expand_Assign_Array): Avoid assumption that
6168 N_String_Literal node always references an E_String_Literal_Subtype
6169 entity. This may not be true in the future.
6170 (Possible_Bit_Aligned_Component): Move processing of
6171 Component_May_Be_Bit_Aligned from exp_ch5 to exp_util
6172
6173 * exp_ch6.adb (Expand_Thread_Body): Pick up
6174 Default_Secondary_Stack_Size as variable so that we get value modified
6175 by possible -Dnnn binder parameter.
6176
6177 * exp_util.adb (Component_May_Be_Bit_Aligned): New function.
6178 (Type_May_Have_Bit_Aligned_Components): New function.
6179
6180 * exp_util.ads (Component_May_Be_Bit_Aligned): New function.
6181 (Type_May_Have_Bit_Aligned_Components): New function.
6182
6183 * fe.h: (Set_Identifier_Casing): Fix prototype.
6184 Add declaration for Sem_Elim.Eliminate_Error_Msg.
6185 Minor reformatting.
6186
6187 * freeze.adb (Freeze_Entity): Add RM reference to error message about
6188 importing constant atomic/volatile objects.
6189 (Freeze_Subprogram): Reset Is_Pure indication for imported subprogram
6190 unless explicit Pure_Function pragma given, to avoid insidious bug of
6191 call to non-pure imported function getting eliminated.
6192
6193 * gnat1drv.adb, gnatbind.adb, gnatchop.adb, gnatfind.adb,
6194 gnatls.adb, gnatlink.adb, gnatmem.adb, gnatname.adb, gnatsym.adb,
6195 gnatxref.adb, gprcmd.adb, gprep.adb, make.adb: Minor reformatting
6196 Add 2004 to printed copyright notice
6197
6198 * lib-writ.ads, lib-writ.adb: Put new SS flag in ali file if secondary
6199 stack used.
6200
6201 * Makefile.rtl: Add entry for g-sestin.o
6202 g-sestin.ads: New file.
6203
6204 * mdll.adb: Minor changes to avoid -gnatwa warnings
6205
6206 * mlib-tgt.adb: Minor reformatting
6207
6208 * opt.ads: New parameter Default_Secondary_Stack_Size (GNATBIND)
6209 New switch Sec_Stack_Used (GNAT, GNATBIND)
6210 Make Default_Secondary_Stack_Size a variable instead of a constant,
6211 so that it can be modified by the new -Dnnn bind switch.
6212
6213 * rtsfind.adb (Load_Fail): Give full error message in configurable
6214 run-time mode if all_errors mode is set. This was not done in the case
6215 of a file not found, which was an oversight.
6216 Note if secondary stack unit is used by compiler.
6217
6218 * sem_elab.adb (Check_A_Call): Rewrite to avoid trying to put
6219 ineffective elaborate all pragmas on non-visible packages (this
6220 happened when a renamed subprogram was called). Now the elaborate all
6221 always goes on the package containing the renaming rather than the one
6222 containing the renamed subprogram.
6223
6224 * sem_elim.ads, sem_elim.adb (Eliminate_Error_Msg): New procedure
6225 (Process_Eliminate_Pragma): Add parameter to capture pragma location.
6226
6227 * sem_eval.adb (Eval_String_Literal): Do not assume that string literal
6228 has an Etype that references an E_String_Literal.
6229 (Eval_String_Literal): Avoid assumption that N_String_Literal node
6230 always references an E_String_Literal_Subtype entity. This may not
6231 be true in the future.
6232
6233 * sem_prag.adb (Process_Eliminate_Pragma): Add parameter to capture
6234 pragma location.
6235
6236 * sem_res.adb (Resolve): Specialize msg for function name used in proc
6237 call.
6238
62392004-01-05 Ed Falis <falis@gnat.com>
6240
6241 * g-debuti.adb: Replaced direct boolean operator with short-circuit
6242 form.
6243
62442004-01-05 Vincent Celier <celier@gnat.com>
6245
6246 * bld.adb: Minor comment updates
6247 (Process_Declarative_Items): Correct incorrect name (Index_Name instead
6248 of Item_Name).
6249
6250 * make.adb (Gnatmake): Special process for files to compile/check when
6251 -B is specified. Fail when there are only foreign mains in attribute
6252 Main of the project file and -B is not specified. Do not skip bind/link
6253 steps when -B is specified.
6254
6255 * makeusg.adb: Document new switch -B
6256
6257 * opt.ads (Build_Bind_And_Link_Full_Project): New Boolean flag
6258
6259 * switch-m.adb: (Scan_Make_Switches): Process -B switch
6260
6261 * vms_data.ads: Add new GNAT PRETTY qualifier
6262 /FORM_FEED_AFTER_PRAGMA_PAGE for switch -ff
6263
62642004-01-05 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
6265
6266 * trans.c (tree_transform, case N_Free_Statement): Handle thin pointer
6267 case.
6268
6269 * misc.c (gnat_printable_name): If VERBOSITY is 2, call
6270 Set_Identifier_Casing.
6271
6272 * decl.c (gnat_to_gnu_entity, E_Function): Give error if return type
6273 has size that overflows.
6274
62752004-01-05 Gary Dismukes <dismukes@gnat.com>
6276
6277 * exp_ch4.adb (Expand_Array_Comparison): Add Boolean constant to avoid
6278 -gnatwa warning on static condition.
6279
62802004-01-05 Doug Rupp <rupp@gnat.com>
6281
6282 * link.c: (shared_libgnat_default) [VMS]: Change to STATIC.
6283
62842004-01-05 Arnaud Charlet <charlet@act-europe.fr>
6285
6286 * Makefile.in: Install ali files using INSTALL_DATA_DATE to preserve
6287 all attributes, including read-only attribute.
6288
62892004-01-05 Pascal Obry <obry@gnat.com>
6290
6291 * bindgen.adb (Gen_Object_Files_Options): Generate the new shared
6292 library naming scheme.
6293
6294 * mlib-prj.adb (Build_Library): Generate different names for the static
6295 or dynamic version of the GNAT runtime. This is needed to support the
6296 new shared library naming scheme.
6297 (Process_Binder_File): Add detection of shared library in binder file
6298 based on the new naming scheme.
6299
6300 * gnatlink.adb (Process_Binder_File): Properly detect the new naming
6301 scheme for the shared runtime libraries.
6302
6303 * Makefile.in:
6304 (LIBRARY_VERSION) [VMS]: Convert all . to _ to conform to new naming
6305 scheme.
6306 (install-gnatlib): Do not create symlinks for shared libraries.
6307 (gnatlib-shared-default): Idem.
6308 (gnatlib-shared-dual-win32): New target. Not used for now as the
6309 auto-import feature does not support arrays/records.
6310 (gnatlib-shared-win32): Do not create copy for the shared libraries.
6311 (gnatlib-shared-vms): Fix shared runtime libraries names.
6312
6313 * osint.ads, osint.adb (Shared_Lib): New routine, returns the target
6314 dependent runtime shared library name.
6315
63162004-01-05 Vasiliy Fofanov <fofanov@act-europe.fr>
6317
6318 * osint.adb (Read_Library_Info): Remove bogus check if ALI is older
6319 than the object.
6320
63212004-01-05 Ed Schonberg <schonberg@gnat.com>
6322
6323 * sem_ch4.adb (Analyze_Allocator): Check restriction on dynamic
6324 protected objects when allocator has a subtype indication, not a
6325 qualified expression. Note that qualified expressions may have to be
6326 checked when limited aggregates are implemented.
6327
6328 * sem_prag.adb (Analyze_Pragma, case Import): If enclosing package is
6329 pure, emit warning.
6330 (Analyze_Pragma, case Pure_Function): If enclosing package is pure and
6331 subprogram is imported, remove warning.
6332
63332004-01-05 Geert Bosch <bosch@gnat.com>
6334
6335 * s-poosiz.adb: Update copyright notice.
6336 (Allocate): Use Task_Lock to protect against concurrent access.
6337 (Deallocate): Likewise.
6338
63392004-01-05 Joel Brobecker <brobecker@gnat.com>
6340
6341 * s-stalib.adb (Elab_Final_Code): Add missing year in date inside ???
6342 comment.
6343
2ab127f3
KC
63442003-12-23 Kelley Cook <kcook@gcc.gnu.org>
6345
6346 * gnat_ug.texi: Force a CVS commit by updating copyright.
6347 * gnat_ug_vxw.texi: Regenerate.
6348 * gnat_ug_wnt.texi: Regenerate.
6349 * gnat_ug_vms.texi: Regenerate.
6350 * gnat_ug_unx.texi: Regenerate.
6351
aed8bfdc
KH
63522003-12-20 Kazu Hirata <kazu@cs.umass.edu>
6353
6354 * trans.c: Remove uses of "register" specifier in
6355 declarations of local variables.
6356
90c2f1de
KC
63572003-12-18 Kelley Cook <kcook@gcc.gnu.org>
6358
6359 * stamp-xgnatug: New stamp file.
6360 * Make-lang.in (stamp-xgnatug): New stamp file and comment.
6361 (ada/doctools/xgnatug): Add $(build_exeext).
6362 (ada/gnat_ug_unx.texi, ada/gnat_ug_vwx.texi, ada/gnat_ug_vms.texi
6363 ada/gnat_ug_wnt.texi): Update to depend on stamp-xgnatug.
6364
891a6e79
AC
63652003-12-17 Ed Falis <falis@gnat.com>
6366
6367 * a-elchha.adb (Tailored_Exception_Information): made Info constant to
6368 eliminate warning.
6369
6370 * a-exextr.adb: Add context clause for
6371 Ada.Exceptions.Last_Chance_Handler.
6372
63732003-12-17 Sergey Rybin <rybin@act-europe.fr>
6374
6375 * cstand.adb (Create_Standard): Change the way how the declaration of
6376 the Duration type is created (making it the same way as it is for all
6377 the other standard types).
6378
63792003-12-17 Robert Dewar <dewar@gnat.com>
6380
6381 * s-crtl.ads: Fix header format
6382 Change Pure to Preelaborate
6383
63842003-12-17 Ed Schonberg <schonberg@gnat.com>
6385
6386 * checks.adb (Selected_Length_Checks): Generate an Itype reference for
6387 the expression type only if it is declared in the current unit.
6388
6389 * sem_ch3.adb (Constrain_Index): Handle properly a range whose bounds
6390 are universal and already analyzed, as can occur in constrained
6391 subcomponents that depend on discriminants, when one constraint is a
6392 subtype mark.
6393
6394 * sem_res.adb (Resolve_Type_Conversion): Any arithmetic expression of
6395 type Any_Fixed is legal as the argument of a conversion, if only one
6396 fixed-point type is in context.
6397
63982003-12-17 GNAT Script <nobody@gnat.com>
6399
6400 * Make-lang.in: Makefile automatically updated
6401
209db2bf
AC
64022003-12-15 Robert Dewar <dewar@gnat.com>
6403
6404 * exp_ch6.adb (Expand_Thread_Body): Fix error in picking up default
6405 sec stack size.
6406
64072003-12-15 Vincent Celier <celier@gnat.com>
6408
6409 * gnatchop.adb: (Error_Msg): Do not exit on error for a warning
6410 (Gnatchop): Do not set failure status when reporting the number of
6411 warnings.
6412
64132003-12-15 Doug Rupp <rupp@gnat.com>
6414
6415 * s-ctrl.ads: New file.
6416
6417 * Makefile.rtl (GNAT_RTL_NONTASKING_OBJS): Add s-crtl$(objext).
6418
6419 * Make-lang.in: (GNAT_ADA_OBJS): Add ada/s-crtl.o.
6420 (GNATBIND_OBJS): Add ada/s-crtl.o.
6421
6422 * Makefile.in [VMS]: Clean up ifeq rules.
6423
6424 * gnatlink.adb, 6vcstrea.adb, a-direio.adb, a-sequio.adb,
6425 a-ststio.adb, a-textio.adb, g-os_lib.adb, a-witeio.adb,
6426 g-os_lib.ads, i-cstrea.adb, i-cstrea.ads, s-direio.adb,
6427 s-fileio.adb, s-memcop.ads, s-memory.adb, s-stache.adb,
6428 s-tasdeb.adb: Update copyright.
6429 Import System.CRTL.
6430 Make minor modifications to use System.CRTL declared functions instead
6431 of importing locally.
6432
64332003-12-15 GNAT Script <nobody@gnat.com>
6434
6435 * Make-lang.in: Makefile automatically updated
6436
a9f4e3d2
AC
64372003-12-11 Ed Falis <falis@gnat.com>
6438
6439 * 5zinit.adb: Clean up.
6440
6441 * 5zintman.adb (Notify_Exception): replaced case statement with a call
6442 to __gnat_map_signal, imported from init.c to support
6443 signal -> exception mappings that depend on the vxWorks version.
6444
fbf3e0dd 6445 * init.c:
a9f4e3d2
AC
6446 Created and exported __gnat_map_signal to support signal -> exception
6447 mapping that is dependent on the VxWorks version.
6448 Change mapping of SIGBUS from Program_Error to Storage_Error on VxWorks
6449
64502003-12-11 Vasiliy Fofanv <fofanov@act-europe.fr>
6451
6452 * 5wosinte.ads: Link with -mthreads switch.
6453
64542003-12-11 Arnaud Charlet <charlet@act-europe.fr>
6455
6456 * init.c (__gnat_install_handler [NetBSD]): Set
6457 __gnat_handler_installed, as done on all other platforms.
6458 Remove duplicated code.
6459
64602003-12-11 Jerome Guitton <guitton@act-europe.fr>
6461
6462 * Makefile.in (rts-zfp, rts-ravenscar): Create libgnat.a.
6463
64642003-12-11 Thomas Quinot <quinot@act-europe.fr>
6465
6466 * sinfo.ads: Fix inconsistent example code in comment.
6467
64682003-12-11 Robert Dewar <dewar@gnat.com>
6469
6470 * a-tiinau.adb: Add a couple of comments
6471
6472 * sem_ch3.adb: Minor reformatting
6473
fbf3e0dd 6474 * sem_prag.adb:
a9f4e3d2
AC
6475 Fix bad prototype of Same_Base_Type in body (code reading cleanup)
6476 Minor reformatting throughout
6477
64782003-12-11 Ed Schonberg <schonberg@gnat.com>
6479
6480 * exp_ch7.adb (Establish_Transient_Scope): If the call is within the
6481 bounds of a loop, create a separate block in order to generate proper
6482 cleanup actions to prevent memory leaks.
6483
6484 * sem_res.adb (Resolve_Call): After a call to
6485 Establish_Transient_Scope, the call may be rewritten and relocated, in
6486 which case no further processing is needed.
6487
6488 * sem_util.adb: (Wrong_Type): Refine previous fix.
6489 Fixes ACATS regressions.
6490
6491 PR ada/13353
6492
6493 * sem_prag.adb (Back_End_Cannot_Inline): A renaming_as_body can always
6494 be inlined.
6495
c45b6ae0
AC
64962003-12-08 Jerome Guitton <guitton@act-europe.fr>
6497
6498 * 5ytiitho.adb, 5zthrini.adb, 5ztiitho.adb, i-vthrea.adb,
6499 i-vthrea.ads, s-tpae65.adb, s-tpae65.ads: Cleanup: Remove a bunch of
6500 obsolete files.
6501
6502 * Makefile.in: (rts-ravenscar): Generate an empty libgnat.a.
6503 (rts-zfp): Ditto.
6504
65052003-12-08 Robert Dewar <dewar@gnat.com>
6506
6507 * 7sintman.adb: Minor reformatting
6508
6509 * bindgen.adb: Configurable_Run_Time mode no longer suppresses the
6510 standard linker options to get standard libraries linked. We now plan
6511 to provide dummy versions of these libraries to match the appropriate
6512 configurable run-time (e.g. if a library is not needed at all, provide
6513 a dummy empty library).
6514
6515 * targparm.ads: Configurable_Run_Time mode no longer affects linker
6516 options (-L parameters and standard libraries). What we plan to do is
6517 to provide dummy libraries where the libraries are not required.
6518
6519 * gnatbind.adb: Minor comment improvement
6520
65212003-12-08 Javier Miranda <miranda@gnat.com>
6522
6523 * exp_aggr.adb (Build_Record_Aggr_Code): Do not remove the expanded
6524 aggregate in the parent. Otherwise constants with limited aggregates
6525 are not supported. Add new formal to pass the component type (Ctype).
6526 It is required to call the corresponding IP subprogram in case of
6527 default initialized components.
6528 (Gen_Assign): In case of default-initialized component, generate a
6529 call to the IP subprogram associated with the component.
6530 (Build_Record_Aggr_Code): Remove the aggregate from the parent in case
6531 of aggregate with default initialized components.
6532 (Has_Default_Init_Comps): Improve implementation to recursively check
6533 all the present expressions.
6534
6535 * exp_ch3.ads, exp_ch3.adb (Build_Initialization_Call): Add new formal
6536 to indicate that the initialization call corresponds to a
6537 default-initialized component of an aggregate.
6538 In case of default initialized aggregate with tasks this parameter is
6539 used to generate a null string (this is just a workaround that must be
6540 improved later). In case of discriminants, this parameter is used to
6541 generate a selected component node that gives access to the discriminant
6542 value.
6543
6544 * exp_ch9.ads, exp_ch9.adb (Build_Task_Allocate_Block_With_Stmts): New
6545 subprogram, based on Build_Task_Allocate_Block, but adapted to expand
6546 allocated aggregates with default-initialized components.
6547
6548 * par-ch4.adb (P_Aggregate_Or_Paren_Expr): Improve error message if
6549 the box notation is used in positional aggregates.
6550
65512003-12-08 Samuel Tardieu <tardieu@act-europe.fr>
6552
6553 * lib.ads: Fix typo in comment
6554
65552003-12-08 Vincent Celier <celier@gnat.com>
6556
6557 * prj.adb (Project_Empty): New component Unkept_Comments
6558 (Scan): Remove procedure; moved to Prj.Err.
6559
6560 * prj.ads (Project_Data): New Boolean component Unkept_Comments
6561 (Scan): Remove procedure; moved to Prj.Err.
6562
6563 * prj-dect.adb: Manage comments for the different declarations.
6564
6565 * prj-part.adb (With_Record): New component Node
6566 (Parse): New Boolean parameter Store_Comments, defaulted to False.
6567 Set the scanner to return ends of line and comments as tokens, if
6568 Store_Comments is True.
6569 (Pre_Parse_Context_Clause): Create the N_With_Clause nodes so that
6570 comments are associated with these nodes. Store the node IDs in the
6571 With_Records.
6572 (Post_Parse_Context_Clause): Use the N_With_Clause nodes stored in the
6573 With_Records.
6574 (Parse_Single_Project): Call Pre_Parse_Context_Clause before creating
6575 the N_Project node. Call Tree.Save and Tree.Reset before scanning the
6576 current project. Call Tree.Restore afterwards. Set the various nodes
6577 for comment storage (Next_End, End_Of_Line, Previous_Line,
6578 Previous_End).
6579
6580 * prj-part.ads (Parse): New Boolean parameter Store_Comments,
6581 defaulted to False.
6582
6583 * prj-pp.adb (Write_String): New Boolean parameter Truncated, defaulted
6584 to False. When Truncated is True, truncate the string, never go to the
6585 next line.
6586 (Write_End_Of_Line_Comment): New procedure
6587 (Print): Process comments for nodes N_With_Clause,
6588 N_Package_Declaration, N_String_Type_Declaration,
6589 N_Attribute_Declaration, N_Typed_Variable_Declaration,
6590 N_Variable_Declaration, N_Case_Construction, N_Case_Item.
6591 Process nodes N_Comment.
6592
6593 * prj-tree.ads, prj-tree.adb (Default_Project_Node): If it is a node
6594 without comments and there are some comments, set the flag
6595 Unkept_Comments to True.
6596 (Scan): If there are comments, set the flag Unkept_Comments to True and
6597 clear the comments.
6598 (Project_Node_Kind): Add enum values N_Comment_Zones, N_Comment
6599 (Next_End_Nodes: New table
6600 (Comment_Zones_Of): New function
6601 (Scan): New procedure; moved from Prj. Accumulate comments in the
6602 Comments table and set end of line comments, comments after, after end
6603 and before end.
6604 (Add_Comments): New procedure
6605 (Save, Restore, Seset_State): New procedures
6606 (There_Are_Unkept_Comments): New function
6607 (Set_Previous_Line_Node, Set_Previous_End_Node): New procedures
6608 (Set_End_Of_Line, Set_Next_End_Node, Remove_Next_End_Node): New
6609 procedures.
6610 (First_Comment_After, First_Comment_After_End): New functions
6611 (First_Comment_Before, First_Comment_Before_End): New functions
6612 (Next_Comment): New function
6613 (End_Of_Line_Comment, Follows_Empty_Line,
6614 Is_Followed_By_Empty_Line): New functions
6615 (Set_First_Comment_After, Set_First_Comment_After_End): New procedures
6616 (Set_First_Comment_Before, Set_First_Comment_Before_End): New procedures
6617 (Set_Next_Comment): New procedure
6618 (Default_Project_Node): Associate comment before if the node can store
6619 comments.
6620
6621 * scans.ads (Token_Type): New enumeration value Tok_Comment
6622 (Comment_Id): New global variable
6623
6624 * scng.ads, scng.adb (Comment_Is_Token): New Boolean global variable,
6625 defaulted to False.
6626 (Scan): Store position of start of comment. If comments are tokens, set
6627 Comment_Id and set Token to Tok_Comment when scanning a comment.
6628 (Set_Comment_As_Token): New procedure
6629
6630 * sinput-p.adb: Update Copyright notice
6631 (Source_File_Is_Subunit): Call Prj.Err.Scanner.Scan instead of Prj.Scan
6632 that no longer exists.
6633
66342003-12-08 Javier Miranda <miranda@gnat.com>
6635
6636 * sem_aggr.adb: Add dependence on Exp_Tss package
6637 Correct typo in comment
6638 (Resolve_Aggregate): In case of array aggregates set the estimated
6639 type of the aggregate before calling resolve. This is needed to know
6640 the name of the corresponding IP in case of limited array aggregates.
6641 (Resolve_Array_Aggregate): Delay the resolution to the expansion phase
6642 in case of default initialized array components.
6643
6644 * sem_ch12.adb (Analyze_Formal_Object_Declaration): Allow limited
6645 types. Required to give support to limited aggregates in generic
6646 formals.
6647
66482003-12-08 Ed Schonberg <schonberg@gnat.com>
6649
6650 * sem_ch3.adb (Check_Initialization): For legality purposes, an
6651 inlined body functions like an instantiation.
6652 (Decimal_Fixed_Point_Declaration): Do not set kind of first subtype
6653 until bounds are analyzed, to diagnose premature use of type.
6654
6655 * sem_util.adb (Wrong_Type): Improve error message when the type of
6656 the expression is used prematurely.
6657
66582003-12-08 GNAT Script <nobody@gnat.com>
6659
6660 * Make-lang.in: Makefile automatically updated
6661
0875a894
AC
66622003-12-08 Arnaud Charlet <charlet@act-europe.fr>
6663
7618d510
AC
6664 * sinfo.h, einfo.h, nmake.ads, nmake.adb, treeprs.ads: Removed, since
6665 they are automatically generated by Make-lang.in and cause nothing but
0875a894
AC
6666 maintenance troubles.
6667
5b4994bc
AC
66682003-12-05 Thomas Quinot <quinot@act-europe.fr>
6669
6670 * 3ssoliop.ads: Fix comment (this is the Solaris, not the UnixWare,
6671 version of this unit).
6672
66732003-12-05 Olivier Hainque <hainque@act-europe.fr>
6674
6675 * 53osinte.ads, 54osinte.ads, 55osinte.ads, 56osinte.ads, 5bosinte.ads,
6676 5cosinte.ads, 5hosinte.ads, 5iosinte.ads, 5losinte.ads,
6677 5tosinte.ads: Define the SA_SIGINFO constant, to allow references from
6678 the body of System.Interrupt_Management common to several targets.
6679 Update copyright notice when appropriate.
6680
6681 * 52osinte.ads, 5posinte.ads: Define a dummy value for the SA_SIGINFO
6682 constant.
6683
6684 * 7sintman.adb (elaboration): Set SA_SIGINFO in the sigaction flags,
6685 to ensure that the kernel fills in the interrupted context structure
6686 before calling a signal handler, which is necessary to be able to
6687 unwind past it. Update the copyright notice.
6688
66892003-12-05 Jerome Guitton <guitton@act-europe.fr>
6690
6691 * a-elchha.ads: New file.
6692
6693 * a-elchha.adb: New default last chance handler. Contents taken from
6694 Ada.Exceptions.Exception_Traces.Unhandled_Exception_Terminate.
6695
6696 * a-exextr.adb (Unhandled_Exception_Terminate): Most of this routine
6697 is moved to a-elchha.adb to provide a target-independent default last
6698 chance handler.
6699
6700 * Makefile.rtl: Add a-elchha.o
6701
6702 * Make-lang.in (GNAT_ADA_OBJS, GNATBIND_OBJS): Add a-elchha.o.
6703
67042003-12-05 Ed Schonberg <schonberg@gnat.com>
6705
6706 * exp_ch6.adb (Expand_Call): If the subprogram is inlined and is
6707 declared in an instance, do not inline the call if the instance is not
6708 frozen yet, to prevent order of elaboration problems.
6709
6710 * sem_prag.adb: Add comments for previous fix.
6711
67122003-12-05 Samuel Tardieu <tardieu@act-europe.fr>
6713
6714 * g-table.adb: Use the right variable in Set_Item.
6715 Update copyright notice.
6716
67172003-12-05 Arnaud Charlet <charlet@act-europe.fr>
6718
6719 * Makefile.in: Remove unused rules.
6720
67212003-12-05 Vincent Celier <celier@gnat.com>
6722
6723 * switch-c.adb (Scan_Front_End_Switches): Remove processing of
6724 -nostdlib. Not needed here after all.
6725
efdfd311
AC
67262003-12-03 Thomas Quinot <quinot@act-europe.fr>
6727
6728 PR ada/11724
6729
fbf3e0dd 6730 * adaint.h, adaint.c, g-os_lib.ads:
efdfd311
AC
6731 Do not assume that the offset argument to lseek(2) is a 32 bit integer,
6732 on some platforms (including FreeBSD), it is a 64 bit value.
6733 Introduce a __gnat_lseek wrapper in adaint.c to allow for portability.
6734
67352003-12-03 Arnaud Charlet <charlet@act-europe.fr>
6736
6737 * gnatvsn.ads (Library_Version): Now contain only the relevant
6738 version info.
6739 (Verbose_Library_Version): New constant.
6740
6741 * g-spipat.adb, g-awk.adb, g-debpoo.adb,
6742 g-memdum.adb, g-thread.adb, s-geveop.adb, s-interr.adb,
6743 s-taskin.adb, s-tassta.adb: Make code compile with -gnatwa.
6744
6745 * gnatlbr.adb: Clean up: replace Library_Version by
6746 Verbose_Library_Version.
6747
fbf3e0dd 6748 * make.adb, lib-writ.adb, exp_attr.adb:
efdfd311
AC
6749 Clean up: replace Library_Version by Verbose_Library_Version.
6750
6751 * 5lintman.adb: Removed.
6752
fbf3e0dd 6753 * Makefile.in:
efdfd311
AC
6754 Update and simplify computation of LIBRARY_VERSION.
6755 Fix computation of GSMATCH_VERSION.
6756 5lintman.adb is no longer used: replaced by 7sintman.adb.
6757
67582003-12-03 Robert Dewar <dewar@gnat.com>
6759
fbf3e0dd 6760 * exp_ch5.adb:
efdfd311
AC
6761 (Possible_Bit_Aligned_Component): Maybe_Bit_Aligned_Large_Component new
6762 name. Modified to consider small non-bit-packed arrays as troublesome
6763 and in need of component-by-component assigment expansion.
6764
67652003-12-03 Vincent Celier <celier@gnat.com>
6766
6767 * lang-specs.h: Process nostdlib as nostdinc
6768
6769 * back_end.adb: Update Copyright notice
6770 (Scan_Compiler_Arguments): Process -nostdlib directly.
6771
67722003-12-03 Jose Ruiz <ruiz@act-europe.fr>
6773
fbf3e0dd 6774 * Makefile.in:
efdfd311
AC
6775 When defining LIBGNAT_TARGET_PAIRS for bare board targets, remove the
6776 redundant inclusion of EXTRA_HIE_NONE_TARGET_PAIRS, which is always
6777 included in HIE_NONE_TARGET_PAIRS.
6778
67792003-12-03 Ed Schonberg <schonberg@gnat.com>
6780
fbf3e0dd 6781 * sem_attr.adb:
efdfd311
AC
6782 (Legal_Formal_Attribute): Attribute is legal in an inlined body, as it
6783 is legal in an instance, because legality is cheched in the template.
6784
fbf3e0dd 6785 * sem_prag.adb:
efdfd311
AC
6786 (Analyze_Pragma, case Warnings): In an inlined body, the pragma may be
6787 appplied to an unchecked conversion of a formal parameter.
6788
fbf3e0dd 6789 * sem_warn.adb:
efdfd311
AC
6790 (Output_Unreferenced_Messages): Suppress "not read" warnings on imported
6791 variables.
6792
67932003-12-03 Olivier Hainque <hainque@act-europe.fr>
6794
6795 * tb-alvms.c (unwind_regular_code, unwind_kernel_handler): New
6796 routines. The second one is new functionality to deal with backtracing
6797 through signal handlers.
6798 (unwind): Split into the two separate subroutines above.
6799 Update the documentation, and deal properly with sizeof (REG) different
6800 from sizeof (void*).
6801
08aa9a4a
AC
68022003-12-01 Nicolas Setton <setton@act-europe.fr>
6803
6804 * a-except.adb (Raise_Current_Excep): Add a pragma Inspection_Point,
6805 so that the debugger can reliably access the value of the parameter,
6806 and therefore is able to display the exception name when an exception
6807 breakpoint is reached.
6808
68092003-12-01 Thomas Quinot <quinot@act-europe.fr>
6810
6811 * fmap.adb: Fix typo in warning message.
6812
6813 * g-socket.ads, g-socket.adb: Make Free a visible instance of
6814 Ada.Unchecked_Deallocation (no need to wrap it in a subprogram).
6815
68162003-12-01 Vincent Celier <celier@gnat.com>
6817
6818 * mlib-prj.adb (Build_Library.Process): Do not check a withed unit if
6819 ther is no Afile.
6820 (Build_Library): Get the switches only if Default_Switches is declared
6821 in package Binder.
6822
68232003-12-01 Ed Schonberg <schonberg@gnat.com>
6824
6825 * exp_ch6.adb (Expand_Actuals): When applying validity checks to
6826 actuals that are indexed components, reanalyze actual to ensure that
6827 packed array references are properly expanded.
6828
6829 * sem_ch5.adb (Diagnose_Non_Variable_Lhs): Add special case for
6830 attempted assignment to a discriminant.
6831
68322003-12-01 Robert Dewar <dewar@gnat.com>
6833
6834 * rtsfind.adb, exp_ch4.adb, s-exnint.ads, s-exnint.adb: Minor
6835 reformatting.
6836
6837 * switch-c.adb: Minor reformatting of comments
6838
68392003-12-01 Arnaud Charlet <charlet@act-europe.fr>
6840
6841 * Makefile.in: Clean ups.
6842
68432003-12-01 GNAT Script <nobody@gnat.com>
6844
6845 * Make-lang.in: Makefile automatically updated
6846
c6135994
AC
68472003-12-01 Arnaud Charlet <charlet@act-europe.fr>
6848
6849 * 5wsystem.ads: Disable zero cost exception, not ready yet.
6850
51a30506
UW
68512003-11-29 Ulrich Weigand <uweigand@de.ibm.com>
6852
6853 * Make-lang.in (nmake.ads): Add dependency on ada/nmake.adb
6854 to force serialization.
6855
81a5b587
AC
68562003-11-26 Thomas Quinot <quinot@act-europe.fr>
6857
fbf3e0dd 6858 * g-socket.ads, g-socket.adb:
81a5b587
AC
6859 Clarify documentation of function Stream. Introduce a Free procedure
6860 to release the returned Stream once it becomes unused.
6861
6862 * 5asystem.ads: For Alpha Tru64, enable ZCX by default.
6863
68642003-11-26 Arnaud Charlet <charlet@act-europe.fr>
6865
6866 (Cond_Timed_Wait): Introduce new constant Time_Out_Max,
6867 since NT 4 cannot handle timeout values that are too large,
6868 e.g. DWORD'Last - 1.
6869
68702003-11-26 Ed Schonberg <schonberg@gnat.com>
6871
fbf3e0dd 6872 * exp_ch4.adb:
81a5b587
AC
6873 (Expand_N_Slice): Recognize all cases of slices that appear as actuals
6874 in procedure calls and whose expansion must be deferred.
6875
6876 * exp_ch6.adb (Add_Call_By_Copy_Node): Remove previous fix. Proper fix
6877 is in exp_ch4.
6878
fbf3e0dd 6879 * sem_ch3.adb:
81a5b587
AC
6880 (Build_Derived_Array_Type): Create operator for unconstrained type
6881 if ancestor is unconstrained.
6882
68832003-11-26 Vincent Celier <celier@gnat.com>
6884
6885 * make.adb (Project_Object_Directory): New global variable
6886 (Change_To_Object_Directory): New procedure
6887 (Collect_Arguments_And_Compile): Call Change_To_Object_Directory instead
6888 of Change_Dir directly. Do not change working directory to object
6889 directory of main project after each compilation.
6890 (Gnatmake): Use Change_To_Object_Directory instead of Change_Dir
6891 directly.
6892 Change to object directory of main project before binding step.
6893 (Initialize): Initialize Project_Object_Directory to No_Project
6894
fbf3e0dd 6895 * mlib-prj.adb:
81a5b587
AC
6896 (Build_Library): Take into account Builder'Default_Switches ("Ada") when
6897 binding a Stand-Alone Library.
6898
6899 * output.adb: Update Copyright notice
6900 (Write_Char): Output buffer when full
6901
69022003-11-26 Robert Dewar <dewar@gnat.com>
6903
6904 * sem_ch13.adb: (Check_Size): Reset size if size is too small
6905
fbf3e0dd 6906 * sem_ch13.ads:
81a5b587
AC
6907 (Check_Size): Fix documentation to include bit-packed array case
6908
6909 * sem_res.adb: Implement restriction No_Direct_Boolean_Operators
6910
6911 * s-rident.ads: Put No_Direct_Boolean_Operators in proper order
6912
6913 * s-rident.ads: Add new restriction No_Direct_Boolean_Operators
6914
d4c47b51
AC
69152003-11-24 Arnaud Charlet <charlet@act-europe.fr>
6916
6917 PR ada/13142
6918 * utils.c (init_gigi_decls): Change name of built-in setjmp to
6919 __builtin_setjmp, since this is apparently needed by recent
6920 non Ada changes.
6921
7677e9e0
RO
69222003-11-24 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
6923
d4c47b51 6924 * adadecode.c: Only include ctype.h if not IN_GCC.
7677e9e0
RO
6925 (__gnat_decode): Use ISDIGIT from safe-ctype.h.
6926
6c1e24d3
AC
69272003-11-24 Jose Ruiz <ruiz@act-europe.fr>
6928
fbf3e0dd 6929 * Makefile.in:
6c1e24d3
AC
6930 Use 5zintman.ads for VxWorks targets. This file avoid confusion between
6931 signals and interrupts.
6932
6933 * 5zintman.ads: New File.
6934
6935 * 5zintman.adb: Replace Exception_Interrupts by Exception_Signals, and
6936 add exception signals to the set of unmasked signals.
6937
fbf3e0dd 6938 * 5ztaprop.adb:
6c1e24d3
AC
6939 Use Abort_Task_Signal instead of Abort_Task_Interrupt to avoid confusion
6940 between signals and interrupts.
6941 Add to Unblocked_Signal_Mask the set of signals that are in
6942 Keep_Unmasked.
6943
fbf3e0dd 6944 * 7sinmaop.adb:
6c1e24d3
AC
6945 Adding a check to see whether the Interrupt_ID we want to unmask is in
6946 the range of Keep_Unmasked (in procedure Interrupt_Self_Process). The
6947 reason is that the index type of the Keep_Unmasked array is not always
6948 Interrupt_ID; it may be a subtype of Interrupt_ID.
6949
69502003-11-24 Gary Dismukes <dismukes@gnat.com>
6951
fbf3e0dd 6952 * exp_util.adb:
6c1e24d3
AC
6953 (Remove_Side_Effects): Condition constantness of object created for a
6954 an unchecked type conversion on the constantness of the expression
6955 to ensure the correct value for 'Constrained when passing components
6956 of view-converted class-wide objects.
6957
69582003-11-24 Robert Dewar <dewar@gnat.com>
6959
6960 * par-load.adb (Load): Improve handling of misspelled and missing units
6961 Removes several cases of compilation abandoned messages
6962
6963 * lib.adb: (Remove_Unit): New procedure
6964
6965 * lib.ads: (Remove_Unit): New procedure
6966
6967 * lib-load.adb: Minor reformatting
6968
69692003-11-24 Vincent Celier <celier@gnat.com>
6970
fbf3e0dd 6971 * make.adb:
6c1e24d3
AC
6972 (Gnatmake, Initialize): Call Usage instead of Makeusg directly
6973 (Marking_Label): Label to mark processed source files. Incremented for
6974 each executable.
6975 (Gnatmake): Increase Marking_Labet for each executable
6976 (Is_Marked): Compare against marking label
6977 (Mark): Mark with marking label
6978
69792003-11-24 Jerome Guitton <guitton@act-europe.fr>
6980
fbf3e0dd 6981 * s-thread.ads:
6c1e24d3
AC
6982 Move the declaration of the TSD for System.Threads to System.Soft_Links.
6983 Add some comments.
6984
6985 * Makefile.in: Added target pair for s-thread.adb for cert runtime.
6986 (rts-cert): build a single relocatable object for the run-time lib.
6987 Fix perms.
6988
69892003-11-24 Vasiliy Fofanov <fofanov@act-europe.fr>
6990
fbf3e0dd 6991 * Make-lang.in:
6c1e24d3
AC
6992 Use gnatls rather than gcc to obtain the location of GNAT RTL for
6993 crosstools build.
6994
69952003-11-24 Sergey Rybin <rybin@act-europe.fr>
6996
6997 * opt.adb (Tree_Write): Gnat_Version_String is now a function, so we
6998 can not use it as before (that is, as a variable) when dumping it into
6999 the tree file. Add a local variable to store the result of this
7000 function and to be used as the string to be written into the tree.
7001
7002 * scn.adb (Initialize_Scanner): Add comments explaining the recent
7003 changes.
7004
7005 * sinput.adb (Source_First, Source_Last): In case of
7006 Internal_Source_File, replace returning attributes of
7007 Internal_Source_Ptr (which is wrong) with returning attributes of
7008 Internal_Source.
7009
70102003-11-24 Ed Schonberg <schonberg@gnat.com>
7011
fbf3e0dd 7012 * sem_ch3.adb:
6c1e24d3
AC
7013 (New_Concatenation_Op): Proper name for New_Binary_Operator, only
7014 used for implicit concatenation operators.
7015 Code cleanup.
7016
fbf3e0dd 7017 * sem_elab.adb:
6c1e24d3
AC
7018 (Check_Elab_Call): Set No_Elaboration_Check appropriately on calls in
7019 task bodies that are in the scope of a Suppress pragma.
7020 (Check_A Call): Use the flag to prevent spurious elaboration checks.
7021
fbf3e0dd 7022 * sinfo.ads, sinfo.adb:
6c1e24d3
AC
7023 New flag No_Elaboration_Check on function/procedure calls, to properly
7024 suppress checks on calls in task bodies that are within a local suppress
7025 pragma.
7026
fbf3e0dd 7027 * exp_ch4.adb:
6c1e24d3
AC
7028 (Expand_Concatenate_Other): Use the proper integer type for the
7029 expression for the upper bound, to avoid universal_integer computations
7030 when possible.
7031
6f2aeb72
KC
70322003-11-21 Kelley Cook <kcook@gcc.gnu.org>
7033
7034 * .cvsignore: Delete.
7035
e9f85cd6
AS
70362003-11-21 Andreas Schwab <schwab@suse.de>
7037
7038 * 55system.ads: Set ZCX_By_Default and GCC_ZCX_Support to True.
7039
4e074baf
VF
70402003-11-21 Vasiliy Fofanov <fofanov@act-europe.fr>
7041
7042 * 5wsystem.ads: Enable zero cost exception.
7043
f1f9fe30
AC
70442003-11-21 Jerome Guitton <guitton@act-europe.fr>
7045
7046 * 5ztiitho.adb: Remove an unreferenced variable.
7047
70482003-11-21 Thomas Quinot <quinot@act-europe.fr>
7049
7050 * adaint.c: For FreeBSD, use mkstemp.
7051
70522003-11-21 Arnaud Charlet <charlet@act-europe.fr>
7053
7054 * gnatlbr.adb: Now reference Gnat_Static_Version_String.
7055
70562003-11-21 Robert Dewar <dewar@gnat.com>
7057
7058 * bld.adb: Remove useless USE of gnatvsn
7059
7060 * gnatchop.adb: Minor reformatting
7061 Clean up version handling to be more consistent
7062
7063 * gnatxref.adb: Minor reformatting
7064
7065 * gprcmd.adb: Minor reformatting
7066 Fix output of copyright to be more consistent with other tools
7067
70682003-11-21 Vincent Celier <celier@gnat.com>
7069
7070 * make.adb (Scan_Make_Args): Do not transmit --RTS= to gnatlink
7071
70722003-11-21 Sergey Rybin <rybin@act-europe.fr>
7073
7074 * atree.adb (Initialize): Add initializations for global variables
7075 used in New_Copy_Tree.
7076
7077 * cstand.adb (Create_Standard): Add call to Initialize_Scanner (with
7078 Internal_Source_File as the actual).
7079 Put the set of statements creating Any_Character before the set of
7080 statements creating Any_Array to have Any_Character fully initialized
7081 when it is used in creating Any_Array.
7082
7083 * scn.adb (Initialize_Scanner): Do not set Comes_From_Source ON and do
7084 not call Scan in case if the actual is Internal_Source_File
7085 Add 2003 to copyright note.
7086
7087 * sinput.adb (Source_First, Source_Last, Source_Text): Add code for
7088 processing Internal_Source_File.
7089
7090 * types.ads: Add the constant Internal_Source_File representing the
7091 source buffer for artificial source-code-like strings created within
7092 the compiler (the definition of Source_File_Index is changed).
7093
c5b2a8ae
AC
70942003-11-20 Arnaud Charlet <charlet@act-europe.fr>
7095
7096 * 35soccon.ads, 45intnam.ads, 55osinte.adb, 55osinte.ads,
7097 56system.ads: New file, FreeBSD version.
7098
a03ad584
JM
70992003-11-20 Joseph S. Myers <jsm@polyomino.org.uk>
7100
7101 * Make-lang.in (ada.extraclean): Delete.
7102
19f0526a
AC
71032003-11-19 Arnaud Charlet <charlet@act-europe.fr>
7104
7105 * gnatmem.adb: Clean up verbose output.
7106
7107 * gprcmd.adb: Change copyright to FSF.
7108
71092003-11-19 Vincent Celier <celier@gnat.com>
7110
7111 * symbols.adb: (Initialize): New parameters Reference, Symbol_Policy
7112 and Version (ignored).
7113
7114 * symbols.ads: (Policy): New type
7115 (Initialize): New parameter Reference, Symbol_Policy and
7116 Library_Version.
7117 Remove parameter Force.
7118 Minor reformatting.
7119
7120 * snames.ads, snames.adbadb: New standard names
7121 Library_Reference_Symbol_File and Library_Symbol_Policy
7122
fbf3e0dd 7123 * mlib-prj.adb:
19f0526a
AC
7124 (Build_Library): Call Build_Dinamic_Library with the Symbol_Data of the
7125 project.
7126
fbf3e0dd 7127 * mlib-tgt.adb:
19f0526a
AC
7128 (Build_Dynamic_Library): New parameter Symbol_Data (ignored)
7129
7130 * mlib-tgt.ads: (Build_Dynamic_Library): New parameter Symbol_Data
7131
7132 * prj.adb: (Project_Empty): New component Symbol_Data
7133
7134 * prj.ads: (Policy, Symbol_Record): New types
7135 (Project_Data): New component Symbol_Data
7136
fbf3e0dd 7137 * prj-attr.adb:
19f0526a
AC
7138 New attributes Library_Symbol_File, Library_Symbol_Policy and
7139 Library_Reference_Symbol_File.
7140
fbf3e0dd 7141 * prj-nmsc.adb:
19f0526a
AC
7142 (Ada_Check): When project is a Stand-Alone library project, process
7143 attribute Library_Symbol_File, Library_Symbol_Policy and
7144 Library_Reference_Symbol_File.
7145
7146 * 5aml-tgt.adb, 5bml-tgt.adb, 5gml-tgt.adb, 5hml-tgt.adb,
7147 5wml-tgt.adb, 5zml-tgt.adb, 5lml-tgt.adb,
7148 5sml-tgt.adb (Build_Dynamic_Library): New parameter
7149 Symbol_Data (ignored).
7150
7151 * 5vml-tgt.adb (VMS_Options): Remove --for-linker=gsmatch=equal,1,0
7152 (Build_Dynamic_Library): New parameter Symbol_Data. New internal
7153 functions Option_File_Name and Version_String. Set new options of
7154 gnatsym related to symbol file, symbol policy and reference symbol
7155 file.
7156
fbf3e0dd 7157 * 5vsymbol.adb:
19f0526a
AC
7158 Extensive modifications to take into account the reference symbol file,
7159 the symbol policy, the library version and to put in the symbol file the
7160 minor and major IDs.
7161
7162 * bld.adb (Process_Declarative_Items): Put second argument of
7163 gprcmd to_absolute between single quotes, to avoid problems with
7164 Windows.
7165
7166 * bld-io.adb: Update Copyright notice.
7167 (Flush): Remove last character of a line, if it is a back slash, to
7168 avoid make problems.
7169
fbf3e0dd 7170 * gnatsym.adb:
19f0526a
AC
7171 Implement new scheme with reference symbol file and symbol policy.
7172
7173 * g-os_lib.ads: (Is_Directory): Clarify comment
7174
71752003-11-19 Robert Dewar <dewar@gnat.com>
7176
7177 * atree.adb: Move New_Copy_Tree global variables to head of package
7178
7179 * errout.adb: Minor reformatting
7180
71812003-11-19 Javier Miranda <miranda@gnat.com>
7182
7183 * sem_ch4.adb: (Diagnose_Call): Improve error message.
7184 Add reference to Ada0Y (AI-50217)
7185
7186 * sem_ch6.adb, sem_ch8.adb, sem_type.adb,
7187 sem_util.adb: Add reference to AI-50217
7188
7189 * sinfo.ads: (N_With_Clause): Document fields referred to AI-50217
7190
7191 * sprint.adb: Add reference to Ada0Y (AI-50217, AI-287)
7192
7193 * sem_aggr.adb: Complete documentation of AI-287 changes
7194
7195 * par-ch4.adb: Document previous changes.
7196
7197 * lib-load.adb, lib-writ.adb, einfo.ads, par-ch10.adb,
7198 sem_cat.adb, sem_ch3.adb, sem_ch10.adb, sem_ch12.adb: Add references to
7199 Ada0Y (AI-50217)
7200
7201 * exp_aggr.adb: Add references to AI-287 in previous changes
7202
72032003-11-19 Ed Schonberg <schonberg@gnat.com>
7204
fbf3e0dd 7205 * exp_ch6.adb:
19f0526a
AC
7206 (Add_Call_By_Copy_Node): Do not original node of rewritten expression
7207 in the rewriting is the result of an inlined call.
7208
7209 * exp_ch6.adb (Add_Call_By_Copy_Node): If actual for (in-)out
7210 parameter is a type conversion, use original node to construct the
7211 post-call assignment, because expression may have been rewritten, e.g.
7212 if it is a packed array.
7213
fbf3e0dd 7214 * sem_attr.adb:
19f0526a
AC
7215 (Resolve_Attribute, case 'Constrained): Attribute is legal in an inlined
7216 body, just as it is in an instance.
7217 Categorization routines
7218
7219 * sem_ch12.adb (Analyze_Association, Instantiate_Formal_Subprogram,
7220 Instantiate_Object): Set proper sloc reference for message on missing
7221 actual.
7222
72232003-11-19 Thomas Quinot <quinot@act-europe.fr>
7224
7225 * Makefile.in: Add FreeBSD libgnat pairs.
7226
7227 * usage.adb: Fix typo in usage message.
7228
72292003-11-19 Jerome Guitton <guitton@act-europe.fr>
7230
7231 * Makefile.in: On powerpc-wrs-vxworksae: Add s-thread.ad?,
7232 s-thrini.ad? and s-tiitho.adb to the full runtime, to support the
7233 pragma Thread_Body.
7234 Remove i-vthrea.ad? and s-tpae65.ad?, not needed anymore.
7235
7236 * s-thread.adb: This file is now a dummy implementation of
7237 System.Thread.
7238
72392003-11-19 Sergey Rybin <rybin@act-europe.fr>
7240
7241 * rtsfind.adb (Initialize): Add initialization for RTE_Is_Available
7242
72432003-11-19 Emmanuel Briot <briot@act-europe.fr>
7244
7245 * xref_lib.adb (Parse_Identifier_Info): Add handling of generic
7246 instanciation references in the parent type description.
7247
0d77ab84
AC
72482003-11-18 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
7249
7250 * ada-tree.def: (ALLOCATE_EXPR): Class is "2", not "s".
7251
7252 * decl.c (gnat_to_gnu_entity, case E_Floating_Point_Subtype): Set
7253 TYPE_PRECISION directly from esize.
7254
72552003-11-18 Thomas Quinot <quinot@act-europe.fr>
7256
fbf3e0dd 7257 * cstreams.c:
0d77ab84
AC
7258 Use realpath(3) on FreeBSD. Fix typo in comment while we are at it.
7259
7260 * init.c: Initialization routines for FreeBSD
7261
7262 * link.c: Link info for FreeBSD
7263
7264 * sysdep.c: Add the case of FreeBSD
7265
cb7a5092
AC
72662003-11-17 Jerome Guitton <guitton@act-europe.fr>
7267
7268 * 5zthrini.adb: Remove the call to Init_RTS at elaboration, as it is
7269 already called in System.Threads.
7270
7271 * 5ztiitho.adb (Initialize_Task_Hooks): Remove the registration of the
7272 environment task, as it has been moved to System.Threads.Initialization.
7273
72742003-11-17 Arnaud Charlet <charlet@act-europe.fr>
7275
7276 * adaint.c (__gnatlib_install_locks): Only reference
7277 __gnat_install_locks on VMS, since other platforms can avoid using
7278 --enable-threads=gnat
7279
72802003-11-17 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
7281
7282 * ada-tree.h: (TYPE_IS_PACKED_ARRAY_TYPE_P): New macro.
7283
7284 * decl.c (gnat_to_gnu_entity, case E_Array_Subtype): Set
7285 TYPE_PACKED_ARRAY_TYPE_P.
7286 (validate_size): Do not verify size if TYPE_IS_PACKED_ARRAY_TYPE_P.
7287
7288 Part of PR ada/12806
7289 * utils.c (float_type_for_precision): Renamed from float_type_for_size.
7290 Use GET_MODE_PRECISION instead of GET_MODE_BITSIZE.
7291
72922003-11-17 Vincent Celier <celier@gnat.com>
7293
7294 * gnatchop.adb (Error_Msg): New Boolean parameter Warning, defaulted
7295 to False.
7296 Do not set exit status to Failure when Warning is True.
7297 (Gnatchop): Make errors "no compilation units found" and
7298 "no source files written" warnings only.
7299
7300 * make.adb (Gnatmake): When using a project file, set
7301 Look_In_Primary_Dir to False.
7302 (Configuration_Pragmas_Switch): Check for Global_Configuration_Pragmas
7303 and Local_Configuration_Pragmas in the project where they are declared
7304 not an extending project which might have inherited them.
7305
7306 * osint.adb (Locate_File): If Name is already an absolute path, do not
7307 look for a directory.
7308
7309 * par-ch10.adb (P_Compilation_Unit): If source contains no token, and
7310 -gnats (Check_Syntax) is used, issue only a warning, not an error.
7311
7312 * prj.adb (Register_Default_Naming_Scheme): Add new component Project
7313 in objects of type Variable_Value.
7314
7315 * prj.ads: (Variable_Value): New component Project
7316
7317 * prj-nmsc.adb (Ada_Check.Warn_If_Not_Sources): No warning if source
7318 is in a project extended by Project.
7319
7320 * prj-proc.adb (Add_Attributes): New parameter Project. Set component
7321 Project of Variable_Values to this new parameter value.
7322 (Expression): Set component Project of Variable_Values.
7323 (Process_Declarative_Items): Call Add_Attributes with parameter Project.
7324 Set the component Project in array elements.
7325
73262003-11-17 Sergey Rybin <rybin@act-europe.fr>
7327
7328 * errout.adb: (Initialize): Add initialization for error nodes.
7329
7330 * sem_ch12.adb (Initialize): Add missing initializations for
7331 Exchanged_Views and Hidden_Entities.
7332
73332003-11-17 Ed Schonberg <schonberg@gnat.com>
7334
7335 * sem_ch12.adb (Copy_Generic_Node): Preserve entity when copying an
7336 already instantiated tree for use in subsequent inlining.
7337 (Analyze_Associations, Instantiate_Formal_Subprogram,
7338 Instantiate_Object): improve error message for mismatch in
7339 instantiations.
7340
7341 * sem_ch6.adb (Build_Body_To_Inline): Major cleanup to handle
7342 instantiations of subprograms declared in instances.
7343
73442003-11-17 Javier Miranda <miranda@gnat.com>
7345
7346 * sem_ch4.adb (Analyze_Allocator): Previous modification must be
7347 executed only under the Extensions_Allowed flag.
7348
73492003-11-17 Robert Dewar <dewar@gnat.com>
7350
7351 * a-exexda.adb (Address_Image): Fix documentation to indicate leading
7352 zeroes suppressed.
7353 (Address_Image): Fix bug of returning 0x instead of 0x0
7354 Minor reformatting (function specs).
7355
7356 * einfo.ads: Minor fix for documentation of Is_Bit_Packed_Array
7357 (missed case of 33-63)
7358
7359 * freeze.adb, sem_ch13.adb: Properly check size of packed bit array
7360
7361 * s-thread.adb: Add comments for pragma Restriction
7362
7363 * exp_aggr.adb, g-debuti.adb, par-ch4.adb, sem_aggr.adb,
7364 sem_ch6.adb, sprint.adb, xref_lib.adb: Minor reformatting
7365
73662003-11-17 Ed Falis <falis@gnat.com>
7367
7368 * s-thread.adb: Added No_Tasking restriction for this implementation.
7369
73702003-11-17 Emmanuel Briot <briot@act-europe.fr>
7371
7372 * xref_lib.adb (Parse_Identifier_Info): Add handling of generic
7373 instanciation references in the parent type description.
7374
73752003-11-17 GNAT Script <nobody@gnat.com>
7376
7377 * Make-lang.in: Makefile automatically updated
7378
7d60db05
JM
73792003-11-16 Jason Merrill <jason@redhat.com>
7380
7381 * Make-lang.in (ada.tags): Create TAGS.sub files in each directory
7382 and TAGS files that include them for each front end.
7383
c0040397
AJ
73842003-11-14 Andreas Jaeger <aj@suse.de>
7385
a477ab83 7386 * lang.opt: Change -Wno-long-long to -Wlong-long since the latter
fbf3e0dd 7387 is the canonical version.
a477ab83
AJ
7388 * misc.c (gnat_handle_option): Likewise.
7389
c0040397
AJ
7390 * Makefile.in (LIBGNAT_TARGET_PAIRS): Add rules for x86_64-linux.
7391
7392 * 5nsystem.ads: New file for x86_64-linux-gnu.
7393
95a6aaf9
AC
73942003-11-14 Arnaud Charlet <charlet@act-europe.fr>
7395
262cc585 7396 * nmake.ads, nmake.adb, sinfo.h, treeprs.ads: Regenerated.
95a6aaf9 7397
4a4fe537
AC
7398 * comperr.adb: Fix logic in previous change.
7399
65356e64
AC
74002003-11-13 Vincent Celier <celier@gnat.com>
7401
7402 * 5bml-tgt.adb (Build_Dynamic_Library): Use
7403 Osint.Include_Dir_Default_Prefix instead of
7404 Sdefault.Include_Dir_Default_Name.
7405
7406 * gnatlbr.adb: Update Copyright notice
7407 (Gnatlbr): : Use Osint.Include_Dir_Default_Prefix instead of
7408 Sdefault.Include_Dir_Default_Name and Osint.Object_Dir_Default_Prefix
7409 instead of Sdefault.Object_Dir_Default_Name
7410
c0040397 7411 * gnatlink.adb:
65356e64
AC
7412 (Process_Binder_File): Never suppress the option following -Xlinker
7413
c0040397 7414 * mdll-utl.adb:
65356e64
AC
7415 (Gcc): Use Osint.Object_Dir_Default_Prefix instead of
7416 Sdefault.Object_Dir_Default_Name.
7417
c0040397 7418 * osint.ads, osint.adb:
65356e64
AC
7419 (Include_Dir_Default_Prefix, Object_Dir_Default_Prefix): New functions
7420 Minor reformatting.
7421
7422 * vms_conv.ads: Minor reformating
7423 Remove GNAT STANDARD and GNAT PSTA
7424
c0040397 7425 * vms_conv.adb:
65356e64
AC
7426 Allow GNAT MAKE to have several files on the command line.
7427 (Init_Object_Dirs): Use Osint.Object_Dir_Default_Prefix instead of
7428 Sdefault.Object_Dir_Default_Name.
7429 Minor Reformating
7430 Remove data for GNAT STANDARD
7431
c0040397 7432 * vms_data.ads:
65356e64
AC
7433 Add new compiler qualifier /PRINT_STANDARD (-gnatS)
7434 Remove data for GNAT STANDARD
7435 Remove options and documentation for -gnatwb/-gnatwB: these warning
7436 options no longer exist.
7437
74382003-11-13 Ed Falis <falis@gnat.com>
7439
7440 * 5zthrini.adb: (Init_RTS): Made visible
7441
c0040397 7442 * 5zthrini.adb:
65356e64
AC
7443 (Register): Removed unnecessary call to taskVarGet that checked whether
7444 an ATSD was already set as a task var for the argument thread.
7445
c0040397 7446 * s-thread.adb:
65356e64
AC
7447 Updated comment to reflect that this is a VxWorks version
7448 Added context clause for System.Threads.Initialization
7449 Added call to System.Threads.Initialization.Init_RTS
7450
74512003-11-13 Jerome Guitton <guitton@act-europe.fr>
7452
c0040397 7453 * 5zthrini.adb:
65356e64
AC
7454 (Init_RTS): New procedure, for the initialization of the run-time lib.
7455
c0040397 7456 * s-thread.adb:
65356e64
AC
7457 Remove dependancy on System.Init, so that this file can be used in the
7458 AE653 sequential run-time lib.
7459
74602003-11-13 Robert Dewar <dewar@gnat.com>
7461
7462 * bindgen.adb: Minor reformatting
7463
74642003-11-13 Ed Schonberg <schonberg@gnat.com>
7465
c0040397 7466 * checks.adb:
65356e64
AC
7467 (Apply_Discriminant_Check): Do no apply check if target type is derived
7468 from source type with no applicable constraint.
7469
c0040397 7470 * lib-writ.adb:
65356e64
AC
7471 (Ensure_System_Dependency): Do not apply the style checks that may have
7472 been specified for the main unit.
7473
c0040397 7474 * sem_ch8.adb:
65356e64
AC
7475 (Find_Selected_Component): Further improvement in error message, with
7476 RM reference.
7477
c0040397 7478 * sem_res.adb:
65356e64
AC
7479 (Resolve): Handle properly the case of an illegal overloaded protected
7480 procedure.
7481
74822003-11-13 Javier Miranda <miranda@gnat.com>
7483
c0040397 7484 * exp_aggr.adb:
65356e64
AC
7485 (Has_Default_Init_Comps): New function to check the presence of
7486 default initialization in an aggregate.
7487 (Build_Record_Aggr_Code): Recursively expand the ancestor in case of
7488 extension aggregate of a limited record. In addition, a new formal
7489 was added to do not initialize the record controller (if any) during
7490 this recursive expansion of ancestors.
7491 (Init_Controller): Add support for limited record components.
7492 (Expand_Record_Aggregate): In case of default initialized components
7493 convert the aggregate into a set of assignments.
7494
7495 * par-ch4.adb (P_Aggregate_Or_Paren_Expr): Update the comment
7496 describing the new syntax.
7497 Nothing else needed to be done because this subprogram delegates part of
7498 its work to P_Precord_Or_Array_Component_Association.
7499 (P_Record_Or_Array_Component_Association): Give support to the new
7500 syntax for default initialization of components.
7501
c0040397 7502 * sem_aggr.adb:
65356e64
AC
7503 (Resolve_Aggregate): Relax the strictness of the frontend in case of
7504 limited aggregates.
7505 (Resolve_Record_Aggregate): Give support to default initialized
7506 components.
7507 (Get_Value): In case of default initialized components, duplicate
7508 the corresponding default expression (from the record type
7509 declaration). In case of default initialization in the *others*
7510 choice, do not check that all components have the same type.
7511 (Resolve_Extension_Aggregate): Give support to limited extension
7512 aggregates.
7513
c0040397 7514 * sem_ch3.adb:
65356e64
AC
7515 (Check_Initialization): Relax the strictness of the front-end in case
7516 of aggregate and extension aggregates. This test is now done in
7517 Get_Value in a per-component manner.
7518
7519 * sem_ch4.adb (Analyze_Allocator): Don't post an error if the
7520 expression corresponds to a limited aggregate. This test is now done
7521 in Get_Value.
7522
7523 * sinfo.ads, sinfo.adb (N_Component_Association): Addition of
7524 Box_Present flag.
7525
7526 * sprint.adb (Sprint_Node_Actual): Modified to print an mbox if
7527 present in an N_Component_Association node
7528
75292003-11-13 Thomas Quinot <quinot@act-europe.fr>
7530
7531 * sem_ch9.adb (Analyze_Accept_Statement): A procedure hides a
7532 type-conformant entry only if they are homographs.
7533
75342003-11-13 GNAT Script <nobody@gnat.com>
7535
7536 * Make-lang.in: Makefile automatically updated
7537
49add53f
RO
75382003-11-12 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
7539
7540 * adadecode.c: Use <> form of include for ctype.h.
7541 * sysdep.c [IN_RTS]: Use <> form of include for time.h.
7542
94bae1cc
RO
75432003-11-12 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
7544
7545 * 5gsystem.ads (Functions_Return_By_DSP): Set to False.
7546 Works around PR middle-end/6552.
7547
463f452c
AC
75482003-11-10 Ed Falis <falis@gnat.com>
7549
7550 * 5ytiitho.adb: (procStartHookAdd): Definition and call deleted
7551
7552 * 5zinit.adb: (Install_Handler): Moved back to spec
7553 (Install_Signal_Handlers): Deleted
7554
7555 * 5zthrini.adb: Added context clause for System.Storage_Elements
7556 (Register): Only handles creation of taskVar; initialization moved to
7557 Thread_Body_Enter.
7558 (Reset_TSD): Deleted; replaced by Thread_Body_Enter
7559 Added declaration of environment task secondary stack and
7560 initialization.
7561
7562 * s-thread.adb: Implement bodies for thread body processing
7563
c0040397 7564 * s-thread.ads:
463f452c
AC
7565 Added comment identifying supported targets for pragma Thread_Body.
7566
75672003-11-10 Pascal Obry <obry@gnat.com>
7568
7569 * adaint.c (_gnat_stat) [WIN32]: Check if name is not bigger than
7570 GNAT_MAX_PATH_LEN.
7571
c0040397 7572 * s-fileio.adb:
463f452c
AC
7573 (Open): Properly check for string length before copying into the buffer.
7574 Raises Name_Error if buffer is too small. Note that this was a potential
7575 buffer overflow.
7576
75772003-11-10 Romain Berrendonner <berrendo@act-europe.fr>
7578
7579 * bindgen.adb, comperr.adb: Code clean ups.
7580 * gnatvsn.ads, gnatvsn.adb (Get_Gnat_Version_Type): New function.
7581
75822003-11-10 Sergey Rybin <rybin@act-europe.fr>
7583
7584 * gnat1drv.adb: Add call to Sem_Elim.Initialize.
7585
75862003-11-10 Vincent Celier <celier@gnat.com>
7587
c0040397 7588 * gprcmd.adb:
463f452c
AC
7589 (Gprcmd): Add new command "prefix" to get the prefix of the GNAT
7590 installation.
7591
7592 * make.adb (Scan_Make_Arg): Transmit -nostdlib to the compiler
7593
7594 * prj.adb: (Project_Empty): Add new boolean component Virtual
7595
7596 * prj.ads: (Virtual_Prefix): New constant string
7597 (Project_Data): New boolean component Virtual
7598
7599 * prj-nmsc.adb (Language_Independent_Check): Adjust error message when
7600 a library project is extended by a virtual extending project.
7601
c0040397 7602 * prj-part.adb:
463f452c
AC
7603 Modifications throughout to implement extending-all project, including:
7604 (Virtual_Hash, Processed_Hash): New hash tables
7605 (Create_Virtual_Extending_Project): New procedure
7606 (Look_For_Virtual_Projects_For): New procedure
7607
c0040397 7608 * prj-proc.adb:
463f452c
AC
7609 (Process): After checking the projects, if main project is an
7610 extending-all project, set the object directory of all virtual extending
7611 project to the object directory of the main project.
7612 Adjust error message when a virtual extending project has the same
7613 object directory as an project being extended.
7614 (Recursive_Process): If name starts with the virtual prefix, set Virtual
7615 to True in the project data.
7616
c0040397 7617 * prj-tree.adb:
463f452c
AC
7618 (Default_Project_Node): Add new boolean component Extending_All
7619 (Is_Extending_All): New function
7620 (Set_Is_Extending_All): New procedure
7621
7622 * prj-tree.ads: (Is_Extending_All): New function
7623 (Set_Is_Extending_All): New procedure
7624 (Project_Node_Record): New boolean component Extending_All
7625
7626 * switch-c.adb: (Scan_Front_End_Switches): Process -nostdlib
7627
c0040397 7628 * vms_data.ads:
463f452c
AC
7629 Add qualifier /NOSTD_LIBRARIES (-nostdlib) for the compiler
7630
7631 * bld.adb (Recursive_Process): If MAKE_ROOT is not defined, call
7632 "gprcmd prefix" to define it.
7633
76342003-11-10 Thomas Quinot <quinot@act-europe.fr>
7635
7636 * einfo.ads: Fix a typo and remove an extraneous word in comments.
7637
c0040397 7638 * lib-load.adb:
463f452c
AC
7639 (Create_Dummy_Package_Unit): Set the scope of the entity for the
7640 created dummy package to Standard_Standard, not to itself, to
7641 defend other parts of the front-end against encoutering a cycle in
7642 the scope chain.
7643
c0040397 7644 * sem_ch10.adb:
463f452c
AC
7645 (Analyze_With_Clause): When setting the entities for the successive
7646 N_Expanded_Names that constitute the name of a child unit, do not
7647 attempt to go further than Standard_Standard in the chain of scopes.
7648 This case arises from the placeholder units created by
7649 Create_Dummy_Package_Unit in the case of a with_clause for a
7650 nonexistent child unit.
7651
76522003-11-10 Ed Schonberg <schonberg@gnat.com>
7653
c0040397 7654 * exp_ch6.adb:
463f452c
AC
7655 (Expand_Thread_Body): Place subprogram on scope stack, so that new
7656 declarations are given the proper scope.
7657
c0040397 7658 * sem_ch13.adb:
463f452c
AC
7659 (Check_Expr_Constants): Reject an expression that contains a constant
7660 created during expansion, and that appears after the object to which
7661 the address clause applies.
7662
7663 * sem_ch5.adb (Check_Controlled_Array_Attribute): Subsidiary of
7664 Analyze_Iteration_Scheme, to rewrite a loop parameter specification
7665 that uses 'Range of a function call with controlled components, so
7666 that the function result can be finalized before starting the loop.
7667
c0040397 7668 * sem_ch8.adb:
463f452c
AC
7669 (Find_Selected_Component): Improve error message when prefix is
7670 an implicit dereference of an incomplete type.
7671
76722003-11-10 Robert Dewar <dewar@gnat.com>
7673
7674 * opt.ads: New Print_Standard flag for -gnatS switch
7675
7676 * sem_ch13.adb: Remove some additional checks for unaligned arrays
7677
7678 * cstand.adb (Create_Standard): Print out package standard if -gnatS
7679 switch set
7680
7681 * debug.adb: Update doc for -gnatds to discuss relationship with new
7682 -gnatS flag
7683
7684 * sinfo.adb: Add new field Entity_Or_Associated_Node
7685
7686 * sinfo.ads: Add new field Entity_Or_Associated_Node
7687 Update documentation for Associated_Node and Entity fields to clarify
7688 relationship and usage.
7689
c0040397 7690 * sprint.adb:
463f452c
AC
7691 (Write_Id): Properly process Associated_Node field in generic template
7692
c0040397 7693 * switch-c.adb:
463f452c
AC
7694 Recognize new -gnatS switch for printing package Standard
7695 This replaces gnatpsta
7696
c0040397 7697 * usage.adb:
463f452c
AC
7698 Add line for new -gnatS switch for printing package Standard
7699 This replaces gnatpsta
7700
c77c5f2e
AJ
77012003-11-10 Andreas Jaeger <aj@suse.de>
7702
7703 * 7sosprim.adb: tv_usec of struct_timeval and time_t are long
7704 integer.
7705
5c90f17f
AC
77062003-11-10 Arnaud Charlet <charlet@act-europe.fr>
7707
7708 * misc.c, lang.opt: Add handling of -nostdlib, now recognized/needed
7709 by gnat1.
7710
139f0d1e
AC
77112003-11-10 Arnaud Charlet <charlet@act-europe.fr>
7712
7713 * Makefile.in, Make-lang.in: Remove build of gnat_wrapper and gnatpsta,
7714 no longer needed.
7715
7716 * gnatpsta.adb, gnat_wrapper.adb: Removed, no longer needed.
7717
7718 * sysdep.c: Add handling of cygwin.
7719
f3e4c05c
GS
77202003-11-10 GNAT Script <nobody@gnat.com>
7721
7722 * Make-lang.in: Makefile automatically updated
7723
2cdc8909
AC
77242003-11-10 Arnaud Charlet <charlet@act-europe.fr>
7725
7726 PR 12950
7727 * osint.ads, osint.adb (Relocate_Path, Executable_Suffix): New
7728 functions. Used to handle dynamic prefix relocation, via set_std_prefix.
7729 Replace GNAT_ROOT by GCC_ROOT.
7730
7731 * Make-lang.in: Use new function Relocate_Path to generate sdefault.adb
7732
37783865
ZW
77332003-11-06 Zack Weinberg <zack@codesourcery.com>
7734
7735 * misc.c (fp_prec_to_size, fp_size_to_prec): Use GET_MODE_PRECISION
7736 and update for changed meaning of GET_MODE_BITSIZE.
7737
6bc1c519
AC
77382003-11-04 Doug Rupp <rupp@gnat.com>
7739
7740 * sysdep.c: Problem discovered during IA64 VMS port.
7741 [VMS] #include <unixio.h> to get proper prototypes.
7742
37783865 7743 * adaint.c:
6bc1c519
AC
7744 Issues discovered/problems fixed during IA64 VMS port.
7745 [VMS] #define _POSIX_EXIT for proper semantics.
7746 [VMS] #include <unixio.h> for proper prototypes.
7747 [VMS] (fork): #define IA64 version.
7748 (__gnat_os_exit): Remove unnecessary VMS specific code.
7749
77502003-11-04 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
7751
7752 Part of PR ada/12806
7753
7754 * ada-tree.h (TYPE_DIGITS_VALUE, SET_TYPE_DIGITS_VALUE): Save count as
7755 tree, not integer.
7756
37783865 7757 * decl.c:
6bc1c519
AC
7758 (gnat_to_gnu_entity, case E_Floating_Point_Type): Save count as tree,
7759 not integer.
7760
7761 * targtyps.c, decl.c, misc.c,
7762 gigi.h (fp_prec_to_size, fp_size_to_prec): Temporary
7763 routines to work around change in FP sizing semantics in GCC.
7764
37783865 7765 * utils.c:
6bc1c519
AC
7766 (build_vms_descriptor): TYPE_DIGITS_VALUE is tree, not integer.
7767
7768 * gigi.h: (enumerate_modes): New function.
7769
7770 * Make-lang.in: (ada/misc.o): Add real.h.
7771
7772 * misc.c: (enumerate_modes): New function.
7773
77742003-11-04 Robert Dewar <dewar@gnat.com>
7775
7776 * 3vtrasym.adb: Minor reformatting
7777 Use terminology encoded/decoded name, rather than C++ specific notion
7778 of mangling (this is the terminology used throughout GNAT).
7779
7780 * einfo.h: Regenerated
7781
7782 * einfo.ads, einfo.adb: Add new flag Is_Thread_Body
7783
37783865 7784 * exp_ch6.adb:
6bc1c519
AC
7785 (Expand_N_Subprogram_Body): Handle expansion of thread body procedure
7786
7787 * par-prag.adb: Add dummy entry for Thread_Body pragma
7788
37783865 7789 * rtsfind.ads:
6bc1c519
AC
7790 Add entries for System.Threads entities for thread body processing
7791
37783865 7792 * sem_attr.adb:
6bc1c519
AC
7793 (Analyze_Pragma, Access attributes): Check these are not applied to a
7794 thread body, since this is not permitted
7795
7796 * sem_prag.adb: Add processing for Thread_Body pragma.
7797 Minor comment fix.
7798
37783865 7799 * sem_res.adb:
6bc1c519
AC
7800 (Resolve_Call): Check for incorrect attempt to call a thread body
7801 procedure with a direct call.
7802
7803 * snames.ads, snames.adb: Add entry for Thread_Body pragma
7804 Add names associated with thread body expansion
7805
7806 * snames.h: Add entry for Thread_Body pragma
7807
7808 * s-thread.adb: Add entries for thread body processing
7809 These are dummy bodies so far
7810
7811 * s-thread.ads: Add documentation on thread body handling.
7812 Add entries for thread body processing.
7813
78142003-11-04 Javier Miranda <miranda@gnat.com>
7815
37783865 7816 * sem_ch10.adb:
6bc1c519
AC
7817 (Build_Limited_Views): Return after posting an error in case of limited
7818 with_clause on subprograms, generics, instances or generic renamings
7819 (Install_Limited_Withed_Unit): Do nothing in case of limited with_clause
7820 on subprograms, generics, instances or generic renamings
7821
78222003-11-04 Arnaud Charlet <charlet@act-europe.fr>
7823
7824 * raise.c (setup_to_install): Correct mistake in last revision; two
7825 arguments out of order.
7826
7827 * trans.c, cuintp.c, argv.c, aux-io.c, cal.c, errno.c, exit.c,
7828 gnatbl.c, init.c, stringt.h, utils.c, utils2.c: Update copyright
7829 notice, missed in previous change.
7830 Remove trailing blanks and other style errors introduced in previous
7831 change.
7832
78332003-11-04 Olivier Hainque <hainque@act-europe.fr>
7834
7835 * decl.c (gnat_to_gnu_field): Adjust the conditions under which we get
7836 rid of the wrapper for a LJM type, ensuring we don't do that if the
7837 field is addressable. This avoids potential low level type view
7838 mismatches later on, for instance in a by-reference argument passing
7839 process.
7840
78412003-11-04 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
7842
7843 * decl.c (gnat_to_gnu_field): No longer check for BLKmode being
7844 aligned at byte boundary.
7845
78462003-11-04 Joel Brobecker <brobecker@gnat.com>
7847
7848 * decl.c (components_to_record): Do not delete the empty variants from
7849 the end of the union type.
7850
78512003-11-04 Ed Schonberg <schonberg@gnat.com>
7852
7853 * exp_ch4.adb (Expand_N_Op_Eq): Use base type when locating primitive
7854 operation for a derived type, an explicit declaration may use a local
7855 subtype of Boolean.
7856
78572003-11-04 Vincent Celier <celier@gnat.com>
7858
7859 * make.adb (Gnatmake): Allow main sources on the command line with a
7860 library project when it is only for compilation (no binding or
7861 linking).
7862
487e9fff
RO
78632003-11-04 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
7864
7865 * Makefile.in: Remove many duplicate variables.
7866
63069342
KC
78672003-11-03 Kelley Cook <kcook@gcc.gnu.org>
7868
7869 * Make-lang.in (dvi): Move targets to $(docobjdir).
7870 (gnat_ug_vms.dvi): Simplify rule and adjust target.
7871 (gnat_ug_wnt.dvi): Likewise.
7872 (gnat_ug_unx.dvi): Likewise.
7873 (gnat_ug_vxw.dvi): Likewise.
7874 (gnat_rm.dvi): Likewise.
7875 (gnat-style.dvi): Likewise.
7876
c2edc52b
KC
78772003-10-31 Kelley Cook <kcook@gcc.gnu.org>
7878
7879 * gigi.h: Missed commit from update for C90.
7880
14df9585
KC
78812003-10-31 Kelley Cook <kcook@gcc.gnu.org>
7882
7883 * Makefile.in (ada/b_gnat1.o): Compile with -Wno-error.
7884
acd8e984
AS
78852003-10-31 Andreas Schwab <schwab@suse.de>
7886
7887 * raise.c (get_action_description_for): Fix typo in last change.
7888
b2c62c45
NN
78892003-10-31 Nathanael Nerode <neroden@gcc.gnu.org>
7890
7891 PR ada/12761
7892 * ada/Make-lang.in: Move default definitions of X_ADA_CFLAGS,
7893 T_ADA_CFLAGS, X_ADAFLAGS, T_ADAFLAGS from here to master Makefile.in.
7894
9373164a
KC
78952003-10-30 Kelley Cook <kcook@gcc.gnu.org>
7896
7897 * adadecode.c, adaint.c, argv.c, aux-io.c, cal.c, cio.c, cstreams.c,
7898 ctrl_c.c, cuintp.c, decl.c, errno.c, exit.c, expect.c, final.c,
7899 gigi.h, gmem.c, gnatbl.c, init.c, misc.c, mkdir.c, raise.c, socket.c,
7900 sysdep.c, sysdep.c, targtyps.c, tb-alvms.c, tb-alvxw.c, tracebak.c,
7901 trans.c, utils.c, utils2.c: Convert function prototypes to C90.
7902
bde58e32
AC
79032003-10-30 Vasiliy Fofanov <fofanov@act-europe.fr>
7904
37783865 7905 * 3vtrasym.adb:
bde58e32
AC
7906 Demangle Ada symbols returned by TBK$SYMBOLIZE. Correctly align line
7907 numbers when symbol name is too long.
7908
79092003-10-30 Ed Falis <falis@gnat.com>
7910
7911 * g-signal.ads, g-signal.adb: New files
7912
7913 * impunit.adb: (Non_Imp_File_Names): Added "g-signal"
7914
7915 * Makefile.rtl: Introduce GNAT.Signals
7916
79172003-10-30 Robert Dewar <dewar@gnat.com>
7918
7919 * freeze.adb: Minor reformatting
7920
7921 * lib-writ.adb (Write_ALI): Never write ali file if -gnats is specified
7922
37783865
ZW
7923 * par.adb, par-ch12.adb, par-ch13.adb, par-ch2.adb, par-ch3.adb,
7924 par-ch5.adb, par-ch6.adb, par-ch9.adb, par-util.adb:
bde58e32
AC
7925 New handling of Id_Check parameter to improve recognition of keywords
7926 used as identifiers.
7927 Update copyright notice to include 2003
7928
657a9dd9
AC
79292003-10-29 Robert Dewar <dewar@gnat.com>
7930
7931 * 3vtrasym.adb, 5vtraent.ads, sprint.adb,
7932 sem_ch10.adb: Minor reformatting
7933
7934 * exp_ch5.adb (Expand_Assign_Array): Test for bit unaligned operands
7935 (Expand_Assign_Record): Test right hand side for bit unaligned as well
7936
79372003-10-29 Vasiliy Fofanov <fofanov@act-europe.fr>
7938
37783865 7939 * 3vtrasym.adb, 5vtraent.adb, 5vtraent.ads, tb-alvms.c:
657a9dd9
AC
7940 Support for TBK$SYMBOLIZE-based symbolic traceback.
7941
79422003-10-29 Jose Ruiz <ruiz@act-europe.fr>
7943
37783865 7944 * exp_disp.adb:
657a9dd9
AC
7945 Revert previous change, that did not work well when pragma No_Run_Time
7946 was used in conjunction with a run-time other than ZFP.
7947
79482003-10-29 Vincent Celier <celier@gnat.com>
7949
37783865 7950 * make.adb:
657a9dd9
AC
7951 (Gnatmake): When there are no Ada mains in attribute Main, disable the
7952 bind and link steps only is switch -z is not used.
7953
79542003-10-29 Arnaud Charlet <charlet@act-europe.fr>
7955
7956 * Makefile.generic: Remove duplicated setting of CC.
7957
7958 * Makefile.prolog: Set CC to gcc by default, to override make's
7959 default (cc).
7960
7961 * einfo.h: Regenerated.
7962
79632003-10-29 Ed Schonberg <schonberg@gnat.com>
7964
7965 * sem_ch10.adb (Analyze_Subunit): Restore state of suppress flags for
7966 current body, after compiling subunit.
7967
7968 * itypes.adb (Create_Itype): In ASIS_Mode, do not freeze the itype
7969 when in deleted code, because gigi needs properly ordered freeze
7970 actions to annotate types.
7971
7972 * freeze.adb (Is_Fully_Defined): Predicate must be recursive, to
7973 prevent the premature freezing of record type that contains
7974 subcomponents with a private type that does not yet have a completion.
7975
79762003-10-29 Javier Miranda <miranda@gnat.com>
7977
37783865 7978 * sem_ch12.adb:
657a9dd9
AC
7979 (Analyze_Package_Instantiation): Check that instances can not be used in
7980 limited with_clauses.
7981
37783865 7982 * sem_ch8.adb:
657a9dd9
AC
7983 (Analyze_Package_Renaming): Check that limited withed packages cannot
7984 be renamed. Improve text on error messages related to limited
7985 with_clauses.
7986
7987 * einfo.adb, einfo.ads: Remove Non_Limited_Views attribute.
7988
7989 * sprint.adb: (Sprint_Node_Actual): Print limited with_clauses.
7990 Update copyright notice.
7991
7992 * sem_ch10.adb: (Build_Limited_Views): Complete its documentation.
7993 (Install_Limited_Context_Clauses): New subprogram that isolates all the
7994 checks required for limited context_clauses and installs the limited
7995 view.
7996 (Install_Limited_Withed_Unit): Complete its documentation.
7997 (Analyze_Context): Check that limited with_clauses are only allowed in
7998 package specs.
7999 (Install_Context): Call Install_Limited_Context_Clauses after the
8000 parents have been installed.
8001 (Install_Limited_Withed_Unit): Add documentation. Mark the installed
8002 package as 'From_With_Type'; this mark indicates that the limited view
8003 is installed. Used to check bad usages of limited with_clauses.
8004 (Build_Limited_Views): Do not add shadow entities to the scope's list
8005 of entities. Do not add real entities to the Non_Limited_Views chain.
8006 Improve error notification.
8007 (Remove_Context_Clauses): Remove context clauses in two phases:
8008 limited views first and regular views later (to maintain the
8009 stack model).
8010 (Remove_Limited_With_Clause): If the package is analyzed then reinstall
8011 its visible entities.
8012
80132003-10-29 Thomas Quinot <quinot@act-europe.fr>
8014
8015 * sem_type.adb (Specific_Type): Type Universal_Fixed is compatible
8016 with any type that Is_Fixed_Point_Type.
8017
8018 * sinfo.ads: Fix documentation for Associated_Node attribute.
8019
80202003-10-29 Sergey Rybin <rybin@act-europe.fr>
8021
8022 * switch-c.adb (Scan_Front_End_Switches): ASIS_Mode is set now when
8023 both '-gnatc' and '-gnatt' are specified.
8024
8025 * atree.adb (Initialize): Add initialization for Node_Count (set to
8026 zero).
8027
80282003-10-29 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
8029
8030 * decl.c (gnat_to_gnu_entity, case E_Subprogram): If no return value,
8031 do not consider as Pure.
8032
8033 Part of implementation of function-at-a-time:
8034
8035 * trans.c (gnat_to_gnu_code): If IS_STMT, call expand_expr_stmt.
8036 (tree_transform): Add new argument to build_component_ref.
8037 (tree_transform, case N_Assignment_Statement): Make and return an
8038 EXPR_STMT.
8039 (tree_transform): If result IS_STMT, set flags and return it.
8040 (gnat_expand_stmt, set_lineno_from_sloc): New functions.
8041
8042 * utils2.c (build_simple_component_ref, build_component_ref): Add new
8043 arg, NO_FOLD_P.
8044 (build_binary_op, case EQ_EXPR): Pass additional arg to it.
8045 (build_allocator): Likewise.
8046
8047 * utils.c (convert_to_fat_pointer, convert_to_thin_pointer, convert):
8048 Add new arg to build_component_ref.
8049 (maybe_unconstrained_array, unchecked_convert): Likewise.
8050
8051 * ada-tree.def (EXPR_STMT): New code.
8052
8053 * ada-tree.h (IS_STMT, TREE_SLOC, EXPR_STMT_EXPR): New macros.
8054
8055 * decl.c (gnat_to_gnu_entity, case object): Add extra arg to
8056 build_component_ref calls.
8057
8058 * misc.c (gnat_expand_expr): If IS_STMT, call gnat_expand_stmt.
8059
8060 * gigi.h (gnat_expand_stmt, set_lineno_from_sloc): New functions.
8061 (build_component_ref): Add new argument, NO_FOLD_P.
8062
ecad994d
AC
80632003-10-27 Arnaud Charlet <charlet@act-europe.fr>
8064
8065 * Makefile.generic: Add missing substitution on object_deps handling.
8066
8067 PR ada/5909:
8068 * Make-lang.in (check-ada): Enable ACATS test suite.
8069
80702003-10-27 Robert Dewar <dewar@gnat.com>
8071
37783865 8072 * exp_ch3.adb:
ecad994d
AC
8073 (Freeze_Array_Type): We do not need an initialization routine for types
8074 derived from String or Wide_String. They should be treated the same
8075 as String and Wide_String themselves. This caused problems with the
8076 use of Initialize_Scalars.
8077
37783865 8078 * exp_ch5.adb:
ecad994d
AC
8079 (Expand_Assign_Record): Do component-wise assignment of non-byte aligned
8080 composites. This allows use of component clauses that are not byte
8081 aligned.
8082
37783865 8083 * sem_prag.adb:
ecad994d
AC
8084 (Analyze_Pragma, case Pack): Generate warning and ignore pack if there
8085 is an attempt to pack an array of atomic objects.
8086
8087 * make.adb, prj-env.adb, prj-env.ads: Minor reformatting
8088
80892003-10-27 Pascal Obry <obry@gnat.com>
8090
37783865 8091 * g-dirope.adb:
ecad994d
AC
8092 (Basename): Check for drive letters in a pathname only on DOS based OS.
8093
80942003-10-27 Vincent Celier <celier@gnat.com>
8095
37783865 8096 * make.adb:
ecad994d
AC
8097 (Gnatmake): When unable to change dir to the object dir, display the
8098 content of the parent dir of the obj dir, to try to understand why this
8099 happens.
8100
81012003-10-27 GNAT Script <nobody@gnat.com>
8102
8103 * Make-lang.in: Makefile automatically updated
8104
81052003-10-27 Ed Schonberg <schonberg@gnat.com>
8106
37783865 8107 * sem_ch12.adb:
ecad994d
AC
8108 (Inline_Instance_Body): Indicate that the save/restore of use_clauses
8109 should not be done in Save/Restore_Scope_Stack, because it is performed
8110 locally.
8111
37783865 8112 * sem_ch8.adb:
ecad994d
AC
8113 (Save_Scope_Stack, Restore_Scope_Stack): Add parameter to indicate
8114 whether use clauses should be removed/restored.
8115
37783865 8116 * sem_ch8.ads:
ecad994d
AC
8117 (Save_Scope_Stack, Restore_Scope_Stack): Add parameter to indicate
8118 whether use clauses should be removed/restored.
8119
b6b3c138
AJ
81202003-10-26 Andreas Jaeger <aj@suse.de>
8121
8122 * Makefile.in: Remove duplicated lines.
8123
b6d83931
AC
81242003-10-24 Arnaud Charlet <charlet@act-europe.fr>
8125
8126 * gnatvsn.ads (Gnat_Static_Version_String): New constant, used to
8127 minimize the differences with ACT tree.
8128
8129 * gnatkr.adb, gnatlink.adb, gnatls.adb, gnatmake.adb,
8130 gnatprep.adb, gnatpsta.adb, gnatvsn.ads: Take advantage of
8131 Gnatvsn.Gnat_Static_Version_String to reduce differences between
8132 ACT and FSF trees.
8133
81342003-10-24 Pascal Obry <obry@gnat.com>
8135
8136 * adadecode.c (ostrcpy): New function.
8137 (__gnat_decode): Use ostrcpy of strcpy.
8138 (has_prefix): Set first parameter a const.
8139 (has_suffix): Set first parameter a const.
8140 Update copyright notice. Fix source name in header.
8141 Removes a trailing space.
8142 PR ada/12014.
8143
81442003-10-24 Jose Ruiz <ruiz@act-europe.fr>
8145
b6b3c138 8146 * exp_disp.adb:
b6d83931
AC
8147 Remove the test against being in No_Run_Time_Mode before generating a
8148 call to Register_Tag. It is redundant with the test against the
8149 availability of the function Register_Tag.
8150
81512003-10-24 Vincent Celier <celier@gnat.com>
8152
8153 * g-catiio.adb: (Month_Name): Correct spelling of February
8154
8155 * make.adb: (Mains): New package
8156 (Initialize): Call Mains.Delete
8157 (Gnatmake): Check that each main on the command line is a source of a
8158 project file and, if there are several mains, each of them is a source
8159 of the same project file.
8160 (Gnatmake): When a foreign language is specified in attribute Languages,
8161 no main is specified on the command line and attribute Mains is not
8162 empty, only build the Ada main. If there is no Ada main, just compile
8163 the Ada sources and their closure.
8164 (Gnatmake): If a main is specified on the command line with directory
8165 information, check that the source exists and, if it does, that the path
8166 is the actual path of a source of a project.
8167
b6b3c138 8168 * prj-env.adb:
b6d83931
AC
8169 (File_Name_Of_Library_Unit_Body): New Boolean parameter Full_Path. When
8170 Full_Path is True, return the full path instead of the simple file name.
8171 (Project_Of): New function
8172
b6b3c138 8173 * prj-env.ads:
b6d83931
AC
8174 (File_Name_Of_Library_Unit_Body): New Boolean parameter Full_Path,
8175 defaulted to False.
8176 (Project_Of): New function
8177
81782003-10-24 Arnaud Charlet <charlet@act-europe.fr>
8179
b6b3c138 8180 * Makefile.generic:
b6d83931
AC
8181 Ensure objects of main project are always checked and rebuilt if needed.
8182 Set CC to gcc by default.
8183 Prepare new handling of link by creating a global archive (not activated
8184 yet).
8185
8186 * adadecode.h, atree.h, elists.h, nlists.h, raise.h,
8187 stringt.h: Update copyright notice. Remove trailing blanks.
8188 Fix source name in header.
8189
81902003-10-24 Robert Dewar <dewar@gnat.com>
8191
8192 * sem_ch12.adb: Minor reformatting
8193
b6b3c138 8194 * sem_ch3.adb:
b6d83931
AC
8195 Minor reformatting (including new function return style throughout)
8196
b6b3c138 8197 * sem_ch3.ads:
b6d83931
AC
8198 Minor reformatting (including new function return style throughout)
8199
82002003-10-24 Arnaud Charlet <charlet@act-europe.fr>
8201
8202 * adadecode.h, atree.h, elists.h, nlists.h, raise.h,
8203 stringt.h: Update copyright notice. Remove trailing blanks.
8204 Fix source name in header.
8205
82062003-10-24 GNAT Script <nobody@gnat.com>
8207
8208 * Make-lang.in: Makefile automatically updated
8209
b4e2d709
NN
82102003-10-23 Nathanael Nerode <neroden@gcc.gnu.org>
8211
8212 * adadecode.h, atree.h, elists.h, namet.h, nlists.h, raise.h,
8213 stringt.h: Convert to ISO C90 declarations and definitions.
8214
9d7d51be
AC
82152003-10-23 Thomas Quinot <quinot@act-europe.fr>
8216
8217 PR ada/11978:
8218 * exp_ch13.adb (Expand_N_Freeze_Entity): Do not consider inherited
8219 External_Tag attribute definition clauses.
8220
82212003-10-23 Ed Schonberg <schonberg@gnat.com>
8222
8223 PR ada/7613:
8224 * exp_dbug.adb (Debug_Renaming_Declaration): For the renaming of a
8225 child unit, generate a fully qualified name to avoid spurious errors
8226 when the context contains renamings of different child units with
8227 the same simple name.
8228
8229 * exp_dbug.ads: Add documentation on name qualification for renamings
8230 of child units.
8231
82322003-10-23 Robert Dewar <dewar@gnat.com>
8233
8234 * g-regpat.ads, g-regpat.adb: Minor reformatting
8235
82362003-10-23 Jose Ruiz <ruiz@act-europe.fr>
8237
8238 * Makefile.in: Use the file 1atags.ads with the ZFP and cert run-times.
8239
82402003-10-23 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
8241
8242 * trans.c: (tree_transform, case N_Real_Literal): Add extra arg to
8243 Machine call.
8244
8245 * urealp.h: (Machine): Update to proper definition.
8246
6d244bbe
AC
82472003-10-23 Arnaud Charlet <charlet@act-europe.fr>
8248
8249 * init.c, adaint.c: Minor reformatting.
8250
8f4eb34b
DS
82512003-10-23 Danny Smith <dannysmith@users.sourceforge.net>
8252
6d244bbe 8253 * adaint.c (w32_epoch_offset): Define static const at file level.
8f4eb34b
DS
8254 (win32_filetime): Replace offset with w32_epoch_offset. Use NULL
8255 rather than t_create, t_access in call to GetFileTime. Use union
8256 to convert between FILETIME and unsigned long long.
8257 (__gnat_file_time_name): Test for invalid file handle.
8258 (__gnat_set_filetime_name): Support win32 targets using
8259 w32api SetFileTime.
8260
25412599
DS
82612003-10-22 Danny Smith <dannysmith@users.sourceforge.net>
8262
8263 * sysdep.c: Include conio.h if __MINGW32__ and !OLD_MINGW.
8264
8265 * ctrl_c.c (__gnat_int_handler): Remove declaration.
8266
8267 * decl.c (creat_concat_name): Const-ify prefix.
8268
8269 * adaint.c: Include ctype.h if __MINGW32__.
8270 (__gnat_readlink): Mark arguments as possibly unused.
8271 (__gnat_symlink): Likewise.
8272 (__gnat_is_symbolic_link): Likewise.
8273 (__gnat_portable_spawn): Likewise. Cast last arg of spawnvp to match
8274 declaration
b6b3c138 8275 (__gnat_file_time_name): Don't declare struct stat statbuf when
25412599
DS
8276 not needed.
8277 (__gnat_is_absolute_path): Add parenthesis around condition of
8278 'if' statement to avoid warning.
8279 (__gnat_plist_init): Specify void as parameter.
8280 (plist_enter): Likewise.
8281 (plist_leave): Likewise.
8282 (remove_handle): Make static. Initialize prev.
8283
698a5e79
AC
82842003-10-22 Arnaud Charlet <charlet@act-europe.fr>
8285
6d244bbe 8286 * Makefile.in: Disable build of gnatpsta. PR ada/10110.
698a5e79
AC
8287 * cstreams.c (__gnat_full_name): Minor improvements and clean up
8288 of previous change.
8289
e97c30aa
RO
82902003-10-22 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
8291
8292 * tracebak.c (MAX): Avoid redefinition warning.
8293
8294 * init.c [sgi] (__gnat_error_handler): Remove i, unused.
8295 Change msg to const char *.
8296 (__gnat_install_handler): Remove ss, unused.
8297 [sun && __SVR4 && !__vxworks] (__gnat_error_handler): Change msg
8298 to const char *.
8299 * cstreams.c (__gnat_full_name): Declare p only when used.
8300 (__gnat_full_name) [sgi] Return buffer.
8301
65f1ebd1
AC
83022003-10-22 Arnaud Charlet <charlet@act-europe.fr>
8303
8304 * mingw32.h: New file.
0c644933
AC
8305 * gnat_wrapper.adb: New file.
8306
6d244bbe 83072003-10-22 Jerome Roussel <roussel@act-europe.fr>
0c644933
AC
8308
8309 * g-regpat.ads, g-regpat.adb (Match): new function, to know if a
8310 string match a pre compiled regular expression (the corresponding
8311 version of the function working on a raw regular expression)
8312 Fix typos in various comments
8313 Update copyright notice in spec
8314
6d244bbe 83152003-10-21 Gary Dismukes <dismukes@gnat.com>
0c644933 8316
b6b3c138 8317 * exp_ch3.adb:
0c644933
AC
8318 (Component_Needs_Simple_Initialization): Return False when the type is a
8319 packed bit array. Revise spec comments to document this case.
8320
b6b3c138 8321 * exp_prag.adb:
0c644933
AC
8322 (Expand_Pragma_Import): Set any expression on the imported object to
8323 empty to avoid initializing imported objects (in particular this
8324 covers the case of zero-initialization of bit arrays).
8325 Update copyright notice.
8326
6d244bbe 83272003-10-21 Ed Schonberg <schonberg@gnat.com>
0c644933 8328
b6b3c138 8329 * sem_ch12.adb:
0c644933
AC
8330 (Load_Parent_Of_Generic): If parent is compilation unit, stop search,
8331 a subunit is missing.
8332 (Instantiate_Subprogram_Body): If body of function is missing, set type
8333 of return expression explicitly in dummy body, to prevent cascaded
8334 errors when a subunit is missing.
8335 Fixes PR 5677.
8336
b6b3c138 8337 * sem_ch3.adb:
0c644933
AC
8338 (Access_Subprogram_Declaration): Verify that return type is valid.
8339 Fixes PR 8693.
8340
b6b3c138 8341 * sem_elab.adb:
0c644933
AC
8342 (Check_Elab_Calls): Do not apply elaboration checks if the main unit is
8343 generic.
8344 Fixes PR 12318.
8345
b6b3c138 8346 * sem_util.adb:
0c644933
AC
8347 (Corresponding_Discriminant): If the scope of the discriminant is a
8348 private type without discriminant, use its full view.
8349 Fixes PR 8247.
65f1ebd1 8350
fbf5a39b
AC
83512003-10-21 Arnaud Charlet <charlet@act-europe.fr>
8352
8353 * 3psoccon.ads, 3veacodu.adb, 3vexpect.adb, 3vsoccon.ads,
8354 3vsocthi.adb, 3vsocthi.ads, 3vtrasym.adb, 3zsoccon.ads,
8355 3zsocthi.adb, 3zsocthi.ads, 50system.ads, 51system.ads,
8356 55system.ads, 56osinte.adb, 56osinte.ads, 56taprop.adb,
8357 56taspri.ads, 56tpopsp.adb, 57system.ads, 58system.ads,
8358 59system.ads, 5aml-tgt.adb, 5bml-tgt.adb, 5csystem.ads,
8359 5dsystem.ads, 5fosinte.adb, 5gml-tgt.adb, 5hml-tgt.adb,
8360 5isystem.ads, 5lparame.adb, 5msystem.ads, 5psystem.ads,
8361 5sml-tgt.adb, 5sosprim.adb, 5stpopsp.adb, 5tsystem.ads,
8362 5usystem.ads, 5vml-tgt.adb, 5vsymbol.adb, 5vtraent.adb,
8363 5vtraent.ads, 5wml-tgt.adb, 5xparame.ads, 5xsystem.ads,
8364 5xvxwork.ads, 5yparame.ads, 5ytiitho.adb, 5zinit.adb,
8365 5zml-tgt.adb, 5zparame.ads, 5ztaspri.ads, 5ztfsetr.adb,
8366 5zthrini.adb, 5ztiitho.adb, 5ztpopsp.adb, 7stfsetr.adb,
8367 7straces.adb, 7strafor.adb, 7strafor.ads, 7stratas.adb,
8368 a-excach.adb, a-exexda.adb, a-exexpr.adb, a-exextr.adb,
8369 a-exstat.adb, a-strsup.adb, a-strsup.ads, a-stwisu.adb,
8370 a-stwisu.ads, bld.adb, bld.ads, bld-io.adb,
8371 bld-io.ads, clean.adb, clean.ads, ctrl_c.c,
8372 erroutc.adb, erroutc.ads, errutil.adb, errutil.ads,
8373 err_vars.ads, final.c, g-arrspl.adb, g-arrspl.ads,
8374 g-boubuf.adb, g-boubuf.ads, g-boumai.ads, g-bubsor.adb,
8375 g-bubsor.ads, g-comver.adb, g-comver.ads, g-ctrl_c.ads,
8376 g-dynhta.adb, g-dynhta.ads, g-eacodu.adb, g-excact.adb,
8377 g-excact.ads, g-heasor.adb, g-heasor.ads, g-memdum.adb,
8378 g-memdum.ads, gnatclean.adb, gnatsym.adb, g-pehage.adb,
8379 g-pehage.ads, g-perhas.ads, gpr2make.adb, gpr2make.ads,
8380 gprcmd.adb, gprep.adb, gprep.ads, g-semaph.adb,
8381 g-semaph.ads, g-string.adb, g-string.ads, g-strspl.ads,
8382 g-wistsp.ads, i-vthrea.adb, i-vthrea.ads, i-vxwoio.adb,
8383 i-vxwoio.ads, Makefile.generic, Makefile.prolog, Makefile.rtl,
8384 prep.adb, prep.ads, prepcomp.adb, prepcomp.ads,
8385 prj-err.adb, prj-err.ads, s-boarop.ads, s-carsi8.adb,
8386 s-carsi8.ads, s-carun8.adb, s-carun8.ads, s-casi16.adb,
8387 s-casi16.ads, s-casi32.adb, s-casi32.ads, s-casi64.adb,
8388 s-casi64.ads, s-casuti.adb, s-casuti.ads, s-caun16.adb,
8389 s-caun16.ads, s-caun32.adb, s-caun32.ads, s-caun64.adb,
8390 s-caun64.ads, scng.adb, scng.ads, s-exnint.adb,
8391 s-exnllf.adb, s-exnlli.adb, s-expint.adb, s-explli.adb,
8392 s-geveop.adb, s-geveop.ads, s-hibaen.ads, s-htable.adb,
8393 s-htable.ads, sinput-c.adb, sinput-c.ads, s-memcop.ads,
8394 socket.c, s-purexc.ads, s-scaval.adb, s-stopoo.adb,
8395 s-strcom.adb, s-strcom.ads, s-strxdr.adb, s-rident.ads,
8396 s-thread.adb, s-thread.ads, s-tpae65.adb, s-tpae65.ads,
8397 s-tporft.adb, s-traent.adb, s-traent.ads, styleg.adb,
8398 styleg.ads, styleg-c.adb, styleg-c.ads, s-veboop.adb,
8399 s-veboop.ads, s-vector.ads, symbols.adb, symbols.ads,
8400 tb-alvms.c, tb-alvxw.c, tempdir.adb, tempdir.ads,
8401 vms_conv.ads, vms_conv.adb, vms_data.ads,
8402 vxaddr2line.adb: Files added. Merge with ACT tree.
8403
8404 * 4dintnam.ads, 4mintnam.ads, 4uintnam.ads, 52system.ads,
8405 5dosinte.ads, 5etpopse.adb, 5mosinte.ads, 5qosinte.adb,
8406 5qosinte.ads, 5qstache.adb, 5qtaprop.adb, 5qtaspri.ads,
8407 5stpopse.adb, 5uintman.adb, 5uosinte.ads, adafinal.c,
8408 g-enblsp.adb, io-aux.c, scn-nlit.adb, scn-slit.adb,
8409 s-exnflt.ads, s-exngen.adb, s-exngen.ads, s-exnlfl.ads,
8410 s-exnlin.ads, s-exnsfl.ads, s-exnsin.ads, s-exnssi.ads,
8411 s-expflt.ads, s-expgen.adb, s-expgen.ads, s-explfl.ads,
8412 s-explin.ads, s-expllf.ads, s-expsfl.ads, s-expsin.ads,
8413 s-expssi.ads, style.adb: Files removed. Merge with ACT tree.
8414
8415 * 1ic.ads, 31soccon.ads, 31soliop.ads, 3asoccon.ads,
8416 3bsoccon.ads, 3gsoccon.ads, 3hsoccon.ads, 3ssoccon.ads,
8417 3ssoliop.ads, 3wsoccon.ads, 3wsocthi.adb, 3wsocthi.ads,
8418 3wsoliop.ads, 41intnam.ads, 42intnam.ads, 4aintnam.ads,
8419 4cintnam.ads, 4gintnam.ads, 4hexcpol.adb, 4hintnam.ads,
8420 4lintnam.ads, 4nintnam.ads, 4ointnam.ads, 4onumaux.ads,
8421 4pintnam.ads, 4sintnam.ads, 4vcaldel.adb, 4vcalend.adb,
8422 4vintnam.ads, 4wexcpol.adb, 4wintnam.ads, 4zintnam.ads,
8423 51osinte.adb, 51osinte.ads, 52osinte.adb, 52osinte.ads,
8424 53osinte.ads, 54osinte.ads, 5aosinte.adb, 5aosinte.ads,
8425 5asystem.ads, 5ataprop.adb, 5atasinf.ads, 5ataspri.ads,
8426 5atpopsp.adb, 5avxwork.ads, 5bosinte.adb, 5bosinte.ads,
8427 5bsystem.ads, 5cosinte.ads, 5esystem.ads, 5fintman.adb,
8428 5fosinte.ads, 5fsystem.ads, 5ftaprop.adb, 5ftasinf.ads,
8429 5ginterr.adb, 5gintman.adb, 5gmastop.adb, 5gosinte.ads,
8430 5gproinf.ads, 5gsystem.ads, 5gtaprop.adb, 5gtasinf.ads,
8431 5gtpgetc.adb, 5hosinte.adb, 5hosinte.ads, 5hsystem.ads,
8432 5htaprop.adb, 5htaspri.ads, 5htraceb.adb, 5iosinte.adb,
8433 5itaprop.adb, 5itaspri.ads, 5ksystem.ads, 5kvxwork.ads,
8434 5lintman.adb, 5lml-tgt.adb, 5losinte.ads, 5lsystem.ads,
8435 5mvxwork.ads, 5ninmaop.adb, 5nintman.adb, 5nosinte.ads,
8436 5ntaprop.adb, 5ntaspri.ads, 5ointerr.adb, 5omastop.adb,
8437 5oosinte.adb, 5oosinte.ads, 5oosprim.adb, 5oparame.adb,
8438 5osystem.ads, 5otaprop.adb, 5otaspri.ads, 5posinte.ads,
8439 5posprim.adb, 5pvxwork.ads, 5sintman.adb, 5sosinte.adb,
8440 5sosinte.ads, 5ssystem.ads, 5staprop.adb, 5stasinf.ads,
8441 5staspri.ads, 5svxwork.ads, 5tosinte.ads, 5vasthan.adb,
8442 5vinmaop.adb, 5vinterr.adb, 5vintman.adb, 5vintman.ads,
8443 5vmastop.adb, 5vosinte.adb, 5vosinte.ads, 5vosprim.adb,
8444 5vsystem.ads, 5vtaprop.adb, 5vtaspri.ads, 5vtpopde.adb,
8445 5vtpopde.ads, 5wgloloc.adb, 5wintman.adb, 5wmemory.adb,
8446 5wosprim.adb, 5wsystem.ads, 5wtaprop.adb, 5wtaspri.ads,
8447 5ysystem.ads, 5zinterr.adb, 5zintman.adb, 5zosinte.adb,
8448 5zosinte.ads, 5zosprim.adb, 5zsystem.ads, 5ztaprop.adb,
8449 6vcpp.adb, 6vcstrea.adb, 6vinterf.ads, 7sinmaop.adb,
8450 7sintman.adb, 7sosinte.adb, 7sosprim.adb, 7staprop.adb,
8451 7staspri.ads, 7stpopsp.adb, 7straceb.adb, 9drpc.adb,
8452 a-caldel.adb, a-caldel.ads, a-charac.ads, a-colien.ads,
8453 a-comlin.adb, adaint.c, adaint.h, ada-tree.def,
8454 a-diocst.adb, a-diocst.ads, a-direio.adb, a-except.adb,
8455 a-except.ads, a-excpol.adb, a-exctra.adb, a-exctra.ads,
8456 a-filico.adb, a-interr.adb, a-intsig.adb, a-intsig.ads,
8457 ali.adb, ali.ads, ali-util.adb, ali-util.ads,
8458 a-ngcefu.adb, a-ngcoty.adb, a-ngelfu.adb, a-nudira.adb,
8459 a-nudira.ads, a-nuflra.adb, a-nuflra.ads, a-reatim.adb,
8460 a-reatim.ads, a-retide.ads, a-sequio.adb, a-siocst.adb,
8461 a-siocst.ads, a-ssicst.adb, a-ssicst.ads, a-strbou.adb,
8462 a-strbou.ads, a-strfix.adb, a-strmap.adb, a-strsea.ads,
8463 a-strunb.adb, a-strunb.ads, a-ststio.adb, a-stunau.adb,
8464 a-stunau.ads, a-stwibo.adb, a-stwibo.ads, a-stwifi.adb,
8465 a-stwima.adb, a-stwiun.adb, a-stwiun.ads, a-tags.adb,
8466 a-tags.ads, a-tasatt.adb, a-taside.adb, a-teioed.adb,
8467 a-textio.adb, a-textio.ads, a-tienau.adb, a-tifiio.adb,
8468 a-tiflau.adb, a-tiflio.adb, a-tigeau.adb, a-tigeau.ads,
8469 a-tiinau.adb, a-timoau.adb, a-tiocst.adb, a-tiocst.ads,
8470 atree.adb, atree.ads, a-witeio.adb, a-witeio.ads,
8471 a-wtcstr.adb, a-wtcstr.ads, a-wtdeio.adb, a-wtedit.adb,
8472 a-wtenau.adb, a-wtflau.adb, a-wtinau.adb, a-wtmoau.adb,
8473 bcheck.adb, binde.adb, bindgen.adb, bindusg.adb,
8474 checks.adb, checks.ads, cio.c, comperr.adb,
8475 comperr.ads, csets.adb, cstand.adb, cstreams.c,
8476 debug_a.adb, debug_a.ads, debug.adb, decl.c,
8477 einfo.adb, einfo.ads, errout.adb, errout.ads,
8478 eval_fat.adb, eval_fat.ads, exp_aggr.adb, expander.adb,
8479 expander.ads, exp_attr.adb, exp_ch11.adb, exp_ch13.adb,
8480 exp_ch2.adb, exp_ch3.adb, exp_ch3.ads, exp_ch4.adb,
8481 exp_ch5.adb, exp_ch6.adb, exp_ch7.adb, exp_ch7.ads,
8482 exp_ch8.adb, exp_ch9.adb, exp_code.adb, exp_dbug.adb,
8483 exp_dbug.ads, exp_disp.adb, exp_dist.adb, expect.c,
8484 exp_fixd.adb, exp_imgv.adb, exp_intr.adb, exp_pakd.adb,
8485 exp_prag.adb, exp_strm.adb, exp_strm.ads, exp_tss.adb,
8486 exp_tss.ads, exp_util.adb, exp_util.ads, exp_vfpt.adb,
8487 fe.h, fmap.adb, fmap.ads, fname.adb,
8488 fname.ads, fname-uf.adb, fname-uf.ads, freeze.adb,
8489 freeze.ads, frontend.adb, g-awk.adb, g-awk.ads,
8490 g-busora.adb, g-busora.ads, g-busorg.adb, g-busorg.ads,
8491 g-casuti.adb, g-casuti.ads, g-catiio.adb, g-catiio.ads,
8492 g-cgi.adb, g-cgi.ads, g-cgicoo.adb, g-cgicoo.ads,
8493 g-cgideb.adb, g-cgideb.ads, g-comlin.adb, g-comlin.ads,
8494 g-crc32.adb, g-crc32.ads, g-debpoo.adb, g-debpoo.ads,
8495 g-debuti.adb, g-debuti.ads, g-diopit.adb, g-diopit.ads,
8496 g-dirope.adb, g-dirope.ads, g-dyntab.adb, g-dyntab.ads,
8497 g-except.ads, g-exctra.adb, g-exctra.ads, g-expect.adb,
8498 g-expect.ads, g-hesora.adb, g-hesora.ads, g-hesorg.adb,
8499 g-hesorg.ads, g-htable.adb, g-htable.ads, gigi.h,
8500 g-io.adb, g-io.ads, g-io_aux.adb, g-io_aux.ads,
8501 g-locfil.adb, g-locfil.ads, g-md5.adb, g-md5.ads,
8502 gmem.c, gnat1drv.adb, gnatbind.adb, gnatchop.adb,
8503 gnatcmd.adb, gnatfind.adb, gnatkr.adb, gnatlbr.adb,
8504 gnatlink.adb, gnatls.adb, gnatmake.adb, gnatmem.adb,
8505 gnatname.adb, gnatprep.adb, gnatprep.ads, gnatpsta.adb,
8506 gnatxref.adb, g-os_lib.adb, g-os_lib.ads, g-regexp.adb,
8507 g-regexp.ads, g-regist.adb, g-regist.ads, g-regpat.adb,
8508 g-regpat.ads, g-soccon.ads, g-socket.adb, g-socket.ads,
8509 g-socthi.adb, g-socthi.ads, g-soliop.ads, g-souinf.ads,
8510 g-speche.adb, g-speche.ads, g-spipat.adb, g-spipat.ads,
8511 g-spitbo.adb, g-spitbo.ads, g-sptabo.ads, g-sptain.ads,
8512 g-sptavs.ads, g-table.adb, g-table.ads, g-tasloc.adb,
8513 g-tasloc.ads, g-thread.adb, g-thread.ads, g-traceb.adb,
8514 g-traceb.ads, g-trasym.adb, g-trasym.ads, hostparm.ads,
8515 i-c.ads, i-cobol.adb, i-cpp.adb, i-cstrea.ads,
8516 i-cstrin.adb, i-cstrin.ads, impunit.adb, init.c,
8517 inline.adb, interfac.ads, i-pacdec.ads, itypes.adb,
8518 itypes.ads, i-vxwork.ads, lang.opt, lang-specs.h,
8519 layout.adb, lib.adb, lib.ads, lib-list.adb,
8520 lib-load.adb, lib-load.ads, lib-sort.adb, lib-util.adb,
8521 lib-writ.adb, lib-writ.ads, lib-xref.adb, lib-xref.ads,
8522 link.c, live.adb, make.adb, make.ads,
8523 Makefile.adalib, Makefile.in, Make-lang.in, makeusg.adb,
8524 mdll.adb, mdll-fil.adb, mdll-fil.ads, mdll-utl.adb,
8525 mdll-utl.ads, memroot.adb, memroot.ads, memtrack.adb,
8526 misc.c, mkdir.c, mlib.adb, mlib.ads,
8527 mlib-fil.adb, mlib-fil.ads, mlib-prj.adb, mlib-prj.ads,
8528 mlib-tgt.adb, mlib-tgt.ads, mlib-utl.adb, mlib-utl.ads,
8529 namet.adb, namet.ads, namet.h, nlists.ads,
8530 nlists.h, nmake.adt, opt.adb, opt.ads,
8531 osint.adb, osint.ads, osint-b.adb, osint-c.adb,
8532 par.adb, par-ch10.adb, par-ch11.adb, par-ch2.adb,
8533 par-ch3.adb, par-ch4.adb, par-ch5.adb, par-ch6.adb,
8534 par-ch9.adb, par-endh.adb, par-labl.adb, par-load.adb,
8535 par-prag.adb, par-sync.adb, par-tchk.adb, par-util.adb,
8536 prj.adb, prj.ads, prj-attr.adb, prj-attr.ads,
8537 prj-com.adb, prj-com.ads, prj-dect.adb, prj-dect.ads,
8538 prj-env.adb, prj-env.ads, prj-ext.adb, prj-ext.ads,
8539 prj-makr.adb, prj-makr.ads, prj-nmsc.adb, prj-nmsc.ads,
8540 prj-pars.adb, prj-pars.ads, prj-part.adb, prj-part.ads,
8541 prj-pp.adb, prj-pp.ads, prj-proc.adb, prj-proc.ads,
8542 prj-strt.adb, prj-strt.ads, prj-tree.adb, prj-tree.ads,
8543 prj-util.adb, prj-util.ads, raise.c, raise.h,
8544 repinfo.adb, repinfo.h, restrict.adb, restrict.ads,
8545 rident.ads, rtsfind.adb, rtsfind.ads, s-addima.ads,
8546 s-arit64.adb, s-assert.adb, s-assert.ads, s-atacco.adb,
8547 s-atacco.ads, s-auxdec.adb, s-auxdec.ads, s-bitops.adb,
8548 scans.ads, scn.adb, scn.ads, s-crc32.adb,
8549 s-crc32.ads, s-direio.adb, sem.adb, sem.ads,
8550 sem_aggr.adb, sem_attr.adb, sem_attr.ads, sem_case.adb,
8551 sem_case.ads, sem_cat.adb, sem_cat.ads, sem_ch10.adb,
8552 sem_ch11.adb, sem_ch12.adb, sem_ch12.ads, sem_ch13.adb,
8553 sem_ch13.ads, sem_ch3.adb, sem_ch3.ads, sem_ch4.adb,
8554 sem_ch5.adb, sem_ch5.ads, sem_ch6.adb, sem_ch6.ads,
8555 sem_ch7.adb, sem_ch7.ads, sem_ch8.adb, sem_ch8.ads,
8556 sem_ch9.adb, sem_disp.adb, sem_disp.ads, sem_dist.adb,
8557 sem_elab.adb, sem_eval.adb, sem_eval.ads, sem_intr.adb,
8558 sem_maps.adb, sem_mech.adb, sem_prag.adb, sem_prag.ads,
8559 sem_res.adb, sem_res.ads, sem_type.adb, sem_type.ads,
8560 sem_util.adb, sem_util.ads, sem_warn.adb, s-errrep.adb,
8561 s-errrep.ads, s-exctab.adb, s-exctab.ads, s-exnint.ads,
8562 s-exnllf.ads, s-exnlli.ads, s-expint.ads, s-explli.ads,
8563 s-expuns.ads, s-fatflt.ads, s-fatgen.adb, s-fatgen.ads,
8564 s-fatlfl.ads, s-fatllf.ads, s-fatsfl.ads, s-fileio.adb,
8565 s-fileio.ads, s-finimp.adb, s-finimp.ads, s-finroo.adb,
8566 s-finroo.ads, sfn_scan.adb, s-gloloc.adb, s-gloloc.ads,
8567 s-imgdec.adb, s-imgenu.adb, s-imgrea.adb, s-imgwch.adb,
8568 sinfo.adb, sinfo.ads, s-inmaop.ads, sinput.adb,
8569 sinput.ads, sinput-d.adb, sinput-l.adb, sinput-l.ads,
8570 sinput-p.adb, sinput-p.ads, s-interr.adb, s-interr.ads,
8571 s-intman.ads, s-maccod.ads, s-mastop.adb, s-mastop.ads,
8572 s-memory.adb, s-memory.ads, snames.adb, snames.ads,
8573 snames.h, s-osprim.ads, s-parame.ads, s-parint.ads,
8574 s-pooloc.adb, s-pooloc.ads, s-poosiz.adb, sprint.adb,
8575 s-proinf.ads, s-scaval.ads, s-secsta.adb, s-secsta.ads,
8576 s-sequio.adb, s-shasto.adb, s-shasto.ads, s-soflin.ads,
8577 s-stache.adb, s-stache.ads, s-stalib.adb, s-stalib.ads,
8578 s-stoele.ads, s-stopoo.ads, s-stratt.adb, s-stratt.ads,
8579 s-strops.adb, s-strops.ads, s-taasde.adb, s-taasde.ads,
8580 s-tadeca.adb, s-tadeca.ads, s-tadert.adb, s-tadert.ads,
8581 s-taenca.adb, s-taenca.ads, s-taprob.adb, s-taprob.ads,
8582 s-taprop.ads, s-tarest.adb, s-tarest.ads, s-tasdeb.adb,
8583 s-tasdeb.ads, s-tasinf.adb, s-tasinf.ads, s-tasini.adb,
8584 s-tasini.ads, s-taskin.adb, s-taskin.ads, s-tasque.adb,
8585 s-tasque.ads, s-tasren.adb, s-tasren.ads, s-tasres.ads,
8586 s-tassta.adb, s-tassta.ads, s-tasuti.adb, s-tasuti.ads,
8587 s-tataat.adb, s-tataat.ads, s-tpinop.adb, s-tpinop.ads,
8588 s-tpoben.adb, s-tpoben.ads, s-tpobop.adb, s-tpobop.ads,
8589 s-tposen.adb, s-tposen.ads, s-traceb.adb, s-traceb.ads,
8590 stringt.adb, stringt.ads, stringt.h, style.ads,
8591 stylesw.adb, stylesw.ads, s-unstyp.ads, s-vaflop.ads,
8592 s-valrea.adb, s-valuti.adb, s-vercon.adb, s-vmexta.adb,
8593 s-wchcnv.ads, s-wchcon.ads, s-widcha.adb, switch.adb,
8594 switch.ads, switch-b.adb, switch-c.adb, switch-m.adb,
8595 s-wwdcha.adb, s-wwdwch.adb, sysdep.c, system.ads,
8596 table.adb, table.ads, targparm.adb, targparm.ads,
8597 targtyps.c, tbuild.adb, tbuild.ads, tracebak.c,
8598 trans.c, tree_io.adb, treepr.adb, treeprs.adt,
8599 ttypes.ads, types.ads, types.h, uintp.adb,
8600 uintp.ads, uintp.h, uname.adb, urealp.adb,
8601 urealp.ads, urealp.h, usage.adb, utils2.c,
8602 utils.c, validsw.adb, validsw.ads, widechar.adb,
8603 xeinfo.adb, xnmake.adb, xref_lib.adb, xref_lib.ads,
8604 xr_tabls.adb, xr_tabls.ads, xtreeprs.adb, xsnames.adb,
8605 einfo.h, sinfo.h, treeprs.ads, nmake.ads, nmake.adb,
8606 gnatvsn.ads: Merge with ACT tree.
8607
8608 * gnatvsn.adb: Rewritten in a simpler and more efficient way.
8609
97ae108d
MM
86102003-10-20 Mark Mitchell <mark@codesourcery.com>
8611
de696511
MM
8612 * Make-lang.in (gnat_ug_unx.info): Add dependency on stmp-docobjdir.
8613 (gnat_ug_vmx.info): Likewise.
8614 (gnat_ug_vxw.info): Likewise.
8615 (gnat_ug_wnt.info): Likewise.
8616 (gnat_rm.info): Likewise.
8617 (gnat-style.info): Likewise.
8618
97ae108d
MM
8619 * Make-lang.in (ada.install-info): Remove target.
8620 (info): New target.
8621 (install-info): Likewise.
8622 (gnat_ug_unx.info): Simplify rule.
8623 (gnat_ug_vmx.info): Likewise.
8624 (gnat_ug_vxw.info): Likewise.
8625 (gnat_ug_wnt.info): Likewise.
8626 (gnat_rm.info): Likewise.
8627 (gnat-style.info): Likewise.
8628
43aba518
NN
86292003-10-14 Nathanael Nerode <neroden@gcc.gnu.org>
8630
8631 * Make-lang.in: Replace uses of $(target_alias) with
8632 $(target_noncanonical).
8633 * ada/Makefile.in: Remove unused mention of $(target_alias).
8634
62b81e45
MM
86352003-10-06 Mark Mitchell <mark@codesourcery.com>
8636
8637 * Make-lang.in (ada.info): Replace with ...
8638 (info): ... this.
8639 (ada.dvi): Replace with ...
8640 (dvi): ... this.
8641
783be936
ZW
86422003-09-29 Zack Weinberg <zack@codesourcery.com>
8643
8644 * trans.c (gigi): Use REAL_ARITHMETIC, not REAL_VALUE_ATOF, to
8645 initialize dconstp5 and dconstmp5.
8646
177560b2
RH
86472003-09-28 Richard Henderson <rth@redhat.com>
8648
8649 * trans.c (tree_transform): Update call to expand_asm_operands.
8650
f31686a3
RH
86512003-09-21 Richard Henderson <rth@redhat.com>
8652
8653 * trans.c, utils.c: Revert.
8654
7e2af53a
RH
86552003-09-21 Richard Henderson <rth@redhat.com>
8656
8657 * trans.c, utils.c: Update for DECL_SOURCE_LOCATION rename and
8658 change to const.
8659
5f1e32fa
MM
86602003-09-04 Michael Matz <matz@suse.de>
8661
8662 * misc.c: Include "target.h".
8663 * Make-lang.in (misc.o): Add dependency on target.h.
8664
61f71b34
DD
86652003-09-03 DJ Delorie <dj@redhat.com>
8666
8667 * misc.c (default_pass_by_ref): Convert to calls.return_in_memory
8668 hook.
8669
2ed26f6b
ZW
86702003-08-30 Zack Weinberg <zack@codesourcery.com>
8671
8672 * Makefile.in: Update substitutions to match changes to
8673 configure. Use include directives instead of @-insertions
8674 to read in host and target fragments. Add a rule to
8675 regenerate ada/Makefile.
8676
b2e608ca
NB
86772003-07-18 Neil Booth <neil@daikokuya.co.uk>
8678
8679 * lang-options.h: Remove.
8680 * lang.opt: Add help text.
8681
0cea056b
NS
86822003-07-07 Nathan Sidwell <nathan@codesourcery.com>
8683
8684 * trans.c (build_unit_elab, set_lineno): Adjust emit_line_note
8685 calls.
8686
cb66e385
NB
86872003-07-06 Neil Booth <neil@daikokuya.co.uk>
8688
8689 * misc.c (gnat_handle_option): Don't handle filenames.
8690
8c90b13a
L
86912003-07-04 H.J. Lu <hongjiu.lu@intel.com>
8692
8693 * Make-lang.in: Replace PWD with PWD_COMMAND.
8694 * Makefile.adalib: Likewise.
8695 * Makefile.in: Likewise.
8696
9c286213
MK
86972003-07-04 Matt Kraai <kraai@alumni.cmu.edu>
8698
8699 * misc.c (gnat_argv): Revert last change.
8700 (gnat_handle_option, gnat_init_options): Copy arguments.
8701
b9add449
NB
87022003-07-03 Neil Booth <neil@daikokuya.co.uk>
8703
9c286213 8704 * misc.c (gnat_argv): Make const.
b9add449 8705
836d77a9
NB
87062003-07-02 Neil Booth <neil@daikokuya.co.uk>
8707
8708 * misc.c (save_argc, save_argv): Keep non-static!
8709
b86f6cd9
NB
87102003-07-02 Neil Booth <neil@daikokuya.co.uk>
8711
8712 * misc.c (save_argc, save_argv): Make static.
8713 (gnat_init_options): New prototype.
8714 (gnat_init_options): Update.
8715
6344b1f1
MK
87162003-07-01 Matt Kraai <kraai@alumni.cmu.edu>
8717
8718 * gnat_ug.texi: Remove unlikely characters from @vars.
8719 * gnat_ug_vms.texi: Regenerate.
8720
2e040219
NS
87212003-06-27 Nathan Sidwell <nathan@codesourcery.com>
8722
8723 * misc.c (record_code_position): Adjust emit_note call.
8724
9eee5e72
NB
87252003-06-26 Neil Booth <neil@daikokuya.co.uk>
8726
8727 * misc.c (gnat_handle_option): Don't check for missing arguments.
8728
1f9cc6db
NS
87292003-06-20 Nathan Sidwell <nathan@codesourcery.com>
8730
8731 * utils.c (end_subprog_body): Adjust expand_function_end call.
8732
23d6baa3
MK
87332003-06-16 Matt Kraai <kraai@alumni.cmu.edu>
8734
8735 * bindgen.adb (Gen_Main_Ada, Gen_Main_C): Do not test
8736 Bind_Main_Program.
8737
be43ab4e
NB
87382003-06-15 Neil Booth <neil@daikokuya.co.uk>
8739
8740 * lang.opt: Declare Ada.
8741 * misc.c (gnat_init_options): Update.
8742
ee6b0296
NS
87432003-06-14 Nathan Sidwell <nathan@codesourcery.com>
8744
8745 * utils.c (begin_subprog_body): Adjust init_function_start call.
8746
d7b42618
NB
87472003-06-14 Neil Booth <neil@daikokuya.co.uk>
8748
8749 * Make-lang.in: Update to use options.c and options.h.
8750 * misc.c: Include options.h not aoptions.h.
8751 (gnat_handle_option): Abort on unrecognized switch.
8752 (gnat_init_options): Request Ada switches.
8753
57eb6503
NB
87542003-06-14 Neil Booth <neil@daikokuya.co.uk>
8755
8756 * lang.opt: Add -Wall.
8757 * misc.c (gnat_handle_option): Handle it.
8758
70fd6569
NB
87592003-06-12 Neil Booth <neil@daikokuya.co.uk>
8760
8761 * misc.c (gnat_handle_option): Fix warnings.
8762
8cdea5a1
MK
87632003-06-11 Matt Kraai <kraai@alumni.cmu.edu>
8764
8765 * Make-lang.in (gnatbind): Remove $(LIBIBERTY).
8766
3c900cb5
NB
87672003-06-11 Neil Booth <neil@daikokuya.co.uk>
8768
8769 * Make-lang.in: Update to handle command-line options.
8770 * lang.opt: New file.
8771 * misc.c: Include aoptions.h.
8772 (cl_options_count, cl_options): Remove.
8773 (gnat_handle_option): New.
8774 (gnat_decode_option): Remove.
8775 (LANG_HOOKS_DECODE_OPTION): Remove.
8776 (LANG_HOOKS_HANDLE_OPTION): Override.
8777
e8face4c
NN
87782003-06-10 Nathanael Nerode <neroden@gcc.gnu.org>
8779
8780 * init.c, misc.c, trans.c, utils.c: Remove dead code.
8781
4665e56c
NN
87822003-06-09 Nathanael Nerode <neroden@gcc.gnu.org>
8783
8784 * Makefile.in: Replace "host_canonical" with "host" for autoconf
8785 substitution.
8786
a165c302
NB
87872003-06-08 Neil Booth <neil@daikokuya.co.uk>
8788
8789 * Make-lang.in: Update.
8790 * misc.c: Include opts.h. Define cl_options_count and cl_options.
8791
2772ef3e
NB
87922003-06-07 Neil Booth <neil@daikokuya.co.uk>
8793
8794 * misc.c (gnat_init_options): Update.
8795
d8277a55
MK
87962003-06-05 Matt Kraai <kraai@alumni.cmu.edu>
8797
8798 * Make-lang.in (ada/b_gnatb.o-warn): Remove.
8799 * bindgen.adb (Gen_Main_C): Mark ensure_reference with
8800 __attribute__ ((__unused__)).
8801
602a82f3 88022003-06-05 Jan Hubicka <jh@suse.cz>
8f231b5d
JH
8803
8804 * Make-lang.in: Add support for stageprofile and stagefeedback
8805
3aa07c6d
MK
88062003-06-05 Matt Kraai <kraai@alumni.cmu.edu>
8807
8808 * bindgen.adb (Gen_Adafinal_C, Gen_Adainit_C, Gen_Elab_Defs_C)
8809 (Gen_Main_C, Gen_Output_File_C): Generate ISO C.
8810
f1093866
MK
88112003-06-04 Matt Kraai <kraai@alumni.cmu.edu>
8812
8813 * gnat_ug.texi (The GNAT Run-Time Library Builder gnatlbr):
8814 Remove non-VMS directive.
8815 (Switches for gnatlbr, Optimization Levels): Remove non-VMS
8816 alternatives.
8817 (Examples of gnatls Usage): Remove VMS alternative.
dee2df72
OH
8818
88192003-06-04 Olivier Hainque <hainque@act-europe.fr>
8820
2ed26f6b
ZW
8821 PR ada/9953:
8822 * 5hsystem.ads: Remove pragma Linker_Option for pthreads library,
8823 and turn ZCX_By_Default back to False since the underlying support
8824 is not quite there yet.
dee2df72 8825
80eaf415
AJ
88262003-06-01 Andreas Jaeger <aj@suse.de>
8827
8828 * utils.c (finish_record_type): Remove usages of ROUND_TYPE_SIZE
8829 and ROUND_TYPE_SIZE_UNIT.
8830
36f9020c
GB
88312003-05-22 Geert Bosch <bosch@gnat.com>
8832
8833 * gnat_rm.texi : Remove reference to Ada Core Technologies.
8834
e7b5f0c9
NS
88352003-05-03 Nathan Sidwell <nathan@codesourcery.com>
8836
8837 * trans.c (tree_transform): Use location_t and input_location
8838 directly.
8839 (build_unit_elab): Likewise.
8840 * utils.c (create_label_decl): Likewise.
8841
d479d37f
NS
88422003-05-01 Nathan Sidwell <nathan@codesourcery.com>
8843
561712fe
NS
8844 * trans.c (tree_transform, build_unit_elab,
8845 set_lineno): Rename lineno to input_line.
d479d37f
NS
8846 * utils.c (pushdecl, create_label_decl, begin_subprog_body,
8847 end_subprog_body): Likewise.
8848 * utils2.c (build_call_raise): Likewise.
8849
4f9335cd
LG
88502003-05-01 Laurent Guerby <guerby@acm.org>
8851
2ed26f6b
ZW
8852 PR ada/10546
8853 * 5iosinte.ads: Increase pthread_cond_t size to match recent
8854 LinuxThread and NPTL version, merge from ACT.
80eaf415 8855
0864034e
ZW
88562003-04-28 Zack Weinberg <zack@codesourcery.com>
8857
8858 * utils.c (convert): No need to clear TREE_CST_RTL.
8859
bcea76b6
GB
88602003-04-23 Geert Bosch <bosch@gnat.com>
8861
8862 * 1aexcept.adb, 1aexcept.ads, 1ic.ads, 1ssecsta.adb,
8863 1ssecsta.ads, 31soccon.ads, 31soliop.ads, 3asoccon.ads,
8864 3bsoccon.ads, 3gsoccon.ads, 3hsoccon.ads, 3ssoccon.ads,
8865 3ssoliop.ads, 3wsoccon.ads, 3wsocthi.adb, 3wsocthi.ads,
8866 3wsoliop.ads, 41intnam.ads, 42intnam.ads, 4aintnam.ads,
8867 4cintnam.ads, 4dintnam.ads, 4gintnam.ads, 4hexcpol.adb,
8868 4hintnam.ads, 4lintnam.ads, 4mintnam.ads, 4nintnam.ads,
8869 4ointnam.ads, 4onumaux.ads, 4pintnam.ads, 4rintnam.ads,
8870 4sintnam.ads, 4uintnam.ads, 4vcaldel.adb, 4vcalend.adb,
8871 4vcalend.ads, 4vintnam.ads, 4wcalend.adb, 4wexcpol.adb,
8872 4wintnam.ads, 4zintnam.ads, 4znumaux.ads, 4zsytaco.adb,
8873 4zsytaco.ads, 51osinte.adb, 51osinte.ads, 52osinte.adb,
8874 52osinte.ads, 52system.ads, 53osinte.ads, 54osinte.ads,
8875 5amastop.adb, 5aosinte.adb, 5aosinte.ads, 5asystem.ads,
8876 5ataprop.adb, 5atasinf.ads, 5ataspri.ads, 5atpopsp.adb,
8877 5avxwork.ads, 5bosinte.adb, 5bosinte.ads, 5bsystem.ads,
8878 5cosinte.ads, 5dosinte.ads, 5esystem.ads, 5etpopse.adb,
8879 5fintman.adb, 5fosinte.ads, 5fsystem.ads, 5ftaprop.adb,
8880 5ftasinf.ads, 5ginterr.adb, 5gintman.adb, 5gmastop.adb,
8881 5gosinte.ads, 5gproinf.adb, 5gproinf.ads, 5gsystem.ads,
8882 5gtaprop.adb, 5gtasinf.adb, 5gtasinf.ads, 5gtpgetc.adb,
8883 5hosinte.adb, 5hosinte.ads, 5hparame.ads, 5hsystem.ads,
8884 5htaprop.adb, 5htaspri.ads, 5htraceb.adb, 5iosinte.adb,
8885 5iosinte.ads, 5itaprop.adb, 5itaspri.ads, 5ksystem.ads,
8886 5kvxwork.ads, 5lintman.adb, 5lml-tgt.adb, 5losinte.ads,
8887 5lsystem.ads, 5mosinte.ads, 5mvxwork.ads, 5ninmaop.adb,
8888 5nintman.adb, 5nosinte.ads, 5ntaprop.adb, 5ntaspri.ads,
8889 5ointerr.adb, 5omastop.adb, 5oosinte.adb, 5oosinte.ads,
8890 5oosprim.adb, 5oparame.adb, 5osystem.ads, 5otaprop.adb,
8891 5otaspri.ads, 5posinte.ads, 5posprim.adb, 5pvxwork.ads,
8892 5qosinte.adb, 5qosinte.ads, 5qstache.adb, 5qtaprop.adb,
8893 5qtaspri.ads, 5rosinte.adb, 5rosinte.ads, 5rparame.adb,
8894 5sintman.adb, 5sosinte.adb, 5sosinte.ads, 5sparame.adb,
8895 5ssystem.ads, 5staprop.adb, 5stasinf.adb, 5stasinf.ads,
8896 5staspri.ads, 5stpopse.adb, 5svxwork.ads, 5tosinte.ads,
8897 5uintman.adb, 5uosinte.ads, 5vasthan.adb, 5vinmaop.adb,
8898 5vinterr.adb, 5vintman.adb, 5vintman.ads, 5vmastop.adb,
8899 5vosinte.adb, 5vosinte.ads, 5vosprim.adb, 5vosprim.ads,
8900 5vparame.ads, 5vsystem.ads, 5vtaprop.adb, 5vtaspri.ads,
8901 5vtpopde.adb, 5vtpopde.ads, 5vvaflop.adb, 5wgloloc.adb,
8902 5wintman.adb, 5wmemory.adb, 5wosinte.ads, 5wosprim.adb,
8903 5wsystem.ads, 5wtaprop.adb, 5wtaspri.ads, 5ysystem.ads,
8904 5zinterr.adb, 5zintman.adb, 5zosinte.adb, 5zosinte.ads,
8905 5zosprim.adb, 5zsystem.ads, 5ztaprop.adb, 6vcpp.adb,
8906 6vcstrea.adb, 6vinterf.ads, 7sinmaop.adb, 7sintman.adb,
8907 7sosinte.adb, 7sosprim.adb, 7staprop.adb, 7staspri.ads,
8908 7stpopsp.adb, 7straceb.adb, 86numaux.adb, 86numaux.ads,
8909 9drpc.adb, a-astaco.adb, a-astaco.ads, a-caldel.adb,
8910 a-caldel.ads, a-calend.adb, a-calend.ads, a-chahan.adb,
8911 a-chahan.ads, a-charac.ads, a-chlat1.ads, a-chlat9.ads,
8912 a-colien.adb, a-colien.ads, a-colire.adb, a-colire.ads,
8913 a-comlin.adb, a-comlin.ads, a-cwila1.ads, a-cwila9.ads,
8914 a-decima.adb, a-decima.ads, a-diocst.adb, a-diocst.ads,
8915 a-direio.adb, a-direio.ads, a-dynpri.adb, a-dynpri.ads,
8916 a-einuoc.adb, a-einuoc.ads, a-except.adb, a-except.ads,
8917 a-excpol.adb, a-exctra.adb, a-exctra.ads, a-filico.adb,
8918 a-filico.ads, a-finali.adb, a-finali.ads, a-flteio.ads,
8919 a-fwteio.ads, a-inteio.ads, a-interr.adb, a-interr.ads,
8920 a-intnam.ads, a-intsig.adb, a-intsig.ads, a-ioexce.ads,
8921 a-iwteio.ads, a-lfteio.ads, a-lfwtio.ads, a-liteio.ads,
8922 a-liwtio.ads, a-llftio.ads, a-llfwti.ads, a-llitio.ads,
8923 a-lliwti.ads, a-ncelfu.ads, a-ngcefu.adb, a-ngcefu.ads,
8924 a-ngcoty.adb, a-ngcoty.ads, a-ngelfu.adb, a-ngelfu.ads,
8925 a-nlcefu.ads, a-nlcoty.ads, a-nlelfu.ads, a-nllcef.ads,
8926 a-nllcty.ads, a-nllefu.ads, a-nscefu.ads, a-nscoty.ads,
8927 a-nselfu.ads, a-nucoty.ads, a-nudira.adb, a-nudira.ads,
8928 a-nuelfu.ads, a-nuflra.adb, a-nuflra.ads, a-numaux.ads,
8929 a-numeri.ads, a-reatim.adb, a-reatim.ads, a-retide.adb,
8930 a-retide.ads, a-sequio.adb, a-sequio.ads, a-sfteio.ads,
8931 a-sfwtio.ads, a-siocst.adb, a-siocst.ads, a-siteio.ads,
8932 a-siwtio.ads, a-ssicst.adb, a-ssicst.ads, a-ssitio.ads,
8933 a-ssiwti.ads, a-stmaco.ads, a-storio.adb, a-storio.ads,
8934 a-strbou.adb, a-strbou.ads, a-stream.ads, a-strfix.adb,
8935 a-strfix.ads, a-string.ads, a-strmap.adb, a-strmap.ads,
8936 a-strsea.adb, a-strsea.ads, a-strunb.adb, a-strunb.ads,
8937 a-ststio.adb, a-ststio.ads, a-stunau.adb, a-stunau.ads,
8938 a-stwibo.adb, a-stwibo.ads, a-stwifi.adb, a-stwifi.ads,
8939 a-stwima.adb, a-stwima.ads, a-stwise.adb, a-stwise.ads,
8940 a-stwiun.adb, a-stwiun.ads, a-suteio.adb, a-suteio.ads,
8941 a-swmwco.ads, a-swuwti.adb, a-swuwti.ads, a-sytaco.adb,
8942 a-sytaco.ads, a-tags.adb, a-tags.ads, a-tasatt.adb,
8943 a-tasatt.ads, a-taside.adb, a-taside.ads, a-teioed.adb,
8944 a-teioed.ads, a-textio.adb, a-textio.ads, a-ticoau.adb,
8945 a-ticoau.ads, a-ticoio.adb, a-ticoio.ads, a-tideau.adb,
8946 a-tideau.ads, a-tideio.adb, a-tideio.ads, a-tienau.adb,
8947 a-tienau.ads, a-tienio.adb, a-tienio.ads, a-tifiio.adb,
8948 a-tifiio.ads, a-tiflau.adb, a-tiflau.ads, a-tiflio.adb,
8949 a-tiflio.ads, a-tigeau.adb, a-tigeau.ads, a-tiinau.adb,
8950 a-tiinau.ads, a-tiinio.adb, a-tiinio.ads, a-timoau.adb,
8951 a-timoau.ads, a-timoio.adb, a-timoio.ads, a-tiocst.adb,
8952 a-tiocst.ads, a-titest.adb, a-titest.ads, a-unccon.ads,
8953 a-uncdea.ads, a-witeio.adb, a-witeio.ads, a-wtcoau.adb,
8954 a-wtcoau.ads, a-wtcoio.adb, a-wtcoio.ads, a-wtcstr.adb,
8955 a-wtcstr.ads, a-wtdeau.adb, a-wtdeau.ads, a-wtdeio.adb,
8956 a-wtdeio.ads, a-wtedit.adb, a-wtedit.ads, a-wtenau.adb,
8957 a-wtenau.ads, a-wtenio.adb, a-wtenio.ads, a-wtfiio.adb,
8958 a-wtfiio.ads, a-wtflau.adb, a-wtflau.ads, a-wtflio.adb,
8959 a-wtflio.ads, a-wtgeau.adb, a-wtgeau.ads, a-wtinau.adb,
8960 a-wtinau.ads, a-wtinio.adb, a-wtinio.ads, a-wtmoau.adb,
8961 a-wtmoau.ads, a-wtmoio.adb, a-wtmoio.ads, a-wttest.adb,
8962 a-wttest.ads, ada-tree.h, ada.ads, ada.h,
8963 adadecode.c, adadecode.h, ali-util.adb, ali-util.ads,
8964 ali.adb, ali.ads, alloc.ads, argv.c,
8965 atree.adb, atree.ads, atree.h, aux-io.c,
8966 back_end.adb, back_end.ads, bcheck.adb, bcheck.ads,
8967 binde.adb, binde.ads, binderr.adb, binderr.ads,
8968 bindgen.adb, bindgen.ads, bindusg.adb, bindusg.ads,
8969 butil.adb, butil.ads, cal.c, calendar.ads,
8970 casing.adb, casing.ads, ceinfo.adb, checks.adb,
8971 checks.ads, cio.c, comperr.adb, comperr.ads,
8972 config-lang.in, csets.adb, csets.ads, csinfo.adb,
8973 cstand.adb, cstand.ads, cuintp.c, debug.adb,
8974 debug.ads, debug_a.adb, debug_a.ads, dec-io.adb,
8975 dec-io.ads, dec.ads, deftarg.c, directio.ads,
8976 einfo.adb, einfo.ads, elists.adb, elists.ads,
8977 elists.h, errno.c, errout.adb, errout.ads,
8978 eval_fat.adb, eval_fat.ads, exit.c, exp_aggr.adb,
8979 exp_aggr.ads, exp_attr.adb, exp_attr.ads, exp_ch10.ads,
8980 exp_ch11.adb, exp_ch11.ads, exp_ch12.adb, exp_ch12.ads,
8981 exp_ch13.adb, exp_ch13.ads, exp_ch2.adb, exp_ch2.ads,
8982 exp_ch3.adb, exp_ch3.ads, exp_ch4.adb, exp_ch4.ads,
8983 exp_ch5.adb, exp_ch5.ads, exp_ch6.adb, exp_ch6.ads,
8984 exp_ch7.adb, exp_ch7.ads, exp_ch8.adb, exp_ch8.ads,
8985 exp_ch9.adb, exp_ch9.ads, exp_code.adb, exp_code.ads,
8986 exp_dbug.adb, exp_dbug.ads, exp_disp.adb, exp_disp.ads,
8987 exp_dist.adb, exp_dist.ads, exp_fixd.adb, exp_fixd.ads,
8988 exp_imgv.adb, exp_imgv.ads, exp_intr.adb, exp_intr.ads,
8989 exp_pakd.adb, exp_pakd.ads, exp_prag.adb, exp_prag.ads,
8990 exp_smem.adb, exp_smem.ads, exp_strm.adb, exp_strm.ads,
8991 exp_tss.adb, exp_tss.ads, exp_util.adb, exp_util.ads,
8992 exp_vfpt.adb, exp_vfpt.ads, expander.adb, expander.ads,
8993 fmap.adb, fmap.ads, fname-sf.adb, fname-sf.ads,
8994 fname-uf.adb, fname-uf.ads, fname.adb, fname.ads,
8995 freeze.adb, freeze.ads, frontend.adb, frontend.ads,
8996 g-awk.adb, g-awk.ads, g-busora.adb, g-busora.ads,
8997 g-busorg.adb, g-busorg.ads, g-calend.adb, g-calend.ads,
8998 g-casuti.adb, g-casuti.ads, g-catiio.adb, g-catiio.ads,
8999 g-cgi.adb, g-cgi.ads, g-cgicoo.adb, g-cgicoo.ads,
9000 g-cgideb.adb, g-cgideb.ads, g-comlin.adb, g-comlin.ads,
9001 g-crc32.adb, g-crc32.ads, g-curexc.ads, g-debpoo.adb,
9002 g-debpoo.ads, g-debuti.adb, g-debuti.ads, g-diopit.adb,
9003 g-diopit.ads, g-dirope.adb, g-dirope.ads, g-dyntab.adb,
9004 g-dyntab.ads, g-enblsp.adb, g-except.ads, g-exctra.adb,
9005 g-exctra.ads, g-expect.adb, g-expect.ads, g-flocon.ads,
9006 g-hesora.adb, g-hesora.ads, g-hesorg.adb, g-hesorg.ads,
9007 g-htable.adb, g-htable.ads, g-io.adb, g-io.ads,
9008 g-io_aux.adb, g-io_aux.ads, g-locfil.ads, g-md5.adb,
9009 g-md5.ads, g-moreex.adb, g-moreex.ads, g-os_lib.adb,
9010 g-os_lib.ads, g-regexp.adb, g-regexp.ads, g-regist.ads,
9011 g-regpat.adb, g-regpat.ads, g-soccon.ads, g-socket.adb,
9012 g-socket.ads, g-socthi.adb, g-socthi.ads, g-soliop.ads,
9013 g-souinf.ads, g-speche.adb, g-speche.ads, g-spipat.adb,
9014 g-spipat.ads, g-spitbo.adb, g-spitbo.ads, g-sptabo.ads,
9015 g-sptain.ads, g-sptavs.ads, g-table.adb, g-table.ads,
9016 g-tasloc.adb, g-tasloc.ads, g-thread.adb, g-thread.ads,
9017 g-traceb.adb, g-traceb.ads, g-trasym.adb, g-trasym.ads,
9018 get_targ.adb, get_targ.ads, gnat-style.texi, gnat.ads,
9019 gnat1drv.adb, gnat1drv.ads, gnatbind.adb, gnatbind.ads,
9020 gnatbl.c, gnatchop.adb, gnatcmd.adb, gnatcmd.ads,
9021 gnatdll.adb, gnatfind.adb, gnatkr.adb, gnatkr.ads,
9022 gnatlbr.adb, gnatlink.adb, gnatlink.ads, gnatls.adb,
9023 gnatls.ads, gnatmake.adb, gnatmake.ads, gnatmem.adb,
9024 gnatname.adb, gnatname.ads, gnatprep.adb, gnatprep.ads,
9025 gnatpsta.adb, gnatvsn.adb, gnatvsn.ads, gnatxref.adb,
9026 hlo.adb, hlo.ads, hostparm.ads, i-c.adb,
9027 i-c.ads, i-cexten.ads, i-cobol.adb, i-cobol.ads,
9028 i-cpoint.adb, i-cpoint.ads, i-cpp.adb, i-cpp.ads,
9029 i-cstrea.adb, i-cstrea.ads, i-cstrin.adb, i-cstrin.ads,
9030 i-fortra.adb, i-fortra.ads, i-os2err.ads, i-os2lib.adb,
9031 i-os2lib.ads, i-os2syn.ads, i-os2thr.ads, i-pacdec.adb,
9032 i-pacdec.ads, i-vxwork.ads, impunit.adb, impunit.ads,
9033 inline.adb, inline.ads, interfac.ads, ioexcept.ads,
9034 itypes.adb, itypes.ads, krunch.adb, krunch.ads,
9035 layout.adb, layout.ads, lib-list.adb, lib-load.adb,
9036 lib-load.ads, lib-sort.adb, lib-util.adb, lib-util.ads,
9037 lib-writ.adb, lib-writ.ads, lib-xref.adb, lib-xref.ads,
9038 lib.adb, lib.ads, live.adb, live.ads,
9039 machcode.ads, make.adb, make.ads, makeusg.adb,
9040 makeusg.ads, math_lib.adb, mdll-fil.adb, mdll-fil.ads,
9041 mdll-utl.adb, mdll-utl.ads, mdll.adb, mdll.ads,
9042 memroot.adb, memroot.ads, memtrack.adb, mlib-fil.adb,
9043 mlib-fil.ads, mlib-prj.adb, mlib-prj.ads, mlib-tgt.adb,
9044 mlib-tgt.ads, mlib-utl.adb, mlib-utl.ads, mlib.adb,
9045 mlib.ads, namet.adb, namet.ads, nlists.adb,
9046 nlists.ads, opt.adb, opt.ads, osint-b.adb,
9047 osint-b.ads, osint-c.adb, osint-c.ads, osint-l.adb,
9048 osint-l.ads, osint-m.adb, osint-m.ads, osint.adb,
9049 osint.ads, output.adb, output.ads, par-ch10.adb,
9050 par-ch11.adb, par-ch12.adb, par-ch13.adb, par-ch2.adb,
9051 par-ch3.adb, par-ch4.adb, par-ch5.adb, par-ch6.adb,
9052 par-ch7.adb, par-ch8.adb, par-ch9.adb, par-endh.adb,
9053 par-labl.adb, par-load.adb, par-prag.adb, par-sync.adb,
9054 par-tchk.adb, par-util.adb, par.adb, par.ads,
9055 prj-attr.adb, prj-attr.ads, prj-com.adb, prj-com.ads,
9056 prj-dect.adb, prj-dect.ads, prj-env.adb, prj-env.ads,
9057 prj-ext.adb, prj-ext.ads, prj-makr.adb, prj-makr.ads,
9058 prj-nmsc.adb, prj-nmsc.ads, prj-pars.adb, prj-pars.ads,
9059 prj-part.adb, prj-part.ads, prj-pp.adb, prj-pp.ads,
9060 prj-proc.adb, prj-proc.ads, prj-strt.adb, prj-strt.ads,
9061 prj-tree.adb, prj-tree.ads, prj-util.adb, prj-util.ads,
9062 prj.adb, prj.ads, repinfo.adb, repinfo.ads,
9063 restrict.adb, restrict.ads, rident.ads, rtsfind.adb,
9064 rtsfind.ads, s-addima.adb, s-addima.ads, s-arit64.adb,
9065 s-arit64.ads, s-assert.adb, s-assert.ads, s-asthan.adb,
9066 s-asthan.ads, s-atacco.adb, s-atacco.ads, s-auxdec.adb,
9067 s-auxdec.ads, s-bitops.adb, s-bitops.ads, s-chepoo.ads,
9068 s-crc32.adb, s-crc32.ads, s-direio.adb, s-direio.ads,
9069 s-errrep.adb, s-errrep.ads, s-except.ads, s-exctab.adb,
9070 s-exctab.ads, s-exnflt.ads, s-exngen.adb, s-exngen.ads,
9071 s-exnint.ads, s-exnlfl.ads, s-exnlin.ads, s-exnllf.ads,
9072 s-exnlli.ads, s-exnsfl.ads, s-exnsin.ads, s-exnssi.ads,
9073 s-expflt.ads, s-expgen.adb, s-expgen.ads, s-expint.ads,
9074 s-explfl.ads, s-explin.ads, s-expllf.ads, s-explli.ads,
9075 s-expllu.adb, s-expllu.ads, s-expmod.adb, s-expmod.ads,
9076 s-expsfl.ads, s-expsin.ads, s-expssi.ads, s-expuns.adb,
9077 s-expuns.ads, s-fatflt.ads, s-fatgen.adb, s-fatgen.ads,
9078 s-fatlfl.ads, s-fatllf.ads, s-fatsfl.ads, s-ficobl.ads,
9079 s-fileio.adb, s-fileio.ads, s-finimp.adb, s-finimp.ads,
9080 s-finroo.adb, s-finroo.ads, s-fore.adb, s-fore.ads,
9081 s-gloloc.adb, s-gloloc.ads, s-imgbiu.adb, s-imgbiu.ads,
9082 s-imgboo.adb, s-imgboo.ads, s-imgcha.adb, s-imgcha.ads,
9083 s-imgdec.adb, s-imgdec.ads, s-imgenu.adb, s-imgenu.ads,
9084 s-imgint.adb, s-imgint.ads, s-imgllb.adb, s-imgllb.ads,
9085 s-imglld.adb, s-imglld.ads, s-imglli.adb, s-imglli.ads,
9086 s-imgllu.adb, s-imgllu.ads, s-imgllw.adb, s-imgllw.ads,
9087 s-imgrea.adb, s-imgrea.ads, s-imguns.adb, s-imguns.ads,
9088 s-imgwch.adb, s-imgwch.ads, s-imgwiu.adb, s-imgwiu.ads,
9089 s-inmaop.ads, s-interr.adb, s-interr.ads, s-intman.ads,
9090 s-io.adb, s-io.ads, s-maccod.ads, s-mantis.adb,
9091 s-mantis.ads, s-mastop.adb, s-mastop.ads, s-memory.adb,
9092 s-memory.ads, s-osprim.ads, s-pack03.adb, s-pack03.ads,
9093 s-pack05.adb, s-pack05.ads, s-pack06.adb, s-pack06.ads,
9094 s-pack07.adb, s-pack07.ads, s-pack09.adb, s-pack09.ads,
9095 s-pack10.adb, s-pack10.ads, s-pack11.adb, s-pack11.ads,
9096 s-pack12.adb, s-pack12.ads, s-pack13.adb, s-pack13.ads,
9097 s-pack14.adb, s-pack14.ads, s-pack15.adb, s-pack15.ads,
9098 s-pack17.adb, s-pack17.ads, s-pack18.adb, s-pack18.ads,
9099 s-pack19.adb, s-pack19.ads, s-pack20.adb, s-pack20.ads,
9100 s-pack21.adb, s-pack21.ads, s-pack22.adb, s-pack22.ads,
9101 s-pack23.adb, s-pack23.ads, s-pack24.adb, s-pack24.ads,
9102 s-pack25.adb, s-pack25.ads, s-pack26.adb, s-pack26.ads,
9103 s-pack27.adb, s-pack27.ads, s-pack28.adb, s-pack28.ads,
9104 s-pack29.adb, s-pack29.ads, s-pack30.adb, s-pack30.ads,
9105 s-pack31.adb, s-pack31.ads, s-pack33.adb, s-pack33.ads,
9106 s-pack34.adb, s-pack34.ads, s-pack35.adb, s-pack35.ads,
9107 s-pack36.adb, s-pack36.ads, s-pack37.adb, s-pack37.ads,
9108 s-pack38.adb, s-pack38.ads, s-pack39.adb, s-pack39.ads,
9109 s-pack40.adb, s-pack40.ads, s-pack41.adb, s-pack41.ads,
9110 s-pack42.adb, s-pack42.ads, s-pack43.adb, s-pack43.ads,
9111 s-pack44.adb, s-pack44.ads, s-pack45.adb, s-pack45.ads,
9112 s-pack46.adb, s-pack46.ads, s-pack47.adb, s-pack47.ads,
9113 s-pack48.adb, s-pack48.ads, s-pack49.adb, s-pack49.ads,
9114 s-pack50.adb, s-pack50.ads, s-pack51.adb, s-pack51.ads,
9115 s-pack52.adb, s-pack52.ads, s-pack53.adb, s-pack53.ads,
9116 s-pack54.adb, s-pack54.ads, s-pack55.adb, s-pack55.ads,
9117 s-pack56.adb, s-pack56.ads, s-pack57.adb, s-pack57.ads,
9118 s-pack58.adb, s-pack58.ads, s-pack59.adb, s-pack59.ads,
9119 s-pack60.adb, s-pack60.ads, s-pack61.adb, s-pack61.ads,
9120 s-pack62.adb, s-pack62.ads, s-pack63.adb, s-pack63.ads,
9121 s-parame.adb, s-parame.ads, s-parint.adb, s-parint.ads,
9122 s-pooglo.adb, s-pooglo.ads, s-pooloc.adb, s-pooloc.ads,
9123 s-poosiz.adb, s-poosiz.ads, s-powtab.ads, s-proinf.adb,
9124 s-proinf.ads, s-rpc.adb, s-rpc.ads, s-scaval.ads,
9125 s-secsta.adb, s-secsta.ads, s-sequio.adb, s-sequio.ads,
9126 s-shasto.adb, s-shasto.ads, s-soflin.adb, s-soflin.ads,
9127 s-sopco3.adb, s-sopco3.ads, s-sopco4.adb, s-sopco4.ads,
9128 s-sopco5.adb, s-sopco5.ads, s-stache.adb, s-stache.ads,
9129 s-stalib.adb, s-stalib.ads, s-stoele.adb, s-stoele.ads,
9130 s-stopoo.ads, s-stratt.adb, s-stratt.ads, s-strops.adb,
9131 s-strops.ads, s-taasde.adb, s-taasde.ads, s-tadeca.adb,
9132 s-tadeca.ads, s-tadert.adb, s-tadert.ads, s-taenca.adb,
9133 s-taenca.ads, s-taprob.adb, s-taprob.ads, s-taprop.ads,
9134 s-tarest.adb, s-tarest.ads, s-tasdeb.adb, s-tasdeb.ads,
9135 s-tasinf.adb, s-tasinf.ads, s-tasini.adb, s-tasini.ads,
9136 s-taskin.adb, s-taskin.ads, s-tasque.adb, s-tasque.ads,
9137 s-tasren.adb, s-tasren.ads, s-tasres.ads, s-tassta.adb,
9138 s-tassta.ads, s-tasuti.adb, s-tasuti.ads, s-tataat.adb,
9139 s-tataat.ads, s-tpinop.adb, s-tpinop.ads, s-tpoben.adb,
9140 s-tpoben.ads, s-tpobop.adb, s-tpobop.ads, s-tposen.adb,
9141 s-tposen.ads, s-traceb.adb, s-traceb.ads, s-traces.adb,
9142 s-traces.ads, s-tratas.adb, s-tratas.ads, s-unstyp.ads,
9143 s-vaflop.adb, s-vaflop.ads, s-valboo.adb, s-valboo.ads,
9144 s-valcha.adb, s-valcha.ads, s-valdec.adb, s-valdec.ads,
9145 s-valenu.adb, s-valenu.ads, s-valint.adb, s-valint.ads,
9146 s-vallld.adb, s-vallld.ads, s-vallli.adb, s-vallli.ads,
9147 s-valllu.adb, s-valllu.ads, s-valrea.adb, s-valrea.ads,
9148 s-valuns.adb, s-valuns.ads, s-valuti.adb, s-valuti.ads,
9149 s-valwch.adb, s-valwch.ads, s-vercon.adb, s-vercon.ads,
9150 s-vmexta.adb, s-vmexta.ads, s-wchcnv.adb, s-wchcnv.ads,
9151 s-wchcon.ads, s-wchjis.adb, s-wchjis.ads, s-wchstw.adb,
9152 s-wchstw.ads, s-wchwts.adb, s-wchwts.ads, s-widboo.adb,
9153 s-widboo.ads, s-widcha.adb, s-widcha.ads, s-widenu.adb,
9154 s-widenu.ads, s-widlli.adb, s-widlli.ads, s-widllu.adb,
9155 s-widllu.ads, s-widwch.adb, s-widwch.ads, s-wwdcha.adb,
9156 s-wwdcha.ads, s-wwdenu.adb, s-wwdenu.ads, s-wwdwch.adb,
9157 s-wwdwch.ads, scans.adb, scans.ads, scn-nlit.adb,
9158 scn-slit.adb, scn.adb, scn.ads, sdefault.ads,
9159 sem.adb, sem.ads, sem_aggr.adb, sem_aggr.ads,
9160 sem_attr.adb, sem_attr.ads, sem_case.adb, sem_case.ads,
9161 sem_cat.adb, sem_cat.ads, sem_ch10.adb, sem_ch10.ads,
9162 sem_ch11.adb, sem_ch11.ads, sem_ch12.adb, sem_ch12.ads,
9163 sem_ch13.adb, sem_ch13.ads, sem_ch2.adb, sem_ch2.ads,
9164 sem_ch3.adb, sem_ch3.ads, sem_ch4.adb, sem_ch4.ads,
9165 sem_ch5.adb, sem_ch5.ads, sem_ch6.adb, sem_ch6.ads,
9166 sem_ch7.adb, sem_ch7.ads, sem_ch8.adb, sem_ch8.ads,
9167 sem_ch9.adb, sem_ch9.ads, sem_disp.adb, sem_disp.ads,
9168 sem_dist.adb, sem_dist.ads, sem_elab.adb, sem_elab.ads,
9169 sem_elim.adb, sem_elim.ads, sem_eval.adb, sem_eval.ads,
9170 sem_intr.adb, sem_intr.ads, sem_maps.adb, sem_maps.ads,
9171 sem_mech.adb, sem_mech.ads, sem_prag.adb, sem_prag.ads,
9172 sem_res.adb, sem_res.ads, sem_smem.adb, sem_smem.ads,
9173 sem_type.adb, sem_type.ads, sem_util.adb, sem_util.ads,
9174 sem_vfpt.adb, sem_vfpt.ads, sem_warn.adb, sem_warn.ads,
9175 sequenio.ads, sfn_scan.adb, sfn_scan.ads, sinfo-cn.adb,
9176 sinfo-cn.ads, sinfo.adb, sinfo.ads, sinput-d.adb,
9177 sinput-d.ads, sinput-l.adb, sinput-l.ads, sinput-p.adb,
9178 sinput-p.ads, sinput.adb, sinput.ads, snames.adb,
9179 snames.ads, sprint.adb, sprint.ads, stand.adb,
9180 stand.ads, stringt.adb, stringt.ads, style.adb,
9181 style.ads, stylesw.adb, stylesw.ads, switch-b.adb,
9182 switch-b.ads, switch-c.adb, switch-c.ads, switch-m.adb,
9183 switch-m.ads, switch.adb, switch.ads, system.ads,
9184 table.adb, table.ads, targparm.adb, targparm.ads,
9185 tbuild.adb, tbuild.ads, text_io.ads, trans.c,
9186 tree_gen.adb, tree_gen.ads, tree_in.adb, tree_in.ads,
9187 tree_io.adb, tree_io.ads, treepr.adb, treepr.ads,
9188 ttypef.ads, ttypes.ads, types.adb, types.ads,
9189 uintp.adb, uintp.ads, uname.adb, uname.ads,
9190 unchconv.ads, unchdeal.ads, urealp.adb, urealp.ads,
9191 usage.adb, usage.ads, validsw.adb, validsw.ads,
9192 widechar.adb, widechar.ads, xeinfo.adb, xnmake.adb,
9193 xr_tabls.adb, xr_tabls.ads, xref_lib.adb, xref_lib.ads,
9194 xsinfo.adb, xsnames.adb, xtreeprs.adb : Merge header,
9195 formatting and other trivial changes from ACT.
9196
dcf92453
ZW
91972003-04-12 Zack Weinberg <zack@codesourcery.com>
9198
9199 * gigi.h, utils2.c (build_constructor):
9200 Rename gnat_build_constructor. Use build_constructor.
9201 * decl.c (gnat_to_gnu_entity)
9202 * trans.c (tree_transform, pos_to_constructor, extract_values)
9203 * ada/utils.c (build_template, convert_to_fat_pointer, convert)
9204 (unchecked_convert)
9205 * ada/utils2.c (build_binary_op, build_call_raise, build_allocator)
9206 (fill_vms_descriptor):
9207 Update to match.
9208
d78e771d
ZW
92092003-04-06 Zack Weinberg <zack@codesourcery.com>
9210
9211 * ada-tree.def: Make fourth element for GNAT_LOOP_ID zero.
9212 * misc.c (gnat_tree_size): New function.
9213 (LANG_HOOKS_TREE_SIZE): Override.
9214
78d55cc8
JM
92152003-04-03 Jason Merrill <jason@redhat.com>
9216
9217 * misc.c (gnat_adjust_rli): #if 0.
9218
b174e2d4
GB
92192003-03-31 Geert Bosch <bosch@gnat.com>
9220
9221 PR ada/10020
9222 * link.c : Fix misspelled "const" keyword
9223
f29a2bd1
MM
92242003-03-23 Mark Mitchell <mark@codesourcery.com>
9225
9226 PR c++/7086
9227 * utils2.c: Adjust calls to put_var_into_stack.
9228
08e247b1
NN
92292003-03-12 Nathanael Nerode <neroden@gcc.gnu.org>
9230
9231 * Make-lang.in, Makefile.in, config-lang.in: GCC, not GNU CC.
9232
4bfec483
NB
92332003-03-08 Neil Booth <neil@daikokuya.co.uk>
9234
9235 * misc.c (gnat_init): Update for new prototype.
9236
3d713bb8
GB
92372003-03-05 Olivier Hainque <hainque@gnat.com>
9238
9239 ada/9961
78d55cc8
JM
9240 * raise.c (__gnat_Unwind_RaiseException): Add prototype to avoid
9241 warning, and fix return type for the IN_RTS && !SJLJ case.
3d713bb8 9242
8b89fcdf
TT
92432003-03-04 Tom Tromey <tromey@redhat.com>
9244
9245 * Make-lang.in (ada.tags): New target.
9246
3d713bb8 92472003-03-04 Olivier Hainque <hainque@act-europe.fr>
23cae84f
OH
9248
9249 ada/9911
9250 * a-except.adb (Unwind_RaiseException): Import a GNAT specific
9251 wrapper, which name remains constant whatever underlying GCC
9252 scheme.
9253
9254 * raise.c (__gnat_Unwind_RaiseException): New wrappers, providing
9255 the stable interface needed for a-except.
9256
f4ae98be
AJ
92572003-03-02 Andreas Jaeger <aj@suse.de>
9258
9259 * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
9260 gnat_ug_wnt.texi: Regenerate.
9261
5348742b
LG
92622003-03-02 Laurent Guerby <guerby@acm.org>
9263
f4ae98be 9264 * Makefile.in (install-gnatlib): Match previous change there
5348742b 9265 so it works.
f4ae98be 9266
8c108db2
AS
92672003-02-28 Andreas Schwab <schwab@suse.de>
9268
9269 * Make-lang.in (install-gnatlib): Change to ada directory before
9270 running make instead of using ada/Makefile directly.
9271
601d71bc
BE
92722003-02-18 Ben Elliston <bje@redhat.com>
9273
9274 Part of fix for PR ada/9406
9275 * gnat_ug.texi (Binder output file): Grammar fix.
9276
bf7c02dd
BE
92772003-02-18 Ben Elliston <bje@redhat.com>
9278
9279 PR other/7350
9280 * 5qtaprop.adb (Sleep): Fix typo in comment.
9281
b3a8389d
JM
92822003-02-04 Joseph S. Myers <jsm@polyomino.org.uk>
9283
9284 * gnat_rm.texi, gnat_ug.texi: Update to GFDL 1.2.
9285 * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
9286 gnat_ug_wnt.texi: Regenerate.
9287
5da14cb5
CC
92882003-02-03 Christian Cornelssen <ccorn@cs.tu-berlin.de>
9289
9290 * Make-lang.in (ada.install-info): Let $(DESTDIR)$(infodir)
9291 be created if necessary.
9292 (ada.install-common): Let $(DESTDIR)$(bindir) be created
9293 if necessary. Remove erroneous and redundant gnatchop
9294 installation commands. Test for gnatdll before attempting
9295 to install it.
9296 (ada.uninstall): Also uninstall gnatfind, gnatxref, gnatlbr,
9297 and gnatdll from all plausible locations.
9298
271bd540
RS
92992003-02-01 Richard Sandiford <rsandifo@redhat.com>
9300
9301 * utils2.c (build_unary_op): Don't check flag_volatile.
9302 * gnat_ug.texi: Remove -fvolatile from example.
9303 * gnat_ug_vxw.texi: Likewise.
9304
c1cc6a51
LG
93052003-01-29 Laurent Guerby <guerby@acm.org>
9306
d78e771d
ZW
9307 PR ada/8344
9308 * final.c: rename to adafinal.c to avoid file name conflicts with gcc file.
9309 * Makefile.in: match previous change.
9310 * Make-lang.in: match previous change.
c1cc6a51 9311
c4039eb0
JS
93122003-01-29 Joel Sherrill <joel@OARcorp.com>
9313
9314 * 5rosinte.ads: Add SIGXCPU.
9315 * 5rtpopsp.adb: New file.
9316 * Make-lang.in: Do not build gnatpsta and gnatpsys when cross.
9317 * Makefile.in: Recognize more RTEMS targets and add the RTEMS
9318 specific file 5rtpopsp.adb.
9319 * adaint.h: Add include of <stdio.h> when target is RTEMS. This
9320 is likely needed for all newlib targets.
9321 * init.c: Add RTEMS specific version of __gnat_initialize().
9322
00d29f7d
RO
93232003-01-28 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
9324
9325 * adaint.c, adaint.h, gmem.c, init.c: Update copyright year.
9326
437026ef
RO
93272003-01-27 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
9328
9329 * init.c (__gnat_error_handler): Make msg const.
9330
9331 * gmem.c (convert_addresses): Move declaration ...
9332 * adaint.h: ... here.
9333 * adaint.c (convert_addresses): Adapt addrs type to match
9334 prototype.
9335
9336 * adaint.c (__gnat_try_lock): Cast pid_t to long, adapt format.
9337
e12825cd
AS
93382003-01-24 Andreas Schwab <schwab@suse.de>
9339
9340 * ada-tree.h (SET_TYPE_DIGITS_VALUE): Add intermediate cast to
9341 size_t to avoid warning.
9342
a8729406
ZW
93432003-01-21 Zack Weinberg <zack@codesourcery.com>
9344
b09b91b9 9345 * Make-lang.in: Disable -Werror for tracebak.c and b_gnatb.c.
a8729406 9346
17211ab5
GK
93472003-01-09 Geoffrey Keating <geoffk@apple.com>
9348
9349 * gnat_rm.texi: Remove RCS version number.
9350
9351 * ada-tree.h (union lang_tree_node): Add chain_next option.
9352
1d27195c
CC
93532003-01-09 Christian Cornelssen <ccorn@cs.tu-berlin.de>
9354
9355 * Make-lang.in (ada.install-info, ada.install-common,
9356 ada.uninstall): Prepend $(DESTDIR) to the destination
9357 directory in all (un)installation commands.
9358 * Makefile.in (install-gnatlib, install-rts): Ditto.
9359
bdefb2ab
JM
93602002-12-28 Joseph S. Myers <jsm@polyomino.org.uk>
9361
9362 * gnat_rm.texi, gnat_ug.texi: Use @copying.
9363 * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
9364 gnat_ug_wnt.texi: Regenerate.
9365
46d40353
JM
93662002-12-23 Joseph S. Myers <jsm@polyomino.org.uk>
9367
9368 * gnat_rm.texi: Include gcc-common.texi. Use GCC version number
9369 only.
9370 * Make-lang.in ($(srcdir)/ada/gnat_ug_unx.info,
9371 $(srcdir)/ada/gnat_ug_vms.info, $(srcdir)/ada/gnat_ug_vxw.info,
9372 $(srcdir)/ada/gnat_ug_wnt.info, $(srcdir)/ada/gnat_rm.info,
9373 ada/gnat_ug_unx.dvi, ada/gnat_ug_vms.dvi, ada/gnat_ug_vxw.dvi,
9374 ada/gnat_ug_wnt.dvi, ada/gnat_rm.dvi): Depend on
9375 $(srcdir)/doc/include/gcc-common.texi.
9376
d2f97d3e
GB
93772002-12-15 Geert Bosch <bosch@gnat.com>
9378
9379 * sem_ch6.adb (Analyze_Subprogram_Body): Fix typo and formatting
9380
93a81b02
GB
93812002-12-14 Geert Bosch <bosch@gnat.com>
9382
4977bab6
ZW
9383 * sem_ch6.adb (Analyze_Subprogram_Body): Recognize additional
9384 case of a body created for a Renaming_As_Body, on which
9385 conformance checks are not performed. Fixes PR ada/5690.
9386
93872002-11-30 Zack Weinberg <zack@codesourcery.com>
9388
9389 * cuintp.c, decl.c, deftarg.c, misc.c, targtyps.c, trans.c,
9390 utils.c, utils2.c: Include coretypes.h and tm.h, and system.h when
9391 not already included.
9392 * Make-lang.in: Update dependencies.
93a81b02 9393
dfc15546
NN
93942002-11-18 Nathanael Nerode <neroden@gcc.gnu.org>
9395 * adaint.c (__gnat_tmp_name): Better, but good enough for now,
4977bab6 9396 solution to buffer overflow bug on GNU/Linux.
dfc15546 9397
8b54424d
NN
93982002-11-14 Nathanael Nerode <neroden@gcc.gnu.org>
9399 Closes PR ada/5856 and PR ada/6919 !
9400 * bindgen.adb: Remove all references to Public_Version.
9401 * comperr.adb: Remove all references to Public_Version and
9402 GNATPRO_Version; correct bug reporting instructions.
9403 * comperr.ads: Change to match bug box.
9404 * gnatvsn.ads: Remove all references to Public version and
9405 GNATPRO version.
9406
cc41268d 94072002-11-13 Nathanael Nerode <neroden@gcc.gnu.org>
1a083c0e
NN
9408 PR ada/6919
9409 * adaint.c (__gnat_tmp_name): Remove buffer overflow bug on
9410 GNU/Linux.
9411
cc41268d
NN
9412 PR ada/6558
9413 * config-lang.in: Remove diff_excludes.
9414
1c7b0712
GS
94152002-11-05 Graham Stott <graham.stott@btinternet.com>
9416 PR ada/8358
9417 * trans.c (gnu_pending_elaboration_lists): New GC root.
4977bab6 9418 (build_unit_elab): Use..
1c7b0712 9419
1c4048ca
GB
94202002-10-30 Geert Bosch <bosch@gnat.com>
9421 PR ada/6558
9422 * misc.c : Include optabs.h
9423
9424 * Make-lang.in (misc.o): Add dependency on optabs.h
9425
f0d96f9c 94262002-10-29 Geert Bosch <bosch@gnat.com>
4977bab6 9427 PR ada/6558
f0d96f9c
GB
9428 * Make-lang.in (gnatbind): Depend on CONFIG_H
9429
a7512dec 94302002-10-29 Geert bosch <bosch@gnat.com>
4977bab6
ZW
9431 PR ada/6558
9432 * misc.c: Unrevert misc.c (1.13)
a7512dec 9433
c6362f4f
NN
94342002-10-28 Nathanael Nerode <neroden@gcc.gnu.org>
9435
9436 * a-chlat9.ads a-cwila9.ads a-dynpri.adb a-retide.adb: Update
9437 maintainership comments.
9438
94392002-09-25 Nathanael Nerode <neroden@gcc.gnu.org>
91ed4b19 9440 PR ada/5904
4977bab6
ZW
9441 * 5ataprop.adb 5atpopsp.adb 5bosinte.adb 5ftaprop.adb
9442 5gtaprop.adb 5htaprop.adb 5rosinte.ads 5staprop.adb
9443 5stpopse.adb 5vtaspri.ads 5zintman.adb 5ztaprop.adb
9444 7staprop.adb: Correct statements in comments about
91ed4b19
NN
9445 maintainership of GNAT.
9446
1f02b6af 9447 PR ada/5904
4977bab6
ZW
9448 * 1ssecsta.adb 1ssecsta.ads adadecode.c adadecode.h aux-io.c
9449 gnatname.adb gnatname.ads mkdir.c osint-b.adb osint-b.ads
9450 osint-c.adb osint-c.ads osint-l.adb osint-l.ads osint-m.adb
9451 osint-m.ads prj-makr.adb prj-makr.ads prj-pp.adb prj-pp.ads
9452 s-atacco.ads s-traceb.adb s-traceb.ads s-traces.adb
9453 s-traces.ads s-tratas.adb s-tratas.ads sinput-d.adb
9454 sinput-d.ads switch-b.adb switch-b.ads switch-c.adb
1f02b6af
NN
9455 switch-c.ads switch-m.adb switch-m.ads: Correct statements in
9456 comments about maintainership of GNAT.
9457
71ff80dc 9458 PR ada/6919 (forward port of patch for PR ada/5904)
4977bab6
ZW
9459 * 1aexcept.adb 1aexcept.ads 41intnam.ads 42intnam.ads
9460 4aintnam.ads 4cintnam.ads 4dintnam.ads 4hexcpol.adb
9461 4lintnam.ads 4mintnam.ads 4nintnam.ads 4onumaux.ads
9462 4pintnam.ads 4rintnam.ads 4sintnam.ads 4uintnam.ads
9463 4vcalend.adb 4vintnam.ads 4wcalend.adb 4wexcpol.adb
9464 4wintnam.ads 4zintnam.ads 4znumaux.ads 4zsytaco.adb
9465 4zsytaco.ads 51osinte.adb 51osinte.ads 52osinte.adb
9466 52osinte.ads 52system.ads 53osinte.ads 5aosinte.ads
9467 5asystem.ads 5atasinf.ads 5ataspri.ads 5avxwork.ads
9468 5bosinte.ads 5bsystem.ads 5cosinte.ads 5dosinte.ads
9469 5esystem.ads 5fosinte.ads 5fsystem.ads 5ftasinf.ads
9470 5ginterr.adb 5gmastop.adb 5gosinte.ads 5gproinf.adb
9471 5gproinf.ads 5gsystem.ads 5gtasinf.adb 5gtasinf.ads
9472 5gtpgetc.adb 5hparame.ads 5hsystem.ads 5htaspri.ads
9473 5iosinte.ads 5itaspri.ads 5ksystem.ads 5kvxwork.ads
9474 5losinte.ads 5lsystem.ads 5mosinte.ads 5mvxwork.ads
9475 5ninmaop.adb 5nintman.adb 5nosinte.ads 5ntaspri.ads
9476 5oosprim.adb 5oparame.adb 5osystem.ads 5posinte.ads
9477 5posprim.adb 5pvxwork.ads 5rosinte.ads 5rparame.adb
9478 5sintman.adb 5sosinte.ads 5sparame.adb 5ssystem.ads
9479 5stasinf.adb 5stasinf.ads 5staspri.ads 5svxwork.ads
9480 5tosinte.ads 5uosinte.ads 5vasthan.adb 5vinterr.adb
9481 5vintman.ads 5vosinte.ads 5vosprim.adb 5vosprim.ads
9482 5vparame.ads 5vsystem.ads 5vtaspri.ads 5vtpopde.adb
9483 5vtpopde.ads 5vvaflop.adb 5wintman.adb 5wmemory.adb
9484 5wosinte.ads 5wosprim.adb 5wsystem.ads 5wtaprop.adb
9485 5wtaspri.ads 5ysystem.ads 5zinterr.adb 5zosinte.adb
9486 5zosinte.ads 5zosprim.adb 5zsystem.ads 6vcpp.adb 6vcstrea.adb
9487 7sosprim.adb 86numaux.adb 86numaux.ads 9drpc.adb a-astaco.adb
9488 a-caldel.ads a-calend.adb a-calend.ads a-chahan.adb
9489 a-chahan.ads a-colien.adb a-colien.ads a-colire.adb
9490 a-colire.ads a-comlin.adb a-comlin.ads a-cwila1.ads
9491 a-decima.adb a-decima.ads a-diocst.adb a-diocst.ads
9492 a-direio.adb a-direio.ads a-einuoc.adb a-einuoc.ads
9493 a-except.adb a-except.ads a-excpol.adb a-exctra.adb
9494 a-exctra.ads a-filico.adb a-filico.ads a-finali.adb
9495 a-finali.ads a-interr.ads a-intsig.adb a-intsig.ads
9496 a-ngcefu.adb a-ngcoty.adb a-ngcoty.ads a-ngelfu.adb
9497 a-nudira.adb a-nudira.ads a-nuflra.adb a-nuflra.ads
9498 a-numaux.ads a-reatim.ads a-retide.ads a-sequio.adb
9499 a-sequio.ads a-siocst.adb a-siocst.ads a-ssicst.adb
9500 a-ssicst.ads a-stmaco.ads a-storio.adb a-strbou.adb
9501 a-strbou.ads a-stream.ads a-strfix.adb a-strfix.ads
9502 a-strmap.adb a-strmap.ads a-strsea.adb a-strsea.ads
9503 a-strunb.adb a-strunb.ads a-ststio.adb a-ststio.ads
9504 a-stunau.adb a-stunau.ads a-stwibo.adb a-stwibo.ads
9505 a-stwifi.adb a-stwima.adb a-stwima.ads a-stwise.adb
9506 a-stwise.ads a-stwiun.adb a-stwiun.ads a-suteio.adb
9507 a-suteio.ads a-swmwco.ads a-swuwti.adb a-swuwti.ads
9508 a-sytaco.adb a-sytaco.ads a-tags.adb a-tags.ads a-tasatt.ads
9509 a-taside.adb a-taside.ads a-teioed.adb a-teioed.ads
9510 a-textio.adb a-textio.ads a-ticoau.adb a-ticoau.ads
9511 a-ticoio.adb a-ticoio.ads a-tideau.adb a-tideau.ads
9512 a-tideio.adb a-tideio.ads a-tienau.adb a-tienau.ads
9513 a-tienio.adb a-tienio.ads a-tifiio.adb a-tifiio.ads
9514 a-tiflau.adb a-tiflau.ads a-tiflio.adb a-tiflio.ads
9515 a-tigeau.adb a-tigeau.ads a-tiinau.adb a-tiinau.ads
9516 a-tiinio.adb a-tiinio.ads a-timoau.adb a-timoau.ads
9517 a-timoio.adb a-timoio.ads a-tiocst.adb a-tiocst.ads
9518 a-titest.adb a-witeio.adb a-witeio.ads a-wtcoau.adb
9519 a-wtcoau.ads a-wtcoio.adb a-wtcstr.adb a-wtcstr.ads
9520 a-wtdeau.adb a-wtdeau.ads a-wtdeio.adb a-wtdeio.ads
9521 a-wtedit.adb a-wtedit.ads a-wtenau.adb a-wtenau.ads
9522 a-wtenio.adb a-wtenio.ads a-wtfiio.adb a-wtfiio.ads
9523 a-wtflau.adb a-wtflau.ads a-wtflio.adb a-wtflio.ads
9524 a-wtgeau.adb a-wtgeau.ads a-wtinau.adb a-wtinau.ads
9525 a-wtinio.adb a-wtmoau.adb a-wtmoau.ads a-wtmoio.adb
9526 a-wtmoio.ads a-wttest.adb ada-tree.def ada-tree.h ada.h
9527 adaint.c adaint.h ali-util.adb ali-util.ads ali.adb ali.ads
9528 alloc.ads argv.c atree.adb atree.ads atree.h back_end.adb
9529 back_end.ads bcheck.adb bcheck.ads binde.adb binde.ads
9530 binderr.adb binderr.ads bindgen.adb bindgen.ads bindusg.adb
9531 bindusg.ads butil.adb butil.ads cal.c casing.adb casing.ads
9532 ceinfo.adb checks.adb checks.ads cio.c comperr.adb comperr.ads
9533 csets.adb csets.ads csinfo.adb cstand.adb cstand.ads
9534 cstreams.c cuintp.c debug.adb debug.ads debug_a.adb
9535 debug_a.ads dec-io.adb dec-io.ads dec.ads decl.c deftarg.c
9536 einfo.adb einfo.ads einfo.h elists.adb elists.ads elists.h
9537 errno.c errout.adb errout.ads eval_fat.adb eval_fat.ads exit.c
9538 exp_aggr.adb exp_aggr.ads exp_attr.adb exp_attr.ads
9539 exp_ch10.ads exp_ch11.adb exp_ch11.ads exp_ch12.adb
9540 exp_ch12.ads exp_ch13.adb exp_ch13.ads exp_ch2.adb exp_ch2.ads
9541 exp_ch3.adb exp_ch3.ads exp_ch4.adb exp_ch4.ads exp_ch5.adb
9542 exp_ch5.ads exp_ch6.adb exp_ch6.ads exp_ch7.adb exp_ch7.ads
9543 exp_ch8.adb exp_ch8.ads exp_ch9.adb exp_ch9.ads exp_code.adb
9544 exp_code.ads exp_dbug.adb exp_dbug.ads exp_disp.adb
9545 exp_disp.ads exp_dist.adb exp_dist.ads exp_fixd.adb
9546 exp_fixd.ads exp_imgv.adb exp_imgv.ads exp_intr.adb
9547 exp_intr.ads exp_pakd.adb exp_pakd.ads exp_prag.adb
9548 exp_prag.ads exp_smem.adb exp_smem.ads exp_strm.adb
9549 exp_strm.ads exp_tss.adb exp_tss.ads exp_util.adb exp_util.ads
9550 exp_vfpt.adb exp_vfpt.ads expander.adb expander.ads fe.h
9551 final.c fmap.adb fmap.ads fname-sf.adb fname-sf.ads
9552 fname-uf.adb fname-uf.ads fname.adb fname.ads freeze.adb
9553 freeze.ads frontend.adb frontend.ads g-calend.ads g-comlin.adb
9554 g-debpoo.adb g-debpoo.ads g-locfil.adb g-os_lib.ads
9555 g-regist.adb g-regist.ads get_targ.adb get_targ.ads gigi.h
9556 gmem.c gnat1drv.adb gnat1drv.ads gnat_ug.texi gnatbind.adb
9557 gnatbind.ads gnatbl.c gnatcmd.adb gnatcmd.ads gnatdll.adb
9558 gnatfind.adb gnatkr.adb gnatkr.ads gnatlbr.adb gnatlink.adb
9559 gnatlink.ads gnatls.adb gnatls.ads gnatmake.adb gnatmake.ads
9560 gnatmem.adb gnatprep.adb gnatprep.ads gnatpsta.adb gnatvsn.ads
9561 gnatxref.adb hlo.adb hlo.ads hostparm.ads i-c.adb i-cexten.ads
9562 i-cobol.adb i-cobol.ads i-cpoint.adb i-cpoint.ads i-cpp.adb
9563 i-cpp.ads i-cstrea.adb i-cstrea.ads i-cstrin.adb i-cstrin.ads
9564 i-fortra.adb i-os2err.ads i-os2lib.adb i-os2lib.ads
9565 i-os2syn.ads i-os2thr.ads i-pacdec.adb i-pacdec.ads
9566 impunit.adb impunit.ads init.c inline.adb inline.ads io-aux.c
9567 itypes.adb itypes.ads krunch.adb krunch.ads lang-options.h
9568 lang-specs.h layout.adb layout.ads lib-list.adb lib-load.adb
9569 lib-load.ads lib-sort.adb lib-util.adb lib-util.ads
9570 lib-writ.adb lib-writ.ads lib-xref.adb lib-xref.ads lib.adb
9571 lib.ads link.c live.adb live.ads make.adb make.ads makeusg.adb
9572 makeusg.ads math_lib.adb mdll.adb mdll.ads memtrack.adb misc.c
9573 namet.adb namet.ads namet.h nlists.adb nlists.ads nlists.h
9574 nmake.adb nmake.ads nmake.adt opt.adb opt.ads osint.adb
9575 osint.ads output.adb output.ads par-ch10.adb par-ch11.adb
9576 par-ch12.adb par-ch13.adb par-ch2.adb par-ch3.adb par-ch4.adb
9577 par-ch5.adb par-ch6.adb par-ch7.adb par-ch8.adb par-ch9.adb
9578 par-endh.adb par-labl.adb par-load.adb par-prag.adb
9579 par-sync.adb par-tchk.adb par-util.adb par.adb par.ads
9580 prj-attr.adb prj-attr.ads prj-com.adb prj-com.ads prj-dect.adb
9581 prj-dect.ads prj-env.adb prj-env.ads prj-ext.adb prj-ext.ads
9582 prj-nmsc.adb prj-nmsc.ads prj-pars.adb prj-pars.ads
9583 prj-part.adb prj-part.ads prj-proc.adb prj-proc.ads
9584 prj-strt.adb prj-strt.ads prj-tree.adb prj-tree.ads
9585 prj-util.adb prj-util.ads prj.adb prj.ads raise.c raise.h
9586 repinfo.adb repinfo.ads repinfo.h restrict.adb restrict.ads
9587 rident.ads rtsfind.adb rtsfind.ads s-addima.adb s-addima.ads
9588 s-arit64.adb s-arit64.ads s-assert.adb s-assert.ads
9589 s-asthan.adb s-asthan.ads s-atacco.adb s-auxdec.adb
9590 s-auxdec.ads s-bitops.adb s-bitops.ads s-chepoo.ads
9591 s-direio.adb s-direio.ads s-except.ads s-exctab.adb
9592 s-exctab.ads s-exnflt.ads s-exngen.adb s-exngen.ads
9593 s-exnint.ads s-exnlfl.ads s-exnlin.ads s-exnllf.ads
9594 s-exnlli.ads s-exnsfl.ads s-exnsin.ads s-exnssi.ads
9595 s-expflt.ads s-expgen.adb s-expgen.ads s-expint.ads
9596 s-explfl.ads s-explin.ads s-expllf.ads s-explli.ads
9597 s-expllu.adb s-expllu.ads s-expmod.adb s-expmod.ads
9598 s-expsfl.ads s-expsin.ads s-expssi.ads s-expuns.adb
9599 s-expuns.ads s-fatflt.ads s-fatgen.adb s-fatgen.ads
9600 s-fatlfl.ads s-fatllf.ads s-fatsfl.ads s-ficobl.ads
9601 s-fileio.adb s-fileio.ads s-finimp.adb s-finimp.ads
9602 s-finroo.adb s-finroo.ads s-fore.adb s-fore.ads s-imgbiu.adb
9603 s-imgbiu.ads s-imgboo.adb s-imgboo.ads s-imgcha.adb
9604 s-imgcha.ads s-imgdec.adb s-imgdec.ads s-imgenu.adb
9605 s-imgenu.ads s-imgint.adb s-imgint.ads s-imgllb.adb
9606 s-imgllb.ads s-imglld.adb s-imglld.ads s-imglli.adb
9607 s-imglli.ads s-imgllu.adb s-imgllu.ads s-imgllw.adb
9608 s-imgllw.ads s-imgrea.adb s-imgrea.ads s-imguns.adb
9609 s-imguns.ads s-imgwch.adb s-imgwch.ads s-imgwiu.adb
9610 s-imgwiu.ads s-inmaop.ads s-interr.adb s-interr.ads
9611 s-intman.ads s-io.adb s-io.ads s-maccod.ads s-mantis.adb
9612 s-mantis.ads s-memory.adb s-memory.ads s-osprim.ads
9613 s-pack03.adb s-pack03.ads s-pack05.adb s-pack05.ads
9614 s-pack06.adb s-pack06.ads s-pack07.adb s-pack07.ads
9615 s-pack09.adb s-pack09.ads s-pack10.adb s-pack10.ads
9616 s-pack11.adb s-pack11.ads s-pack12.adb s-pack12.ads
9617 s-pack13.adb s-pack13.ads s-pack14.adb s-pack14.ads
9618 s-pack15.adb s-pack15.ads s-pack17.adb s-pack17.ads
9619 s-pack18.adb s-pack18.ads s-pack19.adb s-pack19.ads
9620 s-pack20.adb s-pack20.ads s-pack21.adb s-pack21.ads
9621 s-pack22.adb s-pack22.ads s-pack23.adb s-pack23.ads
9622 s-pack24.adb s-pack24.ads s-pack25.adb s-pack25.ads
9623 s-pack26.adb s-pack26.ads s-pack27.adb s-pack27.ads
9624 s-pack28.adb s-pack28.ads s-pack29.adb s-pack29.ads
9625 s-pack30.adb s-pack30.ads s-pack31.adb s-pack31.ads
9626 s-pack33.adb s-pack33.ads s-pack34.adb s-pack34.ads
9627 s-pack35.adb s-pack35.ads s-pack36.adb s-pack36.ads
9628 s-pack37.adb s-pack37.ads s-pack38.adb s-pack38.ads
9629 s-pack39.adb s-pack39.ads s-pack40.adb s-pack40.ads
9630 s-pack41.adb s-pack41.ads s-pack42.adb s-pack42.ads
9631 s-pack43.adb s-pack43.ads s-pack44.adb s-pack44.ads
9632 s-pack45.adb s-pack45.ads s-pack46.adb s-pack46.ads
9633 s-pack47.adb s-pack47.ads s-pack48.adb s-pack48.ads
9634 s-pack49.adb s-pack49.ads s-pack50.adb s-pack50.ads
9635 s-pack51.adb s-pack51.ads s-pack52.adb s-pack52.ads
9636 s-pack53.adb s-pack53.ads s-pack54.adb s-pack54.ads
9637 s-pack55.adb s-pack55.ads s-pack56.adb s-pack56.ads
9638 s-pack57.adb s-pack57.ads s-pack58.adb s-pack58.ads
9639 s-pack59.adb s-pack59.ads s-pack60.adb s-pack60.ads
9640 s-pack61.adb s-pack61.ads s-pack62.adb s-pack62.ads
9641 s-pack63.adb s-pack63.ads s-parame.adb s-parame.ads
9642 s-parint.adb s-parint.ads s-pooglo.adb s-pooglo.ads
9643 s-pooloc.adb s-pooloc.ads s-poosiz.adb s-poosiz.ads
9644 s-powtab.ads s-proinf.adb s-proinf.ads s-rpc.adb s-rpc.ads
9645 s-scaval.ads s-secsta.adb s-secsta.ads s-sequio.adb
9646 s-sequio.ads s-shasto.adb s-shasto.ads s-soflin.adb
9647 s-soflin.ads s-sopco3.adb s-sopco3.ads s-sopco4.adb
9648 s-sopco4.ads s-sopco5.adb s-sopco5.ads s-stache.adb
9649 s-stache.ads s-stalib.adb s-stalib.ads s-stoele.adb
9650 s-stopoo.ads s-stratt.adb s-stratt.ads s-strops.adb
9651 s-strops.ads s-taprob.ads s-taprop.ads s-tarest.ads
9652 s-tasdeb.adb s-tasdeb.ads s-tasinf.adb s-tasinf.ads
9653 s-tasini.ads s-taskin.ads s-tasren.ads s-tasres.ads
9654 s-tassta.ads s-tpinop.adb s-tpinop.ads s-tpoben.ads
9655 s-tpobop.ads s-unstyp.ads s-vaflop.adb s-vaflop.ads
9656 s-valboo.adb s-valboo.ads s-valcha.adb s-valcha.ads
9657 s-valdec.adb s-valdec.ads s-valenu.adb s-valenu.ads
9658 s-valint.adb s-valint.ads s-vallld.adb s-vallld.ads
9659 s-vallli.adb s-vallli.ads s-valllu.adb s-valllu.ads
9660 s-valrea.adb s-valrea.ads s-valuns.adb s-valuns.ads
9661 s-valuti.adb s-valuti.ads s-valwch.adb s-valwch.ads
9662 s-vercon.adb s-vercon.ads s-vmexta.adb s-vmexta.ads
9663 s-wchcnv.adb s-wchcnv.ads s-wchcon.ads s-wchjis.adb
9664 s-wchjis.ads s-wchstw.adb s-wchstw.ads s-wchwts.adb
9665 s-wchwts.ads s-widboo.adb s-widboo.ads s-widcha.adb
9666 s-widcha.ads s-widenu.adb s-widenu.ads s-widlli.adb
9667 s-widlli.ads s-widllu.adb s-widllu.ads s-widwch.adb
9668 s-widwch.ads s-wwdcha.adb s-wwdcha.ads s-wwdenu.adb
9669 s-wwdenu.ads s-wwdwch.adb s-wwdwch.ads scans.adb scans.ads
9670 scn-nlit.adb scn-slit.adb scn.adb scn.ads sdefault.ads sem.adb
9671 sem.ads sem_aggr.adb sem_aggr.ads sem_attr.adb sem_attr.ads
9672 sem_case.adb sem_case.ads sem_cat.adb sem_cat.ads sem_ch10.adb
9673 sem_ch10.ads sem_ch11.adb sem_ch11.ads sem_ch12.adb
9674 sem_ch12.ads sem_ch13.adb sem_ch13.ads sem_ch2.adb sem_ch2.ads
9675 sem_ch3.adb sem_ch3.ads sem_ch4.adb sem_ch4.ads sem_ch5.adb
9676 sem_ch5.ads sem_ch6.adb sem_ch6.ads sem_ch7.adb sem_ch7.ads
9677 sem_ch8.adb sem_ch8.ads sem_ch9.adb sem_ch9.ads sem_disp.adb
9678 sem_disp.ads sem_dist.adb sem_dist.ads sem_elab.adb
9679 sem_elab.ads sem_elim.adb sem_elim.ads sem_eval.adb
9680 sem_eval.ads sem_intr.adb sem_intr.ads sem_maps.adb
9681 sem_maps.ads sem_mech.adb sem_mech.ads sem_prag.adb
9682 sem_prag.ads sem_res.adb sem_res.ads sem_smem.adb sem_smem.ads
9683 sem_type.adb sem_type.ads sem_util.adb sem_util.ads
9684 sem_vfpt.adb sem_vfpt.ads sem_warn.adb sem_warn.ads
9685 sfn_scan.adb sfn_scan.ads sinfo-cn.adb sinfo-cn.ads sinfo.adb
9686 sinfo.ads sinfo.h sinput-l.adb sinput-l.ads sinput-p.adb
9687 sinput-p.ads sinput.adb sinput.ads snames.adb snames.ads
9688 snames.h sprint.adb sprint.ads stand.adb stand.ads stringt.adb
9689 stringt.ads stringt.h style.adb style.ads stylesw.adb
9690 stylesw.ads switch.adb switch.ads sysdep.c system.ads
9691 table.adb table.ads targparm.adb targparm.ads targtyps.c
9692 tbuild.adb tbuild.ads trans.c tree_gen.adb tree_gen.ads
9693 tree_in.adb tree_in.ads tree_io.adb tree_io.ads treepr.adb
9694 treepr.ads treeprs.ads treeprs.adt ttypef.ads ttypes.ads
9695 types.adb types.ads types.h uintp.adb uintp.ads uintp.h
9696 uname.adb uname.ads urealp.adb urealp.ads urealp.h usage.adb
9697 usage.ads utils.c utils2.c validsw.adb validsw.ads
9698 widechar.adb widechar.ads xeinfo.adb xnmake.adb xr_tabls.adb
9699 xr_tabls.ads xref_lib.adb xref_lib.ads xsinfo.adb xsnames.adb
71ff80dc
NN
9700 xtreeprs.adb: Correct statements in comments about maintainership
9701 of GNAT.
9702
b4f94ac1
ZW
97032002-09-23 Zack Weinberg <zack@codesourcery.com>
9704
9705 * Make-lang.in (EXTRA_GNATBIND_OBJS): Add version.o.
9706 * Makefile.in (TOOLS_LIBS): Add ../../version.o.
9707 * gnatvsn.ads: Gnat_Version_String is now a function.
9708 * gnatvsn.adb: New file. When asked for Gnat_Version_String,
9709 copy the C version_string into a String and return it.
9710 * gnatcmd.adb, gnatkr.adb, gnatlbr.adb, gnatlink.adb,
9711 gnatls.adb,gnatmake.adb, gnatprep.adb, gnatpsta.adb:
9712 Remove pragma Ident (Gnat_Version_String). If this was the
9713 sole use of package Gnatvsn, remove the with statement too.
9714 * gnat1drv.adb: Tweak -gnatv output.
9715
eaff3bf8
RH
97162002-09-17 Richard Henderson <rth@redhat.com>
9717
9718 * trans.c (tree_transform): Use real_ldexp not REAL_VALUE_LDEXP.
9719 * config/dsp16xx/dsp16xx.md (fixuns_trunchfhi2): Use real_2expN.
9720 * config/mips/mips.md (fixuns_truncdfsi2): Likewise.
9721 (fixuns_truncdfdi2, fixuns_truncsfsi2, fixuns_truncsfdi2): Likewise.
9722 * config/m68k/m68k.c (floating_exact_log2): Use real_exponent
9723 and real_2expN instead of a loop.
9724 * doc/tm.texi (REAL_VALUE_LDEXP): Remove.
9725 (REAL_VALUE_RNDZINT, REAL_VALUE_UNSIGNED_RNDZINT): Remove.
9726
d241f75b 97272002-08-25 Andre Leis <a.leis@gmx.net>
f4ae98be 9728 David Billinghurst (David.Billinghurst@riotinto.com>
d241f75b 9729
f4ae98be 9730 * sysdep.c (__gnat_ttyname): include <termios.h> on cygwin
d241f75b 9731
4320085a
RO
97322002-08-13 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
9733
9734 * Make-lang.in (gnatbind$(exeext)): Link with $(SYSLIBS).
9735 Remove $(CONFIG_H) dependency.
9736
22aa533e
NS
97372002-08-08 Nathan Sidwell <nathan@codesourcery.com>
9738
9739 * ada/Make-lang.in (ada.mostlyclean): Remove coverage files.
9740
1dcd444b
KG
97412002-07-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
9742
9743 * adadecode.c (ada_demangle): Use xstrdup in lieu of
9744 xmalloc/strcpy.
9745 * misc.c (gnat_decode_option): Likewise.
9746
7bc7d27b
FW
97472002-07-15 Florian Weimer <fw@deneb.enyo.de>
9748
9749 * make.adb (Add_Switch): Make Generic_Position a procedure. The
9750 function approach did not work well because of a side effect (the
9751 function call could reallocate the table which was being indexed
9752 using its result). Fixes ada/4851. [RESURRECTED]
9753
6a2dd09a
RS
97542002-07-01 Roger Sayle <roger@eyesopen.com>
9755
9756 * ada/utils.c (builtin_function): Accept an additional parameter.
9757
c168bbd7
AJ
97582002-06-28 Andreas Jaeger <aj@suse.de>
9759
9760 PR ada/7144
9761 * Makefile.in: Fix typo in comment, patch by Adrian Knoth
9762 <adi@thur.de>.
9763
b41e09a7
KG
97642002-06-24 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
9765
9766 * Makefile.in (SHELL): Set to @SHELL@.
9767
62c71f4b
KG
97682002-06-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
9769
9770 * utils.c (init_gigi_decls): Use ARRAY_SIZE in lieu of explicit
9771 array size calculation.
9772
94213cff
AJ
97732002-06-04 Andreas Jaeger <aj@suse.de>
9774
9775 * Make-lang.in (gnatbind): Readd rule that has been lost in last
9776 patch.
9777
e2500fed
GK
97782002-06-03 Geoffrey Keating <geoffk@redhat.com>
9779
9780 Merge from pch-branch:
9781
9782 * config-lang.in (gtfiles): Add ada-tree.h.
9783 * ada-tree.h (SET_TYPE_CI_CO_LIST): New.
9784 (SET_TYPE_MODULUS): New.
9785 (SET_TYPE_INDEX): New.
9786 (SET_TYPE_DIGITS_VALUE): New.
9787 (SET_TYPE_RM_SIZE): New.
9788 (SET_TYPE_UNCONSTRAINED_ARRAY): New.
9789 (SET_TYPE_ADA_SIZE): New.
9790 (SET_TYPE_ACTUAL_BOUNDS): New.
9791 (SET_DECL_CONST_CORRESPONDING_VAR): New.
9792 (SET_DECL_ORIGINAL_FIELD): New.
9793 (TREE_LOOP_ID): Correct typo.
9794 * decl.c: Use new macros.
9795 * utils.c: Include debug.h, use new macros.
94213cff 9796 * utils2.c: Use new macros.
e2500fed
GK
9797
9798 * ada-tree.h: Update all macros for new tree description.
9799 (struct tree_loop_id): New.
9800 (union lang_tree_node): New.
9801 (struct lang_decl): New.
9802 (struct lang_type): New.
9803 * misc.c (gnat_mark_tree): Delete.
9804 (LANG_HOOKS_MARK_TREE): Delete.
9805 * trans.c (tree_transform): No longer any need to cast
9806 for TREE_LOOP_ID.
9807
9808 * utils.c (struct language_function): New dummy structure.
9809
9810 * Makefile.in (decl.o): gt-ada-<filename.h> is in objdir, not srcdir.
9811 (misc.o): Likewise.
9812 (utils.o): Likewise; also gtype-ada.h.
9813 * Make-lang.in (gnat1): Add dependency on s-gtype.
9814 (gnatbind): Add dependency on $(CONFIG_H).
9815 * utils.c: Correct last #include.
9816 (stuct e_stack): Remove unnecessary 'static'.
9817 (mark_e_stack): Remove unused prototype.
9818
9819 * scn-nlit.adb: Remove whitespace after version number to
9820 keep lines under 80 chars.
9821 * snames.adb: Likewise.
9822 * treepr.ads: Likewise.
94213cff 9823
e2500fed
GK
9824 * Makefile.in (decl.o): Include gt-ada-<filename>.h.
9825 (misc.o): Likewise.
9826 (utils.o): Include gt-ada-<filename>.h and gtype-ada.h.
9827 * config-lang.in (gtfiles): New.
9828 * decl.c: Use gengtype for roots.
9829 * gigi.h: Use gengtype for roots.
9830 * trans.c: Use gengtype for roots.
9831 * utils.c: Use gengtype for roots, marking. Include gtype-ada.h.
9832
27e511e0
GDR
98332002-06-02 Gabriel Dos Reis <gdr@codesourcery.com>
9834
9835 * misc.c (gnat_init): Adjust setting of internal_error_function.
9836
113dc143
JM
98372002-06-01 Joseph S. Myers <jsm28@cam.ac.uk>
9838
9839 * gnat_ug.texi: Use @ifnottex instead of @ifinfo.
9840 * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
9841 gnat_ug_wnt.texi: Regenerate.
9842
5321fb3e
FW
98432002-05-31 Florian Weimer <fw@deneb.enyo.de>
9844
15e6136e
FW
9845 * 5ntaprop.adb (with System.OS_Primitives): Remove.
9846
019310ac
FW
9847 * cstreams.c (max_path_len): Move from here ...
9848 * adaint.c (__gnat_max_path_len): ... to here.
9849 * adaint.c (__gnat_max_path_len): Declare.
9850 * g-dirope.adb (Max_Path): Adjust.
9851 * g-os_lib.adb (Normalize_Pathname.Max_Path): Adjust.
94213cff 9852 * i-cstrea.ads (max_path_len): Adjust.
019310ac
FW
9853 * osint.adb (Get_RTS_Search_Dir.Max_Path): Adjust.
9854 * xr_tabls.adb (Dir_Name.Max_Path: Adjust.
9855
5321fb3e
FW
9856 * Makefile.in, Make-lang.in: Documentation is now built in
9857 Make-lang.in. Store Info and generated Texinfo files in the
9858 source directory.
9859 * gnat_ug.texi: Remove CVS keywords, correct version number.
9860 Set file name correctly.
9861
9862 * gnat_ug_*.texi: Add.
9863 * .cvsignore: Ignore generated Texinfo files.
9864
b1c12c4b
ZW
98652002-05-30 Zack Weinberg <zack@codesourcery.com>
9866
9867 * ada.h: Add MI guard macro.
9868 (SUBTYPE): Define constants with an anonymous enum, not static
9869 const variables.
9870 (IN): Cast constants to appropriate type before use.
9871
ead33da9
JM
98722002-05-26 Joseph S. Myers <jsm28@cam.ac.uk>
9873
9874 * gnatvsn.ads (Gnat_Version_String): Change to "3.2 20020526
9875 (experimental)".
9876
7d600178
RO
98772002-05-23 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
9878
9879 * Make-lang.in (CP, ECHO): Copy from Makefile.in.
9880 (X_ADA_CFLAGS, T_ADA_CFLAGS, X_ADAFLAGS, T_ADAFLAGS): Likewise.
9881 (ALL_ADAFLAGS, FORCE_DEBUG_ADAFLAGS, ADA_CFLAGS): Likewise.
9882 (ALL_ADA_CFLAGS): Likewise.
9883 (ADA_INCLUDES): Likewise.
9884 Adapt for new working dir.
9885 (GNATBIND): Use Makefile.in version.
9886 (.SUFFIXES): Copy from Makefile.in.
9887 (ada-warn): Define.
9888 (.adb.o, .ads.o): Copy from Makefile.in.
9889 Added $(OUTPUT_OPTION).
9890 (GNAT1_C_OBJS): Moved from Makefile.in.
9891 Prefix with ada subdir.
9892 (GNAT_ADA_OBJS, GNAT1_ADA_OBJS, GNAT1_OBJS, GNATBIND_OBJS): Likewise.
9893 (EXTRA_GNAT1_OBJS): Moved from Makefile.in.
9894 Adapt for new working dir.
9895 (EXTRA_GNATBIND_OBJS): Likewise.
9896 (ADA_BACKEND): Moved from Makefile.in.
9897 Renamed to avoid conflict with global BACKEND.
9898 Use that one.
9899 (TARGET_ADA_SRCS): Moved from Makefile.in.
9900 (gnat1$(exeext)): Replaced recursive rule with Makefile.in version.
9901 Use ADA_BACKEND.
9902 (gnatbind$(exeext)): Replaced recursive rule with Makefile.in version.
9903 (ada_extra_files): Moved from Makefile.in.
9904 Prefix with ada subdir.
9905 (ada/b_gnat1.c, ada/b_gnat1.o, ada/b_gnatb.c, ada/b_gnatb.o): Likewise.
9906 (ada/treeprs.ads, ada/einfo.h, ada/sinfo.h, ada/nmake.adb): Likewise.
9907 (ada/nmake.ads): Likewise.
9908 (update-sources): Moved from Makefile.in.
9909 Prefix with ada subdir.
9910 (ada/sdefault.adb, ada/stamp-sdefault, ada/sdefault.o): Likewise.
9911 (ADA_TREE_H): Likewise.
9912 (ada/a-except.o, ada/s-assert.o, ada/s-memory.o): Likewise.
9913 (ada/memtrack.o): Likewise.
9914 (ada/adadecode.o): Likewise.
9915 Update dependencies.
9916 (ada/adaint.o): New.
9917 (ada/argv.o): Moved from Makefile.in.
9918 Prefix with ada subdir.
94213cff 9919 Update dependencies.
7d600178
RO
9920 (ada/cstreams.o, ada/exit.o, ada/final.o, ada/link.o): Likewise.
9921 (ada/cio.o, ada/init.o, ada/raise.o, ada/tracebak.o): Likewise.
9922 (ada/cuintp.o, ada/decl.o, ada/misc.o): Moved from Makefile.in.
9923 Prefix with ada subdir.
9924 (ada/targtyps.o, ada/trans.o, ada/utils.o, ada/utils2.o): Likewise.
9925 (GNAT DEPENDENCIES): Regenerate.
9926 * Makefile.in (MACHMODE_H, RTL_H, TREE_H): Removed, provided by
9927 toplevel Makefile.in.
9928 (EXTRA_GNAT1_OBJS, EXTRA_GNATBIND_OBJS): Removed.
9929 (TARGET_ADA_SRCS): Removed.
9930 (GNAT1_C_OBJS, GNAT_ADA_OBJS, GNAT1_ADA_OBJS, GNAT1_OBJS): Likewise.
9931 (GNATBIND_OBJS): Likewise.
9932 (ADA_INCLUDE_DIR, ADA_RTL_OBJ_DIR): Moved here.
9933 (BACKEND): Removed.
9934 (../gnat1$(exeext), ../gnatbind$(exeext)): Likewise.
9935 (TREE_H): Likewise.
9936 (ada_extra_files): Likewise.
9937 (b_gnat1.c, b_gnat1.o, b_gnatb.c, b_gnatb.o): Likewise.
9938 (treeprs.ads, einfo.h, sinfo.h, nmake.adb, nmake.ads): Likewise.
9939 (update-sources): Likewise.
9940 (sdefault.adb, stamp-sdefault, sdefault.o): Likewise
9941 (ADA_TREE_H): Likewise.
9942 (adadecoce.o): Likewise.
9943 (cuintp.o, decl.o, misc.o, trans.o, utils.o, utils2.o): Likewise.
9944 (GNAT DEPENDENCIES): Likewise.
9945
1e6347d8
RO
99462002-05-16 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
9947
9948 * Makefile.adalib: Allow for PWDCMD to override hardcoded pwd.
9949 * Makefile.in: Likewise.
9950
db80834f
RO
99512002-05-14 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
9952
9953 * Make-lang.in (gnat1$(exeext), gnatbind$(exeext), gnattools):
9954 Restore $(CONFIG_H) and prefix.o dependencies.
9955 (ada.stage[1-4]): Depend on stage?-start.
9956
9957 * Makefile.in (b_gnatb.c): Depend on interfac.o.
9958
ac293f98
JW
99592002-05-02 Jim Wilson <wilson@redhat.com>
9960
9961 * utils.c (finish_record_type): Change record_size to record_type.
9962
b303008e
JDA
99632001-05-02 John David Anglin <dave@hiauly1.hia.nrc.ca>
9964
9965 * ada/Makefile.in (X_ADA_CFLAGS, T_ADA_CFLAGS): New fragment overrides.
9966 (ALL_ADA_CFLAGS): Define. Replace ADA_CFLAGS with ALL_ADA_CFLAGS in
9967 ALL_ADAFLAGS, MOST_ADAFLAGS, and all compilations using CC.
94213cff 9968
ff45c01e
NB
99692002-04-25 Neil Booth <neil@daikokuya.demon.co.uk>
9970
9971 * misc.c (gnat_parse_file): Update.
9972
349ae713
NB
99732002-04-24 Neil Booth <neil@daikokuya.demon.co.uk>
9974
9975 * misc.c (gnat_init): Don't set lang_attribute_common.
9976
ace133aa
JM
99772002-04-21 Joseph S. Myers <jsm28@cam.ac.uk>
9978
9979 * gnat_rm.texi: Use @ifnottex instead of @ifinfo.
9980
5c558dd9
FW
99812002-04-21 Florian Weimer <fw@deneb.enyo.de>
9982
b4f94ac1 9983 * gnat_ug.texi: New file.
88e1739c 9984
5c558dd9
FW
9985 * gnat_rm.texi: Do not include texiplus.texi. Include fdl.texi
9986 instead of gfdl.texi
9987
9988 * xgnatug.adb, ug_words: New files.
9989
9990 * Makefile.in (doc, dvi): New targets. Build gnat_ug_*,
b4f94ac1 9991 gnat_rm and gnat-style manuals.
5c558dd9 9992
7a228918
NB
99932002-04-18 Neil Booth <neil@daikokuya.demon.co.uk>
9994
9995 * gigi.h (incomplete_type_error): Remove.
9996 * utils.c (incomplete_type_error): Remove.
9997
b2123dc0
MM
99982002-04-16 Mark Mitchell <mark@codesourcery.com>
9999
10000 * trans.c (tree_transform): Add has_scope argument to
10001 expand_start_stmt_expr.
10002
78ef5b89
NB
100032002-04-04 Neil Booth <neil@daikokuya.demon.co.uk>
10004
10005 * gigi.h (truthvalue_conversion): Rename.
10006 * misc.c (LANG_HOOKS_TRUTHVALUE_CONVERSION): Redefine.
10007 * trans.c (tree_transform): Update.
10008 * utils2.c (truthvalue_conversion): Rename, update.
10009 (build_binary_op, build_unary_op): Update.
10010
a71742a8
LG
100112002-04-04 Laurent Guerby <guerby@acm.org>
10012
10013 * make.adb: Implement -margs, remove restriction about file name placement.
10014 * makeusg.adb: Documentation update.
10015 * Makefile.in (TOOLS_FLAGS_TO_PASS): Add VPATH=$(fsrcdir).
10016 * Makefile.in (gnattools3): Comment out, gnatmem does not build without libaddr2line.
10017
82a4b025
NB
100182002-04-04 Neil Booth <neil@daikokuya.demon.co.uk>
10019
10020 * utils.c (create_subprog_decl): Use SET_DECL_ASSEMBLER_NAME.
10021 (builtin_function): Similarly.
10022
dffd7eb6
NB
100232002-04-01 Neil Booth <neil@daikokuya.demon.co.uk>
10024
10025 * decl.c (gnat_to_gnu_entity): Update.
10026 * gigi.h (mark_addressable): Rename.
10027 * misc.c (LANG_HOOKS_MARK_ADDRESSABLE): Redefine.
10028 * trans.c (tree_transform): Update.
10029 * utils.c (create_var_decl): Update.
10030 * util2.c (build_binary_op, build_unary_op,
10031 fill_vms_descriptor): Update.
10032 (mark_addressable): Rename, update.
10033
ceef8ce4
NB
100342002-04-01 Neil Booth <neil@daikokuya.demon.co.uk>
10035
10036 * gigi.h (unsigned_type, signed_type, signed_or_unsigned_type):
10037 Rename.
10038 * misc.c (LANG_HOOKS_SIGNED_TYPE, LANG_HOOKS_UNSIGNED_TYPE,
10039 LANG_HOOKS_SIGNED_OR_UNSIGNED_TYPE): New.
10040 * trans.c (tree_transform, convert_with_check): Update.
10041 * utils.c (unsigned_type, signed_type, signed_or_unsigned_type):
10042 Rename.
10043
48a7a235
NB
100442002-03-31 Neil Booth <neil@daikokuya.demon.co.uk>
10045
10046 * gigi.h (finish_incomplete_decl): Rename.
10047 * misc.c (LANG_HOOKS_FINISH_INCOMPLETE_DECL): Redefine.
10048 * utils.c (gnat_init_decl_processing): Don't set hook.
10049 (finish_incomplete_decl): Rename.
10050
1d5af871
AS
100512002-03-29 Andreas Schwab <schwab@suse.de>
10052
10053 * Makefile.in: Pass VPATH=$(fsrcdir) when calling make in rts
10054 directory.
10055
8cbb664e
MG
100562001-03-28 Robert Dewar <dewar@gnat.com>
10057
10058 * checks.ads:
10059 (Remove_Checks): New procedure
10060
10061 * checks.adb:
10062 (Remove_Checks): New procedure
10063
10064 * exp_util.adb:
10065 Use new Duplicate_Subexpr functions
10066 (Duplicate_Subexpr_No_Checks): New procedure
10067 (Duplicate_Subexpr_No_Checks_Orig): New procedure
10068 (Duplicate_Subexpr): Restore original form (checks duplicated)
10069 (Duplicate_Subexpr): Call Remove_Checks
10070
82a4b025 10071 * exp_util.ads:
8cbb664e
MG
10072 (Duplicate_Subexpr_No_Checks): New procedure
10073 (Duplicate_Subexpr_No_Checks_Orig): New procedure
10074 Add 2002 to copyright notice
10075
10076 * sem_util.adb: Use new Duplicate_Subexpr functions
10077
82a4b025 10078 * sem_eval.adb:
8cbb664e
MG
10079 (Eval_Indexed_Component): This is the place to call
10080 Constant_Array_Ref and to replace the value. We simply merge
10081 the code of this function in here, since it is now no longer
10082 used elsewhere. This fixes the problem of the back end not
10083 realizing we were clever enough to see that this was
10084 constant.
10085 (Expr_Val): Remove call to Constant_Array_Ref
10086 (Expr_Rep_Val): Remove call to Constant_Array_Ref
10087 Minor reformatting
10088 (Constant_Array_Ref): Deal with string literals (patch
10089 suggested by Zack Weinberg on the gcc list)
10090
100912001-03-28 Ed Schonberg <schonber@gnat.com>
10092
82a4b025 10093 * exp_util.adb: Duplicate_Subexpr_No_Checks_Orig =>
8cbb664e
MG
10094 Duplicate_Subexpr_Move_Checks.
10095
82a4b025 10096 * exp_util.ads: Duplicate_Subexpr_No_Checks_Orig =>
8cbb664e
MG
10097 Duplicate_Subexpr_Move_Checks.
10098
82a4b025
NB
10099 * sem_eval.adb: (Constant_Array_Ref): Verify that constant
10100 value of array exists before retrieving it (it may a private
8cbb664e
MG
10101 protected component in a function).
10102
792c4e74
GB
101032002-03-28 Geert Bosch <bosch@gnat.com>
10104
10105 * prj-pp.adb : New file.
10106
10107 * prj-pp.ads : New file.
10108
915e8bad
AJ
101092002-03-28 Andreas Jaeger <aj@suse.de>
10110
10111 * Makefile.in (stamp-sdefault): Fix path for Makefile.
10112
0840811c
NB
101132002-03-28 Neil Booth <neil@daikokuya.demon.co.uk>
10114
10115 * misc.c (gnat_expand_expr): Move prototype.
10116
7ffb4fd2
NB
101172002-03-27 Neil Booth <neil@daikokuya.demon.co.uk>
10118
10119 * misc.c (insert_default_attributes): Remove.
10120
c9d892a8
NB
101212002-03-27 Neil Booth <neil@daikokuya.demon.co.uk>
10122
10123 * misc.c (LANG_HOOKS_EXPAND_EXPR): Redefine.
10124 (gnat_init): Don't set hook.
10125 (gnat_expand_expr): Fix prototype.
10126
31c816cf
NB
101272002-03-27 Neil Booth <neil@daikokuya.demon.co.uk>
10128
10129 * misc.c (ggc_p): Remove.
10130
ef83161c
GB
101312002-03-27 Geert Bosch <bosch@gnat.com>
10132
10133 * prj-makr.ads, prj-makr.adb : New files.
10134
4f0ade92
NB
101352002-03-26 Neil Booth <neil@daikokuya.demon.co.uk>
10136
10137 * misc.c (LANG_HOOKS_MARK_TREE): Redefine.
10138 (lang_mark_tree): Make static, rename.
10139
c88770e9
NB
101402002-03-25 Neil Booth <neil@daikokuya.demon.co.uk>
10141
10142 * misc.c (maybe_build_cleanup): Remove.
10143
05671968
NB
101442002-03-24 Neil Booth <neil@daikokuya.demon.co.uk>
10145
10146 * gigi.h (yyparse): Remove.
10147
ad42149c
FW
101482002-03-23 Florian Weimer <fw@deneb.enyo.de>
10149
82a4b025 10150 * gnat_rm.texi: Sync with ACT version.
b4f94ac1 10151 (From Ben Brosgol <brosgol@gnat.com>)
ad42149c 10152
7afff7cf
NB
101532002-03-20 Neil Booth <neil@daikokuya.demon.co.uk>
10154
10155 * misc.c (LANG_HOOKS_DECL_PRINTABLE_NAME): Redefine.
10156 (gnat_init): Remove old hook.
10157
52dabb6c
NB
101582002-03-17 Neil Booth <neil@daikokuya.demon.co.uk>
10159
10160 * misc.c (LANG_HOOKS_PARSE_FILE): Redefine.
10161 (yyparse): Rename gnat_parse_file.
10162
6cbcc541
GK
101632002-03-14 Geoffrey Keating <geoffk@redhat.com>
10164
10165 Delete all lines containing "$Revision:".
10166 * xeinfo.adb: Don't look for revision numbers.
10167 * xnmake.adb: Likewise.
10168 * xsinfo.adb: Likewise.
10169 * xsnames.adb: Likewise.
10170 * xtreeprs.adb: Likewise.
10171
2f9834e8
KG
101722002-03-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
10173
10174 * misc.c (gnat_tree_code_type, gnat_tree_code_length,
10175 gnat_tree_code_name): Delete.
10176 (tree_code_type, tree_code_length, tree_code_name): Define.
10177 (gnat_init): Don't try to copy into the various tree_code
10178 arrays.
10179
63adb4ff
RH
101802002-03-11 Richard Henderson <rth@redhat.com>
10181
10182 * Makefile.in (.NOTPARALLEL): Add fake tag.
10183
43ff4547
GB
101842002-03-07 Geert Bosch <bosch@gnat.com>
10185
82a4b025
NB
10186 * adadecode.c, adadecode.h, aux-io.c, s-traces.adb, s-traces.ads,
10187 s-tratas.adb, s-tratas.ads, sinput-d.adb, sinput-d.ads,
10188 switch-b.adb, switch-b.ads, switch-c.adb, switch-c.ads,
43ff4547
GB
10189 switch-m.adb, switch-m.ads : New files.
10190
07fc65c4
GB
101912002-03-07 Geert Bosch <bosch@gnat.com>
10192
10193 * 41intnam.ads, 42intnam.ads, 4aintnam.ads, 4cintnam.ads,
10194 4dintnam.ads, 4gintnam.ads, 4hintnam.ads, 4lintnam.ads,
10195 4mintnam.ads, 4pintnam.ads, 4rintnam.ads, 4sintnam.ads,
10196 4uintnam.ads, 4vcalend.adb, 4zintnam.ads, 52system.ads,
10197 5amastop.adb, 5asystem.ads, 5ataprop.adb, 5atpopsp.adb,
10198 5avxwork.ads, 5bosinte.adb, 5bsystem.ads, 5esystem.ads,
10199 5fsystem.ads, 5ftaprop.adb, 5ginterr.adb, 5gmastop.adb,
10200 5gsystem.ads, 5gtaprop.adb, 5gtasinf.adb, 5gtasinf.ads,
10201 5hparame.ads, 5hsystem.ads, 5htaprop.adb, 5htraceb.adb,
10202 5itaprop.adb, 5ksystem.ads, 5kvxwork.ads, 5lintman.adb,
10203 5lsystem.ads, 5mvxwork.ads, 5ninmaop.adb, 5nosinte.ads,
10204 5ntaprop.adb, 5ointerr.adb, 5omastop.adb, 5oosinte.adb,
10205 5osystem.ads, 5otaprop.adb, 5otaspri.ads, 5pvxwork.ads,
10206 5qtaprop.adb, 5sintman.adb, 5ssystem.ads, 5staprop.adb,
10207 5stpopse.adb, 5svxwork.ads, 5tosinte.ads, 5uintman.adb,
10208 5vasthan.adb, 5vinmaop.adb, 5vinterr.adb, 5vintman.adb,
10209 5vmastop.adb, 5vparame.ads, 5vsystem.ads, 5vtaprop.adb,
10210 5vtpopde.adb, 5wmemory.adb, 5wsystem.ads, 5wtaprop.adb,
10211 5ysystem.ads, 5zinterr.adb, 5zintman.adb, 5zosinte.adb,
10212 5zosinte.ads, 5zsystem.ads, 5ztaprop.adb, 6vcpp.adb, 6vcstrea.adb,
10213 7sintman.adb, 7staprop.adb, 7stpopsp.adb, 9drpc.adb,
10214 Make-lang.in, Makefile.in, a-caldel.adb, a-comlin.ads,
10215 a-dynpri.adb, a-except.adb, a-except.ads, a-finali.adb,
10216 a-ncelfu.ads, a-reatim.adb, a-retide.adb, a-stream.ads,
10217 a-ststio.adb, a-ststio.ads, a-stwifi.adb, a-tags.adb, a-tasatt.adb,
10218 a-textio.adb, a-tideau.adb, a-tiflau.adb, a-tigeau.adb,
10219 a-tigeau.ads, a-tiinau.adb, a-timoau.adb, a-witeio.adb,
10220 a-wtdeau.adb, a-wtenau.adb, a-wtflau.adb, a-wtgeau.adb,
10221 a-wtgeau.ads, a-wtinau.adb, a-wtmoau.adb, ada-tree.def, ada-tree.h,
10222 adaint.c, adaint.h, ali-util.adb, ali.adb, ali.ads, atree.adb,
10223 atree.ads, atree.h, back_end.adb, bcheck.adb, bindgen.adb,
10224 bindusg.adb, checks.adb, comperr.adb, config-lang.in, csets.adb,
10225 csets.ads, cstand.adb, cstreams.c, debug.adb, debug.ads, decl.c,
10226 einfo.adb, einfo.ads, einfo.h, elists.h, errout.adb, errout.ads,
10227 eval_fat.adb, exp_aggr.adb, exp_attr.adb, exp_ch11.adb,
10228 exp_ch12.adb, exp_ch13.adb, exp_ch2.adb, exp_ch3.adb, exp_ch3.ads,
10229 exp_ch4.adb, exp_ch5.adb, exp_ch6.adb, exp_ch7.adb, exp_ch7.ads,
10230 exp_ch9.adb, exp_ch9.ads, exp_dbug.adb, exp_dbug.ads, exp_disp.ads,
10231 exp_dist.adb, exp_fixd.adb, exp_intr.adb, exp_pakd.adb,
10232 exp_prag.adb, exp_strm.adb, exp_util.adb, exp_util.ads,
10233 expander.adb, expect.c, fe.h, fmap.adb, fmap.ads, fname-uf.adb,
10234 freeze.adb, frontend.adb, g-awk.adb, g-cgideb.adb, g-comlin.adb,
10235 g-comlin.ads, g-debpoo.adb, g-dirope.adb, g-dirope.ads,
10236 g-dyntab.adb, g-expect.adb, g-expect.ads, g-io.ads, g-io_aux.adb,
10237 g-io_aux.ads, g-locfil.adb, g-locfil.ads, g-os_lib.adb,
10238 g-os_lib.ads, g-regexp.adb, g-regpat.adb, g-socket.adb,
10239 g-socket.ads, g-spipat.adb, g-table.adb, g-trasym.adb,
10240 g-trasym.ads, gigi.h, gmem.c, gnat1drv.adb, gnatbind.adb, gnatbl.c,
10241 gnatchop.adb, gnatcmd.adb, gnatdll.adb, gnatfind.adb, gnatlbr.adb,
10242 gnatlink.adb, gnatls.adb, gnatmem.adb, gnatprep.adb, gnatvsn.ads,
10243 gnatxref.adb, hlo.adb, hostparm.ads, i-cobol.adb, i-cpp.adb,
10244 i-cstrea.ads, i-cstrin.adb, i-pacdec.adb, i-vxwork.ads,
10245 impunit.adb, init.c, inline.adb, io-aux.c, layout.adb, lib-load.adb,
10246 lib-util.adb, lib-writ.adb, lib-writ.ads, lib-xref.adb,
10247 lib-xref.ads, lib.adb, lib.ads, make.adb, makeusg.adb, mdll.adb,
10248 memroot.adb, misc.c, mlib-tgt.adb, mlib-utl.adb, mlib-utl.ads,
10249 mlib.adb, namet.adb, namet.ads, namet.h, nlists.h, nmake.adb,
10250 nmake.ads, nmake.adt, opt.adb, opt.ads, osint.adb, osint.ads,
10251 output.adb, output.ads, par-ch2.adb, par-ch3.adb, par-ch5.adb,
10252 par-prag.adb, par-tchk.adb, par-util.adb, par.adb, prj-attr.adb,
10253 prj-dect.adb, prj-env.adb, prj-env.ads, prj-nmsc.adb, prj-part.adb,
10254 prj-proc.adb, prj-strt.adb, prj-tree.adb, prj-tree.ads, prj.adb,
10255 prj.ads, raise.c, raise.h, repinfo.adb, restrict.adb, restrict.ads,
10256 rident.ads, rtsfind.adb, rtsfind.ads, s-arit64.adb, s-asthan.adb,
10257 s-atacco.adb, s-atacco.ads, s-auxdec.adb, s-crc32.adb, s-crc32.ads,
10258 s-direio.adb, s-fatgen.adb, s-fileio.adb, s-finimp.adb,
10259 s-gloloc.adb, s-gloloc.ads, s-interr.adb, s-mastop.adb,
10260 s-mastop.ads, s-memory.adb, s-parame.ads, s-parint.adb,
10261 s-pooglo.adb, s-pooloc.adb, s-rpc.adb, s-secsta.adb, s-sequio.adb,
10262 s-shasto.adb, s-soflin.adb, s-soflin.ads, s-stache.adb,
10263 s-taasde.adb, s-taasde.ads, s-tadeca.adb, s-tadeca.ads,
10264 s-tadert.adb, s-tadert.ads, s-taenca.adb, s-taenca.ads,
10265 s-taprob.adb, s-taprop.ads, s-tarest.adb, s-tasdeb.adb,
10266 s-tasini.adb, s-tasini.ads, s-taskin.adb, s-taskin.ads,
10267 s-tasque.adb, s-tasque.ads, s-tasren.adb, s-tasren.ads,
10268 s-tassta.adb, s-tasuti.adb, s-tasuti.ads, s-tataat.adb,
10269 s-tataat.ads, s-tpoben.adb, s-tpoben.ads, s-tpobop.adb,
10270 s-tposen.adb, s-tposen.ads, s-traceb.adb, s-traceb.ads,
10271 s-unstyp.ads, s-widenu.adb, scn-nlit.adb, scn.adb, sem.adb,
10272 sem_aggr.adb, sem_attr.adb, sem_attr.ads, sem_case.adb,
10273 sem_ch10.adb, sem_ch11.adb, sem_ch11.ads, sem_ch12.adb,
10274 sem_ch13.adb, sem_ch13.ads, sem_ch2.adb, sem_ch3.adb, sem_ch3.ads,
10275 sem_ch4.adb, sem_ch5.adb, sem_ch6.adb, sem_ch6.ads, sem_ch7.adb,
10276 sem_ch8.adb, sem_ch8.ads, sem_ch9.adb, sem_disp.adb, sem_dist.adb,
10277 sem_elab.adb, sem_elim.adb, sem_elim.ads, sem_eval.adb,
10278 sem_intr.adb, sem_mech.adb, sem_prag.adb, sem_res.adb,
10279 sem_type.adb, sem_util.adb, sem_util.ads, sem_vfpt.adb,
10280 sem_warn.adb, sinfo.adb, sinfo.ads, sinfo.h, sinput-l.adb,
10281 sinput-l.ads, sinput.adb, sinput.ads, snames.adb, snames.ads,
10282 snames.h, sprint.adb, sprint.ads, stringt.adb, stringt.ads,
10283 stringt.h, style.adb, switch.adb, switch.ads, sysdep.c, system.ads,
10284 table.adb, targparm.adb, targparm.ads, targtyps.c, tbuild.adb,
10285 tbuild.ads, tracebak.c, trans.c, tree_gen.adb, tree_io.adb,
10286 treepr.adb, treepr.ads, treeprs.ads, treeprs.adt, ttypes.ads,
10287 types.adb, types.ads, types.h, uintp.ads, urealp.ads, usage.adb,
10288 utils.c, utils2.c, validsw.adb, xnmake.adb, xr_tabls.adb,
10289 xr_tabls.ads, xref_lib.adb, xref_lib.ads : Merge in ACT changes.
10290
10291 * 1ssecsta.adb, 1ssecsta.ads, a-chlat9.ads, a-cwila9.ads,
10292 g-enblsp.adb, g-md5.adb, g-md5.ads, gnatname.adb, gnatname.ads,
10293 mkdir.c, osint-b.adb, osint-b.ads, osint-c.adb, osint-c.ads,
10294 osint-l.adb, osint-l.ads, osint-m.adb, osint-m.ads : New files
10295
10296 * 3lsoccon.ads, 5qparame.ads, 5qvxwork.ads, 5smastop.adb,
10297 5zparame.ads, gnatmain.adb, gnatmain.ads, gnatpsys.adb : Removed
10298
10299 * mdllfile.adb, mdllfile.ads, mdlltool.adb, mdlltool.ads : Renamed
10300 to mdll-fil.ad[bs] and mdll-util.ad[bs]
10301
10302 * mdll-fil.adb, mdll-fil.ads, mdll-utl.adb, mdll-utl.ads : Renamed
10303 from mdllfile.ad[bs] and mdlltool.ad[bs]
10304
ca7558fc
KG
103052002-03-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
10306
10307 * utils.c (init_gnat_to_gnu, init_gigi_decls): Use ARRAY_SIZE in
10308 lieu of explicit sizeof/sizeof.
10309
63e1b1c4
NB
103102002-02-28 Neil Booth <neil@daikokuya.demon.co.uk>
10311
10312 * misc.c (copy_lang_decl): Remove.
10313
f458d1d5
ZW
103142002-02-27 Zack Weinberg <zack@codesourcery.com>
10315
10316 * misc.c: Delete traditional-mode-related code copied from the
10317 C front end but not used, or used only to permit the compiler
10318 to link.
10319
21e09952
RH
103202002-02-07 Richard Henderson <rth@redhat.com>
10321
10322 * adaint.c (__gnat_to_gm_time): First arg is int, not time_t.
10323 * adaint.h (__gnat_to_gm_time): Update prototype.
10324
ead39bdf 103252002-01-30 Richard Henderson <rth@redhat.com>
e803a64b
RH
10326
10327 * trans.c (tree_transform) [N_Loop_Statement]: Use
10328 expand_exit_loop_top_cond.
10329
72ac12bf
RH
103302001-12-23 Richard Henderson <rth@redhat.com>
10331
10332 * utils.c (end_subprog_body): Push GC context around
10333 rest_of_compilation for nested functions.
10334
14aacce7
RH
103352001-12-23 Richard Henderson <rth@redhat.com>
10336
10337 * 5nosinte.ads: Get definition of "int" from Interfaces.C.
10338
b3d45d87
FW
103392001-12-23 Florian Weimer <fw@deneb.enyo.de>
10340
ece2d1b8
FW
10341 * gnat-style.texi (Declarations and Types): Remove ancient style
10342 rule which was mandated by code generation issues.
82a4b025 10343
b3d45d87
FW
10344 * gnat-style.texi (header): Add @dircategory, @direntry.
10345 (title page): Remove date.
10346 (general) Add @./@: where approriate, and two spaces after the
10347 full stop at the end of a sentence. Use @samp markup when
10348 referring concrete lexical entities (keywords, attribute names
10349 etc.), and @syntax for ARM grammar elements. Use @r for English
10350 text in comments. Use @emph for emphasis. Change "if-statements"
10351 etc. to "if statements" (without @samp). Break long lines. Make
10352 casing of section names consistent.
10353 (Identifiers): Use @samp markup for variable names.
10354 (Comments): Use @samp markup for comment characters. Line-end
10355 comments may follow any Ada code, not just statements. Fix
10356 misspelling of "Integer" as "integer".
10357 (Loop statements): Do not use variable name "I", use "J".
10358 (Subprogram Declarations): Document alignment.
10359 (Subprogram Bodies, Block statements): Document empty line before
10360 "begin".
10361
7a73ad55
FW
103622001-12-22 Florian Weimer <fw@deneb.enyo.de>
10363
10364 * make.adb (Add_Switch): Make Generic_Position a procedure. The
10365 function approach did not work well because of a side effect (the
10366 function call could reallocate the table which was being indexed
10367 using its result). Fixes ada/4851.
10368
17c5c8a5
GB
103692001-12-19 Robert Dewar <dewar@gnat.com>
10370
10371 * bindgen.adb: Minor reformatting
82a4b025 10372
17c5c8a5 10373 * cstand.adb: Minor reformatting
82a4b025 10374
17c5c8a5
GB
10375 * fmap.adb: Minor reformatting
10376 Change name from Add for Add_To_File_Map (Add is much too generic)
10377 Change Path_Name_Of to Mapped_Path_Name
10378 Change File_Name_Of to Mapped_File_Name
10379 Fix copyright dates in header
82a4b025 10380
17c5c8a5
GB
10381 * fmap.ads:
10382 Change name from Add for Add_To_File_Map (Add is much too generic)
10383 Change Path_Name_Of to Mapped_Path_Name
10384 Change File_Name_Of to Mapped_File_Name
10385 Fix copyright dates in header
82a4b025 10386
17c5c8a5
GB
10387 * fname-uf.adb: Minor reformatting. New names of stuff in Fmap.
10388 Add use clause for Fmap.
82a4b025 10389
17c5c8a5 10390 * make.adb: Minor reformatting
82a4b025 10391
17c5c8a5
GB
10392 * osint.adb: Minor reformatting. Change of names in Fmap.
10393 Add use clause for Fmap.
82a4b025 10394
17c5c8a5 10395 * prj-env.adb: Minor reformatting
82a4b025 10396
17c5c8a5 10397 * prj-env.ads: Minor reformatting
82a4b025 10398
07fc65c4
GB
10399 * switch.adb: Minor reformatting. Do proper raise of Bad_Switch if
10400 error found (there were odd exceptions to this general rule in
17c5c8a5 10401 -gnatec/-gnatem processing)
82a4b025 10402
17c5c8a5
GB
104032001-12-19 Olivier Hainque <hainque@gnat.com>
10404
07fc65c4
GB
10405 * raise.c (__gnat_eh_personality): Exception handling personality
10406 routine for Ada. Still in rough state, inspired from the C++ version
17c5c8a5 10407 and still containing a bunch of debugging artifacts.
07fc65c4 10408 (parse_lsda_header, get_ttype_entry): Local (static) helpers, also
17c5c8a5 10409 inspired from the C++ library.
82a4b025 10410
07fc65c4 10411 * raise.c (eh_personality): Add comments. Part of work for the GCC 3
17c5c8a5 10412 exception handling integration.
82a4b025 10413
17c5c8a5
GB
104142001-12-19 Arnaud Charlet <charlet@gnat.com>
10415
10416 * Makefile.in: Remove use of 5smastop.adb which is obsolete.
10417 (HIE_SOURCES): Add s-secsta.ad{s,b}.
10418 (HIE_OBJS): Add s-fat*.o
07fc65c4 10419 (RAVEN_SOURCES): Remove files that are no longer required. Add
17c5c8a5
GB
10420 interrupt handling files.
10421 (RAVEN_MOD): Removed, no longer needed.
82a4b025 10422
17c5c8a5
GB
104232001-12-19 Robert Dewar <dewar@gnat.com>
10424
10425 * a-ngelfu.adb: Remove ??? comment for inappropriate Inline_Always
10426 Add 2001 to copyright date
82a4b025 10427
07fc65c4 10428 * g-regpat.adb: Change pragma Inline_Always to Inline. There is no
17c5c8a5 10429 need to force universal inlining for these cases.
82a4b025 10430
17c5c8a5
GB
104312001-12-19 Arnaud Charlet <charlet@gnat.com>
10432
07fc65c4 10433 * s-taprob.adb: Minor clean ups so that this unit can be used in
17c5c8a5 10434 Ravenscar HI.
82a4b025 10435
17c5c8a5
GB
10436 * exp_ch7.adb: Allow use of secondary stack in HI mode.
10437 Disallow it when pragma Restrictions (No_Secondary_Stack) is specified.
82a4b025 10438
17c5c8a5
GB
104392001-12-19 Vincent Celier <celier@gnat.com>
10440
07fc65c4 10441 * prj-tree.ads (Project_Node_Record): Add comments for components
17c5c8a5 10442 Pkg_Id and Case_Insensitive.
82a4b025 10443
17c5c8a5
GB
104442001-12-19 Pascal Obry <obry@gnat.com>
10445
10446 * g-socket.adb: Minor reformatting. Found while reading code.
82a4b025 10447
17c5c8a5
GB
104482001-12-19 Robert Dewar <dewar@gnat.com>
10449
10450 * prj-tree.ads: Minor reformatting
10451
38be19f6
JM
104522001-12-20 Joseph S. Myers <jsm28@cam.ac.uk>
10453
10454 * config-lang.in (diff_excludes): Remove.
10455
6510f4c9
GB
104562001-12-17 Ed Schonberg <schonber@gnat.com>
10457
07fc65c4
GB
10458 * sem_res.adb (Resolve_Selected_Component): do not generate a
10459 discriminant check if the selected component is a component of
6510f4c9
GB
10460 the argument of an initialization procedure.
10461
07fc65c4
GB
10462 * trans.c (tree_transform, case of arithmetic operators): If result
10463 type is private, the gnu_type is the base type of the full view,
6510f4c9 10464 given that the full view itself may be a subtype.
82a4b025 10465
6510f4c9
GB
104662001-12-17 Robert Dewar <dewar@gnat.com>
10467
10468 * sem_res.adb: Minor reformatting
82a4b025 10469
07fc65c4
GB
10470 * trans.c (tree_transform, case N_Real_Literal): Add missing third
10471 parameter in call to Machine (unknown horrible effects from this
6510f4c9 10472 omission).
82a4b025 10473
6510f4c9
GB
10474 * urealp.h: Add definition of Round_Even for call to Machine
10475 Add third parameter for Machine
82a4b025 10476
6510f4c9
GB
104772001-12-17 Ed Schonberg <schonber@gnat.com>
10478
07fc65c4 10479 * sem_warn.adb (Check_One_Unit): Suppress warnings completely on
6510f4c9 10480 predefined units in No_Run_Time mode.
82a4b025 10481
6510f4c9
GB
104822001-12-17 Richard Kenner <kenner@gnat.com>
10483
10484 * misc.c (insn-codes.h): Now include.
82a4b025 10485
6510f4c9
GB
104862001-12-17 Olivier Hainque <hainque@gnat.com>
10487
07fc65c4 10488 * a-except.adb: Preparation work for future integration of the GCC 3
6510f4c9
GB
10489 exception handling mechanism
10490 (Notify_Handled_Exception, Notify_Unhandled_Exception): New routines
10491 to factorize previous code sequences and make them externally callable,
10492 e.g. for the Ada personality routine when the GCC 3 mechanism is used.
10493 (Propagate_Exception, Raise_Current_Excep, Raise_From_Signal_Handler):
10494 Use the new notification routines.
82a4b025 10495
6510f4c9
GB
104962001-12-17 Emmanuel Briot <briot@gnat.com>
10497
10498 * prj-tree.ads (First_Choice_Of): Document the when others case
82a4b025 10499
6510f4c9
GB
105002001-12-17 Arnaud Charlet <charlet@gnat.com>
10501
07fc65c4 10502 * bindgen.adb (Gen_Ada_Init_*): Set priority of environment task in
6510f4c9 10503 HI-E mode, in order to support Ravenscar profile properly.
82a4b025 10504
07fc65c4 10505 * cstand.adb (Create_Standard): Duration is a 32 bit type in HI-E
6510f4c9 10506 mode on 32 bits targets.
82a4b025 10507
6510f4c9
GB
105082001-12-17 Vincent Celier <celier@gnat.com>
10509
10510 * fmap.adb: Initial version.
82a4b025 10511
6510f4c9 10512 * fmap.ads: Initial version.
82a4b025 10513
6510f4c9
GB
10514 * fname-uf.adb (Get_File_Name): Use mapping if unit name mapped.
10515 If search is successfully done, add to mapping.
82a4b025 10516
6510f4c9 10517 * frontend.adb: Initialize the mapping if a -gnatem switch was used.
82a4b025 10518
6510f4c9
GB
10519 * make.adb:
10520 (Gnatmake): Add new local variable Mapping_File_Name.
10521 Create mapping file when using project file(s).
10522 Delete mapping file before exiting.
82a4b025 10523
6510f4c9 10524 * opt.ads (Mapping_File_Name): New variable
82a4b025 10525
6510f4c9 10526 * osint.adb (Find_File): Use path name found in mapping, if any.
82a4b025 10527
6510f4c9 10528 * prj-env.adb (Create_Mapping_File): New procedure
82a4b025 10529
6510f4c9 10530 * prj-env.ads (Create_Mapping_File): New procedure.
82a4b025 10531
07fc65c4 10532 * switch.adb (Scan_Front_End_Switches): Add processing for -gnatem
6510f4c9 10533 (Mapping_File)
82a4b025 10534
6510f4c9 10535 * usage.adb: Add entry for new switch -gnatem.
82a4b025 10536
6510f4c9 10537 * Makefile.in: Add dependencies for fmap.o.
82a4b025 10538
6510f4c9
GB
105392001-12-17 Ed Schonberg <schonber@gnat.com>
10540
07fc65c4 10541 * sem_ch10.adb (Analyze_With_Clause): Retrieve proper entity when unit
6510f4c9
GB
10542 is a package instantiation rewritten as a package body.
10543 (Install_Withed_Unit): Undo previous change, now redundant.
82a4b025 10544
6510f4c9
GB
105452001-12-17 Gary Dismukes <dismukes@gnat.com>
10546
10547 * layout.adb:
10548 (Compute_Length): Move conversion to Unsigned to callers.
10549 (Get_Max_Size): Convert Len expression to Unsigned after calls to
10550 Compute_Length and Determine_Range.
10551 (Layout_Array_Type): Convert Len expression to Unsigned after calls to
10552 Compute_Length and Determine_Range.
10553 Above changes fix problem with length computation for supernull arrays
07fc65c4 10554 where Max (Len, 0) wasn't getting applied due to the Unsigned
6510f4c9 10555 conversion used by Compute_Length.
82a4b025 10556
6510f4c9
GB
105572001-12-17 Arnaud Charlet <charlet@gnat.com>
10558
10559 * rtsfind.ads:
10560 (OK_To_Use_In_No_Run_Time_Mode): Allow Ada.Exceptions and
10561 System.Secondary_Stack.
10562 (OK_To_Use_In_Ravenscar_Mode): New table needed to implement Ravenscar
10563 in HI-E mode.
10564 Remove unused entity RE_Exception_Data.
82a4b025 10565
6510f4c9 10566 * rtsfind.adb (RTE): Allow Ravenscar Profile in HI mode.
82a4b025 10567
6510f4c9
GB
10568 * rident.ads (No_Secondary_Stack): New restriction.
10569
3a77b68d
GB
105702001-12-17 Joel Brobecker <brobecke@gnat.com>
10571
07fc65c4 10572 * gnat_rm.texi: Fix minor typos. Found while reading the section
3a77b68d
GB
10573 regarding "Bit_Order Clauses" that was sent to a customer.
10574 Very interesting documentation!
82a4b025 10575
3a77b68d
GB
105762001-12-17 Robert Dewar <dewar@gnat.com>
10577
07fc65c4
GB
10578 * sem_case.adb (Choice_Image): Avoid creating improper character
10579 literal names by using the routine Set_Character_Literal_Name. This
3a77b68d 10580 fixes bombs in certain error message cases.
82a4b025 10581
3a77b68d
GB
105822001-12-17 Arnaud Charlet <charlet@gnat.com>
10583
10584 * a-reatim.adb: Minor reformatting.
82a4b025 10585
3a77b68d
GB
105862001-12-17 Ed Schonberg <schonber@gnat.com>
10587
07fc65c4
GB
10588 * sem_ch12.adb (Validate_Derived_Type_Instance): Handle properly the
10589 case where the formal is an extension of another formal in the current
3a77b68d 10590 unit or in a parent generic unit.
82a4b025 10591
3a77b68d
GB
105922001-12-17 Arnaud Charlet <charlet@gnat.com>
10593
07fc65c4 10594 * s-tposen.adb: Update comments. Minor reformatting.
3a77b68d 10595 Minor code clean up.
82a4b025 10596
3a77b68d 10597 * s-tarest.adb: Update comments. Minor code reorganization.
82a4b025 10598
3a77b68d
GB
105992001-12-17 Gary Dismukes <dismukes@gnat.com>
10600
07fc65c4 10601 * exp_attr.adb (Attribute_Tag): Suppress expansion of <type_name>'Tag
3a77b68d 10602 when Java_VM.
82a4b025 10603
3a77b68d
GB
106042001-12-17 Robert Dewar <dewar@gnat.com>
10605
10606 * exp_attr.adb: Minor reformatting
82a4b025 10607
3a77b68d
GB
106082001-12-17 Ed Schonberg <schonber@gnat.com>
10609
07fc65c4 10610 * sem_ch3.adb (Build_Derived_Private_Type): Refine check to handle
3a77b68d
GB
10611 derivations nested within a child unit: verify that the parent
10612 type is declared in an outer scope.
82a4b025 10613
3a77b68d
GB
106142001-12-17 Robert Dewar <dewar@gnat.com>
10615
10616 * sem_ch12.adb: Minor reformatting
82a4b025 10617
3a77b68d
GB
106182001-12-17 Ed Schonberg <schonber@gnat.com>
10619
07fc65c4
GB
10620 * sem_warn.adb (Check_One_Unit): In No_Run_Time mode, do not post
10621 warning if current unit is a predefined one, from which bodies may
3a77b68d 10622 have been deleted.
82a4b025 10623
3a77b68d
GB
106242001-12-17 Robert Dewar <dewar@gnat.com>
10625
10626 * eval_fat.ads: Add comment that Round_Even is referenced in Ada code
10627 Fix header format. Add 2001 to copyright date.
82a4b025 10628
07fc65c4 10629 * exp_dbug.adb (Get_Encoded_Name): Fix out of bounds reference,
3a77b68d
GB
10630 which caused CE during compilation if checks were enabled.
10631
79503fdd
GB
106322001-12-17 Vincent Celier <celier@gnat.com>
10633
10634 * make.adb:
10635 (Switches_Of): New function
10636 (Test_If_Relative_Path): New procedure
10637 (Add_Switches): Use new function Switches_Of
10638 (Collect_Arguments_And_Compile): Use new function Switches_Of.
10639 When using a project file, test if there are any relative
10640 search path. Fail if there are any.
07fc65c4
GB
10641 (Gnatmake): Only add switches for the primary directory when not using
10642 a project file. When using a project file, change directory to the
10643 object directory of the main project file. When using a project file,
10644 test if there are any relative search path. Fail if there are any.
10645 When using a project file, fail if specified executable is relative
10646 path with directory information, and prepend executable, if not
10647 specified as an absolute path, with the exec directory. Make sure
79503fdd 10648 that only one -o switch is transmitted to the linker.
82a4b025 10649
79503fdd 10650 * prj-attr.adb (Initialization_Data): Add project attribute Exec_Dir
82a4b025 10651
79503fdd
GB
10652 * prj-nmsc.adb:
10653 (Ada_Check): Get Spec_Suffix_Loc and Impl_Suffix_Loc,
10654 when using a non standard naming scheme.
10655 (Check_Ada_Naming_Scheme): Make sure that error messages
10656 do not raise exceptions.
10657 (Is_Illegal_Append): Return True if there is no dot in the suffix.
10658 (Language_Independent_Check): Check the exec directory.
82a4b025 10659
79503fdd 10660 * prj.adb (Project_Empty): Add new component Exec_Directory
82a4b025 10661
79503fdd
GB
10662 * prj.ads:
10663 (Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Add defaults.
10664 (Project_Data): Add component Exec_Directory
82a4b025 10665
79503fdd 10666 * snames.adb: Updated to match snames.ads revision 1.215
82a4b025 10667
79503fdd 10668 * snames.ads: Added Exec_Dir
82a4b025 10669
79503fdd
GB
106702001-12-17 Robert Dewar <dewar@gnat.com>
10671
10672 * make.adb: Minor reformatting
82a4b025 10673
79503fdd 10674 * prj-nmsc.adb: Minor reformatting
82a4b025 10675
79503fdd 10676 * snames.adb: Updated to match snames.ads
82a4b025 10677
79503fdd
GB
10678 * snames.ads: Alphebetize entries for project file
10679
106802001-12-17 Ed Schonberg <schonber@gnat.com>
10681
07fc65c4 10682 * trans.c (process_freeze_entity): Do nothing if the entity is a
79503fdd 10683 subprogram that was already elaborated.
82a4b025 10684
79503fdd 106852001-12-17 Richard Kenner <kenner@gnat.com>
82a4b025 10686
07fc65c4 10687 * decl.c (gnat_to_gnu_entity, object): Do not back-annotate Alignment
79503fdd
GB
10688 and Esize if object is referenced via pointer.
10689
855ff2e1
GB
106902001-12-17 Ed Schonberg <schonber@gnat.com>
10691
07fc65c4 10692 * sem_ch3.adb (Analyze_Variant_Part): check that type of discriminant
855ff2e1 10693 is discrete before analyzing choices.
82a4b025 10694
855ff2e1
GB
106952001-12-17 Joel Brobecker <brobecke@gnat.com>
10696
07fc65c4
GB
10697 * bindgen.adb (Gen_Output_File_Ada): Generate a new C-like string
10698 containing the name of the Ada Main Program. This string is mainly
855ff2e1
GB
10699 intended for the debugger.
10700 (Gen_Output_File_C): Do the equivalent change when generating a C file.
82a4b025 10701
855ff2e1
GB
107022001-12-17 Robert Dewar <dewar@gnat.com>
10703
10704 * ali.adb: Set new Dummy_Entry field in dependency entry
82a4b025 10705
855ff2e1 10706 * ali.ads: Add Dummy_Entry field to source dependency table
82a4b025 10707
855ff2e1 10708 * bcheck.adb (Check_Consistency): Ignore dummy D lines
82a4b025 10709
855ff2e1 10710 * lib-writ.adb (Writ_ALI): Write dummy D lines for missing source files
82a4b025 10711
855ff2e1 10712 * lib-writ.ads: Document dummy D lines for missing files.
82a4b025 10713
855ff2e1
GB
10714 * types.ads: (Dummy_Time_Stamp): New value for non-existant files
10715
c1c22e7a
GB
107162001-12-17 Robert Dewar <dewar@gnat.com>
10717
10718 * ali.adb: Type reference does not reset current file.
82a4b025 10719
c1c22e7a 10720 * ali.adb: Recognize and scan renaming reference
82a4b025 10721
c1c22e7a 10722 * ali.ads: Add spec for storing renaming references.
82a4b025 10723
c1c22e7a 10724 * lib-xref.ads: Add documentation for handling of renaming references
82a4b025 10725
c1c22e7a 10726 * lib-xref.adb: Implement output of renaming reference.
82a4b025 10727
c1c22e7a
GB
10728 * checks.adb:
10729 (Determine_Range): Document local variables
10730 (Determine_Range): Make sure Hbound is initialized. It looks as though
10731 there could be a real problem here with an uninitialized reference
10732 to Hbound, but no actual example of failure has been found.
82a4b025 10733
c1c22e7a
GB
107342001-12-17 Laurent Pautet <pautet@gnat.com>
10735
10736 * g-socket.ads:
10737 Fix comment of Shutdown_Socket and Close_Socket. These functions
10738 should not fail silently because if they are called twice, this
10739 probably means that there is a race condition in the user program.
10740 Anyway, this behaviour is consistent with the rest of this unit.
10741 When an error occurs, an exception is raised with the error message
10742 as exception message.
10743
7eb7bb07
RD
107442001-12-17 Robert Dewar <dewar@gnat.com>
10745
07fc65c4 10746 * frontend.adb: Move call to Check_Unused_Withs from Frontend, so
7eb7bb07 10747 that it happens before modification of Sloc values for -gnatD.
82a4b025 10748
07fc65c4 10749 * gnat1drv.adb: Move call to Check_Unused_Withs to Frontend,
7eb7bb07 10750 so that it happens before modification of Sloc values for -gnatD.
82a4b025 10751
7eb7bb07
RD
10752 * switch.adb: Minor reformatting
10753
b6434700
RH
107542001-12-15 Richard Henderson <rth@redhat.com>
10755
10756 * sem_ch7.adb: Wrap comment.
10757
44d6a706
JM
107582001-12-16 Joseph S. Myers <jsm28@cam.ac.uk>
10759
10760 * 5ataprop.adb, 5atpopsp.adb, 5ftaprop.adb, 5gmastop.adb,
10761 5gtaprop.adb, 5htaprop.adb, 5itaprop.adb, 5lintman.adb,
10762 5omastop.adb, 5oosinte.adb, 5otaprop.adb, 5staprop.adb,
10763 5vinterr.adb, 5vtaprop.adb, 5vtpopde.adb, 5wintman.adb,
10764 5wtaprop.adb, 5zinterr.adb, 5ztaprop.adb, 6vcstrea.adb,
10765 7sintman.adb, 7staprop.adb, 9drpc.adb, ChangeLog, Makefile.in,
10766 a-except.adb, a-tags.ads, a-tasatt.adb, a-teioed.adb,
10767 a-textio.ads, a-witeio.ads, a-wtedit.adb, ali.ads, comperr.adb,
10768 cstand.adb, einfo.ads, errout.adb, exp_ch11.adb, exp_ch2.adb,
10769 exp_ch3.adb, exp_ch4.adb, exp_ch5.adb, exp_ch6.adb, exp_ch9.adb,
10770 exp_util.adb, exp_util.ads, fname-uf.adb, g-cgi.ads, g-exctra.ads,
10771 g-expect.ads, g-regist.adb, g-spipat.adb, gnatchop.adb,
10772 gnatlink.adb, gnatls.adb, gnatmain.adb, gnatmem.adb, init.c,
10773 make.adb, make.ads, mdlltool.adb, nlists.ads, osint.ads,
10774 par-ch3.adb, par-ch4.adb, par-ch5.adb, par-ch6.adb, par.adb,
10775 repinfo.adb, s-fatflt.ads, s-fatlfl.ads, s-fatllf.ads,
10776 s-fatsfl.ads, s-finimp.adb, s-finimp.ads, s-interr.adb,
10777 s-secsta.ads, s-shasto.ads, s-stalib.adb, s-stalib.ads,
10778 s-tarest.ads, s-tasdeb.adb, s-tassta.adb, s-tassta.ads,
10779 s-vaflop.ads, scans.ads, scn.adb, sem.ads, sem_aggr.adb,
10780 sem_attr.adb, sem_case.ads, sem_ch10.adb, sem_ch12.adb,
10781 sem_ch13.adb, sem_ch3.adb, sem_ch3.ads, sem_ch5.adb, sem_ch7.adb,
10782 sem_ch8.adb, sem_ch8.ads, sem_type.adb, sem_util.ads, sinfo.ads,
10783 sprint.adb, tbuild.ads, types.ads, utils.c, xeinfo.adb: Fix
10784 spelling errors.
10785
226ada7a
GB
107862001-12-14 Vincent Celier <celier@gnat.com>
10787
07fc65c4 10788 * osint.adb(Create_Debug_File): When an object file is specified,
226ada7a 10789 put the .dg file in the same directory as the object file.
82a4b025 10790
226ada7a
GB
107912001-12-14 Robert Dewar <dewar@gnat.com>
10792
10793 * osint.adb: Minor reformatting
82a4b025 10794
07fc65c4 10795 * lib-xref.adb (Output_Instantiation): New procedure to generate
226ada7a 10796 instantiation references.
82a4b025 10797
226ada7a 10798 * lib-xref.ads: Add documentation of handling of generic references.
82a4b025 10799
07fc65c4 10800 * ali.adb (Read_Instantiation_Ref): New procedure to read
226ada7a 10801 instantiation references
82a4b025 10802
226ada7a 10803 * ali.ads: Add spec for storing instantiation references
82a4b025 10804
226ada7a 10805 * bindusg.adb: Minor reformatting
82a4b025 10806
226ada7a 10807 * switch.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
82a4b025 10808
226ada7a 10809 * usage.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
82a4b025 10810
226ada7a 10811 * gnatcmd.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
82a4b025 10812
226ada7a 10813 * csets.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
82a4b025 10814
226ada7a
GB
10815 * csets.ads:
10816 Fix header format
10817 Add 2001 to copyright date
10818 Add entry for Latin-5 (Cyrillic ISO-8859-5)
82a4b025 10819
226ada7a
GB
108202001-12-14 Matt Gingell <gingell@gnat.com>
10821
07fc65c4 10822 * adaint.c: mktemp is a macro on Lynx and can not be used as an
226ada7a 10823 expression.
82a4b025 10824
226ada7a
GB
108252001-12-14 Richard Kenner <kenner@gnat.com>
10826
07fc65c4 10827 * misc.c (gnat_expand_constant): Do not strip UNCHECKED_CONVERT_EXPR
226ada7a 10828 if operand is CONSTRUCTOR.
82a4b025 10829
226ada7a
GB
108302001-12-14 Ed Schonberg <schonber@gnat.com>
10831
07fc65c4
GB
10832 * trans.c (tree_transform, case N_Assignment_Statement): Set lineno
10833 before emiting check on right-hand side, so that exception information
226ada7a
GB
10834 is correct.
10835
108362001-12-14 Richard Kenner <kenner@gnat.com>
82a4b025 10837
07fc65c4 10838 * utils.c (create_var_decl): Throw away initializing expression
226ada7a 10839 if just annotating types and non-constant.
82a4b025 10840
226ada7a
GB
108412001-12-14 Vincent Celier <celier@gnat.com>
10842
10843 * prj-nmsc.adb: (Ada_Check): Migrate drom Ada_Default_... to
10844 Default_Ada_...
82a4b025 10845
07fc65c4 10846 * prj.adb: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
226ada7a
GB
10847 Remove functions.
10848 (Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Move to spec.
82a4b025 10849
07fc65c4 10850 * prj.ads: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
226ada7a
GB
10851 Remove functions.
10852 (Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Move from body.
10853
9b94bf9e
JM
108542001-12-16 Joseph S. Myers <jsm28@cam.ac.uk>
10855
10856 * ChangeLog: Remove piece of diff output.
10857
449d2be3
GB
108582001-12-14 Geert Bosch <bosch@gnat.com>
10859
10860 * config-lang.in: Update copyright notice
10861
10862 * layout.adb: Remove commented out code.
10863
10864 * mdllfile.ads: Update copyright notice. Fix header format.
10865
10866 * sem_case.ads: Likewise.
10867
10868 * sem_ch3.adb: Minor reformatting.
10869
e5bd5cb4
GB
108702001-12-12 Geert Bosch <bosch@gnat.com>
10871
10872 * freeze.ads: Update copyright date.
10873
10874 * g-comlin.ads: Minor reformatting.
10875
10876 * gnat-style.texi: Fix typo.
10877
b468d8ec
GB
108782001-12-12 Geert Bosch <bosch@gnat.com>
10879
10880 * einfo.h: Regenerate.
10881
ed7da216
GB
108822001-12-12 Ed Schonberg <schonber@gnat.com>
10883
07fc65c4 10884 * sem_ch12.adb (Save_Entity_Descendant): Use syntactic field names
ed7da216 10885 on known node types, rather than untyped fields. Further cleanups.
82a4b025 10886
ed7da216
GB
108872001-12-12 Robert Dewar <dewar@gnat.com>
10888
10889 * sem_ch12.adb:
10890 (Save_Entity_Descendant): Minor comment update.
10891 (Copy_Generic_Node): Deal with incorrect reference to Associated_Node
07fc65c4 10892 of an N_Attribute_Reference node. As per note below, this does not
ed7da216 10893 eliminate need for Associated_Node in attribute ref nodes.
07fc65c4 10894 (Associated_Node): Documentation explicitly mentions attribute
ed7da216 10895 reference nodes, since this field is used in such nodes.
82a4b025 10896
ed7da216
GB
10897 * sem_ch12.adb (Associated_Node): Minor documentation cleanup.
10898
de76a39c
GB
108992001-12-12 Robert Dewar <dewar@gnat.com>
10900
10901 * s-stalib.adb: Add more comments on with statements being needed
82a4b025 10902
de76a39c 10903 * par-ch12.adb: Minor reformatting
82a4b025 10904
de76a39c 10905 * prj-dect.ads: Fix copyright header
82a4b025 10906
07fc65c4 10907 * s-arit64.adb (Multiply_With_Ovflo_Check): Fix case where both
de76a39c 10908 inputs fit in 32 bits, but the result still overflows.
82a4b025 10909
de76a39c 10910 * s-fatgen.ads: Minor comment improvement
82a4b025 10911
de76a39c
GB
109122001-12-12 Ed Schonberg <schonber@gnat.com>
10913
07fc65c4
GB
10914 * sem_ch4.adb (Analyze_Selected_Component): If the prefix is of a
10915 formal derived type, look for an inherited component from the full
de76a39c 10916 view of the parent, if any.
82a4b025 10917
de76a39c
GB
109182001-12-12 Robert Dewar <dewar@gnat.com>
10919
10920 * checks.ads (Apply_Alignment_Check): New procedure.
82a4b025 10921
07fc65c4
GB
10922 * exp_ch13.adb (Expand_N_Freeze_Entity): Generate dynamic check to
10923 ensure that the alignment of objects with address clauses is
de76a39c
GB
10924 appropriate, and raise PE if not.
10925
07fc65c4 10926 * exp_util.ads (Must_Be_Aligned): Removed, replaced by
de76a39c 10927 Exp_Pakd.Known_Aligned_Enough
82a4b025 10928
de76a39c
GB
10929 * mdllfile.ads: Minor reformatting
10930
10931 * mlib-fil.ads: Minor reformatting
82a4b025 10932
de76a39c
GB
109332001-12-12 Ed Schonberg <schonber@gnat.com>
10934
07fc65c4
GB
10935 * exp_ch8.adb (Expand_N_Object_Renaming_Declaration): Extend previous
10936 fix to any component reference if enclosing record has non-standard
de76a39c 10937 representation.
82a4b025 10938
de76a39c
GB
109392001-12-12 Vincent Celier <celier@gnat.com>
10940
07fc65c4 10941 * g-dirope.ads (Find, Wildcard_Iterator): Moved to child package
de76a39c 10942 Iteration
82a4b025 10943
de76a39c
GB
109442001-12-12 Ed Schonberg <schonber@gnat.com>
10945
07fc65c4 10946 * freeze.ads: Make Freeze_Fixed_Point_Type visible, for use in
de76a39c 10947 sem_attr.
82a4b025 10948
de76a39c
GB
109492001-12-12 Robert Dewar <dewar@gnat.com>
10950
10951 * impunit.adb: Add entry for GNAT.Directory_Operations.Iteration
82a4b025 10952
de76a39c
GB
109532001-12-12 Emmanuel Briot <briot@gnat.com>
10954
10955 * g-regexp.adb: Remove all debug code, since it isn't required anymore,
10956 and it adds dependencies to system.io.
82a4b025 10957
de76a39c
GB
109582001-12-12 Pascal Obry <obry@gnat.com>
10959
07fc65c4 10960 * g-dirope.adb (Expand_Path.Var): Correctly detect end of
de76a39c
GB
10961 variable name.
10962
0b09835f
ES
109632001-12-11 Ed Schonberg <schonber@gnat.com>
10964
10965 * sem_ch10.adb (Install_Withed_Unit): If the unit is a generic instance
07fc65c4
GB
10966 that is the parent of other generics, the instance body replaces the
10967 instance node. Retrieve the instance of the spec, which is the one
0b09835f
ES
10968 that is visible in clients and within the body.
10969
598c3446
GB
109702001-12-11 Vincent Celier <celier@gnat.com>
10971
10972 * gnatmain.adb: Initial version.
82a4b025 10973
598c3446 10974 * gnatmain.ads: Initial version.
82a4b025 10975
598c3446 10976 * prj-attr.adb (Initialisation_Data): Add package Gnatstub.
82a4b025 10977
598c3446 10978 * snames.adb: Updated to match snames.ads.
82a4b025 10979
598c3446 10980 * snames.ads: Added Gnatstub.
82a4b025 10981
598c3446
GB
109822001-12-11 Vincent Celier <celier@gnat.com>
10983
07fc65c4 10984 * prj-attr.adb (Initialization_Data): Change name from
598c3446 10985 Initialisation_Data.
82a4b025 10986
598c3446
GB
109872001-12-11 Emmanuel Briot <briot@gnat.com>
10988
10989 * g-regpat.adb (Parse_Literal): Properly handle simple operators ?,
10990 + and * applied to backslashed expressions like \r.
82a4b025 10991
598c3446
GB
109922001-12-11 Vasiliy Fofanov <fofanov@gnat.com>
10993
07fc65c4 10994 * g-os_lib.ads: String_List type added, Argument_List type is now
598c3446 10995 subtype of String_List.
82a4b025 10996
598c3446
GB
109972001-12-11 Robert Dewar <dewar@gnat.com>
10998
10999 * g-os_lib.ads: Change copyright to FSF
11000 Add comments for String_List type
82a4b025 11001
598c3446
GB
110022001-12-11 Vincent Celier <celier@gnat.com>
11003
07fc65c4 11004 * g-dirope.adb (Expand_Path): Fix bug. (wrong length when adding a
598c3446
GB
11005 string to the buffer).
11006
7fb754a1
GB
110072001-12-11 Ed Schonberg <schonber@gnat.com>
11008
11009 * freeze.adb: Make Freeze_Fixed_Point_Type visible, for use in
11010 sem_attr.
82a4b025 11011
7fb754a1 11012 * sem_attr.adb: Simplify previous fix for Address.
07fc65c4
GB
11013 (Set_Bounds): If prefix is a non-frozen fixed-point type, freeze now,
11014 to avoid anomalies where the bound of the type appears to raise
7fb754a1
GB
11015 constraint error.
11016
110172001-12-11 Robert Dewar <dewar@gnat.com>
11018
07fc65c4 11019 * lib-xref.adb (Output_Refs): Make sure pointers are always properly
7fb754a1 11020 handled.
82a4b025 11021
7fb754a1
GB
110222001-12-11 Ed Schonberg <schonber@gnat.com>
11023
07fc65c4 11024 * sem_ch12.adb (Analyze_Subprogram_Instantiation): Check for a
7fb754a1 11025 renamed unit before checking for recursive instantiations.
82a4b025 11026
7fb754a1
GB
110272001-12-11 Emmanuel Briot <briot@gnat.com>
11028
11029 * prj.ads: Add comments for some of the fields.
11030
0873bafc
GB
110312001-12-11 Robert Dewar <dewar@gnat.com>
11032
07fc65c4 11033 * lib-xref.adb (Output_Refs): Don't output type references outside
0873bafc 11034 the main unit if they are not otherwise referenced.
82a4b025 11035
0873bafc
GB
110362001-12-11 Ed Schonberg <schonber@gnat.com>
11037
07fc65c4 11038 * sem_attr.adb (Analyze_attribute, case Address and Size): Simplify
0873bafc 11039 code and diagnose additional illegal uses
82a4b025 11040
07fc65c4 11041 * sem_util.adb (Is_Object_Reference): An indexed component is an
0873bafc 11042 object only if the prefix is.
82a4b025 11043
0873bafc
GB
110442001-12-11 Vincent Celier <celier@gnat.com>
11045
11046 * g-diopit.adb: Initial version.
82a4b025 11047
0873bafc 11048 * g-diopit.ads: Initial version.
82a4b025 11049
0873bafc
GB
11050 * g-dirope.adb:
11051 (Expand_Path): Avoid use of Unbounded_String
11052 (Find, Wildcard_Iterator): Moved to child package Iteration
82a4b025 11053
0873bafc 11054 * Makefile.in: Added g-diopit.o to GNATRTL_NONTASKING_OBJS
82a4b025 11055
7fb754a1 110562001-12-11 Robert Dewar <dewar@gnat.com>
0873bafc
GB
11057
11058 * sem_attr.adb: Minor reformatting
11059
d087cd96
GB
110602001-12-11 Ed Schonberg <schonber@gnat.com>
11061
11062 * sem_ch3.adb: Clarify some ???.
82a4b025 11063
d087cd96
GB
110642001-12-11 Robert Dewar <dewar@gnat.com>
11065
07fc65c4 11066 * exp_util.adb (Must_Be_Aligned): Removed, replaced by
d087cd96 11067 Exp_Pakd.Known_Aligned_Enough
82a4b025 11068
07fc65c4 11069 * sem_ch13.adb (Check_Address_Alignment): Removed, extended
d087cd96
GB
11070 version is moved to Exp_Ch13.
11071
110722001-12-11 Robert Dewar <dewar@gnat.com>
11073
11074 * einfo.ads: Minor reformatting
82a4b025 11075
d087cd96 11076 * exp_ch5.adb: Add comment for previous.change
82a4b025 11077
d087cd96 11078 * ali.adb: New interface for extended typeref stuff.
82a4b025 11079
d087cd96 11080 * ali.ads: New interface for typeref stuff.
82a4b025 11081
d087cd96 11082 * checks.adb (Apply_Alignment_Check): New procedure.
82a4b025 11083
d087cd96 11084 * debug.adb: Add -gnatdM for modified ALI output
82a4b025 11085
d087cd96 11086 * exp_pakd.adb (Known_Aligned_Enough): Replaces Known_Aligned_Enough.
82a4b025 11087
07fc65c4
GB
11088 * lib-xref.adb: Extend generation of <..> notation to cover
11089 subtype/object types. Note that this is a complete rewrite,
11090 getting rid of the very nasty quadratic algorithm previously
d087cd96 11091 used for derived type output.
82a4b025 11092
07fc65c4
GB
11093 * lib-xref.ads: Extend description of <..> notation to cover
11094 subtype/object types. Uses {..} for these other cases.
d087cd96 11095 Also use (..) for pointer types.
82a4b025 11096
d087cd96 11097 * sem_util.adb (Check_Potentially_Blocking_Operation): Slight cleanup.
82a4b025 11098
07fc65c4 11099 * exp_pakd.adb: Minor reformatting. Note that prevous RH should say:
d087cd96
GB
11100 (Known_Aligned_Enough): Replaces Must_Be_Aligned.
11101
290986ed
GB
111022001-12-11 Vincent Celier <celier@gnat.com>
11103
11104 * gnatcmd.adb:
11105 Changed /COMPILE_ONLY to /ACTIONS=COMPILE
11106 Changed /BIND_ONLY to /ACTIONS=BIND
11107 Changed /LINK_ONLY to /ACTIONS=LINK
82a4b025 11108
290986ed
GB
111092001-12-11 Ed Schonberg <schonber@gnat.com>
11110
11111 * sem_ch8.adb (Find_Selected_Component): improved search for a
11112 candidate package in case of error.
82a4b025 11113
290986ed
GB
11114 * sem_ch12.adb (Inline_Instance_Body): place head of use_clause
11115 chain back on scope stack before reinstalling use clauses.
82a4b025 11116
290986ed
GB
11117 * exp_ch5.adb (Expand_N_If_Statement): if Constant_Condition_Warnings
11118 is enabled, do not kill the code for the condition, to preserve
11119 warning.
11120
84157f51
GB
111212001-12-11 Robert Dewar <dewar@gnat.com>
11122
07fc65c4 11123 * checks.adb (Insert_Valid_Check): Apply validity check to expression
84157f51
GB
11124 of conversion, not to result of conversion.
11125
111262001-12-11 Ed Schonberg <schonber@gnat.com>
82a4b025 11127
07fc65c4
GB
11128 * sem_ch3.adb (Build_Derived_Record_Type): set Controlled flag
11129 before freezing parent. If the declarations are mutually recursive,
11130 an access to the current record type may be frozen before the
84157f51
GB
11131 derivation is complete.
11132
7ffa903f
VC
111332001-12-05 Vincent Celier <celier@gnat.com>
11134
07fc65c4 11135 * gnatcmd.adb: (MAKE): Add new translations: -b /BIND_ONLY,
7ffa903f 11136 -c /COMPILE_ONLY, -l /LINK_ONLY
82a4b025 11137
7ffa903f
VC
11138 * opt.ads:
11139 (Bind_Only): New Flag
11140 (Link_Only): New flag
82a4b025 11141
07fc65c4 11142 * switch.adb (Scan_Make_Switches): Add processing for -b (Bind_Only)
7ffa903f 11143 and -l (Link_Only)
82a4b025 11144
7ffa903f 11145 * makeusg.adb: Add new switches -b and -l. Update Copyright notice.
82a4b025 11146
7ffa903f
VC
11147 * make.adb:
11148 (Do_Compile_Step, Do_Bind_Step, Do_Link_Step): New flags.
11149 (Gnatmake): Set the step flags. Only perform a step if the
11150 corresponding step flag is True.
11151 (Scan_Make_Arg): Reset the bind and link step flags when -u
11152 or -gnatc has been specified.
11153
f91b40db
GB
111542001-12-05 Ed Schonberg <schonber@gnat.com>
11155
07fc65c4 11156 * sem_eval.adb (Eval_Concatenation): If left operand is a null string,
f91b40db 11157 get bounds from right operand.
82a4b025 11158
f91b40db 11159 * sem_eval.adb: Minor reformatting
82a4b025 11160
07fc65c4 11161 * exp_util.adb (Make_Literal_Range): use bound of literal rather
f91b40db 11162 than Index'First, its lower bound may be different from 1.
82a4b025 11163
07fc65c4 11164 * exp_util.adb: Undo earlier change, fixes ACVC regressions C48009B
f91b40db 11165 and C48009J
82a4b025 11166
f91b40db
GB
111672001-12-05 Vincent Celier <celier@gnat.com>
11168
11169 * prj-nmsc.adb Minor reformatting
82a4b025 11170
07fc65c4 11171 * prj-nmsc.adb (Language_Independent_Check): Reset Library flag if
f91b40db 11172 set and libraries are not supported.
82a4b025 11173
f91b40db
GB
111742001-12-05 Ed Schonberg <schonber@gnat.com>
11175
07fc65c4
GB
11176 * sem_ch3.adb (Build_Derived_Private_Type): set Public status of
11177 private view explicitly, so the back-end can treat as a global
f91b40db
GB
11178 when appropriate.
11179
45d04cbb
GB
111802001-12-05 Ed Schonberg <schonber@gnat.com>
11181
11182 * sem_ch12.adb (Instantiate_Package_Body): if instance is a compilation
11183 unit, always replace instance node with new body, for ASIS use.
11184
111852001-12-05 Vincent Celier <celier@gnat.com>
82a4b025 11186
07fc65c4
GB
11187 * prj-nmsc.adb (Language_Independent_Check): Issue a warning if
11188 libraries are not supported and both attributes Library_Name and
45d04cbb 11189 Library_Dir are specified.
82a4b025 11190
07fc65c4 11191 * prj-proc.adb (Expression): Set location of Result to location of
45d04cbb 11192 first term.
82a4b025 11193
45d04cbb
GB
11194 * Makefile.in: Add mlib.o, mlib-fil.o, mlib-tgt and mlib-utl to GNATLS.
11195 (prj-nmsc is now importing MLib.Tgt)
82a4b025 11196
45d04cbb
GB
11197 * prj-proc.adb: Put the change indicated above that was forgotten.
11198
84436014
RD
111992001-12-05 Robert Dewar <dewar@gnat.com>
11200
11201 * Makefile.in: Add dependencies for System.IO for GNAT.Regexp
11202
7ae0dcd8
ES
112032001-12-05 Ed Schonberg <schonber@gnat.com>
11204
11205 * sem_ch3.adb (Build_Derived_Concurrent_Type): If derivation imposes a
11206 constraint, introduce explicit subtype declaration and derive from it.
82a4b025 11207
7ae0dcd8
ES
11208 * sem_ch3.adb: Minor reformatting
11209
c9a4817d
RD
112102001-12-05 Robert Dewar <dewar@gnat.com>
11211
07fc65c4 11212 * checks.adb (Determine_Range): Increase cache size for checks.
c9a4817d 11213 Minor reformatting
82a4b025 11214
c9a4817d
RD
11215 * exp_ch6.adb: Minor reformatting
11216 (Expand_N_Subprogram_Body): Reset Is_Pure for any subprogram that has
11217 a parameter whose root type is System.Address, since treating such
11218 subprograms as pure in the code generator is almost surely a mistake
11219 that will lead to unexpected results.
82a4b025 11220
07fc65c4 11221 * exp_util.adb (Remove_Side_Effects): Clean up old ??? comment and
c9a4817d 11222 change handling of conversions.
82a4b025 11223
c9a4817d
RD
11224 * g-regexp.adb: Use System.IO instead of Ada.Text_IO.
11225
2514b839
ES
112262001-12-05 Ed Schonberg <schonber@gnat.com>
11227
07fc65c4
GB
11228 * sem_ch3.adb (Analyze_Object_Declaration): If expression is an
11229 aggregate with static wrong size, attach generated Raise node to
2514b839
ES
11230 declaration.
11231
457b6274
RD
112322001-12-05 Robert Dewar <dewar@gnat.com>
11233
07fc65c4 11234 * sem_attr.adb (Analyze_Attribute): Defend against bad Val attribute.
457b6274
RD
11235 Fixes compilation abandoned bomb in B24009B.
11236
19349925
ES
112372001-12-05 Ed Schonberg <schonber@gnat.com>
11238
11239 * sem_ch12.adb:
11240 Document use of Associated_Node on Selected_Components.
11241 (Save_Global_Operand_Descendants): Change to Save_Entity_Descendants,
11242 to clarify use of untyped descendant fields.
11243
6663c393
RD
112442001-12-05 Robert Dewar <dewar@gnat.com>
11245
11246 * prj-dect.ads: Add ??? comment
11247 Add 2001 to copyright notice (was not done in after all)
82a4b025 11248
6663c393 11249 * prj-part.adb: Minor reformatting. Reword one awkward error message.
82a4b025 11250
6663c393 11251 * prj.ads: Minor reformatting throughout, and add some ??? comments
82a4b025 11252
6663c393
RD
11253 * snames.ads: Minor reformatting
11254
d7b2a6af
GB
112552001-12-05 Geert Bosch <bosch@gnat.com>
11256
11257 * snames.adb: Autoupdate
11258
fbc9a404
VC
112592001-12-05 Vincent Celier <celier@gnat.com>
11260
11261 * prj-dect.adb (Parse): Rename parameter Modifying to Extends.
82a4b025 11262
fbc9a404 11263 * prj-dect.ads (Parse): Rename parameter Modifying to Extends.
82a4b025 11264
fbc9a404 11265 * prj-env.adb: Minor comment changes (modifying -> extends).
82a4b025 11266
fbc9a404 11267 * prj-nmsc.adb: Minor comment changes (modifying -> extends).
82a4b025 11268
07fc65c4 11269 * prj-part.adb (Parse_Single_Project): Change Tok_Modifying to
fbc9a404 11270 Tok_Extends.
82a4b025 11271
fbc9a404 11272 * prj.adb (Initialize): Change Modifying to Extends.
82a4b025 11273
fbc9a404 11274 * scans.ads (Token_Type): Change Tok_Modifying to Tok_Extends.
82a4b025 11275
fbc9a404 11276 * prj.ads: Minor comment change (Modifying -> extending).
82a4b025 11277
fbc9a404
VC
11278 * snames.ads: Change modifying to extends.
11279
7cff0b1b
RD
112802001-12-05 Robert Dewar <dewar@gnat.com>
11281
07fc65c4 11282 * sem_warn.adb: Remove stuff for conditionals, we are not going to
7cff0b1b 11283 do this after all.
82a4b025 11284
07fc65c4 11285 * sem_warn.ads: Remove stuff for conditionals, we are not going to
7cff0b1b
RD
11286 do this after all. Add 2001 to copyright notice
11287
4f56ebb7
GB
112882001-12-04 Geert Bosch <bosch@gnat.com>
11289
11290 * einfo.h, sinfo.h, treeprs.ads: Regenerate.
11291
053defdf
RD
112922001-12-04 Robert Dewar <dewar@gnat.com>
11293
07fc65c4
GB
11294 * errout.adb (Error_Msg): Ignore attempt to put error msg at junk
11295 location if we already have errors. Stops some cases of cascaded
053defdf 11296 errors.
82a4b025 11297
053defdf
RD
11298 * errout.adb: Improve comment.
11299
f311e166
RD
113002001-12-04 Robert Dewar <dewar@gnat.com>
11301
11302 * sem_ch12.adb:
11303 (Analyze_Formal_Type_Definition): Defend against Error.
11304 (Analyze_Formal_Subprogram): Defend against Error.
82a4b025 11305
07fc65c4 11306 * par-ch12.adb (F_Formal_Type_Declaration): In case of error,
f311e166
RD
11307 remove following semicolon if present. Removes cascaded error.
11308
d61bd65a
DR
113092001-12-04 Douglas B. Rupp <rupp@gnat.com>
11310
11311 * bindgen.adb:
11312 (Gen_Exception_Table_Ada): Write "begin" and then return if Num
11313 exceptions equals 0.
11314 (Gen_Exception_Table_C): Return if Num exceptions equals 0.
11315 Fixes PIWG E tests (which have to be run with -gnatL).
11316
4ba603e2
RD
113172001-12-04 Robert Dewar <dewar@gnat.com>
11318
11319 * einfo.ads: Minor reformatting
11320
57568d91
ES
113212001-12-04 Ed Schonberg <schonber@gnat.com>
11322
07fc65c4
GB
11323 * einfo.ads: Block_Node points to the identifier of the block, not to
11324 the block node itself, to preserve the link when the block is
11325 rewritten, e.g. within an if-statement with a static condition.
82a4b025 11326
07fc65c4 11327 * inline.adb (Cleanup_Scopes): recover block statement from block
57568d91 11328 entity using new meaning of Block_Node.
82a4b025 11329
07fc65c4 11330 * sem_ch5.adb (Analyze_Block_Statement): set Block_Node to point to
57568d91
ES
11331 identifier of block node, rather than to node itself.
11332
0815d36a 113332001-12-04 Gary Dismukes <dismukes@gnat.com>
82a4b025 11334
0815d36a
GD
11335 * layout.adb:
11336 (Get_Max_Size): Fix "start of processing" comment to say Get_Max_Size.
11337 (Discrimify): Go back to setting the Etypes of the selected component
07fc65c4 11338 because the Vname component does not exist at this point and will
0815d36a
GD
11339 fail name resolution. Also set Analyzed.
11340 Remove with and use of Sem_Res.
11341
edc0f304
AC
113422001-12-04 Arnaud Charlet <charlet@gnat.com>
11343
11344 * Makefile.in: (HIE_SOURCES): add s-fat*.
11345
32213142
RD
113462001-12-04 Robert Dewar <dewar@gnat.com>
11347
11348 * sem_attr.adb:
11349 (Compile_Time_Known_Attribute): New procedure.
11350 (Eval_Attribute, case Size): Use Compile_Time_Known_Attribute to ensure
11351 proper range check.
11352
c0def2ad
ES
113532001-12-04 Ed Schonberg <schonber@gnat.com>
11354
07fc65c4 11355 * sem_ch7.adb (New_Private_Type): Set Is_Tagged_Type flag before
c0def2ad
ES
11356 processing discriminants to diagnose illegal default values.
11357
ee0a48c5
ES
113582001-12-04 Ed Schonberg <schonber@gnat.com>
11359
07fc65c4
GB
11360 * sem_attr.adb (Resolve_Attribute): Handle properly an non-classwide
11361 access discriminant within a type extension that constrains its
ee0a48c5
ES
11362 parent discriminants.
11363
dd5875a6
ES
113642001-12-04 Ed Schonberg <schonber@gnat.com>
11365
07fc65c4 11366 * sem_ch3.adb (Find_Type_Of_Subtype_Indic): If subtype indication
dd5875a6 11367 is malformed, use instance of Any_Id to allow analysis to proceed.
82a4b025 11368
07fc65c4 11369 * par-ch12.adb (P_Formal_Type_Declaration): Propagate Error if
dd5875a6
ES
11370 type definition is illegal.
11371 (P_Formal_Derived_Type_Definition): Better recovery when TAGGED is
11372 misplaced.
11373
c2a41e57
ES
113742001-12-04 Ed Schonberg <schonber@gnat.com>
11375
07fc65c4 11376 * sem_warn.adb (Output_Unreferenced_Messages): Extend previous fix to
c2a41e57
ES
11377 constants.
11378
0ae84753
RD
113792001-12-04 Robert Dewar <dewar@gnat.com>
11380
11381 * errout.adb: Minor reformatting
11382
63db260e
RD
113832001-12-04 Robert Dewar <dewar@gnat.com>
11384
11385 * exp_util.adb: Minor reformatting from last change
82a4b025 11386
07fc65c4
GB
11387 * errout.adb (Check_For_Warning): For a Raised_Constraint_Error node
11388 which is a rewriting of an expression, traverse the original
63db260e
RD
11389 expression to remove warnings that may have been posted on it.
11390
c6d289f4
ES
113912001-12-04 Ed Schonberg <schonber@gnat.com>
11392
07fc65c4 11393 * exp_util.adb (Must_Be_Aligned): Return false for a component of a
c6d289f4
ES
11394 record that has other packed components.
11395
5917e80d
DR
113962001-12-04 Douglass B. Rupp <rupp@gnat.com>
11397
11398 * adaint.c: Minor cleanups.
11399
2c70f9dd
DR
114002001-12-04 Douglass B. Rupp <rupp@gnat.com>
11401
11402 * adaint.c: Do not use utime.h on vxworks.
11403
e59b3387
AC
114042001-12-04 Arnaud Charlet <charlet@gnat.com>
11405
07fc65c4 11406 * Makefile.adalib: Clarify step 3 (use of gnat.adc) as it causes
e59b3387
AC
11407 more confusion than it solves.
11408
e288604a
GB
114092001-12-04 Geert bosch <bosch@gnat.com>
11410
11411 * einfo.h, nmake.adb, nmake.ads, sinfo.h treeprs.ads: Regenerate.
11412
5ac21013
GB
114132001-12-04 Geert Bosch <bosch@gnat.com>
11414
07fc65c4 11415 * Makefile.in (update-sources): New target.
5ac21013
GB
11416 For use by gcc_release script.
11417
7dd5bd5e
ES
114182001-12-04 Ed Schonberg <schonber@gnat.com>
11419
07fc65c4 11420 * sem_prag.adb (Analyze_Pragma, case Validity_Checks): do not treat as
7dd5bd5e
ES
11421 a configuration pragma, it is now legal wherever a pragma can appear.
11422
a078a589
ZW
114232001-12-04 Zack Weinberg <zack@codesourcery.com>
11424
11425 * Makefile.in: Don't set ALL. Delete @cross_defines@,
11426 @cross_overrides@, @build_overrides@ stanzas. INTERNAL_CFLAGS
11427 is now @CROSS@ -DIN_GCC; update comment.
11428
0839863c
GB
114292001-12-04 Robert Dewar <dewar@gnat.com>
11430
11431 * einfo.adb (Has_Pragma_Pure_Function): New flag.
11432 Fix problem that stopped ceinfo from working
82a4b025 11433
0839863c 11434 * einfo.ads (Has_Pragma_Pure_Function): New flag.
82a4b025 11435
0839863c
GB
11436 * sem_prag.adb (Pure_Function): Set new flag Has_Pragma_Pure_Function.
11437
114382001-12-04 Douglas B. Rupp <rupp@gnat.com>
9678de49
DR
11439
11440 * gnatchop.adb:
11441 (File_Time_Stamp): New procedure.
11442 (Preserve_Mode): New boolean.
11443 (Write_Unit): Pass time stamp.
11444 Implement -p switch (preserve time stamps).
82a4b025 11445
9678de49 11446 * gnatcmd.adb (CHOP): Add translation for -p (/PRESERVE).
82a4b025 11447
9678de49 11448 * gnatchop.adb: Do usage info for -p switch
82a4b025 11449
9678de49 11450 * adaint.h (__gnat_set_file_time_name): New function
82a4b025 11451
9678de49 11452 * adaint.c (__gnat_set_file_time_name): Implement
82a4b025 11453
9678de49
DR
11454 * adaint.h: Fix typo
11455
3b9a13c4
RD
114562001-12-03 Robert Dewar <dewar@gnat.com>
11457
667e5c5d 11458 * sinfo.ads: Minor reformatting. N_Freeze_Entity node does not
b4f94ac1 11459 have Associated_Node.
3b9a13c4 11460
767b404e
RD
114612001-12-03 Robert Dewar <dewar@gnat.com>
11462
11463 * prj-proc.adb: Minor reformatting
667e5c5d 11464
767b404e
RD
11465 * make.adb: Minor reformatting
11466
11ac71ba
GB
114672001-12-03 Geert Bosch <bosch@gnat.com>
11468
667e5c5d 11469 * make.adb: Minor reformatting.
11ac71ba 11470
ef3d4d6e 114712001-12-03 Robert Dewar <dewar@gnat.com>
b1446533
RD
11472
11473 * sem_ch12.adb: Minor reformatting
11474
d6d32b24
ES
114752001-12-03 Ed Schonberg <schonber@gnat.com>
11476
667e5c5d
AJ
11477 * sem_ch12.adb (Inline_Instance_Body): Use Save_Scope_Stack and
11478 push Standard on the stack before analyzing the instance body,
d6d32b24 11479 in order to have a clean visibility environment.
667e5c5d
AJ
11480
11481 * sem_ch12.adb (Inline_Instance_Body): Remove redundant code.
d6d32b24 11482
13f08f03
ES
114832001-12-03 Ed Schonberg <schonber@gnat.com>
11484
667e5c5d 11485 * sem_ch12.adb (Instantiate_Package_Body): Protect against double
13f08f03
ES
11486 instantiation of a body that contains an inlined body.
11487
3bd6c100
ES
114882001-12-03 Ed Schonberg <schonber@gnat.com>
11489
11490 * sem_ch12.adb:
11491 (Analyze_generic_subprogram_Declaration): Set outer_generic_scope,
11492 to prevent freezing within formal packages.
11493 (Freeze_Subprogram_Body): If body comes from another instance that
11494 appeared before its own body, place freeze node at end of current
11495 declarative part, to prevent a back-end crash.
11496 (Inline_Instance_Body): Handle properly a package instance within
11497 a subprogram instance that is a child unit.
11498
58d07d8f
GS
114992001-12-01 Graham Stott <grahams@redhat.com>
11500
11501 * Makefile.in (misc.o): Add missing $(srcdir) prefix
11502 and add optabs.h dependency.
11503
11504 * misc.c: Include optabs.h
11505 (gnat_tree_code_type): Make static and const.
11506 (gnat_tree_code_length): Likewise.
11507 (gnat_tree_code_name): Likewise.
11508 (update_setjmp_buf): Obtain operands mode from insn_data.
11509
c87222f0
RH
115102001-11-29 Richard Henderson <rth@redhat.com>
11511
11512 * init.c: Remove obsolete dwarf2 frame.h section.
11513
d3945f0a
JM
115142001-11-29 Joseph S. Myers <jsm28@cam.ac.uk>
11515
11516 * Make-lang.in (ada.generated-manpages): New dummy target.
11517
9f639397
ES
115182001-11-29 Ed Schonberg <schonber@gnat.com>
11519
667e5c5d
AJ
11520 * g-os_lib.adb (Add_To_Command): use explicit loop to move string
11521 into Command, an array conversion is illegal here. Uncovered by
9f639397
ES
11522 ACATS B460005.
11523
c835e5c6
GB
115242001/11/28 Geert Bosch <bosch@gnat.com>
11525
11526 * init.c: Minor whitespace changes.
11527
49bb4548
DR
115282001-11-28 Doug Rupp <rupp@gnat.com>
11529
667e5c5d 11530 * init.c: (__gnat_install_handler,VMS): Increase size of alternate
49bb4548
DR
11531 signal stack.
11532
ea2417e5
ZW
115332001-11-28 Zack Weinberg <zack@codesourcery.com>
11534
11535 * misc.c (gnat_expand_constant): Move declaration above
11536 definition of lang_hooks.
11537 (LANG_HOOKS_EXPAND_CONSTANT): Set to gnat_expand_constant.
11538 (gnat_init): lang_expand_constant no longer exists.
11539
11540 (internal_error_function): Remove #ifdef HAVE_VPRINTF. We
11541 always have vprintf.
11542 (gnat_init): Always call set_internal_error_function.
11543
f8e0aa73
AJ
115442001-11-27 Andreas Jaeger <aj@suse.de>
11545
11546 * Makefile.in (stamp-tool_src_dir): Use symbolic link.
11547
d99b0e79
LG
115482001-11-27 Laurent Guerby <guerby@acm.org>
11549
11550 * Makefile.in: Regenerate Ada dependencies.
11551
3f0496e5
RH
115522001-11-26 Richard Henderson <rth@redhat.com>
11553
11554 * Make-lang.in (gnatbind, gnatmake, gnatbl, gnatchop, gnatcmd,
11555 gnatlink, gnatkr, gnatls, gnatmem, gnatprep, gnatpsta, gnatpsys,
11556 gnatxref, gnatfind, gnatlbr): Depend on CONFIG_H and prefix.o.
11557
92fa4733
LG
115582001-11-25 Laurent Guerby <guerby@acm.org>
11559
11560 * sysdep.c (rts_get_*): Fix style.
11561
07626501
LG
115622001-11-19 Laurent Guerby <guerby@acm.org>
11563
11564 * Makefile.in (INCLUDES_FOR_SUBDIR): Remove redundant system include
11565 since it is of no apparent use and cause warnings.
11566
22703ccc
NB
115672001-11-18 Neil Booth <neil@daikokuya.demon.co.uk>
11568
11569 * misc.c (gnat_decode_option, gnat_init_options): Make definitions
11570 static too.
11571 (gnat_init): Don't return NULL.
11572 (finish_parse): Remove.
11573
b0df4321
LG
115742001-11-17 Laurent Guerby <guerby@acm.org>
11575
11576 * Make-lang.in (GNATLIBFLAGS): Add -W -Wall.
11577 * gigi.h (init_decl_processing): Rename to gnat_init_decl_processing.
11578 * io-aux.c: Provide K&R prototypes to all functions, reformat code.
11579 * lang-spec.h: Add missing struct field to silence warnings.
11580 * sysdep.c (rts_get_*): Provide K&R prototype.
11581 * sysdep.c (Unlock_Task, Lock_Task): Move to K&R prototype.
11582 * traceback.c (Unlock_Task, Lock_Task): Likewise.
11583 * tracebak.c (__gnat_backtrace): Remove unused variable.
11584 * utils.c (end_subprog_body): Move to K&R style.
11585
d215024f
RK
11586Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
11587
11588 * trans.c, utils2.c: Remove PALIGN parameter to get_inner_reference.
11589
f5e99456
NB
115902001-11-15 Neil Booth <neil@daikokuya.demon.co.uk>
11591
11592 * misc.c (gnat_init): Change prototype. Include the
11593 functionality of the old init_parse and init_decl_processing.
11594 (gnat_init_decl_processing): New prototype.
11595 (init_parse): Remove.
11596 * utils.c (init_decl_processing): Rename gnat_init_decl_processing.
11597
5d69f816
NB
115982001-11-09 Neil Booth <neil@daikokuya.demon.co.uk>
11599
11600 * misc.c (gnat_print_decl, gnat_print_type): Renamed.
11601 (LANG_HOOKS_PRINT_DECL, LANG_HOOKS_PRINT_TYPE): Override.
11602 (print_lang_statistics, lang_print_xnode, print_lang_identifier,
11603 set_yydebug): Remove.
11604
3ac88239
NB
116052001-11-09 Neil Booth <neil@daikokuya.demon.co.uk>
11606
11607 * misc.c (LANG_HOOKS_NAME, LANG_HOOKS_IDENTIFIER_SIZE): Override.
11608 (struct lang_hooks): Constify.
11609 (language_string, lang_identify): Remove.
11610 * utils.c (init_decl_processing): Update.
11611
d23c55c2
NB
116122001-11-06 Neil Booth <neil@cat.daikokuya.demon.co.uk>
11613
11614 * misc.c: Include langhooks-def.h.
11615 * Makefile.in: Update.
11616
04a1b79c
RD
116172001-10-30 Robert Dewar <dewar@gnat.com>
11618
11619 * style.adb:
11620 (Check_Identifier): Rewrite circuit to be compatible with use of letters
11621 in the upper half of ASCII.
11622 (Check_Identifier): Minor reformatting
11623
81fa2d39
GB
116242001-10-30 Geert Bosch <bosch@gnat.com>
11625
f8e0aa73 11626 * (Associated_Node, Set_Associated_Node): Do not check for
81fa2d39
GB
11627 Freeze_Entity.
11628
ffc5527f
RD
116292001-10-30 Robert Dewar <dewar@gnat.com>
11630
11631 * a-reatim.ads: Minor reformatting
11632
865335eb
RD
116332001-10-30 Robert Dewar <dewar@gnat.com>
11634
f8e0aa73 11635 * gnatdll.adb: Minor reformatting throughout. Many ??? added for
865335eb
RD
11636 undocumented declarations.
11637
5e257178
PO
116382001-10-30 Pascal Obry <obry@gnat.com>
11639
f8e0aa73 11640 * gnatdll.adb (Parse_Command_Line): handle -g option to be passed
5e257178
PO
11641 to the binder and linker.
11642 Minor style fix.
f8e0aa73 11643
5e257178
PO
11644 * mdll.ads: Fix layout. Update copyright notice.
11645
11646 * mdll.adb: Fix layout. Update copyright notice.
11647
1753e0ad
RD
116482001-10-30 Robert Dewar <dewar@gnat.com>
11649
11650 * usage.adb: Minor fix to output for -gnaty.
11651
84bfdde0
ES
116522001-10-30 Ed Schonberg <schonber@gnat.com>
11653
f8e0aa73
AJ
11654 * a-reatim.ads: Makes Seconds_Count into a 64-bit integer,
11655 to accommodate all its possible values.
84bfdde0 11656
f8e0aa73 11657 * a-reatim.adb (Split): Special-case handling of Time_Span_First
84bfdde0
ES
11658 and of small absolute values of T.
11659
c296e5fc
RK
116602001-10-30 Richard Kenner <kenner@gnat.com>
11661
f8e0aa73
AJ
11662 * misc.c (gnat_expand_expr, case NULL_EXPR): Remove call to
11663 set_mem_attributes since not needed and wrong if RESULT if a REG;
c296e5fc
RK
11664 fixes ACATS failures.
11665
07c809df
GB
116662001-10-30 Geert Bosch <bosch@gnat.com>
11667
11668 * 86numaux.adb, a-tigeau.ads, a-wtgeau.ads, fname-sf.ads, g-traceb.ads,
11669 s-tasdeb.ads, sem_maps.ads: Add 2001 to copyright notice.
11670
54d22416 116712001-10-30 Robert Dewar <dewar@gnat.com>
f8e0aa73 11672
54d22416 11673 * bindusg.adb: Undocument -f switch.
f8e0aa73 11674
54d22416 11675 * gnatcmd.adb: Remove /FULL_ELABORATION.
f8e0aa73
AJ
11676
11677 * opt.ads (Force_RM_Elaboration_Order): Document that this is
54d22416 11678 obsolescent.
f8e0aa73 11679
54d22416 11680 * gnatbind.adb: Output new warning for use of obsolescent -f switch.
f8e0aa73 11681
54d22416
RD
11682 * gnatbind.adb: Minor update of warning msg.
11683
af5cf6f8
VC
116842001-10-30 Vincent Celier <celier@gnat.com>
11685
f8e0aa73 11686 * gnatcmd.adb (MAKE, BIND, LINK, LIST, FIND, XREF): Add translations
af5cf6f8 11687 for project file switches (-P (/PROJECT_FILE=),
f8e0aa73 11688 -X (/EXTERNAL_REFERENCE=) and -vPx (/PROJECT_FILE_VERBOSITY=DEFAULT
af5cf6f8
VC
11689 or MEDIUM or HIGH)
11690
984bc4c3
GB
116912001-10-30 Geert Bosch <bosch@gnat.com>
11692
11693 * decl.c: Minor whitespace fixes.
11694
5dece937
RK
116952001-10-30 Richard Kenner <kenner@gnat.com>
11696
11697 * utils2.c (build_allocator): Test for SIZE overflow in array case too
11698
de4bf6cb
GB
116992001-10-30 Geert Bosch <bosch@gnat.com>
11700
f8e0aa73 11701 * ali-util.adb (Initialize_Checksum): Use out-mode instead of in out.
de4bf6cb 11702 Found due to GCC 3.0 warning of using uninitialized value.
f8e0aa73 11703
de4bf6cb
GB
11704 * layout.adb:
11705 (Get_Max_Size): Use variant record for tracking value/expression.
11706 Makes logic clearer and prevents warnings for uninitialized variables.
11707 (Layout_Array_Type): Use variant record for tracking value/expression.
11708 Makes logic clearer and prevents warnings for uninitialized variables.
11709
f5e44987
RD
117102001-10-30 Robert Dewar <dewar@gnat.com>
11711
11712 * lib.adb: Minor reformatting
11713
11714 * s-taprop.ads: Minor reformatting
11715
45659035 117162001-10-29 Laurent Guerby <guerby@acm.org>
f8e0aa73 11717
45659035
GB
11718 * init.c:
11719 (Raise_From_Signal_Handler, Propagate_Signal_Exception): Make arg
11720 const.
11721 (_gnat_error_handler): Make MSG const.
11722
117232001-10-29 Richard Kenner <kenner@gnat.com>
11724
11725 * sysdep.c: Fix localtime_r problem on LynxOS.
11726 Also remove #elif to avoid warnings.
f8e0aa73
AJ
11727
11728 * misc.c (yyparse): Don't set up and register jmpbuf; remove decls
45659035 11729 used by this.
f8e0aa73 11730
45659035
GB
11731 * decl.c (annotate_value): Make SIZE unsigned to avoid warning.
11732
638e383e
JM
117332001-10-28 Joseph S. Myers <jsm28@cam.ac.uk>
11734
11735 * 86numaux.adb, a-tigeau.ads, a-wtgeau.ads, decl.c, exp_ch6.adb,
11736 exp_ch9.adb, exp_util.adb, fname-sf.ads, freeze.ads, g-awk.adb,
11737 g-comlin.ads, g-dirope.adb, g-dyntab.ads, g-socket.ads,
11738 g-table.ads, g-traceb.ads, gnat-style.texi, gnatchop.adb, init.c,
11739 layout.adb, layout.ads, mdllfile.ads, mlib-fil.ads, osint.ads,
11740 s-fatgen.adb, s-imgrea.adb, s-taprop.ads, s-tasdeb.ads,
11741 sem_aggr.adb, sem_attr.adb, sem_case.ads, sem_ch13.adb,
11742 sem_ch3.adb, sem_elab.adb, sem_maps.ads, sem_res.adb,
11743 sem_util.ads, sinfo.ads, sinput.ads, table.adb, table.ads,
11744 types.ads, urealp.adb: Fix spelling errors.
11745
97f6baa0
LG
117462001-10-27 Laurent Guerby <guerby@acm.org>
11747
11748 * trans.c (gigi): Fix non determinism leading to bootstrap
11749 comparison failures for debugging information.
11750
46b58b8c
FW
117512001-10-26 Florian Weimer <fw@deneb.enyo.de>
11752
11753 * gnat_rm.texi: Use @./@: where appropriate.
11754
30151c7b
RD
117552001-10-26 Robert Dewar <dewar@gnat.com>
11756
11757 * sinfo.adb: Define Associated_Node to overlap Entity field. Cleanup.
11758
c0b1738d
RK
117592001-10-26 Richard Kenner <kenner@gnat.com>
11760
11761 * gmem.c (__gnat_gmem_read_next): Properly check for EOF
11762
5b09c153
RK
117632001-10-26 Richard Kenner <kenner@gnat.com>
11764
f8e0aa73 11765 * decl.c (validate_size): Modify message for bad size to avoid
5b09c153
RK
11766 implication that compiler is modifying the size.
11767
4d553668
RD
117682001-10-26 Robert Dewar <dewar@gnat.com>
11769
11770 * prj-util.adb: Minor reformatting. Fix bad header format.
11771
3e542a58
RD
117722001-10-26 Robert Dewar <dewar@gnat.com>
11773
11774 * sinfo.ads: Define Associated_Node to overlap Entity field. Cleanup.
f8e0aa73 11775
3e542a58 11776 * sinfo.ads: Clarify use of Associated_Node (documentation only).
f8e0aa73
AJ
11777
11778 * sem_ch12.adb: Change Node4 to Associated_Node. Change
11779 Associated_Node to Get_Associated_Node. Put use of Unchecked_Access
3e542a58
RD
11780 much more narrowly in places where needed. These are cleanups.
11781
0bf08bfe
JB
117822001-10-26 Joel Brobecker <brobecke@gnat.com>
11783
11784 * 5zosinte.ads (null_pthread): new constant.
f8e0aa73 11785
0bf08bfe
JB
11786 * 5ztaprop.adb:
11787 (Initialize_TCB): Initialize thread ID to null, to be able to verify
11788 later that this field has been set.
11789 (Finalize_TCB): ditto.
11790 (Suspend_Task): Verify that the thread ID is not null before using it.
11791 (Resume_Task): ditto.
f8e0aa73 11792
0bf08bfe
JB
11793 * s-tasdeb.adb:
11794 (Resume_All_Tasks): Lock the tasks list before using it.
11795 (Suspend_All_Tasks): ditto.
11796
7a3a8c06
RK
117972001-10-26 Richard Kenner <kenner@gnat.com>
11798
f8e0aa73 11799 * decl.c (gnat_to_gnu_entity, case E_General_Access_Type):
7a3a8c06
RK
11800 Make constant variant of designated type for Is_Access_Constant.
11801 Call update_pointer_to with main variant.
f8e0aa73
AJ
11802
11803 * trans.c (process_freeze_entity, process_type):
7a3a8c06 11804 Call update_pointer_to on main variant.
f8e0aa73 11805
7a3a8c06
RK
11806 * utils.c (update_pointer_to): Make corresponding variant for NEW_TYPE.
11807 If main variant, update all other variants.
f8e0aa73
AJ
11808
11809 * utils2.c (build_unary_op, case INDIRECT_REF): No longer set
7a3a8c06
RK
11810 TREE_STATIC.
11811
a160babb
RD
118122001-10-26 Robert Dewar <dewar@gnat.com>
11813
11814 * prj-util.adb: Minor reformatting
11815
b403bd17
RD
118162001-10-26 Robert Dewar <dewar@gnat.com>
11817
11818 * prj-util.adb: Minor reformatting
11819
5fc3b4c7
RD
118202001-10-26 Robert Dewar <dewar@gnat.com>
11821
11822 * prj-attr.adb: Minor reformatting throughout
11823
8c736034
RD
118242001-10-26 Robert Dewar <dewar@gnat.com>
11825
11826 * prj-attr.ads: Minor reformatting
11827 Add ??? comment (this whole spec has almost no comments)
11828
47d5b6ed
VC
118292001-10-26 Vincent Celier <celier@gnat.com>
11830
f8e0aa73 11831 * g-os_lib.adb (Normalize_Pathname): Preserve the double slash
b4f94ac1 11832 ("//") that precede the drive letter on Interix.
47d5b6ed 11833
41af791f
GB
118342001-10-26 Geert Bosch <bosch@gnat.com>
11835
11836 * gnat_rm.texi: Add GNAT Reference Manual.
11837
ed4a1468
RD
118382001-10-25 Robert Dewar <dewar@gnat.com>
11839
f8e0aa73 11840 * sem_ch8.adb (Analyze_Package_Renaming): Skip analysis if Name
b4f94ac1 11841 is Error. Similar change for other renaming cases.
ed4a1468 11842
24377ae4
RD
118432001-10-25 Robert Dewar <dewar@gnat.com>
11844
11845 * s-atacco.ads: Add pragma Inline_Always for functions.
11846 Fix header format. Add copyright 2001
11847
fef3204e
ES
118482001-10-25 Ed Schonberg <schonber@gnat.com>
11849
f8e0aa73 11850 * par-ch3.adb (P_Subtype_Mark_Resync): for an anonymous array
b4f94ac1 11851 return Error rather than Empty so that analysis can proceed.
fef3204e 11852
dfc69d80
ES
118532001-10-25 Ed Schonberg <schonber@gnat.com>
11854
f8e0aa73 11855 * sem_util.adb (Enter_Name): better handling of cascaded error
b4f94ac1 11856 messages when a unit appears in its own context.
dfc69d80 11857
5a15af62
ES
118582001-10-25 Ed Schonberg <schonber@gnat.com>
11859
f8e0aa73 11860 * sem_util.adb (Defining_Entity): in case of error, attach created
b4f94ac1 11861 entity to specification, so that semantic analysis can proceed.
5a15af62 11862
2b881d53
RD
118632001-10-25 Robert Dewar <dewar@gnat.com>
11864
f8e0aa73 11865 * sem_util.adb
b4f94ac1 11866 (Defining_Entity): Deal with Error.
2b881d53
RD
11867 (Process_End_Label): Deal with bad end label for.
11868
578053f2
ES
118692001-10-25 Ed Schonberg <schonber@gnat.com>
11870
f8e0aa73 11871 * sem_elab.adb (Check_A_Call): refine message when call is in an
578053f2
ES
11872 instance but callee is not declared in the generic unit.
11873
0597ce0b 118742001-10-25 Ed Schonberg <schonber@gnat.com>
f8e0aa73
AJ
11875
11876 * sem_elab.adb (Check_A_Call): check for renaming before finding the
0597ce0b
ES
11877 enclosing unit, which may already be different from the calling unit.
11878
3de6e6da
GB
118792001-10-25 Geert Bosch <bosch@gnat.com>
11880
11881 * 4gintnam.ads: fix header format.
11882
6f311316
ES
118832001-10-25 Ed Schonberg <schonber@gnat.com>
11884
f8e0aa73 11885 * sem_res.adb (Resolve_Call): if the call is actually an indexing
b4f94ac1
ZW
11886 operation on the result of a parameterless call, perform elaboration
11887 check after the node has been properly rewritten.
f8e0aa73
AJ
11888
11889 * sem_ch12.adb (Copy_Generic_Node): after the proper body has been
b4f94ac1
ZW
11890 inlined within the generic tree, the defining identifier is not a
11891 compilation_unit.
6f311316 11892
17be0cdf
ES
118932001-10-25 Ed Schonberg <schonber@gnat.com>
11894
f8e0aa73 11895 * sem_res.adb (Resolve): special-case resolution of Null in an
b4f94ac1 11896 instance or an inlined body to avoid view conflicts.
f8e0aa73
AJ
11897
11898 * sem_ch12.adb (Copy_Generic_Node): for allocators, check for view
b4f94ac1 11899 compatibility by retrieving the access type of the generic copy.
17be0cdf 11900
ce9e9122
RD
119012001-10-25 Robert Dewar <dewar@gnat.com>
11902
11903 * sem_ch3.adb:
11904 (Analyze_Number_Declaration): Handle error expression.
11905 (Signed_Integer_Type_Declaration): Handle error bound.
11906 (Analyze_Subtype_Indication): Handle error range.
f8e0aa73 11907
ce9e9122
RD
11908 * sem_util.adb (Get_Index_Bounds): Check for Error.
11909
e12fbc9e
RD
119102001-10-25 Robert Dewar <dewar@gnat.com>
11911
f8e0aa73 11912 * restrict.adb (Set_No_Run_Time_Mode): Set Discard_Names as default
e12fbc9e
RD
11913 in no run time mode.
11914
52b80488
PO
119152001-10-25 Pascal Obry <obry@gnat.com>
11916
f8e0aa73 11917 * gnatmem.adb (Read_Next): fix Curs2 value to properly handle quiet
b4f94ac1 11918 mode case for ALLOC case.
f8e0aa73
AJ
11919
11920 * gnatmem.adb (Read_Next): correctly fix parsing in Quiet mode on
b4f94ac1 11921 all platforms. Improvement of last change.
52b80488 11922
316ad9c5
RD
119232001-10-25 Robert Dewar <dewar@gnat.com>
11924
11925 * exp_ch4.adb (Expand_N_Allocator): Minor reformatting.
11926
1a7e4df4
GB
119272001-10-25 Geert Bosch <bosch@gnat.com>
11928
11929 * osint.adb (Is_Relative): Remove duplicate.
11930
90a9fff2
PO
119312001-10-25 Pascal Obry <obry@gnat.com>
11932
f8e0aa73 11933 * osint.adb (Read_Default_Search_Dirs): correctly detect relative
b4f94ac1 11934 pathnames in UNIX and DOS style with drive letter.
90a9fff2 11935 (Is_Relative): new routine.
f8e0aa73 11936
90a9fff2 11937 * osint.adb: Minor reformatting
f8e0aa73
AJ
11938
11939 * osint.adb (Is_Relative): implementation using
b4f94ac1 11940 GNAT.OS_Lib.Is_Absolute_Path. Better fix.
90a9fff2 11941
5c1ba4cc
PO
119422001-10-25 Pascal Obry <obry@gnat.com>
11943
f8e0aa73 11944 * g-dirope.adb (Basename): correctly compute offset between the
b4f94ac1 11945 original Path and the translated one.
f8e0aa73 11946
5c1ba4cc
PO
11947 * g-dirope.adb: (Base_Name): add some comments.
11948
a7fb206d
RD
119492001-10-25 Robert Dewar <dewar@gnat.com>
11950
f8e0aa73 11951 * exp_imgv.adb (Expand_Image_Attribute): Defend against bad use
b4f94ac1 11952 in HIE mode, avoids compilation abandoned message
f8e0aa73 11953
a7fb206d 11954 * exp_imgv.adb: Correct typo in previous change
f8e0aa73 11955
a7fb206d
RD
11956 * exp_imgv.adb: Correct typo in previous change (not my day!)
11957
e6a7e62e
RD
119582001-10-25 Robert Dewar <dewar@gnat.com>
11959
11960 * s-tpinop.ads: Add 2001 to copyright notice. Fix header format.
11961
0d2b8e0b 119622001-10-25 Pascal Obry <obry@gnat.com>
75c09e7d 11963
f8e0aa73 11964 * g-awk.ads: Move all pragma inlines next to the routine
0d2b8e0b 11965 declarations. This is more uniform with other GNAT spec.
75c09e7d 11966
0d2b8e0b 119672001-10-22 Geert Bosch <bosch@gnat.com>
d2740a69
GB
11968
11969 * Make-lang.in (gnattools, cross-gnattools): Remove gnatmem.
11970
0d2b8e0b 119712001-10-19 Geert Bosch <bosch@gnat.com>
d7ac9bdd
GB
11972
11973 * Makefile.in (tools, gnattools): Remove gnatmem.
11974
17ed6335
RH
119752001-10-17 Richard Henderson <rth@redhat.com>
11976
11977 * Makefile.in (misc.o): Depend on langhooks.h.
11978 * misc.c: Include it.
11979 (LANG_HOOKS_INIT, LANG_HOOKS_INIT_OPTIONS): New.
11980 (LANG_HOOKS_DECODE_OPTION): New.
11981 (lang_hooks): Use LANG_HOOKS_INITIALIZER.
11982
f2436274
FW
119832001-10-16 Florian Weimer <fw@deneb.enyo.de>
11984
11985 * trans.c (tree_transform): Adjust to recent change in
11986 expand_asm_operands to implement named asm operands.
11987
b14127e6
ES
119882001-10-11 Ed Schonberg <schonber@gnat.com>
11989
f8e0aa73 11990 * exp_ch8.adb (Expand_N_Object_Renaming_Declaration): Bugfix in
b14127e6
ES
11991 renaming of discriminant for mutable record type.
11992
e70ee92a
RD
119932001-10-11 Robert Dewar <dewar@gnat.com>
11994
11995 * validsw.adb: Properly save -gnatVn status.
11996
9a5621d7 119972001-10-11 Robert Dewar <dewar@gnat.com>
f8e0aa73 11998
9a5621d7
RD
11999 * usage.adb: Add lines for V switch.
12000
f8e0aa73 12001 * gnatcmd.adb (COMPILE): Revise translations for -gnatV
9a5621d7
RD
12002 (/VALIDITY_CHECKING).
12003
45667f04
ES
120042001-10-11 Ed Schonberg <schonber@gnat.com>
12005
f8e0aa73 12006 * sem_type.adb (Add_One_Interp): an operator for a type declared in
45667f04
ES
12007 an extension of System is known to be visible.
12008
c3de5c4c
ES
120092001-10-11 Ed Schonberg <schonber@gnat.com>
12010
f8e0aa73 12011 * sem_eval.adb (Compare_Fixup): get the bounds of a String_Literal
c3de5c4c
ES
12012 properly. Fixes regression on ACATS C34005G.
12013
4fa964a6
RD
120142001-10-11 Robert Dewar <dewar@gnat.com>
12015
f8e0aa73 12016 * sem_ch5.adb (Analyze_Iteration_Scheme): Suppress warning on null
4fa964a6
RD
12017 loop in generic instance, since this is likely not very useful.
12018
0868e09c
RD
120192001-10-11 Robert Dewar <dewar@gnat.com>
12020
f8e0aa73 12021 * restrict.adb (Disallow in No_Run_Time_Mode): Properly specialize
0868e09c 12022 the error message for high integrity mode.
f8e0aa73
AJ
12023
12024 * rtsfind.adb (RTE): Give message if we try to find an entity that
0868e09c 12025 is not available in high integrity mode.
f8e0aa73 12026
0868e09c
RD
12027 * rtsfind.ads:
12028 (OK_To_Use_In_HIE_Mode): New array.
12029 (RTE): May return Empty in high integrity mode.
f8e0aa73
AJ
12030
12031 * rtsfind.ads (OK_To_Use_In_No_Run_Time_Mode): New name for
12032 OK_To_Use_In_HIE_Mode, now includes System_FAT_xxx.
12033
12034 * sem_ch6.adb (Analyze_Subprogram_Body): Kill body in predefined
12035 unit if not inlined always and in no runtime mode. Fixes problem
0868e09c 12036 caused by new Rtsfind changes.
f8e0aa73
AJ
12037
12038 * sem_ch6.adb (Analyze_Subrogram_Body): Do not Check_References if
0868e09c 12039 body is deleted.
f8e0aa73
AJ
12040
12041 * rtsfind.adb (RTE): Make sure we do not try to load unit after
0868e09c
RD
12042 giving message for entity not available in high integrity mode.
12043
934abf9c 120442001-10-11 Pascal Obry <obry@gnat.com>
f8e0aa73 12045
934abf9c
PO
12046 * impunit.adb: Add GNAT.CRC32.
12047
3c72bea4
ES
120482001-10-11 Ed Schonberg <schonber@gnat.com>
12049
f8e0aa73
AJ
12050 * exp_fixd.adb (Expand_Multiply_Fixed_By_Fixed_Giving_Fixed): handle
12051 properly the case where one universal operand in a non-static
3c72bea4
ES
12052 exponentiation of a real literal.
12053
44d8d2bb
ES
120542001-10-11 Ed Schonberg <schonber@gnat.com>
12055
f8e0aa73
AJ
12056 * exp_ch7.adb (Find_Final_List): for a type appearing in a with_type
12057 clause, return the gobal finalization list, for lack of anthing else.
44d8d2bb 12058
9e2b9627
ES
120592001-10-11 Ed Schonberg <schonber@gnat.com>
12060
f8e0aa73
AJ
12061 * exp_ch7.adb (Make_Transient_Block): if statement is within
12062 exception handler, always use new transient scope to place Clean
9e2b9627
ES
12063 procedure.
12064
cfac6e9f
PO
120652001-10-11 Pascal Obry <obry@gnat.com>
12066
12067 * Makefile.in:
12068 (GNAT_ADA_OBJS): add g-crc32.o, a-tags.o, a-stream.o
12069 (GNATBIND_OBJS): add g-crc32.o, a-tags.o, a-stream.o
12070 (GNATLS_RTL_OBJS): add g-crc32.o
12071 (GNATMAKE_RTL_OBJS): add g-crc32.o
f8e0aa73 12072
cfac6e9f
PO
12073 * ali-util.adb:
12074 (CRC_Match): new function.
f8e0aa73 12075 (Get_File_Checksum): renamed Get_File_CRC. Use the GNAT.CRC32 unit
cfac6e9f
PO
12076 instead of the previous simple checksum algorithm.
12077 (Time_Stamp_Mismatch): use CRC_Match for comparison.
12078 (Set_Source_Table): idem.
f8e0aa73 12079
cfac6e9f 12080 * ali-util.ads:
f8e0aa73 12081 (Get_File_Checksum): renamed Get_File_CRC as now we compute CRC
cfac6e9f
PO
12082 instead of simple checksum.
12083 (CRC_Match): new function.
12084 (CRC_Error): new constant.
f8e0aa73
AJ
12085
12086 * ali.adb (Scan_ALI): rename variable Chk to CRC as we are handling
12087 a CRC now and not a simple checksum. A CRC uses lower-case hex
cfac6e9f 12088 letters, fixes ambiguity in parsing.
f8e0aa73
AJ
12089
12090 * ali.ads (Sdep_Record.Checksum): renamed Sdep_Record.CRC as this
cfac6e9f 12091 is what this variable will store.
f8e0aa73 12092
cfac6e9f 12093 * bcheck.adb: Change reference to chechsum in comments by CRC.
f8e0aa73
AJ
12094 (Check_Consistency): Rename Get_File_Checksum to Get_File_CRC.
12095 rename All_Checksum_Match to All_CRC_Match. Change due to API
12096 renaming since now GNAT does not use a simple checksum but a
cfac6e9f 12097 CRC using GNAT.CRC32.
f8e0aa73
AJ
12098
12099 * gnatls.adb: Rename Checksum to CRC in many places, we use a CRC
cfac6e9f 12100 now and not anymore a simple checksum.
f8e0aa73
AJ
12101
12102 * lib-load.adb: Use Source_CRC instead of Source_Checksum in many
cfac6e9f 12103 places.
f8e0aa73 12104
cfac6e9f 12105 * lib-writ.adb (Write_ALI): Use Source_CRC instead of Source_Checksum.
f8e0aa73 12106
cfac6e9f
PO
12107 * scans.adb:
12108 (Restore_Scan_State): rename Checksum to CRC.
12109 (Save_Scan_State): idem.
f8e0aa73 12110
cfac6e9f
PO
12111 * scans.ads:
12112 With GNAT.CRC32.
12113 (Checksum): rename to CRC.
12114 (Saved_Scan_State): Save_Checksum field renamed to Save_CRC
f8e0aa73
AJ
12115
12116 * scn-nlit.adb: Rename many Accumulate_Checksum to Update (from
cfac6e9f 12117 GNAT.CRC32). Update copyright notice.
f8e0aa73
AJ
12118
12119 * scn-slit.adb: Rename many Accumulate_Checksum to Update (from
cfac6e9f 12120 GNAT.CRC32). Update copyright notice.
f8e0aa73 12121
cfac6e9f
PO
12122 * scn.adb:
12123 (Accumulate_Checksum): removed.
12124 (Update): new procedure. Add a wide-character into the CRC.
f8e0aa73 12125
cfac6e9f
PO
12126 * sinput-l.adb:
12127 (Complete_Source_File_Entry): use CRC32 instead of simple checksum.
f8e0aa73 12128 (Load_File): fix initialization of S (change Source_Checksum to
cfac6e9f 12129 Source_CRC)
f8e0aa73
AJ
12130
12131 * sinput-p.adb (Load_Project_File): rename Source_Checksum to
cfac6e9f 12132 Source_CRC in S initialization.
f8e0aa73 12133
cfac6e9f 12134 * sinput.adb (Source_Checksum): renamed to Source_CRC.
f8e0aa73 12135
cfac6e9f
PO
12136 * sinput.ads (Source_Checksum): renamed to Source_CRC.
12137 Update comments for the CRC.
f8e0aa73 12138
cfac6e9f 12139 * types.adb (Hex): Use lowercase for the letter part.
f8e0aa73
AJ
12140
12141 * types.ads (Get_Hex_String): Returns the hexadecimal representation
12142 for a word. This is currently used only for CRC. In previous version,
12143 the checksum was using a representation with all letter being
12144 upper-case. With the new implementation (using CRC) we do not remove
12145 the 32th bit of the CRC, so we can have an upper-case starting letter
12146 in the CRC. This is not possible to parse in Scan_ALI (ali.adb).
12147 It is ambigous since the CRC was optional and could be followed by
12148 options like EB, EE. So now this routines uses lower-case letter for
12149 the hexadecimal representation. Strange enough only lower case letters
cfac6e9f 12150 where checked in Scan_ALI (even if this was not a possible case).
f8e0aa73 12151
cfac6e9f 12152 * gnatvsn.ads (Library_Version): changed to 3.15a.
f8e0aa73
AJ
12153
12154 * s-crc32.ads: Initial version from GNAT.CRC32. This is the version
cfac6e9f 12155 for the compiler.
f8e0aa73
AJ
12156
12157 * s-crc32.adb: Initial version from GNAT.CRC32. This is the version
cfac6e9f 12158 for the compiler.
f8e0aa73 12159
cfac6e9f
PO
12160 * ali-util.adb: Redo previous change to avoid using word CRC everywhere
12161 Add 2001 to copyright notice
12162 (Accumulate_Checksum): Modify to use System.CRC32.
f8e0aa73
AJ
12163
12164 * ali-util.ads: Redo changes of previous revision to continue to use
cfac6e9f 12165 the word Checksum. Add 2001 to copyright notice.
f8e0aa73 12166
cfac6e9f
PO
12167 * ali.adb: Undo some of previous changes, not needed.
12168 Keep the change for lower case letters in the checksum.
f8e0aa73 12169
cfac6e9f
PO
12170 * ali.ads: Undo previous change not needed.
12171
12172 * bcheck.adb: Undo most of previous change, not needed.
12173 But do use Checksums_Match for checksum comparison.
f8e0aa73 12174
cfac6e9f
PO
12175 * gnatls.adb: Undo most of previous change, not needed.
12176 But do use Checksums_Match for comparing checksums.
f8e0aa73 12177
cfac6e9f 12178 * lib-load.adb: Undo previous change, not needed.
f8e0aa73 12179
cfac6e9f 12180 * lib-writ.adb: Undo previous change, not needed.
f8e0aa73
AJ
12181
12182 * lib-writ.ads: Document that checksums use lower case,
cfac6e9f 12183 not upper case letters.
f8e0aa73 12184
cfac6e9f 12185 * scans.adb: Undo previous change, not needed
f8e0aa73 12186
cfac6e9f 12187 * scans.ads: Undo previous change, not needed.
f8e0aa73 12188
cfac6e9f 12189 * scn-nlit.adb: Undo previous changes, not needed.
f8e0aa73 12190
cfac6e9f 12191 * scn-slit.adb: Undo previous change, not needed. Fix header format.
f8e0aa73 12192
cfac6e9f
PO
12193 * scn.adb:
12194 (Accumulate_Checksum): Use System.CRC32.
12195 (Initialize_Checksum): New procedure.
12196 Remove other changes of previous revision.
f8e0aa73 12197
cfac6e9f 12198 * sinput-p.adb: Undo previous change, not needed.
f8e0aa73 12199
cfac6e9f
PO
12200 * sinput.adb: Undo previous change, not needed.
12201
12202 * sinput-l.adb: Undo previous change, not needed.
f8e0aa73
AJ
12203
12204 * sinput.ads: Undo previous change, not needed. Keep only comment
cfac6e9f 12205 on new checksum algorithm
f8e0aa73 12206
cfac6e9f
PO
12207 * Makefile.in: Add s-crc32 as needed, remove g-crc32.
12208 Also remove a-tags and a-stream from GNAT sources.
f8e0aa73 12209
cfac6e9f 12210 * ali.adb (Scan_ALI): fix typo introduce in latest check-in.
f8e0aa73 12211
cfac6e9f
PO
12212 * Makefile.in (GNATRTL_NONTASKING_OBJS): Add g-crc32.o.
12213
4d6d06a5
GB
122142001-10-11 Geert Bosch <bosch@gnat.com>
12215
12216 * einfo.h: Regenerate.
12217
12218 * nmake.ads: Regenerate.
12219
12220 * nmake.adb: Regenerate.
12221
12222 * sinfo.h: Regenerate.
12223
12224 * treeprs.adb: Regenerate.
12225
c97412e2
GB
122262001-10-10 Geert Bosch <bosch@gnat.com>
12227
12228 * gnat-style.texi: New file describing coding guidelines for Ada.
f8e0aa73 12229
b83018ca
ES
122302001-10-10 Ed Schonberg <schonber@gnat.com>
12231
f8e0aa73 12232 * einfo.adb (Write_Entity_Flags): Elaboration_Entity_Required
b83018ca
ES
12233 is Flag174.
12234
e834fe1f
GB
122352001-10-10 Geert Bosch <bosch@gnat.com>
12236
12237 * snames.ads: Add new names for project facility.
12238
12239 * snames.adb: Update to reflect snames.ads changes.
12240
12241 * snames.h: Update to reflect snames.ads changes.
12242
b30668b7
VC
122432001-10-10 Vincent Celier <celier@gnat.com>
12244
12245 * make.adb:
12246 (Add_Switches): reflect the changes for the switches attributes
12247 Default_Switches indexed by the programming language,
12248 Switches indexed by the file name.
12249 (Collect_Arguments_And_Compile): Idem.
12250 Reflect the attribute name changes.
f8e0aa73 12251
b30668b7
VC
12252 * prj-attr.adb:
12253 (Initialisation_Data): Change the names of some packages and
12254 attributes.
12255 (Initialize): process case insensitive associative arrays.
f8e0aa73 12256
b30668b7
VC
12257 * prj-attr.ads:
12258 (Attribute_Kind): Remove Both, add Case_Insensitive_Associative_Array.
f8e0aa73 12259
b30668b7
VC
12260 * prj-dect.adb:
12261 (Parse_Attribute_Declaration): For case insensitive associative
12262 arrays, set the index string to lower case.
f8e0aa73 12263
b30668b7
VC
12264 * prj-env.adb:
12265 Reflect the changes of the project attributes.
f8e0aa73 12266
b30668b7
VC
12267 * prj-nmsc.adb:
12268 Replace Check_Naming_Scheme by Ada_Check and
12269 Language_Independent_Check.
f8e0aa73 12270
b30668b7
VC
12271 * prj-nmsc.ads:
12272 Replaced Check_Naming_Scheme by 2 procedures:
12273 Ada_Check and Language_Independent_Check.
f8e0aa73 12274
b30668b7
VC
12275 * prj-proc.adb:
12276 (Process_Declarative_Items): For case-insensitive associative
12277 arrays, set the index string to lower case.
12278 (Recursive_Check): Call Prj.Nmsc.Ada_Check, instead of
12279 Prj.Nmsc.Check_Naming_Scheme.
f8e0aa73 12280
b30668b7
VC
12281 * prj-tree.adb:
12282 (Case_Insensitive): New function
12283 (Set_Case_Insensitive): New procedure
f8e0aa73 12284
b30668b7
VC
12285 * prj-tree.ads:
12286 (Case_Insensitive): New function
12287 (Set_Case_Insensitive): New procedure
12288 (Project_Node_Record): New flag Case_Insensitive.
f8e0aa73 12289
b30668b7
VC
12290 * prj-util.adb:
12291 (Value_Of): new function to get the string value of a single
12292 string variable or attribute.
f8e0aa73 12293
b30668b7
VC
12294 * prj-util.ads:
12295 (Value_Of): new function to get the string value of a single
12296 string variable or attribute.
f8e0aa73 12297
b30668b7
VC
12298 * prj.adb:
12299 (Ada_Default_Spec_Suffix): New function
12300 (Ada_Default_Impl_Suffix): New function
12301 Change definitions of several constants to reflect
12302 new components of record types.
f8e0aa73 12303
b30668b7
VC
12304 * prj.ads:
12305 (Naming_Data): Change several components to reflect new
12306 elements of naming schemes.
12307 (Project_Data): New flags Sources_Present and
12308 Language_Independent_Checked.
12309 (Ada_Default_Spec_Suffix): New function.
12310 (Ada_Default_Impl_Suffix): New function.
f8e0aa73 12311
b30668b7
VC
12312 * snames.ads:
12313 Modification of predefined names for project manager: added
12314 Implementation, Specification_Exceptions, Implementation_Exceptions,
12315 Specification_Suffix, Implementation_Suffix, Separate_Suffix,
12316 Default_Switches, _Languages, Builder, Cross_Reference,
12317 Finder. Removed Body_Part, Specification_Append, Body_Append,
12318 Separate_Append, Gnatmake, Gnatxref, Gnatfind, Gnatbind,
12319 Gnatlink.
f8e0aa73 12320
b30668b7
VC
12321 * prj.ads: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
12322 Add comments.
f8e0aa73 12323
b30668b7
VC
12324 * prj-nmsc.adb (Ada_Check): Test that Separate_Suffix is defaulted,
12325 not that it is Nil_Variable_Value.
f8e0aa73 12326
b30668b7
VC
12327 * prj.ads: Add ??? for uncommented declarations
12328
662e57b4
ES
123292001-10-10 Ed Schonberg <schonber@gnat.com>
12330
f8e0aa73
AJ
12331 * sem_prag.adb: (Analyze_Pragma, case External): If entity is a
12332 constant, do not indicate possible modification, so that gigi can
662e57b4
ES
12333 treat it as a bona fide constant.
12334
72e4357f
RD
123352001-10-10 Robert Dewar <dewar@gnat.com>
12336
12337 * sem_prag.adb: Add processing for pragma External.
f8e0aa73 12338
72e4357f 12339 * snames.ads: Add entry for pragma External.
f8e0aa73 12340
72e4357f 12341 * par-prag.adb: Add pragma External.
f8e0aa73 12342
72e4357f
RD
12343 * snames.adb: Updated to match snames.ads.
12344
7bc1c7df
ES
123452001-10-10 Ed Schonberg <schonber@gnat.com>
12346
12347 * exp_ch4.adb (Expand_N_Allocator): Generate meaningful names for
12348 a dynamic task if the allocator appears in an indexed assignment
12349 or selected component assignment.
f8e0aa73
AJ
12350
12351 * exp_util.adb (Build_Task_Array_Image, Build_Task_Record_Image):
12352 For a dynamic task in an assignment statement, use target of
7bc1c7df
ES
12353 assignment to generate meaningful name.
12354
c84700e7
ES
123552001-10-10 Ed Schonberg <schonber@gnat.com>
12356
f8e0aa73 12357 * einfo.adb (Write_Field19_Name): Body_Entity is also defined for
c84700e7
ES
12358 a generic package.
12359
12360 * einfo.ads: Body_Entity is also defined for generic package.
12361 Documentation change only
f8e0aa73
AJ
12362
12363 * exp_aggr.adb (Build_Array_Aggr_Code): When expanding an
12364 others_choice for a discriminated component initialization,
12365 convert discriminant references into the corresponding discriminals.
12366
12367 * exp_ch3.adb (Get_Simple_Init_Val): Add qualification to aggregate
12368 only if original type is private and expression has to be wrapped
c84700e7 12369 in a conversion.
f8e0aa73
AJ
12370
12371 * checks.adb:
12372 (Apply_Constraint_Check): Do not perform length check
c84700e7 12373 if expression is an aggregate with only an others_choice.
f8e0aa73 12374 (Length_N_Cond): two references to the same in_parameter
c84700e7
ES
12375 (typically the discriminal in an init_proc) denote the same value.
12376 Two useful optimization uncovered by bugfixes above.
12377
d8d80dcd
RD
123782001-10-10 Robert Dewar <dewar@gnat.com>
12379
f8e0aa73 12380 * xeinfo.adb: Change int to char in translation of enumeration types.
d8d80dcd
RD
12381 This fixes a problem in the C representation of component alignment.
12382 Add 2001 to copyright notice
12383
a8fee948
RK
123842001-10-10 Richard Kenner <kenner@gnat.com>
12385
f8e0aa73 12386 * decl.c: (validate_size): Do check size of object of integral type
a8fee948
RK
12387 if it is a packed array type.
12388
c2d7fe59
RK
123892001-10-10 Richard Kenner <kenner@gnat.com>
12390
f8e0aa73 12391 * decl.c: (gnat_to_gnu_entity, case object): Also materialize
c2d7fe59
RK
12392 VAR_DECL for constant if not Is_Public but -O0.
12393
fb75e100
RK
123942001-10-10 Richard Kenner <kenner@gnat.com>
12395
12396 * misc.c (struct lang_hooks): Add new initializer to match GCC change.
12397
1724557a
GB
123982001-10-10 Geert Bosch <bosch@gnat.com>
12399
f8e0aa73 12400 * xnmake.adb (XNmake): Fix handling of -s/-b options. No longer
1724557a
GB
12401 use '/' as switch character, allowing for absolute file names.
12402
9f2f9eb6
JM
124032001-10-09 Joseph S. Myers <jsm28@cam.ac.uk>
12404
12405 * 4gintnam.ads, Make-lang.in, Makefile.in, config-lang.in: Update
12406 FSF address.
12407
8fecf41d
GB
124082001-10-08 Geert Bosch <bosch@gnat.com>
12409
12410 * Makefile.in (treeprs.ads, einfo.h, sinfo.h, nmake.adb, nmake.ads):
12411 Automatically build utilities when files need to be regenerated.
12412
589f1edf
GB
124132001-10-08 Geert Bosch <bosch@gnat.com>
12414
12415 * xsnames.adb: New utility for updating snames.ads and snames.adb
12416
67f28219
ZW
124172001-10-08 Zack Weinberg <zack@codesourcery.com>
12418
12419 * Make-lang.in (ADAFLAGS): Add -W -Wall.
12420 (ADA_FLAGS_TO_PASS): Set ADA_CFLAGS=$(CFLAGS) also.
12421 (gnat1): Also depend on attribs.o.
12422 (gnatlib, gnatlib-shared): Set CC and ADAC in recursive make.
12423 * Makefile.in (X_ADAFLAGS, T_ADAFLAGS): New.
12424 (ADAC): Set to @ADAC@ in stage1, $(CC) later.
12425 (ADAFLAGS): Add -W -Wall.
12426 (ALL_ADAFLAGS, MOST_ADAFLAGS): Add X_ADAFLAGS and T_ADAFLAGS;
12427 take out CFLAGS.
12428
12429 (.adb.o, .ads.o, a-numaux.o, a-teioed.o, s-interr.o,
12430 s-taskin.o, sdefault.o, s-tasdeb.o, s-vaflop.o, a-except.o,
12431 s-assert.o, s-stalib.o, s-memory.o, memtrack.o, mlib-tgt.o):
12432 Use $(ADAC), not $(CC), as compilation command.
12433
12434 (gnattools): Depend directly on tools to build, don't use
12435 recursive make.
12436 (gnatlib): Set ADA_CFLAGS=$(GNATLIBCFLAGS) in recursive make.
12437
12438 * einfo.h, sinfo.h: New files (autogenerated).
12439
295ef2bb
RH
124402001-10-08 Richard Henderson <rth@redhat.com>
12441
12442 * comperr.adb (Abort_In_Progress): New.
12443 (Compiler_Abort): Use it to prevent recursion.
12444
5c736541
RD
124452001-10-08 Robert Dewar <dewar@gnat.com>
12446
12447 * atree.adb: Set Error_Posted in Error node, helps error recovery.
67f28219
ZW
12448
12449 * par-endh.adb (Output_End_Expected): We should also not test
5c736541 12450 Error_Posted on the Error node, since now it is always set.
67f28219
ZW
12451
12452 * cstand.adb (Create_Standard): Set Etype of Error to Any_Type
5c736541 12453 to help error recovery. Part of general work on 9407-004.
67f28219 12454
5c736541 12455 * par.adb: Add ??? for misuse of error
67f28219 12456
5c736541
RD
12457 * sem_res.adb:
12458 (Resolve): Defend against Error, fixes 9407-003.
12459 (Resolve_Discrete_Subtype_Indication): Defend against Error.
67f28219
ZW
12460
12461 * sinfo.ads (N_Error): Now has Etype field (which will be set
5c736541
RD
12462 to Any_Type to help error recovery).
12463
a153ae15
RK
124642001-10-08 Richard Kenner (kenner@gnat.com)
12465
12466 * misc.c (gnat_expand_expr, case UNCHECKED_CONVERT_EXPR):
12467 Consistently set MEM attributes from expression; fixes
12468 bootstrap failure on x86.
12469
743f3c7b
GB
124702001-10-08 Geert Bosch (bosch@gnat.com)
12471
12472 * 5oosinte.adb: Add 2001 to copyright notice.
12473
210c4ef4
GB
124742001-10-08 Geert Bosch (bosch@gnat.com)
12475
12476 * ceinfo.adb: Add utility for consistency checking of einfo.ad[bs].
12477
12478 * csinfo.adb: Add utility for consistency checking of sinfo.ad[bs].
12479
cc712abf
JM
124802001-10-07 Joseph S. Myers <jsm28@cam.ac.uk>
12481
12482 * 5oosinte.adb: Fix spelling error of "separate" as "seperate".
12483
4c4abc0f
GB
124842001-10-05 Geert Bosch (bosch@gnat.com)
12485
12486 * adaint.h: Small formatting fix.
12487
7f50e2e3
GB
124882001-10-04 Geert Bosch <bosch@gnat.com>
12489
12490 * sysdep.c (__gnat_set_binary_mode, __gnat_set_text_mode):
12491 Arg is int, not FILE *, in dummy version of functions.
67f28219 12492
7f50e2e3
GB
12493 * adaint.h (__gnat_set_binary_mode, __gnat_set_text_mode):
12494 Arg is int, not FILE *.
12495
5d1a9698
GB
124962001-10-04 Geert Bosch <bosch@gnat.com>
12497
12498 * 3lsoccon.ads: Added file, missed with initial check ins.
67f28219 12499
5d1a9698
GB
12500 * 4lintnam.ads: Fix header format.
12501 Change Linux to GNU/Linux.
67f28219 12502
5d1a9698
GB
12503 * 5iosinte.adb: Change Linux to GNU/Linux.
12504
12505 * 5iosinte.ads: Change Linux to GNU/Linux.
67f28219 12506
5d1a9698 12507 * 5itaprop.adb: Change Linux to GNU/Linux.
67f28219 12508
5d1a9698
GB
12509 * 5itaspri.ads: Change Linux to GNU/Linux.
12510 Update copyright notice.
67f28219 12511
5d1a9698 12512 * 5lintman.adb: Change Linux to GNU/Linux.
67f28219 12513
5d1a9698 12514 * 5lml-tgt.adb: Change Linux to GNU/Linux.
67f28219 12515
5d1a9698 12516 * 5losinte.ads: Change Linux to GNU/Linux.
67f28219 12517
5d1a9698 12518 * 5lsystem.ads: Change Linux to GNU/Linux.
67f28219 12519
5d1a9698 12520 * 5qosinte.adb: Change Linux to GNU/Linux.
67f28219 12521
5d1a9698 12522 * 5qosinte.ads: Change Linux to GNU/Linux.
67f28219 12523
5d1a9698 12524 * 5qparame.ads: Change Linux to GNU/Linux.
67f28219 12525
5d1a9698 12526 * 5qtaprop.adb: Change Linux to GNU/Linux.
67f28219 12527
5d1a9698
GB
12528 * 5qtaspri.ads: Change Linux to GNU/Linux.
12529 Add 2001 to copyright notice.
67f28219 12530
5d1a9698
GB
12531 * 5vintman.ads: Change Linux to GNU/Linux.
12532 Fix header format. Add 2001 to copyright notice.
67f28219 12533
5d1a9698 12534 * g-soccon.ads: Change Linux to GNU/Linux.
67f28219 12535
5d1a9698
GB
12536 * g-trasym.ads: Change Linux to GNU/Linux.
12537 Add 2001 to copyright notice.
67f28219 12538
5d1a9698 12539 * memtrack.adb: Change Linux to GNU/Linux.
67f28219 12540
5d1a9698
GB
12541 * s-intman.ads: Change Linux to GNU/Linux.
12542 Add 2001 to copyright notice. Fix header format.
67f28219 12543
5d1a9698 12544 * s-stache.adb: Change Linux to GNU/Linux.
67f28219 12545
5d1a9698 12546 * adaint.c: Change Linux to GNU/Linux.
67f28219 12547
5d1a9698 12548 * cio.c: Change Linux to GNU/Linux.
67f28219 12549
5d1a9698 12550 * cstreams.c: Change Linux to GNU/Linux.
67f28219 12551
5d1a9698 12552 * init.c: Change Linux to GNU/Linux.
67f28219 12553
5d1a9698 12554 * gmem.c: Change Linux to GNU/Linux.
67f28219 12555
5d1a9698
GB
12556 * tracebak.c: Change Linux to GNU/Linux.
12557
12558
c25ca2d7
GB
125592001-10-02 Geert Bosch <bosch@gnat.com>
12560
12561 * misc.c (insert_default_attributes): Add dummy version.
This page took 1.882171 seconds and 5 git commands to generate.