1 Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3 * trans.c, utils2.c: Remove PALIGN parameter to get_inner_reference.
5 2001-11-15 Neil Booth <neil@daikokuya.demon.co.uk>
7 * misc.c (gnat_init): Change prototype. Include the
8 functionality of the old init_parse and init_decl_processing.
9 (gnat_init_decl_processing): New prototype.
11 * utils.c (init_decl_processing): Rename gnat_init_decl_processing.
13 2001-11-09 Neil Booth <neil@daikokuya.demon.co.uk>
15 * misc.c (gnat_print_decl, gnat_print_type): Renamed.
16 (LANG_HOOKS_PRINT_DECL, LANG_HOOKS_PRINT_TYPE): Override.
17 (print_lang_statistics, lang_print_xnode, print_lang_identifier,
20 2001-11-09 Neil Booth <neil@daikokuya.demon.co.uk>
22 * misc.c (LANG_HOOKS_NAME, LANG_HOOKS_IDENTIFIER_SIZE): Override.
23 (struct lang_hooks): Constify.
24 (language_string, lang_identify): Remove.
25 * utils.c (init_decl_processing): Update.
27 2001-11-06 Neil Booth <neil@cat.daikokuya.demon.co.uk>
29 * misc.c: Include langhooks-def.h.
30 * Makefile.in: Update.
32 2001-10-30 Robert Dewar <dewar@gnat.com>
35 (Check_Identifier): Rewrite circuit to be compatible with use of letters
36 in the upper half of ASCII.
37 (Check_Identifier): Minor reformatting
39 2001-10-30 Geert Bosch <bosch@gnat.com>
41 * (Associated_Node, Set_Associated_Node): Do not check for
44 2001-10-30 Robert Dewar <dewar@gnat.com>
46 * a-reatim.ads: Minor reformatting
48 2001-10-30 Robert Dewar <dewar@gnat.com>
50 * gnatdll.adb: Minor reformatting throughout. Many ??? added for
51 undocumented declarations.
53 2001-10-30 Pascal Obry <obry@gnat.com>
55 * gnatdll.adb (Parse_Command_Line): handle -g option to be passed
56 to the binder and linker.
59 * mdll.ads: Fix layout. Update copyright notice.
61 * mdll.adb: Fix layout. Update copyright notice.
63 2001-10-30 Robert Dewar <dewar@gnat.com>
65 * usage.adb: Minor fix to output for -gnaty.
67 2001-10-30 Ed Schonberg <schonber@gnat.com>
69 * a-reatim.ads: Makes Seconds_Count into a 64-bit integer,
70 to accommodate all its possible values.
72 * a-reatim.adb (Split): Special-case handling of Time_Span_First
73 and of small absolute values of T.
75 2001-10-30 Richard Kenner <kenner@gnat.com>
77 * misc.c (gnat_expand_expr, case NULL_EXPR): Remove call to
78 set_mem_attributes since not needed and wrong if RESULT if a REG;
81 2001-10-30 Geert Bosch <bosch@gnat.com>
83 * 86numaux.adb, a-tigeau.ads, a-wtgeau.ads, fname-sf.ads, g-traceb.ads,
84 s-tasdeb.ads, sem_maps.ads: Add 2001 to copyright notice.
86 2001-10-30 Robert Dewar <dewar@gnat.com>
88 * bindusg.adb: Undocument -f switch.
90 * gnatcmd.adb: Remove /FULL_ELABORATION.
92 * opt.ads (Force_RM_Elaboration_Order): Document that this is
95 * gnatbind.adb: Output new warning for use of obsolescent -f switch.
97 * gnatbind.adb: Minor update of warning msg.
99 2001-10-30 Vincent Celier <celier@gnat.com>
101 * gnatcmd.adb (MAKE, BIND, LINK, LIST, FIND, XREF): Add translations
102 for project file switches (-P (/PROJECT_FILE=),
103 -X (/EXTERNAL_REFERENCE=) and -vPx (/PROJECT_FILE_VERBOSITY=DEFAULT
106 2001-10-30 Geert Bosch <bosch@gnat.com>
108 * decl.c: Minor whitespace fixes.
110 2001-10-30 Richard Kenner <kenner@gnat.com>
112 * utils2.c (build_allocator): Test for SIZE overflow in array case too
114 2001-10-30 Geert Bosch <bosch@gnat.com>
116 * ali-util.adb (Initialize_Checksum): Use out-mode instead of in out.
117 Found due to GCC 3.0 warning of using uninitialized value.
120 (Get_Max_Size): Use variant record for tracking value/expression.
121 Makes logic clearer and prevents warnings for uninitialized variables.
122 (Layout_Array_Type): Use variant record for tracking value/expression.
123 Makes logic clearer and prevents warnings for uninitialized variables.
125 2001-10-30 Robert Dewar <dewar@gnat.com>
127 * lib.adb: Minor reformatting
129 * s-taprop.ads: Minor reformatting
131 2001-10-29 Laurent Guerby <guerby@acm.org>
134 (Raise_From_Signal_Handler, Propagate_Signal_Exception): Make arg
136 (_gnat_error_handler): Make MSG const.
138 2001-10-29 Richard Kenner <kenner@gnat.com>
140 * sysdep.c: Fix localtime_r problem on LynxOS.
141 Also remove #elif to avoid warnings.
143 * misc.c (yyparse): Don't set up and register jmpbuf; remove decls
146 * decl.c (annotate_value): Make SIZE unsigned to avoid warning.
148 2001-10-28 Joseph S. Myers <jsm28@cam.ac.uk>
150 * 86numaux.adb, a-tigeau.ads, a-wtgeau.ads, decl.c, exp_ch6.adb,
151 exp_ch9.adb, exp_util.adb, fname-sf.ads, freeze.ads, g-awk.adb,
152 g-comlin.ads, g-dirope.adb, g-dyntab.ads, g-socket.ads,
153 g-table.ads, g-traceb.ads, gnat-style.texi, gnatchop.adb, init.c,
154 layout.adb, layout.ads, mdllfile.ads, mlib-fil.ads, osint.ads,
155 s-fatgen.adb, s-imgrea.adb, s-taprop.ads, s-tasdeb.ads,
156 sem_aggr.adb, sem_attr.adb, sem_case.ads, sem_ch13.adb,
157 sem_ch3.adb, sem_elab.adb, sem_maps.ads, sem_res.adb,
158 sem_util.ads, sinfo.ads, sinput.ads, table.adb, table.ads,
159 types.ads, urealp.adb: Fix spelling errors.
161 2001-10-27 Laurent Guerby <guerby@acm.org>
163 * trans.c (gigi): Fix non determinism leading to bootstrap
164 comparison failures for debugging information.
166 2001-10-26 Florian Weimer <fw@deneb.enyo.de>
168 * gnat_rm.texi: Use @./@: where appropriate.
170 2001-10-26 Robert Dewar <dewar@gnat.com>
172 * sinfo.adb: Define Associated_Node to overlap Entity field. Cleanup.
174 2001-10-26 Richard Kenner <kenner@gnat.com>
176 * gmem.c (__gnat_gmem_read_next): Properly check for EOF
178 2001-10-26 Richard Kenner <kenner@gnat.com>
180 * decl.c (validate_size): Modify message for bad size to avoid
181 implication that compiler is modifying the size.
183 2001-10-26 Robert Dewar <dewar@gnat.com>
185 * prj-util.adb: Minor reformatting. Fix bad header format.
187 2001-10-26 Robert Dewar <dewar@gnat.com>
189 * sinfo.ads: Define Associated_Node to overlap Entity field. Cleanup.
191 * sinfo.ads: Clarify use of Associated_Node (documentation only).
193 * sem_ch12.adb: Change Node4 to Associated_Node. Change
194 Associated_Node to Get_Associated_Node. Put use of Unchecked_Access
195 much more narrowly in places where needed. These are cleanups.
197 2001-10-26 Joel Brobecker <brobecke@gnat.com>
199 * 5zosinte.ads (null_pthread): new constant.
202 (Initialize_TCB): Initialize thread ID to null, to be able to verify
203 later that this field has been set.
204 (Finalize_TCB): ditto.
205 (Suspend_Task): Verify that the thread ID is not null before using it.
206 (Resume_Task): ditto.
209 (Resume_All_Tasks): Lock the tasks list before using it.
210 (Suspend_All_Tasks): ditto.
212 2001-10-26 Richard Kenner <kenner@gnat.com>
214 * decl.c (gnat_to_gnu_entity, case E_General_Access_Type):
215 Make constant variant of designated type for Is_Access_Constant.
216 Call update_pointer_to with main variant.
218 * trans.c (process_freeze_entity, process_type):
219 Call update_pointer_to on main variant.
221 * utils.c (update_pointer_to): Make corresponding variant for NEW_TYPE.
222 If main variant, update all other variants.
224 * utils2.c (build_unary_op, case INDIRECT_REF): No longer set
227 2001-10-26 Robert Dewar <dewar@gnat.com>
229 * prj-util.adb: Minor reformatting
231 2001-10-26 Robert Dewar <dewar@gnat.com>
233 * prj-util.adb: Minor reformatting
235 2001-10-26 Robert Dewar <dewar@gnat.com>
237 * prj-attr.adb: Minor reformatting throughout
239 2001-10-26 Robert Dewar <dewar@gnat.com>
241 * prj-attr.ads: Minor reformatting
242 Add ??? comment (this whole spec has almost no comments)
244 2001-10-26 Vincent Celier <celier@gnat.com>
246 * g-os_lib.adb (Normalize_Pathname): Preserve the double slash
247 ("//") that precede the drive letter on Interix.
249 2001-10-26 Geert Bosch <bosch@gnat.com>
251 * gnat_rm.texi: Add GNAT Reference Manual.
253 2001-10-25 Robert Dewar <dewar@gnat.com>
255 * sem_ch8.adb (Analyze_Package_Renaming): Skip analysis if Name
256 is Error. Similar change for other renaming cases.
258 2001-10-25 Robert Dewar <dewar@gnat.com>
260 * s-atacco.ads: Add pragma Inline_Always for functions.
261 Fix header format. Add copyright 2001
263 2001-10-25 Ed Schonberg <schonber@gnat.com>
265 * par-ch3.adb (P_Subtype_Mark_Resync): for an anonymous array
266 return Error rather than Empty so that analysis can proceed.
268 2001-10-25 Ed Schonberg <schonber@gnat.com>
270 * sem_util.adb (Enter_Name): better handling of cascaded error
271 messages when a unit appears in its own context.
273 2001-10-25 Ed Schonberg <schonber@gnat.com>
275 * sem_util.adb (Defining_Entity): in case of error, attach created
276 entity to specification, so that semantic analysis can proceed.
278 2001-10-25 Robert Dewar <dewar@gnat.com>
281 (Defining_Entity): Deal with Error.
282 (Process_End_Label): Deal with bad end label for.
284 2001-10-25 Ed Schonberg <schonber@gnat.com>
286 * sem_elab.adb (Check_A_Call): refine message when call is in an
287 instance but callee is not declared in the generic unit.
289 2001-10-25 Ed Schonberg <schonber@gnat.com>
291 * sem_elab.adb (Check_A_Call): check for renaming before finding the
292 enclosing unit, which may already be different from the calling unit.
294 2001-10-25 Geert Bosch <bosch@gnat.com>
296 * 4gintnam.ads: fix header format.
298 2001-10-25 Ed Schonberg <schonber@gnat.com>
300 * sem_res.adb (Resolve_Call): if the call is actually an indexing
301 operation on the result of a parameterless call, perform elaboration
302 check after the node has been properly rewritten.
304 * sem_ch12.adb (Copy_Generic_Node): after the proper body has been
305 inlined within the generic tree, the defining identifier is not a
308 2001-10-25 Ed Schonberg <schonber@gnat.com>
310 * sem_res.adb (Resolve): special-case resolution of Null in an
311 instance or an inlined body to avoid view conflicts.
313 * sem_ch12.adb (Copy_Generic_Node): for allocators, check for view
314 compatibility by retrieving the access type of the generic copy.
316 2001-10-25 Robert Dewar <dewar@gnat.com>
319 (Analyze_Number_Declaration): Handle error expression.
320 (Signed_Integer_Type_Declaration): Handle error bound.
321 (Analyze_Subtype_Indication): Handle error range.
323 * sem_util.adb (Get_Index_Bounds): Check for Error.
325 2001-10-25 Robert Dewar <dewar@gnat.com>
327 * restrict.adb (Set_No_Run_Time_Mode): Set Discard_Names as default
330 2001-10-25 Pascal Obry <obry@gnat.com>
332 * gnatmem.adb (Read_Next): fix Curs2 value to properly handle quiet
333 mode case for ALLOC case.
335 * gnatmem.adb (Read_Next): correctly fix parsing in Quiet mode on
336 all platforms. Improvement of last change.
338 2001-10-25 Robert Dewar <dewar@gnat.com>
340 * exp_ch4.adb (Expand_N_Allocator): Minor reformatting.
342 2001-10-25 Geert Bosch <bosch@gnat.com>
344 * osint.adb (Is_Relative): Remove duplicate.
346 2001-10-25 Pascal Obry <obry@gnat.com>
348 * osint.adb (Read_Default_Search_Dirs): correctly detect relative
349 pathnames in UNIX and DOS style with drive letter.
350 (Is_Relative): new routine.
352 * osint.adb: Minor reformatting
354 * osint.adb (Is_Relative): implementation using
355 GNAT.OS_Lib.Is_Absolute_Path. Better fix.
357 2001-10-25 Pascal Obry <obry@gnat.com>
359 * g-dirope.adb (Basename): correctly compute offset between the
360 original Path and the translated one.
362 * g-dirope.adb: (Base_Name): add some comments.
364 2001-10-25 Robert Dewar <dewar@gnat.com>
366 * exp_imgv.adb (Expand_Image_Attribute): Defend against bad use
367 in HIE mode, avoids compilation abandoned message
369 * exp_imgv.adb: Correct typo in previous change
371 * exp_imgv.adb: Correct typo in previous change (not my day!)
373 2001-10-25 Robert Dewar <dewar@gnat.com>
375 * s-tpinop.ads: Add 2001 to copyright notice. Fix header format.
377 2001-10-25 Pascal Obry <obry@gnat.com>
379 * g-awk.ads: Move all pragma inlines next to the routine
380 declarations. This is more uniform with other GNAT spec.
382 2001-10-22 Geert Bosch <bosch@gnat.com>
384 * Make-lang.in (gnattools, cross-gnattools): Remove gnatmem.
386 2001-10-19 Geert Bosch <bosch@gnat.com>
388 * Makefile.in (tools, gnattools): Remove gnatmem.
390 2001-10-17 Richard Henderson <rth@redhat.com>
392 * Makefile.in (misc.o): Depend on langhooks.h.
393 * misc.c: Include it.
394 (LANG_HOOKS_INIT, LANG_HOOKS_INIT_OPTIONS): New.
395 (LANG_HOOKS_DECODE_OPTION): New.
396 (lang_hooks): Use LANG_HOOKS_INITIALIZER.
398 2001-10-16 Florian Weimer <fw@deneb.enyo.de>
400 * trans.c (tree_transform): Adjust to recent change in
401 expand_asm_operands to implement named asm operands.
403 2001-10-11 Ed Schonberg <schonber@gnat.com>
405 * exp_ch8.adb (Expand_N_Object_Renaming_Declaration): Bugfix in
406 renaming of discriminant for mutable record type.
408 2001-10-11 Robert Dewar <dewar@gnat.com>
410 * validsw.adb: Properly save -gnatVn status.
412 2001-10-11 Robert Dewar <dewar@gnat.com>
414 * usage.adb: Add lines for V switch.
416 * gnatcmd.adb (COMPILE): Revise translations for -gnatV
417 (/VALIDITY_CHECKING).
419 2001-10-11 Ed Schonberg <schonber@gnat.com>
421 * sem_type.adb (Add_One_Interp): an operator for a type declared in
422 an extension of System is known to be visible.
424 2001-10-11 Ed Schonberg <schonber@gnat.com>
426 * sem_eval.adb (Compare_Fixup): get the bounds of a String_Literal
427 properly. Fixes regression on ACATS C34005G.
429 2001-10-11 Robert Dewar <dewar@gnat.com>
431 * sem_ch5.adb (Analyze_Iteration_Scheme): Suppress warning on null
432 loop in generic instance, since this is likely not very useful.
434 2001-10-11 Robert Dewar <dewar@gnat.com>
436 * restrict.adb (Disallow in No_Run_Time_Mode): Properly specialize
437 the error message for high integrity mode.
439 * rtsfind.adb (RTE): Give message if we try to find an entity that
440 is not available in high integrity mode.
443 (OK_To_Use_In_HIE_Mode): New array.
444 (RTE): May return Empty in high integrity mode.
446 * rtsfind.ads (OK_To_Use_In_No_Run_Time_Mode): New name for
447 OK_To_Use_In_HIE_Mode, now includes System_FAT_xxx.
449 * sem_ch6.adb (Analyze_Subprogram_Body): Kill body in predefined
450 unit if not inlined always and in no runtime mode. Fixes problem
451 caused by new Rtsfind changes.
453 * sem_ch6.adb (Analyze_Subrogram_Body): Do not Check_References if
456 * rtsfind.adb (RTE): Make sure we do not try to load unit after
457 giving message for entity not available in high integrity mode.
459 2001-10-11 Pascal Obry <obry@gnat.com>
461 * impunit.adb: Add GNAT.CRC32.
463 2001-10-11 Ed Schonberg <schonber@gnat.com>
465 * exp_fixd.adb (Expand_Multiply_Fixed_By_Fixed_Giving_Fixed): handle
466 properly the case where one universal operand in a non-static
467 exponentiation of a real literal.
469 2001-10-11 Ed Schonberg <schonber@gnat.com>
471 * exp_ch7.adb (Find_Final_List): for a type appearing in a with_type
472 clause, return the gobal finalization list, for lack of anthing else.
474 2001-10-11 Ed Schonberg <schonber@gnat.com>
476 * exp_ch7.adb (Make_Transient_Block): if statement is within
477 exception handler, always use new transient scope to place Clean
480 2001-10-11 Pascal Obry <obry@gnat.com>
483 (GNAT_ADA_OBJS): add g-crc32.o, a-tags.o, a-stream.o
484 (GNATBIND_OBJS): add g-crc32.o, a-tags.o, a-stream.o
485 (GNATLS_RTL_OBJS): add g-crc32.o
486 (GNATMAKE_RTL_OBJS): add g-crc32.o
489 (CRC_Match): new function.
490 (Get_File_Checksum): renamed Get_File_CRC. Use the GNAT.CRC32 unit
491 instead of the previous simple checksum algorithm.
492 (Time_Stamp_Mismatch): use CRC_Match for comparison.
493 (Set_Source_Table): idem.
496 (Get_File_Checksum): renamed Get_File_CRC as now we compute CRC
497 instead of simple checksum.
498 (CRC_Match): new function.
499 (CRC_Error): new constant.
501 * ali.adb (Scan_ALI): rename variable Chk to CRC as we are handling
502 a CRC now and not a simple checksum. A CRC uses lower-case hex
503 letters, fixes ambiguity in parsing.
505 * ali.ads (Sdep_Record.Checksum): renamed Sdep_Record.CRC as this
506 is what this variable will store.
508 * bcheck.adb: Change reference to chechsum in comments by CRC.
509 (Check_Consistency): Rename Get_File_Checksum to Get_File_CRC.
510 rename All_Checksum_Match to All_CRC_Match. Change due to API
511 renaming since now GNAT does not use a simple checksum but a
512 CRC using GNAT.CRC32.
514 * gnatls.adb: Rename Checksum to CRC in many places, we use a CRC
515 now and not anymore a simple checksum.
517 * lib-load.adb: Use Source_CRC instead of Source_Checksum in many
520 * lib-writ.adb (Write_ALI): Use Source_CRC instead of Source_Checksum.
523 (Restore_Scan_State): rename Checksum to CRC.
524 (Save_Scan_State): idem.
528 (Checksum): rename to CRC.
529 (Saved_Scan_State): Save_Checksum field renamed to Save_CRC
531 * scn-nlit.adb: Rename many Accumulate_Checksum to Update (from
532 GNAT.CRC32). Update copyright notice.
534 * scn-slit.adb: Rename many Accumulate_Checksum to Update (from
535 GNAT.CRC32). Update copyright notice.
538 (Accumulate_Checksum): removed.
539 (Update): new procedure. Add a wide-character into the CRC.
542 (Complete_Source_File_Entry): use CRC32 instead of simple checksum.
543 (Load_File): fix initialization of S (change Source_Checksum to
546 * sinput-p.adb (Load_Project_File): rename Source_Checksum to
547 Source_CRC in S initialization.
549 * sinput.adb (Source_Checksum): renamed to Source_CRC.
551 * sinput.ads (Source_Checksum): renamed to Source_CRC.
552 Update comments for the CRC.
554 * types.adb (Hex): Use lowercase for the letter part.
556 * types.ads (Get_Hex_String): Returns the hexadecimal representation
557 for a word. This is currently used only for CRC. In previous version,
558 the checksum was using a representation with all letter being
559 upper-case. With the new implementation (using CRC) we do not remove
560 the 32th bit of the CRC, so we can have an upper-case starting letter
561 in the CRC. This is not possible to parse in Scan_ALI (ali.adb).
562 It is ambigous since the CRC was optional and could be followed by
563 options like EB, EE. So now this routines uses lower-case letter for
564 the hexadecimal representation. Strange enough only lower case letters
565 where checked in Scan_ALI (even if this was not a possible case).
567 * gnatvsn.ads (Library_Version): changed to 3.15a.
569 * s-crc32.ads: Initial version from GNAT.CRC32. This is the version
572 * s-crc32.adb: Initial version from GNAT.CRC32. This is the version
575 * ali-util.adb: Redo previous change to avoid using word CRC everywhere
576 Add 2001 to copyright notice
577 (Accumulate_Checksum): Modify to use System.CRC32.
579 * ali-util.ads: Redo changes of previous revision to continue to use
580 the word Checksum. Add 2001 to copyright notice.
582 * ali.adb: Undo some of previous changes, not needed.
583 Keep the change for lower case letters in the checksum.
585 * ali.ads: Undo previous change not needed.
587 * bcheck.adb: Undo most of previous change, not needed.
588 But do use Checksums_Match for checksum comparison.
590 * gnatls.adb: Undo most of previous change, not needed.
591 But do use Checksums_Match for comparing checksums.
593 * lib-load.adb: Undo previous change, not needed.
595 * lib-writ.adb: Undo previous change, not needed.
597 * lib-writ.ads: Document that checksums use lower case,
598 not upper case letters.
600 * scans.adb: Undo previous change, not needed
602 * scans.ads: Undo previous change, not needed.
604 * scn-nlit.adb: Undo previous changes, not needed.
606 * scn-slit.adb: Undo previous change, not needed. Fix header format.
609 (Accumulate_Checksum): Use System.CRC32.
610 (Initialize_Checksum): New procedure.
611 Remove other changes of previous revision.
613 * sinput-p.adb: Undo previous change, not needed.
615 * sinput.adb: Undo previous change, not needed.
617 * sinput-l.adb: Undo previous change, not needed.
619 * sinput.ads: Undo previous change, not needed. Keep only comment
620 on new checksum algorithm
622 * Makefile.in: Add s-crc32 as needed, remove g-crc32.
623 Also remove a-tags and a-stream from GNAT sources.
625 * ali.adb (Scan_ALI): fix typo introduce in latest check-in.
627 * Makefile.in (GNATRTL_NONTASKING_OBJS): Add g-crc32.o.
629 2001-10-11 Geert Bosch <bosch@gnat.com>
631 * einfo.h: Regenerate.
633 * nmake.ads: Regenerate.
635 * nmake.adb: Regenerate.
637 * sinfo.h: Regenerate.
639 * treeprs.adb: Regenerate.
641 2001-10-10 Geert Bosch <bosch@gnat.com>
643 * gnat-style.texi: New file describing coding guidelines for Ada.
645 2001-10-10 Ed Schonberg <schonber@gnat.com>
647 * einfo.adb (Write_Entity_Flags): Elaboration_Entity_Required
650 2001-10-10 Geert Bosch <bosch@gnat.com>
652 * snames.ads: Add new names for project facility.
654 * snames.adb: Update to reflect snames.ads changes.
656 * snames.h: Update to reflect snames.ads changes.
658 2001-10-10 Vincent Celier <celier@gnat.com>
661 (Add_Switches): reflect the changes for the switches attributes
662 Default_Switches indexed by the programming language,
663 Switches indexed by the file name.
664 (Collect_Arguments_And_Compile): Idem.
665 Reflect the attribute name changes.
668 (Initialisation_Data): Change the names of some packages and
670 (Initialize): process case insensitive associative arrays.
673 (Attribute_Kind): Remove Both, add Case_Insensitive_Associative_Array.
676 (Parse_Attribute_Declaration): For case insensitive associative
677 arrays, set the index string to lower case.
680 Reflect the changes of the project attributes.
683 Replace Check_Naming_Scheme by Ada_Check and
684 Language_Independent_Check.
687 Replaced Check_Naming_Scheme by 2 procedures:
688 Ada_Check and Language_Independent_Check.
691 (Process_Declarative_Items): For case-insensitive associative
692 arrays, set the index string to lower case.
693 (Recursive_Check): Call Prj.Nmsc.Ada_Check, instead of
694 Prj.Nmsc.Check_Naming_Scheme.
697 (Case_Insensitive): New function
698 (Set_Case_Insensitive): New procedure
701 (Case_Insensitive): New function
702 (Set_Case_Insensitive): New procedure
703 (Project_Node_Record): New flag Case_Insensitive.
706 (Value_Of): new function to get the string value of a single
707 string variable or attribute.
710 (Value_Of): new function to get the string value of a single
711 string variable or attribute.
714 (Ada_Default_Spec_Suffix): New function
715 (Ada_Default_Impl_Suffix): New function
716 Change definitions of several constants to reflect
717 new components of record types.
720 (Naming_Data): Change several components to reflect new
721 elements of naming schemes.
722 (Project_Data): New flags Sources_Present and
723 Language_Independent_Checked.
724 (Ada_Default_Spec_Suffix): New function.
725 (Ada_Default_Impl_Suffix): New function.
728 Modification of predefined names for project manager: added
729 Implementation, Specification_Exceptions, Implementation_Exceptions,
730 Specification_Suffix, Implementation_Suffix, Separate_Suffix,
731 Default_Switches, _Languages, Builder, Cross_Reference,
732 Finder. Removed Body_Part, Specification_Append, Body_Append,
733 Separate_Append, Gnatmake, Gnatxref, Gnatfind, Gnatbind,
736 * prj.ads: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
739 * prj-nmsc.adb (Ada_Check): Test that Separate_Suffix is defaulted,
740 not that it is Nil_Variable_Value.
742 * prj.ads: Add ??? for uncommented declarations
744 2001-10-10 Ed Schonberg <schonber@gnat.com>
746 * sem_prag.adb: (Analyze_Pragma, case External): If entity is a
747 constant, do not indicate possible modification, so that gigi can
748 treat it as a bona fide constant.
750 2001-10-10 Robert Dewar <dewar@gnat.com>
752 * sem_prag.adb: Add processing for pragma External.
754 * snames.ads: Add entry for pragma External.
756 * par-prag.adb: Add pragma External.
758 * snames.adb: Updated to match snames.ads.
760 2001-10-10 Ed Schonberg <schonber@gnat.com>
762 * exp_ch4.adb (Expand_N_Allocator): Generate meaningful names for
763 a dynamic task if the allocator appears in an indexed assignment
764 or selected component assignment.
766 * exp_util.adb (Build_Task_Array_Image, Build_Task_Record_Image):
767 For a dynamic task in an assignment statement, use target of
768 assignment to generate meaningful name.
770 2001-10-10 Ed Schonberg <schonber@gnat.com>
772 * einfo.adb (Write_Field19_Name): Body_Entity is also defined for
775 * einfo.ads: Body_Entity is also defined for generic package.
776 Documentation change only
778 * exp_aggr.adb (Build_Array_Aggr_Code): When expanding an
779 others_choice for a discriminated component initialization,
780 convert discriminant references into the corresponding discriminals.
782 * exp_ch3.adb (Get_Simple_Init_Val): Add qualification to aggregate
783 only if original type is private and expression has to be wrapped
787 (Apply_Constraint_Check): Do not perform length check
788 if expression is an aggregate with only an others_choice.
789 (Length_N_Cond): two references to the same in_parameter
790 (typically the discriminal in an init_proc) denote the same value.
791 Two useful optimization uncovered by bugfixes above.
793 2001-10-10 Robert Dewar <dewar@gnat.com>
795 * xeinfo.adb: Change int to char in translation of enumeration types.
796 This fixes a problem in the C representation of component alignment.
797 Add 2001 to copyright notice
799 2001-10-10 Richard Kenner <kenner@gnat.com>
801 * decl.c: (validate_size): Do check size of object of integral type
802 if it is a packed array type.
804 2001-10-10 Richard Kenner <kenner@gnat.com>
806 * decl.c: (gnat_to_gnu_entity, case object): Also materialize
807 VAR_DECL for constant if not Is_Public but -O0.
809 2001-10-10 Richard Kenner <kenner@gnat.com>
811 * misc.c (struct lang_hooks): Add new initializer to match GCC change.
813 2001-10-10 Geert Bosch <bosch@gnat.com>
815 * xnmake.adb (XNmake): Fix handling of -s/-b options. No longer
816 use '/' as switch character, allowing for absolute file names.
818 2001-10-09 Joseph S. Myers <jsm28@cam.ac.uk>
820 * 4gintnam.ads, Make-lang.in, Makefile.in, config-lang.in: Update
823 2001-10-08 Geert Bosch <bosch@gnat.com>
825 * Makefile.in (treeprs.ads, einfo.h, sinfo.h, nmake.adb, nmake.ads):
826 Automatically build utilities when files need to be regenerated.
828 2001-10-08 Geert Bosch <bosch@gnat.com>
830 * xsnames.adb: New utility for updating snames.ads and snames.adb
832 2001-10-08 Zack Weinberg <zack@codesourcery.com>
834 * Make-lang.in (ADAFLAGS): Add -W -Wall.
835 (ADA_FLAGS_TO_PASS): Set ADA_CFLAGS=$(CFLAGS) also.
836 (gnat1): Also depend on attribs.o.
837 (gnatlib, gnatlib-shared): Set CC and ADAC in recursive make.
838 * Makefile.in (X_ADAFLAGS, T_ADAFLAGS): New.
839 (ADAC): Set to @ADAC@ in stage1, $(CC) later.
840 (ADAFLAGS): Add -W -Wall.
841 (ALL_ADAFLAGS, MOST_ADAFLAGS): Add X_ADAFLAGS and T_ADAFLAGS;
844 (.adb.o, .ads.o, a-numaux.o, a-teioed.o, s-interr.o,
845 s-taskin.o, sdefault.o, s-tasdeb.o, s-vaflop.o, a-except.o,
846 s-assert.o, s-stalib.o, s-memory.o, memtrack.o, mlib-tgt.o):
847 Use $(ADAC), not $(CC), as compilation command.
849 (gnattools): Depend directly on tools to build, don't use
851 (gnatlib): Set ADA_CFLAGS=$(GNATLIBCFLAGS) in recursive make.
853 * einfo.h, sinfo.h: New files (autogenerated).
855 2001-10-08 Richard Henderson <rth@redhat.com>
857 * comperr.adb (Abort_In_Progress): New.
858 (Compiler_Abort): Use it to prevent recursion.
860 2001-10-08 Robert Dewar <dewar@gnat.com>
862 * atree.adb: Set Error_Posted in Error node, helps error recovery.
864 * par-endh.adb (Output_End_Expected): We should also not test
865 Error_Posted on the Error node, since now it is always set.
867 * cstand.adb (Create_Standard): Set Etype of Error to Any_Type
868 to help error recovery. Part of general work on 9407-004.
870 * par.adb: Add ??? for misuse of error
873 (Resolve): Defend against Error, fixes 9407-003.
874 (Resolve_Discrete_Subtype_Indication): Defend against Error.
876 * sinfo.ads (N_Error): Now has Etype field (which will be set
877 to Any_Type to help error recovery).
879 2001-10-08 Richard Kenner (kenner@gnat.com)
881 * misc.c (gnat_expand_expr, case UNCHECKED_CONVERT_EXPR):
882 Consistently set MEM attributes from expression; fixes
883 bootstrap failure on x86.
885 2001-10-08 Geert Bosch (bosch@gnat.com)
887 * 5oosinte.adb: Add 2001 to copyright notice.
889 2001-10-08 Geert Bosch (bosch@gnat.com)
891 * ceinfo.adb: Add utility for consistency checking of einfo.ad[bs].
893 * csinfo.adb: Add utility for consistency checking of sinfo.ad[bs].
895 2001-10-07 Joseph S. Myers <jsm28@cam.ac.uk>
897 * 5oosinte.adb: Fix spelling error of "separate" as "seperate".
899 2001-10-05 Geert Bosch (bosch@gnat.com)
901 * adaint.h: Small formatting fix.
903 2001-10-04 Geert Bosch <bosch@gnat.com>
905 * sysdep.c (__gnat_set_binary_mode, __gnat_set_text_mode):
906 Arg is int, not FILE *, in dummy version of functions.
908 * adaint.h (__gnat_set_binary_mode, __gnat_set_text_mode):
909 Arg is int, not FILE *.
911 2001-10-04 Geert Bosch <bosch@gnat.com>
913 * 3lsoccon.ads: Added file, missed with initial check ins.
915 * 4lintnam.ads: Fix header format.
916 Change Linux to GNU/Linux.
918 * 5iosinte.adb: Change Linux to GNU/Linux.
920 * 5iosinte.ads: Change Linux to GNU/Linux.
922 * 5itaprop.adb: Change Linux to GNU/Linux.
924 * 5itaspri.ads: Change Linux to GNU/Linux.
925 Update copyright notice.
927 * 5lintman.adb: Change Linux to GNU/Linux.
929 * 5lml-tgt.adb: Change Linux to GNU/Linux.
931 * 5losinte.ads: Change Linux to GNU/Linux.
933 * 5lsystem.ads: Change Linux to GNU/Linux.
935 * 5qosinte.adb: Change Linux to GNU/Linux.
937 * 5qosinte.ads: Change Linux to GNU/Linux.
939 * 5qparame.ads: Change Linux to GNU/Linux.
941 * 5qtaprop.adb: Change Linux to GNU/Linux.
943 * 5qtaspri.ads: Change Linux to GNU/Linux.
944 Add 2001 to copyright notice.
946 * 5vintman.ads: Change Linux to GNU/Linux.
947 Fix header format. Add 2001 to copyright notice.
949 * g-soccon.ads: Change Linux to GNU/Linux.
951 * g-trasym.ads: Change Linux to GNU/Linux.
952 Add 2001 to copyright notice.
954 * memtrack.adb: Change Linux to GNU/Linux.
956 * s-intman.ads: Change Linux to GNU/Linux.
957 Add 2001 to copyright notice. Fix header format.
959 * s-stache.adb: Change Linux to GNU/Linux.
961 * adaint.c: Change Linux to GNU/Linux.
963 * cio.c: Change Linux to GNU/Linux.
965 * cstreams.c: Change Linux to GNU/Linux.
967 * init.c: Change Linux to GNU/Linux.
969 * gmem.c: Change Linux to GNU/Linux.
971 * tracebak.c: Change Linux to GNU/Linux.
974 2001-10-02 Geert Bosch <bosch@gnat.com>
976 * misc.c (insert_default_attributes): Add dummy version.