OSDN Git Service

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