OSDN Git Service

* tree.def (documentation): Remove mention of class 'b'.
[pf3gnuchains/gcc-fork.git] / gcc / ada / ChangeLog
1 2004-05-13  Zack Weinberg  <zack@codesourcery.com>
2
3         * trans.c (gnat_stabilize_reference_1): Remove case 'b'.
4
5 2004-05-13  Diego Novillo  <dnovillo@redhat.com>
6
7         Merge from tree-ssa-20020619-branch.
8
9         * config-lang.in (boot_language, build_by_default): Set
10         to no.
11         * utils.c (unchecked_convert): Use OEP_ONLY_CONST.
12         (max_size): Add static chain op for call_expr.
13
14 2004-05-12  Richard Sandiford  <rsandifo@redhat.com>
15
16         PR target/15331
17         * 5gmastop.adb (Roff): Choose between '4' and '0', not '4' and ' '.
18
19 2004-05-11  Roger Sayle  <roger@eyesopen.com>
20
21         * utils.c (max_size): Use MIN_EXPR to find the minimum value of a
22         COND_EXPR.
23
24 2004-05-10  Doug Rupp  <rupp@gnat.com>
25
26         * 5qsystem.ads: Remove Short_Address subtype declaration. Moved to
27         system.aux_dec.
28
29         * s-auxdec.ads: Add Short_Address subtype (moved here from System).
30
31         * Makefile.in: [VMS]: Add translation for 5qauxdec.ads.
32
33         * init.c: [VMS] Macroize LIB$ calls for IA64 and Alpha.
34         Fixes undefined symbols in IA64 gnatlib.
35
36         * 5vinmaop.adb: Reference s-auxdec for Short_Address.
37
38         * 5xsystem.ads, 5vsystem.ads: Back out last change (addition of subtype
39         Short_Address). This will be moved to system.auxdec.
40
41 2004-05-10  Thomas Quinot  <quinot@act-europe.fr>
42
43         * sem_util.adb: Replace test for presence of a node that is always
44         present with a call to Discard_Node.
45
46         * sem_ch10.adb (Analyze_Compilation_Unit): Remove superfluous call to
47         Analyze on the library unit node after generation of distribution stub
48         constructs.  The call was a no-op because Unit_Node has already been
49         Analyzed, and the tree fragments for the distribution stubs are
50         analyzed as they are inserted in Exp_Dist.
51         Update comment regarding to distribution stubs to reflect that we
52         do not generate stub in separate files anymore.
53
54         * einfo.ads: Clarify the fact that a tagged private type has the
55         E_Record_Type_With_Private Ekind.
56
57         * erroutc.adb: Minor reformatting
58
59         * erroutc.ads (Max_Msg_Length): Increase to cover possible larger
60         values if line length is increased using -gnatyM (noticed during code
61         reading).
62
63         * eval_fat.adb: Minor reformatting
64         Put spaces around exponentiation operator
65
66 2004-05-10  Ed Schonberg  <schonberg@gnat.com>
67
68         PR ada/15005
69         * sem_util.adb (Is_Dependent_Component_Of_Mutable_Object): If prefix
70         has been rewritten as an explicit dereference, retrieve type of
71         original node to check for possibly unconstrained record type.
72
73 2004-05-10  Ed Schonberg  <schonberg@gnat.com>
74
75         * exp_ch7.adb (Check_Visibly_Controlled): If given operation is not
76         overriding, use the operation of the parent unconditionally.
77
78         * sem_ch4.adb (Remove_Address_Interpretations): Remove address
79         operation when either operand is a literal, to avoid further
80         ambiguities.
81
82         * sem_ch6.adb (New_Overloaded_Entity): If new entity is inherited and
83         overridden by a previous explicit declaration, mark the previous entity
84         as overriding.
85
86         * sem_disp.adb (Check_Dispatching_Operation): New predicate
87         Is_Visibly_Controlled, to determine whether a declaration of a
88         primitive control operation for a derived type overrides an inherited
89         one. Add warning if the explicit declaration does not override.
90
91 2004-05-10  Vincent Celier  <celier@gnat.com>
92
93         * gnatls.adb (Gnatls): Initialize Snames, to avoid assertion error in
94         some cases when the sources are no longer present.
95
96         * make.adb (Collect_Arguments): Fail if an external source, not part
97         of any project need to be compiled, when switch -x has not been
98         specified.
99
100         * makeusg.adb: Document new switch -x
101
102         * opt.ads (External_Unit_Compilation_Allowed): New Boolean flag,
103         defaulted to False.
104
105         * switch-m.adb (Scan_Make_Switches): New switch -x
106
107         * vms_data.ads: Add VMS qualifier /NON_PROJECT_UNIT_COMPILATION for
108         gnatmake switch -x.
109
110         * gnat_ugn.texi: Document new gnatmake switch -x
111
112 2004-05-10  Eric Botcazou  <ebotcazou@act-europe.fr>
113
114         * misc.c (gnat_init_options): Set flag_zero_initialized_in_bss to 0.
115
116         * utils.c (create_var_decl): Do not modify the DECL_COMMON flag.
117         (process_attributes): Likewise.
118
119 2004-05-10  Joel Brobecker  <brobecker@gnat.com>
120
121         * s-inmaop.ads: Fix spelling mistake in one of the comments.
122
123 2004-05-10  Robert Dewar  <dewar@gnat.com>
124
125         * gnat_ugn.texi: Document that for config pragma files, the maximum
126         line length is always 32767.
127
128         * gnat_rm.texi: For pragma Eliminate, note that concatenation of string
129         literals is now allowed.
130
131         * gnat-style.texi: Remove statement about splitting long lines before
132         an operator rather than after, since we do not follow this rule at all.
133         Clarify rule (really lack of rule) for spaces around exponentiation
134
135         * sem_elim.adb: Allow concatenation of string literals as well as a
136         single string literal for pragma arguments.
137
138         * sem_prag.ads, sem_prag.adb: (Is_Config_Static_String): New function
139
140         * a-textio.adb (Terminate_Line): Do not add line feed if nothing
141         written for append case.
142
143         * frontend.adb: Changes to avoid checking max line length in config
144         pragma files.
145
146         * g-os_lib.ads: Minor reformatting
147
148         * mlib-utl.adb: Do not define Max_Line_Length locally (definition was
149         wrong in any case. Instead use standard value. Noticed during code
150         reading.
151
152         * opt.ads (Max_Line_Length): New field, used to implement removal of
153         limitation on length of lines when scanning config pragma files.
154
155         * osint.ads, prj-dect.adb, prj-strt.adb, prj-tree.adb,
156         makeutl.ads, makeutl.adb: Minor reformatting
157
158         * scn.adb: Do not check line length while scanning config pragma files
159         Do not check line length while scanning out license information
160
161         * scng.adb: Changes to avoid line length checks while parsing config
162         pragma files.
163
164 2004-05-10  GNAT Script  <nobody@gnat.com>
165
166         * Make-lang.in: Makefile automatically updated
167
168 2004-05-05  Arnaud Charlet  <charlet@act-europe.fr>
169
170         * osint.adb (Find_Program_Name): Fix handling of VMS version
171         number.
172
173 2004-05-05  Emmanuel Briot  <briot@act-europe.fr>
174
175         * g-os_lib.ads (Invalid_Time): New constant
176
177         * adaint.h, adaint.c (__gnat_file_time_name, __gnat_file_time_fd): Now
178         return OS_Time instead of time_t to match what is imported by Ada.
179         Now return -1 if the file doesn't exist, instead of a random value
180
181 2004-05-05  Robert Dewar  <dewar@gnat.com>
182
183         * usage.adb: Add line for -gnatR?s switch
184
185         * sem_ch13.adb, exp_ch2.adb: Minor reformatting
186
187         * g-regpat.ads, g-regpat.adb: Add documentation on handling of Size
188         and for Match (Data_First, Data_last)
189
190         * lib-writ.adb (Write_With_Lines): Ensure that correct index number is
191         written when we are dealing with multi-unit files.
192
193 2004-05-05  Jerome Guitton  <guitton@act-europe.fr>
194
195         * Makefile.in: Remove unused targets and variables.
196
197 2004-05-05  Vincent Celier  <celier@gnat.com>
198
199         * switch-m.adb: New gnatmake switch -eI
200
201         * vms_data.ads: Add VMS equivalents of new gnatclean swith -innn and
202         of new gnatmake switch -eInnn.
203
204         * makegpr.adb: Take into account new parameters Index and Src_Index in
205         Prj.Util.
206
207         * clean.adb: Implement support for multi-unit sources, including new
208         switch -i.
209
210         * gnatcmd.adb (GNATCmd): Call Prj.Util.Value_Of with new parameter
211         Src_Index.
212
213         * make.ads, make.adb (Insert_Q): New parameter Index, defaulted to 0
214         (Extract_From_Q): New out parameter Index
215         (Mark, Is_Marked): Subprograms moved to Makeutl
216         (Switches_Of): New parameter Source_Index
217         (Add_Switch): New parameter Index
218         (Check): New parameter Source_Index
219         (Collect_Arguments): New parameter Source_Index
220         (Collect_Arguments_And_Compile): New parameter Source_Index
221         (Compile): New parameter Source_Index
222         Put subprograms in alphabetical order
223         Add support for multi-source sources, including in project files.
224
225         * makeutl.ads, makeutl.adb (Unit_Index_Of): New function
226         (Mark, Is_Marked, Delete_All_Marks): New subprograms, moved from
227         Make.
228
229         * makeusg.adb: New gnatmake switch -eInnn
230
231         * mlib-prj.adb (Build_Library): Add new parameter Src_Index to call to
232         Prj.Util.Value_Of.
233
234         * opt.ads (Main_Index): New variable, defaulted to 0.
235
236         * osint.ads, osinte.adb (Add_File): New parameter Index
237         (Current_Source_Index): New function
238
239         * prj.adb: Take into account new components Index and Src_Index
240
241         * prj.ads (String_Element): New component Index
242         (Variable_Value): New component Index
243         (Array_Element): New component Src_Index
244
245         * prj-attr.adb: Indicate that optional index may be specified for
246         attributes Main, Executable, Spec, Body and some of Switches.
247
248         * prj-attr.ads (Attribute_Kind): New values for optional indexes
249         (Attribute_Record): New component Optional_Index
250
251         * prj-com.ads (File_Name_Data): New component Index
252
253         * prj-dect.adb (Parse_Attribute_Declaration): Process optional index
254
255         * prj-env.adb (Put): Output optional index
256
257         * prj-makr.adb: Put indexes for multi-unit sources in SFN pragmas and
258         attributes Spec and Body.
259
260         * prj-nmsc.adb: Process optional indexes
261
262         * prj-pp.adb: Ouput "at" for optional indexes
263
264         * prj-proc.adb: Take into account optional indexes
265
266         * prj-strt.ads, prj-strt.adb (Terms): New Boolean parameter
267         Optional_Index. For string literal,
268         process optional index when Optional_Index is True.
269         (Parse_Expresion): New Boolean parameter Optional_Index
270
271         * prj-tree.ads, prj-tree.adb (Source_Index_Of): New function
272         (Set_Source_Index_Of): New procedure
273
274         * prj-util.adb (Executable_Of, Value_Of): Take into account optional
275         index.
276
277         * prj-util.ads (Executable_Of): New parameter Index
278         (Value_Of (Name_Id, Array_Element_Id) returning Variable_Value):
279         New parameter Src_Index, defaulted to 0.
280
281 2004-05-05  Ed Schonberg  <schonberg@gnat.com>
282
283         PR ada/15257
284         * sem_ch3.adb (Access_Definition): If this is an access parameter
285         whose designated type is imported through a limited_with clause, do
286         not add the enclosing subprogram to the list of private dependents of
287         the type.
288
289 2004-05-05  Ed Schonberg  <schonberg@gnat.com>
290
291         PR ada/15258
292         * sem_ch6.adb (Base_Types_Match): True if one type is imported through
293         a limited_with clause, and the other is its non-limited view.
294
295 2004-05-05  Thomas Quinot  <quinot@act-europe.fr>
296
297         * cstand.adb (Create_Standard): Initialize Stand.Boolean_Literals.
298
299         * exp_attr.adb, exp_ch5.adb, exp_ch9.adb, exp_disp.adb,
300         exp_fixd.adb, sem_attr.adb, sem_dist.adb, sem_util.adb: Use
301         Stand.Boolean_Literals to produce references to entities
302         Standard_False and Standard_True from compile-time computed boolean
303         values.
304
305         * stand.ads (Boolean_Literals): New variable, provides the entity
306         values for False and True, for use by the expander.
307
308 2004-05-05  Doug Rupp  <rupp@gnat.com>
309
310         * 5vinmaop.adb, 5[vx]system.ads: Add Short_Address subtype
311         5vinmaop.adb: Unchecked convert Short_Address vice Address
312
313         * adaint.c, raise.c: Caste CRTL function return value
314         to avoid gcc error on 32/64 bit IVMS.
315
316         * Makefile.in [VMS]: Use iar archiver if host = Alpha/VMS and
317         target = IA64/VMS.
318
319         * init.c[VMS]: Only call Alpha specific __gnat_error_prehandler IN_RTS.
320
321         * 5qsystem.ads (Address): Declare as Long_Integer
322         (Short_Address): Declare as 32 bit subtype of Address
323         Declare  abstract address operations to avoid gratuitous ambiguities.
324
325 2004-05-05  Jose Ruiz  <ruiz@act-europe.fr>
326
327         * gnat_rm.texi: Use the new restriction Simple_Barriers (AI-249)
328         instead of the old Boolean_Entry_Barriers.
329         Ditto for No_Task_Attributes_Package instead of No_Task_Attributes.
330
331 2004-05-05  GNAT Script  <nobody@gnat.com>
332
333         * Make-lang.in: Makefile automatically updated
334
335 2004-05-03  Arnaud Charlet  <charlet@act-europe.fr>
336
337         * 50system.ads, 59system.ads, s-thread.ads: Removed, no longer used.
338
339 2004-05-03  Olivier Hainque  <hainque@act-europe.fr>
340
341         PR ada/15152
342
343         * exp_ch2.adb (Expand_Current_Value): Leave Machine_Code Asm arguments
344         alone. Replacing object references by literals is inappropriate in a
345         so low level context.
346
347 2004-05-03  Arnaud Charlet  <charlet@act-europe.fr>
348
349         * a-exexpr.adb: Add comments
350
351 2004-05-03  Joel Brobecker  <brobecker@gnat.com>
352
353         * a-tags.adb (Tag_Table): Add Index_Check pragma Suppress. Allows us to
354         declare the Ancestor_Tags array in Type_Specific_Data with a small size
355         without risking a bounds check error when accessing one of its
356         components.
357         (Type_Specific_Data): Define Ancestor_Tags as a small array.
358         This prevents us from hitting a limitation during the debug info
359         generation when using stabs.
360
361         * a-tags.adb (Dispatch_Table): Define the Prims_Ptr component as a
362         small array.
363         This prevents us from hitting a limitation during the debug info
364         generation when using stabs.
365
366 2004-05-03  Eric Botcazou  <ebotcazou@act-europe.fr>
367
368         lang-specs.h: Remove -gnatz* from specs.
369
370 2004-05-03  Vincent Celier  <celier@gnat.com>
371
372         * gprmake.adb, makegpr.ads, makegpr.adb: New files.
373
374         * Make-lang.in, Makefile.in: Add gprmake
375
376 2004-05-03  Thomas Quinot  <quinot@act-europe.fr>
377
378         * sem_aggr.adb: Fix typo in comment.
379
380 2004-05-03  Robert Dewar  <dewar@gnat.com>
381
382         * make.adb: Minor reformatting
383
384         * rtsfind.ads, rtsfind.adb: (RTU_Loaded): New function
385
386         * sem_attr.adb (Eval_Attribute, case Type_Class): Fix check for address
387         so that it works when address is not a private type.
388
389         * sem_ch13.adb (Check_Expr_Constants, case N_Integer_Literal): Deal
390         properly with rewritten unchecked conversions. This prevents
391         order-of-elaboration issues that can otherwise arise.
392         (Minimum_Size): Don't check size of access types under VMS
393
394         * sem_ch4.adb (Remove_Address_Interpretation): New circuit to remove
395         interpretations of integer literals as type System.Address.
396
397         * sem_util.ads, sem_util.adb (Is_Descendent_Of_Address): New function
398         (Is_Descendent_Of): New function
399
400 2004-05-03  Jose Ruiz  <ruiz@act-europe.fr>
401
402         * sem_prag.adb: Boolean_Entry_Barriers is a synonym of Simple_Barriers.
403         Max_Entry_Queue_Depth is a synonym of Max_Entry_Queue_Length.
404         No_Dynamic_Interrupts is a synonym of No_Dynamic_Attachment.
405
406         * sem_res.adb: Use the new restriction Max_Entry_Queue_Length instead
407         of the old Max_Entry_Queue_Depth.
408
409         * snames.adb: Boolean_Entry_Barriers is a synonym of Simple_Barriers.
410         Max_Entry_Queue_Depth is a synonym of Max_Entry_Queue_Length
411         No_Dynamic_Interrupts is a synonym of No_Dynamic_Attachment
412
413         * snames.ads: New entry for proper handling of Boolean_Entry_Barriers.
414         New entry for proper handling of Max_Entry_Queue_Depth.
415         New entry for proper handling of No_Dynamic_Interrupts.
416
417         * s-rident.ads: Adding restriction Simple_Barriers (AI-00249) that
418         supersedes the GNAT specific restriction Boolean_Entry_Barriers.
419         Adding restriction Max_Entry_Queue_Length (AI-00249) that supersedes
420         the GNAT specific restriction Max_Entry_Queue_Depth.
421         Adding restriction No_Dynamic_Attachment (AI-00249) that supersedes
422         the GNAT specific restriction No_Dynamic_Interrupts.
423
424         * restrict.ads, restrict.adb: Use the new restriction Simple_Barriers
425         instead of the old Boolean_Entry_Barriers.
426         Use the new restriction No_Dynamic_Attachment instead of the old
427         No_Dynamic_Interrupts.
428
429         * exp_ch9.adb: Check restriction Simple_Barriers (AI-00249) that
430         supersedes the GNAT specific restriction Boolean_Entry_Barriers.
431
432         * gnatbind.adb: Use the new restriction Max_Entry_Queue_Length instead
433         of the old Max_Entry_Queue_Depth.
434
435 2004-05-03  GNAT Script  <nobody@gnat.com>
436
437         * Make-lang.in: Makefile automatically updated
438
439 2004-04-29  Ed Schonberg  <schonberg@gnat.com>
440
441         * checks.adb (Enable_Range_Check): If the prefix of an index component
442         is an access to an unconstrained array, perform check unconditionally.
443
444 2004-04-29  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
445
446         * decl.c (gnat_to_gnu_field): Also call make_packable_type if
447         Component_Clause.
448
449 2004-04-29  Olivier Hainque  <hainque@act-europe.fr>
450
451         * init.c (__gnat_install_handler, __gnat_error_handler): Remove
452         alternate stack setting. There was no support for the tasking cases
453         and the changes eventually caused a number of side-effect failures in
454         the non-tasking case too.
455
456 2004-04-29  Eric Botcazou  <ebotcazou@act-europe.fr>
457
458         lang-specs.h: Redirect output to /dev/null if -gnatc or -gnatz or
459         -gnats is passed.
460
461 2004-04-29  Vincent Celier  <celier@gnat.com>
462
463         * make.adb (Gnatmake): Increase max size of argument array for
464         gnatbind for the potential addition of -F.
465         If there are Stand-Alone Library projects, invoke gnatbind with -F to
466         be sure that elaboration flags will be checked.
467
468         * switch-c.adb: Correct call to Scan_Pos for -gnateI
469
470 2004-04-29  Thomas Quinot  <quinot@act-europe.fr>
471
472         * sem_warn.adb (Check_References): Move '<access-variable> may be
473         null' warning out of under Warn_On_No_Value_Assigned.
474
475 2004-04-29  Ed Falis  <falis@gnat.com>
476
477         * gnat_ugn.texi: Fixed texi error
478
479 2004-04-29  Robert Dewar  <dewar@gnat.com>
480
481         * sem_ch4.adb (Remove_Abstract_Operations): Unconditionally remove
482         abstract operations if they come from predefined files.
483
484         * gnat_rm.texi: Fix bad doc for pragma Elaboration_Checks (should be
485         Dynamic, not RM).
486
487         * s-addope.adb: Correct obvious error in mod function
488
489 2004-04-28  Andrew W. Reynolds  <awreynolds@mac.com>
490
491         * Makefile.in: Add target pairs for powerpc darwin*
492         tasking support.
493
494         * a-intnam-darwin.ads, s-osinte-darwin.adb,
495         s-osinte-darwin.ads, system-darwin-ppc.ads: New files.
496
497 2004-04-28  Ulrich Weigand  <uweigand@de.ibm.com>
498
499         * Makefile.in: Add target macro definitions for s390*-linux*.
500         * system-linux-s390.ads: New file.
501         * system-linux-s390x.ads: New file.
502
503 2004-04-28  Joseph S. Myers  <jsm@polyomino.org.uk>
504
505         * gnat_ugn.texi: Correct argument to @setfilename.
506
507 2004-04-28  Ulrich Weigand  <uweigand@de.ibm.com>
508
509         * a-exexpr.adb (Unwind_Word): New data type.
510         (Unwind_Exception): Use it as type of Private1 and Private2.
511
512         * raise.c (db_action_for): Fix debug printf.
513
514 2004-04-27  Ed Schonberg  <schonberg@gnat.com>
515
516         * a-wtmoio.ads: Formal type must be a modular type, not a signed
517         integer type.
518
519 2004-04-27  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
520
521         * decl.c (gnat_to_gnu_entity, case object): Call
522         __builtin_update_setjmp_buf.
523
524         * gigi.h (update_setjmp_buf): Deleted.
525         (ADT_update_setjmp_buf_decl, update_setjmp_buf_decl): New.
526
527         * misc.c: (update_setjmp_buf): Deleted.
528
529         * trans.c (gnat_to_gnu): Call do_pending_stack_adjust and emit_queue
530         around block of RTL.
531
532         * utils.c (init_gigi_decls): Initialize update_setjmp_buf.
533
534 2004-04-26  Thomas Quinot  <quinot@act-europe.fr>
535
536         * sem_dist.adb, exp_dist.adb: When constructing a RAS value for a local
537         subprogram for which no pragma All_Calls_Remote applies, store the
538         address of the real subprogram in the underlying record type, so local
539         dereferences do not go through the PCS.
540
541 2004-04-26  Robert Dewar  <dewar@gnat.com>
542
543         * i-c.ads: Add some type qualifications to avoid ambiguities when
544         compiling with s-auxdec.ads and a non-private address type.
545
546 2004-04-26  Arnaud Charlet  <charlet@act-europe.fr>
547
548         * Makefile.rtl: Fix error in previous check-in:
549         Add s-addope.o to non tasking object list (rather than tasking object
550         list).
551
552 2004-04-26  Javier Miranda  <miranda@gnat.com>
553
554         * sem_aggr.adb: Fix typo in comments
555         (Resolve_Aggr_Expr): Propagate the type to the nested aggregate.
556         Required to check the null-exclusion attribute.
557
558         * sem_attr.adb (Resolve_Attribute): Check the accessibility level in
559         case of anonymous access types in record and array components. For a
560         component definition the level is the same of the enclosing composite
561         type.
562
563         * sem_ch3.adb (Analyze_Component_Declaration): In case of components
564         that are anonymous access types the level of accessibility depends on
565         the enclosing type declaration. In order to have this information, set
566         the scope of the anonymous access type to the enclosing record type
567         declaration.
568         (Array_Type_Declaration): In case of components that are anonymous
569         access types the level of accessibility depends on the enclosing type
570         declaration. In order to have this information, set the scope of the
571         anonymous access type to the enclosing array type declaration.
572
573         * sem_ch3.adb (Array_Type_Declaration): Set the scope of the anonymous
574         access type.
575
576         * sem_ch8.adb (Analyze_Object_Renaming): Add check to verify that
577         renaming of anonymous access-to-constant types allowed if and only if
578         the renamed object is access-to-constant.
579
580         * sem_util.adb (Type_Access_Level): In case of anonymous access types
581         that are component_definition or discriminants of a nonlimited type,
582         the level is the same as that of the enclosing component type.
583
584 2004-04-26  Sergey Rybin  <rybin@act-europe.fr>
585
586         * sem_elim.adb: Some minor code reorganization from code reading. Fix
587         misprint in the function name (File_Name_Match).
588
589 2004-04-23  Laurent GUERBY <laurent@guerby.net>
590
591         * Makefile.in: Remove RANLIB_TEST, use -$(RANLIB) including after
592         install.
593
594 2004-04-23  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
595
596         * Make-lang.in (GNATBIND_OBJS): Add s-addope.o.
597
598 2004-04-23  Emmanuel Briot  <briot@act-europe.fr>
599
600         * adaint.c (__gnat_try_lock): No longer requires that the parent
601         directory be writable, the directory itself is enough.
602         (gnat_is_absolute_path): Change profile, so that the call from
603         GNAT.OS_Lib can be made more efficient.
604
605         * adaint.h (gnat_is_absolute_path): Change profile, so that the call
606         from GNAT.OS_Lib can be made more efficient.
607
608         * g-os_lib.adb (Is_Absolute_Path): More efficient implementation, avoid
609         one copy of the file name. Found by code reading.
610
611 2004-04-23  Vincent Celier  <celier@gnat.com>
612
613         * gnat_ugn.texi: Add documentation for gnatmake switch -eL
614         Correct documentation on gnatmake switches transmitted to the compiler
615
616         * ali.ads: Minor comment fix
617
618 2004-04-23  Javier Miranda  <miranda@gnat.com>
619
620         * sem_ch6.adb: (Confirming Types): Code cleanup
621
622         * decl.c (gnat_to_gnu_entity): Give support to anonymous access to
623         subprogram types: E_Anonymous_Access_Subprogram_Type and
624         E_Anonymous_Access_Protected_Subprogram_Type.
625
626 2004-04-23  Thomas Quinot  <quinot@act-europe.fr>
627
628         * sem_dist.adb: Add a new paramter to the RAS_Access TSS indicating
629         whether a pragma All_Calls_Remote applies to the subprogram on which
630         'Access is taken.
631         No functional change is introduced by this revision; the new parameter
632         will be used to allow calls to local RCI subprograms to be optimized
633         to not use the PCS in the case where no pragma All_Calls_Remote applies,
634         as is already done in the PolyORB implementation of the DSA.
635
636         * exp_dist.adb: Add a new paramter to the RAS_Access TSS indicating
637         whether a pragma All_Calls_Remote applies to the subprogram on which
638         'Access is taken.
639         No functional change is introduced by this revision; the new parameter
640         will be used to allow calls to local RCI subprograms to be optimized
641         to not use the PCS in the case where no pragma All_Calls_Remote applies,
642         as is already done in the PolyORB implementation of the DSA.
643
644 2004-04-23  Robert Dewar  <dewar@gnat.com>
645
646         * Makefile.rtl: Add entry for s-addope.o in run time library list
647         * Make-lang.in: Add entry for s-addope.o to GNAT1 objects
648         * s-addope.ads, s-addope.adb: New files.
649
650         * s-carsi8.adb, s-carun8.adb, s-casi16.adb, s-casi32.adb,
651         s-casi64.adb, s-caun16.adb, s-caun32.adb, s-caun64.adb,
652         s-finimp.adb, s-geveop.adb, s-stoele.adb: Modifications to allow
653         System.Address to be non-private and signed.
654
655         * sem_elim.adb: Minor reformatting (fairly extensive)
656         Some minor code reorganization from code reading
657         Add a couple of ??? comments
658
659 2004-04-23  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
660
661         * trans.c (tree_transform, build_unit_elab): Don't call getdecls.
662         (tree_transform, case N_If_Statement): Remove non-determinism.
663
664         * utils.c (begin_subprog_body): Just set DECL_CONTEXT in PARM_DECL.
665
666 2004-04-23  Sergey Rybin  <rybin@act-europe.fr>
667
668         * gnat_rm.texi: Small fixes in the changes made in the 'pragma
669         Eliminate' section.
670
671         * snames.ads, snames.adb: Remove Name_Homonym_Number (Homonym_Number is
672         no longer used as a parameter name for Eliminate pragma).
673
674 2004-04-22  Laurent GUERBY <laurent@guerby.net>
675
676         PR optimization/14984
677         PR optimization/14985
678         * trans.c (gigi): Fix non determinism leading to bootstrap
679         comparison failures.
680
681 2004-04-21  Pascal Obry  <obry@gnat.com>
682
683         * adaint.c (__gnat_portable_spawn): Quote first argument (argv[0])
684         passed to spawnvp() to properly handle program pathname with spaces on
685         Win32.
686
687 2004-04-21  Emmanuel Briot  <briot@act-europe.fr>
688
689         * g-debpoo.adb (Print_Info): Avoid extra work if Display_Slots is False.
690         (Allocate, Deallocate, Free_Physically): Make sure the tasks are
691         unlocked in case of exceptions.
692
693 2004-04-21  Joel Brobecker  <brobecker@gnat.com>
694
695         * gigi.h (get_target_no_dollar_in_label): Remove extern declaration.
696         This function does not exist anymore.
697
698 2004-04-21  Thomas Quinot  <quinot@act-europe.fr>
699
700         * gnatbind.adb, gnatlink.adb: Update name of imported C symbol.
701
702         * link.c: Move variables to the __gnat name space.
703
704         * Makefile.in: list link.o explicitly when needed.
705
706         * mlib.adb: Remove pragma Linker_Option for "link.o" from mlib.
707
708 2004-04-21  Javier Miranda  <miranda@gnat.com>
709
710         * einfo.adb (Original_Access_Type): New subprogram
711         (Set_Original_Access_Type): New subprogram
712         (Write_Field21_Name): Write the name of the new field
713
714         * einfo.ads (Original_Access_Type): New field present in access to
715         subprogram types.
716         Addition of two new entities: E_Anonymous_Access_Subprogram_Type, and
717         E_Anonymous_Access_Protected_Subprogram_Type.
718
719         * lib-xref.adb (Output_One_Ref): Give support to anonymous access to
720         subprogram types.
721
722         * lib-xref.ads (Xref_Entity_Letters): Initialize values corresponding
723         to anonymous access to subprogram types.
724
725         * sem_attr.adb (Resolve_Attribute): Give support to anonymous access
726         to subprogram types.
727
728         * sem_ch3.adb (Access_Definition): Complete decoration of entities
729         corresponding to anonymous access to subprogram types.
730         (Analyze_Component_Declaration): Add new actual to the call to
731         subprogram replace_anonymous_access_to_protected_subprogram.
732         (Array_Type_Declaration): Add new actual to the call to subprogram
733         replace_anonymous_access_to_protected_subprogram.
734         (Process_Discriminants): Add new actual to the call to subprogram
735         replace_anonymous_access_to_protected_subprogram.
736         (Replace_Anonymous_Access_To_Protected_Subprogram): New formal.
737
738         * sem_ch3.ads (Replace_Anonymous_Access_To_Protected_Subprogram): New
739         formal.
740
741         * sem_ch6.adb, sem_type.adb, sem_res.adb: Give support to anonymous
742         access to subprogram types.
743
744         * sem_util.adb (Has_Declarations): Addition of package_specification
745         nodes.
746
747 2004-04-21  Ed Schonberg  <schonberg@gnat.com>
748
749         * sem_prag.adb (Make_Inline): If subprogram is a renaming, propagate
750         inlined flags to renamed entity only if in current unit.
751
752 2004-04-21  Thomas Quinot  <quinot@act-europe.fr>
753
754         * s-parint.ads: Add DSA implementation marker.
755
756         * rtsfind.ads, rtsfind.adb, snames.ads, snames.adb, s-rpc.adb: Use the
757         value of System.Partition_Interface.DSA_Implementation to determine
758         what version of the distributed systems annex is available (no
759         implementation, GLADE, or PolyORB).
760
761 2004-04-21  Joel Brobecker  <brobecker@gnat.com>
762
763         * targtyps.c (get_target_no_dollar_in_label): Remove, no longer used.
764
765 2004-04-21  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
766
767         * utils.c (convert, case CONSTRUCTOR, COMPONENT_REF): Do not make node
768         with new type if alias sets differ.
769         Fixes ACATS c41103b.
770
771 2004-04-21  Vincent Celier  <celier@gnat.com>
772
773         * prj.ads: Remove FORTRAN as an accepted language: not tested yet.
774         Add array Lang_Args for the language specific compiling argument
775         switches.
776
777         * gnat_ugn.texi: Explain in more details when a library is rebuilt.
778
779 2004-04-21  Sergey Rybin  <rybin@act-europe.fr>
780
781         * gnat_rm.texi: Update the descripton of the Eliminate pragma
782         according to the recent changes in the format of the parameters of the
783         pragma (replacing Homonym_Number with Source_Location).
784
785 2004-04-19  Arnaud Charlet  <charlet@act-europe.fr>
786
787         * 5isystem.ads: Removed, unused.
788
789         * gnat_rm.texi: Redo 1.13 change.
790
791 2004-04-19  Robert Dewar  <dewar@gnat.com>
792
793         * s-stoele.ads: Clean up definition of Storage_Offset (the new
794         definition is cleaner, avoids the kludge of explicit Standard operator
795         references, and also is consistent with a visible System.Address with
796         no visible operations.
797
798         * s-geveop.adb: Add declarations to avoid assumption of visible
799         operations on type System.Address (since these might not be available
800         if Address is a non-private type for which the operations
801         are made abstract).
802
803         * sem_eval.adb: Minor reformatting
804
805         * s-carsi8.ads, s-carun8.ads, s-casi16.ads, s-casi32.ads,
806         s-casi64.ads, s-caun16.ads, s-caun32.ads, s-caun64.ads: Minor
807         reformatting (new function spec format).
808
809         * s-auxdec.adb, s-carsi8.adb, s-carun8.adb, s-casi16.adb,
810         s-casi32.adb, s-casi64.adb, s-caun16.adb, s-caun32.adb,
811         s-caun64.adb: Add declarations to avoid assumption of visible
812         operations on type System.Address (since these might not be available
813         if Address is a non-private type for which the operations are made
814         abstract).
815
816         * lib.ads, lib.adb (Synchronize_Serial_Number): New procedure.
817
818         * exp_intr.adb: Minor comment update
819
820         * exp_aggr.adb, exp_attr.adb, exp_ch13.adb: Minor reformatting.
821
822         * 5omastop.adb: Add declarations to avoid assumption of visible
823         operations on type System.Address (since these might not be available
824         if Address is a non-private type for which the operations
825         are made abstract).
826
827 2004-04-19  Vincent Celier  <celier@gnat.com>
828
829         * switch-m.adb: (Scan_Make_Switches): Process new switch -eL
830
831         * prj-pars.ads (Parse): New Boolean parameter Process_Languages,
832         defaulted to Ada.
833
834         * prj-proc.adb (Process): New Boolean parameter Process_Languages,
835         defaulted to Ada.
836         Call Check with Process_Languages.
837         (Check): New Boolean parameter Process_Languages. Call Recursive_Check
838         with Process_Languages.
839         (Recursive_Check): New Boolean parameter Process_Languages. Call
840         Nmsc.Ada_Check or Nmsc.Other_Languages_Check according to
841         Process_Languages.
842
843         * prj-proc.ads (Process): New Boolean parameter Process_Languages,
844
845         * prj-util.ads, prj-util.adb (Executable_Of): New Boolean
846         parameter Ada_Main, defaulted to True.
847         Check for Ada specific characteristics only when Ada_Main is True.
848
849         * opt.ads: (Follow_Links): New Boolean flag for gnatmake
850
851         * prj.adb: (Project_Empty): Add new Project_Data components.
852
853         * prj.ads: New types and tables for non Ada languages.
854         (Project_Data): New components Languages, Impl_Suffixes,
855         First_Other_Source, Last_Other_Source, Imported_Directories_Switches,
856         Include_Path, Include_Data_Set.
857
858         * prj-env.ads, prj-env.adb: Minor reformatting
859
860         * prj-nmsc.ads, prj-nmsc.adb: (Other_Languages_Check): New procedure
861         Put subprograms in alphabetical order
862
863         * prj-pars.adb (Parse): New Boolean parameter Process_Languages,
864         defaulted to Ada; Call Prj.Proc.Process with Process_Languages and
865         Opt.Follow_Links.
866
867         * mlib-prj.adb: Back out modification in last version, as they are
868         incorrect.
869         (Build_Library.Check_Libs): Remove useless pragma Warnings (Off)
870
871         * make.adb: (Mains): Moved to package Makeutl
872         (Linker_Opts): Moved to package Makeutl
873         (Is_External_Assignment): Moved to package Makeutl
874         (Test_If_Relative_Path): Moved to package Makeutl
875         (Gnatmake): Move sorting of linker options to function
876         Makeutl.Linker_Options_Switches.
877
878         * makeutl.ads, makeutl.adb: New files.
879
880         * Makefile.in: Add makeutl.o to the object files for gnatmake
881
882         * makeusg.adb: Add line for new switch -eL.
883
884         * gnatls.adb (Image): New function.
885         (Output_Unit): If in verbose mode, output the list of restrictions
886         specified by pragmas Restrictions.
887
888         * 5bml-tgt.adb, 5vml-tgt.adb (Build_Dynamic_Library): Do not use
889         Text_IO.
890
891         * a-calend.adb (Split): Shift the date by multiple of 56 years, if
892         needed, to put it in the range 1970 (included) - 2026 (excluded).
893         (Time_Of): Do not shift Unix_Min_Year (1970).
894         Shift the date by multiple of 56 years, if needed, to put it in the
895         range 1970 (included) - 2026 (excluded).
896
897         * adaint.h, adaint.c (__gnat_set_executable): New function.
898
899 2004-04-19  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
900
901         * trans.c (tree_transform, case N_Subprogram_Body): Temporarily push
902         and pop GC context.
903         (tree_transform, case N_Procedure_Call): Fix typo in setting TREE_TYPE.
904         (tree_transform, case N_Label): Don't set LABEL_STMT_FIRST_IN_EH.
905         (tree_transform, case N_Procedure_Call_Statement): Build a tree.
906         (tree_transform, case N_Code_Statement): Likewise.
907         (gnat_expand_stmt, case LABEL_STMT): Don't look at
908         LABEL_STMT_FIRST_IN_EH.
909         (gnat_expand_stmt, case ASM_STMT): New case.
910
911         * utils2.c (build_unary_op): Properly set TREE_READONLY of
912         UNCONSTRAINED_ARRAY_REF.
913
914         * utils.c (poplevel): Temporarily push/pop GC context around inline
915         function expansion.
916
917         * decl.c (maybe_variable): Properly set TREE_READONLY of
918         UNCONSTRAINED_ARRAY_REF.
919         (make_packable_type): Only reference TYPE_IS_PADDING_P for RECORD_TYPE.
920
921         * ada-tree.def: (ASM_STMT): New.
922
923         * ada-tree.h: (LABEL_STMT_FIRST_IN_EH): Deleted.
924         (ASM_STMT_TEMPLATE, ASM_STMT_OUTPUT, ASM_STMT_ORIG_OUT,
925         ASM_STMT_INPUT): New.
926         (ASM_STMT_CLOBBER): Likewise.
927
928 2004-04-19  Thomas Quinot  <quinot@act-europe.fr>
929
930         * a-except.adb, s-parint.ads, s-parint.adb, types.ads, types.h: Use
931         general rcheck mechanism to raise Program_Error for E.4(18), instead
932         of a custom raiser in System.Partition_Interface.
933         Part of general cleanup work before PolyORB integration.
934
935         * snames.ads, snames.adb: Add new runtime library entities and names
936         for PolyORB DSA.
937
938         * sem_dist.ads, sem_dist.adb (Get_Subprogram_Id): Move from sem_dist to
939         exp_dist.
940         (Build_Subprogram_Id): New subprogram provided by exp_dist
941         Code reorganisation in preparation for PolyORB integration.
942
943         * exp_dist.ads, exp_dist.adb (Get_Subprogram_Id): Move from sem_dist to
944         exp_dist.
945         (Build_Subprogram_Id): New subprogram provided by exp_dist
946
947         * sem_ch4.adb (Analyze_One_Call): Fix error message for mismatch in
948         actual parameter types for call to dereference of an
949         access-to-subprogram type.
950
951         * rtsfind.ads: Add new runtime library entities and names for PolyORB
952         DSA.
953
954         * gnatlink.adb (Value): Remove. Use Interfaces.C.Strings.Value
955         instead, which has the same behaviour here since we never pass it a
956         NULL pointer.
957
958         * link.c (run_path_option, Solaris case): Use -Wl, as for other
959         platforms.
960
961         * Makefile.in: adjust object file lists for gnatlink and gnatmake
962         to account for new dependency upon Interfaces.C.Strings + link.o
963         For x86 FreeBSD, use 86numaux.
964
965         * make.adb, gnatcmd.adb: Linker_Library_Path_Option has been moved up
966         from Mlib.Tgt to Mlib.
967
968         * mlib.ads, mlib.adb (Linker_Library_Path_Option): New subprogram, now
969         target-independent.
970
971         * mlib-tgt.ads, mlib-tgt.adb (Linker_Library_Path_Option): Remove
972         target-specific versions of this subprogram, now implemented as a
973         target-independent function in Mlib.
974
975         * 5aml-tgt.adb, 5bml-tgt.adb, 5gml-tgt.adb, 5hml-tgt.adb, 5lml-tgt.adb,
976         5sml-tgt.adb, 5vml-tgt.adb, 5zml-tgt.adb, 5wml-tgt.adb
977         (Linker_Library_Path_Option): Remove target-specific versions of this
978         subprogram, now implemented as a target-independent function in Mlib.
979
980         * atree.adb: (Allocate_Initialize_Node): New subprogram.
981         Factors out node table slots allocation.
982         (Fix_Parents): New subprogram.
983         Encapsulate the pattern of fixing up parent pointers for syntactic
984         children of a rewritten node.
985         (New_Copy_Tree): Use New_Copy to copy non-entity nodes.
986         (Rewrite): Use New_Copy when creating saved copy of original node.
987         (Replace): Use Copy_Node to copy nodes.
988
989 2004-04-19  Javier Miranda  <miranda@gnat.com>
990
991         * sprint.adb (Sprint_Node_Actual): Give support to the new
992         Access_To_Subprogram node available in Access_Definition nodes. In
993         addition, give support to the AI-231 node fields: null-exclusion,
994         all-present, constant-present.
995
996         * sem_util.ads, sem_util.adb: (Has_Declarations): New subprogram
997
998         * sinfo.ads, sinfo.adb:
999         New field Access_To_Subprogram_Definition in Access_Definition nodes
1000
1001         * sem_ch6.adb (Process_Formals): Move here the code that creates and
1002         decorates internal subtype declaration corresponding to the
1003         null-excluding formal. This code was previously in Set_Actual_Subtypes.
1004         In addition, carry out some code cleanup on this code. In case of
1005         access to protected subprogram call
1006         Replace_Anonymous_Access_To_Protected_Subprogram.
1007         (Set_Actual_Subtypes): Code cleanup.
1008
1009         * sem_ch8.adb (Analyze_Object_Renaming): Remove un-necessary call to
1010         Find_Type in case of anonymous access renamings. Add warning in case of
1011         null-excluding attribute used in anonymous access renaming.
1012
1013         * sem_ch3.ads (Replace_Anonymous_Access_To_Protected_Subprogram): New
1014         subprogram
1015
1016         * sem_ch3.adb (Replace_Anonymous_Access_To_Protected_Subprogram): New
1017         subprogram.
1018         (Access_Definition): In case of anonymous access to subprograms call
1019         the corresponding semantic routine to decorate the node.
1020         (Access_Subprogram_Declaration): Addition of some comments indicating
1021         some code that probably should be added here. Detected by comparison
1022         with the access_definition subprogram.
1023         (Analyze_Component_Declaration): In case of access to protected
1024         subprogram call Replace_Anonymous_Access_To_Protected.
1025         (Array_Type_Declaration): In case of access to protected subprogram call
1026         Replace_Anonymous_Access_To_Protected_Subprogram.
1027         (Process_Discriminants): In case of access to protected subprogram call
1028         Replace_Anonymous_Access_To_Protected_Subprogram.
1029
1030         * par.adb (P_Access_Definition): New formal that indicates if the
1031         null-exclusion part was present.
1032         (P_Access_Type_Definition): New formal that indicates if the caller has
1033         already parsed the null-excluding part.
1034
1035         * par-ch3.adb (P_Subtype_Declaration): Code cleanup.
1036         (P_Identifier_Declarations): Code cleanup and give support to renamings
1037         of anonymous access to subprogram types.
1038         (P_Derived_Type_Def_Or_Private_Ext_Decl): Code cleanup.
1039         (P_Array_Type_Definition): Give support to AI-254.
1040         (P_Component_Items): Give support to AI-254.
1041         (P_Access_Definition): New formal that indicates if the header was
1042         already parsed by the caller.
1043         (P_Access_Type_Definition): New formal that indicates if the caller has
1044         already parsed the null-excluding part.
1045
1046         * par-ch6.adb (P_Formal_Part): Add the null-excluding parameter to the
1047         call to P_Access_Definition.
1048
1049 2004-04-19  Geert Bosch  <bosch@gnat.com>
1050
1051         * checks.adb (Apply_Float_Conversion_Check): New procedure to implement
1052         the delicate semantics of floating-point to integer conversion.
1053         (Apply_Type_Conversion_Checks): Use Apply_Float_Conversion_Check.
1054
1055         * eval_fat.adb (Machine_Mantissa): Moved to spec.
1056         (Machine_Radix): New function.
1057
1058         * eval_fat.ads (Machine_Mantissa): Moved from body for use in
1059         conversion checks.
1060         (Machine_Radix): New function also for use in conversion checks.
1061
1062 2004-04-19  Ed Schonberg  <schonberg@gnat.com>
1063
1064         * par-prag.adb (Source_File_Name_Project): Fix typo in error message.
1065
1066         * exp_ch9.adb (Expand_Access_Protected_Subprogram_Type): Call analyze
1067         to decorate the access-to-protected subprogram and the equivalent type.
1068
1069         * checks.adb (Null_Exclusion_Static_Checks): Code cleanup. Give support
1070         to anonymous access to subprogram types.
1071
1072         * exp_ch4.adb (Expand_N_In): Preserve Static flag before
1073         constant-folding, for legality checks in contexts that require an RM
1074         static expression.
1075
1076         * exp_ch6.adb (Expand_N_Function_Call): If call may generate large
1077         temporary but stack checking is not enabled, increment serial number
1078         to so that symbol generation is consistent with and without stack
1079         checking.
1080
1081         * exp_util.ads, exp_util.adb (May_Generate_Large_Temp): Predicate is
1082         independent on whether stack checking is enabled, caller must check
1083         the corresponding flag.
1084
1085         * sem_ch3.adb (Constrain_Index): Index bounds given by attributes need
1086         range checks.
1087         (Build_Derived_Concurrent_Type): Inherit Is_Constrained flag from
1088         parent if it has discriminants.
1089         (Build_Derived_Private_Type): Constructed full view does
1090         not come from source.
1091         (Process_Discriminants): Default discriminants on a tagged type are
1092         legal if this is the internal completion of a private untagged
1093         derivation.
1094
1095         * sem_ch6.adb (Set_Actual_Subtypes): The generated declaration needs
1096         no constraint checks, because it corresponds to an existing object.
1097
1098         * sem_prag.adb (Process_Convention): Pragma applies
1099         only to subprograms in the same declarative part, i.e. the same unit,
1100         not the same scope.
1101
1102         * sem_res.adb (Valid_Conversion): In an instance or inlined body,
1103         ignore type mismatch on a numeric conversion if expression comes from
1104         expansion.
1105
1106 2004-04-19  Sergey Rybin  <rybin@act-europe.fr>
1107
1108         * sem_elim.adb (Process_Eliminate_Pragma): Remove the processing for
1109         Homonym_Number parameter, add processing for Source_Location parameter
1110         corresponding.
1111         (Check_Eliminated): Remove the check for homonym numbers, add the check
1112         for source location traces.
1113
1114         * sem_elim.ads (Process_Eliminate_Pragma): Replace Arg_Homonym_Number
1115         with Arg_Source_Location corresponding to the changes in the format of
1116         the pragma.
1117
1118         * sem_prag.adb: (Analyze_Pragma): Changes in the processing of
1119         Eliminate pragma corresponding to the changes in the format of the
1120         pragma: Homonym_Number is replaced with Source_Location, two ways of
1121         distinguishing homonyms are mutially-exclusive.
1122
1123 2004-04-19  Joel Brobecker  <brobecker@gnat.com>
1124
1125         * get_targ.ads (Get_No_Dollar_In_Label): Remove.
1126
1127         * exp_dbug.adb (Output_Homonym_Numbers_Suffix): Remove use of
1128         No_Dollar_In_Label, no longer necessary, as it is always True.
1129         (Strip_Suffixes): Likewise.
1130
1131 2004-04-19  Gary Dismukes  <dismukes@gnat.com>
1132
1133         * s-stalib.ads (type Exception_Code): Use Integer'Size for exponent of
1134         modulus for compatibility with size clause on targets with 16-bit
1135         Integer.
1136
1137         * layout.adb (Discrimify): In the case of private types, set Vtyp to
1138         full type to fix type mismatches on calls to size functions for
1139         discriminant-dependent array components.
1140
1141 2004-04-19  Jerome Guitton  <guitton@act-europe.fr>
1142
1143         * Makefile.in (gnatlib-zcx): New target, for building a ZCX run-time
1144         lib.
1145
1146 2004-04-19  Pascal Obry  <obry@gnat.com>
1147
1148         * mdll-utl.adb (Locate): New version is idempotent.
1149
1150 2004-04-17  Laurent Guerby <laurent@guerby.net>
1151
1152         PR ada/14988 (partial)
1153         * impunit.adb: Fix typo.
1154
1155 2004-04-14  Nathanael Nerode  <neroden@gcc.gnu.org>
1156
1157         * Make-lang.in: Remove obsolete rts-none, rts-cert, install-rts-none,
1158         and install-rts-cert targets.  Remove all gnatlib and gnattools
1159         targets and all other rts-* targets (moved to libada).  Remove (now)
1160         unused Make variables CHMOD, CHMOD_AX_FLAGS, shext, THREAD_KIND,
1161         TRACE, GNATLIBFLAGS, GNATLIBCFLAGS.
1162
1163 2004-04-08  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1164
1165         * trans.c (tree_transform): Shortcut returning error_mark_node for
1166         statements in annotate_only_mode.
1167         (tree_transform, case N_Label, case N_Return_Statement,
1168         N_Goto_Statement): Make statement tree instead of generating code.
1169         (tree_transform, case N_Assignment_Statement): No longer check
1170         type_annotate_only.
1171         (gnat_expand_stmt, case GOTO_STMT, case LABEL_STMT, case
1172         RETURN_STMT): New.
1173         (first_nondeleted_insn, build_block_stmt, make_expr_stmt_from_rtl):
1174         New fcns.
1175         (gnat_to_gnu): Collect any RTL generated and deal with it.
1176         (tree_transform, case N_And_Then): Refine when have non-null RTL_EXPR.
1177         (tree_transform case N_If_Statement): Rewrite to make IF_STMT.
1178         (gnat_expand_stmt, case BLOCK_STMT, IF_STMT): New cases.
1179
1180         * ada-tree.def (GOTO_STMT, LABEL_STMT, RETURN_STMT): New tree nodes.
1181
1182         * ada-tree.def (EXPR_STMT): Fix typo in name.
1183         (BLOCK_STMT, IF_STMT): New nodes.
1184
1185         * ada-tree.h (GOTO_STMT_LABEL, LABEL_STMT_LABEL,
1186         LABEL_STMT_FIRST_IN_EH): New macros.
1187         (RETURN_STMT_EXPR): Likewise.
1188
1189         * ada-tree.h: (BLOCK_STMT_LIST, IF_STMT_COND, IF_STMT_TRUE,
1190         IF_STMT_ELSEIF, IF_STMT_ELSE): New macros.
1191
1192 2004-04-08  Thomas Quinot  <quinot@act-europe.fr>
1193
1194         * atree.ads: Correct documentation on extended nodes.
1195
1196         * link.c: Set run_path_option for FreeBSD.
1197
1198 2004-04-08  Vincent Celier  <celier@gnat.com>
1199
1200         * mlib-prj.adb (Build_Library.Check_Libs): On OpenVMS, if dec.ali is
1201         one of the ALI file, do not link with DEC lib.
1202
1203         * par.adb Remove the last two characters ("%s" or "%b") when checking
1204         if a language defined unit may be recompiled.
1205
1206 2004-04-08  Ed Schonberg  <schonberg@gnat.com>
1207
1208         * sem_ch4.adb (Remove_Abstract_Operations): Improve error message when
1209         removal of abstract operation leaves no possible interpretation for
1210         expression.
1211
1212         * sem_eval.adb (Eval_Qualified_Expression): Use
1213         Set_Raises_Constraint_Error on node when needed, so that it does not
1214         get optimized away by subsequent optimizations.
1215
1216         * sem_res.adb (Resolve_Intrinsic_Operator): Save interpretations of
1217         operands even when they are not wrapped in a type conversion.
1218
1219 2004-04-08  Olivier Hainque  <hainque@act-europe.fr>
1220
1221         * sem_prag.adb (Set_Exported): Warn about making static as result of
1222         export only when the export is coming from source. This may be not
1223         be true e.g. on VMS where we expand export pragmas for exception codes
1224         together with imported or exported exceptions, and we don't want the
1225         user to be warned about something he didn't write.
1226
1227 2004-04-08  Thomas Quinot  <quinot@act-europe.fr>
1228
1229         * sem_util.adb (Note_Possible_Modification): Reorganize to remove code
1230         duplication between normal entities and those declared as renamings.
1231         No functional change.
1232
1233         * s-fileio.ads (Form): Remove pragma Inline, as we cannot currently
1234         inline functions returning an unconstrained result.
1235
1236 2004-04-08  Eric Botcazou  <ebotcazou@act-europe.fr>
1237
1238         * utils.c (type_for_mode): Handle BLKmode and VOIDmode properly, to
1239         conform to what other front-ends do.
1240
1241 2004-04-08  Doug Rupp  <rupp@gnat.com>
1242
1243         * 5vml-tgt.adb: Use Gas instead of VMS Macro to build auto init shared
1244         libraries.
1245
1246 2004-04-06  Pascal Obry  <obry@gnat.com>
1247
1248         * adaint.c (DIR_SEPARATOR): Properly set DIR_SEPARATOR on Win32.
1249
1250         * osint.adb (Program_Name): Do not look past a directory separator.
1251
1252 2004-04-06  Thomas Quinot  <quinot@act-europe.fr>
1253
1254         * atree.adb: Update comment (Rewrite_Substitute_Node no longer exists).
1255
1256         * exp_ch6.adb (Rewrite_Function_Call): Clarify documentation of
1257         requirement for preserving a copy of the original assignment node.
1258
1259         * sinfo.ads: Update comment (Original_Tree -> Original_Node).
1260
1261 2004-04-06  Olivier Hainque  <hainque@act-europe.fr>
1262
1263         (__gnat_initialize [Vxworks]): Enable references to the crtstuff bits
1264         when supported.
1265
1266 2004-04-06  Ed Schonberg  <schonberg@gnat.com>
1267
1268         * sem_ch4.adb (Remove_Abstract_Operations): Extend previous changes to
1269         operator calls in functional notation, and apply
1270         Universal_Interpretation to operands, not to their type.
1271
1272 2004-04-06  Robert Dewar  <dewar@gnat.com>
1273
1274         * 5wdirval.adb: Minor reformatting
1275
1276 2004-04-06  Ed Falis  <falis@gnat.com>
1277
1278         * gnat_rm.texi: Improve a reference to the GCC manual
1279
1280 2004-04-05  Vincent Celier  <celier@gnat.com>
1281
1282         * adaint.h, adaint.c: Add function __gnat_named_file_length
1283
1284         * impunit.adb: Add Ada.Directories to the list
1285
1286         * Makefile.in: Add VMS and Windows versions of
1287         Ada.Directories.Validity package body.
1288
1289         * Makefile.rtl: Add a-direct and a-dirval
1290
1291         * mlib-tgt.ads: Minor comment update.
1292
1293         * a-dirval.ads, a-dirval.adb, 5vdirval.adb, 5wdirval.adb,
1294         a-direct.ads, a-direct.adb: New files.
1295
1296 2004-04-05  Vincent Celier  <celier@gnat.com>
1297
1298         PR ada/13620
1299         * make.adb (Scan_Make_Arg): Pass any -fxxx switches to gnatlink, not
1300         just to the compiler.
1301
1302 2004-04-05  Robert Dewar  <dewar@gnat.com>
1303
1304         * a-except.adb (Exception_Name_Simple): Make sure lower bound of
1305         returned string is 1.
1306
1307         * ali-util.adb: Use proper specific form for Warnings (Off, entity)
1308
1309         * eval_fat.ads: Minor reformatting
1310
1311         * g-curexc.ads: Document that lower bound of returned string values
1312         is always one.
1313
1314         * gnatlink.adb: Add ??? comment for previous change
1315         (need to document why this is VMS specific)
1316
1317         * s-stoele.ads: Minor reformatting
1318
1319         * tbuild.ads: Minor reformatting throughout (new function specs)
1320
1321         * par-ch10.adb (P_Context_Clause): Handle comma instead of semicolon
1322         after WITH.
1323
1324         * scng.adb: Minor reformatting
1325
1326 2004-04-05  Geert Bosch  <bosch@gnat.com>
1327
1328         * eval_fat.adb (Machine): Remove unnecessary suppression of warning.
1329         (Leading_Part): Still perform truncation to machine number if the
1330         specified radix_digits is greater or equal to machine_mantissa.
1331
1332 2004-04-05  Javier Miranda  <miranda@gnat.com>
1333
1334         * par-ch3.adb: Complete documentation of previous change
1335         Correct wrong syntax documentation of the OBJECT_DECLARATION rule
1336         (aliased must appear before constant).
1337
1338         * par-ch4.adb: Complete documentation of previous change.
1339
1340         * par-ch6.adb: Complete documentation of previous change.
1341
1342         * sinfo.ads: Fix typo in commment.
1343
1344 2004-04-05  Ed Schonberg  <schonberg@gnat.com>
1345
1346         * sem_ch3.adb (Inherit_Components): If derived type is private and has
1347         stored discriminants, use its discriminants to constrain parent type,
1348         as is done for non-private derived record types.
1349
1350         * sem_ch4.adb (Remove_Abstract_Operations): New subprogram to implement
1351         Ada 2005 AI-310: an abstract non-dispatching operation is not a
1352         candidate interpretation in an overloaded call.
1353
1354         * tbuild.adb (Unchecked_Convert_To): Preserve conversion node if
1355         expression is Null and target type is not an access type (e.g. a
1356         non-private address type).
1357
1358 2004-04-05  Thomas Quinot  <quinot@act-europe.fr>
1359
1360         * exp_ch6.adb (Rewrite_Function_Call): When rewriting an assignment
1361         statement whose right-hand side is an inlined call, save a copy of the
1362         original assignment subtree to preserve enough consistency for
1363         Analyze_Assignment to proceed.
1364
1365         * sem_ch5.adb (Analyze_Assignment): Remove a costly copy of the
1366         complete assignment subtree which is now unnecessary, as the expansion
1367         of inlined call has been improved to preserve a consistent assignment
1368         tree.  Note_Possible_Modification must be called only
1369         after checks have been applied, or else unnecessary checks will
1370         be generated.
1371
1372         * sem_util.adb (Note_Possible_Modification): Reorganise the handling
1373         of explicit dereferences that do not Come_From_Source:
1374          - be selective on cases where we must go back to the dereferenced
1375            pointer (an assignment to an implicit dereference must not be
1376            recorded as modifying the pointer);
1377          - do not rely on Original_Node being present (Analyze_Assignment
1378            calls Note_Possible_Modification on a copied tree).
1379
1380         * sem_warn.adb (Check_References): When an unset reference to a pointer
1381         that is never assigned is encountered, prefer '<pointer> may be null'
1382         warning over '<pointer> is never assigned a value'.
1383
1384 2004-04-05  Ramon Fernandez  <fernandez@gnat.com>
1385
1386         * tracebak.c: Change STOP_FRAME in ppc vxworks to be compliant with
1387         the ABI.
1388
1389 2004-04-05  Olivier Hainque  <hainque@act-europe.fr>
1390
1391         * 5gmastop.adb (Pop_Frame): Comment out the pragma Linker_Option for
1392         libexc. We currently don't reference anything in this library and
1393         linking it in triggers linker warnings we don't want to see.
1394
1395         * init.c: Update comments.
1396
1397 2004-04-05  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1398
1399         * decl.c (gnat_to_gnu_entity): Use TYPE_READONLY.
1400         * utils.c (create_field_decl): Likewise.
1401         * utils2.c (build_unary_op, gnat_build_constructor): Likewise.
1402
1403 2004-04-02  Arnaud Charlet  <charlet@act-europe.fr>
1404
1405         * gnat-style.texi, gnat_rm.texi, gnat_ugn.texi: Remove RCS tags.
1406         Replace ifinfo by ifnottex, to make makeinfo --html happy again.
1407         Add info directory entry and category.
1408
1409 2004-04-02  Jan Hubicka  <jh@suse.cz>
1410
1411         * utils.c: Include function.h
1412         (end_subprog_body): Clear DECL_STRUCT_FUNCTION.
1413
1414 2004-04-01  Arnaud Charlet  <charlet@act-europe.fr>
1415
1416         PR ada/14150
1417         * Make-lang.in: Clean up generation of documentation
1418
1419         * gnat-style.texi, gnat_rm.texi, ug_words: Resync with AdaCore version
1420
1421         * xgnatug.adb: Removed, replaced by xgnatugn.adb
1422
1423         * xgnatugn.adb: Replaces xgnatug.adb
1424
1425         * gnat_ug.texi: Removed, replaced by gnat_ugn.texi
1426
1427         * gnat_ugn.texi: Replaces gnat_ug.texi. Resync with AdaCore version
1428
1429         * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
1430         gnat_ug_wnt.texi: Removed.
1431
1432 2004-04-01  Arnaud Charlet  <charlet@act-europe.fr>
1433
1434         * utils2.c: Update copyright notice.
1435
1436 2004-04-01  Robert Dewar  <dewar@gnat.com>
1437
1438         * checks.adb: Minor reformatting throughout
1439         Note that prev checkin added RM reference to alignment warning
1440
1441 2004-04-01  Ed Schonberg  <schonberg@gnat.com>
1442
1443         * exp_aggr.adb (Get_Component_Val): Treat a string literal as
1444         non-static when building aggregate for bit-packed array.
1445
1446         * exp_ch4.adb (Expand_N_Slice): If a packed slice is an actual of a
1447         function call that is itself the actual in a procedure call, build
1448         temporary for it.
1449
1450         * exp_pakd.adb (Expand_Bit_Packed_Element_Set): If right-hand side is
1451         a string literal, create a temporary for it, constant folding only
1452         handles scalars here.
1453
1454 2004-04-01  Vincent Celier  <celier@gnat.com>
1455
1456         * ali-util.adb (Post_Scan, Error_Msg, Error_Msg_S, Error_Msg_SC,
1457         Error_Msg_SP): New empty procedures to instantiate the Scanner.
1458         (Style, Scanner): Instantiations of Styleg and Scng to be able to scan
1459         tokens.
1460         (Accumulate_Checksum, Initialize_Checksum): Remove procedures.
1461         (Get_File_Checksum): Use the instantiated scanner to scan all the tokens
1462         and get the checksum.
1463
1464         * make.adb (Gnatmake): Do not insert into Q the Main_Source if it is
1465         already in the Q.
1466         Increase the Marking_Label at the end of the Multiple_Main_Loop,
1467         instead of at the beginning.
1468
1469         * osint.adb (Lib_File_Name): Use Multi_Unit_Index_Character, not '~'
1470         directly.
1471         (Osint package elaboration): Change Multi_Unit_Index_Character to '$' if
1472         on VMS.
1473
1474         * osint.ads (Multi_Unit_Index_Character): New Character global variable
1475
1476         * osint-c.adb (Set_Library_Info_Name): Use Multi_Unit_Index_Character,
1477         not '~' directly.
1478
1479         * par.adb: Remove test on file name to detect language defined units.
1480         Add test on unit name, after parsing, to detect language defined units
1481         that are not compiled with -gnatg (except System.RPC and its children)
1482
1483         * par-ch10.adb (P_Compilation_Unit): In multi-unit sources, scan the
1484         following units without style checking.
1485
1486         * switch-c.adb: Change -gnatC to -gnateI
1487
1488         * usage.adb: Document new switch -gnateInnn
1489
1490         * scng.adb (Accumulate_Token_Checksum): New procedure
1491         (Scan): Call Accumulate_Token_Checksum after each identifier, reserved
1492         word or literal number.
1493         (Scan.Nlit.Scan_Integer): Do not accumulate internal '_' in litteral
1494         numbers.
1495
1496 2004-04-01  Thomas Quinot  <quinot@act-europe.fr>
1497
1498         * a-tasatt.adb,
1499         g-comlin.adb, sinput-c.adb, s-secsta.adb, s-tpobop.adb,
1500         switch-m.adb, 56taprop.adb, 5ginterr.adb, 5gmastop.adb,
1501         5staprop.adb, 5vinterr.adb, 5vtaprop.adb, 5vtpopde.adb,
1502         5vtpopde.adb: Add missing 'constant' keywords.
1503
1504 2004-04-01  Javier Miranda  <miranda@gnat.com>
1505
1506         * par-ch4.adb: (P_Allocator): Code cleanup
1507
1508         * sem_ch3.adb (Access_Definition): Properly set the null-excluding
1509         attribute.
1510
1511         * sinfo.ads: Complete documentation of previous change
1512
1513 2004-04-01  Pascal Obry  <obry@gnat.com>
1514
1515         * gnatlink.adb (Process_Binder_File): Remove duplicate linker options
1516         only on VMS.  This special handling was done because an old GNU/ld bug
1517         on Windows which has been fixed.
1518
1519 2004-04-01  GNAT Script  <nobody@gnat.com>
1520
1521         * Make-lang.in: Makefile automatically updated
1522
1523 2004-03-31  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1524
1525         * decl.c (gnat_to_gnu_entity, make_type_from_size):
1526         Use TYPE_UNSIGNED, not TREE_UNSIGNED.
1527         * trans.c (tree_transform, convert_with_check): Likewise.
1528         * utils.c (gnat_signed_or_unsigned_type): Likewise.
1529         (build_vms_descriptor, unchecked_convert): Likewise.
1530         * utils2.c (nonbinary_modular_operation): Likewise.
1531
1532 2004-03-29  Javier Miranda  <miranda@gnat.com>
1533
1534         * checks.adb (Null_Exclusion_Static_Checks): New subprogram
1535         (Install_Null_Excluding_Check): Local subprogram that determines whether
1536         an access node requires a runtime access check and if so inserts the
1537         appropriate run-time check.
1538         (Apply_Access_Check): Call Install_Null_Excluding check if required
1539         (Apply_Constraint_Check): Call Install_Null_Excluding check if required
1540
1541         * checks.ads: (Null_Exclusion_Static_Checks): New subprogram
1542
1543         * einfo.ads: Fix typo in comment
1544
1545         * exp_ch3.adb (Build_Assignment): Generate conversion to the
1546         null-excluding type to force the corresponding run-time check.
1547         (Expand_N_Object_Declaration): Generate conversion to the null-excluding
1548         type to force the corresponding run-time check.
1549
1550         * exp_ch5.adb (Expand_N_Assignment_Statement): Generate conversion to
1551         the null-excluding type to force the corresponding run-time check.
1552
1553         * exp_ch6.adb (Expand_Call): Do not generate the run-time check in
1554         case of access types unless they have the null-excluding attribute.
1555
1556         * sprint.adb (Sprint_Node_Actual): Give support to the null-exclusing
1557         part.
1558
1559         * exp_util.ads: Fix typo in comment
1560
1561         * par.adb (P_Null_Exclusion): New subprogram
1562         (P_Subtype_Indication): New formal that indicates if the null-excluding
1563         part has been scanned-out and it was present
1564
1565         * par-ch3.adb, par-ch4.adb, par-ch6.adb: Give support to AI-231
1566
1567         * sem_aggr.adb: (Check_Can_Never_Be_Null): New subprogram
1568         (Aggregate_Constraint_Checks): Generate conversion to the null-excluding
1569         type to force the corresponding run-time check
1570         (Resolve_Aggregate): Propagate the null-excluding attribute to the array
1571         components
1572         (Resolve_Array_Aggregate): Carry out some static checks
1573         (Resolve_Record_Aggregate.Get_Value): Carry out some static check
1574
1575         * sem_ch3.adb (Access_Definition): In Ada 0Y the Can_Never_Be_Null
1576         attribute must be set only if specified by means of the null-excluding
1577         part. In addition, we must also propagate the access-constant attribute
1578         if present.
1579         (Access_Subprogram_Declaration, Access_Type_Declaration,
1580         Analyze_Component_Declaration, Analyze_Object_Declaration,
1581         Array_Type_Declaration, Process_Discriminants,
1582         Analyze_Subtype_Declaration): Propagate the null-excluding attribute
1583         and carry out some static checks.
1584         (Build_Derived_Access_Type): Set the null-excluding attribute
1585         (Derived_Type_Declaration, Process_Subtype): Carry out some static
1586         checks.
1587
1588         * sem_ch4.adb (Analyze_Allocator): Carry out some static checks
1589
1590         * sem_ch5.adb (Analyze_Assignment): Carry out some static checks
1591
1592         * sem_ch6.adb (Process_Formals): Carry out some static checks.
1593         (Set_Actual_Subtypes): Generate null-excluding subtype if the
1594         null-excluding part was present; it is not required to be done here in
1595         case of anonymous access types.
1596         (Set_Formal_Mode): Ada 0Y allows anonymous access to have the null
1597         value.
1598
1599         * sem_res.adb (Resolve_Actuals): Carry out some static check
1600         (Resolve_Null): Allow null in anonymous access
1601
1602         * sinfo.adb: New subprogram Null_Exclusion_Present
1603         All_Present and Constant_Present available on access_definition nodes
1604
1605         * sinfo.ads: New flag Null_Exclusion_Present on subtype_declaration,
1606         object_declaration, derived_type_definition, component_definition,
1607         discriminant_specification, access_to_object_definition,
1608         access_function_definition, allocator, access_procedure_definition,
1609         access_definition, parameter_specification, All_Present and
1610         Constant_Present flags available on access_definition nodes.
1611
1612 2004-03-29  Robert Dewar  <dewar@gnat.com>
1613
1614         * fname.adb, fname.ads, fname-sf.adb, fname-uf.adb, fname-uf.ads,
1615         gnat1drv.adb, lib.adb, lib.ads, lib-load.adb, lib-writ.adb,
1616         opt.ads, osint.adb, osint.ads, osint-c.adb, par.adb,
1617         par-ch10.adb, par-load.adb, par-prag.adb, sfn_scan.adb,
1618         sfn_scan.ads, sinput-l.adb, sinput-l.ads, switch-c.adb,
1619         sem_prag.adb: Updates to handle multiple units/file
1620
1621         * par.adb: Change test for s-rpc to s-rp for detecting rpc and children
1622
1623         * par.adb, memtrack.adb, prj-makr.adb, prj-part.adb,
1624         sem_util.adb: Minor reformatting
1625
1626         * sem_ch12.adb: Add comment for previous change
1627
1628 2004-03-29  Laurent Pautet  <pautet@act-europe.fr>
1629
1630         * osint.adb (Executable_Prefix): Set Exec_Name to the current
1631         executable name when not initialized. Otherwise, use its current value.
1632
1633         * osint.ads (Exec_Name): Move Exec_Name from body to spec in order to
1634         initialize it to another executable name than the current one. This
1635         allows to configure paths for an executable name (gnatmake) different
1636         from the current one (gnatdist).
1637
1638 2004-03-29  Ed Schonberg  <schonberg@gnat.com>
1639
1640         * exp_ch6.adb (Expand_Call): A call to a function declared in the
1641         current unit cannot be inlined if it appears in the body of a withed
1642         unit, to avoid order of elaboration problems in gigi.
1643
1644         * exp_ch9.adb (Build_Protected_Sub_Specification): Generate debugging
1645         information for protected (wrapper) operation as well, to simplify gdb
1646         use.
1647
1648         * sem_ch6.adb (Analyze_Subprogram_Body): For a private operation in a
1649         protected body, indicate that the entity for the generated spec comes
1650         from source, to ensure that references are properly generated for it.
1651         (Build_Body_To_Inline): Do not inline a function that returns a
1652         controlled type.
1653
1654         * sem_prag.adb (Process_Convention): If subprogram is overloaded, only
1655         apply convention to homonyms that are declared explicitly.
1656
1657         * sem_res.adb (Make_Call_Into_Operator): If the operation is a function
1658         that renames an equality operator and the operands are overloaded,
1659         resolve them with the declared formal types, before rewriting as an
1660         operator.
1661
1662 2004-03-29  GNAT Script  <nobody@gnat.com>
1663
1664         * Make-lang.in: Makefile automatically updated
1665
1666 2004-03-25  Vasiliy Fofanov  <fofanov@act-europe.fr>
1667
1668         * memtrack.adb: Log realloc calls, which are treated as free followed
1669         by alloc.
1670
1671 2004-03-25  Vincent Celier  <celier@gnat.com>
1672
1673         * prj-makr.adb (Process_Directories): Detect when a file contains
1674         several units. Do not include such files in the config pragmas or
1675         in the naming scheme.
1676
1677         * prj-nmsc.adb (Record_Source): New parameter Trusted_Mode.
1678         Resolve links only when not in Trusted_Mode.
1679         (Find_Sources, Recursive_Find_Dirs, Find_Source_Dirs, Locate_Directory):
1680         Do not resolve links for the display names.
1681
1682         * prj-part.adb (Parse_Single_Project, Project_Path_Name_Of): Do not
1683         resolve links when computing the display names.
1684
1685 2004-03-25  Thomas Quinot  <quinot@act-europe.fr>
1686
1687         * sem_attr.adb (Check_Dereference): When the prefix of a 'Tag
1688         attribute reference does not denote a subtype, it can be any
1689         expression that has a classwide type, potentially after an implicit
1690         dereference.  In particular, the prefix can be a view conversion for
1691         a classwide type (for which Is_Object_Reference holds), but it can
1692         also be a value conversion for an access-to-classwide type. In the
1693         latter case, there is an implicit dereference, and the original node
1694         for the prefix does not verify Is_Object_Reference.
1695
1696         * sem_util.adb (Is_Dependent_Component_Of_Mutable_Object): A view
1697         conversion of a discriminant-dependent component of a mutable object
1698         is one itself.
1699
1700 2004-03-25  Ed Schonberg  <schonberg@gnat.com>
1701
1702         * freeze.adb (Freeze_Entity): When an inherited subprogram is
1703         inherited, has convention C, and has unconstrained array parameters,
1704         place the corresponding warning on the derived type declaration rather
1705         than the original subprogram.
1706
1707         * sem_ch12.adb (Instantiate_Formal_Subprogram): Set From_Default
1708         indication on renaming declaration, if formal has a box and actual
1709         is absent.
1710
1711         * sem_ch8.adb (Analyze_Subprogram_Renaming): Use From_Default flag to
1712         determine whether to generate an implicit or explicit reference to
1713         the renamed entity.
1714
1715         * sinfo.ads, sinfo.adb: New flag From_Default, to indicate that a
1716         subprogram renaming comes from a defaulted formal subprogram in an
1717         instance.
1718
1719 2004-03-25  Gary Dismukes  <dismukes@gnat.com>
1720
1721         * sem_elab.adb (Check_Elab_Call): Refine loop that checks for default
1722         value expressions to ensure that calls within a component definition
1723         will be checked (since those are evaluated during the record type's
1724         elaboration).
1725
1726 2004-03-25  Arnaud Charlet  <charlet@act-europe.fr>
1727
1728         * s-tpobop.adb: Code clean up:
1729         (Requeue_Call): Extract from PO_Service_Entries to remove duplicated
1730         code.
1731         (PO_Do_Or_Queue): Remove duplicated code and use Requeue_Call.
1732
1733 2004-03-25  Jose Ruiz  <ruiz@act-europe.fr>
1734
1735         * Makefile.in: Clean up in the ravenscar run time.
1736
1737 2004-03-23  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1738
1739         * decl.c (gnat_to_gnu_entity, case E_Access_Type): Pass value
1740         of No_Strict_Aliasing to build_pointer_type_for_mode.
1741         * utils.c (update_pointer_to): Walk pointer and ref chains.
1742
1743 2004-03-22  Cyrille Comar  <comar@act-europe.fr>
1744
1745         * ali.ads: Fix Comment about Dynamic_Elab.
1746
1747         * gnatls.adb (Output_Unit): Add output of many flags (Dynamic_Elab,
1748         Has_RACW, Is_Generic, etc.)
1749         (Output_Object, Gnatls): Take into account ALI files not attached to
1750         an object.
1751
1752 2004-03-22  Vincent Celier  <celier@gnat.com>
1753
1754         * gprep.adb: Change all String_Access to Name_Id
1755         (Is_ASCII_Letter): new function
1756         (Double_File_Name_Buffer): New procedure
1757         (Preprocess_Infile_Name): New procedure
1758         (Process_Files): New procedure
1759         (Gnatprep): Check if output and input are existing directories.
1760         Call Process_Files to do the real job.
1761
1762 2004-03-22  Robert Dewar  <dewar@gnat.com>
1763
1764         * prj-env.adb, prj-nmsc.ads, prj-proc.ads,
1765         s-stache.ads, s-stache.adb: Comment updates. Minor reformatting.
1766
1767 2004-03-22  Sergey Rybin  <rybin@act-europe.fr>
1768
1769         * scn.adb (Contains): Add check for EOF, is needed for a degenerated
1770         case when the source contains only comments.
1771
1772 2004-03-22  Ed Schonberg  <schonberg@gnat.com>
1773
1774         * sem_ch10.adb (Analyze_Compilation_Unit): When generating a
1775         declaration for a child subprogram body that acts as a spec, indicate
1776         that the entity in the declaration needs debugging information.
1777
1778         * sem_ch3.adb (Complete_Private_Subtype): Do not build an underlying
1779         full view if the subtype is created for a constrained record component;
1780         gigi has enough information to construct the record, and there is no
1781         place in the tree for the declaration.
1782
1783         * sem_ch6.adb (Build_Body_To_Inline): Use an internal name without
1784         serial number for the dummy body that is built for analysis, to avoid
1785         inconsistencies in the generation of internal names when compiling
1786         with -gnatN.
1787
1788 2004-03-22  Thomas Quinot  <quinot@act-europe.fr>
1789
1790         * sem_util.adb (Is_Object_Reference): A view conversion denotes an
1791         object.
1792
1793 2004-03-22  GNAT Script  <nobody@gnat.com>
1794
1795         * Make-lang.in: Makefile automatically updated
1796
1797 2004-03-21  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1798
1799         * decl.c (gnat_to_gnu_entity): Use SUBSTITUTE_PLACEHOLDER_IN_EXPR.
1800         * trans.c (tree_transform, emit_index_check): Likewise.
1801         * utils.c (build_template): Likewise.
1802         (max_size, convert): Remove handling of WITH_RECORD_EXPR.
1803         (maybe_unconstrained_array, unchecked_convert): Likewise.
1804         * utils2.c (gnat_truthvalue_conversion, build_binary_op): Likewise.
1805         (build_unary_op): Likewise.
1806         (compare_arrays, build_allocator): Use SUBSTITUTE_PLACEHOLDER_IN_EXPR.
1807         (fill_vms_descriptor): Likewise.
1808         (build_call_alloc_dealloc): Likewise.
1809         ALIGN is unsigned.
1810         * gigi.h (build_call_alloc_dealloc): Alignment is unsigned.
1811
1812 2004-03-20  Joseph S. Myers  <jsm@polyomino.org.uk>
1813
1814         PR other/14630
1815         * gnat_ug.texi: Add info directory category and entry.
1816         * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
1817         gnat_ug_wnt.texi: Regenerate.
1818
1819 2004-03-19  Arnaud Charlet  <charlet@act-europe.fr>
1820
1821         * ada-tree.h: Update copyright notice.
1822         Minor reformatting.
1823
1824 2004-03-19  Olivier Hainque  <hainque@act-europe.fr>
1825
1826         * decl.c (gnat_to_gnu_entity, case E_Exception): Handle VMS exceptions
1827         as regular exception objects and not as mere integers representing the
1828         condition code.  The latter approach required some dynamics to mask off
1829         severity bits, which did not fit well into the GCC table based model.
1830         (gnat_to_gnu_entity, objects): Don't supply an external name for VMS
1831         exception data objects. We don't it and it would conflict with the other
1832         external symbol we have to generate for such exceptions.
1833
1834         * trans.c (tree_transform, case N_Exception_Handler): Remove part of
1835         the special code for VMS exceptions, since these are now represented
1836         as regular exceptions objects.
1837
1838 2004-03-19 Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1839
1840         * decl.c (debug_no_type_hash): Remove.
1841         (gnat_to_gnu_entity, case E_Array_Type): Don't set and clear it.
1842         * misc.c (LANG_HOOK_HASH_TYPE): Redefine.
1843
1844 2004-03-19  Laurent Guerby <laurent@guerby.net>
1845
1846         * sem_prag.adb (Suppress_Unsuppress_Echeck): use loop instead of
1847         aggregate, allows bootstrap from 3.3 on powerpc-darwin.
1848
1849 2004-03-18  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1850
1851         * ada-tree.h (TYPE_LEFT_JUSTIFIED_MODULAR_P): Add checking.
1852         (TYPE_CONTAINS_TEMPLATE_P, TYPE_OBJECT_RECORD_TYPE): Likewise.
1853         (TYPE_RM_SIZE_INT): Directly use type.values.
1854         (TREE_LOOP_ID): Clean up check.
1855         * decl.c (gnat_to_gnu_entity, case E_Enumeration_Type): Use
1856         TYPE_VALUES, not TYPE_FIELDS.
1857         * trans.c (convert_with_check): Delay access of bounds of basetype
1858         until sure is numeric.
1859
1860 2004-03-18  Arnaud Charlet  <charlet@act-europe.fr>
1861
1862         * 5atpopsp.adb: Remove RTEMS from list of platforms using this file.
1863
1864         Code clean up:
1865         * 5ataprop.adb, 5ftaprop.adb, 5htaprop.adb, 5itaprop.adb, 5staprop.adb,
1866         5vtaprop.adb, 5wtaprop.adb, 7staprop.adb (Finalize_TCB): Use
1867         Specific.Set instead of direct call to e.g pthread_setspecific.
1868
1869 2004-03-18  Thomas Quinot  <quinot@act-europe.fr>
1870
1871         * adaint.c: Update comments.
1872
1873         * Makefile.in: set PREFIX_OBJS, SYMLIB, THREADSLIB, and
1874         GNATLIB_SHARED for FreeBSD.
1875
1876 2004-03-18  Jose Ruiz  <ruiz@act-europe.fr>
1877
1878         * init.c [VxWorks]: Do not fix the stack size for the environment task.
1879         When needed (stack checking) the stack size is retrieved
1880         from the VxWorks kernel.
1881
1882         * Makefile.in: Flag -nostdinc is required when building the run time
1883         for avoiding looking for files in the base compiler.
1884         Add the VxWorks specific version of the package body for
1885         System.Stack_checking.Operations (5zstchop.adb).
1886
1887         * Make-lang.in: Add the object file for
1888         System.Stack_Checking.Operations.
1889
1890         * Makefile.rtl: Add object file for the package
1891         System.Stack_Checking.Operations.
1892
1893         * s-stchop.ads, s-stchop.adb, 5zstchop.adb: New files.
1894
1895         * s-stache.ads, s-stache.adb: Move the operations related to stack
1896         checking from this package to package System.Stack_Checking.Operations.
1897         This way, stack checking operations are only linked in the final
1898         executable when using the -fstack-check flag.
1899
1900 2004-03-18  Doug Rupp  <rupp@gnat.com>
1901
1902         * Makefile.in [VMS]: Handle 64 bit specs (5qsystem.ads, 5xcrtl.ads).
1903         Reorganize ifeq's.
1904
1905         * 5qsystem.ads, 5xcrtl.ads: New files.
1906
1907 2004-03-18  Vincent Celier  <celier@gnat.com>
1908
1909         * prj.adb (Reset): Reset hash table Files_Htable
1910
1911         * prj-env.adb (Source_Paths, Object_Paths): New tables.
1912         (Add_To_Source_Path, Add_To_Object_Path): New procedures, to replace
1913         the procedures Add_To_Path_File.
1914         (Set_Ada_Paths): Accumulate source and object dirs in the tables,
1915         making sure that each directory is present only once and, for object
1916         dirs, when a directory already present is added, the duplicate is
1917         removed and the directory is always put as the last in the table.
1918         Write the path files at the end of these accumulations.
1919
1920         * prj-nmsc.adb (Record_Source): Add source file name in hash table
1921         Files_Htable for all sources.
1922
1923         * prj-proc.adb (Process): Remove restrictions between not directly
1924         related extending projects.
1925
1926 2004-03-18  Emmanuel Briot  <briot@act-europe.fr>
1927
1928         * prj-nmsc.ads, prj-nmsc.adb (Ada_Check): New parameter Trusted_Mode.
1929         (Find_Sources): Minor speed optimization.
1930
1931         * prj-proc.ads, prj-proc.adb (Check, Recursive_Check, Process): New
1932         parameter Trusted_Mode.
1933
1934 2004-03-18  Sergey Rybin  <rybin@act-europe.fr>
1935
1936         * scn.adb (Determine_License): Take into account a degenerated case
1937         when the source contains only comments.
1938
1939 2004-03-18  Ed Schonberg  <schonberg@gnat.com>
1940
1941         * sem_warn.adb (Check_References): For a warning on a selected
1942         component that does not come from source, locate an uninitialized
1943         component of the record type to produce a more precise error message.
1944
1945 2004-03-15  Jerome Guitton  <guitton@act-europe.fr>
1946
1947         * 3zsoccon.ads: Fix multicast options.
1948
1949         * s-thread.ads: Move unchecked conversion from ATSD_Access to Address
1950         in the spec.
1951
1952 2004-03-15  Robert Dewar  <dewar@gnat.com>
1953
1954         * sem_prag.adb: Make sure No_Strict_Aliasing flag is set right when
1955         pragma used for a private type.
1956
1957         * lib-xref.adb (Generate_Reference): Do not generate warning if
1958         reference is in a different unit from the pragma Unreferenced.
1959
1960         * 5vtpopde.adb: Minor reformatting
1961         Fix casing of To_Task_ID
1962
1963         * sem_ch13.adb (Validate_Unchecked_Conversion): Set No_Strict_Aliasing
1964         flag if we have an unchecked conversion to an access type in the same
1965         unit.
1966
1967 2004-03-15  Geert Bosch  <bosch@gnat.com>
1968
1969         * a-ngcoty.adb (Modulus): In alternate formula for large real or
1970         imaginary parts, use Double precision throughout.
1971
1972         * a-tifiio.adb (Put_Scaled): Remove remaining pragma Debug. Not only
1973         we want to be able to compile run-time with -gnata for testing, but
1974         this may also be instantiated in user code that is compiled with -gnata.
1975
1976 2004-03-15  Olivier Hainque  <hainque@act-europe.fr>
1977
1978         * s-stalib.ads (Exception_Code): New type, to represent Import/Export
1979         codes. Having a separate type for this is useful to enforce consistency
1980         throughout the various run-time units.
1981         (Exception_Data): Use Exception_Code for Import_Code.
1982
1983         * s-vmextra.ads, s-vmexta.adb: Use Exception_Code instead of a mix of
1984         Natural and Integer in various places.
1985         (Register_VMS_Exception): Use Base_Code_In to compute the exception code
1986         with the severity bits masked off.
1987         (Register_VMS_Exception): Handle the additional exception data pointer
1988         argument.
1989
1990         * raise.c (_GNAT_Exception structure): Remove the handled_by_others
1991         component, now reflected by an exported accessor.
1992         (is_handled_by): New routine to compute whether the propagated
1993         occurrence matches some handler choice specification. Extracted out of
1994         get_action_description_for, and expanded to take care of the VMS
1995         specifities.
1996         (get_action_description_for): Use is_handled_by instead of an explicit
1997         complex condition to decide if the current choice at hand catches the
1998         propagated occurrence.
1999
2000         * raise.h (Exception_Code): New type for C.
2001
2002         * rtsfind.ads (RE_Id, RE_Unit_Table): Add
2003         System.Standard_Library.Exception_Code, to allow references from the
2004         pragma import/export expander.
2005
2006         * a-exexpr.adb (Is_Handled_By_Others, Language_For, Import_Code_For):
2007         New accessors to allow easy access to GNAT exception data
2008         characteristics.
2009         (GNAT_GCC_Exception record, Propagate_Exception): Get rid of the
2010         redundant Handled_By_Others component, helper for the personality
2011         routine which will now be able to call the appropriate exception data
2012         accessor instead.
2013
2014         * cstand.adb (Create_Standard): Adjust the type of the Import_Code
2015         component of Standard_Exception_Type to be the closest possible to
2016         Exception_Code in System.Standard_Library, that we cannot get at this
2017         point. Expand a ??? comment to notify that this type node should
2018         probably be rewritten later on.
2019
2020         * exp_prag.adb (Expand_Pragma_Import_Export_Exception): Adjust the
2021         registration call to include a pointer to the exception object in the
2022         arguments.
2023
2024         * init.c (__gnat_error_handler): Use Exception_Code and Base_Code_In
2025         instead of int and explicit bitmasks.
2026
2027 2004-03-15  Vincent Celier  <celier@gnat.com>
2028
2029         * vms_data.ads: Add new GNAT BIND qualifier /STATIC. Makes /NOSHARED
2030         equivalent to /STATIC and /NOSTATIC equivalent to /SHARED.
2031
2032         * a-tasatt.adb (To_Access_Code): Remove this UC instantiation, no
2033         longer needed now that it is in the spec of
2034         System.Tasking.Task_Attributes.
2035
2036         * adaint.h, adaint.c: (__gnat_create_output_file): New function
2037
2038         * gnatcmd.adb: Fix bug introduced in previous rev: /= instead of =
2039
2040         * g-os_lib.ads, g-os_lib.adb (Create_Output_Text_File): New function.
2041
2042         * make.adb (Gnatmake): Do not check the executable suffix; it is being
2043         taken care of in Scan_Make_Arg.
2044         (Scan_Make_Arg): Add the executable suffix only if the argument
2045         following -o, in canonical case, does not end with the executable
2046         suffix.  When in verbose mode and executable file name does not end
2047         with executable suffix, output the executable name, in canonical case.
2048
2049         * s-tataat.ads (Access_Dummy_Wrapper): Add pragma No_Strict_Aliasing
2050         to avoid warnings when instantiating Ada.Task_Attributes.
2051         Minor reformating.
2052
2053         * mlib-prj.adb (Process_Imported_Libraries): Get the imported libraries
2054         in the correct order.
2055
2056         * prj-makr.adb (Process_Directory): No longer use GNAT.Expect, but
2057         redirect standard output and error to a file for the invocation of the
2058         compiler, then read the file.
2059
2060         * prj-nmsc.adb (Find_Sources): Use the Display_Value for each
2061         directory, instead of the Value.
2062         (Find_Source_Dirs): Remove useless code & comments.
2063
2064 2004-03-15  Ed Schonberg  <schonberg@gnat.com>
2065
2066         * exp_ch3.adb (Freeze_Record_Type): If a primitive operation of a
2067         tagged type is inherited, and the parent operation is not frozen yet,
2068         force generation of a freeze node for the inherited operation, so the
2069         corresponding dispatch entry is properly initialized.
2070         (Make_Predefined_Primitive_Specs): Check that return type is Boolean
2071         when looking for user-defined equality operation.
2072
2073         * exp_ch4.adb (Expand_Composite_Equality): Check that return type is
2074         boolean when locating primitive equality of tagged component.
2075
2076         * exp_ch5.adb (Expand_Assign_Array): If the left-hand side is a
2077         bit-aligned field and the right-hand side a string literal, introduce
2078         a temporary before expanding assignment into a loop.
2079
2080         * exp_ch9.adb (Expand_N_Task_Type_Declaration): Copy expression for
2081         priority in full, to ensure that any expanded subepxressions of it are
2082         elaborated in the scope of the init_proc.
2083
2084         * exp_prag.adb (Expand_Pragma_Import): Search for initialization call
2085         after object declaration, skipping over code that may have been
2086         generated for validity checks.
2087
2088         * sem_ch12.adb (Validate_Private_Type_Instance): If type has unknown
2089         discriminants, ignore the known discriminants of its full view, if
2090         any, to check legality.
2091
2092         * sem_ch3.adb (Complete_Private_Subtype): Do not create constrained
2093         component if type has unknown discriminants.
2094         (Analyze_Private_Extension_Declaration): Discriminant constraint is
2095         null if type has unknown discriminants.
2096
2097         * sem_ch6.adb (Analyze_Generic_Subprogram_Body): Generate reference
2098         for end label when present.
2099
2100         * s-fileio.adb (Open): When called with a C_Stream, use given name for
2101         temporary file, rather than an empty string.
2102
2103 2004-03-15  Ed Falis  <falis@gnat.com>
2104
2105         * s-thread.adb: Removed, no longer used.
2106
2107 2004-03-15  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2108
2109         * decl.c (target.h): Now include.
2110         (gnat_to_gnu_entity, case E_Access_Type): Use mode derived from ESIZE
2111         in new build_pointer_from_mode calls for non-fat/non-thin pointer.
2112         (validate_size): For POINTER_TYPE, get smallest size permitted on
2113         machine.
2114
2115         * fe.h: Sort Einfo decls and add Set_Mechanism.
2116
2117         * Makefile.in: (LIBGNAT_SRCS): Remove types.h.
2118         (ada/decl.o): Depends on target.h.
2119
2120         * trans.c (tree_transform, N_Unchecked_Type_Conversion): Do not use
2121         FUNCTION_BOUNDARY; always use TYPE_ALIGN.
2122
2123 2004-03-15  Thomas Quinot  <quinot@act-europe.fr>
2124
2125         * 5ztpopsp.adb, 56tpopsp.adb: Fix spelling of Task_ID.
2126
2127         * exp_ch4.adb (Expand_N_Indexed_Component): Do not call
2128         Insert_Dereference_Action when rewriting an implicit dereference into
2129         an explicit one, this will be taken care of during expansion of the
2130         explicit dereference.
2131         (Expand_N_Slice): Same. Always do the rewriting, even for the case
2132         of non-packed slices, since the dereference action generated by
2133         expansion of the explicit dereference is needed in any case.
2134         (Expand_N_Selected_Component): When rewriting an implicit dereference,
2135         analyze and resolve the rewritten explicit dereference so it is seen
2136         by the expander.
2137         (Insert_Dereference_Action): This procedure is now called only for the
2138         expansion of an N_Explcit_Dereference_Node. Do insert a check even for
2139         dereferences that do not come from source (including explicit
2140         dereferences resulting from rewriting implicit ones), but do not
2141         recursively insert a check for the dereference nodes contained within
2142         the check.
2143         (Insert_Dereference_Action): Clarify and correct comment.
2144
2145 2004-03-08  Paolo Bonzini  <bonzini@gnu.org>
2146
2147         PR ada/14131
2148         Move language detection to the top level.
2149         * config-lang.in: Build by default.
2150
2151 2004-03-05  Robert Dewar  <dewar@gnat.com>
2152
2153         * 56taprop.adb, 5ataprop.adb: Remove unneeded unchecked conversions
2154
2155         * a-tags.adb, a-tags.ads, s-finimp.adb, s-finroo.ads,
2156         i-cpoint.ads, i-cpoint.adb, i-cstrin.adb, i-cstrin.ads,
2157         5iosinte.ads, 5sosinte.ads, 5staspri.ads, 5itaprop.adb,
2158         5staprop.adb, 5wtaprop.adb, s-tataat.ads, s-tataat.adb: Move
2159         unchecked conversion to spec to avoid warnings.
2160
2161         * s-tasini.adb, s-taskin.ads, 5atpopsp.adb: Correct spelling Task_Id
2162         to Task_ID
2163
2164         * 7stpopsp.adb: Correct casing in To_Task_ID call
2165
2166         * a-strsea.ads, a-strsea.adb: Minor reformatting
2167
2168         * einfo.ads, einfo.adb: Define new flag No_Strict_Aliasing
2169
2170         * errout.ads: Switch for VMS is now NO_STRICT_ALIASING.
2171         Adjust Max_Msg_Length to be clearly large enough.
2172
2173         * fe.h: Define In_Same_Source_Unit
2174
2175         * osint.adb: Add pragma Warnings Off to suppress warnings
2176         * g-dyntab.adb, g-table.adb, g-thread.adb: Add Warnings (Off) to kill
2177         aliasing warnings.
2178
2179         * opt.ads: Put entries in alpha order. Add entry for No_Strict_Aliasing
2180
2181         * par-prag.adb: Add dummy entry for No_Strict_Aliasing pragma
2182
2183         * sem_ch13.adb: Generate validate unchecked conversion nodes for gcc.
2184
2185         * sem_ch3.adb: Set No_Strict_Aliasing flag if config pragma set.
2186
2187         * sem_prag.adb: Implement pragma No_Strict_Aliasing.
2188
2189         * sinfo.ads: Remove obsolete comment on validate unchecked conversion
2190         node. We now do generate them for gcc back end.
2191
2192         * table.adb, sinput.adb: Add pragma Warnings Off to suppress aliasing
2193         warning.
2194
2195         * sinput-c.adb: Fix bad name in header.
2196         Add pragma Warnings Off to suppress aliasing warning.
2197
2198         * sinput-l.adb: Add pragma Warnings Off to suppress aliasing warning.
2199
2200         * snames.h, snames.ads, snames.adb: Add entry for pragma
2201         No_Strict_Aliasing.
2202
2203 2004-03-05  Vincent Celier  <celier@gnat.com>
2204
2205         * prj-com.ads: Add hash table Files_Htable to check when a file name
2206         is already a source of another project.
2207
2208         * prj-nmsc.adb (Record_Source): Before recording a new source, check
2209         if its file name is not already a source of another project. Report an
2210         error if it is.
2211
2212         * gnatcmd.adb: When GNAT PRETTY is invoked with a project file and no
2213         source file name, call gnatpp with all the sources of the main project.
2214
2215         * vms_conv.adb (Initialize): GNAT PRETTY may be called with any number
2216         of file names.
2217
2218         * vms_data.ads: Correct documentation of new /OPTIMIZE keyword
2219         NO_STRICT_ALIASING. Add new qualifier for GNAT PRETTY:
2220         /RUNTIME_SYSTEM=, converted to --RTS=
2221         /NOTABS, converted to -notabs
2222
2223 2004-03-05  Pascal Obry  <obry@gnat.com>
2224
2225         * make.adb: Minor reformatting.
2226
2227 2004-03-05  Ed Schonberg  <schonberg@gnat.com>
2228
2229         Part of implemention of AI-262.
2230         * par-ch10.adb (P_Context_Clause): Recognize private with_clauses.
2231
2232         * sem_ch10.ads, sem_ch10.adb: (Install_Private_With_Clauses): New
2233         procedure.
2234
2235         * sem_ch3.adb (Analyze_Component_Declaration): Improve error message
2236         when component type is a partially constrained class-wide subtype.
2237         (Constrain_Discriminated_Type): If parent type has unknown
2238         discriminants, a constraint is illegal, even if full view has
2239         discriminants.
2240         (Build_Derived_Record_Type): Inherit discriminants when deriving a type
2241         with unknown discriminants whose full view is a discriminated record.
2242
2243         * sem_ch7.adb (Preserve_Full_Attributes): Preserve Has_Discriminants
2244         flag, to handle properly derivations of tagged types with unknown
2245         discriminants.
2246         (Analyze_Package_Spec, Analyze_Package_Body): Install
2247         Private_With_Clauses before analyzing private part or body.
2248
2249         * einfo.ads: Indicate that both Has_Unknown_Discriminants and
2250         Has_Discriminants can be true for a given type (documentation).
2251
2252 2004-03-05  Arnaud Charlet  <charlet@act-europe.fr>
2253
2254         * s-restri.ads: Fix license (GPL->GMGPL).
2255
2256         * s-tassta.adb: Minor reformatting.
2257
2258         * s-tasren.adb: Replace manual handling of Self_Id.ATC_Nesting_Level
2259         by calls to Exit_One_ATC_Level, since additional clean up is performed
2260         by this function.
2261
2262         * s-tpobop.adb: Replace manual handling of Self_Id.ATC_Nesting_Level
2263         by calls to Exit_One_ATC_Level, since additional clean up is performed
2264         by this function.
2265
2266 2004-03-05  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2267
2268         * trans.c: Reflect GCC changes to fix bootstrap problem.
2269         Add warning for suspicious aliasing unchecked conversion.
2270
2271 2004-03-05  GNAT Script  <nobody@gnat.com>
2272
2273         * Make-lang.in: Makefile automatically updated
2274
2275 2004-03-02  Emmanuel Briot  <briot@act-europe.fr>
2276
2277         * ali.adb (Read_Instantiation_Instance): Do not modify the
2278         current_file_num when reading information about instantiations, since
2279         this corrupts files in later references.
2280
2281 2004-03-02  Vincent Celier  <celier@gnat.com>
2282
2283         * bcheck.adb (Check_Consistency): Get the full path of an ALI file
2284         before checking if it is read-only.
2285
2286         * bld.adb (Recursive_Process): Concatenate <PROJECT>.src_dirs in front
2287         of SRC_DIRS and eliminate duplicates.
2288
2289         * gprcmd.adb: Replace command "path" with command "path_sep" to return
2290         the path separator.
2291         (Usage): Document path_sep
2292
2293         * Makefile.generic: For Ada and GNU C++ cases, link directly with the
2294         C++ compiler. No need for a script.
2295         Replace use of C*_INCLUDE_PATH env var for GCC compilers with CPATH.
2296         Do not call gprcmd to build the C*_INCLUDE_PATHs, do it with function
2297         subst.
2298
2299         * prj-env.adb (For_All_Source_Dirs): Only add source dirs in project
2300         where there are Ada sources.
2301         (Set_Ada_Paths): Only add to the include path the source dirs of project
2302         with Ada sources.
2303         (Add_To_Path): Add the Display_Values of the directories, not their
2304         Values.
2305
2306         * prj-nmsc.adb (Find_Sources): Set flag Sources_Present in the project
2307         data.
2308
2309         * prj-nmsc.adb (Add_ALI_For): Make sure that the element Display_Value
2310         is not No_Name.
2311         (Find_Source_Dirs): Set Display_Value to a non canonicalized value, only
2312         Value is canonicalized.
2313         (Language_Independent_Check): Do not copy Value to Display_Value when
2314         canonicalizing Value.
2315
2316         * prj-part.adb (Post_Parse_Context_Clause): Compare canonical cased
2317         path to find limited with cycles.
2318         (Parse_Single_Project): Use canonical cased path to find the end of a
2319         with cycle.
2320
2321 2004-03-02  Ed Schonberg  <schonberg@gnat.com>
2322
2323         * sem_ch10.adb (Optional_Subunit): Verify that unit contains a subunit
2324         and not a child unit.
2325
2326         * sinfo.ads, sinfo.adb: Rearrange flags so that Private_Present can
2327         appear in a with_clause.
2328
2329         * decl.c (gnat_to_gnu_type): If entity is a generic type, which can
2330         only happen in type_annotate mode, do not try to elaborate it.
2331
2332         * exp_util.adb (Force_Evaluation): If expression is a selected
2333         component on the left of an assignment, use a renaming rather than a
2334         temporary to remove side effects.
2335
2336         * freeze.adb (Freeze_Entity): Do not freeze a global entity within an
2337         inlined instance body, which is analyzed before the end of the
2338         enclosing scope.
2339
2340 2004-03-02  Robert Dewar  <dewar@gnat.com>
2341
2342         * par-ch10.adb, par-ch3.adb, par-ch4.adb, scng.adb,
2343         sem_ch4.adb: Use new feature for substitution of keywords in VMS
2344
2345         * errout.ads, errout.adb: Implement new circuit for substitution of
2346         keywords in VMS.
2347
2348         * sem_case.adb (Analyze_Choices): Place message properly when case is
2349         a subtype reference rather than an explicit range.
2350
2351         * sem_elim.adb, s-tpobop.ads, exp_ch2.adb: Minor reformatting
2352
2353 2004-03-02  Doug Rupp  <rupp@gnat.com>
2354
2355         * init.c (__gnat_initialize)[VMS]: Resignal RDB-E-STREAM_EOF.
2356
2357 2004-03-02  Thomas Quinot  <quinot@act-europe.fr>
2358
2359         * s-tporft.adb: Add missing locking around call to Initialize_ATCB.
2360
2361 2004-03-02  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2362
2363         * utils.c (finish_record_type): Do not set DECL_NONADDRESSABLE for a
2364         BLKmode bitfield.
2365
2366 2004-02-25  Robert Dewar  <dewar@gnat.com>
2367
2368         * 51osinte.ads, 52osinte.ads, 53osinte.ads, 54osinte.ads,
2369         55osinte.ads, 56osinte.ads, 5aosinte.ads, 5bosinte.ads,
2370         5cosinte.ads, 5fosinte.ads, 5gosinte.ads, 5hosinte.ads,
2371         5iosinte.ads, 5losinte.ads, 5nosinte.ads, 5oosinte.ads,
2372         5posinte.ads, 5sosinte.ads, 5tosinte.ads, 5vosinte.ads,
2373         5wosinte.ads, 5zosinte.ads: Move instances of Unchecked_Conversion to
2374         the defining instance of the type to avoid aliasing problems.
2375         Fix copyright header.  Fix bad comments in package header.
2376
2377         * exp_util.adb, prj-part.adb, prj-part.adb: Minor reformatting
2378
2379 2004-02-25  Ed Schonberg  <schonberg@gnat.com>
2380
2381         * exp_ch2.adb (Param_Entity): Handle properly formals that have been
2382         rewritten as references when aliased through an address clause.
2383
2384         * sem_ch4.adb (Try_Indirect_Call): Normalize actuals before checking
2385         whether call can be interpreted as an indirect call to the result of a
2386         parameterless function call returning an access subprogram.
2387
2388 2004-02-25  Arnaud Charlet  <charlet@act-europe.fr>
2389
2390         Code clean up:
2391         * exp_ch7.adb (Make_Clean): Remove generation of calls to
2392         Unlock[_Entries], since this is now done by Service_Entries directly.
2393
2394         * exp_ch9.adb (Build_Protected_Subprogram_Body): ditto.
2395
2396         * s-tpobop.ads, s-tpobop.adb (PO_Service_Entries): New nested procedure
2397         Requeue_Call for better code readability. Change spec and update calls:
2398         PO_Service_Entries now unlock the PO on exit.
2399         (Protected_Entry_Call, Timed_Protected_Entry_Call): Update calls to
2400         PO_Service_Entries.
2401
2402         * s-tposen.ads, s-tposen.adb (Service_Entry): Now unlock the PO on exit.
2403
2404         * s-taenca.adb, s-tasren.adb: Update calls to PO_Service_Entries.
2405
2406 2004-02-25  Sergey Rybin  <rybin@act-europe.fr>
2407
2408         * exp_ch9.adb (Build_Simple_Entry_Call): Prevent expanding the
2409         protected subprogram call and analyzing the result of such expanding
2410         in case when the called protected subprogram is eliminated.
2411
2412         * sem_elim.adb (Check_Eliminated): Skip blocks when comparing scope
2413         names.
2414
2415 2004-02-25  Jerome Guitton  <guitton@act-europe.fr>
2416
2417         * Makefile.in: Clean ups.
2418
2419 2004-02-23  Ed Schonberg  <schonberg@gnat.com>
2420
2421         * exp_ch6.adb (Expand_N_Subprogram_Declaration): Do not create
2422         protected operations if original subprogram is flagged as eliminated.
2423         (Expand_N_Subprogram_Body): For a protected operation, create
2424         discriminals for next operation before checking whether the operation
2425         is eliminated.
2426
2427         * exp_ch9.adb (Expand_N_Protected_Body,
2428         Expand_N_Protected_Type_Declaration): Do not generate specs and bodies
2429         for internal protected operations if the original subprogram is
2430         eliminated.
2431
2432         * sem_elim.adb (Check_Eliminated): Handle properly protected operations
2433         declared in a single protected object.
2434
2435 2004-02-23  Vincent Celier  <celier@gnat.com>
2436
2437         * prj-attr.adb: Make attribute Builder'Executable an associative array,
2438         case insensitive if file names are case insensitive, instead of a
2439         standard associative array.
2440
2441         * prj-attr.adb (Initialize): For 'b' associative arrays, do not set
2442         them as case insensitive on platforms where the file names are case
2443         sensitive.
2444
2445         * prj-part.adb (Parse_Single_Project): Make sure, when checking if
2446         project file has already been parsed that canonical path are compared.
2447
2448 2004-02-23  Robert Dewar  <dewar@gnat.com>
2449
2450         * sinput-c.ads: Correct bad unit title in header
2451
2452         * freeze.adb: Minor reformatting
2453
2454 2004-02-23  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2455
2456         * trans.c (tree_transform, case N_Procedure_Call_Statement): For
2457         nonaddressable COMPONENT_REF that is removing padding that we are
2458         taking the address of, take the address of the padded record instead
2459         if item is variable size.
2460
2461 2004-02-20  Robert Dewar  <dewar@gnat.com>
2462
2463         * bld.adb, exp_util.adb, gprcmd.adb: Minor reformatting
2464
2465 2004-02-20  Ed Schonberg  <schonberg@gnat.com>
2466
2467         * freeze.adb (Freeze_Record_Type): Generalize mechanism that generates
2468         itype references for the constrained designated type of a component
2469         whose base type is already frozen.
2470
2471 2004-02-20  Arnaud Charlet  <charlet@act-europe.fr>
2472
2473         * init.c (__gnat_error_handler [tru64]): Rewrite previous change to
2474         avoid GCC warnings.
2475
2476 2004-02-20  Sergey Rybin  <rybin@act-europe.fr>
2477
2478         * sem_ch12.adb (Analyze_Formal_Package): Create a new defining
2479         identifier for a phantom package that rewrites the formal package
2480         declaration with a box. The Add semantic decorations for the defining
2481         identifier from the original node (that represents the formal package).
2482
2483 2004-02-19  Matt Kraai  <kraai@alumni.cmu.edu>
2484
2485         * Make-lang.in (ada/stamp-sdefault): Use the top level
2486         move-if-change.
2487
2488 2004-02-19  Richard Henderson  <rth@redhat.com>
2489
2490         * misc.c (record_code_position): Add third build arg for RTL_EXPR.
2491
2492 2004-02-18  Emmanuel Briot  <briot@act-europe.fr>
2493
2494         * ali.ads, ali.adb (First_Sdep_Entry): No longer a constant, so that
2495         Scan_ALI can be used for multiple ALI files without reinitializing
2496         between calls.
2497
2498 2004-02-18  Robert Dewar  <dewar@gnat.com>
2499
2500         * debug.adb: Minor reformatting.
2501
2502 2004-02-18  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2503
2504         * decl.c (gnat_to_gnu_entity, case object): Set DECL_POINTER_ALIAS_SET
2505         to zero if there is an address clause.
2506
2507 2004-02-18  Thomas Quinot  <quinot@act-europe.fr>
2508
2509         * exp_util.adb (Side_Effect_Free): Any literal is side effects free.
2510
2511 2004-02-18  Gary Dismukes  <dismukes@gnat.com>
2512
2513         * layout.adb (Layout_Component_List): Revise generation of call to
2514         discriminant-checking function to pass selections of all of the type's
2515         discriminants rather than just the variant-controlling discriminant.
2516
2517 2004-02-18  Olivier Hainque  <hainque@act-europe.fr>
2518
2519         * 5gmastop.adb (Pop_Frame): Do not call exc_unwind, which is bound to
2520         fail in the current setup and triggers spurious system error messages.
2521         Pretend it occurred and failed instead.
2522
2523 2004-02-18  Vincent Celier  <celier@gnat.com>
2524
2525         * bld.adb: Mark FLDFLAGS as saved
2526         (Process_Declarative_Items): Add Linker'Linker_Options to FLDFLAGS when
2527         it is not the root project.  Put each directory to be
2528         extended between double quotes to prevent it to be expanded on Windows.
2529         (Recursive_Process): Reset CFLAGS/CXXFLAGS to nothing before processing
2530         the project file. Set them back to their initial values if they have not
2531         been set in the project file.
2532
2533         * gprcmd.adb: (Gprdebug, Debug): New global variables
2534         (Display_Command): New procedure
2535         (Usage): Document new command "linkopts"
2536         Call Display_Command when env var GPRDEBUG has the value "TRUE"
2537         Implement new command "linkopts"
2538         Remove quotes that may be around arguments for "extend"
2539         Always call Normalize_Pathname with arguments formatted for the platform
2540
2541         * Makefile.generic: Link C/C++ mains with $(FLDFLAGS)
2542         Change @echo to @$(display) in target clean to be able to clean silently
2543
2544         * Makefile.prolog: Save FLDFLAGS and give it an initial empty value
2545
2546         * prj-part.adb (Project_Path_Name_Of): Do not put final result in
2547         canonical case.
2548
2549         * prj-part.adb (Parse_Single_Project): Always call with From_Extended
2550         = Extending_All when current project is an extending all project.
2551
2552         * vms_conv.adb (Output_File_Expected): New Boolean global variable,
2553         set to True only for LINK command, after Unix switch -o.
2554         (Process_Arguments): Set Output_File_Expected to True for LINK command
2555         after Unix switch -o. When Output_File_Expected is True, never add an
2556         extension to a file name.
2557
2558         * 5vml-tgt.adb (Build_Dynamic_Library): Do not append "/OPTIONS" to the
2559         option file name, only to the --for-linker= switch.
2560         (Option_File_Name): If option file name do not end with ".opt", append
2561         "/OPTIONS".
2562
2563 2004-02-18  GNAT Script  <nobody@gnat.com>
2564
2565         * Make-lang.in: Makefile automatically updated
2566
2567 2004-02-17  Matt Kraai  <kraai@alumni.cmu.edu>
2568
2569         * Make-lang.in (stamp-sdefault): Do not depend on
2570         move-if-change.
2571
2572 2004-02-12  Zack Weinberg  <zack@codesourcery.com>
2573
2574         * config-lang.in: Disable Ada by default until probe logic for
2575         a bootstrap Ada compiler can be moved to the top level configure
2576         script.
2577
2578 2004-02-12  Olivier Hainque  <hainque@act-europe.fr>
2579
2580         * decl.c (components_to_record): Don't claim that the internal fields
2581         we make to hold the variant parts are semantically addressable, because
2582         they are not.
2583
2584         * exp_pakd.adb (Create_Packed_Array_Type): Rename Esiz into PASize and
2585         adjust the comment describing the modular type form when we can use it.
2586         (Install_PAT): Account for the Esiz renaming.
2587
2588         * init.c (__gnat_error_handler for alpha-tru64): Arrange to clear the
2589         sc_onstack context indication before raising the exception to which
2590         the signal is mapped. Allows better handling of later signals possibly
2591         triggered by the resumed user code if the exception is handled.
2592
2593 2004-02-12  Arnaud Charlet  <charlet@act-europe.fr>
2594
2595         * 5zinit.adb: Removed, no longer used.
2596
2597 2004-02-12  Robert Dewar  <dewar@gnat.com>
2598
2599         * ali.adb: Remove separating space between parameters on R line. Makes
2600         format consistent with format used by the binder for Set_Globals call.
2601
2602         * atree.ads, atree.adb: Minor reformatting (new function header format)
2603
2604         * bindgen.adb: Add Run-Time Globals documentation section containing
2605         detailed documentation of the globals passed from the binder file to
2606         the run time.
2607
2608         * gnatls.adb: Minor reformatting
2609
2610         * init.c (__gnat_set_globals): Add note pointing to documentation in
2611         bindgen.
2612
2613         * lib-writ.ads, lib-writ.adb: Remove separating space between
2614         parameters on R line.
2615         Makes format consistent with format used by the binder for Set_Globals
2616         call.
2617
2618         * osint.ads: Add 2004 to copyright notice
2619         Minor reformatting
2620
2621         * snames.ads: Correct capitalization of FIFO_Within_Priorities
2622         Noticed during code reading, documentation issue only
2623
2624         * usage.adb: Remove junk line for obsolete C switch
2625         Noticed during code reading
2626
2627 2004-02-12  Vincent Celier  <celier@gnat.com>
2628
2629         * bld.adb (Process_Declarative_Items): For Source_Dirs call gprcmd
2630         extend for each directory, so that multiple /** directories are
2631         extended individually.
2632         (Recursive_Process): Set the default for LANGUAGES to ada
2633
2634         * gprcmd.adb: Define new command "ignore", to do nothing.
2635         Implement new comment "path".
2636
2637         * Makefile.generic: Suppress output when SILENT is set
2638         Make sure that when compiler for C/C++ is gcc, the correct -x switch is
2639         used, so that the correct compiler is invoked.
2640         When compiler is gcc/g++, put search path in env vars C_INCLUDE_PATH/
2641         CXX_INCLUDE_PATH, to avoid failure with too long command lines.
2642
2643 2004-02-12  Jerome Guitton  <guitton@act-europe.fr>
2644
2645         * Makefile.in: Clean ups and remove obsolete targets.
2646
2647 2004-02-12  Ed Schonberg  <schonberg@gnat.com>
2648
2649         * exp_ch5.adb: Remove Possible_Unligned_Slice, in favor of the similar
2650         predicate declared in exp_util.
2651
2652         * exp_util.adb: Add comments.
2653
2654         * sem_ch10.adb (Analyze_Subunit): Remove ultimate parent unit from
2655         visibility before compiling context of the subunit.
2656
2657         * sem_res.adb (Check_Parameterless_Call): If the context expects a
2658         value but the name is a procedure, do not attempt to analyze as a call,
2659         in order to obtain more telling diagnostics.
2660
2661         * sem_util.adb (Wrong_Type): Further enhancement to diagnose missing
2662         'Access on parameterless function calls.
2663         (Normalize_Actuals): For a parameterless function call with missing
2664         actuals, defer diagnostic until resolution of enclosing call.
2665
2666         * sem_util.adb (Wrong_Type): If the context type is an access to
2667         subprogram and the expression is a procedure name, suggest a missing
2668         'attribute.
2669
2670 2004-02-10  Arnaud Charlet  <charlet@act-europe.fr>,
2671             Nathanael Nerode  <neroden@gcc.gnu.org>
2672
2673         PR ada/6637, PR ada/5911
2674         Merge with libada-branch:
2675         * config-lang.in: Build libada only when ada is built.
2676
2677 2004-02-09  Ed Schonberg  <schonberg@gnat.com>
2678
2679         * exp_ch4.adb (Expand_N_Op_Eq): When looking for the primitive equality
2680         for a tagged type, verify that both formals have the same type.
2681
2682         * exp_ch6.adb (Add_Call_By_Copy_Code): Initialize properly the
2683         temporary when the formal is an in-parameter and the actual a possibly
2684         unaligned slice.
2685
2686         * exp_ch9.adb (Expand_Entry_Barrier): Resolve barrier expression even
2687         when expansion is disabled, to ensure proper name capture with
2688         overloaded literals.  Condition can be of any boolean type, resolve
2689         accordingly.
2690
2691         * sem_ch8.adb (Analyze_Subprogram_Renaming): Emit warning if the
2692         renaming is for a formal subprogram with a default operator name, and
2693         there is a usable operator that is visible at the point of
2694         instantiation.
2695
2696 2004-02-09  Robert Dewar  <dewar@gnat.com>
2697
2698         * ali.adb (Scan_Ali) Add Ignore_Errors argument. This is a major
2699         rewrite to ignore errors in ali files, intended to allow tools downward
2700         compatibility with new versions of ali files.
2701
2702         * ali.ads: Add new parameter Ignore_Errors
2703
2704         * bcheck.adb (Check_Consistent_Restrictions): Fix error of sometimes
2705         duplicating the error message giving the file with restrictions.
2706
2707         * debug.adb: Add debug flag I for gnatbind
2708
2709         * errout.adb (Set_Msg_Insertion_Node): Suppress extra quotes around
2710         operators for the case where the operator is a defining operator.
2711
2712         * exp_ch3.adb: Minor reformatting (new function spec format).
2713
2714         * exp_ch4.adb: Add comment for previous change, and make minor
2715         adjustment to loop to always check for improper loop termination.
2716         Minor reformatting throughout (new function spec format).
2717
2718         * gnatbind.adb: Implement -di debug flag for gnatbind
2719
2720         * gnatlink.adb: Call Scan_ALI with Ignore_Errors set to True
2721
2722         * gnatls.adb: Call Scan_ALI with Ignore_Errors set to True
2723
2724         * lib-load.adb: Fix bad assertion.
2725         Found by testing and code reading.
2726         Minor reformatting.
2727
2728         * lib-load.ads: Minor reformatting.
2729
2730         * lib-writ.adb: There is only one R line now.
2731
2732         * lib-writ.ads: Add documentation on making downward compatible changes
2733         to ali files so old tools work with new ali files.
2734         There is only one R line now.
2735         Add documentation on format incompatibilities (with special GPS note)
2736
2737         * namet.ads, namet.adb: (Is_Operator_Name): New procedure
2738
2739         * par-load.adb: Minor reformatting
2740
2741         * sem_ch8.adb: Fix to error message from last update
2742         Minor reformatting and restructuring of code from last update
2743
2744         * par-prag.adb, snames.adb, snames.ads, snames.h,
2745         sem_prag.adb: Implement pragma Profile.
2746
2747         * stylesw.adb: Implement -gnatyN switch to turn off all style check
2748         options.
2749
2750         * usage.adb: Add line for -gnatyN switch
2751
2752         * vms_data.ads: Add entry STYLE_CHECKS=NONE for -gnatyN
2753
2754 2004-02-09  Albert Lee  <lee@gnat.com>
2755
2756         * errno.c: define _SGI_MP_SOURCE for task-safe errno on IRIX
2757
2758 2004-02-09  Ed Schonberg  <schonberg@gnat.com>
2759
2760         * exp_ch3.adb (Build_Slice_Assignment): Handle properly case of null
2761         slices.
2762
2763         * exp_ch6.adb (Expand_Call): Do not inline a call when the subprogram
2764         is nested in an instance that is not frozen yet, to avoid
2765         order-of-elaboration problems in gigi.
2766
2767         * sem_attr.adb (Analyze_Attribute, case 'Access): Within an inlined
2768         body the attribute is legal.
2769
2770 2004-02-09  Robert Dewar  <dewar@gnat.com>
2771
2772         * s-rident.ads: Minor comment correction
2773
2774         * targparm.adb: Remove dependence on uintp completely. There was
2775         always a bug in Make in that it called Targparm before initializing
2776         the Uint package. The old code appeared to get away with this, but
2777         the new code did not! This caused an assertion error in gnatmake.
2778
2779         * targparm.ads: Fix bad comment, restriction pragmas with parameters
2780         are indeed fully supported.
2781
2782 2004-02-06  Alan Modra  <amodra@bigpond.net.au>
2783
2784         * misc.c (default_pass_by_ref): Update INIT_CUMULATIVE_ARGS call.
2785
2786 2004-02-05  Kazu Hirata  <kazu@cs.umass.edu>
2787
2788         * ada/utils.c (create_param_decl): Replace PROMOTE_PROTOTYPES
2789         with targetm.calls.promote_prototypes.
2790
2791 2004-02-04  Robert Dewar  <dewar@gnat.com>
2792
2793         * 5gtasinf.adb, 5gtasinf.ads, 5gtaprop.adb, ali.adb,
2794         ali.ads, gprcmd.adb: Minor reformatting
2795
2796         * bindgen.adb: Output restrictions string for new style restrictions
2797         handling
2798
2799         * impunit.adb: Add s-rident.ads (System.Rident) and
2800         s-restri (System.Restrictions)
2801
2802         * lib-writ.adb: Fix bug in writing restrictions string (last few
2803         entries wrong)
2804
2805         * s-restri.ads, s-restri.adb: Change name Restrictions to
2806         Run_Time_Restrictions to avoid conflict with package name.
2807         Add circuit to read and acquire run time restrictions.
2808
2809 2004-02-04  Jose Ruiz  <ruiz@act-europe.fr>
2810
2811         * restrict.ads, restrict.adb: Use the new restriction
2812         No_Task_Attributes_Package instead of the old No_Task_Attributes.
2813
2814         * sem_prag.adb: No_Task_Attributes is a synonym of
2815         No_Task_Attributes_Package.
2816
2817         * snames.ads, snames.adb: New entry for proper handling of
2818         No_Task_Attributes.
2819
2820         * s-rident.ads: Adding restriction No_Task_Attributes_Package
2821         (AI-00249) that supersedes the GNAT specific restriction
2822         No_Task_Attributes.
2823
2824 2004-02-04  Ed Schonberg  <schonberg@gnat.com>
2825
2826         * sem_prag.adb:
2827         (Analyze_Pragma, case Warnings): In an inlined body, as in an instance
2828          body, an identifier may be wrapped in an unchecked conversion.
2829
2830 2004-02-04  Vincent Celier  <celier@gnat.com>
2831
2832         * lib-writ.ads: Comment update for the W lines
2833
2834         * bld.adb: (Expression): An empty string list is static
2835
2836         * fname-uf.adb: Minor comment update
2837
2838         * fname-uf.ads: (Get_File_Name): Document new parameter May_Fail
2839
2840         * gnatbind.adb: Initialize Cumulative_Restrictions with the
2841         restrictions on the target.
2842
2843 2004-02-03  Kazu Hirata  <kazu@cs.umass.edu>
2844
2845         * ada/trans.c (gigi): Use gen_rtx_SYMBOL_REF instead of
2846         gen_rtx.
2847
2848 2004-02-02  Arnaud Charlet  <charlet@gnat.com>
2849
2850         * Makefile.in: Remove setting of THREADSLIB on mips o32, unneeded.
2851
2852 2004-02-02  Vincent Celier  <celier@gnat.com>
2853
2854         * gprcmd.adb (Check_Args): If condition is false, print the invoked
2855         comment before the usage.
2856         Gprcmd: Fail when command is not recognized.
2857         (Usage): Document command "prefix"
2858
2859         * g-md5.adb (Digest): Process last block.
2860         (Update): Do not process last block. Store remaining characters and
2861         length in Context.
2862
2863         * g-md5.ads (Update): Document that several call to update are
2864         equivalent to one call with the concatenated string.
2865         (Context): Add fields to allow new Update behaviour.
2866
2867         * fname-uf.ads/adb (Get_File_Name): New Boolean parameter May_Fail,
2868         defaulted to False.
2869         When May_Fail is True and no existing file can be found, return No_File.
2870
2871         * 6vcstrea.adb: Inlined functions are now wrappers to implementation
2872         functions.
2873
2874         * lib-writ.adb (Write_With_Lines): When body file does not exist, use
2875         spec file name instead on the W line.
2876
2877 2004-02-02  Robert Dewar  <dewar@gnat.com>
2878
2879         * ali.adb: Read and acquire info from new format restrictions lines
2880
2881         * bcheck.adb: Add circuits for checking restrictions with parameters
2882
2883         * bindgen.adb: Output dummy restrictions data
2884         To be changed later
2885
2886         * ali.ads, checks.adb, exp_aggr.adb, exp_attr.adb, exp_ch11.adb,
2887         exp_ch3.adb, exp_ch5.adb, exp_ch6.adb, exp_ch7.adb, exp_util.adb,
2888         freeze.adb, gnat1drv.adb, sem_attr.adb, sem_ch10.adb, sem_ch11.adb,
2889         sem_ch12.adb, targparm.adb, targparm.ads, tbuild.adb, sem_ch2.adb,
2890         sem_elab.adb, sem_res.adb: Minor changes for new restrictions handling.
2891
2892         * exp_ch9.adb (Build_Master_Entity): Cleanup the code (also suppresses
2893         the warning message on access to possibly uninitialized variable S)
2894         Minor changes for new restrictions handling.
2895
2896         * gnatbind.adb: Minor reformatting
2897         Minor changes for new restrictions handling
2898         Move circuit for -r processing here from bcheck (cleaner)
2899
2900         * gnatcmd.adb, gnatlink.adb: Minor reformatting
2901
2902         * lib-writ.adb: Output new format restrictions lines
2903
2904         * lib-writ.ads: Document new R format lines for new restrictions
2905         handling.
2906
2907         * s-restri.ads/adb: New files
2908
2909         * Makefile.rtl: Add entry for s-restri.ads/adb
2910
2911         * par-ch3.adb: Fix bad error messages starting with upper case letter
2912         Minor reformatting
2913
2914         * restrict.adb: Major rewrite throughout for new restrictions handling
2915         Major point is to handle restrictions with parameters
2916
2917         * restrict.ads: Major changes in interface to handle restrictions with
2918         parameters. Also generally simplifies setting of restrictions.
2919
2920         * snames.ads/adb: New entry for proper handling of No_Requeue
2921
2922         * sem_ch3.adb (Count_Tasks): New circuitry for implementing Max_Tasks
2923         restriction counting.
2924         Other minor changes for new restrictions handling
2925
2926         * sem_prag.adb: No_Requeue is a synonym for No_Requeue_Statements.
2927         Restriction_Warnings now allows full parameter notation
2928         Major rewrite of Restrictions for new restrictions handling
2929
2930 2004-02-02  Javier Miranda  <miranda@gnat.com>
2931
2932         * par-ch3.adb (P_Identifier_Declarations): Give support to the Ada 0Y
2933         syntax rule for object renaming declarations.
2934         (P_Array_Type_Definition): Give support for the Ada 0Y syntax rule for
2935         component definitions.
2936
2937         * sem_ch3.adb (Analyze_Component_Declaration): Give support to access
2938         components.
2939         (Array_Type_Declaration): Give support to access components. In addition
2940         it was also modified to reflect the name of the object in anonymous
2941         array types. The old code did not take into account that it is possible
2942         to have an unconstrained anonymous array with an initial value.
2943         (Check_Or_Process_Discriminants): Allow access discriminant in
2944         non-limited types.
2945         (Process_Discriminants): Allow access discriminant in non-limited types
2946         Initialize the new Access_Definition field in N_Object_Renaming_Decl
2947         node.  Change Ada0Y to Ada 0Y in comments
2948
2949         * sem_ch4.adb (Find_Equality_Types): Allow anonymous access types in
2950         equality operators.
2951         Change Ada0Y to Ada 0Y in comments
2952
2953         * sem_ch8.adb (Analyze_Object_Renaming): Give support to access
2954         renamings Change Ada0Y to Ada 0Y in comments
2955
2956         * sem_type.adb (Find_Unique_Type): Give support to the equality
2957         operators for universal access types
2958         Change Ada0Y to Ada 0Y in comments
2959
2960         * sinfo.adb (Access_Definition, Set_Access_Definition): New subprograms
2961
2962         * sinfo.ads (N_Component_Definition): Addition of Access_Definition
2963         field.
2964         (N_Object_Renaming_Declaration): Addition of Access_Definition field
2965         Change Ada0Y to Ada 0Y in comments
2966
2967         * sprint.adb (Sprint_Node_Actual): Give support to the new syntax for
2968         component definition and object renaming nodes
2969         Change Ada0Y to Ada 0Y in comments
2970
2971 2004-02-02  Jose Ruiz  <ruiz@act-europe.fr>
2972
2973         * restrict.adb: Use the new restriction identifier
2974         No_Requeue_Statements instead of the old No_Requeue for defining the
2975         restricted profile.
2976
2977         * sem_ch9.adb (Analyze_Requeue): Check the new restriction
2978         No_Requeue_Statements.
2979
2980         * s-rident.ads: Adding restriction No_Requeue_Statements (AI-00249)
2981         that supersedes the GNAT specific restriction No_Requeue. The later is
2982         kept for backward compatibility.
2983
2984 2004-02-02  Ed Schonberg  <schonberg@gnat.com>
2985
2986         * lib.ads, i-cobol.ads, * s-stoele.ads, s-thread.ads, style.ads,
2987         5staprop.adb, atree.adb, atree.ads, g-crc32.ads: Remove redundant
2988         pragma and fix incorrect ones.
2989
2990         * sem_prag.adb For pragma Inline and pragma Pure_Function, emit a
2991         warning if the pragma is redundant.
2992
2993 2004-02-02  Thomas Quinot  <quinot@act-europe.fr>
2994
2995         * 5staprop.adb: Add missing 'constant' keywords.
2996
2997         * Makefile.in: use consistent value for SYMLIB on
2998         platforms where libaddr2line is supported.
2999
3000 2004-02-02  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
3001
3002         * utils.c (end_subprog_body): Do not call rest_of_compilation if just
3003         annotating types.
3004
3005 2004-02-02  Olivier Hainque  <hainque@act-europe.fr>
3006
3007         * init.c (__gnat_install_handler): Setup an alternate stack for signal
3008         handlers in the environment thread. This allows proper propagation of
3009         an exception on stack overflows in this thread even when the builtin
3010         ABI stack-checking scheme is used without support for a stack reserve
3011         region.
3012
3013         * utils.c (create_field_decl): Augment the head comment about bitfield
3014         creation, and don't account for DECL_BIT_FIELD in DECL_NONADDRESSABLE_P
3015         here, because the former is not accurate enough at this point.
3016         Let finish_record_type decide instead.
3017         Don't make a bitfield if the field is to be addressable.
3018         Always set a size for the field if the record is packed, to ensure the
3019         checks for bitfield creation are triggered.
3020         (finish_record_type): During last pass over the fields, clear
3021         DECL_BIT_FIELD when possible in the !STRICT_ALIGNMENT case, as this is
3022         not covered by the calls to layout_decl.  Adjust DECL_NONADDRESSABLE_P
3023         from DECL_BIT_FIELD.
3024
3025 2004-01-30  Kelley Cook  <kcook@gcc.gnu.org>
3026
3027         * Make-lang.in (doc/gnat_ug_unx.dvi): Use $(abs_docdir).
3028         (doc/gnat_ug_vms.dvi, doc/gnat_ug_unx.dvi): Likewise.
3029         (doc/gnat_ug_unx.dvi, doc/gnat-style.dvi): Likewise.
3030
3031 2004-01-26  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
3032
3033         * Makefile.in (mips-sgi-irix5): Remove -lathread from THREADSLIB.
3034
3035         * 5fsystem.ads (Functions_Return_By_DSP): Set to False.
3036         (ZCX_By_Default): Likewise.
3037         (Front_End_ZCX_Support): Likewise.
3038
3039         * 5gtaprop.adb (Stack_Guard): Mark T, On unreferenced.
3040         (Initialize_Lock): Mark Level unreferenced.
3041         (Sleep): Mark Reason unreferenced.
3042         (Timed_Sleep): Likewise.
3043         (Wakeup): Likewise.
3044         (Exit_Task): Use Result.
3045         (Check_No_Locks): Mark Self_ID unreferenced.
3046
3047         * 5gtasinf.adb (New_Sproc): Make Attr constant.
3048         (Bound_Thread_Attributes): Make Sproc constant.
3049         (New_Bound_Thread_Attributes): Likewise.
3050
3051 2004-01-26  Ed Schonberg  <schonberg@gnat.com>
3052
3053         * exp_ch3.adb (Build_Slice_Assignment): New TSS procedure for
3054         one-dimensional array an slice assignments, when component type is
3055         controlled.
3056
3057         * exp_ch5.adb (Expand_Assign_Array): If array is one-dimensional,
3058         component type is controlled, and control_actions are in effect, use
3059         TSS procedure rather than generating inline code.
3060
3061         * exp_tss.ads (TSS_Slice_Assign): New TSS procedure for one-dimensional
3062         arrays with controlled components.
3063
3064 2004-01-26  Vincent Celier  <celier@gnat.com>
3065
3066         * gnatcmd.adb (GNATCmd): Add specification of argument file on the
3067         command line for the non VMS case.
3068
3069         * gnatlink.adb (Process_Binder_File): When building object file, if
3070         GNU linker is used, put all object paths between quotes, to prevent ld
3071         error when there are unusual characters (such as '!') in the paths.
3072
3073         * Makefile.generic: When there are sources in Ada and the main is in
3074         C/C++, invoke gnatmake with -B, instead of -z.
3075
3076         * vms_conv.adb (Preprocess_Command_Data): New procedure, extracted
3077         from VMS_Conversion.
3078         (Process_Argument): New procedure, extracted from VMS_Conversion. Add
3079         specification of argument file on the command line.
3080
3081 2004-01-26  Bernard Banner  <banner@gnat.com>
3082
3083         * Makefile.in: Enable GMEM_LIB and SYMLIB for x86_64
3084
3085 2004-01-26  Ed Schonberg  <schonberg@gnat.com>
3086
3087         * snames.adb: Update copyright notice.
3088         Add info on slice assignment for controlled arrays.
3089
3090 2004-01-23  Robert Dewar  <dewar@gnat.com>
3091
3092         * exp_aggr.adb: Minor reformatting
3093
3094         * exp_ch9.adb: Minor code clean up
3095         Minor reformatting
3096         Fix bad character in comment
3097
3098         PR ada/13471
3099         * targparm.adb (Get_Target_Parameters): Give clean abort error on
3100         unexpected end of file, along with more detailed message.
3101
3102 2004-01-23  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
3103
3104         * exp_pakd.adb (Install_PAT): Clear Freeze_Node for PAT and Etype of
3105         PAT.
3106
3107         * decl.c (copy_alias_set): New function.
3108         (gnat_to_gnu_entity, make_aligning_type, make_packable_type): Use it.
3109
3110 2004-01-23  Doug Rupp  <rupp@gnat.com>
3111
3112         * Makefile.in (install-gnatlib): Change occurrences of lib$$file to
3113         lib$${file} in case subsequent character is not a separator.
3114
3115 2004-01-23  Vincent Celier  <celier@gnat.com>
3116
3117         * 5vml-tgt.adb (Build_Dynamic_Library): Invoke gcc with -shared-libgcc
3118         when the GCC version is at least 3.
3119
3120         * make.adb: (Scan_Make_Arg): Pass -B to Scan_Make_Switches
3121         Remove all "Opt.", to prepare for opt split
3122
3123         * prj-part.adb (Parse_Single_Project): New Boolean out parameter
3124         Extends_All. Set to True when the project parsed is an extending all
3125         project. Fails for importing an extending all project only when the
3126         imported project is an extending all project.
3127         (Post_Parse_Context_Clause): Set Is_Extending_All to the with clause,
3128         depending on the value of Extends_All returned.
3129
3130         * prj-proc.adb (Process): Check that no project shares its object
3131         directory with a project that extends it, directly or indirectly,
3132         including a virtual project.
3133         Check that no project extended by another project shares its object
3134         directory with another also extended project.
3135
3136         * prj-tree.adb (Is_Extending_All, Set_Is_Extending_All): Allow for
3137         Kind = N_With_Clause
3138
3139         * prj-tree.ads: Minor reformatting
3140         Indicate that Flag2 also applies to N_With_Clause (Is_Extending_All).
3141
3142 2004-01-23  Ed Schonberg  <schonberg@gnat.com>
3143
3144         * sem_ch13.adb (Analyze_Attribute_Definition_Clause): If the attribute
3145         applies to a type with an incomplete view, use full view in Name of
3146         clause, for consistency with uses of Get_Attribute_Definition_Clause.
3147
3148 2004-01-23  Arnaud Charlet  <charlet@act-europe.fr>
3149
3150         * 5itaprop.adb (Set_Priority): Reset the priority to 0 when using
3151         SCHED_RR, since other values are not supported by this policy.
3152         (Initialize): Move initialization of mutex attribute to package
3153         elaboration, to prevent early access to this variable.
3154
3155         * Makefile.in: Remove mention of Makefile.adalib, unused.
3156
3157         * Makefile.adalib, 1aexcept.adb, 1aexcept.ads, 1ic.ads, 1ssecsta.adb,
3158         1ssecsta.ads: Removed, unused.
3159
3160 2004-01-21  Javier Miranda  <miranda@gnat.com>
3161
3162         * exp_aggr.adb (Build_Record_Aggr_Code): Do not build the master
3163         entity if already built in the current scope.
3164
3165         * exp_ch9.adb (Build_Master_Entity): Do not set the has_master_entity
3166         reminder in internal scopes. Required for nested limited aggregates.
3167
3168 2004-01-21  Doug Rupp  <rupp@gnat.com>
3169
3170         * Makefile.in (hyphen): New variable, default value '-'. Set to '_' on
3171         VMS. Replace all occurences of libgnat- and libgnarl- with
3172         libgnat$(hyphen) and libgnarl$(hyphen).
3173         Fixed shared library build problem on VMS.
3174
3175 2004-01-21  Robert Dewar  <dewar@gnat.com>
3176
3177         * mlib-prj.adb: Minor reformatting
3178
3179 2004-01-21  Thomas Quinot  <quinot@act-europe.fr>
3180
3181         * prj-tree.adb, 7staprop.adb, vms_conv.adb, xr_tabls.adb: Add missing
3182         'constant' keywords for declaration of pointers that are not modified.
3183
3184         * exp_pakd.adb: Fix English in comment.
3185
3186 2004-01-21  Ed Schonberg  <schonberg@gnat.com>
3187
3188         PR ada/10889
3189         * sem_ch3.adb (Analyze_Subtype_Declaration): For an array subtype,
3190         copy all attributes of the parent, including the foreign language
3191         convention.
3192
3193 2004-01-21  Sergey Rybin  <rybin@act-europe.fr>
3194
3195         PR ada/10565
3196         * sem_ch9.adb (Analyze_Delay_Alternative): Add expression type check
3197         for 'delay until' statement.
3198
3199 2004-01-20  Kelley Cook  <kcook@gcc.gnu.org>
3200
3201         * Make-lang.in: Replace $(docdir) with doc.
3202         (doc/gnat_ug_unx.info, doc/gnat_ug_vwx.info, doc/gnat_ug_vms.info
3203         doc/gnat_ug_wnt.info, doc/gnat_rm.info, doc/gnat-style.info): Update
3204         to use consistent MAKEINFO rule.
3205         (ada.man, ada.srcman): Dummy entry.
3206         (ADA_INFOFILES): Define.
3207         (ada.info, ada.srcinfo): New rules.
3208
3209 2004-01-19  Arnaud Charlet  <charlet@act-europe.fr>
3210
3211         * utils.c: Update copyright notice, missed in previous change.
3212
3213 2004-01-19  Vincent Celier  <celier@gnat.com>
3214
3215         * mlib-prj.adb (Build_Library.Add_ALI_For): Only add the ALI to the
3216         args if Bind is True. Set First_ALI, if not already done.
3217         (Build_Library): For Stand Alone Libraries, extract from one ALI file
3218         an eventual --RTS switch, for gnatbind, and all backend switches +
3219         --RTS, for linking.
3220
3221 2004-01-19  Robert Dewar  <dewar@gnat.com>
3222
3223         * sem_attr.adb, memtrack.adb: Minor reformatting
3224
3225 2004-01-19  Ed Schonberg  <schonberg@gnat.com>
3226
3227         * exp_ch6.adb (Expand_Call): Remove code to fold calls to functions
3228         that rename enumeration literals. This is properly done in sem_eval.
3229
3230         * sem_eval.ads, sem_eval.adb (Eval_Call): New procedure to fold calls
3231         to functions that rename enumeration literals.
3232
3233         * sem_res.adb (Resolve_Call): Use Eval_Call to fold static calls to
3234         functions that rename enumeration literals.
3235
3236 2004-01-16  Kazu Hirata  <kazu@cs.umass.edu>
3237
3238         * Make-lang.in (utils.o): Depend on target.h.
3239         * utils.c: Include target.h.
3240         (process_attributes): Use targetm.have_named_sections instead
3241         of ASM_OUTPUT_SECTION_NAME.
3242
3243 2004-01-16  Andreas Jaeger  <aj@suse.de>
3244
3245         * Makefile.in: Add $(DESTDIR).
3246
3247 2004-01-15  Olivier Hainque  <hainque@act-europe.fr>
3248
3249         * decl.c (gnat_to_gnu_entity, E_Variable): Retrieve the object size
3250         also when not defining if a Size clause applies. That information is
3251         not to be ignored.
3252
3253 2004-01-15  Arnaud Charlet  <charlet@act-europe.fr>
3254
3255         * Makefile.in (install-gnatlib, gnatlib-shared-default): Set up
3256         symbolic links for the shared gnat run time when needed.
3257
3258 2004-01-15  Vasiliy Fofanov  <fofanov@act-europe.fr>
3259
3260         * memtrack.adb (Gmem_Initialize): check that gmem.out could be opened
3261         for writing, and terminate with an error message if not.
3262
3263 2004-01-15  Ed Schonberg  <schonberg@gnat.com>
3264
3265         * sem_attr.adb (Resolve_Attribute, case 'Access): Remove spurious
3266         warning on an access to subprogram in an instance, when the target
3267         type is declared in the same generic unit.
3268         (Eval_Attribute): If 'access is known to fail accessibility check,
3269         rewrite as a raise statement.
3270
3271 2004-01-15  GNAT Script  <nobody@gnat.com>
3272
3273         * Make-lang.in: Makefile automatically updated
3274
3275 2004-01-15  Kelley Cook  <kcook@gcc.gnu.org>
3276
3277         * Make-lang.in (ada.srcextra): Dummy entry.
3278
3279 2004-01-14  Kelley Cook  <kcook@gcc.gnu.org>
3280
3281         * Make-lang.in: Only regenerate texi files if --enable-maintainer-mode.
3282
3283 2004-01-13  Ed Schonberg  <schonberg@gnat.com>
3284
3285         * exp_ch3.adb (Build_Assignment): Fix bug in handling of controlled
3286         components that are initialized with aggregates.
3287
3288 2004-01-13  Vincent Celier  <celier@gnat.com>
3289
3290         * gnatlink.adb (Process_Binder_File): To find directory of shared
3291         libgcc, if "gcc-lib" is not a subdirectory, look for the last
3292         subdirectory "lib" in the path of the shared libgnat or libgnarl.
3293
3294         * make.adb (Gnatmake): If GCC version is at least 3, link with
3295         -shared-libgcc, when there is at least one shared library project.
3296
3297         * opt.ads (GCC_Version): New integer constant.
3298
3299         * adaint.c (get_gcc_version): New function.
3300
3301 2004-01-13  Robert Dewar  <dewar@gnat.com>
3302
3303         * sem_dist.adb, sem_res.adb, sem_util.adb,
3304         sprint.adb, 3zsocthi.adb, einfo.adb, cstand.adb,
3305         exp_ch4.adb, exp_ch9.adb, exp_dist.adb: Minor reformatting
3306
3307 2004-01-13  Thomas Quinot  <quinot@act-europe.fr>
3308
3309         * s-interr.adb, s-stache.adb, s-taenca.adb, g-regpat.adb,
3310         g-spitbo.adb, 5itaprop.adb: Add missing 'constant' keywords in object
3311         declarations.
3312
3313 2004-01-12  Arnaud Charlet  <charlet@act-europe.fr>
3314
3315         * misc.c: Remove trailing spaces.
3316         Update copyright notice missed in previous change.
3317
3318         PR ada/13572
3319         * bld.adb (Recursive_Process): Reference prefix/share/gnat instead of
3320         prefix/share/make
3321
3322         * Makefile.generic: Update copyright.
3323         Add license notice.
3324
3325         * Makefile.in (ADA_SHARE_MAKE_DIR): Set to prefix/share/gnat instead
3326         of prefix/share/make.
3327
3328         * Makefile.prolog: Update copyright.
3329         Add license notice.
3330
3331 2004-01-12  Laurent Pautet  <pautet@act-europe.fr>
3332
3333         * 3vsocthi.adb, 3vsocthi.ads, 3wsocthi.adb,
3334         3wsocthi.ads, 3zsocthi.adb, 3zsocthi.ads, g-socthi.adb,
3335         g-socthi.ads (Socket_Error_Message): Return C.Strings.chars_ptr
3336         instead of String.
3337
3338         * g-socket.adb (Raise_Socket_Error): Use new Socket_Error_Message
3339         signature.
3340
3341 2004-01-12  Javier Miranda  <miranda@gnat.com>
3342
3343         * cstand.adb, exp_aggr.adb, exp_ch3.adb, exp_ch9.adb, exp_dist.adb,
3344         exp_imgv.adb, exp_pakd.adb, exp_util.adb, par-ch3.adb, sem.adb,
3345         sem_ch12.adb, sem_ch3.adb, sem_dist.adb, sem_prag.adb, sem_res.adb,
3346         sem_util.adb, sinfo.adb, sinfo.ads, sprint.adb: Addition of
3347         Component_Definition node.
3348
3349 2004-01-12  Ed Falis  <falis@gnat.com>
3350
3351         * impunit.adb: Add GNAT.Secondary_Stack_Info as user-visible unit
3352
3353 2004-01-12  Thomas Quinot  <quinot@act-europe.fr>
3354
3355         * link.c: Change default libgnat kind to STATIC for FreeBSD.
3356
3357 2004-01-12  Bernard Banner  <banner@gnat.com>
3358
3359         * Makefile.in: map 86numaux to a-numaux for x86_64
3360
3361 2004-01-12  Ed Schonberg  <schonberg@gnat.com>
3362
3363         * lib-xref.adb (Get_Type_Reference): If the type is the subtype entity
3364         generated to rename a generic actual, go to the actual itself, the
3365         subtype is not a user-visible entity.
3366
3367         * sem_ch7.adb (Uninstall_Declarations): If an entity in the visible
3368         part is a private subtype, reset the visibility of its full view, if
3369         any, to be consistent.
3370
3371         PR ada/13417
3372         * sem_ch12.adb (Analyze_Formal_Package): Diagnose properly an attempt
3373         to use a generic package G as a formal package for another generic
3374         declared within G.
3375
3376 2004-01-12  Robert Dewar  <dewar@gnat.com>
3377
3378         * trans.c (Eliminate_Error_Msg): New procedure called to generate msg
3379
3380         * usage.adb: Remove mention of obsolete -gnatwb switch
3381         Noticed during code reading
3382
3383 2004-01-12  Jerome Guitton  <guitton@act-europe.fr>
3384
3385         * 1ssecsta.adb: Minor changes for -gnatwa warnings
3386
3387 2004-01-12  GNAT Script  <nobody@gnat.com>
3388
3389         * Make-lang.in: Makefile automatically updated
3390
3391 2004-01-09  Mark Mitchell  <mark@codesourcery.com>
3392
3393         * misc.c (gnat_expand_expr): Add alt_rtl parameter.
3394
3395 2004-01-07  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
3396
3397         * link.c [sgi] (shared_libgnat_default): Change to STATIC.
3398
3399 2004-01-05  Kelley Cook  <kcook@gcc.gnu.org>
3400
3401         * Make-lang.in: Revert stamp-xgnatug change from 2003-12-18.
3402         Update comment and copyright date.
3403         * stamp-xgnatug: Delete.
3404
3405 2004-01-05  Robert Dewar  <dewar@gnat.com>
3406
3407         * 1ssecsta.ads: Default_Secondary_Stack is not a constant since it may
3408         be modified by the binder generated main program if the -D switch is
3409         used.
3410
3411         * 4onumaux.ads, 4znumaux.ads: Add Pure_Function pragmas for all
3412         imported functions (since now we expect this to be done for imported
3413         functions)
3414
3415         * 5vtaprop.adb: Add several ??? for sections requiring more comments
3416         Minor reformatting throughout
3417
3418         * 5zinit.adb: Minor reformatting
3419         Add 2004 to copyright date
3420         Minor changes to avoid -gnatwa warnings
3421         Correct some instances of using OR instead of OR ELSE (noted while
3422         doing reformatting)
3423
3424         * sprint.adb: Minor updates to avoid -gnatwa warnings
3425
3426         * s-secsta.ads, s-secsta.adb:
3427         (SS_Get_Max): New function to obtain high water mark for ss stack
3428         Default_Secondary_Stack is not a constant since it may be modified by
3429         the binder generated main program if the -D switch is used.
3430
3431         * switch-b.adb: New -Dnnn switch for binder
3432
3433         * switch-c.adb:
3434         Make -gnatg imply all warnings currently in -gnatwa
3435
3436         * vms_conv.adb: Minor reformatting
3437         Add 2004 to copyright notice
3438         Add 2004 to printed copyright notice
3439
3440         * 3vexpect.adb, 4zsytaco.adb, 3wsocthi.adb, 3zsocthi.adb,
3441         3zsocthi.adb, 56taprop.adb, 56tpopsp.adb, 5amastop.adb,
3442         5aml-tgt.adb, 5ataprop.adb, 5ataprop.adb, 5atpopsp.adb,
3443         5ftaprop.adb, 5ginterr.adb, 5gmastop.adb, 5gml-tgt.adb,
3444         5gtaprop.adb, 5hml-tgt.adb, 5hml-tgt.adb, 5hml-tgt.adb,
3445         5htaprop.adb, 5htraceb.adb, 5itaprop.adb, 5lml-tgt.adb,
3446         5sml-tgt.adb, 5staprop.adb, 5staprop.adb, 5stpopsp.adb,
3447         5vasthan.adb, 5vinmaop.adb, 5vinterr.adb, 5vtaprop.adb,
3448         5vml-tgt.adb, 5vtaprop.adb, 5wosprim.adb, 5wtaprop.adb,
3449         5zinterr.adb, 5zintman.adb, 5zml-tgt.adb, 5ztaprop.adb,
3450         6vcpp.adb, 6vcstrea.adb, 7staprop.adb, 7stpopsp.adb,
3451         vxaddr2line.adb, vxaddr2line.adb, xref_lib.adb, xr_tabls.adb,
3452         xr_tabls.ads, s-tasdeb.adb, s-tasdeb.adb, sem_res.ads,
3453         sem_util.adb, sem_util.adb, sem_util.ads, s-interr.adb,
3454         checks.adb, clean.adb, cstand.adb, einfo.ads,
3455         einfo.adb, exp_aggr.adb, exp_ch11.adb, exp_ch3.adb,
3456         exp_ch4.adb, exp_ch5.adb, exp_ch7.adb, exp_ch9.adb,
3457         prj-nmsc.adb, prj-pp.adb, prj-util.adb, sem_attr.adb,
3458         sem_ch10.adb, sem_ch12.adb, sem_ch4.adb, g-dirope.adb,
3459         g-dirope.ads, gnatlbr.adb, i-cstrea.adb, inline.adb,
3460         lib-xref.adb, sem_ch5.adb, sem_ch7.adb, sem_ch8.adb:
3461         Minor reformatting and code clean ups.
3462         Minor changes to prevent -gnatwa warnings
3463
3464         * ali.adb: Minor reformatting and cleanup of code
3465         Acquire new SS indication of secondary stack use from ali files
3466
3467         * a-numaux.ads: Add Pure_Function pragmas for all imported functions
3468         (since now we expect this to be done for imported functions)
3469
3470         * bindgen.adb: Generate call to modify default secondary stack size if
3471         -Dnnn switch given
3472
3473         * bindusg.adb: Add line for new -D switch
3474
3475         * exp_aggr.adb (Type_May_Have_Bit_Aligned_Components): More appropriate
3476         replacement name for Type_May_Have_Non_Bit_Aligned_Components!
3477         Add circuitry for both records and arrays to avoid gigi
3478         processing if the type involved has non-bit-aligned components
3479
3480         * exp_ch5.adb (Expand_Assign_Array): Avoid assumption that
3481         N_String_Literal node always references an E_String_Literal_Subtype
3482         entity. This may not be true in the future.
3483         (Possible_Bit_Aligned_Component): Move processing of
3484         Component_May_Be_Bit_Aligned from exp_ch5 to exp_util
3485
3486         * exp_ch6.adb (Expand_Thread_Body): Pick up
3487         Default_Secondary_Stack_Size as variable so that we get value modified
3488         by possible -Dnnn binder parameter.
3489
3490         * exp_util.adb (Component_May_Be_Bit_Aligned): New function.
3491         (Type_May_Have_Bit_Aligned_Components): New function.
3492
3493         * exp_util.ads (Component_May_Be_Bit_Aligned): New function.
3494         (Type_May_Have_Bit_Aligned_Components): New function.
3495
3496         * fe.h: (Set_Identifier_Casing): Fix prototype.
3497         Add declaration for Sem_Elim.Eliminate_Error_Msg.
3498         Minor reformatting.
3499
3500         * freeze.adb (Freeze_Entity): Add RM reference to error message about
3501         importing constant atomic/volatile objects.
3502         (Freeze_Subprogram): Reset Is_Pure indication for imported subprogram
3503         unless explicit Pure_Function pragma given, to avoid insidious bug of
3504         call to non-pure imported function getting eliminated.
3505
3506         * gnat1drv.adb, gnatbind.adb, gnatchop.adb, gnatfind.adb,
3507         gnatls.adb, gnatlink.adb, gnatmem.adb, gnatname.adb, gnatsym.adb,
3508         gnatxref.adb, gprcmd.adb, gprep.adb, make.adb: Minor reformatting
3509         Add 2004 to printed copyright notice
3510
3511         * lib-writ.ads, lib-writ.adb: Put new SS flag in ali file if secondary
3512         stack used.
3513
3514         * Makefile.rtl: Add entry for g-sestin.o
3515         g-sestin.ads: New file.
3516
3517         * mdll.adb: Minor changes to avoid -gnatwa warnings
3518
3519         * mlib-tgt.adb: Minor reformatting
3520
3521         * opt.ads: New parameter Default_Secondary_Stack_Size (GNATBIND)
3522         New switch Sec_Stack_Used (GNAT, GNATBIND)
3523         Make Default_Secondary_Stack_Size a variable instead of a constant,
3524         so that it can be modified by the new -Dnnn bind switch.
3525
3526         * rtsfind.adb (Load_Fail): Give full error message in configurable
3527         run-time mode if all_errors mode is set. This was not done in the case
3528         of a file not found, which was an oversight.
3529         Note if secondary stack unit is used by compiler.
3530
3531         * sem_elab.adb (Check_A_Call): Rewrite to avoid trying to put
3532         ineffective elaborate all pragmas on non-visible packages (this
3533         happened when a renamed subprogram was called). Now the elaborate all
3534         always goes on the package containing the renaming rather than the one
3535         containing the renamed subprogram.
3536
3537         * sem_elim.ads, sem_elim.adb (Eliminate_Error_Msg): New procedure
3538         (Process_Eliminate_Pragma): Add parameter to capture pragma location.
3539
3540         * sem_eval.adb (Eval_String_Literal): Do not assume that string literal
3541         has an Etype that references an E_String_Literal.
3542         (Eval_String_Literal): Avoid assumption that N_String_Literal node
3543         always references an E_String_Literal_Subtype entity. This may not
3544         be true in the future.
3545
3546         * sem_prag.adb (Process_Eliminate_Pragma): Add parameter to capture
3547         pragma location.
3548
3549         * sem_res.adb (Resolve): Specialize msg for function name used in proc
3550         call.
3551
3552 2004-01-05  Ed Falis  <falis@gnat.com>
3553
3554         * g-debuti.adb: Replaced direct boolean operator with short-circuit
3555         form.
3556
3557 2004-01-05  Vincent Celier  <celier@gnat.com>
3558
3559         * bld.adb: Minor comment updates
3560         (Process_Declarative_Items): Correct incorrect name (Index_Name instead
3561         of Item_Name).
3562
3563         * make.adb (Gnatmake): Special process for files to compile/check when
3564         -B is specified. Fail when there are only foreign mains in attribute
3565         Main of the project file and -B is not specified. Do not skip bind/link
3566         steps when -B is specified.
3567
3568         * makeusg.adb: Document new switch -B
3569
3570         * opt.ads (Build_Bind_And_Link_Full_Project): New Boolean flag
3571
3572         * switch-m.adb: (Scan_Make_Switches): Process -B switch
3573
3574         * vms_data.ads: Add new GNAT PRETTY qualifier
3575         /FORM_FEED_AFTER_PRAGMA_PAGE for switch -ff
3576
3577 2004-01-05  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
3578
3579         * trans.c (tree_transform, case N_Free_Statement): Handle thin pointer
3580         case.
3581
3582         * misc.c (gnat_printable_name): If VERBOSITY is 2, call
3583         Set_Identifier_Casing.
3584
3585         * decl.c (gnat_to_gnu_entity, E_Function): Give error if return type
3586         has size that overflows.
3587
3588 2004-01-05  Gary Dismukes  <dismukes@gnat.com>
3589
3590         * exp_ch4.adb (Expand_Array_Comparison): Add Boolean constant to avoid
3591         -gnatwa warning on static condition.
3592
3593 2004-01-05  Doug Rupp  <rupp@gnat.com>
3594
3595         * link.c: (shared_libgnat_default) [VMS]: Change to STATIC.
3596
3597 2004-01-05  Arnaud Charlet  <charlet@act-europe.fr>
3598
3599         * Makefile.in: Install ali files using INSTALL_DATA_DATE to preserve
3600         all attributes, including read-only attribute.
3601
3602 2004-01-05  Pascal Obry  <obry@gnat.com>
3603
3604         * bindgen.adb (Gen_Object_Files_Options): Generate the new shared
3605         library naming scheme.
3606
3607         * mlib-prj.adb (Build_Library): Generate different names for the static
3608         or dynamic version of the GNAT runtime. This is needed to support the
3609         new shared library naming scheme.
3610         (Process_Binder_File): Add detection of shared library in binder file
3611         based on the new naming scheme.
3612
3613         * gnatlink.adb (Process_Binder_File): Properly detect the new naming
3614         scheme for the shared runtime libraries.
3615
3616         * Makefile.in:
3617         (LIBRARY_VERSION) [VMS]: Convert all . to _ to conform to new naming
3618         scheme.
3619         (install-gnatlib): Do not create symlinks for shared libraries.
3620         (gnatlib-shared-default): Idem.
3621         (gnatlib-shared-dual-win32): New target. Not used for now as the
3622         auto-import feature does not support arrays/records.
3623         (gnatlib-shared-win32): Do not create copy for the shared libraries.
3624         (gnatlib-shared-vms): Fix shared runtime libraries names.
3625
3626         * osint.ads, osint.adb (Shared_Lib): New routine, returns the target
3627         dependent runtime shared library name.
3628
3629 2004-01-05  Vasiliy Fofanov  <fofanov@act-europe.fr>
3630
3631         * osint.adb (Read_Library_Info): Remove bogus check if ALI is older
3632         than the object.
3633
3634 2004-01-05  Ed Schonberg  <schonberg@gnat.com>
3635
3636         * sem_ch4.adb (Analyze_Allocator): Check restriction on dynamic
3637         protected objects when allocator has a subtype indication, not a
3638         qualified expression. Note that qualified expressions may have to be
3639         checked when limited aggregates are implemented.
3640
3641         * sem_prag.adb (Analyze_Pragma, case Import): If enclosing package is
3642         pure, emit warning.
3643         (Analyze_Pragma, case Pure_Function): If enclosing package is pure and
3644         subprogram is imported, remove warning.
3645
3646 2004-01-05  Geert Bosch  <bosch@gnat.com>
3647
3648         * s-poosiz.adb: Update copyright notice.
3649         (Allocate): Use Task_Lock to protect against concurrent access.
3650         (Deallocate): Likewise.
3651
3652 2004-01-05  Joel Brobecker  <brobecker@gnat.com>
3653
3654         * s-stalib.adb (Elab_Final_Code): Add missing year in date inside ???
3655         comment.
3656
3657 2003-12-23  Kelley Cook  <kcook@gcc.gnu.org>
3658
3659         * gnat_ug.texi: Force a CVS commit by updating copyright.
3660         * gnat_ug_vxw.texi: Regenerate.
3661         * gnat_ug_wnt.texi: Regenerate.
3662         * gnat_ug_vms.texi: Regenerate.
3663         * gnat_ug_unx.texi: Regenerate.
3664
3665 2003-12-20  Kazu Hirata  <kazu@cs.umass.edu>
3666
3667         * trans.c: Remove uses of "register" specifier in
3668         declarations of local variables.
3669
3670 2003-12-18  Kelley Cook  <kcook@gcc.gnu.org>
3671
3672         * stamp-xgnatug: New stamp file.
3673         * Make-lang.in (stamp-xgnatug):  New stamp file and comment.
3674         (ada/doctools/xgnatug): Add $(build_exeext).
3675         (ada/gnat_ug_unx.texi, ada/gnat_ug_vwx.texi, ada/gnat_ug_vms.texi
3676         ada/gnat_ug_wnt.texi): Update to depend on stamp-xgnatug.
3677
3678 2003-12-17  Ed Falis  <falis@gnat.com>
3679
3680         * a-elchha.adb (Tailored_Exception_Information): made Info constant to
3681         eliminate warning.
3682
3683         * a-exextr.adb: Add context clause for
3684         Ada.Exceptions.Last_Chance_Handler.
3685
3686 2003-12-17  Sergey Rybin  <rybin@act-europe.fr>
3687
3688         * cstand.adb (Create_Standard): Change the way how the declaration of
3689         the Duration type is created (making it the same way as it is for all
3690         the other standard types).
3691
3692 2003-12-17  Robert Dewar  <dewar@gnat.com>
3693
3694         * s-crtl.ads: Fix header format
3695         Change Pure to Preelaborate
3696
3697 2003-12-17  Ed Schonberg  <schonberg@gnat.com>
3698
3699         * checks.adb (Selected_Length_Checks): Generate an Itype reference for
3700         the expression type only if it is declared in the current unit.
3701
3702         * sem_ch3.adb (Constrain_Index): Handle properly a range whose bounds
3703         are universal and already analyzed, as can occur in constrained
3704         subcomponents that depend on discriminants, when one constraint is a
3705         subtype mark.
3706
3707         * sem_res.adb (Resolve_Type_Conversion): Any arithmetic expression of
3708         type Any_Fixed is legal as the argument of a conversion, if only one
3709         fixed-point type is in context.
3710
3711 2003-12-17  GNAT Script  <nobody@gnat.com>
3712
3713         * Make-lang.in: Makefile automatically updated
3714
3715 2003-12-15  Robert Dewar  <dewar@gnat.com>
3716
3717         * exp_ch6.adb (Expand_Thread_Body): Fix error in picking up default
3718         sec stack size.
3719
3720 2003-12-15  Vincent Celier  <celier@gnat.com>
3721
3722         * gnatchop.adb: (Error_Msg): Do not exit on error for a warning
3723         (Gnatchop): Do not set failure status when reporting the number of
3724         warnings.
3725
3726 2003-12-15  Doug Rupp  <rupp@gnat.com>
3727
3728         * s-ctrl.ads: New file.
3729
3730         * Makefile.rtl (GNAT_RTL_NONTASKING_OBJS): Add s-crtl$(objext).
3731
3732         * Make-lang.in: (GNAT_ADA_OBJS): Add ada/s-crtl.o.
3733         (GNATBIND_OBJS): Add ada/s-crtl.o.
3734
3735         * Makefile.in [VMS]: Clean up ifeq rules.
3736
3737         * gnatlink.adb, 6vcstrea.adb, a-direio.adb, a-sequio.adb,
3738         a-ststio.adb, a-textio.adb, g-os_lib.adb, a-witeio.adb,
3739         g-os_lib.ads, i-cstrea.adb, i-cstrea.ads, s-direio.adb,
3740         s-fileio.adb, s-memcop.ads, s-memory.adb, s-stache.adb,
3741         s-tasdeb.adb: Update copyright.
3742         Import System.CRTL.
3743         Make minor modifications to use System.CRTL declared functions instead
3744         of importing locally.
3745
3746 2003-12-15  GNAT Script  <nobody@gnat.com>
3747
3748         * Make-lang.in: Makefile automatically updated
3749
3750 2003-12-11  Ed Falis  <falis@gnat.com>
3751
3752         * 5zinit.adb: Clean up.
3753
3754         * 5zintman.adb (Notify_Exception): replaced case statement with a call
3755         to __gnat_map_signal, imported from init.c to support
3756         signal -> exception mappings that depend on the vxWorks version.
3757
3758         * init.c:
3759         Created and exported __gnat_map_signal to support signal -> exception
3760         mapping that is dependent on the VxWorks version.
3761         Change mapping of SIGBUS from Program_Error to Storage_Error on VxWorks
3762
3763 2003-12-11  Vasiliy Fofanv  <fofanov@act-europe.fr>
3764
3765         * 5wosinte.ads: Link with -mthreads switch.
3766
3767 2003-12-11  Arnaud Charlet  <charlet@act-europe.fr>
3768
3769         * init.c (__gnat_install_handler [NetBSD]): Set
3770         __gnat_handler_installed, as done on all other platforms.
3771         Remove duplicated code.
3772
3773 2003-12-11  Jerome Guitton  <guitton@act-europe.fr>
3774
3775         * Makefile.in (rts-zfp, rts-ravenscar): Create libgnat.a.
3776
3777 2003-12-11  Thomas Quinot  <quinot@act-europe.fr>
3778
3779         * sinfo.ads: Fix inconsistent example code in comment.
3780
3781 2003-12-11  Robert Dewar  <dewar@gnat.com>
3782
3783         * a-tiinau.adb: Add a couple of comments
3784
3785         * sem_ch3.adb: Minor reformatting
3786
3787         * sem_prag.adb:
3788         Fix bad prototype of Same_Base_Type in body (code reading cleanup)
3789         Minor reformatting throughout
3790
3791 2003-12-11  Ed Schonberg  <schonberg@gnat.com>
3792
3793         * exp_ch7.adb (Establish_Transient_Scope): If the call is within the
3794         bounds of a loop, create a separate block in order to generate proper
3795         cleanup actions to prevent memory leaks.
3796
3797         * sem_res.adb (Resolve_Call): After a call to
3798         Establish_Transient_Scope, the call may be rewritten and relocated, in
3799         which case no further processing is needed.
3800
3801         * sem_util.adb: (Wrong_Type): Refine previous fix.
3802          Fixes ACATS regressions.
3803
3804         PR ada/13353
3805
3806         * sem_prag.adb (Back_End_Cannot_Inline): A renaming_as_body can always
3807         be inlined.
3808
3809 2003-12-08  Jerome Guitton  <guitton@act-europe.fr>
3810
3811         * 5ytiitho.adb, 5zthrini.adb, 5ztiitho.adb, i-vthrea.adb,
3812         i-vthrea.ads, s-tpae65.adb, s-tpae65.ads: Cleanup: Remove a bunch of
3813         obsolete files.
3814
3815         * Makefile.in: (rts-ravenscar): Generate an empty libgnat.a.
3816         (rts-zfp): Ditto.
3817
3818 2003-12-08  Robert Dewar  <dewar@gnat.com>
3819
3820         * 7sintman.adb: Minor reformatting
3821
3822         * bindgen.adb: Configurable_Run_Time mode no longer suppresses the
3823         standard linker options to get standard libraries linked. We now plan
3824         to provide dummy versions of these libraries to match the appropriate
3825         configurable run-time (e.g. if a library is not needed at all, provide
3826         a dummy empty library).
3827
3828         * targparm.ads: Configurable_Run_Time mode no longer affects linker
3829         options (-L parameters and standard libraries). What we plan to do is
3830         to provide dummy libraries where the libraries are not required.
3831
3832         * gnatbind.adb: Minor comment improvement
3833
3834 2003-12-08  Javier Miranda  <miranda@gnat.com>
3835
3836         * exp_aggr.adb (Build_Record_Aggr_Code): Do not remove the expanded
3837         aggregate in the parent. Otherwise constants with limited aggregates
3838         are not supported. Add new formal to pass the component type (Ctype).
3839         It is required to call the corresponding IP subprogram in case of
3840         default initialized components.
3841         (Gen_Assign): In case of default-initialized component, generate a
3842         call to the IP subprogram associated with the component.
3843         (Build_Record_Aggr_Code): Remove the aggregate from the parent in case
3844         of aggregate with default initialized components.
3845         (Has_Default_Init_Comps): Improve implementation to recursively check
3846         all the present expressions.
3847
3848         * exp_ch3.ads, exp_ch3.adb (Build_Initialization_Call): Add new formal
3849         to indicate that the initialization call corresponds to a
3850         default-initialized component of an aggregate.
3851         In case of default initialized aggregate with tasks this parameter is
3852         used to generate a null string (this is just a workaround that must be
3853         improved later). In case of discriminants, this parameter is used to
3854         generate a selected component node that gives access to the discriminant
3855         value.
3856
3857         * exp_ch9.ads, exp_ch9.adb (Build_Task_Allocate_Block_With_Stmts): New
3858         subprogram, based on Build_Task_Allocate_Block, but adapted to expand
3859         allocated aggregates with default-initialized components.
3860
3861         * par-ch4.adb (P_Aggregate_Or_Paren_Expr): Improve error message if
3862         the box notation is used in positional aggregates.
3863
3864 2003-12-08  Samuel Tardieu  <tardieu@act-europe.fr>
3865
3866         * lib.ads: Fix typo in comment
3867
3868 2003-12-08  Vincent Celier  <celier@gnat.com>
3869
3870         * prj.adb (Project_Empty): New component Unkept_Comments
3871         (Scan): Remove procedure; moved to Prj.Err.
3872
3873         * prj.ads (Project_Data): New Boolean component Unkept_Comments
3874         (Scan): Remove procedure; moved to Prj.Err.
3875
3876         * prj-dect.adb: Manage comments for the different declarations.
3877
3878         * prj-part.adb (With_Record): New component Node
3879         (Parse): New Boolean parameter Store_Comments, defaulted to False.
3880         Set the scanner to return ends of line and comments as tokens, if
3881         Store_Comments is True.
3882         (Pre_Parse_Context_Clause): Create the N_With_Clause nodes so that
3883         comments are associated with these nodes. Store the node IDs in the
3884         With_Records.
3885         (Post_Parse_Context_Clause): Use the N_With_Clause nodes stored in the
3886         With_Records.
3887         (Parse_Single_Project): Call Pre_Parse_Context_Clause before creating
3888         the N_Project node. Call Tree.Save and Tree.Reset before scanning the
3889         current project. Call Tree.Restore afterwards. Set the various nodes
3890         for comment storage (Next_End, End_Of_Line, Previous_Line,
3891         Previous_End).
3892
3893         * prj-part.ads (Parse): New Boolean parameter Store_Comments,
3894         defaulted to False.
3895
3896         * prj-pp.adb (Write_String): New Boolean parameter Truncated, defaulted
3897         to False. When Truncated is True, truncate the string, never go to the
3898         next line.
3899         (Write_End_Of_Line_Comment): New procedure
3900         (Print): Process comments for nodes N_With_Clause,
3901         N_Package_Declaration, N_String_Type_Declaration,
3902         N_Attribute_Declaration, N_Typed_Variable_Declaration,
3903         N_Variable_Declaration, N_Case_Construction, N_Case_Item.
3904         Process nodes N_Comment.
3905
3906         * prj-tree.ads, prj-tree.adb (Default_Project_Node): If it is a node
3907         without comments and there are some comments, set the flag
3908         Unkept_Comments to True.
3909         (Scan): If there are comments, set the flag Unkept_Comments to True and
3910         clear the comments.
3911         (Project_Node_Kind): Add enum values N_Comment_Zones, N_Comment
3912         (Next_End_Nodes: New table
3913         (Comment_Zones_Of): New function
3914         (Scan): New procedure; moved from Prj. Accumulate comments in the
3915         Comments table and set end of line comments, comments after, after end
3916         and before end.
3917         (Add_Comments): New procedure
3918         (Save, Restore, Seset_State): New procedures
3919         (There_Are_Unkept_Comments): New function
3920         (Set_Previous_Line_Node, Set_Previous_End_Node): New procedures
3921         (Set_End_Of_Line, Set_Next_End_Node, Remove_Next_End_Node): New
3922         procedures.
3923         (First_Comment_After, First_Comment_After_End): New functions
3924         (First_Comment_Before, First_Comment_Before_End): New functions
3925         (Next_Comment): New function
3926         (End_Of_Line_Comment, Follows_Empty_Line,
3927         Is_Followed_By_Empty_Line): New functions
3928         (Set_First_Comment_After, Set_First_Comment_After_End): New procedures
3929         (Set_First_Comment_Before, Set_First_Comment_Before_End): New procedures
3930         (Set_Next_Comment): New procedure
3931         (Default_Project_Node): Associate comment before if the node can store
3932         comments.
3933
3934         * scans.ads (Token_Type): New enumeration value Tok_Comment
3935         (Comment_Id): New global variable
3936
3937         * scng.ads, scng.adb (Comment_Is_Token): New Boolean global variable,
3938         defaulted to False.
3939         (Scan): Store position of start of comment. If comments are tokens, set
3940         Comment_Id and set Token to Tok_Comment when scanning a comment.
3941         (Set_Comment_As_Token): New procedure
3942
3943         * sinput-p.adb: Update Copyright notice
3944         (Source_File_Is_Subunit): Call Prj.Err.Scanner.Scan instead of Prj.Scan
3945         that no longer exists.
3946
3947 2003-12-08  Javier Miranda  <miranda@gnat.com>
3948
3949         * sem_aggr.adb: Add dependence on Exp_Tss package
3950         Correct typo in comment
3951         (Resolve_Aggregate): In case of array aggregates set the estimated
3952         type of the aggregate before calling resolve. This is needed to know
3953         the name of the corresponding IP in case of limited array aggregates.
3954         (Resolve_Array_Aggregate): Delay the resolution to the expansion phase
3955         in case of default initialized array components.
3956
3957         * sem_ch12.adb (Analyze_Formal_Object_Declaration): Allow limited
3958         types. Required to give support to limited aggregates in generic
3959         formals.
3960
3961 2003-12-08  Ed Schonberg  <schonberg@gnat.com>
3962
3963         * sem_ch3.adb (Check_Initialization): For legality purposes, an
3964         inlined body functions like an instantiation.
3965         (Decimal_Fixed_Point_Declaration): Do not set kind of first subtype
3966         until bounds are analyzed, to diagnose premature use of type.
3967
3968         * sem_util.adb (Wrong_Type): Improve error message when the type of
3969         the expression is used prematurely.
3970
3971 2003-12-08  GNAT Script  <nobody@gnat.com>
3972
3973         * Make-lang.in: Makefile automatically updated
3974
3975 2003-12-08  Arnaud Charlet  <charlet@act-europe.fr>
3976
3977         * sinfo.h, einfo.h, nmake.ads, nmake.adb, treeprs.ads: Removed, since
3978         they are automatically generated by Make-lang.in and cause nothing but
3979         maintenance troubles.
3980
3981 2003-12-05  Thomas Quinot  <quinot@act-europe.fr>
3982
3983         * 3ssoliop.ads: Fix comment (this is the Solaris, not the UnixWare,
3984         version of this unit).
3985
3986 2003-12-05  Olivier Hainque  <hainque@act-europe.fr>
3987
3988         * 53osinte.ads, 54osinte.ads, 55osinte.ads, 56osinte.ads, 5bosinte.ads,
3989         5cosinte.ads, 5hosinte.ads, 5iosinte.ads, 5losinte.ads,
3990         5tosinte.ads: Define the SA_SIGINFO constant, to allow references from
3991         the body of System.Interrupt_Management common to several targets.
3992         Update copyright notice when appropriate.
3993
3994         * 52osinte.ads, 5posinte.ads: Define a dummy value for the SA_SIGINFO
3995         constant.
3996
3997         * 7sintman.adb (elaboration): Set SA_SIGINFO in the sigaction flags,
3998         to ensure that the kernel fills in the interrupted context structure
3999         before calling a signal handler, which is necessary to be able to
4000         unwind past it. Update the copyright notice.
4001
4002 2003-12-05  Jerome Guitton  <guitton@act-europe.fr>
4003
4004         * a-elchha.ads: New file.
4005
4006         * a-elchha.adb: New default last chance handler. Contents taken from
4007         Ada.Exceptions.Exception_Traces.Unhandled_Exception_Terminate.
4008
4009         * a-exextr.adb (Unhandled_Exception_Terminate): Most of this routine
4010         is moved to a-elchha.adb to provide a target-independent default last
4011         chance handler.
4012
4013         * Makefile.rtl: Add a-elchha.o
4014
4015         * Make-lang.in (GNAT_ADA_OBJS, GNATBIND_OBJS): Add a-elchha.o.
4016
4017 2003-12-05  Ed Schonberg  <schonberg@gnat.com>
4018
4019         * exp_ch6.adb (Expand_Call): If the subprogram is inlined and is
4020         declared in an instance, do not inline the call if the instance is not
4021         frozen yet, to prevent order of elaboration problems.
4022
4023         * sem_prag.adb: Add comments for previous fix.
4024
4025 2003-12-05  Samuel Tardieu  <tardieu@act-europe.fr>
4026
4027         * g-table.adb: Use the right variable in Set_Item.
4028         Update copyright notice.
4029
4030 2003-12-05  Arnaud Charlet  <charlet@act-europe.fr>
4031
4032         * Makefile.in: Remove unused rules.
4033
4034 2003-12-05  Vincent Celier  <celier@gnat.com>
4035
4036         * switch-c.adb (Scan_Front_End_Switches): Remove processing of
4037         -nostdlib. Not needed here after all.
4038
4039 2003-12-03  Thomas Quinot  <quinot@act-europe.fr>
4040
4041         PR ada/11724
4042
4043         * adaint.h, adaint.c, g-os_lib.ads:
4044         Do not assume that the offset argument to lseek(2) is a 32 bit integer,
4045         on some platforms (including FreeBSD), it is a 64 bit value.
4046         Introduce a __gnat_lseek wrapper in adaint.c to allow for portability.
4047
4048 2003-12-03  Arnaud Charlet  <charlet@act-europe.fr>
4049
4050         * gnatvsn.ads (Library_Version): Now contain only the relevant
4051         version info.
4052         (Verbose_Library_Version): New constant.
4053
4054         * g-spipat.adb, g-awk.adb, g-debpoo.adb,
4055         g-memdum.adb, g-thread.adb, s-geveop.adb, s-interr.adb,
4056         s-taskin.adb, s-tassta.adb: Make code compile with -gnatwa.
4057
4058         * gnatlbr.adb: Clean up: replace Library_Version by
4059         Verbose_Library_Version.
4060
4061         * make.adb, lib-writ.adb, exp_attr.adb:
4062         Clean up: replace Library_Version by Verbose_Library_Version.
4063
4064         * 5lintman.adb: Removed.
4065
4066         * Makefile.in:
4067         Update and simplify computation of LIBRARY_VERSION.
4068         Fix computation of GSMATCH_VERSION.
4069         5lintman.adb is no longer used: replaced by 7sintman.adb.
4070
4071 2003-12-03  Robert Dewar  <dewar@gnat.com>
4072
4073         * exp_ch5.adb:
4074         (Possible_Bit_Aligned_Component): Maybe_Bit_Aligned_Large_Component new
4075         name. Modified to consider small non-bit-packed arrays as troublesome
4076         and in need of component-by-component assigment expansion.
4077
4078 2003-12-03  Vincent Celier  <celier@gnat.com>
4079
4080         * lang-specs.h: Process nostdlib as nostdinc
4081
4082         * back_end.adb: Update Copyright notice
4083         (Scan_Compiler_Arguments): Process -nostdlib directly.
4084
4085 2003-12-03  Jose Ruiz  <ruiz@act-europe.fr>
4086
4087         * Makefile.in:
4088         When defining LIBGNAT_TARGET_PAIRS for bare board targets, remove the
4089         redundant inclusion of EXTRA_HIE_NONE_TARGET_PAIRS, which is always
4090         included in HIE_NONE_TARGET_PAIRS.
4091
4092 2003-12-03  Ed Schonberg  <schonberg@gnat.com>
4093
4094         * sem_attr.adb:
4095         (Legal_Formal_Attribute): Attribute is legal in an inlined body, as it
4096         is legal in an instance, because legality is cheched in the template.
4097
4098         * sem_prag.adb:
4099         (Analyze_Pragma, case Warnings): In an inlined body, the pragma may be
4100         appplied to an unchecked conversion of a formal parameter.
4101
4102         * sem_warn.adb:
4103         (Output_Unreferenced_Messages): Suppress "not read" warnings on imported
4104         variables.
4105
4106 2003-12-03  Olivier Hainque  <hainque@act-europe.fr>
4107
4108         * tb-alvms.c (unwind_regular_code, unwind_kernel_handler): New
4109         routines. The second one is new functionality to deal with backtracing
4110         through signal handlers.
4111         (unwind): Split into the two separate subroutines above.
4112         Update the documentation, and deal properly with sizeof (REG) different
4113         from sizeof (void*).
4114
4115 2003-12-01  Nicolas Setton  <setton@act-europe.fr>
4116
4117         * a-except.adb (Raise_Current_Excep): Add a pragma Inspection_Point,
4118         so that the debugger can reliably access the value of the parameter,
4119         and therefore is able to display the exception name when an exception
4120         breakpoint is reached.
4121
4122 2003-12-01  Thomas Quinot  <quinot@act-europe.fr>
4123
4124         * fmap.adb: Fix typo in warning message.
4125
4126         * g-socket.ads, g-socket.adb: Make Free a visible instance of
4127         Ada.Unchecked_Deallocation (no need to wrap it in a subprogram).
4128
4129 2003-12-01  Vincent Celier  <celier@gnat.com>
4130
4131         * mlib-prj.adb (Build_Library.Process): Do not check a withed unit if
4132         ther is no Afile.
4133         (Build_Library): Get the switches only if Default_Switches is declared
4134         in package Binder.
4135
4136 2003-12-01  Ed Schonberg  <schonberg@gnat.com>
4137
4138         * exp_ch6.adb (Expand_Actuals): When applying validity checks to
4139         actuals that are indexed components, reanalyze actual to ensure that
4140         packed array references are properly expanded.
4141
4142         * sem_ch5.adb (Diagnose_Non_Variable_Lhs): Add special case for
4143         attempted assignment to a discriminant.
4144
4145 2003-12-01  Robert Dewar  <dewar@gnat.com>
4146
4147         * rtsfind.adb, exp_ch4.adb, s-exnint.ads, s-exnint.adb: Minor
4148         reformatting.
4149
4150         * switch-c.adb: Minor reformatting of comments
4151
4152 2003-12-01  Arnaud Charlet  <charlet@act-europe.fr>
4153
4154         * Makefile.in: Clean ups.
4155
4156 2003-12-01  GNAT Script  <nobody@gnat.com>
4157
4158         * Make-lang.in: Makefile automatically updated
4159
4160 2003-12-01  Arnaud Charlet  <charlet@act-europe.fr>
4161
4162         * 5wsystem.ads: Disable zero cost exception, not ready yet.
4163
4164 2003-11-29  Ulrich Weigand  <uweigand@de.ibm.com>
4165
4166         * Make-lang.in (nmake.ads): Add dependency on ada/nmake.adb
4167         to force serialization.
4168
4169 2003-11-26  Thomas Quinot  <quinot@act-europe.fr>
4170
4171         * g-socket.ads, g-socket.adb:
4172         Clarify documentation of function Stream. Introduce a Free procedure
4173         to release the returned Stream once it becomes unused.
4174
4175         * 5asystem.ads: For Alpha Tru64, enable ZCX by default.
4176
4177 2003-11-26  Arnaud Charlet  <charlet@act-europe.fr>
4178
4179         (Cond_Timed_Wait): Introduce new constant Time_Out_Max,
4180         since NT 4 cannot handle timeout values that are too large,
4181         e.g. DWORD'Last - 1.
4182
4183 2003-11-26  Ed Schonberg  <schonberg@gnat.com>
4184
4185         * exp_ch4.adb:
4186         (Expand_N_Slice): Recognize all cases of slices that appear as actuals
4187         in procedure calls and whose expansion must be deferred.
4188
4189         * exp_ch6.adb (Add_Call_By_Copy_Node): Remove previous fix. Proper fix
4190         is in exp_ch4.
4191
4192         * sem_ch3.adb:
4193         (Build_Derived_Array_Type): Create operator for unconstrained type
4194         if ancestor is unconstrained.
4195
4196 2003-11-26  Vincent Celier  <celier@gnat.com>
4197
4198         * make.adb (Project_Object_Directory): New global variable
4199         (Change_To_Object_Directory): New procedure
4200         (Collect_Arguments_And_Compile): Call Change_To_Object_Directory instead
4201         of Change_Dir directly. Do not change working directory to object
4202         directory of main project after each compilation.
4203         (Gnatmake): Use Change_To_Object_Directory instead of Change_Dir
4204         directly.
4205         Change to object directory of main project before binding step.
4206         (Initialize): Initialize Project_Object_Directory to No_Project
4207
4208         * mlib-prj.adb:
4209         (Build_Library): Take into account Builder'Default_Switches ("Ada") when
4210         binding a Stand-Alone Library.
4211
4212         * output.adb: Update Copyright notice
4213         (Write_Char): Output buffer when full
4214
4215 2003-11-26  Robert Dewar  <dewar@gnat.com>
4216
4217         * sem_ch13.adb: (Check_Size): Reset size if size is too small
4218
4219         * sem_ch13.ads:
4220         (Check_Size): Fix documentation to include bit-packed array case
4221
4222         * sem_res.adb: Implement restriction No_Direct_Boolean_Operators
4223
4224         * s-rident.ads: Put No_Direct_Boolean_Operators in proper order
4225
4226         * s-rident.ads: Add new restriction No_Direct_Boolean_Operators
4227
4228 2003-11-24  Arnaud Charlet <charlet@act-europe.fr>
4229
4230         PR ada/13142
4231         * utils.c (init_gigi_decls): Change name of built-in setjmp to
4232         __builtin_setjmp, since this is apparently needed by recent
4233         non Ada changes.
4234
4235 2003-11-24  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
4236
4237         * adadecode.c: Only include ctype.h if not IN_GCC.
4238         (__gnat_decode): Use ISDIGIT from safe-ctype.h.
4239
4240 2003-11-24  Jose Ruiz  <ruiz@act-europe.fr>
4241
4242         * Makefile.in:
4243         Use 5zintman.ads for VxWorks targets. This file avoid confusion between
4244         signals and interrupts.
4245
4246         * 5zintman.ads: New File.
4247
4248         * 5zintman.adb: Replace Exception_Interrupts by Exception_Signals, and
4249         add exception signals to the set of unmasked signals.
4250
4251         * 5ztaprop.adb:
4252         Use Abort_Task_Signal instead of Abort_Task_Interrupt to avoid confusion
4253         between signals and interrupts.
4254         Add to Unblocked_Signal_Mask the set of signals that are in
4255         Keep_Unmasked.
4256
4257         * 7sinmaop.adb:
4258         Adding a check to see whether the Interrupt_ID we want to unmask is in
4259         the range of Keep_Unmasked (in procedure Interrupt_Self_Process). The
4260         reason is that the index type of the Keep_Unmasked array is not always
4261         Interrupt_ID; it may be a subtype of Interrupt_ID.
4262
4263 2003-11-24  Gary Dismukes  <dismukes@gnat.com>
4264
4265         * exp_util.adb:
4266         (Remove_Side_Effects): Condition constantness of object created for a
4267          an unchecked type conversion on the constantness of the expression
4268          to ensure the correct value for 'Constrained when passing components
4269          of view-converted class-wide objects.
4270
4271 2003-11-24  Robert Dewar  <dewar@gnat.com>
4272
4273         * par-load.adb (Load): Improve handling of misspelled and missing units
4274         Removes several cases of compilation abandoned messages
4275
4276         * lib.adb: (Remove_Unit): New procedure
4277
4278         * lib.ads: (Remove_Unit): New procedure
4279
4280         * lib-load.adb: Minor reformatting
4281
4282 2003-11-24  Vincent Celier  <celier@gnat.com>
4283
4284         * make.adb:
4285         (Gnatmake, Initialize): Call Usage instead of Makeusg directly
4286         (Marking_Label): Label to mark processed source files. Incremented for
4287         each executable.
4288         (Gnatmake): Increase Marking_Labet for each executable
4289         (Is_Marked): Compare against marking label
4290         (Mark): Mark with marking label
4291
4292 2003-11-24  Jerome Guitton  <guitton@act-europe.fr>
4293
4294         * s-thread.ads:
4295         Move the declaration of the TSD for System.Threads to System.Soft_Links.
4296         Add some comments.
4297
4298         * Makefile.in: Added target pair for s-thread.adb for cert runtime.
4299         (rts-cert): build a single relocatable object for the run-time lib.
4300         Fix perms.
4301
4302 2003-11-24  Vasiliy Fofanov  <fofanov@act-europe.fr>
4303
4304         * Make-lang.in:
4305         Use gnatls rather than gcc to obtain the location of GNAT RTL for
4306         crosstools build.
4307
4308 2003-11-24  Sergey Rybin  <rybin@act-europe.fr>
4309
4310         * opt.adb (Tree_Write): Gnat_Version_String is now a function, so we
4311         can not use it as before (that is, as a variable) when dumping it into
4312         the tree file. Add a local variable to store the result of this
4313         function and to be used as the string to be written into the tree.
4314
4315         * scn.adb (Initialize_Scanner): Add comments explaining the recent
4316         changes.
4317
4318         * sinput.adb (Source_First, Source_Last): In case of
4319         Internal_Source_File, replace returning attributes of
4320         Internal_Source_Ptr (which is wrong) with returning attributes of
4321         Internal_Source.
4322
4323 2003-11-24  Ed Schonberg  <schonberg@gnat.com>
4324
4325         * sem_ch3.adb:
4326         (New_Concatenation_Op): Proper name for New_Binary_Operator, only
4327         used for implicit concatenation operators.
4328         Code cleanup.
4329
4330         * sem_elab.adb:
4331         (Check_Elab_Call): Set No_Elaboration_Check appropriately on calls in
4332         task bodies that are in the scope of a Suppress pragma.
4333         (Check_A Call): Use the flag to prevent spurious elaboration checks.
4334
4335         * sinfo.ads, sinfo.adb:
4336         New flag No_Elaboration_Check on function/procedure calls, to properly
4337         suppress checks on calls in task bodies that are within a local suppress
4338         pragma.
4339
4340         * exp_ch4.adb:
4341         (Expand_Concatenate_Other): Use the proper integer type for the
4342         expression for the upper bound, to avoid universal_integer computations
4343         when possible.
4344
4345 2003-11-21  Kelley Cook  <kcook@gcc.gnu.org>
4346
4347         * .cvsignore: Delete.
4348
4349 2003-11-21  Andreas Schwab  <schwab@suse.de>
4350
4351         * 55system.ads: Set ZCX_By_Default and GCC_ZCX_Support to True.
4352
4353 2003-11-21  Vasiliy Fofanov  <fofanov@act-europe.fr>
4354
4355         * 5wsystem.ads: Enable zero cost exception.
4356
4357 2003-11-21  Jerome Guitton  <guitton@act-europe.fr>
4358
4359         * 5ztiitho.adb: Remove an unreferenced variable.
4360
4361 2003-11-21  Thomas Quinot  <quinot@act-europe.fr>
4362
4363         * adaint.c: For FreeBSD, use mkstemp.
4364
4365 2003-11-21  Arnaud Charlet  <charlet@act-europe.fr>
4366
4367         * gnatlbr.adb: Now reference Gnat_Static_Version_String.
4368
4369 2003-11-21  Robert Dewar  <dewar@gnat.com>
4370
4371         * bld.adb: Remove useless USE of gnatvsn
4372
4373         * gnatchop.adb: Minor reformatting
4374         Clean up version handling to be more consistent
4375
4376         * gnatxref.adb: Minor reformatting
4377
4378         * gprcmd.adb: Minor reformatting
4379         Fix output of copyright to be more consistent with other tools
4380
4381 2003-11-21  Vincent Celier  <celier@gnat.com>
4382
4383         * make.adb (Scan_Make_Args): Do not transmit --RTS= to gnatlink
4384
4385 2003-11-21  Sergey Rybin  <rybin@act-europe.fr>
4386
4387         * atree.adb (Initialize): Add initializations for global variables
4388         used in New_Copy_Tree.
4389
4390         * cstand.adb (Create_Standard): Add call to Initialize_Scanner (with
4391         Internal_Source_File as the actual).
4392         Put the set of statements creating Any_Character before the set of
4393         statements creating Any_Array to have Any_Character fully initialized
4394         when it is used in creating Any_Array.
4395
4396         * scn.adb (Initialize_Scanner): Do not set Comes_From_Source ON and do
4397         not call Scan in case if the actual is Internal_Source_File
4398         Add 2003 to copyright note.
4399
4400         * sinput.adb (Source_First, Source_Last, Source_Text): Add code for
4401         processing Internal_Source_File.
4402
4403         * types.ads: Add the constant Internal_Source_File representing the
4404         source buffer for artificial source-code-like strings created within
4405         the compiler (the definition of Source_File_Index is changed).
4406
4407 2003-11-20  Arnaud Charlet  <charlet@act-europe.fr>
4408
4409         * 35soccon.ads, 45intnam.ads, 55osinte.adb, 55osinte.ads,
4410         56system.ads: New file, FreeBSD version.
4411
4412 2003-11-20  Joseph S. Myers  <jsm@polyomino.org.uk>
4413
4414         * Make-lang.in (ada.extraclean): Delete.
4415
4416 2003-11-19  Arnaud Charlet  <charlet@act-europe.fr>
4417
4418         * gnatmem.adb: Clean up verbose output.
4419
4420         * gprcmd.adb: Change copyright to FSF.
4421
4422 2003-11-19  Vincent Celier  <celier@gnat.com>
4423
4424         * symbols.adb: (Initialize): New parameters Reference, Symbol_Policy
4425         and Version (ignored).
4426
4427         * symbols.ads: (Policy): New type
4428         (Initialize): New parameter Reference, Symbol_Policy and
4429         Library_Version.
4430         Remove parameter Force.
4431         Minor reformatting.
4432
4433         * snames.ads, snames.adbadb: New standard names
4434         Library_Reference_Symbol_File and Library_Symbol_Policy
4435
4436         * mlib-prj.adb:
4437         (Build_Library): Call Build_Dinamic_Library with the Symbol_Data of the
4438         project.
4439
4440         * mlib-tgt.adb:
4441         (Build_Dynamic_Library): New parameter Symbol_Data (ignored)
4442
4443         * mlib-tgt.ads: (Build_Dynamic_Library): New parameter Symbol_Data
4444
4445         * prj.adb: (Project_Empty): New component Symbol_Data
4446
4447         * prj.ads: (Policy, Symbol_Record): New types
4448         (Project_Data): New component Symbol_Data
4449
4450         * prj-attr.adb:
4451         New attributes Library_Symbol_File, Library_Symbol_Policy and
4452         Library_Reference_Symbol_File.
4453
4454         * prj-nmsc.adb:
4455         (Ada_Check): When project is a Stand-Alone library project, process
4456         attribute Library_Symbol_File, Library_Symbol_Policy and
4457         Library_Reference_Symbol_File.
4458
4459         * 5aml-tgt.adb, 5bml-tgt.adb, 5gml-tgt.adb, 5hml-tgt.adb,
4460         5wml-tgt.adb, 5zml-tgt.adb, 5lml-tgt.adb,
4461         5sml-tgt.adb (Build_Dynamic_Library): New parameter
4462         Symbol_Data (ignored).
4463
4464         * 5vml-tgt.adb (VMS_Options): Remove --for-linker=gsmatch=equal,1,0
4465         (Build_Dynamic_Library): New parameter Symbol_Data. New internal
4466         functions Option_File_Name and Version_String. Set new options of
4467         gnatsym related to symbol file, symbol policy and reference symbol
4468         file.
4469
4470         * 5vsymbol.adb:
4471         Extensive modifications to take into account the reference symbol file,
4472         the symbol policy, the library version and to put in the symbol file the
4473         minor and major IDs.
4474
4475         * bld.adb (Process_Declarative_Items): Put second argument of
4476         gprcmd to_absolute between single quotes, to avoid problems with
4477         Windows.
4478
4479         * bld-io.adb: Update Copyright notice.
4480         (Flush): Remove last character of a line, if it is a back slash, to
4481         avoid make problems.
4482
4483         * gnatsym.adb:
4484         Implement new scheme with reference symbol file and symbol policy.
4485
4486         * g-os_lib.ads: (Is_Directory): Clarify comment
4487
4488 2003-11-19  Robert Dewar  <dewar@gnat.com>
4489
4490         * atree.adb: Move New_Copy_Tree global variables to head of package
4491
4492         * errout.adb: Minor reformatting
4493
4494 2003-11-19  Javier Miranda  <miranda@gnat.com>
4495
4496         * sem_ch4.adb: (Diagnose_Call): Improve error message.
4497         Add reference to Ada0Y (AI-50217)
4498
4499         * sem_ch6.adb, sem_ch8.adb, sem_type.adb,
4500         sem_util.adb: Add reference to AI-50217
4501
4502         * sinfo.ads: (N_With_Clause): Document fields referred to AI-50217
4503
4504         * sprint.adb: Add reference to Ada0Y (AI-50217, AI-287)
4505
4506         * sem_aggr.adb: Complete documentation of AI-287 changes
4507
4508         * par-ch4.adb: Document previous changes.
4509
4510         * lib-load.adb, lib-writ.adb, einfo.ads, par-ch10.adb,
4511         sem_cat.adb, sem_ch3.adb, sem_ch10.adb, sem_ch12.adb: Add references to
4512         Ada0Y (AI-50217)
4513
4514         * exp_aggr.adb: Add references to AI-287 in previous changes
4515
4516 2003-11-19  Ed Schonberg  <schonberg@gnat.com>
4517
4518         * exp_ch6.adb:
4519         (Add_Call_By_Copy_Node): Do not original node of rewritten expression
4520         in the rewriting is the result of an inlined call.
4521
4522         * exp_ch6.adb (Add_Call_By_Copy_Node): If actual for (in-)out
4523         parameter is a type conversion, use original node to construct the
4524         post-call assignment, because expression may have been rewritten, e.g.
4525         if it is a packed array.
4526
4527         * sem_attr.adb:
4528         (Resolve_Attribute, case 'Constrained): Attribute is legal in an inlined
4529         body, just as it is in an instance.
4530         Categorization routines
4531
4532         * sem_ch12.adb (Analyze_Association, Instantiate_Formal_Subprogram,
4533         Instantiate_Object): Set proper sloc reference for message on missing
4534         actual.
4535
4536 2003-11-19  Thomas Quinot  <quinot@act-europe.fr>
4537
4538         * Makefile.in: Add FreeBSD libgnat pairs.
4539
4540         * usage.adb: Fix typo in usage message.
4541
4542 2003-11-19  Jerome Guitton  <guitton@act-europe.fr>
4543
4544         * Makefile.in: On powerpc-wrs-vxworksae: Add s-thread.ad?,
4545         s-thrini.ad? and s-tiitho.adb to the full runtime, to support the
4546         pragma Thread_Body.
4547         Remove i-vthrea.ad? and s-tpae65.ad?, not needed anymore.
4548
4549         * s-thread.adb: This file is now a dummy implementation of
4550         System.Thread.
4551
4552 2003-11-19  Sergey Rybin  <rybin@act-europe.fr>
4553
4554         * rtsfind.adb (Initialize): Add initialization for RTE_Is_Available
4555
4556 2003-11-19  Emmanuel Briot  <briot@act-europe.fr>
4557
4558         * xref_lib.adb (Parse_Identifier_Info): Add handling of generic
4559         instanciation references in the parent type description.
4560
4561 2003-11-18  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
4562
4563         * ada-tree.def: (ALLOCATE_EXPR): Class is "2", not "s".
4564
4565         * decl.c (gnat_to_gnu_entity, case E_Floating_Point_Subtype): Set
4566         TYPE_PRECISION directly from esize.
4567
4568 2003-11-18  Thomas Quinot  <quinot@act-europe.fr>
4569
4570         * cstreams.c:
4571         Use realpath(3) on FreeBSD. Fix typo in comment while we are at it.
4572
4573         * init.c: Initialization routines for FreeBSD
4574
4575         * link.c: Link info for FreeBSD
4576
4577         * sysdep.c: Add the case of FreeBSD
4578
4579 2003-11-17  Jerome Guitton  <guitton@act-europe.fr>
4580
4581         * 5zthrini.adb: Remove the call to Init_RTS at elaboration, as it is
4582         already called in System.Threads.
4583
4584         * 5ztiitho.adb (Initialize_Task_Hooks): Remove the registration of the
4585         environment task, as it has been moved to System.Threads.Initialization.
4586
4587 2003-11-17  Arnaud Charlet  <charlet@act-europe.fr>
4588
4589         * adaint.c (__gnatlib_install_locks): Only reference
4590         __gnat_install_locks on VMS, since other platforms can avoid using
4591         --enable-threads=gnat
4592
4593 2003-11-17  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
4594
4595         * ada-tree.h: (TYPE_IS_PACKED_ARRAY_TYPE_P): New macro.
4596
4597         * decl.c (gnat_to_gnu_entity, case E_Array_Subtype): Set
4598         TYPE_PACKED_ARRAY_TYPE_P.
4599         (validate_size): Do not verify size if TYPE_IS_PACKED_ARRAY_TYPE_P.
4600
4601         Part of PR ada/12806
4602         * utils.c (float_type_for_precision): Renamed from float_type_for_size.
4603         Use GET_MODE_PRECISION instead of GET_MODE_BITSIZE.
4604
4605 2003-11-17  Vincent Celier  <celier@gnat.com>
4606
4607         * gnatchop.adb (Error_Msg): New Boolean parameter Warning, defaulted
4608         to False.
4609         Do not set exit status to Failure when Warning is True.
4610         (Gnatchop): Make errors "no compilation units found" and
4611         "no source files written" warnings only.
4612
4613         * make.adb (Gnatmake): When using a project file, set
4614         Look_In_Primary_Dir to False.
4615         (Configuration_Pragmas_Switch): Check for Global_Configuration_Pragmas
4616         and Local_Configuration_Pragmas in the project where they are declared
4617         not an extending project which might have inherited them.
4618
4619         * osint.adb (Locate_File): If Name is already an absolute path, do not
4620         look for a directory.
4621
4622         * par-ch10.adb (P_Compilation_Unit): If source contains no token, and
4623         -gnats (Check_Syntax) is used, issue only a warning, not an error.
4624
4625         * prj.adb (Register_Default_Naming_Scheme): Add new component Project
4626         in objects of type Variable_Value.
4627
4628         * prj.ads: (Variable_Value): New component Project
4629
4630         * prj-nmsc.adb (Ada_Check.Warn_If_Not_Sources): No warning if source
4631         is in a project extended by Project.
4632
4633         * prj-proc.adb (Add_Attributes): New parameter Project. Set component
4634         Project of Variable_Values to this new parameter value.
4635         (Expression): Set component Project of Variable_Values.
4636         (Process_Declarative_Items): Call Add_Attributes with parameter Project.
4637         Set the component Project in array elements.
4638
4639 2003-11-17  Sergey Rybin  <rybin@act-europe.fr>
4640
4641         * errout.adb: (Initialize): Add initialization for error nodes.
4642
4643         * sem_ch12.adb (Initialize): Add missing initializations for
4644         Exchanged_Views and Hidden_Entities.
4645
4646 2003-11-17  Ed Schonberg  <schonberg@gnat.com>
4647
4648         * sem_ch12.adb (Copy_Generic_Node): Preserve entity when copying an
4649         already instantiated tree for use in subsequent inlining.
4650         (Analyze_Associations, Instantiate_Formal_Subprogram,
4651         Instantiate_Object): improve error message for mismatch in
4652         instantiations.
4653
4654         * sem_ch6.adb (Build_Body_To_Inline): Major cleanup to handle
4655         instantiations of subprograms declared in instances.
4656
4657 2003-11-17  Javier Miranda  <miranda@gnat.com>
4658
4659         * sem_ch4.adb (Analyze_Allocator): Previous modification must be
4660         executed only under the Extensions_Allowed flag.
4661
4662 2003-11-17  Robert Dewar  <dewar@gnat.com>
4663
4664         * a-exexda.adb (Address_Image): Fix documentation to indicate leading
4665         zeroes suppressed.
4666         (Address_Image): Fix bug of returning 0x instead of 0x0
4667         Minor reformatting (function specs).
4668
4669         * einfo.ads: Minor fix for documentation of Is_Bit_Packed_Array
4670         (missed case of 33-63)
4671
4672         * freeze.adb, sem_ch13.adb: Properly check size of packed bit array
4673
4674         * s-thread.adb: Add comments for pragma Restriction
4675
4676         * exp_aggr.adb, g-debuti.adb, par-ch4.adb, sem_aggr.adb,
4677         sem_ch6.adb, sprint.adb, xref_lib.adb: Minor reformatting
4678
4679 2003-11-17  Ed Falis  <falis@gnat.com>
4680
4681         * s-thread.adb: Added No_Tasking restriction for this implementation.
4682
4683 2003-11-17  Emmanuel Briot  <briot@act-europe.fr>
4684
4685         * xref_lib.adb (Parse_Identifier_Info): Add handling of generic
4686         instanciation references in the parent type description.
4687
4688 2003-11-17  GNAT Script  <nobody@gnat.com>
4689
4690         * Make-lang.in: Makefile automatically updated
4691
4692 2003-11-16  Jason Merrill  <jason@redhat.com>
4693
4694         * Make-lang.in (ada.tags): Create TAGS.sub files in each directory
4695         and TAGS files that include them for each front end.
4696
4697 2003-11-14  Andreas Jaeger  <aj@suse.de>
4698
4699         * lang.opt: Change -Wno-long-long to -Wlong-long since the latter
4700         is the canonical version.
4701         * misc.c (gnat_handle_option): Likewise.
4702
4703         * Makefile.in (LIBGNAT_TARGET_PAIRS): Add rules for x86_64-linux.
4704
4705         * 5nsystem.ads: New file for x86_64-linux-gnu.
4706
4707 2003-11-14  Arnaud Charlet  <charlet@act-europe.fr>
4708
4709         * nmake.ads, nmake.adb, sinfo.h, treeprs.ads: Regenerated.
4710
4711         * comperr.adb: Fix logic in previous change.
4712
4713 2003-11-13  Vincent Celier  <celier@gnat.com>
4714
4715         * 5bml-tgt.adb (Build_Dynamic_Library): Use
4716         Osint.Include_Dir_Default_Prefix instead of
4717         Sdefault.Include_Dir_Default_Name.
4718
4719         * gnatlbr.adb: Update Copyright notice
4720         (Gnatlbr): : Use Osint.Include_Dir_Default_Prefix instead of
4721         Sdefault.Include_Dir_Default_Name and Osint.Object_Dir_Default_Prefix
4722         instead of Sdefault.Object_Dir_Default_Name
4723
4724         * gnatlink.adb:
4725         (Process_Binder_File): Never suppress the option following -Xlinker
4726
4727         * mdll-utl.adb:
4728         (Gcc): Use Osint.Object_Dir_Default_Prefix instead of
4729         Sdefault.Object_Dir_Default_Name.
4730
4731         * osint.ads, osint.adb:
4732         (Include_Dir_Default_Prefix, Object_Dir_Default_Prefix): New functions
4733         Minor reformatting.
4734
4735         * vms_conv.ads: Minor reformating
4736         Remove GNAT STANDARD and GNAT PSTA
4737
4738         * vms_conv.adb:
4739         Allow GNAT MAKE to have several files on the command line.
4740         (Init_Object_Dirs): Use Osint.Object_Dir_Default_Prefix instead of
4741         Sdefault.Object_Dir_Default_Name.
4742         Minor Reformating
4743         Remove data for GNAT STANDARD
4744
4745         * vms_data.ads:
4746         Add new compiler qualifier /PRINT_STANDARD (-gnatS)
4747         Remove data for GNAT STANDARD
4748         Remove options and documentation for -gnatwb/-gnatwB: these warning
4749         options no longer exist.
4750
4751 2003-11-13  Ed Falis  <falis@gnat.com>
4752
4753         * 5zthrini.adb: (Init_RTS): Made visible
4754
4755         * 5zthrini.adb:
4756         (Register): Removed unnecessary call to taskVarGet that checked whether
4757          an ATSD was already set as a task var for the argument thread.
4758
4759         * s-thread.adb:
4760         Updated comment to reflect that this is a VxWorks version
4761         Added context clause for System.Threads.Initialization
4762         Added call to System.Threads.Initialization.Init_RTS
4763
4764 2003-11-13  Jerome Guitton  <guitton@act-europe.fr>
4765
4766         * 5zthrini.adb:
4767         (Init_RTS): New procedure, for the initialization of the run-time lib.
4768
4769         * s-thread.adb:
4770         Remove dependancy on System.Init, so that this file can be used in the
4771         AE653 sequential run-time lib.
4772
4773 2003-11-13  Robert Dewar  <dewar@gnat.com>
4774
4775         * bindgen.adb: Minor reformatting
4776
4777 2003-11-13  Ed Schonberg  <schonberg@gnat.com>
4778
4779         * checks.adb:
4780         (Apply_Discriminant_Check): Do no apply check if target type is derived
4781         from source type with no applicable constraint.
4782
4783         * lib-writ.adb:
4784         (Ensure_System_Dependency): Do not apply the style checks that may have
4785         been specified for the main unit.
4786
4787         * sem_ch8.adb:
4788         (Find_Selected_Component): Further improvement in error message, with
4789         RM reference.
4790
4791         * sem_res.adb:
4792         (Resolve): Handle properly the case of an illegal overloaded protected
4793         procedure.
4794
4795 2003-11-13  Javier Miranda  <miranda@gnat.com>
4796
4797         * exp_aggr.adb:
4798         (Has_Default_Init_Comps): New function to check the presence of
4799         default initialization in an aggregate.
4800         (Build_Record_Aggr_Code): Recursively expand the ancestor in case of
4801         extension aggregate of a limited record. In addition, a new formal
4802         was added to do not initialize the record controller (if any) during
4803         this recursive expansion of ancestors.
4804         (Init_Controller): Add support for limited record components.
4805         (Expand_Record_Aggregate): In case of default initialized components
4806         convert the aggregate into a set of assignments.
4807
4808         * par-ch4.adb (P_Aggregate_Or_Paren_Expr): Update the comment
4809         describing the new syntax.
4810         Nothing else needed to be done because this subprogram delegates part of
4811         its work to P_Precord_Or_Array_Component_Association.
4812         (P_Record_Or_Array_Component_Association): Give support to the new
4813         syntax for default initialization of components.
4814
4815         * sem_aggr.adb:
4816         (Resolve_Aggregate): Relax the strictness of the frontend in case of
4817         limited aggregates.
4818         (Resolve_Record_Aggregate): Give support to default initialized
4819         components.
4820         (Get_Value): In case of default initialized components, duplicate
4821         the corresponding default expression (from the record type
4822         declaration). In case of default initialization in the *others*
4823         choice, do not check that all components have the same type.
4824         (Resolve_Extension_Aggregate): Give support to limited extension
4825         aggregates.
4826
4827         * sem_ch3.adb:
4828         (Check_Initialization): Relax the strictness of the front-end in case
4829         of aggregate and extension aggregates. This test is now done in
4830         Get_Value in a per-component manner.
4831
4832         * sem_ch4.adb (Analyze_Allocator): Don't post an error if the
4833         expression corresponds to a limited aggregate. This test is now done
4834         in Get_Value.
4835
4836         * sinfo.ads, sinfo.adb (N_Component_Association): Addition of
4837         Box_Present flag.
4838
4839         * sprint.adb (Sprint_Node_Actual): Modified to print an mbox if
4840         present in an N_Component_Association node
4841
4842 2003-11-13  Thomas Quinot  <quinot@act-europe.fr>
4843
4844         * sem_ch9.adb (Analyze_Accept_Statement): A procedure hides a
4845         type-conformant entry only if they are homographs.
4846
4847 2003-11-13  GNAT Script  <nobody@gnat.com>
4848
4849         * Make-lang.in: Makefile automatically updated
4850
4851 2003-11-12  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
4852
4853         * adadecode.c: Use <> form of include for ctype.h.
4854         * sysdep.c [IN_RTS]: Use <> form of include for time.h.
4855
4856 2003-11-12  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
4857
4858         * 5gsystem.ads (Functions_Return_By_DSP): Set to False.
4859         Works around PR middle-end/6552.
4860
4861 2003-11-10  Ed Falis  <falis@gnat.com>
4862
4863         * 5ytiitho.adb: (procStartHookAdd): Definition and call deleted
4864
4865         * 5zinit.adb: (Install_Handler): Moved back to spec
4866         (Install_Signal_Handlers): Deleted
4867
4868         * 5zthrini.adb: Added context clause for System.Storage_Elements
4869         (Register): Only handles creation of taskVar; initialization moved to
4870         Thread_Body_Enter.
4871         (Reset_TSD): Deleted; replaced by Thread_Body_Enter
4872         Added declaration of environment task secondary stack and
4873         initialization.
4874
4875         * s-thread.adb: Implement bodies for thread body processing
4876
4877         * s-thread.ads:
4878         Added comment identifying supported targets for pragma Thread_Body.
4879
4880 2003-11-10  Pascal Obry  <obry@gnat.com>
4881
4882         * adaint.c (_gnat_stat) [WIN32]: Check if name is not bigger than
4883         GNAT_MAX_PATH_LEN.
4884
4885         * s-fileio.adb:
4886         (Open): Properly check for string length before copying into the buffer.
4887         Raises Name_Error if buffer is too small. Note that this was a potential
4888         buffer overflow.
4889
4890 2003-11-10  Romain Berrendonner  <berrendo@act-europe.fr>
4891
4892         * bindgen.adb, comperr.adb: Code clean ups.
4893         * gnatvsn.ads, gnatvsn.adb (Get_Gnat_Version_Type): New function.
4894
4895 2003-11-10  Sergey Rybin  <rybin@act-europe.fr>
4896
4897         * gnat1drv.adb: Add call to Sem_Elim.Initialize.
4898
4899 2003-11-10  Vincent Celier  <celier@gnat.com>
4900
4901         * gprcmd.adb:
4902         (Gprcmd): Add new command "prefix" to get the prefix of the GNAT
4903         installation.
4904
4905         * make.adb (Scan_Make_Arg): Transmit -nostdlib to the compiler
4906
4907         * prj.adb: (Project_Empty): Add new boolean component Virtual
4908
4909         * prj.ads: (Virtual_Prefix): New constant string
4910         (Project_Data): New boolean component Virtual
4911
4912         * prj-nmsc.adb (Language_Independent_Check): Adjust error message when
4913         a library project is extended by a virtual extending project.
4914
4915         * prj-part.adb:
4916         Modifications throughout to implement extending-all project, including:
4917         (Virtual_Hash, Processed_Hash): New hash tables
4918         (Create_Virtual_Extending_Project): New procedure
4919         (Look_For_Virtual_Projects_For): New procedure
4920
4921         * prj-proc.adb:
4922         (Process): After checking the projects, if main project is an
4923         extending-all project, set the object directory of all virtual extending
4924         project to the object directory of the main project.
4925         Adjust error message when a virtual extending project has the same
4926         object directory as an project being extended.
4927         (Recursive_Process): If name starts with the virtual prefix, set Virtual
4928         to True in the project data.
4929
4930         * prj-tree.adb:
4931         (Default_Project_Node): Add new boolean component Extending_All
4932         (Is_Extending_All): New function
4933         (Set_Is_Extending_All): New procedure
4934
4935         * prj-tree.ads: (Is_Extending_All): New function
4936         (Set_Is_Extending_All): New procedure
4937         (Project_Node_Record): New boolean component Extending_All
4938
4939         * switch-c.adb: (Scan_Front_End_Switches): Process -nostdlib
4940
4941         * vms_data.ads:
4942         Add qualifier /NOSTD_LIBRARIES (-nostdlib) for the compiler
4943
4944         * bld.adb (Recursive_Process): If MAKE_ROOT is not defined, call
4945         "gprcmd prefix" to define it.
4946
4947 2003-11-10  Thomas Quinot  <quinot@act-europe.fr>
4948
4949         * einfo.ads: Fix a typo and remove an extraneous word in comments.
4950
4951         * lib-load.adb:
4952         (Create_Dummy_Package_Unit): Set the scope of the entity for the
4953         created dummy package to Standard_Standard, not to itself, to
4954         defend other parts of the front-end against encoutering a cycle in
4955         the scope chain.
4956
4957         * sem_ch10.adb:
4958         (Analyze_With_Clause): When setting the entities for the successive
4959         N_Expanded_Names that constitute the name of a child unit, do not
4960         attempt to go further than Standard_Standard in the chain of scopes.
4961         This case arises from the placeholder units created by
4962         Create_Dummy_Package_Unit in the case of a with_clause for a
4963         nonexistent child unit.
4964
4965 2003-11-10  Ed Schonberg  <schonberg@gnat.com>
4966
4967         * exp_ch6.adb:
4968         (Expand_Thread_Body): Place subprogram on scope stack, so that new
4969         declarations are given the proper scope.
4970
4971         * sem_ch13.adb:
4972         (Check_Expr_Constants): Reject an expression that contains a constant
4973         created during expansion, and that appears after the object to which
4974         the address clause applies.
4975
4976         * sem_ch5.adb (Check_Controlled_Array_Attribute): Subsidiary of
4977         Analyze_Iteration_Scheme, to rewrite a loop parameter specification
4978         that uses 'Range of a function call with controlled components, so
4979         that the function result can be finalized before starting the loop.
4980
4981         * sem_ch8.adb:
4982         (Find_Selected_Component): Improve error message when prefix is
4983         an implicit dereference of an incomplete type.
4984
4985 2003-11-10  Robert Dewar  <dewar@gnat.com>
4986
4987         * opt.ads: New Print_Standard flag for -gnatS switch
4988
4989         * sem_ch13.adb: Remove some additional checks for unaligned arrays
4990
4991         * cstand.adb (Create_Standard): Print out package standard if -gnatS
4992         switch set
4993
4994         * debug.adb: Update doc for -gnatds to discuss relationship with new
4995         -gnatS flag
4996
4997         * sinfo.adb: Add new field Entity_Or_Associated_Node
4998
4999         * sinfo.ads: Add new field Entity_Or_Associated_Node
5000         Update documentation for Associated_Node and Entity fields to clarify
5001         relationship and usage.
5002
5003         * sprint.adb:
5004         (Write_Id): Properly process Associated_Node field in generic template
5005
5006         * switch-c.adb:
5007         Recognize new -gnatS switch for printing package Standard
5008         This replaces gnatpsta
5009
5010         * usage.adb:
5011         Add line for  new -gnatS switch for printing package Standard
5012         This replaces gnatpsta
5013
5014 2003-11-10  Andreas Jaeger  <aj@suse.de>
5015
5016         * 7sosprim.adb: tv_usec of struct_timeval and time_t are long
5017         integer.
5018
5019 2003-11-10  Arnaud Charlet  <charlet@act-europe.fr>
5020
5021         * misc.c, lang.opt: Add handling of -nostdlib, now recognized/needed
5022         by gnat1.
5023
5024 2003-11-10  Arnaud Charlet  <charlet@act-europe.fr>
5025
5026         * Makefile.in, Make-lang.in: Remove build of gnat_wrapper and gnatpsta,
5027         no longer needed.
5028
5029         * gnatpsta.adb, gnat_wrapper.adb: Removed, no longer needed.
5030
5031         * sysdep.c: Add handling of cygwin.
5032
5033 2003-11-10  GNAT Script  <nobody@gnat.com>
5034
5035         * Make-lang.in: Makefile automatically updated
5036
5037 2003-11-10  Arnaud Charlet  <charlet@act-europe.fr>
5038
5039         PR 12950
5040         * osint.ads, osint.adb (Relocate_Path, Executable_Suffix): New
5041         functions. Used to handle dynamic prefix relocation, via set_std_prefix.
5042         Replace GNAT_ROOT by GCC_ROOT.
5043
5044         * Make-lang.in: Use new function Relocate_Path to generate sdefault.adb
5045
5046 2003-11-06  Zack Weinberg  <zack@codesourcery.com>
5047
5048         * misc.c (fp_prec_to_size, fp_size_to_prec): Use GET_MODE_PRECISION
5049         and update for changed meaning of GET_MODE_BITSIZE.
5050
5051 2003-11-04  Doug Rupp  <rupp@gnat.com>
5052
5053         * sysdep.c: Problem discovered during IA64 VMS port.
5054         [VMS] #include <unixio.h> to get proper prototypes.
5055
5056         * adaint.c:
5057         Issues discovered/problems fixed during IA64 VMS port.
5058         [VMS] #define _POSIX_EXIT for proper semantics.
5059         [VMS] #include <unixio.h> for proper prototypes.
5060         [VMS] (fork): #define IA64 version.
5061         (__gnat_os_exit): Remove unnecessary VMS specific code.
5062
5063 2003-11-04  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
5064
5065         Part of PR ada/12806
5066
5067         * ada-tree.h (TYPE_DIGITS_VALUE, SET_TYPE_DIGITS_VALUE): Save count as
5068         tree, not integer.
5069
5070         * decl.c:
5071         (gnat_to_gnu_entity, case E_Floating_Point_Type): Save count as tree,
5072         not integer.
5073
5074         * targtyps.c, decl.c, misc.c,
5075         gigi.h (fp_prec_to_size, fp_size_to_prec): Temporary
5076         routines to work around change in FP sizing semantics in GCC.
5077
5078         * utils.c:
5079         (build_vms_descriptor): TYPE_DIGITS_VALUE is tree, not integer.
5080
5081         * gigi.h: (enumerate_modes): New function.
5082
5083         * Make-lang.in: (ada/misc.o): Add real.h.
5084
5085         * misc.c: (enumerate_modes): New function.
5086
5087 2003-11-04  Robert Dewar  <dewar@gnat.com>
5088
5089         * 3vtrasym.adb: Minor reformatting
5090         Use terminology encoded/decoded name, rather than C++ specific notion
5091         of mangling (this is the terminology used throughout GNAT).
5092
5093         * einfo.h: Regenerated
5094
5095         * einfo.ads, einfo.adb: Add new flag Is_Thread_Body
5096
5097         * exp_ch6.adb:
5098         (Expand_N_Subprogram_Body): Handle expansion of thread body procedure
5099
5100         * par-prag.adb: Add dummy entry for Thread_Body pragma
5101
5102         * rtsfind.ads:
5103         Add entries for System.Threads entities for thread body processing
5104
5105         * sem_attr.adb:
5106         (Analyze_Pragma, Access attributes): Check these are not applied to a
5107         thread body, since this is not permitted
5108
5109         * sem_prag.adb: Add processing for Thread_Body pragma.
5110         Minor comment fix.
5111
5112         * sem_res.adb:
5113         (Resolve_Call): Check for incorrect attempt to call a thread body
5114          procedure with a direct call.
5115
5116         * snames.ads, snames.adb: Add entry for Thread_Body pragma
5117         Add names associated with thread body expansion
5118
5119         * snames.h: Add entry for Thread_Body pragma
5120
5121         * s-thread.adb: Add entries for thread body processing
5122         These are dummy bodies so far
5123
5124         * s-thread.ads: Add documentation on thread body handling.
5125         Add entries for thread body processing.
5126
5127 2003-11-04  Javier Miranda  <miranda@gnat.com>
5128
5129         * sem_ch10.adb:
5130         (Build_Limited_Views): Return after posting an error in case of limited
5131         with_clause on subprograms, generics, instances or generic renamings
5132         (Install_Limited_Withed_Unit): Do nothing in case of limited with_clause
5133         on subprograms, generics, instances or generic renamings
5134
5135 2003-11-04  Arnaud Charlet  <charlet@act-europe.fr>
5136
5137         * raise.c (setup_to_install): Correct mistake in last revision; two
5138         arguments out of order.
5139
5140         * trans.c, cuintp.c, argv.c, aux-io.c, cal.c, errno.c, exit.c,
5141         gnatbl.c, init.c, stringt.h, utils.c, utils2.c: Update copyright
5142         notice, missed in previous change.
5143         Remove trailing blanks and other style errors introduced in previous
5144         change.
5145
5146 2003-11-04  Olivier Hainque  <hainque@act-europe.fr>
5147
5148         * decl.c (gnat_to_gnu_field): Adjust the conditions under which we get
5149         rid of the wrapper for a LJM type, ensuring we don't do that if the
5150         field is addressable.  This avoids potential low level type view
5151         mismatches later on, for instance in a by-reference argument passing
5152         process.
5153
5154 2003-11-04  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
5155
5156         * decl.c (gnat_to_gnu_field): No longer check for BLKmode being
5157         aligned at byte boundary.
5158
5159 2003-11-04  Joel Brobecker  <brobecker@gnat.com>
5160
5161         * decl.c (components_to_record): Do not delete the empty variants from
5162         the end of the union type.
5163
5164 2003-11-04  Ed Schonberg  <schonberg@gnat.com>
5165
5166         * exp_ch4.adb (Expand_N_Op_Eq): Use base type when locating primitive
5167         operation for a derived type, an explicit declaration may use a local
5168         subtype of Boolean.
5169
5170 2003-11-04  Vincent Celier  <celier@gnat.com>
5171
5172         * make.adb (Gnatmake): Allow main sources on the command line with a
5173         library project when it is only for compilation (no binding or
5174         linking).
5175
5176 2003-11-04  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
5177
5178         * Makefile.in: Remove many duplicate variables.
5179
5180 2003-11-03  Kelley Cook  <kcook@gcc.gnu.org>
5181
5182         * Make-lang.in (dvi): Move targets to $(docobjdir).
5183         (gnat_ug_vms.dvi): Simplify rule and adjust target.
5184         (gnat_ug_wnt.dvi): Likewise.
5185         (gnat_ug_unx.dvi): Likewise.
5186         (gnat_ug_vxw.dvi): Likewise.
5187         (gnat_rm.dvi): Likewise.
5188         (gnat-style.dvi): Likewise.
5189
5190 2003-10-31  Kelley Cook  <kcook@gcc.gnu.org>
5191
5192         * gigi.h: Missed commit from update for C90.
5193
5194 2003-10-31  Kelley Cook  <kcook@gcc.gnu.org>
5195
5196         * Makefile.in (ada/b_gnat1.o): Compile with -Wno-error.
5197
5198 2003-10-31  Andreas Schwab  <schwab@suse.de>
5199
5200         * raise.c (get_action_description_for): Fix typo in last change.
5201
5202 2003-10-31  Nathanael Nerode  <neroden@gcc.gnu.org>
5203
5204         PR ada/12761
5205         * ada/Make-lang.in: Move default definitions of X_ADA_CFLAGS,
5206         T_ADA_CFLAGS, X_ADAFLAGS, T_ADAFLAGS from here to master Makefile.in.
5207
5208 2003-10-30  Kelley Cook  <kcook@gcc.gnu.org>
5209
5210         * adadecode.c, adaint.c, argv.c, aux-io.c, cal.c, cio.c, cstreams.c,
5211         ctrl_c.c, cuintp.c, decl.c, errno.c, exit.c, expect.c, final.c,
5212         gigi.h, gmem.c, gnatbl.c, init.c, misc.c, mkdir.c, raise.c, socket.c,
5213         sysdep.c, sysdep.c, targtyps.c, tb-alvms.c, tb-alvxw.c, tracebak.c,
5214         trans.c, utils.c, utils2.c: Convert function prototypes to C90.
5215
5216 2003-10-30  Vasiliy Fofanov  <fofanov@act-europe.fr>
5217
5218         * 3vtrasym.adb:
5219         Demangle Ada symbols returned by TBK$SYMBOLIZE. Correctly align line
5220         numbers when symbol name is too long.
5221
5222 2003-10-30  Ed Falis  <falis@gnat.com>
5223
5224         * g-signal.ads, g-signal.adb: New files
5225
5226         * impunit.adb: (Non_Imp_File_Names): Added "g-signal"
5227
5228         * Makefile.rtl: Introduce GNAT.Signals
5229
5230 2003-10-30  Robert Dewar  <dewar@gnat.com>
5231
5232         * freeze.adb: Minor reformatting
5233
5234         * lib-writ.adb (Write_ALI): Never write ali file if -gnats is specified
5235
5236         * par.adb, par-ch12.adb, par-ch13.adb, par-ch2.adb, par-ch3.adb,
5237         par-ch5.adb, par-ch6.adb, par-ch9.adb, par-util.adb:
5238         New handling of Id_Check parameter to improve recognition of keywords
5239         used as identifiers.
5240         Update copyright notice to include 2003
5241
5242 2003-10-29  Robert Dewar  <dewar@gnat.com>
5243
5244         * 3vtrasym.adb, 5vtraent.ads, sprint.adb,
5245         sem_ch10.adb: Minor reformatting
5246
5247         * exp_ch5.adb (Expand_Assign_Array): Test for bit unaligned operands
5248         (Expand_Assign_Record): Test right hand side for bit unaligned as well
5249
5250 2003-10-29  Vasiliy Fofanov  <fofanov@act-europe.fr>
5251
5252         * 3vtrasym.adb, 5vtraent.adb, 5vtraent.ads, tb-alvms.c:
5253         Support for TBK$SYMBOLIZE-based symbolic traceback.
5254
5255 2003-10-29  Jose Ruiz  <ruiz@act-europe.fr>
5256
5257         * exp_disp.adb:
5258         Revert previous change, that did not work well when pragma No_Run_Time
5259         was used in conjunction with a run-time other than ZFP.
5260
5261 2003-10-29  Vincent Celier  <celier@gnat.com>
5262
5263         * make.adb:
5264         (Gnatmake): When there are no Ada mains in attribute Main, disable the
5265          bind and link steps only is switch -z is not used.
5266
5267 2003-10-29  Arnaud Charlet  <charlet@act-europe.fr>
5268
5269         * Makefile.generic: Remove duplicated setting of CC.
5270
5271         * Makefile.prolog: Set CC to gcc by default, to override make's
5272         default (cc).
5273
5274         * einfo.h: Regenerated.
5275
5276 2003-10-29  Ed Schonberg  <schonberg@gnat.com>
5277
5278         * sem_ch10.adb (Analyze_Subunit): Restore state of suppress flags for
5279         current body, after compiling subunit.
5280
5281         * itypes.adb (Create_Itype): In ASIS_Mode, do not freeze the itype
5282         when in deleted code, because gigi needs properly ordered freeze
5283         actions to annotate types.
5284
5285         * freeze.adb (Is_Fully_Defined): Predicate must be recursive, to
5286         prevent the premature freezing of record type that contains
5287         subcomponents with a private type that does not yet have a completion.
5288
5289 2003-10-29  Javier Miranda  <miranda@gnat.com>
5290
5291         * sem_ch12.adb:
5292         (Analyze_Package_Instantiation): Check that instances can not be used in
5293         limited with_clauses.
5294
5295         * sem_ch8.adb:
5296         (Analyze_Package_Renaming): Check that limited withed packages cannot
5297         be renamed. Improve text on error messages related to limited
5298         with_clauses.
5299
5300         * einfo.adb, einfo.ads: Remove Non_Limited_Views attribute.
5301
5302         * sprint.adb: (Sprint_Node_Actual): Print limited with_clauses.
5303         Update copyright notice.
5304
5305         * sem_ch10.adb: (Build_Limited_Views): Complete its documentation.
5306         (Install_Limited_Context_Clauses): New subprogram that isolates all the
5307         checks required for limited context_clauses and installs the limited
5308         view.
5309         (Install_Limited_Withed_Unit): Complete its documentation.
5310         (Analyze_Context): Check that limited with_clauses are only allowed in
5311         package specs.
5312         (Install_Context): Call Install_Limited_Context_Clauses after the
5313         parents have been installed.
5314         (Install_Limited_Withed_Unit): Add documentation. Mark the installed
5315         package as 'From_With_Type'; this mark indicates that the limited view
5316         is installed. Used to check bad usages of limited with_clauses.
5317         (Build_Limited_Views): Do not add shadow entities to the scope's list
5318         of entities. Do not add real entities to the Non_Limited_Views chain.
5319         Improve error notification.
5320         (Remove_Context_Clauses): Remove context clauses in two phases:
5321         limited views first and regular views later (to maintain the
5322         stack model).
5323         (Remove_Limited_With_Clause): If the package is analyzed then reinstall
5324         its visible entities.
5325
5326 2003-10-29  Thomas Quinot  <quinot@act-europe.fr>
5327
5328         * sem_type.adb (Specific_Type): Type Universal_Fixed is compatible
5329         with any type that Is_Fixed_Point_Type.
5330
5331         * sinfo.ads: Fix documentation for Associated_Node attribute.
5332
5333 2003-10-29  Sergey Rybin  <rybin@act-europe.fr>
5334
5335         * switch-c.adb (Scan_Front_End_Switches): ASIS_Mode is set now when
5336         both '-gnatc' and '-gnatt' are specified.
5337
5338         * atree.adb (Initialize): Add initialization for Node_Count (set to
5339         zero).
5340
5341 2003-10-29  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
5342
5343         * decl.c (gnat_to_gnu_entity, case E_Subprogram): If no return value,
5344         do not consider as Pure.
5345
5346         Part of implementation of function-at-a-time:
5347
5348         * trans.c (gnat_to_gnu_code): If IS_STMT, call expand_expr_stmt.
5349         (tree_transform): Add new argument to build_component_ref.
5350         (tree_transform, case N_Assignment_Statement): Make and return an
5351         EXPR_STMT.
5352         (tree_transform): If result IS_STMT, set flags and return it.
5353         (gnat_expand_stmt, set_lineno_from_sloc): New functions.
5354
5355         * utils2.c (build_simple_component_ref, build_component_ref): Add new
5356         arg, NO_FOLD_P.
5357         (build_binary_op, case EQ_EXPR): Pass additional arg to it.
5358         (build_allocator): Likewise.
5359
5360         * utils.c (convert_to_fat_pointer, convert_to_thin_pointer, convert):
5361         Add new arg to build_component_ref.
5362         (maybe_unconstrained_array, unchecked_convert): Likewise.
5363
5364         * ada-tree.def (EXPR_STMT): New code.
5365
5366         * ada-tree.h (IS_STMT, TREE_SLOC, EXPR_STMT_EXPR): New macros.
5367
5368         * decl.c (gnat_to_gnu_entity, case object): Add extra arg to
5369         build_component_ref calls.
5370
5371         * misc.c (gnat_expand_expr): If IS_STMT, call gnat_expand_stmt.
5372
5373         * gigi.h (gnat_expand_stmt, set_lineno_from_sloc): New functions.
5374         (build_component_ref): Add new argument, NO_FOLD_P.
5375
5376 2003-10-27  Arnaud Charlet  <charlet@act-europe.fr>
5377
5378         * Makefile.generic: Add missing substitution on object_deps handling.
5379
5380         PR ada/5909:
5381         * Make-lang.in (check-ada): Enable ACATS test suite.
5382
5383 2003-10-27  Robert Dewar  <dewar@gnat.com>
5384
5385         * exp_ch3.adb:
5386         (Freeze_Array_Type): We do not need an initialization routine for types
5387         derived from String or Wide_String. They should be treated the same
5388         as String and Wide_String themselves. This caused problems with the
5389         use of Initialize_Scalars.
5390
5391         * exp_ch5.adb:
5392         (Expand_Assign_Record): Do component-wise assignment of non-byte aligned
5393         composites. This allows use of component clauses that are not byte
5394         aligned.
5395
5396         * sem_prag.adb:
5397         (Analyze_Pragma, case Pack): Generate warning and ignore pack if there
5398         is an attempt to pack an array of atomic objects.
5399
5400         * make.adb, prj-env.adb, prj-env.ads: Minor reformatting
5401
5402 2003-10-27  Pascal Obry  <obry@gnat.com>
5403
5404         * g-dirope.adb:
5405         (Basename): Check for drive letters in a pathname only on DOS based OS.
5406
5407 2003-10-27  Vincent Celier  <celier@gnat.com>
5408
5409         * make.adb:
5410         (Gnatmake): When unable to change dir to the object dir, display the
5411         content of the parent dir of the obj dir, to try to understand why this
5412         happens.
5413
5414 2003-10-27  GNAT Script  <nobody@gnat.com>
5415
5416         * Make-lang.in: Makefile automatically updated
5417
5418 2003-10-27  Ed Schonberg  <schonberg@gnat.com>
5419
5420         * sem_ch12.adb:
5421         (Inline_Instance_Body): Indicate that the save/restore of use_clauses
5422         should not be done in Save/Restore_Scope_Stack, because it is performed
5423         locally.
5424
5425         * sem_ch8.adb:
5426         (Save_Scope_Stack, Restore_Scope_Stack): Add parameter to indicate
5427         whether use clauses should be removed/restored.
5428
5429         * sem_ch8.ads:
5430         (Save_Scope_Stack, Restore_Scope_Stack): Add parameter to indicate
5431         whether use clauses should be removed/restored.
5432
5433 2003-10-26  Andreas Jaeger  <aj@suse.de>
5434
5435         * Makefile.in: Remove duplicated lines.
5436
5437 2003-10-24  Arnaud Charlet  <charlet@act-europe.fr>
5438
5439         * gnatvsn.ads (Gnat_Static_Version_String): New constant, used to
5440         minimize the differences with ACT tree.
5441
5442         * gnatkr.adb, gnatlink.adb, gnatls.adb, gnatmake.adb,
5443         gnatprep.adb, gnatpsta.adb, gnatvsn.ads: Take advantage of
5444         Gnatvsn.Gnat_Static_Version_String to reduce differences between
5445         ACT and FSF trees.
5446
5447 2003-10-24  Pascal Obry  <obry@gnat.com>
5448
5449         * adadecode.c (ostrcpy): New function.
5450         (__gnat_decode): Use ostrcpy of strcpy.
5451         (has_prefix): Set first parameter a const.
5452         (has_suffix): Set first parameter a const.
5453         Update copyright notice. Fix source name in header.
5454         Removes a trailing space.
5455         PR ada/12014.
5456
5457 2003-10-24  Jose Ruiz  <ruiz@act-europe.fr>
5458
5459         * exp_disp.adb:
5460         Remove the test against being in No_Run_Time_Mode before generating a
5461         call to Register_Tag. It is redundant with the test against the
5462         availability of the function Register_Tag.
5463
5464 2003-10-24  Vincent Celier  <celier@gnat.com>
5465
5466         * g-catiio.adb: (Month_Name): Correct spelling of February
5467
5468         * make.adb: (Mains): New package
5469         (Initialize): Call Mains.Delete
5470         (Gnatmake): Check that each main on the command line is a source of a
5471         project file and, if there are several mains, each of them is a source
5472         of the same project file.
5473         (Gnatmake): When a foreign language is specified in attribute Languages,
5474         no main is specified on the command line and attribute Mains is not
5475         empty, only build the Ada main. If there is no Ada main, just compile
5476         the Ada sources and their closure.
5477         (Gnatmake): If a main is specified on the command line with directory
5478         information, check that the source exists and, if it does, that the path
5479         is the actual path of a source of a project.
5480
5481         * prj-env.adb:
5482         (File_Name_Of_Library_Unit_Body): New Boolean parameter Full_Path. When
5483         Full_Path is True, return the full path instead of the simple file name.
5484         (Project_Of): New function
5485
5486         * prj-env.ads:
5487         (File_Name_Of_Library_Unit_Body): New Boolean parameter Full_Path,
5488         defaulted to False.
5489         (Project_Of): New function
5490
5491 2003-10-24  Arnaud Charlet  <charlet@act-europe.fr>
5492
5493         * Makefile.generic:
5494         Ensure objects of main project are always checked and rebuilt if needed.
5495         Set CC to gcc by default.
5496         Prepare new handling of link by creating a global archive (not activated
5497         yet).
5498
5499         * adadecode.h, atree.h, elists.h, nlists.h, raise.h,
5500         stringt.h: Update copyright notice. Remove trailing blanks.
5501         Fix source name in header.
5502
5503 2003-10-24  Robert Dewar  <dewar@gnat.com>
5504
5505         * sem_ch12.adb: Minor reformatting
5506
5507         * sem_ch3.adb:
5508         Minor reformatting (including new function return style throughout)
5509
5510         * sem_ch3.ads:
5511         Minor reformatting (including new function return style throughout)
5512
5513 2003-10-24  Arnaud Charlet  <charlet@act-europe.fr>
5514
5515         * adadecode.h, atree.h, elists.h, nlists.h, raise.h,
5516         stringt.h: Update copyright notice. Remove trailing blanks.
5517         Fix source name in header.
5518
5519 2003-10-24  GNAT Script  <nobody@gnat.com>
5520
5521         * Make-lang.in: Makefile automatically updated
5522
5523 2003-10-23  Nathanael Nerode  <neroden@gcc.gnu.org>
5524
5525         * adadecode.h, atree.h, elists.h, namet.h, nlists.h, raise.h,
5526         stringt.h: Convert to ISO C90 declarations and definitions.
5527
5528 2003-10-23  Thomas Quinot  <quinot@act-europe.fr>
5529
5530         PR ada/11978:
5531         * exp_ch13.adb (Expand_N_Freeze_Entity): Do not consider inherited
5532         External_Tag attribute definition clauses.
5533
5534 2003-10-23  Ed Schonberg  <schonberg@gnat.com>
5535
5536         PR ada/7613:
5537         * exp_dbug.adb (Debug_Renaming_Declaration): For the renaming of a
5538         child unit, generate a fully qualified name to avoid spurious errors
5539         when the context contains renamings of different child units with
5540         the same simple name.
5541
5542         * exp_dbug.ads: Add documentation on name qualification for renamings
5543         of child units.
5544
5545 2003-10-23  Robert Dewar  <dewar@gnat.com>
5546
5547         * g-regpat.ads, g-regpat.adb: Minor reformatting
5548
5549 2003-10-23  Jose Ruiz  <ruiz@act-europe.fr>
5550
5551         * Makefile.in: Use the file 1atags.ads with the ZFP and cert run-times.
5552
5553 2003-10-23  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
5554
5555         * trans.c: (tree_transform, case N_Real_Literal): Add extra arg to
5556         Machine call.
5557
5558         * urealp.h: (Machine): Update to proper definition.
5559
5560 2003-10-23  Arnaud Charlet  <charlet@act-europe.fr>
5561
5562         * init.c, adaint.c: Minor reformatting.
5563
5564 2003-10-23  Danny Smith  <dannysmith@users.sourceforge.net>
5565
5566         * adaint.c (w32_epoch_offset): Define static const at file level.
5567         (win32_filetime): Replace offset with w32_epoch_offset. Use NULL
5568         rather than t_create, t_access in call to GetFileTime. Use union
5569         to convert between FILETIME and  unsigned long long.
5570         (__gnat_file_time_name): Test for invalid file handle.
5571         (__gnat_set_filetime_name): Support win32 targets using
5572         w32api SetFileTime.
5573
5574 2003-10-22  Danny Smith  <dannysmith@users.sourceforge.net>
5575
5576         * sysdep.c: Include conio.h if __MINGW32__ and !OLD_MINGW.
5577
5578         * ctrl_c.c (__gnat_int_handler): Remove declaration.
5579
5580         * decl.c (creat_concat_name):  Const-ify prefix.
5581
5582         * adaint.c: Include ctype.h if __MINGW32__.
5583         (__gnat_readlink): Mark arguments as possibly unused.
5584         (__gnat_symlink): Likewise.
5585         (__gnat_is_symbolic_link): Likewise.
5586         (__gnat_portable_spawn): Likewise.  Cast last arg of spawnvp to match
5587         declaration
5588         (__gnat_file_time_name): Don't declare struct stat statbuf when
5589         not needed.
5590         (__gnat_is_absolute_path): Add parenthesis around condition of
5591         'if' statement to avoid warning.
5592         (__gnat_plist_init): Specify void as parameter.
5593         (plist_enter): Likewise.
5594         (plist_leave): Likewise.
5595         (remove_handle): Make static. Initialize prev.
5596
5597 2003-10-22  Arnaud Charlet  <charlet@act-europe.fr>
5598
5599         * Makefile.in: Disable build of gnatpsta. PR ada/10110.
5600         * cstreams.c (__gnat_full_name): Minor improvements and clean up
5601         of previous change.
5602
5603 2003-10-22  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
5604
5605         * tracebak.c (MAX): Avoid redefinition warning.
5606
5607         * init.c [sgi] (__gnat_error_handler): Remove i, unused.
5608         Change msg to const char *.
5609         (__gnat_install_handler): Remove ss, unused.
5610         [sun && __SVR4 && !__vxworks] (__gnat_error_handler): Change msg
5611         to const char *.
5612         * cstreams.c (__gnat_full_name): Declare p only when used.
5613         (__gnat_full_name) [sgi] Return buffer.
5614
5615 2003-10-22  Arnaud Charlet  <charlet@act-europe.fr>
5616
5617         * mingw32.h: New file.
5618         * gnat_wrapper.adb: New file.
5619
5620 2003-10-22  Jerome Roussel  <roussel@act-europe.fr>
5621
5622         * g-regpat.ads, g-regpat.adb (Match): new function, to know if a
5623         string match a pre compiled regular expression (the corresponding
5624         version of the function working on a raw regular expression)
5625         Fix typos in various comments
5626         Update copyright notice in spec
5627
5628 2003-10-21  Gary Dismukes  <dismukes@gnat.com>
5629
5630         * exp_ch3.adb:
5631         (Component_Needs_Simple_Initialization): Return False when the type is a
5632         packed bit array. Revise spec comments to document this case.
5633
5634         * exp_prag.adb:
5635         (Expand_Pragma_Import): Set any expression on the imported object to
5636         empty to avoid initializing imported objects (in particular this
5637         covers the case of zero-initialization of bit arrays).
5638         Update copyright notice.
5639
5640 2003-10-21  Ed Schonberg  <schonberg@gnat.com>
5641
5642         * sem_ch12.adb:
5643         (Load_Parent_Of_Generic): If parent is compilation unit, stop search,
5644         a subunit is missing.
5645         (Instantiate_Subprogram_Body): If body of function is missing, set type
5646         of return expression explicitly in dummy body, to prevent cascaded
5647         errors when a subunit is missing.
5648         Fixes PR 5677.
5649
5650         * sem_ch3.adb:
5651         (Access_Subprogram_Declaration): Verify that return type is valid.
5652         Fixes PR 8693.
5653
5654         * sem_elab.adb:
5655         (Check_Elab_Calls): Do not apply elaboration checks if the main unit is
5656         generic.
5657         Fixes PR 12318.
5658
5659         * sem_util.adb:
5660         (Corresponding_Discriminant): If the scope of the discriminant is a
5661         private type without discriminant, use its full view.
5662         Fixes PR 8247.
5663
5664 2003-10-21  Arnaud Charlet  <charlet@act-europe.fr>
5665
5666         * 3psoccon.ads, 3veacodu.adb, 3vexpect.adb, 3vsoccon.ads,
5667         3vsocthi.adb, 3vsocthi.ads, 3vtrasym.adb, 3zsoccon.ads,
5668         3zsocthi.adb, 3zsocthi.ads, 50system.ads, 51system.ads,
5669         55system.ads, 56osinte.adb, 56osinte.ads, 56taprop.adb,
5670         56taspri.ads, 56tpopsp.adb, 57system.ads, 58system.ads,
5671         59system.ads, 5aml-tgt.adb, 5bml-tgt.adb, 5csystem.ads,
5672         5dsystem.ads, 5fosinte.adb, 5gml-tgt.adb, 5hml-tgt.adb,
5673         5isystem.ads, 5lparame.adb, 5msystem.ads, 5psystem.ads,
5674         5sml-tgt.adb, 5sosprim.adb, 5stpopsp.adb, 5tsystem.ads,
5675         5usystem.ads, 5vml-tgt.adb, 5vsymbol.adb, 5vtraent.adb,
5676         5vtraent.ads, 5wml-tgt.adb, 5xparame.ads, 5xsystem.ads,
5677         5xvxwork.ads, 5yparame.ads, 5ytiitho.adb, 5zinit.adb,
5678         5zml-tgt.adb, 5zparame.ads, 5ztaspri.ads, 5ztfsetr.adb,
5679         5zthrini.adb, 5ztiitho.adb, 5ztpopsp.adb, 7stfsetr.adb,
5680         7straces.adb, 7strafor.adb, 7strafor.ads, 7stratas.adb,
5681         a-excach.adb, a-exexda.adb, a-exexpr.adb, a-exextr.adb,
5682         a-exstat.adb, a-strsup.adb, a-strsup.ads, a-stwisu.adb,
5683         a-stwisu.ads, bld.adb, bld.ads, bld-io.adb,
5684         bld-io.ads, clean.adb, clean.ads, ctrl_c.c,
5685         erroutc.adb, erroutc.ads, errutil.adb, errutil.ads,
5686         err_vars.ads, final.c, g-arrspl.adb, g-arrspl.ads,
5687         g-boubuf.adb, g-boubuf.ads, g-boumai.ads, g-bubsor.adb,
5688         g-bubsor.ads, g-comver.adb, g-comver.ads, g-ctrl_c.ads,
5689         g-dynhta.adb, g-dynhta.ads, g-eacodu.adb, g-excact.adb,
5690         g-excact.ads, g-heasor.adb, g-heasor.ads, g-memdum.adb,
5691         g-memdum.ads, gnatclean.adb, gnatsym.adb, g-pehage.adb,
5692         g-pehage.ads, g-perhas.ads, gpr2make.adb, gpr2make.ads,
5693         gprcmd.adb, gprep.adb, gprep.ads, g-semaph.adb,
5694         g-semaph.ads, g-string.adb, g-string.ads, g-strspl.ads,
5695         g-wistsp.ads, i-vthrea.adb, i-vthrea.ads, i-vxwoio.adb,
5696         i-vxwoio.ads, Makefile.generic, Makefile.prolog, Makefile.rtl,
5697         prep.adb, prep.ads, prepcomp.adb, prepcomp.ads,
5698         prj-err.adb, prj-err.ads, s-boarop.ads, s-carsi8.adb,
5699         s-carsi8.ads, s-carun8.adb, s-carun8.ads, s-casi16.adb,
5700         s-casi16.ads, s-casi32.adb, s-casi32.ads, s-casi64.adb,
5701         s-casi64.ads, s-casuti.adb, s-casuti.ads, s-caun16.adb,
5702         s-caun16.ads, s-caun32.adb, s-caun32.ads, s-caun64.adb,
5703         s-caun64.ads, scng.adb, scng.ads, s-exnint.adb,
5704         s-exnllf.adb, s-exnlli.adb, s-expint.adb, s-explli.adb,
5705         s-geveop.adb, s-geveop.ads, s-hibaen.ads, s-htable.adb,
5706         s-htable.ads, sinput-c.adb, sinput-c.ads, s-memcop.ads,
5707         socket.c, s-purexc.ads, s-scaval.adb, s-stopoo.adb,
5708         s-strcom.adb, s-strcom.ads, s-strxdr.adb, s-rident.ads,
5709         s-thread.adb, s-thread.ads, s-tpae65.adb, s-tpae65.ads,
5710         s-tporft.adb, s-traent.adb, s-traent.ads, styleg.adb,
5711         styleg.ads, styleg-c.adb, styleg-c.ads, s-veboop.adb,
5712         s-veboop.ads, s-vector.ads, symbols.adb, symbols.ads,
5713         tb-alvms.c, tb-alvxw.c, tempdir.adb, tempdir.ads,
5714         vms_conv.ads, vms_conv.adb, vms_data.ads,
5715         vxaddr2line.adb: Files added. Merge with ACT tree.
5716
5717         * 4dintnam.ads, 4mintnam.ads, 4uintnam.ads, 52system.ads,
5718         5dosinte.ads, 5etpopse.adb, 5mosinte.ads, 5qosinte.adb,
5719         5qosinte.ads, 5qstache.adb, 5qtaprop.adb, 5qtaspri.ads,
5720         5stpopse.adb, 5uintman.adb, 5uosinte.ads, adafinal.c,
5721         g-enblsp.adb, io-aux.c, scn-nlit.adb, scn-slit.adb,
5722         s-exnflt.ads, s-exngen.adb, s-exngen.ads, s-exnlfl.ads,
5723         s-exnlin.ads, s-exnsfl.ads, s-exnsin.ads, s-exnssi.ads,
5724         s-expflt.ads, s-expgen.adb, s-expgen.ads, s-explfl.ads,
5725         s-explin.ads, s-expllf.ads, s-expsfl.ads, s-expsin.ads,
5726         s-expssi.ads, style.adb: Files removed. Merge with ACT tree.
5727
5728         * 1ic.ads, 31soccon.ads, 31soliop.ads, 3asoccon.ads,
5729         3bsoccon.ads, 3gsoccon.ads, 3hsoccon.ads, 3ssoccon.ads,
5730         3ssoliop.ads, 3wsoccon.ads, 3wsocthi.adb, 3wsocthi.ads,
5731         3wsoliop.ads, 41intnam.ads, 42intnam.ads, 4aintnam.ads,
5732         4cintnam.ads, 4gintnam.ads, 4hexcpol.adb, 4hintnam.ads,
5733         4lintnam.ads, 4nintnam.ads, 4ointnam.ads, 4onumaux.ads,
5734         4pintnam.ads, 4sintnam.ads, 4vcaldel.adb, 4vcalend.adb,
5735         4vintnam.ads, 4wexcpol.adb, 4wintnam.ads, 4zintnam.ads,
5736         51osinte.adb, 51osinte.ads, 52osinte.adb, 52osinte.ads,
5737         53osinte.ads, 54osinte.ads, 5aosinte.adb, 5aosinte.ads,
5738         5asystem.ads, 5ataprop.adb, 5atasinf.ads, 5ataspri.ads,
5739         5atpopsp.adb, 5avxwork.ads, 5bosinte.adb, 5bosinte.ads,
5740         5bsystem.ads, 5cosinte.ads, 5esystem.ads, 5fintman.adb,
5741         5fosinte.ads, 5fsystem.ads, 5ftaprop.adb, 5ftasinf.ads,
5742         5ginterr.adb, 5gintman.adb, 5gmastop.adb, 5gosinte.ads,
5743         5gproinf.ads, 5gsystem.ads, 5gtaprop.adb, 5gtasinf.ads,
5744         5gtpgetc.adb, 5hosinte.adb, 5hosinte.ads, 5hsystem.ads,
5745         5htaprop.adb, 5htaspri.ads, 5htraceb.adb, 5iosinte.adb,
5746         5itaprop.adb, 5itaspri.ads, 5ksystem.ads, 5kvxwork.ads,
5747         5lintman.adb, 5lml-tgt.adb, 5losinte.ads, 5lsystem.ads,
5748         5mvxwork.ads, 5ninmaop.adb, 5nintman.adb, 5nosinte.ads,
5749         5ntaprop.adb, 5ntaspri.ads, 5ointerr.adb, 5omastop.adb,
5750         5oosinte.adb, 5oosinte.ads, 5oosprim.adb, 5oparame.adb,
5751         5osystem.ads, 5otaprop.adb, 5otaspri.ads, 5posinte.ads,
5752         5posprim.adb, 5pvxwork.ads, 5sintman.adb, 5sosinte.adb,
5753         5sosinte.ads, 5ssystem.ads, 5staprop.adb, 5stasinf.ads,
5754         5staspri.ads, 5svxwork.ads, 5tosinte.ads, 5vasthan.adb,
5755         5vinmaop.adb, 5vinterr.adb, 5vintman.adb, 5vintman.ads,
5756         5vmastop.adb, 5vosinte.adb, 5vosinte.ads, 5vosprim.adb,
5757         5vsystem.ads, 5vtaprop.adb, 5vtaspri.ads, 5vtpopde.adb,
5758         5vtpopde.ads, 5wgloloc.adb, 5wintman.adb, 5wmemory.adb,
5759         5wosprim.adb, 5wsystem.ads, 5wtaprop.adb, 5wtaspri.ads,
5760         5ysystem.ads, 5zinterr.adb, 5zintman.adb, 5zosinte.adb,
5761         5zosinte.ads, 5zosprim.adb, 5zsystem.ads, 5ztaprop.adb,
5762         6vcpp.adb, 6vcstrea.adb, 6vinterf.ads, 7sinmaop.adb,
5763         7sintman.adb, 7sosinte.adb, 7sosprim.adb, 7staprop.adb,
5764         7staspri.ads, 7stpopsp.adb, 7straceb.adb, 9drpc.adb,
5765         a-caldel.adb, a-caldel.ads, a-charac.ads, a-colien.ads,
5766         a-comlin.adb, adaint.c, adaint.h, ada-tree.def,
5767         a-diocst.adb, a-diocst.ads, a-direio.adb, a-except.adb,
5768         a-except.ads, a-excpol.adb, a-exctra.adb, a-exctra.ads,
5769         a-filico.adb, a-interr.adb, a-intsig.adb, a-intsig.ads,
5770         ali.adb, ali.ads, ali-util.adb, ali-util.ads,
5771         a-ngcefu.adb, a-ngcoty.adb, a-ngelfu.adb, a-nudira.adb,
5772         a-nudira.ads, a-nuflra.adb, a-nuflra.ads, a-reatim.adb,
5773         a-reatim.ads, a-retide.ads, a-sequio.adb, a-siocst.adb,
5774         a-siocst.ads, a-ssicst.adb, a-ssicst.ads, a-strbou.adb,
5775         a-strbou.ads, a-strfix.adb, a-strmap.adb, a-strsea.ads,
5776         a-strunb.adb, a-strunb.ads, a-ststio.adb, a-stunau.adb,
5777         a-stunau.ads, a-stwibo.adb, a-stwibo.ads, a-stwifi.adb,
5778         a-stwima.adb, a-stwiun.adb, a-stwiun.ads, a-tags.adb,
5779         a-tags.ads, a-tasatt.adb, a-taside.adb, a-teioed.adb,
5780         a-textio.adb, a-textio.ads, a-tienau.adb, a-tifiio.adb,
5781         a-tiflau.adb, a-tiflio.adb, a-tigeau.adb, a-tigeau.ads,
5782         a-tiinau.adb, a-timoau.adb, a-tiocst.adb, a-tiocst.ads,
5783         atree.adb, atree.ads, a-witeio.adb, a-witeio.ads,
5784         a-wtcstr.adb, a-wtcstr.ads, a-wtdeio.adb, a-wtedit.adb,
5785         a-wtenau.adb, a-wtflau.adb, a-wtinau.adb, a-wtmoau.adb,
5786         bcheck.adb, binde.adb, bindgen.adb, bindusg.adb,
5787         checks.adb, checks.ads, cio.c, comperr.adb,
5788         comperr.ads, csets.adb, cstand.adb, cstreams.c,
5789         debug_a.adb, debug_a.ads, debug.adb, decl.c,
5790         einfo.adb, einfo.ads, errout.adb, errout.ads,
5791         eval_fat.adb, eval_fat.ads, exp_aggr.adb, expander.adb,
5792         expander.ads, exp_attr.adb, exp_ch11.adb, exp_ch13.adb,
5793         exp_ch2.adb, exp_ch3.adb, exp_ch3.ads, exp_ch4.adb,
5794         exp_ch5.adb, exp_ch6.adb, exp_ch7.adb, exp_ch7.ads,
5795         exp_ch8.adb, exp_ch9.adb, exp_code.adb, exp_dbug.adb,
5796         exp_dbug.ads, exp_disp.adb, exp_dist.adb, expect.c,
5797         exp_fixd.adb, exp_imgv.adb, exp_intr.adb, exp_pakd.adb,
5798         exp_prag.adb, exp_strm.adb, exp_strm.ads, exp_tss.adb,
5799         exp_tss.ads, exp_util.adb, exp_util.ads, exp_vfpt.adb,
5800         fe.h, fmap.adb, fmap.ads, fname.adb,
5801         fname.ads, fname-uf.adb, fname-uf.ads, freeze.adb,
5802         freeze.ads, frontend.adb, g-awk.adb, g-awk.ads,
5803         g-busora.adb, g-busora.ads, g-busorg.adb, g-busorg.ads,
5804         g-casuti.adb, g-casuti.ads, g-catiio.adb, g-catiio.ads,
5805         g-cgi.adb, g-cgi.ads, g-cgicoo.adb, g-cgicoo.ads,
5806         g-cgideb.adb, g-cgideb.ads, g-comlin.adb, g-comlin.ads,
5807         g-crc32.adb, g-crc32.ads, g-debpoo.adb, g-debpoo.ads,
5808         g-debuti.adb, g-debuti.ads, g-diopit.adb, g-diopit.ads,
5809         g-dirope.adb, g-dirope.ads, g-dyntab.adb, g-dyntab.ads,
5810         g-except.ads, g-exctra.adb, g-exctra.ads, g-expect.adb,
5811         g-expect.ads, g-hesora.adb, g-hesora.ads, g-hesorg.adb,
5812         g-hesorg.ads, g-htable.adb, g-htable.ads, gigi.h,
5813         g-io.adb, g-io.ads, g-io_aux.adb, g-io_aux.ads,
5814         g-locfil.adb, g-locfil.ads, g-md5.adb, g-md5.ads,
5815         gmem.c, gnat1drv.adb, gnatbind.adb, gnatchop.adb,
5816         gnatcmd.adb, gnatfind.adb, gnatkr.adb, gnatlbr.adb,
5817         gnatlink.adb, gnatls.adb, gnatmake.adb, gnatmem.adb,
5818         gnatname.adb, gnatprep.adb, gnatprep.ads, gnatpsta.adb,
5819         gnatxref.adb, g-os_lib.adb, g-os_lib.ads, g-regexp.adb,
5820         g-regexp.ads, g-regist.adb, g-regist.ads, g-regpat.adb,
5821         g-regpat.ads, g-soccon.ads, g-socket.adb, g-socket.ads,
5822         g-socthi.adb, g-socthi.ads, g-soliop.ads, g-souinf.ads,
5823         g-speche.adb, g-speche.ads, g-spipat.adb, g-spipat.ads,
5824         g-spitbo.adb, g-spitbo.ads, g-sptabo.ads, g-sptain.ads,
5825         g-sptavs.ads, g-table.adb, g-table.ads, g-tasloc.adb,
5826         g-tasloc.ads, g-thread.adb, g-thread.ads, g-traceb.adb,
5827         g-traceb.ads, g-trasym.adb, g-trasym.ads, hostparm.ads,
5828         i-c.ads, i-cobol.adb, i-cpp.adb, i-cstrea.ads,
5829         i-cstrin.adb, i-cstrin.ads, impunit.adb, init.c,
5830         inline.adb, interfac.ads, i-pacdec.ads, itypes.adb,
5831         itypes.ads, i-vxwork.ads, lang.opt, lang-specs.h,
5832         layout.adb, lib.adb, lib.ads, lib-list.adb,
5833         lib-load.adb, lib-load.ads, lib-sort.adb, lib-util.adb,
5834         lib-writ.adb, lib-writ.ads, lib-xref.adb, lib-xref.ads,
5835         link.c, live.adb, make.adb, make.ads,
5836         Makefile.adalib, Makefile.in, Make-lang.in, makeusg.adb,
5837         mdll.adb, mdll-fil.adb, mdll-fil.ads, mdll-utl.adb,
5838         mdll-utl.ads, memroot.adb, memroot.ads, memtrack.adb,
5839         misc.c, mkdir.c, mlib.adb, mlib.ads,
5840         mlib-fil.adb, mlib-fil.ads, mlib-prj.adb, mlib-prj.ads,
5841         mlib-tgt.adb, mlib-tgt.ads, mlib-utl.adb, mlib-utl.ads,
5842         namet.adb, namet.ads, namet.h, nlists.ads,
5843         nlists.h, nmake.adt, opt.adb, opt.ads,
5844         osint.adb, osint.ads, osint-b.adb, osint-c.adb,
5845         par.adb, par-ch10.adb, par-ch11.adb, par-ch2.adb,
5846         par-ch3.adb, par-ch4.adb, par-ch5.adb, par-ch6.adb,
5847         par-ch9.adb, par-endh.adb, par-labl.adb, par-load.adb,
5848         par-prag.adb, par-sync.adb, par-tchk.adb, par-util.adb,
5849         prj.adb, prj.ads, prj-attr.adb, prj-attr.ads,
5850         prj-com.adb, prj-com.ads, prj-dect.adb, prj-dect.ads,
5851         prj-env.adb, prj-env.ads, prj-ext.adb, prj-ext.ads,
5852         prj-makr.adb, prj-makr.ads, prj-nmsc.adb, prj-nmsc.ads,
5853         prj-pars.adb, prj-pars.ads, prj-part.adb, prj-part.ads,
5854         prj-pp.adb, prj-pp.ads, prj-proc.adb, prj-proc.ads,
5855         prj-strt.adb, prj-strt.ads, prj-tree.adb, prj-tree.ads,
5856         prj-util.adb, prj-util.ads, raise.c, raise.h,
5857         repinfo.adb, repinfo.h, restrict.adb, restrict.ads,
5858         rident.ads, rtsfind.adb, rtsfind.ads, s-addima.ads,
5859         s-arit64.adb, s-assert.adb, s-assert.ads, s-atacco.adb,
5860         s-atacco.ads, s-auxdec.adb, s-auxdec.ads, s-bitops.adb,
5861         scans.ads, scn.adb, scn.ads, s-crc32.adb,
5862         s-crc32.ads, s-direio.adb, sem.adb, sem.ads,
5863         sem_aggr.adb, sem_attr.adb, sem_attr.ads, sem_case.adb,
5864         sem_case.ads, sem_cat.adb, sem_cat.ads, sem_ch10.adb,
5865         sem_ch11.adb, sem_ch12.adb, sem_ch12.ads, sem_ch13.adb,
5866         sem_ch13.ads, sem_ch3.adb, sem_ch3.ads, sem_ch4.adb,
5867         sem_ch5.adb, sem_ch5.ads, sem_ch6.adb, sem_ch6.ads,
5868         sem_ch7.adb, sem_ch7.ads, sem_ch8.adb, sem_ch8.ads,
5869         sem_ch9.adb, sem_disp.adb, sem_disp.ads, sem_dist.adb,
5870         sem_elab.adb, sem_eval.adb, sem_eval.ads, sem_intr.adb,
5871         sem_maps.adb, sem_mech.adb, sem_prag.adb, sem_prag.ads,
5872         sem_res.adb, sem_res.ads, sem_type.adb, sem_type.ads,
5873         sem_util.adb, sem_util.ads, sem_warn.adb, s-errrep.adb,
5874         s-errrep.ads, s-exctab.adb, s-exctab.ads, s-exnint.ads,
5875         s-exnllf.ads, s-exnlli.ads, s-expint.ads, s-explli.ads,
5876         s-expuns.ads, s-fatflt.ads, s-fatgen.adb, s-fatgen.ads,
5877         s-fatlfl.ads, s-fatllf.ads, s-fatsfl.ads, s-fileio.adb,
5878         s-fileio.ads, s-finimp.adb, s-finimp.ads, s-finroo.adb,
5879         s-finroo.ads, sfn_scan.adb, s-gloloc.adb, s-gloloc.ads,
5880         s-imgdec.adb, s-imgenu.adb, s-imgrea.adb, s-imgwch.adb,
5881         sinfo.adb, sinfo.ads, s-inmaop.ads, sinput.adb,
5882         sinput.ads, sinput-d.adb, sinput-l.adb, sinput-l.ads,
5883         sinput-p.adb, sinput-p.ads, s-interr.adb, s-interr.ads,
5884         s-intman.ads, s-maccod.ads, s-mastop.adb, s-mastop.ads,
5885         s-memory.adb, s-memory.ads, snames.adb, snames.ads,
5886         snames.h, s-osprim.ads, s-parame.ads, s-parint.ads,
5887         s-pooloc.adb, s-pooloc.ads, s-poosiz.adb, sprint.adb,
5888         s-proinf.ads, s-scaval.ads, s-secsta.adb, s-secsta.ads,
5889         s-sequio.adb, s-shasto.adb, s-shasto.ads, s-soflin.ads,
5890         s-stache.adb, s-stache.ads, s-stalib.adb, s-stalib.ads,
5891         s-stoele.ads, s-stopoo.ads, s-stratt.adb, s-stratt.ads,
5892         s-strops.adb, s-strops.ads, s-taasde.adb, s-taasde.ads,
5893         s-tadeca.adb, s-tadeca.ads, s-tadert.adb, s-tadert.ads,
5894         s-taenca.adb, s-taenca.ads, s-taprob.adb, s-taprob.ads,
5895         s-taprop.ads, s-tarest.adb, s-tarest.ads, s-tasdeb.adb,
5896         s-tasdeb.ads, s-tasinf.adb, s-tasinf.ads, s-tasini.adb,
5897         s-tasini.ads, s-taskin.adb, s-taskin.ads, s-tasque.adb,
5898         s-tasque.ads, s-tasren.adb, s-tasren.ads, s-tasres.ads,
5899         s-tassta.adb, s-tassta.ads, s-tasuti.adb, s-tasuti.ads,
5900         s-tataat.adb, s-tataat.ads, s-tpinop.adb, s-tpinop.ads,
5901         s-tpoben.adb, s-tpoben.ads, s-tpobop.adb, s-tpobop.ads,
5902         s-tposen.adb, s-tposen.ads, s-traceb.adb, s-traceb.ads,
5903         stringt.adb, stringt.ads, stringt.h, style.ads,
5904         stylesw.adb, stylesw.ads, s-unstyp.ads, s-vaflop.ads,
5905         s-valrea.adb, s-valuti.adb, s-vercon.adb, s-vmexta.adb,
5906         s-wchcnv.ads, s-wchcon.ads, s-widcha.adb, switch.adb,
5907         switch.ads, switch-b.adb, switch-c.adb, switch-m.adb,
5908         s-wwdcha.adb, s-wwdwch.adb, sysdep.c, system.ads,
5909         table.adb, table.ads, targparm.adb, targparm.ads,
5910         targtyps.c, tbuild.adb, tbuild.ads, tracebak.c,
5911         trans.c, tree_io.adb, treepr.adb, treeprs.adt,
5912         ttypes.ads, types.ads, types.h, uintp.adb,
5913         uintp.ads, uintp.h, uname.adb, urealp.adb,
5914         urealp.ads, urealp.h, usage.adb, utils2.c,
5915         utils.c, validsw.adb, validsw.ads, widechar.adb,
5916         xeinfo.adb, xnmake.adb, xref_lib.adb, xref_lib.ads,
5917         xr_tabls.adb, xr_tabls.ads, xtreeprs.adb, xsnames.adb,
5918         einfo.h, sinfo.h, treeprs.ads, nmake.ads, nmake.adb,
5919         gnatvsn.ads: Merge with ACT tree.
5920
5921         * gnatvsn.adb: Rewritten in a simpler and more efficient way.
5922
5923 2003-10-20  Mark Mitchell  <mark@codesourcery.com>
5924
5925         * Make-lang.in (gnat_ug_unx.info): Add dependency on stmp-docobjdir.
5926         (gnat_ug_vmx.info): Likewise.
5927         (gnat_ug_vxw.info): Likewise.
5928         (gnat_ug_wnt.info): Likewise.
5929         (gnat_rm.info): Likewise.
5930         (gnat-style.info): Likewise.
5931
5932         * Make-lang.in (ada.install-info): Remove target.
5933         (info): New target.
5934         (install-info): Likewise.
5935         (gnat_ug_unx.info): Simplify rule.
5936         (gnat_ug_vmx.info): Likewise.
5937         (gnat_ug_vxw.info): Likewise.
5938         (gnat_ug_wnt.info): Likewise.
5939         (gnat_rm.info): Likewise.
5940         (gnat-style.info): Likewise.
5941
5942 2003-10-14  Nathanael Nerode  <neroden@gcc.gnu.org>
5943
5944         * Make-lang.in: Replace uses of $(target_alias) with
5945         $(target_noncanonical).
5946         * ada/Makefile.in: Remove unused mention of $(target_alias).
5947
5948 2003-10-06  Mark Mitchell  <mark@codesourcery.com>
5949
5950         * Make-lang.in (ada.info): Replace with ...
5951         (info): ... this.
5952         (ada.dvi): Replace with ...
5953         (dvi): ... this.
5954
5955 2003-09-29  Zack Weinberg  <zack@codesourcery.com>
5956
5957         * trans.c (gigi): Use REAL_ARITHMETIC, not REAL_VALUE_ATOF, to
5958         initialize dconstp5 and dconstmp5.
5959
5960 2003-09-28  Richard Henderson  <rth@redhat.com>
5961
5962         * trans.c (tree_transform): Update call to expand_asm_operands.
5963
5964 2003-09-21  Richard Henderson  <rth@redhat.com>
5965
5966         * trans.c, utils.c: Revert.
5967
5968 2003-09-21  Richard Henderson  <rth@redhat.com>
5969
5970         * trans.c, utils.c: Update for DECL_SOURCE_LOCATION rename and
5971         change to const.
5972
5973 2003-09-04  Michael Matz  <matz@suse.de>
5974
5975         * misc.c: Include "target.h".
5976         * Make-lang.in (misc.o): Add dependency on target.h.
5977
5978 2003-09-03  DJ Delorie  <dj@redhat.com>
5979
5980         * misc.c (default_pass_by_ref): Convert to calls.return_in_memory
5981         hook.
5982
5983 2003-08-30  Zack Weinberg  <zack@codesourcery.com>
5984
5985         * Makefile.in: Update substitutions to match changes to
5986         configure.  Use include directives instead of @-insertions
5987         to read in host and target fragments.  Add a rule to
5988         regenerate ada/Makefile.
5989
5990 2003-07-18  Neil Booth  <neil@daikokuya.co.uk>
5991
5992         * lang-options.h: Remove.
5993         * lang.opt: Add help text.
5994
5995 2003-07-07  Nathan Sidwell  <nathan@codesourcery.com>
5996
5997         * trans.c (build_unit_elab, set_lineno): Adjust emit_line_note
5998         calls.
5999
6000 2003-07-06  Neil Booth  <neil@daikokuya.co.uk>
6001
6002         * misc.c (gnat_handle_option): Don't handle filenames.
6003
6004 2003-07-04  H.J. Lu <hongjiu.lu@intel.com>
6005
6006         * Make-lang.in: Replace PWD with PWD_COMMAND.
6007         * Makefile.adalib: Likewise.
6008         * Makefile.in: Likewise.
6009
6010 2003-07-04  Matt Kraai  <kraai@alumni.cmu.edu>
6011
6012         * misc.c (gnat_argv): Revert last change.
6013         (gnat_handle_option, gnat_init_options): Copy arguments.
6014
6015 2003-07-03  Neil Booth  <neil@daikokuya.co.uk>
6016
6017         * misc.c (gnat_argv): Make const.
6018
6019 2003-07-02  Neil Booth  <neil@daikokuya.co.uk>
6020
6021         * misc.c (save_argc, save_argv): Keep non-static!
6022
6023 2003-07-02  Neil Booth  <neil@daikokuya.co.uk>
6024
6025         * misc.c (save_argc, save_argv): Make static.
6026         (gnat_init_options): New prototype.
6027         (gnat_init_options): Update.
6028
6029 2003-07-01  Matt Kraai  <kraai@alumni.cmu.edu>
6030
6031         * gnat_ug.texi: Remove unlikely characters from @vars.
6032         * gnat_ug_vms.texi: Regenerate.
6033
6034 2003-06-27  Nathan Sidwell  <nathan@codesourcery.com>
6035
6036         * misc.c (record_code_position): Adjust emit_note call.
6037
6038 2003-06-26  Neil Booth  <neil@daikokuya.co.uk>
6039
6040         * misc.c (gnat_handle_option): Don't check for missing arguments.
6041
6042 2003-06-20  Nathan Sidwell  <nathan@codesourcery.com>
6043
6044         * utils.c (end_subprog_body): Adjust expand_function_end call.
6045
6046 2003-06-16  Matt Kraai  <kraai@alumni.cmu.edu>
6047
6048         * bindgen.adb (Gen_Main_Ada, Gen_Main_C): Do not test
6049         Bind_Main_Program.
6050
6051 2003-06-15  Neil Booth  <neil@daikokuya.co.uk>
6052
6053         * lang.opt: Declare Ada.
6054         * misc.c (gnat_init_options): Update.
6055
6056 2003-06-14  Nathan Sidwell  <nathan@codesourcery.com>
6057
6058         * utils.c (begin_subprog_body): Adjust init_function_start call.
6059
6060 2003-06-14  Neil Booth  <neil@daikokuya.co.uk>
6061
6062         * Make-lang.in: Update to use options.c and options.h.
6063         * misc.c: Include options.h not aoptions.h.
6064         (gnat_handle_option): Abort on unrecognized switch.
6065         (gnat_init_options): Request Ada switches.
6066
6067 2003-06-14  Neil Booth  <neil@daikokuya.co.uk>
6068
6069         * lang.opt: Add -Wall.
6070         * misc.c (gnat_handle_option): Handle it.
6071
6072 2003-06-12  Neil Booth  <neil@daikokuya.co.uk>
6073
6074         * misc.c (gnat_handle_option): Fix warnings.
6075
6076 2003-06-11  Matt Kraai  <kraai@alumni.cmu.edu>
6077
6078         * Make-lang.in (gnatbind): Remove $(LIBIBERTY).
6079
6080 2003-06-11  Neil Booth  <neil@daikokuya.co.uk>
6081
6082         * Make-lang.in: Update to handle command-line options.
6083         * lang.opt: New file.
6084         * misc.c: Include aoptions.h.
6085         (cl_options_count, cl_options): Remove.
6086         (gnat_handle_option): New.
6087         (gnat_decode_option): Remove.
6088         (LANG_HOOKS_DECODE_OPTION): Remove.
6089         (LANG_HOOKS_HANDLE_OPTION): Override.
6090
6091 2003-06-10  Nathanael Nerode  <neroden@gcc.gnu.org>
6092
6093         * init.c, misc.c, trans.c, utils.c: Remove dead code.
6094
6095 2003-06-09  Nathanael Nerode  <neroden@gcc.gnu.org>
6096
6097         * Makefile.in: Replace "host_canonical" with "host" for autoconf
6098         substitution.
6099
6100 2003-06-08  Neil Booth  <neil@daikokuya.co.uk>
6101
6102         * Make-lang.in: Update.
6103         * misc.c: Include opts.h. Define cl_options_count and cl_options.
6104
6105 2003-06-07  Neil Booth  <neil@daikokuya.co.uk>
6106
6107         * misc.c (gnat_init_options): Update.
6108
6109 2003-06-05  Matt Kraai  <kraai@alumni.cmu.edu>
6110
6111         * Make-lang.in (ada/b_gnatb.o-warn): Remove.
6112         * bindgen.adb (Gen_Main_C): Mark ensure_reference with
6113         __attribute__ ((__unused__)).
6114
6115 2003-06-05  Jan Hubicka  <jh@suse.cz>
6116
6117         * Make-lang.in:  Add support for stageprofile and stagefeedback
6118
6119 2003-06-05  Matt Kraai  <kraai@alumni.cmu.edu>
6120
6121         * bindgen.adb (Gen_Adafinal_C, Gen_Adainit_C, Gen_Elab_Defs_C)
6122         (Gen_Main_C, Gen_Output_File_C): Generate ISO C.
6123
6124 2003-06-04  Matt Kraai  <kraai@alumni.cmu.edu>
6125
6126         * gnat_ug.texi (The GNAT Run-Time Library Builder gnatlbr):
6127         Remove non-VMS directive.
6128         (Switches for gnatlbr, Optimization Levels): Remove non-VMS
6129         alternatives.
6130         (Examples of gnatls Usage): Remove VMS alternative.
6131
6132 2003-06-04  Olivier Hainque  <hainque@act-europe.fr>
6133
6134         PR ada/9953:
6135         * 5hsystem.ads: Remove pragma Linker_Option for pthreads library,
6136         and turn ZCX_By_Default back to False since the underlying support
6137         is not quite there yet.
6138
6139 2003-06-01  Andreas Jaeger  <aj@suse.de>
6140
6141         * utils.c (finish_record_type): Remove usages of ROUND_TYPE_SIZE
6142         and ROUND_TYPE_SIZE_UNIT.
6143
6144 2003-05-22   Geert Bosch <bosch@gnat.com>
6145
6146         * gnat_rm.texi : Remove reference to Ada Core Technologies.
6147
6148 2003-05-03  Nathan Sidwell  <nathan@codesourcery.com>
6149
6150         * trans.c (tree_transform): Use location_t and input_location
6151         directly.
6152         (build_unit_elab): Likewise.
6153         * utils.c (create_label_decl): Likewise.
6154
6155 2003-05-01  Nathan Sidwell  <nathan@codesourcery.com>
6156
6157         * trans.c (tree_transform, build_unit_elab,
6158         set_lineno): Rename lineno to input_line.
6159         * utils.c (pushdecl, create_label_decl, begin_subprog_body,
6160         end_subprog_body): Likewise.
6161         * utils2.c (build_call_raise): Likewise.
6162
6163 2003-05-01  Laurent Guerby <guerby@acm.org>
6164
6165         PR ada/10546
6166         * 5iosinte.ads: Increase pthread_cond_t size to match recent
6167         LinuxThread and NPTL version, merge from ACT.
6168
6169 2003-04-28  Zack Weinberg  <zack@codesourcery.com>
6170
6171         * utils.c (convert): No need to clear TREE_CST_RTL.
6172
6173 2003-04-23   Geert Bosch <bosch@gnat.com>
6174
6175         * 1aexcept.adb, 1aexcept.ads, 1ic.ads, 1ssecsta.adb,
6176         1ssecsta.ads, 31soccon.ads, 31soliop.ads, 3asoccon.ads,
6177         3bsoccon.ads, 3gsoccon.ads, 3hsoccon.ads, 3ssoccon.ads,
6178         3ssoliop.ads, 3wsoccon.ads, 3wsocthi.adb, 3wsocthi.ads,
6179         3wsoliop.ads, 41intnam.ads, 42intnam.ads, 4aintnam.ads,
6180         4cintnam.ads, 4dintnam.ads, 4gintnam.ads, 4hexcpol.adb,
6181         4hintnam.ads, 4lintnam.ads, 4mintnam.ads, 4nintnam.ads,
6182         4ointnam.ads, 4onumaux.ads, 4pintnam.ads, 4rintnam.ads,
6183         4sintnam.ads, 4uintnam.ads, 4vcaldel.adb, 4vcalend.adb,
6184         4vcalend.ads, 4vintnam.ads, 4wcalend.adb, 4wexcpol.adb,
6185         4wintnam.ads, 4zintnam.ads, 4znumaux.ads, 4zsytaco.adb,
6186         4zsytaco.ads, 51osinte.adb, 51osinte.ads, 52osinte.adb,
6187         52osinte.ads, 52system.ads, 53osinte.ads, 54osinte.ads,
6188         5amastop.adb, 5aosinte.adb, 5aosinte.ads, 5asystem.ads,
6189         5ataprop.adb, 5atasinf.ads, 5ataspri.ads, 5atpopsp.adb,
6190         5avxwork.ads, 5bosinte.adb, 5bosinte.ads, 5bsystem.ads,
6191         5cosinte.ads, 5dosinte.ads, 5esystem.ads, 5etpopse.adb,
6192         5fintman.adb, 5fosinte.ads, 5fsystem.ads, 5ftaprop.adb,
6193         5ftasinf.ads, 5ginterr.adb, 5gintman.adb, 5gmastop.adb,
6194         5gosinte.ads, 5gproinf.adb, 5gproinf.ads, 5gsystem.ads,
6195         5gtaprop.adb, 5gtasinf.adb, 5gtasinf.ads, 5gtpgetc.adb,
6196         5hosinte.adb, 5hosinte.ads, 5hparame.ads, 5hsystem.ads,
6197         5htaprop.adb, 5htaspri.ads, 5htraceb.adb, 5iosinte.adb,
6198         5iosinte.ads, 5itaprop.adb, 5itaspri.ads, 5ksystem.ads,
6199         5kvxwork.ads, 5lintman.adb, 5lml-tgt.adb, 5losinte.ads,
6200         5lsystem.ads, 5mosinte.ads, 5mvxwork.ads, 5ninmaop.adb,
6201         5nintman.adb, 5nosinte.ads, 5ntaprop.adb, 5ntaspri.ads,
6202         5ointerr.adb, 5omastop.adb, 5oosinte.adb, 5oosinte.ads,
6203         5oosprim.adb, 5oparame.adb, 5osystem.ads, 5otaprop.adb,
6204         5otaspri.ads, 5posinte.ads, 5posprim.adb, 5pvxwork.ads,
6205         5qosinte.adb, 5qosinte.ads, 5qstache.adb, 5qtaprop.adb,
6206         5qtaspri.ads, 5rosinte.adb, 5rosinte.ads, 5rparame.adb,
6207         5sintman.adb, 5sosinte.adb, 5sosinte.ads, 5sparame.adb,
6208         5ssystem.ads, 5staprop.adb, 5stasinf.adb, 5stasinf.ads,
6209         5staspri.ads, 5stpopse.adb, 5svxwork.ads, 5tosinte.ads,
6210         5uintman.adb, 5uosinte.ads, 5vasthan.adb, 5vinmaop.adb,
6211         5vinterr.adb, 5vintman.adb, 5vintman.ads, 5vmastop.adb,
6212         5vosinte.adb, 5vosinte.ads, 5vosprim.adb, 5vosprim.ads,
6213         5vparame.ads, 5vsystem.ads, 5vtaprop.adb, 5vtaspri.ads,
6214         5vtpopde.adb, 5vtpopde.ads, 5vvaflop.adb, 5wgloloc.adb,
6215         5wintman.adb, 5wmemory.adb, 5wosinte.ads, 5wosprim.adb,
6216         5wsystem.ads, 5wtaprop.adb, 5wtaspri.ads, 5ysystem.ads,
6217         5zinterr.adb, 5zintman.adb, 5zosinte.adb, 5zosinte.ads,
6218         5zosprim.adb, 5zsystem.ads, 5ztaprop.adb, 6vcpp.adb,
6219         6vcstrea.adb, 6vinterf.ads, 7sinmaop.adb, 7sintman.adb,
6220         7sosinte.adb, 7sosprim.adb, 7staprop.adb, 7staspri.ads,
6221         7stpopsp.adb, 7straceb.adb, 86numaux.adb, 86numaux.ads,
6222         9drpc.adb, a-astaco.adb, a-astaco.ads, a-caldel.adb,
6223         a-caldel.ads, a-calend.adb, a-calend.ads, a-chahan.adb,
6224         a-chahan.ads, a-charac.ads, a-chlat1.ads, a-chlat9.ads,
6225         a-colien.adb, a-colien.ads, a-colire.adb, a-colire.ads,
6226         a-comlin.adb, a-comlin.ads, a-cwila1.ads, a-cwila9.ads,
6227         a-decima.adb, a-decima.ads, a-diocst.adb, a-diocst.ads,
6228         a-direio.adb, a-direio.ads, a-dynpri.adb, a-dynpri.ads,
6229         a-einuoc.adb, a-einuoc.ads, a-except.adb, a-except.ads,
6230         a-excpol.adb, a-exctra.adb, a-exctra.ads, a-filico.adb,
6231         a-filico.ads, a-finali.adb, a-finali.ads, a-flteio.ads,
6232         a-fwteio.ads, a-inteio.ads, a-interr.adb, a-interr.ads,
6233         a-intnam.ads, a-intsig.adb, a-intsig.ads, a-ioexce.ads,
6234         a-iwteio.ads, a-lfteio.ads, a-lfwtio.ads, a-liteio.ads,
6235         a-liwtio.ads, a-llftio.ads, a-llfwti.ads, a-llitio.ads,
6236         a-lliwti.ads, a-ncelfu.ads, a-ngcefu.adb, a-ngcefu.ads,
6237         a-ngcoty.adb, a-ngcoty.ads, a-ngelfu.adb, a-ngelfu.ads,
6238         a-nlcefu.ads, a-nlcoty.ads, a-nlelfu.ads, a-nllcef.ads,
6239         a-nllcty.ads, a-nllefu.ads, a-nscefu.ads, a-nscoty.ads,
6240         a-nselfu.ads, a-nucoty.ads, a-nudira.adb, a-nudira.ads,
6241         a-nuelfu.ads, a-nuflra.adb, a-nuflra.ads, a-numaux.ads,
6242         a-numeri.ads, a-reatim.adb, a-reatim.ads, a-retide.adb,
6243         a-retide.ads, a-sequio.adb, a-sequio.ads, a-sfteio.ads,
6244         a-sfwtio.ads, a-siocst.adb, a-siocst.ads, a-siteio.ads,
6245         a-siwtio.ads, a-ssicst.adb, a-ssicst.ads, a-ssitio.ads,
6246         a-ssiwti.ads, a-stmaco.ads, a-storio.adb, a-storio.ads,
6247         a-strbou.adb, a-strbou.ads, a-stream.ads, a-strfix.adb,
6248         a-strfix.ads, a-string.ads, a-strmap.adb, a-strmap.ads,
6249         a-strsea.adb, a-strsea.ads, a-strunb.adb, a-strunb.ads,
6250         a-ststio.adb, a-ststio.ads, a-stunau.adb, a-stunau.ads,
6251         a-stwibo.adb, a-stwibo.ads, a-stwifi.adb, a-stwifi.ads,
6252         a-stwima.adb, a-stwima.ads, a-stwise.adb, a-stwise.ads,
6253         a-stwiun.adb, a-stwiun.ads, a-suteio.adb, a-suteio.ads,
6254         a-swmwco.ads, a-swuwti.adb, a-swuwti.ads, a-sytaco.adb,
6255         a-sytaco.ads, a-tags.adb, a-tags.ads, a-tasatt.adb,
6256         a-tasatt.ads, a-taside.adb, a-taside.ads, a-teioed.adb,
6257         a-teioed.ads, a-textio.adb, a-textio.ads, a-ticoau.adb,
6258         a-ticoau.ads, a-ticoio.adb, a-ticoio.ads, a-tideau.adb,
6259         a-tideau.ads, a-tideio.adb, a-tideio.ads, a-tienau.adb,
6260         a-tienau.ads, a-tienio.adb, a-tienio.ads, a-tifiio.adb,
6261         a-tifiio.ads, a-tiflau.adb, a-tiflau.ads, a-tiflio.adb,
6262         a-tiflio.ads, a-tigeau.adb, a-tigeau.ads, a-tiinau.adb,
6263         a-tiinau.ads, a-tiinio.adb, a-tiinio.ads, a-timoau.adb,
6264         a-timoau.ads, a-timoio.adb, a-timoio.ads, a-tiocst.adb,
6265         a-tiocst.ads, a-titest.adb, a-titest.ads, a-unccon.ads,
6266         a-uncdea.ads, a-witeio.adb, a-witeio.ads, a-wtcoau.adb,
6267         a-wtcoau.ads, a-wtcoio.adb, a-wtcoio.ads, a-wtcstr.adb,
6268         a-wtcstr.ads, a-wtdeau.adb, a-wtdeau.ads, a-wtdeio.adb,
6269         a-wtdeio.ads, a-wtedit.adb, a-wtedit.ads, a-wtenau.adb,
6270         a-wtenau.ads, a-wtenio.adb, a-wtenio.ads, a-wtfiio.adb,
6271         a-wtfiio.ads, a-wtflau.adb, a-wtflau.ads, a-wtflio.adb,
6272         a-wtflio.ads, a-wtgeau.adb, a-wtgeau.ads, a-wtinau.adb,
6273         a-wtinau.ads, a-wtinio.adb, a-wtinio.ads, a-wtmoau.adb,
6274         a-wtmoau.ads, a-wtmoio.adb, a-wtmoio.ads, a-wttest.adb,
6275         a-wttest.ads, ada-tree.h, ada.ads, ada.h,
6276         adadecode.c, adadecode.h, ali-util.adb, ali-util.ads,
6277         ali.adb, ali.ads, alloc.ads, argv.c,
6278         atree.adb, atree.ads, atree.h, aux-io.c,
6279         back_end.adb, back_end.ads, bcheck.adb, bcheck.ads,
6280         binde.adb, binde.ads, binderr.adb, binderr.ads,
6281         bindgen.adb, bindgen.ads, bindusg.adb, bindusg.ads,
6282         butil.adb, butil.ads, cal.c, calendar.ads,
6283         casing.adb, casing.ads, ceinfo.adb, checks.adb,
6284         checks.ads, cio.c, comperr.adb, comperr.ads,
6285         config-lang.in, csets.adb, csets.ads, csinfo.adb,
6286         cstand.adb, cstand.ads, cuintp.c, debug.adb,
6287         debug.ads, debug_a.adb, debug_a.ads, dec-io.adb,
6288         dec-io.ads, dec.ads, deftarg.c, directio.ads,
6289         einfo.adb, einfo.ads, elists.adb, elists.ads,
6290         elists.h, errno.c, errout.adb, errout.ads,
6291         eval_fat.adb, eval_fat.ads, exit.c, exp_aggr.adb,
6292         exp_aggr.ads, exp_attr.adb, exp_attr.ads, exp_ch10.ads,
6293         exp_ch11.adb, exp_ch11.ads, exp_ch12.adb, exp_ch12.ads,
6294         exp_ch13.adb, exp_ch13.ads, exp_ch2.adb, exp_ch2.ads,
6295         exp_ch3.adb, exp_ch3.ads, exp_ch4.adb, exp_ch4.ads,
6296         exp_ch5.adb, exp_ch5.ads, exp_ch6.adb, exp_ch6.ads,
6297         exp_ch7.adb, exp_ch7.ads, exp_ch8.adb, exp_ch8.ads,
6298         exp_ch9.adb, exp_ch9.ads, exp_code.adb, exp_code.ads,
6299         exp_dbug.adb, exp_dbug.ads, exp_disp.adb, exp_disp.ads,
6300         exp_dist.adb, exp_dist.ads, exp_fixd.adb, exp_fixd.ads,
6301         exp_imgv.adb, exp_imgv.ads, exp_intr.adb, exp_intr.ads,
6302         exp_pakd.adb, exp_pakd.ads, exp_prag.adb, exp_prag.ads,
6303         exp_smem.adb, exp_smem.ads, exp_strm.adb, exp_strm.ads,
6304         exp_tss.adb, exp_tss.ads, exp_util.adb, exp_util.ads,
6305         exp_vfpt.adb, exp_vfpt.ads, expander.adb, expander.ads,
6306         fmap.adb, fmap.ads, fname-sf.adb, fname-sf.ads,
6307         fname-uf.adb, fname-uf.ads, fname.adb, fname.ads,
6308         freeze.adb, freeze.ads, frontend.adb, frontend.ads,
6309         g-awk.adb, g-awk.ads, g-busora.adb, g-busora.ads,
6310         g-busorg.adb, g-busorg.ads, g-calend.adb, g-calend.ads,
6311         g-casuti.adb, g-casuti.ads, g-catiio.adb, g-catiio.ads,
6312         g-cgi.adb, g-cgi.ads, g-cgicoo.adb, g-cgicoo.ads,
6313         g-cgideb.adb, g-cgideb.ads, g-comlin.adb, g-comlin.ads,
6314         g-crc32.adb, g-crc32.ads, g-curexc.ads, g-debpoo.adb,
6315         g-debpoo.ads, g-debuti.adb, g-debuti.ads, g-diopit.adb,
6316         g-diopit.ads, g-dirope.adb, g-dirope.ads, g-dyntab.adb,
6317         g-dyntab.ads, g-enblsp.adb, g-except.ads, g-exctra.adb,
6318         g-exctra.ads, g-expect.adb, g-expect.ads, g-flocon.ads,
6319         g-hesora.adb, g-hesora.ads, g-hesorg.adb, g-hesorg.ads,
6320         g-htable.adb, g-htable.ads, g-io.adb, g-io.ads,
6321         g-io_aux.adb, g-io_aux.ads, g-locfil.ads, g-md5.adb,
6322         g-md5.ads, g-moreex.adb, g-moreex.ads, g-os_lib.adb,
6323         g-os_lib.ads, g-regexp.adb, g-regexp.ads, g-regist.ads,
6324         g-regpat.adb, g-regpat.ads, g-soccon.ads, g-socket.adb,
6325         g-socket.ads, g-socthi.adb, g-socthi.ads, g-soliop.ads,
6326         g-souinf.ads, g-speche.adb, g-speche.ads, g-spipat.adb,
6327         g-spipat.ads, g-spitbo.adb, g-spitbo.ads, g-sptabo.ads,
6328         g-sptain.ads, g-sptavs.ads, g-table.adb, g-table.ads,
6329         g-tasloc.adb, g-tasloc.ads, g-thread.adb, g-thread.ads,
6330         g-traceb.adb, g-traceb.ads, g-trasym.adb, g-trasym.ads,
6331         get_targ.adb, get_targ.ads, gnat-style.texi, gnat.ads,
6332         gnat1drv.adb, gnat1drv.ads, gnatbind.adb, gnatbind.ads,
6333         gnatbl.c, gnatchop.adb, gnatcmd.adb, gnatcmd.ads,
6334         gnatdll.adb, gnatfind.adb, gnatkr.adb, gnatkr.ads,
6335         gnatlbr.adb, gnatlink.adb, gnatlink.ads, gnatls.adb,
6336         gnatls.ads, gnatmake.adb, gnatmake.ads, gnatmem.adb,
6337         gnatname.adb, gnatname.ads, gnatprep.adb, gnatprep.ads,
6338         gnatpsta.adb, gnatvsn.adb, gnatvsn.ads, gnatxref.adb,
6339         hlo.adb, hlo.ads, hostparm.ads, i-c.adb,
6340         i-c.ads, i-cexten.ads, i-cobol.adb, i-cobol.ads,
6341         i-cpoint.adb, i-cpoint.ads, i-cpp.adb, i-cpp.ads,
6342         i-cstrea.adb, i-cstrea.ads, i-cstrin.adb, i-cstrin.ads,
6343         i-fortra.adb, i-fortra.ads, i-os2err.ads, i-os2lib.adb,
6344         i-os2lib.ads, i-os2syn.ads, i-os2thr.ads, i-pacdec.adb,
6345         i-pacdec.ads, i-vxwork.ads, impunit.adb, impunit.ads,
6346         inline.adb, inline.ads, interfac.ads, ioexcept.ads,
6347         itypes.adb, itypes.ads, krunch.adb, krunch.ads,
6348         layout.adb, layout.ads, lib-list.adb, lib-load.adb,
6349         lib-load.ads, lib-sort.adb, lib-util.adb, lib-util.ads,
6350         lib-writ.adb, lib-writ.ads, lib-xref.adb, lib-xref.ads,
6351         lib.adb, lib.ads, live.adb, live.ads,
6352         machcode.ads, make.adb, make.ads, makeusg.adb,
6353         makeusg.ads, math_lib.adb, mdll-fil.adb, mdll-fil.ads,
6354         mdll-utl.adb, mdll-utl.ads, mdll.adb, mdll.ads,
6355         memroot.adb, memroot.ads, memtrack.adb, mlib-fil.adb,
6356         mlib-fil.ads, mlib-prj.adb, mlib-prj.ads, mlib-tgt.adb,
6357         mlib-tgt.ads, mlib-utl.adb, mlib-utl.ads, mlib.adb,
6358         mlib.ads, namet.adb, namet.ads, nlists.adb,
6359         nlists.ads, opt.adb, opt.ads, osint-b.adb,
6360         osint-b.ads, osint-c.adb, osint-c.ads, osint-l.adb,
6361         osint-l.ads, osint-m.adb, osint-m.ads, osint.adb,
6362         osint.ads, output.adb, output.ads, par-ch10.adb,
6363         par-ch11.adb, par-ch12.adb, par-ch13.adb, par-ch2.adb,
6364         par-ch3.adb, par-ch4.adb, par-ch5.adb, par-ch6.adb,
6365         par-ch7.adb, par-ch8.adb, par-ch9.adb, par-endh.adb,
6366         par-labl.adb, par-load.adb, par-prag.adb, par-sync.adb,
6367         par-tchk.adb, par-util.adb, par.adb, par.ads,
6368         prj-attr.adb, prj-attr.ads, prj-com.adb, prj-com.ads,
6369         prj-dect.adb, prj-dect.ads, prj-env.adb, prj-env.ads,
6370         prj-ext.adb, prj-ext.ads, prj-makr.adb, prj-makr.ads,
6371         prj-nmsc.adb, prj-nmsc.ads, prj-pars.adb, prj-pars.ads,
6372         prj-part.adb, prj-part.ads, prj-pp.adb, prj-pp.ads,
6373         prj-proc.adb, prj-proc.ads, prj-strt.adb, prj-strt.ads,
6374         prj-tree.adb, prj-tree.ads, prj-util.adb, prj-util.ads,
6375         prj.adb, prj.ads, repinfo.adb, repinfo.ads,
6376         restrict.adb, restrict.ads, rident.ads, rtsfind.adb,
6377         rtsfind.ads, s-addima.adb, s-addima.ads, s-arit64.adb,
6378         s-arit64.ads, s-assert.adb, s-assert.ads, s-asthan.adb,
6379         s-asthan.ads, s-atacco.adb, s-atacco.ads, s-auxdec.adb,
6380         s-auxdec.ads, s-bitops.adb, s-bitops.ads, s-chepoo.ads,
6381         s-crc32.adb, s-crc32.ads, s-direio.adb, s-direio.ads,
6382         s-errrep.adb, s-errrep.ads, s-except.ads, s-exctab.adb,
6383         s-exctab.ads, s-exnflt.ads, s-exngen.adb, s-exngen.ads,
6384         s-exnint.ads, s-exnlfl.ads, s-exnlin.ads, s-exnllf.ads,
6385         s-exnlli.ads, s-exnsfl.ads, s-exnsin.ads, s-exnssi.ads,
6386         s-expflt.ads, s-expgen.adb, s-expgen.ads, s-expint.ads,
6387         s-explfl.ads, s-explin.ads, s-expllf.ads, s-explli.ads,
6388         s-expllu.adb, s-expllu.ads, s-expmod.adb, s-expmod.ads,
6389         s-expsfl.ads, s-expsin.ads, s-expssi.ads, s-expuns.adb,
6390         s-expuns.ads, s-fatflt.ads, s-fatgen.adb, s-fatgen.ads,
6391         s-fatlfl.ads, s-fatllf.ads, s-fatsfl.ads, s-ficobl.ads,
6392         s-fileio.adb, s-fileio.ads, s-finimp.adb, s-finimp.ads,
6393         s-finroo.adb, s-finroo.ads, s-fore.adb, s-fore.ads,
6394         s-gloloc.adb, s-gloloc.ads, s-imgbiu.adb, s-imgbiu.ads,
6395         s-imgboo.adb, s-imgboo.ads, s-imgcha.adb, s-imgcha.ads,
6396         s-imgdec.adb, s-imgdec.ads, s-imgenu.adb, s-imgenu.ads,
6397         s-imgint.adb, s-imgint.ads, s-imgllb.adb, s-imgllb.ads,
6398         s-imglld.adb, s-imglld.ads, s-imglli.adb, s-imglli.ads,
6399         s-imgllu.adb, s-imgllu.ads, s-imgllw.adb, s-imgllw.ads,
6400         s-imgrea.adb, s-imgrea.ads, s-imguns.adb, s-imguns.ads,
6401         s-imgwch.adb, s-imgwch.ads, s-imgwiu.adb, s-imgwiu.ads,
6402         s-inmaop.ads, s-interr.adb, s-interr.ads, s-intman.ads,
6403         s-io.adb, s-io.ads, s-maccod.ads, s-mantis.adb,
6404         s-mantis.ads, s-mastop.adb, s-mastop.ads, s-memory.adb,
6405         s-memory.ads, s-osprim.ads, s-pack03.adb, s-pack03.ads,
6406         s-pack05.adb, s-pack05.ads, s-pack06.adb, s-pack06.ads,
6407         s-pack07.adb, s-pack07.ads, s-pack09.adb, s-pack09.ads,
6408         s-pack10.adb, s-pack10.ads, s-pack11.adb, s-pack11.ads,
6409         s-pack12.adb, s-pack12.ads, s-pack13.adb, s-pack13.ads,
6410         s-pack14.adb, s-pack14.ads, s-pack15.adb, s-pack15.ads,
6411         s-pack17.adb, s-pack17.ads, s-pack18.adb, s-pack18.ads,
6412         s-pack19.adb, s-pack19.ads, s-pack20.adb, s-pack20.ads,
6413         s-pack21.adb, s-pack21.ads, s-pack22.adb, s-pack22.ads,
6414         s-pack23.adb, s-pack23.ads, s-pack24.adb, s-pack24.ads,
6415         s-pack25.adb, s-pack25.ads, s-pack26.adb, s-pack26.ads,
6416         s-pack27.adb, s-pack27.ads, s-pack28.adb, s-pack28.ads,
6417         s-pack29.adb, s-pack29.ads, s-pack30.adb, s-pack30.ads,
6418         s-pack31.adb, s-pack31.ads, s-pack33.adb, s-pack33.ads,
6419         s-pack34.adb, s-pack34.ads, s-pack35.adb, s-pack35.ads,
6420         s-pack36.adb, s-pack36.ads, s-pack37.adb, s-pack37.ads,
6421         s-pack38.adb, s-pack38.ads, s-pack39.adb, s-pack39.ads,
6422         s-pack40.adb, s-pack40.ads, s-pack41.adb, s-pack41.ads,
6423         s-pack42.adb, s-pack42.ads, s-pack43.adb, s-pack43.ads,
6424         s-pack44.adb, s-pack44.ads, s-pack45.adb, s-pack45.ads,
6425         s-pack46.adb, s-pack46.ads, s-pack47.adb, s-pack47.ads,
6426         s-pack48.adb, s-pack48.ads, s-pack49.adb, s-pack49.ads,
6427         s-pack50.adb, s-pack50.ads, s-pack51.adb, s-pack51.ads,
6428         s-pack52.adb, s-pack52.ads, s-pack53.adb, s-pack53.ads,
6429         s-pack54.adb, s-pack54.ads, s-pack55.adb, s-pack55.ads,
6430         s-pack56.adb, s-pack56.ads, s-pack57.adb, s-pack57.ads,
6431         s-pack58.adb, s-pack58.ads, s-pack59.adb, s-pack59.ads,
6432         s-pack60.adb, s-pack60.ads, s-pack61.adb, s-pack61.ads,
6433         s-pack62.adb, s-pack62.ads, s-pack63.adb, s-pack63.ads,
6434         s-parame.adb, s-parame.ads, s-parint.adb, s-parint.ads,
6435         s-pooglo.adb, s-pooglo.ads, s-pooloc.adb, s-pooloc.ads,
6436         s-poosiz.adb, s-poosiz.ads, s-powtab.ads, s-proinf.adb,
6437         s-proinf.ads, s-rpc.adb, s-rpc.ads, s-scaval.ads,
6438         s-secsta.adb, s-secsta.ads, s-sequio.adb, s-sequio.ads,
6439         s-shasto.adb, s-shasto.ads, s-soflin.adb, s-soflin.ads,
6440         s-sopco3.adb, s-sopco3.ads, s-sopco4.adb, s-sopco4.ads,
6441         s-sopco5.adb, s-sopco5.ads, s-stache.adb, s-stache.ads,
6442         s-stalib.adb, s-stalib.ads, s-stoele.adb, s-stoele.ads,
6443         s-stopoo.ads, s-stratt.adb, s-stratt.ads, s-strops.adb,
6444         s-strops.ads, s-taasde.adb, s-taasde.ads, s-tadeca.adb,
6445         s-tadeca.ads, s-tadert.adb, s-tadert.ads, s-taenca.adb,
6446         s-taenca.ads, s-taprob.adb, s-taprob.ads, s-taprop.ads,
6447         s-tarest.adb, s-tarest.ads, s-tasdeb.adb, s-tasdeb.ads,
6448         s-tasinf.adb, s-tasinf.ads, s-tasini.adb, s-tasini.ads,
6449         s-taskin.adb, s-taskin.ads, s-tasque.adb, s-tasque.ads,
6450         s-tasren.adb, s-tasren.ads, s-tasres.ads, s-tassta.adb,
6451         s-tassta.ads, s-tasuti.adb, s-tasuti.ads, s-tataat.adb,
6452         s-tataat.ads, s-tpinop.adb, s-tpinop.ads, s-tpoben.adb,
6453         s-tpoben.ads, s-tpobop.adb, s-tpobop.ads, s-tposen.adb,
6454         s-tposen.ads, s-traceb.adb, s-traceb.ads, s-traces.adb,
6455         s-traces.ads, s-tratas.adb, s-tratas.ads, s-unstyp.ads,
6456         s-vaflop.adb, s-vaflop.ads, s-valboo.adb, s-valboo.ads,
6457         s-valcha.adb, s-valcha.ads, s-valdec.adb, s-valdec.ads,
6458         s-valenu.adb, s-valenu.ads, s-valint.adb, s-valint.ads,
6459         s-vallld.adb, s-vallld.ads, s-vallli.adb, s-vallli.ads,
6460         s-valllu.adb, s-valllu.ads, s-valrea.adb, s-valrea.ads,
6461         s-valuns.adb, s-valuns.ads, s-valuti.adb, s-valuti.ads,
6462         s-valwch.adb, s-valwch.ads, s-vercon.adb, s-vercon.ads,
6463         s-vmexta.adb, s-vmexta.ads, s-wchcnv.adb, s-wchcnv.ads,
6464         s-wchcon.ads, s-wchjis.adb, s-wchjis.ads, s-wchstw.adb,
6465         s-wchstw.ads, s-wchwts.adb, s-wchwts.ads, s-widboo.adb,
6466         s-widboo.ads, s-widcha.adb, s-widcha.ads, s-widenu.adb,
6467         s-widenu.ads, s-widlli.adb, s-widlli.ads, s-widllu.adb,
6468         s-widllu.ads, s-widwch.adb, s-widwch.ads, s-wwdcha.adb,
6469         s-wwdcha.ads, s-wwdenu.adb, s-wwdenu.ads, s-wwdwch.adb,
6470         s-wwdwch.ads, scans.adb, scans.ads, scn-nlit.adb,
6471         scn-slit.adb, scn.adb, scn.ads, sdefault.ads,
6472         sem.adb, sem.ads, sem_aggr.adb, sem_aggr.ads,
6473         sem_attr.adb, sem_attr.ads, sem_case.adb, sem_case.ads,
6474         sem_cat.adb, sem_cat.ads, sem_ch10.adb, sem_ch10.ads,
6475         sem_ch11.adb, sem_ch11.ads, sem_ch12.adb, sem_ch12.ads,
6476         sem_ch13.adb, sem_ch13.ads, sem_ch2.adb, sem_ch2.ads,
6477         sem_ch3.adb, sem_ch3.ads, sem_ch4.adb, sem_ch4.ads,
6478         sem_ch5.adb, sem_ch5.ads, sem_ch6.adb, sem_ch6.ads,
6479         sem_ch7.adb, sem_ch7.ads, sem_ch8.adb, sem_ch8.ads,
6480         sem_ch9.adb, sem_ch9.ads, sem_disp.adb, sem_disp.ads,
6481         sem_dist.adb, sem_dist.ads, sem_elab.adb, sem_elab.ads,
6482         sem_elim.adb, sem_elim.ads, sem_eval.adb, sem_eval.ads,
6483         sem_intr.adb, sem_intr.ads, sem_maps.adb, sem_maps.ads,
6484         sem_mech.adb, sem_mech.ads, sem_prag.adb, sem_prag.ads,
6485         sem_res.adb, sem_res.ads, sem_smem.adb, sem_smem.ads,
6486         sem_type.adb, sem_type.ads, sem_util.adb, sem_util.ads,
6487         sem_vfpt.adb, sem_vfpt.ads, sem_warn.adb, sem_warn.ads,
6488         sequenio.ads, sfn_scan.adb, sfn_scan.ads, sinfo-cn.adb,
6489         sinfo-cn.ads, sinfo.adb, sinfo.ads, sinput-d.adb,
6490         sinput-d.ads, sinput-l.adb, sinput-l.ads, sinput-p.adb,
6491         sinput-p.ads, sinput.adb, sinput.ads, snames.adb,
6492         snames.ads, sprint.adb, sprint.ads, stand.adb,
6493         stand.ads, stringt.adb, stringt.ads, style.adb,
6494         style.ads, stylesw.adb, stylesw.ads, switch-b.adb,
6495         switch-b.ads, switch-c.adb, switch-c.ads, switch-m.adb,
6496         switch-m.ads, switch.adb, switch.ads, system.ads,
6497         table.adb, table.ads, targparm.adb, targparm.ads,
6498         tbuild.adb, tbuild.ads, text_io.ads, trans.c,
6499         tree_gen.adb, tree_gen.ads, tree_in.adb, tree_in.ads,
6500         tree_io.adb, tree_io.ads, treepr.adb, treepr.ads,
6501         ttypef.ads, ttypes.ads, types.adb, types.ads,
6502         uintp.adb, uintp.ads, uname.adb, uname.ads,
6503         unchconv.ads, unchdeal.ads, urealp.adb, urealp.ads,
6504         usage.adb, usage.ads, validsw.adb, validsw.ads,
6505         widechar.adb, widechar.ads, xeinfo.adb, xnmake.adb,
6506         xr_tabls.adb, xr_tabls.ads, xref_lib.adb, xref_lib.ads,
6507         xsinfo.adb, xsnames.adb, xtreeprs.adb : Merge header,
6508         formatting and other trivial changes from ACT.
6509
6510 2003-04-12  Zack Weinberg  <zack@codesourcery.com>
6511
6512         * gigi.h, utils2.c (build_constructor):
6513         Rename gnat_build_constructor. Use build_constructor.
6514         * decl.c (gnat_to_gnu_entity)
6515         * trans.c (tree_transform, pos_to_constructor, extract_values)
6516         * ada/utils.c (build_template, convert_to_fat_pointer, convert)
6517         (unchecked_convert)
6518         * ada/utils2.c (build_binary_op, build_call_raise, build_allocator)
6519         (fill_vms_descriptor):
6520         Update to match.
6521
6522 2003-04-06  Zack Weinberg  <zack@codesourcery.com>
6523
6524         * ada-tree.def: Make fourth element for GNAT_LOOP_ID zero.
6525         * misc.c (gnat_tree_size): New function.
6526         (LANG_HOOKS_TREE_SIZE): Override.
6527
6528 2003-04-03  Jason Merrill  <jason@redhat.com>
6529
6530         * misc.c (gnat_adjust_rli): #if 0.
6531
6532 2003-03-31   Geert Bosch <bosch@gnat.com>
6533
6534         PR ada/10020
6535         * link.c : Fix misspelled "const" keyword
6536
6537 2003-03-23  Mark Mitchell  <mark@codesourcery.com>
6538
6539         PR c++/7086
6540         * utils2.c: Adjust calls to put_var_into_stack.
6541
6542 2003-03-12  Nathanael Nerode  <neroden@gcc.gnu.org>
6543
6544         * Make-lang.in, Makefile.in, config-lang.in: GCC, not GNU CC.
6545
6546 2003-03-08  Neil Booth  <neil@daikokuya.co.uk>
6547
6548         * misc.c (gnat_init): Update for new prototype.
6549
6550 2003-03-05  Olivier Hainque  <hainque@gnat.com>
6551
6552         ada/9961
6553         * raise.c (__gnat_Unwind_RaiseException): Add prototype to avoid
6554         warning, and fix return type for the IN_RTS && !SJLJ case.
6555
6556 2003-03-04  Tom Tromey  <tromey@redhat.com>
6557
6558         * Make-lang.in (ada.tags): New target.
6559
6560 2003-03-04  Olivier Hainque  <hainque@act-europe.fr>
6561
6562         ada/9911
6563         * a-except.adb (Unwind_RaiseException): Import a GNAT specific
6564         wrapper, which name remains constant whatever underlying GCC
6565         scheme.
6566
6567         * raise.c (__gnat_Unwind_RaiseException): New wrappers, providing
6568         the stable interface needed for a-except.
6569
6570 2003-03-02  Andreas Jaeger  <aj@suse.de>
6571
6572         * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
6573         gnat_ug_wnt.texi: Regenerate.
6574
6575 2003-03-02  Laurent Guerby <guerby@acm.org>
6576
6577         * Makefile.in (install-gnatlib): Match previous change there
6578         so it works.
6579
6580 2003-02-28  Andreas Schwab  <schwab@suse.de>
6581
6582         * Make-lang.in (install-gnatlib): Change to ada directory before
6583         running make instead of using ada/Makefile directly.
6584
6585 2003-02-18  Ben Elliston  <bje@redhat.com>
6586
6587         Part of fix for PR ada/9406
6588         * gnat_ug.texi (Binder output file): Grammar fix.
6589
6590 2003-02-18  Ben Elliston  <bje@redhat.com>
6591
6592         PR other/7350
6593         * 5qtaprop.adb (Sleep): Fix typo in comment.
6594
6595 2003-02-04  Joseph S. Myers  <jsm@polyomino.org.uk>
6596
6597         * gnat_rm.texi, gnat_ug.texi: Update to GFDL 1.2.
6598         * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
6599         gnat_ug_wnt.texi: Regenerate.
6600
6601 2003-02-03  Christian Cornelssen <ccorn@cs.tu-berlin.de>
6602
6603         * Make-lang.in (ada.install-info): Let $(DESTDIR)$(infodir)
6604         be created if necessary.
6605         (ada.install-common): Let $(DESTDIR)$(bindir) be created
6606         if necessary.  Remove erroneous and redundant gnatchop
6607         installation commands.  Test for gnatdll before attempting
6608         to install it.
6609         (ada.uninstall): Also uninstall gnatfind, gnatxref, gnatlbr,
6610         and gnatdll from all plausible locations.
6611
6612 2003-02-01  Richard Sandiford  <rsandifo@redhat.com>
6613
6614         * utils2.c (build_unary_op): Don't check flag_volatile.
6615         * gnat_ug.texi: Remove -fvolatile from example.
6616         * gnat_ug_vxw.texi: Likewise.
6617
6618 2003-01-29  Laurent Guerby <guerby@acm.org>
6619
6620         PR ada/8344
6621         * final.c: rename to adafinal.c to avoid file name conflicts with gcc file.
6622         * Makefile.in: match previous change.
6623         * Make-lang.in: match previous change.
6624
6625 2003-01-29      Joel Sherrill <joel@OARcorp.com>
6626
6627         * 5rosinte.ads: Add SIGXCPU.
6628         * 5rtpopsp.adb: New file.
6629         * Make-lang.in: Do not build gnatpsta and gnatpsys when cross.
6630         * Makefile.in: Recognize more RTEMS targets and add the RTEMS
6631         specific file 5rtpopsp.adb.
6632         * adaint.h: Add include of <stdio.h> when target is RTEMS.  This
6633         is likely needed for all newlib targets.
6634         * init.c: Add RTEMS specific version of __gnat_initialize().
6635
6636 2003-01-28  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
6637
6638         * adaint.c, adaint.h, gmem.c, init.c: Update copyright year.
6639
6640 2003-01-27  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
6641
6642         * init.c (__gnat_error_handler): Make msg const.
6643
6644         * gmem.c (convert_addresses): Move declaration ...
6645         * adaint.h: ... here.
6646         * adaint.c (convert_addresses): Adapt addrs type to match
6647         prototype.
6648
6649         * adaint.c (__gnat_try_lock): Cast pid_t to long, adapt format.
6650
6651 2003-01-24  Andreas Schwab  <schwab@suse.de>
6652
6653         * ada-tree.h (SET_TYPE_DIGITS_VALUE): Add intermediate cast to
6654         size_t to avoid warning.
6655
6656 2003-01-21  Zack Weinberg  <zack@codesourcery.com>
6657
6658         * Make-lang.in: Disable -Werror for tracebak.c and b_gnatb.c.
6659
6660 2003-01-09  Geoffrey Keating  <geoffk@apple.com>
6661
6662         * gnat_rm.texi: Remove RCS version number.
6663
6664         * ada-tree.h (union lang_tree_node): Add chain_next option.
6665
6666 2003-01-09  Christian Cornelssen  <ccorn@cs.tu-berlin.de>
6667
6668         * Make-lang.in (ada.install-info, ada.install-common,
6669         ada.uninstall): Prepend $(DESTDIR) to the destination
6670         directory in all (un)installation commands.
6671         * Makefile.in (install-gnatlib, install-rts): Ditto.
6672
6673 2002-12-28  Joseph S. Myers  <jsm@polyomino.org.uk>
6674
6675         * gnat_rm.texi, gnat_ug.texi: Use @copying.
6676         * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
6677         gnat_ug_wnt.texi: Regenerate.
6678
6679 2002-12-23  Joseph S. Myers  <jsm@polyomino.org.uk>
6680
6681         * gnat_rm.texi: Include gcc-common.texi.  Use GCC version number
6682         only.
6683         * Make-lang.in ($(srcdir)/ada/gnat_ug_unx.info,
6684         $(srcdir)/ada/gnat_ug_vms.info, $(srcdir)/ada/gnat_ug_vxw.info,
6685         $(srcdir)/ada/gnat_ug_wnt.info, $(srcdir)/ada/gnat_rm.info,
6686         ada/gnat_ug_unx.dvi, ada/gnat_ug_vms.dvi, ada/gnat_ug_vxw.dvi,
6687         ada/gnat_ug_wnt.dvi, ada/gnat_rm.dvi): Depend on
6688         $(srcdir)/doc/include/gcc-common.texi.
6689
6690 2002-12-15   Geert Bosch <bosch@gnat.com>
6691
6692         * sem_ch6.adb (Analyze_Subprogram_Body): Fix typo and formatting
6693
6694 2002-12-14   Geert Bosch <bosch@gnat.com>
6695
6696         * sem_ch6.adb (Analyze_Subprogram_Body): Recognize additional
6697         case of a body created for a Renaming_As_Body, on which
6698         conformance checks are not performed. Fixes PR ada/5690.
6699
6700 2002-11-30  Zack Weinberg  <zack@codesourcery.com>
6701
6702         * cuintp.c, decl.c, deftarg.c, misc.c, targtyps.c, trans.c,
6703         utils.c, utils2.c: Include coretypes.h and tm.h, and system.h when
6704         not already included.
6705         * Make-lang.in: Update dependencies.
6706
6707 2002-11-18  Nathanael Nerode  <neroden@gcc.gnu.org>
6708         * adaint.c (__gnat_tmp_name): Better, but good enough for now,
6709         solution to buffer overflow bug on GNU/Linux.
6710
6711 2002-11-14  Nathanael Nerode  <neroden@gcc.gnu.org>
6712         Closes PR ada/5856 and PR ada/6919 !
6713         * bindgen.adb: Remove all references to Public_Version.
6714         * comperr.adb: Remove all references to Public_Version and
6715         GNATPRO_Version; correct bug reporting instructions.
6716         * comperr.ads: Change to match bug box.
6717         * gnatvsn.ads: Remove all references to Public version and
6718         GNATPRO version.
6719
6720 2002-11-13  Nathanael Nerode  <neroden@gcc.gnu.org>
6721         PR ada/6919
6722         * adaint.c (__gnat_tmp_name): Remove buffer overflow bug on
6723         GNU/Linux.
6724
6725         PR ada/6558
6726         * config-lang.in: Remove diff_excludes.
6727
6728 2002-11-05  Graham Stott  <graham.stott@btinternet.com>
6729         PR ada/8358
6730         * trans.c (gnu_pending_elaboration_lists): New GC root.
6731         (build_unit_elab): Use..
6732
6733 2002-10-30   Geert Bosch <bosch@gnat.com>
6734         PR ada/6558
6735         * misc.c : Include optabs.h
6736
6737         * Make-lang.in (misc.o): Add dependency on optabs.h
6738
6739 2002-10-29   Geert Bosch <bosch@gnat.com>
6740         PR ada/6558
6741         * Make-lang.in (gnatbind): Depend on CONFIG_H
6742
6743 2002-10-29  Geert bosch  <bosch@gnat.com>
6744         PR ada/6558
6745         * misc.c: Unrevert misc.c (1.13)
6746
6747 2002-10-28  Nathanael Nerode  <neroden@gcc.gnu.org>
6748
6749         * a-chlat9.ads a-cwila9.ads a-dynpri.adb a-retide.adb: Update
6750         maintainership comments.
6751
6752 2002-09-25  Nathanael Nerode  <neroden@gcc.gnu.org>
6753         PR ada/5904
6754         * 5ataprop.adb 5atpopsp.adb 5bosinte.adb 5ftaprop.adb
6755         5gtaprop.adb 5htaprop.adb 5rosinte.ads 5staprop.adb
6756         5stpopse.adb 5vtaspri.ads 5zintman.adb 5ztaprop.adb
6757         7staprop.adb: Correct statements in comments about
6758         maintainership of GNAT.
6759
6760         PR ada/5904
6761         * 1ssecsta.adb 1ssecsta.ads adadecode.c adadecode.h aux-io.c
6762         gnatname.adb gnatname.ads mkdir.c osint-b.adb osint-b.ads
6763         osint-c.adb osint-c.ads osint-l.adb osint-l.ads osint-m.adb
6764         osint-m.ads prj-makr.adb prj-makr.ads prj-pp.adb prj-pp.ads
6765         s-atacco.ads s-traceb.adb s-traceb.ads s-traces.adb
6766         s-traces.ads s-tratas.adb s-tratas.ads sinput-d.adb
6767         sinput-d.ads switch-b.adb switch-b.ads switch-c.adb
6768         switch-c.ads switch-m.adb switch-m.ads: Correct statements in
6769         comments about maintainership of GNAT.
6770
6771         PR ada/6919 (forward port of patch for PR ada/5904)
6772         * 1aexcept.adb 1aexcept.ads 41intnam.ads 42intnam.ads
6773         4aintnam.ads 4cintnam.ads 4dintnam.ads 4hexcpol.adb
6774         4lintnam.ads 4mintnam.ads 4nintnam.ads 4onumaux.ads
6775         4pintnam.ads 4rintnam.ads 4sintnam.ads 4uintnam.ads
6776         4vcalend.adb 4vintnam.ads 4wcalend.adb 4wexcpol.adb
6777         4wintnam.ads 4zintnam.ads 4znumaux.ads 4zsytaco.adb
6778         4zsytaco.ads 51osinte.adb 51osinte.ads 52osinte.adb
6779         52osinte.ads 52system.ads 53osinte.ads 5aosinte.ads
6780         5asystem.ads 5atasinf.ads 5ataspri.ads 5avxwork.ads
6781         5bosinte.ads 5bsystem.ads 5cosinte.ads 5dosinte.ads
6782         5esystem.ads 5fosinte.ads 5fsystem.ads 5ftasinf.ads
6783         5ginterr.adb 5gmastop.adb 5gosinte.ads 5gproinf.adb
6784         5gproinf.ads 5gsystem.ads 5gtasinf.adb 5gtasinf.ads
6785         5gtpgetc.adb 5hparame.ads 5hsystem.ads 5htaspri.ads
6786         5iosinte.ads 5itaspri.ads 5ksystem.ads 5kvxwork.ads
6787         5losinte.ads 5lsystem.ads 5mosinte.ads 5mvxwork.ads
6788         5ninmaop.adb 5nintman.adb 5nosinte.ads 5ntaspri.ads
6789         5oosprim.adb 5oparame.adb 5osystem.ads 5posinte.ads
6790         5posprim.adb 5pvxwork.ads 5rosinte.ads 5rparame.adb
6791         5sintman.adb 5sosinte.ads 5sparame.adb 5ssystem.ads
6792         5stasinf.adb 5stasinf.ads 5staspri.ads 5svxwork.ads
6793         5tosinte.ads 5uosinte.ads 5vasthan.adb 5vinterr.adb
6794         5vintman.ads 5vosinte.ads 5vosprim.adb 5vosprim.ads
6795         5vparame.ads 5vsystem.ads 5vtaspri.ads 5vtpopde.adb
6796         5vtpopde.ads 5vvaflop.adb 5wintman.adb 5wmemory.adb
6797         5wosinte.ads 5wosprim.adb 5wsystem.ads 5wtaprop.adb
6798         5wtaspri.ads 5ysystem.ads 5zinterr.adb 5zosinte.adb
6799         5zosinte.ads 5zosprim.adb 5zsystem.ads 6vcpp.adb 6vcstrea.adb
6800         7sosprim.adb 86numaux.adb 86numaux.ads 9drpc.adb a-astaco.adb
6801         a-caldel.ads a-calend.adb a-calend.ads a-chahan.adb
6802         a-chahan.ads a-colien.adb a-colien.ads a-colire.adb
6803         a-colire.ads a-comlin.adb a-comlin.ads a-cwila1.ads
6804         a-decima.adb a-decima.ads a-diocst.adb a-diocst.ads
6805         a-direio.adb a-direio.ads a-einuoc.adb a-einuoc.ads
6806         a-except.adb a-except.ads a-excpol.adb a-exctra.adb
6807         a-exctra.ads a-filico.adb a-filico.ads a-finali.adb
6808         a-finali.ads a-interr.ads a-intsig.adb a-intsig.ads
6809         a-ngcefu.adb a-ngcoty.adb a-ngcoty.ads a-ngelfu.adb
6810         a-nudira.adb a-nudira.ads a-nuflra.adb a-nuflra.ads
6811         a-numaux.ads a-reatim.ads a-retide.ads a-sequio.adb
6812         a-sequio.ads a-siocst.adb a-siocst.ads a-ssicst.adb
6813         a-ssicst.ads a-stmaco.ads a-storio.adb a-strbou.adb
6814         a-strbou.ads a-stream.ads a-strfix.adb a-strfix.ads
6815         a-strmap.adb a-strmap.ads a-strsea.adb a-strsea.ads
6816         a-strunb.adb a-strunb.ads a-ststio.adb a-ststio.ads
6817         a-stunau.adb a-stunau.ads a-stwibo.adb a-stwibo.ads
6818         a-stwifi.adb a-stwima.adb a-stwima.ads a-stwise.adb
6819         a-stwise.ads a-stwiun.adb a-stwiun.ads a-suteio.adb
6820         a-suteio.ads a-swmwco.ads a-swuwti.adb a-swuwti.ads
6821         a-sytaco.adb a-sytaco.ads a-tags.adb a-tags.ads a-tasatt.ads
6822         a-taside.adb a-taside.ads a-teioed.adb a-teioed.ads
6823         a-textio.adb a-textio.ads a-ticoau.adb a-ticoau.ads
6824         a-ticoio.adb a-ticoio.ads a-tideau.adb a-tideau.ads
6825         a-tideio.adb a-tideio.ads a-tienau.adb a-tienau.ads
6826         a-tienio.adb a-tienio.ads a-tifiio.adb a-tifiio.ads
6827         a-tiflau.adb a-tiflau.ads a-tiflio.adb a-tiflio.ads
6828         a-tigeau.adb a-tigeau.ads a-tiinau.adb a-tiinau.ads
6829         a-tiinio.adb a-tiinio.ads a-timoau.adb a-timoau.ads
6830         a-timoio.adb a-timoio.ads a-tiocst.adb a-tiocst.ads
6831         a-titest.adb a-witeio.adb a-witeio.ads a-wtcoau.adb
6832         a-wtcoau.ads a-wtcoio.adb a-wtcstr.adb a-wtcstr.ads
6833         a-wtdeau.adb a-wtdeau.ads a-wtdeio.adb a-wtdeio.ads
6834         a-wtedit.adb a-wtedit.ads a-wtenau.adb a-wtenau.ads
6835         a-wtenio.adb a-wtenio.ads a-wtfiio.adb a-wtfiio.ads
6836         a-wtflau.adb a-wtflau.ads a-wtflio.adb a-wtflio.ads
6837         a-wtgeau.adb a-wtgeau.ads a-wtinau.adb a-wtinau.ads
6838         a-wtinio.adb a-wtmoau.adb a-wtmoau.ads a-wtmoio.adb
6839         a-wtmoio.ads a-wttest.adb ada-tree.def ada-tree.h ada.h
6840         adaint.c adaint.h ali-util.adb ali-util.ads ali.adb ali.ads
6841         alloc.ads argv.c atree.adb atree.ads atree.h back_end.adb
6842         back_end.ads bcheck.adb bcheck.ads binde.adb binde.ads
6843         binderr.adb binderr.ads bindgen.adb bindgen.ads bindusg.adb
6844         bindusg.ads butil.adb butil.ads cal.c casing.adb casing.ads
6845         ceinfo.adb checks.adb checks.ads cio.c comperr.adb comperr.ads
6846         csets.adb csets.ads csinfo.adb cstand.adb cstand.ads
6847         cstreams.c cuintp.c debug.adb debug.ads debug_a.adb
6848         debug_a.ads dec-io.adb dec-io.ads dec.ads decl.c deftarg.c
6849         einfo.adb einfo.ads einfo.h elists.adb elists.ads elists.h
6850         errno.c errout.adb errout.ads eval_fat.adb eval_fat.ads exit.c
6851         exp_aggr.adb exp_aggr.ads exp_attr.adb exp_attr.ads
6852         exp_ch10.ads exp_ch11.adb exp_ch11.ads exp_ch12.adb
6853         exp_ch12.ads exp_ch13.adb exp_ch13.ads exp_ch2.adb exp_ch2.ads
6854         exp_ch3.adb exp_ch3.ads exp_ch4.adb exp_ch4.ads exp_ch5.adb
6855         exp_ch5.ads exp_ch6.adb exp_ch6.ads exp_ch7.adb exp_ch7.ads
6856         exp_ch8.adb exp_ch8.ads exp_ch9.adb exp_ch9.ads exp_code.adb
6857         exp_code.ads exp_dbug.adb exp_dbug.ads exp_disp.adb
6858         exp_disp.ads exp_dist.adb exp_dist.ads exp_fixd.adb
6859         exp_fixd.ads exp_imgv.adb exp_imgv.ads exp_intr.adb
6860         exp_intr.ads exp_pakd.adb exp_pakd.ads exp_prag.adb
6861         exp_prag.ads exp_smem.adb exp_smem.ads exp_strm.adb
6862         exp_strm.ads exp_tss.adb exp_tss.ads exp_util.adb exp_util.ads
6863         exp_vfpt.adb exp_vfpt.ads expander.adb expander.ads fe.h
6864         final.c fmap.adb fmap.ads fname-sf.adb fname-sf.ads
6865         fname-uf.adb fname-uf.ads fname.adb fname.ads freeze.adb
6866         freeze.ads frontend.adb frontend.ads g-calend.ads g-comlin.adb
6867         g-debpoo.adb g-debpoo.ads g-locfil.adb g-os_lib.ads
6868         g-regist.adb g-regist.ads get_targ.adb get_targ.ads gigi.h
6869         gmem.c gnat1drv.adb gnat1drv.ads gnat_ug.texi gnatbind.adb
6870         gnatbind.ads gnatbl.c gnatcmd.adb gnatcmd.ads gnatdll.adb
6871         gnatfind.adb gnatkr.adb gnatkr.ads gnatlbr.adb gnatlink.adb
6872         gnatlink.ads gnatls.adb gnatls.ads gnatmake.adb gnatmake.ads
6873         gnatmem.adb gnatprep.adb gnatprep.ads gnatpsta.adb gnatvsn.ads
6874         gnatxref.adb hlo.adb hlo.ads hostparm.ads i-c.adb i-cexten.ads
6875         i-cobol.adb i-cobol.ads i-cpoint.adb i-cpoint.ads i-cpp.adb
6876         i-cpp.ads i-cstrea.adb i-cstrea.ads i-cstrin.adb i-cstrin.ads
6877         i-fortra.adb i-os2err.ads i-os2lib.adb i-os2lib.ads
6878         i-os2syn.ads i-os2thr.ads i-pacdec.adb i-pacdec.ads
6879         impunit.adb impunit.ads init.c inline.adb inline.ads io-aux.c
6880         itypes.adb itypes.ads krunch.adb krunch.ads lang-options.h
6881         lang-specs.h layout.adb layout.ads lib-list.adb lib-load.adb
6882         lib-load.ads lib-sort.adb lib-util.adb lib-util.ads
6883         lib-writ.adb lib-writ.ads lib-xref.adb lib-xref.ads lib.adb
6884         lib.ads link.c live.adb live.ads make.adb make.ads makeusg.adb
6885         makeusg.ads math_lib.adb mdll.adb mdll.ads memtrack.adb misc.c
6886         namet.adb namet.ads namet.h nlists.adb nlists.ads nlists.h
6887         nmake.adb nmake.ads nmake.adt opt.adb opt.ads osint.adb
6888         osint.ads output.adb output.ads par-ch10.adb par-ch11.adb
6889         par-ch12.adb par-ch13.adb par-ch2.adb par-ch3.adb par-ch4.adb
6890         par-ch5.adb par-ch6.adb par-ch7.adb par-ch8.adb par-ch9.adb
6891         par-endh.adb par-labl.adb par-load.adb par-prag.adb
6892         par-sync.adb par-tchk.adb par-util.adb par.adb par.ads
6893         prj-attr.adb prj-attr.ads prj-com.adb prj-com.ads prj-dect.adb
6894         prj-dect.ads prj-env.adb prj-env.ads prj-ext.adb prj-ext.ads
6895         prj-nmsc.adb prj-nmsc.ads prj-pars.adb prj-pars.ads
6896         prj-part.adb prj-part.ads prj-proc.adb prj-proc.ads
6897         prj-strt.adb prj-strt.ads prj-tree.adb prj-tree.ads
6898         prj-util.adb prj-util.ads prj.adb prj.ads raise.c raise.h
6899         repinfo.adb repinfo.ads repinfo.h restrict.adb restrict.ads
6900         rident.ads rtsfind.adb rtsfind.ads s-addima.adb s-addima.ads
6901         s-arit64.adb s-arit64.ads s-assert.adb s-assert.ads
6902         s-asthan.adb s-asthan.ads s-atacco.adb s-auxdec.adb
6903         s-auxdec.ads s-bitops.adb s-bitops.ads s-chepoo.ads
6904         s-direio.adb s-direio.ads s-except.ads s-exctab.adb
6905         s-exctab.ads s-exnflt.ads s-exngen.adb s-exngen.ads
6906         s-exnint.ads s-exnlfl.ads s-exnlin.ads s-exnllf.ads
6907         s-exnlli.ads s-exnsfl.ads s-exnsin.ads s-exnssi.ads
6908         s-expflt.ads s-expgen.adb s-expgen.ads s-expint.ads
6909         s-explfl.ads s-explin.ads s-expllf.ads s-explli.ads
6910         s-expllu.adb s-expllu.ads s-expmod.adb s-expmod.ads
6911         s-expsfl.ads s-expsin.ads s-expssi.ads s-expuns.adb
6912         s-expuns.ads s-fatflt.ads s-fatgen.adb s-fatgen.ads
6913         s-fatlfl.ads s-fatllf.ads s-fatsfl.ads s-ficobl.ads
6914         s-fileio.adb s-fileio.ads s-finimp.adb s-finimp.ads
6915         s-finroo.adb s-finroo.ads s-fore.adb s-fore.ads s-imgbiu.adb
6916         s-imgbiu.ads s-imgboo.adb s-imgboo.ads s-imgcha.adb
6917         s-imgcha.ads s-imgdec.adb s-imgdec.ads s-imgenu.adb
6918         s-imgenu.ads s-imgint.adb s-imgint.ads s-imgllb.adb
6919         s-imgllb.ads s-imglld.adb s-imglld.ads s-imglli.adb
6920         s-imglli.ads s-imgllu.adb s-imgllu.ads s-imgllw.adb
6921         s-imgllw.ads s-imgrea.adb s-imgrea.ads s-imguns.adb
6922         s-imguns.ads s-imgwch.adb s-imgwch.ads s-imgwiu.adb
6923         s-imgwiu.ads s-inmaop.ads s-interr.adb s-interr.ads
6924         s-intman.ads s-io.adb s-io.ads s-maccod.ads s-mantis.adb
6925         s-mantis.ads s-memory.adb s-memory.ads s-osprim.ads
6926         s-pack03.adb s-pack03.ads s-pack05.adb s-pack05.ads
6927         s-pack06.adb s-pack06.ads s-pack07.adb s-pack07.ads
6928         s-pack09.adb s-pack09.ads s-pack10.adb s-pack10.ads
6929         s-pack11.adb s-pack11.ads s-pack12.adb s-pack12.ads
6930         s-pack13.adb s-pack13.ads s-pack14.adb s-pack14.ads
6931         s-pack15.adb s-pack15.ads s-pack17.adb s-pack17.ads
6932         s-pack18.adb s-pack18.ads s-pack19.adb s-pack19.ads
6933         s-pack20.adb s-pack20.ads s-pack21.adb s-pack21.ads
6934         s-pack22.adb s-pack22.ads s-pack23.adb s-pack23.ads
6935         s-pack24.adb s-pack24.ads s-pack25.adb s-pack25.ads
6936         s-pack26.adb s-pack26.ads s-pack27.adb s-pack27.ads
6937         s-pack28.adb s-pack28.ads s-pack29.adb s-pack29.ads
6938         s-pack30.adb s-pack30.ads s-pack31.adb s-pack31.ads
6939         s-pack33.adb s-pack33.ads s-pack34.adb s-pack34.ads
6940         s-pack35.adb s-pack35.ads s-pack36.adb s-pack36.ads
6941         s-pack37.adb s-pack37.ads s-pack38.adb s-pack38.ads
6942         s-pack39.adb s-pack39.ads s-pack40.adb s-pack40.ads
6943         s-pack41.adb s-pack41.ads s-pack42.adb s-pack42.ads
6944         s-pack43.adb s-pack43.ads s-pack44.adb s-pack44.ads
6945         s-pack45.adb s-pack45.ads s-pack46.adb s-pack46.ads
6946         s-pack47.adb s-pack47.ads s-pack48.adb s-pack48.ads
6947         s-pack49.adb s-pack49.ads s-pack50.adb s-pack50.ads
6948         s-pack51.adb s-pack51.ads s-pack52.adb s-pack52.ads
6949         s-pack53.adb s-pack53.ads s-pack54.adb s-pack54.ads
6950         s-pack55.adb s-pack55.ads s-pack56.adb s-pack56.ads
6951         s-pack57.adb s-pack57.ads s-pack58.adb s-pack58.ads
6952         s-pack59.adb s-pack59.ads s-pack60.adb s-pack60.ads
6953         s-pack61.adb s-pack61.ads s-pack62.adb s-pack62.ads
6954         s-pack63.adb s-pack63.ads s-parame.adb s-parame.ads
6955         s-parint.adb s-parint.ads s-pooglo.adb s-pooglo.ads
6956         s-pooloc.adb s-pooloc.ads s-poosiz.adb s-poosiz.ads
6957         s-powtab.ads s-proinf.adb s-proinf.ads s-rpc.adb s-rpc.ads
6958         s-scaval.ads s-secsta.adb s-secsta.ads s-sequio.adb
6959         s-sequio.ads s-shasto.adb s-shasto.ads s-soflin.adb
6960         s-soflin.ads s-sopco3.adb s-sopco3.ads s-sopco4.adb
6961         s-sopco4.ads s-sopco5.adb s-sopco5.ads s-stache.adb
6962         s-stache.ads s-stalib.adb s-stalib.ads s-stoele.adb
6963         s-stopoo.ads s-stratt.adb s-stratt.ads s-strops.adb
6964         s-strops.ads s-taprob.ads s-taprop.ads s-tarest.ads
6965         s-tasdeb.adb s-tasdeb.ads s-tasinf.adb s-tasinf.ads
6966         s-tasini.ads s-taskin.ads s-tasren.ads s-tasres.ads
6967         s-tassta.ads s-tpinop.adb s-tpinop.ads s-tpoben.ads
6968         s-tpobop.ads s-unstyp.ads s-vaflop.adb s-vaflop.ads
6969         s-valboo.adb s-valboo.ads s-valcha.adb s-valcha.ads
6970         s-valdec.adb s-valdec.ads s-valenu.adb s-valenu.ads
6971         s-valint.adb s-valint.ads s-vallld.adb s-vallld.ads
6972         s-vallli.adb s-vallli.ads s-valllu.adb s-valllu.ads
6973         s-valrea.adb s-valrea.ads s-valuns.adb s-valuns.ads
6974         s-valuti.adb s-valuti.ads s-valwch.adb s-valwch.ads
6975         s-vercon.adb s-vercon.ads s-vmexta.adb s-vmexta.ads
6976         s-wchcnv.adb s-wchcnv.ads s-wchcon.ads s-wchjis.adb
6977         s-wchjis.ads s-wchstw.adb s-wchstw.ads s-wchwts.adb
6978         s-wchwts.ads s-widboo.adb s-widboo.ads s-widcha.adb
6979         s-widcha.ads s-widenu.adb s-widenu.ads s-widlli.adb
6980         s-widlli.ads s-widllu.adb s-widllu.ads s-widwch.adb
6981         s-widwch.ads s-wwdcha.adb s-wwdcha.ads s-wwdenu.adb
6982         s-wwdenu.ads s-wwdwch.adb s-wwdwch.ads scans.adb scans.ads
6983         scn-nlit.adb scn-slit.adb scn.adb scn.ads sdefault.ads sem.adb
6984         sem.ads sem_aggr.adb sem_aggr.ads sem_attr.adb sem_attr.ads
6985         sem_case.adb sem_case.ads sem_cat.adb sem_cat.ads sem_ch10.adb
6986         sem_ch10.ads sem_ch11.adb sem_ch11.ads sem_ch12.adb
6987         sem_ch12.ads sem_ch13.adb sem_ch13.ads sem_ch2.adb sem_ch2.ads
6988         sem_ch3.adb sem_ch3.ads sem_ch4.adb sem_ch4.ads sem_ch5.adb
6989         sem_ch5.ads sem_ch6.adb sem_ch6.ads sem_ch7.adb sem_ch7.ads
6990         sem_ch8.adb sem_ch8.ads sem_ch9.adb sem_ch9.ads sem_disp.adb
6991         sem_disp.ads sem_dist.adb sem_dist.ads sem_elab.adb
6992         sem_elab.ads sem_elim.adb sem_elim.ads sem_eval.adb
6993         sem_eval.ads sem_intr.adb sem_intr.ads sem_maps.adb
6994         sem_maps.ads sem_mech.adb sem_mech.ads sem_prag.adb
6995         sem_prag.ads sem_res.adb sem_res.ads sem_smem.adb sem_smem.ads
6996         sem_type.adb sem_type.ads sem_util.adb sem_util.ads
6997         sem_vfpt.adb sem_vfpt.ads sem_warn.adb sem_warn.ads
6998         sfn_scan.adb sfn_scan.ads sinfo-cn.adb sinfo-cn.ads sinfo.adb
6999         sinfo.ads sinfo.h sinput-l.adb sinput-l.ads sinput-p.adb
7000         sinput-p.ads sinput.adb sinput.ads snames.adb snames.ads
7001         snames.h sprint.adb sprint.ads stand.adb stand.ads stringt.adb
7002         stringt.ads stringt.h style.adb style.ads stylesw.adb
7003         stylesw.ads switch.adb switch.ads sysdep.c system.ads
7004         table.adb table.ads targparm.adb targparm.ads targtyps.c
7005         tbuild.adb tbuild.ads trans.c tree_gen.adb tree_gen.ads
7006         tree_in.adb tree_in.ads tree_io.adb tree_io.ads treepr.adb
7007         treepr.ads treeprs.ads treeprs.adt ttypef.ads ttypes.ads
7008         types.adb types.ads types.h uintp.adb uintp.ads uintp.h
7009         uname.adb uname.ads urealp.adb urealp.ads urealp.h usage.adb
7010         usage.ads utils.c utils2.c validsw.adb validsw.ads
7011         widechar.adb widechar.ads xeinfo.adb xnmake.adb xr_tabls.adb
7012         xr_tabls.ads xref_lib.adb xref_lib.ads xsinfo.adb xsnames.adb
7013         xtreeprs.adb: Correct statements in comments about maintainership
7014         of GNAT.
7015
7016 2002-09-23  Zack Weinberg  <zack@codesourcery.com>
7017
7018         * Make-lang.in (EXTRA_GNATBIND_OBJS): Add version.o.
7019         * Makefile.in (TOOLS_LIBS): Add ../../version.o.
7020         * gnatvsn.ads: Gnat_Version_String is now a function.
7021         * gnatvsn.adb: New file.  When asked for Gnat_Version_String,
7022         copy the C version_string into a String and return it.
7023         * gnatcmd.adb, gnatkr.adb, gnatlbr.adb, gnatlink.adb,
7024         gnatls.adb,gnatmake.adb, gnatprep.adb, gnatpsta.adb:
7025         Remove pragma Ident (Gnat_Version_String).  If this was the
7026         sole use of package Gnatvsn, remove the with statement too.
7027         * gnat1drv.adb: Tweak -gnatv output.
7028
7029 2002-09-17  Richard Henderson  <rth@redhat.com>
7030
7031         * trans.c (tree_transform): Use real_ldexp not REAL_VALUE_LDEXP.
7032         * config/dsp16xx/dsp16xx.md (fixuns_trunchfhi2): Use real_2expN.
7033         * config/mips/mips.md (fixuns_truncdfsi2): Likewise.
7034         (fixuns_truncdfdi2, fixuns_truncsfsi2, fixuns_truncsfdi2): Likewise.
7035         * config/m68k/m68k.c (floating_exact_log2): Use real_exponent
7036         and real_2expN instead of a loop.
7037         * doc/tm.texi (REAL_VALUE_LDEXP): Remove.
7038         (REAL_VALUE_RNDZINT, REAL_VALUE_UNSIGNED_RNDZINT): Remove.
7039
7040 2002-08-25  Andre Leis <a.leis@gmx.net>
7041             David Billinghurst (David.Billinghurst@riotinto.com>
7042
7043         * sysdep.c (__gnat_ttyname): include <termios.h> on cygwin
7044
7045 2002-08-13  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
7046
7047         * Make-lang.in (gnatbind$(exeext)): Link with $(SYSLIBS).
7048         Remove $(CONFIG_H) dependency.
7049
7050 2002-08-08  Nathan Sidwell  <nathan@codesourcery.com>
7051
7052         * ada/Make-lang.in (ada.mostlyclean): Remove coverage files.
7053
7054 2002-07-29  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
7055
7056         * adadecode.c (ada_demangle): Use xstrdup in lieu of
7057         xmalloc/strcpy.
7058         * misc.c (gnat_decode_option): Likewise.
7059
7060 2002-07-15  Florian Weimer  <fw@deneb.enyo.de>
7061
7062         * make.adb (Add_Switch): Make Generic_Position a procedure.  The
7063         function approach did not work well because of a side effect (the
7064         function call could reallocate the table which was being indexed
7065         using its result). Fixes ada/4851. [RESURRECTED]
7066
7067 2002-07-01  Roger Sayle  <roger@eyesopen.com>
7068
7069         * ada/utils.c (builtin_function): Accept an additional parameter.
7070
7071 2002-06-28  Andreas Jaeger  <aj@suse.de>
7072
7073         PR ada/7144
7074         * Makefile.in: Fix typo in comment, patch by Adrian Knoth
7075         <adi@thur.de>.
7076
7077 2002-06-24  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
7078
7079         * Makefile.in (SHELL): Set to @SHELL@.
7080
7081 2002-06-20  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
7082
7083         * utils.c (init_gigi_decls): Use ARRAY_SIZE in lieu of explicit
7084         array size calculation.
7085
7086 2002-06-04  Andreas Jaeger  <aj@suse.de>
7087
7088         * Make-lang.in (gnatbind): Readd rule that has been lost in last
7089         patch.
7090
7091 2002-06-03  Geoffrey Keating  <geoffk@redhat.com>
7092
7093         Merge from pch-branch:
7094
7095         * config-lang.in (gtfiles): Add ada-tree.h.
7096         * ada-tree.h (SET_TYPE_CI_CO_LIST): New.
7097         (SET_TYPE_MODULUS): New.
7098         (SET_TYPE_INDEX): New.
7099         (SET_TYPE_DIGITS_VALUE): New.
7100         (SET_TYPE_RM_SIZE): New.
7101         (SET_TYPE_UNCONSTRAINED_ARRAY): New.
7102         (SET_TYPE_ADA_SIZE): New.
7103         (SET_TYPE_ACTUAL_BOUNDS): New.
7104         (SET_DECL_CONST_CORRESPONDING_VAR): New.
7105         (SET_DECL_ORIGINAL_FIELD): New.
7106         (TREE_LOOP_ID): Correct typo.
7107         * decl.c: Use new macros.
7108         * utils.c: Include debug.h, use new macros.
7109         * utils2.c: Use new macros.
7110
7111         * ada-tree.h: Update all macros for new tree description.
7112         (struct tree_loop_id): New.
7113         (union lang_tree_node): New.
7114         (struct lang_decl): New.
7115         (struct lang_type): New.
7116         * misc.c (gnat_mark_tree): Delete.
7117         (LANG_HOOKS_MARK_TREE): Delete.
7118         * trans.c (tree_transform): No longer any need to cast
7119         for TREE_LOOP_ID.
7120
7121         * utils.c (struct language_function): New dummy structure.
7122
7123         * Makefile.in (decl.o): gt-ada-<filename.h> is in objdir, not srcdir.
7124         (misc.o): Likewise.
7125         (utils.o): Likewise; also gtype-ada.h.
7126         * Make-lang.in (gnat1): Add dependency on s-gtype.
7127         (gnatbind): Add dependency on $(CONFIG_H).
7128         * utils.c: Correct last #include.
7129         (stuct e_stack): Remove unnecessary 'static'.
7130         (mark_e_stack): Remove unused prototype.
7131
7132         * scn-nlit.adb: Remove whitespace after version number to
7133         keep lines under 80 chars.
7134         * snames.adb: Likewise.
7135         * treepr.ads: Likewise.
7136
7137         * Makefile.in (decl.o): Include gt-ada-<filename>.h.
7138         (misc.o): Likewise.
7139         (utils.o): Include gt-ada-<filename>.h and gtype-ada.h.
7140         * config-lang.in (gtfiles): New.
7141         * decl.c: Use gengtype for roots.
7142         * gigi.h: Use gengtype for roots.
7143         * trans.c: Use gengtype for roots.
7144         * utils.c: Use gengtype for roots, marking.  Include gtype-ada.h.
7145
7146 2002-06-02  Gabriel Dos Reis  <gdr@codesourcery.com>
7147
7148         * misc.c (gnat_init): Adjust setting of internal_error_function.
7149
7150 2002-06-01  Joseph S. Myers  <jsm28@cam.ac.uk>
7151
7152         * gnat_ug.texi: Use @ifnottex instead of @ifinfo.
7153         * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
7154         gnat_ug_wnt.texi: Regenerate.
7155
7156 2002-05-31  Florian Weimer  <fw@deneb.enyo.de>
7157
7158         * 5ntaprop.adb (with System.OS_Primitives): Remove.
7159
7160         * cstreams.c (max_path_len): Move from here ...
7161         * adaint.c (__gnat_max_path_len): ... to here.
7162         * adaint.c (__gnat_max_path_len): Declare.
7163         * g-dirope.adb (Max_Path): Adjust.
7164         * g-os_lib.adb (Normalize_Pathname.Max_Path): Adjust.
7165         * i-cstrea.ads (max_path_len): Adjust.
7166         * osint.adb (Get_RTS_Search_Dir.Max_Path): Adjust.
7167         * xr_tabls.adb (Dir_Name.Max_Path: Adjust.
7168
7169         * Makefile.in, Make-lang.in: Documentation is now built in
7170         Make-lang.in.  Store Info and generated Texinfo files in the
7171         source directory.
7172         * gnat_ug.texi: Remove CVS keywords, correct version number.
7173         Set file name correctly.
7174
7175         * gnat_ug_*.texi: Add.
7176         * .cvsignore: Ignore generated Texinfo files.
7177
7178 2002-05-30  Zack Weinberg  <zack@codesourcery.com>
7179
7180         * ada.h: Add MI guard macro.
7181         (SUBTYPE): Define constants with an anonymous enum, not static
7182         const variables.
7183         (IN): Cast constants to appropriate type before use.
7184
7185 2002-05-26  Joseph S. Myers  <jsm28@cam.ac.uk>
7186
7187         * gnatvsn.ads (Gnat_Version_String): Change to "3.2 20020526
7188         (experimental)".
7189
7190 2002-05-23  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
7191
7192         * Make-lang.in (CP, ECHO): Copy from Makefile.in.
7193         (X_ADA_CFLAGS, T_ADA_CFLAGS, X_ADAFLAGS, T_ADAFLAGS): Likewise.
7194         (ALL_ADAFLAGS, FORCE_DEBUG_ADAFLAGS, ADA_CFLAGS): Likewise.
7195         (ALL_ADA_CFLAGS): Likewise.
7196         (ADA_INCLUDES): Likewise.
7197         Adapt for new working dir.
7198         (GNATBIND): Use Makefile.in version.
7199         (.SUFFIXES): Copy from Makefile.in.
7200         (ada-warn): Define.
7201         (.adb.o, .ads.o): Copy from Makefile.in.
7202         Added $(OUTPUT_OPTION).
7203         (GNAT1_C_OBJS): Moved from Makefile.in.
7204         Prefix with ada subdir.
7205         (GNAT_ADA_OBJS, GNAT1_ADA_OBJS, GNAT1_OBJS, GNATBIND_OBJS): Likewise.
7206         (EXTRA_GNAT1_OBJS): Moved from Makefile.in.
7207         Adapt for new working dir.
7208         (EXTRA_GNATBIND_OBJS): Likewise.
7209         (ADA_BACKEND): Moved from Makefile.in.
7210         Renamed to avoid conflict with global BACKEND.
7211         Use that one.
7212         (TARGET_ADA_SRCS): Moved from Makefile.in.
7213         (gnat1$(exeext)): Replaced recursive rule with Makefile.in version.
7214         Use ADA_BACKEND.
7215         (gnatbind$(exeext)): Replaced recursive rule with Makefile.in version.
7216         (ada_extra_files): Moved from Makefile.in.
7217         Prefix with ada subdir.
7218         (ada/b_gnat1.c, ada/b_gnat1.o, ada/b_gnatb.c, ada/b_gnatb.o): Likewise.
7219         (ada/treeprs.ads, ada/einfo.h, ada/sinfo.h, ada/nmake.adb): Likewise.
7220         (ada/nmake.ads): Likewise.
7221         (update-sources): Moved from Makefile.in.
7222         Prefix with ada subdir.
7223         (ada/sdefault.adb, ada/stamp-sdefault, ada/sdefault.o): Likewise.
7224         (ADA_TREE_H): Likewise.
7225         (ada/a-except.o, ada/s-assert.o, ada/s-memory.o): Likewise.
7226         (ada/memtrack.o): Likewise.
7227         (ada/adadecode.o): Likewise.
7228         Update dependencies.
7229         (ada/adaint.o): New.
7230         (ada/argv.o): Moved from Makefile.in.
7231         Prefix with ada subdir.
7232         Update dependencies.
7233         (ada/cstreams.o, ada/exit.o, ada/final.o, ada/link.o): Likewise.
7234         (ada/cio.o, ada/init.o, ada/raise.o, ada/tracebak.o): Likewise.
7235         (ada/cuintp.o, ada/decl.o, ada/misc.o): Moved from Makefile.in.
7236         Prefix with ada subdir.
7237         (ada/targtyps.o, ada/trans.o, ada/utils.o, ada/utils2.o): Likewise.
7238         (GNAT DEPENDENCIES): Regenerate.
7239         * Makefile.in (MACHMODE_H, RTL_H, TREE_H): Removed, provided by
7240         toplevel Makefile.in.
7241         (EXTRA_GNAT1_OBJS, EXTRA_GNATBIND_OBJS): Removed.
7242         (TARGET_ADA_SRCS): Removed.
7243         (GNAT1_C_OBJS, GNAT_ADA_OBJS, GNAT1_ADA_OBJS, GNAT1_OBJS): Likewise.
7244         (GNATBIND_OBJS): Likewise.
7245         (ADA_INCLUDE_DIR, ADA_RTL_OBJ_DIR): Moved here.
7246         (BACKEND): Removed.
7247         (../gnat1$(exeext), ../gnatbind$(exeext)): Likewise.
7248         (TREE_H): Likewise.
7249         (ada_extra_files): Likewise.
7250         (b_gnat1.c, b_gnat1.o, b_gnatb.c, b_gnatb.o): Likewise.
7251         (treeprs.ads, einfo.h, sinfo.h, nmake.adb, nmake.ads): Likewise.
7252         (update-sources): Likewise.
7253         (sdefault.adb, stamp-sdefault, sdefault.o): Likewise
7254         (ADA_TREE_H): Likewise.
7255         (adadecoce.o): Likewise.
7256         (cuintp.o, decl.o, misc.o, trans.o, utils.o, utils2.o): Likewise.
7257         (GNAT DEPENDENCIES): Likewise.
7258
7259 2002-05-16  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
7260
7261         * Makefile.adalib: Allow for PWDCMD to override hardcoded pwd.
7262         * Makefile.in: Likewise.
7263
7264 2002-05-14  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
7265
7266         * Make-lang.in (gnat1$(exeext), gnatbind$(exeext), gnattools):
7267         Restore $(CONFIG_H) and prefix.o dependencies.
7268         (ada.stage[1-4]): Depend on stage?-start.
7269
7270         * Makefile.in (b_gnatb.c): Depend on interfac.o.
7271
7272 2002-05-02  Jim Wilson  <wilson@redhat.com>
7273
7274         * utils.c (finish_record_type): Change record_size to record_type.
7275
7276 2001-05-02  John David Anglin  <dave@hiauly1.hia.nrc.ca>
7277
7278         * ada/Makefile.in (X_ADA_CFLAGS, T_ADA_CFLAGS): New fragment overrides.
7279         (ALL_ADA_CFLAGS): Define.  Replace ADA_CFLAGS with ALL_ADA_CFLAGS in
7280         ALL_ADAFLAGS, MOST_ADAFLAGS, and all compilations using CC.
7281
7282 2002-04-25  Neil Booth  <neil@daikokuya.demon.co.uk>
7283
7284         * misc.c (gnat_parse_file): Update.
7285
7286 2002-04-24  Neil Booth  <neil@daikokuya.demon.co.uk>
7287
7288         * misc.c (gnat_init): Don't set lang_attribute_common.
7289
7290 2002-04-21  Joseph S. Myers  <jsm28@cam.ac.uk>
7291
7292         * gnat_rm.texi: Use @ifnottex instead of @ifinfo.
7293
7294 2002-04-21  Florian Weimer  <fw@deneb.enyo.de>
7295
7296         * gnat_ug.texi: New file.
7297
7298         * gnat_rm.texi: Do not include texiplus.texi.  Include fdl.texi
7299         instead of gfdl.texi
7300
7301         * xgnatug.adb, ug_words: New files.
7302
7303         * Makefile.in (doc, dvi): New targets.  Build gnat_ug_*,
7304         gnat_rm and gnat-style manuals.
7305
7306 2002-04-18  Neil Booth  <neil@daikokuya.demon.co.uk>
7307
7308         * gigi.h (incomplete_type_error): Remove.
7309         * utils.c (incomplete_type_error): Remove.
7310
7311 2002-04-16  Mark Mitchell  <mark@codesourcery.com>
7312
7313         * trans.c (tree_transform): Add has_scope argument to
7314         expand_start_stmt_expr.
7315
7316 2002-04-04  Neil Booth  <neil@daikokuya.demon.co.uk>
7317
7318         * gigi.h (truthvalue_conversion): Rename.
7319         * misc.c (LANG_HOOKS_TRUTHVALUE_CONVERSION): Redefine.
7320         * trans.c (tree_transform): Update.
7321         * utils2.c (truthvalue_conversion): Rename, update.
7322         (build_binary_op, build_unary_op): Update.
7323
7324 2002-04-04  Laurent Guerby  <guerby@acm.org>
7325
7326         * make.adb: Implement -margs, remove restriction about file name placement.
7327         * makeusg.adb: Documentation update.
7328         * Makefile.in (TOOLS_FLAGS_TO_PASS): Add VPATH=$(fsrcdir).
7329         * Makefile.in (gnattools3): Comment out, gnatmem does not build without libaddr2line.
7330
7331 2002-04-04  Neil Booth  <neil@daikokuya.demon.co.uk>
7332
7333         * utils.c (create_subprog_decl): Use SET_DECL_ASSEMBLER_NAME.
7334         (builtin_function): Similarly.
7335
7336 2002-04-01  Neil Booth  <neil@daikokuya.demon.co.uk>
7337
7338         * decl.c (gnat_to_gnu_entity): Update.
7339         * gigi.h (mark_addressable): Rename.
7340         * misc.c (LANG_HOOKS_MARK_ADDRESSABLE): Redefine.
7341         * trans.c (tree_transform): Update.
7342         * utils.c (create_var_decl): Update.
7343         * util2.c (build_binary_op, build_unary_op,
7344         fill_vms_descriptor): Update.
7345         (mark_addressable): Rename, update.
7346
7347 2002-04-01  Neil Booth  <neil@daikokuya.demon.co.uk>
7348
7349         * gigi.h (unsigned_type, signed_type, signed_or_unsigned_type):
7350         Rename.
7351         * misc.c (LANG_HOOKS_SIGNED_TYPE, LANG_HOOKS_UNSIGNED_TYPE,
7352         LANG_HOOKS_SIGNED_OR_UNSIGNED_TYPE): New.
7353         * trans.c (tree_transform, convert_with_check): Update.
7354         * utils.c (unsigned_type, signed_type, signed_or_unsigned_type):
7355         Rename.
7356
7357 2002-03-31  Neil Booth  <neil@daikokuya.demon.co.uk>
7358
7359         * gigi.h (finish_incomplete_decl): Rename.
7360         * misc.c (LANG_HOOKS_FINISH_INCOMPLETE_DECL): Redefine.
7361         * utils.c (gnat_init_decl_processing): Don't set hook.
7362         (finish_incomplete_decl): Rename.
7363
7364 2002-03-29  Andreas Schwab  <schwab@suse.de>
7365
7366         * Makefile.in: Pass VPATH=$(fsrcdir) when calling make in rts
7367         directory.
7368
7369 2001-03-28  Robert Dewar <dewar@gnat.com>
7370
7371         * checks.ads:
7372         (Remove_Checks): New procedure
7373
7374         * checks.adb:
7375         (Remove_Checks): New procedure
7376
7377         * exp_util.adb:
7378         Use new Duplicate_Subexpr functions
7379         (Duplicate_Subexpr_No_Checks): New procedure
7380         (Duplicate_Subexpr_No_Checks_Orig): New procedure
7381         (Duplicate_Subexpr): Restore original form (checks duplicated)
7382         (Duplicate_Subexpr): Call Remove_Checks
7383
7384         * exp_util.ads:
7385         (Duplicate_Subexpr_No_Checks): New procedure
7386         (Duplicate_Subexpr_No_Checks_Orig): New procedure
7387         Add 2002 to copyright notice
7388
7389         * sem_util.adb: Use new Duplicate_Subexpr functions
7390
7391         * sem_eval.adb:
7392         (Eval_Indexed_Component): This is the place to call
7393         Constant_Array_Ref and to replace the value. We simply merge
7394         the code of this function in here, since it is now no longer
7395         used elsewhere. This fixes the problem of the back end not
7396         realizing we were clever enough to see that this was
7397         constant.
7398         (Expr_Val): Remove call to Constant_Array_Ref
7399         (Expr_Rep_Val): Remove call to Constant_Array_Ref
7400         Minor reformatting
7401         (Constant_Array_Ref): Deal with string literals (patch
7402         suggested by Zack Weinberg on the gcc list)
7403
7404 2001-03-28  Ed Schonberg <schonber@gnat.com>
7405
7406         * exp_util.adb: Duplicate_Subexpr_No_Checks_Orig =>
7407         Duplicate_Subexpr_Move_Checks.
7408
7409         * exp_util.ads: Duplicate_Subexpr_No_Checks_Orig =>
7410         Duplicate_Subexpr_Move_Checks.
7411
7412         * sem_eval.adb: (Constant_Array_Ref): Verify that constant
7413         value of array exists before retrieving it (it may a private
7414         protected component in a function).
7415
7416 2002-03-28   Geert Bosch <bosch@gnat.com>
7417
7418         * prj-pp.adb : New file.
7419
7420         * prj-pp.ads : New file.
7421
7422 2002-03-28  Andreas Jaeger  <aj@suse.de>
7423
7424         * Makefile.in (stamp-sdefault): Fix path for Makefile.
7425
7426 2002-03-28  Neil Booth  <neil@daikokuya.demon.co.uk>
7427
7428         * misc.c (gnat_expand_expr): Move prototype.
7429
7430 2002-03-27  Neil Booth  <neil@daikokuya.demon.co.uk>
7431
7432         * misc.c (insert_default_attributes): Remove.
7433
7434 2002-03-27  Neil Booth  <neil@daikokuya.demon.co.uk>
7435
7436         * misc.c (LANG_HOOKS_EXPAND_EXPR): Redefine.
7437         (gnat_init): Don't set hook.
7438         (gnat_expand_expr): Fix prototype.
7439
7440 2002-03-27  Neil Booth  <neil@daikokuya.demon.co.uk>
7441
7442         * misc.c (ggc_p): Remove.
7443
7444 2002-03-27  Geert Bosch  <bosch@gnat.com>
7445
7446         * prj-makr.ads, prj-makr.adb : New files.
7447
7448 2002-03-26  Neil Booth  <neil@daikokuya.demon.co.uk>
7449
7450         * misc.c (LANG_HOOKS_MARK_TREE): Redefine.
7451         (lang_mark_tree): Make static, rename.
7452
7453 2002-03-25  Neil Booth  <neil@daikokuya.demon.co.uk>
7454
7455         * misc.c (maybe_build_cleanup): Remove.
7456
7457 2002-03-24  Neil Booth  <neil@daikokuya.demon.co.uk>
7458
7459         * gigi.h (yyparse): Remove.
7460
7461 2002-03-23  Florian Weimer  <fw@deneb.enyo.de>
7462
7463         * gnat_rm.texi: Sync with ACT version.
7464           (From Ben Brosgol <brosgol@gnat.com>)
7465
7466 2002-03-20  Neil Booth  <neil@daikokuya.demon.co.uk>
7467
7468         * misc.c (LANG_HOOKS_DECL_PRINTABLE_NAME): Redefine.
7469         (gnat_init): Remove old hook.
7470
7471 2002-03-17  Neil Booth  <neil@daikokuya.demon.co.uk>
7472
7473         * misc.c (LANG_HOOKS_PARSE_FILE): Redefine.
7474         (yyparse): Rename gnat_parse_file.
7475
7476 2002-03-14  Geoffrey Keating  <geoffk@redhat.com>
7477
7478         Delete all lines containing "$Revision:".
7479         * xeinfo.adb: Don't look for revision numbers.
7480         * xnmake.adb: Likewise.
7481         * xsinfo.adb: Likewise.
7482         * xsnames.adb: Likewise.
7483         * xtreeprs.adb: Likewise.
7484
7485 2002-03-12  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
7486
7487         * misc.c (gnat_tree_code_type, gnat_tree_code_length,
7488         gnat_tree_code_name): Delete.
7489         (tree_code_type, tree_code_length, tree_code_name): Define.
7490         (gnat_init): Don't try to copy into the various tree_code
7491         arrays.
7492
7493 2002-03-11  Richard Henderson  <rth@redhat.com>
7494
7495         * Makefile.in (.NOTPARALLEL): Add fake tag.
7496
7497 2002-03-07  Geert Bosch  <bosch@gnat.com>
7498
7499         * adadecode.c, adadecode.h, aux-io.c, s-traces.adb, s-traces.ads,
7500         s-tratas.adb, s-tratas.ads, sinput-d.adb, sinput-d.ads,
7501         switch-b.adb, switch-b.ads, switch-c.adb, switch-c.ads,
7502         switch-m.adb, switch-m.ads : New files.
7503
7504 2002-03-07  Geert Bosch  <bosch@gnat.com>
7505
7506         * 41intnam.ads, 42intnam.ads, 4aintnam.ads, 4cintnam.ads,
7507         4dintnam.ads, 4gintnam.ads, 4hintnam.ads, 4lintnam.ads,
7508         4mintnam.ads, 4pintnam.ads, 4rintnam.ads, 4sintnam.ads,
7509         4uintnam.ads, 4vcalend.adb, 4zintnam.ads, 52system.ads,
7510         5amastop.adb, 5asystem.ads, 5ataprop.adb, 5atpopsp.adb,
7511         5avxwork.ads, 5bosinte.adb, 5bsystem.ads, 5esystem.ads,
7512         5fsystem.ads, 5ftaprop.adb, 5ginterr.adb, 5gmastop.adb,
7513         5gsystem.ads, 5gtaprop.adb, 5gtasinf.adb, 5gtasinf.ads,
7514         5hparame.ads, 5hsystem.ads, 5htaprop.adb, 5htraceb.adb,
7515         5itaprop.adb, 5ksystem.ads, 5kvxwork.ads, 5lintman.adb,
7516         5lsystem.ads, 5mvxwork.ads, 5ninmaop.adb, 5nosinte.ads,
7517         5ntaprop.adb, 5ointerr.adb, 5omastop.adb, 5oosinte.adb,
7518         5osystem.ads, 5otaprop.adb, 5otaspri.ads, 5pvxwork.ads,
7519         5qtaprop.adb, 5sintman.adb, 5ssystem.ads, 5staprop.adb,
7520         5stpopse.adb, 5svxwork.ads, 5tosinte.ads, 5uintman.adb,
7521         5vasthan.adb, 5vinmaop.adb, 5vinterr.adb, 5vintman.adb,
7522         5vmastop.adb, 5vparame.ads, 5vsystem.ads, 5vtaprop.adb,
7523         5vtpopde.adb, 5wmemory.adb, 5wsystem.ads, 5wtaprop.adb,
7524         5ysystem.ads, 5zinterr.adb, 5zintman.adb, 5zosinte.adb,
7525         5zosinte.ads, 5zsystem.ads, 5ztaprop.adb, 6vcpp.adb, 6vcstrea.adb,
7526         7sintman.adb, 7staprop.adb, 7stpopsp.adb, 9drpc.adb,
7527         Make-lang.in, Makefile.in, a-caldel.adb, a-comlin.ads,
7528         a-dynpri.adb, a-except.adb, a-except.ads, a-finali.adb,
7529         a-ncelfu.ads, a-reatim.adb, a-retide.adb, a-stream.ads,
7530         a-ststio.adb, a-ststio.ads, a-stwifi.adb, a-tags.adb, a-tasatt.adb,
7531         a-textio.adb, a-tideau.adb, a-tiflau.adb, a-tigeau.adb,
7532         a-tigeau.ads, a-tiinau.adb, a-timoau.adb, a-witeio.adb,
7533         a-wtdeau.adb, a-wtenau.adb, a-wtflau.adb, a-wtgeau.adb,
7534         a-wtgeau.ads, a-wtinau.adb, a-wtmoau.adb, ada-tree.def, ada-tree.h,
7535         adaint.c, adaint.h, ali-util.adb, ali.adb, ali.ads, atree.adb,
7536         atree.ads, atree.h, back_end.adb, bcheck.adb, bindgen.adb,
7537         bindusg.adb, checks.adb, comperr.adb, config-lang.in, csets.adb,
7538         csets.ads, cstand.adb, cstreams.c, debug.adb, debug.ads, decl.c,
7539         einfo.adb, einfo.ads, einfo.h, elists.h, errout.adb, errout.ads,
7540         eval_fat.adb, exp_aggr.adb, exp_attr.adb, exp_ch11.adb,
7541         exp_ch12.adb, exp_ch13.adb, exp_ch2.adb, exp_ch3.adb, exp_ch3.ads,
7542         exp_ch4.adb, exp_ch5.adb, exp_ch6.adb, exp_ch7.adb, exp_ch7.ads,
7543         exp_ch9.adb, exp_ch9.ads, exp_dbug.adb, exp_dbug.ads, exp_disp.ads,
7544         exp_dist.adb, exp_fixd.adb, exp_intr.adb, exp_pakd.adb,
7545         exp_prag.adb, exp_strm.adb, exp_util.adb, exp_util.ads,
7546         expander.adb, expect.c, fe.h, fmap.adb, fmap.ads, fname-uf.adb,
7547         freeze.adb, frontend.adb, g-awk.adb, g-cgideb.adb, g-comlin.adb,
7548         g-comlin.ads, g-debpoo.adb, g-dirope.adb, g-dirope.ads,
7549         g-dyntab.adb, g-expect.adb, g-expect.ads, g-io.ads, g-io_aux.adb,
7550         g-io_aux.ads, g-locfil.adb, g-locfil.ads, g-os_lib.adb,
7551         g-os_lib.ads, g-regexp.adb, g-regpat.adb, g-socket.adb,
7552         g-socket.ads, g-spipat.adb, g-table.adb, g-trasym.adb,
7553         g-trasym.ads, gigi.h, gmem.c, gnat1drv.adb, gnatbind.adb, gnatbl.c,
7554         gnatchop.adb, gnatcmd.adb, gnatdll.adb, gnatfind.adb, gnatlbr.adb,
7555         gnatlink.adb, gnatls.adb, gnatmem.adb, gnatprep.adb, gnatvsn.ads,
7556         gnatxref.adb, hlo.adb, hostparm.ads, i-cobol.adb, i-cpp.adb,
7557         i-cstrea.ads, i-cstrin.adb, i-pacdec.adb, i-vxwork.ads,
7558         impunit.adb, init.c, inline.adb, io-aux.c, layout.adb, lib-load.adb,
7559         lib-util.adb, lib-writ.adb, lib-writ.ads, lib-xref.adb,
7560         lib-xref.ads, lib.adb, lib.ads, make.adb, makeusg.adb, mdll.adb,
7561         memroot.adb, misc.c, mlib-tgt.adb, mlib-utl.adb, mlib-utl.ads,
7562         mlib.adb, namet.adb, namet.ads, namet.h, nlists.h, nmake.adb,
7563         nmake.ads, nmake.adt, opt.adb, opt.ads, osint.adb, osint.ads,
7564         output.adb, output.ads, par-ch2.adb, par-ch3.adb, par-ch5.adb,
7565         par-prag.adb, par-tchk.adb, par-util.adb, par.adb, prj-attr.adb,
7566         prj-dect.adb, prj-env.adb, prj-env.ads, prj-nmsc.adb, prj-part.adb,
7567         prj-proc.adb, prj-strt.adb, prj-tree.adb, prj-tree.ads, prj.adb,
7568         prj.ads, raise.c, raise.h, repinfo.adb, restrict.adb, restrict.ads,
7569         rident.ads, rtsfind.adb, rtsfind.ads, s-arit64.adb, s-asthan.adb,
7570         s-atacco.adb, s-atacco.ads, s-auxdec.adb, s-crc32.adb, s-crc32.ads,
7571         s-direio.adb, s-fatgen.adb, s-fileio.adb, s-finimp.adb,
7572         s-gloloc.adb, s-gloloc.ads, s-interr.adb, s-mastop.adb,
7573         s-mastop.ads, s-memory.adb, s-parame.ads, s-parint.adb,
7574         s-pooglo.adb, s-pooloc.adb, s-rpc.adb, s-secsta.adb, s-sequio.adb,
7575         s-shasto.adb, s-soflin.adb, s-soflin.ads, s-stache.adb,
7576         s-taasde.adb, s-taasde.ads, s-tadeca.adb, s-tadeca.ads,
7577         s-tadert.adb, s-tadert.ads, s-taenca.adb, s-taenca.ads,
7578         s-taprob.adb, s-taprop.ads, s-tarest.adb, s-tasdeb.adb,
7579         s-tasini.adb, s-tasini.ads, s-taskin.adb, s-taskin.ads,
7580         s-tasque.adb, s-tasque.ads, s-tasren.adb, s-tasren.ads,
7581         s-tassta.adb, s-tasuti.adb, s-tasuti.ads, s-tataat.adb,
7582         s-tataat.ads, s-tpoben.adb, s-tpoben.ads, s-tpobop.adb,
7583         s-tposen.adb, s-tposen.ads, s-traceb.adb, s-traceb.ads,
7584         s-unstyp.ads, s-widenu.adb, scn-nlit.adb, scn.adb, sem.adb,
7585         sem_aggr.adb, sem_attr.adb, sem_attr.ads, sem_case.adb,
7586         sem_ch10.adb, sem_ch11.adb, sem_ch11.ads, sem_ch12.adb,
7587         sem_ch13.adb, sem_ch13.ads, sem_ch2.adb, sem_ch3.adb, sem_ch3.ads,
7588         sem_ch4.adb, sem_ch5.adb, sem_ch6.adb, sem_ch6.ads, sem_ch7.adb,
7589         sem_ch8.adb, sem_ch8.ads, sem_ch9.adb, sem_disp.adb, sem_dist.adb,
7590         sem_elab.adb, sem_elim.adb, sem_elim.ads, sem_eval.adb,
7591         sem_intr.adb, sem_mech.adb, sem_prag.adb, sem_res.adb,
7592         sem_type.adb, sem_util.adb, sem_util.ads, sem_vfpt.adb,
7593         sem_warn.adb, sinfo.adb, sinfo.ads, sinfo.h, sinput-l.adb,
7594         sinput-l.ads, sinput.adb, sinput.ads, snames.adb, snames.ads,
7595         snames.h, sprint.adb, sprint.ads, stringt.adb, stringt.ads,
7596         stringt.h, style.adb, switch.adb, switch.ads, sysdep.c, system.ads,
7597         table.adb, targparm.adb, targparm.ads, targtyps.c, tbuild.adb,
7598         tbuild.ads, tracebak.c, trans.c, tree_gen.adb, tree_io.adb,
7599         treepr.adb, treepr.ads, treeprs.ads, treeprs.adt, ttypes.ads,
7600         types.adb, types.ads, types.h, uintp.ads, urealp.ads, usage.adb,
7601         utils.c, utils2.c, validsw.adb, xnmake.adb, xr_tabls.adb,
7602         xr_tabls.ads, xref_lib.adb, xref_lib.ads : Merge in ACT changes.
7603
7604         * 1ssecsta.adb, 1ssecsta.ads, a-chlat9.ads, a-cwila9.ads,
7605         g-enblsp.adb, g-md5.adb, g-md5.ads, gnatname.adb, gnatname.ads,
7606         mkdir.c, osint-b.adb, osint-b.ads, osint-c.adb, osint-c.ads,
7607         osint-l.adb, osint-l.ads, osint-m.adb, osint-m.ads : New files
7608
7609         * 3lsoccon.ads, 5qparame.ads, 5qvxwork.ads, 5smastop.adb,
7610         5zparame.ads, gnatmain.adb, gnatmain.ads, gnatpsys.adb : Removed
7611
7612         * mdllfile.adb, mdllfile.ads, mdlltool.adb, mdlltool.ads : Renamed
7613         to mdll-fil.ad[bs] and mdll-util.ad[bs]
7614
7615         * mdll-fil.adb, mdll-fil.ads, mdll-utl.adb, mdll-utl.ads : Renamed
7616         from mdllfile.ad[bs] and mdlltool.ad[bs]
7617
7618 2002-03-03  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
7619
7620         * utils.c (init_gnat_to_gnu, init_gigi_decls): Use ARRAY_SIZE in
7621         lieu of explicit sizeof/sizeof.
7622
7623 2002-02-28  Neil Booth  <neil@daikokuya.demon.co.uk>
7624
7625         * misc.c (copy_lang_decl): Remove.
7626
7627 2002-02-27  Zack Weinberg  <zack@codesourcery.com>
7628
7629         * misc.c: Delete traditional-mode-related code copied from the
7630         C front end but not used, or used only to permit the compiler
7631         to link.
7632
7633 2002-02-07  Richard Henderson  <rth@redhat.com>
7634
7635         * adaint.c (__gnat_to_gm_time): First arg is int, not time_t.
7636         * adaint.h (__gnat_to_gm_time): Update prototype.
7637
7638 2002-01-30  Richard Henderson  <rth@redhat.com>
7639
7640         * trans.c (tree_transform) [N_Loop_Statement]: Use
7641         expand_exit_loop_top_cond.
7642
7643 2001-12-23  Richard Henderson  <rth@redhat.com>
7644
7645         * utils.c (end_subprog_body): Push GC context around
7646         rest_of_compilation for nested functions.
7647
7648 2001-12-23  Richard Henderson  <rth@redhat.com>
7649
7650         * 5nosinte.ads: Get definition of "int" from Interfaces.C.
7651
7652 2001-12-23  Florian Weimer  <fw@deneb.enyo.de>
7653
7654         * gnat-style.texi (Declarations and Types): Remove ancient style
7655         rule which was mandated by code generation issues.
7656
7657         * gnat-style.texi (header): Add @dircategory, @direntry.
7658         (title page): Remove date.
7659         (general) Add @./@: where approriate, and two spaces after the
7660         full stop at the end of a sentence.  Use @samp markup when
7661         referring concrete lexical entities (keywords, attribute names
7662         etc.), and @syntax for ARM grammar elements. Use @r for English
7663         text in comments.  Use @emph for emphasis.  Change "if-statements"
7664         etc. to "if statements" (without @samp). Break long lines.  Make
7665         casing of section names consistent.
7666         (Identifiers): Use @samp markup for variable names.
7667         (Comments): Use @samp markup for comment characters. Line-end
7668         comments may follow any Ada code, not just statements.  Fix
7669         misspelling of "Integer" as "integer".
7670         (Loop statements): Do not use variable name "I", use "J".
7671         (Subprogram Declarations): Document alignment.
7672         (Subprogram Bodies, Block statements): Document empty line before
7673         "begin".
7674
7675 2001-12-22  Florian Weimer  <fw@deneb.enyo.de>
7676
7677         * make.adb (Add_Switch): Make Generic_Position a procedure.  The
7678         function approach did not work well because of a side effect (the
7679         function call could reallocate the table which was being indexed
7680         using its result). Fixes ada/4851.
7681
7682 2001-12-19  Robert Dewar <dewar@gnat.com>
7683
7684         * bindgen.adb: Minor reformatting
7685
7686         * cstand.adb: Minor reformatting
7687
7688         * fmap.adb: Minor reformatting
7689         Change name from Add for Add_To_File_Map (Add is much too generic)
7690         Change Path_Name_Of to Mapped_Path_Name
7691         Change File_Name_Of to Mapped_File_Name
7692         Fix copyright dates in header
7693
7694         * fmap.ads:
7695         Change name from Add for Add_To_File_Map (Add is much too generic)
7696         Change Path_Name_Of to Mapped_Path_Name
7697         Change File_Name_Of to Mapped_File_Name
7698         Fix copyright dates in header
7699
7700         * fname-uf.adb: Minor reformatting.  New names of stuff in Fmap.
7701         Add use clause for Fmap.
7702
7703         * make.adb: Minor reformatting
7704
7705         * osint.adb: Minor reformatting.  Change of names in Fmap.
7706         Add use clause for Fmap.
7707
7708         * prj-env.adb: Minor reformatting
7709
7710         * prj-env.ads: Minor reformatting
7711
7712         * switch.adb: Minor reformatting.  Do proper raise of Bad_Switch if
7713         error found (there were odd exceptions to this general rule in
7714         -gnatec/-gnatem processing)
7715
7716 2001-12-19  Olivier Hainque <hainque@gnat.com>
7717
7718         * raise.c (__gnat_eh_personality): Exception handling personality
7719         routine for Ada.  Still in rough state, inspired from the C++ version
7720         and still containing a bunch of debugging artifacts.
7721         (parse_lsda_header, get_ttype_entry): Local (static) helpers, also
7722         inspired from the C++ library.
7723
7724         * raise.c (eh_personality): Add comments. Part of work for the GCC 3
7725         exception handling integration.
7726
7727 2001-12-19  Arnaud Charlet <charlet@gnat.com>
7728
7729         * Makefile.in: Remove use of 5smastop.adb which is obsolete.
7730         (HIE_SOURCES): Add s-secsta.ad{s,b}.
7731         (HIE_OBJS): Add s-fat*.o
7732         (RAVEN_SOURCES): Remove files that are no longer required. Add
7733         interrupt handling files.
7734         (RAVEN_MOD): Removed, no longer needed.
7735
7736 2001-12-19  Robert Dewar <dewar@gnat.com>
7737
7738         * a-ngelfu.adb: Remove ??? comment for inappropriate Inline_Always
7739         Add 2001 to copyright date
7740
7741         * g-regpat.adb: Change pragma Inline_Always to Inline. There is no
7742         need to force universal inlining for these cases.
7743
7744 2001-12-19  Arnaud Charlet <charlet@gnat.com>
7745
7746         * s-taprob.adb: Minor clean ups so that this unit can be used in
7747         Ravenscar HI.
7748
7749         * exp_ch7.adb: Allow use of secondary stack in HI mode.
7750         Disallow it when pragma Restrictions (No_Secondary_Stack) is specified.
7751
7752 2001-12-19  Vincent Celier <celier@gnat.com>
7753
7754         * prj-tree.ads (Project_Node_Record): Add comments for components
7755         Pkg_Id and Case_Insensitive.
7756
7757 2001-12-19  Pascal Obry <obry@gnat.com>
7758
7759         * g-socket.adb: Minor reformatting. Found while reading code.
7760
7761 2001-12-19  Robert Dewar <dewar@gnat.com>
7762
7763         * prj-tree.ads: Minor reformatting
7764
7765 2001-12-20  Joseph S. Myers  <jsm28@cam.ac.uk>
7766
7767         * config-lang.in (diff_excludes): Remove.
7768
7769 2001-12-17  Ed Schonberg <schonber@gnat.com>
7770
7771         * sem_res.adb (Resolve_Selected_Component): do not generate a
7772         discriminant check if the selected component is a component of
7773         the argument of an initialization procedure.
7774
7775         * trans.c (tree_transform, case of arithmetic operators): If result
7776         type is private, the gnu_type is the base type of the full view,
7777         given that the full view itself may be a subtype.
7778
7779 2001-12-17  Robert Dewar <dewar@gnat.com>
7780
7781         * sem_res.adb: Minor reformatting
7782
7783         * trans.c (tree_transform, case N_Real_Literal): Add missing third
7784         parameter in call to Machine (unknown horrible effects from this
7785         omission).
7786
7787         * urealp.h: Add definition of Round_Even for call to Machine
7788         Add third parameter for Machine
7789
7790 2001-12-17  Ed Schonberg <schonber@gnat.com>
7791
7792         * sem_warn.adb (Check_One_Unit): Suppress warnings completely on
7793         predefined units in No_Run_Time mode.
7794
7795 2001-12-17  Richard Kenner <kenner@gnat.com>
7796
7797         * misc.c (insn-codes.h): Now include.
7798
7799 2001-12-17  Olivier Hainque <hainque@gnat.com>
7800
7801         * a-except.adb: Preparation work for future integration of the GCC 3
7802         exception handling mechanism
7803         (Notify_Handled_Exception, Notify_Unhandled_Exception): New routines
7804         to factorize previous code sequences and make them externally callable,
7805         e.g. for the Ada personality routine when the GCC 3 mechanism is used.
7806         (Propagate_Exception, Raise_Current_Excep, Raise_From_Signal_Handler):
7807         Use the new notification routines.
7808
7809 2001-12-17  Emmanuel Briot <briot@gnat.com>
7810
7811         * prj-tree.ads (First_Choice_Of): Document the when others case
7812
7813 2001-12-17  Arnaud Charlet <charlet@gnat.com>
7814
7815         * bindgen.adb (Gen_Ada_Init_*): Set priority of environment task in
7816         HI-E mode, in order to support Ravenscar profile properly.
7817
7818         * cstand.adb (Create_Standard): Duration is a 32 bit type in HI-E
7819         mode on 32 bits targets.
7820
7821 2001-12-17  Vincent Celier <celier@gnat.com>
7822
7823         * fmap.adb: Initial version.
7824
7825         * fmap.ads: Initial version.
7826
7827         * fname-uf.adb (Get_File_Name): Use mapping if unit name mapped.
7828         If search is successfully done, add to mapping.
7829
7830         * frontend.adb: Initialize the mapping if a -gnatem switch was used.
7831
7832         * make.adb:
7833         (Gnatmake): Add new local variable Mapping_File_Name.
7834          Create mapping file when using project file(s).
7835          Delete mapping file before exiting.
7836
7837         * opt.ads (Mapping_File_Name): New variable
7838
7839         * osint.adb (Find_File): Use path name found in mapping, if any.
7840
7841         * prj-env.adb (Create_Mapping_File): New procedure
7842
7843         * prj-env.ads (Create_Mapping_File): New procedure.
7844
7845         * switch.adb (Scan_Front_End_Switches): Add processing for -gnatem
7846         (Mapping_File)
7847
7848         * usage.adb: Add entry for new switch -gnatem.
7849
7850         * Makefile.in: Add dependencies for fmap.o.
7851
7852 2001-12-17  Ed Schonberg <schonber@gnat.com>
7853
7854         * sem_ch10.adb (Analyze_With_Clause): Retrieve proper entity when unit
7855         is a package instantiation rewritten as a package body.
7856         (Install_Withed_Unit): Undo previous change, now redundant.
7857
7858 2001-12-17  Gary Dismukes <dismukes@gnat.com>
7859
7860         * layout.adb:
7861         (Compute_Length): Move conversion to Unsigned to callers.
7862         (Get_Max_Size): Convert Len expression to Unsigned after calls to
7863         Compute_Length and Determine_Range.
7864         (Layout_Array_Type): Convert Len expression to Unsigned after calls to
7865         Compute_Length and Determine_Range.
7866         Above changes fix problem with length computation for supernull arrays
7867         where Max (Len, 0) wasn't getting applied due to the Unsigned
7868         conversion used by Compute_Length.
7869
7870 2001-12-17  Arnaud Charlet <charlet@gnat.com>
7871
7872         * rtsfind.ads:
7873         (OK_To_Use_In_No_Run_Time_Mode): Allow Ada.Exceptions and
7874          System.Secondary_Stack.
7875         (OK_To_Use_In_Ravenscar_Mode): New table needed to implement Ravenscar
7876          in HI-E mode.
7877         Remove unused entity RE_Exception_Data.
7878
7879         * rtsfind.adb (RTE): Allow Ravenscar Profile in HI mode.
7880
7881         * rident.ads (No_Secondary_Stack): New restriction.
7882
7883 2001-12-17  Joel Brobecker <brobecke@gnat.com>
7884
7885         * gnat_rm.texi: Fix minor typos. Found while reading the section
7886         regarding "Bit_Order Clauses" that was sent to a customer.
7887         Very interesting documentation!
7888
7889 2001-12-17  Robert Dewar <dewar@gnat.com>
7890
7891         * sem_case.adb (Choice_Image): Avoid creating improper character
7892         literal names by using the routine Set_Character_Literal_Name. This
7893         fixes bombs in certain error message cases.
7894
7895 2001-12-17  Arnaud Charlet <charlet@gnat.com>
7896
7897         * a-reatim.adb: Minor reformatting.
7898
7899 2001-12-17  Ed Schonberg <schonber@gnat.com>
7900
7901         * sem_ch12.adb (Validate_Derived_Type_Instance): Handle properly the
7902         case where the formal is an extension of another formal in the current
7903         unit or in a parent generic unit.
7904
7905 2001-12-17  Arnaud Charlet <charlet@gnat.com>
7906
7907         * s-tposen.adb: Update comments.  Minor reformatting.
7908         Minor code clean up.
7909
7910         * s-tarest.adb: Update comments.  Minor code reorganization.
7911
7912 2001-12-17  Gary Dismukes <dismukes@gnat.com>
7913
7914         * exp_attr.adb (Attribute_Tag): Suppress expansion of <type_name>'Tag
7915         when Java_VM.
7916
7917 2001-12-17  Robert Dewar <dewar@gnat.com>
7918
7919         * exp_attr.adb: Minor reformatting
7920
7921 2001-12-17  Ed Schonberg <schonber@gnat.com>
7922
7923         * sem_ch3.adb (Build_Derived_Private_Type): Refine check to handle
7924         derivations nested within a child unit: verify that the parent
7925         type is declared in an outer scope.
7926
7927 2001-12-17  Robert Dewar <dewar@gnat.com>
7928
7929         * sem_ch12.adb: Minor reformatting
7930
7931 2001-12-17  Ed Schonberg <schonber@gnat.com>
7932
7933         * sem_warn.adb (Check_One_Unit): In No_Run_Time mode, do not post
7934         warning if current unit is a predefined one, from which bodies may
7935         have been deleted.
7936
7937 2001-12-17  Robert Dewar <dewar@gnat.com>
7938
7939         * eval_fat.ads: Add comment that Round_Even is referenced in Ada code
7940         Fix header format. Add 2001 to copyright date.
7941
7942         * exp_dbug.adb (Get_Encoded_Name): Fix out of bounds reference,
7943         which caused CE during compilation if checks were enabled.
7944
7945 2001-12-17  Vincent Celier <celier@gnat.com>
7946
7947         * make.adb:
7948         (Switches_Of): New function
7949         (Test_If_Relative_Path): New procedure
7950         (Add_Switches): Use new function Switches_Of
7951         (Collect_Arguments_And_Compile): Use new function Switches_Of.
7952         When using a project file, test if there are any relative
7953         search path. Fail if there are any.
7954         (Gnatmake): Only add switches for the primary directory when not using
7955         a project file. When using a project file, change directory to the
7956         object directory of the main project file. When using a project file,
7957         test if there are any relative search path. Fail if there are any.
7958         When using a project file, fail if specified executable is relative
7959         path with directory information, and prepend executable, if not
7960         specified as an absolute path, with the exec directory.  Make sure
7961         that only one -o switch is transmitted to the linker.
7962
7963         * prj-attr.adb (Initialization_Data): Add project attribute Exec_Dir
7964
7965         * prj-nmsc.adb:
7966         (Ada_Check): Get Spec_Suffix_Loc and Impl_Suffix_Loc,
7967         when using a non standard naming scheme.
7968         (Check_Ada_Naming_Scheme): Make sure that error messages
7969         do not raise exceptions.
7970         (Is_Illegal_Append): Return True if there is no dot in the suffix.
7971         (Language_Independent_Check): Check the exec directory.
7972
7973         * prj.adb (Project_Empty): Add new component Exec_Directory
7974
7975         * prj.ads:
7976         (Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Add defaults.
7977         (Project_Data): Add component Exec_Directory
7978
7979         * snames.adb: Updated to match snames.ads revision 1.215
7980
7981         * snames.ads: Added Exec_Dir
7982
7983 2001-12-17  Robert Dewar <dewar@gnat.com>
7984
7985         * make.adb: Minor reformatting
7986
7987         * prj-nmsc.adb: Minor reformatting
7988
7989         * snames.adb: Updated to match snames.ads
7990
7991         * snames.ads: Alphebetize entries for project file
7992
7993 2001-12-17  Ed Schonberg <schonber@gnat.com>
7994
7995         * trans.c (process_freeze_entity): Do nothing if the entity is a
7996         subprogram that was already elaborated.
7997
7998 2001-12-17  Richard Kenner <kenner@gnat.com>
7999
8000         * decl.c (gnat_to_gnu_entity, object): Do not back-annotate Alignment
8001         and Esize if object is referenced via pointer.
8002
8003 2001-12-17  Ed Schonberg <schonber@gnat.com>
8004
8005         * sem_ch3.adb (Analyze_Variant_Part): check that type of discriminant
8006         is discrete before analyzing choices.
8007
8008 2001-12-17  Joel Brobecker <brobecke@gnat.com>
8009
8010         * bindgen.adb (Gen_Output_File_Ada): Generate a new C-like string
8011         containing the name of the Ada Main Program. This string is mainly
8012         intended for the debugger.
8013         (Gen_Output_File_C): Do the equivalent change when generating a C file.
8014
8015 2001-12-17  Robert Dewar <dewar@gnat.com>
8016
8017         * ali.adb: Set new Dummy_Entry field in dependency entry
8018
8019         * ali.ads: Add Dummy_Entry field to source dependency table
8020
8021         * bcheck.adb (Check_Consistency): Ignore dummy D lines
8022
8023         * lib-writ.adb (Writ_ALI): Write dummy D lines for missing source files
8024
8025         * lib-writ.ads: Document dummy D lines for missing files.
8026
8027         * types.ads: (Dummy_Time_Stamp): New value for non-existant files
8028
8029 2001-12-17  Robert Dewar <dewar@gnat.com>
8030
8031         * ali.adb: Type reference does not reset current file.
8032
8033         * ali.adb: Recognize and scan renaming reference
8034
8035         * ali.ads: Add spec for storing renaming references.
8036
8037         * lib-xref.ads: Add documentation for handling of renaming references
8038
8039         * lib-xref.adb: Implement output of renaming reference.
8040
8041         * checks.adb:
8042         (Determine_Range): Document local variables
8043         (Determine_Range): Make sure Hbound is initialized. It looks as though
8044          there could be a real problem here with an uninitialized reference
8045          to Hbound, but no actual example of failure has been found.
8046
8047 2001-12-17  Laurent Pautet <pautet@gnat.com>
8048
8049         * g-socket.ads:
8050         Fix comment of Shutdown_Socket and Close_Socket. These functions
8051         should not fail silently because if they are called twice, this
8052         probably means that there is a race condition in the user program.
8053         Anyway, this behaviour is consistent with the rest of this unit.
8054         When an error occurs, an exception is raised with the error message
8055         as exception message.
8056
8057 2001-12-17  Robert Dewar <dewar@gnat.com>
8058
8059         * frontend.adb: Move call to Check_Unused_Withs from Frontend, so
8060         that it happens before modification of Sloc values for -gnatD.
8061
8062         * gnat1drv.adb: Move call to Check_Unused_Withs to Frontend,
8063         so that it happens before modification of Sloc values for -gnatD.
8064
8065         * switch.adb: Minor reformatting
8066
8067 2001-12-15  Richard Henderson  <rth@redhat.com>
8068
8069         * sem_ch7.adb: Wrap comment.
8070
8071 2001-12-16  Joseph S. Myers  <jsm28@cam.ac.uk>
8072
8073         * 5ataprop.adb, 5atpopsp.adb, 5ftaprop.adb, 5gmastop.adb,
8074         5gtaprop.adb, 5htaprop.adb, 5itaprop.adb, 5lintman.adb,
8075         5omastop.adb, 5oosinte.adb, 5otaprop.adb, 5staprop.adb,
8076         5vinterr.adb, 5vtaprop.adb, 5vtpopde.adb, 5wintman.adb,
8077         5wtaprop.adb, 5zinterr.adb, 5ztaprop.adb, 6vcstrea.adb,
8078         7sintman.adb, 7staprop.adb, 9drpc.adb, ChangeLog, Makefile.in,
8079         a-except.adb, a-tags.ads, a-tasatt.adb, a-teioed.adb,
8080         a-textio.ads, a-witeio.ads, a-wtedit.adb, ali.ads, comperr.adb,
8081         cstand.adb, einfo.ads, errout.adb, exp_ch11.adb, exp_ch2.adb,
8082         exp_ch3.adb, exp_ch4.adb, exp_ch5.adb, exp_ch6.adb, exp_ch9.adb,
8083         exp_util.adb, exp_util.ads, fname-uf.adb, g-cgi.ads, g-exctra.ads,
8084         g-expect.ads, g-regist.adb, g-spipat.adb, gnatchop.adb,
8085         gnatlink.adb, gnatls.adb, gnatmain.adb, gnatmem.adb, init.c,
8086         make.adb, make.ads, mdlltool.adb, nlists.ads, osint.ads,
8087         par-ch3.adb, par-ch4.adb, par-ch5.adb, par-ch6.adb, par.adb,
8088         repinfo.adb, s-fatflt.ads, s-fatlfl.ads, s-fatllf.ads,
8089         s-fatsfl.ads, s-finimp.adb, s-finimp.ads, s-interr.adb,
8090         s-secsta.ads, s-shasto.ads, s-stalib.adb, s-stalib.ads,
8091         s-tarest.ads, s-tasdeb.adb, s-tassta.adb, s-tassta.ads,
8092         s-vaflop.ads, scans.ads, scn.adb, sem.ads, sem_aggr.adb,
8093         sem_attr.adb, sem_case.ads, sem_ch10.adb, sem_ch12.adb,
8094         sem_ch13.adb, sem_ch3.adb, sem_ch3.ads, sem_ch5.adb, sem_ch7.adb,
8095         sem_ch8.adb, sem_ch8.ads, sem_type.adb, sem_util.ads, sinfo.ads,
8096         sprint.adb, tbuild.ads, types.ads, utils.c, xeinfo.adb: Fix
8097         spelling errors.
8098
8099 2001-12-14  Vincent Celier <celier@gnat.com>
8100
8101         * osint.adb(Create_Debug_File): When an object file is specified,
8102         put the .dg file in the same directory as the object file.
8103
8104 2001-12-14  Robert Dewar <dewar@gnat.com>
8105
8106         * osint.adb: Minor reformatting
8107
8108         * lib-xref.adb (Output_Instantiation): New procedure to generate
8109         instantiation references.
8110
8111         * lib-xref.ads: Add documentation of handling of generic references.
8112
8113         * ali.adb (Read_Instantiation_Ref): New procedure to read
8114         instantiation references
8115
8116         * ali.ads: Add spec for storing instantiation references
8117
8118         * bindusg.adb: Minor reformatting
8119
8120         * switch.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
8121
8122         * usage.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
8123
8124         * gnatcmd.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
8125
8126         * csets.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
8127
8128         * csets.ads:
8129         Fix header format
8130         Add 2001 to copyright date
8131         Add entry for Latin-5 (Cyrillic ISO-8859-5)
8132
8133 2001-12-14  Matt Gingell <gingell@gnat.com>
8134
8135         * adaint.c: mktemp is a macro on Lynx and can not be used as an
8136         expression.
8137
8138 2001-12-14  Richard Kenner <kenner@gnat.com>
8139
8140         * misc.c (gnat_expand_constant): Do not strip UNCHECKED_CONVERT_EXPR
8141         if operand is CONSTRUCTOR.
8142
8143 2001-12-14  Ed Schonberg <schonber@gnat.com>
8144
8145         * trans.c (tree_transform, case N_Assignment_Statement): Set lineno
8146         before emiting check on right-hand side, so that exception information
8147         is correct.
8148
8149 2001-12-14  Richard Kenner <kenner@gnat.com>
8150
8151         * utils.c (create_var_decl): Throw away initializing expression
8152         if just annotating types and non-constant.
8153
8154 2001-12-14  Vincent Celier <celier@gnat.com>
8155
8156         * prj-nmsc.adb: (Ada_Check): Migrate drom Ada_Default_... to
8157         Default_Ada_...
8158
8159         * prj.adb: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
8160         Remove functions.
8161         (Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Move to spec.
8162
8163         * prj.ads: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
8164         Remove functions.
8165         (Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Move from body.
8166
8167 2001-12-16  Joseph S. Myers  <jsm28@cam.ac.uk>
8168
8169         * ChangeLog: Remove piece of diff output.
8170
8171 2001-12-14  Geert Bosch <bosch@gnat.com>
8172
8173         * config-lang.in: Update copyright notice
8174
8175         * layout.adb: Remove commented out code.
8176
8177         * mdllfile.ads: Update copyright notice. Fix header format.
8178
8179         * sem_case.ads: Likewise.
8180
8181         * sem_ch3.adb: Minor reformatting.
8182
8183 2001-12-12  Geert Bosch <bosch@gnat.com>
8184
8185         * freeze.ads: Update copyright date.
8186
8187         * g-comlin.ads: Minor reformatting.
8188
8189         * gnat-style.texi: Fix typo.
8190
8191 2001-12-12  Geert Bosch <bosch@gnat.com>
8192
8193         *  einfo.h: Regenerate.
8194
8195 2001-12-12  Ed Schonberg <schonber@gnat.com>
8196
8197         * sem_ch12.adb (Save_Entity_Descendant): Use syntactic field names
8198         on known node types, rather than untyped fields. Further cleanups.
8199
8200 2001-12-12  Robert Dewar <dewar@gnat.com>
8201
8202         * sem_ch12.adb:
8203         (Save_Entity_Descendant): Minor comment update.
8204         (Copy_Generic_Node): Deal with incorrect reference to Associated_Node
8205          of an N_Attribute_Reference node. As per note below, this does not
8206         eliminate need for Associated_Node in attribute ref nodes.
8207         (Associated_Node): Documentation explicitly mentions attribute
8208         reference nodes, since this field is used in such nodes.
8209
8210         * sem_ch12.adb (Associated_Node): Minor documentation cleanup.
8211
8212 2001-12-12  Robert Dewar <dewar@gnat.com>
8213
8214         * s-stalib.adb: Add more comments on with statements being needed
8215
8216         * par-ch12.adb: Minor reformatting
8217
8218         * prj-dect.ads: Fix copyright header
8219
8220         * s-arit64.adb (Multiply_With_Ovflo_Check): Fix case where both
8221         inputs fit in 32 bits, but the result still overflows.
8222
8223         * s-fatgen.ads: Minor comment improvement
8224
8225 2001-12-12  Ed Schonberg <schonber@gnat.com>
8226
8227         * sem_ch4.adb (Analyze_Selected_Component): If the prefix is of a
8228         formal derived type, look for an inherited component from the full
8229         view of the parent, if any.
8230
8231 2001-12-12  Robert Dewar <dewar@gnat.com>
8232
8233         * checks.ads (Apply_Alignment_Check): New procedure.
8234
8235         * exp_ch13.adb (Expand_N_Freeze_Entity): Generate dynamic check to
8236         ensure that the alignment of objects with address clauses is
8237         appropriate, and raise PE if not.
8238
8239         * exp_util.ads (Must_Be_Aligned): Removed, replaced by
8240         Exp_Pakd.Known_Aligned_Enough
8241
8242         * mdllfile.ads: Minor reformatting
8243
8244         * mlib-fil.ads: Minor reformatting
8245
8246 2001-12-12  Ed Schonberg <schonber@gnat.com>
8247
8248         * exp_ch8.adb (Expand_N_Object_Renaming_Declaration): Extend previous
8249         fix to any component reference if enclosing record has non-standard
8250         representation.
8251
8252 2001-12-12  Vincent Celier <celier@gnat.com>
8253
8254         * g-dirope.ads (Find, Wildcard_Iterator): Moved to child package
8255         Iteration
8256
8257 2001-12-12  Ed Schonberg <schonber@gnat.com>
8258
8259         * freeze.ads: Make Freeze_Fixed_Point_Type visible, for use in
8260         sem_attr.
8261
8262 2001-12-12  Robert Dewar <dewar@gnat.com>
8263
8264         * impunit.adb: Add entry for GNAT.Directory_Operations.Iteration
8265
8266 2001-12-12  Emmanuel Briot <briot@gnat.com>
8267
8268         * g-regexp.adb: Remove all debug code, since it isn't required anymore,
8269         and it adds dependencies to system.io.
8270
8271 2001-12-12  Pascal Obry <obry@gnat.com>
8272
8273         * g-dirope.adb (Expand_Path.Var): Correctly detect end of
8274         variable name.
8275
8276 2001-12-11  Ed Schonberg <schonber@gnat.com>
8277
8278         * sem_ch10.adb (Install_Withed_Unit): If the unit is a generic instance
8279         that is the parent of other generics, the instance body replaces the
8280         instance node.  Retrieve the instance of the spec, which is the one
8281         that is visible in clients and within the body.
8282
8283 2001-12-11  Vincent Celier <celier@gnat.com>
8284
8285         * gnatmain.adb: Initial version.
8286
8287         * gnatmain.ads: Initial version.
8288
8289         * prj-attr.adb (Initialisation_Data): Add package Gnatstub.
8290
8291         * snames.adb: Updated to match snames.ads.
8292
8293         * snames.ads: Added Gnatstub.
8294
8295 2001-12-11  Vincent Celier <celier@gnat.com>
8296
8297         * prj-attr.adb (Initialization_Data): Change name from
8298         Initialisation_Data.
8299
8300 2001-12-11  Emmanuel Briot <briot@gnat.com>
8301
8302         * g-regpat.adb (Parse_Literal): Properly handle simple operators ?,
8303         + and * applied to backslashed expressions like \r.
8304
8305 2001-12-11  Vasiliy Fofanov <fofanov@gnat.com>
8306
8307         * g-os_lib.ads: String_List type added, Argument_List type is now
8308         subtype of String_List.
8309
8310 2001-12-11  Robert Dewar <dewar@gnat.com>
8311
8312         * g-os_lib.ads: Change copyright to FSF
8313         Add comments for String_List type
8314
8315 2001-12-11  Vincent Celier <celier@gnat.com>
8316
8317         * g-dirope.adb (Expand_Path): Fix bug. (wrong length when adding a
8318         string to the buffer).
8319
8320 2001-12-11  Ed Schonberg <schonber@gnat.com>
8321
8322         * freeze.adb: Make Freeze_Fixed_Point_Type visible, for use in
8323         sem_attr.
8324
8325         * sem_attr.adb: Simplify previous fix for Address.
8326         (Set_Bounds): If prefix is a non-frozen fixed-point type, freeze now,
8327         to avoid anomalies where the bound of the type appears to raise
8328         constraint error.
8329
8330 2001-12-11  Robert Dewar <dewar@gnat.com>
8331
8332         * lib-xref.adb (Output_Refs): Make sure pointers are always properly
8333         handled.
8334
8335 2001-12-11  Ed Schonberg <schonber@gnat.com>
8336
8337         * sem_ch12.adb (Analyze_Subprogram_Instantiation): Check for a
8338         renamed unit before checking for recursive instantiations.
8339
8340 2001-12-11  Emmanuel Briot <briot@gnat.com>
8341
8342         * prj.ads: Add comments for some of the fields.
8343
8344 2001-12-11  Robert Dewar <dewar@gnat.com>
8345
8346         * lib-xref.adb (Output_Refs): Don't output type references outside
8347         the main unit if they are not otherwise referenced.
8348
8349 2001-12-11  Ed Schonberg <schonber@gnat.com>
8350
8351         * sem_attr.adb (Analyze_attribute, case Address and Size): Simplify
8352         code and diagnose additional illegal uses
8353
8354         * sem_util.adb (Is_Object_Reference): An indexed component is an
8355         object only if the prefix is.
8356
8357 2001-12-11  Vincent Celier <celier@gnat.com>
8358
8359         * g-diopit.adb: Initial version.
8360
8361         * g-diopit.ads: Initial version.
8362
8363         * g-dirope.adb:
8364         (Expand_Path): Avoid use of Unbounded_String
8365         (Find, Wildcard_Iterator): Moved to child package Iteration
8366
8367         * Makefile.in: Added g-diopit.o to GNATRTL_NONTASKING_OBJS
8368
8369 2001-12-11  Robert Dewar <dewar@gnat.com>
8370
8371         * sem_attr.adb: Minor reformatting
8372
8373 2001-12-11  Ed Schonberg <schonber@gnat.com>
8374
8375         * sem_ch3.adb: Clarify some ???.
8376
8377 2001-12-11  Robert Dewar <dewar@gnat.com>
8378
8379         * exp_util.adb (Must_Be_Aligned): Removed, replaced by
8380         Exp_Pakd.Known_Aligned_Enough
8381
8382         * sem_ch13.adb (Check_Address_Alignment): Removed, extended
8383         version is moved to Exp_Ch13.
8384
8385 2001-12-11  Robert Dewar <dewar@gnat.com>
8386
8387         * einfo.ads: Minor reformatting
8388
8389         * exp_ch5.adb: Add comment for previous.change
8390
8391         * ali.adb: New interface for extended typeref stuff.
8392
8393         * ali.ads: New interface for typeref stuff.
8394
8395         * checks.adb (Apply_Alignment_Check): New procedure.
8396
8397         * debug.adb: Add -gnatdM for modified ALI output
8398
8399         * exp_pakd.adb (Known_Aligned_Enough): Replaces Known_Aligned_Enough.
8400
8401         * lib-xref.adb: Extend generation of <..> notation to cover
8402         subtype/object types. Note that this is a complete rewrite,
8403         getting rid of the very nasty quadratic algorithm previously
8404         used for derived type output.
8405
8406         * lib-xref.ads: Extend description of <..> notation to cover
8407         subtype/object types. Uses {..} for these other cases.
8408         Also use (..) for pointer types.
8409
8410         * sem_util.adb (Check_Potentially_Blocking_Operation): Slight cleanup.
8411
8412         * exp_pakd.adb: Minor reformatting.  Note that prevous RH should say:
8413         (Known_Aligned_Enough): Replaces Must_Be_Aligned.
8414
8415 2001-12-11  Vincent Celier <celier@gnat.com>
8416
8417         * gnatcmd.adb:
8418         Changed /COMPILE_ONLY to /ACTIONS=COMPILE
8419         Changed /BIND_ONLY to /ACTIONS=BIND
8420         Changed /LINK_ONLY to /ACTIONS=LINK
8421
8422 2001-12-11  Ed Schonberg  <schonber@gnat.com>
8423
8424         * sem_ch8.adb (Find_Selected_Component): improved search for a
8425         candidate package in case of error.
8426
8427         * sem_ch12.adb (Inline_Instance_Body): place head of use_clause
8428         chain back on scope stack before reinstalling use clauses.
8429
8430         * exp_ch5.adb (Expand_N_If_Statement): if Constant_Condition_Warnings
8431         is enabled, do not kill the code for the condition, to preserve
8432         warning.
8433
8434 2001-12-11  Robert Dewar <dewar@gnat.com>
8435
8436         * checks.adb (Insert_Valid_Check): Apply validity check to expression
8437         of conversion, not to result of conversion.
8438
8439 2001-12-11  Ed Schonberg <schonber@gnat.com>
8440
8441         * sem_ch3.adb (Build_Derived_Record_Type): set Controlled flag
8442         before freezing parent. If the declarations are mutually recursive,
8443         an access to the current record type may be frozen before the
8444         derivation is complete.
8445
8446 2001-12-05  Vincent Celier <celier@gnat.com>
8447
8448         * gnatcmd.adb: (MAKE): Add new translations: -b /BIND_ONLY,
8449         -c /COMPILE_ONLY, -l /LINK_ONLY
8450
8451         * opt.ads:
8452         (Bind_Only): New Flag
8453         (Link_Only): New flag
8454
8455         * switch.adb (Scan_Make_Switches): Add processing for -b (Bind_Only)
8456         and -l (Link_Only)
8457
8458         * makeusg.adb: Add new switches -b and -l. Update Copyright notice.
8459
8460         * make.adb:
8461         (Do_Compile_Step, Do_Bind_Step, Do_Link_Step): New flags.
8462         (Gnatmake): Set the step flags. Only perform a step if the
8463         corresponding step flag is True.
8464         (Scan_Make_Arg): Reset the bind and link step flags when -u
8465         or -gnatc has been specified.
8466
8467 2001-12-05  Ed Schonberg <schonber@gnat.com>
8468
8469         * sem_eval.adb (Eval_Concatenation): If left operand is a null string,
8470         get bounds from right operand.
8471
8472         * sem_eval.adb: Minor reformatting
8473
8474         * exp_util.adb (Make_Literal_Range): use bound of literal rather
8475         than Index'First, its lower bound may be different from 1.
8476
8477         * exp_util.adb: Undo earlier change, fixes ACVC regressions C48009B
8478         and C48009J
8479
8480 2001-12-05  Vincent Celier <celier@gnat.com>
8481
8482         * prj-nmsc.adb Minor reformatting
8483
8484         * prj-nmsc.adb (Language_Independent_Check): Reset Library flag if
8485         set and libraries are not supported.
8486
8487 2001-12-05  Ed Schonberg <schonber@gnat.com>
8488
8489         * sem_ch3.adb (Build_Derived_Private_Type): set Public status of
8490         private view explicitly, so the back-end can treat as a global
8491         when appropriate.
8492
8493 2001-12-05  Ed Schonberg <schonber@gnat.com>
8494
8495         * sem_ch12.adb (Instantiate_Package_Body): if instance is a compilation
8496          unit, always replace instance node with new body, for ASIS use.
8497
8498 2001-12-05  Vincent Celier <celier@gnat.com>
8499
8500         * prj-nmsc.adb (Language_Independent_Check): Issue a warning if
8501         libraries are not supported and both attributes Library_Name and
8502         Library_Dir are specified.
8503
8504         * prj-proc.adb (Expression): Set location of Result to location of
8505         first term.
8506
8507         * Makefile.in: Add mlib.o, mlib-fil.o, mlib-tgt and mlib-utl to GNATLS.
8508         (prj-nmsc is now importing MLib.Tgt)
8509
8510         * prj-proc.adb: Put the change indicated above that was forgotten.
8511
8512 2001-12-05  Robert Dewar <dewar@gnat.com>
8513
8514         * Makefile.in: Add dependencies for System.IO for GNAT.Regexp
8515
8516 2001-12-05  Ed Schonberg <schonber@gnat.com>
8517
8518         * sem_ch3.adb (Build_Derived_Concurrent_Type): If derivation imposes a
8519         constraint, introduce explicit subtype declaration and derive from it.
8520
8521         * sem_ch3.adb: Minor reformatting
8522
8523 2001-12-05  Robert Dewar <dewar@gnat.com>
8524
8525         * checks.adb (Determine_Range): Increase cache size for checks.
8526         Minor reformatting
8527
8528         * exp_ch6.adb: Minor reformatting
8529         (Expand_N_Subprogram_Body): Reset Is_Pure for any subprogram that has
8530         a parameter whose root type is System.Address, since treating such
8531         subprograms as pure in the code generator is almost surely a mistake
8532         that will lead to unexpected results.
8533
8534         * exp_util.adb (Remove_Side_Effects): Clean up old ??? comment and
8535         change handling of conversions.
8536
8537         * g-regexp.adb: Use System.IO instead of Ada.Text_IO.
8538
8539 2001-12-05  Ed Schonberg <schonber@gnat.com>
8540
8541         * sem_ch3.adb (Analyze_Object_Declaration): If expression is an
8542         aggregate with static wrong size, attach generated Raise node to
8543         declaration.
8544
8545 2001-12-05  Robert Dewar <dewar@gnat.com>
8546
8547         * sem_attr.adb (Analyze_Attribute): Defend against bad Val attribute.
8548         Fixes compilation abandoned bomb in B24009B.
8549
8550 2001-12-05  Ed Schonberg <schonber@gnat.com>
8551
8552         * sem_ch12.adb:
8553         Document use of Associated_Node on Selected_Components.
8554         (Save_Global_Operand_Descendants): Change to Save_Entity_Descendants,
8555         to clarify use of untyped descendant fields.
8556
8557 2001-12-05  Robert Dewar <dewar@gnat.com>
8558
8559         * prj-dect.ads: Add ??? comment
8560         Add 2001 to copyright notice (was not done in after all)
8561
8562         * prj-part.adb: Minor reformatting. Reword one awkward error message.
8563
8564         * prj.ads: Minor reformatting throughout, and add some ??? comments
8565
8566         * snames.ads: Minor reformatting
8567
8568 2001-12-05  Geert Bosch <bosch@gnat.com>
8569
8570         * snames.adb: Autoupdate
8571
8572 2001-12-05  Vincent Celier <celier@gnat.com>
8573
8574         * prj-dect.adb (Parse): Rename parameter Modifying to Extends.
8575
8576         * prj-dect.ads (Parse): Rename parameter Modifying to Extends.
8577
8578         * prj-env.adb: Minor comment changes (modifying -> extends).
8579
8580         * prj-nmsc.adb: Minor comment changes (modifying -> extends).
8581
8582         * prj-part.adb (Parse_Single_Project): Change Tok_Modifying to
8583         Tok_Extends.
8584
8585         * prj.adb (Initialize): Change Modifying to Extends.
8586
8587         * scans.ads (Token_Type): Change Tok_Modifying to Tok_Extends.
8588
8589         * prj.ads: Minor comment change (Modifying -> extending).
8590
8591         * snames.ads: Change modifying to extends.
8592
8593 2001-12-05  Robert Dewar <dewar@gnat.com>
8594
8595         * sem_warn.adb: Remove stuff for conditionals, we are not going to
8596         do this after all.
8597
8598         * sem_warn.ads: Remove stuff for conditionals, we are not going to
8599         do this after all.  Add 2001 to copyright notice
8600
8601 2001-12-04  Geert Bosch <bosch@gnat.com>
8602
8603         *  einfo.h, sinfo.h, treeprs.ads: Regenerate.
8604
8605 2001-12-04  Robert Dewar <dewar@gnat.com>
8606
8607         * errout.adb (Error_Msg): Ignore attempt to put error msg at junk
8608         location if we already have errors. Stops some cases of cascaded
8609         errors.
8610
8611         * errout.adb: Improve comment.
8612
8613 2001-12-04  Robert Dewar <dewar@gnat.com>
8614
8615         * sem_ch12.adb:
8616         (Analyze_Formal_Type_Definition): Defend against Error.
8617         (Analyze_Formal_Subprogram): Defend against Error.
8618
8619         * par-ch12.adb (F_Formal_Type_Declaration): In case of error,
8620         remove following semicolon if present. Removes cascaded error.
8621
8622 2001-12-04  Douglas B. Rupp <rupp@gnat.com>
8623
8624         * bindgen.adb:
8625         (Gen_Exception_Table_Ada): Write "begin" and then return if Num
8626          exceptions equals 0.
8627         (Gen_Exception_Table_C): Return if Num exceptions equals 0.
8628         Fixes PIWG E tests (which have to be run with -gnatL).
8629
8630 2001-12-04  Robert Dewar <dewar@gnat.com>
8631
8632         * einfo.ads: Minor reformatting
8633
8634 2001-12-04  Ed Schonberg <schonber@gnat.com>
8635
8636         * einfo.ads: Block_Node points to the identifier of the block, not to
8637         the block node itself, to preserve the link when the block is
8638         rewritten, e.g. within an if-statement with a static condition.
8639
8640         * inline.adb (Cleanup_Scopes): recover block statement from block
8641         entity using new meaning of Block_Node.
8642
8643         * sem_ch5.adb (Analyze_Block_Statement): set Block_Node to point to
8644         identifier of block node, rather than to node itself.
8645
8646 2001-12-04  Gary Dismukes <dismukes@gnat.com>
8647
8648         * layout.adb:
8649         (Get_Max_Size): Fix "start of processing" comment to say Get_Max_Size.
8650         (Discrimify): Go back to setting the Etypes of the selected component
8651         because the Vname component does not exist at this point and will
8652         fail name resolution. Also set Analyzed.
8653         Remove with and use of Sem_Res.
8654
8655 2001-12-04  Arnaud Charlet <charlet@gnat.com>
8656
8657         * Makefile.in: (HIE_SOURCES): add s-fat*.
8658
8659 2001-12-04  Robert Dewar <dewar@gnat.com>
8660
8661         * sem_attr.adb:
8662         (Compile_Time_Known_Attribute): New procedure.
8663         (Eval_Attribute, case Size): Use Compile_Time_Known_Attribute to ensure
8664          proper range check.
8665
8666 2001-12-04  Ed Schonberg <schonber@gnat.com>
8667
8668         * sem_ch7.adb (New_Private_Type): Set Is_Tagged_Type flag before
8669         processing discriminants to diagnose illegal default values.
8670
8671 2001-12-04  Ed Schonberg <schonber@gnat.com>
8672
8673         * sem_attr.adb (Resolve_Attribute): Handle properly an non-classwide
8674         access discriminant within a type extension that constrains its
8675         parent discriminants.
8676
8677 2001-12-04  Ed Schonberg <schonber@gnat.com>
8678
8679         * sem_ch3.adb (Find_Type_Of_Subtype_Indic): If subtype indication
8680         is malformed, use instance of Any_Id to allow analysis to proceed.
8681
8682         * par-ch12.adb (P_Formal_Type_Declaration): Propagate Error if
8683         type definition is illegal.
8684         (P_Formal_Derived_Type_Definition): Better recovery when TAGGED is
8685         misplaced.
8686
8687 2001-12-04  Ed Schonberg <schonber@gnat.com>
8688
8689         * sem_warn.adb (Output_Unreferenced_Messages): Extend previous fix to
8690         constants.
8691
8692 2001-12-04  Robert Dewar <dewar@gnat.com>
8693
8694         * errout.adb: Minor reformatting
8695
8696 2001-12-04  Robert Dewar <dewar@gnat.com>
8697
8698         * exp_util.adb: Minor reformatting from last change
8699
8700         * errout.adb (Check_For_Warning): For a Raised_Constraint_Error node
8701         which is a rewriting of an expression, traverse the original
8702         expression to remove warnings that may have been posted on it.
8703
8704 2001-12-04  Ed Schonberg <schonber@gnat.com>
8705
8706         * exp_util.adb (Must_Be_Aligned): Return false for a component of a
8707         record that has other packed components.
8708
8709 2001-12-04  Douglass B. Rupp <rupp@gnat.com>
8710
8711         * adaint.c: Minor cleanups.
8712
8713 2001-12-04  Douglass B. Rupp <rupp@gnat.com>
8714
8715         * adaint.c: Do not use utime.h on vxworks.
8716
8717 2001-12-04  Arnaud Charlet <charlet@gnat.com>
8718
8719         * Makefile.adalib: Clarify step 3 (use of gnat.adc) as it causes
8720         more confusion than it solves.
8721
8722 2001-12-04  Geert bosch <bosch@gnat.com>
8723
8724         * einfo.h, nmake.adb, nmake.ads, sinfo.h treeprs.ads: Regenerate.
8725
8726 2001-12-04  Geert Bosch  <bosch@gnat.com>
8727
8728         * Makefile.in (update-sources): New target.
8729         For use by gcc_release script.
8730
8731 2001-12-04  Ed Schonberg <schonber@gnat.com>
8732
8733         * sem_prag.adb (Analyze_Pragma, case Validity_Checks): do not treat as
8734         a configuration pragma, it is now legal wherever a pragma can appear.
8735
8736 2001-12-04  Zack Weinberg  <zack@codesourcery.com>
8737
8738         * Makefile.in: Don't set ALL.  Delete @cross_defines@,
8739         @cross_overrides@, @build_overrides@ stanzas.  INTERNAL_CFLAGS
8740         is now @CROSS@ -DIN_GCC; update comment.
8741
8742 2001-12-04  Robert Dewar <dewar@gnat.com>
8743
8744         * einfo.adb (Has_Pragma_Pure_Function): New flag.
8745         Fix problem that stopped ceinfo from working
8746
8747         * einfo.ads (Has_Pragma_Pure_Function): New flag.
8748
8749         * sem_prag.adb (Pure_Function): Set new flag Has_Pragma_Pure_Function.
8750
8751 2001-12-04  Douglas B. Rupp <rupp@gnat.com>
8752
8753         * gnatchop.adb:
8754         (File_Time_Stamp): New procedure.
8755         (Preserve_Mode): New boolean.
8756         (Write_Unit): Pass time stamp.
8757         Implement -p switch (preserve time stamps).
8758
8759         * gnatcmd.adb (CHOP): Add translation for -p (/PRESERVE).
8760
8761         * gnatchop.adb: Do usage info for -p switch
8762
8763         * adaint.h (__gnat_set_file_time_name): New function
8764
8765         * adaint.c (__gnat_set_file_time_name): Implement
8766
8767         * adaint.h: Fix typo
8768
8769 2001-12-03  Robert Dewar <dewar@gnat.com>
8770
8771         * sinfo.ads: Minor reformatting. N_Freeze_Entity node does not
8772         have Associated_Node.
8773
8774 2001-12-03  Robert Dewar <dewar@gnat.com>
8775
8776         * prj-proc.adb: Minor reformatting
8777
8778         * make.adb: Minor reformatting
8779
8780 2001-12-03  Geert Bosch <bosch@gnat.com>
8781
8782         * make.adb: Minor reformatting.
8783
8784 2001-12-03 Robert Dewar  <dewar@gnat.com>
8785
8786         * sem_ch12.adb: Minor reformatting
8787
8788 2001-12-03  Ed Schonberg <schonber@gnat.com>
8789
8790         * sem_ch12.adb (Inline_Instance_Body): Use Save_Scope_Stack and
8791         push Standard on the stack before analyzing the instance body,
8792         in order to have a clean visibility environment.
8793
8794         * sem_ch12.adb (Inline_Instance_Body): Remove redundant code.
8795
8796 2001-12-03  Ed Schonberg <schonber@gnat.com>
8797
8798         * sem_ch12.adb (Instantiate_Package_Body): Protect against double
8799         instantiation of a body that contains an inlined body.
8800
8801 2001-12-03  Ed Schonberg <schonber@gnat.com>
8802
8803         * sem_ch12.adb:
8804         (Analyze_generic_subprogram_Declaration): Set outer_generic_scope,
8805         to prevent freezing within formal packages.
8806         (Freeze_Subprogram_Body): If body comes from another instance that
8807         appeared before its own body, place freeze node at end of current
8808         declarative part, to prevent a back-end crash.
8809         (Inline_Instance_Body): Handle properly a package instance within
8810         a subprogram instance that is a child unit.
8811
8812 2001-12-01  Graham Stott  <grahams@redhat.com>
8813
8814         * Makefile.in (misc.o): Add missing $(srcdir) prefix
8815         and add optabs.h dependency.
8816
8817         * misc.c: Include optabs.h
8818         (gnat_tree_code_type): Make static and const.
8819         (gnat_tree_code_length): Likewise.
8820         (gnat_tree_code_name): Likewise.
8821         (update_setjmp_buf): Obtain operands mode from insn_data.
8822
8823 2001-11-29  Richard Henderson  <rth@redhat.com>
8824
8825         * init.c: Remove obsolete dwarf2 frame.h section.
8826
8827 2001-11-29  Joseph S. Myers  <jsm28@cam.ac.uk>
8828
8829         * Make-lang.in (ada.generated-manpages): New dummy target.
8830
8831 2001-11-29  Ed Schonberg <schonber@gnat.com>
8832
8833         * g-os_lib.adb (Add_To_Command): use explicit loop to move string
8834         into Command, an array conversion is illegal here. Uncovered by
8835         ACATS B460005.
8836
8837 2001/11/28  Geert Bosch <bosch@gnat.com>
8838
8839         * init.c: Minor whitespace changes.
8840
8841 2001-11-28  Doug Rupp <rupp@gnat.com>
8842
8843         * init.c: (__gnat_install_handler,VMS): Increase size of alternate
8844         signal stack.
8845
8846 2001-11-28  Zack Weinberg  <zack@codesourcery.com>
8847
8848         * misc.c (gnat_expand_constant): Move declaration above
8849         definition of lang_hooks.
8850         (LANG_HOOKS_EXPAND_CONSTANT): Set to gnat_expand_constant.
8851         (gnat_init): lang_expand_constant no longer exists.
8852
8853         (internal_error_function): Remove #ifdef HAVE_VPRINTF.  We
8854         always have vprintf.
8855         (gnat_init): Always call set_internal_error_function.
8856
8857 2001-11-27  Andreas Jaeger  <aj@suse.de>
8858
8859         * Makefile.in (stamp-tool_src_dir): Use symbolic link.
8860
8861 2001-11-27  Laurent Guerby  <guerby@acm.org>
8862
8863         * Makefile.in: Regenerate Ada dependencies.
8864
8865 2001-11-26  Richard Henderson  <rth@redhat.com>
8866
8867         * Make-lang.in (gnatbind, gnatmake, gnatbl, gnatchop, gnatcmd,
8868         gnatlink, gnatkr, gnatls, gnatmem, gnatprep, gnatpsta, gnatpsys,
8869         gnatxref, gnatfind, gnatlbr): Depend on CONFIG_H and prefix.o.
8870
8871 2001-11-25  Laurent Guerby  <guerby@acm.org>
8872
8873         * sysdep.c (rts_get_*): Fix style.
8874
8875 2001-11-19  Laurent Guerby  <guerby@acm.org>
8876
8877         * Makefile.in (INCLUDES_FOR_SUBDIR): Remove redundant system include
8878         since it is of no apparent use and cause warnings.
8879
8880 2001-11-18  Neil Booth  <neil@daikokuya.demon.co.uk>
8881
8882         * misc.c (gnat_decode_option, gnat_init_options): Make definitions
8883         static too.
8884         (gnat_init): Don't return NULL.
8885         (finish_parse): Remove.
8886
8887 2001-11-17  Laurent Guerby  <guerby@acm.org>
8888
8889         * Make-lang.in (GNATLIBFLAGS): Add -W -Wall.
8890         * gigi.h (init_decl_processing): Rename to gnat_init_decl_processing.
8891         * io-aux.c: Provide K&R prototypes to all functions, reformat code.
8892         * lang-spec.h: Add missing struct field to silence warnings.
8893         * sysdep.c (rts_get_*): Provide K&R prototype.
8894         * sysdep.c (Unlock_Task, Lock_Task): Move to K&R prototype.
8895         * traceback.c (Unlock_Task, Lock_Task): Likewise.
8896         * tracebak.c (__gnat_backtrace): Remove unused variable.
8897         * utils.c (end_subprog_body): Move to K&R style.
8898
8899 Thu Nov 15 18:16:17 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
8900
8901         * trans.c, utils2.c: Remove PALIGN parameter to get_inner_reference.
8902
8903 2001-11-15  Neil Booth  <neil@daikokuya.demon.co.uk>
8904
8905         * misc.c (gnat_init): Change prototype.  Include the
8906         functionality of the old init_parse and init_decl_processing.
8907         (gnat_init_decl_processing): New prototype.
8908         (init_parse): Remove.
8909         * utils.c (init_decl_processing): Rename gnat_init_decl_processing.
8910
8911 2001-11-09  Neil Booth  <neil@daikokuya.demon.co.uk>
8912
8913         * misc.c (gnat_print_decl, gnat_print_type): Renamed.
8914         (LANG_HOOKS_PRINT_DECL, LANG_HOOKS_PRINT_TYPE): Override.
8915         (print_lang_statistics, lang_print_xnode, print_lang_identifier,
8916         set_yydebug): Remove.
8917
8918 2001-11-09  Neil Booth  <neil@daikokuya.demon.co.uk>
8919
8920         * misc.c (LANG_HOOKS_NAME, LANG_HOOKS_IDENTIFIER_SIZE): Override.
8921         (struct lang_hooks): Constify.
8922         (language_string, lang_identify): Remove.
8923         * utils.c (init_decl_processing): Update.
8924
8925 2001-11-06  Neil Booth  <neil@cat.daikokuya.demon.co.uk>
8926
8927         * misc.c: Include langhooks-def.h.
8928         * Makefile.in: Update.
8929
8930 2001-10-30  Robert Dewar <dewar@gnat.com>
8931
8932         * style.adb:
8933         (Check_Identifier): Rewrite circuit to be compatible with use of letters
8934         in the upper half of ASCII.
8935         (Check_Identifier): Minor reformatting
8936
8937 2001-10-30  Geert Bosch <bosch@gnat.com>
8938
8939         * (Associated_Node, Set_Associated_Node): Do not check for
8940         Freeze_Entity.
8941
8942 2001-10-30  Robert Dewar <dewar@gnat.com>
8943
8944         * a-reatim.ads: Minor reformatting
8945
8946 2001-10-30  Robert Dewar <dewar@gnat.com>
8947
8948         * gnatdll.adb: Minor reformatting throughout. Many ??? added for
8949         undocumented declarations.
8950
8951 2001-10-30  Pascal Obry <obry@gnat.com>
8952
8953         * gnatdll.adb (Parse_Command_Line): handle -g option to be passed
8954         to the binder and linker.
8955         Minor style fix.
8956
8957         * mdll.ads: Fix layout.  Update copyright notice.
8958
8959         * mdll.adb: Fix layout.  Update copyright notice.
8960
8961 2001-10-30  Robert Dewar <dewar@gnat.com>
8962
8963         * usage.adb: Minor fix to output for -gnaty.
8964
8965 2001-10-30  Ed Schonberg <schonber@gnat.com>
8966
8967         * a-reatim.ads: Makes Seconds_Count into a 64-bit integer,
8968         to accommodate all its possible values.
8969
8970         * a-reatim.adb (Split): Special-case handling of Time_Span_First
8971         and of small absolute values of T.
8972
8973 2001-10-30  Richard Kenner <kenner@gnat.com>
8974
8975         * misc.c (gnat_expand_expr, case NULL_EXPR): Remove call to
8976         set_mem_attributes since not needed and wrong if RESULT if a REG;
8977         fixes ACATS failures.
8978
8979 2001-10-30  Geert Bosch <bosch@gnat.com>
8980
8981         * 86numaux.adb, a-tigeau.ads, a-wtgeau.ads, fname-sf.ads, g-traceb.ads,
8982         s-tasdeb.ads, sem_maps.ads: Add 2001 to copyright notice.
8983
8984 2001-10-30  Robert Dewar <dewar@gnat.com>
8985
8986         * bindusg.adb: Undocument -f switch.
8987
8988         * gnatcmd.adb: Remove /FULL_ELABORATION.
8989
8990         * opt.ads (Force_RM_Elaboration_Order): Document that this is
8991         obsolescent.
8992
8993         * gnatbind.adb: Output new warning for use of obsolescent -f switch.
8994
8995         * gnatbind.adb: Minor update of warning msg.
8996
8997 2001-10-30  Vincent Celier <celier@gnat.com>
8998
8999         * gnatcmd.adb (MAKE, BIND, LINK, LIST, FIND, XREF): Add translations
9000         for project file switches (-P (/PROJECT_FILE=),
9001          -X (/EXTERNAL_REFERENCE=) and -vPx (/PROJECT_FILE_VERBOSITY=DEFAULT
9002         or MEDIUM or HIGH)
9003
9004 2001-10-30  Geert Bosch <bosch@gnat.com>
9005
9006         * decl.c: Minor whitespace fixes.
9007
9008 2001-10-30  Richard Kenner <kenner@gnat.com>
9009
9010         * utils2.c (build_allocator): Test for SIZE overflow in array case too
9011
9012 2001-10-30  Geert Bosch <bosch@gnat.com>
9013
9014         * ali-util.adb (Initialize_Checksum): Use out-mode instead of in out.
9015         Found due to GCC 3.0 warning of using uninitialized value.
9016
9017         * layout.adb:
9018         (Get_Max_Size): Use variant record for tracking value/expression.
9019          Makes logic clearer and prevents warnings for uninitialized variables.
9020         (Layout_Array_Type): Use variant record for tracking value/expression.
9021          Makes logic clearer and prevents warnings for uninitialized variables.
9022
9023 2001-10-30  Robert Dewar <dewar@gnat.com>
9024
9025         * lib.adb: Minor reformatting
9026
9027         * s-taprop.ads: Minor reformatting
9028
9029 2001-10-29  Laurent Guerby  <guerby@acm.org>
9030
9031         * init.c:
9032         (Raise_From_Signal_Handler, Propagate_Signal_Exception): Make arg
9033         const.
9034         (_gnat_error_handler): Make MSG const.
9035
9036 2001-10-29  Richard Kenner <kenner@gnat.com>
9037
9038         * sysdep.c: Fix localtime_r problem on LynxOS.
9039         Also remove #elif to avoid warnings.
9040
9041         * misc.c (yyparse): Don't set up and register jmpbuf; remove decls
9042         used by this.
9043
9044         * decl.c (annotate_value): Make SIZE unsigned to avoid warning.
9045
9046 2001-10-28  Joseph S. Myers  <jsm28@cam.ac.uk>
9047
9048         * 86numaux.adb, a-tigeau.ads, a-wtgeau.ads, decl.c, exp_ch6.adb,
9049         exp_ch9.adb, exp_util.adb, fname-sf.ads, freeze.ads, g-awk.adb,
9050         g-comlin.ads, g-dirope.adb, g-dyntab.ads, g-socket.ads,
9051         g-table.ads, g-traceb.ads, gnat-style.texi, gnatchop.adb, init.c,
9052         layout.adb, layout.ads, mdllfile.ads, mlib-fil.ads, osint.ads,
9053         s-fatgen.adb, s-imgrea.adb, s-taprop.ads, s-tasdeb.ads,
9054         sem_aggr.adb, sem_attr.adb, sem_case.ads, sem_ch13.adb,
9055         sem_ch3.adb, sem_elab.adb, sem_maps.ads, sem_res.adb,
9056         sem_util.ads, sinfo.ads, sinput.ads, table.adb, table.ads,
9057         types.ads, urealp.adb: Fix spelling errors.
9058
9059 2001-10-27  Laurent Guerby <guerby@acm.org>
9060
9061         * trans.c (gigi): Fix non determinism leading to bootstrap
9062         comparison failures for debugging information.
9063
9064 2001-10-26  Florian Weimer  <fw@deneb.enyo.de>
9065
9066         * gnat_rm.texi: Use @./@: where appropriate.
9067
9068 2001-10-26  Robert Dewar <dewar@gnat.com>
9069
9070         * sinfo.adb: Define Associated_Node to overlap Entity field. Cleanup.
9071
9072 2001-10-26  Richard Kenner <kenner@gnat.com>
9073
9074         * gmem.c (__gnat_gmem_read_next): Properly check for EOF
9075
9076 2001-10-26  Richard Kenner <kenner@gnat.com>
9077
9078         * decl.c (validate_size): Modify message for bad size to avoid
9079         implication that compiler is modifying the size.
9080
9081 2001-10-26  Robert Dewar <dewar@gnat.com>
9082
9083         * prj-util.adb: Minor reformatting. Fix bad header format.
9084
9085 2001-10-26  Robert Dewar <dewar@gnat.com>
9086
9087         * sinfo.ads: Define Associated_Node to overlap Entity field. Cleanup.
9088
9089         * sinfo.ads: Clarify use of Associated_Node (documentation only).
9090
9091         * sem_ch12.adb: Change Node4 to Associated_Node. Change
9092         Associated_Node to Get_Associated_Node. Put use of Unchecked_Access
9093         much more narrowly in places where needed. These are cleanups.
9094
9095 2001-10-26  Joel Brobecker <brobecke@gnat.com>
9096
9097         * 5zosinte.ads (null_pthread): new constant.
9098
9099         * 5ztaprop.adb:
9100         (Initialize_TCB): Initialize thread ID to null, to be able to verify
9101          later that this field has been set.
9102         (Finalize_TCB): ditto.
9103         (Suspend_Task): Verify that the thread ID is not null before using it.
9104         (Resume_Task): ditto.
9105
9106         * s-tasdeb.adb:
9107         (Resume_All_Tasks): Lock the tasks list before using it.
9108         (Suspend_All_Tasks): ditto.
9109
9110 2001-10-26  Richard Kenner <kenner@gnat.com>
9111
9112         * decl.c (gnat_to_gnu_entity, case E_General_Access_Type):
9113         Make constant variant of designated type for Is_Access_Constant.
9114         Call update_pointer_to with main variant.
9115
9116         * trans.c (process_freeze_entity, process_type):
9117         Call update_pointer_to on main variant.
9118
9119         * utils.c (update_pointer_to): Make corresponding variant for NEW_TYPE.
9120         If main variant, update all other variants.
9121
9122         * utils2.c (build_unary_op, case INDIRECT_REF): No longer set
9123         TREE_STATIC.
9124
9125 2001-10-26  Robert Dewar <dewar@gnat.com>
9126
9127         * prj-util.adb: Minor reformatting
9128
9129 2001-10-26  Robert Dewar <dewar@gnat.com>
9130
9131         * prj-util.adb: Minor reformatting
9132
9133 2001-10-26  Robert Dewar <dewar@gnat.com>
9134
9135         * prj-attr.adb: Minor reformatting throughout
9136
9137 2001-10-26  Robert Dewar <dewar@gnat.com>
9138
9139         * prj-attr.ads: Minor reformatting
9140         Add ??? comment (this whole spec has almost no comments)
9141
9142 2001-10-26  Vincent Celier <celier@gnat.com>
9143
9144         * g-os_lib.adb (Normalize_Pathname): Preserve the double slash
9145         ("//") that precede the drive letter on Interix.
9146
9147 2001-10-26  Geert Bosch <bosch@gnat.com>
9148
9149         * gnat_rm.texi: Add GNAT Reference Manual.
9150
9151 2001-10-25  Robert Dewar <dewar@gnat.com>
9152
9153         * sem_ch8.adb (Analyze_Package_Renaming): Skip analysis if Name
9154         is Error. Similar change for other renaming cases.
9155
9156 2001-10-25  Robert Dewar <dewar@gnat.com>
9157
9158         * s-atacco.ads: Add pragma Inline_Always for functions.
9159         Fix header format. Add copyright 2001
9160
9161 2001-10-25  Ed Schonberg <schonber@gnat.com>
9162
9163         * par-ch3.adb (P_Subtype_Mark_Resync): for an anonymous array
9164         return Error rather than Empty so that analysis can proceed.
9165
9166 2001-10-25  Ed Schonberg <schonber@gnat.com>
9167
9168         * sem_util.adb (Enter_Name): better handling of cascaded error
9169         messages when a unit appears in its own context.
9170
9171 2001-10-25  Ed Schonberg <schonber@gnat.com>
9172
9173         * sem_util.adb (Defining_Entity): in case of error, attach created
9174         entity to specification, so that semantic analysis can proceed.
9175
9176 2001-10-25  Robert Dewar <dewar@gnat.com>
9177
9178         * sem_util.adb
9179         (Defining_Entity): Deal with Error.
9180         (Process_End_Label): Deal with bad end label for.
9181
9182 2001-10-25  Ed Schonberg <schonber@gnat.com>
9183
9184         * sem_elab.adb (Check_A_Call): refine message when call is in an
9185         instance but callee is not declared in the generic unit.
9186
9187 2001-10-25  Ed Schonberg <schonber@gnat.com>
9188
9189         * sem_elab.adb (Check_A_Call): check for renaming before finding the
9190         enclosing unit, which may already be different from the calling unit.
9191
9192 2001-10-25  Geert Bosch <bosch@gnat.com>
9193
9194         * 4gintnam.ads: fix header format.
9195
9196 2001-10-25  Ed Schonberg <schonber@gnat.com>
9197
9198         * sem_res.adb (Resolve_Call): if the call is actually an indexing
9199         operation on the result of a parameterless call, perform elaboration
9200         check after the node has been properly rewritten.
9201
9202         * sem_ch12.adb (Copy_Generic_Node): after the proper body has been
9203         inlined within the generic tree, the defining identifier is not a
9204         compilation_unit.
9205
9206 2001-10-25  Ed Schonberg <schonber@gnat.com>
9207
9208         * sem_res.adb (Resolve): special-case resolution of Null in an
9209          instance or an inlined body to avoid view conflicts.
9210
9211         * sem_ch12.adb (Copy_Generic_Node): for allocators, check for view
9212          compatibility by retrieving the access type of the generic copy.
9213
9214 2001-10-25  Robert Dewar <dewar@gnat.com>
9215
9216         * sem_ch3.adb:
9217         (Analyze_Number_Declaration): Handle error expression.
9218         (Signed_Integer_Type_Declaration): Handle error bound.
9219         (Analyze_Subtype_Indication): Handle error range.
9220
9221         * sem_util.adb (Get_Index_Bounds): Check for Error.
9222
9223 2001-10-25  Robert Dewar <dewar@gnat.com>
9224
9225         * restrict.adb (Set_No_Run_Time_Mode): Set Discard_Names as default
9226         in no run time mode.
9227
9228 2001-10-25  Pascal Obry <obry@gnat.com>
9229
9230         * gnatmem.adb (Read_Next): fix Curs2 value to properly handle quiet
9231         mode case for ALLOC case.
9232
9233         * gnatmem.adb (Read_Next): correctly fix parsing in Quiet mode on
9234         all platforms. Improvement of last change.
9235
9236 2001-10-25  Robert Dewar <dewar@gnat.com>
9237
9238         * exp_ch4.adb (Expand_N_Allocator): Minor reformatting.
9239
9240 2001-10-25  Geert Bosch  <bosch@gnat.com>
9241
9242         * osint.adb (Is_Relative): Remove duplicate.
9243
9244 2001-10-25  Pascal Obry <obry@gnat.com>
9245
9246         * osint.adb (Read_Default_Search_Dirs): correctly detect relative
9247         pathnames in UNIX and DOS style with drive letter.
9248         (Is_Relative): new routine.
9249
9250         * osint.adb: Minor reformatting
9251
9252         * osint.adb (Is_Relative): implementation using
9253         GNAT.OS_Lib.Is_Absolute_Path. Better fix.
9254
9255 2001-10-25  Pascal Obry <obry@gnat.com>
9256
9257         * g-dirope.adb (Basename): correctly compute offset between the
9258         original Path and the translated one.
9259
9260         * g-dirope.adb: (Base_Name): add some comments.
9261
9262 2001-10-25  Robert Dewar <dewar@gnat.com>
9263
9264         * exp_imgv.adb (Expand_Image_Attribute): Defend against bad use
9265         in HIE mode, avoids compilation abandoned message
9266
9267         * exp_imgv.adb: Correct typo in previous change
9268
9269         * exp_imgv.adb: Correct typo in previous change (not my day!)
9270
9271 2001-10-25  Robert Dewar <dewar@gnat.com>
9272
9273         * s-tpinop.ads: Add 2001 to copyright notice. Fix header format.
9274
9275 2001-10-25  Pascal Obry <obry@gnat.com>
9276
9277         * g-awk.ads: Move all pragma inlines next to the routine
9278          declarations. This is more uniform with other GNAT spec.
9279
9280 2001-10-22  Geert Bosch  <bosch@gnat.com>
9281
9282         * Make-lang.in (gnattools, cross-gnattools): Remove gnatmem.
9283
9284 2001-10-19  Geert Bosch  <bosch@gnat.com>
9285
9286         * Makefile.in (tools, gnattools): Remove gnatmem.
9287
9288 2001-10-17  Richard Henderson  <rth@redhat.com>
9289
9290         * Makefile.in (misc.o): Depend on langhooks.h.
9291         * misc.c: Include it.
9292         (LANG_HOOKS_INIT, LANG_HOOKS_INIT_OPTIONS): New.
9293         (LANG_HOOKS_DECODE_OPTION): New.
9294         (lang_hooks): Use LANG_HOOKS_INITIALIZER.
9295
9296 2001-10-16  Florian Weimer  <fw@deneb.enyo.de>
9297
9298         * trans.c (tree_transform): Adjust to recent change in
9299         expand_asm_operands to implement named asm operands.
9300
9301 2001-10-11  Ed Schonberg  <schonber@gnat.com>
9302
9303         * exp_ch8.adb (Expand_N_Object_Renaming_Declaration): Bugfix in
9304         renaming of discriminant for mutable record type.
9305
9306 2001-10-11  Robert Dewar  <dewar@gnat.com>
9307
9308         * validsw.adb: Properly save -gnatVn status.
9309
9310 2001-10-11  Robert Dewar <dewar@gnat.com>
9311
9312         * usage.adb: Add lines for V switch.
9313
9314         * gnatcmd.adb (COMPILE): Revise translations for -gnatV
9315         (/VALIDITY_CHECKING).
9316
9317 2001-10-11  Ed Schonberg <schonber@gnat.com>
9318
9319         * sem_type.adb (Add_One_Interp): an operator for a type declared in
9320         an extension of System is known to be visible.
9321
9322 2001-10-11  Ed Schonberg <schonber@gnat.com>
9323
9324         * sem_eval.adb (Compare_Fixup): get the bounds of a String_Literal
9325         properly. Fixes regression on ACATS C34005G.
9326
9327 2001-10-11  Robert Dewar <dewar@gnat.com>
9328
9329         * sem_ch5.adb (Analyze_Iteration_Scheme): Suppress warning on null
9330         loop in generic instance, since this is likely not very useful.
9331
9332 2001-10-11  Robert Dewar <dewar@gnat.com>
9333
9334         * restrict.adb (Disallow in No_Run_Time_Mode): Properly specialize
9335         the error message for high integrity mode.
9336
9337         * rtsfind.adb (RTE): Give message if we try to find an entity that
9338         is not available in high integrity mode.
9339
9340         * rtsfind.ads:
9341         (OK_To_Use_In_HIE_Mode): New array.
9342         (RTE): May return Empty in high integrity mode.
9343
9344         * rtsfind.ads (OK_To_Use_In_No_Run_Time_Mode): New name for
9345         OK_To_Use_In_HIE_Mode, now includes System_FAT_xxx.
9346
9347         * sem_ch6.adb (Analyze_Subprogram_Body): Kill body in predefined
9348         unit if not inlined always and in no runtime mode. Fixes problem
9349         caused by new Rtsfind changes.
9350
9351         * sem_ch6.adb (Analyze_Subrogram_Body): Do not Check_References if
9352         body is deleted.
9353
9354         * rtsfind.adb (RTE): Make sure we do not try to load unit after
9355         giving message for entity not available in high integrity mode.
9356
9357 2001-10-11  Pascal Obry <obry@gnat.com>
9358
9359         * impunit.adb: Add GNAT.CRC32.
9360
9361 2001-10-11  Ed Schonberg <schonber@gnat.com>
9362
9363         * exp_fixd.adb (Expand_Multiply_Fixed_By_Fixed_Giving_Fixed): handle
9364         properly the case where one universal operand in a non-static
9365         exponentiation of a real literal.
9366
9367 2001-10-11  Ed Schonberg <schonber@gnat.com>
9368
9369         * exp_ch7.adb (Find_Final_List): for a type appearing in a with_type
9370         clause, return the gobal finalization list, for lack of anthing else.
9371
9372 2001-10-11  Ed Schonberg <schonber@gnat.com>
9373
9374         * exp_ch7.adb (Make_Transient_Block): if statement is within
9375         exception handler, always use new transient scope to place Clean
9376         procedure.
9377
9378 2001-10-11  Pascal Obry <obry@gnat.com>
9379
9380         * Makefile.in:
9381         (GNAT_ADA_OBJS): add g-crc32.o, a-tags.o, a-stream.o
9382         (GNATBIND_OBJS): add g-crc32.o, a-tags.o, a-stream.o
9383         (GNATLS_RTL_OBJS): add g-crc32.o
9384         (GNATMAKE_RTL_OBJS): add g-crc32.o
9385
9386         * ali-util.adb:
9387         (CRC_Match): new function.
9388         (Get_File_Checksum): renamed Get_File_CRC. Use the GNAT.CRC32 unit
9389         instead of the previous simple checksum algorithm.
9390         (Time_Stamp_Mismatch): use CRC_Match for comparison.
9391         (Set_Source_Table): idem.
9392
9393         * ali-util.ads:
9394         (Get_File_Checksum): renamed Get_File_CRC as now we compute CRC
9395         instead of simple checksum.
9396         (CRC_Match): new function.
9397         (CRC_Error): new constant.
9398
9399         * ali.adb (Scan_ALI): rename variable Chk to CRC as we are handling
9400         a CRC now and not a simple checksum. A CRC uses lower-case hex
9401         letters, fixes ambiguity in parsing.
9402
9403         * ali.ads (Sdep_Record.Checksum): renamed Sdep_Record.CRC as this
9404         is what this variable will store.
9405
9406         * bcheck.adb: Change reference to chechsum in comments by CRC.
9407         (Check_Consistency): Rename Get_File_Checksum to Get_File_CRC.
9408         rename All_Checksum_Match to All_CRC_Match. Change due to API
9409         renaming since now GNAT does not use a simple checksum but a
9410         CRC using GNAT.CRC32.
9411
9412         * gnatls.adb: Rename Checksum to CRC in many places, we use a CRC
9413         now and not anymore a simple checksum.
9414
9415         * lib-load.adb: Use Source_CRC instead of Source_Checksum in many
9416         places.
9417
9418         * lib-writ.adb (Write_ALI): Use Source_CRC instead of Source_Checksum.
9419
9420         * scans.adb:
9421         (Restore_Scan_State): rename Checksum to CRC.
9422         (Save_Scan_State): idem.
9423
9424         * scans.ads:
9425         With GNAT.CRC32.
9426         (Checksum): rename to CRC.
9427         (Saved_Scan_State): Save_Checksum field renamed to Save_CRC
9428
9429         * scn-nlit.adb: Rename many Accumulate_Checksum to Update (from
9430         GNAT.CRC32).  Update copyright notice.
9431
9432         * scn-slit.adb: Rename many Accumulate_Checksum to Update (from
9433         GNAT.CRC32).  Update copyright notice.
9434
9435         * scn.adb:
9436         (Accumulate_Checksum): removed.
9437         (Update): new procedure. Add a wide-character into the CRC.
9438
9439         * sinput-l.adb:
9440         (Complete_Source_File_Entry): use CRC32 instead of simple checksum.
9441         (Load_File): fix initialization of S (change Source_Checksum to
9442         Source_CRC)
9443
9444         * sinput-p.adb (Load_Project_File): rename Source_Checksum to
9445         Source_CRC in S initialization.
9446
9447         * sinput.adb (Source_Checksum): renamed to Source_CRC.
9448
9449         * sinput.ads (Source_Checksum): renamed to Source_CRC.
9450         Update comments for the CRC.
9451
9452         * types.adb (Hex): Use lowercase for the letter part.
9453
9454         * types.ads (Get_Hex_String): Returns the hexadecimal representation
9455         for a word. This is currently used only for CRC. In previous version,
9456         the checksum was using a representation with all letter being
9457         upper-case. With the new implementation (using CRC) we do not remove
9458         the 32th bit of the CRC, so we can have an upper-case starting letter
9459         in the CRC. This is not possible to parse in Scan_ALI (ali.adb).
9460         It is ambigous since the CRC was optional and could be followed by
9461         options like EB, EE. So now this routines uses lower-case letter for
9462         the hexadecimal representation. Strange enough only lower case letters
9463         where checked in Scan_ALI (even if this was not a possible case).
9464
9465         * gnatvsn.ads (Library_Version): changed to 3.15a.
9466
9467         * s-crc32.ads: Initial version from GNAT.CRC32. This is the version
9468         for the compiler.
9469
9470         * s-crc32.adb: Initial version from GNAT.CRC32. This is the version
9471         for the compiler.
9472
9473         * ali-util.adb: Redo previous change to avoid using word CRC everywhere
9474         Add 2001 to copyright notice
9475         (Accumulate_Checksum): Modify to use System.CRC32.
9476
9477         * ali-util.ads: Redo changes of previous revision to continue to use
9478         the word Checksum. Add 2001 to copyright notice.
9479
9480         * ali.adb: Undo some of previous changes, not needed.
9481         Keep the change for lower case letters in the checksum.
9482
9483         * ali.ads: Undo previous change not needed.
9484
9485         * bcheck.adb: Undo most of previous change, not needed.
9486         But do use Checksums_Match for checksum comparison.
9487
9488         * gnatls.adb: Undo most of previous change, not needed.
9489         But do use Checksums_Match for comparing checksums.
9490
9491         * lib-load.adb: Undo previous change, not needed.
9492
9493         * lib-writ.adb: Undo previous change, not needed.
9494
9495         * lib-writ.ads: Document that checksums use lower case,
9496         not upper case letters.
9497
9498         * scans.adb: Undo previous change, not needed
9499
9500         * scans.ads: Undo previous change, not needed.
9501
9502         * scn-nlit.adb: Undo previous changes, not needed.
9503
9504         * scn-slit.adb: Undo previous change, not needed.  Fix header format.
9505
9506         * scn.adb:
9507         (Accumulate_Checksum): Use System.CRC32.
9508         (Initialize_Checksum): New procedure.
9509         Remove other changes of previous revision.
9510
9511         * sinput-p.adb: Undo previous change, not needed.
9512
9513         * sinput.adb: Undo previous change, not needed.
9514
9515         * sinput-l.adb: Undo previous change, not needed.
9516
9517         * sinput.ads: Undo previous change, not needed.  Keep only comment
9518         on new checksum algorithm
9519
9520         * Makefile.in: Add s-crc32 as needed, remove g-crc32.
9521         Also remove a-tags and a-stream from GNAT sources.
9522
9523         * ali.adb (Scan_ALI): fix typo introduce in latest check-in.
9524
9525         * Makefile.in (GNATRTL_NONTASKING_OBJS): Add g-crc32.o.
9526
9527 2001-10-11  Geert Bosch  <bosch@gnat.com>
9528
9529         * einfo.h: Regenerate.
9530
9531         * nmake.ads: Regenerate.
9532
9533         * nmake.adb: Regenerate.
9534
9535         * sinfo.h: Regenerate.
9536
9537         * treeprs.adb: Regenerate.
9538
9539 2001-10-10  Geert Bosch  <bosch@gnat.com>
9540
9541         * gnat-style.texi: New file describing coding guidelines for Ada.
9542
9543 2001-10-10  Ed Schonberg <schonber@gnat.com>
9544
9545         * einfo.adb (Write_Entity_Flags): Elaboration_Entity_Required
9546         is Flag174.
9547
9548 2001-10-10  Geert Bosch  <bosch@gnat.com>
9549
9550         * snames.ads: Add new names for project facility.
9551
9552         * snames.adb: Update to reflect snames.ads changes.
9553
9554         * snames.h: Update to reflect snames.ads changes.
9555
9556 2001-10-10  Vincent Celier <celier@gnat.com>
9557
9558         * make.adb:
9559         (Add_Switches): reflect the changes for the switches attributes
9560         Default_Switches indexed by the programming language,
9561         Switches indexed by the file name.
9562         (Collect_Arguments_And_Compile): Idem.
9563         Reflect the attribute name changes.
9564
9565         * prj-attr.adb:
9566         (Initialisation_Data): Change the names of some packages and
9567         attributes.
9568         (Initialize): process case insensitive associative arrays.
9569
9570         * prj-attr.ads:
9571         (Attribute_Kind): Remove Both, add Case_Insensitive_Associative_Array.
9572
9573         * prj-dect.adb:
9574         (Parse_Attribute_Declaration): For case insensitive associative
9575          arrays, set the index string to lower case.
9576
9577         * prj-env.adb:
9578         Reflect the changes of the project attributes.
9579
9580         * prj-nmsc.adb:
9581         Replace Check_Naming_Scheme by Ada_Check and
9582         Language_Independent_Check.
9583
9584         * prj-nmsc.ads:
9585         Replaced Check_Naming_Scheme by 2 procedures:
9586         Ada_Check and Language_Independent_Check.
9587
9588         * prj-proc.adb:
9589         (Process_Declarative_Items): For case-insensitive associative
9590         arrays, set the index string to lower case.
9591         (Recursive_Check): Call Prj.Nmsc.Ada_Check, instead of
9592         Prj.Nmsc.Check_Naming_Scheme.
9593
9594         * prj-tree.adb:
9595         (Case_Insensitive): New function
9596         (Set_Case_Insensitive): New procedure
9597
9598         * prj-tree.ads:
9599         (Case_Insensitive): New function
9600         (Set_Case_Insensitive): New procedure
9601         (Project_Node_Record): New flag Case_Insensitive.
9602
9603         * prj-util.adb:
9604         (Value_Of): new function to get the string value of a single
9605         string variable or attribute.
9606
9607         * prj-util.ads:
9608         (Value_Of): new function to get the string value of a single
9609         string variable or attribute.
9610
9611         * prj.adb:
9612         (Ada_Default_Spec_Suffix): New function
9613         (Ada_Default_Impl_Suffix): New function
9614         Change definitions of several constants to reflect
9615         new components of record types.
9616
9617         * prj.ads:
9618         (Naming_Data): Change several components to reflect new
9619         elements of naming schemes.
9620         (Project_Data): New flags Sources_Present and
9621         Language_Independent_Checked.
9622         (Ada_Default_Spec_Suffix): New function.
9623         (Ada_Default_Impl_Suffix): New function.
9624
9625         * snames.ads:
9626         Modification of predefined names for project manager: added
9627         Implementation, Specification_Exceptions, Implementation_Exceptions,
9628         Specification_Suffix, Implementation_Suffix, Separate_Suffix,
9629         Default_Switches, _Languages, Builder, Cross_Reference,
9630         Finder. Removed Body_Part, Specification_Append, Body_Append,
9631         Separate_Append, Gnatmake, Gnatxref, Gnatfind, Gnatbind,
9632         Gnatlink.
9633
9634         * prj.ads: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
9635         Add comments.
9636
9637         * prj-nmsc.adb (Ada_Check): Test that Separate_Suffix is defaulted,
9638         not that it is Nil_Variable_Value.
9639
9640         * prj.ads: Add ??? for uncommented declarations
9641
9642 2001-10-10  Ed Schonberg <schonber@gnat.com>
9643
9644         * sem_prag.adb: (Analyze_Pragma, case External): If entity is a
9645         constant, do not indicate possible modification, so that gigi can
9646         treat it as a bona fide constant.
9647
9648 2001-10-10  Robert Dewar <dewar@gnat.com>
9649
9650         * sem_prag.adb: Add processing for pragma External.
9651
9652         * snames.ads: Add entry for pragma External.
9653
9654         * par-prag.adb: Add pragma External.
9655
9656         * snames.adb: Updated to match snames.ads.
9657
9658 2001-10-10  Ed Schonberg <schonber@gnat.com>
9659
9660         * exp_ch4.adb (Expand_N_Allocator): Generate meaningful names for
9661         a dynamic task if the allocator appears in an indexed assignment
9662         or selected component assignment.
9663
9664         * exp_util.adb (Build_Task_Array_Image, Build_Task_Record_Image):
9665         For a dynamic task in an assignment statement, use target of
9666         assignment to generate meaningful name.
9667
9668 2001-10-10  Ed Schonberg <schonber@gnat.com>
9669
9670         * einfo.adb (Write_Field19_Name): Body_Entity is also defined for
9671         a generic package.
9672
9673         * einfo.ads: Body_Entity is also defined for generic package.
9674         Documentation change only
9675
9676         * exp_aggr.adb (Build_Array_Aggr_Code): When expanding an
9677         others_choice for a discriminated component initialization,
9678         convert discriminant references into the corresponding discriminals.
9679
9680         * exp_ch3.adb (Get_Simple_Init_Val): Add qualification to aggregate
9681         only if original type is private and expression has to be wrapped
9682         in a conversion.
9683
9684         * checks.adb:
9685         (Apply_Constraint_Check): Do not perform length check
9686         if expression is an aggregate with only an others_choice.
9687         (Length_N_Cond): two references to the same in_parameter
9688         (typically the discriminal in an init_proc) denote the same value.
9689         Two useful optimization uncovered by bugfixes above.
9690
9691 2001-10-10  Robert Dewar <dewar@gnat.com>
9692
9693         * xeinfo.adb: Change int to char in translation of enumeration types.
9694         This fixes a problem in the C representation of component alignment.
9695         Add 2001 to copyright notice
9696
9697 2001-10-10  Richard Kenner <kenner@gnat.com>
9698
9699         * decl.c: (validate_size): Do check size of object of integral type
9700         if it is a packed array type.
9701
9702 2001-10-10  Richard Kenner <kenner@gnat.com>
9703
9704         * decl.c: (gnat_to_gnu_entity, case object): Also materialize
9705         VAR_DECL for constant if not Is_Public but -O0.
9706
9707 2001-10-10  Richard Kenner  <kenner@gnat.com>
9708
9709         * misc.c (struct lang_hooks): Add new initializer to match GCC change.
9710
9711 2001-10-10  Geert Bosch  <bosch@gnat.com>
9712
9713         * xnmake.adb (XNmake): Fix handling of -s/-b options.  No longer
9714         use '/' as switch character, allowing for absolute file names.
9715
9716 2001-10-09  Joseph S. Myers  <jsm28@cam.ac.uk>
9717
9718         * 4gintnam.ads, Make-lang.in, Makefile.in, config-lang.in: Update
9719         FSF address.
9720
9721 2001-10-08  Geert Bosch  <bosch@gnat.com>
9722
9723         * Makefile.in (treeprs.ads, einfo.h, sinfo.h, nmake.adb, nmake.ads):
9724         Automatically build utilities when files need to be regenerated.
9725
9726 2001-10-08  Geert Bosch  <bosch@gnat.com>
9727
9728         * xsnames.adb: New utility for updating snames.ads and snames.adb
9729
9730 2001-10-08  Zack Weinberg  <zack@codesourcery.com>
9731
9732         * Make-lang.in (ADAFLAGS): Add -W -Wall.
9733         (ADA_FLAGS_TO_PASS): Set ADA_CFLAGS=$(CFLAGS) also.
9734         (gnat1): Also depend on attribs.o.
9735         (gnatlib, gnatlib-shared): Set CC and ADAC in recursive make.
9736         * Makefile.in (X_ADAFLAGS, T_ADAFLAGS): New.
9737         (ADAC): Set to @ADAC@ in stage1, $(CC) later.
9738         (ADAFLAGS): Add -W -Wall.
9739         (ALL_ADAFLAGS, MOST_ADAFLAGS): Add X_ADAFLAGS and T_ADAFLAGS;
9740         take out CFLAGS.
9741
9742         (.adb.o, .ads.o, a-numaux.o, a-teioed.o, s-interr.o,
9743         s-taskin.o, sdefault.o, s-tasdeb.o, s-vaflop.o, a-except.o,
9744         s-assert.o, s-stalib.o, s-memory.o, memtrack.o, mlib-tgt.o):
9745         Use $(ADAC), not $(CC), as compilation command.
9746
9747         (gnattools): Depend directly on tools to build, don't use
9748         recursive make.
9749         (gnatlib): Set ADA_CFLAGS=$(GNATLIBCFLAGS) in recursive make.
9750
9751         * einfo.h, sinfo.h: New files (autogenerated).
9752
9753 2001-10-08  Richard Henderson  <rth@redhat.com>
9754
9755         * comperr.adb (Abort_In_Progress): New.
9756         (Compiler_Abort): Use it to prevent recursion.
9757
9758 2001-10-08  Robert Dewar <dewar@gnat.com>
9759
9760         * atree.adb: Set Error_Posted in Error node, helps error recovery.
9761
9762         * par-endh.adb (Output_End_Expected): We should also not test
9763         Error_Posted on the Error node, since now it is always set.
9764
9765         * cstand.adb (Create_Standard): Set Etype of Error to Any_Type
9766         to help error recovery. Part of general work on 9407-004.
9767
9768         * par.adb: Add ??? for misuse of error
9769
9770         * sem_res.adb:
9771         (Resolve): Defend against Error, fixes 9407-003.
9772         (Resolve_Discrete_Subtype_Indication): Defend against Error.
9773
9774         * sinfo.ads (N_Error): Now has Etype field (which will be set
9775         to Any_Type to help error recovery).
9776
9777 2001-10-08  Richard Kenner (kenner@gnat.com)
9778
9779         * misc.c (gnat_expand_expr, case UNCHECKED_CONVERT_EXPR):
9780         Consistently set MEM attributes from expression; fixes
9781         bootstrap failure on x86.
9782
9783 2001-10-08  Geert Bosch  (bosch@gnat.com)
9784
9785         * 5oosinte.adb: Add 2001 to copyright notice.
9786
9787 2001-10-08  Geert Bosch  (bosch@gnat.com)
9788
9789         * ceinfo.adb: Add utility for consistency checking of einfo.ad[bs].
9790
9791         * csinfo.adb: Add utility for consistency checking of sinfo.ad[bs].
9792
9793 2001-10-07  Joseph S. Myers  <jsm28@cam.ac.uk>
9794
9795         * 5oosinte.adb: Fix spelling error of "separate" as "seperate".
9796
9797 2001-10-05  Geert Bosch  (bosch@gnat.com)
9798
9799         * adaint.h: Small formatting fix.
9800
9801 2001-10-04  Geert Bosch  <bosch@gnat.com>
9802
9803         * sysdep.c (__gnat_set_binary_mode, __gnat_set_text_mode):
9804         Arg is int, not FILE *, in dummy version of functions.
9805
9806         * adaint.h (__gnat_set_binary_mode, __gnat_set_text_mode):
9807         Arg is int, not FILE *.
9808
9809 2001-10-04  Geert Bosch  <bosch@gnat.com>
9810
9811         * 3lsoccon.ads: Added file, missed with initial check ins.
9812
9813         * 4lintnam.ads: Fix header format.
9814         Change Linux to GNU/Linux.
9815
9816         * 5iosinte.adb: Change Linux to GNU/Linux.
9817
9818         * 5iosinte.ads: Change Linux to GNU/Linux.
9819
9820         * 5itaprop.adb: Change Linux to GNU/Linux.
9821
9822         * 5itaspri.ads: Change Linux to GNU/Linux.
9823         Update copyright notice.
9824
9825         * 5lintman.adb: Change Linux to GNU/Linux.
9826
9827         * 5lml-tgt.adb: Change Linux to GNU/Linux.
9828
9829         * 5losinte.ads: Change Linux to GNU/Linux.
9830
9831         * 5lsystem.ads: Change Linux to GNU/Linux.
9832
9833         * 5qosinte.adb: Change Linux to GNU/Linux.
9834
9835         * 5qosinte.ads: Change Linux to GNU/Linux.
9836
9837         * 5qparame.ads: Change Linux to GNU/Linux.
9838
9839         * 5qtaprop.adb: Change Linux to GNU/Linux.
9840
9841         * 5qtaspri.ads: Change Linux to GNU/Linux.
9842         Add 2001 to copyright notice.
9843
9844         * 5vintman.ads: Change Linux to GNU/Linux.
9845         Fix header format.  Add 2001 to copyright notice.
9846
9847         * g-soccon.ads: Change Linux to GNU/Linux.
9848
9849         * g-trasym.ads: Change Linux to GNU/Linux.
9850         Add 2001 to copyright notice.
9851
9852         * memtrack.adb: Change Linux to GNU/Linux.
9853
9854         * s-intman.ads: Change Linux to GNU/Linux.
9855         Add 2001 to copyright notice.  Fix header format.
9856
9857         * s-stache.adb: Change Linux to GNU/Linux.
9858
9859         * adaint.c: Change Linux to GNU/Linux.
9860
9861         * cio.c: Change Linux to GNU/Linux.
9862
9863         * cstreams.c: Change Linux to GNU/Linux.
9864
9865         * init.c: Change Linux to GNU/Linux.
9866
9867         * gmem.c: Change Linux to GNU/Linux.
9868
9869         * tracebak.c: Change Linux to GNU/Linux.
9870
9871
9872 2001-10-02  Geert Bosch  <bosch@gnat.com>
9873
9874         * misc.c (insert_default_attributes): Add dummy version.