1 2001-11-17 Laurent Guerby <guerby@acm.org>
3 * Make-lang.in (GNATLIBFLAGS): Add -W -Wall.
4 * gigi.h (init_decl_processing): Rename to gnat_init_decl_processing.
5 * io-aux.c: Provide K&R prototypes to all functions, reformat code.
6 * lang-spec.h: Add missing struct field to silence warnings.
7 * sysdep.c (rts_get_*): Provide K&R prototype.
8 * sysdep.c (Unlock_Task, Lock_Task): Move to K&R prototype.
9 * traceback.c (Unlock_Task, Lock_Task): Likewise.
10 * tracebak.c (__gnat_backtrace): Remove unused variable.
11 * utils.c (end_subprog_body): Move to K&R style.
13 Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
15 * trans.c, utils2.c: Remove PALIGN parameter to get_inner_reference.
17 2001-11-15 Neil Booth <neil@daikokuya.demon.co.uk>
19 * misc.c (gnat_init): Change prototype. Include the
20 functionality of the old init_parse and init_decl_processing.
21 (gnat_init_decl_processing): New prototype.
23 * utils.c (init_decl_processing): Rename gnat_init_decl_processing.
25 2001-11-09 Neil Booth <neil@daikokuya.demon.co.uk>
27 * misc.c (gnat_print_decl, gnat_print_type): Renamed.
28 (LANG_HOOKS_PRINT_DECL, LANG_HOOKS_PRINT_TYPE): Override.
29 (print_lang_statistics, lang_print_xnode, print_lang_identifier,
32 2001-11-09 Neil Booth <neil@daikokuya.demon.co.uk>
34 * misc.c (LANG_HOOKS_NAME, LANG_HOOKS_IDENTIFIER_SIZE): Override.
35 (struct lang_hooks): Constify.
36 (language_string, lang_identify): Remove.
37 * utils.c (init_decl_processing): Update.
39 2001-11-06 Neil Booth <neil@cat.daikokuya.demon.co.uk>
41 * misc.c: Include langhooks-def.h.
42 * Makefile.in: Update.
44 2001-10-30 Robert Dewar <dewar@gnat.com>
47 (Check_Identifier): Rewrite circuit to be compatible with use of letters
48 in the upper half of ASCII.
49 (Check_Identifier): Minor reformatting
51 2001-10-30 Geert Bosch <bosch@gnat.com>
53 * (Associated_Node, Set_Associated_Node): Do not check for
56 2001-10-30 Robert Dewar <dewar@gnat.com>
58 * a-reatim.ads: Minor reformatting
60 2001-10-30 Robert Dewar <dewar@gnat.com>
62 * gnatdll.adb: Minor reformatting throughout. Many ??? added for
63 undocumented declarations.
65 2001-10-30 Pascal Obry <obry@gnat.com>
67 * gnatdll.adb (Parse_Command_Line): handle -g option to be passed
68 to the binder and linker.
71 * mdll.ads: Fix layout. Update copyright notice.
73 * mdll.adb: Fix layout. Update copyright notice.
75 2001-10-30 Robert Dewar <dewar@gnat.com>
77 * usage.adb: Minor fix to output for -gnaty.
79 2001-10-30 Ed Schonberg <schonber@gnat.com>
81 * a-reatim.ads: Makes Seconds_Count into a 64-bit integer,
82 to accommodate all its possible values.
84 * a-reatim.adb (Split): Special-case handling of Time_Span_First
85 and of small absolute values of T.
87 2001-10-30 Richard Kenner <kenner@gnat.com>
89 * misc.c (gnat_expand_expr, case NULL_EXPR): Remove call to
90 set_mem_attributes since not needed and wrong if RESULT if a REG;
93 2001-10-30 Geert Bosch <bosch@gnat.com>
95 * 86numaux.adb, a-tigeau.ads, a-wtgeau.ads, fname-sf.ads, g-traceb.ads,
96 s-tasdeb.ads, sem_maps.ads: Add 2001 to copyright notice.
98 2001-10-30 Robert Dewar <dewar@gnat.com>
100 * bindusg.adb: Undocument -f switch.
102 * gnatcmd.adb: Remove /FULL_ELABORATION.
104 * opt.ads (Force_RM_Elaboration_Order): Document that this is
107 * gnatbind.adb: Output new warning for use of obsolescent -f switch.
109 * gnatbind.adb: Minor update of warning msg.
111 2001-10-30 Vincent Celier <celier@gnat.com>
113 * gnatcmd.adb (MAKE, BIND, LINK, LIST, FIND, XREF): Add translations
114 for project file switches (-P (/PROJECT_FILE=),
115 -X (/EXTERNAL_REFERENCE=) and -vPx (/PROJECT_FILE_VERBOSITY=DEFAULT
118 2001-10-30 Geert Bosch <bosch@gnat.com>
120 * decl.c: Minor whitespace fixes.
122 2001-10-30 Richard Kenner <kenner@gnat.com>
124 * utils2.c (build_allocator): Test for SIZE overflow in array case too
126 2001-10-30 Geert Bosch <bosch@gnat.com>
128 * ali-util.adb (Initialize_Checksum): Use out-mode instead of in out.
129 Found due to GCC 3.0 warning of using uninitialized value.
132 (Get_Max_Size): Use variant record for tracking value/expression.
133 Makes logic clearer and prevents warnings for uninitialized variables.
134 (Layout_Array_Type): Use variant record for tracking value/expression.
135 Makes logic clearer and prevents warnings for uninitialized variables.
137 2001-10-30 Robert Dewar <dewar@gnat.com>
139 * lib.adb: Minor reformatting
141 * s-taprop.ads: Minor reformatting
143 2001-10-29 Laurent Guerby <guerby@acm.org>
146 (Raise_From_Signal_Handler, Propagate_Signal_Exception): Make arg
148 (_gnat_error_handler): Make MSG const.
150 2001-10-29 Richard Kenner <kenner@gnat.com>
152 * sysdep.c: Fix localtime_r problem on LynxOS.
153 Also remove #elif to avoid warnings.
155 * misc.c (yyparse): Don't set up and register jmpbuf; remove decls
158 * decl.c (annotate_value): Make SIZE unsigned to avoid warning.
160 2001-10-28 Joseph S. Myers <jsm28@cam.ac.uk>
162 * 86numaux.adb, a-tigeau.ads, a-wtgeau.ads, decl.c, exp_ch6.adb,
163 exp_ch9.adb, exp_util.adb, fname-sf.ads, freeze.ads, g-awk.adb,
164 g-comlin.ads, g-dirope.adb, g-dyntab.ads, g-socket.ads,
165 g-table.ads, g-traceb.ads, gnat-style.texi, gnatchop.adb, init.c,
166 layout.adb, layout.ads, mdllfile.ads, mlib-fil.ads, osint.ads,
167 s-fatgen.adb, s-imgrea.adb, s-taprop.ads, s-tasdeb.ads,
168 sem_aggr.adb, sem_attr.adb, sem_case.ads, sem_ch13.adb,
169 sem_ch3.adb, sem_elab.adb, sem_maps.ads, sem_res.adb,
170 sem_util.ads, sinfo.ads, sinput.ads, table.adb, table.ads,
171 types.ads, urealp.adb: Fix spelling errors.
173 2001-10-27 Laurent Guerby <guerby@acm.org>
175 * trans.c (gigi): Fix non determinism leading to bootstrap
176 comparison failures for debugging information.
178 2001-10-26 Florian Weimer <fw@deneb.enyo.de>
180 * gnat_rm.texi: Use @./@: where appropriate.
182 2001-10-26 Robert Dewar <dewar@gnat.com>
184 * sinfo.adb: Define Associated_Node to overlap Entity field. Cleanup.
186 2001-10-26 Richard Kenner <kenner@gnat.com>
188 * gmem.c (__gnat_gmem_read_next): Properly check for EOF
190 2001-10-26 Richard Kenner <kenner@gnat.com>
192 * decl.c (validate_size): Modify message for bad size to avoid
193 implication that compiler is modifying the size.
195 2001-10-26 Robert Dewar <dewar@gnat.com>
197 * prj-util.adb: Minor reformatting. Fix bad header format.
199 2001-10-26 Robert Dewar <dewar@gnat.com>
201 * sinfo.ads: Define Associated_Node to overlap Entity field. Cleanup.
203 * sinfo.ads: Clarify use of Associated_Node (documentation only).
205 * sem_ch12.adb: Change Node4 to Associated_Node. Change
206 Associated_Node to Get_Associated_Node. Put use of Unchecked_Access
207 much more narrowly in places where needed. These are cleanups.
209 2001-10-26 Joel Brobecker <brobecke@gnat.com>
211 * 5zosinte.ads (null_pthread): new constant.
214 (Initialize_TCB): Initialize thread ID to null, to be able to verify
215 later that this field has been set.
216 (Finalize_TCB): ditto.
217 (Suspend_Task): Verify that the thread ID is not null before using it.
218 (Resume_Task): ditto.
221 (Resume_All_Tasks): Lock the tasks list before using it.
222 (Suspend_All_Tasks): ditto.
224 2001-10-26 Richard Kenner <kenner@gnat.com>
226 * decl.c (gnat_to_gnu_entity, case E_General_Access_Type):
227 Make constant variant of designated type for Is_Access_Constant.
228 Call update_pointer_to with main variant.
230 * trans.c (process_freeze_entity, process_type):
231 Call update_pointer_to on main variant.
233 * utils.c (update_pointer_to): Make corresponding variant for NEW_TYPE.
234 If main variant, update all other variants.
236 * utils2.c (build_unary_op, case INDIRECT_REF): No longer set
239 2001-10-26 Robert Dewar <dewar@gnat.com>
241 * prj-util.adb: Minor reformatting
243 2001-10-26 Robert Dewar <dewar@gnat.com>
245 * prj-util.adb: Minor reformatting
247 2001-10-26 Robert Dewar <dewar@gnat.com>
249 * prj-attr.adb: Minor reformatting throughout
251 2001-10-26 Robert Dewar <dewar@gnat.com>
253 * prj-attr.ads: Minor reformatting
254 Add ??? comment (this whole spec has almost no comments)
256 2001-10-26 Vincent Celier <celier@gnat.com>
258 * g-os_lib.adb (Normalize_Pathname): Preserve the double slash
259 ("//") that precede the drive letter on Interix.
261 2001-10-26 Geert Bosch <bosch@gnat.com>
263 * gnat_rm.texi: Add GNAT Reference Manual.
265 2001-10-25 Robert Dewar <dewar@gnat.com>
267 * sem_ch8.adb (Analyze_Package_Renaming): Skip analysis if Name
268 is Error. Similar change for other renaming cases.
270 2001-10-25 Robert Dewar <dewar@gnat.com>
272 * s-atacco.ads: Add pragma Inline_Always for functions.
273 Fix header format. Add copyright 2001
275 2001-10-25 Ed Schonberg <schonber@gnat.com>
277 * par-ch3.adb (P_Subtype_Mark_Resync): for an anonymous array
278 return Error rather than Empty so that analysis can proceed.
280 2001-10-25 Ed Schonberg <schonber@gnat.com>
282 * sem_util.adb (Enter_Name): better handling of cascaded error
283 messages when a unit appears in its own context.
285 2001-10-25 Ed Schonberg <schonber@gnat.com>
287 * sem_util.adb (Defining_Entity): in case of error, attach created
288 entity to specification, so that semantic analysis can proceed.
290 2001-10-25 Robert Dewar <dewar@gnat.com>
293 (Defining_Entity): Deal with Error.
294 (Process_End_Label): Deal with bad end label for.
296 2001-10-25 Ed Schonberg <schonber@gnat.com>
298 * sem_elab.adb (Check_A_Call): refine message when call is in an
299 instance but callee is not declared in the generic unit.
301 2001-10-25 Ed Schonberg <schonber@gnat.com>
303 * sem_elab.adb (Check_A_Call): check for renaming before finding the
304 enclosing unit, which may already be different from the calling unit.
306 2001-10-25 Geert Bosch <bosch@gnat.com>
308 * 4gintnam.ads: fix header format.
310 2001-10-25 Ed Schonberg <schonber@gnat.com>
312 * sem_res.adb (Resolve_Call): if the call is actually an indexing
313 operation on the result of a parameterless call, perform elaboration
314 check after the node has been properly rewritten.
316 * sem_ch12.adb (Copy_Generic_Node): after the proper body has been
317 inlined within the generic tree, the defining identifier is not a
320 2001-10-25 Ed Schonberg <schonber@gnat.com>
322 * sem_res.adb (Resolve): special-case resolution of Null in an
323 instance or an inlined body to avoid view conflicts.
325 * sem_ch12.adb (Copy_Generic_Node): for allocators, check for view
326 compatibility by retrieving the access type of the generic copy.
328 2001-10-25 Robert Dewar <dewar@gnat.com>
331 (Analyze_Number_Declaration): Handle error expression.
332 (Signed_Integer_Type_Declaration): Handle error bound.
333 (Analyze_Subtype_Indication): Handle error range.
335 * sem_util.adb (Get_Index_Bounds): Check for Error.
337 2001-10-25 Robert Dewar <dewar@gnat.com>
339 * restrict.adb (Set_No_Run_Time_Mode): Set Discard_Names as default
342 2001-10-25 Pascal Obry <obry@gnat.com>
344 * gnatmem.adb (Read_Next): fix Curs2 value to properly handle quiet
345 mode case for ALLOC case.
347 * gnatmem.adb (Read_Next): correctly fix parsing in Quiet mode on
348 all platforms. Improvement of last change.
350 2001-10-25 Robert Dewar <dewar@gnat.com>
352 * exp_ch4.adb (Expand_N_Allocator): Minor reformatting.
354 2001-10-25 Geert Bosch <bosch@gnat.com>
356 * osint.adb (Is_Relative): Remove duplicate.
358 2001-10-25 Pascal Obry <obry@gnat.com>
360 * osint.adb (Read_Default_Search_Dirs): correctly detect relative
361 pathnames in UNIX and DOS style with drive letter.
362 (Is_Relative): new routine.
364 * osint.adb: Minor reformatting
366 * osint.adb (Is_Relative): implementation using
367 GNAT.OS_Lib.Is_Absolute_Path. Better fix.
369 2001-10-25 Pascal Obry <obry@gnat.com>
371 * g-dirope.adb (Basename): correctly compute offset between the
372 original Path and the translated one.
374 * g-dirope.adb: (Base_Name): add some comments.
376 2001-10-25 Robert Dewar <dewar@gnat.com>
378 * exp_imgv.adb (Expand_Image_Attribute): Defend against bad use
379 in HIE mode, avoids compilation abandoned message
381 * exp_imgv.adb: Correct typo in previous change
383 * exp_imgv.adb: Correct typo in previous change (not my day!)
385 2001-10-25 Robert Dewar <dewar@gnat.com>
387 * s-tpinop.ads: Add 2001 to copyright notice. Fix header format.
389 2001-10-25 Pascal Obry <obry@gnat.com>
391 * g-awk.ads: Move all pragma inlines next to the routine
392 declarations. This is more uniform with other GNAT spec.
394 2001-10-22 Geert Bosch <bosch@gnat.com>
396 * Make-lang.in (gnattools, cross-gnattools): Remove gnatmem.
398 2001-10-19 Geert Bosch <bosch@gnat.com>
400 * Makefile.in (tools, gnattools): Remove gnatmem.
402 2001-10-17 Richard Henderson <rth@redhat.com>
404 * Makefile.in (misc.o): Depend on langhooks.h.
405 * misc.c: Include it.
406 (LANG_HOOKS_INIT, LANG_HOOKS_INIT_OPTIONS): New.
407 (LANG_HOOKS_DECODE_OPTION): New.
408 (lang_hooks): Use LANG_HOOKS_INITIALIZER.
410 2001-10-16 Florian Weimer <fw@deneb.enyo.de>
412 * trans.c (tree_transform): Adjust to recent change in
413 expand_asm_operands to implement named asm operands.
415 2001-10-11 Ed Schonberg <schonber@gnat.com>
417 * exp_ch8.adb (Expand_N_Object_Renaming_Declaration): Bugfix in
418 renaming of discriminant for mutable record type.
420 2001-10-11 Robert Dewar <dewar@gnat.com>
422 * validsw.adb: Properly save -gnatVn status.
424 2001-10-11 Robert Dewar <dewar@gnat.com>
426 * usage.adb: Add lines for V switch.
428 * gnatcmd.adb (COMPILE): Revise translations for -gnatV
429 (/VALIDITY_CHECKING).
431 2001-10-11 Ed Schonberg <schonber@gnat.com>
433 * sem_type.adb (Add_One_Interp): an operator for a type declared in
434 an extension of System is known to be visible.
436 2001-10-11 Ed Schonberg <schonber@gnat.com>
438 * sem_eval.adb (Compare_Fixup): get the bounds of a String_Literal
439 properly. Fixes regression on ACATS C34005G.
441 2001-10-11 Robert Dewar <dewar@gnat.com>
443 * sem_ch5.adb (Analyze_Iteration_Scheme): Suppress warning on null
444 loop in generic instance, since this is likely not very useful.
446 2001-10-11 Robert Dewar <dewar@gnat.com>
448 * restrict.adb (Disallow in No_Run_Time_Mode): Properly specialize
449 the error message for high integrity mode.
451 * rtsfind.adb (RTE): Give message if we try to find an entity that
452 is not available in high integrity mode.
455 (OK_To_Use_In_HIE_Mode): New array.
456 (RTE): May return Empty in high integrity mode.
458 * rtsfind.ads (OK_To_Use_In_No_Run_Time_Mode): New name for
459 OK_To_Use_In_HIE_Mode, now includes System_FAT_xxx.
461 * sem_ch6.adb (Analyze_Subprogram_Body): Kill body in predefined
462 unit if not inlined always and in no runtime mode. Fixes problem
463 caused by new Rtsfind changes.
465 * sem_ch6.adb (Analyze_Subrogram_Body): Do not Check_References if
468 * rtsfind.adb (RTE): Make sure we do not try to load unit after
469 giving message for entity not available in high integrity mode.
471 2001-10-11 Pascal Obry <obry@gnat.com>
473 * impunit.adb: Add GNAT.CRC32.
475 2001-10-11 Ed Schonberg <schonber@gnat.com>
477 * exp_fixd.adb (Expand_Multiply_Fixed_By_Fixed_Giving_Fixed): handle
478 properly the case where one universal operand in a non-static
479 exponentiation of a real literal.
481 2001-10-11 Ed Schonberg <schonber@gnat.com>
483 * exp_ch7.adb (Find_Final_List): for a type appearing in a with_type
484 clause, return the gobal finalization list, for lack of anthing else.
486 2001-10-11 Ed Schonberg <schonber@gnat.com>
488 * exp_ch7.adb (Make_Transient_Block): if statement is within
489 exception handler, always use new transient scope to place Clean
492 2001-10-11 Pascal Obry <obry@gnat.com>
495 (GNAT_ADA_OBJS): add g-crc32.o, a-tags.o, a-stream.o
496 (GNATBIND_OBJS): add g-crc32.o, a-tags.o, a-stream.o
497 (GNATLS_RTL_OBJS): add g-crc32.o
498 (GNATMAKE_RTL_OBJS): add g-crc32.o
501 (CRC_Match): new function.
502 (Get_File_Checksum): renamed Get_File_CRC. Use the GNAT.CRC32 unit
503 instead of the previous simple checksum algorithm.
504 (Time_Stamp_Mismatch): use CRC_Match for comparison.
505 (Set_Source_Table): idem.
508 (Get_File_Checksum): renamed Get_File_CRC as now we compute CRC
509 instead of simple checksum.
510 (CRC_Match): new function.
511 (CRC_Error): new constant.
513 * ali.adb (Scan_ALI): rename variable Chk to CRC as we are handling
514 a CRC now and not a simple checksum. A CRC uses lower-case hex
515 letters, fixes ambiguity in parsing.
517 * ali.ads (Sdep_Record.Checksum): renamed Sdep_Record.CRC as this
518 is what this variable will store.
520 * bcheck.adb: Change reference to chechsum in comments by CRC.
521 (Check_Consistency): Rename Get_File_Checksum to Get_File_CRC.
522 rename All_Checksum_Match to All_CRC_Match. Change due to API
523 renaming since now GNAT does not use a simple checksum but a
524 CRC using GNAT.CRC32.
526 * gnatls.adb: Rename Checksum to CRC in many places, we use a CRC
527 now and not anymore a simple checksum.
529 * lib-load.adb: Use Source_CRC instead of Source_Checksum in many
532 * lib-writ.adb (Write_ALI): Use Source_CRC instead of Source_Checksum.
535 (Restore_Scan_State): rename Checksum to CRC.
536 (Save_Scan_State): idem.
540 (Checksum): rename to CRC.
541 (Saved_Scan_State): Save_Checksum field renamed to Save_CRC
543 * scn-nlit.adb: Rename many Accumulate_Checksum to Update (from
544 GNAT.CRC32). Update copyright notice.
546 * scn-slit.adb: Rename many Accumulate_Checksum to Update (from
547 GNAT.CRC32). Update copyright notice.
550 (Accumulate_Checksum): removed.
551 (Update): new procedure. Add a wide-character into the CRC.
554 (Complete_Source_File_Entry): use CRC32 instead of simple checksum.
555 (Load_File): fix initialization of S (change Source_Checksum to
558 * sinput-p.adb (Load_Project_File): rename Source_Checksum to
559 Source_CRC in S initialization.
561 * sinput.adb (Source_Checksum): renamed to Source_CRC.
563 * sinput.ads (Source_Checksum): renamed to Source_CRC.
564 Update comments for the CRC.
566 * types.adb (Hex): Use lowercase for the letter part.
568 * types.ads (Get_Hex_String): Returns the hexadecimal representation
569 for a word. This is currently used only for CRC. In previous version,
570 the checksum was using a representation with all letter being
571 upper-case. With the new implementation (using CRC) we do not remove
572 the 32th bit of the CRC, so we can have an upper-case starting letter
573 in the CRC. This is not possible to parse in Scan_ALI (ali.adb).
574 It is ambigous since the CRC was optional and could be followed by
575 options like EB, EE. So now this routines uses lower-case letter for
576 the hexadecimal representation. Strange enough only lower case letters
577 where checked in Scan_ALI (even if this was not a possible case).
579 * gnatvsn.ads (Library_Version): changed to 3.15a.
581 * s-crc32.ads: Initial version from GNAT.CRC32. This is the version
584 * s-crc32.adb: Initial version from GNAT.CRC32. This is the version
587 * ali-util.adb: Redo previous change to avoid using word CRC everywhere
588 Add 2001 to copyright notice
589 (Accumulate_Checksum): Modify to use System.CRC32.
591 * ali-util.ads: Redo changes of previous revision to continue to use
592 the word Checksum. Add 2001 to copyright notice.
594 * ali.adb: Undo some of previous changes, not needed.
595 Keep the change for lower case letters in the checksum.
597 * ali.ads: Undo previous change not needed.
599 * bcheck.adb: Undo most of previous change, not needed.
600 But do use Checksums_Match for checksum comparison.
602 * gnatls.adb: Undo most of previous change, not needed.
603 But do use Checksums_Match for comparing checksums.
605 * lib-load.adb: Undo previous change, not needed.
607 * lib-writ.adb: Undo previous change, not needed.
609 * lib-writ.ads: Document that checksums use lower case,
610 not upper case letters.
612 * scans.adb: Undo previous change, not needed
614 * scans.ads: Undo previous change, not needed.
616 * scn-nlit.adb: Undo previous changes, not needed.
618 * scn-slit.adb: Undo previous change, not needed. Fix header format.
621 (Accumulate_Checksum): Use System.CRC32.
622 (Initialize_Checksum): New procedure.
623 Remove other changes of previous revision.
625 * sinput-p.adb: Undo previous change, not needed.
627 * sinput.adb: Undo previous change, not needed.
629 * sinput-l.adb: Undo previous change, not needed.
631 * sinput.ads: Undo previous change, not needed. Keep only comment
632 on new checksum algorithm
634 * Makefile.in: Add s-crc32 as needed, remove g-crc32.
635 Also remove a-tags and a-stream from GNAT sources.
637 * ali.adb (Scan_ALI): fix typo introduce in latest check-in.
639 * Makefile.in (GNATRTL_NONTASKING_OBJS): Add g-crc32.o.
641 2001-10-11 Geert Bosch <bosch@gnat.com>
643 * einfo.h: Regenerate.
645 * nmake.ads: Regenerate.
647 * nmake.adb: Regenerate.
649 * sinfo.h: Regenerate.
651 * treeprs.adb: Regenerate.
653 2001-10-10 Geert Bosch <bosch@gnat.com>
655 * gnat-style.texi: New file describing coding guidelines for Ada.
657 2001-10-10 Ed Schonberg <schonber@gnat.com>
659 * einfo.adb (Write_Entity_Flags): Elaboration_Entity_Required
662 2001-10-10 Geert Bosch <bosch@gnat.com>
664 * snames.ads: Add new names for project facility.
666 * snames.adb: Update to reflect snames.ads changes.
668 * snames.h: Update to reflect snames.ads changes.
670 2001-10-10 Vincent Celier <celier@gnat.com>
673 (Add_Switches): reflect the changes for the switches attributes
674 Default_Switches indexed by the programming language,
675 Switches indexed by the file name.
676 (Collect_Arguments_And_Compile): Idem.
677 Reflect the attribute name changes.
680 (Initialisation_Data): Change the names of some packages and
682 (Initialize): process case insensitive associative arrays.
685 (Attribute_Kind): Remove Both, add Case_Insensitive_Associative_Array.
688 (Parse_Attribute_Declaration): For case insensitive associative
689 arrays, set the index string to lower case.
692 Reflect the changes of the project attributes.
695 Replace Check_Naming_Scheme by Ada_Check and
696 Language_Independent_Check.
699 Replaced Check_Naming_Scheme by 2 procedures:
700 Ada_Check and Language_Independent_Check.
703 (Process_Declarative_Items): For case-insensitive associative
704 arrays, set the index string to lower case.
705 (Recursive_Check): Call Prj.Nmsc.Ada_Check, instead of
706 Prj.Nmsc.Check_Naming_Scheme.
709 (Case_Insensitive): New function
710 (Set_Case_Insensitive): New procedure
713 (Case_Insensitive): New function
714 (Set_Case_Insensitive): New procedure
715 (Project_Node_Record): New flag Case_Insensitive.
718 (Value_Of): new function to get the string value of a single
719 string variable or attribute.
722 (Value_Of): new function to get the string value of a single
723 string variable or attribute.
726 (Ada_Default_Spec_Suffix): New function
727 (Ada_Default_Impl_Suffix): New function
728 Change definitions of several constants to reflect
729 new components of record types.
732 (Naming_Data): Change several components to reflect new
733 elements of naming schemes.
734 (Project_Data): New flags Sources_Present and
735 Language_Independent_Checked.
736 (Ada_Default_Spec_Suffix): New function.
737 (Ada_Default_Impl_Suffix): New function.
740 Modification of predefined names for project manager: added
741 Implementation, Specification_Exceptions, Implementation_Exceptions,
742 Specification_Suffix, Implementation_Suffix, Separate_Suffix,
743 Default_Switches, _Languages, Builder, Cross_Reference,
744 Finder. Removed Body_Part, Specification_Append, Body_Append,
745 Separate_Append, Gnatmake, Gnatxref, Gnatfind, Gnatbind,
748 * prj.ads: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
751 * prj-nmsc.adb (Ada_Check): Test that Separate_Suffix is defaulted,
752 not that it is Nil_Variable_Value.
754 * prj.ads: Add ??? for uncommented declarations
756 2001-10-10 Ed Schonberg <schonber@gnat.com>
758 * sem_prag.adb: (Analyze_Pragma, case External): If entity is a
759 constant, do not indicate possible modification, so that gigi can
760 treat it as a bona fide constant.
762 2001-10-10 Robert Dewar <dewar@gnat.com>
764 * sem_prag.adb: Add processing for pragma External.
766 * snames.ads: Add entry for pragma External.
768 * par-prag.adb: Add pragma External.
770 * snames.adb: Updated to match snames.ads.
772 2001-10-10 Ed Schonberg <schonber@gnat.com>
774 * exp_ch4.adb (Expand_N_Allocator): Generate meaningful names for
775 a dynamic task if the allocator appears in an indexed assignment
776 or selected component assignment.
778 * exp_util.adb (Build_Task_Array_Image, Build_Task_Record_Image):
779 For a dynamic task in an assignment statement, use target of
780 assignment to generate meaningful name.
782 2001-10-10 Ed Schonberg <schonber@gnat.com>
784 * einfo.adb (Write_Field19_Name): Body_Entity is also defined for
787 * einfo.ads: Body_Entity is also defined for generic package.
788 Documentation change only
790 * exp_aggr.adb (Build_Array_Aggr_Code): When expanding an
791 others_choice for a discriminated component initialization,
792 convert discriminant references into the corresponding discriminals.
794 * exp_ch3.adb (Get_Simple_Init_Val): Add qualification to aggregate
795 only if original type is private and expression has to be wrapped
799 (Apply_Constraint_Check): Do not perform length check
800 if expression is an aggregate with only an others_choice.
801 (Length_N_Cond): two references to the same in_parameter
802 (typically the discriminal in an init_proc) denote the same value.
803 Two useful optimization uncovered by bugfixes above.
805 2001-10-10 Robert Dewar <dewar@gnat.com>
807 * xeinfo.adb: Change int to char in translation of enumeration types.
808 This fixes a problem in the C representation of component alignment.
809 Add 2001 to copyright notice
811 2001-10-10 Richard Kenner <kenner@gnat.com>
813 * decl.c: (validate_size): Do check size of object of integral type
814 if it is a packed array type.
816 2001-10-10 Richard Kenner <kenner@gnat.com>
818 * decl.c: (gnat_to_gnu_entity, case object): Also materialize
819 VAR_DECL for constant if not Is_Public but -O0.
821 2001-10-10 Richard Kenner <kenner@gnat.com>
823 * misc.c (struct lang_hooks): Add new initializer to match GCC change.
825 2001-10-10 Geert Bosch <bosch@gnat.com>
827 * xnmake.adb (XNmake): Fix handling of -s/-b options. No longer
828 use '/' as switch character, allowing for absolute file names.
830 2001-10-09 Joseph S. Myers <jsm28@cam.ac.uk>
832 * 4gintnam.ads, Make-lang.in, Makefile.in, config-lang.in: Update
835 2001-10-08 Geert Bosch <bosch@gnat.com>
837 * Makefile.in (treeprs.ads, einfo.h, sinfo.h, nmake.adb, nmake.ads):
838 Automatically build utilities when files need to be regenerated.
840 2001-10-08 Geert Bosch <bosch@gnat.com>
842 * xsnames.adb: New utility for updating snames.ads and snames.adb
844 2001-10-08 Zack Weinberg <zack@codesourcery.com>
846 * Make-lang.in (ADAFLAGS): Add -W -Wall.
847 (ADA_FLAGS_TO_PASS): Set ADA_CFLAGS=$(CFLAGS) also.
848 (gnat1): Also depend on attribs.o.
849 (gnatlib, gnatlib-shared): Set CC and ADAC in recursive make.
850 * Makefile.in (X_ADAFLAGS, T_ADAFLAGS): New.
851 (ADAC): Set to @ADAC@ in stage1, $(CC) later.
852 (ADAFLAGS): Add -W -Wall.
853 (ALL_ADAFLAGS, MOST_ADAFLAGS): Add X_ADAFLAGS and T_ADAFLAGS;
856 (.adb.o, .ads.o, a-numaux.o, a-teioed.o, s-interr.o,
857 s-taskin.o, sdefault.o, s-tasdeb.o, s-vaflop.o, a-except.o,
858 s-assert.o, s-stalib.o, s-memory.o, memtrack.o, mlib-tgt.o):
859 Use $(ADAC), not $(CC), as compilation command.
861 (gnattools): Depend directly on tools to build, don't use
863 (gnatlib): Set ADA_CFLAGS=$(GNATLIBCFLAGS) in recursive make.
865 * einfo.h, sinfo.h: New files (autogenerated).
867 2001-10-08 Richard Henderson <rth@redhat.com>
869 * comperr.adb (Abort_In_Progress): New.
870 (Compiler_Abort): Use it to prevent recursion.
872 2001-10-08 Robert Dewar <dewar@gnat.com>
874 * atree.adb: Set Error_Posted in Error node, helps error recovery.
876 * par-endh.adb (Output_End_Expected): We should also not test
877 Error_Posted on the Error node, since now it is always set.
879 * cstand.adb (Create_Standard): Set Etype of Error to Any_Type
880 to help error recovery. Part of general work on 9407-004.
882 * par.adb: Add ??? for misuse of error
885 (Resolve): Defend against Error, fixes 9407-003.
886 (Resolve_Discrete_Subtype_Indication): Defend against Error.
888 * sinfo.ads (N_Error): Now has Etype field (which will be set
889 to Any_Type to help error recovery).
891 2001-10-08 Richard Kenner (kenner@gnat.com)
893 * misc.c (gnat_expand_expr, case UNCHECKED_CONVERT_EXPR):
894 Consistently set MEM attributes from expression; fixes
895 bootstrap failure on x86.
897 2001-10-08 Geert Bosch (bosch@gnat.com)
899 * 5oosinte.adb: Add 2001 to copyright notice.
901 2001-10-08 Geert Bosch (bosch@gnat.com)
903 * ceinfo.adb: Add utility for consistency checking of einfo.ad[bs].
905 * csinfo.adb: Add utility for consistency checking of sinfo.ad[bs].
907 2001-10-07 Joseph S. Myers <jsm28@cam.ac.uk>
909 * 5oosinte.adb: Fix spelling error of "separate" as "seperate".
911 2001-10-05 Geert Bosch (bosch@gnat.com)
913 * adaint.h: Small formatting fix.
915 2001-10-04 Geert Bosch <bosch@gnat.com>
917 * sysdep.c (__gnat_set_binary_mode, __gnat_set_text_mode):
918 Arg is int, not FILE *, in dummy version of functions.
920 * adaint.h (__gnat_set_binary_mode, __gnat_set_text_mode):
921 Arg is int, not FILE *.
923 2001-10-04 Geert Bosch <bosch@gnat.com>
925 * 3lsoccon.ads: Added file, missed with initial check ins.
927 * 4lintnam.ads: Fix header format.
928 Change Linux to GNU/Linux.
930 * 5iosinte.adb: Change Linux to GNU/Linux.
932 * 5iosinte.ads: Change Linux to GNU/Linux.
934 * 5itaprop.adb: Change Linux to GNU/Linux.
936 * 5itaspri.ads: Change Linux to GNU/Linux.
937 Update copyright notice.
939 * 5lintman.adb: Change Linux to GNU/Linux.
941 * 5lml-tgt.adb: Change Linux to GNU/Linux.
943 * 5losinte.ads: Change Linux to GNU/Linux.
945 * 5lsystem.ads: Change Linux to GNU/Linux.
947 * 5qosinte.adb: Change Linux to GNU/Linux.
949 * 5qosinte.ads: Change Linux to GNU/Linux.
951 * 5qparame.ads: Change Linux to GNU/Linux.
953 * 5qtaprop.adb: Change Linux to GNU/Linux.
955 * 5qtaspri.ads: Change Linux to GNU/Linux.
956 Add 2001 to copyright notice.
958 * 5vintman.ads: Change Linux to GNU/Linux.
959 Fix header format. Add 2001 to copyright notice.
961 * g-soccon.ads: Change Linux to GNU/Linux.
963 * g-trasym.ads: Change Linux to GNU/Linux.
964 Add 2001 to copyright notice.
966 * memtrack.adb: Change Linux to GNU/Linux.
968 * s-intman.ads: Change Linux to GNU/Linux.
969 Add 2001 to copyright notice. Fix header format.
971 * s-stache.adb: Change Linux to GNU/Linux.
973 * adaint.c: Change Linux to GNU/Linux.
975 * cio.c: Change Linux to GNU/Linux.
977 * cstreams.c: Change Linux to GNU/Linux.
979 * init.c: Change Linux to GNU/Linux.
981 * gmem.c: Change Linux to GNU/Linux.
983 * tracebak.c: Change Linux to GNU/Linux.
986 2001-10-02 Geert Bosch <bosch@gnat.com>
988 * misc.c (insert_default_attributes): Add dummy version.