1 2002-05-16 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
3 * Makefile.adalib: Allow for PWDCMD to override hardcoded pwd.
4 * Makefile.in: Likewise.
6 2002-05-14 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
8 * Make-lang.in (gnat1$(exeext), gnatbind$(exeext), gnattools):
9 Restore $(CONFIG_H) and prefix.o dependencies.
10 (ada.stage[1-4]): Depend on stage?-start.
12 * Makefile.in (b_gnatb.c): Depend on interfac.o.
14 2002-05-02 Jim Wilson <wilson@redhat.com>
16 * utils.c (finish_record_type): Change record_size to record_type.
18 2001-05-02 John David Anglin <dave@hiauly1.hia.nrc.ca>
20 * ada/Makefile.in (X_ADA_CFLAGS, T_ADA_CFLAGS): New fragment overrides.
21 (ALL_ADA_CFLAGS): Define. Replace ADA_CFLAGS with ALL_ADA_CFLAGS in
22 ALL_ADAFLAGS, MOST_ADAFLAGS, and all compilations using CC.
24 2002-04-25 Neil Booth <neil@daikokuya.demon.co.uk>
26 * misc.c (gnat_parse_file): Update.
28 2002-04-24 Neil Booth <neil@daikokuya.demon.co.uk>
30 * misc.c (gnat_init): Don't set lang_attribute_common.
32 2002-04-21 Joseph S. Myers <jsm28@cam.ac.uk>
34 * gnat_rm.texi: Use @ifnottex instead of @ifinfo.
36 2002-04-21 Florian Weimer <fw@deneb.enyo.de>
38 * gnat_ug.texi: New file.
40 * gnat_rm.texi: Do not include texiplus.texi. Include fdl.texi
43 * xgnatug.adb, ug_words: New files.
45 * Makefile.in (doc, dvi): New targets. Build gnat_ug_*,
46 gnat_rm and gnat-style manuals.
48 2002-04-18 Neil Booth <neil@daikokuya.demon.co.uk>
50 * gigi.h (incomplete_type_error): Remove.
51 * utils.c (incomplete_type_error): Remove.
53 2002-04-16 Mark Mitchell <mark@codesourcery.com>
55 * trans.c (tree_transform): Add has_scope argument to
56 expand_start_stmt_expr.
58 2002-04-04 Neil Booth <neil@daikokuya.demon.co.uk>
60 * gigi.h (truthvalue_conversion): Rename.
61 * misc.c (LANG_HOOKS_TRUTHVALUE_CONVERSION): Redefine.
62 * trans.c (tree_transform): Update.
63 * utils2.c (truthvalue_conversion): Rename, update.
64 (build_binary_op, build_unary_op): Update.
66 2002-04-04 Laurent Guerby <guerby@acm.org>
68 * make.adb: Implement -margs, remove restriction about file name placement.
69 * makeusg.adb: Documentation update.
70 * Makefile.in (TOOLS_FLAGS_TO_PASS): Add VPATH=$(fsrcdir).
71 * Makefile.in (gnattools3): Comment out, gnatmem does not build without libaddr2line.
73 2002-04-04 Neil Booth <neil@daikokuya.demon.co.uk>
75 * utils.c (create_subprog_decl): Use SET_DECL_ASSEMBLER_NAME.
76 (builtin_function): Similarly.
78 2002-04-01 Neil Booth <neil@daikokuya.demon.co.uk>
80 * decl.c (gnat_to_gnu_entity): Update.
81 * gigi.h (mark_addressable): Rename.
82 * misc.c (LANG_HOOKS_MARK_ADDRESSABLE): Redefine.
83 * trans.c (tree_transform): Update.
84 * utils.c (create_var_decl): Update.
85 * util2.c (build_binary_op, build_unary_op,
86 fill_vms_descriptor): Update.
87 (mark_addressable): Rename, update.
89 2002-04-01 Neil Booth <neil@daikokuya.demon.co.uk>
91 * gigi.h (unsigned_type, signed_type, signed_or_unsigned_type):
93 * misc.c (LANG_HOOKS_SIGNED_TYPE, LANG_HOOKS_UNSIGNED_TYPE,
94 LANG_HOOKS_SIGNED_OR_UNSIGNED_TYPE): New.
95 * trans.c (tree_transform, convert_with_check): Update.
96 * utils.c (unsigned_type, signed_type, signed_or_unsigned_type):
99 2002-03-31 Neil Booth <neil@daikokuya.demon.co.uk>
101 * gigi.h (finish_incomplete_decl): Rename.
102 * misc.c (LANG_HOOKS_FINISH_INCOMPLETE_DECL): Redefine.
103 * utils.c (gnat_init_decl_processing): Don't set hook.
104 (finish_incomplete_decl): Rename.
106 2002-03-29 Andreas Schwab <schwab@suse.de>
108 * Makefile.in: Pass VPATH=$(fsrcdir) when calling make in rts
111 2001-03-28 Robert Dewar <dewar@gnat.com>
114 (Remove_Checks): New procedure
117 (Remove_Checks): New procedure
120 Use new Duplicate_Subexpr functions
121 (Duplicate_Subexpr_No_Checks): New procedure
122 (Duplicate_Subexpr_No_Checks_Orig): New procedure
123 (Duplicate_Subexpr): Restore original form (checks duplicated)
124 (Duplicate_Subexpr): Call Remove_Checks
127 (Duplicate_Subexpr_No_Checks): New procedure
128 (Duplicate_Subexpr_No_Checks_Orig): New procedure
129 Add 2002 to copyright notice
131 * sem_util.adb: Use new Duplicate_Subexpr functions
134 (Eval_Indexed_Component): This is the place to call
135 Constant_Array_Ref and to replace the value. We simply merge
136 the code of this function in here, since it is now no longer
137 used elsewhere. This fixes the problem of the back end not
138 realizing we were clever enough to see that this was
140 (Expr_Val): Remove call to Constant_Array_Ref
141 (Expr_Rep_Val): Remove call to Constant_Array_Ref
143 (Constant_Array_Ref): Deal with string literals (patch
144 suggested by Zack Weinberg on the gcc list)
146 2001-03-28 Ed Schonberg <schonber@gnat.com>
148 * exp_util.adb: Duplicate_Subexpr_No_Checks_Orig =>
149 Duplicate_Subexpr_Move_Checks.
151 * exp_util.ads: Duplicate_Subexpr_No_Checks_Orig =>
152 Duplicate_Subexpr_Move_Checks.
154 * sem_eval.adb: (Constant_Array_Ref): Verify that constant
155 value of array exists before retrieving it (it may a private
156 protected component in a function).
158 2002-03-28 Geert Bosch <bosch@gnat.com>
160 * prj-pp.adb : New file.
162 * prj-pp.ads : New file.
164 2002-03-28 Andreas Jaeger <aj@suse.de>
166 * Makefile.in (stamp-sdefault): Fix path for Makefile.
168 2002-03-28 Neil Booth <neil@daikokuya.demon.co.uk>
170 * misc.c (gnat_expand_expr): Move prototype.
172 2002-03-27 Neil Booth <neil@daikokuya.demon.co.uk>
174 * misc.c (insert_default_attributes): Remove.
176 2002-03-27 Neil Booth <neil@daikokuya.demon.co.uk>
178 * misc.c (LANG_HOOKS_EXPAND_EXPR): Redefine.
179 (gnat_init): Don't set hook.
180 (gnat_expand_expr): Fix prototype.
182 2002-03-27 Neil Booth <neil@daikokuya.demon.co.uk>
184 * misc.c (ggc_p): Remove.
186 2002-03-27 Geert Bosch <bosch@gnat.com>
188 * prj-makr.ads, prj-makr.adb : New files.
190 2002-03-26 Neil Booth <neil@daikokuya.demon.co.uk>
192 * misc.c (LANG_HOOKS_MARK_TREE): Redefine.
193 (lang_mark_tree): Make static, rename.
195 2002-03-25 Neil Booth <neil@daikokuya.demon.co.uk>
197 * misc.c (maybe_build_cleanup): Remove.
199 2002-03-24 Neil Booth <neil@daikokuya.demon.co.uk>
201 * gigi.h (yyparse): Remove.
203 2002-03-23 Florian Weimer <fw@deneb.enyo.de>
205 * gnat_rm.texi: Sync with ACT version.
206 (From Ben Brosgol <brosgol@gnat.com>)
208 2002-03-20 Neil Booth <neil@daikokuya.demon.co.uk>
210 * misc.c (LANG_HOOKS_DECL_PRINTABLE_NAME): Redefine.
211 (gnat_init): Remove old hook.
213 2002-03-17 Neil Booth <neil@daikokuya.demon.co.uk>
215 * misc.c (LANG_HOOKS_PARSE_FILE): Redefine.
216 (yyparse): Rename gnat_parse_file.
218 2002-03-14 Geoffrey Keating <geoffk@redhat.com>
220 Delete all lines containing "$Revision:".
221 * xeinfo.adb: Don't look for revision numbers.
222 * xnmake.adb: Likewise.
223 * xsinfo.adb: Likewise.
224 * xsnames.adb: Likewise.
225 * xtreeprs.adb: Likewise.
227 2002-03-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
229 * misc.c (gnat_tree_code_type, gnat_tree_code_length,
230 gnat_tree_code_name): Delete.
231 (tree_code_type, tree_code_length, tree_code_name): Define.
232 (gnat_init): Don't try to copy into the various tree_code
235 2002-03-11 Richard Henderson <rth@redhat.com>
237 * Makefile.in (.NOTPARALLEL): Add fake tag.
239 2002-03-07 Geert Bosch <bosch@gnat.com>
241 * adadecode.c, adadecode.h, aux-io.c, s-traces.adb, s-traces.ads,
242 s-tratas.adb, s-tratas.ads, sinput-d.adb, sinput-d.ads,
243 switch-b.adb, switch-b.ads, switch-c.adb, switch-c.ads,
244 switch-m.adb, switch-m.ads : New files.
246 2002-03-07 Geert Bosch <bosch@gnat.com>
248 * 41intnam.ads, 42intnam.ads, 4aintnam.ads, 4cintnam.ads,
249 4dintnam.ads, 4gintnam.ads, 4hintnam.ads, 4lintnam.ads,
250 4mintnam.ads, 4pintnam.ads, 4rintnam.ads, 4sintnam.ads,
251 4uintnam.ads, 4vcalend.adb, 4zintnam.ads, 52system.ads,
252 5amastop.adb, 5asystem.ads, 5ataprop.adb, 5atpopsp.adb,
253 5avxwork.ads, 5bosinte.adb, 5bsystem.ads, 5esystem.ads,
254 5fsystem.ads, 5ftaprop.adb, 5ginterr.adb, 5gmastop.adb,
255 5gsystem.ads, 5gtaprop.adb, 5gtasinf.adb, 5gtasinf.ads,
256 5hparame.ads, 5hsystem.ads, 5htaprop.adb, 5htraceb.adb,
257 5itaprop.adb, 5ksystem.ads, 5kvxwork.ads, 5lintman.adb,
258 5lsystem.ads, 5mvxwork.ads, 5ninmaop.adb, 5nosinte.ads,
259 5ntaprop.adb, 5ointerr.adb, 5omastop.adb, 5oosinte.adb,
260 5osystem.ads, 5otaprop.adb, 5otaspri.ads, 5pvxwork.ads,
261 5qtaprop.adb, 5sintman.adb, 5ssystem.ads, 5staprop.adb,
262 5stpopse.adb, 5svxwork.ads, 5tosinte.ads, 5uintman.adb,
263 5vasthan.adb, 5vinmaop.adb, 5vinterr.adb, 5vintman.adb,
264 5vmastop.adb, 5vparame.ads, 5vsystem.ads, 5vtaprop.adb,
265 5vtpopde.adb, 5wmemory.adb, 5wsystem.ads, 5wtaprop.adb,
266 5ysystem.ads, 5zinterr.adb, 5zintman.adb, 5zosinte.adb,
267 5zosinte.ads, 5zsystem.ads, 5ztaprop.adb, 6vcpp.adb, 6vcstrea.adb,
268 7sintman.adb, 7staprop.adb, 7stpopsp.adb, 9drpc.adb,
269 Make-lang.in, Makefile.in, a-caldel.adb, a-comlin.ads,
270 a-dynpri.adb, a-except.adb, a-except.ads, a-finali.adb,
271 a-ncelfu.ads, a-reatim.adb, a-retide.adb, a-stream.ads,
272 a-ststio.adb, a-ststio.ads, a-stwifi.adb, a-tags.adb, a-tasatt.adb,
273 a-textio.adb, a-tideau.adb, a-tiflau.adb, a-tigeau.adb,
274 a-tigeau.ads, a-tiinau.adb, a-timoau.adb, a-witeio.adb,
275 a-wtdeau.adb, a-wtenau.adb, a-wtflau.adb, a-wtgeau.adb,
276 a-wtgeau.ads, a-wtinau.adb, a-wtmoau.adb, ada-tree.def, ada-tree.h,
277 adaint.c, adaint.h, ali-util.adb, ali.adb, ali.ads, atree.adb,
278 atree.ads, atree.h, back_end.adb, bcheck.adb, bindgen.adb,
279 bindusg.adb, checks.adb, comperr.adb, config-lang.in, csets.adb,
280 csets.ads, cstand.adb, cstreams.c, debug.adb, debug.ads, decl.c,
281 einfo.adb, einfo.ads, einfo.h, elists.h, errout.adb, errout.ads,
282 eval_fat.adb, exp_aggr.adb, exp_attr.adb, exp_ch11.adb,
283 exp_ch12.adb, exp_ch13.adb, exp_ch2.adb, exp_ch3.adb, exp_ch3.ads,
284 exp_ch4.adb, exp_ch5.adb, exp_ch6.adb, exp_ch7.adb, exp_ch7.ads,
285 exp_ch9.adb, exp_ch9.ads, exp_dbug.adb, exp_dbug.ads, exp_disp.ads,
286 exp_dist.adb, exp_fixd.adb, exp_intr.adb, exp_pakd.adb,
287 exp_prag.adb, exp_strm.adb, exp_util.adb, exp_util.ads,
288 expander.adb, expect.c, fe.h, fmap.adb, fmap.ads, fname-uf.adb,
289 freeze.adb, frontend.adb, g-awk.adb, g-cgideb.adb, g-comlin.adb,
290 g-comlin.ads, g-debpoo.adb, g-dirope.adb, g-dirope.ads,
291 g-dyntab.adb, g-expect.adb, g-expect.ads, g-io.ads, g-io_aux.adb,
292 g-io_aux.ads, g-locfil.adb, g-locfil.ads, g-os_lib.adb,
293 g-os_lib.ads, g-regexp.adb, g-regpat.adb, g-socket.adb,
294 g-socket.ads, g-spipat.adb, g-table.adb, g-trasym.adb,
295 g-trasym.ads, gigi.h, gmem.c, gnat1drv.adb, gnatbind.adb, gnatbl.c,
296 gnatchop.adb, gnatcmd.adb, gnatdll.adb, gnatfind.adb, gnatlbr.adb,
297 gnatlink.adb, gnatls.adb, gnatmem.adb, gnatprep.adb, gnatvsn.ads,
298 gnatxref.adb, hlo.adb, hostparm.ads, i-cobol.adb, i-cpp.adb,
299 i-cstrea.ads, i-cstrin.adb, i-pacdec.adb, i-vxwork.ads,
300 impunit.adb, init.c, inline.adb, io-aux.c, layout.adb, lib-load.adb,
301 lib-util.adb, lib-writ.adb, lib-writ.ads, lib-xref.adb,
302 lib-xref.ads, lib.adb, lib.ads, make.adb, makeusg.adb, mdll.adb,
303 memroot.adb, misc.c, mlib-tgt.adb, mlib-utl.adb, mlib-utl.ads,
304 mlib.adb, namet.adb, namet.ads, namet.h, nlists.h, nmake.adb,
305 nmake.ads, nmake.adt, opt.adb, opt.ads, osint.adb, osint.ads,
306 output.adb, output.ads, par-ch2.adb, par-ch3.adb, par-ch5.adb,
307 par-prag.adb, par-tchk.adb, par-util.adb, par.adb, prj-attr.adb,
308 prj-dect.adb, prj-env.adb, prj-env.ads, prj-nmsc.adb, prj-part.adb,
309 prj-proc.adb, prj-strt.adb, prj-tree.adb, prj-tree.ads, prj.adb,
310 prj.ads, raise.c, raise.h, repinfo.adb, restrict.adb, restrict.ads,
311 rident.ads, rtsfind.adb, rtsfind.ads, s-arit64.adb, s-asthan.adb,
312 s-atacco.adb, s-atacco.ads, s-auxdec.adb, s-crc32.adb, s-crc32.ads,
313 s-direio.adb, s-fatgen.adb, s-fileio.adb, s-finimp.adb,
314 s-gloloc.adb, s-gloloc.ads, s-interr.adb, s-mastop.adb,
315 s-mastop.ads, s-memory.adb, s-parame.ads, s-parint.adb,
316 s-pooglo.adb, s-pooloc.adb, s-rpc.adb, s-secsta.adb, s-sequio.adb,
317 s-shasto.adb, s-soflin.adb, s-soflin.ads, s-stache.adb,
318 s-taasde.adb, s-taasde.ads, s-tadeca.adb, s-tadeca.ads,
319 s-tadert.adb, s-tadert.ads, s-taenca.adb, s-taenca.ads,
320 s-taprob.adb, s-taprop.ads, s-tarest.adb, s-tasdeb.adb,
321 s-tasini.adb, s-tasini.ads, s-taskin.adb, s-taskin.ads,
322 s-tasque.adb, s-tasque.ads, s-tasren.adb, s-tasren.ads,
323 s-tassta.adb, s-tasuti.adb, s-tasuti.ads, s-tataat.adb,
324 s-tataat.ads, s-tpoben.adb, s-tpoben.ads, s-tpobop.adb,
325 s-tposen.adb, s-tposen.ads, s-traceb.adb, s-traceb.ads,
326 s-unstyp.ads, s-widenu.adb, scn-nlit.adb, scn.adb, sem.adb,
327 sem_aggr.adb, sem_attr.adb, sem_attr.ads, sem_case.adb,
328 sem_ch10.adb, sem_ch11.adb, sem_ch11.ads, sem_ch12.adb,
329 sem_ch13.adb, sem_ch13.ads, sem_ch2.adb, sem_ch3.adb, sem_ch3.ads,
330 sem_ch4.adb, sem_ch5.adb, sem_ch6.adb, sem_ch6.ads, sem_ch7.adb,
331 sem_ch8.adb, sem_ch8.ads, sem_ch9.adb, sem_disp.adb, sem_dist.adb,
332 sem_elab.adb, sem_elim.adb, sem_elim.ads, sem_eval.adb,
333 sem_intr.adb, sem_mech.adb, sem_prag.adb, sem_res.adb,
334 sem_type.adb, sem_util.adb, sem_util.ads, sem_vfpt.adb,
335 sem_warn.adb, sinfo.adb, sinfo.ads, sinfo.h, sinput-l.adb,
336 sinput-l.ads, sinput.adb, sinput.ads, snames.adb, snames.ads,
337 snames.h, sprint.adb, sprint.ads, stringt.adb, stringt.ads,
338 stringt.h, style.adb, switch.adb, switch.ads, sysdep.c, system.ads,
339 table.adb, targparm.adb, targparm.ads, targtyps.c, tbuild.adb,
340 tbuild.ads, tracebak.c, trans.c, tree_gen.adb, tree_io.adb,
341 treepr.adb, treepr.ads, treeprs.ads, treeprs.adt, ttypes.ads,
342 types.adb, types.ads, types.h, uintp.ads, urealp.ads, usage.adb,
343 utils.c, utils2.c, validsw.adb, xnmake.adb, xr_tabls.adb,
344 xr_tabls.ads, xref_lib.adb, xref_lib.ads : Merge in ACT changes.
346 * 1ssecsta.adb, 1ssecsta.ads, a-chlat9.ads, a-cwila9.ads,
347 g-enblsp.adb, g-md5.adb, g-md5.ads, gnatname.adb, gnatname.ads,
348 mkdir.c, osint-b.adb, osint-b.ads, osint-c.adb, osint-c.ads,
349 osint-l.adb, osint-l.ads, osint-m.adb, osint-m.ads : New files
351 * 3lsoccon.ads, 5qparame.ads, 5qvxwork.ads, 5smastop.adb,
352 5zparame.ads, gnatmain.adb, gnatmain.ads, gnatpsys.adb : Removed
354 * mdllfile.adb, mdllfile.ads, mdlltool.adb, mdlltool.ads : Renamed
355 to mdll-fil.ad[bs] and mdll-util.ad[bs]
357 * mdll-fil.adb, mdll-fil.ads, mdll-utl.adb, mdll-utl.ads : Renamed
358 from mdllfile.ad[bs] and mdlltool.ad[bs]
360 2002-03-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
362 * utils.c (init_gnat_to_gnu, init_gigi_decls): Use ARRAY_SIZE in
363 lieu of explicit sizeof/sizeof.
365 2002-02-28 Neil Booth <neil@daikokuya.demon.co.uk>
367 * misc.c (copy_lang_decl): Remove.
369 2002-02-27 Zack Weinberg <zack@codesourcery.com>
371 * misc.c: Delete traditional-mode-related code copied from the
372 C front end but not used, or used only to permit the compiler
375 2002-02-07 Richard Henderson <rth@redhat.com>
377 * adaint.c (__gnat_to_gm_time): First arg is int, not time_t.
378 * adaint.h (__gnat_to_gm_time): Update prototype.
380 2002-01-30 Richard Henderson <rth@redhat.com>
382 * trans.c (tree_transform) [N_Loop_Statement]: Use
383 expand_exit_loop_top_cond.
385 2001-12-23 Richard Henderson <rth@redhat.com>
387 * utils.c (end_subprog_body): Push GC context around
388 rest_of_compilation for nested functions.
390 2001-12-23 Richard Henderson <rth@redhat.com>
392 * 5nosinte.ads: Get definition of "int" from Interfaces.C.
394 2001-12-23 Florian Weimer <fw@deneb.enyo.de>
396 * gnat-style.texi (Declarations and Types): Remove ancient style
397 rule which was mandated by code generation issues.
399 * gnat-style.texi (header): Add @dircategory, @direntry.
400 (title page): Remove date.
401 (general) Add @./@: where approriate, and two spaces after the
402 full stop at the end of a sentence. Use @samp markup when
403 referring concrete lexical entities (keywords, attribute names
404 etc.), and @syntax for ARM grammar elements. Use @r for English
405 text in comments. Use @emph for emphasis. Change "if-statements"
406 etc. to "if statements" (without @samp). Break long lines. Make
407 casing of section names consistent.
408 (Identifiers): Use @samp markup for variable names.
409 (Comments): Use @samp markup for comment characters. Line-end
410 comments may follow any Ada code, not just statements. Fix
411 misspelling of "Integer" as "integer".
412 (Loop statements): Do not use variable name "I", use "J".
413 (Subprogram Declarations): Document alignment.
414 (Subprogram Bodies, Block statements): Document empty line before
417 2001-12-22 Florian Weimer <fw@deneb.enyo.de>
419 * make.adb (Add_Switch): Make Generic_Position a procedure. The
420 function approach did not work well because of a side effect (the
421 function call could reallocate the table which was being indexed
422 using its result). Fixes ada/4851.
424 2001-12-19 Robert Dewar <dewar@gnat.com>
426 * bindgen.adb: Minor reformatting
428 * cstand.adb: Minor reformatting
430 * fmap.adb: Minor reformatting
431 Change name from Add for Add_To_File_Map (Add is much too generic)
432 Change Path_Name_Of to Mapped_Path_Name
433 Change File_Name_Of to Mapped_File_Name
434 Fix copyright dates in header
437 Change name from Add for Add_To_File_Map (Add is much too generic)
438 Change Path_Name_Of to Mapped_Path_Name
439 Change File_Name_Of to Mapped_File_Name
440 Fix copyright dates in header
442 * fname-uf.adb: Minor reformatting. New names of stuff in Fmap.
443 Add use clause for Fmap.
445 * make.adb: Minor reformatting
447 * osint.adb: Minor reformatting. Change of names in Fmap.
448 Add use clause for Fmap.
450 * prj-env.adb: Minor reformatting
452 * prj-env.ads: Minor reformatting
454 * switch.adb: Minor reformatting. Do proper raise of Bad_Switch if
455 error found (there were odd exceptions to this general rule in
456 -gnatec/-gnatem processing)
458 2001-12-19 Olivier Hainque <hainque@gnat.com>
460 * raise.c (__gnat_eh_personality): Exception handling personality
461 routine for Ada. Still in rough state, inspired from the C++ version
462 and still containing a bunch of debugging artifacts.
463 (parse_lsda_header, get_ttype_entry): Local (static) helpers, also
464 inspired from the C++ library.
466 * raise.c (eh_personality): Add comments. Part of work for the GCC 3
467 exception handling integration.
469 2001-12-19 Arnaud Charlet <charlet@gnat.com>
471 * Makefile.in: Remove use of 5smastop.adb which is obsolete.
472 (HIE_SOURCES): Add s-secsta.ad{s,b}.
473 (HIE_OBJS): Add s-fat*.o
474 (RAVEN_SOURCES): Remove files that are no longer required. Add
475 interrupt handling files.
476 (RAVEN_MOD): Removed, no longer needed.
478 2001-12-19 Robert Dewar <dewar@gnat.com>
480 * a-ngelfu.adb: Remove ??? comment for inappropriate Inline_Always
481 Add 2001 to copyright date
483 * g-regpat.adb: Change pragma Inline_Always to Inline. There is no
484 need to force universal inlining for these cases.
486 2001-12-19 Arnaud Charlet <charlet@gnat.com>
488 * s-taprob.adb: Minor clean ups so that this unit can be used in
491 * exp_ch7.adb: Allow use of secondary stack in HI mode.
492 Disallow it when pragma Restrictions (No_Secondary_Stack) is specified.
494 2001-12-19 Vincent Celier <celier@gnat.com>
496 * prj-tree.ads (Project_Node_Record): Add comments for components
497 Pkg_Id and Case_Insensitive.
499 2001-12-19 Pascal Obry <obry@gnat.com>
501 * g-socket.adb: Minor reformatting. Found while reading code.
503 2001-12-19 Robert Dewar <dewar@gnat.com>
505 * prj-tree.ads: Minor reformatting
507 2001-12-20 Joseph S. Myers <jsm28@cam.ac.uk>
509 * config-lang.in (diff_excludes): Remove.
511 2001-12-17 Ed Schonberg <schonber@gnat.com>
513 * sem_res.adb (Resolve_Selected_Component): do not generate a
514 discriminant check if the selected component is a component of
515 the argument of an initialization procedure.
517 * trans.c (tree_transform, case of arithmetic operators): If result
518 type is private, the gnu_type is the base type of the full view,
519 given that the full view itself may be a subtype.
521 2001-12-17 Robert Dewar <dewar@gnat.com>
523 * sem_res.adb: Minor reformatting
525 * trans.c (tree_transform, case N_Real_Literal): Add missing third
526 parameter in call to Machine (unknown horrible effects from this
529 * urealp.h: Add definition of Round_Even for call to Machine
530 Add third parameter for Machine
532 2001-12-17 Ed Schonberg <schonber@gnat.com>
534 * sem_warn.adb (Check_One_Unit): Suppress warnings completely on
535 predefined units in No_Run_Time mode.
537 2001-12-17 Richard Kenner <kenner@gnat.com>
539 * misc.c (insn-codes.h): Now include.
541 2001-12-17 Olivier Hainque <hainque@gnat.com>
543 * a-except.adb: Preparation work for future integration of the GCC 3
544 exception handling mechanism
545 (Notify_Handled_Exception, Notify_Unhandled_Exception): New routines
546 to factorize previous code sequences and make them externally callable,
547 e.g. for the Ada personality routine when the GCC 3 mechanism is used.
548 (Propagate_Exception, Raise_Current_Excep, Raise_From_Signal_Handler):
549 Use the new notification routines.
551 2001-12-17 Emmanuel Briot <briot@gnat.com>
553 * prj-tree.ads (First_Choice_Of): Document the when others case
555 2001-12-17 Arnaud Charlet <charlet@gnat.com>
557 * bindgen.adb (Gen_Ada_Init_*): Set priority of environment task in
558 HI-E mode, in order to support Ravenscar profile properly.
560 * cstand.adb (Create_Standard): Duration is a 32 bit type in HI-E
561 mode on 32 bits targets.
563 2001-12-17 Vincent Celier <celier@gnat.com>
565 * fmap.adb: Initial version.
567 * fmap.ads: Initial version.
569 * fname-uf.adb (Get_File_Name): Use mapping if unit name mapped.
570 If search is successfully done, add to mapping.
572 * frontend.adb: Initialize the mapping if a -gnatem switch was used.
575 (Gnatmake): Add new local variable Mapping_File_Name.
576 Create mapping file when using project file(s).
577 Delete mapping file before exiting.
579 * opt.ads (Mapping_File_Name): New variable
581 * osint.adb (Find_File): Use path name found in mapping, if any.
583 * prj-env.adb (Create_Mapping_File): New procedure
585 * prj-env.ads (Create_Mapping_File): New procedure.
587 * switch.adb (Scan_Front_End_Switches): Add processing for -gnatem
590 * usage.adb: Add entry for new switch -gnatem.
592 * Makefile.in: Add dependencies for fmap.o.
594 2001-12-17 Ed Schonberg <schonber@gnat.com>
596 * sem_ch10.adb (Analyze_With_Clause): Retrieve proper entity when unit
597 is a package instantiation rewritten as a package body.
598 (Install_Withed_Unit): Undo previous change, now redundant.
600 2001-12-17 Gary Dismukes <dismukes@gnat.com>
603 (Compute_Length): Move conversion to Unsigned to callers.
604 (Get_Max_Size): Convert Len expression to Unsigned after calls to
605 Compute_Length and Determine_Range.
606 (Layout_Array_Type): Convert Len expression to Unsigned after calls to
607 Compute_Length and Determine_Range.
608 Above changes fix problem with length computation for supernull arrays
609 where Max (Len, 0) wasn't getting applied due to the Unsigned
610 conversion used by Compute_Length.
612 2001-12-17 Arnaud Charlet <charlet@gnat.com>
615 (OK_To_Use_In_No_Run_Time_Mode): Allow Ada.Exceptions and
616 System.Secondary_Stack.
617 (OK_To_Use_In_Ravenscar_Mode): New table needed to implement Ravenscar
619 Remove unused entity RE_Exception_Data.
621 * rtsfind.adb (RTE): Allow Ravenscar Profile in HI mode.
623 * rident.ads (No_Secondary_Stack): New restriction.
625 2001-12-17 Joel Brobecker <brobecke@gnat.com>
627 * gnat_rm.texi: Fix minor typos. Found while reading the section
628 regarding "Bit_Order Clauses" that was sent to a customer.
629 Very interesting documentation!
631 2001-12-17 Robert Dewar <dewar@gnat.com>
633 * sem_case.adb (Choice_Image): Avoid creating improper character
634 literal names by using the routine Set_Character_Literal_Name. This
635 fixes bombs in certain error message cases.
637 2001-12-17 Arnaud Charlet <charlet@gnat.com>
639 * a-reatim.adb: Minor reformatting.
641 2001-12-17 Ed Schonberg <schonber@gnat.com>
643 * sem_ch12.adb (Validate_Derived_Type_Instance): Handle properly the
644 case where the formal is an extension of another formal in the current
645 unit or in a parent generic unit.
647 2001-12-17 Arnaud Charlet <charlet@gnat.com>
649 * s-tposen.adb: Update comments. Minor reformatting.
652 * s-tarest.adb: Update comments. Minor code reorganization.
654 2001-12-17 Gary Dismukes <dismukes@gnat.com>
656 * exp_attr.adb (Attribute_Tag): Suppress expansion of <type_name>'Tag
659 2001-12-17 Robert Dewar <dewar@gnat.com>
661 * exp_attr.adb: Minor reformatting
663 2001-12-17 Ed Schonberg <schonber@gnat.com>
665 * sem_ch3.adb (Build_Derived_Private_Type): Refine check to handle
666 derivations nested within a child unit: verify that the parent
667 type is declared in an outer scope.
669 2001-12-17 Robert Dewar <dewar@gnat.com>
671 * sem_ch12.adb: Minor reformatting
673 2001-12-17 Ed Schonberg <schonber@gnat.com>
675 * sem_warn.adb (Check_One_Unit): In No_Run_Time mode, do not post
676 warning if current unit is a predefined one, from which bodies may
679 2001-12-17 Robert Dewar <dewar@gnat.com>
681 * eval_fat.ads: Add comment that Round_Even is referenced in Ada code
682 Fix header format. Add 2001 to copyright date.
684 * exp_dbug.adb (Get_Encoded_Name): Fix out of bounds reference,
685 which caused CE during compilation if checks were enabled.
687 2001-12-17 Vincent Celier <celier@gnat.com>
690 (Switches_Of): New function
691 (Test_If_Relative_Path): New procedure
692 (Add_Switches): Use new function Switches_Of
693 (Collect_Arguments_And_Compile): Use new function Switches_Of.
694 When using a project file, test if there are any relative
695 search path. Fail if there are any.
696 (Gnatmake): Only add switches for the primary directory when not using
697 a project file. When using a project file, change directory to the
698 object directory of the main project file. When using a project file,
699 test if there are any relative search path. Fail if there are any.
700 When using a project file, fail if specified executable is relative
701 path with directory information, and prepend executable, if not
702 specified as an absolute path, with the exec directory. Make sure
703 that only one -o switch is transmitted to the linker.
705 * prj-attr.adb (Initialization_Data): Add project attribute Exec_Dir
708 (Ada_Check): Get Spec_Suffix_Loc and Impl_Suffix_Loc,
709 when using a non standard naming scheme.
710 (Check_Ada_Naming_Scheme): Make sure that error messages
711 do not raise exceptions.
712 (Is_Illegal_Append): Return True if there is no dot in the suffix.
713 (Language_Independent_Check): Check the exec directory.
715 * prj.adb (Project_Empty): Add new component Exec_Directory
718 (Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Add defaults.
719 (Project_Data): Add component Exec_Directory
721 * snames.adb: Updated to match snames.ads revision 1.215
723 * snames.ads: Added Exec_Dir
725 2001-12-17 Robert Dewar <dewar@gnat.com>
727 * make.adb: Minor reformatting
729 * prj-nmsc.adb: Minor reformatting
731 * snames.adb: Updated to match snames.ads
733 * snames.ads: Alphebetize entries for project file
735 2001-12-17 Ed Schonberg <schonber@gnat.com>
737 * trans.c (process_freeze_entity): Do nothing if the entity is a
738 subprogram that was already elaborated.
740 2001-12-17 Richard Kenner <kenner@gnat.com>
742 * decl.c (gnat_to_gnu_entity, object): Do not back-annotate Alignment
743 and Esize if object is referenced via pointer.
745 2001-12-17 Ed Schonberg <schonber@gnat.com>
747 * sem_ch3.adb (Analyze_Variant_Part): check that type of discriminant
748 is discrete before analyzing choices.
750 2001-12-17 Joel Brobecker <brobecke@gnat.com>
752 * bindgen.adb (Gen_Output_File_Ada): Generate a new C-like string
753 containing the name of the Ada Main Program. This string is mainly
754 intended for the debugger.
755 (Gen_Output_File_C): Do the equivalent change when generating a C file.
757 2001-12-17 Robert Dewar <dewar@gnat.com>
759 * ali.adb: Set new Dummy_Entry field in dependency entry
761 * ali.ads: Add Dummy_Entry field to source dependency table
763 * bcheck.adb (Check_Consistency): Ignore dummy D lines
765 * lib-writ.adb (Writ_ALI): Write dummy D lines for missing source files
767 * lib-writ.ads: Document dummy D lines for missing files.
769 * types.ads: (Dummy_Time_Stamp): New value for non-existant files
771 2001-12-17 Robert Dewar <dewar@gnat.com>
773 * ali.adb: Type reference does not reset current file.
775 * ali.adb: Recognize and scan renaming reference
777 * ali.ads: Add spec for storing renaming references.
779 * lib-xref.ads: Add documentation for handling of renaming references
781 * lib-xref.adb: Implement output of renaming reference.
784 (Determine_Range): Document local variables
785 (Determine_Range): Make sure Hbound is initialized. It looks as though
786 there could be a real problem here with an uninitialized reference
787 to Hbound, but no actual example of failure has been found.
789 2001-12-17 Laurent Pautet <pautet@gnat.com>
792 Fix comment of Shutdown_Socket and Close_Socket. These functions
793 should not fail silently because if they are called twice, this
794 probably means that there is a race condition in the user program.
795 Anyway, this behaviour is consistent with the rest of this unit.
796 When an error occurs, an exception is raised with the error message
797 as exception message.
799 2001-12-17 Robert Dewar <dewar@gnat.com>
801 * frontend.adb: Move call to Check_Unused_Withs from Frontend, so
802 that it happens before modification of Sloc values for -gnatD.
804 * gnat1drv.adb: Move call to Check_Unused_Withs to Frontend,
805 so that it happens before modification of Sloc values for -gnatD.
807 * switch.adb: Minor reformatting
809 2001-12-15 Richard Henderson <rth@redhat.com>
811 * sem_ch7.adb: Wrap comment.
813 2001-12-16 Joseph S. Myers <jsm28@cam.ac.uk>
815 * 5ataprop.adb, 5atpopsp.adb, 5ftaprop.adb, 5gmastop.adb,
816 5gtaprop.adb, 5htaprop.adb, 5itaprop.adb, 5lintman.adb,
817 5omastop.adb, 5oosinte.adb, 5otaprop.adb, 5staprop.adb,
818 5vinterr.adb, 5vtaprop.adb, 5vtpopde.adb, 5wintman.adb,
819 5wtaprop.adb, 5zinterr.adb, 5ztaprop.adb, 6vcstrea.adb,
820 7sintman.adb, 7staprop.adb, 9drpc.adb, ChangeLog, Makefile.in,
821 a-except.adb, a-tags.ads, a-tasatt.adb, a-teioed.adb,
822 a-textio.ads, a-witeio.ads, a-wtedit.adb, ali.ads, comperr.adb,
823 cstand.adb, einfo.ads, errout.adb, exp_ch11.adb, exp_ch2.adb,
824 exp_ch3.adb, exp_ch4.adb, exp_ch5.adb, exp_ch6.adb, exp_ch9.adb,
825 exp_util.adb, exp_util.ads, fname-uf.adb, g-cgi.ads, g-exctra.ads,
826 g-expect.ads, g-regist.adb, g-spipat.adb, gnatchop.adb,
827 gnatlink.adb, gnatls.adb, gnatmain.adb, gnatmem.adb, init.c,
828 make.adb, make.ads, mdlltool.adb, nlists.ads, osint.ads,
829 par-ch3.adb, par-ch4.adb, par-ch5.adb, par-ch6.adb, par.adb,
830 repinfo.adb, s-fatflt.ads, s-fatlfl.ads, s-fatllf.ads,
831 s-fatsfl.ads, s-finimp.adb, s-finimp.ads, s-interr.adb,
832 s-secsta.ads, s-shasto.ads, s-stalib.adb, s-stalib.ads,
833 s-tarest.ads, s-tasdeb.adb, s-tassta.adb, s-tassta.ads,
834 s-vaflop.ads, scans.ads, scn.adb, sem.ads, sem_aggr.adb,
835 sem_attr.adb, sem_case.ads, sem_ch10.adb, sem_ch12.adb,
836 sem_ch13.adb, sem_ch3.adb, sem_ch3.ads, sem_ch5.adb, sem_ch7.adb,
837 sem_ch8.adb, sem_ch8.ads, sem_type.adb, sem_util.ads, sinfo.ads,
838 sprint.adb, tbuild.ads, types.ads, utils.c, xeinfo.adb: Fix
841 2001-12-14 Vincent Celier <celier@gnat.com>
843 * osint.adb(Create_Debug_File): When an object file is specified,
844 put the .dg file in the same directory as the object file.
846 2001-12-14 Robert Dewar <dewar@gnat.com>
848 * osint.adb: Minor reformatting
850 * lib-xref.adb (Output_Instantiation): New procedure to generate
851 instantiation references.
853 * lib-xref.ads: Add documentation of handling of generic references.
855 * ali.adb (Read_Instantiation_Ref): New procedure to read
856 instantiation references
858 * ali.ads: Add spec for storing instantiation references
860 * bindusg.adb: Minor reformatting
862 * switch.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
864 * usage.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
866 * gnatcmd.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
868 * csets.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
872 Add 2001 to copyright date
873 Add entry for Latin-5 (Cyrillic ISO-8859-5)
875 2001-12-14 Matt Gingell <gingell@gnat.com>
877 * adaint.c: mktemp is a macro on Lynx and can not be used as an
880 2001-12-14 Richard Kenner <kenner@gnat.com>
882 * misc.c (gnat_expand_constant): Do not strip UNCHECKED_CONVERT_EXPR
883 if operand is CONSTRUCTOR.
885 2001-12-14 Ed Schonberg <schonber@gnat.com>
887 * trans.c (tree_transform, case N_Assignment_Statement): Set lineno
888 before emiting check on right-hand side, so that exception information
891 2001-12-14 Richard Kenner <kenner@gnat.com>
893 * utils.c (create_var_decl): Throw away initializing expression
894 if just annotating types and non-constant.
896 2001-12-14 Vincent Celier <celier@gnat.com>
898 * prj-nmsc.adb: (Ada_Check): Migrate drom Ada_Default_... to
901 * prj.adb: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
903 (Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Move to spec.
905 * prj.ads: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
907 (Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Move from body.
909 2001-12-16 Joseph S. Myers <jsm28@cam.ac.uk>
911 * ChangeLog: Remove piece of diff output.
913 2001-12-14 Geert Bosch <bosch@gnat.com>
915 * config-lang.in: Update copyright notice
917 * layout.adb: Remove commented out code.
919 * mdllfile.ads: Update copyright notice. Fix header format.
921 * sem_case.ads: Likewise.
923 * sem_ch3.adb: Minor reformatting.
925 2001-12-12 Geert Bosch <bosch@gnat.com>
927 * freeze.ads: Update copyright date.
929 * g-comlin.ads: Minor reformatting.
931 * gnat-style.texi: Fix typo.
933 2001-12-12 Geert Bosch <bosch@gnat.com>
935 * einfo.h: Regenerate.
937 2001-12-12 Ed Schonberg <schonber@gnat.com>
939 * sem_ch12.adb (Save_Entity_Descendant): Use syntactic field names
940 on known node types, rather than untyped fields. Further cleanups.
942 2001-12-12 Robert Dewar <dewar@gnat.com>
945 (Save_Entity_Descendant): Minor comment update.
946 (Copy_Generic_Node): Deal with incorrect reference to Associated_Node
947 of an N_Attribute_Reference node. As per note below, this does not
948 eliminate need for Associated_Node in attribute ref nodes.
949 (Associated_Node): Documentation explicitly mentions attribute
950 reference nodes, since this field is used in such nodes.
952 * sem_ch12.adb (Associated_Node): Minor documentation cleanup.
954 2001-12-12 Robert Dewar <dewar@gnat.com>
956 * s-stalib.adb: Add more comments on with statements being needed
958 * par-ch12.adb: Minor reformatting
960 * prj-dect.ads: Fix copyright header
962 * s-arit64.adb (Multiply_With_Ovflo_Check): Fix case where both
963 inputs fit in 32 bits, but the result still overflows.
965 * s-fatgen.ads: Minor comment improvement
967 2001-12-12 Ed Schonberg <schonber@gnat.com>
969 * sem_ch4.adb (Analyze_Selected_Component): If the prefix is of a
970 formal derived type, look for an inherited component from the full
971 view of the parent, if any.
973 2001-12-12 Robert Dewar <dewar@gnat.com>
975 * checks.ads (Apply_Alignment_Check): New procedure.
977 * exp_ch13.adb (Expand_N_Freeze_Entity): Generate dynamic check to
978 ensure that the alignment of objects with address clauses is
979 appropriate, and raise PE if not.
981 * exp_util.ads (Must_Be_Aligned): Removed, replaced by
982 Exp_Pakd.Known_Aligned_Enough
984 * mdllfile.ads: Minor reformatting
986 * mlib-fil.ads: Minor reformatting
988 2001-12-12 Ed Schonberg <schonber@gnat.com>
990 * exp_ch8.adb (Expand_N_Object_Renaming_Declaration): Extend previous
991 fix to any component reference if enclosing record has non-standard
994 2001-12-12 Vincent Celier <celier@gnat.com>
996 * g-dirope.ads (Find, Wildcard_Iterator): Moved to child package
999 2001-12-12 Ed Schonberg <schonber@gnat.com>
1001 * freeze.ads: Make Freeze_Fixed_Point_Type visible, for use in
1004 2001-12-12 Robert Dewar <dewar@gnat.com>
1006 * impunit.adb: Add entry for GNAT.Directory_Operations.Iteration
1008 2001-12-12 Emmanuel Briot <briot@gnat.com>
1010 * g-regexp.adb: Remove all debug code, since it isn't required anymore,
1011 and it adds dependencies to system.io.
1013 2001-12-12 Pascal Obry <obry@gnat.com>
1015 * g-dirope.adb (Expand_Path.Var): Correctly detect end of
1018 2001-12-11 Ed Schonberg <schonber@gnat.com>
1020 * sem_ch10.adb (Install_Withed_Unit): If the unit is a generic instance
1021 that is the parent of other generics, the instance body replaces the
1022 instance node. Retrieve the instance of the spec, which is the one
1023 that is visible in clients and within the body.
1025 2001-12-11 Vincent Celier <celier@gnat.com>
1027 * gnatmain.adb: Initial version.
1029 * gnatmain.ads: Initial version.
1031 * prj-attr.adb (Initialisation_Data): Add package Gnatstub.
1033 * snames.adb: Updated to match snames.ads.
1035 * snames.ads: Added Gnatstub.
1037 2001-12-11 Vincent Celier <celier@gnat.com>
1039 * prj-attr.adb (Initialization_Data): Change name from
1040 Initialisation_Data.
1042 2001-12-11 Emmanuel Briot <briot@gnat.com>
1044 * g-regpat.adb (Parse_Literal): Properly handle simple operators ?,
1045 + and * applied to backslashed expressions like \r.
1047 2001-12-11 Vasiliy Fofanov <fofanov@gnat.com>
1049 * g-os_lib.ads: String_List type added, Argument_List type is now
1050 subtype of String_List.
1052 2001-12-11 Robert Dewar <dewar@gnat.com>
1054 * g-os_lib.ads: Change copyright to FSF
1055 Add comments for String_List type
1057 2001-12-11 Vincent Celier <celier@gnat.com>
1059 * g-dirope.adb (Expand_Path): Fix bug. (wrong length when adding a
1060 string to the buffer).
1062 2001-12-11 Ed Schonberg <schonber@gnat.com>
1064 * freeze.adb: Make Freeze_Fixed_Point_Type visible, for use in
1067 * sem_attr.adb: Simplify previous fix for Address.
1068 (Set_Bounds): If prefix is a non-frozen fixed-point type, freeze now,
1069 to avoid anomalies where the bound of the type appears to raise
1072 2001-12-11 Robert Dewar <dewar@gnat.com>
1074 * lib-xref.adb (Output_Refs): Make sure pointers are always properly
1077 2001-12-11 Ed Schonberg <schonber@gnat.com>
1079 * sem_ch12.adb (Analyze_Subprogram_Instantiation): Check for a
1080 renamed unit before checking for recursive instantiations.
1082 2001-12-11 Emmanuel Briot <briot@gnat.com>
1084 * prj.ads: Add comments for some of the fields.
1086 2001-12-11 Robert Dewar <dewar@gnat.com>
1088 * lib-xref.adb (Output_Refs): Don't output type references outside
1089 the main unit if they are not otherwise referenced.
1091 2001-12-11 Ed Schonberg <schonber@gnat.com>
1093 * sem_attr.adb (Analyze_attribute, case Address and Size): Simplify
1094 code and diagnose additional illegal uses
1096 * sem_util.adb (Is_Object_Reference): An indexed component is an
1097 object only if the prefix is.
1099 2001-12-11 Vincent Celier <celier@gnat.com>
1101 * g-diopit.adb: Initial version.
1103 * g-diopit.ads: Initial version.
1106 (Expand_Path): Avoid use of Unbounded_String
1107 (Find, Wildcard_Iterator): Moved to child package Iteration
1109 * Makefile.in: Added g-diopit.o to GNATRTL_NONTASKING_OBJS
1111 2001-12-11 Robert Dewar <dewar@gnat.com>
1113 * sem_attr.adb: Minor reformatting
1115 2001-12-11 Ed Schonberg <schonber@gnat.com>
1117 * sem_ch3.adb: Clarify some ???.
1119 2001-12-11 Robert Dewar <dewar@gnat.com>
1121 * exp_util.adb (Must_Be_Aligned): Removed, replaced by
1122 Exp_Pakd.Known_Aligned_Enough
1124 * sem_ch13.adb (Check_Address_Alignment): Removed, extended
1125 version is moved to Exp_Ch13.
1127 2001-12-11 Robert Dewar <dewar@gnat.com>
1129 * einfo.ads: Minor reformatting
1131 * exp_ch5.adb: Add comment for previous.change
1133 * ali.adb: New interface for extended typeref stuff.
1135 * ali.ads: New interface for typeref stuff.
1137 * checks.adb (Apply_Alignment_Check): New procedure.
1139 * debug.adb: Add -gnatdM for modified ALI output
1141 * exp_pakd.adb (Known_Aligned_Enough): Replaces Known_Aligned_Enough.
1143 * lib-xref.adb: Extend generation of <..> notation to cover
1144 subtype/object types. Note that this is a complete rewrite,
1145 getting rid of the very nasty quadratic algorithm previously
1146 used for derived type output.
1148 * lib-xref.ads: Extend description of <..> notation to cover
1149 subtype/object types. Uses {..} for these other cases.
1150 Also use (..) for pointer types.
1152 * sem_util.adb (Check_Potentially_Blocking_Operation): Slight cleanup.
1154 * exp_pakd.adb: Minor reformatting. Note that prevous RH should say:
1155 (Known_Aligned_Enough): Replaces Must_Be_Aligned.
1157 2001-12-11 Vincent Celier <celier@gnat.com>
1160 Changed /COMPILE_ONLY to /ACTIONS=COMPILE
1161 Changed /BIND_ONLY to /ACTIONS=BIND
1162 Changed /LINK_ONLY to /ACTIONS=LINK
1164 2001-12-11 Ed Schonberg <schonber@gnat.com>
1166 * sem_ch8.adb (Find_Selected_Component): improved search for a
1167 candidate package in case of error.
1169 * sem_ch12.adb (Inline_Instance_Body): place head of use_clause
1170 chain back on scope stack before reinstalling use clauses.
1172 * exp_ch5.adb (Expand_N_If_Statement): if Constant_Condition_Warnings
1173 is enabled, do not kill the code for the condition, to preserve
1176 2001-12-11 Robert Dewar <dewar@gnat.com>
1178 * checks.adb (Insert_Valid_Check): Apply validity check to expression
1179 of conversion, not to result of conversion.
1181 2001-12-11 Ed Schonberg <schonber@gnat.com>
1183 * sem_ch3.adb (Build_Derived_Record_Type): set Controlled flag
1184 before freezing parent. If the declarations are mutually recursive,
1185 an access to the current record type may be frozen before the
1186 derivation is complete.
1188 2001-12-05 Vincent Celier <celier@gnat.com>
1190 * gnatcmd.adb: (MAKE): Add new translations: -b /BIND_ONLY,
1191 -c /COMPILE_ONLY, -l /LINK_ONLY
1194 (Bind_Only): New Flag
1195 (Link_Only): New flag
1197 * switch.adb (Scan_Make_Switches): Add processing for -b (Bind_Only)
1200 * makeusg.adb: Add new switches -b and -l. Update Copyright notice.
1203 (Do_Compile_Step, Do_Bind_Step, Do_Link_Step): New flags.
1204 (Gnatmake): Set the step flags. Only perform a step if the
1205 corresponding step flag is True.
1206 (Scan_Make_Arg): Reset the bind and link step flags when -u
1207 or -gnatc has been specified.
1209 2001-12-05 Ed Schonberg <schonber@gnat.com>
1211 * sem_eval.adb (Eval_Concatenation): If left operand is a null string,
1212 get bounds from right operand.
1214 * sem_eval.adb: Minor reformatting
1216 * exp_util.adb (Make_Literal_Range): use bound of literal rather
1217 than Index'First, its lower bound may be different from 1.
1219 * exp_util.adb: Undo earlier change, fixes ACVC regressions C48009B
1222 2001-12-05 Vincent Celier <celier@gnat.com>
1224 * prj-nmsc.adb Minor reformatting
1226 * prj-nmsc.adb (Language_Independent_Check): Reset Library flag if
1227 set and libraries are not supported.
1229 2001-12-05 Ed Schonberg <schonber@gnat.com>
1231 * sem_ch3.adb (Build_Derived_Private_Type): set Public status of
1232 private view explicitly, so the back-end can treat as a global
1235 2001-12-05 Ed Schonberg <schonber@gnat.com>
1237 * sem_ch12.adb (Instantiate_Package_Body): if instance is a compilation
1238 unit, always replace instance node with new body, for ASIS use.
1240 2001-12-05 Vincent Celier <celier@gnat.com>
1242 * prj-nmsc.adb (Language_Independent_Check): Issue a warning if
1243 libraries are not supported and both attributes Library_Name and
1244 Library_Dir are specified.
1246 * prj-proc.adb (Expression): Set location of Result to location of
1249 * Makefile.in: Add mlib.o, mlib-fil.o, mlib-tgt and mlib-utl to GNATLS.
1250 (prj-nmsc is now importing MLib.Tgt)
1252 * prj-proc.adb: Put the change indicated above that was forgotten.
1254 2001-12-05 Robert Dewar <dewar@gnat.com>
1256 * Makefile.in: Add dependencies for System.IO for GNAT.Regexp
1258 2001-12-05 Ed Schonberg <schonber@gnat.com>
1260 * sem_ch3.adb (Build_Derived_Concurrent_Type): If derivation imposes a
1261 constraint, introduce explicit subtype declaration and derive from it.
1263 * sem_ch3.adb: Minor reformatting
1265 2001-12-05 Robert Dewar <dewar@gnat.com>
1267 * checks.adb (Determine_Range): Increase cache size for checks.
1270 * exp_ch6.adb: Minor reformatting
1271 (Expand_N_Subprogram_Body): Reset Is_Pure for any subprogram that has
1272 a parameter whose root type is System.Address, since treating such
1273 subprograms as pure in the code generator is almost surely a mistake
1274 that will lead to unexpected results.
1276 * exp_util.adb (Remove_Side_Effects): Clean up old ??? comment and
1277 change handling of conversions.
1279 * g-regexp.adb: Use System.IO instead of Ada.Text_IO.
1281 2001-12-05 Ed Schonberg <schonber@gnat.com>
1283 * sem_ch3.adb (Analyze_Object_Declaration): If expression is an
1284 aggregate with static wrong size, attach generated Raise node to
1287 2001-12-05 Robert Dewar <dewar@gnat.com>
1289 * sem_attr.adb (Analyze_Attribute): Defend against bad Val attribute.
1290 Fixes compilation abandoned bomb in B24009B.
1292 2001-12-05 Ed Schonberg <schonber@gnat.com>
1295 Document use of Associated_Node on Selected_Components.
1296 (Save_Global_Operand_Descendants): Change to Save_Entity_Descendants,
1297 to clarify use of untyped descendant fields.
1299 2001-12-05 Robert Dewar <dewar@gnat.com>
1301 * prj-dect.ads: Add ??? comment
1302 Add 2001 to copyright notice (was not done in after all)
1304 * prj-part.adb: Minor reformatting. Reword one awkward error message.
1306 * prj.ads: Minor reformatting throughout, and add some ??? comments
1308 * snames.ads: Minor reformatting
1310 2001-12-05 Geert Bosch <bosch@gnat.com>
1312 * snames.adb: Autoupdate
1314 2001-12-05 Vincent Celier <celier@gnat.com>
1316 * prj-dect.adb (Parse): Rename parameter Modifying to Extends.
1318 * prj-dect.ads (Parse): Rename parameter Modifying to Extends.
1320 * prj-env.adb: Minor comment changes (modifying -> extends).
1322 * prj-nmsc.adb: Minor comment changes (modifying -> extends).
1324 * prj-part.adb (Parse_Single_Project): Change Tok_Modifying to
1327 * prj.adb (Initialize): Change Modifying to Extends.
1329 * scans.ads (Token_Type): Change Tok_Modifying to Tok_Extends.
1331 * prj.ads: Minor comment change (Modifying -> extending).
1333 * snames.ads: Change modifying to extends.
1335 2001-12-05 Robert Dewar <dewar@gnat.com>
1337 * sem_warn.adb: Remove stuff for conditionals, we are not going to
1340 * sem_warn.ads: Remove stuff for conditionals, we are not going to
1341 do this after all. Add 2001 to copyright notice
1343 2001-12-04 Geert Bosch <bosch@gnat.com>
1345 * einfo.h, sinfo.h, treeprs.ads: Regenerate.
1347 2001-12-04 Robert Dewar <dewar@gnat.com>
1349 * errout.adb (Error_Msg): Ignore attempt to put error msg at junk
1350 location if we already have errors. Stops some cases of cascaded
1353 * errout.adb: Improve comment.
1355 2001-12-04 Robert Dewar <dewar@gnat.com>
1358 (Analyze_Formal_Type_Definition): Defend against Error.
1359 (Analyze_Formal_Subprogram): Defend against Error.
1361 * par-ch12.adb (F_Formal_Type_Declaration): In case of error,
1362 remove following semicolon if present. Removes cascaded error.
1364 2001-12-04 Douglas B. Rupp <rupp@gnat.com>
1367 (Gen_Exception_Table_Ada): Write "begin" and then return if Num
1368 exceptions equals 0.
1369 (Gen_Exception_Table_C): Return if Num exceptions equals 0.
1370 Fixes PIWG E tests (which have to be run with -gnatL).
1372 2001-12-04 Robert Dewar <dewar@gnat.com>
1374 * einfo.ads: Minor reformatting
1376 2001-12-04 Ed Schonberg <schonber@gnat.com>
1378 * einfo.ads: Block_Node points to the identifier of the block, not to
1379 the block node itself, to preserve the link when the block is
1380 rewritten, e.g. within an if-statement with a static condition.
1382 * inline.adb (Cleanup_Scopes): recover block statement from block
1383 entity using new meaning of Block_Node.
1385 * sem_ch5.adb (Analyze_Block_Statement): set Block_Node to point to
1386 identifier of block node, rather than to node itself.
1388 2001-12-04 Gary Dismukes <dismukes@gnat.com>
1391 (Get_Max_Size): Fix "start of processing" comment to say Get_Max_Size.
1392 (Discrimify): Go back to setting the Etypes of the selected component
1393 because the Vname component does not exist at this point and will
1394 fail name resolution. Also set Analyzed.
1395 Remove with and use of Sem_Res.
1397 2001-12-04 Arnaud Charlet <charlet@gnat.com>
1399 * Makefile.in: (HIE_SOURCES): add s-fat*.
1401 2001-12-04 Robert Dewar <dewar@gnat.com>
1404 (Compile_Time_Known_Attribute): New procedure.
1405 (Eval_Attribute, case Size): Use Compile_Time_Known_Attribute to ensure
1408 2001-12-04 Ed Schonberg <schonber@gnat.com>
1410 * sem_ch7.adb (New_Private_Type): Set Is_Tagged_Type flag before
1411 processing discriminants to diagnose illegal default values.
1413 2001-12-04 Ed Schonberg <schonber@gnat.com>
1415 * sem_attr.adb (Resolve_Attribute): Handle properly an non-classwide
1416 access discriminant within a type extension that constrains its
1417 parent discriminants.
1419 2001-12-04 Ed Schonberg <schonber@gnat.com>
1421 * sem_ch3.adb (Find_Type_Of_Subtype_Indic): If subtype indication
1422 is malformed, use instance of Any_Id to allow analysis to proceed.
1424 * par-ch12.adb (P_Formal_Type_Declaration): Propagate Error if
1425 type definition is illegal.
1426 (P_Formal_Derived_Type_Definition): Better recovery when TAGGED is
1429 2001-12-04 Ed Schonberg <schonber@gnat.com>
1431 * sem_warn.adb (Output_Unreferenced_Messages): Extend previous fix to
1434 2001-12-04 Robert Dewar <dewar@gnat.com>
1436 * errout.adb: Minor reformatting
1438 2001-12-04 Robert Dewar <dewar@gnat.com>
1440 * exp_util.adb: Minor reformatting from last change
1442 * errout.adb (Check_For_Warning): For a Raised_Constraint_Error node
1443 which is a rewriting of an expression, traverse the original
1444 expression to remove warnings that may have been posted on it.
1446 2001-12-04 Ed Schonberg <schonber@gnat.com>
1448 * exp_util.adb (Must_Be_Aligned): Return false for a component of a
1449 record that has other packed components.
1451 2001-12-04 Douglass B. Rupp <rupp@gnat.com>
1453 * adaint.c: Minor cleanups.
1455 2001-12-04 Douglass B. Rupp <rupp@gnat.com>
1457 * adaint.c: Do not use utime.h on vxworks.
1459 2001-12-04 Arnaud Charlet <charlet@gnat.com>
1461 * Makefile.adalib: Clarify step 3 (use of gnat.adc) as it causes
1462 more confusion than it solves.
1464 2001-12-04 Geert bosch <bosch@gnat.com>
1466 * einfo.h, nmake.adb, nmake.ads, sinfo.h treeprs.ads: Regenerate.
1468 2001-12-04 Geert Bosch <bosch@gnat.com>
1470 * Makefile.in (update-sources): New target.
1471 For use by gcc_release script.
1473 2001-12-04 Ed Schonberg <schonber@gnat.com>
1475 * sem_prag.adb (Analyze_Pragma, case Validity_Checks): do not treat as
1476 a configuration pragma, it is now legal wherever a pragma can appear.
1478 2001-12-04 Zack Weinberg <zack@codesourcery.com>
1480 * Makefile.in: Don't set ALL. Delete @cross_defines@,
1481 @cross_overrides@, @build_overrides@ stanzas. INTERNAL_CFLAGS
1482 is now @CROSS@ -DIN_GCC; update comment.
1484 2001-12-04 Robert Dewar <dewar@gnat.com>
1486 * einfo.adb (Has_Pragma_Pure_Function): New flag.
1487 Fix problem that stopped ceinfo from working
1489 * einfo.ads (Has_Pragma_Pure_Function): New flag.
1491 * sem_prag.adb (Pure_Function): Set new flag Has_Pragma_Pure_Function.
1493 2001-12-04 Douglas B. Rupp <rupp@gnat.com>
1496 (File_Time_Stamp): New procedure.
1497 (Preserve_Mode): New boolean.
1498 (Write_Unit): Pass time stamp.
1499 Implement -p switch (preserve time stamps).
1501 * gnatcmd.adb (CHOP): Add translation for -p (/PRESERVE).
1503 * gnatchop.adb: Do usage info for -p switch
1505 * adaint.h (__gnat_set_file_time_name): New function
1507 * adaint.c (__gnat_set_file_time_name): Implement
1509 * adaint.h: Fix typo
1511 2001-12-03 Robert Dewar <dewar@gnat.com>
1513 * sinfo.ads: Minor reformatting. N_Freeze_Entity node does not
1514 have Associated_Node.
1516 2001-12-03 Robert Dewar <dewar@gnat.com>
1518 * prj-proc.adb: Minor reformatting
1520 * make.adb: Minor reformatting
1522 2001-12-03 Geert Bosch <bosch@gnat.com>
1524 * make.adb: Minor reformatting.
1526 2001-12-03 Robert Dewar <dewar@gnat.com>
1528 * sem_ch12.adb: Minor reformatting
1530 2001-12-03 Ed Schonberg <schonber@gnat.com>
1532 * sem_ch12.adb (Inline_Instance_Body): Use Save_Scope_Stack and
1533 push Standard on the stack before analyzing the instance body,
1534 in order to have a clean visibility environment.
1536 * sem_ch12.adb (Inline_Instance_Body): Remove redundant code.
1538 2001-12-03 Ed Schonberg <schonber@gnat.com>
1540 * sem_ch12.adb (Instantiate_Package_Body): Protect against double
1541 instantiation of a body that contains an inlined body.
1543 2001-12-03 Ed Schonberg <schonber@gnat.com>
1546 (Analyze_generic_subprogram_Declaration): Set outer_generic_scope,
1547 to prevent freezing within formal packages.
1548 (Freeze_Subprogram_Body): If body comes from another instance that
1549 appeared before its own body, place freeze node at end of current
1550 declarative part, to prevent a back-end crash.
1551 (Inline_Instance_Body): Handle properly a package instance within
1552 a subprogram instance that is a child unit.
1554 2001-12-01 Graham Stott <grahams@redhat.com>
1556 * Makefile.in (misc.o): Add missing $(srcdir) prefix
1557 and add optabs.h dependency.
1559 * misc.c: Include optabs.h
1560 (gnat_tree_code_type): Make static and const.
1561 (gnat_tree_code_length): Likewise.
1562 (gnat_tree_code_name): Likewise.
1563 (update_setjmp_buf): Obtain operands mode from insn_data.
1565 2001-11-29 Richard Henderson <rth@redhat.com>
1567 * init.c: Remove obsolete dwarf2 frame.h section.
1569 2001-11-29 Joseph S. Myers <jsm28@cam.ac.uk>
1571 * Make-lang.in (ada.generated-manpages): New dummy target.
1573 2001-11-29 Ed Schonberg <schonber@gnat.com>
1575 * g-os_lib.adb (Add_To_Command): use explicit loop to move string
1576 into Command, an array conversion is illegal here. Uncovered by
1579 2001/11/28 Geert Bosch <bosch@gnat.com>
1581 * init.c: Minor whitespace changes.
1583 2001-11-28 Doug Rupp <rupp@gnat.com>
1585 * init.c: (__gnat_install_handler,VMS): Increase size of alternate
1588 2001-11-28 Zack Weinberg <zack@codesourcery.com>
1590 * misc.c (gnat_expand_constant): Move declaration above
1591 definition of lang_hooks.
1592 (LANG_HOOKS_EXPAND_CONSTANT): Set to gnat_expand_constant.
1593 (gnat_init): lang_expand_constant no longer exists.
1595 (internal_error_function): Remove #ifdef HAVE_VPRINTF. We
1596 always have vprintf.
1597 (gnat_init): Always call set_internal_error_function.
1599 2001-11-27 Andreas Jaeger <aj@suse.de>
1601 * Makefile.in (stamp-tool_src_dir): Use symbolic link.
1603 2001-11-27 Laurent Guerby <guerby@acm.org>
1605 * Makefile.in: Regenerate Ada dependencies.
1607 2001-11-26 Richard Henderson <rth@redhat.com>
1609 * Make-lang.in (gnatbind, gnatmake, gnatbl, gnatchop, gnatcmd,
1610 gnatlink, gnatkr, gnatls, gnatmem, gnatprep, gnatpsta, gnatpsys,
1611 gnatxref, gnatfind, gnatlbr): Depend on CONFIG_H and prefix.o.
1613 2001-11-25 Laurent Guerby <guerby@acm.org>
1615 * sysdep.c (rts_get_*): Fix style.
1617 2001-11-19 Laurent Guerby <guerby@acm.org>
1619 * Makefile.in (INCLUDES_FOR_SUBDIR): Remove redundant system include
1620 since it is of no apparent use and cause warnings.
1622 2001-11-18 Neil Booth <neil@daikokuya.demon.co.uk>
1624 * misc.c (gnat_decode_option, gnat_init_options): Make definitions
1626 (gnat_init): Don't return NULL.
1627 (finish_parse): Remove.
1629 2001-11-17 Laurent Guerby <guerby@acm.org>
1631 * Make-lang.in (GNATLIBFLAGS): Add -W -Wall.
1632 * gigi.h (init_decl_processing): Rename to gnat_init_decl_processing.
1633 * io-aux.c: Provide K&R prototypes to all functions, reformat code.
1634 * lang-spec.h: Add missing struct field to silence warnings.
1635 * sysdep.c (rts_get_*): Provide K&R prototype.
1636 * sysdep.c (Unlock_Task, Lock_Task): Move to K&R prototype.
1637 * traceback.c (Unlock_Task, Lock_Task): Likewise.
1638 * tracebak.c (__gnat_backtrace): Remove unused variable.
1639 * utils.c (end_subprog_body): Move to K&R style.
1641 Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1643 * trans.c, utils2.c: Remove PALIGN parameter to get_inner_reference.
1645 2001-11-15 Neil Booth <neil@daikokuya.demon.co.uk>
1647 * misc.c (gnat_init): Change prototype. Include the
1648 functionality of the old init_parse and init_decl_processing.
1649 (gnat_init_decl_processing): New prototype.
1650 (init_parse): Remove.
1651 * utils.c (init_decl_processing): Rename gnat_init_decl_processing.
1653 2001-11-09 Neil Booth <neil@daikokuya.demon.co.uk>
1655 * misc.c (gnat_print_decl, gnat_print_type): Renamed.
1656 (LANG_HOOKS_PRINT_DECL, LANG_HOOKS_PRINT_TYPE): Override.
1657 (print_lang_statistics, lang_print_xnode, print_lang_identifier,
1658 set_yydebug): Remove.
1660 2001-11-09 Neil Booth <neil@daikokuya.demon.co.uk>
1662 * misc.c (LANG_HOOKS_NAME, LANG_HOOKS_IDENTIFIER_SIZE): Override.
1663 (struct lang_hooks): Constify.
1664 (language_string, lang_identify): Remove.
1665 * utils.c (init_decl_processing): Update.
1667 2001-11-06 Neil Booth <neil@cat.daikokuya.demon.co.uk>
1669 * misc.c: Include langhooks-def.h.
1670 * Makefile.in: Update.
1672 2001-10-30 Robert Dewar <dewar@gnat.com>
1675 (Check_Identifier): Rewrite circuit to be compatible with use of letters
1676 in the upper half of ASCII.
1677 (Check_Identifier): Minor reformatting
1679 2001-10-30 Geert Bosch <bosch@gnat.com>
1681 * (Associated_Node, Set_Associated_Node): Do not check for
1684 2001-10-30 Robert Dewar <dewar@gnat.com>
1686 * a-reatim.ads: Minor reformatting
1688 2001-10-30 Robert Dewar <dewar@gnat.com>
1690 * gnatdll.adb: Minor reformatting throughout. Many ??? added for
1691 undocumented declarations.
1693 2001-10-30 Pascal Obry <obry@gnat.com>
1695 * gnatdll.adb (Parse_Command_Line): handle -g option to be passed
1696 to the binder and linker.
1699 * mdll.ads: Fix layout. Update copyright notice.
1701 * mdll.adb: Fix layout. Update copyright notice.
1703 2001-10-30 Robert Dewar <dewar@gnat.com>
1705 * usage.adb: Minor fix to output for -gnaty.
1707 2001-10-30 Ed Schonberg <schonber@gnat.com>
1709 * a-reatim.ads: Makes Seconds_Count into a 64-bit integer,
1710 to accommodate all its possible values.
1712 * a-reatim.adb (Split): Special-case handling of Time_Span_First
1713 and of small absolute values of T.
1715 2001-10-30 Richard Kenner <kenner@gnat.com>
1717 * misc.c (gnat_expand_expr, case NULL_EXPR): Remove call to
1718 set_mem_attributes since not needed and wrong if RESULT if a REG;
1719 fixes ACATS failures.
1721 2001-10-30 Geert Bosch <bosch@gnat.com>
1723 * 86numaux.adb, a-tigeau.ads, a-wtgeau.ads, fname-sf.ads, g-traceb.ads,
1724 s-tasdeb.ads, sem_maps.ads: Add 2001 to copyright notice.
1726 2001-10-30 Robert Dewar <dewar@gnat.com>
1728 * bindusg.adb: Undocument -f switch.
1730 * gnatcmd.adb: Remove /FULL_ELABORATION.
1732 * opt.ads (Force_RM_Elaboration_Order): Document that this is
1735 * gnatbind.adb: Output new warning for use of obsolescent -f switch.
1737 * gnatbind.adb: Minor update of warning msg.
1739 2001-10-30 Vincent Celier <celier@gnat.com>
1741 * gnatcmd.adb (MAKE, BIND, LINK, LIST, FIND, XREF): Add translations
1742 for project file switches (-P (/PROJECT_FILE=),
1743 -X (/EXTERNAL_REFERENCE=) and -vPx (/PROJECT_FILE_VERBOSITY=DEFAULT
1746 2001-10-30 Geert Bosch <bosch@gnat.com>
1748 * decl.c: Minor whitespace fixes.
1750 2001-10-30 Richard Kenner <kenner@gnat.com>
1752 * utils2.c (build_allocator): Test for SIZE overflow in array case too
1754 2001-10-30 Geert Bosch <bosch@gnat.com>
1756 * ali-util.adb (Initialize_Checksum): Use out-mode instead of in out.
1757 Found due to GCC 3.0 warning of using uninitialized value.
1760 (Get_Max_Size): Use variant record for tracking value/expression.
1761 Makes logic clearer and prevents warnings for uninitialized variables.
1762 (Layout_Array_Type): Use variant record for tracking value/expression.
1763 Makes logic clearer and prevents warnings for uninitialized variables.
1765 2001-10-30 Robert Dewar <dewar@gnat.com>
1767 * lib.adb: Minor reformatting
1769 * s-taprop.ads: Minor reformatting
1771 2001-10-29 Laurent Guerby <guerby@acm.org>
1774 (Raise_From_Signal_Handler, Propagate_Signal_Exception): Make arg
1776 (_gnat_error_handler): Make MSG const.
1778 2001-10-29 Richard Kenner <kenner@gnat.com>
1780 * sysdep.c: Fix localtime_r problem on LynxOS.
1781 Also remove #elif to avoid warnings.
1783 * misc.c (yyparse): Don't set up and register jmpbuf; remove decls
1786 * decl.c (annotate_value): Make SIZE unsigned to avoid warning.
1788 2001-10-28 Joseph S. Myers <jsm28@cam.ac.uk>
1790 * 86numaux.adb, a-tigeau.ads, a-wtgeau.ads, decl.c, exp_ch6.adb,
1791 exp_ch9.adb, exp_util.adb, fname-sf.ads, freeze.ads, g-awk.adb,
1792 g-comlin.ads, g-dirope.adb, g-dyntab.ads, g-socket.ads,
1793 g-table.ads, g-traceb.ads, gnat-style.texi, gnatchop.adb, init.c,
1794 layout.adb, layout.ads, mdllfile.ads, mlib-fil.ads, osint.ads,
1795 s-fatgen.adb, s-imgrea.adb, s-taprop.ads, s-tasdeb.ads,
1796 sem_aggr.adb, sem_attr.adb, sem_case.ads, sem_ch13.adb,
1797 sem_ch3.adb, sem_elab.adb, sem_maps.ads, sem_res.adb,
1798 sem_util.ads, sinfo.ads, sinput.ads, table.adb, table.ads,
1799 types.ads, urealp.adb: Fix spelling errors.
1801 2001-10-27 Laurent Guerby <guerby@acm.org>
1803 * trans.c (gigi): Fix non determinism leading to bootstrap
1804 comparison failures for debugging information.
1806 2001-10-26 Florian Weimer <fw@deneb.enyo.de>
1808 * gnat_rm.texi: Use @./@: where appropriate.
1810 2001-10-26 Robert Dewar <dewar@gnat.com>
1812 * sinfo.adb: Define Associated_Node to overlap Entity field. Cleanup.
1814 2001-10-26 Richard Kenner <kenner@gnat.com>
1816 * gmem.c (__gnat_gmem_read_next): Properly check for EOF
1818 2001-10-26 Richard Kenner <kenner@gnat.com>
1820 * decl.c (validate_size): Modify message for bad size to avoid
1821 implication that compiler is modifying the size.
1823 2001-10-26 Robert Dewar <dewar@gnat.com>
1825 * prj-util.adb: Minor reformatting. Fix bad header format.
1827 2001-10-26 Robert Dewar <dewar@gnat.com>
1829 * sinfo.ads: Define Associated_Node to overlap Entity field. Cleanup.
1831 * sinfo.ads: Clarify use of Associated_Node (documentation only).
1833 * sem_ch12.adb: Change Node4 to Associated_Node. Change
1834 Associated_Node to Get_Associated_Node. Put use of Unchecked_Access
1835 much more narrowly in places where needed. These are cleanups.
1837 2001-10-26 Joel Brobecker <brobecke@gnat.com>
1839 * 5zosinte.ads (null_pthread): new constant.
1842 (Initialize_TCB): Initialize thread ID to null, to be able to verify
1843 later that this field has been set.
1844 (Finalize_TCB): ditto.
1845 (Suspend_Task): Verify that the thread ID is not null before using it.
1846 (Resume_Task): ditto.
1849 (Resume_All_Tasks): Lock the tasks list before using it.
1850 (Suspend_All_Tasks): ditto.
1852 2001-10-26 Richard Kenner <kenner@gnat.com>
1854 * decl.c (gnat_to_gnu_entity, case E_General_Access_Type):
1855 Make constant variant of designated type for Is_Access_Constant.
1856 Call update_pointer_to with main variant.
1858 * trans.c (process_freeze_entity, process_type):
1859 Call update_pointer_to on main variant.
1861 * utils.c (update_pointer_to): Make corresponding variant for NEW_TYPE.
1862 If main variant, update all other variants.
1864 * utils2.c (build_unary_op, case INDIRECT_REF): No longer set
1867 2001-10-26 Robert Dewar <dewar@gnat.com>
1869 * prj-util.adb: Minor reformatting
1871 2001-10-26 Robert Dewar <dewar@gnat.com>
1873 * prj-util.adb: Minor reformatting
1875 2001-10-26 Robert Dewar <dewar@gnat.com>
1877 * prj-attr.adb: Minor reformatting throughout
1879 2001-10-26 Robert Dewar <dewar@gnat.com>
1881 * prj-attr.ads: Minor reformatting
1882 Add ??? comment (this whole spec has almost no comments)
1884 2001-10-26 Vincent Celier <celier@gnat.com>
1886 * g-os_lib.adb (Normalize_Pathname): Preserve the double slash
1887 ("//") that precede the drive letter on Interix.
1889 2001-10-26 Geert Bosch <bosch@gnat.com>
1891 * gnat_rm.texi: Add GNAT Reference Manual.
1893 2001-10-25 Robert Dewar <dewar@gnat.com>
1895 * sem_ch8.adb (Analyze_Package_Renaming): Skip analysis if Name
1896 is Error. Similar change for other renaming cases.
1898 2001-10-25 Robert Dewar <dewar@gnat.com>
1900 * s-atacco.ads: Add pragma Inline_Always for functions.
1901 Fix header format. Add copyright 2001
1903 2001-10-25 Ed Schonberg <schonber@gnat.com>
1905 * par-ch3.adb (P_Subtype_Mark_Resync): for an anonymous array
1906 return Error rather than Empty so that analysis can proceed.
1908 2001-10-25 Ed Schonberg <schonber@gnat.com>
1910 * sem_util.adb (Enter_Name): better handling of cascaded error
1911 messages when a unit appears in its own context.
1913 2001-10-25 Ed Schonberg <schonber@gnat.com>
1915 * sem_util.adb (Defining_Entity): in case of error, attach created
1916 entity to specification, so that semantic analysis can proceed.
1918 2001-10-25 Robert Dewar <dewar@gnat.com>
1921 (Defining_Entity): Deal with Error.
1922 (Process_End_Label): Deal with bad end label for.
1924 2001-10-25 Ed Schonberg <schonber@gnat.com>
1926 * sem_elab.adb (Check_A_Call): refine message when call is in an
1927 instance but callee is not declared in the generic unit.
1929 2001-10-25 Ed Schonberg <schonber@gnat.com>
1931 * sem_elab.adb (Check_A_Call): check for renaming before finding the
1932 enclosing unit, which may already be different from the calling unit.
1934 2001-10-25 Geert Bosch <bosch@gnat.com>
1936 * 4gintnam.ads: fix header format.
1938 2001-10-25 Ed Schonberg <schonber@gnat.com>
1940 * sem_res.adb (Resolve_Call): if the call is actually an indexing
1941 operation on the result of a parameterless call, perform elaboration
1942 check after the node has been properly rewritten.
1944 * sem_ch12.adb (Copy_Generic_Node): after the proper body has been
1945 inlined within the generic tree, the defining identifier is not a
1948 2001-10-25 Ed Schonberg <schonber@gnat.com>
1950 * sem_res.adb (Resolve): special-case resolution of Null in an
1951 instance or an inlined body to avoid view conflicts.
1953 * sem_ch12.adb (Copy_Generic_Node): for allocators, check for view
1954 compatibility by retrieving the access type of the generic copy.
1956 2001-10-25 Robert Dewar <dewar@gnat.com>
1959 (Analyze_Number_Declaration): Handle error expression.
1960 (Signed_Integer_Type_Declaration): Handle error bound.
1961 (Analyze_Subtype_Indication): Handle error range.
1963 * sem_util.adb (Get_Index_Bounds): Check for Error.
1965 2001-10-25 Robert Dewar <dewar@gnat.com>
1967 * restrict.adb (Set_No_Run_Time_Mode): Set Discard_Names as default
1968 in no run time mode.
1970 2001-10-25 Pascal Obry <obry@gnat.com>
1972 * gnatmem.adb (Read_Next): fix Curs2 value to properly handle quiet
1973 mode case for ALLOC case.
1975 * gnatmem.adb (Read_Next): correctly fix parsing in Quiet mode on
1976 all platforms. Improvement of last change.
1978 2001-10-25 Robert Dewar <dewar@gnat.com>
1980 * exp_ch4.adb (Expand_N_Allocator): Minor reformatting.
1982 2001-10-25 Geert Bosch <bosch@gnat.com>
1984 * osint.adb (Is_Relative): Remove duplicate.
1986 2001-10-25 Pascal Obry <obry@gnat.com>
1988 * osint.adb (Read_Default_Search_Dirs): correctly detect relative
1989 pathnames in UNIX and DOS style with drive letter.
1990 (Is_Relative): new routine.
1992 * osint.adb: Minor reformatting
1994 * osint.adb (Is_Relative): implementation using
1995 GNAT.OS_Lib.Is_Absolute_Path. Better fix.
1997 2001-10-25 Pascal Obry <obry@gnat.com>
1999 * g-dirope.adb (Basename): correctly compute offset between the
2000 original Path and the translated one.
2002 * g-dirope.adb: (Base_Name): add some comments.
2004 2001-10-25 Robert Dewar <dewar@gnat.com>
2006 * exp_imgv.adb (Expand_Image_Attribute): Defend against bad use
2007 in HIE mode, avoids compilation abandoned message
2009 * exp_imgv.adb: Correct typo in previous change
2011 * exp_imgv.adb: Correct typo in previous change (not my day!)
2013 2001-10-25 Robert Dewar <dewar@gnat.com>
2015 * s-tpinop.ads: Add 2001 to copyright notice. Fix header format.
2017 2001-10-25 Pascal Obry <obry@gnat.com>
2019 * g-awk.ads: Move all pragma inlines next to the routine
2020 declarations. This is more uniform with other GNAT spec.
2022 2001-10-22 Geert Bosch <bosch@gnat.com>
2024 * Make-lang.in (gnattools, cross-gnattools): Remove gnatmem.
2026 2001-10-19 Geert Bosch <bosch@gnat.com>
2028 * Makefile.in (tools, gnattools): Remove gnatmem.
2030 2001-10-17 Richard Henderson <rth@redhat.com>
2032 * Makefile.in (misc.o): Depend on langhooks.h.
2033 * misc.c: Include it.
2034 (LANG_HOOKS_INIT, LANG_HOOKS_INIT_OPTIONS): New.
2035 (LANG_HOOKS_DECODE_OPTION): New.
2036 (lang_hooks): Use LANG_HOOKS_INITIALIZER.
2038 2001-10-16 Florian Weimer <fw@deneb.enyo.de>
2040 * trans.c (tree_transform): Adjust to recent change in
2041 expand_asm_operands to implement named asm operands.
2043 2001-10-11 Ed Schonberg <schonber@gnat.com>
2045 * exp_ch8.adb (Expand_N_Object_Renaming_Declaration): Bugfix in
2046 renaming of discriminant for mutable record type.
2048 2001-10-11 Robert Dewar <dewar@gnat.com>
2050 * validsw.adb: Properly save -gnatVn status.
2052 2001-10-11 Robert Dewar <dewar@gnat.com>
2054 * usage.adb: Add lines for V switch.
2056 * gnatcmd.adb (COMPILE): Revise translations for -gnatV
2057 (/VALIDITY_CHECKING).
2059 2001-10-11 Ed Schonberg <schonber@gnat.com>
2061 * sem_type.adb (Add_One_Interp): an operator for a type declared in
2062 an extension of System is known to be visible.
2064 2001-10-11 Ed Schonberg <schonber@gnat.com>
2066 * sem_eval.adb (Compare_Fixup): get the bounds of a String_Literal
2067 properly. Fixes regression on ACATS C34005G.
2069 2001-10-11 Robert Dewar <dewar@gnat.com>
2071 * sem_ch5.adb (Analyze_Iteration_Scheme): Suppress warning on null
2072 loop in generic instance, since this is likely not very useful.
2074 2001-10-11 Robert Dewar <dewar@gnat.com>
2076 * restrict.adb (Disallow in No_Run_Time_Mode): Properly specialize
2077 the error message for high integrity mode.
2079 * rtsfind.adb (RTE): Give message if we try to find an entity that
2080 is not available in high integrity mode.
2083 (OK_To_Use_In_HIE_Mode): New array.
2084 (RTE): May return Empty in high integrity mode.
2086 * rtsfind.ads (OK_To_Use_In_No_Run_Time_Mode): New name for
2087 OK_To_Use_In_HIE_Mode, now includes System_FAT_xxx.
2089 * sem_ch6.adb (Analyze_Subprogram_Body): Kill body in predefined
2090 unit if not inlined always and in no runtime mode. Fixes problem
2091 caused by new Rtsfind changes.
2093 * sem_ch6.adb (Analyze_Subrogram_Body): Do not Check_References if
2096 * rtsfind.adb (RTE): Make sure we do not try to load unit after
2097 giving message for entity not available in high integrity mode.
2099 2001-10-11 Pascal Obry <obry@gnat.com>
2101 * impunit.adb: Add GNAT.CRC32.
2103 2001-10-11 Ed Schonberg <schonber@gnat.com>
2105 * exp_fixd.adb (Expand_Multiply_Fixed_By_Fixed_Giving_Fixed): handle
2106 properly the case where one universal operand in a non-static
2107 exponentiation of a real literal.
2109 2001-10-11 Ed Schonberg <schonber@gnat.com>
2111 * exp_ch7.adb (Find_Final_List): for a type appearing in a with_type
2112 clause, return the gobal finalization list, for lack of anthing else.
2114 2001-10-11 Ed Schonberg <schonber@gnat.com>
2116 * exp_ch7.adb (Make_Transient_Block): if statement is within
2117 exception handler, always use new transient scope to place Clean
2120 2001-10-11 Pascal Obry <obry@gnat.com>
2123 (GNAT_ADA_OBJS): add g-crc32.o, a-tags.o, a-stream.o
2124 (GNATBIND_OBJS): add g-crc32.o, a-tags.o, a-stream.o
2125 (GNATLS_RTL_OBJS): add g-crc32.o
2126 (GNATMAKE_RTL_OBJS): add g-crc32.o
2129 (CRC_Match): new function.
2130 (Get_File_Checksum): renamed Get_File_CRC. Use the GNAT.CRC32 unit
2131 instead of the previous simple checksum algorithm.
2132 (Time_Stamp_Mismatch): use CRC_Match for comparison.
2133 (Set_Source_Table): idem.
2136 (Get_File_Checksum): renamed Get_File_CRC as now we compute CRC
2137 instead of simple checksum.
2138 (CRC_Match): new function.
2139 (CRC_Error): new constant.
2141 * ali.adb (Scan_ALI): rename variable Chk to CRC as we are handling
2142 a CRC now and not a simple checksum. A CRC uses lower-case hex
2143 letters, fixes ambiguity in parsing.
2145 * ali.ads (Sdep_Record.Checksum): renamed Sdep_Record.CRC as this
2146 is what this variable will store.
2148 * bcheck.adb: Change reference to chechsum in comments by CRC.
2149 (Check_Consistency): Rename Get_File_Checksum to Get_File_CRC.
2150 rename All_Checksum_Match to All_CRC_Match. Change due to API
2151 renaming since now GNAT does not use a simple checksum but a
2152 CRC using GNAT.CRC32.
2154 * gnatls.adb: Rename Checksum to CRC in many places, we use a CRC
2155 now and not anymore a simple checksum.
2157 * lib-load.adb: Use Source_CRC instead of Source_Checksum in many
2160 * lib-writ.adb (Write_ALI): Use Source_CRC instead of Source_Checksum.
2163 (Restore_Scan_State): rename Checksum to CRC.
2164 (Save_Scan_State): idem.
2168 (Checksum): rename to CRC.
2169 (Saved_Scan_State): Save_Checksum field renamed to Save_CRC
2171 * scn-nlit.adb: Rename many Accumulate_Checksum to Update (from
2172 GNAT.CRC32). Update copyright notice.
2174 * scn-slit.adb: Rename many Accumulate_Checksum to Update (from
2175 GNAT.CRC32). Update copyright notice.
2178 (Accumulate_Checksum): removed.
2179 (Update): new procedure. Add a wide-character into the CRC.
2182 (Complete_Source_File_Entry): use CRC32 instead of simple checksum.
2183 (Load_File): fix initialization of S (change Source_Checksum to
2186 * sinput-p.adb (Load_Project_File): rename Source_Checksum to
2187 Source_CRC in S initialization.
2189 * sinput.adb (Source_Checksum): renamed to Source_CRC.
2191 * sinput.ads (Source_Checksum): renamed to Source_CRC.
2192 Update comments for the CRC.
2194 * types.adb (Hex): Use lowercase for the letter part.
2196 * types.ads (Get_Hex_String): Returns the hexadecimal representation
2197 for a word. This is currently used only for CRC. In previous version,
2198 the checksum was using a representation with all letter being
2199 upper-case. With the new implementation (using CRC) we do not remove
2200 the 32th bit of the CRC, so we can have an upper-case starting letter
2201 in the CRC. This is not possible to parse in Scan_ALI (ali.adb).
2202 It is ambigous since the CRC was optional and could be followed by
2203 options like EB, EE. So now this routines uses lower-case letter for
2204 the hexadecimal representation. Strange enough only lower case letters
2205 where checked in Scan_ALI (even if this was not a possible case).
2207 * gnatvsn.ads (Library_Version): changed to 3.15a.
2209 * s-crc32.ads: Initial version from GNAT.CRC32. This is the version
2212 * s-crc32.adb: Initial version from GNAT.CRC32. This is the version
2215 * ali-util.adb: Redo previous change to avoid using word CRC everywhere
2216 Add 2001 to copyright notice
2217 (Accumulate_Checksum): Modify to use System.CRC32.
2219 * ali-util.ads: Redo changes of previous revision to continue to use
2220 the word Checksum. Add 2001 to copyright notice.
2222 * ali.adb: Undo some of previous changes, not needed.
2223 Keep the change for lower case letters in the checksum.
2225 * ali.ads: Undo previous change not needed.
2227 * bcheck.adb: Undo most of previous change, not needed.
2228 But do use Checksums_Match for checksum comparison.
2230 * gnatls.adb: Undo most of previous change, not needed.
2231 But do use Checksums_Match for comparing checksums.
2233 * lib-load.adb: Undo previous change, not needed.
2235 * lib-writ.adb: Undo previous change, not needed.
2237 * lib-writ.ads: Document that checksums use lower case,
2238 not upper case letters.
2240 * scans.adb: Undo previous change, not needed
2242 * scans.ads: Undo previous change, not needed.
2244 * scn-nlit.adb: Undo previous changes, not needed.
2246 * scn-slit.adb: Undo previous change, not needed. Fix header format.
2249 (Accumulate_Checksum): Use System.CRC32.
2250 (Initialize_Checksum): New procedure.
2251 Remove other changes of previous revision.
2253 * sinput-p.adb: Undo previous change, not needed.
2255 * sinput.adb: Undo previous change, not needed.
2257 * sinput-l.adb: Undo previous change, not needed.
2259 * sinput.ads: Undo previous change, not needed. Keep only comment
2260 on new checksum algorithm
2262 * Makefile.in: Add s-crc32 as needed, remove g-crc32.
2263 Also remove a-tags and a-stream from GNAT sources.
2265 * ali.adb (Scan_ALI): fix typo introduce in latest check-in.
2267 * Makefile.in (GNATRTL_NONTASKING_OBJS): Add g-crc32.o.
2269 2001-10-11 Geert Bosch <bosch@gnat.com>
2271 * einfo.h: Regenerate.
2273 * nmake.ads: Regenerate.
2275 * nmake.adb: Regenerate.
2277 * sinfo.h: Regenerate.
2279 * treeprs.adb: Regenerate.
2281 2001-10-10 Geert Bosch <bosch@gnat.com>
2283 * gnat-style.texi: New file describing coding guidelines for Ada.
2285 2001-10-10 Ed Schonberg <schonber@gnat.com>
2287 * einfo.adb (Write_Entity_Flags): Elaboration_Entity_Required
2290 2001-10-10 Geert Bosch <bosch@gnat.com>
2292 * snames.ads: Add new names for project facility.
2294 * snames.adb: Update to reflect snames.ads changes.
2296 * snames.h: Update to reflect snames.ads changes.
2298 2001-10-10 Vincent Celier <celier@gnat.com>
2301 (Add_Switches): reflect the changes for the switches attributes
2302 Default_Switches indexed by the programming language,
2303 Switches indexed by the file name.
2304 (Collect_Arguments_And_Compile): Idem.
2305 Reflect the attribute name changes.
2308 (Initialisation_Data): Change the names of some packages and
2310 (Initialize): process case insensitive associative arrays.
2313 (Attribute_Kind): Remove Both, add Case_Insensitive_Associative_Array.
2316 (Parse_Attribute_Declaration): For case insensitive associative
2317 arrays, set the index string to lower case.
2320 Reflect the changes of the project attributes.
2323 Replace Check_Naming_Scheme by Ada_Check and
2324 Language_Independent_Check.
2327 Replaced Check_Naming_Scheme by 2 procedures:
2328 Ada_Check and Language_Independent_Check.
2331 (Process_Declarative_Items): For case-insensitive associative
2332 arrays, set the index string to lower case.
2333 (Recursive_Check): Call Prj.Nmsc.Ada_Check, instead of
2334 Prj.Nmsc.Check_Naming_Scheme.
2337 (Case_Insensitive): New function
2338 (Set_Case_Insensitive): New procedure
2341 (Case_Insensitive): New function
2342 (Set_Case_Insensitive): New procedure
2343 (Project_Node_Record): New flag Case_Insensitive.
2346 (Value_Of): new function to get the string value of a single
2347 string variable or attribute.
2350 (Value_Of): new function to get the string value of a single
2351 string variable or attribute.
2354 (Ada_Default_Spec_Suffix): New function
2355 (Ada_Default_Impl_Suffix): New function
2356 Change definitions of several constants to reflect
2357 new components of record types.
2360 (Naming_Data): Change several components to reflect new
2361 elements of naming schemes.
2362 (Project_Data): New flags Sources_Present and
2363 Language_Independent_Checked.
2364 (Ada_Default_Spec_Suffix): New function.
2365 (Ada_Default_Impl_Suffix): New function.
2368 Modification of predefined names for project manager: added
2369 Implementation, Specification_Exceptions, Implementation_Exceptions,
2370 Specification_Suffix, Implementation_Suffix, Separate_Suffix,
2371 Default_Switches, _Languages, Builder, Cross_Reference,
2372 Finder. Removed Body_Part, Specification_Append, Body_Append,
2373 Separate_Append, Gnatmake, Gnatxref, Gnatfind, Gnatbind,
2376 * prj.ads: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
2379 * prj-nmsc.adb (Ada_Check): Test that Separate_Suffix is defaulted,
2380 not that it is Nil_Variable_Value.
2382 * prj.ads: Add ??? for uncommented declarations
2384 2001-10-10 Ed Schonberg <schonber@gnat.com>
2386 * sem_prag.adb: (Analyze_Pragma, case External): If entity is a
2387 constant, do not indicate possible modification, so that gigi can
2388 treat it as a bona fide constant.
2390 2001-10-10 Robert Dewar <dewar@gnat.com>
2392 * sem_prag.adb: Add processing for pragma External.
2394 * snames.ads: Add entry for pragma External.
2396 * par-prag.adb: Add pragma External.
2398 * snames.adb: Updated to match snames.ads.
2400 2001-10-10 Ed Schonberg <schonber@gnat.com>
2402 * exp_ch4.adb (Expand_N_Allocator): Generate meaningful names for
2403 a dynamic task if the allocator appears in an indexed assignment
2404 or selected component assignment.
2406 * exp_util.adb (Build_Task_Array_Image, Build_Task_Record_Image):
2407 For a dynamic task in an assignment statement, use target of
2408 assignment to generate meaningful name.
2410 2001-10-10 Ed Schonberg <schonber@gnat.com>
2412 * einfo.adb (Write_Field19_Name): Body_Entity is also defined for
2415 * einfo.ads: Body_Entity is also defined for generic package.
2416 Documentation change only
2418 * exp_aggr.adb (Build_Array_Aggr_Code): When expanding an
2419 others_choice for a discriminated component initialization,
2420 convert discriminant references into the corresponding discriminals.
2422 * exp_ch3.adb (Get_Simple_Init_Val): Add qualification to aggregate
2423 only if original type is private and expression has to be wrapped
2427 (Apply_Constraint_Check): Do not perform length check
2428 if expression is an aggregate with only an others_choice.
2429 (Length_N_Cond): two references to the same in_parameter
2430 (typically the discriminal in an init_proc) denote the same value.
2431 Two useful optimization uncovered by bugfixes above.
2433 2001-10-10 Robert Dewar <dewar@gnat.com>
2435 * xeinfo.adb: Change int to char in translation of enumeration types.
2436 This fixes a problem in the C representation of component alignment.
2437 Add 2001 to copyright notice
2439 2001-10-10 Richard Kenner <kenner@gnat.com>
2441 * decl.c: (validate_size): Do check size of object of integral type
2442 if it is a packed array type.
2444 2001-10-10 Richard Kenner <kenner@gnat.com>
2446 * decl.c: (gnat_to_gnu_entity, case object): Also materialize
2447 VAR_DECL for constant if not Is_Public but -O0.
2449 2001-10-10 Richard Kenner <kenner@gnat.com>
2451 * misc.c (struct lang_hooks): Add new initializer to match GCC change.
2453 2001-10-10 Geert Bosch <bosch@gnat.com>
2455 * xnmake.adb (XNmake): Fix handling of -s/-b options. No longer
2456 use '/' as switch character, allowing for absolute file names.
2458 2001-10-09 Joseph S. Myers <jsm28@cam.ac.uk>
2460 * 4gintnam.ads, Make-lang.in, Makefile.in, config-lang.in: Update
2463 2001-10-08 Geert Bosch <bosch@gnat.com>
2465 * Makefile.in (treeprs.ads, einfo.h, sinfo.h, nmake.adb, nmake.ads):
2466 Automatically build utilities when files need to be regenerated.
2468 2001-10-08 Geert Bosch <bosch@gnat.com>
2470 * xsnames.adb: New utility for updating snames.ads and snames.adb
2472 2001-10-08 Zack Weinberg <zack@codesourcery.com>
2474 * Make-lang.in (ADAFLAGS): Add -W -Wall.
2475 (ADA_FLAGS_TO_PASS): Set ADA_CFLAGS=$(CFLAGS) also.
2476 (gnat1): Also depend on attribs.o.
2477 (gnatlib, gnatlib-shared): Set CC and ADAC in recursive make.
2478 * Makefile.in (X_ADAFLAGS, T_ADAFLAGS): New.
2479 (ADAC): Set to @ADAC@ in stage1, $(CC) later.
2480 (ADAFLAGS): Add -W -Wall.
2481 (ALL_ADAFLAGS, MOST_ADAFLAGS): Add X_ADAFLAGS and T_ADAFLAGS;
2484 (.adb.o, .ads.o, a-numaux.o, a-teioed.o, s-interr.o,
2485 s-taskin.o, sdefault.o, s-tasdeb.o, s-vaflop.o, a-except.o,
2486 s-assert.o, s-stalib.o, s-memory.o, memtrack.o, mlib-tgt.o):
2487 Use $(ADAC), not $(CC), as compilation command.
2489 (gnattools): Depend directly on tools to build, don't use
2491 (gnatlib): Set ADA_CFLAGS=$(GNATLIBCFLAGS) in recursive make.
2493 * einfo.h, sinfo.h: New files (autogenerated).
2495 2001-10-08 Richard Henderson <rth@redhat.com>
2497 * comperr.adb (Abort_In_Progress): New.
2498 (Compiler_Abort): Use it to prevent recursion.
2500 2001-10-08 Robert Dewar <dewar@gnat.com>
2502 * atree.adb: Set Error_Posted in Error node, helps error recovery.
2504 * par-endh.adb (Output_End_Expected): We should also not test
2505 Error_Posted on the Error node, since now it is always set.
2507 * cstand.adb (Create_Standard): Set Etype of Error to Any_Type
2508 to help error recovery. Part of general work on 9407-004.
2510 * par.adb: Add ??? for misuse of error
2513 (Resolve): Defend against Error, fixes 9407-003.
2514 (Resolve_Discrete_Subtype_Indication): Defend against Error.
2516 * sinfo.ads (N_Error): Now has Etype field (which will be set
2517 to Any_Type to help error recovery).
2519 2001-10-08 Richard Kenner (kenner@gnat.com)
2521 * misc.c (gnat_expand_expr, case UNCHECKED_CONVERT_EXPR):
2522 Consistently set MEM attributes from expression; fixes
2523 bootstrap failure on x86.
2525 2001-10-08 Geert Bosch (bosch@gnat.com)
2527 * 5oosinte.adb: Add 2001 to copyright notice.
2529 2001-10-08 Geert Bosch (bosch@gnat.com)
2531 * ceinfo.adb: Add utility for consistency checking of einfo.ad[bs].
2533 * csinfo.adb: Add utility for consistency checking of sinfo.ad[bs].
2535 2001-10-07 Joseph S. Myers <jsm28@cam.ac.uk>
2537 * 5oosinte.adb: Fix spelling error of "separate" as "seperate".
2539 2001-10-05 Geert Bosch (bosch@gnat.com)
2541 * adaint.h: Small formatting fix.
2543 2001-10-04 Geert Bosch <bosch@gnat.com>
2545 * sysdep.c (__gnat_set_binary_mode, __gnat_set_text_mode):
2546 Arg is int, not FILE *, in dummy version of functions.
2548 * adaint.h (__gnat_set_binary_mode, __gnat_set_text_mode):
2549 Arg is int, not FILE *.
2551 2001-10-04 Geert Bosch <bosch@gnat.com>
2553 * 3lsoccon.ads: Added file, missed with initial check ins.
2555 * 4lintnam.ads: Fix header format.
2556 Change Linux to GNU/Linux.
2558 * 5iosinte.adb: Change Linux to GNU/Linux.
2560 * 5iosinte.ads: Change Linux to GNU/Linux.
2562 * 5itaprop.adb: Change Linux to GNU/Linux.
2564 * 5itaspri.ads: Change Linux to GNU/Linux.
2565 Update copyright notice.
2567 * 5lintman.adb: Change Linux to GNU/Linux.
2569 * 5lml-tgt.adb: Change Linux to GNU/Linux.
2571 * 5losinte.ads: Change Linux to GNU/Linux.
2573 * 5lsystem.ads: Change Linux to GNU/Linux.
2575 * 5qosinte.adb: Change Linux to GNU/Linux.
2577 * 5qosinte.ads: Change Linux to GNU/Linux.
2579 * 5qparame.ads: Change Linux to GNU/Linux.
2581 * 5qtaprop.adb: Change Linux to GNU/Linux.
2583 * 5qtaspri.ads: Change Linux to GNU/Linux.
2584 Add 2001 to copyright notice.
2586 * 5vintman.ads: Change Linux to GNU/Linux.
2587 Fix header format. Add 2001 to copyright notice.
2589 * g-soccon.ads: Change Linux to GNU/Linux.
2591 * g-trasym.ads: Change Linux to GNU/Linux.
2592 Add 2001 to copyright notice.
2594 * memtrack.adb: Change Linux to GNU/Linux.
2596 * s-intman.ads: Change Linux to GNU/Linux.
2597 Add 2001 to copyright notice. Fix header format.
2599 * s-stache.adb: Change Linux to GNU/Linux.
2601 * adaint.c: Change Linux to GNU/Linux.
2603 * cio.c: Change Linux to GNU/Linux.
2605 * cstreams.c: Change Linux to GNU/Linux.
2607 * init.c: Change Linux to GNU/Linux.
2609 * gmem.c: Change Linux to GNU/Linux.
2611 * tracebak.c: Change Linux to GNU/Linux.
2614 2001-10-02 Geert Bosch <bosch@gnat.com>
2616 * misc.c (insert_default_attributes): Add dummy version.