+2002-05-26 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * gnatvsn.ads (Gnat_Version_String): Change to "3.2 20020526
+ (experimental)".
+
+2002-05-23 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * Make-lang.in (CP, ECHO): Copy from Makefile.in.
+ (X_ADA_CFLAGS, T_ADA_CFLAGS, X_ADAFLAGS, T_ADAFLAGS): Likewise.
+ (ALL_ADAFLAGS, FORCE_DEBUG_ADAFLAGS, ADA_CFLAGS): Likewise.
+ (ALL_ADA_CFLAGS): Likewise.
+ (ADA_INCLUDES): Likewise.
+ Adapt for new working dir.
+ (GNATBIND): Use Makefile.in version.
+ (.SUFFIXES): Copy from Makefile.in.
+ (ada-warn): Define.
+ (.adb.o, .ads.o): Copy from Makefile.in.
+ Added $(OUTPUT_OPTION).
+ (GNAT1_C_OBJS): Moved from Makefile.in.
+ Prefix with ada subdir.
+ (GNAT_ADA_OBJS, GNAT1_ADA_OBJS, GNAT1_OBJS, GNATBIND_OBJS): Likewise.
+ (EXTRA_GNAT1_OBJS): Moved from Makefile.in.
+ Adapt for new working dir.
+ (EXTRA_GNATBIND_OBJS): Likewise.
+ (ADA_BACKEND): Moved from Makefile.in.
+ Renamed to avoid conflict with global BACKEND.
+ Use that one.
+ (TARGET_ADA_SRCS): Moved from Makefile.in.
+ (gnat1$(exeext)): Replaced recursive rule with Makefile.in version.
+ Use ADA_BACKEND.
+ (gnatbind$(exeext)): Replaced recursive rule with Makefile.in version.
+ (ada_extra_files): Moved from Makefile.in.
+ Prefix with ada subdir.
+ (ada/b_gnat1.c, ada/b_gnat1.o, ada/b_gnatb.c, ada/b_gnatb.o): Likewise.
+ (ada/treeprs.ads, ada/einfo.h, ada/sinfo.h, ada/nmake.adb): Likewise.
+ (ada/nmake.ads): Likewise.
+ (update-sources): Moved from Makefile.in.
+ Prefix with ada subdir.
+ (ada/sdefault.adb, ada/stamp-sdefault, ada/sdefault.o): Likewise.
+ (ADA_TREE_H): Likewise.
+ (ada/a-except.o, ada/s-assert.o, ada/s-memory.o): Likewise.
+ (ada/memtrack.o): Likewise.
+ (ada/adadecode.o): Likewise.
+ Update dependencies.
+ (ada/adaint.o): New.
+ (ada/argv.o): Moved from Makefile.in.
+ Prefix with ada subdir.
+ Update dependencies.
+ (ada/cstreams.o, ada/exit.o, ada/final.o, ada/link.o): Likewise.
+ (ada/cio.o, ada/init.o, ada/raise.o, ada/tracebak.o): Likewise.
+ (ada/cuintp.o, ada/decl.o, ada/misc.o): Moved from Makefile.in.
+ Prefix with ada subdir.
+ (ada/targtyps.o, ada/trans.o, ada/utils.o, ada/utils2.o): Likewise.
+ (GNAT DEPENDENCIES): Regenerate.
+ * Makefile.in (MACHMODE_H, RTL_H, TREE_H): Removed, provided by
+ toplevel Makefile.in.
+ (EXTRA_GNAT1_OBJS, EXTRA_GNATBIND_OBJS): Removed.
+ (TARGET_ADA_SRCS): Removed.
+ (GNAT1_C_OBJS, GNAT_ADA_OBJS, GNAT1_ADA_OBJS, GNAT1_OBJS): Likewise.
+ (GNATBIND_OBJS): Likewise.
+ (ADA_INCLUDE_DIR, ADA_RTL_OBJ_DIR): Moved here.
+ (BACKEND): Removed.
+ (../gnat1$(exeext), ../gnatbind$(exeext)): Likewise.
+ (TREE_H): Likewise.
+ (ada_extra_files): Likewise.
+ (b_gnat1.c, b_gnat1.o, b_gnatb.c, b_gnatb.o): Likewise.
+ (treeprs.ads, einfo.h, sinfo.h, nmake.adb, nmake.ads): Likewise.
+ (update-sources): Likewise.
+ (sdefault.adb, stamp-sdefault, sdefault.o): Likewise
+ (ADA_TREE_H): Likewise.
+ (adadecoce.o): Likewise.
+ (cuintp.o, decl.o, misc.o, trans.o, utils.o, utils2.o): Likewise.
+ (GNAT DEPENDENCIES): Likewise.
+
+2002-05-16 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * Makefile.adalib: Allow for PWDCMD to override hardcoded pwd.
+ * Makefile.in: Likewise.
+
+2002-05-14 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * Make-lang.in (gnat1$(exeext), gnatbind$(exeext), gnattools):
+ Restore $(CONFIG_H) and prefix.o dependencies.
+ (ada.stage[1-4]): Depend on stage?-start.
+
+ * Makefile.in (b_gnatb.c): Depend on interfac.o.
+
+2002-05-02 Jim Wilson <wilson@redhat.com>
+
+ * utils.c (finish_record_type): Change record_size to record_type.
+
+2001-05-02 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * ada/Makefile.in (X_ADA_CFLAGS, T_ADA_CFLAGS): New fragment overrides.
+ (ALL_ADA_CFLAGS): Define. Replace ADA_CFLAGS with ALL_ADA_CFLAGS in
+ ALL_ADAFLAGS, MOST_ADAFLAGS, and all compilations using CC.
+
+2002-04-25 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * misc.c (gnat_parse_file): Update.
+
+2002-04-24 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * misc.c (gnat_init): Don't set lang_attribute_common.
+
+2002-04-21 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * gnat_rm.texi: Use @ifnottex instead of @ifinfo.
+
+2002-04-21 Florian Weimer <fw@deneb.enyo.de>
+
+ * gnat_ug.texi: New file.
+
+ * gnat_rm.texi: Do not include texiplus.texi. Include fdl.texi
+ instead of gfdl.texi
+
+ * xgnatug.adb, ug_words: New files.
+
+ * Makefile.in (doc, dvi): New targets. Build gnat_ug_*,
+ gnat_rm and gnat-style manuals.
+
+2002-04-18 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * gigi.h (incomplete_type_error): Remove.
+ * utils.c (incomplete_type_error): Remove.
+
+2002-04-16 Mark Mitchell <mark@codesourcery.com>
+
+ * trans.c (tree_transform): Add has_scope argument to
+ expand_start_stmt_expr.
+
+2002-04-04 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * gigi.h (truthvalue_conversion): Rename.
+ * misc.c (LANG_HOOKS_TRUTHVALUE_CONVERSION): Redefine.
+ * trans.c (tree_transform): Update.
+ * utils2.c (truthvalue_conversion): Rename, update.
+ (build_binary_op, build_unary_op): Update.
+
+2002-04-04 Laurent Guerby <guerby@acm.org>
+
+ * make.adb: Implement -margs, remove restriction about file name placement.
+ * makeusg.adb: Documentation update.
+ * Makefile.in (TOOLS_FLAGS_TO_PASS): Add VPATH=$(fsrcdir).
+ * Makefile.in (gnattools3): Comment out, gnatmem does not build without libaddr2line.
+
+2002-04-04 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * utils.c (create_subprog_decl): Use SET_DECL_ASSEMBLER_NAME.
+ (builtin_function): Similarly.
+
+2002-04-01 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * decl.c (gnat_to_gnu_entity): Update.
+ * gigi.h (mark_addressable): Rename.
+ * misc.c (LANG_HOOKS_MARK_ADDRESSABLE): Redefine.
+ * trans.c (tree_transform): Update.
+ * utils.c (create_var_decl): Update.
+ * util2.c (build_binary_op, build_unary_op,
+ fill_vms_descriptor): Update.
+ (mark_addressable): Rename, update.
+
+2002-04-01 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * gigi.h (unsigned_type, signed_type, signed_or_unsigned_type):
+ Rename.
+ * misc.c (LANG_HOOKS_SIGNED_TYPE, LANG_HOOKS_UNSIGNED_TYPE,
+ LANG_HOOKS_SIGNED_OR_UNSIGNED_TYPE): New.
+ * trans.c (tree_transform, convert_with_check): Update.
+ * utils.c (unsigned_type, signed_type, signed_or_unsigned_type):
+ Rename.
+
+2002-03-31 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * gigi.h (finish_incomplete_decl): Rename.
+ * misc.c (LANG_HOOKS_FINISH_INCOMPLETE_DECL): Redefine.
+ * utils.c (gnat_init_decl_processing): Don't set hook.
+ (finish_incomplete_decl): Rename.
+
+2002-03-29 Andreas Schwab <schwab@suse.de>
+
+ * Makefile.in: Pass VPATH=$(fsrcdir) when calling make in rts
+ directory.
+
+2001-03-28 Robert Dewar <dewar@gnat.com>
+
+ * checks.ads:
+ (Remove_Checks): New procedure
+
+ * checks.adb:
+ (Remove_Checks): New procedure
+
+ * exp_util.adb:
+ Use new Duplicate_Subexpr functions
+ (Duplicate_Subexpr_No_Checks): New procedure
+ (Duplicate_Subexpr_No_Checks_Orig): New procedure
+ (Duplicate_Subexpr): Restore original form (checks duplicated)
+ (Duplicate_Subexpr): Call Remove_Checks
+
+ * exp_util.ads:
+ (Duplicate_Subexpr_No_Checks): New procedure
+ (Duplicate_Subexpr_No_Checks_Orig): New procedure
+ Add 2002 to copyright notice
+
+ * sem_util.adb: Use new Duplicate_Subexpr functions
+
+ * sem_eval.adb:
+ (Eval_Indexed_Component): This is the place to call
+ Constant_Array_Ref and to replace the value. We simply merge
+ the code of this function in here, since it is now no longer
+ used elsewhere. This fixes the problem of the back end not
+ realizing we were clever enough to see that this was
+ constant.
+ (Expr_Val): Remove call to Constant_Array_Ref
+ (Expr_Rep_Val): Remove call to Constant_Array_Ref
+ Minor reformatting
+ (Constant_Array_Ref): Deal with string literals (patch
+ suggested by Zack Weinberg on the gcc list)
+
+2001-03-28 Ed Schonberg <schonber@gnat.com>
+
+ * exp_util.adb: Duplicate_Subexpr_No_Checks_Orig =>
+ Duplicate_Subexpr_Move_Checks.
+
+ * exp_util.ads: Duplicate_Subexpr_No_Checks_Orig =>
+ Duplicate_Subexpr_Move_Checks.
+
+ * sem_eval.adb: (Constant_Array_Ref): Verify that constant
+ value of array exists before retrieving it (it may a private
+ protected component in a function).
+
+2002-03-28 Geert Bosch <bosch@gnat.com>
+
+ * prj-pp.adb : New file.
+
+ * prj-pp.ads : New file.
+
+2002-03-28 Andreas Jaeger <aj@suse.de>
+
+ * Makefile.in (stamp-sdefault): Fix path for Makefile.
+
+2002-03-28 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * misc.c (gnat_expand_expr): Move prototype.
+
+2002-03-27 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * misc.c (insert_default_attributes): Remove.
+
+2002-03-27 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * misc.c (LANG_HOOKS_EXPAND_EXPR): Redefine.
+ (gnat_init): Don't set hook.
+ (gnat_expand_expr): Fix prototype.
+
+2002-03-27 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * misc.c (ggc_p): Remove.
+
+2002-03-27 Geert Bosch <bosch@gnat.com>
+
+ * prj-makr.ads, prj-makr.adb : New files.
+
+2002-03-26 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * misc.c (LANG_HOOKS_MARK_TREE): Redefine.
+ (lang_mark_tree): Make static, rename.
+
+2002-03-25 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * misc.c (maybe_build_cleanup): Remove.
+
+2002-03-24 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * gigi.h (yyparse): Remove.
+
+2002-03-23 Florian Weimer <fw@deneb.enyo.de>
+
+ * gnat_rm.texi: Sync with ACT version.
+ (From Ben Brosgol <brosgol@gnat.com>)
+
+2002-03-20 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * misc.c (LANG_HOOKS_DECL_PRINTABLE_NAME): Redefine.
+ (gnat_init): Remove old hook.
+
+2002-03-17 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * misc.c (LANG_HOOKS_PARSE_FILE): Redefine.
+ (yyparse): Rename gnat_parse_file.
+
+2002-03-14 Geoffrey Keating <geoffk@redhat.com>
+
+ Delete all lines containing "$Revision:".
+ * xeinfo.adb: Don't look for revision numbers.
+ * xnmake.adb: Likewise.
+ * xsinfo.adb: Likewise.
+ * xsnames.adb: Likewise.
+ * xtreeprs.adb: Likewise.
+
+2002-03-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * misc.c (gnat_tree_code_type, gnat_tree_code_length,
+ gnat_tree_code_name): Delete.
+ (tree_code_type, tree_code_length, tree_code_name): Define.
+ (gnat_init): Don't try to copy into the various tree_code
+ arrays.
+
+2002-03-11 Richard Henderson <rth@redhat.com>
+
+ * Makefile.in (.NOTPARALLEL): Add fake tag.
+
+2002-03-07 Geert Bosch <bosch@gnat.com>
+
+ * adadecode.c, adadecode.h, aux-io.c, s-traces.adb, s-traces.ads,
+ s-tratas.adb, s-tratas.ads, sinput-d.adb, sinput-d.ads,
+ switch-b.adb, switch-b.ads, switch-c.adb, switch-c.ads,
+ switch-m.adb, switch-m.ads : New files.
+
+2002-03-07 Geert Bosch <bosch@gnat.com>
+
+ * 41intnam.ads, 42intnam.ads, 4aintnam.ads, 4cintnam.ads,
+ 4dintnam.ads, 4gintnam.ads, 4hintnam.ads, 4lintnam.ads,
+ 4mintnam.ads, 4pintnam.ads, 4rintnam.ads, 4sintnam.ads,
+ 4uintnam.ads, 4vcalend.adb, 4zintnam.ads, 52system.ads,
+ 5amastop.adb, 5asystem.ads, 5ataprop.adb, 5atpopsp.adb,
+ 5avxwork.ads, 5bosinte.adb, 5bsystem.ads, 5esystem.ads,
+ 5fsystem.ads, 5ftaprop.adb, 5ginterr.adb, 5gmastop.adb,
+ 5gsystem.ads, 5gtaprop.adb, 5gtasinf.adb, 5gtasinf.ads,
+ 5hparame.ads, 5hsystem.ads, 5htaprop.adb, 5htraceb.adb,
+ 5itaprop.adb, 5ksystem.ads, 5kvxwork.ads, 5lintman.adb,
+ 5lsystem.ads, 5mvxwork.ads, 5ninmaop.adb, 5nosinte.ads,
+ 5ntaprop.adb, 5ointerr.adb, 5omastop.adb, 5oosinte.adb,
+ 5osystem.ads, 5otaprop.adb, 5otaspri.ads, 5pvxwork.ads,
+ 5qtaprop.adb, 5sintman.adb, 5ssystem.ads, 5staprop.adb,
+ 5stpopse.adb, 5svxwork.ads, 5tosinte.ads, 5uintman.adb,
+ 5vasthan.adb, 5vinmaop.adb, 5vinterr.adb, 5vintman.adb,
+ 5vmastop.adb, 5vparame.ads, 5vsystem.ads, 5vtaprop.adb,
+ 5vtpopde.adb, 5wmemory.adb, 5wsystem.ads, 5wtaprop.adb,
+ 5ysystem.ads, 5zinterr.adb, 5zintman.adb, 5zosinte.adb,
+ 5zosinte.ads, 5zsystem.ads, 5ztaprop.adb, 6vcpp.adb, 6vcstrea.adb,
+ 7sintman.adb, 7staprop.adb, 7stpopsp.adb, 9drpc.adb,
+ Make-lang.in, Makefile.in, a-caldel.adb, a-comlin.ads,
+ a-dynpri.adb, a-except.adb, a-except.ads, a-finali.adb,
+ a-ncelfu.ads, a-reatim.adb, a-retide.adb, a-stream.ads,
+ a-ststio.adb, a-ststio.ads, a-stwifi.adb, a-tags.adb, a-tasatt.adb,
+ a-textio.adb, a-tideau.adb, a-tiflau.adb, a-tigeau.adb,
+ a-tigeau.ads, a-tiinau.adb, a-timoau.adb, a-witeio.adb,
+ a-wtdeau.adb, a-wtenau.adb, a-wtflau.adb, a-wtgeau.adb,
+ a-wtgeau.ads, a-wtinau.adb, a-wtmoau.adb, ada-tree.def, ada-tree.h,
+ adaint.c, adaint.h, ali-util.adb, ali.adb, ali.ads, atree.adb,
+ atree.ads, atree.h, back_end.adb, bcheck.adb, bindgen.adb,
+ bindusg.adb, checks.adb, comperr.adb, config-lang.in, csets.adb,
+ csets.ads, cstand.adb, cstreams.c, debug.adb, debug.ads, decl.c,
+ einfo.adb, einfo.ads, einfo.h, elists.h, errout.adb, errout.ads,
+ eval_fat.adb, exp_aggr.adb, exp_attr.adb, exp_ch11.adb,
+ exp_ch12.adb, exp_ch13.adb, exp_ch2.adb, exp_ch3.adb, exp_ch3.ads,
+ exp_ch4.adb, exp_ch5.adb, exp_ch6.adb, exp_ch7.adb, exp_ch7.ads,
+ exp_ch9.adb, exp_ch9.ads, exp_dbug.adb, exp_dbug.ads, exp_disp.ads,
+ exp_dist.adb, exp_fixd.adb, exp_intr.adb, exp_pakd.adb,
+ exp_prag.adb, exp_strm.adb, exp_util.adb, exp_util.ads,
+ expander.adb, expect.c, fe.h, fmap.adb, fmap.ads, fname-uf.adb,
+ freeze.adb, frontend.adb, g-awk.adb, g-cgideb.adb, g-comlin.adb,
+ g-comlin.ads, g-debpoo.adb, g-dirope.adb, g-dirope.ads,
+ g-dyntab.adb, g-expect.adb, g-expect.ads, g-io.ads, g-io_aux.adb,
+ g-io_aux.ads, g-locfil.adb, g-locfil.ads, g-os_lib.adb,
+ g-os_lib.ads, g-regexp.adb, g-regpat.adb, g-socket.adb,
+ g-socket.ads, g-spipat.adb, g-table.adb, g-trasym.adb,
+ g-trasym.ads, gigi.h, gmem.c, gnat1drv.adb, gnatbind.adb, gnatbl.c,
+ gnatchop.adb, gnatcmd.adb, gnatdll.adb, gnatfind.adb, gnatlbr.adb,
+ gnatlink.adb, gnatls.adb, gnatmem.adb, gnatprep.adb, gnatvsn.ads,
+ gnatxref.adb, hlo.adb, hostparm.ads, i-cobol.adb, i-cpp.adb,
+ i-cstrea.ads, i-cstrin.adb, i-pacdec.adb, i-vxwork.ads,
+ impunit.adb, init.c, inline.adb, io-aux.c, layout.adb, lib-load.adb,
+ lib-util.adb, lib-writ.adb, lib-writ.ads, lib-xref.adb,
+ lib-xref.ads, lib.adb, lib.ads, make.adb, makeusg.adb, mdll.adb,
+ memroot.adb, misc.c, mlib-tgt.adb, mlib-utl.adb, mlib-utl.ads,
+ mlib.adb, namet.adb, namet.ads, namet.h, nlists.h, nmake.adb,
+ nmake.ads, nmake.adt, opt.adb, opt.ads, osint.adb, osint.ads,
+ output.adb, output.ads, par-ch2.adb, par-ch3.adb, par-ch5.adb,
+ par-prag.adb, par-tchk.adb, par-util.adb, par.adb, prj-attr.adb,
+ prj-dect.adb, prj-env.adb, prj-env.ads, prj-nmsc.adb, prj-part.adb,
+ prj-proc.adb, prj-strt.adb, prj-tree.adb, prj-tree.ads, prj.adb,
+ prj.ads, raise.c, raise.h, repinfo.adb, restrict.adb, restrict.ads,
+ rident.ads, rtsfind.adb, rtsfind.ads, s-arit64.adb, s-asthan.adb,
+ s-atacco.adb, s-atacco.ads, s-auxdec.adb, s-crc32.adb, s-crc32.ads,
+ s-direio.adb, s-fatgen.adb, s-fileio.adb, s-finimp.adb,
+ s-gloloc.adb, s-gloloc.ads, s-interr.adb, s-mastop.adb,
+ s-mastop.ads, s-memory.adb, s-parame.ads, s-parint.adb,
+ s-pooglo.adb, s-pooloc.adb, s-rpc.adb, s-secsta.adb, s-sequio.adb,
+ s-shasto.adb, s-soflin.adb, s-soflin.ads, s-stache.adb,
+ s-taasde.adb, s-taasde.ads, s-tadeca.adb, s-tadeca.ads,
+ s-tadert.adb, s-tadert.ads, s-taenca.adb, s-taenca.ads,
+ s-taprob.adb, s-taprop.ads, s-tarest.adb, s-tasdeb.adb,
+ s-tasini.adb, s-tasini.ads, s-taskin.adb, s-taskin.ads,
+ s-tasque.adb, s-tasque.ads, s-tasren.adb, s-tasren.ads,
+ s-tassta.adb, s-tasuti.adb, s-tasuti.ads, s-tataat.adb,
+ s-tataat.ads, s-tpoben.adb, s-tpoben.ads, s-tpobop.adb,
+ s-tposen.adb, s-tposen.ads, s-traceb.adb, s-traceb.ads,
+ s-unstyp.ads, s-widenu.adb, scn-nlit.adb, scn.adb, sem.adb,
+ sem_aggr.adb, sem_attr.adb, sem_attr.ads, sem_case.adb,
+ sem_ch10.adb, sem_ch11.adb, sem_ch11.ads, sem_ch12.adb,
+ sem_ch13.adb, sem_ch13.ads, sem_ch2.adb, sem_ch3.adb, sem_ch3.ads,
+ sem_ch4.adb, sem_ch5.adb, sem_ch6.adb, sem_ch6.ads, sem_ch7.adb,
+ sem_ch8.adb, sem_ch8.ads, sem_ch9.adb, sem_disp.adb, sem_dist.adb,
+ sem_elab.adb, sem_elim.adb, sem_elim.ads, sem_eval.adb,
+ sem_intr.adb, sem_mech.adb, sem_prag.adb, sem_res.adb,
+ sem_type.adb, sem_util.adb, sem_util.ads, sem_vfpt.adb,
+ sem_warn.adb, sinfo.adb, sinfo.ads, sinfo.h, sinput-l.adb,
+ sinput-l.ads, sinput.adb, sinput.ads, snames.adb, snames.ads,
+ snames.h, sprint.adb, sprint.ads, stringt.adb, stringt.ads,
+ stringt.h, style.adb, switch.adb, switch.ads, sysdep.c, system.ads,
+ table.adb, targparm.adb, targparm.ads, targtyps.c, tbuild.adb,
+ tbuild.ads, tracebak.c, trans.c, tree_gen.adb, tree_io.adb,
+ treepr.adb, treepr.ads, treeprs.ads, treeprs.adt, ttypes.ads,
+ types.adb, types.ads, types.h, uintp.ads, urealp.ads, usage.adb,
+ utils.c, utils2.c, validsw.adb, xnmake.adb, xr_tabls.adb,
+ xr_tabls.ads, xref_lib.adb, xref_lib.ads : Merge in ACT changes.
+
+ * 1ssecsta.adb, 1ssecsta.ads, a-chlat9.ads, a-cwila9.ads,
+ g-enblsp.adb, g-md5.adb, g-md5.ads, gnatname.adb, gnatname.ads,
+ mkdir.c, osint-b.adb, osint-b.ads, osint-c.adb, osint-c.ads,
+ osint-l.adb, osint-l.ads, osint-m.adb, osint-m.ads : New files
+
+ * 3lsoccon.ads, 5qparame.ads, 5qvxwork.ads, 5smastop.adb,
+ 5zparame.ads, gnatmain.adb, gnatmain.ads, gnatpsys.adb : Removed
+
+ * mdllfile.adb, mdllfile.ads, mdlltool.adb, mdlltool.ads : Renamed
+ to mdll-fil.ad[bs] and mdll-util.ad[bs]
+
+ * mdll-fil.adb, mdll-fil.ads, mdll-utl.adb, mdll-utl.ads : Renamed
+ from mdllfile.ad[bs] and mdlltool.ad[bs]
+
+2002-03-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * utils.c (init_gnat_to_gnu, init_gigi_decls): Use ARRAY_SIZE in
+ lieu of explicit sizeof/sizeof.
+
+2002-02-28 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * misc.c (copy_lang_decl): Remove.
+
+2002-02-27 Zack Weinberg <zack@codesourcery.com>
+
+ * misc.c: Delete traditional-mode-related code copied from the
+ C front end but not used, or used only to permit the compiler
+ to link.
+
+2002-02-07 Richard Henderson <rth@redhat.com>
+
+ * adaint.c (__gnat_to_gm_time): First arg is int, not time_t.
+ * adaint.h (__gnat_to_gm_time): Update prototype.
+
+2002-01-30 Richard Henderson <rth@redhat.com>
+
+ * trans.c (tree_transform) [N_Loop_Statement]: Use
+ expand_exit_loop_top_cond.
+
+2001-12-23 Richard Henderson <rth@redhat.com>
+
+ * utils.c (end_subprog_body): Push GC context around
+ rest_of_compilation for nested functions.
+
+2001-12-23 Richard Henderson <rth@redhat.com>
+
+ * 5nosinte.ads: Get definition of "int" from Interfaces.C.
+
+2001-12-23 Florian Weimer <fw@deneb.enyo.de>
+
+ * gnat-style.texi (Declarations and Types): Remove ancient style
+ rule which was mandated by code generation issues.
+
+ * gnat-style.texi (header): Add @dircategory, @direntry.
+ (title page): Remove date.
+ (general) Add @./@: where approriate, and two spaces after the
+ full stop at the end of a sentence. Use @samp markup when
+ referring concrete lexical entities (keywords, attribute names
+ etc.), and @syntax for ARM grammar elements. Use @r for English
+ text in comments. Use @emph for emphasis. Change "if-statements"
+ etc. to "if statements" (without @samp). Break long lines. Make
+ casing of section names consistent.
+ (Identifiers): Use @samp markup for variable names.
+ (Comments): Use @samp markup for comment characters. Line-end
+ comments may follow any Ada code, not just statements. Fix
+ misspelling of "Integer" as "integer".
+ (Loop statements): Do not use variable name "I", use "J".
+ (Subprogram Declarations): Document alignment.
+ (Subprogram Bodies, Block statements): Document empty line before
+ "begin".
+
+2001-12-22 Florian Weimer <fw@deneb.enyo.de>
+
+ * make.adb (Add_Switch): Make Generic_Position a procedure. The
+ function approach did not work well because of a side effect (the
+ function call could reallocate the table which was being indexed
+ using its result). Fixes ada/4851.
+
+2001-12-19 Robert Dewar <dewar@gnat.com>
+
+ * bindgen.adb: Minor reformatting
+
+ * cstand.adb: Minor reformatting
+
+ * fmap.adb: Minor reformatting
+ Change name from Add for Add_To_File_Map (Add is much too generic)
+ Change Path_Name_Of to Mapped_Path_Name
+ Change File_Name_Of to Mapped_File_Name
+ Fix copyright dates in header
+
+ * fmap.ads:
+ Change name from Add for Add_To_File_Map (Add is much too generic)
+ Change Path_Name_Of to Mapped_Path_Name
+ Change File_Name_Of to Mapped_File_Name
+ Fix copyright dates in header
+
+ * fname-uf.adb: Minor reformatting. New names of stuff in Fmap.
+ Add use clause for Fmap.
+
+ * make.adb: Minor reformatting
+
+ * osint.adb: Minor reformatting. Change of names in Fmap.
+ Add use clause for Fmap.
+
+ * prj-env.adb: Minor reformatting
+
+ * prj-env.ads: Minor reformatting
+
+ * switch.adb: Minor reformatting. Do proper raise of Bad_Switch if
+ error found (there were odd exceptions to this general rule in
+ -gnatec/-gnatem processing)
+
+2001-12-19 Olivier Hainque <hainque@gnat.com>
+
+ * raise.c (__gnat_eh_personality): Exception handling personality
+ routine for Ada. Still in rough state, inspired from the C++ version
+ and still containing a bunch of debugging artifacts.
+ (parse_lsda_header, get_ttype_entry): Local (static) helpers, also
+ inspired from the C++ library.
+
+ * raise.c (eh_personality): Add comments. Part of work for the GCC 3
+ exception handling integration.
+
+2001-12-19 Arnaud Charlet <charlet@gnat.com>
+
+ * Makefile.in: Remove use of 5smastop.adb which is obsolete.
+ (HIE_SOURCES): Add s-secsta.ad{s,b}.
+ (HIE_OBJS): Add s-fat*.o
+ (RAVEN_SOURCES): Remove files that are no longer required. Add
+ interrupt handling files.
+ (RAVEN_MOD): Removed, no longer needed.
+
+2001-12-19 Robert Dewar <dewar@gnat.com>
+
+ * a-ngelfu.adb: Remove ??? comment for inappropriate Inline_Always
+ Add 2001 to copyright date
+
+ * g-regpat.adb: Change pragma Inline_Always to Inline. There is no
+ need to force universal inlining for these cases.
+
+2001-12-19 Arnaud Charlet <charlet@gnat.com>
+
+ * s-taprob.adb: Minor clean ups so that this unit can be used in
+ Ravenscar HI.
+
+ * exp_ch7.adb: Allow use of secondary stack in HI mode.
+ Disallow it when pragma Restrictions (No_Secondary_Stack) is specified.
+
+2001-12-19 Vincent Celier <celier@gnat.com>
+
+ * prj-tree.ads (Project_Node_Record): Add comments for components
+ Pkg_Id and Case_Insensitive.
+
+2001-12-19 Pascal Obry <obry@gnat.com>
+
+ * g-socket.adb: Minor reformatting. Found while reading code.
+
+2001-12-19 Robert Dewar <dewar@gnat.com>
+
+ * prj-tree.ads: Minor reformatting
+
+2001-12-20 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * config-lang.in (diff_excludes): Remove.
+
+2001-12-17 Ed Schonberg <schonber@gnat.com>
+
+ * sem_res.adb (Resolve_Selected_Component): do not generate a
+ discriminant check if the selected component is a component of
+ the argument of an initialization procedure.
+
+ * trans.c (tree_transform, case of arithmetic operators): If result
+ type is private, the gnu_type is the base type of the full view,
+ given that the full view itself may be a subtype.
+
+2001-12-17 Robert Dewar <dewar@gnat.com>
+
+ * sem_res.adb: Minor reformatting
+
+ * trans.c (tree_transform, case N_Real_Literal): Add missing third
+ parameter in call to Machine (unknown horrible effects from this
+ omission).
+
+ * urealp.h: Add definition of Round_Even for call to Machine
+ Add third parameter for Machine
+
+2001-12-17 Ed Schonberg <schonber@gnat.com>
+
+ * sem_warn.adb (Check_One_Unit): Suppress warnings completely on
+ predefined units in No_Run_Time mode.
+
+2001-12-17 Richard Kenner <kenner@gnat.com>
+
+ * misc.c (insn-codes.h): Now include.
+
+2001-12-17 Olivier Hainque <hainque@gnat.com>
+
+ * a-except.adb: Preparation work for future integration of the GCC 3
+ exception handling mechanism
+ (Notify_Handled_Exception, Notify_Unhandled_Exception): New routines
+ to factorize previous code sequences and make them externally callable,
+ e.g. for the Ada personality routine when the GCC 3 mechanism is used.
+ (Propagate_Exception, Raise_Current_Excep, Raise_From_Signal_Handler):
+ Use the new notification routines.
+
+2001-12-17 Emmanuel Briot <briot@gnat.com>
+
+ * prj-tree.ads (First_Choice_Of): Document the when others case
+
+2001-12-17 Arnaud Charlet <charlet@gnat.com>
+
+ * bindgen.adb (Gen_Ada_Init_*): Set priority of environment task in
+ HI-E mode, in order to support Ravenscar profile properly.
+
+ * cstand.adb (Create_Standard): Duration is a 32 bit type in HI-E
+ mode on 32 bits targets.
+
+2001-12-17 Vincent Celier <celier@gnat.com>
+
+ * fmap.adb: Initial version.
+
+ * fmap.ads: Initial version.
+
+ * fname-uf.adb (Get_File_Name): Use mapping if unit name mapped.
+ If search is successfully done, add to mapping.
+
+ * frontend.adb: Initialize the mapping if a -gnatem switch was used.
+
+ * make.adb:
+ (Gnatmake): Add new local variable Mapping_File_Name.
+ Create mapping file when using project file(s).
+ Delete mapping file before exiting.
+
+ * opt.ads (Mapping_File_Name): New variable
+
+ * osint.adb (Find_File): Use path name found in mapping, if any.
+
+ * prj-env.adb (Create_Mapping_File): New procedure
+
+ * prj-env.ads (Create_Mapping_File): New procedure.
+
+ * switch.adb (Scan_Front_End_Switches): Add processing for -gnatem
+ (Mapping_File)
+
+ * usage.adb: Add entry for new switch -gnatem.
+
+ * Makefile.in: Add dependencies for fmap.o.
+
+2001-12-17 Ed Schonberg <schonber@gnat.com>
+
+ * sem_ch10.adb (Analyze_With_Clause): Retrieve proper entity when unit
+ is a package instantiation rewritten as a package body.
+ (Install_Withed_Unit): Undo previous change, now redundant.
+
+2001-12-17 Gary Dismukes <dismukes@gnat.com>
+
+ * layout.adb:
+ (Compute_Length): Move conversion to Unsigned to callers.
+ (Get_Max_Size): Convert Len expression to Unsigned after calls to
+ Compute_Length and Determine_Range.
+ (Layout_Array_Type): Convert Len expression to Unsigned after calls to
+ Compute_Length and Determine_Range.
+ Above changes fix problem with length computation for supernull arrays
+ where Max (Len, 0) wasn't getting applied due to the Unsigned
+ conversion used by Compute_Length.
+
+2001-12-17 Arnaud Charlet <charlet@gnat.com>
+
+ * rtsfind.ads:
+ (OK_To_Use_In_No_Run_Time_Mode): Allow Ada.Exceptions and
+ System.Secondary_Stack.
+ (OK_To_Use_In_Ravenscar_Mode): New table needed to implement Ravenscar
+ in HI-E mode.
+ Remove unused entity RE_Exception_Data.
+
+ * rtsfind.adb (RTE): Allow Ravenscar Profile in HI mode.
+
+ * rident.ads (No_Secondary_Stack): New restriction.
+
+2001-12-17 Joel Brobecker <brobecke@gnat.com>
+
+ * gnat_rm.texi: Fix minor typos. Found while reading the section
+ regarding "Bit_Order Clauses" that was sent to a customer.
+ Very interesting documentation!
+
+2001-12-17 Robert Dewar <dewar@gnat.com>
+
+ * sem_case.adb (Choice_Image): Avoid creating improper character
+ literal names by using the routine Set_Character_Literal_Name. This
+ fixes bombs in certain error message cases.
+
+2001-12-17 Arnaud Charlet <charlet@gnat.com>
+
+ * a-reatim.adb: Minor reformatting.
+
+2001-12-17 Ed Schonberg <schonber@gnat.com>
+
+ * sem_ch12.adb (Validate_Derived_Type_Instance): Handle properly the
+ case where the formal is an extension of another formal in the current
+ unit or in a parent generic unit.
+
+2001-12-17 Arnaud Charlet <charlet@gnat.com>
+
+ * s-tposen.adb: Update comments. Minor reformatting.
+ Minor code clean up.
+
+ * s-tarest.adb: Update comments. Minor code reorganization.
+
+2001-12-17 Gary Dismukes <dismukes@gnat.com>
+
+ * exp_attr.adb (Attribute_Tag): Suppress expansion of <type_name>'Tag
+ when Java_VM.
+
+2001-12-17 Robert Dewar <dewar@gnat.com>
+
+ * exp_attr.adb: Minor reformatting
+
+2001-12-17 Ed Schonberg <schonber@gnat.com>
+
+ * sem_ch3.adb (Build_Derived_Private_Type): Refine check to handle
+ derivations nested within a child unit: verify that the parent
+ type is declared in an outer scope.
+
+2001-12-17 Robert Dewar <dewar@gnat.com>
+
+ * sem_ch12.adb: Minor reformatting
+
+2001-12-17 Ed Schonberg <schonber@gnat.com>
+
+ * sem_warn.adb (Check_One_Unit): In No_Run_Time mode, do not post
+ warning if current unit is a predefined one, from which bodies may
+ have been deleted.
+
+2001-12-17 Robert Dewar <dewar@gnat.com>
+
+ * eval_fat.ads: Add comment that Round_Even is referenced in Ada code
+ Fix header format. Add 2001 to copyright date.
+
+ * exp_dbug.adb (Get_Encoded_Name): Fix out of bounds reference,
+ which caused CE during compilation if checks were enabled.
+
+2001-12-17 Vincent Celier <celier@gnat.com>
+
+ * make.adb:
+ (Switches_Of): New function
+ (Test_If_Relative_Path): New procedure
+ (Add_Switches): Use new function Switches_Of
+ (Collect_Arguments_And_Compile): Use new function Switches_Of.
+ When using a project file, test if there are any relative
+ search path. Fail if there are any.
+ (Gnatmake): Only add switches for the primary directory when not using
+ a project file. When using a project file, change directory to the
+ object directory of the main project file. When using a project file,
+ test if there are any relative search path. Fail if there are any.
+ When using a project file, fail if specified executable is relative
+ path with directory information, and prepend executable, if not
+ specified as an absolute path, with the exec directory. Make sure
+ that only one -o switch is transmitted to the linker.
+
+ * prj-attr.adb (Initialization_Data): Add project attribute Exec_Dir
+
+ * prj-nmsc.adb:
+ (Ada_Check): Get Spec_Suffix_Loc and Impl_Suffix_Loc,
+ when using a non standard naming scheme.
+ (Check_Ada_Naming_Scheme): Make sure that error messages
+ do not raise exceptions.
+ (Is_Illegal_Append): Return True if there is no dot in the suffix.
+ (Language_Independent_Check): Check the exec directory.
+
+ * prj.adb (Project_Empty): Add new component Exec_Directory
+
+ * prj.ads:
+ (Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Add defaults.
+ (Project_Data): Add component Exec_Directory
+
+ * snames.adb: Updated to match snames.ads revision 1.215
+
+ * snames.ads: Added Exec_Dir
+
+2001-12-17 Robert Dewar <dewar@gnat.com>
+
+ * make.adb: Minor reformatting
+
+ * prj-nmsc.adb: Minor reformatting
+
+ * snames.adb: Updated to match snames.ads
+
+ * snames.ads: Alphebetize entries for project file
+
+2001-12-17 Ed Schonberg <schonber@gnat.com>
+
+ * trans.c (process_freeze_entity): Do nothing if the entity is a
+ subprogram that was already elaborated.
+
+2001-12-17 Richard Kenner <kenner@gnat.com>
+
+ * decl.c (gnat_to_gnu_entity, object): Do not back-annotate Alignment
+ and Esize if object is referenced via pointer.
+
+2001-12-17 Ed Schonberg <schonber@gnat.com>
+
+ * sem_ch3.adb (Analyze_Variant_Part): check that type of discriminant
+ is discrete before analyzing choices.
+
+2001-12-17 Joel Brobecker <brobecke@gnat.com>
+
+ * bindgen.adb (Gen_Output_File_Ada): Generate a new C-like string
+ containing the name of the Ada Main Program. This string is mainly
+ intended for the debugger.
+ (Gen_Output_File_C): Do the equivalent change when generating a C file.
+
+2001-12-17 Robert Dewar <dewar@gnat.com>
+
+ * ali.adb: Set new Dummy_Entry field in dependency entry
+
+ * ali.ads: Add Dummy_Entry field to source dependency table
+
+ * bcheck.adb (Check_Consistency): Ignore dummy D lines
+
+ * lib-writ.adb (Writ_ALI): Write dummy D lines for missing source files
+
+ * lib-writ.ads: Document dummy D lines for missing files.
+
+ * types.ads: (Dummy_Time_Stamp): New value for non-existant files
+
+2001-12-17 Robert Dewar <dewar@gnat.com>
+
+ * ali.adb: Type reference does not reset current file.
+
+ * ali.adb: Recognize and scan renaming reference
+
+ * ali.ads: Add spec for storing renaming references.
+
+ * lib-xref.ads: Add documentation for handling of renaming references
+
+ * lib-xref.adb: Implement output of renaming reference.
+
+ * checks.adb:
+ (Determine_Range): Document local variables
+ (Determine_Range): Make sure Hbound is initialized. It looks as though
+ there could be a real problem here with an uninitialized reference
+ to Hbound, but no actual example of failure has been found.
+
+2001-12-17 Laurent Pautet <pautet@gnat.com>
+
+ * g-socket.ads:
+ Fix comment of Shutdown_Socket and Close_Socket. These functions
+ should not fail silently because if they are called twice, this
+ probably means that there is a race condition in the user program.
+ Anyway, this behaviour is consistent with the rest of this unit.
+ When an error occurs, an exception is raised with the error message
+ as exception message.
+
+2001-12-17 Robert Dewar <dewar@gnat.com>
+
+ * frontend.adb: Move call to Check_Unused_Withs from Frontend, so
+ that it happens before modification of Sloc values for -gnatD.
+
+ * gnat1drv.adb: Move call to Check_Unused_Withs to Frontend,
+ so that it happens before modification of Sloc values for -gnatD.
+
+ * switch.adb: Minor reformatting
+
+2001-12-15 Richard Henderson <rth@redhat.com>
+
+ * sem_ch7.adb: Wrap comment.
+
+2001-12-16 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * 5ataprop.adb, 5atpopsp.adb, 5ftaprop.adb, 5gmastop.adb,
+ 5gtaprop.adb, 5htaprop.adb, 5itaprop.adb, 5lintman.adb,
+ 5omastop.adb, 5oosinte.adb, 5otaprop.adb, 5staprop.adb,
+ 5vinterr.adb, 5vtaprop.adb, 5vtpopde.adb, 5wintman.adb,
+ 5wtaprop.adb, 5zinterr.adb, 5ztaprop.adb, 6vcstrea.adb,
+ 7sintman.adb, 7staprop.adb, 9drpc.adb, ChangeLog, Makefile.in,
+ a-except.adb, a-tags.ads, a-tasatt.adb, a-teioed.adb,
+ a-textio.ads, a-witeio.ads, a-wtedit.adb, ali.ads, comperr.adb,
+ cstand.adb, einfo.ads, errout.adb, exp_ch11.adb, exp_ch2.adb,
+ exp_ch3.adb, exp_ch4.adb, exp_ch5.adb, exp_ch6.adb, exp_ch9.adb,
+ exp_util.adb, exp_util.ads, fname-uf.adb, g-cgi.ads, g-exctra.ads,
+ g-expect.ads, g-regist.adb, g-spipat.adb, gnatchop.adb,
+ gnatlink.adb, gnatls.adb, gnatmain.adb, gnatmem.adb, init.c,
+ make.adb, make.ads, mdlltool.adb, nlists.ads, osint.ads,
+ par-ch3.adb, par-ch4.adb, par-ch5.adb, par-ch6.adb, par.adb,
+ repinfo.adb, s-fatflt.ads, s-fatlfl.ads, s-fatllf.ads,
+ s-fatsfl.ads, s-finimp.adb, s-finimp.ads, s-interr.adb,
+ s-secsta.ads, s-shasto.ads, s-stalib.adb, s-stalib.ads,
+ s-tarest.ads, s-tasdeb.adb, s-tassta.adb, s-tassta.ads,
+ s-vaflop.ads, scans.ads, scn.adb, sem.ads, sem_aggr.adb,
+ sem_attr.adb, sem_case.ads, sem_ch10.adb, sem_ch12.adb,
+ sem_ch13.adb, sem_ch3.adb, sem_ch3.ads, sem_ch5.adb, sem_ch7.adb,
+ sem_ch8.adb, sem_ch8.ads, sem_type.adb, sem_util.ads, sinfo.ads,
+ sprint.adb, tbuild.ads, types.ads, utils.c, xeinfo.adb: Fix
+ spelling errors.
+
+2001-12-14 Vincent Celier <celier@gnat.com>
+
+ * osint.adb(Create_Debug_File): When an object file is specified,
+ put the .dg file in the same directory as the object file.
+
+2001-12-14 Robert Dewar <dewar@gnat.com>
+
+ * osint.adb: Minor reformatting
+
+ * lib-xref.adb (Output_Instantiation): New procedure to generate
+ instantiation references.
+
+ * lib-xref.ads: Add documentation of handling of generic references.
+
+ * ali.adb (Read_Instantiation_Ref): New procedure to read
+ instantiation references
+
+ * ali.ads: Add spec for storing instantiation references
+
+ * bindusg.adb: Minor reformatting
+
+ * switch.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
+
+ * usage.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
+
+ * gnatcmd.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
+
+ * csets.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
+
+ * csets.ads:
+ Fix header format
+ Add 2001 to copyright date
+ Add entry for Latin-5 (Cyrillic ISO-8859-5)
+
+2001-12-14 Matt Gingell <gingell@gnat.com>
+
+ * adaint.c: mktemp is a macro on Lynx and can not be used as an
+ expression.
+
+2001-12-14 Richard Kenner <kenner@gnat.com>
+
+ * misc.c (gnat_expand_constant): Do not strip UNCHECKED_CONVERT_EXPR
+ if operand is CONSTRUCTOR.
+
+2001-12-14 Ed Schonberg <schonber@gnat.com>
+
+ * trans.c (tree_transform, case N_Assignment_Statement): Set lineno
+ before emiting check on right-hand side, so that exception information
+ is correct.
+
+2001-12-14 Richard Kenner <kenner@gnat.com>
+
+ * utils.c (create_var_decl): Throw away initializing expression
+ if just annotating types and non-constant.
+
+2001-12-14 Vincent Celier <celier@gnat.com>
+
+ * prj-nmsc.adb: (Ada_Check): Migrate drom Ada_Default_... to
+ Default_Ada_...
+
+ * prj.adb: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
+ Remove functions.
+ (Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Move to spec.
+
+ * prj.ads: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
+ Remove functions.
+ (Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Move from body.
+
+2001-12-16 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * ChangeLog: Remove piece of diff output.
+
+2001-12-14 Geert Bosch <bosch@gnat.com>
+
+ * config-lang.in: Update copyright notice
+
+ * layout.adb: Remove commented out code.
+
+ * mdllfile.ads: Update copyright notice. Fix header format.
+
+ * sem_case.ads: Likewise.
+
+ * sem_ch3.adb: Minor reformatting.
+
+2001-12-12 Geert Bosch <bosch@gnat.com>
+
+ * freeze.ads: Update copyright date.
+
+ * g-comlin.ads: Minor reformatting.
+
+ * gnat-style.texi: Fix typo.
+
+2001-12-12 Geert Bosch <bosch@gnat.com>
+
+ * einfo.h: Regenerate.
+
+2001-12-12 Ed Schonberg <schonber@gnat.com>
+
+ * sem_ch12.adb (Save_Entity_Descendant): Use syntactic field names
+ on known node types, rather than untyped fields. Further cleanups.
+
+2001-12-12 Robert Dewar <dewar@gnat.com>
+
+ * sem_ch12.adb:
+ (Save_Entity_Descendant): Minor comment update.
+ (Copy_Generic_Node): Deal with incorrect reference to Associated_Node
+ of an N_Attribute_Reference node. As per note below, this does not
+ eliminate need for Associated_Node in attribute ref nodes.
+ (Associated_Node): Documentation explicitly mentions attribute
+ reference nodes, since this field is used in such nodes.
+
+ * sem_ch12.adb (Associated_Node): Minor documentation cleanup.
+
2001-12-12 Robert Dewar <dewar@gnat.com>
* s-stalib.adb: Add more comments on with statements being needed
-
+
* par-ch12.adb: Minor reformatting
-
+
* prj-dect.ads: Fix copyright header
-
- * s-arit64.adb (Multiply_With_Ovflo_Check): Fix case where both
+
+ * s-arit64.adb (Multiply_With_Ovflo_Check): Fix case where both
inputs fit in 32 bits, but the result still overflows.
-
+
* s-fatgen.ads: Minor comment improvement
-
+
2001-12-12 Ed Schonberg <schonber@gnat.com>
- * sem_ch4.adb (Analyze_Selected_Component): If the prefix is of a
- formal derived type, look for an inherited component from the full
+ * sem_ch4.adb (Analyze_Selected_Component): If the prefix is of a
+ formal derived type, look for an inherited component from the full
view of the parent, if any.
-
+
2001-12-12 Robert Dewar <dewar@gnat.com>
* checks.ads (Apply_Alignment_Check): New procedure.
-
- * exp_ch13.adb (Expand_N_Freeze_Entity): Generate dynamic check to
- ensure that the alignment of objects with address clauses is
+
+ * exp_ch13.adb (Expand_N_Freeze_Entity): Generate dynamic check to
+ ensure that the alignment of objects with address clauses is
appropriate, and raise PE if not.
- * exp_util.ads (Must_Be_Aligned): Removed, replaced by
+ * exp_util.ads (Must_Be_Aligned): Removed, replaced by
Exp_Pakd.Known_Aligned_Enough
-
+
* mdllfile.ads: Minor reformatting
* mlib-fil.ads: Minor reformatting
-
+
2001-12-12 Ed Schonberg <schonber@gnat.com>
- * exp_ch8.adb (Expand_N_Object_Renaming_Declaration): Extend previous
- fix to any component reference if enclosing record has non-standard
+ * exp_ch8.adb (Expand_N_Object_Renaming_Declaration): Extend previous
+ fix to any component reference if enclosing record has non-standard
representation.
-
+
2001-12-12 Vincent Celier <celier@gnat.com>
- * g-dirope.ads (Find, Wildcard_Iterator): Moved to child package
+ * g-dirope.ads (Find, Wildcard_Iterator): Moved to child package
Iteration
-
+
2001-12-12 Ed Schonberg <schonber@gnat.com>
- * freeze.ads: Make Freeze_Fixed_Point_Type visible, for use in
+ * freeze.ads: Make Freeze_Fixed_Point_Type visible, for use in
sem_attr.
-
+
2001-12-12 Robert Dewar <dewar@gnat.com>
* impunit.adb: Add entry for GNAT.Directory_Operations.Iteration
-
+
2001-12-12 Emmanuel Briot <briot@gnat.com>
* g-regexp.adb: Remove all debug code, since it isn't required anymore,
and it adds dependencies to system.io.
-
+
2001-12-12 Pascal Obry <obry@gnat.com>
- * g-dirope.adb (Expand_Path.Var): Correctly detect end of
+ * g-dirope.adb (Expand_Path.Var): Correctly detect end of
variable name.
-*** s-stalib.adb 2001/09/03 15:24:33 1.17
---- s-stalib.adb 2001/10/16 13:14:46 1.18
-***************
-*** 46,59 ****
- -- elaboration circularities with Ada.Exceptions if polling is on.
-
- with System.Soft_Links;
-! -- Referenced directly from generated code
-! -- Also referenced from exception handling routines.
- -- This is needed for programs that don't use exceptions explicitely but
- -- direct calls to Ada.Exceptions are generated by gigi (for example,
- -- by calling __gnat_raise_constraint_error directly).
-
- with System.Memory;
-! -- Referenced directly from generated code
-
- package body System.Standard_Library is
-
---- 46,62 ----
- -- elaboration circularities with Ada.Exceptions if polling is on.
-
- with System.Soft_Links;
-! -- Referenced directly from generated code using external symbols so it
-! -- must always be present in a build, even if no unit has a direct with
-! -- of this unit. Also referenced from exception handling routines.
- -- This is needed for programs that don't use exceptions explicitely but
- -- direct calls to Ada.Exceptions are generated by gigi (for example,
- -- by calling __gnat_raise_constraint_error directly).
-
- with System.Memory;
-! -- Referenced directly from generated code using external symbols, so it
-! -- must always be present in a build, even if no unit has a direct with
-! -- of this unit.
-
- package body System.Standard_Library is
-
-
-*** par-ch12.adb 2001/10/19 15:22:18 1.48
---- par-ch12.adb 2001/10/19 15:24:48 1.49
-***************
-*** 452,466 ****
- if Def_Node /= Error then
- Set_Formal_Type_Definition (Decl_Node, Def_Node);
- TF_Semicolon;
- else
- Decl_Node := Error;
-
- if Token = Tok_Semicolon then
-- -- Avoid further cascaded errors.
- Scan;
- end if;
- end if;
--
-
- return Decl_Node;
- end P_Formal_Type_Declaration;
---- 452,467 ----
- if Def_Node /= Error then
- Set_Formal_Type_Definition (Decl_Node, Def_Node);
- TF_Semicolon;
-+
- else
- Decl_Node := Error;
-
-+ -- If we have semicolon, skip it to avoid cascaded errors
-+
- if Token = Tok_Semicolon then
- Scan;
- end if;
- end if;
-
- return Decl_Node;
- end P_Formal_Type_Declaration;
-
-*** prj-dect.ads 2001/10/20 10:28:13 1.4
---- prj-dect.ads 2001/10/20 11:43:56 1.5
-***************
-*** 8,14 ****
- -- --
- -- $Revision$
- -- --
-! -- Copyright (C) 2000-2001 Free Software Foundation, Inc. --
- -- --
- -- GNAT is free software; you can redistribute it and/or modify it under --
- -- terms of the GNU General Public License as published by the Free Soft- --
---- 8,14 ----
- -- --
- -- $Revision$
- -- --
-! -- Copyright (C) 2001 Free Software Foundation, Inc. --
- -- --
- -- GNAT is free software; you can redistribute it and/or modify it under --
- -- terms of the GNU General Public License as published by the Free Soft- --
-
-*** s-arit64.adb 2001/02/09 15:10:29 1.16
---- s-arit64.adb 2001/10/20 14:50:39 1.17
-***************
-*** 325,337 ****
- T2 := Xhi * Ylo;
- end if;
-
-! else
-! if Yhi /= 0 then
-! T2 := Xlo * Yhi;
-! else
-! return X * Y;
-! end if;
- end if;
-
- T1 := Xlo * Ylo;
- T2 := T2 + Hi (T1);
---- 325,339 ----
- T2 := Xhi * Ylo;
- end if;
-
-! elsif Yhi /= 0 then
-! T2 := Xlo * Yhi;
-!
-! else -- Yhi = Xhi = 0
-! T2 := 0;
- end if;
-+
-+ -- Here we have T2 set to the contribution to the upper half
-+ -- of the result from the upper halves of the input values.
-
- T1 := Xlo * Ylo;
- T2 := T2 + Hi (T1);
-
-*** s-fatgen.ads 2001/07/20 00:59:34 1.9
---- s-fatgen.ads 2001/10/20 18:37:39 1.10
-***************
-*** 89,97 ****
-
- function Unbiased_Rounding (X : T) return T;
-
-! function Valid (X : access T) return Boolean;
-! -- The argument must be passed by reference here, as T may be
-! -- an abnormal value that can be passed in a floating point register.
-
- private
- pragma Inline (Machine);
---- 89,100 ----
-
- function Unbiased_Rounding (X : T) return T;
-
-! function Valid (X : access T) return Boolean;
-! -- This function checks if the object of type T referenced by X
-! -- is valid, and returns True/False accordingly. The parameter is
-! -- passed by reference (access) here, as the object of type T may
-! -- be an abnormal value that cannot be passed in a floating-point
-! -- register, and the whole point of 'Valid is to prevent exceptions.
-
- private
- pragma Inline (Machine);
-
-*** sem_ch4.adb 2001/09/24 22:32:31 1.511
---- sem_ch4.adb 2001/10/21 17:41:52 1.512
-***************
-*** 2691,2696 ****
---- 2691,2708 ----
-
- Check_Misspelled_Selector (Entity_List, Sel);
-
-+ elsif Is_Generic_Type (Prefix_Type)
-+ and then Ekind (Prefix_Type) = E_Record_Type_With_Private
-+ and then Is_Record_Type (Etype (Prefix_Type))
-+ then
-+ -- If this is a derived formal type, the parent may have a
-+ -- different visibility at this point. Try for an inherited
-+ -- component before reporting an error.
-+
-+ Set_Etype (Prefix (N), Etype (Prefix_Type));
-+ Analyze_Selected_Component (N);
-+ return;
-+
- else
- if Ekind (Prefix_Type) = E_Record_Subtype then
-
-
-*** checks.ads 2001/07/16 01:26:04 1.55
---- checks.ads 2001/10/28 15:13:02 1.56
-***************
-*** 83,88 ****
---- 83,95 ----
- -- the object denoted by the access parameter is not deeper than the
- -- level of the type Typ. Program_Error is raised if the check fails.
-
-+ procedure Apply_Alignment_Check (E : Entity_Id; N : Node_Id);
-+ -- E is the entity for an object. If there is an address clause for
-+ -- this entity, and checks are enabled, then this procedure generates
-+ -- a check that the specified address has an alignment consistent with
-+ -- the alignment of the object, raising PE if this is not the case. The
-+ -- resulting check (if one is generated) is inserted before node N.
-+
- procedure Apply_Array_Size_Check (N : Node_Id; Typ : Entity_Id);
- -- N is the node for an object declaration that declares an object of
- -- array type Typ. This routine generates, if necessary, a check that
-
-*** exp_ch13.adb 2001/07/16 21:21:29 1.76
---- exp_ch13.adb 2001/10/28 15:13:25 1.77
-***************
-*** 27,32 ****
---- 27,33 ----
- ------------------------------------------------------------------------------
-
- with Atree; use Atree;
-+ with Checks; use Checks;
- with Einfo; use Einfo;
- with Exp_Ch3; use Exp_Ch3;
- with Exp_Ch6; use Exp_Ch6;
-***************
-*** 236,245 ****
- Decl : Node_Id;
-
- begin
-! if not Is_Type (E) and then not Is_Subprogram (E) then
- return;
- end if;
-
- E_Scope := Scope (E);
-
- -- If we are freezing entities defined in protected types, they
---- 237,256 ----
- Decl : Node_Id;
-
- begin
-! -- For object, with address clause, check alignment is OK
-!
-! if Is_Object (E) then
-! Apply_Alignment_Check (E, N);
-!
-! -- Only other items requiring any front end action are
-! -- types and subprograms.
-!
-! elsif not Is_Type (E) and then not Is_Subprogram (E) then
- return;
- end if;
-
-+ -- Here E is a type or a subprogram
-+
- E_Scope := Scope (E);
-
- -- If we are freezing entities defined in protected types, they
-***************
-*** 304,314 ****
-
- elsif Is_Subprogram (E) then
- Freeze_Subprogram (N);
--
-- -- No other entities require any front end freeze actions
--
-- else
-- null;
- end if;
-
- -- Analyze actions generated by freezing. The init_proc contains
---- 315,320 ----
-
-*** exp_util.ads 2001/07/23 10:05:17 1.112
---- exp_util.ads 2001/10/28 15:14:04 1.113
-***************
-*** 372,386 ****
- -- routine is to help avoid generating troublesome temporaries that
- -- intefere with the stack checking mechanism.
-
-- function Must_Be_Aligned (Obj : Node_Id) return Boolean;
-- -- Given an object reference, determines whether or not the object
-- -- is required to be aligned according to its type'alignment value.
-- -- Normally, objects are required to be aligned, and the result will
-- -- be True. The situation in which this is not the case is if the
-- -- object reference involves a component of a packed array, where
-- -- the type of the component is not required to have strict alignment.
-- -- In this case, false will be returned.
--
- procedure Remove_Side_Effects
- (Exp : Node_Id;
- Name_Req : Boolean := False;
---- 372,377 ----
-
-*** mdllfile.ads 2001/10/29 02:06:24 1.2
---- mdllfile.ads 2001/10/29 02:50:12 1.3
-***************
-*** 26,52 ****
- -- --
- ------------------------------------------------------------------------------
-
-! -- Simple services used by GNATDLL to deal with Filename extension.
-
- package MDLL.Files is
-
- No_Ext : constant String := "";
-
-! function Get_Ext (Filename : in String)
-! return String;
-! -- return filename's extension.
-!
-! function Is_Ali (Filename : in String)
-! return Boolean;
-! -- test if Filename is an Ada library file (.ali).
-!
-! function Is_Obj (Filename : in String)
-! return Boolean;
-! -- test if Filename is an object file (.o or .obj).
-!
-! function Ext_To (Filename : in String;
-! New_Ext : in String := No_Ext)
-! return String;
-! -- return Filename with the extension change to New_Ext.
-
- end MDLL.Files;
---- 26,51 ----
- -- --
- ------------------------------------------------------------------------------
-
-! -- Simple services used by GNATDLL to deal with Filename extension
-
- package MDLL.Files is
-
- No_Ext : constant String := "";
-+ -- Used to mark the absence of an extension
-
-! function Get_Ext (Filename : String) return String;
-! -- Return extension of Filename
-!
-! function Is_Ali (Filename : String) return Boolean;
-! -- Test if Filename is an Ada library file (.ali).
-!
-! function Is_Obj (Filename : String) return Boolean;
-! -- Test if Filename is an object file (.o or .obj)
-!
-! function Ext_To
-! (Filename : String;
-! New_Ext : String := No_Ext)
-! return String;
-! -- Return Filename with the extension change to New_Ext
-
- end MDLL.Files;
-
-*** mlib-fil.ads 2001/10/29 02:06:26 1.3
---- mlib-fil.ads 2001/10/29 02:51:28 1.4
-***************
-*** 36,51 ****
- return String;
- -- Return Filename with the extension change to New_Ext.
-
-! function Get_Ext (Filename : in String) return String;
- -- Return extension of filename.
-
- function Is_Archive (Filename : String) return Boolean;
- -- Test if filename is an archive
-
-! function Is_C (Filename : in String) return Boolean;
- -- Test if Filename is a C file
-
-! function Is_Obj (Filename : in String) return Boolean;
- -- Test if Filename is an object file
-
- end MLib.Fil;
---- 36,51 ----
- return String;
- -- Return Filename with the extension change to New_Ext.
-
-! function Get_Ext (Filename : String) return String;
- -- Return extension of filename.
-
- function Is_Archive (Filename : String) return Boolean;
- -- Test if filename is an archive
-
-! function Is_C (Filename : String) return Boolean;
- -- Test if Filename is a C file
-
-! function Is_Obj (Filename : String) return Boolean;
- -- Test if Filename is an object file
-
- end MLib.Fil;
-
-*** exp_ch8.adb 2001/10/03 02:17:32 1.30
---- exp_ch8.adb 2001/10/29 17:32:24 1.31
-***************
-*** 59,65 ****
- -- of the renamed object. The cases in which this is not true are when
- -- this address is not computable, since it involves extraction of a
- -- packed array element, or of a record component to which a component
-! -- clause applies (that can specify an arbitrary bit boundary).
-
- -- In these two cases, we pre-evaluate the renaming expression, by
- -- extracting and freezing the values of any subscripts, and then we
---- 59,66 ----
- -- of the renamed object. The cases in which this is not true are when
- -- this address is not computable, since it involves extraction of a
- -- packed array element, or of a record component to which a component
-! -- clause applies (that can specify an arbitrary bit boundary), or where
-! -- the enclosing record itself has a non-standard representation.
-
- -- In these two cases, we pre-evaluate the renaming expression, by
- -- extracting and freezing the values of any subscripts, and then we
-***************
-*** 211,228 ****
- end if;
-
- elsif Nkind (Nam) = N_Selected_Component then
-! if Present (Component_Clause (Entity (Selector_Name (Nam)))) then
-! return True;
-
-! elsif Ekind (Entity (Selector_Name (Nam))) = E_Discriminant
-! and then Is_Record_Type (Etype (Prefix (Nam)))
-! and then not Is_Concurrent_Record_Type (Etype (Prefix (Nam)))
-! then
-! return True;
-
-! else
-! return Evaluation_Required (Prefix (Nam));
-! end if;
-
- else
- return False;
---- 212,236 ----
- end if;
-
- elsif Nkind (Nam) = N_Selected_Component then
-! declare
-! Rec_Type : Entity_Id := Etype (Prefix (Nam));
-
-! begin
-! if Present (Component_Clause (Entity (Selector_Name (Nam))))
-! or else Has_Non_Standard_Rep (Rec_Type)
-! then
-! return True;
-!
-! elsif Ekind (Entity (Selector_Name (Nam))) = E_Discriminant
-! and then Is_Record_Type (Rec_Type)
-! and then not Is_Concurrent_Record_Type (Rec_Type)
-! then
-! return True;
-
-! else
-! return Evaluation_Required (Prefix (Nam));
-! end if;
-! end;
-
- else
- return False;
-
-*** g-dirope.ads 2001/08/27 09:48:38 1.12
---- g-dirope.ads 2001/10/29 19:18:13 1.13
-***************
-*** 38,43 ****
---- 38,47 ----
- -- can be treated as a file, using open and close routines, and a scanning
- -- routine is provided for iterating through the entries in a directory.
-
-+ -- See also child package GNAT.Directory_Operations.Iteration
-+
-+ with Ada.Strings.Maps;
-+
- package GNAT.Directory_Operations is
-
- subtype Dir_Name_Str is String;
-***************
-*** 187,248 ****
- -- returned in target-OS form. Raises Directory_Error if Dir has not
- -- be opened (Dir = Null_Dir).
-
-- generic
-- with procedure Action
-- (Item : String;
-- Index : Positive;
-- Quit : in out Boolean);
-- procedure Wildcard_Iterator (Path : Path_Name);
-- -- Calls Action for each path matching Path. Path can include wildcards '*'
-- -- and '?' and [...]. The rules are:
-- --
-- -- * can be replaced by any sequence of characters
-- -- ? can be replaced by a single character
-- -- [a-z] match one character in the range 'a' through 'z'
-- -- [abc] match either character 'a', 'b' or 'c'
-- --
-- -- Item is the filename that has been matched. Index is set to one for the
-- -- first call and is incremented by one at each call. The iterator's
-- -- termination can be controlled by setting Quit to True. It is by default
-- -- set to False.
-- --
-- -- For example, if we have the following directory structure:
-- -- /boo/
-- -- foo.ads
-- -- /sed/
-- -- foo.ads
-- -- file/
-- -- foo.ads
-- -- /sid/
-- -- foo.ads
-- -- file/
-- -- foo.ads
-- -- /life/
-- --
-- -- A call with expression "/s*/file/*" will call Action for the following
-- -- items:
-- -- /sed/file/foo.ads
-- -- /sid/file/foo.ads
--
-- generic
-- with procedure Action
-- (Item : String;
-- Index : Positive;
-- Quit : in out Boolean);
-- procedure Find
-- (Root_Directory : Dir_Name_Str;
-- File_Pattern : String);
-- -- Recursively searches the directory structure rooted at Root_Directory.
-- -- This provides functionality similar to the UNIX 'find' command.
-- -- Action will be called for every item matching the regular expression
-- -- File_Pattern (see GNAT.Regexp). Item is the full pathname to the file
-- -- starting with Root_Directory that has been matched. Index is set to one
-- -- for the first call and is incremented by one at each call. The iterator
-- -- will pass in the value False on each call to Action. The iterator will
-- -- terminate after passing the last matched path to Action or after
-- -- returning from a call to Action which sets Quit to True.
-- -- Raises GNAT.Regexp.Error_In_Regexp if File_Pattern is ill formed.
--
- function Read_Is_Thread_Safe return Boolean;
- -- Indicates if procedure Read is thread safe. On systems where the
- -- target system supports this functionality, Read is thread safe,
---- 191,196 ----
-***************
-*** 259,263 ****
---- 207,215 ----
- Null_Dir : constant Dir_Type := null;
-
- pragma Import (C, Dir_Separator, "__gnat_dir_separator");
-+
-+ Dir_Seps : constant Ada.Strings.Maps.Character_Set :=
-+ Ada.Strings.Maps.To_Set ("/\");
-+ -- UNIX and DOS style directory separators.
-
- end GNAT.Directory_Operations;
-
-*** freeze.ads 2001/10/29 02:06:04 1.15
---- freeze.ads 2001/10/30 01:36:24 1.16
-***************
-*** 205,210 ****
---- 205,215 ----
- -- so need to be similarly treated. Freeze_Expression takes care of
- -- determining the proper insertion point for generated freeze actions.
-
-+ procedure Freeze_Fixed_Point_Type (Typ : Entity_Id);
-+ -- Freeze fixed point type. For fixed-point types, we have to defer
-+ -- setting the size and bounds till the freeze point, since they are
-+ -- potentially affected by the presence of size and small clauses.
-+
- procedure Freeze_Itype (T : Entity_Id; N : Node_Id);
- -- This routine is called when an Itype is created and must be frozen
- -- immediately at the point of creation (for the sake of the expansion
-
-*** impunit.adb 2001/09/26 07:14:11 1.14
---- impunit.adb 2001/10/30 04:33:45 1.15
-***************
-*** 195,200 ****
---- 195,201 ----
- "g-curexc", -- GNAT.Current_Exception
- "g-debpoo", -- GNAT.Debug_Pools
- "g-debuti", -- GNAT.Debug_Utilities
-+ "g-diopit", -- GNAT.Directory_Operations.Iteration
- "g-dirope", -- GNAT.Directory_Operations
- "g-dyntab", -- GNAT.Dynamic_Tables
- "g-exctra", -- GNAT.Exception_Traces
-
-*** g-regexp.adb 2001/10/21 11:04:16 1.28
---- g-regexp.adb 2001/10/30 15:25:04 1.29
-***************
-*** 32,38 ****
- -- --
- ------------------------------------------------------------------------------
-
-- with System.IO;
- with Unchecked_Deallocation;
- with Ada.Exceptions;
- with GNAT.Case_Util;
---- 32,37 ----
-***************
-*** 73,82 ****
- end record;
- -- Deterministic finite-state machine
-
-- Debug : constant Boolean := False;
-- -- When True, the primary and secondary tables will be printed.
-- -- Gnat does not generate any code if this variable is False;
--
- -----------------------
- -- Local Subprograms --
- -----------------------
---- 72,77 ----
-***************
-*** 188,199 ****
- pragma No_Return (Raise_Exception);
- -- Raise an exception, indicating an error at character Index in S.
-
-- procedure Print_Table
-- (Table : Regexp_Array;
-- Num_States : State_Index;
-- Is_Primary : Boolean := True);
-- -- Print a table for debugging purposes
--
- --------------------
- -- Create_Mapping --
- --------------------
---- 183,188 ----
-***************
-*** 1225,1309 ****
- end loop;
- end loop;
-
-- if Debug then
-- System.IO.New_Line;
-- System.IO.Put_Line ("Secondary table : ");
-- Print_Table (R.States, Nb_State, False);
-- end if;
--
- return (Ada.Finalization.Controlled with R => R);
- end;
- end Create_Secondary_Table;
-
-- -----------------
-- -- Print_Table --
-- -----------------
--
-- procedure Print_Table
-- (Table : Regexp_Array;
-- Num_States : State_Index;
-- Is_Primary : Boolean := True)
-- is
-- function Reverse_Mapping (N : Column_Index) return Character;
-- -- Return the character corresponding to a column in the mapping
--
-- ---------------------
-- -- Reverse_Mapping --
-- ---------------------
--
-- function Reverse_Mapping (N : Column_Index) return Character is
-- begin
-- for Column in Map'Range loop
-- if Map (Column) = N then
-- return Column;
-- end if;
-- end loop;
--
-- return ' ';
-- end Reverse_Mapping;
--
-- -- Start of processing for Print_Table
--
-- begin
-- -- Print the header line
--
-- System.IO.Put (" [*] ");
--
-- for Column in 1 .. Alphabet_Size loop
-- System.IO.Put
-- (String'(1 .. 1 => Reverse_Mapping (Column)) & " ");
-- end loop;
--
-- if Is_Primary then
-- System.IO.Put ("closure....");
-- end if;
--
-- System.IO.New_Line;
--
-- -- Print every line
--
-- for State in 1 .. Num_States loop
-- System.IO.Put (State'Img);
--
-- for K in 1 .. 3 - State'Img'Length loop
-- System.IO.Put (" ");
-- end loop;
--
-- for K in 0 .. Alphabet_Size loop
-- System.IO.Put (Table (State, K)'Img & " ");
-- end loop;
--
-- for K in Alphabet_Size + 1 .. Table'Last (2) loop
-- if Table (State, K) /= 0 then
-- System.IO.Put (Table (State, K)'Img & ",");
-- end if;
-- end loop;
--
-- System.IO.New_Line;
-- end loop;
--
-- end Print_Table;
--
- ---------------------
- -- Raise_Exception --
- ---------------------
---- 1214,1223 ----
-***************
-*** 1345,1356 ****
- (Table, Num_States, Start_State, End_State);
- end if;
-
-- if Debug then
-- Print_Table (Table.all, Num_States);
-- System.IO.Put_Line ("Start_State : " & Start_State'Img);
-- System.IO.Put_Line ("End_State : " & End_State'Img);
-- end if;
--
- -- Creates the secondary table
-
- R := Create_Secondary_Table
---- 1259,1264 ----
-***************
-*** 1451,1467 ****
- New_Table := new Regexp_Array (Table'First (1) .. New_Lines,
- Table'First (2) .. New_Columns);
- New_Table.all := (others => (others => 0));
--
-- if Debug then
-- System.IO.Put_Line ("Reallocating table: Lines from "
-- & State_Index'Image (Table'Last (1))
-- & " to "
-- & State_Index'Image (New_Lines));
-- System.IO.Put_Line (" and columns from "
-- & Column_Index'Image (Table'Last (2))
-- & " to "
-- & Column_Index'Image (New_Columns));
-- end if;
-
- for J in Table'Range (1) loop
- for K in Table'Range (2) loop
---- 1359,1364 ----
-
-*** g-dirope.adb 2001/10/31 21:36:04 1.20
---- g-dirope.adb 2001/11/01 16:39:33 1.21
-***************
-*** 371,387 ****
- E := E + 1;
-
- Var_Name : loop
-! exit Var_Name when E = Path'Last;
-
- if Characters.Handling.Is_Letter (Path (E))
- or else Characters.Handling.Is_Digit (Path (E))
- then
- E := E + 1;
- else
-- E := E - 1;
- exit Var_Name;
- end if;
- end loop Var_Name;
-
- declare
- Env : OS_Lib.String_Access := OS_Lib.Getenv (Path (K .. E));
---- 371,388 ----
- E := E + 1;
-
- Var_Name : loop
-! exit Var_Name when E > Path'Last;
-
- if Characters.Handling.Is_Letter (Path (E))
- or else Characters.Handling.Is_Digit (Path (E))
- then
- E := E + 1;
- else
- exit Var_Name;
- end if;
- end loop Var_Name;
-+
-+ E := E - 1;
-
- declare
- Env : OS_Lib.String_Access := OS_Lib.Getenv (Path (K .. E));
2001-12-11 Ed Schonberg <schonber@gnat.com>
* sem_ch10.adb (Install_Withed_Unit): If the unit is a generic instance
- that is the parent of other generics, the instance body replaces the
- instance node. Retrieve the instance of the spec, which is the one
+ that is the parent of other generics, the instance body replaces the
+ instance node. Retrieve the instance of the spec, which is the one
that is visible in clients and within the body.
2001-12-11 Vincent Celier <celier@gnat.com>
* gnatmain.adb: Initial version.
-
+
* gnatmain.ads: Initial version.
-
+
* prj-attr.adb (Initialisation_Data): Add package Gnatstub.
-
+
* snames.adb: Updated to match snames.ads.
-
+
* snames.ads: Added Gnatstub.
-
+
2001-12-11 Vincent Celier <celier@gnat.com>
- * prj-attr.adb (Initialization_Data): Change name from
+ * prj-attr.adb (Initialization_Data): Change name from
Initialisation_Data.
-
+
2001-12-11 Emmanuel Briot <briot@gnat.com>
* g-regpat.adb (Parse_Literal): Properly handle simple operators ?,
+ and * applied to backslashed expressions like \r.
-
+
2001-12-11 Vasiliy Fofanov <fofanov@gnat.com>
- * g-os_lib.ads: String_List type added, Argument_List type is now
+ * g-os_lib.ads: String_List type added, Argument_List type is now
subtype of String_List.
-
+
2001-12-11 Robert Dewar <dewar@gnat.com>
* g-os_lib.ads: Change copyright to FSF
Add comments for String_List type
-
+
2001-12-11 Vincent Celier <celier@gnat.com>
- * g-dirope.adb (Expand_Path): Fix bug. (wrong length when adding a
+ * g-dirope.adb (Expand_Path): Fix bug. (wrong length when adding a
string to the buffer).
2001-12-11 Ed Schonberg <schonber@gnat.com>
* freeze.adb: Make Freeze_Fixed_Point_Type visible, for use in
sem_attr.
-
+
* sem_attr.adb: Simplify previous fix for Address.
- (Set_Bounds): If prefix is a non-frozen fixed-point type, freeze now,
- to avoid anomalies where the bound of the type appears to raise
+ (Set_Bounds): If prefix is a non-frozen fixed-point type, freeze now,
+ to avoid anomalies where the bound of the type appears to raise
constraint error.
2001-12-11 Robert Dewar <dewar@gnat.com>
- * lib-xref.adb (Output_Refs): Make sure pointers are always properly
+ * lib-xref.adb (Output_Refs): Make sure pointers are always properly
handled.
-
+
2001-12-11 Ed Schonberg <schonber@gnat.com>
- * sem_ch12.adb (Analyze_Subprogram_Instantiation): Check for a
+ * sem_ch12.adb (Analyze_Subprogram_Instantiation): Check for a
renamed unit before checking for recursive instantiations.
-
+
2001-12-11 Emmanuel Briot <briot@gnat.com>
* prj.ads: Add comments for some of the fields.
2001-12-11 Robert Dewar <dewar@gnat.com>
- * lib-xref.adb (Output_Refs): Don't output type references outside
+ * lib-xref.adb (Output_Refs): Don't output type references outside
the main unit if they are not otherwise referenced.
-
+
2001-12-11 Ed Schonberg <schonber@gnat.com>
- * sem_attr.adb (Analyze_attribute, case Address and Size): Simplify
+ * sem_attr.adb (Analyze_attribute, case Address and Size): Simplify
code and diagnose additional illegal uses
-
- * sem_util.adb (Is_Object_Reference): An indexed component is an
+
+ * sem_util.adb (Is_Object_Reference): An indexed component is an
object only if the prefix is.
-
+
2001-12-11 Vincent Celier <celier@gnat.com>
* g-diopit.adb: Initial version.
-
+
* g-diopit.ads: Initial version.
-
+
* g-dirope.adb:
(Expand_Path): Avoid use of Unbounded_String
(Find, Wildcard_Iterator): Moved to child package Iteration
-
+
* Makefile.in: Added g-diopit.o to GNATRTL_NONTASKING_OBJS
-
+
2001-12-11 Robert Dewar <dewar@gnat.com>
* sem_attr.adb: Minor reformatting
2001-12-11 Ed Schonberg <schonber@gnat.com>
* sem_ch3.adb: Clarify some ???.
-
+
2001-12-11 Robert Dewar <dewar@gnat.com>
- * exp_util.adb (Must_Be_Aligned): Removed, replaced by
+ * exp_util.adb (Must_Be_Aligned): Removed, replaced by
Exp_Pakd.Known_Aligned_Enough
-
- * sem_ch13.adb (Check_Address_Alignment): Removed, extended
+
+ * sem_ch13.adb (Check_Address_Alignment): Removed, extended
version is moved to Exp_Ch13.
2001-12-11 Robert Dewar <dewar@gnat.com>
* einfo.ads: Minor reformatting
-
+
* exp_ch5.adb: Add comment for previous.change
-
+
* ali.adb: New interface for extended typeref stuff.
-
+
* ali.ads: New interface for typeref stuff.
-
+
* checks.adb (Apply_Alignment_Check): New procedure.
-
+
* debug.adb: Add -gnatdM for modified ALI output
-
+
* exp_pakd.adb (Known_Aligned_Enough): Replaces Known_Aligned_Enough.
-
- * lib-xref.adb: Extend generation of <..> notation to cover
- subtype/object types. Note that this is a complete rewrite,
- getting rid of the very nasty quadratic algorithm previously
+
+ * lib-xref.adb: Extend generation of <..> notation to cover
+ subtype/object types. Note that this is a complete rewrite,
+ getting rid of the very nasty quadratic algorithm previously
used for derived type output.
-
- * lib-xref.ads: Extend description of <..> notation to cover
- subtype/object types. Uses {..} for these other cases.
+
+ * lib-xref.ads: Extend description of <..> notation to cover
+ subtype/object types. Uses {..} for these other cases.
Also use (..) for pointer types.
-
+
* sem_util.adb (Check_Potentially_Blocking_Operation): Slight cleanup.
-
- * exp_pakd.adb: Minor reformatting. Note that prevous RH should say:
+
+ * exp_pakd.adb: Minor reformatting. Note that prevous RH should say:
(Known_Aligned_Enough): Replaces Must_Be_Aligned.
2001-12-11 Vincent Celier <celier@gnat.com>
Changed /COMPILE_ONLY to /ACTIONS=COMPILE
Changed /BIND_ONLY to /ACTIONS=BIND
Changed /LINK_ONLY to /ACTIONS=LINK
-
+
2001-12-11 Ed Schonberg <schonber@gnat.com>
* sem_ch8.adb (Find_Selected_Component): improved search for a
candidate package in case of error.
-
+
* sem_ch12.adb (Inline_Instance_Body): place head of use_clause
chain back on scope stack before reinstalling use clauses.
-
+
* exp_ch5.adb (Expand_N_If_Statement): if Constant_Condition_Warnings
is enabled, do not kill the code for the condition, to preserve
warning.
2001-12-11 Robert Dewar <dewar@gnat.com>
- * checks.adb (Insert_Valid_Check): Apply validity check to expression
+ * checks.adb (Insert_Valid_Check): Apply validity check to expression
of conversion, not to result of conversion.
2001-12-11 Ed Schonberg <schonber@gnat.com>
-
- * sem_ch3.adb (Build_Derived_Record_Type): set Controlled flag
- before freezing parent. If the declarations are mutually recursive,
- an access to the current record type may be frozen before the
+
+ * sem_ch3.adb (Build_Derived_Record_Type): set Controlled flag
+ before freezing parent. If the declarations are mutually recursive,
+ an access to the current record type may be frozen before the
derivation is complete.
2001-12-05 Vincent Celier <celier@gnat.com>
- * gnatcmd.adb: (MAKE): Add new translations: -b /BIND_ONLY,
+ * gnatcmd.adb: (MAKE): Add new translations: -b /BIND_ONLY,
-c /COMPILE_ONLY, -l /LINK_ONLY
-
+
* opt.ads:
(Bind_Only): New Flag
(Link_Only): New flag
-
- * switch.adb (Scan_Make_Switches): Add processing for -b (Bind_Only)
+
+ * switch.adb (Scan_Make_Switches): Add processing for -b (Bind_Only)
and -l (Link_Only)
-
+
* makeusg.adb: Add new switches -b and -l. Update Copyright notice.
-
+
* make.adb:
(Do_Compile_Step, Do_Bind_Step, Do_Link_Step): New flags.
(Gnatmake): Set the step flags. Only perform a step if the
2001-12-05 Ed Schonberg <schonber@gnat.com>
- * sem_eval.adb (Eval_Concatenation): If left operand is a null string,
+ * sem_eval.adb (Eval_Concatenation): If left operand is a null string,
get bounds from right operand.
-
+
* sem_eval.adb: Minor reformatting
-
- * exp_util.adb (Make_Literal_Range): use bound of literal rather
+
+ * exp_util.adb (Make_Literal_Range): use bound of literal rather
than Index'First, its lower bound may be different from 1.
-
- * exp_util.adb: Undo earlier change, fixes ACVC regressions C48009B
+
+ * exp_util.adb: Undo earlier change, fixes ACVC regressions C48009B
and C48009J
-
+
2001-12-05 Vincent Celier <celier@gnat.com>
* prj-nmsc.adb Minor reformatting
-
- * prj-nmsc.adb (Language_Independent_Check): Reset Library flag if
+
+ * prj-nmsc.adb (Language_Independent_Check): Reset Library flag if
set and libraries are not supported.
-
+
2001-12-05 Ed Schonberg <schonber@gnat.com>
- * sem_ch3.adb (Build_Derived_Private_Type): set Public status of
- private view explicitly, so the back-end can treat as a global
+ * sem_ch3.adb (Build_Derived_Private_Type): set Public status of
+ private view explicitly, so the back-end can treat as a global
when appropriate.
2001-12-05 Ed Schonberg <schonber@gnat.com>
unit, always replace instance node with new body, for ASIS use.
2001-12-05 Vincent Celier <celier@gnat.com>
-
- * prj-nmsc.adb (Language_Independent_Check): Issue a warning if
- libraries are not supported and both attributes Library_Name and
+
+ * prj-nmsc.adb (Language_Independent_Check): Issue a warning if
+ libraries are not supported and both attributes Library_Name and
Library_Dir are specified.
-
- * prj-proc.adb (Expression): Set location of Result to location of
+
+ * prj-proc.adb (Expression): Set location of Result to location of
first term.
-
+
* Makefile.in: Add mlib.o, mlib-fil.o, mlib-tgt and mlib-utl to GNATLS.
(prj-nmsc is now importing MLib.Tgt)
-
+
* prj-proc.adb: Put the change indicated above that was forgotten.
2001-12-05 Robert Dewar <dewar@gnat.com>
* sem_ch3.adb (Build_Derived_Concurrent_Type): If derivation imposes a
constraint, introduce explicit subtype declaration and derive from it.
-
+
* sem_ch3.adb: Minor reformatting
2001-12-05 Robert Dewar <dewar@gnat.com>
- * checks.adb (Determine_Range): Increase cache size for checks.
+ * checks.adb (Determine_Range): Increase cache size for checks.
Minor reformatting
-
+
* exp_ch6.adb: Minor reformatting
(Expand_N_Subprogram_Body): Reset Is_Pure for any subprogram that has
a parameter whose root type is System.Address, since treating such
subprograms as pure in the code generator is almost surely a mistake
that will lead to unexpected results.
-
- * exp_util.adb (Remove_Side_Effects): Clean up old ??? comment and
+
+ * exp_util.adb (Remove_Side_Effects): Clean up old ??? comment and
change handling of conversions.
-
+
* g-regexp.adb: Use System.IO instead of Ada.Text_IO.
2001-12-05 Ed Schonberg <schonber@gnat.com>
- * sem_ch3.adb (Analyze_Object_Declaration): If expression is an
- aggregate with static wrong size, attach generated Raise node to
+ * sem_ch3.adb (Analyze_Object_Declaration): If expression is an
+ aggregate with static wrong size, attach generated Raise node to
declaration.
2001-12-05 Robert Dewar <dewar@gnat.com>
- * sem_attr.adb (Analyze_Attribute): Defend against bad Val attribute.
+ * sem_attr.adb (Analyze_Attribute): Defend against bad Val attribute.
Fixes compilation abandoned bomb in B24009B.
2001-12-05 Ed Schonberg <schonber@gnat.com>
* prj-dect.ads: Add ??? comment
Add 2001 to copyright notice (was not done in after all)
-
+
* prj-part.adb: Minor reformatting. Reword one awkward error message.
-
+
* prj.ads: Minor reformatting throughout, and add some ??? comments
-
+
* snames.ads: Minor reformatting
2001-12-05 Geert Bosch <bosch@gnat.com>
2001-12-05 Vincent Celier <celier@gnat.com>
* prj-dect.adb (Parse): Rename parameter Modifying to Extends.
-
+
* prj-dect.ads (Parse): Rename parameter Modifying to Extends.
-
+
* prj-env.adb: Minor comment changes (modifying -> extends).
-
+
* prj-nmsc.adb: Minor comment changes (modifying -> extends).
-
- * prj-part.adb (Parse_Single_Project): Change Tok_Modifying to
+
+ * prj-part.adb (Parse_Single_Project): Change Tok_Modifying to
Tok_Extends.
-
+
* prj.adb (Initialize): Change Modifying to Extends.
-
+
* scans.ads (Token_Type): Change Tok_Modifying to Tok_Extends.
-
+
* prj.ads: Minor comment change (Modifying -> extending).
-
+
* snames.ads: Change modifying to extends.
2001-12-05 Robert Dewar <dewar@gnat.com>
- * sem_warn.adb: Remove stuff for conditionals, we are not going to
+ * sem_warn.adb: Remove stuff for conditionals, we are not going to
do this after all.
-
- * sem_warn.ads: Remove stuff for conditionals, we are not going to
+
+ * sem_warn.ads: Remove stuff for conditionals, we are not going to
do this after all. Add 2001 to copyright notice
2001-12-04 Geert Bosch <bosch@gnat.com>
2001-12-04 Robert Dewar <dewar@gnat.com>
- * errout.adb (Error_Msg): Ignore attempt to put error msg at junk
- location if we already have errors. Stops some cases of cascaded
+ * errout.adb (Error_Msg): Ignore attempt to put error msg at junk
+ location if we already have errors. Stops some cases of cascaded
errors.
-
+
* errout.adb: Improve comment.
2001-12-04 Robert Dewar <dewar@gnat.com>
* sem_ch12.adb:
(Analyze_Formal_Type_Definition): Defend against Error.
(Analyze_Formal_Subprogram): Defend against Error.
-
- * par-ch12.adb (F_Formal_Type_Declaration): In case of error,
+
+ * par-ch12.adb (F_Formal_Type_Declaration): In case of error,
remove following semicolon if present. Removes cascaded error.
2001-12-04 Douglas B. Rupp <rupp@gnat.com>
2001-12-04 Ed Schonberg <schonber@gnat.com>
- * einfo.ads: Block_Node points to the identifier of the block, not to
- the block node itself, to preserve the link when the block is
- rewritten, e.g. within an if-statement with a static condition.
-
- * inline.adb (Cleanup_Scopes): recover block statement from block
+ * einfo.ads: Block_Node points to the identifier of the block, not to
+ the block node itself, to preserve the link when the block is
+ rewritten, e.g. within an if-statement with a static condition.
+
+ * inline.adb (Cleanup_Scopes): recover block statement from block
entity using new meaning of Block_Node.
-
- * sem_ch5.adb (Analyze_Block_Statement): set Block_Node to point to
+
+ * sem_ch5.adb (Analyze_Block_Statement): set Block_Node to point to
identifier of block node, rather than to node itself.
2001-12-04 Gary Dismukes <dismukes@gnat.com>
-
+
* layout.adb:
(Get_Max_Size): Fix "start of processing" comment to say Get_Max_Size.
(Discrimify): Go back to setting the Etypes of the selected component
- because the Vname component does not exist at this point and will
+ because the Vname component does not exist at this point and will
fail name resolution. Also set Analyzed.
Remove with and use of Sem_Res.
2001-12-04 Ed Schonberg <schonber@gnat.com>
- * sem_ch7.adb (New_Private_Type): Set Is_Tagged_Type flag before
+ * sem_ch7.adb (New_Private_Type): Set Is_Tagged_Type flag before
processing discriminants to diagnose illegal default values.
2001-12-04 Ed Schonberg <schonber@gnat.com>
- * sem_attr.adb (Resolve_Attribute): Handle properly an non-classwide
- access discriminant within a type extension that constrains its
+ * sem_attr.adb (Resolve_Attribute): Handle properly an non-classwide
+ access discriminant within a type extension that constrains its
parent discriminants.
2001-12-04 Ed Schonberg <schonber@gnat.com>
- * sem_ch3.adb (Find_Type_Of_Subtype_Indic): If subtype indication
+ * sem_ch3.adb (Find_Type_Of_Subtype_Indic): If subtype indication
is malformed, use instance of Any_Id to allow analysis to proceed.
-
- * par-ch12.adb (P_Formal_Type_Declaration): Propagate Error if
+
+ * par-ch12.adb (P_Formal_Type_Declaration): Propagate Error if
type definition is illegal.
(P_Formal_Derived_Type_Definition): Better recovery when TAGGED is
misplaced.
2001-12-04 Ed Schonberg <schonber@gnat.com>
- * sem_warn.adb (Output_Unreferenced_Messages): Extend previous fix to
+ * sem_warn.adb (Output_Unreferenced_Messages): Extend previous fix to
constants.
2001-12-04 Robert Dewar <dewar@gnat.com>
2001-12-04 Robert Dewar <dewar@gnat.com>
* exp_util.adb: Minor reformatting from last change
-
- * errout.adb (Check_For_Warning): For a Raised_Constraint_Error node
- which is a rewriting of an expression, traverse the original
+
+ * errout.adb (Check_For_Warning): For a Raised_Constraint_Error node
+ which is a rewriting of an expression, traverse the original
expression to remove warnings that may have been posted on it.
2001-12-04 Ed Schonberg <schonber@gnat.com>
- * exp_util.adb (Must_Be_Aligned): Return false for a component of a
+ * exp_util.adb (Must_Be_Aligned): Return false for a component of a
record that has other packed components.
2001-12-04 Douglass B. Rupp <rupp@gnat.com>
2001-12-04 Arnaud Charlet <charlet@gnat.com>
- * Makefile.adalib: Clarify step 3 (use of gnat.adc) as it causes
+ * Makefile.adalib: Clarify step 3 (use of gnat.adc) as it causes
more confusion than it solves.
2001-12-04 Geert bosch <bosch@gnat.com>
2001-12-04 Geert Bosch <bosch@gnat.com>
- * Makefile.in (update-sources): New target.
+ * Makefile.in (update-sources): New target.
For use by gcc_release script.
2001-12-04 Ed Schonberg <schonber@gnat.com>
- * sem_prag.adb (Analyze_Pragma, case Validity_Checks): do not treat as
+ * sem_prag.adb (Analyze_Pragma, case Validity_Checks): do not treat as
a configuration pragma, it is now legal wherever a pragma can appear.
2001-12-04 Zack Weinberg <zack@codesourcery.com>
* einfo.adb (Has_Pragma_Pure_Function): New flag.
Fix problem that stopped ceinfo from working
-
+
* einfo.ads (Has_Pragma_Pure_Function): New flag.
-
+
* sem_prag.adb (Pure_Function): Set new flag Has_Pragma_Pure_Function.
2001-12-04 Douglas B. Rupp <rupp@gnat.com>
(Preserve_Mode): New boolean.
(Write_Unit): Pass time stamp.
Implement -p switch (preserve time stamps).
-
+
* gnatcmd.adb (CHOP): Add translation for -p (/PRESERVE).
-
+
* gnatchop.adb: Do usage info for -p switch
-
+
* adaint.h (__gnat_set_file_time_name): New function
-
+
* adaint.c (__gnat_set_file_time_name): Implement
-
+
* adaint.h: Fix typo
2001-12-03 Robert Dewar <dewar@gnat.com>