summaryrefslogtreecommitdiff
path: root/gcc/ada/ChangeLog-2009
diff options
context:
space:
mode:
authorupstream source tree <ports@midipix.org>2015-03-15 20:14:05 -0400
committerupstream source tree <ports@midipix.org>2015-03-15 20:14:05 -0400
commit554fd8c5195424bdbcabf5de30fdc183aba391bd (patch)
tree976dc5ab7fddf506dadce60ae936f43f58787092 /gcc/ada/ChangeLog-2009
downloadcbb-gcc-4.6.4-554fd8c5195424bdbcabf5de30fdc183aba391bd.tar.bz2
cbb-gcc-4.6.4-554fd8c5195424bdbcabf5de30fdc183aba391bd.tar.xz
obtained gcc-4.6.4.tar.bz2 from upstream website;upstream
verified gcc-4.6.4.tar.bz2.sig; imported gcc-4.6.4 source tree from verified upstream tarball. downloading a git-generated archive based on the 'upstream' tag should provide you with a source tree that is binary identical to the one extracted from the above tarball. if you have obtained the source via the command 'git clone', however, do note that line-endings of files in your working directory might differ from line-endings of the respective files in the upstream repository.
Diffstat (limited to 'gcc/ada/ChangeLog-2009')
-rw-r--r--gcc/ada/ChangeLog-200912171
1 files changed, 12171 insertions, 0 deletions
diff --git a/gcc/ada/ChangeLog-2009 b/gcc/ada/ChangeLog-2009
new file mode 100644
index 000000000..cf22b664e
--- /dev/null
+++ b/gcc/ada/ChangeLog-2009
@@ -0,0 +1,12171 @@
+2009-12-10 Eric Botcazou <ebotcazou@adacore.com>
+
+ * s-linux-sparc.ads: New file.
+ * gcc-interface/Makefile.in (SPARC/Linux): Use it.
+
+2009-12-04 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/trans.c (add_decl_expr): At toplevel, mark the
+ TYPE_ADA_SIZE field of records and unions.
+
+ * gcc-interface/trans.c (Attribute_to_gnu) <Attr_Length>: Set the
+ source location of the node onto the comparison expression if it
+ is not cached.
+
+2009-12-03 Eric Botcazou <ebotcazou@adacore.com>
+
+ * exp_util.adb (Make_CW_Equivalent_Type): Set the
+ Is_Class_Wide_Equivalent_Type flag here in lieu of...
+ (Make_Subtype_From_Expr): ...here.
+ * exp_ch3.adb (Expand_Freeze_Record_Type): Do not set
+ Has_Controlled_Component on class-wide equivalent types.
+ * freeze.adb (Freeze_Record_Type): Likewise.
+ * sem_ch3.adb (Record_Type_Definition): Likewise.
+
+2009-12-01 Pascal Obry <obry@adacore.com>
+
+ * s-osprim-mingw.adb (Get_Base_Time): Make sure that the base time is
+ taken at a clock tick boundary.
+
+2009-12-01 Thomas Quinot <quinot@adacore.com>
+
+ * g-sechas.ads (GNAT.Secure_Hashes.H."=" on Context): Make abstract.
+
+2009-12-01 Matthew Gingell <gingell@adacore.com>
+
+ * adadecode.c: Allow compilation when building the run time in the gnat
+ runtime.
+ (__gnat_decode): Strip the .nnnn suffix from names of nested functions.
+
+ * gcc-interface/Makefile.in: Ada adadecode to LIBGNAT_SRCS and
+ LIBGNAT_OBJS.
+
+2009-12-01 Vincent Celier <celier@adacore.com>
+
+ * gnatcmd.adb (Check_Files): Quote the path names as they may include
+ spaces.
+
+2009-12-01 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_ch3.adb (Analyze_Object_Declaration): If the defining identifier
+ has already been declared, it may have been rewritten as a renaming
+ declaration.
+
+2009-12-01 Ed Schonberg <schonberg@adacore.com>
+
+ * einfo.ads: Clarify use of Is_Private_Primitive.
+ * sem_ch6.adb (Analyze_Subprogram_Declaration): An operation is a
+ private primitive operation only if it is declared in the scope of the
+ private controlling type.
+ * exp_ch9.adb (Build_Wrapper_Spec): Build wrappers for private
+ protected operations as well.
+
+2009-12-01 Arnaud Charlet <charlet@adacore.com>
+
+ * gnat1drv.adb (Adjust_Global_Switches): Disable front-end
+ optimizations in CodePeer mode, to keep the tree as close to the source
+ code as possible, and also to avoid inconsistencies between trees when
+ using different optimization switches.
+
+2009-12-01 Thomas Quinot <quinot@adacore.com>
+
+ * scos.ads: Updated specification of source coverage obligation
+ information.
+
+2009-12-01 Thomas Quinot <quinot@adacore.com>
+
+ * g-sercom.ads, g-sercom-mingw.adb, g-sercom-linux.adb,
+ a-ststio.adb, s-commun.adb, s-commun.ads, g-socket.adb,
+ g-socket.ads (System.Communications.Last_Index): For the case where no
+ element has been transferred and Item'First =
+ Stream_Element_Offset'First, raise CONSTRAINT_ERROR.
+
+2009-12-01 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_ch10.adb (Install_Siblings): A private with_clause on some child
+ unit U in an ancestor of the current unit must be ignored if the
+ current unit has a regular with_clause on U.
+
+2009-11-30 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ * s-oscons-tmplt.c [__mips && __sgi]: Only define _XOPEN5, IOV_MAX
+ if _XOPEN_IOV_MAX is defined.
+
+2009-11-30 Vasiliy Fofanov <fofanov@adacore.com>
+
+ * vms_data.ads: Add new VMS qualifiers,
+ REVERSE_BIT_ORDER/NOREVERSE_BIT_ORDER, to support warnings on bit order
+ effects.
+
+2009-11-30 Thomas Quinot <quinot@adacore.com>
+
+ * exp_ch9.adb, exp_ch9.ads, sem_util.ads: Minor reformatting.
+
+2009-11-30 Gary Dismukes <dismukes@adacore.com>
+
+ * sem_prag.adb: Fix spelling error.
+
+2009-11-30 Ed Schonberg <schonberg@adacore.com>
+
+ * exp_ch9.ads (Build_Private_Protected_Declaration): For a protected
+ operation that is only declared in a protected body, create a
+ corresponding subprogram declaration.
+ * exp_ch9.adb (Expand_N_Protected_Body): Create protected body of
+ operation in all cases, including for an operation that is only
+ declared in the body.
+ * sem_ch6.adb: Call Build_Private_Protected_Declaration
+ * exp_ch6.adb (Expand_N_Subprogram_Declaration): For an operation
+ declared in a protected body, create the declaration for the
+ corresponding protected version of the operation.
+
+2009-11-30 Arnaud Charlet <charlet@adacore.com>
+
+ * gnat1drv.adb (Adjust_Global_Switches): Disable specific expansions
+ for Restrictions pragmas, to avoid tree inconsistencies between
+ compilations with different pragmas.
+
+2009-11-30 Jerome Lambourg <lambourg@adacore.com>
+
+ * sem_prag.adb (Check_Duplicated_Export_Name): Allow entities exported
+ to CIL to have duplicated export name.
+
+2009-11-30 Robert Dewar <dewar@adacore.com>
+
+ * a-tiinio.adb: Remove extraneous pragma Warnings (Off).
+
+2009-11-30 Thomas Quinot <quinot@adacore.com>
+
+ * par_sco.adb: Minor reformatting
+
+2009-11-30 Ed Falis <falis@adacore.com>
+
+ * s-vxwext.ad[s,b], system-vxworks-ppc.ads, s-stchop-vxworks.adb:
+ Comment update.
+
+2009-11-30 Ed Schonberg <schonberg@adacore.com>
+
+ * par_sco.adb (Traverse_Handled_Statement_Sequence): Do not emit SCO's
+ for null statements that do not come from source.
+ * sinfo.ads: Clarify documentation of Comes_From_Source
+
+2009-11-30 Vincent Celier <celier@adacore.com>
+
+ * prj-nmsc.adb (Add_Source): Use Display_Name for both projects when
+ displaying the paths in error message.
+
+2009-11-30 Emmanuel Briot <briot@adacore.com>
+
+ * adaint.h, adaint.c (file_attributes): force the use of unsigned char.
+ On some platforms, "char" is signed, on others unsigned, so we
+ explicitly specify the one we expect
+
+2009-11-30 Matthew Heaney <heaney@adacore.com>
+
+ * a-coinve.adb (Insert): Move exception handler closer to point where
+ exception can occur.
+ Minor reformatting & comment additions.
+
+2009-11-30 Arnaud Charlet <charlet@adacore.com>
+
+ * freeze.adb (Freeze_Entity): Disable warning on 'Foreign caller must
+ pass bounds' for VM targets, not relevant.
+
+2009-11-30 Robert Dewar <dewar@adacore.com>
+
+ * sem_util.adb (Wrong_Type): Diagnose additional case of modular
+ missing parens.
+ * a-tiinio.adb, a-wtinio.adb, a-ztinio.adb: Minor reformatting
+
+ * exp_util.adb (Kill_Dead_Code): Suppress warning for some additional
+ cases.
+
+ * sem_warn.adb (Set_Warning_Flag): Clean up gnatwA list and ensure
+ completeness.
+ (Set_Dot_Warning_Flag): Ditto for -gnatw.e
+ (Set_Dot_Warning_Flag): Implement -gnbatw.v/w.V
+ * usage.adb: Add lines for -gnatw.v/w.V
+
+2009-11-30 Emmanuel Briot <briot@adacore.com>
+
+ * make.adb (Check_Standard_Library): use Full_Source_Name instead of
+ direct call to Find_File. The former provides caching of the results, so
+ might be more efficient
+ (Start_Compile_If_Necessary): Add comment on possible optimization,
+ not done for now.
+
+2009-11-30 Thomas Quinot <quinot@adacore.com>
+
+ * g-sechas.adb: Minor reformatting
+
+2009-11-30 Matthew Heaney <heaney@adacore.com>
+
+ * a-crbtgo.adb (Delete_Fixup): Add comments explaining why predicates
+ were removed.
+ * a-cdlili.adb (Vet): Remove always-true predicates.
+
+2009-11-30 Thomas Quinot <quinot@adacore.com>
+
+ * s-sechas.adb, s-sechas.ads, s-shshco.adb, s-shshco.ads, s-shsh64.adb,
+ s-shsh64.ads, s-sehamd.adb, s-sehamd.ads, s-shsh32.adb, s-shsh32.ads,
+ s-sehash.adb, s-sehash.ads, g-sechas.adb, g-sechas.ads, g-shshco.adb,
+ g-shshco.ads, g-md5.ads, g-sha256.ads, g-shsh64.adb, g-shsh64.ads,
+ g-sehamd.adb, g-sehamd.ads, g-sha512.ads, g-sha1.ads, Makefile.rtl,
+ g-sha224.ads, g-shsh32.adb, g-shsh32.ads, g-sha384.ads, g-sehash.adb,
+ g-sehash.ads: Rename System.Secure_Hashes to GNAT.Secure_Hashes.
+
+2009-11-30 Robert Dewar <dewar@adacore.com>
+
+ * osint.ads: Minor comment update.
+
+2009-11-30 Thomas Quinot <quinot@adacore.com>
+
+ * s-sechas.adb: Fix swapping error in previous checkin.
+ * g-md5.ads, g-sha256.ads, g-sha512.ads, g-sha1.ads, g-sha224.ads,
+ g-sha384.ads: Add missing documentation.
+
+2009-11-30 Robert Dewar <dewar@adacore.com>
+
+ * g-sha256.ads, s-sehamd.ads, s-sehamd.adb, g-sha512.ads, g-sha224.ads,
+ g-sha384.ads: Minor reformatting
+
+2009-11-30 Emmanuel Briot <briot@adacore.com>
+
+ * adaint.h (file_attributes): Reduce size of the structure, so that it
+ is less costly to store in records.
+ * makeutl.adb:
+ (Check_Source_Info_In_ALI): use Full_Source_Name instead of a direct
+ call to Find_File, since the former provides caching when appropriate,
+ which limits the number of system calls in some cases.
+ * osint.ads, prj.ads (Source_Data): do not store directly the timestamp,
+ but the file attributes since we also need access to the size of the
+ ALI file to parse it. This gives an opportunity for saving system calls
+ on Unix systems.
+
+2009-11-30 Robert Dewar <dewar@adacore.com>
+
+ * sem_prag.adb, s-sechas.ads, s-sechas.adb: Minor reformatting.
+
+2009-11-30 Gary Dismukes <dismukes@adacore.com>
+
+ * sem_prag.adb (Process_Convention): Change formal E to Ent. In the
+ case where the pragma's entity argument is a renaming, return the
+ entity denoted by the renaming rather than the renamed entity. Loop
+ through the homonyms of the original argument entity, rather than the
+ homonyms of any renamed entity. Correct call to Generate_Entity to
+ pass the homonym.
+
+2009-11-30 Vincent Celier <celier@adacore.com>
+
+ * impunit.adb: Add packages that were added to the GNAT library:
+ GNAT.SHA224, GNAT.SHA256, GNAT.SHA384 and GNAT.SHA512.
+ * s-sechas.adb (Fill_Buffer_Copy): Fixes incorrect slice index
+
+2009-11-30 Robert Dewar <dewar@adacore.com>
+
+ * exp_ch3.adb: Minor reformatting
+ * g-md5.ads, g-sha1.ads: Add comment.
+
+2009-11-30 Arnaud Charlet <charlet@adacore.com>
+
+ * gcc-interface/Makefile.in: Remove handling of libgccprefix, no longer
+ needed.
+
+2009-11-30 Pascal Obry <obry@adacore.com>
+
+ * expect.c: Fix cast to avoid warnings in x86-64 Windows.
+
+2009-11-30 Thomas Quinot <quinot@adacore.com>
+
+ * gnat_rm.texi, s-sechas.adb, s-sechas.ads, s-shshco.adb,
+ s-shshco.ads, g-md5.adb, g-md5.ads, g-sha256.ads, s-shsh64.adb,
+ s-shsh64.ads, s-sehamd.adb, s-sehamd.ads, g-sha512.ads, g-sha1.adb,
+ g-sha1.ads, Makefile.rtl, g-sha224.ads, g-sha384.ads, s-shsh32.adb,
+ s-shsh32.ads, s-sehash.adb, s-sehash.ads: Reimplementation of GNAT.MD5
+ and GNAT.SHA1 to factor shared code and avoid unnecessary stack copies.
+ Also introduce new functions SHA-{224,256,384,512}
+
+2009-11-30 Jerome Lambourg <lambourg@adacore.com>
+
+ * exp_ch3.adb (Make_Predefined_Primitive_Specs): Improve comment for
+ the Value_Type case.
+
+2009-11-30 Thomas Quinot <quinot@adacore.com>
+
+ * a-textio.adb: Minor reformatting
+
+2009-11-30 Pascal Obry <obry@adacore.com>
+
+ * adaint.c: Fix bug in passing parameter.
+ * expect.c: Include io.h to get definition of _open_osfhandle
+
+2009-11-30 Javier Miranda <miranda@adacore.com>
+
+ * exp_ch6.adb, sem_scil.adb (Adjust_SCIL_Node): Add missing management
+ of N_Unchecked_Type_Conversion nodes when searching for SCIL nodes.
+ (Expand_Call): Adjust decoration of SCIL node associated with relocated
+ function call.
+
+2009-11-30 Emmanuel Briot <briot@adacore.com>
+
+ * prj-env.adb (Add_To_Source_Path): Preserve casing of directories
+
+2009-11-30 Vincent Celier <celier@adacore.com>
+
+ * opt.ads (No_Split_Units): New flag initialized to False
+
+2009-11-30 Jerome Lambourg <lambourg@adacore.com>
+
+ * exp_ch7.adb (Needs_Finalization): Add comments.
+ * exp_ch3.adb (Make_Predefined_Primitive_Specs): Improve handling of
+ CIL Value types.
+
+2009-11-30 Robert Dewar <dewar@adacore.com>
+
+ * osint.adb, a-rttiev.adb: Minor reformatting.
+
+2009-11-30 Robert Dewar <dewar@adacore.com>
+
+ * gnat_rm.texi: Remove list of warning letters, and refer instead to
+ using gnatmake to get a brief list.
+
+ * debug.adb: Document -gnatd.i to disable pragma Warnings
+ * par-prag.adb, sem_prag.adb: Recognize -gnatd.i to disable Warnings
+ pragma.
+ * vms_data.ads: Add /NOWARNINGS_PRAGMS for -gnatd.i
+
+2009-11-30 Geert Bosch <bosch@adacore.com>
+
+ * a-ngelfu.adb (Sin): Correct spelling of sine in comment.
+
+2009-11-30 Vincent Celier <celier@adacore.com>
+
+ * gnatls.adb: Do not call Get_Target_Parameters in Verbose_Mode, as it
+ is not needed and gnatls fails when called with -v -nostdinc.
+
+2009-11-30 Emmanuel Briot <briot@adacore.com>
+
+ * osint.adb, osint.ads (File_Time_Stamp): new subprogram.
+
+2009-11-30 Ed Schonberg <schonberg@adacore.com>
+
+ * gnat_rm.texi, gnat_ugn.texi: Document new syntax for pragma Annotate
+
+2009-11-30 Robert Dewar <dewar@adacore.com>
+
+ * scans.ads (Wide_Wide_Character_Found): New flag
+ * scn.adb (Post_Scan): Set new flag Has_Wide_Wide_Character
+ * scng.adb (Set_String): Set new flag Wide_Wide_Character_Found
+ (Set_String): Fix failure to reset Wide_Character_Found
+ * sinfo.adb (Has_Wide_Wide_Character): New flag in N_String_Literal
+ * sinfo.ads (Has_Wide_Wide_Character): New flag in N_String_Literal
+ * a-ngelfu.adb: Minor reformatting & code reorganization.
+ * usage.adb: Fix typo in -gnatw.W line
+
+2009-11-30 Robert Dewar <dewar@adacore.com>
+
+ * osint.adb, prj-nmsc.adb, sem_prag.adb, sem_util.adb: Minor
+ reformatting.
+ * csinfo.adb: Terminate run if improper use of reserved flag
+ * sinfo.ads, sinfo.adb (Is_Accessibility_Actual): Don't use reserved
+ Flag12, used Flag13 instead.
+
+2009-11-30 Vincent Celier <celier@adacore.com>
+
+ * gnatcmd.adb (Check_Files): Recognize documented switches that have a
+ separate parameter.
+
+2009-11-30 Robert Dewar <dewar@adacore.com>
+
+ * sem_util.ads: Minor reformatting
+ * errout.adb: Minor reformatting
+ Minor code reorganization (use N_Subprogram_Specification to simplify)
+ * exp_ch7.adb: Add comment.
+
+2009-11-30 Thomas Quinot <quinot@adacore.com>
+
+ * put_scos.adb (Put_SCOs): Do not generate a SCO unit header for a unit
+ that has no SCOs.
+ * scos.ads: Minor reformatting
+
+2009-11-30 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_prag.adb: Second unanalyzed parameter of Annotate is optional.
+
+2009-11-30 Eric Botcazou <ebotcazou@adacore.com>
+
+ * init.c (__gnat_adjust_context_for_raise, Linux version): Add guard
+ for null PC saved in the context.
+
+2009-11-30 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * a-calend.adb (Day_Of_Week): Rewritten. The routine determines the
+ number of days from the Ada Epoch to the input date while ensuring that
+ both dates are in the same time zone.
+
+2009-11-30 Emmanuel Briot <briot@adacore.com>
+
+ * clean.adb ("-eL"): Also set Follow_Links_For_Dirs, to match what is
+ done in other project-aware tools like gnatmake and gprbuild.
+
+2009-11-30 Jerome Lambourg <lambourg@adacore.com>
+
+ * exp_ch3.adb (Make_Predefined_Primitive_Specs): Take care of CIL
+ ValueTypes.
+ * exp_ch7.adb (Needs_Finalization): Do not finalize CIL valuetypes.
+ * sem_util.adb (Is_Value_Type): Protect against invalid calls to Chars
+ (Is_Delegate): New method used for CIL.
+ * sem_util.ads (Is_Delegate): New method for CIL handling.
+ (Is_Value_Type): Improve documentation.
+
+2009-11-30 Ed Schonberg <schonberg@adacore.com>
+
+ * errout.adb (Unwind_Internal_Type): Improve error reporting if the
+ type is an anonymous access to subprogram that is the type of a formal
+ in a subprogram spec.
+
+2009-11-30 Vincent Celier <celier@adacore.com>
+
+ * prj-nmsc.adb (Check_Interfaces): In a Stand-Alone Library project, if
+ attribute Interfaces is not declared, then Library_Interface should
+ define the interfaces.
+
+2009-11-30 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_prag.adb: New semantics for Annotate.
+
+2009-11-30 Tristan Gingold <gingold@adacore.com>
+
+ * gcc-interface/Makefile.in: Do not link with -static-libgcc on Darwin.
+
+2009-11-30 Emmanuel Briot <briot@adacore.com>
+
+ * gnat_ugn.texi: Extend doc for -eL
+
+2009-11-30 Vincent Celier <celier@adacore.com>
+
+ * osint.adb (Executable_Name (File_Name_Type)): Put the Name in the
+ Name_Buffer before testing for a dot in the Name.
+
+2009-11-30 Vincent Celier <celier@adacore.com>
+
+ * prj-part.adb (Project_Path_Name_Of): Resolve links for final result
+ if -eL has been specified.
+
+2009-11-30 Vincent Celier <celier@adacore.com>
+
+ * osint.adb (Executable_Name): Test the name instead of the name buffer
+ to check if there is a dot in the given name.
+
+2009-11-30 Sergey Rybin <rybin@adacore.com>
+
+ * gnat_ugn.texi: Update gnatcheck doc.
+
+2009-11-30 Robert Dewar <dewar@adacore.com>
+
+ * sem_ch3.adb, sem_disp.adb, usage.adb: Minor reformatting
+
+2009-11-30 Vasiliy Fofanov <fofanov@adacore.com>
+
+ * gnat_ugn.texi: Minor editing.
+
+2009-11-30 Emmanuel Briot <briot@adacore.com>
+
+ * prj-nmsc.adb (Search_Directories): when -eL was not specified, assume
+ that no directory matches the naming scheme for sources.
+
+2009-11-30 Emmanuel Briot <briot@adacore.com>
+
+ * prj.adb, prj.ads, prj-nmsc.adb (Has_Multi_Unit_Sources): New field in
+ project_data.
+
+2009-11-30 Vincent Celier <celier@adacore.com>
+
+ * osint.adb (Executable_Name): Correctly decide if the executable
+ suffix should be added when Only_If_No_Suffix is True.
+
+2009-11-30 Robert Dewar <dewar@adacore.com>
+
+ * frontend.adb, gnatlink.adb, prj-conf.adb, prj-tree.adb,
+ prj-tree.ads: Minor reformatting
+
+2009-11-30 Vincent Celier <celier@adacore.com>
+
+ * gnatlink.adb (Process_Args): Call Executable_Name on argument of -o
+ with Only_If_No_Suffix set to True.
+ * osint.adb (Executable_Name): Do not add executable suffix if there is
+ already a suffix and Only_If_No_Suffix is True.
+ * osint.ads (Executable_Name): New Boolean parameter Only_If_No_Suffix,
+ defaulted to False.
+
+2009-11-30 Javier Miranda <miranda@adacore.com>
+
+ * exp_atag.adb (Build_TSD): Change argument name because the actual is
+ now the address of a tag (instead of the tag). Update implementation
+ accordingly.
+ (Build_CW_Membership): New implementation. Converted into a procedure
+ because it has an additional out mode parameter. Its implementation has
+ been rewritten to improve the generated code but also to facilitate
+ referencing the relocated object node in the caller.
+ * exp_atag.ads (Build_CW_Membership): Update profile and documentation.
+ * sinfo.ads (N_SCIL_Membership_Test) New_Node.
+ (SCIL_Tag_Value): New field of N_SCIL_Membership_Test nodes.
+ (Is_Syntactic_Field): Add entry of new node.
+ (SCIL_Tag_Value/Set_SCIL_Tag_Value): New subprograms.
+ * sinfo.adb (SCIL_Related_Node, SCIL_Entity): Update assertions to
+ handle N_SCIL_Membership_Test nodes.
+ (SCIL_Tag_Value/Set_SCIL_Tag_Value): New subprograms.
+ * sem.adb (Analyze): Add null management for new node.
+ * sem_scil.adb (Find_SCIL_Node): Add null management for new node.
+ (Check_SCIL_Node): Add checks of N_SCIL_Membership_Test nodes.
+ * exp_ch4.adb (Tagged_Membership): Change profile from function to
+ procedure. Add generation of SCIL node associated with class-wide
+ membership test.
+ (Expand_N_In): Complete decoration of SCIL nodes.
+ * exp_intr.adb (Expand_Dispatching_Constructor_Call): Tune call to
+ Build_CW_Membership because its profile has been changed.
+ * exp_util.adb (Insert_Actions): Add null management for new node.
+ * sprint.adb (Sprint_Node_Actual): Handle new node.
+ * gcc-interface/trans.c Add no processing for N_SCIL_Membership_Test
+ nodes.
+ * gcc-interface/Make-lang.in: Update dependencies.
+
+2009-11-30 Ed Schonberg <schonberg@adacore.com>
+
+ * opt.ads: New flags Init_Or_Norm_Scalars_Config,
+ Initialize_Scalars_Config, to capture the presence of the corresponding
+ pragmas in a configuration file.
+ * opt.adb (Register_, Save_, Set_, Restore_Opt_Configuration_Switches):
+ handle new flags so that they are restored for each compilation unit.
+ * frontend.adb: At the end of compilation, scan the context of the main
+ unit to recover occurrences of pragma Initialize_Scalars, to annotate
+ the ALI file accordingly.
+
+2009-11-30 Vincent Celier <celier@adacore.com>
+
+ * prj-tree.ads: Minor comment updates
+ * prj-tree.adb: Minor reformatting
+
+2009-11-30 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_ch3.adb (Derive_Subprogram): Indicate that an inherited
+ predefined control operation is hidden if the parent type is not
+ visibly controlled.
+ * sem_ch6.adb (Check_Overriding_Indicator): Do not report error if
+ overridden operation is not visible, as may be the case with predefined
+ control operations.
+ * sem_disp.adb (Check_Dispatching_Operation): Do not emit warning on
+ non-overriding control operation when type is not visibly controlled,
+ if the subprogram has an explicit overriding indicator.
+ * sem_util.ads, sem_util.adb (Is_Visibly_Controlled): Moved here from
+ sem_disp.adb.
+
+2009-11-30 Emmanuel Briot <briot@adacore.com>
+
+ * prj-tree.adb (Create_Attribute): Fix handling of VMS and Windows
+ * prj-attr.ads: Minor comment updates
+
+2009-11-30 Robert Dewar <dewar@adacore.com>
+
+ * gnat_rm.texi: Document pragma Short_Circuit
+
+2009-11-30 Emmanuel Briot <briot@adacore.com>
+
+ * prj-conf.adb, prj-tree.adb, prj-tree.ads (Create_Attribute): Now set
+ the index either on the attribute or on its value, depending on the
+ kind of the attribute. Done to match recent changes in Prj.PP that were
+ not synchronized with this function.
+
+2009-11-30 Arnaud Charlet <charlet@adacore.com>
+
+ * gcc-interface/Make-lang.in: Fix typo.
+ Update dependencies.
+
+2009-11-30 Robert Dewar <dewar@adacore.com>
+
+ * gnat_rm.texi: Add documentation for attribute Result.
+
+2009-11-30 Arnaud Charlet <charlet@adacore.com>
+
+ * s-osinte-hpux.ads, s-osinte-aix.ads, s-osinte-solaris-posix.ads,
+ s-osinte-tru64.ads, s-osinte-darwin.ads, s-osinte-freebsd.ads
+ (Get_Page_Size): Update comment since Get_Page_Size is now required.
+
+2009-11-30 Jerome Lambourg <lambourg@adacore.com>
+
+ * freeze.adb: Disable Warning on VM targets concerning C Imports, not
+ relevant.
+
+2009-11-30 Bob Duff <duff@adacore.com>
+
+ * sprint.adb (Source_Dump): Minor comment fix.
+ (Write_Itype): When writing a string literal subtype, use Expr_Value
+ instead of Intval to get the low bound.
+
+2009-11-30 Vincent Celier <celier@adacore.com>
+
+ * gnatlink.adb (Process_Args): Do not call Executable_Name on arguments
+ of switch -o.
+
+2009-11-30 Robert Dewar <dewar@adacore.com>
+
+ * exp_ch4.adb (Expand_N_Op_And): Implement pragma Short_Circuit_And_Or
+ (Expand_N_Op_Or): Implement pragma Short_Circuit_And_Or
+ * opt.ads (Short_Circuit_And_Or): New flag
+ * par-prag.adb: Add dummy entry for pragma Short_Circuit_And_Or
+ * sem_prag.adb: Implement pragma Short_Circuit_And_Or
+ * snames.ads-tmpl: Add entries for pragma Short_Circuit_And_Or
+
+2009-11-30 Arnaud Charlet <charlet@adacore.com>
+
+ * s-taprop-posix.adb: Fix casing.
+ * s-osinte-tru64.adb: Complete previous check-in.
+
+2009-11-30 Robert Dewar <dewar@adacore.com>
+
+ * gnat_rm.texi: Document pragma Compiler_Unit
+ * s-bitops.adb, s-restri.adb, g-htable.adb, s-restri.ads,
+ a-comlin.ads, a-strhas.ads, s-strhas.adb, s-parame.adb,
+ s-parame.ads, a-clrefi.adb, a-clrefi.ads, a-ioexce.ads: Supply missing
+ Compiler_Unit pragmas.
+ * freeze.adb (Freeze_Entity): Improve message for 8-bit boolean passed
+ to C.
+
+2009-11-30 Robert Dewar <dewar@adacore.com>
+
+ * makeutl.adb, makeutl.ads, prj-proc.adb, prj.adb, prj.ads: Minor
+ reformatting.
+
+2009-11-30 Thomas Quinot <quinot@adacore.com>
+
+ * osint.adb: Minor reformatting
+
+2009-11-30 Vincent Celier <celier@adacore.com>
+
+ * makeutl.ads, makeutl.adb (Base_Name_Index_For): New function to get
+ the base name of a main without the extension, with an eventual source
+ index.
+ (Mains.Get_Index): New procedure to set the source index of a main
+ (Mains.Get_Index): New function to get the source index of a main
+ * prj-attr.adb: New attributes Config_Body_File_Name_Index,
+ Config_Spec_File_Name_Index, Multi_Unit_Object_Separator and
+ Multi_Unit_Switches.
+ * prj-nmsc.adb (Process_Compiler): Takle into account new attributes
+ Config_Body_File_Name_Index, Config_Spec_File_Name_Index,
+ Multi_Unit_Object_Separator and Multi_Unit_Switches.
+ Allow only one character for Multi_Unit_Object_Separator.
+ * prj-proc.adb (Process_Declarative_Items): Take into account the
+ source indexes in indexes of associative array attribute declarations.
+ * prj.adb (Object_Name): New function to get the object file name for
+ units in multi-unit sources.
+ * prj.ads (Language_Config): New components Multi_Unit_Switches,
+ Multi_Unit_Object_Separator Config_Body_Index and Config_Spec_Index.
+ (Object_Name): New function to get the object file name for units in
+ multi-unit sources.
+ * snames.ads-tmpl: New standard names Config_Body_File_Name_Index,
+ Config_Spec_File_Name_Index, Multi_Unit_Object_Separator and
+ Multi_Unit_Switches.
+
+2009-11-30 Arnaud Charlet <charlet@adacore.com>
+
+ * s-tassta.adb: Update comment.
+
+2009-11-30 Robert Dewar <dewar@adacore.com>
+
+ * a-ngelfu.adb: Minor code reorganization.
+
+2009-11-30 Robert Dewar <dewar@adacore.com>
+
+ * osint.ads, prj.adb, prj.ads: Minor reformatting
+ * s-stchop.adb, s-taprop-vxworks.adb, s-taprop-tru64.adb,
+ s-taprop-vms.adb, s-taprop-linux.adb, s-taprop-solaris.adb,
+ s-strxdr.adb, s-taprop-irix.adb, s-osinte-hpux-dce.adb,
+ s-osinte-tru64.adb, s-taenca.adb, s-taprop-hpux-dce.adb, s-stausa.adb,
+ s-taprop-posix.adb: Minor code reorganization (use conditional
+ expressions).
+
+2009-11-30 Bob Duff <duff@adacore.com>
+
+ * g-sttsne-locking.adb (Copy_Service_Entry): Complete previous change.
+
+2009-11-30 Bob Duff <duff@adacore.com>
+
+ * socket.c: Add more accessor functions for struct servent (need
+ setters as well as getters).
+ * g-sothco.ads (Servent): Declare interfaces to C setter functions for
+ struct servent.
+ * g-sttsne-locking.adb (Copy_Service_Entry): Use setter functions for
+ struct servent.
+
+2009-11-30 Robert Dewar <dewar@adacore.com>
+
+ * s-stchop-vxworks.adb: Add comment.
+
+2009-11-30 Emmanuel Briot <briot@adacore.com>
+
+ * make.adb, prj.adb, prj.ads (Compute_All_Imported_Projects): Now acts
+ on the whole tree, to better share code with gprbuild.
+ (Length): New subprogram, to share code in gprbuild.
+ (Project_Data): Remove fields that are only needed when compiling a
+ project in gprbuild (where we use local variables instead)
+ * osint.adb, osint.ads: Added minor comment on memory management
+
+2009-11-30 Sergey Rybin <rybin@adacore.com>
+
+ * gnat_ugn.texi: Update gnatcheck doc.
+
+2009-11-30 Robert Dewar <dewar@adacore.com>
+
+ make.adb, prj-makr.adb, g-sothco.ads: Minor reformattting
+ * s-taprop-dummy.adb: Minor code reorganization (raise with msgs start
+ with lower case).
+ * i-vxwoio.adb, g-dirope.adb, g-sercom-linux.adb,
+ g-enblsp-vms-alpha.adb, g-regist.adb, s-imgcha.adb, s-tarest.adb,
+ s-taprop-mingw.adb, g-exctra.adb, g-expect.adb, g-comlin.adb,
+ g-debpoo.adb, g-expect-vms.adb, g-pehage.adb, g-trasym-vms-alpha.adb,
+ g-enblsp-vms-ia64.adb, s-fatgen.adb, s-fileio.adb: Minor code
+ reorganization (use conditional expressions).
+
+2009-11-30 Vincent Celier <celier@adacore.com>
+
+ * prj-makr.adb (Source_Files): New hash table to keep track of source
+ file names.
+ (Finalize): Avoid putting several times the same source file name
+ in the source list file.
+ * prj-pp.adb (Print): Fix a bug in the placement of "at nn" for
+ associative array indexes.
+
+2009-11-30 Robert Dewar <dewar@adacore.com>
+
+ * g-dyntab.ads: Add missing pragma Compiler_Unit
+
+2009-11-30 Thomas Quinot <quinot@adacore.com>
+
+ * s-crtrun.ads, s-crtl.ads, g-stseme.adb, Makefile.rtl, s-fileio.adb
+ (System.CRTL.Runtime): New unit, to contain parts of s-crtl that are
+ used in the Ada runtime but can't be used in the compiler because of
+ bootstrap issues.
+ * socket.c, s-oscons-tmplt.c, g-sothco.ads
+ (System.OS_Constants.SIZEOF_struct_servent): New constant.
+ Use s-oscons constant instead of external variable to get size of
+ struct hostent.
+
+2009-11-30 Thomas Quinot <quinot@adacore.com>
+
+ * s-crtl.ads, g-stseme.adb, s-fileio.adb (System.CRTL.strerror): Change
+ return type to Interfaces.C.Strings.chars_ptr to eliminate need for
+ dubious unchecked conversion at call sites.
+ * s-errrep.adb, s-errrep.ads, Makefile.rtl (System.Error_Reporting):
+ Remove obsolete, unused runtime unit.
+ * gcc-interface/Make-lang.in: Update dependencies.
+ * gcc-interface/Makefile.in: Remove VMS specialization of s-crtl, not
+ required anymore.
+
+2009-11-30 Vincent Celier <celier@adacore.com>
+
+ * gnatlink.adb: Delete an eventual existing executable file, in case it
+ is a symbolic link, to avoid modifying the target of the symbolic link.
+
+2009-11-30 Bob Duff <duff@adacore.com>
+
+ * socket.c: Add accessor functions for struct servent.
+ * g-sothco.ads (Servent): Declare interfaces to C accessor functions
+ for struct servent.
+ * g-socket.adb (To_Service_Entry): Use accessor functions for struct
+ servent.
+
+2009-11-30 Robert Dewar <dewar@adacore.com>
+
+ * g-arrspl.adb: Minor reformatting
+ * g-dyntab.adb: Add missing pragma Compiler_Unit
+
+2009-11-30 Thomas Quinot <quinot@adacore.com>
+
+ * s-crtl.ads, s-oscons-tmplt.c: Fix support for VMS
+ * make.adb, g-comlin.ads, exp_ch6.adb: Minor reformatting
+
+2009-11-30 Robert Dewar <dewar@adacore.com>
+
+ * bcheck.adb, gnatlink.adb, make.adb, makeutl.adb, osint.adb,
+ osint.ads, prj-ext.adb, sem_case.adb: Minor reformatting
+ * g-alleve.adb: Minor code reorganization (use conditional expressions)
+
+2009-11-30 Matthew Heaney <heaney@adacore.com>
+
+ * a-crbtgo.adb (Delete_Fixup): Changed always-true predicates to
+ assertions.
+
+2009-11-30 Thomas Quinot <quinot@adacore.com>
+
+ * a-tasatt.adb, s-crtl.ads, s-taprop-dummy.adb (System.CRTL.malloc32,
+ System.CRTL.realloc32): Remove VMS-specific routines.
+ (Ada.Task_Attributes.Reference): Remove unreachable code.
+ (System.Task_Primitives.Operations.Initialize, dummy version):
+ Use plain Program_Error rather than call to
+ System.Error_Reporting.Shutdown.
+
+2009-11-30 Thomas Quinot <quinot@adacore.com>
+
+ * s-oscons-tmplt.c, xoscons.adb: Add new constants in preparation for
+ sharing s-crtl across all platforms.
+
+2009-11-30 Thomas Quinot <quinot@adacore.com>
+
+ * s-commun.adb, s-commun.ads: New internal support unit,
+ allowing code sharing between GNAT.Sockets and
+ GNAT.Serial_Communication.
+ * g-sercom.ads, g-sercom-mingw.adb, g-sercom-linux.adb,
+ g-socket.adb (GNAT.Sockets.Last_Index): Move to System.Communication.
+ (GNAT.Serial_Communication.Read): Handle correctly the case where no
+ data was read, and Buffer'First = Stream_Element_Offset'First.
+ * Makefile.rtl: Add entry for s-commun
+ * g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
+ g-socthi-vxworks.ads, g-stseme.adb, g-socthi-mingw.ads,
+ g-socthi.adb, g-socthi.ads (GNAT.Sockets.Thin.Socket_Error_Message):
+ Reimplement in terms of System.CRTL.strerror.
+
+2009-11-26 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/utils.c (copy_type): Unshare the language-specific data
+ and the contents of the language-specific slot if needed.
+
+2009-11-26 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/trans.c (gnat_to_gnu) <N_In>: Set the source location
+ of the operator on both branches of the test in the generic case.
+
+2009-11-25 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/trans.c (unchecked_conversion_lhs_nop): Rename into...
+ (unchecked_conversion_nop): ...this. Handle actual parameters.
+ (gnat_to_gnu): Adjust for above renaming.
+
+2009-11-25 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Enumeration_Type>:
+ Translate regular boolean types into BOOLEAN_TYPEs.
+
+2009-11-24 Eric Botcazou <ebotcazou@adacore.com>
+
+ * sem_util.adb (Set_Debug_Info_Needed): For an E_Class_Wide_Subtype,
+ also set the flag on the Equivalent_Type.
+ * gcc-interface/utils.c (finish_record_type): Replace DO_NOT_FINALIZE
+ parameter with DEBUG_INFO_P. Rename FIELDLIST into FIELD_LIST.
+ (rest_of_record_type_compilation): Rename FIELDLIST into FIELD_LIST.
+ (build_vms_descriptor32): Adjust call to finish_record_type.
+ (build_vms_descriptor): Likewise.
+ (build_unc_object_type): Likewise.
+ * gcc-interface/decl.c (gnat_to_gnu_entity): Adjust calls to
+ finish_record_type and components_to_record.
+ (make_packable_type): Adjust call to finish_record_type.
+ (maybe_pad_type): Likewise. Tweak condition.
+ (components_to_record): Likewise. Replace DO_NOT_FINALIZE parameter
+ with MAYBE_UNUSED. Adjust recursive call.
+ (create_variant_part_from): Adjust call to finish_record_type. Do not
+ call rest_of_record_type_compilation on the new record types.
+ * gcc-interface/trans.c (gigi): Adjust call to finish_record_type.
+ * gcc-interface/gigi.h (finish_record_type): Adjust prototype and
+ comment.
+ (rest_of_record_type_compilation): Adjust comment.
+
+2009-11-24 Eric Botcazou <ebotcazou@adacore.com>
+
+ * exp_util.adb (Make_CW_Equivalent_Type): Do not mark the type as
+ frozen for targets that do not require front-end layout.
+ (New_Class_Wide_Subtype): Always reset the freezing status to False.
+ * exp_ch8.adb: Do not 'with' Targparm.
+ (Expand_N_Object_Renaming_Declaration): Always freeze a class-wide
+ subtype that has been built from the expression.
+ * exp_intr.adb (Expand_Unc_Deallocation): If the designated type is
+ class wide, freeze the implicit type that has been built from the
+ expression at the dereference point.
+ * freeze.adb (Freeze_Entity): Adjust comment.
+ * gcc-interface/decl.c (Gigi_Equivalent_Type) <E_Class_Wide_Type>:
+ Remove useless test.
+ * gcc-interface/trans.c (process_freeze_entity): Do not special-case
+ class-wide subtypes.
+
+ * s-osinte-aix.adb (clock_gettime): Fix comment.
+ * s-osinte-darwin.adb (clock_gettime): Likewise.
+
+2009-11-23 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Variable>: Pass the list
+ of attributes when building the corresponding variable of a constant.
+ * gcc-interface/utils.c (create_var_decl_1): Do not process attributes
+ for constants.
+
+2009-11-23 Laurent GUERBY <laurent@guerby.net>
+ Eric Botcazou <ebotcazou@adacore.com>
+
+ PR ada/42153
+ * s-osinte-linux.ads (struct_timeval): Delete.
+ * s-osinte-hpux.ads (struct_timeval, To_Duration, To_Timeval): Delete.
+ * s-osinte-kfreebsd-gnu.ads: Likewise.
+ * s-osinte-rtems.ads: Likewise.
+ * s-osinte-aix.ads: Likewise.
+ * s-osinte-hpux-dce.ads: Likewise.
+ * s-osinte-darwin.ads: Likewise.
+ * s-osinte-solaris-posix.ads: Likewise.
+ * s-osinte-irix.ads: Likewise.
+ * s-osinte-solaris.ads: Likewise.
+ * s-osinte-hpux-dce.adb (To_Duration, To_Timeval): Delete.
+ * s-osinte-irix.adb: Likewise.
+ * s-osinte-solaris.adb: Likewise.
+ * s-osinte-rtems.adb: Likewise. Minor reformatting.
+ * s-osinte-aix.adb (To_Duration, To_Timeval): Delete.
+ (clock_gettime): Use cal.c's timeval_to_duration.
+ * s-osinte-darwin.adb: Likewise.
+
+2009-11-23 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ * adaint.h: Assume large file support on IRIX only if _LFAPI.
+
+2009-11-21 Laurent GUERBY <laurent@guerby.net>
+ Eric Botcazou <ebotcazou@adacore.com>
+
+ * s-osinte-linux.ads (struct_timeval, To_Duration, To_Timeval,
+ gettimeofday): Delete.
+ * s-osinte-posix.adb (To_Duration, To_Timeval): Delete.
+ * s-osprim-posix.adb (struct_timezone, struct_timeval, gettimeofday):
+ Delete.
+ (Clock): Use cal.c's timeval_to_duration.
+ * s-taprop-linux.adb (Monotonic_Clock): Likewise.
+
+2009-11-12 Eric Botcazou <ebotcazou@adacore.com>
+ Laurent GUERBY <laurent@guerby.net>
+
+ * init.c (GNU/Linux Section): Enable for all architectures.
+
+2009-11-10 Eric Botcazou <ebotcazou@adacore.com>
+
+ PR ada/20548
+ * system-linux-alpha.ads (Stack_Check_Probes): Set to true.
+ * system-linux-hppa.ads (Stack_Check_Probes): Likewise.
+ * system-linux-sparc.ads (Stack_Check_Probes): Likewise.
+ * system-linux-sparcv9.ads (Stack_Check_Probes): Likewise.
+
+2009-11-10 Eric Botcazou <ebotcazou@adacore.com>
+
+ * system-linux-alpha.ads (AAMP, Compiler_System_Version, OpenVMS,
+ Front_End_ZCX_Support, High_Integrity_Mode, Long_Shifts_Inlined):
+ Delete.
+ (Stack_Check_Limits, Always_Compatible_Rep): New.
+ * system-linux-mips.ads (AAMP, Compiler_System_Version, OpenVMS,
+ Front_End_ZCX_Support, High_Integrity_Mode, Long_Shifts_Inlined):
+ Delete.
+ (Stack_Check_Limits, Always_Compatible_Rep): New.
+ * system-linux-mips64el.ads (AAMP, Compiler_System_Version, OpenVMS,
+ Functions_Return_By_DSP, Front_End_ZCX_Support, High_Integrity_Mode,
+ Long_Shifts_Inlined): Delete.
+ (Stack_Check_Limits, Always_Compatible_Rep): New.
+ * system-linux-mipsel.ads (AAMP, Compiler_System_Version, OpenVMS,
+ Front_End_ZCX_Support, High_Integrity_Mode, Long_Shifts_Inlined):
+ Delete.
+ (Stack_Check_Limits, Always_Compatible_Rep): New.
+ * system-linux-s390.ads (AAMP, Compiler_System_Version, OpenVMS,
+ Front_End_ZCX_Support, High_Integrity_Mode, Long_Shifts_Inlined):
+ Delete.
+ (Stack_Check_Limits, Always_Compatible_Rep): New.
+ * system-linux-s390x.ads (AAMP, Compiler_System_Version, OpenVMS,
+ Front_End_ZCX_Support, High_Integrity_Mode, Long_Shifts_Inlined):
+ Delete.
+ (Stack_Check_Limits, Always_Compatible_Rep): New.
+ * system-linux-sh4.ads (Stack_Check_Limits, Always_Compatible_Rep):
+ New.
+ * system-linux-sparc.ads (AAMP, Compiler_System_Version, OpenVMS,
+ Front_End_ZCX_Support): Delete.
+ (Stack_Check_Limits, Always_Compatible_Rep): New.
+ * system-linux-sparcv9.ads (AAMP, Compiler_System_Version, OpenVMS,
+ Front_End_ZCX_Support, High_Integrity_Mode, Long_Shifts_Inlined):
+ Delete.
+ (Stack_Check_Limits, Always_Compatible_Rep): New.
+ * system-rtems.ads (OpenVMS): Delete.
+ (Stack_Check_Limits, Always_Compatible_Rep): New.
+
+2009-11-08 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (make_packable_type): Fix oversight.
+ (gnat_to_gnu_field): Do not attempt to change the form of the type
+ if the field requires strict alignment. Always change the form of
+ the type if the specified size is smaller than its size.
+
+2009-11-05 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/utils.c (gnat_type_for_mode): Handle vector modes.
+
+2009-11-05 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/trans.c (lvalue_required_p) <N_Unchecked_Conversion>:
+ New case.
+
+2009-10-30 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/utils.c (MAX_FIXED_MODE_SIZE): Delete.
+ (create_field_decl): Update description. In a packed record, round
+ the size up to a byte boundary only if the field's type has BLKmode.
+ * gcc-interface/gigi.h (create_field_decl): Update description.
+
+2009-10-30 Emmanuel Briot <briot@adacore.com>
+
+ * make.adb (Start_Compile_If_Possible): Compute location of resulting
+ ALI file in this procedure instead of after the compilation itself,
+ since the current directory might have changed in between when using
+ -j<n>.
+
+ * osint.ads: Addded missing alignment clause.
+
+ * adaint.c, adaint.h, osint.adb (__gnat_reset_attributes,
+ __gnat_size_of_file_attributes): Rename reset_attributes and
+ size_of_file_attributes.
+
+2009-10-30 Javier Miranda <miranda@adacore.com>
+
+ * sem_scil.adb (Adjust_SCIL_Node): Add missing management of sequences
+ of statements when searching for SCIL nodes.
+
+2009-10-30 Tristan Gingold <gingold@adacore.com>
+
+ * gnatlink.adb, link.c: By default use shared libgcc on darwin.
+
+2009-10-30 Emmanuel Briot <briot@adacore.com>
+
+ * make.adb, osint.adb (Add_Lib_Search_Dir): Do not add if dir is
+ already in the list.
+ This saves system calls when looking for ALI files
+ (Scan_Make_Args): The parameter to gnatmake's -D is now converted to an
+ absolute PATH (so that the above improvement properly occurs if both
+ -D<dir> and -aO<dir> are specified).
+
+2009-10-30 Thomas Quinot <quinot@adacore.com>
+
+ * a-direct.adb: Minor reformatting
+
+2009-10-30 Emmanuel Briot <briot@adacore.com>
+
+ * make.adb, adaint.c, adaint.h, osint.adb, osint.ads, bcheck.adb
+ (*_attr): new subprograms.
+ (File_Length, File_Time_Stamp, Is_Writable_File): new subprograms
+ (Read_Library_Info_From_Full, Full_Library_Info_Name,
+ Full_Source_Name): Now benefit from a previous cache of the file
+ attributes, to further save on system calls.
+ (Smart_Find_File): now also cache the file attributes. This makes the
+ package File_Stamp_Hash_Table useless, and it was removed.
+ (Compile_Sources): create subprograms for the various steps of the main
+ loop, for readibility and to avoid sharing variables between the
+ various steps.
+
+2009-10-30 Emmanuel Briot <briot@adacore.com>
+
+ * make.adb, osint.adb, osint.ads (Library_File_Stamp): Removed, since
+ unused.
+ (Read_Library_Info_From_Full): New subprogram.
+
+2009-10-30 Robert Dewar <dewar@adacore.com>
+
+ * a-tideio.adb: Minor reformatting
+ * a-wtdeio.adb, a-ztdeio.adb: Update comments, code clean up.
+
+ * a-reatim.adb, a-tideau.adb, a-ngelfu.adb, a-ztdeau.adb, a-ngrear.adb,
+ a-wtedit.adb, a-ststio.adb, a-ztedit.adb: Minor code reorganization
+ (use conditional expressions).
+
+2009-10-30 Ed Schonberg <schonberg@adacore.com>
+
+ * gnat_ugn.texi: Additional info on gnatw.i and gnatw.I
+
+ * sem_case.adb: Improved error message.
+
+2009-10-30 Emmanuel Briot <briot@adacore.com>
+
+ * a-direct.adb, gnatcmd.adb, gnatname.adb, makeutl.adb, opt.ads,
+ osint.adb, prj-ext.adb, switch-m.adb (Follow_Links_For_Dirs): Now
+ defaults to False, and controlled by -eL.
+ * a-direct.adb: Add comments.
+ * osint.adb (File_Stamp): Avoid unneeded duplicate system call
+
+2009-10-30 Robert Dewar <dewar@adacore.com>
+
+ * sem_res.adb (Resolve_Type_Conversion): Avoid false positive when
+ converting non-static subtype to "identical" static subtype.
+
+2009-10-30 Ed Schonberg <schonberg@adacore.com>
+
+ * usage.adb: Add -gnatw.i switch.
+
+2009-10-30 Vincent Celier <celier@adacore.com>
+
+ * xsnamest.adb: Update comments with regards to the template files
+ snames.*.tmpl
+
+2009-10-30 Bob Duff <duff@adacore.com>
+
+ * s-fileio.adb (Errno_Message): Suppress VMS-specific warning.
+
+2009-10-30 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_case.adb (Check_Choices): Add explanatory message when there are
+ missing alternatives when the required range of alternatives is given
+ by the base type of the case expression or discriminant in a variant
+ part.
+
+ * opt.ads: New flag Warn_On_Overlap, to enable warnings on potentially
+ dangerous overlap between actuals in a call, activated by -gnatw.i
+ * sem_warn.adb (Set_Dot_Warning_Switch): set flag.
+ (Warn_On_Overlapping_Actuals): use new flag.
+
+ * gnat_ugn.texi: Document -gnatw.i, warning on overlapping actuals
+
+2009-10-30 Robert Dewar <dewar@adacore.com>
+
+ * exp_aggr.adb, exp_ch9.adb: Minor reformatting
+
+2009-10-29 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (make_type_from_size) <INTEGER_TYPE>: Do not
+ create integer types with precision 0.
+
+2009-10-29 Eric Botcazou <ebotcazou@adacore.com>
+
+ PR ada/41870
+ * gcc-interface/decl.c (array_type_has_nonaliased_component): Swap
+ parameters and rewrite comments. For a derived type, return the
+ setting of its parent type.
+ (gnat_to_gnu_entity): Do an alias set copy for derived types if they
+ are composite. Adjust calls to above function.
+
+2009-10-29 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/trans.c (Attribute_to_gnu) <Attr_Object_Size>: Do not
+ return the RM size for padded types.
+
+2009-10-28 Robert Dewar <dewar@adacore.com>
+
+ * sem_type.adb: Minor reformatting
+
+2009-10-28 Arnaud Charlet <charlet@adacore.com>
+
+ * exp_ch9.adb (Build_Task_Proc_Specification): Generate a different
+ suffix for task type bodies.
+
+2009-10-28 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <duff@adacore.com>
+
+ * s-fileio.adb: Give more information in exception messages.
+
+2009-10-28 Robert Dewar <dewar@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * s-crtl.ads (System.CRTL.strerror): New function.
+
+2009-10-28 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_type.adb: Add guard to recover some type errors.
+
+2009-10-28 Vincent Celier <celier@adacore.com>
+
+ * 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 <dismukes@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * prj-tree.adb (Free): Fix memory leak.
+
+2009-10-28 Thomas Quinot <quinot@adacore.com>
+
+ * s-fileio.adb: Minor reformatting
+
+2009-10-28 Arnaud Charlet <charlet@adacore.com>
+
+ * gcc-interface/Make-lang.in: Update dependencies.
+
+2009-10-28 Robert Dewar <dewar@adacore.com>
+
+ * exp_attr.adb, exp_ch9.adb, prj-nmsc.adb, tbuild.adb, ali.adb,
+ types.ads: Minor reformatting
+
+2009-10-28 Tristan Gingold <gingold@adacore.com>
+
+ * init.c: Fix __gnat_error_handler for Darwin10 (Snow Leopard)
+
+2009-10-28 Thomas Quinot <quinot@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * 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 <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (purpose_member_field): New static function.
+ (annotate_rep): Use it instead of purpose_member.
+
+2009-10-27 Eric Botcazou <ebotcazou@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * s-fileio.adb, s-fileio.ads, sem_util.adb, sem_warn.adb,
+ sem_warn.ads: Minor reformatting
+
+2009-10-27 Robert Dewar <dewar@adacore.com>
+
+ * sem_warn.adb, sem_util.adb, sem_util.ads: Minor reformatting. Add
+ comments.
+
+2009-10-27 Robert Dewar <dewar@adacore.com>
+
+ * s-os_lib.ads, s-os_lib.adb, prj-err.adb, makeutl.adb: Minor
+ reformatting.
+
+2009-10-27 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * 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 <celier@adacore.com>
+
+ * prj-part.adb (Parse): Catch exception Types.Unrecoverable_Error and
+ set Project to Empty_Node.
+
+2009-10-27 Robert Dewar <dewar@adacore.com>
+
+ * gnatbind.adb: Minor reformatting
+
+2009-10-27 Arnaud Charlet <charlet@adacore.com>
+
+ * exp_aggr.adb: Fix comment.
+
+2009-10-27 Emmanuel Briot <briot@adacore.com>
+
+ * prj-err.adb (Error_Msg): take into account continuation lines when
+ computing whether we have a warning.
+
+2009-10-27 Vasiliy Fofanov <fofanov@adacore.com>
+
+ * 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 <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: When
+ processing the parent type, build the COMPONENT_REF for a discriminant
+ with the proper type.
+
+2009-10-24 Eric Botcazou <ebotcazou@adacore.com>
+
+ * 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 <ebotcazou@adacore.com>
+
+ * gcc-interfaces/decl.c (build_subst_list): Convert the expression of
+ the constraint to the type of the discriminant.
+
+2009-10-21 Eric Botcazou <ebotcazou@adacore.com>
+
+ * 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 <ebotcazou@adacore.com>
+
+ * gcc-interfaces/utils.c (create_subprog_decl): Do not redefine
+ main_identifier_node.
+
+2009-10-17 Eric Botcazou <ebotcazou@adacore.com>
+
+ * 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.
+
+2009-10-17 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/utils2.c (build_binary_op) <ARRAY_RANGE_REF>: Make
+ sure the element type is consistent.
+
+2009-10-17 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/trans.c (addressable_p): Handle bitwise operations.
+
+2009-10-16 Eric Botcazou <ebotcazou@adacore.com>
+
+ * 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.
+ (protect_multiple_eval): Likewise.
+ (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.
+ (build_allocator): Likewise.
+
+2009-10-16 Eric Botcazou <ebotcazou@adacore.com>
+
+ * 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 <joel.sherrill@oarcorp.com>
+
+ * 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 <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ * env.c [__alpha__ && __osf__] (AES_SOURCE): Define.
+
+2009-10-10 Samuel Tardieu <sam@rfc1149.net>
+
+ * sem_eval.adb: Give a more precise error message.
+
+2009-10-06 Samuel Tardieu <sam@rfc1149.net>
+
+ PR ada/41383
+ * a-rttiev.adb (Time_Of_Event): Return Time_First for unset event.
+
+2009-10-06 Samuel Tardieu <sam@rfc1149.net>
+
+ 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 <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>:
+ Generate an XVZ variable alongside the XVS type if the size is
+ not constant.
+ (maybe_pad_type): Minor tweak.
+
+2009-10-02 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (check_ok_for_atomic): Do nothing if the type
+ doesn't come from source.
+
+2009-10-02 Eric Botcazou <ebotcazou@adacore.com>
+
+ * 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 <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Factor out
+ common code processing the component type into...
+ <E_Array_Subtype>: Likewise.
+ (gnat_to_gnu_component_type): ...this new static function.
+ (maybe_pad_type): Minor cleanup.
+
+2009-09-29 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: 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 <hainque@adacore.com>
+
+ 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 <rth@redhat.com>
+
+ * gcc-interface/utils.c (gnat_install_builtins): Update call to
+ build_common_builtin_nodes.
+
+2009-09-26 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Filter out
+ negative size for the array dimensions like in the constrained case.
+ <E_Array_Subtype>: 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.
+ <N_Attribute_Reference>: Return 1 for more attributes.
+ <N_Object_Renaming_Declaration>: Return 1 for non-constant objects.
+ <N_Assignment_Statement>: 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 <hainque@adacore.com>
+ Eric Botcazou <ebotcazou@adacore.com>
+
+ * 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) <N_Indexed_Component>: Convert
+ vector input to representative array type on entry.
+ <N_Op_Eq, etc>: 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 <ebotcazou@adacore.com>
+
+ * 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 <dave.korn.cygwin@gmail.com>
+
+ * 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 <jakub@redhat.com>
+
+ * 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 <joel.sherrill@oarcorp.com>
+
+ * 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 <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ * env.c [__alpha__ && __osf__] (_BSD): Define.
+ * init.c [__alpha__ && __osf__] (__gnat_error_handler): Cast msg
+ to const char *.
+
+2009-09-18 Pascal Obry <obry@adacore.com>
+
+ * mingw32.h: Activate Unicode support for x86-64 Windows platform.
+
+2009-09-18 Vadim Godunko <godunko@adacore.com>
+
+ * s-oscons-tmplt.c: Add circuit for handling IOV_MAX macro on IRIX.
+
+2009-09-18 Javier Miranda <miranda@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <duff@adacore.com>
+
+ * gnat_ugn.texi: Minor editing.
+
+2009-09-18 Vincent Celier <celier@adacore.com>
+
+ * prj.ads, prj.adb (Project_Data): New component
+ Imported_Directories_Switches.
+
+2009-09-18 Pascal Obry <obry@adacore.com>
+
+ * mingw32.h: Include standard _mingw.h file.
+ Define _WIN32_WINNT only if not already defined.
+
+2009-09-18 Thomas Quinot <quinot@adacore.com>
+
+ * g-socket.adb (Is_Open): New function indicating whether a
+ Selector_Type object is open.
+
+2009-09-18 Vincent Celier <celier@adacore.com>
+
+ * osint-c.adb (Create_Output_Library_Info): Make sure that the ALI file
+ is deleted before creating it.
+
+2009-09-18 Robert Dewar <dewar@adacore.com>
+
+ * bindgen.adb: Minor reformatting
+
+2009-09-18 Arnaud Charlet <charlet@adacore.com>
+
+ * 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 <celier@adacore.com>
+
+ * prj-tree.ads: Minor comment update
+
+2009-09-17 Bob Duff <duff@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * 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 <duff@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * exp_ch6.adb: Minor reformatting
+
+2009-09-17 Emmanuel Briot <briot@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * 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 <duff@adacore.com>
+
+ * gnat_rm.texi, s-oscons-tmplt.c: Minor typo
+
+2009-09-17 Emmanuel Briot <briot@adacore.com>
+
+ * 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 <miranda@adacore.com>
+
+ * exp_disp.adb (Make_DT): Remove wrong line of code that was
+ undocumented and probably added by mistake.
+
+2009-09-16 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/trans.c (Attribute_to_gnu) <Attr_Size>: Strip
+ conversions between original and packable version of types from
+ the expression.
+
+2009-09-16 Eric Botcazou <ebotcazou@adacore.com>
+
+ * 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) <E_Array_Type>: Do not redeclare padding types.
+ <E_Array_Subtype>: Likewise.
+ Adjust calls to gnat_to_gnu_field and components_to_record.
+
+2009-09-16 Robert Dewar <dewar@adacore.com>
+
+ * prj-nmsc.adb: Minor reformatting
+
+2009-09-16 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <celier@adacore.com>
+
+ * 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 <celier@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * 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 <rth@redhat.com>
+
+ * gcc-interface/trans.c (Pragma_to_gnu): Use build5 for ASM_EXPR.
+
+2009-09-14 Eric Botcazou <ebotcazou@adacore.com>
+
+ * exp_dbug.ads (Packed Array Encoding): Document the new encoding for
+ the unconstrained case.
+ * gcc-interfaces/decl.c (gnat_to_gnu_entity) <E_Array_Type>: 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 <rth@redhat.com>
+
+ * 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 <rguenther@suse.de>
+ Rafael Avila de Espindola <espindola@google.com>
+
+ * 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 <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ PR ada/18302
+ * gcc-interface/Make-lang.in (check-acats): Export rootme, EXPECT.
+
+2009-09-08 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Subtype>: Tidy
+ flow of control.
+ Avoid useless work when processing the Treat_As_Volatile flag.
+
+2009-09-08 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/targtyps.c: Reorder include directives.
+
+2009-09-07 Laurent GUERBY <laurent@guerby.net>
+
+ * gcc-interface/targtyps.c: Add missing include for tm_p.h.
+ * gcc-interface/Make-lang.in: Update dependencies.
+
+2009-09-07 Laurent GUERBY <laurent@guerby.net>
+
+ * make.adb: Add missing documentation for multilib handling.
+
+2009-09-03 Diego Novillo <dnovillo@google.com>
+
+ * gcc-interface/misc.c (lang_hooks): Remove const qualifier.
+
+2009-09-02 Richard Henderson <rth@redhat.com>
+
+ * tb-gcc.c (__gnat_backtrace): Mark all arguments unused.
+
+2009-09-02 Olivier Hainque <hainque@adacore.com>
+
+ * init.c (__gnat_error_handler, AIX): Add ATTRIBUTE_UNUSED on si
+ and uc arguments.
+
+2009-09-02 Olivier Hainque <hainque@adacore.com>
+
+ * gcc-interface/decl.c (cannot_be_superflat_p): Handle
+ Signed_Integer_Type_Definition Scalar_Ranges.
+
+2009-09-02 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/trans.c (gnat_gimplify_expr) <ADDR_EXPR>: Gimplify the
+ SAVE_EXPR built for misaligned arguments. Remove redundant stuff.
+ (addressable_p): Return true for more rvalues.
+
+2009-09-01 Jakub Jelinek <jakub@redhat.com>
+
+ * gcc-interface/utils2.c (maybe_wrap_malloc, maybe_wrap_free): Cast
+ POINTER_SIZE to HOST_WIDE_INT.
+
+2009-09-01 Richard Guenther <rguenther@suse.de>
+
+ * gcc-interface/misc.c (LANG_HOOKS_MARK_ADDRESSABLE): Remove.
+
+2009-08-25 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/trans.c (call_to_gnu): Tidy.
+ (gnat_to_gnu) <N_Slice>: 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 <aurelien@aurel32.net>
+
+ * 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 <ebotcazou@adacore.com>
+
+ * 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 <ebotcazou@adacore.com>
+
+ * 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) <DECL_EXPR>: New case.
+
+2009-08-17 Aurelien Jarno <aurelien@aurel32.net>
+
+ * 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 <fofanov@adacore.com>
+
+ * a-calend-vms.adb: Fix typo.
+
+2009-08-17 Tristan Gingold <gingold@adacore.com>
+
+ * s-taprop-posix.adb: Round up the stack size to avoid failure on
+ Darwin.
+
+2009-08-17 Gary Dismukes <dismukes@adacore.com>
+
+ * sem_cat.adb (Validate_Static_Object_Name): Update comment.
+
+2009-08-17 Vincent Celier <celier@adacore.com>
+
+ * 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 <brosgol@adacore.com>
+
+ * gnat_ugn.texi: Changed name of package in SAL example, to avoid
+ clash with Ada 2005 reserved word (interface).
+
+2009-08-17 Robert Dewar <dewar@adacore.com>
+
+ * 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).
+
+2009-08-17 Robert Dewar <dewar@adacore.com>
+
+ * make.adb: Add ??? comment
+ * tbuild.adb: Minor reformatting
+
+2009-08-17 Thomas Quinot <quinot@adacore.com>
+
+ * 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.
+
+2009-08-17 Arnaud Charlet <charlet@adacore.com>
+
+ * make.adb (Process_Multilib, Scan_Make_Arg): Refine previous change
+ and ignore -mieee switch to avoid spawning an extra gcc in this case.
+
+2009-08-17 Thomas Quinot <quinot@adacore.com>
+
+ * tbuild.adb: Minor reformatting
+
+2009-08-17 Ed Schonberg <schonberg@adacore.com>
+
+ * 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.
+
+2009-08-17 Robert Dewar <dewar@adacore.com>
+
+ * prj-env.adb: Minor reformatting
+ * make.adb: Minor reformatting
+ Comment updates
+
+2009-08-17 Javier Miranda <miranda@adacore.com>
+
+ * exp_ch7.adb (Wrap_Transient_Expression): Update comments.
+
+2009-08-17 Emmanuel Briot <briot@adacore.com>
+
+ * 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)
+
+2009-08-17 Robert Dewar <dewar@adacore.com>
+
+ * prj-env.adb: Minor reformatting
+ * sem_ch3.adb: Minor reformatting
+
+2009-08-17 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * 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.
+
+2009-08-17 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_ch3.adb (Access_Definition): Do not create an Itype reference for
+ an anonymous access type whose designated type is generic.
+
+2009-08-17 Arnaud Charlet <charlet@adacore.com>
+
+ * comperr.adb (Compiler_Abort): Do not generate a bug box when in
+ codepeer mode, friendlier.
+
+2009-08-10 Laurent GUERBY <laurent@guerby.net>
+
+ * make.adb: Handle multilib
+
+2009-08-10 Vincent Celier <celier@adacore.com>
+
+ * 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.
+
+2009-08-10 Yannick Moy <moy@adacore.com>
+
+ * gnat_ugn.texi: Fix typo
+
+2009-08-10 Robert Dewar <dewar@adacore.com>
+
+ * exp_ch7.adb: Add ??? comment for last change
+
+2009-08-10 Vincent Celier <celier@adacore.com>
+
+ * 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
+
+2009-08-10 Vincent Celier <celier@adacore.com>
+
+ PR ada/17566
+ * xref_lib.adb (Print_Xref): Make sure that there is at least one space
+ between a declaration name and its type.
+
+2009-08-07 Javier Miranda <miranda@adacore.com>
+
+ * exp_ch7.adb (Wrap_Transient_Expression): Add missing adjustment of
+ SCIL node.
+
+2009-08-07 Robert Dewar <dewar@adacore.com>
+
+ * sem_warn.adb (Warn_On_Unreferenced_Entity): Fix obvious typo.
+
+2009-08-07 Vincent Celier <celier@adacore.com>
+
+ * 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.
+
+2009-08-07 Ben Brosgol <brosgol@adacore.com>
+
+ * gnat_ugn.texi: Wordsmithing edits at beginning of gnatcheck chapter.
+
+2009-08-07 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_ch10.adb (Analyze_Proper_Body): Indicate name of missing subunit
+ even if not in main unit, to simplify debugging.
+
+2009-08-07 Arnaud Charlet <charlet@adacore.com>
+
+ * gcc-interface/Makefile.in: Fix handling of GCC_FOR_TARGET.
+ * gcc-interface/Make-lang.in: Update dependencies.
+
+2009-08-07 Robert Dewar <dewar@adacore.com>
+
+ * 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.
+
+2009-08-07 Vincent Celier <celier@adacore.com>
+
+ * mlib-prj.adb (Build_Library): Include binder generate object file
+ for SAL when library name is only one character.
+
+2009-08-07 Thomas Quinot <quinot@adacore.com>
+
+ * targparm.adb: Minor reformatting
+ * sem.adb: Minor reformatting
+ * exp_ch4.adb (Expand_N_Conditional_Expression): Add comment.
+
+2009-08-07 Emmanuel Briot <briot@adacore.com>
+
+ * prj-conf.adb: Remove duplicate directory separator in the output when
+ an object directory does not exist.
+
+2009-08-07 Robert Dewar <dewar@adacore.com>
+
+ * exp_util.adb: Minor reformatting
+
+2009-08-07 Vincent Celier <celier@adacore.com>
+
+ * mlib-prj.adb (Build_Library): Fixed bug in name of ALI file (wrong
+ length used).
+
+2009-08-07 Ed Schonberg <schonberg@adacore.com>
+
+ * exp_ch9.adb (Expand_N_Protected_Type_Declaration): In Ravenscar mode,
+ detect non-static private components that will violate restriction
+ No_Implicit_Heap_Allocation.
+
+2009-08-07 Ben Brosgol <brosgol@adacore.com>
+
+ * gnat_ugn.texi: Edited Rule Exemption section of gnatcheck chapter.
+
+2009-08-02 Eric Botcazou <ebotcazou@adacore.com>
+
+ * 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.
+
+2009-07-30 Ben Brosgol <brosgol@adacore.com>
+
+ * gnat_ugn.texi: Correct minor texi glitch.
+
+2009-07-30 Ed Schonberg <schonberg@adacore.com>
+
+ * 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.
+
+2009-07-30 Robert Dewar <dewar@adacore.com>
+
+ * 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
+
+2009-07-29 Javier Miranda <miranda@adacore.com>
+
+ * 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.
+
+2009-07-29 Robert Dewar <dewar@adacore.com>
+
+ * exp_atag.ads, exp_atag.adb, s-tasini.adb, s-soflin.ads,
+ exp_disp.adb, g-socket.adb: Minor reformatting
+
+2009-07-29 Ed Schonberg <schonberg@adacore.com>
+
+ * 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.
+
+2009-07-29 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_ch6.adb (Check_Overriding_Indicator): Handle properly overriding
+ indicators on user-defined operators.
+
+2009-07-29 Vadim Godunko <godunko@adacore.com>
+
+ * g-socket.adb (Receive_Vector): Add comment.
+
+2009-07-29 Javier Miranda <miranda@adacore.com>
+
+ * 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.
+
+2009-07-28 Robert Dewar <dewar@adacore.com>
+
+ * 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.
+
+2009-07-28 Emmanuel Briot <briot@adacore.com>
+
+ * 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.
+
+2009-07-28 Arnaud Charlet <charlet@adacore.com>
+
+ * gcc-interface/Make-lang.in: Update dependencies.
+
+2009-07-28 Emmanuel Briot <briot@adacore.com>
+
+ * 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.
+
+2009-07-28 Arnaud Charlet <charlet@adacore.com>
+
+ * gnat_ugn.texi: Fix typo.
+
+2009-07-28 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * sinfo.ads: Update comments.
+ * exp_attr.adb: Minor reformatting
+
+2009-07-28 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <ochem@adacore.com>
+
+ * prj-tree.ads, prj-tree.adb (Free): Minor editing.
+ * prj.ads, prj.adb (Image): Ditto.
+
+2009-07-28 Arnaud Charlet <charlet@adacore.com>
+
+ * frontend.adb: Minor reformatting.
+ (Frontend): Only call Check_SCIL_Nodes if assertions are enabled,
+ for efficiency.
+
+2009-07-28 Bob Duff <duff@adacore.com>
+
+ * 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 <miranda@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * prj-nmsc.adb, g-expect.adb, prj.ads: Minor reformatting
+
+2009-07-28 Sergey Rybin <rybin@adacore.com>
+
+ * gnat_ugn.texi: Add section about gnatcheck rule exemption.
+
+2009-07-28 Vadim Godunko <godunko@adacore.com>
+
+ * 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 <dismukes@adacore.com>
+
+ * 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 <hainque@adacore.com>
+
+ * 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 <rybin@adacore.com>
+
+ * gnat_ugn.texi: gnatcheck 'Format of the Report File' section - update
+ for the new format of the report file.
+
+2009-07-28 Sergey Rybin <rybin@adacore.com>
+
+ * gnat_ugn.texi: gnatcheck Deeply_Nested_Inlining rule: Update doc.
+
+2009-07-28 Pascal Obry <obry@adacore.com>
+
+ * g-expect.adb: Record standard handles only on Windows.
+
+2009-07-27 Emmanuel Briot <briot@adacore.com>
+
+ * prj.ads, prj-nmsc.adb (Override_Kind): add debug trace
+ Add comments.
+
+2009-07-27 Sergey Rybin <rybin@adacore.com>
+
+ * 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 <dismukes@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * a-except.adb, a-except-2005.ads: Minor reformatting
+
+2009-07-27 Robert Dewar <dewar@adacore.com>
+
+ * sem_util.adb, sem_util.ads (Kill_Current_Values): Reset Is_Known_Valid
+
+2009-07-27 Javier Miranda <miranda@adacore.com>
+
+ * 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 <hainque@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * gnatfind.adb, osint.ads, sem.adb, xr_tabls.adb: Minor reformatting
+ and code clean up.
+
+2009-07-27 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * g-sse.ads: Minor reformatting
+
+2009-07-27 Arnaud Charlet <charlet@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * sem.adb (Walk_Library_Items): If main unit is an instance body, do
+ its spec first.
+
+2009-07-27 Javier Miranda <miranda@adacore.com>
+
+ * exp_disp.adb (Expand_Dispatching_Call): Generate the SCIL node after
+ the dispatching call has is expanded.
+
+2009-07-27 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <bosch@adacore.com>
+
+ * 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 <rybin@adacore.com>
+
+ * gnat_ugn.texi (gnatcheck Complex_Inlined_Subprograms rule): Update
+ rule definition.
+
+2009-07-27 Olivier Hainque <hainque@adacore.com>
+
+ * g-sse.ads, g-ssvety.ads: Update comments.
+
+2009-07-27 Sergey Rybin <rybin@adacore.com>
+
+ * gnat_ugn.texi: Update gnatcheck doc.
+
+2009-07-27 Arnaud Charlet <charlet@adacore.com>
+
+ * lib-xref.ads: Allocate/document 'o' char for use by references to
+ spark 'own' variables.
+
+2009-07-27 Gary Dismukes <dismukes@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * exp_ch2.adb, sem_util.adb, sem_util.ads: Minor reformnatting
+
+2009-07-27 Robert Dewar <dewar@adacore.com>
+
+ * 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 <bosch@adacore.com>
+
+ * 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 <dave.korn.cygwin@gmail.com>
+
+ 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 <schonberg@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * exp_ch6.adb: Minor reformatting
+
+2009-07-23 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <rybin@adacore.com>
+
+ * gnat_ugn.texi (Misnamed_Controlling_Parameters gnatcheck rule): Fix
+ misprint in rule description.
+
+2009-07-23 Gary Dismukes <dismukes@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * freeze.adb, prj-nmsc.adb, errout.adb: Minor reformatting
+ Minor code reorganization
+
+2009-07-23 Arnaud Charlet <charlet@adacore.com>
+
+ * 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 <dismukes@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <charlet@adacore.com>
+
+ * 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 <obry@adacore.com>
+
+ * prj-nmsc.adb: Fix spec/body naming extension on case insensitive
+ systems.
+
+2009-07-23 Robert Dewar <dewar@adacore.com>
+
+ * einfo.ads, g-ssvety.ads, s-regexp.adb, g-sse.ads: Update comment.
+ Minor reformatting.
+
+2009-07-23 Yannick Moy <moy@adacore.com>
+
+ * 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 <hainque@adacore.com>
+
+ * g-sse.ads: Simplify comment.
+
+2009-07-23 Olivier Hainque <hainque@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <charlet@adacore.com>
+
+ * a-convec.adb: Add comments about suspicious/subtle code.
+
+2009-07-23 Ed Schonberg <schonberg@adacore.com>
+
+ * einfo.ads: Document use of Alias in private overriding
+
+2009-07-23 Thomas Quinot <quinot@adacore.com>
+
+ * 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 <dismukes@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <rybin@adacore.com>
+
+ * gnat_ugn.texi: Update doc on Misnamed_Identifiers rule.
+
+2009-07-23 Javier Miranda <miranda@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <miranda@adacore.com>
+
+ * 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 <miranda@adacore.com>
+
+ * 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 <hainque@adacore.com>
+
+ * gnat_rm.texi: Document the GNAT.SSE units.
+
+2009-07-23 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * get_scos.adb (Skip_EOL): Fix error of mishandling end of line after
+ complex condition.
+
+2009-07-23 Gary Dismukes <dismukes@adacore.com>
+
+ * 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 <miranda@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * ali.adb: Minor comment update
+
+2009-07-23 Vasiliy Fofanov <fofanov@adacore.com>
+
+ * s-win32.ads (HANDLE): Define to be the same size as address type.
+ Fix copyright.
+
+2009-07-23 Olivier Hainque <hainque@adacore.com>
+
+ * 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 <brosgol@adacore.com>
+
+ * gnat_ugn.texi: Wordsmithing.
+
+2009-07-23 Arnaud Charlet <charlet@adacore.com>
+
+ * prj-conf.ads, prj-conf.adb: Switch to GPLv3.
+
+2009-07-22 Eric Botcazou <ebotcazou@adacore.com>
+
+ * 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 <porter@adacore.com>
+
+ * sysdep.c, init.c: Fix typo: _SPE_ should have been __SPE__.
+
+2009-07-22 Robert Dewar <dewar@adacore.com>
+
+ * 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 <rybin@adacore.com>
+
+ * gnat_ugn.texi: Update doc for some gnatcheck rules.
+
+2009-07-22 Robert Dewar <dewar@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * g-socket.ads: Minor reformatting
+
+2009-07-22 Gary Dismukes <dismukes@adacore.com>
+
+ * 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 <falis@adacore.com>
+
+ * s-vxwext-kernel.adb, s-vxwext-kernel.ads: Replace use of taskStop
+ with taskSuspend.
+
+2009-07-22 Arnaud Charlet <charlet@adacore.com>
+
+ * adadecode.c: Make this file compilable outside of GCC.
+
+2009-07-22 Thomas Quinot <quinot@adacore.com>
+
+ * 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 <duff@adacore.com>
+
+ * gnat_ugn.texi: Clarify the -gnatVx (validity checking) switches.
+
+2009-07-22 Robert Dewar <dewar@adacore.com>
+
+ * gnat_ugn.texi: Minor reformatting
+
+2009-07-22 Ed Schonberg <schonberg@adacore.com>
+
+ * errout.adb (Error_Msg): A style message within an instantiation
+ should not be labelled as an error.
+
+2009-07-22 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <rybin@adacore.com>
+
+ * gnat_ugn.texi, vms_data.ads: Add qualifier for new gnatpp option
+ '--separate-label' to control label layout.
+
+2009-07-22 Robert Dewar <dewar@adacore.com>
+
+ * exp_tss.ads, sem_eval.adb: Minor reformatting
+
+2009-07-22 Bob Duff <duff@adacore.com>
+
+ * exp_dist.adb, exp_dist.ads: Update comments.
+
+2009-07-22 Brett Porter <porter@adacore.com>
+
+ * 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 <dismukes@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * 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 <roche@adacore.com>
+
+ * seh_init.c: use RtlAddFunctionTable to register our SEH exception
+ handler on x86_64 windows.
+
+2009-07-22 Arnaud Charlet <charlet@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * 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 <charlet@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * 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 <dismukes@adacore.com>
+
+ * gnat1drv.adb: Fix spelling error.
+
+2009-07-22 Javier Miranda <miranda@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * sem_type.adb (Get_First_Interp): Fix wrong loop exit condition.
+
+2009-07-22 Robert Dewar <dewar@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <duff@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * stylesw.ads: Minor documentation change.
+
+ * types.ads: Minor reformatting
+
+2009-07-20 Javier Miranda <miranda@adacore.com>
+
+ * 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 <charlet@adacore.com>
+
+ * gnat1drv.adb (Gnat1drv): Also disable Elaboration_Check in
+ CodePeer_Mode.
+
+2009-07-20 Gary Dismukes <dismukes@adacore.com>
+
+ * 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 <charlet@adacore.com>
+
+ * 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 <miranda@adacore.com>
+
+ * 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 <celier@adacore.com>
+
+ * switch-m.ads, switch-m.adb (Normalize_Compiler_Switches): Take into
+ account switches -gnatw.?
+
+2009-07-20 Thomas Quinot <quinot@adacore.com>
+
+ * 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 <miranda@adacore.com>
+
+ * 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 <charlet@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <guitton@adacore.com>
+
+ * gcc-interface/Makefile.in: cleanup powerpc linux target pairs.
+
+2009-07-20 Vadim Godunko <godunko@adacore.com>
+
+ * a-coorma.adb: Minor reformatting.
+
+2009-07-20 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <gingold@adacore.com>
+
+ * g-expect.adb: Avoid closeing already closed handle.
+
+2009-07-20 Robert Dewar <dewar@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * sem_ch13.adb: Minor reformatting
+
+ * einfo.ads: Minor reformatting
+ Component_Bit_Offset is no longer considered obsolescent
+
+2009-07-20 Nicolas Roche <roche@adacore.com>
+
+ * 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 <miranda@adacore.com>
+
+ * 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 <rybin@adacore.com>
+
+ * vms_data.ads: Update qualifiers.
+
+2009-07-20 Robert Dewar <dewar@adacore.com>
+
+ * einfo.ads, switch.adb, gnatls.adb, inline.adb, sem_ch13.adb: Minor
+ reformatting
+
+2009-07-17 Richard Guenther <rguenther@suse.de>
+
+ 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 <charlet@adacore.com>
+
+ * gcc-interface/Make-lang.in: Update dependencies
+
+ * gcc-interface/Makefile.in: Add target pairs for PPC/Xenomai
+
+2009-07-15 Robert Dewar <dewar@adacore.com>
+
+ * 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 <ebotcazou@adacore.com>
+
+ * exp_dbug.ads (Base Record Types): Document enhanced encoding.
+
+2009-07-15 Thomas Quinot <quinot@adacore.com>
+
+ * gnatls.adb: Minor reformatting
+
+ * gnatcmd.adb: Minor code reorganization
+
+2009-07-15 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * sem_ch10.adb: Minor reformatting throughout
+ Minor code reorganization (put nested subprograms in alpha order)
+
+2009-07-15 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <kirtchev@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * gnat_ugn.texi: Minor updates.
+
+ * snames.ads-tmpl: Minor comment updates for Ada 2005 fully implemented
+
+2009-07-15 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_warn.adb (Warn_On_Constant_Condition): Handle properly constant
+ conditions of a derived boolean type.
+ Minor reformatting
+
+2009-07-15 Robert Dewar <dewar@adacore.com>
+
+ * 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 <charlet@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * lib-load.adb: Minor reformatting
+
+ * lib-writ.adb (Write_ALI): Fix handling of SCO_Output wrt Generate_SCO.
+
+2009-07-15 Robert Dewar <dewar@adacore.com>
+
+ * par.adb: Minor reformatting
+ Add ??? comment for possible bad comment
+
+ * par-ch10.adb: Minor reformatting
+
+2009-07-15 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * opt.ads: Minor comment edits
+
+2009-07-15 Tristan Gingold <gingold@adacore.com>
+
+ * gcc-interface/Makefile.in: Special rule for seh_init.o no longer
+ needed.
+
+2009-07-15 Robert Dewar <dewar@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * sinfo.ads, make.adb, par.ads, par.adb, sem_warn.adb: Minor
+ reformatting.
+
+2009-07-15 Thomas Quinot <quinot@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * g-htable.ads, s-htable.ads: Minor reformatting
+
+2009-07-15 Robert Dewar <dewar@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * exp_aggr.adb, tbuild.ads, tbuild.adb: Minor reformatting
+ Minor code reorganization
+
+2009-07-14 Taras Glek <tglek@mozilla.com>
+ Rafael Espindola <espindola@google.com>
+
+ * gcc-interface/Make-lang.in (ada.install-plugin): New target for
+ installing plugin headers.
+
+2009-07-13 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * output.adb: Minor comment addition for last change
+
+ * sinfo.ads: Minor reformatting
+
+2009-07-13 Vasiliy Fofanov <fofanov@adacore.com>
+
+ * adaint.c (__gnat_portable_no_block_spawn): on Windows, return -1 when
+ spawn failed like on all other targets.
+
+2009-07-13 Ed Schonberg <schonberg@adacore.com>
+
+ * exp_ch7.adb: Indicate origin of temporary for transient expression.
+
+2009-07-13 Thomas Quinot <quinot@adacore.com>
+
+ * s-oscons-tmplt.c: Add comment.
+
+2009-07-13 Robert Dewar <dewar@adacore.com>
+
+ * 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 <duff@adacore.com>
+
+ * exp_dist.adb: Minor comment updates.
+
+2009-07-13 Gary Dismukes <dismukes@adacore.com>
+
+ * sem_ch10.adb, sem_ch12.adb, gnat1drv.adb, exp_ch4.adb: Fix casing of
+ several references to CodePeer.
+
+2009-07-13 Bob Duff <duff@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * exp_ch4.adb: Minor comment change
+
+2009-07-13 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_ch5.adb (Analyze_Iteration_Scheme): Generate dummy reference for
+ type of iteration, to prevent spurious warnings.
+
+2009-07-13 Nicolas Roche <roche@adacore.com>
+
+ * s-oscons-tmplt.c: On VxWorks target ensure that vxWorks.h is always
+ included.
+
+2009-07-13 Arnaud Charlet <charlet@adacore.com>
+
+ * 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 <ebotcazou@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * prj.ads, prj-dect.adb, prj-err.ads, prj-err.adb, prj-nmsc.adb,
+ prj-strt.ads: Minor reformatting
+
+2009-07-13 Thomas Quinot <quinot@adacore.com>
+
+ * 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 <rupp@adacore.com>
+
+ * symbols-processing-vms-ia64.adb (Process): Add variables and
+ constants to retrieve and check for symbol visibility.
+
+2009-07-13 Javier Miranda <miranda@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * 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 <miranda@adacore.com>
+
+ * 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 <fofanov@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * prj.adb, sem_ch4.adb, sem_res.adb, prj-nmsc.adb: Minor reformatting
+ & comment edits.
+
+2009-07-13 Robert Dewar <dewar@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * clean.adb: Minor reformattting
+
+2009-07-13 Emmanuel Briot <briot@adacore.com>
+
+ * 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 <charlet@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * 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 <charlet@adacore.com>
+
+ * lib.adb, make.adb, mlib.adb, exp_dist.adb: Update comments.
+ Minor reformatting.
+
+2009-07-13 Emmanuel Briot <briot@adacore.com>
+
+ * prj-env.adb (Create_Config_Pragmas_File): Iterate on sources rather
+ than units.
+
+2009-07-13 Thomas Quinot <quinot@adacore.com>
+
+ * 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 <setton@adacore.com>
+
+ * exp_dbug.ads: Add documentation note on the utility of
+ DW_AT_GNAT_encoding for IDEs.
+
+2009-07-13 Robert Dewar <dewar@adacore.com>
+
+ * g-socthi-vxworks.adb: Minor reformatting
+
+ * gnatcmd.adb: Minor reformatting
+
+2009-07-13 Thomas Quinot <quinot@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * 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 <obry@adacore.com>
+
+ * adaint.c: Fix __gnat_stat() with Win32 UNC paths.
+
+2009-07-13 Emmanuel Briot <briot@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * sem_disp.adb (Override_Dispatching_Operation): Functions inherit the
+ Controlling_Result flag from the operation they override.
+
+2009-07-13 Arnaud Charlet <charlet@adacore.com>
+
+ * gcc-interface/Make-lang.in: Update dependencies
+
+2009-07-13 Robert Dewar <dewar@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <miranda@adacore.com>
+
+ * sem_ch6.adb (Check_Synchronized_Overriding): Add missing check before
+ reading the Is_Interface attribute of the dispatching type.
+
+2009-07-13 Robert Dewar <dewar@adacore.com>
+
+ * a-convec.adb: Minor code reorganization (use conditional expressions)
+
+2009-07-13 Robert Dewar <dewar@adacore.com>
+
+ * freeze.adb (Check_Suspicious_Modulus): New procedure.
+
+2009-07-13 Robert Dewar <dewar@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * freeze.adb, freeze.ads, exp_aggr.adb: Rename Expand_Atomic_Aggregate
+ => Is_Atomic_Aggregate
+
+2009-07-13 Emmanuel Briot <briot@adacore.com>
+
+ * prj-nmsc.adb: Avoid traversing the list of source files if
+ we have already processed all locally removed files.
+
+2009-07-13 Jose Ruiz <ruiz@adacore.com>
+
+ * gnat_ugn.texi: Fix typo.
+
+2009-07-13 Robert Dewar <dewar@adacore.com>
+
+ * 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 <ebotcazou@adacore.com>
+
+ * 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) <Attribute_Address>: 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) <object>: 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 <ebotcazou@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * sem_util.adb, sem_res.adb, sem_warn.adb: Minor comment editing:
+ Lvalue -> lvalue
+
+ * exp_ch6.adb: Minor reformatting
+
+2009-07-11 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * exp_ch7.adb: Update comments.
+
+2009-07-10 Arnaud Charlet <charlet@adacore.com>
+
+ * exp_ch13.adb (Expand_N_Record_Representation_Clause): Ignore mod
+ clause if -gnatI is set instead of crashing.
+
+2009-07-10 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <celier@adacore.com>
+
+ * 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 <miranda@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * prj.ads: Minor typo fix
+
+2009-07-10 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * sem_aggr.adb: Minor comments editing
+
+ * exp_tss.adb, exp_ch3.adb: Minor reformatting
+
+2009-07-10 Robert Dewar <dewar@adacore.com>
+
+ * 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 <charlet@adacore.com>
+
+ * i-cexten.ads (bool): New type.
+
+2009-07-10 Robert Dewar <dewar@adacore.com>
+
+ * 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 <miranda@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <celier@adacore.com>
+
+ * make.adb: Do not include object directories or library ALI
+ directories of library projects in the object path.
+
+2009-07-10 Javier Miranda <miranda@adacore.com>
+
+ * exp_util.adb (Find_Interface_Tag): Reorder processing of incoming
+ Typ argument to ensure proper management of access types.
+
+2009-07-10 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <miranda@adacore.com>
+
+ * sem_ch3.adb (Build_Derived_Record_Type): Use the full-view when
+ inheriting attributes from a private Parent_Base.
+
+2009-07-10 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_ch11.adb (analyze_raise_xxx_error): Remove consecutive raise
+ statements with the same condition.
+
+2009-07-10 Robert Dewar <dewar@adacore.com>
+
+ * exp_ch4.adb (Raise_Accessibility_Error): New procedure
+
+2009-07-09 Tom Tromey <tromey@redhat.com>
+
+ * raise-gcc.c: Include dwarf2h (unconditionally).
+
+2009-07-09 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * checks.adb: Minor reformatting
+
+2009-07-09 Vasiliy Fofanov <fofanov@adacore.com>
+
+ * ug_words, gnat_ugn.texi: Move VMS equivalents of the last check in
+ into ug_words.
+
+2009-07-09 Thomas Quinot <quinot@adacore.com>
+
+ * sem_ch13.adb (Analyze_Attribute_Definition_Clause, case Address):
+ Do not warn for a constant overlaying any constant object
+
+2009-07-09 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * checks.adb: Minor reformatting
+
+2009-07-09 Vasiliy Fofanov <fofanov@adacore.com>
+
+ * ug_words, gnat_ugn.texi: Move VMS equivalents of the last check in
+ into ug_words.
+
+2009-07-09 Thomas Quinot <quinot@adacore.com>
+
+ * sem_ch13.adb (Analyze_Attribute_Definition_Clause, case Address):
+ Do not warn for a constant overlaying any constant object
+
+2009-07-09 Arnaud Charlet <charlet@adacore.com>
+
+ * gcc-interface/Make-lang.in: Update dependencies
+
+2009-07-09 Thomas Quinot <quinot@adacore.com>
+
+ * g-socket.adb (Check_Selector): Do not create local copies of the
+ socket sets on the stack.
+
+2009-07-09 Vasiliy Fofanov <fofanov@adacore.com>
+
+ * gnat_ugn.texi: Add missing VMS translations.
+
+2009-07-09 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <dismukes@adacore.com>
+
+ * 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 <baird@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * prj-nmsc.adb (Find_Sources): Avoid error messages from gprbuild from
+ multi-unit files.
+
+2009-07-09 Thomas Quinot <quinot@adacore.com>
+
+ * freeze.adb: Minor reformatting
+
+ * exp_ch3.adb: Minor comment fix.
+
+ * sinfo.ads: Minor comment fix
+
+2009-07-09 Ed Schonberg <schonberg@adacore.com>
+
+ * exp_ch4.adb (Expand_N_Conditional_Expression): Set Related_Expression.
+
+2009-07-09 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * prj-pp.adb (Print): Fix handling of source index when set on a
+ declaration node.
+
+2009-07-09 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <manu@gcc.gnu.org>
+
+ * gcc-interface/trans.c (gnat_gimplify_expr): Replace EXPR_LOCUS by
+ EXPR_LOCATION.
+
+2009-07-07 Gary Dismukes <dismukes@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * a-stwise.adb, a-stzsea.adb, a-strsea.adb: Add comments
+
+2009-07-07 Javier Miranda <miranda@adacore.com>
+
+ * exp_disp.adb (Expand_Interface_Conversion): Handle access type whose
+ designated type comes from a limited views.
+
+2009-07-07 Emmanuel Briot <briot@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * gnat_rm.texi: Clarify documentation of Stream_Convert pragma
+
+2009-07-07 Sergey Rybin <rybin@adacore.com>
+
+ * gnat_ugn.texi: Add an example to the description of gnatcheck
+ 'Style_Checks' rule option.
+
+2009-07-07 Tristan Gingold <gingold@adacore.com>
+
+ * seh_init.c: Fix inline assembly statement in seh_init.c
+
+2009-07-07 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * s-osprim-mingw.adb: Minor code reorganization
+
+2009-07-07 Robert Dewar <dewar@adacore.com>
+
+ * prj-nmsc.adb: Minor reformatting
+
+2009-07-07 Pascal Obry <obry@adacore.com>
+
+ * a-stwise.adb, a-stzsea.adb, a-strsea.adb (Index): properly handle
+ cases where Pattern is longer than Source.
+
+2009-07-07 Pascal Obry <obry@adacore.com>
+
+ * s-osprim-mingw.adb (Get_Base_Time): Avoid infinite loop.
+
+2009-07-07 Emmanuel Briot <briot@adacore.com>
+
+ * prj-nmsc.adb (Process_Naming): canonicalize file suffixes read in the
+ project file.
+
+2009-07-07 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <dismukes@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <hainque@adacore.com>
+
+ * 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 <fxcoudert@gcc.gnu.org>
+
+ PR ada/40608
+ * init.c (APPLE): Include <mach/mach_init.h>.
+ (__gnat_error_handler, APPLE): Add ATTRIBUTE_UNUSED marker.
+
+2009-07-04 Eric Botcazou <ebotcazou@adacore.com>
+
+ * 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) <E_Array_Subtype>: Remove kludge.
+
+2009-07-04 Laurent GUERBY <laurent@guerby.net>
+
+ PR ada/40631
+ * tracebak.c (__gnat_backtrace): Fix old-style definition.
+
+2009-07-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * tracebak.c [i386 && sun] (IS_BAD_PTR): Use -1UL in comparison.
+
+2009-07-01 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ PR ada/40609
+ * init.c (__gnat_error_handler, HP-UX): Add ATTRIBUTE_UNUSED marker to
+ ucontext argument.
+
+2009-07-01 Eric Botcazou <ebotcazou@adacore.com>
+
+ * init.c (__gnat_error_handler, Solaris): Add ATTRIBUTE_UNUSED marker.
+
+2009-06-30 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/utils2.c (build_binary_op) <MODIFY_EXPR>: 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 <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c: Include tree-inline.h.
+ (annotate_value) <CALL_EXPR>: Try to inline the call in the expression.
+ * gcc-interface/utils.c (max_size) <CALL_EXPR>: Likewise.
+ * gcc-interface/utils2.c: Include tree-inline.
+ (known_alignment) <CALL_EXPR>: Likewise.
+
+2009-06-30 Eric Botcazou <ebotcazou@adacore.com>
+
+ * raise-gcc.c: Include dwarf2.h conditionally.
+
+2009-06-29 Tom Tromey <tromey@redhat.com>
+
+ * raise-gcc.c: Include elf/dwarf2.h.
+
+2009-06-27 Laurent GUERBY <laurent@guerby.net>
+
+ * tb-gcc.c (trace_callback): Add casts to silence warning.
+
+2009-06-27 Eric Botcazou <ebotcazou@adacore.com>
+
+ * tb-gcc.c: Fix copyright notice.
+
+2009-06-27 Eric Botcazou <ebotcazou@adacore.com>
+
+ * 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 <laurent@guerby.net>
+
+ * 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 <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (cannot_be_superflat_p): New predicate.
+ (gnat_to_gnu_entity) <E_Array_Subtype>: Use it to build the expression
+ of the upper bound of the index types.
+
+2009-06-26 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Subtype>: 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 <gingell@adacore.com>
+
+ * adaint.c: Do not use the dummy version of convert_addresses on LynxOS
+
+2009-06-26 Vincent Celier <celier@adacore.com>
+
+ * prj.ads (No_Language_Config): Value of Dependency_Kind is None by
+ default.
+
+2009-06-26 Robert Dewar <dewar@adacore.com>
+
+ * exp_ch4.adb, gnatcmd.adb, make.adb: Minor reformatting
+
+2009-06-26 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Pass
+ correct arguments to create_field_decl. Remove redundant iteration.
+ Rewrite computation of the maximum size.
+ <E_Array_Subtype>: Reorder and simplify handling of special cases.
+ Rewrite computation of the maximum size. Use consistent naming.
+ * gcc-interface/trans.c (Attribute_to_gnu) <Attr_Length>: Swap
+ comparison order for consistency. Use generic integer node to
+ build the operator and fold the result.
+
+2009-06-25 Vincent Celier <celier@adacore.com>
+
+ * vms_data.ads: Minor comment change
+
+2009-06-25 Gary Dismukes <dismukes@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * 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 <miranda@adacore.com>
+
+ * 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 <rybin@adacore.com>
+
+ * vms_data.ads: Add qualifier for new gnatcheck '-t' option.
+
+2009-06-25 Vincent Celier <celier@adacore.com>
+
+ * 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 <ochem@adacore.com>
+
+ * prj.ads (Unit_Index): Now general access type.
+
+2009-06-25 Pascal Obry <obry@adacore.com>
+
+ * a-stwise.adb, a-stzsea.adb: Fix confusion between 'Length and 'Last.
+
+2009-06-25 Emmanuel Briot <briot@adacore.com>
+
+ * 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 <obry@adacore.com>
+
+ * sem_ch4.adb: Minor reformatting.
+
+ * a-strsea.adb: Fix confusion between 'Length and 'Last.
+
+2009-06-25 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * 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 <charlet@adacore.com>
+
+ * 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 <falis@adacore.com>
+
+ * s-vxwext-rtp.ads: Add missing declaration
+
+2009-06-25 Matthew Gingell <gingell@adacore.com>
+
+ * a-stwise.adb, a-stzsea.adb (Count, Index): Avoid local copy on stack,
+ speed up unmapped case.
+
+2009-06-25 Vincent Celier <celier@adacore.com>
+
+ * prj-nmsc.adb (Check): Change error message for illegal abstract
+ projects.
+
+2009-06-25 Robert Dewar <dewar@adacore.com>
+
+ * gnat_ugn.texi: Add note on use of -gnatct for ASIS
+
+2009-06-25 Emmanuel Briot <briot@adacore.com>
+
+ * fmap.ads: Add documentation on mapping files
+
+2009-06-25 Robert Dewar <dewar@adacore.com>
+
+ * exp_ch6.adb, g-socket.ads, g-socket.adb, sem_ch3.adb: Minor
+ reformatting
+
+2009-06-24 Robert Dewar <dewar@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <rupp@adacore.com>
+
+ * init.c [VMS] Resignal C$_SIGKILL
+
+2009-06-24 Ed Falis <falis@adacore.com>
+
+ * 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 <obry@adacore.com>
+
+ * g-socket.adb, g-socket.ads: Fix possible unexpected constraint error
+ in [Send/Receive]_Socket.
+
+2009-06-24 Emmanuel Briot <briot@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * 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 <celier@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * clean.adb, gnatcmd.adb, make.adb, mlib-prj.adb,
+ prj-env.adb: Minor reformatting
+
+2009-06-24 Ed Falis <falis@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * 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 <miranda@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * 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 <miranda@adacore.com>
+
+ * 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 <kirtchev@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * exp_ch6.adb: Minor reformatting
+
+ * layout.adb: Minor reformatting
+
+ * make.adb: Minor reformatting
+
+2009-06-24 Thomas Quinot <quinot@adacore.com>
+
+ * sem_ch10.adb: Minor code reorganization.
+
+2009-06-24 Eric Botcazou <ebotcazou@adacore.com>
+
+ * ttypes.ads: Minor editing.
+
+2009-06-24 Robert Dewar <dewar@adacore.com>
+
+ * 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 <celier@adacore.com>
+
+ * 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 <hainque@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <kirtchev@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <celier@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * prj-conf.adb: Minor reformatting
+
+ * xref_lib.adb: Minor cleanup
+
+2009-06-23 Emmanuel Briot <briot@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <miranda@adacore.com>
+
+ * exp_ch4.adb (Displace_Allocator_Pointer, Expand_N_Allocator): Handle
+ designated types referencing entities from the limited view.
+
+2009-06-23 Robert Dewar <dewar@adacore.com>
+
+ * 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 <fofanov@adacore.com>
+
+ * 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 <celier@adacore.com>
+
+ * 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 <obry@adacore.com>
+
+ * s-strhas.adb, s-strhas.ads: Minor reformatting.
+
+2009-06-23 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * prj-conf.ads, prj-conf.adb: New files part of the project manager.
+
+2009-06-23 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <gingell@adacore.com>
+
+ * Makefile.rtl, a-stwiha.adb: Add a-stwiha.adb back.
+
+2009-06-22 Jose Ruiz <ruiz@adacore.com>
+
+ * sysdep.c (__gnat_localtime_tzoff for RTX):
+ SystemTimeToTzSpecificLocalTime is not supported by RTX. Use
+ GetTimeZoneInformation instead.
+
+2009-06-22 Robert Dewar <dewar@adacore.com>
+
+ * sem_res.adb (Check_No_Direct_Boolean_Operators): New procedure
+
+2009-06-22 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_ch12.adb (Collect_Previous_Instances): Do not collect
+ instantiations declared in a previous generic package body.
+
+2009-06-22 Robert Dewar <dewar@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * bindusg.adb: Minor fixes to gnatbind usage message
+
+ * sem_eval.adb: Minor reformatting
+
+2009-06-22 Javier Miranda <miranda@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * sem_ch6.adb: Minor reformatting
+
+2009-06-22 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <celier@adacore.com>
+
+ * prj-nmsc.adb (Locate_Directory): Indicate the project name when
+ creating a directory automatically.
+
+2009-06-22 Eric Botcazou <ebotcazou@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * exp_ch3.adb: Minor code reorganization (avoid an unnecessary tree
+ copy).
+
+2009-06-22 Matthew Gingell <gingell@adacore.com>
+
+ * 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 <falis@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * sem_ch6.adb: Add ??? comment for bad use of Style_Check
+
+2009-06-22 Robert Dewar <dewar@adacore.com>
+
+ * 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 <gingell@adacore.com>
+
+ * adaint.h: Complete previous change.
+
+2009-06-22 Thomas Quinot <quinot@adacore.com>
+
+ * exp_ch7.ads, exp_ch3.adb: Minor reformatting
+
+2009-06-22 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <celier@adacore.com>
+
+ * gnatcmd.adb (Check_Files): Close temporary files after all file names
+ have been written into it.
+
+2009-06-22 Matthew Gingell <gingell@adacore.com>
+
+ * adaint.c, adaint.h, cstreams.c: Call stat64 on platforms where it is
+ available.
+
+2009-06-22 Thomas Quinot <quinot@adacore.com>
+
+ * 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 <rogers@adacore.com>
+
+ * gnat_ugn.texi: Revised a sentence to correct a minor grammar error.
+
+2009-06-22 Jerome Lambourg <lambourg@adacore.com>
+
+ * freeze.adb: Add comments.
+
+2009-06-21 Thomas Quinot <quinot@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * einfo.ads: Minor reformatting
+
+2009-06-21 Ed Falis <falis@adacore.com>
+
+ * env.c (__gnat_environ): return NULL for vThreads - unimplemented
+
+2009-06-21 Eric Botcazou <ebotcazou@adacore.com>
+
+ * einfo.ads: Update comments.
+
+2009-06-21 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * 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 <celier@adacore.com>
+
+ * 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 <lambourg@adacore.com>
+
+ * exp_ch3.adb (Build_Array_Init_Proc): Do not build the init proc in
+ case of VM convention arrays.
+
+2009-06-20 Robert Dewar <dewar@adacore.com>
+
+ * a-nudira.adb: Minor reformatting
+
+2009-06-20 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * sem_prag.adb: Minor reformatting
+
+ * exp_disp.ads: Minor reformatting
+
+2009-06-20 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * einfo.ads: Fix typo.
+
+2009-06-20 Ed Falis <falis@adacore.com>
+
+ * s-vxwext.ads, s-vxwext-kernel.adb: Complete previous change.
+
+2009-06-19 Eric Botcazou <ebotcazou@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * 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 <miranda@adacore.com>
+
+ * sem_ch12.adb (Instantiate_Package_Body, Instantiate_Subprogram_Body):
+ Save and restore the visibility of the parent when installed.
+
+2009-06-19 Jose Ruiz <ruiz@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * a-einuoc.ads: Minor reformatting
+
+2009-06-19 Ed Falis <falis@adacore.com>
+
+ * 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 <ebotcazou@adacore.com>
+
+ * einfo.ads (Handling of Type'Size Values): Fix Object_Size values.
+
+2009-06-19 Robert Dewar <dewar@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * i-vxwoio.ads: Add comments
+
+2009-06-19 Thomas Quinot <quinot@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * checks.adb: Minor reformatting
+
+2009-06-19 Jose Ruiz <ruiz@adacore.com>
+
+ * env.c (__gnat_environ): RTX does not support this functionality.
+
+2009-06-19 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * checks.adb (Determine_Range): Do not attempt to get range of generic
+ type.
+
+2009-06-19 Sergey Rybin <rybin@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * g-cgi.adb: Minor reformatting
+
+2009-06-19 Eric Botcazou <ebotcazou@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <hainque@adacore.com>
+
+ * 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 <dewar@adacore.com>
+ Olivier Hainque <hainque@adacore.com>
+
+ 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 <aldyh@redhat.com>
+
+ * 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 <rth@redhat.com>
+
+ * gcc-interface/misc.c (gnat_handle_option): Rename OPT_gdwarf_ to
+ OPT_gdwarfplus.
+
+2009-06-11 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <ebotcazou@adacore.com>
+
+ * tracebak.c (i386 section): Define IS_BAD_PTR on Solaris.
+
+2009-06-11 Quentin Ochem <ochem@adacore.com>
+
+ * sem_warn.adb, scng.adb, sfn_scan.adb, freeze.adb: Add CODEFIX
+ comments for message handled by GPS.
+
+2009-06-11 Matthew Gingell <gingell@adacore.com>
+
+ * adaint.c: Use fopen64 instead of fopen on platforms where we know
+ it's supported.
+
+2009-06-11 Pascal Obry <obry@adacore.com>
+
+ * g-cgi.ads: Fix comment typo.
+
+ * g-cgi.adb: Properly decode "+" in CGI parameters as spaces.
+
+2009-06-10 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: 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) <E_Record_Type>: Factor
+ common predicate and remove redundant setting of TYPE_BY_REFERENCE_P.
+ Pass correctly typed arguments to create_field_decl.
+ <E_Record_Subtype>: 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 <hainque@adacore.com>
+
+ * 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) <case N_Free_Statement>:
+ 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 <aoliva@redhat.com>
+
+ * lib-writ.adb (flag_compare_debug): Import.
+ (Write_ALI): Skip during -fcompare-debug-second.
+
+2009-06-03 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: 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 <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: Add the
+ _Parent field, if any, to the record before adding the other fields.
+ <E_Record_Subtype>: 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 <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (substitution_list): Rename to build_subst_list,
+ remove unused parameter and simplify.
+ (gnat_to_gnu_entity) <E_Record_Type>: Do not set TYPE_FIELDS. Factor
+ common predicate. Rewrite loop for clarity. Use GNU_TYPE directly
+ as context for all discriminants. Fix formatting nits.
+ <E_Record_Subtype>: 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 <ebotcazou@adacore.com>
+
+ * gcc-interface/Make-lang.in: Fix formatting.
+
+2009-06-01 Olivier Hainque <hainque@adacore.com>
+ Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/utils.c (convert) <CONSTRUCTOR case>: 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 <hainque@adacore.com>
+ Eric Botcazou <ebotcazou@adacore.com>
+
+ * 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 <iant@google.com>
+
+ * 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 <hainque@adacore.com>
+
+ * 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 <ebotcazou@adacore.com>
+
+ * gcc-interface/misc.c (gnat_get_subrange_bounds): Fix thinko.
+
+2009-05-23 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (set_rm_size): Bypass the check for packed array
+ types.
+
+2009-05-23 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Do not modify the
+ original type because of the alignment when there is an address clause.
+
+2009-05-20 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: 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 <ebotcazou@adacore.com>
+
+ * 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) <E_Modular_Integer_Type>
+ Use SET_TYPE_RM_MAX_VALUE to set the upper bound on the UMT type.
+ <E_Signed_Integer_Subtype>: Build a regular integer type first and
+ then set the RM bounds. Use SET_TYPE_RM_SIZE to set the RM size.
+ <E_Floating_Point_Subtype>: Build a regular floating-point type first
+ and then set the RM bounds.
+ <E_Array_Type>: Use create_range_type instead of build_range_type.
+ <E_Array_Subtype>: Build a regular integer type first and then set
+ the RM bounds for the extra subtype.
+ <E_String_Literal_Subtype>: Use create_range_type instead of
+ build_range_type.
+ <all>: 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) <INTEGER_TYPE>: Use SET_TYPE_RM_{MIN,MAX}_VALUE
+ to set the bounds. Use SET_TYPE_RM_SIZE to set the RM size.
+ (substitute_in_type) <INTEGER_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) <REAL_TYPE>: New case.
+ <ENUMERAL_TYPE>: 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) <ARRAY_RANGE_REF>: Convert
+ the index to sizetype instead of TYPE_DOMAIN.
+
+2009-05-14 Eric Botcazou <ebotcazou@adacore.com>
+
+ * 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) <REAL_TYPE>: Merge with INTEGER_TYPE case and add
+ missing guard.
+ * gcc-interface/trans.c (protect_multiple_eval): Minor cleanup.
+
+2009-05-07 Arnaud Charlet <charlet@adacore.com>
+
+ * gcc-interface/Make-lang.in: Update dependencies.
+
+2009-05-06 Laurent GUERBY <laurent@guerby.net>
+
+ * 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 <charlet@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <rybin@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <rybin@adacore.com>
+
+ * gnat_ugn.texi: Add subsection for Exits_From_Conditional_Loops rule
+ Add formal definition for extra exit point metric
+
+2009-05-06 Pascal Obry <obry@adacore.com>
+
+ * adaint.c: Support for setting attributes on unicode filename on
+ Windows.
+
+2009-05-06 Robert Dewar <dewar@adacore.com>
+
+ * sem_warn.adb: Minor reformatting
+
+2009-05-06 Javier Miranda <miranda@adacore.com>
+
+ * 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 <rybin@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * s-fileio.adb: Minor comment update
+
+ * sem_ch8.adb: Minor reformatting
+
+ * exp_ch3.adb: Update comments.
+
+2009-05-06 Tristan Gingold <gingold@adacore.com>
+
+ * init.c, s-osinte-darwin.ads: Reduce alternate stack size
+
+2009-05-06 Arnaud Charlet <charlet@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <dismukes@adacore.com>
+
+ * sem_aggr.adb: Fix typo.
+
+2009-05-06 Thomas Quinot <quinot@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * sem_ch8.adb (Find_Type): Reject the use of a task type in its own
+ discriminant part.
+
+2009-05-06 Bob Duff <duff@adacore.com>
+
+ * 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 <dismukes@adacore.com>
+
+ * gnat_ugn.texi: Fix typo.
+
+2009-05-06 Thomas Quinot <quinot@adacore.com>
+
+ * g-debuti.adb: Minor reformatting
+
+ * exp_attr.adb: Minor reformatting
+
+2009-05-06 Robert Dewar <dewar@adacore.com>
+
+ * sem_aggr.adb: Minor reformatting.
+
+ * g-socthi-vms.adb: Minor reformatting
+
+2009-05-06 Bob Duff <duff@adacore.com>
+
+ * 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 <duff@adacore.com>
+
+ * gnat_ugn.texi, gnat_rm.texi: Add missing documentation for warnings
+ flags.
+
+2009-05-06 Javier Miranda <miranda@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * freeze.adb (Freeze_Record_Type): Improve error msg for bad size
+ clause.
+
+2009-05-06 Thomas Quinot <quinot@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * sem_ch13.adb (Check_Constant_Address_Clause): Minor error message
+ improvements
+
+ * freeze.adb: Minor reformatting
+
+2009-05-06 Thomas Quinot <quinot@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * 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 <miranda@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * sem_ch13.adb: Minor comment additions
+
+ * osint.adb: Minor reformatting
+
+2009-05-06 Pascal Obry <obry@adacore.com>
+
+ * initialize.c: On Windows, keep full pathname to expanded command
+ line patterns.
+
+2009-05-06 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * g-comlin.ads: Minor reformatting
+
+ * xoscons.adb: Minor reformatting
+
+2009-05-06 Gary Dismukes <dismukes@adacore.com>
+
+ * 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 <gingold@adacore.com>
+
+ * g-comlin.ads: Fix minor typos (Getopt instead of Get_Opt).
+
+2009-05-06 Thomas Quinot <quinot@adacore.com>
+
+ * 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 <duff@adacore.com>
+
+ * 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 <miranda@adacore.com>
+
+ * 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 <miranda@adacore.com>
+
+ * gnat_ugn.texi: Complete documentation for CPP_Constructor and remove
+ also wrong examples that use extension aggregates.
+
+2009-05-06 Albert Lee <lee@adacore.com>
+
+ * s-oscons-tmplt.c (System.OS_Constants): Do not use special definition
+ of Msg_Iovlen_T for VMS.
+
+2009-05-04 Laurent GUERBY <laurent@guerby.net>
+
+ PR ada/38874
+ * make.adb (Scan_Make_Arg): Pass --param= to compiler and linker.
+
+2009-04-29 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <dismukes@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * xoscons.adb: Minor reformatting
+
+2009-04-29 Bob Duff <duff@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <charlet@adacore.com>
+
+ * gcc-interface/Make-lang.in: Update dependencies
+
+2009-04-29 Vincent Celier <celier@adacore.com>
+
+ * prj-part.adb: Minor comment update
+
+2009-04-29 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <charlet@adacore.com>
+
+ * g-socket.adb: Code clean up.
+
+2009-04-29 Gary Dismukes <dismukes@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * err_vars.ads, prj-part.adb, scans.ads, exp_tss.adb: Minor
+ reformatting and comment updates.
+
+2009-04-29 Arnaud Charlet <charlet@adacore.com>
+
+ * gnat_ugn.texi: Update some documentation about interfacing with C++
+ Mention -fkeep-inline-functions.
+
+ * gnat_ugn.texi: Minor edits
+
+2009-04-29 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <lee@adacore.com>
+
+ * 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 <celier@adacore.com>
+
+ * 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 <miranda@adacore.com>
+
+ * gnat_ugn.texi: Adding documentation for non-default C++ constructors.
+
+2009-04-29 Javier Miranda <miranda@adacore.com>
+
+ * 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 <celier@adacore.com>
+
+ * prj-part.adb (Parse_Single_Project): Do not attempt to find a
+ project extending an abstract project.
+
+2009-04-29 Eric Botcazou <ebotcazou@adacore.com>
+
+ * targparm.ads: Fix oversight.
+
+2009-04-29 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * sem_util.adb (May_Be_Lvalue): Fix cases involving indexed/selected
+ components
+
+2009-04-29 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * prj-nmsc.ads: Minor reformatting
+
+2009-04-29 Eric Botcazou <ebotcazou@adacore.com>
+
+ * exp_ch4.adb (Expand_N_Conditional_Expression): Set the SLOC of the
+ expression on the existing parent If statement.
+
+2009-04-29 Robert Dewar <dewar@adacore.com>
+
+ * prj-proc.adb, prj.ads: Minor reformatting
+
+2009-04-29 Eric Botcazou <ebotcazou@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <dismukes@adacore.com>
+
+ * 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 <duff@adacore.com>
+
+ * g-expect.adb (Expect_Internal): Fix check for overfull buffer.
+
+ * g-expect.ads: Minor comment fixes.
+
+2009-04-29 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <lee@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <duff@adacore.com>
+
+ * sem_res.adb: Minor comment fix.
+
+2009-04-29 Thomas Quinot <quinot@adacore.com>
+
+ * sem_elim.adb: Minor reformatting
+
+2009-04-29 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <falis@adacore.com>
+
+ * adaint.c (__gnat_rmdir): return error code if VTHREADS is defined.
+ VxWorks 653 POS does not support rmdir.
+
+2009-04-29 Matteo Bordin <bordin@adacore.com>
+
+ * s-stausa.adb, s-stausa.ads: Get_Usage_Range: changing the way
+ results are printed.
+
+2009-04-29 Arnaud Charlet <charlet@adacore.com>
+
+ * s-taskin.adb (Initialize): Remove pragma Warnings Off and remove
+ unused assignment.
+
+2009-04-29 Thomas Quinot <quinot@adacore.com>
+
+ * make.adb: Minor reformatting.
+ Minor code reorganization throughout.
+
+2009-04-29 Matteo Bordin <bordin@adacore.com>
+
+ * 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 <obry@adacore.com>
+
+ * initialize.c: Do not expand quoted arguments.
+
+2009-04-29 Emmanuel Briot <briot@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * 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 <ochem@adacore.com>
+
+ * prj.ads (Source_Id): Now general pointer type.
+
+2009-04-29 Thomas Quinot <quinot@adacore.com>
+
+ * exp_ch7.adb, rtsfind.adb: Minor reformatting
+
+ * sem_res.adb: Minor reformatting
+
+2009-04-29 Thomas Quinot <quinot@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * rtsfind.adb, prj-env.adb: Minor reformatting
+ Minor code reorganization
+
+2009-04-29 Emmanuel Briot <briot@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <duff@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * 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 <setton@adacore.com>
+
+ * gcc-interface/Makefile.in: Produce .dSYM files for shared libs on
+ darwin.
+
+2009-04-25 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Subtype>: Put
+ back kludge.
+
+2009-04-24 Robert Dewar <dewar@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * sem_ch12.adb: Minor reformatting
+
+ * g-trasym.adb: Minor reformatting
+
+ * exp_ch6.adb: Minor reformatting
+
+2009-04-24 Robert Dewar <dewar@adacore.com>
+
+ * layout.adb (Layout_Type): For packed array type, copy unset
+ size/alignment fields from the referenced Packed_Array_Type.
+
+2009-04-24 Bob Duff <duff@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * prj.ads, prj-nmsc.adb (Unit_Project): removed, since in fact we were
+ only ever using the Project field.
+
+2009-04-24 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * make.adb: Minor reformatting
+
+2009-04-24 Emmanuel Briot <briot@adacore.com>
+
+ * 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 <duff@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * errout.ads: Minor reformatting
+
+2009-04-24 Emmanuel Briot <briot@adacore.com>
+
+ * gnat_ugn.texi (Library Projects): add documentation on gnatmake's
+ behavior when the project includes sources from multiple languages
+
+2009-04-24 Vincent Celier <celier@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * sem_res.adb: additional optimization to inhibit creation of
+ redundant transient scopes.
+
+2009-04-24 Bob Duff <duff@adacore.com>
+
+ * rtsfind.ads: Minor comment fix
+
+2009-04-24 Emmanuel Briot <briot@adacore.com>
+
+ * 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 <lambourg@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * prj-env.adb, prj-proc.adb, prj.adb, prj.ads,
+ rtsfind.adb: Minor reformatting.
+ Minor code reorganization
+
+2009-04-24 Arnaud Charlet <charlet@adacore.com>
+
+ * mlib-prj.adb: Use friendlier english identifier.
+
+ * gnatcmd.adb, make.adb: Use better english identifiers.
+
+2009-04-24 Robert Dewar <dewar@adacore.com>
+
+ * clean.adb: Minor reformatting
+
+2009-04-24 Robert Dewar <dewar@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * 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 <celier@adacore.com>
+
+ * 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 <celier@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * sem_ch7.adb: Minor reformatting
+
+2009-04-24 Tristan Gingold <gingold@adacore.com>
+
+ * s-osinte-darwin.adb, s-osinte-darwin.ads: lwp_self now returns the
+ mach thread id.
+
+2009-04-24 Emmanuel Briot <briot@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * gnatcmd.adb, prj.adb, prj.ads: Remove unused entities
+
+2009-04-24 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_warn.adb: Add comment on obsolete warning
+
+2009-04-24 Arnaud Charlet <charlet@adacore.com>
+
+ * s-tassta.adb (Create_Task): Fix violation of locking rule.
+
+2009-04-24 Emmanuel Briot <briot@adacore.com>
+
+ * 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 <kenner@vlsi1.ultra.nyu.edu>
+ Thomas Quinot <quinot@adacore.com>
+
+ * 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 <ebotcazou@adacore.com>
+
+ * 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) <E_Signed_Integer_Subtype>:
+ 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) <Attr_Alignment>: 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 <ebotcazou@adacore.com>
+
+ * 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 <ebotcazou@adacore.com>
+
+ * gcc-interface/gigi.h (build_call_alloc_dealloc): Update comment.
+ * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: 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 <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: If an
+ alignment is specified, do not promote that of the component type
+ beyond it.
+ <E_Array_Subtype>: Likewise.
+
+2009-04-23 Eric Botcazou <ebotcazou@adacore.com>
+
+ * 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) <N_Object_Declaration>:
+ New case. Return 1 if the object is atomic.
+ <N_Assignment_Statement>: Likewise.
+
+2009-04-23 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Modular_Integer_Subtype>
+ 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.
+ <E_Array_Subtype>: Likewise. Do not generate the special XA parallel
+ record type for packed array types. Remove kludge.
+
+2009-04-23 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/gigi.h (create_index_type): Adjust head comment.
+ * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Signed_Integer_Subtype>:
+ Use front-end predicates to compute signedness and precision.
+ <E_String_Literal_Subtype>: 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) <INTEGER_TYPE>: Always copy the type.
+ * gcc-interface/misc.c (gnat_print_type) <INTEGER_TYPE>: Use brief
+ output for the modulus, if any.
+ <ENUMERAL_TYPE>: 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 <ebotcazou@adacore.com>
+
+ * 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 <ebotcazou@adacore.com>
+
+ * 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) <E_Signed_Integer_Subtype>:
+ Update comment about use of build_range_type.
+ <E_Array_Type, E_Array_Subtype>: Use consistent naming convention.
+ <E_Array_Subtype>: 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 <ebotcazou@adacore.com>
+
+ * gcc-interface/utils2.c (build_binary_op) <PLUS_EXPR>: 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 <ebotcazou@adacore.com>
+
+ * 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 <tglek@mozilla.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * sem_res.adb: Create block around procedure call when actual is a
+ concatenation.
+
+2009-04-22 Thomas Quinot <quinot@adacore.com>
+
+ * s-soflin.ads: Fix typos
+
+2009-04-22 Vincent Celier <celier@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * 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 <celier@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * prj-env.adb, prj-env.ads (Create_Mapping_File): we need to compare
+ the language names, not their indices.
+
+2009-04-22 Emmanuel Briot <briot@adacore.com>
+
+ * prj.ads, prj-nmsc.adb, prj-env.adb, prj-env.ads
+ (Source_Data.Language_Name): Field removed.
+
+2009-04-22 Emmanuel Briot <briot@adacore.com>
+
+ * prj.adb, prj.ads, prj-nmsc.adb (Project_Data.Unit_Based_Language_*):
+ Two fields removed.
+
+2009-04-22 Emmanuel Briot <briot@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <obry@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * prj-proc.adb, prj.adb, prj.ads (Project_Data.First_Referred_By):
+ Removed, since unused.
+
+2009-04-22 Vincent Celier <celier@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <setton@adacore.com>
+
+ * 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 <kirtchev@adacore.com>
+
+ * 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 <celier@adacore.com>
+
+ * make.adb (Gnatmake, Bind_Step): call Set_Ada_Paths with
+ Including_Libraries set to True.
+
+2009-04-22 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <charlet@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * a-tasatt.adb: Minor reformatting
+
+2009-04-22 Bob Duff <duff@adacore.com>
+
+ * s-stalib.ads: Remove "with System;" since we're inside System, so
+ it's unnecessary.
+
+2009-04-22 Vincent Celier <celier@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * lib-load.adb: Minor reformatting
+
+ * lib-load.ads: Minor reformatting
+
+ * sinfo.ads: Minor reformatting
+
+2009-04-22 Bob Duff <duff@adacore.com>
+
+ * 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 <ebotcazou@adacore.com>
+
+ * 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) <E_Signed_Integer_Subtype>:
+ Remove redundant code.
+ <E_Array_Type>: Remove redundant assert.
+ <E_Array_Subtype>: 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) <INTEGER_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 <ebotcazou@adacore.com>
+
+ * 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.
+ <E_Modular_Integer_Type>: Directly use Esize for the type's precision.
+ <E_Access_Type>: For an unconstrained designated type, do not pretend
+ that a dummy type is always made.
+ <all> 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 <ebotcazou@adacore.com>
+
+ * 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.
+ <E_Access_Type>: 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 <joseph@codesourcery.com>
+
+ * ChangeLog, ChangeLog.ptr, ChangeLog.tree-ssa: Add copyright and
+ license notices.
+
+2009-04-21 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/trans.c (gnat_to_gnu): Do not overwrite location info.
+
+2009-04-21 Eric Botcazou <ebotcazou@adacore.com>
+
+ * 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) <E_Modular_Integer_Type>:
+ Remove useless support code for packed array types and assert its
+ uselessness.
+ <E_Signed_Integer_Subtype>: Reuse entity identifier in more places and
+ adjust for TYPE_RM_SIZE change.
+ <all> 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 <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (gnat_to_gnu_entity): Do not set force_global
+ for imported subprograms.
+
+2009-04-21 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Do not make
+ constant objects covered by 13.3(19) volatile.
+
+2009-04-21 Eric Botcazou <ebotcazou@adacore.com>
+
+ * 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 <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (gnat_to_gnu_entity): Rewrite Esize calculation.
+ <E_Signed_Integer_Subtype>: 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 <ebotcazou@adacore.com>
+
+ * gcc-interface/trans.c (unchecked_conversion_lhs_nop): New predicate.
+ (gnat_to_gnu) <N_Unchecked_Type_Conversion>: Return the expression
+ if the conversion is on the LHS of an assignment and a no-op.
+ <all> Do not convert the result to the result type if the Parent
+ node is such a conversion.
+
+2009-04-20 Eric Botcazou <ebotcazou@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <rybin@adacore.com>
+
+ * gnat_ugn.texi, vms_data.ads: Update doc.
+
+2009-04-20 Arnaud Charlet <charlet@adacore.com>
+
+ * gcc-interface/Make-lang.in: Update dependencies
+
+ * gcc-interface/Makefile.in: Link run-time against winsock2 lib under
+ Windows.
+
+2009-04-20 Robert Dewar <dewar@adacore.com>
+
+ * checks.ads: Fix documentation of range check handling
+
+2009-04-20 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_ch8.adb (Use_One_Type): Use proper entity on warning message for
+ a redundant use_type clause.
+
+2009-04-20 Robert Dewar <dewar@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <duff@adacore.com>
+
+ * sem.adb, gnat1drv.adb, debug.adb: Use the -gnatd.W switch to control
+ debugging output.
+
+2009-04-20 Robert Dewar <dewar@adacore.com>
+
+ * sem_attr.adb: Minor reformatting
+
+ * gnatcmd.adb: Minor reformatting
+
+2009-04-20 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <duff@adacore.com>
+
+ * debug.ads: Minor comment fix.
+
+ * debug.adb: Minor comment fixes.
+
+2009-04-20 Javier Miranda <miranda@adacore.com>
+
+ * 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 <lambourg@adacore.com>
+
+ * impunit.adb: Add i-cil and i-cilobj packages, now needed by the
+ generated bindings for cil.
+
+2009-04-20 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <miranda@adacore.com>
+
+ * exp_ch6.adb (Expand_Inlined_Call): Avoid generation of temporaries for
+ formals that have pragma unreferenced.
+
+2009-04-20 Pascal Obry <obry@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <miranda@adacore.com>
+
+ * 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 <gingold@adacore.com>
+
+ * g-trasym.adb: Set size of result buffer before calling
+ convert_address.
+
+2009-04-20 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <obry@adacore.com>
+
+ * a-direct.adb, s-os_lib.adb: Minor reformatting.
+
+2009-04-20 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_ch8.adb (Analyze_Object_Renaming): Proper checks on incorrect
+ null exclusion qualifiers for object renaming declarations.
+
+2009-04-20 Nicolas Roche <roche@adacore.com>
+
+ * 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 <ebotcazou@adacore.com>
+
+ * 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 <duff@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * rtsfind.adb (RTE, RTE_Record_Component): In
+ Configurable_Run_Time_Mode, do not enable front-end inlining.
+
+2009-04-20 Thomas Quinot <quinot@adacore.com>
+
+ * g-socthi-vms.adb: Remove now unnecessary WITH clause on
+ System.Address_To_Access_Conversions.
+
+2009-04-20 Ed Schonberg <schonberg@adacore.com>
+
+ * sem.adb: Guard against ill-formed subunits.
+
+2009-04-20 Bob Duff <duff@adacore.com>
+
+ * output.adb (Flush_Buffer): Do not indent blank lines.
+ (Ignore_Output): New procedure for output suppression.
+
+2009-04-20 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * 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 <dismukes@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * einfo.ads: Minor comment rewording
+
+ * sem_aggr.adb: Minor comment rewording
+
+ * sem_ch3.adb, sem_ch6.adb: Minor reformatting
+
+2009-04-20 Pascal Obry <obry@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <ebotcazou@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * 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 <ebotcazou@adacore.com>
+
+ * 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 <ebotcazou@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * 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 <dismukes@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * 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 <duff@adacore.com>
+
+ * gnat1drv.adb (Gnat1drv): Put call to Check_Library_Items inside
+ pragma Debug.
+
+2009-04-20 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <kirtchev@adacore.com>
+
+ * 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 <falis@adacore.com>
+
+ * s-vxwext-kernel.ads (tickGet): Use tick64Get.
+
+2009-04-20 Thomas Quinot <quinot@adacore.com>
+
+ * 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 <obry@adacore.com>
+
+ * 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 <miranda@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * 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 <ebotcazou@adacore.com>
+
+ * gnat_ugn.texi: Add documentation for -fno-ivopts.
+
+2009-04-20 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * 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 <kirtchev@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * a-tifiio.adb: Minor reformatting
+
+2009-04-20 Thomas Quinot <quinot@adacore.com>
+
+ * 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 <duff@adacore.com>
+
+ * 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 <ebotcazou@adacore.com>
+
+ * gnat_ugn.texi: Add documentation for -fno-inline-small-functions.
+
+2009-04-20 Thomas Quinot <quinot@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * 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 <kirtchev@adacore.com>
+
+ * 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 <dismukes@adacore.com>
+
+ * 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 <celier@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * g-socket.ads (Send_Socket): Fix misleading comment.
+
+2009-04-20 Arnaud Charlet <charlet@adacore.com>
+
+ * switch-c.adb (Scan_Front_End_Switches): Disable inspector mode in
+ ASIS mode.
+
+2009-04-20 Geert Bosch <bosch@adacore.com>
+
+ * 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 <duff@adacore.com>
+
+ * uname.ads: Minor comment fix.
+
+ * types.ads: Minor comment fix.
+
+2009-04-20 Pascal Obry <obry@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <obry@adacore.com>
+
+ * initialize.c (__gnat_initialize): Add braces to kill warning.
+
+ * adaint.c: Minor reformatting, remove trailing spaces.
+
+2009-04-17 Arnaud Charlet <charlet@adacore.com>
+
+ * gcc-interface/Make-lang.in: Update dependencies.
+
+2009-04-20 Eric Botcazou <ebotcazou@adacore.com>
+
+ * adaint.h (__gnat_lwp_self): Declare on Linux.
+
+ * adaint.c (__gnat_os_filename): Add ATTRIBUTE_UNUSED on 'filename'.
+
+2009-04-20 Robert Dewar <dewar@adacore.com>
+
+ * exp_ch5.adb, usage.adb, back_end.adb, opt.ads: Implement
+ front-end part of -fpreserve-control-flow switch.
+
+2009-04-20 Bob Duff <duff@adacore.com>
+
+ * rtsfind.adb: Minor comment fix
+
+2009-04-20 Robert Dewar <dewar@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <obry@adacore.com>
+
+ * adaint.c: Disable use of ACL on network drives.
+
+2009-04-20 Arnaud Charlet <charlet@adacore.com>
+
+ * gnat_ugn.texi: Add examples.
+
+2009-04-20 Thomas Quinot <quinot@adacore.com>
+
+ * g-socket.ads (Abort_Selector): Clarify documentation.
+
+2009-04-20 Arnaud Charlet <charlet@adacore.com>
+
+ * opt.ads (Inspector_Mode): Update documentation of this flag.
+
+2009-04-20 Thomas Quinot <quinot@adacore.com>
+
+ * 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 <ebotcazou@adacore.com>
+
+ * 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 <charlet@adacore.com>
+
+ * switch-c.adb (Scan_Front_End_Switches): Disable front-end inlining
+ in inspector mode.
+
+2009-04-20 Javier Miranda <miranda@adacore.com>
+
+ * 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 <rupp@adacore.com>
+
+ * s-auxdec-vms_64.ads (Integer_{8,16,32,64}_Array): New array types.
+
+ * s-auxdec.ads: Likewise
+
+2009-04-20 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <kirtchev@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * sem_ch3.adb: Minor reformatting
+
+ * lib-load.adb: Minor reformatting
+
+ * sem_ch4.adb: Minor reformatting
+
+2009-04-20 Robert Dewar <dewar@adacore.com>
+
+ * namet-sp.ads, namet-sp.adb (Is_Bad_Spelling_Of): Implement new spec
+ (equal values => False).
+
+2009-04-20 Ed Schonberg <schonberg@adacore.com>
+
+ * exp_ch6.adb (Is_Null_Procedure): predicate is global, so that calls
+ to null procedures can be inlined unconditionally.
+
+2009-04-20 Eric Botcazou <ebotcazou@adacore.com>
+
+ * 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 <charlet@adacore.com>
+
+ * gnat_ugn.texi: Fix typos.
+
+2009-04-20 Robert Dewar <dewar@adacore.com>
+
+ * 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 <ebotcazou@adacore.com>
+
+ * 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 <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
+ (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 <bosch@adacore.com>
+
+ * system-mingw-x86_64.ads, system-darwin-x86_64.ads
+ (Backend_Overflow_Checks): Set to True.
+
+2009-04-15 Gary Dismukes <dismukes@adacore.com>
+
+ * par-ch3.adb (P_Type_Declaration): Issue an error if the synchronized
+ keyword is given in a record extension.
+
+2009-04-15 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * 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 <falis@adacore.com>
+
+ * 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 <charlet@adacore.com>
+
+ * gcc-interface/Make-lang.in: Update dependencies.
+
+ * gcc-interface/Makefile.in: Reorganization of s-osinte-vxworks*
+ and s-vxwext*.
+
+2009-04-15 Robert Dewar <dewar@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * exp_ch6.adb: additional guard for renaming declarations for in
+ parameters of an array type.
+
+2009-04-15 Robert Dewar <dewar@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * rtsfind.adb: Minor reformatting.
+
+2009-04-15 Emmanuel Briot <briot@adacore.com>
+
+ * prj-part.adb, prj-tree.adb, prj-tree.ads (Restore_And_Free): renames
+ Restore, and free the saved context.
+
+2009-04-15 Gary Dismukes <dismukes@adacore.com>
+
+ * 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 <obry@adacore.com>
+
+ * adaint.h (__gnat_unlink): Add spec.
+ (__gnat_rename): Likewise.
+
+2009-04-15 Vincent Celier <celier@adacore.com>
+
+ * prj-nmsc.adb: Minor spelling error corrections in error messages
+
+2009-04-15 Robert Dewar <dewar@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <kirtchev@adacore.com>
+
+ * 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 <lambourg@adacore.com>
+
+ * 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 <duff@adacore.com>
+
+ * 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 <obry@adacore.com>
+
+ 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 <dewar@adacore.com>
+
+ * s-tassta.adb: Minor reformatting
+
+2009-04-15 Robert Dewar <dewar@adacore.com>
+
+ * 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 <comar@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * g-comlin.adb, prj-tree.adb, prj-tree.ads, prj.adb, prj.ads
+ (Free): New subprogram.
+
+2009-04-15 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * 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 <setton@adacore.com>
+
+ * 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 <gingold@adacore.com>
+
+ * bindgen.adb: Do not generate adafinal if No_Finalization restriction
+ is set.
+
+2009-04-15 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * exp_ch4.adb (Expand_N_Allocator): Install test for object too large.
+
+2009-04-15 Nicolas Roche <roche@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * sem_ch4.adb: improve error message on exponentiation.
+
+2009-04-15 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * sem_prag.adb: Minor reformatting.
+
+ * sem_type.adb: Minor reformatting
+
+2009-04-15 Javier Miranda <miranda@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <celier@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <falis@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * sem_prag.adb (Analyze_Pragma, case 'Obsolescent): Pragma is legal
+ after any declaration, including renaming declarations.
+
+2009-04-15 Arnaud Charlet <charlet@adacore.com>
+
+ * gcc-interface/Make-lang.in: Update dependencies.
+
+ * gcc-interface/Makefile.in: Fix VxWorks target pairs.
+ Update xenomai target pairs.
+
+2009-04-15 Javier Miranda <miranda@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * sem_warn.ads: Minor reformatting
+
+2009-04-15 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <celier@adacore.com>
+
+ * 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 <dismukes@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * 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 <charlet@adacore.com>
+
+ * system-linux-sparc.ads: Remove obsolete entries.
+
+2009-04-15 Thomas Quinot <quinot@adacore.com>
+
+ * s-tasuti.ads: Add ??? comment
+
+2009-04-15 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * sem_warn.ads, sem_warn.adb (Check_Low_Bound_Tested): Catch more cases
+ for warning suppression.
+
+2009-04-10 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <dismukes@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * sem_ch6.ads: Address missing documentation query
+
+2009-04-10 Vincent Celier <celier@adacore.com>
+
+ * 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 <bosch@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * exp_attr.adb: Minor reformatting
+
+2009-04-10 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * sem_aux.adb: Minor reformatting
+
+2009-04-10 Ed Falis <falis@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * 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 <rybin@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * rtsfind.adb: Minor reformatting
+
+2009-04-10 Thomas Quinot <quinot@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <duff@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <duff@adacore.com>
+
+ * 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 <celier@adacore.com>
+
+ * vms_data.ads: Add missing GNAT SYNC VMS qualifiers -main= and -U
+
+2009-04-10 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <lambourg@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * gnat_rm.texi: Document that postconditions are tested on implicit
+ returns.
+
+ * sem_aux.adb: Minor reformatting
+
+2009-04-10 Gary Dismukes <dismukes@adacore.com>
+
+ * 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 <duff@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * sem_ch6.adb: Minor code clean up.
+
+ * einfo.ads, sem_attr.adb: Minor comment fixes.
+
+2009-04-10 Robert Dewar <dewar@adacore.com>
+
+ * sem_ch8.adb: Minor reformatting
+
+2009-04-10 Robert Dewar <dewar@adacore.com>
+
+ * einfo.ads, einfo.adb (Postcondition_Proc): New attribute for
+ procedures.
+
+ * sem_ch6.adb: Minor code clean up.
+
+2009-04-10 Robert Dewar <dewar@adacore.com>
+
+ * mlib-tgt-specific-xi.adb: Minor reformatting
+
+2009-04-10 Bob Duff <duff@adacore.com>
+
+ * einfo.ads: Minor comment fixes
+
+2009-04-10 Vincent Celier <celier@adacore.com>
+
+ * 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 <ebotcazou@adacore.com>
+
+ * init.c: Adjust EH support code on Alpha/Tru64.
+
+2009-04-10 Bob Duff <duff@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * sem_aux.adb: Minor reformatting
+
+2009-04-10 Vincent Celier <celier@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * xsnamest.adb: Use XUtil to have uniform line endings (UNIX style) in
+ generated files on all platforms.
+
+2009-04-10 Robert Dewar <dewar@adacore.com>
+
+ * sem_aux.adb: Minor reformatting
+
+2009-04-10 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * sem_disp.adb: Minor reformatting
+
+2009-04-10 Vasiliy Fofanov <fofanov@adacore.com>
+
+ * 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 <ruiz@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * sem_eval.adb: Minor reformatting
+
+2009-04-10 Thomas Quinot <quinot@adacore.com>
+
+ * 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 <gingold@adacore.com>
+
+ * 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 <duff@adacore.com>
+
+ * sem.ads, par.adb, sem_ch6.adb, sem_ch8.adb: Minor comment fixes.
+
+2009-04-10 Tristan Gingold <gingold@adacore.com>
+
+ * init.c: Install signal handler on Darwin.
+
+2009-04-10 Robert Dewar <dewar@adacore.com>
+
+ * 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 <charlet@adacore.com>
+
+ * make.adb, gnatlink.adb: Rename JGNAT toolchain.
+
+2009-04-10 Jose Ruiz <ruiz@adacore.com>
+
+ * mlib-tgt-specific-xi.adb (Get_Target_Prefix): Insert the appropriate
+ tool prefix for AVR and PowerPC 55xx targets.
+
+2009-04-10 Robert Dewar <dewar@adacore.com>
+
+ * sem_warn.adb (Within_Postcondition): New function
+ (Check_Unset_Reference): Use Within_Postcondition to stop bad warning
+
+2009-04-10 Robert Dewar <dewar@adacore.com>
+
+ * sem_warn.adb: Minor reformatting
+
+ * make.adb: Minor reformatting.
+
+2009-04-10 Gary Dismukes <dismukes@adacore.com>
+
+ * 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 <celier@adacore.com>
+
+ * prj-nmsc.adb (Check_Naming_Schemes): Initialize local variable Casing
+ to avoid gcc warning.
+
+2009-04-10 Robert Dewar <dewar@adacore.com>
+
+ * g-comlin.adb: Add ??? comment
+
+2009-04-10 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * exp_ch9.adb: Minor reformatting
+
+2009-04-10 Thomas Quinot <quinot@adacore.com>
+
+ * sem_prag.adb: Minor reformatting
+
+2009-04-10 Vincent Celier <celier@adacore.com>
+
+ * 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 <duff@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <ruiz@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * make.adb: Add comment.
+ Minor reformatting
+
+2009-04-10 Nicolas Setton <setton@adacore.com>
+
+ * s-osprim-darwin.adb: New file.
+
+ * s-osinte-darwin.adb, s-osinte-darwin.ads: Fix binding to timespec.
+
+2009-04-10 Thomas Quinot <quinot@adacore.com>
+
+ * g-socket.ads: Add comment clarifying alignment requirement for Fd_Set
+
+2009-04-09 Nick Clifton <nickc@redhat.com>
+
+ * 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 <jakub@redhat.com>
+
+ * 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 <setton@adacore.com>
+
+ * 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 <duff@adacore.com>
+
+ * 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 <obry@adacore.com>
+
+ * make.adb: Ensure that all linker arguments are duplicated.
+
+2009-04-09 Robert Dewar <dewar@adacore.com>
+
+ * sem_ch5.adb: Minor reformatting
+
+2009-04-09 Vincent Celier <celier@adacore.com>
+
+ * 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 <setton@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * g-socket.ads: (Fd_Set): Use Interfaces.C.long alignment.
+
+2009-04-09 Nicolas Setton <setton@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <celier@adacore.com>
+
+ * 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 <celier@adacore.com>
+
+ * 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 <charlet@adacore.com>
+
+ * opt.ads: Fix typos.
+
+2009-04-09 Robert Dewar <dewar@adacore.com>
+
+ * einfo.adb: Minor reformatting
+
+2009-04-09 Robert Dewar <dewar@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * g-comver.adb: Minor reformatting.
+
+2009-04-09 Thomas Quinot <quinot@adacore.com>
+
+ * lib-load.ads (Load_Unit): Update documentation.
+
+2009-04-09 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * sem_ch10.adb: Minor reformatting.
+
+2009-04-09 Bob Duff <duff@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * switch-b.adb: Minor reformatting.
+
+2009-04-09 Robert Dewar <dewar@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <miranda@adacore.com>
+
+ * 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 <miranda@adacore.com>
+
+ * sem_ch3.adb (Build_Derived_Record_Type): Fix typo.
+ (Derive_Progenitor_Subprograms): Handle interfaces in subtypes of
+ tagged types.
+
+2009-04-09 Robert Dewar <dewar@adacore.com>
+
+ * s-direio.adb: Minor reformatting
+
+ * exp_ch4.adb (Expand_Concatenate): Avoid overflow checks for String
+
+2009-04-09 Robert Dewar <dewar@adacore.com>
+
+ * exp_ch4.adb (Expand_Concatenate): Improve handling of overflow cases
+
+2009-04-09 Pascal Obry <obry@adacore.com>
+
+ * 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 <obry@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * exp_ch4.adb (Expand_Concatenate): Add circuitry to properly handle
+ overflows in computation of bounds.
+
+2009-04-09 Pascal Obry <obry@adacore.com>
+
+ * a-cihama.adb, a-cgcaso.adb, a-cihase.adb, a-cohase.adb: Fix some
+ typos in comment.
+
+2009-04-09 Robert Dewar <dewar@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * g-socket.ads: Mark Initialize and Finalize as obsolesent interfaces.
+
+2009-04-09 Geert Bosch <bosch@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * sem_ch12.adb (Analyze_Package_Instantiation): Remove test for
+ No_Local_Allocators restriction preventing local instantiation.
+
+2009-04-08 Thomas Quinot <quinot@adacore.com>
+
+ * sem_eval.adb: Minor comment fix
+
+2009-04-08 Thomas Quinot <quinot@adacore.com>
+
+ * 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 <celier@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * checks.adb: Minor reformatting
+
+2009-04-08 Vincent Celier <celier@adacore.com>
+
+ * vms_data.ads: Add documentation for new style keyword
+ OVERRIDING_INDICATORS
+
+2009-04-08 Robert Dewar <dewar@adacore.com>
+
+ * sem_ch3.adb (Check_Completion.Post_Error): Post error on spec if the
+ spec is in the current unit.
+
+2009-04-08 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <celier@adacore.com>
+
+ * vms_data.ads: Add VMS equivalent for -gnatyO (OVERRIDING_INDICATORS)
+
+2009-04-08 Thomas Quinot <quinot@adacore.com>
+
+ * checks.ads: Minor reformatting
+
+2009-04-08 Robert Dewar <dewar@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * exp_util.adb: Minor comment fix
+
+2009-04-08 Robert Dewar <dewar@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * gnat_rm.texi: Minor reformatting
+
+ * par-ch2.adb: Minor reformatting
+
+2009-04-08 Robert Dewar <dewar@adacore.com>
+
+ * exp_attr.adb, sem_attr.adb, sem_util.adb: Code clean up.
+
+2009-04-08 Robert Dewar <dewar@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * gnat_rm.texi: Add documentation for pragma Thread_Local_Storage
+
+ * sem_ch3.adb: Minor comment updates
+
+2009-04-08 Ed Schonberg <schonberg@adacore.com>
+
+ * inline.adb (Back_End_Cannot_Inline): restrict warning to subprograms
+ that come from source.
+
+2009-04-08 Tristan Gingold <gingold@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * exp_ch4.adb (Expand_Concatenate): Make sure nodes are properly typed
+
+2009-04-08 Tristan Gingold <gingold@adacore.com>
+
+ * 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 <celier@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * sem_ch8.adb: Minor reformatting.
+ Minor code reorganization.
+
+2009-04-08 Robert Dewar <dewar@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * prj.ads: Update comment on switches file
+
+ * prj-nmsc.adb: Code clean up. Use renaming clauses.
+
+2009-04-08 Robert Dewar <dewar@adacore.com>
+
+ * exp_ch4.adb (Expand_Concatenate): Further fixes to bounds handling
+
+2009-04-08 Thomas Quinot <quinot@adacore.com>
+
+ * ali-util.adb: Minor comment fix
+
+2009-04-08 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * exp_ch4.adb (Expand_Concatenate): Clean up code
+
+2009-04-07 Thomas Quinot <quinot@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * sem_ch8.adb (Analyze_Object_Renaming): additional error messages
+ mandated by AI05-105.
+
+2009-04-07 Vincent Celier <celier@adacore.com>
+
+ * prj-nmsc.adb (Get_Mains): Warn if a main is an empty string
+
+2009-04-07 Thomas Quinot <quinot@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * exp_ch13.adb: Minor reformatting
+
+2009-04-07 Robert Dewar <dewar@adacore.com>
+
+ * sem_warn.adb (Check_Infinite_Loop_Warning.Test_Ref): Add defence
+ against missing parent.
+
+2009-04-07 Thomas Quinot <quinot@adacore.com>
+
+ * xoscons.adb: Minor reformatting
+
+2009-04-07 Robert Dewar <dewar@adacore.com>
+
+ * rtsfind.ads: Remove obsolete string concatenation entries
+
+2009-04-07 Robert Dewar <dewar@adacore.com>
+
+ * exp_ch4.adb (Expand_Concatenate): Redo handling of bounds
+
+2009-04-07 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_ch10.adb (Check_Body_Required): Handle properly imported
+ subprograms.
+
+2009-04-07 Gary Dismukes <dismukes@adacore.com>
+
+ * 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 <duff@adacore.com>
+
+ * s-secsta.ads, g-pehage.ads, s-fileio.ads: Minor comment fixes
+
+2009-04-07 Bob Duff <duff@adacore.com>
+
+ * 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 <miranda@adacore.com>
+
+ * 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 <quinot@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * sem_util.adb (Has_Tagged_Component): Fix typo in loop that iterates
+ over record components.
+
+2009-04-07 Nicolas Roche <roche@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * exp_ch4.adb (Expand_N_Op_Concat): Improve lower bound handling
+
+2009-04-07 Kevin Pouget <pouget@adacore.com>
+
+ * exp_dist.adb: Modify Build_From_Any_Fonction procedure to correct
+ expanded code for constrained types.
+
+2009-04-07 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <charlet@adacore.com>
+
+ * g-comlin.adb (Expansion): Fix old regression: also return directory
+ names when matching.
+
+2009-04-07 Robert Dewar <dewar@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <miranda@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * exp_ch4.adb: Rewrite concatenation expansion.
+
+2009-04-07 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_ch8.adb (Restore_Scope_Stack): First_Private_Entity is only
+ relevant to packages.
+
+2009-04-07 Robert Dewar <dewar@adacore.com>
+
+ * sem_attr.adb: Minor reformatting
+
+ * sem_ch6.adb: Minor reformatting
+
+2009-04-07 Tristan Gingold <gingold@adacore.com>
+
+ * socket.c: Add more protections against S_resolvLib_ macros.
+
+2009-04-07 Thomas Quinot <quinot@adacore.com>
+
+ * sem_attr.adb: Minor reformatting
+
+2009-04-07 Ed Schonberg <schonberg@adacore.com>
+
+ * 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 <briot@adacore.com>
+
+ * s-regexp.adb (Create_Mapping): Ignore excaped open parenthesis when
+ looking for the end of a parenthesis group
+
+2009-04-07 Tristan Gingold <gingold@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <schonberg@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ (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 <dewar@adacore.com>
+
+ * exp_ch4.adb: Fix documentation typo
+
+2009-04-07 Robert Dewar <dewar@adacore.com>
+
+ * tbuild.ads: Minor reformatting
+
+2009-04-07 Javier Miranda <miranda@adacore.com>
+
+ * exp_disp.adb (Make_DT): Avoid the generation of the OSD_Table
+ when compiling under ZFP runtime.
+
+2009-04-07 Robert Dewar <dewar@adacore.com>
+
+ * g-comlin.adb: Minor reformatting
+
+2009-04-07 Thomas Quinot <quinot@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * make.adb: Minor reformatting
+
+2009-04-07 Robert Dewar <dewar@adacore.com>
+
+ * mlib-tgt-specific-vms-alpha.adb: Minor reformatting
+
+2009-04-07 Robert Dewar <dewar@adacore.com>
+
+ * mlib-tgt-specific-vms-ia64.adb: Minor reformatting
+
+2009-04-07 Robert Dewar <dewar@adacore.com>
+
+ * 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 <dewar@adacore.com>
+
+ * 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 <charlet@adacore.com>
+
+ * gnatvsn.ads: Bump version number.
+
+2009-04-07 Thomas Quinot <quinot@adacore.com>
+
+ * exp_ch3.adb: Minor rewording (comments)
+
+2009-04-07 Robert Dewar <dewar@adacore.com>
+
+ * exp_disp.adb: Minor reformatting
+
+2009-04-07 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Test the
+ underlying type.
+ * gcc-interface/trans.c (lvalue_required_p): Likewise.
+
+2009-04-07 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/trans.c (Attribute_to_gnu) <Max_Size_In_Storage_Elmts>:
+ Do not convert the result. Remove obsolete comment.
+
+2009-04-07 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/trans.c (establish_gnat_vms_condition_handler): Clear
+ DECL_CONTEXT.
+ (Subprogram_Body_to_gnu): Fix pasto.
+
+2009-04-07 Eric Botcazou <ebotcazou@adacore.com>
+
+ * 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) <E_Void>: Use void_type.
+ (gnat_to_gnu_entity) <E_Array_Type>: Make fat and thin pointer types
+ artificial.
+ <E_Array_Subtype>: 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) <E_Incomplete_Type>: 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 <ebotcazou@adacore.com>
+
+ * 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 <ebotcazou@adacore.com>
+
+ * 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 <ebotcazou@adacore.com>
+
+ * 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 <ebotcazou@adacore.com>
+
+ * gcc-interface/utils.c (finish_record_type): Force structural equality
+ checks if the record type is discriminated.
+
+2009-03-31 Eric Botcazou <ebotcazou@adacore.com>
+
+ * 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 <bonzini@gnu.org>
+
+ * gcc-interface/decl.c (maybe_pad_type): Use TREE_OVERFLOW instead
+ of TREE_CONSTANT_OVERFLOW.
+
+2009-03-30 Joseph Myers <joseph@codesourcery.com>
+
+ 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 <hongjiu.lu@intel.com>
+
+ PR c/39323
+ * gcc-interface/utils.c (create_field_decl): Use "unsigned int"
+ on bit_align.
+
+2009-03-11 Olivier Hainque <hainque@adacore.com>
+
+ * gcc-interface/trans.c (gnat_to_gnu) <case N_Slice>: In range
+ checks processing, remove unintended TREE_TYPE walk on index type.
+
+2009-03-01 Eric Botcazou <ebotcazou@adacore.com>
+
+ PR ada/39264
+ * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Do no
+ call make_packable_type on fat pointer types.
+ <E_Array_Subtype>: Likewise.
+ <E_Record_Subtype>: 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 <ebotcazou@adacore.com>
+
+ * gcc-interface/Makefile.in (cygwin/mingw): Revert accidental
+ EH_MECHANISM change made on 2007-12-06.
+
+2009-02-26 Andreas Schwab <schwab@suse.de>
+
+ 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 <laurent@guerby.net>
+
+ PR ada/39221
+ * a-teioed.adb (Expand): Fix Result overflow.
+
+2009-02-25 Laurent GUERBY <laurent@guerby.net>
+
+ * gcc-interface/Makefile.in: Fix multilib handling for
+ sparc64-linux.
+
+2009-02-23 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * s-oscons-tmplt.c [__osf__ && !_SS_MAXSIZE]: Undef AF_UNIX6.
+
+2009-02-18 H.J. Lu <hongjiu.lu@intel.com>
+
+ * gcc-interface/misc.c (gnat_post_options): Turn off warn_psabi.
+
+2009-02-16 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/deftarg.c: Remove.
+
+2009-02-10 Olivier Hainque <hainque@adacore.com>
+ Eric Botcazou <ebotcazou@adacore.com>
+
+ * 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.
+ <E_Record_Type>: 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)<N_Validate_Unchecked_Conversion>:
+ Check for alias set conflict instead of strict equality to issue the
+ warning.
+
+2009-02-09 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (gnat_to_gnu_entity) <E_String_Literal_Subtype>:
+ 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) <ARRAY_TYPE>: Copy TYPE_NONALIASED_COMPONENT.
+
+2009-02-08 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (gnat_to_gnu_entity) <E_String_Literal_Subtype>:
+ Set TYPE_NONALIASED_COMPONENT on the array type.
+
+2009-01-31 Laurent GUERBY <laurent@guerby.net>
+
+ * gcc-interface/Makefile.in: Fix mipsel linux handling.
+
+2009-01-16 Jakub Jelinek <jakub@redhat.com>
+
+ * gcc-interface/Makefile.in: Fix multilib handling for
+ powerpc64-linux.
+
+2009-01-12 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Really strip
+ only useless conversions around renamed objects.
+
+2009-01-11 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: Put
+ the _Tag field before any discriminants in the field list.
+ (components_to_record): Remove obsolete comment.
+
+
+
+Copyright (C) 2009 Free Software Foundation, Inc.
+
+Copying and distribution of this file, with or without modification,
+are permitted in any medium without royalty provided the copyright
+notice and this notice are preserved.