diff options
author | Arnaud Charlet <charlet@gcc.gnu.org> | 2004-10-27 15:57:10 +0200 |
---|---|---|
committer | Arnaud Charlet <charlet@gcc.gnu.org> | 2004-10-27 15:57:10 +0200 |
commit | 0ca5fab2b72b3bb201dd05e20f3f2c651779a673 (patch) | |
tree | c97b2806e3d9a8bc352d56eadad3b3fe33a1bf81 | |
parent | f142e9fab708f504623b901a33dfc696c6a4d57d (diff) | |
download | gcc-0ca5fab2b72b3bb201dd05e20f3f2c651779a673.zip gcc-0ca5fab2b72b3bb201dd05e20f3f2c651779a673.tar.gz gcc-0ca5fab2b72b3bb201dd05e20f3f2c651779a673.tar.bz2 |
Resync.
From-SVN: r89679
-rw-r--r-- | gcc/ada/ChangeLog | 390 |
1 files changed, 390 insertions, 0 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 315ee92..5e5280e 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,393 @@ +2004-10-26 Vincent Celier <celier@gnat.com> + Thomas Quinot <quinot@act-europe.fr> + + * g-socthi-vms.adb, g-socthi-mingw.adb, g-socthi-vxworks.ads: + (C_Writev): Change MSG_Forced_Flags to Constants.MSG_Forced_Flags as + there is no use of GNAT.Sockets.Constants. + Remove remaining pragma Import for C_Write + Remove C_Read and C_Write from internal implementation unit + GNAT.Sockets.Thin, as their usage for sockets is non-portable (using + the read and write functions from the system runtime library is fine + on UNIX but won't work under Windows). + + * g-socket.adb: (Abort_Selector): Use C_Send instead of C_Write. + (Check_Selector): Use C_Recv instead of C_Read. + Selectors are the GNAT.Sockets abstraction to perform a select() + call on a set of descriptors. To allow abortion of an ongoing + select operation, some data is written to a dedicated socket that + is always monitored. + Under Windows, the write and read library functions cannot operate + on sockets, so we need to use send and recv instead, which is portable + across all supported platforms. + + * g-socthi.ads: Remove C_Read and C_Write from internal implementation + unit GNAT.Sockets.Thin, as their usage for sockets is non-portable + (using the read and write functions from the system runtime library is + fine on UNIX but won't work under Windows). + +2004-10-26 Nicolas Setton <setton@act-europe.fr> + + * mlib-tgt-darwin.adb: New file. + + * mlib-tgt-tru64.adb, mlib-tgt-aix.adb, mlib-tgt-irix.adb, + mlib-tgt-hpux.adb, mlib-tgt-linux.adb, mlib-tgt-solaris.adb, + mlib-tgt-vms-alpha.adb, mlib-tgt-vms-ia64.adb, + mlib-tgt-mingw.adb, mlib-tgt-vxworks.adb (Archive_Indexer_Options): New + subprogram body. + + * Makefile.in: Add support for building shared libraries under Darwin. + (EXTRA_GNATRTL_NONTASKING_OBJS, ppc-vxworks): Add s-vxwexc.o, containing + the low level EH init subprogram to be called from __gnat_initialize. + + * mlib-tgt.ads, mlib-tgt.adb (Archive_Indexer_Options): New subprogram, + indicates which options to pass to the archive indexer. + + * mlib-utl.adb: Add support for calling ranlib with additional + options. This is needed for instance under Mac OS X. + (Ranlib_Options): New global variable, used to store the potential + options to pass to ranlib. + (Ar): Use Ranlib_Options when spawning ranlib. + (Initialize): Set the value of ranlib option. + +2004-10-26 Olivier Hainque <hainque@act-europe.fr> + + * s-parame-linux.adb (Minimum_Stack_Size): Adjust to return 12K + instead of 8K, to reflect the real potential needs for stack-checking + in the ZCX case. + +2004-10-26 Pascal Obry <obry@gnat.com> + + * s-parame-mingw.adb (Default_Stack_Size): Add some comments. + + * s-taprop-mingw.adb (Create_Task): Set initial stack size to 1024. On + Windows only the initial thread stack size can be set so it is good to + start we a low stack size. + The OS will adjust the size as needed. + +2004-10-26 Olivier Hainque <hainque@act-europe.fr> + Nicolas Setton <setton@act-europe.fr> + + * expect.c, adaint.c, link.c, sysdep.c (unix sections): Guard with + "__unix__" instead of "unix". + The latter is implicitly defined by gcc3.2 but not by gcc >= 3.4, so the + sections were just mistakenly ignored. The former is + implicitely defined by gcc2.8, gcc3.2 and gcc3.4. + Update #ifdef preprocessor macro to detect the symbol __hpux__ instead + of hpux. This prevents an unwanted definition of the symbol + convert_addresses in adaint.o. + +2004-10-26 Gary Dismukes <dismukes@gnat.com> + + * a-exexpr.adb (Setup_Key): Change initial value to 16#DEAD#, for + compatibility with type Unwind_Word on 16-bit targets such as AAMP. + +2004-10-26 Cyrille Comar <comar@act-europe.fr> + + * a-filico.ads, a-filico.adb: fix incorrect header. + +2004-10-26 Javier Miranda <miranda@gnat.com> + + * a-ststio.ads: Fix typo in identifier + +2004-10-26 Thomas Quinot <quinot@act-europe.fr> + + * sem_ch4.adb: Minor reformatting. + +2004-10-26 Ed Schonberg <schonberg@gnat.com> + + * checks.adb (Expr_Known_Valid): If floating-point validity checks are + enabled, check the result of unary and binary operations when the + expression is the right-hand side of an assignment. + +2004-10-26 Vincent Celier <celier@gnat.com> + + * clean.adb (Delete): Do not output warnings when in quiet output and + not in verbose mode. + (Force_Deletions): New Boolean flag, defaulted to False + (Delete): Only delete a file if it is writable, and when + Force_Deletions is True. + (Parse_Cmd_Line): New switch -f: set Force_Deletions to True + (Usage): Line for new switch -f + (Clean_Directory): Use GNAT.OS_Lib.Set_Writable instead of rolling our + own. + +2004-10-26 Eric Botcazou <ebotcazou@act-europe.fr> + + * decl.c (gnat_to_gnu_field): Use the type of the inner object for a + JM type only if its size matches that of the wrapper. When a size is + prescribed and the field is not aliased, remove the wrapper of a JM + type only if the size is not greater than that of the packed array. + (gnat_to_gnu_entity): Change the extension of packed array wrappers + from LJM to JM. + +2004-10-26 Geert Bosch <bosch@gnat.com> + + * eval_fat.adb (Eps_Model,Eps_Denorm): Remove, no longer used. + (Succ): Re-implement using Scaling, Exponent and Ceiling attributes. + (Pred): Implement in terms of Succ. + +2004-10-26 Ed Schonberg <schonberg@gnat.com> + + * exp_aggr.adb (Safe_Component): An aggregate component that is an + unchecked conversion is safe for in-place use if the expression of the + conversion is safe. + (Expand_Array_Aggregate): An aggregate that initializes an allocator may + be expandable in place even if the aggregate does not come from source. + (Convert_Array_Aggr_In_Allocator): New procedure to initialize the + designated object of an allocator in place, rather than building it + first on the stack. The previous scheme forces a full copy of the array, + and may be altogether unsusable if the size of the array is too large + for stack allocation. + +2004-10-26 Robert Dewar <dewar@gnat.com> + + * exp_ch4.adb (Expand_N_Op_Eq): Make sure we expand a loop for array + compares if the component is atomic. + + * exp_ch5.adb (Expand_Assign_Array): Make sure we expand a loop for + array assignment if the component type is atomic. + +2004-10-26 Ed Schonberg <schonberg@gnat.com> + Eric Botcazou <ebotcazou@act-europe.fr> + + * exp_ch6.adb (Expand_Actuals): If the actual for an in-out parameter + is aliased and is a by_reference type, do not pass by copy. + (Expand_N_Function_Call) <Rhs_Of_Assign_Or_Decl>: New function to + detect whether the call is in the right side of an assignment or + the expression of an object declaration. Recurse on component + association within aggregates. + Call it in the condition that determines whether the temporary is + necessary for correct stack-checking. + +2004-10-26 Thomas Quinot <quinot@act-europe.fr> + + * exp_dist.adb (Build_General_Calling_Stubs): New formal parameter + RACW_Type, used in the PolyORB version. + Rename RCI_Info to RCI_Locator, for consistency between the PolyORB + version and the GARLIC version. + + * snames.ads, snames.adb, s-parint.ads, s-parint.adb: + Rename RCI_Info to RCI_Locator for better consistency between the + GARLIC and PolyORB versions of the distributed systems annex. + (DSA_Implementation_Name): This enumeration lists the possible + implementations of the Partition Communication Subsystem for the + Distributed Systems Annex (DSA). The three available implementations + are the dummy stub implementation (No_DSA), and two versions based on + two different distribution runtime libraries: GARLIC and PolyORB. Both + the GARLIC PCS and the PolyORB PCS are part of the GLADE distribution + technology. + Change the literal GLADE_DSA to GARLIC_DSA to accurately describe + that organization. + + * rtsfind.ads: Rename RCI_Info to RCI_Locator for better consistency + between the GARLIC and PolyORB versions of the distributed systems + annex. + Remove RE_Unbounded_Reclaim_Pool since it is unused. + +2004-10-26 Gary Dismukes <dismukes@gnat.com> + + * gnat1drv.adb: Suppress calling the back end when + Frontend_Layout_On_Target is true. + +2004-10-26 Thomas Quinot <quinot@act-europe.fr> + + * g-os_lib.ads, g-os_lib.adb (Set_Executable, Set_Writable, + Set_Read_Only): New subprograms. + These new routines allow the user to set or unset the Owner execute + and Owner write permission flags on a file. + + * makegpr.adb, mlib.adb, mlib-prj.adb: Use + GNAT.OS_Lib.Set_Executable instead of rolling our own. + +2004-10-26 Matthew Gingell <gingell@gnat.com> + + * i-cpp.ads, i-cpp.adb: Change layout of VTable for new C++ ABI. + +2004-10-26 Pascal Obry <obry@gnat.com> + + * init.c (__gnat_error_handler) [Win32]: Instead of trying to read the + memory before the faulting page we properly test the process read + access for this address using appropriate Win32 routine. + (HPUX sections): guard with "__hpux__" instead of "hpux". + +2004-10-26 Robert Dewar <dewar@gnat.com> + + * lib-xref.adb (Generate_Reference): Don't complain about reference to + entry parameter if pragma Unreferenced set, since we do not properly + handle the case of multiple parameters. + +2004-10-26 Vincent Celier <celier@gnat.com> + + * prj-env.adb: (Contains_ALI_Files): New Boolean function + (Ada_Objects_Path.Add): For a library project, add to the object path + the library directory only if there is no object directory or if the + library directory contains ALI files. + (Set_Ada_Paths.Add.Recursive_Add): Ditto + +2004-10-26 Vincent Celier <celier@gnat.com> + + * prj-nmsc.adb (Language_Independent_Check): Do not forbid virtual + extension of library projects. + + * prj-part.adb: If env var ADA_PROJECT_PATH is not defined, project + path defaults to ".:<prefix>/lib/gnat". + (Parse): For an extending all project, allow direct import of a project + that is virtually extended. + + * prj-proc.adb (Imported_Or_Extended_Project_From): If a project with + the specified name is directly imported, return its ID. Otherwise, if + an extension of this project is imported, return the ID of the + extension. + +2004-10-26 Robert Dewar <dewar@gnat.com> + + * s-arit64.adb: (Le3): New function, used by Scaled_Divide + (Sub3): New procedure, used by Scaled_Divide + (Scaled_Divide): Substantial rewrite, avoid duplicated code, and also + correct more than one instance of failure to propagate carries + correctly. + (Double_Divide): Handle overflow case of largest negative number + divided by minus one. + + * s-arit64.ads (Double_Divide): Document that overflow can occur in + the case of a quotient value out of range. + Fix comments. + +2004-10-26 Robert Dewar <dewar@gnat.com> + + * s-bitops.adb (Bit_Eq): Remove redundant check. + + * s-bitops.ads: Minor comment updates + Change some occurrences of Address to System.Address + + * s-carsi8.ads: Fix minor cut-and-paste error in comments + +2004-10-26 Ed Schonberg <schonberg@gnat.com> + + * sem_attr.adb (Resolve_Attribute, case 'Access): Apply proper + accessibility check to prefix that is a protected operation. + +2004-10-26 Ed Schonberg <schonberg@gnat.com> + + * sem_ch10.adb (Optional_Subunit): If file of expected subunit is + empty, post message on stub. + +2004-10-26 Ed Schonberg <schonberg@gnat.com> + Javier Miranda <miranda@gnat.com> + + * sem_ch12.adb (In_Main_Context): Predicate to determine whether the + current instance appears within a unit that is directly in the context + of the main unit. + Used to determine whether the body of the instance should be analyzed + immediately after its spec, to make its subprogram bodies available + for front-end inlining. + (Analyze_Formal_Array_Type): Cleanup condition that checks that range + constraint is not allowed on the component type (AARM 12.5.3(3)) + +2004-10-26 Cyrille Comar <comar@act-europe.fr> + + * sem_ch13.adb (Analyze_Attribute_Definition_Clause, case + 'Storage_Pool): enhance, document & limit detection of non-sharable + internal pools. + + * impunit.adb: Make System.Pool_Global and System.Pool_Local visible. + + * s-pooglo.ads: Add more documentation now that this pool is properly + documented. + +2004-10-26 Ed Schonberg <schonberg@gnat.com> + + * sem_ch3.adb (Complete_Private_Subtype): If the full view is a task + or protected type with discriminants, do not constrain the + corresponding record type if the subtype declaration has no + discriminant constraints. This can be the case in source code, or in + the subtype declaration created to rename an actual type within an + instantiation. + +2004-10-26 Ed Schonberg <schonberg@gnat.com> + + * sem_ch6.adb (Analyze_Subprogram_Body): If body is a subunit for a + different kind of stub (possibly wrong name for file), do not check + for conformance. + (Uses_Secondary_Stack): New subsidiary to Build_Body_To_Inline. If body + includes call to some function that returns an unconstrained type, do + not inline. + +2004-10-26 Ed Schonberg <schonberg@gnat.com> + + * sem_elab.adb (Check_Elab_Call): Do not check a call that does not + appear in the code for the main unit. Dependencies among units in the + context of the main unit are established when those other units are + compiled. Otherwise spurious elaboration constraints can generate + incorrect elaboration circularities. + +2004-10-26 Thomas Quinot <quinot@act-europe.fr> + Ed Schonberg <schonberg@gnat.com> + + * sem_util.adb (Is_Aliased_View): Defend against the case where this + subprogram is called with a parameter that is not an object name. This + situation arises for some cases of illegal code, which is diagnosed + later, and in this case it is wrong to call Is_Aliased, as that might + cause a compiler crash. + (Explain_Limited_Type): Refine previous fix to include + inherited components of derived types, to provide complete information. + + * exp_ch9.adb (Set_Privals): Set the Ekind of the actual object that + is the prival for a protected object. + It is necessary to mark this entity as a variable, in addition to + flagging it as Aliased, because Sem_Util.Is_Aliased_View has been + modified to avoid checking the Aliased flag on entities that are not + objects. (Checking that flag for non-objects is erroneous and could + lead to a compiler crash). + +2004-10-26 Robert Dewar <dewar@gnat.com> + + * s-fatgen.adb (Pred): Fix redundant test for X > 0.0, since if + X_Frac = 0.5, then we know that the number X must be positive. + (Succ): Remove the same redundant test, and also fix the primary test + to test for X_Frac = -0.5 (used to be 0.5) which is clearly wrong. + Minor reformatting + (Decompose): Add fuller comments to spec + +2004-10-26 Pascal Obry <obry@gnat.com> + + * tracebak.c (IS_BAD_PTR): Use IsBadCodePtr on Win32 to check for ptr + validity (process must have read access). Set to 0 in all other cases. + (STOP_FRAME): Now check for ptr validity to avoid a segmentation + violation on Win32. + (VALID_STACK_FRAME): Check for ptr validity on Win32 to avoid a + segmentation violation. + +2004-10-26 Eric Botcazou <ebotcazou@act-europe.fr> + + * trans.c (call_to_gnu): For an (in-)out parameter passed by reference + whose type is a constructed subtype of an aliased object with an + unconstrained nominal subtype, convert the actual to the constructed + subtype before taking its address. + +2004-10-26 Vincent Celier <celier@gnat.com> + + * a-dirval.ads, a-dirval.adb, a-dirval-vms.adb, a-dirval-mingw.adb + (Is_Path_Name_Case_Sensitive): New function + + * a-direct.adb (To_Lower_If_Case_Insensitive): New procedure + (Base_Name, Simple_Name, Current_Directory, Compose, + Containing_Directory, Full_Name): Call To_Lower_If_Case_Insensitive on + the result. + +2004-10-26 Cyrille Comar <comar@act-europe.fr> + Vasiliy Fofanov <fofanov@act-europe.fr> + Vincent Celier <celier@gnat.com> + + * gnat_ugn.texi: Generalize "finding memory problems" section into a + "memory management issues" section and document some of the useful + memory pools provided as part of the GNAT library. + Remove "virtual" from declaration of A::method2 in + the simple example of Ada/C++ mixed system. + Library Projects may be virtually extended: their virtual extensions + are not Library Projects. + Added section on extending project hierarchies. + 2004-10-19 Aaron W. LaFramboise <aaronavay62@aaronwl.com> * adaint.c (__gnat_get_libraries_from_registry): Cast value |