OSDN Git Service

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