* c-lang.c (LANG_HOOKS_INCOMPLETE_TYPE_ERROR): Redefine.
[official-gcc.git] / gcc / ada / ChangeLog
blobfbcdc5391da2e20e22f37486f3d55db0d2f24818
1 2002-04-18  Neil Booth  <neil@daikokuya.demon.co.uk>
3         * gigi.h (incomplete_type_error): Remove.
4         * utils.c (incomplete_type_error): Remove.
6 2002-04-16  Mark Mitchell  <mark@codesourcery.com>
8         * trans.c (tree_transform): Add has_scope argument to
9         expand_start_stmt_expr.
11 2002-04-04  Neil Booth  <neil@daikokuya.demon.co.uk>
13         * gigi.h (truthvalue_conversion): Rename.
14         * misc.c (LANG_HOOKS_TRUTHVALUE_CONVERSION): Redefine.
15         * trans.c (tree_transform): Update.
16         * utils2.c (truthvalue_conversion): Rename, update.
17         (build_binary_op, build_unary_op): Update.
19 2002-04-04  Laurent Guerby  <guerby@acm.org>
21         * make.adb: Implement -margs, remove restriction about file name placement.
22         * makeusg.adb: Documentation update.
23         * Makefile.in (TOOLS_FLAGS_TO_PASS): Add VPATH=$(fsrcdir).
24         * Makefile.in (gnattools3): Comment out, gnatmem does not build without libaddr2line.
26 2002-04-04  Neil Booth  <neil@daikokuya.demon.co.uk>
28         * utils.c (create_subprog_decl): Use SET_DECL_ASSEMBLER_NAME.
29         (builtin_function): Similarly.
31 2002-04-01  Neil Booth  <neil@daikokuya.demon.co.uk>
33         * decl.c (gnat_to_gnu_entity): Update.
34         * gigi.h (mark_addressable): Rename.
35         * misc.c (LANG_HOOKS_MARK_ADDRESSABLE): Redefine.
36         * trans.c (tree_transform): Update.
37         * utils.c (create_var_decl): Update.
38         * util2.c (build_binary_op, build_unary_op,
39         fill_vms_descriptor): Update.
40         (mark_addressable): Rename, update.
42 2002-04-01  Neil Booth  <neil@daikokuya.demon.co.uk>
44         * gigi.h (unsigned_type, signed_type, signed_or_unsigned_type):
45         Rename.
46         * misc.c (LANG_HOOKS_SIGNED_TYPE, LANG_HOOKS_UNSIGNED_TYPE,
47         LANG_HOOKS_SIGNED_OR_UNSIGNED_TYPE): New.
48         * trans.c (tree_transform, convert_with_check): Update.
49         * utils.c (unsigned_type, signed_type, signed_or_unsigned_type):
50         Rename.
52 2002-03-31  Neil Booth  <neil@daikokuya.demon.co.uk>
54         * gigi.h (finish_incomplete_decl): Rename.
55         * misc.c (LANG_HOOKS_FINISH_INCOMPLETE_DECL): Redefine.
56         * utils.c (gnat_init_decl_processing): Don't set hook.
57         (finish_incomplete_decl): Rename.
59 2002-03-29  Andreas Schwab  <schwab@suse.de>
61         * Makefile.in: Pass VPATH=$(fsrcdir) when calling make in rts
62         directory.
64 2001-03-28  Robert Dewar <dewar@gnat.com>
66         * checks.ads:
67         (Remove_Checks): New procedure
69         * checks.adb:
70         (Remove_Checks): New procedure
72         * exp_util.adb:
73         Use new Duplicate_Subexpr functions
74         (Duplicate_Subexpr_No_Checks): New procedure
75         (Duplicate_Subexpr_No_Checks_Orig): New procedure
76         (Duplicate_Subexpr): Restore original form (checks duplicated)
77         (Duplicate_Subexpr): Call Remove_Checks
79         * exp_util.ads:
80         (Duplicate_Subexpr_No_Checks): New procedure
81         (Duplicate_Subexpr_No_Checks_Orig): New procedure
82         Add 2002 to copyright notice
84         * sem_util.adb: Use new Duplicate_Subexpr functions
86         * sem_eval.adb:
87         (Eval_Indexed_Component): This is the place to call
88         Constant_Array_Ref and to replace the value. We simply merge
89         the code of this function in here, since it is now no longer
90         used elsewhere. This fixes the problem of the back end not
91         realizing we were clever enough to see that this was
92         constant.
93         (Expr_Val): Remove call to Constant_Array_Ref
94         (Expr_Rep_Val): Remove call to Constant_Array_Ref
95         Minor reformatting
96         (Constant_Array_Ref): Deal with string literals (patch
97         suggested by Zack Weinberg on the gcc list)
99 2001-03-28  Ed Schonberg <schonber@gnat.com>
101         * exp_util.adb: Duplicate_Subexpr_No_Checks_Orig =>
102         Duplicate_Subexpr_Move_Checks.
104         * exp_util.ads: Duplicate_Subexpr_No_Checks_Orig =>
105         Duplicate_Subexpr_Move_Checks.
107         * sem_eval.adb: (Constant_Array_Ref): Verify that constant
108         value of array exists before retrieving it (it may a private
109         protected component in a function).
111 2002-03-28   Geert Bosch <bosch@gnat.com>
113         * prj-pp.adb : New file.
115         * prj-pp.ads : New file.
117 2002-03-28  Andreas Jaeger  <aj@suse.de>
119         * Makefile.in (stamp-sdefault): Fix path for Makefile.
121 2002-03-28  Neil Booth  <neil@daikokuya.demon.co.uk>
123         * misc.c (gnat_expand_expr): Move prototype.
125 2002-03-27  Neil Booth  <neil@daikokuya.demon.co.uk>
127         * misc.c (insert_default_attributes): Remove.
129 2002-03-27  Neil Booth  <neil@daikokuya.demon.co.uk>
131         * misc.c (LANG_HOOKS_EXPAND_EXPR): Redefine.
132         (gnat_init): Don't set hook.
133         (gnat_expand_expr): Fix prototype.
135 2002-03-27  Neil Booth  <neil@daikokuya.demon.co.uk>
137         * misc.c (ggc_p): Remove.
139 2002-03-27  Geert Bosch  <bosch@gnat.com>
141         * prj-makr.ads, prj-makr.adb : New files.
143 2002-03-26  Neil Booth  <neil@daikokuya.demon.co.uk>
145         * misc.c (LANG_HOOKS_MARK_TREE): Redefine.
146         (lang_mark_tree): Make static, rename.
148 2002-03-25  Neil Booth  <neil@daikokuya.demon.co.uk>
150         * misc.c (maybe_build_cleanup): Remove.
152 2002-03-24  Neil Booth  <neil@daikokuya.demon.co.uk>
154         * gigi.h (yyparse): Remove.
156 2002-03-23  Florian Weimer  <fw@deneb.enyo.de>
158         * gnat_rm.texi: Sync with ACT version.
159           (From Ben Brosgol <brosgol@gnat.com>)
161 2002-03-20  Neil Booth  <neil@daikokuya.demon.co.uk>
163         * misc.c (LANG_HOOKS_DECL_PRINTABLE_NAME): Redefine.
164         (gnat_init): Remove old hook.
166 2002-03-17  Neil Booth  <neil@daikokuya.demon.co.uk>
168         * misc.c (LANG_HOOKS_PARSE_FILE): Redefine.
169         (yyparse): Rename gnat_parse_file.
171 2002-03-14  Geoffrey Keating  <geoffk@redhat.com>
173         Delete all lines containing "$Revision:".
174         * xeinfo.adb: Don't look for revision numbers.
175         * xnmake.adb: Likewise.
176         * xsinfo.adb: Likewise.
177         * xsnames.adb: Likewise.
178         * xtreeprs.adb: Likewise.
180 2002-03-12  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
182         * misc.c (gnat_tree_code_type, gnat_tree_code_length,
183         gnat_tree_code_name): Delete.
184         (tree_code_type, tree_code_length, tree_code_name): Define.
185         (gnat_init): Don't try to copy into the various tree_code
186         arrays.
188 2002-03-11  Richard Henderson  <rth@redhat.com>
190         * Makefile.in (.NOTPARALLEL): Add fake tag.
192 2002-03-07  Geert Bosch  <bosch@gnat.com>
194         * adadecode.c, adadecode.h, aux-io.c, s-traces.adb, s-traces.ads,
195         s-tratas.adb, s-tratas.ads, sinput-d.adb, sinput-d.ads,
196         switch-b.adb, switch-b.ads, switch-c.adb, switch-c.ads,
197         switch-m.adb, switch-m.ads : New files.
199 2002-03-07  Geert Bosch  <bosch@gnat.com>
201         * 41intnam.ads, 42intnam.ads, 4aintnam.ads, 4cintnam.ads,
202         4dintnam.ads, 4gintnam.ads, 4hintnam.ads, 4lintnam.ads,
203         4mintnam.ads, 4pintnam.ads, 4rintnam.ads, 4sintnam.ads,
204         4uintnam.ads, 4vcalend.adb, 4zintnam.ads, 52system.ads,
205         5amastop.adb, 5asystem.ads, 5ataprop.adb, 5atpopsp.adb,
206         5avxwork.ads, 5bosinte.adb, 5bsystem.ads, 5esystem.ads,
207         5fsystem.ads, 5ftaprop.adb, 5ginterr.adb, 5gmastop.adb,
208         5gsystem.ads, 5gtaprop.adb, 5gtasinf.adb, 5gtasinf.ads,
209         5hparame.ads, 5hsystem.ads, 5htaprop.adb, 5htraceb.adb,
210         5itaprop.adb, 5ksystem.ads, 5kvxwork.ads, 5lintman.adb,
211         5lsystem.ads, 5mvxwork.ads, 5ninmaop.adb, 5nosinte.ads,
212         5ntaprop.adb, 5ointerr.adb, 5omastop.adb, 5oosinte.adb,
213         5osystem.ads, 5otaprop.adb, 5otaspri.ads, 5pvxwork.ads,
214         5qtaprop.adb, 5sintman.adb, 5ssystem.ads, 5staprop.adb,
215         5stpopse.adb, 5svxwork.ads, 5tosinte.ads, 5uintman.adb,
216         5vasthan.adb, 5vinmaop.adb, 5vinterr.adb, 5vintman.adb,
217         5vmastop.adb, 5vparame.ads, 5vsystem.ads, 5vtaprop.adb,
218         5vtpopde.adb, 5wmemory.adb, 5wsystem.ads, 5wtaprop.adb,
219         5ysystem.ads, 5zinterr.adb, 5zintman.adb, 5zosinte.adb,
220         5zosinte.ads, 5zsystem.ads, 5ztaprop.adb, 6vcpp.adb, 6vcstrea.adb,
221         7sintman.adb, 7staprop.adb, 7stpopsp.adb, 9drpc.adb,
222         Make-lang.in, Makefile.in, a-caldel.adb, a-comlin.ads,
223         a-dynpri.adb, a-except.adb, a-except.ads, a-finali.adb,
224         a-ncelfu.ads, a-reatim.adb, a-retide.adb, a-stream.ads,
225         a-ststio.adb, a-ststio.ads, a-stwifi.adb, a-tags.adb, a-tasatt.adb,
226         a-textio.adb, a-tideau.adb, a-tiflau.adb, a-tigeau.adb,
227         a-tigeau.ads, a-tiinau.adb, a-timoau.adb, a-witeio.adb,
228         a-wtdeau.adb, a-wtenau.adb, a-wtflau.adb, a-wtgeau.adb,
229         a-wtgeau.ads, a-wtinau.adb, a-wtmoau.adb, ada-tree.def, ada-tree.h,
230         adaint.c, adaint.h, ali-util.adb, ali.adb, ali.ads, atree.adb,
231         atree.ads, atree.h, back_end.adb, bcheck.adb, bindgen.adb,
232         bindusg.adb, checks.adb, comperr.adb, config-lang.in, csets.adb,
233         csets.ads, cstand.adb, cstreams.c, debug.adb, debug.ads, decl.c,
234         einfo.adb, einfo.ads, einfo.h, elists.h, errout.adb, errout.ads,
235         eval_fat.adb, exp_aggr.adb, exp_attr.adb, exp_ch11.adb,
236         exp_ch12.adb, exp_ch13.adb, exp_ch2.adb, exp_ch3.adb, exp_ch3.ads,
237         exp_ch4.adb, exp_ch5.adb, exp_ch6.adb, exp_ch7.adb, exp_ch7.ads,
238         exp_ch9.adb, exp_ch9.ads, exp_dbug.adb, exp_dbug.ads, exp_disp.ads,
239         exp_dist.adb, exp_fixd.adb, exp_intr.adb, exp_pakd.adb,
240         exp_prag.adb, exp_strm.adb, exp_util.adb, exp_util.ads,
241         expander.adb, expect.c, fe.h, fmap.adb, fmap.ads, fname-uf.adb,
242         freeze.adb, frontend.adb, g-awk.adb, g-cgideb.adb, g-comlin.adb,
243         g-comlin.ads, g-debpoo.adb, g-dirope.adb, g-dirope.ads,
244         g-dyntab.adb, g-expect.adb, g-expect.ads, g-io.ads, g-io_aux.adb,
245         g-io_aux.ads, g-locfil.adb, g-locfil.ads, g-os_lib.adb,
246         g-os_lib.ads, g-regexp.adb, g-regpat.adb, g-socket.adb,
247         g-socket.ads, g-spipat.adb, g-table.adb, g-trasym.adb,
248         g-trasym.ads, gigi.h, gmem.c, gnat1drv.adb, gnatbind.adb, gnatbl.c,
249         gnatchop.adb, gnatcmd.adb, gnatdll.adb, gnatfind.adb, gnatlbr.adb,
250         gnatlink.adb, gnatls.adb, gnatmem.adb, gnatprep.adb, gnatvsn.ads,
251         gnatxref.adb, hlo.adb, hostparm.ads, i-cobol.adb, i-cpp.adb,
252         i-cstrea.ads, i-cstrin.adb, i-pacdec.adb, i-vxwork.ads,
253         impunit.adb, init.c, inline.adb, io-aux.c, layout.adb, lib-load.adb,
254         lib-util.adb, lib-writ.adb, lib-writ.ads, lib-xref.adb,
255         lib-xref.ads, lib.adb, lib.ads, make.adb, makeusg.adb, mdll.adb,
256         memroot.adb, misc.c, mlib-tgt.adb, mlib-utl.adb, mlib-utl.ads,
257         mlib.adb, namet.adb, namet.ads, namet.h, nlists.h, nmake.adb,
258         nmake.ads, nmake.adt, opt.adb, opt.ads, osint.adb, osint.ads,
259         output.adb, output.ads, par-ch2.adb, par-ch3.adb, par-ch5.adb,
260         par-prag.adb, par-tchk.adb, par-util.adb, par.adb, prj-attr.adb,
261         prj-dect.adb, prj-env.adb, prj-env.ads, prj-nmsc.adb, prj-part.adb,
262         prj-proc.adb, prj-strt.adb, prj-tree.adb, prj-tree.ads, prj.adb,
263         prj.ads, raise.c, raise.h, repinfo.adb, restrict.adb, restrict.ads,
264         rident.ads, rtsfind.adb, rtsfind.ads, s-arit64.adb, s-asthan.adb,
265         s-atacco.adb, s-atacco.ads, s-auxdec.adb, s-crc32.adb, s-crc32.ads,
266         s-direio.adb, s-fatgen.adb, s-fileio.adb, s-finimp.adb,
267         s-gloloc.adb, s-gloloc.ads, s-interr.adb, s-mastop.adb,
268         s-mastop.ads, s-memory.adb, s-parame.ads, s-parint.adb,
269         s-pooglo.adb, s-pooloc.adb, s-rpc.adb, s-secsta.adb, s-sequio.adb,
270         s-shasto.adb, s-soflin.adb, s-soflin.ads, s-stache.adb,
271         s-taasde.adb, s-taasde.ads, s-tadeca.adb, s-tadeca.ads,
272         s-tadert.adb, s-tadert.ads, s-taenca.adb, s-taenca.ads,
273         s-taprob.adb, s-taprop.ads, s-tarest.adb, s-tasdeb.adb,
274         s-tasini.adb, s-tasini.ads, s-taskin.adb, s-taskin.ads,
275         s-tasque.adb, s-tasque.ads, s-tasren.adb, s-tasren.ads,
276         s-tassta.adb, s-tasuti.adb, s-tasuti.ads, s-tataat.adb,
277         s-tataat.ads, s-tpoben.adb, s-tpoben.ads, s-tpobop.adb,
278         s-tposen.adb, s-tposen.ads, s-traceb.adb, s-traceb.ads,
279         s-unstyp.ads, s-widenu.adb, scn-nlit.adb, scn.adb, sem.adb,
280         sem_aggr.adb, sem_attr.adb, sem_attr.ads, sem_case.adb,
281         sem_ch10.adb, sem_ch11.adb, sem_ch11.ads, sem_ch12.adb,
282         sem_ch13.adb, sem_ch13.ads, sem_ch2.adb, sem_ch3.adb, sem_ch3.ads,
283         sem_ch4.adb, sem_ch5.adb, sem_ch6.adb, sem_ch6.ads, sem_ch7.adb,
284         sem_ch8.adb, sem_ch8.ads, sem_ch9.adb, sem_disp.adb, sem_dist.adb,
285         sem_elab.adb, sem_elim.adb, sem_elim.ads, sem_eval.adb,
286         sem_intr.adb, sem_mech.adb, sem_prag.adb, sem_res.adb,
287         sem_type.adb, sem_util.adb, sem_util.ads, sem_vfpt.adb,
288         sem_warn.adb, sinfo.adb, sinfo.ads, sinfo.h, sinput-l.adb,
289         sinput-l.ads, sinput.adb, sinput.ads, snames.adb, snames.ads,
290         snames.h, sprint.adb, sprint.ads, stringt.adb, stringt.ads,
291         stringt.h, style.adb, switch.adb, switch.ads, sysdep.c, system.ads,
292         table.adb, targparm.adb, targparm.ads, targtyps.c, tbuild.adb,
293         tbuild.ads, tracebak.c, trans.c, tree_gen.adb, tree_io.adb,
294         treepr.adb, treepr.ads, treeprs.ads, treeprs.adt, ttypes.ads,
295         types.adb, types.ads, types.h, uintp.ads, urealp.ads, usage.adb,
296         utils.c, utils2.c, validsw.adb, xnmake.adb, xr_tabls.adb,
297         xr_tabls.ads, xref_lib.adb, xref_lib.ads : Merge in ACT changes.
299         * 1ssecsta.adb, 1ssecsta.ads, a-chlat9.ads, a-cwila9.ads,
300         g-enblsp.adb, g-md5.adb, g-md5.ads, gnatname.adb, gnatname.ads,
301         mkdir.c, osint-b.adb, osint-b.ads, osint-c.adb, osint-c.ads,
302         osint-l.adb, osint-l.ads, osint-m.adb, osint-m.ads : New files
304         * 3lsoccon.ads, 5qparame.ads, 5qvxwork.ads, 5smastop.adb,
305         5zparame.ads, gnatmain.adb, gnatmain.ads, gnatpsys.adb : Removed
307         * mdllfile.adb, mdllfile.ads, mdlltool.adb, mdlltool.ads : Renamed
308         to mdll-fil.ad[bs] and mdll-util.ad[bs]
310         * mdll-fil.adb, mdll-fil.ads, mdll-utl.adb, mdll-utl.ads : Renamed
311         from mdllfile.ad[bs] and mdlltool.ad[bs]
313 2002-03-03  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
315         * utils.c (init_gnat_to_gnu, init_gigi_decls): Use ARRAY_SIZE in
316         lieu of explicit sizeof/sizeof.
318 2002-02-28  Neil Booth  <neil@daikokuya.demon.co.uk>
320         * misc.c (copy_lang_decl): Remove.
322 2002-02-27  Zack Weinberg  <zack@codesourcery.com>
324         * misc.c: Delete traditional-mode-related code copied from the
325         C front end but not used, or used only to permit the compiler
326         to link.
328 2002-02-07  Richard Henderson  <rth@redhat.com>
330         * adaint.c (__gnat_to_gm_time): First arg is int, not time_t.
331         * adaint.h (__gnat_to_gm_time): Update prototype.
333 2002-01-30  Richard Henderson  <rth@redhat.com>
335         * trans.c (tree_transform) [N_Loop_Statement]: Use
336         expand_exit_loop_top_cond.
338 2001-12-23  Richard Henderson  <rth@redhat.com>
340         * utils.c (end_subprog_body): Push GC context around
341         rest_of_compilation for nested functions.
343 2001-12-23  Richard Henderson  <rth@redhat.com>
345         * 5nosinte.ads: Get definition of "int" from Interfaces.C.
347 2001-12-23  Florian Weimer  <fw@deneb.enyo.de>
349         * gnat-style.texi (Declarations and Types): Remove ancient style
350         rule which was mandated by code generation issues.
352         * gnat-style.texi (header): Add @dircategory, @direntry.
353         (title page): Remove date.
354         (general) Add @./@: where approriate, and two spaces after the
355         full stop at the end of a sentence.  Use @samp markup when
356         referring concrete lexical entities (keywords, attribute names
357         etc.), and @syntax for ARM grammar elements. Use @r for English
358         text in comments.  Use @emph for emphasis.  Change "if-statements"
359         etc. to "if statements" (without @samp). Break long lines.  Make
360         casing of section names consistent.
361         (Identifiers): Use @samp markup for variable names.
362         (Comments): Use @samp markup for comment characters. Line-end
363         comments may follow any Ada code, not just statements.  Fix
364         misspelling of "Integer" as "integer".
365         (Loop statements): Do not use variable name "I", use "J".
366         (Subprogram Declarations): Document alignment.
367         (Subprogram Bodies, Block statements): Document empty line before
368         "begin".
370 2001-12-22  Florian Weimer  <fw@deneb.enyo.de>
372         * make.adb (Add_Switch): Make Generic_Position a procedure.  The
373         function approach did not work well because of a side effect (the
374         function call could reallocate the table which was being indexed
375         using its result). Fixes ada/4851.
377 2001-12-19  Robert Dewar <dewar@gnat.com>
379         * bindgen.adb: Minor reformatting
381         * cstand.adb: Minor reformatting
383         * fmap.adb: Minor reformatting
384         Change name from Add for Add_To_File_Map (Add is much too generic)
385         Change Path_Name_Of to Mapped_Path_Name
386         Change File_Name_Of to Mapped_File_Name
387         Fix copyright dates in header
389         * fmap.ads:
390         Change name from Add for Add_To_File_Map (Add is much too generic)
391         Change Path_Name_Of to Mapped_Path_Name
392         Change File_Name_Of to Mapped_File_Name
393         Fix copyright dates in header
395         * fname-uf.adb: Minor reformatting.  New names of stuff in Fmap.
396         Add use clause for Fmap.
398         * make.adb: Minor reformatting
400         * osint.adb: Minor reformatting.  Change of names in Fmap.
401         Add use clause for Fmap.
403         * prj-env.adb: Minor reformatting
405         * prj-env.ads: Minor reformatting
407         * switch.adb: Minor reformatting.  Do proper raise of Bad_Switch if
408         error found (there were odd exceptions to this general rule in
409         -gnatec/-gnatem processing)
411 2001-12-19  Olivier Hainque <hainque@gnat.com>
413         * raise.c (__gnat_eh_personality): Exception handling personality
414         routine for Ada.  Still in rough state, inspired from the C++ version
415         and still containing a bunch of debugging artifacts.
416         (parse_lsda_header, get_ttype_entry): Local (static) helpers, also
417         inspired from the C++ library.
419         * raise.c (eh_personality): Add comments. Part of work for the GCC 3
420         exception handling integration.
422 2001-12-19  Arnaud Charlet <charlet@gnat.com>
424         * Makefile.in: Remove use of 5smastop.adb which is obsolete.
425         (HIE_SOURCES): Add s-secsta.ad{s,b}.
426         (HIE_OBJS): Add s-fat*.o
427         (RAVEN_SOURCES): Remove files that are no longer required. Add
428         interrupt handling files.
429         (RAVEN_MOD): Removed, no longer needed.
431 2001-12-19  Robert Dewar <dewar@gnat.com>
433         * a-ngelfu.adb: Remove ??? comment for inappropriate Inline_Always
434         Add 2001 to copyright date
436         * g-regpat.adb: Change pragma Inline_Always to Inline. There is no
437         need to force universal inlining for these cases.
439 2001-12-19  Arnaud Charlet <charlet@gnat.com>
441         * s-taprob.adb: Minor clean ups so that this unit can be used in
442         Ravenscar HI.
444         * exp_ch7.adb: Allow use of secondary stack in HI mode.
445         Disallow it when pragma Restrictions (No_Secondary_Stack) is specified.
447 2001-12-19  Vincent Celier <celier@gnat.com>
449         * prj-tree.ads (Project_Node_Record): Add comments for components
450         Pkg_Id and Case_Insensitive.
452 2001-12-19  Pascal Obry <obry@gnat.com>
454         * g-socket.adb: Minor reformatting. Found while reading code.
456 2001-12-19  Robert Dewar <dewar@gnat.com>
458         * prj-tree.ads: Minor reformatting
460 2001-12-20  Joseph S. Myers  <jsm28@cam.ac.uk>
462         * config-lang.in (diff_excludes): Remove.
464 2001-12-17  Ed Schonberg <schonber@gnat.com>
466         * sem_res.adb (Resolve_Selected_Component): do not generate a
467         discriminant check if the selected component is a component of
468         the argument of an initialization procedure.
470         * trans.c (tree_transform, case of arithmetic operators): If result
471         type is private, the gnu_type is the base type of the full view,
472         given that the full view itself may be a subtype.
474 2001-12-17  Robert Dewar <dewar@gnat.com>
476         * sem_res.adb: Minor reformatting
478         * trans.c (tree_transform, case N_Real_Literal): Add missing third
479         parameter in call to Machine (unknown horrible effects from this
480         omission).
482         * urealp.h: Add definition of Round_Even for call to Machine
483         Add third parameter for Machine
485 2001-12-17  Ed Schonberg <schonber@gnat.com>
487         * sem_warn.adb (Check_One_Unit): Suppress warnings completely on
488         predefined units in No_Run_Time mode.
490 2001-12-17  Richard Kenner <kenner@gnat.com>
492         * misc.c (insn-codes.h): Now include.
494 2001-12-17  Olivier Hainque <hainque@gnat.com>
496         * a-except.adb: Preparation work for future integration of the GCC 3
497         exception handling mechanism
498         (Notify_Handled_Exception, Notify_Unhandled_Exception): New routines
499         to factorize previous code sequences and make them externally callable,
500         e.g. for the Ada personality routine when the GCC 3 mechanism is used.
501         (Propagate_Exception, Raise_Current_Excep, Raise_From_Signal_Handler):
502         Use the new notification routines.
504 2001-12-17  Emmanuel Briot <briot@gnat.com>
506         * prj-tree.ads (First_Choice_Of): Document the when others case
508 2001-12-17  Arnaud Charlet <charlet@gnat.com>
510         * bindgen.adb (Gen_Ada_Init_*): Set priority of environment task in
511         HI-E mode, in order to support Ravenscar profile properly.
513         * cstand.adb (Create_Standard): Duration is a 32 bit type in HI-E
514         mode on 32 bits targets.
516 2001-12-17  Vincent Celier <celier@gnat.com>
518         * fmap.adb: Initial version.
520         * fmap.ads: Initial version.
522         * fname-uf.adb (Get_File_Name): Use mapping if unit name mapped.
523         If search is successfully done, add to mapping.
525         * frontend.adb: Initialize the mapping if a -gnatem switch was used.
527         * make.adb:
528         (Gnatmake): Add new local variable Mapping_File_Name.
529          Create mapping file when using project file(s).
530          Delete mapping file before exiting.
532         * opt.ads (Mapping_File_Name): New variable
534         * osint.adb (Find_File): Use path name found in mapping, if any.
536         * prj-env.adb (Create_Mapping_File): New procedure
538         * prj-env.ads (Create_Mapping_File): New procedure.
540         * switch.adb (Scan_Front_End_Switches): Add processing for -gnatem
541         (Mapping_File)
543         * usage.adb: Add entry for new switch -gnatem.
545         * Makefile.in: Add dependencies for fmap.o.
547 2001-12-17  Ed Schonberg <schonber@gnat.com>
549         * sem_ch10.adb (Analyze_With_Clause): Retrieve proper entity when unit
550         is a package instantiation rewritten as a package body.
551         (Install_Withed_Unit): Undo previous change, now redundant.
553 2001-12-17  Gary Dismukes <dismukes@gnat.com>
555         * layout.adb:
556         (Compute_Length): Move conversion to Unsigned to callers.
557         (Get_Max_Size): Convert Len expression to Unsigned after calls to
558         Compute_Length and Determine_Range.
559         (Layout_Array_Type): Convert Len expression to Unsigned after calls to
560         Compute_Length and Determine_Range.
561         Above changes fix problem with length computation for supernull arrays
562         where Max (Len, 0) wasn't getting applied due to the Unsigned
563         conversion used by Compute_Length.
565 2001-12-17  Arnaud Charlet <charlet@gnat.com>
567         * rtsfind.ads:
568         (OK_To_Use_In_No_Run_Time_Mode): Allow Ada.Exceptions and
569          System.Secondary_Stack.
570         (OK_To_Use_In_Ravenscar_Mode): New table needed to implement Ravenscar
571          in HI-E mode.
572         Remove unused entity RE_Exception_Data.
574         * rtsfind.adb (RTE): Allow Ravenscar Profile in HI mode.
576         * rident.ads (No_Secondary_Stack): New restriction.
578 2001-12-17  Joel Brobecker <brobecke@gnat.com>
580         * gnat_rm.texi: Fix minor typos. Found while reading the section
581         regarding "Bit_Order Clauses" that was sent to a customer.
582         Very interesting documentation!
584 2001-12-17  Robert Dewar <dewar@gnat.com>
586         * sem_case.adb (Choice_Image): Avoid creating improper character
587         literal names by using the routine Set_Character_Literal_Name. This
588         fixes bombs in certain error message cases.
590 2001-12-17  Arnaud Charlet <charlet@gnat.com>
592         * a-reatim.adb: Minor reformatting.
594 2001-12-17  Ed Schonberg <schonber@gnat.com>
596         * sem_ch12.adb (Validate_Derived_Type_Instance): Handle properly the
597         case where the formal is an extension of another formal in the current
598         unit or in a parent generic unit.
600 2001-12-17  Arnaud Charlet <charlet@gnat.com>
602         * s-tposen.adb: Update comments.  Minor reformatting.
603         Minor code clean up.
605         * s-tarest.adb: Update comments.  Minor code reorganization.
607 2001-12-17  Gary Dismukes <dismukes@gnat.com>
609         * exp_attr.adb (Attribute_Tag): Suppress expansion of <type_name>'Tag
610         when Java_VM.
612 2001-12-17  Robert Dewar <dewar@gnat.com>
614         * exp_attr.adb: Minor reformatting
616 2001-12-17  Ed Schonberg <schonber@gnat.com>
618         * sem_ch3.adb (Build_Derived_Private_Type): Refine check to handle
619         derivations nested within a child unit: verify that the parent
620         type is declared in an outer scope.
622 2001-12-17  Robert Dewar <dewar@gnat.com>
624         * sem_ch12.adb: Minor reformatting
626 2001-12-17  Ed Schonberg <schonber@gnat.com>
628         * sem_warn.adb (Check_One_Unit): In No_Run_Time mode, do not post
629         warning if current unit is a predefined one, from which bodies may
630         have been deleted.
632 2001-12-17  Robert Dewar <dewar@gnat.com>
634         * eval_fat.ads: Add comment that Round_Even is referenced in Ada code
635         Fix header format. Add 2001 to copyright date.
637         * exp_dbug.adb (Get_Encoded_Name): Fix out of bounds reference,
638         which caused CE during compilation if checks were enabled.
640 2001-12-17  Vincent Celier <celier@gnat.com>
642         * make.adb:
643         (Switches_Of): New function
644         (Test_If_Relative_Path): New procedure
645         (Add_Switches): Use new function Switches_Of
646         (Collect_Arguments_And_Compile): Use new function Switches_Of.
647         When using a project file, test if there are any relative
648         search path. Fail if there are any.
649         (Gnatmake): Only add switches for the primary directory when not using
650         a project file. When using a project file, change directory to the
651         object directory of the main project file. When using a project file,
652         test if there are any relative search path. Fail if there are any.
653         When using a project file, fail if specified executable is relative
654         path with directory information, and prepend executable, if not
655         specified as an absolute path, with the exec directory.  Make sure
656         that only one -o switch is transmitted to the linker.
658         * prj-attr.adb (Initialization_Data): Add project attribute Exec_Dir
660         * prj-nmsc.adb:
661         (Ada_Check): Get Spec_Suffix_Loc and Impl_Suffix_Loc,
662         when using a non standard naming scheme.
663         (Check_Ada_Naming_Scheme): Make sure that error messages
664         do not raise exceptions.
665         (Is_Illegal_Append): Return True if there is no dot in the suffix.
666         (Language_Independent_Check): Check the exec directory.
668         * prj.adb (Project_Empty): Add new component Exec_Directory
670         * prj.ads:
671         (Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Add defaults.
672         (Project_Data): Add component Exec_Directory
674         * snames.adb: Updated to match snames.ads revision 1.215
676         * snames.ads: Added Exec_Dir
678 2001-12-17  Robert Dewar <dewar@gnat.com>
680         * make.adb: Minor reformatting
682         * prj-nmsc.adb: Minor reformatting
684         * snames.adb: Updated to match snames.ads
686         * snames.ads: Alphebetize entries for project file
688 2001-12-17  Ed Schonberg <schonber@gnat.com>
690         * trans.c (process_freeze_entity): Do nothing if the entity is a
691         subprogram that was already elaborated.
693 2001-12-17  Richard Kenner <kenner@gnat.com>
695         * decl.c (gnat_to_gnu_entity, object): Do not back-annotate Alignment
696         and Esize if object is referenced via pointer.
698 2001-12-17  Ed Schonberg <schonber@gnat.com>
700         * sem_ch3.adb (Analyze_Variant_Part): check that type of discriminant
701         is discrete before analyzing choices.
703 2001-12-17  Joel Brobecker <brobecke@gnat.com>
705         * bindgen.adb (Gen_Output_File_Ada): Generate a new C-like string
706         containing the name of the Ada Main Program. This string is mainly
707         intended for the debugger.
708         (Gen_Output_File_C): Do the equivalent change when generating a C file.
710 2001-12-17  Robert Dewar <dewar@gnat.com>
712         * ali.adb: Set new Dummy_Entry field in dependency entry
714         * ali.ads: Add Dummy_Entry field to source dependency table
716         * bcheck.adb (Check_Consistency): Ignore dummy D lines
718         * lib-writ.adb (Writ_ALI): Write dummy D lines for missing source files
720         * lib-writ.ads: Document dummy D lines for missing files.
722         * types.ads: (Dummy_Time_Stamp): New value for non-existant files
724 2001-12-17  Robert Dewar <dewar@gnat.com>
726         * ali.adb: Type reference does not reset current file.
728         * ali.adb: Recognize and scan renaming reference
730         * ali.ads: Add spec for storing renaming references.
732         * lib-xref.ads: Add documentation for handling of renaming references
734         * lib-xref.adb: Implement output of renaming reference.
736         * checks.adb:
737         (Determine_Range): Document local variables
738         (Determine_Range): Make sure Hbound is initialized. It looks as though
739          there could be a real problem here with an uninitialized reference
740          to Hbound, but no actual example of failure has been found.
742 2001-12-17  Laurent Pautet <pautet@gnat.com>
744         * g-socket.ads:
745         Fix comment of Shutdown_Socket and Close_Socket. These functions
746         should not fail silently because if they are called twice, this
747         probably means that there is a race condition in the user program.
748         Anyway, this behaviour is consistent with the rest of this unit.
749         When an error occurs, an exception is raised with the error message
750         as exception message.
752 2001-12-17  Robert Dewar <dewar@gnat.com>
754         * frontend.adb: Move call to Check_Unused_Withs from Frontend, so
755         that it happens before modification of Sloc values for -gnatD.
757         * gnat1drv.adb: Move call to Check_Unused_Withs to Frontend,
758         so that it happens before modification of Sloc values for -gnatD.
760         * switch.adb: Minor reformatting
762 2001-12-15  Richard Henderson  <rth@redhat.com>
764         * sem_ch7.adb: Wrap comment.
766 2001-12-16  Joseph S. Myers  <jsm28@cam.ac.uk>
768         * 5ataprop.adb, 5atpopsp.adb, 5ftaprop.adb, 5gmastop.adb,
769         5gtaprop.adb, 5htaprop.adb, 5itaprop.adb, 5lintman.adb,
770         5omastop.adb, 5oosinte.adb, 5otaprop.adb, 5staprop.adb,
771         5vinterr.adb, 5vtaprop.adb, 5vtpopde.adb, 5wintman.adb,
772         5wtaprop.adb, 5zinterr.adb, 5ztaprop.adb, 6vcstrea.adb,
773         7sintman.adb, 7staprop.adb, 9drpc.adb, ChangeLog, Makefile.in,
774         a-except.adb, a-tags.ads, a-tasatt.adb, a-teioed.adb,
775         a-textio.ads, a-witeio.ads, a-wtedit.adb, ali.ads, comperr.adb,
776         cstand.adb, einfo.ads, errout.adb, exp_ch11.adb, exp_ch2.adb,
777         exp_ch3.adb, exp_ch4.adb, exp_ch5.adb, exp_ch6.adb, exp_ch9.adb,
778         exp_util.adb, exp_util.ads, fname-uf.adb, g-cgi.ads, g-exctra.ads,
779         g-expect.ads, g-regist.adb, g-spipat.adb, gnatchop.adb,
780         gnatlink.adb, gnatls.adb, gnatmain.adb, gnatmem.adb, init.c,
781         make.adb, make.ads, mdlltool.adb, nlists.ads, osint.ads,
782         par-ch3.adb, par-ch4.adb, par-ch5.adb, par-ch6.adb, par.adb,
783         repinfo.adb, s-fatflt.ads, s-fatlfl.ads, s-fatllf.ads,
784         s-fatsfl.ads, s-finimp.adb, s-finimp.ads, s-interr.adb,
785         s-secsta.ads, s-shasto.ads, s-stalib.adb, s-stalib.ads,
786         s-tarest.ads, s-tasdeb.adb, s-tassta.adb, s-tassta.ads,
787         s-vaflop.ads, scans.ads, scn.adb, sem.ads, sem_aggr.adb,
788         sem_attr.adb, sem_case.ads, sem_ch10.adb, sem_ch12.adb,
789         sem_ch13.adb, sem_ch3.adb, sem_ch3.ads, sem_ch5.adb, sem_ch7.adb,
790         sem_ch8.adb, sem_ch8.ads, sem_type.adb, sem_util.ads, sinfo.ads,
791         sprint.adb, tbuild.ads, types.ads, utils.c, xeinfo.adb: Fix
792         spelling errors.
794 2001-12-14  Vincent Celier <celier@gnat.com>
796         * osint.adb(Create_Debug_File): When an object file is specified,
797         put the .dg file in the same directory as the object file.
799 2001-12-14  Robert Dewar <dewar@gnat.com>
801         * osint.adb: Minor reformatting
803         * lib-xref.adb (Output_Instantiation): New procedure to generate
804         instantiation references.
806         * lib-xref.ads: Add documentation of handling of generic references.
808         * ali.adb (Read_Instantiation_Ref): New procedure to read
809         instantiation references
811         * ali.ads: Add spec for storing instantiation references
813         * bindusg.adb: Minor reformatting
815         * switch.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
817         * usage.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
819         * gnatcmd.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
821         * csets.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
823         * csets.ads:
824         Fix header format
825         Add 2001 to copyright date
826         Add entry for Latin-5 (Cyrillic ISO-8859-5)
828 2001-12-14  Matt Gingell <gingell@gnat.com>
830         * adaint.c: mktemp is a macro on Lynx and can not be used as an
831         expression.
833 2001-12-14  Richard Kenner <kenner@gnat.com>
835         * misc.c (gnat_expand_constant): Do not strip UNCHECKED_CONVERT_EXPR
836         if operand is CONSTRUCTOR.
838 2001-12-14  Ed Schonberg <schonber@gnat.com>
840         * trans.c (tree_transform, case N_Assignment_Statement): Set lineno
841         before emiting check on right-hand side, so that exception information
842         is correct.
844 2001-12-14  Richard Kenner <kenner@gnat.com>
846         * utils.c (create_var_decl): Throw away initializing expression
847         if just annotating types and non-constant.
849 2001-12-14  Vincent Celier <celier@gnat.com>
851         * prj-nmsc.adb: (Ada_Check): Migrate drom Ada_Default_... to
852         Default_Ada_...
854         * prj.adb: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
855         Remove functions.
856         (Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Move to spec.
858         * prj.ads: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
859         Remove functions.
860         (Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Move from body.
862 2001-12-16  Joseph S. Myers  <jsm28@cam.ac.uk>
864         * ChangeLog: Remove piece of diff output.
866 2001-12-14  Geert Bosch <bosch@gnat.com>
868         * config-lang.in: Update copyright notice
870         * layout.adb: Remove commented out code.
872         * mdllfile.ads: Update copyright notice. Fix header format.
874         * sem_case.ads: Likewise.
876         * sem_ch3.adb: Minor reformatting.
878 2001-12-12  Geert Bosch <bosch@gnat.com>
880         * freeze.ads: Update copyright date.
882         * g-comlin.ads: Minor reformatting.
884         * gnat-style.texi: Fix typo.
886 2001-12-12  Geert Bosch <bosch@gnat.com>
888         *  einfo.h: Regenerate.
890 2001-12-12  Ed Schonberg <schonber@gnat.com>
892         * sem_ch12.adb (Save_Entity_Descendant): Use syntactic field names
893         on known node types, rather than untyped fields. Further cleanups.
895 2001-12-12  Robert Dewar <dewar@gnat.com>
897         * sem_ch12.adb:
898         (Save_Entity_Descendant): Minor comment update.
899         (Copy_Generic_Node): Deal with incorrect reference to Associated_Node
900          of an N_Attribute_Reference node. As per note below, this does not
901         eliminate need for Associated_Node in attribute ref nodes.
902         (Associated_Node): Documentation explicitly mentions attribute
903         reference nodes, since this field is used in such nodes.
905         * sem_ch12.adb (Associated_Node): Minor documentation cleanup.
907 2001-12-12  Robert Dewar <dewar@gnat.com>
909         * s-stalib.adb: Add more comments on with statements being needed
911         * par-ch12.adb: Minor reformatting
913         * prj-dect.ads: Fix copyright header
915         * s-arit64.adb (Multiply_With_Ovflo_Check): Fix case where both
916         inputs fit in 32 bits, but the result still overflows.
918         * s-fatgen.ads: Minor comment improvement
920 2001-12-12  Ed Schonberg <schonber@gnat.com>
922         * sem_ch4.adb (Analyze_Selected_Component): If the prefix is of a
923         formal derived type, look for an inherited component from the full
924         view of the parent, if any.
926 2001-12-12  Robert Dewar <dewar@gnat.com>
928         * checks.ads (Apply_Alignment_Check): New procedure.
930         * exp_ch13.adb (Expand_N_Freeze_Entity): Generate dynamic check to
931         ensure that the alignment of objects with address clauses is
932         appropriate, and raise PE if not.
934         * exp_util.ads (Must_Be_Aligned): Removed, replaced by
935         Exp_Pakd.Known_Aligned_Enough
937         * mdllfile.ads: Minor reformatting
939         * mlib-fil.ads: Minor reformatting
941 2001-12-12  Ed Schonberg <schonber@gnat.com>
943         * exp_ch8.adb (Expand_N_Object_Renaming_Declaration): Extend previous
944         fix to any component reference if enclosing record has non-standard
945         representation.
947 2001-12-12  Vincent Celier <celier@gnat.com>
949         * g-dirope.ads (Find, Wildcard_Iterator): Moved to child package
950         Iteration
952 2001-12-12  Ed Schonberg <schonber@gnat.com>
954         * freeze.ads: Make Freeze_Fixed_Point_Type visible, for use in
955         sem_attr.
957 2001-12-12  Robert Dewar <dewar@gnat.com>
959         * impunit.adb: Add entry for GNAT.Directory_Operations.Iteration
961 2001-12-12  Emmanuel Briot <briot@gnat.com>
963         * g-regexp.adb: Remove all debug code, since it isn't required anymore,
964         and it adds dependencies to system.io.
966 2001-12-12  Pascal Obry <obry@gnat.com>
968         * g-dirope.adb (Expand_Path.Var): Correctly detect end of
969         variable name.
971 2001-12-11  Ed Schonberg <schonber@gnat.com>
973         * sem_ch10.adb (Install_Withed_Unit): If the unit is a generic instance
974         that is the parent of other generics, the instance body replaces the
975         instance node.  Retrieve the instance of the spec, which is the one
976         that is visible in clients and within the body.
978 2001-12-11  Vincent Celier <celier@gnat.com>
980         * gnatmain.adb: Initial version.
982         * gnatmain.ads: Initial version.
984         * prj-attr.adb (Initialisation_Data): Add package Gnatstub.
986         * snames.adb: Updated to match snames.ads.
988         * snames.ads: Added Gnatstub.
990 2001-12-11  Vincent Celier <celier@gnat.com>
992         * prj-attr.adb (Initialization_Data): Change name from
993         Initialisation_Data.
995 2001-12-11  Emmanuel Briot <briot@gnat.com>
997         * g-regpat.adb (Parse_Literal): Properly handle simple operators ?,
998         + and * applied to backslashed expressions like \r.
1000 2001-12-11  Vasiliy Fofanov <fofanov@gnat.com>
1002         * g-os_lib.ads: String_List type added, Argument_List type is now
1003         subtype of String_List.
1005 2001-12-11  Robert Dewar <dewar@gnat.com>
1007         * g-os_lib.ads: Change copyright to FSF
1008         Add comments for String_List type
1010 2001-12-11  Vincent Celier <celier@gnat.com>
1012         * g-dirope.adb (Expand_Path): Fix bug. (wrong length when adding a
1013         string to the buffer).
1015 2001-12-11  Ed Schonberg <schonber@gnat.com>
1017         * freeze.adb: Make Freeze_Fixed_Point_Type visible, for use in
1018         sem_attr.
1020         * sem_attr.adb: Simplify previous fix for Address.
1021         (Set_Bounds): If prefix is a non-frozen fixed-point type, freeze now,
1022         to avoid anomalies where the bound of the type appears to raise
1023         constraint error.
1025 2001-12-11  Robert Dewar <dewar@gnat.com>
1027         * lib-xref.adb (Output_Refs): Make sure pointers are always properly
1028         handled.
1030 2001-12-11  Ed Schonberg <schonber@gnat.com>
1032         * sem_ch12.adb (Analyze_Subprogram_Instantiation): Check for a
1033         renamed unit before checking for recursive instantiations.
1035 2001-12-11  Emmanuel Briot <briot@gnat.com>
1037         * prj.ads: Add comments for some of the fields.
1039 2001-12-11  Robert Dewar <dewar@gnat.com>
1041         * lib-xref.adb (Output_Refs): Don't output type references outside
1042         the main unit if they are not otherwise referenced.
1044 2001-12-11  Ed Schonberg <schonber@gnat.com>
1046         * sem_attr.adb (Analyze_attribute, case Address and Size): Simplify
1047         code and diagnose additional illegal uses
1049         * sem_util.adb (Is_Object_Reference): An indexed component is an
1050         object only if the prefix is.
1052 2001-12-11  Vincent Celier <celier@gnat.com>
1054         * g-diopit.adb: Initial version.
1056         * g-diopit.ads: Initial version.
1058         * g-dirope.adb:
1059         (Expand_Path): Avoid use of Unbounded_String
1060         (Find, Wildcard_Iterator): Moved to child package Iteration
1062         * Makefile.in: Added g-diopit.o to GNATRTL_NONTASKING_OBJS
1064 2001-12-11  Robert Dewar <dewar@gnat.com>
1066         * sem_attr.adb: Minor reformatting
1068 2001-12-11  Ed Schonberg <schonber@gnat.com>
1070         * sem_ch3.adb: Clarify some ???.
1072 2001-12-11  Robert Dewar <dewar@gnat.com>
1074         * exp_util.adb (Must_Be_Aligned): Removed, replaced by
1075         Exp_Pakd.Known_Aligned_Enough
1077         * sem_ch13.adb (Check_Address_Alignment): Removed, extended
1078         version is moved to Exp_Ch13.
1080 2001-12-11  Robert Dewar <dewar@gnat.com>
1082         * einfo.ads: Minor reformatting
1084         * exp_ch5.adb: Add comment for previous.change
1086         * ali.adb: New interface for extended typeref stuff.
1088         * ali.ads: New interface for typeref stuff.
1090         * checks.adb (Apply_Alignment_Check): New procedure.
1092         * debug.adb: Add -gnatdM for modified ALI output
1094         * exp_pakd.adb (Known_Aligned_Enough): Replaces Known_Aligned_Enough.
1096         * lib-xref.adb: Extend generation of <..> notation to cover
1097         subtype/object types. Note that this is a complete rewrite,
1098         getting rid of the very nasty quadratic algorithm previously
1099         used for derived type output.
1101         * lib-xref.ads: Extend description of <..> notation to cover
1102         subtype/object types. Uses {..} for these other cases.
1103         Also use (..) for pointer types.
1105         * sem_util.adb (Check_Potentially_Blocking_Operation): Slight cleanup.
1107         * exp_pakd.adb: Minor reformatting.  Note that prevous RH should say:
1108         (Known_Aligned_Enough): Replaces Must_Be_Aligned.
1110 2001-12-11  Vincent Celier <celier@gnat.com>
1112         * gnatcmd.adb:
1113         Changed /COMPILE_ONLY to /ACTIONS=COMPILE
1114         Changed /BIND_ONLY to /ACTIONS=BIND
1115         Changed /LINK_ONLY to /ACTIONS=LINK
1117 2001-12-11  Ed Schonberg  <schonber@gnat.com>
1119         * sem_ch8.adb (Find_Selected_Component): improved search for a
1120         candidate package in case of error.
1122         * sem_ch12.adb (Inline_Instance_Body): place head of use_clause
1123         chain back on scope stack before reinstalling use clauses.
1125         * exp_ch5.adb (Expand_N_If_Statement): if Constant_Condition_Warnings
1126         is enabled, do not kill the code for the condition, to preserve
1127         warning.
1129 2001-12-11  Robert Dewar <dewar@gnat.com>
1131         * checks.adb (Insert_Valid_Check): Apply validity check to expression
1132         of conversion, not to result of conversion.
1134 2001-12-11  Ed Schonberg <schonber@gnat.com>
1136         * sem_ch3.adb (Build_Derived_Record_Type): set Controlled flag
1137         before freezing parent. If the declarations are mutually recursive,
1138         an access to the current record type may be frozen before the
1139         derivation is complete.
1141 2001-12-05  Vincent Celier <celier@gnat.com>
1143         * gnatcmd.adb: (MAKE): Add new translations: -b /BIND_ONLY,
1144         -c /COMPILE_ONLY, -l /LINK_ONLY
1146         * opt.ads:
1147         (Bind_Only): New Flag
1148         (Link_Only): New flag
1150         * switch.adb (Scan_Make_Switches): Add processing for -b (Bind_Only)
1151         and -l (Link_Only)
1153         * makeusg.adb: Add new switches -b and -l. Update Copyright notice.
1155         * make.adb:
1156         (Do_Compile_Step, Do_Bind_Step, Do_Link_Step): New flags.
1157         (Gnatmake): Set the step flags. Only perform a step if the
1158         corresponding step flag is True.
1159         (Scan_Make_Arg): Reset the bind and link step flags when -u
1160         or -gnatc has been specified.
1162 2001-12-05  Ed Schonberg <schonber@gnat.com>
1164         * sem_eval.adb (Eval_Concatenation): If left operand is a null string,
1165         get bounds from right operand.
1167         * sem_eval.adb: Minor reformatting
1169         * exp_util.adb (Make_Literal_Range): use bound of literal rather
1170         than Index'First, its lower bound may be different from 1.
1172         * exp_util.adb: Undo earlier change, fixes ACVC regressions C48009B
1173         and C48009J
1175 2001-12-05  Vincent Celier <celier@gnat.com>
1177         * prj-nmsc.adb Minor reformatting
1179         * prj-nmsc.adb (Language_Independent_Check): Reset Library flag if
1180         set and libraries are not supported.
1182 2001-12-05  Ed Schonberg <schonber@gnat.com>
1184         * sem_ch3.adb (Build_Derived_Private_Type): set Public status of
1185         private view explicitly, so the back-end can treat as a global
1186         when appropriate.
1188 2001-12-05  Ed Schonberg <schonber@gnat.com>
1190         * sem_ch12.adb (Instantiate_Package_Body): if instance is a compilation
1191          unit, always replace instance node with new body, for ASIS use.
1193 2001-12-05  Vincent Celier <celier@gnat.com>
1195         * prj-nmsc.adb (Language_Independent_Check): Issue a warning if
1196         libraries are not supported and both attributes Library_Name and
1197         Library_Dir are specified.
1199         * prj-proc.adb (Expression): Set location of Result to location of
1200         first term.
1202         * Makefile.in: Add mlib.o, mlib-fil.o, mlib-tgt and mlib-utl to GNATLS.
1203         (prj-nmsc is now importing MLib.Tgt)
1205         * prj-proc.adb: Put the change indicated above that was forgotten.
1207 2001-12-05  Robert Dewar <dewar@gnat.com>
1209         * Makefile.in: Add dependencies for System.IO for GNAT.Regexp
1211 2001-12-05  Ed Schonberg <schonber@gnat.com>
1213         * sem_ch3.adb (Build_Derived_Concurrent_Type): If derivation imposes a
1214         constraint, introduce explicit subtype declaration and derive from it.
1216         * sem_ch3.adb: Minor reformatting
1218 2001-12-05  Robert Dewar <dewar@gnat.com>
1220         * checks.adb (Determine_Range): Increase cache size for checks.
1221         Minor reformatting
1223         * exp_ch6.adb: Minor reformatting
1224         (Expand_N_Subprogram_Body): Reset Is_Pure for any subprogram that has
1225         a parameter whose root type is System.Address, since treating such
1226         subprograms as pure in the code generator is almost surely a mistake
1227         that will lead to unexpected results.
1229         * exp_util.adb (Remove_Side_Effects): Clean up old ??? comment and
1230         change handling of conversions.
1232         * g-regexp.adb: Use System.IO instead of Ada.Text_IO.
1234 2001-12-05  Ed Schonberg <schonber@gnat.com>
1236         * sem_ch3.adb (Analyze_Object_Declaration): If expression is an
1237         aggregate with static wrong size, attach generated Raise node to
1238         declaration.
1240 2001-12-05  Robert Dewar <dewar@gnat.com>
1242         * sem_attr.adb (Analyze_Attribute): Defend against bad Val attribute.
1243         Fixes compilation abandoned bomb in B24009B.
1245 2001-12-05  Ed Schonberg <schonber@gnat.com>
1247         * sem_ch12.adb:
1248         Document use of Associated_Node on Selected_Components.
1249         (Save_Global_Operand_Descendants): Change to Save_Entity_Descendants,
1250         to clarify use of untyped descendant fields.
1252 2001-12-05  Robert Dewar <dewar@gnat.com>
1254         * prj-dect.ads: Add ??? comment
1255         Add 2001 to copyright notice (was not done in after all)
1257         * prj-part.adb: Minor reformatting. Reword one awkward error message.
1259         * prj.ads: Minor reformatting throughout, and add some ??? comments
1261         * snames.ads: Minor reformatting
1263 2001-12-05  Geert Bosch <bosch@gnat.com>
1265         * snames.adb: Autoupdate
1267 2001-12-05  Vincent Celier <celier@gnat.com>
1269         * prj-dect.adb (Parse): Rename parameter Modifying to Extends.
1271         * prj-dect.ads (Parse): Rename parameter Modifying to Extends.
1273         * prj-env.adb: Minor comment changes (modifying -> extends).
1275         * prj-nmsc.adb: Minor comment changes (modifying -> extends).
1277         * prj-part.adb (Parse_Single_Project): Change Tok_Modifying to
1278         Tok_Extends.
1280         * prj.adb (Initialize): Change Modifying to Extends.
1282         * scans.ads (Token_Type): Change Tok_Modifying to Tok_Extends.
1284         * prj.ads: Minor comment change (Modifying -> extending).
1286         * snames.ads: Change modifying to extends.
1288 2001-12-05  Robert Dewar <dewar@gnat.com>
1290         * sem_warn.adb: Remove stuff for conditionals, we are not going to
1291         do this after all.
1293         * sem_warn.ads: Remove stuff for conditionals, we are not going to
1294         do this after all.  Add 2001 to copyright notice
1296 2001-12-04  Geert Bosch <bosch@gnat.com>
1298         *  einfo.h, sinfo.h, treeprs.ads: Regenerate.
1300 2001-12-04  Robert Dewar <dewar@gnat.com>
1302         * errout.adb (Error_Msg): Ignore attempt to put error msg at junk
1303         location if we already have errors. Stops some cases of cascaded
1304         errors.
1306         * errout.adb: Improve comment.
1308 2001-12-04  Robert Dewar <dewar@gnat.com>
1310         * sem_ch12.adb:
1311         (Analyze_Formal_Type_Definition): Defend against Error.
1312         (Analyze_Formal_Subprogram): Defend against Error.
1314         * par-ch12.adb (F_Formal_Type_Declaration): In case of error,
1315         remove following semicolon if present. Removes cascaded error.
1317 2001-12-04  Douglas B. Rupp <rupp@gnat.com>
1319         * bindgen.adb:
1320         (Gen_Exception_Table_Ada): Write "begin" and then return if Num
1321          exceptions equals 0.
1322         (Gen_Exception_Table_C): Return if Num exceptions equals 0.
1323         Fixes PIWG E tests (which have to be run with -gnatL).
1325 2001-12-04  Robert Dewar <dewar@gnat.com>
1327         * einfo.ads: Minor reformatting
1329 2001-12-04  Ed Schonberg <schonber@gnat.com>
1331         * einfo.ads: Block_Node points to the identifier of the block, not to
1332         the block node itself, to preserve the link when the block is
1333         rewritten, e.g. within an if-statement with a static condition.
1335         * inline.adb (Cleanup_Scopes): recover block statement from block
1336         entity using new meaning of Block_Node.
1338         * sem_ch5.adb (Analyze_Block_Statement): set Block_Node to point to
1339         identifier of block node, rather than to node itself.
1341 2001-12-04  Gary Dismukes <dismukes@gnat.com>
1343         * layout.adb:
1344         (Get_Max_Size): Fix "start of processing" comment to say Get_Max_Size.
1345         (Discrimify): Go back to setting the Etypes of the selected component
1346         because the Vname component does not exist at this point and will
1347         fail name resolution. Also set Analyzed.
1348         Remove with and use of Sem_Res.
1350 2001-12-04  Arnaud Charlet <charlet@gnat.com>
1352         * Makefile.in: (HIE_SOURCES): add s-fat*.
1354 2001-12-04  Robert Dewar <dewar@gnat.com>
1356         * sem_attr.adb:
1357         (Compile_Time_Known_Attribute): New procedure.
1358         (Eval_Attribute, case Size): Use Compile_Time_Known_Attribute to ensure
1359          proper range check.
1361 2001-12-04  Ed Schonberg <schonber@gnat.com>
1363         * sem_ch7.adb (New_Private_Type): Set Is_Tagged_Type flag before
1364         processing discriminants to diagnose illegal default values.
1366 2001-12-04  Ed Schonberg <schonber@gnat.com>
1368         * sem_attr.adb (Resolve_Attribute): Handle properly an non-classwide
1369         access discriminant within a type extension that constrains its
1370         parent discriminants.
1372 2001-12-04  Ed Schonberg <schonber@gnat.com>
1374         * sem_ch3.adb (Find_Type_Of_Subtype_Indic): If subtype indication
1375         is malformed, use instance of Any_Id to allow analysis to proceed.
1377         * par-ch12.adb (P_Formal_Type_Declaration): Propagate Error if
1378         type definition is illegal.
1379         (P_Formal_Derived_Type_Definition): Better recovery when TAGGED is
1380         misplaced.
1382 2001-12-04  Ed Schonberg <schonber@gnat.com>
1384         * sem_warn.adb (Output_Unreferenced_Messages): Extend previous fix to
1385         constants.
1387 2001-12-04  Robert Dewar <dewar@gnat.com>
1389         * errout.adb: Minor reformatting
1391 2001-12-04  Robert Dewar <dewar@gnat.com>
1393         * exp_util.adb: Minor reformatting from last change
1395         * errout.adb (Check_For_Warning): For a Raised_Constraint_Error node
1396         which is a rewriting of an expression, traverse the original
1397         expression to remove warnings that may have been posted on it.
1399 2001-12-04  Ed Schonberg <schonber@gnat.com>
1401         * exp_util.adb (Must_Be_Aligned): Return false for a component of a
1402         record that has other packed components.
1404 2001-12-04  Douglass B. Rupp <rupp@gnat.com>
1406         * adaint.c: Minor cleanups.
1408 2001-12-04  Douglass B. Rupp <rupp@gnat.com>
1410         * adaint.c: Do not use utime.h on vxworks.
1412 2001-12-04  Arnaud Charlet <charlet@gnat.com>
1414         * Makefile.adalib: Clarify step 3 (use of gnat.adc) as it causes
1415         more confusion than it solves.
1417 2001-12-04  Geert bosch <bosch@gnat.com>
1419         * einfo.h, nmake.adb, nmake.ads, sinfo.h treeprs.ads: Regenerate.
1421 2001-12-04  Geert Bosch  <bosch@gnat.com>
1423         * Makefile.in (update-sources): New target.
1424         For use by gcc_release script.
1426 2001-12-04  Ed Schonberg <schonber@gnat.com>
1428         * sem_prag.adb (Analyze_Pragma, case Validity_Checks): do not treat as
1429         a configuration pragma, it is now legal wherever a pragma can appear.
1431 2001-12-04  Zack Weinberg  <zack@codesourcery.com>
1433         * Makefile.in: Don't set ALL.  Delete @cross_defines@,
1434         @cross_overrides@, @build_overrides@ stanzas.  INTERNAL_CFLAGS
1435         is now @CROSS@ -DIN_GCC; update comment.
1437 2001-12-04  Robert Dewar <dewar@gnat.com>
1439         * einfo.adb (Has_Pragma_Pure_Function): New flag.
1440         Fix problem that stopped ceinfo from working
1442         * einfo.ads (Has_Pragma_Pure_Function): New flag.
1444         * sem_prag.adb (Pure_Function): Set new flag Has_Pragma_Pure_Function.
1446 2001-12-04  Douglas B. Rupp <rupp@gnat.com>
1448         * gnatchop.adb:
1449         (File_Time_Stamp): New procedure.
1450         (Preserve_Mode): New boolean.
1451         (Write_Unit): Pass time stamp.
1452         Implement -p switch (preserve time stamps).
1454         * gnatcmd.adb (CHOP): Add translation for -p (/PRESERVE).
1456         * gnatchop.adb: Do usage info for -p switch
1458         * adaint.h (__gnat_set_file_time_name): New function
1460         * adaint.c (__gnat_set_file_time_name): Implement
1462         * adaint.h: Fix typo
1464 2001-12-03  Robert Dewar <dewar@gnat.com>
1466         * sinfo.ads: Minor reformatting. N_Freeze_Entity node does not
1467         have Associated_Node.
1469 2001-12-03  Robert Dewar <dewar@gnat.com>
1471         * prj-proc.adb: Minor reformatting
1473         * make.adb: Minor reformatting
1475 2001-12-03  Geert Bosch <bosch@gnat.com>
1477         * make.adb: Minor reformatting.
1479 2001-12-03 Robert Dewar  <dewar@gnat.com>
1481         * sem_ch12.adb: Minor reformatting
1483 2001-12-03  Ed Schonberg <schonber@gnat.com>
1485         * sem_ch12.adb (Inline_Instance_Body): Use Save_Scope_Stack and
1486         push Standard on the stack before analyzing the instance body,
1487         in order to have a clean visibility environment.
1489         * sem_ch12.adb (Inline_Instance_Body): Remove redundant code.
1491 2001-12-03  Ed Schonberg <schonber@gnat.com>
1493         * sem_ch12.adb (Instantiate_Package_Body): Protect against double
1494         instantiation of a body that contains an inlined body.
1496 2001-12-03  Ed Schonberg <schonber@gnat.com>
1498         * sem_ch12.adb:
1499         (Analyze_generic_subprogram_Declaration): Set outer_generic_scope,
1500         to prevent freezing within formal packages.
1501         (Freeze_Subprogram_Body): If body comes from another instance that
1502         appeared before its own body, place freeze node at end of current
1503         declarative part, to prevent a back-end crash.
1504         (Inline_Instance_Body): Handle properly a package instance within
1505         a subprogram instance that is a child unit.
1507 2001-12-01  Graham Stott  <grahams@redhat.com>
1509         * Makefile.in (misc.o): Add missing $(srcdir) prefix
1510         and add optabs.h dependency.
1512         * misc.c: Include optabs.h
1513         (gnat_tree_code_type): Make static and const.
1514         (gnat_tree_code_length): Likewise.
1515         (gnat_tree_code_name): Likewise.
1516         (update_setjmp_buf): Obtain operands mode from insn_data.
1518 2001-11-29  Richard Henderson  <rth@redhat.com>
1520         * init.c: Remove obsolete dwarf2 frame.h section.
1522 2001-11-29  Joseph S. Myers  <jsm28@cam.ac.uk>
1524         * Make-lang.in (ada.generated-manpages): New dummy target.
1526 2001-11-29  Ed Schonberg <schonber@gnat.com>
1528         * g-os_lib.adb (Add_To_Command): use explicit loop to move string
1529         into Command, an array conversion is illegal here. Uncovered by
1530         ACATS B460005.
1532 2001/11/28  Geert Bosch <bosch@gnat.com>
1534         * init.c: Minor whitespace changes.
1536 2001-11-28  Doug Rupp <rupp@gnat.com>
1538         * init.c: (__gnat_install_handler,VMS): Increase size of alternate
1539         signal stack.
1541 2001-11-28  Zack Weinberg  <zack@codesourcery.com>
1543         * misc.c (gnat_expand_constant): Move declaration above
1544         definition of lang_hooks.
1545         (LANG_HOOKS_EXPAND_CONSTANT): Set to gnat_expand_constant.
1546         (gnat_init): lang_expand_constant no longer exists.
1548         (internal_error_function): Remove #ifdef HAVE_VPRINTF.  We
1549         always have vprintf.
1550         (gnat_init): Always call set_internal_error_function.
1552 2001-11-27  Andreas Jaeger  <aj@suse.de>
1554         * Makefile.in (stamp-tool_src_dir): Use symbolic link.
1556 2001-11-27  Laurent Guerby  <guerby@acm.org>
1558         * Makefile.in: Regenerate Ada dependencies.
1560 2001-11-26  Richard Henderson  <rth@redhat.com>
1562         * Make-lang.in (gnatbind, gnatmake, gnatbl, gnatchop, gnatcmd,
1563         gnatlink, gnatkr, gnatls, gnatmem, gnatprep, gnatpsta, gnatpsys,
1564         gnatxref, gnatfind, gnatlbr): Depend on CONFIG_H and prefix.o.
1566 2001-11-25  Laurent Guerby  <guerby@acm.org>
1568         * sysdep.c (rts_get_*): Fix style.
1570 2001-11-19  Laurent Guerby  <guerby@acm.org>
1572         * Makefile.in (INCLUDES_FOR_SUBDIR): Remove redundant system include
1573         since it is of no apparent use and cause warnings.
1575 2001-11-18  Neil Booth  <neil@daikokuya.demon.co.uk>
1577         * misc.c (gnat_decode_option, gnat_init_options): Make definitions
1578         static too.
1579         (gnat_init): Don't return NULL.
1580         (finish_parse): Remove.
1582 2001-11-17  Laurent Guerby  <guerby@acm.org>
1584         * Make-lang.in (GNATLIBFLAGS): Add -W -Wall.
1585         * gigi.h (init_decl_processing): Rename to gnat_init_decl_processing.
1586         * io-aux.c: Provide K&R prototypes to all functions, reformat code.
1587         * lang-spec.h: Add missing struct field to silence warnings.
1588         * sysdep.c (rts_get_*): Provide K&R prototype.
1589         * sysdep.c (Unlock_Task, Lock_Task): Move to K&R prototype.
1590         * traceback.c (Unlock_Task, Lock_Task): Likewise.
1591         * tracebak.c (__gnat_backtrace): Remove unused variable.
1592         * utils.c (end_subprog_body): Move to K&R style.
1594 Thu Nov 15 18:16:17 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1596         * trans.c, utils2.c: Remove PALIGN parameter to get_inner_reference.
1598 2001-11-15  Neil Booth  <neil@daikokuya.demon.co.uk>
1600         * misc.c (gnat_init): Change prototype.  Include the
1601         functionality of the old init_parse and init_decl_processing.
1602         (gnat_init_decl_processing): New prototype.
1603         (init_parse): Remove.
1604         * utils.c (init_decl_processing): Rename gnat_init_decl_processing.
1606 2001-11-09  Neil Booth  <neil@daikokuya.demon.co.uk>
1608         * misc.c (gnat_print_decl, gnat_print_type): Renamed.
1609         (LANG_HOOKS_PRINT_DECL, LANG_HOOKS_PRINT_TYPE): Override.
1610         (print_lang_statistics, lang_print_xnode, print_lang_identifier,
1611         set_yydebug): Remove.
1613 2001-11-09  Neil Booth  <neil@daikokuya.demon.co.uk>
1615         * misc.c (LANG_HOOKS_NAME, LANG_HOOKS_IDENTIFIER_SIZE): Override.
1616         (struct lang_hooks): Constify.
1617         (language_string, lang_identify): Remove.
1618         * utils.c (init_decl_processing): Update.
1620 2001-11-06  Neil Booth  <neil@cat.daikokuya.demon.co.uk>
1622         * misc.c: Include langhooks-def.h.
1623         * Makefile.in: Update.
1625 2001-10-30  Robert Dewar <dewar@gnat.com>
1627         * style.adb:
1628         (Check_Identifier): Rewrite circuit to be compatible with use of letters
1629         in the upper half of ASCII.
1630         (Check_Identifier): Minor reformatting
1632 2001-10-30  Geert Bosch <bosch@gnat.com>
1634         * (Associated_Node, Set_Associated_Node): Do not check for
1635         Freeze_Entity.
1637 2001-10-30  Robert Dewar <dewar@gnat.com>
1639         * a-reatim.ads: Minor reformatting
1641 2001-10-30  Robert Dewar <dewar@gnat.com>
1643         * gnatdll.adb: Minor reformatting throughout. Many ??? added for
1644         undocumented declarations.
1646 2001-10-30  Pascal Obry <obry@gnat.com>
1648         * gnatdll.adb (Parse_Command_Line): handle -g option to be passed
1649         to the binder and linker.
1650         Minor style fix.
1652         * mdll.ads: Fix layout.  Update copyright notice.
1654         * mdll.adb: Fix layout.  Update copyright notice.
1656 2001-10-30  Robert Dewar <dewar@gnat.com>
1658         * usage.adb: Minor fix to output for -gnaty.
1660 2001-10-30  Ed Schonberg <schonber@gnat.com>
1662         * a-reatim.ads: Makes Seconds_Count into a 64-bit integer,
1663         to accommodate all its possible values.
1665         * a-reatim.adb (Split): Special-case handling of Time_Span_First
1666         and of small absolute values of T.
1668 2001-10-30  Richard Kenner <kenner@gnat.com>
1670         * misc.c (gnat_expand_expr, case NULL_EXPR): Remove call to
1671         set_mem_attributes since not needed and wrong if RESULT if a REG;
1672         fixes ACATS failures.
1674 2001-10-30  Geert Bosch <bosch@gnat.com>
1676         * 86numaux.adb, a-tigeau.ads, a-wtgeau.ads, fname-sf.ads, g-traceb.ads,
1677         s-tasdeb.ads, sem_maps.ads: Add 2001 to copyright notice.
1679 2001-10-30  Robert Dewar <dewar@gnat.com>
1681         * bindusg.adb: Undocument -f switch.
1683         * gnatcmd.adb: Remove /FULL_ELABORATION.
1685         * opt.ads (Force_RM_Elaboration_Order): Document that this is
1686         obsolescent.
1688         * gnatbind.adb: Output new warning for use of obsolescent -f switch.
1690         * gnatbind.adb: Minor update of warning msg.
1692 2001-10-30  Vincent Celier <celier@gnat.com>
1694         * gnatcmd.adb (MAKE, BIND, LINK, LIST, FIND, XREF): Add translations
1695         for project file switches (-P (/PROJECT_FILE=),
1696          -X (/EXTERNAL_REFERENCE=) and -vPx (/PROJECT_FILE_VERBOSITY=DEFAULT
1697         or MEDIUM or HIGH)
1699 2001-10-30  Geert Bosch <bosch@gnat.com>
1701         * decl.c: Minor whitespace fixes.
1703 2001-10-30  Richard Kenner <kenner@gnat.com>
1705         * utils2.c (build_allocator): Test for SIZE overflow in array case too
1707 2001-10-30  Geert Bosch <bosch@gnat.com>
1709         * ali-util.adb (Initialize_Checksum): Use out-mode instead of in out.
1710         Found due to GCC 3.0 warning of using uninitialized value.
1712         * layout.adb:
1713         (Get_Max_Size): Use variant record for tracking value/expression.
1714          Makes logic clearer and prevents warnings for uninitialized variables.
1715         (Layout_Array_Type): Use variant record for tracking value/expression.
1716          Makes logic clearer and prevents warnings for uninitialized variables.
1718 2001-10-30  Robert Dewar <dewar@gnat.com>
1720         * lib.adb: Minor reformatting
1722         * s-taprop.ads: Minor reformatting
1724 2001-10-29  Laurent Guerby  <guerby@acm.org>
1726         * init.c:
1727         (Raise_From_Signal_Handler, Propagate_Signal_Exception): Make arg
1728         const.
1729         (_gnat_error_handler): Make MSG const.
1731 2001-10-29  Richard Kenner <kenner@gnat.com>
1733         * sysdep.c: Fix localtime_r problem on LynxOS.
1734         Also remove #elif to avoid warnings.
1736         * misc.c (yyparse): Don't set up and register jmpbuf; remove decls
1737         used by this.
1739         * decl.c (annotate_value): Make SIZE unsigned to avoid warning.
1741 2001-10-28  Joseph S. Myers  <jsm28@cam.ac.uk>
1743         * 86numaux.adb, a-tigeau.ads, a-wtgeau.ads, decl.c, exp_ch6.adb,
1744         exp_ch9.adb, exp_util.adb, fname-sf.ads, freeze.ads, g-awk.adb,
1745         g-comlin.ads, g-dirope.adb, g-dyntab.ads, g-socket.ads,
1746         g-table.ads, g-traceb.ads, gnat-style.texi, gnatchop.adb, init.c,
1747         layout.adb, layout.ads, mdllfile.ads, mlib-fil.ads, osint.ads,
1748         s-fatgen.adb, s-imgrea.adb, s-taprop.ads, s-tasdeb.ads,
1749         sem_aggr.adb, sem_attr.adb, sem_case.ads, sem_ch13.adb,
1750         sem_ch3.adb, sem_elab.adb, sem_maps.ads, sem_res.adb,
1751         sem_util.ads, sinfo.ads, sinput.ads, table.adb, table.ads,
1752         types.ads, urealp.adb: Fix spelling errors.
1754 2001-10-27  Laurent Guerby <guerby@acm.org>
1756         * trans.c (gigi): Fix non determinism leading to bootstrap
1757         comparison failures for debugging information.
1759 2001-10-26  Florian Weimer  <fw@deneb.enyo.de>
1761         * gnat_rm.texi: Use @./@: where appropriate.
1763 2001-10-26  Robert Dewar <dewar@gnat.com>
1765         * sinfo.adb: Define Associated_Node to overlap Entity field. Cleanup.
1767 2001-10-26  Richard Kenner <kenner@gnat.com>
1769         * gmem.c (__gnat_gmem_read_next): Properly check for EOF
1771 2001-10-26  Richard Kenner <kenner@gnat.com>
1773         * decl.c (validate_size): Modify message for bad size to avoid
1774         implication that compiler is modifying the size.
1776 2001-10-26  Robert Dewar <dewar@gnat.com>
1778         * prj-util.adb: Minor reformatting. Fix bad header format.
1780 2001-10-26  Robert Dewar <dewar@gnat.com>
1782         * sinfo.ads: Define Associated_Node to overlap Entity field. Cleanup.
1784         * sinfo.ads: Clarify use of Associated_Node (documentation only).
1786         * sem_ch12.adb: Change Node4 to Associated_Node. Change
1787         Associated_Node to Get_Associated_Node. Put use of Unchecked_Access
1788         much more narrowly in places where needed. These are cleanups.
1790 2001-10-26  Joel Brobecker <brobecke@gnat.com>
1792         * 5zosinte.ads (null_pthread): new constant.
1794         * 5ztaprop.adb:
1795         (Initialize_TCB): Initialize thread ID to null, to be able to verify
1796          later that this field has been set.
1797         (Finalize_TCB): ditto.
1798         (Suspend_Task): Verify that the thread ID is not null before using it.
1799         (Resume_Task): ditto.
1801         * s-tasdeb.adb:
1802         (Resume_All_Tasks): Lock the tasks list before using it.
1803         (Suspend_All_Tasks): ditto.
1805 2001-10-26  Richard Kenner <kenner@gnat.com>
1807         * decl.c (gnat_to_gnu_entity, case E_General_Access_Type):
1808         Make constant variant of designated type for Is_Access_Constant.
1809         Call update_pointer_to with main variant.
1811         * trans.c (process_freeze_entity, process_type):
1812         Call update_pointer_to on main variant.
1814         * utils.c (update_pointer_to): Make corresponding variant for NEW_TYPE.
1815         If main variant, update all other variants.
1817         * utils2.c (build_unary_op, case INDIRECT_REF): No longer set
1818         TREE_STATIC.
1820 2001-10-26  Robert Dewar <dewar@gnat.com>
1822         * prj-util.adb: Minor reformatting
1824 2001-10-26  Robert Dewar <dewar@gnat.com>
1826         * prj-util.adb: Minor reformatting
1828 2001-10-26  Robert Dewar <dewar@gnat.com>
1830         * prj-attr.adb: Minor reformatting throughout
1832 2001-10-26  Robert Dewar <dewar@gnat.com>
1834         * prj-attr.ads: Minor reformatting
1835         Add ??? comment (this whole spec has almost no comments)
1837 2001-10-26  Vincent Celier <celier@gnat.com>
1839         * g-os_lib.adb (Normalize_Pathname): Preserve the double slash
1840         ("//") that precede the drive letter on Interix.
1842 2001-10-26  Geert Bosch <bosch@gnat.com>
1844         * gnat_rm.texi: Add GNAT Reference Manual.
1846 2001-10-25  Robert Dewar <dewar@gnat.com>
1848         * sem_ch8.adb (Analyze_Package_Renaming): Skip analysis if Name
1849         is Error. Similar change for other renaming cases.
1851 2001-10-25  Robert Dewar <dewar@gnat.com>
1853         * s-atacco.ads: Add pragma Inline_Always for functions.
1854         Fix header format. Add copyright 2001
1856 2001-10-25  Ed Schonberg <schonber@gnat.com>
1858         * par-ch3.adb (P_Subtype_Mark_Resync): for an anonymous array
1859         return Error rather than Empty so that analysis can proceed.
1861 2001-10-25  Ed Schonberg <schonber@gnat.com>
1863         * sem_util.adb (Enter_Name): better handling of cascaded error
1864         messages when a unit appears in its own context.
1866 2001-10-25  Ed Schonberg <schonber@gnat.com>
1868         * sem_util.adb (Defining_Entity): in case of error, attach created
1869         entity to specification, so that semantic analysis can proceed.
1871 2001-10-25  Robert Dewar <dewar@gnat.com>
1873         * sem_util.adb
1874         (Defining_Entity): Deal with Error.
1875         (Process_End_Label): Deal with bad end label for.
1877 2001-10-25  Ed Schonberg <schonber@gnat.com>
1879         * sem_elab.adb (Check_A_Call): refine message when call is in an
1880         instance but callee is not declared in the generic unit.
1882 2001-10-25  Ed Schonberg <schonber@gnat.com>
1884         * sem_elab.adb (Check_A_Call): check for renaming before finding the
1885         enclosing unit, which may already be different from the calling unit.
1887 2001-10-25  Geert Bosch <bosch@gnat.com>
1889         * 4gintnam.ads: fix header format.
1891 2001-10-25  Ed Schonberg <schonber@gnat.com>
1893         * sem_res.adb (Resolve_Call): if the call is actually an indexing
1894         operation on the result of a parameterless call, perform elaboration
1895         check after the node has been properly rewritten.
1897         * sem_ch12.adb (Copy_Generic_Node): after the proper body has been
1898         inlined within the generic tree, the defining identifier is not a
1899         compilation_unit.
1901 2001-10-25  Ed Schonberg <schonber@gnat.com>
1903         * sem_res.adb (Resolve): special-case resolution of Null in an
1904          instance or an inlined body to avoid view conflicts.
1906         * sem_ch12.adb (Copy_Generic_Node): for allocators, check for view
1907          compatibility by retrieving the access type of the generic copy.
1909 2001-10-25  Robert Dewar <dewar@gnat.com>
1911         * sem_ch3.adb:
1912         (Analyze_Number_Declaration): Handle error expression.
1913         (Signed_Integer_Type_Declaration): Handle error bound.
1914         (Analyze_Subtype_Indication): Handle error range.
1916         * sem_util.adb (Get_Index_Bounds): Check for Error.
1918 2001-10-25  Robert Dewar <dewar@gnat.com>
1920         * restrict.adb (Set_No_Run_Time_Mode): Set Discard_Names as default
1921         in no run time mode.
1923 2001-10-25  Pascal Obry <obry@gnat.com>
1925         * gnatmem.adb (Read_Next): fix Curs2 value to properly handle quiet
1926         mode case for ALLOC case.
1928         * gnatmem.adb (Read_Next): correctly fix parsing in Quiet mode on
1929         all platforms. Improvement of last change.
1931 2001-10-25  Robert Dewar <dewar@gnat.com>
1933         * exp_ch4.adb (Expand_N_Allocator): Minor reformatting.
1935 2001-10-25  Geert Bosch  <bosch@gnat.com>
1937         * osint.adb (Is_Relative): Remove duplicate.
1939 2001-10-25  Pascal Obry <obry@gnat.com>
1941         * osint.adb (Read_Default_Search_Dirs): correctly detect relative
1942         pathnames in UNIX and DOS style with drive letter.
1943         (Is_Relative): new routine.
1945         * osint.adb: Minor reformatting
1947         * osint.adb (Is_Relative): implementation using
1948         GNAT.OS_Lib.Is_Absolute_Path. Better fix.
1950 2001-10-25  Pascal Obry <obry@gnat.com>
1952         * g-dirope.adb (Basename): correctly compute offset between the
1953         original Path and the translated one.
1955         * g-dirope.adb: (Base_Name): add some comments.
1957 2001-10-25  Robert Dewar <dewar@gnat.com>
1959         * exp_imgv.adb (Expand_Image_Attribute): Defend against bad use
1960         in HIE mode, avoids compilation abandoned message
1962         * exp_imgv.adb: Correct typo in previous change
1964         * exp_imgv.adb: Correct typo in previous change (not my day!)
1966 2001-10-25  Robert Dewar <dewar@gnat.com>
1968         * s-tpinop.ads: Add 2001 to copyright notice. Fix header format.
1970 2001-10-25  Pascal Obry <obry@gnat.com>
1972         * g-awk.ads: Move all pragma inlines next to the routine
1973          declarations. This is more uniform with other GNAT spec.
1975 2001-10-22  Geert Bosch  <bosch@gnat.com>
1977         * Make-lang.in (gnattools, cross-gnattools): Remove gnatmem.
1979 2001-10-19  Geert Bosch  <bosch@gnat.com>
1981         * Makefile.in (tools, gnattools): Remove gnatmem.
1983 2001-10-17  Richard Henderson  <rth@redhat.com>
1985         * Makefile.in (misc.o): Depend on langhooks.h.
1986         * misc.c: Include it.
1987         (LANG_HOOKS_INIT, LANG_HOOKS_INIT_OPTIONS): New.
1988         (LANG_HOOKS_DECODE_OPTION): New.
1989         (lang_hooks): Use LANG_HOOKS_INITIALIZER.
1991 2001-10-16  Florian Weimer  <fw@deneb.enyo.de>
1993         * trans.c (tree_transform): Adjust to recent change in
1994         expand_asm_operands to implement named asm operands.
1996 2001-10-11  Ed Schonberg  <schonber@gnat.com>
1998         * exp_ch8.adb (Expand_N_Object_Renaming_Declaration): Bugfix in
1999         renaming of discriminant for mutable record type.
2001 2001-10-11  Robert Dewar  <dewar@gnat.com>
2003         * validsw.adb: Properly save -gnatVn status.
2005 2001-10-11  Robert Dewar <dewar@gnat.com>
2007         * usage.adb: Add lines for V switch.
2009         * gnatcmd.adb (COMPILE): Revise translations for -gnatV
2010         (/VALIDITY_CHECKING).
2012 2001-10-11  Ed Schonberg <schonber@gnat.com>
2014         * sem_type.adb (Add_One_Interp): an operator for a type declared in
2015         an extension of System is known to be visible.
2017 2001-10-11  Ed Schonberg <schonber@gnat.com>
2019         * sem_eval.adb (Compare_Fixup): get the bounds of a String_Literal
2020         properly. Fixes regression on ACATS C34005G.
2022 2001-10-11  Robert Dewar <dewar@gnat.com>
2024         * sem_ch5.adb (Analyze_Iteration_Scheme): Suppress warning on null
2025         loop in generic instance, since this is likely not very useful.
2027 2001-10-11  Robert Dewar <dewar@gnat.com>
2029         * restrict.adb (Disallow in No_Run_Time_Mode): Properly specialize
2030         the error message for high integrity mode.
2032         * rtsfind.adb (RTE): Give message if we try to find an entity that
2033         is not available in high integrity mode.
2035         * rtsfind.ads:
2036         (OK_To_Use_In_HIE_Mode): New array.
2037         (RTE): May return Empty in high integrity mode.
2039         * rtsfind.ads (OK_To_Use_In_No_Run_Time_Mode): New name for
2040         OK_To_Use_In_HIE_Mode, now includes System_FAT_xxx.
2042         * sem_ch6.adb (Analyze_Subprogram_Body): Kill body in predefined
2043         unit if not inlined always and in no runtime mode. Fixes problem
2044         caused by new Rtsfind changes.
2046         * sem_ch6.adb (Analyze_Subrogram_Body): Do not Check_References if
2047         body is deleted.
2049         * rtsfind.adb (RTE): Make sure we do not try to load unit after
2050         giving message for entity not available in high integrity mode.
2052 2001-10-11  Pascal Obry <obry@gnat.com>
2054         * impunit.adb: Add GNAT.CRC32.
2056 2001-10-11  Ed Schonberg <schonber@gnat.com>
2058         * exp_fixd.adb (Expand_Multiply_Fixed_By_Fixed_Giving_Fixed): handle
2059         properly the case where one universal operand in a non-static
2060         exponentiation of a real literal.
2062 2001-10-11  Ed Schonberg <schonber@gnat.com>
2064         * exp_ch7.adb (Find_Final_List): for a type appearing in a with_type
2065         clause, return the gobal finalization list, for lack of anthing else.
2067 2001-10-11  Ed Schonberg <schonber@gnat.com>
2069         * exp_ch7.adb (Make_Transient_Block): if statement is within
2070         exception handler, always use new transient scope to place Clean
2071         procedure.
2073 2001-10-11  Pascal Obry <obry@gnat.com>
2075         * Makefile.in:
2076         (GNAT_ADA_OBJS): add g-crc32.o, a-tags.o, a-stream.o
2077         (GNATBIND_OBJS): add g-crc32.o, a-tags.o, a-stream.o
2078         (GNATLS_RTL_OBJS): add g-crc32.o
2079         (GNATMAKE_RTL_OBJS): add g-crc32.o
2081         * ali-util.adb:
2082         (CRC_Match): new function.
2083         (Get_File_Checksum): renamed Get_File_CRC. Use the GNAT.CRC32 unit
2084         instead of the previous simple checksum algorithm.
2085         (Time_Stamp_Mismatch): use CRC_Match for comparison.
2086         (Set_Source_Table): idem.
2088         * ali-util.ads:
2089         (Get_File_Checksum): renamed Get_File_CRC as now we compute CRC
2090         instead of simple checksum.
2091         (CRC_Match): new function.
2092         (CRC_Error): new constant.
2094         * ali.adb (Scan_ALI): rename variable Chk to CRC as we are handling
2095         a CRC now and not a simple checksum. A CRC uses lower-case hex
2096         letters, fixes ambiguity in parsing.
2098         * ali.ads (Sdep_Record.Checksum): renamed Sdep_Record.CRC as this
2099         is what this variable will store.
2101         * bcheck.adb: Change reference to chechsum in comments by CRC.
2102         (Check_Consistency): Rename Get_File_Checksum to Get_File_CRC.
2103         rename All_Checksum_Match to All_CRC_Match. Change due to API
2104         renaming since now GNAT does not use a simple checksum but a
2105         CRC using GNAT.CRC32.
2107         * gnatls.adb: Rename Checksum to CRC in many places, we use a CRC
2108         now and not anymore a simple checksum.
2110         * lib-load.adb: Use Source_CRC instead of Source_Checksum in many
2111         places.
2113         * lib-writ.adb (Write_ALI): Use Source_CRC instead of Source_Checksum.
2115         * scans.adb:
2116         (Restore_Scan_State): rename Checksum to CRC.
2117         (Save_Scan_State): idem.
2119         * scans.ads:
2120         With GNAT.CRC32.
2121         (Checksum): rename to CRC.
2122         (Saved_Scan_State): Save_Checksum field renamed to Save_CRC
2124         * scn-nlit.adb: Rename many Accumulate_Checksum to Update (from
2125         GNAT.CRC32).  Update copyright notice.
2127         * scn-slit.adb: Rename many Accumulate_Checksum to Update (from
2128         GNAT.CRC32).  Update copyright notice.
2130         * scn.adb:
2131         (Accumulate_Checksum): removed.
2132         (Update): new procedure. Add a wide-character into the CRC.
2134         * sinput-l.adb:
2135         (Complete_Source_File_Entry): use CRC32 instead of simple checksum.
2136         (Load_File): fix initialization of S (change Source_Checksum to
2137         Source_CRC)
2139         * sinput-p.adb (Load_Project_File): rename Source_Checksum to
2140         Source_CRC in S initialization.
2142         * sinput.adb (Source_Checksum): renamed to Source_CRC.
2144         * sinput.ads (Source_Checksum): renamed to Source_CRC.
2145         Update comments for the CRC.
2147         * types.adb (Hex): Use lowercase for the letter part.
2149         * types.ads (Get_Hex_String): Returns the hexadecimal representation
2150         for a word. This is currently used only for CRC. In previous version,
2151         the checksum was using a representation with all letter being
2152         upper-case. With the new implementation (using CRC) we do not remove
2153         the 32th bit of the CRC, so we can have an upper-case starting letter
2154         in the CRC. This is not possible to parse in Scan_ALI (ali.adb).
2155         It is ambigous since the CRC was optional and could be followed by
2156         options like EB, EE. So now this routines uses lower-case letter for
2157         the hexadecimal representation. Strange enough only lower case letters
2158         where checked in Scan_ALI (even if this was not a possible case).
2160         * gnatvsn.ads (Library_Version): changed to 3.15a.
2162         * s-crc32.ads: Initial version from GNAT.CRC32. This is the version
2163         for the compiler.
2165         * s-crc32.adb: Initial version from GNAT.CRC32. This is the version
2166         for the compiler.
2168         * ali-util.adb: Redo previous change to avoid using word CRC everywhere
2169         Add 2001 to copyright notice
2170         (Accumulate_Checksum): Modify to use System.CRC32.
2172         * ali-util.ads: Redo changes of previous revision to continue to use
2173         the word Checksum. Add 2001 to copyright notice.
2175         * ali.adb: Undo some of previous changes, not needed.
2176         Keep the change for lower case letters in the checksum.
2178         * ali.ads: Undo previous change not needed.
2180         * bcheck.adb: Undo most of previous change, not needed.
2181         But do use Checksums_Match for checksum comparison.
2183         * gnatls.adb: Undo most of previous change, not needed.
2184         But do use Checksums_Match for comparing checksums.
2186         * lib-load.adb: Undo previous change, not needed.
2188         * lib-writ.adb: Undo previous change, not needed.
2190         * lib-writ.ads: Document that checksums use lower case,
2191         not upper case letters.
2193         * scans.adb: Undo previous change, not needed
2195         * scans.ads: Undo previous change, not needed.
2197         * scn-nlit.adb: Undo previous changes, not needed.
2199         * scn-slit.adb: Undo previous change, not needed.  Fix header format.
2201         * scn.adb:
2202         (Accumulate_Checksum): Use System.CRC32.
2203         (Initialize_Checksum): New procedure.
2204         Remove other changes of previous revision.
2206         * sinput-p.adb: Undo previous change, not needed.
2208         * sinput.adb: Undo previous change, not needed.
2210         * sinput-l.adb: Undo previous change, not needed.
2212         * sinput.ads: Undo previous change, not needed.  Keep only comment
2213         on new checksum algorithm
2215         * Makefile.in: Add s-crc32 as needed, remove g-crc32.
2216         Also remove a-tags and a-stream from GNAT sources.
2218         * ali.adb (Scan_ALI): fix typo introduce in latest check-in.
2220         * Makefile.in (GNATRTL_NONTASKING_OBJS): Add g-crc32.o.
2222 2001-10-11  Geert Bosch  <bosch@gnat.com>
2224         * einfo.h: Regenerate.
2226         * nmake.ads: Regenerate.
2228         * nmake.adb: Regenerate.
2230         * sinfo.h: Regenerate.
2232         * treeprs.adb: Regenerate.
2234 2001-10-10  Geert Bosch  <bosch@gnat.com>
2236         * gnat-style.texi: New file describing coding guidelines for Ada.
2238 2001-10-10  Ed Schonberg <schonber@gnat.com>
2240         * einfo.adb (Write_Entity_Flags): Elaboration_Entity_Required
2241         is Flag174.
2243 2001-10-10  Geert Bosch  <bosch@gnat.com>
2245         * snames.ads: Add new names for project facility.
2247         * snames.adb: Update to reflect snames.ads changes.
2249         * snames.h: Update to reflect snames.ads changes.
2251 2001-10-10  Vincent Celier <celier@gnat.com>
2253         * make.adb:
2254         (Add_Switches): reflect the changes for the switches attributes
2255         Default_Switches indexed by the programming language,
2256         Switches indexed by the file name.
2257         (Collect_Arguments_And_Compile): Idem.
2258         Reflect the attribute name changes.
2260         * prj-attr.adb:
2261         (Initialisation_Data): Change the names of some packages and
2262         attributes.
2263         (Initialize): process case insensitive associative arrays.
2265         * prj-attr.ads:
2266         (Attribute_Kind): Remove Both, add Case_Insensitive_Associative_Array.
2268         * prj-dect.adb:
2269         (Parse_Attribute_Declaration): For case insensitive associative
2270          arrays, set the index string to lower case.
2272         * prj-env.adb:
2273         Reflect the changes of the project attributes.
2275         * prj-nmsc.adb:
2276         Replace Check_Naming_Scheme by Ada_Check and
2277         Language_Independent_Check.
2279         * prj-nmsc.ads:
2280         Replaced Check_Naming_Scheme by 2 procedures:
2281         Ada_Check and Language_Independent_Check.
2283         * prj-proc.adb:
2284         (Process_Declarative_Items): For case-insensitive associative
2285         arrays, set the index string to lower case.
2286         (Recursive_Check): Call Prj.Nmsc.Ada_Check, instead of
2287         Prj.Nmsc.Check_Naming_Scheme.
2289         * prj-tree.adb:
2290         (Case_Insensitive): New function
2291         (Set_Case_Insensitive): New procedure
2293         * prj-tree.ads:
2294         (Case_Insensitive): New function
2295         (Set_Case_Insensitive): New procedure
2296         (Project_Node_Record): New flag Case_Insensitive.
2298         * prj-util.adb:
2299         (Value_Of): new function to get the string value of a single
2300         string variable or attribute.
2302         * prj-util.ads:
2303         (Value_Of): new function to get the string value of a single
2304         string variable or attribute.
2306         * prj.adb:
2307         (Ada_Default_Spec_Suffix): New function
2308         (Ada_Default_Impl_Suffix): New function
2309         Change definitions of several constants to reflect
2310         new components of record types.
2312         * prj.ads:
2313         (Naming_Data): Change several components to reflect new
2314         elements of naming schemes.
2315         (Project_Data): New flags Sources_Present and
2316         Language_Independent_Checked.
2317         (Ada_Default_Spec_Suffix): New function.
2318         (Ada_Default_Impl_Suffix): New function.
2320         * snames.ads:
2321         Modification of predefined names for project manager: added
2322         Implementation, Specification_Exceptions, Implementation_Exceptions,
2323         Specification_Suffix, Implementation_Suffix, Separate_Suffix,
2324         Default_Switches, _Languages, Builder, Cross_Reference,
2325         Finder. Removed Body_Part, Specification_Append, Body_Append,
2326         Separate_Append, Gnatmake, Gnatxref, Gnatfind, Gnatbind,
2327         Gnatlink.
2329         * prj.ads: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
2330         Add comments.
2332         * prj-nmsc.adb (Ada_Check): Test that Separate_Suffix is defaulted,
2333         not that it is Nil_Variable_Value.
2335         * prj.ads: Add ??? for uncommented declarations
2337 2001-10-10  Ed Schonberg <schonber@gnat.com>
2339         * sem_prag.adb: (Analyze_Pragma, case External): If entity is a
2340         constant, do not indicate possible modification, so that gigi can
2341         treat it as a bona fide constant.
2343 2001-10-10  Robert Dewar <dewar@gnat.com>
2345         * sem_prag.adb: Add processing for pragma External.
2347         * snames.ads: Add entry for pragma External.
2349         * par-prag.adb: Add pragma External.
2351         * snames.adb: Updated to match snames.ads.
2353 2001-10-10  Ed Schonberg <schonber@gnat.com>
2355         * exp_ch4.adb (Expand_N_Allocator): Generate meaningful names for
2356         a dynamic task if the allocator appears in an indexed assignment
2357         or selected component assignment.
2359         * exp_util.adb (Build_Task_Array_Image, Build_Task_Record_Image):
2360         For a dynamic task in an assignment statement, use target of
2361         assignment to generate meaningful name.
2363 2001-10-10  Ed Schonberg <schonber@gnat.com>
2365         * einfo.adb (Write_Field19_Name): Body_Entity is also defined for
2366         a generic package.
2368         * einfo.ads: Body_Entity is also defined for generic package.
2369         Documentation change only
2371         * exp_aggr.adb (Build_Array_Aggr_Code): When expanding an
2372         others_choice for a discriminated component initialization,
2373         convert discriminant references into the corresponding discriminals.
2375         * exp_ch3.adb (Get_Simple_Init_Val): Add qualification to aggregate
2376         only if original type is private and expression has to be wrapped
2377         in a conversion.
2379         * checks.adb:
2380         (Apply_Constraint_Check): Do not perform length check
2381         if expression is an aggregate with only an others_choice.
2382         (Length_N_Cond): two references to the same in_parameter
2383         (typically the discriminal in an init_proc) denote the same value.
2384         Two useful optimization uncovered by bugfixes above.
2386 2001-10-10  Robert Dewar <dewar@gnat.com>
2388         * xeinfo.adb: Change int to char in translation of enumeration types.
2389         This fixes a problem in the C representation of component alignment.
2390         Add 2001 to copyright notice
2392 2001-10-10  Richard Kenner <kenner@gnat.com>
2394         * decl.c: (validate_size): Do check size of object of integral type
2395         if it is a packed array type.
2397 2001-10-10  Richard Kenner <kenner@gnat.com>
2399         * decl.c: (gnat_to_gnu_entity, case object): Also materialize
2400         VAR_DECL for constant if not Is_Public but -O0.
2402 2001-10-10  Richard Kenner  <kenner@gnat.com>
2404         * misc.c (struct lang_hooks): Add new initializer to match GCC change.
2406 2001-10-10  Geert Bosch  <bosch@gnat.com>
2408         * xnmake.adb (XNmake): Fix handling of -s/-b options.  No longer
2409         use '/' as switch character, allowing for absolute file names.
2411 2001-10-09  Joseph S. Myers  <jsm28@cam.ac.uk>
2413         * 4gintnam.ads, Make-lang.in, Makefile.in, config-lang.in: Update
2414         FSF address.
2416 2001-10-08  Geert Bosch  <bosch@gnat.com>
2418         * Makefile.in (treeprs.ads, einfo.h, sinfo.h, nmake.adb, nmake.ads):
2419         Automatically build utilities when files need to be regenerated.
2421 2001-10-08  Geert Bosch  <bosch@gnat.com>
2423         * xsnames.adb: New utility for updating snames.ads and snames.adb
2425 2001-10-08  Zack Weinberg  <zack@codesourcery.com>
2427         * Make-lang.in (ADAFLAGS): Add -W -Wall.
2428         (ADA_FLAGS_TO_PASS): Set ADA_CFLAGS=$(CFLAGS) also.
2429         (gnat1): Also depend on attribs.o.
2430         (gnatlib, gnatlib-shared): Set CC and ADAC in recursive make.
2431         * Makefile.in (X_ADAFLAGS, T_ADAFLAGS): New.
2432         (ADAC): Set to @ADAC@ in stage1, $(CC) later.
2433         (ADAFLAGS): Add -W -Wall.
2434         (ALL_ADAFLAGS, MOST_ADAFLAGS): Add X_ADAFLAGS and T_ADAFLAGS;
2435         take out CFLAGS.
2437         (.adb.o, .ads.o, a-numaux.o, a-teioed.o, s-interr.o,
2438         s-taskin.o, sdefault.o, s-tasdeb.o, s-vaflop.o, a-except.o,
2439         s-assert.o, s-stalib.o, s-memory.o, memtrack.o, mlib-tgt.o):
2440         Use $(ADAC), not $(CC), as compilation command.
2442         (gnattools): Depend directly on tools to build, don't use
2443         recursive make.
2444         (gnatlib): Set ADA_CFLAGS=$(GNATLIBCFLAGS) in recursive make.
2446         * einfo.h, sinfo.h: New files (autogenerated).
2448 2001-10-08  Richard Henderson  <rth@redhat.com>
2450         * comperr.adb (Abort_In_Progress): New.
2451         (Compiler_Abort): Use it to prevent recursion.
2453 2001-10-08  Robert Dewar <dewar@gnat.com>
2455         * atree.adb: Set Error_Posted in Error node, helps error recovery.
2457         * par-endh.adb (Output_End_Expected): We should also not test
2458         Error_Posted on the Error node, since now it is always set.
2460         * cstand.adb (Create_Standard): Set Etype of Error to Any_Type
2461         to help error recovery. Part of general work on 9407-004.
2463         * par.adb: Add ??? for misuse of error
2465         * sem_res.adb:
2466         (Resolve): Defend against Error, fixes 9407-003.
2467         (Resolve_Discrete_Subtype_Indication): Defend against Error.
2469         * sinfo.ads (N_Error): Now has Etype field (which will be set
2470         to Any_Type to help error recovery).
2472 2001-10-08  Richard Kenner (kenner@gnat.com)
2474         * misc.c (gnat_expand_expr, case UNCHECKED_CONVERT_EXPR):
2475         Consistently set MEM attributes from expression; fixes
2476         bootstrap failure on x86.
2478 2001-10-08  Geert Bosch  (bosch@gnat.com)
2480         * 5oosinte.adb: Add 2001 to copyright notice.
2482 2001-10-08  Geert Bosch  (bosch@gnat.com)
2484         * ceinfo.adb: Add utility for consistency checking of einfo.ad[bs].
2486         * csinfo.adb: Add utility for consistency checking of sinfo.ad[bs].
2488 2001-10-07  Joseph S. Myers  <jsm28@cam.ac.uk>
2490         * 5oosinte.adb: Fix spelling error of "separate" as "seperate".
2492 2001-10-05  Geert Bosch  (bosch@gnat.com)
2494         * adaint.h: Small formatting fix.
2496 2001-10-04  Geert Bosch  <bosch@gnat.com>
2498         * sysdep.c (__gnat_set_binary_mode, __gnat_set_text_mode):
2499         Arg is int, not FILE *, in dummy version of functions.
2501         * adaint.h (__gnat_set_binary_mode, __gnat_set_text_mode):
2502         Arg is int, not FILE *.
2504 2001-10-04  Geert Bosch  <bosch@gnat.com>
2506         * 3lsoccon.ads: Added file, missed with initial check ins.
2508         * 4lintnam.ads: Fix header format.
2509         Change Linux to GNU/Linux.
2511         * 5iosinte.adb: Change Linux to GNU/Linux.
2513         * 5iosinte.ads: Change Linux to GNU/Linux.
2515         * 5itaprop.adb: Change Linux to GNU/Linux.
2517         * 5itaspri.ads: Change Linux to GNU/Linux.
2518         Update copyright notice.
2520         * 5lintman.adb: Change Linux to GNU/Linux.
2522         * 5lml-tgt.adb: Change Linux to GNU/Linux.
2524         * 5losinte.ads: Change Linux to GNU/Linux.
2526         * 5lsystem.ads: Change Linux to GNU/Linux.
2528         * 5qosinte.adb: Change Linux to GNU/Linux.
2530         * 5qosinte.ads: Change Linux to GNU/Linux.
2532         * 5qparame.ads: Change Linux to GNU/Linux.
2534         * 5qtaprop.adb: Change Linux to GNU/Linux.
2536         * 5qtaspri.ads: Change Linux to GNU/Linux.
2537         Add 2001 to copyright notice.
2539         * 5vintman.ads: Change Linux to GNU/Linux.
2540         Fix header format.  Add 2001 to copyright notice.
2542         * g-soccon.ads: Change Linux to GNU/Linux.
2544         * g-trasym.ads: Change Linux to GNU/Linux.
2545         Add 2001 to copyright notice.
2547         * memtrack.adb: Change Linux to GNU/Linux.
2549         * s-intman.ads: Change Linux to GNU/Linux.
2550         Add 2001 to copyright notice.  Fix header format.
2552         * s-stache.adb: Change Linux to GNU/Linux.
2554         * adaint.c: Change Linux to GNU/Linux.
2556         * cio.c: Change Linux to GNU/Linux.
2558         * cstreams.c: Change Linux to GNU/Linux.
2560         * init.c: Change Linux to GNU/Linux.
2562         * gmem.c: Change Linux to GNU/Linux.
2564         * tracebak.c: Change Linux to GNU/Linux.
2567 2001-10-02  Geert Bosch  <bosch@gnat.com>
2569         * misc.c (insert_default_attributes): Add dummy version.