diff options
author | Arnaud Charlet <charlet@gcc.gnu.org> | 2005-02-10 15:00:09 +0100 |
---|---|---|
committer | Arnaud Charlet <charlet@gcc.gnu.org> | 2005-02-10 15:00:09 +0100 |
commit | fc5a191d6f09da2a45030cf146b7a00c66cee568 (patch) | |
tree | 1ba30738b4eda4a2e7b1517e2acb509493988e16 | |
parent | 984a64bcf34d7a17b497700058ce553773b7d583 (diff) | |
download | gcc-fc5a191d6f09da2a45030cf146b7a00c66cee568.zip gcc-fc5a191d6f09da2a45030cf146b7a00c66cee568.tar.gz gcc-fc5a191d6f09da2a45030cf146b7a00c66cee568.tar.bz2 |
Resync.
From-SVN: r94827
-rw-r--r-- | gcc/ada/ChangeLog | 728 |
1 files changed, 728 insertions, 0 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index f6b7f68..75b198e 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,731 @@ +2005-02-09 Doug Rupp <rupp@adacore.com> + + * g-expect-vms.adb (Non_Blocking_Spawn): Separate out. + * g-enblsp-vms-alpha.adb g-enblsp-vms-ia64.adb: New subunits. + +2005-02-09 Doug Rupp <rupp@adacore.com> + + * gnatchop.adb (dup, dup2), + g-dirope.adb (closedir, opendir, rmdir): Reference via System.CRTL. + + * gnatlbr.adb (mkdir), + mlib-tgt-vms-ia64.adb (popen, plose): Import with decc$ prefix. + + * s-crtl.ads (closdir, dup, dup2, opendir, rmdir): Import. + +2005-02-09 Doug Rupp <rupp@adacore.com> + + * s-tpopde-vms.adb: Add pragma Warnings (Off) for Task_Id conversions. + +2005-02-09 Robert Dewar <dewar@adacore.com> + Thomas Quinot <quinot@adacore.com> + Javier Miranda <miranda@adacore.com> + Pascal Obry <obry@adacore.com> + Ed Schonberg <schonberg@adacore.com> + Doug Rupp <rupp@adacore.com> + Gary Dismukes <dismukes@adacore.com> + Richard Kenner <kenner@vlsi1.ultra.nyu.edu> + + * g-zstspl.ads: New file. + + * a-chahan.ads, a-chahan.adb: Add declarations from AI-285 + + * a-string.ads: Add pragma Ada_05 for wide_wide_space to get warning in + Ada 95 mode + Add definition of Wide_Wide_Space for AI-285 + + * impunit.ads, impunit.adb, sem_ch10.adb: Complete rewrite and new + interface (to support Ada 95 and Ada 2005 units). + Add Unbounded_IO files + Add entries for Wide_Wide packages for AI-285 + Add list of containers packages to Ada 2005 unit list + + * a-swuwti.ads, a-swuwti.adb, a-suteio.ads, a-suteio.adb: Updates to + support new Unbounded_IO package cleanly. + + * g-utf_32.ads, g-utf_32.adb: New files. + + * Makefile.rtl: Add entry for g-utf_32 + Add new files for Unbounded_IO + Adjust make file for new AI-285 wide wide packages + Add AI-302 containers to the run time. + + * a-stwibo.adb, a-stwibo.ads, a-stwisu.adb, a-stwisu.ads, + a-strbou.ads, a-strbou.adb, a-strsup.ads, a-strsup.adb: New + subprograms for AI-301. + + * a-stwiun.adb, a-stwiun.ads: Minor reformatting. + + * a-stunau.ads: Minor comment correction + + * rtsfind.ads, rtsfind.adb: Add definitions for Wide_Wide attributes + etc. + Also extend Text_IO_Kludge to support Wide_Wide_Text_IO + (Check_RPC): Update to match changes in expanded code. + Clean up unused entity. + + * exp_ch3.ads, exp_ch3.adb: Fix various places where Wide_Wide_String + was not taken into account. + This includes proper initialization with Normalize_Scalars. + (Get_Simple_Init_Val): Major rewrite for initialize scalars and + normalize scalars cases (particularly the latter) to do a better job + of finding invalid representations. + + * s-scaval.ads, s-scaval.adb: Add values for zero invalid values + + * s-strops.ads, s-strops.adb: Remove string normalize routines, never + used + + * exp_dist.adb: Add support for wide wide character type + (Expand_Receiving_Stubs_Bodies): For a package declaration that has a + private part, generate stub bodies at the end of the private part, + not the visible part. + (Add_RACW_Primitive_Operations_And_Bodies): Add last missing code for + PolyORB support. + (Add_Obj_RPC_Receiver_Completion): Add PCS-specific subprograms and + generic wrapper to execute final processing after completing the + expansion of the RPC receiver for an RACW. + + * snames.h, snames.ads, snames.adb: Add definitions for wide_wide + packages and attributes. + (Preset_Names): Addition of the new reserved words of Ada 2005, + that is interface, overriding and synchronized. + (Get_Pragma_Id): Give support to the use of the new reserved word + "interface" as a pragma name. + (Is_Pragma_Name): Give support to the use of the new reserved word + "interface" as a pragma name. + (Preset_Names): Add stream_size string for the Stream_Size Ada2005 + attribute implementation. + + * exp_attr.adb (Expand_Attribute_Reference): Do not apply validity + checks to entities that are output parameters of Asm operations. + Handle the Stream_Size attribute. + Add implementation of Wide_Wide_Value, Wide_Wide_Image, Wide_Wide_Width + + * exp_imgv.ads, exp_imgv.adb: Add support for wide wide character type + + * sem_attr.adb (Eval_Attribute): Raise compile-time constraint error + for second parameter being 0.0. + Add support for wide wide character type. + (Analyze_Attribute, Eval_Attribute): Handle the Stream_Size attribute. + + * s-valwch.adb, s-valwch.ads, s-imgwch.ads, s-imgwch.adb, + s-wchstw.ads, s-wchstw.adb, s-wchwts.adb, s-wchwts.ads, + s-widwch.adb, s-widwch.ads, s-wwdcha.adb, s-wwdcha.ads, + s-wwdenu.adb, s-wwdenu.ads, s-wwdwch.adb, s-wwdwch.ads: Add support + for wide wide character cases. + + * cstand.adb: Create entities for Wide_Wide_Character and + Wide_Wide_String. + + * i-c.ads, i-c.adb: Fix not raising CE for null wide strings in + accordance with AI-258. + Add new declarations for 16/32 bit C character types (Part of AI285) + + * einfo.ads, einfo.adb (Is_Obsolescent, Is_Ada_2005): New flag + (Obsolescent_Warning): New field + (Rep_Clause): New local subprogram used to share code. Returns the rep + clause for which the name is given in parameter. + (Has_Stream_Size_Clause): New routine. + (Stream_Size_Clause): Idem. Implementation is based on Rep_Clause. + (Address_Clause): Implementation is now using Rep_Clause. + (Alignment_Clause): Idem. + (Size_Clause): Idem. + + * lib-xref.adb (Generate_Reference): Test for reference to Ada 2005 + entity in non-Ada 2005 mode and generate warning. + + * par-prag.adb: Add handling of one argument form for pragma Ada_05. + (Prag): Code cleanup. Remove old gnat pragma "overriding" + + * sem_prag.adb: Add handling of one argument form for pragma Ada_05 + (Analyze_Pragma, case Elaborate, Elaborate_All): Do not disable warnings + on the named unit if the pragma is not in the current compilation unit, + so that elaboration calls in the current unit can set up an elaboration + dependency on the named unit, as needed. + (Analyze_Pragma, case Obsolescent): Allow pragma to be used for library + subprogram as well as for subprograms declared within a package. + (Analyze_Pragma, Sig_Flags): Code cleanup. Remove support for the GNAT + pragma overriding. + + * krunch.ads, krunch.adb: Add special handling of Wide_Wide (krunched + to z) to avoid some instances of duplication for Wide_Wide packages. + + * namet.ads, namet.adb: Implement encoding (WWhhhhhhhh) for wide wide + characters. + + * scn.adb: Char_Literal_Value field is now a Uint + + * scng.adb: Significant rewrite to handle new Ada 2005 features + allowing wide and wide wide characters in program text, e.g. for + identifiers, as described in AI-285. + (Set_Reserved): New procedure, makes setting up keywords cleaner. + (Initialize_Scanner): Register the new reserved words of Ada 2005. + (Scan): Give support to the new reserved words. + + * par-ch2.adb (P_Identifier): Compiling in Ada95 mode, generate a + warning notifying that interface, overriding, and synchronized are + new reserved words. + (P_Pragma): Allow the use of the new reserved word "interface" as + a pragma name. + + * gnatls.adb, gnatbind.adb, + ali-util.adb, binde.adb, ali.ads, ali.adb: Code cleanup. Rename + identifiers named "interface" to "SAL_Interface". + + * bindgen.adb (Gen_Main_Ada): Add support for the new SEH + (Structured Exception handling). + (Gen_Main_C): Idem. + + * bindgen.adb: + (Gen_Main_Ada): Set the default exit code if specified. + (Gen_Main_C): Likewise. + Part of *DC20-006. + (Gen_Output_File_C): Remove redundant output of gnat_exit_status. + Code cleanup. Rename identifiers named "interface" to "SAL_Interface" + + * switch-b.adb, bindusg.adb, opt.ads, vms_data.ads: Add handling of + new -Xnnn switch. + + * mlib-prj.adb, mlib.adb: Code cleanup. Rename one identifier that + has a collision with the new Ada 2005 "interface" reserved word. + + * par-ch3.adb (P_Defining_Identifier): Compiling in Ada95 mode, + generate a warning notifying that interface, overriding, and + synchronized are new reserved words. + + * scans.ads (Token_Type): Addition of the tokens corresponding to the + new reserved words of Ada 2005: Tok_Interface, Tok_Overriding + and Tok_Synchronized. + + * sem_res.adb (Resolve_Actuals): Change error messages to refer to + "dispatching" rather than "primitive" operations, since dispatching + calls are now allowed to abstract formal subprograms (which are not + primitive). + Char_Literal_Value field is now a Uint + (Resolve_Slice): If the prefix is an access to an unconstrained array, + compute the actual subtype of the designated object to impose the proper + index constraints. + (Resolve_Selected_Component): Do not insert an access check if the + prefix is an access type: such a node is expanded into an explicit + dereference, on which the access check is performed anyway. Removes + expensive duplicate checks. + (Resolve_Call): Use new flag Is_Obsolescent and field + Obsolescent_Warning so that pragma Obsolescent works on library + subprograms. + Add support for wide wide character type + (Resolve_Allocator): Replace the error message on wrong null-exclusion + value by a warning message. + (Resolve_Type_Conversion): If the mixed-mode expression is interpreted + as fixed-point, and one of the operands is non-static and universal, it + can only be an illegal exponentiation operation, in which case there is + no real value to retrieve. + + * exp_strm.adb: Add support for wide wide character type + (Build_Elementary_Input_Call): Compute the size of the stream element by + querying the rep chain to find the Stream_Attribute attribute value. + (Build_Elementary_Write_Call): Ditto. + + * sem_aggr.adb: Char_Literal_Value field is now a Uint + Add support for wide wide character type + Replace the error messages on wrong null-exclusion value by warnings + as described in Ada 2005. + (Resolve_Extension_Aggregate): Document the fact that the error + message on class-wide expressions in extensions aggregates. + + * sem_case.adb: Add support for wide wide character type + + * sem_ch13.adb: Add support for wide wide character type + (Analyze_Attribute_Definition_Clause): Handle the Stream_Size attribute. + + * sem_ch3.adb: Add support for wide wide character type + (Process_Subtype): If constraint is illegal for the type, set Ekind of + now-useless Itype, to prevent cascaded errors on a compiler built + without -gnatp. + + * sem_ch8.adb: Add with and use of Sem_Disp. + (Analyze_Subprogram_Renaming): Replace unclean uses of + Corresponding_Spec with Corresponding_Formal_Spec (and delete setting + of Corresponding_Spec to Empty). + (Attribute_Renaming): Replace use of Corresponding_Spec with + Corresponding_ Formal_Spec and simplify condition. + (Use_One_Package): Check that scope of homonym of identifier is defined, + before checking whether it is a wrapper package. + Add support for wide wide character type + + * sem_eval.adb: Add support for wide wide character type. + (Eval_Arithmetic_Op): Check for compile time known signed integer + overflow in the non-static case. + (Subtypes_Statically_Match): A formal scalar type and its base type do + not statically match. + + * sem_util.adb (Collect_Primitive_Operations): Minor change of "/=" to + "not in" for test of N_Formal_Subprogram_Declaration (which is now a + subtype). + (Unit_Declaration_Node): Ditto. + (Is_Variable_Prefix): For the case of an indexed component whose prefix + has a packed array type, the prefix has been rewritten into a type + conversion. Determine variable-ness from the converted expression. + Handle wide wide character cases. + + * stand.ads: Add types Wide_Wide_Character and Wide_Wide_String + + * stringt.ads, stringt.adb: Handle full UTF-32 range. + Remove ["0A"] from comment, since it can look like a line terminator. + Currently we don't permit this, but this is under discussion by the + ARG, and it is easy enough to use a different example. + + * s-wchcon.ads, s-wchcnv.ads, s-wchcnv.adb: Add new subprograms for + handling UTF-32 encoding for wide wide character. + Implement new brackets coding ["hhhhhhhh"] + Add UTF-8 encodings for full UTF-32 range + + * ttypes.ads: Add definition of Standard_Wide_Wide_Character_Size + + * types.h, types.ads, types.adb: Wide_Wide_Character now has full 31 + bit range Add full UTF-32 support. + (RT_Exception_Code): Addition of CE_Null_Not_Allowed; used to + notify that constraint error will be raised at run-time + because a null value is assigned to a null-excluding object. + Remove some obsolete declarations and make Char_Code + unsigned. + + * a-except.adb (Rcheck_30): New subprogram. Addition of the message + corresponding to CE_Null_Not_Allowed, and adjust the output of all the + Rcheck subprograms. + + * checks.adb (Check_Null_Not_Allowed): Replace the error message on + wrong null-exclusion value by a warning message. + (Enable_Range_Check): Do range check if the prefix is an + explicit dereference whose designated object is an unconstrained array. + Current algorithm for removing duplicate checks is over-eager in this + case. + + * sem_ch5.adb (Analyze_Assignment): Replace the error messages on wrong + null-exclusion value by a warning message + + * atree.h, atree.ads, atree.adb: Remove Char_Code field support + completely. Add support for Uint2 field + + sem_ch2.adb, exp_ch11.adb, exp_dbug.adb, + exp_prag.adb: Char_Literal_Value field is now a Uint. + + * exp_util.adb (Insert_Actions): Replace + N_Formal_Subprogram_Declaration by + N_Formal_{Abstract|Concrete}_Subprogram_Declaration. + Char_Literal_Value field is now a Uint. + + * sinfo.ads, sinfo.adb (Corresponding_Formal_Spec): New function + defined for subprogram renaming declarations. When set, the field + indicates the defining entity of a corresponding formal subprogram + when the renaming corresponds to a formal subprogram association in an + instantiation. + (Set_Corresponding_Formal_Spec): New procedure to return + Corresponding_Formal_Spec field. + Minor changes of "=" to "in" in tests of N_Formal_Subprogram_Declaration + (which is now a subtype). + Char_Literal_Value field is now a Uint + + * exp_disp.ads, exp_disp.adb (Make_DT): Generate code that moves the + pointer to the base of the dispatch table. + Minor changes to comments. + (Controlling_Type): New function for determining the tagged type + associated with a tagged primitive subprogram. + (Expand_Dispatching_Call): Add support for a controlling actual that is + directly a value of type Ada.Tag rather than a tagged object. + + * i-cpp.ads, i-cpp.adb, a-tags.ads, a-tags.adb: Update documentation + describing the new layout. + (Dispatch_Table): The expander computes the actual array size, allocates + the Dispatch_Table record accordingly, and generates code that displaces + the base of the record after the Typeinfo_Ptr component. The access to + these components is done by means of local functions. + (Offset_To_Top): New function. + (Typeinfo_Ptr): New function. + (Get_TSD): Modified to access the new position of the TSD. + (Set_TSD): Modified to save the TSD in its new position. + + * par-ch12.adb (P_Formal_Subprogram_Declaration): Add parsing for the + case of formal abstract subprograms. Add check and message for -gnat05. + Update comments. + + * sem_ch12.adb: Add with and use for Sem_Disp. + (Analyze_Associations): Minor change from "=" to "in" for use of + N_Formal_Subtype_Declaration (which is now a subtype). + (Set_Analyzed_Formal): Minor changes from "=" to "in" for uses of + N_Formal_Subtype_Declaration (which is now a subtype). + (Analyze_Formal_Subprogram): Add handling for + N_Formal_Abstract_Subprogram, marking the formal as abstract and + dispatching, setting the controlling status of the formal parameters + and result, and issuing an error if there is no controlling type for + the formal subprogram. + (Instantiate_Formal_Subprogram): Rather than setting Corresponding_Spec, + which is an unclean use of that field, we set the new field + Corresponding_Formal_Spec to make the formal subprogram available to + processing in Analyze_Subprogram_Declaration. + (Analyze_Formal_{Discrete, Decimal_Fixed_Point, Fixed_Point, + Floating_Point, Modular_Integer, Signed_Integer}_Type: Make formal type + Constrained, so that it is is does not statically match its anonymous + base type. + + * sem_ch6.adb (Analyze_Subprogram_Specification): Include test for + abstract formal subprograms in error check for functions returning + abstract types. Set scope of new designator for + a parameterless subprogram, so that it is available when checking the + body for nested subprograms, before full analysis of said body. + (Analyze_Subprogram_Body): Warn on inlining bodies with nested + subprogram only if inner one comes from source. + (Analyze_Function_Call): If the call is given in object notation, the + analysis of the name rewrites the node and analyzes it with the proper + argument list. After analyzing the name, if the call has been rewritten + and the result type is set, no further analysis is needed. + (Analyze_Return_Type): Subsidiary to Process_Formals: analyze subtype + mark in function specification, in a context where the formals are + visible and hide outer homographs. + + * sem_disp.adb (Check_Controlling_Type): Relax the check for same scope + as the tagged type for the cases of abstract formal subprograms and + renamings of those. Clean up spec comments. + (Check_Dispatching_Context): Add error message to indicate "abstract + procedure", covering the case of a call to a formal abstract procedure + that has statically tagged operands. + (Check_Dispatching_Call): Check for the case of an actual given by + a tag-indeterminate function call whose type is an ancestor of the + containing call's associated tagged type. This situation can occur + for inherited primitives with function defaults. In this case we + use the tagged type's tag directly as the controlling argument for + the calls. + (Expand_Call): Name change on call to Expand_Dispatch_Call. + + * sprint.adb (Sprint_Node_Actual): Split + N_Formal_Subprogram_Declaration into two alternatives for the new + cases N_Formal_Abstract_Subprogram_Declaration and + N_Formal_Concrete_Subprogram_Declaration. + Char_Literal_Value field is now a Uint. + + * trans.c: Get rid of junk Uint2 reference. + Char_Literal_Value field is now a Uint. + (gnat_to_gnu, case N_Aggregate): Check TYPE_UNCHECKED_UNION_P. + (gigi): Correct third arg to gimplify_body. + + * ada-tree.h: (TYPE_UNCHECKED_UNION_P): New flag. + (TYPE_LANG_FLAG_0): Check for record or union. + + * treepr.adb: Char_Literal_Value field is now a Uint + + * uintp.h, uintp.ads, uintp.adb: Add new routines UI_To_CC and + UI_From_CC. + + * widechar.ads, widechar.adb (Is_UTF_32_Non_Graphic): New function + Add full UTF-32 support + Char_Code is now 32 bits + + * sinput.ads, sinput.adb (Skip_Line_Terminators): Extend to deal with + wide character UTF_32 line terminators. + Initialize Main_Source_File to avoid error when no main + source is loaded. + + * errout.adb (Finalize): Do not check Num_SRef_Pragmas + (Main_Source_File) when no main source has been loaded, to avoid + potential crash. + +2005-02-09 Robert Dewar <dewar@adacore.com> + + * a-strunb.ads, a-strunb.adb: Add missing pragma Ada_05 statements + Fix name of Set routine + + * a-strfix.ads, a-strfix.adb: Add new index functions from AI-301 to + fixed packages. + + * a-stwise.ads, a-stwise.adb, a-stwifi.ads, a-stwifi.adb, + a-strsea.ads, a-strsea.adb: Add new index functions from AI-301 to + fixed packages + + * a-witeio.ads, a-witeio.adb, a-textio.ads, a-textio.adb: New function + forms of Get_Line subprograms for AI-301. + + * a-wtcoau.adb, a-wtcoau.ads, a-wtcoio.adb, a-wtcoio.ads, + a-wtedit.adb, a-wtedit.adb, a-wtedit.ads, a-wttest.adb, + a-wttest.ads, a-strmap.ads, a-strmap.adb, a-stwima.adb, + a-stwima.ads: Minor reformatting. + +2005-02-09 Doug Rupp <rupp@adacore.com> + Thomas Quinot <quinot@adacore.com> + + * adaint.c, adaint.h + [VMS] (to_ptr32): New function. + (MAYBE_TO_PTR32): New macro. + (__gnat_portable_spawn,__gnat_portable_no_block_spawn): Adjust argv + for pointer size. + [VMS] (descriptor_s, ile_s): Use __char_ptr32 for adr field. + [VMS] (#define fork()): Remove since unneccessary. + (__gnat_set_close_on_exec): New routine to support + GNAT.OS_Lib.Set_Close_On_Exec. + + * g-expect.adb (Set_Up_Communications): Mark the pipe descriptors for + the parent side as close-on-exec so that they are not inherited by the + child. + + * g-os_lib.ads, g-os_lib.adb (Set_Close_On_Exec): New subprogram to + set or clear the FD_CLOEXEC flag on a file descriptor. + +2005-02-09 Eric Botcazou <ebotcazou@adacore.com> + Richard Kenner <kenner@vlsi1.ultra.nyu.edu> + + Fix for c330001 - PR ada/19386 + + * decl.c: + (gnat_to_gnu_field): Do not necessarily invoke make_packable_type + on the field if Pragma Component_Alignment (Storage_Unit). + (gnat_to_gnu_entity, case object): Do not treat a renaming that has + side-effects as if it were a constant; also make SAVE_EXPR to protect + side-effects. + (gnat_to_gnu_entity, case E_Record_Subtype): If have _Parent, make a + UNION_TYPE. + (make_dummy_type): Set TYPE_UNCHECKED_UNION_P. + (components_to_record): Test it. + Fix improper usage of REFERENCE_CLASS_P. + + * utils2.c (build_binary_op, case MODIFY_EXPRP): Treat UNION_TYPE as + RECORD_TYPE. + + * utils2.c: Minor reformatting. + + * utils.c (convert, case UNION_TYPE): Check TYPE_UNCHECKED_UNION; + handle other cases like RECORD_TYPE. + + * utils.c (gnat_pushdecl): Set TREE_NO_WARNING. + +2005-02-09 Ed Schonberg <schonberg@adacore.com> + + * exp_aggr.adb (Gen_Assign): If the expression is an aggregate for a + component of an array of arrays in an assignment context, and the + aggregate has component associations that require sliding on + assignment, force reanalysis of the aggregate to generate a temporary + before the assignment. + (Must_Slide): Make global to the package, for use in Gen_Assign. + +2005-02-09 Ed Schonberg <schonberg@adacore.com> + + * exp_ch4.adb (Expand_Composite_Equality): If a component is an + unchecked union with no inferable discriminants, return a + Raise_Program_Error node, rather than inserting it at the point the + type is frozen. + (Expand_Record_Equality, Component_Equality): Handle properly the case + where some subcomponent is an unchecked union whose generated equality + code raises program error. + +2005-02-09 Doug Rupp <rupp@adacore.com> + + * gnatbl.c: [VMS] (_POSIX_EXIT): Define. + [VMS] (#define exit hack): Remove. + +2005-02-09 Pascal Obry <obry@adacore.com> + Arnaud Charlet <charlet@adacore.com> + + * init.c (__gnat_initialize): Add a new parameter eh which contains the + address of the exception registration. The Win32 version of this + routine calls __gnat_install_SEH_handler() to initialize the SEH + (Structured Exception Handling) handler. + (__gnat_error_handler) [Win32]: Removed. Not needed as we use + SEH (Structured Exception Handling) now. + (__gnat_install_handler) [Win32]: Nothing to do now as we use SEH. + (__gnat_initialize for ppc-vxworks): Adjust comments and the + preprocessor condition protecting the call to the extra eh setup + subprogram, which is only available for the ppc target. + (__gnat_clear_exception_count): replaced reference to + variable taskIdCurrent by call to taskIdSelf(), cleaner. + + * seh_init.c: New file. + + * Make-lang.in: (GNAT_ADA_OBJS): Add seh_init.o. + (GNATBIND_OBJS): Idem. + + * misc.c (gnat_parse_file): Update call to __gnat_initialize. This + routine takes a new parameter (a pointer to the exception registration + for the SEH (Structured Exception Handling) support. + + * raise.h: (__gnat_install_SEH_handler): New prototype. + Update copyright notice. + + * s-tassta.adb (Task_Wrapper): Declare the exception registration + record and initialize it by calling __gnat_install_SEH_handler. + +2005-02-09 Vincent Celier <celier@adacore.com> + + * make.adb (Gnatmake): Do not fail when the main project has no object + directory. + +2005-02-09 Doug Rupp <rupp@adacore.com> + + * Makefile.in [VMS] (LN,LN_S): Define as cp -p + Rename s-asthan-vms.adb to s-asthan-vms-alpha.adb. + [VMS]: Add translations for g-enblsp.adb. + + * s-asthan-vms.adb: Removed. + * s-asthan-vms-alpha.adb: Added. + +2005-02-09 Pascal Obry <obry@adacore.com> + + * Makefile.in (LIBGNAT_SRCS): Add seh_init.c. + (LIBGNAT_OBJS): Add seh_init.o. + +2005-02-09 Arnaud Charlet <charlet@adacore.com> + + PR ada/16592 + + * Makefile.in: Link all gnat tools with -static-libgcc, since + -shared-libgcc is now used by default on some systems (e.g. linux with + recent binutils). + Remove references to Makefile.prolog/generic, no longer used. + +2005-02-09 Vincent Celier <celier@adacore.com> + + * prj-makr.adb (Process_Directory): Put file name in canonical case + before matching against the patterns. + If gnatname has been invoked as <prefix>-gnatname + then invoke the compiler as <prefix>-gcc, not just "gcc". + +2005-02-09 Ed Schonberg <schonberg@adacore.com> + + * sem_ch4.adb (Analyze_Selected_Component): Create Actual_Subtype even + with expansion disabled. The actual subtype is needed among other + places when the selected component appears in the context of a loop + bound, and denotes a packed array. + (Operator_Check): Always use the first subtype in the + error message, to avoid the appearance of internal base types. + (Transform_Object_Operation): Copy each actual in full + to the parameter associations of the constructed call, rather than + using the shallow copy mechanism of New_Copy_List. This ensures that + the chaining of named associations is done properly. + (Complete_Object_Operation): Rewrite node, rather than + replacing it, so that we can trace back to the original selected + component. + + * sem_elab.adb (Set_Elaboration_Constraint): For initialization calls, + and calls that use object notation, if the called function is not + declared in a withed unit, place the elaboration constraint on the + unit in the context that makes the function accessible. + (Check_Elab_Subtype_Declaration): Check whether a subtype declaration + imposes an elaboration constraint between two packages. + +2005-02-09 Ed Schonberg <schonberg@adacore.com> + + * sem_ch7.adb (Uninstall_Declarations): Exchange full and private + views of a private type after handling its private dependents, to + maintain proper stack discipline between entry and exit from the + package. + +2005-02-09 Cyrille Comar <comar@adacore.com> + + * s-finimp.adb: (Finalize_List): Optimize in the no-abort case. + Minor reformatting. + +2005-02-09 Arnaud Charlet <charlet@adacore.com> + + * s-tporft.adb (Register_Foreign_Thread): Initialize Task_Image[_Len] + fields for foreign threads. + +2005-02-09 Doug Rupp <rupp@adacore.com> + + * s-vaflop.adb: Add pragma Warnings (Off) to eliminate infinite + recursion warnings when compiled with -gnatdm. + +2005-02-09 Robert Dewar <dewar@adacore.com> + + * usage.adb: Add line for switch -gnat05 (allow Ada 2005 extensions) + Slight fix to documentation of -gnaty with no parameters + + * xr_tabls.ads: Add ??? comment for missing overall comment + + * xsinfo.adb: Make default file name be sinfo.h, since this is what + we now use by default. + + * xsnames.adb: Adjust end of file test to look for five space followed + by '#' instead of six spaces. The format of xsnames.adb was modified + in the last update. + + * a-numeri.ads: Add reference to AI-388 for greek letter pi + identifier. + + * clean.adb: Minor reformatting. + + * gnat1drv.adb, gnatfind.adb, gnatlink.adb, gnatmem.adb, + gnatname.adb: Minor reformatting + Add 2005 to copyright output when utility is run + + * csets.adb: Eliminate obsolete comment + + * debug.adb, g-socket.ads, i-cobol.adb: Minor reformatting throughout + Update comments. + + * sem_eval.ads (Eval_Integer_Literal): Do not inline this, not useful. + +2005-02-09 Sergey Rybin <rybin@adacore.com> + + * gnat_ugn.texi: Add to the gnatpp section the paragraph describing + the difference between compact and incompact layout and add the record + representation clause to the example illustrating different layouts. + Add the description of '-A5' gnatpp option ("align 'AT' keywords in + component clauses"). + +2005-02-09 Florian Villoing <villoing@adacore.com> + + * gnat_ugn.texi: Fix typos. + Use @command to display 'gcc', 'gnatbind', etc. insted of @code or + @file. + Make proper use of @ref, @xref and @pxref to avoid duplication of "see" + in the generated documentation. + +2005-02-09 Arnaud Charlet <charlet@adacore.com> + + * gnat_ugn.texi: Remove all mentions of FSU threads, which are no + longer supported. + Update linker wrapper when linking with non GNU C++. + +2005-02-09 Pascal Obry <obry@adacore.com> + + * gnat_ugn.texi: + Document the procedure to debug the DllMain routine on Windows. + Add note about -funwind-tables and mixed Ada and C/C++ programming in + ZCX mode. + Document new BIND qualifer /RETURN_CODES=VMS. + +2005-02-09 Ben Brosgol <brosgol@adacore.com> + + * gnat_ugn.texi: Wordsmithing of "GNAT and Libraries" chapter + Edited gnatmetric chapter + +2005-02-09 Robert Dewar <dewar@adacore.com> + + * gnat_rm.texi: + Changes to document new wide wide character support + For AI-285 + Update documentation on Normalize_Scalars and Initialize_Scalars + +2005-02-09 Pascal Obry <obry@adacore.com> + + * s-taprop-mingw.adb, s-soflin.ads: Minor reformatting. + +2005-02-09 Jose Ruiz <ruiz@adacore.com> + + * s-osinte-vxworks.ads (taskPriorityGet): Add this function (imported + from the VxWorks kernel) that is needed for getting the active + priority of the different tasks. + + * s-atacco.ads, s-atacco.adb (Nothing): Remove this dummy procedure. + Use a pragma Elaborate_Body in the spec file instead. + Noticed by code reading. + +2005-02-09 Thomas Quinot <quinot@adacore.com> + + * exp_util.ads: Minor correction in comment. + +2005-02-09 Arnaud Charlet <charlet@adacore.com> + + * s-taprop.ads (Initialize): Update comments. Remove pragma Inline, + since this procedure is now too complex to be worth inlining. + 2005-02-09 Richard Henderson <rth@redhat.com> * utils.c (gnat_define_builtin): Remove. |