OSDN Git Service

* gcc-interface/misc.c (gnat_expand_expr): Remove.
[pf3gnuchains/gcc-fork.git] / gcc / ada / ChangeLog
index 6872b65..9724bcd 100644 (file)
@@ -1,3 +1,901 @@
+2009-04-17  Diego Novillo  <dnovillo@google.com>
+
+       * gcc-interface/misc.c (gnat_expand_expr): Remove.
+       (LANG_HOOKS_EXPAND_EXPR): Remove.
+
+2009-04-17  Robert Dewar  <dewar@adacore.com>
+
+       * sem_ch3.adb: Minor reformatting
+
+2009-04-17  Pascal Obry  <obry@adacore.com>
+
+       * adaint.c: Add __gnat_use_acl global variable to control use of ACL.
+
+2009-04-17  Ed Schonberg  <schonberg@adacore.com>
+
+       * sem_ch3.adb (Build_Derived_Enumeration_Type): Diagnose properly
+       illegal constraints on type derived from formal discrete types.
+
+2009-04-17  Thomas Quinot  <quinot@adacore.com>
+
+       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  <dewar@adacore.com>
+
+       * 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  <charlet@adacore.com>
+
+       * gnat_ugn.texi: Initial documentation on binding generator.
+
+2009-04-17  Ed Schonberg  <schonberg@adacore.com>
+
+       * 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  <dewar@adacore.com>
+
+       * 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  <dewar@adacore.com>
+
+       * 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  <obry@adacore.com>
+
+       * initialize.c: Fix test for reallocating the arguments array.
+
+2009-04-17  Geert Bosch  <bosch@adacore.com>
+
+       * 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  <lambourg@adacore.com>
+
+       * g-comlin.adb (Initialize_Scan_Option): Make sure the sections are
+       reinitialized.
+
+2009-04-17  Robert Dewar  <dewar@adacore.com>
+
+       * 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  <obry@adacore.com>
+
+       * initialize.c: Code clean up, use realloc.
+
+2009-04-17  Pascal Obry  <obry@adacore.com>
+
+       * 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  <miranda@adacore.com>
+
+       * 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  <celier@adacore.com>
+
+       * 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  <quinot@adacore.com>
+
+       * 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  <duff@adacore.com>
+
+       * 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  <charlet@adacore.com>
+
+       * 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  <quinot@adacore.com>
+
+       * exp_aggr.adb: Minor code reorganization, no behaviour change.
+
+2009-04-17  Ed Schonberg  <schonberg@adacore.com>
+
+       * 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  <quinot@adacore.com>
+
+       * sinfo.ads, exp_aggr.adb, exp_aggr.ads: Minor reformatting
+
+       * exp_ch7.adb: Minor reformatting
+
+2009-04-17  Bob Duff  <duff@adacore.com>
+
+       * 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  <quinot@adacore.com>
+
+       * sprint.adb (Write_Itype): Add handling of enumeration subtypes.
+
+2009-04-17  Ed Schonberg  <schonberg@adacore.com>
+
+       * exp_ch4.adb (Expand_Allocator_Expression): Apply constraint check to
+       aggregate, using context imposed by subtype mark in allocator.
+
+2009-04-17  Pascal Obry  <obry@adacore.com>
+
+       * gnat_rm.texi: Document GNAT_CODE_PAGE environment variable
+
+2009-04-17  Nicolas Roche  <roche@adacore.com>
+
+       * initialize.c (__gnat_initialize): remove MAX_PATH limitation on each
+       argument length.
+
+2009-04-17  Gary Dismukes  <dismukes@adacore.com>
+
+       * 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  <schonberg@adacore.com>
+
+       * 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  <quinot@adacore.com>
+
+       * exp_ch7.adb: Minor reformatting
+
+2009-04-17  Robert Dewar  <dewar@adacore.com>
+
+       * 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  <duff@adacore.com>
+
+       * checks.ads: Minor comment fix
+
+       * exp_aggr.ads: Minor comment fix
+
+2009-04-17  Nicolas Roche  <roche@adacore.com>
+
+       * adaint.c: Improve cross compiler detection and handling.
+
+2009-04-17  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * exp_ch4.adb (Expand_Concatenation): Do not use calls at -Os.
+
+2009-04-17  Pascal Obry  <obry@adacore.com>
+
+       * 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  <schonberg@adacore.com>
+
+       * atree.adb, atree.ads: Remove dead code.
+
+2009-04-17  Arnaud Charlet  <charlet@adacore.com>
+
+       * gcc-interface/Make-lang.in: Update dependencies.
+
+2009-04-17  Ed Schonberg  <schonberg@adacore.com>
+
+       * 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  <schonberg@adacore.com>
+
+       * 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  <dewar@adacore.com>
+
+       * par-ch6.adb: Minor reformatting
+
+       * prj.adb: Minor reformatting
+
+2009-04-17  Gary Dismukes  <dismukes@adacore.com>
+
+       * 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  <gingold@adacore.com>
+
+       * init.c: Fix stack checking for x86 Darwin.
+
+2009-04-17  Vincent Celier  <celier@adacore.com>
+
+       * prj-attr.adb: New project level attribute Object_File_Suffix
+       (<language>).
+       
+       * 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  <dewar@adacore.com>
+
+       * 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  <quinot@adacore.com>
+
+       * 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  <setton@adacore.com>
+
+       * link.c: Fix support for passing a response file under Darwin.
+
+2009-04-17  Emmanuel Briot  <briot@adacore.com>
+
+       * prj.adb (Free): new subprogram.
+
+2009-04-17  Ed Schonberg  <schonberg@adacore.com>
+
+       * 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  <celier@adacore.com>
+
+       * 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  <obry@adacore.com>
+
+       * 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  <dewar@adacore.com>
+
+       * 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  <setton@adacore.com>
+
+       * gcc-interface/Makefile.in: Under darwin, build shared libraries
+       with install_name starting with "@rpath/".
+
+2009-04-17  Nicolas Setton  <setton@adacore.com>
+
+       * link.c: Add darwin section
+
+2009-04-16  Robert Dewar  <dewar@adacore.com>
+
+       * 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  <schonberg@adacore.com>
+
+       * 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  <miranda@adacore.com>
+
+       * 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  <schonberg@adacore.com>
+
+       * 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  <ebotcazou@adacore.com>
+
+       * g-pehage.adb (Initialize): Fix off-by-one error.
+
+2009-04-16  Tristan Gingold  <gingold@adacore.com>
+
+       * init.c: Detect real stack overflow on Darwin.
+
+       * system-darwin-x86.ads: Use stack probing on darwin x86.
+
+2009-04-16  Ed Schonberg  <schonberg@adacore.com>
+
+       * sem_attr.adb (Analyze_Attribute, case 'Address): It is illegal to
+       take the address of an intrinsic subprogram.
+
+2009-04-16  Arnaud Charlet  <charlet@adacore.com>
+
+       * 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  <celier@adacore.com>
+
+       * g-trasym-unimplemented.ads, g-trasym-unimplemented.adb: New file.
+
+       * g-trasym.ads: Update comments.
+
+2009-04-16  Vasiliy Fofanov  <fofanov@adacore.com>
+
+       * tracebak.c (STOP_FRAME): Verify validity of the current address
+       before dereferencing.
+
+2009-04-16  Ed Schonberg  <schonberg@adacore.com>
+
+       * 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  <gingold@adacore.com>
+
+       * init.c, s-osinte-darwin.ads, system-darwin-x86_64.ads:
+       Add support for stack checking on darwin.
+
+2009-04-16  Vincent Celier  <celier@adacore.com>
+
+       * 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  <obry@adacore.com>
+
+       * 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  <obry@adacore.com>
+
+       * s-crtl.ads, s-os_lib.adb: Minor code clean-up.
+
+2009-04-16  Thomas Quinot  <quinot@adacore.com>
+
+       * 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  <obry@adacore.com>
+
+       * 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  <ochem@adacore.com>
+
+       * sinput-p.adb (Clear_Source_File_Table): Use Sinput.Initialize instead
+       of Source.Init.
+
+2009-04-16  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * a-convec.ads (Is_Empty): Mark inline.
+
+2009-04-16  Nicolas Roche  <roche@adacore.com>
+
+       * init.c (__gnat_init_float): Initialize FPU on x86_64 windows
+
+2009-04-16  Thomas Quinot  <quinot@adacore.com>
+
+       * prepcomp.adb: Minor reformatting
+
+2009-04-16  Jerome Lambourg  <lambourg@adacore.com>
+
+       * 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  <schonberg@adacore.com>
+
+       * 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  <lambourg@adacore.com>
+
+       * sem_prag.adb (Analyze_Pragma): Make sure that pragma pack is not
+       taken into account for VM targets.
+
+2009-04-16  Hristian Kirtchev  <kirtchev@adacore.com>
+
+       * 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  <quinot@adacore.com>
+
+       * 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  <quinot@adacore.com>
+
+       * 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  <duff@adacore.com>
+
+       * exp_ch6.ads, exp_ch6.adb (Is_Build_In_Place_Function_Return): Remove,
+       unused.
+
+2009-04-16  Thomas Quinot  <quinot@adacore.com>
+
+       * 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  <dewar@adacore.com>
+
+       * gnat_rm.texi: Document effect of Assume_No_Invalid_Values and -gnatVa
+       used together.
+
+2009-04-16  Ed Schonberg  <schonberg@adacore.com>
+
+       * 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  <dewar@adacore.com>
+
+       * 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  <dewar@adacore.com>
+
+       * exp_ch6.adb: Add comments
+
+       * rtsfind.ads: Add entries for s-conca? routines
+
+2009-04-16  Arnaud Charlet  <charlet@adacore.com>
+
+       * gcc-interface/Make-lang.in: Update dependencies.
+
+       * gcc-interface/Makefile.in: Update translation for vms.
+
+2009-04-16  Ed Schonberg  <schonberg@adacore.com>
+
+       * 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  <rupp@adacore.com>
+
+       * 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  <schonberg@adacore.com>
+
+       * 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  <rupp@adacore.com>
+
+       * 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  <quinot@adacore.com>
+
+       * sem_elim.adb: Minor reformatting
+
+       * freeze.adb: Minor reformatting
+
+       * exp_ch4.adb: Minor reformatting
+
+2009-04-16  Emmanuel Briot  <briot@adacore.com>
+
+       * prj-nmsc.adb (Path_Name_Of): fix memory leak
+
+2009-04-16  Robert Dewar  <dewar@adacore.com>
+
+       * sinfo.ads (Backwards_OK, Forwards_OK): Clarify documentation
+
+2009-04-16  Vincent Celier  <celier@adacore.com>
+
+       * fmap.adb (Initialize): Show the current line when the mapping file
+       is detected as "incorrectly formatted".
+
+2009-04-16  Robert Dewar  <dewar@adacore.com>
+
+       * 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  <falis@adacore.com>
+
+       * s-vxwext-kernel.adb: (ERROR): deleted unused constant
+
+2009-04-16  Vincent Celier  <celier@adacore.com>
+
+       * ali-util.adb: Minor comment spelling error fix
+
+2009-04-16  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * 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  <hainque@adacore.com>
+
+       * 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  <quinot@adacore.com>
+
+       * sem_type.adb: Minor reformatting
+
+2009-04-16  Hristian Kirtchev  <kirtchev@adacore.com>
+
+       * 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  <falis@adacore.com>
+
+       * 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  <fofanov@adacore.com>
+
+       * s-asthan-vms-alpha.adb: Disable warnings on alignment in a more
+       targeted fashion.
+
+2009-04-15  Hristian Kirtchev  <kirtchev@adacore.com>
+
+       * exp_ch9.adb: Comment improvements.
+       (Build_Entry_Family_Name): Add parentheses around the index of a entry
+       family member.
+
+2009-04-15  Bob Duff  <duff@adacore.com>
+
+       * 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  <celier@adacore.com>
+
+       * sinput-p.ads, sinput-p.adb (Clear_Source_File_Table): New procedure
+
+2009-04-15  Ed Schonberg  <schonberg@adacore.com>
+
+       * 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  <duff@adacore.com>
+
+       * 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  <quinot@adacore.com>
+
+       * sem_ch6.adb: Minor reformatting
+
+2009-04-15  Hristian Kirtchev  <kirtchev@adacore.com>
+
+       * 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  <schonberg@adacore.com>
+
+       * 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  <quinot@adacore.com>
+
+       * frontend.adb: Minor comment fix
+
 2009-04-15  Robert Dewar  <dewar@adacore.com>
 
        * gnatchop.adb (BOM_Length): New global variable