OSDN Git Service

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