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.
From-SVN: r154815
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
From-SVN: r154810
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.
From-SVN: r154809
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.
From-SVN: r154807
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
From-SVN: r154804
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.
From-SVN: r154803
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.
From-SVN: r154802
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.
From-SVN: r154801
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.
From-SVN: r154800
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.
From-SVN: r154798
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.
From-SVN: r154796
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.
From-SVN: r154795
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
From-SVN: r154793
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.
From-SVN: r154792
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.
From-SVN: r154791
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
From-SVN: r154790
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.
From-SVN: r154789
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
From-SVN: r154786
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.
From-SVN: r154782
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.
From-SVN: r154777
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
From-SVN: r154774
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.
From-SVN: r154772
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
From-SVN: r154769
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
From-SVN: r154767