1 2002-07-15 Florian Weimer <fw@deneb.enyo.de>
3 * make.adb (Add_Switch): Make Generic_Position a procedure. The
4 function approach did not work well because of a side effect (the
5 function call could reallocate the table which was being indexed
6 using its result). Fixes ada/4851. [RESURRECTED]
8 2002-07-01 Roger Sayle <roger@eyesopen.com>
10 * ada/utils.c (builtin_function): Accept an additional parameter.
12 2002-06-28 Andreas Jaeger <aj@suse.de>
15 * Makefile.in: Fix typo in comment, patch by Adrian Knoth
18 2002-06-24 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
20 * Makefile.in (SHELL): Set to @SHELL@.
22 2002-06-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
24 * utils.c (init_gigi_decls): Use ARRAY_SIZE in lieu of explicit
25 array size calculation.
27 2002-06-04 Andreas Jaeger <aj@suse.de>
29 * Make-lang.in (gnatbind): Readd rule that has been lost in last
32 2002-06-03 Geoffrey Keating <geoffk@redhat.com>
34 Merge from pch-branch:
36 * config-lang.in (gtfiles): Add ada-tree.h.
37 * ada-tree.h (SET_TYPE_CI_CO_LIST): New.
38 (SET_TYPE_MODULUS): New.
39 (SET_TYPE_INDEX): New.
40 (SET_TYPE_DIGITS_VALUE): New.
41 (SET_TYPE_RM_SIZE): New.
42 (SET_TYPE_UNCONSTRAINED_ARRAY): New.
43 (SET_TYPE_ADA_SIZE): New.
44 (SET_TYPE_ACTUAL_BOUNDS): New.
45 (SET_DECL_CONST_CORRESPONDING_VAR): New.
46 (SET_DECL_ORIGINAL_FIELD): New.
47 (TREE_LOOP_ID): Correct typo.
48 * decl.c: Use new macros.
49 * utils.c: Include debug.h, use new macros.
50 * utils2.c: Use new macros.
52 * ada-tree.h: Update all macros for new tree description.
53 (struct tree_loop_id): New.
54 (union lang_tree_node): New.
55 (struct lang_decl): New.
56 (struct lang_type): New.
57 * misc.c (gnat_mark_tree): Delete.
58 (LANG_HOOKS_MARK_TREE): Delete.
59 * trans.c (tree_transform): No longer any need to cast
62 * utils.c (struct language_function): New dummy structure.
64 * Makefile.in (decl.o): gt-ada-<filename.h> is in objdir, not srcdir.
66 (utils.o): Likewise; also gtype-ada.h.
67 * Make-lang.in (gnat1): Add dependency on s-gtype.
68 (gnatbind): Add dependency on $(CONFIG_H).
69 * utils.c: Correct last #include.
70 (stuct e_stack): Remove unnecessary 'static'.
71 (mark_e_stack): Remove unused prototype.
73 * scn-nlit.adb: Remove whitespace after version number to
74 keep lines under 80 chars.
75 * snames.adb: Likewise.
76 * treepr.ads: Likewise.
78 * Makefile.in (decl.o): Include gt-ada-<filename>.h.
80 (utils.o): Include gt-ada-<filename>.h and gtype-ada.h.
81 * config-lang.in (gtfiles): New.
82 * decl.c: Use gengtype for roots.
83 * gigi.h: Use gengtype for roots.
84 * trans.c: Use gengtype for roots.
85 * utils.c: Use gengtype for roots, marking. Include gtype-ada.h.
87 2002-06-02 Gabriel Dos Reis <gdr@codesourcery.com>
89 * misc.c (gnat_init): Adjust setting of internal_error_function.
91 2002-06-01 Joseph S. Myers <jsm28@cam.ac.uk>
93 * gnat_ug.texi: Use @ifnottex instead of @ifinfo.
94 * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
95 gnat_ug_wnt.texi: Regenerate.
97 2002-05-31 Florian Weimer <fw@deneb.enyo.de>
99 * 5ntaprop.adb (with System.OS_Primitives): Remove.
101 * cstreams.c (max_path_len): Move from here ...
102 * adaint.c (__gnat_max_path_len): ... to here.
103 * adaint.c (__gnat_max_path_len): Declare.
104 * g-dirope.adb (Max_Path): Adjust.
105 * g-os_lib.adb (Normalize_Pathname.Max_Path): Adjust.
106 * i-cstrea.ads (max_path_len): Adjust.
107 * osint.adb (Get_RTS_Search_Dir.Max_Path): Adjust.
108 * xr_tabls.adb (Dir_Name.Max_Path: Adjust.
110 * Makefile.in, Make-lang.in: Documentation is now built in
111 Make-lang.in. Store Info and generated Texinfo files in the
113 * gnat_ug.texi: Remove CVS keywords, correct version number.
114 Set file name correctly.
116 * gnat_ug_*.texi: Add.
117 * .cvsignore: Ignore generated Texinfo files.
119 2002-05-30 Zack Weinberg <zack@codesourcery.com>
121 * ada.h: Add MI guard macro.
122 (SUBTYPE): Define constants with an anonymous enum, not static
124 (IN): Cast constants to appropriate type before use.
126 2002-05-26 Joseph S. Myers <jsm28@cam.ac.uk>
128 * gnatvsn.ads (Gnat_Version_String): Change to "3.2 20020526
131 2002-05-23 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
133 * Make-lang.in (CP, ECHO): Copy from Makefile.in.
134 (X_ADA_CFLAGS, T_ADA_CFLAGS, X_ADAFLAGS, T_ADAFLAGS): Likewise.
135 (ALL_ADAFLAGS, FORCE_DEBUG_ADAFLAGS, ADA_CFLAGS): Likewise.
136 (ALL_ADA_CFLAGS): Likewise.
137 (ADA_INCLUDES): Likewise.
138 Adapt for new working dir.
139 (GNATBIND): Use Makefile.in version.
140 (.SUFFIXES): Copy from Makefile.in.
142 (.adb.o, .ads.o): Copy from Makefile.in.
143 Added $(OUTPUT_OPTION).
144 (GNAT1_C_OBJS): Moved from Makefile.in.
145 Prefix with ada subdir.
146 (GNAT_ADA_OBJS, GNAT1_ADA_OBJS, GNAT1_OBJS, GNATBIND_OBJS): Likewise.
147 (EXTRA_GNAT1_OBJS): Moved from Makefile.in.
148 Adapt for new working dir.
149 (EXTRA_GNATBIND_OBJS): Likewise.
150 (ADA_BACKEND): Moved from Makefile.in.
151 Renamed to avoid conflict with global BACKEND.
153 (TARGET_ADA_SRCS): Moved from Makefile.in.
154 (gnat1$(exeext)): Replaced recursive rule with Makefile.in version.
156 (gnatbind$(exeext)): Replaced recursive rule with Makefile.in version.
157 (ada_extra_files): Moved from Makefile.in.
158 Prefix with ada subdir.
159 (ada/b_gnat1.c, ada/b_gnat1.o, ada/b_gnatb.c, ada/b_gnatb.o): Likewise.
160 (ada/treeprs.ads, ada/einfo.h, ada/sinfo.h, ada/nmake.adb): Likewise.
161 (ada/nmake.ads): Likewise.
162 (update-sources): Moved from Makefile.in.
163 Prefix with ada subdir.
164 (ada/sdefault.adb, ada/stamp-sdefault, ada/sdefault.o): Likewise.
165 (ADA_TREE_H): Likewise.
166 (ada/a-except.o, ada/s-assert.o, ada/s-memory.o): Likewise.
167 (ada/memtrack.o): Likewise.
168 (ada/adadecode.o): Likewise.
171 (ada/argv.o): Moved from Makefile.in.
172 Prefix with ada subdir.
174 (ada/cstreams.o, ada/exit.o, ada/final.o, ada/link.o): Likewise.
175 (ada/cio.o, ada/init.o, ada/raise.o, ada/tracebak.o): Likewise.
176 (ada/cuintp.o, ada/decl.o, ada/misc.o): Moved from Makefile.in.
177 Prefix with ada subdir.
178 (ada/targtyps.o, ada/trans.o, ada/utils.o, ada/utils2.o): Likewise.
179 (GNAT DEPENDENCIES): Regenerate.
180 * Makefile.in (MACHMODE_H, RTL_H, TREE_H): Removed, provided by
181 toplevel Makefile.in.
182 (EXTRA_GNAT1_OBJS, EXTRA_GNATBIND_OBJS): Removed.
183 (TARGET_ADA_SRCS): Removed.
184 (GNAT1_C_OBJS, GNAT_ADA_OBJS, GNAT1_ADA_OBJS, GNAT1_OBJS): Likewise.
185 (GNATBIND_OBJS): Likewise.
186 (ADA_INCLUDE_DIR, ADA_RTL_OBJ_DIR): Moved here.
188 (../gnat1$(exeext), ../gnatbind$(exeext)): Likewise.
190 (ada_extra_files): Likewise.
191 (b_gnat1.c, b_gnat1.o, b_gnatb.c, b_gnatb.o): Likewise.
192 (treeprs.ads, einfo.h, sinfo.h, nmake.adb, nmake.ads): Likewise.
193 (update-sources): Likewise.
194 (sdefault.adb, stamp-sdefault, sdefault.o): Likewise
195 (ADA_TREE_H): Likewise.
196 (adadecoce.o): Likewise.
197 (cuintp.o, decl.o, misc.o, trans.o, utils.o, utils2.o): Likewise.
198 (GNAT DEPENDENCIES): Likewise.
200 2002-05-16 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
202 * Makefile.adalib: Allow for PWDCMD to override hardcoded pwd.
203 * Makefile.in: Likewise.
205 2002-05-14 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
207 * Make-lang.in (gnat1$(exeext), gnatbind$(exeext), gnattools):
208 Restore $(CONFIG_H) and prefix.o dependencies.
209 (ada.stage[1-4]): Depend on stage?-start.
211 * Makefile.in (b_gnatb.c): Depend on interfac.o.
213 2002-05-02 Jim Wilson <wilson@redhat.com>
215 * utils.c (finish_record_type): Change record_size to record_type.
217 2001-05-02 John David Anglin <dave@hiauly1.hia.nrc.ca>
219 * ada/Makefile.in (X_ADA_CFLAGS, T_ADA_CFLAGS): New fragment overrides.
220 (ALL_ADA_CFLAGS): Define. Replace ADA_CFLAGS with ALL_ADA_CFLAGS in
221 ALL_ADAFLAGS, MOST_ADAFLAGS, and all compilations using CC.
223 2002-04-25 Neil Booth <neil@daikokuya.demon.co.uk>
225 * misc.c (gnat_parse_file): Update.
227 2002-04-24 Neil Booth <neil@daikokuya.demon.co.uk>
229 * misc.c (gnat_init): Don't set lang_attribute_common.
231 2002-04-21 Joseph S. Myers <jsm28@cam.ac.uk>
233 * gnat_rm.texi: Use @ifnottex instead of @ifinfo.
235 2002-04-21 Florian Weimer <fw@deneb.enyo.de>
237 * gnat_ug.texi: New file.
239 * gnat_rm.texi: Do not include texiplus.texi. Include fdl.texi
242 * xgnatug.adb, ug_words: New files.
244 * Makefile.in (doc, dvi): New targets. Build gnat_ug_*,
245 gnat_rm and gnat-style manuals.
247 2002-04-18 Neil Booth <neil@daikokuya.demon.co.uk>
249 * gigi.h (incomplete_type_error): Remove.
250 * utils.c (incomplete_type_error): Remove.
252 2002-04-16 Mark Mitchell <mark@codesourcery.com>
254 * trans.c (tree_transform): Add has_scope argument to
255 expand_start_stmt_expr.
257 2002-04-04 Neil Booth <neil@daikokuya.demon.co.uk>
259 * gigi.h (truthvalue_conversion): Rename.
260 * misc.c (LANG_HOOKS_TRUTHVALUE_CONVERSION): Redefine.
261 * trans.c (tree_transform): Update.
262 * utils2.c (truthvalue_conversion): Rename, update.
263 (build_binary_op, build_unary_op): Update.
265 2002-04-04 Laurent Guerby <guerby@acm.org>
267 * make.adb: Implement -margs, remove restriction about file name placement.
268 * makeusg.adb: Documentation update.
269 * Makefile.in (TOOLS_FLAGS_TO_PASS): Add VPATH=$(fsrcdir).
270 * Makefile.in (gnattools3): Comment out, gnatmem does not build without libaddr2line.
272 2002-04-04 Neil Booth <neil@daikokuya.demon.co.uk>
274 * utils.c (create_subprog_decl): Use SET_DECL_ASSEMBLER_NAME.
275 (builtin_function): Similarly.
277 2002-04-01 Neil Booth <neil@daikokuya.demon.co.uk>
279 * decl.c (gnat_to_gnu_entity): Update.
280 * gigi.h (mark_addressable): Rename.
281 * misc.c (LANG_HOOKS_MARK_ADDRESSABLE): Redefine.
282 * trans.c (tree_transform): Update.
283 * utils.c (create_var_decl): Update.
284 * util2.c (build_binary_op, build_unary_op,
285 fill_vms_descriptor): Update.
286 (mark_addressable): Rename, update.
288 2002-04-01 Neil Booth <neil@daikokuya.demon.co.uk>
290 * gigi.h (unsigned_type, signed_type, signed_or_unsigned_type):
292 * misc.c (LANG_HOOKS_SIGNED_TYPE, LANG_HOOKS_UNSIGNED_TYPE,
293 LANG_HOOKS_SIGNED_OR_UNSIGNED_TYPE): New.
294 * trans.c (tree_transform, convert_with_check): Update.
295 * utils.c (unsigned_type, signed_type, signed_or_unsigned_type):
298 2002-03-31 Neil Booth <neil@daikokuya.demon.co.uk>
300 * gigi.h (finish_incomplete_decl): Rename.
301 * misc.c (LANG_HOOKS_FINISH_INCOMPLETE_DECL): Redefine.
302 * utils.c (gnat_init_decl_processing): Don't set hook.
303 (finish_incomplete_decl): Rename.
305 2002-03-29 Andreas Schwab <schwab@suse.de>
307 * Makefile.in: Pass VPATH=$(fsrcdir) when calling make in rts
310 2001-03-28 Robert Dewar <dewar@gnat.com>
313 (Remove_Checks): New procedure
316 (Remove_Checks): New procedure
319 Use new Duplicate_Subexpr functions
320 (Duplicate_Subexpr_No_Checks): New procedure
321 (Duplicate_Subexpr_No_Checks_Orig): New procedure
322 (Duplicate_Subexpr): Restore original form (checks duplicated)
323 (Duplicate_Subexpr): Call Remove_Checks
326 (Duplicate_Subexpr_No_Checks): New procedure
327 (Duplicate_Subexpr_No_Checks_Orig): New procedure
328 Add 2002 to copyright notice
330 * sem_util.adb: Use new Duplicate_Subexpr functions
333 (Eval_Indexed_Component): This is the place to call
334 Constant_Array_Ref and to replace the value. We simply merge
335 the code of this function in here, since it is now no longer
336 used elsewhere. This fixes the problem of the back end not
337 realizing we were clever enough to see that this was
339 (Expr_Val): Remove call to Constant_Array_Ref
340 (Expr_Rep_Val): Remove call to Constant_Array_Ref
342 (Constant_Array_Ref): Deal with string literals (patch
343 suggested by Zack Weinberg on the gcc list)
345 2001-03-28 Ed Schonberg <schonber@gnat.com>
347 * exp_util.adb: Duplicate_Subexpr_No_Checks_Orig =>
348 Duplicate_Subexpr_Move_Checks.
350 * exp_util.ads: Duplicate_Subexpr_No_Checks_Orig =>
351 Duplicate_Subexpr_Move_Checks.
353 * sem_eval.adb: (Constant_Array_Ref): Verify that constant
354 value of array exists before retrieving it (it may a private
355 protected component in a function).
357 2002-03-28 Geert Bosch <bosch@gnat.com>
359 * prj-pp.adb : New file.
361 * prj-pp.ads : New file.
363 2002-03-28 Andreas Jaeger <aj@suse.de>
365 * Makefile.in (stamp-sdefault): Fix path for Makefile.
367 2002-03-28 Neil Booth <neil@daikokuya.demon.co.uk>
369 * misc.c (gnat_expand_expr): Move prototype.
371 2002-03-27 Neil Booth <neil@daikokuya.demon.co.uk>
373 * misc.c (insert_default_attributes): Remove.
375 2002-03-27 Neil Booth <neil@daikokuya.demon.co.uk>
377 * misc.c (LANG_HOOKS_EXPAND_EXPR): Redefine.
378 (gnat_init): Don't set hook.
379 (gnat_expand_expr): Fix prototype.
381 2002-03-27 Neil Booth <neil@daikokuya.demon.co.uk>
383 * misc.c (ggc_p): Remove.
385 2002-03-27 Geert Bosch <bosch@gnat.com>
387 * prj-makr.ads, prj-makr.adb : New files.
389 2002-03-26 Neil Booth <neil@daikokuya.demon.co.uk>
391 * misc.c (LANG_HOOKS_MARK_TREE): Redefine.
392 (lang_mark_tree): Make static, rename.
394 2002-03-25 Neil Booth <neil@daikokuya.demon.co.uk>
396 * misc.c (maybe_build_cleanup): Remove.
398 2002-03-24 Neil Booth <neil@daikokuya.demon.co.uk>
400 * gigi.h (yyparse): Remove.
402 2002-03-23 Florian Weimer <fw@deneb.enyo.de>
404 * gnat_rm.texi: Sync with ACT version.
405 (From Ben Brosgol <brosgol@gnat.com>)
407 2002-03-20 Neil Booth <neil@daikokuya.demon.co.uk>
409 * misc.c (LANG_HOOKS_DECL_PRINTABLE_NAME): Redefine.
410 (gnat_init): Remove old hook.
412 2002-03-17 Neil Booth <neil@daikokuya.demon.co.uk>
414 * misc.c (LANG_HOOKS_PARSE_FILE): Redefine.
415 (yyparse): Rename gnat_parse_file.
417 2002-03-14 Geoffrey Keating <geoffk@redhat.com>
419 Delete all lines containing "$Revision:".
420 * xeinfo.adb: Don't look for revision numbers.
421 * xnmake.adb: Likewise.
422 * xsinfo.adb: Likewise.
423 * xsnames.adb: Likewise.
424 * xtreeprs.adb: Likewise.
426 2002-03-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
428 * misc.c (gnat_tree_code_type, gnat_tree_code_length,
429 gnat_tree_code_name): Delete.
430 (tree_code_type, tree_code_length, tree_code_name): Define.
431 (gnat_init): Don't try to copy into the various tree_code
434 2002-03-11 Richard Henderson <rth@redhat.com>
436 * Makefile.in (.NOTPARALLEL): Add fake tag.
438 2002-03-07 Geert Bosch <bosch@gnat.com>
440 * adadecode.c, adadecode.h, aux-io.c, s-traces.adb, s-traces.ads,
441 s-tratas.adb, s-tratas.ads, sinput-d.adb, sinput-d.ads,
442 switch-b.adb, switch-b.ads, switch-c.adb, switch-c.ads,
443 switch-m.adb, switch-m.ads : New files.
445 2002-03-07 Geert Bosch <bosch@gnat.com>
447 * 41intnam.ads, 42intnam.ads, 4aintnam.ads, 4cintnam.ads,
448 4dintnam.ads, 4gintnam.ads, 4hintnam.ads, 4lintnam.ads,
449 4mintnam.ads, 4pintnam.ads, 4rintnam.ads, 4sintnam.ads,
450 4uintnam.ads, 4vcalend.adb, 4zintnam.ads, 52system.ads,
451 5amastop.adb, 5asystem.ads, 5ataprop.adb, 5atpopsp.adb,
452 5avxwork.ads, 5bosinte.adb, 5bsystem.ads, 5esystem.ads,
453 5fsystem.ads, 5ftaprop.adb, 5ginterr.adb, 5gmastop.adb,
454 5gsystem.ads, 5gtaprop.adb, 5gtasinf.adb, 5gtasinf.ads,
455 5hparame.ads, 5hsystem.ads, 5htaprop.adb, 5htraceb.adb,
456 5itaprop.adb, 5ksystem.ads, 5kvxwork.ads, 5lintman.adb,
457 5lsystem.ads, 5mvxwork.ads, 5ninmaop.adb, 5nosinte.ads,
458 5ntaprop.adb, 5ointerr.adb, 5omastop.adb, 5oosinte.adb,
459 5osystem.ads, 5otaprop.adb, 5otaspri.ads, 5pvxwork.ads,
460 5qtaprop.adb, 5sintman.adb, 5ssystem.ads, 5staprop.adb,
461 5stpopse.adb, 5svxwork.ads, 5tosinte.ads, 5uintman.adb,
462 5vasthan.adb, 5vinmaop.adb, 5vinterr.adb, 5vintman.adb,
463 5vmastop.adb, 5vparame.ads, 5vsystem.ads, 5vtaprop.adb,
464 5vtpopde.adb, 5wmemory.adb, 5wsystem.ads, 5wtaprop.adb,
465 5ysystem.ads, 5zinterr.adb, 5zintman.adb, 5zosinte.adb,
466 5zosinte.ads, 5zsystem.ads, 5ztaprop.adb, 6vcpp.adb, 6vcstrea.adb,
467 7sintman.adb, 7staprop.adb, 7stpopsp.adb, 9drpc.adb,
468 Make-lang.in, Makefile.in, a-caldel.adb, a-comlin.ads,
469 a-dynpri.adb, a-except.adb, a-except.ads, a-finali.adb,
470 a-ncelfu.ads, a-reatim.adb, a-retide.adb, a-stream.ads,
471 a-ststio.adb, a-ststio.ads, a-stwifi.adb, a-tags.adb, a-tasatt.adb,
472 a-textio.adb, a-tideau.adb, a-tiflau.adb, a-tigeau.adb,
473 a-tigeau.ads, a-tiinau.adb, a-timoau.adb, a-witeio.adb,
474 a-wtdeau.adb, a-wtenau.adb, a-wtflau.adb, a-wtgeau.adb,
475 a-wtgeau.ads, a-wtinau.adb, a-wtmoau.adb, ada-tree.def, ada-tree.h,
476 adaint.c, adaint.h, ali-util.adb, ali.adb, ali.ads, atree.adb,
477 atree.ads, atree.h, back_end.adb, bcheck.adb, bindgen.adb,
478 bindusg.adb, checks.adb, comperr.adb, config-lang.in, csets.adb,
479 csets.ads, cstand.adb, cstreams.c, debug.adb, debug.ads, decl.c,
480 einfo.adb, einfo.ads, einfo.h, elists.h, errout.adb, errout.ads,
481 eval_fat.adb, exp_aggr.adb, exp_attr.adb, exp_ch11.adb,
482 exp_ch12.adb, exp_ch13.adb, exp_ch2.adb, exp_ch3.adb, exp_ch3.ads,
483 exp_ch4.adb, exp_ch5.adb, exp_ch6.adb, exp_ch7.adb, exp_ch7.ads,
484 exp_ch9.adb, exp_ch9.ads, exp_dbug.adb, exp_dbug.ads, exp_disp.ads,
485 exp_dist.adb, exp_fixd.adb, exp_intr.adb, exp_pakd.adb,
486 exp_prag.adb, exp_strm.adb, exp_util.adb, exp_util.ads,
487 expander.adb, expect.c, fe.h, fmap.adb, fmap.ads, fname-uf.adb,
488 freeze.adb, frontend.adb, g-awk.adb, g-cgideb.adb, g-comlin.adb,
489 g-comlin.ads, g-debpoo.adb, g-dirope.adb, g-dirope.ads,
490 g-dyntab.adb, g-expect.adb, g-expect.ads, g-io.ads, g-io_aux.adb,
491 g-io_aux.ads, g-locfil.adb, g-locfil.ads, g-os_lib.adb,
492 g-os_lib.ads, g-regexp.adb, g-regpat.adb, g-socket.adb,
493 g-socket.ads, g-spipat.adb, g-table.adb, g-trasym.adb,
494 g-trasym.ads, gigi.h, gmem.c, gnat1drv.adb, gnatbind.adb, gnatbl.c,
495 gnatchop.adb, gnatcmd.adb, gnatdll.adb, gnatfind.adb, gnatlbr.adb,
496 gnatlink.adb, gnatls.adb, gnatmem.adb, gnatprep.adb, gnatvsn.ads,
497 gnatxref.adb, hlo.adb, hostparm.ads, i-cobol.adb, i-cpp.adb,
498 i-cstrea.ads, i-cstrin.adb, i-pacdec.adb, i-vxwork.ads,
499 impunit.adb, init.c, inline.adb, io-aux.c, layout.adb, lib-load.adb,
500 lib-util.adb, lib-writ.adb, lib-writ.ads, lib-xref.adb,
501 lib-xref.ads, lib.adb, lib.ads, make.adb, makeusg.adb, mdll.adb,
502 memroot.adb, misc.c, mlib-tgt.adb, mlib-utl.adb, mlib-utl.ads,
503 mlib.adb, namet.adb, namet.ads, namet.h, nlists.h, nmake.adb,
504 nmake.ads, nmake.adt, opt.adb, opt.ads, osint.adb, osint.ads,
505 output.adb, output.ads, par-ch2.adb, par-ch3.adb, par-ch5.adb,
506 par-prag.adb, par-tchk.adb, par-util.adb, par.adb, prj-attr.adb,
507 prj-dect.adb, prj-env.adb, prj-env.ads, prj-nmsc.adb, prj-part.adb,
508 prj-proc.adb, prj-strt.adb, prj-tree.adb, prj-tree.ads, prj.adb,
509 prj.ads, raise.c, raise.h, repinfo.adb, restrict.adb, restrict.ads,
510 rident.ads, rtsfind.adb, rtsfind.ads, s-arit64.adb, s-asthan.adb,
511 s-atacco.adb, s-atacco.ads, s-auxdec.adb, s-crc32.adb, s-crc32.ads,
512 s-direio.adb, s-fatgen.adb, s-fileio.adb, s-finimp.adb,
513 s-gloloc.adb, s-gloloc.ads, s-interr.adb, s-mastop.adb,
514 s-mastop.ads, s-memory.adb, s-parame.ads, s-parint.adb,
515 s-pooglo.adb, s-pooloc.adb, s-rpc.adb, s-secsta.adb, s-sequio.adb,
516 s-shasto.adb, s-soflin.adb, s-soflin.ads, s-stache.adb,
517 s-taasde.adb, s-taasde.ads, s-tadeca.adb, s-tadeca.ads,
518 s-tadert.adb, s-tadert.ads, s-taenca.adb, s-taenca.ads,
519 s-taprob.adb, s-taprop.ads, s-tarest.adb, s-tasdeb.adb,
520 s-tasini.adb, s-tasini.ads, s-taskin.adb, s-taskin.ads,
521 s-tasque.adb, s-tasque.ads, s-tasren.adb, s-tasren.ads,
522 s-tassta.adb, s-tasuti.adb, s-tasuti.ads, s-tataat.adb,
523 s-tataat.ads, s-tpoben.adb, s-tpoben.ads, s-tpobop.adb,
524 s-tposen.adb, s-tposen.ads, s-traceb.adb, s-traceb.ads,
525 s-unstyp.ads, s-widenu.adb, scn-nlit.adb, scn.adb, sem.adb,
526 sem_aggr.adb, sem_attr.adb, sem_attr.ads, sem_case.adb,
527 sem_ch10.adb, sem_ch11.adb, sem_ch11.ads, sem_ch12.adb,
528 sem_ch13.adb, sem_ch13.ads, sem_ch2.adb, sem_ch3.adb, sem_ch3.ads,
529 sem_ch4.adb, sem_ch5.adb, sem_ch6.adb, sem_ch6.ads, sem_ch7.adb,
530 sem_ch8.adb, sem_ch8.ads, sem_ch9.adb, sem_disp.adb, sem_dist.adb,
531 sem_elab.adb, sem_elim.adb, sem_elim.ads, sem_eval.adb,
532 sem_intr.adb, sem_mech.adb, sem_prag.adb, sem_res.adb,
533 sem_type.adb, sem_util.adb, sem_util.ads, sem_vfpt.adb,
534 sem_warn.adb, sinfo.adb, sinfo.ads, sinfo.h, sinput-l.adb,
535 sinput-l.ads, sinput.adb, sinput.ads, snames.adb, snames.ads,
536 snames.h, sprint.adb, sprint.ads, stringt.adb, stringt.ads,
537 stringt.h, style.adb, switch.adb, switch.ads, sysdep.c, system.ads,
538 table.adb, targparm.adb, targparm.ads, targtyps.c, tbuild.adb,
539 tbuild.ads, tracebak.c, trans.c, tree_gen.adb, tree_io.adb,
540 treepr.adb, treepr.ads, treeprs.ads, treeprs.adt, ttypes.ads,
541 types.adb, types.ads, types.h, uintp.ads, urealp.ads, usage.adb,
542 utils.c, utils2.c, validsw.adb, xnmake.adb, xr_tabls.adb,
543 xr_tabls.ads, xref_lib.adb, xref_lib.ads : Merge in ACT changes.
545 * 1ssecsta.adb, 1ssecsta.ads, a-chlat9.ads, a-cwila9.ads,
546 g-enblsp.adb, g-md5.adb, g-md5.ads, gnatname.adb, gnatname.ads,
547 mkdir.c, osint-b.adb, osint-b.ads, osint-c.adb, osint-c.ads,
548 osint-l.adb, osint-l.ads, osint-m.adb, osint-m.ads : New files
550 * 3lsoccon.ads, 5qparame.ads, 5qvxwork.ads, 5smastop.adb,
551 5zparame.ads, gnatmain.adb, gnatmain.ads, gnatpsys.adb : Removed
553 * mdllfile.adb, mdllfile.ads, mdlltool.adb, mdlltool.ads : Renamed
554 to mdll-fil.ad[bs] and mdll-util.ad[bs]
556 * mdll-fil.adb, mdll-fil.ads, mdll-utl.adb, mdll-utl.ads : Renamed
557 from mdllfile.ad[bs] and mdlltool.ad[bs]
559 2002-03-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
561 * utils.c (init_gnat_to_gnu, init_gigi_decls): Use ARRAY_SIZE in
562 lieu of explicit sizeof/sizeof.
564 2002-02-28 Neil Booth <neil@daikokuya.demon.co.uk>
566 * misc.c (copy_lang_decl): Remove.
568 2002-02-27 Zack Weinberg <zack@codesourcery.com>
570 * misc.c: Delete traditional-mode-related code copied from the
571 C front end but not used, or used only to permit the compiler
574 2002-02-07 Richard Henderson <rth@redhat.com>
576 * adaint.c (__gnat_to_gm_time): First arg is int, not time_t.
577 * adaint.h (__gnat_to_gm_time): Update prototype.
579 2002-01-30 Richard Henderson <rth@redhat.com>
581 * trans.c (tree_transform) [N_Loop_Statement]: Use
582 expand_exit_loop_top_cond.
584 2001-12-23 Richard Henderson <rth@redhat.com>
586 * utils.c (end_subprog_body): Push GC context around
587 rest_of_compilation for nested functions.
589 2001-12-23 Richard Henderson <rth@redhat.com>
591 * 5nosinte.ads: Get definition of "int" from Interfaces.C.
593 2001-12-23 Florian Weimer <fw@deneb.enyo.de>
595 * gnat-style.texi (Declarations and Types): Remove ancient style
596 rule which was mandated by code generation issues.
598 * gnat-style.texi (header): Add @dircategory, @direntry.
599 (title page): Remove date.
600 (general) Add @./@: where approriate, and two spaces after the
601 full stop at the end of a sentence. Use @samp markup when
602 referring concrete lexical entities (keywords, attribute names
603 etc.), and @syntax for ARM grammar elements. Use @r for English
604 text in comments. Use @emph for emphasis. Change "if-statements"
605 etc. to "if statements" (without @samp). Break long lines. Make
606 casing of section names consistent.
607 (Identifiers): Use @samp markup for variable names.
608 (Comments): Use @samp markup for comment characters. Line-end
609 comments may follow any Ada code, not just statements. Fix
610 misspelling of "Integer" as "integer".
611 (Loop statements): Do not use variable name "I", use "J".
612 (Subprogram Declarations): Document alignment.
613 (Subprogram Bodies, Block statements): Document empty line before
616 2001-12-22 Florian Weimer <fw@deneb.enyo.de>
618 * make.adb (Add_Switch): Make Generic_Position a procedure. The
619 function approach did not work well because of a side effect (the
620 function call could reallocate the table which was being indexed
621 using its result). Fixes ada/4851.
623 2001-12-19 Robert Dewar <dewar@gnat.com>
625 * bindgen.adb: Minor reformatting
627 * cstand.adb: Minor reformatting
629 * fmap.adb: Minor reformatting
630 Change name from Add for Add_To_File_Map (Add is much too generic)
631 Change Path_Name_Of to Mapped_Path_Name
632 Change File_Name_Of to Mapped_File_Name
633 Fix copyright dates in header
636 Change name from Add for Add_To_File_Map (Add is much too generic)
637 Change Path_Name_Of to Mapped_Path_Name
638 Change File_Name_Of to Mapped_File_Name
639 Fix copyright dates in header
641 * fname-uf.adb: Minor reformatting. New names of stuff in Fmap.
642 Add use clause for Fmap.
644 * make.adb: Minor reformatting
646 * osint.adb: Minor reformatting. Change of names in Fmap.
647 Add use clause for Fmap.
649 * prj-env.adb: Minor reformatting
651 * prj-env.ads: Minor reformatting
653 * switch.adb: Minor reformatting. Do proper raise of Bad_Switch if
654 error found (there were odd exceptions to this general rule in
655 -gnatec/-gnatem processing)
657 2001-12-19 Olivier Hainque <hainque@gnat.com>
659 * raise.c (__gnat_eh_personality): Exception handling personality
660 routine for Ada. Still in rough state, inspired from the C++ version
661 and still containing a bunch of debugging artifacts.
662 (parse_lsda_header, get_ttype_entry): Local (static) helpers, also
663 inspired from the C++ library.
665 * raise.c (eh_personality): Add comments. Part of work for the GCC 3
666 exception handling integration.
668 2001-12-19 Arnaud Charlet <charlet@gnat.com>
670 * Makefile.in: Remove use of 5smastop.adb which is obsolete.
671 (HIE_SOURCES): Add s-secsta.ad{s,b}.
672 (HIE_OBJS): Add s-fat*.o
673 (RAVEN_SOURCES): Remove files that are no longer required. Add
674 interrupt handling files.
675 (RAVEN_MOD): Removed, no longer needed.
677 2001-12-19 Robert Dewar <dewar@gnat.com>
679 * a-ngelfu.adb: Remove ??? comment for inappropriate Inline_Always
680 Add 2001 to copyright date
682 * g-regpat.adb: Change pragma Inline_Always to Inline. There is no
683 need to force universal inlining for these cases.
685 2001-12-19 Arnaud Charlet <charlet@gnat.com>
687 * s-taprob.adb: Minor clean ups so that this unit can be used in
690 * exp_ch7.adb: Allow use of secondary stack in HI mode.
691 Disallow it when pragma Restrictions (No_Secondary_Stack) is specified.
693 2001-12-19 Vincent Celier <celier@gnat.com>
695 * prj-tree.ads (Project_Node_Record): Add comments for components
696 Pkg_Id and Case_Insensitive.
698 2001-12-19 Pascal Obry <obry@gnat.com>
700 * g-socket.adb: Minor reformatting. Found while reading code.
702 2001-12-19 Robert Dewar <dewar@gnat.com>
704 * prj-tree.ads: Minor reformatting
706 2001-12-20 Joseph S. Myers <jsm28@cam.ac.uk>
708 * config-lang.in (diff_excludes): Remove.
710 2001-12-17 Ed Schonberg <schonber@gnat.com>
712 * sem_res.adb (Resolve_Selected_Component): do not generate a
713 discriminant check if the selected component is a component of
714 the argument of an initialization procedure.
716 * trans.c (tree_transform, case of arithmetic operators): If result
717 type is private, the gnu_type is the base type of the full view,
718 given that the full view itself may be a subtype.
720 2001-12-17 Robert Dewar <dewar@gnat.com>
722 * sem_res.adb: Minor reformatting
724 * trans.c (tree_transform, case N_Real_Literal): Add missing third
725 parameter in call to Machine (unknown horrible effects from this
728 * urealp.h: Add definition of Round_Even for call to Machine
729 Add third parameter for Machine
731 2001-12-17 Ed Schonberg <schonber@gnat.com>
733 * sem_warn.adb (Check_One_Unit): Suppress warnings completely on
734 predefined units in No_Run_Time mode.
736 2001-12-17 Richard Kenner <kenner@gnat.com>
738 * misc.c (insn-codes.h): Now include.
740 2001-12-17 Olivier Hainque <hainque@gnat.com>
742 * a-except.adb: Preparation work for future integration of the GCC 3
743 exception handling mechanism
744 (Notify_Handled_Exception, Notify_Unhandled_Exception): New routines
745 to factorize previous code sequences and make them externally callable,
746 e.g. for the Ada personality routine when the GCC 3 mechanism is used.
747 (Propagate_Exception, Raise_Current_Excep, Raise_From_Signal_Handler):
748 Use the new notification routines.
750 2001-12-17 Emmanuel Briot <briot@gnat.com>
752 * prj-tree.ads (First_Choice_Of): Document the when others case
754 2001-12-17 Arnaud Charlet <charlet@gnat.com>
756 * bindgen.adb (Gen_Ada_Init_*): Set priority of environment task in
757 HI-E mode, in order to support Ravenscar profile properly.
759 * cstand.adb (Create_Standard): Duration is a 32 bit type in HI-E
760 mode on 32 bits targets.
762 2001-12-17 Vincent Celier <celier@gnat.com>
764 * fmap.adb: Initial version.
766 * fmap.ads: Initial version.
768 * fname-uf.adb (Get_File_Name): Use mapping if unit name mapped.
769 If search is successfully done, add to mapping.
771 * frontend.adb: Initialize the mapping if a -gnatem switch was used.
774 (Gnatmake): Add new local variable Mapping_File_Name.
775 Create mapping file when using project file(s).
776 Delete mapping file before exiting.
778 * opt.ads (Mapping_File_Name): New variable
780 * osint.adb (Find_File): Use path name found in mapping, if any.
782 * prj-env.adb (Create_Mapping_File): New procedure
784 * prj-env.ads (Create_Mapping_File): New procedure.
786 * switch.adb (Scan_Front_End_Switches): Add processing for -gnatem
789 * usage.adb: Add entry for new switch -gnatem.
791 * Makefile.in: Add dependencies for fmap.o.
793 2001-12-17 Ed Schonberg <schonber@gnat.com>
795 * sem_ch10.adb (Analyze_With_Clause): Retrieve proper entity when unit
796 is a package instantiation rewritten as a package body.
797 (Install_Withed_Unit): Undo previous change, now redundant.
799 2001-12-17 Gary Dismukes <dismukes@gnat.com>
802 (Compute_Length): Move conversion to Unsigned to callers.
803 (Get_Max_Size): Convert Len expression to Unsigned after calls to
804 Compute_Length and Determine_Range.
805 (Layout_Array_Type): Convert Len expression to Unsigned after calls to
806 Compute_Length and Determine_Range.
807 Above changes fix problem with length computation for supernull arrays
808 where Max (Len, 0) wasn't getting applied due to the Unsigned
809 conversion used by Compute_Length.
811 2001-12-17 Arnaud Charlet <charlet@gnat.com>
814 (OK_To_Use_In_No_Run_Time_Mode): Allow Ada.Exceptions and
815 System.Secondary_Stack.
816 (OK_To_Use_In_Ravenscar_Mode): New table needed to implement Ravenscar
818 Remove unused entity RE_Exception_Data.
820 * rtsfind.adb (RTE): Allow Ravenscar Profile in HI mode.
822 * rident.ads (No_Secondary_Stack): New restriction.
824 2001-12-17 Joel Brobecker <brobecke@gnat.com>
826 * gnat_rm.texi: Fix minor typos. Found while reading the section
827 regarding "Bit_Order Clauses" that was sent to a customer.
828 Very interesting documentation!
830 2001-12-17 Robert Dewar <dewar@gnat.com>
832 * sem_case.adb (Choice_Image): Avoid creating improper character
833 literal names by using the routine Set_Character_Literal_Name. This
834 fixes bombs in certain error message cases.
836 2001-12-17 Arnaud Charlet <charlet@gnat.com>
838 * a-reatim.adb: Minor reformatting.
840 2001-12-17 Ed Schonberg <schonber@gnat.com>
842 * sem_ch12.adb (Validate_Derived_Type_Instance): Handle properly the
843 case where the formal is an extension of another formal in the current
844 unit or in a parent generic unit.
846 2001-12-17 Arnaud Charlet <charlet@gnat.com>
848 * s-tposen.adb: Update comments. Minor reformatting.
851 * s-tarest.adb: Update comments. Minor code reorganization.
853 2001-12-17 Gary Dismukes <dismukes@gnat.com>
855 * exp_attr.adb (Attribute_Tag): Suppress expansion of <type_name>'Tag
858 2001-12-17 Robert Dewar <dewar@gnat.com>
860 * exp_attr.adb: Minor reformatting
862 2001-12-17 Ed Schonberg <schonber@gnat.com>
864 * sem_ch3.adb (Build_Derived_Private_Type): Refine check to handle
865 derivations nested within a child unit: verify that the parent
866 type is declared in an outer scope.
868 2001-12-17 Robert Dewar <dewar@gnat.com>
870 * sem_ch12.adb: Minor reformatting
872 2001-12-17 Ed Schonberg <schonber@gnat.com>
874 * sem_warn.adb (Check_One_Unit): In No_Run_Time mode, do not post
875 warning if current unit is a predefined one, from which bodies may
878 2001-12-17 Robert Dewar <dewar@gnat.com>
880 * eval_fat.ads: Add comment that Round_Even is referenced in Ada code
881 Fix header format. Add 2001 to copyright date.
883 * exp_dbug.adb (Get_Encoded_Name): Fix out of bounds reference,
884 which caused CE during compilation if checks were enabled.
886 2001-12-17 Vincent Celier <celier@gnat.com>
889 (Switches_Of): New function
890 (Test_If_Relative_Path): New procedure
891 (Add_Switches): Use new function Switches_Of
892 (Collect_Arguments_And_Compile): Use new function Switches_Of.
893 When using a project file, test if there are any relative
894 search path. Fail if there are any.
895 (Gnatmake): Only add switches for the primary directory when not using
896 a project file. When using a project file, change directory to the
897 object directory of the main project file. When using a project file,
898 test if there are any relative search path. Fail if there are any.
899 When using a project file, fail if specified executable is relative
900 path with directory information, and prepend executable, if not
901 specified as an absolute path, with the exec directory. Make sure
902 that only one -o switch is transmitted to the linker.
904 * prj-attr.adb (Initialization_Data): Add project attribute Exec_Dir
907 (Ada_Check): Get Spec_Suffix_Loc and Impl_Suffix_Loc,
908 when using a non standard naming scheme.
909 (Check_Ada_Naming_Scheme): Make sure that error messages
910 do not raise exceptions.
911 (Is_Illegal_Append): Return True if there is no dot in the suffix.
912 (Language_Independent_Check): Check the exec directory.
914 * prj.adb (Project_Empty): Add new component Exec_Directory
917 (Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Add defaults.
918 (Project_Data): Add component Exec_Directory
920 * snames.adb: Updated to match snames.ads revision 1.215
922 * snames.ads: Added Exec_Dir
924 2001-12-17 Robert Dewar <dewar@gnat.com>
926 * make.adb: Minor reformatting
928 * prj-nmsc.adb: Minor reformatting
930 * snames.adb: Updated to match snames.ads
932 * snames.ads: Alphebetize entries for project file
934 2001-12-17 Ed Schonberg <schonber@gnat.com>
936 * trans.c (process_freeze_entity): Do nothing if the entity is a
937 subprogram that was already elaborated.
939 2001-12-17 Richard Kenner <kenner@gnat.com>
941 * decl.c (gnat_to_gnu_entity, object): Do not back-annotate Alignment
942 and Esize if object is referenced via pointer.
944 2001-12-17 Ed Schonberg <schonber@gnat.com>
946 * sem_ch3.adb (Analyze_Variant_Part): check that type of discriminant
947 is discrete before analyzing choices.
949 2001-12-17 Joel Brobecker <brobecke@gnat.com>
951 * bindgen.adb (Gen_Output_File_Ada): Generate a new C-like string
952 containing the name of the Ada Main Program. This string is mainly
953 intended for the debugger.
954 (Gen_Output_File_C): Do the equivalent change when generating a C file.
956 2001-12-17 Robert Dewar <dewar@gnat.com>
958 * ali.adb: Set new Dummy_Entry field in dependency entry
960 * ali.ads: Add Dummy_Entry field to source dependency table
962 * bcheck.adb (Check_Consistency): Ignore dummy D lines
964 * lib-writ.adb (Writ_ALI): Write dummy D lines for missing source files
966 * lib-writ.ads: Document dummy D lines for missing files.
968 * types.ads: (Dummy_Time_Stamp): New value for non-existant files
970 2001-12-17 Robert Dewar <dewar@gnat.com>
972 * ali.adb: Type reference does not reset current file.
974 * ali.adb: Recognize and scan renaming reference
976 * ali.ads: Add spec for storing renaming references.
978 * lib-xref.ads: Add documentation for handling of renaming references
980 * lib-xref.adb: Implement output of renaming reference.
983 (Determine_Range): Document local variables
984 (Determine_Range): Make sure Hbound is initialized. It looks as though
985 there could be a real problem here with an uninitialized reference
986 to Hbound, but no actual example of failure has been found.
988 2001-12-17 Laurent Pautet <pautet@gnat.com>
991 Fix comment of Shutdown_Socket and Close_Socket. These functions
992 should not fail silently because if they are called twice, this
993 probably means that there is a race condition in the user program.
994 Anyway, this behaviour is consistent with the rest of this unit.
995 When an error occurs, an exception is raised with the error message
996 as exception message.
998 2001-12-17 Robert Dewar <dewar@gnat.com>
1000 * frontend.adb: Move call to Check_Unused_Withs from Frontend, so
1001 that it happens before modification of Sloc values for -gnatD.
1003 * gnat1drv.adb: Move call to Check_Unused_Withs to Frontend,
1004 so that it happens before modification of Sloc values for -gnatD.
1006 * switch.adb: Minor reformatting
1008 2001-12-15 Richard Henderson <rth@redhat.com>
1010 * sem_ch7.adb: Wrap comment.
1012 2001-12-16 Joseph S. Myers <jsm28@cam.ac.uk>
1014 * 5ataprop.adb, 5atpopsp.adb, 5ftaprop.adb, 5gmastop.adb,
1015 5gtaprop.adb, 5htaprop.adb, 5itaprop.adb, 5lintman.adb,
1016 5omastop.adb, 5oosinte.adb, 5otaprop.adb, 5staprop.adb,
1017 5vinterr.adb, 5vtaprop.adb, 5vtpopde.adb, 5wintman.adb,
1018 5wtaprop.adb, 5zinterr.adb, 5ztaprop.adb, 6vcstrea.adb,
1019 7sintman.adb, 7staprop.adb, 9drpc.adb, ChangeLog, Makefile.in,
1020 a-except.adb, a-tags.ads, a-tasatt.adb, a-teioed.adb,
1021 a-textio.ads, a-witeio.ads, a-wtedit.adb, ali.ads, comperr.adb,
1022 cstand.adb, einfo.ads, errout.adb, exp_ch11.adb, exp_ch2.adb,
1023 exp_ch3.adb, exp_ch4.adb, exp_ch5.adb, exp_ch6.adb, exp_ch9.adb,
1024 exp_util.adb, exp_util.ads, fname-uf.adb, g-cgi.ads, g-exctra.ads,
1025 g-expect.ads, g-regist.adb, g-spipat.adb, gnatchop.adb,
1026 gnatlink.adb, gnatls.adb, gnatmain.adb, gnatmem.adb, init.c,
1027 make.adb, make.ads, mdlltool.adb, nlists.ads, osint.ads,
1028 par-ch3.adb, par-ch4.adb, par-ch5.adb, par-ch6.adb, par.adb,
1029 repinfo.adb, s-fatflt.ads, s-fatlfl.ads, s-fatllf.ads,
1030 s-fatsfl.ads, s-finimp.adb, s-finimp.ads, s-interr.adb,
1031 s-secsta.ads, s-shasto.ads, s-stalib.adb, s-stalib.ads,
1032 s-tarest.ads, s-tasdeb.adb, s-tassta.adb, s-tassta.ads,
1033 s-vaflop.ads, scans.ads, scn.adb, sem.ads, sem_aggr.adb,
1034 sem_attr.adb, sem_case.ads, sem_ch10.adb, sem_ch12.adb,
1035 sem_ch13.adb, sem_ch3.adb, sem_ch3.ads, sem_ch5.adb, sem_ch7.adb,
1036 sem_ch8.adb, sem_ch8.ads, sem_type.adb, sem_util.ads, sinfo.ads,
1037 sprint.adb, tbuild.ads, types.ads, utils.c, xeinfo.adb: Fix
1040 2001-12-14 Vincent Celier <celier@gnat.com>
1042 * osint.adb(Create_Debug_File): When an object file is specified,
1043 put the .dg file in the same directory as the object file.
1045 2001-12-14 Robert Dewar <dewar@gnat.com>
1047 * osint.adb: Minor reformatting
1049 * lib-xref.adb (Output_Instantiation): New procedure to generate
1050 instantiation references.
1052 * lib-xref.ads: Add documentation of handling of generic references.
1054 * ali.adb (Read_Instantiation_Ref): New procedure to read
1055 instantiation references
1057 * ali.ads: Add spec for storing instantiation references
1059 * bindusg.adb: Minor reformatting
1061 * switch.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
1063 * usage.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
1065 * gnatcmd.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
1067 * csets.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
1071 Add 2001 to copyright date
1072 Add entry for Latin-5 (Cyrillic ISO-8859-5)
1074 2001-12-14 Matt Gingell <gingell@gnat.com>
1076 * adaint.c: mktemp is a macro on Lynx and can not be used as an
1079 2001-12-14 Richard Kenner <kenner@gnat.com>
1081 * misc.c (gnat_expand_constant): Do not strip UNCHECKED_CONVERT_EXPR
1082 if operand is CONSTRUCTOR.
1084 2001-12-14 Ed Schonberg <schonber@gnat.com>
1086 * trans.c (tree_transform, case N_Assignment_Statement): Set lineno
1087 before emiting check on right-hand side, so that exception information
1090 2001-12-14 Richard Kenner <kenner@gnat.com>
1092 * utils.c (create_var_decl): Throw away initializing expression
1093 if just annotating types and non-constant.
1095 2001-12-14 Vincent Celier <celier@gnat.com>
1097 * prj-nmsc.adb: (Ada_Check): Migrate drom Ada_Default_... to
1100 * prj.adb: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
1102 (Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Move to spec.
1104 * prj.ads: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
1106 (Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Move from body.
1108 2001-12-16 Joseph S. Myers <jsm28@cam.ac.uk>
1110 * ChangeLog: Remove piece of diff output.
1112 2001-12-14 Geert Bosch <bosch@gnat.com>
1114 * config-lang.in: Update copyright notice
1116 * layout.adb: Remove commented out code.
1118 * mdllfile.ads: Update copyright notice. Fix header format.
1120 * sem_case.ads: Likewise.
1122 * sem_ch3.adb: Minor reformatting.
1124 2001-12-12 Geert Bosch <bosch@gnat.com>
1126 * freeze.ads: Update copyright date.
1128 * g-comlin.ads: Minor reformatting.
1130 * gnat-style.texi: Fix typo.
1132 2001-12-12 Geert Bosch <bosch@gnat.com>
1134 * einfo.h: Regenerate.
1136 2001-12-12 Ed Schonberg <schonber@gnat.com>
1138 * sem_ch12.adb (Save_Entity_Descendant): Use syntactic field names
1139 on known node types, rather than untyped fields. Further cleanups.
1141 2001-12-12 Robert Dewar <dewar@gnat.com>
1144 (Save_Entity_Descendant): Minor comment update.
1145 (Copy_Generic_Node): Deal with incorrect reference to Associated_Node
1146 of an N_Attribute_Reference node. As per note below, this does not
1147 eliminate need for Associated_Node in attribute ref nodes.
1148 (Associated_Node): Documentation explicitly mentions attribute
1149 reference nodes, since this field is used in such nodes.
1151 * sem_ch12.adb (Associated_Node): Minor documentation cleanup.
1153 2001-12-12 Robert Dewar <dewar@gnat.com>
1155 * s-stalib.adb: Add more comments on with statements being needed
1157 * par-ch12.adb: Minor reformatting
1159 * prj-dect.ads: Fix copyright header
1161 * s-arit64.adb (Multiply_With_Ovflo_Check): Fix case where both
1162 inputs fit in 32 bits, but the result still overflows.
1164 * s-fatgen.ads: Minor comment improvement
1166 2001-12-12 Ed Schonberg <schonber@gnat.com>
1168 * sem_ch4.adb (Analyze_Selected_Component): If the prefix is of a
1169 formal derived type, look for an inherited component from the full
1170 view of the parent, if any.
1172 2001-12-12 Robert Dewar <dewar@gnat.com>
1174 * checks.ads (Apply_Alignment_Check): New procedure.
1176 * exp_ch13.adb (Expand_N_Freeze_Entity): Generate dynamic check to
1177 ensure that the alignment of objects with address clauses is
1178 appropriate, and raise PE if not.
1180 * exp_util.ads (Must_Be_Aligned): Removed, replaced by
1181 Exp_Pakd.Known_Aligned_Enough
1183 * mdllfile.ads: Minor reformatting
1185 * mlib-fil.ads: Minor reformatting
1187 2001-12-12 Ed Schonberg <schonber@gnat.com>
1189 * exp_ch8.adb (Expand_N_Object_Renaming_Declaration): Extend previous
1190 fix to any component reference if enclosing record has non-standard
1193 2001-12-12 Vincent Celier <celier@gnat.com>
1195 * g-dirope.ads (Find, Wildcard_Iterator): Moved to child package
1198 2001-12-12 Ed Schonberg <schonber@gnat.com>
1200 * freeze.ads: Make Freeze_Fixed_Point_Type visible, for use in
1203 2001-12-12 Robert Dewar <dewar@gnat.com>
1205 * impunit.adb: Add entry for GNAT.Directory_Operations.Iteration
1207 2001-12-12 Emmanuel Briot <briot@gnat.com>
1209 * g-regexp.adb: Remove all debug code, since it isn't required anymore,
1210 and it adds dependencies to system.io.
1212 2001-12-12 Pascal Obry <obry@gnat.com>
1214 * g-dirope.adb (Expand_Path.Var): Correctly detect end of
1217 2001-12-11 Ed Schonberg <schonber@gnat.com>
1219 * sem_ch10.adb (Install_Withed_Unit): If the unit is a generic instance
1220 that is the parent of other generics, the instance body replaces the
1221 instance node. Retrieve the instance of the spec, which is the one
1222 that is visible in clients and within the body.
1224 2001-12-11 Vincent Celier <celier@gnat.com>
1226 * gnatmain.adb: Initial version.
1228 * gnatmain.ads: Initial version.
1230 * prj-attr.adb (Initialisation_Data): Add package Gnatstub.
1232 * snames.adb: Updated to match snames.ads.
1234 * snames.ads: Added Gnatstub.
1236 2001-12-11 Vincent Celier <celier@gnat.com>
1238 * prj-attr.adb (Initialization_Data): Change name from
1239 Initialisation_Data.
1241 2001-12-11 Emmanuel Briot <briot@gnat.com>
1243 * g-regpat.adb (Parse_Literal): Properly handle simple operators ?,
1244 + and * applied to backslashed expressions like \r.
1246 2001-12-11 Vasiliy Fofanov <fofanov@gnat.com>
1248 * g-os_lib.ads: String_List type added, Argument_List type is now
1249 subtype of String_List.
1251 2001-12-11 Robert Dewar <dewar@gnat.com>
1253 * g-os_lib.ads: Change copyright to FSF
1254 Add comments for String_List type
1256 2001-12-11 Vincent Celier <celier@gnat.com>
1258 * g-dirope.adb (Expand_Path): Fix bug. (wrong length when adding a
1259 string to the buffer).
1261 2001-12-11 Ed Schonberg <schonber@gnat.com>
1263 * freeze.adb: Make Freeze_Fixed_Point_Type visible, for use in
1266 * sem_attr.adb: Simplify previous fix for Address.
1267 (Set_Bounds): If prefix is a non-frozen fixed-point type, freeze now,
1268 to avoid anomalies where the bound of the type appears to raise
1271 2001-12-11 Robert Dewar <dewar@gnat.com>
1273 * lib-xref.adb (Output_Refs): Make sure pointers are always properly
1276 2001-12-11 Ed Schonberg <schonber@gnat.com>
1278 * sem_ch12.adb (Analyze_Subprogram_Instantiation): Check for a
1279 renamed unit before checking for recursive instantiations.
1281 2001-12-11 Emmanuel Briot <briot@gnat.com>
1283 * prj.ads: Add comments for some of the fields.
1285 2001-12-11 Robert Dewar <dewar@gnat.com>
1287 * lib-xref.adb (Output_Refs): Don't output type references outside
1288 the main unit if they are not otherwise referenced.
1290 2001-12-11 Ed Schonberg <schonber@gnat.com>
1292 * sem_attr.adb (Analyze_attribute, case Address and Size): Simplify
1293 code and diagnose additional illegal uses
1295 * sem_util.adb (Is_Object_Reference): An indexed component is an
1296 object only if the prefix is.
1298 2001-12-11 Vincent Celier <celier@gnat.com>
1300 * g-diopit.adb: Initial version.
1302 * g-diopit.ads: Initial version.
1305 (Expand_Path): Avoid use of Unbounded_String
1306 (Find, Wildcard_Iterator): Moved to child package Iteration
1308 * Makefile.in: Added g-diopit.o to GNATRTL_NONTASKING_OBJS
1310 2001-12-11 Robert Dewar <dewar@gnat.com>
1312 * sem_attr.adb: Minor reformatting
1314 2001-12-11 Ed Schonberg <schonber@gnat.com>
1316 * sem_ch3.adb: Clarify some ???.
1318 2001-12-11 Robert Dewar <dewar@gnat.com>
1320 * exp_util.adb (Must_Be_Aligned): Removed, replaced by
1321 Exp_Pakd.Known_Aligned_Enough
1323 * sem_ch13.adb (Check_Address_Alignment): Removed, extended
1324 version is moved to Exp_Ch13.
1326 2001-12-11 Robert Dewar <dewar@gnat.com>
1328 * einfo.ads: Minor reformatting
1330 * exp_ch5.adb: Add comment for previous.change
1332 * ali.adb: New interface for extended typeref stuff.
1334 * ali.ads: New interface for typeref stuff.
1336 * checks.adb (Apply_Alignment_Check): New procedure.
1338 * debug.adb: Add -gnatdM for modified ALI output
1340 * exp_pakd.adb (Known_Aligned_Enough): Replaces Known_Aligned_Enough.
1342 * lib-xref.adb: Extend generation of <..> notation to cover
1343 subtype/object types. Note that this is a complete rewrite,
1344 getting rid of the very nasty quadratic algorithm previously
1345 used for derived type output.
1347 * lib-xref.ads: Extend description of <..> notation to cover
1348 subtype/object types. Uses {..} for these other cases.
1349 Also use (..) for pointer types.
1351 * sem_util.adb (Check_Potentially_Blocking_Operation): Slight cleanup.
1353 * exp_pakd.adb: Minor reformatting. Note that prevous RH should say:
1354 (Known_Aligned_Enough): Replaces Must_Be_Aligned.
1356 2001-12-11 Vincent Celier <celier@gnat.com>
1359 Changed /COMPILE_ONLY to /ACTIONS=COMPILE
1360 Changed /BIND_ONLY to /ACTIONS=BIND
1361 Changed /LINK_ONLY to /ACTIONS=LINK
1363 2001-12-11 Ed Schonberg <schonber@gnat.com>
1365 * sem_ch8.adb (Find_Selected_Component): improved search for a
1366 candidate package in case of error.
1368 * sem_ch12.adb (Inline_Instance_Body): place head of use_clause
1369 chain back on scope stack before reinstalling use clauses.
1371 * exp_ch5.adb (Expand_N_If_Statement): if Constant_Condition_Warnings
1372 is enabled, do not kill the code for the condition, to preserve
1375 2001-12-11 Robert Dewar <dewar@gnat.com>
1377 * checks.adb (Insert_Valid_Check): Apply validity check to expression
1378 of conversion, not to result of conversion.
1380 2001-12-11 Ed Schonberg <schonber@gnat.com>
1382 * sem_ch3.adb (Build_Derived_Record_Type): set Controlled flag
1383 before freezing parent. If the declarations are mutually recursive,
1384 an access to the current record type may be frozen before the
1385 derivation is complete.
1387 2001-12-05 Vincent Celier <celier@gnat.com>
1389 * gnatcmd.adb: (MAKE): Add new translations: -b /BIND_ONLY,
1390 -c /COMPILE_ONLY, -l /LINK_ONLY
1393 (Bind_Only): New Flag
1394 (Link_Only): New flag
1396 * switch.adb (Scan_Make_Switches): Add processing for -b (Bind_Only)
1399 * makeusg.adb: Add new switches -b and -l. Update Copyright notice.
1402 (Do_Compile_Step, Do_Bind_Step, Do_Link_Step): New flags.
1403 (Gnatmake): Set the step flags. Only perform a step if the
1404 corresponding step flag is True.
1405 (Scan_Make_Arg): Reset the bind and link step flags when -u
1406 or -gnatc has been specified.
1408 2001-12-05 Ed Schonberg <schonber@gnat.com>
1410 * sem_eval.adb (Eval_Concatenation): If left operand is a null string,
1411 get bounds from right operand.
1413 * sem_eval.adb: Minor reformatting
1415 * exp_util.adb (Make_Literal_Range): use bound of literal rather
1416 than Index'First, its lower bound may be different from 1.
1418 * exp_util.adb: Undo earlier change, fixes ACVC regressions C48009B
1421 2001-12-05 Vincent Celier <celier@gnat.com>
1423 * prj-nmsc.adb Minor reformatting
1425 * prj-nmsc.adb (Language_Independent_Check): Reset Library flag if
1426 set and libraries are not supported.
1428 2001-12-05 Ed Schonberg <schonber@gnat.com>
1430 * sem_ch3.adb (Build_Derived_Private_Type): set Public status of
1431 private view explicitly, so the back-end can treat as a global
1434 2001-12-05 Ed Schonberg <schonber@gnat.com>
1436 * sem_ch12.adb (Instantiate_Package_Body): if instance is a compilation
1437 unit, always replace instance node with new body, for ASIS use.
1439 2001-12-05 Vincent Celier <celier@gnat.com>
1441 * prj-nmsc.adb (Language_Independent_Check): Issue a warning if
1442 libraries are not supported and both attributes Library_Name and
1443 Library_Dir are specified.
1445 * prj-proc.adb (Expression): Set location of Result to location of
1448 * Makefile.in: Add mlib.o, mlib-fil.o, mlib-tgt and mlib-utl to GNATLS.
1449 (prj-nmsc is now importing MLib.Tgt)
1451 * prj-proc.adb: Put the change indicated above that was forgotten.
1453 2001-12-05 Robert Dewar <dewar@gnat.com>
1455 * Makefile.in: Add dependencies for System.IO for GNAT.Regexp
1457 2001-12-05 Ed Schonberg <schonber@gnat.com>
1459 * sem_ch3.adb (Build_Derived_Concurrent_Type): If derivation imposes a
1460 constraint, introduce explicit subtype declaration and derive from it.
1462 * sem_ch3.adb: Minor reformatting
1464 2001-12-05 Robert Dewar <dewar@gnat.com>
1466 * checks.adb (Determine_Range): Increase cache size for checks.
1469 * exp_ch6.adb: Minor reformatting
1470 (Expand_N_Subprogram_Body): Reset Is_Pure for any subprogram that has
1471 a parameter whose root type is System.Address, since treating such
1472 subprograms as pure in the code generator is almost surely a mistake
1473 that will lead to unexpected results.
1475 * exp_util.adb (Remove_Side_Effects): Clean up old ??? comment and
1476 change handling of conversions.
1478 * g-regexp.adb: Use System.IO instead of Ada.Text_IO.
1480 2001-12-05 Ed Schonberg <schonber@gnat.com>
1482 * sem_ch3.adb (Analyze_Object_Declaration): If expression is an
1483 aggregate with static wrong size, attach generated Raise node to
1486 2001-12-05 Robert Dewar <dewar@gnat.com>
1488 * sem_attr.adb (Analyze_Attribute): Defend against bad Val attribute.
1489 Fixes compilation abandoned bomb in B24009B.
1491 2001-12-05 Ed Schonberg <schonber@gnat.com>
1494 Document use of Associated_Node on Selected_Components.
1495 (Save_Global_Operand_Descendants): Change to Save_Entity_Descendants,
1496 to clarify use of untyped descendant fields.
1498 2001-12-05 Robert Dewar <dewar@gnat.com>
1500 * prj-dect.ads: Add ??? comment
1501 Add 2001 to copyright notice (was not done in after all)
1503 * prj-part.adb: Minor reformatting. Reword one awkward error message.
1505 * prj.ads: Minor reformatting throughout, and add some ??? comments
1507 * snames.ads: Minor reformatting
1509 2001-12-05 Geert Bosch <bosch@gnat.com>
1511 * snames.adb: Autoupdate
1513 2001-12-05 Vincent Celier <celier@gnat.com>
1515 * prj-dect.adb (Parse): Rename parameter Modifying to Extends.
1517 * prj-dect.ads (Parse): Rename parameter Modifying to Extends.
1519 * prj-env.adb: Minor comment changes (modifying -> extends).
1521 * prj-nmsc.adb: Minor comment changes (modifying -> extends).
1523 * prj-part.adb (Parse_Single_Project): Change Tok_Modifying to
1526 * prj.adb (Initialize): Change Modifying to Extends.
1528 * scans.ads (Token_Type): Change Tok_Modifying to Tok_Extends.
1530 * prj.ads: Minor comment change (Modifying -> extending).
1532 * snames.ads: Change modifying to extends.
1534 2001-12-05 Robert Dewar <dewar@gnat.com>
1536 * sem_warn.adb: Remove stuff for conditionals, we are not going to
1539 * sem_warn.ads: Remove stuff for conditionals, we are not going to
1540 do this after all. Add 2001 to copyright notice
1542 2001-12-04 Geert Bosch <bosch@gnat.com>
1544 * einfo.h, sinfo.h, treeprs.ads: Regenerate.
1546 2001-12-04 Robert Dewar <dewar@gnat.com>
1548 * errout.adb (Error_Msg): Ignore attempt to put error msg at junk
1549 location if we already have errors. Stops some cases of cascaded
1552 * errout.adb: Improve comment.
1554 2001-12-04 Robert Dewar <dewar@gnat.com>
1557 (Analyze_Formal_Type_Definition): Defend against Error.
1558 (Analyze_Formal_Subprogram): Defend against Error.
1560 * par-ch12.adb (F_Formal_Type_Declaration): In case of error,
1561 remove following semicolon if present. Removes cascaded error.
1563 2001-12-04 Douglas B. Rupp <rupp@gnat.com>
1566 (Gen_Exception_Table_Ada): Write "begin" and then return if Num
1567 exceptions equals 0.
1568 (Gen_Exception_Table_C): Return if Num exceptions equals 0.
1569 Fixes PIWG E tests (which have to be run with -gnatL).
1571 2001-12-04 Robert Dewar <dewar@gnat.com>
1573 * einfo.ads: Minor reformatting
1575 2001-12-04 Ed Schonberg <schonber@gnat.com>
1577 * einfo.ads: Block_Node points to the identifier of the block, not to
1578 the block node itself, to preserve the link when the block is
1579 rewritten, e.g. within an if-statement with a static condition.
1581 * inline.adb (Cleanup_Scopes): recover block statement from block
1582 entity using new meaning of Block_Node.
1584 * sem_ch5.adb (Analyze_Block_Statement): set Block_Node to point to
1585 identifier of block node, rather than to node itself.
1587 2001-12-04 Gary Dismukes <dismukes@gnat.com>
1590 (Get_Max_Size): Fix "start of processing" comment to say Get_Max_Size.
1591 (Discrimify): Go back to setting the Etypes of the selected component
1592 because the Vname component does not exist at this point and will
1593 fail name resolution. Also set Analyzed.
1594 Remove with and use of Sem_Res.
1596 2001-12-04 Arnaud Charlet <charlet@gnat.com>
1598 * Makefile.in: (HIE_SOURCES): add s-fat*.
1600 2001-12-04 Robert Dewar <dewar@gnat.com>
1603 (Compile_Time_Known_Attribute): New procedure.
1604 (Eval_Attribute, case Size): Use Compile_Time_Known_Attribute to ensure
1607 2001-12-04 Ed Schonberg <schonber@gnat.com>
1609 * sem_ch7.adb (New_Private_Type): Set Is_Tagged_Type flag before
1610 processing discriminants to diagnose illegal default values.
1612 2001-12-04 Ed Schonberg <schonber@gnat.com>
1614 * sem_attr.adb (Resolve_Attribute): Handle properly an non-classwide
1615 access discriminant within a type extension that constrains its
1616 parent discriminants.
1618 2001-12-04 Ed Schonberg <schonber@gnat.com>
1620 * sem_ch3.adb (Find_Type_Of_Subtype_Indic): If subtype indication
1621 is malformed, use instance of Any_Id to allow analysis to proceed.
1623 * par-ch12.adb (P_Formal_Type_Declaration): Propagate Error if
1624 type definition is illegal.
1625 (P_Formal_Derived_Type_Definition): Better recovery when TAGGED is
1628 2001-12-04 Ed Schonberg <schonber@gnat.com>
1630 * sem_warn.adb (Output_Unreferenced_Messages): Extend previous fix to
1633 2001-12-04 Robert Dewar <dewar@gnat.com>
1635 * errout.adb: Minor reformatting
1637 2001-12-04 Robert Dewar <dewar@gnat.com>
1639 * exp_util.adb: Minor reformatting from last change
1641 * errout.adb (Check_For_Warning): For a Raised_Constraint_Error node
1642 which is a rewriting of an expression, traverse the original
1643 expression to remove warnings that may have been posted on it.
1645 2001-12-04 Ed Schonberg <schonber@gnat.com>
1647 * exp_util.adb (Must_Be_Aligned): Return false for a component of a
1648 record that has other packed components.
1650 2001-12-04 Douglass B. Rupp <rupp@gnat.com>
1652 * adaint.c: Minor cleanups.
1654 2001-12-04 Douglass B. Rupp <rupp@gnat.com>
1656 * adaint.c: Do not use utime.h on vxworks.
1658 2001-12-04 Arnaud Charlet <charlet@gnat.com>
1660 * Makefile.adalib: Clarify step 3 (use of gnat.adc) as it causes
1661 more confusion than it solves.
1663 2001-12-04 Geert bosch <bosch@gnat.com>
1665 * einfo.h, nmake.adb, nmake.ads, sinfo.h treeprs.ads: Regenerate.
1667 2001-12-04 Geert Bosch <bosch@gnat.com>
1669 * Makefile.in (update-sources): New target.
1670 For use by gcc_release script.
1672 2001-12-04 Ed Schonberg <schonber@gnat.com>
1674 * sem_prag.adb (Analyze_Pragma, case Validity_Checks): do not treat as
1675 a configuration pragma, it is now legal wherever a pragma can appear.
1677 2001-12-04 Zack Weinberg <zack@codesourcery.com>
1679 * Makefile.in: Don't set ALL. Delete @cross_defines@,
1680 @cross_overrides@, @build_overrides@ stanzas. INTERNAL_CFLAGS
1681 is now @CROSS@ -DIN_GCC; update comment.
1683 2001-12-04 Robert Dewar <dewar@gnat.com>
1685 * einfo.adb (Has_Pragma_Pure_Function): New flag.
1686 Fix problem that stopped ceinfo from working
1688 * einfo.ads (Has_Pragma_Pure_Function): New flag.
1690 * sem_prag.adb (Pure_Function): Set new flag Has_Pragma_Pure_Function.
1692 2001-12-04 Douglas B. Rupp <rupp@gnat.com>
1695 (File_Time_Stamp): New procedure.
1696 (Preserve_Mode): New boolean.
1697 (Write_Unit): Pass time stamp.
1698 Implement -p switch (preserve time stamps).
1700 * gnatcmd.adb (CHOP): Add translation for -p (/PRESERVE).
1702 * gnatchop.adb: Do usage info for -p switch
1704 * adaint.h (__gnat_set_file_time_name): New function
1706 * adaint.c (__gnat_set_file_time_name): Implement
1708 * adaint.h: Fix typo
1710 2001-12-03 Robert Dewar <dewar@gnat.com>
1712 * sinfo.ads: Minor reformatting. N_Freeze_Entity node does not
1713 have Associated_Node.
1715 2001-12-03 Robert Dewar <dewar@gnat.com>
1717 * prj-proc.adb: Minor reformatting
1719 * make.adb: Minor reformatting
1721 2001-12-03 Geert Bosch <bosch@gnat.com>
1723 * make.adb: Minor reformatting.
1725 2001-12-03 Robert Dewar <dewar@gnat.com>
1727 * sem_ch12.adb: Minor reformatting
1729 2001-12-03 Ed Schonberg <schonber@gnat.com>
1731 * sem_ch12.adb (Inline_Instance_Body): Use Save_Scope_Stack and
1732 push Standard on the stack before analyzing the instance body,
1733 in order to have a clean visibility environment.
1735 * sem_ch12.adb (Inline_Instance_Body): Remove redundant code.
1737 2001-12-03 Ed Schonberg <schonber@gnat.com>
1739 * sem_ch12.adb (Instantiate_Package_Body): Protect against double
1740 instantiation of a body that contains an inlined body.
1742 2001-12-03 Ed Schonberg <schonber@gnat.com>
1745 (Analyze_generic_subprogram_Declaration): Set outer_generic_scope,
1746 to prevent freezing within formal packages.
1747 (Freeze_Subprogram_Body): If body comes from another instance that
1748 appeared before its own body, place freeze node at end of current
1749 declarative part, to prevent a back-end crash.
1750 (Inline_Instance_Body): Handle properly a package instance within
1751 a subprogram instance that is a child unit.
1753 2001-12-01 Graham Stott <grahams@redhat.com>
1755 * Makefile.in (misc.o): Add missing $(srcdir) prefix
1756 and add optabs.h dependency.
1758 * misc.c: Include optabs.h
1759 (gnat_tree_code_type): Make static and const.
1760 (gnat_tree_code_length): Likewise.
1761 (gnat_tree_code_name): Likewise.
1762 (update_setjmp_buf): Obtain operands mode from insn_data.
1764 2001-11-29 Richard Henderson <rth@redhat.com>
1766 * init.c: Remove obsolete dwarf2 frame.h section.
1768 2001-11-29 Joseph S. Myers <jsm28@cam.ac.uk>
1770 * Make-lang.in (ada.generated-manpages): New dummy target.
1772 2001-11-29 Ed Schonberg <schonber@gnat.com>
1774 * g-os_lib.adb (Add_To_Command): use explicit loop to move string
1775 into Command, an array conversion is illegal here. Uncovered by
1778 2001/11/28 Geert Bosch <bosch@gnat.com>
1780 * init.c: Minor whitespace changes.
1782 2001-11-28 Doug Rupp <rupp@gnat.com>
1784 * init.c: (__gnat_install_handler,VMS): Increase size of alternate
1787 2001-11-28 Zack Weinberg <zack@codesourcery.com>
1789 * misc.c (gnat_expand_constant): Move declaration above
1790 definition of lang_hooks.
1791 (LANG_HOOKS_EXPAND_CONSTANT): Set to gnat_expand_constant.
1792 (gnat_init): lang_expand_constant no longer exists.
1794 (internal_error_function): Remove #ifdef HAVE_VPRINTF. We
1795 always have vprintf.
1796 (gnat_init): Always call set_internal_error_function.
1798 2001-11-27 Andreas Jaeger <aj@suse.de>
1800 * Makefile.in (stamp-tool_src_dir): Use symbolic link.
1802 2001-11-27 Laurent Guerby <guerby@acm.org>
1804 * Makefile.in: Regenerate Ada dependencies.
1806 2001-11-26 Richard Henderson <rth@redhat.com>
1808 * Make-lang.in (gnatbind, gnatmake, gnatbl, gnatchop, gnatcmd,
1809 gnatlink, gnatkr, gnatls, gnatmem, gnatprep, gnatpsta, gnatpsys,
1810 gnatxref, gnatfind, gnatlbr): Depend on CONFIG_H and prefix.o.
1812 2001-11-25 Laurent Guerby <guerby@acm.org>
1814 * sysdep.c (rts_get_*): Fix style.
1816 2001-11-19 Laurent Guerby <guerby@acm.org>
1818 * Makefile.in (INCLUDES_FOR_SUBDIR): Remove redundant system include
1819 since it is of no apparent use and cause warnings.
1821 2001-11-18 Neil Booth <neil@daikokuya.demon.co.uk>
1823 * misc.c (gnat_decode_option, gnat_init_options): Make definitions
1825 (gnat_init): Don't return NULL.
1826 (finish_parse): Remove.
1828 2001-11-17 Laurent Guerby <guerby@acm.org>
1830 * Make-lang.in (GNATLIBFLAGS): Add -W -Wall.
1831 * gigi.h (init_decl_processing): Rename to gnat_init_decl_processing.
1832 * io-aux.c: Provide K&R prototypes to all functions, reformat code.
1833 * lang-spec.h: Add missing struct field to silence warnings.
1834 * sysdep.c (rts_get_*): Provide K&R prototype.
1835 * sysdep.c (Unlock_Task, Lock_Task): Move to K&R prototype.
1836 * traceback.c (Unlock_Task, Lock_Task): Likewise.
1837 * tracebak.c (__gnat_backtrace): Remove unused variable.
1838 * utils.c (end_subprog_body): Move to K&R style.
1840 Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1842 * trans.c, utils2.c: Remove PALIGN parameter to get_inner_reference.
1844 2001-11-15 Neil Booth <neil@daikokuya.demon.co.uk>
1846 * misc.c (gnat_init): Change prototype. Include the
1847 functionality of the old init_parse and init_decl_processing.
1848 (gnat_init_decl_processing): New prototype.
1849 (init_parse): Remove.
1850 * utils.c (init_decl_processing): Rename gnat_init_decl_processing.
1852 2001-11-09 Neil Booth <neil@daikokuya.demon.co.uk>
1854 * misc.c (gnat_print_decl, gnat_print_type): Renamed.
1855 (LANG_HOOKS_PRINT_DECL, LANG_HOOKS_PRINT_TYPE): Override.
1856 (print_lang_statistics, lang_print_xnode, print_lang_identifier,
1857 set_yydebug): Remove.
1859 2001-11-09 Neil Booth <neil@daikokuya.demon.co.uk>
1861 * misc.c (LANG_HOOKS_NAME, LANG_HOOKS_IDENTIFIER_SIZE): Override.
1862 (struct lang_hooks): Constify.
1863 (language_string, lang_identify): Remove.
1864 * utils.c (init_decl_processing): Update.
1866 2001-11-06 Neil Booth <neil@cat.daikokuya.demon.co.uk>
1868 * misc.c: Include langhooks-def.h.
1869 * Makefile.in: Update.
1871 2001-10-30 Robert Dewar <dewar@gnat.com>
1874 (Check_Identifier): Rewrite circuit to be compatible with use of letters
1875 in the upper half of ASCII.
1876 (Check_Identifier): Minor reformatting
1878 2001-10-30 Geert Bosch <bosch@gnat.com>
1880 * (Associated_Node, Set_Associated_Node): Do not check for
1883 2001-10-30 Robert Dewar <dewar@gnat.com>
1885 * a-reatim.ads: Minor reformatting
1887 2001-10-30 Robert Dewar <dewar@gnat.com>
1889 * gnatdll.adb: Minor reformatting throughout. Many ??? added for
1890 undocumented declarations.
1892 2001-10-30 Pascal Obry <obry@gnat.com>
1894 * gnatdll.adb (Parse_Command_Line): handle -g option to be passed
1895 to the binder and linker.
1898 * mdll.ads: Fix layout. Update copyright notice.
1900 * mdll.adb: Fix layout. Update copyright notice.
1902 2001-10-30 Robert Dewar <dewar@gnat.com>
1904 * usage.adb: Minor fix to output for -gnaty.
1906 2001-10-30 Ed Schonberg <schonber@gnat.com>
1908 * a-reatim.ads: Makes Seconds_Count into a 64-bit integer,
1909 to accommodate all its possible values.
1911 * a-reatim.adb (Split): Special-case handling of Time_Span_First
1912 and of small absolute values of T.
1914 2001-10-30 Richard Kenner <kenner@gnat.com>
1916 * misc.c (gnat_expand_expr, case NULL_EXPR): Remove call to
1917 set_mem_attributes since not needed and wrong if RESULT if a REG;
1918 fixes ACATS failures.
1920 2001-10-30 Geert Bosch <bosch@gnat.com>
1922 * 86numaux.adb, a-tigeau.ads, a-wtgeau.ads, fname-sf.ads, g-traceb.ads,
1923 s-tasdeb.ads, sem_maps.ads: Add 2001 to copyright notice.
1925 2001-10-30 Robert Dewar <dewar@gnat.com>
1927 * bindusg.adb: Undocument -f switch.
1929 * gnatcmd.adb: Remove /FULL_ELABORATION.
1931 * opt.ads (Force_RM_Elaboration_Order): Document that this is
1934 * gnatbind.adb: Output new warning for use of obsolescent -f switch.
1936 * gnatbind.adb: Minor update of warning msg.
1938 2001-10-30 Vincent Celier <celier@gnat.com>
1940 * gnatcmd.adb (MAKE, BIND, LINK, LIST, FIND, XREF): Add translations
1941 for project file switches (-P (/PROJECT_FILE=),
1942 -X (/EXTERNAL_REFERENCE=) and -vPx (/PROJECT_FILE_VERBOSITY=DEFAULT
1945 2001-10-30 Geert Bosch <bosch@gnat.com>
1947 * decl.c: Minor whitespace fixes.
1949 2001-10-30 Richard Kenner <kenner@gnat.com>
1951 * utils2.c (build_allocator): Test for SIZE overflow in array case too
1953 2001-10-30 Geert Bosch <bosch@gnat.com>
1955 * ali-util.adb (Initialize_Checksum): Use out-mode instead of in out.
1956 Found due to GCC 3.0 warning of using uninitialized value.
1959 (Get_Max_Size): Use variant record for tracking value/expression.
1960 Makes logic clearer and prevents warnings for uninitialized variables.
1961 (Layout_Array_Type): Use variant record for tracking value/expression.
1962 Makes logic clearer and prevents warnings for uninitialized variables.
1964 2001-10-30 Robert Dewar <dewar@gnat.com>
1966 * lib.adb: Minor reformatting
1968 * s-taprop.ads: Minor reformatting
1970 2001-10-29 Laurent Guerby <guerby@acm.org>
1973 (Raise_From_Signal_Handler, Propagate_Signal_Exception): Make arg
1975 (_gnat_error_handler): Make MSG const.
1977 2001-10-29 Richard Kenner <kenner@gnat.com>
1979 * sysdep.c: Fix localtime_r problem on LynxOS.
1980 Also remove #elif to avoid warnings.
1982 * misc.c (yyparse): Don't set up and register jmpbuf; remove decls
1985 * decl.c (annotate_value): Make SIZE unsigned to avoid warning.
1987 2001-10-28 Joseph S. Myers <jsm28@cam.ac.uk>
1989 * 86numaux.adb, a-tigeau.ads, a-wtgeau.ads, decl.c, exp_ch6.adb,
1990 exp_ch9.adb, exp_util.adb, fname-sf.ads, freeze.ads, g-awk.adb,
1991 g-comlin.ads, g-dirope.adb, g-dyntab.ads, g-socket.ads,
1992 g-table.ads, g-traceb.ads, gnat-style.texi, gnatchop.adb, init.c,
1993 layout.adb, layout.ads, mdllfile.ads, mlib-fil.ads, osint.ads,
1994 s-fatgen.adb, s-imgrea.adb, s-taprop.ads, s-tasdeb.ads,
1995 sem_aggr.adb, sem_attr.adb, sem_case.ads, sem_ch13.adb,
1996 sem_ch3.adb, sem_elab.adb, sem_maps.ads, sem_res.adb,
1997 sem_util.ads, sinfo.ads, sinput.ads, table.adb, table.ads,
1998 types.ads, urealp.adb: Fix spelling errors.
2000 2001-10-27 Laurent Guerby <guerby@acm.org>
2002 * trans.c (gigi): Fix non determinism leading to bootstrap
2003 comparison failures for debugging information.
2005 2001-10-26 Florian Weimer <fw@deneb.enyo.de>
2007 * gnat_rm.texi: Use @./@: where appropriate.
2009 2001-10-26 Robert Dewar <dewar@gnat.com>
2011 * sinfo.adb: Define Associated_Node to overlap Entity field. Cleanup.
2013 2001-10-26 Richard Kenner <kenner@gnat.com>
2015 * gmem.c (__gnat_gmem_read_next): Properly check for EOF
2017 2001-10-26 Richard Kenner <kenner@gnat.com>
2019 * decl.c (validate_size): Modify message for bad size to avoid
2020 implication that compiler is modifying the size.
2022 2001-10-26 Robert Dewar <dewar@gnat.com>
2024 * prj-util.adb: Minor reformatting. Fix bad header format.
2026 2001-10-26 Robert Dewar <dewar@gnat.com>
2028 * sinfo.ads: Define Associated_Node to overlap Entity field. Cleanup.
2030 * sinfo.ads: Clarify use of Associated_Node (documentation only).
2032 * sem_ch12.adb: Change Node4 to Associated_Node. Change
2033 Associated_Node to Get_Associated_Node. Put use of Unchecked_Access
2034 much more narrowly in places where needed. These are cleanups.
2036 2001-10-26 Joel Brobecker <brobecke@gnat.com>
2038 * 5zosinte.ads (null_pthread): new constant.
2041 (Initialize_TCB): Initialize thread ID to null, to be able to verify
2042 later that this field has been set.
2043 (Finalize_TCB): ditto.
2044 (Suspend_Task): Verify that the thread ID is not null before using it.
2045 (Resume_Task): ditto.
2048 (Resume_All_Tasks): Lock the tasks list before using it.
2049 (Suspend_All_Tasks): ditto.
2051 2001-10-26 Richard Kenner <kenner@gnat.com>
2053 * decl.c (gnat_to_gnu_entity, case E_General_Access_Type):
2054 Make constant variant of designated type for Is_Access_Constant.
2055 Call update_pointer_to with main variant.
2057 * trans.c (process_freeze_entity, process_type):
2058 Call update_pointer_to on main variant.
2060 * utils.c (update_pointer_to): Make corresponding variant for NEW_TYPE.
2061 If main variant, update all other variants.
2063 * utils2.c (build_unary_op, case INDIRECT_REF): No longer set
2066 2001-10-26 Robert Dewar <dewar@gnat.com>
2068 * prj-util.adb: Minor reformatting
2070 2001-10-26 Robert Dewar <dewar@gnat.com>
2072 * prj-util.adb: Minor reformatting
2074 2001-10-26 Robert Dewar <dewar@gnat.com>
2076 * prj-attr.adb: Minor reformatting throughout
2078 2001-10-26 Robert Dewar <dewar@gnat.com>
2080 * prj-attr.ads: Minor reformatting
2081 Add ??? comment (this whole spec has almost no comments)
2083 2001-10-26 Vincent Celier <celier@gnat.com>
2085 * g-os_lib.adb (Normalize_Pathname): Preserve the double slash
2086 ("//") that precede the drive letter on Interix.
2088 2001-10-26 Geert Bosch <bosch@gnat.com>
2090 * gnat_rm.texi: Add GNAT Reference Manual.
2092 2001-10-25 Robert Dewar <dewar@gnat.com>
2094 * sem_ch8.adb (Analyze_Package_Renaming): Skip analysis if Name
2095 is Error. Similar change for other renaming cases.
2097 2001-10-25 Robert Dewar <dewar@gnat.com>
2099 * s-atacco.ads: Add pragma Inline_Always for functions.
2100 Fix header format. Add copyright 2001
2102 2001-10-25 Ed Schonberg <schonber@gnat.com>
2104 * par-ch3.adb (P_Subtype_Mark_Resync): for an anonymous array
2105 return Error rather than Empty so that analysis can proceed.
2107 2001-10-25 Ed Schonberg <schonber@gnat.com>
2109 * sem_util.adb (Enter_Name): better handling of cascaded error
2110 messages when a unit appears in its own context.
2112 2001-10-25 Ed Schonberg <schonber@gnat.com>
2114 * sem_util.adb (Defining_Entity): in case of error, attach created
2115 entity to specification, so that semantic analysis can proceed.
2117 2001-10-25 Robert Dewar <dewar@gnat.com>
2120 (Defining_Entity): Deal with Error.
2121 (Process_End_Label): Deal with bad end label for.
2123 2001-10-25 Ed Schonberg <schonber@gnat.com>
2125 * sem_elab.adb (Check_A_Call): refine message when call is in an
2126 instance but callee is not declared in the generic unit.
2128 2001-10-25 Ed Schonberg <schonber@gnat.com>
2130 * sem_elab.adb (Check_A_Call): check for renaming before finding the
2131 enclosing unit, which may already be different from the calling unit.
2133 2001-10-25 Geert Bosch <bosch@gnat.com>
2135 * 4gintnam.ads: fix header format.
2137 2001-10-25 Ed Schonberg <schonber@gnat.com>
2139 * sem_res.adb (Resolve_Call): if the call is actually an indexing
2140 operation on the result of a parameterless call, perform elaboration
2141 check after the node has been properly rewritten.
2143 * sem_ch12.adb (Copy_Generic_Node): after the proper body has been
2144 inlined within the generic tree, the defining identifier is not a
2147 2001-10-25 Ed Schonberg <schonber@gnat.com>
2149 * sem_res.adb (Resolve): special-case resolution of Null in an
2150 instance or an inlined body to avoid view conflicts.
2152 * sem_ch12.adb (Copy_Generic_Node): for allocators, check for view
2153 compatibility by retrieving the access type of the generic copy.
2155 2001-10-25 Robert Dewar <dewar@gnat.com>
2158 (Analyze_Number_Declaration): Handle error expression.
2159 (Signed_Integer_Type_Declaration): Handle error bound.
2160 (Analyze_Subtype_Indication): Handle error range.
2162 * sem_util.adb (Get_Index_Bounds): Check for Error.
2164 2001-10-25 Robert Dewar <dewar@gnat.com>
2166 * restrict.adb (Set_No_Run_Time_Mode): Set Discard_Names as default
2167 in no run time mode.
2169 2001-10-25 Pascal Obry <obry@gnat.com>
2171 * gnatmem.adb (Read_Next): fix Curs2 value to properly handle quiet
2172 mode case for ALLOC case.
2174 * gnatmem.adb (Read_Next): correctly fix parsing in Quiet mode on
2175 all platforms. Improvement of last change.
2177 2001-10-25 Robert Dewar <dewar@gnat.com>
2179 * exp_ch4.adb (Expand_N_Allocator): Minor reformatting.
2181 2001-10-25 Geert Bosch <bosch@gnat.com>
2183 * osint.adb (Is_Relative): Remove duplicate.
2185 2001-10-25 Pascal Obry <obry@gnat.com>
2187 * osint.adb (Read_Default_Search_Dirs): correctly detect relative
2188 pathnames in UNIX and DOS style with drive letter.
2189 (Is_Relative): new routine.
2191 * osint.adb: Minor reformatting
2193 * osint.adb (Is_Relative): implementation using
2194 GNAT.OS_Lib.Is_Absolute_Path. Better fix.
2196 2001-10-25 Pascal Obry <obry@gnat.com>
2198 * g-dirope.adb (Basename): correctly compute offset between the
2199 original Path and the translated one.
2201 * g-dirope.adb: (Base_Name): add some comments.
2203 2001-10-25 Robert Dewar <dewar@gnat.com>
2205 * exp_imgv.adb (Expand_Image_Attribute): Defend against bad use
2206 in HIE mode, avoids compilation abandoned message
2208 * exp_imgv.adb: Correct typo in previous change
2210 * exp_imgv.adb: Correct typo in previous change (not my day!)
2212 2001-10-25 Robert Dewar <dewar@gnat.com>
2214 * s-tpinop.ads: Add 2001 to copyright notice. Fix header format.
2216 2001-10-25 Pascal Obry <obry@gnat.com>
2218 * g-awk.ads: Move all pragma inlines next to the routine
2219 declarations. This is more uniform with other GNAT spec.
2221 2001-10-22 Geert Bosch <bosch@gnat.com>
2223 * Make-lang.in (gnattools, cross-gnattools): Remove gnatmem.
2225 2001-10-19 Geert Bosch <bosch@gnat.com>
2227 * Makefile.in (tools, gnattools): Remove gnatmem.
2229 2001-10-17 Richard Henderson <rth@redhat.com>
2231 * Makefile.in (misc.o): Depend on langhooks.h.
2232 * misc.c: Include it.
2233 (LANG_HOOKS_INIT, LANG_HOOKS_INIT_OPTIONS): New.
2234 (LANG_HOOKS_DECODE_OPTION): New.
2235 (lang_hooks): Use LANG_HOOKS_INITIALIZER.
2237 2001-10-16 Florian Weimer <fw@deneb.enyo.de>
2239 * trans.c (tree_transform): Adjust to recent change in
2240 expand_asm_operands to implement named asm operands.
2242 2001-10-11 Ed Schonberg <schonber@gnat.com>
2244 * exp_ch8.adb (Expand_N_Object_Renaming_Declaration): Bugfix in
2245 renaming of discriminant for mutable record type.
2247 2001-10-11 Robert Dewar <dewar@gnat.com>
2249 * validsw.adb: Properly save -gnatVn status.
2251 2001-10-11 Robert Dewar <dewar@gnat.com>
2253 * usage.adb: Add lines for V switch.
2255 * gnatcmd.adb (COMPILE): Revise translations for -gnatV
2256 (/VALIDITY_CHECKING).
2258 2001-10-11 Ed Schonberg <schonber@gnat.com>
2260 * sem_type.adb (Add_One_Interp): an operator for a type declared in
2261 an extension of System is known to be visible.
2263 2001-10-11 Ed Schonberg <schonber@gnat.com>
2265 * sem_eval.adb (Compare_Fixup): get the bounds of a String_Literal
2266 properly. Fixes regression on ACATS C34005G.
2268 2001-10-11 Robert Dewar <dewar@gnat.com>
2270 * sem_ch5.adb (Analyze_Iteration_Scheme): Suppress warning on null
2271 loop in generic instance, since this is likely not very useful.
2273 2001-10-11 Robert Dewar <dewar@gnat.com>
2275 * restrict.adb (Disallow in No_Run_Time_Mode): Properly specialize
2276 the error message for high integrity mode.
2278 * rtsfind.adb (RTE): Give message if we try to find an entity that
2279 is not available in high integrity mode.
2282 (OK_To_Use_In_HIE_Mode): New array.
2283 (RTE): May return Empty in high integrity mode.
2285 * rtsfind.ads (OK_To_Use_In_No_Run_Time_Mode): New name for
2286 OK_To_Use_In_HIE_Mode, now includes System_FAT_xxx.
2288 * sem_ch6.adb (Analyze_Subprogram_Body): Kill body in predefined
2289 unit if not inlined always and in no runtime mode. Fixes problem
2290 caused by new Rtsfind changes.
2292 * sem_ch6.adb (Analyze_Subrogram_Body): Do not Check_References if
2295 * rtsfind.adb (RTE): Make sure we do not try to load unit after
2296 giving message for entity not available in high integrity mode.
2298 2001-10-11 Pascal Obry <obry@gnat.com>
2300 * impunit.adb: Add GNAT.CRC32.
2302 2001-10-11 Ed Schonberg <schonber@gnat.com>
2304 * exp_fixd.adb (Expand_Multiply_Fixed_By_Fixed_Giving_Fixed): handle
2305 properly the case where one universal operand in a non-static
2306 exponentiation of a real literal.
2308 2001-10-11 Ed Schonberg <schonber@gnat.com>
2310 * exp_ch7.adb (Find_Final_List): for a type appearing in a with_type
2311 clause, return the gobal finalization list, for lack of anthing else.
2313 2001-10-11 Ed Schonberg <schonber@gnat.com>
2315 * exp_ch7.adb (Make_Transient_Block): if statement is within
2316 exception handler, always use new transient scope to place Clean
2319 2001-10-11 Pascal Obry <obry@gnat.com>
2322 (GNAT_ADA_OBJS): add g-crc32.o, a-tags.o, a-stream.o
2323 (GNATBIND_OBJS): add g-crc32.o, a-tags.o, a-stream.o
2324 (GNATLS_RTL_OBJS): add g-crc32.o
2325 (GNATMAKE_RTL_OBJS): add g-crc32.o
2328 (CRC_Match): new function.
2329 (Get_File_Checksum): renamed Get_File_CRC. Use the GNAT.CRC32 unit
2330 instead of the previous simple checksum algorithm.
2331 (Time_Stamp_Mismatch): use CRC_Match for comparison.
2332 (Set_Source_Table): idem.
2335 (Get_File_Checksum): renamed Get_File_CRC as now we compute CRC
2336 instead of simple checksum.
2337 (CRC_Match): new function.
2338 (CRC_Error): new constant.
2340 * ali.adb (Scan_ALI): rename variable Chk to CRC as we are handling
2341 a CRC now and not a simple checksum. A CRC uses lower-case hex
2342 letters, fixes ambiguity in parsing.
2344 * ali.ads (Sdep_Record.Checksum): renamed Sdep_Record.CRC as this
2345 is what this variable will store.
2347 * bcheck.adb: Change reference to chechsum in comments by CRC.
2348 (Check_Consistency): Rename Get_File_Checksum to Get_File_CRC.
2349 rename All_Checksum_Match to All_CRC_Match. Change due to API
2350 renaming since now GNAT does not use a simple checksum but a
2351 CRC using GNAT.CRC32.
2353 * gnatls.adb: Rename Checksum to CRC in many places, we use a CRC
2354 now and not anymore a simple checksum.
2356 * lib-load.adb: Use Source_CRC instead of Source_Checksum in many
2359 * lib-writ.adb (Write_ALI): Use Source_CRC instead of Source_Checksum.
2362 (Restore_Scan_State): rename Checksum to CRC.
2363 (Save_Scan_State): idem.
2367 (Checksum): rename to CRC.
2368 (Saved_Scan_State): Save_Checksum field renamed to Save_CRC
2370 * scn-nlit.adb: Rename many Accumulate_Checksum to Update (from
2371 GNAT.CRC32). Update copyright notice.
2373 * scn-slit.adb: Rename many Accumulate_Checksum to Update (from
2374 GNAT.CRC32). Update copyright notice.
2377 (Accumulate_Checksum): removed.
2378 (Update): new procedure. Add a wide-character into the CRC.
2381 (Complete_Source_File_Entry): use CRC32 instead of simple checksum.
2382 (Load_File): fix initialization of S (change Source_Checksum to
2385 * sinput-p.adb (Load_Project_File): rename Source_Checksum to
2386 Source_CRC in S initialization.
2388 * sinput.adb (Source_Checksum): renamed to Source_CRC.
2390 * sinput.ads (Source_Checksum): renamed to Source_CRC.
2391 Update comments for the CRC.
2393 * types.adb (Hex): Use lowercase for the letter part.
2395 * types.ads (Get_Hex_String): Returns the hexadecimal representation
2396 for a word. This is currently used only for CRC. In previous version,
2397 the checksum was using a representation with all letter being
2398 upper-case. With the new implementation (using CRC) we do not remove
2399 the 32th bit of the CRC, so we can have an upper-case starting letter
2400 in the CRC. This is not possible to parse in Scan_ALI (ali.adb).
2401 It is ambigous since the CRC was optional and could be followed by
2402 options like EB, EE. So now this routines uses lower-case letter for
2403 the hexadecimal representation. Strange enough only lower case letters
2404 where checked in Scan_ALI (even if this was not a possible case).
2406 * gnatvsn.ads (Library_Version): changed to 3.15a.
2408 * s-crc32.ads: Initial version from GNAT.CRC32. This is the version
2411 * s-crc32.adb: Initial version from GNAT.CRC32. This is the version
2414 * ali-util.adb: Redo previous change to avoid using word CRC everywhere
2415 Add 2001 to copyright notice
2416 (Accumulate_Checksum): Modify to use System.CRC32.
2418 * ali-util.ads: Redo changes of previous revision to continue to use
2419 the word Checksum. Add 2001 to copyright notice.
2421 * ali.adb: Undo some of previous changes, not needed.
2422 Keep the change for lower case letters in the checksum.
2424 * ali.ads: Undo previous change not needed.
2426 * bcheck.adb: Undo most of previous change, not needed.
2427 But do use Checksums_Match for checksum comparison.
2429 * gnatls.adb: Undo most of previous change, not needed.
2430 But do use Checksums_Match for comparing checksums.
2432 * lib-load.adb: Undo previous change, not needed.
2434 * lib-writ.adb: Undo previous change, not needed.
2436 * lib-writ.ads: Document that checksums use lower case,
2437 not upper case letters.
2439 * scans.adb: Undo previous change, not needed
2441 * scans.ads: Undo previous change, not needed.
2443 * scn-nlit.adb: Undo previous changes, not needed.
2445 * scn-slit.adb: Undo previous change, not needed. Fix header format.
2448 (Accumulate_Checksum): Use System.CRC32.
2449 (Initialize_Checksum): New procedure.
2450 Remove other changes of previous revision.
2452 * sinput-p.adb: Undo previous change, not needed.
2454 * sinput.adb: Undo previous change, not needed.
2456 * sinput-l.adb: Undo previous change, not needed.
2458 * sinput.ads: Undo previous change, not needed. Keep only comment
2459 on new checksum algorithm
2461 * Makefile.in: Add s-crc32 as needed, remove g-crc32.
2462 Also remove a-tags and a-stream from GNAT sources.
2464 * ali.adb (Scan_ALI): fix typo introduce in latest check-in.
2466 * Makefile.in (GNATRTL_NONTASKING_OBJS): Add g-crc32.o.
2468 2001-10-11 Geert Bosch <bosch@gnat.com>
2470 * einfo.h: Regenerate.
2472 * nmake.ads: Regenerate.
2474 * nmake.adb: Regenerate.
2476 * sinfo.h: Regenerate.
2478 * treeprs.adb: Regenerate.
2480 2001-10-10 Geert Bosch <bosch@gnat.com>
2482 * gnat-style.texi: New file describing coding guidelines for Ada.
2484 2001-10-10 Ed Schonberg <schonber@gnat.com>
2486 * einfo.adb (Write_Entity_Flags): Elaboration_Entity_Required
2489 2001-10-10 Geert Bosch <bosch@gnat.com>
2491 * snames.ads: Add new names for project facility.
2493 * snames.adb: Update to reflect snames.ads changes.
2495 * snames.h: Update to reflect snames.ads changes.
2497 2001-10-10 Vincent Celier <celier@gnat.com>
2500 (Add_Switches): reflect the changes for the switches attributes
2501 Default_Switches indexed by the programming language,
2502 Switches indexed by the file name.
2503 (Collect_Arguments_And_Compile): Idem.
2504 Reflect the attribute name changes.
2507 (Initialisation_Data): Change the names of some packages and
2509 (Initialize): process case insensitive associative arrays.
2512 (Attribute_Kind): Remove Both, add Case_Insensitive_Associative_Array.
2515 (Parse_Attribute_Declaration): For case insensitive associative
2516 arrays, set the index string to lower case.
2519 Reflect the changes of the project attributes.
2522 Replace Check_Naming_Scheme by Ada_Check and
2523 Language_Independent_Check.
2526 Replaced Check_Naming_Scheme by 2 procedures:
2527 Ada_Check and Language_Independent_Check.
2530 (Process_Declarative_Items): For case-insensitive associative
2531 arrays, set the index string to lower case.
2532 (Recursive_Check): Call Prj.Nmsc.Ada_Check, instead of
2533 Prj.Nmsc.Check_Naming_Scheme.
2536 (Case_Insensitive): New function
2537 (Set_Case_Insensitive): New procedure
2540 (Case_Insensitive): New function
2541 (Set_Case_Insensitive): New procedure
2542 (Project_Node_Record): New flag Case_Insensitive.
2545 (Value_Of): new function to get the string value of a single
2546 string variable or attribute.
2549 (Value_Of): new function to get the string value of a single
2550 string variable or attribute.
2553 (Ada_Default_Spec_Suffix): New function
2554 (Ada_Default_Impl_Suffix): New function
2555 Change definitions of several constants to reflect
2556 new components of record types.
2559 (Naming_Data): Change several components to reflect new
2560 elements of naming schemes.
2561 (Project_Data): New flags Sources_Present and
2562 Language_Independent_Checked.
2563 (Ada_Default_Spec_Suffix): New function.
2564 (Ada_Default_Impl_Suffix): New function.
2567 Modification of predefined names for project manager: added
2568 Implementation, Specification_Exceptions, Implementation_Exceptions,
2569 Specification_Suffix, Implementation_Suffix, Separate_Suffix,
2570 Default_Switches, _Languages, Builder, Cross_Reference,
2571 Finder. Removed Body_Part, Specification_Append, Body_Append,
2572 Separate_Append, Gnatmake, Gnatxref, Gnatfind, Gnatbind,
2575 * prj.ads: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
2578 * prj-nmsc.adb (Ada_Check): Test that Separate_Suffix is defaulted,
2579 not that it is Nil_Variable_Value.
2581 * prj.ads: Add ??? for uncommented declarations
2583 2001-10-10 Ed Schonberg <schonber@gnat.com>
2585 * sem_prag.adb: (Analyze_Pragma, case External): If entity is a
2586 constant, do not indicate possible modification, so that gigi can
2587 treat it as a bona fide constant.
2589 2001-10-10 Robert Dewar <dewar@gnat.com>
2591 * sem_prag.adb: Add processing for pragma External.
2593 * snames.ads: Add entry for pragma External.
2595 * par-prag.adb: Add pragma External.
2597 * snames.adb: Updated to match snames.ads.
2599 2001-10-10 Ed Schonberg <schonber@gnat.com>
2601 * exp_ch4.adb (Expand_N_Allocator): Generate meaningful names for
2602 a dynamic task if the allocator appears in an indexed assignment
2603 or selected component assignment.
2605 * exp_util.adb (Build_Task_Array_Image, Build_Task_Record_Image):
2606 For a dynamic task in an assignment statement, use target of
2607 assignment to generate meaningful name.
2609 2001-10-10 Ed Schonberg <schonber@gnat.com>
2611 * einfo.adb (Write_Field19_Name): Body_Entity is also defined for
2614 * einfo.ads: Body_Entity is also defined for generic package.
2615 Documentation change only
2617 * exp_aggr.adb (Build_Array_Aggr_Code): When expanding an
2618 others_choice for a discriminated component initialization,
2619 convert discriminant references into the corresponding discriminals.
2621 * exp_ch3.adb (Get_Simple_Init_Val): Add qualification to aggregate
2622 only if original type is private and expression has to be wrapped
2626 (Apply_Constraint_Check): Do not perform length check
2627 if expression is an aggregate with only an others_choice.
2628 (Length_N_Cond): two references to the same in_parameter
2629 (typically the discriminal in an init_proc) denote the same value.
2630 Two useful optimization uncovered by bugfixes above.
2632 2001-10-10 Robert Dewar <dewar@gnat.com>
2634 * xeinfo.adb: Change int to char in translation of enumeration types.
2635 This fixes a problem in the C representation of component alignment.
2636 Add 2001 to copyright notice
2638 2001-10-10 Richard Kenner <kenner@gnat.com>
2640 * decl.c: (validate_size): Do check size of object of integral type
2641 if it is a packed array type.
2643 2001-10-10 Richard Kenner <kenner@gnat.com>
2645 * decl.c: (gnat_to_gnu_entity, case object): Also materialize
2646 VAR_DECL for constant if not Is_Public but -O0.
2648 2001-10-10 Richard Kenner <kenner@gnat.com>
2650 * misc.c (struct lang_hooks): Add new initializer to match GCC change.
2652 2001-10-10 Geert Bosch <bosch@gnat.com>
2654 * xnmake.adb (XNmake): Fix handling of -s/-b options. No longer
2655 use '/' as switch character, allowing for absolute file names.
2657 2001-10-09 Joseph S. Myers <jsm28@cam.ac.uk>
2659 * 4gintnam.ads, Make-lang.in, Makefile.in, config-lang.in: Update
2662 2001-10-08 Geert Bosch <bosch@gnat.com>
2664 * Makefile.in (treeprs.ads, einfo.h, sinfo.h, nmake.adb, nmake.ads):
2665 Automatically build utilities when files need to be regenerated.
2667 2001-10-08 Geert Bosch <bosch@gnat.com>
2669 * xsnames.adb: New utility for updating snames.ads and snames.adb
2671 2001-10-08 Zack Weinberg <zack@codesourcery.com>
2673 * Make-lang.in (ADAFLAGS): Add -W -Wall.
2674 (ADA_FLAGS_TO_PASS): Set ADA_CFLAGS=$(CFLAGS) also.
2675 (gnat1): Also depend on attribs.o.
2676 (gnatlib, gnatlib-shared): Set CC and ADAC in recursive make.
2677 * Makefile.in (X_ADAFLAGS, T_ADAFLAGS): New.
2678 (ADAC): Set to @ADAC@ in stage1, $(CC) later.
2679 (ADAFLAGS): Add -W -Wall.
2680 (ALL_ADAFLAGS, MOST_ADAFLAGS): Add X_ADAFLAGS and T_ADAFLAGS;
2683 (.adb.o, .ads.o, a-numaux.o, a-teioed.o, s-interr.o,
2684 s-taskin.o, sdefault.o, s-tasdeb.o, s-vaflop.o, a-except.o,
2685 s-assert.o, s-stalib.o, s-memory.o, memtrack.o, mlib-tgt.o):
2686 Use $(ADAC), not $(CC), as compilation command.
2688 (gnattools): Depend directly on tools to build, don't use
2690 (gnatlib): Set ADA_CFLAGS=$(GNATLIBCFLAGS) in recursive make.
2692 * einfo.h, sinfo.h: New files (autogenerated).
2694 2001-10-08 Richard Henderson <rth@redhat.com>
2696 * comperr.adb (Abort_In_Progress): New.
2697 (Compiler_Abort): Use it to prevent recursion.
2699 2001-10-08 Robert Dewar <dewar@gnat.com>
2701 * atree.adb: Set Error_Posted in Error node, helps error recovery.
2703 * par-endh.adb (Output_End_Expected): We should also not test
2704 Error_Posted on the Error node, since now it is always set.
2706 * cstand.adb (Create_Standard): Set Etype of Error to Any_Type
2707 to help error recovery. Part of general work on 9407-004.
2709 * par.adb: Add ??? for misuse of error
2712 (Resolve): Defend against Error, fixes 9407-003.
2713 (Resolve_Discrete_Subtype_Indication): Defend against Error.
2715 * sinfo.ads (N_Error): Now has Etype field (which will be set
2716 to Any_Type to help error recovery).
2718 2001-10-08 Richard Kenner (kenner@gnat.com)
2720 * misc.c (gnat_expand_expr, case UNCHECKED_CONVERT_EXPR):
2721 Consistently set MEM attributes from expression; fixes
2722 bootstrap failure on x86.
2724 2001-10-08 Geert Bosch (bosch@gnat.com)
2726 * 5oosinte.adb: Add 2001 to copyright notice.
2728 2001-10-08 Geert Bosch (bosch@gnat.com)
2730 * ceinfo.adb: Add utility for consistency checking of einfo.ad[bs].
2732 * csinfo.adb: Add utility for consistency checking of sinfo.ad[bs].
2734 2001-10-07 Joseph S. Myers <jsm28@cam.ac.uk>
2736 * 5oosinte.adb: Fix spelling error of "separate" as "seperate".
2738 2001-10-05 Geert Bosch (bosch@gnat.com)
2740 * adaint.h: Small formatting fix.
2742 2001-10-04 Geert Bosch <bosch@gnat.com>
2744 * sysdep.c (__gnat_set_binary_mode, __gnat_set_text_mode):
2745 Arg is int, not FILE *, in dummy version of functions.
2747 * adaint.h (__gnat_set_binary_mode, __gnat_set_text_mode):
2748 Arg is int, not FILE *.
2750 2001-10-04 Geert Bosch <bosch@gnat.com>
2752 * 3lsoccon.ads: Added file, missed with initial check ins.
2754 * 4lintnam.ads: Fix header format.
2755 Change Linux to GNU/Linux.
2757 * 5iosinte.adb: Change Linux to GNU/Linux.
2759 * 5iosinte.ads: Change Linux to GNU/Linux.
2761 * 5itaprop.adb: Change Linux to GNU/Linux.
2763 * 5itaspri.ads: Change Linux to GNU/Linux.
2764 Update copyright notice.
2766 * 5lintman.adb: Change Linux to GNU/Linux.
2768 * 5lml-tgt.adb: Change Linux to GNU/Linux.
2770 * 5losinte.ads: Change Linux to GNU/Linux.
2772 * 5lsystem.ads: Change Linux to GNU/Linux.
2774 * 5qosinte.adb: Change Linux to GNU/Linux.
2776 * 5qosinte.ads: Change Linux to GNU/Linux.
2778 * 5qparame.ads: Change Linux to GNU/Linux.
2780 * 5qtaprop.adb: Change Linux to GNU/Linux.
2782 * 5qtaspri.ads: Change Linux to GNU/Linux.
2783 Add 2001 to copyright notice.
2785 * 5vintman.ads: Change Linux to GNU/Linux.
2786 Fix header format. Add 2001 to copyright notice.
2788 * g-soccon.ads: Change Linux to GNU/Linux.
2790 * g-trasym.ads: Change Linux to GNU/Linux.
2791 Add 2001 to copyright notice.
2793 * memtrack.adb: Change Linux to GNU/Linux.
2795 * s-intman.ads: Change Linux to GNU/Linux.
2796 Add 2001 to copyright notice. Fix header format.
2798 * s-stache.adb: Change Linux to GNU/Linux.
2800 * adaint.c: Change Linux to GNU/Linux.
2802 * cio.c: Change Linux to GNU/Linux.
2804 * cstreams.c: Change Linux to GNU/Linux.
2806 * init.c: Change Linux to GNU/Linux.
2808 * gmem.c: Change Linux to GNU/Linux.
2810 * tracebak.c: Change Linux to GNU/Linux.
2813 2001-10-02 Geert Bosch <bosch@gnat.com>
2815 * misc.c (insert_default_attributes): Add dummy version.