cf3b44bb4a9097aa589c8267cfb0bb25d957352f
[gcc.git] / gcc / ada / ChangeLog
1 2001-12-03 Robert Dewar <dewar@gnat.com>
2
3 * sinfo.ads: Minor reformatting. N_Freeze_Entity node does not
4 have Associated_Node.
5
6 2001-12-03 Robert Dewar <dewar@gnat.com>
7
8 * prj-proc.adb: Minor reformatting
9
10 * make.adb: Minor reformatting
11
12 2001-12-03 Geert Bosch <bosch@gnat.com>
13
14 * make.adb: Minor reformatting.
15
16 2001-12-03 <dewar@gnat.com>
17
18 * sem_ch12.adb: Minor reformatting
19
20 2001-12-03 Ed Schonberg <schonber@gnat.com>
21
22 * sem_ch12.adb (Inline_Instance_Body): Use Save_Scope_Stack and
23 push Standard on the stack before analyzing the instance body,
24 in order to have a clean visibility environment.
25
26 * sem_ch12.adb (Inline_Instance_Body): Remove redundant code.
27
28 2001-12-03 Ed Schonberg <schonber@gnat.com>
29
30 * sem_ch12.adb (Instantiate_Package_Body): Protect against double
31 instantiation of a body that contains an inlined body.
32
33 2001-12-03 Ed Schonberg <schonber@gnat.com>
34
35 * sem_ch12.adb:
36 (Analyze_generic_subprogram_Declaration): Set outer_generic_scope,
37 to prevent freezing within formal packages.
38 (Freeze_Subprogram_Body): If body comes from another instance that
39 appeared before its own body, place freeze node at end of current
40 declarative part, to prevent a back-end crash.
41 (Inline_Instance_Body): Handle properly a package instance within
42 a subprogram instance that is a child unit.
43
44 2001-12-01 Graham Stott <grahams@redhat.com>
45
46 * Makefile.in (misc.o): Add missing $(srcdir) prefix
47 and add optabs.h dependency.
48
49 * misc.c: Include optabs.h
50 (gnat_tree_code_type): Make static and const.
51 (gnat_tree_code_length): Likewise.
52 (gnat_tree_code_name): Likewise.
53 (update_setjmp_buf): Obtain operands mode from insn_data.
54
55 2001-11-29 Richard Henderson <rth@redhat.com>
56
57 * init.c: Remove obsolete dwarf2 frame.h section.
58
59 2001-11-29 Joseph S. Myers <jsm28@cam.ac.uk>
60
61 * Make-lang.in (ada.generated-manpages): New dummy target.
62
63 2001-11-29 Ed Schonberg <schonber@gnat.com>
64
65 * g-os_lib.adb (Add_To_Command): use explicit loop to move string
66 into Command, an array conversion is illegal here. Uncovered by
67 ACATS B460005.
68
69 2001/11/28 Geert Bosch <bosch@gnat.com>
70
71 * init.c: Minor whitespace changes.
72
73 2001-11-28 Doug Rupp <rupp@gnat.com>
74
75 * init.c: (__gnat_install_handler,VMS): Increase size of alternate
76 signal stack.
77
78 2001-11-28 Zack Weinberg <zack@codesourcery.com>
79
80 * misc.c (gnat_expand_constant): Move declaration above
81 definition of lang_hooks.
82 (LANG_HOOKS_EXPAND_CONSTANT): Set to gnat_expand_constant.
83 (gnat_init): lang_expand_constant no longer exists.
84
85 (internal_error_function): Remove #ifdef HAVE_VPRINTF. We
86 always have vprintf.
87 (gnat_init): Always call set_internal_error_function.
88
89 2001-11-27 Andreas Jaeger <aj@suse.de>
90
91 * Makefile.in (stamp-tool_src_dir): Use symbolic link.
92
93 2001-11-27 Laurent Guerby <guerby@acm.org>
94
95 * Makefile.in: Regenerate Ada dependencies.
96
97 2001-11-26 Richard Henderson <rth@redhat.com>
98
99 * Make-lang.in (gnatbind, gnatmake, gnatbl, gnatchop, gnatcmd,
100 gnatlink, gnatkr, gnatls, gnatmem, gnatprep, gnatpsta, gnatpsys,
101 gnatxref, gnatfind, gnatlbr): Depend on CONFIG_H and prefix.o.
102
103 2001-11-25 Laurent Guerby <guerby@acm.org>
104
105 * sysdep.c (rts_get_*): Fix style.
106
107 2001-11-19 Laurent Guerby <guerby@acm.org>
108
109 * Makefile.in (INCLUDES_FOR_SUBDIR): Remove redundant system include
110 since it is of no apparent use and cause warnings.
111
112 2001-11-18 Neil Booth <neil@daikokuya.demon.co.uk>
113
114 * misc.c (gnat_decode_option, gnat_init_options): Make definitions
115 static too.
116 (gnat_init): Don't return NULL.
117 (finish_parse): Remove.
118
119 2001-11-17 Laurent Guerby <guerby@acm.org>
120
121 * Make-lang.in (GNATLIBFLAGS): Add -W -Wall.
122 * gigi.h (init_decl_processing): Rename to gnat_init_decl_processing.
123 * io-aux.c: Provide K&R prototypes to all functions, reformat code.
124 * lang-spec.h: Add missing struct field to silence warnings.
125 * sysdep.c (rts_get_*): Provide K&R prototype.
126 * sysdep.c (Unlock_Task, Lock_Task): Move to K&R prototype.
127 * traceback.c (Unlock_Task, Lock_Task): Likewise.
128 * tracebak.c (__gnat_backtrace): Remove unused variable.
129 * utils.c (end_subprog_body): Move to K&R style.
130
131 Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
132
133 * trans.c, utils2.c: Remove PALIGN parameter to get_inner_reference.
134
135 2001-11-15 Neil Booth <neil@daikokuya.demon.co.uk>
136
137 * misc.c (gnat_init): Change prototype. Include the
138 functionality of the old init_parse and init_decl_processing.
139 (gnat_init_decl_processing): New prototype.
140 (init_parse): Remove.
141 * utils.c (init_decl_processing): Rename gnat_init_decl_processing.
142
143 2001-11-09 Neil Booth <neil@daikokuya.demon.co.uk>
144
145 * misc.c (gnat_print_decl, gnat_print_type): Renamed.
146 (LANG_HOOKS_PRINT_DECL, LANG_HOOKS_PRINT_TYPE): Override.
147 (print_lang_statistics, lang_print_xnode, print_lang_identifier,
148 set_yydebug): Remove.
149
150 2001-11-09 Neil Booth <neil@daikokuya.demon.co.uk>
151
152 * misc.c (LANG_HOOKS_NAME, LANG_HOOKS_IDENTIFIER_SIZE): Override.
153 (struct lang_hooks): Constify.
154 (language_string, lang_identify): Remove.
155 * utils.c (init_decl_processing): Update.
156
157 2001-11-06 Neil Booth <neil@cat.daikokuya.demon.co.uk>
158
159 * misc.c: Include langhooks-def.h.
160 * Makefile.in: Update.
161
162 2001-10-30 Robert Dewar <dewar@gnat.com>
163
164 * style.adb:
165 (Check_Identifier): Rewrite circuit to be compatible with use of letters
166 in the upper half of ASCII.
167 (Check_Identifier): Minor reformatting
168
169 2001-10-30 Geert Bosch <bosch@gnat.com>
170
171 * (Associated_Node, Set_Associated_Node): Do not check for
172 Freeze_Entity.
173
174 2001-10-30 Robert Dewar <dewar@gnat.com>
175
176 * a-reatim.ads: Minor reformatting
177
178 2001-10-30 Robert Dewar <dewar@gnat.com>
179
180 * gnatdll.adb: Minor reformatting throughout. Many ??? added for
181 undocumented declarations.
182
183 2001-10-30 Pascal Obry <obry@gnat.com>
184
185 * gnatdll.adb (Parse_Command_Line): handle -g option to be passed
186 to the binder and linker.
187 Minor style fix.
188
189 * mdll.ads: Fix layout. Update copyright notice.
190
191 * mdll.adb: Fix layout. Update copyright notice.
192
193 2001-10-30 Robert Dewar <dewar@gnat.com>
194
195 * usage.adb: Minor fix to output for -gnaty.
196
197 2001-10-30 Ed Schonberg <schonber@gnat.com>
198
199 * a-reatim.ads: Makes Seconds_Count into a 64-bit integer,
200 to accommodate all its possible values.
201
202 * a-reatim.adb (Split): Special-case handling of Time_Span_First
203 and of small absolute values of T.
204
205 2001-10-30 Richard Kenner <kenner@gnat.com>
206
207 * misc.c (gnat_expand_expr, case NULL_EXPR): Remove call to
208 set_mem_attributes since not needed and wrong if RESULT if a REG;
209 fixes ACATS failures.
210
211 2001-10-30 Geert Bosch <bosch@gnat.com>
212
213 * 86numaux.adb, a-tigeau.ads, a-wtgeau.ads, fname-sf.ads, g-traceb.ads,
214 s-tasdeb.ads, sem_maps.ads: Add 2001 to copyright notice.
215
216 2001-10-30 Robert Dewar <dewar@gnat.com>
217
218 * bindusg.adb: Undocument -f switch.
219
220 * gnatcmd.adb: Remove /FULL_ELABORATION.
221
222 * opt.ads (Force_RM_Elaboration_Order): Document that this is
223 obsolescent.
224
225 * gnatbind.adb: Output new warning for use of obsolescent -f switch.
226
227 * gnatbind.adb: Minor update of warning msg.
228
229 2001-10-30 Vincent Celier <celier@gnat.com>
230
231 * gnatcmd.adb (MAKE, BIND, LINK, LIST, FIND, XREF): Add translations
232 for project file switches (-P (/PROJECT_FILE=),
233 -X (/EXTERNAL_REFERENCE=) and -vPx (/PROJECT_FILE_VERBOSITY=DEFAULT
234 or MEDIUM or HIGH)
235
236 2001-10-30 Geert Bosch <bosch@gnat.com>
237
238 * decl.c: Minor whitespace fixes.
239
240 2001-10-30 Richard Kenner <kenner@gnat.com>
241
242 * utils2.c (build_allocator): Test for SIZE overflow in array case too
243
244 2001-10-30 Geert Bosch <bosch@gnat.com>
245
246 * ali-util.adb (Initialize_Checksum): Use out-mode instead of in out.
247 Found due to GCC 3.0 warning of using uninitialized value.
248
249 * layout.adb:
250 (Get_Max_Size): Use variant record for tracking value/expression.
251 Makes logic clearer and prevents warnings for uninitialized variables.
252 (Layout_Array_Type): Use variant record for tracking value/expression.
253 Makes logic clearer and prevents warnings for uninitialized variables.
254
255 2001-10-30 Robert Dewar <dewar@gnat.com>
256
257 * lib.adb: Minor reformatting
258
259 * s-taprop.ads: Minor reformatting
260
261 2001-10-29 Laurent Guerby <guerby@acm.org>
262
263 * init.c:
264 (Raise_From_Signal_Handler, Propagate_Signal_Exception): Make arg
265 const.
266 (_gnat_error_handler): Make MSG const.
267
268 2001-10-29 Richard Kenner <kenner@gnat.com>
269
270 * sysdep.c: Fix localtime_r problem on LynxOS.
271 Also remove #elif to avoid warnings.
272
273 * misc.c (yyparse): Don't set up and register jmpbuf; remove decls
274 used by this.
275
276 * decl.c (annotate_value): Make SIZE unsigned to avoid warning.
277
278 2001-10-28 Joseph S. Myers <jsm28@cam.ac.uk>
279
280 * 86numaux.adb, a-tigeau.ads, a-wtgeau.ads, decl.c, exp_ch6.adb,
281 exp_ch9.adb, exp_util.adb, fname-sf.ads, freeze.ads, g-awk.adb,
282 g-comlin.ads, g-dirope.adb, g-dyntab.ads, g-socket.ads,
283 g-table.ads, g-traceb.ads, gnat-style.texi, gnatchop.adb, init.c,
284 layout.adb, layout.ads, mdllfile.ads, mlib-fil.ads, osint.ads,
285 s-fatgen.adb, s-imgrea.adb, s-taprop.ads, s-tasdeb.ads,
286 sem_aggr.adb, sem_attr.adb, sem_case.ads, sem_ch13.adb,
287 sem_ch3.adb, sem_elab.adb, sem_maps.ads, sem_res.adb,
288 sem_util.ads, sinfo.ads, sinput.ads, table.adb, table.ads,
289 types.ads, urealp.adb: Fix spelling errors.
290
291 2001-10-27 Laurent Guerby <guerby@acm.org>
292
293 * trans.c (gigi): Fix non determinism leading to bootstrap
294 comparison failures for debugging information.
295
296 2001-10-26 Florian Weimer <fw@deneb.enyo.de>
297
298 * gnat_rm.texi: Use @./@: where appropriate.
299
300 2001-10-26 Robert Dewar <dewar@gnat.com>
301
302 * sinfo.adb: Define Associated_Node to overlap Entity field. Cleanup.
303
304 2001-10-26 Richard Kenner <kenner@gnat.com>
305
306 * gmem.c (__gnat_gmem_read_next): Properly check for EOF
307
308 2001-10-26 Richard Kenner <kenner@gnat.com>
309
310 * decl.c (validate_size): Modify message for bad size to avoid
311 implication that compiler is modifying the size.
312
313 2001-10-26 Robert Dewar <dewar@gnat.com>
314
315 * prj-util.adb: Minor reformatting. Fix bad header format.
316
317 2001-10-26 Robert Dewar <dewar@gnat.com>
318
319 * sinfo.ads: Define Associated_Node to overlap Entity field. Cleanup.
320
321 * sinfo.ads: Clarify use of Associated_Node (documentation only).
322
323 * sem_ch12.adb: Change Node4 to Associated_Node. Change
324 Associated_Node to Get_Associated_Node. Put use of Unchecked_Access
325 much more narrowly in places where needed. These are cleanups.
326
327 2001-10-26 Joel Brobecker <brobecke@gnat.com>
328
329 * 5zosinte.ads (null_pthread): new constant.
330
331 * 5ztaprop.adb:
332 (Initialize_TCB): Initialize thread ID to null, to be able to verify
333 later that this field has been set.
334 (Finalize_TCB): ditto.
335 (Suspend_Task): Verify that the thread ID is not null before using it.
336 (Resume_Task): ditto.
337
338 * s-tasdeb.adb:
339 (Resume_All_Tasks): Lock the tasks list before using it.
340 (Suspend_All_Tasks): ditto.
341
342 2001-10-26 Richard Kenner <kenner@gnat.com>
343
344 * decl.c (gnat_to_gnu_entity, case E_General_Access_Type):
345 Make constant variant of designated type for Is_Access_Constant.
346 Call update_pointer_to with main variant.
347
348 * trans.c (process_freeze_entity, process_type):
349 Call update_pointer_to on main variant.
350
351 * utils.c (update_pointer_to): Make corresponding variant for NEW_TYPE.
352 If main variant, update all other variants.
353
354 * utils2.c (build_unary_op, case INDIRECT_REF): No longer set
355 TREE_STATIC.
356
357 2001-10-26 Robert Dewar <dewar@gnat.com>
358
359 * prj-util.adb: Minor reformatting
360
361 2001-10-26 Robert Dewar <dewar@gnat.com>
362
363 * prj-util.adb: Minor reformatting
364
365 2001-10-26 Robert Dewar <dewar@gnat.com>
366
367 * prj-attr.adb: Minor reformatting throughout
368
369 2001-10-26 Robert Dewar <dewar@gnat.com>
370
371 * prj-attr.ads: Minor reformatting
372 Add ??? comment (this whole spec has almost no comments)
373
374 2001-10-26 Vincent Celier <celier@gnat.com>
375
376 * g-os_lib.adb (Normalize_Pathname): Preserve the double slash
377 ("//") that precede the drive letter on Interix.
378
379 2001-10-26 Geert Bosch <bosch@gnat.com>
380
381 * gnat_rm.texi: Add GNAT Reference Manual.
382
383 2001-10-25 Robert Dewar <dewar@gnat.com>
384
385 * sem_ch8.adb (Analyze_Package_Renaming): Skip analysis if Name
386 is Error. Similar change for other renaming cases.
387
388 2001-10-25 Robert Dewar <dewar@gnat.com>
389
390 * s-atacco.ads: Add pragma Inline_Always for functions.
391 Fix header format. Add copyright 2001
392
393 2001-10-25 Ed Schonberg <schonber@gnat.com>
394
395 * par-ch3.adb (P_Subtype_Mark_Resync): for an anonymous array
396 return Error rather than Empty so that analysis can proceed.
397
398 2001-10-25 Ed Schonberg <schonber@gnat.com>
399
400 * sem_util.adb (Enter_Name): better handling of cascaded error
401 messages when a unit appears in its own context.
402
403 2001-10-25 Ed Schonberg <schonber@gnat.com>
404
405 * sem_util.adb (Defining_Entity): in case of error, attach created
406 entity to specification, so that semantic analysis can proceed.
407
408 2001-10-25 Robert Dewar <dewar@gnat.com>
409
410 * sem_util.adb
411 (Defining_Entity): Deal with Error.
412 (Process_End_Label): Deal with bad end label for.
413
414 2001-10-25 Ed Schonberg <schonber@gnat.com>
415
416 * sem_elab.adb (Check_A_Call): refine message when call is in an
417 instance but callee is not declared in the generic unit.
418
419 2001-10-25 Ed Schonberg <schonber@gnat.com>
420
421 * sem_elab.adb (Check_A_Call): check for renaming before finding the
422 enclosing unit, which may already be different from the calling unit.
423
424 2001-10-25 Geert Bosch <bosch@gnat.com>
425
426 * 4gintnam.ads: fix header format.
427
428 2001-10-25 Ed Schonberg <schonber@gnat.com>
429
430 * sem_res.adb (Resolve_Call): if the call is actually an indexing
431 operation on the result of a parameterless call, perform elaboration
432 check after the node has been properly rewritten.
433
434 * sem_ch12.adb (Copy_Generic_Node): after the proper body has been
435 inlined within the generic tree, the defining identifier is not a
436 compilation_unit.
437
438 2001-10-25 Ed Schonberg <schonber@gnat.com>
439
440 * sem_res.adb (Resolve): special-case resolution of Null in an
441 instance or an inlined body to avoid view conflicts.
442
443 * sem_ch12.adb (Copy_Generic_Node): for allocators, check for view
444 compatibility by retrieving the access type of the generic copy.
445
446 2001-10-25 Robert Dewar <dewar@gnat.com>
447
448 * sem_ch3.adb:
449 (Analyze_Number_Declaration): Handle error expression.
450 (Signed_Integer_Type_Declaration): Handle error bound.
451 (Analyze_Subtype_Indication): Handle error range.
452
453 * sem_util.adb (Get_Index_Bounds): Check for Error.
454
455 2001-10-25 Robert Dewar <dewar@gnat.com>
456
457 * restrict.adb (Set_No_Run_Time_Mode): Set Discard_Names as default
458 in no run time mode.
459
460 2001-10-25 Pascal Obry <obry@gnat.com>
461
462 * gnatmem.adb (Read_Next): fix Curs2 value to properly handle quiet
463 mode case for ALLOC case.
464
465 * gnatmem.adb (Read_Next): correctly fix parsing in Quiet mode on
466 all platforms. Improvement of last change.
467
468 2001-10-25 Robert Dewar <dewar@gnat.com>
469
470 * exp_ch4.adb (Expand_N_Allocator): Minor reformatting.
471
472 2001-10-25 Geert Bosch <bosch@gnat.com>
473
474 * osint.adb (Is_Relative): Remove duplicate.
475
476 2001-10-25 Pascal Obry <obry@gnat.com>
477
478 * osint.adb (Read_Default_Search_Dirs): correctly detect relative
479 pathnames in UNIX and DOS style with drive letter.
480 (Is_Relative): new routine.
481
482 * osint.adb: Minor reformatting
483
484 * osint.adb (Is_Relative): implementation using
485 GNAT.OS_Lib.Is_Absolute_Path. Better fix.
486
487 2001-10-25 Pascal Obry <obry@gnat.com>
488
489 * g-dirope.adb (Basename): correctly compute offset between the
490 original Path and the translated one.
491
492 * g-dirope.adb: (Base_Name): add some comments.
493
494 2001-10-25 Robert Dewar <dewar@gnat.com>
495
496 * exp_imgv.adb (Expand_Image_Attribute): Defend against bad use
497 in HIE mode, avoids compilation abandoned message
498
499 * exp_imgv.adb: Correct typo in previous change
500
501 * exp_imgv.adb: Correct typo in previous change (not my day!)
502
503 2001-10-25 Robert Dewar <dewar@gnat.com>
504
505 * s-tpinop.ads: Add 2001 to copyright notice. Fix header format.
506
507 2001-10-25 Pascal Obry <obry@gnat.com>
508
509 * g-awk.ads: Move all pragma inlines next to the routine
510 declarations. This is more uniform with other GNAT spec.
511
512 2001-10-22 Geert Bosch <bosch@gnat.com>
513
514 * Make-lang.in (gnattools, cross-gnattools): Remove gnatmem.
515
516 2001-10-19 Geert Bosch <bosch@gnat.com>
517
518 * Makefile.in (tools, gnattools): Remove gnatmem.
519
520 2001-10-17 Richard Henderson <rth@redhat.com>
521
522 * Makefile.in (misc.o): Depend on langhooks.h.
523 * misc.c: Include it.
524 (LANG_HOOKS_INIT, LANG_HOOKS_INIT_OPTIONS): New.
525 (LANG_HOOKS_DECODE_OPTION): New.
526 (lang_hooks): Use LANG_HOOKS_INITIALIZER.
527
528 2001-10-16 Florian Weimer <fw@deneb.enyo.de>
529
530 * trans.c (tree_transform): Adjust to recent change in
531 expand_asm_operands to implement named asm operands.
532
533 2001-10-11 Ed Schonberg <schonber@gnat.com>
534
535 * exp_ch8.adb (Expand_N_Object_Renaming_Declaration): Bugfix in
536 renaming of discriminant for mutable record type.
537
538 2001-10-11 Robert Dewar <dewar@gnat.com>
539
540 * validsw.adb: Properly save -gnatVn status.
541
542 2001-10-11 Robert Dewar <dewar@gnat.com>
543
544 * usage.adb: Add lines for V switch.
545
546 * gnatcmd.adb (COMPILE): Revise translations for -gnatV
547 (/VALIDITY_CHECKING).
548
549 2001-10-11 Ed Schonberg <schonber@gnat.com>
550
551 * sem_type.adb (Add_One_Interp): an operator for a type declared in
552 an extension of System is known to be visible.
553
554 2001-10-11 Ed Schonberg <schonber@gnat.com>
555
556 * sem_eval.adb (Compare_Fixup): get the bounds of a String_Literal
557 properly. Fixes regression on ACATS C34005G.
558
559 2001-10-11 Robert Dewar <dewar@gnat.com>
560
561 * sem_ch5.adb (Analyze_Iteration_Scheme): Suppress warning on null
562 loop in generic instance, since this is likely not very useful.
563
564 2001-10-11 Robert Dewar <dewar@gnat.com>
565
566 * restrict.adb (Disallow in No_Run_Time_Mode): Properly specialize
567 the error message for high integrity mode.
568
569 * rtsfind.adb (RTE): Give message if we try to find an entity that
570 is not available in high integrity mode.
571
572 * rtsfind.ads:
573 (OK_To_Use_In_HIE_Mode): New array.
574 (RTE): May return Empty in high integrity mode.
575
576 * rtsfind.ads (OK_To_Use_In_No_Run_Time_Mode): New name for
577 OK_To_Use_In_HIE_Mode, now includes System_FAT_xxx.
578
579 * sem_ch6.adb (Analyze_Subprogram_Body): Kill body in predefined
580 unit if not inlined always and in no runtime mode. Fixes problem
581 caused by new Rtsfind changes.
582
583 * sem_ch6.adb (Analyze_Subrogram_Body): Do not Check_References if
584 body is deleted.
585
586 * rtsfind.adb (RTE): Make sure we do not try to load unit after
587 giving message for entity not available in high integrity mode.
588
589 2001-10-11 Pascal Obry <obry@gnat.com>
590
591 * impunit.adb: Add GNAT.CRC32.
592
593 2001-10-11 Ed Schonberg <schonber@gnat.com>
594
595 * exp_fixd.adb (Expand_Multiply_Fixed_By_Fixed_Giving_Fixed): handle
596 properly the case where one universal operand in a non-static
597 exponentiation of a real literal.
598
599 2001-10-11 Ed Schonberg <schonber@gnat.com>
600
601 * exp_ch7.adb (Find_Final_List): for a type appearing in a with_type
602 clause, return the gobal finalization list, for lack of anthing else.
603
604 2001-10-11 Ed Schonberg <schonber@gnat.com>
605
606 * exp_ch7.adb (Make_Transient_Block): if statement is within
607 exception handler, always use new transient scope to place Clean
608 procedure.
609
610 2001-10-11 Pascal Obry <obry@gnat.com>
611
612 * Makefile.in:
613 (GNAT_ADA_OBJS): add g-crc32.o, a-tags.o, a-stream.o
614 (GNATBIND_OBJS): add g-crc32.o, a-tags.o, a-stream.o
615 (GNATLS_RTL_OBJS): add g-crc32.o
616 (GNATMAKE_RTL_OBJS): add g-crc32.o
617
618 * ali-util.adb:
619 (CRC_Match): new function.
620 (Get_File_Checksum): renamed Get_File_CRC. Use the GNAT.CRC32 unit
621 instead of the previous simple checksum algorithm.
622 (Time_Stamp_Mismatch): use CRC_Match for comparison.
623 (Set_Source_Table): idem.
624
625 * ali-util.ads:
626 (Get_File_Checksum): renamed Get_File_CRC as now we compute CRC
627 instead of simple checksum.
628 (CRC_Match): new function.
629 (CRC_Error): new constant.
630
631 * ali.adb (Scan_ALI): rename variable Chk to CRC as we are handling
632 a CRC now and not a simple checksum. A CRC uses lower-case hex
633 letters, fixes ambiguity in parsing.
634
635 * ali.ads (Sdep_Record.Checksum): renamed Sdep_Record.CRC as this
636 is what this variable will store.
637
638 * bcheck.adb: Change reference to chechsum in comments by CRC.
639 (Check_Consistency): Rename Get_File_Checksum to Get_File_CRC.
640 rename All_Checksum_Match to All_CRC_Match. Change due to API
641 renaming since now GNAT does not use a simple checksum but a
642 CRC using GNAT.CRC32.
643
644 * gnatls.adb: Rename Checksum to CRC in many places, we use a CRC
645 now and not anymore a simple checksum.
646
647 * lib-load.adb: Use Source_CRC instead of Source_Checksum in many
648 places.
649
650 * lib-writ.adb (Write_ALI): Use Source_CRC instead of Source_Checksum.
651
652 * scans.adb:
653 (Restore_Scan_State): rename Checksum to CRC.
654 (Save_Scan_State): idem.
655
656 * scans.ads:
657 With GNAT.CRC32.
658 (Checksum): rename to CRC.
659 (Saved_Scan_State): Save_Checksum field renamed to Save_CRC
660
661 * scn-nlit.adb: Rename many Accumulate_Checksum to Update (from
662 GNAT.CRC32). Update copyright notice.
663
664 * scn-slit.adb: Rename many Accumulate_Checksum to Update (from
665 GNAT.CRC32). Update copyright notice.
666
667 * scn.adb:
668 (Accumulate_Checksum): removed.
669 (Update): new procedure. Add a wide-character into the CRC.
670
671 * sinput-l.adb:
672 (Complete_Source_File_Entry): use CRC32 instead of simple checksum.
673 (Load_File): fix initialization of S (change Source_Checksum to
674 Source_CRC)
675
676 * sinput-p.adb (Load_Project_File): rename Source_Checksum to
677 Source_CRC in S initialization.
678
679 * sinput.adb (Source_Checksum): renamed to Source_CRC.
680
681 * sinput.ads (Source_Checksum): renamed to Source_CRC.
682 Update comments for the CRC.
683
684 * types.adb (Hex): Use lowercase for the letter part.
685
686 * types.ads (Get_Hex_String): Returns the hexadecimal representation
687 for a word. This is currently used only for CRC. In previous version,
688 the checksum was using a representation with all letter being
689 upper-case. With the new implementation (using CRC) we do not remove
690 the 32th bit of the CRC, so we can have an upper-case starting letter
691 in the CRC. This is not possible to parse in Scan_ALI (ali.adb).
692 It is ambigous since the CRC was optional and could be followed by
693 options like EB, EE. So now this routines uses lower-case letter for
694 the hexadecimal representation. Strange enough only lower case letters
695 where checked in Scan_ALI (even if this was not a possible case).
696
697 * gnatvsn.ads (Library_Version): changed to 3.15a.
698
699 * s-crc32.ads: Initial version from GNAT.CRC32. This is the version
700 for the compiler.
701
702 * s-crc32.adb: Initial version from GNAT.CRC32. This is the version
703 for the compiler.
704
705 * ali-util.adb: Redo previous change to avoid using word CRC everywhere
706 Add 2001 to copyright notice
707 (Accumulate_Checksum): Modify to use System.CRC32.
708
709 * ali-util.ads: Redo changes of previous revision to continue to use
710 the word Checksum. Add 2001 to copyright notice.
711
712 * ali.adb: Undo some of previous changes, not needed.
713 Keep the change for lower case letters in the checksum.
714
715 * ali.ads: Undo previous change not needed.
716
717 * bcheck.adb: Undo most of previous change, not needed.
718 But do use Checksums_Match for checksum comparison.
719
720 * gnatls.adb: Undo most of previous change, not needed.
721 But do use Checksums_Match for comparing checksums.
722
723 * lib-load.adb: Undo previous change, not needed.
724
725 * lib-writ.adb: Undo previous change, not needed.
726
727 * lib-writ.ads: Document that checksums use lower case,
728 not upper case letters.
729
730 * scans.adb: Undo previous change, not needed
731
732 * scans.ads: Undo previous change, not needed.
733
734 * scn-nlit.adb: Undo previous changes, not needed.
735
736 * scn-slit.adb: Undo previous change, not needed. Fix header format.
737
738 * scn.adb:
739 (Accumulate_Checksum): Use System.CRC32.
740 (Initialize_Checksum): New procedure.
741 Remove other changes of previous revision.
742
743 * sinput-p.adb: Undo previous change, not needed.
744
745 * sinput.adb: Undo previous change, not needed.
746
747 * sinput-l.adb: Undo previous change, not needed.
748
749 * sinput.ads: Undo previous change, not needed. Keep only comment
750 on new checksum algorithm
751
752 * Makefile.in: Add s-crc32 as needed, remove g-crc32.
753 Also remove a-tags and a-stream from GNAT sources.
754
755 * ali.adb (Scan_ALI): fix typo introduce in latest check-in.
756
757 * Makefile.in (GNATRTL_NONTASKING_OBJS): Add g-crc32.o.
758
759 2001-10-11 Geert Bosch <bosch@gnat.com>
760
761 * einfo.h: Regenerate.
762
763 * nmake.ads: Regenerate.
764
765 * nmake.adb: Regenerate.
766
767 * sinfo.h: Regenerate.
768
769 * treeprs.adb: Regenerate.
770
771 2001-10-10 Geert Bosch <bosch@gnat.com>
772
773 * gnat-style.texi: New file describing coding guidelines for Ada.
774
775 2001-10-10 Ed Schonberg <schonber@gnat.com>
776
777 * einfo.adb (Write_Entity_Flags): Elaboration_Entity_Required
778 is Flag174.
779
780 2001-10-10 Geert Bosch <bosch@gnat.com>
781
782 * snames.ads: Add new names for project facility.
783
784 * snames.adb: Update to reflect snames.ads changes.
785
786 * snames.h: Update to reflect snames.ads changes.
787
788 2001-10-10 Vincent Celier <celier@gnat.com>
789
790 * make.adb:
791 (Add_Switches): reflect the changes for the switches attributes
792 Default_Switches indexed by the programming language,
793 Switches indexed by the file name.
794 (Collect_Arguments_And_Compile): Idem.
795 Reflect the attribute name changes.
796
797 * prj-attr.adb:
798 (Initialisation_Data): Change the names of some packages and
799 attributes.
800 (Initialize): process case insensitive associative arrays.
801
802 * prj-attr.ads:
803 (Attribute_Kind): Remove Both, add Case_Insensitive_Associative_Array.
804
805 * prj-dect.adb:
806 (Parse_Attribute_Declaration): For case insensitive associative
807 arrays, set the index string to lower case.
808
809 * prj-env.adb:
810 Reflect the changes of the project attributes.
811
812 * prj-nmsc.adb:
813 Replace Check_Naming_Scheme by Ada_Check and
814 Language_Independent_Check.
815
816 * prj-nmsc.ads:
817 Replaced Check_Naming_Scheme by 2 procedures:
818 Ada_Check and Language_Independent_Check.
819
820 * prj-proc.adb:
821 (Process_Declarative_Items): For case-insensitive associative
822 arrays, set the index string to lower case.
823 (Recursive_Check): Call Prj.Nmsc.Ada_Check, instead of
824 Prj.Nmsc.Check_Naming_Scheme.
825
826 * prj-tree.adb:
827 (Case_Insensitive): New function
828 (Set_Case_Insensitive): New procedure
829
830 * prj-tree.ads:
831 (Case_Insensitive): New function
832 (Set_Case_Insensitive): New procedure
833 (Project_Node_Record): New flag Case_Insensitive.
834
835 * prj-util.adb:
836 (Value_Of): new function to get the string value of a single
837 string variable or attribute.
838
839 * prj-util.ads:
840 (Value_Of): new function to get the string value of a single
841 string variable or attribute.
842
843 * prj.adb:
844 (Ada_Default_Spec_Suffix): New function
845 (Ada_Default_Impl_Suffix): New function
846 Change definitions of several constants to reflect
847 new components of record types.
848
849 * prj.ads:
850 (Naming_Data): Change several components to reflect new
851 elements of naming schemes.
852 (Project_Data): New flags Sources_Present and
853 Language_Independent_Checked.
854 (Ada_Default_Spec_Suffix): New function.
855 (Ada_Default_Impl_Suffix): New function.
856
857 * snames.ads:
858 Modification of predefined names for project manager: added
859 Implementation, Specification_Exceptions, Implementation_Exceptions,
860 Specification_Suffix, Implementation_Suffix, Separate_Suffix,
861 Default_Switches, _Languages, Builder, Cross_Reference,
862 Finder. Removed Body_Part, Specification_Append, Body_Append,
863 Separate_Append, Gnatmake, Gnatxref, Gnatfind, Gnatbind,
864 Gnatlink.
865
866 * prj.ads: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
867 Add comments.
868
869 * prj-nmsc.adb (Ada_Check): Test that Separate_Suffix is defaulted,
870 not that it is Nil_Variable_Value.
871
872 * prj.ads: Add ??? for uncommented declarations
873
874 2001-10-10 Ed Schonberg <schonber@gnat.com>
875
876 * sem_prag.adb: (Analyze_Pragma, case External): If entity is a
877 constant, do not indicate possible modification, so that gigi can
878 treat it as a bona fide constant.
879
880 2001-10-10 Robert Dewar <dewar@gnat.com>
881
882 * sem_prag.adb: Add processing for pragma External.
883
884 * snames.ads: Add entry for pragma External.
885
886 * par-prag.adb: Add pragma External.
887
888 * snames.adb: Updated to match snames.ads.
889
890 2001-10-10 Ed Schonberg <schonber@gnat.com>
891
892 * exp_ch4.adb (Expand_N_Allocator): Generate meaningful names for
893 a dynamic task if the allocator appears in an indexed assignment
894 or selected component assignment.
895
896 * exp_util.adb (Build_Task_Array_Image, Build_Task_Record_Image):
897 For a dynamic task in an assignment statement, use target of
898 assignment to generate meaningful name.
899
900 2001-10-10 Ed Schonberg <schonber@gnat.com>
901
902 * einfo.adb (Write_Field19_Name): Body_Entity is also defined for
903 a generic package.
904
905 * einfo.ads: Body_Entity is also defined for generic package.
906 Documentation change only
907
908 * exp_aggr.adb (Build_Array_Aggr_Code): When expanding an
909 others_choice for a discriminated component initialization,
910 convert discriminant references into the corresponding discriminals.
911
912 * exp_ch3.adb (Get_Simple_Init_Val): Add qualification to aggregate
913 only if original type is private and expression has to be wrapped
914 in a conversion.
915
916 * checks.adb:
917 (Apply_Constraint_Check): Do not perform length check
918 if expression is an aggregate with only an others_choice.
919 (Length_N_Cond): two references to the same in_parameter
920 (typically the discriminal in an init_proc) denote the same value.
921 Two useful optimization uncovered by bugfixes above.
922
923 2001-10-10 Robert Dewar <dewar@gnat.com>
924
925 * xeinfo.adb: Change int to char in translation of enumeration types.
926 This fixes a problem in the C representation of component alignment.
927 Add 2001 to copyright notice
928
929 2001-10-10 Richard Kenner <kenner@gnat.com>
930
931 * decl.c: (validate_size): Do check size of object of integral type
932 if it is a packed array type.
933
934 2001-10-10 Richard Kenner <kenner@gnat.com>
935
936 * decl.c: (gnat_to_gnu_entity, case object): Also materialize
937 VAR_DECL for constant if not Is_Public but -O0.
938
939 2001-10-10 Richard Kenner <kenner@gnat.com>
940
941 * misc.c (struct lang_hooks): Add new initializer to match GCC change.
942
943 2001-10-10 Geert Bosch <bosch@gnat.com>
944
945 * xnmake.adb (XNmake): Fix handling of -s/-b options. No longer
946 use '/' as switch character, allowing for absolute file names.
947
948 2001-10-09 Joseph S. Myers <jsm28@cam.ac.uk>
949
950 * 4gintnam.ads, Make-lang.in, Makefile.in, config-lang.in: Update
951 FSF address.
952
953 2001-10-08 Geert Bosch <bosch@gnat.com>
954
955 * Makefile.in (treeprs.ads, einfo.h, sinfo.h, nmake.adb, nmake.ads):
956 Automatically build utilities when files need to be regenerated.
957
958 2001-10-08 Geert Bosch <bosch@gnat.com>
959
960 * xsnames.adb: New utility for updating snames.ads and snames.adb
961
962 2001-10-08 Zack Weinberg <zack@codesourcery.com>
963
964 * Make-lang.in (ADAFLAGS): Add -W -Wall.
965 (ADA_FLAGS_TO_PASS): Set ADA_CFLAGS=$(CFLAGS) also.
966 (gnat1): Also depend on attribs.o.
967 (gnatlib, gnatlib-shared): Set CC and ADAC in recursive make.
968 * Makefile.in (X_ADAFLAGS, T_ADAFLAGS): New.
969 (ADAC): Set to @ADAC@ in stage1, $(CC) later.
970 (ADAFLAGS): Add -W -Wall.
971 (ALL_ADAFLAGS, MOST_ADAFLAGS): Add X_ADAFLAGS and T_ADAFLAGS;
972 take out CFLAGS.
973
974 (.adb.o, .ads.o, a-numaux.o, a-teioed.o, s-interr.o,
975 s-taskin.o, sdefault.o, s-tasdeb.o, s-vaflop.o, a-except.o,
976 s-assert.o, s-stalib.o, s-memory.o, memtrack.o, mlib-tgt.o):
977 Use $(ADAC), not $(CC), as compilation command.
978
979 (gnattools): Depend directly on tools to build, don't use
980 recursive make.
981 (gnatlib): Set ADA_CFLAGS=$(GNATLIBCFLAGS) in recursive make.
982
983 * einfo.h, sinfo.h: New files (autogenerated).
984
985 2001-10-08 Richard Henderson <rth@redhat.com>
986
987 * comperr.adb (Abort_In_Progress): New.
988 (Compiler_Abort): Use it to prevent recursion.
989
990 2001-10-08 Robert Dewar <dewar@gnat.com>
991
992 * atree.adb: Set Error_Posted in Error node, helps error recovery.
993
994 * par-endh.adb (Output_End_Expected): We should also not test
995 Error_Posted on the Error node, since now it is always set.
996
997 * cstand.adb (Create_Standard): Set Etype of Error to Any_Type
998 to help error recovery. Part of general work on 9407-004.
999
1000 * par.adb: Add ??? for misuse of error
1001
1002 * sem_res.adb:
1003 (Resolve): Defend against Error, fixes 9407-003.
1004 (Resolve_Discrete_Subtype_Indication): Defend against Error.
1005
1006 * sinfo.ads (N_Error): Now has Etype field (which will be set
1007 to Any_Type to help error recovery).
1008
1009 2001-10-08 Richard Kenner (kenner@gnat.com)
1010
1011 * misc.c (gnat_expand_expr, case UNCHECKED_CONVERT_EXPR):
1012 Consistently set MEM attributes from expression; fixes
1013 bootstrap failure on x86.
1014
1015 2001-10-08 Geert Bosch (bosch@gnat.com)
1016
1017 * 5oosinte.adb: Add 2001 to copyright notice.
1018
1019 2001-10-08 Geert Bosch (bosch@gnat.com)
1020
1021 * ceinfo.adb: Add utility for consistency checking of einfo.ad[bs].
1022
1023 * csinfo.adb: Add utility for consistency checking of sinfo.ad[bs].
1024
1025 2001-10-07 Joseph S. Myers <jsm28@cam.ac.uk>
1026
1027 * 5oosinte.adb: Fix spelling error of "separate" as "seperate".
1028
1029 2001-10-05 Geert Bosch (bosch@gnat.com)
1030
1031 * adaint.h: Small formatting fix.
1032
1033 2001-10-04 Geert Bosch <bosch@gnat.com>
1034
1035 * sysdep.c (__gnat_set_binary_mode, __gnat_set_text_mode):
1036 Arg is int, not FILE *, in dummy version of functions.
1037
1038 * adaint.h (__gnat_set_binary_mode, __gnat_set_text_mode):
1039 Arg is int, not FILE *.
1040
1041 2001-10-04 Geert Bosch <bosch@gnat.com>
1042
1043 * 3lsoccon.ads: Added file, missed with initial check ins.
1044
1045 * 4lintnam.ads: Fix header format.
1046 Change Linux to GNU/Linux.
1047
1048 * 5iosinte.adb: Change Linux to GNU/Linux.
1049
1050 * 5iosinte.ads: Change Linux to GNU/Linux.
1051
1052 * 5itaprop.adb: Change Linux to GNU/Linux.
1053
1054 * 5itaspri.ads: Change Linux to GNU/Linux.
1055 Update copyright notice.
1056
1057 * 5lintman.adb: Change Linux to GNU/Linux.
1058
1059 * 5lml-tgt.adb: Change Linux to GNU/Linux.
1060
1061 * 5losinte.ads: Change Linux to GNU/Linux.
1062
1063 * 5lsystem.ads: Change Linux to GNU/Linux.
1064
1065 * 5qosinte.adb: Change Linux to GNU/Linux.
1066
1067 * 5qosinte.ads: Change Linux to GNU/Linux.
1068
1069 * 5qparame.ads: Change Linux to GNU/Linux.
1070
1071 * 5qtaprop.adb: Change Linux to GNU/Linux.
1072
1073 * 5qtaspri.ads: Change Linux to GNU/Linux.
1074 Add 2001 to copyright notice.
1075
1076 * 5vintman.ads: Change Linux to GNU/Linux.
1077 Fix header format. Add 2001 to copyright notice.
1078
1079 * g-soccon.ads: Change Linux to GNU/Linux.
1080
1081 * g-trasym.ads: Change Linux to GNU/Linux.
1082 Add 2001 to copyright notice.
1083
1084 * memtrack.adb: Change Linux to GNU/Linux.
1085
1086 * s-intman.ads: Change Linux to GNU/Linux.
1087 Add 2001 to copyright notice. Fix header format.
1088
1089 * s-stache.adb: Change Linux to GNU/Linux.
1090
1091 * adaint.c: Change Linux to GNU/Linux.
1092
1093 * cio.c: Change Linux to GNU/Linux.
1094
1095 * cstreams.c: Change Linux to GNU/Linux.
1096
1097 * init.c: Change Linux to GNU/Linux.
1098
1099 * gmem.c: Change Linux to GNU/Linux.
1100
1101 * tracebak.c: Change Linux to GNU/Linux.
1102
1103
1104 2001-10-02 Geert Bosch <bosch@gnat.com>
1105
1106 * misc.c (insert_default_attributes): Add dummy version.