X-Git-Url: http://git.sourceforge.jp/view?p=pf3gnuchains%2Fgcc-fork.git;a=blobdiff_plain;f=gcc%2Fada%2FChangeLog;h=4b1df4b8b2c9a3d27abbced4bf7901953a189ca8;hp=0c5382e8fc0466f0324bccd2414c244a8a894f01;hb=a3cc8ea75307e68e854f5db452e19b971609ba5f;hpb=c975df51c0c1bdd9cfc7e9244c51f3b49cd46d50 diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 0c5382e8fc0..379631922ec 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,11030 +1,571 @@ -2009-10-28 Robert Dewar - - * sem_type.adb: Minor reformatting - -2009-10-28 Arnaud Charlet - - * exp_ch9.adb (Build_Task_Proc_Specification): Generate a different - suffix for task type bodies. - -2009-10-28 Ed Schonberg - - * exp_aggr.adb (Convert_Aggr_In_Allocator): Do not look for a - finalization list if the designated type requires no control actions, - to prevent a useless semantic dependence on ada.tags. - -2009-10-28 Bob Duff - - * s-fileio.adb: Give more information in exception messages. - -2009-10-28 Robert Dewar - - * gnat_ugn.texi: Document new -gnatyt requirement for space after right - paren if next token starts with digit or letter. - * styleg.adb (Check_Right_Paren): New rule for space after if next - character is a letter or digit. - -2009-10-28 Thomas Quinot - - * s-crtl.ads (System.CRTL.strerror): New function. - -2009-10-28 Ed Schonberg - - * sem_type.adb: Add guard to recover some type errors. - -2009-10-28 Vincent Celier - - * prj-nmsc.adb (Add_To_Or_Remove_From_List): New name of procedure - Add_If_Not_In_List to account to the fact that a directory may be - removed from the list. Only remove directory if Removed is True. - -2009-10-28 Gary Dismukes - - * a-textio.ads, a-textio.ads: Put back function EOF_Char in private - part. Put back body of function EOF_Char. - * a-tienau.adb: Remove with of Interfaces.C_Streams and change EOF back - to EOF_Char. - -2009-10-28 Emmanuel Briot - - * prj-tree.adb (Free): Fix memory leak. - -2009-10-28 Thomas Quinot - - * s-fileio.adb: Minor reformatting - -2009-10-28 Arnaud Charlet - - * gcc-interface/Make-lang.in: Update dependencies. - -2009-10-28 Robert Dewar - - * exp_attr.adb, exp_ch9.adb, prj-nmsc.adb, tbuild.adb, ali.adb, - types.ads: Minor reformatting - -2009-10-28 Tristan Gingold - - * init.c: Fix __gnat_error_handler for Darwin10 (Snow Leopard) - -2009-10-28 Thomas Quinot - - * exp_ch4.adb (Expand_N_Type_Conversion): Perform Integer promotion for - the operand of the unary minus and ABS operators. - - * sem_type.adb (Covers): A concurrent type and its corresponding record - type are compatible. - * exp_attr.adb (Expand_N_Attribute_Reference): Do not rewrite a 'Access - attribute reference for the current instance of a protected type while - analyzing an access discriminant constraint in a component definition. - Such a reference is handled in the corresponding record's init proc, - while initializing the constrained component. - * exp_ch9.adb (Expand_N_Protected_Type_Declaration): When creating the - corresponding record type, propagate components' - Has_Per_Object_Constraint flag. - * exp_ch3.adb (Build_Init_Procedure.Build_Init_Statements): - For a concurrent type, set up concurrent aspects before initializing - components with a per object constrain, because they may be controlled, - and their initialization may call entries or protected subprograms of - the enclosing concurrent object. - -2009-10-28 Emmanuel Briot - - * prj-nmsc.adb (Add_If_Not_In_List): New subprogram, for better sharing - of code. - (Find_Source_Dirs): resolve links if Opt.Follow_Links_For_Dirs when - processing the directories specified explicitly in the project file. - -2009-10-28 Robert Dewar - - * a-ztexio.adb, a-ztexio.ads, a-witeio.ads, a-witeio.adb, - a-textio.ads, a-textio.adb: Reorganize (moving specs from private part - to body). - (Initialize_Standard_Files): New procedure. - * a-tienau.adb: Minor change to make EOF directly visible - * a-tirsfi.ads, a-wrstfi.adb, a-wrstfi.ads, a-zrstfi.adb, - a-zrstfi.ads, a-tirsfi.adb: New unit, initial version. - * gnat_rm.texi: Add documentation for - Ada.[Wide_[Wide_]]Text_IO.Reset_Standard_Files. - * Makefile.rtl: Add entries for - Ada.[Wide_[Wide_]]Text_IO.Reset_Standard_Files - -2009-10-28 Thomas Quinot - - * exp_ch9.ads: Minor reformatting - * sem_ch3.adb: Minor reformatting - * sem_aggr.adb: Minor reformatting. - * sem_attr.adb: Minor reformatting - * tbuild.adb, tbuild.ads, par-ch4.adb, exp_ch4.adb (Tbuild.New_Op_Node): - New subprogram. - Minor code reorganization/factoring. - -2009-10-27 Eric Botcazou - - * gcc-interface/decl.c (purpose_member_field): New static function. - (annotate_rep): Use it instead of purpose_member. - -2009-10-27 Eric Botcazou - - * raise-gcc (db_region_for): Use _Unwind_GetIPInfo instead of - _Unwind_GetIP if HAVE_GETIPINFO is defined. - (db_action_for): Likewise. - -2009-10-27 Robert Dewar - - * s-fileio.adb, s-fileio.ads, sem_util.adb, sem_warn.adb, - sem_warn.ads: Minor reformatting - -2009-10-27 Robert Dewar - - * sem_warn.adb, sem_util.adb, sem_util.ads: Minor reformatting. Add - comments. - -2009-10-27 Robert Dewar - - * s-os_lib.ads, s-os_lib.adb, prj-err.adb, makeutl.adb: Minor - reformatting. - -2009-10-27 Ed Schonberg - - * sem.util.ads, sem_util.adb (Denotes_Same_Object, - Denotes_Same_Prefix): New functions to detect overlap between actuals - that are not by-copy in a call, when one of them is in-out. - * sem_warn.ads, sem_warn.adb (Warn_On_Overlapping_Actuals): New - procedure, called on a subprogram call to warn when an in-out actual - that is not by-copy overlaps with another actual, thus leadind to - potentially dangerous aliasing in the body of the called subprogram. - Currently the warning is under control of the -gnatX switch. - * sem_res.adb (resolve_call): call Warn_On_Overlapping_Actuals. - -2009-10-27 Thomas Quinot - - * sem_ch12.adb (Install_Formal_Packages): Do not omit installation of - visible entities when the formal package doesn't have a box. - - * checks.adb: Minor reformatting. - -2009-10-27 Vincent Celier - - * prj-part.adb (Parse): Catch exception Types.Unrecoverable_Error and - set Project to Empty_Node. - -2009-10-27 Robert Dewar - - * gnatbind.adb: Minor reformatting - -2009-10-27 Arnaud Charlet - - * exp_aggr.adb: Fix comment. - -2009-10-27 Emmanuel Briot - - * prj-err.adb (Error_Msg): take into account continuation lines when - computing whether we have a warning. - -2009-10-27 Vasiliy Fofanov - - * make.adb, s-os_lib.adb, s-os_lib.ads (Create_Temp_Output_File): New - routine that is designed to create temp file descriptor specifically - for redirecting an output stream. - -2009-10-24 Eric Botcazou - - * gcc-interface/decl.c (gnat_to_gnu_entity) : When - processing the parent type, build the COMPONENT_REF for a discriminant - with the proper type. - -2009-10-24 Eric Botcazou - - * init.c (__gnat_adjust_context_for_raise): Mention _Unwind_GetIPInfo. - * gcc-interface/Makefile.in (GNATLIBCFLAGS_FOR_C): Add HAVE_GETIPINFO. - Pass GNATLIBCFLAGS_FOR_C to recursive invocations. - -2009-10-21 Eric Botcazou - - * gcc-interfaces/decl.c (build_subst_list): Convert the expression of - the constraint to the type of the discriminant. - -2009-10-21 Eric Botcazou - - * gcc-interfaces/decl.c (gnat_to_gnu_entity): Do not create a new - TYPE_DECL when a type is padded if there is already one and reset - TYPE_STUB_DECL in this case. - -2009-10-21 Eric Botcazou - - * gcc-interfaces/utils.c (create_subprog_decl): Do not redefine - main_identifier_node. - -2009-10-17 Eric Botcazou - - * gcc-interface/utils.c (convert): When converting to a padded type - with an inner type of self-referential size, pad the expression before - doing the unchecked conversion. +2010-04-15 Eric Botcazou + + * gcc-interface/trans.c (call_to_gnu): Do not unnecessarily force + side-effects of actual parameters before the call. + +2010-04-15 Eric Botcazou + + * gcc-interface/decl.c (validate_size): Reorder, remove obsolete test + and warning. + (set_rm_size): Reorder and remove obsolete test. + +2010-04-14 Eric Botcazou + + * gcc-interface/gigi.h: Reorder declarations and tweak comments. + (gigi): Adjust ATTRIBUTE_UNUSED markers. + * gcc-interface/gadaint.h: New file. + * gcc-interface/trans.c: Include it in lieu of adaint.h. Reorder. + (__gnat_to_canonical_file_spec): Remove declaration. + (number_names): Delete. + (number_files): Likewise. + (gigi): Adjust. + * gcc-interface/Make-lang.in (ada/trans.o): Adjust dependencies to + above change. + +2010-04-14 Eric Botcazou + + * gcc-interface/decl.c (gnat_to_gnu_entity) : Fix + comment. + * gcc-interface/trans.c (process_freeze_entity): Use local copy of + Ekind. Return early for class-wide types. Do not compute initializer + unless necessary. Reuse the tree for an associated class-wide type + only if processing its root type. + +2010-04-13 Duncan Sands + + * gcc-interface/misc.c (gnat_eh_type_covers): Remove. + * gcc-interface/trans.c (Exception_Handler_to_gnu_zcx): Update comment. + +2010-04-13 Eric Botcazou + + * gcc-interface/gigi.h (standard_datatypes): Add ADT_parent_name_id. + (parent_name_id): New macro. + * gcc-interface/decl.c (gnat_to_gnu_entity) : Use it. + * gcc-interface/trans.c (gigi): Initialize it. + (lvalue_required_p) : New case. + : Likewise. + : Likewise. + * gcc-interface/utils.c (convert): Try to properly upcast tagged types. + +2010-04-13 Eric Botcazou + + * gcc-interface/ada-tree.h (TYPE_BY_REFERENCE_P): Delete. + (DECL_CONST_ADDRESS_P): New macro. + (SET_DECL_ORIGINAL_FIELD_TO_FIELD): Likewise. + (SAME_FIELD_P): Likewise. + * gcc-interface/decl.c (constructor_address_p): New static function. + (gnat_to_gnu_entity) : Set DECL_CONST_ADDRESS_P according to + the return value of above function. + (gnat_to_gnu_entity) : Force BLKmode for all types + passed by reference. + : Likewise. + Set TREE_ADDRESSABLE on the type if it passed by reference. + (make_packable_type): Use SET_DECL_ORIGINAL_FIELD_TO_FIELD. + (create_field_decl_from): Likewise. + (substitute_in_type): Likewise. + (purpose_member_field): Use SAME_FIELD_P. + * gcc-interface/misc.c (must_pass_by_ref): Test TREE_ADDRESSABLE. + * gcc-interface/trans.c (lvalue_required_p): Add ADDRESS_OF_CONSTANT + parameter and adjust recursive calls. + : New case. + : Return 1 if the object is of a class-wide type. + Adjust calls to lvalue_required_p. Do not return the initializer of a + DECL_CONST_ADDRESS_P constant if an lvalue is required for it. + (call_to_gnu): Delay issuing error message for a misaligned actual and + avoid the associated back-end assertion. Test TREE_ADDRESSABLE. + (gnat_gimplify_expr) : Handle non-static constructors. + * gcc-interface/utils.c (make_dummy_type): Set TREE_ADDRESSABLE if the + type is passed by reference. + (convert) : Convert in-place in more cases. + * gcc-interface/utils2.c (build_cond_expr): Drop TYPE_BY_REFERENCE_P. + (build_simple_component_ref): Use SAME_FIELD_P. + +2010-04-12 Eric Botcazou + + * gcc-interface/trans.c (Identifier_to_gnu): Use boolean variable. + (call_to_gnu): Test gigi's flag TYPE_BY_REFERENCE_P instead of calling + front-end's predicate Is_By_Reference_Type. Use consistent order and + remove ??? comment. Use original conversion in all cases, if any. + * gcc-interface/utils.c (make_dummy_type): Minor tweak. + (convert): Use local copy in more cases. + : Remove deactivated code. + (unchecked_convert): Use a couple of local copies. + +2010-04-11 Eric Botcazou + + * gcc-interface/trans.c (lvalue_required_for_attribute_p): New static + function. + (lvalue_required_p) : Call it. + (gnat_to_gnu) : Prevent build_component_ref from + folding the result only if lvalue_required_for_attribute_p is true. + * gcc-interface/utils.c (maybe_unconstrained_array): Pass correctly + typed constant to build_component_ref. + (unchecked_convert): Likewise. + * gcc-interface/utils2.c (maybe_wrap_malloc): Likewise. + (build_allocator): Likewise. -2009-10-17 Eric Botcazou +2010-04-11 Eric Botcazou - * gcc-interface/utils2.c (build_binary_op) : Make - sure the element type is consistent. + * gcc-interface/utils2.c (build_cond_expr): Take the address and + dereference if the result type is passed by reference. -2009-10-17 Eric Botcazou +2010-04-11 Eric Botcazou - * gcc-interface/trans.c (addressable_p): Handle bitwise operations. + * gcc-interface/trans.c (Case_Statement_to_gnu): Bool-ify variable. + (gnat_to_gnu) : When not optimizing, generate a + goto to the next statement. -2009-10-16 Eric Botcazou +2010-04-09 Eric Botcazou - * gcc-interface/ada-tree.h (TYPE_FAT_POINTER_P): Swap with... - (TYPE_IS_FAT_POINTER_P): ...this. - (TYPE_THIN_POINTER_P): Rename into... - (TYPE_IS_THIN_POINTER_P): ...this. - (TYPE_FAT_OR_THIN_POINTER_P): Rename into... - (TYPE_IS_FAT_OR_THIN_POINTER_P): ...this. - (TYPE_IS_PADDING_P): Change definition, move old one to... - (TYPE_PADDING_P): ...this. - * gcc-interface/decl.c (gnat_to_gnu_entity): Adjust for above changes. - (get_unpadded_type): Likewise. - (gnat_to_gnu_component_type): Likewise. - (gnat_to_gnu_param): Likewise. - (relate_alias_sets): Likewise. - (make_packable_type): Likewise. - (maybe_pad_type): Likewise. - (gnat_to_gnu_field): Likewise. - (is_variable_size): Likewise. - (annotate_object): Likewise. - (validate_size): Likewise. - (set_rm_size): Likewise. - (make_type_from_size): Likewise. - (rm_size): Likewise. - * gcc-interface/misc.c (gnat_print_type): Likewise. - (gnat_get_alias_set): Likewise. - * gcc-interface/trans.c (Identifier_to_gnu): Likewise. - (Attribute_to_gnu): Likewise. - (call_to_gnu): Likewise. - (gnat_to_gnu): Likewise. - (add_decl_expr): Likewise. - (convert_with_check): Likewise. - (addressable_p): Likewise. - (maybe_implicit_deref): Likewise. + * gcc-interface/gigi.h (maybe_variable): Delete. (protect_multiple_eval): Likewise. + (maybe_stabilize_reference): Likewise. + (gnat_save_expr): Declare. + (gnat_protect_expr): Likewise. + (gnat_stabilize_reference): Likewise. + * gcc-interface/decl.c (gnat_to_gnu_entity) : Use + gnat_stabilize_reference. + (maybe_variable): Delete. + (elaborate_expression_1): Use gnat_save_expr. + * gcc-interface/trans.c (Attribute_to_gnu): Use gnat_protect_expr. + (call_to_gnu): Pass NULL to gnat_stabilize_reference. + (gnat_to_gnu) : Use gnat_save_expr. + : Use gnat_protect_exp. + : Pass NULL to gnat_stabilize_reference. + : Use gnat_protect_expr. + Pass NULL to gnat_stabilize_reference. + (build_unary_op_trapv): Use gnat_protect_expr. + (build_binary_op_trapv): Likewise. + (emit_range_check): Likewise. + (emit_index_check): Likewise. + (convert_with_check): Likewise. + (protect_multiple_eval): Move to utils2.c file. + (maybe_stabilize_reference): Merge into... + (gnat_stabilize_reference): ...this. Move to utils2.c file. (gnat_stabilize_reference_1): Likewise. - * gcc-interface/utils.c (gnat_pushdecl): Likewise. - (finish_record_type): Likewise. - (rest_of_record_type_compilation): Likewise. - (create_type_decl): Likewise. - (gnat_types_compatible_p): Likewise. - (build_template): Likewise. - (convert_vms_descriptor64): Likewise. - (convert_vms_descriptor32): Likewise. - (build_unc_object_type_from_ptr): Likewise. - (update_pointer_to): Likewise. - (convert_to_fat_pointer): Likewise. - (convert_to_fat_pointer): Likewise. - (convert): Likewise. - (remove_conversions): Likewise. - (maybe_unconstrained_array): Likewise. - (unchecked_convert): Likewise. - (handle_vector_type_attribute): Likewise. - * gcc-interface/utils2.c (build_binary_op): Likewise. - (build_unary_op): Likewise. + * gcc-interface/utils.c (convert_to_fat_pointer): Use gnat_protect_expr + instead of protect_multiple_eval. + * gcc-interface/utils2.c (compare_arrays): Likewise. + (nonbinary_modular_operation): Likewise. + (maybe_wrap_malloc): Likewise. (build_allocator): Likewise. + (gnat_save_expr): New function. + (gnat_protect_expr): Rename from protect_multiple_eval. Early return + in common cases. Propagate TREE_READONLY onto dereferences. + (gnat_stabilize_reference_1): Move from trans.c file. + (gnat_stabilize_reference): Likewise. + +2010-04-09 Eric Botcazou + + * gcc-interface/gigi.h (gnat_mark_addressable): Rename parameter. + * gcc-interface/decl.c (maybe_variable): Do not set TREE_STATIC on _REF + node. Use the type of the operand to set TREE_READONLY. + * gcc-interface/trans.c (Identifier_to_gnu): Do not set TREE_STATIC on + _REF node. Do not overwrite TREE_READONLY. + (call_to_gnu): Rename local variable and fix various nits. In the + copy-in/copy-out case, build the SAVE_EXPR manually. + (convert_with_check): Call protect_multiple_eval in lieu of save_expr + and fold the computations. + (protect_multiple_eval): Always save entire fat pointers. + (maybe_stabilize_reference): Minor tweaks. + (gnat_stabilize_reference_1): Likewise. Do not deal with tcc_constant, + tcc_type and tcc_statement. + * gcc-interface/utils.c (convert_to_fat_pointer): Call + protect_multiple_eval in lieu of save_expr. + (convert): Minor tweaks. + (maybe_unconstrained_array): Do not set TREE_STATIC on _REF node. + (builtin_type_for_size): Call gnat_type_for_size directly. + * gcc-interface/utils2.c (contains_save_expr_p): Delete. + (contains_null_expr): Likewise + (gnat_build_constructor): Do not call it. + (compare_arrays): Deal with all side-effects, use protect_multiple_eval + instead of gnat_stabilize_reference to protect the operands. + (nonbinary_modular_operation): Call protect_multiple_eval in lieu of + save_expr. + (maybe_wrap_malloc): Likewise. + (build_allocator): Likewise. + (build_unary_op) : Do not set TREE_STATIC on _REF node. + (gnat_mark_addressable): Rename parameter. + +2010-04-08 Eric Botcazou + + * gcc-interface/ada-tree.h (TYPE_RETURNS_UNCONSTRAINED_P): Rename into. + (TYPE_RETURN_UNCONSTRAINED_P): ...this. + (TYPE_RETURNS_BY_REF_P): Rename into. + (TYPE_RETURN_BY_DIRECT_REF_P): ...this. + (TYPE_RETURNS_BY_TARGET_PTR_P): Delete. + * gcc-interface/gigi.h (create_subprog_type): Adjust parameter names. + (build_return_expr): Likewise. + * gcc-interface/decl.c (gnat_to_gnu_entity) : + Rename local variables. If the return Mechanism is By_Reference, pass + return_by_invisible_ref_p to create_subprog_type instead of toggling + TREE_ADDRESSABLE. Test return_by_invisible_ref_p in order to annotate + the mechanism. Use regular return for contrained types with non-static + size and return by invisible reference for unconstrained return types + with default discriminants. Update comment. + * gcc-interface/trans.c (Subprogram_Body_to_gnu): If the function + returns by invisible reference, turn the RESULT_DECL into a pointer. + Do not handle DECL_BY_REF_P in the CICO case here. + (call_to_gnu): Remove code handling return by target pointer. For a + function call, if the return type has non-constant size, generate the + assignment with an INIT_EXPR. + (gnat_to_gnu) : Remove dead code in the CICO case. + If the function returns by invisible reference, build the copy return + operation manually. + (add_decl_expr): Initialize the variable with an INIT_EXPR. + * gcc-interface/utils.c (create_subprog_type): Adjust parameter names. + Adjust for renaming of macros. Copy the node only when necessary. + (create_subprog_decl): Do not toggle TREE_ADDRESSABLE on the return + type, only change DECL_BY_REFERENCE on the RETURN_DECL. + (convert_from_reference): Delete. + (is_byref_result): Likewise. + (gnat_genericize_r): Likewise. + (gnat_genericize): Likewise. + (end_subprog_body): Do not call gnat_genericize. + * gcc-interface/utils2.c (build_binary_op) : New case. + (build_return_expr): Adjust parameter names, logic and comment. + +2010-04-07 Eric Botcazou + + * exp_pakd.adb (Create_Packed_Array_Type): Always use a modular type + if the size is small enough. Propagate the alignment if there is an + alignment clause on the original array type. + * gcc-interface/decl.c (gnat_to_gnu_entity) + Deal with under-aligned packed array types. Copy the size onto the + justified modular type and don't lay it out again. Likewise for the + padding type built for other under-aligned subtypes. + * gcc-interface/utils.c (finish_record_type): Do not set a default mode + on the type. -2009-10-16 Eric Botcazou - - * exp_dbug.ads: Adjust type names in comments. - * gcc-interface/decl.c (maybe_pad_type): Remove NAME_TRAILER parameter, - add new IS_COMPONENT_TYPE parameter. Adjust. Remove dead code. - (gnat_to_gnu_entity): Adjust for above change. - (gnat_to_gnu_component_type): Likewise. - (gnat_to_gnu_field): Likewise. - * gcc-interface/trans.c (call_to_gnu): Likewise. Do not unnecessarily - call max_size. - * gcc-interface/utils.c (finish_record_type): Remove obsolete code. - * gcc-interface/gigi.h (maybe_pad_type): Adjust prototype. - -2009-10-16 Joel Sherrill - - * s-osinte-rtems.ads: Add mutex type to pthread_mutexattr_t - * s-stchop-rtems.adb: Correct binding to rtems_stack_checker_is_blown. - -2009-10-13 Rainer Orth - - * env.c [__alpha__ && __osf__] (AES_SOURCE): Define. - -2009-10-10 Samuel Tardieu - - * sem_eval.adb: Give a more precise error message. - -2009-10-06 Samuel Tardieu - - PR ada/41383 - * a-rttiev.adb (Time_Of_Event): Return Time_First for unset event. - -2009-10-06 Samuel Tardieu - - PR ada/38333 - * sem_prag.adb (Process_Import_Or_Interface): Forbid an abstract - subprogram to be completed with a "pragma Import". - -2009-10-02 Eric Botcazou - - * gcc-interface/decl.c (gnat_to_gnu_entity) : - Generate an XVZ variable alongside the XVS type if the size is - not constant. - (maybe_pad_type): Minor tweak. - -2009-10-02 Eric Botcazou - - * gcc-interface/decl.c (check_ok_for_atomic): Do nothing if the type - doesn't come from source. - -2009-10-02 Eric Botcazou - - * gcc-interface/decl.c (gnat_to_gnu_component_type): Force at least - unit size for the component size of an array with aliased components. - (maybe_pad_type): Do not warn for MAX_EXPR. - -2009-09-29 Eric Botcazou - - * gcc-interface/decl.c (gnat_to_gnu_entity) : Factor out - common code processing the component type into... - : Likewise. - (gnat_to_gnu_component_type): ...this new static function. - (maybe_pad_type): Minor cleanup. - -2009-09-29 Eric Botcazou - - * gcc-interface/decl.c (gnat_to_gnu_entity) : Rewrite - the handling of constrained discriminated record subtypes. - (components_to_record): Declare the type of the variants and of the - qualified union. - (build_subst_list): Move around. - (compute_field_positions): Rename into... - (build_position_list): ...this. Return a TREE_VEC. - (annotate_rep): Adjust for above renaming. - (build_variant_list): New static function. - (create_field_decl_from): Likewise. - (get_rep_part): Likewise. - (get_variant_part): Likewise. - (create_variant_part_from): Likewise. - (copy_and_substitute_in_size): Likewise. - -2009-09-28 Olivier Hainque - - PR ada/41100 - * gcc-interface/targtyps.c (get_target_default_allocator_alignment): - Account for observable alignments out of default allocators. - -2009-09-28 Richard Henderson - - * gcc-interface/utils.c (gnat_install_builtins): Update call to - build_common_builtin_nodes. - -2009-09-26 Eric Botcazou - - * gcc-interface/decl.c (gnat_to_gnu_entity) : Filter out - negative size for the array dimensions like in the constrained case. - : Do not create an artificially non-constant high - bound if the low bound is non-constant. Minor tweaks. - - * gcc-interface/trans.c (lvalue_required_p): Add CONSTANT parameter - and turn ALIASED into a boolean parameter. Adjust calls to self. - : Return 1 for more attributes. - : Return 1 for non-constant objects. - : Return 1 for the LHS. - (Identifier_to_gnu): Adjust calls to lvalue_required_p. - (call_to_gnu): Be prepared for wrapped boolean rvalues. - -2009-09-25 Olivier Hainquqe - Eric Botcazou - - * gcc-interface/ada-tree.h (TYPE_REPRESENTATIVE_ARRAY): New language - specific node. Representative array type for VECTOR_TYPE entities. - * gcc-interface/utils.c (handle_vector_type_attribute): New handler. - Turn an ARRAY_TYPE entity into a VECTOR_TYPE. - (gnat_types_compatible_p): Handle VECTOR_TYPEs. - (convert): Likewise. Arrange to produce VECTOR_CST out of constant - array aggregates for VECTOR_TYPE entities. - (unchecked_convert): Likewise. - (maybe_vector_array): New function. If EXP has VECTOR_TYPE, return EXP - converted to the associated TYPE_REPRESENTATIVE_ARRAY. - (handle_pure_attribute, handle_sentinel_attribute, - handle_noreturn_attribute, handle_malloc_attribute, - handle_vector_size_attribute): Replace uses of qE format by qs. - Remove GCC_DIAG_STYLE definition. - * gcc-interface/trans.c (gnat_to_gnu) : Convert - vector input to representative array type on entry. - : Likewise. - * gcc-interface/gigi.h (maybe_vector_array): Declare. - (VECTOR_TYPE_P): New predicate. - * gcc-interface/misc.c (gnat_print_type): Handle VECTOR_TYPE. - -2009-09-24 Eric Botcazou - - * gcc-interface/ada.h: Fix outdated comment. - * gcc-interface/ada-tree.h (SET_TYPE_RM_VALUE): Use MARK_VISITED in - lieu of mark_visited. - * gcc-interface/gigi.h (mark_visited): Change type of parameter. - (MARK_VISITED): New macro. - (gnat_truthvalue_conversion): Delete. - * gcc-interface/decl.c (gnat_to_gnu_entity): Use MARK_VISITED in lieu - of mark_visited. - (annotate_rep): Fix formatting and tidy. - (compute_field_positions): Get rid of useless variable. - * gcc-interface/trans.c (gnat_to_gnu): Retrieve the Nkind of the GNAT - node only once. Use IN operator for the Nkind in more cases. - Remove calls to gnat_truthvalue_conversion. - (mark_visited): Change type of parameter and adjust. - (mark_visited_r): Dereference TP only once. - (add_decl_expr): Use MARK_VISITED in lieu of mark_visited. - * gcc-interface/utils2.c (gnat_truthvalue_conversion): Delete. - (build_binary_op): Remove calls to gnat_truthvalue_conversion. - (build_unary_op): Likewise. - -2009-09-24 Dave Korn - - * gcc-interface/Makefile.in (LIBGNAT_TARGET_PAIRS): Simplify test for - a-except% in target pairs list; don't (implicitly) compare whitespace. - -2009-09-24 Jakub Jelinek - - * gcc-interface/utils.c (gnat_pushdecl): Don't set - DECL_NO_STATIC_CHAIN, set DECL_STATIC_CHAIN for - nested functions. - -2009-09-21 Joel Sherrill - - * s-osinte-rtems.ad[bs]: Get_Page_Size cannot return 0. - Bind to getpagesize() in RTEMS 4.10 and newer. - -2009-09-21 Rainer Orth - - * env.c [__alpha__ && __osf__] (_BSD): Define. - * init.c [__alpha__ && __osf__] (__gnat_error_handler): Cast msg - to const char *. - -2009-09-18 Pascal Obry - - * mingw32.h: Activate Unicode support for x86-64 Windows platform. - -2009-09-18 Vadim Godunko - - * s-oscons-tmplt.c: Add circuit for handling IOV_MAX macro on IRIX. - -2009-09-18 Javier Miranda - - * exp_aggr.adb (Backend_Processing_Possible): Disable backend - processing for array aggregates in the VM backend if the array has - aliased components. - -2009-09-18 Ed Schonberg - - * sem_ch4.adb (Analyze_Indexed_Component): Emit error if the type of - the prefix indicates a previous semantic error, and this is the first - error in the program. - -2009-09-18 Bob Duff - - * gnat_ugn.texi: Minor editing. - -2009-09-18 Vincent Celier - - * prj.ads, prj.adb (Project_Data): New component - Imported_Directories_Switches. - -2009-09-18 Pascal Obry - - * mingw32.h: Include standard _mingw.h file. - Define _WIN32_WINNT only if not already defined. - -2009-09-18 Thomas Quinot - - * g-socket.adb (Is_Open): New function indicating whether a - Selector_Type object is open. - -2009-09-18 Vincent Celier - - * osint-c.adb (Create_Output_Library_Info): Make sure that the ALI file - is deleted before creating it. - -2009-09-18 Robert Dewar - - * bindgen.adb: Minor reformatting - -2009-09-18 Arnaud Charlet - - * s-taprop-tru64.adb, s-taprop-linux.adb, s-taprop-solaris.adb, - s-taprop-irix.adb, s-taprop-posix.adb (Abort_Task): Do nothing if no - signal handler is installed. - * s-tassta.adb (Finalize_Global_Tasks): Do not wait for independent - tasks if Abort_Task_Interrupt cannot be used. - -2009-09-18 Vincent Celier - - * prj-tree.ads: Minor comment update - -2009-09-17 Bob Duff - - * g-socket.ads: Document the fact that Close_Selector has no effect on - a closed selector. - * g-socket.adb: Raise an exception when a Selector that should be open - is closed. - (Check_Selector): Declare RSig as a constant rather than a renames, - less confusing. - -2009-09-17 Robert Dewar - - * exp_ch9.adb, exp_ch5.adb, exp_ch4.adb, prj-conf.adb, prj-env.ads, - prj-ext.adb, prj-ext.ads, prj-pars.adb, prj-part.adb, prj-proc.adb, - prj-tree.ads: Minor reformatting - -2009-09-17 Emmanuel Briot - - * prj-conf.adb, prj-env.adb, prj-env.ads (Create_Temp_File): Moved to - spec. - (Do_Autoconf): If the object directory does not exists, create auto.cgpr - in a temporary directory instead - -2009-09-17 Bob Duff - - * a-dynpri.adb (Set_Priority): Don't do anything if the task is already - terminated. - (Get_Priority): Correct message for "terminated" case -- it said "null". - -2009-09-17 Robert Dewar - - * exp_ch6.adb: Minor reformatting - -2009-09-17 Emmanuel Briot - - * gnatcmd.adb, make.adb, prj-part.adb, prj-ext.adb, prj-ext.ads, - switch-m.adb, switch-m.ads, clean.adb, prj-tree.ads - (Project_Node_Tree_Data.Project_Path): New field. - - * prj-conf.adb (Do_Autoconf): Remove "creating auto.cgpr" message - -2009-09-17 Emmanuel Briot - - * prj-ext.adb, prj-ext.ads, makeutl.adb (Is_External_Assignment): - Remove duplicate code. - (Prj.Ext): Fix memory leak - (Check): Now allow the syntax "-Xfoo=" to set an empty value to the - variable. This was previously allowed in the code in - Is_External_Assignment, and some tests rely on it - -2009-09-17 Bob Duff - - * gnat_rm.texi, s-oscons-tmplt.c: Minor typo - -2009-09-17 Emmanuel Briot - - * gnatcmd.adb, prj-proc.adb, make.adb, prj-ext.adb, prj-ext.ads, - makeutl.adb, makeutl.ads, clean.adb, prj-pars.adb, prj-pars.ads, - prj-conf.adb, prj-conf.ads, prj-tree.adb, prj-tree.ads, prj-proc.ads, - prj-nmsc.ads (Add, Value_Of, Reset): new parameter Tree. - Scenario variables are now specific to each project tree loaded in - memory. - Code clean ups. - -2009-09-17 Javier Miranda - - * exp_disp.adb (Make_DT): Remove wrong line of code that was - undocumented and probably added by mistake. - -2009-09-16 Eric Botcazou - - * gcc-interface/trans.c (Attribute_to_gnu) : Strip - conversions between original and packable version of types from - the expression. - -2009-09-16 Eric Botcazou - - * gcc-interface/decl.c (gnat_to_gnu_field): Add DEBUG_INFO_P parameter. - If a padding type was made for the field, declare it. - (components_to_record): Add DEBUG_INFO_P parameter. Adjust call - to gnat_to_gnu_field and call to self. - (gnat_to_gnu_entity) : Do not redeclare padding types. - : Likewise. - Adjust calls to gnat_to_gnu_field and components_to_record. - -2009-09-16 Robert Dewar - - * prj-nmsc.adb: Minor reformatting - -2009-09-16 Ed Schonberg - - * exp_ch4.adb (Expand_N_Conditional_Expression): If the type of the - expression is a by-reference type (tagged or inherently limited) - introduce an access type to capture references to the values of each - branch of the conditional. - -2009-09-16 Emmanuel Briot - - * prj-proc.adb, prj-part.adb, prj-tree.adb, prj-tree.ads - (Project_Name_And_Node.Display_Name): new field - The display name of a project (as written in the .gpr file) is now - computed when the project file itself is parsed, not when it is - processed. - -2009-09-16 Thomas Quinot - - * freeze.adb, exp_intr.adb (Expand_Intrinsic_Call): Leave calls to - intrinsics untouched (to be expanded later on by gigi) if an external - name has been specified. - (Freeze_Entity): Do not generate a default external name for - imported subprograms with convention Intrinsic (so that the above code - can identify the case where an external name has been explicitly - provided). - - * s-oscons-tmplt.c: Quote TARGET_OS early so that it is not erroneously - replaced by something else due to an existing #define clause. - -2009-09-16 Ed Schonberg - - * sinfo.ads, sinfo.adb (Is_Accessibility_Actual): New flag on - Parameter_Association node, created for the extra actual generated for - an access parameter of a function that dispatches on result, to prevent - double generation of such actuals when the call is rewritten is a - dispatching call. - * exp_ch6.adb (Expand_Call): Set Is_Accessibility_Actual when needed. - * exp_disp.adb (Expand_Dispatching_Call): Do not transfer extra actuals - that carry this flag when rewriting the original call as a dispatching - call, after propagating the controlling tag. - -2009-09-16 Vincent Celier - - * prj-nmsc.adb (Add_Source): New parameter Source_Dir_Rank to be put - in the source data. - (Check_File): New parameter Source_Dir_Rank, to check if a duplicate - source is allowed. - (Find_Source_Dirs): New parameter Rank to be recorded with the source - directories. - (Search_Directories): Call Check_File with the rank of the directory - * prj.adb (Project_Empty): Add new component Source_Dir_Ranks - (Free): Free also Number_Lists - (Reset): Init also Number_Lists - * prj.ads (Number_List_Table): New dynamic table for lists of numbers - (Source_Data): New component Source_Dir_Rank. Remove component - Known_Order_Of_Source_Dirs, no longer needed. - (Project_Data): New component Source_Dir_Ranks - (Project_Tree_Data): New components Number_Lists - -2009-09-16 Vincent Celier - - * gprep.adb (Yes_No): New global constant - Unix_Line_Terminators: New global Boolean variable - (Process_One_File): Create the out file with a "Text_Translation=" form - that depends on the use of option -T. - (Scan_Command_Line): Add option -T - (Usage): Add line for option -T - -2009-09-16 Ed Schonberg - - * exp_disp.ads, exp_disp.adb (Is_Predefined_Internal_Operation): New - predicate that describes a proper subset of - Is_Predefined_Dispatching_Operation and excludes stream operations, - which can be overridden by the user. - * sem_ch6.adb (Create_Extra_Formals): use - Is_Predefined_Internal_Operation, so that stream operations get extra - formals. - * exp_ch6.adb (Prevent double generation of extra actuals in calls to - 'Input, which may be expanded twice, first as a function call and then - as a dispatching call. - -2009-09-16 Thomas Quinot - - * s-oscons-tmplt.c (Target_OS, Target_Name): New constants. - * g-expect.adb (Set_Up_Child_Communications): Use - System.OS_Constants.Target_OS to determine whether running on Windows. - -2009-09-14 Richard Henderson - - * gcc-interface/trans.c (Pragma_to_gnu): Use build5 for ASM_EXPR. - -2009-09-14 Eric Botcazou - - * exp_dbug.ads (Packed Array Encoding): Document the new encoding for - the unconstrained case. - * gcc-interfaces/decl.c (gnat_to_gnu_entity) : Implement - the encoding. Do not give a name to the pointer type to the XUT type. - * gcc-interfaces/utils.c (gnat_pushdecl): Propagate DECL_ORIGINAL_TYPE - for fat pointer types, if any. Make sure DECL_ARTIFICIAL is cleared - on nodes with DECL_ORIGINAL_TYPE set. - (update_pointer_to): Set DECL_ORIGINAL_TYPE to the original pointer - for fat pointer types. Make sure DECL_ARTIFICIAL is cleared. - -2009-09-14 Richard Henderson - - * gcc-interface/misc.c (gnat_init_gcc_eh): Don't call - default_init_unwind_resume_libfunc. - * gcc-interface/trans.c (Exception_Handler_to_gnu_zcx): Use - __builtin_eh_pointer. - * gcc-interface/utils.c (gnat_install_builtins): Update call - to build_common_builtin_nodes. - -2009-09-13 Richard Guenther - Rafael Avila de Espindola - - * gcc-interface/misc.c (gnat_init_gcc_eh): Do not set variables - eh_personality_libfunc and lang_eh_runtime_type. - (LANG_HOOKS_EH_PERSONALITY): Define. - (gnat_eh_personality_decl): New static variable. - (gnat_eh_personality): New static function. - Include gt-ada-misc.h. - * gcc-interface/Make-lang.in (misc.o): Add gt-ada-misc.h dependency. - * gcc-interface/config-lang.in (gtfiles): Add misc.c. - -2009-09-10 Rainer Orth - - PR ada/18302 - * gcc-interface/Make-lang.in (check-acats): Export rootme, EXPECT. - -2009-09-08 Eric Botcazou - - * gcc-interface/decl.c (gnat_to_gnu_entity) : Tidy - flow of control. - Avoid useless work when processing the Treat_As_Volatile flag. - -2009-09-08 Eric Botcazou - - * gcc-interface/targtyps.c: Reorder include directives. - -2009-09-07 Laurent GUERBY - - * gcc-interface/targtyps.c: Add missing include for tm_p.h. - * gcc-interface/Make-lang.in: Update dependencies. - -2009-09-07 Laurent GUERBY - - * make.adb: Add missing documentation for multilib handling. - -2009-09-03 Diego Novillo - - * gcc-interface/misc.c (lang_hooks): Remove const qualifier. - -2009-09-02 Richard Henderson - - * tb-gcc.c (__gnat_backtrace): Mark all arguments unused. - -2009-09-02 Olivier Hainque - - * init.c (__gnat_error_handler, AIX): Add ATTRIBUTE_UNUSED on si - and uc arguments. - -2009-09-02 Olivier Hainque - - * gcc-interface/decl.c (cannot_be_superflat_p): Handle - Signed_Integer_Type_Definition Scalar_Ranges. - -2009-09-02 Eric Botcazou - - * gcc-interface/trans.c (gnat_gimplify_expr) : Gimplify the - SAVE_EXPR built for misaligned arguments. Remove redundant stuff. - (addressable_p): Return true for more rvalues. - -2009-09-01 Jakub Jelinek - - * gcc-interface/utils2.c (maybe_wrap_malloc, maybe_wrap_free): Cast - POINTER_SIZE to HOST_WIDE_INT. - -2009-09-01 Richard Guenther - - * gcc-interface/misc.c (LANG_HOOKS_MARK_ADDRESSABLE): Remove. - -2009-08-25 Eric Botcazou - - * gcc-interface/trans.c (call_to_gnu): Tidy. - (gnat_to_gnu) : Set TYPE_ARRAY_MAX_SIZE if the slice has - non-constant size but the array itself has constant size. - * gcc-interface/utils.c (convert_vms_descriptor64): Fix type - consistency error. - (convert_vms_descriptor32): Likewise. - -2009-08-22 Aurelien Jarno - - * gcc-interface/Makefile.in: Add Ada support for - GNU/kFreeBSD x86_64. - * system-freebsd-x86_64.ads: New file based on - system-freebsd-x86.ads. - -2009-08-20 Eric Botcazou - - * gcc-interface/utils.c (convert): In the padded case, do the final - conversion as an unchecked conversion if the underlying types are - array types with variable size. - -2009-08-20 Eric Botcazou - - * gcc-interface/ada-tree.h (SET_TYPE_RM_VALUE): Mark the expression - as visited. - * gcc-interface/misc.c (gnat_get_subrange_bounds): Always return the - bounds. - * gcc-interface/trans.c (add_decl_expr): Do not mark gigi-specific - fields. - (gnat_gimplify_expr) : New case. - -2009-08-17 Aurelien Jarno - - * s-osinte-kfreebsd-gnu.ads (SA_ONSTACK): New constant. - (stack_t): New record type. - (sigaltstack): New imported function. - (Alternate_Stack): New imported variable. - (Alternate_Stack_Size): New constant. - -2009-08-17 Vasiliy Fofanov - - * a-calend-vms.adb: Fix typo. - -2009-08-17 Tristan Gingold - - * s-taprop-posix.adb: Round up the stack size to avoid failure on - Darwin. - -2009-08-17 Gary Dismukes - - * sem_cat.adb (Validate_Static_Object_Name): Update comment. - -2009-08-17 Vincent Celier - - * make.adb (Arguments_Collected): Unneeded, removed - (Change_To_Object_Directory): Use Project directly. Add pragma Assert to - ensure caller does not pass in No_Project. - (Compile): Add new parameter Project. Let procedure - Collect_Arguments_And_Compile provide the proper value. - - * switch-c.adb: Add documentation for -gnatea and -gnatez - -2009-08-17 Ben Brosgol - - * gnat_ugn.texi: Changed name of package in SAL example, to avoid - clash with Ada 2005 reserved word (interface). - -2009-08-17 Robert Dewar +2010-04-07 Eric Botcazou - * a-crbtgk.adb, a-crdlli.adb, a-direct.adb, a-caldel-vms.adb, - a-calend-vms.adb, a-calfor.adb, a-cdlili.adb, a-chahan.adb, - a-cidlli.adb, a-coinve.adb, a-comlin.adb: Minor code reorganization - (use conditional expressions). + * gcc-interface/decl.c (gnat_to_gnu_entity) : Set default + alignment on the RETURN type built for the Copy-In Copy-Out mechanism. -2009-08-17 Robert Dewar +2010-04-07 Eric Botcazou - * make.adb: Add ??? comment - * tbuild.adb: Minor reformatting + * gcc-interface/trans.c (call_to_gnu): In the return-by-target-ptr case + do not set the result type if there is a specified target and do not + convert the result in any cases. + (protect_multiple_eval): Make direct SAVE_EXPR for CALL_EXPR. + (maybe_stabilize_reference) : Merge with CALL_EXPR. -2009-08-17 Thomas Quinot +2010-03-10 Eric Botcazou - * exp_ch4.adb (Exp_Ch4.Expand_N_Slice.Make_Temporary): Rename to - Make_Temporary_For_Slice to avoid confusion with Tbuild.Make_Temporary. - Use Tbuild.Make_Temporary to create entity for the temporary. + * gcc-interface/Makefile.in (SPARC/Solaris): Use sparcv8plus. -2009-08-17 Arnaud Charlet +2010-02-27 Eric Botcazou - * make.adb (Process_Multilib, Scan_Make_Arg): Refine previous change - and ignore -mieee switch to avoid spawning an extra gcc in this case. + PR ada/42253 + * gcc-interface/utils2.c (build_binary_op) : Assert that fat + pointer base types are variant of each other. Apply special treatment + for null to fat pointer types in all cases. -2009-08-17 Thomas Quinot +2010-01-28 Pascal Obry - * tbuild.adb: Minor reformatting + * s-win32.ads: Add some missing constants. -2009-08-17 Ed Schonberg +2010-01-28 Vincent Celier - * exp_ch3.adb (Build_Discriminant_Formals): If the discriminals already - exist, as is the case for synchronized types, use the type of the - discriminal in the parameter specification, to prevent a spurious - subtype mismatch in gigi. + * prj-attr-pm.adb (Add_Attribute): Do nothing if To_Package is + Unknown_Package. -2009-08-17 Robert Dewar +2010-01-28 Robert Dewar - * prj-env.adb: Minor reformatting - * make.adb: Minor reformatting - Comment updates + * gnat_rm.texi: Minor correction -2009-08-17 Javier Miranda +2010-01-27 Pascal Obry - * exp_ch7.adb (Wrap_Transient_Expression): Update comments. + * g-awk.adb: ensure that an AWK session is reusable. -2009-08-17 Emmanuel Briot +2010-01-27 Vasiliy Fofanov - * prj-part.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-conf.adb - (Processing_Flags.Require_Obj_Dirs): new field, which controls whether - object directories must be present. In the case of gprclean at least, - these are optional (if they do not exist there is nothing to clean) + * g-regist.adb (For_Every_Key): Fix previous change. + Minor reformatting. -2009-08-17 Robert Dewar +2010-01-27 Thomas Quinot - * prj-env.adb: Minor reformatting - * sem_ch3.adb: Minor reformatting + * lib-writ.ads: Current version of spec for new N (note) ALI lines -2009-08-17 Hristian Kirtchev +2010-01-27 Yannick Moy - * sysdep.c (__gnat_localtime_tzoff): VxWorks case - Flip the sign of - the time zone since VxWorks chose positive values to represent west - time zones and negative for east zones. + * a-cdlili.adb (Insert): Correct exception message when cursor + designates wrong list. -2009-08-17 Ed Schonberg +2010-01-27 Vincent Celier - * sem_ch3.adb (Access_Definition): Do not create an Itype reference for - an anonymous access type whose designated type is generic. + * gnatcmd.adb: When there is only one main specified, the package + support Switches (
) and attribute Switches is specified for the + main, use these switches, instead of Default_Switches ("Ada"). -2009-08-17 Arnaud Charlet +2010-01-27 Robert Dewar - * comperr.adb (Compiler_Abort): Do not generate a bug box when in - codepeer mode, friendlier. + * sem_prag.adb, par-prag.adb, snames.ads-tmpl: pragma Dimension initial + implementation. + * exp_disp.adb: Minor reformatting -2009-08-10 Laurent GUERBY +2010-01-27 Tristan Gingold - * make.adb: Handle multilib - -2009-08-10 Vincent Celier + * seh_init.c: Use __ImageBase instead of _ImageBase. - * prj-env.adb (Create_Config_Pragmas_File.Write_Temp_File): Do not use - the temporary file name in the error message when the temporary file - cannot be created. +2010-01-27 Javier Miranda -2009-08-10 Yannick Moy + * exp_disp.ads, exp_disp.adb (Expand_Interface_Thunk): Modify the + profile of interface thunks. The type of the controlling formal is now + the covered interface type (instead of the target tagged type). - * gnat_ugn.texi: Fix typo +2010-01-27 Sergey Rybin -2009-08-10 Robert Dewar + * gnat_rm.texi, gnat_ugn.texi: Update gnatcheck doc. - * exp_ch7.adb: Add ??? comment for last change +2010-01-27 Robert Dewar -2009-08-10 Vincent Celier + * sinput.ads, sinput.adb (Sloc_Range): Applies to all nodes, formal + changed from Expr to N. - * prj-env.adb (Add_To_Buffer): New procedure - (Create_Config_Pragmas_File): Write to temporary file in one shot - (Create_Mapping_File): Ditto - (Set_Ada_Paths): Ditto +2010-01-26 Thomas Quinot -2009-08-10 Vincent Celier + * gnat_ugn.texi: Adjust documentation of -gnatz switches. + * usage.adb: Replace line for -gnatz with two lines for -gnatzc and + -gnatzr. - PR ada/17566 - * xref_lib.adb (Print_Xref): Make sure that there is at least one space - between a declaration name and its type. +2010-01-26 Vincent Celier -2009-08-07 Javier Miranda + * prj-attr.adb: Add new attribute Library_Install_Name_Option + Replace attribute Run_Path_Origin_Supported with Run_Path_Origin + * prj-nmsc.adb (Process_Project_Level_Simple_Attributes): Process + attributes Run_Path_Option and Library_Install_Name_Option. + * prj.ads (Project_Configuration): Replace component + Run_Path_Origin_Supported with component Run_Path_Origin. Add new + component Library_Install_Name_Option. + * snames.ads-tmpl: Add new standard name Library_Install_Name_Option + Replace Run_Path_Origin_Supported with Run_Path_Origin - * exp_ch7.adb (Wrap_Transient_Expression): Add missing adjustment of - SCIL node. +2010-01-26 Ed Schonberg -2009-08-07 Robert Dewar + * sem_ch8.adb (Use_One_Package): Within an instance, an actual package + is not hidden by a homograph declared in another actual package. - * sem_warn.adb (Warn_On_Unreferenced_Entity): Fix obvious typo. +2010-01-26 Robert Dewar -2009-08-07 Vincent Celier + * par_sco.adb (Traverse_Declarations_Or_Statements): Only generate + decisions for pragmas Assert, Check, Precondition, Postcondition if + -gnata set. + * scos.ads: Update comments. + * get_scos.adb, put_scos.adb: Minor fix to code reading statement SCOs. + Also remove obsolete code for CT (exit point) SCOs. - * gnatcmd.adb (GNATCmd): If -U is not used, one and only one main is - specified on the command line and there are switches in the Compiler - package of the project file, use these compilation switches to invoke - the tool. +2010-01-26 Thomas Quinot -2009-08-07 Ben Brosgol + * switch-c.adb: Fix handling of -gnatz* - * gnat_ugn.texi: Wordsmithing edits at beginning of gnatcheck chapter. +2010-01-26 Robert Dewar -2009-08-07 Ed Schonberg + * par_sco.adb (Traverse_Declarations_Or_Statements): Separate F/W + qualifiers for FOR/WHILE loops + * scos.ads: Use separate type letters F/W for for/while loops - * sem_ch10.adb (Analyze_Proper_Body): Indicate name of missing subunit - even if not in main unit, to simplify debugging. +2010-01-26 Robert Dewar -2009-08-07 Arnaud Charlet + * get_scos.adb (Get_SCOs): Implement new form of CS entries (multiple + entries per line, one for each statement in the sequence). + * par_sco.adb (Traverse_Declarations_Or_Statements): Increase array + size from 100 to 10_000 for SC_Array to avoid any real possibility of + overflow. Output decisions in for loops. + Exclude labels from CS lines. + * scos.ads: Clarify that label is not included in the entry point - * gcc-interface/Makefile.in: Fix handling of GCC_FOR_TARGET. - * gcc-interface/Make-lang.in: Update dependencies. +2010-01-26 Robert Dewar -2009-08-07 Robert Dewar + * par_sco.adb (Traverse_Declarations_Or_Statments): Implement new + format of statement sequence SCO entries (one location/statement). + * put_scos.adb (Put_SCOs): Implement new format of CS lines + * scos.ads: Update comments. + * sem_eval.adb: Minor reformatting. - * types.ads: Minor reformatting - * sem_ch12.ads (Check_Generic_Child_Unit): Add missing documentation. - * frontend.adb, sem_warn.adb, sem_warn.ads: Fix spelling of - Output_Non_Modified_In_Out_Warnings. - * sem_ch13.adb: Remove ??? comment. +2010-01-26 Robert Dewar -2009-08-07 Vincent Celier + * par_sco.ads, par_sco.adb (Set_Statement_Entry): New handling of exits + (Extend_Statement_Sequence): New procedures + (Traverse_Declarations_Or_Statements): New handling for exits. - * mlib-prj.adb (Build_Library): Include binder generate object file - for SAL when library name is only one character. +2010-01-26 Robert Dewar -2009-08-07 Thomas Quinot + * par_sco.adb (Traverse_Declarations_Or_Statements): Add processing for + Case. - * targparm.adb: Minor reformatting - * sem.adb: Minor reformatting - * exp_ch4.adb (Expand_N_Conditional_Expression): Add comment. +2010-01-26 Robert Dewar -2009-08-07 Emmanuel Briot + * par_sco.adb (Is_Logical_Operator): Exclude AND/OR/XOR + * scos.ads: Clarify handling of logical operators - * prj-conf.adb: Remove duplicate directory separator in the output when - an object directory does not exist. +2010-01-26 Arnaud Charlet -2009-08-07 Robert Dewar + * s-tpoben.adb: Update comments. - * exp_util.adb: Minor reformatting +2010-01-26 Robert Dewar -2009-08-07 Vincent Celier + * freeze.adb (Set_Small_Size): Don't set size if alignment clause + present. - * mlib-prj.adb (Build_Library): Fixed bug in name of ALI file (wrong - length used). +2010-01-26 Robert Dewar -2009-08-07 Ed Schonberg + * scos.ads: Clean up documentation, remove obsolete XOR references +2010-01-26 Vincent Celier - * exp_ch9.adb (Expand_N_Protected_Type_Declaration): In Ravenscar mode, - detect non-static private components that will violate restriction - No_Implicit_Heap_Allocation. + * gnat_ugn.texi: Complete documentation on the restrictions for + combined options in -gnatxxx switches. + Fix typo. -2009-08-07 Ben Brosgol +2010-01-26 Arnaud Charlet - * gnat_ugn.texi: Edited Rule Exemption section of gnatcheck chapter. + * s-tpoben.adb (Initialize_Protection_Entries): If a PO is created from + a controlled operation, abort is already deferred at this point, so we + need to use Defer_Abort_Nestable. -2009-08-02 Eric Botcazou +2010-01-26 Vincent Celier - * gcc-interface/gigi.h (end_subprog_body): Tweak comment. - * gcc-interface/utils.c (end_subprog_body): Likewise. - * gcc-interface/trans.c (gigi): Likewise. - (gnat_to_gnu): Likewise. + * prj-conf.adb (Get_Config_Switches): Check for a default language for + a project extending a project with no languages. -2009-07-30 Ben Brosgol +2010-01-26 Vincent Celier - * gnat_ugn.texi: Correct minor texi glitch. + * switch-c.adb (Scan_Front_End_Switches): Take into account options + that follow -gnatef. + Allow -gnateG to be followed by other options. -2009-07-30 Ed Schonberg +2010-01-26 Robert Dewar - * exp_util.adb (Expand_Subtype_From_Expr): If the type of the - expression has an underlying representation that is an unchecked union, - there is no subtype to build. + * s-commun.ads, s-osprim-mingw.adb, s-stchop-vxworks.adb, sem_aggr.adb, + s-vxwext.adb, sem_ch10.adb, sem_eval.adb, sem_prag.adb: Minor + reformatting. -2009-07-30 Robert Dewar +2010-01-26 Vasiliy Fofanov - * a-teioed.adb, exp_disp.adb, s-linux-hppa.ads, s-linux.ads, - s-tasini.adb, sem_ch13.adb, sem_ch3.adb, sem_ch3.ads, sem_ch6.adb, - sem_ch7.adb, adaint.c: Minor reformatting + * g-regist.adb, g-regist.ads (For_Every_Key): New generic procedure + that allows to iterate over all subkeys of a key. -2009-07-29 Javier Miranda +2010-01-26 Ed Falis - * sem_ch3.ads, sem_ch3.adb (Add_Internal_Interface_Entities): Routine - moved from the expander to the semantic analyzer to allow the - generation of these internal entities when compiling with no code - generation. Required by ASIS. - * sem.adb (Analyze): Add processing for N_Freeze_Entity nodes. - * sem_ch13.ads, sem_ch13.adb (Analyze_Freeze_Entity): New subprogram. - * exp_ch3.adb (Add_Internal_Interface_Entities): Moved to sem_ch3 - (Expand_Freeze_Record_Type): Remove call to - Add_Internal_Interface_Entities because this routine is now called at - early stage --when the freezing node is analyzed. + * sysdep.c: enable NFS for VxWorks MILS + * env.c: enable __gnat_environ for VxWorks MILS + * gcc-interface/Makefile.in: Add VxWorks MILS target pairs. -2009-07-29 Robert Dewar +2010-01-25 Bob Duff - * exp_atag.ads, exp_atag.adb, s-tasini.adb, s-soflin.ads, - exp_disp.adb, g-socket.adb: Minor reformatting + * sem_aggr.adb (Resolve_Array_Aggregate): Check for the case where this + is an internally-generated positional aggregate, and the bounds are + already correctly set. We don't want to overwrite those bounds with + bounds determined by context. -2009-07-29 Ed Schonberg +2010-01-25 Robert Dewar - * sem_ch7.adb (New_Private_Type): Create class-wide type after other - attributes have been established, so that they are all inherited by the - class-wide type. - * sem_cat.adb (Validate_Remote_Access_Object_Type_Declaration): Handle - properly named subtypes of class-wide types. + * g-sercom.ads, gnatcmd.adb, gnatlink.adb, a-ststio.adb, exp_ch6.adb, + exp_ch9.adb, g-sechas.ads: Minor reformatting. -2009-07-29 Ed Schonberg +2010-01-25 Thomas Quinot - * sem_ch6.adb (Check_Overriding_Indicator): Handle properly overriding - indicators on user-defined operators. + * s-commun.adb (Last_Index): Count must be converted to SEO (a signed + integer type) before subtracting 1, otherwise the computation may wrap + (because size_t is modular) and cause the conversion to fail. -2009-07-29 Vadim Godunko +2010-01-25 Ed Falis - * g-socket.adb (Receive_Vector): Add comment. + * sysdep.c, init.c: Adapt to support full run-time on VxWorks MILS. -2009-07-29 Javier Miranda +2010-01-25 Vincent Celier - * frontend.adb (Frontend): Code cleanup. - * exp_atag.ads, exp_atag.adb (Build_Get_Predefined_Prim_Op_Address): - Rewriten as a procedure because it a new out-mode parameters to - keep up-to-date the controlling tag node in the caller. - (Build_Get_Prim_Op_Address): Rewriten as a procedure because it has a - new out-mode parameter to keep up-to-date the controlling tag node in - the caller. - * exp_ch7.adb, sem_ch5.adb, exp_util.adb, sem_util.adb, exp_ch4.adb, - exp_ch6.adb, sem_ch4.adb, exp_ch3.adb: Add new dependency on new - package Sem_SCIL. - * sem_aux.ads, sem_aux.adb (First_Non_SCIL_Node): Removed. Routine - available in new package Sem_SCIL. - (Next_Non_SCIL_Node): Ditto. - * exp_disp.adb (Adjust_SCIL_Node): Removed. Routine available in new - package Sem_SCIL. - (Expand_Dispatching_Call): Update call to modified Exp_Atags routines - plus complete decoration of SCIL dispatching node. - (Find_SCIL_Node): Removed. Routine available in new package Sem_SCIL. - * exp_disp.ads (Adjust_SCIL_Node): Removed. Routine available in new - package Sem_SCIL. - (Find_SCIL_Node): Removed. Routine available in new package Sem_SCIL. - * exp_ch3.adb (Build_Init_Procedure): Fix comment. - * sem_scil.ads, sem_scil.adb: New files. - * gcc-interface/Make-lang.in (GNAT_ADA_OBJS): Addition of sem_scil.o. - Update dependencies. + * prj-attr.adb: New attribute Run_Path_Origin_Required + * prj-nmsc.adb (Process_Project_Level_Simple_Attributes): Process new + attribute Run_Path_Origin_Required. + * prj.ads (Project_Configuration): New component + Run_Path_Origin_Supported. + * snames.ads-tmpl: New standard name Run_Path_Origin_Required -2009-07-28 Robert Dewar +2010-01-25 Ed Schonberg - * adaint.h, einfo.ads, prj.adb, sem_util.adb, makeutl.ads, - makeutl.adb: Minor reformatting & code reorganization - * sem_ch3.adb: Minor reformatting. - Fix spelling error (constraint for constrain) in error msg. + * sem_aggr.adb (Resolve_Array_Aggregate): If the bounds in a choice + have errors, do not continue resolution of the aggregate. + * sem_eval.adb (Eval_Indexed_Component): Do not attempt to evaluate if + the array type indicates an error. -2009-07-28 Emmanuel Briot +2010-01-25 Bob Duff - * make.adb, makeutl.adb, makeutl.ads (Project_Tree): Duplicates the - global variable that also exists in makeutl.ads, and that some routines - in that package use already. - (Check): Moved part of the code to makeutl.adb for better sharing with - gprbuild. + * sinfo.ads: Minor comment fixes. -2009-07-28 Arnaud Charlet +2010-01-25 Bob Duff - * gcc-interface/Make-lang.in: Update dependencies. + * exp_ch4.adb, exp_aggr.adb: Minor comment fixes and code clean up. -2009-07-28 Emmanuel Briot +2010-01-25 Arnaud Charlet - * prj.adb, prj.ads (Compute_All_Imported_Projects): Make sure the - importing project does not end up in the list, in the case of extending - projects. - * make.adb, makeutl.adb, makeutl.ads (File_Not_A_Source_Of): Moved to - makeutl.ads, for better sharing with gprbuild. + * gnatvsn.ads (Current_Year): Update. -2009-07-28 Arnaud Charlet +2010-01-25 Florian Villoing * gnat_ugn.texi: Fix typo. -2009-07-28 Ed Schonberg - - * sem_ch3.adb (Build_Derived_Concurrent_Type): Handle properly a - derivation that renames some discriminants and constrain others. - * exp_ch9.adb (Build_Protected_Subprogram_Call): If the type of the - prefix is a derived untagged type, convert to the root type to conform - to the signature of the protected operations. - -2009-07-28 Robert Dewar - - * sinfo.ads: Update comments. - * exp_attr.adb: Minor reformatting - -2009-07-28 Ed Schonberg - - * sem_aggr.adb (Get_Value): A named association in a record aggregate - should be treated as a modification of the named component, not as a - reference. - -2009-07-28 Quentin Ochem - - * prj-tree.ads, prj-tree.adb (Free): Minor editing. - * prj.ads, prj.adb (Image): Ditto. - -2009-07-28 Arnaud Charlet - - * frontend.adb: Minor reformatting. - (Frontend): Only call Check_SCIL_Nodes if assertions are enabled, - for efficiency. - -2009-07-28 Bob Duff - - * exp_attr.adb (Expand_Access_To_Protected_Op): Use 'Access instead of - 'Address to get a pointer to the protected body wrapper. - -2009-07-28 Javier Miranda - - * gnat1drv.adb (Adjust_Global_Switches): Disable generation of SCIL - nodes if we are not generating code. - * frontend.adb (Check_SCIL_Node): New subprogram. Used to check - attribute SCIL_Related_Node of SCIL dispatching nodes. - (Check_SCIL_Nodes): New instantiation of Traverse_Proc. - * sinfo.ads (Is_SCIL_Node,Set_Is_SCIL_Node): Removed - (SCIL_Nkind,Set_SCIL_Nkind): Removed. - (SCIL_Entity): Update documentation. - (SCIL_Related_Node): Update documentation. - (SCIL_Controlling_Tag): New attribute. - (SCIL_Target_Prim): Update documentation. - (N_Null_Statement): Remove attributes associated with SCIL nodes. - (N_SCIL_Dispatch_Table_Object_Init): New node. - (N_SCIL_Dispatch_Table_Tag_Init): New node. - (N_SCIL_Dispatching_Call): New node. - (N_SCIL_Tag_Init): New node. - * sinfo.adb (Is_SCIL_Node,Set_Is_SCIL_Node): Removed - (SCIL_Nkind,Set_SCIL_Nkind): Removed. - (SCIL_Controlling_Tag/Set_SCIL_Controlling_Tag): New subprogram. - (SCIL_Entity,Set_SCIL_Entity): Applicable only to SCIL nodes. - (SCIL_Related_Node,Set_SCIL_Related_Node): Applicable only to SCIL nodes - (SCIL_Target_Prim,Set_SCIL_Target_Prim): Applicable only to - N_SCIL_Dispatching_Call nodes. - * sem.adb (Analyze): No need to analyze SCIL nodes. - * sem_aux.ads, sem_aux.adb (First_Non_SCIL_Node): New subprogram - (Next_Non_SCIL_Node): New subprogram - * sem_ch4.adb (Analyze_Type_Conversion): Adjust relocated SCIL - dispatching nodes. - * sem_ch5.adb (Analyze_Iteration_Scheme): Adjust relocated SCIL - dispatching node. - * sem_util.adb (Insert_Explicit_Dereference): Adjust relocated SCIL - dispatching node. - * exp_ch3.adb (Build_Array_Init_Proc): Skip SCIL nodes when processing - null statement nodes. - (Build_Init_Procedure): Generate new SCIL node. - * exp_ch4.adb (Expand_N_And_Then): Adjust relocated SCIL dispatching - node. - * exp_ch6.adb (Is_Null_Procedure): Skip SCIL nodes. Required because - they are currently implemented as special N_Null_Statement nodes. - * exp_ch7.adb (Wrap_Transient_Statement): If the relocated node is a - procedure call then check if some SCIL node references it and needs - readjustment. - * exp_disp.ads (SCIL_Node_Kind): Removed. - (Adjust_SCIL_Node): New subprogram. - (Find_SCIL_Node): New subprogram. - (Get_SCIL_Node_Kind): Removed. - (New_SCIL_Node): Removed. - * exp_disp.adb (Adjust_SCIL_Node): New subprogram - (Expand_Dispatching_Call): Generate new SCIL dispatching node including - decoration of its new controlling_tag attribute. - (Get_SCIL_Node_Kind): Removed. - (Find_SCIL_Node): New subprogram. - (Make_Secondary_DT): Generate new SCIL nodes. - (Make_Tags): Generate new SCIL nodes. - (New_SCIL_Node): Removed. - * exp_util.adb (Insert_Actions): Handle SCIL nodes. - (Remove_Side_Effects): Check if relocated nodes require readjustment - of some SCIL dispatching node. - * gcc-interface/trans.c (gnat_to_gnu): Do nothing with new SCIL nodes. - -2009-07-28 Robert Dewar - - * prj-nmsc.adb, g-expect.adb, prj.ads: Minor reformatting - -2009-07-28 Sergey Rybin - - * gnat_ugn.texi: Add section about gnatcheck rule exemption. - -2009-07-28 Vadim Godunko - - * s-oscons-tmplt.c: Define _XOPEN_SOURCE on Linux, otherwise IOV_MAX is - not defined by limits.h. - - * g-socket.adb (Receive_Vector): Use minimum length from user's vector - length and maximum supported length of data vector. - -2009-07-28 Gary Dismukes - - * usage.adb: Inhibit printing gcc-specific switches for AAMP target. - * make.adb: Call Get_Target_Parameters before calling Usage so that - VM_Target and AAMP_On_Target will be set. - -2009-07-28 Olivier Hainque - - * g-ssinty.ads: Remove, pointless and just confusing at this stage. - * gnat_rm.texi: Remove documentation. - * g-sse.ads: Minor reorg along the way. - * gcc-interface/Makefile.in: Remove processing for g-ssinty. - * g-ssvety.ads: Minor comment updates. - -2009-07-28 Sergey Rybin - - * gnat_ugn.texi: gnatcheck 'Format of the Report File' section - update - for the new format of the report file. - -2009-07-28 Sergey Rybin - - * gnat_ugn.texi: gnatcheck Deeply_Nested_Inlining rule: Update doc. - -2009-07-28 Pascal Obry - - * g-expect.adb: Record standard handles only on Windows. - -2009-07-27 Emmanuel Briot - - * prj.ads, prj-nmsc.adb (Override_Kind): add debug trace - Add comments. - -2009-07-27 Sergey Rybin - - * gnat_ugn.texi: gnatcheck Unconstrained_Array_Returns rule: Add to the - rule definition the paragraph that explains that generic functions and - functions from generic packages are not checked. - -2009-07-27 Gary Dismukes - - * sem_ch6.adb (New_Overloaded_Entity): Add test for an expanded null - procedure when determining whether to set the Overridden_Operation - field of a subprogram overriding an inherited subprogram. - -2009-07-27 Robert Dewar - - * a-except.adb, a-except-2005.ads: Minor reformatting - -2009-07-27 Robert Dewar - - * sem_util.adb, sem_util.ads (Kill_Current_Values): Reset Is_Known_Valid - -2009-07-27 Javier Miranda - - * exp_disp.adb (Expand_Dispatching_Call): Reverse previous patch and - add some documentation explaining why the SCIL nodes must be generated - at that point. - -2009-07-27 Olivier Hainque - - * a-except.adb: Bind to __builtin_longjmp directly. - * a-except-2005.ads: Provide direct binding to __builtin_longjmp - for sjlj variants. - * a-exexpr.adb: Use it. - * a-except-xi.adb: Likewise. - * raise.c (_gnat_builtin_longjmp): Remove and update comments. - * raise.h (_gnat_builtin_longjmp): Remove declaration. - -2009-07-27 Ed Schonberg - - * sem_eval.adb (Compile_Time_Compare): More precise handling of - Known_Valid flag, to prevent spurious range deductions when scalar - variables may be uninitialized. New predicate Is_Known_Valid_Operand. - -2009-07-27 Robert Dewar - - * gnatfind.adb, osint.ads, sem.adb, xr_tabls.adb: Minor reformatting - and code clean up. - -2009-07-27 Ed Schonberg - - * exp_ch9.adb (Expand_N_Timed_Entry_Call): Do not attempt expansion in - Ravenscar mode. Error has already been posted on specification. - - * sem.adb: Further code clean ups. - -2009-07-27 Robert Dewar - - * g-sse.ads: Minor reformatting - -2009-07-27 Arnaud Charlet - - * xref_lib.adb (Add_Xref_File_Internal, Find_ALI_Files): Add support for - alternate ali extension. - * xr_tabls.adb (ALI_File_Name, Get_File, Set_Unvisited): Take into - account Osint.ALI_Suffix. - * osint.ads (ALI_Suffix): Make visible. - * gnatfind.adb (Gnatfind): Add support for --ext= switch. - * gnat_ugn.texi: Document new gnatfind --ext= switch. - -2009-07-27 Ed Schonberg - - * sem.adb (Walk_Library_Items): If main unit is an instance body, do - its spec first. - -2009-07-27 Javier Miranda - - * exp_disp.adb (Expand_Dispatching_Call): Generate the SCIL node after - the dispatching call has is expanded. - -2009-07-27 Ed Schonberg - - * exp_attr.adb (Expand_Attribute_Reference, case 'Valid): Reset the - Is_Known_Valid flag on the temporary created for the value whose - validity is being checked. - - * sem.adb (Do_Unit_And_Dependents): Further code reorganization to - handle properly main units that are package specifications. - -2009-07-27 Geert Bosch - - * einfo.ads (Checks_May_Be_Suppressed): Fix typo in comment - * sem_aux.ads: Fix typo in comment - * sem_util.ads (Is_LHS): Adjust comment to match body - -2009-07-27 Sergey Rybin - - * gnat_ugn.texi (gnatcheck Complex_Inlined_Subprograms rule): Update - rule definition. - -2009-07-27 Olivier Hainque - - * g-sse.ads, g-ssvety.ads: Update comments. - -2009-07-27 Sergey Rybin - - * gnat_ugn.texi: Update gnatcheck doc. - -2009-07-27 Arnaud Charlet - - * lib-xref.ads: Allocate/document 'o' char for use by references to - spark 'own' variables. - -2009-07-27 Gary Dismukes - - * sem_ch6.adb (Analyze_Function_Return): Set Referenced on return - objects, since these are implicitly referenced by the return statement. - * sem_warn.adb (Warn_On_Unreferenced_Entity): No longer a need to test - Is_Return_Object in this procedure, as return objects will never make - it here since they're now marked as Referenced. - -2009-07-27 Robert Dewar - - * exp_ch2.adb, sem_util.adb, sem_util.ads: Minor reformnatting - -2009-07-27 Robert Dewar - - * exp_ch6.adb (Expand_Call): Reset Is_Known_Valid after call - - * sem_ch3.adb, sem_eval.adb, sem_aux.adb: Minor comment reformatting - -2009-07-27 Geert Bosch - - * checks.adb (Find_Check): Minor streamlining of logic. - * gnat1drv.adb(Gnat1drv): Put Check_Rep_Info in its alphabetical order. - * debug.adb: Document -gnatdX debug flag - * exp_ch2.adb(Expand_Entity_Reference): Implement new -gnatdX flag to - list information about reads from scalar entities. - Also slightly simplify condition for Expand_Current_Value. - * sem_util.ads, sem_util.adb (Is_LHS, Is_Actual_Out_Parameter): New - functions. - -2009-07-26 Dave Korn - - PR bootstrap/40578 - * adaint.h (FOPEN, STAT, FSTAT, LSTAT, STRUCT_STAT): Rename from these - (GNAT_FOPEN, GNAT_STAT, GNAT_FSTAT, GNAT_LSTAT, GNAT_STRUCT_STAT): ... - to these. - (__gnat_stat): Adjust reference to STAT in prototype. - * adaint.c (__gnat_try_lock, __gnat_fopen, __gnat_file_length, - __gnat_named_file_length, __gnat_file_time_name, __gnat_file_time_fd, - __gnat_get_libraries_from_registry, __gnat_stat, __gnat_file_exists, - __gnat_is_regular_file, __gnat_is_directory, __gnat_is_readable_file, - __gnat_is_writable_file, __gnat_is_executable_file, - __gnat_set_writable, __gnat_set_executable, __gnat_set_non_writable, - __gnat_set_readable, __gnat_set_non_readable, __gnat_is_symbolic_link, - __gnat_copy_attribs): Adjust all references to the above. - * cstreams.c (__gnat_is_regular_file_fd): Likewise. - -2009-07-23 Ed Schonberg - - * sem.adb (Do_Unit_And_Dependents): Now that specs and bodies are not - done at the same time, guard against listing a body more than once. - -2009-07-23 Robert Dewar - - * exp_ch6.adb: Minor reformatting - -2009-07-23 Ed Schonberg - - * sem_ch3.adb (Analyze_Object_Declaration): A scalar constant with a - static expression is known valid. - * sem_eval.adb (Compile_Time_Compare): Handle properly non-static - operands of a subtype with a single value. - -2009-07-23 Ed Schonberg - - * sem.adb (Do_Units_And_Dependents): Process bodies only for units that - are in the context of the main unit body. - -2009-07-23 Sergey Rybin - - * gnat_ugn.texi (Misnamed_Controlling_Parameters gnatcheck rule): Fix - misprint in rule description. - -2009-07-23 Gary Dismukes - - * exp_ch6.adb (Make_Build_In_Place_Call_In_Object_Declaration): Replace - test that the object declaration is within an extended return statement - with direct test of whether the declared object associated with the - build-in-place call is a return object, since the enclosing function - might not even be a build-in-place function. - -2009-07-23 Robert Dewar - - * freeze.adb, prj-nmsc.adb, errout.adb: Minor reformatting - Minor code reorganization - -2009-07-23 Arnaud Charlet - - * sem_prag.adb (Analyze_Pragma): Do not ignore pragma Pack on records - for static analysis, only packed arrays are causing troubles. - -2009-07-23 Gary Dismukes - - * sem_aggr.adb (Resolve_Extension_Aggregate): Report an error when the - ancestor part is a call to a limited function with an unconstrained - result subtype unless the aggregate has a null extension type. - * sem_ch3.adb (Is_Null_Extension): Use the base type when retrieving - the parent type declaration to avoid blowups on subtype cases. - -2009-07-23 Robert Dewar - - * par-ch4.adb (P_Aggregate_Or_Paren_Expr): Better message for missing - comma. - - * sem_util.adb (Wrong_Type): Special message for cases like A and B = 0 - - * s-regexp.adb: Minor reformatting - * scos.ads: Minor reformatting. - -2009-07-23 Arnaud Charlet - - * freeze.adb (Set_Small_Size): Remove extra space for consistency with - other similar messages. - * sem_prag.adb (Freeze_Record_Type, Freeze_Entity): Disable error - messages/implicit packing in CodePeer mode. - (Analyze_Pragma [case pragma Pack]): Ignore pragma in CodePeer mode. - * errout.adb (Special_Msg_Delete): Suppress 'size too small' message in - CodePeer mode. - -2009-07-23 Pascal Obry - - * prj-nmsc.adb: Fix spec/body naming extension on case insensitive - systems. - -2009-07-23 Robert Dewar - - * einfo.ads, g-ssvety.ads, s-regexp.adb, g-sse.ads: Update comment. - Minor reformatting. - -2009-07-23 Yannick Moy - - * s-regexp.adb (Check_Well_Formed_Pattern): Called before compiling the - pattern. - (Raise_Exception_If_No_More_Chars): Remove extra blank in exception - string. - (Raise_Exception): Ditto. - -2009-07-23 Olivier Hainque - - * g-sse.ads: Simplify comment. - -2009-07-23 Olivier Hainque - - * g-ssinty.ads: New unit. GNAT.SSE.Internal_Types. Factorize - low level internal type definitions for distinct higher level - binding development activities (user type definitions and - operations). - * gnat_rm.texi: Document it. - * g-ssvety.ads: Use it. - * gcc-interface/Makefile.in: (x86 32/64 linux, cygwin32 sections): Add - g-ssinty.o to EXTRA_GNATRTL_NONTASKING_OBJS. - * gcc-interface/utils.c (gnat_internal_attribute_table): Add entry - for the "may_alias" attribute. - -2009-07-23 Thomas Quinot - - * scos.ads: Minor typo fix - - * gcc-interface/decl.c (validate_alignment): For the case of an - implicit array base type, look for alignment clause on first subtype. - -2009-07-23 Robert Dewar - - * gcc-interface/decl.c (gnat_to_gnu_field): Don't check for overlap - with tagged parent if tagged parent is fully repped. - -2009-07-23 Ed Schonberg - - * sem.adb (Walk_Library_Units): Handle properly the case where a unit - in the context depends on the spec of the main unit, by delaying - processing of the main unit body until all other units have been - processed. - -2009-07-23 Arnaud Charlet - - * a-convec.adb: Add comments about suspicious/subtle code. - -2009-07-23 Ed Schonberg - - * einfo.ads: Document use of Alias in private overriding - -2009-07-23 Thomas Quinot - - * sem_ch13.adb (Analyze_Attribute_Definition_Clause): For the case of - an array type, propagate alignment from first subtype to implicit base - type so that other subtypes (such as the itypes for aggregates of the - type) also receive the expected alignment. - - * g-comlin.ads: Minor documentation clarification/rewording. - * scos.ads: Minor comments update. - * lib-writ.ads: Minor reformatting - -2009-07-23 Gary Dismukes - - * exp_ch3.adb (Expand_N_Object_Declaration): For an initialized object - of a class-wide interface type that is a return object of a - build-in-place function, bypass the interface-related expansions into - renamings with displacement conversions, etc. - * exp_ch5.adb (Expand_N_Extended_Return_Statement): Add an assertion - for the case where a renaming occurs in a build-in-place context, to - assert that the bypassing of the build-in-place treatment only occurs - in the case of a renaming that is an expansion of a return expression - that is itself a build-in-place function call. - -2009-07-23 Ed Schonberg - - * sem_ch4.adb (Try_Primitive_Operation): A primitive operation is a - valid candidate interpretation in a prefixed view if it is hidden, but - overrides an inherited operation declared in the visible part. - -2009-07-23 Robert Dewar - - * exp_ch4.adb (Expand_N_Type_Conversion): Don't promote integer - division operands to 64-bit at all in any circumstances. - -2009-07-23 Robert Dewar - - * exp_ch4.adb (Analyze_N_Op_Rem): Assume operands are valid when - checking ranges for mod/rem to see if conditional jump will be - generated. - (Analyze_N_Op_Rem): Don't try to check actual lower bounds for - generating special -1 test for rem, generate it whenever both - operands can be negative (match circuit in Sem_Res). - (Analyze_N_Op_Rem): Don't go to base type, no longer needed and - destroys memory of positive range. - * sem_res.adb (Resolve_Arithmetic_Op): Assume operands are valid when - checking ranges for mod/rem to see if conditional jump will be generated - -2009-07-23 Ed Schonberg - - * exp_ch3.adb (Build_Equivalent_Record_Aggregate): If the type of a - scalar components has non-static bounds, the equivalent aggregate - cannot be built, even if the expression is static, because range checks - will be generated. - -2009-07-23 Robert Dewar - - * exp_ch4.adb (Expand_N_Type_Conversion): Don't promote integer - division operands to 64-bit inside a conversion if 64-bit division not - available. - -2009-07-23 Sergey Rybin - - * gnat_ugn.texi: Update doc on Misnamed_Identifiers rule. - -2009-07-23 Javier Miranda - - * sinfo.ads, sinfo.adb (SCIL_Entity/Set_SCIL_Entity): new subprograms - (Entity/Set_Entity): not available in N_Null_Statement nodes - (Is_Scil_Node): renamed as Is_SCIL_Node - (Scil_Nkind): renamed as SCIL_Nkind - (Scil_Related_Node): renamed as SCIL_Related_Node - (Scil_Target_Prim): renamed as SCIL_Target_Prim - (Set_Is_Scil_Node): Renamed as Set_Is_SCIL_Node - (Set_Scil_Related_Node): Renamed as Set_SCIL_Related_Node - (Set_Scil_Target_Prim): Renamed as Set_SCIL_Target_Prim - Update documentation - * exp_disp.ads (Scil_Node_Kind): Renamed as SCIL_Node_Kind - (Get_Scil_Node_Kind): Renamed as Get_SCIL_Node_Kind - (New_Scil_Node): Renamed as New_SCIL_Node - * exp_disp.adb Update all occurrences of New_Scil_Node to New_SCIL_Node. - (Get_Scil_Node_Kind): Renamed as Get_SCIL_Node_Kind - (New_Scil_Node): Renamed as New_SCIL_Node - * exp_ch3.adb Update occurrence of New_Scil_Node to New_SCIL_Node. - -2009-07-23 Robert Dewar - - * sem_prag.adb: No_Return is an Ada 2005 pragma, not a GNAT pragma - * snames.ads-tmpl: No_Return is an Ada 2005 pragma, not a GNAT pragma - * einfo.adb: Minor reformatting - -2009-07-23 Robert Dewar - - * checks.adb (Apply_Arithmetic_Overflow_Check): Add comments - cross-referencing the new related code in - Exp_Ch4.Expand_N_Type_Conversion. - * exp_ch4.adb (Expand_N_Type_Conversion): Avoid unnecessary overflows - - * exp_disp.adb, exp_disp.ads, sinfo.ads: Minor reformatting. - Add comment. - -2009-07-23 Javier Miranda - - * sinfo.ads (Is_Scil_Node, Scil_Nkind, Scil_Related_Node, - Scil_Target_Prim, N_Has_Entity): Add missing documentation. - * exp_disp.ads (Scil_Node_Kind): Ditto. - * exp_disp.adb (Make_DT, Make_Tags): Ditto. - * exp_ch3.adb (Build_Init_Procedure): Ditto. - -2009-07-23 Javier Miranda - - * einfo.adb (Component_Type): Add missing assertion. - * sem_res.adb (Resolve_Call): Ensure proper kind of entity before - reading attribute Component_Size. - * exp_ch4.adb (Is_Safe_In_Place_Array_Op): Ensure proper kind of entity - before reading attributes Component_Size and Component_Type. - * exp_ch3.adb (Build_Initialization_Call): Ensure proper kind of entity - before reading attribute Component_Type. - -2009-07-23 Olivier Hainque - - * gnat_rm.texi: Document the GNAT.SSE units. - -2009-07-23 Ed Schonberg - - * sem_ch6.adb (Analyze_Return_Type): Do not create itype reference for - not null return if it appears on a subunit. - -2009-07-23 Robert Dewar - - * exp_ch5.adb (Expand_N_Assignment_Statement): Do left-side validity - check right away so it does not get skipped for early returns, e.g. - array assignments. - (Expand_N_Assignment_Statement): Don't propagate Is_Known_Valid to - left-side unless we really know the value is valid. - - * errout.adb, exp_ch3.adb, exp_disp.ads, sinfo.ads, exp_disp.adb: Minor - reformatting. Minor code reorganization. Add comments. - -2009-07-23 Robert Dewar - - * get_scos.adb (Skip_EOL): Fix error of mishandling end of line after - complex condition. - -2009-07-23 Gary Dismukes - - * sem_ch6.adb (Check_Return_Subtype_Indication): Replace type equality - with test of coverage, to allow specific type objects in extended - returns of class-wide functions. Remove now-unnecessary special-case - tests that allowed this in certain cases of expanded extended returns. - -2009-07-23 Javier Miranda - - * sinfo.ads,sinfo.adb (Entity/Set_Entity): Attribute available in - N_Null_Statements (for SCIL nodes). - (Is_Scil_Node/Set_Is_Scil_Node): New attribute (for SCIL nodes). - (Scil_Nkind/Set_Scil_Nkind): New attribute (for SCIL nodes). - (Scil_Related_Node/Set_Scil_Related_Node): New attribute (for SCIL - nodes). - (Scil_Target_Prim/Set_Scil_Target_Prim): New attribute (for SCIL nodes). - * exp_disp.adb (Expand_Dispatching_Call): Add generation of SCIL node - associated with dispatching call. - (Get_Scil_Node_Kind): New function that returns the kind of SCIL node. - (Make_DT, Make_Tags): Add generation of SCIL nodes associated with - initialization of dispatch tables and initialization of tags. - (New_Scil_Node): New function that creates a new SCIL node. - (Build_Init_Procedure): Add generation of SCIL node associated with the - initialization of tags done in the IP subprogram. - -2009-07-23 Ed Schonberg - - * errout.adb (Error_Msg_NEL): If the entity in the initial message has - Warnings_Off, do not emit continuation messages. - - * sem_ch10.adb: Set Is_Compilation_Unit on generated child subprogram - spec. - -2009-07-23 Emmanuel Briot - - * ali.adb: Minor comment update - -2009-07-23 Vasiliy Fofanov - - * s-win32.ads (HANDLE): Define to be the same size as address type. - Fix copyright. - -2009-07-23 Olivier Hainque - - * g-sse.ads: New file. Root of the SSE facilities trees, with - general description and common declarations. - * g-ssvety.ads: New file. Expose user level SSE vector types. - * impunit.adb (Non_Imp_File_Names_95): Register new units. - * gcc-interface/Makefile.in (x86 32/64 linux, win32): Add - EXTRA_GNATRTL_NONTASKING_OBJS entries for SSE units. - -2009-07-23 Ben Brosgol - - * gnat_ugn.texi: Wordsmithing. - -2009-07-23 Arnaud Charlet - - * prj-conf.ads, prj-conf.adb: Switch to GPLv3. - -2009-07-22 Eric Botcazou - - * exp_aggr.adb (Gen_Loop): Do not qualify the bounds of the range if - they are already of the base type of the index. - -2009-07-22 Brett Porter - - * sysdep.c, init.c: Fix typo: _SPE_ should have been __SPE__. - -2009-07-22 Robert Dewar - - * vms_data.ads: Add entry for SCO_OUTPUT (-gnateS) - * gnat_ugn.texi: Add documentation for -gnateS switch - * ug_words: Add entry for -gnateS /SCO_OUTPUT - * gcc-interface/Make-lang.in: Update dependencies. - - * get_scos.adb, get_scos.ads, gnat1drv.adb, par_sco.adb, - par_sco.ads, put_scos.adb, put_scos.ads, scos.adb, scos.ads: Initial - complete information for SCO input/output. - -2009-07-22 Sergey Rybin - - * gnat_ugn.texi: Update doc for some gnatcheck rules. - -2009-07-22 Robert Dewar - - * par_sco.adb, par_sco.ads (pscos): New debug routine to output - contents of SCO tables. - * put_scos.adb, put_scos.ads, get_scos.adb, get_scos.ads, - scos.adb, scos.ads: New files. - * gcc-interface/Make-lang.in: Update dependencies. - - * lib-util.ads, gnatbind.ads, ali.ads, binderr.ads: Minor comment - fixes and reformatting. - -2009-07-22 Robert Dewar - - * g-socket.ads: Minor reformatting - -2009-07-22 Gary Dismukes - - * sem_warn.adb (Warn_On_Unreferenced_Entity): Add warning messages that - include the entity kind for following cases of unreferenced entities: - E_Label, E_Discriminant, E_Package, E_Exception, and Formal_Object_Kind. - -2009-07-22 Ed Falis - - * s-vxwext-kernel.adb, s-vxwext-kernel.ads: Replace use of taskStop - with taskSuspend. - -2009-07-22 Arnaud Charlet - - * adadecode.c: Make this file compilable outside of GCC. - -2009-07-22 Thomas Quinot - - * g-socket.adb, g-socket.ads (Check_Selector): Make sure that - (partially) default-initialized socket sets are handled properly by - clearing their Set component. - -2009-07-22 Bob Duff - - * gnat_ugn.texi: Clarify the -gnatVx (validity checking) switches. - -2009-07-22 Robert Dewar - - * gnat_ugn.texi: Minor reformatting - -2009-07-22 Ed Schonberg - - * errout.adb (Error_Msg): A style message within an instantiation - should not be labelled as an error. - -2009-07-22 Ed Schonberg - - * freeze.adb (Freeze_Entity): Do not generate extra formal for function - in initialization expression if function does not have convention Ada. - -2009-07-22 Sergey Rybin - - * gnat_ugn.texi, vms_data.ads: Add qualifier for new gnatpp option - '--separate-label' to control label layout. - -2009-07-22 Robert Dewar - - * exp_tss.ads, sem_eval.adb: Minor reformatting - -2009-07-22 Bob Duff - - * exp_dist.adb, exp_dist.ads: Update comments. - -2009-07-22 Brett Porter - - * init.c (__gnat_init_float): For SPE, set bits in SPEFSCR instead of - FPSCR. - * sysdep.c (__gnat_get_task_options): Set task option enabling SPE. - -2009-07-22 Gary Dismukes - - * exp_ch5.adb, sem_util.adb, sem_attr.adb, exp_dbug.ads, exp_ch2.adb, - exp_tss.ads, exp_ch4.adb, sem_ch4.adb: Correct spelling error. - Minor reformatting. - * sem_res.adb (Resolve_Explicit_Dereference): Reword one comment that - used poor terminology. - -2009-07-22 Robert Dewar - - * freeze.adb, sem_ch3.adb, sem_prag.adb: Minor reformatting - * sem_eval.adb, exp_tss.adb: Minor comment update. - * stylesw.adb: Code clean up. - -2009-07-22 Ed Schonberg - - * freeze.adb (Freeze_Entity): If Implicit_Packing is enabled, and the - component size is an exact number of bytes, an array type can have a - size clause that forces packing even though the array type itself is - not bit-packed. - -2009-07-22 Thomas Quinot - - * sem_ch3.adb (Analyze_Object_Declaration): For a constant declaration, - if there is a previous entity with the same name in the scope, ignore - it if it is the renaming declaration for a generic package introduced - in instances. - -2009-07-22 Nicolas Roche - - * seh_init.c: use RtlAddFunctionTable to register our SEH exception - handler on x86_64 windows. - -2009-07-22 Arnaud Charlet - - * sem_prag.adb (Analyze_Pragma): Initialize/Normalize_Scalars create - false positives in CodePeer, so ignore this pragma in this mode. - -2009-07-22 Thomas Quinot - - * sem_util.adb, sem_ch10.adb: Minor reformatting - - * g-socket.adb (Receive_Socket, recvfrom(2) variant): Apply required - special handling for the case of no data received and Item'First = - Stream_Element_Offset'First. - (Last_Index): New subprogram factoring the above special handling - over the various locations where it is required. - -2009-07-22 Arnaud Charlet - - * gnat1drv.adb (Gnat1drv): Also disable division by zero and alignment - checks in CodePeer_Mode. - * gcc-interface/Make-lang.in: Update dependencies. - -2009-07-22 Ed Schonberg - - * sem_aggr.adb: Improve error message. - - * sem_ch13.adb: If Ignore_Rep_Clauses is enabled, do a minimal analysis - of an address representation clause. - * freeze.adb (Freeze_Static_Object): An local imported object is legal - if it has an address clause. - -2009-07-22 Thomas Quinot - - * sem_elab.adb (Insert_Elab_Check): When relocating an overloaded - expression to insert an elab check using a conditional expression, be - sure to carry the original list of interpretations to the new location. - -2009-07-22 Gary Dismukes - - * gnat1drv.adb: Fix spelling error. - -2009-07-22 Javier Miranda - - * sem_type.ads, sem_type.adb (In_Generic_Actual): Leave this subprogram - at the library level and fix a hidden bug in its implementation: its - functionality for renaming objects was broken because - N_Object_Renaming_Declarations nodes are not a subclass of - N_Declaration nodes (as documented in sinfo.ads). - * sem_util.adb (Check_Dynamically_Tagged_Expression): Include in this - check nodes that are actuals of generic instantiations. - -2009-07-22 Ed Schonberg - - * sinfo.ads, sinfo.adb (Pending_Context): New flag to indicate that the - context of a compilation unit is being analyzed. Used to detect - circularities created by with_clauses that are not detected by the - loading machinery. - * sem_ch10.adb (Analyze_Compilation_Unit): Set Pending_Context before - analyzing the context of the current compilation unit, to detect - possible circularities created by with_clauses. - -2009-07-22 Thomas Quinot - - * sem_type.adb (Get_First_Interp): Fix wrong loop exit condition. - -2009-07-22 Robert Dewar - - * sem_res.adb (Check_No_Direct_Boolean_Operators): Add check for -gnatyB - * style.ads, styleg.adb, styleg.ads (Check_Boolean_Operator): New - procedure. - * usage.adb, stylesw.ads, stylesw.adb: Add handling of -gnatyB switch - * gnat_ugn.texi: Add documentation of -gnatyB - * vms_data.ads: Add entry for -gnatyB (STYLE=BOOLEAN_OPERATORS) - -2009-07-22 Robert Dewar - - * s-stchop.adb, a-direct.adb, a-ztexio.adb, gnatchop.adb, prj-proc.adb, - make.adb, s-regpat.adb, ali-util.adb, a-ngcefu.adb, prep.adb, - s-tassta.adb, a-tifiio.adb, a-textio.adb, prj.adb, uintp.adb, - s-valrea.adb, a-ngelfu.adb, prepcomp.adb, sinput-l.adb, vms_conv.adb, - errout.adb, g-alleve.adb, repinfo.adb, a-wtedit.adb, ali.adb, - a-witeio.adb, prj-dect.adb, prj-nmsc.adb, sinput-c.adb, binde.adb, - s-regexp.adb, s-imgrea.adb, a-teioed.adb, errutil.adb, prj-util.adb, - a-ztedit.adb, gnatls.adb, prj-conf.adb, bcheck.adb, s-scaval.adb, - erroutc.adb, osint.adb, a-strfix.adb, s-fileio.adb: Make sure sources - obey short-circuit style rule. - -2009-07-20 Bob Duff - - * sem_ch13.adb (Analyze_Record_Representation_Clause): Use "and then" - instead of "and", because otherwise Parent_Last_Bit is read - uninitialized in the case where it's not a tagged type, or the tagged - parent does not have a complete rep clause. - -2009-07-20 Robert Dewar - - * stylesw.ads: Minor documentation change. - - * types.ads: Minor reformatting - -2009-07-20 Javier Miranda - - * exp_disp.ads (Apply_Access_Checks): New subprogram that takes care of - generating the tag checks associated with dispatching calls. - * exp_disp.adb (Apply_Access_Checks): New subprogram. - (New_Value): This routine was previously local to expand dispatching - calls but it is now used also by Apply_Access_Checks. - (Expand_Dispatching_Calls): Cleanup code because the functionality of - tag checks is now provided by Apply_Access_Checks. - * exp_ch6.adb (Expand_Call): Incorporate generation of tag checks in - case of dispatching calls. - -2009-07-20 Arnaud Charlet - - * gnat1drv.adb (Gnat1drv): Also disable Elaboration_Check in - CodePeer_Mode. - -2009-07-20 Gary Dismukes - - * exp_prag.adb (Expand_Pragma_Import_Export_Exception): When compiling - for VMS, only rewrite the first component of the associated exception's - aggregate init (as 'V'), and eliminate the bogus rewrites of the second - and third components that were being replaced with 'M' and 'S'. - -2009-07-20 Arnaud Charlet - - * gnat1drv.adb (Gnat1drv): Suppress access checks in CodePeer mode. - Also do not generate error when parsing a spec in CodePeer mode. - -2009-07-20 Javier Miranda - - * checks.adb (Apply_Access_Check): Avoid checks on availability of - runtime function Offset_To_Top_Ptr when compiling with no tagged - types expansion. - * exp_ch3.adb (Build_Init_Procedure): Leave open the possibility of - adding code to the init proc when compiling for VM backends. - -2009-07-20 Vincent Celier - - * switch-m.ads, switch-m.adb (Normalize_Compiler_Switches): Take into - account switches -gnatw.? - -2009-07-20 Thomas Quinot - - * sem_dist.adb, exp_dist.adb: Minor reformatting - - * Make-generated.in: New file. - - * gcc-interface/Make-lang.in: Use Make-generated.in fragment. - -2009-07-20 Javier Miranda - - * sem_util.ads, sem_util.adb (Check_Dynamically_Tagged_Expression): New - subprogram. - * sem_aggr.adb (Resolve_Array_Aggregate): Check incorrect use of - dynamically tagged expression. - * sem_ch3.adb (Analyze_Object_Declaration): Call new routine that - factorizes code. - * sem_ch6.adb (Analyze_Function_Return, Process_Formals): Ditto. - * sem_ch8.adb (Analyze_Object_Renaming): Ditto. - -2009-07-20 Arnaud Charlet - - * gnat1drv.adb (Gnat1drv): Set operating mode to Generate_Code when - CodePeer_Mode is set, to benefit from full front-end expansion - (e.g. generics). - -2009-07-20 Ed Schonberg - - * sem_res.adb: Add guard. - - * exp_disp.adb, sem_disp.adb (Make_DT): Check underlying view of type - for possible attribute definition of External_Tag, in case clause - appears in the private part of a package. - -2009-07-20 Jerome Guitton - - * gcc-interface/Makefile.in: cleanup powerpc linux target pairs. - -2009-07-20 Vadim Godunko - - * a-coorma.adb: Minor reformatting. - -2009-07-20 Ed Schonberg - - * sem_ch3 (Build_Itype_Reference): Make public, for use on non-null - access return types. - * sem_ch6.adb (Analyze_Return_Type): If return is a not null subtype, - provide an itype reference to gigi to force elaboration of the subtype - at the proper point. - -2009-07-20 Tristan Gingold - - * g-expect.adb: Avoid closeing already closed handle. - -2009-07-20 Robert Dewar - - * sprint.adb (Write_Subprogram_Name): New procedure to output - subprogram name with possible preceding $ (replaces - Note_Implicit_Run_Time_Call). - -2009-07-20 Robert Dewar - - * vms_data.ads: Minor reformatting - - * einfo.ads, einfo.adb (Parent_Subtype): Now allowed on record subtype, - applies to base type. - (Parent_Subtype): Now allowed on record subtype, applies to base type - * exp_ch5.adb (Expand_Assign_Record): Handle Componentwise_Assignment - for case of fully repped tagged type. - (Make_Tag_Ctrl_Assignment): Set Componentwise_Assignment and avoid - tag save/restore for fully repped tagged type case. - * exp_util.ads, exp_util.adb (Is_Fully_Repped_Tagged_Type): New function - * fe.h (Is_Fully_Repped_Tagged_Type): New function - * sem_ch13.adb (Analyze_Recorrd_Representation_Clause): Check for - overlap of tagged type components with parent type if parent type is - fully repped. - * sinfo.ads, sinfo.adb (Componentwise_Assignment): New flag - - * sem_res.adb (Check_No_Direct_Boolean_Operators): Remove handling of - comparisons. - (Resolve_Comparison_Operators): Remove No_Direct_Boolean_Operators check - (Resolve_Equality_Op): Remove No_Direct_Boolean_Operators check - - * gnat_rm.texi: Restriction No_Direct_Boolean_Operators includes only - logical operators (AND/OR/XOR), not comparison operators. - - * sprint.ads: Minor reformatting - -2009-07-20 Ed Schonberg - - * sem_intr.adb (Check_Intrinsic_Call): For Import_Value and related - intrinsics, check that argument is a string literal, rather than - checking for staticness. - -2009-07-20 Robert Dewar - - * sem_ch13.adb: Minor reformatting - - * einfo.ads: Minor reformatting - Component_Bit_Offset is no longer considered obsolescent - -2009-07-20 Nicolas Roche - - * a-calend.adb: Redefine time_t as signed integer with same size as - Address type. - * s-os_lib.ads: Redefine OS_Time as signed integer with same size as - Address type - * adaint.h: On Windows 64bits declare OS_Time as long long instead of - long - -2009-07-20 Javier Miranda - - * exp_tss.adb (Init_Proc): Add missing support for non-default C++ - constructors that have anonymous access type formals. - - * sem_res.adb (Resolve_Actuals): Disable checks associated with Ada - class-wide arguments in case of imported C++ subprograms. - - * exp_ch3.adb (Build_Initialization_Call): Add assertion. - -2009-07-20 Sergey Rybin - - * vms_data.ads: Update qualifiers. - -2009-07-20 Robert Dewar - - * einfo.ads, switch.adb, gnatls.adb, inline.adb, sem_ch13.adb: Minor - reformatting - -2009-07-17 Richard Guenther - - PR c/40401 - * gcc-interface/utils.c (end_subprog_body): Revert to pre-tuples - state. Remove unused parameter. - (gnat_gimplify_function): Do not gimplify here. - Fold into its only caller and remove. - (gnat_builtin_function): Adjust for end_subprog_body signature change. - (gnat_write_global_declarations): Also finalize the CU. - * gcc-interface/misc.c (gnat_parse_file): Do not finalize the CU here. - * gcc-interface/trans.c (gigi): Revert to pre-tuples state. - (Subprogram_Body_to_gnu): Adjust for end_subprog_body signature - change. - * gcc-interface/gigi.h (end_subprog_body): Remove unused parameter. - -2009-07-15 Arnaud Charlet - - * gcc-interface/Make-lang.in: Update dependencies - - * gcc-interface/Makefile.in: Add target pairs for PPC/Xenomai - -2009-07-15 Robert Dewar - - * par_sco.adb (Traverse_Declarations_Or_Statements): Add processing for - N_Label. Remove SCO table entry for entry point (not used). - - * par_sco.ads: Remove SCO entry point type (not used) - - * switch.adb: Minor code clean up. - -2009-07-15 Eric Botcazou - - * exp_dbug.ads (Base Record Types): Document enhanced encoding. - -2009-07-15 Thomas Quinot - - * gnatls.adb: Minor reformatting - - * gnatcmd.adb: Minor code reorganization - -2009-07-15 Ed Schonberg - - * exp_util.adb (Component_May_Be_Bit_Aligned): Use underlying type to - determine whether a component of a private type has a composite type. - -2009-07-15 Robert Dewar - - * sem_ch10.adb: Minor reformatting throughout - Minor code reorganization (put nested subprograms in alpha order) - -2009-07-15 Ed Schonberg - - * exp_ch6.adb (Expand_Call): Prevent double attachment of the result - when compiling a call to a protected function that returns a controlled - object. - -2009-07-15 Hristian Kirtchev - - * sysdep.c (__gnat_localtime_tzoff): Consolidate the Lynx cases into - one. Add task locking and unlocking around the critical region which - mentions localtime_r and global variable timezone for various targets. - Comment reformatting. - -2009-07-15 Robert Dewar - - * gnat_rm.texi: Document s-ststop.ads - - * impunit.ad: (Map_Array): New table of alternative names - (Get_Kind_Of_Unit): Return possible suggested alternative name - - * impunit.ads (Get_Kind_Of_Unit): Return possible suggested - alternative name. - - * sem_ch10.adb (Analalyze_With_Clause): Add name of possible - alternative unit if an implementation unit is with'ed. - -2009-07-15 Robert Dewar - - * gnat_ugn.texi: Minor updates. - - * snames.ads-tmpl: Minor comment updates for Ada 2005 fully implemented - -2009-07-15 Ed Schonberg - - * sem_warn.adb (Warn_On_Constant_Condition): Handle properly constant - conditions of a derived boolean type. - Minor reformatting - -2009-07-15 Robert Dewar - - * gnat1drv.adb: Initialize SCO tables - - * par-load.adb: Call SCO_Record for main unit spec - - * par.adb: Make call to SCO_Record for main unit - - * par_sco.adb (Unit_Table): Change format to facilitate sort - (Process_Decisions): New procedure with list argument - (Traverse_Generic_Package_Declaration): New procedure - (Initialize): New procedure, replaces Init - (SCO_Output): Sort unit table before output - (SCO_Record): Avoid duplications - (SCO_Record): Handle remaining cases of units - (Traverse_Declarations_Or_Statements): Handle generics - - * par_sco.ads (Initialize): New peocedure (replaces Init) - - * sem_ch10.adb (Analyze_Proper_Body): Make call to SCO_Record for - subunit. - -2009-07-15 Arnaud Charlet - - * debug.adb: Add -gnatd.J switch for now to support scil generation in - parallel. Add missing doc for -gnatd.I and -gnatd.O - -2009-07-15 Robert Dewar - - * lib-load.adb: Minor reformatting - - * lib-writ.adb (Write_ALI): Fix handling of SCO_Output wrt Generate_SCO. - -2009-07-15 Robert Dewar - - * par.adb: Minor reformatting - Add ??? comment for possible bad comment - - * par-ch10.adb: Minor reformatting - -2009-07-15 Ed Schonberg - - * sem_warn.adb (Warn_On_Constant_Condition): if the constant condition - is a literal of a derived boolean type, it appears as an unchecked - conversion. Retrieve actual value from expression of conversion. - -2009-07-15 Robert Dewar - - * sem_ch3.adb: Minor reformatting - - * lib-xref.ads, lib-xref.adb, lib.ads, par_sco.ads, par_sco.adb, - lib-writ.ads, lib-writ.adb: Minor reformatting. - Fix problem with SCO format in ALI files - -2009-07-15 Robert Dewar - - * exp_ch7.adb, exp_util.adb, tbuild.adb, tbuild.ads, exp_ch4.adb, - exp_aggr.adb: Minor code reorganization (better calling sequence for - Make_Temporary). - -2009-07-15 Thomas Quinot - - * opt.ads: Minor comment edits - -2009-07-15 Tristan Gingold - - * gcc-interface/Makefile.in: Special rule for seh_init.o no longer - needed. - -2009-07-15 Robert Dewar - - * lib-writ.adb (Write_Unit_Information): Use SCO_Output to output SCO - information. - - * lib-writ.ads: Document addition of SCO lines to ALI file - - * par_sco.ads, par_sco.adb: New files. - - * opt.ads (Generate_SCO): New switch - - * par.adb (Par): Call SCO_Record to record SCO information - - * sem_warn.adb (Warn_On_Constant_Condition): Adjust SCO condition - - * switch-c.adb: Recognize -gnateS to generate SCO information - - * usage.adb: Add line for -gnateS - - * gcc-interface/Make-lang.in: Add dependency on par_sco.o for gnat1 - -2009-07-15 Robert Dewar - - * sinfo.ads, make.adb, par.ads, par.adb, sem_warn.adb: Minor - reformatting. - -2009-07-15 Thomas Quinot - - * g-socthi-mingw.adb: Minor comment addition - - * g-socthi-mingw.ads (WSAStartup): First argument is a WORD not an int. - -2009-07-15 Robert Dewar - - * g-htable.ads, s-htable.ads: Minor reformatting - -2009-07-15 Robert Dewar - - * switch-c.adb, sem_ch10.adb, sem_warn.adb, sem_warn.ads: Implement - new switch -gnatw.g. - (Set_GNAT_Mode_Warnings): New procedure. - - * lib-xref.adb: Minor reformatting - -2009-07-15 Robert Dewar - - * exp_aggr.adb, tbuild.ads, tbuild.adb: Minor reformatting - Minor code reorganization - -2009-07-14 Taras Glek - Rafael Espindola - - * gcc-interface/Make-lang.in (ada.install-plugin): New target for - installing plugin headers. - -2009-07-13 Ed Schonberg - - * exp_ch7.adb, exp_util.adb, tbuild.adb, tbuild.ads, exp_ch4.adb, - exp_aggr.adb (Make_Temporary): Utility to create a defining identifier - and link it to the expression whose value it captures. - -2009-07-13 Robert Dewar - - * output.adb: Minor comment addition for last change - - * sinfo.ads: Minor reformatting - -2009-07-13 Vasiliy Fofanov - - * adaint.c (__gnat_portable_no_block_spawn): on Windows, return -1 when - spawn failed like on all other targets. - -2009-07-13 Ed Schonberg - - * exp_ch7.adb: Indicate origin of temporary for transient expression. - -2009-07-13 Thomas Quinot - - * s-oscons-tmplt.c: Add comment. - -2009-07-13 Robert Dewar - - * sinfo.adb, sinfo.ads, sem_util.adb, atree.adb, atree.ads: Minor - reformatting. Minor code reorganization (add 9 argument version of - Nkind_In). - - * impunit.adb: Remove s-os_lib from list of system extensions. - - * sem_util.ads: Minor reformatting - - * output.adb: Add warnings off/on around System.OS_Lib. - -2009-07-13 Bob Duff - - * exp_dist.adb: Minor comment updates. - -2009-07-13 Gary Dismukes - - * sem_ch10.adb, sem_ch12.adb, gnat1drv.adb, exp_ch4.adb: Fix casing of - several references to CodePeer. - -2009-07-13 Bob Duff - - * exp_dist.adb (Build_From_Any_Function,Build_To_Any_Function, - Build_TypeCode_Function_All): Do not recurse if the type is the base - type. - -2009-07-13 Robert Dewar - - * exp_ch4.adb: Minor comment change - -2009-07-13 Ed Schonberg - - * sem_ch5.adb (Analyze_Iteration_Scheme): Generate dummy reference for - type of iteration, to prevent spurious warnings. - -2009-07-13 Nicolas Roche - - * s-oscons-tmplt.c: On VxWorks target ensure that vxWorks.h is always - included. - -2009-07-13 Arnaud Charlet - - * switch-c.adb, usage.adb, sem_ch9.adb, gnat_ugn.texi, rtsfind.adb, - gnat1drv.adb, opt.ads, sem_ch13.adb (Inspector_Mode): Renamed to - Generate_SCIL. - (CodePeer_Mode): New -gnatC switch. - (Adjust_Global_Switches): Adjust settings for Generate_SCIL and - CodePeer_Mode. - -2009-07-13 Eric Botcazou - - * checks.adb (Selected_Range_Checks): Do not consider that a non-static - integer bound forces the check if it is compared to its subtype range. - -2009-07-13 Robert Dewar - - * prj.ads, prj-dect.adb, prj-err.ads, prj-err.adb, prj-nmsc.adb, - prj-strt.ads: Minor reformatting - -2009-07-13 Thomas Quinot - - * exp_dist.adb (Build_From_Any_Call): For the case of a generic type, - set the type of the From_Any call to the base type. - -2009-07-13 Doug Rupp - - * symbols-processing-vms-ia64.adb (Process): Add variables and - constants to retrieve and check for symbol visibility. - -2009-07-13 Javier Miranda - - * exp_ch4.adb (Expand_N_Unchecked_Type_Conversion): If conversion is to - the identical type we remove the conversion completely because - it is useless. - -2009-07-13 Emmanuel Briot - - * prj-err.adb (Error_Msg): One more case where a message should be - considered as a warning. - - * gnatcmd.adb (GNATCmd): Fix previous change, which negated a test. - -2009-07-13 Thomas Quinot - - * exp_dist.adb (Expand_All_Calls_Remote_Subprogram_Call): Analyze - calling stubs in the (library level) scope of the RCI locator, where it - is attached, not in the caller's scope. - -2009-07-13 Javier Miranda - - * sem_ch3.adb (Analyze_Object_Declaration): In case of class-wide - interface object declarations we delay the generation of the equivalent - record type declarations until its expansion because there are cases in - which they are not required. - - * sem_util.adb (Implements_Interface): Add missing support for subtypes. - - * sem_disp.adb (Check_Controlling_Formals): Minor code cleanup plus - addition of assertion. - - * exp_util.adb (Expand_Subtype_From_Expr): Renamings of class-wide - interface types require no equivalent constrained type declarations - because the expanded code only references the tag component associated - with the interface. - (Find_Interface_Tag): Improve management of interfaces that are - ancestors of tagged types. - - * exp_ch3.adb (Expand_N_Object_Declaration): Improve the expansion of - class-wide object declarations to add missing support to statically - displace the pointer to the object to reference the tag component - associated with the interface. - - * exp_disp.adb (Make_Tags) Avoid generation of internally generated - auxiliary types associated with user-defined dispatching calls if the - type has no user-defined primitives. - -2009-07-13 Vasiliy Fofanov - - * mingw32.h: Make it explicit that we need XP or later. - - * initialize.c: Remove useless extern symbol declaration. - - * adaint.h: Ditto, also expose __gnat_win32_remove_handle to allow - code reuse in expect.c. - - * adaint.c: Changes throughout the Windows section to redesign storage - of the child process list and the process identification. - - * expect.c (__gnat_kill, __gnat_waitpid): Simplify, cleanup, use pids - for interfacing, fix errors. - (__gnat_expect_portable_execvp): use function in adaint.c - -2009-07-13 Emmanuel Briot - - * prj-proc.adb, prj-part.adb, prj-part.ads, prj-strt.adb, - prj-strt.ads, prj.adb, prj.ads, prj-makr.adb, prj-makr.ads, - prj-dect.adb, prj-dect.ads, prj-nmsc.adb, prj-pars.adb, errutil.adb, - errutil.ads, prj-conf.adb, gnatname.adb, prj-err.adb, prj-err.ads - (Prj.Nmsc.Report_Error): Removed, no longer needed. - Always use Prj.Err.Report_Message. - -2009-07-13 Robert Dewar - - * prj.adb, sem_ch4.adb, sem_res.adb, prj-nmsc.adb: Minor reformatting - & comment edits. - -2009-07-13 Robert Dewar - - * opt.ads, prj-conf.adb, prj-env.adb, prj-ext.adb, prj-nmsc.adb, - prj-proc.adb, prj-tree.adb, prj-tree.ads: Minor reformatting - -2009-07-13 Emmanuel Briot - - * prj.adb, prj.ads, prj-env.adb, prj-conf.adb, prj-tree.adb, - mlib-prj.adb (Private_Part.Ada_Prj_Objects_File_Set, - Ada_Prj_Include_File_Set): Removed, since not needed - Code clean up. - -2009-07-13 Ed Schonberg - - * sem_ch4.adb (Analyze_Set_Membership): New procedure, subsidiary of - Analyze_Membership_Op. - - * sem_res.adb (Resolve_Set_Membership): New procedure, subsidiary of - Resolve_Membership_Op. - - * exp_ch4.adb (Expand_Set_Membership): New procedure, subsidiary of - Expand_N_In. - -2009-07-13 Robert Dewar - - * clean.adb: Minor reformattting - -2009-07-13 Emmanuel Briot - - * gnatcmd.adb, prj-proc.adb, make.adb, mlib-prj.adb, prj-ext.adb, - gnat_ugn.texi, prj.adb, prj.ads, clean.adb, prj-nmsc.adb, prj-util.adb, - prj-conf.adb, gnatname.adb, prj-env.adb, prj-env.ads, prj-tree.adb, - prj-tree.ads (Prj.Tree.Create*): New subprograms to create new packages - and attributes in a project tree. - (Add_Default_GNAT_Naming_Scheme): Provide real implementation. - Remove last remaining mode-specific code (ada_only or - multi_language). This was duplicating code - (Get_Mode, Set_Mode): removed, no longer used. - (Initialize_Project_Path): all tools will now take into account both - GPR_PROJECT_PATH and ADA_PROJECT_PATH (in that order). - Remove some global variables and subprograms no longer used - Make temporary files tree-specific, to avoid interferences between - trees loaded in memory at the same time. - (Prj.Delete_Temporary_File): new subprogram - (Object_Paths, Source_Paths): fields no longer stored in the project - tree, since they are only needed locally in Set_Ada_Paths. - (Set_Mapping_File_Initial_State_To_Empty): removed, since had no - effect in practice. - (Project_Tree_Data.Ada_Path_Buffer): removed, since it can be replaced - by local variables in the appropriate subprograms - (Has_Foreign_Sources): removed. - - * gcc-interface/Makefile.in: prj-pp.o is now needed to build gnatmake - -2009-07-13 Arnaud Charlet - - * gnat1drv.adb (Adjust_Global_Switches): No longer set - Back_Annotate_Rep_Info in inspector mode. - (Gnat1Drv): Need to call the back-end in inspector mode to generate SCIL - - * opt.ads: Update comment. - -2009-07-13 Robert Dewar - - * lib.adb, prj-nmsc.adb, prj-proc.adb, prj-proc.ads, prj.adb, - prj.ads: Minor reformatting and code reorganization. - - * par-ch3.adb (Check_Restricted_Expression): New procedure - -2009-07-13 Ed Schonberg - - * exp_attr.adb (Rewrite_Stream_Proc_Call): When rewriting a stream - attribute into a call of the corresponding suprogram, create extra - formals for the subprogram, because it may be a renaming whose - analysis does not create extra formals. - -2009-07-13 Emmanuel Briot - - * gnatcmd.adb, prj-proc.adb, prj-proc.ads, make.adb, prj-part.adb, - prj.adb, prj.ads, clean.adb, prj-nmsc.adb, prj-nmsc.ads, prj-pars.adb, - prj-pars.ads, prj-conf.adb, prj-conf.ads, prj-env.adb, prj-tree.adb, - prj-tree.ads: Minor reformatting. - (Processing_Flags): new record to encapsulate the set of common - parameters to several subprograms in the project manager. - (Prj.Nmsc.Process_Naming_Scheme): renames Check, and moved to body - Remove the need for the Current_Dir parameter in subprograms. - (Look_For_Sources): minor refactoring, now that we no longer need to - share subprograms between the two Ada_Only and Multi_Language modes - (Processing_Flags): New field Error_On_Unknown_Language. - Merge tests for library project between gnatmake and gprbuild. - -2009-07-13 Arnaud Charlet - - * lib.adb, make.adb, mlib.adb, exp_dist.adb: Update comments. - Minor reformatting. - -2009-07-13 Emmanuel Briot - - * prj-env.adb (Create_Config_Pragmas_File): Iterate on sources rather - than units. - -2009-07-13 Thomas Quinot - - * sem_ch3.adb (Process_Full_View): Propagate Has_Specified_Stream_{Read, - Write,Input,Output} from private view to full view. - - * sem_type.adb, sem_type.ads: Minor reformatting - -2009-07-13 Nicolas Setton - - * exp_dbug.ads: Add documentation note on the utility of - DW_AT_GNAT_encoding for IDEs. - -2009-07-13 Robert Dewar - - * g-socthi-vxworks.adb: Minor reformatting - - * gnatcmd.adb: Minor reformatting - -2009-07-13 Thomas Quinot - - * rtsfind.ads, exp_dist.adb (RE_Allocate_Buffer): Runtime entry - removed, not used anymore. - (Exp_Dist.PolyORB_Support.Helpers.Assign_Opaque_From_Any): - New subprogram, implements copy of an Any value into a limited object. - (Exp_Dist.PolyORB_Support.Build_General_Calling_Stubs, - Exp_Dist.PolyORB_Support.Build_Subprogram_Receiving_Stubs, - Exp_Dist.PolyORB_Support.Helpers.Build_From_Any_Function): For the case - of parameters of a limited type, use the above new subprogram. - -2009-07-13 Emmanuel Briot - - * prj-nmsc.adb, prj-proc.adb, mlib.adb (Add_Source): new parameter - Location. - (Copy_ALI_Files): Avoid calls to read when pointing outside of the - allocated space. - (Error_Report): Remove global variable, replaced by parameters. - -2009-07-13 Thomas Quinot - - * g-socthi-vxworks.adb (C_Sendto): VxWorks does not support the - standard sendto(2) interface for connected sockets (passing a null - destination address). Use send(2) instead for that case. - -2009-07-13 Pascal Obry - - * adaint.c: Fix __gnat_stat() with Win32 UNC paths. - -2009-07-13 Emmanuel Briot - - * prj-proc.adb, prj-proc.ads, prj.ads, prj-nmsc.adb, prj-nmsc.ads, - prj-pars.adb, prj-conf.adb, prj-conf.ads: Remove all remaining global - variables and tables in prj-nmsc.adb. - (Tree_Processing_Data): Renames Processing_Data, some new fields added - (Project_Processing_Data): New record - Simplify/unify check for missing sources. - -2009-07-13 Emmanuel Briot - - * gnatcmd.adb, make.adb, mlib-prj.adb, prj-part.adb, mlib.adb, - prj.adb, prj.ads, clean.adb, prj-nmsc.adb, prj-nmsc.ads, prj-pars.adb, - prj-pars.ads, prj-conf.adb, prj-conf.ads, prj-tree.adb, - prj-tree.ads (Immediate_Directory_Of): Removed. - (Prj.Pars): Now parse the project simulating a default config file. - (Add_Default_GNAT_Naming_Scheme): New subprogram - (Check_Naming_Multi_Lang): Fix default value for Dot_Replacement. - Remove gnatmake-specific parsing of source files. - (Check_Illegal_Suffix): Renames Is_Illegal_Suffix, since it now raises - the error itself to provide more precise diagnostics. - (Process_Exceptions_Unit_Based): Avoid duplicate error message when - a unit belongs to several projects. - (Copy_Interface_Sources): Search the full path of files to copy in the - list of sources of the application rather than in the list of units. - (Parse_Project_And_Apply_Config): Do not reset the name of the main - project file. - (Check_File): Use htables to find out whether a source is duplicated. - (Add_Source): check whether the source or unit were already seen earlier - - * gcc-interface/Makefile.in: Update gnatmake dependencies. - -2009-07-13 Robert Dewar - - * par-ch3.adb (P_Discrete_Choice_List): Choice can only be simple - expression if extensions permitted. - - * par-ch4.adb (P_Membership_Test): New procedure (implement membership - set tests). - (P_Relation): Use P_Membership_Test - - * par.adb (P_Membership_Test): New procedure (implement membership set - tests). - - * sinfo.ads, sinfo.adb (N_In, N_Not_In) Add Alternatives field for sets. - - * sprint.adb (Sprint_Node): Handle set form for membership tests. - -2009-07-13 Thomas Quinot - - * exp_dist.adb (Add_RACW_Primitive_Declarations_And_Bodies): - Do not attempt to generate stubs for predefined primitives of - synchronized interfaces. - (Add_Stub_Type): Factor some code from the PCS-specific variants of - Build_Stub_Type. - -2009-07-13 Ed Schonberg - - * sem_disp.adb (Override_Dispatching_Operation): Functions inherit the - Controlling_Result flag from the operation they override. - -2009-07-13 Arnaud Charlet - - * gcc-interface/Make-lang.in: Update dependencies - -2009-07-13 Robert Dewar - - * gnat_ugn.texi: The gnatf switch no longer is needed to get full - details on unsupported constructs. - - * rtsfind.adb: Remove references to All_Errors_Mode, give errors - unconditionally. - - * s-trafor-default.adb: Correct some warnings - - * s-valwch.adb, a-calend.adb, freeze.adb, prj.ads, s-vmexta.adb, - sem.adb, sem_ch10.adb, sem_ch6.adb, sem_disp.adb, vxaddr2line.adb: - Minor reformatting. - - * par-ch4.adb (Conditional_Expression): Capture proper location for - conditional expression, should point to IF. - - * s-tassta.adb, a-wtdeau.adb, s-tasren.adb, s-arit64.adb, s-imgdec.adb, - s-direio.adb, s-tpobop.adb, g-socket.adb, s-tposen.adb, s-taskin.adb, - g-calend.adb, s-regpat.adb, s-scaval.adb, g-catiio.adb: Minor code - reorganization (use conditional expressions). - -2009-07-13 Ed Schonberg - - * exp_util.adb (Remove_Side_Effects): If the expression is a call to a - build-in-place function that returns an inherently limited type (not - just a task type) create proper object declaration so that extra - build-in-place actuals are properly added to the call. - -2009-07-13 Robert Dewar - - * freeze.adb (Freeze_Entity): Implement Warn_On_Suspicious_Modulus_Value - - * gnat_ugn.texi: Add documentation for -gnatw.m/.M - - * opt.ads (Warn_On_Suspicious_Modulus_Value): New flag - - * sem_warn.adb (Set_Dot_Warning_Flag): Set/reset - Warn_On_Suspicious_Modulus_Value. - - * ug_words: Add entries for -gnatw.m/-gnatw.M. - - * usage.adb: Add lines for -gnatw.m/.M switches. - - * vms_data.ads: Add [NO]SUSPICIOUS_MODULUS for -gnatw.m/w.M - -2009-07-13 Javier Miranda - - * sem_ch6.adb (Check_Synchronized_Overriding): Add missing check before - reading the Is_Interface attribute of the dispatching type. - -2009-07-13 Robert Dewar - - * a-convec.adb: Minor code reorganization (use conditional expressions) - -2009-07-13 Robert Dewar - - * freeze.adb (Check_Suspicious_Modulus): New procedure. - -2009-07-13 Robert Dewar - - * i-cobol.ads: Minor code fix (2**4 instead of 16 as modulus to avoid - warning). - - * par-ch4.adb: Minor reformatting - -2009-07-13 Ed Schonberg - - * freeze.adb, freeze.ads, exp_aggr.adb: Rename Expand_Atomic_Aggregate - => Is_Atomic_Aggregate - -2009-07-13 Emmanuel Briot - - * prj-nmsc.adb: Avoid traversing the list of source files if - we have already processed all locally removed files. - -2009-07-13 Jose Ruiz - - * gnat_ugn.texi: Fix typo. - -2009-07-13 Robert Dewar - - * freeze.adb: Minor reformatting - Minor code reorganization (use Nkind_In) - - * exp_ch6.adb, prj.adb, sem_res.adb: Minor reformatting - -2009-07-11 Eric Botcazou - - * checks.adb (Apply_Address_Clause_Check): Remove Size_Warning_Output - local variable and do not test it in Compile_Time_Bad_Alignment. - Do not issue size or alignment warnings for the X'Address form. - * sem_util.ads (Find_Overlaid_Object): Delete. - (Find_Overlaid_Entity): New procedure. - * sem_util.adb (Find_Overlaid_Object): Rename to... - (Find_Overlaid_Entity): ...this and turn into a procedure. Report - whether the address is offseted within the overlaid entity. - (Has_Compatible_Alignment): Track the offset globally instead of - passing it to Check_Offset. For an indexed component, compute the - full offset when possible. If the resulting offset is zero, only - check the prefix. - (Check_Offset): Delete. - * sem_ch13.adb (Address_Clause_Check_Record): Add Off field. - (Address_Aliased_Entity): Delete. - (Analyze_Attribute_Definition_Clause) : Call - Find_Overlaid_Entity to find the overlaid entity and the offset. - Adjust throughout for above change. - (Validate_Address_Clauses): Always use attributes of entities, not of - their type. Tweak message for warning. Call Has_Compatible_Alignment - if the address is offseted to warn about incompatible alignments. - * gcc-interface/gigi.h (annotate_object): Declare. - * gcc-interface/decl.c (gnat_to_gnu_entity) : Annotate renaming - entity. Call annotate_object instead of annotating manually objects. - (annotate_object): New function. - * gcc-interface/trans.c (Subprogram_Body_to_gnu): Annotate parameters - at the end. - -2009-07-11 Eric Botcazou - - * gcc-interface/ada-tree.h: Minor reorganization. - * gcc-interface/misc.c (gnat_print_decl): Minor tweaks. - (gnat_print_type): Likewise. - -2009-07-11 Thomas Quinot - - * sem_util.adb, sem_res.adb, sem_warn.adb: Minor comment editing: - Lvalue -> lvalue - - * exp_ch6.adb: Minor reformatting - -2009-07-11 Ed Schonberg - - * freeze.adb (Expand_Atomic_Aggregate): Clean up code, take into - account possible type qualification to determine whether aggregate - needs a target temporary to respect atomic type or object. - - * exp_aggr.adb (Expand_Record_Aggregate): Use new version of - Expand_Atomic_Aggregate. - -2009-07-11 Emmanuel Briot - - * prj.adb, prj.ads, prj-nmsc.adb (Mark_Excluded_Sources): Speed up - algorithm. - (Excluded_Sources_Htable): No longer a global table. - Change error message to indicate which files are illegal in the list - of excluded files, as opposed to only the location in the project - file. - (Find_Source): New subprogram. - -2009-07-10 Thomas Quinot - - * exp_ch7.adb: Update comments. - -2009-07-10 Arnaud Charlet - - * exp_ch13.adb (Expand_N_Record_Representation_Clause): Ignore mod - clause if -gnatI is set instead of crashing. - -2009-07-10 Ed Schonberg - - * sem_ch11.adb (Same_Expression): Null is always equal to itself. - Additional work to remove redundant successive raise statements, in - this case access checks. - -2009-07-10 Vincent Celier - - * make.adb (Compile): Always create a deep copy of the mapping file - argument (-gnatem=...) as it may be deallocate/reallocate by - Normalize_Arguments. - -2009-07-10 Javier Miranda - - * einfo.adb (Directly_Designated_Type): Add assertion. - - * sem_res.adb (Check_Fully_Declared_Prefix): Add missing check on - access types before using attribute Directly_Designated_Type. - -2009-07-10 Emmanuel Briot - - * prj.ads: Minor typo fix - -2009-07-10 Ed Schonberg - - * sem_ch6.adb (Add_Extra_Formal): Protected operations do no need - special treatment. - - * exp_ch6.adb (Expand_Protected_Subprogram_Call): If rewritten - subprogram is a function call, resolve properly, to ensure that extra - actuals are added as needed. - -2009-07-10 Thomas Quinot - - * sem_aggr.adb: Minor comments editing - - * exp_tss.adb, exp_ch3.adb: Minor reformatting - -2009-07-10 Robert Dewar - - * exp_util.adb: Minor code reorganization (use N_Short_Circuit) - - * exp_ch4.adb: Add ??? comment for conditional expressions on limited - types. - - * checks.adb (In_Declarative_Region_Of_Subprogram_Body): New procedure, - replaces Safe_To_Capture_In_Parameter_Value, and properly handles the - case of conditional expressions that may not be elaborated. - - * sem_util.adb (Safe_To_Capture_Value): Properly handle case of - conditional expression where we may not execute then then or else - branches. - -2009-07-10 Arnaud Charlet - - * i-cexten.ads (bool): New type. - -2009-07-10 Robert Dewar - - * sinfo.ads (N_Short_Circuit): New definition - - * sem_ch13.adb, sem_ch6.adb, sem_eval.adb, sem_res.adb, - treepr.adb: Minor code reorganization (use N_Short_Circuit) - -2009-07-10 Javier Miranda - - * exp_ch3.adb (Expand_Freeze_Record_Type): Handle constructors of - non-tagged record types. - - * sem_prag.adb - (Process_Import_Or_Interface): Allow the use of "pragma Import (CPP,..)" - with non-tagged types. Required to import C++ classes that have no - virtual primitives. - (Analyze_Pragma): For pragma CPP_Constructor. Allow the use of functions - returning non-tagged types. For backward compatibility, if the - constructor returns a class wide type we internally change the - returned type to the corresponding non class-wide type. - - * sem_aggr.adb - (Valid_Ancestor_Type): CPP_Constructors code cleanup. - (Resolve_Extension_Aggregate): CPP_Constructors code cleanup. - (Resolve_Aggr_Expr): CPP_Constructors code cleanup. - (Resolve_Record_Aggregate): CPP_Constructors code cleanup. - - * sem_ch3.adb - (Analyze_Object_Declaration): CPP_Constructors code cleanup. - - * sem_ch5.adb (Analyze_Assignment): CPP_Constructors code cleanup. - - * sem_util.adb (Is_CPP_Constructor_Call): Code cleanup. - - * sem_res.adb (Resolve_Allocator): CPP_Constructors code cleanup. - - * exp_ch4.adb (Expand_Allocator_Expression): CPP_Constructors code - cleanup. - - * exp_aggr.adb (Build_Record_Aggr_Code): CPP_Constructors code clean up. - - * gnat_rm.texi - (pragma CPP_Class): Document that it can be used now with non-tagged - record types. - (pragma CPP_Constructor): Document that it can be used now with - functions returning specific types. For backward compatibility - we also support functions returning class-wide types. - - * gnat_ugn.texi - (Interfacing with C++ constructors): Update the examples to incorporate - the new syntax in which the functions used to import C++ constructors - return specific types. - (Interfacing with C++ at the Class Level): Update the examples to - incorporate the new syntax in which the functions used to import - C++ constructors return specific types. - -2009-07-10 Thomas Quinot - - * exp_disp.adb (Make_Disp_Asynchronous_Select_Body, - Make_Disp_Conditional_Select_Body, - Make_Disp_Timed_Select_Body): For the case of a type that is neither an - interface nor a concurrent type, the primitive body is empty. Generate - a null statement so that it remains well formed. - -2009-07-10 Ed Schonberg - - * exp_aggr.adb (Build_Record_Aggr_Code): If the type has discriminants, - replace references to them in defaulted component expressions with - references to the values of the discriminants of the target object. - -2009-07-10 Ed Schonberg - - * sem_prag.adb (Analyze pragma, case Task_Name): Analyze argument of - pragma, to capture global references if the context is generic. - - * exp_ch2.adb (Expand_Discriminant): If a task type discriminant - appears within the initialization procedure for the corresponding - record, replace it with the proper discriminal. - -2009-07-10 Vincent Celier - - * make.adb: Do not include object directories or library ALI - directories of library projects in the object path. - -2009-07-10 Javier Miranda - - * exp_util.adb (Find_Interface_Tag): Reorder processing of incoming - Typ argument to ensure proper management of access types. - -2009-07-10 Ed Schonberg - - * exp_ch7.adb (Build_Final_List): If the list is being built for a - Taft-Amendment type, place the finalization list in the package body, - to ensure that the tree for the spec is identical whenever it is - compiled. - -2009-07-10 Javier Miranda - - * sem_ch3.adb (Build_Derived_Record_Type): Use the full-view when - inheriting attributes from a private Parent_Base. - -2009-07-10 Ed Schonberg - - * sem_ch11.adb (analyze_raise_xxx_error): Remove consecutive raise - statements with the same condition. - -2009-07-10 Robert Dewar - - * exp_ch4.adb (Raise_Accessibility_Error): New procedure - -2009-07-09 Tom Tromey - - * raise-gcc.c: Include dwarf2h (unconditionally). - -2009-07-09 Ed Schonberg - - * sem_ch10.adb (Install_Context): If the unit is a package body, - install the private with_clauses of the corresponding package - declaration. - -2009-07-09 Robert Dewar - - * checks.adb: Minor reformatting - -2009-07-09 Vasiliy Fofanov - - * ug_words, gnat_ugn.texi: Move VMS equivalents of the last check in - into ug_words. - -2009-07-09 Thomas Quinot - - * sem_ch13.adb (Analyze_Attribute_Definition_Clause, case Address): - Do not warn for a constant overlaying any constant object - -2009-07-09 Ed Schonberg - - * sem_ch10.adb (Install_Context): If the unit is a package body, - install the private with_clauses of the corresponding package - declaration. - -2009-07-09 Robert Dewar - - * checks.adb: Minor reformatting - -2009-07-09 Vasiliy Fofanov - - * ug_words, gnat_ugn.texi: Move VMS equivalents of the last check in - into ug_words. - -2009-07-09 Thomas Quinot - - * sem_ch13.adb (Analyze_Attribute_Definition_Clause, case Address): - Do not warn for a constant overlaying any constant object - -2009-07-09 Arnaud Charlet - - * gcc-interface/Make-lang.in: Update dependencies - -2009-07-09 Thomas Quinot - - * g-socket.adb (Check_Selector): Do not create local copies of the - socket sets on the stack. - -2009-07-09 Vasiliy Fofanov - - * gnat_ugn.texi: Add missing VMS translations. - -2009-07-09 Ed Schonberg - - * sem_prag.adb (Analyze_Pragma, case Precondition): Do not analyze the - condition, to prevent generation of visible code during expansion, - when Check is not enabled. - -2009-07-09 Gary Dismukes - - * checks.adb (Install_Static_Check): Call Possible_Local_Raise so that - the check gets registered for any available local handler - (Set_Local_Raise). - - * sem_util.adb: Add with and use of Exp_Ch11. - (Apply_Compile_Time_Constraint_Error): Call Possible_Local_Raise so - that the check gets registered for any available local handler. - - * exp_ch4.adb (Expand_N_Slice): Remove call to Enable_Range_Check - on slice ranges. - -2009-07-09 Steve Baird - - * exp_ch11.adb (Force_Static_Allocation_Of_Referenced_Objects): New - function. - (Expand_N_Exception_Declaration): Fix handling of exceptions - declared in a subprogram. - -2009-07-09 Emmanuel Briot - - * prj-nmsc.adb (Find_Sources): Avoid error messages from gprbuild from - multi-unit files. - -2009-07-09 Thomas Quinot - - * freeze.adb: Minor reformatting - - * exp_ch3.adb: Minor comment fix. - - * sinfo.ads: Minor comment fix - -2009-07-09 Ed Schonberg - - * exp_ch4.adb (Expand_N_Conditional_Expression): Set Related_Expression. - -2009-07-09 Ed Schonberg - - * freeze.adb (Freeze_Expression): If the expression is the name of a - function in a call, and the function has not been frozen yet, create - extra formals for it to ensure that the proper actuals are created - when expanding the call. - -2009-07-09 Emmanuel Briot - - * prj-pp.adb (Print): Fix handling of source index when set on a - declaration node. - -2009-07-09 Ed Schonberg - - * einfo.ads, einfo.adb: New attribute Related_Expression, used to link - a temporary to the source expression whose value it captures. - - * exp_util.adb (Remove_Side_Effects): Set Related_Expression as needed. - -2009-07-07 Manuel López-Ibáñez - - * gcc-interface/trans.c (gnat_gimplify_expr): Replace EXPR_LOCUS by - EXPR_LOCATION. - -2009-07-07 Gary Dismukes - - * exp_ch6.adb (Expand_Actuals): Call Add_Call_By_Copy_Code for in out - parameters when the subtype of the actual is not known to be a subrange - of the formal's subtype. - (Expand_Call): Generate a range check only in the E_In_parameter case - (in out parameter range checks are now handled in Expand_Actuals). - - * exp_ch4.adb (Expand_N_Slice): Restore code that calls - Enable_Range_Check. - -2009-07-07 Robert Dewar - - * a-stwise.adb, a-stzsea.adb, a-strsea.adb: Add comments - -2009-07-07 Javier Miranda - - * exp_disp.adb (Expand_Interface_Conversion): Handle access type whose - designated type comes from a limited views. - -2009-07-07 Emmanuel Briot - - * prj.ads, prj-nmsc.adb (Mark_Excluded_Sources): Fix handling of - locally removed files that are later made visible again in an importing - project. - -2009-07-07 Robert Dewar - - * gnat_rm.texi: Clarify documentation of Stream_Convert pragma - -2009-07-07 Sergey Rybin - - * gnat_ugn.texi: Add an example to the description of gnatcheck - 'Style_Checks' rule option. - -2009-07-07 Tristan Gingold - - * seh_init.c: Fix inline assembly statement in seh_init.c - -2009-07-07 Ed Schonberg - - * sem_warn.adb (Check_References): Do not emit warnings on formals of - an entry body. Only the formals of the entry declaration are traced. - -2009-07-07 Robert Dewar - - * s-osprim-mingw.adb: Minor code reorganization - -2009-07-07 Robert Dewar - - * prj-nmsc.adb: Minor reformatting - -2009-07-07 Pascal Obry - - * a-stwise.adb, a-stzsea.adb, a-strsea.adb (Index): properly handle - cases where Pattern is longer than Source. - -2009-07-07 Pascal Obry - - * s-osprim-mingw.adb (Get_Base_Time): Avoid infinite loop. - -2009-07-07 Emmanuel Briot - - * prj-nmsc.adb (Process_Naming): canonicalize file suffixes read in the - project file. - -2009-07-07 Ed Schonberg - - * exp_ch3.adb (Expand_Freeze_Record_Type): Add extra formals to - primitive operations, in case one of them is called in the - initialization procedure for the type. - -2009-07-07 Robert Dewar - - * a-calend.adb: Minor code reorganization (use conditional expressions) - - * s-stusta.ads, s-interr-hwint.adb, g-expect-vms.adb, s-secsta.ads, - prj-nmsc.adb, a-teioed.adb, output.ads, prj-attr.ads, a-textio.adb, - s-taskin.ads, scans.ads, s-osinte-vms.adb, s-taprop-solaris.adb, - s-tpopsp-posix-foreign.adb, s-trafor-default.adb, gnat1drv.adb, - s-stchop-vxworks.adb, s-tpopsp-posix.adb, prj-env.adb, prj-env.ads, - g-comlin.adb, exp_ch11.adb: Minor reformatting. - -2009-07-07 Gary Dismukes - - * checks.adb (Generate_Range_Check): Replace type conversions with - unchecked conversions to support the case of performing range checks - on Enum'Val (permits integer values to be converted to enumeration). - - * exp_attr.adb (Expand_N_Attribute_Reference, cases Attribute_Pred, - Attribute_Succ): Set Do_Range_Check to False before calling - Expand_Pred_Succ, to prevent gigi from generating any range checks. - (Expand_N_Attribute_Reference, case Attribute_Val): - Generate a range check when needed (and set Do_Range_Check to False). - - * exp_ch3.adb (Expand_N_Object_Declaration): Generate a range check on - scalar object initialization if needed. - - * exp_ch4.adb (Expand_Allocator_Expression): Generate range checks - when needed on scalar allocators. - (Expand_N_Qualified_Expression): Generate range check when needed. - (Expand_N_Slice): Remove call to Enable_Range_Check on slice ranges. - Checks on slice ranges handled in Resolve_Slice. - - * exp_ch5.adb (Expand_N_Assignment_Statement): Generate a range check, - when needed, for all scalar assignments, not just discrete. - (Expand_Simple_Function_Return): Resolve the conversion created for a - scalar function return so that the conversion will get expanded to - generate a possible constraint check. - - * exp_ch6.adb (Expand_Actuals): Call Add_Call_By_Copy_Code for out and - in out scalar actuals when subtypes don't match, to ensure generation - of return checks (and set Do_Range_Check to False). - (Expand_Call): Uncomment code to perform range checks, but make it apply - only to in and in out parameters (checks on parameter returns are - handled in Expand_Actuals). If a scalar actual for a call to a derived - subprogram is marked as needing a range check, peform it here (and set - Do_Range_Check to False). - - * sem_aggr.adb (Resolve_*_Aggregate.Resolve_Aggr_Expr): Generate a - range check on scalar component associations when needed. - - * sem_eval.adb (In_Subrange_Of): Return False when the first type has - infinities but the second type does not, as these aren't compatible - floating-point types. - - * sem_res.adb (Resolve_Slice): In the case where the prefix of the - slice is itself a slice, pick up the Etype of the prefix. This handles - the case where the prefix was an Image attribute expanded to a slice, - and ensures that we get the subtype with the slice constraint rather - than the unconstrained subbtype of the 'Image. - -2009-07-07 Ed Schonberg - - * sem_ch4.adb (Analyze_Conditional_Expression): handle properly - overloaded expressions in a conditional expressions. - - * sem_res.adb (Resolve): Handle properly overloaded conditional - expressions. - -2009-07-07 Robert Dewar - - * scng.adb: Minor reformattting - - * par-ch2.adb (Scan_Pragma_Argument_Association): Pragma argument - association allows conditional expression without parens. - - * par-ch4.adb (P_Name): Attribute arguments can be conditional - expressions without enclosing parentheses, and also as parameters, - indexing expressions etc. - (P_Conditional_Expression): New procedure - (P_Expression_If_OK): New procedure - - * par.adb (P_Conditional_Expression): New procedure - (P_Expression_If_OK): New procedure - - * sem_ch4.adb (Analyze_Conditional_Expression): Allow for two argument - form of conditional expression. - - * sem_res.adb (Resolve_Conditional_Expression): Deal with supplying - missing True argument if ELSE argument missing. - - * sinfo.adb (Is_Elsif): New flag - - * sinfo.ads (N_Conditional_Expression): This node is now a syntactic - part of the language, and the documentation is modified accordingly. - (Is_Elsif): New flag - -2009-07-06 Olivier Hainque - - * gcc-interface/trans.c (Handled_Sequence_Of_Statements_to_gnu, - setjmp_longjmp): Attach the exception propagation reraise fallback - to the sequence end label location when we have it. - -2009-07-04 Francois-Xavier Coudert - - PR ada/40608 - * init.c (APPLE): Include . - (__gnat_error_handler, APPLE): Add ATTRIBUTE_UNUSED marker. - -2009-07-04 Eric Botcazou - - * ada-tree.h (SET_TYPE_LANG_SPECIFIC): Rewrite. - (SET_DECL_LANG_SPECIFIC): Likewise. - (TYPE_RM_VALUE): New macro. - (SET_TYPE_RM_VALUE): Likewise. - (TYPE_RM_SIZE): Rewrite in terms of TYPE_RM_VALUE. - (TYPE_RM_MIN_VALUE): Likewise. - (TYPE_RM_MAX_VALUE): Likewise. - (SET_TYPE_RM_SIZE): Rewrite in terms of SET_TYPE_RM_VALUE. - (SET_TYPE_RM_MIN_VALUE): Likewise. - (SET_TYPE_RM_MAX_VALUE): Likewise. - * decl.c (gnat_to_gnu_entity) : Remove kludge. - -2009-07-04 Laurent GUERBY - - PR ada/40631 - * tracebak.c (__gnat_backtrace): Fix old-style definition. - -2009-07-02 Rainer Orth - - * tracebak.c [i386 && sun] (IS_BAD_PTR): Use -1UL in comparison. - -2009-07-01 John David Anglin - - PR ada/40609 - * init.c (__gnat_error_handler, HP-UX): Add ATTRIBUTE_UNUSED marker to - ucontext argument. - -2009-07-01 Eric Botcazou - - * init.c (__gnat_error_handler, Solaris): Add ATTRIBUTE_UNUSED marker. - -2009-06-30 Eric Botcazou - - * gcc-interface/utils2.c (build_binary_op) : Do not use - the type of the left operand if it pads a self-referential type when - the right operand is a constructor. - - * gcc-interface/lang-specs.h: Fix copyright date. - -2009-06-30 Eric Botcazou - - * gcc-interface/decl.c: Include tree-inline.h. - (annotate_value) : Try to inline the call in the expression. - * gcc-interface/utils.c (max_size) : Likewise. - * gcc-interface/utils2.c: Include tree-inline. - (known_alignment) : Likewise. - -2009-06-30 Eric Botcazou - - * raise-gcc.c: Include dwarf2.h conditionally. - -2009-06-29 Tom Tromey - - * raise-gcc.c: Include elf/dwarf2.h. - -2009-06-27 Laurent GUERBY - - * tb-gcc.c (trace_callback): Add casts to silence warning. - -2009-06-27 Eric Botcazou - - * tb-gcc.c: Fix copyright notice. - -2009-06-27 Eric Botcazou - - * init.c (__gnat_set_globals): Add prototype. - * adaint.c (__gnat_binder_supports_auto_init): Likewise. - (__gnat_sals_init_using_constructors): Likewise. - * gcc-interface/utils.c (gnat_pushlevel): Likewise. - (get_block_jmpbuf_decl): Likewise. - (gnat_poplevel): Likewise. - (merge_sizes): Rename local variable. - (copy_type): Likewise. - (build_vms_descriptor32): Likewise. - (build_vms_descriptor): Likewise. - (convert_vms_descriptor64): Likewise. - (convert_vms_descriptor32): Likewise. - (convert_to_fat_pointer): Likewise. - (maybe_unconstrained_array): Likewise. - (def_fn_type): Use promoted type with va_arg. - * gcc-interface/decl.c (gnat_to_gnu_entity): Add declaration. - (substitute_in_type): Rename local variable. - * gcc-interface/Make-lang.in (ada-warn): Use STRICT_WARN. - -2009-06-26 Laurent GUERBY - - * tb-gcc.c (trace_callback): Use char* instead of void*. - * gcc-interface/misc.c (enumerate_modes): Make loop C++ compatible. - * gcc-interface/trans.c (parm_attr): Rename to parm_attr_d. - (Attribute_to_gnu): Adjust for above change. - (Subprogram_Body_to_gnu): Likewise. - * gcc-interface/utils.c (merge_sizes): Rename local variable. - (copy_type): Likewise. - (build_vms_descriptor32): Likewise. - (build_vms_descriptor): Likewise. - (convert_vms_descriptor64): Likewise. - (convert_vms_descriptor32): Likewise. - (convert_to_fat_pointer): Likewise. - (maybe_unconstrained_array): Likewise. - * gcc-interface/decl.c (substitute_in_type): Likewise. - -2009-06-26 Eric Botcazou - - * gcc-interface/decl.c (cannot_be_superflat_p): New predicate. - (gnat_to_gnu_entity) : Use it to build the expression - of the upper bound of the index types. - -2009-06-26 Eric Botcazou - - * gcc-interface/decl.c (gnat_to_gnu_entity) : Factor - out common predicate. Use the maximum to compute the upper bound of - the index type only when it is not wider than sizetype. Perform the - comparison in the index type for the generic expression. Use real - precision to decide whether to generate special types for debugging - information. - -2009-06-26 Matthew Gingell - - * adaint.c: Do not use the dummy version of convert_addresses on LynxOS - -2009-06-26 Vincent Celier - - * prj.ads (No_Language_Config): Value of Dependency_Kind is None by - default. - -2009-06-26 Robert Dewar - - * exp_ch4.adb, gnatcmd.adb, make.adb: Minor reformatting - -2009-06-26 Eric Botcazou - - * gcc-interface/decl.c (gnat_to_gnu_entity) : Pass - correct arguments to create_field_decl. Remove redundant iteration. - Rewrite computation of the maximum size. - : Reorder and simplify handling of special cases. - Rewrite computation of the maximum size. Use consistent naming. - * gcc-interface/trans.c (Attribute_to_gnu) : Swap - comparison order for consistency. Use generic integer node to - build the operator and fold the result. - -2009-06-25 Vincent Celier - - * vms_data.ads: Minor comment change - -2009-06-25 Gary Dismukes - - * exp_ch5.adb (Expand_N_Extended_Return_Statement): Don't build an - assignment statement to targeting a caller-provided object when the - result type is an interface type. - - * exp_ch6.adb (Expand_Call): Remove redundant test of - Is_Limited_Interface (Is_Inherently_Limited is sufficient). - (Is_Build_In_Place_Function): Remove test for Is_Limited_Interface. - - * sem_aggr.adb (Check_Expr_OK_In_Limited_Aggregate): Add type in call - to OK_For_Limited_Init. - - * sem_aux.adb (Is_Inherently_Limited_Type): Revise limited type - condition so that True is returned for all limited interfaces, not - just synchronized ones. Ignore components of an interface type when - checking for limited components (such a component can be a parent - component). - - * sem_ch3.ads (OK_For_Limited_Init_In_05): Add type parameter. - (OK_For_Limited_Init): Add type parameter. - - * sem_ch3.adb (Check_Initialization): Add type in call to - OK_For_Limited_Init. - (OK_For_Limited_Init): Add new type param in call to - OK_For_Limited_Init_In_05. - (OK_For_Limited_Init_In_05): Permit arbitrary expressions of a - nonlimited type when the context type is a limited interface. Add type - on recursive calls. - - * sem_ch4.adb (Analyze_Allocator): Add type in call to - OK_For_Limited_Init. - - * sem_ch6.adb (Check_Limited_Return): Add type in call to - OK_For_Limited_Init. - - * sem_ch12.adb (Analyze_Formal_Object_Declaration): Add type in call to - OK_For_Limited_Init. - (Instantiate_Object): Add type in call to OK_For_Limited_Init. - - * sem_type.adb (Interface_Present_In_Ancestor): In the case of a - class-wide interface, get the base type before applying Etype, in order - to account for class-wide subtypes. - -2009-06-25 Emmanuel Briot - - * gnatcmd.adb, prj-proc.adb, make.adb, prj.adb, prj.ads, prj-nmsc.adb, - prj-util.adb, prj-env.adb, prj-env.ads: Merge handling of naming_data - between gnatmake and gprbuild. - (Naming_Data): Removed, no longer used - (Naming_Table, Project_Tree_Ref.Namings): Removed, since this is only - needed locally in one subprogram, no need to store forever in the - structure. - (Check_Naming_Scheme, Check_Package_Naming): Merged, since they play - a similar role. - (Body_Suffix_Of, Body_Suffix_Id_Of, Register_Default_Naming_Scheme, - Same_Naming_Scheme, Set_Body_Suffix, Set_Spec_Suffix, Spec_Suffix_Of, - Spec_Suffix_Id_Of): removed, no longer used. - -2009-06-25 Javier Miranda - - * sem_res.adb (Resolve_Allocator): Skip test requiring exact match of - types on qualified expression in calls to imported C++ constructors. - - * exp_ch4.adb (Expand_Allocator_Expression): Add missing support for - imported C++ constructors. - -2009-06-25 Sergey Rybin - - * vms_data.ads: Add qualifier for new gnatcheck '-t' option. - -2009-06-25 Vincent Celier - - * s-os_lib.adb (Normalize_Pathname.Get_Directory): If directory - provided, on Windows change all '/' to '\'. - - * fmap.ads, fmap.adb (Remove_Forbidden_File_Name): Remove, no longer - used. Minor comment changes - - * prj-nmsc.adb: Do not call Fmap.Add_Forbidden_File_Name or - Remove_Forbidden_File_Name. - -2009-06-25 Quentin Ochem - - * prj.ads (Unit_Index): Now general access type. - -2009-06-25 Pascal Obry - - * a-stwise.adb, a-stzsea.adb: Fix confusion between 'Length and 'Last. - -2009-06-25 Emmanuel Briot - - * fmap.ads, make.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb, - prj-env.ads (Source_Data.Get_Object): Field removed, since it can be - computed efficiently from the other fields. - (Object_To_Global_Archive): New subprogram - (Create_Mapping): Remove unneeded call to Remove_Forbidden_File_Name. - (Override_Kind): Fix handling of separates in Ada. - (Create_Mapping_File): Remove duplicate code - (Naming_Data.Implementation_Exception, Specification_Exception): - field removed, since never used. - (Naming_Data.Specs, .Bodies): field removed, since this is only - used while processing the project and is not needed once the tree - is in memory. This brings Naming_Data and Lang_Naming_Data - closer (same content now, but different use still). - -2009-06-25 Pascal Obry - - * sem_ch4.adb: Minor reformatting. - - * a-strsea.adb: Fix confusion between 'Length and 'Last. - -2009-06-25 Ed Schonberg - - * exp_attr.adb (Expand_N_Attribute_Reference, case 'Access and - Unchecked_Access): If the context is an interface type, and the prefix - is of the corresponding class-wide type, do not insert a conversion - because the pointer displacement has already taken place, and we must - retain the class-wide type in a dispatching context. - -2009-06-25 Emmanuel Briot - - * prj-nmsc.adb, prj-env.adb (Override_Kind): Unset the unit field of - the previous source file. - (Create_Mapping): Iterate on sources rather than on units. - -2009-06-25 Emmanuel Briot - - * gnatcmd.adb, make.adb, mlib-prj.adb, prj.adb, prj.ads, prj-nmsc.adb, - prj-env.adb, prj-env.ads (Slash): removed, no longer used - (Source_Data): no longer use Path.Name to point to a locally removed - file. Instead we use the field Locally_Removed which is clearer - -2009-06-25 Arnaud Charlet - - * gcc-interface/Make-lang.in: Remove references to sem_maps.o - - * sem_maps.adb, sem_maps.ads: Removed, not used. - -2009-06-25 Ed Falis - - * s-vxwext-rtp.ads: Add missing declaration - -2009-06-25 Matthew Gingell - - * a-stwise.adb, a-stzsea.adb (Count, Index): Avoid local copy on stack, - speed up unmapped case. - -2009-06-25 Vincent Celier - - * prj-nmsc.adb (Check): Change error message for illegal abstract - projects. - -2009-06-25 Robert Dewar - - * gnat_ugn.texi: Add note on use of -gnatct for ASIS - -2009-06-25 Emmanuel Briot - - * fmap.ads: Add documentation on mapping files - -2009-06-25 Robert Dewar - - * exp_ch6.adb, g-socket.ads, g-socket.adb, sem_ch3.adb: Minor - reformatting - -2009-06-24 Robert Dewar - - * prj-nmsc.adb, prj-nmsc.ads, prj-proc.adb, prj.adb: Minor reformatting - - * a-strsea.adb (Count): Avoid local copy on stack, speed up unmapped - case. - (Index): Ditto. - -2009-06-24 Ed Schonberg - - * sem_ch4.adb (Analyze_One_Call): Check that at least one actual is - present when checking whether a call may be interpreted as an indexing - of the result of a call. - - * exp_ch9.adb (Expand_N_Subprogram_Declaration): Place the generated - body for a null procedure on the freeze actions for the procedure, so - that it will be analyzed at the proper place without premature freezing - of actuals. - - * sem_ch3.adb (Check_Completion): Code cleanup. - Do not diagnose a null procedure without a body, if previous errors - have disabled expansion. - -2009-06-24 Doug Rupp - - * init.c [VMS] Resignal C$_SIGKILL - -2009-06-24 Ed Falis - - * s-vxwext.adb, s-vxwext-kernel.adb: Add s-vxwext body for VxWorks 5 - Define ERROR in body for VxWorks 6 kernel - -2009-06-24 Pascal Obry - - * g-socket.adb, g-socket.ads: Fix possible unexpected constraint error - in [Send/Receive]_Socket. - -2009-06-24 Emmanuel Briot - - * prj-proc.adb, prj-proc.ads, prj.ads, prj-nmsc.adb, prj-nmsc.ads, - prj-conf.adb, prj-conf.ads (Allow_Duplicate_Basenames): New parameter - to several subprograms. - (Source_Data.Other_Part): Removed, since can be computed from the - language. - (Other_Part): New subprogram. - -2009-06-24 Emmanuel Briot - - * gnat_ugn.texi, prj-nmsc.adb (Suffix_Matches): A suffix can also match - the full base name of the file when the suffix doesn't start with a '.'. - -2009-06-24 Vincent Celier - - * prj-nmsc.adb (Check): A project declared abstract is legal if no - attribute Source_Dirs, Source_Files, Source_List_File or Languages is - declared. - -2009-06-24 Robert Dewar - - * clean.adb, gnatcmd.adb, make.adb, mlib-prj.adb, - prj-env.adb: Minor reformatting - -2009-06-24 Ed Falis - - * s-taprop-vxworks.adb, s-osinte-vxworks.ads, s-vxwext.ads, - s-vxwext-kernel.adb, s-vxwext-kernel.ads, s-vxwext-rtp.adb, - s-tasinf-vxworks.ads, gcc-interface/Makefile.in: Add processor affinity - support for VxWorks SMP. - - * gcc-interface/Make-lang.in: Update dependencies - -2009-06-24 Emmanuel Briot - - * gnatcmd.adb, make.adb, mlib-prj.adb, prj.adb, prj.ads, clean.adb, - prj-nmsc.adb, prj-env.adb, prj-proc.adb (Units_Table): Removed, since - no longer useful. - (Source_Data.Lang_Kind): Removed, since it duplicates information - already available through Language.Config. - (Source_Data.Compile): Removed, since information is already available - through the language. - (Is_Compilable): New subprogram. - (Source_Data.Dependency): Removed, since already available through - the language. - (Source_Data.Object_Exist, Object_Linked): Removed since available - through the language already. - (Unit_Data.File_Names): Is now also set in multi_language mode, to - bring the two modes closer in the resulting data structures. - (Source_Data.Unit): Now a direct pointer to the unit data, rather than - just the name that would point into a hash table. - (Get_Language_From_Name): New subprogram. - -2009-06-24 Javier Miranda - - * exp_ch4.adb (Expand_N_Type_Conversion): Handle entities that are - visible through limited-with context clauses. In addition, avoid an - extra tag check that is not required when the class-wide - designated types of the operand and target types are - the same entity. - (Tagged_Membership): Handle entities from the limited view. - -2009-06-24 Emmanuel Briot - - * gnatcmd.adb, make.adb, mlib-prj.adb, prj.ads, clean.adb, - prj-nmsc.adb, prj-env.adb (File_Name_Data): removed - (Spec_Or_Body): now a subtype of Source_Kind, to avoid using two - different vocabularies for similar concepts (Impl/Body_Part and - Spec/Specification). - (Unit_Data): now points directly to a Source_Id, rather than duplicating - some of the information in File_Name_Data. This also saves a bit of - memory. However, since we are now using a pointer we need to test - for null explicitly in several places of the code - -2009-06-24 Javier Miranda - - * exp_ch4.adb (Expand_N_Type_Conversion): return immediately - from processing the type conversion when the node is - replaced by an N_Raise_Program_Error node. - -2009-06-24 Hristian Kirtchev - - * sem_ch6.adb (Designates_From_With_Type): New routine. - (Process_Formals): Since anonymous access types are no longer flagged - as from with types, traverse the designated type to determine whether - it is coming from a limited view. - - * sem_res.adb: Remove with and use clauses for Sem_Ch10. - (Full_Designated_Type): Use Available_View to extract the non-limited / - full view of a type. - -2009-06-24 Robert Dewar - - * exp_ch6.adb: Minor reformatting - - * layout.adb: Minor reformatting - - * make.adb: Minor reformatting - -2009-06-24 Thomas Quinot - - * sem_ch10.adb: Minor code reorganization. - -2009-06-24 Eric Botcazou - - * ttypes.ads: Minor editing. - -2009-06-24 Robert Dewar - - * exp_ch6.adb (Expand_Actuals): Use Is_Volatile, not Treat_As_Volatile - in deciding to do call-by-copy code. - -2009-06-24 Vincent Celier - - * make.adb (Gnatmake): To decide if an executable should be rebuilt, - check if an externally built library file is more current than the - executable. - -2009-06-23 Olivier Hainque - - * gcc-interface/utils.c (handle_vector_size_attribute): Import from - c-common.c and populate in gnat_internal_attribute_table. - -2009-06-23 Ed Schonberg - - * sem_res.adb (Valid_Conversion, Full_Designated_Type): Use - Available_View only when designated type of an anonymous access type - is limited view. - -2009-06-23 Robert Dewar - - * sem_ch10.adb: Minor reformatting - - * ali.ads: Mino reformatting. - - * gnat1drv.adb (Adjust_Global_Switches): New procedure (take care of - turning off inlining if ASIS mode active). - - * switch-c.adb: Remove fiddling with Inspector_Mode and ASIS_Mode - This belongs in gnat1drv.adb after switches are scanned. - -2009-06-23 Hristian Kirtchev - - * sem_attr.adb: Add with and use clauses for Sem_Ch10. - (Check_Not_Incomplete_Type): Minor reformatting. Retrieve the root type - when dealing with class-wide types. Detect a legal shadow entity and - retrieve its non-limited view. - - * sem_ch10.adb (Has_With_Clause): Move the spec and body of the - subprogram to top package level from Intall_Limited_Withed_Unit. - (Install_Limited_Withed_Unit): Remove spec and body of Has_With_Clause. - Add check which prevents the installation of a limited view if the - non-limited view is already visible through a with clause. - (Is_Legal_Shadow_Entity_In_Body): New routine. Detect a residual, but - legal shadow entity which may occur in subprogram formals of anonymous - access type. - - * sem_ch10.ads (Is_Legal_Shadow_Entity_In_Body): New routine. - - * sem_ch3.adb (Access_Definition): Remove the propagation of flag - From_With_Type from the designated type to the generated anonymous - access type. Remove associated comment. - - * sem_res.adb Add with and use clauses for Sem_Ch10. - (Full_Designated_Type): Detect a legal shadow entity and retrieve its - non-limited view. Since the shadow entity may replace a regular - incomplete type, return the available full view. - -2009-06-23 Ed Schonberg - - * sem_ch10.adb (Remove_Limited_With_Clause): Clean up code that handles - incomplete type declarations. Previous code was potentially quadratic - in the number of visible declarations in any package appearing in a - limited_with_clause. - -2009-06-23 Robert Dewar - - * prj-conf.ads, prj-part.adb, prj-proc.adb, prj-proc.ads, sem_ch8.adb, - xref_lib.adb: Minor reformatting - -2009-06-23 Robert Dewar - - * a-stzhas.adb: Provide dummy body to avoid build problems with old - versions which did have a body for this unit. - -2009-06-23 Vincent Celier - - * prj-attr.adb: Attribute names Initial_Required_Switches and - Final_Required_Switches changed to Leading_Required_Switches and - Trailing_Required_Switches. - - * prj-nmsc.adb (Process_Compiler): Attribute names - Initial_Required_Switches and Final_Required_Switches changed to - Leading_Required_Switches and Trailing_Required_Switches. - - * prj.ads (Language_Config): Component Initial_Required_Switches and - Final_Required_Switches changed to Leading_Required_Switches and - Trailing_Required_Switches. - - * snames.ads-tmpl: Remove standard names Initial_Required_Switches and - Final_Required_Switches; add standard names Leading_Required_Switches - and Trailing_Required_Switches. - -2009-06-23 Thomas Quinot - - * prj-conf.adb: Minor reformatting - - * xref_lib.adb: Minor cleanup - -2009-06-23 Emmanuel Briot - - * prj-proc.adb, prj-proc.ads, prj-nmsc.adb, prj-nmsc.ads, prj-conf.adb, - prj-conf.ads (Check_Configuration): New parameter - Compiler_Driver_Mandatory. - -2009-06-23 Ed Schonberg - - * sem_ch10.adb (Analyze_With_Clause): If a subprogram instance in the - context of the current unit has an inline pragma, the instance is not - rewritten as the declaration of the package wrapper. Handle both - possibilities when retrieving the visible subprogram that renames the - instantiation itself. - -2009-06-23 Javier Miranda - - * exp_ch4.adb (Displace_Allocator_Pointer, Expand_N_Allocator): Handle - designated types referencing entities from the limited view. - -2009-06-23 Robert Dewar - - * s-strhas.adb, s-strhas.ads: Restrict to 32-bit modular types - - * s-imgdec.adb (Set_Decimal_Digits): Fix error of too many digits for - small values - - * prj-conf.ads: Minor reformatting - - * prj-conf.adb: Minor reformatting - -2009-06-23 Vasiliy Fofanov - - * g-debpoo.adb (Dump_Gnatmem): Output dummy timestamps for allocations - to correspond to the log format that gnatmem now expects. - -2009-06-23 Vincent Celier - - * prj-attr.adb: New attributes Initial_Required_Switches, - Final_Required_Switches and Object_File_Switches - - * prj-nmsc.adb (Process_Compiler): Process new attributes - Name_Final_Required_Switches, Name_Initial_Required_Switches and - Name_Object_File_Switches. - - * prj.ads (Language_Config): New component - Compiler_Initial_Required_Switches (replace Compiler_Required_Switches), - Compiler_Final_Required_Switches and Object_File_Switches. - - * snames.ads-tmpl: New standard names Initial_Required_Switches, - Final_Required_Switches and Object_File_Switches - -2009-06-23 Pascal Obry - - * s-strhas.adb, s-strhas.ads: Minor reformatting. - -2009-06-23 Ed Schonberg - - * sem_ch10.adb (Install_Limited_Withed_Unit): a null procedure does - not indicate that the enclosing unit needs a body. - -2009-06-23 Emmanuel Briot - - * prj-conf.ads, prj-conf.adb: New files part of the project manager. - -2009-06-23 Ed Schonberg - - * sem_ch3.adb (Derive_Subprogram): If the inherited subprogram is a - primitive equality include it with its source name even if the - operation is currently invisible, to make sure that the corresponding - slot in the dispatch table is reserved for the internal equality - subsequently generated during expansion. - -2009-06-23 Matthew Gingell - - * Makefile.rtl, a-stwiha.adb: Add a-stwiha.adb back. - -2009-06-22 Jose Ruiz - - * sysdep.c (__gnat_localtime_tzoff for RTX): - SystemTimeToTzSpecificLocalTime is not supported by RTX. Use - GetTimeZoneInformation instead. - -2009-06-22 Robert Dewar - - * sem_res.adb (Check_No_Direct_Boolean_Operators): New procedure - -2009-06-22 Ed Schonberg - - * sem_ch12.adb (Collect_Previous_Instances): Do not collect - instantiations declared in a previous generic package body. - -2009-06-22 Robert Dewar - - * gnat_rm.texi: Add doc that X=True and X=False is allowed for the - restriction No_Direct_Boolean_Operators. - -2009-06-22 Thomas Quinot - - * bindusg.adb: Minor fixes to gnatbind usage message - - * sem_eval.adb: Minor reformatting - -2009-06-22 Javier Miranda - - * sem_ch3.adb (Analyze_Object_Declaration, Freeze_Entity): Move to the - freezing point the check on the use of abstract types in object - declarations. Done to allow the declaration of C++ imported variables - or constants whose type corresponds with an imported C++ classes for - which the constructor is not imported. - -2009-06-22 Thomas Quinot - - * sem_ch6.adb: Minor reformatting - -2009-06-22 Ed Schonberg - - * exp_ch3.adb (Build_Initialization_Call): If a discriminated record - component is constrained with an expression rather than with a - discriminant of the enclosing type, use that expression when building - the call to default-initialize the component, when the call is part of - an aggregate with box initialization. - -2009-06-22 Ed Schonberg - - * sem_ch6.adb (Check_Overriding_Indicator): Clean up code, make warning - unconditional rather than a style check, because a formal name out of - order is suspicious. - -2009-06-22 Vincent Celier - - * prj-nmsc.adb (Locate_Directory): Indicate the project name when - creating a directory automatically. - -2009-06-22 Eric Botcazou - - * sem_ch3.adb (Create_Constrained_Components): For a subtype of an - untagged derived type, add a hidden component for every constrained - discriminant of the parent type to keep record layout consistent. - -2009-06-22 Thomas Quinot - - * exp_ch3.adb: Minor code reorganization (avoid an unnecessary tree - copy). - -2009-06-22 Matthew Gingell - - * a-stzhas.adb, a-stwiha.adb, impunit.adb, a-swbwha.adb, a-shcain.adb, - s-htable.adb, a-szuzha.adb, a-stunha.adb, a-stboha.adb, a-strhas.adb, - g-spitbo.adb, s-strhas.adb, a-szbzha.adb, s-strhas.ads, Makefile.rtl, - a-swuwha.adb: New unit System.String_Hash. - Refactor redundant cut and pasted hash functions with instances of a - new generic hash function. - Implement a new string hashing algorithm which appears in testing to - be move effective than to previous approach. - -2009-06-22 Ed Falis - - * sysdep.c: remove include for nfsLib.h and an NFS specific error - message for VxWorks 653 vThreads: not supported by the OS. - - * gsocket.h: disable sockets for VxWorks 653 vThreads. - -2009-06-22 Robert Dewar - - * sem_ch6.adb: Add ??? comment for bad use of Style_Check - -2009-06-22 Robert Dewar - - * sinput.adb, sinput.ads (Expr_First_Char, Expr_Last_Char): Replaced - by Sloc_Range. - - * freeze.adb: Minor comment updates - - * s-valrea.adb (Bad_Based_Value): New procedure - (Scan_Real): Raise exceptions with messages - -2009-06-22 Matthew Gingell - - * adaint.h: Complete previous change. - -2009-06-22 Thomas Quinot - - * exp_ch7.ads, exp_ch3.adb: Minor reformatting - -2009-06-22 Ed Schonberg - - * sem_ch6.adb (Check_Overriding_Indicator): When style checks are - enabled, emit warning when a non-controlling argument of the overriding - operation appears out of place vis-a-vis of the formal of the - overridden operation. - -2009-06-22 Vincent Celier - - * gnatcmd.adb (Check_Files): Close temporary files after all file names - have been written into it. - -2009-06-22 Matthew Gingell - - * adaint.c, adaint.h, cstreams.c: Call stat64 on platforms where it is - available. - -2009-06-22 Thomas Quinot - - * sem_disp.adb (Check_Direct_Call): Handle the case where the full - view of the root type is visible at the point of the call. - -2009-06-22 Pat Rogers - - * gnat_ugn.texi: Revised a sentence to correct a minor grammar error. - -2009-06-22 Jerome Lambourg - - * freeze.adb: Add comments. - -2009-06-21 Thomas Quinot - - * exp_ch3.adb, exp_prag.adb, exp_util.adb, exp_util.ads, freeze.adb, - sem_ch13.adb, sem_elab.adb (Exp_Prag.Expand_Pragma_Import_Or_Interface): - Factor out code to new subprogram... - (Exp_Util.Find_Init_Call): New shared routine to find the init proc call - for a default initialized variable. - (Freeze.Check_Address_Clause): Do not reset Has_Delayed_Freeze on an - entity that has an associated freeze node. - (Sem_Ch13.Analyze_Attribute_Definition_Clause, case Address): - If there is an init call for the object, defer it to the object freeze - point. - (Check_Elab_Call.Find_Init_Call): Rename to Check_Init_Call, to avoid - name clash with new subprogram introduced in Exp_Util. - -2009-06-21 Robert Dewar - - * einfo.ads: Minor reformatting - -2009-06-21 Ed Falis - - * env.c (__gnat_environ): return NULL for vThreads - unimplemented - -2009-06-21 Eric Botcazou - - * einfo.ads: Update comments. - -2009-06-21 Hristian Kirtchev - - * sem_disp.adb (Check_Direct_Call): New routine. Dispatching calls - where the controlling formal is of private class-wide type whose - completion is a synchronized type can be converted into direct calls. - -2009-06-21 Vincent Celier - - * gnatcmd.adb (Check_Files): When all sources of the project are to be - indicated to gnatcheck, gnatpp or gnatmetric, always specify the list - of sources using -files=, so that the distinction can be made by the - tool of a call with no source (to display the usage) from a call with - a project file that contains no source. - -2009-06-21 Jerome Lambourg - - * exp_ch3.adb (Build_Array_Init_Proc): Do not build the init proc in - case of VM convention arrays. - -2009-06-20 Robert Dewar - - * a-nudira.adb: Minor reformatting - -2009-06-20 Ed Schonberg - - * exp_ch3.adb (Build_Record_Init_Proc): When copying initial - expressions (possibly from a parent type) indicate that the scope of - the new itypes is the initialization procedure being built. - -2009-06-20 Robert Dewar - - * a-nudira.adb (Fits_In_32_Bits): New name (inverted sense) for - Needs_64, and now computed without anomolies for some dynamic types. - -2009-06-20 Thomas Quinot - - * sem_prag.adb: Minor reformatting - - * exp_disp.ads: Minor reformatting - -2009-06-20 Ed Schonberg - - * sem_ch3.adb (Is_OK_For_Limited_Init): An unchecked conversion of a - function call is a legal expression to initialize a limited object. - - * exp_ch3.adb: Rename various freeze operations that perform expansion - actions, to prevent confusion with subprograms in the freeze package. - -2009-06-20 Ed Schonberg - - * sem.adb (Walk_Library_Units): Check instantiations first. - - * sem_ch6.adb (Analyze_Subprogram_Declaration): Mark a subprogram as a - private primitive if it is a function with a controlling result that is - a type extension with progenitors. - - * exp_ch9.adb (Build_Wrapper_Spec, Build_Wrapper_Body): Handle properly - a primitive operation of a synchronized tagged type that has a - controlling result. - -2009-06-20 Thomas Quinot - - * einfo.ads: Fix typo. - -2009-06-20 Ed Falis - - * s-vxwext.ads, s-vxwext-kernel.adb: Complete previous change. - -2009-06-19 Eric Botcazou - - * gcc-interface/trans.c (emit_check): Do not wrap up the result - in a SAVE_EXPR. - (protect_multiple_eval): Always protect complex expressions. - -2009-06-19 Emmanuel Briot - - * prj-ext.adb, makeutl.adb, makeutl.ads (Executable_Prefix_Path): Now - make sure we always return a name ending with a path separator. - -2009-06-19 Javier Miranda - - * sem_ch12.adb (Instantiate_Package_Body, Instantiate_Subprogram_Body): - Save and restore the visibility of the parent when installed. - -2009-06-19 Jose Ruiz - - * s-tposen.ads (Protection_Entry): Replace fields L, Ceiling, and Owner - by Common which contains all these fields. - - * s-tposen.adb (Initialize_Protection_Entry, Lock_Entry, - Lock_Read_Only_Entry, Timed_Protected_Single_Entry_Call, Unlock_Entry): - Remove code duplication in this package by means of calling the - equivalent code in s-taprob. - -2009-06-19 Robert Dewar - - * a-einuoc.ads: Minor reformatting - -2009-06-19 Ed Falis - - * a-einuoc.ads, s-osinte-vxworks.ads, s-vxwext.ads, s-vxwext-kernel.adb, - s-vxwext-kernel.ads, s-vxwext-rtp.ads: Code clean up. - -2009-06-19 Eric Botcazou - - * einfo.ads (Handling of Type'Size Values): Fix Object_Size values. - -2009-06-19 Robert Dewar - - * a-nudira.adb (Need_64): Handle negative ranges and also dynamic - ranges - - * checks.adb (Determine_Range): Move the test for generic types later. - - * sem_eval.adb (Compile_Time_Compare): Improve circuitry to catch more - cases. - (Eval_Relational_Op): Fold more cases including string compares - - * sem_util.ads, sem_util.adb (References_Generic_Formal_Type): New - function. - -2009-06-19 Robert Dewar - - * sem_type.ads, sem_ch12.adb: Minor reformatting - - * s-wchcnv.adb (UTF_32_To_Char_Sequence): Handle invalid data properly - -2009-06-19 Ed Schonberg - - * exp_ch9.adb (Build_Wrapper_Spec): Handle properly an overridden - primitive operation of a rivate extension whose controlling argument - is an out parameter. - - * sem.adb (Walk_Library_Units): exclude generic package declarations - from check. - -2009-06-19 Thomas Quinot - - * i-vxwoio.ads: Add comments - -2009-06-19 Thomas Quinot - - * socket.c, g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb, - g-socthi-vxworks.ads, g-socthi-mingw.adb, g-socthi-mingw.ads, - g-socthi.adb, g-socthi.ads, g-socket.adb, g-sothco.ads - (GNAT.Sockets.Thin.C_Ioctl): Rename to Socket_Ioctl. - (GNAT.Sockets.Thin.Socket_Ioctl): Use new function - Thin_Common.Socket_Ioctl. - (GNAT.Sockets.Thin_Common.Socket_Ioctl): Binding to new C wrapper - __gnat_socket_ioctl. - (__gnat_socket_ioctl): Wrapper for ioctl(2) called with a single int* - argument after the file descriptor and request code. - -2009-06-19 Robert Dewar - - * checks.adb: Minor reformatting - -2009-06-19 Jose Ruiz - - * env.c (__gnat_environ): RTX does not support this functionality. - -2009-06-19 Ed Schonberg - - * sem.adb (Walk_Library_Items): Include bodies in the list of units to - traverse, to account for front-end inlining and instantiations in a - spec or in the main unit. - -2009-06-19 Robert Dewar - - * checks.adb (Determine_Range): Do not attempt to get range of generic - type. - -2009-06-19 Sergey Rybin - - * gnat_ugn.texi, vms_data.ads: Add the documentation for the new - gnatmetric option for generating the schema file for gnatmetric XML - output. Add corresponding VMS qualifier. - -2009-06-19 Robert Dewar - - * g-cgi.adb: Minor reformatting - -2009-06-19 Eric Botcazou - - * s-intman-solaris.adb (Notify_Exception): Do not discriminate on the - signal code for SIGFPE and raise Program_Error for SIGILL. - - * s-osinte-solaris.ads: Remove signal code constants for SIGFPE. - -2009-06-19 Ed Schonberg - - * sem_ch8.adb (Nvis_Messages): Do not list an entity declared in a - generic package if there is a visibility candidate that is declared in - a regular package. - -2009-06-18 Olivier Hainque - - * system-aix64.ads: New file. - * gcc-interface/Makefile.in (aix LIBGNAT_TARGET_PAIRS): Use the - 64bit system.ads for ppc64 multilib variants. - -2009-06-16 Robert Dewar - Olivier Hainque - - Relax constraints on Machine_Attribute argument types: - * sem_prag.adb (Check_Arg_Is_Static_Expression): Allow for - missing type. - (Analyze_Attribute, case Machine_Attribute): Allow any type for arg 3. - * gcc-interface/decl.c (prepend_attributes): Accept static - expressions of any type as attribute arguments, not only string - literals. - * gnat_rm.texi (pragma Machine_Attribute section): Adjust to reflect - the relaxation of the restriction on the Info argument type. - -2009-06-13 Aldy Hernandez - - * gcc-interface/utils.c (record_builtin_type): Pass location - argument to build_decl. - (create_type_stub_decl): Same. - (create_type_decl): Same. - (create_var_decl_1): Same. - (create_field_decl): Same. - (create_param_decl): Same. - (create_label_decl): Same. - (create_subprog_decl): Same. - * gcc-interface/decl.c (gnat_to_gnu_entity): Same. - * gcc-interface/trans.c (Case_Statement_to_gnu): Pass location - argument to create_artificial_label. - (Loop_Statement_to_gnu): Same. - (Subprogram_Body_to_gnu): Same. - (gnat_gimplify_stmt): Same. - -2009-06-11 Richard Henderson - - * gcc-interface/misc.c (gnat_handle_option): Rename OPT_gdwarf_ to - OPT_gdwarfplus. - -2009-06-11 Ed Schonberg - - * sem_attr.adb (Resolve_Attribute, case 'access): Add missing - accessibiliy check on access_to_subprogram in the context of an - anonymous access that is not an access parameter. - -2009-06-11 Eric Botcazou - - * tracebak.c (i386 section): Define IS_BAD_PTR on Solaris. - -2009-06-11 Quentin Ochem - - * sem_warn.adb, scng.adb, sfn_scan.adb, freeze.adb: Add CODEFIX - comments for message handled by GPS. - -2009-06-11 Matthew Gingell - - * adaint.c: Use fopen64 instead of fopen on platforms where we know - it's supported. - -2009-06-11 Pascal Obry - - * g-cgi.ads: Fix comment typo. - - * g-cgi.adb: Properly decode "+" in CGI parameters as spaces. - -2009-06-10 Eric Botcazou - - * gcc-interface/decl.c (gnat_to_gnu_entity) : Use - a reference to the original type for the type of the field of the - XVS type. - (maybe_pad_type): Likewise. - - * gcc-interface/decl.c (gnat_to_gnu_entity) : Factor - common predicate and remove redundant setting of TYPE_BY_REFERENCE_P. - Pass correctly typed arguments to create_field_decl. - : Set BLKmode for tagged and limited types in the - case of contrained discriminants as well. Use the padded base type - in the other case as well. Rename temporary variable. Tweak test. - Factor common access pattern. Set GNU_SIZE only once. - -2009-06-09 Olivier Hainque - - * gcc-interface/utils2.c (build_call_alloc_dealloc_proc): New - helper for build_call_alloc_dealloc with arguments to be interpreted - identically. Process the case where a GNAT_PROC to call is provided. - (maybe_wrap_malloc): New helper for build_call_alloc_dealloc, to build - and return an allocator for DATA_SIZE bytes aimed at containing a - DATA_TYPE object, using the default __gnat_malloc allocator. Honor - DATA_TYPE alignments greater than what the latter offers. - (maybe_wrap_free): New helper for build_call_alloc_dealloc, to - release a DATA_TYPE object designated by DATA_PTR using the - __gnat_free entry point. - (build_call_alloc_dealloc): Expect object data type instead of naked - alignment constraint. Use the new helpers. - (build_allocator): Remove special processing for the super-aligned - case, now handled by build_call_alloc_dealloc. Pass data - type instead of the former alignment argument, as expected by the new - interface. - * gcc-interface/gigi.h (build_call_alloc_dealloc): Adjust prototype - and comment. - * gcc-interface/trans.c (gnat_to_gnu) : - Remove special processing for the super-aligned case, now handled - by build_call_alloc_dealloc. Pass data type instead of the former - alignment argument, as expected by the new interface. - -2009-06-08 Alexandre Oliva - - * lib-writ.adb (flag_compare_debug): Import. - (Write_ALI): Skip during -fcompare-debug-second. - -2009-06-03 Eric Botcazou - - * gcc-interface/decl.c (gnat_to_gnu_entity) : When - adjusting the discriminant nodes in an extension, use the full view - of the parent subtype if it is of a private kind. - -2009-06-03 Eric Botcazou - - * gcc-interface/decl.c (gnat_to_gnu_entity) : Add the - _Parent field, if any, to the record before adding the other fields. - : Put the _Controller field before the other fields - except for the _Tag or _Parent fields. - (components_to_record): Likewise. Retrieve the _Parent field from the - record type. - -2009-06-03 Eric Botcazou - - * gcc-interface/decl.c (substitution_list): Rename to build_subst_list, - remove unused parameter and simplify. - (gnat_to_gnu_entity) : Do not set TYPE_FIELDS. Factor - common predicate. Rewrite loop for clarity. Use GNU_TYPE directly - as context for all discriminants. Fix formatting nits. - : Add cosmetic 'break'. Test Has_Discriminants - before Discriminant_Constraint. Adjust for above renaming. Do not - set GNU_TYPE more than once. - (elaborate_entity): Test Has_Discriminants on the entity and use - Implementation_Base_Type. - (components_to_record): Rename component_list to gnat_component_list. - Retrieve the _Parent field from the list. Fix nits in comments. - Clarify logic in loop. Pass correct arguments to create_field_decl. - -2009-06-02 Eric Botcazou - - * gcc-interface/Make-lang.in: Fix formatting. - -2009-06-01 Olivier Hainque - Eric Botcazou - - * gcc-interface/utils.c (convert) : When converting - to the packable version of the type, clear TREE_STATIC/TREE_CONSTANT - on the result if at least one of the input fields couldn't be output - as a static constant any more. - -2009-06-01 Olivier Hainque - Eric Botcazou - - * gcc-interface/utils2.c (gnat_build_constructor): Factor - out code. Use initializer_constant_valid_for_bitfield_p and - CONSTRUCTOR_BITFIELD_P for bit-fields. - -2009-05-26 Ian Lance Taylor - - * gcc-interface/Makefile.in (COMPILER): Define. - (COMPILER_FLAGS, ALL_COMPILERFLAGS): Define. - (.c.o, cio.o, init.o, initialize.o, targext.o): Use $(COMPILER). - (seh_init.o, tracebak.o): Likewise. - * gcc-interface/Make-lang.in (ada/targext.o): Likewise. - (ada/cio.o, ada/init.o, ada/initialize.o, ada/raise.o): Likewise. - (ada/tracebak.o, ada/cuintp.o, ada/decl.o, ada/misc.o): Likewise. - (ada/targtyps.o, ada/trans.o, ada/utils.o): Likewise. - (ada/utils2.o): Likewise. - -2009-05-24 Olivier Hainque - - * switch.adb (Is_Internal_GCC_Switch, Switch_Last): Bodies of ... - * switch.ads (Is_Internal_GCC_Switch, Switch_Last): New functions. - Add -auxbase variants to the list of recognized internal switches. - * back_end.adb (Scan_Back_End_Switches): Use the new functions and - adjust comments. - * lib.ads: Make comment on internal GCC switches more general. - * gcc-interface/lang-specs.h (specs for Ada): Pass -auxbase variants - as for C. - -2009-05-23 Eric Botcazou - - * gcc-interface/misc.c (gnat_get_subrange_bounds): Fix thinko. - -2009-05-23 Eric Botcazou - - * gcc-interface/decl.c (set_rm_size): Bypass the check for packed array - types. - -2009-05-23 Eric Botcazou - - * gcc-interface/decl.c (gnat_to_gnu_entity) : Do not modify the - original type because of the alignment when there is an address clause. - -2009-05-20 Eric Botcazou - - * gcc-interface/decl.c (gnat_to_gnu_entity) : When - discriminants affect the shape of the subtype, retrieve the GCC type - directly from the original field if the GNAT types for the field and - the original field are the same. - -2009-05-15 Eric Botcazou - - * gcc-interface/ada-tree.h (TYPE_GCC_MIN_VALUE, TYPE_GCC_MAX_VALUE): - New macros. - (TYPE_RM_VALUES): Likewise. - (TYPE_RM_SIZE): Rewrite in terms of TYPE_RM_VALUES. - (SET_TYPE_RM_SIZE): New macro. - (TYPE_RM_MIN_VALUE, TYPE_RM_MAX_VALUE): Likewise. - (SET_TYPE_RM_SIZE, SET_TYPE_RM_MAX_VALUE): Likewise. - (TYPE_MIN_VALUE, TYPE_MAX_VALUE): Redefine. - * gcc-interface/gigi.h (create_range_type): Declare. - * gcc-interface/decl.c (gnat_to_gnu_entity) - Use SET_TYPE_RM_MAX_VALUE to set the upper bound on the UMT type. - : Build a regular integer type first and - then set the RM bounds. Use SET_TYPE_RM_SIZE to set the RM size. - : Build a regular floating-point type first - and then set the RM bounds. - : Use create_range_type instead of build_range_type. - : Build a regular integer type first and then set - the RM bounds for the extra subtype. - : Use create_range_type instead of - build_range_type. - : Set the RM bounds for enumeration types and the GCC bounds for - floating-point types. - (set_rm_size): Use SET_TYPE_RM_SIZE to set the RM size. - (make_type_from_size) : Use SET_TYPE_RM_{MIN,MAX}_VALUE - to set the bounds. Use SET_TYPE_RM_SIZE to set the RM size. - (substitute_in_type) : Deal with GCC bounds for domain - types and with RM bounds for subtypes. - * gcc-interface/misc.c (LANG_HOOKS_GET_SUBRANGE_BOUNDS): Define. - (gnat_print_type) : New case. - : Fall through to above case. - (gnat_get_subrange_bounds): New function. - * gcc-interface/trans.c (add_decl_expr): Mark the trees rooted as - TYPE_RM_MIN_VALUE and TYPE_RM_MAX_VALUE, if any. - * gcc-interface/utils.c (gnat_init_decl_processing): Use precision 8 - for booleans. Adjust and use SET_TYPE_RM_SIZE to set the RM size. - (create_range_type): New function. - (create_param_decl): Build a regular integer type first and then set - the RM bounds for the extra subtype. - (unchecked_convert): Remove kludge for 'Valid. - * gcc-interface/utils2.c (build_binary_op) : Convert - the index to sizetype instead of TYPE_DOMAIN. - -2009-05-14 Eric Botcazou - - * gcc-interface/decl.c (elaborate_expression_1): Remove GNAT_EXPR - parameter and move check for static expression to... - (elaborate_expression): ...here. Adjust call to above function. - (gnat_to_gnu_entity): Likewise for all calls. Use correct arguments - in calls to elaborate_expression. - (elaborate_entity): Likewise. - (substitution_list): Likewise. - (maybe_variable): Fix formatting. - (substitute_in_type) : Merge with INTEGER_TYPE case and add - missing guard. - * gcc-interface/trans.c (protect_multiple_eval): Minor cleanup. - -2009-05-07 Arnaud Charlet - - * gcc-interface/Make-lang.in: Update dependencies. - -2009-05-06 Laurent GUERBY - - * s-linux.ads, s-linux-alpha.ads, s-linux-hppa.ads, osinte-linux.ads: - Define sa_handler_pos. - * s-osinte-linux.ads: Use it. - * s-linux-mipsel.ads: New. - * system-linux-mips64el.ads: New. - * gcc-interface/Makefile.in: Multilib handling for mipsel-linux and - mips64el-linux. - -2009-05-06 Arnaud Charlet - - * exp_ch5.adb, exp_util.adb, exp_attr.adb, sem_util.adb, sem_res.adb, - targparm.adb, targparm.ads, exp_ch4.adb, exp_ch6.adb, exp_disp.adb, - opt.ads, exp_aggr.adb, exp_intr.adb, sem_disp.adb, exp_ch3.adb - (Tagged_Type_Expansion): New flag. - Replace use of VM_Target related to tagged types expansion by - Tagged_Type_Expansion, since tagged type expansion is not necessarily - linked to VM targets. - -2009-05-06 Robert Dewar - - * sem_attr.adb: Add processing for Standard'Compiler_Version - - * sinput.adb (Expr_Last_Char): Fix some copy-paste errors for paren - skipping. - (Expr_First_Char): Add ??? comment that paren skipping needs work - (Expr_Last_Char): Add ??? comment that paren skipping needs work - - * exp_attr.adb: Add processing for Compiler_Version - - * sem_attr.adb: New attribute Compiler_Version - - * snames.ads-tmpl: Add entries for Compiler_Version attribute - - * gnat_rm.texi: Document Compiler_Version attribute - -2009-05-06 Robert Dewar - - * errout.adb: Minor reformatting - - * scng.adb, sem_prag.adb, par-ch4.adb, sem_res.adb, par-ch6.adb, - sem_ch6.adb, par-prag.adb, sem_ch8.adb, sem_warn.adb, par-util.adb, - styleg.adb: Add stylized comments to error messages that are included - in the codefix circuitry of IDE's such as GPS. - -2009-05-06 Sergey Rybin - - * gnat_ugn.texi: For Misnamed_Identifiers rule all description of the - new form of the rule parameter that allows to specify the suffix for - access-to-access type names. - -2009-05-06 Robert Dewar - - * sem_warn.adb (Warn_On_Useless_Assignment): Avoid false negative for - out parameter assigned when exception handlers are present. - - * sem_ch5.adb (Analyze_Exit_Statement): Kill current value last - assignments on exit. - - * par-ch9.adb, sem_aggr.adb, par-endh.adb, sem_res.adb, par-ch6.adb, - sinput-l.adb, par-load.adb, errout.ads, sem_ch4.adb, lib-load.adb, - prj-dect.adb, par-ch12.adb, sem_ch8.adb, par-util.adb, par-ch3.adb, - par-tchk.adb, par-ch5.adb: This patch adds stylized comments to error - messages that are included in the codefix circuitry of IDE's such as - GPS. - - * sinput.ads, sinput.adb (Expr_First_Char): New function - (Expr_Last_Char): New function - -2009-05-06 Sergey Rybin - - * gnat_ugn.texi: Add subsection for Exits_From_Conditional_Loops rule - Add formal definition for extra exit point metric - -2009-05-06 Pascal Obry - - * adaint.c: Support for setting attributes on unicode filename on - Windows. - -2009-05-06 Robert Dewar - - * sem_warn.adb: Minor reformatting - -2009-05-06 Javier Miranda - - * sem_prag.adb (Process_Import_Or_Interface): Imported CPP types must - not have discriminants or components with default expressions. - (Analyze_Pragma): For pragma CPP_Class check that imported types - have no discriminants and components have no default expression. - - * sem_aggr.adb (Resolve_Aggr_Expr): Add missing check on wrong use of - class-wide types in the expression of a record component association. - -2009-05-06 Sergey Rybin - - * vms_data.ads: Add qualifier for gnatmetric extra exit points metric - - * gnat_ugn.texi: Add description for the new extra exit points metric - (gnatmetric section). - -2009-05-06 Robert Dewar - - * s-fileio.adb: Minor comment update - - * sem_ch8.adb: Minor reformatting - - * exp_ch3.adb: Update comments. - -2009-05-06 Tristan Gingold - - * init.c, s-osinte-darwin.ads: Reduce alternate stack size - -2009-05-06 Arnaud Charlet - - * gcc-interface/Makefile.in: Update LIBGNAT_TARGET_PAIRS for Xenomai. - Fix missing unit for rtp-smp runtime on both ppc and x86 vxworks - - * gcc-interface/Make-lang.in: Update dependencies - -2009-05-06 Ed Schonberg - - * sem_ch12.adb (Build_Instance_Compilation_Unit_Nodes): Revert previous - change. The context clause of a generic instance declaration must be - preserved until the end of the compilation, because it may have to be - installed/removed repeatedly. - The latest change to sem.adb ensures that the context of both spec and - body of an instance is traversed before the instance itself, making - this patch redundant. - -2009-05-06 Gary Dismukes - - * sem_aggr.adb: Fix typo. - -2009-05-06 Thomas Quinot - - * exp_ch3.adb (Expand_N_Object_Declaration): For a controlled object - declaration, do not adjust if the declaration is to be rewritten into - a renaming. - -2009-05-06 Ed Schonberg - - * sem_ch8.adb (Find_Type): Reject the use of a task type in its own - discriminant part. - -2009-05-06 Bob Duff - - * s-fileio.adb (File_IO_Clean_Up_Type): Make this type limited, since - otherwise the compiler would be allowed to optimize away the cleanup - code. - -2009-05-06 Gary Dismukes - - * gnat_ugn.texi: Fix typo. - -2009-05-06 Thomas Quinot - - * g-debuti.adb: Minor reformatting - - * exp_attr.adb: Minor reformatting - -2009-05-06 Robert Dewar - - * sem_aggr.adb: Minor reformatting. - - * g-socthi-vms.adb: Minor reformatting - -2009-05-06 Bob Duff - - * g-table.ads, g-table.adb, g-dyntab.ads, g-dyntab.adb: - (Append_All): Add Append_All to g-table and g-dyntab, similar to table. - -2009-05-06 Bob Duff - - * gnat_ugn.texi, gnat_rm.texi: Add missing documentation for warnings - flags. - -2009-05-06 Javier Miranda - - * sem_aggr.adb (Valid_Ancestor_Type): Add support for C++ constructors. - (Resolve_Extension_Aggregate): Do not reject C++ constructors in - extension aggregates. - (Resolve_Record_Aggregate): Add support for C++ constructors in - extension aggregates. - - * exp_aggr.adb (Build_Record_Aggr_Code): Add support for C++ - constructors in extension aggregates. - -2009-05-06 Robert Dewar - - * freeze.adb (Freeze_Record_Type): Improve error msg for bad size - clause. - -2009-05-06 Thomas Quinot - - * g-socthi-vms.adb (C_Recvmsg, C_Sendmsg): Convert Msg to appropriate - packed type, since on OpenVMS, struct msghdr is packed. - -2009-05-06 Ed Schonberg - - * sem_ch8.adb (Analyze_Object_Renaming): If the object is a function - call returning an unconstrained composite value, create the proper - subtype for it, as is done for object dclarations with unconstrained - nominal subtypes. Perform this transformation regarless of whether - call comes from source. - -2009-05-06 Robert Dewar - - * freeze.adb (Freeze_Record_Type): Implement Implicit_Packing for - records - - * gnat_rm.texi: - Add documentation for pragma Implicit_Packing applied to record - types. - -2009-05-06 Ed Schonberg - - * sem.adb (Walk_Library_Items): Place all with_clauses of an - instantiation on the spec, because late instance bodies may generate - with_clauses for the instance body but are inserted in the instance - spec. - -2009-05-06 Emmanuel Briot - - * prj-nmsc.adb (Locate_Directory): Remove unused parameters, and add - support for returning the directory even if it doesn't exist. This is - used for the object directory, since we are always setting it to a - non-null value, and we should set it to an absolute name rather than a - relative name for the sake of external tools that might depend on it. - (Check_Library_Attributes): When Project.Library_Dir is known, check - that the directory exists. - -2009-05-06 Ed Schonberg - - * sem_attr.adb (Check_Dereference): If the prefix of an attribute - reference is an implicit dereference, do not freeze the designated type - if within a default expression or when preanalyzing a pre/postcondtion. - -2009-05-06 Ed Schonberg - - * sem_ch8.adb (Analyze_Object_Renaming): If the object is a function - call returning an unconstrained composite value, create the proper - subtype for it, as is done for object dclarations with unconstrained - nominal subtypes - -2009-05-06 Robert Dewar - - * sem_ch13.adb (Check_Constant_Address_Clause): Minor error message - improvements - - * freeze.adb: Minor reformatting - -2009-05-06 Thomas Quinot - - * sem_ch3.adb (Access_Type_Declaration): An access type whose - designated type is a limited view from a limited with clause (flagged - From_With_Type) is not itself such a limited view. - -2009-05-06 Emmanuel Briot - - * prj-nmsc.adb: Remove unused variable. - - * clean.adb, gnatcmd.adb, makeutl.ads, prj-pars.adb, prj-pars.ads, - prj-proc.ads, prj.ads, switch-m.adb (Subdirs_Option): Moved to - makeutl.ads, since not all users of prj.ads need this. - -2009-05-06 Javier Miranda - - * exp_aggr.adb (Build_Record_Aggr_Code): Add implicit call to the C++ - constructor in case of aggregates whose type is a CPP_Class type. - -2009-05-06 Robert Dewar - - * sem_ch13.adb: Minor comment additions - - * osint.adb: Minor reformatting - -2009-05-06 Pascal Obry - - * initialize.c: On Windows, keep full pathname to expanded command - line patterns. - -2009-05-06 Ed Schonberg - - * sem_aggr.adb (Resolve_Record_Aggregate): If a defaulted component of - an aggregate with box default is of a discriminated private type, do - not build a subaggregate for it. - A proper call to the initialization procedure is generated for it. - -2009-05-06 Thomas Quinot - - * rtsfind.adb, rtsfind.ads, exp_dist.adb, exp_dist.ads - (Exp_Dist.Build_TC_Call, Build_From_Any_Call, Build_To_Any_Call): - Use PolyORB strings to represent Ada.Strings.Unbounded_String value; - use standard array code for Standard.String. - (Exp_Dist): Bump PolyORB s-parint API version to 3. - (Rtsfind): New entities TA_Std_String, Unbounded_String. - -2009-05-06 Robert Dewar - - * g-comlin.ads: Minor reformatting - - * xoscons.adb: Minor reformatting - -2009-05-06 Gary Dismukes - - * sem_aggr.adb (Resolve_Record_Aggregate): In step 5, get the - Underlying_Type before retrieving the type definition for gathering - components, to account for the case where the type is private. - -2009-05-06 Tristan Gingold - - * g-comlin.ads: Fix minor typos (Getopt instead of Get_Opt). - -2009-05-06 Thomas Quinot - - * g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb, - g-socthi-vxworks.ads, g-socthi-mingw.adb g-socthi-mingw.ads, - g-socthi.adb, g-stsifd-sockets.adb, g-socthi.ads, g-socket.adb - (GNAT.Sockets.Thin.C_Sendmsg, GNAT.Sockets.Thin.C_Recvmsg, - Windows versions): Fix incorrect base - address of Iovec (it's Msg_Iov, not Msg_Iov'Address). - (GNAT.Sockets.Thin.C_Sendto, GNAT.Sockets.Thin.C_Recvfrom): Use a - System.Address for the To parameter instead of a Sockaddr_In_Access, to - achieve independance from AF_INET family, and also to allow this - parameter to be retrieved from a Msghdr for the Windows case where - these routines are used to implement C_Sendmsg and C_Recvmsg. - -2009-05-06 Bob Duff - - * g-expect.adb, g-expect.ads: Minor reformatting - - * sdefault.ads: Minor comment fix - - * g-expect-vms.adb: Minor reformatting - - * table.ads, table.adb (Append_All): New convenience procedure for - appending a whole array. - - * comperr.adb (Compiler_Abort): Mention the -gnatd.n switch in the bug - box message. Call Osint.Dump_Source_File_Names to print out the file - list, instead of rummaging around in various data structures. - - * debug.adb: New switch -gnatd.n, to print source file names as they - are read. - - * alloc.ads: Add parameters for Osint.File_Name_Chars. - - * osint.ads, osint.adb (Dump_Source_File_Names): New procedure to print - out source file names during a "bug box". - (Include_Dir_Default_Prefix): Use memo-izing to avoid repeated new/free. - (Read_Source_File): Print out the file name, if requested via -gnatd.n. - If it's not part of the runtimes, store it for later printing by - Dump_Source_File_Names. - -2009-05-06 Javier Miranda - - * gnat_rm.texi (CPP_Constructor): Avoid duplication of the - documentation and add reference to the GNAT user guide for further - details. - -2009-05-06 Javier Miranda - - * gnat_ugn.texi: Complete documentation for CPP_Constructor and remove - also wrong examples that use extension aggregates. - -2009-05-06 Albert Lee - - * s-oscons-tmplt.c (System.OS_Constants): Do not use special definition - of Msg_Iovlen_T for VMS. - -2009-05-04 Laurent GUERBY - - PR ada/38874 - * make.adb (Scan_Make_Arg): Pass --param= to compiler and linker. - -2009-04-29 Ed Schonberg - - * sem_ch8.adb (Analyze_Subprogram_Renaming): Improve error message on - box-defaulted operator in an instantiation, when the type of the - operands is not directly visible. - -2009-04-29 Gary Dismukes - - * sem_aggr.adb (Valid_Limited_Ancestor): Undo previous change. - (Resolve_Extension_Aggregate): Call Check_Parameterless_Call after the - analysis of the ancestor part. Remove prohibition against limited - interpretations of the ancestor expression in the case of Ada 2005. - Revise error message in overloaded case, adding a message to cover - the Ada 2005 case. - -2009-04-29 Thomas Quinot - - * xoscons.adb: Minor reformatting - -2009-04-29 Bob Duff - - * sem_ch13.adb (Analyze_Attribute_Definition_Clause): Do not ignore - attribute_definition_clauses for the following attributes when the - -gnatI switch is used: External_Tag, Input, Output, Read, Storage_Pool, - Storage_Size, Write. Otherwise, we get spurious errors (for example, - missing Read attribute on remote types). - - * gnat_ugn.texi: Document the change, and add a stern warning. - -2009-04-29 Ed Schonberg - - * sem_attr.adb (Check_Local_Access): Indicate that value tracing is - disabled not just for the current scope, but for the innermost dynamic - scope as well. - -2009-04-29 Arnaud Charlet - - * gcc-interface/Make-lang.in: Update dependencies - -2009-04-29 Vincent Celier - - * prj-part.adb: Minor comment update - -2009-04-29 Ed Schonberg - - * sem_aggr.adb (Resolve_Record_Aggregate): handle properly - box-initialized records with discriminated subcomponents that are - constrained by discriminants of enclosing components. New subsidiary - procedures Add_Discriminant_Values, Propagate_Discriminants. - -2009-04-29 Arnaud Charlet - - * g-socket.adb: Code clean up. - -2009-04-29 Gary Dismukes - - * sem_aggr.adb (Valid_Limited_Ancestor): Add test for the name of a - function entity, to cover the case of a parameterless function call - that has not been resolved. - -2009-04-29 Robert Dewar - - * err_vars.ads, prj-part.adb, scans.ads, exp_tss.adb: Minor - reformatting and comment updates. - -2009-04-29 Arnaud Charlet - - * gnat_ugn.texi: Update some documentation about interfacing with C++ - Mention -fkeep-inline-functions. - - * gnat_ugn.texi: Minor edits - -2009-04-29 Ed Schonberg - - * sem_aggr.adb (Resolve_Record_Aggregate): When building an aggregate - for a defaulted component of an enclosing aggregate, inherit the type - from the component declaration of the enclosing type. - -2009-04-29 Albert Lee - - * g-socthi-vms.ads, g-socthi-vxworks.ads, s-oscons-tmplt.c, - g-socthi-mingw.ads, g-socthi.ads, g-socket.adb, g-sothco.ads - (System.OS_Constants): New type Msg_Iovlen_T which follows whether the - msg_iovlen field in struct msghdr is 32 or 64 bits wide. - Relocate the Msghdr record type from GNAT.Sockets.Thin to - GNAT.Sockets.Common, and use System.OS_Constants.Msg_Iovlen_T as the - type for the Msg_Iovlen field. - -2009-04-29 Vincent Celier - - * sinput-l.adb (Load_File): When preprocessing, set temporarily the - Source_File_Index_Table entries for the source, to avoid crash when - reporting an error. - - * gnatcmd.adb (Test_If_Relative_Path): Use - Makeutl.Test_If_Relative_Path. - - * makeutl.adb:(Test_If_Relative_Path): Process switches --RTS= only if - Including_RTS is True. - - * makeutl.ads (Test_If_Relative_Path): New Boolean parameter - Including_RTS defaulted to False. - - * sinput.ads, scans.ads, err_vars.ads: Initialize some variables with - a default value. - -2009-04-29 Javier Miranda - - * gnat_ugn.texi: Adding documentation for non-default C++ constructors. - -2009-04-29 Javier Miranda - - * sem_ch3.adb (Analyze_Object_Declaration): Disable error message - associated with dyamically tagged expressions if the expression - initializing a tagged type corresponds with a non default CPP - constructor. - (OK_For_Limited_Init): CPP constructor calls are OK for initialization - of limited type objects. - - * sem_ch5.adb (Analyze_Assignment): Improve the error message reported - when a CPP constructor is called in an assignment. Disable also the - error message associated with dyamically tagged expressions if the - exporession initializing a tagged type corresponds with a non default - CPP constructor. - - * sem_prag.adb (Analyze_Pragma): Remove code disabling the use of - non-default C++ constructors. - - * sem_util.ads, sem_util.adb (Is_CPP_Constructor_Call): New subprogram. - - * exp_tss.ads, exp_tss.adb (Base_Init_Proc): Add support for - non-default constructors. - (Init_Proc): Add support for non-default constructors. - - * exp_disp.adb (Set_Default_Constructor): Removed. - (Set_CPP_Constructors): Code based in removed Set_Default_Constructor - but extending its functionality to handle non-default constructors. - - * exp_aggr.adb (Build_Record_Aggr_Code): Add support for non-default - constructors. Minor code cleanup removing unrequired label and goto - statement. - - * exp_ch3.adb (Build_Initialization_Call): Add support for non-default - constructors. - (Build_Init_Statements): Add support for non-default constructors. - (Expand_N_Object_Declaration): Add support for non-default constructors. - (Freeze_Record_Type): Replace call to Set_Default_Constructor by call - to Set_CPP_Constructors. - - * exp_ch5.adb (Expand_N_Assignment_Statement): Add support for - non-default constructors. - Required to handle its use in build-in-place statements. - - * gnat_rm.texi (CPP_Constructor): Document new extended use of this - pragma for non-default C++ constructors and the new compiler support - that allows the use of these constructors in record components, limited - aggregates, and extended return statements. - -2009-04-29 Vincent Celier - - * prj-part.adb (Parse_Single_Project): Do not attempt to find a - project extending an abstract project. - -2009-04-29 Eric Botcazou - - * targparm.ads: Fix oversight. - -2009-04-29 Ed Schonberg - - * lib-xref.adb (Output_Overridden_Op): Follow several levels of - derivation when necessary, to find the user-subprogram that is actally - being overridden. - -2009-04-29 Robert Dewar - - * sem_util.adb (May_Be_Lvalue): Fix cases involving indexed/selected - components - -2009-04-29 Ed Schonberg - - * exp_ch9.ads, exp_ch9.adb (Build_Wrapper_Spec): Use source line of - primitive operation, rather than source line of synchronized type, when - building the wrapper for a primitive operation that overrides an - operation inherited from a progenitor, to improve the error message on - duplicate declarations. - - * sem_ch3.adb (Process_Full_View): Use new signature of - Build_Wrapper_Spec. - -2009-04-29 Robert Dewar - - * prj-nmsc.ads: Minor reformatting - -2009-04-29 Eric Botcazou - - * exp_ch4.adb (Expand_N_Conditional_Expression): Set the SLOC of the - expression on the existing parent If statement. - -2009-04-29 Robert Dewar - - * prj-proc.adb, prj.ads: Minor reformatting - -2009-04-29 Eric Botcazou - - * exp_ch4.adb (Expand_N_Conditional_Expression): Set the SLOC of an - existing parent If statement on the newly created one. - -2009-04-29 Emmanuel Briot - - * gnatcmd.adb, prj-proc.adb, prj-proc.ads, make.adb, prj-part.adb, - prj-part.ads, prj.adb, prj.ads, clean.adb, prj-dect.adb, prj-dect.ads, - prj-nmsc.adb, prj-nmsc.ads, prj-pars.adb, prj-pars.ads, prj-makr.adb - (Set_In_Configuration, In_Configuration): Removed. - Replaced by an extra parameter Is_Config_File in several parameter to - avoid global variables to store the state of the parser. - -2009-04-29 Ed Schonberg - - * sinfo.ads, sinfo.adb: New attribute Next_Implicit_With, to chain - with_clauses generated for the same unit through rtsfind, and that - appear in the context of different units. - - * rtsfind.adb: New attribute First_Implicit_With, component of the - Unit_Record that stores information about a unit loaded through rtsfind. - -2009-04-29 Gary Dismukes - - * exp_ch3.adb (Stream_Operation_OK): Return True for limited interfaces - (other conditions permitting), so that abstract stream subprograms will - be declared for them. - -2009-04-29 Bob Duff - - * g-expect.adb (Expect_Internal): Fix check for overfull buffer. - - * g-expect.ads: Minor comment fixes. - -2009-04-29 Ed Schonberg - - * freeze.adb, lib-xref.adb (Check_Dispatching_Operation): if the - dispatching operation is a body without previous spec, update the list - of primitive operations to ensure that cross-reference information is - up-to-date. - -2009-04-29 Albert Lee - - * g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb, - g-socthi-vxworks.ads, g-socthi-mingw.adb, g-socthi-mingw.ads, - g-socthi.adb, g-socthi.ads, g-socket.adb, g-socket.ads - (GNAT.Sockets.Thin.C_Readv, - GNAT.Sockets.Thin.C_Writev): Remove unused subprograms. - (GNAT.Sockets.Thin.C_Recvmsg, - GNAT.Sockets.Thin.C_Sendmsg): New bindings to call recvmsg(2) and - sendmsg(2). - (GNAT.Sockets.Receive_Vector, GNAT.Sockets.Send_Vector): Use - C_Recvmsg/C_Sendmsg rather than Readv/C_Writev. - -2009-04-29 Ed Schonberg - - * sem_disp.adb (Check_Dispatching_Operation): if the dispatching - operation is a body without previous spec, update the list of - primitive operations to ensure that cross-reference information is - up-to-date. - - * sem_ch12.adb (Build_Instance_Compilation_Unit_Nodes): When creating a - new compilation unit node for the instance declaration, keep the - context items of the original unit on it, so that the context of the - instance body only holds the context inherited from the generic body. - -2009-04-29 Bob Duff - - * sem_res.adb: Minor comment fix. - -2009-04-29 Thomas Quinot - - * sem_elim.adb: Minor reformatting - -2009-04-29 Ed Schonberg - - * exp_aggr.adb (Convert_To_Positional): if the current unit is a - predefined unit, allow arbitrary number of components in static - aggregate, to ensure that the same level of constant folding applies - for Ada 95 and Ada 05 versions of the file. - -2009-04-29 Ed Schonberg - - * sem_elim.adb (Check_Eliminated): Handle new improved eliminate - information: no need for full scope check. - (Eliminate_Error): Do not emit error in a generic context. - -2009-04-29 Ed Falis - - * adaint.c (__gnat_rmdir): return error code if VTHREADS is defined. - VxWorks 653 POS does not support rmdir. - -2009-04-29 Matteo Bordin - - * s-stausa.adb, s-stausa.ads: Get_Usage_Range: changing the way - results are printed. - -2009-04-29 Arnaud Charlet - - * s-taskin.adb (Initialize): Remove pragma Warnings Off and remove - unused assignment. - -2009-04-29 Thomas Quinot - - * make.adb: Minor reformatting. - Minor code reorganization throughout. - -2009-04-29 Matteo Bordin - - * s-stausa.ads: Changed visibility of type Task_Result: moved to - public part to give application visibility over it. - This is for future improvement and to build a public API on top of it. - Changed record components name of type Task_Result to reflect the new - way of reporting. - - * s-stausa.adb: Actual_Size_Str changed to reflect the new way of - reporting Stack usage. - - * gnat_ugn.texi: Update doc of stack usage report. - - * g-tastus.ads, s-stusta.ads, s-stusta.adb: New files. - - * Makefile.rtl: Add new run-time files. - -2009-04-29 Pascal Obry - - * initialize.c: Do not expand quoted arguments. - -2009-04-29 Emmanuel Briot - - * prj-ext.adb, prj.adb, prj.ads: Fix memory leaks. - - * clean.adb (Ultimate_Extension_Of): removed, since duplicate of - Prj.Ultimate_Extending_Project_Of - -2009-04-29 Ed Schonberg - - * exp_ch7.adb (Build_Final_List): If the designated type is a Taft - Amendment type, add the with_clause for Finalization.List_Controller - only if the current context is a package body. - -2009-04-29 Thomas Quinot - - * sem_ch12.adb: Minor reformatting - - * sem_aggr.adb: Minor reformatting - - * sem_ch6.adb, sem_cat.ads: Minor reformatting - - * sem_ch10.adb, gnat1drv.adb, prj-nmsc.adb: Minor reformatting - -2009-04-29 Quentin Ochem - - * prj.ads (Source_Id): Now general pointer type. - -2009-04-29 Thomas Quinot - - * exp_ch7.adb, rtsfind.adb: Minor reformatting - - * sem_res.adb: Minor reformatting - -2009-04-29 Thomas Quinot - - * sem_res.adb (Static_Concatenation): An N_Op_Concat with static - operands is static only if it is a predefined concatenation operator. - - * sem_util.adb: Minor reformatting - - * sem_ch12.adb (Save_References): When propagating semantic information - from generic copy back to generic template, for the case of an - identifier that has been rewritten to an explicit dereference whose - prefix is either an object name or a parameterless funcion call - denoting a global object or function, properly capture the denoted - global entity: perform the corresponding rewriting in the template, - and point the rewritten identifier to the correct global entity (not - to the associated identifier in the generic copy). - -2009-04-29 Robert Dewar - - * rtsfind.adb, prj-env.adb: Minor reformatting - Minor code reorganization - -2009-04-29 Emmanuel Briot - - * make.adb: Fix comment - - * prj.adb (Ultimate_Extending_Project_Of): Fix handling when no project - is given as argument, as might happen in gnatmake. - -2009-04-29 Ed Schonberg - - * sem_ch3.adb (Check_Abstract_Overriding): Improve error message when - an abstract operation of a progenitor is not properly overridden by an - operation of a derived synchronized type. - -2009-04-29 Robert Dewar - - * mlib-prj.adb, mlib-tgt.adb, mlib-tgt.ads, prj-nmsc.adb, - prj-proc.adb: Minor reformatting - Minor code reorganization - -2009-04-29 Bob Duff - - * exp_ch7.adb (Build_Final_List): For an access type that designates a - Taft Amendment type, if the access type needs finalization, make sure - the implicit with clause for List_Controller occurs on the package spec. - - * rtsfind.adb (Text_IO_Kludge): Fine tune the creation of implicit - with's created for the pseudo-children of Text_IO and friends. In - particular, avoid cycles, such as Ada.Wide_Text_IO.Integer_IO and - Ada.Text_IO.Integer_IO both with-ing each other. - - * sem.adb (Walk_Library_Items): Suppress assertion failure in certain - oddball cases when pragma Extend_System is used. - - * sem_ch12.adb (Get_Associated_Node): Prevent direct 'with' cycles in - the case where a package spec instantiates a generic whose body with's - this package, so Walk_Library_Items won't complain about cyclic with's. - -2009-04-29 Emmanuel Briot - - * gnatcmd.adb, prj-proc.adb, make.adb, mlib-prj.adb, prj.adb, prj.ads, - prj-pp.adb, prj-pp.ads, makeutl.adb, clean.adb, prj-nmsc.adb, - mlib-tgt.adb, mlib-tgt.ads, prj-util.adb, prj-env.adb, prj-env.ads - (Project_Id): now a real pointer to Project_Data, instead of an index - into the Projects_Table. This simplifies the API significantly, avoiding - extra lookups in this table and the need to pass the Project_Tree_Ref - parameter in several cases - -2009-04-29 Nicolas Setton - - * gcc-interface/Makefile.in: Produce .dSYM files for shared libs on - darwin. - -2009-04-25 Eric Botcazou - - * gcc-interface/decl.c (gnat_to_gnu_entity) : Put - back kludge. - -2009-04-24 Robert Dewar - - * mlib-prj.adb, prj-env.adb, prj-nmsc.adb, prj-proc.adb, make.adb, - clean.adb: Minor reformatting. - Minor code reorganization and message improvement. - -2009-04-24 Emmanuel Briot - - * prj-proc.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-nmsc.ads - (Alternate_Languages): now implemented as a malloc-ed list rather - than through a table. - -2009-04-24 Thomas Quinot - - * sem_res.adb (Static_Concatenation): Simplify predicate to make it - accurately handle cases such as "lit" & "lit" and - "lit" & static_string_constant - -2009-04-24 Emmanuel Briot - - * prj-proc.adb, make.adb, mlib-prj.adb, prj.adb, prj.ads, clean.adb, - prj-nmsc.adb, prj-env.adb (Project_List_Table, Project_Element): - removed. Lists of projects are now implemented via standard malloc - rather than through the table. - -2009-04-24 Thomas Quinot - - * sem_ch12.adb: Minor reformatting - - * g-trasym.adb: Minor reformatting - - * exp_ch6.adb: Minor reformatting - -2009-04-24 Robert Dewar - - * layout.adb (Layout_Type): For packed array type, copy unset - size/alignment fields from the referenced Packed_Array_Type. - -2009-04-24 Bob Duff - - * lib-load.adb (Make_Instance_Unit): Revert previous change, no - longer needed after sem_ch12 changes. - - * sem.adb (Walk_Library_Items): Include with's in some debugging - printouts. - -2009-04-24 Emmanuel Briot - - * prj.ads, prj-nmsc.adb (Unit_Project): removed, since in fact we were - only ever using the Project field. - -2009-04-24 Ed Schonberg - - * sem_ch12.adb (Build_Instance_Compilation_Unit_Nodes): Do not set - Body_Required on the generated compilation node. The new node is linked - to its body, but both share the same file, so we do not set this flag - on the new unit so as not to create a spurious dependency on a - non-existent body in the ali file for the instance. - -2009-04-24 Robert Dewar - - * make.adb: Minor reformatting - -2009-04-24 Emmanuel Briot - - * prj.adb, prj.ads, prj-nmsc.adb (Check_File, Record_Ada_Source, - Add_Source): merge some code between those. In particular change where - file normalization is done to avoid a few extra calls to - Canonicalize_File_Name. This also removes the need for passing - Current_Dir in a number of subprograms. - -2009-04-24 Bob Duff - - * lib-load.adb (Make_Instance_Unit): In the case where In_Main is - False, assign the correct unit to the Cunit field of the new table - entry. We want the spec unit, not the body unit. - - * rtsfind.adb (Make_Unit_Name, Maybe_Add_With): Simplify calling - interface for these. - (Maybe_Add_With): Check whether we're trying to a with on the current - unit, and avoid creating such directly self-referential with clauses. - (Text_IO_Kludge): Add implicit with's for the generic pseudo-children of - [[Wide_]Wide_]Text_IO. These are needed for Walk_Library_Items, - and matches existing comments in the spec. - - * sem.adb (Walk_Library_Items): Add various special cases to make the - assertions pass. - - * sem_ch12.adb (Build_Instance_Compilation_Unit_Nodes): Use Body_Cunit - instead of Parent (N), for uniformity. - -2009-04-24 Robert Dewar - - * errout.ads: Minor reformatting - -2009-04-24 Emmanuel Briot - - * gnat_ugn.texi (Library Projects): add documentation on gnatmake's - behavior when the project includes sources from multiple languages - -2009-04-24 Vincent Celier - - * prj.adb (Has_Foreign_Sources): Returns True in Ada_Only mode if there - is a language other than Ada declared. - - * makeutl.adb (Linker_Options_Switches): Call For_All_Projects with - Imported_First set to True. - -2009-04-24 Ed Schonberg - - * sem_res.adb: additional optimization to inhibit creation of - redundant transient scopes. - -2009-04-24 Bob Duff - - * rtsfind.ads: Minor comment fix - -2009-04-24 Emmanuel Briot - - * prj-proc.adb, prj-nmsc.adb (Find_Ada_Sources, - Get_Path_Name_And_Record_Ada_Sources): merged, since these were - basically doing the same work (for explicit or implicit sources). - (Find_Explicit_Sources): renamed to Find_Sources to better reflect its - role. Rewritten to share some code (testing that all explicit sources - have been found) between ada_only and multi_language modes. - -2009-04-24 Jerome Lambourg - - * sem_prag.adb (Check_Form_Of_Interface_Name): Allow space in Ext_Name - for CLI imported types. - (Analyze_Pragma): Allow CIL or Java imported functions returning - access-to-subprogram types. - -2009-04-24 Emmanuel Briot - - * make.adb, prj.adb, prj.ads, makeutl.adb, makeutl.ads: - (Project_Data.Dir_Path): field removed, since it can be computed - directly from .Directory, and is needed only once when processing the - project is buildgpr.adb or make.adb - -2009-04-24 Robert Dewar - - * prj-env.adb, prj-proc.adb, prj.adb, prj.ads, - rtsfind.adb: Minor reformatting. - Minor code reorganization - -2009-04-24 Arnaud Charlet - - * mlib-prj.adb: Use friendlier english identifier. - - * gnatcmd.adb, make.adb: Use better english identifiers. - -2009-04-24 Robert Dewar - - * clean.adb: Minor reformatting - -2009-04-24 Robert Dewar - - * einfo.adb (OK_To_Rename): New flag - - * einfo.ads (OK_To_Rename): New flag - - * exp_ch3.adb (Expand_N_Object_Declaration): Rewrite as renames if - OK_To_Rename set. - - * exp_ch4.adb (Expand_Concatenate): Mark temp variable OK_To_Rename - - * sem_ch7.adb (Uninstall_Declarations): Allow for renames from - OK_To_Rename. - -2009-04-24 Emmanuel Briot - - * prj-proc.adb, make.adb, mlib-prj.adb, prj.adb, prj.ads, makeutl.adb, - clean.adb, prj-nmsc.adb, prj-env.adb, prj-env.ads (Project_Data.Seen): - field removed. This is not a property of the - project, just a boolean used to traverse the project tree, and storing - it in the structure prevents doing multiple traversal in parallel. - (Project_Data.Checked): also removed, since it was playing the same role - as Seen when we had two nested loops, and this is no longer necessary - (For_All_Imported_Projects): removed, since in fact there was already - the equivalent in For_Every_Project_Imported. The latter was rewritten - to use a local hash table instead of Project_Data.Seen - Various loops were rewritten to use For_Every_Project_Imported, thus - removing the need for Project_Data.Seen. This avoids a lot of code - duplication - -2009-04-24 Ed Schonberg - - * sem_res.adb (Resolve_Actuals): Do not create blocks around code - statements, even though the actual of the call is a concatenation, - because the argument is static, and we want to preserve warning - messages about sequences of code statements that are not marked - volatile. - - * sem_warn.adb: remove obsolete comment about warning being obsolete - - * s-tasren.adb (Task_Do_Or_Queue): If a timed entry call is being - requeued and the delay has expired while within the accept statement - that executes the requeue, do not perform the requeue and indicate that - the timed call has been aborted. - -2009-04-24 Emmanuel Briot - - * mlib-prj.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb - (Has_Ada_Sources, Has_Foreign_Sources): new subprograms - (Project_Data.Ada_Sources_Present, Foreign_Sources_Present): removed, - since they can be computed from the above. - -2009-04-24 Vincent Celier - - * gnatcmd.adb: Call Prj.Env.Initialize with the Project_Tree - - * prj-env.adb: Move all global variables to the private part of the - project tree data. - Access these new components instead of the global variables no longer - in existence. - (Add_To_Path): New Project_Tree_Ref parameter, to access the new - components that were previously global variables. - - * prj-env.ads (Initialize): New Project_Tree_Ref parameter - (Set_Mapping_File_Initial_State_To_Empty): New Project_Tree_Ref - parameter. - - * prj-nmsc.adb (Compute_Unit_Name): New Project_Tree_Ref parameter to - be able to call Set_Mapping_File_Initial_State_To_Empty with it. - - * prj.adb (Initialize): Do not call Prj.Env.Initialize - (Reset): Do not call Prj.Env.Initialize. Instead, initialize the new - components in the private part of the project tree data. - - * prj.ads (Private_Project_Tree_Data): new components moved from - Prj.Env: Current_Source_Path_File, Current_Object_Path_File, - Ada_Path_Buffer, Ada_Path_Length, Ada_Prj_Include_File_Set, - Ada_Prj_Objects_File_Set, Fill_Mapping_File. - -2009-04-24 Vincent Celier - - * opt.ads (Unchecked_Shared_Lib_Imports): New Boolean flag. - - * prj-nmsc.adb (Check_Library): No error for imports by shared library - projects, when --unchecked-shared-lib-imports is used. - -2009-04-24 Robert Dewar - - * sem_ch7.adb: Minor reformatting - -2009-04-24 Tristan Gingold - - * s-osinte-darwin.adb, s-osinte-darwin.ads: lwp_self now returns the - mach thread id. - -2009-04-24 Emmanuel Briot - - * prj-env.adb, prj-env.ads (Body_Path_Name_Of, Spec_Path_Name_Of, - Path_Name_Of_Library_Unit_Body): rEmove unused subprograms. - (For_All_Imported_Projects): new procedure - (For_All_Source_Dirs, For_All_Object_Dirs): Rewritten based on the - above rather than duplicating code. - -2009-04-24 Emmanuel Briot - - * prj-proc.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb - (Source_Id, Source_Data): use a real list to store sources rather than - using an external table to store the elements. This makes code more - efficient and more readable. - -2009-04-24 Emmanuel Briot - - * prj-proc.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb - (Source_Iterator): new type. - This removes the need for having the sources on three different - lists at the project tree, project and language level. They are now - on a single list. - -2009-04-24 Emmanuel Briot - - * gnatcmd.adb, prj.adb, prj.ads: Remove unused entities - -2009-04-24 Ed Schonberg - - * sem_warn.adb: Add comment on obsolete warning - -2009-04-24 Arnaud Charlet - - * s-tassta.adb (Create_Task): Fix violation of locking rule. - -2009-04-24 Emmanuel Briot - - * prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb (Language_Index): renamed - to Language_Ptr to better reflect its new implementation. - (Project_Data.First_Languages_Processing): renamed to Languages now - that the field with that name is no longer used - (Project_Data.Languages): removed, no longer used, and duplicates - information already available through First_Language_Processing. - (Prj.Language_Index): now an actual pointer, instead of an index into - a table. This makes the list somewhat more obvious, but more importantly - removes the need to pass a pointer to the project_tree_data in a few - places, and makes accessing the attributes of a languages more - efficient. - -2009-04-24 Richard Kenner - Thomas Quinot - - * fe.h (Set_Identifier_Casing): Add const to second parameter. - * gcc-interface/misc.c (internal_error_function): Make copy of return - from pp_formatted_text before assigning BUFFER to it. - (gnat_init): Likewise for main_input_filename and gnat_argv. - (gnat_printable_name): Remove cast from call to Set_Identifier_Casing. - -2009-04-24 Eric Botcazou - - * ttypes.ads (Target_Double_Float_Alignment): New variable. - (Target_Double_Scalar_Alignment): Likewise. - * get_targ.ads (Get_Strict_Alignment): Adjust external name. - (Get_Double_Float_Alignment): New imported function. - (Get_Double_Scalar_Alignment): Likewise. - * layout.adb (Set_Elem_Alignment): Take into account specific caps for - the alignment of "double" floating-point types and "double" or larger - scalar types, as parameterized by Target_Double_Float_Alignment and - Target_Double_Scalar_Alignment respectively. - * gcc-interface/gigi.h (double_float_alignment): Declare. - (double_scalar_alignment): Likewise. - (is_double_float_or_array): Likewise. - (is_double_scalar_or_array): Likewise. - (get_target_double_float_alignment): Likewise. - (get_target_double_scalar_alignment): Likewise. - * gcc-interface/targtyps.c (get_strict_alignment): Rename into... - (get_target_strict_alignment): ...this. - (get_target_double_float_alignment): New function. - (get_target_double_scalar_alignment): Likewise. - * gcc-interface/decl.c (gnat_to_gnu_entity) : - Test the presence of an alignment clause for under-aligned integer - types. Take into account specific caps for the alignment of "double" - floating-point types and "double" or larger scalar types, as - parameterized by Target_Double_Float_Alignment and - Target_Double_Scalar_Alignment respectively. - (validate_alignment): Likewise. - * gcc-interface/trans.c (Attribute_to_gnu) : Likewise. - (gigi): Initialize double_float_alignment and double_scalar_alignment. - * gcc-interface/utils.c (double_float_alignment): New global variable. - (double_scalar_alignment): Likewise. - (is_double_float_or_array): New predicate. - (is_double_scalar_or_array): Likewise. - -2009-04-24 Eric Botcazou - - * gcc-interface/utils2.c (build_cond_expr): Move SAVE_EXPR ahead of - the conditional expression only if it is common to both arms. - -2009-04-24 Eric Botcazou - - * gcc-interface/gigi.h (build_call_alloc_dealloc): Update comment. - * gcc-interface/decl.c (gnat_to_gnu_entity) : Pass correct - arguments to build_allocator. - * gcc-interface/utils2.c (build_call_alloc_dealloc): Update comment. - Remove code handling special allocator and assert its uselessness. - -2009-04-24 Eric Botcazou - - * gcc-interface/decl.c (gnat_to_gnu_entity) : If an - alignment is specified, do not promote that of the component type - beyond it. - : Likewise. - -2009-04-23 Eric Botcazou - - * einfo.ads (Is_True_Constant): Lift restriction on atomic objects. - * sinfo.ads (Object Declaration): Likewise. - (Assignment Statement): Likewise. - * freeze.adb (Expand_Atomic_Aggregate): Remove useless test. - Do not force Is_True_Constant to false on the temporary. - (Freeze_Entity): Do not force Is_True_Constant to false on names on - the RHS of object declarations. - * gcc-interface/trans.c (lvalue_required_p) : - New case. Return 1 if the object is atomic. - : Likewise. - -2009-04-23 Eric Botcazou - - * gcc-interface/decl.c (gnat_to_gnu_entity) - For packed array types, make the original array type a parallel type - for the modular type and its JM wrapper if the type is bit-packed. - : Likewise. Do not generate the special XA parallel - record type for packed array types. Remove kludge. - -2009-04-23 Eric Botcazou - - * gcc-interface/gigi.h (create_index_type): Adjust head comment. - * gcc-interface/decl.c (gnat_to_gnu_entity) : - Use front-end predicates to compute signedness and precision. - : Fold range type. - Make sure to set longest_float_type_node to a scalar type. - (elaborate_entity): Use consistent Constraint_Error spelling. - (substitute_in_type) : Always copy the type. - * gcc-interface/misc.c (gnat_print_type) : Use brief - output for the modulus, if any. - : Likewise for the RM size. - * gcc-interface/trans.c (gnat_to_gnu): Use consistent Constraint_Error - spelling. - * gcc-interface/utils.c (finish_record_type): Really test the alignment - of BLKmode bit-fields to compute their addressability. - (create_index_type): Adjust comments. - (create_param_decl): Create the biased subtype manually. - * gcc-interface/utils2.c (build_component_ref): Use consistent - Constraint_Error spelling. - -2009-04-23 Eric Botcazou - - * gcc-interface/cuintp.c: Clean up include directives. - * gcc-interface/targtyps.c: Likewise. - * gcc-interface/decl.c: Likewise. - * gcc-interface/misc.c: Likewise. - * gcc-interface/trans.c: Likewise. - * gcc-interface/utils.c: Likewise. - * gcc-interface/utils2.c: Likewise. - * gcc-interface/Make-lang.in: Adjust dependencies accordingly. - -2009-04-23 Eric Botcazou - - * gcc-interface/ada-tree.h (union lang_tree_node): Use standard idiom. - (SET_TYPE_LANG_SPECIFIC): Likewise. Fix formatting. - (SET_DECL_LANG_SPECIFIC): Likewise. - Reorder macros. - * gcc-interface/decl.c (gnat_to_gnu_entity) : - Update comment about use of build_range_type. - : Use consistent naming convention. - : Rework comments about TYPE_ACTUAL_BOUNDS and add - check for other cases of overloading. - * gcc-interface/trans.c (gigi): Use size_int in lieu of build_int_cst. - * gcc-interface/utils2.c (build_call_raise): Fix off-by-one error. - Use size_int in lieu of build_int_cst. - (build_call_alloc_dealloc): Use build_index_2_type in lieu of - build_range_type. - -2009-04-22 Eric Botcazou - - * gcc-interface/utils2.c (build_binary_op) : If operation's - type is an enumeral or a boolean type, change it to an integer type - with the same mode and signedness. - -2009-04-22 Eric Botcazou - - * gcc-interface/utils.c (create_var_decl_1): Do not emit debug info - for an external constant whose initializer is not absolute. - -2009-04-22 Taras Glek - - * gcc-interface/ada-tree.h: Update GTY annotations to new syntax. - * gcc-interface/trans.c: Likewise. - * gcc-interface/utils.c: Likewise. - -2009-04-22 Ed Schonberg - - * sem_res.adb: Create block around procedure call when actual is a - concatenation. - -2009-04-22 Thomas Quinot - - * s-soflin.ads: Fix typos - -2009-04-22 Vincent Celier - - * prj-env.adb: Minor comment change - - * prj-nmsc.adb (Check_Common): Add guard to avoid calling - Get_Name_String with No_File. - - * tempdir.adb (Create_Temp_File): Output diagnostic when temp file - cannot be created even when not in verbose mode. - -2009-04-22 Emmanuel Briot - - * make.adb, prj-env.adb, prj-env.ads, prj-nmsc.adb, prj.adb, - prj.ads (Create_Mapping_File): merge the two versions for Ada_Only and - Multi_Language modes, to avoid code duplication. - (Project_Data.Include_Language): Removed. - -2009-04-22 Vincent Celier - - * tempdir.adb (Create_Temp_File): Add a diagnostic in verbose mode when - the temporary file cannot be created, indicating the directory when the - creation was attempted. - -2009-04-22 Emmanuel Briot - - * prj-env.adb, prj-env.ads (Create_Mapping_File): we need to compare - the language names, not their indices. - -2009-04-22 Emmanuel Briot - - * prj.ads, prj-nmsc.adb, prj-env.adb, prj-env.ads - (Source_Data.Language_Name): Field removed. - -2009-04-22 Emmanuel Briot - - * prj.adb, prj.ads, prj-nmsc.adb (Project_Data.Unit_Based_Language_*): - Two fields removed. - -2009-04-22 Emmanuel Briot - - * prj-nmsc.adb (Check_Naming_Ada_Only): Properly initialize the - separate_suffix to the same value as the body_suffix. - -2009-04-22 Robert Dewar - - * prj.adb: Minor code reorganization - Code clean up. - - * prj-proc.adb: Minor code reorganization, clean up. - - * prj-nmsc.adb: Minor reformatting - Minor code reorganization - - * gnat_ugn.texi: Add to doc on strict aliasing - -2009-04-22 Pascal Obry - - * s-osinte-mingw.ads: Rename Reserved field in CRITICAL_SECTION to - SpinCount. - - * s-tasini.adb: Minor reformatting. - - * s-tassta.adb: Minor reformatting. - -2009-04-22 Emmanuel Briot - - * prj-proc.adb, prj-nmsc.adb (Check_Naming_Schemes): split into several - smaller subprograms. - Renamed to Check_File_Naming_Schemes to avoid confusion with the - other Check_Naming_Schemes functions that plays a totally different - role. - (Check_Unit_Based_Lang, Check_File_Based_Lang): new subprograms, - extracted from the above. These were partially rewritten to avoid - unnecessary code and temporary variables. - (Compute_Unit_Name): new subprogram, merge of Check_Unit_Based_Lang - and Get_Unit (which for now still exist since they contain mode-specific - code) - -2009-04-22 Emmanuel Briot - - * prj.ads, prj.adb, prj-nmsc.adb, prj-proc.adb (Recursive_Process): - Remove duplicated code. - (Canonical_Case_File_Name): new subprogram - (Check_And_Normalize_Unit_Names): new subprogram - (Write_Attr): new subprogram - Better sharing of code - (Check_Naming_Ada_Only, Check_Naming_Multi_Lang): new subprogram, to - split Check_Naming and help find duplicated code - (Check_Common): new subprogram, sharing code between ada_only and - multi_language mode. - (Naming_Data.Dot_Repl_Loc): field removed - -2009-04-22 Emmanuel Briot - - * prj-proc.adb, prj-nmsc.adb (Load_Naming_Exceptions): New subprogram. - Minor refactoring to reduce the size of - Process_Sources_In_Multi_Language_Mode. - Avoid extra copied of Source_Data, which we found in the past could be - quite slow. - (Mark_Excluded_Sources): new subprogram. - (Remove_Locally_Removed_Files_From_Units): merged into the above - Refactors Process_Sources_In_Multi_Language_Mode to reduce its size, - and allow better sharing of code between multi_lang and ada_only modes - (Project_Extends): removed, since exact duplicate of Prj.Is_Extending - -2009-04-22 Emmanuel Briot - - * prj-proc.adb, prj.adb, prj.ads (Project_Data.First_Referred_By): - Removed, since unused. - -2009-04-22 Vincent Celier - - * prj-attr.adb: New single project level attribute - Separate_Run_Path_Options. - - * prj-nmsc.adb (Process_Project_Level_Simple_Attributes): Process - attribute Seperate_Run_Path_Options. - - * prj.ads: (Project_Configuration): New Boolean component - Separate_Run_Path_Options, defaulted to False. - - * snames.ads-tmpl: New standard name Seperate_Run_Path_Options - -2009-04-22 Robert Dewar - - * sem_type.adb: Minor reformatting - - * mlib.adb: Minor reformatting - - * sem_aggr.adb: Minor reformatting. Defend against junk aggregate from - syntax error. - -2009-04-22 Nicolas Setton - - * link.c: Add flag __gnat_separate_run_path_options. - - * mlib.adb (Separate_Run_Path_Options): New subprogram. - - * mlib.ads (Separate_Run_Path_Options): Declare. - - * gnatcmd.adb (Process_Link): Add support for emitting one "rpath" - switch per directory, rather than one "rpath" switch listing all - directories. - - * gnatlink.adb (Process_Binder_File): Likewise. - - * make.adb (Gnatmake): Likewise. - -2009-04-22 Hristian Kirtchev - - * exp_ch6.adb (Make_Build_In_Place_Call_In_Assignment): Code cleanup. - Add a call to Move_Final_List when the target of the assignment is a - return object that needs finalization and the expression is a - controlled build-in-place function. - -2009-04-22 Vincent Celier - - * make.adb (Gnatmake, Bind_Step): call Set_Ada_Paths with - Including_Libraries set to True. - -2009-04-22 Ed Schonberg - - * lib-load.ads, lib-load.adb (Make_Child_Decl_Unit): New subprogram, to - create a unit table entry for the subprogram declaration created for a - child suprogram body that has no separate specification. - - * sem_ch10.adb (Analyze_Compilation_Unit): For a child unit that is a - subprogram body, call Make_Child_Decl_Unit. - - * lib.adb (Get_Cunit_Unit_Number): Verify that an entry not yet in the - table can only be the created specification of a child subprogram body - that is the main unit, which has not been entered in the table yet. - - * errout.adb (Output_Messages): Ignore created specification of a - child subprogram body to prevent repeated listing of error messages. - - * gnat1drv.adb (gnat1drv): The generated specification for a child - subprogram body does not generate code. - -2009-04-22 Arnaud Charlet - - * s-bitops.adb, s-bitops.ads (Raise_Error): Do not use Ada 05 syntax, - since this unit is now part of bootstrap units, so must use Ada 95 - syntax only. - -2009-04-22 Thomas Quinot - - * a-tasatt.adb: Minor reformatting - -2009-04-22 Bob Duff - - * s-stalib.ads: Remove "with System;" since we're inside System, so - it's unnecessary. - -2009-04-22 Vincent Celier - - * prj-nmsc.adb (Add_Source): Always put the dependency file name in - the source record, as there may be a dependency file even if no object - file is created. - -2009-04-22 Robert Dewar - - * lib-load.adb: Minor reformatting - - * lib-load.ads: Minor reformatting - - * sinfo.ads: Minor reformatting - -2009-04-22 Bob Duff - - * exp_pakd.adb: Minor comment fixes. - - * sinfo.ads, par-load.adb, sem_ch10.adb, lib-load.ads, lib-load.adb - sem_ch12.adb: Change the meaning of the Library_Unit attribute to - include units containing instantiations, as well as units that are - generic instantiations. - - * sem.adb: Include dependents and corresponding specs/bodies in the - unit walk. - - * gcc-interface/Make-lang.in: - sem now depends on s-bitops, because of the packed array of Booleans. - -2009-04-22 Eric Botcazou - - * gcc-interface/ada-tree.def: Fix formatting nits. - (REGION_STMT): Delete. - (HANDLER_STMT): Likewise. - * gcc-interface/ada-tree.h: Fix formatting nits. - (IS_STMT): Delete. - (REGION_STMT_BODY): Likewise. - (REGION_STMT_HANDLE): Likewise. - (REGION_STMT_BLOCK): Likewise. - (HANDLER_STMT_ARG): Likewise. - (HANDLER_STMT_LIST): Likewise. - (HANDLER_STMT_BLOCK): Likewise. - * gcc-interface/gigi.h (fp_prec_to_size): Update comment. - (fp_size_to_prec): Likewise. - (largest_move_alignment): Delete. - (gnat_compute_largest_alignment): Likewise. - Fix minor nits. - * gcc-interface/decl.c (gnat_to_gnu_entity) : - Remove redundant code. - : Remove redundant assert. - : Exit early from index computation in pathological - cases. - Rewrite conditional assignment. - (make_type_from_size): Likewise. - * gcc-interface/misc.c (largest_move_alignment): Delete. - (gnat_finish_incomplete_decl): Likewise. - (LANG_HOOKS_FINISH_INCOMPLETE_DECL): Likewise. - (asm_out_file): Likewise - (gnat_print_type) : Fall through to ENUMERAL_TYPE case. - (gnat_dwarf_name): Move around. - * gcc-interface/trans.c (Attribute_to_gnu): Fix minor nits. - (gigi): Remove call to gnat_compute_largest_alignment. - * utils.c (create_field_decl): Rewrite conditional assignment. - Fix minor nits. - -2009-04-22 Eric Botcazou - - * gcc-interface/decl.c (gnat_to_gnu_entity): Compute is_type predicate - on entry. Defer common processing for types. Reorder and clean up. - Compute the equivalent GNAT node and the default size for types only. - : Directly use Esize for the type's precision. - : For an unconstrained designated type, do not pretend - that a dummy type is always made. - Fix nits in comments. - (validate_size): Fix formatting nits and comments. - (set_rm_size): Likewise. - * gcc-interface/utils.c (create_param_decl): Replace bogus argument - passed to TARGET_PROMOTE_PROTOTYPES hook. - -2009-04-22 Eric Botcazou - - * fe.h (Get_External_Name): Declare. - * gcc-interface/gigi.h (concat_id_with_name): Rename to... - (concat_name): ...this. - * gcc-interface/decl.c (gnat_to_gnu_entity): Rename gnu_entity_id to - gnu_entity_name and adjust for above renaming. - : Use create_concat_name to get the name of the various - types associated with unconstrained array types. - (make_aligning_type): Adjust for above renaming. - (maybe_pad_type): Likewise. - (components_to_record): Likewise. Use get_identifier_with_length for - the encoding of the variant. - (get_entity_name): Use get_identifier_with_length. - (create_concat_name): Likewise. Use Get_External_Name if no suffix. - Do not fiddle with Name_Buffer. - (concat_id_with_name): Rename to... - (concat_name): ...this. Use get_identifier_with_length. Do not fiddle - with Name_Buffer. - * gcc-interface/utils.c (rest_of_record_type_compilation): Adjust for - above renaming. - -2009-04-21 Joseph Myers - - * ChangeLog, ChangeLog.ptr, ChangeLog.tree-ssa: Add copyright and - license notices. - -2009-04-21 Eric Botcazou - - * gcc-interface/trans.c (gnat_to_gnu): Do not overwrite location info. - -2009-04-21 Eric Botcazou - - * gcc-interface/ada-tree.h (TYPE_RM_SIZE_NUM): Delete. - (TYPE_RM_SIZE): Access TYPE_LANG_SLOT_1 directly for integral types. - * gcc-interface/decl.c (gnat_to_gnu_entity) : - Remove useless support code for packed array types and assert its - uselessness. - : Reuse entity identifier in more places and - adjust for TYPE_RM_SIZE change. - Fix nits in comments. Use Original_Array_Type accessor instead - of Associated_Node_For_Itype accessor for packed array types. - (make_packable_type): Likewise. - (maybe_pad_type): Likewise. - (set_rm_size): Likewise. Rework conditional statement. Adjust for - TYPE_RM_SIZE change. - (make_type_from_size): Adjust for TYPE_RM_SIZE change. - (rm_size): Fix nits in comments. Rework conditional statements. - * gcc-interface/misc.c (gnat_print_type): Adjust for TYPE_RM_SIZE - change. - * gcc-interface/trans.c (Attribute_to_gnu): Fix nits in comments. - * gcc-interface/utils.c (gnat_init_decl_processing): Use more - appropriate function to initialize the size_type_node. Adjust for - TYPE_RM_SIZE change. - -2009-04-21 Eric Botcazou - - * gcc-interface/decl.c (gnat_to_gnu_entity): Do not set force_global - for imported subprograms. - -2009-04-21 Eric Botcazou - - * gcc-interface/decl.c (gnat_to_gnu_entity) : Do not make - constant objects covered by 13.3(19) volatile. - -2009-04-21 Eric Botcazou - - * gcc-interface/utils.c (create_type_decl): Do not pass declarations - of dummy fat pointer types to the debug back-end. - -2009-04-20 Eric Botcazou - - * gcc-interface/decl.c (gnat_to_gnu_entity): Rewrite Esize calculation. - : Set the RM size on the integer type - before wrapping it up in the record type. Do not overwrite the - Ada size of the record type with the Esize. - -2009-04-20 Eric Botcazou - - * gcc-interface/trans.c (unchecked_conversion_lhs_nop): New predicate. - (gnat_to_gnu) : Return the expression - if the conversion is on the LHS of an assignment and a no-op. - Do not convert the result to the result type if the Parent - node is such a conversion. - -2009-04-20 Eric Botcazou - - * gcc-interface/ada-tree.h (DECL_HAS_REP_P): Delete. - * gcc-interface/decl.c (gnat_to_gnu_entity): Add support for extension - of types with unknown discriminants. - (substitute_in_type): Rewrite and restrict to formal substitutions. - * gcc-interface/utils.c (create_field_decl): Do not set DECL_HAS_REP_P. - (update_pointer_to): Update comment. - -2009-04-20 Ed Schonberg - - * sem_ch8.adb (Use_One_Package): In an instance, if two - potentially_use_visible and non-overloadable homonyms are available - from the actuals of distinct formal packages, retain the current one, - which was visible in the generic, to prevent spurious visibility - errors. - (End_Use_Package): Restore use_visibility when needed. - -2009-04-20 Sergey Rybin - - * gnat_ugn.texi, vms_data.ads: Update doc. - -2009-04-20 Arnaud Charlet - - * gcc-interface/Make-lang.in: Update dependencies - - * gcc-interface/Makefile.in: Link run-time against winsock2 lib under - Windows. - -2009-04-20 Robert Dewar - - * checks.ads: Fix documentation of range check handling - -2009-04-20 Ed Schonberg - - * sem_ch8.adb (Use_One_Type): Use proper entity on warning message for - a redundant use_type clause. - -2009-04-20 Robert Dewar - - * sem_attr.adb (Eval_Attribute, case Length): Catch more cases where - this attribute can be evaluated at compile time. - (Eval_Attribute, case Range_Length): Same improvement - - * sem_eval.ads, sem_eval.adb (Compile_Time_Compare): New procedure - -2009-04-20 Ed Schonberg - - * sem_ch6.adb (Analye_Subprogram_Declaration): Code reorganization, - for better handling of null procedures. - (Check_Overriding_Indicator): Do not emit a warning on a missing - overriding indicator on an operator when the type of which the operator - is a primitive is private. - -2009-04-20 Bob Duff - - * sem.adb, gnat1drv.adb, debug.adb: Use the -gnatd.W switch to control - debugging output. - -2009-04-20 Robert Dewar - - * sem_attr.adb: Minor reformatting - - * gnatcmd.adb: Minor reformatting - -2009-04-20 Ed Schonberg - - * sem_ch4.adb (Analyze_User_Defined_Binary_Op): If left operand is - overloaded and one interpretation matches the context, label the - operand with the type of first formal. - -2009-04-20 Bob Duff - - * debug.ads: Minor comment fix. - - * debug.adb: Minor comment fixes. - -2009-04-20 Javier Miranda - - * rtsfind.ads (RE_Null_Id): New entity of package Ada.Exceptions - - * exp_ch6.adb (Expand_Inlined_Call): Undo previous patch. - - * exp_ch11.adb (Expand_N_Raise_Statement): When the raise stmt - is expanded into a call to Raise_Exception, avoid passing the - exception-name'identity in runtimes in which this argument - is not used. - -2009-04-20 Jerome Lambourg - - * impunit.adb: Add i-cil and i-cilobj packages, now needed by the - generated bindings for cil. - -2009-04-20 Ed Schonberg - - * sem_aggr.adb (Resolve_Record_Aggregate): If the type has unknown - discriminants, collect components from the Underlying_Record_View, - which will be used in the expansion of the aggregate into assignments. - - * sem_ch3.adb: Do not label derived type with unknown discriminants as - having a private declaration. - -2009-04-20 Ed Schonberg - - * exp_util.adb (Expand_Subtype_From_Expr): use the - underlying_record_view when available, to create the proper constrained - subtype for an object of a derived type with unknown discriminants. - -2009-04-20 Javier Miranda - - * exp_ch6.adb (Expand_Inlined_Call): Avoid generation of temporaries for - formals that have pragma unreferenced. - -2009-04-20 Pascal Obry - - * a-direct.adb (To_Lower_If_Case_Insensitive): Removed. - Remove all calls to To_Lower_If_Case_Insensitive to preserve - the pathname original casing. - -2009-04-20 Robert Dewar - - * g-trasym.adb: Minor reformatting - - * s-os_lib.adb: Minor reformatting - - * sem.adb: Minor reformatting - Minor code reorganization - - * sem_ch3.adb: Minor reformatting - - * sem_ch4.adb: Minor reformatting - - * sem_ch8.adb: Minor reformatting - - * sem_type.adb: Minor reformatting - -2009-04-20 Javier Miranda - - * sem_disp.adb (Find_Dispatching_Type): For subprograms internally - generated by derivations of tagged types use the aliased subprogram a - reference to locate their controlling type. - -2009-04-20 Tristan Gingold - - * g-trasym.adb: Set size of result buffer before calling - convert_address. - -2009-04-20 Ed Schonberg - - * sem_ch4.adb (Valid_Candidate): When checking whether a prefixed call - to a function returning an array can be interpreted as a call with - defaulted parameters whose result is indexed, take into account the - types of all the indices of the array result type. - -2009-04-20 Pascal Obry - - * a-direct.adb, s-os_lib.adb: Minor reformatting. - -2009-04-20 Ed Schonberg - - * sem_ch8.adb (Analyze_Object_Renaming): Proper checks on incorrect - null exclusion qualifiers for object renaming declarations. - -2009-04-20 Nicolas Roche - - * sysdep.c (__gnat_localtime_tzoff): on Windows, manipulated times are - unsigned long long. So compare local_time and utc_time before computing - the difference. - -2009-04-20 Eric Botcazou - - * sem_ch3.adb (Build_Derived_Private_Type): Insert the declaration - of the Underlying_Record_View before that of the derived type. - - * exp_ch3.adb (Expand_Record_Extension): Do not special-case types - with unknown discriminants with regard to the parent subtype. - -2009-04-20 Bob Duff - - * sem.adb (Semantics, Walk_Library_Items): Include dependents of bodies - that are not included. This is necessary if the main unit is a generic - instantiation. - - * gnat1drv.adb (Gnat1drv): Comment out the call to Check_Library_Items, - because it doesn't work if -gnatn is used. - -2009-04-20 Ed Schonberg - - * rtsfind.adb (RTE, RTE_Record_Component): In - Configurable_Run_Time_Mode, do not enable front-end inlining. - -2009-04-20 Thomas Quinot - - * g-socthi-vms.adb: Remove now unnecessary WITH clause on - System.Address_To_Access_Conversions. - -2009-04-20 Ed Schonberg - - * sem.adb: Guard against ill-formed subunits. - -2009-04-20 Bob Duff - - * output.adb (Flush_Buffer): Do not indent blank lines. - (Ignore_Output): New procedure for output suppression. - -2009-04-20 Hristian Kirtchev - - * a-calfor.adb (Image): Subtract 0.5 from the sub second component only - when it is positive. This avoids a potential constraint error raised - by the conversion to Natural. - -2009-04-20 Gary Dismukes - - * exp_ch5.adb (Expand_Assign_Array): For the case where the assignment - involves a target that has a specified address, don't set Forward_OK - and Backward_OK to False if the rhs is an aggregate, since overlap - can't occur. - -2009-04-20 Ed Schonberg - - * sem_ch8.adb (Analyze_Object_Renaming): Reject ambiguous expressions - in an object renaming declaration when the expected type is an - anonymous access type. - - * sem_type.adb (Disambiguate): Use anonymousness to resolve a potential - ambiguity when one interpretation is an anonymous access type and the - other is a named access type, and the context itself is anonymous - -2009-04-20 Thomas Quinot - - * einfo.ads: Minor comment rewording - - * sem_aggr.adb: Minor comment rewording - - * sem_ch3.adb, sem_ch6.adb: Minor reformatting - -2009-04-20 Pascal Obry - - * adaint.c (__gnat_is_readable_file): Check for file existence - when not using ACL (always the case on remote drives). - -2009-04-20 Robert Dewar - - * sinfo.ads: Minor comment fixes - - * exp_disp.adb: Minor reformatting - - * gnat1drv.adb: Minor reformatting - - * output.adb: Minor reformatting - - * s-vxwext-kernel.ads: Minor reformatting - - * sem.ads: Minor reformatting - - * sem.adb: Minor reformatting - - * sem_elim.adb: Minor reformatting - - * uname.ads: Minor reformatting - -2009-04-20 Eric Botcazou - - * init.c (__gnat_adjust_context_for_raise): On x86{-64}/Linux, add - a small dope of 4 words to the adjustment to the stack pointer. - -2009-04-20 Thomas Quinot - - * xoscons.adb: generate C header s-oscons.h in - addition to s-oscons.ads. - - * socket.c: On VMS, use s-oscons.h. - - * sem_ch3.adb: Minor reformatting - - * exp_ch9.adb: Minor reformatting - -2009-04-20 Eric Botcazou - - * gcc-interface/trans.c (check_for_eliminated_entity): Remove. - (Attribute_to_gnu): Do not call check_for_eliminated_entity. - (call_to_gnu): Likewise. - -2009-04-20 Eric Botcazou - - * gcc-interface/trans.c (gigi): Declare the name of the compilation - unit as the first global name at the very beginning. - -2009-04-20 Thomas Quinot - - * socket.c, g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.ads, - s-oscons-tmplt.c, gsocket.h, g-socthi-mingw.ads, g-socthi.ads, - g-sothco.ads (__gnat_inet_pton): Needs to be enabled for HP-UX as well, - since HP-UX supports neither inet_aton nor inet_pton (altough the - latter is part of the Single UNIX Specification!). - So reorganize code, and share C implementation based on inet_addr(3) - with VMS (instead of having a VMS specific Ada implementation in - g-socthi-vms.adb). - -2009-04-20 Gary Dismukes - - * osint-c.ads, osint-c.adb (Get_Object_Output_File_Name): New function - to return the object file name saved by Set_Object_Output_File_Name. - -2009-04-20 Emmanuel Briot - - * g-comlin.adb (Initialize_Option_Scan): Fix initialization of parsers - for the standard command line, when argc has been modified since the - start of the application. - -2009-04-20 Thomas Quinot - - * socket.c (__gnat_inet_pton, Windows case): Adjust return value. - WSAStringToAddress returns 0 for success and SOCKET_ERROR for failure. - -2009-04-20 Bob Duff - - * gnat1drv.adb (Gnat1drv): Put call to Check_Library_Items inside - pragma Debug. - -2009-04-20 Ed Schonberg - - * exp_ch9.adb (Build_Protected_Sub_Specification): Mark generated - subprogram as Eliminated when source operation is. - (Expand_N_Protected_Type_Declaration): Generate protected and - unprotected specs for the internal operations, even if the source - operation is eliminated. - -2009-04-20 Hristian Kirtchev - - * exp_ch3.adb (Make_Predefined_Primitive_Specs, - Predefined_Primitive_Bodies): Do not create the declarations and bodies - of the primitive subprograms associated with dispatching select - statements when the runtime is in configurable mode. - -2009-04-20 Ed Falis - - * s-vxwext-kernel.ads (tickGet): Use tick64Get. - -2009-04-20 Thomas Quinot - - * s-oscons-tmplt.c: Add support for generating a dummy version of - s-oscons.ads providing all possible constants. - - * g-socthi-mingw.ads: Fix calling convention for __gnat_inet_pton. - - * socket.c (__gnat_inet_pton): On Windows make sure we always use the - ANSI version (not the UNICODE version) of WSAStringToAddress. - -2009-04-20 Pascal Obry - - * adaint.c (__gnat_set_OWNER_ACL): properly free memory - allocated for the security descriptor and make sure all - handles are closed before leaving this procedure. - -2009-04-20 Javier Miranda - - * einfo.ads, einfo.adb (Is_Underlying_Record_View): New subprogram - (Set_Is_Underlying_Record_View): New subprogram - - * sem_aggr.adb (Discr_Present, Resolve_Record_Aggregate): In case of - private types with unknown discriminants use the underlying record view - if available. - - * sem_ch3.adb (Build_Derived_Private_Type): Enable construction of the - underlying record view in the full view of private types whose parent - has unknown discriminants. - (Build_Derived_Record_Type): Avoid generating the class-wide entity - associated with an underlying record view. - (Derived_Type_Declaration): Avoid deriving parent primitives in - underlying record views. - - * sem_ch6.adb (Check_Return_Subtype_Indication): Add support for - records with unknown discriminants. - - * sem_type.adb (Covers): Handle underlying record views. - (Is_Ancestor): Add support for underlying record views. - - * exp_attr.adb (Expand_Attribute): Expand attribute 'size into a - dispatching call if the type of the target object is tagged and has - unknown discriminants. - - * exp_aggr.adb (Resolve_Record_Aggregate): Add support for records with - unknown discriminants. - - * exp_disp.adb (Build_Dispatch_Tables): Avoid generating dispatch - tables for internally built underlying record views. - - * sprint.adb (sprint_node_actual): Improve output of aggregates with an - empty list of component associations. - -2009-04-20 Thomas Quinot - - * sem_ch10.adb: Minor reformatting - - * socket.c, g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.ads, - g-socthi-mingw.ads, g-socthi.ads, g-socket.adb - (GNAT.Sockets.Inet_Addr): Do not use non-portable inet_aton, instead use - standard inet_pton API (and emulate it on platforms that do not - support it). - (GNAT.Sockets.Thin.Inet_Pton, VMS case): Implement in terms of - DECC$INET_ADDR, imported in Ada. - (GNAT.Sockets.Thin.Inet_Pton, VxWorks and Windows cases): Use C - implementation provided by GNAT runtime. - (__gnat_inet_pton): C implementation of inet_pton(3) for VxWorks and - Windows. - -2009-04-20 Eric Botcazou - - * gnat_ugn.texi: Add documentation for -fno-ivopts. - -2009-04-20 Ed Schonberg - - * sem_ch10.adb (Analyze_Context): Do not analyze a unit in a - with_clause if it is the main unit. - -2009-04-20 Thomas Quinot - - * sem_type.adb, ali.adb, erroutc.adb: Minor code reorganization - (no behaviour change): Use Append instead of Increment_Last followed - by assignment. - -2009-04-20 Hristian Kirtchev - - * exp_ch3.adb (Make_Predefined_Primitive_Specs): Do not generate the - declarations of all primitives associated with dispatching asynchronous, - conditional and timed selects when dispaching calls are forbidden and - select statements are not allowed (such as in Ravenscar). - (Predefined_Primitive_Bodies): Ditto for bodies. - - * exp_disp.ad (Make_DT): Do not create and populate the - Select_Specific_Data of the dispatch table when dispatching calls are - forbidden and select statements are not allowed (such as in Ravenscar). - -2009-04-20 Robert Dewar - - * a-tifiio.adb: Minor reformatting - -2009-04-20 Thomas Quinot - - * g-socthi-vms.adb, g-socket.adb, g-socket.ads: inet_aton(3), unlike - other C library functions, report *failure* with a zero status, and - success with a non-zero status. - -2009-04-20 Bob Duff - - * sem.ads, sem.adb (Walk_Library_Items): New generic procedure. - (Semantics): After analyzing each unit, Append it to the - Comp_Unit_List, if appropriate. - - * gnat1drv.adb (Check_Library_Items): New procedure for debugging - purposes. - (Gnat1drv): Correct comment regarding Back_End_Mode. - -2009-04-20 Eric Botcazou - - * gnat_ugn.texi: Add documentation for -fno-inline-small-functions. - -2009-04-20 Thomas Quinot - - * s-taprop-irix.adb, s-taprop-tru64.adb, s-taprop-vms.adb, - output.adb, output.ads, s-taprop-hpux-dce.adb, - s-taprop-linux.adb, s-taprop-solaris.adb, s-taprop-posix.adb: Minor - reformatting. - -2009-04-20 Thomas Quinot - - * g-socket.adb, g-socket.ads, g-socthi-mingw.ads, g-socthi-vms.adb, - g-socthi-vms.ads, g-socthi-vxworks.ads, g-socthi.ads - (GNAT.Sockets.Thin.C_Inet_Addr): Remove. - (GNAT.Sockets.Thin.Inet_Aton): New function, imported from C library - except for VMS where it is reimplemented in Ada using DECC$INET_ADDR. - (GNAT.Sockets.Inet_Addr): Use inet_aton(3) instead of inet_addr(3). - - * debug.adb: Fix typo - - * gnat_rm.texi: Minor doc fix. - - * sem_ch7.adb, freeze.adb: Minor reformatting - -2009-04-20 Thomas Quinot - - * g-socket.ads: Add new constants: - Loopback_Inet_Addr - Unspecified_Group_Inet_Addr - All_Hosts_Group_Inet_Addr - All_Routers_Group_Inet_Addr - - * s-oscons-tmplt.c, g-sttsne-vxworks.adb (System.OS_Constants): Add - ERANGE (Result too large). - (GNAT.Sockets.Thin.Task_Safe_NetDB, VxWorks version): Add missing - propagation of errno to caller. - -2009-04-20 Hristian Kirtchev - - * a-calend.adb, a-calend-vms.adb: Increase the number of leap seconds - to 24. Increment Leap_Seconds_Count and add an entry to aggregate - Leap_Second_Times. - -2009-04-20 Gary Dismukes - - * sem_elim.ads (Check_For_Eliminated_Subprogram): New procedure for - checking for references to eliminated subprograms that should be - flagged. - (Eliminate_Error_Message): Update comment to say "references" rather - than "calls" (since attribute cases are handled here as well). - - * sem_elim.adb (Check_For_Eliminated_Subprogram): New procedure for - checking for references to eliminated subprograms that should be - flagged. Add with and use of Sem and Sem_Util. - - * sem_res.adb (Resolve_Call): Reject calls to eliminated subprograms. - Add with and use of Sem_Elim. - - * sem_attr.adb (Analyze_Access_Attribute): Reject access attributes - applied to eliminated subprograms. - (Analyze_Attribute): Reject 'Address and 'Code_Address applied to - eliminated subprograms. - Add with and use of Sem_Elim. - - * sem_disp.adb (Check_Dispatching_Call): Remove error check for calls - to eliminated subprograms, now handled during Resolve_Call. - Remove with and use of Sem_Elim. - - * exp_disp.adb (Make_DT): Get Ultimate_Alias of primitive before - testing Is_Eliminated, for proper handling of primitive derived from - eliminated subprograms. - -2009-04-20 Vincent Celier - - * mlib-prj.adb (Build_Library): Use the shared library linker, if one - has been declared (Library_GCC or Linker'Driver), for the driver name. - - * prj-nmsc.adb (Process_Linker): If Library_GCC is not declared and - Linker'Driver is, use Linker'Driver as the shared library linker. - (Process_Project_Level_Simple_Attributes): Issue a warning if attribute - Library_GCC is declared. - (Check_Library_Attributes): Set up the shared linker driver: either - Library_GCC or Linker'Driver. Issue a warning if Library_GCC is - declared. - -2009-04-20 Thomas Quinot - - * g-socket.ads (Send_Socket): Fix misleading comment. - -2009-04-20 Arnaud Charlet - - * switch-c.adb (Scan_Front_End_Switches): Disable inspector mode in - ASIS mode. - -2009-04-20 Geert Bosch - - * a-tifiio.adb (Put): Avoid generating too many digits for certain - fixed types with smalls that are neither integer or the reciprocal - of an integer. - -2009-04-20 Bob Duff - - * uname.ads: Minor comment fix. - - * types.ads: Minor comment fix. - -2009-04-20 Pascal Obry - - * adaint.c (__gnat_get_libraries_from_registry): Fix code to - avoid warning. At the same time fix a memory leak. - - * osint.adb (Get_Libraries_From_Registry): Properly free memory - returned by the above routine. - -2009-04-20 Robert Dewar - - * s-conca5.adb, s-conca5.ads, s-conca7.adb, s-conca7.ads, s-conca9.adb, - s-conca9.ads, rtsfind.ads, s-conca2.adb, s-conca2.ads, s-conca4.adb, - s-conca4.ads, s-conca6.adb, s-conca6.ads, s-conca8.adb, s-conca8.ads, - s-conca3.adb, s-conca3.ads (Str_Concat_Bounds_x): New functions. - - * exp_ch4.adb (Expand_Concatenate): Minor code reorganization - -2009-04-20 Pascal Obry - - * initialize.c (__gnat_initialize): Add braces to kill warning. - - * adaint.c: Minor reformatting, remove trailing spaces. - -2009-04-17 Arnaud Charlet - - * gcc-interface/Make-lang.in: Update dependencies. - -2009-04-20 Eric Botcazou - - * adaint.h (__gnat_lwp_self): Declare on Linux. - - * adaint.c (__gnat_os_filename): Add ATTRIBUTE_UNUSED on 'filename'. - -2009-04-20 Robert Dewar - - * exp_ch5.adb, usage.adb, back_end.adb, opt.ads: Implement - front-end part of -fpreserve-control-flow switch. - -2009-04-20 Bob Duff - - * rtsfind.adb: Minor comment fix - -2009-04-20 Robert Dewar - - * exp_aggr.adb: Minor reformatting - Minor code reorganization (use Nkind_In) - - * g-socket.adb: Minor reformatting - - * g-socket.ads: Minor comment fix - - * s-auxdec.ads: Minor comment and organization update. - - * s-auxdec-vms_64.ads: Minor comment and organization update. - - * sem_ch10.adb: Minor addition of ??? comment - - * sem_disp.adb: Minor reformatting - -2009-04-20 Ed Schonberg - - * inline.adb (Add_Inlined_Subprogram): Do not place on the back-end - list a caller of an inlined subprogram, if the caller itself is not - called. - -2009-04-20 Pascal Obry - - * adaint.c: Disable use of ACL on network drives. - -2009-04-20 Arnaud Charlet - - * gnat_ugn.texi: Add examples. - -2009-04-20 Thomas Quinot - - * g-socket.ads (Abort_Selector): Clarify documentation. - -2009-04-20 Arnaud Charlet - - * opt.ads (Inspector_Mode): Update documentation of this flag. - -2009-04-20 Thomas Quinot - - * g-socket.ads: Minor reformatting - - * socket.c, gsocket.h (__gnat_get_h_errno, VxWorks case): No need to - consider S_resolvLib error codes since we only use the hostLib wrappers. - -2009-04-20 Eric Botcazou - - * sem_ch3.adb (Build_Derived_Private_Type): Insert the declaration - of the Underlying_Record_View after that of the derived type. - -2009-04-20 Arnaud Charlet - - * switch-c.adb (Scan_Front_End_Switches): Disable front-end inlining - in inspector mode. - -2009-04-20 Javier Miranda - - * sem_ch6.adb (New_Overloaded_Entity): Minor reformating. - - * sem_ch6.ads (Subtype_Conformant, Type_Conformant): Add missing - documentation. - - * exp_aggr.adb (Build_Record_Aggr_Code): Code cleanup. - - * sem_disp.adb - (Check_Dispatching_Operation): Set attribute Is_Dispatching_Operation - in internally built overriding subprograms. - -2009-04-20 Doug Rupp - - * s-auxdec-vms_64.ads (Integer_{8,16,32,64}_Array): New array types. - - * s-auxdec.ads: Likewise - -2009-04-20 Ed Schonberg - - * sem_ch3.adb (Find_Type_Name): Reject the completion of a private - type by an interface. - - * exp_ch6.adb (Expand_Call): Inline To_Address unconditionally, to - minimze difference in expanded tree when compiled as spec of the main - unit, or as a spec in the context of another unit. - -2009-04-20 Hristian Kirtchev - - * a-calend.adb: Remove types char_Pointer, int, tm and tm_Pointer. - (localtime_tzoff): This routine no longer accepts an actual of type - tm_Pointer. - (UTC_Time_Offset): Remove local variable Secs_TM. - - * sysdep.c (__gnat_localtime_tzoff): This routine no longer accepts an - actual of type struct tm*. Add local variable of type struct tm for all - targets that provide localtime_r and need to invoke it. - -2009-04-20 Thomas Quinot - - * s-oscons-tmplt.c, g-socket.adb, g-socket.ads - (GNAT.Sockets.Resolve_Error): Add case of EPIPE - Add case of EAGAIN for platforms where it is not equal to EWOULDBLOCK - -2009-04-20 Robert Dewar - - * sem_ch3.adb: Minor reformatting - - * lib-load.adb: Minor reformatting - - * sem_ch4.adb: Minor reformatting - -2009-04-20 Robert Dewar - - * namet-sp.ads, namet-sp.adb (Is_Bad_Spelling_Of): Implement new spec - (equal values => False). - -2009-04-20 Ed Schonberg - - * exp_ch6.adb (Is_Null_Procedure): predicate is global, so that calls - to null procedures can be inlined unconditionally. - -2009-04-20 Eric Botcazou - - * gcc-interface/trans.c (call_to_gnu): When creating the copy for a - non-addressable parameter passed by reference, do not convert the - actual if its type is already the nominal type, unless it is of - self-referential size. - -2009-04-20 Arnaud Charlet - - * gnat_ugn.texi: Fix typos. - -2009-04-20 Robert Dewar - - * debug.adb, gnat1drv.adb, sem_ch13.adb: Add circuitry to - Validate_Unchecked_Warnings to suppress warnings about size or - alignment or extra bits if either type involved has pragma Warnings - (Off) set for the type entity. - -2009-04-19 Eric Botcazou - - * gcc-interface/trans.c (gigi): Make the special IA-64 descriptor type - a builtin type and give it a name. - -2009-04-17 Diego Novillo - - * gcc-interface/misc.c (gnat_expand_expr): Remove. - (LANG_HOOKS_EXPAND_EXPR): Remove. - -2009-04-17 Robert Dewar - - * sem_ch3.adb: Minor reformatting - -2009-04-17 Pascal Obry - - * adaint.c: Add __gnat_use_acl global variable to control use of ACL. - -2009-04-17 Ed Schonberg - - * sem_ch3.adb (Build_Derived_Enumeration_Type): Diagnose properly - illegal constraints on type derived from formal discrete types. - -2009-04-17 Thomas Quinot - - PR ada/35953 - - * g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb, - g-socthi-vxworks.ads, g-socthi-mingw.adb, g-socthi-mingw.ads, - g-socthi.adb, g-stsifd-sockets.adb, g-socthi.ads, g-socket.adb, - g-socket.ads (GNAT.Sockets.Thin.C_Send, - GNAT.Sockets.Thin.Syscall_Send): Remove unused subprograms. - Replace calls to send(2) with equivalent sendto(2) calls. - (GNAT.Sockets.Send_Socket): Factor common code in inlined subprogram. - (GNAT.Sockets.Write): Account for the case of hyper-empty arrays, do not - report an error in that case. Factor code common to the two versions - (datagram and stream) in common routine Stream_Write. - -2009-04-17 Robert Dewar - - * exp_disp.adb: Minor reformatting - Minor code reorganization (use Nkind_In) - - * prepcomp.adb: Minor reformatting - - * sem_ch3.adb: Minor reformatting - - * sem_res.adb: Minor comment addition - - * exp_ch5.adb (Expand_Assign_Array): Use Has_Address_Clause to test - for address clause - - * lib-xref.adb (Generate_Reference): Exclude recursive calls from - setting Is_Referenced - - * types.ads: Minor reformatting - -2009-04-17 Arnaud Charlet - - * gnat_ugn.texi: Initial documentation on binding generator. - -2009-04-17 Ed Schonberg - - * einfo.ads, einfo.adb: New attribute Underlying_Record_View, to handle - type extensions whose parent is a type with unknown discriminants. - - * exp_aggr.adb (Expand_Record_Aggregate): If the type of an extension - aggregate has unknown discriminants, use the Underlying_Record_View to - obtain the discriminants of the ancestor part. - - * exp_disp.adb (Build_Dispatch_Tables): Types that are - Underlying_Record_Views share the dispatching information of the - original record extension. - - * exp_ch3.adb (Expand_Record_Extension): If the type inherits unknown - discriminants, propagate dispach table information to the - Underlying_Record_View. - - * sem_ch3.adb (Build_Derived_Private_Type): If parent type has unknown - discriminants and declaration is not a completion, generate - Underlying_Record_View to provide proper discriminant information to - the front-end and to gigi. - -2009-04-17 Robert Dewar - - * s-conca5.adb, g-sercom.adb, s-conca5.ads, s-conca7.adb, exp_imgv.adb, - s-conca7.ads, s-crc32.adb, s-crc32.ads, s-conca9.adb, s-conca9.ads, - s-addope.adb, i-cstrin.ads, s-addope.ads, s-carun8.adb, s-carun8.ads, - g-htable.ads, g-hesora.adb, g-hesora.ads, s-htable.adb, s-htable.ads, - s-conca2.adb, s-conca2.ads, a-except.adb, s-conca4.adb, a-except.ads, - s-conca4.ads, s-except.adb, s-except.ads, s-conca6.adb, s-conca6.ads, - g-spchge.adb, g-spchge.ads, g-u3spch.adb, g-u3spch.ads, s-conca8.adb, - s-conca8.ads, g-byorma.adb, g-byorma.ads, s-memory.adb, s-memory.ads, - g-speche.adb, g-speche.ads, g-stsifd-sockets.adb, exp_dist.adb, - s-imgenu.adb, s-imgenu.ads, s-mastop.adb, s-mastop.ads, s-exctab.adb, - s-exctab.ads, s-imenne.adb, s-imenne.ads, s-casuti.adb, osint.adb, - s-assert.adb, s-casuti.ads, s-assert.ads, s-os_lib.adb, s-conca3.adb, - s-conca3.ads: Remove unneeded pragma Warnings - -2009-04-17 Robert Dewar - - * g-moreex.adb: Add comments. - - * s-auxdec.ads: Add ??? comment for uncommented pragma Warnings (Off) - - * s-auxdec-vms_64.ads: Add ??? comment for uncommented pragma - Warnings (Off) - - * prepcomp.adb: Add ??? comment - - * a-tasatt.adb: Minor reformatting - - * g-trasym-vms-alpha.adb: Add ??? comment - - * g-trasym-vms-ia64.adb: Add ??? comment - - * xoscons.adb: Minor reformatting - - * s-tassta.adb: Minor reformatting - - * s-scaval.adb: Add ??? comment - - * stand.ads: Minor code clean up (remove junk with of Namet) - - * s-strcom.adb, s-strcom.ads, s-string.adb, s-string.ads, s-sopco3.adb, - s-sopco3.ads, s-strops.adb, s-strops.ads, s-sopco5.adb, s-sopco5.ads, - s-wchcnv.adb, s-wchcnv.ads, s-ststop.adb, s-ststop.ads, s-soflin.adb, - s-soflin.ads, s-traceb.adb, s-traceb.ads, s-traent.adb, s-traent.ads, - s-secsta.adb, s-secsta.ads, s-utf_32.adb, s-utf_32.ads, s-wchcon.adb, - s-wchjis.adb, s-wchcon.ads, s-wchjis.ads, s-sopco4.adb, s-sopco4.ads, - s-stache.adb, s-stache.ads, s-stoele.adb, s-stoele.ads, s-stalib.adb, - s-stalib.ads, s-os_lib.ads, s-purexc.ads: Remove no longer needed - Warnings off pragmas. - -2009-04-17 Pascal Obry - - * initialize.c: Fix test for reallocating the arguments array. - -2009-04-17 Geert Bosch - - * exp_fixd.adb (Expand_Convert_Float_To_Fixed): Have float to fixed - conversion truncate only for decimal fixed point types. - -2009-04-17 Jerome Lambourg - - * g-comlin.adb (Initialize_Scan_Option): Make sure the sections are - reinitialized. - -2009-04-17 Robert Dewar - - * exp_ch5.adb (Expand_Assign_Array): Do not set Forwards_OK and - Backwards_OK if either operand has an address clause. - -2009-04-17 Pascal Obry - - * initialize.c: Code clean up, use realloc. - -2009-04-17 Pascal Obry - - * initialize.c: Do not get Unicode command line if Unicode support not - activated. - Add support for wildcard expansion for Unicode parameters on Win32. - - * mingw32.h: Add missing macros when Unicode support not activated. - -2009-04-17 Javier Miranda - - * sem_ch6.adb (Check_Anonymous_Return): Add missing checks to - avoid generating code that references the Current_Master - when compiling without tasks. - -2009-04-17 Vincent Celier - - * prj-attr.adb: New project level attribute Target - - * prj-nmsc.adb (Process_Project_Level_Simple_Attributes): Process - attribute Target - - * prj.ads (Project_Configuration): New component Target - -2009-04-17 Thomas Quinot - - * exp_ch7.adb (Expand_Ctrl_Function_Call): Remove incorrect special - case for the case of an aggregate component, the attach call for the - result is actually needed. - - * exp_aggr.adb (Backend_Processing_Possible): Backend processing for - an array aggregate must be disabled if the component type requires - controlled actions. - - * exp_ch3.adb: Minor reformatting - -2009-04-17 Bob Duff - - * output.ads (Indent,Outdent): New procedures for indenting the output. - (Write_Char): Correct comment -- LF _is_ allowed. - - * output.adb (Indent,Outdent): New procedures for indenting the output. - Keep track of the indentation level, and make sure it doesn't get too - high. - (Flush_Buffer): Insert spaces at the beginning of each line, if - indentation level is nonzero. - (Save_Output_Buffer,Restore_Output_Buffer): Save and restore the current - indentation level. - (Set_Standard_Error,Set_Standard_Output): Remove superfluous - "Next_Col := 1;". Flush_Buffer does that. - - * sem_ch6.adb, sem_ch7.adb (Debug_Flag_C): Reorganize the output - controlled by the -gnatdc switch. It now occurs on entry/exit to the - relevant analysis routines, and calls Indent/Outdent to make the - indentation reflect the nesting level. Add "helper" routines, since - otherwise lots of "return;" statements would skip the debugging output. - -2009-04-17 Arnaud Charlet - - * s-taprop-tru64.adb, s-taprop-vms.adb, s-taprop-linux.adb, - s-taprop-solaris.adb, s-taprop-irix.adb, s-taprop-hpux-dce.adb, - s-taprop-posix.adb (Suspend_Until_True): Protect against early wakeup. - -2009-04-17 Thomas Quinot - - * exp_aggr.adb: Minor code reorganization, no behaviour change. - -2009-04-17 Ed Schonberg - - * sem_ch8.adb (Use_One_Type): Handle properly a redundant use type - clause in a unit that is a package body or a subunit, when the previous - clause appears in a spec or a parent. - -2009-04-17 Thomas Quinot - - * sinfo.ads, exp_aggr.adb, exp_aggr.ads: Minor reformatting - - * exp_ch7.adb: Minor reformatting - -2009-04-17 Bob Duff - - * exp_ch4.adb (Expand_Allocator_Expression): In an initialized - allocator, check that the expression of the qualified expression obeys - the constraints of the subtype of the qualified expression. - -2009-04-17 Thomas Quinot - - * sprint.adb (Write_Itype): Add handling of enumeration subtypes. - -2009-04-17 Ed Schonberg - - * exp_ch4.adb (Expand_Allocator_Expression): Apply constraint check to - aggregate, using context imposed by subtype mark in allocator. - -2009-04-17 Pascal Obry - - * gnat_rm.texi: Document GNAT_CODE_PAGE environment variable - -2009-04-17 Nicolas Roche - - * initialize.c (__gnat_initialize): remove MAX_PATH limitation on each - argument length. - -2009-04-17 Gary Dismukes - - * sem_elim.adb (Eliminate_Error_Msg): Minor change to error message to - cover both calls and attribute references ("call" => "reference"). - -2009-04-17 Ed Schonberg - - * sem_ch3.adb (Analyze_Subtype_Declaration): A subtype of an access - type for which Storage_Size is set to 0 is legal in a pure unit. - -2009-04-17 Thomas Quinot - - * exp_ch7.adb: Minor reformatting - -2009-04-17 Robert Dewar - - * restrict.adb (Check_Restriction_No_Dependence): Don't check - restriction if outside main extended source unit. - - * sem_ch10.adb (Analyze_With_Clause): Check No_Dependence restriction - for parents of child units as well as the child unit itself. - -2009-04-17 Bob Duff - - * checks.ads: Minor comment fix - - * exp_aggr.ads: Minor comment fix - -2009-04-17 Nicolas Roche - - * adaint.c: Improve cross compiler detection and handling. - -2009-04-17 Eric Botcazou - - * exp_ch4.adb (Expand_Concatenation): Do not use calls at -Os. - -2009-04-17 Pascal Obry - - * mingw32.h: Add S2WSC and WS2SC macros to convert to/from - CurrentCodePage. - - * adaint.h: Encoding_Unspecified is now defined. Corresponds to the - value when no encoding form paramter is set on Text_IO services. - - * adaint.c: CurrentCodePage new variable on Windows. - Use new macros S2WSC and WS2SC instead of the UTF-8 oriented - ones. - - * mkdir.c: Use new macros S2WSC and WS2SC instead of the UTF-8 oriented - ones. - - * initialize.c: Initialize CurrentCodePage depending on GNAT_CODE_PAGE - environment variable value. Default is UTF-8. - - * s-crtl.ads: Filename_Encoding add Unspecified in the enumeration type. - fopen and freopen encoding parameter is now set to Unspecified. - The default value is in this case UTF-8 (as it was before) but - use the new macros that convert to/from the code page set - at runtime (CurrentCodePage). - - * s-fileio.adb: When no encoding specified use Unspecified value. - -2009-04-17 Ed Schonberg - - * atree.adb, atree.ads: Remove dead code. - -2009-04-17 Arnaud Charlet - - * gcc-interface/Make-lang.in: Update dependencies. - -2009-04-17 Ed Schonberg - - * sem_ch3.adb (Access_Subprogram_Definition): Additional checks on - illegal uses of incomplete types in formal parts and return types. - - * sem_ch6.adb (Process_Formals): Taft-amendment types are legal in - access to subprograms. - - * sem_ch7.adb (Uninstall_Declarations): diagnose attempts to use - Taft-amendment types as the return type of an access_to_function type. - - * freeze.adb (Freeze_Entity): Remove tests on formals of an incomplete - type for access_to_subprograms. The check is performed on package exit. - -2009-04-17 Ed Schonberg - - * atree.ads, atree.adb: Move New_Copy_Tree.to sem_util. - - * nlists.ads, nlists.adb: Move New_Copy_List to sem_util. - - * lib-load.adb: Use Copy_Separate_Tree rather than New_Copy_Tree - - * sem_util.ads, sem_util.adb: New_Copy_Tree and New_Copy_List belong in - semantic units, because the handling of itypes in the copied tree - requires semantic information that does not belong in atree. - -2009-04-17 Robert Dewar - - * par-ch6.adb: Minor reformatting - - * prj.adb: Minor reformatting - -2009-04-17 Gary Dismukes - - * par-ch6.adb (P_Subprogram): Overriding indicators should be allowed - on protected subprogram bodies, so exclude the case where Pf_Flags is - Pf_Decl_Pbod from the error check. - - * par-ch9.adb (P_Protected_Operation_Items): Permit overriding - indicators on subprograms in protected bodies, and proceed with parsing - the subprogram. - - * sem_ch6.adb (Verify_Overriding_Indicator): Exclude protected - subprograms from the check for primitiveness on subprograms with - overriding indicators. - (Check_Overriding_Indicator): Include protected subprograms in the - style check for missing overriding indicators. - -2009-04-17 Tristan Gingold - - * init.c: Fix stack checking for x86 Darwin. - -2009-04-17 Vincent Celier - - * prj-attr.adb: New project level attribute Object_File_Suffix - (). - - * prj-nmsc.adb (Add_Source): Use the object file suffix to get the - object file name - (Process_Compiler): Process attribute Object_File_Suffix - - * prj.adb (Object_Name): Use suffix Object_File_Suffix instead of - platform suffix, when specified. - - * prj.ads (Language_Config): New component Object_File_Suffix, - defaulted to No_Name. - (Object_Name): New parameter Object_File_Suffix, defaulted to No_Name - - * snames.ads-tmpl: New standard name Object_File_Suffix - -2009-04-17 Robert Dewar - - * gnat_rm.texi: Add documentation about No_Streams restriction - - * sem_attr.adb (Check_Stream_Attribute): Exclude implicit stream - attributes when checking No_Streams restriction. - -2009-04-17 Thomas Quinot - - * rtsfind.ads (RE_Request_Destroy): New PolyORB s-parint entity. - - * exp_dist.adb (PolyORB_Support.Build_General_Calling_Stubs): Add - missing calls to RE_Request_Destroy to deallocate request objects after - use. - -2009-04-17 Nicolas Setton - - * link.c: Fix support for passing a response file under Darwin. - -2009-04-17 Emmanuel Briot - - * prj.adb (Free): new subprogram. - -2009-04-17 Ed Schonberg - - * sem_ch3.adb: additional initialization on incomplete subtypes. - - * sem_ch6.adb (Process_Formals): if the subprogram is in the private - part and one of the formals is an incomplete tagged type, attach to - list of private dependends of the type for later validation. - - * sem_ch7.adb (Uninstall_Declarations): diagnose attempts to declare - primitive operations of a Taft-amendmment type. - - * freeze.adb (Freeze_Entity): Remove tests on formals of an incomplete - type. The check is performed on package exit, possibly after the - subprogram is frozen. - -2009-04-17 Vincent Celier - - * prj-nmsc.adb (Get_Directories): Get the object and exec directory - before looking for source directories, but make sure that there are nil - if they are not explicitely declared and there is explicitely no - sources in the project. - -2009-04-17 Pascal Obry - - * initialize.c: Set gnat_argv with UTF-8 encoded strings on Windows. - - * init.c: Fix minor typo and style fix. - -2009-04-17 Robert Dewar - - * a-except.adb, a-except-2005.adb: Add PE_Address_Of_Intrinsic - - * sem_attr.adb (Analyze_Attribute, case Address): Use - PE_Address_Of_Intrinsic. - - * types.ads: Add PE_Address_Of_Intrinsic - - * types.h: Add PE_Address_Of_Intrinsic - -2009-04-17 Nicolas Setton - - * gcc-interface/Makefile.in: Under darwin, build shared libraries - with install_name starting with "@rpath/". - -2009-04-17 Nicolas Setton - - * link.c: Add darwin section - -2009-04-16 Robert Dewar - - * g-pehage.adb: Minor reformatting - - * sem_ch12.adb: Minor reformatting - - * exp_dist.adb: Minor reformatting - - * bindgen.adb: Minor style fixes. - -2009-04-16 Ed Schonberg - - * sem_eval.adb (Eval_Indexed_Component): Extend constant-folding of - indexed components to the case where the prefix is a static string - literal. - -2009-04-16 Javier Miranda - - * exp_ch3.adb (Expand_N_Object_Declaration): In case of build-in-place - objects avoid any further expansion of the expression initializing the - object. - -2009-04-16 Ed Schonberg - - * sem_ch12.adb (Preanalyze_Actuals): If the instance is a child unit - that hides an outer homograph, make that homograph invisible when - analyzing the actuals, to to prevent illegal direct visibility on it. - -2009-04-16 Eric Botcazou - - * g-pehage.adb (Initialize): Fix off-by-one error. - -2009-04-16 Tristan Gingold - - * init.c: Detect real stack overflow on Darwin. - - * system-darwin-x86.ads: Use stack probing on darwin x86. - -2009-04-16 Ed Schonberg - - * sem_attr.adb (Analyze_Attribute, case 'Address): It is illegal to - take the address of an intrinsic subprogram. - -2009-04-16 Arnaud Charlet - - * gcc-interface/Makefile.in: Change g-trasym to g-trasym-unimplemented - for the targets where GNAT.Traceback.Symbolic is not supported. - -2009-04-16 Vincent Celier - - * g-trasym-unimplemented.ads, g-trasym-unimplemented.adb: New file. - - * g-trasym.ads: Update comments. - -2009-04-16 Vasiliy Fofanov - - * tracebak.c (STOP_FRAME): Verify validity of the current address - before dereferencing. - -2009-04-16 Ed Schonberg - - * sprint.adb (Write_Itype): If the itype is an array subtype, preserve - the original location of the index expressions and the index subtypes, - to prevent spurious out-of-scope references in gigi. - -2009-04-16 Tristan Gingold - - * init.c, s-osinte-darwin.ads, system-darwin-x86_64.ads: - Add support for stack checking on darwin. - -2009-04-16 Vincent Celier - - * prj-attr.adb: New attribute Runtime_Source_Dir - - * prj-nmsc.adb (Process_Project_Level_Array_Attributes): Process - attribute Runtime_Source_Dir. - (Check_Naming_Schemes): Give default values to out parameters to avoid - invalid data. - - * prj.ads (Language_Config): New component Runtime_Source_Dir - - * snames.ads-tmpl: New standard name Runtime_Source_Dir - -2009-04-16 Pascal Obry - - * adaint.h, adaint.c (__gnat_rmdir): New routine. - Simple wrapper routines used to convert to proper encoding on - Windows. - - * s-crtl.ads: Use __gnat_rmdir instead of direct call to the C library. - - * g-dirope.adb (Remove_Dir): Fix a bug, the root directory was removed - twice. - -2009-04-16 Pascal Obry - - * s-crtl.ads, s-os_lib.adb: Minor code clean-up. - -2009-04-16 Thomas Quinot - - * snames.ads-tmpl (Name_Defined): New predefined name for use by the - integrated preprocessor. - - * prep.ads, prep.adb (Setup_Hooks): New subprogram. - (Initialize): Split into two subprograms, Initialize (to be called - prior to compiler command line processing) and Setup_Hooks (to be called - later on when the first source file is loaded). - - * gprep.adb: Change call to Prep.Initialize to call to Prep.Setup_Hooks. - Add call to Prep.Initialize. - - * sinput-l.adb, prepcomp.adb: Change call to Prep.Initialize to call - to Prep.Setup_Hooks. - -2009-04-16 Pascal Obry - - * adaint.h, adaint.c (__gnat_chdir): New routine. - Simple wrapper routines used to convert to proper encoding on - Windows. - - * s-crtl.ads: Use __gnat_chdir instead of direct call to the C library. - - * a-direct.adb, g-dirope.adb: Use chdir from System.CRTL. - -2009-04-16 Quentin Ochem - - * sinput-p.adb (Clear_Source_File_Table): Use Sinput.Initialize instead - of Source.Init. - -2009-04-16 Eric Botcazou - - * a-convec.ads (Is_Empty): Mark inline. - -2009-04-16 Nicolas Roche - - * init.c (__gnat_init_float): Initialize FPU on x86_64 windows - -2009-04-16 Thomas Quinot - - * prepcomp.adb: Minor reformatting - -2009-04-16 Jerome Lambourg - - * sem_prag.adb (Process_Import_Or_Interface): With .NET, - Access_Subprogram types can also be imported. - (Check_Form_Of_Interface_Name): Accept '/' character in entity CIL - names. - -2009-04-16 Ed Schonberg - - * exp_ch6.adb (Make_Build_In_Place_Call_In_Object_Declaration): - preserve homonym chain when the declaration is rewritten into a - renaming declaration, in order to preserve visibility structure. - -2009-04-16 Jerome Lambourg - - * sem_prag.adb (Analyze_Pragma): Make sure that pragma pack is not - taken into account for VM targets. - -2009-04-16 Hristian Kirtchev - - * g-calend.ads, g-calend.adb (Week_In_Year): Now calls - Year_Week_In_Year. - (Year_Week_In_Year): New routine which contains the original code from - Week_In_Year. Add the missing special case for January 1st falling on - a Monday. - -2009-04-16 Thomas Quinot - - * exp_dist.adb (Build_From_Any_Call): For a subtype that is a generic - actual type, use the base type to build the To_Any function. - (Build_From_Any_Function): Remove junk, useless subtype conversion. - -2009-04-16 Thomas Quinot - - * exp_ch9.adb, exp_code.adb, tbuild.adb, sem_case.adb, - restrict.adb: Minor code reorganization (use - Add_{Char,Str}_To_Name_Buffer instead of inlining it by hand). - -2009-04-16 Bob Duff - - * exp_ch6.ads, exp_ch6.adb (Is_Build_In_Place_Function_Return): Remove, - unused. - -2009-04-16 Thomas Quinot - - * sem_ch4.adb: Minor reformatting - - * adaint.c: Remove junk duplicated code. - - * sem_ch3.adb: Minor reformatting - - * exp_dist.adb: Minor comment rewording - -2009-04-16 Robert Dewar - - * gnat_rm.texi: Document effect of Assume_No_Invalid_Values and -gnatVa - used together. - -2009-04-16 Ed Schonberg - - * sem_ch4.adb (Find_Equality_Types): Filter out types that are not - usable before calling Add_One_Interp, to resolve spurious ambiguities. - -2009-04-16 Robert Dewar - - * Make-lang.in: Add entries for s-conca?.o - - * Makefile.rtl: Add entries for s-conca? - - * debug.adb: Add debug flags -gnatd.c and -gnatd.C to control behavior - of concatenation expansion - - * exp_ch4.adb (Expand_Concatenation): Generate calls for certain - string cases instead of expanding assignments inline. - - * opt.ads (Optimize_Size): New flag - - * s-conca2.ads, s-conca2.adb, s-conca3.adb, s-conca3.ads, - s-conca4.adb, s-conca4.ads, s-conca5.adb, s-conca5.ads, s-conca6.adb, - s-conca6.ads, s-conca7.ads, s-conca7.adb, s-conca8.adb, s-conca8.ads, - s-conca9.adb, s-conca9.ads: New file. - -2009-04-16 Robert Dewar - - * exp_ch6.adb: Add comments - - * rtsfind.ads: Add entries for s-conca? routines - -2009-04-16 Arnaud Charlet - - * gcc-interface/Make-lang.in: Update dependencies. - - * gcc-interface/Makefile.in: Update translation for vms. - -2009-04-16 Ed Schonberg - - * sem_ch12.adb (Map_Formal_Package_Entities): renamed from Map_Entities - and made global, to be used when installing parents of a child - instance, to provide mappings for entities declared in formal packages - of ancestor units. Now called from Install_Formal_Packages. - -2009-04-16 Doug Rupp - - * s-taskin.adb (Initialize_ATCB): Initialize Debug_Events with others - notation for clarity. - - * s-taprop-vxworks.adb, s-taprop-tru64.adb, s-taprop-vms.adb, - s-taprop-mingw.adb, s-taprop-linux.adb, s-taprop-solaris.adb, - s-taprop-irix.adb, s-taprop-hpux-dce.adb, s-taprop-posix.adb - (Initialize): Initialize Known_Tasks with Environment task. - - * s-taskin.ads (Task_States): Move new states to end for the sake of - GDB compatibility. - - * s-tassta.adb (Task_Wrapper): Fix comment about Enter_Task. - -2009-04-16 Ed Schonberg - - * exp_ch9.adb (Expand_N_Protected_Type_Declaration): If a protected - operation has an inline pragma, propagate the flag to the internal - unprotected subprogram. - -2009-04-16 Doug Rupp - - * s-taprop-vxworks.adb, s-taprop-tru64.adb, s-taprop-mingw.adb, - s-taprop-linux.adb, s-taprop-solaris.adb, s-taprop-irix.adb, - s-taprop-hpux-dce.adb, s-taprop-posix.adb - (Enter_Task): Move Known_Tasks initialization to s-tassta.adb - - * s-taprop-vms.adb (Enter_Task): Likewise. - (Initialize): Import DBEXT, Debug_Register. Register DBGEXT callback. - - * s-tassta.adb (Activate_Tasks): After task creation set state to - Activating, vice Runnable. Initialize Known_Tasks, moved here from - s-taprop.adb (Enter_Task). Set Debug_Event_Activating for debugger. - Set state to Runnable after above. - (Task_Wrapper): Set Debug_Event_Run. In exception block set - Debug_Event_Terminated. - - * s-taskin.ads (Task_States): Add new states Activiting and - Activator_Delay_Sleep. - (Bit_Array, Debug_Event_Array): New types. - (Global_Task_Debug_Event_Set: New flag. - (Common_ATCB): New field Debug_Events. - - * s-taskin.adb (Initialize_ATCB): Initialize Debug_Events. - - * s-tasren.adb (Timed_Selective_Wait): Set Activator_Delay_Sleep vice - Activator_Sleep. - - * s-tasini.adb (Locked_Abort_To_Level): Add case alternatives for when - Activating and when Acceptor_Delay_Sleep. - - * s-tasdeb.ads: Add constants for Debug_Events. - (Debug_Event_Kind_Type): New subtype. - (Signal_Debug_Event): New subprogram. - - * s-tasdeb.adb (Signal_Debug_Event): New null subprogram. - -2009-04-16 Thomas Quinot - - * sem_elim.adb: Minor reformatting - - * freeze.adb: Minor reformatting - - * exp_ch4.adb: Minor reformatting - -2009-04-16 Emmanuel Briot - - * prj-nmsc.adb (Path_Name_Of): fix memory leak - -2009-04-16 Robert Dewar - - * sinfo.ads (Backwards_OK, Forwards_OK): Clarify documentation - -2009-04-16 Vincent Celier - - * fmap.adb (Initialize): Show the current line when the mapping file - is detected as "incorrectly formatted". - -2009-04-16 Robert Dewar - - * sem_ch12.adb: Minor reformatting - - * sem_ch5.adb: Minor comment addition - - * sem_util.adb: Minor reformatting - - * sinput-p.adb: Minor reformatting - Add missing pragma Warnings (On) - -2009-04-16 Ed Falis - - * s-vxwext-kernel.adb: (ERROR): deleted unused constant - -2009-04-16 Vincent Celier - - * ali-util.adb: Minor comment spelling error fix - -2009-04-16 Eric Botcazou - - * exp_ch5.adb (Expand_Assign_Array): For the GCC back-end, do not - generate an assignment loop in case of overlap. - -2009-04-16 Olivier Hainque - - * gnat_ugn.texi (gnatmem description): Make it explicit that - gnatmem is designed to work in association with static runtime - library only. - -2009-04-16 Thomas Quinot - - * sem_type.adb: Minor reformatting - -2009-04-16 Hristian Kirtchev - - * s-osprim-darwin.adb, s-osprim-posix.adb (Clock): Add comment - concerning return codes of gettimeofday and return value check. - -2009-04-16 Ed Falis - - * s-vxwext-kernel.ads (Int_Lock, Int_Unlock): set to convention C so - body can be renaming of imported routines. - -2009-04-16 Vasiliy Fofanov - - * s-asthan-vms-alpha.adb: Disable warnings on alignment in a more - targeted fashion. - -2009-04-15 Hristian Kirtchev - - * exp_ch9.adb: Comment improvements. - (Build_Entry_Family_Name): Add parentheses around the index of a entry - family member. - -2009-04-15 Bob Duff - - * sem_warn.adb (Check_Infinite_Loop_Warning): Catch cases like - "while X /= null loop" where X is unchanged inside the loop. We were - not warning in this case, because of the pointers -- we feared that the - loop variable could be updated via a pointer, if there are any pointers - around the place. But that is impossible in this case. - - * sem_util.adb (May_Be_Lvalue): This routine was overly pessimistic in - the case of dereferences. In X.all, X cannot be an l-value. We now - catch that case (and implicit dereferences, too). - -2009-04-15 Vincent Celier - - * sinput-p.ads, sinput-p.adb (Clear_Source_File_Table): New procedure - -2009-04-15 Ed Schonberg - - * sem_ch12.adb (Is_Actual_Of_Previous_Formal): Make fully recursive. - From code reading. - (Analyze_Package_Instantiation): If generic unit in child instance is - the same as generic unit in parent instance, look for an outer homonym - to locate the desired generic. - -2009-04-15 Bob Duff - - * sem_ch5.adb (Analyze_Loop_Statement): Don't check for infinite loop - warnings unless the loop comes from source, because checking generated - loops is a waste of time, and makes it harder to debug - Check_Infinite_Loop_Warning. - - * sem_warn.adb (Check_Infinite_Loop_Warning): If the local variable - tested in the while loop is a renaming, do not warn. Otherwise, we get - false alarms, because it's usually renaming something that we can't - deal with (an indexed component, a global variable, ...). - - * gnat_rm.texi: Fix typo - -2009-04-15 Thomas Quinot - - * sem_ch6.adb: Minor reformatting - -2009-04-15 Hristian Kirtchev - - * exp_ch7.adb (Expand_Ctrl_Function_Call): Check for the case where the - immediate parent of the controlled function call is a component - association. - -2009-04-15 Ed Schonberg - - * sem_ch8.adb (Use_One_Type): If the type is tagged, indicate that the - corresponding class-wide type is also in use. - -2009-04-15 Thomas Quinot - - * frontend.adb: Minor comment fix - -2009-04-15 Robert Dewar - - * gnatchop.adb (BOM_Length): New global variable - (Write_Unit): Add new parameter Write_BOM - (Write_Chopped_Files): Check for BOM and set Write_BOM for call - to Write_Unit - - * gnat_ugn.texi: Add note on propagation of BOM by gnatchop - -2009-04-15 Geert Bosch - - * system-mingw-x86_64.ads, system-darwin-x86_64.ads - (Backend_Overflow_Checks): Set to True. - -2009-04-15 Gary Dismukes - - * par-ch3.adb (P_Type_Declaration): Issue an error if the synchronized - keyword is given in a record extension. - -2009-04-15 Hristian Kirtchev - - * exp_ch7.adb (Expand_Ctrl_Function_Call): Procede with the expansion - of a controlled function call in the context of a record aggregate. - This does not apply to array aggregates since the call will be expanded - into assignments. - -2009-04-15 Ed Falis - - * s-osinte-vxworks-kernel.adb, s-osinte-vxworks.adb, - s-osinte-vxworks.ads s-vxwext.ads, s-vxwext-kernel.adb, - s-vxwext-kernel.ads, s-vxwext-rtp.ads, s-vxwext-rtp.adb: Reorganize - s-osinte-vxworks* and s-vxwext*. - -2009-04-15 Arnaud Charlet - - * gcc-interface/Make-lang.in: Update dependencies. - - * gcc-interface/Makefile.in: Reorganization of s-osinte-vxworks* - and s-vxwext*. - -2009-04-15 Robert Dewar - - * sem_ch13.adb (Unchecked_Conversions): Store source location instead - of node for location for warning messages. - - * gnatchop.adb: Minor reformatting - -2009-04-15 Ed Schonberg - - * exp_ch6.adb: additional guard for renaming declarations for in - parameters of an array type. - -2009-04-15 Robert Dewar - - * sem_eval.adb (Get_Static_Length): Go to origin node for array bounds - in case they were rewritten by expander (Force_Evaluation). - - * targparm.adb (Get_Target_Parameters): Correct check for - Suppress_Exception_Locations. - -2009-04-15 Ed Schonberg - - * exp_ch6.adb (Expand_Inlined_Call): If an in-parameter in a call to be - inlined is of an array type that is not bit-packed, use a renaming - declaration to capture its value, rather than a constant declaration. - -2009-04-15 Robert Dewar - - * rtsfind.adb: Minor reformatting. - -2009-04-15 Emmanuel Briot - - * prj-part.adb, prj-tree.adb, prj-tree.ads (Restore_And_Free): renames - Restore, and free the saved context. - -2009-04-15 Gary Dismukes - - * sem_ch3.adb (Analyze_Private_Extension_Declaration): Move error check - for illegal private extension from a synchronized interface parent in - front of check for illegal limited extension so that limited extension - from a synchronized interface will be rejected. - (Check_Ifaces): Check that a private extension that has a synchronized - interface as a progenitor must be explicitly declared synchronized. - Also check that a record extension cannot derive from a synchronized - interface. - -2009-04-15 Pascal Obry - - * adaint.h (__gnat_unlink): Add spec. - (__gnat_rename): Likewise. - -2009-04-15 Vincent Celier - - * prj-nmsc.adb: Minor spelling error corrections in error messages - -2009-04-15 Robert Dewar - - * sinfo.ads: Minor comment update - - * opt.ads: Minor comment updates - - * checks.adb (Enable_Overflow_Check): Do not set Do_Overflow_Check for - modular type. - -2009-04-15 Ed Schonberg - - * exp_disp.ads, exp_disp.adb (Register_Primitive): Is now a function - that generates the code needed to update a dispatch table when a - primitive operation is declared with a subprogram body without previous - spec. Insertion of the generated code is responsibility of the caller. - (Make_DT): When building static tables, append the code created by - Register_Primitive to update a secondary table after it has been - constructed. - - * exp_ch3.adb, exp_ch6.adb: use new version of Register_Primitive. - - * sem_disp.adb (Check_Dispatching_Operation): Call Register_Primitive - on an overriding operation that implements an interface operation only - if not building static dispatch tables. - -2009-04-15 Hristian Kirtchev - - * a-caldel-vms.adb (To_Duration): Declare a "safe" end of time which - does not cause overflow when converted to Duration. Use the safe value - as the maximum allowable time delay.. - -2009-04-15 Jerome Lambourg - - * g-comlin.adb (Set_Command_Line): When adding a switch with attached - parameter, specify that the delimiter is NUL, otherwise "-j2" will be - translated to "-j 2". - -2009-04-15 Bob Duff - - * rtsfind.adb (Maybe_Add_With): Split out procedure to add implicit - with_clauses, to avoid code duplication. Change this processing so we - always add a with_clause on the main unit if needed. - -2009-04-15 Pascal Obry - - Add support for Win32 native encoding for delete/rename routines. - - * adaint.c (__gnat_unlink): New routine. - (__gnat_rename): New routine. - Simple wrapper routines used to convert to proper encoding on - Windows. - - * s-os_lib.adb: Use __gnat_unlink and __gnat_rename instead of direct - call to the C library. - - * g-sercom-mingw.adb, s-win32.ads: Update Win32 binding. - -2009-04-15 Robert Dewar - - * s-tassta.adb: Minor reformatting - -2009-04-15 Robert Dewar - - * frontend.adb (Frontend): Set proper default for - Warn_On_Non_Local_Exception. - - * opt.ads (Exception_Handler_Encountered): New flag - (No_Warn_On_Non_Local_Exception): New flag - - * par-ch11.adb (P_Exception_Handler): Set Exception_Handler_Encountered - - * sem_warn.adb (Set_Warning_Switch): Set No_Warn_On_Non_Local_Exception - (Set_Dot_Warning_Switch): Set No_Warn_On_Non_Local_Exception - -2009-04-15 Cyrille Comar - - * s-tassta.adb, a-exextr.adb, a-elchha.adb - (Ada.Exception.Last_Chance_Handler): Do not print unhandled exception - message when exception traces are active since it would generate - redundant information. - (Exception_Traces.Notify_Exception): put message output by a critical - section to avoid unsynchronized output. - (Trace_Unhandled_Exception_In_Task): put message output by a critical - section to avoid unsynchronized output. - -2009-04-15 Emmanuel Briot - - * g-comlin.adb, prj-tree.adb, prj-tree.ads, prj.adb, prj.ads - (Free): New subprogram. - -2009-04-15 Hristian Kirtchev - - * a-calend.adb: Add new constant Nanos_In_Four_Years. - (Formatting_Operations.Time_Of): Change the way four year chunks of - nanoseconds are added to the intermediate result. - -2009-04-15 Nicolas Setton - - * sysdep.c: Add __APPLE__ in the list of systems where get_immediate - does not need to wait for a carriage return. - -2009-04-15 Tristan Gingold - - * bindgen.adb: Do not generate adafinal if No_Finalization restriction - is set. - -2009-04-15 Ed Schonberg - - * freeze.adb (Freeze_Entity): improve error message for improper use of - incomplete types. - Diagnose additional illegal uses of incomplete types in formal parts. - appearing in formal parts. - - * sem_ch6.adb (Process_Formals, Analyze_Return_Type): ditto. - -2009-04-15 Robert Dewar - - * exp_ch4.adb (Expand_N_Allocator): Install test for object too large. - -2009-04-15 Nicolas Roche - - * adaint.c: Add function __gnat_lwp_self that retrieves the LWP of the - current thread. - - * s-osinte-linux.ads: Import the __gnat_lwp_self function as lwp_self - - * s-taprop-linux.adb (Enter_Task): Store the LWP in the TCB - -2009-04-15 Ed Schonberg - - * sem_ch4.adb: improve error message on exponentiation. - -2009-04-15 Hristian Kirtchev - - * a-calend.adb: Move constant Epoch_Offset from package - Conversion_Operations to top level. - (Delay_Operations.To_Duration): Define a constant which represents - "end of time" and use it as a guard against very distant delay dates. - Protect the code against overflow when performing the origin shift to - Unix time. - -2009-04-15 Robert Dewar - - * sem_prag.adb: Minor reformatting. - - * sem_type.adb: Minor reformatting - -2009-04-15 Javier Miranda - - * sem_ch6.adb (Analyze_Abstract_Subprogram_Declaration): Add missing - support to check eliminated subprograms. - - * sem_elim.ads (Eliminate_Error_Msg): Update documentation. - - * sem_elim.adb (Set_Eliminated): Add support for elimination of - dispatching subprograms. - - * exp_disp.adb (Make_DT): Minor code cleanup when freezing primitive - operations. Initialize with "null" the slots of eliminated dispaching - primitives. - (Write_DT): Add output for eliminated primitives. - - * sem_disp.adb (Check_Dispatching_Call): Check eliminated primitives. - -2009-04-15 Ed Schonberg - - * sem_ch8.adb (Use_One_Type): If both clauses appear on the same unit, - the second is redundant, regardless of scopes. - -2009-04-15 Vincent Celier - - * prj-nmsc.adb (Get_Directories): Check for sources before checking - the object directory as when there are no sources, they may not be any - object directory. - - * make.adb (Gnatmake): Do not attempt to get the path name of the exec - directory, when there are no exec directory. - -2009-04-15 Ed Schonberg - - * sem_type.adb (Remove_Conversions): In order to resolve spurious - ambiguities, refine removal of universal interpretations from complex - expressions with literal arguments, when some numeric operators have - been declared abstract. - -2009-04-15 Ed Falis - - * init.c: Map SIGSEGV to Storage_Error for all targets for uniformity - and backward compatibility for targets using probing for stack overflow - -2009-04-15 Ed Schonberg - - * sem_prag.adb (Analyze_Pragma, case 'Obsolescent): Pragma is legal - after any declaration, including renaming declarations. - -2009-04-15 Arnaud Charlet - - * gcc-interface/Make-lang.in: Update dependencies. - - * gcc-interface/Makefile.in: Fix VxWorks target pairs. - Update xenomai target pairs. - -2009-04-15 Javier Miranda - - * exp_ch4.adb (Expand_N_Allocator): Code cleanup. - - * sem_ch6.adb (Check_Anonymous_Return): Add missing support for - functions returning anonymous access to class-wide limited types. Mark - also the containing scope as a task master. - - * sem_ch8.adb (Restore_Scope_Stack): Add missing management for - limited-withed packages. Required to restore their visibility after - processing packages associated with implicit with-clauses. - - * exp_ch3.adb (Build_Class_Wide_Master): Avoid marking masters - associated with return statements because this work is now done by - Check_Anonymous_Return. - (Build_Master): Code cleanup. - -2009-04-15 Thomas Quinot - - * sem_warn.ads: Minor reformatting - -2009-04-15 Ed Schonberg - - * sem_ch3.adb: better error message for illegal interfaces - - * sem_ch6.adb (Possible_Freeze): Delay freezing a subprogram if a - formal is an incomplete type from a limited_with clause. - -2009-04-15 Vincent Celier - - * prj-nmsc.adb (Locate_Directory): New Boolean parameter - Externally_Built indicating if the project is externally built. If it - is, and --subdirs is specified, but the subdir does not exist, look - for the specified directory, without the subdir. - -2009-04-15 Gary Dismukes - - * a-tasatt.adb: Fix typo, plus minor reformatting - - * sem_ch3.ads: Add missing hyphen ("class wide" => "class-wide"). - - * sem_ch10.adb: Add missing hyphen ("use visible" => "use-visible"). - -2009-04-15 Ed Schonberg - - * sem_ch3.adb (Analyze_Private_Extension_Declaration): Verify that a - private extension whose parent is a synchronized interface carries an - explicit synchronized keyword. - -2009-04-15 Thomas Quinot - - * exp_smem.adb (Make_Shared_Var_Procs): For a protected type, - instantiate generic shared object package with the corresponding - record type. - -2009-04-15 Arnaud Charlet - - * system-linux-sparc.ads: Remove obsolete entries. - -2009-04-15 Thomas Quinot - - * s-tasuti.ads: Add ??? comment - -2009-04-15 Ed Schonberg - - * sem_ch3.adb (Analyze_Type_Declaration): Create freeze node for access - type even if the designated type comes from a limited_with clause, to - ensure that the symbol for the finalization list of the access type is - created. - -2009-04-10 Robert Dewar - - * sem_warn.ads, sem_warn.adb (Check_Low_Bound_Tested): Catch more cases - for warning suppression. - -2009-04-10 Ed Schonberg - - * sem_ch8.adb (Use_One_Type): If the two use_type clauses are - identical, there is no redudancy to check. - -2009-04-10 Gary Dismukes - - * exp_ch5.adb (Expand_N_Extended_Return_Statement): Delete redundant - calls initializing SS_Allocator (which is initialized in following - code). - (Expand_Simple_Function_Return): Add comment about False value for - Comes_From_Source on secondary-stack allocator. - - * exp_ch9.adb (Build_Entry_Family_Name): Add comment. - (Build_Entry_Name): Add comment. - -2009-04-10 Robert Dewar - - * einfo.ads, einfo.adb (Low_Bound_Tested): New name for Low_Bound_Known - - * sem_prag.adb (Analyze_Pragma, case Check): Remove check for lower - bound tested, since this is now done more generally in Sem_Res. - - * sem_res.adb (Resolve_Comparison_Op): Add call to - Check_Lower_Bound_Tested. - (Resolve_Equality_Op): Add call to Check_Lower_Bound_Tested - - * sem_warn.ads, sem_warn.adb (Check_Low_Bound_Tested): New procedure - (Low_Bound_Tested): New name for Low_Bound_Known flag - - * exp_ch5.adb: Minor reformatting - - * exp_ch4.adb: - Add comments on copying the Comes_From_Source flag for allocators - - * sinfo.ads: - Add comments on copying the Comes_From_Source flag for allocators - - * exp_ch6.adb (Make_Build_In_Place_Call_In_Allocator): Copy - Comes_From_Source flag from old allocator to new one. - -2009-04-10 Ed Schonberg - - * sem_ch6.ads: Address missing documentation query - -2009-04-10 Vincent Celier - - * prj-attr.adb: - Add new Linker attributes Max_Command_Line_Length, Response_File_Format - and Response_File_Switches. - - * prj-nmsc.adb (Process_Linker): Process new attributes - Max_Command_Line_Length, Response_File_Format and - Response_File_Switches. - - * prj.ads (Response_File_Format): New enumeration type - (Project_Configuration): New componants Max_Command_Line_Length, - Resp_File_Format and Resp_File_Options. - - * snames.ads-tmpl: Add new standard names for linking response files - for gprbuild: GNU, None, Object_List, Option_List, - Max_Command_Line_Length, Response_File_Format and - Response_File_Switches. - -2009-04-10 Geert Bosch - - * system-aix.ads, system-darwin-ppc.ads, system-darwin-x86.ads, - system-freebsd-x86.ads, system-hpux.ads, system-hpux-ia64.ads, - system-irix-n32.ads, system-irix-o32.ads, system-linux-alpha.ads, - system-linux-hppa.ads, system-linux-ia64.ads, system-linux-ppc.ads, - system-linux-s390.ads, system-linux-s390x.ads, system-linux-sh4.ads, - system-linux-sparc.ads, system-linux-x86_64.ads, system-linux-x86.ads, - system-mingw.ads, system-solaris-sparc.ads, system-solaris-sparcv9.ads, - system-solaris-x86.ads, system-tru64.ads, system-vms_64.ads, - system-vms.ads, system-vms-ia64.ads, system-vms-zcx.ads, - system-vxworks-arm.ads, system-vxworks-m68k.ads, - system-vxworks-mips.ads, system-vxworks-ppc.ads, - system-vxworks-sparcv9.ads, system-vxworks-x86.ads - (Backend_Overflow_Checks): Set to True. - -2009-04-10 Thomas Quinot - - * exp_attr.adb: Minor reformatting - -2009-04-10 Ed Schonberg - - * sem_prag.adb (Check_Precondition_Postcondition): Within a generic, - analyze the expression for a postcondition, even if the compiler mode - is Generate_Code. - -2009-04-10 Robert Dewar - - * sem_aux.adb: Minor reformatting - -2009-04-10 Ed Falis - - * init.c: Change VxWorks 6 stack overflow checking for kernel apps. - - * system-vxworks-ppc.ads, system-vxworks-x86.ads: Update header. - -2009-04-10 Thomas Quinot - - * sem_ch6.ads (Check_Subtype_Conformant): Add ??? comment for - undocumented formal. - Minor reformatting - - * a-direio.ads: Fix typo in comment - - * sem_ch3.adb, g-dirope.adb, sem_type.adb, sem_ch12.adb, sem_case.adb, - errout.adb, sem_ch4.adb, sem_ch11.adb, exp_dist.adb, sem_ch13.adb: - Use uniform phrasing for comment at start of subprogram body. - - * xsnamest.adb: Add note to explain why we use specific names for the - newly generated files instead of generating snames.{ads,adb,h} directly - -2009-04-10 Sergey Rybin - - * vms_data.ads: - Add qualifier for new gnatstub option '--no-exception' - - * gnat_ugn.texi: - Add the description of the new gnatstub option '--no-exception' - -2009-04-10 Robert Dewar - - * rtsfind.adb: Minor reformatting - -2009-04-10 Thomas Quinot - - * sem_disp.adb: Minor reformatting. - Add comment pointing to RM clause for the case of warning against a - (failed) attempt at declaring a primitive operation elsewhere than in a - package spec. - -2009-04-10 Ed Schonberg - - * sem_ch12.adb (Denotes_Formal_Package): Check whether the package is - an actual for a previous formal package of the current instance. - -2009-04-10 Bob Duff - - * rtsfind.adb (RTE): Put implicit with_clauses on whatever unit needs - them first, rather than on the extended main unit. - -2009-04-10 Ed Schonberg - - * sem_ch6.adb (Check_Discriminant_Conformance): If discriminant - specification of full view carries a null exclusion indicator, create - an itype for it, to check for conformance with partial view. - -2009-04-10 Bob Duff - - * rtsfind.ads: Minor code change: make RE_Unit_Table constant. - - * rtsfind.adb: Minor comment changes, and remove useless code. - - * sinfo.ads: Add ??? comment. - -2009-04-10 Vincent Celier - - * vms_data.ads: Add missing GNAT SYNC VMS qualifiers -main= and -U - -2009-04-10 Ed Schonberg - - * exp_attr.adb (Expand_N_Attribute_Reference, case 'Tag): If the tagged - type is a synchronized type, retrieve tag information from the - corresponding record, which has the dispatch table link. - -2009-04-10 Jerome Lambourg - - * g-comlin.adb (Group_Analysis): Take care of switches that might be - decomposed afterwards, but are present as-is in the command line - configuration, and thus should be kept as-is. - -2009-04-10 Robert Dewar - - * gnat_rm.texi: Document that postconditions are tested on implicit - returns. - - * sem_aux.adb: Minor reformatting - -2009-04-10 Gary Dismukes - - * itypes.adb (Create_Null_Excluding_Itype): Apply Base_Type when - setting Etype. - - * par-ch3.adb (P_Access_Type_Definition): Set new attribute - Null_Exclusion_In_Return_Present when an access-to-function type has a - result type with an explicit not null. - - * sem_ch3.adb (Access_Subprogram_Definition): If a null exclusion is - given on the result type, then create a null-excluding itype for the - function. - - * sem_ch6.adb (Analyze_Return_Type): Create a null-excluding itype in - the case where a null exclusion is imposed on a named access type. - (Analyze_Subprogram_Specification): Push and pop the scope of the - function around the call to Analyze_Return_Type in the case of no - formals, for consistency with handling when formals are present - (Process_Formals does this). Ensures that any itype created for the - return type will be associated with the proper scope. - - * sem_ch12.adb (Analyze_Generic_Subprogram_Declaration): If a null - exclusion is given on a generic function's result type, then create a - null-excluding itype for the generic function. - (Instantiate_Object): Set Null_Exclusion_Present of a constant created - for an actual for a formal in object according to the setting on the - formal. Ensures null exclusion checks are done when the association is - elaborated. - - * sinfo.ads: Add new flag Null_Exclusion_In_Return_Present on - N_Access_Function_Definition. - - * sinfo.adb: Add Get_ and Set_ operations for - Null_Exclusion_In_Return_Present. - -2009-04-10 Bob Duff - - * exp_ch5.adb, exp_ch6.adb, sem_ch6.adb: Move the code that creates a - call to the _Postconditions procedure in the case of implicit returns - from analysis to expansion. This eliminates some duplicated code. Use - the Postcondition_Proc to find the identity of this procedure during - expansion. - -2009-04-10 Robert Dewar - - * sem_ch6.adb: Minor code clean up. - - * einfo.ads, sem_attr.adb: Minor comment fixes. - -2009-04-10 Robert Dewar - - * sem_ch8.adb: Minor reformatting - -2009-04-10 Robert Dewar - - * einfo.ads, einfo.adb (Postcondition_Proc): New attribute for - procedures. - - * sem_ch6.adb: Minor code clean up. - -2009-04-10 Robert Dewar - - * mlib-tgt-specific-xi.adb: Minor reformatting - -2009-04-10 Bob Duff - - * einfo.ads: Minor comment fixes - -2009-04-10 Vincent Celier - - * snames.ads-tmpl: Remove names that are no longer used in the - Project Manager. - Mark specifically those that are used only in gprbuild - -2009-04-10 Eric Botcazou - - * init.c: Adjust EH support code on Alpha/Tru64. - -2009-04-10 Bob Duff - - * sem_ch6.adb (Process_PPCs): Add a call to the _Postconditions - procedure on every path that could return implicitly (not via a return - statement) from a procedure. - -2009-04-10 Ed Schonberg - - * exp_ch9.adb (Build_Master_Entity): An extended return statement is a - valid scope for a task declarations and therefore for a master id. - -2009-04-10 Robert Dewar - - * sem_aux.adb: Minor reformatting - -2009-04-10 Vincent Celier - - * scn.adb (Obsolescent_Check_Flag): New Boolean flag, initialized to - True. - (Obsolescent_Check): Do nothing if Obsolescent_Check_Flag is False - (Set_Obsolescent_Check): New procedure to change the value of - Obsolescent_Check_Flag. - - * scn.ads (Set_Obsolescent_Check): New procedure to control - Obsolescent_Check. - - * sinput-l.adb (Load_File): Do not check for pragma Restrictions on - obsolescent features while preprocessing. - -2009-04-10 Thomas Quinot - - * xsnamest.adb: Use XUtil to have uniform line endings (UNIX style) in - generated files on all platforms. - -2009-04-10 Robert Dewar - - * sem_aux.adb: Minor reformatting - -2009-04-10 Ed Schonberg - - * sem_ch3.adb (Access_Definition): Handle properly the case of a - protected function with formals that returns an anonymous access type. - -2009-04-10 Thomas Quinot - - * sem_disp.adb: Minor reformatting - -2009-04-10 Vasiliy Fofanov - - * seh_init.c: Do not use the 32-bit specific implementation of - __gnat_install_SEH_handler on 64-bit Windows target (64-bit specific - version TBD). - -2009-04-10 Jose Ruiz - - * mlib-tgt-specific-xi.adb (Get_Target_Prefix): Target_Name may contain - a '/' at the end so we better use the complete target name to determine - whether it is a PowerPC 55xx target. - -2009-04-10 Thomas Quinot - - * sem_eval.adb: Minor reformatting - -2009-04-10 Thomas Quinot - - * snames.h, snames.ads, snames.adb: Remove files, now generated from - templates. - - * snames.h-tmpl, snames.ads-tmpl, snames.adb-tmpl: Templates for the - above. - - * xsnamest.adb: New file. - - * gcc-interface/Make-lang.in: New target for automated generation of - snames.ads, snames.adb and snames.h - -2009-04-10 Tristan Gingold - - * gcc-interface/Makefile.in, gcc-interface/utils.c: Include "rtl.h" to - avoid compile time warnings. - Do not add gcc/config in include search list while compiling the RTS. - Pragma Thread_Local_Storage is available on any target. - -2009-04-10 Bob Duff - - * sem.ads, par.adb, sem_ch6.adb, sem_ch8.adb: Minor comment fixes. - -2009-04-10 Tristan Gingold - - * init.c: Install signal handler on Darwin. - -2009-04-10 Robert Dewar - - * sem_prag.adb: Minor reformatting - - * exp_util.adb (Make_Non_Empty_Check): New function - (Silly_Boolean_Array_Not_Test): Add call to Make_Non_Empty_Check - (Silly_Boolean_Array_Xor_Test): Use Make_Non_Empty_Check - -2009-04-10 Arnaud Charlet - - * make.adb, gnatlink.adb: Rename JGNAT toolchain. - -2009-04-10 Jose Ruiz - - * mlib-tgt-specific-xi.adb (Get_Target_Prefix): Insert the appropriate - tool prefix for AVR and PowerPC 55xx targets. - -2009-04-10 Robert Dewar - - * sem_warn.adb (Within_Postcondition): New function - (Check_Unset_Reference): Use Within_Postcondition to stop bad warning - -2009-04-10 Robert Dewar - - * sem_warn.adb: Minor reformatting - - * make.adb: Minor reformatting. - -2009-04-10 Gary Dismukes - - * exp_ch7.adb (Find_Final_List): When creating a finalization-chain - entity and the scope is a subprogram, retrieve the Sloc of the - subprogram's body rather than using the sloc of the spec, for better - line-stepping behavior in gdb. - (Wrap_Transient_Declaration): For the Sloc of nodes created with a list - controller, use the Sloc of the first declaration of the containing list - rather than that of the node that triggered creation of the list - controller. - -2009-04-10 Vincent Celier - - * prj-nmsc.adb (Check_Naming_Schemes): Initialize local variable Casing - to avoid gcc warning. - -2009-04-10 Robert Dewar - - * g-comlin.adb: Add ??? comment - -2009-04-10 Ed Schonberg - - * sem_warn.adb (Check_Unused_Withs): Do not emit message about - unreferenced entities for a package with no visible declarations. - -2009-04-10 Robert Dewar - - * exp_ch9.adb: Minor reformatting - -2009-04-10 Thomas Quinot - - * sem_prag.adb: Minor reformatting - -2009-04-10 Vincent Celier - - * prj-nmsc.adb: - (Check_Library_Attributes): For a project qualified as a library project - that is not a library project, indicate in the error message which - attributes are missing (Library_Dir and/or Library_Name). - -2009-04-10 Bob Duff - - * exp_ch5.adb, exp_ch9.adb: Avoid use of No_Position in Sloc of - generated nodes, because it might confuse various circuits in the FE. - -2009-04-10 Ed Schonberg - - * sem_prag.adb (Analyze_Pragma, case Task_Name): Do not expand argument - of pragma. It will be recopied and analyzed when used in call to - Create_Task. - - * sem_res.adb (Resolve_Call): Clarify use of secondary stack within - initialization operations and recognize use of it in procedure calls - within init_procs. - - * exp_ch9.adb (Make_Task_Create_Call): Copy full tree of Task_Name - argument, because it may have side-effects. - - * exp_ch2.adb: Remove obsolete comments on default functions - -2009-04-10 Jose Ruiz - - * adaint.c (RTX section): Do for RTX the same thing as we do for - Windows (include ctype.h and define a fallback ISALPHA if IN_RTS). - -2009-04-10 Robert Dewar - - * sem_aux.ads, sem_aux.adb (Nearest_Current_Scope): New function. - - * sem_res.adb (Resolve_Call): Fix test for - Suppress_Value_Tracking_On_Call (was wrong for the case of a call from - a non-dynamic scope). - -2009-04-10 Robert Dewar - - * make.adb: Add comment. - Minor reformatting - -2009-04-10 Nicolas Setton - - * s-osprim-darwin.adb: New file. - - * s-osinte-darwin.adb, s-osinte-darwin.ads: Fix binding to timespec. - -2009-04-10 Thomas Quinot - - * g-socket.ads: Add comment clarifying alignment requirement for Fd_Set - -2009-04-09 Nick Clifton - - * adadecode.h: Change copyright header to refer to version - 3 of the GNU General Public License with version 3.1 of the - GCC Runtime Library Exception and to point readers at the - COPYING3 and COPYING3.RUNTIME files and the FSF's license web - page. - * 9drpc.adb: Likewise. - * a-assert.adb: Likewise. - * a-astaco.adb: Likewise. - * a-calari.adb: Likewise. - * a-calcon.adb: Likewise. - * a-calcon.ads: Likewise. - * a-caldel.ads: Likewise. - * a-calend-vms.adb: Likewise. - * a-calend-vms.ads: Likewise. - * a-calend.adb: Likewise. - * a-calend.ads: Likewise. - * a-calfor.adb: Likewise. - * a-catizo.adb: Likewise. - * a-cdlili.adb: Likewise. - * a-cdlili.ads: Likewise. - * a-cgaaso.adb: Likewise. - * a-cgaaso.ads: Likewise. - * a-cgarso.adb: Likewise. - * a-cgcaso.adb: Likewise. - * a-chacon.adb: Likewise. - * a-chacon.ads: Likewise. - * a-chahan.adb: Likewise. - * a-chahan.ads: Likewise. - * a-chlat9.ads: Likewise. - * a-chtgke.adb: Likewise. - * a-chtgke.ads: Likewise. - * a-chtgop.adb: Likewise. - * a-chtgop.ads: Likewise. - * a-chzla1.ads: Likewise. - * a-chzla9.ads: Likewise. - * a-cidlli.adb: Likewise. - * a-cidlli.ads: Likewise. - * a-cihama.adb: Likewise. - * a-cihama.ads: Likewise. - * a-cihase.adb: Likewise. - * a-cihase.ads: Likewise. - * a-ciorma.adb: Likewise. - * a-ciorma.ads: Likewise. - * a-ciormu.adb: Likewise. - * a-ciormu.ads: Likewise. - * a-ciorse.adb: Likewise. - * a-ciorse.ads: Likewise. - * a-clrefi.adb: Likewise. - * a-clrefi.ads: Likewise. - * a-cohama.adb: Likewise. - * a-cohama.ads: Likewise. - * a-cohase.adb: Likewise. - * a-cohase.ads: Likewise. - * a-cohata.ads: Likewise. - * a-coinve.adb: Likewise. - * a-coinve.ads: Likewise. - * a-colien.adb: Likewise. - * a-colien.ads: Likewise. - * a-colire.adb: Likewise. - * a-colire.ads: Likewise. - * a-comlin.adb: Likewise. - * a-comlin.ads: Likewise. - * a-convec.adb: Likewise. - * a-convec.ads: Likewise. - * a-coorma.adb: Likewise. - * a-coorma.ads: Likewise. - * a-coormu.adb: Likewise. - * a-coormu.ads: Likewise. - * a-coorse.adb: Likewise. - * a-coorse.ads: Likewise. - * a-coprnu.adb: Likewise. - * a-coprnu.ads: Likewise. - * a-crbltr.ads: Likewise. - * a-crbtgk.adb: Likewise. - * a-crbtgk.ads: Likewise. - * a-crbtgo.adb: Likewise. - * a-crbtgo.ads: Likewise. - * a-crdlli.adb: Likewise. - * a-crdlli.ads: Likewise. - * a-cwila1.ads: Likewise. - * a-cwila9.ads: Likewise. - * a-decima.adb: Likewise. - * a-decima.ads: Likewise. - * a-diocst.adb: Likewise. - * a-diocst.ads: Likewise. - * a-direct.adb: Likewise. - * a-direct.ads: Likewise. - * a-direio.adb: Likewise. - * a-direio.ads: Likewise. - * a-dirval-mingw.adb: Likewise. - * a-dirval-vms.adb: Likewise. - * a-dirval.adb: Likewise. - * a-dirval.ads: Likewise. - * a-dynpri.adb: Likewise. - * a-einuoc.adb: Likewise. - * a-einuoc.ads: Likewise. - * a-elchha.adb: Likewise. - * a-elchha.ads: Likewise. - * a-envvar.adb: Likewise. - * a-excach.adb: Likewise. - * a-except-2005.adb: Likewise. - * a-except-2005.ads: Likewise. - * a-except.adb: Likewise. - * a-except.ads: Likewise. - * a-excpol-abort.adb: Likewise. - * a-excpol.adb: Likewise. - * a-exctra.adb: Likewise. - * a-exctra.ads: Likewise. - * a-exetim-mingw.adb: Likewise. - * a-exetim-mingw.ads: Likewise. - * a-exexda.adb: Likewise. - * a-exexpr-gcc.adb: Likewise. - * a-exexpr.adb: Likewise. - * a-exextr.adb: Likewise. - * a-exstat.adb: Likewise. - * a-filico.adb: Likewise. - * a-filico.ads: Likewise. - * a-finali.adb: Likewise. - * a-finali.ads: Likewise. - * a-interr.ads: Likewise. - * a-intnam-aix.ads: Likewise. - * a-intnam-darwin.ads: Likewise. - * a-intnam-dummy.ads: Likewise. - * a-intnam-freebsd.ads: Likewise. - * a-intnam-hpux.ads: Likewise. - * a-intnam-irix.ads: Likewise. - * a-intnam-linux.ads: Likewise. - * a-intnam-lynxos.ads: Likewise. - * a-intnam-mingw.ads: Likewise. - * a-intnam-rtems.ads: Likewise. - * a-intnam-solaris.ads: Likewise. - * a-intnam-tru64.ads: Likewise. - * a-intnam-vms.ads: Likewise. - * a-intnam-vxworks.ads: Likewise. - * a-intsig.adb: Likewise. - * a-intsig.ads: Likewise. - * a-ngcefu.adb: Likewise. - * a-ngcoar.adb: Likewise. - * a-ngcoty.adb: Likewise. - * a-ngcoty.ads: Likewise. - * a-ngelfu.adb: Likewise. - * a-ngrear.adb: Likewise. - * a-ngrear.ads: Likewise. - * a-nudira.adb: Likewise. - * a-nudira.ads: Likewise. - * a-nuflra.adb: Likewise. - * a-nuflra.ads: Likewise. - * a-numaux-darwin.adb: Likewise. - * a-numaux-darwin.ads: Likewise. - * a-numaux-libc-x86.ads: Likewise. - * a-numaux-vxworks.ads: Likewise. - * a-numaux-x86.adb: Likewise. - * a-numaux-x86.ads: Likewise. - * a-numaux.ads: Likewise. - * a-rbtgso.adb: Likewise. - * a-rbtgso.ads: Likewise. - * a-reatim.ads: Likewise. - * a-retide.adb: Likewise. - * a-retide.ads: Likewise. - * a-rttiev.adb: Likewise. - * a-rttiev.ads: Likewise. - * a-secain.adb: Likewise. - * a-secain.ads: Likewise. - * a-sequio.adb: Likewise. - * a-sequio.ads: Likewise. - * a-shcain.adb: Likewise. - * a-shcain.ads: Likewise. - * a-siocst.adb: Likewise. - * a-siocst.ads: Likewise. - * a-slcain.adb: Likewise. - * a-slcain.ads: Likewise. - * a-ssicst.adb: Likewise. - * a-ssicst.ads: Likewise. - * a-stboha.adb: Likewise. - * a-stmaco.ads: Likewise. - * a-storio.adb: Likewise. - * a-strbou.adb: Likewise. - * a-strbou.ads: Likewise. - * a-stream.ads: Likewise. - * a-strfix.adb: Likewise. - * a-strhas.adb: Likewise. - * a-strmap.adb: Likewise. - * a-strmap.ads: Likewise. - * a-strsea.adb: Likewise. - * a-strsea.ads: Likewise. - * a-strsup.adb: Likewise. - * a-strsup.ads: Likewise. - * a-strunb.adb: Likewise. - * a-strunb.ads: Likewise. - * a-ststio.adb: Likewise. - * a-ststio.ads: Likewise. - * a-stunau.adb: Likewise. - * a-stunau.ads: Likewise. - * a-stunha.adb: Likewise. - * a-stwibo.adb: Likewise. - * a-stwibo.ads: Likewise. - * a-stwifi.adb: Likewise. - * a-stwiha.adb: Likewise. - * a-stwima.adb: Likewise. - * a-stwima.ads: Likewise. - * a-stwise.adb: Likewise. - * a-stwise.ads: Likewise. - * a-stwisu.adb: Likewise. - * a-stwisu.ads: Likewise. - * a-stwiun.adb: Likewise. - * a-stwiun.ads: Likewise. - * a-stzbou.adb: Likewise. - * a-stzbou.ads: Likewise. - * a-stzfix.adb: Likewise. - * a-stzhas.adb: Likewise. - * a-stzmap.adb: Likewise. - * a-stzmap.ads: Likewise. - * a-stzsea.adb: Likewise. - * a-stzsea.ads: Likewise. - * a-stzsup.adb: Likewise. - * a-stzsup.ads: Likewise. - * a-stzunb.adb: Likewise. - * a-stzunb.ads: Likewise. - * a-suteio.adb: Likewise. - * a-suteio.ads: Likewise. - * a-swbwha.adb: Likewise. - * a-swmwco.ads: Likewise. - * a-swunau.adb: Likewise. - * a-swunau.ads: Likewise. - * a-swuwha.adb: Likewise. - * a-swuwti.adb: Likewise. - * a-swuwti.ads: Likewise. - * a-sytaco.adb: Likewise. - * a-sytaco.ads: Likewise. - * a-szbzha.adb: Likewise. - * a-szmzco.ads: Likewise. - * a-szunau.adb: Likewise. - * a-szunau.ads: Likewise. - * a-szuzha.adb: Likewise. - * a-szuzti.adb: Likewise. - * a-szuzti.ads: Likewise. - * a-tags.adb: Likewise. - * a-tags.ads: Likewise. - * a-tasatt.ads: Likewise. - * a-taside.adb: Likewise. - * a-taside.ads: Likewise. - * a-taster.adb: Likewise. - * a-teioed.adb: Likewise. - * a-teioed.ads: Likewise. - * a-textio.adb: Likewise. - * a-textio.ads: Likewise. - * a-tiboio.adb: Likewise. - * a-ticoau.adb: Likewise. - * a-ticoau.ads: Likewise. - * a-ticoio.adb: Likewise. - * a-ticoio.ads: Likewise. - * a-tideau.adb: Likewise. - * a-tideau.ads: Likewise. - * a-tideio.adb: Likewise. - * a-tideio.ads: Likewise. - * a-tienau.adb: Likewise. - * a-tienau.ads: Likewise. - * a-tienio.adb: Likewise. - * a-tienio.ads: Likewise. - * a-tifiio.adb: Likewise. - * a-tifiio.ads: Likewise. - * a-tiflau.adb: Likewise. - * a-tiflau.ads: Likewise. - * a-tiflio.adb: Likewise. - * a-tiflio.ads: Likewise. - * a-tigeau.adb: Likewise. - * a-tigeau.ads: Likewise. - * a-tiinau.adb: Likewise. - * a-tiinau.ads: Likewise. - * a-tiinio.adb: Likewise. - * a-tiinio.ads: Likewise. - * a-timoau.adb: Likewise. - * a-timoau.ads: Likewise. - * a-timoio.adb: Likewise. - * a-timoio.ads: Likewise. - * a-tiocst.adb: Likewise. - * a-tiocst.ads: Likewise. - * a-titest.adb: Likewise. - * a-wichun.adb: Likewise. - * a-wichun.ads: Likewise. - * a-witeio.adb: Likewise. - * a-witeio.ads: Likewise. - * a-wtcoau.adb: Likewise. - * a-wtcoau.ads: Likewise. - * a-wtcoio.adb: Likewise. - * a-wtcstr.adb: Likewise. - * a-wtcstr.ads: Likewise. - * a-wtdeau.adb: Likewise. - * a-wtdeau.ads: Likewise. - * a-wtdeio.adb: Likewise. - * a-wtdeio.ads: Likewise. - * a-wtedit.adb: Likewise. - * a-wtedit.ads: Likewise. - * a-wtenau.adb: Likewise. - * a-wtenau.ads: Likewise. - * a-wtenio.adb: Likewise. - * a-wtenio.ads: Likewise. - * a-wtfiio.adb: Likewise. - * a-wtfiio.ads: Likewise. - * a-wtflau.adb: Likewise. - * a-wtflau.ads: Likewise. - * a-wtflio.adb: Likewise. - * a-wtflio.ads: Likewise. - * a-wtgeau.adb: Likewise. - * a-wtgeau.ads: Likewise. - * a-wtinau.adb: Likewise. - * a-wtinau.ads: Likewise. - * a-wtinio.adb: Likewise. - * a-wtmoau.adb: Likewise. - * a-wtmoau.ads: Likewise. - * a-wtmoio.adb: Likewise. - * a-wtmoio.ads: Likewise. - * a-wttest.adb: Likewise. - * a-wwboio.adb: Likewise. - * a-zchuni.adb: Likewise. - * a-zchuni.ads: Likewise. - * a-ztcoau.adb: Likewise. - * a-ztcoau.ads: Likewise. - * a-ztcoio.adb: Likewise. - * a-ztcstr.adb: Likewise. - * a-ztcstr.ads: Likewise. - * a-ztdeau.adb: Likewise. - * a-ztdeau.ads: Likewise. - * a-ztdeio.adb: Likewise. - * a-ztdeio.ads: Likewise. - * a-ztedit.adb: Likewise. - * a-ztedit.ads: Likewise. - * a-ztenau.adb: Likewise. - * a-ztenau.ads: Likewise. - * a-ztenio.adb: Likewise. - * a-ztenio.ads: Likewise. - * a-ztexio.adb: Likewise. - * a-ztexio.ads: Likewise. - * a-ztfiio.adb: Likewise. - * a-ztfiio.ads: Likewise. - * a-ztflau.adb: Likewise. - * a-ztflau.ads: Likewise. - * a-ztflio.adb: Likewise. - * a-ztflio.ads: Likewise. - * a-ztgeau.adb: Likewise. - * a-ztgeau.ads: Likewise. - * a-ztinau.adb: Likewise. - * a-ztinau.ads: Likewise. - * a-ztinio.adb: Likewise. - * a-ztmoau.adb: Likewise. - * a-ztmoau.ads: Likewise. - * a-ztmoio.adb: Likewise. - * a-ztmoio.ads: Likewise. - * a-zttest.adb: Likewise. - * a-zzboio.adb: Likewise. - * adadecode.c: Likewise. - * adaint.c: Likewise. - * adaint.h: Likewise. - * alloc.ads: Likewise. - * argv.c: Likewise. - * arit64.c: Likewise. - * atree.adb: Likewise. - * atree.ads: Likewise. - * aux-io.c: Likewise. - * cal.c: Likewise. - * casing.adb: Likewise. - * casing.ads: Likewise. - * cio.c: Likewise. - * csets.adb: Likewise. - * csets.ads: Likewise. - * cstreams.c: Likewise. - * ctrl_c.c: Likewise. - * debug.adb: Likewise. - * debug.ads: Likewise. - * dec.ads: Likewise. - * einfo.adb: Likewise. - * einfo.ads: Likewise. - * elists.adb: Likewise. - * elists.ads: Likewise. - * env.c: Likewise. - * env.h: Likewise. - * errno.c: Likewise. - * exit.c: Likewise. - * fe.h: Likewise. - * final.c: Likewise. - * fname.adb: Likewise. - * fname.ads: Likewise. - * g-allein.ads: Likewise. - * g-alleve.adb: Likewise. - * g-alleve.ads: Likewise. - * g-altcon.adb: Likewise. - * g-altcon.ads: Likewise. - * g-altive.ads: Likewise. - * g-alveop.adb: Likewise. - * g-alveop.ads: Likewise. - * g-alvety.ads: Likewise. - * g-alvevi.ads: Likewise. - * g-arrspl.adb: Likewise. - * g-arrspl.ads: Likewise. - * g-calend.ads: Likewise. - * g-comlin.adb: Likewise. - * g-debpoo.adb: Likewise. - * g-debpoo.ads: Likewise. - * g-eacodu-vms.adb: Likewise. - * g-eacodu.adb: Likewise. - * g-excact.adb: Likewise. - * g-excact.ads: Likewise. - * g-locfil.adb: Likewise. - * g-os_lib.ads: Likewise. - * g-rannum.adb: Likewise. - * g-rannum.ads: Likewise. - * g-regist.adb: Likewise. - * g-regist.ads: Likewise. - * g-signal.adb: Likewise. - * g-signal.ads: Likewise. - * g-soccon.ads: Likewise. - * g-string.adb: Likewise. - * g-string.ads: Likewise. - * g-strspl.ads: Likewise. - * g-timsta.adb: Likewise. - * g-timsta.ads: Likewise. - * g-trasym-vms-alpha.adb: Likewise. - * g-trasym-vms-ia64.adb: Likewise. - * g-utf_32.adb: Likewise. - * g-utf_32.ads: Likewise. - * g-wistsp.ads: Likewise. - * g-zstspl.ads: Likewise. - * gmem.c: Likewise. - * gnatvsn.adb: Likewise. - * gnatvsn.ads: Likewise. - * gsocket.h: Likewise. - * hostparm.ads: Likewise. - * i-c.adb: Likewise. - * i-cexten.ads: Likewise. - * i-cobol.adb: Likewise. - * i-cobol.ads: Likewise. - * i-cpoint.adb: Likewise. - * i-cpoint.ads: Likewise. - * i-cpp.adb: Likewise. - * i-cpp.ads: Likewise. - * i-cstrea-vms.adb: Likewise. - * i-cstrea.adb: Likewise. - * i-cstrea.ads: Likewise. - * i-cstrin.adb: Likewise. - * i-cstrin.ads: Likewise. - * i-forbla-darwin.adb: Likewise. - * i-forbla-unimplemented.ads: Likewise. - * i-forbla.adb: Likewise. - * i-forbla.ads: Likewise. - * i-forlap.ads: Likewise. - * i-fortra.adb: Likewise. - * i-pacdec.adb: Likewise. - * i-pacdec.ads: Likewise. - * i-vxwoio.adb: Likewise. - * i-vxwoio.ads: Likewise. - * indepsw-aix.adb: Likewise. - * indepsw-gnu.adb: Likewise. - * indepsw-mingw.adb: Likewise. - * indepsw.adb: Likewise. - * indepsw.ads: Likewise. - * init.c: Likewise. - * initialize.c: Likewise. - * interfac.ads: Likewise. - * krunch.adb: Likewise. - * krunch.ads: Likewise. - * lib-list.adb: Likewise. - * lib-sort.adb: Likewise. - * lib.adb: Likewise. - * lib.ads: Likewise. - * link.c: Likewise. - * math_lib.adb: Likewise. - * memtrack.adb: Likewise. - * mingw32.h: Likewise. - * mkdir.c: Likewise. - * namet-sp.adb: Likewise. - * namet-sp.ads: Likewise. - * namet.adb: Likewise. - * namet.ads: Likewise. - * nlists.adb: Likewise. - * nlists.ads: Likewise. - * opt.adb: Likewise. - * opt.ads: Likewise. - * output.adb: Likewise. - * output.ads: Likewise. - * raise-gcc.c: Likewise. - * raise.c: Likewise. - * raise.h: Likewise. - * repinfo.adb: Likewise. - * repinfo.ads: Likewise. - * repinfo.h: Likewise. - * rident.ads: Likewise. - * s-addima.adb: Likewise. - * s-addima.ads: Likewise. - * s-addope.adb: Likewise. - * s-addope.ads: Likewise. - * s-arit64.adb: Likewise. - * s-arit64.ads: Likewise. - * s-assert.adb: Likewise. - * s-assert.ads: Likewise. - * s-asthan-vms-alpha.adb: Likewise. - * s-asthan.adb: Likewise. - * s-asthan.ads: Likewise. - * s-atacco.adb: Likewise. - * s-atacco.ads: Likewise. - * s-auxdec-empty.adb: Likewise. - * s-auxdec-empty.ads: Likewise. - * s-auxdec-vms_64.ads: Likewise. - * s-auxdec.adb: Likewise. - * s-auxdec.ads: Likewise. - * s-bitops.adb: Likewise. - * s-bitops.ads: Likewise. - * s-boarop.ads: Likewise. - * s-carsi8.adb: Likewise. - * s-carsi8.ads: Likewise. - * s-carun8.adb: Likewise. - * s-carun8.ads: Likewise. - * s-casi16.adb: Likewise. - * s-casi16.ads: Likewise. - * s-casi32.adb: Likewise. - * s-casi32.ads: Likewise. - * s-casi64.adb: Likewise. - * s-casi64.ads: Likewise. - * s-casuti.ads: Likewise. - * s-caun16.adb: Likewise. - * s-caun16.ads: Likewise. - * s-caun32.adb: Likewise. - * s-caun32.ads: Likewise. - * s-caun64.adb: Likewise. - * s-caun64.ads: Likewise. - * s-chepoo.ads: Likewise. - * s-crc32.adb: Likewise. - * s-crc32.ads: Likewise. - * s-crtl.ads: Likewise. - * s-direio.adb: Likewise. - * s-direio.ads: Likewise. - * s-dsaser.ads: Likewise. - * s-except.adb: Likewise. - * s-except.ads: Likewise. - * s-exctab.adb: Likewise. - * s-exctab.ads: Likewise. - * s-exnint.adb: Likewise. - * s-exnint.ads: Likewise. - * s-exnllf.adb: Likewise. - * s-exnllf.ads: Likewise. - * s-exnlli.adb: Likewise. - * s-exnlli.ads: Likewise. - * s-expint.adb: Likewise. - * s-expint.ads: Likewise. - * s-explli.adb: Likewise. - * s-explli.ads: Likewise. - * s-expllu.adb: Likewise. - * s-expllu.ads: Likewise. - * s-expmod.adb: Likewise. - * s-expmod.ads: Likewise. - * s-expuns.adb: Likewise. - * s-expuns.ads: Likewise. - * s-fatflt.ads: Likewise. - * s-fatgen.adb: Likewise. - * s-fatgen.ads: Likewise. - * s-fatlfl.ads: Likewise. - * s-fatllf.ads: Likewise. - * s-fatsfl.ads: Likewise. - * s-ficobl.ads: Likewise. - * s-fileio.adb: Likewise. - * s-fileio.ads: Likewise. - * s-filofl.ads: Likewise. - * s-finimp.adb: Likewise. - * s-finimp.ads: Likewise. - * s-finroo.adb: Likewise. - * s-finroo.ads: Likewise. - * s-fishfl.ads: Likewise. - * s-fore.adb: Likewise. - * s-fore.ads: Likewise. - * s-fvadfl.ads: Likewise. - * s-fvaffl.ads: Likewise. - * s-fvagfl.ads: Likewise. - * s-gearop.adb: Likewise. - * s-gearop.ads: Likewise. - * s-gecobl.adb: Likewise. - * s-gecobl.ads: Likewise. - * s-gecola.adb: Likewise. - * s-gecola.ads: Likewise. - * s-gerebl.adb: Likewise. - * s-gerebl.ads: Likewise. - * s-gerela.adb: Likewise. - * s-gerela.ads: Likewise. - * s-geveop.adb: Likewise. - * s-geveop.ads: Likewise. - * s-gloloc.adb: Likewise. - * s-gloloc.ads: Likewise. - * s-hibaen.ads: Likewise. - * s-imenne.adb: Likewise. - * s-imenne.ads: Likewise. - * s-imgbiu.adb: Likewise. - * s-imgbiu.ads: Likewise. - * s-imgboo.adb: Likewise. - * s-imgboo.ads: Likewise. - * s-imgcha.adb: Likewise. - * s-imgcha.ads: Likewise. - * s-imgdec.adb: Likewise. - * s-imgdec.ads: Likewise. - * s-imgenu.adb: Likewise. - * s-imgenu.ads: Likewise. - * s-imgint.adb: Likewise. - * s-imgint.ads: Likewise. - * s-imgllb.adb: Likewise. - * s-imgllb.ads: Likewise. - * s-imglld.adb: Likewise. - * s-imglld.ads: Likewise. - * s-imglli.adb: Likewise. - * s-imglli.ads: Likewise. - * s-imgllu.adb: Likewise. - * s-imgllu.ads: Likewise. - * s-imgllw.adb: Likewise. - * s-imgllw.ads: Likewise. - * s-imgrea.adb: Likewise. - * s-imgrea.ads: Likewise. - * s-imguns.adb: Likewise. - * s-imguns.ads: Likewise. - * s-imgwch.adb: Likewise. - * s-imgwch.ads: Likewise. - * s-imgwiu.adb: Likewise. - * s-imgwiu.ads: Likewise. - * s-inmaop-dummy.adb: Likewise. - * s-inmaop-vms.adb: Likewise. - * s-inmaop.ads: Likewise. - * s-interr-hwint.adb: Likewise. - * s-interr-sigaction.adb: Likewise. - * s-interr-vms.adb: Likewise. - * s-interr.adb: Likewise. - * s-interr.ads: Likewise. - * s-intman-dummy.adb: Likewise. - * s-intman-mingw.adb: Likewise. - * s-intman-posix.adb: Likewise. - * s-intman-solaris.adb: Likewise. - * s-intman-vms.adb: Likewise. - * s-intman-vms.ads: Likewise. - * s-intman-vxworks.adb: Likewise. - * s-intman-vxworks.ads: Likewise. - * s-intman.ads: Likewise. - * s-io.adb: Likewise. - * s-io.ads: Likewise. - * s-linux-alpha.ads: Likewise. - * s-linux-hppa.ads: Likewise. - * s-linux.ads: Likewise. - * s-maccod.ads: Likewise. - * s-mantis.adb: Likewise. - * s-mantis.ads: Likewise. - * s-mastop-irix.adb: Likewise. - * s-mastop.adb: Likewise. - * s-mastop.ads: Likewise. - * s-memcop.ads: Likewise. - * s-memory-mingw.adb: Likewise. - * s-memory.adb: Likewise. - * s-memory.ads: Likewise. - * s-os_lib.ads: Likewise. - * s-oscons-tmplt.c: Likewise. - * s-osinte-aix.adb: Likewise. - * s-osinte-darwin.adb: Likewise. - * s-osinte-freebsd.adb: Likewise. - * s-osinte-irix.adb: Likewise. - * s-osinte-lynxos-3.adb: Likewise. - * s-osinte-rtems.ads: Likewise. - * s-osinte-tru64.adb: Likewise. - * s-osinte-vxworks-kernel.adb: Likewise. - * s-osinte-vxworks.adb: Likewise. - * s-osprim-mingw.adb: Likewise. - * s-osprim-posix.adb: Likewise. - * s-osprim-solaris.adb: Likewise. - * s-osprim-unix.adb: Likewise. - * s-osprim-vms.adb: Likewise. - * s-osprim-vms.ads: Likewise. - * s-osprim-vxworks.adb: Likewise. - * s-osprim.ads: Likewise. - * s-pack03.adb: Likewise. - * s-pack03.ads: Likewise. - * s-pack05.adb: Likewise. - * s-pack05.ads: Likewise. - * s-pack06.adb: Likewise. - * s-pack06.ads: Likewise. - * s-pack07.adb: Likewise. - * s-pack07.ads: Likewise. - * s-pack09.adb: Likewise. - * s-pack09.ads: Likewise. - * s-pack10.adb: Likewise. - * s-pack10.ads: Likewise. - * s-pack11.adb: Likewise. - * s-pack11.ads: Likewise. - * s-pack12.adb: Likewise. - * s-pack12.ads: Likewise. - * s-pack13.adb: Likewise. - * s-pack13.ads: Likewise. - * s-pack14.adb: Likewise. - * s-pack14.ads: Likewise. - * s-pack15.adb: Likewise. - * s-pack15.ads: Likewise. - * s-pack17.adb: Likewise. - * s-pack17.ads: Likewise. - * s-pack18.adb: Likewise. - * s-pack18.ads: Likewise. - * s-pack19.adb: Likewise. - * s-pack19.ads: Likewise. - * s-pack20.adb: Likewise. - * s-pack20.ads: Likewise. - * s-pack21.adb: Likewise. - * s-pack21.ads: Likewise. - * s-pack22.adb: Likewise. - * s-pack22.ads: Likewise. - * s-pack23.adb: Likewise. - * s-pack23.ads: Likewise. - * s-pack24.adb: Likewise. - * s-pack24.ads: Likewise. - * s-pack25.adb: Likewise. - * s-pack25.ads: Likewise. - * s-pack26.adb: Likewise. - * s-pack26.ads: Likewise. - * s-pack27.adb: Likewise. - * s-pack27.ads: Likewise. - * s-pack28.adb: Likewise. - * s-pack28.ads: Likewise. - * s-pack29.adb: Likewise. - * s-pack29.ads: Likewise. - * s-pack30.adb: Likewise. - * s-pack30.ads: Likewise. - * s-pack31.adb: Likewise. - * s-pack31.ads: Likewise. - * s-pack33.adb: Likewise. - * s-pack33.ads: Likewise. - * s-pack34.adb: Likewise. - * s-pack34.ads: Likewise. - * s-pack35.adb: Likewise. - * s-pack35.ads: Likewise. - * s-pack36.adb: Likewise. - * s-pack36.ads: Likewise. - * s-pack37.adb: Likewise. - * s-pack37.ads: Likewise. - * s-pack38.adb: Likewise. - * s-pack38.ads: Likewise. - * s-pack39.adb: Likewise. - * s-pack39.ads: Likewise. - * s-pack40.adb: Likewise. - * s-pack40.ads: Likewise. - * s-pack41.adb: Likewise. - * s-pack41.ads: Likewise. - * s-pack42.adb: Likewise. - * s-pack42.ads: Likewise. - * s-pack43.adb: Likewise. - * s-pack43.ads: Likewise. - * s-pack44.adb: Likewise. - * s-pack44.ads: Likewise. - * s-pack45.adb: Likewise. - * s-pack45.ads: Likewise. - * s-pack46.adb: Likewise. - * s-pack46.ads: Likewise. - * s-pack47.adb: Likewise. - * s-pack47.ads: Likewise. - * s-pack48.adb: Likewise. - * s-pack48.ads: Likewise. - * s-pack49.adb: Likewise. - * s-pack49.ads: Likewise. - * s-pack50.adb: Likewise. - * s-pack50.ads: Likewise. - * s-pack51.adb: Likewise. - * s-pack51.ads: Likewise. - * s-pack52.adb: Likewise. - * s-pack52.ads: Likewise. - * s-pack53.adb: Likewise. - * s-pack53.ads: Likewise. - * s-pack54.adb: Likewise. - * s-pack54.ads: Likewise. - * s-pack55.adb: Likewise. - * s-pack55.ads: Likewise. - * s-pack56.adb: Likewise. - * s-pack56.ads: Likewise. - * s-pack57.adb: Likewise. - * s-pack57.ads: Likewise. - * s-pack58.adb: Likewise. - * s-pack58.ads: Likewise. - * s-pack59.adb: Likewise. - * s-pack59.ads: Likewise. - * s-pack60.adb: Likewise. - * s-pack60.ads: Likewise. - * s-pack61.adb: Likewise. - * s-pack61.ads: Likewise. - * s-pack62.adb: Likewise. - * s-pack62.ads: Likewise. - * s-pack63.adb: Likewise. - * s-pack63.ads: Likewise. - * s-parame-ae653.ads: Likewise. - * s-parame-hpux.ads: Likewise. - * s-parame-rtems.adb: Likewise. - * s-parame-vms-alpha.ads: Likewise. - * s-parame-vms-ia64.ads: Likewise. - * s-parame-vms-restrict.ads: Likewise. - * s-parame-vxworks.adb: Likewise. - * s-parame-vxworks.ads: Likewise. - * s-parame.adb: Likewise. - * s-parame.ads: Likewise. - * s-parint.adb: Likewise. - * s-parint.ads: Likewise. - * s-pooglo.adb: Likewise. - * s-pooglo.ads: Likewise. - * s-pooloc.adb: Likewise. - * s-pooloc.ads: Likewise. - * s-poosiz.adb: Likewise. - * s-poosiz.ads: Likewise. - * s-powtab.ads: Likewise. - * s-proinf-irix-athread.adb: Likewise. - * s-proinf-irix-athread.ads: Likewise. - * s-proinf.adb: Likewise. - * s-proinf.ads: Likewise. - * s-purexc.ads: Likewise. - * s-rannum.adb: Likewise. - * s-rannum.ads: Likewise. - * s-restri.adb: Likewise. - * s-restri.ads: Likewise. - * s-rident.ads: Likewise. - * s-rpc.adb: Likewise. - * s-rpc.ads: Likewise. - * s-scaval.adb: Likewise. - * s-scaval.ads: Likewise. - * s-secsta.adb: Likewise. - * s-secsta.ads: Likewise. - * s-sequio.adb: Likewise. - * s-sequio.ads: Likewise. - * s-shasto.adb: Likewise. - * s-shasto.ads: Likewise. - * s-soflin.adb: Likewise. - * s-soflin.ads: Likewise. - * s-solita.adb: Likewise. - * s-solita.ads: Likewise. - * s-sopco3.adb: Likewise. - * s-sopco3.ads: Likewise. - * s-sopco4.adb: Likewise. - * s-sopco4.ads: Likewise. - * s-sopco5.adb: Likewise. - * s-sopco5.ads: Likewise. - * s-stache.adb: Likewise. - * s-stache.ads: Likewise. - * s-stalib.adb: Likewise. - * s-stalib.ads: Likewise. - * s-stausa.adb: Likewise. - * s-stausa.ads: Likewise. - * s-stchop-limit.ads: Likewise. - * s-stchop-rtems.adb: Likewise. - * s-stchop-vxworks.adb: Likewise. - * s-stchop.adb: Likewise. - * s-stchop.ads: Likewise. - * s-stoele.adb: Likewise. - * s-stoele.ads: Likewise. - * s-stopoo.adb: Likewise. - * s-stopoo.ads: Likewise. - * s-stratt.adb: Likewise. - * s-stratt.ads: Likewise. - * s-strcom.adb: Likewise. - * s-strcom.ads: Likewise. - * s-string.adb: Likewise. - * s-string.ads: Likewise. - * s-strops.adb: Likewise. - * s-strops.ads: Likewise. - * s-strxdr.adb: Likewise. - * s-ststop.adb: Likewise. - * s-ststop.ads: Likewise. - * s-taasde.adb: Likewise. - * s-taasde.ads: Likewise. - * s-tadeca.adb: Likewise. - * s-tadeca.ads: Likewise. - * s-tadert.adb: Likewise. - * s-tadert.ads: Likewise. - * s-taenca.adb: Likewise. - * s-taenca.ads: Likewise. - * s-taprob.ads: Likewise. - * s-taprop-dummy.adb: Likewise. - * s-taprop-hpux-dce.adb: Likewise. - * s-taprop-irix.adb: Likewise. - * s-taprop-linux.adb: Likewise. - * s-taprop-lynxos.adb: Likewise. - * s-taprop-mingw.adb: Likewise. - * s-taprop-posix.adb: Likewise. - * s-taprop-solaris.adb: Likewise. - * s-taprop-tru64.adb: Likewise. - * s-taprop-vms.adb: Likewise. - * s-taprop-vxworks.adb: Likewise. - * s-taprop.ads: Likewise. - * s-tarest.adb: Likewise. - * s-tarest.ads: Likewise. - * s-tasdeb.adb: Likewise. - * s-tasdeb.ads: Likewise. - * s-tasinf-irix.ads: Likewise. - * s-tasinf-linux.adb: Likewise. - * s-tasinf-linux.ads: Likewise. - * s-tasinf-mingw.adb: Likewise. - * s-tasinf-mingw.ads: Likewise. - * s-tasinf-solaris.adb: Likewise. - * s-tasinf-solaris.ads: Likewise. - * s-tasinf-tru64.ads: Likewise. - * s-tasinf.adb: Likewise. - * s-tasinf.ads: Likewise. - * s-tasini.adb: Likewise. - * s-tasini.ads: Likewise. - * s-taskin.adb: Likewise. - * s-taskin.ads: Likewise. - * s-taspri-dummy.ads: Likewise. - * s-taspri-hpux-dce.ads: Likewise. - * s-taspri-mingw.ads: Likewise. - * s-taspri-solaris.ads: Likewise. - * s-taspri-tru64.ads: Likewise. - * s-taspri-vms.ads: Likewise. - * s-taspri-vxworks.ads: Likewise. - * s-tasque.adb: Likewise. - * s-tasque.ads: Likewise. - * s-tasren.adb: Likewise. - * s-tasren.ads: Likewise. - * s-tasres.ads: Likewise. - * s-tassta.adb: Likewise. - * s-tassta.ads: Likewise. - * s-tasuti.adb: Likewise. - * s-tasuti.ads: Likewise. - * s-tfsetr-default.adb: Likewise. - * s-tfsetr-vxworks.adb: Likewise. - * s-tpinop.adb: Likewise. - * s-tpinop.ads: Likewise. - * s-tpoben.adb: Likewise. - * s-tpoben.ads: Likewise. - * s-tpobop.adb: Likewise. - * s-tpobop.ads: Likewise. - * s-tpopde-vms.adb: Likewise. - * s-tpopde-vms.ads: Likewise. - * s-tpopsp-lynxos.adb: Likewise. - * s-tpopsp-posix-foreign.adb: Likewise. - * s-tpopsp-posix.adb: Likewise. - * s-tpopsp-solaris.adb: Likewise. - * s-tpopsp-vxworks.adb: Likewise. - * s-tporft.adb: Likewise. - * s-tposen.adb: Likewise. - * s-tposen.ads: Likewise. - * s-traceb.adb: Likewise. - * s-traceb.ads: Likewise. - * s-traces-default.adb: Likewise. - * s-traces.adb: Likewise. - * s-traces.ads: Likewise. - * s-traent-vms.adb: Likewise. - * s-traent-vms.ads: Likewise. - * s-traent.adb: Likewise. - * s-traent.ads: Likewise. - * s-trafor-default.adb: Likewise. - * s-trafor-default.ads: Likewise. - * s-tratas-default.adb: Likewise. - * s-tratas.adb: Likewise. - * s-tratas.ads: Likewise. - * s-unstyp.ads: Likewise. - * s-utf_32.adb: Likewise. - * s-utf_32.ads: Likewise. - * s-vaflop-vms-alpha.adb: Likewise. - * s-vaflop.adb: Likewise. - * s-vaflop.ads: Likewise. - * s-valboo.adb: Likewise. - * s-valboo.ads: Likewise. - * s-valcha.adb: Likewise. - * s-valcha.ads: Likewise. - * s-valdec.adb: Likewise. - * s-valdec.ads: Likewise. - * s-valenu.adb: Likewise. - * s-valenu.ads: Likewise. - * s-valint.adb: Likewise. - * s-valint.ads: Likewise. - * s-vallld.adb: Likewise. - * s-vallld.ads: Likewise. - * s-vallli.adb: Likewise. - * s-vallli.ads: Likewise. - * s-valllu.adb: Likewise. - * s-valllu.ads: Likewise. - * s-valrea.adb: Likewise. - * s-valrea.ads: Likewise. - * s-valuns.adb: Likewise. - * s-valuns.ads: Likewise. - * s-valuti.adb: Likewise. - * s-valuti.ads: Likewise. - * s-valwch.adb: Likewise. - * s-valwch.ads: Likewise. - * s-veboop.adb: Likewise. - * s-veboop.ads: Likewise. - * s-vector.ads: Likewise. - * s-vercon.adb: Likewise. - * s-vercon.ads: Likewise. - * s-vmexta.adb: Likewise. - * s-vmexta.ads: Likewise. - * s-vxwext-kernel.ads: Likewise. - * s-vxwext-rtp.adb: Likewise. - * s-vxwext-rtp.ads: Likewise. - * s-vxwext.ads: Likewise. - * s-vxwork-arm.ads: Likewise. - * s-vxwork-m68k.ads: Likewise. - * s-vxwork-mips.ads: Likewise. - * s-vxwork-ppc.ads: Likewise. - * s-vxwork-sparcv9.ads: Likewise. - * s-vxwork-x86.ads: Likewise. - * s-wchcnv.adb: Likewise. - * s-wchcnv.ads: Likewise. - * s-wchcon.adb: Likewise. - * s-wchcon.ads: Likewise. - * s-wchjis.adb: Likewise. - * s-wchjis.ads: Likewise. - * s-wchstw.adb: Likewise. - * s-wchstw.ads: Likewise. - * s-wchwts.adb: Likewise. - * s-wchwts.ads: Likewise. - * s-widboo.adb: Likewise. - * s-widboo.ads: Likewise. - * s-widcha.adb: Likewise. - * s-widcha.ads: Likewise. - * s-widenu.adb: Likewise. - * s-widenu.ads: Likewise. - * s-widlli.adb: Likewise. - * s-widlli.ads: Likewise. - * s-widllu.adb: Likewise. - * s-widllu.ads: Likewise. - * s-widwch.adb: Likewise. - * s-widwch.ads: Likewise. - * s-win32.ads: Likewise. - * s-winext.ads: Likewise. - * s-wwdcha.adb: Likewise. - * s-wwdcha.ads: Likewise. - * s-wwdenu.adb: Likewise. - * s-wwdenu.ads: Likewise. - * s-wwdwch.adb: Likewise. - * s-wwdwch.ads: Likewise. - * scans.adb: Likewise. - * scans.ads: Likewise. - * seh_init.c: Likewise. - * sfn_scan.adb: Likewise. - * sinfo.adb: Likewise. - * sinfo.ads: Likewise. - * sinput.adb: Likewise. - * sinput.ads: Likewise. - * snames.adb: Likewise. - * snames.ads: Likewise. - * socket.c: Likewise. - * stand.adb: Likewise. - * stand.ads: Likewise. - * stringt.adb: Likewise. - * stringt.ads: Likewise. - * sysdep.c: Likewise. - * system-aix.ads: Likewise. - * system-darwin-ppc.ads: Likewise. - * system-darwin-x86.ads: Likewise. - * system-darwin-x86_64.ads: Likewise. - * system-freebsd-x86.ads: Likewise. - * system-hpux-ia64.ads: Likewise. - * system-hpux.ads: Likewise. - * system-irix-n32.ads: Likewise. - * system-irix-n64.ads: Likewise. - * system-irix-o32.ads: Likewise. - * system-linux-alpha.ads: Likewise. - * system-linux-hppa.ads: Likewise. - * system-linux-ia64.ads: Likewise. - * system-linux-mips.ads: Likewise. - * system-linux-mipsel.ads: Likewise. - * system-linux-ppc.ads: Likewise. - * system-linux-ppc64.ads: Likewise. - * system-linux-s390.ads: Likewise. - * system-linux-s390x.ads: Likewise. - * system-linux-sh4.ads: Likewise. - * system-linux-sparc.ads: Likewise. - * system-linux-sparcv9.ads: Likewise. - * system-linux-x86.ads: Likewise. - * system-linux-x86_64.ads: Likewise. - * system-lynxos-ppc.ads: Likewise. - * system-lynxos-x86.ads: Likewise. - * system-mingw-x86_64.ads: Likewise. - * system-mingw.ads: Likewise. - * system-rtems.ads: Likewise. - * system-solaris-sparc.ads: Likewise. - * system-solaris-sparcv9.ads: Likewise. - * system-solaris-x86.ads: Likewise. - * system-solaris-x86_64.ads: Likewise. - * system-tru64.ads: Likewise. - * system-vms-ia64.ads: Likewise. - * system-vms-zcx.ads: Likewise. - * system-vms.ads: Likewise. - * system-vms_64.ads: Likewise. - * system-vxworks-arm.ads: Likewise. - * system-vxworks-m68k.ads: Likewise. - * system-vxworks-mips.ads: Likewise. - * system-vxworks-ppc.ads: Likewise. - * system-vxworks-sparcv9.ads: Likewise. - * system-vxworks-x86.ads: Likewise. - * system.ads: Likewise. - * table.adb: Likewise. - * table.ads: Likewise. - * targext.c: Likewise. - * targparm.ads: Likewise. - * tree_in.adb: Likewise. - * tree_in.ads: Likewise. - * tree_io.adb: Likewise. - * tree_io.ads: Likewise. - * types.adb: Likewise. - * types.ads: Likewise. - * uintp.adb: Likewise. - * uintp.ads: Likewise. - * uname.adb: Likewise. - * uname.ads: Likewise. - * urealp.adb: Likewise. - * urealp.ads: Likewise. - * vx_stack_info.c: Likewise. - * widechar.adb: Likewise. - * widechar.ads: Likewise. - * exp_attr.adb: Change copyright header to refer to version - 3 of the GNU General Public License and to point readers at the - COPYING3 file and the FSF's license web page. - * sem.adb: Likewise. - * sem_attr.ads: Likewise. - * freeze.adb: Likewise. - * freeze.ads: Likewise. - * errout.ads: Likewise. - * erroutc.adb: Likewise. - * exp_ch11.ads: Likewise. - -2009-04-09 Jakub Jelinek - - * config-lang.in: Change copyright header to refer to version - 3 of the GNU General Public License and to point readers at the - COPYING3 file and the FSF's license web page. - * gcc-interface/trans.c: Likewise. - * gnathtml.pl: Likewise. - * gcc-interface/ada.h: Likewise. Remove runtime exception. - * gcc-interface/gigi.h: Likewise. - * gcc-interface/misc.c: Likewise. - * gcc-interface/targtyps.c: Likewise. - -2009-04-09 Nicolas Setton - - * s-osinte-darwin.ads: Fix wrong binding to struc timeval. - - * s-osinte-darwin.adb (To_Timeval): Adapt to fixed implementation of - struct_timeval. - -2009-04-09 Bob Duff - - * exp_ch5.adb, exp_ch9.adb: Correct miscellaneous Slocs in - internally-generated nodes related to select statements to avoid - confusing the debugger. - -2009-04-09 Pascal Obry - - * make.adb: Ensure that all linker arguments are duplicated. - -2009-04-09 Robert Dewar - - * sem_ch5.adb: Minor reformatting - -2009-04-09 Vincent Celier - - * vms_data.ads: - Change GNAT CHECK qualifier /DIAGNOSIS_LIMIT to /DIAGNOSTIC_LIMIT - New qualifier /LEXPAND_SOURCE=nnn for -gnatGnnn - New qualifier /LXDEBUG=nnn for -gnatDnnn - For H820-010 - - * gnat_ugn.texi: - Update documentation for VMS qualifiers equivalent to -gnatGnn and - -gnatDnn - -2009-04-09 Nicolas Setton - - * s-osinte-darwin.ads: (Pad_Type): Make this an array of unsigned_long, - to match layout of siginfo_t in sys/signal.h. - - * gcc-interface/Makefile.in: Add section for x86_64 darwin. - -2009-04-09 Thomas Quinot - - * g-socket.ads: (Fd_Set): Use Interfaces.C.long alignment. - -2009-04-09 Nicolas Setton - - * s-oscons-tmplt.c: Allow long lines in the generated spec. - Add generation of Darwin-specific constants needed when binding to the - pthread library. - -2009-04-09 Robert Dewar - - * checks.adb: - (Insert_Valid_Check): Avoid unnecessary generation of junk declaration - when no invalid values exist, Avoid duplicate read of atomic variable. - - * cstand.adb (Build_Signed_Integer_Type): Set Is_Known_Valid - (Standard_Unsigned): Set Is_Known_Valid - - * sem_ch3.adb (Analyze_Subtype_Declaration): Copy Is_Known_Valid on - subtype declaration if no constraint. - (Set_Modular_Size): Set Is_Known_Valid if appropriate - (Build_Derived_Numeric_Type): Copy Is_Known_Valid if no constraint - -2009-04-09 Robert Dewar - - * switch-c.adb, gnat_ugn.texi, vms_data.ads, switch.adb, - switch.ads: for numeric switches, an optional equal sign is always - allowed. - -2009-04-09 Vincent Celier - - * prj-nmsc.adb (Get_Unit): Do not consider Casing on platform where - the case of file names is not significant. - -2009-04-09 Vincent Celier - - * errout.adb: Remove dependency on package Style - - * style.ads, styleg.adb, styleg.ads (RM_Column_Check): Remove function, - moved to Stylesw. - - * stylesw.ads, stylesw.adb (RM_Column_Check): New function, moved from - Styleg. - - * errutil.adb, par.adb: Import Stylesw - -2009-04-09 Arnaud Charlet - - * opt.ads: Fix typos. - -2009-04-09 Robert Dewar - - * einfo.adb: Minor reformatting - -2009-04-09 Robert Dewar - - * gcc-interface/Make-lang.in, style.ads, style.adb: Reorganize style - units. - - * styleg-c.ads, styleg-c.adb: Removed, no longer used. - -2009-04-09 Robert Dewar - - * g-comver.adb: Minor reformatting. - -2009-04-09 Thomas Quinot - - * lib-load.ads (Load_Unit): Update documentation. - -2009-04-09 Ed Schonberg - - * lib-load.adb (Load_Unit): When loading the parent of a child unit - named in a with_clause, retain the with_clause to preserve a - limited_with indication. - -2009-04-09 Robert Dewar - - * sem_ch7.adb, sem_ch10.adb, sem_prag.adb, sem_ch12.adb, sem_util.adb, - exp_ch13.adb, sem_ch6.adb, exp_disp.adb, sem_ch8.adb, sem_warn.adb, - sem_cat.adb: Code clean up: use Is_Package_Or_Generic_Package where - possible to replace an OR of two separate tests. - -2009-04-09 Robert Dewar - - * binderr.adb, errout.adb, errutil.adb: New circuitry for handling - Maximum_Messages. - - * erroutc.adb, erroutc.ads (Warnings_Suppressed): Now tests global - warning status as well. - - * opt.ads (Maximum_Messages): New name for Maximum_Errors. - - * switch-b.adb, switch-c.adb: Change name Maximum_Errors to - Maximum_Messages. - - * bindusg.adb, usage.adb: Update line for -gnatm switch - - * gnat_ugn.texi: Update documentation for -gnatmnn compiler switch and - -mnn binder switch. - -2009-04-09 Robert Dewar - - * sem_ch10.adb: Minor reformatting. - -2009-04-09 Bob Duff - - * exp_ch11.adb (Expand_Exception_Handlers, Prepend_Call_To_Handler): - Set Sloc of generated nodes for calls to Undefer_Aborts and - Save_Occurrence to No_Location, so the debugger ignores them and - therefore does not jump back and forth when single stepping. - -2009-04-09 Robert Dewar - - * switch-b.adb: Minor reformatting. - -2009-04-09 Robert Dewar - - * sem_aggr.adb, exp_ch5.adb, sem_ch3.adb, exp_atag.adb, layout.adb, - sem_dist.adb, exp_ch7.adb, sem_ch5.adb, sem_type.adb, exp_imgv.adb, - exp_util.adb, sem_aux.adb, sem_aux.ads, exp_attr.adb, exp_ch9.adb, - sem_ch7.adb, inline.adb, fe.h, sem_ch9.adb, exp_code.adb, einfo.adb, - einfo.ads, exp_pakd.adb, checks.adb, sem_ch12.adb, exp_smem.adb, - tbuild.adb, freeze.adb, sem_util.adb, sem_res.adb, sem_attr.adb, - exp_dbug.adb, sem_case.adb, exp_tss.adb, exp_ch4.adb, exp_ch6.adb, - sem_smem.adb, sem_ch4.adb, sem_mech.adb, sem_ch6.adb, exp_disp.adb, - sem_ch8.adb, exp_aggr.adb, sem_eval.adb, sem_cat.adb, exp_dist.adb, - sem_ch13.adb, exp_strm.adb, lib-xref.adb, sem_disp.adb, exp_ch3.adb: - Reorganize einfo/sem_aux, moving routines from einfo to sem_aux - -2009-04-09 Robert Dewar - - * exp_util.adb (Silly_Boolean_Array_Xor_Test): Simplify existing code. - - * atree.h: Add Elist26 - - * gnat_ugn.texi: Complete documentation deprecating -gnatN for non-gcc - backends. - -2009-04-09 Javier Miranda - - * exp_disp.adb (Export_DT): Addition of a new argument (Index); used to - retrieve from the Dispatch_Table_Wrappers list the external name. - Addition of documentation. - (Make_Secondary_DT): Addition of a new argument (Suffix_Index) that is - used to export secondary dispatch tables (in the previous version of - the frontend only primary dispatch tables were exported). Addition of - documentation. - (Import_DT): New subprogram (internal of Make_Tags). Used to import a - dispatch table of a given tagged type. - (Make_Tags): Modified to import secondary dispatch tables. - - * sem_ch3.adb (Analyze_Object_Declaration): Code cleanup. - (Constant_Redeclaration): Code cleanup. - - * einfo.ads (Dispatch_Table_Wrapper): Renamed to - Dispatch_Table_Wrappers. Update documentation. - - * einfo.adb (Dispatch_Table_Wrapper, Set_Dispatch_Table_Wrapper): - Renamed to Dispatch_Table_Wrappers. - - * sem_util.adb (Collect_Interface_Components): Improve handling of - private types. - - * atree.ads (Elist26, Set_Elist26): New subprograms - - * atree.adb (Elist26, Set_Elist26): New subprograms - -2009-04-09 Javier Miranda - - * sem_ch3.adb (Build_Derived_Record_Type): Fix typo. - (Derive_Progenitor_Subprograms): Handle interfaces in subtypes of - tagged types. - -2009-04-09 Robert Dewar - - * s-direio.adb: Minor reformatting - - * exp_ch4.adb (Expand_Concatenate): Avoid overflow checks for String - -2009-04-09 Robert Dewar - - * exp_ch4.adb (Expand_Concatenate): Improve handling of overflow cases - -2009-04-09 Pascal Obry - - * a-cihama.adb, a-cihama.ads, a-coinve.adb, a-coinve.ads, - s-tpoben.adb, s-tpoben.ads, s-finimp.adb, s-finimp.ads, - a-convec.adb, a-convec.ads, a-finali.adb, a-finali.ads, - a-filico.ads: Add some missing overriding keywords. - -2009-04-09 Pascal Obry - - * a-cihama.adb, a-cihama.ads, a-coinve.adb, a-coorma.ads, a-cihase.adb, - a-cihase.ads, a-cohama.adb, a-cohama.ads, a-coorse.adb, a-coorse.ads, - a-coormu.adb, a-coormu.ads, a-cohase.adb, a-cohase.ads: Minor - reformatting. - -2009-04-09 Ed Schonberg - - * sem_ch6.adb (Check_Overriding_Indicator): Do not generate warning on - missing overriding indicator if the new declaration is not seen as - primitive. - -2009-04-09 Thomas Quinot - - * exp_ch4.adb (Expand_Concatenate): Add circuitry to properly handle - overflows in computation of bounds. - -2009-04-09 Pascal Obry - - * a-cihama.adb, a-cgcaso.adb, a-cihase.adb, a-cohase.adb: Fix some - typos in comment. - -2009-04-09 Robert Dewar - - * sem_attr.adb (Check_Stream_Attribute): Check violation of - restriction No_Streams - - * gnat_rm.texi: Clarify No_Streams restriction - - * g-socket.adb: Minor reformatting. - -2009-04-09 Thomas Quinot - - * g-socket.ads: Mark Initialize and Finalize as obsolesent interfaces. - -2009-04-09 Geert Bosch - - * exp_fixd.adb (Build_Conversion): Accept new optional Trunc argument. - (Set_Result): Likewise. - (Expand_Convert_Float_To_Fixed): Have Set_Result truncate the - conversion, as required by RM 4.6(31). - -2009-04-08 Robert Dewar - - * checks.adb (Enable_Overflow_Check): Do not enable if overflow checks - suppressed. - - * exp_ch4.adb (Expand_Concatenate): Make sure checks are off for all - resolution steps. - -2009-04-08 Robert Dewar - - * sem_ch12.adb (Analyze_Package_Instantiation): Remove test for - No_Local_Allocators restriction preventing local instantiation. - -2009-04-08 Thomas Quinot - - * sem_eval.adb: Minor comment fix - -2009-04-08 Thomas Quinot - - * g-socket.adb, g-socket.ads (GNAT.Sockets.Sockets_Library_Controller): - New limited controlled type used to automate the initialization and - finalization of the sockets implementation. - (GNAT.Sockets.Initialize, Finalize): Make these no-ops - -2009-04-08 Vincent Celier - - * prj-attr.adb: New read-only project-level attribute Project_Dir - - * prj-proc.adb (Add_Attributes): New parameter Project_Dir, value of - read-only attribute of the same name. - (Process_Declarative_Items): Call Add_Attributes with Project_Dir - (Recursive_Process): Ditto - - * snames.adb: Add new standard name Project_Dir - - * snames.ads: Add new standard name Project_Dir - -2009-04-08 Thomas Quinot - - * checks.adb: Minor reformatting - -2009-04-08 Vincent Celier - - * vms_data.ads: Add documentation for new style keyword - OVERRIDING_INDICATORS - -2009-04-08 Robert Dewar - - * sem_ch3.adb (Check_Completion.Post_Error): Post error on spec if the - spec is in the current unit. - -2009-04-08 Ed Schonberg - - * sem_util.adb (Is_Protected_Self_Reference): Add guard to check for - presence of entity. - - * usage.adb, gnat_ugn.texi: add info on -gnatyO: overriding indicators - -2009-04-08 Vincent Celier - - * vms_data.ads: Add VMS equivalent for -gnatyO (OVERRIDING_INDICATORS) - -2009-04-08 Thomas Quinot - - * checks.ads: Minor reformatting - -2009-04-08 Robert Dewar - - * gnat_rm.texi: Update documentation of pragma Obsolescent - - * sem_prag.adb (Analyze_Pragma, case Obsolescent): Allow identifiers to - be omitted, and allow Entity parameter to be omitted. - -2009-04-08 Thomas Quinot - - * exp_util.adb: Minor comment fix - -2009-04-08 Robert Dewar - - * g-socket.ads: Fix bad syntax in pragma Obsolescent - - * par-ch2.adb (Scan_Pragma_Argument_Association): Check for error of - argument with no identifier following one that has an identifier. Was - missed in some cases. - - * sem_prag.adb (Analyze_Pragma, case Check_Policy): Allow Policy - identifier. - (Analyze_Pragma, case Obsolescent): Allow Message, Version identifiers - - * snames.adb: Add Name_Policy - - * snames.ads: Add Name_Policy - -2009-04-08 Robert Dewar - - * gnat_rm.texi: Minor reformatting - - * par-ch2.adb: Minor reformatting - -2009-04-08 Robert Dewar - - * exp_attr.adb, sem_attr.adb, sem_util.adb: Code clean up. - -2009-04-08 Robert Dewar - - * sem_cat.adb (Check_Categorization_Dependencies): Handle Preelaborate - properly in the presence of Remote_Types or Remote_Call_Interface. - - * sem_util.adb: Add comment. - -2009-04-08 Robert Dewar - - * ug_words: Add /ASSUME_VALID for -gnatB - - * vms_data.ads: Add /ASSUME_VALID for -gnatB - - * sem_cat.adb: Add clarifying commment - - * a-direio.ads (Bytes): Make sure value is non-zero - -2009-04-08 Ed Schonberg - - * sem_util.adb (Is_Variable): If the prefix is an explicit dereference - that does not come from source, check for a rewritten function call in - prefixed notation before other forms of rewriting. - -2009-04-08 Robert Dewar - - * Makefile.rtl: Remove s-strops and s-sopco? from the run time, since - these are now obsolescent units used only for bootrapping with an - older compiler. - -2009-04-08 Robert Dewar - - * gnat_rm.texi: Add documentation for pragma Thread_Local_Storage - - * sem_ch3.adb: Minor comment updates - -2009-04-08 Ed Schonberg - - * inline.adb (Back_End_Cannot_Inline): restrict warning to subprograms - that come from source. - -2009-04-08 Tristan Gingold - - * gcc-interface/gigi.h (enum attr_type): Add ATTR_THREAD_LOCAL_STORAGE. - * gcc-interface/decl.c (prepend_attributes): New case - Pragma_Thread_Local_Storage. - * gcc-interface/utils.c (process_attributes): New case - ATTR_THREAD_LOCAL_STORAGE. - -2009-04-08 Ed Schonberg - - * inline.adb (Back_End_Cannot_Inline): Do not mark a body as inlineable - by the back-end if it contains a call to a subprogram without a - previous spec that is declared in the same unit. - - * errout.ads: Update comments on uses of dirs - -2009-04-08 Robert Dewar - - * exp_ch4.adb (Expand_Concatenate): Make sure nodes are properly typed - -2009-04-08 Tristan Gingold - - * sem_prag.adb: Restrict pragma Thread_Local_Storage to library level - variables. - Set Has_Gigi_Rep_Item flag to TLS variables (to ease gigi work). - -2009-04-08 Vincent Celier - - * prj-nmsc.adb: - (Add_Source): Add the mapping of the unit name to source file name in - the Unit_Sources_HT hash table, if the unit name is not null. - - * prj.adb (Reset): Reset hash table Tree.Unit_Sources_HT - - * prj.ads (Unit_Sources_Htable): New hash table instantiation - (Project_Tree_Data): New component Unit_Sources_HT - -2009-04-08 Thomas Quinot - - * sem_ch8.adb: Minor reformatting. - Minor code reorganization. - -2009-04-08 Robert Dewar - - * snames.h, einfo.adb, einfo.ads, sem_prag.adb, snames.adb, - snames.ads, freeze.adb, par-prag.adb: Add implementation of - pragma Thread_Local_Storage, setting new flag - Has_Pragma_Thread_Local_Storage in corresponding entities. - -2009-04-08 Emmanuel Briot - - * prj.ads: Update comment on switches file - - * prj-nmsc.adb: Code clean up. Use renaming clauses. - -2009-04-08 Robert Dewar - - * exp_ch4.adb (Expand_Concatenate): Further fixes to bounds handling - -2009-04-08 Thomas Quinot - - * ali-util.adb: Minor comment fix - -2009-04-08 Ed Schonberg - - * sem_ch8.adb (Analyze_Use_Type): Improve error message when clause - appears in a context clause, and the enclosing package is mentioned in - a limited_with_clause. - (Use_One_Type): Reject clause if type is still incomplete. - -2009-04-08 Emmanuel Briot - - * prj-nmsc.adb (Check_File, Process_Sources_In_Multi_Language_Mode): - avoid copies of Source_Data variables when possible, since these - involve calls to memcpy() which are done too many times. - -2009-04-08 Robert Dewar - - * exp_ch4.adb (Expand_Concatenate): Clean up code - -2009-04-07 Thomas Quinot - - * exp_ch4.adb (Expand_Concatenate): Add missing conversion to index - type for the case of concatenating a constrained array indexed by an - enumeration type. - -2009-04-07 Ed Schonberg - - * sem_ch6.adb (Check_Conformance): when checking conformance of an - operation that overrides an abstract operation inherited from an - interface, return False if only one of the controlling formals is an - access parameter. - -2009-04-07 Ed Schonberg - - * sem_ch8.adb (Analyze_Object_Renaming): additional error messages - mandated by AI05-105. - -2009-04-07 Vincent Celier - - * prj-nmsc.adb (Get_Mains): Warn if a main is an empty string - -2009-04-07 Thomas Quinot - - * usage.adb: Minor fix in usage message. - - * sem_ch10.adb (Remove_Homonyms): Fix subtype of formal in body to - match declaration; the correct subtype is Node_Id, not Entity_Id, - because the expected node kind is an identifier, not a defining - identifier. - - * switch-c.adb: Minor reformatting. - - * uintp.adb: Minor reformatting. - -2009-04-07 Robert Dewar - - * exp_ch13.adb: Minor reformatting - -2009-04-07 Robert Dewar - - * sem_warn.adb (Check_Infinite_Loop_Warning.Test_Ref): Add defence - against missing parent. - -2009-04-07 Thomas Quinot - - * xoscons.adb: Minor reformatting - -2009-04-07 Robert Dewar - - * rtsfind.ads: Remove obsolete string concatenation entries - -2009-04-07 Robert Dewar - - * exp_ch4.adb (Expand_Concatenate): Redo handling of bounds - -2009-04-07 Ed Schonberg - - * sem_ch10.adb (Check_Body_Required): Handle properly imported - subprograms. - -2009-04-07 Gary Dismukes - - * exp_ch13.adb (Expand_N_Attribute_Definition_Clause, case - Attribute_Address): When Init_Or_Norm_Scalars is True and the object - is of a scalar or string type then suppress the setting of the - expression to Empty. - - * freeze.adb (Warn_Overlay): Also emit the warnings about default - initialization for the cases of scalar and string objects when - Init_Or_Norm_Scalars is True. - -2009-04-07 Bob Duff - - * s-secsta.ads, g-pehage.ads, s-fileio.ads: Minor comment fixes - -2009-04-07 Bob Duff - - * gnat_rm.texi, s-fileio.adb (System.File_IO.Open): New feature: A - Form parameter of Text_Translation=No allows binary mode for Text_IO - files. - - * gnat_rm.texi: Document Form parameter Text_Translation=xxx. - -2009-04-07 Javier Miranda - - * exp_ch5.adb (Expand_Assign_Array): Add implicit conversion when - processing the bounds for bit packed arrays or VM target machines. - -2009-04-07 Thomas Quinot - - * g-sothco.ads (Int_Access): Remove extraneous access type (use - anonymous access instead). - (Get_Socket_From_Set): Fix incorrectly reverted formals - Last and Socket to match the underlying C routine. - - * g-socket.adb, g-socket.ads - (Get): Use named parameter associations instead of positional ones in - call go Get_Socket_From_Set, since this routine has two formals of the - same type. - (Image): New procedure. - - * g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb, - g-socthi-vxworks.ads, g-socthi-mingw.ads, g-socthi.adb, g-socthi.ads: - (C_Ioctl, Syscall_Ioctl): use "access C.int" instead of "Int_Access" - for type of Arg formal. - - * sem_warn.adb: Minor reformatting - -2009-04-07 Ed Schonberg - - * sem_util.adb (Has_Tagged_Component): Fix typo in loop that iterates - over record components. - -2009-04-07 Nicolas Roche - - * gsocket.h: - Don't include resolvLib.h on VxWorks 6 (kernel and rtp). This library - has disappeared between VxWorks 6.4 and VxWorks 6.5 - In RTP mode use time.h instead of times.h - -2009-04-07 Robert Dewar - - * exp_ch4.adb (Expand_N_Op_Concat): Improve lower bound handling - -2009-04-07 Kevin Pouget - - * exp_dist.adb: Modify Build_From_Any_Fonction procedure to correct - expanded code for constrained types. - -2009-04-07 Ed Schonberg - - * sem_ch4.adb (Analyze_Overloaded_Selected_Component): implement - AI05-105: in an object renaming declaration, anonymousness is a name - resolution rule. - - * sem_ch8.adb (Analyze_Object_Renaming): Ditto. - -2009-04-07 Arnaud Charlet - - * g-comlin.adb (Expansion): Fix old regression: also return directory - names when matching. - -2009-04-07 Robert Dewar - - * exp_ch4.adb: - (Expand_N_Op_Concat): Call Expand_Concatenate for all cases - (Expand_Concatenate): New name for Expand_Concatenate_String which has - been rewritten to handle all types. - (Expand_Concatenate_Other): Remove - -2009-04-07 Ed Schonberg - - * lib-xref.adb (Generate_Reference): A default subprogram in an - instance appears within the tree for the instance, but generates an - implicit reference in the ALI. - -2009-04-07 Javier Miranda - - * sem_ch3.adb (Build_Derived_Record_Type): When processing a tagged - derived type that has discriminants, propagate the list of interfaces - to the corresponding new base type. In addition, propagate also - attribute Limited_Present (found working in this patch). - -2009-04-07 Robert Dewar - - * exp_ch4.adb: Rewrite concatenation expansion. - -2009-04-07 Ed Schonberg - - * sem_ch8.adb (Restore_Scope_Stack): First_Private_Entity is only - relevant to packages. - -2009-04-07 Robert Dewar - - * sem_attr.adb: Minor reformatting - - * sem_ch6.adb: Minor reformatting - -2009-04-07 Tristan Gingold - - * socket.c: Add more protections against S_resolvLib_ macros. - -2009-04-07 Thomas Quinot - - * sem_attr.adb: Minor reformatting - -2009-04-07 Ed Schonberg - - * sem_ch6.adb (New_Overloaded_Entity): New predicate - Is_Overriding_Alias to handle properly types that inherit two homonym - operations that have distinct dispatch table entries. - -2009-04-07 Emmanuel Briot - - * s-regexp.adb (Create_Mapping): Ignore excaped open parenthesis when - looking for the end of a parenthesis group - -2009-04-07 Tristan Gingold - - * gsocket.h Don't #include resolvLib.h if __RTP__ is defined. - - * socket.c Don't use resolvLib_ macros if not defined. - -2009-04-07 Robert Dewar - - * g-socket.adb: Minor reformatting. - - * g-socthi-mingw.adb: Minor reformatting - - * g-sothco.ads: Minor reformatting - - * exp_ch4.adb: - (Expand_Concatenate_String): Complete rewrite to generate efficient code - inline instead of relying on external library routines. - - * s-strops.ads, s-sopco5.ads, s-sopco5.adb, s-sopco4.ads, s-sopco4.adb, - s-sopco3.ads, s-sopco3.adb, s-strops.adb: Note that this unit is now - obsolescent - -2009-04-07 Ed Schonberg - - * sem_attr.adb: - (Eval_Attribute): for attributes of array objects that are not strings, - attributes are not static if nominal subtype of object is unconstrained. - -2009-04-07 Ed Schonberg - - * sem_ch6.adb (New_Overloaded_Entity): If two implicit homonym - operations for a type T in an instance do not override each other, - when T is derived from a formal private type, the corresponding - operations inherited by a type derived from T outside - of the instance do not override each other either. - -2009-04-07 Robert Dewar - - (Osint.Fail): Change calling sequence to have one string arg - (Make.Make_Failed): Same change - All callers are adjusted to use concatenation - -2009-04-07 Robert Dewar - - * exp_ch4.adb: Fix documentation typo - -2009-04-07 Robert Dewar - - * tbuild.ads: Minor reformatting - -2009-04-07 Javier Miranda - - * exp_disp.adb (Make_DT): Avoid the generation of the OSD_Table - when compiling under ZFP runtime. - -2009-04-07 Robert Dewar - - * g-comlin.adb: Minor reformatting - -2009-04-07 Thomas Quinot - - * socket.c, g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb, - g-socthi-vxworks.ads, g-socthi-mingw.adb, g-socthi-mingw.ads, - g-socthi.adb, g-socthi.ads, g-socket.adb, g-socket.ads, g-sothco.ads: - Remove dynamic allocation of Fd_Set in Socket_Set_Type objects. - -2009-04-07 Robert Dewar - - * gnat_ugn.texi: Document -gnatDnn/-gnatGnn - - * opt.ads (Sprint_Line_Limit): New parameter - - * sprint.adb: Usa Sprint_Line_Limit instead of Line_Limit throughout - - * switch-c.adb: Recognize -gnatDnnn and -gnatGnnn switches - - * usage.adb: Output information for -gnatGnn -gnatDnn - -2009-04-07 Robert Dewar - - * make.adb: Minor reformatting - -2009-04-07 Robert Dewar - - * mlib-tgt-specific-vms-alpha.adb: Minor reformatting - -2009-04-07 Robert Dewar - - * mlib-tgt-specific-vms-ia64.adb: Minor reformatting - -2009-04-07 Robert Dewar - - * checks.adb: - Remove Assume_Valid parameter from In_Subrange_Of calls - - * sem_eval.adb: - (Is_Subrange_Of): Remove Assume_Valid parameter, not needed - (Is_In_Range): Remove incorrect use of Assume_Valid - (Is_Out_Of_Range): Remove incorrect use of Assume_Valid - - * sem_eval.ads: - (Is_Subrange_Of): Remove Assume_Valid parameter, not needed - (Is_In_Range): Documentation cleanup - (Is_Out_Of_Range): Documentation cleanup - - * gnat_rm.texi: - Add documentation for Assume_No_Invalid_Values pragma - - * sem_ch12.adb: Minor reformatting - - * sem_ch6.adb: (Check_Conformance): Avoid cascaded errors - - * sem_prag.adb: Improve error message. - - * gnatchop.adb, osint.ads, sinput.adb, sinput.ads, styleg.adb: - LF/CR no longer recognized as line terminator - - * switch.ads: Minor documentation improvement - - * vms_data.ads: Minor reformatting - -2009-04-07 Robert Dewar - - * checks.adb (Determine_Range): Add Assume_Valid parameter - - * checks.ads (Determine_Range): Add Assume_Valid parameter - - * errout.adb (Error_Msg_NEL): Use Suppress_Loop_Warnings rather than - Is_Null_Loop to suppress warnings in a loop body. - - * exp_ch4.adb: - (Rewrite_Comparison): Major rewrite to accomodate invalid values - - * exp_ch5.adb: - (Expand_N_Loop_Statement): Delete loop known not to execute - - * opt.ads: - (Assume_No_Invalid_Values): Now set to False, and as documented, this - fully enables the proper handling of invalid values. - - * sem_attr.adb: - New calling sequence for Is_In_Range - - * sem_ch5.adb: - (Analyze_Iteration_Scheme): Accomodate possible invalid values - in determining if a loop range is null. - - * sem_eval.adb: - (Is_In_Range): Add Assume_Valid parameter - (Is_Out_Of_Range): Add Assume_Valid_Parameter - (Compile_Time_Compare): Major rewrite to accomodate invalid values and - also to do more accurate and complete range analysis, catching more - cases. - - * sem_eval.ads: - (Is_In_Range): Add Assume_Valid parameter - (Is_Out_Of_Range): Add Assume_Valid_Parameter - - * sem_util.adb: - New calling sequence for Is_In_Range - - * sinfo.adb: - (Suppress_Loop_Warnings): New flag - - * sinfo.ads: - (Is_Null_Loop): Update documentation - (Suppress_Loop_Warnings): New flag - - * gnat_ugn.texi: Document -gnatB switch - -2009-04-07 Arnaud Charlet - - * gnatvsn.ads: Bump version number. - -2009-04-07 Thomas Quinot - - * exp_ch3.adb: Minor rewording (comments) - -2009-04-07 Robert Dewar - - * exp_disp.adb: Minor reformatting - -2009-04-07 Eric Botcazou - - * gcc-interface/decl.c (gnat_to_gnu_entity) : Test the - underlying type. - * gcc-interface/trans.c (lvalue_required_p): Likewise. - -2009-04-07 Eric Botcazou - - * gcc-interface/trans.c (Attribute_to_gnu) : - Do not convert the result. Remove obsolete comment. - -2009-04-07 Eric Botcazou - - * gcc-interface/trans.c (establish_gnat_vms_condition_handler): Clear - DECL_CONTEXT. - (Subprogram_Body_to_gnu): Fix pasto. - -2009-04-07 Eric Botcazou - - * gcc-interface/gigi.h (standard_datatypes): Remove ADT_void_type_decl. - (void_type_decl_node): Remove. - (init_gigi_decls): Likewise. - (gnat_install_builtins): Declare. - (record_builtin_type): Likewise. - (create_type_stub_decl): Likewise. - * gcc-interface/decl.c (gnat_to_gnu_entity) : Use void_type. - (gnat_to_gnu_entity) : Make fat and thin pointer types - artificial. - : Use the index types, not only their name, in the - record giving the names of the bounds, if any. - For a packed array type, make it artificial only if the base type - was artificial as well. Remove redundant statement. - (gnat_to_gnu_entity) : Do not create TYPE_DECL for - dummy types. - Use create_type_stub_decl to build the TYPE_STUB_DECL of types. - (rest_of_type_decl_compilation_no_defer): Likewise. - * gcc-interface/misc.c (gnat_printable_name): Add missing guard. - * gcc-interface/utils.c (make_dummy_type): Always create TYPE_STUB_DECL - and use create_type_stub_decl to build it. - (gnat_pushdecl): Rewrite condition. - (gnat_install_builtins): Remove bogus declaration. - (record_builtin_type): New function. - (finish_record_type): Use create_type_stub_decl to build TYPE_STUB_DECL - of types. - (create_type_stub_decl): New function. - (create_type_decl): Assert that the type is not dummy. If the type - hasn't been named yet, equate the TYPE_STUB_DECL to the created node. - (build_vms_descriptor32): Do not create TYPE_DECL for the descriptor. - (build_vms_descriptor): Likewise. - (init_gigi_decls): Delete and move bulk of code to... - * gcc-interface/trans.c (gigi): ...here. Use record_builtin_type. - (emit_range_check): Add gnat_node parameter. - (emit_index_check): Likewise. - (emit_check): Likewise. - (build_unary_op_trapv): Likewise. - (build_binary_op_trapv): Likewise. - (convert_with_check): Likewise. - (Attribute_to_gnu): Adjust calls for above changes. - (call_to_gnu): Likewise. - (gnat_to_gnu): Likewise. - (assoc_to_constructor): Likewise. - (pos_to_constructor): Likewise. - (Sloc_to_locus): Set BUILTINS_LOCATION for Standard_Location nodes. - (process_type): Do not create TYPE_DECL for dummy types. - -2009-04-07 Eric Botcazou - - * gcc-interface/decl.c (gnat_to_gnu_entity): Reorder local variables. - * gcc-interface/trans.c: Fix formatting throughout. Fix comments. - * gcc-interface/utils.c: Fix comments. - -2009-04-07 Eric Botcazou - - * gcc-interface/decl.c (compile_time_known_address_p): Rewrite and - move around. - (gnat_to_gnu_type): Move around. - (get_unpadded_type): Likewise. - * gcc-interface/utils.c (update_pointer_to): Use synthetic macro. - Tidy comments. - -2009-04-07 Eric Botcazou - - * gcc-interface/trans.c (check_for_eliminated_entity): New function. - (Attribute_to_gnu): Invoke it for Access- and Address-like attributes. - (call_to_gnu): Invoke it instead of manually checking. - -2009-04-04 Eric Botcazou - - * gcc-interface/utils.c (finish_record_type): Force structural equality - checks if the record type is discriminated. - -2009-03-31 Eric Botcazou - - * system-linux-alpha.ads (Functions_Return_By_DSP): Remove. - * system-linux-mips.ads (Functions_Return_By_DSP): Likewise. - * system-linux-mipsel.ads (Functions_Return_By_DSP): Likewise. - * system-linux-s390.ads (Functions_Return_By_DSP): Likewise. - * system-linux-s390x.ads (Functions_Return_By_DSP): Likewise. - * system-linux-sparc.ads (Functions_Return_By_DSP): Likewise. - * system-linux-sparcv9.ads (Functions_Return_By_DSP): Likewise. - -2009-03-30 Paolo Bonzini - - * gcc-interface/decl.c (maybe_pad_type): Use TREE_OVERFLOW instead - of TREE_CONSTANT_OVERFLOW. - -2009-03-30 Joseph Myers - - PR rtl-optimization/323 - * gcc-interface/misc.c (gnat_post_options): Set - flag_excess_precision_cmdline. Give an error for - -fexcess-precision=standard for processors where the option is - significant. - -2009-03-27 H.J. Lu - - PR c/39323 - * gcc-interface/utils.c (create_field_decl): Use "unsigned int" - on bit_align. - -2009-03-11 Olivier Hainque - - * gcc-interface/trans.c (gnat_to_gnu) : In range - checks processing, remove unintended TREE_TYPE walk on index type. - -2009-03-01 Eric Botcazou - - PR ada/39264 - * gcc-interface/decl.c (gnat_to_gnu_entity) : Do no - call make_packable_type on fat pointer types. - : Likewise. - : Call make_packable_type on all record types - except for fat pointer types. - (make_packable_type): Likewise. - (gnat_to_gnu_field): Likewise. - -2009-02-28 Eric Botcazou - - * gcc-interface/Makefile.in (cygwin/mingw): Revert accidental - EH_MECHANISM change made on 2007-12-06. - -2009-02-26 Andreas Schwab - - PR ada/39172 - * Makefile.in (srcdir): Set to @top_srcdir@ instead of @srcdir@. - * gcc-interface/Makefile.in: Change all uses of $(srcdir), - $(fsrcdir) and $(fsrcpfx) to add ada subdir. - (AWK): Substitute. - (target_cpu_default): Substitute. - -2009-02-25 Laurent GUERBY - - PR ada/39221 - * a-teioed.adb (Expand): Fix Result overflow. - -2009-02-25 Laurent GUERBY +2010-01-25 Thomas Quinot - * gcc-interface/Makefile.in: Fix multilib handling for - sparc64-linux. + * scos.ads: Update specification. -2009-02-23 Rainer Orth +2010-01-25 Ed Schonberg - * s-oscons-tmplt.c [__osf__ && !_SS_MAXSIZE]: Undef AF_UNIX6. + * sem_ch6.adb (Process_PPCs): If a postcondition is present and the + enclosing subprogram has no previous spec, attach postcondition + procedure to the defining entity for the body. -2009-02-18 H.J. Lu +2010-01-25 Ed Schonberg - * gcc-interface/misc.c (gnat_post_options): Turn off warn_psabi. + * exp_aggr.adb (Build_Record_Aggr_Code); Do not generate call to + initialization procedure of the ancestor part of an extension aggregate + if it is an interface type. -2009-02-16 Eric Botcazou +2010-01-25 Vincent Celier - * gcc-interface/deftarg.c: Remove. + * gnatlink.adb (Process_Binder_File): The directory for the shared + version of libgcc in the run path options is found in the subdirectory + indicated by __gnat_default_libgcc_subdir. + * link.c: Declare new const char * __gnat_default_libgcc_subdir for + each platform. -2009-02-10 Olivier Hainque - Eric Botcazou +2010-01-25 Ed Schonberg - * gcc-interface/decl.c (enum alias_set_op): New enumeration. - (copy_alias_set): Rename into... - (relate_alias_sets): ...this. Add third parameter OP. Retrieve the - underlying array of unconstrained arrays for the new type as well. - If the old and new alias sets don't conflict, make one a subset of - the other as per the OP parameter. - (gnat_to_gnu_entity): Adjust calls to copy_alias_set. - : Do not copy the alias set for derived types. - For all types, make the alias set of derived types a superset of - that of their parent type. - (make_aligning_type): Adjust calls to copy_alias_set. - (make_packable_type): Likewise. - * gcc-interface/trans.c (gnat_to_gnu): - Check for alias set conflict instead of strict equality to issue the - warning. + * sem_prag.adb: More flexible pragma Annotate. -2009-02-09 Eric Botcazou +2010-01-22 Eric Botcazou - * gcc-interface/decl.c (gnat_to_gnu_entity) : - Set TYPE_NONALIASED_COMPONENT on the array type only if appropriate. - (copy_alias_set): Assert that arrays have the same aliasing settings. - (substitute_in_type) : Copy TYPE_NONALIASED_COMPONENT. + * system-linux-armel.ads (Stack_Check_Probes): Set to True. + * system-linux-armeb.ads (Stack_Check_Probes): Likewise. -2009-02-08 Eric Botcazou +2010-01-18 Eric Botcazou - * gcc-interface/decl.c (gnat_to_gnu_entity) : - Set TYPE_NONALIASED_COMPONENT on the array type. + * gcc-interface/utils.c (create_var_decl_1): Fix formatting nits. -2009-01-31 Laurent GUERBY +2010-01-18 Jan Hubicka - * gcc-interface/Makefile.in: Fix mipsel linux handling. + PR middle-end/42068 + * gcc-interface/utils.c (create_var_decl_1): Do not set COMMON flag for + unit local variables. -2009-01-16 Jakub Jelinek +2010-01-17 Laurent GUERBY - * gcc-interface/Makefile.in: Fix multilib handling for - powerpc64-linux. + * gcc-interface/Makefile.in: Fix typo in arm*-*-linux-gnueabi. -2009-01-12 Eric Botcazou +2010-01-11 Mikael Pettersson - * gcc-interface/decl.c (gnat_to_gnu_entity) : Really strip - only useless conversions around renamed objects. + * gcc-interface/Makefile.in: Add arm*-*-linux-gnueabi. + * system-linux-armeb.ads, system-linux-armel.ads: New files. -2009-01-11 Eric Botcazou +2010-01-09 Simon Wright - * gcc-interface/decl.c (gnat_to_gnu_entity) : Put - the _Tag field before any discriminants in the field list. - (components_to_record): Remove obsolete comment. + PR ada/42626 + * gcc-interface/Makefile.in (gnatlib-shared-darwin): Add missing + end-quote. -Copyright (C) 2009 Free Software Foundation, Inc. +Copyright (C) 2010 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright