]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/ada/ChangeLog
Named locale support for ctype<char>.
[thirdparty/gcc.git] / gcc / ada / ChangeLog
CommitLineData
de76a39c
GB
12001-12-12 Robert Dewar <dewar@gnat.com>
2
3 * s-stalib.adb: Add more comments on with statements being needed
4
5 * par-ch12.adb: Minor reformatting
6
7 * prj-dect.ads: Fix copyright header
8
9 * s-arit64.adb (Multiply_With_Ovflo_Check): Fix case where both
10 inputs fit in 32 bits, but the result still overflows.
11
12 * s-fatgen.ads: Minor comment improvement
13
142001-12-12 Ed Schonberg <schonber@gnat.com>
15
16 * sem_ch4.adb (Analyze_Selected_Component): If the prefix is of a
17 formal derived type, look for an inherited component from the full
18 view of the parent, if any.
19
202001-12-12 Robert Dewar <dewar@gnat.com>
21
22 * checks.ads (Apply_Alignment_Check): New procedure.
23
24 * exp_ch13.adb (Expand_N_Freeze_Entity): Generate dynamic check to
25 ensure that the alignment of objects with address clauses is
26 appropriate, and raise PE if not.
27
28 * exp_util.ads (Must_Be_Aligned): Removed, replaced by
29 Exp_Pakd.Known_Aligned_Enough
30
31 * mdllfile.ads: Minor reformatting
32
33 * mlib-fil.ads: Minor reformatting
34
352001-12-12 Ed Schonberg <schonber@gnat.com>
36
37 * exp_ch8.adb (Expand_N_Object_Renaming_Declaration): Extend previous
38 fix to any component reference if enclosing record has non-standard
39 representation.
40
412001-12-12 Vincent Celier <celier@gnat.com>
42
43 * g-dirope.ads (Find, Wildcard_Iterator): Moved to child package
44 Iteration
45
462001-12-12 Ed Schonberg <schonber@gnat.com>
47
48 * freeze.ads: Make Freeze_Fixed_Point_Type visible, for use in
49 sem_attr.
50
512001-12-12 Robert Dewar <dewar@gnat.com>
52
53 * impunit.adb: Add entry for GNAT.Directory_Operations.Iteration
54
552001-12-12 Emmanuel Briot <briot@gnat.com>
56
57 * g-regexp.adb: Remove all debug code, since it isn't required anymore,
58 and it adds dependencies to system.io.
59
602001-12-12 Pascal Obry <obry@gnat.com>
61
62 * g-dirope.adb (Expand_Path.Var): Correctly detect end of
63 variable name.
64
65*** s-stalib.adb 2001/09/03 15:24:33 1.17
66--- s-stalib.adb 2001/10/16 13:14:46 1.18
67***************
68*** 46,59 ****
69 -- elaboration circularities with Ada.Exceptions if polling is on.
70
71 with System.Soft_Links;
72! -- Referenced directly from generated code
73! -- Also referenced from exception handling routines.
74 -- This is needed for programs that don't use exceptions explicitely but
75 -- direct calls to Ada.Exceptions are generated by gigi (for example,
76 -- by calling __gnat_raise_constraint_error directly).
77
78 with System.Memory;
79! -- Referenced directly from generated code
80
81 package body System.Standard_Library is
82
83--- 46,62 ----
84 -- elaboration circularities with Ada.Exceptions if polling is on.
85
86 with System.Soft_Links;
87! -- Referenced directly from generated code using external symbols so it
88! -- must always be present in a build, even if no unit has a direct with
89! -- of this unit. Also referenced from exception handling routines.
90 -- This is needed for programs that don't use exceptions explicitely but
91 -- direct calls to Ada.Exceptions are generated by gigi (for example,
92 -- by calling __gnat_raise_constraint_error directly).
93
94 with System.Memory;
95! -- Referenced directly from generated code using external symbols, so it
96! -- must always be present in a build, even if no unit has a direct with
97! -- of this unit.
98
99 package body System.Standard_Library is
100
101
102*** par-ch12.adb 2001/10/19 15:22:18 1.48
103--- par-ch12.adb 2001/10/19 15:24:48 1.49
104***************
105*** 452,466 ****
106 if Def_Node /= Error then
107 Set_Formal_Type_Definition (Decl_Node, Def_Node);
108 TF_Semicolon;
109 else
110 Decl_Node := Error;
111
112 if Token = Tok_Semicolon then
113- -- Avoid further cascaded errors.
114 Scan;
115 end if;
116 end if;
117-
118
119 return Decl_Node;
120 end P_Formal_Type_Declaration;
121--- 452,467 ----
122 if Def_Node /= Error then
123 Set_Formal_Type_Definition (Decl_Node, Def_Node);
124 TF_Semicolon;
125+
126 else
127 Decl_Node := Error;
128
129+ -- If we have semicolon, skip it to avoid cascaded errors
130+
131 if Token = Tok_Semicolon then
132 Scan;
133 end if;
134 end if;
135
136 return Decl_Node;
137 end P_Formal_Type_Declaration;
138
139*** prj-dect.ads 2001/10/20 10:28:13 1.4
140--- prj-dect.ads 2001/10/20 11:43:56 1.5
141***************
142*** 8,14 ****
143 -- --
144 -- $Revision$
145 -- --
146! -- Copyright (C) 2000-2001 Free Software Foundation, Inc. --
147 -- --
148 -- GNAT is free software; you can redistribute it and/or modify it under --
149 -- terms of the GNU General Public License as published by the Free Soft- --
150--- 8,14 ----
151 -- --
152 -- $Revision$
153 -- --
154! -- Copyright (C) 2001 Free Software Foundation, Inc. --
155 -- --
156 -- GNAT is free software; you can redistribute it and/or modify it under --
157 -- terms of the GNU General Public License as published by the Free Soft- --
158
159*** s-arit64.adb 2001/02/09 15:10:29 1.16
160--- s-arit64.adb 2001/10/20 14:50:39 1.17
161***************
162*** 325,337 ****
163 T2 := Xhi * Ylo;
164 end if;
165
166! else
167! if Yhi /= 0 then
168! T2 := Xlo * Yhi;
169! else
170! return X * Y;
171! end if;
172 end if;
173
174 T1 := Xlo * Ylo;
175 T2 := T2 + Hi (T1);
176--- 325,339 ----
177 T2 := Xhi * Ylo;
178 end if;
179
180! elsif Yhi /= 0 then
181! T2 := Xlo * Yhi;
182!
183! else -- Yhi = Xhi = 0
184! T2 := 0;
185 end if;
186+
187+ -- Here we have T2 set to the contribution to the upper half
188+ -- of the result from the upper halves of the input values.
189
190 T1 := Xlo * Ylo;
191 T2 := T2 + Hi (T1);
192
193*** s-fatgen.ads 2001/07/20 00:59:34 1.9
194--- s-fatgen.ads 2001/10/20 18:37:39 1.10
195***************
196*** 89,97 ****
197
198 function Unbiased_Rounding (X : T) return T;
199
200! function Valid (X : access T) return Boolean;
201! -- The argument must be passed by reference here, as T may be
202! -- an abnormal value that can be passed in a floating point register.
203
204 private
205 pragma Inline (Machine);
206--- 89,100 ----
207
208 function Unbiased_Rounding (X : T) return T;
209
210! function Valid (X : access T) return Boolean;
211! -- This function checks if the object of type T referenced by X
212! -- is valid, and returns True/False accordingly. The parameter is
213! -- passed by reference (access) here, as the object of type T may
214! -- be an abnormal value that cannot be passed in a floating-point
215! -- register, and the whole point of 'Valid is to prevent exceptions.
216
217 private
218 pragma Inline (Machine);
219
220*** sem_ch4.adb 2001/09/24 22:32:31 1.511
221--- sem_ch4.adb 2001/10/21 17:41:52 1.512
222***************
223*** 2691,2696 ****
224--- 2691,2708 ----
225
226 Check_Misspelled_Selector (Entity_List, Sel);
227
228+ elsif Is_Generic_Type (Prefix_Type)
229+ and then Ekind (Prefix_Type) = E_Record_Type_With_Private
230+ and then Is_Record_Type (Etype (Prefix_Type))
231+ then
232+ -- If this is a derived formal type, the parent may have a
233+ -- different visibility at this point. Try for an inherited
234+ -- component before reporting an error.
235+
236+ Set_Etype (Prefix (N), Etype (Prefix_Type));
237+ Analyze_Selected_Component (N);
238+ return;
239+
240 else
241 if Ekind (Prefix_Type) = E_Record_Subtype then
242
243
244*** checks.ads 2001/07/16 01:26:04 1.55
245--- checks.ads 2001/10/28 15:13:02 1.56
246***************
247*** 83,88 ****
248--- 83,95 ----
249 -- the object denoted by the access parameter is not deeper than the
250 -- level of the type Typ. Program_Error is raised if the check fails.
251
252+ procedure Apply_Alignment_Check (E : Entity_Id; N : Node_Id);
253+ -- E is the entity for an object. If there is an address clause for
254+ -- this entity, and checks are enabled, then this procedure generates
255+ -- a check that the specified address has an alignment consistent with
256+ -- the alignment of the object, raising PE if this is not the case. The
257+ -- resulting check (if one is generated) is inserted before node N.
258+
259 procedure Apply_Array_Size_Check (N : Node_Id; Typ : Entity_Id);
260 -- N is the node for an object declaration that declares an object of
261 -- array type Typ. This routine generates, if necessary, a check that
262
263*** exp_ch13.adb 2001/07/16 21:21:29 1.76
264--- exp_ch13.adb 2001/10/28 15:13:25 1.77
265***************
266*** 27,32 ****
267--- 27,33 ----
268 ------------------------------------------------------------------------------
269
270 with Atree; use Atree;
271+ with Checks; use Checks;
272 with Einfo; use Einfo;
273 with Exp_Ch3; use Exp_Ch3;
274 with Exp_Ch6; use Exp_Ch6;
275***************
276*** 236,245 ****
277 Decl : Node_Id;
278
279 begin
280! if not Is_Type (E) and then not Is_Subprogram (E) then
281 return;
282 end if;
283
284 E_Scope := Scope (E);
285
286 -- If we are freezing entities defined in protected types, they
287--- 237,256 ----
288 Decl : Node_Id;
289
290 begin
291! -- For object, with address clause, check alignment is OK
292!
293! if Is_Object (E) then
294! Apply_Alignment_Check (E, N);
295!
296! -- Only other items requiring any front end action are
297! -- types and subprograms.
298!
299! elsif not Is_Type (E) and then not Is_Subprogram (E) then
300 return;
301 end if;
302
303+ -- Here E is a type or a subprogram
304+
305 E_Scope := Scope (E);
306
307 -- If we are freezing entities defined in protected types, they
308***************
309*** 304,314 ****
310
311 elsif Is_Subprogram (E) then
312 Freeze_Subprogram (N);
313-
314- -- No other entities require any front end freeze actions
315-
316- else
317- null;
318 end if;
319
320 -- Analyze actions generated by freezing. The init_proc contains
321--- 315,320 ----
322
323*** exp_util.ads 2001/07/23 10:05:17 1.112
324--- exp_util.ads 2001/10/28 15:14:04 1.113
325***************
326*** 372,386 ****
327 -- routine is to help avoid generating troublesome temporaries that
328 -- intefere with the stack checking mechanism.
329
330- function Must_Be_Aligned (Obj : Node_Id) return Boolean;
331- -- Given an object reference, determines whether or not the object
332- -- is required to be aligned according to its type'alignment value.
333- -- Normally, objects are required to be aligned, and the result will
334- -- be True. The situation in which this is not the case is if the
335- -- object reference involves a component of a packed array, where
336- -- the type of the component is not required to have strict alignment.
337- -- In this case, false will be returned.
338-
339 procedure Remove_Side_Effects
340 (Exp : Node_Id;
341 Name_Req : Boolean := False;
342--- 372,377 ----
343
344*** mdllfile.ads 2001/10/29 02:06:24 1.2
345--- mdllfile.ads 2001/10/29 02:50:12 1.3
346***************
347*** 26,52 ****
348 -- --
349 ------------------------------------------------------------------------------
350
351! -- Simple services used by GNATDLL to deal with Filename extension.
352
353 package MDLL.Files is
354
355 No_Ext : constant String := "";
356
357! function Get_Ext (Filename : in String)
358! return String;
359! -- return filename's extension.
360!
361! function Is_Ali (Filename : in String)
362! return Boolean;
363! -- test if Filename is an Ada library file (.ali).
364!
365! function Is_Obj (Filename : in String)
366! return Boolean;
367! -- test if Filename is an object file (.o or .obj).
368!
369! function Ext_To (Filename : in String;
370! New_Ext : in String := No_Ext)
371! return String;
372! -- return Filename with the extension change to New_Ext.
373
374 end MDLL.Files;
375--- 26,51 ----
376 -- --
377 ------------------------------------------------------------------------------
378
379! -- Simple services used by GNATDLL to deal with Filename extension
380
381 package MDLL.Files is
382
383 No_Ext : constant String := "";
384+ -- Used to mark the absence of an extension
385
386! function Get_Ext (Filename : String) return String;
387! -- Return extension of Filename
388!
389! function Is_Ali (Filename : String) return Boolean;
390! -- Test if Filename is an Ada library file (.ali).
391!
392! function Is_Obj (Filename : String) return Boolean;
393! -- Test if Filename is an object file (.o or .obj)
394!
395! function Ext_To
396! (Filename : String;
397! New_Ext : String := No_Ext)
398! return String;
399! -- Return Filename with the extension change to New_Ext
400
401 end MDLL.Files;
402
403*** mlib-fil.ads 2001/10/29 02:06:26 1.3
404--- mlib-fil.ads 2001/10/29 02:51:28 1.4
405***************
406*** 36,51 ****
407 return String;
408 -- Return Filename with the extension change to New_Ext.
409
410! function Get_Ext (Filename : in String) return String;
411 -- Return extension of filename.
412
413 function Is_Archive (Filename : String) return Boolean;
414 -- Test if filename is an archive
415
416! function Is_C (Filename : in String) return Boolean;
417 -- Test if Filename is a C file
418
419! function Is_Obj (Filename : in String) return Boolean;
420 -- Test if Filename is an object file
421
422 end MLib.Fil;
423--- 36,51 ----
424 return String;
425 -- Return Filename with the extension change to New_Ext.
426
427! function Get_Ext (Filename : String) return String;
428 -- Return extension of filename.
429
430 function Is_Archive (Filename : String) return Boolean;
431 -- Test if filename is an archive
432
433! function Is_C (Filename : String) return Boolean;
434 -- Test if Filename is a C file
435
436! function Is_Obj (Filename : String) return Boolean;
437 -- Test if Filename is an object file
438
439 end MLib.Fil;
440
441*** exp_ch8.adb 2001/10/03 02:17:32 1.30
442--- exp_ch8.adb 2001/10/29 17:32:24 1.31
443***************
444*** 59,65 ****
445 -- of the renamed object. The cases in which this is not true are when
446 -- this address is not computable, since it involves extraction of a
447 -- packed array element, or of a record component to which a component
448! -- clause applies (that can specify an arbitrary bit boundary).
449
450 -- In these two cases, we pre-evaluate the renaming expression, by
451 -- extracting and freezing the values of any subscripts, and then we
452--- 59,66 ----
453 -- of the renamed object. The cases in which this is not true are when
454 -- this address is not computable, since it involves extraction of a
455 -- packed array element, or of a record component to which a component
456! -- clause applies (that can specify an arbitrary bit boundary), or where
457! -- the enclosing record itself has a non-standard representation.
458
459 -- In these two cases, we pre-evaluate the renaming expression, by
460 -- extracting and freezing the values of any subscripts, and then we
461***************
462*** 211,228 ****
463 end if;
464
465 elsif Nkind (Nam) = N_Selected_Component then
466! if Present (Component_Clause (Entity (Selector_Name (Nam)))) then
467! return True;
468
469! elsif Ekind (Entity (Selector_Name (Nam))) = E_Discriminant
470! and then Is_Record_Type (Etype (Prefix (Nam)))
471! and then not Is_Concurrent_Record_Type (Etype (Prefix (Nam)))
472! then
473! return True;
474
475! else
476! return Evaluation_Required (Prefix (Nam));
477! end if;
478
479 else
480 return False;
481--- 212,236 ----
482 end if;
483
484 elsif Nkind (Nam) = N_Selected_Component then
485! declare
486! Rec_Type : Entity_Id := Etype (Prefix (Nam));
487
488! begin
489! if Present (Component_Clause (Entity (Selector_Name (Nam))))
490! or else Has_Non_Standard_Rep (Rec_Type)
491! then
492! return True;
493!
494! elsif Ekind (Entity (Selector_Name (Nam))) = E_Discriminant
495! and then Is_Record_Type (Rec_Type)
496! and then not Is_Concurrent_Record_Type (Rec_Type)
497! then
498! return True;
499
500! else
501! return Evaluation_Required (Prefix (Nam));
502! end if;
503! end;
504
505 else
506 return False;
507
508*** g-dirope.ads 2001/08/27 09:48:38 1.12
509--- g-dirope.ads 2001/10/29 19:18:13 1.13
510***************
511*** 38,43 ****
512--- 38,47 ----
513 -- can be treated as a file, using open and close routines, and a scanning
514 -- routine is provided for iterating through the entries in a directory.
515
516+ -- See also child package GNAT.Directory_Operations.Iteration
517+
518+ with Ada.Strings.Maps;
519+
520 package GNAT.Directory_Operations is
521
522 subtype Dir_Name_Str is String;
523***************
524*** 187,248 ****
525 -- returned in target-OS form. Raises Directory_Error if Dir has not
526 -- be opened (Dir = Null_Dir).
527
528- generic
529- with procedure Action
530- (Item : String;
531- Index : Positive;
532- Quit : in out Boolean);
533- procedure Wildcard_Iterator (Path : Path_Name);
534- -- Calls Action for each path matching Path. Path can include wildcards '*'
535- -- and '?' and [...]. The rules are:
536- --
537- -- * can be replaced by any sequence of characters
538- -- ? can be replaced by a single character
539- -- [a-z] match one character in the range 'a' through 'z'
540- -- [abc] match either character 'a', 'b' or 'c'
541- --
542- -- Item is the filename that has been matched. Index is set to one for the
543- -- first call and is incremented by one at each call. The iterator's
544- -- termination can be controlled by setting Quit to True. It is by default
545- -- set to False.
546- --
547- -- For example, if we have the following directory structure:
548- -- /boo/
549- -- foo.ads
550- -- /sed/
551- -- foo.ads
552- -- file/
553- -- foo.ads
554- -- /sid/
555- -- foo.ads
556- -- file/
557- -- foo.ads
558- -- /life/
559- --
560- -- A call with expression "/s*/file/*" will call Action for the following
561- -- items:
562- -- /sed/file/foo.ads
563- -- /sid/file/foo.ads
564-
565- generic
566- with procedure Action
567- (Item : String;
568- Index : Positive;
569- Quit : in out Boolean);
570- procedure Find
571- (Root_Directory : Dir_Name_Str;
572- File_Pattern : String);
573- -- Recursively searches the directory structure rooted at Root_Directory.
574- -- This provides functionality similar to the UNIX 'find' command.
575- -- Action will be called for every item matching the regular expression
576- -- File_Pattern (see GNAT.Regexp). Item is the full pathname to the file
577- -- starting with Root_Directory that has been matched. Index is set to one
578- -- for the first call and is incremented by one at each call. The iterator
579- -- will pass in the value False on each call to Action. The iterator will
580- -- terminate after passing the last matched path to Action or after
581- -- returning from a call to Action which sets Quit to True.
582- -- Raises GNAT.Regexp.Error_In_Regexp if File_Pattern is ill formed.
583-
584 function Read_Is_Thread_Safe return Boolean;
585 -- Indicates if procedure Read is thread safe. On systems where the
586 -- target system supports this functionality, Read is thread safe,
587--- 191,196 ----
588***************
589*** 259,263 ****
590--- 207,215 ----
591 Null_Dir : constant Dir_Type := null;
592
593 pragma Import (C, Dir_Separator, "__gnat_dir_separator");
594+
595+ Dir_Seps : constant Ada.Strings.Maps.Character_Set :=
596+ Ada.Strings.Maps.To_Set ("/\");
597+ -- UNIX and DOS style directory separators.
598
599 end GNAT.Directory_Operations;
600
601*** freeze.ads 2001/10/29 02:06:04 1.15
602--- freeze.ads 2001/10/30 01:36:24 1.16
603***************
604*** 205,210 ****
605--- 205,215 ----
606 -- so need to be similarly treated. Freeze_Expression takes care of
607 -- determining the proper insertion point for generated freeze actions.
608
609+ procedure Freeze_Fixed_Point_Type (Typ : Entity_Id);
610+ -- Freeze fixed point type. For fixed-point types, we have to defer
611+ -- setting the size and bounds till the freeze point, since they are
612+ -- potentially affected by the presence of size and small clauses.
613+
614 procedure Freeze_Itype (T : Entity_Id; N : Node_Id);
615 -- This routine is called when an Itype is created and must be frozen
616 -- immediately at the point of creation (for the sake of the expansion
617
618*** impunit.adb 2001/09/26 07:14:11 1.14
619--- impunit.adb 2001/10/30 04:33:45 1.15
620***************
621*** 195,200 ****
622--- 195,201 ----
623 "g-curexc", -- GNAT.Current_Exception
624 "g-debpoo", -- GNAT.Debug_Pools
625 "g-debuti", -- GNAT.Debug_Utilities
626+ "g-diopit", -- GNAT.Directory_Operations.Iteration
627 "g-dirope", -- GNAT.Directory_Operations
628 "g-dyntab", -- GNAT.Dynamic_Tables
629 "g-exctra", -- GNAT.Exception_Traces
630
631*** g-regexp.adb 2001/10/21 11:04:16 1.28
632--- g-regexp.adb 2001/10/30 15:25:04 1.29
633***************
634*** 32,38 ****
635 -- --
636 ------------------------------------------------------------------------------
637
638- with System.IO;
639 with Unchecked_Deallocation;
640 with Ada.Exceptions;
641 with GNAT.Case_Util;
642--- 32,37 ----
643***************
644*** 73,82 ****
645 end record;
646 -- Deterministic finite-state machine
647
648- Debug : constant Boolean := False;
649- -- When True, the primary and secondary tables will be printed.
650- -- Gnat does not generate any code if this variable is False;
651-
652 -----------------------
653 -- Local Subprograms --
654 -----------------------
655--- 72,77 ----
656***************
657*** 188,199 ****
658 pragma No_Return (Raise_Exception);
659 -- Raise an exception, indicating an error at character Index in S.
660
661- procedure Print_Table
662- (Table : Regexp_Array;
663- Num_States : State_Index;
664- Is_Primary : Boolean := True);
665- -- Print a table for debugging purposes
666-
667 --------------------
668 -- Create_Mapping --
669 --------------------
670--- 183,188 ----
671***************
672*** 1225,1309 ****
673 end loop;
674 end loop;
675
676- if Debug then
677- System.IO.New_Line;
678- System.IO.Put_Line ("Secondary table : ");
679- Print_Table (R.States, Nb_State, False);
680- end if;
681-
682 return (Ada.Finalization.Controlled with R => R);
683 end;
684 end Create_Secondary_Table;
685
686- -----------------
687- -- Print_Table --
688- -----------------
689-
690- procedure Print_Table
691- (Table : Regexp_Array;
692- Num_States : State_Index;
693- Is_Primary : Boolean := True)
694- is
695- function Reverse_Mapping (N : Column_Index) return Character;
696- -- Return the character corresponding to a column in the mapping
697-
698- ---------------------
699- -- Reverse_Mapping --
700- ---------------------
701-
702- function Reverse_Mapping (N : Column_Index) return Character is
703- begin
704- for Column in Map'Range loop
705- if Map (Column) = N then
706- return Column;
707- end if;
708- end loop;
709-
710- return ' ';
711- end Reverse_Mapping;
712-
713- -- Start of processing for Print_Table
714-
715- begin
716- -- Print the header line
717-
718- System.IO.Put (" [*] ");
719-
720- for Column in 1 .. Alphabet_Size loop
721- System.IO.Put
722- (String'(1 .. 1 => Reverse_Mapping (Column)) & " ");
723- end loop;
724-
725- if Is_Primary then
726- System.IO.Put ("closure....");
727- end if;
728-
729- System.IO.New_Line;
730-
731- -- Print every line
732-
733- for State in 1 .. Num_States loop
734- System.IO.Put (State'Img);
735-
736- for K in 1 .. 3 - State'Img'Length loop
737- System.IO.Put (" ");
738- end loop;
739-
740- for K in 0 .. Alphabet_Size loop
741- System.IO.Put (Table (State, K)'Img & " ");
742- end loop;
743-
744- for K in Alphabet_Size + 1 .. Table'Last (2) loop
745- if Table (State, K) /= 0 then
746- System.IO.Put (Table (State, K)'Img & ",");
747- end if;
748- end loop;
749-
750- System.IO.New_Line;
751- end loop;
752-
753- end Print_Table;
754-
755 ---------------------
756 -- Raise_Exception --
757 ---------------------
758--- 1214,1223 ----
759***************
760*** 1345,1356 ****
761 (Table, Num_States, Start_State, End_State);
762 end if;
763
764- if Debug then
765- Print_Table (Table.all, Num_States);
766- System.IO.Put_Line ("Start_State : " & Start_State'Img);
767- System.IO.Put_Line ("End_State : " & End_State'Img);
768- end if;
769-
770 -- Creates the secondary table
771
772 R := Create_Secondary_Table
773--- 1259,1264 ----
774***************
775*** 1451,1467 ****
776 New_Table := new Regexp_Array (Table'First (1) .. New_Lines,
777 Table'First (2) .. New_Columns);
778 New_Table.all := (others => (others => 0));
779-
780- if Debug then
781- System.IO.Put_Line ("Reallocating table: Lines from "
782- & State_Index'Image (Table'Last (1))
783- & " to "
784- & State_Index'Image (New_Lines));
785- System.IO.Put_Line (" and columns from "
786- & Column_Index'Image (Table'Last (2))
787- & " to "
788- & Column_Index'Image (New_Columns));
789- end if;
790
791 for J in Table'Range (1) loop
792 for K in Table'Range (2) loop
793--- 1359,1364 ----
794
795*** g-dirope.adb 2001/10/31 21:36:04 1.20
796--- g-dirope.adb 2001/11/01 16:39:33 1.21
797***************
798*** 371,387 ****
799 E := E + 1;
800
801 Var_Name : loop
802! exit Var_Name when E = Path'Last;
803
804 if Characters.Handling.Is_Letter (Path (E))
805 or else Characters.Handling.Is_Digit (Path (E))
806 then
807 E := E + 1;
808 else
809- E := E - 1;
810 exit Var_Name;
811 end if;
812 end loop Var_Name;
813
814 declare
815 Env : OS_Lib.String_Access := OS_Lib.Getenv (Path (K .. E));
816--- 371,388 ----
817 E := E + 1;
818
819 Var_Name : loop
820! exit Var_Name when E > Path'Last;
821
822 if Characters.Handling.Is_Letter (Path (E))
823 or else Characters.Handling.Is_Digit (Path (E))
824 then
825 E := E + 1;
826 else
827 exit Var_Name;
828 end if;
829 end loop Var_Name;
830+
831+ E := E - 1;
832
833 declare
834 Env : OS_Lib.String_Access := OS_Lib.Getenv (Path (K .. E));
0b09835f
ES
8352001-12-11 Ed Schonberg <schonber@gnat.com>
836
837 * sem_ch10.adb (Install_Withed_Unit): If the unit is a generic instance
838 that is the parent of other generics, the instance body replaces the
839 instance node. Retrieve the instance of the spec, which is the one
840 that is visible in clients and within the body.
841
598c3446
GB
8422001-12-11 Vincent Celier <celier@gnat.com>
843
844 * gnatmain.adb: Initial version.
845
846 * gnatmain.ads: Initial version.
847
848 * prj-attr.adb (Initialisation_Data): Add package Gnatstub.
849
850 * snames.adb: Updated to match snames.ads.
851
852 * snames.ads: Added Gnatstub.
853
8542001-12-11 Vincent Celier <celier@gnat.com>
855
856 * prj-attr.adb (Initialization_Data): Change name from
857 Initialisation_Data.
858
8592001-12-11 Emmanuel Briot <briot@gnat.com>
860
861 * g-regpat.adb (Parse_Literal): Properly handle simple operators ?,
862 + and * applied to backslashed expressions like \r.
863
8642001-12-11 Vasiliy Fofanov <fofanov@gnat.com>
865
866 * g-os_lib.ads: String_List type added, Argument_List type is now
867 subtype of String_List.
868
8692001-12-11 Robert Dewar <dewar@gnat.com>
870
871 * g-os_lib.ads: Change copyright to FSF
872 Add comments for String_List type
873
8742001-12-11 Vincent Celier <celier@gnat.com>
875
876 * g-dirope.adb (Expand_Path): Fix bug. (wrong length when adding a
877 string to the buffer).
878
7fb754a1
GB
8792001-12-11 Ed Schonberg <schonber@gnat.com>
880
881 * freeze.adb: Make Freeze_Fixed_Point_Type visible, for use in
882 sem_attr.
883
884 * sem_attr.adb: Simplify previous fix for Address.
885 (Set_Bounds): If prefix is a non-frozen fixed-point type, freeze now,
886 to avoid anomalies where the bound of the type appears to raise
887 constraint error.
888
8892001-12-11 Robert Dewar <dewar@gnat.com>
890
891 * lib-xref.adb (Output_Refs): Make sure pointers are always properly
892 handled.
893
8942001-12-11 Ed Schonberg <schonber@gnat.com>
895
896 * sem_ch12.adb (Analyze_Subprogram_Instantiation): Check for a
897 renamed unit before checking for recursive instantiations.
898
8992001-12-11 Emmanuel Briot <briot@gnat.com>
900
901 * prj.ads: Add comments for some of the fields.
902
0873bafc
GB
9032001-12-11 Robert Dewar <dewar@gnat.com>
904
905 * lib-xref.adb (Output_Refs): Don't output type references outside
906 the main unit if they are not otherwise referenced.
907
9082001-12-11 Ed Schonberg <schonber@gnat.com>
909
910 * sem_attr.adb (Analyze_attribute, case Address and Size): Simplify
911 code and diagnose additional illegal uses
912
913 * sem_util.adb (Is_Object_Reference): An indexed component is an
914 object only if the prefix is.
915
9162001-12-11 Vincent Celier <celier@gnat.com>
917
918 * g-diopit.adb: Initial version.
919
920 * g-diopit.ads: Initial version.
921
922 * g-dirope.adb:
923 (Expand_Path): Avoid use of Unbounded_String
924 (Find, Wildcard_Iterator): Moved to child package Iteration
925
926 * Makefile.in: Added g-diopit.o to GNATRTL_NONTASKING_OBJS
927
7fb754a1 9282001-12-11 Robert Dewar <dewar@gnat.com>
0873bafc
GB
929
930 * sem_attr.adb: Minor reformatting
931
d087cd96
GB
9322001-12-11 Ed Schonberg <schonber@gnat.com>
933
934 * sem_ch3.adb: Clarify some ???.
935
9362001-12-11 Robert Dewar <dewar@gnat.com>
937
938 * exp_util.adb (Must_Be_Aligned): Removed, replaced by
939 Exp_Pakd.Known_Aligned_Enough
940
941 * sem_ch13.adb (Check_Address_Alignment): Removed, extended
942 version is moved to Exp_Ch13.
943
9442001-12-11 Robert Dewar <dewar@gnat.com>
945
946 * einfo.ads: Minor reformatting
947
948 * exp_ch5.adb: Add comment for previous.change
949
950 * ali.adb: New interface for extended typeref stuff.
951
952 * ali.ads: New interface for typeref stuff.
953
954 * checks.adb (Apply_Alignment_Check): New procedure.
955
956 * debug.adb: Add -gnatdM for modified ALI output
957
958 * exp_pakd.adb (Known_Aligned_Enough): Replaces Known_Aligned_Enough.
959
960 * lib-xref.adb: Extend generation of <..> notation to cover
961 subtype/object types. Note that this is a complete rewrite,
962 getting rid of the very nasty quadratic algorithm previously
963 used for derived type output.
964
965 * lib-xref.ads: Extend description of <..> notation to cover
966 subtype/object types. Uses {..} for these other cases.
967 Also use (..) for pointer types.
968
969 * sem_util.adb (Check_Potentially_Blocking_Operation): Slight cleanup.
970
971 * exp_pakd.adb: Minor reformatting. Note that prevous RH should say:
972 (Known_Aligned_Enough): Replaces Must_Be_Aligned.
973
290986ed
GB
9742001-12-11 Vincent Celier <celier@gnat.com>
975
976 * gnatcmd.adb:
977 Changed /COMPILE_ONLY to /ACTIONS=COMPILE
978 Changed /BIND_ONLY to /ACTIONS=BIND
979 Changed /LINK_ONLY to /ACTIONS=LINK
980
9812001-12-11 Ed Schonberg <schonber@gnat.com>
982
983 * sem_ch8.adb (Find_Selected_Component): improved search for a
984 candidate package in case of error.
985
986 * sem_ch12.adb (Inline_Instance_Body): place head of use_clause
987 chain back on scope stack before reinstalling use clauses.
988
989 * exp_ch5.adb (Expand_N_If_Statement): if Constant_Condition_Warnings
990 is enabled, do not kill the code for the condition, to preserve
991 warning.
992
84157f51
GB
9932001-12-11 Robert Dewar <dewar@gnat.com>
994
995 * checks.adb (Insert_Valid_Check): Apply validity check to expression
996 of conversion, not to result of conversion.
997
9982001-12-11 Ed Schonberg <schonber@gnat.com>
999
1000 * sem_ch3.adb (Build_Derived_Record_Type): set Controlled flag
1001 before freezing parent. If the declarations are mutually recursive,
1002 an access to the current record type may be frozen before the
1003 derivation is complete.
1004
7ffa903f
VC
10052001-12-05 Vincent Celier <celier@gnat.com>
1006
1007 * gnatcmd.adb: (MAKE): Add new translations: -b /BIND_ONLY,
1008 -c /COMPILE_ONLY, -l /LINK_ONLY
1009
1010 * opt.ads:
1011 (Bind_Only): New Flag
1012 (Link_Only): New flag
1013
1014 * switch.adb (Scan_Make_Switches): Add processing for -b (Bind_Only)
1015 and -l (Link_Only)
1016
1017 * makeusg.adb: Add new switches -b and -l. Update Copyright notice.
1018
1019 * make.adb:
1020 (Do_Compile_Step, Do_Bind_Step, Do_Link_Step): New flags.
1021 (Gnatmake): Set the step flags. Only perform a step if the
1022 corresponding step flag is True.
1023 (Scan_Make_Arg): Reset the bind and link step flags when -u
1024 or -gnatc has been specified.
1025
f91b40db
GB
10262001-12-05 Ed Schonberg <schonber@gnat.com>
1027
1028 * sem_eval.adb (Eval_Concatenation): If left operand is a null string,
1029 get bounds from right operand.
1030
1031 * sem_eval.adb: Minor reformatting
1032
1033 * exp_util.adb (Make_Literal_Range): use bound of literal rather
1034 than Index'First, its lower bound may be different from 1.
1035
1036 * exp_util.adb: Undo earlier change, fixes ACVC regressions C48009B
1037 and C48009J
1038
10392001-12-05 Vincent Celier <celier@gnat.com>
1040
1041 * prj-nmsc.adb Minor reformatting
1042
1043 * prj-nmsc.adb (Language_Independent_Check): Reset Library flag if
1044 set and libraries are not supported.
1045
10462001-12-05 Ed Schonberg <schonber@gnat.com>
1047
1048 * sem_ch3.adb (Build_Derived_Private_Type): set Public status of
1049 private view explicitly, so the back-end can treat as a global
1050 when appropriate.
1051
45d04cbb
GB
10522001-12-05 Ed Schonberg <schonber@gnat.com>
1053
1054 * sem_ch12.adb (Instantiate_Package_Body): if instance is a compilation
1055 unit, always replace instance node with new body, for ASIS use.
1056
10572001-12-05 Vincent Celier <celier@gnat.com>
1058
1059 * prj-nmsc.adb (Language_Independent_Check): Issue a warning if
1060 libraries are not supported and both attributes Library_Name and
1061 Library_Dir are specified.
1062
1063 * prj-proc.adb (Expression): Set location of Result to location of
1064 first term.
1065
1066 * Makefile.in: Add mlib.o, mlib-fil.o, mlib-tgt and mlib-utl to GNATLS.
1067 (prj-nmsc is now importing MLib.Tgt)
1068
1069 * prj-proc.adb: Put the change indicated above that was forgotten.
1070
84436014
RD
10712001-12-05 Robert Dewar <dewar@gnat.com>
1072
1073 * Makefile.in: Add dependencies for System.IO for GNAT.Regexp
1074
7ae0dcd8
ES
10752001-12-05 Ed Schonberg <schonber@gnat.com>
1076
1077 * sem_ch3.adb (Build_Derived_Concurrent_Type): If derivation imposes a
1078 constraint, introduce explicit subtype declaration and derive from it.
1079
1080 * sem_ch3.adb: Minor reformatting
1081
c9a4817d
RD
10822001-12-05 Robert Dewar <dewar@gnat.com>
1083
1084 * checks.adb (Determine_Range): Increase cache size for checks.
1085 Minor reformatting
1086
1087 * exp_ch6.adb: Minor reformatting
1088 (Expand_N_Subprogram_Body): Reset Is_Pure for any subprogram that has
1089 a parameter whose root type is System.Address, since treating such
1090 subprograms as pure in the code generator is almost surely a mistake
1091 that will lead to unexpected results.
1092
1093 * exp_util.adb (Remove_Side_Effects): Clean up old ??? comment and
1094 change handling of conversions.
1095
1096 * g-regexp.adb: Use System.IO instead of Ada.Text_IO.
1097
2514b839
ES
10982001-12-05 Ed Schonberg <schonber@gnat.com>
1099
1100 * sem_ch3.adb (Analyze_Object_Declaration): If expression is an
1101 aggregate with static wrong size, attach generated Raise node to
1102 declaration.
1103
457b6274
RD
11042001-12-05 Robert Dewar <dewar@gnat.com>
1105
1106 * sem_attr.adb (Analyze_Attribute): Defend against bad Val attribute.
1107 Fixes compilation abandoned bomb in B24009B.
1108
19349925
ES
11092001-12-05 Ed Schonberg <schonber@gnat.com>
1110
1111 * sem_ch12.adb:
1112 Document use of Associated_Node on Selected_Components.
1113 (Save_Global_Operand_Descendants): Change to Save_Entity_Descendants,
1114 to clarify use of untyped descendant fields.
1115
6663c393
RD
11162001-12-05 Robert Dewar <dewar@gnat.com>
1117
1118 * prj-dect.ads: Add ??? comment
1119 Add 2001 to copyright notice (was not done in after all)
1120
1121 * prj-part.adb: Minor reformatting. Reword one awkward error message.
1122
1123 * prj.ads: Minor reformatting throughout, and add some ??? comments
1124
1125 * snames.ads: Minor reformatting
1126
d7b2a6af
GB
11272001-12-05 Geert Bosch <bosch@gnat.com>
1128
1129 * snames.adb: Autoupdate
1130
fbc9a404
VC
11312001-12-05 Vincent Celier <celier@gnat.com>
1132
1133 * prj-dect.adb (Parse): Rename parameter Modifying to Extends.
1134
1135 * prj-dect.ads (Parse): Rename parameter Modifying to Extends.
1136
1137 * prj-env.adb: Minor comment changes (modifying -> extends).
1138
1139 * prj-nmsc.adb: Minor comment changes (modifying -> extends).
1140
1141 * prj-part.adb (Parse_Single_Project): Change Tok_Modifying to
1142 Tok_Extends.
1143
1144 * prj.adb (Initialize): Change Modifying to Extends.
1145
1146 * scans.ads (Token_Type): Change Tok_Modifying to Tok_Extends.
1147
1148 * prj.ads: Minor comment change (Modifying -> extending).
1149
1150 * snames.ads: Change modifying to extends.
1151
7cff0b1b
RD
11522001-12-05 Robert Dewar <dewar@gnat.com>
1153
1154 * sem_warn.adb: Remove stuff for conditionals, we are not going to
1155 do this after all.
1156
1157 * sem_warn.ads: Remove stuff for conditionals, we are not going to
1158 do this after all. Add 2001 to copyright notice
1159
4f56ebb7
GB
11602001-12-04 Geert Bosch <bosch@gnat.com>
1161
1162 * einfo.h, sinfo.h, treeprs.ads: Regenerate.
1163
053defdf
RD
11642001-12-04 Robert Dewar <dewar@gnat.com>
1165
1166 * errout.adb (Error_Msg): Ignore attempt to put error msg at junk
1167 location if we already have errors. Stops some cases of cascaded
1168 errors.
1169
1170 * errout.adb: Improve comment.
1171
f311e166
RD
11722001-12-04 Robert Dewar <dewar@gnat.com>
1173
1174 * sem_ch12.adb:
1175 (Analyze_Formal_Type_Definition): Defend against Error.
1176 (Analyze_Formal_Subprogram): Defend against Error.
1177
1178 * par-ch12.adb (F_Formal_Type_Declaration): In case of error,
1179 remove following semicolon if present. Removes cascaded error.
1180
d61bd65a
DR
11812001-12-04 Douglas B. Rupp <rupp@gnat.com>
1182
1183 * bindgen.adb:
1184 (Gen_Exception_Table_Ada): Write "begin" and then return if Num
1185 exceptions equals 0.
1186 (Gen_Exception_Table_C): Return if Num exceptions equals 0.
1187 Fixes PIWG E tests (which have to be run with -gnatL).
1188
4ba603e2
RD
11892001-12-04 Robert Dewar <dewar@gnat.com>
1190
1191 * einfo.ads: Minor reformatting
1192
57568d91
ES
11932001-12-04 Ed Schonberg <schonber@gnat.com>
1194
1195 * einfo.ads: Block_Node points to the identifier of the block, not to
1196 the block node itself, to preserve the link when the block is
1197 rewritten, e.g. within an if-statement with a static condition.
1198
1199 * inline.adb (Cleanup_Scopes): recover block statement from block
1200 entity using new meaning of Block_Node.
1201
1202 * sem_ch5.adb (Analyze_Block_Statement): set Block_Node to point to
1203 identifier of block node, rather than to node itself.
1204
0815d36a
GD
12052001-12-04 Gary Dismukes <dismukes@gnat.com>
1206
1207 * layout.adb:
1208 (Get_Max_Size): Fix "start of processing" comment to say Get_Max_Size.
1209 (Discrimify): Go back to setting the Etypes of the selected component
1210 because the Vname component does not exist at this point and will
1211 fail name resolution. Also set Analyzed.
1212 Remove with and use of Sem_Res.
1213
edc0f304
AC
12142001-12-04 Arnaud Charlet <charlet@gnat.com>
1215
1216 * Makefile.in: (HIE_SOURCES): add s-fat*.
1217
32213142
RD
12182001-12-04 Robert Dewar <dewar@gnat.com>
1219
1220 * sem_attr.adb:
1221 (Compile_Time_Known_Attribute): New procedure.
1222 (Eval_Attribute, case Size): Use Compile_Time_Known_Attribute to ensure
1223 proper range check.
1224
c0def2ad
ES
12252001-12-04 Ed Schonberg <schonber@gnat.com>
1226
1227 * sem_ch7.adb (New_Private_Type): Set Is_Tagged_Type flag before
1228 processing discriminants to diagnose illegal default values.
1229
ee0a48c5
ES
12302001-12-04 Ed Schonberg <schonber@gnat.com>
1231
1232 * sem_attr.adb (Resolve_Attribute): Handle properly an non-classwide
1233 access discriminant within a type extension that constrains its
1234 parent discriminants.
1235
dd5875a6
ES
12362001-12-04 Ed Schonberg <schonber@gnat.com>
1237
1238 * sem_ch3.adb (Find_Type_Of_Subtype_Indic): If subtype indication
1239 is malformed, use instance of Any_Id to allow analysis to proceed.
1240
1241 * par-ch12.adb (P_Formal_Type_Declaration): Propagate Error if
1242 type definition is illegal.
1243 (P_Formal_Derived_Type_Definition): Better recovery when TAGGED is
1244 misplaced.
1245
c2a41e57
ES
12462001-12-04 Ed Schonberg <schonber@gnat.com>
1247
1248 * sem_warn.adb (Output_Unreferenced_Messages): Extend previous fix to
1249 constants.
1250
0ae84753
RD
12512001-12-04 Robert Dewar <dewar@gnat.com>
1252
1253 * errout.adb: Minor reformatting
1254
63db260e
RD
12552001-12-04 Robert Dewar <dewar@gnat.com>
1256
1257 * exp_util.adb: Minor reformatting from last change
1258
1259 * errout.adb (Check_For_Warning): For a Raised_Constraint_Error node
1260 which is a rewriting of an expression, traverse the original
1261 expression to remove warnings that may have been posted on it.
1262
c6d289f4
ES
12632001-12-04 Ed Schonberg <schonber@gnat.com>
1264
1265 * exp_util.adb (Must_Be_Aligned): Return false for a component of a
1266 record that has other packed components.
1267
5917e80d
DR
12682001-12-04 Douglass B. Rupp <rupp@gnat.com>
1269
1270 * adaint.c: Minor cleanups.
1271
2c70f9dd
DR
12722001-12-04 Douglass B. Rupp <rupp@gnat.com>
1273
1274 * adaint.c: Do not use utime.h on vxworks.
1275
e59b3387
AC
12762001-12-04 Arnaud Charlet <charlet@gnat.com>
1277
1278 * Makefile.adalib: Clarify step 3 (use of gnat.adc) as it causes
1279 more confusion than it solves.
1280
e288604a
GB
12812001-12-04 Geert bosch <bosch@gnat.com>
1282
1283 * einfo.h, nmake.adb, nmake.ads, sinfo.h treeprs.ads: Regenerate.
1284
5ac21013
GB
12852001-12-04 Geert Bosch <bosch@gnat.com>
1286
1287 * Makefile.in (update-sources): New target.
1288 For use by gcc_release script.
1289
7dd5bd5e
ES
12902001-12-04 Ed Schonberg <schonber@gnat.com>
1291
1292 * sem_prag.adb (Analyze_Pragma, case Validity_Checks): do not treat as
1293 a configuration pragma, it is now legal wherever a pragma can appear.
1294
a078a589
ZW
12952001-12-04 Zack Weinberg <zack@codesourcery.com>
1296
1297 * Makefile.in: Don't set ALL. Delete @cross_defines@,
1298 @cross_overrides@, @build_overrides@ stanzas. INTERNAL_CFLAGS
1299 is now @CROSS@ -DIN_GCC; update comment.
1300
0839863c
GB
13012001-12-04 Robert Dewar <dewar@gnat.com>
1302
1303 * einfo.adb (Has_Pragma_Pure_Function): New flag.
1304 Fix problem that stopped ceinfo from working
1305
1306 * einfo.ads (Has_Pragma_Pure_Function): New flag.
1307
1308 * sem_prag.adb (Pure_Function): Set new flag Has_Pragma_Pure_Function.
1309
13102001-12-04 Douglas B. Rupp <rupp@gnat.com>
9678de49
DR
1311
1312 * gnatchop.adb:
1313 (File_Time_Stamp): New procedure.
1314 (Preserve_Mode): New boolean.
1315 (Write_Unit): Pass time stamp.
1316 Implement -p switch (preserve time stamps).
1317
1318 * gnatcmd.adb (CHOP): Add translation for -p (/PRESERVE).
1319
1320 * gnatchop.adb: Do usage info for -p switch
1321
1322 * adaint.h (__gnat_set_file_time_name): New function
1323
1324 * adaint.c (__gnat_set_file_time_name): Implement
1325
1326 * adaint.h: Fix typo
1327
3b9a13c4
RD
13282001-12-03 Robert Dewar <dewar@gnat.com>
1329
667e5c5d 1330 * sinfo.ads: Minor reformatting. N_Freeze_Entity node does not
3b9a13c4
RD
1331 have Associated_Node.
1332
767b404e
RD
13332001-12-03 Robert Dewar <dewar@gnat.com>
1334
1335 * prj-proc.adb: Minor reformatting
667e5c5d 1336
767b404e
RD
1337 * make.adb: Minor reformatting
1338
11ac71ba
GB
13392001-12-03 Geert Bosch <bosch@gnat.com>
1340
667e5c5d 1341 * make.adb: Minor reformatting.
11ac71ba 1342
ef3d4d6e 13432001-12-03 Robert Dewar <dewar@gnat.com>
b1446533
RD
1344
1345 * sem_ch12.adb: Minor reformatting
1346
d6d32b24
ES
13472001-12-03 Ed Schonberg <schonber@gnat.com>
1348
667e5c5d
AJ
1349 * sem_ch12.adb (Inline_Instance_Body): Use Save_Scope_Stack and
1350 push Standard on the stack before analyzing the instance body,
d6d32b24 1351 in order to have a clean visibility environment.
667e5c5d
AJ
1352
1353 * sem_ch12.adb (Inline_Instance_Body): Remove redundant code.
d6d32b24 1354
13f08f03
ES
13552001-12-03 Ed Schonberg <schonber@gnat.com>
1356
667e5c5d 1357 * sem_ch12.adb (Instantiate_Package_Body): Protect against double
13f08f03
ES
1358 instantiation of a body that contains an inlined body.
1359
3bd6c100
ES
13602001-12-03 Ed Schonberg <schonber@gnat.com>
1361
1362 * sem_ch12.adb:
1363 (Analyze_generic_subprogram_Declaration): Set outer_generic_scope,
1364 to prevent freezing within formal packages.
1365 (Freeze_Subprogram_Body): If body comes from another instance that
1366 appeared before its own body, place freeze node at end of current
1367 declarative part, to prevent a back-end crash.
1368 (Inline_Instance_Body): Handle properly a package instance within
1369 a subprogram instance that is a child unit.
1370
58d07d8f
GS
13712001-12-01 Graham Stott <grahams@redhat.com>
1372
1373 * Makefile.in (misc.o): Add missing $(srcdir) prefix
1374 and add optabs.h dependency.
1375
1376 * misc.c: Include optabs.h
1377 (gnat_tree_code_type): Make static and const.
1378 (gnat_tree_code_length): Likewise.
1379 (gnat_tree_code_name): Likewise.
1380 (update_setjmp_buf): Obtain operands mode from insn_data.
1381
c87222f0
RH
13822001-11-29 Richard Henderson <rth@redhat.com>
1383
1384 * init.c: Remove obsolete dwarf2 frame.h section.
1385
d3945f0a
JM
13862001-11-29 Joseph S. Myers <jsm28@cam.ac.uk>
1387
1388 * Make-lang.in (ada.generated-manpages): New dummy target.
1389
9f639397
ES
13902001-11-29 Ed Schonberg <schonber@gnat.com>
1391
667e5c5d
AJ
1392 * g-os_lib.adb (Add_To_Command): use explicit loop to move string
1393 into Command, an array conversion is illegal here. Uncovered by
9f639397
ES
1394 ACATS B460005.
1395
c835e5c6
GB
13962001/11/28 Geert Bosch <bosch@gnat.com>
1397
1398 * init.c: Minor whitespace changes.
1399
49bb4548
DR
14002001-11-28 Doug Rupp <rupp@gnat.com>
1401
667e5c5d 1402 * init.c: (__gnat_install_handler,VMS): Increase size of alternate
49bb4548
DR
1403 signal stack.
1404
ea2417e5
ZW
14052001-11-28 Zack Weinberg <zack@codesourcery.com>
1406
1407 * misc.c (gnat_expand_constant): Move declaration above
1408 definition of lang_hooks.
1409 (LANG_HOOKS_EXPAND_CONSTANT): Set to gnat_expand_constant.
1410 (gnat_init): lang_expand_constant no longer exists.
1411
1412 (internal_error_function): Remove #ifdef HAVE_VPRINTF. We
1413 always have vprintf.
1414 (gnat_init): Always call set_internal_error_function.
1415
f8e0aa73
AJ
14162001-11-27 Andreas Jaeger <aj@suse.de>
1417
1418 * Makefile.in (stamp-tool_src_dir): Use symbolic link.
1419
d99b0e79
LG
14202001-11-27 Laurent Guerby <guerby@acm.org>
1421
1422 * Makefile.in: Regenerate Ada dependencies.
1423
3f0496e5
RH
14242001-11-26 Richard Henderson <rth@redhat.com>
1425
1426 * Make-lang.in (gnatbind, gnatmake, gnatbl, gnatchop, gnatcmd,
1427 gnatlink, gnatkr, gnatls, gnatmem, gnatprep, gnatpsta, gnatpsys,
1428 gnatxref, gnatfind, gnatlbr): Depend on CONFIG_H and prefix.o.
1429
92fa4733
LG
14302001-11-25 Laurent Guerby <guerby@acm.org>
1431
1432 * sysdep.c (rts_get_*): Fix style.
1433
07626501
LG
14342001-11-19 Laurent Guerby <guerby@acm.org>
1435
1436 * Makefile.in (INCLUDES_FOR_SUBDIR): Remove redundant system include
1437 since it is of no apparent use and cause warnings.
1438
22703ccc
NB
14392001-11-18 Neil Booth <neil@daikokuya.demon.co.uk>
1440
1441 * misc.c (gnat_decode_option, gnat_init_options): Make definitions
1442 static too.
1443 (gnat_init): Don't return NULL.
1444 (finish_parse): Remove.
1445
b0df4321
LG
14462001-11-17 Laurent Guerby <guerby@acm.org>
1447
1448 * Make-lang.in (GNATLIBFLAGS): Add -W -Wall.
1449 * gigi.h (init_decl_processing): Rename to gnat_init_decl_processing.
1450 * io-aux.c: Provide K&R prototypes to all functions, reformat code.
1451 * lang-spec.h: Add missing struct field to silence warnings.
1452 * sysdep.c (rts_get_*): Provide K&R prototype.
1453 * sysdep.c (Unlock_Task, Lock_Task): Move to K&R prototype.
1454 * traceback.c (Unlock_Task, Lock_Task): Likewise.
1455 * tracebak.c (__gnat_backtrace): Remove unused variable.
1456 * utils.c (end_subprog_body): Move to K&R style.
1457
d215024f
RK
1458Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1459
1460 * trans.c, utils2.c: Remove PALIGN parameter to get_inner_reference.
1461
f5e99456
NB
14622001-11-15 Neil Booth <neil@daikokuya.demon.co.uk>
1463
1464 * misc.c (gnat_init): Change prototype. Include the
1465 functionality of the old init_parse and init_decl_processing.
1466 (gnat_init_decl_processing): New prototype.
1467 (init_parse): Remove.
1468 * utils.c (init_decl_processing): Rename gnat_init_decl_processing.
1469
5d69f816
NB
14702001-11-09 Neil Booth <neil@daikokuya.demon.co.uk>
1471
1472 * misc.c (gnat_print_decl, gnat_print_type): Renamed.
1473 (LANG_HOOKS_PRINT_DECL, LANG_HOOKS_PRINT_TYPE): Override.
1474 (print_lang_statistics, lang_print_xnode, print_lang_identifier,
1475 set_yydebug): Remove.
1476
3ac88239
NB
14772001-11-09 Neil Booth <neil@daikokuya.demon.co.uk>
1478
1479 * misc.c (LANG_HOOKS_NAME, LANG_HOOKS_IDENTIFIER_SIZE): Override.
1480 (struct lang_hooks): Constify.
1481 (language_string, lang_identify): Remove.
1482 * utils.c (init_decl_processing): Update.
1483
d23c55c2
NB
14842001-11-06 Neil Booth <neil@cat.daikokuya.demon.co.uk>
1485
1486 * misc.c: Include langhooks-def.h.
1487 * Makefile.in: Update.
1488
04a1b79c
RD
14892001-10-30 Robert Dewar <dewar@gnat.com>
1490
1491 * style.adb:
1492 (Check_Identifier): Rewrite circuit to be compatible with use of letters
1493 in the upper half of ASCII.
1494 (Check_Identifier): Minor reformatting
1495
81fa2d39
GB
14962001-10-30 Geert Bosch <bosch@gnat.com>
1497
f8e0aa73 1498 * (Associated_Node, Set_Associated_Node): Do not check for
81fa2d39
GB
1499 Freeze_Entity.
1500
ffc5527f
RD
15012001-10-30 Robert Dewar <dewar@gnat.com>
1502
1503 * a-reatim.ads: Minor reformatting
1504
865335eb
RD
15052001-10-30 Robert Dewar <dewar@gnat.com>
1506
f8e0aa73 1507 * gnatdll.adb: Minor reformatting throughout. Many ??? added for
865335eb
RD
1508 undocumented declarations.
1509
5e257178
PO
15102001-10-30 Pascal Obry <obry@gnat.com>
1511
f8e0aa73 1512 * gnatdll.adb (Parse_Command_Line): handle -g option to be passed
5e257178
PO
1513 to the binder and linker.
1514 Minor style fix.
f8e0aa73 1515
5e257178
PO
1516 * mdll.ads: Fix layout. Update copyright notice.
1517
1518 * mdll.adb: Fix layout. Update copyright notice.
1519
1753e0ad
RD
15202001-10-30 Robert Dewar <dewar@gnat.com>
1521
1522 * usage.adb: Minor fix to output for -gnaty.
1523
84bfdde0
ES
15242001-10-30 Ed Schonberg <schonber@gnat.com>
1525
f8e0aa73
AJ
1526 * a-reatim.ads: Makes Seconds_Count into a 64-bit integer,
1527 to accommodate all its possible values.
84bfdde0 1528
f8e0aa73 1529 * a-reatim.adb (Split): Special-case handling of Time_Span_First
84bfdde0
ES
1530 and of small absolute values of T.
1531
c296e5fc
RK
15322001-10-30 Richard Kenner <kenner@gnat.com>
1533
f8e0aa73
AJ
1534 * misc.c (gnat_expand_expr, case NULL_EXPR): Remove call to
1535 set_mem_attributes since not needed and wrong if RESULT if a REG;
c296e5fc
RK
1536 fixes ACATS failures.
1537
07c809df
GB
15382001-10-30 Geert Bosch <bosch@gnat.com>
1539
1540 * 86numaux.adb, a-tigeau.ads, a-wtgeau.ads, fname-sf.ads, g-traceb.ads,
1541 s-tasdeb.ads, sem_maps.ads: Add 2001 to copyright notice.
1542
54d22416 15432001-10-30 Robert Dewar <dewar@gnat.com>
f8e0aa73 1544
54d22416 1545 * bindusg.adb: Undocument -f switch.
f8e0aa73 1546
54d22416 1547 * gnatcmd.adb: Remove /FULL_ELABORATION.
f8e0aa73
AJ
1548
1549 * opt.ads (Force_RM_Elaboration_Order): Document that this is
54d22416 1550 obsolescent.
f8e0aa73 1551
54d22416 1552 * gnatbind.adb: Output new warning for use of obsolescent -f switch.
f8e0aa73 1553
54d22416
RD
1554 * gnatbind.adb: Minor update of warning msg.
1555
af5cf6f8
VC
15562001-10-30 Vincent Celier <celier@gnat.com>
1557
f8e0aa73 1558 * gnatcmd.adb (MAKE, BIND, LINK, LIST, FIND, XREF): Add translations
af5cf6f8 1559 for project file switches (-P (/PROJECT_FILE=),
f8e0aa73 1560 -X (/EXTERNAL_REFERENCE=) and -vPx (/PROJECT_FILE_VERBOSITY=DEFAULT
af5cf6f8
VC
1561 or MEDIUM or HIGH)
1562
984bc4c3
GB
15632001-10-30 Geert Bosch <bosch@gnat.com>
1564
1565 * decl.c: Minor whitespace fixes.
1566
5dece937
RK
15672001-10-30 Richard Kenner <kenner@gnat.com>
1568
1569 * utils2.c (build_allocator): Test for SIZE overflow in array case too
1570
de4bf6cb
GB
15712001-10-30 Geert Bosch <bosch@gnat.com>
1572
f8e0aa73 1573 * ali-util.adb (Initialize_Checksum): Use out-mode instead of in out.
de4bf6cb 1574 Found due to GCC 3.0 warning of using uninitialized value.
f8e0aa73 1575
de4bf6cb
GB
1576 * layout.adb:
1577 (Get_Max_Size): Use variant record for tracking value/expression.
1578 Makes logic clearer and prevents warnings for uninitialized variables.
1579 (Layout_Array_Type): Use variant record for tracking value/expression.
1580 Makes logic clearer and prevents warnings for uninitialized variables.
1581
f5e44987
RD
15822001-10-30 Robert Dewar <dewar@gnat.com>
1583
1584 * lib.adb: Minor reformatting
1585
1586 * s-taprop.ads: Minor reformatting
1587
45659035 15882001-10-29 Laurent Guerby <guerby@acm.org>
f8e0aa73 1589
45659035
GB
1590 * init.c:
1591 (Raise_From_Signal_Handler, Propagate_Signal_Exception): Make arg
1592 const.
1593 (_gnat_error_handler): Make MSG const.
1594
15952001-10-29 Richard Kenner <kenner@gnat.com>
1596
1597 * sysdep.c: Fix localtime_r problem on LynxOS.
1598 Also remove #elif to avoid warnings.
f8e0aa73
AJ
1599
1600 * misc.c (yyparse): Don't set up and register jmpbuf; remove decls
45659035 1601 used by this.
f8e0aa73 1602
45659035
GB
1603 * decl.c (annotate_value): Make SIZE unsigned to avoid warning.
1604
638e383e
JM
16052001-10-28 Joseph S. Myers <jsm28@cam.ac.uk>
1606
1607 * 86numaux.adb, a-tigeau.ads, a-wtgeau.ads, decl.c, exp_ch6.adb,
1608 exp_ch9.adb, exp_util.adb, fname-sf.ads, freeze.ads, g-awk.adb,
1609 g-comlin.ads, g-dirope.adb, g-dyntab.ads, g-socket.ads,
1610 g-table.ads, g-traceb.ads, gnat-style.texi, gnatchop.adb, init.c,
1611 layout.adb, layout.ads, mdllfile.ads, mlib-fil.ads, osint.ads,
1612 s-fatgen.adb, s-imgrea.adb, s-taprop.ads, s-tasdeb.ads,
1613 sem_aggr.adb, sem_attr.adb, sem_case.ads, sem_ch13.adb,
1614 sem_ch3.adb, sem_elab.adb, sem_maps.ads, sem_res.adb,
1615 sem_util.ads, sinfo.ads, sinput.ads, table.adb, table.ads,
1616 types.ads, urealp.adb: Fix spelling errors.
1617
97f6baa0
LG
16182001-10-27 Laurent Guerby <guerby@acm.org>
1619
1620 * trans.c (gigi): Fix non determinism leading to bootstrap
1621 comparison failures for debugging information.
1622
46b58b8c
FW
16232001-10-26 Florian Weimer <fw@deneb.enyo.de>
1624
1625 * gnat_rm.texi: Use @./@: where appropriate.
1626
30151c7b
RD
16272001-10-26 Robert Dewar <dewar@gnat.com>
1628
1629 * sinfo.adb: Define Associated_Node to overlap Entity field. Cleanup.
1630
c0b1738d
RK
16312001-10-26 Richard Kenner <kenner@gnat.com>
1632
1633 * gmem.c (__gnat_gmem_read_next): Properly check for EOF
1634
5b09c153
RK
16352001-10-26 Richard Kenner <kenner@gnat.com>
1636
f8e0aa73 1637 * decl.c (validate_size): Modify message for bad size to avoid
5b09c153
RK
1638 implication that compiler is modifying the size.
1639
4d553668
RD
16402001-10-26 Robert Dewar <dewar@gnat.com>
1641
1642 * prj-util.adb: Minor reformatting. Fix bad header format.
1643
3e542a58
RD
16442001-10-26 Robert Dewar <dewar@gnat.com>
1645
1646 * sinfo.ads: Define Associated_Node to overlap Entity field. Cleanup.
f8e0aa73 1647
3e542a58 1648 * sinfo.ads: Clarify use of Associated_Node (documentation only).
f8e0aa73
AJ
1649
1650 * sem_ch12.adb: Change Node4 to Associated_Node. Change
1651 Associated_Node to Get_Associated_Node. Put use of Unchecked_Access
3e542a58
RD
1652 much more narrowly in places where needed. These are cleanups.
1653
0bf08bfe
JB
16542001-10-26 Joel Brobecker <brobecke@gnat.com>
1655
1656 * 5zosinte.ads (null_pthread): new constant.
f8e0aa73 1657
0bf08bfe
JB
1658 * 5ztaprop.adb:
1659 (Initialize_TCB): Initialize thread ID to null, to be able to verify
1660 later that this field has been set.
1661 (Finalize_TCB): ditto.
1662 (Suspend_Task): Verify that the thread ID is not null before using it.
1663 (Resume_Task): ditto.
f8e0aa73 1664
0bf08bfe
JB
1665 * s-tasdeb.adb:
1666 (Resume_All_Tasks): Lock the tasks list before using it.
1667 (Suspend_All_Tasks): ditto.
1668
7a3a8c06
RK
16692001-10-26 Richard Kenner <kenner@gnat.com>
1670
f8e0aa73 1671 * decl.c (gnat_to_gnu_entity, case E_General_Access_Type):
7a3a8c06
RK
1672 Make constant variant of designated type for Is_Access_Constant.
1673 Call update_pointer_to with main variant.
f8e0aa73
AJ
1674
1675 * trans.c (process_freeze_entity, process_type):
7a3a8c06 1676 Call update_pointer_to on main variant.
f8e0aa73 1677
7a3a8c06
RK
1678 * utils.c (update_pointer_to): Make corresponding variant for NEW_TYPE.
1679 If main variant, update all other variants.
f8e0aa73
AJ
1680
1681 * utils2.c (build_unary_op, case INDIRECT_REF): No longer set
7a3a8c06
RK
1682 TREE_STATIC.
1683
a160babb
RD
16842001-10-26 Robert Dewar <dewar@gnat.com>
1685
1686 * prj-util.adb: Minor reformatting
1687
b403bd17
RD
16882001-10-26 Robert Dewar <dewar@gnat.com>
1689
1690 * prj-util.adb: Minor reformatting
1691
5fc3b4c7
RD
16922001-10-26 Robert Dewar <dewar@gnat.com>
1693
1694 * prj-attr.adb: Minor reformatting throughout
1695
8c736034
RD
16962001-10-26 Robert Dewar <dewar@gnat.com>
1697
1698 * prj-attr.ads: Minor reformatting
1699 Add ??? comment (this whole spec has almost no comments)
1700
47d5b6ed
VC
17012001-10-26 Vincent Celier <celier@gnat.com>
1702
f8e0aa73 1703 * g-os_lib.adb (Normalize_Pathname): Preserve the double slash
47d5b6ed
VC
1704 ("//") that precede the drive letter on Interix.
1705
41af791f
GB
17062001-10-26 Geert Bosch <bosch@gnat.com>
1707
1708 * gnat_rm.texi: Add GNAT Reference Manual.
1709
ed4a1468
RD
17102001-10-25 Robert Dewar <dewar@gnat.com>
1711
f8e0aa73 1712 * sem_ch8.adb (Analyze_Package_Renaming): Skip analysis if Name
ed4a1468
RD
1713 is Error. Similar change for other renaming cases.
1714
24377ae4
RD
17152001-10-25 Robert Dewar <dewar@gnat.com>
1716
1717 * s-atacco.ads: Add pragma Inline_Always for functions.
1718 Fix header format. Add copyright 2001
1719
fef3204e
ES
17202001-10-25 Ed Schonberg <schonber@gnat.com>
1721
f8e0aa73 1722 * par-ch3.adb (P_Subtype_Mark_Resync): for an anonymous array
fef3204e
ES
1723 return Error rather than Empty so that analysis can proceed.
1724
dfc69d80
ES
17252001-10-25 Ed Schonberg <schonber@gnat.com>
1726
f8e0aa73 1727 * sem_util.adb (Enter_Name): better handling of cascaded error
dfc69d80
ES
1728 messages when a unit appears in its own context.
1729
5a15af62
ES
17302001-10-25 Ed Schonberg <schonber@gnat.com>
1731
f8e0aa73 1732 * sem_util.adb (Defining_Entity): in case of error, attach created
5a15af62
ES
1733 entity to specification, so that semantic analysis can proceed.
1734
2b881d53
RD
17352001-10-25 Robert Dewar <dewar@gnat.com>
1736
f8e0aa73 1737 * sem_util.adb
2b881d53
RD
1738 (Defining_Entity): Deal with Error.
1739 (Process_End_Label): Deal with bad end label for.
1740
578053f2
ES
17412001-10-25 Ed Schonberg <schonber@gnat.com>
1742
f8e0aa73 1743 * sem_elab.adb (Check_A_Call): refine message when call is in an
578053f2
ES
1744 instance but callee is not declared in the generic unit.
1745
0597ce0b 17462001-10-25 Ed Schonberg <schonber@gnat.com>
f8e0aa73
AJ
1747
1748 * sem_elab.adb (Check_A_Call): check for renaming before finding the
0597ce0b
ES
1749 enclosing unit, which may already be different from the calling unit.
1750
3de6e6da
GB
17512001-10-25 Geert Bosch <bosch@gnat.com>
1752
1753 * 4gintnam.ads: fix header format.
1754
6f311316
ES
17552001-10-25 Ed Schonberg <schonber@gnat.com>
1756
f8e0aa73
AJ
1757 * sem_res.adb (Resolve_Call): if the call is actually an indexing
1758 operation on the result of a parameterless call, perform elaboration
6f311316 1759 check after the node has been properly rewritten.
f8e0aa73
AJ
1760
1761 * sem_ch12.adb (Copy_Generic_Node): after the proper body has been
1762 inlined within the generic tree, the defining identifier is not a
6f311316
ES
1763 compilation_unit.
1764
17be0cdf
ES
17652001-10-25 Ed Schonberg <schonber@gnat.com>
1766
f8e0aa73 1767 * sem_res.adb (Resolve): special-case resolution of Null in an
17be0cdf 1768 instance or an inlined body to avoid view conflicts.
f8e0aa73
AJ
1769
1770 * sem_ch12.adb (Copy_Generic_Node): for allocators, check for view
17be0cdf
ES
1771 compatibility by retrieving the access type of the generic copy.
1772
ce9e9122
RD
17732001-10-25 Robert Dewar <dewar@gnat.com>
1774
1775 * sem_ch3.adb:
1776 (Analyze_Number_Declaration): Handle error expression.
1777 (Signed_Integer_Type_Declaration): Handle error bound.
1778 (Analyze_Subtype_Indication): Handle error range.
f8e0aa73 1779
ce9e9122
RD
1780 * sem_util.adb (Get_Index_Bounds): Check for Error.
1781
e12fbc9e
RD
17822001-10-25 Robert Dewar <dewar@gnat.com>
1783
f8e0aa73 1784 * restrict.adb (Set_No_Run_Time_Mode): Set Discard_Names as default
e12fbc9e
RD
1785 in no run time mode.
1786
52b80488
PO
17872001-10-25 Pascal Obry <obry@gnat.com>
1788
f8e0aa73 1789 * gnatmem.adb (Read_Next): fix Curs2 value to properly handle quiet
52b80488 1790 mode case for ALLOC case.
f8e0aa73
AJ
1791
1792 * gnatmem.adb (Read_Next): correctly fix parsing in Quiet mode on
52b80488
PO
1793 all platforms. Improvement of last change.
1794
316ad9c5
RD
17952001-10-25 Robert Dewar <dewar@gnat.com>
1796
1797 * exp_ch4.adb (Expand_N_Allocator): Minor reformatting.
1798
1a7e4df4
GB
17992001-10-25 Geert Bosch <bosch@gnat.com>
1800
1801 * osint.adb (Is_Relative): Remove duplicate.
1802
90a9fff2
PO
18032001-10-25 Pascal Obry <obry@gnat.com>
1804
f8e0aa73 1805 * osint.adb (Read_Default_Search_Dirs): correctly detect relative
90a9fff2
PO
1806 pathnames in UNIX and DOS style with drive letter.
1807 (Is_Relative): new routine.
f8e0aa73 1808
90a9fff2 1809 * osint.adb: Minor reformatting
f8e0aa73
AJ
1810
1811 * osint.adb (Is_Relative): implementation using
1a7e4df4 1812 GNAT.OS_Lib.Is_Absolute_Path. Better fix.
90a9fff2 1813
5c1ba4cc
PO
18142001-10-25 Pascal Obry <obry@gnat.com>
1815
f8e0aa73 1816 * g-dirope.adb (Basename): correctly compute offset between the
5c1ba4cc 1817 original Path and the translated one.
f8e0aa73 1818
5c1ba4cc
PO
1819 * g-dirope.adb: (Base_Name): add some comments.
1820
a7fb206d
RD
18212001-10-25 Robert Dewar <dewar@gnat.com>
1822
f8e0aa73 1823 * exp_imgv.adb (Expand_Image_Attribute): Defend against bad use
a7fb206d 1824 in HIE mode, avoids compilation abandoned message
f8e0aa73 1825
a7fb206d 1826 * exp_imgv.adb: Correct typo in previous change
f8e0aa73 1827
a7fb206d
RD
1828 * exp_imgv.adb: Correct typo in previous change (not my day!)
1829
e6a7e62e
RD
18302001-10-25 Robert Dewar <dewar@gnat.com>
1831
1832 * s-tpinop.ads: Add 2001 to copyright notice. Fix header format.
1833
0d2b8e0b 18342001-10-25 Pascal Obry <obry@gnat.com>
75c09e7d 1835
f8e0aa73 1836 * g-awk.ads: Move all pragma inlines next to the routine
0d2b8e0b 1837 declarations. This is more uniform with other GNAT spec.
75c09e7d 1838
0d2b8e0b 18392001-10-22 Geert Bosch <bosch@gnat.com>
d2740a69
GB
1840
1841 * Make-lang.in (gnattools, cross-gnattools): Remove gnatmem.
1842
0d2b8e0b 18432001-10-19 Geert Bosch <bosch@gnat.com>
d7ac9bdd
GB
1844
1845 * Makefile.in (tools, gnattools): Remove gnatmem.
1846
17ed6335
RH
18472001-10-17 Richard Henderson <rth@redhat.com>
1848
1849 * Makefile.in (misc.o): Depend on langhooks.h.
1850 * misc.c: Include it.
1851 (LANG_HOOKS_INIT, LANG_HOOKS_INIT_OPTIONS): New.
1852 (LANG_HOOKS_DECODE_OPTION): New.
1853 (lang_hooks): Use LANG_HOOKS_INITIALIZER.
1854
f2436274
FW
18552001-10-16 Florian Weimer <fw@deneb.enyo.de>
1856
1857 * trans.c (tree_transform): Adjust to recent change in
1858 expand_asm_operands to implement named asm operands.
1859
b14127e6
ES
18602001-10-11 Ed Schonberg <schonber@gnat.com>
1861
f8e0aa73 1862 * exp_ch8.adb (Expand_N_Object_Renaming_Declaration): Bugfix in
b14127e6
ES
1863 renaming of discriminant for mutable record type.
1864
e70ee92a
RD
18652001-10-11 Robert Dewar <dewar@gnat.com>
1866
1867 * validsw.adb: Properly save -gnatVn status.
1868
9a5621d7 18692001-10-11 Robert Dewar <dewar@gnat.com>
f8e0aa73 1870
9a5621d7
RD
1871 * usage.adb: Add lines for V switch.
1872
f8e0aa73 1873 * gnatcmd.adb (COMPILE): Revise translations for -gnatV
9a5621d7
RD
1874 (/VALIDITY_CHECKING).
1875
45667f04
ES
18762001-10-11 Ed Schonberg <schonber@gnat.com>
1877
f8e0aa73 1878 * sem_type.adb (Add_One_Interp): an operator for a type declared in
45667f04
ES
1879 an extension of System is known to be visible.
1880
c3de5c4c
ES
18812001-10-11 Ed Schonberg <schonber@gnat.com>
1882
f8e0aa73 1883 * sem_eval.adb (Compare_Fixup): get the bounds of a String_Literal
c3de5c4c
ES
1884 properly. Fixes regression on ACATS C34005G.
1885
4fa964a6
RD
18862001-10-11 Robert Dewar <dewar@gnat.com>
1887
f8e0aa73 1888 * sem_ch5.adb (Analyze_Iteration_Scheme): Suppress warning on null
4fa964a6
RD
1889 loop in generic instance, since this is likely not very useful.
1890
0868e09c
RD
18912001-10-11 Robert Dewar <dewar@gnat.com>
1892
f8e0aa73 1893 * restrict.adb (Disallow in No_Run_Time_Mode): Properly specialize
0868e09c 1894 the error message for high integrity mode.
f8e0aa73
AJ
1895
1896 * rtsfind.adb (RTE): Give message if we try to find an entity that
0868e09c 1897 is not available in high integrity mode.
f8e0aa73 1898
0868e09c
RD
1899 * rtsfind.ads:
1900 (OK_To_Use_In_HIE_Mode): New array.
1901 (RTE): May return Empty in high integrity mode.
f8e0aa73
AJ
1902
1903 * rtsfind.ads (OK_To_Use_In_No_Run_Time_Mode): New name for
1904 OK_To_Use_In_HIE_Mode, now includes System_FAT_xxx.
1905
1906 * sem_ch6.adb (Analyze_Subprogram_Body): Kill body in predefined
1907 unit if not inlined always and in no runtime mode. Fixes problem
0868e09c 1908 caused by new Rtsfind changes.
f8e0aa73
AJ
1909
1910 * sem_ch6.adb (Analyze_Subrogram_Body): Do not Check_References if
0868e09c 1911 body is deleted.
f8e0aa73
AJ
1912
1913 * rtsfind.adb (RTE): Make sure we do not try to load unit after
0868e09c
RD
1914 giving message for entity not available in high integrity mode.
1915
934abf9c 19162001-10-11 Pascal Obry <obry@gnat.com>
f8e0aa73 1917
934abf9c
PO
1918 * impunit.adb: Add GNAT.CRC32.
1919
3c72bea4
ES
19202001-10-11 Ed Schonberg <schonber@gnat.com>
1921
f8e0aa73
AJ
1922 * exp_fixd.adb (Expand_Multiply_Fixed_By_Fixed_Giving_Fixed): handle
1923 properly the case where one universal operand in a non-static
3c72bea4
ES
1924 exponentiation of a real literal.
1925
44d8d2bb
ES
19262001-10-11 Ed Schonberg <schonber@gnat.com>
1927
f8e0aa73
AJ
1928 * exp_ch7.adb (Find_Final_List): for a type appearing in a with_type
1929 clause, return the gobal finalization list, for lack of anthing else.
44d8d2bb 1930
9e2b9627
ES
19312001-10-11 Ed Schonberg <schonber@gnat.com>
1932
f8e0aa73
AJ
1933 * exp_ch7.adb (Make_Transient_Block): if statement is within
1934 exception handler, always use new transient scope to place Clean
9e2b9627
ES
1935 procedure.
1936
cfac6e9f
PO
19372001-10-11 Pascal Obry <obry@gnat.com>
1938
1939 * Makefile.in:
1940 (GNAT_ADA_OBJS): add g-crc32.o, a-tags.o, a-stream.o
1941 (GNATBIND_OBJS): add g-crc32.o, a-tags.o, a-stream.o
1942 (GNATLS_RTL_OBJS): add g-crc32.o
1943 (GNATMAKE_RTL_OBJS): add g-crc32.o
f8e0aa73 1944
cfac6e9f
PO
1945 * ali-util.adb:
1946 (CRC_Match): new function.
f8e0aa73 1947 (Get_File_Checksum): renamed Get_File_CRC. Use the GNAT.CRC32 unit
cfac6e9f
PO
1948 instead of the previous simple checksum algorithm.
1949 (Time_Stamp_Mismatch): use CRC_Match for comparison.
1950 (Set_Source_Table): idem.
f8e0aa73 1951
cfac6e9f 1952 * ali-util.ads:
f8e0aa73 1953 (Get_File_Checksum): renamed Get_File_CRC as now we compute CRC
cfac6e9f
PO
1954 instead of simple checksum.
1955 (CRC_Match): new function.
1956 (CRC_Error): new constant.
f8e0aa73
AJ
1957
1958 * ali.adb (Scan_ALI): rename variable Chk to CRC as we are handling
1959 a CRC now and not a simple checksum. A CRC uses lower-case hex
cfac6e9f 1960 letters, fixes ambiguity in parsing.
f8e0aa73
AJ
1961
1962 * ali.ads (Sdep_Record.Checksum): renamed Sdep_Record.CRC as this
cfac6e9f 1963 is what this variable will store.
f8e0aa73 1964
cfac6e9f 1965 * bcheck.adb: Change reference to chechsum in comments by CRC.
f8e0aa73
AJ
1966 (Check_Consistency): Rename Get_File_Checksum to Get_File_CRC.
1967 rename All_Checksum_Match to All_CRC_Match. Change due to API
1968 renaming since now GNAT does not use a simple checksum but a
cfac6e9f 1969 CRC using GNAT.CRC32.
f8e0aa73
AJ
1970
1971 * gnatls.adb: Rename Checksum to CRC in many places, we use a CRC
cfac6e9f 1972 now and not anymore a simple checksum.
f8e0aa73
AJ
1973
1974 * lib-load.adb: Use Source_CRC instead of Source_Checksum in many
cfac6e9f 1975 places.
f8e0aa73 1976
cfac6e9f 1977 * lib-writ.adb (Write_ALI): Use Source_CRC instead of Source_Checksum.
f8e0aa73 1978
cfac6e9f
PO
1979 * scans.adb:
1980 (Restore_Scan_State): rename Checksum to CRC.
1981 (Save_Scan_State): idem.
f8e0aa73 1982
cfac6e9f
PO
1983 * scans.ads:
1984 With GNAT.CRC32.
1985 (Checksum): rename to CRC.
1986 (Saved_Scan_State): Save_Checksum field renamed to Save_CRC
f8e0aa73
AJ
1987
1988 * scn-nlit.adb: Rename many Accumulate_Checksum to Update (from
cfac6e9f 1989 GNAT.CRC32). Update copyright notice.
f8e0aa73
AJ
1990
1991 * scn-slit.adb: Rename many Accumulate_Checksum to Update (from
cfac6e9f 1992 GNAT.CRC32). Update copyright notice.
f8e0aa73 1993
cfac6e9f
PO
1994 * scn.adb:
1995 (Accumulate_Checksum): removed.
1996 (Update): new procedure. Add a wide-character into the CRC.
f8e0aa73 1997
cfac6e9f
PO
1998 * sinput-l.adb:
1999 (Complete_Source_File_Entry): use CRC32 instead of simple checksum.
f8e0aa73 2000 (Load_File): fix initialization of S (change Source_Checksum to
cfac6e9f 2001 Source_CRC)
f8e0aa73
AJ
2002
2003 * sinput-p.adb (Load_Project_File): rename Source_Checksum to
cfac6e9f 2004 Source_CRC in S initialization.
f8e0aa73 2005
cfac6e9f 2006 * sinput.adb (Source_Checksum): renamed to Source_CRC.
f8e0aa73 2007
cfac6e9f
PO
2008 * sinput.ads (Source_Checksum): renamed to Source_CRC.
2009 Update comments for the CRC.
f8e0aa73 2010
cfac6e9f 2011 * types.adb (Hex): Use lowercase for the letter part.
f8e0aa73
AJ
2012
2013 * types.ads (Get_Hex_String): Returns the hexadecimal representation
2014 for a word. This is currently used only for CRC. In previous version,
2015 the checksum was using a representation with all letter being
2016 upper-case. With the new implementation (using CRC) we do not remove
2017 the 32th bit of the CRC, so we can have an upper-case starting letter
2018 in the CRC. This is not possible to parse in Scan_ALI (ali.adb).
2019 It is ambigous since the CRC was optional and could be followed by
2020 options like EB, EE. So now this routines uses lower-case letter for
2021 the hexadecimal representation. Strange enough only lower case letters
cfac6e9f 2022 where checked in Scan_ALI (even if this was not a possible case).
f8e0aa73 2023
cfac6e9f 2024 * gnatvsn.ads (Library_Version): changed to 3.15a.
f8e0aa73
AJ
2025
2026 * s-crc32.ads: Initial version from GNAT.CRC32. This is the version
cfac6e9f 2027 for the compiler.
f8e0aa73
AJ
2028
2029 * s-crc32.adb: Initial version from GNAT.CRC32. This is the version
cfac6e9f 2030 for the compiler.
f8e0aa73 2031
cfac6e9f
PO
2032 * ali-util.adb: Redo previous change to avoid using word CRC everywhere
2033 Add 2001 to copyright notice
2034 (Accumulate_Checksum): Modify to use System.CRC32.
f8e0aa73
AJ
2035
2036 * ali-util.ads: Redo changes of previous revision to continue to use
cfac6e9f 2037 the word Checksum. Add 2001 to copyright notice.
f8e0aa73 2038
cfac6e9f
PO
2039 * ali.adb: Undo some of previous changes, not needed.
2040 Keep the change for lower case letters in the checksum.
f8e0aa73 2041
cfac6e9f
PO
2042 * ali.ads: Undo previous change not needed.
2043
2044 * bcheck.adb: Undo most of previous change, not needed.
2045 But do use Checksums_Match for checksum comparison.
f8e0aa73 2046
cfac6e9f
PO
2047 * gnatls.adb: Undo most of previous change, not needed.
2048 But do use Checksums_Match for comparing checksums.
f8e0aa73 2049
cfac6e9f 2050 * lib-load.adb: Undo previous change, not needed.
f8e0aa73 2051
cfac6e9f 2052 * lib-writ.adb: Undo previous change, not needed.
f8e0aa73
AJ
2053
2054 * lib-writ.ads: Document that checksums use lower case,
cfac6e9f 2055 not upper case letters.
f8e0aa73 2056
cfac6e9f 2057 * scans.adb: Undo previous change, not needed
f8e0aa73 2058
cfac6e9f 2059 * scans.ads: Undo previous change, not needed.
f8e0aa73 2060
cfac6e9f 2061 * scn-nlit.adb: Undo previous changes, not needed.
f8e0aa73 2062
cfac6e9f 2063 * scn-slit.adb: Undo previous change, not needed. Fix header format.
f8e0aa73 2064
cfac6e9f
PO
2065 * scn.adb:
2066 (Accumulate_Checksum): Use System.CRC32.
2067 (Initialize_Checksum): New procedure.
2068 Remove other changes of previous revision.
f8e0aa73 2069
cfac6e9f 2070 * sinput-p.adb: Undo previous change, not needed.
f8e0aa73 2071
cfac6e9f
PO
2072 * sinput.adb: Undo previous change, not needed.
2073
2074 * sinput-l.adb: Undo previous change, not needed.
f8e0aa73
AJ
2075
2076 * sinput.ads: Undo previous change, not needed. Keep only comment
cfac6e9f 2077 on new checksum algorithm
f8e0aa73 2078
cfac6e9f
PO
2079 * Makefile.in: Add s-crc32 as needed, remove g-crc32.
2080 Also remove a-tags and a-stream from GNAT sources.
f8e0aa73 2081
cfac6e9f 2082 * ali.adb (Scan_ALI): fix typo introduce in latest check-in.
f8e0aa73 2083
cfac6e9f
PO
2084 * Makefile.in (GNATRTL_NONTASKING_OBJS): Add g-crc32.o.
2085
4d6d06a5
GB
20862001-10-11 Geert Bosch <bosch@gnat.com>
2087
2088 * einfo.h: Regenerate.
2089
2090 * nmake.ads: Regenerate.
2091
2092 * nmake.adb: Regenerate.
2093
2094 * sinfo.h: Regenerate.
2095
2096 * treeprs.adb: Regenerate.
2097
c97412e2
GB
20982001-10-10 Geert Bosch <bosch@gnat.com>
2099
2100 * gnat-style.texi: New file describing coding guidelines for Ada.
f8e0aa73 2101
b83018ca
ES
21022001-10-10 Ed Schonberg <schonber@gnat.com>
2103
f8e0aa73 2104 * einfo.adb (Write_Entity_Flags): Elaboration_Entity_Required
b83018ca
ES
2105 is Flag174.
2106
e834fe1f
GB
21072001-10-10 Geert Bosch <bosch@gnat.com>
2108
2109 * snames.ads: Add new names for project facility.
2110
2111 * snames.adb: Update to reflect snames.ads changes.
2112
2113 * snames.h: Update to reflect snames.ads changes.
2114
b30668b7
VC
21152001-10-10 Vincent Celier <celier@gnat.com>
2116
2117 * make.adb:
2118 (Add_Switches): reflect the changes for the switches attributes
2119 Default_Switches indexed by the programming language,
2120 Switches indexed by the file name.
2121 (Collect_Arguments_And_Compile): Idem.
2122 Reflect the attribute name changes.
f8e0aa73 2123
b30668b7
VC
2124 * prj-attr.adb:
2125 (Initialisation_Data): Change the names of some packages and
2126 attributes.
2127 (Initialize): process case insensitive associative arrays.
f8e0aa73 2128
b30668b7
VC
2129 * prj-attr.ads:
2130 (Attribute_Kind): Remove Both, add Case_Insensitive_Associative_Array.
f8e0aa73 2131
b30668b7
VC
2132 * prj-dect.adb:
2133 (Parse_Attribute_Declaration): For case insensitive associative
2134 arrays, set the index string to lower case.
f8e0aa73 2135
b30668b7
VC
2136 * prj-env.adb:
2137 Reflect the changes of the project attributes.
f8e0aa73 2138
b30668b7
VC
2139 * prj-nmsc.adb:
2140 Replace Check_Naming_Scheme by Ada_Check and
2141 Language_Independent_Check.
f8e0aa73 2142
b30668b7
VC
2143 * prj-nmsc.ads:
2144 Replaced Check_Naming_Scheme by 2 procedures:
2145 Ada_Check and Language_Independent_Check.
f8e0aa73 2146
b30668b7
VC
2147 * prj-proc.adb:
2148 (Process_Declarative_Items): For case-insensitive associative
2149 arrays, set the index string to lower case.
2150 (Recursive_Check): Call Prj.Nmsc.Ada_Check, instead of
2151 Prj.Nmsc.Check_Naming_Scheme.
f8e0aa73 2152
b30668b7
VC
2153 * prj-tree.adb:
2154 (Case_Insensitive): New function
2155 (Set_Case_Insensitive): New procedure
f8e0aa73 2156
b30668b7
VC
2157 * prj-tree.ads:
2158 (Case_Insensitive): New function
2159 (Set_Case_Insensitive): New procedure
2160 (Project_Node_Record): New flag Case_Insensitive.
f8e0aa73 2161
b30668b7
VC
2162 * prj-util.adb:
2163 (Value_Of): new function to get the string value of a single
2164 string variable or attribute.
f8e0aa73 2165
b30668b7
VC
2166 * prj-util.ads:
2167 (Value_Of): new function to get the string value of a single
2168 string variable or attribute.
f8e0aa73 2169
b30668b7
VC
2170 * prj.adb:
2171 (Ada_Default_Spec_Suffix): New function
2172 (Ada_Default_Impl_Suffix): New function
2173 Change definitions of several constants to reflect
2174 new components of record types.
f8e0aa73 2175
b30668b7
VC
2176 * prj.ads:
2177 (Naming_Data): Change several components to reflect new
2178 elements of naming schemes.
2179 (Project_Data): New flags Sources_Present and
2180 Language_Independent_Checked.
2181 (Ada_Default_Spec_Suffix): New function.
2182 (Ada_Default_Impl_Suffix): New function.
f8e0aa73 2183
b30668b7
VC
2184 * snames.ads:
2185 Modification of predefined names for project manager: added
2186 Implementation, Specification_Exceptions, Implementation_Exceptions,
2187 Specification_Suffix, Implementation_Suffix, Separate_Suffix,
2188 Default_Switches, _Languages, Builder, Cross_Reference,
2189 Finder. Removed Body_Part, Specification_Append, Body_Append,
2190 Separate_Append, Gnatmake, Gnatxref, Gnatfind, Gnatbind,
2191 Gnatlink.
f8e0aa73 2192
b30668b7
VC
2193 * prj.ads: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
2194 Add comments.
f8e0aa73 2195
b30668b7
VC
2196 * prj-nmsc.adb (Ada_Check): Test that Separate_Suffix is defaulted,
2197 not that it is Nil_Variable_Value.
f8e0aa73 2198
b30668b7
VC
2199 * prj.ads: Add ??? for uncommented declarations
2200
662e57b4
ES
22012001-10-10 Ed Schonberg <schonber@gnat.com>
2202
f8e0aa73
AJ
2203 * sem_prag.adb: (Analyze_Pragma, case External): If entity is a
2204 constant, do not indicate possible modification, so that gigi can
662e57b4
ES
2205 treat it as a bona fide constant.
2206
72e4357f
RD
22072001-10-10 Robert Dewar <dewar@gnat.com>
2208
2209 * sem_prag.adb: Add processing for pragma External.
f8e0aa73 2210
72e4357f 2211 * snames.ads: Add entry for pragma External.
f8e0aa73 2212
72e4357f 2213 * par-prag.adb: Add pragma External.
f8e0aa73 2214
72e4357f
RD
2215 * snames.adb: Updated to match snames.ads.
2216
7bc1c7df
ES
22172001-10-10 Ed Schonberg <schonber@gnat.com>
2218
2219 * exp_ch4.adb (Expand_N_Allocator): Generate meaningful names for
2220 a dynamic task if the allocator appears in an indexed assignment
2221 or selected component assignment.
f8e0aa73
AJ
2222
2223 * exp_util.adb (Build_Task_Array_Image, Build_Task_Record_Image):
2224 For a dynamic task in an assignment statement, use target of
7bc1c7df
ES
2225 assignment to generate meaningful name.
2226
c84700e7
ES
22272001-10-10 Ed Schonberg <schonber@gnat.com>
2228
f8e0aa73 2229 * einfo.adb (Write_Field19_Name): Body_Entity is also defined for
c84700e7
ES
2230 a generic package.
2231
2232 * einfo.ads: Body_Entity is also defined for generic package.
2233 Documentation change only
f8e0aa73
AJ
2234
2235 * exp_aggr.adb (Build_Array_Aggr_Code): When expanding an
2236 others_choice for a discriminated component initialization,
2237 convert discriminant references into the corresponding discriminals.
2238
2239 * exp_ch3.adb (Get_Simple_Init_Val): Add qualification to aggregate
2240 only if original type is private and expression has to be wrapped
c84700e7 2241 in a conversion.
f8e0aa73
AJ
2242
2243 * checks.adb:
2244 (Apply_Constraint_Check): Do not perform length check
c84700e7 2245 if expression is an aggregate with only an others_choice.
f8e0aa73 2246 (Length_N_Cond): two references to the same in_parameter
c84700e7
ES
2247 (typically the discriminal in an init_proc) denote the same value.
2248 Two useful optimization uncovered by bugfixes above.
2249
d8d80dcd
RD
22502001-10-10 Robert Dewar <dewar@gnat.com>
2251
f8e0aa73 2252 * xeinfo.adb: Change int to char in translation of enumeration types.
d8d80dcd
RD
2253 This fixes a problem in the C representation of component alignment.
2254 Add 2001 to copyright notice
2255
a8fee948
RK
22562001-10-10 Richard Kenner <kenner@gnat.com>
2257
f8e0aa73 2258 * decl.c: (validate_size): Do check size of object of integral type
a8fee948
RK
2259 if it is a packed array type.
2260
c2d7fe59
RK
22612001-10-10 Richard Kenner <kenner@gnat.com>
2262
f8e0aa73 2263 * decl.c: (gnat_to_gnu_entity, case object): Also materialize
c2d7fe59
RK
2264 VAR_DECL for constant if not Is_Public but -O0.
2265
fb75e100
RK
22662001-10-10 Richard Kenner <kenner@gnat.com>
2267
2268 * misc.c (struct lang_hooks): Add new initializer to match GCC change.
2269
1724557a
GB
22702001-10-10 Geert Bosch <bosch@gnat.com>
2271
f8e0aa73 2272 * xnmake.adb (XNmake): Fix handling of -s/-b options. No longer
1724557a
GB
2273 use '/' as switch character, allowing for absolute file names.
2274
9f2f9eb6
JM
22752001-10-09 Joseph S. Myers <jsm28@cam.ac.uk>
2276
2277 * 4gintnam.ads, Make-lang.in, Makefile.in, config-lang.in: Update
2278 FSF address.
2279
8fecf41d
GB
22802001-10-08 Geert Bosch <bosch@gnat.com>
2281
2282 * Makefile.in (treeprs.ads, einfo.h, sinfo.h, nmake.adb, nmake.ads):
2283 Automatically build utilities when files need to be regenerated.
2284
589f1edf
GB
22852001-10-08 Geert Bosch <bosch@gnat.com>
2286
2287 * xsnames.adb: New utility for updating snames.ads and snames.adb
2288
67f28219
ZW
22892001-10-08 Zack Weinberg <zack@codesourcery.com>
2290
2291 * Make-lang.in (ADAFLAGS): Add -W -Wall.
2292 (ADA_FLAGS_TO_PASS): Set ADA_CFLAGS=$(CFLAGS) also.
2293 (gnat1): Also depend on attribs.o.
2294 (gnatlib, gnatlib-shared): Set CC and ADAC in recursive make.
2295 * Makefile.in (X_ADAFLAGS, T_ADAFLAGS): New.
2296 (ADAC): Set to @ADAC@ in stage1, $(CC) later.
2297 (ADAFLAGS): Add -W -Wall.
2298 (ALL_ADAFLAGS, MOST_ADAFLAGS): Add X_ADAFLAGS and T_ADAFLAGS;
2299 take out CFLAGS.
2300
2301 (.adb.o, .ads.o, a-numaux.o, a-teioed.o, s-interr.o,
2302 s-taskin.o, sdefault.o, s-tasdeb.o, s-vaflop.o, a-except.o,
2303 s-assert.o, s-stalib.o, s-memory.o, memtrack.o, mlib-tgt.o):
2304 Use $(ADAC), not $(CC), as compilation command.
2305
2306 (gnattools): Depend directly on tools to build, don't use
2307 recursive make.
2308 (gnatlib): Set ADA_CFLAGS=$(GNATLIBCFLAGS) in recursive make.
2309
2310 * einfo.h, sinfo.h: New files (autogenerated).
2311
295ef2bb
RH
23122001-10-08 Richard Henderson <rth@redhat.com>
2313
2314 * comperr.adb (Abort_In_Progress): New.
2315 (Compiler_Abort): Use it to prevent recursion.
2316
5c736541
RD
23172001-10-08 Robert Dewar <dewar@gnat.com>
2318
2319 * atree.adb: Set Error_Posted in Error node, helps error recovery.
67f28219
ZW
2320
2321 * par-endh.adb (Output_End_Expected): We should also not test
5c736541 2322 Error_Posted on the Error node, since now it is always set.
67f28219
ZW
2323
2324 * cstand.adb (Create_Standard): Set Etype of Error to Any_Type
5c736541 2325 to help error recovery. Part of general work on 9407-004.
67f28219 2326
5c736541 2327 * par.adb: Add ??? for misuse of error
67f28219 2328
5c736541
RD
2329 * sem_res.adb:
2330 (Resolve): Defend against Error, fixes 9407-003.
2331 (Resolve_Discrete_Subtype_Indication): Defend against Error.
67f28219
ZW
2332
2333 * sinfo.ads (N_Error): Now has Etype field (which will be set
5c736541
RD
2334 to Any_Type to help error recovery).
2335
a153ae15
RK
23362001-10-08 Richard Kenner (kenner@gnat.com)
2337
2338 * misc.c (gnat_expand_expr, case UNCHECKED_CONVERT_EXPR):
2339 Consistently set MEM attributes from expression; fixes
2340 bootstrap failure on x86.
2341
743f3c7b
GB
23422001-10-08 Geert Bosch (bosch@gnat.com)
2343
2344 * 5oosinte.adb: Add 2001 to copyright notice.
2345
210c4ef4
GB
23462001-10-08 Geert Bosch (bosch@gnat.com)
2347
2348 * ceinfo.adb: Add utility for consistency checking of einfo.ad[bs].
2349
2350 * csinfo.adb: Add utility for consistency checking of sinfo.ad[bs].
2351
cc712abf
JM
23522001-10-07 Joseph S. Myers <jsm28@cam.ac.uk>
2353
2354 * 5oosinte.adb: Fix spelling error of "separate" as "seperate".
2355
4c4abc0f
GB
23562001-10-05 Geert Bosch (bosch@gnat.com)
2357
2358 * adaint.h: Small formatting fix.
2359
7f50e2e3
GB
23602001-10-04 Geert Bosch <bosch@gnat.com>
2361
2362 * sysdep.c (__gnat_set_binary_mode, __gnat_set_text_mode):
2363 Arg is int, not FILE *, in dummy version of functions.
67f28219 2364
7f50e2e3
GB
2365 * adaint.h (__gnat_set_binary_mode, __gnat_set_text_mode):
2366 Arg is int, not FILE *.
2367
5d1a9698
GB
23682001-10-04 Geert Bosch <bosch@gnat.com>
2369
2370 * 3lsoccon.ads: Added file, missed with initial check ins.
67f28219 2371
5d1a9698
GB
2372 * 4lintnam.ads: Fix header format.
2373 Change Linux to GNU/Linux.
67f28219 2374
5d1a9698
GB
2375 * 5iosinte.adb: Change Linux to GNU/Linux.
2376
2377 * 5iosinte.ads: Change Linux to GNU/Linux.
67f28219 2378
5d1a9698 2379 * 5itaprop.adb: Change Linux to GNU/Linux.
67f28219 2380
5d1a9698
GB
2381 * 5itaspri.ads: Change Linux to GNU/Linux.
2382 Update copyright notice.
67f28219 2383
5d1a9698 2384 * 5lintman.adb: Change Linux to GNU/Linux.
67f28219 2385
5d1a9698 2386 * 5lml-tgt.adb: Change Linux to GNU/Linux.
67f28219 2387
5d1a9698 2388 * 5losinte.ads: Change Linux to GNU/Linux.
67f28219 2389
5d1a9698 2390 * 5lsystem.ads: Change Linux to GNU/Linux.
67f28219 2391
5d1a9698 2392 * 5qosinte.adb: Change Linux to GNU/Linux.
67f28219 2393
5d1a9698 2394 * 5qosinte.ads: Change Linux to GNU/Linux.
67f28219 2395
5d1a9698 2396 * 5qparame.ads: Change Linux to GNU/Linux.
67f28219 2397
5d1a9698 2398 * 5qtaprop.adb: Change Linux to GNU/Linux.
67f28219 2399
5d1a9698
GB
2400 * 5qtaspri.ads: Change Linux to GNU/Linux.
2401 Add 2001 to copyright notice.
67f28219 2402
5d1a9698
GB
2403 * 5vintman.ads: Change Linux to GNU/Linux.
2404 Fix header format. Add 2001 to copyright notice.
67f28219 2405
5d1a9698 2406 * g-soccon.ads: Change Linux to GNU/Linux.
67f28219 2407
5d1a9698
GB
2408 * g-trasym.ads: Change Linux to GNU/Linux.
2409 Add 2001 to copyright notice.
67f28219 2410
5d1a9698 2411 * memtrack.adb: Change Linux to GNU/Linux.
67f28219 2412
5d1a9698
GB
2413 * s-intman.ads: Change Linux to GNU/Linux.
2414 Add 2001 to copyright notice. Fix header format.
67f28219 2415
5d1a9698 2416 * s-stache.adb: Change Linux to GNU/Linux.
67f28219 2417
5d1a9698 2418 * adaint.c: Change Linux to GNU/Linux.
67f28219 2419
5d1a9698 2420 * cio.c: Change Linux to GNU/Linux.
67f28219 2421
5d1a9698 2422 * cstreams.c: Change Linux to GNU/Linux.
67f28219 2423
5d1a9698 2424 * init.c: Change Linux to GNU/Linux.
67f28219 2425
5d1a9698 2426 * gmem.c: Change Linux to GNU/Linux.
67f28219 2427
5d1a9698
GB
2428 * tracebak.c: Change Linux to GNU/Linux.
2429
2430
c25ca2d7
GB
24312001-10-02 Geert Bosch <bosch@gnat.com>
2432
2433 * misc.c (insert_default_attributes): Add dummy version.