1 2002-06-04 Andreas Jaeger <aj@suse.de>
3 * Make-lang.in (gnatbind): Readd rule that has been lost in last
6 2002-06-03 Geoffrey Keating <geoffk@redhat.com>
10 * config-lang.in (gtfiles): Add ada-tree.h.
11 * ada-tree.h (SET_TYPE_CI_CO_LIST): New.
12 (SET_TYPE_MODULUS): New.
13 (SET_TYPE_INDEX): New.
14 (SET_TYPE_DIGITS_VALUE): New.
15 (SET_TYPE_RM_SIZE): New.
16 (SET_TYPE_UNCONSTRAINED_ARRAY): New.
17 (SET_TYPE_ADA_SIZE): New.
18 (SET_TYPE_ACTUAL_BOUNDS): New.
19 (SET_DECL_CONST_CORRESPONDING_VAR): New.
20 (SET_DECL_ORIGINAL_FIELD): New.
21 (TREE_LOOP_ID): Correct typo.
22 * decl.c: Use new macros.
23 * utils.c: Include debug.h, use new macros.
24 * utils2.c: Use new macros.
26 * ada-tree.h: Update all macros for new tree description.
27 (struct tree_loop_id): New.
28 (union lang_tree_node): New.
29 (struct lang_decl): New.
30 (struct lang_type): New.
31 * misc.c (gnat_mark_tree): Delete.
32 (LANG_HOOKS_MARK_TREE): Delete.
33 * trans.c (tree_transform): No longer any need to cast
36 * utils.c (struct language_function): New dummy structure.
38 * Makefile.in (decl.o): gt-ada-<filename.h> is in objdir, not srcdir.
40 (utils.o): Likewise; also gtype-ada.h.
41 * Make-lang.in (gnat1): Add dependency on s-gtype.
42 (gnatbind): Add dependency on $(CONFIG_H).
43 * utils.c: Correct last #include.
44 (stuct e_stack): Remove unnecessary 'static'.
45 (mark_e_stack): Remove unused prototype.
47 * scn-nlit.adb: Remove whitespace after version number to
48 keep lines under 80 chars.
49 * snames.adb: Likewise.
50 * treepr.ads: Likewise.
52 * Makefile.in (decl.o): Include gt-ada-<filename>.h.
54 (utils.o): Include gt-ada-<filename>.h and gtype-ada.h.
55 * config-lang.in (gtfiles): New.
56 * decl.c: Use gengtype for roots.
57 * gigi.h: Use gengtype for roots.
58 * trans.c: Use gengtype for roots.
59 * utils.c: Use gengtype for roots, marking. Include gtype-ada.h.
61 2002-06-02 Gabriel Dos Reis <gdr@codesourcery.com>
63 * misc.c (gnat_init): Adjust setting of internal_error_function.
65 2002-06-01 Joseph S. Myers <jsm28@cam.ac.uk>
67 * gnat_ug.texi: Use @ifnottex instead of @ifinfo.
68 * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
69 gnat_ug_wnt.texi: Regenerate.
71 2002-05-31 Florian Weimer <fw@deneb.enyo.de>
73 * 5ntaprop.adb (with System.OS_Primitives): Remove.
75 * cstreams.c (max_path_len): Move from here ...
76 * adaint.c (__gnat_max_path_len): ... to here.
77 * adaint.c (__gnat_max_path_len): Declare.
78 * g-dirope.adb (Max_Path): Adjust.
79 * g-os_lib.adb (Normalize_Pathname.Max_Path): Adjust.
80 * i-cstrea.ads (max_path_len): Adjust.
81 * osint.adb (Get_RTS_Search_Dir.Max_Path): Adjust.
82 * xr_tabls.adb (Dir_Name.Max_Path: Adjust.
84 * Makefile.in, Make-lang.in: Documentation is now built in
85 Make-lang.in. Store Info and generated Texinfo files in the
87 * gnat_ug.texi: Remove CVS keywords, correct version number.
88 Set file name correctly.
90 * gnat_ug_*.texi: Add.
91 * .cvsignore: Ignore generated Texinfo files.
93 2002-05-30 Zack Weinberg <zack@codesourcery.com>
95 * ada.h: Add MI guard macro.
96 (SUBTYPE): Define constants with an anonymous enum, not static
98 (IN): Cast constants to appropriate type before use.
100 2002-05-26 Joseph S. Myers <jsm28@cam.ac.uk>
102 * gnatvsn.ads (Gnat_Version_String): Change to "3.2 20020526
105 2002-05-23 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
107 * Make-lang.in (CP, ECHO): Copy from Makefile.in.
108 (X_ADA_CFLAGS, T_ADA_CFLAGS, X_ADAFLAGS, T_ADAFLAGS): Likewise.
109 (ALL_ADAFLAGS, FORCE_DEBUG_ADAFLAGS, ADA_CFLAGS): Likewise.
110 (ALL_ADA_CFLAGS): Likewise.
111 (ADA_INCLUDES): Likewise.
112 Adapt for new working dir.
113 (GNATBIND): Use Makefile.in version.
114 (.SUFFIXES): Copy from Makefile.in.
116 (.adb.o, .ads.o): Copy from Makefile.in.
117 Added $(OUTPUT_OPTION).
118 (GNAT1_C_OBJS): Moved from Makefile.in.
119 Prefix with ada subdir.
120 (GNAT_ADA_OBJS, GNAT1_ADA_OBJS, GNAT1_OBJS, GNATBIND_OBJS): Likewise.
121 (EXTRA_GNAT1_OBJS): Moved from Makefile.in.
122 Adapt for new working dir.
123 (EXTRA_GNATBIND_OBJS): Likewise.
124 (ADA_BACKEND): Moved from Makefile.in.
125 Renamed to avoid conflict with global BACKEND.
127 (TARGET_ADA_SRCS): Moved from Makefile.in.
128 (gnat1$(exeext)): Replaced recursive rule with Makefile.in version.
130 (gnatbind$(exeext)): Replaced recursive rule with Makefile.in version.
131 (ada_extra_files): Moved from Makefile.in.
132 Prefix with ada subdir.
133 (ada/b_gnat1.c, ada/b_gnat1.o, ada/b_gnatb.c, ada/b_gnatb.o): Likewise.
134 (ada/treeprs.ads, ada/einfo.h, ada/sinfo.h, ada/nmake.adb): Likewise.
135 (ada/nmake.ads): Likewise.
136 (update-sources): Moved from Makefile.in.
137 Prefix with ada subdir.
138 (ada/sdefault.adb, ada/stamp-sdefault, ada/sdefault.o): Likewise.
139 (ADA_TREE_H): Likewise.
140 (ada/a-except.o, ada/s-assert.o, ada/s-memory.o): Likewise.
141 (ada/memtrack.o): Likewise.
142 (ada/adadecode.o): Likewise.
145 (ada/argv.o): Moved from Makefile.in.
146 Prefix with ada subdir.
148 (ada/cstreams.o, ada/exit.o, ada/final.o, ada/link.o): Likewise.
149 (ada/cio.o, ada/init.o, ada/raise.o, ada/tracebak.o): Likewise.
150 (ada/cuintp.o, ada/decl.o, ada/misc.o): Moved from Makefile.in.
151 Prefix with ada subdir.
152 (ada/targtyps.o, ada/trans.o, ada/utils.o, ada/utils2.o): Likewise.
153 (GNAT DEPENDENCIES): Regenerate.
154 * Makefile.in (MACHMODE_H, RTL_H, TREE_H): Removed, provided by
155 toplevel Makefile.in.
156 (EXTRA_GNAT1_OBJS, EXTRA_GNATBIND_OBJS): Removed.
157 (TARGET_ADA_SRCS): Removed.
158 (GNAT1_C_OBJS, GNAT_ADA_OBJS, GNAT1_ADA_OBJS, GNAT1_OBJS): Likewise.
159 (GNATBIND_OBJS): Likewise.
160 (ADA_INCLUDE_DIR, ADA_RTL_OBJ_DIR): Moved here.
162 (../gnat1$(exeext), ../gnatbind$(exeext)): Likewise.
164 (ada_extra_files): Likewise.
165 (b_gnat1.c, b_gnat1.o, b_gnatb.c, b_gnatb.o): Likewise.
166 (treeprs.ads, einfo.h, sinfo.h, nmake.adb, nmake.ads): Likewise.
167 (update-sources): Likewise.
168 (sdefault.adb, stamp-sdefault, sdefault.o): Likewise
169 (ADA_TREE_H): Likewise.
170 (adadecoce.o): Likewise.
171 (cuintp.o, decl.o, misc.o, trans.o, utils.o, utils2.o): Likewise.
172 (GNAT DEPENDENCIES): Likewise.
174 2002-05-16 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
176 * Makefile.adalib: Allow for PWDCMD to override hardcoded pwd.
177 * Makefile.in: Likewise.
179 2002-05-14 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
181 * Make-lang.in (gnat1$(exeext), gnatbind$(exeext), gnattools):
182 Restore $(CONFIG_H) and prefix.o dependencies.
183 (ada.stage[1-4]): Depend on stage?-start.
185 * Makefile.in (b_gnatb.c): Depend on interfac.o.
187 2002-05-02 Jim Wilson <wilson@redhat.com>
189 * utils.c (finish_record_type): Change record_size to record_type.
191 2001-05-02 John David Anglin <dave@hiauly1.hia.nrc.ca>
193 * ada/Makefile.in (X_ADA_CFLAGS, T_ADA_CFLAGS): New fragment overrides.
194 (ALL_ADA_CFLAGS): Define. Replace ADA_CFLAGS with ALL_ADA_CFLAGS in
195 ALL_ADAFLAGS, MOST_ADAFLAGS, and all compilations using CC.
197 2002-04-25 Neil Booth <neil@daikokuya.demon.co.uk>
199 * misc.c (gnat_parse_file): Update.
201 2002-04-24 Neil Booth <neil@daikokuya.demon.co.uk>
203 * misc.c (gnat_init): Don't set lang_attribute_common.
205 2002-04-21 Joseph S. Myers <jsm28@cam.ac.uk>
207 * gnat_rm.texi: Use @ifnottex instead of @ifinfo.
209 2002-04-21 Florian Weimer <fw@deneb.enyo.de>
211 * gnat_ug.texi: New file.
213 * gnat_rm.texi: Do not include texiplus.texi. Include fdl.texi
216 * xgnatug.adb, ug_words: New files.
218 * Makefile.in (doc, dvi): New targets. Build gnat_ug_*,
219 gnat_rm and gnat-style manuals.
221 2002-04-18 Neil Booth <neil@daikokuya.demon.co.uk>
223 * gigi.h (incomplete_type_error): Remove.
224 * utils.c (incomplete_type_error): Remove.
226 2002-04-16 Mark Mitchell <mark@codesourcery.com>
228 * trans.c (tree_transform): Add has_scope argument to
229 expand_start_stmt_expr.
231 2002-04-04 Neil Booth <neil@daikokuya.demon.co.uk>
233 * gigi.h (truthvalue_conversion): Rename.
234 * misc.c (LANG_HOOKS_TRUTHVALUE_CONVERSION): Redefine.
235 * trans.c (tree_transform): Update.
236 * utils2.c (truthvalue_conversion): Rename, update.
237 (build_binary_op, build_unary_op): Update.
239 2002-04-04 Laurent Guerby <guerby@acm.org>
241 * make.adb: Implement -margs, remove restriction about file name placement.
242 * makeusg.adb: Documentation update.
243 * Makefile.in (TOOLS_FLAGS_TO_PASS): Add VPATH=$(fsrcdir).
244 * Makefile.in (gnattools3): Comment out, gnatmem does not build without libaddr2line.
246 2002-04-04 Neil Booth <neil@daikokuya.demon.co.uk>
248 * utils.c (create_subprog_decl): Use SET_DECL_ASSEMBLER_NAME.
249 (builtin_function): Similarly.
251 2002-04-01 Neil Booth <neil@daikokuya.demon.co.uk>
253 * decl.c (gnat_to_gnu_entity): Update.
254 * gigi.h (mark_addressable): Rename.
255 * misc.c (LANG_HOOKS_MARK_ADDRESSABLE): Redefine.
256 * trans.c (tree_transform): Update.
257 * utils.c (create_var_decl): Update.
258 * util2.c (build_binary_op, build_unary_op,
259 fill_vms_descriptor): Update.
260 (mark_addressable): Rename, update.
262 2002-04-01 Neil Booth <neil@daikokuya.demon.co.uk>
264 * gigi.h (unsigned_type, signed_type, signed_or_unsigned_type):
266 * misc.c (LANG_HOOKS_SIGNED_TYPE, LANG_HOOKS_UNSIGNED_TYPE,
267 LANG_HOOKS_SIGNED_OR_UNSIGNED_TYPE): New.
268 * trans.c (tree_transform, convert_with_check): Update.
269 * utils.c (unsigned_type, signed_type, signed_or_unsigned_type):
272 2002-03-31 Neil Booth <neil@daikokuya.demon.co.uk>
274 * gigi.h (finish_incomplete_decl): Rename.
275 * misc.c (LANG_HOOKS_FINISH_INCOMPLETE_DECL): Redefine.
276 * utils.c (gnat_init_decl_processing): Don't set hook.
277 (finish_incomplete_decl): Rename.
279 2002-03-29 Andreas Schwab <schwab@suse.de>
281 * Makefile.in: Pass VPATH=$(fsrcdir) when calling make in rts
284 2001-03-28 Robert Dewar <dewar@gnat.com>
287 (Remove_Checks): New procedure
290 (Remove_Checks): New procedure
293 Use new Duplicate_Subexpr functions
294 (Duplicate_Subexpr_No_Checks): New procedure
295 (Duplicate_Subexpr_No_Checks_Orig): New procedure
296 (Duplicate_Subexpr): Restore original form (checks duplicated)
297 (Duplicate_Subexpr): Call Remove_Checks
300 (Duplicate_Subexpr_No_Checks): New procedure
301 (Duplicate_Subexpr_No_Checks_Orig): New procedure
302 Add 2002 to copyright notice
304 * sem_util.adb: Use new Duplicate_Subexpr functions
307 (Eval_Indexed_Component): This is the place to call
308 Constant_Array_Ref and to replace the value. We simply merge
309 the code of this function in here, since it is now no longer
310 used elsewhere. This fixes the problem of the back end not
311 realizing we were clever enough to see that this was
313 (Expr_Val): Remove call to Constant_Array_Ref
314 (Expr_Rep_Val): Remove call to Constant_Array_Ref
316 (Constant_Array_Ref): Deal with string literals (patch
317 suggested by Zack Weinberg on the gcc list)
319 2001-03-28 Ed Schonberg <schonber@gnat.com>
321 * exp_util.adb: Duplicate_Subexpr_No_Checks_Orig =>
322 Duplicate_Subexpr_Move_Checks.
324 * exp_util.ads: Duplicate_Subexpr_No_Checks_Orig =>
325 Duplicate_Subexpr_Move_Checks.
327 * sem_eval.adb: (Constant_Array_Ref): Verify that constant
328 value of array exists before retrieving it (it may a private
329 protected component in a function).
331 2002-03-28 Geert Bosch <bosch@gnat.com>
333 * prj-pp.adb : New file.
335 * prj-pp.ads : New file.
337 2002-03-28 Andreas Jaeger <aj@suse.de>
339 * Makefile.in (stamp-sdefault): Fix path for Makefile.
341 2002-03-28 Neil Booth <neil@daikokuya.demon.co.uk>
343 * misc.c (gnat_expand_expr): Move prototype.
345 2002-03-27 Neil Booth <neil@daikokuya.demon.co.uk>
347 * misc.c (insert_default_attributes): Remove.
349 2002-03-27 Neil Booth <neil@daikokuya.demon.co.uk>
351 * misc.c (LANG_HOOKS_EXPAND_EXPR): Redefine.
352 (gnat_init): Don't set hook.
353 (gnat_expand_expr): Fix prototype.
355 2002-03-27 Neil Booth <neil@daikokuya.demon.co.uk>
357 * misc.c (ggc_p): Remove.
359 2002-03-27 Geert Bosch <bosch@gnat.com>
361 * prj-makr.ads, prj-makr.adb : New files.
363 2002-03-26 Neil Booth <neil@daikokuya.demon.co.uk>
365 * misc.c (LANG_HOOKS_MARK_TREE): Redefine.
366 (lang_mark_tree): Make static, rename.
368 2002-03-25 Neil Booth <neil@daikokuya.demon.co.uk>
370 * misc.c (maybe_build_cleanup): Remove.
372 2002-03-24 Neil Booth <neil@daikokuya.demon.co.uk>
374 * gigi.h (yyparse): Remove.
376 2002-03-23 Florian Weimer <fw@deneb.enyo.de>
378 * gnat_rm.texi: Sync with ACT version.
379 (From Ben Brosgol <brosgol@gnat.com>)
381 2002-03-20 Neil Booth <neil@daikokuya.demon.co.uk>
383 * misc.c (LANG_HOOKS_DECL_PRINTABLE_NAME): Redefine.
384 (gnat_init): Remove old hook.
386 2002-03-17 Neil Booth <neil@daikokuya.demon.co.uk>
388 * misc.c (LANG_HOOKS_PARSE_FILE): Redefine.
389 (yyparse): Rename gnat_parse_file.
391 2002-03-14 Geoffrey Keating <geoffk@redhat.com>
393 Delete all lines containing "$Revision:".
394 * xeinfo.adb: Don't look for revision numbers.
395 * xnmake.adb: Likewise.
396 * xsinfo.adb: Likewise.
397 * xsnames.adb: Likewise.
398 * xtreeprs.adb: Likewise.
400 2002-03-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
402 * misc.c (gnat_tree_code_type, gnat_tree_code_length,
403 gnat_tree_code_name): Delete.
404 (tree_code_type, tree_code_length, tree_code_name): Define.
405 (gnat_init): Don't try to copy into the various tree_code
408 2002-03-11 Richard Henderson <rth@redhat.com>
410 * Makefile.in (.NOTPARALLEL): Add fake tag.
412 2002-03-07 Geert Bosch <bosch@gnat.com>
414 * adadecode.c, adadecode.h, aux-io.c, s-traces.adb, s-traces.ads,
415 s-tratas.adb, s-tratas.ads, sinput-d.adb, sinput-d.ads,
416 switch-b.adb, switch-b.ads, switch-c.adb, switch-c.ads,
417 switch-m.adb, switch-m.ads : New files.
419 2002-03-07 Geert Bosch <bosch@gnat.com>
421 * 41intnam.ads, 42intnam.ads, 4aintnam.ads, 4cintnam.ads,
422 4dintnam.ads, 4gintnam.ads, 4hintnam.ads, 4lintnam.ads,
423 4mintnam.ads, 4pintnam.ads, 4rintnam.ads, 4sintnam.ads,
424 4uintnam.ads, 4vcalend.adb, 4zintnam.ads, 52system.ads,
425 5amastop.adb, 5asystem.ads, 5ataprop.adb, 5atpopsp.adb,
426 5avxwork.ads, 5bosinte.adb, 5bsystem.ads, 5esystem.ads,
427 5fsystem.ads, 5ftaprop.adb, 5ginterr.adb, 5gmastop.adb,
428 5gsystem.ads, 5gtaprop.adb, 5gtasinf.adb, 5gtasinf.ads,
429 5hparame.ads, 5hsystem.ads, 5htaprop.adb, 5htraceb.adb,
430 5itaprop.adb, 5ksystem.ads, 5kvxwork.ads, 5lintman.adb,
431 5lsystem.ads, 5mvxwork.ads, 5ninmaop.adb, 5nosinte.ads,
432 5ntaprop.adb, 5ointerr.adb, 5omastop.adb, 5oosinte.adb,
433 5osystem.ads, 5otaprop.adb, 5otaspri.ads, 5pvxwork.ads,
434 5qtaprop.adb, 5sintman.adb, 5ssystem.ads, 5staprop.adb,
435 5stpopse.adb, 5svxwork.ads, 5tosinte.ads, 5uintman.adb,
436 5vasthan.adb, 5vinmaop.adb, 5vinterr.adb, 5vintman.adb,
437 5vmastop.adb, 5vparame.ads, 5vsystem.ads, 5vtaprop.adb,
438 5vtpopde.adb, 5wmemory.adb, 5wsystem.ads, 5wtaprop.adb,
439 5ysystem.ads, 5zinterr.adb, 5zintman.adb, 5zosinte.adb,
440 5zosinte.ads, 5zsystem.ads, 5ztaprop.adb, 6vcpp.adb, 6vcstrea.adb,
441 7sintman.adb, 7staprop.adb, 7stpopsp.adb, 9drpc.adb,
442 Make-lang.in, Makefile.in, a-caldel.adb, a-comlin.ads,
443 a-dynpri.adb, a-except.adb, a-except.ads, a-finali.adb,
444 a-ncelfu.ads, a-reatim.adb, a-retide.adb, a-stream.ads,
445 a-ststio.adb, a-ststio.ads, a-stwifi.adb, a-tags.adb, a-tasatt.adb,
446 a-textio.adb, a-tideau.adb, a-tiflau.adb, a-tigeau.adb,
447 a-tigeau.ads, a-tiinau.adb, a-timoau.adb, a-witeio.adb,
448 a-wtdeau.adb, a-wtenau.adb, a-wtflau.adb, a-wtgeau.adb,
449 a-wtgeau.ads, a-wtinau.adb, a-wtmoau.adb, ada-tree.def, ada-tree.h,
450 adaint.c, adaint.h, ali-util.adb, ali.adb, ali.ads, atree.adb,
451 atree.ads, atree.h, back_end.adb, bcheck.adb, bindgen.adb,
452 bindusg.adb, checks.adb, comperr.adb, config-lang.in, csets.adb,
453 csets.ads, cstand.adb, cstreams.c, debug.adb, debug.ads, decl.c,
454 einfo.adb, einfo.ads, einfo.h, elists.h, errout.adb, errout.ads,
455 eval_fat.adb, exp_aggr.adb, exp_attr.adb, exp_ch11.adb,
456 exp_ch12.adb, exp_ch13.adb, exp_ch2.adb, exp_ch3.adb, exp_ch3.ads,
457 exp_ch4.adb, exp_ch5.adb, exp_ch6.adb, exp_ch7.adb, exp_ch7.ads,
458 exp_ch9.adb, exp_ch9.ads, exp_dbug.adb, exp_dbug.ads, exp_disp.ads,
459 exp_dist.adb, exp_fixd.adb, exp_intr.adb, exp_pakd.adb,
460 exp_prag.adb, exp_strm.adb, exp_util.adb, exp_util.ads,
461 expander.adb, expect.c, fe.h, fmap.adb, fmap.ads, fname-uf.adb,
462 freeze.adb, frontend.adb, g-awk.adb, g-cgideb.adb, g-comlin.adb,
463 g-comlin.ads, g-debpoo.adb, g-dirope.adb, g-dirope.ads,
464 g-dyntab.adb, g-expect.adb, g-expect.ads, g-io.ads, g-io_aux.adb,
465 g-io_aux.ads, g-locfil.adb, g-locfil.ads, g-os_lib.adb,
466 g-os_lib.ads, g-regexp.adb, g-regpat.adb, g-socket.adb,
467 g-socket.ads, g-spipat.adb, g-table.adb, g-trasym.adb,
468 g-trasym.ads, gigi.h, gmem.c, gnat1drv.adb, gnatbind.adb, gnatbl.c,
469 gnatchop.adb, gnatcmd.adb, gnatdll.adb, gnatfind.adb, gnatlbr.adb,
470 gnatlink.adb, gnatls.adb, gnatmem.adb, gnatprep.adb, gnatvsn.ads,
471 gnatxref.adb, hlo.adb, hostparm.ads, i-cobol.adb, i-cpp.adb,
472 i-cstrea.ads, i-cstrin.adb, i-pacdec.adb, i-vxwork.ads,
473 impunit.adb, init.c, inline.adb, io-aux.c, layout.adb, lib-load.adb,
474 lib-util.adb, lib-writ.adb, lib-writ.ads, lib-xref.adb,
475 lib-xref.ads, lib.adb, lib.ads, make.adb, makeusg.adb, mdll.adb,
476 memroot.adb, misc.c, mlib-tgt.adb, mlib-utl.adb, mlib-utl.ads,
477 mlib.adb, namet.adb, namet.ads, namet.h, nlists.h, nmake.adb,
478 nmake.ads, nmake.adt, opt.adb, opt.ads, osint.adb, osint.ads,
479 output.adb, output.ads, par-ch2.adb, par-ch3.adb, par-ch5.adb,
480 par-prag.adb, par-tchk.adb, par-util.adb, par.adb, prj-attr.adb,
481 prj-dect.adb, prj-env.adb, prj-env.ads, prj-nmsc.adb, prj-part.adb,
482 prj-proc.adb, prj-strt.adb, prj-tree.adb, prj-tree.ads, prj.adb,
483 prj.ads, raise.c, raise.h, repinfo.adb, restrict.adb, restrict.ads,
484 rident.ads, rtsfind.adb, rtsfind.ads, s-arit64.adb, s-asthan.adb,
485 s-atacco.adb, s-atacco.ads, s-auxdec.adb, s-crc32.adb, s-crc32.ads,
486 s-direio.adb, s-fatgen.adb, s-fileio.adb, s-finimp.adb,
487 s-gloloc.adb, s-gloloc.ads, s-interr.adb, s-mastop.adb,
488 s-mastop.ads, s-memory.adb, s-parame.ads, s-parint.adb,
489 s-pooglo.adb, s-pooloc.adb, s-rpc.adb, s-secsta.adb, s-sequio.adb,
490 s-shasto.adb, s-soflin.adb, s-soflin.ads, s-stache.adb,
491 s-taasde.adb, s-taasde.ads, s-tadeca.adb, s-tadeca.ads,
492 s-tadert.adb, s-tadert.ads, s-taenca.adb, s-taenca.ads,
493 s-taprob.adb, s-taprop.ads, s-tarest.adb, s-tasdeb.adb,
494 s-tasini.adb, s-tasini.ads, s-taskin.adb, s-taskin.ads,
495 s-tasque.adb, s-tasque.ads, s-tasren.adb, s-tasren.ads,
496 s-tassta.adb, s-tasuti.adb, s-tasuti.ads, s-tataat.adb,
497 s-tataat.ads, s-tpoben.adb, s-tpoben.ads, s-tpobop.adb,
498 s-tposen.adb, s-tposen.ads, s-traceb.adb, s-traceb.ads,
499 s-unstyp.ads, s-widenu.adb, scn-nlit.adb, scn.adb, sem.adb,
500 sem_aggr.adb, sem_attr.adb, sem_attr.ads, sem_case.adb,
501 sem_ch10.adb, sem_ch11.adb, sem_ch11.ads, sem_ch12.adb,
502 sem_ch13.adb, sem_ch13.ads, sem_ch2.adb, sem_ch3.adb, sem_ch3.ads,
503 sem_ch4.adb, sem_ch5.adb, sem_ch6.adb, sem_ch6.ads, sem_ch7.adb,
504 sem_ch8.adb, sem_ch8.ads, sem_ch9.adb, sem_disp.adb, sem_dist.adb,
505 sem_elab.adb, sem_elim.adb, sem_elim.ads, sem_eval.adb,
506 sem_intr.adb, sem_mech.adb, sem_prag.adb, sem_res.adb,
507 sem_type.adb, sem_util.adb, sem_util.ads, sem_vfpt.adb,
508 sem_warn.adb, sinfo.adb, sinfo.ads, sinfo.h, sinput-l.adb,
509 sinput-l.ads, sinput.adb, sinput.ads, snames.adb, snames.ads,
510 snames.h, sprint.adb, sprint.ads, stringt.adb, stringt.ads,
511 stringt.h, style.adb, switch.adb, switch.ads, sysdep.c, system.ads,
512 table.adb, targparm.adb, targparm.ads, targtyps.c, tbuild.adb,
513 tbuild.ads, tracebak.c, trans.c, tree_gen.adb, tree_io.adb,
514 treepr.adb, treepr.ads, treeprs.ads, treeprs.adt, ttypes.ads,
515 types.adb, types.ads, types.h, uintp.ads, urealp.ads, usage.adb,
516 utils.c, utils2.c, validsw.adb, xnmake.adb, xr_tabls.adb,
517 xr_tabls.ads, xref_lib.adb, xref_lib.ads : Merge in ACT changes.
519 * 1ssecsta.adb, 1ssecsta.ads, a-chlat9.ads, a-cwila9.ads,
520 g-enblsp.adb, g-md5.adb, g-md5.ads, gnatname.adb, gnatname.ads,
521 mkdir.c, osint-b.adb, osint-b.ads, osint-c.adb, osint-c.ads,
522 osint-l.adb, osint-l.ads, osint-m.adb, osint-m.ads : New files
524 * 3lsoccon.ads, 5qparame.ads, 5qvxwork.ads, 5smastop.adb,
525 5zparame.ads, gnatmain.adb, gnatmain.ads, gnatpsys.adb : Removed
527 * mdllfile.adb, mdllfile.ads, mdlltool.adb, mdlltool.ads : Renamed
528 to mdll-fil.ad[bs] and mdll-util.ad[bs]
530 * mdll-fil.adb, mdll-fil.ads, mdll-utl.adb, mdll-utl.ads : Renamed
531 from mdllfile.ad[bs] and mdlltool.ad[bs]
533 2002-03-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
535 * utils.c (init_gnat_to_gnu, init_gigi_decls): Use ARRAY_SIZE in
536 lieu of explicit sizeof/sizeof.
538 2002-02-28 Neil Booth <neil@daikokuya.demon.co.uk>
540 * misc.c (copy_lang_decl): Remove.
542 2002-02-27 Zack Weinberg <zack@codesourcery.com>
544 * misc.c: Delete traditional-mode-related code copied from the
545 C front end but not used, or used only to permit the compiler
548 2002-02-07 Richard Henderson <rth@redhat.com>
550 * adaint.c (__gnat_to_gm_time): First arg is int, not time_t.
551 * adaint.h (__gnat_to_gm_time): Update prototype.
553 2002-01-30 Richard Henderson <rth@redhat.com>
555 * trans.c (tree_transform) [N_Loop_Statement]: Use
556 expand_exit_loop_top_cond.
558 2001-12-23 Richard Henderson <rth@redhat.com>
560 * utils.c (end_subprog_body): Push GC context around
561 rest_of_compilation for nested functions.
563 2001-12-23 Richard Henderson <rth@redhat.com>
565 * 5nosinte.ads: Get definition of "int" from Interfaces.C.
567 2001-12-23 Florian Weimer <fw@deneb.enyo.de>
569 * gnat-style.texi (Declarations and Types): Remove ancient style
570 rule which was mandated by code generation issues.
572 * gnat-style.texi (header): Add @dircategory, @direntry.
573 (title page): Remove date.
574 (general) Add @./@: where approriate, and two spaces after the
575 full stop at the end of a sentence. Use @samp markup when
576 referring concrete lexical entities (keywords, attribute names
577 etc.), and @syntax for ARM grammar elements. Use @r for English
578 text in comments. Use @emph for emphasis. Change "if-statements"
579 etc. to "if statements" (without @samp). Break long lines. Make
580 casing of section names consistent.
581 (Identifiers): Use @samp markup for variable names.
582 (Comments): Use @samp markup for comment characters. Line-end
583 comments may follow any Ada code, not just statements. Fix
584 misspelling of "Integer" as "integer".
585 (Loop statements): Do not use variable name "I", use "J".
586 (Subprogram Declarations): Document alignment.
587 (Subprogram Bodies, Block statements): Document empty line before
590 2001-12-22 Florian Weimer <fw@deneb.enyo.de>
592 * make.adb (Add_Switch): Make Generic_Position a procedure. The
593 function approach did not work well because of a side effect (the
594 function call could reallocate the table which was being indexed
595 using its result). Fixes ada/4851.
597 2001-12-19 Robert Dewar <dewar@gnat.com>
599 * bindgen.adb: Minor reformatting
601 * cstand.adb: Minor reformatting
603 * fmap.adb: Minor reformatting
604 Change name from Add for Add_To_File_Map (Add is much too generic)
605 Change Path_Name_Of to Mapped_Path_Name
606 Change File_Name_Of to Mapped_File_Name
607 Fix copyright dates in header
610 Change name from Add for Add_To_File_Map (Add is much too generic)
611 Change Path_Name_Of to Mapped_Path_Name
612 Change File_Name_Of to Mapped_File_Name
613 Fix copyright dates in header
615 * fname-uf.adb: Minor reformatting. New names of stuff in Fmap.
616 Add use clause for Fmap.
618 * make.adb: Minor reformatting
620 * osint.adb: Minor reformatting. Change of names in Fmap.
621 Add use clause for Fmap.
623 * prj-env.adb: Minor reformatting
625 * prj-env.ads: Minor reformatting
627 * switch.adb: Minor reformatting. Do proper raise of Bad_Switch if
628 error found (there were odd exceptions to this general rule in
629 -gnatec/-gnatem processing)
631 2001-12-19 Olivier Hainque <hainque@gnat.com>
633 * raise.c (__gnat_eh_personality): Exception handling personality
634 routine for Ada. Still in rough state, inspired from the C++ version
635 and still containing a bunch of debugging artifacts.
636 (parse_lsda_header, get_ttype_entry): Local (static) helpers, also
637 inspired from the C++ library.
639 * raise.c (eh_personality): Add comments. Part of work for the GCC 3
640 exception handling integration.
642 2001-12-19 Arnaud Charlet <charlet@gnat.com>
644 * Makefile.in: Remove use of 5smastop.adb which is obsolete.
645 (HIE_SOURCES): Add s-secsta.ad{s,b}.
646 (HIE_OBJS): Add s-fat*.o
647 (RAVEN_SOURCES): Remove files that are no longer required. Add
648 interrupt handling files.
649 (RAVEN_MOD): Removed, no longer needed.
651 2001-12-19 Robert Dewar <dewar@gnat.com>
653 * a-ngelfu.adb: Remove ??? comment for inappropriate Inline_Always
654 Add 2001 to copyright date
656 * g-regpat.adb: Change pragma Inline_Always to Inline. There is no
657 need to force universal inlining for these cases.
659 2001-12-19 Arnaud Charlet <charlet@gnat.com>
661 * s-taprob.adb: Minor clean ups so that this unit can be used in
664 * exp_ch7.adb: Allow use of secondary stack in HI mode.
665 Disallow it when pragma Restrictions (No_Secondary_Stack) is specified.
667 2001-12-19 Vincent Celier <celier@gnat.com>
669 * prj-tree.ads (Project_Node_Record): Add comments for components
670 Pkg_Id and Case_Insensitive.
672 2001-12-19 Pascal Obry <obry@gnat.com>
674 * g-socket.adb: Minor reformatting. Found while reading code.
676 2001-12-19 Robert Dewar <dewar@gnat.com>
678 * prj-tree.ads: Minor reformatting
680 2001-12-20 Joseph S. Myers <jsm28@cam.ac.uk>
682 * config-lang.in (diff_excludes): Remove.
684 2001-12-17 Ed Schonberg <schonber@gnat.com>
686 * sem_res.adb (Resolve_Selected_Component): do not generate a
687 discriminant check if the selected component is a component of
688 the argument of an initialization procedure.
690 * trans.c (tree_transform, case of arithmetic operators): If result
691 type is private, the gnu_type is the base type of the full view,
692 given that the full view itself may be a subtype.
694 2001-12-17 Robert Dewar <dewar@gnat.com>
696 * sem_res.adb: Minor reformatting
698 * trans.c (tree_transform, case N_Real_Literal): Add missing third
699 parameter in call to Machine (unknown horrible effects from this
702 * urealp.h: Add definition of Round_Even for call to Machine
703 Add third parameter for Machine
705 2001-12-17 Ed Schonberg <schonber@gnat.com>
707 * sem_warn.adb (Check_One_Unit): Suppress warnings completely on
708 predefined units in No_Run_Time mode.
710 2001-12-17 Richard Kenner <kenner@gnat.com>
712 * misc.c (insn-codes.h): Now include.
714 2001-12-17 Olivier Hainque <hainque@gnat.com>
716 * a-except.adb: Preparation work for future integration of the GCC 3
717 exception handling mechanism
718 (Notify_Handled_Exception, Notify_Unhandled_Exception): New routines
719 to factorize previous code sequences and make them externally callable,
720 e.g. for the Ada personality routine when the GCC 3 mechanism is used.
721 (Propagate_Exception, Raise_Current_Excep, Raise_From_Signal_Handler):
722 Use the new notification routines.
724 2001-12-17 Emmanuel Briot <briot@gnat.com>
726 * prj-tree.ads (First_Choice_Of): Document the when others case
728 2001-12-17 Arnaud Charlet <charlet@gnat.com>
730 * bindgen.adb (Gen_Ada_Init_*): Set priority of environment task in
731 HI-E mode, in order to support Ravenscar profile properly.
733 * cstand.adb (Create_Standard): Duration is a 32 bit type in HI-E
734 mode on 32 bits targets.
736 2001-12-17 Vincent Celier <celier@gnat.com>
738 * fmap.adb: Initial version.
740 * fmap.ads: Initial version.
742 * fname-uf.adb (Get_File_Name): Use mapping if unit name mapped.
743 If search is successfully done, add to mapping.
745 * frontend.adb: Initialize the mapping if a -gnatem switch was used.
748 (Gnatmake): Add new local variable Mapping_File_Name.
749 Create mapping file when using project file(s).
750 Delete mapping file before exiting.
752 * opt.ads (Mapping_File_Name): New variable
754 * osint.adb (Find_File): Use path name found in mapping, if any.
756 * prj-env.adb (Create_Mapping_File): New procedure
758 * prj-env.ads (Create_Mapping_File): New procedure.
760 * switch.adb (Scan_Front_End_Switches): Add processing for -gnatem
763 * usage.adb: Add entry for new switch -gnatem.
765 * Makefile.in: Add dependencies for fmap.o.
767 2001-12-17 Ed Schonberg <schonber@gnat.com>
769 * sem_ch10.adb (Analyze_With_Clause): Retrieve proper entity when unit
770 is a package instantiation rewritten as a package body.
771 (Install_Withed_Unit): Undo previous change, now redundant.
773 2001-12-17 Gary Dismukes <dismukes@gnat.com>
776 (Compute_Length): Move conversion to Unsigned to callers.
777 (Get_Max_Size): Convert Len expression to Unsigned after calls to
778 Compute_Length and Determine_Range.
779 (Layout_Array_Type): Convert Len expression to Unsigned after calls to
780 Compute_Length and Determine_Range.
781 Above changes fix problem with length computation for supernull arrays
782 where Max (Len, 0) wasn't getting applied due to the Unsigned
783 conversion used by Compute_Length.
785 2001-12-17 Arnaud Charlet <charlet@gnat.com>
788 (OK_To_Use_In_No_Run_Time_Mode): Allow Ada.Exceptions and
789 System.Secondary_Stack.
790 (OK_To_Use_In_Ravenscar_Mode): New table needed to implement Ravenscar
792 Remove unused entity RE_Exception_Data.
794 * rtsfind.adb (RTE): Allow Ravenscar Profile in HI mode.
796 * rident.ads (No_Secondary_Stack): New restriction.
798 2001-12-17 Joel Brobecker <brobecke@gnat.com>
800 * gnat_rm.texi: Fix minor typos. Found while reading the section
801 regarding "Bit_Order Clauses" that was sent to a customer.
802 Very interesting documentation!
804 2001-12-17 Robert Dewar <dewar@gnat.com>
806 * sem_case.adb (Choice_Image): Avoid creating improper character
807 literal names by using the routine Set_Character_Literal_Name. This
808 fixes bombs in certain error message cases.
810 2001-12-17 Arnaud Charlet <charlet@gnat.com>
812 * a-reatim.adb: Minor reformatting.
814 2001-12-17 Ed Schonberg <schonber@gnat.com>
816 * sem_ch12.adb (Validate_Derived_Type_Instance): Handle properly the
817 case where the formal is an extension of another formal in the current
818 unit or in a parent generic unit.
820 2001-12-17 Arnaud Charlet <charlet@gnat.com>
822 * s-tposen.adb: Update comments. Minor reformatting.
825 * s-tarest.adb: Update comments. Minor code reorganization.
827 2001-12-17 Gary Dismukes <dismukes@gnat.com>
829 * exp_attr.adb (Attribute_Tag): Suppress expansion of <type_name>'Tag
832 2001-12-17 Robert Dewar <dewar@gnat.com>
834 * exp_attr.adb: Minor reformatting
836 2001-12-17 Ed Schonberg <schonber@gnat.com>
838 * sem_ch3.adb (Build_Derived_Private_Type): Refine check to handle
839 derivations nested within a child unit: verify that the parent
840 type is declared in an outer scope.
842 2001-12-17 Robert Dewar <dewar@gnat.com>
844 * sem_ch12.adb: Minor reformatting
846 2001-12-17 Ed Schonberg <schonber@gnat.com>
848 * sem_warn.adb (Check_One_Unit): In No_Run_Time mode, do not post
849 warning if current unit is a predefined one, from which bodies may
852 2001-12-17 Robert Dewar <dewar@gnat.com>
854 * eval_fat.ads: Add comment that Round_Even is referenced in Ada code
855 Fix header format. Add 2001 to copyright date.
857 * exp_dbug.adb (Get_Encoded_Name): Fix out of bounds reference,
858 which caused CE during compilation if checks were enabled.
860 2001-12-17 Vincent Celier <celier@gnat.com>
863 (Switches_Of): New function
864 (Test_If_Relative_Path): New procedure
865 (Add_Switches): Use new function Switches_Of
866 (Collect_Arguments_And_Compile): Use new function Switches_Of.
867 When using a project file, test if there are any relative
868 search path. Fail if there are any.
869 (Gnatmake): Only add switches for the primary directory when not using
870 a project file. When using a project file, change directory to the
871 object directory of the main project file. When using a project file,
872 test if there are any relative search path. Fail if there are any.
873 When using a project file, fail if specified executable is relative
874 path with directory information, and prepend executable, if not
875 specified as an absolute path, with the exec directory. Make sure
876 that only one -o switch is transmitted to the linker.
878 * prj-attr.adb (Initialization_Data): Add project attribute Exec_Dir
881 (Ada_Check): Get Spec_Suffix_Loc and Impl_Suffix_Loc,
882 when using a non standard naming scheme.
883 (Check_Ada_Naming_Scheme): Make sure that error messages
884 do not raise exceptions.
885 (Is_Illegal_Append): Return True if there is no dot in the suffix.
886 (Language_Independent_Check): Check the exec directory.
888 * prj.adb (Project_Empty): Add new component Exec_Directory
891 (Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Add defaults.
892 (Project_Data): Add component Exec_Directory
894 * snames.adb: Updated to match snames.ads revision 1.215
896 * snames.ads: Added Exec_Dir
898 2001-12-17 Robert Dewar <dewar@gnat.com>
900 * make.adb: Minor reformatting
902 * prj-nmsc.adb: Minor reformatting
904 * snames.adb: Updated to match snames.ads
906 * snames.ads: Alphebetize entries for project file
908 2001-12-17 Ed Schonberg <schonber@gnat.com>
910 * trans.c (process_freeze_entity): Do nothing if the entity is a
911 subprogram that was already elaborated.
913 2001-12-17 Richard Kenner <kenner@gnat.com>
915 * decl.c (gnat_to_gnu_entity, object): Do not back-annotate Alignment
916 and Esize if object is referenced via pointer.
918 2001-12-17 Ed Schonberg <schonber@gnat.com>
920 * sem_ch3.adb (Analyze_Variant_Part): check that type of discriminant
921 is discrete before analyzing choices.
923 2001-12-17 Joel Brobecker <brobecke@gnat.com>
925 * bindgen.adb (Gen_Output_File_Ada): Generate a new C-like string
926 containing the name of the Ada Main Program. This string is mainly
927 intended for the debugger.
928 (Gen_Output_File_C): Do the equivalent change when generating a C file.
930 2001-12-17 Robert Dewar <dewar@gnat.com>
932 * ali.adb: Set new Dummy_Entry field in dependency entry
934 * ali.ads: Add Dummy_Entry field to source dependency table
936 * bcheck.adb (Check_Consistency): Ignore dummy D lines
938 * lib-writ.adb (Writ_ALI): Write dummy D lines for missing source files
940 * lib-writ.ads: Document dummy D lines for missing files.
942 * types.ads: (Dummy_Time_Stamp): New value for non-existant files
944 2001-12-17 Robert Dewar <dewar@gnat.com>
946 * ali.adb: Type reference does not reset current file.
948 * ali.adb: Recognize and scan renaming reference
950 * ali.ads: Add spec for storing renaming references.
952 * lib-xref.ads: Add documentation for handling of renaming references
954 * lib-xref.adb: Implement output of renaming reference.
957 (Determine_Range): Document local variables
958 (Determine_Range): Make sure Hbound is initialized. It looks as though
959 there could be a real problem here with an uninitialized reference
960 to Hbound, but no actual example of failure has been found.
962 2001-12-17 Laurent Pautet <pautet@gnat.com>
965 Fix comment of Shutdown_Socket and Close_Socket. These functions
966 should not fail silently because if they are called twice, this
967 probably means that there is a race condition in the user program.
968 Anyway, this behaviour is consistent with the rest of this unit.
969 When an error occurs, an exception is raised with the error message
970 as exception message.
972 2001-12-17 Robert Dewar <dewar@gnat.com>
974 * frontend.adb: Move call to Check_Unused_Withs from Frontend, so
975 that it happens before modification of Sloc values for -gnatD.
977 * gnat1drv.adb: Move call to Check_Unused_Withs to Frontend,
978 so that it happens before modification of Sloc values for -gnatD.
980 * switch.adb: Minor reformatting
982 2001-12-15 Richard Henderson <rth@redhat.com>
984 * sem_ch7.adb: Wrap comment.
986 2001-12-16 Joseph S. Myers <jsm28@cam.ac.uk>
988 * 5ataprop.adb, 5atpopsp.adb, 5ftaprop.adb, 5gmastop.adb,
989 5gtaprop.adb, 5htaprop.adb, 5itaprop.adb, 5lintman.adb,
990 5omastop.adb, 5oosinte.adb, 5otaprop.adb, 5staprop.adb,
991 5vinterr.adb, 5vtaprop.adb, 5vtpopde.adb, 5wintman.adb,
992 5wtaprop.adb, 5zinterr.adb, 5ztaprop.adb, 6vcstrea.adb,
993 7sintman.adb, 7staprop.adb, 9drpc.adb, ChangeLog, Makefile.in,
994 a-except.adb, a-tags.ads, a-tasatt.adb, a-teioed.adb,
995 a-textio.ads, a-witeio.ads, a-wtedit.adb, ali.ads, comperr.adb,
996 cstand.adb, einfo.ads, errout.adb, exp_ch11.adb, exp_ch2.adb,
997 exp_ch3.adb, exp_ch4.adb, exp_ch5.adb, exp_ch6.adb, exp_ch9.adb,
998 exp_util.adb, exp_util.ads, fname-uf.adb, g-cgi.ads, g-exctra.ads,
999 g-expect.ads, g-regist.adb, g-spipat.adb, gnatchop.adb,
1000 gnatlink.adb, gnatls.adb, gnatmain.adb, gnatmem.adb, init.c,
1001 make.adb, make.ads, mdlltool.adb, nlists.ads, osint.ads,
1002 par-ch3.adb, par-ch4.adb, par-ch5.adb, par-ch6.adb, par.adb,
1003 repinfo.adb, s-fatflt.ads, s-fatlfl.ads, s-fatllf.ads,
1004 s-fatsfl.ads, s-finimp.adb, s-finimp.ads, s-interr.adb,
1005 s-secsta.ads, s-shasto.ads, s-stalib.adb, s-stalib.ads,
1006 s-tarest.ads, s-tasdeb.adb, s-tassta.adb, s-tassta.ads,
1007 s-vaflop.ads, scans.ads, scn.adb, sem.ads, sem_aggr.adb,
1008 sem_attr.adb, sem_case.ads, sem_ch10.adb, sem_ch12.adb,
1009 sem_ch13.adb, sem_ch3.adb, sem_ch3.ads, sem_ch5.adb, sem_ch7.adb,
1010 sem_ch8.adb, sem_ch8.ads, sem_type.adb, sem_util.ads, sinfo.ads,
1011 sprint.adb, tbuild.ads, types.ads, utils.c, xeinfo.adb: Fix
1014 2001-12-14 Vincent Celier <celier@gnat.com>
1016 * osint.adb(Create_Debug_File): When an object file is specified,
1017 put the .dg file in the same directory as the object file.
1019 2001-12-14 Robert Dewar <dewar@gnat.com>
1021 * osint.adb: Minor reformatting
1023 * lib-xref.adb (Output_Instantiation): New procedure to generate
1024 instantiation references.
1026 * lib-xref.ads: Add documentation of handling of generic references.
1028 * ali.adb (Read_Instantiation_Ref): New procedure to read
1029 instantiation references
1031 * ali.ads: Add spec for storing instantiation references
1033 * bindusg.adb: Minor reformatting
1035 * switch.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
1037 * usage.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
1039 * gnatcmd.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
1041 * csets.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
1045 Add 2001 to copyright date
1046 Add entry for Latin-5 (Cyrillic ISO-8859-5)
1048 2001-12-14 Matt Gingell <gingell@gnat.com>
1050 * adaint.c: mktemp is a macro on Lynx and can not be used as an
1053 2001-12-14 Richard Kenner <kenner@gnat.com>
1055 * misc.c (gnat_expand_constant): Do not strip UNCHECKED_CONVERT_EXPR
1056 if operand is CONSTRUCTOR.
1058 2001-12-14 Ed Schonberg <schonber@gnat.com>
1060 * trans.c (tree_transform, case N_Assignment_Statement): Set lineno
1061 before emiting check on right-hand side, so that exception information
1064 2001-12-14 Richard Kenner <kenner@gnat.com>
1066 * utils.c (create_var_decl): Throw away initializing expression
1067 if just annotating types and non-constant.
1069 2001-12-14 Vincent Celier <celier@gnat.com>
1071 * prj-nmsc.adb: (Ada_Check): Migrate drom Ada_Default_... to
1074 * prj.adb: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
1076 (Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Move to spec.
1078 * prj.ads: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
1080 (Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Move from body.
1082 2001-12-16 Joseph S. Myers <jsm28@cam.ac.uk>
1084 * ChangeLog: Remove piece of diff output.
1086 2001-12-14 Geert Bosch <bosch@gnat.com>
1088 * config-lang.in: Update copyright notice
1090 * layout.adb: Remove commented out code.
1092 * mdllfile.ads: Update copyright notice. Fix header format.
1094 * sem_case.ads: Likewise.
1096 * sem_ch3.adb: Minor reformatting.
1098 2001-12-12 Geert Bosch <bosch@gnat.com>
1100 * freeze.ads: Update copyright date.
1102 * g-comlin.ads: Minor reformatting.
1104 * gnat-style.texi: Fix typo.
1106 2001-12-12 Geert Bosch <bosch@gnat.com>
1108 * einfo.h: Regenerate.
1110 2001-12-12 Ed Schonberg <schonber@gnat.com>
1112 * sem_ch12.adb (Save_Entity_Descendant): Use syntactic field names
1113 on known node types, rather than untyped fields. Further cleanups.
1115 2001-12-12 Robert Dewar <dewar@gnat.com>
1118 (Save_Entity_Descendant): Minor comment update.
1119 (Copy_Generic_Node): Deal with incorrect reference to Associated_Node
1120 of an N_Attribute_Reference node. As per note below, this does not
1121 eliminate need for Associated_Node in attribute ref nodes.
1122 (Associated_Node): Documentation explicitly mentions attribute
1123 reference nodes, since this field is used in such nodes.
1125 * sem_ch12.adb (Associated_Node): Minor documentation cleanup.
1127 2001-12-12 Robert Dewar <dewar@gnat.com>
1129 * s-stalib.adb: Add more comments on with statements being needed
1131 * par-ch12.adb: Minor reformatting
1133 * prj-dect.ads: Fix copyright header
1135 * s-arit64.adb (Multiply_With_Ovflo_Check): Fix case where both
1136 inputs fit in 32 bits, but the result still overflows.
1138 * s-fatgen.ads: Minor comment improvement
1140 2001-12-12 Ed Schonberg <schonber@gnat.com>
1142 * sem_ch4.adb (Analyze_Selected_Component): If the prefix is of a
1143 formal derived type, look for an inherited component from the full
1144 view of the parent, if any.
1146 2001-12-12 Robert Dewar <dewar@gnat.com>
1148 * checks.ads (Apply_Alignment_Check): New procedure.
1150 * exp_ch13.adb (Expand_N_Freeze_Entity): Generate dynamic check to
1151 ensure that the alignment of objects with address clauses is
1152 appropriate, and raise PE if not.
1154 * exp_util.ads (Must_Be_Aligned): Removed, replaced by
1155 Exp_Pakd.Known_Aligned_Enough
1157 * mdllfile.ads: Minor reformatting
1159 * mlib-fil.ads: Minor reformatting
1161 2001-12-12 Ed Schonberg <schonber@gnat.com>
1163 * exp_ch8.adb (Expand_N_Object_Renaming_Declaration): Extend previous
1164 fix to any component reference if enclosing record has non-standard
1167 2001-12-12 Vincent Celier <celier@gnat.com>
1169 * g-dirope.ads (Find, Wildcard_Iterator): Moved to child package
1172 2001-12-12 Ed Schonberg <schonber@gnat.com>
1174 * freeze.ads: Make Freeze_Fixed_Point_Type visible, for use in
1177 2001-12-12 Robert Dewar <dewar@gnat.com>
1179 * impunit.adb: Add entry for GNAT.Directory_Operations.Iteration
1181 2001-12-12 Emmanuel Briot <briot@gnat.com>
1183 * g-regexp.adb: Remove all debug code, since it isn't required anymore,
1184 and it adds dependencies to system.io.
1186 2001-12-12 Pascal Obry <obry@gnat.com>
1188 * g-dirope.adb (Expand_Path.Var): Correctly detect end of
1191 2001-12-11 Ed Schonberg <schonber@gnat.com>
1193 * sem_ch10.adb (Install_Withed_Unit): If the unit is a generic instance
1194 that is the parent of other generics, the instance body replaces the
1195 instance node. Retrieve the instance of the spec, which is the one
1196 that is visible in clients and within the body.
1198 2001-12-11 Vincent Celier <celier@gnat.com>
1200 * gnatmain.adb: Initial version.
1202 * gnatmain.ads: Initial version.
1204 * prj-attr.adb (Initialisation_Data): Add package Gnatstub.
1206 * snames.adb: Updated to match snames.ads.
1208 * snames.ads: Added Gnatstub.
1210 2001-12-11 Vincent Celier <celier@gnat.com>
1212 * prj-attr.adb (Initialization_Data): Change name from
1213 Initialisation_Data.
1215 2001-12-11 Emmanuel Briot <briot@gnat.com>
1217 * g-regpat.adb (Parse_Literal): Properly handle simple operators ?,
1218 + and * applied to backslashed expressions like \r.
1220 2001-12-11 Vasiliy Fofanov <fofanov@gnat.com>
1222 * g-os_lib.ads: String_List type added, Argument_List type is now
1223 subtype of String_List.
1225 2001-12-11 Robert Dewar <dewar@gnat.com>
1227 * g-os_lib.ads: Change copyright to FSF
1228 Add comments for String_List type
1230 2001-12-11 Vincent Celier <celier@gnat.com>
1232 * g-dirope.adb (Expand_Path): Fix bug. (wrong length when adding a
1233 string to the buffer).
1235 2001-12-11 Ed Schonberg <schonber@gnat.com>
1237 * freeze.adb: Make Freeze_Fixed_Point_Type visible, for use in
1240 * sem_attr.adb: Simplify previous fix for Address.
1241 (Set_Bounds): If prefix is a non-frozen fixed-point type, freeze now,
1242 to avoid anomalies where the bound of the type appears to raise
1245 2001-12-11 Robert Dewar <dewar@gnat.com>
1247 * lib-xref.adb (Output_Refs): Make sure pointers are always properly
1250 2001-12-11 Ed Schonberg <schonber@gnat.com>
1252 * sem_ch12.adb (Analyze_Subprogram_Instantiation): Check for a
1253 renamed unit before checking for recursive instantiations.
1255 2001-12-11 Emmanuel Briot <briot@gnat.com>
1257 * prj.ads: Add comments for some of the fields.
1259 2001-12-11 Robert Dewar <dewar@gnat.com>
1261 * lib-xref.adb (Output_Refs): Don't output type references outside
1262 the main unit if they are not otherwise referenced.
1264 2001-12-11 Ed Schonberg <schonber@gnat.com>
1266 * sem_attr.adb (Analyze_attribute, case Address and Size): Simplify
1267 code and diagnose additional illegal uses
1269 * sem_util.adb (Is_Object_Reference): An indexed component is an
1270 object only if the prefix is.
1272 2001-12-11 Vincent Celier <celier@gnat.com>
1274 * g-diopit.adb: Initial version.
1276 * g-diopit.ads: Initial version.
1279 (Expand_Path): Avoid use of Unbounded_String
1280 (Find, Wildcard_Iterator): Moved to child package Iteration
1282 * Makefile.in: Added g-diopit.o to GNATRTL_NONTASKING_OBJS
1284 2001-12-11 Robert Dewar <dewar@gnat.com>
1286 * sem_attr.adb: Minor reformatting
1288 2001-12-11 Ed Schonberg <schonber@gnat.com>
1290 * sem_ch3.adb: Clarify some ???.
1292 2001-12-11 Robert Dewar <dewar@gnat.com>
1294 * exp_util.adb (Must_Be_Aligned): Removed, replaced by
1295 Exp_Pakd.Known_Aligned_Enough
1297 * sem_ch13.adb (Check_Address_Alignment): Removed, extended
1298 version is moved to Exp_Ch13.
1300 2001-12-11 Robert Dewar <dewar@gnat.com>
1302 * einfo.ads: Minor reformatting
1304 * exp_ch5.adb: Add comment for previous.change
1306 * ali.adb: New interface for extended typeref stuff.
1308 * ali.ads: New interface for typeref stuff.
1310 * checks.adb (Apply_Alignment_Check): New procedure.
1312 * debug.adb: Add -gnatdM for modified ALI output
1314 * exp_pakd.adb (Known_Aligned_Enough): Replaces Known_Aligned_Enough.
1316 * lib-xref.adb: Extend generation of <..> notation to cover
1317 subtype/object types. Note that this is a complete rewrite,
1318 getting rid of the very nasty quadratic algorithm previously
1319 used for derived type output.
1321 * lib-xref.ads: Extend description of <..> notation to cover
1322 subtype/object types. Uses {..} for these other cases.
1323 Also use (..) for pointer types.
1325 * sem_util.adb (Check_Potentially_Blocking_Operation): Slight cleanup.
1327 * exp_pakd.adb: Minor reformatting. Note that prevous RH should say:
1328 (Known_Aligned_Enough): Replaces Must_Be_Aligned.
1330 2001-12-11 Vincent Celier <celier@gnat.com>
1333 Changed /COMPILE_ONLY to /ACTIONS=COMPILE
1334 Changed /BIND_ONLY to /ACTIONS=BIND
1335 Changed /LINK_ONLY to /ACTIONS=LINK
1337 2001-12-11 Ed Schonberg <schonber@gnat.com>
1339 * sem_ch8.adb (Find_Selected_Component): improved search for a
1340 candidate package in case of error.
1342 * sem_ch12.adb (Inline_Instance_Body): place head of use_clause
1343 chain back on scope stack before reinstalling use clauses.
1345 * exp_ch5.adb (Expand_N_If_Statement): if Constant_Condition_Warnings
1346 is enabled, do not kill the code for the condition, to preserve
1349 2001-12-11 Robert Dewar <dewar@gnat.com>
1351 * checks.adb (Insert_Valid_Check): Apply validity check to expression
1352 of conversion, not to result of conversion.
1354 2001-12-11 Ed Schonberg <schonber@gnat.com>
1356 * sem_ch3.adb (Build_Derived_Record_Type): set Controlled flag
1357 before freezing parent. If the declarations are mutually recursive,
1358 an access to the current record type may be frozen before the
1359 derivation is complete.
1361 2001-12-05 Vincent Celier <celier@gnat.com>
1363 * gnatcmd.adb: (MAKE): Add new translations: -b /BIND_ONLY,
1364 -c /COMPILE_ONLY, -l /LINK_ONLY
1367 (Bind_Only): New Flag
1368 (Link_Only): New flag
1370 * switch.adb (Scan_Make_Switches): Add processing for -b (Bind_Only)
1373 * makeusg.adb: Add new switches -b and -l. Update Copyright notice.
1376 (Do_Compile_Step, Do_Bind_Step, Do_Link_Step): New flags.
1377 (Gnatmake): Set the step flags. Only perform a step if the
1378 corresponding step flag is True.
1379 (Scan_Make_Arg): Reset the bind and link step flags when -u
1380 or -gnatc has been specified.
1382 2001-12-05 Ed Schonberg <schonber@gnat.com>
1384 * sem_eval.adb (Eval_Concatenation): If left operand is a null string,
1385 get bounds from right operand.
1387 * sem_eval.adb: Minor reformatting
1389 * exp_util.adb (Make_Literal_Range): use bound of literal rather
1390 than Index'First, its lower bound may be different from 1.
1392 * exp_util.adb: Undo earlier change, fixes ACVC regressions C48009B
1395 2001-12-05 Vincent Celier <celier@gnat.com>
1397 * prj-nmsc.adb Minor reformatting
1399 * prj-nmsc.adb (Language_Independent_Check): Reset Library flag if
1400 set and libraries are not supported.
1402 2001-12-05 Ed Schonberg <schonber@gnat.com>
1404 * sem_ch3.adb (Build_Derived_Private_Type): set Public status of
1405 private view explicitly, so the back-end can treat as a global
1408 2001-12-05 Ed Schonberg <schonber@gnat.com>
1410 * sem_ch12.adb (Instantiate_Package_Body): if instance is a compilation
1411 unit, always replace instance node with new body, for ASIS use.
1413 2001-12-05 Vincent Celier <celier@gnat.com>
1415 * prj-nmsc.adb (Language_Independent_Check): Issue a warning if
1416 libraries are not supported and both attributes Library_Name and
1417 Library_Dir are specified.
1419 * prj-proc.adb (Expression): Set location of Result to location of
1422 * Makefile.in: Add mlib.o, mlib-fil.o, mlib-tgt and mlib-utl to GNATLS.
1423 (prj-nmsc is now importing MLib.Tgt)
1425 * prj-proc.adb: Put the change indicated above that was forgotten.
1427 2001-12-05 Robert Dewar <dewar@gnat.com>
1429 * Makefile.in: Add dependencies for System.IO for GNAT.Regexp
1431 2001-12-05 Ed Schonberg <schonber@gnat.com>
1433 * sem_ch3.adb (Build_Derived_Concurrent_Type): If derivation imposes a
1434 constraint, introduce explicit subtype declaration and derive from it.
1436 * sem_ch3.adb: Minor reformatting
1438 2001-12-05 Robert Dewar <dewar@gnat.com>
1440 * checks.adb (Determine_Range): Increase cache size for checks.
1443 * exp_ch6.adb: Minor reformatting
1444 (Expand_N_Subprogram_Body): Reset Is_Pure for any subprogram that has
1445 a parameter whose root type is System.Address, since treating such
1446 subprograms as pure in the code generator is almost surely a mistake
1447 that will lead to unexpected results.
1449 * exp_util.adb (Remove_Side_Effects): Clean up old ??? comment and
1450 change handling of conversions.
1452 * g-regexp.adb: Use System.IO instead of Ada.Text_IO.
1454 2001-12-05 Ed Schonberg <schonber@gnat.com>
1456 * sem_ch3.adb (Analyze_Object_Declaration): If expression is an
1457 aggregate with static wrong size, attach generated Raise node to
1460 2001-12-05 Robert Dewar <dewar@gnat.com>
1462 * sem_attr.adb (Analyze_Attribute): Defend against bad Val attribute.
1463 Fixes compilation abandoned bomb in B24009B.
1465 2001-12-05 Ed Schonberg <schonber@gnat.com>
1468 Document use of Associated_Node on Selected_Components.
1469 (Save_Global_Operand_Descendants): Change to Save_Entity_Descendants,
1470 to clarify use of untyped descendant fields.
1472 2001-12-05 Robert Dewar <dewar@gnat.com>
1474 * prj-dect.ads: Add ??? comment
1475 Add 2001 to copyright notice (was not done in after all)
1477 * prj-part.adb: Minor reformatting. Reword one awkward error message.
1479 * prj.ads: Minor reformatting throughout, and add some ??? comments
1481 * snames.ads: Minor reformatting
1483 2001-12-05 Geert Bosch <bosch@gnat.com>
1485 * snames.adb: Autoupdate
1487 2001-12-05 Vincent Celier <celier@gnat.com>
1489 * prj-dect.adb (Parse): Rename parameter Modifying to Extends.
1491 * prj-dect.ads (Parse): Rename parameter Modifying to Extends.
1493 * prj-env.adb: Minor comment changes (modifying -> extends).
1495 * prj-nmsc.adb: Minor comment changes (modifying -> extends).
1497 * prj-part.adb (Parse_Single_Project): Change Tok_Modifying to
1500 * prj.adb (Initialize): Change Modifying to Extends.
1502 * scans.ads (Token_Type): Change Tok_Modifying to Tok_Extends.
1504 * prj.ads: Minor comment change (Modifying -> extending).
1506 * snames.ads: Change modifying to extends.
1508 2001-12-05 Robert Dewar <dewar@gnat.com>
1510 * sem_warn.adb: Remove stuff for conditionals, we are not going to
1513 * sem_warn.ads: Remove stuff for conditionals, we are not going to
1514 do this after all. Add 2001 to copyright notice
1516 2001-12-04 Geert Bosch <bosch@gnat.com>
1518 * einfo.h, sinfo.h, treeprs.ads: Regenerate.
1520 2001-12-04 Robert Dewar <dewar@gnat.com>
1522 * errout.adb (Error_Msg): Ignore attempt to put error msg at junk
1523 location if we already have errors. Stops some cases of cascaded
1526 * errout.adb: Improve comment.
1528 2001-12-04 Robert Dewar <dewar@gnat.com>
1531 (Analyze_Formal_Type_Definition): Defend against Error.
1532 (Analyze_Formal_Subprogram): Defend against Error.
1534 * par-ch12.adb (F_Formal_Type_Declaration): In case of error,
1535 remove following semicolon if present. Removes cascaded error.
1537 2001-12-04 Douglas B. Rupp <rupp@gnat.com>
1540 (Gen_Exception_Table_Ada): Write "begin" and then return if Num
1541 exceptions equals 0.
1542 (Gen_Exception_Table_C): Return if Num exceptions equals 0.
1543 Fixes PIWG E tests (which have to be run with -gnatL).
1545 2001-12-04 Robert Dewar <dewar@gnat.com>
1547 * einfo.ads: Minor reformatting
1549 2001-12-04 Ed Schonberg <schonber@gnat.com>
1551 * einfo.ads: Block_Node points to the identifier of the block, not to
1552 the block node itself, to preserve the link when the block is
1553 rewritten, e.g. within an if-statement with a static condition.
1555 * inline.adb (Cleanup_Scopes): recover block statement from block
1556 entity using new meaning of Block_Node.
1558 * sem_ch5.adb (Analyze_Block_Statement): set Block_Node to point to
1559 identifier of block node, rather than to node itself.
1561 2001-12-04 Gary Dismukes <dismukes@gnat.com>
1564 (Get_Max_Size): Fix "start of processing" comment to say Get_Max_Size.
1565 (Discrimify): Go back to setting the Etypes of the selected component
1566 because the Vname component does not exist at this point and will
1567 fail name resolution. Also set Analyzed.
1568 Remove with and use of Sem_Res.
1570 2001-12-04 Arnaud Charlet <charlet@gnat.com>
1572 * Makefile.in: (HIE_SOURCES): add s-fat*.
1574 2001-12-04 Robert Dewar <dewar@gnat.com>
1577 (Compile_Time_Known_Attribute): New procedure.
1578 (Eval_Attribute, case Size): Use Compile_Time_Known_Attribute to ensure
1581 2001-12-04 Ed Schonberg <schonber@gnat.com>
1583 * sem_ch7.adb (New_Private_Type): Set Is_Tagged_Type flag before
1584 processing discriminants to diagnose illegal default values.
1586 2001-12-04 Ed Schonberg <schonber@gnat.com>
1588 * sem_attr.adb (Resolve_Attribute): Handle properly an non-classwide
1589 access discriminant within a type extension that constrains its
1590 parent discriminants.
1592 2001-12-04 Ed Schonberg <schonber@gnat.com>
1594 * sem_ch3.adb (Find_Type_Of_Subtype_Indic): If subtype indication
1595 is malformed, use instance of Any_Id to allow analysis to proceed.
1597 * par-ch12.adb (P_Formal_Type_Declaration): Propagate Error if
1598 type definition is illegal.
1599 (P_Formal_Derived_Type_Definition): Better recovery when TAGGED is
1602 2001-12-04 Ed Schonberg <schonber@gnat.com>
1604 * sem_warn.adb (Output_Unreferenced_Messages): Extend previous fix to
1607 2001-12-04 Robert Dewar <dewar@gnat.com>
1609 * errout.adb: Minor reformatting
1611 2001-12-04 Robert Dewar <dewar@gnat.com>
1613 * exp_util.adb: Minor reformatting from last change
1615 * errout.adb (Check_For_Warning): For a Raised_Constraint_Error node
1616 which is a rewriting of an expression, traverse the original
1617 expression to remove warnings that may have been posted on it.
1619 2001-12-04 Ed Schonberg <schonber@gnat.com>
1621 * exp_util.adb (Must_Be_Aligned): Return false for a component of a
1622 record that has other packed components.
1624 2001-12-04 Douglass B. Rupp <rupp@gnat.com>
1626 * adaint.c: Minor cleanups.
1628 2001-12-04 Douglass B. Rupp <rupp@gnat.com>
1630 * adaint.c: Do not use utime.h on vxworks.
1632 2001-12-04 Arnaud Charlet <charlet@gnat.com>
1634 * Makefile.adalib: Clarify step 3 (use of gnat.adc) as it causes
1635 more confusion than it solves.
1637 2001-12-04 Geert bosch <bosch@gnat.com>
1639 * einfo.h, nmake.adb, nmake.ads, sinfo.h treeprs.ads: Regenerate.
1641 2001-12-04 Geert Bosch <bosch@gnat.com>
1643 * Makefile.in (update-sources): New target.
1644 For use by gcc_release script.
1646 2001-12-04 Ed Schonberg <schonber@gnat.com>
1648 * sem_prag.adb (Analyze_Pragma, case Validity_Checks): do not treat as
1649 a configuration pragma, it is now legal wherever a pragma can appear.
1651 2001-12-04 Zack Weinberg <zack@codesourcery.com>
1653 * Makefile.in: Don't set ALL. Delete @cross_defines@,
1654 @cross_overrides@, @build_overrides@ stanzas. INTERNAL_CFLAGS
1655 is now @CROSS@ -DIN_GCC; update comment.
1657 2001-12-04 Robert Dewar <dewar@gnat.com>
1659 * einfo.adb (Has_Pragma_Pure_Function): New flag.
1660 Fix problem that stopped ceinfo from working
1662 * einfo.ads (Has_Pragma_Pure_Function): New flag.
1664 * sem_prag.adb (Pure_Function): Set new flag Has_Pragma_Pure_Function.
1666 2001-12-04 Douglas B. Rupp <rupp@gnat.com>
1669 (File_Time_Stamp): New procedure.
1670 (Preserve_Mode): New boolean.
1671 (Write_Unit): Pass time stamp.
1672 Implement -p switch (preserve time stamps).
1674 * gnatcmd.adb (CHOP): Add translation for -p (/PRESERVE).
1676 * gnatchop.adb: Do usage info for -p switch
1678 * adaint.h (__gnat_set_file_time_name): New function
1680 * adaint.c (__gnat_set_file_time_name): Implement
1682 * adaint.h: Fix typo
1684 2001-12-03 Robert Dewar <dewar@gnat.com>
1686 * sinfo.ads: Minor reformatting. N_Freeze_Entity node does not
1687 have Associated_Node.
1689 2001-12-03 Robert Dewar <dewar@gnat.com>
1691 * prj-proc.adb: Minor reformatting
1693 * make.adb: Minor reformatting
1695 2001-12-03 Geert Bosch <bosch@gnat.com>
1697 * make.adb: Minor reformatting.
1699 2001-12-03 Robert Dewar <dewar@gnat.com>
1701 * sem_ch12.adb: Minor reformatting
1703 2001-12-03 Ed Schonberg <schonber@gnat.com>
1705 * sem_ch12.adb (Inline_Instance_Body): Use Save_Scope_Stack and
1706 push Standard on the stack before analyzing the instance body,
1707 in order to have a clean visibility environment.
1709 * sem_ch12.adb (Inline_Instance_Body): Remove redundant code.
1711 2001-12-03 Ed Schonberg <schonber@gnat.com>
1713 * sem_ch12.adb (Instantiate_Package_Body): Protect against double
1714 instantiation of a body that contains an inlined body.
1716 2001-12-03 Ed Schonberg <schonber@gnat.com>
1719 (Analyze_generic_subprogram_Declaration): Set outer_generic_scope,
1720 to prevent freezing within formal packages.
1721 (Freeze_Subprogram_Body): If body comes from another instance that
1722 appeared before its own body, place freeze node at end of current
1723 declarative part, to prevent a back-end crash.
1724 (Inline_Instance_Body): Handle properly a package instance within
1725 a subprogram instance that is a child unit.
1727 2001-12-01 Graham Stott <grahams@redhat.com>
1729 * Makefile.in (misc.o): Add missing $(srcdir) prefix
1730 and add optabs.h dependency.
1732 * misc.c: Include optabs.h
1733 (gnat_tree_code_type): Make static and const.
1734 (gnat_tree_code_length): Likewise.
1735 (gnat_tree_code_name): Likewise.
1736 (update_setjmp_buf): Obtain operands mode from insn_data.
1738 2001-11-29 Richard Henderson <rth@redhat.com>
1740 * init.c: Remove obsolete dwarf2 frame.h section.
1742 2001-11-29 Joseph S. Myers <jsm28@cam.ac.uk>
1744 * Make-lang.in (ada.generated-manpages): New dummy target.
1746 2001-11-29 Ed Schonberg <schonber@gnat.com>
1748 * g-os_lib.adb (Add_To_Command): use explicit loop to move string
1749 into Command, an array conversion is illegal here. Uncovered by
1752 2001/11/28 Geert Bosch <bosch@gnat.com>
1754 * init.c: Minor whitespace changes.
1756 2001-11-28 Doug Rupp <rupp@gnat.com>
1758 * init.c: (__gnat_install_handler,VMS): Increase size of alternate
1761 2001-11-28 Zack Weinberg <zack@codesourcery.com>
1763 * misc.c (gnat_expand_constant): Move declaration above
1764 definition of lang_hooks.
1765 (LANG_HOOKS_EXPAND_CONSTANT): Set to gnat_expand_constant.
1766 (gnat_init): lang_expand_constant no longer exists.
1768 (internal_error_function): Remove #ifdef HAVE_VPRINTF. We
1769 always have vprintf.
1770 (gnat_init): Always call set_internal_error_function.
1772 2001-11-27 Andreas Jaeger <aj@suse.de>
1774 * Makefile.in (stamp-tool_src_dir): Use symbolic link.
1776 2001-11-27 Laurent Guerby <guerby@acm.org>
1778 * Makefile.in: Regenerate Ada dependencies.
1780 2001-11-26 Richard Henderson <rth@redhat.com>
1782 * Make-lang.in (gnatbind, gnatmake, gnatbl, gnatchop, gnatcmd,
1783 gnatlink, gnatkr, gnatls, gnatmem, gnatprep, gnatpsta, gnatpsys,
1784 gnatxref, gnatfind, gnatlbr): Depend on CONFIG_H and prefix.o.
1786 2001-11-25 Laurent Guerby <guerby@acm.org>
1788 * sysdep.c (rts_get_*): Fix style.
1790 2001-11-19 Laurent Guerby <guerby@acm.org>
1792 * Makefile.in (INCLUDES_FOR_SUBDIR): Remove redundant system include
1793 since it is of no apparent use and cause warnings.
1795 2001-11-18 Neil Booth <neil@daikokuya.demon.co.uk>
1797 * misc.c (gnat_decode_option, gnat_init_options): Make definitions
1799 (gnat_init): Don't return NULL.
1800 (finish_parse): Remove.
1802 2001-11-17 Laurent Guerby <guerby@acm.org>
1804 * Make-lang.in (GNATLIBFLAGS): Add -W -Wall.
1805 * gigi.h (init_decl_processing): Rename to gnat_init_decl_processing.
1806 * io-aux.c: Provide K&R prototypes to all functions, reformat code.
1807 * lang-spec.h: Add missing struct field to silence warnings.
1808 * sysdep.c (rts_get_*): Provide K&R prototype.
1809 * sysdep.c (Unlock_Task, Lock_Task): Move to K&R prototype.
1810 * traceback.c (Unlock_Task, Lock_Task): Likewise.
1811 * tracebak.c (__gnat_backtrace): Remove unused variable.
1812 * utils.c (end_subprog_body): Move to K&R style.
1814 Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1816 * trans.c, utils2.c: Remove PALIGN parameter to get_inner_reference.
1818 2001-11-15 Neil Booth <neil@daikokuya.demon.co.uk>
1820 * misc.c (gnat_init): Change prototype. Include the
1821 functionality of the old init_parse and init_decl_processing.
1822 (gnat_init_decl_processing): New prototype.
1823 (init_parse): Remove.
1824 * utils.c (init_decl_processing): Rename gnat_init_decl_processing.
1826 2001-11-09 Neil Booth <neil@daikokuya.demon.co.uk>
1828 * misc.c (gnat_print_decl, gnat_print_type): Renamed.
1829 (LANG_HOOKS_PRINT_DECL, LANG_HOOKS_PRINT_TYPE): Override.
1830 (print_lang_statistics, lang_print_xnode, print_lang_identifier,
1831 set_yydebug): Remove.
1833 2001-11-09 Neil Booth <neil@daikokuya.demon.co.uk>
1835 * misc.c (LANG_HOOKS_NAME, LANG_HOOKS_IDENTIFIER_SIZE): Override.
1836 (struct lang_hooks): Constify.
1837 (language_string, lang_identify): Remove.
1838 * utils.c (init_decl_processing): Update.
1840 2001-11-06 Neil Booth <neil@cat.daikokuya.demon.co.uk>
1842 * misc.c: Include langhooks-def.h.
1843 * Makefile.in: Update.
1845 2001-10-30 Robert Dewar <dewar@gnat.com>
1848 (Check_Identifier): Rewrite circuit to be compatible with use of letters
1849 in the upper half of ASCII.
1850 (Check_Identifier): Minor reformatting
1852 2001-10-30 Geert Bosch <bosch@gnat.com>
1854 * (Associated_Node, Set_Associated_Node): Do not check for
1857 2001-10-30 Robert Dewar <dewar@gnat.com>
1859 * a-reatim.ads: Minor reformatting
1861 2001-10-30 Robert Dewar <dewar@gnat.com>
1863 * gnatdll.adb: Minor reformatting throughout. Many ??? added for
1864 undocumented declarations.
1866 2001-10-30 Pascal Obry <obry@gnat.com>
1868 * gnatdll.adb (Parse_Command_Line): handle -g option to be passed
1869 to the binder and linker.
1872 * mdll.ads: Fix layout. Update copyright notice.
1874 * mdll.adb: Fix layout. Update copyright notice.
1876 2001-10-30 Robert Dewar <dewar@gnat.com>
1878 * usage.adb: Minor fix to output for -gnaty.
1880 2001-10-30 Ed Schonberg <schonber@gnat.com>
1882 * a-reatim.ads: Makes Seconds_Count into a 64-bit integer,
1883 to accommodate all its possible values.
1885 * a-reatim.adb (Split): Special-case handling of Time_Span_First
1886 and of small absolute values of T.
1888 2001-10-30 Richard Kenner <kenner@gnat.com>
1890 * misc.c (gnat_expand_expr, case NULL_EXPR): Remove call to
1891 set_mem_attributes since not needed and wrong if RESULT if a REG;
1892 fixes ACATS failures.
1894 2001-10-30 Geert Bosch <bosch@gnat.com>
1896 * 86numaux.adb, a-tigeau.ads, a-wtgeau.ads, fname-sf.ads, g-traceb.ads,
1897 s-tasdeb.ads, sem_maps.ads: Add 2001 to copyright notice.
1899 2001-10-30 Robert Dewar <dewar@gnat.com>
1901 * bindusg.adb: Undocument -f switch.
1903 * gnatcmd.adb: Remove /FULL_ELABORATION.
1905 * opt.ads (Force_RM_Elaboration_Order): Document that this is
1908 * gnatbind.adb: Output new warning for use of obsolescent -f switch.
1910 * gnatbind.adb: Minor update of warning msg.
1912 2001-10-30 Vincent Celier <celier@gnat.com>
1914 * gnatcmd.adb (MAKE, BIND, LINK, LIST, FIND, XREF): Add translations
1915 for project file switches (-P (/PROJECT_FILE=),
1916 -X (/EXTERNAL_REFERENCE=) and -vPx (/PROJECT_FILE_VERBOSITY=DEFAULT
1919 2001-10-30 Geert Bosch <bosch@gnat.com>
1921 * decl.c: Minor whitespace fixes.
1923 2001-10-30 Richard Kenner <kenner@gnat.com>
1925 * utils2.c (build_allocator): Test for SIZE overflow in array case too
1927 2001-10-30 Geert Bosch <bosch@gnat.com>
1929 * ali-util.adb (Initialize_Checksum): Use out-mode instead of in out.
1930 Found due to GCC 3.0 warning of using uninitialized value.
1933 (Get_Max_Size): Use variant record for tracking value/expression.
1934 Makes logic clearer and prevents warnings for uninitialized variables.
1935 (Layout_Array_Type): Use variant record for tracking value/expression.
1936 Makes logic clearer and prevents warnings for uninitialized variables.
1938 2001-10-30 Robert Dewar <dewar@gnat.com>
1940 * lib.adb: Minor reformatting
1942 * s-taprop.ads: Minor reformatting
1944 2001-10-29 Laurent Guerby <guerby@acm.org>
1947 (Raise_From_Signal_Handler, Propagate_Signal_Exception): Make arg
1949 (_gnat_error_handler): Make MSG const.
1951 2001-10-29 Richard Kenner <kenner@gnat.com>
1953 * sysdep.c: Fix localtime_r problem on LynxOS.
1954 Also remove #elif to avoid warnings.
1956 * misc.c (yyparse): Don't set up and register jmpbuf; remove decls
1959 * decl.c (annotate_value): Make SIZE unsigned to avoid warning.
1961 2001-10-28 Joseph S. Myers <jsm28@cam.ac.uk>
1963 * 86numaux.adb, a-tigeau.ads, a-wtgeau.ads, decl.c, exp_ch6.adb,
1964 exp_ch9.adb, exp_util.adb, fname-sf.ads, freeze.ads, g-awk.adb,
1965 g-comlin.ads, g-dirope.adb, g-dyntab.ads, g-socket.ads,
1966 g-table.ads, g-traceb.ads, gnat-style.texi, gnatchop.adb, init.c,
1967 layout.adb, layout.ads, mdllfile.ads, mlib-fil.ads, osint.ads,
1968 s-fatgen.adb, s-imgrea.adb, s-taprop.ads, s-tasdeb.ads,
1969 sem_aggr.adb, sem_attr.adb, sem_case.ads, sem_ch13.adb,
1970 sem_ch3.adb, sem_elab.adb, sem_maps.ads, sem_res.adb,
1971 sem_util.ads, sinfo.ads, sinput.ads, table.adb, table.ads,
1972 types.ads, urealp.adb: Fix spelling errors.
1974 2001-10-27 Laurent Guerby <guerby@acm.org>
1976 * trans.c (gigi): Fix non determinism leading to bootstrap
1977 comparison failures for debugging information.
1979 2001-10-26 Florian Weimer <fw@deneb.enyo.de>
1981 * gnat_rm.texi: Use @./@: where appropriate.
1983 2001-10-26 Robert Dewar <dewar@gnat.com>
1985 * sinfo.adb: Define Associated_Node to overlap Entity field. Cleanup.
1987 2001-10-26 Richard Kenner <kenner@gnat.com>
1989 * gmem.c (__gnat_gmem_read_next): Properly check for EOF
1991 2001-10-26 Richard Kenner <kenner@gnat.com>
1993 * decl.c (validate_size): Modify message for bad size to avoid
1994 implication that compiler is modifying the size.
1996 2001-10-26 Robert Dewar <dewar@gnat.com>
1998 * prj-util.adb: Minor reformatting. Fix bad header format.
2000 2001-10-26 Robert Dewar <dewar@gnat.com>
2002 * sinfo.ads: Define Associated_Node to overlap Entity field. Cleanup.
2004 * sinfo.ads: Clarify use of Associated_Node (documentation only).
2006 * sem_ch12.adb: Change Node4 to Associated_Node. Change
2007 Associated_Node to Get_Associated_Node. Put use of Unchecked_Access
2008 much more narrowly in places where needed. These are cleanups.
2010 2001-10-26 Joel Brobecker <brobecke@gnat.com>
2012 * 5zosinte.ads (null_pthread): new constant.
2015 (Initialize_TCB): Initialize thread ID to null, to be able to verify
2016 later that this field has been set.
2017 (Finalize_TCB): ditto.
2018 (Suspend_Task): Verify that the thread ID is not null before using it.
2019 (Resume_Task): ditto.
2022 (Resume_All_Tasks): Lock the tasks list before using it.
2023 (Suspend_All_Tasks): ditto.
2025 2001-10-26 Richard Kenner <kenner@gnat.com>
2027 * decl.c (gnat_to_gnu_entity, case E_General_Access_Type):
2028 Make constant variant of designated type for Is_Access_Constant.
2029 Call update_pointer_to with main variant.
2031 * trans.c (process_freeze_entity, process_type):
2032 Call update_pointer_to on main variant.
2034 * utils.c (update_pointer_to): Make corresponding variant for NEW_TYPE.
2035 If main variant, update all other variants.
2037 * utils2.c (build_unary_op, case INDIRECT_REF): No longer set
2040 2001-10-26 Robert Dewar <dewar@gnat.com>
2042 * prj-util.adb: Minor reformatting
2044 2001-10-26 Robert Dewar <dewar@gnat.com>
2046 * prj-util.adb: Minor reformatting
2048 2001-10-26 Robert Dewar <dewar@gnat.com>
2050 * prj-attr.adb: Minor reformatting throughout
2052 2001-10-26 Robert Dewar <dewar@gnat.com>
2054 * prj-attr.ads: Minor reformatting
2055 Add ??? comment (this whole spec has almost no comments)
2057 2001-10-26 Vincent Celier <celier@gnat.com>
2059 * g-os_lib.adb (Normalize_Pathname): Preserve the double slash
2060 ("//") that precede the drive letter on Interix.
2062 2001-10-26 Geert Bosch <bosch@gnat.com>
2064 * gnat_rm.texi: Add GNAT Reference Manual.
2066 2001-10-25 Robert Dewar <dewar@gnat.com>
2068 * sem_ch8.adb (Analyze_Package_Renaming): Skip analysis if Name
2069 is Error. Similar change for other renaming cases.
2071 2001-10-25 Robert Dewar <dewar@gnat.com>
2073 * s-atacco.ads: Add pragma Inline_Always for functions.
2074 Fix header format. Add copyright 2001
2076 2001-10-25 Ed Schonberg <schonber@gnat.com>
2078 * par-ch3.adb (P_Subtype_Mark_Resync): for an anonymous array
2079 return Error rather than Empty so that analysis can proceed.
2081 2001-10-25 Ed Schonberg <schonber@gnat.com>
2083 * sem_util.adb (Enter_Name): better handling of cascaded error
2084 messages when a unit appears in its own context.
2086 2001-10-25 Ed Schonberg <schonber@gnat.com>
2088 * sem_util.adb (Defining_Entity): in case of error, attach created
2089 entity to specification, so that semantic analysis can proceed.
2091 2001-10-25 Robert Dewar <dewar@gnat.com>
2094 (Defining_Entity): Deal with Error.
2095 (Process_End_Label): Deal with bad end label for.
2097 2001-10-25 Ed Schonberg <schonber@gnat.com>
2099 * sem_elab.adb (Check_A_Call): refine message when call is in an
2100 instance but callee is not declared in the generic unit.
2102 2001-10-25 Ed Schonberg <schonber@gnat.com>
2104 * sem_elab.adb (Check_A_Call): check for renaming before finding the
2105 enclosing unit, which may already be different from the calling unit.
2107 2001-10-25 Geert Bosch <bosch@gnat.com>
2109 * 4gintnam.ads: fix header format.
2111 2001-10-25 Ed Schonberg <schonber@gnat.com>
2113 * sem_res.adb (Resolve_Call): if the call is actually an indexing
2114 operation on the result of a parameterless call, perform elaboration
2115 check after the node has been properly rewritten.
2117 * sem_ch12.adb (Copy_Generic_Node): after the proper body has been
2118 inlined within the generic tree, the defining identifier is not a
2121 2001-10-25 Ed Schonberg <schonber@gnat.com>
2123 * sem_res.adb (Resolve): special-case resolution of Null in an
2124 instance or an inlined body to avoid view conflicts.
2126 * sem_ch12.adb (Copy_Generic_Node): for allocators, check for view
2127 compatibility by retrieving the access type of the generic copy.
2129 2001-10-25 Robert Dewar <dewar@gnat.com>
2132 (Analyze_Number_Declaration): Handle error expression.
2133 (Signed_Integer_Type_Declaration): Handle error bound.
2134 (Analyze_Subtype_Indication): Handle error range.
2136 * sem_util.adb (Get_Index_Bounds): Check for Error.
2138 2001-10-25 Robert Dewar <dewar@gnat.com>
2140 * restrict.adb (Set_No_Run_Time_Mode): Set Discard_Names as default
2141 in no run time mode.
2143 2001-10-25 Pascal Obry <obry@gnat.com>
2145 * gnatmem.adb (Read_Next): fix Curs2 value to properly handle quiet
2146 mode case for ALLOC case.
2148 * gnatmem.adb (Read_Next): correctly fix parsing in Quiet mode on
2149 all platforms. Improvement of last change.
2151 2001-10-25 Robert Dewar <dewar@gnat.com>
2153 * exp_ch4.adb (Expand_N_Allocator): Minor reformatting.
2155 2001-10-25 Geert Bosch <bosch@gnat.com>
2157 * osint.adb (Is_Relative): Remove duplicate.
2159 2001-10-25 Pascal Obry <obry@gnat.com>
2161 * osint.adb (Read_Default_Search_Dirs): correctly detect relative
2162 pathnames in UNIX and DOS style with drive letter.
2163 (Is_Relative): new routine.
2165 * osint.adb: Minor reformatting
2167 * osint.adb (Is_Relative): implementation using
2168 GNAT.OS_Lib.Is_Absolute_Path. Better fix.
2170 2001-10-25 Pascal Obry <obry@gnat.com>
2172 * g-dirope.adb (Basename): correctly compute offset between the
2173 original Path and the translated one.
2175 * g-dirope.adb: (Base_Name): add some comments.
2177 2001-10-25 Robert Dewar <dewar@gnat.com>
2179 * exp_imgv.adb (Expand_Image_Attribute): Defend against bad use
2180 in HIE mode, avoids compilation abandoned message
2182 * exp_imgv.adb: Correct typo in previous change
2184 * exp_imgv.adb: Correct typo in previous change (not my day!)
2186 2001-10-25 Robert Dewar <dewar@gnat.com>
2188 * s-tpinop.ads: Add 2001 to copyright notice. Fix header format.
2190 2001-10-25 Pascal Obry <obry@gnat.com>
2192 * g-awk.ads: Move all pragma inlines next to the routine
2193 declarations. This is more uniform with other GNAT spec.
2195 2001-10-22 Geert Bosch <bosch@gnat.com>
2197 * Make-lang.in (gnattools, cross-gnattools): Remove gnatmem.
2199 2001-10-19 Geert Bosch <bosch@gnat.com>
2201 * Makefile.in (tools, gnattools): Remove gnatmem.
2203 2001-10-17 Richard Henderson <rth@redhat.com>
2205 * Makefile.in (misc.o): Depend on langhooks.h.
2206 * misc.c: Include it.
2207 (LANG_HOOKS_INIT, LANG_HOOKS_INIT_OPTIONS): New.
2208 (LANG_HOOKS_DECODE_OPTION): New.
2209 (lang_hooks): Use LANG_HOOKS_INITIALIZER.
2211 2001-10-16 Florian Weimer <fw@deneb.enyo.de>
2213 * trans.c (tree_transform): Adjust to recent change in
2214 expand_asm_operands to implement named asm operands.
2216 2001-10-11 Ed Schonberg <schonber@gnat.com>
2218 * exp_ch8.adb (Expand_N_Object_Renaming_Declaration): Bugfix in
2219 renaming of discriminant for mutable record type.
2221 2001-10-11 Robert Dewar <dewar@gnat.com>
2223 * validsw.adb: Properly save -gnatVn status.
2225 2001-10-11 Robert Dewar <dewar@gnat.com>
2227 * usage.adb: Add lines for V switch.
2229 * gnatcmd.adb (COMPILE): Revise translations for -gnatV
2230 (/VALIDITY_CHECKING).
2232 2001-10-11 Ed Schonberg <schonber@gnat.com>
2234 * sem_type.adb (Add_One_Interp): an operator for a type declared in
2235 an extension of System is known to be visible.
2237 2001-10-11 Ed Schonberg <schonber@gnat.com>
2239 * sem_eval.adb (Compare_Fixup): get the bounds of a String_Literal
2240 properly. Fixes regression on ACATS C34005G.
2242 2001-10-11 Robert Dewar <dewar@gnat.com>
2244 * sem_ch5.adb (Analyze_Iteration_Scheme): Suppress warning on null
2245 loop in generic instance, since this is likely not very useful.
2247 2001-10-11 Robert Dewar <dewar@gnat.com>
2249 * restrict.adb (Disallow in No_Run_Time_Mode): Properly specialize
2250 the error message for high integrity mode.
2252 * rtsfind.adb (RTE): Give message if we try to find an entity that
2253 is not available in high integrity mode.
2256 (OK_To_Use_In_HIE_Mode): New array.
2257 (RTE): May return Empty in high integrity mode.
2259 * rtsfind.ads (OK_To_Use_In_No_Run_Time_Mode): New name for
2260 OK_To_Use_In_HIE_Mode, now includes System_FAT_xxx.
2262 * sem_ch6.adb (Analyze_Subprogram_Body): Kill body in predefined
2263 unit if not inlined always and in no runtime mode. Fixes problem
2264 caused by new Rtsfind changes.
2266 * sem_ch6.adb (Analyze_Subrogram_Body): Do not Check_References if
2269 * rtsfind.adb (RTE): Make sure we do not try to load unit after
2270 giving message for entity not available in high integrity mode.
2272 2001-10-11 Pascal Obry <obry@gnat.com>
2274 * impunit.adb: Add GNAT.CRC32.
2276 2001-10-11 Ed Schonberg <schonber@gnat.com>
2278 * exp_fixd.adb (Expand_Multiply_Fixed_By_Fixed_Giving_Fixed): handle
2279 properly the case where one universal operand in a non-static
2280 exponentiation of a real literal.
2282 2001-10-11 Ed Schonberg <schonber@gnat.com>
2284 * exp_ch7.adb (Find_Final_List): for a type appearing in a with_type
2285 clause, return the gobal finalization list, for lack of anthing else.
2287 2001-10-11 Ed Schonberg <schonber@gnat.com>
2289 * exp_ch7.adb (Make_Transient_Block): if statement is within
2290 exception handler, always use new transient scope to place Clean
2293 2001-10-11 Pascal Obry <obry@gnat.com>
2296 (GNAT_ADA_OBJS): add g-crc32.o, a-tags.o, a-stream.o
2297 (GNATBIND_OBJS): add g-crc32.o, a-tags.o, a-stream.o
2298 (GNATLS_RTL_OBJS): add g-crc32.o
2299 (GNATMAKE_RTL_OBJS): add g-crc32.o
2302 (CRC_Match): new function.
2303 (Get_File_Checksum): renamed Get_File_CRC. Use the GNAT.CRC32 unit
2304 instead of the previous simple checksum algorithm.
2305 (Time_Stamp_Mismatch): use CRC_Match for comparison.
2306 (Set_Source_Table): idem.
2309 (Get_File_Checksum): renamed Get_File_CRC as now we compute CRC
2310 instead of simple checksum.
2311 (CRC_Match): new function.
2312 (CRC_Error): new constant.
2314 * ali.adb (Scan_ALI): rename variable Chk to CRC as we are handling
2315 a CRC now and not a simple checksum. A CRC uses lower-case hex
2316 letters, fixes ambiguity in parsing.
2318 * ali.ads (Sdep_Record.Checksum): renamed Sdep_Record.CRC as this
2319 is what this variable will store.
2321 * bcheck.adb: Change reference to chechsum in comments by CRC.
2322 (Check_Consistency): Rename Get_File_Checksum to Get_File_CRC.
2323 rename All_Checksum_Match to All_CRC_Match. Change due to API
2324 renaming since now GNAT does not use a simple checksum but a
2325 CRC using GNAT.CRC32.
2327 * gnatls.adb: Rename Checksum to CRC in many places, we use a CRC
2328 now and not anymore a simple checksum.
2330 * lib-load.adb: Use Source_CRC instead of Source_Checksum in many
2333 * lib-writ.adb (Write_ALI): Use Source_CRC instead of Source_Checksum.
2336 (Restore_Scan_State): rename Checksum to CRC.
2337 (Save_Scan_State): idem.
2341 (Checksum): rename to CRC.
2342 (Saved_Scan_State): Save_Checksum field renamed to Save_CRC
2344 * scn-nlit.adb: Rename many Accumulate_Checksum to Update (from
2345 GNAT.CRC32). Update copyright notice.
2347 * scn-slit.adb: Rename many Accumulate_Checksum to Update (from
2348 GNAT.CRC32). Update copyright notice.
2351 (Accumulate_Checksum): removed.
2352 (Update): new procedure. Add a wide-character into the CRC.
2355 (Complete_Source_File_Entry): use CRC32 instead of simple checksum.
2356 (Load_File): fix initialization of S (change Source_Checksum to
2359 * sinput-p.adb (Load_Project_File): rename Source_Checksum to
2360 Source_CRC in S initialization.
2362 * sinput.adb (Source_Checksum): renamed to Source_CRC.
2364 * sinput.ads (Source_Checksum): renamed to Source_CRC.
2365 Update comments for the CRC.
2367 * types.adb (Hex): Use lowercase for the letter part.
2369 * types.ads (Get_Hex_String): Returns the hexadecimal representation
2370 for a word. This is currently used only for CRC. In previous version,
2371 the checksum was using a representation with all letter being
2372 upper-case. With the new implementation (using CRC) we do not remove
2373 the 32th bit of the CRC, so we can have an upper-case starting letter
2374 in the CRC. This is not possible to parse in Scan_ALI (ali.adb).
2375 It is ambigous since the CRC was optional and could be followed by
2376 options like EB, EE. So now this routines uses lower-case letter for
2377 the hexadecimal representation. Strange enough only lower case letters
2378 where checked in Scan_ALI (even if this was not a possible case).
2380 * gnatvsn.ads (Library_Version): changed to 3.15a.
2382 * s-crc32.ads: Initial version from GNAT.CRC32. This is the version
2385 * s-crc32.adb: Initial version from GNAT.CRC32. This is the version
2388 * ali-util.adb: Redo previous change to avoid using word CRC everywhere
2389 Add 2001 to copyright notice
2390 (Accumulate_Checksum): Modify to use System.CRC32.
2392 * ali-util.ads: Redo changes of previous revision to continue to use
2393 the word Checksum. Add 2001 to copyright notice.
2395 * ali.adb: Undo some of previous changes, not needed.
2396 Keep the change for lower case letters in the checksum.
2398 * ali.ads: Undo previous change not needed.
2400 * bcheck.adb: Undo most of previous change, not needed.
2401 But do use Checksums_Match for checksum comparison.
2403 * gnatls.adb: Undo most of previous change, not needed.
2404 But do use Checksums_Match for comparing checksums.
2406 * lib-load.adb: Undo previous change, not needed.
2408 * lib-writ.adb: Undo previous change, not needed.
2410 * lib-writ.ads: Document that checksums use lower case,
2411 not upper case letters.
2413 * scans.adb: Undo previous change, not needed
2415 * scans.ads: Undo previous change, not needed.
2417 * scn-nlit.adb: Undo previous changes, not needed.
2419 * scn-slit.adb: Undo previous change, not needed. Fix header format.
2422 (Accumulate_Checksum): Use System.CRC32.
2423 (Initialize_Checksum): New procedure.
2424 Remove other changes of previous revision.
2426 * sinput-p.adb: Undo previous change, not needed.
2428 * sinput.adb: Undo previous change, not needed.
2430 * sinput-l.adb: Undo previous change, not needed.
2432 * sinput.ads: Undo previous change, not needed. Keep only comment
2433 on new checksum algorithm
2435 * Makefile.in: Add s-crc32 as needed, remove g-crc32.
2436 Also remove a-tags and a-stream from GNAT sources.
2438 * ali.adb (Scan_ALI): fix typo introduce in latest check-in.
2440 * Makefile.in (GNATRTL_NONTASKING_OBJS): Add g-crc32.o.
2442 2001-10-11 Geert Bosch <bosch@gnat.com>
2444 * einfo.h: Regenerate.
2446 * nmake.ads: Regenerate.
2448 * nmake.adb: Regenerate.
2450 * sinfo.h: Regenerate.
2452 * treeprs.adb: Regenerate.
2454 2001-10-10 Geert Bosch <bosch@gnat.com>
2456 * gnat-style.texi: New file describing coding guidelines for Ada.
2458 2001-10-10 Ed Schonberg <schonber@gnat.com>
2460 * einfo.adb (Write_Entity_Flags): Elaboration_Entity_Required
2463 2001-10-10 Geert Bosch <bosch@gnat.com>
2465 * snames.ads: Add new names for project facility.
2467 * snames.adb: Update to reflect snames.ads changes.
2469 * snames.h: Update to reflect snames.ads changes.
2471 2001-10-10 Vincent Celier <celier@gnat.com>
2474 (Add_Switches): reflect the changes for the switches attributes
2475 Default_Switches indexed by the programming language,
2476 Switches indexed by the file name.
2477 (Collect_Arguments_And_Compile): Idem.
2478 Reflect the attribute name changes.
2481 (Initialisation_Data): Change the names of some packages and
2483 (Initialize): process case insensitive associative arrays.
2486 (Attribute_Kind): Remove Both, add Case_Insensitive_Associative_Array.
2489 (Parse_Attribute_Declaration): For case insensitive associative
2490 arrays, set the index string to lower case.
2493 Reflect the changes of the project attributes.
2496 Replace Check_Naming_Scheme by Ada_Check and
2497 Language_Independent_Check.
2500 Replaced Check_Naming_Scheme by 2 procedures:
2501 Ada_Check and Language_Independent_Check.
2504 (Process_Declarative_Items): For case-insensitive associative
2505 arrays, set the index string to lower case.
2506 (Recursive_Check): Call Prj.Nmsc.Ada_Check, instead of
2507 Prj.Nmsc.Check_Naming_Scheme.
2510 (Case_Insensitive): New function
2511 (Set_Case_Insensitive): New procedure
2514 (Case_Insensitive): New function
2515 (Set_Case_Insensitive): New procedure
2516 (Project_Node_Record): New flag Case_Insensitive.
2519 (Value_Of): new function to get the string value of a single
2520 string variable or attribute.
2523 (Value_Of): new function to get the string value of a single
2524 string variable or attribute.
2527 (Ada_Default_Spec_Suffix): New function
2528 (Ada_Default_Impl_Suffix): New function
2529 Change definitions of several constants to reflect
2530 new components of record types.
2533 (Naming_Data): Change several components to reflect new
2534 elements of naming schemes.
2535 (Project_Data): New flags Sources_Present and
2536 Language_Independent_Checked.
2537 (Ada_Default_Spec_Suffix): New function.
2538 (Ada_Default_Impl_Suffix): New function.
2541 Modification of predefined names for project manager: added
2542 Implementation, Specification_Exceptions, Implementation_Exceptions,
2543 Specification_Suffix, Implementation_Suffix, Separate_Suffix,
2544 Default_Switches, _Languages, Builder, Cross_Reference,
2545 Finder. Removed Body_Part, Specification_Append, Body_Append,
2546 Separate_Append, Gnatmake, Gnatxref, Gnatfind, Gnatbind,
2549 * prj.ads: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
2552 * prj-nmsc.adb (Ada_Check): Test that Separate_Suffix is defaulted,
2553 not that it is Nil_Variable_Value.
2555 * prj.ads: Add ??? for uncommented declarations
2557 2001-10-10 Ed Schonberg <schonber@gnat.com>
2559 * sem_prag.adb: (Analyze_Pragma, case External): If entity is a
2560 constant, do not indicate possible modification, so that gigi can
2561 treat it as a bona fide constant.
2563 2001-10-10 Robert Dewar <dewar@gnat.com>
2565 * sem_prag.adb: Add processing for pragma External.
2567 * snames.ads: Add entry for pragma External.
2569 * par-prag.adb: Add pragma External.
2571 * snames.adb: Updated to match snames.ads.
2573 2001-10-10 Ed Schonberg <schonber@gnat.com>
2575 * exp_ch4.adb (Expand_N_Allocator): Generate meaningful names for
2576 a dynamic task if the allocator appears in an indexed assignment
2577 or selected component assignment.
2579 * exp_util.adb (Build_Task_Array_Image, Build_Task_Record_Image):
2580 For a dynamic task in an assignment statement, use target of
2581 assignment to generate meaningful name.
2583 2001-10-10 Ed Schonberg <schonber@gnat.com>
2585 * einfo.adb (Write_Field19_Name): Body_Entity is also defined for
2588 * einfo.ads: Body_Entity is also defined for generic package.
2589 Documentation change only
2591 * exp_aggr.adb (Build_Array_Aggr_Code): When expanding an
2592 others_choice for a discriminated component initialization,
2593 convert discriminant references into the corresponding discriminals.
2595 * exp_ch3.adb (Get_Simple_Init_Val): Add qualification to aggregate
2596 only if original type is private and expression has to be wrapped
2600 (Apply_Constraint_Check): Do not perform length check
2601 if expression is an aggregate with only an others_choice.
2602 (Length_N_Cond): two references to the same in_parameter
2603 (typically the discriminal in an init_proc) denote the same value.
2604 Two useful optimization uncovered by bugfixes above.
2606 2001-10-10 Robert Dewar <dewar@gnat.com>
2608 * xeinfo.adb: Change int to char in translation of enumeration types.
2609 This fixes a problem in the C representation of component alignment.
2610 Add 2001 to copyright notice
2612 2001-10-10 Richard Kenner <kenner@gnat.com>
2614 * decl.c: (validate_size): Do check size of object of integral type
2615 if it is a packed array type.
2617 2001-10-10 Richard Kenner <kenner@gnat.com>
2619 * decl.c: (gnat_to_gnu_entity, case object): Also materialize
2620 VAR_DECL for constant if not Is_Public but -O0.
2622 2001-10-10 Richard Kenner <kenner@gnat.com>
2624 * misc.c (struct lang_hooks): Add new initializer to match GCC change.
2626 2001-10-10 Geert Bosch <bosch@gnat.com>
2628 * xnmake.adb (XNmake): Fix handling of -s/-b options. No longer
2629 use '/' as switch character, allowing for absolute file names.
2631 2001-10-09 Joseph S. Myers <jsm28@cam.ac.uk>
2633 * 4gintnam.ads, Make-lang.in, Makefile.in, config-lang.in: Update
2636 2001-10-08 Geert Bosch <bosch@gnat.com>
2638 * Makefile.in (treeprs.ads, einfo.h, sinfo.h, nmake.adb, nmake.ads):
2639 Automatically build utilities when files need to be regenerated.
2641 2001-10-08 Geert Bosch <bosch@gnat.com>
2643 * xsnames.adb: New utility for updating snames.ads and snames.adb
2645 2001-10-08 Zack Weinberg <zack@codesourcery.com>
2647 * Make-lang.in (ADAFLAGS): Add -W -Wall.
2648 (ADA_FLAGS_TO_PASS): Set ADA_CFLAGS=$(CFLAGS) also.
2649 (gnat1): Also depend on attribs.o.
2650 (gnatlib, gnatlib-shared): Set CC and ADAC in recursive make.
2651 * Makefile.in (X_ADAFLAGS, T_ADAFLAGS): New.
2652 (ADAC): Set to @ADAC@ in stage1, $(CC) later.
2653 (ADAFLAGS): Add -W -Wall.
2654 (ALL_ADAFLAGS, MOST_ADAFLAGS): Add X_ADAFLAGS and T_ADAFLAGS;
2657 (.adb.o, .ads.o, a-numaux.o, a-teioed.o, s-interr.o,
2658 s-taskin.o, sdefault.o, s-tasdeb.o, s-vaflop.o, a-except.o,
2659 s-assert.o, s-stalib.o, s-memory.o, memtrack.o, mlib-tgt.o):
2660 Use $(ADAC), not $(CC), as compilation command.
2662 (gnattools): Depend directly on tools to build, don't use
2664 (gnatlib): Set ADA_CFLAGS=$(GNATLIBCFLAGS) in recursive make.
2666 * einfo.h, sinfo.h: New files (autogenerated).
2668 2001-10-08 Richard Henderson <rth@redhat.com>
2670 * comperr.adb (Abort_In_Progress): New.
2671 (Compiler_Abort): Use it to prevent recursion.
2673 2001-10-08 Robert Dewar <dewar@gnat.com>
2675 * atree.adb: Set Error_Posted in Error node, helps error recovery.
2677 * par-endh.adb (Output_End_Expected): We should also not test
2678 Error_Posted on the Error node, since now it is always set.
2680 * cstand.adb (Create_Standard): Set Etype of Error to Any_Type
2681 to help error recovery. Part of general work on 9407-004.
2683 * par.adb: Add ??? for misuse of error
2686 (Resolve): Defend against Error, fixes 9407-003.
2687 (Resolve_Discrete_Subtype_Indication): Defend against Error.
2689 * sinfo.ads (N_Error): Now has Etype field (which will be set
2690 to Any_Type to help error recovery).
2692 2001-10-08 Richard Kenner (kenner@gnat.com)
2694 * misc.c (gnat_expand_expr, case UNCHECKED_CONVERT_EXPR):
2695 Consistently set MEM attributes from expression; fixes
2696 bootstrap failure on x86.
2698 2001-10-08 Geert Bosch (bosch@gnat.com)
2700 * 5oosinte.adb: Add 2001 to copyright notice.
2702 2001-10-08 Geert Bosch (bosch@gnat.com)
2704 * ceinfo.adb: Add utility for consistency checking of einfo.ad[bs].
2706 * csinfo.adb: Add utility for consistency checking of sinfo.ad[bs].
2708 2001-10-07 Joseph S. Myers <jsm28@cam.ac.uk>
2710 * 5oosinte.adb: Fix spelling error of "separate" as "seperate".
2712 2001-10-05 Geert Bosch (bosch@gnat.com)
2714 * adaint.h: Small formatting fix.
2716 2001-10-04 Geert Bosch <bosch@gnat.com>
2718 * sysdep.c (__gnat_set_binary_mode, __gnat_set_text_mode):
2719 Arg is int, not FILE *, in dummy version of functions.
2721 * adaint.h (__gnat_set_binary_mode, __gnat_set_text_mode):
2722 Arg is int, not FILE *.
2724 2001-10-04 Geert Bosch <bosch@gnat.com>
2726 * 3lsoccon.ads: Added file, missed with initial check ins.
2728 * 4lintnam.ads: Fix header format.
2729 Change Linux to GNU/Linux.
2731 * 5iosinte.adb: Change Linux to GNU/Linux.
2733 * 5iosinte.ads: Change Linux to GNU/Linux.
2735 * 5itaprop.adb: Change Linux to GNU/Linux.
2737 * 5itaspri.ads: Change Linux to GNU/Linux.
2738 Update copyright notice.
2740 * 5lintman.adb: Change Linux to GNU/Linux.
2742 * 5lml-tgt.adb: Change Linux to GNU/Linux.
2744 * 5losinte.ads: Change Linux to GNU/Linux.
2746 * 5lsystem.ads: Change Linux to GNU/Linux.
2748 * 5qosinte.adb: Change Linux to GNU/Linux.
2750 * 5qosinte.ads: Change Linux to GNU/Linux.
2752 * 5qparame.ads: Change Linux to GNU/Linux.
2754 * 5qtaprop.adb: Change Linux to GNU/Linux.
2756 * 5qtaspri.ads: Change Linux to GNU/Linux.
2757 Add 2001 to copyright notice.
2759 * 5vintman.ads: Change Linux to GNU/Linux.
2760 Fix header format. Add 2001 to copyright notice.
2762 * g-soccon.ads: Change Linux to GNU/Linux.
2764 * g-trasym.ads: Change Linux to GNU/Linux.
2765 Add 2001 to copyright notice.
2767 * memtrack.adb: Change Linux to GNU/Linux.
2769 * s-intman.ads: Change Linux to GNU/Linux.
2770 Add 2001 to copyright notice. Fix header format.
2772 * s-stache.adb: Change Linux to GNU/Linux.
2774 * adaint.c: Change Linux to GNU/Linux.
2776 * cio.c: Change Linux to GNU/Linux.
2778 * cstreams.c: Change Linux to GNU/Linux.
2780 * init.c: Change Linux to GNU/Linux.
2782 * gmem.c: Change Linux to GNU/Linux.
2784 * tracebak.c: Change Linux to GNU/Linux.
2787 2001-10-02 Geert Bosch <bosch@gnat.com>
2789 * misc.c (insert_default_attributes): Add dummy version.