OSDN Git Service

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