1 2002-02-27 Zack Weinberg <zack@codesourcery.com>
3 * misc.c: Delete traditional-mode-related code copied from the
4 C front end but not used, or used only to permit the compiler
7 2002-02-07 Richard Henderson <rth@redhat.com>
9 * adaint.c (__gnat_to_gm_time): First arg is int, not time_t.
10 * adaint.h (__gnat_to_gm_time): Update prototype.
12 2002-01-30 Richard Henderson <rth@redhat.com>
14 * trans.c (tree_transform) [N_Loop_Statement]: Use
15 expand_exit_loop_top_cond.
17 2001-12-23 Richard Henderson <rth@redhat.com>
19 * utils.c (end_subprog_body): Push GC context around
20 rest_of_compilation for nested functions.
22 2001-12-23 Richard Henderson <rth@redhat.com>
24 * 5nosinte.ads: Get definition of "int" from Interfaces.C.
26 2001-12-23 Florian Weimer <fw@deneb.enyo.de>
28 * gnat-style.texi (Declarations and Types): Remove ancient style
29 rule which was mandated by code generation issues.
31 * gnat-style.texi (header): Add @dircategory, @direntry.
32 (title page): Remove date.
33 (general) Add @./@: where approriate, and two spaces after the
34 full stop at the end of a sentence. Use @samp markup when
35 referring concrete lexical entities (keywords, attribute names
36 etc.), and @syntax for ARM grammar elements. Use @r for English
37 text in comments. Use @emph for emphasis. Change "if-statements"
38 etc. to "if statements" (without @samp). Break long lines. Make
39 casing of section names consistent.
40 (Identifiers): Use @samp markup for variable names.
41 (Comments): Use @samp markup for comment characters. Line-end
42 comments may follow any Ada code, not just statements. Fix
43 misspelling of "Integer" as "integer".
44 (Loop statements): Do not use variable name "I", use "J".
45 (Subprogram Declarations): Document alignment.
46 (Subprogram Bodies, Block statements): Document empty line before
49 2001-12-22 Florian Weimer <fw@deneb.enyo.de>
51 * make.adb (Add_Switch): Make Generic_Position a procedure. The
52 function approach did not work well because of a side effect (the
53 function call could reallocate the table which was being indexed
54 using its result). Fixes ada/4851.
56 2001-12-19 Robert Dewar <dewar@gnat.com>
58 * bindgen.adb: Minor reformatting
60 * cstand.adb: Minor reformatting
62 * fmap.adb: Minor reformatting
63 Change name from Add for Add_To_File_Map (Add is much too generic)
64 Change Path_Name_Of to Mapped_Path_Name
65 Change File_Name_Of to Mapped_File_Name
66 Fix copyright dates in header
69 Change name from Add for Add_To_File_Map (Add is much too generic)
70 Change Path_Name_Of to Mapped_Path_Name
71 Change File_Name_Of to Mapped_File_Name
72 Fix copyright dates in header
74 * fname-uf.adb: Minor reformatting. New names of stuff in Fmap.
75 Add use clause for Fmap.
77 * make.adb: Minor reformatting
79 * osint.adb: Minor reformatting. Change of names in Fmap.
80 Add use clause for Fmap.
82 * prj-env.adb: Minor reformatting
84 * prj-env.ads: Minor reformatting
86 * switch.adb: Minor reformatting. Do proper raise of Bad_Switch if
87 error found (there were odd exceptions to this general rule in
88 -gnatec/-gnatem processing)
90 2001-12-19 Olivier Hainque <hainque@gnat.com>
92 * raise.c (__gnat_eh_personality): Exception handling personality
93 routine for Ada. Still in rough state, inspired from the C++ version
94 and still containing a bunch of debugging artifacts.
95 (parse_lsda_header, get_ttype_entry): Local (static) helpers, also
96 inspired from the C++ library.
98 * raise.c (eh_personality): Add comments. Part of work for the GCC 3
99 exception handling integration.
101 2001-12-19 Arnaud Charlet <charlet@gnat.com>
103 * Makefile.in: Remove use of 5smastop.adb which is obsolete.
104 (HIE_SOURCES): Add s-secsta.ad{s,b}.
105 (HIE_OBJS): Add s-fat*.o
106 (RAVEN_SOURCES): Remove files that are no longer required. Add
107 interrupt handling files.
108 (RAVEN_MOD): Removed, no longer needed.
110 2001-12-19 Robert Dewar <dewar@gnat.com>
112 * a-ngelfu.adb: Remove ??? comment for inappropriate Inline_Always
113 Add 2001 to copyright date
115 * g-regpat.adb: Change pragma Inline_Always to Inline. There is no
116 need to force universal inlining for these cases.
118 2001-12-19 Arnaud Charlet <charlet@gnat.com>
120 * s-taprob.adb: Minor clean ups so that this unit can be used in
123 * exp_ch7.adb: Allow use of secondary stack in HI mode.
124 Disallow it when pragma Restrictions (No_Secondary_Stack) is specified.
126 2001-12-19 Vincent Celier <celier@gnat.com>
128 * prj-tree.ads (Project_Node_Record): Add comments for components
129 Pkg_Id and Case_Insensitive.
131 2001-12-19 Pascal Obry <obry@gnat.com>
133 * g-socket.adb: Minor reformatting. Found while reading code.
135 2001-12-19 Robert Dewar <dewar@gnat.com>
137 * prj-tree.ads: Minor reformatting
139 2001-12-20 Joseph S. Myers <jsm28@cam.ac.uk>
141 * config-lang.in (diff_excludes): Remove.
143 2001-12-17 Ed Schonberg <schonber@gnat.com>
145 * sem_res.adb (Resolve_Selected_Component): do not generate a
146 discriminant check if the selected component is a component of
147 the argument of an initialization procedure.
149 * trans.c (tree_transform, case of arithmetic operators): If result
150 type is private, the gnu_type is the base type of the full view,
151 given that the full view itself may be a subtype.
153 2001-12-17 Robert Dewar <dewar@gnat.com>
155 * sem_res.adb: Minor reformatting
157 * trans.c (tree_transform, case N_Real_Literal): Add missing third
158 parameter in call to Machine (unknown horrible effects from this
161 * urealp.h: Add definition of Round_Even for call to Machine
162 Add third parameter for Machine
164 2001-12-17 Ed Schonberg <schonber@gnat.com>
166 * sem_warn.adb (Check_One_Unit): Suppress warnings completely on
167 predefined units in No_Run_Time mode.
169 2001-12-17 Richard Kenner <kenner@gnat.com>
171 * misc.c (insn-codes.h): Now include.
173 2001-12-17 Olivier Hainque <hainque@gnat.com>
175 * a-except.adb: Preparation work for future integration of the GCC 3
176 exception handling mechanism
177 (Notify_Handled_Exception, Notify_Unhandled_Exception): New routines
178 to factorize previous code sequences and make them externally callable,
179 e.g. for the Ada personality routine when the GCC 3 mechanism is used.
180 (Propagate_Exception, Raise_Current_Excep, Raise_From_Signal_Handler):
181 Use the new notification routines.
183 2001-12-17 Emmanuel Briot <briot@gnat.com>
185 * prj-tree.ads (First_Choice_Of): Document the when others case
187 2001-12-17 Arnaud Charlet <charlet@gnat.com>
189 * bindgen.adb (Gen_Ada_Init_*): Set priority of environment task in
190 HI-E mode, in order to support Ravenscar profile properly.
192 * cstand.adb (Create_Standard): Duration is a 32 bit type in HI-E
193 mode on 32 bits targets.
195 2001-12-17 Vincent Celier <celier@gnat.com>
197 * fmap.adb: Initial version.
199 * fmap.ads: Initial version.
201 * fname-uf.adb (Get_File_Name): Use mapping if unit name mapped.
202 If search is successfully done, add to mapping.
204 * frontend.adb: Initialize the mapping if a -gnatem switch was used.
207 (Gnatmake): Add new local variable Mapping_File_Name.
208 Create mapping file when using project file(s).
209 Delete mapping file before exiting.
211 * opt.ads (Mapping_File_Name): New variable
213 * osint.adb (Find_File): Use path name found in mapping, if any.
215 * prj-env.adb (Create_Mapping_File): New procedure
217 * prj-env.ads (Create_Mapping_File): New procedure.
219 * switch.adb (Scan_Front_End_Switches): Add processing for -gnatem
222 * usage.adb: Add entry for new switch -gnatem.
224 * Makefile.in: Add dependencies for fmap.o.
226 2001-12-17 Ed Schonberg <schonber@gnat.com>
228 * sem_ch10.adb (Analyze_With_Clause): Retrieve proper entity when unit
229 is a package instantiation rewritten as a package body.
230 (Install_Withed_Unit): Undo previous change, now redundant.
232 2001-12-17 Gary Dismukes <dismukes@gnat.com>
235 (Compute_Length): Move conversion to Unsigned to callers.
236 (Get_Max_Size): Convert Len expression to Unsigned after calls to
237 Compute_Length and Determine_Range.
238 (Layout_Array_Type): Convert Len expression to Unsigned after calls to
239 Compute_Length and Determine_Range.
240 Above changes fix problem with length computation for supernull arrays
241 where Max (Len, 0) wasn't getting applied due to the Unsigned
242 conversion used by Compute_Length.
244 2001-12-17 Arnaud Charlet <charlet@gnat.com>
247 (OK_To_Use_In_No_Run_Time_Mode): Allow Ada.Exceptions and
248 System.Secondary_Stack.
249 (OK_To_Use_In_Ravenscar_Mode): New table needed to implement Ravenscar
251 Remove unused entity RE_Exception_Data.
253 * rtsfind.adb (RTE): Allow Ravenscar Profile in HI mode.
255 * rident.ads (No_Secondary_Stack): New restriction.
257 2001-12-17 Joel Brobecker <brobecke@gnat.com>
259 * gnat_rm.texi: Fix minor typos. Found while reading the section
260 regarding "Bit_Order Clauses" that was sent to a customer.
261 Very interesting documentation!
263 2001-12-17 Robert Dewar <dewar@gnat.com>
265 * sem_case.adb (Choice_Image): Avoid creating improper character
266 literal names by using the routine Set_Character_Literal_Name. This
267 fixes bombs in certain error message cases.
269 2001-12-17 Arnaud Charlet <charlet@gnat.com>
271 * a-reatim.adb: Minor reformatting.
273 2001-12-17 Ed Schonberg <schonber@gnat.com>
275 * sem_ch12.adb (Validate_Derived_Type_Instance): Handle properly the
276 case where the formal is an extension of another formal in the current
277 unit or in a parent generic unit.
279 2001-12-17 Arnaud Charlet <charlet@gnat.com>
281 * s-tposen.adb: Update comments. Minor reformatting.
284 * s-tarest.adb: Update comments. Minor code reorganization.
286 2001-12-17 Gary Dismukes <dismukes@gnat.com>
288 * exp_attr.adb (Attribute_Tag): Suppress expansion of <type_name>'Tag
291 2001-12-17 Robert Dewar <dewar@gnat.com>
293 * exp_attr.adb: Minor reformatting
295 2001-12-17 Ed Schonberg <schonber@gnat.com>
297 * sem_ch3.adb (Build_Derived_Private_Type): Refine check to handle
298 derivations nested within a child unit: verify that the parent
299 type is declared in an outer scope.
301 2001-12-17 Robert Dewar <dewar@gnat.com>
303 * sem_ch12.adb: Minor reformatting
305 2001-12-17 Ed Schonberg <schonber@gnat.com>
307 * sem_warn.adb (Check_One_Unit): In No_Run_Time mode, do not post
308 warning if current unit is a predefined one, from which bodies may
311 2001-12-17 Robert Dewar <dewar@gnat.com>
313 * eval_fat.ads: Add comment that Round_Even is referenced in Ada code
314 Fix header format. Add 2001 to copyright date.
316 * exp_dbug.adb (Get_Encoded_Name): Fix out of bounds reference,
317 which caused CE during compilation if checks were enabled.
319 2001-12-17 Vincent Celier <celier@gnat.com>
322 (Switches_Of): New function
323 (Test_If_Relative_Path): New procedure
324 (Add_Switches): Use new function Switches_Of
325 (Collect_Arguments_And_Compile): Use new function Switches_Of.
326 When using a project file, test if there are any relative
327 search path. Fail if there are any.
328 (Gnatmake): Only add switches for the primary directory when not using
329 a project file. When using a project file, change directory to the
330 object directory of the main project file. When using a project file,
331 test if there are any relative search path. Fail if there are any.
332 When using a project file, fail if specified executable is relative
333 path with directory information, and prepend executable, if not
334 specified as an absolute path, with the exec directory. Make sure
335 that only one -o switch is transmitted to the linker.
337 * prj-attr.adb (Initialization_Data): Add project attribute Exec_Dir
340 (Ada_Check): Get Spec_Suffix_Loc and Impl_Suffix_Loc,
341 when using a non standard naming scheme.
342 (Check_Ada_Naming_Scheme): Make sure that error messages
343 do not raise exceptions.
344 (Is_Illegal_Append): Return True if there is no dot in the suffix.
345 (Language_Independent_Check): Check the exec directory.
347 * prj.adb (Project_Empty): Add new component Exec_Directory
350 (Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Add defaults.
351 (Project_Data): Add component Exec_Directory
353 * snames.adb: Updated to match snames.ads revision 1.215
355 * snames.ads: Added Exec_Dir
357 2001-12-17 Robert Dewar <dewar@gnat.com>
359 * make.adb: Minor reformatting
361 * prj-nmsc.adb: Minor reformatting
363 * snames.adb: Updated to match snames.ads
365 * snames.ads: Alphebetize entries for project file
367 2001-12-17 Ed Schonberg <schonber@gnat.com>
369 * trans.c (process_freeze_entity): Do nothing if the entity is a
370 subprogram that was already elaborated.
372 2001-12-17 Richard Kenner <kenner@gnat.com>
374 * decl.c (gnat_to_gnu_entity, object): Do not back-annotate Alignment
375 and Esize if object is referenced via pointer.
377 2001-12-17 Ed Schonberg <schonber@gnat.com>
379 * sem_ch3.adb (Analyze_Variant_Part): check that type of discriminant
380 is discrete before analyzing choices.
382 2001-12-17 Joel Brobecker <brobecke@gnat.com>
384 * bindgen.adb (Gen_Output_File_Ada): Generate a new C-like string
385 containing the name of the Ada Main Program. This string is mainly
386 intended for the debugger.
387 (Gen_Output_File_C): Do the equivalent change when generating a C file.
389 2001-12-17 Robert Dewar <dewar@gnat.com>
391 * ali.adb: Set new Dummy_Entry field in dependency entry
393 * ali.ads: Add Dummy_Entry field to source dependency table
395 * bcheck.adb (Check_Consistency): Ignore dummy D lines
397 * lib-writ.adb (Writ_ALI): Write dummy D lines for missing source files
399 * lib-writ.ads: Document dummy D lines for missing files.
401 * types.ads: (Dummy_Time_Stamp): New value for non-existant files
403 2001-12-17 Robert Dewar <dewar@gnat.com>
405 * ali.adb: Type reference does not reset current file.
407 * ali.adb: Recognize and scan renaming reference
409 * ali.ads: Add spec for storing renaming references.
411 * lib-xref.ads: Add documentation for handling of renaming references
413 * lib-xref.adb: Implement output of renaming reference.
416 (Determine_Range): Document local variables
417 (Determine_Range): Make sure Hbound is initialized. It looks as though
418 there could be a real problem here with an uninitialized reference
419 to Hbound, but no actual example of failure has been found.
421 2001-12-17 Laurent Pautet <pautet@gnat.com>
424 Fix comment of Shutdown_Socket and Close_Socket. These functions
425 should not fail silently because if they are called twice, this
426 probably means that there is a race condition in the user program.
427 Anyway, this behaviour is consistent with the rest of this unit.
428 When an error occurs, an exception is raised with the error message
429 as exception message.
431 2001-12-17 Robert Dewar <dewar@gnat.com>
433 * frontend.adb: Move call to Check_Unused_Withs from Frontend, so
434 that it happens before modification of Sloc values for -gnatD.
436 * gnat1drv.adb: Move call to Check_Unused_Withs to Frontend,
437 so that it happens before modification of Sloc values for -gnatD.
439 * switch.adb: Minor reformatting
441 2001-12-15 Richard Henderson <rth@redhat.com>
443 * sem_ch7.adb: Wrap comment.
445 2001-12-16 Joseph S. Myers <jsm28@cam.ac.uk>
447 * 5ataprop.adb, 5atpopsp.adb, 5ftaprop.adb, 5gmastop.adb,
448 5gtaprop.adb, 5htaprop.adb, 5itaprop.adb, 5lintman.adb,
449 5omastop.adb, 5oosinte.adb, 5otaprop.adb, 5staprop.adb,
450 5vinterr.adb, 5vtaprop.adb, 5vtpopde.adb, 5wintman.adb,
451 5wtaprop.adb, 5zinterr.adb, 5ztaprop.adb, 6vcstrea.adb,
452 7sintman.adb, 7staprop.adb, 9drpc.adb, ChangeLog, Makefile.in,
453 a-except.adb, a-tags.ads, a-tasatt.adb, a-teioed.adb,
454 a-textio.ads, a-witeio.ads, a-wtedit.adb, ali.ads, comperr.adb,
455 cstand.adb, einfo.ads, errout.adb, exp_ch11.adb, exp_ch2.adb,
456 exp_ch3.adb, exp_ch4.adb, exp_ch5.adb, exp_ch6.adb, exp_ch9.adb,
457 exp_util.adb, exp_util.ads, fname-uf.adb, g-cgi.ads, g-exctra.ads,
458 g-expect.ads, g-regist.adb, g-spipat.adb, gnatchop.adb,
459 gnatlink.adb, gnatls.adb, gnatmain.adb, gnatmem.adb, init.c,
460 make.adb, make.ads, mdlltool.adb, nlists.ads, osint.ads,
461 par-ch3.adb, par-ch4.adb, par-ch5.adb, par-ch6.adb, par.adb,
462 repinfo.adb, s-fatflt.ads, s-fatlfl.ads, s-fatllf.ads,
463 s-fatsfl.ads, s-finimp.adb, s-finimp.ads, s-interr.adb,
464 s-secsta.ads, s-shasto.ads, s-stalib.adb, s-stalib.ads,
465 s-tarest.ads, s-tasdeb.adb, s-tassta.adb, s-tassta.ads,
466 s-vaflop.ads, scans.ads, scn.adb, sem.ads, sem_aggr.adb,
467 sem_attr.adb, sem_case.ads, sem_ch10.adb, sem_ch12.adb,
468 sem_ch13.adb, sem_ch3.adb, sem_ch3.ads, sem_ch5.adb, sem_ch7.adb,
469 sem_ch8.adb, sem_ch8.ads, sem_type.adb, sem_util.ads, sinfo.ads,
470 sprint.adb, tbuild.ads, types.ads, utils.c, xeinfo.adb: Fix
473 2001-12-14 Vincent Celier <celier@gnat.com>
475 * osint.adb(Create_Debug_File): When an object file is specified,
476 put the .dg file in the same directory as the object file.
478 2001-12-14 Robert Dewar <dewar@gnat.com>
480 * osint.adb: Minor reformatting
482 * lib-xref.adb (Output_Instantiation): New procedure to generate
483 instantiation references.
485 * lib-xref.ads: Add documentation of handling of generic references.
487 * ali.adb (Read_Instantiation_Ref): New procedure to read
488 instantiation references
490 * ali.ads: Add spec for storing instantiation references
492 * bindusg.adb: Minor reformatting
494 * switch.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
496 * usage.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
498 * gnatcmd.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
500 * csets.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
504 Add 2001 to copyright date
505 Add entry for Latin-5 (Cyrillic ISO-8859-5)
507 2001-12-14 Matt Gingell <gingell@gnat.com>
509 * adaint.c: mktemp is a macro on Lynx and can not be used as an
512 2001-12-14 Richard Kenner <kenner@gnat.com>
514 * misc.c (gnat_expand_constant): Do not strip UNCHECKED_CONVERT_EXPR
515 if operand is CONSTRUCTOR.
517 2001-12-14 Ed Schonberg <schonber@gnat.com>
519 * trans.c (tree_transform, case N_Assignment_Statement): Set lineno
520 before emiting check on right-hand side, so that exception information
523 2001-12-14 Richard Kenner <kenner@gnat.com>
525 * utils.c (create_var_decl): Throw away initializing expression
526 if just annotating types and non-constant.
528 2001-12-14 Vincent Celier <celier@gnat.com>
530 * prj-nmsc.adb: (Ada_Check): Migrate drom Ada_Default_... to
533 * prj.adb: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
535 (Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Move to spec.
537 * prj.ads: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
539 (Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Move from body.
541 2001-12-16 Joseph S. Myers <jsm28@cam.ac.uk>
543 * ChangeLog: Remove piece of diff output.
545 2001-12-14 Geert Bosch <bosch@gnat.com>
547 * config-lang.in: Update copyright notice
549 * layout.adb: Remove commented out code.
551 * mdllfile.ads: Update copyright notice. Fix header format.
553 * sem_case.ads: Likewise.
555 * sem_ch3.adb: Minor reformatting.
557 2001-12-12 Geert Bosch <bosch@gnat.com>
559 * freeze.ads: Update copyright date.
561 * g-comlin.ads: Minor reformatting.
563 * gnat-style.texi: Fix typo.
565 2001-12-12 Geert Bosch <bosch@gnat.com>
567 * einfo.h: Regenerate.
569 2001-12-12 Ed Schonberg <schonber@gnat.com>
571 * sem_ch12.adb (Save_Entity_Descendant): Use syntactic field names
572 on known node types, rather than untyped fields. Further cleanups.
574 2001-12-12 Robert Dewar <dewar@gnat.com>
577 (Save_Entity_Descendant): Minor comment update.
578 (Copy_Generic_Node): Deal with incorrect reference to Associated_Node
579 of an N_Attribute_Reference node. As per note below, this does not
580 eliminate need for Associated_Node in attribute ref nodes.
581 (Associated_Node): Documentation explicitly mentions attribute
582 reference nodes, since this field is used in such nodes.
584 * sem_ch12.adb (Associated_Node): Minor documentation cleanup.
586 2001-12-12 Robert Dewar <dewar@gnat.com>
588 * s-stalib.adb: Add more comments on with statements being needed
590 * par-ch12.adb: Minor reformatting
592 * prj-dect.ads: Fix copyright header
594 * s-arit64.adb (Multiply_With_Ovflo_Check): Fix case where both
595 inputs fit in 32 bits, but the result still overflows.
597 * s-fatgen.ads: Minor comment improvement
599 2001-12-12 Ed Schonberg <schonber@gnat.com>
601 * sem_ch4.adb (Analyze_Selected_Component): If the prefix is of a
602 formal derived type, look for an inherited component from the full
603 view of the parent, if any.
605 2001-12-12 Robert Dewar <dewar@gnat.com>
607 * checks.ads (Apply_Alignment_Check): New procedure.
609 * exp_ch13.adb (Expand_N_Freeze_Entity): Generate dynamic check to
610 ensure that the alignment of objects with address clauses is
611 appropriate, and raise PE if not.
613 * exp_util.ads (Must_Be_Aligned): Removed, replaced by
614 Exp_Pakd.Known_Aligned_Enough
616 * mdllfile.ads: Minor reformatting
618 * mlib-fil.ads: Minor reformatting
620 2001-12-12 Ed Schonberg <schonber@gnat.com>
622 * exp_ch8.adb (Expand_N_Object_Renaming_Declaration): Extend previous
623 fix to any component reference if enclosing record has non-standard
626 2001-12-12 Vincent Celier <celier@gnat.com>
628 * g-dirope.ads (Find, Wildcard_Iterator): Moved to child package
631 2001-12-12 Ed Schonberg <schonber@gnat.com>
633 * freeze.ads: Make Freeze_Fixed_Point_Type visible, for use in
636 2001-12-12 Robert Dewar <dewar@gnat.com>
638 * impunit.adb: Add entry for GNAT.Directory_Operations.Iteration
640 2001-12-12 Emmanuel Briot <briot@gnat.com>
642 * g-regexp.adb: Remove all debug code, since it isn't required anymore,
643 and it adds dependencies to system.io.
645 2001-12-12 Pascal Obry <obry@gnat.com>
647 * g-dirope.adb (Expand_Path.Var): Correctly detect end of
650 2001-12-11 Ed Schonberg <schonber@gnat.com>
652 * sem_ch10.adb (Install_Withed_Unit): If the unit is a generic instance
653 that is the parent of other generics, the instance body replaces the
654 instance node. Retrieve the instance of the spec, which is the one
655 that is visible in clients and within the body.
657 2001-12-11 Vincent Celier <celier@gnat.com>
659 * gnatmain.adb: Initial version.
661 * gnatmain.ads: Initial version.
663 * prj-attr.adb (Initialisation_Data): Add package Gnatstub.
665 * snames.adb: Updated to match snames.ads.
667 * snames.ads: Added Gnatstub.
669 2001-12-11 Vincent Celier <celier@gnat.com>
671 * prj-attr.adb (Initialization_Data): Change name from
674 2001-12-11 Emmanuel Briot <briot@gnat.com>
676 * g-regpat.adb (Parse_Literal): Properly handle simple operators ?,
677 + and * applied to backslashed expressions like \r.
679 2001-12-11 Vasiliy Fofanov <fofanov@gnat.com>
681 * g-os_lib.ads: String_List type added, Argument_List type is now
682 subtype of String_List.
684 2001-12-11 Robert Dewar <dewar@gnat.com>
686 * g-os_lib.ads: Change copyright to FSF
687 Add comments for String_List type
689 2001-12-11 Vincent Celier <celier@gnat.com>
691 * g-dirope.adb (Expand_Path): Fix bug. (wrong length when adding a
692 string to the buffer).
694 2001-12-11 Ed Schonberg <schonber@gnat.com>
696 * freeze.adb: Make Freeze_Fixed_Point_Type visible, for use in
699 * sem_attr.adb: Simplify previous fix for Address.
700 (Set_Bounds): If prefix is a non-frozen fixed-point type, freeze now,
701 to avoid anomalies where the bound of the type appears to raise
704 2001-12-11 Robert Dewar <dewar@gnat.com>
706 * lib-xref.adb (Output_Refs): Make sure pointers are always properly
709 2001-12-11 Ed Schonberg <schonber@gnat.com>
711 * sem_ch12.adb (Analyze_Subprogram_Instantiation): Check for a
712 renamed unit before checking for recursive instantiations.
714 2001-12-11 Emmanuel Briot <briot@gnat.com>
716 * prj.ads: Add comments for some of the fields.
718 2001-12-11 Robert Dewar <dewar@gnat.com>
720 * lib-xref.adb (Output_Refs): Don't output type references outside
721 the main unit if they are not otherwise referenced.
723 2001-12-11 Ed Schonberg <schonber@gnat.com>
725 * sem_attr.adb (Analyze_attribute, case Address and Size): Simplify
726 code and diagnose additional illegal uses
728 * sem_util.adb (Is_Object_Reference): An indexed component is an
729 object only if the prefix is.
731 2001-12-11 Vincent Celier <celier@gnat.com>
733 * g-diopit.adb: Initial version.
735 * g-diopit.ads: Initial version.
738 (Expand_Path): Avoid use of Unbounded_String
739 (Find, Wildcard_Iterator): Moved to child package Iteration
741 * Makefile.in: Added g-diopit.o to GNATRTL_NONTASKING_OBJS
743 2001-12-11 Robert Dewar <dewar@gnat.com>
745 * sem_attr.adb: Minor reformatting
747 2001-12-11 Ed Schonberg <schonber@gnat.com>
749 * sem_ch3.adb: Clarify some ???.
751 2001-12-11 Robert Dewar <dewar@gnat.com>
753 * exp_util.adb (Must_Be_Aligned): Removed, replaced by
754 Exp_Pakd.Known_Aligned_Enough
756 * sem_ch13.adb (Check_Address_Alignment): Removed, extended
757 version is moved to Exp_Ch13.
759 2001-12-11 Robert Dewar <dewar@gnat.com>
761 * einfo.ads: Minor reformatting
763 * exp_ch5.adb: Add comment for previous.change
765 * ali.adb: New interface for extended typeref stuff.
767 * ali.ads: New interface for typeref stuff.
769 * checks.adb (Apply_Alignment_Check): New procedure.
771 * debug.adb: Add -gnatdM for modified ALI output
773 * exp_pakd.adb (Known_Aligned_Enough): Replaces Known_Aligned_Enough.
775 * lib-xref.adb: Extend generation of <..> notation to cover
776 subtype/object types. Note that this is a complete rewrite,
777 getting rid of the very nasty quadratic algorithm previously
778 used for derived type output.
780 * lib-xref.ads: Extend description of <..> notation to cover
781 subtype/object types. Uses {..} for these other cases.
782 Also use (..) for pointer types.
784 * sem_util.adb (Check_Potentially_Blocking_Operation): Slight cleanup.
786 * exp_pakd.adb: Minor reformatting. Note that prevous RH should say:
787 (Known_Aligned_Enough): Replaces Must_Be_Aligned.
789 2001-12-11 Vincent Celier <celier@gnat.com>
792 Changed /COMPILE_ONLY to /ACTIONS=COMPILE
793 Changed /BIND_ONLY to /ACTIONS=BIND
794 Changed /LINK_ONLY to /ACTIONS=LINK
796 2001-12-11 Ed Schonberg <schonber@gnat.com>
798 * sem_ch8.adb (Find_Selected_Component): improved search for a
799 candidate package in case of error.
801 * sem_ch12.adb (Inline_Instance_Body): place head of use_clause
802 chain back on scope stack before reinstalling use clauses.
804 * exp_ch5.adb (Expand_N_If_Statement): if Constant_Condition_Warnings
805 is enabled, do not kill the code for the condition, to preserve
808 2001-12-11 Robert Dewar <dewar@gnat.com>
810 * checks.adb (Insert_Valid_Check): Apply validity check to expression
811 of conversion, not to result of conversion.
813 2001-12-11 Ed Schonberg <schonber@gnat.com>
815 * sem_ch3.adb (Build_Derived_Record_Type): set Controlled flag
816 before freezing parent. If the declarations are mutually recursive,
817 an access to the current record type may be frozen before the
818 derivation is complete.
820 2001-12-05 Vincent Celier <celier@gnat.com>
822 * gnatcmd.adb: (MAKE): Add new translations: -b /BIND_ONLY,
823 -c /COMPILE_ONLY, -l /LINK_ONLY
826 (Bind_Only): New Flag
827 (Link_Only): New flag
829 * switch.adb (Scan_Make_Switches): Add processing for -b (Bind_Only)
832 * makeusg.adb: Add new switches -b and -l. Update Copyright notice.
835 (Do_Compile_Step, Do_Bind_Step, Do_Link_Step): New flags.
836 (Gnatmake): Set the step flags. Only perform a step if the
837 corresponding step flag is True.
838 (Scan_Make_Arg): Reset the bind and link step flags when -u
839 or -gnatc has been specified.
841 2001-12-05 Ed Schonberg <schonber@gnat.com>
843 * sem_eval.adb (Eval_Concatenation): If left operand is a null string,
844 get bounds from right operand.
846 * sem_eval.adb: Minor reformatting
848 * exp_util.adb (Make_Literal_Range): use bound of literal rather
849 than Index'First, its lower bound may be different from 1.
851 * exp_util.adb: Undo earlier change, fixes ACVC regressions C48009B
854 2001-12-05 Vincent Celier <celier@gnat.com>
856 * prj-nmsc.adb Minor reformatting
858 * prj-nmsc.adb (Language_Independent_Check): Reset Library flag if
859 set and libraries are not supported.
861 2001-12-05 Ed Schonberg <schonber@gnat.com>
863 * sem_ch3.adb (Build_Derived_Private_Type): set Public status of
864 private view explicitly, so the back-end can treat as a global
867 2001-12-05 Ed Schonberg <schonber@gnat.com>
869 * sem_ch12.adb (Instantiate_Package_Body): if instance is a compilation
870 unit, always replace instance node with new body, for ASIS use.
872 2001-12-05 Vincent Celier <celier@gnat.com>
874 * prj-nmsc.adb (Language_Independent_Check): Issue a warning if
875 libraries are not supported and both attributes Library_Name and
876 Library_Dir are specified.
878 * prj-proc.adb (Expression): Set location of Result to location of
881 * Makefile.in: Add mlib.o, mlib-fil.o, mlib-tgt and mlib-utl to GNATLS.
882 (prj-nmsc is now importing MLib.Tgt)
884 * prj-proc.adb: Put the change indicated above that was forgotten.
886 2001-12-05 Robert Dewar <dewar@gnat.com>
888 * Makefile.in: Add dependencies for System.IO for GNAT.Regexp
890 2001-12-05 Ed Schonberg <schonber@gnat.com>
892 * sem_ch3.adb (Build_Derived_Concurrent_Type): If derivation imposes a
893 constraint, introduce explicit subtype declaration and derive from it.
895 * sem_ch3.adb: Minor reformatting
897 2001-12-05 Robert Dewar <dewar@gnat.com>
899 * checks.adb (Determine_Range): Increase cache size for checks.
902 * exp_ch6.adb: Minor reformatting
903 (Expand_N_Subprogram_Body): Reset Is_Pure for any subprogram that has
904 a parameter whose root type is System.Address, since treating such
905 subprograms as pure in the code generator is almost surely a mistake
906 that will lead to unexpected results.
908 * exp_util.adb (Remove_Side_Effects): Clean up old ??? comment and
909 change handling of conversions.
911 * g-regexp.adb: Use System.IO instead of Ada.Text_IO.
913 2001-12-05 Ed Schonberg <schonber@gnat.com>
915 * sem_ch3.adb (Analyze_Object_Declaration): If expression is an
916 aggregate with static wrong size, attach generated Raise node to
919 2001-12-05 Robert Dewar <dewar@gnat.com>
921 * sem_attr.adb (Analyze_Attribute): Defend against bad Val attribute.
922 Fixes compilation abandoned bomb in B24009B.
924 2001-12-05 Ed Schonberg <schonber@gnat.com>
927 Document use of Associated_Node on Selected_Components.
928 (Save_Global_Operand_Descendants): Change to Save_Entity_Descendants,
929 to clarify use of untyped descendant fields.
931 2001-12-05 Robert Dewar <dewar@gnat.com>
933 * prj-dect.ads: Add ??? comment
934 Add 2001 to copyright notice (was not done in after all)
936 * prj-part.adb: Minor reformatting. Reword one awkward error message.
938 * prj.ads: Minor reformatting throughout, and add some ??? comments
940 * snames.ads: Minor reformatting
942 2001-12-05 Geert Bosch <bosch@gnat.com>
944 * snames.adb: Autoupdate
946 2001-12-05 Vincent Celier <celier@gnat.com>
948 * prj-dect.adb (Parse): Rename parameter Modifying to Extends.
950 * prj-dect.ads (Parse): Rename parameter Modifying to Extends.
952 * prj-env.adb: Minor comment changes (modifying -> extends).
954 * prj-nmsc.adb: Minor comment changes (modifying -> extends).
956 * prj-part.adb (Parse_Single_Project): Change Tok_Modifying to
959 * prj.adb (Initialize): Change Modifying to Extends.
961 * scans.ads (Token_Type): Change Tok_Modifying to Tok_Extends.
963 * prj.ads: Minor comment change (Modifying -> extending).
965 * snames.ads: Change modifying to extends.
967 2001-12-05 Robert Dewar <dewar@gnat.com>
969 * sem_warn.adb: Remove stuff for conditionals, we are not going to
972 * sem_warn.ads: Remove stuff for conditionals, we are not going to
973 do this after all. Add 2001 to copyright notice
975 2001-12-04 Geert Bosch <bosch@gnat.com>
977 * einfo.h, sinfo.h, treeprs.ads: Regenerate.
979 2001-12-04 Robert Dewar <dewar@gnat.com>
981 * errout.adb (Error_Msg): Ignore attempt to put error msg at junk
982 location if we already have errors. Stops some cases of cascaded
985 * errout.adb: Improve comment.
987 2001-12-04 Robert Dewar <dewar@gnat.com>
990 (Analyze_Formal_Type_Definition): Defend against Error.
991 (Analyze_Formal_Subprogram): Defend against Error.
993 * par-ch12.adb (F_Formal_Type_Declaration): In case of error,
994 remove following semicolon if present. Removes cascaded error.
996 2001-12-04 Douglas B. Rupp <rupp@gnat.com>
999 (Gen_Exception_Table_Ada): Write "begin" and then return if Num
1000 exceptions equals 0.
1001 (Gen_Exception_Table_C): Return if Num exceptions equals 0.
1002 Fixes PIWG E tests (which have to be run with -gnatL).
1004 2001-12-04 Robert Dewar <dewar@gnat.com>
1006 * einfo.ads: Minor reformatting
1008 2001-12-04 Ed Schonberg <schonber@gnat.com>
1010 * einfo.ads: Block_Node points to the identifier of the block, not to
1011 the block node itself, to preserve the link when the block is
1012 rewritten, e.g. within an if-statement with a static condition.
1014 * inline.adb (Cleanup_Scopes): recover block statement from block
1015 entity using new meaning of Block_Node.
1017 * sem_ch5.adb (Analyze_Block_Statement): set Block_Node to point to
1018 identifier of block node, rather than to node itself.
1020 2001-12-04 Gary Dismukes <dismukes@gnat.com>
1023 (Get_Max_Size): Fix "start of processing" comment to say Get_Max_Size.
1024 (Discrimify): Go back to setting the Etypes of the selected component
1025 because the Vname component does not exist at this point and will
1026 fail name resolution. Also set Analyzed.
1027 Remove with and use of Sem_Res.
1029 2001-12-04 Arnaud Charlet <charlet@gnat.com>
1031 * Makefile.in: (HIE_SOURCES): add s-fat*.
1033 2001-12-04 Robert Dewar <dewar@gnat.com>
1036 (Compile_Time_Known_Attribute): New procedure.
1037 (Eval_Attribute, case Size): Use Compile_Time_Known_Attribute to ensure
1040 2001-12-04 Ed Schonberg <schonber@gnat.com>
1042 * sem_ch7.adb (New_Private_Type): Set Is_Tagged_Type flag before
1043 processing discriminants to diagnose illegal default values.
1045 2001-12-04 Ed Schonberg <schonber@gnat.com>
1047 * sem_attr.adb (Resolve_Attribute): Handle properly an non-classwide
1048 access discriminant within a type extension that constrains its
1049 parent discriminants.
1051 2001-12-04 Ed Schonberg <schonber@gnat.com>
1053 * sem_ch3.adb (Find_Type_Of_Subtype_Indic): If subtype indication
1054 is malformed, use instance of Any_Id to allow analysis to proceed.
1056 * par-ch12.adb (P_Formal_Type_Declaration): Propagate Error if
1057 type definition is illegal.
1058 (P_Formal_Derived_Type_Definition): Better recovery when TAGGED is
1061 2001-12-04 Ed Schonberg <schonber@gnat.com>
1063 * sem_warn.adb (Output_Unreferenced_Messages): Extend previous fix to
1066 2001-12-04 Robert Dewar <dewar@gnat.com>
1068 * errout.adb: Minor reformatting
1070 2001-12-04 Robert Dewar <dewar@gnat.com>
1072 * exp_util.adb: Minor reformatting from last change
1074 * errout.adb (Check_For_Warning): For a Raised_Constraint_Error node
1075 which is a rewriting of an expression, traverse the original
1076 expression to remove warnings that may have been posted on it.
1078 2001-12-04 Ed Schonberg <schonber@gnat.com>
1080 * exp_util.adb (Must_Be_Aligned): Return false for a component of a
1081 record that has other packed components.
1083 2001-12-04 Douglass B. Rupp <rupp@gnat.com>
1085 * adaint.c: Minor cleanups.
1087 2001-12-04 Douglass B. Rupp <rupp@gnat.com>
1089 * adaint.c: Do not use utime.h on vxworks.
1091 2001-12-04 Arnaud Charlet <charlet@gnat.com>
1093 * Makefile.adalib: Clarify step 3 (use of gnat.adc) as it causes
1094 more confusion than it solves.
1096 2001-12-04 Geert bosch <bosch@gnat.com>
1098 * einfo.h, nmake.adb, nmake.ads, sinfo.h treeprs.ads: Regenerate.
1100 2001-12-04 Geert Bosch <bosch@gnat.com>
1102 * Makefile.in (update-sources): New target.
1103 For use by gcc_release script.
1105 2001-12-04 Ed Schonberg <schonber@gnat.com>
1107 * sem_prag.adb (Analyze_Pragma, case Validity_Checks): do not treat as
1108 a configuration pragma, it is now legal wherever a pragma can appear.
1110 2001-12-04 Zack Weinberg <zack@codesourcery.com>
1112 * Makefile.in: Don't set ALL. Delete @cross_defines@,
1113 @cross_overrides@, @build_overrides@ stanzas. INTERNAL_CFLAGS
1114 is now @CROSS@ -DIN_GCC; update comment.
1116 2001-12-04 Robert Dewar <dewar@gnat.com>
1118 * einfo.adb (Has_Pragma_Pure_Function): New flag.
1119 Fix problem that stopped ceinfo from working
1121 * einfo.ads (Has_Pragma_Pure_Function): New flag.
1123 * sem_prag.adb (Pure_Function): Set new flag Has_Pragma_Pure_Function.
1125 2001-12-04 Douglas B. Rupp <rupp@gnat.com>
1128 (File_Time_Stamp): New procedure.
1129 (Preserve_Mode): New boolean.
1130 (Write_Unit): Pass time stamp.
1131 Implement -p switch (preserve time stamps).
1133 * gnatcmd.adb (CHOP): Add translation for -p (/PRESERVE).
1135 * gnatchop.adb: Do usage info for -p switch
1137 * adaint.h (__gnat_set_file_time_name): New function
1139 * adaint.c (__gnat_set_file_time_name): Implement
1141 * adaint.h: Fix typo
1143 2001-12-03 Robert Dewar <dewar@gnat.com>
1145 * sinfo.ads: Minor reformatting. N_Freeze_Entity node does not
1146 have Associated_Node.
1148 2001-12-03 Robert Dewar <dewar@gnat.com>
1150 * prj-proc.adb: Minor reformatting
1152 * make.adb: Minor reformatting
1154 2001-12-03 Geert Bosch <bosch@gnat.com>
1156 * make.adb: Minor reformatting.
1158 2001-12-03 Robert Dewar <dewar@gnat.com>
1160 * sem_ch12.adb: Minor reformatting
1162 2001-12-03 Ed Schonberg <schonber@gnat.com>
1164 * sem_ch12.adb (Inline_Instance_Body): Use Save_Scope_Stack and
1165 push Standard on the stack before analyzing the instance body,
1166 in order to have a clean visibility environment.
1168 * sem_ch12.adb (Inline_Instance_Body): Remove redundant code.
1170 2001-12-03 Ed Schonberg <schonber@gnat.com>
1172 * sem_ch12.adb (Instantiate_Package_Body): Protect against double
1173 instantiation of a body that contains an inlined body.
1175 2001-12-03 Ed Schonberg <schonber@gnat.com>
1178 (Analyze_generic_subprogram_Declaration): Set outer_generic_scope,
1179 to prevent freezing within formal packages.
1180 (Freeze_Subprogram_Body): If body comes from another instance that
1181 appeared before its own body, place freeze node at end of current
1182 declarative part, to prevent a back-end crash.
1183 (Inline_Instance_Body): Handle properly a package instance within
1184 a subprogram instance that is a child unit.
1186 2001-12-01 Graham Stott <grahams@redhat.com>
1188 * Makefile.in (misc.o): Add missing $(srcdir) prefix
1189 and add optabs.h dependency.
1191 * misc.c: Include optabs.h
1192 (gnat_tree_code_type): Make static and const.
1193 (gnat_tree_code_length): Likewise.
1194 (gnat_tree_code_name): Likewise.
1195 (update_setjmp_buf): Obtain operands mode from insn_data.
1197 2001-11-29 Richard Henderson <rth@redhat.com>
1199 * init.c: Remove obsolete dwarf2 frame.h section.
1201 2001-11-29 Joseph S. Myers <jsm28@cam.ac.uk>
1203 * Make-lang.in (ada.generated-manpages): New dummy target.
1205 2001-11-29 Ed Schonberg <schonber@gnat.com>
1207 * g-os_lib.adb (Add_To_Command): use explicit loop to move string
1208 into Command, an array conversion is illegal here. Uncovered by
1211 2001/11/28 Geert Bosch <bosch@gnat.com>
1213 * init.c: Minor whitespace changes.
1215 2001-11-28 Doug Rupp <rupp@gnat.com>
1217 * init.c: (__gnat_install_handler,VMS): Increase size of alternate
1220 2001-11-28 Zack Weinberg <zack@codesourcery.com>
1222 * misc.c (gnat_expand_constant): Move declaration above
1223 definition of lang_hooks.
1224 (LANG_HOOKS_EXPAND_CONSTANT): Set to gnat_expand_constant.
1225 (gnat_init): lang_expand_constant no longer exists.
1227 (internal_error_function): Remove #ifdef HAVE_VPRINTF. We
1228 always have vprintf.
1229 (gnat_init): Always call set_internal_error_function.
1231 2001-11-27 Andreas Jaeger <aj@suse.de>
1233 * Makefile.in (stamp-tool_src_dir): Use symbolic link.
1235 2001-11-27 Laurent Guerby <guerby@acm.org>
1237 * Makefile.in: Regenerate Ada dependencies.
1239 2001-11-26 Richard Henderson <rth@redhat.com>
1241 * Make-lang.in (gnatbind, gnatmake, gnatbl, gnatchop, gnatcmd,
1242 gnatlink, gnatkr, gnatls, gnatmem, gnatprep, gnatpsta, gnatpsys,
1243 gnatxref, gnatfind, gnatlbr): Depend on CONFIG_H and prefix.o.
1245 2001-11-25 Laurent Guerby <guerby@acm.org>
1247 * sysdep.c (rts_get_*): Fix style.
1249 2001-11-19 Laurent Guerby <guerby@acm.org>
1251 * Makefile.in (INCLUDES_FOR_SUBDIR): Remove redundant system include
1252 since it is of no apparent use and cause warnings.
1254 2001-11-18 Neil Booth <neil@daikokuya.demon.co.uk>
1256 * misc.c (gnat_decode_option, gnat_init_options): Make definitions
1258 (gnat_init): Don't return NULL.
1259 (finish_parse): Remove.
1261 2001-11-17 Laurent Guerby <guerby@acm.org>
1263 * Make-lang.in (GNATLIBFLAGS): Add -W -Wall.
1264 * gigi.h (init_decl_processing): Rename to gnat_init_decl_processing.
1265 * io-aux.c: Provide K&R prototypes to all functions, reformat code.
1266 * lang-spec.h: Add missing struct field to silence warnings.
1267 * sysdep.c (rts_get_*): Provide K&R prototype.
1268 * sysdep.c (Unlock_Task, Lock_Task): Move to K&R prototype.
1269 * traceback.c (Unlock_Task, Lock_Task): Likewise.
1270 * tracebak.c (__gnat_backtrace): Remove unused variable.
1271 * utils.c (end_subprog_body): Move to K&R style.
1273 Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1275 * trans.c, utils2.c: Remove PALIGN parameter to get_inner_reference.
1277 2001-11-15 Neil Booth <neil@daikokuya.demon.co.uk>
1279 * misc.c (gnat_init): Change prototype. Include the
1280 functionality of the old init_parse and init_decl_processing.
1281 (gnat_init_decl_processing): New prototype.
1282 (init_parse): Remove.
1283 * utils.c (init_decl_processing): Rename gnat_init_decl_processing.
1285 2001-11-09 Neil Booth <neil@daikokuya.demon.co.uk>
1287 * misc.c (gnat_print_decl, gnat_print_type): Renamed.
1288 (LANG_HOOKS_PRINT_DECL, LANG_HOOKS_PRINT_TYPE): Override.
1289 (print_lang_statistics, lang_print_xnode, print_lang_identifier,
1290 set_yydebug): Remove.
1292 2001-11-09 Neil Booth <neil@daikokuya.demon.co.uk>
1294 * misc.c (LANG_HOOKS_NAME, LANG_HOOKS_IDENTIFIER_SIZE): Override.
1295 (struct lang_hooks): Constify.
1296 (language_string, lang_identify): Remove.
1297 * utils.c (init_decl_processing): Update.
1299 2001-11-06 Neil Booth <neil@cat.daikokuya.demon.co.uk>
1301 * misc.c: Include langhooks-def.h.
1302 * Makefile.in: Update.
1304 2001-10-30 Robert Dewar <dewar@gnat.com>
1307 (Check_Identifier): Rewrite circuit to be compatible with use of letters
1308 in the upper half of ASCII.
1309 (Check_Identifier): Minor reformatting
1311 2001-10-30 Geert Bosch <bosch@gnat.com>
1313 * (Associated_Node, Set_Associated_Node): Do not check for
1316 2001-10-30 Robert Dewar <dewar@gnat.com>
1318 * a-reatim.ads: Minor reformatting
1320 2001-10-30 Robert Dewar <dewar@gnat.com>
1322 * gnatdll.adb: Minor reformatting throughout. Many ??? added for
1323 undocumented declarations.
1325 2001-10-30 Pascal Obry <obry@gnat.com>
1327 * gnatdll.adb (Parse_Command_Line): handle -g option to be passed
1328 to the binder and linker.
1331 * mdll.ads: Fix layout. Update copyright notice.
1333 * mdll.adb: Fix layout. Update copyright notice.
1335 2001-10-30 Robert Dewar <dewar@gnat.com>
1337 * usage.adb: Minor fix to output for -gnaty.
1339 2001-10-30 Ed Schonberg <schonber@gnat.com>
1341 * a-reatim.ads: Makes Seconds_Count into a 64-bit integer,
1342 to accommodate all its possible values.
1344 * a-reatim.adb (Split): Special-case handling of Time_Span_First
1345 and of small absolute values of T.
1347 2001-10-30 Richard Kenner <kenner@gnat.com>
1349 * misc.c (gnat_expand_expr, case NULL_EXPR): Remove call to
1350 set_mem_attributes since not needed and wrong if RESULT if a REG;
1351 fixes ACATS failures.
1353 2001-10-30 Geert Bosch <bosch@gnat.com>
1355 * 86numaux.adb, a-tigeau.ads, a-wtgeau.ads, fname-sf.ads, g-traceb.ads,
1356 s-tasdeb.ads, sem_maps.ads: Add 2001 to copyright notice.
1358 2001-10-30 Robert Dewar <dewar@gnat.com>
1360 * bindusg.adb: Undocument -f switch.
1362 * gnatcmd.adb: Remove /FULL_ELABORATION.
1364 * opt.ads (Force_RM_Elaboration_Order): Document that this is
1367 * gnatbind.adb: Output new warning for use of obsolescent -f switch.
1369 * gnatbind.adb: Minor update of warning msg.
1371 2001-10-30 Vincent Celier <celier@gnat.com>
1373 * gnatcmd.adb (MAKE, BIND, LINK, LIST, FIND, XREF): Add translations
1374 for project file switches (-P (/PROJECT_FILE=),
1375 -X (/EXTERNAL_REFERENCE=) and -vPx (/PROJECT_FILE_VERBOSITY=DEFAULT
1378 2001-10-30 Geert Bosch <bosch@gnat.com>
1380 * decl.c: Minor whitespace fixes.
1382 2001-10-30 Richard Kenner <kenner@gnat.com>
1384 * utils2.c (build_allocator): Test for SIZE overflow in array case too
1386 2001-10-30 Geert Bosch <bosch@gnat.com>
1388 * ali-util.adb (Initialize_Checksum): Use out-mode instead of in out.
1389 Found due to GCC 3.0 warning of using uninitialized value.
1392 (Get_Max_Size): Use variant record for tracking value/expression.
1393 Makes logic clearer and prevents warnings for uninitialized variables.
1394 (Layout_Array_Type): Use variant record for tracking value/expression.
1395 Makes logic clearer and prevents warnings for uninitialized variables.
1397 2001-10-30 Robert Dewar <dewar@gnat.com>
1399 * lib.adb: Minor reformatting
1401 * s-taprop.ads: Minor reformatting
1403 2001-10-29 Laurent Guerby <guerby@acm.org>
1406 (Raise_From_Signal_Handler, Propagate_Signal_Exception): Make arg
1408 (_gnat_error_handler): Make MSG const.
1410 2001-10-29 Richard Kenner <kenner@gnat.com>
1412 * sysdep.c: Fix localtime_r problem on LynxOS.
1413 Also remove #elif to avoid warnings.
1415 * misc.c (yyparse): Don't set up and register jmpbuf; remove decls
1418 * decl.c (annotate_value): Make SIZE unsigned to avoid warning.
1420 2001-10-28 Joseph S. Myers <jsm28@cam.ac.uk>
1422 * 86numaux.adb, a-tigeau.ads, a-wtgeau.ads, decl.c, exp_ch6.adb,
1423 exp_ch9.adb, exp_util.adb, fname-sf.ads, freeze.ads, g-awk.adb,
1424 g-comlin.ads, g-dirope.adb, g-dyntab.ads, g-socket.ads,
1425 g-table.ads, g-traceb.ads, gnat-style.texi, gnatchop.adb, init.c,
1426 layout.adb, layout.ads, mdllfile.ads, mlib-fil.ads, osint.ads,
1427 s-fatgen.adb, s-imgrea.adb, s-taprop.ads, s-tasdeb.ads,
1428 sem_aggr.adb, sem_attr.adb, sem_case.ads, sem_ch13.adb,
1429 sem_ch3.adb, sem_elab.adb, sem_maps.ads, sem_res.adb,
1430 sem_util.ads, sinfo.ads, sinput.ads, table.adb, table.ads,
1431 types.ads, urealp.adb: Fix spelling errors.
1433 2001-10-27 Laurent Guerby <guerby@acm.org>
1435 * trans.c (gigi): Fix non determinism leading to bootstrap
1436 comparison failures for debugging information.
1438 2001-10-26 Florian Weimer <fw@deneb.enyo.de>
1440 * gnat_rm.texi: Use @./@: where appropriate.
1442 2001-10-26 Robert Dewar <dewar@gnat.com>
1444 * sinfo.adb: Define Associated_Node to overlap Entity field. Cleanup.
1446 2001-10-26 Richard Kenner <kenner@gnat.com>
1448 * gmem.c (__gnat_gmem_read_next): Properly check for EOF
1450 2001-10-26 Richard Kenner <kenner@gnat.com>
1452 * decl.c (validate_size): Modify message for bad size to avoid
1453 implication that compiler is modifying the size.
1455 2001-10-26 Robert Dewar <dewar@gnat.com>
1457 * prj-util.adb: Minor reformatting. Fix bad header format.
1459 2001-10-26 Robert Dewar <dewar@gnat.com>
1461 * sinfo.ads: Define Associated_Node to overlap Entity field. Cleanup.
1463 * sinfo.ads: Clarify use of Associated_Node (documentation only).
1465 * sem_ch12.adb: Change Node4 to Associated_Node. Change
1466 Associated_Node to Get_Associated_Node. Put use of Unchecked_Access
1467 much more narrowly in places where needed. These are cleanups.
1469 2001-10-26 Joel Brobecker <brobecke@gnat.com>
1471 * 5zosinte.ads (null_pthread): new constant.
1474 (Initialize_TCB): Initialize thread ID to null, to be able to verify
1475 later that this field has been set.
1476 (Finalize_TCB): ditto.
1477 (Suspend_Task): Verify that the thread ID is not null before using it.
1478 (Resume_Task): ditto.
1481 (Resume_All_Tasks): Lock the tasks list before using it.
1482 (Suspend_All_Tasks): ditto.
1484 2001-10-26 Richard Kenner <kenner@gnat.com>
1486 * decl.c (gnat_to_gnu_entity, case E_General_Access_Type):
1487 Make constant variant of designated type for Is_Access_Constant.
1488 Call update_pointer_to with main variant.
1490 * trans.c (process_freeze_entity, process_type):
1491 Call update_pointer_to on main variant.
1493 * utils.c (update_pointer_to): Make corresponding variant for NEW_TYPE.
1494 If main variant, update all other variants.
1496 * utils2.c (build_unary_op, case INDIRECT_REF): No longer set
1499 2001-10-26 Robert Dewar <dewar@gnat.com>
1501 * prj-util.adb: Minor reformatting
1503 2001-10-26 Robert Dewar <dewar@gnat.com>
1505 * prj-util.adb: Minor reformatting
1507 2001-10-26 Robert Dewar <dewar@gnat.com>
1509 * prj-attr.adb: Minor reformatting throughout
1511 2001-10-26 Robert Dewar <dewar@gnat.com>
1513 * prj-attr.ads: Minor reformatting
1514 Add ??? comment (this whole spec has almost no comments)
1516 2001-10-26 Vincent Celier <celier@gnat.com>
1518 * g-os_lib.adb (Normalize_Pathname): Preserve the double slash
1519 ("//") that precede the drive letter on Interix.
1521 2001-10-26 Geert Bosch <bosch@gnat.com>
1523 * gnat_rm.texi: Add GNAT Reference Manual.
1525 2001-10-25 Robert Dewar <dewar@gnat.com>
1527 * sem_ch8.adb (Analyze_Package_Renaming): Skip analysis if Name
1528 is Error. Similar change for other renaming cases.
1530 2001-10-25 Robert Dewar <dewar@gnat.com>
1532 * s-atacco.ads: Add pragma Inline_Always for functions.
1533 Fix header format. Add copyright 2001
1535 2001-10-25 Ed Schonberg <schonber@gnat.com>
1537 * par-ch3.adb (P_Subtype_Mark_Resync): for an anonymous array
1538 return Error rather than Empty so that analysis can proceed.
1540 2001-10-25 Ed Schonberg <schonber@gnat.com>
1542 * sem_util.adb (Enter_Name): better handling of cascaded error
1543 messages when a unit appears in its own context.
1545 2001-10-25 Ed Schonberg <schonber@gnat.com>
1547 * sem_util.adb (Defining_Entity): in case of error, attach created
1548 entity to specification, so that semantic analysis can proceed.
1550 2001-10-25 Robert Dewar <dewar@gnat.com>
1553 (Defining_Entity): Deal with Error.
1554 (Process_End_Label): Deal with bad end label for.
1556 2001-10-25 Ed Schonberg <schonber@gnat.com>
1558 * sem_elab.adb (Check_A_Call): refine message when call is in an
1559 instance but callee is not declared in the generic unit.
1561 2001-10-25 Ed Schonberg <schonber@gnat.com>
1563 * sem_elab.adb (Check_A_Call): check for renaming before finding the
1564 enclosing unit, which may already be different from the calling unit.
1566 2001-10-25 Geert Bosch <bosch@gnat.com>
1568 * 4gintnam.ads: fix header format.
1570 2001-10-25 Ed Schonberg <schonber@gnat.com>
1572 * sem_res.adb (Resolve_Call): if the call is actually an indexing
1573 operation on the result of a parameterless call, perform elaboration
1574 check after the node has been properly rewritten.
1576 * sem_ch12.adb (Copy_Generic_Node): after the proper body has been
1577 inlined within the generic tree, the defining identifier is not a
1580 2001-10-25 Ed Schonberg <schonber@gnat.com>
1582 * sem_res.adb (Resolve): special-case resolution of Null in an
1583 instance or an inlined body to avoid view conflicts.
1585 * sem_ch12.adb (Copy_Generic_Node): for allocators, check for view
1586 compatibility by retrieving the access type of the generic copy.
1588 2001-10-25 Robert Dewar <dewar@gnat.com>
1591 (Analyze_Number_Declaration): Handle error expression.
1592 (Signed_Integer_Type_Declaration): Handle error bound.
1593 (Analyze_Subtype_Indication): Handle error range.
1595 * sem_util.adb (Get_Index_Bounds): Check for Error.
1597 2001-10-25 Robert Dewar <dewar@gnat.com>
1599 * restrict.adb (Set_No_Run_Time_Mode): Set Discard_Names as default
1600 in no run time mode.
1602 2001-10-25 Pascal Obry <obry@gnat.com>
1604 * gnatmem.adb (Read_Next): fix Curs2 value to properly handle quiet
1605 mode case for ALLOC case.
1607 * gnatmem.adb (Read_Next): correctly fix parsing in Quiet mode on
1608 all platforms. Improvement of last change.
1610 2001-10-25 Robert Dewar <dewar@gnat.com>
1612 * exp_ch4.adb (Expand_N_Allocator): Minor reformatting.
1614 2001-10-25 Geert Bosch <bosch@gnat.com>
1616 * osint.adb (Is_Relative): Remove duplicate.
1618 2001-10-25 Pascal Obry <obry@gnat.com>
1620 * osint.adb (Read_Default_Search_Dirs): correctly detect relative
1621 pathnames in UNIX and DOS style with drive letter.
1622 (Is_Relative): new routine.
1624 * osint.adb: Minor reformatting
1626 * osint.adb (Is_Relative): implementation using
1627 GNAT.OS_Lib.Is_Absolute_Path. Better fix.
1629 2001-10-25 Pascal Obry <obry@gnat.com>
1631 * g-dirope.adb (Basename): correctly compute offset between the
1632 original Path and the translated one.
1634 * g-dirope.adb: (Base_Name): add some comments.
1636 2001-10-25 Robert Dewar <dewar@gnat.com>
1638 * exp_imgv.adb (Expand_Image_Attribute): Defend against bad use
1639 in HIE mode, avoids compilation abandoned message
1641 * exp_imgv.adb: Correct typo in previous change
1643 * exp_imgv.adb: Correct typo in previous change (not my day!)
1645 2001-10-25 Robert Dewar <dewar@gnat.com>
1647 * s-tpinop.ads: Add 2001 to copyright notice. Fix header format.
1649 2001-10-25 Pascal Obry <obry@gnat.com>
1651 * g-awk.ads: Move all pragma inlines next to the routine
1652 declarations. This is more uniform with other GNAT spec.
1654 2001-10-22 Geert Bosch <bosch@gnat.com>
1656 * Make-lang.in (gnattools, cross-gnattools): Remove gnatmem.
1658 2001-10-19 Geert Bosch <bosch@gnat.com>
1660 * Makefile.in (tools, gnattools): Remove gnatmem.
1662 2001-10-17 Richard Henderson <rth@redhat.com>
1664 * Makefile.in (misc.o): Depend on langhooks.h.
1665 * misc.c: Include it.
1666 (LANG_HOOKS_INIT, LANG_HOOKS_INIT_OPTIONS): New.
1667 (LANG_HOOKS_DECODE_OPTION): New.
1668 (lang_hooks): Use LANG_HOOKS_INITIALIZER.
1670 2001-10-16 Florian Weimer <fw@deneb.enyo.de>
1672 * trans.c (tree_transform): Adjust to recent change in
1673 expand_asm_operands to implement named asm operands.
1675 2001-10-11 Ed Schonberg <schonber@gnat.com>
1677 * exp_ch8.adb (Expand_N_Object_Renaming_Declaration): Bugfix in
1678 renaming of discriminant for mutable record type.
1680 2001-10-11 Robert Dewar <dewar@gnat.com>
1682 * validsw.adb: Properly save -gnatVn status.
1684 2001-10-11 Robert Dewar <dewar@gnat.com>
1686 * usage.adb: Add lines for V switch.
1688 * gnatcmd.adb (COMPILE): Revise translations for -gnatV
1689 (/VALIDITY_CHECKING).
1691 2001-10-11 Ed Schonberg <schonber@gnat.com>
1693 * sem_type.adb (Add_One_Interp): an operator for a type declared in
1694 an extension of System is known to be visible.
1696 2001-10-11 Ed Schonberg <schonber@gnat.com>
1698 * sem_eval.adb (Compare_Fixup): get the bounds of a String_Literal
1699 properly. Fixes regression on ACATS C34005G.
1701 2001-10-11 Robert Dewar <dewar@gnat.com>
1703 * sem_ch5.adb (Analyze_Iteration_Scheme): Suppress warning on null
1704 loop in generic instance, since this is likely not very useful.
1706 2001-10-11 Robert Dewar <dewar@gnat.com>
1708 * restrict.adb (Disallow in No_Run_Time_Mode): Properly specialize
1709 the error message for high integrity mode.
1711 * rtsfind.adb (RTE): Give message if we try to find an entity that
1712 is not available in high integrity mode.
1715 (OK_To_Use_In_HIE_Mode): New array.
1716 (RTE): May return Empty in high integrity mode.
1718 * rtsfind.ads (OK_To_Use_In_No_Run_Time_Mode): New name for
1719 OK_To_Use_In_HIE_Mode, now includes System_FAT_xxx.
1721 * sem_ch6.adb (Analyze_Subprogram_Body): Kill body in predefined
1722 unit if not inlined always and in no runtime mode. Fixes problem
1723 caused by new Rtsfind changes.
1725 * sem_ch6.adb (Analyze_Subrogram_Body): Do not Check_References if
1728 * rtsfind.adb (RTE): Make sure we do not try to load unit after
1729 giving message for entity not available in high integrity mode.
1731 2001-10-11 Pascal Obry <obry@gnat.com>
1733 * impunit.adb: Add GNAT.CRC32.
1735 2001-10-11 Ed Schonberg <schonber@gnat.com>
1737 * exp_fixd.adb (Expand_Multiply_Fixed_By_Fixed_Giving_Fixed): handle
1738 properly the case where one universal operand in a non-static
1739 exponentiation of a real literal.
1741 2001-10-11 Ed Schonberg <schonber@gnat.com>
1743 * exp_ch7.adb (Find_Final_List): for a type appearing in a with_type
1744 clause, return the gobal finalization list, for lack of anthing else.
1746 2001-10-11 Ed Schonberg <schonber@gnat.com>
1748 * exp_ch7.adb (Make_Transient_Block): if statement is within
1749 exception handler, always use new transient scope to place Clean
1752 2001-10-11 Pascal Obry <obry@gnat.com>
1755 (GNAT_ADA_OBJS): add g-crc32.o, a-tags.o, a-stream.o
1756 (GNATBIND_OBJS): add g-crc32.o, a-tags.o, a-stream.o
1757 (GNATLS_RTL_OBJS): add g-crc32.o
1758 (GNATMAKE_RTL_OBJS): add g-crc32.o
1761 (CRC_Match): new function.
1762 (Get_File_Checksum): renamed Get_File_CRC. Use the GNAT.CRC32 unit
1763 instead of the previous simple checksum algorithm.
1764 (Time_Stamp_Mismatch): use CRC_Match for comparison.
1765 (Set_Source_Table): idem.
1768 (Get_File_Checksum): renamed Get_File_CRC as now we compute CRC
1769 instead of simple checksum.
1770 (CRC_Match): new function.
1771 (CRC_Error): new constant.
1773 * ali.adb (Scan_ALI): rename variable Chk to CRC as we are handling
1774 a CRC now and not a simple checksum. A CRC uses lower-case hex
1775 letters, fixes ambiguity in parsing.
1777 * ali.ads (Sdep_Record.Checksum): renamed Sdep_Record.CRC as this
1778 is what this variable will store.
1780 * bcheck.adb: Change reference to chechsum in comments by CRC.
1781 (Check_Consistency): Rename Get_File_Checksum to Get_File_CRC.
1782 rename All_Checksum_Match to All_CRC_Match. Change due to API
1783 renaming since now GNAT does not use a simple checksum but a
1784 CRC using GNAT.CRC32.
1786 * gnatls.adb: Rename Checksum to CRC in many places, we use a CRC
1787 now and not anymore a simple checksum.
1789 * lib-load.adb: Use Source_CRC instead of Source_Checksum in many
1792 * lib-writ.adb (Write_ALI): Use Source_CRC instead of Source_Checksum.
1795 (Restore_Scan_State): rename Checksum to CRC.
1796 (Save_Scan_State): idem.
1800 (Checksum): rename to CRC.
1801 (Saved_Scan_State): Save_Checksum field renamed to Save_CRC
1803 * scn-nlit.adb: Rename many Accumulate_Checksum to Update (from
1804 GNAT.CRC32). Update copyright notice.
1806 * scn-slit.adb: Rename many Accumulate_Checksum to Update (from
1807 GNAT.CRC32). Update copyright notice.
1810 (Accumulate_Checksum): removed.
1811 (Update): new procedure. Add a wide-character into the CRC.
1814 (Complete_Source_File_Entry): use CRC32 instead of simple checksum.
1815 (Load_File): fix initialization of S (change Source_Checksum to
1818 * sinput-p.adb (Load_Project_File): rename Source_Checksum to
1819 Source_CRC in S initialization.
1821 * sinput.adb (Source_Checksum): renamed to Source_CRC.
1823 * sinput.ads (Source_Checksum): renamed to Source_CRC.
1824 Update comments for the CRC.
1826 * types.adb (Hex): Use lowercase for the letter part.
1828 * types.ads (Get_Hex_String): Returns the hexadecimal representation
1829 for a word. This is currently used only for CRC. In previous version,
1830 the checksum was using a representation with all letter being
1831 upper-case. With the new implementation (using CRC) we do not remove
1832 the 32th bit of the CRC, so we can have an upper-case starting letter
1833 in the CRC. This is not possible to parse in Scan_ALI (ali.adb).
1834 It is ambigous since the CRC was optional and could be followed by
1835 options like EB, EE. So now this routines uses lower-case letter for
1836 the hexadecimal representation. Strange enough only lower case letters
1837 where checked in Scan_ALI (even if this was not a possible case).
1839 * gnatvsn.ads (Library_Version): changed to 3.15a.
1841 * s-crc32.ads: Initial version from GNAT.CRC32. This is the version
1844 * s-crc32.adb: Initial version from GNAT.CRC32. This is the version
1847 * ali-util.adb: Redo previous change to avoid using word CRC everywhere
1848 Add 2001 to copyright notice
1849 (Accumulate_Checksum): Modify to use System.CRC32.
1851 * ali-util.ads: Redo changes of previous revision to continue to use
1852 the word Checksum. Add 2001 to copyright notice.
1854 * ali.adb: Undo some of previous changes, not needed.
1855 Keep the change for lower case letters in the checksum.
1857 * ali.ads: Undo previous change not needed.
1859 * bcheck.adb: Undo most of previous change, not needed.
1860 But do use Checksums_Match for checksum comparison.
1862 * gnatls.adb: Undo most of previous change, not needed.
1863 But do use Checksums_Match for comparing checksums.
1865 * lib-load.adb: Undo previous change, not needed.
1867 * lib-writ.adb: Undo previous change, not needed.
1869 * lib-writ.ads: Document that checksums use lower case,
1870 not upper case letters.
1872 * scans.adb: Undo previous change, not needed
1874 * scans.ads: Undo previous change, not needed.
1876 * scn-nlit.adb: Undo previous changes, not needed.
1878 * scn-slit.adb: Undo previous change, not needed. Fix header format.
1881 (Accumulate_Checksum): Use System.CRC32.
1882 (Initialize_Checksum): New procedure.
1883 Remove other changes of previous revision.
1885 * sinput-p.adb: Undo previous change, not needed.
1887 * sinput.adb: Undo previous change, not needed.
1889 * sinput-l.adb: Undo previous change, not needed.
1891 * sinput.ads: Undo previous change, not needed. Keep only comment
1892 on new checksum algorithm
1894 * Makefile.in: Add s-crc32 as needed, remove g-crc32.
1895 Also remove a-tags and a-stream from GNAT sources.
1897 * ali.adb (Scan_ALI): fix typo introduce in latest check-in.
1899 * Makefile.in (GNATRTL_NONTASKING_OBJS): Add g-crc32.o.
1901 2001-10-11 Geert Bosch <bosch@gnat.com>
1903 * einfo.h: Regenerate.
1905 * nmake.ads: Regenerate.
1907 * nmake.adb: Regenerate.
1909 * sinfo.h: Regenerate.
1911 * treeprs.adb: Regenerate.
1913 2001-10-10 Geert Bosch <bosch@gnat.com>
1915 * gnat-style.texi: New file describing coding guidelines for Ada.
1917 2001-10-10 Ed Schonberg <schonber@gnat.com>
1919 * einfo.adb (Write_Entity_Flags): Elaboration_Entity_Required
1922 2001-10-10 Geert Bosch <bosch@gnat.com>
1924 * snames.ads: Add new names for project facility.
1926 * snames.adb: Update to reflect snames.ads changes.
1928 * snames.h: Update to reflect snames.ads changes.
1930 2001-10-10 Vincent Celier <celier@gnat.com>
1933 (Add_Switches): reflect the changes for the switches attributes
1934 Default_Switches indexed by the programming language,
1935 Switches indexed by the file name.
1936 (Collect_Arguments_And_Compile): Idem.
1937 Reflect the attribute name changes.
1940 (Initialisation_Data): Change the names of some packages and
1942 (Initialize): process case insensitive associative arrays.
1945 (Attribute_Kind): Remove Both, add Case_Insensitive_Associative_Array.
1948 (Parse_Attribute_Declaration): For case insensitive associative
1949 arrays, set the index string to lower case.
1952 Reflect the changes of the project attributes.
1955 Replace Check_Naming_Scheme by Ada_Check and
1956 Language_Independent_Check.
1959 Replaced Check_Naming_Scheme by 2 procedures:
1960 Ada_Check and Language_Independent_Check.
1963 (Process_Declarative_Items): For case-insensitive associative
1964 arrays, set the index string to lower case.
1965 (Recursive_Check): Call Prj.Nmsc.Ada_Check, instead of
1966 Prj.Nmsc.Check_Naming_Scheme.
1969 (Case_Insensitive): New function
1970 (Set_Case_Insensitive): New procedure
1973 (Case_Insensitive): New function
1974 (Set_Case_Insensitive): New procedure
1975 (Project_Node_Record): New flag Case_Insensitive.
1978 (Value_Of): new function to get the string value of a single
1979 string variable or attribute.
1982 (Value_Of): new function to get the string value of a single
1983 string variable or attribute.
1986 (Ada_Default_Spec_Suffix): New function
1987 (Ada_Default_Impl_Suffix): New function
1988 Change definitions of several constants to reflect
1989 new components of record types.
1992 (Naming_Data): Change several components to reflect new
1993 elements of naming schemes.
1994 (Project_Data): New flags Sources_Present and
1995 Language_Independent_Checked.
1996 (Ada_Default_Spec_Suffix): New function.
1997 (Ada_Default_Impl_Suffix): New function.
2000 Modification of predefined names for project manager: added
2001 Implementation, Specification_Exceptions, Implementation_Exceptions,
2002 Specification_Suffix, Implementation_Suffix, Separate_Suffix,
2003 Default_Switches, _Languages, Builder, Cross_Reference,
2004 Finder. Removed Body_Part, Specification_Append, Body_Append,
2005 Separate_Append, Gnatmake, Gnatxref, Gnatfind, Gnatbind,
2008 * prj.ads: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
2011 * prj-nmsc.adb (Ada_Check): Test that Separate_Suffix is defaulted,
2012 not that it is Nil_Variable_Value.
2014 * prj.ads: Add ??? for uncommented declarations
2016 2001-10-10 Ed Schonberg <schonber@gnat.com>
2018 * sem_prag.adb: (Analyze_Pragma, case External): If entity is a
2019 constant, do not indicate possible modification, so that gigi can
2020 treat it as a bona fide constant.
2022 2001-10-10 Robert Dewar <dewar@gnat.com>
2024 * sem_prag.adb: Add processing for pragma External.
2026 * snames.ads: Add entry for pragma External.
2028 * par-prag.adb: Add pragma External.
2030 * snames.adb: Updated to match snames.ads.
2032 2001-10-10 Ed Schonberg <schonber@gnat.com>
2034 * exp_ch4.adb (Expand_N_Allocator): Generate meaningful names for
2035 a dynamic task if the allocator appears in an indexed assignment
2036 or selected component assignment.
2038 * exp_util.adb (Build_Task_Array_Image, Build_Task_Record_Image):
2039 For a dynamic task in an assignment statement, use target of
2040 assignment to generate meaningful name.
2042 2001-10-10 Ed Schonberg <schonber@gnat.com>
2044 * einfo.adb (Write_Field19_Name): Body_Entity is also defined for
2047 * einfo.ads: Body_Entity is also defined for generic package.
2048 Documentation change only
2050 * exp_aggr.adb (Build_Array_Aggr_Code): When expanding an
2051 others_choice for a discriminated component initialization,
2052 convert discriminant references into the corresponding discriminals.
2054 * exp_ch3.adb (Get_Simple_Init_Val): Add qualification to aggregate
2055 only if original type is private and expression has to be wrapped
2059 (Apply_Constraint_Check): Do not perform length check
2060 if expression is an aggregate with only an others_choice.
2061 (Length_N_Cond): two references to the same in_parameter
2062 (typically the discriminal in an init_proc) denote the same value.
2063 Two useful optimization uncovered by bugfixes above.
2065 2001-10-10 Robert Dewar <dewar@gnat.com>
2067 * xeinfo.adb: Change int to char in translation of enumeration types.
2068 This fixes a problem in the C representation of component alignment.
2069 Add 2001 to copyright notice
2071 2001-10-10 Richard Kenner <kenner@gnat.com>
2073 * decl.c: (validate_size): Do check size of object of integral type
2074 if it is a packed array type.
2076 2001-10-10 Richard Kenner <kenner@gnat.com>
2078 * decl.c: (gnat_to_gnu_entity, case object): Also materialize
2079 VAR_DECL for constant if not Is_Public but -O0.
2081 2001-10-10 Richard Kenner <kenner@gnat.com>
2083 * misc.c (struct lang_hooks): Add new initializer to match GCC change.
2085 2001-10-10 Geert Bosch <bosch@gnat.com>
2087 * xnmake.adb (XNmake): Fix handling of -s/-b options. No longer
2088 use '/' as switch character, allowing for absolute file names.
2090 2001-10-09 Joseph S. Myers <jsm28@cam.ac.uk>
2092 * 4gintnam.ads, Make-lang.in, Makefile.in, config-lang.in: Update
2095 2001-10-08 Geert Bosch <bosch@gnat.com>
2097 * Makefile.in (treeprs.ads, einfo.h, sinfo.h, nmake.adb, nmake.ads):
2098 Automatically build utilities when files need to be regenerated.
2100 2001-10-08 Geert Bosch <bosch@gnat.com>
2102 * xsnames.adb: New utility for updating snames.ads and snames.adb
2104 2001-10-08 Zack Weinberg <zack@codesourcery.com>
2106 * Make-lang.in (ADAFLAGS): Add -W -Wall.
2107 (ADA_FLAGS_TO_PASS): Set ADA_CFLAGS=$(CFLAGS) also.
2108 (gnat1): Also depend on attribs.o.
2109 (gnatlib, gnatlib-shared): Set CC and ADAC in recursive make.
2110 * Makefile.in (X_ADAFLAGS, T_ADAFLAGS): New.
2111 (ADAC): Set to @ADAC@ in stage1, $(CC) later.
2112 (ADAFLAGS): Add -W -Wall.
2113 (ALL_ADAFLAGS, MOST_ADAFLAGS): Add X_ADAFLAGS and T_ADAFLAGS;
2116 (.adb.o, .ads.o, a-numaux.o, a-teioed.o, s-interr.o,
2117 s-taskin.o, sdefault.o, s-tasdeb.o, s-vaflop.o, a-except.o,
2118 s-assert.o, s-stalib.o, s-memory.o, memtrack.o, mlib-tgt.o):
2119 Use $(ADAC), not $(CC), as compilation command.
2121 (gnattools): Depend directly on tools to build, don't use
2123 (gnatlib): Set ADA_CFLAGS=$(GNATLIBCFLAGS) in recursive make.
2125 * einfo.h, sinfo.h: New files (autogenerated).
2127 2001-10-08 Richard Henderson <rth@redhat.com>
2129 * comperr.adb (Abort_In_Progress): New.
2130 (Compiler_Abort): Use it to prevent recursion.
2132 2001-10-08 Robert Dewar <dewar@gnat.com>
2134 * atree.adb: Set Error_Posted in Error node, helps error recovery.
2136 * par-endh.adb (Output_End_Expected): We should also not test
2137 Error_Posted on the Error node, since now it is always set.
2139 * cstand.adb (Create_Standard): Set Etype of Error to Any_Type
2140 to help error recovery. Part of general work on 9407-004.
2142 * par.adb: Add ??? for misuse of error
2145 (Resolve): Defend against Error, fixes 9407-003.
2146 (Resolve_Discrete_Subtype_Indication): Defend against Error.
2148 * sinfo.ads (N_Error): Now has Etype field (which will be set
2149 to Any_Type to help error recovery).
2151 2001-10-08 Richard Kenner (kenner@gnat.com)
2153 * misc.c (gnat_expand_expr, case UNCHECKED_CONVERT_EXPR):
2154 Consistently set MEM attributes from expression; fixes
2155 bootstrap failure on x86.
2157 2001-10-08 Geert Bosch (bosch@gnat.com)
2159 * 5oosinte.adb: Add 2001 to copyright notice.
2161 2001-10-08 Geert Bosch (bosch@gnat.com)
2163 * ceinfo.adb: Add utility for consistency checking of einfo.ad[bs].
2165 * csinfo.adb: Add utility for consistency checking of sinfo.ad[bs].
2167 2001-10-07 Joseph S. Myers <jsm28@cam.ac.uk>
2169 * 5oosinte.adb: Fix spelling error of "separate" as "seperate".
2171 2001-10-05 Geert Bosch (bosch@gnat.com)
2173 * adaint.h: Small formatting fix.
2175 2001-10-04 Geert Bosch <bosch@gnat.com>
2177 * sysdep.c (__gnat_set_binary_mode, __gnat_set_text_mode):
2178 Arg is int, not FILE *, in dummy version of functions.
2180 * adaint.h (__gnat_set_binary_mode, __gnat_set_text_mode):
2181 Arg is int, not FILE *.
2183 2001-10-04 Geert Bosch <bosch@gnat.com>
2185 * 3lsoccon.ads: Added file, missed with initial check ins.
2187 * 4lintnam.ads: Fix header format.
2188 Change Linux to GNU/Linux.
2190 * 5iosinte.adb: Change Linux to GNU/Linux.
2192 * 5iosinte.ads: Change Linux to GNU/Linux.
2194 * 5itaprop.adb: Change Linux to GNU/Linux.
2196 * 5itaspri.ads: Change Linux to GNU/Linux.
2197 Update copyright notice.
2199 * 5lintman.adb: Change Linux to GNU/Linux.
2201 * 5lml-tgt.adb: Change Linux to GNU/Linux.
2203 * 5losinte.ads: Change Linux to GNU/Linux.
2205 * 5lsystem.ads: Change Linux to GNU/Linux.
2207 * 5qosinte.adb: Change Linux to GNU/Linux.
2209 * 5qosinte.ads: Change Linux to GNU/Linux.
2211 * 5qparame.ads: Change Linux to GNU/Linux.
2213 * 5qtaprop.adb: Change Linux to GNU/Linux.
2215 * 5qtaspri.ads: Change Linux to GNU/Linux.
2216 Add 2001 to copyright notice.
2218 * 5vintman.ads: Change Linux to GNU/Linux.
2219 Fix header format. Add 2001 to copyright notice.
2221 * g-soccon.ads: Change Linux to GNU/Linux.
2223 * g-trasym.ads: Change Linux to GNU/Linux.
2224 Add 2001 to copyright notice.
2226 * memtrack.adb: Change Linux to GNU/Linux.
2228 * s-intman.ads: Change Linux to GNU/Linux.
2229 Add 2001 to copyright notice. Fix header format.
2231 * s-stache.adb: Change Linux to GNU/Linux.
2233 * adaint.c: Change Linux to GNU/Linux.
2235 * cio.c: Change Linux to GNU/Linux.
2237 * cstreams.c: Change Linux to GNU/Linux.
2239 * init.c: Change Linux to GNU/Linux.
2241 * gmem.c: Change Linux to GNU/Linux.
2243 * tracebak.c: Change Linux to GNU/Linux.
2246 2001-10-02 Geert Bosch <bosch@gnat.com>
2248 * misc.c (insert_default_attributes): Add dummy version.