]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/ada/ChangeLog
tree.h (BINFO_BASE_ACCESSES): Accesses are a VEC(tree).
[thirdparty/gcc.git] / gcc / ada / ChangeLog
CommitLineData
b785f485
RH
12004-07-25 Richard Henderson <rth@redhat.com>
2
3 * utils.c (create_subprog_decl): Set DECL_ARTIFICIAL and
4 DECL_IGNORED_P on RESULT_DECL.
5
35ae2ed8
AC
62004-07-20 Olivier Hainque <hainque@act-europe.fr>
7
8 * a-elchha.adb (Last_Chance_Handler): Remove the bogus buffer dynamic
9 allocation and potentially overflowing update with
10 Tailored_Exception_Information. Use the sec-stack free procedural
11 interface to output Exception_Information instead.
12
13 * a-except.adb (To_Stderr): New subprogram for character, and string
14 version moved from a-exextr to be visible from other separate units.
15 (Tailored_Exception_Information): Remove the procedural version,
16 previously used by the default Last_Chance_Handler and not any more.
17 Adjust various comments.
18
19 * a-exexda.adb: Generalize the exception information procedural
20 interface, to minimize the use of secondary stack and the need for
21 local buffers when the info is to be output to stderr:
22 (Address_Image): Removed.
23 (Append_Info_Character): New subprogram, checking for overflows and
24 outputing to stderr if buffer to fill is of length 0.
25 (Append_Info_String): Output to stderr if buffer to fill is of length 0.
26 (Append_Info_Address, Append_Info_Exception_Name,
27 Append_Info_Exception_Message, Append_Info_Basic_Exception_Information,
28 Append_Info_Basic_Exception_Traceback,
29 Append_Info_Exception_Information): New subprograms.
30 (Append_Info_Nat, Append_Info_NL): Use Append_Info_Character.
31 (Basic_Exception_Info_Maxlength, Basic_Exception_Tback_Maxlength,
32 Exception_Info_Maxlength, Exception_Name_Length,
33 Exception_Message_Length): New subprograms.
34 (Exception_Information): Use Append_Info_Exception_Information.
35 (Tailored_Exception_Information): Use
36 Append_Info_Basic_Exception_Information.
37 Export services for the default Last_Chance_Handler.
38
39 * a-exextr.adb (To_Stderr): Remove. Now in a-except to be usable by
40 other separate units.
41
422004-07-20 Vincent Celier <celier@gnat.com>
43
44 * clean.adb, mlib-utl.adb, osint.adb, makegpr.adb: Minor reformatting.
45
462004-07-20 Ed Schonberg <schonberg@gnat.com>
47
48 * freeze.adb (Freeze_Entity): If entity is a discriminated record type,
49 emit itype references for the designated types of component types that
50 are declared outside of the full record declaration, and that may
51 denote a partial view of that record type.
52
532004-07-20 Ed Schonberg <schonberg@gnat.com>
54
55 PR ada/15607
56 * sem_ch3.adb (Build_Discriminated_Subtype): Do not attach a subtype
57 which is the designated type in an access component declaration, to the
58 list of incomplete dependents of the parent type, to avoid elaboration
59 issues with out-of-scope subtypes.
60 (Complete_Private_Subtype): Recompute Has_Unknown_Discriminants from the
61 full view of the parent.
62
632004-07-20 Ed Schonberg <schonberg@gnat.com>
64
65 PR ada/15610
66 * sem_ch8.adb (Find_Expanded_Name): If name is overloaded, reject
67 entities that are hidden, such as references to generic actuals
68 outside an instance.
69
702004-07-20 Javier Miranda <miranda@gnat.com>
71
72 * sem_ch4.adb (Try_Object_Operation): New subprogram that gives
73 support to the new notation.
74 (Analyze_Selected_Component): Add call to Try_Object_Operation.
75
762004-07-20 Jose Ruiz <ruiz@act-europe.fr>
77
78 * s-taprob.adb: Adding the elaboration code required for initializing
79 the tasking soft links that are common to the full and the restricted
80 run times.
81
82 * s-tarest.adb (Init_RTS): Tasking soft links that are shared with the
83 restricted run time has been moved to the package
84 System.Soft_Links.Tasking.
85
86 * s-tasini.adb (Init_RTS): Tasking soft links that are shared with the
87 restricted run time has been moved to the package
88 System.Soft_Links.Tasking.
89
90 * Makefile.rtl: Add entry for s-solita.o in run-time library list.
91
92 * s-solita.ads, s-solita.adb: New files.
93
942004-07-20 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
95
96 * trans.c (Identifier_to_gnu, Pragma_to_gnu, Attribute_to_gnu,
97 Case_Statement_to_gnu): Split off from gnat_to_gnu.
98 (Loop_Statement_to_gnu, Subprogram_Body_to_gnu, call_to_gnu,
99 Handled_Sequence_Of_Statements_to_gnu, Exception_Handler_to_gnu_sjlj,
100 Exception_Handler_to_gnu_zcx): Likewise.
101
6e34d3a3
JM
1022004-07-17 Joseph S. Myers <jsm@polyomino.org.uk>
103
104 * gigi.h (builtin_function): Declare.
105
523456db
AC
1062004-07-15 Robert Dewar <dewar@gnat.com>
107
108 * makegpr.adb, s-secsta.ads, sem_ch3.adb, sem_case.adb: Minor
109 reformatting
110
111 * gnat_ugn.texi: Add instantiation of direct_io or sequential_io with
112 access values as an example of a warning.
113
114 * gnat_rm.texi: Document new attribute Has_Access_Values
115
116 * gnat-style.texi: Document that box comments belong on nested
117 subprograms
118
119 * sem_util.ads (Has_Access_Values): Improved documentation
120
121 * s-finimp.ads, s-finimp.adb: Fix spelling error in comment
122
123 * sem_prag.adb (Check_Duplicated_Export_Name): New procedure
124 (Process_Interface_Name): Call to this new procedure
125 (Set_Extended_Import_Export_External_Name): Call to this new procedure
126
127 * s-mastop-x86.adb, 9drpc.adb: Fix spelling error in comment
128
129 * a-direio.ads, a-sequio.ads: Warn if Element_Type has access values
130
131 * einfo.ads: Minor comment typo fixed
132
1332004-07-15 Jose Ruiz <ruiz@act-europe.fr>
134
135 * snames.adb: Add _atcb.
136
137 * snames.ads: Add Name_uATCB.
138
139 * s-tarest.adb (Create_Restricted_Task): ATCBs are always preallocated
140 (in the expanded code) when using the restricted run time.
141
142 * s-tarest.ads (Create_Restricted_Task): Created_Task transformed into
143 a in parameter in order to allow ATCBs to be preallocated (in the
144 expanded code).
145
146 * s-taskin.adb (Initialize_ATCB): T converted into a in parameter in
147 order to allow ATCBs to be preallocated. In case of error, the ATCB is
148 deallocated in System.Tasking.Stages.
149
150 * s-taskin.ads (Initialize_ATCB): T converted into a in parameter in
151 order to allow ATCBs to be preallocated.
152
153 * s-tassta.adb (Create_Task): In case of error the ATCB is deallocated
154 here. It was previously done in Initialize_ATCB.
155
156 * rtsfind.ads: Make the Ada_Task_Control_Block visible.
157
158 * exp_ch9.adb: Preallocate the Ada_Task_Control_Block when using the
159 Restricted run time.
160
161 * exp_ch3.adb: When using the Restricted run time, pass the
162 preallocated Ada_Task_Control_Block when creating a task.
163
1642004-07-15 Ed Schonberg <schonberg@gnat.com>
165
166 * sem_util.adb (Normalize_Actuals): If there are no actuals on a
167 function call that is itself an actual in an enclosing call, diagnose
168 problem here rather than assuming that resolution will catch it.
169
170 * sem_ch7.adb (Analyze_Package_Specification): If the specification is
171 the local copy of a generic unit for a formal package, and the generic
172 is a child unit, install private part of ancestors before compiling
173 private part of spec.
174
175 * sem_cat.adb (Validate_Categorization_Dependency): Simplify code to
176 use scope entities rather than tree structures, to handle properly
177 parent units that are instances rewritten as bodies for inlining
178 purposes.
179
180 * sem_ch10.adb (Get_Parent_Entity, Implicit_With_On_Parent,
181 Remove_Parents): Handle properly a parent unit that is an
182 instantiation, when the unit has been rewritten as a body for inlining
183 purposes.
184
185 * par.adb (Goto_List): Global variable to collect goto statements in a
186 given unit, for use in detecting natural loops.
187
188 * par-ch5.adb (P_Goto_Statement): Add goto to global Goto_List, for
189 use in detecting natural loops.
190
191 * par-labl.adb (Find_Natural_Loops): Recognize loops create by
192 backwards goto's, and rewrite as a infinite loop, to improve locality
193 of temporaries.
194
195 * exp_util.adb (Force_Evaluation): Recognize a left-hand side
196 subcomponent that includes an indexed reference, to prevent the
197 generation of copies that would miscompile the desired assignment
198 statement.
199 (Build_Task_Image_Decls): Add a numeric suffix to
200 generated name for string variable, to avoid spurious conflicts with
201 the name of the type of a single protected object.
202
203 * exp_ch4.adb (Expand_Array_Equality): If indices are distinct, use a
204 loop with an explicit exit statement, to avoid generating an
205 out-of-range value with 'Succ leading to spurious constraint_errors
206 when compiling with -gnatVo.
207
2082004-07-15 Thomas Quinot <quinot@act-europe.fr>
209
210 * sem_ch4.adb (Analyze_Slice): Always call Analyze on the prefix: it
211 might not be analyzed yet, even if its Etype is already set (case of an
212 unchecked conversion built using Unchecked_Convert_To, for example).
213 If the prefix has already been analyzed, this will be a nop anyway.
214
215 * exp_ch5.adb (Make_Tag_Ctrl_Assignment): For an assignment of a
216 controller type, or an assignment of a record type with controlled
217 components, copy only user data, and leave the finalization chain
218 pointers untouched.
219
2202004-07-15 Vincent Celier <celier@gnat.com>
221
222 * make.adb (Collect_Arguments): Improve error message when attempting
223 to compile a source not part of any project, when -x is not used.
224
225 * prj.ads: (Defined_Variable_Kind): New subtype
226
227 * prj-attr.adb (Register_New_Package): Two new procedures to register
228 a package with or without its attributes.
229 (Register_New_Attribute): Mew procedure to register a new attribute in a
230 package.
231 New attribute oriented subprograms: Attribute_Node_Id_Of,
232 Attribute_Kind_Of, Set_Attribute_Kind_Of, Attribute_Name_Of,
233 Variable_Kind_Of, Set_Variable_Kind_Of, Optional_Index_Of,
234 Next_Attribute.
235 New package oriented subprograms: Package_Node_Id_Of,
236 Add_Unknown_Package, First_Attribute_Of, Add_Attribute.
237
238 * prj-attr.ads (Attribute_Node_Id): Now a private, self initialized
239 type.
240 (Package_Node_Id): Now a private, self initialized type
241 (Register_New_Package): New procedure to register a package with its
242 attributes.
243 New attribute oriented subprograms: Attribute_Node_Id_Of,
244 Attribute_Kind_Of, Set_Attribute_Kind_Of, Attribute_Name_Of,
245 Variable_Kind_Of, Set_Variable_Kind_Of, Optional_Index_Of,
246 Next_Attribute.
247 New package oriented subprograms: Package_Node_Id_Of,
248 Add_Unknown_Package, First_Attribute_Of, Add_Attribute.
249
250 * prj-dect.adb (Parse_Attribute_Declaration,
251 Parse_Package_Declaration): Adapt to new spec of Prj.Attr.
252
253 * prj-makr.adb (Make): Parse existing project file before creating
254 other files. Fail if there was an error during parsing.
255
256 * prj-proc.adb (Add_Attributes, Process_Declarative_Items): Adapt to
257 new spec of Prj.Attr.
258
259 * prj-strt.adb (Attribute_Reference, Parse_Variable_Reference): Adapt
260 to new spec of Prj.Attr.
261
2622004-07-15 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
263
264 * utils2.c: Fix typo in comment.
265
2662004-07-14 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
54805e13
RK
267
268 * trans.c (add_decl_expr): Clear TREE_READONLY if clear DECL_INITIAL.
269 * utils.c (unchecked_convert): Don't do two VIEW_CONVERT_EXPRs.
270
a1c7af89
AS
2712004-07-14 Andreas Schwab <schwab@suse.de>
272
273 * trans.c (gnat_init_stmt_group): Remove duplicate definition.
274
a5cb3b30
AC
2752004-07-13 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
276
277 * decl.c: (gnat_to_gnu_entity, object case): Convert initializer to
278 object type.
279 (gnat_to_gnu_entity, case E_Record_Subtype): Properly set
280 TYPE_STUB_DECL.
281
282 * misc.c (gnat_types_compatible_p): New function.
283 (LANG_HOOKS_TYPES_COMPATIBLE_P): New hook, to use it.
284 (LANG_HOOKS_TYPE_MAX_SIZE, gnat_type_max_size): New.
285
286 * trans.c (gigi): Move processing of main N_Compilation_Unit here.
287 (gnat_to_gnu, case N_Compilation_Unit): Just handle nested case here.
288 (add_stmt): Force walking of sizes and DECL_INITIAL for DECL_EXPR.
289 (mark_visited): Don't mark dummy type.
290 (tree_transform <N_Procedure_Call_Statement>): Unless this is an In
291 parameter, we must remove any LJM building from GNU_NAME.
292 (gnat_to_gnu, case N_String_Literal): Fill in indices in CONSTRUCTOR.
293 (pos_to_constructor): Use int_const_binop.
294 (gnat_to_gnu, case N_Identifier): Don't reference DECL_INITIAL of
295 PARM_DECL.
296
297 * utils.c (gnat_init_decl_processing): Don't make two "void" decls.
298 (gnat_pushlevel): Set TREE_USE on BLOCK node.
299 (gnat_install_builtins): Add __builtin_memset.
300
3012004-07-13 Olivier Hainque <hainque@act-europe.fr>
302
303 * decl.c (gnat_to_gnu_entity <E_Variable>): If we are making a pointer
304 for a renaming, stabilize the initialization expression if we are at a
305 local level. At the local level, uses of the renaming may be performed
306 by a direct dereference of the initializing expression, and we don't
307 want possible variables there to be evaluated for every use.
308
309 * trans.c (gnat_stabilize_reference, gnat_stabilize_reference_1):
310 Propagate TREE_SIDE_EFFECTS and TREE_THIS_VOLATILE to avoid loosing
311 them on the way. Account for the fact that we may introduce side
312 effects in the process.
313
0976078c
RH
3142004-07-13 Richard Henderson <rth@redhat.com>
315
316 * misc.c (default_pass_by_ref): Use pass_by_reference.
317
9dcf6e73
JM
3182004-07-11 Joseph S. Myers <jsm@polyomino.org.uk>
319
320 * misc.c (LANG_HOOKS_CLEAR_BINDING_STACK, LANG_HOOKS_PUSHLEVEL,
321 LANG_HOOKS_POPLEVEL, LANG_HOOKS_SET_BLOCK): Remove.
322
ac45df5d
RH
3232004-07-08 Richard Henderson <rth@redhat.com>
324
325 * trans.c (gnat_to_gnu <N_Handled_Sequence_Of_Statements>): Update
326 commentary.
327
15ce9ca2
AC
3282004-07-06 Vincent Celier <celier@gnat.com>
329
330 * vms_conv.ads: Minor reformatting.
331 Alphabetical order for enumerated values of type Command_Type, to have
332 the command in alphabetical order for the usage.
333
334 * vms_conv.adb (Process_Argument): Set Keep_Temporary_Files to True for
335 the special qualifier /KEEP_TEMPORARY_FILES (minimum 6 characters).
336
337 * gnat_ugn.texi: Document new switch -dn for the GNAT driver.
338
339 * makegpr.adb (Global_Archive_Exists): New global Boolean variable
340 (Add_Archive_Path): Only add the global archive if there is one.
341 (Build_Global_Archive): Set Global_Archive_Exists depending if there is
342 or not any object file to put in the global archive, and don't build
343 a global archive if there is none.
344 (X_Switches): New table
345 (Compile_Link_With_Gnatmake): Pass to gnatmake the -X switches stored
346 in the X_Switches table, if any.
347 (Initialize): Make sure the X_Switches table is empty
348 (Scan_Arg): Record -X switches in table X_Switches
349
350 * opt.ads (Keep_Temporary_Files): New Boolean flag, defaulted to False.
351
352 * make.adb: Minor comment fix
353
354 * gnatname.adb (Gnatname): When not on VMS, and gnatname has been
355 invoked with directory information, add the directory in front of the
356 path.
357
358 * gnatchop.adb (Gnatchop): When not on VMS, and gnatchop has been
359 invoked with directory information, add the directory in front of the
360 path.
361
362 * gnatcmd.adb (Delete_Temp_Config_Files): Only delete temporary files
363 when Keep_Temporary_Files is False.
364 (GNATCmd): When not on VMS, and the GNAT driver has been invoked with
365 directory information, add the directory in front of the path.
366 When not on VMS, handle new switch -dn before the command to set
367 Keep_Temporary_Files to True.
368 (Non_VMS_Usage): Use lower case for the non VMS usage: this is valid
369 everywhere.
370
371 * gnatlink.adb (Gnatlink): When not on VMS, and gnatlink has been
372 invoked with directory information, add the directory in front of the
373 path.
374
3752004-07-06 Thomas Quinot <quinot@act-europe.fr>
376
377 * snames.ads, snames.adb (Name_Stub): New name for the distributed
378 systems annex.
379
380 * rtsfind.ads: New RTE TC_Object, for DSA/PolyORB.
381 New RTEs RAS_Proxy_Type and RAS_Proxy_Type_Access, for DSA.
382
383 * g-socket.adb (To_Timeval): Fix incorrect conversion of
384 Selector_Duration to Timeval for the case of 0.0.
385
386 * exp_util.ads (Evolve_Or_Else): Fix overenthusiastic copy/paste of
387 documentation from Evolve_And_Then.
388
3892004-07-06 Jose Ruiz <ruiz@act-europe.fr>
390
391 * s-taprop-tru64.adb, s-taprop-os2.adb,
392 s-taprop-mingw.adb, s-taprop-posix.adb: Update comment.
393
3942004-07-06 Robert Dewar <dewar@gnat.com>
395
396 * s-osinte-hpux.ads, s-osinte-freebsd.ads,
397 s-osinte-lynxos.ads, s-taprop-lynxos.adb, s-osinte-tru64.ads,
398 s-osinte-aix.ads, s-osinte-irix.ads, s-taprop-irix.adb,
399 s-interr-sigaction.adb, s-taprop-irix-athread.adb,
400 s-osinte-hpux-dce.adb, s-taprop-hpux-dce.adb,
401 s-taprop-linux.adb, s-taprop-dummy.adb, s-taprop-solaris.adb,
402 s-interr-vms.adb, s-osinte-vms.ads, s-taprop-vms.adb,
403 s-osinte-vxworks.ads, s-osprim-vxworks.adb, a-numaux-x86.adb,
404 a-except.adb, a-exexpr.adb, a-intsig.adb, a-tags.adb,
405 a-tags.ads, bindgen.ads, checks.adb, checks.adb,
406 csets.ads, einfo.ads, einfo.ads, elists.adb, exp_ch4.adb,
407 exp_ch7.adb, exp_dist.adb, exp_util.adb, freeze.adb,
408 g-dynhta.adb, gnatmem.adb, g-regexp.adb, inline.adb,
409 i-os2thr.ads, osint.adb, prj.adb, scng.adb, sem_cat.adb,
410 sem_ch10.adb, sem_ch12.adb, sem_ch4.adb, sem_ch7.adb,
411 sem_ch8.adb, sem_disp.adb, sem_prag.adb, sem_res.adb,
412 sem_type.adb, sem_type.ads, sem_warn.adb, s-ficobl.ads,
413 s-finimp.adb, s-htable.adb, sinfo.ads, sinput-l.ads,
414 s-interr.adb, s-interr.ads, sprint.adb, s-tarest.adb,
415 s-tasini.ads, s-taskin.ads, s-taskin.ads, uname.adb,
416 vms_data.ads: Minor reformatting,
417 Fix bad box comment format.
418
419 * gnat_rm.texi: Fix minor grammatical error
420
421 * sem_attr.adb, exp_attr.adb: New attribute Has_Access_Values
422
423 * sem_util.ads, sem_util.adb (Requires_Transient_Scope): Allow many
424 more cases of discriminated records to be recognized as not needing a
425 secondary stack.
426 (Has_Access_Values): New function.
427
428 * snames.h, snames.adb, snames.ads: New attribute Has_Access_Values
429
430 * cstand.adb, layout.ads, layout.adb, sem_ch13.ads: Change name
431 Set_Prim_Alignment to Set_Elem_Alignment (more accurate correspondence
432 with LRM terminology).
433 Change terminology in comments primitive type => elementary type.
434
4352004-07-06 Ed Schonberg <schonberg@gnat.com>
436
437 PR ada/15602
438 * sem_ch7.adb (Unit_Requires_Body): For a generic package, the formal
439 parameters do not impose any requirements on the presence of a body.
440
4412004-07-06 Ed Schonberg <schonberg@gnat.com>
442
443 PR ada/15593
444 * sem_ch12.adb (Analyze_Package_Instantiation): If the generic is not a
445 compilation unit and is in an open scope at the point of instantiation,
446 assume that a body may be present later.
447
4482004-07-06 Ed Schonberg <schonberg@gnat.com>
449
450 * sem_ch13.adb (Analyze_Attribute_Definition_Clause, case 'Size):
451 Improve error message when specified size is not supported.
452
453 * sem_ch6.adb (Maybe_Primitive_Operation): A library-level subprogram
454 is never a primitive operation.
455
cb42deba
AS
4562004-07-05 Andreas Schwab <schwab@suse.de>
457
458 * ada-tree.h (TYPE_LEFT_JUSTIFIED_MODULAR_P): Use
459 RECORD_OR_UNION_CHECK.
460 (TYPE_CONTAINS_TEMPLATE_P): Likewise.
461
98877933
KC
4622004-07-04 Kelley Cook <kcook@gcc.gnu.org>
463
464 * Make-lang.in (doc/gnat_ugn_unw.texi): Eliminate explicit
465 dependency on xgnatugn, instead build it via a submake.
466 (ADA_INFOFILES): Add doc/gnat_ugn_unw.texi.
467
8fff4fc1
RH
4682004-07-04 Richard Henderson <rth@redhat.com>
469
470 * utils2.c (gnat_mark_addressable): Don't put_var_into_stack.
471
4dfa0342
RH
4722004-07-01 Richard Henderson <rth@redhat.com>
473
474 * trans.c (gnat_stabilize_reference): Don't handle RTL_EXPR.
475 * utils.c (max_size): Likewise.
476
909f21b3
RK
4772004-06-28 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
478
479 * decl.c: Remove calls to add_decl_expr, pushdecl, rest_of_compilation,
480 and rest_of_type_compilation; add arg to create_*_decl.
481 (annotate_decl_with_node): Deleted.
482 (gnat_to_gnu_entity, case E_Array_Type): Set location of fields.
483 * gigi.h (get_decls, block_has_vars, pushdecl): Deleted.
484 (get_current_block_context, gnat_pushdecl): New declarations.
485 (gnat_init_stmt_group): Likewise.
486 (create_var_decl, create_type_decl, create_subprog_decl): Add new arg.
487 * misc.c (LANG_HOOKS_CLEAR_BINDING_STACK): Deleted.
488 (LANG_HOOKS_GETDECLS, LANG_HOOKS_PUSHDECL): Deleted.
489 (gnat_init): Call gnat_init_stmt_group.
490 * trans.c (global_stmt_group, gnu_elab_proc_decl): New variables.
491 (gnu_pending_elaboration_list): Deleted.
492 (mark_visited, mark_unvisited, gnat_init_stmt_group): New functions.
493 (gigi): Rearrange initialization calls and move some to last above.
494 (gnat_to_gnu): If statement and not in procedure, go into elab proc.
495 Delete calls to add_decl_expr; add arg to create_*_decl.
496 (gnat_to_gnu, case N_Loop): Recalculate side effects on COND_EXPR.
497 (gnat_to_gnu, case N_Subprogram_Body): Move some code to
498 begin_subprog_body and call it.
499 Don't push and pop ggc context.
500 (gnat_to_gnu, case N_Compilation_Unit): Rework to support elab proc.
501 (add_stmt): Remove handling of DECL_EXPR from here.
502 If not in function, mark visited.
503 (add_decl_expr): Put global at top level.
504 Check for cases of DECL_INITIAL we have to handle here.
505 (process_type): Add extra arg to create_type_decl.
506 (build_unit_elab): Rework to just gimplify.
507 * utils.c (pending_elaborations, elist_stack, getdecls): Deleted.
508 (block_has_vars, mark_visited, add_pending_elaborations): Likewise.
509 (get_pending_elaborations, pending_elaborations_p): Likewise.
510 (push_pending_elaborations, pop_pending_elaborations): Likewise.
511 (get_elaboration_location, insert_elaboration_list): Likewise.
512 (gnat_binding_level): Renamed from ada_binding_level.
513 (init_gnat_to_gnu): Don't clear pending_elaborations.
514 (global_bindings_p): Treat as global if no current_binding_level.
515 (set_current_block_context): New function.
516 (gnat_pushdecl): Renamed from pushdecl; major rework.
517 All callers changed.
518 (create_type_decl, create_var_decl, create_subprog_decl): Add new arg.
519 (finish_record_type): Call call pushdecl for stub decl.
520 (function_nesting_depth): Deleted.
521 (begin_subprog_body): Delete obsolete code.
522 * utils2.c (build_call_alloc_dealloc): Add new arg to create_var_decl.
523
246d2ceb
AC
5242004-06-28 Robert Dewar <dewar@gnat.com>
525
526 * mlib-tgt-tru64.adb, mlib-tgt-aix.adb, mlib-tgt-irix.adb,
527 mlib-tgt-irix.adb, mlib-tgt-hpux.adb, mlib-tgt-linux.adb,
528 mlib-tgt-linux.adb, mlib-tgt-solaris.adb, mlib-tgt-solaris.adb,
529 mlib-tgt-vms-alpha.adb, mlib-tgt-vms-alpha.adb, mlib-tgt-vms-ia64.adb,
530 a-strmap.adb, a-strmap.ads, clean.adb: Minor reformatting
531
532 * exp_util.adb (Is_Possibly_Unaligned_Slice): Completely rewritten, to
533 deal with problem of inefficient slices on machines with strict
534 alignment, when the slice is a component of a composite.
535
536 * checks.adb (Apply_Array_Size_Check): Do not special case 64-bit
537 machines, we need the check there as well.
538
5392004-06-28 Ed Schonberg <schonberg@gnat.com>
540
541 * exp_ch5.adb (Expand_Assign_Array): Use correct condition to
542 determine safe copying direction for overlapping slice assignments
543 when component is controlled.
544
545 * sem_ch12.adb (Instantiate_Formal_Package): Implicit operations of a
546 formal derived type in the actual for a formal package are visible in
547 the enclosing instance.
548
5492004-06-28 Ed Schonberg <schonberg@gnat.com>
550
551 PR ada/15600
552 * sem_util.adb (Trace_Components): Diagnose properly an illegal
553 circularity involving a private type whose completion includes a
554 self-referential component.
555 (Enter_Name): Use Is_Inherited_Operation to distinguish a source
556 renaming or an instantiation from an implicit derived operation.
557
5582004-06-28 Pascal Obry <obry@gnat.com>
559
560 * mlib-tgt-mingw.adb: (Library_Exists_For): Remove "lib" prefix from
561 DLL.
562 (Library_File_Name_For): Idem.
563
5642004-06-28 Matthew Gingell <gingell@gnat.com>
565
566 * g-traceb.ads: Add explanatory note on the format of addresses
567 expected by addr2line.
568
5692004-06-28 Jerome Guitton <guitton@act-europe.fr>
570
571 * Makefile.in: Force debugging information on s-tasdeb.adb,
572 a-except.adb and s-assert.adb needed by the debugger.
573
5742004-06-28 Vincent Celier <celier@gnat.com>
575
576 * make.adb (Collect_Arguments_And_Compile): Change Flag1 to
577 Need_To_Build_Lib.
578 (Gnatmake): Ditto.
579
580 * mlib-prj.adb (Check_Library): Replace Flag1 with Need_To_Build_Lib
581
582 * prj.adb: Minor reformatting
583 (Project_Empty): Change Flag1 to Need_To_Build_Lib. Remove Flag2.
584
585 * prj.ads: Comment updates
586 Minor reformatting
587 (Project_Data): Change Flag1 to Need_To_Build_Lib.
588 Remove Flag2: not used.
589
590 * prj-dect.adb (Parse_Declarative_Items): Accept "null" as a
591 declaration.
592
593 * gnat_ugn.texi: Put a "null;" declaration in one project file example
594
595 * gnat_rm.texi: Document Empty declarations "null;".
596
597 * makegpr.adb (Compile_Link_With_Gnatmake): Put the global archives in
598 front of the linker options.
599 (Link_Foreign): Put the global archives and the libraries in front of
600 the linker options.
601
6022004-06-28 Javier Miranda <miranda@gnat.com>
603
604 * rtsfind.adb: (Get_Unit_Name): Fix typo in comment
605 (RTU_Loaded): Code cleanup
606 (Set_RTU_Loaded): New procedure to register as *loaded* explicitly
607 withed predefined units.
608
609 * rtsfind.ads (Set_RTU_Loaded): New procedure to register as *loaded*
610 explicitly withed predefined units.
611 Fix typo in comment
612
613 * sem_ch10.adb (Analyze_Compilation_Unit): Register as *loaded*
614 explicitly withed predefined units.
615
bce3da32
RK
6162004-06-26 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
617
618 * ada-tree.def (DECL_STMT): Deleted.
619 * ada-tree.h (IS_ADA_STMT): Now test against STMT_STMT.
620 (DECL_STMT_VAR): Deleted.
621 * decl.c: add_decl_stmt now add_decl_expr.
622 * gigi.h: Likewise.
623 * trans.c: Likewise.
624 (gnat_gimplify_type_sizes, gnat_gimplify_one_sizepos): Deleted.
625 (gnat_to_gnu, case N_Subprogram_Body): Set cfun->function_end_locus.
626 (add_stmt): Only handle padded type here.
627 (add_stmt_with_node): Allow gnat_node to not be present.
628 (gnat_gimplify_stmt, case USE_STMT): Set *STMT_P to null.
629 (gnat_gimplify_stmt, case DECL_STMT): Deleted.
630 (gnat_stabilize_reference_1): If COMPONENT_REF of fat pointer,
631 make a SAVE_EXPR for the entire fat pointer.
632 * utils.c (pushdecl): Walk a DECL_EXPR in global case.
633 (create_index_type): Make a DECL_EXPR.
634 (end_subprog_body): Don't call allocate_struct_function here but
635 do clear cfun.
636
0da2c8ac
AC
6372004-06-25 Pascal Obry <obry@gnat.com>
638
639 * makegpr.adb (Build_Library): Remove parameter Lib_Address and
640 Relocatable from Build_Dynamic_Library call.
641
642 * gnat_ugn.texi: Change documentation about Library_Kind. Dynamic and
643 Relocatable are now synonym.
644
645 * Makefile.in: Use s-parame-mingw.adb on MingW platform.
646
647 * mlib-prj.adb (Build_Library): Remove DLL_Address constant definition.
648 Remove parameter Lib_Address and Relocatable from Build_Dynamic_Library
649 call.
650
651 * mlib-tgt.ads, mlib-tgt.adb (Build_Dynamic_Library): Remove parameter
652 Lib_Address and Relocatable.
653 (Default_DLL_Address): Removed.
654
655 * mlib-tgt-tru64.adb, mlib-tgt-aix.adb, mlib-tgt-irix.adb,
656 mlib-tgt-hpux.adb, mlib-tgt-linux.adb, mlib-tgt-solaris.adb,
657 mlib-tgt-vms-alpha.adb, mlib-tgt-vms-ia64.adb, mlib-tgt-vxworks.adb:
658 (Build_Dynamic_Library): Remove parameter Lib_Address and Relocatable.
659 (Default_DLL_Address): Removed.
660
661 * mlib-tgt-mingw.adb: Ditto.
662 (Build_Dynamic_Library): Do not add "lib" prefix to the DLL name.
663
664 * s-taprop-mingw.adb (Create_Task): Use Adjust_Storage_Size to compute
665 the initial thread stack size.
666
667 * a-strmap.ads: Move package L to private part as it is not used in
668 the spec. Found while reading code.
669
6702004-06-25 Olivier Hainque <hainque@act-europe.fr>
671
672 * tracebak.c: Introduce support for a GCC infrastructure based
673 implementation of __gnat_backtrace.
674
675 * raise.c: Don't rely on a C mapping of the GNAT_GCC_Exception record
676 any more. Use accessors instead. This eases maintenance and relaxes
677 some alignment constraints.
678 (_GNAT_Exception structure): Remove the Ada specific fields
679 (EID_For, Adjust_N_Cleanups_For): New accessors, exported by
680 a-exexpr.adb.
681 (is_handled_by, __gnat_eh_personality): Replace component references to
682 exception structure by use of the new accessors.
683
684 * init.c (__gnat_initialize): Adjust comments to match the just
685 reverted meaning of the -static link-time option.
686
687 * adaint.c (convert_addresses): Arrange not to define a stub for
688 mips-irix any more, as we now want to rely on a real version from a
689 recent libaddr2line.
690
691 * a-exexpr.adb: Provide new accessors to a GNAT_GCC occurrence, so that
692 the personality routine can use them and not have to rely on a C
693 counterpart of the record anymore. This simplifies maintenance and
694 relaxes the constraint of having Standard'Maximum_Alignment match
695 BIGGEST_ALIGNMENT.
696 Update comments, and add a section on the common header alignment issue.
697
6982004-06-25 Geert Bosch <bosch@gnat.com>
699
700 * a-ngelfu.adb (Tanh): Use full 20 digit precision for constants in
701 polynomial approximation. Fixes inconsistency with Cody/Waite algorithm.
702
7032004-06-25 Robert Dewar <dewar@gnat.com>
704
705 * gnat_rm.texi: Fix section on component clauses to indicate that the
706 restriction on byte boundary placement still applies for bit packed
707 arrays.
708 Add comment on stack usage from Initialize_Scalars
709
710 * gnat_ugn.texi: Add documentation for -gnatyLnnn
711
712 * stylesw.ads, stylesw.adb: Implement new -gnatyLnnn option for
713 limiting nesting level.
714
715 * usage.adb: Add line for -gnatyLnnn switch
716
717 * g-debpoo.ads, xtreeprs.adb, sinput.ads, sem_ch13.ads,
718 sem_ch13.adb, exp_aggr.adb: Minor reformatting
719
720 * sem_prag.adb (Process_Atomic_Shared_Volatile): Set Is_Atomic on base
721 type as well as on the subtype. This corrects a problem in freeze in
722 setting alignments of atomic types.
723
724 * sem_eval.ads: Minor comment typo fixed
725
726 * par-util.adb (Push_Scope_Stack): Check for violation of max nesting
727 level. Minor reformatting.
728
729 * fname.adb (Is_Predefined_File_Name): Require a letter after the
730 minus sign. This means that file names like a--b.adb will not be
731 considered predefined.
732
733 * freeze.adb: Propagate new flag Must_Be_On_Byte_Boundary to containing
734 record Test new flag and give diagnostic for bad component clause.
735 (Freeze_Entity): Set alignment of array from component alignment in
736 cases where this is safe to do.
737
738 * exp_pakd.adb: Set new flag Must_Be_On_Byte_Boundary for large packed
739 arrays.
740
741 * cstand.adb: (Create_Standard): Set alignment of String to 1
742
743 * einfo.ads, einfo.adb: Introduce new flag Must_Be_On_Byte_Boundary
744
745 * exp_ch4.adb (Expand_Array_Equality): Improve efficiency of generated
746 code in the common constrained array cases.
747
748 * a-storio.adb: Change implementation to avoid possible alignment
749 problems on machines requiring strict alignment (data should be moved
750 as type Buffer, not type Elmt).
751
752 * checks.adb (Apply_Array_Size_Check): Improve these checks by
753 killing the overflow checks which we really do not need (64-bits is
754 enough).
755
7562004-06-25 Vincent Celier <celier@gnat.com>
757
758 * makegpr.adb (Is_Included_In_Global_Archive): New Boolean function
759 (Add_Archives.Recursive_Add_Archives): Call Add_Archive_Path
760 inconditionally for the main project.
761 (Recursive_Add_Archives.Add_Archive_Path): New procedure
762 (Link_Executables.Check_Time_Stamps): New procedure
763 (Link_Executables.Link_Foreign): New procedure
764 Changes made to reduce nesting level of this package
765 (Check): New procedure
766 (Add_Switches): When not in quiet output, check that a switch is not
767 the concatenation of several valid switches. If it is, issue a warning.
768 (Build_Global_Archive): If the global archive is rebuilt, linking need
769 to be done.
770 (Compile_Sources): Rebuilding a library archive does not imply
771 rebuilding the global archive.
772 (Build_Global_Archive): New procedure
773 (Build_Library): New name for Build_Archive, now only for library
774 project
775 (Check_Archive_Builder): New procedure
776 (Create_Global_Archive_Dependency_File): New procedure
777 (Gprmake): Call Build_Global_Archive before linking
778 * makegpr.adb: Use Other_Sources_Present instead of Sources_Present
779 throughout.
780 (Scan_Arg): Display the Copyright notice when -v is used
781
782 * gnat_ugn.texi: Document new switch -files= (VMS qualifier /FILES=)
783 for gnatls.
784
785 * vms_data.ads: Add qualifier /MAX_NESTING=nnn (-gnatyLnnn) for GNAT
786 COMPILE.
787 Add new GNAT LIST qualifier /FILES=
788 Added qualifier /DIRECTORY= to GNAT METRIC
789 Added qualifier /FILES= to GNAT METRIC
790 Added qualifier /FILES to GNAT PRETTY
791
792 * switch.adb (Is_Front_End_Switch): Refine the test for --RTS or -fRTS,
793 to take into account both versions of the switch.
794
795 * switch-c.adb (Scan_Front_End_Switches): New switch -gnatez. Should
796 always be the last switch to the gcc driver. Disable switch storing so
797 that switches automatically added by the gcc driver are not put in the
798 ALI file.
799
800 * prj.adb (Project_Empty): Take into account changes in components of
801 Project_Data.
802
803 * prj.ads (Languages_Processed): New enumaration value All_Languages.
804
805 * prj.ads (Project_Data): Remove component Lib_Elaboration: never
806 used. Split Boolean component Ada_Sources_Present in two Boolean
807 components Ada_Sources_Present and Other_Sources_Present.
808 Minor reformatting
809
810 * prj-env.adb (For_All_Source_Dirs.Add): Use Ada_Sources_Present
811 instead of Sources_Present.
812 (Set_Ada_Paths.Add.Recursive_Add): Ditto
813
814 * prj-nmsc.adb: Minor reformatting
815 (Check_Ada_Naming_Scheme): New name of procedure Check_Naming_Scheme
816 (Check_Ada_Naming_Scheme_Validity): New name of previous procedure
817 Check_Ada_Naming_Scheme.
818 Change Sources_Present to Ada_Sources_Present or Other_Sources_Present
819 throughout.
820
821 * prj-part.adb (Post_Parse_Context_Clause): New Boolean parameter
822 In_Limited.
823 Make sure that all cycles where there is at least one "limited with"
824 are detected.
825 (Parse_Single_Project): New Boolean parameter In_Limited
826
827 * prj-proc.adb (Recursive_Check): When Process_Languages is
828 All_Languages, call first Prj.Nmsc.Ada_Check, then
829 Prj.Nmsc.Other_Languages_Check.
830
831 * prj-proc.adb (Process): Use Ada_Sources_Present or
832 Other_Sources_Present (instead of Sources_Present) depending on
833 Process_Languages.
834
835 * lang-specs.h: Keep -g and -m switches in the same order, and as the
836 last switches.
837
838 * lib.adb (Switch_Storing_Enabled): New global Boolean flag
839 (Disable_Switch_Storing): New procedure. Set Switch_Storing_Enabled to
840 False.
841 (Store_Compilation_Switch): Do nothing if Switch_Storing_Enabled is
842 False.
843
844 * lib.ads (Disable_Switch_Storing): New procedure.
845
846 * make.adb: Modifications to reduce nesting level of this package.
847 (Check_Standard_Library): New procedure
848 (Gnatmake.Check_Mains): New procedure
849 (Gnatmake.Create_Binder_Mapping_File): New procedure
850 (Compile_Sources.Compile): Add switch -gnatez as the last option
851 (Display): Never display -gnatez
852
853 * Makefile.generic:
854 When using $(MAIN_OBJECT), always use $(OBJ_DIR)/$(MAIN_OBJECT)
855
856 * gnatcmd.adb (Check_Project): New function
857 (Process_Link): New procedure to reduce nesting depth
858 (Check_Files): New procedure to reduce the nesting depth.
859 For GNAT METRIC, include the inherited sources in extending projects.
860 (GNATCmd): When GNAT LS is invoked with a project file and no files,
861 add the list of files from the sources of the project file. If this list
862 is too long, put it in a temp text files and use switch -files=
863 (Delete_Temp_Config_Files): Delete the temp text file that contains
864 a list of source for gnatpp or gnatmetric, if one has been created.
865 (GNATCmd): For GNAT METRIC and GNAT PRETTY, if the number of sources
866 in the project file is too large, create a temporary text file that
867 list them and pass it to the tool with "-files=<temp text file>".
868 (GNATCmd): For GNAT METRIC add "-d=<abject dir>" as the first switch
869
870 * gnatlink.adb (Gnatlink): Do not compile with --RTS= when the
871 generated file is in not in Ada.
872
873 * gnatls.adb: Remove all parameters And_Save that are no longer used.
874 (Scan_Ls_Arg): Add processing for -files=
875 (Usage): Add line for -files=
876
877 * g-os_lib.adb (On_Windows): New global constant Boolean flag
878 (Normalize_Pathname): When on Windows and the path starts with a
879 directory separator, make sure that the resulting path will start with
880 a drive letter.
881
882 * clean.adb (Clean_Archive): New procedure
883 (Clean_Project): When there is non-Ada code, delete the global archive,
884 the archive dependency files, the object files and their dependency
885 files, if they exist.
886 (Gnatclean): Call Prj.Pars.Parse for All_Languages, not for Ada only.
887
8882004-06-25 Thomas Quinot <quinot@act-europe.fr>
889
890 * sinfo.ads: Fix typo in comment.
891
892 * sem_dist.adb (Process_Remote_AST_Attribute): Simplify code that uses
893 the TSS for remote access-to-subprogram types, since these TSS are
894 always present once the type has been analyzed.
895 (RAS_E_Dereference): Same.
896
897 * sem_attr.adb (Analyze_Attribute): When analysis of an attribute
898 reference raises Bad_Attribute, mark the reference as analyzed so the
899 node (and any children resulting from rewrites that could have occurred
900 during the analysis that ultimately failed) is not analyzed again.
901
902 * exp_ch7.ads (Find_Final_List): Fix misaligned comment.
903
904 * exp_dist.adb: Minor comment fix.
905
906 * exp_ch4.adb (Expand_N_Allocator): For an allocator whose expected
907 type is an anonymous access type, no unchecked deallocation of the
908 allocated object can occur. If the object is controlled, attach it with
909 a count of 1. This allows attachment to the Global_Final_List, if
910 no other relevant list is available.
911 (Get_Allocator_Final_List): For an anonymous access type that is
912 the type of a discriminant or record component, the corresponding
913 finalisation list is the one of the scope of the type.
914
9152004-06-25 Ed Schonberg <schonberg@gnat.com>
916
917 * sem_ch3.adb (Replace_Type): When computing the signature of an
918 inherited subprogram, use the first subtype if the derived type
919 declaration has no constraint.
920
921 * exp_ch6.adb (Add_Call_By_Copy_Code): Check that formal is an array
922 before applying previous optimization. Minor code cleanup.
923
924 * exp_util.adb (Is_Possibly_Unaligned_Slice): If the component is
925 placed at the beginning of an unpacked record without explicit
926 alignment, a slice of it will be aligned and does not need a copy when
927 used as an actual.
928
9292004-06-25 Ed Schonberg <schonberg@gnat.com>
930
931 PR ada/15591
932 PR ada/15592
933 * sem_ch8.adb (Attribute_Renaming): Reject renaming if the attribute
934 reference is written with expressions mimicking parameters.
935
9362004-06-25 Hristian Kirtchev <kirtchev@gnat.com>
937
938 PR ada/15589
939 * sem_ch3.adb (Build_Derived_Record_Type): Add additional check to
940 STEP 2a. The constraints of a full type declaration of a derived record
941 type are checked for conformance with those declared in the
942 corresponding private extension declaration. The message
943 "not conformant with previous declaration" is emitted if an error is
944 detected.
945
9462004-06-25 Vasiliy Fofanov <fofanov@act-europe.fr>
947
948 * g-traceb.ads: Document the need for -E binder switch in the spec.
949
950 * g-trasym.ads: Document the need for -E binder switch in the spec.
951
9522004-06-25 Jose Ruiz <ruiz@act-europe.fr>
953
954 * sem_prag.adb: Add handling of pragma Detect_Blocking.
955
956 * snames.h, snames.ads, snames.adb: Add entry for pragma
957 Detect_Blocking.
958
959 * s-rident.ads: Change reference to pragma Detect_Blocking.
960
961 * targparm.ads, targparm.adb: Allow pragma Detect_Blocking in
962 system.ads.
963
964 * opt.ads (Detect_Blocking): New Boolean variable (defaulted to False)
965 to indicate whether pragma Detect_Blocking is active.
966
967 * par-prag.adb: Add entry for pragma Detect_Blocking.
968
969 * rtsfind.adb (RTU_Loaded): Fix the temporary kludge to get past bug
970 of not handling WITH.
971 Note that this replaces the previous update which was incorrect.
972
9732004-06-25 Javier Miranda <miranda@gnat.com>
974
975 * sem_ch10.adb (Re_Install_Use_Clauses): Force the installation of the
976 use-clauses to have a clean environment.
977
978 * sem_ch8.adb (Install_Use_Clauses): Addition of a new formal to force
979 the installation of the use-clauses to stablish a clean environment in
980 case of compilation of a separate unit; otherwise the call to
981 use_one_package is protected by the barrier Applicable_Use.
982
983 * sem_ch8.ads (Install_Use_Clauses): Addition of a new formal to force
984 the installation of the use-clauses to stablish a clean environment in
985 case of compilation of a separate unit.
986 (End_Use_Clauses): Minor comment cleanup.
987
9882004-06-25 Sergey Rybin <rybin@act-europe.fr>
989
990 * gnat_ugn.texi: Add description of the gnatpp 'files' switch
991
65355d53
RH
9922004-06-23 Richard Henderson <rth@redhat.com>
993
994 * trans.c (gnat_gimplify_stmt): Update gimplify_type_sizes call.
995
c0e3aa48
RK
9962004-06-20 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
997
998 * decl.c (elaborate_expression, elaborate_expression_1): Arguments
999 now bool instead of int.
1000 (gnat_to_gnu_entity, elaborate_expression_1): New arg to COMPONENT_REF.
1001 * trans.c (gnu_switch_label_stack): New function.
1002 (gnat_to_gnu, N_Object_Renaming_Declaration): Result is what the
1003 elaboration of renamed entity returns.
1004 (gnat_to_gnu, case N_Case_Statement): Add branches to end label.
1005 (add_decl_stmt): Don't add TYPE_DECL for UNCONSTRAINED_ARRAY_TYPE.
1006 (gnat_gimplify_stmt): Use alloc_stmt_list, not build_empty_stmt.
1007 (gnat_gimplify_stmt, case DECL_STMT): gimplify DECL_SIZE and
1008 DECL_SIZE_UNIT and simplify variable-sized case.
1009 (gnat_gimplify_type_sizes, gnat_gimplify_one_sizepos): Deleted.
1010 Callers changes to call gimplify_type_sizes and gimplify_one_sizepos.
1011 (gnat_stabilize_reference): Add arg to COMPONENT_REF.
1012 (build_unit_elab): Disable for now.
1013 * utils.c (mark_visited): New function.
1014 (pushdecl): Walk tree to call it for global decl.
1015 (update_pointer_to): Update all variants of pointer and ref types.
1016 Add arg to COMPONENT_REF.
1017 (convert): Likewise.
1018 Move check for converting between variants lower down.
1019 * utils2.c (build_simple_component_ref): Add arg to COMPONENT_REF.
1020 (build_allocator): Don't force type of MODIFY_EXPR.
1021 (gnat_mark_addressable, case VAR_DECL): Unconditionally call
1022 put_var_into_stack.
1023
966389ee
RK
10242004-06-14 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1025
1026 * ada-tree.def (LOOP_STMT, EXIT_STMT): Update documentation.
1027 * ada-tree.h (EXIT_STMT_LABEL): Renamed from EXIT_STMT_LOOP.
1028 * decl.c (gnat_to_gnu_entity): Also set force_global for imported
1029 subprograms.
1030 * trans.c (gnu_loop_label_stack): Renamed from gnu_loop_stmt_stack;
1031 all callers changed.
1032 (gnat_to_gnu, case N_Loop_Statement, case N_Exit_Statement): Change
1033 the way that EXIT_STMT finds the loop label.
1034 (gnat_gimplify_stmt, case LOOP_STMT, EXIT_STMT): Likewise.
1035 (gnat_gimplify_stmt, case DECL_STMT): Handle variable-sized decls here.
1036 (add_stmt): Use annotate_with_locus insted of setting directly.
1037 (pos_to_construct): Set TREE_PURPOSE of each entry to index.
1038 (gnat_stabilize_reference, case ARRAY_RANGE_REF): Merge with ARRAY_REF.
1039 * utils.c (gnat_install_builtins): Install __builtin_memcmp.
1040 (build_vms_descriptor): Add extra args to ARRAY_REF.
1041 (convert): Use VIEW_CONVERT_EXPR between aggregate types.
1042 * utils2.c (gnat_truthvalue_conversion, case INTEGER_CST, REAL_CST):
1043 New cases.
1044 (build_binary_op): Don't make explicit CONVERT_EXPR.
1045 Add extra rgs to ARRAY_REF.
1046
cc335f43
AC
10472004-06-14 Pascal Obry <obry@gnat.com>
1048
1049 * gnat_ugn.texi: Document relocatable vs. dynamic Library_Kind on
1050 Windows. Fix minor typo.
1051
1052 * mlib-tgt-mingw.adb: New implementation using the GCC -shared option
1053 which is now supported on Windows. With this implementation using the
1054 Library Project feature is no different on Windows than on UNIX.
1055
10562004-06-14 Vincent Celier <celier@gnat.com>
1057
1058 * makegpr.adb (Compile_Sources): Nothing to do when there are no
1059 non-Ada sources.
1060
1061 * mlib-tgt-vxworks.adb (Library_Exists_For): Remove incorrect comment
1062
1063 * prj-part.adb (Parse_Single_Project): When a duplicate project name is
1064 found, show the project name and the path of the previously parsed
1065 project file.
1066
10672004-06-14 Ed Schonberg <schonberg@gnat.com>
1068
1069 * exp_ch6.adb (Add_Call_By_Copy_Code): For an out-parameter that is an
1070 array, avoid copying the actual before the call.
1071
10722004-06-14 Thomas Quinot <quinot@act-europe.fr>
1073
1074 * g-debpoo.adb: Remove alignment assumptions from GNAT.Debug_Pools.
1075 Instead, allocate memory on worst-case alignment assumptions, and then
1076 return an aligned address within the allocated zone.
1077
10782004-06-14 Robert Dewar <dewar@gnat.com>
1079
1080 * bindgen.adb (Gen_Adainit_Ada): Do not generate external references to
1081 elab entities in predefined units in No_Run_Time_Mode.
1082 (Gen_Adainit_C): Same fix
1083 (Gen_Elab_Calls_Ada): Do not generate calls to elaborate predefined
1084 units in No_Run_Time_Mode
1085 (Gen_Elab_Calls_C): Same fix
1086
1087 * symbols-vms-alpha.adb: Minor reformatting
1088
1089 * g-debpoo.ads: Minor reformatting
1090
1091 * lib.adb (In_Same_Extended_Unit): Version working on node id's
1092
1093 * lib.ads (In_Same_Extended_Unit): Version working on node id's
1094
1095 * lib-xref.adb: Minor cleanup, use new version of In_Same_Extended_Unit
1096 working on nodes.
1097
1098 * make.adb: Minor reformatting
1099
1100 * par-ch12.adb: Minor reformatting
1101
1102 * par-prag.adb: Add dummy entry for pragma Profile_Warnings
1103
1104 * prj-strt.adb: Minor reformatting
1105
1106 * restrict.ads, restrict.adb: Redo handling of profile restrictions to
1107 be more general.
1108
1109 * sem_attr.adb: Minor reformatting
1110
1111 * sem_ch7.adb: Minor reformatting
1112
1113 * sem_elab.adb (Check_A_Call): Deal with problem of calling init proc
1114 for type in the same unit as the object declaration.
1115
1116 * sem_prag.adb (Check_Arg_Is_External_Name): New procedure, allows
1117 static string expressions and not just string literals.
1118 Minor reformatting
1119 (Set_Warning): Reset restriction warning flag for restriction pragma
1120 Implement pragma Profile_Warnings
1121 Implement pragma Profile (Restricted)
1122 Give obolescent messages for old restrictions and pragmas
1123
1124 * snames.h, snames.ads, snames.adb: Add new entry for pragma
1125 Profile_Warnings.
1126
1127 * s-rident.ads: Add declarations for restrictions required by profile
1128 Restricted and profile Ravenscar.
1129
1130 * targparm.ads, targparm.adb: Allow pragma Profile in system.ads
1131
1132 * gnat_ugn.texi: Correct some missing entries in the list of GNAT
1133 configuration pragmas.
1134
5453d5bd
AC
11352004-06-11 Vincent Celier <celier@gnat.com>
1136
1137 * mlib-tgt-vms-alpha.adb (Build_Dynamic_Library): Issue switch -R to
1138 gnatsym, when symbol policy is Restricted.
1139
1140 * mlib-tgt-vms-ia64.adb (Build_Dynamic_Library): Issue switch -R to
1141 gnatsym, when symbol policy is Restricted.
1142
1143 * symbols-vms-alpha.adb (Initialize): When symbol policy is Restricted,
1144 read the symbol file.
1145 (Finalize): Fail in symbol policy Restricted if a symbol in the original
1146 symbol file is not in the object files. Do not create a new symbol file
1147 when symbol policy is Restricted.
1148
1149 * gnatbind.adb (Gnatbind): Initialize Snames, because Snames is used
1150 in Scng.
1151
1152 * gnatsym.adb (Parse_Vmd_Line): Process new switch -R for symbol policy
1153 Restricted.
1154 (Usage): Line for new switch -R
1155
1156 * make.adb (Initialize): When the platform is not VMS, add the
1157 directory where gnatmake is invoked in the front of the path, if
1158 gnatmake is invoked with directory information. Change the Scan_Args
1159 while loop to a for loop.
1160 (Recursive_Compute_Depth): Remove parameter Visited. Improve efficiency:
1161 if Depth is equal or greater than the proposed depth, there is nothing
1162 to do.
1163 (Initialize): Call Recursive_Compute_Depth with initial Depth equal to 1
1164 instead of 0.
1165
1166 * prj.ads: Add new symbol policy Restricted.
1167
1168 * prj-dect.adb (Parse_Case_Construction): Call End_Case_Construction
1169 with the new parameters Check_All_Labels and Case_Location.
1170
1171 * prj-nmsc.adb (Ada_Check): Process new symbol policy Restricted
1172 (Library_Symbol_File needs to be defined).
1173
1174 * prj-strt.adb (End_Case_Construction): New parameters Check_All_Labels
1175 and Case_Location If Check_All_Labels is True, check that all values of
1176 the string type are used, and output warning(s) if they are not.
1177
1178 * prj-strt.ads (End_Case_Construction): New parameters Check_All_Labels
1179 and Case_Location.
1180
1181 * gnat_ugn.texi: Reorder subclauses in menus "Switches for gcc"
1182
1183 * gnat_ugn.texi: Update documentation about the library directory in
1184 Library Projects.
1185
1186 * makegpr.adb (Display_Command): In verbose mode, also display the
1187 value of the CPATH env var, when the compiler is gcc.
1188 (Initialize): Change the Scan_Args while loop to a for loop
1189 (Compile_Individual_Sources): Change directory to object directory
1190 before compilations.
1191
1192 * symbols.ads: New symbol policy Restricted.
1193
11942004-06-11 Olivier Hainque <hainque@act-europe.fr>
1195
1196 * a-except.adb (Raise_After_Setup family): Remove. The responsibility
1197 is now taken care of internally in the Exception_Propagation package
1198 and does not require clients assistance any more.
1199
1200 * a-exexpr.adb (Is_Setup_And_Not_Propagated,
1201 Set_Setup_And_Not_Propagated, and Clear_Setup_And_Not_Propagated): New
1202 functions. Helpers to maintain a predicate required in the handling of
1203 occurrence transfer between tasks.
1204 This is now handled internally and does not require clients assistance
1205 for the setup/propagate separation anymore.
1206 (Setup_Exception, Propagate_Exception): Simplify the Private_Data
1207 allocation strategy, handle the Setup_And_Not_Propagated predicate and
1208 document.
1209
1210 * s-taenca.adb (Check_Exception): Use raise_with_msg instead of
1211 raise_after_setup, now that everything is handled internally within the
1212 setup/propagation engine.
1213
12142004-06-11 Hristian Kirtchev <kirtchev@gnat.com>
1215
1216 * exp_ch6.adb (Expand_Inlined_Call): Add function Formal_Is_Used_Once.
1217 Add additional conditions for the case of an actual being a simple
1218 name or literal. Improve inlining by preventing the generation
1219 of temporaries with a short lifetime (one use).
1220
12212004-06-11 Hristian Kirtchev <kirtchev@gnat.com>
1222
1223 PR ada/15587
1224
1225 * einfo.ads: Minor comment updates for Has_Completion and
1226 E_Constant list of flags.
1227
1228 * sem_ch3.adb (Analyze_Object_Declaration): Full constant declarations
1229 and constant redeclarations now set the Has_Completion flag of their
1230 defining identifiers.
1231
1232 * sem_ch7.adb (Analyze_Package_Spec): Add procedure
1233 Inspect_Deferred_Constant_Completion.
1234 Used to detect private deferred constants that have not been completed
1235 either by a constant redeclaration or pragma Import. Emits error message
1236 "constant declaration requires initialization expression".
1237
1238 * sem_prag.adb (Process_Import_Or_Interface): An Import pragma now
1239 completes a deferred constant.
1240
12412004-06-11 Geert Bosch <bosch@gnat.com>
1242
1243 * eval_fat.adb (Decompose_Int): Fix rounding of negative numbers.
1244
1245 * s-fatgen.adb (Gradual_Scaling): Correct off-by-one error in
1246 calculating exponent for scaling denormal numbers.
1247 (Leading_Part): Properly raise Constraint_Error for zero or negative
1248 Adjustment.
1249 (Remainder): Properly raise Constraint_Error for zero divisor.
1250
12512004-06-11 Thomas Quinot <quinot@act-europe.fr>
1252
1253 * sem_util.adb: Minor reformatting.
1254
1255 * exp_ch2.adb (Expand_Entry_Parameter): Generate an explicit
1256 dereference when accessing the entry parameter record.
1257 (Check_Array_Type): Always check for possible implicit dereference.
1258 (maybe_implicit_dereference): Rename to check_no_implicit_derefence.
1259 Abort if a pointer is still present (denoting that an implicit
1260 dereference was left in the tree by the front-end).
1261
1262 * sem_attr.adb (Expand_Entry_Parameter): Generate an explicit
1263 dereference when accessing the entry parameter record.
1264 (Check_Array_Type): Always check for possible implicit dereference.
1265 (maybe_implicit_dereference): Rename to check_no_implicit_derefence.
1266 Abort if a pointer is still present (denoting that an implicit
1267 dereference was left in the tree by the front-end).
1268
12692004-06-11 Emmanuel Briot <briot@act-europe.fr>
1270
1271 * g-debpoo.adb (Deallocate, Dereference): Add prefix "error:" to error
1272 message, like the compiler itself does. Easier to parse the output.
1273
1274 * g-debpoo.ads: (Allocate, Deallocate, Dereference): Add comments.
1275
1276 * gnat_ugn.texi (gnatxref, gnatfind): Clarify that source names should
1277 be base names, and not includes directories.
1278
12792004-06-11 Arnaud Charlet <charlet@act-europe.fr>
1280
1281 * Makefile.generic ($(EXEC)): Depend on $(OBJECTS), not $(OBJ_FILES),
1282 so that dependencies are properly taken into account by make.
1283
12842004-06-11 Arnaud Charlet <charlet@act-europe.fr>
1285
1286 PR ada/15622
1287 * s-unstyp.ads, s-maccod.ads, sem_ch8.adb, s-auxdec.ads,
1288 exp_intr.adb, s-auxdec-vms_64.ads: Fix typo: instrinsic -> intrinsic
1289
12902004-06-11 Jerome Guitton <guitton@act-europe.fr>
1291
1292 * Makefile.in (install-gnatlib): install target-specific run-time files.
1293
1294 * Make-lang.in: Remove obsolete targets.
1295
12962004-06-11 Ed Schonberg <schonberg@gnat.com>
1297
1298 * par-ch12.adb (P_Generic): Add scope before analyzing subprogram
1299 specification, to catch misuses of program unit names.
1300
1301 * sem_res.adb (Resolve_Type_Conversion): Do not emit warnings on
1302 superfluous conversions in an instance.
1303
13042004-06-11 Ed Schonberg <schonberg@gnat.com>
1305
1306 PR ada/15403
1307
1308 * sem_ch12.adb (Save_References): If operator node has been folded to
1309 enumeration literal, associated_node must be discarded.
1310
13112004-06-11 Jose Ruiz <ruiz@act-europe.fr>
1312
1313 * s-stchop-vxworks.adb: Add required pragma Convention to
1314 Task_Descriptor because it is updated by a C function.
1315
a98f59be
AC
13162004-06-08 Arnaud Charlet <charlet@act-europe.fr>
1317
1318 PR ada/15568
1319
1320 * Makefile.in: Remove target specific SO_OPT on IRIX
1321
821e1ea1
RK
13222004-06-07 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1323
1324 * ada-tree.def (TRANSFORM_EXPR, ALLOCATE_EXPR, USE_EXPR): Deleted.
1325 (GNAT_NOP_EXPR, GNAT_LOOP_ID, EXPR_STMT, NULL_STMT): Likewise.
1326 (BLOCK_STMT, IF_STMT, GOTO_STMT, LABEL_STMT, RETURN_STMT): Likewise.
1327 (ASM_STMT, BREAK_STMT, REGION_STMT,HANDLER_STMT): Likewise.
1328 (STMT_STMT, USE_STMT): New statement codes.
1329 (LOOP_STMT, EXIT_STMT): Make slight semantic changes.
1330 * ada-tree.h: Reflect above changes.
1331 (struct tree_loop_id): Deleted.
1332 (union lang_tree_node, struct lang_decl, struct lang_type):
1333 Now just contains a tree node; update macros using TYPE_LANG_SPECIFIC
1334 and DECL_LANGUAGE_SPECIFIC to reflect these changes.
1335 (DECL_INIT_BY_ASSIGN_P, TRE_LOOP_NODE_ID, TREE_SLOC): Deleted.
1336 (IS_ADA_STMT): New macro.
1337 * decl.c (annotate_decl_with_node): New function.
1338 (gnat_to_gnu_entity): Use it and Sloc_to_locus instead of set_lineno.
1339 (gnat_to_gnu_entity, case object): Remove call to expand CONVERT_EXPR.
1340 Call add_stmt_with_node to do needed assignments.
1341 Add call to update setjmp buffer directly, not via EXPR_STMT.
1342 (maybe_variable): Argment GNAT_NODE deleted.
1343 * gigi.h (maybe_variable): Likewise.
1344 (make_transform, add_stmt_with_node, set_block_for_group): New.
1345 (gnat_gimplify_expr, gnat_expand_body, Sloc_to_locus): Likewise.
1346 (set_block_jmpbuf_decl, get_block_jmpbuf_decl): Likewise.
1347 (discard_file_names, gnu_block_stack, gnat_to_code): Deleted.
1348 (set_lineno, set_lineno_from_sloc): Likewise.
1349 (record_code_position, insert_code_for): Likewise.
1350 (gnat_poplevel): Now returns void.
1351 (end_subprog_body): Now takes argument.
1352 * misc.c (cgraph.h, tree-inline.h): New includes.
1353 (gnat_tree_size, LANG_HOOKS_TREE_SIZE): Deleted.
1354 (gnat_post_options, LANG_HOOKS_POST_OPTIONS): New.
1355 (LANG_HOOKS_CALLGRAPH_EXPAND_FUNCTION): Likewise.
1356 (LANG_HOOKS_RTL_EXPAND_STMT, LANG_HOOKS_GIMPLIFY_EXPR): Likewise.
1357 (gnat_parse_file): Don't set immediate_size_expand.
1358 Call cgraph functions.
1359 (gnat_expand_expr): Remove most cases.
1360 (record_code_position, insert_code_for): Remove from here.
1361 * trans.c (toplev.h, tree-gimple.h): Now included.
1362 (discard_file_names): Deleted.
1363 (gnu_block_stack, gnu_block_stmt_node, gnu_block_stmt_free_list): Del.
1364 (first_nondeleted_insn, make_expr_stmt_from_rtl): Likewise.
1365 (struct stmt_group, current_stmt_group, stmt_group_free_list): New.
1366 (gnu_stack_free_list, record_cost_position, insert_code_for): Likewise.
1367 (add_cleanup, push_stack, gnat_gimplify_stmt, add_cleanup): Likewise.
1368 (gnat_gimplify_type_sizes, gnat_gimplify_one_sizepos): Likewise.
1369 (gnat_expand_body_1, gnat_gimplify_expr, annotate_with_node): Likewise.
1370 (set_block_for_group, add_stmt_list): Likewise.
1371 (start_stmt_group): Renamed from start_block_stmt.
1372 (end_stmt_group): Likewise, from end_block_stmt.
1373 (build_stmt_group): Likewise, from build_block_stmt, also add arg.
1374 (gigi): Don't set discard_file_names or call set_lineno.
1375 Disallow front end ZCX; call gnat_to_gnu, not gnat_to_code.
1376 (tree_transform): Deleted, now renamed to be gnat_to_gnu.
1377 Numerous changes throughout to reflect new names and complete
1378 function-at-a-time implementation.
1379 (gnat_expand_stmt): Delete or comment out all cases.
1380 (process_inlined_subprograms): Use add_stmt.
1381 (process_decls): Use gnat_to_gnu, not gnat_to_code, and don't
1382 call set_lineno; also remove unneeded block handling.
1383 (process_type): Remove unneeded block handling.
1384 (build_unit_elab): Remove calls to deleted functions.
1385 * utils.c (cgraph.h, tree-inline.h, tree-gimple.h): Now include.
1386 (tree-dump.h): Likewise.
1387 (struct ada_binding_level): Add field jmpbuf_decl.
1388 (gnat_define_builtin, gnat_install_builtins): New.
1389 (gnat_gimplify_function, gnat_finalize): Likewise.
1390 (gnat_poplevel): No longer return BLOCK, set it instead.
1391 Remove code dealing with nested functions.
1392 (gnat_init_decl_processing): Also set size_type_node.
1393 Call gnat_install_builtins.
1394 (create_var_decl): Don't set DECL_INIT_BY_ASSIGN.
1395 (create_subprog_decl): Change handling of inline_flag; set TREE_STATIC.
1396 Remove special-case for "main".
1397 (end_subprog_body): Add arg and rework for tree-ssa.
1398 (convert): Don't use GNAT_NOP_EXPR or look for TRANSFORM_EXPR.
1399 Add case for BOOLEAN_TYPE.
1400 * utils2.c (rtl.h): Now include.
1401 (build_call_raise): Test Debug_Flag_NN directly.
1402 (build_call_alloc_dealloc): Don't use local stack allocation for now.
1403 (gnat_mark_addressable, case GNAT_NOP_EXPR): Deleted.
1404 (gnat_mark_addressable, case VAR_DECL): Handle both early & late cases.
1405
0ab80019
AC
14062004-06-07 Robert Dewar <dewar@gnat.com>
1407
1408 * a-direct.ads, einfo.ads: Minor comment updates
1409
1410 * s-taprop-lynxos.adb, s-taprop-tru64.adb, s-taprop-irix.adb,
1411 s-taprop-irix-athread.adb, s-taprop-hpux-dce.adb, s-taprop-linux.adb,
1412 s-taprop-dummy.adb, s-taprop-os2.adb, s-taprop-solaris.adb,
1413 s-taprop-vms.adb, s-taprop-mingw.adb, s-taprop-vxworks.adb,
1414 s-taprop-posix.adb, s-taprop.ads, exp_dbug.adb: Minor reformatting.
1415
1416 * s-interr-sigaction.adb: Remove unreferenced variable
1417 (Attached_Interrupts). Minor reformatting.
1418 Avoid use of variable I (replace by J).
1419
1420 * par-ch10.adb: Fix text of one error message
1421
1422 * checks.adb, checks.ads, cstand.adb, vms_data.ads, errout.ads,
1423 exp_aggr.adb, exp_ch3.adb, exp_ch3.ads, exp_ch5.adb, exp_ch6.adb,
1424 exp_ch9.adb, exp_code.adb, gnat1drv.adb, lib-load.adb, lib-writ.adb,
1425 opt.adb, par.adb, opt.ads, par-ch11.adb, par-ch3.adb, par-ch4.adb,
1426 par-ch5.adb, par-ch6.adb, par-ch8.adb, par-ch9.adb, par-prag.adb,
1427 par-util.adb, scng.adb, sem_aggr.adb, sem_attr.adb, sem_cat.adb,
1428 sem_ch10.adb, sem_ch10.adb, sem_ch11.adb, sem_ch12.adb, sem_ch2.adb,
1429 sem_ch3.adb, sem_ch3.ads, sem_ch4.adb, sem_ch5.adb, sem_ch6.adb,
1430 sem_ch7.adb, sem_ch8.adb, sem_ch9.adb, sem_eval.adb, sem_prag.adb,
1431 sem_res.adb, sem_type.adb, sem_util.adb, sinfo.ads, snames.adb,
1432 snames.ads, snames.h, sprint.adb, switch-c.adb: Modifications for Ada
1433 2005 support.
1434
14352004-06-07 Doug Rupp <rupp@gnat.com>
1436
1437 * mlib-tgt-vms.adb: Rename mlib-tgt-vms.adb mlib-tgt-vms-alpha.adb
1438
1439 * s-vaflop-vms.adb: Rename s-vaflop-vms.adb to s-vaflop-vms-alpha.adb
1440
1441 * mlib-tgt-vms-ia64.adb: New file.
1442
1443 * Makefile.in: Rename mlib-tgt-vms.adb to mlib-tgt-vms-alpha.adb
1444 Add mlib-tgt-vms-ia64.adb
1445 Rename s-vaflop-vms.adb to s-vaflop-vms-alpha.adb.
1446 Move to alpha specific ifeq section.
1447 Add VMS specific versions of symbols.adb
1448 Renaming of 5q vms files.
1449
1450 * 5qsystem.ads renamed to system-vms_64.ads.
1451
14522004-06-07 Vincent Celier <celier@gnat.com>
1453
1454 * a-calend.ads: Add a GNAT Note comment after function Time_Of to
1455 explain that when a time of day corresponding to the non existing hour
1456 on the day switching to DST is specified, Split may return a different
1457 value for Seconds.
1458
1459 * gnatcmd.adb: Add processing of GNAT METRIC (for gnatmetric), similar
1460 to GNAT PRETTY.
1461
1462 * g-os_lib.adb (OpenVMS): New Boolean value imported from System.
1463 (Normalize_Pathname): Only resolve VMS logical names when on VMS.
1464
1465 * mlib-prj.adb (Build_Library): New flag Gtrasymobj_Needed, initialize
1466 to False.
1467 If Gtrasymobj_Needed is True, add the full path of g-trasym.obj to
1468 the linking options.
1469 (Build_Library.Check_Libs): On VMS, if there is a dependency on
1470 g-trasym.ads, set Gtrasymobj_Needed to True.
1471
1472 * prj-attr.adb: Add new package Metrics for gnatmetric
1473
1474 * prj-nmsc.adb (Record_Other_Sources): Put source file names in
1475 canonical case to take into account files with upper case characters on
1476 Windows.
1477 (Ada_Check): Load the reference symbol file name in the name buffer to
1478 check it, not the symbol file name.
1479
1480 * snames.ads, snames.adb: Add standard name Metrics (name of project
1481 file package for gnatmetric).
1482
1483 * vms_conv.ads: Add Metric to Comment_Type
1484
1485 * vms_conv.adb (Initialize): Add component dor Metric in Command_List
1486
1487 * vms_data.ads: Add qualifiers for GNAT METRIC
1488
1489 * makegpr.adb (Link_Executables): Take into account the switches
1490 specified in package Linker of the main project.
1491
14922004-06-07 Thomas Quinot <quinot@act-europe.fr>
1493
1494 * bindgen.adb (Set_Unit_Number): Units is an instance of Table, and so
1495 the index of the last element is Units.Last, not Units.Table'Last
1496 (which is usually not a valid index within the actually allocated
1497 storage for the table).
1498
1499 * exp_ch4.adb (Insert_Dereference_Action): Change predicate that
1500 determines whether to generate a call to a checked storage pool
1501 Dereference action.
1502 Generate such a call only for a dereference that either comes from
1503 source, or is the result of rewriting a dereference that comes from
1504 source.
1505
15062004-06-07 Romain Berrendonner <berrendo@act-europe.fr>
1507
1508 * bindgen.adb (Gen_Output_File): Add support for GAP builds.
1509
15102004-06-07 Eric Botcazou <ebotcazou@act-europe.fr>
1511
1512 (gnat_to_gnu_entity) <E_Array_Subtype>: For multi-dimensional arrays at
1513 file level, elaborate the stride for inner dimensions in alignment
1514 units, not bytes.
1515
1516 * exp_ch5.adb: Correct wrong reference to Component_May_Be_Bit_Aligned
1517 in a comment.
1518
15192004-06-07 Javier Miranda <miranda@gnat.com>
1520
1521 * exp_ch6.adb: Correct wrong modification in previous patch
1522
15232004-06-07 Vasiliy Fofanov <fofanov@act-europe.fr>
1524
1525 * g-trasym.ads: Corrected comment to properly reflect level of support
1526 on VMS.
1527
15282004-06-07 Hristian Kirtchev <kirtchev@gnat.com>
1529
1530 * lib-xref.adb (Generate_Reference): Add nested function Is_On_LHS. It
1531 includes case of a variable referenced on the left hand side of an
1532 assignment, therefore remove redundant code. Variables and prefixes of
1533 indexed or selected components are now marked as referenced on left
1534 hand side. Warnings are now properly emitted when variables or prefixes
1535 are assigned but not read.
1536
1537 * sem_warn.adb (Output_Unreferenced_Messages): Add additional checks to
1538 left hand side referenced variables. Private access types do not
1539 produce the warning "variable ... is assigned but never read".
1540 Add also additional checks to left hand side referenced variables.
1541 Aliased, renamed objects and access types do not produce the warning
1542 "variable ... is assigned but never read" since other entities may read
1543 the memory location.
1544
15452004-06-07 Jerome Guitton <guitton@act-europe.fr>
1546
1547 * Makefile.in: In the powerpc/vxworks-specific section, restore
1548 EXTRA_GNATRTL_NONTASKING_OBJS and EXTRA_GNATRTL_TASKING_OBJS (removed
1549 by mistake).
1550
15512004-06-07 Ed Schonberg <schonberg@gnat.com>
1552
1553 * sem_ch4.adb (Remove_Abstract_Operations): Refine the removal of
1554 predefined operators.
1555 Removes spurious type errors from g-trasym-vms.adb.
1556
1557 * sem_res.adb (Rewrite_Renamed_Operator): If intrinsic operator is
1558 distinct from the operator appearing in the source, call appropriate
1559 routine to insert conversions when needed, and complete resolution of
1560 node.
1561 (Resolve_Intrinsic_Operator): Fix cut-and-paste bug on transfer of
1562 interpretations for rewritten right operand.
1563 (Set_Mixed_Mode_Operand): Handle properly a universal real operand when
1564 the other operand is overloaded and the context is a type conversion.
1565
15662004-06-07 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1567
1568 * ada-tree.def (BLOCK_STMT): Now has two operands.
1569 (BREAK_STMT): New.
1570
1571 * ada-tree.h: (BLOCK_STMT_BLOCK): New macro.
1572
1573 * gigi.h: (gnat_poplevel): Now returns a tree.
1574
1575 * trans.c (end_block_stmt): Add arg; all callers changed.
1576 (tree_transform, case N_Case_Statement): Make a BLOCK_STMT for a WHEN.
1577 (start_block_stmt): Clear BLOCK_STMT_BLOCK.
1578 (add_stmt): Set TREE_TYPE.
1579 (gnat_expand_stmt, case BLOCK_STMT): Handle BLOCK_STMT_BLOCK.
1580 (gnat_expand_stmt, case BREAK_STMT): New case.
1581
1582 * utils.c (gnat_poplevel): Return a BLOCK, if we made one.
1583
15842004-06-07 Jose Ruiz <ruiz@act-europe.fr>
1585
1586 * s-stchop.adsm s-stchop.adb, s-stchop-vxworks.adb: Remove the
1587 procedure Set_Stack_Size that is not needed.
1588
15892004-06-07 Sergey Rybin <rybin@act-europe.fr>
1590
1591 * gnat_ugn.texi: Clarify the case when non-standard naming scheme is
1592 used for gnatpp input file and for the files upon which it depends
1593
15942004-06-07 Ben Brosgol <brosgol@gnat.com>
1595
1596 * gnat_ugn.texi: Wordsmithing of "GNAT and Libraries" chapter
1597
15982004-06-07 Arnaud Charlet <charlet@act-europe.fr>
1599
1600 * gnatvsn.ads: Bump version numbers appropriately.
1601 Add new build type.
1602
16032004-06-07 Pascal Obry <obry@gnat.com>
1604
1605 * gnat_ugn.texi: Improve comments about imported names and link names
1606 on Windows. Add a note about the requirement to use -k gnatdll's option
1607 when working with a DLL which has stripped stdcall symbols (no @nn
1608 suffix).
1609
8a36a0cc
AC
16102004-05-27 Vincent Celier <celier@gnat.com>
1611
1612 * vms_data.ads: Add new GNAT PRETTY qualifiers /NO_BACKUP and
1613 COMMENTS_LAYOUT=UNTOUCHED
1614
1615 * symbols-vms.adb, symbols-vms-alpha.adb: Renamed symbols-vms.adb to
1616 symbols-vms-alpha.adb
1617
16182004-05-27 Thomas Quinot <quinot@act-europe.fr>
1619
1620 * sem.ads: Clarify documentation on checks suppression.
1621
1622 * einfo.ads (Is_Known_Non_Null): Minor comment typo fix and rephrasing.
1623
16242004-05-27 Ed Schonberg <schonberg@gnat.com>
1625
1626 * sem_util.adb (Is_Descendent_Of): Examine properly all ancestors in
1627 the case of multiple derivations.
1628 (Is_Object_Reference): For a selected component, verify that the prefix
1629 is itself an object and not a value.
1630
1631 * sem_ch12.adb (Same_Instantiated_Constant): New name for
1632 Same_Instantiated_Entity.
1633 (Same_Instantiated_Variable): Subsidiary to
1634 Check_Formal_Package_Instance, to recognize actuals for in-out generic
1635 formals that are obtained from a previous formal package.
1636 (Instantiate_Subprogram_Body): Emit proper error when
1637 generating code and the proper body of a stub is missing.
1638
1639 * sem_ch4.adb (Remove_Address_Interpretations): If the operation still
1640 has a universal interpretation, do the disambiguation here.
1641
1642 * exp_ch4.adb (Expand_N_Type_Conversion,
1643 Expand_N_Unchecked_Type_Conversion): Special handling when target type
1644 is Address, to avoid typing anomalies when Address is a visible integer
1645 type.
1646
1647 * exp_ch6.adb (Expand_N_Subprogram_Body): Use Is_Descendent_Of_Address
1648 to determine whether a subprogram should not be marked Pure, even when
1649 declared in a pure package.
1650
16512004-05-27 Jose Ruiz <ruiz@act-europe.fr>
1652
1653 * gnat_ugn.texi: Replace pragma Ravenscar by pragma Profile.
1654
1655 * gnat_rm.texi: Replace Max_Entry_Queue_Depth by Max_Entry_Queue_Length
1656 Document No_Dynamic_Attachment, that supersedes No_Dynamic_Interrupts.
1657 Update the documentation about the Ravenscar profile, following the
1658 definition found in AI-249.
1659
1660 * sem_prag.adb: Use FIFO_Within_Priorities and Ceiling_Locking when
1661 setting the Profile (Ravenscar). This must be done in addition to
1662 setting the required restrictions.
1663
1664 * rtsfind.ads: Add the set of operations defined in package
1665 Ada.Interrupts.
1666
1667 * exp_ch6.adb: Check whether we are violating the No_Dynamic_Attachment
1668 restriction.
1669
16702004-05-27 Eric Botcazou <ebotcazou@act-europe.fr>
1671
1672 lang-specs.h: Always require -c or -S and always redirect to /dev/null
1673 if -gnatc or -gnats is passed.
1674
16752004-05-27 Hristian Kirtchev <kirtchev@gnat.com>
1676
1677 * sem_prag.adb (Sig_Flags): A Pragma_Unchecked_Union does not count as
1678 a significant reference. Warnings are now properly emitted when a
1679 discriminated type is not referenced.
1680
1681 * lib-xref.adb (Generate_Reference): A deferred constant completion,
1682 record representation clause or record type discriminant does not
1683 produce a reference to its corresponding entity. Warnings are now
1684 properly emitted when deferred constants and record types are not
1685 referenced.
1686
16872004-05-27 Geert Bosch <bosch@gnat.com>
1688
1689 * Makefile.in: Use long version of libm routines on ia64 gnu/linux.
1690 Fixes ACATS Annex G tests.
1691
16922004-05-27 Robert Dewar <dewar@gnat.com>
1693
1694 * rtsfind.adb (RTU_Loaded): Temporary kludge to get past bug of not
1695 handling WITH
1696
16972004-05-27 Arnaud Charlet <charlet@act-europe.fr>
1698
1699 * s-interr.adb (Server_Task): Take into account case of early return
1700 from sigwait under e.g. linux.
1701
17022004-05-27 Sergey Rybin <rybin@act-europe.fr>
1703
1704 * gnat_ugn.texi: Add description for the new gnatpp options:
1705 -rnb - replace the original source without creating its backup copy
1706 -c0 - do not format comments
1707
0fb2ea01
AC
17082004-05-24 Geert Bosch <bosch@gnat.com>
1709
1710 * a-numaux-x86.adb (Reduce): Reimplement using an approximation of Pi
1711 with 192 bits of precision, sufficient to reduce a double-extended
1712 arguments X with a maximum relative error of T'Machine_Epsilon, for X
1713 in -2.0**32 .. 2.0**32.
1714 (Cos, Sin): Always reduce arguments of 1/4 Pi or larger, to prevent
1715 reduction by the processor, which only uses a 68-bit approximation of
1716 Pi.
1717 (Tan): Always reduce arguments and compute function either using
1718 the processor's fptan instruction, or by dividing sin and cos as needed.
1719
17202004-05-24 Doug Rupp <rupp@gnat.com>
1721
1722 * adaint.c (__gnat_readdir): Cast CRTL function retun value to avoid
1723 gcc error on 32/64 bit VMS.
1724
17252004-05-24 Olivier Hainque <hainque@act-europe.fr>
1726
1727 * init.c (__gnat_error_handler): Handle EEXIST as EACCES for SIGSEGVs,
1728 since this is what we get for stack overflows although not documented
1729 as such.
1730 Document the issues which may require adjustments to our signal
1731 handlers.
1732
17332004-05-24 Ed Schonberg <schonberg@gnat.com>
1734
1735 * inline.adb (Add_Scope_To_Clean): Do not add cleanup actions to the
1736 enclosing dynamic scope if the instantiation is within a generic unit.
1737
17382004-05-24 Arnaud Charlet <charlet@act-europe.fr>
1739
1740 * exp_dbug.ads: Fix typo.
1741
1742 * Makefile.in: s-osinte-linux-ia64.ads was misnamed.
1743 Rename it to its proper name: system-linux-ia64.ads
1744 (stamp-gnatlib1): Remove extra target specific run time files when
1745 setting up the rts directory.
1746
17472004-05-24 Javier Miranda <miranda@gnat.com>
1748
1749 * einfo.ads, einfo.adb (Limited_Views): Removed.
1750 (Limited_View): New attribute that replaces the previous one. It is
1751 now a bona fide package with the limited-view list through the
1752 first_entity and first_private attributes.
1753
1754 * sem_ch10.adb (Install_Private_With_Clauses): Give support to
1755 limited-private-with clause.
1756 (Install_Limited_Withed_Unit): Install the private declarations of a
1757 limited-private-withed package. Update the installation of the shadow
1758 entities according to the new structure (see Build_Limited_Views)
1759 (Build_Limited_Views): Replace the previous implementation of the
1760 limited view by a package entity that references the first shadow
1761 entity plus the first shadow private entity (required for limited-
1762 private-with clause)
1763 (New_Internal_Shadow_Entity): Code cleanup.
1764 (Remove_Limited_With_Clause): Update the implementation to undo the
1765 new work carried out by Build_Limited_Views.
1766 (Build_Chain): Complete documentation.
1767 Replace Ada0Y by Ada 0Y in comments
1768 Minor reformating
1769
1770 * sem_ch3.adb (Array_Type_Declaration): In case of anonymous access
1771 types the level of accessibility depends on the enclosing type
1772 declaration.
1773
1774 * sem_ch8.adb (Find_Expanded_Name): Fix condition to detect shadow
1775 entities. Complete documentation of previous change.
1776
17772004-05-24 Robert Dewar <dewar@gnat.com>
1778
1779 * namet.adb: Minor reformatting
1780 Avoid use of name I (replace by J)
1781 Minor code restructuring
1782
1783 * sem_ch6.adb: Minor reformatting
1784
1785 * lib-writ.adb: Do not set restriction as active if this is a
1786 Restriction_Warning case.
1787
1788 * sem_prag.adb: Reset restriction warning flag if real pragma
1789 restriction encountered.
1790
1791 * s-htable.adb: Minor reformatting
1792 Change rotate count to 3 in Hash (improves hash for small strings)
1793
1794 * 5qsystem.ads: Add comments for type Address (no literals allowed).
1795
1796 * gnat_ugn.texi: Add new section of documentation "Code Generation
1797 Control", which describes the use of -m switches.
1798
17992004-05-24 Eric Botcazou <ebotcazou@act-europe.fr>
1800
a1db9d9c
AC
1801 trans.c (tree_transform) <N_Identifier>: Do the dereference directly
1802 through the DECL_INITIAL for renamed variables.
0fb2ea01 1803
7599f1b0
AC
18042004-05-24 Arnaud Charlet <charlet@act-europe.fr>
1805
1806 * s-osinte-linux-ia64.ads: Renamed system-linux-ia64.ads
1807
c37bb106
AC
18082004-05-19 Joel Brobecker <brobecker@gnat.com>
1809
1810 * exp_dbug.ads: Correct comments concerning handling of overloading,
1811 since we no longer use $ anymore.
1812
18132004-05-19 Sergey Rybin <rybin@act-europe.fr>
1814
1815 * sem_ch10.adb (Optional_Subunit): When loading a subunit, do not
1816 ignore errors if ASIS_Mode is set. This prevents creating ASIS trees
1817 with illegal subunits.
1818
18192004-05-19 Ed Schonberg <schonberg@gnat.com>
1820
1821 * sem_ch6.adb (Check_Following_Pragma): When compiling a subprogram
1822 body with front-end inlining enabled, check whether an inline pragma
1823 appears immediately after the body and applies to it.
1824
1825 * sem_prag.adb (Cannot_Inline): Emit warning if front-end inlining is
1826 enabled and the pragma appears after the body of the subprogram.
1827
b5e792e2
AC
18282004-05-17 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1829
1830 Part of function-at-a-time conversion
1831
1832 * misc.c (adjust_decl_rtl): Deleted.
1833 (LANG_HOOKS_PUSHLEVEL, LANG_HOOKS_POPLEVEL, LANG_HOOKS_SET_BLOCK):
1834 Define.
1835
1836 * gigi.h: (adjust_decl_rtl, kept_level_p, set_block): Deleted.
1837 (add_decl_stmt, add_stmt, block_has_vars): New functions.
1838 (gnat_pushlevel, gnat_poplevel): Renamed from pushlevel and poplevel.
1839
1840 * decl.c (elaborate_expression, maybe_pad_type): Call add_decl_stmt
1841 when making a decl.
1842 (gnat_to_gnu_entity): Likewise.
1843 Use add_stmt to update setjmp buffer.
1844 Set TREE_ADDRESSABLE instead of calling put_var_into_stack and
1845 flush_addressof.
1846 No longer call adjust_decl_rtl.
1847 (DECL_INIT_BY_ASSIGN_P): New macro.
1848 (DECL_STMT_VAR): Likewise.
1849
1850 * trans.c (gigi): Call start_block_stmt to make the outermost
1851 BLOCK_STMT.
1852 (gnat_to_code, gnu_to_gnu, tree_transform, process_decls, process_type):
1853 Call start_block_stmt and end_block_stmt temporarily.
1854 Use gnat_expand_stmt instead of expand_expr_stmt.
1855 (add_decl_stmt): New function.
1856 (tree_transform): Call it.
1857 (add_stmt): Also emit initializing assignment for DECL_STMT if needed.
1858 (end_block_stmt): Set type and NULL_STMT.
1859 (gnat_expand_stmt): Make recursize call instead of calling
1860 expand_expr_stmt.
1861 (gnat_expand_stmt, case DECL_STMT): New case.
1862 (set_lineno_from_sloc): Do nothing if global.
1863 (gnu_block_stmt_node, gnu_block_stmt_free_list): New variables.
1864 (start_block_stmt, add_stmt, end_block_stmt): New functions.
1865 (build_block_stmt): Call them.
1866 (gnat_to_code): Don't expand NULL_STMT.
1867 (build_unit_elab): Rename pushlevel and poplevel to gnat_* and change
1868 args.
1869 (tree_transform): Likewise.
1870 (tree_transform, case N_Null_Statement): Return NULL_STMT.
1871 (gnat_expand_stmt, case NULL_STMT): New case.
1872 (gnat_expand_stmt, case IF_STMT): Allow nested IF_STMT to have no
1873 IF_STMT_TRUE.
1874
1875 * utils2.c (gnat_mark_addressable, case VAR_DECL): Do not set
1876 TREE_ADDRESSABLE.
1877
1878 * utils.c (create_var_decl): Do not call expand_decl or
1879 expand_decl_init.
1880 Set TREE_ADDRESSABLE instead of calling gnat_mark_addressable.
1881 Set DECL_INIT_BY_ASSIGN_P when needed and do not generate MODIFY_EXPR
1882 here.
1883 (struct e_stack): Add chain_next to GTY.
1884 (struct binding_level): Deleted.
1885 (struct ada_binding_level): New struct.
1886 (free_block_chain): New.
1887 (global_binding_level, clear_binding_level): Deleted.
1888 (global_bindings_p): Rework to see if no chain.
1889 (kept_level_p, set_block): Deleted.
1890 (gnat_pushlevel): Renamed from pushlevel and extensive reworked to use
1891 new data structure and work directly on BLOCK node.
1892 (gnat_poplevel): Similarly.
1893 (get_decls): Look at BLOCK_VARS.
1894 (insert_block): Work directly on BLOCK node.
1895 (block_has_var): New function.
1896 (pushdecl): Rework for new binding structures.
1897 (gnat_init_decl_processing): Rename and rework calls to pushlevel and
1898 poplevel.
1899 (build_subprog_body): Likewise.
1900 (end_subprog_body): Likewise; also set up BLOCK in DECL_INITIAL.
1901
1902 * ada-tree.def (DECL_STMT, NULL_STMT): New codes.
1903
1904 * ada-tree.h: (DECL_INIT_BY_ASSIGN_P): New macro.
1905 (DECL_STMT_VAR): Likewise.
1906
19072004-05-17 Robert Dewar <dewar@gnat.com>
1908
1909 * restrict.ads, restrict.adb (Process_Restriction_Synonym): New
1910 procedure
1911
1912 * sem_prag.adb (Analyze_Pragma, case Restrictions): Cleanup handling
1913 of restriction synonyums by using
1914 Restrict.Process_Restriction_Synonyms.
1915
1916 * snames.ads, snames.adb: Add entries for Process_Restriction_Synonym
1917
1918 * s-restri.ads (Tasking_Allowed): Correct missing comment
1919
1920 * s-rident.ads: Add entries for restriction synonyms
1921
1922 * ali.adb: Fix some problems with badly formatted ALI files that can
1923 result in infinite loops.
1924
1925 * s-taprop-lynxos.adb, s-tpopsp-lynxos.adb, s-taprop-tru64.adb,
1926 s-tpopsp-posix-foreign.adb, s-taprop-irix.adb, s-interr-sigaction.adb,
1927 s-taprop-irix-athread.adb, s-taprop-hpux-dce.adb, s-taprop-linux.adb,
1928 s-taprop-dummy.adb, s-interr-dummy.adb, s-taprop-os2.adb,
1929 s-taprop-solaris.adb, s-tpopsp-solaris.adb, s-asthan-vms.adb,
1930 s-inmaop-vms.adb, s-interr-vms.adb, s-taprop-vms.adb,
1931 s-tpopde-vms.adb, s-taprop-mingw.adb, s-interr-vxworks.adb,
1932 s-taprop-vxworks.adb, s-tpopsp-vxworks.adb, s-taprop-posix.adb,
1933 s-tpopsp-posix.adb, s-tratas-default.adb, a-dynpri.adb,
1934 a-tasatt.adb, a-taside.adb, a-taside.ads, exp_attr.adb,
1935 exp_ch9.adb, g-thread.adb, rtsfind.ads, sem_attr.adb,
1936 s-interr.adb, s-interr.ads, s-soflin.ads, s-taasde.adb,
1937 s-taasde.ads, s-taenca.adb, s-taenca.ads, s-taprop.ads,
1938 s-tarest.adb, s-tarest.ads, s-tasdeb.adb, s-tasdeb.ads,
1939 s-tasini.adb, s-tasini.ads, s-taskin.adb, s-taskin.ads,
1940 s-tasque.adb, s-tasque.ads, s-tasren.adb, s-tasren.ads,
1941 s-tassta.adb, s-tassta.ads, s-tasuti.adb, s-tasuti.ads,
1942 s-tataat.adb, s-tataat.ads, s-tpinop.adb, s-tpinop.ads,
1943 s-tpoben.adb, s-tpobop.adb, s-tpobop.ads, s-tporft.adb,
1944 s-tposen.adb, s-tposen.ads, s-tratas.adb, s-tratas.ads: Change Task_ID
1945 to Task_Id (minor cleanup).
1946
19472004-05-17 Vincent Celier <celier@gnat.com>
1948
1949 * g-os_lib.adb (Normalize_Pathname.Final_Value): Remove trailing
1950 directory separator.
1951
1952 * prj-proc.adb (Recursive_Process): Inherit attribute Languages from
1953 project being extended, if Languages is not declared in extending
1954 project.
1955
19562004-05-17 Javier Miranda <miranda@gnat.com>
1957
1958 * sem_ch10.adb (Install_Limited_Withed_Unit): Do not install the
1959 limited view of a visible sibling.
1960
9bc856dd
AC
19612004-05-14 Robert Dewar <dewar@gnat.com>
1962
1963 * gnat_ugn.texi: Minor change to -gnatS documentation
1964
1965 * sprint.adb: Remove some instances of Assert (False) and for this
1966 purpose replace them by output of a ??? string.
1967
1968 * checks.adb, exp_aggr.adb, sem_elim.adb: Remove useless pragma
1969 Assert (False).
1970
1971 * lib-writ.adb, lib-load.adb, lib.ads, lib.adb: Remove Dependent_Unit
1972 flag processing. This was suppressing required dependencies in
1973 No_Run_Time mode and is not needed since the binder does not generate
1974 references for things in libgnat anyway.
1975
1976 * sem_ch3.adb (Access_Type_Declaration): Reorganize code to avoid GCC
1977 warning.
1978
19792004-05-14 Thomas Quinot <quinot@act-europe.fr>
1980
1981 * gnat_ugn.texi: Document AIX-specific issue with initialization of
1982 resolver library.
1983
1984 * exp_ch4.adb (Insert_Dereference_Action): Do not generate dereference
1985 action for the case of an actual parameter in an init proc call.
1986
19872004-05-14 Ed Schonberg <schonberg@gnat.com>
1988
1989 * sem_ch4.adb (Analyze_Selected_Component): If prefix is a protected
1990 subtype, check visible entities in base type.
1991
1992 * exp_ch7.adb (Clean_Simple_Protected_Objects): Do not generate cleanup
1993 actions if the object is a renaming.
1994
1995 * sem_ch12.adb (Same_Instantiated_Entity): Predicate for
1996 Check_Formal_Package_Instance, to determine more precisely when the
1997 formal and the actual denote the same entity.
1998
19992004-05-14 Javier Miranda <miranda@gnat.com>
2000
2001 * par-ch10.adb (P_Context_Clause): Complete documentation on AI-262
2002
2003 * sem_ch10.adb (Analyze_With_Clause): After analyzed, the entity
2004 corresponding to a private_with must be removed from visibility; it
2005 will be made visible later, just before we analyze the private part of
2006 the package.
2007 (Check_Private_Child_Unit): Allow private_with clauses in public
2008 siblings.
2009 (Install_Siblings): Make visible the private entities of private-withed
2010 siblings.
2011 (Install_Withed_Unit): Do not install the private withed unit if we
2012 are compiling a package declaration and the Private_With_OK flag was
2013 not set by the caller. These declarations will be installed later,
2014 just before we analyze the private part of the package.
2015
2016 * sem_ch3.adb (Analyze_Object_Declaration): In case of errors detected
2017 during the evaluation of the expression that initializes the object,
2018 decorate it with the expected type to avoid cascade errors.
2019 Code cleanup.
2020
2021 * sem_ch6.adb (Analyze_Subprogram_Body): If we are compiling a library
2022 subprogram we have to install the private_with clauses after its
2023 specification has been analyzed (as documented in AI-262.TXT).
2024
2025 * sem_ch8.adb (Has_Private_With): New function. Determines if the
2026 current compilation unit has a private with on a given entity.
2027 (Find_Direct_Name): Detect the Beaujolais problem described in
2028 AI-262.TXT
2029
2030 * sem_utils.ads, sem_util.adb (Is_Ancestor_Package): New function. It
2031 provides the functionality of the function Is_Ancestor that was
2032 previously available in sem_ch10. It has been renamed to avoid
2033 overloading.
2034
2035 * sprint.adb (Sprint_Node_Actual): Print limited_with clauses
2036
20372004-05-14 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2038
2039 * utils.c (build_vms_descriptor): Use SImode pointers.
2040
20412004-05-14 Vasiliy Fofanov <fofanov@act-europe.fr>
2042
2043 * gnat_ugn.texi: Revised chapter "GNAT and Libraries".
2044
20452004-05-14 GNAT Script <nobody@gnat.com>
2046
2047 * Make-lang.in: Makefile automatically updated
2048
084c663c
AC
20492004-05-14 Arnaud Charlet <charlet@act-europe.fr>
2050
2051 Renaming of target specific files for clarity
2052
2053 * Makefile.in: Rename GNAT target specific files.
2054
2055 * 31soccon.ads, 31soliop.ads 35soccon.ads, 3asoccon.ads,
2056 3bsoccon.ads, 3gsoccon.ads, 3hsoccon.ads, 3psoccon.ads,
2057 3ssoccon.ads, 3ssoliop.ads, 3veacodu.adb, 3vexpect.adb,
2058 3vsoccon.ads, 3vsocthi.adb, 3vsocthi.ads, 3vtrasym.adb,
2059 3wsoccon.ads, 3wsocthi.adb, 3wsocthi.ads, 3wsoliop.ads,
2060 3zsoccon.ads, 3zsocthi.adb, 3zsocthi.ads, 41intnam.ads,
2061 42intnam.ads, 45intnam.ads, 4aintnam.ads, 4cintnam.ads,
2062 4gintnam.ads, 4hexcpol.adb, 4hintnam.ads, 4lintnam.ads,
2063 4nintnam.ads, 4ointnam.ads, 4onumaux.ads, 4pintnam.ads,
2064 4sintnam.ads, 4vcaldel.adb, 4vcalend.adb, 4vcalend.ads,
2065 4vintnam.ads, 4wcalend.adb, 4wexcpol.adb, 4wintnam.ads,
2066 4zintnam.ads, 4znumaux.ads, 4zsytaco.adb, 4zsytaco.ads,
2067 51osinte.adb, 51osinte.ads, 51system.ads,
2068 52osinte.adb, 52osinte.ads, 53osinte.ads, 54osinte.ads,
2069 55osinte.adb, 55osinte.ads, 55system.ads, 56osinte.adb,
2070 56osinte.ads, 56system.ads, 56taprop.adb, 56taspri.ads,
2071 56tpopsp.adb, 57system.ads, 58system.ads,
2072 5amastop.adb, 5aml-tgt.adb, 5aosinte.adb, 5aosinte.ads,
2073 5asystem.ads, 5ataprop.adb, 5atasinf.ads, 5ataspri.ads,
2074 5atpopsp.adb, 5avxwork.ads, 5bml-tgt.adb, 5bosinte.adb,
2075 5bosinte.ads, 5bsystem.ads, 5cosinte.ads, 5csystem.ads,
2076 5dsystem.ads, 5esystem.ads, 5fintman.adb, 5fosinte.adb,
2077 5fosinte.ads, 5fsystem.ads, 5ftaprop.adb, 5ftasinf.ads,
2078 5ginterr.adb, 5gintman.adb, 5gmastop.adb, 5gml-tgt.adb,
2079 5gosinte.ads, 5gproinf.adb, 5gproinf.ads, 5gsystem.ads,
2080 5gtaprop.adb, 5gtasinf.adb, 5gtasinf.ads, 5gtpgetc.adb,
2081 5hml-tgt.adb, 5hosinte.adb, 5hosinte.ads, 5hparame.ads,
2082 5hsystem.ads, 5htaprop.adb, 5htaspri.ads, 5htraceb.adb,
2083 5iosinte.adb, 5iosinte.ads, 5itaprop.adb, 5itaspri.ads,
2084 5ksystem.ads, 5kvxwork.ads, 5lml-tgt.adb, 5losinte.ads,
2085 5lparame.adb, 5lsystem.ads, 5msystem.ads, 5mvxwork.ads,
2086 5ninmaop.adb, 5nintman.adb, 5nosinte.ads, 5nsystem.ads,
2087 5ntaprop.adb, 5ntaspri.ads, 5ointerr.adb, 5omastop.adb,
2088 5oosinte.adb, 5oosinte.ads, 5oosprim.adb, 5oparame.adb,
2089 5osystem.ads, 5otaprop.adb, 5otaspri.ads, 5posinte.ads,
2090 5posprim.adb, 5psystem.ads, 5pvxwork.ads, 5sintman.adb,
2091 5sml-tgt.adb, 5sosinte.adb, 5sosinte.ads, 5sosprim.adb,
2092 5sparame.adb, 5ssystem.ads, 5staprop.adb, 5stasinf.adb,
2093 5stasinf.ads, 5staspri.ads, 5stpopsp.adb, 5svxwork.ads,
2094 5tosinte.ads, 5usystem.ads, 5vasthan.adb, 5vdirval.adb,
2095 5vinmaop.adb, 5vinterr.adb, 5vintman.adb, 5vintman.ads,
2096 5vmastop.adb, 5vml-tgt.adb, 5vosinte.adb, 5vosinte.ads,
2097 5vosprim.adb, 5vosprim.ads, 5vparame.ads, 5vsymbol.adb,
2098 5vsystem.ads, 5vtaprop.adb, 5vtaspri.ads, 5vtpopde.adb,
2099 5vtpopde.ads, 5vtraent.adb, 5vtraent.ads, 5vvaflop.adb,
2100 5wdirval.adb, 5wgloloc.adb, 5wintman.adb, 5wmemory.adb,
2101 5wml-tgt.adb, 5wosinte.ads, 5wosprim.adb, 5wsystem.ads,
2102 5wtaprop.adb, 5wtaspri.ads, 5xparame.ads, 5xsystem.ads,
2103 5xvxwork.ads, 5yparame.ads, 5ysystem.ads, 5zinterr.adb,
2104 5zintman.adb, 5zintman.ads, 5zml-tgt.adb, 5zosinte.adb,
2105 5zosinte.ads, 5zosprim.adb, 5zparame.ads, 5zstchop.adb,
2106 5zsystem.ads, 5ztaprop.adb, 5ztaspri.ads, 5ztfsetr.adb,
2107 5ztpopsp.adb, 6vcpp.adb, 6vcstrea.adb, 6vinterf.ads,
2108 7sinmaop.adb, 7sintman.adb, 7sosinte.adb, 7sosprim.adb,
2109 7staprop.adb, 7staspri.ads, 7stfsetr.adb, 7stpopsp.adb,
2110 7straceb.adb, 7straces.adb, 7strafor.adb, 7strafor.ads,
2111 7stratas.adb, 86numaux.adb, 86numaux.ads: Replaced by files below.
2112
2113 * a-caldel-vms.adb, a-calend-mingw.adb, a-calend-vms.adb,
2114 a-calend-vms.ads, a-dirval-mingw.adb, a-dirval-vms.adb,
2115 a-excpol-abort.adb, a-excpol-interix.adb, a-intnam-aix.ads,
2116 a-intnam-dummy.ads, a-intnam-freebsd.ads, a-intnam-hpux.ads,
2117 a-intnam-interix.ads, a-intnam-irix.ads, a-intnam-linux.ads,
2118 a-intnam-lynxos.ads, a-intnam-mingw.ads, a-intnam-os2.ads,
2119 a-intnam-solaris.ads, a-intnam-tru64.ads, a-intnam-unixware.ads,
2120 a-intnam-vms.ads, a-intnam-vxworks.ads, a-numaux-libc-x86.ads,
2121 a-numaux-vxworks.ads, a-numaux-x86.adb, a-numaux-x86.ads,
2122 a-sytaco-vxworks.adb, a-sytaco-vxworks.ads, g-eacodu-vms.adb,
2123 g-expect-vms.adb, g-soccon-aix.ads, g-soccon-freebsd.ads,
2124 g-soccon-hpux.ads, g-soccon-interix.ads, g-soccon-irix.ads,
2125 g-soccon-mingw.ads, g-soccon-solaris.ads, g-soccon-tru64.ads,
2126 g-soccon-unixware.ads, g-soccon-vms.adb, g-soccon-vxworks.ads,
2127 g-socthi-mingw.adb, g-socthi-mingw.ads, g-socthi-vms.adb,
2128 g-socthi-vms.ads, g-socthi-vxworks.adb, g-socthi-vxworks.ads,
2129 g-soliop-mingw.ads, g-soliop-solaris.ads, g-soliop-unixware.ads,
2130 g-trasym-vms.adb, i-cpp-vms.adb, i-cstrea-vms.adb,
2131 interfac-vms.ads, mlib-tgt-aix.adb, mlib-tgt-hpux.adb,
2132 mlib-tgt-irix.adb, mlib-tgt-linux.adb, mlib-tgt-mingw.adb,
2133 mlib-tgt-solaris.adb, mlib-tgt-tru64.adb, mlib-tgt-vms.adb,
2134 mlib-tgt-vxworks.adb, s-asthan-vms.adb, s-gloloc-mingw.adb,
2135 s-inmaop-dummy.adb, s-inmaop-posix.adb, s-inmaop-vms.adb,
2136 s-interr-dummy.adb, s-interr-sigaction.adb, s-interr-vms.adb,
2137 s-interr-vxworks.adb, s-intman-dummy.adb, s-intman-irix.adb,
2138 s-intman-irix-athread.adb, s-intman-mingw.adb, s-intman-posix.adb,
2139 s-intman-solaris.adb, s-intman-vms.adb, s-intman-vms.ads,
2140 s-intman-vxworks.adb, s-intman-vxworks.ads, s-mastop-irix.adb,
2141 s-mastop-tru64.adb, s-mastop-vms.adb, s-mastop-x86.adb,
2142 s-memory-mingw.adb, s-osinte-aix.adb, s-osinte-aix.ads,
2143 s-osinte-aix-fsu.ads, s-osinte-dummy.ads, s-osinte-freebsd.adb,
2144 s-osinte-freebsd.ads, s-osinte-fsu.adb, s-osinte-hpux.ads,
2145 s-osinte-hpux-dce.adb, s-osinte-hpux-dce.ads, s-osinte-interix.ads,
2146 s-osinte-irix.adb, s-osinte-irix.ads, s-osinte-irix-athread.ads,
2147 s-osinte-linux.ads, s-osinte-linux-fsu.ads, s-osinte-linux-ia64.ads,
2148 s-osinte-lynxos-3.adb, s-osinte-lynxos-3.ads, s-osinte-lynxos.adb,
2149 s-osinte-lynxos.ads, s-osinte-mingw.ads, s-osinte-os2.adb,
2150 s-osinte-os2.ads, s-osinte-posix.adb, s-osinte-solaris.adb,
2151 s-osinte-solaris.ads, s-osinte-solaris-fsu.ads,
2152 s-osinte-solaris-posix.ads, s-osinte-tru64.adb, s-osinte-tru64.ads,
2153 s-osinte-unixware.adb, s-osinte-unixware.ads, s-osinte-vms.adb,
2154 s-osinte-vms.ads, s-osinte-vxworks.adb,
2155 s-osinte-vxworks.ads, s-osprim-mingw.adb,
2156 s-osprim-os2.adb, s-osprim-posix.adb, s-osprim-solaris.adb,
2157 s-osprim-unix.adb, s-osprim-vms.adb, s-osprim-vms.ads,
2158 s-osprim-vxworks.adb, s-parame-ae653.ads, s-parame-hpux.ads,
2159 s-parame-linux.adb, s-parame-os2.adb, s-parame-solaris.adb,
2160 s-parame-vms.ads, s-parame-vms-restrict.ads, s-parame-vxworks.ads,
2161 s-proinf-irix-athread.adb, s-proinf-irix-athread.ads,
2162 s-stchop-vxworks.adb, s-taprop-dummy.adb,
2163 s-taprop-hpux-dce.adb, s-taprop-irix.adb,
2164 s-taprop-irix-athread.adb, s-taprop-linux.adb, s-taprop-lynxos.adb,
2165 s-taprop-mingw.adb, s-taprop-os2.adb, s-taprop-posix.adb,
2166 s-taprop-solaris.adb, s-taprop-tru64.adb, s-taprop-vms.adb,
2167 s-taprop-vxworks.adb, s-tasinf-irix.ads, s-tasinf-irix-athread.adb,
2168 s-tasinf-irix-athread.ads, s-tasinf-solaris.adb, s-tasinf-solaris.ads,
2169 s-tasinf-tru64.ads, s-taspri-dummy.ads, s-taspri-hpux-dce.ads,
2170 s-taspri-linux.ads, s-taspri-lynxos.ads, s-taspri-mingw.ads,
2171 s-taspri-os2.ads, s-taspri-posix.ads, s-taspri-solaris.ads,
2172 s-taspri-tru64.ads, s-taspri-vms.ads, s-taspri-vxworks.ads,
2173 s-tfsetr-default.adb, s-tfsetr-vxworks.adb, s-tpopde-vms.adb,
2174 s-tpopde-vms.ads, s-tpopsp-lynxos.adb, s-tpopsp-posix.adb,
2175 s-tpopsp-posix-foreign.adb, s-tpopsp-solaris.adb, s-tpopsp-vxworks.adb,
2176 s-traceb-hpux.adb, s-traceb-mastop.adb, s-traces-default.adb,
2177 s-traent-vms.adb, s-traent-vms.ads, s-trafor-default.adb,
2178 s-trafor-default.ads, s-tratas-default.adb, s-vaflop-vms.adb,
2179 s-vxwork-alpha.ads, s-vxwork-m68k.ads, s-vxwork-mips.ads,
2180 s-vxwork-ppc.ads, s-vxwork-sparcv9.ads, s-vxwork-xscale.ads,
2181 symbols-vms.adb, system-aix.ads, system-freebsd-x86.ads,
2182 system-hpux.ads, system-interix.ads, system-irix-n32.ads,
2183 system-irix-o32.ads, system-linux-x86_64.ads,
2184 system-linux-x86.ads, system-lynxos-ppc.ads, system-lynxos-x86.ads,
2185 system-mingw.ads, system-os2.ads, system-solaris-sparc.ads,
2186 system-solaris-sparcv9.ads, system-solaris-x86.ads, system-tru64.ads,
2187 system-unixware.ads, system-vms.ads, system-vms-zcx.ads,
2188 system-vxworks-alpha.ads, system-vxworks-m68k.ads,
2189 system-vxworks-mips.ads, system-vxworks-ppc.ads,
2190 system-vxworks-sparcv9.ads, system-vxworks-xscale.ads: Replace files
2191 above.
2192
90afe2c9
ZW
21932004-05-13 Zack Weinberg <zack@codesourcery.com>
2194
2195 * trans.c (gnat_stabilize_reference_1): Remove case 'b'.
2196
6de9cd9a
DN
21972004-05-13 Diego Novillo <dnovillo@redhat.com>
2198
2199 Merge from tree-ssa-20020619-branch.
2200
2201 * config-lang.in (boot_language, build_by_default): Set
2202 to no.
2203 * utils.c (unchecked_convert): Use OEP_ONLY_CONST.
2204 (max_size): Add static chain op for call_expr.
2205
f5657d67
RS
22062004-05-12 Richard Sandiford <rsandifo@redhat.com>
2207
2208 PR target/15331
2209 * 5gmastop.adb (Roff): Choose between '4' and '0', not '4' and ' '.
2210
4413b636
RS
22112004-05-11 Roger Sayle <roger@eyesopen.com>
2212
2213 * utils.c (max_size): Use MIN_EXPR to find the minimum value of a
2214 COND_EXPR.
2215
5950a3ac
AC
22162004-05-10 Doug Rupp <rupp@gnat.com>
2217
2218 * 5qsystem.ads: Remove Short_Address subtype declaration. Moved to
2219 system.aux_dec.
2220
2221 * s-auxdec.ads: Add Short_Address subtype (moved here from System).
2222
2223 * Makefile.in: [VMS]: Add translation for 5qauxdec.ads.
2224
2225 * init.c: [VMS] Macroize LIB$ calls for IA64 and Alpha.
2226 Fixes undefined symbols in IA64 gnatlib.
2227
2228 * 5vinmaop.adb: Reference s-auxdec for Short_Address.
2229
2230 * 5xsystem.ads, 5vsystem.ads: Back out last change (addition of subtype
2231 Short_Address). This will be moved to system.auxdec.
2232
22332004-05-10 Thomas Quinot <quinot@act-europe.fr>
2234
2235 * sem_util.adb: Replace test for presence of a node that is always
2236 present with a call to Discard_Node.
2237
2238 * sem_ch10.adb (Analyze_Compilation_Unit): Remove superfluous call to
2239 Analyze on the library unit node after generation of distribution stub
2240 constructs. The call was a no-op because Unit_Node has already been
2241 Analyzed, and the tree fragments for the distribution stubs are
2242 analyzed as they are inserted in Exp_Dist.
2243 Update comment regarding to distribution stubs to reflect that we
2244 do not generate stub in separate files anymore.
2245
2246 * einfo.ads: Clarify the fact that a tagged private type has the
2247 E_Record_Type_With_Private Ekind.
2248
2249 * erroutc.adb: Minor reformatting
2250
2251 * erroutc.ads (Max_Msg_Length): Increase to cover possible larger
2252 values if line length is increased using -gnatyM (noticed during code
2253 reading).
2254
2255 * eval_fat.adb: Minor reformatting
2256 Put spaces around exponentiation operator
2257
22582004-05-10 Ed Schonberg <schonberg@gnat.com>
2259
2260 PR ada/15005
2261 * sem_util.adb (Is_Dependent_Component_Of_Mutable_Object): If prefix
2262 has been rewritten as an explicit dereference, retrieve type of
2263 original node to check for possibly unconstrained record type.
2264
22652004-05-10 Ed Schonberg <schonberg@gnat.com>
2266
2267 * exp_ch7.adb (Check_Visibly_Controlled): If given operation is not
2268 overriding, use the operation of the parent unconditionally.
2269
2270 * sem_ch4.adb (Remove_Address_Interpretations): Remove address
2271 operation when either operand is a literal, to avoid further
2272 ambiguities.
2273
2274 * sem_ch6.adb (New_Overloaded_Entity): If new entity is inherited and
2275 overridden by a previous explicit declaration, mark the previous entity
2276 as overriding.
2277
2278 * sem_disp.adb (Check_Dispatching_Operation): New predicate
2279 Is_Visibly_Controlled, to determine whether a declaration of a
2280 primitive control operation for a derived type overrides an inherited
2281 one. Add warning if the explicit declaration does not override.
2282
22832004-05-10 Vincent Celier <celier@gnat.com>
2284
2285 * gnatls.adb (Gnatls): Initialize Snames, to avoid assertion error in
2286 some cases when the sources are no longer present.
2287
2288 * make.adb (Collect_Arguments): Fail if an external source, not part
2289 of any project need to be compiled, when switch -x has not been
2290 specified.
2291
2292 * makeusg.adb: Document new switch -x
2293
2294 * opt.ads (External_Unit_Compilation_Allowed): New Boolean flag,
2295 defaulted to False.
2296
2297 * switch-m.adb (Scan_Make_Switches): New switch -x
2298
2299 * vms_data.ads: Add VMS qualifier /NON_PROJECT_UNIT_COMPILATION for
2300 gnatmake switch -x.
2301
2302 * gnat_ugn.texi: Document new gnatmake switch -x
2303
23042004-05-10 Eric Botcazou <ebotcazou@act-europe.fr>
2305
2306 * misc.c (gnat_init_options): Set flag_zero_initialized_in_bss to 0.
2307
2308 * utils.c (create_var_decl): Do not modify the DECL_COMMON flag.
2309 (process_attributes): Likewise.
2310
23112004-05-10 Joel Brobecker <brobecker@gnat.com>
2312
2313 * s-inmaop.ads: Fix spelling mistake in one of the comments.
2314
23152004-05-10 Robert Dewar <dewar@gnat.com>
2316
2317 * gnat_ugn.texi: Document that for config pragma files, the maximum
2318 line length is always 32767.
2319
2320 * gnat_rm.texi: For pragma Eliminate, note that concatenation of string
2321 literals is now allowed.
2322
2323 * gnat-style.texi: Remove statement about splitting long lines before
2324 an operator rather than after, since we do not follow this rule at all.
2325 Clarify rule (really lack of rule) for spaces around exponentiation
2326
2327 * sem_elim.adb: Allow concatenation of string literals as well as a
2328 single string literal for pragma arguments.
2329
2330 * sem_prag.ads, sem_prag.adb: (Is_Config_Static_String): New function
2331
2332 * a-textio.adb (Terminate_Line): Do not add line feed if nothing
2333 written for append case.
2334
2335 * frontend.adb: Changes to avoid checking max line length in config
2336 pragma files.
2337
2338 * g-os_lib.ads: Minor reformatting
2339
2340 * mlib-utl.adb: Do not define Max_Line_Length locally (definition was
2341 wrong in any case. Instead use standard value. Noticed during code
2342 reading.
2343
2344 * opt.ads (Max_Line_Length): New field, used to implement removal of
2345 limitation on length of lines when scanning config pragma files.
2346
2347 * osint.ads, prj-dect.adb, prj-strt.adb, prj-tree.adb,
2348 makeutl.ads, makeutl.adb: Minor reformatting
2349
2350 * scn.adb: Do not check line length while scanning config pragma files
2351 Do not check line length while scanning out license information
2352
2353 * scng.adb: Changes to avoid line length checks while parsing config
2354 pragma files.
2355
23562004-05-10 GNAT Script <nobody@gnat.com>
2357
2358 * Make-lang.in: Makefile automatically updated
2359
48664302
AC
23602004-05-05 Arnaud Charlet <charlet@act-europe.fr>
2361
2362 * osint.adb (Find_Program_Name): Fix handling of VMS version
2363 number.
2364
aa720a54
AC
23652004-05-05 Emmanuel Briot <briot@act-europe.fr>
2366
2367 * g-os_lib.ads (Invalid_Time): New constant
2368
2369 * adaint.h, adaint.c (__gnat_file_time_name, __gnat_file_time_fd): Now
2370 return OS_Time instead of time_t to match what is imported by Ada.
2371 Now return -1 if the file doesn't exist, instead of a random value
2372
23732004-05-05 Robert Dewar <dewar@gnat.com>
2374
2375 * usage.adb: Add line for -gnatR?s switch
2376
2377 * sem_ch13.adb, exp_ch2.adb: Minor reformatting
2378
2379 * g-regpat.ads, g-regpat.adb: Add documentation on handling of Size
2380 and for Match (Data_First, Data_last)
2381
2382 * lib-writ.adb (Write_With_Lines): Ensure that correct index number is
2383 written when we are dealing with multi-unit files.
2384
23852004-05-05 Jerome Guitton <guitton@act-europe.fr>
2386
2387 * Makefile.in: Remove unused targets and variables.
2388
23892004-05-05 Vincent Celier <celier@gnat.com>
2390
2391 * switch-m.adb: New gnatmake switch -eI
2392
2393 * vms_data.ads: Add VMS equivalents of new gnatclean swith -innn and
2394 of new gnatmake switch -eInnn.
2395
2396 * makegpr.adb: Take into account new parameters Index and Src_Index in
2397 Prj.Util.
2398
2399 * clean.adb: Implement support for multi-unit sources, including new
2400 switch -i.
2401
2402 * gnatcmd.adb (GNATCmd): Call Prj.Util.Value_Of with new parameter
2403 Src_Index.
2404
2405 * make.ads, make.adb (Insert_Q): New parameter Index, defaulted to 0
2406 (Extract_From_Q): New out parameter Index
2407 (Mark, Is_Marked): Subprograms moved to Makeutl
2408 (Switches_Of): New parameter Source_Index
2409 (Add_Switch): New parameter Index
2410 (Check): New parameter Source_Index
2411 (Collect_Arguments): New parameter Source_Index
2412 (Collect_Arguments_And_Compile): New parameter Source_Index
2413 (Compile): New parameter Source_Index
2414 Put subprograms in alphabetical order
2415 Add support for multi-source sources, including in project files.
2416
2417 * makeutl.ads, makeutl.adb (Unit_Index_Of): New function
2418 (Mark, Is_Marked, Delete_All_Marks): New subprograms, moved from
2419 Make.
2420
2421 * makeusg.adb: New gnatmake switch -eInnn
2422
2423 * mlib-prj.adb (Build_Library): Add new parameter Src_Index to call to
2424 Prj.Util.Value_Of.
2425
2426 * opt.ads (Main_Index): New variable, defaulted to 0.
2427
2428 * osint.ads, osinte.adb (Add_File): New parameter Index
2429 (Current_Source_Index): New function
2430
2431 * prj.adb: Take into account new components Index and Src_Index
2432
2433 * prj.ads (String_Element): New component Index
2434 (Variable_Value): New component Index
2435 (Array_Element): New component Src_Index
2436
2437 * prj-attr.adb: Indicate that optional index may be specified for
2438 attributes Main, Executable, Spec, Body and some of Switches.
2439
2440 * prj-attr.ads (Attribute_Kind): New values for optional indexes
2441 (Attribute_Record): New component Optional_Index
2442
2443 * prj-com.ads (File_Name_Data): New component Index
2444
2445 * prj-dect.adb (Parse_Attribute_Declaration): Process optional index
2446
2447 * prj-env.adb (Put): Output optional index
2448
2449 * prj-makr.adb: Put indexes for multi-unit sources in SFN pragmas and
2450 attributes Spec and Body.
2451
2452 * prj-nmsc.adb: Process optional indexes
2453
2454 * prj-pp.adb: Ouput "at" for optional indexes
2455
2456 * prj-proc.adb: Take into account optional indexes
2457
2458 * prj-strt.ads, prj-strt.adb (Terms): New Boolean parameter
2459 Optional_Index. For string literal,
2460 process optional index when Optional_Index is True.
2461 (Parse_Expresion): New Boolean parameter Optional_Index
2462
2463 * prj-tree.ads, prj-tree.adb (Source_Index_Of): New function
2464 (Set_Source_Index_Of): New procedure
2465
2466 * prj-util.adb (Executable_Of, Value_Of): Take into account optional
2467 index.
2468
2469 * prj-util.ads (Executable_Of): New parameter Index
2470 (Value_Of (Name_Id, Array_Element_Id) returning Variable_Value):
2471 New parameter Src_Index, defaulted to 0.
2472
24732004-05-05 Ed Schonberg <schonberg@gnat.com>
2474
2475 PR ada/15257
2476 * sem_ch3.adb (Access_Definition): If this is an access parameter
2477 whose designated type is imported through a limited_with clause, do
2478 not add the enclosing subprogram to the list of private dependents of
2479 the type.
2480
24812004-05-05 Ed Schonberg <schonberg@gnat.com>
2482
2483 PR ada/15258
2484 * sem_ch6.adb (Base_Types_Match): True if one type is imported through
2485 a limited_with clause, and the other is its non-limited view.
2486
24872004-05-05 Thomas Quinot <quinot@act-europe.fr>
2488
2489 * cstand.adb (Create_Standard): Initialize Stand.Boolean_Literals.
2490
90afe2c9 2491 * exp_attr.adb, exp_ch5.adb, exp_ch9.adb, exp_disp.adb,
aa720a54
AC
2492 exp_fixd.adb, sem_attr.adb, sem_dist.adb, sem_util.adb: Use
2493 Stand.Boolean_Literals to produce references to entities
2494 Standard_False and Standard_True from compile-time computed boolean
2495 values.
2496
2497 * stand.ads (Boolean_Literals): New variable, provides the entity
2498 values for False and True, for use by the expander.
2499
25002004-05-05 Doug Rupp <rupp@gnat.com>
2501
2502 * 5vinmaop.adb, 5[vx]system.ads: Add Short_Address subtype
2503 5vinmaop.adb: Unchecked convert Short_Address vice Address
2504
2505 * adaint.c, raise.c: Caste CRTL function return value
2506 to avoid gcc error on 32/64 bit IVMS.
2507
2508 * Makefile.in [VMS]: Use iar archiver if host = Alpha/VMS and
2509 target = IA64/VMS.
2510
2511 * init.c[VMS]: Only call Alpha specific __gnat_error_prehandler IN_RTS.
2512
2513 * 5qsystem.ads (Address): Declare as Long_Integer
2514 (Short_Address): Declare as 32 bit subtype of Address
2515 Declare abstract address operations to avoid gratuitous ambiguities.
2516
25172004-05-05 Jose Ruiz <ruiz@act-europe.fr>
2518
2519 * gnat_rm.texi: Use the new restriction Simple_Barriers (AI-249)
2520 instead of the old Boolean_Entry_Barriers.
2521 Ditto for No_Task_Attributes_Package instead of No_Task_Attributes.
2522
25232004-05-05 GNAT Script <nobody@gnat.com>
2524
2525 * Make-lang.in: Makefile automatically updated
2526
1ab2888d
AC
25272004-05-03 Arnaud Charlet <charlet@act-europe.fr>
2528
2529 * 50system.ads, 59system.ads, s-thread.ads: Removed, no longer used.
2530
9f4fd324
AC
25312004-05-03 Olivier Hainque <hainque@act-europe.fr>
2532
2533 PR ada/15152
2534
2535 * exp_ch2.adb (Expand_Current_Value): Leave Machine_Code Asm arguments
2536 alone. Replacing object references by literals is inappropriate in a
2537 so low level context.
2538
25392004-05-03 Arnaud Charlet <charlet@act-europe.fr>
2540
2541 * a-exexpr.adb: Add comments
2542
25432004-05-03 Joel Brobecker <brobecker@gnat.com>
2544
2545 * a-tags.adb (Tag_Table): Add Index_Check pragma Suppress. Allows us to
2546 declare the Ancestor_Tags array in Type_Specific_Data with a small size
2547 without risking a bounds check error when accessing one of its
2548 components.
2549 (Type_Specific_Data): Define Ancestor_Tags as a small array.
2550 This prevents us from hitting a limitation during the debug info
2551 generation when using stabs.
2552
2553 * a-tags.adb (Dispatch_Table): Define the Prims_Ptr component as a
2554 small array.
2555 This prevents us from hitting a limitation during the debug info
2556 generation when using stabs.
2557
25582004-05-03 Eric Botcazou <ebotcazou@act-europe.fr>
2559
2560 lang-specs.h: Remove -gnatz* from specs.
2561
25622004-05-03 Vincent Celier <celier@gnat.com>
2563
2564 * gprmake.adb, makegpr.ads, makegpr.adb: New files.
2565
2566 * Make-lang.in, Makefile.in: Add gprmake
2567
25682004-05-03 Thomas Quinot <quinot@act-europe.fr>
2569
2570 * sem_aggr.adb: Fix typo in comment.
2571
25722004-05-03 Robert Dewar <dewar@gnat.com>
2573
2574 * make.adb: Minor reformatting
2575
2576 * rtsfind.ads, rtsfind.adb: (RTU_Loaded): New function
2577
2578 * sem_attr.adb (Eval_Attribute, case Type_Class): Fix check for address
2579 so that it works when address is not a private type.
2580
2581 * sem_ch13.adb (Check_Expr_Constants, case N_Integer_Literal): Deal
2582 properly with rewritten unchecked conversions. This prevents
2583 order-of-elaboration issues that can otherwise arise.
2584 (Minimum_Size): Don't check size of access types under VMS
2585
2586 * sem_ch4.adb (Remove_Address_Interpretation): New circuit to remove
2587 interpretations of integer literals as type System.Address.
2588
2589 * sem_util.ads, sem_util.adb (Is_Descendent_Of_Address): New function
2590 (Is_Descendent_Of): New function
2591
25922004-05-03 Jose Ruiz <ruiz@act-europe.fr>
2593
2594 * sem_prag.adb: Boolean_Entry_Barriers is a synonym of Simple_Barriers.
2595 Max_Entry_Queue_Depth is a synonym of Max_Entry_Queue_Length.
2596 No_Dynamic_Interrupts is a synonym of No_Dynamic_Attachment.
2597
2598 * sem_res.adb: Use the new restriction Max_Entry_Queue_Length instead
2599 of the old Max_Entry_Queue_Depth.
2600
2601 * snames.adb: Boolean_Entry_Barriers is a synonym of Simple_Barriers.
2602 Max_Entry_Queue_Depth is a synonym of Max_Entry_Queue_Length
2603 No_Dynamic_Interrupts is a synonym of No_Dynamic_Attachment
2604
2605 * snames.ads: New entry for proper handling of Boolean_Entry_Barriers.
2606 New entry for proper handling of Max_Entry_Queue_Depth.
2607 New entry for proper handling of No_Dynamic_Interrupts.
2608
2609 * s-rident.ads: Adding restriction Simple_Barriers (AI-00249) that
2610 supersedes the GNAT specific restriction Boolean_Entry_Barriers.
2611 Adding restriction Max_Entry_Queue_Length (AI-00249) that supersedes
2612 the GNAT specific restriction Max_Entry_Queue_Depth.
2613 Adding restriction No_Dynamic_Attachment (AI-00249) that supersedes
2614 the GNAT specific restriction No_Dynamic_Interrupts.
2615
2616 * restrict.ads, restrict.adb: Use the new restriction Simple_Barriers
2617 instead of the old Boolean_Entry_Barriers.
2618 Use the new restriction No_Dynamic_Attachment instead of the old
2619 No_Dynamic_Interrupts.
2620
2621 * exp_ch9.adb: Check restriction Simple_Barriers (AI-00249) that
2622 supersedes the GNAT specific restriction Boolean_Entry_Barriers.
2623
2624 * gnatbind.adb: Use the new restriction Max_Entry_Queue_Length instead
2625 of the old Max_Entry_Queue_Depth.
2626
26272004-05-03 GNAT Script <nobody@gnat.com>
2628
2629 * Make-lang.in: Makefile automatically updated
2630
d935a36e
AC
26312004-04-29 Ed Schonberg <schonberg@gnat.com>
2632
2633 * checks.adb (Enable_Range_Check): If the prefix of an index component
2634 is an access to an unconstrained array, perform check unconditionally.
2635
26362004-04-29 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2637
2638 * decl.c (gnat_to_gnu_field): Also call make_packable_type if
2639 Component_Clause.
2640
26412004-04-29 Olivier Hainque <hainque@act-europe.fr>
2642
2643 * init.c (__gnat_install_handler, __gnat_error_handler): Remove
2644 alternate stack setting. There was no support for the tasking cases
2645 and the changes eventually caused a number of side-effect failures in
2646 the non-tasking case too.
2647
26482004-04-29 Eric Botcazou <ebotcazou@act-europe.fr>
2649
2650 lang-specs.h: Redirect output to /dev/null if -gnatc or -gnatz or
2651 -gnats is passed.
2652
26532004-04-29 Vincent Celier <celier@gnat.com>
2654
2655 * make.adb (Gnatmake): Increase max size of argument array for
2656 gnatbind for the potential addition of -F.
2657 If there are Stand-Alone Library projects, invoke gnatbind with -F to
2658 be sure that elaboration flags will be checked.
2659
2660 * switch-c.adb: Correct call to Scan_Pos for -gnateI
2661
26622004-04-29 Thomas Quinot <quinot@act-europe.fr>
2663
2664 * sem_warn.adb (Check_References): Move '<access-variable> may be
2665 null' warning out of under Warn_On_No_Value_Assigned.
2666
26672004-04-29 Ed Falis <falis@gnat.com>
2668
2669 * gnat_ugn.texi: Fixed texi error
2670
26712004-04-29 Robert Dewar <dewar@gnat.com>
2672
2673 * sem_ch4.adb (Remove_Abstract_Operations): Unconditionally remove
2674 abstract operations if they come from predefined files.
2675
2676 * gnat_rm.texi: Fix bad doc for pragma Elaboration_Checks (should be
2677 Dynamic, not RM).
2678
2679 * s-addope.adb: Correct obvious error in mod function
2680
26812004-04-28 Andrew W. Reynolds <awreynolds@mac.com>
2682
2683 * Makefile.in: Add target pairs for powerpc darwin*
2684 tasking support.
2685
2686 * a-intnam-darwin.ads, s-osinte-darwin.adb,
2687 s-osinte-darwin.ads, system-darwin-ppc.ads: New files.
2688
ea16c81b
UW
26892004-04-28 Ulrich Weigand <uweigand@de.ibm.com>
2690
2691 * Makefile.in: Add target macro definitions for s390*-linux*.
2692 * system-linux-s390.ads: New file.
2693 * system-linux-s390x.ads: New file.
2694
f0e6f845
JM
26952004-04-28 Joseph S. Myers <jsm@polyomino.org.uk>
2696
2697 * gnat_ugn.texi: Correct argument to @setfilename.
2698
e8c2eedc
UW
26992004-04-28 Ulrich Weigand <uweigand@de.ibm.com>
2700
2701 * a-exexpr.adb (Unwind_Word): New data type.
2702 (Unwind_Exception): Use it as type of Private1 and Private2.
2703
2704 * raise.c (db_action_for): Fix debug printf.
2705
f2c9e65a
AC
27062004-04-27 Ed Schonberg <schonberg@gnat.com>
2707
2708 * a-wtmoio.ads: Formal type must be a modular type, not a signed
2709 integer type.
2710
27112004-04-27 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2712
2713 * decl.c (gnat_to_gnu_entity, case object): Call
2714 __builtin_update_setjmp_buf.
2715
2716 * gigi.h (update_setjmp_buf): Deleted.
2717 (ADT_update_setjmp_buf_decl, update_setjmp_buf_decl): New.
2718
2719 * misc.c: (update_setjmp_buf): Deleted.
2720
2721 * trans.c (gnat_to_gnu): Call do_pending_stack_adjust and emit_queue
2722 around block of RTL.
2723
2724 * utils.c (init_gigi_decls): Initialize update_setjmp_buf.
2725
35b7fa6a
AC
27262004-04-26 Thomas Quinot <quinot@act-europe.fr>
2727
2728 * sem_dist.adb, exp_dist.adb: When constructing a RAS value for a local
2729 subprogram for which no pragma All_Calls_Remote applies, store the
2730 address of the real subprogram in the underlying record type, so local
2731 dereferences do not go through the PCS.
2732
27332004-04-26 Robert Dewar <dewar@gnat.com>
2734
2735 * i-c.ads: Add some type qualifications to avoid ambiguities when
2736 compiling with s-auxdec.ads and a non-private address type.
2737
27382004-04-26 Arnaud Charlet <charlet@act-europe.fr>
2739
2740 * Makefile.rtl: Fix error in previous check-in:
2741 Add s-addope.o to non tasking object list (rather than tasking object
2742 list).
2743
27442004-04-26 Javier Miranda <miranda@gnat.com>
2745
2746 * sem_aggr.adb: Fix typo in comments
2747 (Resolve_Aggr_Expr): Propagate the type to the nested aggregate.
2748 Required to check the null-exclusion attribute.
2749
2750 * sem_attr.adb (Resolve_Attribute): Check the accessibility level in
2751 case of anonymous access types in record and array components. For a
2752 component definition the level is the same of the enclosing composite
2753 type.
2754
2755 * sem_ch3.adb (Analyze_Component_Declaration): In case of components
2756 that are anonymous access types the level of accessibility depends on
2757 the enclosing type declaration. In order to have this information, set
2758 the scope of the anonymous access type to the enclosing record type
2759 declaration.
2760 (Array_Type_Declaration): In case of components that are anonymous
2761 access types the level of accessibility depends on the enclosing type
2762 declaration. In order to have this information, set the scope of the
2763 anonymous access type to the enclosing array type declaration.
2764
2765 * sem_ch3.adb (Array_Type_Declaration): Set the scope of the anonymous
2766 access type.
2767
2768 * sem_ch8.adb (Analyze_Object_Renaming): Add check to verify that
2769 renaming of anonymous access-to-constant types allowed if and only if
2770 the renamed object is access-to-constant.
2771
2772 * sem_util.adb (Type_Access_Level): In case of anonymous access types
2773 that are component_definition or discriminants of a nonlimited type,
2774 the level is the same as that of the enclosing component type.
2775
27762004-04-26 Sergey Rybin <rybin@act-europe.fr>
2777
2778 * sem_elim.adb: Some minor code reorganization from code reading. Fix
2779 misprint in the function name (File_Name_Match).
2780
5a944040
LG
27812004-04-23 Laurent GUERBY <laurent@guerby.net>
2782
90afe2c9 2783 * Makefile.in: Remove RANLIB_TEST, use -$(RANLIB) including after
5a944040 2784 install.
90afe2c9 2785
d0fd1344
RO
27862004-04-23 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2787
2788 * Make-lang.in (GNATBIND_OBJS): Add s-addope.o.
2789
cc4f0de1
AC
27902004-04-23 Emmanuel Briot <briot@act-europe.fr>
2791
2792 * adaint.c (__gnat_try_lock): No longer requires that the parent
2793 directory be writable, the directory itself is enough.
2794 (gnat_is_absolute_path): Change profile, so that the call from
2795 GNAT.OS_Lib can be made more efficient.
2796
2797 * adaint.h (gnat_is_absolute_path): Change profile, so that the call
2798 from GNAT.OS_Lib can be made more efficient.
2799
2800 * g-os_lib.adb (Is_Absolute_Path): More efficient implementation, avoid
2801 one copy of the file name. Found by code reading.
2802
28032004-04-23 Vincent Celier <celier@gnat.com>
2804
2805 * gnat_ugn.texi: Add documentation for gnatmake switch -eL
2806 Correct documentation on gnatmake switches transmitted to the compiler
2807
2808 * ali.ads: Minor comment fix
2809
28102004-04-23 Javier Miranda <miranda@gnat.com>
2811
2812 * sem_ch6.adb: (Confirming Types): Code cleanup
2813
2814 * decl.c (gnat_to_gnu_entity): Give support to anonymous access to
2815 subprogram types: E_Anonymous_Access_Subprogram_Type and
2816 E_Anonymous_Access_Protected_Subprogram_Type.
2817
28182004-04-23 Thomas Quinot <quinot@act-europe.fr>
2819
2820 * sem_dist.adb: Add a new paramter to the RAS_Access TSS indicating
2821 whether a pragma All_Calls_Remote applies to the subprogram on which
2822 'Access is taken.
2823 No functional change is introduced by this revision; the new parameter
2824 will be used to allow calls to local RCI subprograms to be optimized
2825 to not use the PCS in the case where no pragma All_Calls_Remote applies,
2826 as is already done in the PolyORB implementation of the DSA.
2827
2828 * exp_dist.adb: Add a new paramter to the RAS_Access TSS indicating
2829 whether a pragma All_Calls_Remote applies to the subprogram on which
2830 'Access is taken.
2831 No functional change is introduced by this revision; the new parameter
2832 will be used to allow calls to local RCI subprograms to be optimized
2833 to not use the PCS in the case where no pragma All_Calls_Remote applies,
2834 as is already done in the PolyORB implementation of the DSA.
2835
28362004-04-23 Robert Dewar <dewar@gnat.com>
2837
2838 * Makefile.rtl: Add entry for s-addope.o in run time library list
2839 * Make-lang.in: Add entry for s-addope.o to GNAT1 objects
2840 * s-addope.ads, s-addope.adb: New files.
2841
90afe2c9
ZW
2842 * s-carsi8.adb, s-carun8.adb, s-casi16.adb, s-casi32.adb,
2843 s-casi64.adb, s-caun16.adb, s-caun32.adb, s-caun64.adb,
cc4f0de1
AC
2844 s-finimp.adb, s-geveop.adb, s-stoele.adb: Modifications to allow
2845 System.Address to be non-private and signed.
2846
2847 * sem_elim.adb: Minor reformatting (fairly extensive)
2848 Some minor code reorganization from code reading
2849 Add a couple of ??? comments
2850
28512004-04-23 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2852
2853 * trans.c (tree_transform, build_unit_elab): Don't call getdecls.
90afe2c9 2854 (tree_transform, case N_If_Statement): Remove non-determinism.
cc4f0de1
AC
2855
2856 * utils.c (begin_subprog_body): Just set DECL_CONTEXT in PARM_DECL.
2857
28582004-04-23 Sergey Rybin <rybin@act-europe.fr>
2859
2860 * gnat_rm.texi: Small fixes in the changes made in the 'pragma
2861 Eliminate' section.
2862
2863 * snames.ads, snames.adb: Remove Name_Homonym_Number (Homonym_Number is
2864 no longer used as a parameter name for Eliminate pragma).
2865
78bad775
LG
28662004-04-22 Laurent GUERBY <laurent@guerby.net>
2867
2868 PR optimization/14984
2869 PR optimization/14985
2870 * trans.c (gigi): Fix non determinism leading to bootstrap
2871 comparison failures.
2872
af4b9434
AC
28732004-04-21 Pascal Obry <obry@gnat.com>
2874
2875 * adaint.c (__gnat_portable_spawn): Quote first argument (argv[0])
2876 passed to spawnvp() to properly handle program pathname with spaces on
2877 Win32.
2878
28792004-04-21 Emmanuel Briot <briot@act-europe.fr>
2880
2881 * g-debpoo.adb (Print_Info): Avoid extra work if Display_Slots is False.
2882 (Allocate, Deallocate, Free_Physically): Make sure the tasks are
2883 unlocked in case of exceptions.
2884
28852004-04-21 Joel Brobecker <brobecker@gnat.com>
2886
2887 * gigi.h (get_target_no_dollar_in_label): Remove extern declaration.
2888 This function does not exist anymore.
2889
28902004-04-21 Thomas Quinot <quinot@act-europe.fr>
2891
2892 * gnatbind.adb, gnatlink.adb: Update name of imported C symbol.
2893
2894 * link.c: Move variables to the __gnat name space.
2895
2896 * Makefile.in: list link.o explicitly when needed.
2897
2898 * mlib.adb: Remove pragma Linker_Option for "link.o" from mlib.
2899
29002004-04-21 Javier Miranda <miranda@gnat.com>
2901
2902 * einfo.adb (Original_Access_Type): New subprogram
2903 (Set_Original_Access_Type): New subprogram
2904 (Write_Field21_Name): Write the name of the new field
2905
2906 * einfo.ads (Original_Access_Type): New field present in access to
2907 subprogram types.
2908 Addition of two new entities: E_Anonymous_Access_Subprogram_Type, and
2909 E_Anonymous_Access_Protected_Subprogram_Type.
2910
2911 * lib-xref.adb (Output_One_Ref): Give support to anonymous access to
2912 subprogram types.
2913
2914 * lib-xref.ads (Xref_Entity_Letters): Initialize values corresponding
2915 to anonymous access to subprogram types.
2916
2917 * sem_attr.adb (Resolve_Attribute): Give support to anonymous access
2918 to subprogram types.
2919
2920 * sem_ch3.adb (Access_Definition): Complete decoration of entities
2921 corresponding to anonymous access to subprogram types.
2922 (Analyze_Component_Declaration): Add new actual to the call to
2923 subprogram replace_anonymous_access_to_protected_subprogram.
2924 (Array_Type_Declaration): Add new actual to the call to subprogram
2925 replace_anonymous_access_to_protected_subprogram.
2926 (Process_Discriminants): Add new actual to the call to subprogram
2927 replace_anonymous_access_to_protected_subprogram.
2928 (Replace_Anonymous_Access_To_Protected_Subprogram): New formal.
2929
2930 * sem_ch3.ads (Replace_Anonymous_Access_To_Protected_Subprogram): New
2931 formal.
2932
2933 * sem_ch6.adb, sem_type.adb, sem_res.adb: Give support to anonymous
2934 access to subprogram types.
2935
2936 * sem_util.adb (Has_Declarations): Addition of package_specification
2937 nodes.
2938
29392004-04-21 Ed Schonberg <schonberg@gnat.com>
2940
2941 * sem_prag.adb (Make_Inline): If subprogram is a renaming, propagate
2942 inlined flags to renamed entity only if in current unit.
2943
29442004-04-21 Thomas Quinot <quinot@act-europe.fr>
2945
2946 * s-parint.ads: Add DSA implementation marker.
2947
2948 * rtsfind.ads, rtsfind.adb, snames.ads, snames.adb, s-rpc.adb: Use the
2949 value of System.Partition_Interface.DSA_Implementation to determine
2950 what version of the distributed systems annex is available (no
2951 implementation, GLADE, or PolyORB).
2952
29532004-04-21 Joel Brobecker <brobecker@gnat.com>
2954
2955 * targtyps.c (get_target_no_dollar_in_label): Remove, no longer used.
2956
29572004-04-21 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2958
2959 * utils.c (convert, case CONSTRUCTOR, COMPONENT_REF): Do not make node
2960 with new type if alias sets differ.
2961 Fixes ACATS c41103b.
2962
29632004-04-21 Vincent Celier <celier@gnat.com>
2964
2965 * prj.ads: Remove FORTRAN as an accepted language: not tested yet.
2966 Add array Lang_Args for the language specific compiling argument
2967 switches.
2968
2969 * gnat_ugn.texi: Explain in more details when a library is rebuilt.
2970
29712004-04-21 Sergey Rybin <rybin@act-europe.fr>
2972
2973 * gnat_rm.texi: Update the descripton of the Eliminate pragma
2974 according to the recent changes in the format of the parameters of the
2975 pragma (replacing Homonym_Number with Source_Location).
2976
7324bf49
AC
29772004-04-19 Arnaud Charlet <charlet@act-europe.fr>
2978
2979 * 5isystem.ads: Removed, unused.
2980
2981 * gnat_rm.texi: Redo 1.13 change.
2982
29832004-04-19 Robert Dewar <dewar@gnat.com>
2984
2985 * s-stoele.ads: Clean up definition of Storage_Offset (the new
2986 definition is cleaner, avoids the kludge of explicit Standard operator
2987 references, and also is consistent with a visible System.Address with
2988 no visible operations.
2989
2990 * s-geveop.adb: Add declarations to avoid assumption of visible
2991 operations on type System.Address (since these might not be available
2992 if Address is a non-private type for which the operations
2993 are made abstract).
2994
2995 * sem_eval.adb: Minor reformatting
2996
2997 * s-carsi8.ads, s-carun8.ads, s-casi16.ads, s-casi32.ads,
2998 s-casi64.ads, s-caun16.ads, s-caun32.ads, s-caun64.ads: Minor
2999 reformatting (new function spec format).
3000
3001 * s-auxdec.adb, s-carsi8.adb, s-carun8.adb, s-casi16.adb,
3002 s-casi32.adb, s-casi64.adb, s-caun16.adb, s-caun32.adb,
3003 s-caun64.adb: Add declarations to avoid assumption of visible
3004 operations on type System.Address (since these might not be available
3005 if Address is a non-private type for which the operations are made
3006 abstract).
3007
3008 * lib.ads, lib.adb (Synchronize_Serial_Number): New procedure.
3009
3010 * exp_intr.adb: Minor comment update
3011
3012 * exp_aggr.adb, exp_attr.adb, exp_ch13.adb: Minor reformatting.
3013
3014 * 5omastop.adb: Add declarations to avoid assumption of visible
3015 operations on type System.Address (since these might not be available
3016 if Address is a non-private type for which the operations
3017 are made abstract).
3018
30192004-04-19 Vincent Celier <celier@gnat.com>
3020
3021 * switch-m.adb: (Scan_Make_Switches): Process new switch -eL
3022
3023 * prj-pars.ads (Parse): New Boolean parameter Process_Languages,
3024 defaulted to Ada.
3025
3026 * prj-proc.adb (Process): New Boolean parameter Process_Languages,
3027 defaulted to Ada.
3028 Call Check with Process_Languages.
3029 (Check): New Boolean parameter Process_Languages. Call Recursive_Check
3030 with Process_Languages.
3031 (Recursive_Check): New Boolean parameter Process_Languages. Call
3032 Nmsc.Ada_Check or Nmsc.Other_Languages_Check according to
3033 Process_Languages.
3034
3035 * prj-proc.ads (Process): New Boolean parameter Process_Languages,
3036
3037 * prj-util.ads, prj-util.adb (Executable_Of): New Boolean
3038 parameter Ada_Main, defaulted to True.
3039 Check for Ada specific characteristics only when Ada_Main is True.
3040
3041 * opt.ads: (Follow_Links): New Boolean flag for gnatmake
3042
3043 * prj.adb: (Project_Empty): Add new Project_Data components.
3044
3045 * prj.ads: New types and tables for non Ada languages.
3046 (Project_Data): New components Languages, Impl_Suffixes,
3047 First_Other_Source, Last_Other_Source, Imported_Directories_Switches,
3048 Include_Path, Include_Data_Set.
3049
3050 * prj-env.ads, prj-env.adb: Minor reformatting
3051
3052 * prj-nmsc.ads, prj-nmsc.adb: (Other_Languages_Check): New procedure
3053 Put subprograms in alphabetical order
3054
3055 * prj-pars.adb (Parse): New Boolean parameter Process_Languages,
3056 defaulted to Ada; Call Prj.Proc.Process with Process_Languages and
3057 Opt.Follow_Links.
3058
3059 * mlib-prj.adb: Back out modification in last version, as they are
3060 incorrect.
3061 (Build_Library.Check_Libs): Remove useless pragma Warnings (Off)
3062
3063 * make.adb: (Mains): Moved to package Makeutl
3064 (Linker_Opts): Moved to package Makeutl
3065 (Is_External_Assignment): Moved to package Makeutl
3066 (Test_If_Relative_Path): Moved to package Makeutl
3067 (Gnatmake): Move sorting of linker options to function
3068 Makeutl.Linker_Options_Switches.
3069
8f9df7d8
VC
3070 * makeutl.ads, makeutl.adb: New files.
3071
7324bf49
AC
3072 * Makefile.in: Add makeutl.o to the object files for gnatmake
3073
3074 * makeusg.adb: Add line for new switch -eL.
3075
3076 * gnatls.adb (Image): New function.
3077 (Output_Unit): If in verbose mode, output the list of restrictions
3078 specified by pragmas Restrictions.
3079
3080 * 5bml-tgt.adb, 5vml-tgt.adb (Build_Dynamic_Library): Do not use
3081 Text_IO.
3082
3083 * a-calend.adb (Split): Shift the date by multiple of 56 years, if
3084 needed, to put it in the range 1970 (included) - 2026 (excluded).
3085 (Time_Of): Do not shift Unix_Min_Year (1970).
3086 Shift the date by multiple of 56 years, if needed, to put it in the
3087 range 1970 (included) - 2026 (excluded).
3088
3089 * adaint.h, adaint.c (__gnat_set_executable): New function.
3090
30912004-04-19 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3092
3093 * trans.c (tree_transform, case N_Subprogram_Body): Temporarily push
3094 and pop GC context.
3095 (tree_transform, case N_Procedure_Call): Fix typo in setting TREE_TYPE.
3096 (tree_transform, case N_Label): Don't set LABEL_STMT_FIRST_IN_EH.
3097 (tree_transform, case N_Procedure_Call_Statement): Build a tree.
3098 (tree_transform, case N_Code_Statement): Likewise.
3099 (gnat_expand_stmt, case LABEL_STMT): Don't look at
3100 LABEL_STMT_FIRST_IN_EH.
3101 (gnat_expand_stmt, case ASM_STMT): New case.
3102
3103 * utils2.c (build_unary_op): Properly set TREE_READONLY of
3104 UNCONSTRAINED_ARRAY_REF.
3105
3106 * utils.c (poplevel): Temporarily push/pop GC context around inline
3107 function expansion.
3108
3109 * decl.c (maybe_variable): Properly set TREE_READONLY of
3110 UNCONSTRAINED_ARRAY_REF.
3111 (make_packable_type): Only reference TYPE_IS_PADDING_P for RECORD_TYPE.
3112
3113 * ada-tree.def: (ASM_STMT): New.
3114
3115 * ada-tree.h: (LABEL_STMT_FIRST_IN_EH): Deleted.
3116 (ASM_STMT_TEMPLATE, ASM_STMT_OUTPUT, ASM_STMT_ORIG_OUT,
3117 ASM_STMT_INPUT): New.
3118 (ASM_STMT_CLOBBER): Likewise.
3119
31202004-04-19 Thomas Quinot <quinot@act-europe.fr>
3121
3122 * a-except.adb, s-parint.ads, s-parint.adb, types.ads, types.h: Use
3123 general rcheck mechanism to raise Program_Error for E.4(18), instead
3124 of a custom raiser in System.Partition_Interface.
3125 Part of general cleanup work before PolyORB integration.
3126
3127 * snames.ads, snames.adb: Add new runtime library entities and names
3128 for PolyORB DSA.
3129
3130 * sem_dist.ads, sem_dist.adb (Get_Subprogram_Id): Move from sem_dist to
3131 exp_dist.
3132 (Build_Subprogram_Id): New subprogram provided by exp_dist
3133 Code reorganisation in preparation for PolyORB integration.
3134
3135 * exp_dist.ads, exp_dist.adb (Get_Subprogram_Id): Move from sem_dist to
3136 exp_dist.
3137 (Build_Subprogram_Id): New subprogram provided by exp_dist
3138
3139 * sem_ch4.adb (Analyze_One_Call): Fix error message for mismatch in
3140 actual parameter types for call to dereference of an
3141 access-to-subprogram type.
3142
3143 * rtsfind.ads: Add new runtime library entities and names for PolyORB
3144 DSA.
3145
3146 * gnatlink.adb (Value): Remove. Use Interfaces.C.Strings.Value
3147 instead, which has the same behaviour here since we never pass it a
3148 NULL pointer.
3149
3150 * link.c (run_path_option, Solaris case): Use -Wl, as for other
3151 platforms.
3152
3153 * Makefile.in: adjust object file lists for gnatlink and gnatmake
3154 to account for new dependency upon Interfaces.C.Strings + link.o
3155 For x86 FreeBSD, use 86numaux.
3156
3157 * make.adb, gnatcmd.adb: Linker_Library_Path_Option has been moved up
3158 from Mlib.Tgt to Mlib.
3159
3160 * mlib.ads, mlib.adb (Linker_Library_Path_Option): New subprogram, now
3161 target-independent.
3162
3163 * mlib-tgt.ads, mlib-tgt.adb (Linker_Library_Path_Option): Remove
3164 target-specific versions of this subprogram, now implemented as a
3165 target-independent function in Mlib.
3166
3167 * 5aml-tgt.adb, 5bml-tgt.adb, 5gml-tgt.adb, 5hml-tgt.adb, 5lml-tgt.adb,
3168 5sml-tgt.adb, 5vml-tgt.adb, 5zml-tgt.adb, 5wml-tgt.adb
3169 (Linker_Library_Path_Option): Remove target-specific versions of this
3170 subprogram, now implemented as a target-independent function in Mlib.
3171
3172 * atree.adb: (Allocate_Initialize_Node): New subprogram.
3173 Factors out node table slots allocation.
3174 (Fix_Parents): New subprogram.
3175 Encapsulate the pattern of fixing up parent pointers for syntactic
3176 children of a rewritten node.
3177 (New_Copy_Tree): Use New_Copy to copy non-entity nodes.
3178 (Rewrite): Use New_Copy when creating saved copy of original node.
3179 (Replace): Use Copy_Node to copy nodes.
3180
31812004-04-19 Javier Miranda <miranda@gnat.com>
3182
3183 * sprint.adb (Sprint_Node_Actual): Give support to the new
3184 Access_To_Subprogram node available in Access_Definition nodes. In
3185 addition, give support to the AI-231 node fields: null-exclusion,
3186 all-present, constant-present.
3187
3188 * sem_util.ads, sem_util.adb: (Has_Declarations): New subprogram
3189
90afe2c9 3190 * sinfo.ads, sinfo.adb:
7324bf49
AC
3191 New field Access_To_Subprogram_Definition in Access_Definition nodes
3192
3193 * sem_ch6.adb (Process_Formals): Move here the code that creates and
3194 decorates internal subtype declaration corresponding to the
3195 null-excluding formal. This code was previously in Set_Actual_Subtypes.
3196 In addition, carry out some code cleanup on this code. In case of
3197 access to protected subprogram call
3198 Replace_Anonymous_Access_To_Protected_Subprogram.
3199 (Set_Actual_Subtypes): Code cleanup.
3200
3201 * sem_ch8.adb (Analyze_Object_Renaming): Remove un-necessary call to
3202 Find_Type in case of anonymous access renamings. Add warning in case of
3203 null-excluding attribute used in anonymous access renaming.
3204
3205 * sem_ch3.ads (Replace_Anonymous_Access_To_Protected_Subprogram): New
3206 subprogram
3207
3208 * sem_ch3.adb (Replace_Anonymous_Access_To_Protected_Subprogram): New
3209 subprogram.
3210 (Access_Definition): In case of anonymous access to subprograms call
3211 the corresponding semantic routine to decorate the node.
3212 (Access_Subprogram_Declaration): Addition of some comments indicating
3213 some code that probably should be added here. Detected by comparison
3214 with the access_definition subprogram.
3215 (Analyze_Component_Declaration): In case of access to protected
3216 subprogram call Replace_Anonymous_Access_To_Protected.
3217 (Array_Type_Declaration): In case of access to protected subprogram call
3218 Replace_Anonymous_Access_To_Protected_Subprogram.
3219 (Process_Discriminants): In case of access to protected subprogram call
3220 Replace_Anonymous_Access_To_Protected_Subprogram.
3221
3222 * par.adb (P_Access_Definition): New formal that indicates if the
3223 null-exclusion part was present.
3224 (P_Access_Type_Definition): New formal that indicates if the caller has
3225 already parsed the null-excluding part.
3226
3227 * par-ch3.adb (P_Subtype_Declaration): Code cleanup.
3228 (P_Identifier_Declarations): Code cleanup and give support to renamings
3229 of anonymous access to subprogram types.
3230 (P_Derived_Type_Def_Or_Private_Ext_Decl): Code cleanup.
3231 (P_Array_Type_Definition): Give support to AI-254.
3232 (P_Component_Items): Give support to AI-254.
3233 (P_Access_Definition): New formal that indicates if the header was
3234 already parsed by the caller.
3235 (P_Access_Type_Definition): New formal that indicates if the caller has
3236 already parsed the null-excluding part.
3237
3238 * par-ch6.adb (P_Formal_Part): Add the null-excluding parameter to the
3239 call to P_Access_Definition.
3240
32412004-04-19 Geert Bosch <bosch@gnat.com>
3242
3243 * checks.adb (Apply_Float_Conversion_Check): New procedure to implement
3244 the delicate semantics of floating-point to integer conversion.
3245 (Apply_Type_Conversion_Checks): Use Apply_Float_Conversion_Check.
3246
3247 * eval_fat.adb (Machine_Mantissa): Moved to spec.
3248 (Machine_Radix): New function.
3249
3250 * eval_fat.ads (Machine_Mantissa): Moved from body for use in
3251 conversion checks.
3252 (Machine_Radix): New function also for use in conversion checks.
3253
32542004-04-19 Ed Schonberg <schonberg@gnat.com>
3255
3256 * par-prag.adb (Source_File_Name_Project): Fix typo in error message.
3257
3258 * exp_ch9.adb (Expand_Access_Protected_Subprogram_Type): Call analyze
3259 to decorate the access-to-protected subprogram and the equivalent type.
3260
3261 * checks.adb (Null_Exclusion_Static_Checks): Code cleanup. Give support
3262 to anonymous access to subprogram types.
3263
3264 * exp_ch4.adb (Expand_N_In): Preserve Static flag before
3265 constant-folding, for legality checks in contexts that require an RM
3266 static expression.
3267
3268 * exp_ch6.adb (Expand_N_Function_Call): If call may generate large
3269 temporary but stack checking is not enabled, increment serial number
3270 to so that symbol generation is consistent with and without stack
3271 checking.
3272
3273 * exp_util.ads, exp_util.adb (May_Generate_Large_Temp): Predicate is
3274 independent on whether stack checking is enabled, caller must check
3275 the corresponding flag.
3276
3277 * sem_ch3.adb (Constrain_Index): Index bounds given by attributes need
3278 range checks.
3279 (Build_Derived_Concurrent_Type): Inherit Is_Constrained flag from
3280 parent if it has discriminants.
3281 (Build_Derived_Private_Type): Constructed full view does
3282 not come from source.
3283 (Process_Discriminants): Default discriminants on a tagged type are
3284 legal if this is the internal completion of a private untagged
3285 derivation.
3286
3287 * sem_ch6.adb (Set_Actual_Subtypes): The generated declaration needs
3288 no constraint checks, because it corresponds to an existing object.
3289
3290 * sem_prag.adb (Process_Convention): Pragma applies
3291 only to subprograms in the same declarative part, i.e. the same unit,
3292 not the same scope.
3293
3294 * sem_res.adb (Valid_Conversion): In an instance or inlined body,
3295 ignore type mismatch on a numeric conversion if expression comes from
3296 expansion.
3297
32982004-04-19 Sergey Rybin <rybin@act-europe.fr>
3299
3300 * sem_elim.adb (Process_Eliminate_Pragma): Remove the processing for
3301 Homonym_Number parameter, add processing for Source_Location parameter
3302 corresponding.
3303 (Check_Eliminated): Remove the check for homonym numbers, add the check
3304 for source location traces.
3305
3306 * sem_elim.ads (Process_Eliminate_Pragma): Replace Arg_Homonym_Number
3307 with Arg_Source_Location corresponding to the changes in the format of
3308 the pragma.
3309
3310 * sem_prag.adb: (Analyze_Pragma): Changes in the processing of
3311 Eliminate pragma corresponding to the changes in the format of the
3312 pragma: Homonym_Number is replaced with Source_Location, two ways of
3313 distinguishing homonyms are mutially-exclusive.
3314
33152004-04-19 Joel Brobecker <brobecker@gnat.com>
3316
3317 * get_targ.ads (Get_No_Dollar_In_Label): Remove.
3318
3319 * exp_dbug.adb (Output_Homonym_Numbers_Suffix): Remove use of
3320 No_Dollar_In_Label, no longer necessary, as it is always True.
3321 (Strip_Suffixes): Likewise.
3322
33232004-04-19 Gary Dismukes <dismukes@gnat.com>
3324
3325 * s-stalib.ads (type Exception_Code): Use Integer'Size for exponent of
3326 modulus for compatibility with size clause on targets with 16-bit
3327 Integer.
3328
3329 * layout.adb (Discrimify): In the case of private types, set Vtyp to
3330 full type to fix type mismatches on calls to size functions for
3331 discriminant-dependent array components.
3332
33332004-04-19 Jerome Guitton <guitton@act-europe.fr>
3334
3335 * Makefile.in (gnatlib-zcx): New target, for building a ZCX run-time
3336 lib.
3337
33382004-04-19 Pascal Obry <obry@gnat.com>
3339
3340 * mdll-utl.adb (Locate): New version is idempotent.
3341
33422004-04-17 Laurent Guerby <laurent@guerby.net>
fa795c69
LG
3343
3344 PR ada/14988 (partial)
3345 * impunit.adb: Fix typo.
90afe2c9 3346
cce0244b
NN
33472004-04-14 Nathanael Nerode <neroden@gcc.gnu.org>
3348
3349 * Make-lang.in: Remove obsolete rts-none, rts-cert, install-rts-none,
3350 and install-rts-cert targets. Remove all gnatlib and gnattools
3351 targets and all other rts-* targets (moved to libada). Remove (now)
3352 unused Make variables CHMOD, CHMOD_AX_FLAGS, shext, THREAD_KIND,
3353 TRACE, GNATLIBFLAGS, GNATLIBCFLAGS.
3354
af152989
AC
33552004-04-08 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3356
3357 * trans.c (tree_transform): Shortcut returning error_mark_node for
3358 statements in annotate_only_mode.
3359 (tree_transform, case N_Label, case N_Return_Statement,
3360 N_Goto_Statement): Make statement tree instead of generating code.
3361 (tree_transform, case N_Assignment_Statement): No longer check
3362 type_annotate_only.
3363 (gnat_expand_stmt, case GOTO_STMT, case LABEL_STMT, case
3364 RETURN_STMT): New.
3365 (first_nondeleted_insn, build_block_stmt, make_expr_stmt_from_rtl):
3366 New fcns.
3367 (gnat_to_gnu): Collect any RTL generated and deal with it.
3368 (tree_transform, case N_And_Then): Refine when have non-null RTL_EXPR.
3369 (tree_transform case N_If_Statement): Rewrite to make IF_STMT.
3370 (gnat_expand_stmt, case BLOCK_STMT, IF_STMT): New cases.
3371
3372 * ada-tree.def (GOTO_STMT, LABEL_STMT, RETURN_STMT): New tree nodes.
3373
3374 * ada-tree.def (EXPR_STMT): Fix typo in name.
3375 (BLOCK_STMT, IF_STMT): New nodes.
3376
3377 * ada-tree.h (GOTO_STMT_LABEL, LABEL_STMT_LABEL,
3378 LABEL_STMT_FIRST_IN_EH): New macros.
3379 (RETURN_STMT_EXPR): Likewise.
3380
3381 * ada-tree.h: (BLOCK_STMT_LIST, IF_STMT_COND, IF_STMT_TRUE,
3382 IF_STMT_ELSEIF, IF_STMT_ELSE): New macros.
3383
33842004-04-08 Thomas Quinot <quinot@act-europe.fr>
3385
3386 * atree.ads: Correct documentation on extended nodes.
3387
3388 * link.c: Set run_path_option for FreeBSD.
3389
33902004-04-08 Vincent Celier <celier@gnat.com>
3391
3392 * mlib-prj.adb (Build_Library.Check_Libs): On OpenVMS, if dec.ali is
3393 one of the ALI file, do not link with DEC lib.
3394
3395 * par.adb Remove the last two characters ("%s" or "%b") when checking
3396 if a language defined unit may be recompiled.
3397
33982004-04-08 Ed Schonberg <schonberg@gnat.com>
3399
3400 * sem_ch4.adb (Remove_Abstract_Operations): Improve error message when
3401 removal of abstract operation leaves no possible interpretation for
3402 expression.
3403
3404 * sem_eval.adb (Eval_Qualified_Expression): Use
3405 Set_Raises_Constraint_Error on node when needed, so that it does not
3406 get optimized away by subsequent optimizations.
3407
3408 * sem_res.adb (Resolve_Intrinsic_Operator): Save interpretations of
3409 operands even when they are not wrapped in a type conversion.
3410
34112004-04-08 Olivier Hainque <hainque@act-europe.fr>
3412
3413 * sem_prag.adb (Set_Exported): Warn about making static as result of
3414 export only when the export is coming from source. This may be not
3415 be true e.g. on VMS where we expand export pragmas for exception codes
3416 together with imported or exported exceptions, and we don't want the
3417 user to be warned about something he didn't write.
3418
34192004-04-08 Thomas Quinot <quinot@act-europe.fr>
3420
3421 * sem_util.adb (Note_Possible_Modification): Reorganize to remove code
3422 duplication between normal entities and those declared as renamings.
3423 No functional change.
3424
90afe2c9 3425 * s-fileio.ads (Form): Remove pragma Inline, as we cannot currently
af152989
AC
3426 inline functions returning an unconstrained result.
3427
34282004-04-08 Eric Botcazou <ebotcazou@act-europe.fr>
3429
3430 * utils.c (type_for_mode): Handle BLKmode and VOIDmode properly, to
3431 conform to what other front-ends do.
3432
34332004-04-08 Doug Rupp <rupp@gnat.com>
3434
3435 * 5vml-tgt.adb: Use Gas instead of VMS Macro to build auto init shared
3436 libraries.
3437
3984e89a
AC
34382004-04-06 Pascal Obry <obry@gnat.com>
3439
3440 * adaint.c (DIR_SEPARATOR): Properly set DIR_SEPARATOR on Win32.
3441
3442 * osint.adb (Program_Name): Do not look past a directory separator.
3443
34442004-04-06 Thomas Quinot <quinot@act-europe.fr>
3445
3446 * atree.adb: Update comment (Rewrite_Substitute_Node no longer exists).
3447
3448 * exp_ch6.adb (Rewrite_Function_Call): Clarify documentation of
3449 requirement for preserving a copy of the original assignment node.
3450
3451 * sinfo.ads: Update comment (Original_Tree -> Original_Node).
3452
34532004-04-06 Olivier Hainque <hainque@act-europe.fr>
3454
3455 (__gnat_initialize [Vxworks]): Enable references to the crtstuff bits
3456 when supported.
3457
34582004-04-06 Ed Schonberg <schonberg@gnat.com>
3459
3460 * sem_ch4.adb (Remove_Abstract_Operations): Extend previous changes to
3461 operator calls in functional notation, and apply
3462 Universal_Interpretation to operands, not to their type.
3463
34642004-04-06 Robert Dewar <dewar@gnat.com>
3465
3466 * 5wdirval.adb: Minor reformatting
3467
34682004-04-06 Ed Falis <falis@gnat.com>
3469
3470 * gnat_rm.texi: Improve a reference to the GCC manual
3471
30c20106
AC
34722004-04-05 Vincent Celier <celier@gnat.com>
3473
3474 * adaint.h, adaint.c: Add function __gnat_named_file_length
3475
3476 * impunit.adb: Add Ada.Directories to the list
3477
3478 * Makefile.in: Add VMS and Windows versions of
3479 Ada.Directories.Validity package body.
3480
3481 * Makefile.rtl: Add a-direct and a-dirval
3482
3483 * mlib-tgt.ads: Minor comment update.
3484
3485 * a-dirval.ads, a-dirval.adb, 5vdirval.adb, 5wdirval.adb,
3486 a-direct.ads, a-direct.adb: New files.
3487
34882004-04-05 Vincent Celier <celier@gnat.com>
3489
3490 PR ada/13620
3491 * make.adb (Scan_Make_Arg): Pass any -fxxx switches to gnatlink, not
3492 just to the compiler.
3493
34942004-04-05 Robert Dewar <dewar@gnat.com>
3495
3496 * a-except.adb (Exception_Name_Simple): Make sure lower bound of
3497 returned string is 1.
3498
3499 * ali-util.adb: Use proper specific form for Warnings (Off, entity)
3500
3501 * eval_fat.ads: Minor reformatting
3502
3503 * g-curexc.ads: Document that lower bound of returned string values
3504 is always one.
3505
3506 * gnatlink.adb: Add ??? comment for previous change
3507 (need to document why this is VMS specific)
3508
3509 * s-stoele.ads: Minor reformatting
3510
3511 * tbuild.ads: Minor reformatting throughout (new function specs)
3512
3513 * par-ch10.adb (P_Context_Clause): Handle comma instead of semicolon
3514 after WITH.
3515
3516 * scng.adb: Minor reformatting
3517
35182004-04-05 Geert Bosch <bosch@gnat.com>
3519
3520 * eval_fat.adb (Machine): Remove unnecessary suppression of warning.
3521 (Leading_Part): Still perform truncation to machine number if the
3522 specified radix_digits is greater or equal to machine_mantissa.
3523
35242004-04-05 Javier Miranda <miranda@gnat.com>
3525
3526 * par-ch3.adb: Complete documentation of previous change
3527 Correct wrong syntax documentation of the OBJECT_DECLARATION rule
3528 (aliased must appear before constant).
3529
3530 * par-ch4.adb: Complete documentation of previous change.
3531
3532 * par-ch6.adb: Complete documentation of previous change.
3533
3534 * sinfo.ads: Fix typo in commment.
3535
35362004-04-05 Ed Schonberg <schonberg@gnat.com>
3537
3538 * sem_ch3.adb (Inherit_Components): If derived type is private and has
3539 stored discriminants, use its discriminants to constrain parent type,
3540 as is done for non-private derived record types.
3541
3542 * sem_ch4.adb (Remove_Abstract_Operations): New subprogram to implement
3543 Ada 2005 AI-310: an abstract non-dispatching operation is not a
3544 candidate interpretation in an overloaded call.
3545
3546 * tbuild.adb (Unchecked_Convert_To): Preserve conversion node if
3547 expression is Null and target type is not an access type (e.g. a
3548 non-private address type).
3549
35502004-04-05 Thomas Quinot <quinot@act-europe.fr>
3551
3552 * exp_ch6.adb (Rewrite_Function_Call): When rewriting an assignment
3553 statement whose right-hand side is an inlined call, save a copy of the
3554 original assignment subtree to preserve enough consistency for
3555 Analyze_Assignment to proceed.
3556
3557 * sem_ch5.adb (Analyze_Assignment): Remove a costly copy of the
3558 complete assignment subtree which is now unnecessary, as the expansion
3559 of inlined call has been improved to preserve a consistent assignment
3560 tree. Note_Possible_Modification must be called only
3561 after checks have been applied, or else unnecessary checks will
3562 be generated.
3563
3564 * sem_util.adb (Note_Possible_Modification): Reorganise the handling
3565 of explicit dereferences that do not Come_From_Source:
3566 - be selective on cases where we must go back to the dereferenced
3567 pointer (an assignment to an implicit dereference must not be
3568 recorded as modifying the pointer);
3569 - do not rely on Original_Node being present (Analyze_Assignment
3570 calls Note_Possible_Modification on a copied tree).
3571
3572 * sem_warn.adb (Check_References): When an unset reference to a pointer
3573 that is never assigned is encountered, prefer '<pointer> may be null'
3574 warning over '<pointer> is never assigned a value'.
3575
35762004-04-05 Ramon Fernandez <fernandez@gnat.com>
3577
3578 * tracebak.c: Change STOP_FRAME in ppc vxworks to be compliant with
3579 the ABI.
3580
35812004-04-05 Olivier Hainque <hainque@act-europe.fr>
3582
3583 * 5gmastop.adb (Pop_Frame): Comment out the pragma Linker_Option for
3584 libexc. We currently don't reference anything in this library and
3585 linking it in triggers linker warnings we don't want to see.
3586
3587 * init.c: Update comments.
3588
4f976745
RK
35892004-04-05 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3590
3591 * decl.c (gnat_to_gnu_entity): Use TYPE_READONLY.
3592 * utils.c (create_field_decl): Likewise.
3593 * utils2.c (build_unary_op, gnat_build_constructor): Likewise.
3594
6da7d579
AC
35952004-04-02 Arnaud Charlet <charlet@act-europe.fr>
3596
3597 * gnat-style.texi, gnat_rm.texi, gnat_ugn.texi: Remove RCS tags.
3598 Replace ifinfo by ifnottex, to make makeinfo --html happy again.
3599 Add info directory entry and category.
3600
18c6ada9
JH
36012004-04-02 Jan Hubicka <jh@suse.cz>
3602
3603 * utils.c: Include function.h
3604 (end_subprog_body): Clear DECL_STRUCT_FUNCTION.
3605
7cd4527e
AC
36062004-04-01 Arnaud Charlet <charlet@act-europe.fr>
3607
3608 PR ada/14150
3609 * Make-lang.in: Clean up generation of documentation
3610
3611 * gnat-style.texi, gnat_rm.texi, ug_words: Resync with AdaCore version
3612
3613 * xgnatug.adb: Removed, replaced by xgnatugn.adb
3614
3615 * xgnatugn.adb: Replaces xgnatug.adb
3616
3617 * gnat_ug.texi: Removed, replaced by gnat_ugn.texi
3618
3619 * gnat_ugn.texi: Replaces gnat_ug.texi. Resync with AdaCore version
3620
3621 * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
3622 gnat_ug_wnt.texi: Removed.
3623
0c250f07
AC
36242004-04-01 Arnaud Charlet <charlet@act-europe.fr>
3625
3626 * utils2.c: Update copyright notice.
3627
6b6fcd3e
AC
36282004-04-01 Robert Dewar <dewar@gnat.com>
3629
3630 * checks.adb: Minor reformatting throughout
3631 Note that prev checkin added RM reference to alignment warning
3632
36332004-04-01 Ed Schonberg <schonberg@gnat.com>
3634
3635 * exp_aggr.adb (Get_Component_Val): Treat a string literal as
3636 non-static when building aggregate for bit-packed array.
3637
3638 * exp_ch4.adb (Expand_N_Slice): If a packed slice is an actual of a
3639 function call that is itself the actual in a procedure call, build
3640 temporary for it.
3641
3642 * exp_pakd.adb (Expand_Bit_Packed_Element_Set): If right-hand side is
3643 a string literal, create a temporary for it, constant folding only
3644 handles scalars here.
3645
36462004-04-01 Vincent Celier <celier@gnat.com>
3647
3648 * ali-util.adb (Post_Scan, Error_Msg, Error_Msg_S, Error_Msg_SC,
3649 Error_Msg_SP): New empty procedures to instantiate the Scanner.
3650 (Style, Scanner): Instantiations of Styleg and Scng to be able to scan
3651 tokens.
3652 (Accumulate_Checksum, Initialize_Checksum): Remove procedures.
3653 (Get_File_Checksum): Use the instantiated scanner to scan all the tokens
3654 and get the checksum.
3655
3656 * make.adb (Gnatmake): Do not insert into Q the Main_Source if it is
3657 already in the Q.
3658 Increase the Marking_Label at the end of the Multiple_Main_Loop,
3659 instead of at the beginning.
3660
3661 * osint.adb (Lib_File_Name): Use Multi_Unit_Index_Character, not '~'
3662 directly.
3663 (Osint package elaboration): Change Multi_Unit_Index_Character to '$' if
3664 on VMS.
3665
3666 * osint.ads (Multi_Unit_Index_Character): New Character global variable
3667
3668 * osint-c.adb (Set_Library_Info_Name): Use Multi_Unit_Index_Character,
3669 not '~' directly.
3670
3671 * par.adb: Remove test on file name to detect language defined units.
3672 Add test on unit name, after parsing, to detect language defined units
3673 that are not compiled with -gnatg (except System.RPC and its children)
3674
3675 * par-ch10.adb (P_Compilation_Unit): In multi-unit sources, scan the
3676 following units without style checking.
3677
3678 * switch-c.adb: Change -gnatC to -gnateI
3679
3680 * usage.adb: Document new switch -gnateInnn
3681
3682 * scng.adb (Accumulate_Token_Checksum): New procedure
3683 (Scan): Call Accumulate_Token_Checksum after each identifier, reserved
3684 word or literal number.
3685 (Scan.Nlit.Scan_Integer): Do not accumulate internal '_' in litteral
3686 numbers.
3687
36882004-04-01 Thomas Quinot <quinot@act-europe.fr>
3689
3690 * a-tasatt.adb,
3691 g-comlin.adb, sinput-c.adb, s-secsta.adb, s-tpobop.adb,
3692 switch-m.adb, 56taprop.adb, 5ginterr.adb, 5gmastop.adb,
3693 5staprop.adb, 5vinterr.adb, 5vtaprop.adb, 5vtpopde.adb,
3694 5vtpopde.adb: Add missing 'constant' keywords.
3695
36962004-04-01 Javier Miranda <miranda@gnat.com>
3697
3698 * par-ch4.adb: (P_Allocator): Code cleanup
3699
3700 * sem_ch3.adb (Access_Definition): Properly set the null-excluding
3701 attribute.
3702
3703 * sinfo.ads: Complete documentation of previous change
3704
37052004-04-01 Pascal Obry <obry@gnat.com>
3706
3707 * gnatlink.adb (Process_Binder_File): Remove duplicate linker options
3708 only on VMS. This special handling was done because an old GNU/ld bug
3709 on Windows which has been fixed.
3710
37112004-04-01 GNAT Script <nobody@gnat.com>
3712
3713 * Make-lang.in: Makefile automatically updated
3714
8df83eae
RK
37152004-03-31 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3716
3717 * decl.c (gnat_to_gnu_entity, make_type_from_size):
3718 Use TYPE_UNSIGNED, not TREE_UNSIGNED.
3719 * trans.c (tree_transform, convert_with_check): Likewise.
3720 * utils.c (gnat_signed_or_unsigned_type): Likewise.
3721 (build_vms_descriptor, unchecked_convert): Likewise.
3722 * utils2.c (nonbinary_modular_operation): Likewise.
3723
2820d220
AC
37242004-03-29 Javier Miranda <miranda@gnat.com>
3725
3726 * checks.adb (Null_Exclusion_Static_Checks): New subprogram
3727 (Install_Null_Excluding_Check): Local subprogram that determines whether
3728 an access node requires a runtime access check and if so inserts the
3729 appropriate run-time check.
3730 (Apply_Access_Check): Call Install_Null_Excluding check if required
3731 (Apply_Constraint_Check): Call Install_Null_Excluding check if required
3732
3733 * checks.ads: (Null_Exclusion_Static_Checks): New subprogram
3734
3735 * einfo.ads: Fix typo in comment
3736
3737 * exp_ch3.adb (Build_Assignment): Generate conversion to the
3738 null-excluding type to force the corresponding run-time check.
3739 (Expand_N_Object_Declaration): Generate conversion to the null-excluding
3740 type to force the corresponding run-time check.
3741
3742 * exp_ch5.adb (Expand_N_Assignment_Statement): Generate conversion to
3743 the null-excluding type to force the corresponding run-time check.
3744
3745 * exp_ch6.adb (Expand_Call): Do not generate the run-time check in
3746 case of access types unless they have the null-excluding attribute.
3747
3748 * sprint.adb (Sprint_Node_Actual): Give support to the null-exclusing
3749 part.
3750
3751 * exp_util.ads: Fix typo in comment
3752
3753 * par.adb (P_Null_Exclusion): New subprogram
3754 (P_Subtype_Indication): New formal that indicates if the null-excluding
3755 part has been scanned-out and it was present
3756
3757 * par-ch3.adb, par-ch4.adb, par-ch6.adb: Give support to AI-231
3758
3759 * sem_aggr.adb: (Check_Can_Never_Be_Null): New subprogram
3760 (Aggregate_Constraint_Checks): Generate conversion to the null-excluding
3761 type to force the corresponding run-time check
3762 (Resolve_Aggregate): Propagate the null-excluding attribute to the array
3763 components
3764 (Resolve_Array_Aggregate): Carry out some static checks
3765 (Resolve_Record_Aggregate.Get_Value): Carry out some static check
3766
3767 * sem_ch3.adb (Access_Definition): In Ada 0Y the Can_Never_Be_Null
3768 attribute must be set only if specified by means of the null-excluding
3769 part. In addition, we must also propagate the access-constant attribute
3770 if present.
3771 (Access_Subprogram_Declaration, Access_Type_Declaration,
3772 Analyze_Component_Declaration, Analyze_Object_Declaration,
3773 Array_Type_Declaration, Process_Discriminants,
3774 Analyze_Subtype_Declaration): Propagate the null-excluding attribute
3775 and carry out some static checks.
3776 (Build_Derived_Access_Type): Set the null-excluding attribute
3777 (Derived_Type_Declaration, Process_Subtype): Carry out some static
3778 checks.
3779
3780 * sem_ch4.adb (Analyze_Allocator): Carry out some static checks
3781
3782 * sem_ch5.adb (Analyze_Assignment): Carry out some static checks
3783
3784 * sem_ch6.adb (Process_Formals): Carry out some static checks.
3785 (Set_Actual_Subtypes): Generate null-excluding subtype if the
3786 null-excluding part was present; it is not required to be done here in
3787 case of anonymous access types.
3788 (Set_Formal_Mode): Ada 0Y allows anonymous access to have the null
3789 value.
3790
3791 * sem_res.adb (Resolve_Actuals): Carry out some static check
3792 (Resolve_Null): Allow null in anonymous access
3793
3794 * sinfo.adb: New subprogram Null_Exclusion_Present
3795 All_Present and Constant_Present available on access_definition nodes
3796
3797 * sinfo.ads: New flag Null_Exclusion_Present on subtype_declaration,
3798 object_declaration, derived_type_definition, component_definition,
3799 discriminant_specification, access_to_object_definition,
3800 access_function_definition, allocator, access_procedure_definition,
3801 access_definition, parameter_specification, All_Present and
3802 Constant_Present flags available on access_definition nodes.
3803
38042004-03-29 Robert Dewar <dewar@gnat.com>
3805
3806 * fname.adb, fname.ads, fname-sf.adb, fname-uf.adb, fname-uf.ads,
3807 gnat1drv.adb, lib.adb, lib.ads, lib-load.adb, lib-writ.adb,
3808 opt.ads, osint.adb, osint.ads, osint-c.adb, par.adb,
3809 par-ch10.adb, par-load.adb, par-prag.adb, sfn_scan.adb,
3810 sfn_scan.ads, sinput-l.adb, sinput-l.ads, switch-c.adb,
3811 sem_prag.adb: Updates to handle multiple units/file
3812
3813 * par.adb: Change test for s-rpc to s-rp for detecting rpc and children
3814
3815 * par.adb, memtrack.adb, prj-makr.adb, prj-part.adb,
3816 sem_util.adb: Minor reformatting
3817
3818 * sem_ch12.adb: Add comment for previous change
3819
38202004-03-29 Laurent Pautet <pautet@act-europe.fr>
3821
3822 * osint.adb (Executable_Prefix): Set Exec_Name to the current
3823 executable name when not initialized. Otherwise, use its current value.
3824
3825 * osint.ads (Exec_Name): Move Exec_Name from body to spec in order to
3826 initialize it to another executable name than the current one. This
3827 allows to configure paths for an executable name (gnatmake) different
3828 from the current one (gnatdist).
3829
38302004-03-29 Ed Schonberg <schonberg@gnat.com>
3831
3832 * exp_ch6.adb (Expand_Call): A call to a function declared in the
3833 current unit cannot be inlined if it appears in the body of a withed
3834 unit, to avoid order of elaboration problems in gigi.
3835
3836 * exp_ch9.adb (Build_Protected_Sub_Specification): Generate debugging
3837 information for protected (wrapper) operation as well, to simplify gdb
3838 use.
3839
3840 * sem_ch6.adb (Analyze_Subprogram_Body): For a private operation in a
3841 protected body, indicate that the entity for the generated spec comes
3842 from source, to ensure that references are properly generated for it.
3843 (Build_Body_To_Inline): Do not inline a function that returns a
3844 controlled type.
3845
3846 * sem_prag.adb (Process_Convention): If subprogram is overloaded, only
3847 apply convention to homonyms that are declared explicitly.
3848
3849 * sem_res.adb (Make_Call_Into_Operator): If the operation is a function
3850 that renames an equality operator and the operands are overloaded,
3851 resolve them with the declared formal types, before rewriting as an
3852 operator.
3853
38542004-03-29 GNAT Script <nobody@gnat.com>
3855
3856 * Make-lang.in: Makefile automatically updated
3857
6d11af89
AC
38582004-03-25 Vasiliy Fofanov <fofanov@act-europe.fr>
3859
3860 * memtrack.adb: Log realloc calls, which are treated as free followed
3861 by alloc.
3862
38632004-03-25 Vincent Celier <celier@gnat.com>
3864
3865 * prj-makr.adb (Process_Directories): Detect when a file contains
3866 several units. Do not include such files in the config pragmas or
3867 in the naming scheme.
3868
3869 * prj-nmsc.adb (Record_Source): New parameter Trusted_Mode.
3870 Resolve links only when not in Trusted_Mode.
3871 (Find_Sources, Recursive_Find_Dirs, Find_Source_Dirs, Locate_Directory):
3872 Do not resolve links for the display names.
3873
3874 * prj-part.adb (Parse_Single_Project, Project_Path_Name_Of): Do not
3875 resolve links when computing the display names.
3876
38772004-03-25 Thomas Quinot <quinot@act-europe.fr>
3878
3879 * sem_attr.adb (Check_Dereference): When the prefix of a 'Tag
3880 attribute reference does not denote a subtype, it can be any
3881 expression that has a classwide type, potentially after an implicit
3882 dereference. In particular, the prefix can be a view conversion for
3883 a classwide type (for which Is_Object_Reference holds), but it can
3884 also be a value conversion for an access-to-classwide type. In the
3885 latter case, there is an implicit dereference, and the original node
3886 for the prefix does not verify Is_Object_Reference.
3887
3888 * sem_util.adb (Is_Dependent_Component_Of_Mutable_Object): A view
3889 conversion of a discriminant-dependent component of a mutable object
3890 is one itself.
3891
38922004-03-25 Ed Schonberg <schonberg@gnat.com>
3893
3894 * freeze.adb (Freeze_Entity): When an inherited subprogram is
3895 inherited, has convention C, and has unconstrained array parameters,
3896 place the corresponding warning on the derived type declaration rather
3897 than the original subprogram.
3898
3899 * sem_ch12.adb (Instantiate_Formal_Subprogram): Set From_Default
3900 indication on renaming declaration, if formal has a box and actual
3901 is absent.
3902
3903 * sem_ch8.adb (Analyze_Subprogram_Renaming): Use From_Default flag to
3904 determine whether to generate an implicit or explicit reference to
3905 the renamed entity.
3906
3907 * sinfo.ads, sinfo.adb: New flag From_Default, to indicate that a
3908 subprogram renaming comes from a defaulted formal subprogram in an
3909 instance.
3910
39112004-03-25 Gary Dismukes <dismukes@gnat.com>
3912
3913 * sem_elab.adb (Check_Elab_Call): Refine loop that checks for default
3914 value expressions to ensure that calls within a component definition
3915 will be checked (since those are evaluated during the record type's
3916 elaboration).
3917
39182004-03-25 Arnaud Charlet <charlet@act-europe.fr>
3919
3920 * s-tpobop.adb: Code clean up:
3921 (Requeue_Call): Extract from PO_Service_Entries to remove duplicated
3922 code.
3923 (PO_Do_Or_Queue): Remove duplicated code and use Requeue_Call.
3924
39252004-03-25 Jose Ruiz <ruiz@act-europe.fr>
3926
3927 * Makefile.in: Clean up in the ravenscar run time.
3928
22421b79
RK
39292004-03-23 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3930
3931 * decl.c (gnat_to_gnu_entity, case E_Access_Type): Pass value
3932 of No_Strict_Aliasing to build_pointer_type_for_mode.
3933 * utils.c (update_pointer_to): Walk pointer and ref chains.
3934
24105bab
AC
39352004-03-22 Cyrille Comar <comar@act-europe.fr>
3936
3937 * ali.ads: Fix Comment about Dynamic_Elab.
3938
3939 * gnatls.adb (Output_Unit): Add output of many flags (Dynamic_Elab,
3940 Has_RACW, Is_Generic, etc.)
3941 (Output_Object, Gnatls): Take into account ALI files not attached to
3942 an object.
3943
39442004-03-22 Vincent Celier <celier@gnat.com>
3945
3946 * gprep.adb: Change all String_Access to Name_Id
3947 (Is_ASCII_Letter): new function
3948 (Double_File_Name_Buffer): New procedure
3949 (Preprocess_Infile_Name): New procedure
3950 (Process_Files): New procedure
3951 (Gnatprep): Check if output and input are existing directories.
3952 Call Process_Files to do the real job.
3953
39542004-03-22 Robert Dewar <dewar@gnat.com>
3955
3956 * prj-env.adb, prj-nmsc.ads, prj-proc.ads,
3957 s-stache.ads, s-stache.adb: Comment updates. Minor reformatting.
3958
39592004-03-22 Sergey Rybin <rybin@act-europe.fr>
3960
3961 * scn.adb (Contains): Add check for EOF, is needed for a degenerated
3962 case when the source contains only comments.
3963
39642004-03-22 Ed Schonberg <schonberg@gnat.com>
3965
3966 * sem_ch10.adb (Analyze_Compilation_Unit): When generating a
3967 declaration for a child subprogram body that acts as a spec, indicate
3968 that the entity in the declaration needs debugging information.
3969
3970 * sem_ch3.adb (Complete_Private_Subtype): Do not build an underlying
3971 full view if the subtype is created for a constrained record component;
3972 gigi has enough information to construct the record, and there is no
3973 place in the tree for the declaration.
3974
3975 * sem_ch6.adb (Build_Body_To_Inline): Use an internal name without
3976 serial number for the dummy body that is built for analysis, to avoid
3977 inconsistencies in the generation of internal names when compiling
3978 with -gnatN.
3979
39802004-03-22 Thomas Quinot <quinot@act-europe.fr>
3981
3982 * sem_util.adb (Is_Object_Reference): A view conversion denotes an
3983 object.
3984
39852004-03-22 GNAT Script <nobody@gnat.com>
3986
3987 * Make-lang.in: Makefile automatically updated
3988
6fce44af
RK
39892004-03-21 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3990
3991 * decl.c (gnat_to_gnu_entity): Use SUBSTITUTE_PLACEHOLDER_IN_EXPR.
3992 * trans.c (tree_transform, emit_index_check): Likewise.
3993 * utils.c (build_template): Likewise.
3994 (max_size, convert): Remove handling of WITH_RECORD_EXPR.
3995 (maybe_unconstrained_array, unchecked_convert): Likewise.
3996 * utils2.c (gnat_truthvalue_conversion, build_binary_op): Likewise.
3997 (build_unary_op): Likewise.
3998 (compare_arrays, build_allocator): Use SUBSTITUTE_PLACEHOLDER_IN_EXPR.
3999 (fill_vms_descriptor): Likewise.
4000 (build_call_alloc_dealloc): Likewise.
4001 ALIGN is unsigned.
4002 * gigi.h (build_call_alloc_dealloc): Alignment is unsigned.
4003
802f6d4b
JM
40042004-03-20 Joseph S. Myers <jsm@polyomino.org.uk>
4005
4006 PR other/14630
4007 * gnat_ug.texi: Add info directory category and entry.
4008 * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
4009 gnat_ug_wnt.texi: Regenerate.
4010
30f3b32b
AC
40112004-03-19 Arnaud Charlet <charlet@act-europe.fr>
4012
4013 * ada-tree.h: Update copyright notice.
4014 Minor reformatting.
4015
40162004-03-19 Olivier Hainque <hainque@act-europe.fr>
4017
4018 * decl.c (gnat_to_gnu_entity, case E_Exception): Handle VMS exceptions
4019 as regular exception objects and not as mere integers representing the
4020 condition code. The latter approach required some dynamics to mask off
4021 severity bits, which did not fit well into the GCC table based model.
4022 (gnat_to_gnu_entity, objects): Don't supply an external name for VMS
4023 exception data objects. We don't it and it would conflict with the other
4024 external symbol we have to generate for such exceptions.
4025
4026 * trans.c (tree_transform, case N_Exception_Handler): Remove part of
4027 the special code for VMS exceptions, since these are now represented
4028 as regular exceptions objects.
4029
7548281d
RK
40302004-03-19 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
4031
4032 * decl.c (debug_no_type_hash): Remove.
4033 (gnat_to_gnu_entity, case E_Array_Type): Don't set and clear it.
4034 * misc.c (LANG_HOOK_HASH_TYPE): Redefine.
4035
7324bf49 40362004-03-19 Laurent Guerby <laurent@guerby.net>
dbee7ab9 4037
90afe2c9 4038 * sem_prag.adb (Suppress_Unsuppress_Echeck): use loop instead of
dbee7ab9 4039 aggregate, allows bootstrap from 3.3 on powerpc-darwin.
90afe2c9 4040
eb34af89
RK
40412004-03-18 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
4042
4043 * ada-tree.h (TYPE_LEFT_JUSTIFIED_MODULAR_P): Add checking.
4044 (TYPE_CONTAINS_TEMPLATE_P, TYPE_OBJECT_RECORD_TYPE): Likewise.
4045 (TYPE_RM_SIZE_INT): Directly use type.values.
4046 (TREE_LOOP_ID): Clean up check.
4047 * decl.c (gnat_to_gnu_entity, case E_Enumeration_Type): Use
4048 TYPE_VALUES, not TYPE_FIELDS.
4049 * trans.c (convert_with_check): Delay access of bounds of basetype
4050 until sure is numeric.
4051
a336eaca
AC
40522004-03-18 Arnaud Charlet <charlet@act-europe.fr>
4053
4054 * 5atpopsp.adb: Remove RTEMS from list of platforms using this file.
4055
4056 Code clean up:
4057 * 5ataprop.adb, 5ftaprop.adb, 5htaprop.adb, 5itaprop.adb, 5staprop.adb,
4058 5vtaprop.adb, 5wtaprop.adb, 7staprop.adb (Finalize_TCB): Use
4059 Specific.Set instead of direct call to e.g pthread_setspecific.
4060
40612004-03-18 Thomas Quinot <quinot@act-europe.fr>
4062
4063 * adaint.c: Update comments.
4064
4065 * Makefile.in: set PREFIX_OBJS, SYMLIB, THREADSLIB, and
4066 GNATLIB_SHARED for FreeBSD.
4067
40682004-03-18 Jose Ruiz <ruiz@act-europe.fr>
4069
4070 * init.c [VxWorks]: Do not fix the stack size for the environment task.
4071 When needed (stack checking) the stack size is retrieved
4072 from the VxWorks kernel.
4073
4074 * Makefile.in: Flag -nostdinc is required when building the run time
4075 for avoiding looking for files in the base compiler.
4076 Add the VxWorks specific version of the package body for
4077 System.Stack_checking.Operations (5zstchop.adb).
4078
4079 * Make-lang.in: Add the object file for
4080 System.Stack_Checking.Operations.
4081
4082 * Makefile.rtl: Add object file for the package
4083 System.Stack_Checking.Operations.
4084
4085 * s-stchop.ads, s-stchop.adb, 5zstchop.adb: New files.
4086
4087 * s-stache.ads, s-stache.adb: Move the operations related to stack
4088 checking from this package to package System.Stack_Checking.Operations.
4089 This way, stack checking operations are only linked in the final
4090 executable when using the -fstack-check flag.
4091
40922004-03-18 Doug Rupp <rupp@gnat.com>
4093
4094 * Makefile.in [VMS]: Handle 64 bit specs (5qsystem.ads, 5xcrtl.ads).
4095 Reorganize ifeq's.
4096
4097 * 5qsystem.ads, 5xcrtl.ads: New files.
4098
40992004-03-18 Vincent Celier <celier@gnat.com>
4100
4101 * prj.adb (Reset): Reset hash table Files_Htable
4102
4103 * prj-env.adb (Source_Paths, Object_Paths): New tables.
4104 (Add_To_Source_Path, Add_To_Object_Path): New procedures, to replace
4105 the procedures Add_To_Path_File.
4106 (Set_Ada_Paths): Accumulate source and object dirs in the tables,
4107 making sure that each directory is present only once and, for object
4108 dirs, when a directory already present is added, the duplicate is
4109 removed and the directory is always put as the last in the table.
4110 Write the path files at the end of these accumulations.
4111
4112 * prj-nmsc.adb (Record_Source): Add source file name in hash table
4113 Files_Htable for all sources.
4114
4115 * prj-proc.adb (Process): Remove restrictions between not directly
4116 related extending projects.
4117
41182004-03-18 Emmanuel Briot <briot@act-europe.fr>
4119
4120 * prj-nmsc.ads, prj-nmsc.adb (Ada_Check): New parameter Trusted_Mode.
4121 (Find_Sources): Minor speed optimization.
4122
4123 * prj-proc.ads, prj-proc.adb (Check, Recursive_Check, Process): New
4124 parameter Trusted_Mode.
4125
41262004-03-18 Sergey Rybin <rybin@act-europe.fr>
4127
4128 * scn.adb (Determine_License): Take into account a degenerated case
4129 when the source contains only comments.
4130
41312004-03-18 Ed Schonberg <schonberg@gnat.com>
4132
4133 * sem_warn.adb (Check_References): For a warning on a selected
4134 component that does not come from source, locate an uninitialized
4135 component of the record type to produce a more precise error message.
4136
e6f69614
AC
41372004-03-15 Jerome Guitton <guitton@act-europe.fr>
4138
4139 * 3zsoccon.ads: Fix multicast options.
4140
4141 * s-thread.ads: Move unchecked conversion from ATSD_Access to Address
4142 in the spec.
4143
41442004-03-15 Robert Dewar <dewar@gnat.com>
4145
4146 * sem_prag.adb: Make sure No_Strict_Aliasing flag is set right when
4147 pragma used for a private type.
4148
4149 * lib-xref.adb (Generate_Reference): Do not generate warning if
4150 reference is in a different unit from the pragma Unreferenced.
4151
4152 * 5vtpopde.adb: Minor reformatting
4153 Fix casing of To_Task_ID
4154
4155 * sem_ch13.adb (Validate_Unchecked_Conversion): Set No_Strict_Aliasing
4156 flag if we have an unchecked conversion to an access type in the same
4157 unit.
4158
41592004-03-15 Geert Bosch <bosch@gnat.com>
4160
4161 * a-ngcoty.adb (Modulus): In alternate formula for large real or
4162 imaginary parts, use Double precision throughout.
4163
4164 * a-tifiio.adb (Put_Scaled): Remove remaining pragma Debug. Not only
4165 we want to be able to compile run-time with -gnata for testing, but
4166 this may also be instantiated in user code that is compiled with -gnata.
4167
41682004-03-15 Olivier Hainque <hainque@act-europe.fr>
4169
4170 * s-stalib.ads (Exception_Code): New type, to represent Import/Export
4171 codes. Having a separate type for this is useful to enforce consistency
4172 throughout the various run-time units.
4173 (Exception_Data): Use Exception_Code for Import_Code.
4174
4175 * s-vmextra.ads, s-vmexta.adb: Use Exception_Code instead of a mix of
4176 Natural and Integer in various places.
4177 (Register_VMS_Exception): Use Base_Code_In to compute the exception code
4178 with the severity bits masked off.
4179 (Register_VMS_Exception): Handle the additional exception data pointer
4180 argument.
4181
4182 * raise.c (_GNAT_Exception structure): Remove the handled_by_others
4183 component, now reflected by an exported accessor.
4184 (is_handled_by): New routine to compute whether the propagated
4185 occurrence matches some handler choice specification. Extracted out of
4186 get_action_description_for, and expanded to take care of the VMS
4187 specifities.
4188 (get_action_description_for): Use is_handled_by instead of an explicit
4189 complex condition to decide if the current choice at hand catches the
4190 propagated occurrence.
4191
4192 * raise.h (Exception_Code): New type for C.
4193
4194 * rtsfind.ads (RE_Id, RE_Unit_Table): Add
4195 System.Standard_Library.Exception_Code, to allow references from the
4196 pragma import/export expander.
4197
4198 * a-exexpr.adb (Is_Handled_By_Others, Language_For, Import_Code_For):
4199 New accessors to allow easy access to GNAT exception data
4200 characteristics.
4201 (GNAT_GCC_Exception record, Propagate_Exception): Get rid of the
4202 redundant Handled_By_Others component, helper for the personality
4203 routine which will now be able to call the appropriate exception data
4204 accessor instead.
4205
4206 * cstand.adb (Create_Standard): Adjust the type of the Import_Code
4207 component of Standard_Exception_Type to be the closest possible to
4208 Exception_Code in System.Standard_Library, that we cannot get at this
4209 point. Expand a ??? comment to notify that this type node should
4210 probably be rewritten later on.
4211
4212 * exp_prag.adb (Expand_Pragma_Import_Export_Exception): Adjust the
4213 registration call to include a pointer to the exception object in the
4214 arguments.
4215
4216 * init.c (__gnat_error_handler): Use Exception_Code and Base_Code_In
4217 instead of int and explicit bitmasks.
4218
42192004-03-15 Vincent Celier <celier@gnat.com>
4220
4221 * vms_data.ads: Add new GNAT BIND qualifier /STATIC. Makes /NOSHARED
4222 equivalent to /STATIC and /NOSTATIC equivalent to /SHARED.
4223
4224 * a-tasatt.adb (To_Access_Code): Remove this UC instantiation, no
4225 longer needed now that it is in the spec of
4226 System.Tasking.Task_Attributes.
4227
4228 * adaint.h, adaint.c: (__gnat_create_output_file): New function
4229
4230 * gnatcmd.adb: Fix bug introduced in previous rev: /= instead of =
4231
4232 * g-os_lib.ads, g-os_lib.adb (Create_Output_Text_File): New function.
4233
4234 * make.adb (Gnatmake): Do not check the executable suffix; it is being
4235 taken care of in Scan_Make_Arg.
4236 (Scan_Make_Arg): Add the executable suffix only if the argument
4237 following -o, in canonical case, does not end with the executable
4238 suffix. When in verbose mode and executable file name does not end
4239 with executable suffix, output the executable name, in canonical case.
4240
4241 * s-tataat.ads (Access_Dummy_Wrapper): Add pragma No_Strict_Aliasing
4242 to avoid warnings when instantiating Ada.Task_Attributes.
4243 Minor reformating.
4244
4245 * mlib-prj.adb (Process_Imported_Libraries): Get the imported libraries
4246 in the correct order.
4247
4248 * prj-makr.adb (Process_Directory): No longer use GNAT.Expect, but
4249 redirect standard output and error to a file for the invocation of the
4250 compiler, then read the file.
4251
4252 * prj-nmsc.adb (Find_Sources): Use the Display_Value for each
4253 directory, instead of the Value.
4254 (Find_Source_Dirs): Remove useless code & comments.
4255
42562004-03-15 Ed Schonberg <schonberg@gnat.com>
4257
4258 * exp_ch3.adb (Freeze_Record_Type): If a primitive operation of a
4259 tagged type is inherited, and the parent operation is not frozen yet,
4260 force generation of a freeze node for the inherited operation, so the
4261 corresponding dispatch entry is properly initialized.
4262 (Make_Predefined_Primitive_Specs): Check that return type is Boolean
4263 when looking for user-defined equality operation.
4264
4265 * exp_ch4.adb (Expand_Composite_Equality): Check that return type is
4266 boolean when locating primitive equality of tagged component.
4267
4268 * exp_ch5.adb (Expand_Assign_Array): If the left-hand side is a
4269 bit-aligned field and the right-hand side a string literal, introduce
4270 a temporary before expanding assignment into a loop.
4271
4272 * exp_ch9.adb (Expand_N_Task_Type_Declaration): Copy expression for
4273 priority in full, to ensure that any expanded subepxressions of it are
4274 elaborated in the scope of the init_proc.
4275
4276 * exp_prag.adb (Expand_Pragma_Import): Search for initialization call
4277 after object declaration, skipping over code that may have been
4278 generated for validity checks.
4279
4280 * sem_ch12.adb (Validate_Private_Type_Instance): If type has unknown
4281 discriminants, ignore the known discriminants of its full view, if
4282 any, to check legality.
4283
4284 * sem_ch3.adb (Complete_Private_Subtype): Do not create constrained
4285 component if type has unknown discriminants.
4286 (Analyze_Private_Extension_Declaration): Discriminant constraint is
4287 null if type has unknown discriminants.
4288
4289 * sem_ch6.adb (Analyze_Generic_Subprogram_Body): Generate reference
4290 for end label when present.
4291
4292 * s-fileio.adb (Open): When called with a C_Stream, use given name for
4293 temporary file, rather than an empty string.
4294
42952004-03-15 Ed Falis <falis@gnat.com>
4296
4297 * s-thread.adb: Removed, no longer used.
4298
42992004-03-15 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
4300
4301 * decl.c (target.h): Now include.
4302 (gnat_to_gnu_entity, case E_Access_Type): Use mode derived from ESIZE
4303 in new build_pointer_from_mode calls for non-fat/non-thin pointer.
4304 (validate_size): For POINTER_TYPE, get smallest size permitted on
4305 machine.
4306
4307 * fe.h: Sort Einfo decls and add Set_Mechanism.
4308
4309 * Makefile.in: (LIBGNAT_SRCS): Remove types.h.
4310 (ada/decl.o): Depends on target.h.
4311
4312 * trans.c (tree_transform, N_Unchecked_Type_Conversion): Do not use
4313 FUNCTION_BOUNDARY; always use TYPE_ALIGN.
4314
43152004-03-15 Thomas Quinot <quinot@act-europe.fr>
4316
4317 * 5ztpopsp.adb, 56tpopsp.adb: Fix spelling of Task_ID.
4318
4319 * exp_ch4.adb (Expand_N_Indexed_Component): Do not call
4320 Insert_Dereference_Action when rewriting an implicit dereference into
4321 an explicit one, this will be taken care of during expansion of the
4322 explicit dereference.
4323 (Expand_N_Slice): Same. Always do the rewriting, even for the case
4324 of non-packed slices, since the dereference action generated by
4325 expansion of the explicit dereference is needed in any case.
4326 (Expand_N_Selected_Component): When rewriting an implicit dereference,
4327 analyze and resolve the rewritten explicit dereference so it is seen
4328 by the expander.
4329 (Insert_Dereference_Action): This procedure is now called only for the
4330 expansion of an N_Explcit_Dereference_Node. Do insert a check even for
4331 dereferences that do not come from source (including explicit
4332 dereferences resulting from rewriting implicit ones), but do not
4333 recursively insert a check for the dereference nodes contained within
4334 the check.
4335 (Insert_Dereference_Action): Clarify and correct comment.
4336
e4c9c075
PB
43372004-03-08 Paolo Bonzini <bonzini@gnu.org>
4338
4339 PR ada/14131
4340 Move language detection to the top level.
4341 * config-lang.in: Build by default.
4342
8a6a52dc
AC
43432004-03-05 Robert Dewar <dewar@gnat.com>
4344
4345 * 56taprop.adb, 5ataprop.adb: Remove unneeded unchecked conversions
4346
4347 * a-tags.adb, a-tags.ads, s-finimp.adb, s-finroo.ads,
4348 i-cpoint.ads, i-cpoint.adb, i-cstrin.adb, i-cstrin.ads,
90afe2c9 4349 5iosinte.ads, 5sosinte.ads, 5staspri.ads, 5itaprop.adb,
8a6a52dc
AC
4350 5staprop.adb, 5wtaprop.adb, s-tataat.ads, s-tataat.adb: Move
4351 unchecked conversion to spec to avoid warnings.
4352
4353 * s-tasini.adb, s-taskin.ads, 5atpopsp.adb: Correct spelling Task_Id
4354 to Task_ID
4355
4356 * 7stpopsp.adb: Correct casing in To_Task_ID call
4357
4358 * a-strsea.ads, a-strsea.adb: Minor reformatting
4359
4360 * einfo.ads, einfo.adb: Define new flag No_Strict_Aliasing
4361
4362 * errout.ads: Switch for VMS is now NO_STRICT_ALIASING.
4363 Adjust Max_Msg_Length to be clearly large enough.
4364
4365 * fe.h: Define In_Same_Source_Unit
4366
4367 * osint.adb: Add pragma Warnings Off to suppress warnings
4368 * g-dyntab.adb, g-table.adb, g-thread.adb: Add Warnings (Off) to kill
4369 aliasing warnings.
4370
4371 * opt.ads: Put entries in alpha order. Add entry for No_Strict_Aliasing
4372
4373 * par-prag.adb: Add dummy entry for No_Strict_Aliasing pragma
4374
4375 * sem_ch13.adb: Generate validate unchecked conversion nodes for gcc.
4376
4377 * sem_ch3.adb: Set No_Strict_Aliasing flag if config pragma set.
4378
4379 * sem_prag.adb: Implement pragma No_Strict_Aliasing.
4380
4381 * sinfo.ads: Remove obsolete comment on validate unchecked conversion
4382 node. We now do generate them for gcc back end.
4383
4384 * table.adb, sinput.adb: Add pragma Warnings Off to suppress aliasing
4385 warning.
4386
4387 * sinput-c.adb: Fix bad name in header.
4388 Add pragma Warnings Off to suppress aliasing warning.
4389
4390 * sinput-l.adb: Add pragma Warnings Off to suppress aliasing warning.
4391
4392 * snames.h, snames.ads, snames.adb: Add entry for pragma
4393 No_Strict_Aliasing.
4394
43952004-03-05 Vincent Celier <celier@gnat.com>
4396
4397 * prj-com.ads: Add hash table Files_Htable to check when a file name
4398 is already a source of another project.
4399
4400 * prj-nmsc.adb (Record_Source): Before recording a new source, check
4401 if its file name is not already a source of another project. Report an
4402 error if it is.
4403
4404 * gnatcmd.adb: When GNAT PRETTY is invoked with a project file and no
4405 source file name, call gnatpp with all the sources of the main project.
4406
4407 * vms_conv.adb (Initialize): GNAT PRETTY may be called with any number
4408 of file names.
4409
4410 * vms_data.ads: Correct documentation of new /OPTIMIZE keyword
4411 NO_STRICT_ALIASING. Add new qualifier for GNAT PRETTY:
4412 /RUNTIME_SYSTEM=, converted to --RTS=
4413 /NOTABS, converted to -notabs
4414
44152004-03-05 Pascal Obry <obry@gnat.com>
4416
4417 * make.adb: Minor reformatting.
4418
44192004-03-05 Ed Schonberg <schonberg@gnat.com>
4420
4421 Part of implemention of AI-262.
4422 * par-ch10.adb (P_Context_Clause): Recognize private with_clauses.
4423
4424 * sem_ch10.ads, sem_ch10.adb: (Install_Private_With_Clauses): New
4425 procedure.
4426
4427 * sem_ch3.adb (Analyze_Component_Declaration): Improve error message
4428 when component type is a partially constrained class-wide subtype.
4429 (Constrain_Discriminated_Type): If parent type has unknown
4430 discriminants, a constraint is illegal, even if full view has
4431 discriminants.
4432 (Build_Derived_Record_Type): Inherit discriminants when deriving a type
4433 with unknown discriminants whose full view is a discriminated record.
4434
4435 * sem_ch7.adb (Preserve_Full_Attributes): Preserve Has_Discriminants
4436 flag, to handle properly derivations of tagged types with unknown
4437 discriminants.
4438 (Analyze_Package_Spec, Analyze_Package_Body): Install
4439 Private_With_Clauses before analyzing private part or body.
4440
4441 * einfo.ads: Indicate that both Has_Unknown_Discriminants and
4442 Has_Discriminants can be true for a given type (documentation).
4443
44442004-03-05 Arnaud Charlet <charlet@act-europe.fr>
4445
4446 * s-restri.ads: Fix license (GPL->GMGPL).
4447
4448 * s-tassta.adb: Minor reformatting.
4449
4450 * s-tasren.adb: Replace manual handling of Self_Id.ATC_Nesting_Level
4451 by calls to Exit_One_ATC_Level, since additional clean up is performed
4452 by this function.
4453
4454 * s-tpobop.adb: Replace manual handling of Self_Id.ATC_Nesting_Level
4455 by calls to Exit_One_ATC_Level, since additional clean up is performed
4456 by this function.
4457
44582004-03-05 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
4459
4460 * trans.c: Reflect GCC changes to fix bootstrap problem.
4461 Add warning for suspicious aliasing unchecked conversion.
4462
44632004-03-05 GNAT Script <nobody@gnat.com>
4464
4465 * Make-lang.in: Makefile automatically updated
4466
555360a5
AC
44672004-03-02 Emmanuel Briot <briot@act-europe.fr>
4468
4469 * ali.adb (Read_Instantiation_Instance): Do not modify the
4470 current_file_num when reading information about instantiations, since
4471 this corrupts files in later references.
4472
44732004-03-02 Vincent Celier <celier@gnat.com>
4474
4475 * bcheck.adb (Check_Consistency): Get the full path of an ALI file
4476 before checking if it is read-only.
4477
4478 * bld.adb (Recursive_Process): Concatenate <PROJECT>.src_dirs in front
4479 of SRC_DIRS and eliminate duplicates.
4480
4481 * gprcmd.adb: Replace command "path" with command "path_sep" to return
4482 the path separator.
4483 (Usage): Document path_sep
4484
4485 * Makefile.generic: For Ada and GNU C++ cases, link directly with the
4486 C++ compiler. No need for a script.
4487 Replace use of C*_INCLUDE_PATH env var for GCC compilers with CPATH.
4488 Do not call gprcmd to build the C*_INCLUDE_PATHs, do it with function
4489 subst.
4490
4491 * prj-env.adb (For_All_Source_Dirs): Only add source dirs in project
4492 where there are Ada sources.
4493 (Set_Ada_Paths): Only add to the include path the source dirs of project
4494 with Ada sources.
4495 (Add_To_Path): Add the Display_Values of the directories, not their
4496 Values.
4497
4498 * prj-nmsc.adb (Find_Sources): Set flag Sources_Present in the project
4499 data.
4500
4501 * prj-nmsc.adb (Add_ALI_For): Make sure that the element Display_Value
4502 is not No_Name.
4503 (Find_Source_Dirs): Set Display_Value to a non canonicalized value, only
4504 Value is canonicalized.
4505 (Language_Independent_Check): Do not copy Value to Display_Value when
4506 canonicalizing Value.
4507
4508 * prj-part.adb (Post_Parse_Context_Clause): Compare canonical cased
4509 path to find limited with cycles.
4510 (Parse_Single_Project): Use canonical cased path to find the end of a
4511 with cycle.
4512
45132004-03-02 Ed Schonberg <schonberg@gnat.com>
4514
4515 * sem_ch10.adb (Optional_Subunit): Verify that unit contains a subunit
4516 and not a child unit.
4517
4518 * sinfo.ads, sinfo.adb: Rearrange flags so that Private_Present can
4519 appear in a with_clause.
4520
4521 * decl.c (gnat_to_gnu_type): If entity is a generic type, which can
4522 only happen in type_annotate mode, do not try to elaborate it.
4523
4524 * exp_util.adb (Force_Evaluation): If expression is a selected
4525 component on the left of an assignment, use a renaming rather than a
4526 temporary to remove side effects.
4527
4528 * freeze.adb (Freeze_Entity): Do not freeze a global entity within an
4529 inlined instance body, which is analyzed before the end of the
4530 enclosing scope.
4531
45322004-03-02 Robert Dewar <dewar@gnat.com>
4533
4534 * par-ch10.adb, par-ch3.adb, par-ch4.adb, scng.adb,
4535 sem_ch4.adb: Use new feature for substitution of keywords in VMS
4536
4537 * errout.ads, errout.adb: Implement new circuit for substitution of
4538 keywords in VMS.
4539
4540 * sem_case.adb (Analyze_Choices): Place message properly when case is
4541 a subtype reference rather than an explicit range.
4542
4543 * sem_elim.adb, s-tpobop.ads, exp_ch2.adb: Minor reformatting
4544
45452004-03-02 Doug Rupp <rupp@gnat.com>
4546
4547 * init.c (__gnat_initialize)[VMS]: Resignal RDB-E-STREAM_EOF.
4548
45492004-03-02 Thomas Quinot <quinot@act-europe.fr>
4550
4551 * s-tporft.adb: Add missing locking around call to Initialize_ATCB.
4552
45532004-03-02 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
4554
4555 * utils.c (finish_record_type): Do not set DECL_NONADDRESSABLE for a
4556 BLKmode bitfield.
4557
8a7988f5
AC
45582004-02-25 Robert Dewar <dewar@gnat.com>
4559
4560 * 51osinte.ads, 52osinte.ads, 53osinte.ads, 54osinte.ads,
4561 55osinte.ads, 56osinte.ads, 5aosinte.ads, 5bosinte.ads,
4562 5cosinte.ads, 5fosinte.ads, 5gosinte.ads, 5hosinte.ads,
4563 5iosinte.ads, 5losinte.ads, 5nosinte.ads, 5oosinte.ads,
4564 5posinte.ads, 5sosinte.ads, 5tosinte.ads, 5vosinte.ads,
4565 5wosinte.ads, 5zosinte.ads: Move instances of Unchecked_Conversion to
4566 the defining instance of the type to avoid aliasing problems.
4567 Fix copyright header. Fix bad comments in package header.
4568
4569 * exp_util.adb, prj-part.adb, prj-part.adb: Minor reformatting
4570
45712004-02-25 Ed Schonberg <schonberg@gnat.com>
4572
4573 * exp_ch2.adb (Param_Entity): Handle properly formals that have been
4574 rewritten as references when aliased through an address clause.
4575
4576 * sem_ch4.adb (Try_Indirect_Call): Normalize actuals before checking
4577 whether call can be interpreted as an indirect call to the result of a
4578 parameterless function call returning an access subprogram.
4579
45802004-02-25 Arnaud Charlet <charlet@act-europe.fr>
4581
4582 Code clean up:
4583 * exp_ch7.adb (Make_Clean): Remove generation of calls to
4584 Unlock[_Entries], since this is now done by Service_Entries directly.
4585
4586 * exp_ch9.adb (Build_Protected_Subprogram_Body): ditto.
4587
4588 * s-tpobop.ads, s-tpobop.adb (PO_Service_Entries): New nested procedure
4589 Requeue_Call for better code readability. Change spec and update calls:
4590 PO_Service_Entries now unlock the PO on exit.
4591 (Protected_Entry_Call, Timed_Protected_Entry_Call): Update calls to
4592 PO_Service_Entries.
4593
4594 * s-tposen.ads, s-tposen.adb (Service_Entry): Now unlock the PO on exit.
4595
4596 * s-taenca.adb, s-tasren.adb: Update calls to PO_Service_Entries.
4597
45982004-02-25 Sergey Rybin <rybin@act-europe.fr>
4599
4600 * exp_ch9.adb (Build_Simple_Entry_Call): Prevent expanding the
4601 protected subprogram call and analyzing the result of such expanding
4602 in case when the called protected subprogram is eliminated.
4603
4604 * sem_elim.adb (Check_Eliminated): Skip blocks when comparing scope
4605 names.
4606
46072004-02-25 Jerome Guitton <guitton@act-europe.fr>
4608
4609 * Makefile.in: Clean ups.
4610
6871ba5f
AC
46112004-02-23 Ed Schonberg <schonberg@gnat.com>
4612
4613 * exp_ch6.adb (Expand_N_Subprogram_Declaration): Do not create
4614 protected operations if original subprogram is flagged as eliminated.
4615 (Expand_N_Subprogram_Body): For a protected operation, create
4616 discriminals for next operation before checking whether the operation
4617 is eliminated.
4618
4619 * exp_ch9.adb (Expand_N_Protected_Body,
4620 Expand_N_Protected_Type_Declaration): Do not generate specs and bodies
4621 for internal protected operations if the original subprogram is
4622 eliminated.
4623
4624 * sem_elim.adb (Check_Eliminated): Handle properly protected operations
4625 declared in a single protected object.
4626
46272004-02-23 Vincent Celier <celier@gnat.com>
4628
4629 * prj-attr.adb: Make attribute Builder'Executable an associative array,
4630 case insensitive if file names are case insensitive, instead of a
4631 standard associative array.
4632
4633 * prj-attr.adb (Initialize): For 'b' associative arrays, do not set
4634 them as case insensitive on platforms where the file names are case
4635 sensitive.
4636
4637 * prj-part.adb (Parse_Single_Project): Make sure, when checking if
4638 project file has already been parsed that canonical path are compared.
4639
46402004-02-23 Robert Dewar <dewar@gnat.com>
4641
4642 * sinput-c.ads: Correct bad unit title in header
4643
4644 * freeze.adb: Minor reformatting
4645
46462004-02-23 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
4647
4648 * trans.c (tree_transform, case N_Procedure_Call_Statement): For
4649 nonaddressable COMPONENT_REF that is removing padding that we are
4650 taking the address of, take the address of the padded record instead
4651 if item is variable size.
4652
6e059adb
AC
46532004-02-20 Robert Dewar <dewar@gnat.com>
4654
4655 * bld.adb, exp_util.adb, gprcmd.adb: Minor reformatting
4656
46572004-02-20 Ed Schonberg <schonberg@gnat.com>
4658
4659 * freeze.adb (Freeze_Record_Type): Generalize mechanism that generates
4660 itype references for the constrained designated type of a component
4661 whose base type is already frozen.
4662
46632004-02-20 Arnaud Charlet <charlet@act-europe.fr>
4664
4665 * init.c (__gnat_error_handler [tru64]): Rewrite previous change to
4666 avoid GCC warnings.
4667
46682004-02-20 Sergey Rybin <rybin@act-europe.fr>
4669
4670 * sem_ch12.adb (Analyze_Formal_Package): Create a new defining
4671 identifier for a phantom package that rewrites the formal package
4672 declaration with a box. The Add semantic decorations for the defining
4673 identifier from the original node (that represents the formal package).
4674
88e3a2a3
MK
46752004-02-19 Matt Kraai <kraai@alumni.cmu.edu>
4676
4677 * Make-lang.in (ada/stamp-sdefault): Use the top level
4678 move-if-change.
4679
4221057e
RH
46802004-02-19 Richard Henderson <rth@redhat.com>
4681
4682 * misc.c (record_code_position): Add third build arg for RTL_EXPR.
4683
5c1c8a03
AC
46842004-02-18 Emmanuel Briot <briot@act-europe.fr>
4685
4686 * ali.ads, ali.adb (First_Sdep_Entry): No longer a constant, so that
4687 Scan_ALI can be used for multiple ALI files without reinitializing
4688 between calls.
4689
46902004-02-18 Robert Dewar <dewar@gnat.com>
4691
4692 * debug.adb: Minor reformatting.
4693
46942004-02-18 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
4695
4696 * decl.c (gnat_to_gnu_entity, case object): Set DECL_POINTER_ALIAS_SET
4697 to zero if there is an address clause.
4698
46992004-02-18 Thomas Quinot <quinot@act-europe.fr>
4700
4701 * exp_util.adb (Side_Effect_Free): Any literal is side effects free.
4702
47032004-02-18 Gary Dismukes <dismukes@gnat.com>
4704
4705 * layout.adb (Layout_Component_List): Revise generation of call to
4706 discriminant-checking function to pass selections of all of the type's
4707 discriminants rather than just the variant-controlling discriminant.
4708
47092004-02-18 Olivier Hainque <hainque@act-europe.fr>
4710
4711 * 5gmastop.adb (Pop_Frame): Do not call exc_unwind, which is bound to
4712 fail in the current setup and triggers spurious system error messages.
4713 Pretend it occurred and failed instead.
4714
47152004-02-18 Vincent Celier <celier@gnat.com>
4716
4717 * bld.adb: Mark FLDFLAGS as saved
4718 (Process_Declarative_Items): Add Linker'Linker_Options to FLDFLAGS when
4719 it is not the root project. Put each directory to be
4720 extended between double quotes to prevent it to be expanded on Windows.
4721 (Recursive_Process): Reset CFLAGS/CXXFLAGS to nothing before processing
4722 the project file. Set them back to their initial values if they have not
4723 been set in the project file.
4724
4725 * gprcmd.adb: (Gprdebug, Debug): New global variables
4726 (Display_Command): New procedure
4727 (Usage): Document new command "linkopts"
4728 Call Display_Command when env var GPRDEBUG has the value "TRUE"
4729 Implement new command "linkopts"
4730 Remove quotes that may be around arguments for "extend"
4731 Always call Normalize_Pathname with arguments formatted for the platform
4732
4733 * Makefile.generic: Link C/C++ mains with $(FLDFLAGS)
4734 Change @echo to @$(display) in target clean to be able to clean silently
4735
4736 * Makefile.prolog: Save FLDFLAGS and give it an initial empty value
4737
4738 * prj-part.adb (Project_Path_Name_Of): Do not put final result in
4739 canonical case.
4740
4741 * prj-part.adb (Parse_Single_Project): Always call with From_Extended
4742 = Extending_All when current project is an extending all project.
4743
4744 * vms_conv.adb (Output_File_Expected): New Boolean global variable,
4745 set to True only for LINK command, after Unix switch -o.
4746 (Process_Arguments): Set Output_File_Expected to True for LINK command
4747 after Unix switch -o. When Output_File_Expected is True, never add an
4748 extension to a file name.
4749
4750 * 5vml-tgt.adb (Build_Dynamic_Library): Do not append "/OPTIONS" to the
4751 option file name, only to the --for-linker= switch.
4752 (Option_File_Name): If option file name do not end with ".opt", append
4753 "/OPTIONS".
4754
47552004-02-18 GNAT Script <nobody@gnat.com>
4756
4757 * Make-lang.in: Makefile automatically updated
4758
80bcb4d2
MK
47592004-02-17 Matt Kraai <kraai@alumni.cmu.edu>
4760
4761 * Make-lang.in (stamp-sdefault): Do not depend on
4762 move-if-change.
4763
1daa84b6
ZW
47642004-02-12 Zack Weinberg <zack@codesourcery.com>
4765
4766 * config-lang.in: Disable Ada by default until probe logic for
4767 a bootstrap Ada compiler can be moved to the top level configure
4768 script.
4769
18c0ecbe
AC
47702004-02-12 Olivier Hainque <hainque@act-europe.fr>
4771
4772 * decl.c (components_to_record): Don't claim that the internal fields
4773 we make to hold the variant parts are semantically addressable, because
4774 they are not.
4775
4776 * exp_pakd.adb (Create_Packed_Array_Type): Rename Esiz into PASize and
4777 adjust the comment describing the modular type form when we can use it.
4778 (Install_PAT): Account for the Esiz renaming.
4779
4780 * init.c (__gnat_error_handler for alpha-tru64): Arrange to clear the
4781 sc_onstack context indication before raising the exception to which
4782 the signal is mapped. Allows better handling of later signals possibly
4783 triggered by the resumed user code if the exception is handled.
4784
47852004-02-12 Arnaud Charlet <charlet@act-europe.fr>
4786
4787 * 5zinit.adb: Removed, no longer used.
4788
47892004-02-12 Robert Dewar <dewar@gnat.com>
4790
4791 * ali.adb: Remove separating space between parameters on R line. Makes
4792 format consistent with format used by the binder for Set_Globals call.
4793
4794 * atree.ads, atree.adb: Minor reformatting (new function header format)
4795
4796 * bindgen.adb: Add Run-Time Globals documentation section containing
4797 detailed documentation of the globals passed from the binder file to
4798 the run time.
4799
4800 * gnatls.adb: Minor reformatting
4801
4802 * init.c (__gnat_set_globals): Add note pointing to documentation in
4803 bindgen.
4804
4805 * lib-writ.ads, lib-writ.adb: Remove separating space between
4806 parameters on R line.
4807 Makes format consistent with format used by the binder for Set_Globals
4808 call.
4809
4810 * osint.ads: Add 2004 to copyright notice
4811 Minor reformatting
4812
4813 * snames.ads: Correct capitalization of FIFO_Within_Priorities
4814 Noticed during code reading, documentation issue only
4815
4816 * usage.adb: Remove junk line for obsolete C switch
4817 Noticed during code reading
4818
48192004-02-12 Vincent Celier <celier@gnat.com>
4820
4821 * bld.adb (Process_Declarative_Items): For Source_Dirs call gprcmd
4822 extend for each directory, so that multiple /** directories are
4823 extended individually.
4824 (Recursive_Process): Set the default for LANGUAGES to ada
4825
4826 * gprcmd.adb: Define new command "ignore", to do nothing.
4827 Implement new comment "path".
4828
4829 * Makefile.generic: Suppress output when SILENT is set
4830 Make sure that when compiler for C/C++ is gcc, the correct -x switch is
4831 used, so that the correct compiler is invoked.
4832 When compiler is gcc/g++, put search path in env vars C_INCLUDE_PATH/
4833 CXX_INCLUDE_PATH, to avoid failure with too long command lines.
4834
48352004-02-12 Jerome Guitton <guitton@act-europe.fr>
4836
4837 * Makefile.in: Clean ups and remove obsolete targets.
4838
48392004-02-12 Ed Schonberg <schonberg@gnat.com>
4840
4841 * exp_ch5.adb: Remove Possible_Unligned_Slice, in favor of the similar
4842 predicate declared in exp_util.
4843
4844 * exp_util.adb: Add comments.
4845
4846 * sem_ch10.adb (Analyze_Subunit): Remove ultimate parent unit from
4847 visibility before compiling context of the subunit.
4848
4849 * sem_res.adb (Check_Parameterless_Call): If the context expects a
4850 value but the name is a procedure, do not attempt to analyze as a call,
4851 in order to obtain more telling diagnostics.
4852
4853 * sem_util.adb (Wrong_Type): Further enhancement to diagnose missing
4854 'Access on parameterless function calls.
4855 (Normalize_Actuals): For a parameterless function call with missing
4856 actuals, defer diagnostic until resolution of enclosing call.
4857
4858 * sem_util.adb (Wrong_Type): If the context type is an access to
4859 subprogram and the expression is a procedure name, suggest a missing
4860 'attribute.
4861
c1dcfa14
AC
48622004-02-10 Arnaud Charlet <charlet@act-europe.fr>,
4863 Nathanael Nerode <neroden@gcc.gnu.org>
4864
4865 PR ada/6637, PR ada/5911
4866 Merge with libada-branch:
90afe2c9 4867 * config-lang.in: Build libada only when ada is built.
c1dcfa14 4868
2e071734
AC
48692004-02-09 Ed Schonberg <schonberg@gnat.com>
4870
4871 * exp_ch4.adb (Expand_N_Op_Eq): When looking for the primitive equality
4872 for a tagged type, verify that both formals have the same type.
4873
4874 * exp_ch6.adb (Add_Call_By_Copy_Code): Initialize properly the
4875 temporary when the formal is an in-parameter and the actual a possibly
4876 unaligned slice.
4877
4878 * exp_ch9.adb (Expand_Entry_Barrier): Resolve barrier expression even
4879 when expansion is disabled, to ensure proper name capture with
4880 overloaded literals. Condition can be of any boolean type, resolve
4881 accordingly.
4882
4883 * sem_ch8.adb (Analyze_Subprogram_Renaming): Emit warning if the
4884 renaming is for a formal subprogram with a default operator name, and
4885 there is a usable operator that is visible at the point of
4886 instantiation.
4887
48882004-02-09 Robert Dewar <dewar@gnat.com>
4889
4890 * ali.adb (Scan_Ali) Add Ignore_Errors argument. This is a major
4891 rewrite to ignore errors in ali files, intended to allow tools downward
4892 compatibility with new versions of ali files.
4893
4894 * ali.ads: Add new parameter Ignore_Errors
4895
4896 * bcheck.adb (Check_Consistent_Restrictions): Fix error of sometimes
4897 duplicating the error message giving the file with restrictions.
4898
4899 * debug.adb: Add debug flag I for gnatbind
4900
4901 * errout.adb (Set_Msg_Insertion_Node): Suppress extra quotes around
4902 operators for the case where the operator is a defining operator.
4903
4904 * exp_ch3.adb: Minor reformatting (new function spec format).
4905
4906 * exp_ch4.adb: Add comment for previous change, and make minor
4907 adjustment to loop to always check for improper loop termination.
4908 Minor reformatting throughout (new function spec format).
4909
4910 * gnatbind.adb: Implement -di debug flag for gnatbind
4911
4912 * gnatlink.adb: Call Scan_ALI with Ignore_Errors set to True
4913
4914 * gnatls.adb: Call Scan_ALI with Ignore_Errors set to True
4915
4916 * lib-load.adb: Fix bad assertion.
4917 Found by testing and code reading.
4918 Minor reformatting.
4919
4920 * lib-load.ads: Minor reformatting.
4921
4922 * lib-writ.adb: There is only one R line now.
4923
4924 * lib-writ.ads: Add documentation on making downward compatible changes
4925 to ali files so old tools work with new ali files.
4926 There is only one R line now.
4927 Add documentation on format incompatibilities (with special GPS note)
4928
4929 * namet.ads, namet.adb: (Is_Operator_Name): New procedure
4930
4931 * par-load.adb: Minor reformatting
4932
4933 * sem_ch8.adb: Fix to error message from last update
4934 Minor reformatting and restructuring of code from last update
4935
4936 * par-prag.adb, snames.adb, snames.ads, snames.h,
4937 sem_prag.adb: Implement pragma Profile.
4938
4939 * stylesw.adb: Implement -gnatyN switch to turn off all style check
4940 options.
4941
4942 * usage.adb: Add line for -gnatyN switch
4943
4944 * vms_data.ads: Add entry STYLE_CHECKS=NONE for -gnatyN
4945
a41ea816
AC
49462004-02-09 Albert Lee <lee@gnat.com>
4947
4948 * errno.c: define _SGI_MP_SOURCE for task-safe errno on IRIX
4949
49502004-02-09 Ed Schonberg <schonberg@gnat.com>
4951
4952 * exp_ch3.adb (Build_Slice_Assignment): Handle properly case of null
4953 slices.
4954
4955 * exp_ch6.adb (Expand_Call): Do not inline a call when the subprogram
4956 is nested in an instance that is not frozen yet, to avoid
4957 order-of-elaboration problems in gigi.
4958
4959 * sem_attr.adb (Analyze_Attribute, case 'Access): Within an inlined
4960 body the attribute is legal.
4961
49622004-02-09 Robert Dewar <dewar@gnat.com>
4963
4964 * s-rident.ads: Minor comment correction
4965
4966 * targparm.adb: Remove dependence on uintp completely. There was
4967 always a bug in Make in that it called Targparm before initializing
4968 the Uint package. The old code appeared to get away with this, but
4969 the new code did not! This caused an assertion error in gnatmake.
4970
4971 * targparm.ads: Fix bad comment, restriction pragmas with parameters
4972 are indeed fully supported.
4973
725c60f8
AM
49742004-02-06 Alan Modra <amodra@bigpond.net.au>
4975
4976 * misc.c (default_pass_by_ref): Update INIT_CUMULATIVE_ARGS call.
4977
136e64db
KH
49782004-02-05 Kazu Hirata <kazu@cs.umass.edu>
4979
4980 * ada/utils.c (create_param_decl): Replace PROMOTE_PROTOTYPES
4981 with targetm.calls.promote_prototypes.
4982
06effe87
AC
49832004-02-04 Robert Dewar <dewar@gnat.com>
4984
4985 * 5gtasinf.adb, 5gtasinf.ads, 5gtaprop.adb, ali.adb,
4986 ali.ads, gprcmd.adb: Minor reformatting
4987
4988 * bindgen.adb: Output restrictions string for new style restrictions
4989 handling
4990
4991 * impunit.adb: Add s-rident.ads (System.Rident) and
4992 s-restri (System.Restrictions)
4993
4994 * lib-writ.adb: Fix bug in writing restrictions string (last few
4995 entries wrong)
4996
4997 * s-restri.ads, s-restri.adb: Change name Restrictions to
4998 Run_Time_Restrictions to avoid conflict with package name.
4999 Add circuit to read and acquire run time restrictions.
5000
50012004-02-04 Jose Ruiz <ruiz@act-europe.fr>
5002
5003 * restrict.ads, restrict.adb: Use the new restriction
5004 No_Task_Attributes_Package instead of the old No_Task_Attributes.
5005
5006 * sem_prag.adb: No_Task_Attributes is a synonym of
5007 No_Task_Attributes_Package.
5008
5009 * snames.ads, snames.adb: New entry for proper handling of
5010 No_Task_Attributes.
5011
5012 * s-rident.ads: Adding restriction No_Task_Attributes_Package
5013 (AI-00249) that supersedes the GNAT specific restriction
5014 No_Task_Attributes.
5015
50162004-02-04 Ed Schonberg <schonberg@gnat.com>
5017
90afe2c9 5018 * sem_prag.adb:
06effe87
AC
5019 (Analyze_Pragma, case Warnings): In an inlined body, as in an instance
5020 body, an identifier may be wrapped in an unchecked conversion.
5021
50222004-02-04 Vincent Celier <celier@gnat.com>
5023
5024 * lib-writ.ads: Comment update for the W lines
5025
5026 * bld.adb: (Expression): An empty string list is static
5027
5028 * fname-uf.adb: Minor comment update
5029
5030 * fname-uf.ads: (Get_File_Name): Document new parameter May_Fail
5031
5032 * gnatbind.adb: Initialize Cumulative_Restrictions with the
5033 restrictions on the target.
5034
2fb00d7f
KH
50352004-02-03 Kazu Hirata <kazu@cs.umass.edu>
5036
5037 * ada/trans.c (gigi): Use gen_rtx_SYMBOL_REF instead of
5038 gen_rtx.
5039
5ed23e25
AC
50402004-02-02 Arnaud Charlet <charlet@gnat.com>
5041
5042 * Makefile.in: Remove setting of THREADSLIB on mips o32, unneeded.
5043
6e937c1c
AC
50442004-02-02 Vincent Celier <celier@gnat.com>
5045
5046 * gprcmd.adb (Check_Args): If condition is false, print the invoked
5047 comment before the usage.
5048 Gprcmd: Fail when command is not recognized.
5049 (Usage): Document command "prefix"
5050
5051 * g-md5.adb (Digest): Process last block.
5052 (Update): Do not process last block. Store remaining characters and
5053 length in Context.
5054
5055 * g-md5.ads (Update): Document that several call to update are
5056 equivalent to one call with the concatenated string.
5057 (Context): Add fields to allow new Update behaviour.
5058
5059 * fname-uf.ads/adb (Get_File_Name): New Boolean parameter May_Fail,
5060 defaulted to False.
5061 When May_Fail is True and no existing file can be found, return No_File.
5062
5063 * 6vcstrea.adb: Inlined functions are now wrappers to implementation
5064 functions.
5065
5066 * lib-writ.adb (Write_With_Lines): When body file does not exist, use
5067 spec file name instead on the W line.
5068
50692004-02-02 Robert Dewar <dewar@gnat.com>
5070
5071 * ali.adb: Read and acquire info from new format restrictions lines
5072
5073 * bcheck.adb: Add circuits for checking restrictions with parameters
5074
5075 * bindgen.adb: Output dummy restrictions data
5076 To be changed later
5077
5078 * ali.ads, checks.adb, exp_aggr.adb, exp_attr.adb, exp_ch11.adb,
5079 exp_ch3.adb, exp_ch5.adb, exp_ch6.adb, exp_ch7.adb, exp_util.adb,
5080 freeze.adb, gnat1drv.adb, sem_attr.adb, sem_ch10.adb, sem_ch11.adb,
5081 sem_ch12.adb, targparm.adb, targparm.ads, tbuild.adb, sem_ch2.adb,
5082 sem_elab.adb, sem_res.adb: Minor changes for new restrictions handling.
5083
5084 * exp_ch9.adb (Build_Master_Entity): Cleanup the code (also suppresses
5085 the warning message on access to possibly uninitialized variable S)
5086 Minor changes for new restrictions handling.
5087
5088 * gnatbind.adb: Minor reformatting
5089 Minor changes for new restrictions handling
5090 Move circuit for -r processing here from bcheck (cleaner)
5091
5092 * gnatcmd.adb, gnatlink.adb: Minor reformatting
5093
5094 * lib-writ.adb: Output new format restrictions lines
5095
5096 * lib-writ.ads: Document new R format lines for new restrictions
5097 handling.
5098
5099 * s-restri.ads/adb: New files
5100
5101 * Makefile.rtl: Add entry for s-restri.ads/adb
5102
5103 * par-ch3.adb: Fix bad error messages starting with upper case letter
5104 Minor reformatting
5105
5106 * restrict.adb: Major rewrite throughout for new restrictions handling
5107 Major point is to handle restrictions with parameters
5108
5109 * restrict.ads: Major changes in interface to handle restrictions with
5110 parameters. Also generally simplifies setting of restrictions.
5111
5112 * snames.ads/adb: New entry for proper handling of No_Requeue
5113
5114 * sem_ch3.adb (Count_Tasks): New circuitry for implementing Max_Tasks
5115 restriction counting.
5116 Other minor changes for new restrictions handling
5117
5118 * sem_prag.adb: No_Requeue is a synonym for No_Requeue_Statements.
5119 Restriction_Warnings now allows full parameter notation
5120 Major rewrite of Restrictions for new restrictions handling
5121
51222004-02-02 Javier Miranda <miranda@gnat.com>
5123
5124 * par-ch3.adb (P_Identifier_Declarations): Give support to the Ada 0Y
5125 syntax rule for object renaming declarations.
5126 (P_Array_Type_Definition): Give support for the Ada 0Y syntax rule for
5127 component definitions.
5128
5129 * sem_ch3.adb (Analyze_Component_Declaration): Give support to access
5130 components.
5131 (Array_Type_Declaration): Give support to access components. In addition
5132 it was also modified to reflect the name of the object in anonymous
5133 array types. The old code did not take into account that it is possible
5134 to have an unconstrained anonymous array with an initial value.
5135 (Check_Or_Process_Discriminants): Allow access discriminant in
5136 non-limited types.
5137 (Process_Discriminants): Allow access discriminant in non-limited types
5138 Initialize the new Access_Definition field in N_Object_Renaming_Decl
5139 node. Change Ada0Y to Ada 0Y in comments
5140
5141 * sem_ch4.adb (Find_Equality_Types): Allow anonymous access types in
5142 equality operators.
5143 Change Ada0Y to Ada 0Y in comments
5144
5145 * sem_ch8.adb (Analyze_Object_Renaming): Give support to access
5146 renamings Change Ada0Y to Ada 0Y in comments
5147
5148 * sem_type.adb (Find_Unique_Type): Give support to the equality
5149 operators for universal access types
5150 Change Ada0Y to Ada 0Y in comments
5151
5152 * sinfo.adb (Access_Definition, Set_Access_Definition): New subprograms
5153
5154 * sinfo.ads (N_Component_Definition): Addition of Access_Definition
5155 field.
5156 (N_Object_Renaming_Declaration): Addition of Access_Definition field
5157 Change Ada0Y to Ada 0Y in comments
5158
5159 * sprint.adb (Sprint_Node_Actual): Give support to the new syntax for
5160 component definition and object renaming nodes
5161 Change Ada0Y to Ada 0Y in comments
5162
51632004-02-02 Jose Ruiz <ruiz@act-europe.fr>
5164
5165 * restrict.adb: Use the new restriction identifier
5166 No_Requeue_Statements instead of the old No_Requeue for defining the
5167 restricted profile.
5168
5169 * sem_ch9.adb (Analyze_Requeue): Check the new restriction
5170 No_Requeue_Statements.
5171
5172 * s-rident.ads: Adding restriction No_Requeue_Statements (AI-00249)
5173 that supersedes the GNAT specific restriction No_Requeue. The later is
5174 kept for backward compatibility.
5175
51762004-02-02 Ed Schonberg <schonberg@gnat.com>
5177
5178 * lib.ads, i-cobol.ads, * s-stoele.ads, s-thread.ads, style.ads,
5179 5staprop.adb, atree.adb, atree.ads, g-crc32.ads: Remove redundant
5180 pragma and fix incorrect ones.
5181
5182 * sem_prag.adb For pragma Inline and pragma Pure_Function, emit a
5183 warning if the pragma is redundant.
5184
51852004-02-02 Thomas Quinot <quinot@act-europe.fr>
5186
5187 * 5staprop.adb: Add missing 'constant' keywords.
5188
5189 * Makefile.in: use consistent value for SYMLIB on
5190 platforms where libaddr2line is supported.
5191
51922004-02-02 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
5193
5194 * utils.c (end_subprog_body): Do not call rest_of_compilation if just
5195 annotating types.
5196
51972004-02-02 Olivier Hainque <hainque@act-europe.fr>
5198
5199 * init.c (__gnat_install_handler): Setup an alternate stack for signal
5200 handlers in the environment thread. This allows proper propagation of
5201 an exception on stack overflows in this thread even when the builtin
5202 ABI stack-checking scheme is used without support for a stack reserve
5203 region.
5204
5205 * utils.c (create_field_decl): Augment the head comment about bitfield
5206 creation, and don't account for DECL_BIT_FIELD in DECL_NONADDRESSABLE_P
5207 here, because the former is not accurate enough at this point.
5208 Let finish_record_type decide instead.
5209 Don't make a bitfield if the field is to be addressable.
5210 Always set a size for the field if the record is packed, to ensure the
5211 checks for bitfield creation are triggered.
5212 (finish_record_type): During last pass over the fields, clear
5213 DECL_BIT_FIELD when possible in the !STRICT_ALIGNMENT case, as this is
5214 not covered by the calls to layout_decl. Adjust DECL_NONADDRESSABLE_P
5215 from DECL_BIT_FIELD.
5216
71cbe2c1
KC
52172004-01-30 Kelley Cook <kcook@gcc.gnu.org>
5218
90afe2c9 5219 * Make-lang.in (doc/gnat_ug_unx.dvi): Use $(abs_docdir).
71cbe2c1
KC
5220 (doc/gnat_ug_vms.dvi, doc/gnat_ug_unx.dvi): Likewise.
5221 (doc/gnat_ug_unx.dvi, doc/gnat-style.dvi): Likewise.
5222
7f996f90
RO
52232004-01-26 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
5224
5225 * Makefile.in (mips-sgi-irix5): Remove -lathread from THREADSLIB.
5226
5227 * 5fsystem.ads (Functions_Return_By_DSP): Set to False.
5228 (ZCX_By_Default): Likewise.
5229 (Front_End_ZCX_Support): Likewise.
5230
5231 * 5gtaprop.adb (Stack_Guard): Mark T, On unreferenced.
5232 (Initialize_Lock): Mark Level unreferenced.
5233 (Sleep): Mark Reason unreferenced.
5234 (Timed_Sleep): Likewise.
5235 (Wakeup): Likewise.
5236 (Exit_Task): Use Result.
5237 (Check_No_Locks): Mark Self_ID unreferenced.
90afe2c9 5238
7f996f90
RO
5239 * 5gtasinf.adb (New_Sproc): Make Attr constant.
5240 (Bound_Thread_Attributes): Make Sproc constant.
5241 (New_Bound_Thread_Attributes): Likewise.
5242
26fd4eae
AC
52432004-01-26 Ed Schonberg <schonberg@gnat.com>
5244
5245 * exp_ch3.adb (Build_Slice_Assignment): New TSS procedure for
5246 one-dimensional array an slice assignments, when component type is
5247 controlled.
5248
5249 * exp_ch5.adb (Expand_Assign_Array): If array is one-dimensional,
5250 component type is controlled, and control_actions are in effect, use
5251 TSS procedure rather than generating inline code.
5252
5253 * exp_tss.ads (TSS_Slice_Assign): New TSS procedure for one-dimensional
5254 arrays with controlled components.
5255
52562004-01-26 Vincent Celier <celier@gnat.com>
5257
5258 * gnatcmd.adb (GNATCmd): Add specification of argument file on the
5259 command line for the non VMS case.
5260
5261 * gnatlink.adb (Process_Binder_File): When building object file, if
5262 GNU linker is used, put all object paths between quotes, to prevent ld
5263 error when there are unusual characters (such as '!') in the paths.
5264
5265 * Makefile.generic: When there are sources in Ada and the main is in
5266 C/C++, invoke gnatmake with -B, instead of -z.
5267
5268 * vms_conv.adb (Preprocess_Command_Data): New procedure, extracted
5269 from VMS_Conversion.
5270 (Process_Argument): New procedure, extracted from VMS_Conversion. Add
5271 specification of argument file on the command line.
5272
52732004-01-26 Bernard Banner <banner@gnat.com>
5274
5275 * Makefile.in: Enable GMEM_LIB and SYMLIB for x86_64
5276
52772004-01-26 Ed Schonberg <schonberg@gnat.com>
5278
5279 * snames.adb: Update copyright notice.
5280 Add info on slice assignment for controlled arrays.
5281
b7e429ab
AC
52822004-01-23 Robert Dewar <dewar@gnat.com>
5283
5284 * exp_aggr.adb: Minor reformatting
5285
5286 * exp_ch9.adb: Minor code clean up
5287 Minor reformatting
5288 Fix bad character in comment
5289
5290 PR ada/13471
5291 * targparm.adb (Get_Target_Parameters): Give clean abort error on
5292 unexpected end of file, along with more detailed message.
5293
52942004-01-23 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
5295
5296 * exp_pakd.adb (Install_PAT): Clear Freeze_Node for PAT and Etype of
5297 PAT.
5298
5299 * decl.c (copy_alias_set): New function.
5300 (gnat_to_gnu_entity, make_aligning_type, make_packable_type): Use it.
5301
53022004-01-23 Doug Rupp <rupp@gnat.com>
5303
5304 * Makefile.in (install-gnatlib): Change occurrences of lib$$file to
5305 lib$${file} in case subsequent character is not a separator.
5306
53072004-01-23 Vincent Celier <celier@gnat.com>
5308
5309 * 5vml-tgt.adb (Build_Dynamic_Library): Invoke gcc with -shared-libgcc
5310 when the GCC version is at least 3.
5311
5312 * make.adb: (Scan_Make_Arg): Pass -B to Scan_Make_Switches
5313 Remove all "Opt.", to prepare for opt split
5314
5315 * prj-part.adb (Parse_Single_Project): New Boolean out parameter
5316 Extends_All. Set to True when the project parsed is an extending all
5317 project. Fails for importing an extending all project only when the
5318 imported project is an extending all project.
5319 (Post_Parse_Context_Clause): Set Is_Extending_All to the with clause,
5320 depending on the value of Extends_All returned.
5321
5322 * prj-proc.adb (Process): Check that no project shares its object
5323 directory with a project that extends it, directly or indirectly,
5324 including a virtual project.
5325 Check that no project extended by another project shares its object
5326 directory with another also extended project.
5327
5328 * prj-tree.adb (Is_Extending_All, Set_Is_Extending_All): Allow for
5329 Kind = N_With_Clause
5330
5331 * prj-tree.ads: Minor reformatting
5332 Indicate that Flag2 also applies to N_With_Clause (Is_Extending_All).
5333
53342004-01-23 Ed Schonberg <schonberg@gnat.com>
5335
5336 * sem_ch13.adb (Analyze_Attribute_Definition_Clause): If the attribute
5337 applies to a type with an incomplete view, use full view in Name of
5338 clause, for consistency with uses of Get_Attribute_Definition_Clause.
5339
53402004-01-23 Arnaud Charlet <charlet@act-europe.fr>
5341
5342 * 5itaprop.adb (Set_Priority): Reset the priority to 0 when using
5343 SCHED_RR, since other values are not supported by this policy.
5344 (Initialize): Move initialization of mutex attribute to package
5345 elaboration, to prevent early access to this variable.
5346
5347 * Makefile.in: Remove mention of Makefile.adalib, unused.
5348
b291953f
AC
5349 * Makefile.adalib, 1aexcept.adb, 1aexcept.ads, 1ic.ads, 1ssecsta.adb,
5350 1ssecsta.ads: Removed, unused.
b7e429ab 5351
adc04486
AC
53522004-01-21 Javier Miranda <miranda@gnat.com>
5353
5354 * exp_aggr.adb (Build_Record_Aggr_Code): Do not build the master
5355 entity if already built in the current scope.
5356
5357 * exp_ch9.adb (Build_Master_Entity): Do not set the has_master_entity
5358 reminder in internal scopes. Required for nested limited aggregates.
5359
53602004-01-21 Doug Rupp <rupp@gnat.com>
5361
5362 * Makefile.in (hyphen): New variable, default value '-'. Set to '_' on
5363 VMS. Replace all occurences of libgnat- and libgnarl- with
5364 libgnat$(hyphen) and libgnarl$(hyphen).
5365 Fixed shared library build problem on VMS.
5366
53672004-01-21 Robert Dewar <dewar@gnat.com>
5368
5369 * mlib-prj.adb: Minor reformatting
5370
53712004-01-21 Thomas Quinot <quinot@act-europe.fr>
5372
5373 * prj-tree.adb, 7staprop.adb, vms_conv.adb, xr_tabls.adb: Add missing
5374 'constant' keywords for declaration of pointers that are not modified.
5375
5376 * exp_pakd.adb: Fix English in comment.
5377
53782004-01-21 Ed Schonberg <schonberg@gnat.com>
5379
5380 PR ada/10889
5381 * sem_ch3.adb (Analyze_Subtype_Declaration): For an array subtype,
5382 copy all attributes of the parent, including the foreign language
5383 convention.
5384
53852004-01-21 Sergey Rybin <rybin@act-europe.fr>
5386
5387 PR ada/10565
5388 * sem_ch9.adb (Analyze_Delay_Alternative): Add expression type check
5389 for 'delay until' statement.
5390
a541f69d
KC
53912004-01-20 Kelley Cook <kcook@gcc.gnu.org>
5392
5393 * Make-lang.in: Replace $(docdir) with doc.
5394 (doc/gnat_ug_unx.info, doc/gnat_ug_vwx.info, doc/gnat_ug_vms.info
5395 doc/gnat_ug_wnt.info, doc/gnat_rm.info, doc/gnat-style.info): Update
5396 to use consistent MAKEINFO rule.
5397 (ada.man, ada.srcman): Dummy entry.
5398 (ADA_INFOFILES): Define.
5399 (ada.info, ada.srcinfo): New rules.
5400
c01a9391
AC
54012004-01-19 Arnaud Charlet <charlet@act-europe.fr>
5402
5403 * utils.c: Update copyright notice, missed in previous change.
5404
54052004-01-19 Vincent Celier <celier@gnat.com>
5406
5407 * mlib-prj.adb (Build_Library.Add_ALI_For): Only add the ALI to the
5408 args if Bind is True. Set First_ALI, if not already done.
5409 (Build_Library): For Stand Alone Libraries, extract from one ALI file
5410 an eventual --RTS switch, for gnatbind, and all backend switches +
5411 --RTS, for linking.
5412
54132004-01-19 Robert Dewar <dewar@gnat.com>
5414
5415 * sem_attr.adb, memtrack.adb: Minor reformatting
5416
54172004-01-19 Ed Schonberg <schonberg@gnat.com>
5418
5419 * exp_ch6.adb (Expand_Call): Remove code to fold calls to functions
5420 that rename enumeration literals. This is properly done in sem_eval.
5421
5422 * sem_eval.ads, sem_eval.adb (Eval_Call): New procedure to fold calls
5423 to functions that rename enumeration literals.
5424
5425 * sem_res.adb (Resolve_Call): Use Eval_Call to fold static calls to
5426 functions that rename enumeration literals.
5427
510d1e80
KH
54282004-01-16 Kazu Hirata <kazu@cs.umass.edu>
5429
5430 * Make-lang.in (utils.o): Depend on target.h.
5431 * utils.c: Include target.h.
5432 (process_attributes): Use targetm.have_named_sections instead
5433 of ASM_OUTPUT_SECTION_NAME.
5434
fbf3e0dd
AJ
54352004-01-16 Andreas Jaeger <aj@suse.de>
5436
5437 * Makefile.in: Add $(DESTDIR).
5438
acd47d2a
AC
54392004-01-15 Olivier Hainque <hainque@act-europe.fr>
5440
5441 * decl.c (gnat_to_gnu_entity, E_Variable): Retrieve the object size
5442 also when not defining if a Size clause applies. That information is
5443 not to be ignored.
5444
54452004-01-15 Arnaud Charlet <charlet@act-europe.fr>
5446
5447 * Makefile.in (install-gnatlib, gnatlib-shared-default): Set up
5448 symbolic links for the shared gnat run time when needed.
5449
54502004-01-15 Vasiliy Fofanov <fofanov@act-europe.fr>
5451
5452 * memtrack.adb (Gmem_Initialize): check that gmem.out could be opened
5453 for writing, and terminate with an error message if not.
5454
54552004-01-15 Ed Schonberg <schonberg@gnat.com>
5456
5457 * sem_attr.adb (Resolve_Attribute, case 'Access): Remove spurious
5458 warning on an access to subprogram in an instance, when the target
5459 type is declared in the same generic unit.
5460 (Eval_Attribute): If 'access is known to fail accessibility check,
5461 rewrite as a raise statement.
5462
54632004-01-15 GNAT Script <nobody@gnat.com>
5464
5465 * Make-lang.in: Makefile automatically updated
5466
03787dfd
KC
54672004-01-15 Kelley Cook <kcook@gcc.gnu.org>
5468
5469 * Make-lang.in (ada.srcextra): Dummy entry.
5470
73e232f0
KC
54712004-01-14 Kelley Cook <kcook@gcc.gnu.org>
5472
5473 * Make-lang.in: Only regenerate texi files if --enable-maintainer-mode.
5474
9bc43c53
AC
54752004-01-13 Ed Schonberg <schonberg@gnat.com>
5476
5477 * exp_ch3.adb (Build_Assignment): Fix bug in handling of controlled
5478 components that are initialized with aggregates.
5479
54802004-01-13 Vincent Celier <celier@gnat.com>
5481
5482 * gnatlink.adb (Process_Binder_File): To find directory of shared
5483 libgcc, if "gcc-lib" is not a subdirectory, look for the last
5484 subdirectory "lib" in the path of the shared libgnat or libgnarl.
5485
5486 * make.adb (Gnatmake): If GCC version is at least 3, link with
5487 -shared-libgcc, when there is at least one shared library project.
5488
5489 * opt.ads (GCC_Version): New integer constant.
5490
5491 * adaint.c (get_gcc_version): New function.
5492
54932004-01-13 Robert Dewar <dewar@gnat.com>
5494
5495 * sem_dist.adb, sem_res.adb, sem_util.adb,
5496 sprint.adb, 3zsocthi.adb, einfo.adb, cstand.adb,
5497 exp_ch4.adb, exp_ch9.adb, exp_dist.adb: Minor reformatting
5498
54992004-01-13 Thomas Quinot <quinot@act-europe.fr>
5500
5501 * s-interr.adb, s-stache.adb, s-taenca.adb, g-regpat.adb,
5502 g-spitbo.adb, 5itaprop.adb: Add missing 'constant' keywords in object
5503 declarations.
5504
8b52de7b
AC
55052004-01-12 Arnaud Charlet <charlet@act-europe.fr>
5506
f6ea0188
AC
5507 * misc.c: Remove trailing spaces.
5508 Update copyright notice missed in previous change.
5509
8b52de7b
AC
5510 PR ada/13572
5511 * bld.adb (Recursive_Process): Reference prefix/share/gnat instead of
5512 prefix/share/make
5513
5514 * Makefile.generic: Update copyright.
5515 Add license notice.
5516
5517 * Makefile.in (ADA_SHARE_MAKE_DIR): Set to prefix/share/gnat instead
5518 of prefix/share/make.
5519
5520 * Makefile.prolog: Update copyright.
5521 Add license notice.
5522
55232004-01-12 Laurent Pautet <pautet@act-europe.fr>
5524
5525 * 3vsocthi.adb, 3vsocthi.ads, 3wsocthi.adb,
5526 3wsocthi.ads, 3zsocthi.adb, 3zsocthi.ads, g-socthi.adb,
5527 g-socthi.ads (Socket_Error_Message): Return C.Strings.chars_ptr
5528 instead of String.
5529
5530 * g-socket.adb (Raise_Socket_Error): Use new Socket_Error_Message
5531 signature.
5532
55332004-01-12 Javier Miranda <miranda@gnat.com>
5534
5535 * cstand.adb, exp_aggr.adb, exp_ch3.adb, exp_ch9.adb, exp_dist.adb,
5536 exp_imgv.adb, exp_pakd.adb, exp_util.adb, par-ch3.adb, sem.adb,
5537 sem_ch12.adb, sem_ch3.adb, sem_dist.adb, sem_prag.adb, sem_res.adb,
5538 sem_util.adb, sinfo.adb, sinfo.ads, sprint.adb: Addition of
5539 Component_Definition node.
5540
55412004-01-12 Ed Falis <falis@gnat.com>
5542
5543 * impunit.adb: Add GNAT.Secondary_Stack_Info as user-visible unit
5544
55452004-01-12 Thomas Quinot <quinot@act-europe.fr>
5546
5547 * link.c: Change default libgnat kind to STATIC for FreeBSD.
5548
55492004-01-12 Bernard Banner <banner@gnat.com>
5550
5551 * Makefile.in: map 86numaux to a-numaux for x86_64
5552
55532004-01-12 Ed Schonberg <schonberg@gnat.com>
5554
5555 * lib-xref.adb (Get_Type_Reference): If the type is the subtype entity
5556 generated to rename a generic actual, go to the actual itself, the
5557 subtype is not a user-visible entity.
5558
5559 * sem_ch7.adb (Uninstall_Declarations): If an entity in the visible
5560 part is a private subtype, reset the visibility of its full view, if
5561 any, to be consistent.
5562
5563 PR ada/13417
5564 * sem_ch12.adb (Analyze_Formal_Package): Diagnose properly an attempt
5565 to use a generic package G as a formal package for another generic
5566 declared within G.
5567
55682004-01-12 Robert Dewar <dewar@gnat.com>
5569
5570 * trans.c (Eliminate_Error_Msg): New procedure called to generate msg
5571
5572 * usage.adb: Remove mention of obsolete -gnatwb switch
5573 Noticed during code reading
5574
55752004-01-12 Jerome Guitton <guitton@act-europe.fr>
5576
5577 * 1ssecsta.adb: Minor changes for -gnatwa warnings
5578
55792004-01-12 GNAT Script <nobody@gnat.com>
5580
5581 * Make-lang.in: Makefile automatically updated
5582
0fab64a3
MM
55832004-01-09 Mark Mitchell <mark@codesourcery.com>
5584
5585 * misc.c (gnat_expand_expr): Add alt_rtl parameter.
5586
47527624
RO
55872004-01-07 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
5588
5589 * link.c [sgi] (shared_libgnat_default): Change to STATIC.
5590
dedebde1
KC
55912004-01-05 Kelley Cook <kcook@gcc.gnu.org>
5592
fbf3e0dd 5593 * Make-lang.in: Revert stamp-xgnatug change from 2003-12-18.
dedebde1
KC
5594 Update comment and copyright date.
5595 * stamp-xgnatug: Delete.
5596
91b1417d
AC
55972004-01-05 Robert Dewar <dewar@gnat.com>
5598
5599 * 1ssecsta.ads: Default_Secondary_Stack is not a constant since it may
5600 be modified by the binder generated main program if the -D switch is
5601 used.
5602
5603 * 4onumaux.ads, 4znumaux.ads: Add Pure_Function pragmas for all
5604 imported functions (since now we expect this to be done for imported
5605 functions)
5606
5607 * 5vtaprop.adb: Add several ??? for sections requiring more comments
5608 Minor reformatting throughout
5609
5610 * 5zinit.adb: Minor reformatting
5611 Add 2004 to copyright date
5612 Minor changes to avoid -gnatwa warnings
5613 Correct some instances of using OR instead of OR ELSE (noted while
5614 doing reformatting)
5615
5616 * sprint.adb: Minor updates to avoid -gnatwa warnings
5617
fbf3e0dd 5618 * s-secsta.ads, s-secsta.adb:
91b1417d
AC
5619 (SS_Get_Max): New function to obtain high water mark for ss stack
5620 Default_Secondary_Stack is not a constant since it may be modified by
5621 the binder generated main program if the -D switch is used.
5622
5623 * switch-b.adb: New -Dnnn switch for binder
5624
fbf3e0dd 5625 * switch-c.adb:
91b1417d
AC
5626 Make -gnatg imply all warnings currently in -gnatwa
5627
5628 * vms_conv.adb: Minor reformatting
5629 Add 2004 to copyright notice
5630 Add 2004 to printed copyright notice
5631
5632 * 3vexpect.adb, 4zsytaco.adb, 3wsocthi.adb, 3zsocthi.adb,
5633 3zsocthi.adb, 56taprop.adb, 56tpopsp.adb, 5amastop.adb,
5634 5aml-tgt.adb, 5ataprop.adb, 5ataprop.adb, 5atpopsp.adb,
5635 5ftaprop.adb, 5ginterr.adb, 5gmastop.adb, 5gml-tgt.adb,
5636 5gtaprop.adb, 5hml-tgt.adb, 5hml-tgt.adb, 5hml-tgt.adb,
5637 5htaprop.adb, 5htraceb.adb, 5itaprop.adb, 5lml-tgt.adb,
5638 5sml-tgt.adb, 5staprop.adb, 5staprop.adb, 5stpopsp.adb,
5639 5vasthan.adb, 5vinmaop.adb, 5vinterr.adb, 5vtaprop.adb,
5640 5vml-tgt.adb, 5vtaprop.adb, 5wosprim.adb, 5wtaprop.adb,
5641 5zinterr.adb, 5zintman.adb, 5zml-tgt.adb, 5ztaprop.adb,
5642 6vcpp.adb, 6vcstrea.adb, 7staprop.adb, 7stpopsp.adb,
5643 vxaddr2line.adb, vxaddr2line.adb, xref_lib.adb, xr_tabls.adb,
5644 xr_tabls.ads, s-tasdeb.adb, s-tasdeb.adb, sem_res.ads,
5645 sem_util.adb, sem_util.adb, sem_util.ads, s-interr.adb,
5646 checks.adb, clean.adb, cstand.adb, einfo.ads,
5647 einfo.adb, exp_aggr.adb, exp_ch11.adb, exp_ch3.adb,
5648 exp_ch4.adb, exp_ch5.adb, exp_ch7.adb, exp_ch9.adb,
5649 prj-nmsc.adb, prj-pp.adb, prj-util.adb, sem_attr.adb,
5650 sem_ch10.adb, sem_ch12.adb, sem_ch4.adb, g-dirope.adb,
5651 g-dirope.ads, gnatlbr.adb, i-cstrea.adb, inline.adb,
5652 lib-xref.adb, sem_ch5.adb, sem_ch7.adb, sem_ch8.adb:
5653 Minor reformatting and code clean ups.
5654 Minor changes to prevent -gnatwa warnings
5655
5656 * ali.adb: Minor reformatting and cleanup of code
5657 Acquire new SS indication of secondary stack use from ali files
5658
5659 * a-numaux.ads: Add Pure_Function pragmas for all imported functions
5660 (since now we expect this to be done for imported functions)
5661
5662 * bindgen.adb: Generate call to modify default secondary stack size if
5663 -Dnnn switch given
5664
5665 * bindusg.adb: Add line for new -D switch
5666
5667 * exp_aggr.adb (Type_May_Have_Bit_Aligned_Components): More appropriate
5668 replacement name for Type_May_Have_Non_Bit_Aligned_Components!
5669 Add circuitry for both records and arrays to avoid gigi
5670 processing if the type involved has non-bit-aligned components
5671
5672 * exp_ch5.adb (Expand_Assign_Array): Avoid assumption that
5673 N_String_Literal node always references an E_String_Literal_Subtype
5674 entity. This may not be true in the future.
5675 (Possible_Bit_Aligned_Component): Move processing of
5676 Component_May_Be_Bit_Aligned from exp_ch5 to exp_util
5677
5678 * exp_ch6.adb (Expand_Thread_Body): Pick up
5679 Default_Secondary_Stack_Size as variable so that we get value modified
5680 by possible -Dnnn binder parameter.
5681
5682 * exp_util.adb (Component_May_Be_Bit_Aligned): New function.
5683 (Type_May_Have_Bit_Aligned_Components): New function.
5684
5685 * exp_util.ads (Component_May_Be_Bit_Aligned): New function.
5686 (Type_May_Have_Bit_Aligned_Components): New function.
5687
5688 * fe.h: (Set_Identifier_Casing): Fix prototype.
5689 Add declaration for Sem_Elim.Eliminate_Error_Msg.
5690 Minor reformatting.
5691
5692 * freeze.adb (Freeze_Entity): Add RM reference to error message about
5693 importing constant atomic/volatile objects.
5694 (Freeze_Subprogram): Reset Is_Pure indication for imported subprogram
5695 unless explicit Pure_Function pragma given, to avoid insidious bug of
5696 call to non-pure imported function getting eliminated.
5697
5698 * gnat1drv.adb, gnatbind.adb, gnatchop.adb, gnatfind.adb,
5699 gnatls.adb, gnatlink.adb, gnatmem.adb, gnatname.adb, gnatsym.adb,
5700 gnatxref.adb, gprcmd.adb, gprep.adb, make.adb: Minor reformatting
5701 Add 2004 to printed copyright notice
5702
5703 * lib-writ.ads, lib-writ.adb: Put new SS flag in ali file if secondary
5704 stack used.
5705
5706 * Makefile.rtl: Add entry for g-sestin.o
5707 g-sestin.ads: New file.
5708
5709 * mdll.adb: Minor changes to avoid -gnatwa warnings
5710
5711 * mlib-tgt.adb: Minor reformatting
5712
5713 * opt.ads: New parameter Default_Secondary_Stack_Size (GNATBIND)
5714 New switch Sec_Stack_Used (GNAT, GNATBIND)
5715 Make Default_Secondary_Stack_Size a variable instead of a constant,
5716 so that it can be modified by the new -Dnnn bind switch.
5717
5718 * rtsfind.adb (Load_Fail): Give full error message in configurable
5719 run-time mode if all_errors mode is set. This was not done in the case
5720 of a file not found, which was an oversight.
5721 Note if secondary stack unit is used by compiler.
5722
5723 * sem_elab.adb (Check_A_Call): Rewrite to avoid trying to put
5724 ineffective elaborate all pragmas on non-visible packages (this
5725 happened when a renamed subprogram was called). Now the elaborate all
5726 always goes on the package containing the renaming rather than the one
5727 containing the renamed subprogram.
5728
5729 * sem_elim.ads, sem_elim.adb (Eliminate_Error_Msg): New procedure
5730 (Process_Eliminate_Pragma): Add parameter to capture pragma location.
5731
5732 * sem_eval.adb (Eval_String_Literal): Do not assume that string literal
5733 has an Etype that references an E_String_Literal.
5734 (Eval_String_Literal): Avoid assumption that N_String_Literal node
5735 always references an E_String_Literal_Subtype entity. This may not
5736 be true in the future.
5737
5738 * sem_prag.adb (Process_Eliminate_Pragma): Add parameter to capture
5739 pragma location.
5740
5741 * sem_res.adb (Resolve): Specialize msg for function name used in proc
5742 call.
5743
57442004-01-05 Ed Falis <falis@gnat.com>
5745
5746 * g-debuti.adb: Replaced direct boolean operator with short-circuit
5747 form.
5748
57492004-01-05 Vincent Celier <celier@gnat.com>
5750
5751 * bld.adb: Minor comment updates
5752 (Process_Declarative_Items): Correct incorrect name (Index_Name instead
5753 of Item_Name).
5754
5755 * make.adb (Gnatmake): Special process for files to compile/check when
5756 -B is specified. Fail when there are only foreign mains in attribute
5757 Main of the project file and -B is not specified. Do not skip bind/link
5758 steps when -B is specified.
5759
5760 * makeusg.adb: Document new switch -B
5761
5762 * opt.ads (Build_Bind_And_Link_Full_Project): New Boolean flag
5763
5764 * switch-m.adb: (Scan_Make_Switches): Process -B switch
5765
5766 * vms_data.ads: Add new GNAT PRETTY qualifier
5767 /FORM_FEED_AFTER_PRAGMA_PAGE for switch -ff
5768
57692004-01-05 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
5770
5771 * trans.c (tree_transform, case N_Free_Statement): Handle thin pointer
5772 case.
5773
5774 * misc.c (gnat_printable_name): If VERBOSITY is 2, call
5775 Set_Identifier_Casing.
5776
5777 * decl.c (gnat_to_gnu_entity, E_Function): Give error if return type
5778 has size that overflows.
5779
57802004-01-05 Gary Dismukes <dismukes@gnat.com>
5781
5782 * exp_ch4.adb (Expand_Array_Comparison): Add Boolean constant to avoid
5783 -gnatwa warning on static condition.
5784
57852004-01-05 Doug Rupp <rupp@gnat.com>
5786
5787 * link.c: (shared_libgnat_default) [VMS]: Change to STATIC.
5788
57892004-01-05 Arnaud Charlet <charlet@act-europe.fr>
5790
5791 * Makefile.in: Install ali files using INSTALL_DATA_DATE to preserve
5792 all attributes, including read-only attribute.
5793
57942004-01-05 Pascal Obry <obry@gnat.com>
5795
5796 * bindgen.adb (Gen_Object_Files_Options): Generate the new shared
5797 library naming scheme.
5798
5799 * mlib-prj.adb (Build_Library): Generate different names for the static
5800 or dynamic version of the GNAT runtime. This is needed to support the
5801 new shared library naming scheme.
5802 (Process_Binder_File): Add detection of shared library in binder file
5803 based on the new naming scheme.
5804
5805 * gnatlink.adb (Process_Binder_File): Properly detect the new naming
5806 scheme for the shared runtime libraries.
5807
5808 * Makefile.in:
5809 (LIBRARY_VERSION) [VMS]: Convert all . to _ to conform to new naming
5810 scheme.
5811 (install-gnatlib): Do not create symlinks for shared libraries.
5812 (gnatlib-shared-default): Idem.
5813 (gnatlib-shared-dual-win32): New target. Not used for now as the
5814 auto-import feature does not support arrays/records.
5815 (gnatlib-shared-win32): Do not create copy for the shared libraries.
5816 (gnatlib-shared-vms): Fix shared runtime libraries names.
5817
5818 * osint.ads, osint.adb (Shared_Lib): New routine, returns the target
5819 dependent runtime shared library name.
5820
58212004-01-05 Vasiliy Fofanov <fofanov@act-europe.fr>
5822
5823 * osint.adb (Read_Library_Info): Remove bogus check if ALI is older
5824 than the object.
5825
58262004-01-05 Ed Schonberg <schonberg@gnat.com>
5827
5828 * sem_ch4.adb (Analyze_Allocator): Check restriction on dynamic
5829 protected objects when allocator has a subtype indication, not a
5830 qualified expression. Note that qualified expressions may have to be
5831 checked when limited aggregates are implemented.
5832
5833 * sem_prag.adb (Analyze_Pragma, case Import): If enclosing package is
5834 pure, emit warning.
5835 (Analyze_Pragma, case Pure_Function): If enclosing package is pure and
5836 subprogram is imported, remove warning.
5837
58382004-01-05 Geert Bosch <bosch@gnat.com>
5839
5840 * s-poosiz.adb: Update copyright notice.
5841 (Allocate): Use Task_Lock to protect against concurrent access.
5842 (Deallocate): Likewise.
5843
58442004-01-05 Joel Brobecker <brobecker@gnat.com>
5845
5846 * s-stalib.adb (Elab_Final_Code): Add missing year in date inside ???
5847 comment.
5848
2ab127f3
KC
58492003-12-23 Kelley Cook <kcook@gcc.gnu.org>
5850
5851 * gnat_ug.texi: Force a CVS commit by updating copyright.
5852 * gnat_ug_vxw.texi: Regenerate.
5853 * gnat_ug_wnt.texi: Regenerate.
5854 * gnat_ug_vms.texi: Regenerate.
5855 * gnat_ug_unx.texi: Regenerate.
5856
aed8bfdc
KH
58572003-12-20 Kazu Hirata <kazu@cs.umass.edu>
5858
5859 * trans.c: Remove uses of "register" specifier in
5860 declarations of local variables.
5861
90c2f1de
KC
58622003-12-18 Kelley Cook <kcook@gcc.gnu.org>
5863
5864 * stamp-xgnatug: New stamp file.
5865 * Make-lang.in (stamp-xgnatug): New stamp file and comment.
5866 (ada/doctools/xgnatug): Add $(build_exeext).
5867 (ada/gnat_ug_unx.texi, ada/gnat_ug_vwx.texi, ada/gnat_ug_vms.texi
5868 ada/gnat_ug_wnt.texi): Update to depend on stamp-xgnatug.
5869
891a6e79
AC
58702003-12-17 Ed Falis <falis@gnat.com>
5871
5872 * a-elchha.adb (Tailored_Exception_Information): made Info constant to
5873 eliminate warning.
5874
5875 * a-exextr.adb: Add context clause for
5876 Ada.Exceptions.Last_Chance_Handler.
5877
58782003-12-17 Sergey Rybin <rybin@act-europe.fr>
5879
5880 * cstand.adb (Create_Standard): Change the way how the declaration of
5881 the Duration type is created (making it the same way as it is for all
5882 the other standard types).
5883
58842003-12-17 Robert Dewar <dewar@gnat.com>
5885
5886 * s-crtl.ads: Fix header format
5887 Change Pure to Preelaborate
5888
58892003-12-17 Ed Schonberg <schonberg@gnat.com>
5890
5891 * checks.adb (Selected_Length_Checks): Generate an Itype reference for
5892 the expression type only if it is declared in the current unit.
5893
5894 * sem_ch3.adb (Constrain_Index): Handle properly a range whose bounds
5895 are universal and already analyzed, as can occur in constrained
5896 subcomponents that depend on discriminants, when one constraint is a
5897 subtype mark.
5898
5899 * sem_res.adb (Resolve_Type_Conversion): Any arithmetic expression of
5900 type Any_Fixed is legal as the argument of a conversion, if only one
5901 fixed-point type is in context.
5902
59032003-12-17 GNAT Script <nobody@gnat.com>
5904
5905 * Make-lang.in: Makefile automatically updated
5906
209db2bf
AC
59072003-12-15 Robert Dewar <dewar@gnat.com>
5908
5909 * exp_ch6.adb (Expand_Thread_Body): Fix error in picking up default
5910 sec stack size.
5911
59122003-12-15 Vincent Celier <celier@gnat.com>
5913
5914 * gnatchop.adb: (Error_Msg): Do not exit on error for a warning
5915 (Gnatchop): Do not set failure status when reporting the number of
5916 warnings.
5917
59182003-12-15 Doug Rupp <rupp@gnat.com>
5919
5920 * s-ctrl.ads: New file.
5921
5922 * Makefile.rtl (GNAT_RTL_NONTASKING_OBJS): Add s-crtl$(objext).
5923
5924 * Make-lang.in: (GNAT_ADA_OBJS): Add ada/s-crtl.o.
5925 (GNATBIND_OBJS): Add ada/s-crtl.o.
5926
5927 * Makefile.in [VMS]: Clean up ifeq rules.
5928
5929 * gnatlink.adb, 6vcstrea.adb, a-direio.adb, a-sequio.adb,
5930 a-ststio.adb, a-textio.adb, g-os_lib.adb, a-witeio.adb,
5931 g-os_lib.ads, i-cstrea.adb, i-cstrea.ads, s-direio.adb,
5932 s-fileio.adb, s-memcop.ads, s-memory.adb, s-stache.adb,
5933 s-tasdeb.adb: Update copyright.
5934 Import System.CRTL.
5935 Make minor modifications to use System.CRTL declared functions instead
5936 of importing locally.
5937
59382003-12-15 GNAT Script <nobody@gnat.com>
5939
5940 * Make-lang.in: Makefile automatically updated
5941
a9f4e3d2
AC
59422003-12-11 Ed Falis <falis@gnat.com>
5943
5944 * 5zinit.adb: Clean up.
5945
5946 * 5zintman.adb (Notify_Exception): replaced case statement with a call
5947 to __gnat_map_signal, imported from init.c to support
5948 signal -> exception mappings that depend on the vxWorks version.
5949
fbf3e0dd 5950 * init.c:
a9f4e3d2
AC
5951 Created and exported __gnat_map_signal to support signal -> exception
5952 mapping that is dependent on the VxWorks version.
5953 Change mapping of SIGBUS from Program_Error to Storage_Error on VxWorks
5954
59552003-12-11 Vasiliy Fofanv <fofanov@act-europe.fr>
5956
5957 * 5wosinte.ads: Link with -mthreads switch.
5958
59592003-12-11 Arnaud Charlet <charlet@act-europe.fr>
5960
5961 * init.c (__gnat_install_handler [NetBSD]): Set
5962 __gnat_handler_installed, as done on all other platforms.
5963 Remove duplicated code.
5964
59652003-12-11 Jerome Guitton <guitton@act-europe.fr>
5966
5967 * Makefile.in (rts-zfp, rts-ravenscar): Create libgnat.a.
5968
59692003-12-11 Thomas Quinot <quinot@act-europe.fr>
5970
5971 * sinfo.ads: Fix inconsistent example code in comment.
5972
59732003-12-11 Robert Dewar <dewar@gnat.com>
5974
5975 * a-tiinau.adb: Add a couple of comments
5976
5977 * sem_ch3.adb: Minor reformatting
5978
fbf3e0dd 5979 * sem_prag.adb:
a9f4e3d2
AC
5980 Fix bad prototype of Same_Base_Type in body (code reading cleanup)
5981 Minor reformatting throughout
5982
59832003-12-11 Ed Schonberg <schonberg@gnat.com>
5984
5985 * exp_ch7.adb (Establish_Transient_Scope): If the call is within the
5986 bounds of a loop, create a separate block in order to generate proper
5987 cleanup actions to prevent memory leaks.
5988
5989 * sem_res.adb (Resolve_Call): After a call to
5990 Establish_Transient_Scope, the call may be rewritten and relocated, in
5991 which case no further processing is needed.
5992
5993 * sem_util.adb: (Wrong_Type): Refine previous fix.
5994 Fixes ACATS regressions.
5995
5996 PR ada/13353
5997
5998 * sem_prag.adb (Back_End_Cannot_Inline): A renaming_as_body can always
5999 be inlined.
6000
c45b6ae0
AC
60012003-12-08 Jerome Guitton <guitton@act-europe.fr>
6002
6003 * 5ytiitho.adb, 5zthrini.adb, 5ztiitho.adb, i-vthrea.adb,
6004 i-vthrea.ads, s-tpae65.adb, s-tpae65.ads: Cleanup: Remove a bunch of
6005 obsolete files.
6006
6007 * Makefile.in: (rts-ravenscar): Generate an empty libgnat.a.
6008 (rts-zfp): Ditto.
6009
60102003-12-08 Robert Dewar <dewar@gnat.com>
6011
6012 * 7sintman.adb: Minor reformatting
6013
6014 * bindgen.adb: Configurable_Run_Time mode no longer suppresses the
6015 standard linker options to get standard libraries linked. We now plan
6016 to provide dummy versions of these libraries to match the appropriate
6017 configurable run-time (e.g. if a library is not needed at all, provide
6018 a dummy empty library).
6019
6020 * targparm.ads: Configurable_Run_Time mode no longer affects linker
6021 options (-L parameters and standard libraries). What we plan to do is
6022 to provide dummy libraries where the libraries are not required.
6023
6024 * gnatbind.adb: Minor comment improvement
6025
60262003-12-08 Javier Miranda <miranda@gnat.com>
6027
6028 * exp_aggr.adb (Build_Record_Aggr_Code): Do not remove the expanded
6029 aggregate in the parent. Otherwise constants with limited aggregates
6030 are not supported. Add new formal to pass the component type (Ctype).
6031 It is required to call the corresponding IP subprogram in case of
6032 default initialized components.
6033 (Gen_Assign): In case of default-initialized component, generate a
6034 call to the IP subprogram associated with the component.
6035 (Build_Record_Aggr_Code): Remove the aggregate from the parent in case
6036 of aggregate with default initialized components.
6037 (Has_Default_Init_Comps): Improve implementation to recursively check
6038 all the present expressions.
6039
6040 * exp_ch3.ads, exp_ch3.adb (Build_Initialization_Call): Add new formal
6041 to indicate that the initialization call corresponds to a
6042 default-initialized component of an aggregate.
6043 In case of default initialized aggregate with tasks this parameter is
6044 used to generate a null string (this is just a workaround that must be
6045 improved later). In case of discriminants, this parameter is used to
6046 generate a selected component node that gives access to the discriminant
6047 value.
6048
6049 * exp_ch9.ads, exp_ch9.adb (Build_Task_Allocate_Block_With_Stmts): New
6050 subprogram, based on Build_Task_Allocate_Block, but adapted to expand
6051 allocated aggregates with default-initialized components.
6052
6053 * par-ch4.adb (P_Aggregate_Or_Paren_Expr): Improve error message if
6054 the box notation is used in positional aggregates.
6055
60562003-12-08 Samuel Tardieu <tardieu@act-europe.fr>
6057
6058 * lib.ads: Fix typo in comment
6059
60602003-12-08 Vincent Celier <celier@gnat.com>
6061
6062 * prj.adb (Project_Empty): New component Unkept_Comments
6063 (Scan): Remove procedure; moved to Prj.Err.
6064
6065 * prj.ads (Project_Data): New Boolean component Unkept_Comments
6066 (Scan): Remove procedure; moved to Prj.Err.
6067
6068 * prj-dect.adb: Manage comments for the different declarations.
6069
6070 * prj-part.adb (With_Record): New component Node
6071 (Parse): New Boolean parameter Store_Comments, defaulted to False.
6072 Set the scanner to return ends of line and comments as tokens, if
6073 Store_Comments is True.
6074 (Pre_Parse_Context_Clause): Create the N_With_Clause nodes so that
6075 comments are associated with these nodes. Store the node IDs in the
6076 With_Records.
6077 (Post_Parse_Context_Clause): Use the N_With_Clause nodes stored in the
6078 With_Records.
6079 (Parse_Single_Project): Call Pre_Parse_Context_Clause before creating
6080 the N_Project node. Call Tree.Save and Tree.Reset before scanning the
6081 current project. Call Tree.Restore afterwards. Set the various nodes
6082 for comment storage (Next_End, End_Of_Line, Previous_Line,
6083 Previous_End).
6084
6085 * prj-part.ads (Parse): New Boolean parameter Store_Comments,
6086 defaulted to False.
6087
6088 * prj-pp.adb (Write_String): New Boolean parameter Truncated, defaulted
6089 to False. When Truncated is True, truncate the string, never go to the
6090 next line.
6091 (Write_End_Of_Line_Comment): New procedure
6092 (Print): Process comments for nodes N_With_Clause,
6093 N_Package_Declaration, N_String_Type_Declaration,
6094 N_Attribute_Declaration, N_Typed_Variable_Declaration,
6095 N_Variable_Declaration, N_Case_Construction, N_Case_Item.
6096 Process nodes N_Comment.
6097
6098 * prj-tree.ads, prj-tree.adb (Default_Project_Node): If it is a node
6099 without comments and there are some comments, set the flag
6100 Unkept_Comments to True.
6101 (Scan): If there are comments, set the flag Unkept_Comments to True and
6102 clear the comments.
6103 (Project_Node_Kind): Add enum values N_Comment_Zones, N_Comment
6104 (Next_End_Nodes: New table
6105 (Comment_Zones_Of): New function
6106 (Scan): New procedure; moved from Prj. Accumulate comments in the
6107 Comments table and set end of line comments, comments after, after end
6108 and before end.
6109 (Add_Comments): New procedure
6110 (Save, Restore, Seset_State): New procedures
6111 (There_Are_Unkept_Comments): New function
6112 (Set_Previous_Line_Node, Set_Previous_End_Node): New procedures
6113 (Set_End_Of_Line, Set_Next_End_Node, Remove_Next_End_Node): New
6114 procedures.
6115 (First_Comment_After, First_Comment_After_End): New functions
6116 (First_Comment_Before, First_Comment_Before_End): New functions
6117 (Next_Comment): New function
6118 (End_Of_Line_Comment, Follows_Empty_Line,
6119 Is_Followed_By_Empty_Line): New functions
6120 (Set_First_Comment_After, Set_First_Comment_After_End): New procedures
6121 (Set_First_Comment_Before, Set_First_Comment_Before_End): New procedures
6122 (Set_Next_Comment): New procedure
6123 (Default_Project_Node): Associate comment before if the node can store
6124 comments.
6125
6126 * scans.ads (Token_Type): New enumeration value Tok_Comment
6127 (Comment_Id): New global variable
6128
6129 * scng.ads, scng.adb (Comment_Is_Token): New Boolean global variable,
6130 defaulted to False.
6131 (Scan): Store position of start of comment. If comments are tokens, set
6132 Comment_Id and set Token to Tok_Comment when scanning a comment.
6133 (Set_Comment_As_Token): New procedure
6134
6135 * sinput-p.adb: Update Copyright notice
6136 (Source_File_Is_Subunit): Call Prj.Err.Scanner.Scan instead of Prj.Scan
6137 that no longer exists.
6138
61392003-12-08 Javier Miranda <miranda@gnat.com>
6140
6141 * sem_aggr.adb: Add dependence on Exp_Tss package
6142 Correct typo in comment
6143 (Resolve_Aggregate): In case of array aggregates set the estimated
6144 type of the aggregate before calling resolve. This is needed to know
6145 the name of the corresponding IP in case of limited array aggregates.
6146 (Resolve_Array_Aggregate): Delay the resolution to the expansion phase
6147 in case of default initialized array components.
6148
6149 * sem_ch12.adb (Analyze_Formal_Object_Declaration): Allow limited
6150 types. Required to give support to limited aggregates in generic
6151 formals.
6152
61532003-12-08 Ed Schonberg <schonberg@gnat.com>
6154
6155 * sem_ch3.adb (Check_Initialization): For legality purposes, an
6156 inlined body functions like an instantiation.
6157 (Decimal_Fixed_Point_Declaration): Do not set kind of first subtype
6158 until bounds are analyzed, to diagnose premature use of type.
6159
6160 * sem_util.adb (Wrong_Type): Improve error message when the type of
6161 the expression is used prematurely.
6162
61632003-12-08 GNAT Script <nobody@gnat.com>
6164
6165 * Make-lang.in: Makefile automatically updated
6166
0875a894
AC
61672003-12-08 Arnaud Charlet <charlet@act-europe.fr>
6168
7618d510
AC
6169 * sinfo.h, einfo.h, nmake.ads, nmake.adb, treeprs.ads: Removed, since
6170 they are automatically generated by Make-lang.in and cause nothing but
0875a894
AC
6171 maintenance troubles.
6172
5b4994bc
AC
61732003-12-05 Thomas Quinot <quinot@act-europe.fr>
6174
6175 * 3ssoliop.ads: Fix comment (this is the Solaris, not the UnixWare,
6176 version of this unit).
6177
61782003-12-05 Olivier Hainque <hainque@act-europe.fr>
6179
6180 * 53osinte.ads, 54osinte.ads, 55osinte.ads, 56osinte.ads, 5bosinte.ads,
6181 5cosinte.ads, 5hosinte.ads, 5iosinte.ads, 5losinte.ads,
6182 5tosinte.ads: Define the SA_SIGINFO constant, to allow references from
6183 the body of System.Interrupt_Management common to several targets.
6184 Update copyright notice when appropriate.
6185
6186 * 52osinte.ads, 5posinte.ads: Define a dummy value for the SA_SIGINFO
6187 constant.
6188
6189 * 7sintman.adb (elaboration): Set SA_SIGINFO in the sigaction flags,
6190 to ensure that the kernel fills in the interrupted context structure
6191 before calling a signal handler, which is necessary to be able to
6192 unwind past it. Update the copyright notice.
6193
61942003-12-05 Jerome Guitton <guitton@act-europe.fr>
6195
6196 * a-elchha.ads: New file.
6197
6198 * a-elchha.adb: New default last chance handler. Contents taken from
6199 Ada.Exceptions.Exception_Traces.Unhandled_Exception_Terminate.
6200
6201 * a-exextr.adb (Unhandled_Exception_Terminate): Most of this routine
6202 is moved to a-elchha.adb to provide a target-independent default last
6203 chance handler.
6204
6205 * Makefile.rtl: Add a-elchha.o
6206
6207 * Make-lang.in (GNAT_ADA_OBJS, GNATBIND_OBJS): Add a-elchha.o.
6208
62092003-12-05 Ed Schonberg <schonberg@gnat.com>
6210
6211 * exp_ch6.adb (Expand_Call): If the subprogram is inlined and is
6212 declared in an instance, do not inline the call if the instance is not
6213 frozen yet, to prevent order of elaboration problems.
6214
6215 * sem_prag.adb: Add comments for previous fix.
6216
62172003-12-05 Samuel Tardieu <tardieu@act-europe.fr>
6218
6219 * g-table.adb: Use the right variable in Set_Item.
6220 Update copyright notice.
6221
62222003-12-05 Arnaud Charlet <charlet@act-europe.fr>
6223
6224 * Makefile.in: Remove unused rules.
6225
62262003-12-05 Vincent Celier <celier@gnat.com>
6227
6228 * switch-c.adb (Scan_Front_End_Switches): Remove processing of
6229 -nostdlib. Not needed here after all.
6230
efdfd311
AC
62312003-12-03 Thomas Quinot <quinot@act-europe.fr>
6232
6233 PR ada/11724
6234
fbf3e0dd 6235 * adaint.h, adaint.c, g-os_lib.ads:
efdfd311
AC
6236 Do not assume that the offset argument to lseek(2) is a 32 bit integer,
6237 on some platforms (including FreeBSD), it is a 64 bit value.
6238 Introduce a __gnat_lseek wrapper in adaint.c to allow for portability.
6239
62402003-12-03 Arnaud Charlet <charlet@act-europe.fr>
6241
6242 * gnatvsn.ads (Library_Version): Now contain only the relevant
6243 version info.
6244 (Verbose_Library_Version): New constant.
6245
6246 * g-spipat.adb, g-awk.adb, g-debpoo.adb,
6247 g-memdum.adb, g-thread.adb, s-geveop.adb, s-interr.adb,
6248 s-taskin.adb, s-tassta.adb: Make code compile with -gnatwa.
6249
6250 * gnatlbr.adb: Clean up: replace Library_Version by
6251 Verbose_Library_Version.
6252
fbf3e0dd 6253 * make.adb, lib-writ.adb, exp_attr.adb:
efdfd311
AC
6254 Clean up: replace Library_Version by Verbose_Library_Version.
6255
6256 * 5lintman.adb: Removed.
6257
fbf3e0dd 6258 * Makefile.in:
efdfd311
AC
6259 Update and simplify computation of LIBRARY_VERSION.
6260 Fix computation of GSMATCH_VERSION.
6261 5lintman.adb is no longer used: replaced by 7sintman.adb.
6262
62632003-12-03 Robert Dewar <dewar@gnat.com>
6264
fbf3e0dd 6265 * exp_ch5.adb:
efdfd311
AC
6266 (Possible_Bit_Aligned_Component): Maybe_Bit_Aligned_Large_Component new
6267 name. Modified to consider small non-bit-packed arrays as troublesome
6268 and in need of component-by-component assigment expansion.
6269
62702003-12-03 Vincent Celier <celier@gnat.com>
6271
6272 * lang-specs.h: Process nostdlib as nostdinc
6273
6274 * back_end.adb: Update Copyright notice
6275 (Scan_Compiler_Arguments): Process -nostdlib directly.
6276
62772003-12-03 Jose Ruiz <ruiz@act-europe.fr>
6278
fbf3e0dd 6279 * Makefile.in:
efdfd311
AC
6280 When defining LIBGNAT_TARGET_PAIRS for bare board targets, remove the
6281 redundant inclusion of EXTRA_HIE_NONE_TARGET_PAIRS, which is always
6282 included in HIE_NONE_TARGET_PAIRS.
6283
62842003-12-03 Ed Schonberg <schonberg@gnat.com>
6285
fbf3e0dd 6286 * sem_attr.adb:
efdfd311
AC
6287 (Legal_Formal_Attribute): Attribute is legal in an inlined body, as it
6288 is legal in an instance, because legality is cheched in the template.
6289
fbf3e0dd 6290 * sem_prag.adb:
efdfd311
AC
6291 (Analyze_Pragma, case Warnings): In an inlined body, the pragma may be
6292 appplied to an unchecked conversion of a formal parameter.
6293
fbf3e0dd 6294 * sem_warn.adb:
efdfd311
AC
6295 (Output_Unreferenced_Messages): Suppress "not read" warnings on imported
6296 variables.
6297
62982003-12-03 Olivier Hainque <hainque@act-europe.fr>
6299
6300 * tb-alvms.c (unwind_regular_code, unwind_kernel_handler): New
6301 routines. The second one is new functionality to deal with backtracing
6302 through signal handlers.
6303 (unwind): Split into the two separate subroutines above.
6304 Update the documentation, and deal properly with sizeof (REG) different
6305 from sizeof (void*).
6306
08aa9a4a
AC
63072003-12-01 Nicolas Setton <setton@act-europe.fr>
6308
6309 * a-except.adb (Raise_Current_Excep): Add a pragma Inspection_Point,
6310 so that the debugger can reliably access the value of the parameter,
6311 and therefore is able to display the exception name when an exception
6312 breakpoint is reached.
6313
63142003-12-01 Thomas Quinot <quinot@act-europe.fr>
6315
6316 * fmap.adb: Fix typo in warning message.
6317
6318 * g-socket.ads, g-socket.adb: Make Free a visible instance of
6319 Ada.Unchecked_Deallocation (no need to wrap it in a subprogram).
6320
63212003-12-01 Vincent Celier <celier@gnat.com>
6322
6323 * mlib-prj.adb (Build_Library.Process): Do not check a withed unit if
6324 ther is no Afile.
6325 (Build_Library): Get the switches only if Default_Switches is declared
6326 in package Binder.
6327
63282003-12-01 Ed Schonberg <schonberg@gnat.com>
6329
6330 * exp_ch6.adb (Expand_Actuals): When applying validity checks to
6331 actuals that are indexed components, reanalyze actual to ensure that
6332 packed array references are properly expanded.
6333
6334 * sem_ch5.adb (Diagnose_Non_Variable_Lhs): Add special case for
6335 attempted assignment to a discriminant.
6336
63372003-12-01 Robert Dewar <dewar@gnat.com>
6338
6339 * rtsfind.adb, exp_ch4.adb, s-exnint.ads, s-exnint.adb: Minor
6340 reformatting.
6341
6342 * switch-c.adb: Minor reformatting of comments
6343
63442003-12-01 Arnaud Charlet <charlet@act-europe.fr>
6345
6346 * Makefile.in: Clean ups.
6347
63482003-12-01 GNAT Script <nobody@gnat.com>
6349
6350 * Make-lang.in: Makefile automatically updated
6351
c6135994
AC
63522003-12-01 Arnaud Charlet <charlet@act-europe.fr>
6353
6354 * 5wsystem.ads: Disable zero cost exception, not ready yet.
6355
51a30506
UW
63562003-11-29 Ulrich Weigand <uweigand@de.ibm.com>
6357
6358 * Make-lang.in (nmake.ads): Add dependency on ada/nmake.adb
6359 to force serialization.
6360
81a5b587
AC
63612003-11-26 Thomas Quinot <quinot@act-europe.fr>
6362
fbf3e0dd 6363 * g-socket.ads, g-socket.adb:
81a5b587
AC
6364 Clarify documentation of function Stream. Introduce a Free procedure
6365 to release the returned Stream once it becomes unused.
6366
6367 * 5asystem.ads: For Alpha Tru64, enable ZCX by default.
6368
63692003-11-26 Arnaud Charlet <charlet@act-europe.fr>
6370
6371 (Cond_Timed_Wait): Introduce new constant Time_Out_Max,
6372 since NT 4 cannot handle timeout values that are too large,
6373 e.g. DWORD'Last - 1.
6374
63752003-11-26 Ed Schonberg <schonberg@gnat.com>
6376
fbf3e0dd 6377 * exp_ch4.adb:
81a5b587
AC
6378 (Expand_N_Slice): Recognize all cases of slices that appear as actuals
6379 in procedure calls and whose expansion must be deferred.
6380
6381 * exp_ch6.adb (Add_Call_By_Copy_Node): Remove previous fix. Proper fix
6382 is in exp_ch4.
6383
fbf3e0dd 6384 * sem_ch3.adb:
81a5b587
AC
6385 (Build_Derived_Array_Type): Create operator for unconstrained type
6386 if ancestor is unconstrained.
6387
63882003-11-26 Vincent Celier <celier@gnat.com>
6389
6390 * make.adb (Project_Object_Directory): New global variable
6391 (Change_To_Object_Directory): New procedure
6392 (Collect_Arguments_And_Compile): Call Change_To_Object_Directory instead
6393 of Change_Dir directly. Do not change working directory to object
6394 directory of main project after each compilation.
6395 (Gnatmake): Use Change_To_Object_Directory instead of Change_Dir
6396 directly.
6397 Change to object directory of main project before binding step.
6398 (Initialize): Initialize Project_Object_Directory to No_Project
6399
fbf3e0dd 6400 * mlib-prj.adb:
81a5b587
AC
6401 (Build_Library): Take into account Builder'Default_Switches ("Ada") when
6402 binding a Stand-Alone Library.
6403
6404 * output.adb: Update Copyright notice
6405 (Write_Char): Output buffer when full
6406
64072003-11-26 Robert Dewar <dewar@gnat.com>
6408
6409 * sem_ch13.adb: (Check_Size): Reset size if size is too small
6410
fbf3e0dd 6411 * sem_ch13.ads:
81a5b587
AC
6412 (Check_Size): Fix documentation to include bit-packed array case
6413
6414 * sem_res.adb: Implement restriction No_Direct_Boolean_Operators
6415
6416 * s-rident.ads: Put No_Direct_Boolean_Operators in proper order
6417
6418 * s-rident.ads: Add new restriction No_Direct_Boolean_Operators
6419
d4c47b51
AC
64202003-11-24 Arnaud Charlet <charlet@act-europe.fr>
6421
6422 PR ada/13142
6423 * utils.c (init_gigi_decls): Change name of built-in setjmp to
6424 __builtin_setjmp, since this is apparently needed by recent
6425 non Ada changes.
6426
7677e9e0
RO
64272003-11-24 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
6428
d4c47b51 6429 * adadecode.c: Only include ctype.h if not IN_GCC.
7677e9e0
RO
6430 (__gnat_decode): Use ISDIGIT from safe-ctype.h.
6431
6c1e24d3
AC
64322003-11-24 Jose Ruiz <ruiz@act-europe.fr>
6433
fbf3e0dd 6434 * Makefile.in:
6c1e24d3
AC
6435 Use 5zintman.ads for VxWorks targets. This file avoid confusion between
6436 signals and interrupts.
6437
6438 * 5zintman.ads: New File.
6439
6440 * 5zintman.adb: Replace Exception_Interrupts by Exception_Signals, and
6441 add exception signals to the set of unmasked signals.
6442
fbf3e0dd 6443 * 5ztaprop.adb:
6c1e24d3
AC
6444 Use Abort_Task_Signal instead of Abort_Task_Interrupt to avoid confusion
6445 between signals and interrupts.
6446 Add to Unblocked_Signal_Mask the set of signals that are in
6447 Keep_Unmasked.
6448
fbf3e0dd 6449 * 7sinmaop.adb:
6c1e24d3
AC
6450 Adding a check to see whether the Interrupt_ID we want to unmask is in
6451 the range of Keep_Unmasked (in procedure Interrupt_Self_Process). The
6452 reason is that the index type of the Keep_Unmasked array is not always
6453 Interrupt_ID; it may be a subtype of Interrupt_ID.
6454
64552003-11-24 Gary Dismukes <dismukes@gnat.com>
6456
fbf3e0dd 6457 * exp_util.adb:
6c1e24d3
AC
6458 (Remove_Side_Effects): Condition constantness of object created for a
6459 an unchecked type conversion on the constantness of the expression
6460 to ensure the correct value for 'Constrained when passing components
6461 of view-converted class-wide objects.
6462
64632003-11-24 Robert Dewar <dewar@gnat.com>
6464
6465 * par-load.adb (Load): Improve handling of misspelled and missing units
6466 Removes several cases of compilation abandoned messages
6467
6468 * lib.adb: (Remove_Unit): New procedure
6469
6470 * lib.ads: (Remove_Unit): New procedure
6471
6472 * lib-load.adb: Minor reformatting
6473
64742003-11-24 Vincent Celier <celier@gnat.com>
6475
fbf3e0dd 6476 * make.adb:
6c1e24d3
AC
6477 (Gnatmake, Initialize): Call Usage instead of Makeusg directly
6478 (Marking_Label): Label to mark processed source files. Incremented for
6479 each executable.
6480 (Gnatmake): Increase Marking_Labet for each executable
6481 (Is_Marked): Compare against marking label
6482 (Mark): Mark with marking label
6483
64842003-11-24 Jerome Guitton <guitton@act-europe.fr>
6485
fbf3e0dd 6486 * s-thread.ads:
6c1e24d3
AC
6487 Move the declaration of the TSD for System.Threads to System.Soft_Links.
6488 Add some comments.
6489
6490 * Makefile.in: Added target pair for s-thread.adb for cert runtime.
6491 (rts-cert): build a single relocatable object for the run-time lib.
6492 Fix perms.
6493
64942003-11-24 Vasiliy Fofanov <fofanov@act-europe.fr>
6495
fbf3e0dd 6496 * Make-lang.in:
6c1e24d3
AC
6497 Use gnatls rather than gcc to obtain the location of GNAT RTL for
6498 crosstools build.
6499
65002003-11-24 Sergey Rybin <rybin@act-europe.fr>
6501
6502 * opt.adb (Tree_Write): Gnat_Version_String is now a function, so we
6503 can not use it as before (that is, as a variable) when dumping it into
6504 the tree file. Add a local variable to store the result of this
6505 function and to be used as the string to be written into the tree.
6506
6507 * scn.adb (Initialize_Scanner): Add comments explaining the recent
6508 changes.
6509
6510 * sinput.adb (Source_First, Source_Last): In case of
6511 Internal_Source_File, replace returning attributes of
6512 Internal_Source_Ptr (which is wrong) with returning attributes of
6513 Internal_Source.
6514
65152003-11-24 Ed Schonberg <schonberg@gnat.com>
6516
fbf3e0dd 6517 * sem_ch3.adb:
6c1e24d3
AC
6518 (New_Concatenation_Op): Proper name for New_Binary_Operator, only
6519 used for implicit concatenation operators.
6520 Code cleanup.
6521
fbf3e0dd 6522 * sem_elab.adb:
6c1e24d3
AC
6523 (Check_Elab_Call): Set No_Elaboration_Check appropriately on calls in
6524 task bodies that are in the scope of a Suppress pragma.
6525 (Check_A Call): Use the flag to prevent spurious elaboration checks.
6526
fbf3e0dd 6527 * sinfo.ads, sinfo.adb:
6c1e24d3
AC
6528 New flag No_Elaboration_Check on function/procedure calls, to properly
6529 suppress checks on calls in task bodies that are within a local suppress
6530 pragma.
6531
fbf3e0dd 6532 * exp_ch4.adb:
6c1e24d3
AC
6533 (Expand_Concatenate_Other): Use the proper integer type for the
6534 expression for the upper bound, to avoid universal_integer computations
6535 when possible.
6536
6f2aeb72
KC
65372003-11-21 Kelley Cook <kcook@gcc.gnu.org>
6538
6539 * .cvsignore: Delete.
6540
e9f85cd6
AS
65412003-11-21 Andreas Schwab <schwab@suse.de>
6542
6543 * 55system.ads: Set ZCX_By_Default and GCC_ZCX_Support to True.
6544
4e074baf
VF
65452003-11-21 Vasiliy Fofanov <fofanov@act-europe.fr>
6546
6547 * 5wsystem.ads: Enable zero cost exception.
6548
f1f9fe30
AC
65492003-11-21 Jerome Guitton <guitton@act-europe.fr>
6550
6551 * 5ztiitho.adb: Remove an unreferenced variable.
6552
65532003-11-21 Thomas Quinot <quinot@act-europe.fr>
6554
6555 * adaint.c: For FreeBSD, use mkstemp.
6556
65572003-11-21 Arnaud Charlet <charlet@act-europe.fr>
6558
6559 * gnatlbr.adb: Now reference Gnat_Static_Version_String.
6560
65612003-11-21 Robert Dewar <dewar@gnat.com>
6562
6563 * bld.adb: Remove useless USE of gnatvsn
6564
6565 * gnatchop.adb: Minor reformatting
6566 Clean up version handling to be more consistent
6567
6568 * gnatxref.adb: Minor reformatting
6569
6570 * gprcmd.adb: Minor reformatting
6571 Fix output of copyright to be more consistent with other tools
6572
65732003-11-21 Vincent Celier <celier@gnat.com>
6574
6575 * make.adb (Scan_Make_Args): Do not transmit --RTS= to gnatlink
6576
65772003-11-21 Sergey Rybin <rybin@act-europe.fr>
6578
6579 * atree.adb (Initialize): Add initializations for global variables
6580 used in New_Copy_Tree.
6581
6582 * cstand.adb (Create_Standard): Add call to Initialize_Scanner (with
6583 Internal_Source_File as the actual).
6584 Put the set of statements creating Any_Character before the set of
6585 statements creating Any_Array to have Any_Character fully initialized
6586 when it is used in creating Any_Array.
6587
6588 * scn.adb (Initialize_Scanner): Do not set Comes_From_Source ON and do
6589 not call Scan in case if the actual is Internal_Source_File
6590 Add 2003 to copyright note.
6591
6592 * sinput.adb (Source_First, Source_Last, Source_Text): Add code for
6593 processing Internal_Source_File.
6594
6595 * types.ads: Add the constant Internal_Source_File representing the
6596 source buffer for artificial source-code-like strings created within
6597 the compiler (the definition of Source_File_Index is changed).
6598
c5b2a8ae
AC
65992003-11-20 Arnaud Charlet <charlet@act-europe.fr>
6600
6601 * 35soccon.ads, 45intnam.ads, 55osinte.adb, 55osinte.ads,
6602 56system.ads: New file, FreeBSD version.
6603
a03ad584
JM
66042003-11-20 Joseph S. Myers <jsm@polyomino.org.uk>
6605
6606 * Make-lang.in (ada.extraclean): Delete.
6607
19f0526a
AC
66082003-11-19 Arnaud Charlet <charlet@act-europe.fr>
6609
6610 * gnatmem.adb: Clean up verbose output.
6611
6612 * gprcmd.adb: Change copyright to FSF.
6613
66142003-11-19 Vincent Celier <celier@gnat.com>
6615
6616 * symbols.adb: (Initialize): New parameters Reference, Symbol_Policy
6617 and Version (ignored).
6618
6619 * symbols.ads: (Policy): New type
6620 (Initialize): New parameter Reference, Symbol_Policy and
6621 Library_Version.
6622 Remove parameter Force.
6623 Minor reformatting.
6624
6625 * snames.ads, snames.adbadb: New standard names
6626 Library_Reference_Symbol_File and Library_Symbol_Policy
6627
fbf3e0dd 6628 * mlib-prj.adb:
19f0526a
AC
6629 (Build_Library): Call Build_Dinamic_Library with the Symbol_Data of the
6630 project.
6631
fbf3e0dd 6632 * mlib-tgt.adb:
19f0526a
AC
6633 (Build_Dynamic_Library): New parameter Symbol_Data (ignored)
6634
6635 * mlib-tgt.ads: (Build_Dynamic_Library): New parameter Symbol_Data
6636
6637 * prj.adb: (Project_Empty): New component Symbol_Data
6638
6639 * prj.ads: (Policy, Symbol_Record): New types
6640 (Project_Data): New component Symbol_Data
6641
fbf3e0dd 6642 * prj-attr.adb:
19f0526a
AC
6643 New attributes Library_Symbol_File, Library_Symbol_Policy and
6644 Library_Reference_Symbol_File.
6645
fbf3e0dd 6646 * prj-nmsc.adb:
19f0526a
AC
6647 (Ada_Check): When project is a Stand-Alone library project, process
6648 attribute Library_Symbol_File, Library_Symbol_Policy and
6649 Library_Reference_Symbol_File.
6650
6651 * 5aml-tgt.adb, 5bml-tgt.adb, 5gml-tgt.adb, 5hml-tgt.adb,
6652 5wml-tgt.adb, 5zml-tgt.adb, 5lml-tgt.adb,
6653 5sml-tgt.adb (Build_Dynamic_Library): New parameter
6654 Symbol_Data (ignored).
6655
6656 * 5vml-tgt.adb (VMS_Options): Remove --for-linker=gsmatch=equal,1,0
6657 (Build_Dynamic_Library): New parameter Symbol_Data. New internal
6658 functions Option_File_Name and Version_String. Set new options of
6659 gnatsym related to symbol file, symbol policy and reference symbol
6660 file.
6661
fbf3e0dd 6662 * 5vsymbol.adb:
19f0526a
AC
6663 Extensive modifications to take into account the reference symbol file,
6664 the symbol policy, the library version and to put in the symbol file the
6665 minor and major IDs.
6666
6667 * bld.adb (Process_Declarative_Items): Put second argument of
6668 gprcmd to_absolute between single quotes, to avoid problems with
6669 Windows.
6670
6671 * bld-io.adb: Update Copyright notice.
6672 (Flush): Remove last character of a line, if it is a back slash, to
6673 avoid make problems.
6674
fbf3e0dd 6675 * gnatsym.adb:
19f0526a
AC
6676 Implement new scheme with reference symbol file and symbol policy.
6677
6678 * g-os_lib.ads: (Is_Directory): Clarify comment
6679
66802003-11-19 Robert Dewar <dewar@gnat.com>
6681
6682 * atree.adb: Move New_Copy_Tree global variables to head of package
6683
6684 * errout.adb: Minor reformatting
6685
66862003-11-19 Javier Miranda <miranda@gnat.com>
6687
6688 * sem_ch4.adb: (Diagnose_Call): Improve error message.
6689 Add reference to Ada0Y (AI-50217)
6690
6691 * sem_ch6.adb, sem_ch8.adb, sem_type.adb,
6692 sem_util.adb: Add reference to AI-50217
6693
6694 * sinfo.ads: (N_With_Clause): Document fields referred to AI-50217
6695
6696 * sprint.adb: Add reference to Ada0Y (AI-50217, AI-287)
6697
6698 * sem_aggr.adb: Complete documentation of AI-287 changes
6699
6700 * par-ch4.adb: Document previous changes.
6701
6702 * lib-load.adb, lib-writ.adb, einfo.ads, par-ch10.adb,
6703 sem_cat.adb, sem_ch3.adb, sem_ch10.adb, sem_ch12.adb: Add references to
6704 Ada0Y (AI-50217)
6705
6706 * exp_aggr.adb: Add references to AI-287 in previous changes
6707
67082003-11-19 Ed Schonberg <schonberg@gnat.com>
6709
fbf3e0dd 6710 * exp_ch6.adb:
19f0526a
AC
6711 (Add_Call_By_Copy_Node): Do not original node of rewritten expression
6712 in the rewriting is the result of an inlined call.
6713
6714 * exp_ch6.adb (Add_Call_By_Copy_Node): If actual for (in-)out
6715 parameter is a type conversion, use original node to construct the
6716 post-call assignment, because expression may have been rewritten, e.g.
6717 if it is a packed array.
6718
fbf3e0dd 6719 * sem_attr.adb:
19f0526a
AC
6720 (Resolve_Attribute, case 'Constrained): Attribute is legal in an inlined
6721 body, just as it is in an instance.
6722 Categorization routines
6723
6724 * sem_ch12.adb (Analyze_Association, Instantiate_Formal_Subprogram,
6725 Instantiate_Object): Set proper sloc reference for message on missing
6726 actual.
6727
67282003-11-19 Thomas Quinot <quinot@act-europe.fr>
6729
6730 * Makefile.in: Add FreeBSD libgnat pairs.
6731
6732 * usage.adb: Fix typo in usage message.
6733
67342003-11-19 Jerome Guitton <guitton@act-europe.fr>
6735
6736 * Makefile.in: On powerpc-wrs-vxworksae: Add s-thread.ad?,
6737 s-thrini.ad? and s-tiitho.adb to the full runtime, to support the
6738 pragma Thread_Body.
6739 Remove i-vthrea.ad? and s-tpae65.ad?, not needed anymore.
6740
6741 * s-thread.adb: This file is now a dummy implementation of
6742 System.Thread.
6743
67442003-11-19 Sergey Rybin <rybin@act-europe.fr>
6745
6746 * rtsfind.adb (Initialize): Add initialization for RTE_Is_Available
6747
67482003-11-19 Emmanuel Briot <briot@act-europe.fr>
6749
6750 * xref_lib.adb (Parse_Identifier_Info): Add handling of generic
6751 instanciation references in the parent type description.
6752
0d77ab84
AC
67532003-11-18 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
6754
6755 * ada-tree.def: (ALLOCATE_EXPR): Class is "2", not "s".
6756
6757 * decl.c (gnat_to_gnu_entity, case E_Floating_Point_Subtype): Set
6758 TYPE_PRECISION directly from esize.
6759
67602003-11-18 Thomas Quinot <quinot@act-europe.fr>
6761
fbf3e0dd 6762 * cstreams.c:
0d77ab84
AC
6763 Use realpath(3) on FreeBSD. Fix typo in comment while we are at it.
6764
6765 * init.c: Initialization routines for FreeBSD
6766
6767 * link.c: Link info for FreeBSD
6768
6769 * sysdep.c: Add the case of FreeBSD
6770
cb7a5092
AC
67712003-11-17 Jerome Guitton <guitton@act-europe.fr>
6772
6773 * 5zthrini.adb: Remove the call to Init_RTS at elaboration, as it is
6774 already called in System.Threads.
6775
6776 * 5ztiitho.adb (Initialize_Task_Hooks): Remove the registration of the
6777 environment task, as it has been moved to System.Threads.Initialization.
6778
67792003-11-17 Arnaud Charlet <charlet@act-europe.fr>
6780
6781 * adaint.c (__gnatlib_install_locks): Only reference
6782 __gnat_install_locks on VMS, since other platforms can avoid using
6783 --enable-threads=gnat
6784
67852003-11-17 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
6786
6787 * ada-tree.h: (TYPE_IS_PACKED_ARRAY_TYPE_P): New macro.
6788
6789 * decl.c (gnat_to_gnu_entity, case E_Array_Subtype): Set
6790 TYPE_PACKED_ARRAY_TYPE_P.
6791 (validate_size): Do not verify size if TYPE_IS_PACKED_ARRAY_TYPE_P.
6792
6793 Part of PR ada/12806
6794 * utils.c (float_type_for_precision): Renamed from float_type_for_size.
6795 Use GET_MODE_PRECISION instead of GET_MODE_BITSIZE.
6796
67972003-11-17 Vincent Celier <celier@gnat.com>
6798
6799 * gnatchop.adb (Error_Msg): New Boolean parameter Warning, defaulted
6800 to False.
6801 Do not set exit status to Failure when Warning is True.
6802 (Gnatchop): Make errors "no compilation units found" and
6803 "no source files written" warnings only.
6804
6805 * make.adb (Gnatmake): When using a project file, set
6806 Look_In_Primary_Dir to False.
6807 (Configuration_Pragmas_Switch): Check for Global_Configuration_Pragmas
6808 and Local_Configuration_Pragmas in the project where they are declared
6809 not an extending project which might have inherited them.
6810
6811 * osint.adb (Locate_File): If Name is already an absolute path, do not
6812 look for a directory.
6813
6814 * par-ch10.adb (P_Compilation_Unit): If source contains no token, and
6815 -gnats (Check_Syntax) is used, issue only a warning, not an error.
6816
6817 * prj.adb (Register_Default_Naming_Scheme): Add new component Project
6818 in objects of type Variable_Value.
6819
6820 * prj.ads: (Variable_Value): New component Project
6821
6822 * prj-nmsc.adb (Ada_Check.Warn_If_Not_Sources): No warning if source
6823 is in a project extended by Project.
6824
6825 * prj-proc.adb (Add_Attributes): New parameter Project. Set component
6826 Project of Variable_Values to this new parameter value.
6827 (Expression): Set component Project of Variable_Values.
6828 (Process_Declarative_Items): Call Add_Attributes with parameter Project.
6829 Set the component Project in array elements.
6830
68312003-11-17 Sergey Rybin <rybin@act-europe.fr>
6832
6833 * errout.adb: (Initialize): Add initialization for error nodes.
6834
6835 * sem_ch12.adb (Initialize): Add missing initializations for
6836 Exchanged_Views and Hidden_Entities.
6837
68382003-11-17 Ed Schonberg <schonberg@gnat.com>
6839
6840 * sem_ch12.adb (Copy_Generic_Node): Preserve entity when copying an
6841 already instantiated tree for use in subsequent inlining.
6842 (Analyze_Associations, Instantiate_Formal_Subprogram,
6843 Instantiate_Object): improve error message for mismatch in
6844 instantiations.
6845
6846 * sem_ch6.adb (Build_Body_To_Inline): Major cleanup to handle
6847 instantiations of subprograms declared in instances.
6848
68492003-11-17 Javier Miranda <miranda@gnat.com>
6850
6851 * sem_ch4.adb (Analyze_Allocator): Previous modification must be
6852 executed only under the Extensions_Allowed flag.
6853
68542003-11-17 Robert Dewar <dewar@gnat.com>
6855
6856 * a-exexda.adb (Address_Image): Fix documentation to indicate leading
6857 zeroes suppressed.
6858 (Address_Image): Fix bug of returning 0x instead of 0x0
6859 Minor reformatting (function specs).
6860
6861 * einfo.ads: Minor fix for documentation of Is_Bit_Packed_Array
6862 (missed case of 33-63)
6863
6864 * freeze.adb, sem_ch13.adb: Properly check size of packed bit array
6865
6866 * s-thread.adb: Add comments for pragma Restriction
6867
6868 * exp_aggr.adb, g-debuti.adb, par-ch4.adb, sem_aggr.adb,
6869 sem_ch6.adb, sprint.adb, xref_lib.adb: Minor reformatting
6870
68712003-11-17 Ed Falis <falis@gnat.com>
6872
6873 * s-thread.adb: Added No_Tasking restriction for this implementation.
6874
68752003-11-17 Emmanuel Briot <briot@act-europe.fr>
6876
6877 * xref_lib.adb (Parse_Identifier_Info): Add handling of generic
6878 instanciation references in the parent type description.
6879
68802003-11-17 GNAT Script <nobody@gnat.com>
6881
6882 * Make-lang.in: Makefile automatically updated
6883
7d60db05
JM
68842003-11-16 Jason Merrill <jason@redhat.com>
6885
6886 * Make-lang.in (ada.tags): Create TAGS.sub files in each directory
6887 and TAGS files that include them for each front end.
6888
c0040397
AJ
68892003-11-14 Andreas Jaeger <aj@suse.de>
6890
a477ab83 6891 * lang.opt: Change -Wno-long-long to -Wlong-long since the latter
fbf3e0dd 6892 is the canonical version.
a477ab83
AJ
6893 * misc.c (gnat_handle_option): Likewise.
6894
c0040397
AJ
6895 * Makefile.in (LIBGNAT_TARGET_PAIRS): Add rules for x86_64-linux.
6896
6897 * 5nsystem.ads: New file for x86_64-linux-gnu.
6898
95a6aaf9
AC
68992003-11-14 Arnaud Charlet <charlet@act-europe.fr>
6900
262cc585 6901 * nmake.ads, nmake.adb, sinfo.h, treeprs.ads: Regenerated.
95a6aaf9 6902
4a4fe537
AC
6903 * comperr.adb: Fix logic in previous change.
6904
65356e64
AC
69052003-11-13 Vincent Celier <celier@gnat.com>
6906
6907 * 5bml-tgt.adb (Build_Dynamic_Library): Use
6908 Osint.Include_Dir_Default_Prefix instead of
6909 Sdefault.Include_Dir_Default_Name.
6910
6911 * gnatlbr.adb: Update Copyright notice
6912 (Gnatlbr): : Use Osint.Include_Dir_Default_Prefix instead of
6913 Sdefault.Include_Dir_Default_Name and Osint.Object_Dir_Default_Prefix
6914 instead of Sdefault.Object_Dir_Default_Name
6915
c0040397 6916 * gnatlink.adb:
65356e64
AC
6917 (Process_Binder_File): Never suppress the option following -Xlinker
6918
c0040397 6919 * mdll-utl.adb:
65356e64
AC
6920 (Gcc): Use Osint.Object_Dir_Default_Prefix instead of
6921 Sdefault.Object_Dir_Default_Name.
6922
c0040397 6923 * osint.ads, osint.adb:
65356e64
AC
6924 (Include_Dir_Default_Prefix, Object_Dir_Default_Prefix): New functions
6925 Minor reformatting.
6926
6927 * vms_conv.ads: Minor reformating
6928 Remove GNAT STANDARD and GNAT PSTA
6929
c0040397 6930 * vms_conv.adb:
65356e64
AC
6931 Allow GNAT MAKE to have several files on the command line.
6932 (Init_Object_Dirs): Use Osint.Object_Dir_Default_Prefix instead of
6933 Sdefault.Object_Dir_Default_Name.
6934 Minor Reformating
6935 Remove data for GNAT STANDARD
6936
c0040397 6937 * vms_data.ads:
65356e64
AC
6938 Add new compiler qualifier /PRINT_STANDARD (-gnatS)
6939 Remove data for GNAT STANDARD
6940 Remove options and documentation for -gnatwb/-gnatwB: these warning
6941 options no longer exist.
6942
69432003-11-13 Ed Falis <falis@gnat.com>
6944
6945 * 5zthrini.adb: (Init_RTS): Made visible
6946
c0040397 6947 * 5zthrini.adb:
65356e64
AC
6948 (Register): Removed unnecessary call to taskVarGet that checked whether
6949 an ATSD was already set as a task var for the argument thread.
6950
c0040397 6951 * s-thread.adb:
65356e64
AC
6952 Updated comment to reflect that this is a VxWorks version
6953 Added context clause for System.Threads.Initialization
6954 Added call to System.Threads.Initialization.Init_RTS
6955
69562003-11-13 Jerome Guitton <guitton@act-europe.fr>
6957
c0040397 6958 * 5zthrini.adb:
65356e64
AC
6959 (Init_RTS): New procedure, for the initialization of the run-time lib.
6960
c0040397 6961 * s-thread.adb:
65356e64
AC
6962 Remove dependancy on System.Init, so that this file can be used in the
6963 AE653 sequential run-time lib.
6964
69652003-11-13 Robert Dewar <dewar@gnat.com>
6966
6967 * bindgen.adb: Minor reformatting
6968
69692003-11-13 Ed Schonberg <schonberg@gnat.com>
6970
c0040397 6971 * checks.adb:
65356e64
AC
6972 (Apply_Discriminant_Check): Do no apply check if target type is derived
6973 from source type with no applicable constraint.
6974
c0040397 6975 * lib-writ.adb:
65356e64
AC
6976 (Ensure_System_Dependency): Do not apply the style checks that may have
6977 been specified for the main unit.
6978
c0040397 6979 * sem_ch8.adb:
65356e64
AC
6980 (Find_Selected_Component): Further improvement in error message, with
6981 RM reference.
6982
c0040397 6983 * sem_res.adb:
65356e64
AC
6984 (Resolve): Handle properly the case of an illegal overloaded protected
6985 procedure.
6986
69872003-11-13 Javier Miranda <miranda@gnat.com>
6988
c0040397 6989 * exp_aggr.adb:
65356e64
AC
6990 (Has_Default_Init_Comps): New function to check the presence of
6991 default initialization in an aggregate.
6992 (Build_Record_Aggr_Code): Recursively expand the ancestor in case of
6993 extension aggregate of a limited record. In addition, a new formal
6994 was added to do not initialize the record controller (if any) during
6995 this recursive expansion of ancestors.
6996 (Init_Controller): Add support for limited record components.
6997 (Expand_Record_Aggregate): In case of default initialized components
6998 convert the aggregate into a set of assignments.
6999
7000 * par-ch4.adb (P_Aggregate_Or_Paren_Expr): Update the comment
7001 describing the new syntax.
7002 Nothing else needed to be done because this subprogram delegates part of
7003 its work to P_Precord_Or_Array_Component_Association.
7004 (P_Record_Or_Array_Component_Association): Give support to the new
7005 syntax for default initialization of components.
7006
c0040397 7007 * sem_aggr.adb:
65356e64
AC
7008 (Resolve_Aggregate): Relax the strictness of the frontend in case of
7009 limited aggregates.
7010 (Resolve_Record_Aggregate): Give support to default initialized
7011 components.
7012 (Get_Value): In case of default initialized components, duplicate
7013 the corresponding default expression (from the record type
7014 declaration). In case of default initialization in the *others*
7015 choice, do not check that all components have the same type.
7016 (Resolve_Extension_Aggregate): Give support to limited extension
7017 aggregates.
7018
c0040397 7019 * sem_ch3.adb:
65356e64
AC
7020 (Check_Initialization): Relax the strictness of the front-end in case
7021 of aggregate and extension aggregates. This test is now done in
7022 Get_Value in a per-component manner.
7023
7024 * sem_ch4.adb (Analyze_Allocator): Don't post an error if the
7025 expression corresponds to a limited aggregate. This test is now done
7026 in Get_Value.
7027
7028 * sinfo.ads, sinfo.adb (N_Component_Association): Addition of
7029 Box_Present flag.
7030
7031 * sprint.adb (Sprint_Node_Actual): Modified to print an mbox if
7032 present in an N_Component_Association node
7033
70342003-11-13 Thomas Quinot <quinot@act-europe.fr>
7035
7036 * sem_ch9.adb (Analyze_Accept_Statement): A procedure hides a
7037 type-conformant entry only if they are homographs.
7038
70392003-11-13 GNAT Script <nobody@gnat.com>
7040
7041 * Make-lang.in: Makefile automatically updated
7042
49add53f
RO
70432003-11-12 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
7044
7045 * adadecode.c: Use <> form of include for ctype.h.
7046 * sysdep.c [IN_RTS]: Use <> form of include for time.h.
7047
94bae1cc
RO
70482003-11-12 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
7049
7050 * 5gsystem.ads (Functions_Return_By_DSP): Set to False.
7051 Works around PR middle-end/6552.
7052
463f452c
AC
70532003-11-10 Ed Falis <falis@gnat.com>
7054
7055 * 5ytiitho.adb: (procStartHookAdd): Definition and call deleted
7056
7057 * 5zinit.adb: (Install_Handler): Moved back to spec
7058 (Install_Signal_Handlers): Deleted
7059
7060 * 5zthrini.adb: Added context clause for System.Storage_Elements
7061 (Register): Only handles creation of taskVar; initialization moved to
7062 Thread_Body_Enter.
7063 (Reset_TSD): Deleted; replaced by Thread_Body_Enter
7064 Added declaration of environment task secondary stack and
7065 initialization.
7066
7067 * s-thread.adb: Implement bodies for thread body processing
7068
c0040397 7069 * s-thread.ads:
463f452c
AC
7070 Added comment identifying supported targets for pragma Thread_Body.
7071
70722003-11-10 Pascal Obry <obry@gnat.com>
7073
7074 * adaint.c (_gnat_stat) [WIN32]: Check if name is not bigger than
7075 GNAT_MAX_PATH_LEN.
7076
c0040397 7077 * s-fileio.adb:
463f452c
AC
7078 (Open): Properly check for string length before copying into the buffer.
7079 Raises Name_Error if buffer is too small. Note that this was a potential
7080 buffer overflow.
7081
70822003-11-10 Romain Berrendonner <berrendo@act-europe.fr>
7083
7084 * bindgen.adb, comperr.adb: Code clean ups.
7085 * gnatvsn.ads, gnatvsn.adb (Get_Gnat_Version_Type): New function.
7086
70872003-11-10 Sergey Rybin <rybin@act-europe.fr>
7088
7089 * gnat1drv.adb: Add call to Sem_Elim.Initialize.
7090
70912003-11-10 Vincent Celier <celier@gnat.com>
7092
c0040397 7093 * gprcmd.adb:
463f452c
AC
7094 (Gprcmd): Add new command "prefix" to get the prefix of the GNAT
7095 installation.
7096
7097 * make.adb (Scan_Make_Arg): Transmit -nostdlib to the compiler
7098
7099 * prj.adb: (Project_Empty): Add new boolean component Virtual
7100
7101 * prj.ads: (Virtual_Prefix): New constant string
7102 (Project_Data): New boolean component Virtual
7103
7104 * prj-nmsc.adb (Language_Independent_Check): Adjust error message when
7105 a library project is extended by a virtual extending project.
7106
c0040397 7107 * prj-part.adb:
463f452c
AC
7108 Modifications throughout to implement extending-all project, including:
7109 (Virtual_Hash, Processed_Hash): New hash tables
7110 (Create_Virtual_Extending_Project): New procedure
7111 (Look_For_Virtual_Projects_For): New procedure
7112
c0040397 7113 * prj-proc.adb:
463f452c
AC
7114 (Process): After checking the projects, if main project is an
7115 extending-all project, set the object directory of all virtual extending
7116 project to the object directory of the main project.
7117 Adjust error message when a virtual extending project has the same
7118 object directory as an project being extended.
7119 (Recursive_Process): If name starts with the virtual prefix, set Virtual
7120 to True in the project data.
7121
c0040397 7122 * prj-tree.adb:
463f452c
AC
7123 (Default_Project_Node): Add new boolean component Extending_All
7124 (Is_Extending_All): New function
7125 (Set_Is_Extending_All): New procedure
7126
7127 * prj-tree.ads: (Is_Extending_All): New function
7128 (Set_Is_Extending_All): New procedure
7129 (Project_Node_Record): New boolean component Extending_All
7130
7131 * switch-c.adb: (Scan_Front_End_Switches): Process -nostdlib
7132
c0040397 7133 * vms_data.ads:
463f452c
AC
7134 Add qualifier /NOSTD_LIBRARIES (-nostdlib) for the compiler
7135
7136 * bld.adb (Recursive_Process): If MAKE_ROOT is not defined, call
7137 "gprcmd prefix" to define it.
7138
71392003-11-10 Thomas Quinot <quinot@act-europe.fr>
7140
7141 * einfo.ads: Fix a typo and remove an extraneous word in comments.
7142
c0040397 7143 * lib-load.adb:
463f452c
AC
7144 (Create_Dummy_Package_Unit): Set the scope of the entity for the
7145 created dummy package to Standard_Standard, not to itself, to
7146 defend other parts of the front-end against encoutering a cycle in
7147 the scope chain.
7148
c0040397 7149 * sem_ch10.adb:
463f452c
AC
7150 (Analyze_With_Clause): When setting the entities for the successive
7151 N_Expanded_Names that constitute the name of a child unit, do not
7152 attempt to go further than Standard_Standard in the chain of scopes.
7153 This case arises from the placeholder units created by
7154 Create_Dummy_Package_Unit in the case of a with_clause for a
7155 nonexistent child unit.
7156
71572003-11-10 Ed Schonberg <schonberg@gnat.com>
7158
c0040397 7159 * exp_ch6.adb:
463f452c
AC
7160 (Expand_Thread_Body): Place subprogram on scope stack, so that new
7161 declarations are given the proper scope.
7162
c0040397 7163 * sem_ch13.adb:
463f452c
AC
7164 (Check_Expr_Constants): Reject an expression that contains a constant
7165 created during expansion, and that appears after the object to which
7166 the address clause applies.
7167
7168 * sem_ch5.adb (Check_Controlled_Array_Attribute): Subsidiary of
7169 Analyze_Iteration_Scheme, to rewrite a loop parameter specification
7170 that uses 'Range of a function call with controlled components, so
7171 that the function result can be finalized before starting the loop.
7172
c0040397 7173 * sem_ch8.adb:
463f452c
AC
7174 (Find_Selected_Component): Improve error message when prefix is
7175 an implicit dereference of an incomplete type.
7176
71772003-11-10 Robert Dewar <dewar@gnat.com>
7178
7179 * opt.ads: New Print_Standard flag for -gnatS switch
7180
7181 * sem_ch13.adb: Remove some additional checks for unaligned arrays
7182
7183 * cstand.adb (Create_Standard): Print out package standard if -gnatS
7184 switch set
7185
7186 * debug.adb: Update doc for -gnatds to discuss relationship with new
7187 -gnatS flag
7188
7189 * sinfo.adb: Add new field Entity_Or_Associated_Node
7190
7191 * sinfo.ads: Add new field Entity_Or_Associated_Node
7192 Update documentation for Associated_Node and Entity fields to clarify
7193 relationship and usage.
7194
c0040397 7195 * sprint.adb:
463f452c
AC
7196 (Write_Id): Properly process Associated_Node field in generic template
7197
c0040397 7198 * switch-c.adb:
463f452c
AC
7199 Recognize new -gnatS switch for printing package Standard
7200 This replaces gnatpsta
7201
c0040397 7202 * usage.adb:
463f452c
AC
7203 Add line for new -gnatS switch for printing package Standard
7204 This replaces gnatpsta
7205
c77c5f2e
AJ
72062003-11-10 Andreas Jaeger <aj@suse.de>
7207
7208 * 7sosprim.adb: tv_usec of struct_timeval and time_t are long
7209 integer.
7210
5c90f17f
AC
72112003-11-10 Arnaud Charlet <charlet@act-europe.fr>
7212
7213 * misc.c, lang.opt: Add handling of -nostdlib, now recognized/needed
7214 by gnat1.
7215
139f0d1e
AC
72162003-11-10 Arnaud Charlet <charlet@act-europe.fr>
7217
7218 * Makefile.in, Make-lang.in: Remove build of gnat_wrapper and gnatpsta,
7219 no longer needed.
7220
7221 * gnatpsta.adb, gnat_wrapper.adb: Removed, no longer needed.
7222
7223 * sysdep.c: Add handling of cygwin.
7224
f3e4c05c
GS
72252003-11-10 GNAT Script <nobody@gnat.com>
7226
7227 * Make-lang.in: Makefile automatically updated
7228
2cdc8909
AC
72292003-11-10 Arnaud Charlet <charlet@act-europe.fr>
7230
7231 PR 12950
7232 * osint.ads, osint.adb (Relocate_Path, Executable_Suffix): New
7233 functions. Used to handle dynamic prefix relocation, via set_std_prefix.
7234 Replace GNAT_ROOT by GCC_ROOT.
7235
7236 * Make-lang.in: Use new function Relocate_Path to generate sdefault.adb
7237
37783865
ZW
72382003-11-06 Zack Weinberg <zack@codesourcery.com>
7239
7240 * misc.c (fp_prec_to_size, fp_size_to_prec): Use GET_MODE_PRECISION
7241 and update for changed meaning of GET_MODE_BITSIZE.
7242
6bc1c519
AC
72432003-11-04 Doug Rupp <rupp@gnat.com>
7244
7245 * sysdep.c: Problem discovered during IA64 VMS port.
7246 [VMS] #include <unixio.h> to get proper prototypes.
7247
37783865 7248 * adaint.c:
6bc1c519
AC
7249 Issues discovered/problems fixed during IA64 VMS port.
7250 [VMS] #define _POSIX_EXIT for proper semantics.
7251 [VMS] #include <unixio.h> for proper prototypes.
7252 [VMS] (fork): #define IA64 version.
7253 (__gnat_os_exit): Remove unnecessary VMS specific code.
7254
72552003-11-04 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
7256
7257 Part of PR ada/12806
7258
7259 * ada-tree.h (TYPE_DIGITS_VALUE, SET_TYPE_DIGITS_VALUE): Save count as
7260 tree, not integer.
7261
37783865 7262 * decl.c:
6bc1c519
AC
7263 (gnat_to_gnu_entity, case E_Floating_Point_Type): Save count as tree,
7264 not integer.
7265
7266 * targtyps.c, decl.c, misc.c,
7267 gigi.h (fp_prec_to_size, fp_size_to_prec): Temporary
7268 routines to work around change in FP sizing semantics in GCC.
7269
37783865 7270 * utils.c:
6bc1c519
AC
7271 (build_vms_descriptor): TYPE_DIGITS_VALUE is tree, not integer.
7272
7273 * gigi.h: (enumerate_modes): New function.
7274
7275 * Make-lang.in: (ada/misc.o): Add real.h.
7276
7277 * misc.c: (enumerate_modes): New function.
7278
72792003-11-04 Robert Dewar <dewar@gnat.com>
7280
7281 * 3vtrasym.adb: Minor reformatting
7282 Use terminology encoded/decoded name, rather than C++ specific notion
7283 of mangling (this is the terminology used throughout GNAT).
7284
7285 * einfo.h: Regenerated
7286
7287 * einfo.ads, einfo.adb: Add new flag Is_Thread_Body
7288
37783865 7289 * exp_ch6.adb:
6bc1c519
AC
7290 (Expand_N_Subprogram_Body): Handle expansion of thread body procedure
7291
7292 * par-prag.adb: Add dummy entry for Thread_Body pragma
7293
37783865 7294 * rtsfind.ads:
6bc1c519
AC
7295 Add entries for System.Threads entities for thread body processing
7296
37783865 7297 * sem_attr.adb:
6bc1c519
AC
7298 (Analyze_Pragma, Access attributes): Check these are not applied to a
7299 thread body, since this is not permitted
7300
7301 * sem_prag.adb: Add processing for Thread_Body pragma.
7302 Minor comment fix.
7303
37783865 7304 * sem_res.adb:
6bc1c519
AC
7305 (Resolve_Call): Check for incorrect attempt to call a thread body
7306 procedure with a direct call.
7307
7308 * snames.ads, snames.adb: Add entry for Thread_Body pragma
7309 Add names associated with thread body expansion
7310
7311 * snames.h: Add entry for Thread_Body pragma
7312
7313 * s-thread.adb: Add entries for thread body processing
7314 These are dummy bodies so far
7315
7316 * s-thread.ads: Add documentation on thread body handling.
7317 Add entries for thread body processing.
7318
73192003-11-04 Javier Miranda <miranda@gnat.com>
7320
37783865 7321 * sem_ch10.adb:
6bc1c519
AC
7322 (Build_Limited_Views): Return after posting an error in case of limited
7323 with_clause on subprograms, generics, instances or generic renamings
7324 (Install_Limited_Withed_Unit): Do nothing in case of limited with_clause
7325 on subprograms, generics, instances or generic renamings
7326
73272003-11-04 Arnaud Charlet <charlet@act-europe.fr>
7328
7329 * raise.c (setup_to_install): Correct mistake in last revision; two
7330 arguments out of order.
7331
7332 * trans.c, cuintp.c, argv.c, aux-io.c, cal.c, errno.c, exit.c,
7333 gnatbl.c, init.c, stringt.h, utils.c, utils2.c: Update copyright
7334 notice, missed in previous change.
7335 Remove trailing blanks and other style errors introduced in previous
7336 change.
7337
73382003-11-04 Olivier Hainque <hainque@act-europe.fr>
7339
7340 * decl.c (gnat_to_gnu_field): Adjust the conditions under which we get
7341 rid of the wrapper for a LJM type, ensuring we don't do that if the
7342 field is addressable. This avoids potential low level type view
7343 mismatches later on, for instance in a by-reference argument passing
7344 process.
7345
73462003-11-04 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
7347
7348 * decl.c (gnat_to_gnu_field): No longer check for BLKmode being
7349 aligned at byte boundary.
7350
73512003-11-04 Joel Brobecker <brobecker@gnat.com>
7352
7353 * decl.c (components_to_record): Do not delete the empty variants from
7354 the end of the union type.
7355
73562003-11-04 Ed Schonberg <schonberg@gnat.com>
7357
7358 * exp_ch4.adb (Expand_N_Op_Eq): Use base type when locating primitive
7359 operation for a derived type, an explicit declaration may use a local
7360 subtype of Boolean.
7361
73622003-11-04 Vincent Celier <celier@gnat.com>
7363
7364 * make.adb (Gnatmake): Allow main sources on the command line with a
7365 library project when it is only for compilation (no binding or
7366 linking).
7367
487e9fff
RO
73682003-11-04 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
7369
7370 * Makefile.in: Remove many duplicate variables.
7371
63069342
KC
73722003-11-03 Kelley Cook <kcook@gcc.gnu.org>
7373
7374 * Make-lang.in (dvi): Move targets to $(docobjdir).
7375 (gnat_ug_vms.dvi): Simplify rule and adjust target.
7376 (gnat_ug_wnt.dvi): Likewise.
7377 (gnat_ug_unx.dvi): Likewise.
7378 (gnat_ug_vxw.dvi): Likewise.
7379 (gnat_rm.dvi): Likewise.
7380 (gnat-style.dvi): Likewise.
7381
c2edc52b
KC
73822003-10-31 Kelley Cook <kcook@gcc.gnu.org>
7383
7384 * gigi.h: Missed commit from update for C90.
7385
14df9585
KC
73862003-10-31 Kelley Cook <kcook@gcc.gnu.org>
7387
7388 * Makefile.in (ada/b_gnat1.o): Compile with -Wno-error.
7389
acd8e984
AS
73902003-10-31 Andreas Schwab <schwab@suse.de>
7391
7392 * raise.c (get_action_description_for): Fix typo in last change.
7393
b2c62c45
NN
73942003-10-31 Nathanael Nerode <neroden@gcc.gnu.org>
7395
7396 PR ada/12761
7397 * ada/Make-lang.in: Move default definitions of X_ADA_CFLAGS,
7398 T_ADA_CFLAGS, X_ADAFLAGS, T_ADAFLAGS from here to master Makefile.in.
7399
9373164a
KC
74002003-10-30 Kelley Cook <kcook@gcc.gnu.org>
7401
7402 * adadecode.c, adaint.c, argv.c, aux-io.c, cal.c, cio.c, cstreams.c,
7403 ctrl_c.c, cuintp.c, decl.c, errno.c, exit.c, expect.c, final.c,
7404 gigi.h, gmem.c, gnatbl.c, init.c, misc.c, mkdir.c, raise.c, socket.c,
7405 sysdep.c, sysdep.c, targtyps.c, tb-alvms.c, tb-alvxw.c, tracebak.c,
7406 trans.c, utils.c, utils2.c: Convert function prototypes to C90.
7407
bde58e32
AC
74082003-10-30 Vasiliy Fofanov <fofanov@act-europe.fr>
7409
37783865 7410 * 3vtrasym.adb:
bde58e32
AC
7411 Demangle Ada symbols returned by TBK$SYMBOLIZE. Correctly align line
7412 numbers when symbol name is too long.
7413
74142003-10-30 Ed Falis <falis@gnat.com>
7415
7416 * g-signal.ads, g-signal.adb: New files
7417
7418 * impunit.adb: (Non_Imp_File_Names): Added "g-signal"
7419
7420 * Makefile.rtl: Introduce GNAT.Signals
7421
74222003-10-30 Robert Dewar <dewar@gnat.com>
7423
7424 * freeze.adb: Minor reformatting
7425
7426 * lib-writ.adb (Write_ALI): Never write ali file if -gnats is specified
7427
37783865
ZW
7428 * par.adb, par-ch12.adb, par-ch13.adb, par-ch2.adb, par-ch3.adb,
7429 par-ch5.adb, par-ch6.adb, par-ch9.adb, par-util.adb:
bde58e32
AC
7430 New handling of Id_Check parameter to improve recognition of keywords
7431 used as identifiers.
7432 Update copyright notice to include 2003
7433
657a9dd9
AC
74342003-10-29 Robert Dewar <dewar@gnat.com>
7435
7436 * 3vtrasym.adb, 5vtraent.ads, sprint.adb,
7437 sem_ch10.adb: Minor reformatting
7438
7439 * exp_ch5.adb (Expand_Assign_Array): Test for bit unaligned operands
7440 (Expand_Assign_Record): Test right hand side for bit unaligned as well
7441
74422003-10-29 Vasiliy Fofanov <fofanov@act-europe.fr>
7443
37783865 7444 * 3vtrasym.adb, 5vtraent.adb, 5vtraent.ads, tb-alvms.c:
657a9dd9
AC
7445 Support for TBK$SYMBOLIZE-based symbolic traceback.
7446
74472003-10-29 Jose Ruiz <ruiz@act-europe.fr>
7448
37783865 7449 * exp_disp.adb:
657a9dd9
AC
7450 Revert previous change, that did not work well when pragma No_Run_Time
7451 was used in conjunction with a run-time other than ZFP.
7452
74532003-10-29 Vincent Celier <celier@gnat.com>
7454
37783865 7455 * make.adb:
657a9dd9
AC
7456 (Gnatmake): When there are no Ada mains in attribute Main, disable the
7457 bind and link steps only is switch -z is not used.
7458
74592003-10-29 Arnaud Charlet <charlet@act-europe.fr>
7460
7461 * Makefile.generic: Remove duplicated setting of CC.
7462
7463 * Makefile.prolog: Set CC to gcc by default, to override make's
7464 default (cc).
7465
7466 * einfo.h: Regenerated.
7467
74682003-10-29 Ed Schonberg <schonberg@gnat.com>
7469
7470 * sem_ch10.adb (Analyze_Subunit): Restore state of suppress flags for
7471 current body, after compiling subunit.
7472
7473 * itypes.adb (Create_Itype): In ASIS_Mode, do not freeze the itype
7474 when in deleted code, because gigi needs properly ordered freeze
7475 actions to annotate types.
7476
7477 * freeze.adb (Is_Fully_Defined): Predicate must be recursive, to
7478 prevent the premature freezing of record type that contains
7479 subcomponents with a private type that does not yet have a completion.
7480
74812003-10-29 Javier Miranda <miranda@gnat.com>
7482
37783865 7483 * sem_ch12.adb:
657a9dd9
AC
7484 (Analyze_Package_Instantiation): Check that instances can not be used in
7485 limited with_clauses.
7486
37783865 7487 * sem_ch8.adb:
657a9dd9
AC
7488 (Analyze_Package_Renaming): Check that limited withed packages cannot
7489 be renamed. Improve text on error messages related to limited
7490 with_clauses.
7491
7492 * einfo.adb, einfo.ads: Remove Non_Limited_Views attribute.
7493
7494 * sprint.adb: (Sprint_Node_Actual): Print limited with_clauses.
7495 Update copyright notice.
7496
7497 * sem_ch10.adb: (Build_Limited_Views): Complete its documentation.
7498 (Install_Limited_Context_Clauses): New subprogram that isolates all the
7499 checks required for limited context_clauses and installs the limited
7500 view.
7501 (Install_Limited_Withed_Unit): Complete its documentation.
7502 (Analyze_Context): Check that limited with_clauses are only allowed in
7503 package specs.
7504 (Install_Context): Call Install_Limited_Context_Clauses after the
7505 parents have been installed.
7506 (Install_Limited_Withed_Unit): Add documentation. Mark the installed
7507 package as 'From_With_Type'; this mark indicates that the limited view
7508 is installed. Used to check bad usages of limited with_clauses.
7509 (Build_Limited_Views): Do not add shadow entities to the scope's list
7510 of entities. Do not add real entities to the Non_Limited_Views chain.
7511 Improve error notification.
7512 (Remove_Context_Clauses): Remove context clauses in two phases:
7513 limited views first and regular views later (to maintain the
7514 stack model).
7515 (Remove_Limited_With_Clause): If the package is analyzed then reinstall
7516 its visible entities.
7517
75182003-10-29 Thomas Quinot <quinot@act-europe.fr>
7519
7520 * sem_type.adb (Specific_Type): Type Universal_Fixed is compatible
7521 with any type that Is_Fixed_Point_Type.
7522
7523 * sinfo.ads: Fix documentation for Associated_Node attribute.
7524
75252003-10-29 Sergey Rybin <rybin@act-europe.fr>
7526
7527 * switch-c.adb (Scan_Front_End_Switches): ASIS_Mode is set now when
7528 both '-gnatc' and '-gnatt' are specified.
7529
7530 * atree.adb (Initialize): Add initialization for Node_Count (set to
7531 zero).
7532
75332003-10-29 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
7534
7535 * decl.c (gnat_to_gnu_entity, case E_Subprogram): If no return value,
7536 do not consider as Pure.
7537
7538 Part of implementation of function-at-a-time:
7539
7540 * trans.c (gnat_to_gnu_code): If IS_STMT, call expand_expr_stmt.
7541 (tree_transform): Add new argument to build_component_ref.
7542 (tree_transform, case N_Assignment_Statement): Make and return an
7543 EXPR_STMT.
7544 (tree_transform): If result IS_STMT, set flags and return it.
7545 (gnat_expand_stmt, set_lineno_from_sloc): New functions.
7546
7547 * utils2.c (build_simple_component_ref, build_component_ref): Add new
7548 arg, NO_FOLD_P.
7549 (build_binary_op, case EQ_EXPR): Pass additional arg to it.
7550 (build_allocator): Likewise.
7551
7552 * utils.c (convert_to_fat_pointer, convert_to_thin_pointer, convert):
7553 Add new arg to build_component_ref.
7554 (maybe_unconstrained_array, unchecked_convert): Likewise.
7555
7556 * ada-tree.def (EXPR_STMT): New code.
7557
7558 * ada-tree.h (IS_STMT, TREE_SLOC, EXPR_STMT_EXPR): New macros.
7559
7560 * decl.c (gnat_to_gnu_entity, case object): Add extra arg to
7561 build_component_ref calls.
7562
7563 * misc.c (gnat_expand_expr): If IS_STMT, call gnat_expand_stmt.
7564
7565 * gigi.h (gnat_expand_stmt, set_lineno_from_sloc): New functions.
7566 (build_component_ref): Add new argument, NO_FOLD_P.
7567
ecad994d
AC
75682003-10-27 Arnaud Charlet <charlet@act-europe.fr>
7569
7570 * Makefile.generic: Add missing substitution on object_deps handling.
7571
7572 PR ada/5909:
7573 * Make-lang.in (check-ada): Enable ACATS test suite.
7574
75752003-10-27 Robert Dewar <dewar@gnat.com>
7576
37783865 7577 * exp_ch3.adb:
ecad994d
AC
7578 (Freeze_Array_Type): We do not need an initialization routine for types
7579 derived from String or Wide_String. They should be treated the same
7580 as String and Wide_String themselves. This caused problems with the
7581 use of Initialize_Scalars.
7582
37783865 7583 * exp_ch5.adb:
ecad994d
AC
7584 (Expand_Assign_Record): Do component-wise assignment of non-byte aligned
7585 composites. This allows use of component clauses that are not byte
7586 aligned.
7587
37783865 7588 * sem_prag.adb:
ecad994d
AC
7589 (Analyze_Pragma, case Pack): Generate warning and ignore pack if there
7590 is an attempt to pack an array of atomic objects.
7591
7592 * make.adb, prj-env.adb, prj-env.ads: Minor reformatting
7593
75942003-10-27 Pascal Obry <obry@gnat.com>
7595
37783865 7596 * g-dirope.adb:
ecad994d
AC
7597 (Basename): Check for drive letters in a pathname only on DOS based OS.
7598
75992003-10-27 Vincent Celier <celier@gnat.com>
7600
37783865 7601 * make.adb:
ecad994d
AC
7602 (Gnatmake): When unable to change dir to the object dir, display the
7603 content of the parent dir of the obj dir, to try to understand why this
7604 happens.
7605
76062003-10-27 GNAT Script <nobody@gnat.com>
7607
7608 * Make-lang.in: Makefile automatically updated
7609
76102003-10-27 Ed Schonberg <schonberg@gnat.com>
7611
37783865 7612 * sem_ch12.adb:
ecad994d
AC
7613 (Inline_Instance_Body): Indicate that the save/restore of use_clauses
7614 should not be done in Save/Restore_Scope_Stack, because it is performed
7615 locally.
7616
37783865 7617 * sem_ch8.adb:
ecad994d
AC
7618 (Save_Scope_Stack, Restore_Scope_Stack): Add parameter to indicate
7619 whether use clauses should be removed/restored.
7620
37783865 7621 * sem_ch8.ads:
ecad994d
AC
7622 (Save_Scope_Stack, Restore_Scope_Stack): Add parameter to indicate
7623 whether use clauses should be removed/restored.
7624
b6b3c138
AJ
76252003-10-26 Andreas Jaeger <aj@suse.de>
7626
7627 * Makefile.in: Remove duplicated lines.
7628
b6d83931
AC
76292003-10-24 Arnaud Charlet <charlet@act-europe.fr>
7630
7631 * gnatvsn.ads (Gnat_Static_Version_String): New constant, used to
7632 minimize the differences with ACT tree.
7633
7634 * gnatkr.adb, gnatlink.adb, gnatls.adb, gnatmake.adb,
7635 gnatprep.adb, gnatpsta.adb, gnatvsn.ads: Take advantage of
7636 Gnatvsn.Gnat_Static_Version_String to reduce differences between
7637 ACT and FSF trees.
7638
76392003-10-24 Pascal Obry <obry@gnat.com>
7640
7641 * adadecode.c (ostrcpy): New function.
7642 (__gnat_decode): Use ostrcpy of strcpy.
7643 (has_prefix): Set first parameter a const.
7644 (has_suffix): Set first parameter a const.
7645 Update copyright notice. Fix source name in header.
7646 Removes a trailing space.
7647 PR ada/12014.
7648
76492003-10-24 Jose Ruiz <ruiz@act-europe.fr>
7650
b6b3c138 7651 * exp_disp.adb:
b6d83931
AC
7652 Remove the test against being in No_Run_Time_Mode before generating a
7653 call to Register_Tag. It is redundant with the test against the
7654 availability of the function Register_Tag.
7655
76562003-10-24 Vincent Celier <celier@gnat.com>
7657
7658 * g-catiio.adb: (Month_Name): Correct spelling of February
7659
7660 * make.adb: (Mains): New package
7661 (Initialize): Call Mains.Delete
7662 (Gnatmake): Check that each main on the command line is a source of a
7663 project file and, if there are several mains, each of them is a source
7664 of the same project file.
7665 (Gnatmake): When a foreign language is specified in attribute Languages,
7666 no main is specified on the command line and attribute Mains is not
7667 empty, only build the Ada main. If there is no Ada main, just compile
7668 the Ada sources and their closure.
7669 (Gnatmake): If a main is specified on the command line with directory
7670 information, check that the source exists and, if it does, that the path
7671 is the actual path of a source of a project.
7672
b6b3c138 7673 * prj-env.adb:
b6d83931
AC
7674 (File_Name_Of_Library_Unit_Body): New Boolean parameter Full_Path. When
7675 Full_Path is True, return the full path instead of the simple file name.
7676 (Project_Of): New function
7677
b6b3c138 7678 * prj-env.ads:
b6d83931
AC
7679 (File_Name_Of_Library_Unit_Body): New Boolean parameter Full_Path,
7680 defaulted to False.
7681 (Project_Of): New function
7682
76832003-10-24 Arnaud Charlet <charlet@act-europe.fr>
7684
b6b3c138 7685 * Makefile.generic:
b6d83931
AC
7686 Ensure objects of main project are always checked and rebuilt if needed.
7687 Set CC to gcc by default.
7688 Prepare new handling of link by creating a global archive (not activated
7689 yet).
7690
7691 * adadecode.h, atree.h, elists.h, nlists.h, raise.h,
7692 stringt.h: Update copyright notice. Remove trailing blanks.
7693 Fix source name in header.
7694
76952003-10-24 Robert Dewar <dewar@gnat.com>
7696
7697 * sem_ch12.adb: Minor reformatting
7698
b6b3c138 7699 * sem_ch3.adb:
b6d83931
AC
7700 Minor reformatting (including new function return style throughout)
7701
b6b3c138 7702 * sem_ch3.ads:
b6d83931
AC
7703 Minor reformatting (including new function return style throughout)
7704
77052003-10-24 Arnaud Charlet <charlet@act-europe.fr>
7706
7707 * adadecode.h, atree.h, elists.h, nlists.h, raise.h,
7708 stringt.h: Update copyright notice. Remove trailing blanks.
7709 Fix source name in header.
7710
77112003-10-24 GNAT Script <nobody@gnat.com>
7712
7713 * Make-lang.in: Makefile automatically updated
7714
b4e2d709
NN
77152003-10-23 Nathanael Nerode <neroden@gcc.gnu.org>
7716
7717 * adadecode.h, atree.h, elists.h, namet.h, nlists.h, raise.h,
7718 stringt.h: Convert to ISO C90 declarations and definitions.
7719
9d7d51be
AC
77202003-10-23 Thomas Quinot <quinot@act-europe.fr>
7721
7722 PR ada/11978:
7723 * exp_ch13.adb (Expand_N_Freeze_Entity): Do not consider inherited
7724 External_Tag attribute definition clauses.
7725
77262003-10-23 Ed Schonberg <schonberg@gnat.com>
7727
7728 PR ada/7613:
7729 * exp_dbug.adb (Debug_Renaming_Declaration): For the renaming of a
7730 child unit, generate a fully qualified name to avoid spurious errors
7731 when the context contains renamings of different child units with
7732 the same simple name.
7733
7734 * exp_dbug.ads: Add documentation on name qualification for renamings
7735 of child units.
7736
77372003-10-23 Robert Dewar <dewar@gnat.com>
7738
7739 * g-regpat.ads, g-regpat.adb: Minor reformatting
7740
77412003-10-23 Jose Ruiz <ruiz@act-europe.fr>
7742
7743 * Makefile.in: Use the file 1atags.ads with the ZFP and cert run-times.
7744
77452003-10-23 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
7746
7747 * trans.c: (tree_transform, case N_Real_Literal): Add extra arg to
7748 Machine call.
7749
7750 * urealp.h: (Machine): Update to proper definition.
7751
6d244bbe
AC
77522003-10-23 Arnaud Charlet <charlet@act-europe.fr>
7753
7754 * init.c, adaint.c: Minor reformatting.
7755
8f4eb34b
DS
77562003-10-23 Danny Smith <dannysmith@users.sourceforge.net>
7757
6d244bbe 7758 * adaint.c (w32_epoch_offset): Define static const at file level.
8f4eb34b
DS
7759 (win32_filetime): Replace offset with w32_epoch_offset. Use NULL
7760 rather than t_create, t_access in call to GetFileTime. Use union
7761 to convert between FILETIME and unsigned long long.
7762 (__gnat_file_time_name): Test for invalid file handle.
7763 (__gnat_set_filetime_name): Support win32 targets using
7764 w32api SetFileTime.
7765
25412599
DS
77662003-10-22 Danny Smith <dannysmith@users.sourceforge.net>
7767
7768 * sysdep.c: Include conio.h if __MINGW32__ and !OLD_MINGW.
7769
7770 * ctrl_c.c (__gnat_int_handler): Remove declaration.
7771
7772 * decl.c (creat_concat_name): Const-ify prefix.
7773
7774 * adaint.c: Include ctype.h if __MINGW32__.
7775 (__gnat_readlink): Mark arguments as possibly unused.
7776 (__gnat_symlink): Likewise.
7777 (__gnat_is_symbolic_link): Likewise.
7778 (__gnat_portable_spawn): Likewise. Cast last arg of spawnvp to match
7779 declaration
b6b3c138 7780 (__gnat_file_time_name): Don't declare struct stat statbuf when
25412599
DS
7781 not needed.
7782 (__gnat_is_absolute_path): Add parenthesis around condition of
7783 'if' statement to avoid warning.
7784 (__gnat_plist_init): Specify void as parameter.
7785 (plist_enter): Likewise.
7786 (plist_leave): Likewise.
7787 (remove_handle): Make static. Initialize prev.
7788
698a5e79
AC
77892003-10-22 Arnaud Charlet <charlet@act-europe.fr>
7790
6d244bbe 7791 * Makefile.in: Disable build of gnatpsta. PR ada/10110.
698a5e79
AC
7792 * cstreams.c (__gnat_full_name): Minor improvements and clean up
7793 of previous change.
7794
e97c30aa
RO
77952003-10-22 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
7796
7797 * tracebak.c (MAX): Avoid redefinition warning.
7798
7799 * init.c [sgi] (__gnat_error_handler): Remove i, unused.
7800 Change msg to const char *.
7801 (__gnat_install_handler): Remove ss, unused.
7802 [sun && __SVR4 && !__vxworks] (__gnat_error_handler): Change msg
7803 to const char *.
7804 * cstreams.c (__gnat_full_name): Declare p only when used.
7805 (__gnat_full_name) [sgi] Return buffer.
7806
65f1ebd1
AC
78072003-10-22 Arnaud Charlet <charlet@act-europe.fr>
7808
7809 * mingw32.h: New file.
0c644933
AC
7810 * gnat_wrapper.adb: New file.
7811
6d244bbe 78122003-10-22 Jerome Roussel <roussel@act-europe.fr>
0c644933
AC
7813
7814 * g-regpat.ads, g-regpat.adb (Match): new function, to know if a
7815 string match a pre compiled regular expression (the corresponding
7816 version of the function working on a raw regular expression)
7817 Fix typos in various comments
7818 Update copyright notice in spec
7819
6d244bbe 78202003-10-21 Gary Dismukes <dismukes@gnat.com>
0c644933 7821
b6b3c138 7822 * exp_ch3.adb:
0c644933
AC
7823 (Component_Needs_Simple_Initialization): Return False when the type is a
7824 packed bit array. Revise spec comments to document this case.
7825
b6b3c138 7826 * exp_prag.adb:
0c644933
AC
7827 (Expand_Pragma_Import): Set any expression on the imported object to
7828 empty to avoid initializing imported objects (in particular this
7829 covers the case of zero-initialization of bit arrays).
7830 Update copyright notice.
7831
6d244bbe 78322003-10-21 Ed Schonberg <schonberg@gnat.com>
0c644933 7833
b6b3c138 7834 * sem_ch12.adb:
0c644933
AC
7835 (Load_Parent_Of_Generic): If parent is compilation unit, stop search,
7836 a subunit is missing.
7837 (Instantiate_Subprogram_Body): If body of function is missing, set type
7838 of return expression explicitly in dummy body, to prevent cascaded
7839 errors when a subunit is missing.
7840 Fixes PR 5677.
7841
b6b3c138 7842 * sem_ch3.adb:
0c644933
AC
7843 (Access_Subprogram_Declaration): Verify that return type is valid.
7844 Fixes PR 8693.
7845
b6b3c138 7846 * sem_elab.adb:
0c644933
AC
7847 (Check_Elab_Calls): Do not apply elaboration checks if the main unit is
7848 generic.
7849 Fixes PR 12318.
7850
b6b3c138 7851 * sem_util.adb:
0c644933
AC
7852 (Corresponding_Discriminant): If the scope of the discriminant is a
7853 private type without discriminant, use its full view.
7854 Fixes PR 8247.
65f1ebd1 7855
fbf5a39b
AC
78562003-10-21 Arnaud Charlet <charlet@act-europe.fr>
7857
7858 * 3psoccon.ads, 3veacodu.adb, 3vexpect.adb, 3vsoccon.ads,
7859 3vsocthi.adb, 3vsocthi.ads, 3vtrasym.adb, 3zsoccon.ads,
7860 3zsocthi.adb, 3zsocthi.ads, 50system.ads, 51system.ads,
7861 55system.ads, 56osinte.adb, 56osinte.ads, 56taprop.adb,
7862 56taspri.ads, 56tpopsp.adb, 57system.ads, 58system.ads,
7863 59system.ads, 5aml-tgt.adb, 5bml-tgt.adb, 5csystem.ads,
7864 5dsystem.ads, 5fosinte.adb, 5gml-tgt.adb, 5hml-tgt.adb,
7865 5isystem.ads, 5lparame.adb, 5msystem.ads, 5psystem.ads,
7866 5sml-tgt.adb, 5sosprim.adb, 5stpopsp.adb, 5tsystem.ads,
7867 5usystem.ads, 5vml-tgt.adb, 5vsymbol.adb, 5vtraent.adb,
7868 5vtraent.ads, 5wml-tgt.adb, 5xparame.ads, 5xsystem.ads,
7869 5xvxwork.ads, 5yparame.ads, 5ytiitho.adb, 5zinit.adb,
7870 5zml-tgt.adb, 5zparame.ads, 5ztaspri.ads, 5ztfsetr.adb,
7871 5zthrini.adb, 5ztiitho.adb, 5ztpopsp.adb, 7stfsetr.adb,
7872 7straces.adb, 7strafor.adb, 7strafor.ads, 7stratas.adb,
7873 a-excach.adb, a-exexda.adb, a-exexpr.adb, a-exextr.adb,
7874 a-exstat.adb, a-strsup.adb, a-strsup.ads, a-stwisu.adb,
7875 a-stwisu.ads, bld.adb, bld.ads, bld-io.adb,
7876 bld-io.ads, clean.adb, clean.ads, ctrl_c.c,
7877 erroutc.adb, erroutc.ads, errutil.adb, errutil.ads,
7878 err_vars.ads, final.c, g-arrspl.adb, g-arrspl.ads,
7879 g-boubuf.adb, g-boubuf.ads, g-boumai.ads, g-bubsor.adb,
7880 g-bubsor.ads, g-comver.adb, g-comver.ads, g-ctrl_c.ads,
7881 g-dynhta.adb, g-dynhta.ads, g-eacodu.adb, g-excact.adb,
7882 g-excact.ads, g-heasor.adb, g-heasor.ads, g-memdum.adb,
7883 g-memdum.ads, gnatclean.adb, gnatsym.adb, g-pehage.adb,
7884 g-pehage.ads, g-perhas.ads, gpr2make.adb, gpr2make.ads,
7885 gprcmd.adb, gprep.adb, gprep.ads, g-semaph.adb,
7886 g-semaph.ads, g-string.adb, g-string.ads, g-strspl.ads,
7887 g-wistsp.ads, i-vthrea.adb, i-vthrea.ads, i-vxwoio.adb,
7888 i-vxwoio.ads, Makefile.generic, Makefile.prolog, Makefile.rtl,
7889 prep.adb, prep.ads, prepcomp.adb, prepcomp.ads,
7890 prj-err.adb, prj-err.ads, s-boarop.ads, s-carsi8.adb,
7891 s-carsi8.ads, s-carun8.adb, s-carun8.ads, s-casi16.adb,
7892 s-casi16.ads, s-casi32.adb, s-casi32.ads, s-casi64.adb,
7893 s-casi64.ads, s-casuti.adb, s-casuti.ads, s-caun16.adb,
7894 s-caun16.ads, s-caun32.adb, s-caun32.ads, s-caun64.adb,
7895 s-caun64.ads, scng.adb, scng.ads, s-exnint.adb,
7896 s-exnllf.adb, s-exnlli.adb, s-expint.adb, s-explli.adb,
7897 s-geveop.adb, s-geveop.ads, s-hibaen.ads, s-htable.adb,
7898 s-htable.ads, sinput-c.adb, sinput-c.ads, s-memcop.ads,
7899 socket.c, s-purexc.ads, s-scaval.adb, s-stopoo.adb,
7900 s-strcom.adb, s-strcom.ads, s-strxdr.adb, s-rident.ads,
7901 s-thread.adb, s-thread.ads, s-tpae65.adb, s-tpae65.ads,
7902 s-tporft.adb, s-traent.adb, s-traent.ads, styleg.adb,
7903 styleg.ads, styleg-c.adb, styleg-c.ads, s-veboop.adb,
7904 s-veboop.ads, s-vector.ads, symbols.adb, symbols.ads,
7905 tb-alvms.c, tb-alvxw.c, tempdir.adb, tempdir.ads,
7906 vms_conv.ads, vms_conv.adb, vms_data.ads,
7907 vxaddr2line.adb: Files added. Merge with ACT tree.
7908
7909 * 4dintnam.ads, 4mintnam.ads, 4uintnam.ads, 52system.ads,
7910 5dosinte.ads, 5etpopse.adb, 5mosinte.ads, 5qosinte.adb,
7911 5qosinte.ads, 5qstache.adb, 5qtaprop.adb, 5qtaspri.ads,
7912 5stpopse.adb, 5uintman.adb, 5uosinte.ads, adafinal.c,
7913 g-enblsp.adb, io-aux.c, scn-nlit.adb, scn-slit.adb,
7914 s-exnflt.ads, s-exngen.adb, s-exngen.ads, s-exnlfl.ads,
7915 s-exnlin.ads, s-exnsfl.ads, s-exnsin.ads, s-exnssi.ads,
7916 s-expflt.ads, s-expgen.adb, s-expgen.ads, s-explfl.ads,
7917 s-explin.ads, s-expllf.ads, s-expsfl.ads, s-expsin.ads,
7918 s-expssi.ads, style.adb: Files removed. Merge with ACT tree.
7919
7920 * 1ic.ads, 31soccon.ads, 31soliop.ads, 3asoccon.ads,
7921 3bsoccon.ads, 3gsoccon.ads, 3hsoccon.ads, 3ssoccon.ads,
7922 3ssoliop.ads, 3wsoccon.ads, 3wsocthi.adb, 3wsocthi.ads,
7923 3wsoliop.ads, 41intnam.ads, 42intnam.ads, 4aintnam.ads,
7924 4cintnam.ads, 4gintnam.ads, 4hexcpol.adb, 4hintnam.ads,
7925 4lintnam.ads, 4nintnam.ads, 4ointnam.ads, 4onumaux.ads,
7926 4pintnam.ads, 4sintnam.ads, 4vcaldel.adb, 4vcalend.adb,
7927 4vintnam.ads, 4wexcpol.adb, 4wintnam.ads, 4zintnam.ads,
7928 51osinte.adb, 51osinte.ads, 52osinte.adb, 52osinte.ads,
7929 53osinte.ads, 54osinte.ads, 5aosinte.adb, 5aosinte.ads,
7930 5asystem.ads, 5ataprop.adb, 5atasinf.ads, 5ataspri.ads,
7931 5atpopsp.adb, 5avxwork.ads, 5bosinte.adb, 5bosinte.ads,
7932 5bsystem.ads, 5cosinte.ads, 5esystem.ads, 5fintman.adb,
7933 5fosinte.ads, 5fsystem.ads, 5ftaprop.adb, 5ftasinf.ads,
7934 5ginterr.adb, 5gintman.adb, 5gmastop.adb, 5gosinte.ads,
7935 5gproinf.ads, 5gsystem.ads, 5gtaprop.adb, 5gtasinf.ads,
7936 5gtpgetc.adb, 5hosinte.adb, 5hosinte.ads, 5hsystem.ads,
7937 5htaprop.adb, 5htaspri.ads, 5htraceb.adb, 5iosinte.adb,
7938 5itaprop.adb, 5itaspri.ads, 5ksystem.ads, 5kvxwork.ads,
7939 5lintman.adb, 5lml-tgt.adb, 5losinte.ads, 5lsystem.ads,
7940 5mvxwork.ads, 5ninmaop.adb, 5nintman.adb, 5nosinte.ads,
7941 5ntaprop.adb, 5ntaspri.ads, 5ointerr.adb, 5omastop.adb,
7942 5oosinte.adb, 5oosinte.ads, 5oosprim.adb, 5oparame.adb,
7943 5osystem.ads, 5otaprop.adb, 5otaspri.ads, 5posinte.ads,
7944 5posprim.adb, 5pvxwork.ads, 5sintman.adb, 5sosinte.adb,
7945 5sosinte.ads, 5ssystem.ads, 5staprop.adb, 5stasinf.ads,
7946 5staspri.ads, 5svxwork.ads, 5tosinte.ads, 5vasthan.adb,
7947 5vinmaop.adb, 5vinterr.adb, 5vintman.adb, 5vintman.ads,
7948 5vmastop.adb, 5vosinte.adb, 5vosinte.ads, 5vosprim.adb,
7949 5vsystem.ads, 5vtaprop.adb, 5vtaspri.ads, 5vtpopde.adb,
7950 5vtpopde.ads, 5wgloloc.adb, 5wintman.adb, 5wmemory.adb,
7951 5wosprim.adb, 5wsystem.ads, 5wtaprop.adb, 5wtaspri.ads,
7952 5ysystem.ads, 5zinterr.adb, 5zintman.adb, 5zosinte.adb,
7953 5zosinte.ads, 5zosprim.adb, 5zsystem.ads, 5ztaprop.adb,
7954 6vcpp.adb, 6vcstrea.adb, 6vinterf.ads, 7sinmaop.adb,
7955 7sintman.adb, 7sosinte.adb, 7sosprim.adb, 7staprop.adb,
7956 7staspri.ads, 7stpopsp.adb, 7straceb.adb, 9drpc.adb,
7957 a-caldel.adb, a-caldel.ads, a-charac.ads, a-colien.ads,
7958 a-comlin.adb, adaint.c, adaint.h, ada-tree.def,
7959 a-diocst.adb, a-diocst.ads, a-direio.adb, a-except.adb,
7960 a-except.ads, a-excpol.adb, a-exctra.adb, a-exctra.ads,
7961 a-filico.adb, a-interr.adb, a-intsig.adb, a-intsig.ads,
7962 ali.adb, ali.ads, ali-util.adb, ali-util.ads,
7963 a-ngcefu.adb, a-ngcoty.adb, a-ngelfu.adb, a-nudira.adb,
7964 a-nudira.ads, a-nuflra.adb, a-nuflra.ads, a-reatim.adb,
7965 a-reatim.ads, a-retide.ads, a-sequio.adb, a-siocst.adb,
7966 a-siocst.ads, a-ssicst.adb, a-ssicst.ads, a-strbou.adb,
7967 a-strbou.ads, a-strfix.adb, a-strmap.adb, a-strsea.ads,
7968 a-strunb.adb, a-strunb.ads, a-ststio.adb, a-stunau.adb,
7969 a-stunau.ads, a-stwibo.adb, a-stwibo.ads, a-stwifi.adb,
7970 a-stwima.adb, a-stwiun.adb, a-stwiun.ads, a-tags.adb,
7971 a-tags.ads, a-tasatt.adb, a-taside.adb, a-teioed.adb,
7972 a-textio.adb, a-textio.ads, a-tienau.adb, a-tifiio.adb,
7973 a-tiflau.adb, a-tiflio.adb, a-tigeau.adb, a-tigeau.ads,
7974 a-tiinau.adb, a-timoau.adb, a-tiocst.adb, a-tiocst.ads,
7975 atree.adb, atree.ads, a-witeio.adb, a-witeio.ads,
7976 a-wtcstr.adb, a-wtcstr.ads, a-wtdeio.adb, a-wtedit.adb,
7977 a-wtenau.adb, a-wtflau.adb, a-wtinau.adb, a-wtmoau.adb,
7978 bcheck.adb, binde.adb, bindgen.adb, bindusg.adb,
7979 checks.adb, checks.ads, cio.c, comperr.adb,
7980 comperr.ads, csets.adb, cstand.adb, cstreams.c,
7981 debug_a.adb, debug_a.ads, debug.adb, decl.c,
7982 einfo.adb, einfo.ads, errout.adb, errout.ads,
7983 eval_fat.adb, eval_fat.ads, exp_aggr.adb, expander.adb,
7984 expander.ads, exp_attr.adb, exp_ch11.adb, exp_ch13.adb,
7985 exp_ch2.adb, exp_ch3.adb, exp_ch3.ads, exp_ch4.adb,
7986 exp_ch5.adb, exp_ch6.adb, exp_ch7.adb, exp_ch7.ads,
7987 exp_ch8.adb, exp_ch9.adb, exp_code.adb, exp_dbug.adb,
7988 exp_dbug.ads, exp_disp.adb, exp_dist.adb, expect.c,
7989 exp_fixd.adb, exp_imgv.adb, exp_intr.adb, exp_pakd.adb,
7990 exp_prag.adb, exp_strm.adb, exp_strm.ads, exp_tss.adb,
7991 exp_tss.ads, exp_util.adb, exp_util.ads, exp_vfpt.adb,
7992 fe.h, fmap.adb, fmap.ads, fname.adb,
7993 fname.ads, fname-uf.adb, fname-uf.ads, freeze.adb,
7994 freeze.ads, frontend.adb, g-awk.adb, g-awk.ads,
7995 g-busora.adb, g-busora.ads, g-busorg.adb, g-busorg.ads,
7996 g-casuti.adb, g-casuti.ads, g-catiio.adb, g-catiio.ads,
7997 g-cgi.adb, g-cgi.ads, g-cgicoo.adb, g-cgicoo.ads,
7998 g-cgideb.adb, g-cgideb.ads, g-comlin.adb, g-comlin.ads,
7999 g-crc32.adb, g-crc32.ads, g-debpoo.adb, g-debpoo.ads,
8000 g-debuti.adb, g-debuti.ads, g-diopit.adb, g-diopit.ads,
8001 g-dirope.adb, g-dirope.ads, g-dyntab.adb, g-dyntab.ads,
8002 g-except.ads, g-exctra.adb, g-exctra.ads, g-expect.adb,
8003 g-expect.ads, g-hesora.adb, g-hesora.ads, g-hesorg.adb,
8004 g-hesorg.ads, g-htable.adb, g-htable.ads, gigi.h,
8005 g-io.adb, g-io.ads, g-io_aux.adb, g-io_aux.ads,
8006 g-locfil.adb, g-locfil.ads, g-md5.adb, g-md5.ads,
8007 gmem.c, gnat1drv.adb, gnatbind.adb, gnatchop.adb,
8008 gnatcmd.adb, gnatfind.adb, gnatkr.adb, gnatlbr.adb,
8009 gnatlink.adb, gnatls.adb, gnatmake.adb, gnatmem.adb,
8010 gnatname.adb, gnatprep.adb, gnatprep.ads, gnatpsta.adb,
8011 gnatxref.adb, g-os_lib.adb, g-os_lib.ads, g-regexp.adb,
8012 g-regexp.ads, g-regist.adb, g-regist.ads, g-regpat.adb,
8013 g-regpat.ads, g-soccon.ads, g-socket.adb, g-socket.ads,
8014 g-socthi.adb, g-socthi.ads, g-soliop.ads, g-souinf.ads,
8015 g-speche.adb, g-speche.ads, g-spipat.adb, g-spipat.ads,
8016 g-spitbo.adb, g-spitbo.ads, g-sptabo.ads, g-sptain.ads,
8017 g-sptavs.ads, g-table.adb, g-table.ads, g-tasloc.adb,
8018 g-tasloc.ads, g-thread.adb, g-thread.ads, g-traceb.adb,
8019 g-traceb.ads, g-trasym.adb, g-trasym.ads, hostparm.ads,
8020 i-c.ads, i-cobol.adb, i-cpp.adb, i-cstrea.ads,
8021 i-cstrin.adb, i-cstrin.ads, impunit.adb, init.c,
8022 inline.adb, interfac.ads, i-pacdec.ads, itypes.adb,
8023 itypes.ads, i-vxwork.ads, lang.opt, lang-specs.h,
8024 layout.adb, lib.adb, lib.ads, lib-list.adb,
8025 lib-load.adb, lib-load.ads, lib-sort.adb, lib-util.adb,
8026 lib-writ.adb, lib-writ.ads, lib-xref.adb, lib-xref.ads,
8027 link.c, live.adb, make.adb, make.ads,
8028 Makefile.adalib, Makefile.in, Make-lang.in, makeusg.adb,
8029 mdll.adb, mdll-fil.adb, mdll-fil.ads, mdll-utl.adb,
8030 mdll-utl.ads, memroot.adb, memroot.ads, memtrack.adb,
8031 misc.c, mkdir.c, mlib.adb, mlib.ads,
8032 mlib-fil.adb, mlib-fil.ads, mlib-prj.adb, mlib-prj.ads,
8033 mlib-tgt.adb, mlib-tgt.ads, mlib-utl.adb, mlib-utl.ads,
8034 namet.adb, namet.ads, namet.h, nlists.ads,
8035 nlists.h, nmake.adt, opt.adb, opt.ads,
8036 osint.adb, osint.ads, osint-b.adb, osint-c.adb,
8037 par.adb, par-ch10.adb, par-ch11.adb, par-ch2.adb,
8038 par-ch3.adb, par-ch4.adb, par-ch5.adb, par-ch6.adb,
8039 par-ch9.adb, par-endh.adb, par-labl.adb, par-load.adb,
8040 par-prag.adb, par-sync.adb, par-tchk.adb, par-util.adb,
8041 prj.adb, prj.ads, prj-attr.adb, prj-attr.ads,
8042 prj-com.adb, prj-com.ads, prj-dect.adb, prj-dect.ads,
8043 prj-env.adb, prj-env.ads, prj-ext.adb, prj-ext.ads,
8044 prj-makr.adb, prj-makr.ads, prj-nmsc.adb, prj-nmsc.ads,
8045 prj-pars.adb, prj-pars.ads, prj-part.adb, prj-part.ads,
8046 prj-pp.adb, prj-pp.ads, prj-proc.adb, prj-proc.ads,
8047 prj-strt.adb, prj-strt.ads, prj-tree.adb, prj-tree.ads,
8048 prj-util.adb, prj-util.ads, raise.c, raise.h,
8049 repinfo.adb, repinfo.h, restrict.adb, restrict.ads,
8050 rident.ads, rtsfind.adb, rtsfind.ads, s-addima.ads,
8051 s-arit64.adb, s-assert.adb, s-assert.ads, s-atacco.adb,
8052 s-atacco.ads, s-auxdec.adb, s-auxdec.ads, s-bitops.adb,
8053 scans.ads, scn.adb, scn.ads, s-crc32.adb,
8054 s-crc32.ads, s-direio.adb, sem.adb, sem.ads,
8055 sem_aggr.adb, sem_attr.adb, sem_attr.ads, sem_case.adb,
8056 sem_case.ads, sem_cat.adb, sem_cat.ads, sem_ch10.adb,
8057 sem_ch11.adb, sem_ch12.adb, sem_ch12.ads, sem_ch13.adb,
8058 sem_ch13.ads, sem_ch3.adb, sem_ch3.ads, sem_ch4.adb,
8059 sem_ch5.adb, sem_ch5.ads, sem_ch6.adb, sem_ch6.ads,
8060 sem_ch7.adb, sem_ch7.ads, sem_ch8.adb, sem_ch8.ads,
8061 sem_ch9.adb, sem_disp.adb, sem_disp.ads, sem_dist.adb,
8062 sem_elab.adb, sem_eval.adb, sem_eval.ads, sem_intr.adb,
8063 sem_maps.adb, sem_mech.adb, sem_prag.adb, sem_prag.ads,
8064 sem_res.adb, sem_res.ads, sem_type.adb, sem_type.ads,
8065 sem_util.adb, sem_util.ads, sem_warn.adb, s-errrep.adb,
8066 s-errrep.ads, s-exctab.adb, s-exctab.ads, s-exnint.ads,
8067 s-exnllf.ads, s-exnlli.ads, s-expint.ads, s-explli.ads,
8068 s-expuns.ads, s-fatflt.ads, s-fatgen.adb, s-fatgen.ads,
8069 s-fatlfl.ads, s-fatllf.ads, s-fatsfl.ads, s-fileio.adb,
8070 s-fileio.ads, s-finimp.adb, s-finimp.ads, s-finroo.adb,
8071 s-finroo.ads, sfn_scan.adb, s-gloloc.adb, s-gloloc.ads,
8072 s-imgdec.adb, s-imgenu.adb, s-imgrea.adb, s-imgwch.adb,
8073 sinfo.adb, sinfo.ads, s-inmaop.ads, sinput.adb,
8074 sinput.ads, sinput-d.adb, sinput-l.adb, sinput-l.ads,
8075 sinput-p.adb, sinput-p.ads, s-interr.adb, s-interr.ads,
8076 s-intman.ads, s-maccod.ads, s-mastop.adb, s-mastop.ads,
8077 s-memory.adb, s-memory.ads, snames.adb, snames.ads,
8078 snames.h, s-osprim.ads, s-parame.ads, s-parint.ads,
8079 s-pooloc.adb, s-pooloc.ads, s-poosiz.adb, sprint.adb,
8080 s-proinf.ads, s-scaval.ads, s-secsta.adb, s-secsta.ads,
8081 s-sequio.adb, s-shasto.adb, s-shasto.ads, s-soflin.ads,
8082 s-stache.adb, s-stache.ads, s-stalib.adb, s-stalib.ads,
8083 s-stoele.ads, s-stopoo.ads, s-stratt.adb, s-stratt.ads,
8084 s-strops.adb, s-strops.ads, s-taasde.adb, s-taasde.ads,
8085 s-tadeca.adb, s-tadeca.ads, s-tadert.adb, s-tadert.ads,
8086 s-taenca.adb, s-taenca.ads, s-taprob.adb, s-taprob.ads,
8087 s-taprop.ads, s-tarest.adb, s-tarest.ads, s-tasdeb.adb,
8088 s-tasdeb.ads, s-tasinf.adb, s-tasinf.ads, s-tasini.adb,
8089 s-tasini.ads, s-taskin.adb, s-taskin.ads, s-tasque.adb,
8090 s-tasque.ads, s-tasren.adb, s-tasren.ads, s-tasres.ads,
8091 s-tassta.adb, s-tassta.ads, s-tasuti.adb, s-tasuti.ads,
8092 s-tataat.adb, s-tataat.ads, s-tpinop.adb, s-tpinop.ads,
8093 s-tpoben.adb, s-tpoben.ads, s-tpobop.adb, s-tpobop.ads,
8094 s-tposen.adb, s-tposen.ads, s-traceb.adb, s-traceb.ads,
8095 stringt.adb, stringt.ads, stringt.h, style.ads,
8096 stylesw.adb, stylesw.ads, s-unstyp.ads, s-vaflop.ads,
8097 s-valrea.adb, s-valuti.adb, s-vercon.adb, s-vmexta.adb,
8098 s-wchcnv.ads, s-wchcon.ads, s-widcha.adb, switch.adb,
8099 switch.ads, switch-b.adb, switch-c.adb, switch-m.adb,
8100 s-wwdcha.adb, s-wwdwch.adb, sysdep.c, system.ads,
8101 table.adb, table.ads, targparm.adb, targparm.ads,
8102 targtyps.c, tbuild.adb, tbuild.ads, tracebak.c,
8103 trans.c, tree_io.adb, treepr.adb, treeprs.adt,
8104 ttypes.ads, types.ads, types.h, uintp.adb,
8105 uintp.ads, uintp.h, uname.adb, urealp.adb,
8106 urealp.ads, urealp.h, usage.adb, utils2.c,
8107 utils.c, validsw.adb, validsw.ads, widechar.adb,
8108 xeinfo.adb, xnmake.adb, xref_lib.adb, xref_lib.ads,
8109 xr_tabls.adb, xr_tabls.ads, xtreeprs.adb, xsnames.adb,
8110 einfo.h, sinfo.h, treeprs.ads, nmake.ads, nmake.adb,
8111 gnatvsn.ads: Merge with ACT tree.
8112
8113 * gnatvsn.adb: Rewritten in a simpler and more efficient way.
8114
97ae108d
MM
81152003-10-20 Mark Mitchell <mark@codesourcery.com>
8116
de696511
MM
8117 * Make-lang.in (gnat_ug_unx.info): Add dependency on stmp-docobjdir.
8118 (gnat_ug_vmx.info): Likewise.
8119 (gnat_ug_vxw.info): Likewise.
8120 (gnat_ug_wnt.info): Likewise.
8121 (gnat_rm.info): Likewise.
8122 (gnat-style.info): Likewise.
8123
97ae108d
MM
8124 * Make-lang.in (ada.install-info): Remove target.
8125 (info): New target.
8126 (install-info): Likewise.
8127 (gnat_ug_unx.info): Simplify rule.
8128 (gnat_ug_vmx.info): Likewise.
8129 (gnat_ug_vxw.info): Likewise.
8130 (gnat_ug_wnt.info): Likewise.
8131 (gnat_rm.info): Likewise.
8132 (gnat-style.info): Likewise.
8133
43aba518
NN
81342003-10-14 Nathanael Nerode <neroden@gcc.gnu.org>
8135
8136 * Make-lang.in: Replace uses of $(target_alias) with
8137 $(target_noncanonical).
8138 * ada/Makefile.in: Remove unused mention of $(target_alias).
8139
62b81e45
MM
81402003-10-06 Mark Mitchell <mark@codesourcery.com>
8141
8142 * Make-lang.in (ada.info): Replace with ...
8143 (info): ... this.
8144 (ada.dvi): Replace with ...
8145 (dvi): ... this.
8146
783be936
ZW
81472003-09-29 Zack Weinberg <zack@codesourcery.com>
8148
8149 * trans.c (gigi): Use REAL_ARITHMETIC, not REAL_VALUE_ATOF, to
8150 initialize dconstp5 and dconstmp5.
8151
177560b2
RH
81522003-09-28 Richard Henderson <rth@redhat.com>
8153
8154 * trans.c (tree_transform): Update call to expand_asm_operands.
8155
f31686a3
RH
81562003-09-21 Richard Henderson <rth@redhat.com>
8157
8158 * trans.c, utils.c: Revert.
8159
7e2af53a
RH
81602003-09-21 Richard Henderson <rth@redhat.com>
8161
8162 * trans.c, utils.c: Update for DECL_SOURCE_LOCATION rename and
8163 change to const.
8164
5f1e32fa
MM
81652003-09-04 Michael Matz <matz@suse.de>
8166
8167 * misc.c: Include "target.h".
8168 * Make-lang.in (misc.o): Add dependency on target.h.
8169
61f71b34
DD
81702003-09-03 DJ Delorie <dj@redhat.com>
8171
8172 * misc.c (default_pass_by_ref): Convert to calls.return_in_memory
8173 hook.
8174
2ed26f6b
ZW
81752003-08-30 Zack Weinberg <zack@codesourcery.com>
8176
8177 * Makefile.in: Update substitutions to match changes to
8178 configure. Use include directives instead of @-insertions
8179 to read in host and target fragments. Add a rule to
8180 regenerate ada/Makefile.
8181
b2e608ca
NB
81822003-07-18 Neil Booth <neil@daikokuya.co.uk>
8183
8184 * lang-options.h: Remove.
8185 * lang.opt: Add help text.
8186
0cea056b
NS
81872003-07-07 Nathan Sidwell <nathan@codesourcery.com>
8188
8189 * trans.c (build_unit_elab, set_lineno): Adjust emit_line_note
8190 calls.
8191
cb66e385
NB
81922003-07-06 Neil Booth <neil@daikokuya.co.uk>
8193
8194 * misc.c (gnat_handle_option): Don't handle filenames.
8195
8c90b13a
L
81962003-07-04 H.J. Lu <hongjiu.lu@intel.com>
8197
8198 * Make-lang.in: Replace PWD with PWD_COMMAND.
8199 * Makefile.adalib: Likewise.
8200 * Makefile.in: Likewise.
8201
9c286213
MK
82022003-07-04 Matt Kraai <kraai@alumni.cmu.edu>
8203
8204 * misc.c (gnat_argv): Revert last change.
8205 (gnat_handle_option, gnat_init_options): Copy arguments.
8206
b9add449
NB
82072003-07-03 Neil Booth <neil@daikokuya.co.uk>
8208
9c286213 8209 * misc.c (gnat_argv): Make const.
b9add449 8210
836d77a9
NB
82112003-07-02 Neil Booth <neil@daikokuya.co.uk>
8212
8213 * misc.c (save_argc, save_argv): Keep non-static!
8214
b86f6cd9
NB
82152003-07-02 Neil Booth <neil@daikokuya.co.uk>
8216
8217 * misc.c (save_argc, save_argv): Make static.
8218 (gnat_init_options): New prototype.
8219 (gnat_init_options): Update.
8220
6344b1f1
MK
82212003-07-01 Matt Kraai <kraai@alumni.cmu.edu>
8222
8223 * gnat_ug.texi: Remove unlikely characters from @vars.
8224 * gnat_ug_vms.texi: Regenerate.
8225
2e040219
NS
82262003-06-27 Nathan Sidwell <nathan@codesourcery.com>
8227
8228 * misc.c (record_code_position): Adjust emit_note call.
8229
9eee5e72
NB
82302003-06-26 Neil Booth <neil@daikokuya.co.uk>
8231
8232 * misc.c (gnat_handle_option): Don't check for missing arguments.
8233
1f9cc6db
NS
82342003-06-20 Nathan Sidwell <nathan@codesourcery.com>
8235
8236 * utils.c (end_subprog_body): Adjust expand_function_end call.
8237
23d6baa3
MK
82382003-06-16 Matt Kraai <kraai@alumni.cmu.edu>
8239
8240 * bindgen.adb (Gen_Main_Ada, Gen_Main_C): Do not test
8241 Bind_Main_Program.
8242
be43ab4e
NB
82432003-06-15 Neil Booth <neil@daikokuya.co.uk>
8244
8245 * lang.opt: Declare Ada.
8246 * misc.c (gnat_init_options): Update.
8247
ee6b0296
NS
82482003-06-14 Nathan Sidwell <nathan@codesourcery.com>
8249
8250 * utils.c (begin_subprog_body): Adjust init_function_start call.
8251
d7b42618
NB
82522003-06-14 Neil Booth <neil@daikokuya.co.uk>
8253
8254 * Make-lang.in: Update to use options.c and options.h.
8255 * misc.c: Include options.h not aoptions.h.
8256 (gnat_handle_option): Abort on unrecognized switch.
8257 (gnat_init_options): Request Ada switches.
8258
57eb6503
NB
82592003-06-14 Neil Booth <neil@daikokuya.co.uk>
8260
8261 * lang.opt: Add -Wall.
8262 * misc.c (gnat_handle_option): Handle it.
8263
70fd6569
NB
82642003-06-12 Neil Booth <neil@daikokuya.co.uk>
8265
8266 * misc.c (gnat_handle_option): Fix warnings.
8267
8cdea5a1
MK
82682003-06-11 Matt Kraai <kraai@alumni.cmu.edu>
8269
8270 * Make-lang.in (gnatbind): Remove $(LIBIBERTY).
8271
3c900cb5
NB
82722003-06-11 Neil Booth <neil@daikokuya.co.uk>
8273
8274 * Make-lang.in: Update to handle command-line options.
8275 * lang.opt: New file.
8276 * misc.c: Include aoptions.h.
8277 (cl_options_count, cl_options): Remove.
8278 (gnat_handle_option): New.
8279 (gnat_decode_option): Remove.
8280 (LANG_HOOKS_DECODE_OPTION): Remove.
8281 (LANG_HOOKS_HANDLE_OPTION): Override.
8282
e8face4c
NN
82832003-06-10 Nathanael Nerode <neroden@gcc.gnu.org>
8284
8285 * init.c, misc.c, trans.c, utils.c: Remove dead code.
8286
4665e56c
NN
82872003-06-09 Nathanael Nerode <neroden@gcc.gnu.org>
8288
8289 * Makefile.in: Replace "host_canonical" with "host" for autoconf
8290 substitution.
8291
a165c302
NB
82922003-06-08 Neil Booth <neil@daikokuya.co.uk>
8293
8294 * Make-lang.in: Update.
8295 * misc.c: Include opts.h. Define cl_options_count and cl_options.
8296
2772ef3e
NB
82972003-06-07 Neil Booth <neil@daikokuya.co.uk>
8298
8299 * misc.c (gnat_init_options): Update.
8300
d8277a55
MK
83012003-06-05 Matt Kraai <kraai@alumni.cmu.edu>
8302
8303 * Make-lang.in (ada/b_gnatb.o-warn): Remove.
8304 * bindgen.adb (Gen_Main_C): Mark ensure_reference with
8305 __attribute__ ((__unused__)).
8306
602a82f3 83072003-06-05 Jan Hubicka <jh@suse.cz>
8f231b5d
JH
8308
8309 * Make-lang.in: Add support for stageprofile and stagefeedback
8310
3aa07c6d
MK
83112003-06-05 Matt Kraai <kraai@alumni.cmu.edu>
8312
8313 * bindgen.adb (Gen_Adafinal_C, Gen_Adainit_C, Gen_Elab_Defs_C)
8314 (Gen_Main_C, Gen_Output_File_C): Generate ISO C.
8315
f1093866
MK
83162003-06-04 Matt Kraai <kraai@alumni.cmu.edu>
8317
8318 * gnat_ug.texi (The GNAT Run-Time Library Builder gnatlbr):
8319 Remove non-VMS directive.
8320 (Switches for gnatlbr, Optimization Levels): Remove non-VMS
8321 alternatives.
8322 (Examples of gnatls Usage): Remove VMS alternative.
dee2df72
OH
8323
83242003-06-04 Olivier Hainque <hainque@act-europe.fr>
8325
2ed26f6b
ZW
8326 PR ada/9953:
8327 * 5hsystem.ads: Remove pragma Linker_Option for pthreads library,
8328 and turn ZCX_By_Default back to False since the underlying support
8329 is not quite there yet.
dee2df72 8330
80eaf415
AJ
83312003-06-01 Andreas Jaeger <aj@suse.de>
8332
8333 * utils.c (finish_record_type): Remove usages of ROUND_TYPE_SIZE
8334 and ROUND_TYPE_SIZE_UNIT.
8335
36f9020c
GB
83362003-05-22 Geert Bosch <bosch@gnat.com>
8337
8338 * gnat_rm.texi : Remove reference to Ada Core Technologies.
8339
e7b5f0c9
NS
83402003-05-03 Nathan Sidwell <nathan@codesourcery.com>
8341
8342 * trans.c (tree_transform): Use location_t and input_location
8343 directly.
8344 (build_unit_elab): Likewise.
8345 * utils.c (create_label_decl): Likewise.
8346
d479d37f
NS
83472003-05-01 Nathan Sidwell <nathan@codesourcery.com>
8348
561712fe
NS
8349 * trans.c (tree_transform, build_unit_elab,
8350 set_lineno): Rename lineno to input_line.
d479d37f
NS
8351 * utils.c (pushdecl, create_label_decl, begin_subprog_body,
8352 end_subprog_body): Likewise.
8353 * utils2.c (build_call_raise): Likewise.
8354
4f9335cd
LG
83552003-05-01 Laurent Guerby <guerby@acm.org>
8356
2ed26f6b
ZW
8357 PR ada/10546
8358 * 5iosinte.ads: Increase pthread_cond_t size to match recent
8359 LinuxThread and NPTL version, merge from ACT.
80eaf415 8360
0864034e
ZW
83612003-04-28 Zack Weinberg <zack@codesourcery.com>
8362
8363 * utils.c (convert): No need to clear TREE_CST_RTL.
8364
bcea76b6
GB
83652003-04-23 Geert Bosch <bosch@gnat.com>
8366
8367 * 1aexcept.adb, 1aexcept.ads, 1ic.ads, 1ssecsta.adb,
8368 1ssecsta.ads, 31soccon.ads, 31soliop.ads, 3asoccon.ads,
8369 3bsoccon.ads, 3gsoccon.ads, 3hsoccon.ads, 3ssoccon.ads,
8370 3ssoliop.ads, 3wsoccon.ads, 3wsocthi.adb, 3wsocthi.ads,
8371 3wsoliop.ads, 41intnam.ads, 42intnam.ads, 4aintnam.ads,
8372 4cintnam.ads, 4dintnam.ads, 4gintnam.ads, 4hexcpol.adb,
8373 4hintnam.ads, 4lintnam.ads, 4mintnam.ads, 4nintnam.ads,
8374 4ointnam.ads, 4onumaux.ads, 4pintnam.ads, 4rintnam.ads,
8375 4sintnam.ads, 4uintnam.ads, 4vcaldel.adb, 4vcalend.adb,
8376 4vcalend.ads, 4vintnam.ads, 4wcalend.adb, 4wexcpol.adb,
8377 4wintnam.ads, 4zintnam.ads, 4znumaux.ads, 4zsytaco.adb,
8378 4zsytaco.ads, 51osinte.adb, 51osinte.ads, 52osinte.adb,
8379 52osinte.ads, 52system.ads, 53osinte.ads, 54osinte.ads,
8380 5amastop.adb, 5aosinte.adb, 5aosinte.ads, 5asystem.ads,
8381 5ataprop.adb, 5atasinf.ads, 5ataspri.ads, 5atpopsp.adb,
8382 5avxwork.ads, 5bosinte.adb, 5bosinte.ads, 5bsystem.ads,
8383 5cosinte.ads, 5dosinte.ads, 5esystem.ads, 5etpopse.adb,
8384 5fintman.adb, 5fosinte.ads, 5fsystem.ads, 5ftaprop.adb,
8385 5ftasinf.ads, 5ginterr.adb, 5gintman.adb, 5gmastop.adb,
8386 5gosinte.ads, 5gproinf.adb, 5gproinf.ads, 5gsystem.ads,
8387 5gtaprop.adb, 5gtasinf.adb, 5gtasinf.ads, 5gtpgetc.adb,
8388 5hosinte.adb, 5hosinte.ads, 5hparame.ads, 5hsystem.ads,
8389 5htaprop.adb, 5htaspri.ads, 5htraceb.adb, 5iosinte.adb,
8390 5iosinte.ads, 5itaprop.adb, 5itaspri.ads, 5ksystem.ads,
8391 5kvxwork.ads, 5lintman.adb, 5lml-tgt.adb, 5losinte.ads,
8392 5lsystem.ads, 5mosinte.ads, 5mvxwork.ads, 5ninmaop.adb,
8393 5nintman.adb, 5nosinte.ads, 5ntaprop.adb, 5ntaspri.ads,
8394 5ointerr.adb, 5omastop.adb, 5oosinte.adb, 5oosinte.ads,
8395 5oosprim.adb, 5oparame.adb, 5osystem.ads, 5otaprop.adb,
8396 5otaspri.ads, 5posinte.ads, 5posprim.adb, 5pvxwork.ads,
8397 5qosinte.adb, 5qosinte.ads, 5qstache.adb, 5qtaprop.adb,
8398 5qtaspri.ads, 5rosinte.adb, 5rosinte.ads, 5rparame.adb,
8399 5sintman.adb, 5sosinte.adb, 5sosinte.ads, 5sparame.adb,
8400 5ssystem.ads, 5staprop.adb, 5stasinf.adb, 5stasinf.ads,
8401 5staspri.ads, 5stpopse.adb, 5svxwork.ads, 5tosinte.ads,
8402 5uintman.adb, 5uosinte.ads, 5vasthan.adb, 5vinmaop.adb,
8403 5vinterr.adb, 5vintman.adb, 5vintman.ads, 5vmastop.adb,
8404 5vosinte.adb, 5vosinte.ads, 5vosprim.adb, 5vosprim.ads,
8405 5vparame.ads, 5vsystem.ads, 5vtaprop.adb, 5vtaspri.ads,
8406 5vtpopde.adb, 5vtpopde.ads, 5vvaflop.adb, 5wgloloc.adb,
8407 5wintman.adb, 5wmemory.adb, 5wosinte.ads, 5wosprim.adb,
8408 5wsystem.ads, 5wtaprop.adb, 5wtaspri.ads, 5ysystem.ads,
8409 5zinterr.adb, 5zintman.adb, 5zosinte.adb, 5zosinte.ads,
8410 5zosprim.adb, 5zsystem.ads, 5ztaprop.adb, 6vcpp.adb,
8411 6vcstrea.adb, 6vinterf.ads, 7sinmaop.adb, 7sintman.adb,
8412 7sosinte.adb, 7sosprim.adb, 7staprop.adb, 7staspri.ads,
8413 7stpopsp.adb, 7straceb.adb, 86numaux.adb, 86numaux.ads,
8414 9drpc.adb, a-astaco.adb, a-astaco.ads, a-caldel.adb,
8415 a-caldel.ads, a-calend.adb, a-calend.ads, a-chahan.adb,
8416 a-chahan.ads, a-charac.ads, a-chlat1.ads, a-chlat9.ads,
8417 a-colien.adb, a-colien.ads, a-colire.adb, a-colire.ads,
8418 a-comlin.adb, a-comlin.ads, a-cwila1.ads, a-cwila9.ads,
8419 a-decima.adb, a-decima.ads, a-diocst.adb, a-diocst.ads,
8420 a-direio.adb, a-direio.ads, a-dynpri.adb, a-dynpri.ads,
8421 a-einuoc.adb, a-einuoc.ads, a-except.adb, a-except.ads,
8422 a-excpol.adb, a-exctra.adb, a-exctra.ads, a-filico.adb,
8423 a-filico.ads, a-finali.adb, a-finali.ads, a-flteio.ads,
8424 a-fwteio.ads, a-inteio.ads, a-interr.adb, a-interr.ads,
8425 a-intnam.ads, a-intsig.adb, a-intsig.ads, a-ioexce.ads,
8426 a-iwteio.ads, a-lfteio.ads, a-lfwtio.ads, a-liteio.ads,
8427 a-liwtio.ads, a-llftio.ads, a-llfwti.ads, a-llitio.ads,
8428 a-lliwti.ads, a-ncelfu.ads, a-ngcefu.adb, a-ngcefu.ads,
8429 a-ngcoty.adb, a-ngcoty.ads, a-ngelfu.adb, a-ngelfu.ads,
8430 a-nlcefu.ads, a-nlcoty.ads, a-nlelfu.ads, a-nllcef.ads,
8431 a-nllcty.ads, a-nllefu.ads, a-nscefu.ads, a-nscoty.ads,
8432 a-nselfu.ads, a-nucoty.ads, a-nudira.adb, a-nudira.ads,
8433 a-nuelfu.ads, a-nuflra.adb, a-nuflra.ads, a-numaux.ads,
8434 a-numeri.ads, a-reatim.adb, a-reatim.ads, a-retide.adb,
8435 a-retide.ads, a-sequio.adb, a-sequio.ads, a-sfteio.ads,
8436 a-sfwtio.ads, a-siocst.adb, a-siocst.ads, a-siteio.ads,
8437 a-siwtio.ads, a-ssicst.adb, a-ssicst.ads, a-ssitio.ads,
8438 a-ssiwti.ads, a-stmaco.ads, a-storio.adb, a-storio.ads,
8439 a-strbou.adb, a-strbou.ads, a-stream.ads, a-strfix.adb,
8440 a-strfix.ads, a-string.ads, a-strmap.adb, a-strmap.ads,
8441 a-strsea.adb, a-strsea.ads, a-strunb.adb, a-strunb.ads,
8442 a-ststio.adb, a-ststio.ads, a-stunau.adb, a-stunau.ads,
8443 a-stwibo.adb, a-stwibo.ads, a-stwifi.adb, a-stwifi.ads,
8444 a-stwima.adb, a-stwima.ads, a-stwise.adb, a-stwise.ads,
8445 a-stwiun.adb, a-stwiun.ads, a-suteio.adb, a-suteio.ads,
8446 a-swmwco.ads, a-swuwti.adb, a-swuwti.ads, a-sytaco.adb,
8447 a-sytaco.ads, a-tags.adb, a-tags.ads, a-tasatt.adb,
8448 a-tasatt.ads, a-taside.adb, a-taside.ads, a-teioed.adb,
8449 a-teioed.ads, a-textio.adb, a-textio.ads, a-ticoau.adb,
8450 a-ticoau.ads, a-ticoio.adb, a-ticoio.ads, a-tideau.adb,
8451 a-tideau.ads, a-tideio.adb, a-tideio.ads, a-tienau.adb,
8452 a-tienau.ads, a-tienio.adb, a-tienio.ads, a-tifiio.adb,
8453 a-tifiio.ads, a-tiflau.adb, a-tiflau.ads, a-tiflio.adb,
8454 a-tiflio.ads, a-tigeau.adb, a-tigeau.ads, a-tiinau.adb,
8455 a-tiinau.ads, a-tiinio.adb, a-tiinio.ads, a-timoau.adb,
8456 a-timoau.ads, a-timoio.adb, a-timoio.ads, a-tiocst.adb,
8457 a-tiocst.ads, a-titest.adb, a-titest.ads, a-unccon.ads,
8458 a-uncdea.ads, a-witeio.adb, a-witeio.ads, a-wtcoau.adb,
8459 a-wtcoau.ads, a-wtcoio.adb, a-wtcoio.ads, a-wtcstr.adb,
8460 a-wtcstr.ads, a-wtdeau.adb, a-wtdeau.ads, a-wtdeio.adb,
8461 a-wtdeio.ads, a-wtedit.adb, a-wtedit.ads, a-wtenau.adb,
8462 a-wtenau.ads, a-wtenio.adb, a-wtenio.ads, a-wtfiio.adb,
8463 a-wtfiio.ads, a-wtflau.adb, a-wtflau.ads, a-wtflio.adb,
8464 a-wtflio.ads, a-wtgeau.adb, a-wtgeau.ads, a-wtinau.adb,
8465 a-wtinau.ads, a-wtinio.adb, a-wtinio.ads, a-wtmoau.adb,
8466 a-wtmoau.ads, a-wtmoio.adb, a-wtmoio.ads, a-wttest.adb,
8467 a-wttest.ads, ada-tree.h, ada.ads, ada.h,
8468 adadecode.c, adadecode.h, ali-util.adb, ali-util.ads,
8469 ali.adb, ali.ads, alloc.ads, argv.c,
8470 atree.adb, atree.ads, atree.h, aux-io.c,
8471 back_end.adb, back_end.ads, bcheck.adb, bcheck.ads,
8472 binde.adb, binde.ads, binderr.adb, binderr.ads,
8473 bindgen.adb, bindgen.ads, bindusg.adb, bindusg.ads,
8474 butil.adb, butil.ads, cal.c, calendar.ads,
8475 casing.adb, casing.ads, ceinfo.adb, checks.adb,
8476 checks.ads, cio.c, comperr.adb, comperr.ads,
8477 config-lang.in, csets.adb, csets.ads, csinfo.adb,
8478 cstand.adb, cstand.ads, cuintp.c, debug.adb,
8479 debug.ads, debug_a.adb, debug_a.ads, dec-io.adb,
8480 dec-io.ads, dec.ads, deftarg.c, directio.ads,
8481 einfo.adb, einfo.ads, elists.adb, elists.ads,
8482 elists.h, errno.c, errout.adb, errout.ads,
8483 eval_fat.adb, eval_fat.ads, exit.c, exp_aggr.adb,
8484 exp_aggr.ads, exp_attr.adb, exp_attr.ads, exp_ch10.ads,
8485 exp_ch11.adb, exp_ch11.ads, exp_ch12.adb, exp_ch12.ads,
8486 exp_ch13.adb, exp_ch13.ads, exp_ch2.adb, exp_ch2.ads,
8487 exp_ch3.adb, exp_ch3.ads, exp_ch4.adb, exp_ch4.ads,
8488 exp_ch5.adb, exp_ch5.ads, exp_ch6.adb, exp_ch6.ads,
8489 exp_ch7.adb, exp_ch7.ads, exp_ch8.adb, exp_ch8.ads,
8490 exp_ch9.adb, exp_ch9.ads, exp_code.adb, exp_code.ads,
8491 exp_dbug.adb, exp_dbug.ads, exp_disp.adb, exp_disp.ads,
8492 exp_dist.adb, exp_dist.ads, exp_fixd.adb, exp_fixd.ads,
8493 exp_imgv.adb, exp_imgv.ads, exp_intr.adb, exp_intr.ads,
8494 exp_pakd.adb, exp_pakd.ads, exp_prag.adb, exp_prag.ads,
8495 exp_smem.adb, exp_smem.ads, exp_strm.adb, exp_strm.ads,
8496 exp_tss.adb, exp_tss.ads, exp_util.adb, exp_util.ads,
8497 exp_vfpt.adb, exp_vfpt.ads, expander.adb, expander.ads,
8498 fmap.adb, fmap.ads, fname-sf.adb, fname-sf.ads,
8499 fname-uf.adb, fname-uf.ads, fname.adb, fname.ads,
8500 freeze.adb, freeze.ads, frontend.adb, frontend.ads,
8501 g-awk.adb, g-awk.ads, g-busora.adb, g-busora.ads,
8502 g-busorg.adb, g-busorg.ads, g-calend.adb, g-calend.ads,
8503 g-casuti.adb, g-casuti.ads, g-catiio.adb, g-catiio.ads,
8504 g-cgi.adb, g-cgi.ads, g-cgicoo.adb, g-cgicoo.ads,
8505 g-cgideb.adb, g-cgideb.ads, g-comlin.adb, g-comlin.ads,
8506 g-crc32.adb, g-crc32.ads, g-curexc.ads, g-debpoo.adb,
8507 g-debpoo.ads, g-debuti.adb, g-debuti.ads, g-diopit.adb,
8508 g-diopit.ads, g-dirope.adb, g-dirope.ads, g-dyntab.adb,
8509 g-dyntab.ads, g-enblsp.adb, g-except.ads, g-exctra.adb,
8510 g-exctra.ads, g-expect.adb, g-expect.ads, g-flocon.ads,
8511 g-hesora.adb, g-hesora.ads, g-hesorg.adb, g-hesorg.ads,
8512 g-htable.adb, g-htable.ads, g-io.adb, g-io.ads,
8513 g-io_aux.adb, g-io_aux.ads, g-locfil.ads, g-md5.adb,
8514 g-md5.ads, g-moreex.adb, g-moreex.ads, g-os_lib.adb,
8515 g-os_lib.ads, g-regexp.adb, g-regexp.ads, g-regist.ads,
8516 g-regpat.adb, g-regpat.ads, g-soccon.ads, g-socket.adb,
8517 g-socket.ads, g-socthi.adb, g-socthi.ads, g-soliop.ads,
8518 g-souinf.ads, g-speche.adb, g-speche.ads, g-spipat.adb,
8519 g-spipat.ads, g-spitbo.adb, g-spitbo.ads, g-sptabo.ads,
8520 g-sptain.ads, g-sptavs.ads, g-table.adb, g-table.ads,
8521 g-tasloc.adb, g-tasloc.ads, g-thread.adb, g-thread.ads,
8522 g-traceb.adb, g-traceb.ads, g-trasym.adb, g-trasym.ads,
8523 get_targ.adb, get_targ.ads, gnat-style.texi, gnat.ads,
8524 gnat1drv.adb, gnat1drv.ads, gnatbind.adb, gnatbind.ads,
8525 gnatbl.c, gnatchop.adb, gnatcmd.adb, gnatcmd.ads,
8526 gnatdll.adb, gnatfind.adb, gnatkr.adb, gnatkr.ads,
8527 gnatlbr.adb, gnatlink.adb, gnatlink.ads, gnatls.adb,
8528 gnatls.ads, gnatmake.adb, gnatmake.ads, gnatmem.adb,
8529 gnatname.adb, gnatname.ads, gnatprep.adb, gnatprep.ads,
8530 gnatpsta.adb, gnatvsn.adb, gnatvsn.ads, gnatxref.adb,
8531 hlo.adb, hlo.ads, hostparm.ads, i-c.adb,
8532 i-c.ads, i-cexten.ads, i-cobol.adb, i-cobol.ads,
8533 i-cpoint.adb, i-cpoint.ads, i-cpp.adb, i-cpp.ads,
8534 i-cstrea.adb, i-cstrea.ads, i-cstrin.adb, i-cstrin.ads,
8535 i-fortra.adb, i-fortra.ads, i-os2err.ads, i-os2lib.adb,
8536 i-os2lib.ads, i-os2syn.ads, i-os2thr.ads, i-pacdec.adb,
8537 i-pacdec.ads, i-vxwork.ads, impunit.adb, impunit.ads,
8538 inline.adb, inline.ads, interfac.ads, ioexcept.ads,
8539 itypes.adb, itypes.ads, krunch.adb, krunch.ads,
8540 layout.adb, layout.ads, lib-list.adb, lib-load.adb,
8541 lib-load.ads, lib-sort.adb, lib-util.adb, lib-util.ads,
8542 lib-writ.adb, lib-writ.ads, lib-xref.adb, lib-xref.ads,
8543 lib.adb, lib.ads, live.adb, live.ads,
8544 machcode.ads, make.adb, make.ads, makeusg.adb,
8545 makeusg.ads, math_lib.adb, mdll-fil.adb, mdll-fil.ads,
8546 mdll-utl.adb, mdll-utl.ads, mdll.adb, mdll.ads,
8547 memroot.adb, memroot.ads, memtrack.adb, mlib-fil.adb,
8548 mlib-fil.ads, mlib-prj.adb, mlib-prj.ads, mlib-tgt.adb,
8549 mlib-tgt.ads, mlib-utl.adb, mlib-utl.ads, mlib.adb,
8550 mlib.ads, namet.adb, namet.ads, nlists.adb,
8551 nlists.ads, opt.adb, opt.ads, osint-b.adb,
8552 osint-b.ads, osint-c.adb, osint-c.ads, osint-l.adb,
8553 osint-l.ads, osint-m.adb, osint-m.ads, osint.adb,
8554 osint.ads, output.adb, output.ads, par-ch10.adb,
8555 par-ch11.adb, par-ch12.adb, par-ch13.adb, par-ch2.adb,
8556 par-ch3.adb, par-ch4.adb, par-ch5.adb, par-ch6.adb,
8557 par-ch7.adb, par-ch8.adb, par-ch9.adb, par-endh.adb,
8558 par-labl.adb, par-load.adb, par-prag.adb, par-sync.adb,
8559 par-tchk.adb, par-util.adb, par.adb, par.ads,
8560 prj-attr.adb, prj-attr.ads, prj-com.adb, prj-com.ads,
8561 prj-dect.adb, prj-dect.ads, prj-env.adb, prj-env.ads,
8562 prj-ext.adb, prj-ext.ads, prj-makr.adb, prj-makr.ads,
8563 prj-nmsc.adb, prj-nmsc.ads, prj-pars.adb, prj-pars.ads,
8564 prj-part.adb, prj-part.ads, prj-pp.adb, prj-pp.ads,
8565 prj-proc.adb, prj-proc.ads, prj-strt.adb, prj-strt.ads,
8566 prj-tree.adb, prj-tree.ads, prj-util.adb, prj-util.ads,
8567 prj.adb, prj.ads, repinfo.adb, repinfo.ads,
8568 restrict.adb, restrict.ads, rident.ads, rtsfind.adb,
8569 rtsfind.ads, s-addima.adb, s-addima.ads, s-arit64.adb,
8570 s-arit64.ads, s-assert.adb, s-assert.ads, s-asthan.adb,
8571 s-asthan.ads, s-atacco.adb, s-atacco.ads, s-auxdec.adb,
8572 s-auxdec.ads, s-bitops.adb, s-bitops.ads, s-chepoo.ads,
8573 s-crc32.adb, s-crc32.ads, s-direio.adb, s-direio.ads,
8574 s-errrep.adb, s-errrep.ads, s-except.ads, s-exctab.adb,
8575 s-exctab.ads, s-exnflt.ads, s-exngen.adb, s-exngen.ads,
8576 s-exnint.ads, s-exnlfl.ads, s-exnlin.ads, s-exnllf.ads,
8577 s-exnlli.ads, s-exnsfl.ads, s-exnsin.ads, s-exnssi.ads,
8578 s-expflt.ads, s-expgen.adb, s-expgen.ads, s-expint.ads,
8579 s-explfl.ads, s-explin.ads, s-expllf.ads, s-explli.ads,
8580 s-expllu.adb, s-expllu.ads, s-expmod.adb, s-expmod.ads,
8581 s-expsfl.ads, s-expsin.ads, s-expssi.ads, s-expuns.adb,
8582 s-expuns.ads, s-fatflt.ads, s-fatgen.adb, s-fatgen.ads,
8583 s-fatlfl.ads, s-fatllf.ads, s-fatsfl.ads, s-ficobl.ads,
8584 s-fileio.adb, s-fileio.ads, s-finimp.adb, s-finimp.ads,
8585 s-finroo.adb, s-finroo.ads, s-fore.adb, s-fore.ads,
8586 s-gloloc.adb, s-gloloc.ads, s-imgbiu.adb, s-imgbiu.ads,
8587 s-imgboo.adb, s-imgboo.ads, s-imgcha.adb, s-imgcha.ads,
8588 s-imgdec.adb, s-imgdec.ads, s-imgenu.adb, s-imgenu.ads,
8589 s-imgint.adb, s-imgint.ads, s-imgllb.adb, s-imgllb.ads,
8590 s-imglld.adb, s-imglld.ads, s-imglli.adb, s-imglli.ads,
8591 s-imgllu.adb, s-imgllu.ads, s-imgllw.adb, s-imgllw.ads,
8592 s-imgrea.adb, s-imgrea.ads, s-imguns.adb, s-imguns.ads,
8593 s-imgwch.adb, s-imgwch.ads, s-imgwiu.adb, s-imgwiu.ads,
8594 s-inmaop.ads, s-interr.adb, s-interr.ads, s-intman.ads,
8595 s-io.adb, s-io.ads, s-maccod.ads, s-mantis.adb,
8596 s-mantis.ads, s-mastop.adb, s-mastop.ads, s-memory.adb,
8597 s-memory.ads, s-osprim.ads, s-pack03.adb, s-pack03.ads,
8598 s-pack05.adb, s-pack05.ads, s-pack06.adb, s-pack06.ads,
8599 s-pack07.adb, s-pack07.ads, s-pack09.adb, s-pack09.ads,
8600 s-pack10.adb, s-pack10.ads, s-pack11.adb, s-pack11.ads,
8601 s-pack12.adb, s-pack12.ads, s-pack13.adb, s-pack13.ads,
8602 s-pack14.adb, s-pack14.ads, s-pack15.adb, s-pack15.ads,
8603 s-pack17.adb, s-pack17.ads, s-pack18.adb, s-pack18.ads,
8604 s-pack19.adb, s-pack19.ads, s-pack20.adb, s-pack20.ads,
8605 s-pack21.adb, s-pack21.ads, s-pack22.adb, s-pack22.ads,
8606 s-pack23.adb, s-pack23.ads, s-pack24.adb, s-pack24.ads,
8607 s-pack25.adb, s-pack25.ads, s-pack26.adb, s-pack26.ads,
8608 s-pack27.adb, s-pack27.ads, s-pack28.adb, s-pack28.ads,
8609 s-pack29.adb, s-pack29.ads, s-pack30.adb, s-pack30.ads,
8610 s-pack31.adb, s-pack31.ads, s-pack33.adb, s-pack33.ads,
8611 s-pack34.adb, s-pack34.ads, s-pack35.adb, s-pack35.ads,
8612 s-pack36.adb, s-pack36.ads, s-pack37.adb, s-pack37.ads,
8613 s-pack38.adb, s-pack38.ads, s-pack39.adb, s-pack39.ads,
8614 s-pack40.adb, s-pack40.ads, s-pack41.adb, s-pack41.ads,
8615 s-pack42.adb, s-pack42.ads, s-pack43.adb, s-pack43.ads,
8616 s-pack44.adb, s-pack44.ads, s-pack45.adb, s-pack45.ads,
8617 s-pack46.adb, s-pack46.ads, s-pack47.adb, s-pack47.ads,
8618 s-pack48.adb, s-pack48.ads, s-pack49.adb, s-pack49.ads,
8619 s-pack50.adb, s-pack50.ads, s-pack51.adb, s-pack51.ads,
8620 s-pack52.adb, s-pack52.ads, s-pack53.adb, s-pack53.ads,
8621 s-pack54.adb, s-pack54.ads, s-pack55.adb, s-pack55.ads,
8622 s-pack56.adb, s-pack56.ads, s-pack57.adb, s-pack57.ads,
8623 s-pack58.adb, s-pack58.ads, s-pack59.adb, s-pack59.ads,
8624 s-pack60.adb, s-pack60.ads, s-pack61.adb, s-pack61.ads,
8625 s-pack62.adb, s-pack62.ads, s-pack63.adb, s-pack63.ads,
8626 s-parame.adb, s-parame.ads, s-parint.adb, s-parint.ads,
8627 s-pooglo.adb, s-pooglo.ads, s-pooloc.adb, s-pooloc.ads,
8628 s-poosiz.adb, s-poosiz.ads, s-powtab.ads, s-proinf.adb,
8629 s-proinf.ads, s-rpc.adb, s-rpc.ads, s-scaval.ads,
8630 s-secsta.adb, s-secsta.ads, s-sequio.adb, s-sequio.ads,
8631 s-shasto.adb, s-shasto.ads, s-soflin.adb, s-soflin.ads,
8632 s-sopco3.adb, s-sopco3.ads, s-sopco4.adb, s-sopco4.ads,
8633 s-sopco5.adb, s-sopco5.ads, s-stache.adb, s-stache.ads,
8634 s-stalib.adb, s-stalib.ads, s-stoele.adb, s-stoele.ads,
8635 s-stopoo.ads, s-stratt.adb, s-stratt.ads, s-strops.adb,
8636 s-strops.ads, s-taasde.adb, s-taasde.ads, s-tadeca.adb,
8637 s-tadeca.ads, s-tadert.adb, s-tadert.ads, s-taenca.adb,
8638 s-taenca.ads, s-taprob.adb, s-taprob.ads, s-taprop.ads,
8639 s-tarest.adb, s-tarest.ads, s-tasdeb.adb, s-tasdeb.ads,
8640 s-tasinf.adb, s-tasinf.ads, s-tasini.adb, s-tasini.ads,
8641 s-taskin.adb, s-taskin.ads, s-tasque.adb, s-tasque.ads,
8642 s-tasren.adb, s-tasren.ads, s-tasres.ads, s-tassta.adb,
8643 s-tassta.ads, s-tasuti.adb, s-tasuti.ads, s-tataat.adb,
8644 s-tataat.ads, s-tpinop.adb, s-tpinop.ads, s-tpoben.adb,
8645 s-tpoben.ads, s-tpobop.adb, s-tpobop.ads, s-tposen.adb,
8646 s-tposen.ads, s-traceb.adb, s-traceb.ads, s-traces.adb,
8647 s-traces.ads, s-tratas.adb, s-tratas.ads, s-unstyp.ads,
8648 s-vaflop.adb, s-vaflop.ads, s-valboo.adb, s-valboo.ads,
8649 s-valcha.adb, s-valcha.ads, s-valdec.adb, s-valdec.ads,
8650 s-valenu.adb, s-valenu.ads, s-valint.adb, s-valint.ads,
8651 s-vallld.adb, s-vallld.ads, s-vallli.adb, s-vallli.ads,
8652 s-valllu.adb, s-valllu.ads, s-valrea.adb, s-valrea.ads,
8653 s-valuns.adb, s-valuns.ads, s-valuti.adb, s-valuti.ads,
8654 s-valwch.adb, s-valwch.ads, s-vercon.adb, s-vercon.ads,
8655 s-vmexta.adb, s-vmexta.ads, s-wchcnv.adb, s-wchcnv.ads,
8656 s-wchcon.ads, s-wchjis.adb, s-wchjis.ads, s-wchstw.adb,
8657 s-wchstw.ads, s-wchwts.adb, s-wchwts.ads, s-widboo.adb,
8658 s-widboo.ads, s-widcha.adb, s-widcha.ads, s-widenu.adb,
8659 s-widenu.ads, s-widlli.adb, s-widlli.ads, s-widllu.adb,
8660 s-widllu.ads, s-widwch.adb, s-widwch.ads, s-wwdcha.adb,
8661 s-wwdcha.ads, s-wwdenu.adb, s-wwdenu.ads, s-wwdwch.adb,
8662 s-wwdwch.ads, scans.adb, scans.ads, scn-nlit.adb,
8663 scn-slit.adb, scn.adb, scn.ads, sdefault.ads,
8664 sem.adb, sem.ads, sem_aggr.adb, sem_aggr.ads,
8665 sem_attr.adb, sem_attr.ads, sem_case.adb, sem_case.ads,
8666 sem_cat.adb, sem_cat.ads, sem_ch10.adb, sem_ch10.ads,
8667 sem_ch11.adb, sem_ch11.ads, sem_ch12.adb, sem_ch12.ads,
8668 sem_ch13.adb, sem_ch13.ads, sem_ch2.adb, sem_ch2.ads,
8669 sem_ch3.adb, sem_ch3.ads, sem_ch4.adb, sem_ch4.ads,
8670 sem_ch5.adb, sem_ch5.ads, sem_ch6.adb, sem_ch6.ads,
8671 sem_ch7.adb, sem_ch7.ads, sem_ch8.adb, sem_ch8.ads,
8672 sem_ch9.adb, sem_ch9.ads, sem_disp.adb, sem_disp.ads,
8673 sem_dist.adb, sem_dist.ads, sem_elab.adb, sem_elab.ads,
8674 sem_elim.adb, sem_elim.ads, sem_eval.adb, sem_eval.ads,
8675 sem_intr.adb, sem_intr.ads, sem_maps.adb, sem_maps.ads,
8676 sem_mech.adb, sem_mech.ads, sem_prag.adb, sem_prag.ads,
8677 sem_res.adb, sem_res.ads, sem_smem.adb, sem_smem.ads,
8678 sem_type.adb, sem_type.ads, sem_util.adb, sem_util.ads,
8679 sem_vfpt.adb, sem_vfpt.ads, sem_warn.adb, sem_warn.ads,
8680 sequenio.ads, sfn_scan.adb, sfn_scan.ads, sinfo-cn.adb,
8681 sinfo-cn.ads, sinfo.adb, sinfo.ads, sinput-d.adb,
8682 sinput-d.ads, sinput-l.adb, sinput-l.ads, sinput-p.adb,
8683 sinput-p.ads, sinput.adb, sinput.ads, snames.adb,
8684 snames.ads, sprint.adb, sprint.ads, stand.adb,
8685 stand.ads, stringt.adb, stringt.ads, style.adb,
8686 style.ads, stylesw.adb, stylesw.ads, switch-b.adb,
8687 switch-b.ads, switch-c.adb, switch-c.ads, switch-m.adb,
8688 switch-m.ads, switch.adb, switch.ads, system.ads,
8689 table.adb, table.ads, targparm.adb, targparm.ads,
8690 tbuild.adb, tbuild.ads, text_io.ads, trans.c,
8691 tree_gen.adb, tree_gen.ads, tree_in.adb, tree_in.ads,
8692 tree_io.adb, tree_io.ads, treepr.adb, treepr.ads,
8693 ttypef.ads, ttypes.ads, types.adb, types.ads,
8694 uintp.adb, uintp.ads, uname.adb, uname.ads,
8695 unchconv.ads, unchdeal.ads, urealp.adb, urealp.ads,
8696 usage.adb, usage.ads, validsw.adb, validsw.ads,
8697 widechar.adb, widechar.ads, xeinfo.adb, xnmake.adb,
8698 xr_tabls.adb, xr_tabls.ads, xref_lib.adb, xref_lib.ads,
8699 xsinfo.adb, xsnames.adb, xtreeprs.adb : Merge header,
8700 formatting and other trivial changes from ACT.
8701
dcf92453
ZW
87022003-04-12 Zack Weinberg <zack@codesourcery.com>
8703
8704 * gigi.h, utils2.c (build_constructor):
8705 Rename gnat_build_constructor. Use build_constructor.
8706 * decl.c (gnat_to_gnu_entity)
8707 * trans.c (tree_transform, pos_to_constructor, extract_values)
8708 * ada/utils.c (build_template, convert_to_fat_pointer, convert)
8709 (unchecked_convert)
8710 * ada/utils2.c (build_binary_op, build_call_raise, build_allocator)
8711 (fill_vms_descriptor):
8712 Update to match.
8713
d78e771d
ZW
87142003-04-06 Zack Weinberg <zack@codesourcery.com>
8715
8716 * ada-tree.def: Make fourth element for GNAT_LOOP_ID zero.
8717 * misc.c (gnat_tree_size): New function.
8718 (LANG_HOOKS_TREE_SIZE): Override.
8719
78d55cc8
JM
87202003-04-03 Jason Merrill <jason@redhat.com>
8721
8722 * misc.c (gnat_adjust_rli): #if 0.
8723
b174e2d4
GB
87242003-03-31 Geert Bosch <bosch@gnat.com>
8725
8726 PR ada/10020
8727 * link.c : Fix misspelled "const" keyword
8728
f29a2bd1
MM
87292003-03-23 Mark Mitchell <mark@codesourcery.com>
8730
8731 PR c++/7086
8732 * utils2.c: Adjust calls to put_var_into_stack.
8733
08e247b1
NN
87342003-03-12 Nathanael Nerode <neroden@gcc.gnu.org>
8735
8736 * Make-lang.in, Makefile.in, config-lang.in: GCC, not GNU CC.
8737
4bfec483
NB
87382003-03-08 Neil Booth <neil@daikokuya.co.uk>
8739
8740 * misc.c (gnat_init): Update for new prototype.
8741
3d713bb8
GB
87422003-03-05 Olivier Hainque <hainque@gnat.com>
8743
8744 ada/9961
78d55cc8
JM
8745 * raise.c (__gnat_Unwind_RaiseException): Add prototype to avoid
8746 warning, and fix return type for the IN_RTS && !SJLJ case.
3d713bb8 8747
8b89fcdf
TT
87482003-03-04 Tom Tromey <tromey@redhat.com>
8749
8750 * Make-lang.in (ada.tags): New target.
8751
3d713bb8 87522003-03-04 Olivier Hainque <hainque@act-europe.fr>
23cae84f
OH
8753
8754 ada/9911
8755 * a-except.adb (Unwind_RaiseException): Import a GNAT specific
8756 wrapper, which name remains constant whatever underlying GCC
8757 scheme.
8758
8759 * raise.c (__gnat_Unwind_RaiseException): New wrappers, providing
8760 the stable interface needed for a-except.
8761
f4ae98be
AJ
87622003-03-02 Andreas Jaeger <aj@suse.de>
8763
8764 * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
8765 gnat_ug_wnt.texi: Regenerate.
8766
5348742b
LG
87672003-03-02 Laurent Guerby <guerby@acm.org>
8768
f4ae98be 8769 * Makefile.in (install-gnatlib): Match previous change there
5348742b 8770 so it works.
f4ae98be 8771
8c108db2
AS
87722003-02-28 Andreas Schwab <schwab@suse.de>
8773
8774 * Make-lang.in (install-gnatlib): Change to ada directory before
8775 running make instead of using ada/Makefile directly.
8776
601d71bc
BE
87772003-02-18 Ben Elliston <bje@redhat.com>
8778
8779 Part of fix for PR ada/9406
8780 * gnat_ug.texi (Binder output file): Grammar fix.
8781
bf7c02dd
BE
87822003-02-18 Ben Elliston <bje@redhat.com>
8783
8784 PR other/7350
8785 * 5qtaprop.adb (Sleep): Fix typo in comment.
8786
b3a8389d
JM
87872003-02-04 Joseph S. Myers <jsm@polyomino.org.uk>
8788
8789 * gnat_rm.texi, gnat_ug.texi: Update to GFDL 1.2.
8790 * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
8791 gnat_ug_wnt.texi: Regenerate.
8792
5da14cb5
CC
87932003-02-03 Christian Cornelssen <ccorn@cs.tu-berlin.de>
8794
8795 * Make-lang.in (ada.install-info): Let $(DESTDIR)$(infodir)
8796 be created if necessary.
8797 (ada.install-common): Let $(DESTDIR)$(bindir) be created
8798 if necessary. Remove erroneous and redundant gnatchop
8799 installation commands. Test for gnatdll before attempting
8800 to install it.
8801 (ada.uninstall): Also uninstall gnatfind, gnatxref, gnatlbr,
8802 and gnatdll from all plausible locations.
8803
271bd540
RS
88042003-02-01 Richard Sandiford <rsandifo@redhat.com>
8805
8806 * utils2.c (build_unary_op): Don't check flag_volatile.
8807 * gnat_ug.texi: Remove -fvolatile from example.
8808 * gnat_ug_vxw.texi: Likewise.
8809
c1cc6a51
LG
88102003-01-29 Laurent Guerby <guerby@acm.org>
8811
d78e771d
ZW
8812 PR ada/8344
8813 * final.c: rename to adafinal.c to avoid file name conflicts with gcc file.
8814 * Makefile.in: match previous change.
8815 * Make-lang.in: match previous change.
c1cc6a51 8816
c4039eb0
JS
88172003-01-29 Joel Sherrill <joel@OARcorp.com>
8818
8819 * 5rosinte.ads: Add SIGXCPU.
8820 * 5rtpopsp.adb: New file.
8821 * Make-lang.in: Do not build gnatpsta and gnatpsys when cross.
8822 * Makefile.in: Recognize more RTEMS targets and add the RTEMS
8823 specific file 5rtpopsp.adb.
8824 * adaint.h: Add include of <stdio.h> when target is RTEMS. This
8825 is likely needed for all newlib targets.
8826 * init.c: Add RTEMS specific version of __gnat_initialize().
8827
00d29f7d
RO
88282003-01-28 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
8829
8830 * adaint.c, adaint.h, gmem.c, init.c: Update copyright year.
8831
437026ef
RO
88322003-01-27 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
8833
8834 * init.c (__gnat_error_handler): Make msg const.
8835
8836 * gmem.c (convert_addresses): Move declaration ...
8837 * adaint.h: ... here.
8838 * adaint.c (convert_addresses): Adapt addrs type to match
8839 prototype.
8840
8841 * adaint.c (__gnat_try_lock): Cast pid_t to long, adapt format.
8842
e12825cd
AS
88432003-01-24 Andreas Schwab <schwab@suse.de>
8844
8845 * ada-tree.h (SET_TYPE_DIGITS_VALUE): Add intermediate cast to
8846 size_t to avoid warning.
8847
a8729406
ZW
88482003-01-21 Zack Weinberg <zack@codesourcery.com>
8849
b09b91b9 8850 * Make-lang.in: Disable -Werror for tracebak.c and b_gnatb.c.
a8729406 8851
17211ab5
GK
88522003-01-09 Geoffrey Keating <geoffk@apple.com>
8853
8854 * gnat_rm.texi: Remove RCS version number.
8855
8856 * ada-tree.h (union lang_tree_node): Add chain_next option.
8857
1d27195c
CC
88582003-01-09 Christian Cornelssen <ccorn@cs.tu-berlin.de>
8859
8860 * Make-lang.in (ada.install-info, ada.install-common,
8861 ada.uninstall): Prepend $(DESTDIR) to the destination
8862 directory in all (un)installation commands.
8863 * Makefile.in (install-gnatlib, install-rts): Ditto.
8864
bdefb2ab
JM
88652002-12-28 Joseph S. Myers <jsm@polyomino.org.uk>
8866
8867 * gnat_rm.texi, gnat_ug.texi: Use @copying.
8868 * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
8869 gnat_ug_wnt.texi: Regenerate.
8870
46d40353
JM
88712002-12-23 Joseph S. Myers <jsm@polyomino.org.uk>
8872
8873 * gnat_rm.texi: Include gcc-common.texi. Use GCC version number
8874 only.
8875 * Make-lang.in ($(srcdir)/ada/gnat_ug_unx.info,
8876 $(srcdir)/ada/gnat_ug_vms.info, $(srcdir)/ada/gnat_ug_vxw.info,
8877 $(srcdir)/ada/gnat_ug_wnt.info, $(srcdir)/ada/gnat_rm.info,
8878 ada/gnat_ug_unx.dvi, ada/gnat_ug_vms.dvi, ada/gnat_ug_vxw.dvi,
8879 ada/gnat_ug_wnt.dvi, ada/gnat_rm.dvi): Depend on
8880 $(srcdir)/doc/include/gcc-common.texi.
8881
d2f97d3e
GB
88822002-12-15 Geert Bosch <bosch@gnat.com>
8883
8884 * sem_ch6.adb (Analyze_Subprogram_Body): Fix typo and formatting
8885
93a81b02
GB
88862002-12-14 Geert Bosch <bosch@gnat.com>
8887
4977bab6
ZW
8888 * sem_ch6.adb (Analyze_Subprogram_Body): Recognize additional
8889 case of a body created for a Renaming_As_Body, on which
8890 conformance checks are not performed. Fixes PR ada/5690.
8891
88922002-11-30 Zack Weinberg <zack@codesourcery.com>
8893
8894 * cuintp.c, decl.c, deftarg.c, misc.c, targtyps.c, trans.c,
8895 utils.c, utils2.c: Include coretypes.h and tm.h, and system.h when
8896 not already included.
8897 * Make-lang.in: Update dependencies.
93a81b02 8898
dfc15546
NN
88992002-11-18 Nathanael Nerode <neroden@gcc.gnu.org>
8900 * adaint.c (__gnat_tmp_name): Better, but good enough for now,
4977bab6 8901 solution to buffer overflow bug on GNU/Linux.
dfc15546 8902
8b54424d
NN
89032002-11-14 Nathanael Nerode <neroden@gcc.gnu.org>
8904 Closes PR ada/5856 and PR ada/6919 !
8905 * bindgen.adb: Remove all references to Public_Version.
8906 * comperr.adb: Remove all references to Public_Version and
8907 GNATPRO_Version; correct bug reporting instructions.
8908 * comperr.ads: Change to match bug box.
8909 * gnatvsn.ads: Remove all references to Public version and
8910 GNATPRO version.
8911
cc41268d 89122002-11-13 Nathanael Nerode <neroden@gcc.gnu.org>
1a083c0e
NN
8913 PR ada/6919
8914 * adaint.c (__gnat_tmp_name): Remove buffer overflow bug on
8915 GNU/Linux.
8916
cc41268d
NN
8917 PR ada/6558
8918 * config-lang.in: Remove diff_excludes.
8919
1c7b0712
GS
89202002-11-05 Graham Stott <graham.stott@btinternet.com>
8921 PR ada/8358
8922 * trans.c (gnu_pending_elaboration_lists): New GC root.
4977bab6 8923 (build_unit_elab): Use..
1c7b0712 8924
1c4048ca
GB
89252002-10-30 Geert Bosch <bosch@gnat.com>
8926 PR ada/6558
8927 * misc.c : Include optabs.h
8928
8929 * Make-lang.in (misc.o): Add dependency on optabs.h
8930
f0d96f9c 89312002-10-29 Geert Bosch <bosch@gnat.com>
4977bab6 8932 PR ada/6558
f0d96f9c
GB
8933 * Make-lang.in (gnatbind): Depend on CONFIG_H
8934
a7512dec 89352002-10-29 Geert bosch <bosch@gnat.com>
4977bab6
ZW
8936 PR ada/6558
8937 * misc.c: Unrevert misc.c (1.13)
a7512dec 8938
c6362f4f
NN
89392002-10-28 Nathanael Nerode <neroden@gcc.gnu.org>
8940
8941 * a-chlat9.ads a-cwila9.ads a-dynpri.adb a-retide.adb: Update
8942 maintainership comments.
8943
89442002-09-25 Nathanael Nerode <neroden@gcc.gnu.org>
91ed4b19 8945 PR ada/5904
4977bab6
ZW
8946 * 5ataprop.adb 5atpopsp.adb 5bosinte.adb 5ftaprop.adb
8947 5gtaprop.adb 5htaprop.adb 5rosinte.ads 5staprop.adb
8948 5stpopse.adb 5vtaspri.ads 5zintman.adb 5ztaprop.adb
8949 7staprop.adb: Correct statements in comments about
91ed4b19
NN
8950 maintainership of GNAT.
8951
1f02b6af 8952 PR ada/5904
4977bab6
ZW
8953 * 1ssecsta.adb 1ssecsta.ads adadecode.c adadecode.h aux-io.c
8954 gnatname.adb gnatname.ads mkdir.c osint-b.adb osint-b.ads
8955 osint-c.adb osint-c.ads osint-l.adb osint-l.ads osint-m.adb
8956 osint-m.ads prj-makr.adb prj-makr.ads prj-pp.adb prj-pp.ads
8957 s-atacco.ads s-traceb.adb s-traceb.ads s-traces.adb
8958 s-traces.ads s-tratas.adb s-tratas.ads sinput-d.adb
8959 sinput-d.ads switch-b.adb switch-b.ads switch-c.adb
1f02b6af
NN
8960 switch-c.ads switch-m.adb switch-m.ads: Correct statements in
8961 comments about maintainership of GNAT.
8962
71ff80dc 8963 PR ada/6919 (forward port of patch for PR ada/5904)
4977bab6
ZW
8964 * 1aexcept.adb 1aexcept.ads 41intnam.ads 42intnam.ads
8965 4aintnam.ads 4cintnam.ads 4dintnam.ads 4hexcpol.adb
8966 4lintnam.ads 4mintnam.ads 4nintnam.ads 4onumaux.ads
8967 4pintnam.ads 4rintnam.ads 4sintnam.ads 4uintnam.ads
8968 4vcalend.adb 4vintnam.ads 4wcalend.adb 4wexcpol.adb
8969 4wintnam.ads 4zintnam.ads 4znumaux.ads 4zsytaco.adb
8970 4zsytaco.ads 51osinte.adb 51osinte.ads 52osinte.adb
8971 52osinte.ads 52system.ads 53osinte.ads 5aosinte.ads
8972 5asystem.ads 5atasinf.ads 5ataspri.ads 5avxwork.ads
8973 5bosinte.ads 5bsystem.ads 5cosinte.ads 5dosinte.ads
8974 5esystem.ads 5fosinte.ads 5fsystem.ads 5ftasinf.ads
8975 5ginterr.adb 5gmastop.adb 5gosinte.ads 5gproinf.adb
8976 5gproinf.ads 5gsystem.ads 5gtasinf.adb 5gtasinf.ads
8977 5gtpgetc.adb 5hparame.ads 5hsystem.ads 5htaspri.ads
8978 5iosinte.ads 5itaspri.ads 5ksystem.ads 5kvxwork.ads
8979 5losinte.ads 5lsystem.ads 5mosinte.ads 5mvxwork.ads
8980 5ninmaop.adb 5nintman.adb 5nosinte.ads 5ntaspri.ads
8981 5oosprim.adb 5oparame.adb 5osystem.ads 5posinte.ads
8982 5posprim.adb 5pvxwork.ads 5rosinte.ads 5rparame.adb
8983 5sintman.adb 5sosinte.ads 5sparame.adb 5ssystem.ads
8984 5stasinf.adb 5stasinf.ads 5staspri.ads 5svxwork.ads
8985 5tosinte.ads 5uosinte.ads 5vasthan.adb 5vinterr.adb
8986 5vintman.ads 5vosinte.ads 5vosprim.adb 5vosprim.ads
8987 5vparame.ads 5vsystem.ads 5vtaspri.ads 5vtpopde.adb
8988 5vtpopde.ads 5vvaflop.adb 5wintman.adb 5wmemory.adb
8989 5wosinte.ads 5wosprim.adb 5wsystem.ads 5wtaprop.adb
8990 5wtaspri.ads 5ysystem.ads 5zinterr.adb 5zosinte.adb
8991 5zosinte.ads 5zosprim.adb 5zsystem.ads 6vcpp.adb 6vcstrea.adb
8992 7sosprim.adb 86numaux.adb 86numaux.ads 9drpc.adb a-astaco.adb
8993 a-caldel.ads a-calend.adb a-calend.ads a-chahan.adb
8994 a-chahan.ads a-colien.adb a-colien.ads a-colire.adb
8995 a-colire.ads a-comlin.adb a-comlin.ads a-cwila1.ads
8996 a-decima.adb a-decima.ads a-diocst.adb a-diocst.ads
8997 a-direio.adb a-direio.ads a-einuoc.adb a-einuoc.ads
8998 a-except.adb a-except.ads a-excpol.adb a-exctra.adb
8999 a-exctra.ads a-filico.adb a-filico.ads a-finali.adb
9000 a-finali.ads a-interr.ads a-intsig.adb a-intsig.ads
9001 a-ngcefu.adb a-ngcoty.adb a-ngcoty.ads a-ngelfu.adb
9002 a-nudira.adb a-nudira.ads a-nuflra.adb a-nuflra.ads
9003 a-numaux.ads a-reatim.ads a-retide.ads a-sequio.adb
9004 a-sequio.ads a-siocst.adb a-siocst.ads a-ssicst.adb
9005 a-ssicst.ads a-stmaco.ads a-storio.adb a-strbou.adb
9006 a-strbou.ads a-stream.ads a-strfix.adb a-strfix.ads
9007 a-strmap.adb a-strmap.ads a-strsea.adb a-strsea.ads
9008 a-strunb.adb a-strunb.ads a-ststio.adb a-ststio.ads
9009 a-stunau.adb a-stunau.ads a-stwibo.adb a-stwibo.ads
9010 a-stwifi.adb a-stwima.adb a-stwima.ads a-stwise.adb
9011 a-stwise.ads a-stwiun.adb a-stwiun.ads a-suteio.adb
9012 a-suteio.ads a-swmwco.ads a-swuwti.adb a-swuwti.ads
9013 a-sytaco.adb a-sytaco.ads a-tags.adb a-tags.ads a-tasatt.ads
9014 a-taside.adb a-taside.ads a-teioed.adb a-teioed.ads
9015 a-textio.adb a-textio.ads a-ticoau.adb a-ticoau.ads
9016 a-ticoio.adb a-ticoio.ads a-tideau.adb a-tideau.ads
9017 a-tideio.adb a-tideio.ads a-tienau.adb a-tienau.ads
9018 a-tienio.adb a-tienio.ads a-tifiio.adb a-tifiio.ads
9019 a-tiflau.adb a-tiflau.ads a-tiflio.adb a-tiflio.ads
9020 a-tigeau.adb a-tigeau.ads a-tiinau.adb a-tiinau.ads
9021 a-tiinio.adb a-tiinio.ads a-timoau.adb a-timoau.ads
9022 a-timoio.adb a-timoio.ads a-tiocst.adb a-tiocst.ads
9023 a-titest.adb a-witeio.adb a-witeio.ads a-wtcoau.adb
9024 a-wtcoau.ads a-wtcoio.adb a-wtcstr.adb a-wtcstr.ads
9025 a-wtdeau.adb a-wtdeau.ads a-wtdeio.adb a-wtdeio.ads
9026 a-wtedit.adb a-wtedit.ads a-wtenau.adb a-wtenau.ads
9027 a-wtenio.adb a-wtenio.ads a-wtfiio.adb a-wtfiio.ads
9028 a-wtflau.adb a-wtflau.ads a-wtflio.adb a-wtflio.ads
9029 a-wtgeau.adb a-wtgeau.ads a-wtinau.adb a-wtinau.ads
9030 a-wtinio.adb a-wtmoau.adb a-wtmoau.ads a-wtmoio.adb
9031 a-wtmoio.ads a-wttest.adb ada-tree.def ada-tree.h ada.h
9032 adaint.c adaint.h ali-util.adb ali-util.ads ali.adb ali.ads
9033 alloc.ads argv.c atree.adb atree.ads atree.h back_end.adb
9034 back_end.ads bcheck.adb bcheck.ads binde.adb binde.ads
9035 binderr.adb binderr.ads bindgen.adb bindgen.ads bindusg.adb
9036 bindusg.ads butil.adb butil.ads cal.c casing.adb casing.ads
9037 ceinfo.adb checks.adb checks.ads cio.c comperr.adb comperr.ads
9038 csets.adb csets.ads csinfo.adb cstand.adb cstand.ads
9039 cstreams.c cuintp.c debug.adb debug.ads debug_a.adb
9040 debug_a.ads dec-io.adb dec-io.ads dec.ads decl.c deftarg.c
9041 einfo.adb einfo.ads einfo.h elists.adb elists.ads elists.h
9042 errno.c errout.adb errout.ads eval_fat.adb eval_fat.ads exit.c
9043 exp_aggr.adb exp_aggr.ads exp_attr.adb exp_attr.ads
9044 exp_ch10.ads exp_ch11.adb exp_ch11.ads exp_ch12.adb
9045 exp_ch12.ads exp_ch13.adb exp_ch13.ads exp_ch2.adb exp_ch2.ads
9046 exp_ch3.adb exp_ch3.ads exp_ch4.adb exp_ch4.ads exp_ch5.adb
9047 exp_ch5.ads exp_ch6.adb exp_ch6.ads exp_ch7.adb exp_ch7.ads
9048 exp_ch8.adb exp_ch8.ads exp_ch9.adb exp_ch9.ads exp_code.adb
9049 exp_code.ads exp_dbug.adb exp_dbug.ads exp_disp.adb
9050 exp_disp.ads exp_dist.adb exp_dist.ads exp_fixd.adb
9051 exp_fixd.ads exp_imgv.adb exp_imgv.ads exp_intr.adb
9052 exp_intr.ads exp_pakd.adb exp_pakd.ads exp_prag.adb
9053 exp_prag.ads exp_smem.adb exp_smem.ads exp_strm.adb
9054 exp_strm.ads exp_tss.adb exp_tss.ads exp_util.adb exp_util.ads
9055 exp_vfpt.adb exp_vfpt.ads expander.adb expander.ads fe.h
9056 final.c fmap.adb fmap.ads fname-sf.adb fname-sf.ads
9057 fname-uf.adb fname-uf.ads fname.adb fname.ads freeze.adb
9058 freeze.ads frontend.adb frontend.ads g-calend.ads g-comlin.adb
9059 g-debpoo.adb g-debpoo.ads g-locfil.adb g-os_lib.ads
9060 g-regist.adb g-regist.ads get_targ.adb get_targ.ads gigi.h
9061 gmem.c gnat1drv.adb gnat1drv.ads gnat_ug.texi gnatbind.adb
9062 gnatbind.ads gnatbl.c gnatcmd.adb gnatcmd.ads gnatdll.adb
9063 gnatfind.adb gnatkr.adb gnatkr.ads gnatlbr.adb gnatlink.adb
9064 gnatlink.ads gnatls.adb gnatls.ads gnatmake.adb gnatmake.ads
9065 gnatmem.adb gnatprep.adb gnatprep.ads gnatpsta.adb gnatvsn.ads
9066 gnatxref.adb hlo.adb hlo.ads hostparm.ads i-c.adb i-cexten.ads
9067 i-cobol.adb i-cobol.ads i-cpoint.adb i-cpoint.ads i-cpp.adb
9068 i-cpp.ads i-cstrea.adb i-cstrea.ads i-cstrin.adb i-cstrin.ads
9069 i-fortra.adb i-os2err.ads i-os2lib.adb i-os2lib.ads
9070 i-os2syn.ads i-os2thr.ads i-pacdec.adb i-pacdec.ads
9071 impunit.adb impunit.ads init.c inline.adb inline.ads io-aux.c
9072 itypes.adb itypes.ads krunch.adb krunch.ads lang-options.h
9073 lang-specs.h layout.adb layout.ads lib-list.adb lib-load.adb
9074 lib-load.ads lib-sort.adb lib-util.adb lib-util.ads
9075 lib-writ.adb lib-writ.ads lib-xref.adb lib-xref.ads lib.adb
9076 lib.ads link.c live.adb live.ads make.adb make.ads makeusg.adb
9077 makeusg.ads math_lib.adb mdll.adb mdll.ads memtrack.adb misc.c
9078 namet.adb namet.ads namet.h nlists.adb nlists.ads nlists.h
9079 nmake.adb nmake.ads nmake.adt opt.adb opt.ads osint.adb
9080 osint.ads output.adb output.ads par-ch10.adb par-ch11.adb
9081 par-ch12.adb par-ch13.adb par-ch2.adb par-ch3.adb par-ch4.adb
9082 par-ch5.adb par-ch6.adb par-ch7.adb par-ch8.adb par-ch9.adb
9083 par-endh.adb par-labl.adb par-load.adb par-prag.adb
9084 par-sync.adb par-tchk.adb par-util.adb par.adb par.ads
9085 prj-attr.adb prj-attr.ads prj-com.adb prj-com.ads prj-dect.adb
9086 prj-dect.ads prj-env.adb prj-env.ads prj-ext.adb prj-ext.ads
9087 prj-nmsc.adb prj-nmsc.ads prj-pars.adb prj-pars.ads
9088 prj-part.adb prj-part.ads prj-proc.adb prj-proc.ads
9089 prj-strt.adb prj-strt.ads prj-tree.adb prj-tree.ads
9090 prj-util.adb prj-util.ads prj.adb prj.ads raise.c raise.h
9091 repinfo.adb repinfo.ads repinfo.h restrict.adb restrict.ads
9092 rident.ads rtsfind.adb rtsfind.ads s-addima.adb s-addima.ads
9093 s-arit64.adb s-arit64.ads s-assert.adb s-assert.ads
9094 s-asthan.adb s-asthan.ads s-atacco.adb s-auxdec.adb
9095 s-auxdec.ads s-bitops.adb s-bitops.ads s-chepoo.ads
9096 s-direio.adb s-direio.ads s-except.ads s-exctab.adb
9097 s-exctab.ads s-exnflt.ads s-exngen.adb s-exngen.ads
9098 s-exnint.ads s-exnlfl.ads s-exnlin.ads s-exnllf.ads
9099 s-exnlli.ads s-exnsfl.ads s-exnsin.ads s-exnssi.ads
9100 s-expflt.ads s-expgen.adb s-expgen.ads s-expint.ads
9101 s-explfl.ads s-explin.ads s-expllf.ads s-explli.ads
9102 s-expllu.adb s-expllu.ads s-expmod.adb s-expmod.ads
9103 s-expsfl.ads s-expsin.ads s-expssi.ads s-expuns.adb
9104 s-expuns.ads s-fatflt.ads s-fatgen.adb s-fatgen.ads
9105 s-fatlfl.ads s-fatllf.ads s-fatsfl.ads s-ficobl.ads
9106 s-fileio.adb s-fileio.ads s-finimp.adb s-finimp.ads
9107 s-finroo.adb s-finroo.ads s-fore.adb s-fore.ads s-imgbiu.adb
9108 s-imgbiu.ads s-imgboo.adb s-imgboo.ads s-imgcha.adb
9109 s-imgcha.ads s-imgdec.adb s-imgdec.ads s-imgenu.adb
9110 s-imgenu.ads s-imgint.adb s-imgint.ads s-imgllb.adb
9111 s-imgllb.ads s-imglld.adb s-imglld.ads s-imglli.adb
9112 s-imglli.ads s-imgllu.adb s-imgllu.ads s-imgllw.adb
9113 s-imgllw.ads s-imgrea.adb s-imgrea.ads s-imguns.adb
9114 s-imguns.ads s-imgwch.adb s-imgwch.ads s-imgwiu.adb
9115 s-imgwiu.ads s-inmaop.ads s-interr.adb s-interr.ads
9116 s-intman.ads s-io.adb s-io.ads s-maccod.ads s-mantis.adb
9117 s-mantis.ads s-memory.adb s-memory.ads s-osprim.ads
9118 s-pack03.adb s-pack03.ads s-pack05.adb s-pack05.ads
9119 s-pack06.adb s-pack06.ads s-pack07.adb s-pack07.ads
9120 s-pack09.adb s-pack09.ads s-pack10.adb s-pack10.ads
9121 s-pack11.adb s-pack11.ads s-pack12.adb s-pack12.ads
9122 s-pack13.adb s-pack13.ads s-pack14.adb s-pack14.ads
9123 s-pack15.adb s-pack15.ads s-pack17.adb s-pack17.ads
9124 s-pack18.adb s-pack18.ads s-pack19.adb s-pack19.ads
9125 s-pack20.adb s-pack20.ads s-pack21.adb s-pack21.ads
9126 s-pack22.adb s-pack22.ads s-pack23.adb s-pack23.ads
9127 s-pack24.adb s-pack24.ads s-pack25.adb s-pack25.ads
9128 s-pack26.adb s-pack26.ads s-pack27.adb s-pack27.ads
9129 s-pack28.adb s-pack28.ads s-pack29.adb s-pack29.ads
9130 s-pack30.adb s-pack30.ads s-pack31.adb s-pack31.ads
9131 s-pack33.adb s-pack33.ads s-pack34.adb s-pack34.ads
9132 s-pack35.adb s-pack35.ads s-pack36.adb s-pack36.ads
9133 s-pack37.adb s-pack37.ads s-pack38.adb s-pack38.ads
9134 s-pack39.adb s-pack39.ads s-pack40.adb s-pack40.ads
9135 s-pack41.adb s-pack41.ads s-pack42.adb s-pack42.ads
9136 s-pack43.adb s-pack43.ads s-pack44.adb s-pack44.ads
9137 s-pack45.adb s-pack45.ads s-pack46.adb s-pack46.ads
9138 s-pack47.adb s-pack47.ads s-pack48.adb s-pack48.ads
9139 s-pack49.adb s-pack49.ads s-pack50.adb s-pack50.ads
9140 s-pack51.adb s-pack51.ads s-pack52.adb s-pack52.ads
9141 s-pack53.adb s-pack53.ads s-pack54.adb s-pack54.ads
9142 s-pack55.adb s-pack55.ads s-pack56.adb s-pack56.ads
9143 s-pack57.adb s-pack57.ads s-pack58.adb s-pack58.ads
9144 s-pack59.adb s-pack59.ads s-pack60.adb s-pack60.ads
9145 s-pack61.adb s-pack61.ads s-pack62.adb s-pack62.ads
9146 s-pack63.adb s-pack63.ads s-parame.adb s-parame.ads
9147 s-parint.adb s-parint.ads s-pooglo.adb s-pooglo.ads
9148 s-pooloc.adb s-pooloc.ads s-poosiz.adb s-poosiz.ads
9149 s-powtab.ads s-proinf.adb s-proinf.ads s-rpc.adb s-rpc.ads
9150 s-scaval.ads s-secsta.adb s-secsta.ads s-sequio.adb
9151 s-sequio.ads s-shasto.adb s-shasto.ads s-soflin.adb
9152 s-soflin.ads s-sopco3.adb s-sopco3.ads s-sopco4.adb
9153 s-sopco4.ads s-sopco5.adb s-sopco5.ads s-stache.adb
9154 s-stache.ads s-stalib.adb s-stalib.ads s-stoele.adb
9155 s-stopoo.ads s-stratt.adb s-stratt.ads s-strops.adb
9156 s-strops.ads s-taprob.ads s-taprop.ads s-tarest.ads
9157 s-tasdeb.adb s-tasdeb.ads s-tasinf.adb s-tasinf.ads
9158 s-tasini.ads s-taskin.ads s-tasren.ads s-tasres.ads
9159 s-tassta.ads s-tpinop.adb s-tpinop.ads s-tpoben.ads
9160 s-tpobop.ads s-unstyp.ads s-vaflop.adb s-vaflop.ads
9161 s-valboo.adb s-valboo.ads s-valcha.adb s-valcha.ads
9162 s-valdec.adb s-valdec.ads s-valenu.adb s-valenu.ads
9163 s-valint.adb s-valint.ads s-vallld.adb s-vallld.ads
9164 s-vallli.adb s-vallli.ads s-valllu.adb s-valllu.ads
9165 s-valrea.adb s-valrea.ads s-valuns.adb s-valuns.ads
9166 s-valuti.adb s-valuti.ads s-valwch.adb s-valwch.ads
9167 s-vercon.adb s-vercon.ads s-vmexta.adb s-vmexta.ads
9168 s-wchcnv.adb s-wchcnv.ads s-wchcon.ads s-wchjis.adb
9169 s-wchjis.ads s-wchstw.adb s-wchstw.ads s-wchwts.adb
9170 s-wchwts.ads s-widboo.adb s-widboo.ads s-widcha.adb
9171 s-widcha.ads s-widenu.adb s-widenu.ads s-widlli.adb
9172 s-widlli.ads s-widllu.adb s-widllu.ads s-widwch.adb
9173 s-widwch.ads s-wwdcha.adb s-wwdcha.ads s-wwdenu.adb
9174 s-wwdenu.ads s-wwdwch.adb s-wwdwch.ads scans.adb scans.ads
9175 scn-nlit.adb scn-slit.adb scn.adb scn.ads sdefault.ads sem.adb
9176 sem.ads sem_aggr.adb sem_aggr.ads sem_attr.adb sem_attr.ads
9177 sem_case.adb sem_case.ads sem_cat.adb sem_cat.ads sem_ch10.adb
9178 sem_ch10.ads sem_ch11.adb sem_ch11.ads sem_ch12.adb
9179 sem_ch12.ads sem_ch13.adb sem_ch13.ads sem_ch2.adb sem_ch2.ads
9180 sem_ch3.adb sem_ch3.ads sem_ch4.adb sem_ch4.ads sem_ch5.adb
9181 sem_ch5.ads sem_ch6.adb sem_ch6.ads sem_ch7.adb sem_ch7.ads
9182 sem_ch8.adb sem_ch8.ads sem_ch9.adb sem_ch9.ads sem_disp.adb
9183 sem_disp.ads sem_dist.adb sem_dist.ads sem_elab.adb
9184 sem_elab.ads sem_elim.adb sem_elim.ads sem_eval.adb
9185 sem_eval.ads sem_intr.adb sem_intr.ads sem_maps.adb
9186 sem_maps.ads sem_mech.adb sem_mech.ads sem_prag.adb
9187 sem_prag.ads sem_res.adb sem_res.ads sem_smem.adb sem_smem.ads
9188 sem_type.adb sem_type.ads sem_util.adb sem_util.ads
9189 sem_vfpt.adb sem_vfpt.ads sem_warn.adb sem_warn.ads
9190 sfn_scan.adb sfn_scan.ads sinfo-cn.adb sinfo-cn.ads sinfo.adb
9191 sinfo.ads sinfo.h sinput-l.adb sinput-l.ads sinput-p.adb
9192 sinput-p.ads sinput.adb sinput.ads snames.adb snames.ads
9193 snames.h sprint.adb sprint.ads stand.adb stand.ads stringt.adb
9194 stringt.ads stringt.h style.adb style.ads stylesw.adb
9195 stylesw.ads switch.adb switch.ads sysdep.c system.ads
9196 table.adb table.ads targparm.adb targparm.ads targtyps.c
9197 tbuild.adb tbuild.ads trans.c tree_gen.adb tree_gen.ads
9198 tree_in.adb tree_in.ads tree_io.adb tree_io.ads treepr.adb
9199 treepr.ads treeprs.ads treeprs.adt ttypef.ads ttypes.ads
9200 types.adb types.ads types.h uintp.adb uintp.ads uintp.h
9201 uname.adb uname.ads urealp.adb urealp.ads urealp.h usage.adb
9202 usage.ads utils.c utils2.c validsw.adb validsw.ads
9203 widechar.adb widechar.ads xeinfo.adb xnmake.adb xr_tabls.adb
9204 xr_tabls.ads xref_lib.adb xref_lib.ads xsinfo.adb xsnames.adb
71ff80dc
NN
9205 xtreeprs.adb: Correct statements in comments about maintainership
9206 of GNAT.
9207
b4f94ac1
ZW
92082002-09-23 Zack Weinberg <zack@codesourcery.com>
9209
9210 * Make-lang.in (EXTRA_GNATBIND_OBJS): Add version.o.
9211 * Makefile.in (TOOLS_LIBS): Add ../../version.o.
9212 * gnatvsn.ads: Gnat_Version_String is now a function.
9213 * gnatvsn.adb: New file. When asked for Gnat_Version_String,
9214 copy the C version_string into a String and return it.
9215 * gnatcmd.adb, gnatkr.adb, gnatlbr.adb, gnatlink.adb,
9216 gnatls.adb,gnatmake.adb, gnatprep.adb, gnatpsta.adb:
9217 Remove pragma Ident (Gnat_Version_String). If this was the
9218 sole use of package Gnatvsn, remove the with statement too.
9219 * gnat1drv.adb: Tweak -gnatv output.
9220
eaff3bf8
RH
92212002-09-17 Richard Henderson <rth@redhat.com>
9222
9223 * trans.c (tree_transform): Use real_ldexp not REAL_VALUE_LDEXP.
9224 * config/dsp16xx/dsp16xx.md (fixuns_trunchfhi2): Use real_2expN.
9225 * config/mips/mips.md (fixuns_truncdfsi2): Likewise.
9226 (fixuns_truncdfdi2, fixuns_truncsfsi2, fixuns_truncsfdi2): Likewise.
9227 * config/m68k/m68k.c (floating_exact_log2): Use real_exponent
9228 and real_2expN instead of a loop.
9229 * doc/tm.texi (REAL_VALUE_LDEXP): Remove.
9230 (REAL_VALUE_RNDZINT, REAL_VALUE_UNSIGNED_RNDZINT): Remove.
9231
d241f75b 92322002-08-25 Andre Leis <a.leis@gmx.net>
f4ae98be 9233 David Billinghurst (David.Billinghurst@riotinto.com>
d241f75b 9234
f4ae98be 9235 * sysdep.c (__gnat_ttyname): include <termios.h> on cygwin
d241f75b 9236
4320085a
RO
92372002-08-13 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
9238
9239 * Make-lang.in (gnatbind$(exeext)): Link with $(SYSLIBS).
9240 Remove $(CONFIG_H) dependency.
9241
22aa533e
NS
92422002-08-08 Nathan Sidwell <nathan@codesourcery.com>
9243
9244 * ada/Make-lang.in (ada.mostlyclean): Remove coverage files.
9245
1dcd444b
KG
92462002-07-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
9247
9248 * adadecode.c (ada_demangle): Use xstrdup in lieu of
9249 xmalloc/strcpy.
9250 * misc.c (gnat_decode_option): Likewise.
9251
7bc7d27b
FW
92522002-07-15 Florian Weimer <fw@deneb.enyo.de>
9253
9254 * make.adb (Add_Switch): Make Generic_Position a procedure. The
9255 function approach did not work well because of a side effect (the
9256 function call could reallocate the table which was being indexed
9257 using its result). Fixes ada/4851. [RESURRECTED]
9258
6a2dd09a
RS
92592002-07-01 Roger Sayle <roger@eyesopen.com>
9260
9261 * ada/utils.c (builtin_function): Accept an additional parameter.
9262
c168bbd7
AJ
92632002-06-28 Andreas Jaeger <aj@suse.de>
9264
9265 PR ada/7144
9266 * Makefile.in: Fix typo in comment, patch by Adrian Knoth
9267 <adi@thur.de>.
9268
b41e09a7
KG
92692002-06-24 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
9270
9271 * Makefile.in (SHELL): Set to @SHELL@.
9272
62c71f4b
KG
92732002-06-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
9274
9275 * utils.c (init_gigi_decls): Use ARRAY_SIZE in lieu of explicit
9276 array size calculation.
9277
94213cff
AJ
92782002-06-04 Andreas Jaeger <aj@suse.de>
9279
9280 * Make-lang.in (gnatbind): Readd rule that has been lost in last
9281 patch.
9282
e2500fed
GK
92832002-06-03 Geoffrey Keating <geoffk@redhat.com>
9284
9285 Merge from pch-branch:
9286
9287 * config-lang.in (gtfiles): Add ada-tree.h.
9288 * ada-tree.h (SET_TYPE_CI_CO_LIST): New.
9289 (SET_TYPE_MODULUS): New.
9290 (SET_TYPE_INDEX): New.
9291 (SET_TYPE_DIGITS_VALUE): New.
9292 (SET_TYPE_RM_SIZE): New.
9293 (SET_TYPE_UNCONSTRAINED_ARRAY): New.
9294 (SET_TYPE_ADA_SIZE): New.
9295 (SET_TYPE_ACTUAL_BOUNDS): New.
9296 (SET_DECL_CONST_CORRESPONDING_VAR): New.
9297 (SET_DECL_ORIGINAL_FIELD): New.
9298 (TREE_LOOP_ID): Correct typo.
9299 * decl.c: Use new macros.
9300 * utils.c: Include debug.h, use new macros.
94213cff 9301 * utils2.c: Use new macros.
e2500fed
GK
9302
9303 * ada-tree.h: Update all macros for new tree description.
9304 (struct tree_loop_id): New.
9305 (union lang_tree_node): New.
9306 (struct lang_decl): New.
9307 (struct lang_type): New.
9308 * misc.c (gnat_mark_tree): Delete.
9309 (LANG_HOOKS_MARK_TREE): Delete.
9310 * trans.c (tree_transform): No longer any need to cast
9311 for TREE_LOOP_ID.
9312
9313 * utils.c (struct language_function): New dummy structure.
9314
9315 * Makefile.in (decl.o): gt-ada-<filename.h> is in objdir, not srcdir.
9316 (misc.o): Likewise.
9317 (utils.o): Likewise; also gtype-ada.h.
9318 * Make-lang.in (gnat1): Add dependency on s-gtype.
9319 (gnatbind): Add dependency on $(CONFIG_H).
9320 * utils.c: Correct last #include.
9321 (stuct e_stack): Remove unnecessary 'static'.
9322 (mark_e_stack): Remove unused prototype.
9323
9324 * scn-nlit.adb: Remove whitespace after version number to
9325 keep lines under 80 chars.
9326 * snames.adb: Likewise.
9327 * treepr.ads: Likewise.
94213cff 9328
e2500fed
GK
9329 * Makefile.in (decl.o): Include gt-ada-<filename>.h.
9330 (misc.o): Likewise.
9331 (utils.o): Include gt-ada-<filename>.h and gtype-ada.h.
9332 * config-lang.in (gtfiles): New.
9333 * decl.c: Use gengtype for roots.
9334 * gigi.h: Use gengtype for roots.
9335 * trans.c: Use gengtype for roots.
9336 * utils.c: Use gengtype for roots, marking. Include gtype-ada.h.
9337
27e511e0
GDR
93382002-06-02 Gabriel Dos Reis <gdr@codesourcery.com>
9339
9340 * misc.c (gnat_init): Adjust setting of internal_error_function.
9341
113dc143
JM
93422002-06-01 Joseph S. Myers <jsm28@cam.ac.uk>
9343
9344 * gnat_ug.texi: Use @ifnottex instead of @ifinfo.
9345 * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
9346 gnat_ug_wnt.texi: Regenerate.
9347
5321fb3e
FW
93482002-05-31 Florian Weimer <fw@deneb.enyo.de>
9349
15e6136e
FW
9350 * 5ntaprop.adb (with System.OS_Primitives): Remove.
9351
019310ac
FW
9352 * cstreams.c (max_path_len): Move from here ...
9353 * adaint.c (__gnat_max_path_len): ... to here.
9354 * adaint.c (__gnat_max_path_len): Declare.
9355 * g-dirope.adb (Max_Path): Adjust.
9356 * g-os_lib.adb (Normalize_Pathname.Max_Path): Adjust.
94213cff 9357 * i-cstrea.ads (max_path_len): Adjust.
019310ac
FW
9358 * osint.adb (Get_RTS_Search_Dir.Max_Path): Adjust.
9359 * xr_tabls.adb (Dir_Name.Max_Path: Adjust.
9360
5321fb3e
FW
9361 * Makefile.in, Make-lang.in: Documentation is now built in
9362 Make-lang.in. Store Info and generated Texinfo files in the
9363 source directory.
9364 * gnat_ug.texi: Remove CVS keywords, correct version number.
9365 Set file name correctly.
9366
9367 * gnat_ug_*.texi: Add.
9368 * .cvsignore: Ignore generated Texinfo files.
9369
b1c12c4b
ZW
93702002-05-30 Zack Weinberg <zack@codesourcery.com>
9371
9372 * ada.h: Add MI guard macro.
9373 (SUBTYPE): Define constants with an anonymous enum, not static
9374 const variables.
9375 (IN): Cast constants to appropriate type before use.
9376
ead33da9
JM
93772002-05-26 Joseph S. Myers <jsm28@cam.ac.uk>
9378
9379 * gnatvsn.ads (Gnat_Version_String): Change to "3.2 20020526
9380 (experimental)".
9381
7d600178
RO
93822002-05-23 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
9383
9384 * Make-lang.in (CP, ECHO): Copy from Makefile.in.
9385 (X_ADA_CFLAGS, T_ADA_CFLAGS, X_ADAFLAGS, T_ADAFLAGS): Likewise.
9386 (ALL_ADAFLAGS, FORCE_DEBUG_ADAFLAGS, ADA_CFLAGS): Likewise.
9387 (ALL_ADA_CFLAGS): Likewise.
9388 (ADA_INCLUDES): Likewise.
9389 Adapt for new working dir.
9390 (GNATBIND): Use Makefile.in version.
9391 (.SUFFIXES): Copy from Makefile.in.
9392 (ada-warn): Define.
9393 (.adb.o, .ads.o): Copy from Makefile.in.
9394 Added $(OUTPUT_OPTION).
9395 (GNAT1_C_OBJS): Moved from Makefile.in.
9396 Prefix with ada subdir.
9397 (GNAT_ADA_OBJS, GNAT1_ADA_OBJS, GNAT1_OBJS, GNATBIND_OBJS): Likewise.
9398 (EXTRA_GNAT1_OBJS): Moved from Makefile.in.
9399 Adapt for new working dir.
9400 (EXTRA_GNATBIND_OBJS): Likewise.
9401 (ADA_BACKEND): Moved from Makefile.in.
9402 Renamed to avoid conflict with global BACKEND.
9403 Use that one.
9404 (TARGET_ADA_SRCS): Moved from Makefile.in.
9405 (gnat1$(exeext)): Replaced recursive rule with Makefile.in version.
9406 Use ADA_BACKEND.
9407 (gnatbind$(exeext)): Replaced recursive rule with Makefile.in version.
9408 (ada_extra_files): Moved from Makefile.in.
9409 Prefix with ada subdir.
9410 (ada/b_gnat1.c, ada/b_gnat1.o, ada/b_gnatb.c, ada/b_gnatb.o): Likewise.
9411 (ada/treeprs.ads, ada/einfo.h, ada/sinfo.h, ada/nmake.adb): Likewise.
9412 (ada/nmake.ads): Likewise.
9413 (update-sources): Moved from Makefile.in.
9414 Prefix with ada subdir.
9415 (ada/sdefault.adb, ada/stamp-sdefault, ada/sdefault.o): Likewise.
9416 (ADA_TREE_H): Likewise.
9417 (ada/a-except.o, ada/s-assert.o, ada/s-memory.o): Likewise.
9418 (ada/memtrack.o): Likewise.
9419 (ada/adadecode.o): Likewise.
9420 Update dependencies.
9421 (ada/adaint.o): New.
9422 (ada/argv.o): Moved from Makefile.in.
9423 Prefix with ada subdir.
94213cff 9424 Update dependencies.
7d600178
RO
9425 (ada/cstreams.o, ada/exit.o, ada/final.o, ada/link.o): Likewise.
9426 (ada/cio.o, ada/init.o, ada/raise.o, ada/tracebak.o): Likewise.
9427 (ada/cuintp.o, ada/decl.o, ada/misc.o): Moved from Makefile.in.
9428 Prefix with ada subdir.
9429 (ada/targtyps.o, ada/trans.o, ada/utils.o, ada/utils2.o): Likewise.
9430 (GNAT DEPENDENCIES): Regenerate.
9431 * Makefile.in (MACHMODE_H, RTL_H, TREE_H): Removed, provided by
9432 toplevel Makefile.in.
9433 (EXTRA_GNAT1_OBJS, EXTRA_GNATBIND_OBJS): Removed.
9434 (TARGET_ADA_SRCS): Removed.
9435 (GNAT1_C_OBJS, GNAT_ADA_OBJS, GNAT1_ADA_OBJS, GNAT1_OBJS): Likewise.
9436 (GNATBIND_OBJS): Likewise.
9437 (ADA_INCLUDE_DIR, ADA_RTL_OBJ_DIR): Moved here.
9438 (BACKEND): Removed.
9439 (../gnat1$(exeext), ../gnatbind$(exeext)): Likewise.
9440 (TREE_H): Likewise.
9441 (ada_extra_files): Likewise.
9442 (b_gnat1.c, b_gnat1.o, b_gnatb.c, b_gnatb.o): Likewise.
9443 (treeprs.ads, einfo.h, sinfo.h, nmake.adb, nmake.ads): Likewise.
9444 (update-sources): Likewise.
9445 (sdefault.adb, stamp-sdefault, sdefault.o): Likewise
9446 (ADA_TREE_H): Likewise.
9447 (adadecoce.o): Likewise.
9448 (cuintp.o, decl.o, misc.o, trans.o, utils.o, utils2.o): Likewise.
9449 (GNAT DEPENDENCIES): Likewise.
9450
1e6347d8
RO
94512002-05-16 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
9452
9453 * Makefile.adalib: Allow for PWDCMD to override hardcoded pwd.
9454 * Makefile.in: Likewise.
9455
db80834f
RO
94562002-05-14 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
9457
9458 * Make-lang.in (gnat1$(exeext), gnatbind$(exeext), gnattools):
9459 Restore $(CONFIG_H) and prefix.o dependencies.
9460 (ada.stage[1-4]): Depend on stage?-start.
9461
9462 * Makefile.in (b_gnatb.c): Depend on interfac.o.
9463
ac293f98
JW
94642002-05-02 Jim Wilson <wilson@redhat.com>
9465
9466 * utils.c (finish_record_type): Change record_size to record_type.
9467
b303008e
JDA
94682001-05-02 John David Anglin <dave@hiauly1.hia.nrc.ca>
9469
9470 * ada/Makefile.in (X_ADA_CFLAGS, T_ADA_CFLAGS): New fragment overrides.
9471 (ALL_ADA_CFLAGS): Define. Replace ADA_CFLAGS with ALL_ADA_CFLAGS in
9472 ALL_ADAFLAGS, MOST_ADAFLAGS, and all compilations using CC.
94213cff 9473
ff45c01e
NB
94742002-04-25 Neil Booth <neil@daikokuya.demon.co.uk>
9475
9476 * misc.c (gnat_parse_file): Update.
9477
349ae713
NB
94782002-04-24 Neil Booth <neil@daikokuya.demon.co.uk>
9479
9480 * misc.c (gnat_init): Don't set lang_attribute_common.
9481
ace133aa
JM
94822002-04-21 Joseph S. Myers <jsm28@cam.ac.uk>
9483
9484 * gnat_rm.texi: Use @ifnottex instead of @ifinfo.
9485
5c558dd9
FW
94862002-04-21 Florian Weimer <fw@deneb.enyo.de>
9487
b4f94ac1 9488 * gnat_ug.texi: New file.
88e1739c 9489
5c558dd9
FW
9490 * gnat_rm.texi: Do not include texiplus.texi. Include fdl.texi
9491 instead of gfdl.texi
9492
9493 * xgnatug.adb, ug_words: New files.
9494
9495 * Makefile.in (doc, dvi): New targets. Build gnat_ug_*,
b4f94ac1 9496 gnat_rm and gnat-style manuals.
5c558dd9 9497
7a228918
NB
94982002-04-18 Neil Booth <neil@daikokuya.demon.co.uk>
9499
9500 * gigi.h (incomplete_type_error): Remove.
9501 * utils.c (incomplete_type_error): Remove.
9502
b2123dc0
MM
95032002-04-16 Mark Mitchell <mark@codesourcery.com>
9504
9505 * trans.c (tree_transform): Add has_scope argument to
9506 expand_start_stmt_expr.
9507
78ef5b89
NB
95082002-04-04 Neil Booth <neil@daikokuya.demon.co.uk>
9509
9510 * gigi.h (truthvalue_conversion): Rename.
9511 * misc.c (LANG_HOOKS_TRUTHVALUE_CONVERSION): Redefine.
9512 * trans.c (tree_transform): Update.
9513 * utils2.c (truthvalue_conversion): Rename, update.
9514 (build_binary_op, build_unary_op): Update.
9515
a71742a8
LG
95162002-04-04 Laurent Guerby <guerby@acm.org>
9517
9518 * make.adb: Implement -margs, remove restriction about file name placement.
9519 * makeusg.adb: Documentation update.
9520 * Makefile.in (TOOLS_FLAGS_TO_PASS): Add VPATH=$(fsrcdir).
9521 * Makefile.in (gnattools3): Comment out, gnatmem does not build without libaddr2line.
9522
82a4b025
NB
95232002-04-04 Neil Booth <neil@daikokuya.demon.co.uk>
9524
9525 * utils.c (create_subprog_decl): Use SET_DECL_ASSEMBLER_NAME.
9526 (builtin_function): Similarly.
9527
dffd7eb6
NB
95282002-04-01 Neil Booth <neil@daikokuya.demon.co.uk>
9529
9530 * decl.c (gnat_to_gnu_entity): Update.
9531 * gigi.h (mark_addressable): Rename.
9532 * misc.c (LANG_HOOKS_MARK_ADDRESSABLE): Redefine.
9533 * trans.c (tree_transform): Update.
9534 * utils.c (create_var_decl): Update.
9535 * util2.c (build_binary_op, build_unary_op,
9536 fill_vms_descriptor): Update.
9537 (mark_addressable): Rename, update.
9538
ceef8ce4
NB
95392002-04-01 Neil Booth <neil@daikokuya.demon.co.uk>
9540
9541 * gigi.h (unsigned_type, signed_type, signed_or_unsigned_type):
9542 Rename.
9543 * misc.c (LANG_HOOKS_SIGNED_TYPE, LANG_HOOKS_UNSIGNED_TYPE,
9544 LANG_HOOKS_SIGNED_OR_UNSIGNED_TYPE): New.
9545 * trans.c (tree_transform, convert_with_check): Update.
9546 * utils.c (unsigned_type, signed_type, signed_or_unsigned_type):
9547 Rename.
9548
48a7a235
NB
95492002-03-31 Neil Booth <neil@daikokuya.demon.co.uk>
9550
9551 * gigi.h (finish_incomplete_decl): Rename.
9552 * misc.c (LANG_HOOKS_FINISH_INCOMPLETE_DECL): Redefine.
9553 * utils.c (gnat_init_decl_processing): Don't set hook.
9554 (finish_incomplete_decl): Rename.
9555
1d5af871
AS
95562002-03-29 Andreas Schwab <schwab@suse.de>
9557
9558 * Makefile.in: Pass VPATH=$(fsrcdir) when calling make in rts
9559 directory.
9560
8cbb664e
MG
95612001-03-28 Robert Dewar <dewar@gnat.com>
9562
9563 * checks.ads:
9564 (Remove_Checks): New procedure
9565
9566 * checks.adb:
9567 (Remove_Checks): New procedure
9568
9569 * exp_util.adb:
9570 Use new Duplicate_Subexpr functions
9571 (Duplicate_Subexpr_No_Checks): New procedure
9572 (Duplicate_Subexpr_No_Checks_Orig): New procedure
9573 (Duplicate_Subexpr): Restore original form (checks duplicated)
9574 (Duplicate_Subexpr): Call Remove_Checks
9575
82a4b025 9576 * exp_util.ads:
8cbb664e
MG
9577 (Duplicate_Subexpr_No_Checks): New procedure
9578 (Duplicate_Subexpr_No_Checks_Orig): New procedure
9579 Add 2002 to copyright notice
9580
9581 * sem_util.adb: Use new Duplicate_Subexpr functions
9582
82a4b025 9583 * sem_eval.adb:
8cbb664e
MG
9584 (Eval_Indexed_Component): This is the place to call
9585 Constant_Array_Ref and to replace the value. We simply merge
9586 the code of this function in here, since it is now no longer
9587 used elsewhere. This fixes the problem of the back end not
9588 realizing we were clever enough to see that this was
9589 constant.
9590 (Expr_Val): Remove call to Constant_Array_Ref
9591 (Expr_Rep_Val): Remove call to Constant_Array_Ref
9592 Minor reformatting
9593 (Constant_Array_Ref): Deal with string literals (patch
9594 suggested by Zack Weinberg on the gcc list)
9595
95962001-03-28 Ed Schonberg <schonber@gnat.com>
9597
82a4b025 9598 * exp_util.adb: Duplicate_Subexpr_No_Checks_Orig =>
8cbb664e
MG
9599 Duplicate_Subexpr_Move_Checks.
9600
82a4b025 9601 * exp_util.ads: Duplicate_Subexpr_No_Checks_Orig =>
8cbb664e
MG
9602 Duplicate_Subexpr_Move_Checks.
9603
82a4b025
NB
9604 * sem_eval.adb: (Constant_Array_Ref): Verify that constant
9605 value of array exists before retrieving it (it may a private
8cbb664e
MG
9606 protected component in a function).
9607
792c4e74
GB
96082002-03-28 Geert Bosch <bosch@gnat.com>
9609
9610 * prj-pp.adb : New file.
9611
9612 * prj-pp.ads : New file.
9613
915e8bad
AJ
96142002-03-28 Andreas Jaeger <aj@suse.de>
9615
9616 * Makefile.in (stamp-sdefault): Fix path for Makefile.
9617
0840811c
NB
96182002-03-28 Neil Booth <neil@daikokuya.demon.co.uk>
9619
9620 * misc.c (gnat_expand_expr): Move prototype.
9621
7ffb4fd2
NB
96222002-03-27 Neil Booth <neil@daikokuya.demon.co.uk>
9623
9624 * misc.c (insert_default_attributes): Remove.
9625
c9d892a8
NB
96262002-03-27 Neil Booth <neil@daikokuya.demon.co.uk>
9627
9628 * misc.c (LANG_HOOKS_EXPAND_EXPR): Redefine.
9629 (gnat_init): Don't set hook.
9630 (gnat_expand_expr): Fix prototype.
9631
31c816cf
NB
96322002-03-27 Neil Booth <neil@daikokuya.demon.co.uk>
9633
9634 * misc.c (ggc_p): Remove.
9635
ef83161c
GB
96362002-03-27 Geert Bosch <bosch@gnat.com>
9637
9638 * prj-makr.ads, prj-makr.adb : New files.
9639
4f0ade92
NB
96402002-03-26 Neil Booth <neil@daikokuya.demon.co.uk>
9641
9642 * misc.c (LANG_HOOKS_MARK_TREE): Redefine.
9643 (lang_mark_tree): Make static, rename.
9644
c88770e9
NB
96452002-03-25 Neil Booth <neil@daikokuya.demon.co.uk>
9646
9647 * misc.c (maybe_build_cleanup): Remove.
9648
05671968
NB
96492002-03-24 Neil Booth <neil@daikokuya.demon.co.uk>
9650
9651 * gigi.h (yyparse): Remove.
9652
ad42149c
FW
96532002-03-23 Florian Weimer <fw@deneb.enyo.de>
9654
82a4b025 9655 * gnat_rm.texi: Sync with ACT version.
b4f94ac1 9656 (From Ben Brosgol <brosgol@gnat.com>)
ad42149c 9657
7afff7cf
NB
96582002-03-20 Neil Booth <neil@daikokuya.demon.co.uk>
9659
9660 * misc.c (LANG_HOOKS_DECL_PRINTABLE_NAME): Redefine.
9661 (gnat_init): Remove old hook.
9662
52dabb6c
NB
96632002-03-17 Neil Booth <neil@daikokuya.demon.co.uk>
9664
9665 * misc.c (LANG_HOOKS_PARSE_FILE): Redefine.
9666 (yyparse): Rename gnat_parse_file.
9667
6cbcc541
GK
96682002-03-14 Geoffrey Keating <geoffk@redhat.com>
9669
9670 Delete all lines containing "$Revision:".
9671 * xeinfo.adb: Don't look for revision numbers.
9672 * xnmake.adb: Likewise.
9673 * xsinfo.adb: Likewise.
9674 * xsnames.adb: Likewise.
9675 * xtreeprs.adb: Likewise.
9676
2f9834e8
KG
96772002-03-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
9678
9679 * misc.c (gnat_tree_code_type, gnat_tree_code_length,
9680 gnat_tree_code_name): Delete.
9681 (tree_code_type, tree_code_length, tree_code_name): Define.
9682 (gnat_init): Don't try to copy into the various tree_code
9683 arrays.
9684
63adb4ff
RH
96852002-03-11 Richard Henderson <rth@redhat.com>
9686
9687 * Makefile.in (.NOTPARALLEL): Add fake tag.
9688
43ff4547
GB
96892002-03-07 Geert Bosch <bosch@gnat.com>
9690
82a4b025
NB
9691 * adadecode.c, adadecode.h, aux-io.c, s-traces.adb, s-traces.ads,
9692 s-tratas.adb, s-tratas.ads, sinput-d.adb, sinput-d.ads,
9693 switch-b.adb, switch-b.ads, switch-c.adb, switch-c.ads,
43ff4547
GB
9694 switch-m.adb, switch-m.ads : New files.
9695
07fc65c4
GB
96962002-03-07 Geert Bosch <bosch@gnat.com>
9697
9698 * 41intnam.ads, 42intnam.ads, 4aintnam.ads, 4cintnam.ads,
9699 4dintnam.ads, 4gintnam.ads, 4hintnam.ads, 4lintnam.ads,
9700 4mintnam.ads, 4pintnam.ads, 4rintnam.ads, 4sintnam.ads,
9701 4uintnam.ads, 4vcalend.adb, 4zintnam.ads, 52system.ads,
9702 5amastop.adb, 5asystem.ads, 5ataprop.adb, 5atpopsp.adb,
9703 5avxwork.ads, 5bosinte.adb, 5bsystem.ads, 5esystem.ads,
9704 5fsystem.ads, 5ftaprop.adb, 5ginterr.adb, 5gmastop.adb,
9705 5gsystem.ads, 5gtaprop.adb, 5gtasinf.adb, 5gtasinf.ads,
9706 5hparame.ads, 5hsystem.ads, 5htaprop.adb, 5htraceb.adb,
9707 5itaprop.adb, 5ksystem.ads, 5kvxwork.ads, 5lintman.adb,
9708 5lsystem.ads, 5mvxwork.ads, 5ninmaop.adb, 5nosinte.ads,
9709 5ntaprop.adb, 5ointerr.adb, 5omastop.adb, 5oosinte.adb,
9710 5osystem.ads, 5otaprop.adb, 5otaspri.ads, 5pvxwork.ads,
9711 5qtaprop.adb, 5sintman.adb, 5ssystem.ads, 5staprop.adb,
9712 5stpopse.adb, 5svxwork.ads, 5tosinte.ads, 5uintman.adb,
9713 5vasthan.adb, 5vinmaop.adb, 5vinterr.adb, 5vintman.adb,
9714 5vmastop.adb, 5vparame.ads, 5vsystem.ads, 5vtaprop.adb,
9715 5vtpopde.adb, 5wmemory.adb, 5wsystem.ads, 5wtaprop.adb,
9716 5ysystem.ads, 5zinterr.adb, 5zintman.adb, 5zosinte.adb,
9717 5zosinte.ads, 5zsystem.ads, 5ztaprop.adb, 6vcpp.adb, 6vcstrea.adb,
9718 7sintman.adb, 7staprop.adb, 7stpopsp.adb, 9drpc.adb,
9719 Make-lang.in, Makefile.in, a-caldel.adb, a-comlin.ads,
9720 a-dynpri.adb, a-except.adb, a-except.ads, a-finali.adb,
9721 a-ncelfu.ads, a-reatim.adb, a-retide.adb, a-stream.ads,
9722 a-ststio.adb, a-ststio.ads, a-stwifi.adb, a-tags.adb, a-tasatt.adb,
9723 a-textio.adb, a-tideau.adb, a-tiflau.adb, a-tigeau.adb,
9724 a-tigeau.ads, a-tiinau.adb, a-timoau.adb, a-witeio.adb,
9725 a-wtdeau.adb, a-wtenau.adb, a-wtflau.adb, a-wtgeau.adb,
9726 a-wtgeau.ads, a-wtinau.adb, a-wtmoau.adb, ada-tree.def, ada-tree.h,
9727 adaint.c, adaint.h, ali-util.adb, ali.adb, ali.ads, atree.adb,
9728 atree.ads, atree.h, back_end.adb, bcheck.adb, bindgen.adb,
9729 bindusg.adb, checks.adb, comperr.adb, config-lang.in, csets.adb,
9730 csets.ads, cstand.adb, cstreams.c, debug.adb, debug.ads, decl.c,
9731 einfo.adb, einfo.ads, einfo.h, elists.h, errout.adb, errout.ads,
9732 eval_fat.adb, exp_aggr.adb, exp_attr.adb, exp_ch11.adb,
9733 exp_ch12.adb, exp_ch13.adb, exp_ch2.adb, exp_ch3.adb, exp_ch3.ads,
9734 exp_ch4.adb, exp_ch5.adb, exp_ch6.adb, exp_ch7.adb, exp_ch7.ads,
9735 exp_ch9.adb, exp_ch9.ads, exp_dbug.adb, exp_dbug.ads, exp_disp.ads,
9736 exp_dist.adb, exp_fixd.adb, exp_intr.adb, exp_pakd.adb,
9737 exp_prag.adb, exp_strm.adb, exp_util.adb, exp_util.ads,
9738 expander.adb, expect.c, fe.h, fmap.adb, fmap.ads, fname-uf.adb,
9739 freeze.adb, frontend.adb, g-awk.adb, g-cgideb.adb, g-comlin.adb,
9740 g-comlin.ads, g-debpoo.adb, g-dirope.adb, g-dirope.ads,
9741 g-dyntab.adb, g-expect.adb, g-expect.ads, g-io.ads, g-io_aux.adb,
9742 g-io_aux.ads, g-locfil.adb, g-locfil.ads, g-os_lib.adb,
9743 g-os_lib.ads, g-regexp.adb, g-regpat.adb, g-socket.adb,
9744 g-socket.ads, g-spipat.adb, g-table.adb, g-trasym.adb,
9745 g-trasym.ads, gigi.h, gmem.c, gnat1drv.adb, gnatbind.adb, gnatbl.c,
9746 gnatchop.adb, gnatcmd.adb, gnatdll.adb, gnatfind.adb, gnatlbr.adb,
9747 gnatlink.adb, gnatls.adb, gnatmem.adb, gnatprep.adb, gnatvsn.ads,
9748 gnatxref.adb, hlo.adb, hostparm.ads, i-cobol.adb, i-cpp.adb,
9749 i-cstrea.ads, i-cstrin.adb, i-pacdec.adb, i-vxwork.ads,
9750 impunit.adb, init.c, inline.adb, io-aux.c, layout.adb, lib-load.adb,
9751 lib-util.adb, lib-writ.adb, lib-writ.ads, lib-xref.adb,
9752 lib-xref.ads, lib.adb, lib.ads, make.adb, makeusg.adb, mdll.adb,
9753 memroot.adb, misc.c, mlib-tgt.adb, mlib-utl.adb, mlib-utl.ads,
9754 mlib.adb, namet.adb, namet.ads, namet.h, nlists.h, nmake.adb,
9755 nmake.ads, nmake.adt, opt.adb, opt.ads, osint.adb, osint.ads,
9756 output.adb, output.ads, par-ch2.adb, par-ch3.adb, par-ch5.adb,
9757 par-prag.adb, par-tchk.adb, par-util.adb, par.adb, prj-attr.adb,
9758 prj-dect.adb, prj-env.adb, prj-env.ads, prj-nmsc.adb, prj-part.adb,
9759 prj-proc.adb, prj-strt.adb, prj-tree.adb, prj-tree.ads, prj.adb,
9760 prj.ads, raise.c, raise.h, repinfo.adb, restrict.adb, restrict.ads,
9761 rident.ads, rtsfind.adb, rtsfind.ads, s-arit64.adb, s-asthan.adb,
9762 s-atacco.adb, s-atacco.ads, s-auxdec.adb, s-crc32.adb, s-crc32.ads,
9763 s-direio.adb, s-fatgen.adb, s-fileio.adb, s-finimp.adb,
9764 s-gloloc.adb, s-gloloc.ads, s-interr.adb, s-mastop.adb,
9765 s-mastop.ads, s-memory.adb, s-parame.ads, s-parint.adb,
9766 s-pooglo.adb, s-pooloc.adb, s-rpc.adb, s-secsta.adb, s-sequio.adb,
9767 s-shasto.adb, s-soflin.adb, s-soflin.ads, s-stache.adb,
9768 s-taasde.adb, s-taasde.ads, s-tadeca.adb, s-tadeca.ads,
9769 s-tadert.adb, s-tadert.ads, s-taenca.adb, s-taenca.ads,
9770 s-taprob.adb, s-taprop.ads, s-tarest.adb, s-tasdeb.adb,
9771 s-tasini.adb, s-tasini.ads, s-taskin.adb, s-taskin.ads,
9772 s-tasque.adb, s-tasque.ads, s-tasren.adb, s-tasren.ads,
9773 s-tassta.adb, s-tasuti.adb, s-tasuti.ads, s-tataat.adb,
9774 s-tataat.ads, s-tpoben.adb, s-tpoben.ads, s-tpobop.adb,
9775 s-tposen.adb, s-tposen.ads, s-traceb.adb, s-traceb.ads,
9776 s-unstyp.ads, s-widenu.adb, scn-nlit.adb, scn.adb, sem.adb,
9777 sem_aggr.adb, sem_attr.adb, sem_attr.ads, sem_case.adb,
9778 sem_ch10.adb, sem_ch11.adb, sem_ch11.ads, sem_ch12.adb,
9779 sem_ch13.adb, sem_ch13.ads, sem_ch2.adb, sem_ch3.adb, sem_ch3.ads,
9780 sem_ch4.adb, sem_ch5.adb, sem_ch6.adb, sem_ch6.ads, sem_ch7.adb,
9781 sem_ch8.adb, sem_ch8.ads, sem_ch9.adb, sem_disp.adb, sem_dist.adb,
9782 sem_elab.adb, sem_elim.adb, sem_elim.ads, sem_eval.adb,
9783 sem_intr.adb, sem_mech.adb, sem_prag.adb, sem_res.adb,
9784 sem_type.adb, sem_util.adb, sem_util.ads, sem_vfpt.adb,
9785 sem_warn.adb, sinfo.adb, sinfo.ads, sinfo.h, sinput-l.adb,
9786 sinput-l.ads, sinput.adb, sinput.ads, snames.adb, snames.ads,
9787 snames.h, sprint.adb, sprint.ads, stringt.adb, stringt.ads,
9788 stringt.h, style.adb, switch.adb, switch.ads, sysdep.c, system.ads,
9789 table.adb, targparm.adb, targparm.ads, targtyps.c, tbuild.adb,
9790 tbuild.ads, tracebak.c, trans.c, tree_gen.adb, tree_io.adb,
9791 treepr.adb, treepr.ads, treeprs.ads, treeprs.adt, ttypes.ads,
9792 types.adb, types.ads, types.h, uintp.ads, urealp.ads, usage.adb,
9793 utils.c, utils2.c, validsw.adb, xnmake.adb, xr_tabls.adb,
9794 xr_tabls.ads, xref_lib.adb, xref_lib.ads : Merge in ACT changes.
9795
9796 * 1ssecsta.adb, 1ssecsta.ads, a-chlat9.ads, a-cwila9.ads,
9797 g-enblsp.adb, g-md5.adb, g-md5.ads, gnatname.adb, gnatname.ads,
9798 mkdir.c, osint-b.adb, osint-b.ads, osint-c.adb, osint-c.ads,
9799 osint-l.adb, osint-l.ads, osint-m.adb, osint-m.ads : New files
9800
9801 * 3lsoccon.ads, 5qparame.ads, 5qvxwork.ads, 5smastop.adb,
9802 5zparame.ads, gnatmain.adb, gnatmain.ads, gnatpsys.adb : Removed
9803
9804 * mdllfile.adb, mdllfile.ads, mdlltool.adb, mdlltool.ads : Renamed
9805 to mdll-fil.ad[bs] and mdll-util.ad[bs]
9806
9807 * mdll-fil.adb, mdll-fil.ads, mdll-utl.adb, mdll-utl.ads : Renamed
9808 from mdllfile.ad[bs] and mdlltool.ad[bs]
9809
ca7558fc
KG
98102002-03-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
9811
9812 * utils.c (init_gnat_to_gnu, init_gigi_decls): Use ARRAY_SIZE in
9813 lieu of explicit sizeof/sizeof.
9814
63e1b1c4
NB
98152002-02-28 Neil Booth <neil@daikokuya.demon.co.uk>
9816
9817 * misc.c (copy_lang_decl): Remove.
9818
f458d1d5
ZW
98192002-02-27 Zack Weinberg <zack@codesourcery.com>
9820
9821 * misc.c: Delete traditional-mode-related code copied from the
9822 C front end but not used, or used only to permit the compiler
9823 to link.
9824
21e09952
RH
98252002-02-07 Richard Henderson <rth@redhat.com>
9826
9827 * adaint.c (__gnat_to_gm_time): First arg is int, not time_t.
9828 * adaint.h (__gnat_to_gm_time): Update prototype.
9829
ead39bdf 98302002-01-30 Richard Henderson <rth@redhat.com>
e803a64b
RH
9831
9832 * trans.c (tree_transform) [N_Loop_Statement]: Use
9833 expand_exit_loop_top_cond.
9834
72ac12bf
RH
98352001-12-23 Richard Henderson <rth@redhat.com>
9836
9837 * utils.c (end_subprog_body): Push GC context around
9838 rest_of_compilation for nested functions.
9839
14aacce7
RH
98402001-12-23 Richard Henderson <rth@redhat.com>
9841
9842 * 5nosinte.ads: Get definition of "int" from Interfaces.C.
9843
b3d45d87
FW
98442001-12-23 Florian Weimer <fw@deneb.enyo.de>
9845
ece2d1b8
FW
9846 * gnat-style.texi (Declarations and Types): Remove ancient style
9847 rule which was mandated by code generation issues.
82a4b025 9848
b3d45d87
FW
9849 * gnat-style.texi (header): Add @dircategory, @direntry.
9850 (title page): Remove date.
9851 (general) Add @./@: where approriate, and two spaces after the
9852 full stop at the end of a sentence. Use @samp markup when
9853 referring concrete lexical entities (keywords, attribute names
9854 etc.), and @syntax for ARM grammar elements. Use @r for English
9855 text in comments. Use @emph for emphasis. Change "if-statements"
9856 etc. to "if statements" (without @samp). Break long lines. Make
9857 casing of section names consistent.
9858 (Identifiers): Use @samp markup for variable names.
9859 (Comments): Use @samp markup for comment characters. Line-end
9860 comments may follow any Ada code, not just statements. Fix
9861 misspelling of "Integer" as "integer".
9862 (Loop statements): Do not use variable name "I", use "J".
9863 (Subprogram Declarations): Document alignment.
9864 (Subprogram Bodies, Block statements): Document empty line before
9865 "begin".
9866
7a73ad55
FW
98672001-12-22 Florian Weimer <fw@deneb.enyo.de>
9868
9869 * make.adb (Add_Switch): Make Generic_Position a procedure. The
9870 function approach did not work well because of a side effect (the
9871 function call could reallocate the table which was being indexed
9872 using its result). Fixes ada/4851.
9873
17c5c8a5
GB
98742001-12-19 Robert Dewar <dewar@gnat.com>
9875
9876 * bindgen.adb: Minor reformatting
82a4b025 9877
17c5c8a5 9878 * cstand.adb: Minor reformatting
82a4b025 9879
17c5c8a5
GB
9880 * fmap.adb: Minor reformatting
9881 Change name from Add for Add_To_File_Map (Add is much too generic)
9882 Change Path_Name_Of to Mapped_Path_Name
9883 Change File_Name_Of to Mapped_File_Name
9884 Fix copyright dates in header
82a4b025 9885
17c5c8a5
GB
9886 * fmap.ads:
9887 Change name from Add for Add_To_File_Map (Add is much too generic)
9888 Change Path_Name_Of to Mapped_Path_Name
9889 Change File_Name_Of to Mapped_File_Name
9890 Fix copyright dates in header
82a4b025 9891
17c5c8a5
GB
9892 * fname-uf.adb: Minor reformatting. New names of stuff in Fmap.
9893 Add use clause for Fmap.
82a4b025 9894
17c5c8a5 9895 * make.adb: Minor reformatting
82a4b025 9896
17c5c8a5
GB
9897 * osint.adb: Minor reformatting. Change of names in Fmap.
9898 Add use clause for Fmap.
82a4b025 9899
17c5c8a5 9900 * prj-env.adb: Minor reformatting
82a4b025 9901
17c5c8a5 9902 * prj-env.ads: Minor reformatting
82a4b025 9903
07fc65c4
GB
9904 * switch.adb: Minor reformatting. Do proper raise of Bad_Switch if
9905 error found (there were odd exceptions to this general rule in
17c5c8a5 9906 -gnatec/-gnatem processing)
82a4b025 9907
17c5c8a5
GB
99082001-12-19 Olivier Hainque <hainque@gnat.com>
9909
07fc65c4
GB
9910 * raise.c (__gnat_eh_personality): Exception handling personality
9911 routine for Ada. Still in rough state, inspired from the C++ version
17c5c8a5 9912 and still containing a bunch of debugging artifacts.
07fc65c4 9913 (parse_lsda_header, get_ttype_entry): Local (static) helpers, also
17c5c8a5 9914 inspired from the C++ library.
82a4b025 9915
07fc65c4 9916 * raise.c (eh_personality): Add comments. Part of work for the GCC 3
17c5c8a5 9917 exception handling integration.
82a4b025 9918
17c5c8a5
GB
99192001-12-19 Arnaud Charlet <charlet@gnat.com>
9920
9921 * Makefile.in: Remove use of 5smastop.adb which is obsolete.
9922 (HIE_SOURCES): Add s-secsta.ad{s,b}.
9923 (HIE_OBJS): Add s-fat*.o
07fc65c4 9924 (RAVEN_SOURCES): Remove files that are no longer required. Add
17c5c8a5
GB
9925 interrupt handling files.
9926 (RAVEN_MOD): Removed, no longer needed.
82a4b025 9927
17c5c8a5
GB
99282001-12-19 Robert Dewar <dewar@gnat.com>
9929
9930 * a-ngelfu.adb: Remove ??? comment for inappropriate Inline_Always
9931 Add 2001 to copyright date
82a4b025 9932
07fc65c4 9933 * g-regpat.adb: Change pragma Inline_Always to Inline. There is no
17c5c8a5 9934 need to force universal inlining for these cases.
82a4b025 9935
17c5c8a5
GB
99362001-12-19 Arnaud Charlet <charlet@gnat.com>
9937
07fc65c4 9938 * s-taprob.adb: Minor clean ups so that this unit can be used in
17c5c8a5 9939 Ravenscar HI.
82a4b025 9940
17c5c8a5
GB
9941 * exp_ch7.adb: Allow use of secondary stack in HI mode.
9942 Disallow it when pragma Restrictions (No_Secondary_Stack) is specified.
82a4b025 9943
17c5c8a5
GB
99442001-12-19 Vincent Celier <celier@gnat.com>
9945
07fc65c4 9946 * prj-tree.ads (Project_Node_Record): Add comments for components
17c5c8a5 9947 Pkg_Id and Case_Insensitive.
82a4b025 9948
17c5c8a5
GB
99492001-12-19 Pascal Obry <obry@gnat.com>
9950
9951 * g-socket.adb: Minor reformatting. Found while reading code.
82a4b025 9952
17c5c8a5
GB
99532001-12-19 Robert Dewar <dewar@gnat.com>
9954
9955 * prj-tree.ads: Minor reformatting
9956
38be19f6
JM
99572001-12-20 Joseph S. Myers <jsm28@cam.ac.uk>
9958
9959 * config-lang.in (diff_excludes): Remove.
9960
6510f4c9
GB
99612001-12-17 Ed Schonberg <schonber@gnat.com>
9962
07fc65c4
GB
9963 * sem_res.adb (Resolve_Selected_Component): do not generate a
9964 discriminant check if the selected component is a component of
6510f4c9
GB
9965 the argument of an initialization procedure.
9966
07fc65c4
GB
9967 * trans.c (tree_transform, case of arithmetic operators): If result
9968 type is private, the gnu_type is the base type of the full view,
6510f4c9 9969 given that the full view itself may be a subtype.
82a4b025 9970
6510f4c9
GB
99712001-12-17 Robert Dewar <dewar@gnat.com>
9972
9973 * sem_res.adb: Minor reformatting
82a4b025 9974
07fc65c4
GB
9975 * trans.c (tree_transform, case N_Real_Literal): Add missing third
9976 parameter in call to Machine (unknown horrible effects from this
6510f4c9 9977 omission).
82a4b025 9978
6510f4c9
GB
9979 * urealp.h: Add definition of Round_Even for call to Machine
9980 Add third parameter for Machine
82a4b025 9981
6510f4c9
GB
99822001-12-17 Ed Schonberg <schonber@gnat.com>
9983
07fc65c4 9984 * sem_warn.adb (Check_One_Unit): Suppress warnings completely on
6510f4c9 9985 predefined units in No_Run_Time mode.
82a4b025 9986
6510f4c9
GB
99872001-12-17 Richard Kenner <kenner@gnat.com>
9988
9989 * misc.c (insn-codes.h): Now include.
82a4b025 9990
6510f4c9
GB
99912001-12-17 Olivier Hainque <hainque@gnat.com>
9992
07fc65c4 9993 * a-except.adb: Preparation work for future integration of the GCC 3
6510f4c9
GB
9994 exception handling mechanism
9995 (Notify_Handled_Exception, Notify_Unhandled_Exception): New routines
9996 to factorize previous code sequences and make them externally callable,
9997 e.g. for the Ada personality routine when the GCC 3 mechanism is used.
9998 (Propagate_Exception, Raise_Current_Excep, Raise_From_Signal_Handler):
9999 Use the new notification routines.
82a4b025 10000
6510f4c9
GB
100012001-12-17 Emmanuel Briot <briot@gnat.com>
10002
10003 * prj-tree.ads (First_Choice_Of): Document the when others case
82a4b025 10004
6510f4c9
GB
100052001-12-17 Arnaud Charlet <charlet@gnat.com>
10006
07fc65c4 10007 * bindgen.adb (Gen_Ada_Init_*): Set priority of environment task in
6510f4c9 10008 HI-E mode, in order to support Ravenscar profile properly.
82a4b025 10009
07fc65c4 10010 * cstand.adb (Create_Standard): Duration is a 32 bit type in HI-E
6510f4c9 10011 mode on 32 bits targets.
82a4b025 10012
6510f4c9
GB
100132001-12-17 Vincent Celier <celier@gnat.com>
10014
10015 * fmap.adb: Initial version.
82a4b025 10016
6510f4c9 10017 * fmap.ads: Initial version.
82a4b025 10018
6510f4c9
GB
10019 * fname-uf.adb (Get_File_Name): Use mapping if unit name mapped.
10020 If search is successfully done, add to mapping.
82a4b025 10021
6510f4c9 10022 * frontend.adb: Initialize the mapping if a -gnatem switch was used.
82a4b025 10023
6510f4c9
GB
10024 * make.adb:
10025 (Gnatmake): Add new local variable Mapping_File_Name.
10026 Create mapping file when using project file(s).
10027 Delete mapping file before exiting.
82a4b025 10028
6510f4c9 10029 * opt.ads (Mapping_File_Name): New variable
82a4b025 10030
6510f4c9 10031 * osint.adb (Find_File): Use path name found in mapping, if any.
82a4b025 10032
6510f4c9 10033 * prj-env.adb (Create_Mapping_File): New procedure
82a4b025 10034
6510f4c9 10035 * prj-env.ads (Create_Mapping_File): New procedure.
82a4b025 10036
07fc65c4 10037 * switch.adb (Scan_Front_End_Switches): Add processing for -gnatem
6510f4c9 10038 (Mapping_File)
82a4b025 10039
6510f4c9 10040 * usage.adb: Add entry for new switch -gnatem.
82a4b025 10041
6510f4c9 10042 * Makefile.in: Add dependencies for fmap.o.
82a4b025 10043
6510f4c9
GB
100442001-12-17 Ed Schonberg <schonber@gnat.com>
10045
07fc65c4 10046 * sem_ch10.adb (Analyze_With_Clause): Retrieve proper entity when unit
6510f4c9
GB
10047 is a package instantiation rewritten as a package body.
10048 (Install_Withed_Unit): Undo previous change, now redundant.
82a4b025 10049
6510f4c9
GB
100502001-12-17 Gary Dismukes <dismukes@gnat.com>
10051
10052 * layout.adb:
10053 (Compute_Length): Move conversion to Unsigned to callers.
10054 (Get_Max_Size): Convert Len expression to Unsigned after calls to
10055 Compute_Length and Determine_Range.
10056 (Layout_Array_Type): Convert Len expression to Unsigned after calls to
10057 Compute_Length and Determine_Range.
10058 Above changes fix problem with length computation for supernull arrays
07fc65c4 10059 where Max (Len, 0) wasn't getting applied due to the Unsigned
6510f4c9 10060 conversion used by Compute_Length.
82a4b025 10061
6510f4c9
GB
100622001-12-17 Arnaud Charlet <charlet@gnat.com>
10063
10064 * rtsfind.ads:
10065 (OK_To_Use_In_No_Run_Time_Mode): Allow Ada.Exceptions and
10066 System.Secondary_Stack.
10067 (OK_To_Use_In_Ravenscar_Mode): New table needed to implement Ravenscar
10068 in HI-E mode.
10069 Remove unused entity RE_Exception_Data.
82a4b025 10070
6510f4c9 10071 * rtsfind.adb (RTE): Allow Ravenscar Profile in HI mode.
82a4b025 10072
6510f4c9
GB
10073 * rident.ads (No_Secondary_Stack): New restriction.
10074
3a77b68d
GB
100752001-12-17 Joel Brobecker <brobecke@gnat.com>
10076
07fc65c4 10077 * gnat_rm.texi: Fix minor typos. Found while reading the section
3a77b68d
GB
10078 regarding "Bit_Order Clauses" that was sent to a customer.
10079 Very interesting documentation!
82a4b025 10080
3a77b68d
GB
100812001-12-17 Robert Dewar <dewar@gnat.com>
10082
07fc65c4
GB
10083 * sem_case.adb (Choice_Image): Avoid creating improper character
10084 literal names by using the routine Set_Character_Literal_Name. This
3a77b68d 10085 fixes bombs in certain error message cases.
82a4b025 10086
3a77b68d
GB
100872001-12-17 Arnaud Charlet <charlet@gnat.com>
10088
10089 * a-reatim.adb: Minor reformatting.
82a4b025 10090
3a77b68d
GB
100912001-12-17 Ed Schonberg <schonber@gnat.com>
10092
07fc65c4
GB
10093 * sem_ch12.adb (Validate_Derived_Type_Instance): Handle properly the
10094 case where the formal is an extension of another formal in the current
3a77b68d 10095 unit or in a parent generic unit.
82a4b025 10096
3a77b68d
GB
100972001-12-17 Arnaud Charlet <charlet@gnat.com>
10098
07fc65c4 10099 * s-tposen.adb: Update comments. Minor reformatting.
3a77b68d 10100 Minor code clean up.
82a4b025 10101
3a77b68d 10102 * s-tarest.adb: Update comments. Minor code reorganization.
82a4b025 10103
3a77b68d
GB
101042001-12-17 Gary Dismukes <dismukes@gnat.com>
10105
07fc65c4 10106 * exp_attr.adb (Attribute_Tag): Suppress expansion of <type_name>'Tag
3a77b68d 10107 when Java_VM.
82a4b025 10108
3a77b68d
GB
101092001-12-17 Robert Dewar <dewar@gnat.com>
10110
10111 * exp_attr.adb: Minor reformatting
82a4b025 10112
3a77b68d
GB
101132001-12-17 Ed Schonberg <schonber@gnat.com>
10114
07fc65c4 10115 * sem_ch3.adb (Build_Derived_Private_Type): Refine check to handle
3a77b68d
GB
10116 derivations nested within a child unit: verify that the parent
10117 type is declared in an outer scope.
82a4b025 10118
3a77b68d
GB
101192001-12-17 Robert Dewar <dewar@gnat.com>
10120
10121 * sem_ch12.adb: Minor reformatting
82a4b025 10122
3a77b68d
GB
101232001-12-17 Ed Schonberg <schonber@gnat.com>
10124
07fc65c4
GB
10125 * sem_warn.adb (Check_One_Unit): In No_Run_Time mode, do not post
10126 warning if current unit is a predefined one, from which bodies may
3a77b68d 10127 have been deleted.
82a4b025 10128
3a77b68d
GB
101292001-12-17 Robert Dewar <dewar@gnat.com>
10130
10131 * eval_fat.ads: Add comment that Round_Even is referenced in Ada code
10132 Fix header format. Add 2001 to copyright date.
82a4b025 10133
07fc65c4 10134 * exp_dbug.adb (Get_Encoded_Name): Fix out of bounds reference,
3a77b68d
GB
10135 which caused CE during compilation if checks were enabled.
10136
79503fdd
GB
101372001-12-17 Vincent Celier <celier@gnat.com>
10138
10139 * make.adb:
10140 (Switches_Of): New function
10141 (Test_If_Relative_Path): New procedure
10142 (Add_Switches): Use new function Switches_Of
10143 (Collect_Arguments_And_Compile): Use new function Switches_Of.
10144 When using a project file, test if there are any relative
10145 search path. Fail if there are any.
07fc65c4
GB
10146 (Gnatmake): Only add switches for the primary directory when not using
10147 a project file. When using a project file, change directory to the
10148 object directory of the main project file. When using a project file,
10149 test if there are any relative search path. Fail if there are any.
10150 When using a project file, fail if specified executable is relative
10151 path with directory information, and prepend executable, if not
10152 specified as an absolute path, with the exec directory. Make sure
79503fdd 10153 that only one -o switch is transmitted to the linker.
82a4b025 10154
79503fdd 10155 * prj-attr.adb (Initialization_Data): Add project attribute Exec_Dir
82a4b025 10156
79503fdd
GB
10157 * prj-nmsc.adb:
10158 (Ada_Check): Get Spec_Suffix_Loc and Impl_Suffix_Loc,
10159 when using a non standard naming scheme.
10160 (Check_Ada_Naming_Scheme): Make sure that error messages
10161 do not raise exceptions.
10162 (Is_Illegal_Append): Return True if there is no dot in the suffix.
10163 (Language_Independent_Check): Check the exec directory.
82a4b025 10164
79503fdd 10165 * prj.adb (Project_Empty): Add new component Exec_Directory
82a4b025 10166
79503fdd
GB
10167 * prj.ads:
10168 (Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Add defaults.
10169 (Project_Data): Add component Exec_Directory
82a4b025 10170
79503fdd 10171 * snames.adb: Updated to match snames.ads revision 1.215
82a4b025 10172
79503fdd 10173 * snames.ads: Added Exec_Dir
82a4b025 10174
79503fdd
GB
101752001-12-17 Robert Dewar <dewar@gnat.com>
10176
10177 * make.adb: Minor reformatting
82a4b025 10178
79503fdd 10179 * prj-nmsc.adb: Minor reformatting
82a4b025 10180
79503fdd 10181 * snames.adb: Updated to match snames.ads
82a4b025 10182
79503fdd
GB
10183 * snames.ads: Alphebetize entries for project file
10184
101852001-12-17 Ed Schonberg <schonber@gnat.com>
10186
07fc65c4 10187 * trans.c (process_freeze_entity): Do nothing if the entity is a
79503fdd 10188 subprogram that was already elaborated.
82a4b025 10189
79503fdd 101902001-12-17 Richard Kenner <kenner@gnat.com>
82a4b025 10191
07fc65c4 10192 * decl.c (gnat_to_gnu_entity, object): Do not back-annotate Alignment
79503fdd
GB
10193 and Esize if object is referenced via pointer.
10194
855ff2e1
GB
101952001-12-17 Ed Schonberg <schonber@gnat.com>
10196
07fc65c4 10197 * sem_ch3.adb (Analyze_Variant_Part): check that type of discriminant
855ff2e1 10198 is discrete before analyzing choices.
82a4b025 10199
855ff2e1
GB
102002001-12-17 Joel Brobecker <brobecke@gnat.com>
10201
07fc65c4
GB
10202 * bindgen.adb (Gen_Output_File_Ada): Generate a new C-like string
10203 containing the name of the Ada Main Program. This string is mainly
855ff2e1
GB
10204 intended for the debugger.
10205 (Gen_Output_File_C): Do the equivalent change when generating a C file.
82a4b025 10206
855ff2e1
GB
102072001-12-17 Robert Dewar <dewar@gnat.com>
10208
10209 * ali.adb: Set new Dummy_Entry field in dependency entry
82a4b025 10210
855ff2e1 10211 * ali.ads: Add Dummy_Entry field to source dependency table
82a4b025 10212
855ff2e1 10213 * bcheck.adb (Check_Consistency): Ignore dummy D lines
82a4b025 10214
855ff2e1 10215 * lib-writ.adb (Writ_ALI): Write dummy D lines for missing source files
82a4b025 10216
855ff2e1 10217 * lib-writ.ads: Document dummy D lines for missing files.
82a4b025 10218
855ff2e1
GB
10219 * types.ads: (Dummy_Time_Stamp): New value for non-existant files
10220
c1c22e7a
GB
102212001-12-17 Robert Dewar <dewar@gnat.com>
10222
10223 * ali.adb: Type reference does not reset current file.
82a4b025 10224
c1c22e7a 10225 * ali.adb: Recognize and scan renaming reference
82a4b025 10226
c1c22e7a 10227 * ali.ads: Add spec for storing renaming references.
82a4b025 10228
c1c22e7a 10229 * lib-xref.ads: Add documentation for handling of renaming references
82a4b025 10230
c1c22e7a 10231 * lib-xref.adb: Implement output of renaming reference.
82a4b025 10232
c1c22e7a
GB
10233 * checks.adb:
10234 (Determine_Range): Document local variables
10235 (Determine_Range): Make sure Hbound is initialized. It looks as though
10236 there could be a real problem here with an uninitialized reference
10237 to Hbound, but no actual example of failure has been found.
82a4b025 10238
c1c22e7a
GB
102392001-12-17 Laurent Pautet <pautet@gnat.com>
10240
10241 * g-socket.ads:
10242 Fix comment of Shutdown_Socket and Close_Socket. These functions
10243 should not fail silently because if they are called twice, this
10244 probably means that there is a race condition in the user program.
10245 Anyway, this behaviour is consistent with the rest of this unit.
10246 When an error occurs, an exception is raised with the error message
10247 as exception message.
10248
7eb7bb07
RD
102492001-12-17 Robert Dewar <dewar@gnat.com>
10250
07fc65c4 10251 * frontend.adb: Move call to Check_Unused_Withs from Frontend, so
7eb7bb07 10252 that it happens before modification of Sloc values for -gnatD.
82a4b025 10253
07fc65c4 10254 * gnat1drv.adb: Move call to Check_Unused_Withs to Frontend,
7eb7bb07 10255 so that it happens before modification of Sloc values for -gnatD.
82a4b025 10256
7eb7bb07
RD
10257 * switch.adb: Minor reformatting
10258
b6434700
RH
102592001-12-15 Richard Henderson <rth@redhat.com>
10260
10261 * sem_ch7.adb: Wrap comment.
10262
44d6a706
JM
102632001-12-16 Joseph S. Myers <jsm28@cam.ac.uk>
10264
10265 * 5ataprop.adb, 5atpopsp.adb, 5ftaprop.adb, 5gmastop.adb,
10266 5gtaprop.adb, 5htaprop.adb, 5itaprop.adb, 5lintman.adb,
10267 5omastop.adb, 5oosinte.adb, 5otaprop.adb, 5staprop.adb,
10268 5vinterr.adb, 5vtaprop.adb, 5vtpopde.adb, 5wintman.adb,
10269 5wtaprop.adb, 5zinterr.adb, 5ztaprop.adb, 6vcstrea.adb,
10270 7sintman.adb, 7staprop.adb, 9drpc.adb, ChangeLog, Makefile.in,
10271 a-except.adb, a-tags.ads, a-tasatt.adb, a-teioed.adb,
10272 a-textio.ads, a-witeio.ads, a-wtedit.adb, ali.ads, comperr.adb,
10273 cstand.adb, einfo.ads, errout.adb, exp_ch11.adb, exp_ch2.adb,
10274 exp_ch3.adb, exp_ch4.adb, exp_ch5.adb, exp_ch6.adb, exp_ch9.adb,
10275 exp_util.adb, exp_util.ads, fname-uf.adb, g-cgi.ads, g-exctra.ads,
10276 g-expect.ads, g-regist.adb, g-spipat.adb, gnatchop.adb,
10277 gnatlink.adb, gnatls.adb, gnatmain.adb, gnatmem.adb, init.c,
10278 make.adb, make.ads, mdlltool.adb, nlists.ads, osint.ads,
10279 par-ch3.adb, par-ch4.adb, par-ch5.adb, par-ch6.adb, par.adb,
10280 repinfo.adb, s-fatflt.ads, s-fatlfl.ads, s-fatllf.ads,
10281 s-fatsfl.ads, s-finimp.adb, s-finimp.ads, s-interr.adb,
10282 s-secsta.ads, s-shasto.ads, s-stalib.adb, s-stalib.ads,
10283 s-tarest.ads, s-tasdeb.adb, s-tassta.adb, s-tassta.ads,
10284 s-vaflop.ads, scans.ads, scn.adb, sem.ads, sem_aggr.adb,
10285 sem_attr.adb, sem_case.ads, sem_ch10.adb, sem_ch12.adb,
10286 sem_ch13.adb, sem_ch3.adb, sem_ch3.ads, sem_ch5.adb, sem_ch7.adb,
10287 sem_ch8.adb, sem_ch8.ads, sem_type.adb, sem_util.ads, sinfo.ads,
10288 sprint.adb, tbuild.ads, types.ads, utils.c, xeinfo.adb: Fix
10289 spelling errors.
10290
226ada7a
GB
102912001-12-14 Vincent Celier <celier@gnat.com>
10292
07fc65c4 10293 * osint.adb(Create_Debug_File): When an object file is specified,
226ada7a 10294 put the .dg file in the same directory as the object file.
82a4b025 10295
226ada7a
GB
102962001-12-14 Robert Dewar <dewar@gnat.com>
10297
10298 * osint.adb: Minor reformatting
82a4b025 10299
07fc65c4 10300 * lib-xref.adb (Output_Instantiation): New procedure to generate
226ada7a 10301 instantiation references.
82a4b025 10302
226ada7a 10303 * lib-xref.ads: Add documentation of handling of generic references.
82a4b025 10304
07fc65c4 10305 * ali.adb (Read_Instantiation_Ref): New procedure to read
226ada7a 10306 instantiation references
82a4b025 10307
226ada7a 10308 * ali.ads: Add spec for storing instantiation references
82a4b025 10309
226ada7a 10310 * bindusg.adb: Minor reformatting
82a4b025 10311
226ada7a 10312 * switch.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
82a4b025 10313
226ada7a 10314 * usage.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
82a4b025 10315
226ada7a 10316 * gnatcmd.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
82a4b025 10317
226ada7a 10318 * csets.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
82a4b025 10319
226ada7a
GB
10320 * csets.ads:
10321 Fix header format
10322 Add 2001 to copyright date
10323 Add entry for Latin-5 (Cyrillic ISO-8859-5)
82a4b025 10324
226ada7a
GB
103252001-12-14 Matt Gingell <gingell@gnat.com>
10326
07fc65c4 10327 * adaint.c: mktemp is a macro on Lynx and can not be used as an
226ada7a 10328 expression.
82a4b025 10329
226ada7a
GB
103302001-12-14 Richard Kenner <kenner@gnat.com>
10331
07fc65c4 10332 * misc.c (gnat_expand_constant): Do not strip UNCHECKED_CONVERT_EXPR
226ada7a 10333 if operand is CONSTRUCTOR.
82a4b025 10334
226ada7a
GB
103352001-12-14 Ed Schonberg <schonber@gnat.com>
10336
07fc65c4
GB
10337 * trans.c (tree_transform, case N_Assignment_Statement): Set lineno
10338 before emiting check on right-hand side, so that exception information
226ada7a
GB
10339 is correct.
10340
103412001-12-14 Richard Kenner <kenner@gnat.com>
82a4b025 10342
07fc65c4 10343 * utils.c (create_var_decl): Throw away initializing expression
226ada7a 10344 if just annotating types and non-constant.
82a4b025 10345
226ada7a
GB
103462001-12-14 Vincent Celier <celier@gnat.com>
10347
10348 * prj-nmsc.adb: (Ada_Check): Migrate drom Ada_Default_... to
10349 Default_Ada_...
82a4b025 10350
07fc65c4 10351 * prj.adb: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
226ada7a
GB
10352 Remove functions.
10353 (Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Move to spec.
82a4b025 10354
07fc65c4 10355 * prj.ads: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
226ada7a
GB
10356 Remove functions.
10357 (Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Move from body.
10358
9b94bf9e
JM
103592001-12-16 Joseph S. Myers <jsm28@cam.ac.uk>
10360
10361 * ChangeLog: Remove piece of diff output.
10362
449d2be3
GB
103632001-12-14 Geert Bosch <bosch@gnat.com>
10364
10365 * config-lang.in: Update copyright notice
10366
10367 * layout.adb: Remove commented out code.
10368
10369 * mdllfile.ads: Update copyright notice. Fix header format.
10370
10371 * sem_case.ads: Likewise.
10372
10373 * sem_ch3.adb: Minor reformatting.
10374
e5bd5cb4
GB
103752001-12-12 Geert Bosch <bosch@gnat.com>
10376
10377 * freeze.ads: Update copyright date.
10378
10379 * g-comlin.ads: Minor reformatting.
10380
10381 * gnat-style.texi: Fix typo.
10382
b468d8ec
GB
103832001-12-12 Geert Bosch <bosch@gnat.com>
10384
10385 * einfo.h: Regenerate.
10386
ed7da216
GB
103872001-12-12 Ed Schonberg <schonber@gnat.com>
10388
07fc65c4 10389 * sem_ch12.adb (Save_Entity_Descendant): Use syntactic field names
ed7da216 10390 on known node types, rather than untyped fields. Further cleanups.
82a4b025 10391
ed7da216
GB
103922001-12-12 Robert Dewar <dewar@gnat.com>
10393
10394 * sem_ch12.adb:
10395 (Save_Entity_Descendant): Minor comment update.
10396 (Copy_Generic_Node): Deal with incorrect reference to Associated_Node
07fc65c4 10397 of an N_Attribute_Reference node. As per note below, this does not
ed7da216 10398 eliminate need for Associated_Node in attribute ref nodes.
07fc65c4 10399 (Associated_Node): Documentation explicitly mentions attribute
ed7da216 10400 reference nodes, since this field is used in such nodes.
82a4b025 10401
ed7da216
GB
10402 * sem_ch12.adb (Associated_Node): Minor documentation cleanup.
10403
de76a39c
GB
104042001-12-12 Robert Dewar <dewar@gnat.com>
10405
10406 * s-stalib.adb: Add more comments on with statements being needed
82a4b025 10407
de76a39c 10408 * par-ch12.adb: Minor reformatting
82a4b025 10409
de76a39c 10410 * prj-dect.ads: Fix copyright header
82a4b025 10411
07fc65c4 10412 * s-arit64.adb (Multiply_With_Ovflo_Check): Fix case where both
de76a39c 10413 inputs fit in 32 bits, but the result still overflows.
82a4b025 10414
de76a39c 10415 * s-fatgen.ads: Minor comment improvement
82a4b025 10416
de76a39c
GB
104172001-12-12 Ed Schonberg <schonber@gnat.com>
10418
07fc65c4
GB
10419 * sem_ch4.adb (Analyze_Selected_Component): If the prefix is of a
10420 formal derived type, look for an inherited component from the full
de76a39c 10421 view of the parent, if any.
82a4b025 10422
de76a39c
GB
104232001-12-12 Robert Dewar <dewar@gnat.com>
10424
10425 * checks.ads (Apply_Alignment_Check): New procedure.
82a4b025 10426
07fc65c4
GB
10427 * exp_ch13.adb (Expand_N_Freeze_Entity): Generate dynamic check to
10428 ensure that the alignment of objects with address clauses is
de76a39c
GB
10429 appropriate, and raise PE if not.
10430
07fc65c4 10431 * exp_util.ads (Must_Be_Aligned): Removed, replaced by
de76a39c 10432 Exp_Pakd.Known_Aligned_Enough
82a4b025 10433
de76a39c
GB
10434 * mdllfile.ads: Minor reformatting
10435
10436 * mlib-fil.ads: Minor reformatting
82a4b025 10437
de76a39c
GB
104382001-12-12 Ed Schonberg <schonber@gnat.com>
10439
07fc65c4
GB
10440 * exp_ch8.adb (Expand_N_Object_Renaming_Declaration): Extend previous
10441 fix to any component reference if enclosing record has non-standard
de76a39c 10442 representation.
82a4b025 10443
de76a39c
GB
104442001-12-12 Vincent Celier <celier@gnat.com>
10445
07fc65c4 10446 * g-dirope.ads (Find, Wildcard_Iterator): Moved to child package
de76a39c 10447 Iteration
82a4b025 10448
de76a39c
GB
104492001-12-12 Ed Schonberg <schonber@gnat.com>
10450
07fc65c4 10451 * freeze.ads: Make Freeze_Fixed_Point_Type visible, for use in
de76a39c 10452 sem_attr.
82a4b025 10453
de76a39c
GB
104542001-12-12 Robert Dewar <dewar@gnat.com>
10455
10456 * impunit.adb: Add entry for GNAT.Directory_Operations.Iteration
82a4b025 10457
de76a39c
GB
104582001-12-12 Emmanuel Briot <briot@gnat.com>
10459
10460 * g-regexp.adb: Remove all debug code, since it isn't required anymore,
10461 and it adds dependencies to system.io.
82a4b025 10462
de76a39c
GB
104632001-12-12 Pascal Obry <obry@gnat.com>
10464
07fc65c4 10465 * g-dirope.adb (Expand_Path.Var): Correctly detect end of
de76a39c
GB
10466 variable name.
10467
0b09835f
ES
104682001-12-11 Ed Schonberg <schonber@gnat.com>
10469
10470 * sem_ch10.adb (Install_Withed_Unit): If the unit is a generic instance
07fc65c4
GB
10471 that is the parent of other generics, the instance body replaces the
10472 instance node. Retrieve the instance of the spec, which is the one
0b09835f
ES
10473 that is visible in clients and within the body.
10474
598c3446
GB
104752001-12-11 Vincent Celier <celier@gnat.com>
10476
10477 * gnatmain.adb: Initial version.
82a4b025 10478
598c3446 10479 * gnatmain.ads: Initial version.
82a4b025 10480
598c3446 10481 * prj-attr.adb (Initialisation_Data): Add package Gnatstub.
82a4b025 10482
598c3446 10483 * snames.adb: Updated to match snames.ads.
82a4b025 10484
598c3446 10485 * snames.ads: Added Gnatstub.
82a4b025 10486
598c3446
GB
104872001-12-11 Vincent Celier <celier@gnat.com>
10488
07fc65c4 10489 * prj-attr.adb (Initialization_Data): Change name from
598c3446 10490 Initialisation_Data.
82a4b025 10491
598c3446
GB
104922001-12-11 Emmanuel Briot <briot@gnat.com>
10493
10494 * g-regpat.adb (Parse_Literal): Properly handle simple operators ?,
10495 + and * applied to backslashed expressions like \r.
82a4b025 10496
598c3446
GB
104972001-12-11 Vasiliy Fofanov <fofanov@gnat.com>
10498
07fc65c4 10499 * g-os_lib.ads: String_List type added, Argument_List type is now
598c3446 10500 subtype of String_List.
82a4b025 10501
598c3446
GB
105022001-12-11 Robert Dewar <dewar@gnat.com>
10503
10504 * g-os_lib.ads: Change copyright to FSF
10505 Add comments for String_List type
82a4b025 10506
598c3446
GB
105072001-12-11 Vincent Celier <celier@gnat.com>
10508
07fc65c4 10509 * g-dirope.adb (Expand_Path): Fix bug. (wrong length when adding a
598c3446
GB
10510 string to the buffer).
10511
7fb754a1
GB
105122001-12-11 Ed Schonberg <schonber@gnat.com>
10513
10514 * freeze.adb: Make Freeze_Fixed_Point_Type visible, for use in
10515 sem_attr.
82a4b025 10516
7fb754a1 10517 * sem_attr.adb: Simplify previous fix for Address.
07fc65c4
GB
10518 (Set_Bounds): If prefix is a non-frozen fixed-point type, freeze now,
10519 to avoid anomalies where the bound of the type appears to raise
7fb754a1
GB
10520 constraint error.
10521
105222001-12-11 Robert Dewar <dewar@gnat.com>
10523
07fc65c4 10524 * lib-xref.adb (Output_Refs): Make sure pointers are always properly
7fb754a1 10525 handled.
82a4b025 10526
7fb754a1
GB
105272001-12-11 Ed Schonberg <schonber@gnat.com>
10528
07fc65c4 10529 * sem_ch12.adb (Analyze_Subprogram_Instantiation): Check for a
7fb754a1 10530 renamed unit before checking for recursive instantiations.
82a4b025 10531
7fb754a1
GB
105322001-12-11 Emmanuel Briot <briot@gnat.com>
10533
10534 * prj.ads: Add comments for some of the fields.
10535
0873bafc
GB
105362001-12-11 Robert Dewar <dewar@gnat.com>
10537
07fc65c4 10538 * lib-xref.adb (Output_Refs): Don't output type references outside
0873bafc 10539 the main unit if they are not otherwise referenced.
82a4b025 10540
0873bafc
GB
105412001-12-11 Ed Schonberg <schonber@gnat.com>
10542
07fc65c4 10543 * sem_attr.adb (Analyze_attribute, case Address and Size): Simplify
0873bafc 10544 code and diagnose additional illegal uses
82a4b025 10545
07fc65c4 10546 * sem_util.adb (Is_Object_Reference): An indexed component is an
0873bafc 10547 object only if the prefix is.
82a4b025 10548
0873bafc
GB
105492001-12-11 Vincent Celier <celier@gnat.com>
10550
10551 * g-diopit.adb: Initial version.
82a4b025 10552
0873bafc 10553 * g-diopit.ads: Initial version.
82a4b025 10554
0873bafc
GB
10555 * g-dirope.adb:
10556 (Expand_Path): Avoid use of Unbounded_String
10557 (Find, Wildcard_Iterator): Moved to child package Iteration
82a4b025 10558
0873bafc 10559 * Makefile.in: Added g-diopit.o to GNATRTL_NONTASKING_OBJS
82a4b025 10560
7fb754a1 105612001-12-11 Robert Dewar <dewar@gnat.com>
0873bafc
GB
10562
10563 * sem_attr.adb: Minor reformatting
10564
d087cd96
GB
105652001-12-11 Ed Schonberg <schonber@gnat.com>
10566
10567 * sem_ch3.adb: Clarify some ???.
82a4b025 10568
d087cd96
GB
105692001-12-11 Robert Dewar <dewar@gnat.com>
10570
07fc65c4 10571 * exp_util.adb (Must_Be_Aligned): Removed, replaced by
d087cd96 10572 Exp_Pakd.Known_Aligned_Enough
82a4b025 10573
07fc65c4 10574 * sem_ch13.adb (Check_Address_Alignment): Removed, extended
d087cd96
GB
10575 version is moved to Exp_Ch13.
10576
105772001-12-11 Robert Dewar <dewar@gnat.com>
10578
10579 * einfo.ads: Minor reformatting
82a4b025 10580
d087cd96 10581 * exp_ch5.adb: Add comment for previous.change
82a4b025 10582
d087cd96 10583 * ali.adb: New interface for extended typeref stuff.
82a4b025 10584
d087cd96 10585 * ali.ads: New interface for typeref stuff.
82a4b025 10586
d087cd96 10587 * checks.adb (Apply_Alignment_Check): New procedure.
82a4b025 10588
d087cd96 10589 * debug.adb: Add -gnatdM for modified ALI output
82a4b025 10590
d087cd96 10591 * exp_pakd.adb (Known_Aligned_Enough): Replaces Known_Aligned_Enough.
82a4b025 10592
07fc65c4
GB
10593 * lib-xref.adb: Extend generation of <..> notation to cover
10594 subtype/object types. Note that this is a complete rewrite,
10595 getting rid of the very nasty quadratic algorithm previously
d087cd96 10596 used for derived type output.
82a4b025 10597
07fc65c4
GB
10598 * lib-xref.ads: Extend description of <..> notation to cover
10599 subtype/object types. Uses {..} for these other cases.
d087cd96 10600 Also use (..) for pointer types.
82a4b025 10601
d087cd96 10602 * sem_util.adb (Check_Potentially_Blocking_Operation): Slight cleanup.
82a4b025 10603
07fc65c4 10604 * exp_pakd.adb: Minor reformatting. Note that prevous RH should say:
d087cd96
GB
10605 (Known_Aligned_Enough): Replaces Must_Be_Aligned.
10606
290986ed
GB
106072001-12-11 Vincent Celier <celier@gnat.com>
10608
10609 * gnatcmd.adb:
10610 Changed /COMPILE_ONLY to /ACTIONS=COMPILE
10611 Changed /BIND_ONLY to /ACTIONS=BIND
10612 Changed /LINK_ONLY to /ACTIONS=LINK
82a4b025 10613
290986ed
GB
106142001-12-11 Ed Schonberg <schonber@gnat.com>
10615
10616 * sem_ch8.adb (Find_Selected_Component): improved search for a
10617 candidate package in case of error.
82a4b025 10618
290986ed
GB
10619 * sem_ch12.adb (Inline_Instance_Body): place head of use_clause
10620 chain back on scope stack before reinstalling use clauses.
82a4b025 10621
290986ed
GB
10622 * exp_ch5.adb (Expand_N_If_Statement): if Constant_Condition_Warnings
10623 is enabled, do not kill the code for the condition, to preserve
10624 warning.
10625
84157f51
GB
106262001-12-11 Robert Dewar <dewar@gnat.com>
10627
07fc65c4 10628 * checks.adb (Insert_Valid_Check): Apply validity check to expression
84157f51
GB
10629 of conversion, not to result of conversion.
10630
106312001-12-11 Ed Schonberg <schonber@gnat.com>
82a4b025 10632
07fc65c4
GB
10633 * sem_ch3.adb (Build_Derived_Record_Type): set Controlled flag
10634 before freezing parent. If the declarations are mutually recursive,
10635 an access to the current record type may be frozen before the
84157f51
GB
10636 derivation is complete.
10637
7ffa903f
VC
106382001-12-05 Vincent Celier <celier@gnat.com>
10639
07fc65c4 10640 * gnatcmd.adb: (MAKE): Add new translations: -b /BIND_ONLY,
7ffa903f 10641 -c /COMPILE_ONLY, -l /LINK_ONLY
82a4b025 10642
7ffa903f
VC
10643 * opt.ads:
10644 (Bind_Only): New Flag
10645 (Link_Only): New flag
82a4b025 10646
07fc65c4 10647 * switch.adb (Scan_Make_Switches): Add processing for -b (Bind_Only)
7ffa903f 10648 and -l (Link_Only)
82a4b025 10649
7ffa903f 10650 * makeusg.adb: Add new switches -b and -l. Update Copyright notice.
82a4b025 10651
7ffa903f
VC
10652 * make.adb:
10653 (Do_Compile_Step, Do_Bind_Step, Do_Link_Step): New flags.
10654 (Gnatmake): Set the step flags. Only perform a step if the
10655 corresponding step flag is True.
10656 (Scan_Make_Arg): Reset the bind and link step flags when -u
10657 or -gnatc has been specified.
10658
f91b40db
GB
106592001-12-05 Ed Schonberg <schonber@gnat.com>
10660
07fc65c4 10661 * sem_eval.adb (Eval_Concatenation): If left operand is a null string,
f91b40db 10662 get bounds from right operand.
82a4b025 10663
f91b40db 10664 * sem_eval.adb: Minor reformatting
82a4b025 10665
07fc65c4 10666 * exp_util.adb (Make_Literal_Range): use bound of literal rather
f91b40db 10667 than Index'First, its lower bound may be different from 1.
82a4b025 10668
07fc65c4 10669 * exp_util.adb: Undo earlier change, fixes ACVC regressions C48009B
f91b40db 10670 and C48009J
82a4b025 10671
f91b40db
GB
106722001-12-05 Vincent Celier <celier@gnat.com>
10673
10674 * prj-nmsc.adb Minor reformatting
82a4b025 10675
07fc65c4 10676 * prj-nmsc.adb (Language_Independent_Check): Reset Library flag if
f91b40db 10677 set and libraries are not supported.
82a4b025 10678
f91b40db
GB
106792001-12-05 Ed Schonberg <schonber@gnat.com>
10680
07fc65c4
GB
10681 * sem_ch3.adb (Build_Derived_Private_Type): set Public status of
10682 private view explicitly, so the back-end can treat as a global
f91b40db
GB
10683 when appropriate.
10684
45d04cbb
GB
106852001-12-05 Ed Schonberg <schonber@gnat.com>
10686
10687 * sem_ch12.adb (Instantiate_Package_Body): if instance is a compilation
10688 unit, always replace instance node with new body, for ASIS use.
10689
106902001-12-05 Vincent Celier <celier@gnat.com>
82a4b025 10691
07fc65c4
GB
10692 * prj-nmsc.adb (Language_Independent_Check): Issue a warning if
10693 libraries are not supported and both attributes Library_Name and
45d04cbb 10694 Library_Dir are specified.
82a4b025 10695
07fc65c4 10696 * prj-proc.adb (Expression): Set location of Result to location of
45d04cbb 10697 first term.
82a4b025 10698
45d04cbb
GB
10699 * Makefile.in: Add mlib.o, mlib-fil.o, mlib-tgt and mlib-utl to GNATLS.
10700 (prj-nmsc is now importing MLib.Tgt)
82a4b025 10701
45d04cbb
GB
10702 * prj-proc.adb: Put the change indicated above that was forgotten.
10703
84436014
RD
107042001-12-05 Robert Dewar <dewar@gnat.com>
10705
10706 * Makefile.in: Add dependencies for System.IO for GNAT.Regexp
10707
7ae0dcd8
ES
107082001-12-05 Ed Schonberg <schonber@gnat.com>
10709
10710 * sem_ch3.adb (Build_Derived_Concurrent_Type): If derivation imposes a
10711 constraint, introduce explicit subtype declaration and derive from it.
82a4b025 10712
7ae0dcd8
ES
10713 * sem_ch3.adb: Minor reformatting
10714
c9a4817d
RD
107152001-12-05 Robert Dewar <dewar@gnat.com>
10716
07fc65c4 10717 * checks.adb (Determine_Range): Increase cache size for checks.
c9a4817d 10718 Minor reformatting
82a4b025 10719
c9a4817d
RD
10720 * exp_ch6.adb: Minor reformatting
10721 (Expand_N_Subprogram_Body): Reset Is_Pure for any subprogram that has
10722 a parameter whose root type is System.Address, since treating such
10723 subprograms as pure in the code generator is almost surely a mistake
10724 that will lead to unexpected results.
82a4b025 10725
07fc65c4 10726 * exp_util.adb (Remove_Side_Effects): Clean up old ??? comment and
c9a4817d 10727 change handling of conversions.
82a4b025 10728
c9a4817d
RD
10729 * g-regexp.adb: Use System.IO instead of Ada.Text_IO.
10730
2514b839
ES
107312001-12-05 Ed Schonberg <schonber@gnat.com>
10732
07fc65c4
GB
10733 * sem_ch3.adb (Analyze_Object_Declaration): If expression is an
10734 aggregate with static wrong size, attach generated Raise node to
2514b839
ES
10735 declaration.
10736
457b6274
RD
107372001-12-05 Robert Dewar <dewar@gnat.com>
10738
07fc65c4 10739 * sem_attr.adb (Analyze_Attribute): Defend against bad Val attribute.
457b6274
RD
10740 Fixes compilation abandoned bomb in B24009B.
10741
19349925
ES
107422001-12-05 Ed Schonberg <schonber@gnat.com>
10743
10744 * sem_ch12.adb:
10745 Document use of Associated_Node on Selected_Components.
10746 (Save_Global_Operand_Descendants): Change to Save_Entity_Descendants,
10747 to clarify use of untyped descendant fields.
10748
6663c393
RD
107492001-12-05 Robert Dewar <dewar@gnat.com>
10750
10751 * prj-dect.ads: Add ??? comment
10752 Add 2001 to copyright notice (was not done in after all)
82a4b025 10753
6663c393 10754 * prj-part.adb: Minor reformatting. Reword one awkward error message.
82a4b025 10755
6663c393 10756 * prj.ads: Minor reformatting throughout, and add some ??? comments
82a4b025 10757
6663c393
RD
10758 * snames.ads: Minor reformatting
10759
d7b2a6af
GB
107602001-12-05 Geert Bosch <bosch@gnat.com>
10761
10762 * snames.adb: Autoupdate
10763
fbc9a404
VC
107642001-12-05 Vincent Celier <celier@gnat.com>
10765
10766 * prj-dect.adb (Parse): Rename parameter Modifying to Extends.
82a4b025 10767
fbc9a404 10768 * prj-dect.ads (Parse): Rename parameter Modifying to Extends.
82a4b025 10769
fbc9a404 10770 * prj-env.adb: Minor comment changes (modifying -> extends).
82a4b025 10771
fbc9a404 10772 * prj-nmsc.adb: Minor comment changes (modifying -> extends).
82a4b025 10773
07fc65c4 10774 * prj-part.adb (Parse_Single_Project): Change Tok_Modifying to
fbc9a404 10775 Tok_Extends.
82a4b025 10776
fbc9a404 10777 * prj.adb (Initialize): Change Modifying to Extends.
82a4b025 10778
fbc9a404 10779 * scans.ads (Token_Type): Change Tok_Modifying to Tok_Extends.
82a4b025 10780
fbc9a404 10781 * prj.ads: Minor comment change (Modifying -> extending).
82a4b025 10782
fbc9a404
VC
10783 * snames.ads: Change modifying to extends.
10784
7cff0b1b
RD
107852001-12-05 Robert Dewar <dewar@gnat.com>
10786
07fc65c4 10787 * sem_warn.adb: Remove stuff for conditionals, we are not going to
7cff0b1b 10788 do this after all.
82a4b025 10789
07fc65c4 10790 * sem_warn.ads: Remove stuff for conditionals, we are not going to
7cff0b1b
RD
10791 do this after all. Add 2001 to copyright notice
10792
4f56ebb7
GB
107932001-12-04 Geert Bosch <bosch@gnat.com>
10794
10795 * einfo.h, sinfo.h, treeprs.ads: Regenerate.
10796
053defdf
RD
107972001-12-04 Robert Dewar <dewar@gnat.com>
10798
07fc65c4
GB
10799 * errout.adb (Error_Msg): Ignore attempt to put error msg at junk
10800 location if we already have errors. Stops some cases of cascaded
053defdf 10801 errors.
82a4b025 10802
053defdf
RD
10803 * errout.adb: Improve comment.
10804
f311e166
RD
108052001-12-04 Robert Dewar <dewar@gnat.com>
10806
10807 * sem_ch12.adb:
10808 (Analyze_Formal_Type_Definition): Defend against Error.
10809 (Analyze_Formal_Subprogram): Defend against Error.
82a4b025 10810
07fc65c4 10811 * par-ch12.adb (F_Formal_Type_Declaration): In case of error,
f311e166
RD
10812 remove following semicolon if present. Removes cascaded error.
10813
d61bd65a
DR
108142001-12-04 Douglas B. Rupp <rupp@gnat.com>
10815
10816 * bindgen.adb:
10817 (Gen_Exception_Table_Ada): Write "begin" and then return if Num
10818 exceptions equals 0.
10819 (Gen_Exception_Table_C): Return if Num exceptions equals 0.
10820 Fixes PIWG E tests (which have to be run with -gnatL).
10821
4ba603e2
RD
108222001-12-04 Robert Dewar <dewar@gnat.com>
10823
10824 * einfo.ads: Minor reformatting
10825
57568d91
ES
108262001-12-04 Ed Schonberg <schonber@gnat.com>
10827
07fc65c4
GB
10828 * einfo.ads: Block_Node points to the identifier of the block, not to
10829 the block node itself, to preserve the link when the block is
10830 rewritten, e.g. within an if-statement with a static condition.
82a4b025 10831
07fc65c4 10832 * inline.adb (Cleanup_Scopes): recover block statement from block
57568d91 10833 entity using new meaning of Block_Node.
82a4b025 10834
07fc65c4 10835 * sem_ch5.adb (Analyze_Block_Statement): set Block_Node to point to
57568d91
ES
10836 identifier of block node, rather than to node itself.
10837
0815d36a 108382001-12-04 Gary Dismukes <dismukes@gnat.com>
82a4b025 10839
0815d36a
GD
10840 * layout.adb:
10841 (Get_Max_Size): Fix "start of processing" comment to say Get_Max_Size.
10842 (Discrimify): Go back to setting the Etypes of the selected component
07fc65c4 10843 because the Vname component does not exist at this point and will
0815d36a
GD
10844 fail name resolution. Also set Analyzed.
10845 Remove with and use of Sem_Res.
10846
edc0f304
AC
108472001-12-04 Arnaud Charlet <charlet@gnat.com>
10848
10849 * Makefile.in: (HIE_SOURCES): add s-fat*.
10850
32213142
RD
108512001-12-04 Robert Dewar <dewar@gnat.com>
10852
10853 * sem_attr.adb:
10854 (Compile_Time_Known_Attribute): New procedure.
10855 (Eval_Attribute, case Size): Use Compile_Time_Known_Attribute to ensure
10856 proper range check.
10857
c0def2ad
ES
108582001-12-04 Ed Schonberg <schonber@gnat.com>
10859
07fc65c4 10860 * sem_ch7.adb (New_Private_Type): Set Is_Tagged_Type flag before
c0def2ad
ES
10861 processing discriminants to diagnose illegal default values.
10862
ee0a48c5
ES
108632001-12-04 Ed Schonberg <schonber@gnat.com>
10864
07fc65c4
GB
10865 * sem_attr.adb (Resolve_Attribute): Handle properly an non-classwide
10866 access discriminant within a type extension that constrains its
ee0a48c5
ES
10867 parent discriminants.
10868
dd5875a6
ES
108692001-12-04 Ed Schonberg <schonber@gnat.com>
10870
07fc65c4 10871 * sem_ch3.adb (Find_Type_Of_Subtype_Indic): If subtype indication
dd5875a6 10872 is malformed, use instance of Any_Id to allow analysis to proceed.
82a4b025 10873
07fc65c4 10874 * par-ch12.adb (P_Formal_Type_Declaration): Propagate Error if
dd5875a6
ES
10875 type definition is illegal.
10876 (P_Formal_Derived_Type_Definition): Better recovery when TAGGED is
10877 misplaced.
10878
c2a41e57
ES
108792001-12-04 Ed Schonberg <schonber@gnat.com>
10880
07fc65c4 10881 * sem_warn.adb (Output_Unreferenced_Messages): Extend previous fix to
c2a41e57
ES
10882 constants.
10883
0ae84753
RD
108842001-12-04 Robert Dewar <dewar@gnat.com>
10885
10886 * errout.adb: Minor reformatting
10887
63db260e
RD
108882001-12-04 Robert Dewar <dewar@gnat.com>
10889
10890 * exp_util.adb: Minor reformatting from last change
82a4b025 10891
07fc65c4
GB
10892 * errout.adb (Check_For_Warning): For a Raised_Constraint_Error node
10893 which is a rewriting of an expression, traverse the original
63db260e
RD
10894 expression to remove warnings that may have been posted on it.
10895
c6d289f4
ES
108962001-12-04 Ed Schonberg <schonber@gnat.com>
10897
07fc65c4 10898 * exp_util.adb (Must_Be_Aligned): Return false for a component of a
c6d289f4
ES
10899 record that has other packed components.
10900
5917e80d
DR
109012001-12-04 Douglass B. Rupp <rupp@gnat.com>
10902
10903 * adaint.c: Minor cleanups.
10904
2c70f9dd
DR
109052001-12-04 Douglass B. Rupp <rupp@gnat.com>
10906
10907 * adaint.c: Do not use utime.h on vxworks.
10908
e59b3387
AC
109092001-12-04 Arnaud Charlet <charlet@gnat.com>
10910
07fc65c4 10911 * Makefile.adalib: Clarify step 3 (use of gnat.adc) as it causes
e59b3387
AC
10912 more confusion than it solves.
10913
e288604a
GB
109142001-12-04 Geert bosch <bosch@gnat.com>
10915
10916 * einfo.h, nmake.adb, nmake.ads, sinfo.h treeprs.ads: Regenerate.
10917
5ac21013
GB
109182001-12-04 Geert Bosch <bosch@gnat.com>
10919
07fc65c4 10920 * Makefile.in (update-sources): New target.
5ac21013
GB
10921 For use by gcc_release script.
10922
7dd5bd5e
ES
109232001-12-04 Ed Schonberg <schonber@gnat.com>
10924
07fc65c4 10925 * sem_prag.adb (Analyze_Pragma, case Validity_Checks): do not treat as
7dd5bd5e
ES
10926 a configuration pragma, it is now legal wherever a pragma can appear.
10927
a078a589
ZW
109282001-12-04 Zack Weinberg <zack@codesourcery.com>
10929
10930 * Makefile.in: Don't set ALL. Delete @cross_defines@,
10931 @cross_overrides@, @build_overrides@ stanzas. INTERNAL_CFLAGS
10932 is now @CROSS@ -DIN_GCC; update comment.
10933
0839863c
GB
109342001-12-04 Robert Dewar <dewar@gnat.com>
10935
10936 * einfo.adb (Has_Pragma_Pure_Function): New flag.
10937 Fix problem that stopped ceinfo from working
82a4b025 10938
0839863c 10939 * einfo.ads (Has_Pragma_Pure_Function): New flag.
82a4b025 10940
0839863c
GB
10941 * sem_prag.adb (Pure_Function): Set new flag Has_Pragma_Pure_Function.
10942
109432001-12-04 Douglas B. Rupp <rupp@gnat.com>
9678de49
DR
10944
10945 * gnatchop.adb:
10946 (File_Time_Stamp): New procedure.
10947 (Preserve_Mode): New boolean.
10948 (Write_Unit): Pass time stamp.
10949 Implement -p switch (preserve time stamps).
82a4b025 10950
9678de49 10951 * gnatcmd.adb (CHOP): Add translation for -p (/PRESERVE).
82a4b025 10952
9678de49 10953 * gnatchop.adb: Do usage info for -p switch
82a4b025 10954
9678de49 10955 * adaint.h (__gnat_set_file_time_name): New function
82a4b025 10956
9678de49 10957 * adaint.c (__gnat_set_file_time_name): Implement
82a4b025 10958
9678de49
DR
10959 * adaint.h: Fix typo
10960
3b9a13c4
RD
109612001-12-03 Robert Dewar <dewar@gnat.com>
10962
667e5c5d 10963 * sinfo.ads: Minor reformatting. N_Freeze_Entity node does not
b4f94ac1 10964 have Associated_Node.
3b9a13c4 10965
767b404e
RD
109662001-12-03 Robert Dewar <dewar@gnat.com>
10967
10968 * prj-proc.adb: Minor reformatting
667e5c5d 10969
767b404e
RD
10970 * make.adb: Minor reformatting
10971
11ac71ba
GB
109722001-12-03 Geert Bosch <bosch@gnat.com>
10973
667e5c5d 10974 * make.adb: Minor reformatting.
11ac71ba 10975
ef3d4d6e 109762001-12-03 Robert Dewar <dewar@gnat.com>
b1446533
RD
10977
10978 * sem_ch12.adb: Minor reformatting
10979
d6d32b24
ES
109802001-12-03 Ed Schonberg <schonber@gnat.com>
10981
667e5c5d
AJ
10982 * sem_ch12.adb (Inline_Instance_Body): Use Save_Scope_Stack and
10983 push Standard on the stack before analyzing the instance body,
d6d32b24 10984 in order to have a clean visibility environment.
667e5c5d
AJ
10985
10986 * sem_ch12.adb (Inline_Instance_Body): Remove redundant code.
d6d32b24 10987
13f08f03
ES
109882001-12-03 Ed Schonberg <schonber@gnat.com>
10989
667e5c5d 10990 * sem_ch12.adb (Instantiate_Package_Body): Protect against double
13f08f03
ES
10991 instantiation of a body that contains an inlined body.
10992
3bd6c100
ES
109932001-12-03 Ed Schonberg <schonber@gnat.com>
10994
10995 * sem_ch12.adb:
10996 (Analyze_generic_subprogram_Declaration): Set outer_generic_scope,
10997 to prevent freezing within formal packages.
10998 (Freeze_Subprogram_Body): If body comes from another instance that
10999 appeared before its own body, place freeze node at end of current
11000 declarative part, to prevent a back-end crash.
11001 (Inline_Instance_Body): Handle properly a package instance within
11002 a subprogram instance that is a child unit.
11003
58d07d8f
GS
110042001-12-01 Graham Stott <grahams@redhat.com>
11005
11006 * Makefile.in (misc.o): Add missing $(srcdir) prefix
11007 and add optabs.h dependency.
11008
11009 * misc.c: Include optabs.h
11010 (gnat_tree_code_type): Make static and const.
11011 (gnat_tree_code_length): Likewise.
11012 (gnat_tree_code_name): Likewise.
11013 (update_setjmp_buf): Obtain operands mode from insn_data.
11014
c87222f0
RH
110152001-11-29 Richard Henderson <rth@redhat.com>
11016
11017 * init.c: Remove obsolete dwarf2 frame.h section.
11018
d3945f0a
JM
110192001-11-29 Joseph S. Myers <jsm28@cam.ac.uk>
11020
11021 * Make-lang.in (ada.generated-manpages): New dummy target.
11022
9f639397
ES
110232001-11-29 Ed Schonberg <schonber@gnat.com>
11024
667e5c5d
AJ
11025 * g-os_lib.adb (Add_To_Command): use explicit loop to move string
11026 into Command, an array conversion is illegal here. Uncovered by
9f639397
ES
11027 ACATS B460005.
11028
c835e5c6
GB
110292001/11/28 Geert Bosch <bosch@gnat.com>
11030
11031 * init.c: Minor whitespace changes.
11032
49bb4548
DR
110332001-11-28 Doug Rupp <rupp@gnat.com>
11034
667e5c5d 11035 * init.c: (__gnat_install_handler,VMS): Increase size of alternate
49bb4548
DR
11036 signal stack.
11037
ea2417e5
ZW
110382001-11-28 Zack Weinberg <zack@codesourcery.com>
11039
11040 * misc.c (gnat_expand_constant): Move declaration above
11041 definition of lang_hooks.
11042 (LANG_HOOKS_EXPAND_CONSTANT): Set to gnat_expand_constant.
11043 (gnat_init): lang_expand_constant no longer exists.
11044
11045 (internal_error_function): Remove #ifdef HAVE_VPRINTF. We
11046 always have vprintf.
11047 (gnat_init): Always call set_internal_error_function.
11048
f8e0aa73
AJ
110492001-11-27 Andreas Jaeger <aj@suse.de>
11050
11051 * Makefile.in (stamp-tool_src_dir): Use symbolic link.
11052
d99b0e79
LG
110532001-11-27 Laurent Guerby <guerby@acm.org>
11054
11055 * Makefile.in: Regenerate Ada dependencies.
11056
3f0496e5
RH
110572001-11-26 Richard Henderson <rth@redhat.com>
11058
11059 * Make-lang.in (gnatbind, gnatmake, gnatbl, gnatchop, gnatcmd,
11060 gnatlink, gnatkr, gnatls, gnatmem, gnatprep, gnatpsta, gnatpsys,
11061 gnatxref, gnatfind, gnatlbr): Depend on CONFIG_H and prefix.o.
11062
92fa4733
LG
110632001-11-25 Laurent Guerby <guerby@acm.org>
11064
11065 * sysdep.c (rts_get_*): Fix style.
11066
07626501
LG
110672001-11-19 Laurent Guerby <guerby@acm.org>
11068
11069 * Makefile.in (INCLUDES_FOR_SUBDIR): Remove redundant system include
11070 since it is of no apparent use and cause warnings.
11071
22703ccc
NB
110722001-11-18 Neil Booth <neil@daikokuya.demon.co.uk>
11073
11074 * misc.c (gnat_decode_option, gnat_init_options): Make definitions
11075 static too.
11076 (gnat_init): Don't return NULL.
11077 (finish_parse): Remove.
11078
b0df4321
LG
110792001-11-17 Laurent Guerby <guerby@acm.org>
11080
11081 * Make-lang.in (GNATLIBFLAGS): Add -W -Wall.
11082 * gigi.h (init_decl_processing): Rename to gnat_init_decl_processing.
11083 * io-aux.c: Provide K&R prototypes to all functions, reformat code.
11084 * lang-spec.h: Add missing struct field to silence warnings.
11085 * sysdep.c (rts_get_*): Provide K&R prototype.
11086 * sysdep.c (Unlock_Task, Lock_Task): Move to K&R prototype.
11087 * traceback.c (Unlock_Task, Lock_Task): Likewise.
11088 * tracebak.c (__gnat_backtrace): Remove unused variable.
11089 * utils.c (end_subprog_body): Move to K&R style.
11090
d215024f
RK
11091Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
11092
11093 * trans.c, utils2.c: Remove PALIGN parameter to get_inner_reference.
11094
f5e99456
NB
110952001-11-15 Neil Booth <neil@daikokuya.demon.co.uk>
11096
11097 * misc.c (gnat_init): Change prototype. Include the
11098 functionality of the old init_parse and init_decl_processing.
11099 (gnat_init_decl_processing): New prototype.
11100 (init_parse): Remove.
11101 * utils.c (init_decl_processing): Rename gnat_init_decl_processing.
11102
5d69f816
NB
111032001-11-09 Neil Booth <neil@daikokuya.demon.co.uk>
11104
11105 * misc.c (gnat_print_decl, gnat_print_type): Renamed.
11106 (LANG_HOOKS_PRINT_DECL, LANG_HOOKS_PRINT_TYPE): Override.
11107 (print_lang_statistics, lang_print_xnode, print_lang_identifier,
11108 set_yydebug): Remove.
11109
3ac88239
NB
111102001-11-09 Neil Booth <neil@daikokuya.demon.co.uk>
11111
11112 * misc.c (LANG_HOOKS_NAME, LANG_HOOKS_IDENTIFIER_SIZE): Override.
11113 (struct lang_hooks): Constify.
11114 (language_string, lang_identify): Remove.
11115 * utils.c (init_decl_processing): Update.
11116
d23c55c2
NB
111172001-11-06 Neil Booth <neil@cat.daikokuya.demon.co.uk>
11118
11119 * misc.c: Include langhooks-def.h.
11120 * Makefile.in: Update.
11121
04a1b79c
RD
111222001-10-30 Robert Dewar <dewar@gnat.com>
11123
11124 * style.adb:
11125 (Check_Identifier): Rewrite circuit to be compatible with use of letters
11126 in the upper half of ASCII.
11127 (Check_Identifier): Minor reformatting
11128
81fa2d39
GB
111292001-10-30 Geert Bosch <bosch@gnat.com>
11130
f8e0aa73 11131 * (Associated_Node, Set_Associated_Node): Do not check for
81fa2d39
GB
11132 Freeze_Entity.
11133
ffc5527f
RD
111342001-10-30 Robert Dewar <dewar@gnat.com>
11135
11136 * a-reatim.ads: Minor reformatting
11137
865335eb
RD
111382001-10-30 Robert Dewar <dewar@gnat.com>
11139
f8e0aa73 11140 * gnatdll.adb: Minor reformatting throughout. Many ??? added for
865335eb
RD
11141 undocumented declarations.
11142
5e257178
PO
111432001-10-30 Pascal Obry <obry@gnat.com>
11144
f8e0aa73 11145 * gnatdll.adb (Parse_Command_Line): handle -g option to be passed
5e257178
PO
11146 to the binder and linker.
11147 Minor style fix.
f8e0aa73 11148
5e257178
PO
11149 * mdll.ads: Fix layout. Update copyright notice.
11150
11151 * mdll.adb: Fix layout. Update copyright notice.
11152
1753e0ad
RD
111532001-10-30 Robert Dewar <dewar@gnat.com>
11154
11155 * usage.adb: Minor fix to output for -gnaty.
11156
84bfdde0
ES
111572001-10-30 Ed Schonberg <schonber@gnat.com>
11158
f8e0aa73
AJ
11159 * a-reatim.ads: Makes Seconds_Count into a 64-bit integer,
11160 to accommodate all its possible values.
84bfdde0 11161
f8e0aa73 11162 * a-reatim.adb (Split): Special-case handling of Time_Span_First
84bfdde0
ES
11163 and of small absolute values of T.
11164
c296e5fc
RK
111652001-10-30 Richard Kenner <kenner@gnat.com>
11166
f8e0aa73
AJ
11167 * misc.c (gnat_expand_expr, case NULL_EXPR): Remove call to
11168 set_mem_attributes since not needed and wrong if RESULT if a REG;
c296e5fc
RK
11169 fixes ACATS failures.
11170
07c809df
GB
111712001-10-30 Geert Bosch <bosch@gnat.com>
11172
11173 * 86numaux.adb, a-tigeau.ads, a-wtgeau.ads, fname-sf.ads, g-traceb.ads,
11174 s-tasdeb.ads, sem_maps.ads: Add 2001 to copyright notice.
11175
54d22416 111762001-10-30 Robert Dewar <dewar@gnat.com>
f8e0aa73 11177
54d22416 11178 * bindusg.adb: Undocument -f switch.
f8e0aa73 11179
54d22416 11180 * gnatcmd.adb: Remove /FULL_ELABORATION.
f8e0aa73
AJ
11181
11182 * opt.ads (Force_RM_Elaboration_Order): Document that this is
54d22416 11183 obsolescent.
f8e0aa73 11184
54d22416 11185 * gnatbind.adb: Output new warning for use of obsolescent -f switch.
f8e0aa73 11186
54d22416
RD
11187 * gnatbind.adb: Minor update of warning msg.
11188
af5cf6f8
VC
111892001-10-30 Vincent Celier <celier@gnat.com>
11190
f8e0aa73 11191 * gnatcmd.adb (MAKE, BIND, LINK, LIST, FIND, XREF): Add translations
af5cf6f8 11192 for project file switches (-P (/PROJECT_FILE=),
f8e0aa73 11193 -X (/EXTERNAL_REFERENCE=) and -vPx (/PROJECT_FILE_VERBOSITY=DEFAULT
af5cf6f8
VC
11194 or MEDIUM or HIGH)
11195
984bc4c3
GB
111962001-10-30 Geert Bosch <bosch@gnat.com>
11197
11198 * decl.c: Minor whitespace fixes.
11199
5dece937
RK
112002001-10-30 Richard Kenner <kenner@gnat.com>
11201
11202 * utils2.c (build_allocator): Test for SIZE overflow in array case too
11203
de4bf6cb
GB
112042001-10-30 Geert Bosch <bosch@gnat.com>
11205
f8e0aa73 11206 * ali-util.adb (Initialize_Checksum): Use out-mode instead of in out.
de4bf6cb 11207 Found due to GCC 3.0 warning of using uninitialized value.
f8e0aa73 11208
de4bf6cb
GB
11209 * layout.adb:
11210 (Get_Max_Size): Use variant record for tracking value/expression.
11211 Makes logic clearer and prevents warnings for uninitialized variables.
11212 (Layout_Array_Type): Use variant record for tracking value/expression.
11213 Makes logic clearer and prevents warnings for uninitialized variables.
11214
f5e44987
RD
112152001-10-30 Robert Dewar <dewar@gnat.com>
11216
11217 * lib.adb: Minor reformatting
11218
11219 * s-taprop.ads: Minor reformatting
11220
45659035 112212001-10-29 Laurent Guerby <guerby@acm.org>
f8e0aa73 11222
45659035
GB
11223 * init.c:
11224 (Raise_From_Signal_Handler, Propagate_Signal_Exception): Make arg
11225 const.
11226 (_gnat_error_handler): Make MSG const.
11227
112282001-10-29 Richard Kenner <kenner@gnat.com>
11229
11230 * sysdep.c: Fix localtime_r problem on LynxOS.
11231 Also remove #elif to avoid warnings.
f8e0aa73
AJ
11232
11233 * misc.c (yyparse): Don't set up and register jmpbuf; remove decls
45659035 11234 used by this.
f8e0aa73 11235
45659035
GB
11236 * decl.c (annotate_value): Make SIZE unsigned to avoid warning.
11237
638e383e
JM
112382001-10-28 Joseph S. Myers <jsm28@cam.ac.uk>
11239
11240 * 86numaux.adb, a-tigeau.ads, a-wtgeau.ads, decl.c, exp_ch6.adb,
11241 exp_ch9.adb, exp_util.adb, fname-sf.ads, freeze.ads, g-awk.adb,
11242 g-comlin.ads, g-dirope.adb, g-dyntab.ads, g-socket.ads,
11243 g-table.ads, g-traceb.ads, gnat-style.texi, gnatchop.adb, init.c,
11244 layout.adb, layout.ads, mdllfile.ads, mlib-fil.ads, osint.ads,
11245 s-fatgen.adb, s-imgrea.adb, s-taprop.ads, s-tasdeb.ads,
11246 sem_aggr.adb, sem_attr.adb, sem_case.ads, sem_ch13.adb,
11247 sem_ch3.adb, sem_elab.adb, sem_maps.ads, sem_res.adb,
11248 sem_util.ads, sinfo.ads, sinput.ads, table.adb, table.ads,
11249 types.ads, urealp.adb: Fix spelling errors.
11250
97f6baa0
LG
112512001-10-27 Laurent Guerby <guerby@acm.org>
11252
11253 * trans.c (gigi): Fix non determinism leading to bootstrap
11254 comparison failures for debugging information.
11255
46b58b8c
FW
112562001-10-26 Florian Weimer <fw@deneb.enyo.de>
11257
11258 * gnat_rm.texi: Use @./@: where appropriate.
11259
30151c7b
RD
112602001-10-26 Robert Dewar <dewar@gnat.com>
11261
11262 * sinfo.adb: Define Associated_Node to overlap Entity field. Cleanup.
11263
c0b1738d
RK
112642001-10-26 Richard Kenner <kenner@gnat.com>
11265
11266 * gmem.c (__gnat_gmem_read_next): Properly check for EOF
11267
5b09c153
RK
112682001-10-26 Richard Kenner <kenner@gnat.com>
11269
f8e0aa73 11270 * decl.c (validate_size): Modify message for bad size to avoid
5b09c153
RK
11271 implication that compiler is modifying the size.
11272
4d553668
RD
112732001-10-26 Robert Dewar <dewar@gnat.com>
11274
11275 * prj-util.adb: Minor reformatting. Fix bad header format.
11276
3e542a58
RD
112772001-10-26 Robert Dewar <dewar@gnat.com>
11278
11279 * sinfo.ads: Define Associated_Node to overlap Entity field. Cleanup.
f8e0aa73 11280
3e542a58 11281 * sinfo.ads: Clarify use of Associated_Node (documentation only).
f8e0aa73
AJ
11282
11283 * sem_ch12.adb: Change Node4 to Associated_Node. Change
11284 Associated_Node to Get_Associated_Node. Put use of Unchecked_Access
3e542a58
RD
11285 much more narrowly in places where needed. These are cleanups.
11286
0bf08bfe
JB
112872001-10-26 Joel Brobecker <brobecke@gnat.com>
11288
11289 * 5zosinte.ads (null_pthread): new constant.
f8e0aa73 11290
0bf08bfe
JB
11291 * 5ztaprop.adb:
11292 (Initialize_TCB): Initialize thread ID to null, to be able to verify
11293 later that this field has been set.
11294 (Finalize_TCB): ditto.
11295 (Suspend_Task): Verify that the thread ID is not null before using it.
11296 (Resume_Task): ditto.
f8e0aa73 11297
0bf08bfe
JB
11298 * s-tasdeb.adb:
11299 (Resume_All_Tasks): Lock the tasks list before using it.
11300 (Suspend_All_Tasks): ditto.
11301
7a3a8c06
RK
113022001-10-26 Richard Kenner <kenner@gnat.com>
11303
f8e0aa73 11304 * decl.c (gnat_to_gnu_entity, case E_General_Access_Type):
7a3a8c06
RK
11305 Make constant variant of designated type for Is_Access_Constant.
11306 Call update_pointer_to with main variant.
f8e0aa73
AJ
11307
11308 * trans.c (process_freeze_entity, process_type):
7a3a8c06 11309 Call update_pointer_to on main variant.
f8e0aa73 11310
7a3a8c06
RK
11311 * utils.c (update_pointer_to): Make corresponding variant for NEW_TYPE.
11312 If main variant, update all other variants.
f8e0aa73
AJ
11313
11314 * utils2.c (build_unary_op, case INDIRECT_REF): No longer set
7a3a8c06
RK
11315 TREE_STATIC.
11316
a160babb
RD
113172001-10-26 Robert Dewar <dewar@gnat.com>
11318
11319 * prj-util.adb: Minor reformatting
11320
b403bd17
RD
113212001-10-26 Robert Dewar <dewar@gnat.com>
11322
11323 * prj-util.adb: Minor reformatting
11324
5fc3b4c7
RD
113252001-10-26 Robert Dewar <dewar@gnat.com>
11326
11327 * prj-attr.adb: Minor reformatting throughout
11328
8c736034
RD
113292001-10-26 Robert Dewar <dewar@gnat.com>
11330
11331 * prj-attr.ads: Minor reformatting
11332 Add ??? comment (this whole spec has almost no comments)
11333
47d5b6ed
VC
113342001-10-26 Vincent Celier <celier@gnat.com>
11335
f8e0aa73 11336 * g-os_lib.adb (Normalize_Pathname): Preserve the double slash
b4f94ac1 11337 ("//") that precede the drive letter on Interix.
47d5b6ed 11338
41af791f
GB
113392001-10-26 Geert Bosch <bosch@gnat.com>
11340
11341 * gnat_rm.texi: Add GNAT Reference Manual.
11342
ed4a1468
RD
113432001-10-25 Robert Dewar <dewar@gnat.com>
11344
f8e0aa73 11345 * sem_ch8.adb (Analyze_Package_Renaming): Skip analysis if Name
b4f94ac1 11346 is Error. Similar change for other renaming cases.
ed4a1468 11347
24377ae4
RD
113482001-10-25 Robert Dewar <dewar@gnat.com>
11349
11350 * s-atacco.ads: Add pragma Inline_Always for functions.
11351 Fix header format. Add copyright 2001
11352
fef3204e
ES
113532001-10-25 Ed Schonberg <schonber@gnat.com>
11354
f8e0aa73 11355 * par-ch3.adb (P_Subtype_Mark_Resync): for an anonymous array
b4f94ac1 11356 return Error rather than Empty so that analysis can proceed.
fef3204e 11357
dfc69d80
ES
113582001-10-25 Ed Schonberg <schonber@gnat.com>
11359
f8e0aa73 11360 * sem_util.adb (Enter_Name): better handling of cascaded error
b4f94ac1 11361 messages when a unit appears in its own context.
dfc69d80 11362
5a15af62
ES
113632001-10-25 Ed Schonberg <schonber@gnat.com>
11364
f8e0aa73 11365 * sem_util.adb (Defining_Entity): in case of error, attach created
b4f94ac1 11366 entity to specification, so that semantic analysis can proceed.
5a15af62 11367
2b881d53
RD
113682001-10-25 Robert Dewar <dewar@gnat.com>
11369
f8e0aa73 11370 * sem_util.adb
b4f94ac1 11371 (Defining_Entity): Deal with Error.
2b881d53
RD
11372 (Process_End_Label): Deal with bad end label for.
11373
578053f2
ES
113742001-10-25 Ed Schonberg <schonber@gnat.com>
11375
f8e0aa73 11376 * sem_elab.adb (Check_A_Call): refine message when call is in an
578053f2
ES
11377 instance but callee is not declared in the generic unit.
11378
0597ce0b 113792001-10-25 Ed Schonberg <schonber@gnat.com>
f8e0aa73
AJ
11380
11381 * sem_elab.adb (Check_A_Call): check for renaming before finding the
0597ce0b
ES
11382 enclosing unit, which may already be different from the calling unit.
11383
3de6e6da
GB
113842001-10-25 Geert Bosch <bosch@gnat.com>
11385
11386 * 4gintnam.ads: fix header format.
11387
6f311316
ES
113882001-10-25 Ed Schonberg <schonber@gnat.com>
11389
f8e0aa73 11390 * sem_res.adb (Resolve_Call): if the call is actually an indexing
b4f94ac1
ZW
11391 operation on the result of a parameterless call, perform elaboration
11392 check after the node has been properly rewritten.
f8e0aa73
AJ
11393
11394 * sem_ch12.adb (Copy_Generic_Node): after the proper body has been
b4f94ac1
ZW
11395 inlined within the generic tree, the defining identifier is not a
11396 compilation_unit.
6f311316 11397
17be0cdf
ES
113982001-10-25 Ed Schonberg <schonber@gnat.com>
11399
f8e0aa73 11400 * sem_res.adb (Resolve): special-case resolution of Null in an
b4f94ac1 11401 instance or an inlined body to avoid view conflicts.
f8e0aa73
AJ
11402
11403 * sem_ch12.adb (Copy_Generic_Node): for allocators, check for view
b4f94ac1 11404 compatibility by retrieving the access type of the generic copy.
17be0cdf 11405
ce9e9122
RD
114062001-10-25 Robert Dewar <dewar@gnat.com>
11407
11408 * sem_ch3.adb:
11409 (Analyze_Number_Declaration): Handle error expression.
11410 (Signed_Integer_Type_Declaration): Handle error bound.
11411 (Analyze_Subtype_Indication): Handle error range.
f8e0aa73 11412
ce9e9122
RD
11413 * sem_util.adb (Get_Index_Bounds): Check for Error.
11414
e12fbc9e
RD
114152001-10-25 Robert Dewar <dewar@gnat.com>
11416
f8e0aa73 11417 * restrict.adb (Set_No_Run_Time_Mode): Set Discard_Names as default
e12fbc9e
RD
11418 in no run time mode.
11419
52b80488
PO
114202001-10-25 Pascal Obry <obry@gnat.com>
11421
f8e0aa73 11422 * gnatmem.adb (Read_Next): fix Curs2 value to properly handle quiet
b4f94ac1 11423 mode case for ALLOC case.
f8e0aa73
AJ
11424
11425 * gnatmem.adb (Read_Next): correctly fix parsing in Quiet mode on
b4f94ac1 11426 all platforms. Improvement of last change.
52b80488 11427
316ad9c5
RD
114282001-10-25 Robert Dewar <dewar@gnat.com>
11429
11430 * exp_ch4.adb (Expand_N_Allocator): Minor reformatting.
11431
1a7e4df4
GB
114322001-10-25 Geert Bosch <bosch@gnat.com>
11433
11434 * osint.adb (Is_Relative): Remove duplicate.
11435
90a9fff2
PO
114362001-10-25 Pascal Obry <obry@gnat.com>
11437
f8e0aa73 11438 * osint.adb (Read_Default_Search_Dirs): correctly detect relative
b4f94ac1 11439 pathnames in UNIX and DOS style with drive letter.
90a9fff2 11440 (Is_Relative): new routine.
f8e0aa73 11441
90a9fff2 11442 * osint.adb: Minor reformatting
f8e0aa73
AJ
11443
11444 * osint.adb (Is_Relative): implementation using
b4f94ac1 11445 GNAT.OS_Lib.Is_Absolute_Path. Better fix.
90a9fff2 11446
5c1ba4cc
PO
114472001-10-25 Pascal Obry <obry@gnat.com>
11448
f8e0aa73 11449 * g-dirope.adb (Basename): correctly compute offset between the
b4f94ac1 11450 original Path and the translated one.
f8e0aa73 11451
5c1ba4cc
PO
11452 * g-dirope.adb: (Base_Name): add some comments.
11453
a7fb206d
RD
114542001-10-25 Robert Dewar <dewar@gnat.com>
11455
f8e0aa73 11456 * exp_imgv.adb (Expand_Image_Attribute): Defend against bad use
b4f94ac1 11457 in HIE mode, avoids compilation abandoned message
f8e0aa73 11458
a7fb206d 11459 * exp_imgv.adb: Correct typo in previous change
f8e0aa73 11460
a7fb206d
RD
11461 * exp_imgv.adb: Correct typo in previous change (not my day!)
11462
e6a7e62e
RD
114632001-10-25 Robert Dewar <dewar@gnat.com>
11464
11465 * s-tpinop.ads: Add 2001 to copyright notice. Fix header format.
11466
0d2b8e0b 114672001-10-25 Pascal Obry <obry@gnat.com>
75c09e7d 11468
f8e0aa73 11469 * g-awk.ads: Move all pragma inlines next to the routine
0d2b8e0b 11470 declarations. This is more uniform with other GNAT spec.
75c09e7d 11471
0d2b8e0b 114722001-10-22 Geert Bosch <bosch@gnat.com>
d2740a69
GB
11473
11474 * Make-lang.in (gnattools, cross-gnattools): Remove gnatmem.
11475
0d2b8e0b 114762001-10-19 Geert Bosch <bosch@gnat.com>
d7ac9bdd
GB
11477
11478 * Makefile.in (tools, gnattools): Remove gnatmem.
11479
17ed6335
RH
114802001-10-17 Richard Henderson <rth@redhat.com>
11481
11482 * Makefile.in (misc.o): Depend on langhooks.h.
11483 * misc.c: Include it.
11484 (LANG_HOOKS_INIT, LANG_HOOKS_INIT_OPTIONS): New.
11485 (LANG_HOOKS_DECODE_OPTION): New.
11486 (lang_hooks): Use LANG_HOOKS_INITIALIZER.
11487
f2436274
FW
114882001-10-16 Florian Weimer <fw@deneb.enyo.de>
11489
11490 * trans.c (tree_transform): Adjust to recent change in
11491 expand_asm_operands to implement named asm operands.
11492
b14127e6
ES
114932001-10-11 Ed Schonberg <schonber@gnat.com>
11494
f8e0aa73 11495 * exp_ch8.adb (Expand_N_Object_Renaming_Declaration): Bugfix in
b14127e6
ES
11496 renaming of discriminant for mutable record type.
11497
e70ee92a
RD
114982001-10-11 Robert Dewar <dewar@gnat.com>
11499
11500 * validsw.adb: Properly save -gnatVn status.
11501
9a5621d7 115022001-10-11 Robert Dewar <dewar@gnat.com>
f8e0aa73 11503
9a5621d7
RD
11504 * usage.adb: Add lines for V switch.
11505
f8e0aa73 11506 * gnatcmd.adb (COMPILE): Revise translations for -gnatV
9a5621d7
RD
11507 (/VALIDITY_CHECKING).
11508
45667f04
ES
115092001-10-11 Ed Schonberg <schonber@gnat.com>
11510
f8e0aa73 11511 * sem_type.adb (Add_One_Interp): an operator for a type declared in
45667f04
ES
11512 an extension of System is known to be visible.
11513
c3de5c4c
ES
115142001-10-11 Ed Schonberg <schonber@gnat.com>
11515
f8e0aa73 11516 * sem_eval.adb (Compare_Fixup): get the bounds of a String_Literal
c3de5c4c
ES
11517 properly. Fixes regression on ACATS C34005G.
11518
4fa964a6
RD
115192001-10-11 Robert Dewar <dewar@gnat.com>
11520
f8e0aa73 11521 * sem_ch5.adb (Analyze_Iteration_Scheme): Suppress warning on null
4fa964a6
RD
11522 loop in generic instance, since this is likely not very useful.
11523
0868e09c
RD
115242001-10-11 Robert Dewar <dewar@gnat.com>
11525
f8e0aa73 11526 * restrict.adb (Disallow in No_Run_Time_Mode): Properly specialize
0868e09c 11527 the error message for high integrity mode.
f8e0aa73
AJ
11528
11529 * rtsfind.adb (RTE): Give message if we try to find an entity that
0868e09c 11530 is not available in high integrity mode.
f8e0aa73 11531
0868e09c
RD
11532 * rtsfind.ads:
11533 (OK_To_Use_In_HIE_Mode): New array.
11534 (RTE): May return Empty in high integrity mode.
f8e0aa73
AJ
11535
11536 * rtsfind.ads (OK_To_Use_In_No_Run_Time_Mode): New name for
11537 OK_To_Use_In_HIE_Mode, now includes System_FAT_xxx.
11538
11539 * sem_ch6.adb (Analyze_Subprogram_Body): Kill body in predefined
11540 unit if not inlined always and in no runtime mode. Fixes problem
0868e09c 11541 caused by new Rtsfind changes.
f8e0aa73
AJ
11542
11543 * sem_ch6.adb (Analyze_Subrogram_Body): Do not Check_References if
0868e09c 11544 body is deleted.
f8e0aa73
AJ
11545
11546 * rtsfind.adb (RTE): Make sure we do not try to load unit after
0868e09c
RD
11547 giving message for entity not available in high integrity mode.
11548
934abf9c 115492001-10-11 Pascal Obry <obry@gnat.com>
f8e0aa73 11550
934abf9c
PO
11551 * impunit.adb: Add GNAT.CRC32.
11552
3c72bea4
ES
115532001-10-11 Ed Schonberg <schonber@gnat.com>
11554
f8e0aa73
AJ
11555 * exp_fixd.adb (Expand_Multiply_Fixed_By_Fixed_Giving_Fixed): handle
11556 properly the case where one universal operand in a non-static
3c72bea4
ES
11557 exponentiation of a real literal.
11558
44d8d2bb
ES
115592001-10-11 Ed Schonberg <schonber@gnat.com>
11560
f8e0aa73
AJ
11561 * exp_ch7.adb (Find_Final_List): for a type appearing in a with_type
11562 clause, return the gobal finalization list, for lack of anthing else.
44d8d2bb 11563
9e2b9627
ES
115642001-10-11 Ed Schonberg <schonber@gnat.com>
11565
f8e0aa73
AJ
11566 * exp_ch7.adb (Make_Transient_Block): if statement is within
11567 exception handler, always use new transient scope to place Clean
9e2b9627
ES
11568 procedure.
11569
cfac6e9f
PO
115702001-10-11 Pascal Obry <obry@gnat.com>
11571
11572 * Makefile.in:
11573 (GNAT_ADA_OBJS): add g-crc32.o, a-tags.o, a-stream.o
11574 (GNATBIND_OBJS): add g-crc32.o, a-tags.o, a-stream.o
11575 (GNATLS_RTL_OBJS): add g-crc32.o
11576 (GNATMAKE_RTL_OBJS): add g-crc32.o
f8e0aa73 11577
cfac6e9f
PO
11578 * ali-util.adb:
11579 (CRC_Match): new function.
f8e0aa73 11580 (Get_File_Checksum): renamed Get_File_CRC. Use the GNAT.CRC32 unit
cfac6e9f
PO
11581 instead of the previous simple checksum algorithm.
11582 (Time_Stamp_Mismatch): use CRC_Match for comparison.
11583 (Set_Source_Table): idem.
f8e0aa73 11584
cfac6e9f 11585 * ali-util.ads:
f8e0aa73 11586 (Get_File_Checksum): renamed Get_File_CRC as now we compute CRC
cfac6e9f
PO
11587 instead of simple checksum.
11588 (CRC_Match): new function.
11589 (CRC_Error): new constant.
f8e0aa73
AJ
11590
11591 * ali.adb (Scan_ALI): rename variable Chk to CRC as we are handling
11592 a CRC now and not a simple checksum. A CRC uses lower-case hex
cfac6e9f 11593 letters, fixes ambiguity in parsing.
f8e0aa73
AJ
11594
11595 * ali.ads (Sdep_Record.Checksum): renamed Sdep_Record.CRC as this
cfac6e9f 11596 is what this variable will store.
f8e0aa73 11597
cfac6e9f 11598 * bcheck.adb: Change reference to chechsum in comments by CRC.
f8e0aa73
AJ
11599 (Check_Consistency): Rename Get_File_Checksum to Get_File_CRC.
11600 rename All_Checksum_Match to All_CRC_Match. Change due to API
11601 renaming since now GNAT does not use a simple checksum but a
cfac6e9f 11602 CRC using GNAT.CRC32.
f8e0aa73
AJ
11603
11604 * gnatls.adb: Rename Checksum to CRC in many places, we use a CRC
cfac6e9f 11605 now and not anymore a simple checksum.
f8e0aa73
AJ
11606
11607 * lib-load.adb: Use Source_CRC instead of Source_Checksum in many
cfac6e9f 11608 places.
f8e0aa73 11609
cfac6e9f 11610 * lib-writ.adb (Write_ALI): Use Source_CRC instead of Source_Checksum.
f8e0aa73 11611
cfac6e9f
PO
11612 * scans.adb:
11613 (Restore_Scan_State): rename Checksum to CRC.
11614 (Save_Scan_State): idem.
f8e0aa73 11615
cfac6e9f
PO
11616 * scans.ads:
11617 With GNAT.CRC32.
11618 (Checksum): rename to CRC.
11619 (Saved_Scan_State): Save_Checksum field renamed to Save_CRC
f8e0aa73
AJ
11620
11621 * scn-nlit.adb: Rename many Accumulate_Checksum to Update (from
cfac6e9f 11622 GNAT.CRC32). Update copyright notice.
f8e0aa73
AJ
11623
11624 * scn-slit.adb: Rename many Accumulate_Checksum to Update (from
cfac6e9f 11625 GNAT.CRC32). Update copyright notice.
f8e0aa73 11626
cfac6e9f
PO
11627 * scn.adb:
11628 (Accumulate_Checksum): removed.
11629 (Update): new procedure. Add a wide-character into the CRC.
f8e0aa73 11630
cfac6e9f
PO
11631 * sinput-l.adb:
11632 (Complete_Source_File_Entry): use CRC32 instead of simple checksum.
f8e0aa73 11633 (Load_File): fix initialization of S (change Source_Checksum to
cfac6e9f 11634 Source_CRC)
f8e0aa73
AJ
11635
11636 * sinput-p.adb (Load_Project_File): rename Source_Checksum to
cfac6e9f 11637 Source_CRC in S initialization.
f8e0aa73 11638
cfac6e9f 11639 * sinput.adb (Source_Checksum): renamed to Source_CRC.
f8e0aa73 11640
cfac6e9f
PO
11641 * sinput.ads (Source_Checksum): renamed to Source_CRC.
11642 Update comments for the CRC.
f8e0aa73 11643
cfac6e9f 11644 * types.adb (Hex): Use lowercase for the letter part.
f8e0aa73
AJ
11645
11646 * types.ads (Get_Hex_String): Returns the hexadecimal representation
11647 for a word. This is currently used only for CRC. In previous version,
11648 the checksum was using a representation with all letter being
11649 upper-case. With the new implementation (using CRC) we do not remove
11650 the 32th bit of the CRC, so we can have an upper-case starting letter
11651 in the CRC. This is not possible to parse in Scan_ALI (ali.adb).
11652 It is ambigous since the CRC was optional and could be followed by
11653 options like EB, EE. So now this routines uses lower-case letter for
11654 the hexadecimal representation. Strange enough only lower case letters
cfac6e9f 11655 where checked in Scan_ALI (even if this was not a possible case).
f8e0aa73 11656
cfac6e9f 11657 * gnatvsn.ads (Library_Version): changed to 3.15a.
f8e0aa73
AJ
11658
11659 * s-crc32.ads: Initial version from GNAT.CRC32. This is the version
cfac6e9f 11660 for the compiler.
f8e0aa73
AJ
11661
11662 * s-crc32.adb: Initial version from GNAT.CRC32. This is the version
cfac6e9f 11663 for the compiler.
f8e0aa73 11664
cfac6e9f
PO
11665 * ali-util.adb: Redo previous change to avoid using word CRC everywhere
11666 Add 2001 to copyright notice
11667 (Accumulate_Checksum): Modify to use System.CRC32.
f8e0aa73
AJ
11668
11669 * ali-util.ads: Redo changes of previous revision to continue to use
cfac6e9f 11670 the word Checksum. Add 2001 to copyright notice.
f8e0aa73 11671
cfac6e9f
PO
11672 * ali.adb: Undo some of previous changes, not needed.
11673 Keep the change for lower case letters in the checksum.
f8e0aa73 11674
cfac6e9f
PO
11675 * ali.ads: Undo previous change not needed.
11676
11677 * bcheck.adb: Undo most of previous change, not needed.
11678 But do use Checksums_Match for checksum comparison.
f8e0aa73 11679
cfac6e9f
PO
11680 * gnatls.adb: Undo most of previous change, not needed.
11681 But do use Checksums_Match for comparing checksums.
f8e0aa73 11682
cfac6e9f 11683 * lib-load.adb: Undo previous change, not needed.
f8e0aa73 11684
cfac6e9f 11685 * lib-writ.adb: Undo previous change, not needed.
f8e0aa73
AJ
11686
11687 * lib-writ.ads: Document that checksums use lower case,
cfac6e9f 11688 not upper case letters.
f8e0aa73 11689
cfac6e9f 11690 * scans.adb: Undo previous change, not needed
f8e0aa73 11691
cfac6e9f 11692 * scans.ads: Undo previous change, not needed.
f8e0aa73 11693
cfac6e9f 11694 * scn-nlit.adb: Undo previous changes, not needed.
f8e0aa73 11695
cfac6e9f 11696 * scn-slit.adb: Undo previous change, not needed. Fix header format.
f8e0aa73 11697
cfac6e9f
PO
11698 * scn.adb:
11699 (Accumulate_Checksum): Use System.CRC32.
11700 (Initialize_Checksum): New procedure.
11701 Remove other changes of previous revision.
f8e0aa73 11702
cfac6e9f 11703 * sinput-p.adb: Undo previous change, not needed.
f8e0aa73 11704
cfac6e9f
PO
11705 * sinput.adb: Undo previous change, not needed.
11706
11707 * sinput-l.adb: Undo previous change, not needed.
f8e0aa73
AJ
11708
11709 * sinput.ads: Undo previous change, not needed. Keep only comment
cfac6e9f 11710 on new checksum algorithm
f8e0aa73 11711
cfac6e9f
PO
11712 * Makefile.in: Add s-crc32 as needed, remove g-crc32.
11713 Also remove a-tags and a-stream from GNAT sources.
f8e0aa73 11714
cfac6e9f 11715 * ali.adb (Scan_ALI): fix typo introduce in latest check-in.
f8e0aa73 11716
cfac6e9f
PO
11717 * Makefile.in (GNATRTL_NONTASKING_OBJS): Add g-crc32.o.
11718
4d6d06a5
GB
117192001-10-11 Geert Bosch <bosch@gnat.com>
11720
11721 * einfo.h: Regenerate.
11722
11723 * nmake.ads: Regenerate.
11724
11725 * nmake.adb: Regenerate.
11726
11727 * sinfo.h: Regenerate.
11728
11729 * treeprs.adb: Regenerate.
11730
c97412e2
GB
117312001-10-10 Geert Bosch <bosch@gnat.com>
11732
11733 * gnat-style.texi: New file describing coding guidelines for Ada.
f8e0aa73 11734
b83018ca
ES
117352001-10-10 Ed Schonberg <schonber@gnat.com>
11736
f8e0aa73 11737 * einfo.adb (Write_Entity_Flags): Elaboration_Entity_Required
b83018ca
ES
11738 is Flag174.
11739
e834fe1f
GB
117402001-10-10 Geert Bosch <bosch@gnat.com>
11741
11742 * snames.ads: Add new names for project facility.
11743
11744 * snames.adb: Update to reflect snames.ads changes.
11745
11746 * snames.h: Update to reflect snames.ads changes.
11747
b30668b7
VC
117482001-10-10 Vincent Celier <celier@gnat.com>
11749
11750 * make.adb:
11751 (Add_Switches): reflect the changes for the switches attributes
11752 Default_Switches indexed by the programming language,
11753 Switches indexed by the file name.
11754 (Collect_Arguments_And_Compile): Idem.
11755 Reflect the attribute name changes.
f8e0aa73 11756
b30668b7
VC
11757 * prj-attr.adb:
11758 (Initialisation_Data): Change the names of some packages and
11759 attributes.
11760 (Initialize): process case insensitive associative arrays.
f8e0aa73 11761
b30668b7
VC
11762 * prj-attr.ads:
11763 (Attribute_Kind): Remove Both, add Case_Insensitive_Associative_Array.
f8e0aa73 11764
b30668b7
VC
11765 * prj-dect.adb:
11766 (Parse_Attribute_Declaration): For case insensitive associative
11767 arrays, set the index string to lower case.
f8e0aa73 11768
b30668b7
VC
11769 * prj-env.adb:
11770 Reflect the changes of the project attributes.
f8e0aa73 11771
b30668b7
VC
11772 * prj-nmsc.adb:
11773 Replace Check_Naming_Scheme by Ada_Check and
11774 Language_Independent_Check.
f8e0aa73 11775
b30668b7
VC
11776 * prj-nmsc.ads:
11777 Replaced Check_Naming_Scheme by 2 procedures:
11778 Ada_Check and Language_Independent_Check.
f8e0aa73 11779
b30668b7
VC
11780 * prj-proc.adb:
11781 (Process_Declarative_Items): For case-insensitive associative
11782 arrays, set the index string to lower case.
11783 (Recursive_Check): Call Prj.Nmsc.Ada_Check, instead of
11784 Prj.Nmsc.Check_Naming_Scheme.
f8e0aa73 11785
b30668b7
VC
11786 * prj-tree.adb:
11787 (Case_Insensitive): New function
11788 (Set_Case_Insensitive): New procedure
f8e0aa73 11789
b30668b7
VC
11790 * prj-tree.ads:
11791 (Case_Insensitive): New function
11792 (Set_Case_Insensitive): New procedure
11793 (Project_Node_Record): New flag Case_Insensitive.
f8e0aa73 11794
b30668b7
VC
11795 * prj-util.adb:
11796 (Value_Of): new function to get the string value of a single
11797 string variable or attribute.
f8e0aa73 11798
b30668b7
VC
11799 * prj-util.ads:
11800 (Value_Of): new function to get the string value of a single
11801 string variable or attribute.
f8e0aa73 11802
b30668b7
VC
11803 * prj.adb:
11804 (Ada_Default_Spec_Suffix): New function
11805 (Ada_Default_Impl_Suffix): New function
11806 Change definitions of several constants to reflect
11807 new components of record types.
f8e0aa73 11808
b30668b7
VC
11809 * prj.ads:
11810 (Naming_Data): Change several components to reflect new
11811 elements of naming schemes.
11812 (Project_Data): New flags Sources_Present and
11813 Language_Independent_Checked.
11814 (Ada_Default_Spec_Suffix): New function.
11815 (Ada_Default_Impl_Suffix): New function.
f8e0aa73 11816
b30668b7
VC
11817 * snames.ads:
11818 Modification of predefined names for project manager: added
11819 Implementation, Specification_Exceptions, Implementation_Exceptions,
11820 Specification_Suffix, Implementation_Suffix, Separate_Suffix,
11821 Default_Switches, _Languages, Builder, Cross_Reference,
11822 Finder. Removed Body_Part, Specification_Append, Body_Append,
11823 Separate_Append, Gnatmake, Gnatxref, Gnatfind, Gnatbind,
11824 Gnatlink.
f8e0aa73 11825
b30668b7
VC
11826 * prj.ads: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
11827 Add comments.
f8e0aa73 11828
b30668b7
VC
11829 * prj-nmsc.adb (Ada_Check): Test that Separate_Suffix is defaulted,
11830 not that it is Nil_Variable_Value.
f8e0aa73 11831
b30668b7
VC
11832 * prj.ads: Add ??? for uncommented declarations
11833
662e57b4
ES
118342001-10-10 Ed Schonberg <schonber@gnat.com>
11835
f8e0aa73
AJ
11836 * sem_prag.adb: (Analyze_Pragma, case External): If entity is a
11837 constant, do not indicate possible modification, so that gigi can
662e57b4
ES
11838 treat it as a bona fide constant.
11839
72e4357f
RD
118402001-10-10 Robert Dewar <dewar@gnat.com>
11841
11842 * sem_prag.adb: Add processing for pragma External.
f8e0aa73 11843
72e4357f 11844 * snames.ads: Add entry for pragma External.
f8e0aa73 11845
72e4357f 11846 * par-prag.adb: Add pragma External.
f8e0aa73 11847
72e4357f
RD
11848 * snames.adb: Updated to match snames.ads.
11849
7bc1c7df
ES
118502001-10-10 Ed Schonberg <schonber@gnat.com>
11851
11852 * exp_ch4.adb (Expand_N_Allocator): Generate meaningful names for
11853 a dynamic task if the allocator appears in an indexed assignment
11854 or selected component assignment.
f8e0aa73
AJ
11855
11856 * exp_util.adb (Build_Task_Array_Image, Build_Task_Record_Image):
11857 For a dynamic task in an assignment statement, use target of
7bc1c7df
ES
11858 assignment to generate meaningful name.
11859
c84700e7
ES
118602001-10-10 Ed Schonberg <schonber@gnat.com>
11861
f8e0aa73 11862 * einfo.adb (Write_Field19_Name): Body_Entity is also defined for
c84700e7
ES
11863 a generic package.
11864
11865 * einfo.ads: Body_Entity is also defined for generic package.
11866 Documentation change only
f8e0aa73
AJ
11867
11868 * exp_aggr.adb (Build_Array_Aggr_Code): When expanding an
11869 others_choice for a discriminated component initialization,
11870 convert discriminant references into the corresponding discriminals.
11871
11872 * exp_ch3.adb (Get_Simple_Init_Val): Add qualification to aggregate
11873 only if original type is private and expression has to be wrapped
c84700e7 11874 in a conversion.
f8e0aa73
AJ
11875
11876 * checks.adb:
11877 (Apply_Constraint_Check): Do not perform length check
c84700e7 11878 if expression is an aggregate with only an others_choice.
f8e0aa73 11879 (Length_N_Cond): two references to the same in_parameter
c84700e7
ES
11880 (typically the discriminal in an init_proc) denote the same value.
11881 Two useful optimization uncovered by bugfixes above.
11882
d8d80dcd
RD
118832001-10-10 Robert Dewar <dewar@gnat.com>
11884
f8e0aa73 11885 * xeinfo.adb: Change int to char in translation of enumeration types.
d8d80dcd
RD
11886 This fixes a problem in the C representation of component alignment.
11887 Add 2001 to copyright notice
11888
a8fee948
RK
118892001-10-10 Richard Kenner <kenner@gnat.com>
11890
f8e0aa73 11891 * decl.c: (validate_size): Do check size of object of integral type
a8fee948
RK
11892 if it is a packed array type.
11893
c2d7fe59
RK
118942001-10-10 Richard Kenner <kenner@gnat.com>
11895
f8e0aa73 11896 * decl.c: (gnat_to_gnu_entity, case object): Also materialize
c2d7fe59
RK
11897 VAR_DECL for constant if not Is_Public but -O0.
11898
fb75e100
RK
118992001-10-10 Richard Kenner <kenner@gnat.com>
11900
11901 * misc.c (struct lang_hooks): Add new initializer to match GCC change.
11902
1724557a
GB
119032001-10-10 Geert Bosch <bosch@gnat.com>
11904
f8e0aa73 11905 * xnmake.adb (XNmake): Fix handling of -s/-b options. No longer
1724557a
GB
11906 use '/' as switch character, allowing for absolute file names.
11907
9f2f9eb6
JM
119082001-10-09 Joseph S. Myers <jsm28@cam.ac.uk>
11909
11910 * 4gintnam.ads, Make-lang.in, Makefile.in, config-lang.in: Update
11911 FSF address.
11912
8fecf41d
GB
119132001-10-08 Geert Bosch <bosch@gnat.com>
11914
11915 * Makefile.in (treeprs.ads, einfo.h, sinfo.h, nmake.adb, nmake.ads):
11916 Automatically build utilities when files need to be regenerated.
11917
589f1edf
GB
119182001-10-08 Geert Bosch <bosch@gnat.com>
11919
11920 * xsnames.adb: New utility for updating snames.ads and snames.adb
11921
67f28219
ZW
119222001-10-08 Zack Weinberg <zack@codesourcery.com>
11923
11924 * Make-lang.in (ADAFLAGS): Add -W -Wall.
11925 (ADA_FLAGS_TO_PASS): Set ADA_CFLAGS=$(CFLAGS) also.
11926 (gnat1): Also depend on attribs.o.
11927 (gnatlib, gnatlib-shared): Set CC and ADAC in recursive make.
11928 * Makefile.in (X_ADAFLAGS, T_ADAFLAGS): New.
11929 (ADAC): Set to @ADAC@ in stage1, $(CC) later.
11930 (ADAFLAGS): Add -W -Wall.
11931 (ALL_ADAFLAGS, MOST_ADAFLAGS): Add X_ADAFLAGS and T_ADAFLAGS;
11932 take out CFLAGS.
11933
11934 (.adb.o, .ads.o, a-numaux.o, a-teioed.o, s-interr.o,
11935 s-taskin.o, sdefault.o, s-tasdeb.o, s-vaflop.o, a-except.o,
11936 s-assert.o, s-stalib.o, s-memory.o, memtrack.o, mlib-tgt.o):
11937 Use $(ADAC), not $(CC), as compilation command.
11938
11939 (gnattools): Depend directly on tools to build, don't use
11940 recursive make.
11941 (gnatlib): Set ADA_CFLAGS=$(GNATLIBCFLAGS) in recursive make.
11942
11943 * einfo.h, sinfo.h: New files (autogenerated).
11944
295ef2bb
RH
119452001-10-08 Richard Henderson <rth@redhat.com>
11946
11947 * comperr.adb (Abort_In_Progress): New.
11948 (Compiler_Abort): Use it to prevent recursion.
11949
5c736541
RD
119502001-10-08 Robert Dewar <dewar@gnat.com>
11951
11952 * atree.adb: Set Error_Posted in Error node, helps error recovery.
67f28219
ZW
11953
11954 * par-endh.adb (Output_End_Expected): We should also not test
5c736541 11955 Error_Posted on the Error node, since now it is always set.
67f28219
ZW
11956
11957 * cstand.adb (Create_Standard): Set Etype of Error to Any_Type
5c736541 11958 to help error recovery. Part of general work on 9407-004.
67f28219 11959
5c736541 11960 * par.adb: Add ??? for misuse of error
67f28219 11961
5c736541
RD
11962 * sem_res.adb:
11963 (Resolve): Defend against Error, fixes 9407-003.
11964 (Resolve_Discrete_Subtype_Indication): Defend against Error.
67f28219
ZW
11965
11966 * sinfo.ads (N_Error): Now has Etype field (which will be set
5c736541
RD
11967 to Any_Type to help error recovery).
11968
a153ae15
RK
119692001-10-08 Richard Kenner (kenner@gnat.com)
11970
11971 * misc.c (gnat_expand_expr, case UNCHECKED_CONVERT_EXPR):
11972 Consistently set MEM attributes from expression; fixes
11973 bootstrap failure on x86.
11974
743f3c7b
GB
119752001-10-08 Geert Bosch (bosch@gnat.com)
11976
11977 * 5oosinte.adb: Add 2001 to copyright notice.
11978
210c4ef4
GB
119792001-10-08 Geert Bosch (bosch@gnat.com)
11980
11981 * ceinfo.adb: Add utility for consistency checking of einfo.ad[bs].
11982
11983 * csinfo.adb: Add utility for consistency checking of sinfo.ad[bs].
11984
cc712abf
JM
119852001-10-07 Joseph S. Myers <jsm28@cam.ac.uk>
11986
11987 * 5oosinte.adb: Fix spelling error of "separate" as "seperate".
11988
4c4abc0f
GB
119892001-10-05 Geert Bosch (bosch@gnat.com)
11990
11991 * adaint.h: Small formatting fix.
11992
7f50e2e3
GB
119932001-10-04 Geert Bosch <bosch@gnat.com>
11994
11995 * sysdep.c (__gnat_set_binary_mode, __gnat_set_text_mode):
11996 Arg is int, not FILE *, in dummy version of functions.
67f28219 11997
7f50e2e3
GB
11998 * adaint.h (__gnat_set_binary_mode, __gnat_set_text_mode):
11999 Arg is int, not FILE *.
12000
5d1a9698
GB
120012001-10-04 Geert Bosch <bosch@gnat.com>
12002
12003 * 3lsoccon.ads: Added file, missed with initial check ins.
67f28219 12004
5d1a9698
GB
12005 * 4lintnam.ads: Fix header format.
12006 Change Linux to GNU/Linux.
67f28219 12007
5d1a9698
GB
12008 * 5iosinte.adb: Change Linux to GNU/Linux.
12009
12010 * 5iosinte.ads: Change Linux to GNU/Linux.
67f28219 12011
5d1a9698 12012 * 5itaprop.adb: Change Linux to GNU/Linux.
67f28219 12013
5d1a9698
GB
12014 * 5itaspri.ads: Change Linux to GNU/Linux.
12015 Update copyright notice.
67f28219 12016
5d1a9698 12017 * 5lintman.adb: Change Linux to GNU/Linux.
67f28219 12018
5d1a9698 12019 * 5lml-tgt.adb: Change Linux to GNU/Linux.
67f28219 12020
5d1a9698 12021 * 5losinte.ads: Change Linux to GNU/Linux.
67f28219 12022
5d1a9698 12023 * 5lsystem.ads: Change Linux to GNU/Linux.
67f28219 12024
5d1a9698 12025 * 5qosinte.adb: Change Linux to GNU/Linux.
67f28219 12026
5d1a9698 12027 * 5qosinte.ads: Change Linux to GNU/Linux.
67f28219 12028
5d1a9698 12029 * 5qparame.ads: Change Linux to GNU/Linux.
67f28219 12030
5d1a9698 12031 * 5qtaprop.adb: Change Linux to GNU/Linux.
67f28219 12032
5d1a9698
GB
12033 * 5qtaspri.ads: Change Linux to GNU/Linux.
12034 Add 2001 to copyright notice.
67f28219 12035
5d1a9698
GB
12036 * 5vintman.ads: Change Linux to GNU/Linux.
12037 Fix header format. Add 2001 to copyright notice.
67f28219 12038
5d1a9698 12039 * g-soccon.ads: Change Linux to GNU/Linux.
67f28219 12040
5d1a9698
GB
12041 * g-trasym.ads: Change Linux to GNU/Linux.
12042 Add 2001 to copyright notice.
67f28219 12043
5d1a9698 12044 * memtrack.adb: Change Linux to GNU/Linux.
67f28219 12045
5d1a9698
GB
12046 * s-intman.ads: Change Linux to GNU/Linux.
12047 Add 2001 to copyright notice. Fix header format.
67f28219 12048
5d1a9698 12049 * s-stache.adb: Change Linux to GNU/Linux.
67f28219 12050
5d1a9698 12051 * adaint.c: Change Linux to GNU/Linux.
67f28219 12052
5d1a9698 12053 * cio.c: Change Linux to GNU/Linux.
67f28219 12054
5d1a9698 12055 * cstreams.c: Change Linux to GNU/Linux.
67f28219 12056
5d1a9698 12057 * init.c: Change Linux to GNU/Linux.
67f28219 12058
5d1a9698 12059 * gmem.c: Change Linux to GNU/Linux.
67f28219 12060
5d1a9698
GB
12061 * tracebak.c: Change Linux to GNU/Linux.
12062
12063
c25ca2d7
GB
120642001-10-02 Geert Bosch <bosch@gnat.com>
12065
12066 * misc.c (insert_default_attributes): Add dummy version.