OSDN Git Service

4424fc425d607c882a3966ee37c8c28aba35de05
[pf3gnuchains/gcc-fork.git] / gcc / ada / ChangeLog
1 2001-12-11  Robert Dewar <dewar@gnat.com>
2
3         * lib-xref.adb (Output_Refs): Don't output type references outside 
4         the main unit if they are not otherwise referenced.
5         
6 2001-12-11  Ed Schonberg <schonber@gnat.com>
7
8         * sem_attr.adb (Analyze_attribute, case Address and Size): Simplify 
9         code and diagnose additional illegal uses
10         
11         * sem_util.adb (Is_Object_Reference): An indexed component is an 
12         object only if the prefix is.
13         
14 2001-12-11  Vincent Celier <celier@gnat.com>
15
16         * g-diopit.adb: Initial version.
17         
18         * g-diopit.ads: Initial version.
19         
20         * g-dirope.adb:
21         (Expand_Path): Avoid use of Unbounded_String
22         (Find, Wildcard_Iterator): Moved to child package Iteration
23         
24         * Makefile.in: Added g-diopit.o to GNATRTL_NONTASKING_OBJS
25         
26 2001-12-11  Richard Kenner <dewar@gnat.com>
27
28         * sem_attr.adb: Minor reformatting
29
30 2001-12-11  Ed Schonberg <schonber@gnat.com>
31
32         * sem_ch3.adb: Clarify some ???.
33         
34 2001-12-11  Robert Dewar <dewar@gnat.com>
35
36         * exp_util.adb (Must_Be_Aligned): Removed, replaced by 
37         Exp_Pakd.Known_Aligned_Enough
38         
39         * sem_ch13.adb (Check_Address_Alignment): Removed, extended 
40         version is moved to Exp_Ch13.
41
42 2001-12-11  Robert Dewar <dewar@gnat.com>
43
44         * einfo.ads: Minor reformatting
45         
46         * exp_ch5.adb: Add comment for previous.change
47         
48         * ali.adb: New interface for extended typeref stuff.
49         
50         * ali.ads: New interface for typeref stuff.
51         
52         * checks.adb (Apply_Alignment_Check): New procedure.
53         
54         * debug.adb: Add -gnatdM for modified ALI output
55         
56         * exp_pakd.adb (Known_Aligned_Enough): Replaces Known_Aligned_Enough.
57         
58         * lib-xref.adb: Extend generation of <..> notation to cover 
59         subtype/object types. Note that this is a complete rewrite, 
60         getting rid of the very nasty quadratic algorithm previously 
61         used for derived type output.
62         
63         * lib-xref.ads: Extend description of <..> notation to cover 
64         subtype/object types. Uses {..} for these other cases. 
65         Also use (..) for pointer types.
66         
67         * sem_util.adb (Check_Potentially_Blocking_Operation): Slight cleanup.
68         
69         * exp_pakd.adb: Minor reformatting.  Note that prevous RH should say: 
70         (Known_Aligned_Enough): Replaces Must_Be_Aligned.
71
72 2001-12-11  Vincent Celier <celier@gnat.com>
73
74         * gnatcmd.adb:
75         Changed /COMPILE_ONLY to /ACTIONS=COMPILE
76         Changed /BIND_ONLY to /ACTIONS=BIND
77         Changed /LINK_ONLY to /ACTIONS=LINK
78         
79 2001-12-11  Ed Schonberg  <schonber@gnat.com>
80
81         * sem_ch8.adb (Find_Selected_Component): improved search for a
82         candidate package in case of error.
83         
84         * sem_ch12.adb (Inline_Instance_Body): place head of use_clause
85         chain back on scope stack before reinstalling use clauses.
86         
87         * exp_ch5.adb (Expand_N_If_Statement): if Constant_Condition_Warnings
88         is enabled, do not kill the code for the condition, to preserve
89         warning.
90
91 2001-12-11  Robert Dewar <dewar@gnat.com>
92
93         * checks.adb (Insert_Valid_Check): Apply validity check to expression 
94         of conversion, not to result of conversion.
95
96 2001-12-11  Ed Schonberg <schonber@gnat.com>
97         
98         * sem_ch3.adb (Build_Derived_Record_Type): set Controlled flag 
99         before freezing parent. If the declarations are mutually recursive, 
100         an access to the current record type may be frozen before the 
101         derivation is complete.
102
103 2001-12-05  Vincent Celier <celier@gnat.com>
104
105         * gnatcmd.adb: (MAKE): Add new translations: -b /BIND_ONLY, 
106         -c /COMPILE_ONLY, -l /LINK_ONLY
107         
108         * opt.ads:
109         (Bind_Only): New Flag
110         (Link_Only): New flag
111         
112         * switch.adb (Scan_Make_Switches): Add processing for -b (Bind_Only) 
113         and -l (Link_Only)
114         
115         * makeusg.adb: Add new switches -b and -l. Update Copyright notice.
116         
117         * make.adb:
118         (Do_Compile_Step, Do_Bind_Step, Do_Link_Step): New flags.
119         (Gnatmake): Set the step flags. Only perform a step if the
120         corresponding step flag is True.
121         (Scan_Make_Arg): Reset the bind and link step flags when -u
122         or -gnatc has been specified.
123
124 2001-12-05  Ed Schonberg <schonber@gnat.com>
125
126         * sem_eval.adb (Eval_Concatenation): If left operand is a null string, 
127         get bounds from right operand.
128         
129         * sem_eval.adb: Minor reformatting
130         
131         * exp_util.adb (Make_Literal_Range): use bound of literal rather 
132         than Index'First, its lower bound may be different from 1.
133         
134         * exp_util.adb: Undo earlier change, fixes ACVC regressions C48009B 
135         and C48009J
136         
137 2001-12-05  Vincent Celier <celier@gnat.com>
138
139         * prj-nmsc.adb Minor reformatting
140         
141         * prj-nmsc.adb (Language_Independent_Check): Reset Library flag if 
142         set and libraries are not supported.
143         
144 2001-12-05  Ed Schonberg <schonber@gnat.com>
145
146         * sem_ch3.adb (Build_Derived_Private_Type): set Public status of 
147         private view explicitly, so the back-end can treat as a global 
148         when appropriate.
149
150 2001-12-05  Ed Schonberg <schonber@gnat.com>
151
152         * sem_ch12.adb (Instantiate_Package_Body): if instance is a compilation
153          unit, always replace instance node with new body, for ASIS use.
154
155 2001-12-05  Vincent Celier <celier@gnat.com>
156         
157         * prj-nmsc.adb (Language_Independent_Check): Issue a warning if 
158         libraries are not supported and both attributes Library_Name and 
159         Library_Dir are specified.
160         
161         * prj-proc.adb (Expression): Set location of Result to location of 
162         first term.
163         
164         * Makefile.in: Add mlib.o, mlib-fil.o, mlib-tgt and mlib-utl to GNATLS.
165         (prj-nmsc is now importing MLib.Tgt)
166         
167         * prj-proc.adb: Put the change indicated above that was forgotten.
168
169 2001-12-05  Robert Dewar <dewar@gnat.com>
170
171         * Makefile.in: Add dependencies for System.IO for GNAT.Regexp
172
173 2001-12-05  Ed Schonberg <schonber@gnat.com>
174
175         * sem_ch3.adb (Build_Derived_Concurrent_Type): If derivation imposes a
176         constraint, introduce explicit subtype declaration and derive from it.
177         
178         * sem_ch3.adb: Minor reformatting
179
180 2001-12-05  Robert Dewar <dewar@gnat.com>
181
182         * checks.adb (Determine_Range): Increase cache size for checks. 
183         Minor reformatting
184         
185         * exp_ch6.adb: Minor reformatting
186         (Expand_N_Subprogram_Body): Reset Is_Pure for any subprogram that has
187         a parameter whose root type is System.Address, since treating such
188         subprograms as pure in the code generator is almost surely a mistake
189         that will lead to unexpected results.
190         
191         * exp_util.adb (Remove_Side_Effects): Clean up old ??? comment and 
192         change handling of conversions.
193         
194         * g-regexp.adb: Use System.IO instead of Ada.Text_IO.
195
196 2001-12-05  Ed Schonberg <schonber@gnat.com>
197
198         * sem_ch3.adb (Analyze_Object_Declaration): If expression is an 
199         aggregate with static wrong size, attach generated Raise node to 
200         declaration.
201
202 2001-12-05  Robert Dewar <dewar@gnat.com>
203
204         * sem_attr.adb (Analyze_Attribute): Defend against bad Val attribute. 
205         Fixes compilation abandoned bomb in B24009B.
206
207 2001-12-05  Ed Schonberg <schonber@gnat.com>
208
209         * sem_ch12.adb:
210         Document use of Associated_Node on Selected_Components.
211         (Save_Global_Operand_Descendants): Change to Save_Entity_Descendants,
212         to clarify use of untyped descendant fields.
213
214 2001-12-05  Robert Dewar <dewar@gnat.com>
215
216         * prj-dect.ads: Add ??? comment
217         Add 2001 to copyright notice (was not done in after all)
218         
219         * prj-part.adb: Minor reformatting. Reword one awkward error message.
220         
221         * prj.ads: Minor reformatting throughout, and add some ??? comments
222         
223         * snames.ads: Minor reformatting
224
225 2001-12-05  Geert Bosch <bosch@gnat.com>
226
227         * snames.adb: Autoupdate
228
229 2001-12-05  Vincent Celier <celier@gnat.com>
230
231         * prj-dect.adb (Parse): Rename parameter Modifying to Extends.
232         
233         * prj-dect.ads (Parse): Rename parameter Modifying to Extends.
234         
235         * prj-env.adb: Minor comment changes (modifying -> extends).
236         
237         * prj-nmsc.adb: Minor comment changes (modifying -> extends).
238         
239         * prj-part.adb (Parse_Single_Project): Change Tok_Modifying to 
240         Tok_Extends.
241         
242         * prj.adb (Initialize): Change Modifying to Extends.
243         
244         * scans.ads (Token_Type): Change Tok_Modifying to Tok_Extends.
245         
246         * prj.ads: Minor comment change (Modifying -> extending).
247         
248         * snames.ads: Change modifying to extends.
249
250 2001-12-05  Robert Dewar <dewar@gnat.com>
251
252         * sem_warn.adb: Remove stuff for conditionals, we are not going to 
253         do this after all.
254         
255         * sem_warn.ads: Remove stuff for conditionals, we are not going to 
256         do this after all.  Add 2001 to copyright notice
257
258 2001-12-04  Geert Bosch <bosch@gnat.com>
259
260         *  einfo.h, sinfo.h, treeprs.ads: Regenerate.
261
262 2001-12-04  Robert Dewar <dewar@gnat.com>
263
264         * errout.adb (Error_Msg): Ignore attempt to put error msg at junk 
265         location if we already have errors. Stops some cases of cascaded 
266         errors.
267         
268         * errout.adb: Improve comment.
269
270 2001-12-04  Robert Dewar <dewar@gnat.com>
271
272         * sem_ch12.adb:
273         (Analyze_Formal_Type_Definition): Defend against Error.
274         (Analyze_Formal_Subprogram): Defend against Error.
275         
276         * par-ch12.adb (F_Formal_Type_Declaration): In case of error, 
277         remove following semicolon if present. Removes cascaded error.
278
279 2001-12-04  Douglas B. Rupp <rupp@gnat.com>
280
281         * bindgen.adb:
282         (Gen_Exception_Table_Ada): Write "begin" and then return if Num
283          exceptions equals 0.
284         (Gen_Exception_Table_C): Return if Num exceptions equals 0.
285         Fixes PIWG E tests (which have to be run with -gnatL).
286
287 2001-12-04  Robert Dewar <dewar@gnat.com>
288
289         * einfo.ads: Minor reformatting
290
291 2001-12-04  Ed Schonberg <schonber@gnat.com>
292
293         * einfo.ads: Block_Node points to the identifier of the block, not to 
294         the block node itself, to preserve the link when the block is 
295         rewritten, e.g. within an if-statement with a static condition. 
296         
297         * inline.adb (Cleanup_Scopes): recover block statement from block 
298         entity using new meaning of Block_Node.
299         
300         * sem_ch5.adb (Analyze_Block_Statement): set Block_Node to point to 
301         identifier of block node, rather than to node itself.
302
303 2001-12-04  Gary Dismukes <dismukes@gnat.com>
304         
305         * layout.adb:
306         (Get_Max_Size): Fix "start of processing" comment to say Get_Max_Size.
307         (Discrimify): Go back to setting the Etypes of the selected component
308         because the Vname component does not exist at this point and will 
309         fail name resolution. Also set Analyzed.
310         Remove with and use of Sem_Res.
311
312 2001-12-04  Arnaud Charlet <charlet@gnat.com>
313
314         * Makefile.in: (HIE_SOURCES): add s-fat*.
315
316 2001-12-04  Robert Dewar <dewar@gnat.com>
317
318         * sem_attr.adb:
319         (Compile_Time_Known_Attribute): New procedure.
320         (Eval_Attribute, case Size): Use Compile_Time_Known_Attribute to ensure
321          proper range check.
322
323 2001-12-04  Ed Schonberg <schonber@gnat.com>
324
325         * sem_ch7.adb (New_Private_Type): Set Is_Tagged_Type flag before 
326         processing discriminants to diagnose illegal default values.
327
328 2001-12-04  Ed Schonberg <schonber@gnat.com>
329
330         * sem_attr.adb (Resolve_Attribute): Handle properly an non-classwide 
331         access discriminant within a type extension that constrains its 
332         parent discriminants.
333
334 2001-12-04  Ed Schonberg <schonber@gnat.com>
335
336         * sem_ch3.adb (Find_Type_Of_Subtype_Indic): If subtype indication 
337         is malformed, use instance of Any_Id to allow analysis to proceed.
338         
339         * par-ch12.adb (P_Formal_Type_Declaration): Propagate Error if 
340         type definition is illegal.
341         (P_Formal_Derived_Type_Definition): Better recovery when TAGGED is
342         misplaced.
343
344 2001-12-04  Ed Schonberg <schonber@gnat.com>
345
346         * sem_warn.adb (Output_Unreferenced_Messages): Extend previous fix to 
347         constants.
348
349 2001-12-04  Robert Dewar <dewar@gnat.com>
350
351         * errout.adb: Minor reformatting
352
353 2001-12-04  Robert Dewar <dewar@gnat.com>
354
355         * exp_util.adb: Minor reformatting from last change
356         
357         * errout.adb (Check_For_Warning): For a Raised_Constraint_Error node 
358         which is a rewriting of an expression, traverse the original 
359         expression to remove warnings that may have been posted on it.
360
361 2001-12-04  Ed Schonberg <schonber@gnat.com>
362
363         * exp_util.adb (Must_Be_Aligned): Return false for a component of a 
364         record that has other packed components.
365
366 2001-12-04  Douglass B. Rupp <rupp@gnat.com>
367
368         * adaint.c: Minor cleanups.
369
370 2001-12-04  Douglass B. Rupp <rupp@gnat.com>
371
372         * adaint.c: Do not use utime.h on vxworks.
373
374 2001-12-04  Arnaud Charlet <charlet@gnat.com>
375
376         * Makefile.adalib: Clarify step 3 (use of gnat.adc) as it causes 
377         more confusion than it solves.
378
379 2001-12-04  Geert bosch <bosch@gnat.com>
380
381         * einfo.h, nmake.adb, nmake.ads, sinfo.h treeprs.ads: Regenerate.
382
383 2001-12-04  Geert Bosch  <bosch@gnat.com>
384
385         * Makefile.in (update-sources): New target. 
386         For use by gcc_release script.
387
388 2001-12-04  Ed Schonberg <schonber@gnat.com>
389
390         * sem_prag.adb (Analyze_Pragma, case Validity_Checks): do not treat as 
391         a configuration pragma, it is now legal wherever a pragma can appear.
392
393 2001-12-04  Zack Weinberg  <zack@codesourcery.com>
394
395         * Makefile.in: Don't set ALL.  Delete @cross_defines@,
396         @cross_overrides@, @build_overrides@ stanzas.  INTERNAL_CFLAGS
397         is now @CROSS@ -DIN_GCC; update comment.
398
399 2001-12-04  Robert Dewar <dewar@gnat.com>
400
401         * einfo.adb (Has_Pragma_Pure_Function): New flag.
402         Fix problem that stopped ceinfo from working
403         
404         * einfo.ads (Has_Pragma_Pure_Function): New flag.
405         
406         * sem_prag.adb (Pure_Function): Set new flag Has_Pragma_Pure_Function.
407
408 2001-12-04  Douglas B. Rupp <rupp@gnat.com>
409
410         * gnatchop.adb:
411         (File_Time_Stamp): New procedure.
412         (Preserve_Mode): New boolean.
413         (Write_Unit): Pass time stamp.
414         Implement -p switch (preserve time stamps).
415         
416         * gnatcmd.adb (CHOP): Add translation for -p (/PRESERVE).
417         
418         * gnatchop.adb: Do usage info for -p switch
419         
420         * adaint.h (__gnat_set_file_time_name): New function
421         
422         * adaint.c (__gnat_set_file_time_name): Implement
423         
424         * adaint.h: Fix typo
425
426 2001-12-03  Robert Dewar <dewar@gnat.com>
427
428         * sinfo.ads: Minor reformatting. N_Freeze_Entity node does not
429         have Associated_Node.
430
431 2001-12-03  Robert Dewar <dewar@gnat.com>
432
433         * prj-proc.adb: Minor reformatting
434
435         * make.adb: Minor reformatting
436
437 2001-12-03  Geert Bosch <bosch@gnat.com>
438
439         * make.adb: Minor reformatting.
440
441 2001-12-03 Robert Dewar  <dewar@gnat.com>
442
443         * sem_ch12.adb: Minor reformatting
444
445 2001-12-03  Ed Schonberg <schonber@gnat.com>
446
447         * sem_ch12.adb (Inline_Instance_Body): Use Save_Scope_Stack and
448         push Standard on the stack before analyzing the instance body,
449         in order to have a clean visibility environment.
450
451         * sem_ch12.adb (Inline_Instance_Body): Remove redundant code.
452
453 2001-12-03  Ed Schonberg <schonber@gnat.com>
454
455         * sem_ch12.adb (Instantiate_Package_Body): Protect against double
456         instantiation of a body that contains an inlined body.
457
458 2001-12-03  Ed Schonberg <schonber@gnat.com>
459
460         * sem_ch12.adb:
461         (Analyze_generic_subprogram_Declaration): Set outer_generic_scope,
462         to prevent freezing within formal packages.
463         (Freeze_Subprogram_Body): If body comes from another instance that
464         appeared before its own body, place freeze node at end of current
465         declarative part, to prevent a back-end crash.
466         (Inline_Instance_Body): Handle properly a package instance within
467         a subprogram instance that is a child unit.
468
469 2001-12-01  Graham Stott  <grahams@redhat.com>
470
471         * Makefile.in (misc.o): Add missing $(srcdir) prefix
472         and add optabs.h dependency.
473
474         * misc.c: Include optabs.h
475         (gnat_tree_code_type): Make static and const.
476         (gnat_tree_code_length): Likewise.
477         (gnat_tree_code_name): Likewise.
478         (update_setjmp_buf): Obtain operands mode from insn_data.
479
480 2001-11-29  Richard Henderson  <rth@redhat.com>
481
482         * init.c: Remove obsolete dwarf2 frame.h section.
483
484 2001-11-29  Joseph S. Myers  <jsm28@cam.ac.uk>
485
486         * Make-lang.in (ada.generated-manpages): New dummy target.
487
488 2001-11-29  Ed Schonberg <schonber@gnat.com>
489
490         * g-os_lib.adb (Add_To_Command): use explicit loop to move string
491         into Command, an array conversion is illegal here. Uncovered by
492         ACATS B460005.
493
494 2001/11/28  Geert Bosch <bosch@gnat.com>
495
496         * init.c: Minor whitespace changes.
497
498 2001-11-28  Doug Rupp <rupp@gnat.com>
499
500         * init.c: (__gnat_install_handler,VMS): Increase size of alternate
501         signal stack.
502
503 2001-11-28  Zack Weinberg  <zack@codesourcery.com>
504
505         * misc.c (gnat_expand_constant): Move declaration above
506         definition of lang_hooks.
507         (LANG_HOOKS_EXPAND_CONSTANT): Set to gnat_expand_constant.
508         (gnat_init): lang_expand_constant no longer exists.
509
510         (internal_error_function): Remove #ifdef HAVE_VPRINTF.  We
511         always have vprintf.
512         (gnat_init): Always call set_internal_error_function.
513
514 2001-11-27  Andreas Jaeger  <aj@suse.de>
515
516         * Makefile.in (stamp-tool_src_dir): Use symbolic link.
517
518 2001-11-27  Laurent Guerby  <guerby@acm.org>
519
520         * Makefile.in: Regenerate Ada dependencies.
521
522 2001-11-26  Richard Henderson  <rth@redhat.com>
523
524         * Make-lang.in (gnatbind, gnatmake, gnatbl, gnatchop, gnatcmd,
525         gnatlink, gnatkr, gnatls, gnatmem, gnatprep, gnatpsta, gnatpsys,
526         gnatxref, gnatfind, gnatlbr): Depend on CONFIG_H and prefix.o.
527
528 2001-11-25  Laurent Guerby  <guerby@acm.org>
529
530         * sysdep.c (rts_get_*): Fix style.
531
532 2001-11-19  Laurent Guerby  <guerby@acm.org>
533
534         * Makefile.in (INCLUDES_FOR_SUBDIR): Remove redundant system include
535         since it is of no apparent use and cause warnings.
536
537 2001-11-18  Neil Booth  <neil@daikokuya.demon.co.uk>
538
539         * misc.c (gnat_decode_option, gnat_init_options): Make definitions
540         static too.
541         (gnat_init): Don't return NULL.
542         (finish_parse): Remove.
543
544 2001-11-17  Laurent Guerby  <guerby@acm.org>
545
546         * Make-lang.in (GNATLIBFLAGS): Add -W -Wall.
547         * gigi.h (init_decl_processing): Rename to gnat_init_decl_processing.
548         * io-aux.c: Provide K&R prototypes to all functions, reformat code.
549         * lang-spec.h: Add missing struct field to silence warnings.
550         * sysdep.c (rts_get_*): Provide K&R prototype.
551         * sysdep.c (Unlock_Task, Lock_Task): Move to K&R prototype.
552         * traceback.c (Unlock_Task, Lock_Task): Likewise.
553         * tracebak.c (__gnat_backtrace): Remove unused variable.
554         * utils.c (end_subprog_body): Move to K&R style.
555
556 Thu Nov 15 18:16:17 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
557
558         * trans.c, utils2.c: Remove PALIGN parameter to get_inner_reference.
559
560 2001-11-15  Neil Booth  <neil@daikokuya.demon.co.uk>
561
562         * misc.c (gnat_init): Change prototype.  Include the
563         functionality of the old init_parse and init_decl_processing.
564         (gnat_init_decl_processing): New prototype.
565         (init_parse): Remove.
566         * utils.c (init_decl_processing): Rename gnat_init_decl_processing.
567
568 2001-11-09  Neil Booth  <neil@daikokuya.demon.co.uk>
569
570         * misc.c (gnat_print_decl, gnat_print_type): Renamed.
571         (LANG_HOOKS_PRINT_DECL, LANG_HOOKS_PRINT_TYPE): Override.
572         (print_lang_statistics, lang_print_xnode, print_lang_identifier,
573         set_yydebug): Remove.
574
575 2001-11-09  Neil Booth  <neil@daikokuya.demon.co.uk>
576
577         * misc.c (LANG_HOOKS_NAME, LANG_HOOKS_IDENTIFIER_SIZE): Override.
578         (struct lang_hooks): Constify.
579         (language_string, lang_identify): Remove.
580         * utils.c (init_decl_processing): Update.
581
582 2001-11-06  Neil Booth  <neil@cat.daikokuya.demon.co.uk>
583
584         * misc.c: Include langhooks-def.h.
585         * Makefile.in: Update.
586
587 2001-10-30  Robert Dewar <dewar@gnat.com>
588
589         * style.adb:
590         (Check_Identifier): Rewrite circuit to be compatible with use of letters
591         in the upper half of ASCII.
592         (Check_Identifier): Minor reformatting
593
594 2001-10-30  Geert Bosch <bosch@gnat.com>
595
596         * (Associated_Node, Set_Associated_Node): Do not check for
597         Freeze_Entity.
598
599 2001-10-30  Robert Dewar <dewar@gnat.com>
600
601         * a-reatim.ads: Minor reformatting
602
603 2001-10-30  Robert Dewar <dewar@gnat.com>
604
605         * gnatdll.adb: Minor reformatting throughout. Many ??? added for
606         undocumented declarations.
607
608 2001-10-30  Pascal Obry <obry@gnat.com>
609
610         * gnatdll.adb (Parse_Command_Line): handle -g option to be passed
611         to the binder and linker.
612         Minor style fix.
613
614         * mdll.ads: Fix layout.  Update copyright notice.
615
616         * mdll.adb: Fix layout.  Update copyright notice.
617
618 2001-10-30  Robert Dewar <dewar@gnat.com>
619
620         * usage.adb: Minor fix to output for -gnaty.
621
622 2001-10-30  Ed Schonberg <schonber@gnat.com>
623
624         * a-reatim.ads: Makes Seconds_Count into a 64-bit integer,
625         to accommodate all its possible values.
626
627         * a-reatim.adb (Split): Special-case handling of Time_Span_First
628         and of small absolute values of T.
629
630 2001-10-30  Richard Kenner <kenner@gnat.com>
631
632         * misc.c (gnat_expand_expr, case NULL_EXPR): Remove call to
633         set_mem_attributes since not needed and wrong if RESULT if a REG;
634         fixes ACATS failures.
635
636 2001-10-30  Geert Bosch <bosch@gnat.com>
637
638         * 86numaux.adb, a-tigeau.ads, a-wtgeau.ads, fname-sf.ads, g-traceb.ads,
639         s-tasdeb.ads, sem_maps.ads: Add 2001 to copyright notice.
640
641 2001-10-30  Robert Dewar <dewar@gnat.com>
642
643         * bindusg.adb: Undocument -f switch.
644
645         * gnatcmd.adb: Remove /FULL_ELABORATION.
646
647         * opt.ads (Force_RM_Elaboration_Order): Document that this is
648         obsolescent.
649
650         * gnatbind.adb: Output new warning for use of obsolescent -f switch.
651
652         * gnatbind.adb: Minor update of warning msg.
653
654 2001-10-30  Vincent Celier <celier@gnat.com>
655
656         * gnatcmd.adb (MAKE, BIND, LINK, LIST, FIND, XREF): Add translations
657         for project file switches (-P (/PROJECT_FILE=),
658          -X (/EXTERNAL_REFERENCE=) and -vPx (/PROJECT_FILE_VERBOSITY=DEFAULT
659         or MEDIUM or HIGH)
660
661 2001-10-30  Geert Bosch <bosch@gnat.com>
662
663         * decl.c: Minor whitespace fixes.
664
665 2001-10-30  Richard Kenner <kenner@gnat.com>
666
667         * utils2.c (build_allocator): Test for SIZE overflow in array case too
668
669 2001-10-30  Geert Bosch <bosch@gnat.com>
670
671         * ali-util.adb (Initialize_Checksum): Use out-mode instead of in out.
672         Found due to GCC 3.0 warning of using uninitialized value.
673
674         * layout.adb:
675         (Get_Max_Size): Use variant record for tracking value/expression.
676          Makes logic clearer and prevents warnings for uninitialized variables.
677         (Layout_Array_Type): Use variant record for tracking value/expression.
678          Makes logic clearer and prevents warnings for uninitialized variables.
679
680 2001-10-30  Robert Dewar <dewar@gnat.com>
681
682         * lib.adb: Minor reformatting
683
684         * s-taprop.ads: Minor reformatting
685
686 2001-10-29  Laurent Guerby  <guerby@acm.org>
687
688         * init.c:
689         (Raise_From_Signal_Handler, Propagate_Signal_Exception): Make arg
690         const.
691         (_gnat_error_handler): Make MSG const.
692
693 2001-10-29  Richard Kenner <kenner@gnat.com>
694
695         * sysdep.c: Fix localtime_r problem on LynxOS.
696         Also remove #elif to avoid warnings.
697
698         * misc.c (yyparse): Don't set up and register jmpbuf; remove decls
699         used by this.
700
701         * decl.c (annotate_value): Make SIZE unsigned to avoid warning.
702
703 2001-10-28  Joseph S. Myers  <jsm28@cam.ac.uk>
704
705         * 86numaux.adb, a-tigeau.ads, a-wtgeau.ads, decl.c, exp_ch6.adb,
706         exp_ch9.adb, exp_util.adb, fname-sf.ads, freeze.ads, g-awk.adb,
707         g-comlin.ads, g-dirope.adb, g-dyntab.ads, g-socket.ads,
708         g-table.ads, g-traceb.ads, gnat-style.texi, gnatchop.adb, init.c,
709         layout.adb, layout.ads, mdllfile.ads, mlib-fil.ads, osint.ads,
710         s-fatgen.adb, s-imgrea.adb, s-taprop.ads, s-tasdeb.ads,
711         sem_aggr.adb, sem_attr.adb, sem_case.ads, sem_ch13.adb,
712         sem_ch3.adb, sem_elab.adb, sem_maps.ads, sem_res.adb,
713         sem_util.ads, sinfo.ads, sinput.ads, table.adb, table.ads,
714         types.ads, urealp.adb: Fix spelling errors.
715
716 2001-10-27  Laurent Guerby <guerby@acm.org>
717
718         * trans.c (gigi): Fix non determinism leading to bootstrap
719         comparison failures for debugging information.
720
721 2001-10-26  Florian Weimer  <fw@deneb.enyo.de>
722
723         * gnat_rm.texi: Use @./@: where appropriate.
724
725 2001-10-26  Robert Dewar <dewar@gnat.com>
726
727         * sinfo.adb: Define Associated_Node to overlap Entity field. Cleanup.
728
729 2001-10-26  Richard Kenner <kenner@gnat.com>
730
731         * gmem.c (__gnat_gmem_read_next): Properly check for EOF
732
733 2001-10-26  Richard Kenner <kenner@gnat.com>
734
735         * decl.c (validate_size): Modify message for bad size to avoid
736         implication that compiler is modifying the size.
737
738 2001-10-26  Robert Dewar <dewar@gnat.com>
739
740         * prj-util.adb: Minor reformatting. Fix bad header format.
741
742 2001-10-26  Robert Dewar <dewar@gnat.com>
743
744         * sinfo.ads: Define Associated_Node to overlap Entity field. Cleanup.
745
746         * sinfo.ads: Clarify use of Associated_Node (documentation only).
747
748         * sem_ch12.adb: Change Node4 to Associated_Node. Change
749         Associated_Node to Get_Associated_Node. Put use of Unchecked_Access
750         much more narrowly in places where needed. These are cleanups.
751
752 2001-10-26  Joel Brobecker <brobecke@gnat.com>
753
754         * 5zosinte.ads (null_pthread): new constant.
755
756         * 5ztaprop.adb:
757         (Initialize_TCB): Initialize thread ID to null, to be able to verify
758          later that this field has been set.
759         (Finalize_TCB): ditto.
760         (Suspend_Task): Verify that the thread ID is not null before using it.
761         (Resume_Task): ditto.
762
763         * s-tasdeb.adb:
764         (Resume_All_Tasks): Lock the tasks list before using it.
765         (Suspend_All_Tasks): ditto.
766
767 2001-10-26  Richard Kenner <kenner@gnat.com>
768
769         * decl.c (gnat_to_gnu_entity, case E_General_Access_Type):
770         Make constant variant of designated type for Is_Access_Constant.
771         Call update_pointer_to with main variant.
772
773         * trans.c (process_freeze_entity, process_type):
774         Call update_pointer_to on main variant.
775
776         * utils.c (update_pointer_to): Make corresponding variant for NEW_TYPE.
777         If main variant, update all other variants.
778
779         * utils2.c (build_unary_op, case INDIRECT_REF): No longer set
780         TREE_STATIC.
781
782 2001-10-26  Robert Dewar <dewar@gnat.com>
783
784         * prj-util.adb: Minor reformatting
785
786 2001-10-26  Robert Dewar <dewar@gnat.com>
787
788         * prj-util.adb: Minor reformatting
789
790 2001-10-26  Robert Dewar <dewar@gnat.com>
791
792         * prj-attr.adb: Minor reformatting throughout
793
794 2001-10-26  Robert Dewar <dewar@gnat.com>
795
796         * prj-attr.ads: Minor reformatting
797         Add ??? comment (this whole spec has almost no comments)
798
799 2001-10-26  Vincent Celier <celier@gnat.com>
800
801         * g-os_lib.adb (Normalize_Pathname): Preserve the double slash
802         ("//") that precede the drive letter on Interix.
803
804 2001-10-26  Geert Bosch <bosch@gnat.com>
805
806         * gnat_rm.texi: Add GNAT Reference Manual.
807
808 2001-10-25  Robert Dewar <dewar@gnat.com>
809
810         * sem_ch8.adb (Analyze_Package_Renaming): Skip analysis if Name
811         is Error. Similar change for other renaming cases.
812
813 2001-10-25  Robert Dewar <dewar@gnat.com>
814
815         * s-atacco.ads: Add pragma Inline_Always for functions.
816         Fix header format. Add copyright 2001
817
818 2001-10-25  Ed Schonberg <schonber@gnat.com>
819
820         * par-ch3.adb (P_Subtype_Mark_Resync): for an anonymous array
821         return Error rather than Empty so that analysis can proceed.
822
823 2001-10-25  Ed Schonberg <schonber@gnat.com>
824
825         * sem_util.adb (Enter_Name): better handling of cascaded error
826         messages when a unit appears in its own context.
827
828 2001-10-25  Ed Schonberg <schonber@gnat.com>
829
830         * sem_util.adb (Defining_Entity): in case of error, attach created
831         entity to specification, so that semantic analysis can proceed.
832
833 2001-10-25  Robert Dewar <dewar@gnat.com>
834
835         * sem_util.adb
836         (Defining_Entity): Deal with Error.
837         (Process_End_Label): Deal with bad end label for.
838
839 2001-10-25  Ed Schonberg <schonber@gnat.com>
840
841         * sem_elab.adb (Check_A_Call): refine message when call is in an
842         instance but callee is not declared in the generic unit.
843
844 2001-10-25  Ed Schonberg <schonber@gnat.com>
845
846         * sem_elab.adb (Check_A_Call): check for renaming before finding the
847         enclosing unit, which may already be different from the calling unit.
848
849 2001-10-25  Geert Bosch <bosch@gnat.com>
850
851         * 4gintnam.ads: fix header format.
852
853 2001-10-25  Ed Schonberg <schonber@gnat.com>
854
855         * sem_res.adb (Resolve_Call): if the call is actually an indexing
856         operation on the result of a parameterless call, perform elaboration
857         check after the node has been properly rewritten.
858
859         * sem_ch12.adb (Copy_Generic_Node): after the proper body has been
860         inlined within the generic tree, the defining identifier is not a
861         compilation_unit.
862
863 2001-10-25  Ed Schonberg <schonber@gnat.com>
864
865         * sem_res.adb (Resolve): special-case resolution of Null in an
866          instance or an inlined body to avoid view conflicts.
867
868         * sem_ch12.adb (Copy_Generic_Node): for allocators, check for view
869          compatibility by retrieving the access type of the generic copy.
870
871 2001-10-25  Robert Dewar <dewar@gnat.com>
872
873         * sem_ch3.adb:
874         (Analyze_Number_Declaration): Handle error expression.
875         (Signed_Integer_Type_Declaration): Handle error bound.
876         (Analyze_Subtype_Indication): Handle error range.
877
878         * sem_util.adb (Get_Index_Bounds): Check for Error.
879
880 2001-10-25  Robert Dewar <dewar@gnat.com>
881
882         * restrict.adb (Set_No_Run_Time_Mode): Set Discard_Names as default
883         in no run time mode.
884
885 2001-10-25  Pascal Obry <obry@gnat.com>
886
887         * gnatmem.adb (Read_Next): fix Curs2 value to properly handle quiet
888         mode case for ALLOC case.
889
890         * gnatmem.adb (Read_Next): correctly fix parsing in Quiet mode on
891         all platforms. Improvement of last change.
892
893 2001-10-25  Robert Dewar <dewar@gnat.com>
894
895         * exp_ch4.adb (Expand_N_Allocator): Minor reformatting.
896
897 2001-10-25  Geert Bosch  <bosch@gnat.com>
898
899         * osint.adb (Is_Relative): Remove duplicate.
900
901 2001-10-25  Pascal Obry <obry@gnat.com>
902
903         * osint.adb (Read_Default_Search_Dirs): correctly detect relative
904         pathnames in UNIX and DOS style with drive letter.
905         (Is_Relative): new routine.
906
907         * osint.adb: Minor reformatting
908
909         * osint.adb (Is_Relative): implementation using
910         GNAT.OS_Lib.Is_Absolute_Path. Better fix.
911
912 2001-10-25  Pascal Obry <obry@gnat.com>
913
914         * g-dirope.adb (Basename): correctly compute offset between the
915         original Path and the translated one.
916
917         * g-dirope.adb: (Base_Name): add some comments.
918
919 2001-10-25  Robert Dewar <dewar@gnat.com>
920
921         * exp_imgv.adb (Expand_Image_Attribute): Defend against bad use
922         in HIE mode, avoids compilation abandoned message
923
924         * exp_imgv.adb: Correct typo in previous change
925
926         * exp_imgv.adb: Correct typo in previous change (not my day!)
927
928 2001-10-25  Robert Dewar <dewar@gnat.com>
929
930         * s-tpinop.ads: Add 2001 to copyright notice. Fix header format.
931
932 2001-10-25  Pascal Obry <obry@gnat.com>
933
934         * g-awk.ads: Move all pragma inlines next to the routine
935          declarations. This is more uniform with other GNAT spec.
936
937 2001-10-22  Geert Bosch  <bosch@gnat.com>
938
939         * Make-lang.in (gnattools, cross-gnattools): Remove gnatmem.
940
941 2001-10-19  Geert Bosch  <bosch@gnat.com>
942
943         * Makefile.in (tools, gnattools): Remove gnatmem.
944
945 2001-10-17  Richard Henderson  <rth@redhat.com>
946
947         * Makefile.in (misc.o): Depend on langhooks.h.
948         * misc.c: Include it.
949         (LANG_HOOKS_INIT, LANG_HOOKS_INIT_OPTIONS): New.
950         (LANG_HOOKS_DECODE_OPTION): New.
951         (lang_hooks): Use LANG_HOOKS_INITIALIZER.
952
953 2001-10-16  Florian Weimer  <fw@deneb.enyo.de>
954
955         * trans.c (tree_transform): Adjust to recent change in
956         expand_asm_operands to implement named asm operands.
957
958 2001-10-11  Ed Schonberg  <schonber@gnat.com>
959
960         * exp_ch8.adb (Expand_N_Object_Renaming_Declaration): Bugfix in
961         renaming of discriminant for mutable record type.
962
963 2001-10-11  Robert Dewar  <dewar@gnat.com>
964
965         * validsw.adb: Properly save -gnatVn status.
966
967 2001-10-11  Robert Dewar <dewar@gnat.com>
968
969         * usage.adb: Add lines for V switch.
970
971         * gnatcmd.adb (COMPILE): Revise translations for -gnatV
972         (/VALIDITY_CHECKING).
973
974 2001-10-11  Ed Schonberg <schonber@gnat.com>
975
976         * sem_type.adb (Add_One_Interp): an operator for a type declared in
977         an extension of System is known to be visible.
978
979 2001-10-11  Ed Schonberg <schonber@gnat.com>
980
981         * sem_eval.adb (Compare_Fixup): get the bounds of a String_Literal
982         properly. Fixes regression on ACATS C34005G.
983
984 2001-10-11  Robert Dewar <dewar@gnat.com>
985
986         * sem_ch5.adb (Analyze_Iteration_Scheme): Suppress warning on null
987         loop in generic instance, since this is likely not very useful.
988
989 2001-10-11  Robert Dewar <dewar@gnat.com>
990
991         * restrict.adb (Disallow in No_Run_Time_Mode): Properly specialize
992         the error message for high integrity mode.
993
994         * rtsfind.adb (RTE): Give message if we try to find an entity that
995         is not available in high integrity mode.
996
997         * rtsfind.ads:
998         (OK_To_Use_In_HIE_Mode): New array.
999         (RTE): May return Empty in high integrity mode.
1000
1001         * rtsfind.ads (OK_To_Use_In_No_Run_Time_Mode): New name for
1002         OK_To_Use_In_HIE_Mode, now includes System_FAT_xxx.
1003
1004         * sem_ch6.adb (Analyze_Subprogram_Body): Kill body in predefined
1005         unit if not inlined always and in no runtime mode. Fixes problem
1006         caused by new Rtsfind changes.
1007
1008         * sem_ch6.adb (Analyze_Subrogram_Body): Do not Check_References if
1009         body is deleted.
1010
1011         * rtsfind.adb (RTE): Make sure we do not try to load unit after
1012         giving message for entity not available in high integrity mode.
1013
1014 2001-10-11  Pascal Obry <obry@gnat.com>
1015
1016         * impunit.adb: Add GNAT.CRC32.
1017
1018 2001-10-11  Ed Schonberg <schonber@gnat.com>
1019
1020         * exp_fixd.adb (Expand_Multiply_Fixed_By_Fixed_Giving_Fixed): handle
1021         properly the case where one universal operand in a non-static
1022         exponentiation of a real literal.
1023
1024 2001-10-11  Ed Schonberg <schonber@gnat.com>
1025
1026         * exp_ch7.adb (Find_Final_List): for a type appearing in a with_type
1027         clause, return the gobal finalization list, for lack of anthing else.
1028
1029 2001-10-11  Ed Schonberg <schonber@gnat.com>
1030
1031         * exp_ch7.adb (Make_Transient_Block): if statement is within
1032         exception handler, always use new transient scope to place Clean
1033         procedure.
1034
1035 2001-10-11  Pascal Obry <obry@gnat.com>
1036
1037         * Makefile.in:
1038         (GNAT_ADA_OBJS): add g-crc32.o, a-tags.o, a-stream.o
1039         (GNATBIND_OBJS): add g-crc32.o, a-tags.o, a-stream.o
1040         (GNATLS_RTL_OBJS): add g-crc32.o
1041         (GNATMAKE_RTL_OBJS): add g-crc32.o
1042
1043         * ali-util.adb:
1044         (CRC_Match): new function.
1045         (Get_File_Checksum): renamed Get_File_CRC. Use the GNAT.CRC32 unit
1046         instead of the previous simple checksum algorithm.
1047         (Time_Stamp_Mismatch): use CRC_Match for comparison.
1048         (Set_Source_Table): idem.
1049
1050         * ali-util.ads:
1051         (Get_File_Checksum): renamed Get_File_CRC as now we compute CRC
1052         instead of simple checksum.
1053         (CRC_Match): new function.
1054         (CRC_Error): new constant.
1055
1056         * ali.adb (Scan_ALI): rename variable Chk to CRC as we are handling
1057         a CRC now and not a simple checksum. A CRC uses lower-case hex
1058         letters, fixes ambiguity in parsing.
1059
1060         * ali.ads (Sdep_Record.Checksum): renamed Sdep_Record.CRC as this
1061         is what this variable will store.
1062
1063         * bcheck.adb: Change reference to chechsum in comments by CRC.
1064         (Check_Consistency): Rename Get_File_Checksum to Get_File_CRC.
1065         rename All_Checksum_Match to All_CRC_Match. Change due to API
1066         renaming since now GNAT does not use a simple checksum but a
1067         CRC using GNAT.CRC32.
1068
1069         * gnatls.adb: Rename Checksum to CRC in many places, we use a CRC
1070         now and not anymore a simple checksum.
1071
1072         * lib-load.adb: Use Source_CRC instead of Source_Checksum in many
1073         places.
1074
1075         * lib-writ.adb (Write_ALI): Use Source_CRC instead of Source_Checksum.
1076
1077         * scans.adb:
1078         (Restore_Scan_State): rename Checksum to CRC.
1079         (Save_Scan_State): idem.
1080
1081         * scans.ads:
1082         With GNAT.CRC32.
1083         (Checksum): rename to CRC.
1084         (Saved_Scan_State): Save_Checksum field renamed to Save_CRC
1085
1086         * scn-nlit.adb: Rename many Accumulate_Checksum to Update (from
1087         GNAT.CRC32).  Update copyright notice.
1088
1089         * scn-slit.adb: Rename many Accumulate_Checksum to Update (from
1090         GNAT.CRC32).  Update copyright notice.
1091
1092         * scn.adb:
1093         (Accumulate_Checksum): removed.
1094         (Update): new procedure. Add a wide-character into the CRC.
1095
1096         * sinput-l.adb:
1097         (Complete_Source_File_Entry): use CRC32 instead of simple checksum.
1098         (Load_File): fix initialization of S (change Source_Checksum to
1099         Source_CRC)
1100
1101         * sinput-p.adb (Load_Project_File): rename Source_Checksum to
1102         Source_CRC in S initialization.
1103
1104         * sinput.adb (Source_Checksum): renamed to Source_CRC.
1105
1106         * sinput.ads (Source_Checksum): renamed to Source_CRC.
1107         Update comments for the CRC.
1108
1109         * types.adb (Hex): Use lowercase for the letter part.
1110
1111         * types.ads (Get_Hex_String): Returns the hexadecimal representation
1112         for a word. This is currently used only for CRC. In previous version,
1113         the checksum was using a representation with all letter being
1114         upper-case. With the new implementation (using CRC) we do not remove
1115         the 32th bit of the CRC, so we can have an upper-case starting letter
1116         in the CRC. This is not possible to parse in Scan_ALI (ali.adb).
1117         It is ambigous since the CRC was optional and could be followed by
1118         options like EB, EE. So now this routines uses lower-case letter for
1119         the hexadecimal representation. Strange enough only lower case letters
1120         where checked in Scan_ALI (even if this was not a possible case).
1121
1122         * gnatvsn.ads (Library_Version): changed to 3.15a.
1123
1124         * s-crc32.ads: Initial version from GNAT.CRC32. This is the version
1125         for the compiler.
1126
1127         * s-crc32.adb: Initial version from GNAT.CRC32. This is the version
1128         for the compiler.
1129
1130         * ali-util.adb: Redo previous change to avoid using word CRC everywhere
1131         Add 2001 to copyright notice
1132         (Accumulate_Checksum): Modify to use System.CRC32.
1133
1134         * ali-util.ads: Redo changes of previous revision to continue to use
1135         the word Checksum. Add 2001 to copyright notice.
1136
1137         * ali.adb: Undo some of previous changes, not needed.
1138         Keep the change for lower case letters in the checksum.
1139
1140         * ali.ads: Undo previous change not needed.
1141
1142         * bcheck.adb: Undo most of previous change, not needed.
1143         But do use Checksums_Match for checksum comparison.
1144
1145         * gnatls.adb: Undo most of previous change, not needed.
1146         But do use Checksums_Match for comparing checksums.
1147
1148         * lib-load.adb: Undo previous change, not needed.
1149
1150         * lib-writ.adb: Undo previous change, not needed.
1151
1152         * lib-writ.ads: Document that checksums use lower case,
1153         not upper case letters.
1154
1155         * scans.adb: Undo previous change, not needed
1156
1157         * scans.ads: Undo previous change, not needed.
1158
1159         * scn-nlit.adb: Undo previous changes, not needed.
1160
1161         * scn-slit.adb: Undo previous change, not needed.  Fix header format.
1162
1163         * scn.adb:
1164         (Accumulate_Checksum): Use System.CRC32.
1165         (Initialize_Checksum): New procedure.
1166         Remove other changes of previous revision.
1167
1168         * sinput-p.adb: Undo previous change, not needed.
1169
1170         * sinput.adb: Undo previous change, not needed.
1171
1172         * sinput-l.adb: Undo previous change, not needed.
1173
1174         * sinput.ads: Undo previous change, not needed.  Keep only comment
1175         on new checksum algorithm
1176
1177         * Makefile.in: Add s-crc32 as needed, remove g-crc32.
1178         Also remove a-tags and a-stream from GNAT sources.
1179
1180         * ali.adb (Scan_ALI): fix typo introduce in latest check-in.
1181
1182         * Makefile.in (GNATRTL_NONTASKING_OBJS): Add g-crc32.o.
1183
1184 2001-10-11  Geert Bosch  <bosch@gnat.com>
1185
1186         * einfo.h: Regenerate.
1187
1188         * nmake.ads: Regenerate.
1189
1190         * nmake.adb: Regenerate.
1191
1192         * sinfo.h: Regenerate.
1193
1194         * treeprs.adb: Regenerate.
1195
1196 2001-10-10  Geert Bosch  <bosch@gnat.com>
1197
1198         * gnat-style.texi: New file describing coding guidelines for Ada.
1199
1200 2001-10-10  Ed Schonberg <schonber@gnat.com>
1201
1202         * einfo.adb (Write_Entity_Flags): Elaboration_Entity_Required
1203         is Flag174.
1204
1205 2001-10-10  Geert Bosch  <bosch@gnat.com>
1206
1207         * snames.ads: Add new names for project facility.
1208
1209         * snames.adb: Update to reflect snames.ads changes.
1210
1211         * snames.h: Update to reflect snames.ads changes.
1212
1213 2001-10-10  Vincent Celier <celier@gnat.com>
1214
1215         * make.adb:
1216         (Add_Switches): reflect the changes for the switches attributes
1217         Default_Switches indexed by the programming language,
1218         Switches indexed by the file name.
1219         (Collect_Arguments_And_Compile): Idem.
1220         Reflect the attribute name changes.
1221
1222         * prj-attr.adb:
1223         (Initialisation_Data): Change the names of some packages and
1224         attributes.
1225         (Initialize): process case insensitive associative arrays.
1226
1227         * prj-attr.ads:
1228         (Attribute_Kind): Remove Both, add Case_Insensitive_Associative_Array.
1229
1230         * prj-dect.adb:
1231         (Parse_Attribute_Declaration): For case insensitive associative
1232          arrays, set the index string to lower case.
1233
1234         * prj-env.adb:
1235         Reflect the changes of the project attributes.
1236
1237         * prj-nmsc.adb:
1238         Replace Check_Naming_Scheme by Ada_Check and
1239         Language_Independent_Check.
1240
1241         * prj-nmsc.ads:
1242         Replaced Check_Naming_Scheme by 2 procedures:
1243         Ada_Check and Language_Independent_Check.
1244
1245         * prj-proc.adb:
1246         (Process_Declarative_Items): For case-insensitive associative
1247         arrays, set the index string to lower case.
1248         (Recursive_Check): Call Prj.Nmsc.Ada_Check, instead of
1249         Prj.Nmsc.Check_Naming_Scheme.
1250
1251         * prj-tree.adb:
1252         (Case_Insensitive): New function
1253         (Set_Case_Insensitive): New procedure
1254
1255         * prj-tree.ads:
1256         (Case_Insensitive): New function
1257         (Set_Case_Insensitive): New procedure
1258         (Project_Node_Record): New flag Case_Insensitive.
1259
1260         * prj-util.adb:
1261         (Value_Of): new function to get the string value of a single
1262         string variable or attribute.
1263
1264         * prj-util.ads:
1265         (Value_Of): new function to get the string value of a single
1266         string variable or attribute.
1267
1268         * prj.adb:
1269         (Ada_Default_Spec_Suffix): New function
1270         (Ada_Default_Impl_Suffix): New function
1271         Change definitions of several constants to reflect
1272         new components of record types.
1273
1274         * prj.ads:
1275         (Naming_Data): Change several components to reflect new
1276         elements of naming schemes.
1277         (Project_Data): New flags Sources_Present and
1278         Language_Independent_Checked.
1279         (Ada_Default_Spec_Suffix): New function.
1280         (Ada_Default_Impl_Suffix): New function.
1281
1282         * snames.ads:
1283         Modification of predefined names for project manager: added
1284         Implementation, Specification_Exceptions, Implementation_Exceptions,
1285         Specification_Suffix, Implementation_Suffix, Separate_Suffix,
1286         Default_Switches, _Languages, Builder, Cross_Reference,
1287         Finder. Removed Body_Part, Specification_Append, Body_Append,
1288         Separate_Append, Gnatmake, Gnatxref, Gnatfind, Gnatbind,
1289         Gnatlink.
1290
1291         * prj.ads: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
1292         Add comments.
1293
1294         * prj-nmsc.adb (Ada_Check): Test that Separate_Suffix is defaulted,
1295         not that it is Nil_Variable_Value.
1296
1297         * prj.ads: Add ??? for uncommented declarations
1298
1299 2001-10-10  Ed Schonberg <schonber@gnat.com>
1300
1301         * sem_prag.adb: (Analyze_Pragma, case External): If entity is a
1302         constant, do not indicate possible modification, so that gigi can
1303         treat it as a bona fide constant.
1304
1305 2001-10-10  Robert Dewar <dewar@gnat.com>
1306
1307         * sem_prag.adb: Add processing for pragma External.
1308
1309         * snames.ads: Add entry for pragma External.
1310
1311         * par-prag.adb: Add pragma External.
1312
1313         * snames.adb: Updated to match snames.ads.
1314
1315 2001-10-10  Ed Schonberg <schonber@gnat.com>
1316
1317         * exp_ch4.adb (Expand_N_Allocator): Generate meaningful names for
1318         a dynamic task if the allocator appears in an indexed assignment
1319         or selected component assignment.
1320
1321         * exp_util.adb (Build_Task_Array_Image, Build_Task_Record_Image):
1322         For a dynamic task in an assignment statement, use target of
1323         assignment to generate meaningful name.
1324
1325 2001-10-10  Ed Schonberg <schonber@gnat.com>
1326
1327         * einfo.adb (Write_Field19_Name): Body_Entity is also defined for
1328         a generic package.
1329
1330         * einfo.ads: Body_Entity is also defined for generic package.
1331         Documentation change only
1332
1333         * exp_aggr.adb (Build_Array_Aggr_Code): When expanding an
1334         others_choice for a discriminated component initialization,
1335         convert discriminant references into the corresponding discriminals.
1336
1337         * exp_ch3.adb (Get_Simple_Init_Val): Add qualification to aggregate
1338         only if original type is private and expression has to be wrapped
1339         in a conversion.
1340
1341         * checks.adb:
1342         (Apply_Constraint_Check): Do not perform length check
1343         if expression is an aggregate with only an others_choice.
1344         (Length_N_Cond): two references to the same in_parameter
1345         (typically the discriminal in an init_proc) denote the same value.
1346         Two useful optimization uncovered by bugfixes above.
1347
1348 2001-10-10  Robert Dewar <dewar@gnat.com>
1349
1350         * xeinfo.adb: Change int to char in translation of enumeration types.
1351         This fixes a problem in the C representation of component alignment.
1352         Add 2001 to copyright notice
1353
1354 2001-10-10  Richard Kenner <kenner@gnat.com>
1355
1356         * decl.c: (validate_size): Do check size of object of integral type
1357         if it is a packed array type.
1358
1359 2001-10-10  Richard Kenner <kenner@gnat.com>
1360
1361         * decl.c: (gnat_to_gnu_entity, case object): Also materialize
1362         VAR_DECL for constant if not Is_Public but -O0.
1363
1364 2001-10-10  Richard Kenner  <kenner@gnat.com>
1365
1366         * misc.c (struct lang_hooks): Add new initializer to match GCC change.
1367
1368 2001-10-10  Geert Bosch  <bosch@gnat.com>
1369
1370         * xnmake.adb (XNmake): Fix handling of -s/-b options.  No longer
1371         use '/' as switch character, allowing for absolute file names.
1372
1373 2001-10-09  Joseph S. Myers  <jsm28@cam.ac.uk>
1374
1375         * 4gintnam.ads, Make-lang.in, Makefile.in, config-lang.in: Update
1376         FSF address.
1377
1378 2001-10-08  Geert Bosch  <bosch@gnat.com>
1379
1380         * Makefile.in (treeprs.ads, einfo.h, sinfo.h, nmake.adb, nmake.ads):
1381         Automatically build utilities when files need to be regenerated.
1382
1383 2001-10-08  Geert Bosch  <bosch@gnat.com>
1384
1385         * xsnames.adb: New utility for updating snames.ads and snames.adb
1386
1387 2001-10-08  Zack Weinberg  <zack@codesourcery.com>
1388
1389         * Make-lang.in (ADAFLAGS): Add -W -Wall.
1390         (ADA_FLAGS_TO_PASS): Set ADA_CFLAGS=$(CFLAGS) also.
1391         (gnat1): Also depend on attribs.o.
1392         (gnatlib, gnatlib-shared): Set CC and ADAC in recursive make.
1393         * Makefile.in (X_ADAFLAGS, T_ADAFLAGS): New.
1394         (ADAC): Set to @ADAC@ in stage1, $(CC) later.
1395         (ADAFLAGS): Add -W -Wall.
1396         (ALL_ADAFLAGS, MOST_ADAFLAGS): Add X_ADAFLAGS and T_ADAFLAGS;
1397         take out CFLAGS.
1398
1399         (.adb.o, .ads.o, a-numaux.o, a-teioed.o, s-interr.o,
1400         s-taskin.o, sdefault.o, s-tasdeb.o, s-vaflop.o, a-except.o,
1401         s-assert.o, s-stalib.o, s-memory.o, memtrack.o, mlib-tgt.o):
1402         Use $(ADAC), not $(CC), as compilation command.
1403
1404         (gnattools): Depend directly on tools to build, don't use
1405         recursive make.
1406         (gnatlib): Set ADA_CFLAGS=$(GNATLIBCFLAGS) in recursive make.
1407
1408         * einfo.h, sinfo.h: New files (autogenerated).
1409
1410 2001-10-08  Richard Henderson  <rth@redhat.com>
1411
1412         * comperr.adb (Abort_In_Progress): New.
1413         (Compiler_Abort): Use it to prevent recursion.
1414
1415 2001-10-08  Robert Dewar <dewar@gnat.com>
1416
1417         * atree.adb: Set Error_Posted in Error node, helps error recovery.
1418
1419         * par-endh.adb (Output_End_Expected): We should also not test
1420         Error_Posted on the Error node, since now it is always set.
1421
1422         * cstand.adb (Create_Standard): Set Etype of Error to Any_Type
1423         to help error recovery. Part of general work on 9407-004.
1424
1425         * par.adb: Add ??? for misuse of error
1426
1427         * sem_res.adb:
1428         (Resolve): Defend against Error, fixes 9407-003.
1429         (Resolve_Discrete_Subtype_Indication): Defend against Error.
1430
1431         * sinfo.ads (N_Error): Now has Etype field (which will be set
1432         to Any_Type to help error recovery).
1433
1434 2001-10-08  Richard Kenner (kenner@gnat.com)
1435
1436         * misc.c (gnat_expand_expr, case UNCHECKED_CONVERT_EXPR):
1437         Consistently set MEM attributes from expression; fixes
1438         bootstrap failure on x86.
1439
1440 2001-10-08  Geert Bosch  (bosch@gnat.com)
1441
1442         * 5oosinte.adb: Add 2001 to copyright notice.
1443
1444 2001-10-08  Geert Bosch  (bosch@gnat.com)
1445
1446         * ceinfo.adb: Add utility for consistency checking of einfo.ad[bs].
1447
1448         * csinfo.adb: Add utility for consistency checking of sinfo.ad[bs].
1449
1450 2001-10-07  Joseph S. Myers  <jsm28@cam.ac.uk>
1451
1452         * 5oosinte.adb: Fix spelling error of "separate" as "seperate".
1453
1454 2001-10-05  Geert Bosch  (bosch@gnat.com)
1455
1456         * adaint.h: Small formatting fix.
1457
1458 2001-10-04  Geert Bosch  <bosch@gnat.com>
1459
1460         * sysdep.c (__gnat_set_binary_mode, __gnat_set_text_mode):
1461         Arg is int, not FILE *, in dummy version of functions.
1462
1463         * adaint.h (__gnat_set_binary_mode, __gnat_set_text_mode):
1464         Arg is int, not FILE *.
1465
1466 2001-10-04  Geert Bosch  <bosch@gnat.com>
1467
1468         * 3lsoccon.ads: Added file, missed with initial check ins.
1469
1470         * 4lintnam.ads: Fix header format.
1471         Change Linux to GNU/Linux.
1472
1473         * 5iosinte.adb: Change Linux to GNU/Linux.
1474
1475         * 5iosinte.ads: Change Linux to GNU/Linux.
1476
1477         * 5itaprop.adb: Change Linux to GNU/Linux.
1478
1479         * 5itaspri.ads: Change Linux to GNU/Linux.
1480         Update copyright notice.
1481
1482         * 5lintman.adb: Change Linux to GNU/Linux.
1483
1484         * 5lml-tgt.adb: Change Linux to GNU/Linux.
1485
1486         * 5losinte.ads: Change Linux to GNU/Linux.
1487
1488         * 5lsystem.ads: Change Linux to GNU/Linux.
1489
1490         * 5qosinte.adb: Change Linux to GNU/Linux.
1491
1492         * 5qosinte.ads: Change Linux to GNU/Linux.
1493
1494         * 5qparame.ads: Change Linux to GNU/Linux.
1495
1496         * 5qtaprop.adb: Change Linux to GNU/Linux.
1497
1498         * 5qtaspri.ads: Change Linux to GNU/Linux.
1499         Add 2001 to copyright notice.
1500
1501         * 5vintman.ads: Change Linux to GNU/Linux.
1502         Fix header format.  Add 2001 to copyright notice.
1503
1504         * g-soccon.ads: Change Linux to GNU/Linux.
1505
1506         * g-trasym.ads: Change Linux to GNU/Linux.
1507         Add 2001 to copyright notice.
1508
1509         * memtrack.adb: Change Linux to GNU/Linux.
1510
1511         * s-intman.ads: Change Linux to GNU/Linux.
1512         Add 2001 to copyright notice.  Fix header format.
1513
1514         * s-stache.adb: Change Linux to GNU/Linux.
1515
1516         * adaint.c: Change Linux to GNU/Linux.
1517
1518         * cio.c: Change Linux to GNU/Linux.
1519
1520         * cstreams.c: Change Linux to GNU/Linux.
1521
1522         * init.c: Change Linux to GNU/Linux.
1523
1524         * gmem.c: Change Linux to GNU/Linux.
1525
1526         * tracebak.c: Change Linux to GNU/Linux.
1527
1528
1529 2001-10-02  Geert Bosch  <bosch@gnat.com>
1530
1531         * misc.c (insert_default_attributes): Add dummy version.