OSDN Git Service

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