aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada
AgeCommit message (Collapse)AuthorFilesLines
2011-08-29[multiple changes]Arnaud Charlet61-124/+173
2011-08-29 Robert Dewar <dewar@adacore.com> * exp_ch5.adb, sinfo.ads, make.adb, s-pooglo.adb, sem_ch12.adb, freeze.adb, sem_ch6.adb, par-ch12.adb: Minor reformatting. 2011-08-29 Tristan Gingold <gingold@adacore.com> * system-darwin-x86.ads, system-linux-s390x.ads, system-linux-alpha.ads, system-tru64.ads, system-irix-n32.ads, system-vxworks-arm.ads, system-linux-hppa.ads, system-linux-s390.ads, system-solaris-sparcv9.ads, system-mingw.ads, system-linux-ia64.ads, system-vms_64.ads, system-vxworks-sparcv9.ads, system-linux-ppc.ads, system-aix64.ads, system-lynxos-ppc.ads, system-linux-sh4.ads, system-solaris-x86.ads, system-linux-x86_64.ads, system-linux-x86.ads, system-vxworks-ppc.ads, system-hpux.ads, system-darwin-ppc.ads, system-solaris-sparc.ads, system-lynxos-x86.ads, system-vxworks-m68k.ads, system-hpux-ia64.ads, system-irix-o32.ads, system-solaris-x86_64.ads, system-mingw-x86_64.ads, system-vxworks-mips.ads, system-linux-sparc.ads, system-vms-ia64.ads, system-freebsd-x86.ads, system-aix.ads, system-darwin-x86_64.ads, system-vxworks-x86.ads: Remove GCC_ZCX_Support * s-taprop-posix.adb, s-taprop-irix.adb, s-taprop-vxworks.adb, s-taprop-tru64.adb, s-taprop-linux.adb, s-taprop-solaris.adb: Ditto. * opt.ads: Adjust comment. * targparm.ads, targparm.adb: Remove GCC_ZCX_Support_On_Target. * gnat1drv.adb: Do not check for GCC_ZCX_Support_On_Target. * system.ads: Move GCC_ZCX_Support to obsolete entries. 2011-08-29 Emmanuel Briot <briot@adacore.com> * makeutl.adb (Do_Complete): Resolve symbolic links when a relative file name is specified on the gnatmake or gprbuild command line, and before we search for that file in the project. 2011-08-29 Ed Schonberg <schonberg@adacore.com> * sem_type.adb (Within_Instance): New predicate in Collect_Interps, used to determine whether a possible interpretation for an overloadable entity is declared within the current instantiation and should be included in the candidate set. 2011-08-29 Vasiliy Fofanov <fofanov@adacore.com> * gnat_rm.texi, gnat_ugn.texi: Clean ups. From-SVN: r178186
2011-08-29sem_res.adb (Resolve_Actuals): Use base type to determine whether an access ↵Ed Schonberg2-6/+13
subtype is access_to_subprogram... 2011-08-29 Ed Schonberg <schonberg@adacore.com> * sem_res.adb (Resolve_Actuals): Use base type to determine whether an access subtype is access_to_subprogram, when applying checks for RM 3.10.2 (27). From-SVN: r178185
2011-08-29[multiple changes]Arnaud Charlet18-165/+488
2011-08-29 Matthew Heaney <heaney@adacore.com> * a-comutr.adb, a-cimutr.adb, a-cbmutr.adb (Splice_Subtree): Only check for sibling when common parent. 2011-08-29 Thomas Quinot <quinot@adacore.com> * get_scos.adb: Literals of Pragma_Id are pragma names prefixed with "pragma_". 2011-08-29 Ed Schonberg <schonberg@adacore.com> * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Enable freeze actions for the return type when in ASIS mode. 2011-08-29 Vincent Celier <celier@adacore.com> * make.adb (Gnatmake): Get the default search dirs, then the target parameters after getting the Builder switches, as the Builder switches may include --RTS= and that could change the default search dirs. 2011-08-29 Hristian Kirtchev <kirtchev@adacore.com> * exp_ch7.adb (Make_Adjust_Call): Rewrite to mimic the structure of Make_Final_Call. Move the processing for class-wide types before the processing for derivations from [Limited_]Controlled. (Make_Final_Call): Move the processing for class-wide types before the processing for derivations from [Limited_]Controlled. * s-stposu.adb (Allocate_Any_Controlled): Correct the membership check. Add code to account for alignments larger than the list header. Add a comment illustrating the structure of the allocated object + padding + header. (Deallocate_Any_Controlled): Add code to account for alignments larger than the list header. 2011-08-29 Ed Schonberg <schonberg@adacore.com> * sinfo.ads, sinfo.adb: New node kind N_Formal_Incomplete_Type_Definition, related flags. par-ch12.adb (P_Formal_Type_Declaration, G_Formal_Type_Definition): Parse formal incomplete types. * sem.adb (Analyze): Formal_Incomplete_Type_Definitions are handled in sem_ch12. * sem_ch7.adb (Analyze_Package_Specification, Unit_Requires_Body): Formal incomplete types do not need completion. * sem_ch12.adb (Analyze_Formal_Incomplete_Type, Validate_Incomplete_Type_Instance): New procedures to handle formal incomplete types. * freeze.adb (Freeze_Entity): Do not freeze the subtype of an actual that corresponds to a formal incomplete type. * sprint.adb: Handle formal incomplete type declarations. * exp_util.adb (Insert_Actions): An incomplete_type_definition is not an insertion point. From-SVN: r178184
2011-08-29[multiple changes]Arnaud Charlet30-1396/+1912
2011-08-29 Hristian Kirtchev <kirtchev@adacore.com> * a-fihema.ads, a-fihema.adb: Unit removed. * a-undesu.ads, a-undesu.adb: New unit implementing Ada.Unchecked_Deallocate_Subpool. * einfo.adb: Remove Associated_Collection from the node usage. Add Finalization_Master to the node usage. (Associated_Collection): Removed. (Finalization_Master): New routine. (Set_Associated_Collection): Removed. (Set_Finalization_Master): New routine. (Write_Field23_Name): Remove Associated_Collection from the output. Add Finalization_Master to the output. * einfo.ads: Remove attribute Associated_Collection and its uses in entities. Add new attribute Finalization_Master along with its uses in entitites. (Associated_Collection): Removed along with its pragma import. (Finalization_Master): New routine along with a pragma import. (Set_Associated_Collection): Removed along with its pragma import. (Set_Finalization_Master): New routine along with a pragma import. * exp_ch3.adb (Expand_Freeze_Array_Type): Replace call to Build_Finalization_Collection with Build_Finalization_Master. (Expand_Freeze_Record_Type): Move the generation of Finalize_Address before the bodies of the predefined routines. Add comment explaining this. Replace call to Build_Finalization_Collection with Build_Finalization_Master. (Freeze_Type): Replace call to Build_Finalization_Collection with Build_Finalization_Master. (Make_Finalize_Address_Body): Comment reformatting. (Make_Predefined_Primitive_Specs): Code reformatting. (Stream_Operation_OK): Update comment mentioning finalization collections. Replace RE_Finalization_Collection with RE_Finalization_Master. * exp_ch4.adb (Complete_Controlled_Allocation): Replace call to Associated_Collection with Finalization_Master. Replace call to Build_Finalization_Collection with Build_Finalization_Master. (Expand_Allocator_Expression): Replace call to Associated_Collection with Finalization_Master. Replace call to Set_Associated_Collection with Set_Finalization_Master. Remove the generation of Set_Finalize_Address_Ptr. (Expand_N_Allocator): Replace call to Associated_Collection with Finalization_Master. Remove the generation of Set_Finalize_Address_Ptr. * exp_ch6.adb (Add_Collection_Actual_To_Build_In_Place_Call): Renamed to Add_Finalization_Master_Actual_To_Build_In_Place_Call. Update the comment on usage. Replace call to Needs_BIP_Collection with Needs_BIP_Finalization_Master Remplace BIP_Collection with BIP_Finalization_Master. Update all comments which mention finalization collections. Replace Associated_Collection with Finalization_Master. Replace Build_Finalization_Collection with Build_Finalization_Master. (BIP_Formal_Suffix): Update BIP_Collection's case. (Build_Heap_Allocator): Update the related comment. Rename local variable Collect to Fin_Mas_Id and update its occurrences. Update comments which mention finalization collections. Replace Set_Associated_Collection with Set_Finalization_Master. (Expand_Call): Update the code which detects a special piece of library code for .NET/JVM. (Make_Build_In_Place_Call_In_Allocator): Replace the call to Add_Collection_Actual_To_Build_In_Place_Call with Add_Finalization_Master_Actual_To_Build_In_Place_Call. Remove the code which generates a call to Make_Set_Finalize_Address_Ptr_Call. (Make_Build_In_Place_Call_In_Anonymous_Context): Replace call to Add_Collection_Actual_To_Build_In_Place_Call with Add_Finalization_Master_Actual_To_Build_In_Place_Call. (Make_Build_In_Place_Call_In_Assignment): Replace call to Add_Collection_Actual_To_Build_In_Place_Call with Add_Finalization_Master_Actual_To_Build_In_Place_Call. (Needs_BIP_Collection): Renamed to Needs_BIP_Finalization_Master. * exp_ch6.ads: Rename BIP_Collection to BIP_Finalization_Master. (Needs_BIP_Collection): Renamed to Needs_BIP_Finalization_Master. * exp_ch7.adb (Build_BIP_Cleanup_Stmts): Update comment on usage. Rename local variable Collect to Fin_Mas_Id and update its occurrences. Replace call to Set_Associated_Collection with Set_Finalization_Master. (Build_Finalization_Collection): Renamed to Build_Finalization_Master. Replace the call to Associated_Collection with Finalization_Master. Rename local variable Coll_Id to Fin_Mas_Id and update its occurrences. Update the way finalization master names are generated. Update the retrieval of the correct access type which will carry the pool and master attributes. (Make_Final_Call): Reimplement the way [Deep_]Finalize is retrieved. (Make_Finalize_Address_Body): Abstract types do not need Finalize_Address. Code reformatting. (Make_Finalize_Address_Stmts): Update comment on usage. (Make_Set_Finalize_Address_Ptr_Call): Removed. (Process_Declarations): Update comments. * exp_ch7.ads (Build_Finalization_Collection): Renamed to Build_Finalization_Master. Update associated comment. (Make_Set_Finalize_Address_Ptr_Call): Removed. * exp_ch13.adb: Update comments which mention finalization collections. (Expand_N_Free_Statement): Replace the call to Associated_Collection with Finalization_Master. * exp_util.adb (Build_Allocate_Deallocate_Proc): Reimplemented to create calls to routines Allocate_Any_Controlled and Deallocate_Any_Controlled. (Find_Finalize_Address): New routine. (Is_Allocate_Deallocate_Proc): Update the RTE entities used in the comparison. (Requires_Cleanup_Actions): Update the comment on freeze node inspection. * exp_util.ads: Remove comment on generated code for Build_Allocate_Deallocate_Proc. The code is now quite complex and it is better to simply look in the body. * freeze.adb (Freeze_All): Update the comment of finalization collections. Replace the call to Associated_Collection with Finalization_Master. Replace the call to Build_Finalization_Collection with Build_Finalization_Master. * impunit.adb: Add a-undesu and s-stposu to the list of units. * Makefile.rtl: Add files a-undesu, s-finmas and s-stposu. Remove file a-fihema. * rtsfind.adb (Get_Unit_Name): Remove the processing for children of Ada.Finalization. Add processing for children of System.Storage_Pools. * rtsfind.ads: Remove the naming of second level children of Ada.Finalization. Remove Ada_Finalization_Heap_Management from the list of units. Remove subtype Ada_Finalization_Child. Remove the following subprogram entities: RE_Allocate RE_Deallocate RE_Finalization_Collection RE_Finalization_Collection_Ptr RE_Set_Finalize_Address_Ptr Add the naming of second level children of System.Storage_Pools. Add System_Finalization_Masters and System_Storage_Pools_Subpools to the list of units. Add subtype System_Storage_Pools_Child. Add the following subprogram entities to System.Finalization_Masters: RE_Finalization_Master RE_Finalization_Master_Ptr Add the following subprogram entities to System.Storage_Pools.Subpools: RE_Allocate_Any_Controlled RE_Deallocate_Any_Controlled RE_Root_Storage_Pool_With_Subpools RE_Root_Subpool RE_Subpool_Handle Move the following subprogram entities from Ada.Finalization.Heap_Management to System.Finalization_Masters: RE_Add_Offset_To_Address RE_Attach RE_Base_Pool RE_Detach * sem_ch3.adb (Access_Type_Declaration): Replace the call to Set_Associated_Collection with Set_Finalization_Master. * sem_ch6.adb (Create_Extra_Formals): Update the way extra formal BIP_Finalization_Master is created. * s-finmas.adb: New unit System.Finalization_Masters. * s-finmas.ads: New unit System.Finalization_Masters. * s-stopoo.ads, s-stopoo.adb: Minor code reformatting. * s-stposu.ads, s-stposu.adb: New unit implementing System.Storage_Pools.Subpools. 2011-08-29 Bob Duff <duff@adacore.com> * tbuild.adb: Add assertion. From-SVN: r178183
2011-08-29[multiple changes]Arnaud Charlet5-11/+72
2011-08-29 Thomas Quinot <quinot@adacore.com> * s-pooglo.adb: Minor reformatting. 2011-08-29 Ed Schonberg <schonberg@adacore.com> * exp_ch5.adb (Expand_N_Assignment_Statement): if the left-hand side is an indexed component of a packed array whose element type is a record with a representation clause different from that of the right-hand side, generate a temporary to minimuze the number of bit-field operations generated. 2011-08-29 Ed Schonberg <schonberg@adacore.com> * exp_util.adb (Insert_Actions): Use clauses can be part of lists of declarations, and thus are likely insertion points for actions. 2011-08-29 Bob Duff <duff@adacore.com> * einfo.ads: Minor comment fix. From-SVN: r178182
2011-08-29[multiple changes]Arnaud Charlet6-25/+100
2011-08-29 Robert Dewar <dewar@adacore.com> * frontend.adb, gnat1drv.adb: Minor reformatting. 2011-08-29 Tristan Gingold <gingold@adacore.com> * s-pooglo.adb (Allocate, Deallocate): Take into account the alignment. * a-fihema.adb (Allocate, Deallocate): Ditto. Possibly add padding space in front of the header. From-SVN: r178181
2011-08-29frontend.adb (Frontend): Exit after creating Standard package when -gnatd.H ↵Johannes Kanig3-1/+29
is present. 2011-08-29 Johannes Kanig <kanig@adacore.com> * frontend.adb (Frontend): Exit after creating Standard package when -gnatd.H is present. * gnat1drv.adb (Gnat1drv): Call Backend right away when -gnatd.H is present. From-SVN: r178180
2011-08-29exp_ch9.adb, [...]: Minor reformatting.Robert Dewar12-79/+103
2011-08-29 Robert Dewar <dewar@adacore.com> * exp_ch9.adb, mlib-prj.adb, prj.adb, prj.ads, ttypes.ads, sem_ch4.adb, makeutl.adb, makeutl.ads, atree.ads, snames.adb-tmpl, snames.ads-tmpl: Minor reformatting. From-SVN: r178179
2011-08-29prj.adb (Reset_Units_In_Table): New procedure.Philippe Gil2-6/+37
2011-08-29 Philippe Gil <gil@adacore.com> * prj.adb (Reset_Units_In_Table): New procedure. Reset units to avoid access to freed memory. From-SVN: r178178
2011-08-29[multiple changes]Arnaud Charlet9-45/+384
2011-08-29 Thomas Quinot <quinot@adacore.com> * get_scos.adb: When reading a P statement SCO without a pragma name (from an older ALI file), ensure that the Pragma_Name component is set to Unknown_Pragma (not left uninitialized). 2011-08-29 Vincent Celier <celier@adacore.com> * makeutl.adb (Get_Directories): New procedure moved from Buildgpr and modified to compute correctly the object path of a SAL project that is extending another library project. (Write_Path_File): New procedure. * makeutl.ads (Directories): New table moved from Buildgpr (Get_Directories): New procedure moved from Buildgpr (Write_Path_File): New procedure * mlib-prj.adb (Build_Library): Use Makeutl.Get_Directories to set the paths before binding SALs, instead of Set_Ada_Paths. * prj-env.adb (Set_Path_File_Var): Procedure has been moved to package Prj. * prj.adb (Set_Path_File_Var): New procedure moved from Prj.Env (Current_Source_Path_File_Of): New function (Set_Current_Object_Path_File_Of): New procedure (Current_Source_Object_File_Of): New function (Set_Current_Object_Path_File_Of): New procedure * prj.ads (Set_Path_File_Var): New procedure moved from Prj.Env (Current_Source_Path_File_Of): New function (Set_Current_Object_Path_File_Of): New procedure (Current_Source_Object_File_Of): New function (Set_Current_Object_Path_File_Of): New procedure 2011-08-29 Ed Schonberg <schonberg@adacore.com> * exp_ch5.adb (Expand_N_Assignment_Statement): For an assignment to a packed entity, use a bit-field assignment only if there is no change of representation. From-SVN: r178177
2011-08-29[multiple changes]Arnaud Charlet15-117/+198
2011-08-29 Thomas Quinot <quinot@adacore.com> * rtsfind.ads, exp_ch3.adb (In_Runtime): Minor code improvement, use Is_RTU instead of using Chars comparisons. 2011-08-29 Thomas Quinot <quinot@adacore.com> * exp_strm.adb (Build_Mutable_Record_Read_Procedure): Do not create a temporary object if the actual is constrained, and the discriminants read from the stream don't match. 2011-08-29 Tristan Gingold <gingold@adacore.com> * sem_attr.adb, exp_attr.adb: Add handling of Attribute_System_Allocator_Alignment * snames.ads-tmpl: Add Name_System_Allocator_Alignment and Attribute_System_Allocator_Alignment. * ttypes.ads, get_targ.ads: Add Get_System_Allocator_Alignment. * gcc-interface/targtyps.c, gcc-interface/utils2.c, gcc-interface/gigi.h: Renames get_target_default_allocator_alignment to get_target_system_allocator_alignment. 2011-08-29 Arnaud Charlet <charlet@adacore.com> * gcc-interface/Makefile.in, gcc-interface/Make-lang.in: Update dependencies. From-SVN: r178176
2011-08-29exp_ch3.adb (In_Runtime): Fix typo.Arnaud Charlet2-1/+5
2011-08-29 Arnaud Charlet <charlet@adacore.com> * exp_ch3.adb (In_Runtime): Fix typo. From-SVN: r178171
2011-08-29[multiple changes]Arnaud Charlet3-36/+63
2011-08-29 Bob Duff <duff@adacore.com> * sem_ch4.adb (Analyze_Allocator): Analyze the subpool specification. 2011-08-29 Ed Schonberg <schonberg@adacore.com> * exp_ch3.adb (Expand_N_Object_Declaration): If the entity is tagged and a separate tag assignment is generated, ensure that the tag assignment is analyzed. From-SVN: r178170
2011-08-29atree.ads, atree.adb (Copy_Separate_List): New function that applies ↵Ed Schonberg4-20/+55
Copy_Separate_Tree to a list of nodes. 2011-08-29 Ed Schonberg <schonberg@adacore.com> * atree.ads, atree.adb (Copy_Separate_List): New function that applies Copy_Separate_Tree to a list of nodes. Used to create disjoint copies of statement lists that may contain local declarations. (Expand_N_Timed_Entry_Call): Use Copy_Separate_List to duplicate the triggering statements needed for the expansion of this construct, when the trigger is a dispatching call to a synchronized primitive. From-SVN: r178169
2011-08-29gnat_rm.texi: Add doc for 'Elab_Subp_Body.Arnaud Charlet4-4/+36
2011-08-29 Arnaud Charlet <charlet@adacore.com> * gnat_rm.texi: Add doc for 'Elab_Subp_Body. * bindgen.adb: Add comments. * snames.adb-tmpl (Is_Attribute_Name): Only recognize 'Elab_Subp_Body in CodePeer mode. From-SVN: r178168
2011-08-29exp_attr.adb: Minor reformatting.Robert Dewar6-8/+30
2011-08-29 Robert Dewar <dewar@adacore.com> * exp_attr.adb: Minor reformatting. Minor code reorganization and commenting. * par_sco.adb, checks.adb, sem_attr.adb, get_scos.adb: Minor reformatting. From-SVN: r178166
2011-08-29[multiple changes]Arnaud Charlet10-22/+81
2011-08-29 Thomas Quinot <quinot@adacore.com> * get_scos.adb: Ignore chaining indicators not currently supported by Ada. 2011-08-29 Arnaud Charlet <charlet@adacore.com> * system.ads: Minor editing. 2011-08-29 Arnaud Charlet <charlet@adacore.com> * bindgen.adb (Gen_Elab_Calls): Generate calls to subp'Elab_Subp_Body in CodePeer mode. * sem_attr.ads, sem_attr.adb, exp_Attr.adb, sem_ch6.adb: Add handling of Attribute_Elab_Subp_Body. * snames.ads-tmpl (Attribute_Elab_Subp_Body, Name_Elab_Subp_Body): New. * sem_util.adb: Update comments. From-SVN: r178165
2011-08-29par_sco.adb, [...]: Record pragma name for each SCO statement corresponding ↵Thomas Quinot6-104/+156
to a pragma. 2011-08-29 Thomas Quinot <quinot@adacore.com> * par_sco.adb, scos.adb, scos.ads, put_scos.adb, get_scos.adb: Record pragma name for each SCO statement corresponding to a pragma. From-SVN: r178164
2011-08-29[multiple changes]Arnaud Charlet45-108/+59
2011-08-29 Arnaud Charlet <charlet@adacore.com> * opt.ads: Minor editing. 2011-08-29 Yannick Moy <moy@adacore.com> * gnat1drv.adb (Adjust_Global_Switches): Remove options for ALFA mode that only made sense for CodePeer mode. 2011-08-29 Jose Ruiz <ruiz@adacore.com> * targparm.ads (Support_64_Bit_Divides_On_Target): Remove this flag which is no longer used. * targparm.adb (S64, S64_Str, Get_Target_Parameters): Remove the handling of the 64-bit division check. * exp_ch4.adb (Expand_N_Op_Divide): Remove the check for 64-bit division available. * system*.ads (Support_64_Bit_Divides): Remove this flag which is no longer used. 2011-08-29 Thomas Quinot <quinot@adacore.com> * get_scos.adb: Minor reformatting. From-SVN: r178163
2011-08-29[multiple changes]Arnaud Charlet8-60/+57
2011-08-29 Hristian Kirtchev <kirtchev@adacore.com> * exp_util.adb (Process_Statements_For_Controlled_Objects): Whenever a statement list is wrapped in a block, the block is explicitly analyzed in order to properly redecorate the entities and create a servicing finalizer. 2011-08-29 Tristan Gingold <gingold@adacore.com> * sinfo.ads, sinfo.adb (Zero_Cost_Handling): Remove. (Set_Zero_Cost_Handling): Remove. 2011-08-29 Thomas Quinot <quinot@adacore.com> * par_sco.adb, scos.ads, put_scos.adb, get_scos.adb: Minor reformatting From-SVN: r178162
2011-08-29[multiple changes]Arnaud Charlet6-14/+44
2011-08-29 Geert Bosch <bosch@adacore.com> * s-vaflop-vms-alpha.adb (Neg_F): Use subtraction instead of negation instruction, as the latter may produce -0.0, which is not a valid VAX F float number. (Neg_G): Likewise for VAX F float. 2011-08-29 Robert Dewar <dewar@adacore.com> * exp_util.adb: Minor reformatting. 2011-08-29 Yannick Moy <moy@adacore.com> * sem_ch3.adb: Minor comment update. 2011-08-29 Thomas Quinot <quinot@adacore.com> * checks.adb (Apply_Type_Conversion_Checks): Use the Underlying_Type of the operand type. 2011-08-29 Thomas Quinot <quinot@adacore.com> * par_sco.adb (Traverse_Declarations_Or_Statements): Do not flush current statement sequence on a generic instantiation or a subprogram declaration. From-SVN: r178161
2011-08-29[multiple changes]Arnaud Charlet9-190/+119
2011-08-29 Robert Dewar <dewar@adacore.com> * sem_type.adb, einfo.ads, freeze.adb, exp_ch4.adb, sem_ch13.adb: Minor reformatting. 2011-08-29 Hristian Kirtchev <kirtchev@adacore.com> * exp_util.adb (Requires_Cleanup_Actions (List_Id, Boolean, Boolean)): Correct the check which involves the freeze node of a controlled or access-to-controlled type. 2011-08-29 Geert Bosch <bosch@adacore.com> * sem_warn.adb (Check_Code_Statement): Remove check for consecutive Asm statements. * s-vaflop-vms-alpha.adb: Remove bogus Volatile => True arguments from Asm statements. From-SVN: r178160
2011-08-29[multiple changes]Arnaud Charlet6-980/+1038
2011-08-29 Yannick Moy <moy@adacore.com> * sem_ch3.adb (Array_Type_Declaration): Insert a subtype declaration for every index type and component type that is not a subtype_mark. (Process_Subtype): Set Etype of subtype. 2011-08-29 Robert Dewar <dewar@adacore.com> * a-cbmutr.adb, a-cimutr.adb, a-comutr.adb, prj-nmsc.adb: Minor code reorganization. Minor reformatting. From-SVN: r178159
2011-08-29[multiple changes]Arnaud Charlet3-2/+23
2011-08-29 Steve Baird <baird@adacore.com> * exp_ch4.adb (Expand_N_Op_Expon): Suppress N_Op_Expon node expansion for CodePeer and ALFA modes. 2011-08-29 Ed Schonberg <schonberg@adacore.com> * sem_type.adb (Collect_Interps): Within an instance, collect a homonym that comes from an enclosing scope if it is not the renaming of an actual, to handle properly a spurious ambiguity in an instance. From-SVN: r178158
2011-08-29[multiple changes]Arnaud Charlet4-16/+39
2011-08-29 Eric Botcazou <ebotcazou@adacore.com> * sem_ch13.adb (Alignment_Check_For_Esize_Change): Rename to... (Alignment_Check_For_Size_Change): ...this. Add SIZE parameter and use it instead of the Esize of the first parameter. (Analyze_Attribute_Definition_Clause) <Object_Size>: Adjust call to above change. <Size>: Likewise. Call it for composite types on the RM size. 2011-08-29 Yannick Moy <moy@adacore.com> * exp_ch4.adb (Expand_N_Op_Not): Do not expand not on array. * sem_util.adb (Unique_Name): Correct behaviour for names of compilation units. From-SVN: r178157
2011-08-29[multiple changes]Arnaud Charlet17-81/+165
2011-08-29 Yannick Moy <moy@adacore.com> * sem_prag.adb (Check_Precondition_Postcondition): In formal verification mode, analyze pragma expression for correctness, for pre/post on library-level subprogram, as it is not expanded later. 2011-08-29 Yannick Moy <moy@adacore.com> * exp_aggr.adb (Expand_Array_Aggregate): Do not expand array aggregates in formal verification. 2011-08-29 Thomas Quinot <quinot@adacore.com> * sem_util.adb: Minor reformatting. * freeze.adb, sem_ch13.adb: Fix comment: Bit_Order is an attribute, there's no pragma. * par_sco.ads, par_sco.adb: Update comments. 2011-08-29 Yannick Moy <moy@adacore.com> * einfo.adb, einfo.ads: Remove flag Is_Postcondition_Proc and associated getter/setter. * sem_ch6.adb: Remove reference to Is_Postcondition_Proc. 2011-08-29 Vincent Celier <celier@adacore.com> * prj-attr.adb: New Compiler attribute Dependency_Kind and Language_Kind * prj-conf.adb: Add_Default_GNAT_Naming_Scheme: Add a package Compiler with declarations for Language_Kind and Dependency_Kind for Ada. * prj-nmsc.adb (Check_Unit_Name): New name of procedure Check_Ada_Name (Process_Compiler): Take into account the new attributes Dependency_Kind and Language_Kind. (Check_Configuration): Check if language kind is unit based, not if the language name is Ada. (Process_Exceptions_Unit_Based): Ditto (Add_Language): Remove default additions of language and dependency kind * prj.ads: Minor comment change * snames.ads-tmpl: New standard names Dependency_Kind and Language_Kind 2011-08-29 Johannes Kanig <kanig@adacore.com> * debug.adb: Update comments. From-SVN: r178156
2011-08-24* Makefile.in (CFLAGS-collect2.o, CFLAGS-c-family/c-opts.o)Joseph Myers2-12/+14
(CFLAGS-c-family/c-pch.o, CFLAGS-prefix.o, CFLAGS-version.o) (CFLAGS-lto-compress.o, CFLAGS-toplev.o, CFLAGS-intl.o) (CFLAGS-cppbuiltin.o, CFLAGS-cppdefault.o): New. (collect2.o, c-family/c-cppbuiltin.o, c-family/c-opts.o) (c-family/c-pch.o, prefix.o, version.o, lto-compress.o, toplev.o) (intl.o, cppbuiltin.o, cppdefault.o): Remove explicit compilation rules. (lto-wrapper$(exeext)): Use $(LINKER) not $(COMPILER). ada: * gcc-interface/Make-lang.in (CFLAGS-ada/tracebak.o) (CFLAGS-ada/targext.o, CFLAGS-ada/cio.o, CFLAGS-ada/init.o) (CFLAGS-ada/initialize.o, CFLAGS-ada/raise.o): New. (ada/tracebak.o, ada/targext.o, ada/cio.o, ada/init.o) (ada/initialize.o, ada/raise.o): Remove explicit compilation rules. fortran: * Make-lang.in (fortran/cpp.o): Remove explicit compilation rule. go: * Make-lang.in (CFLAGS-go/go-lang.o): New. (go/go-lang.o): Remove explicit compilation rule. java: * Make-lang.in (CFLAGS-java/jcf-io.o, CFLAGS-java/jcf-path.o): New. (java/jcf-io.o, java/jcf-path.o): Remove explicit compilation rules. From-SVN: r178030
2011-08-22Centralize PICFLAG configurationRainer Orth2-14/+24
config: * picflag.m4: New file. gcc: * configure.ac (GCC_PICFLAG_FOR_TARGET): Call it. (PICFLAG_FOR_TARGET): Substitute. * aclocal.m4: Regenerate. * configure: Regenerate. gcc/ada: * gcc-interface/Makefile.in (PICFLAG_FOR_TARGET): New. (GNATLIBCFLAGS_FOR_C): Replace TARGET_LIBGCC2_CFLAGS by PICFLAG_FOR_TARGET. (gnatlib-shared-default, gnatlib-shared-dual-win32) (gnatlib-shared-win32, gnatlib-shared-darwin, gnatlib-shared) (gnatlib-sjlj, gnatlib-zcx): Likewise. libada: * configure.ac: Include ../config/picflag.m4. (GCC_PICFLAG): Call it. Substitute. * configure: Regenerate. * Makefile.in (TARGET_LIBGCC2_CFLAGS): Replace by PICFLAG. (GNATLIBCFLAGS_FOR_C): Replace TARGET_LIBGCC2_CFLAGS by PICFLAG. (LIBADA_FLAGS_TO_PASS): Pass PICFLAG as PICFLAG_FOR_TARGET. Don't include $(GCC_DIR)/libgcc.mvars. libiberty: * aclocal.m4: Include ../config/picflag.m4. * configure.ac (GCC_PICFLAG): Call it. (enable_shared): Clear PICFLAG unless shared. * configure: Regenerate. From-SVN: r177967
2011-08-21Fix ChangeLog format for revision 177257.Gerald Pfeifer1-12/+11
From-SVN: r177945
2011-08-21Fix ChangeLog format for revision 177258.Gerald Pfeifer1-4/+4
From-SVN: r177943
2011-08-07gigi.h (enumerate_modes): Fix formatting.Eric Botcazou3-7/+5
* gcc-interface/gigi.h (enumerate_modes): Fix formatting. * gcc-interface/trans.c (Subprogram_Body_to_gnu): Revert latest change. From-SVN: r177548
2011-08-07* gcc-interface/Makefile.in (raise-gcc.o): Fix previous change.Eric Botcazou2-4/+7
From-SVN: r177544
2011-08-06Remove conflict markerAndreas Schwab1-26/+25
From-SVN: r177507
2011-08-05Makefile.in: Don't use directly ../xgcc to build shared libgnat.Nicolas Roche3-7/+76
2011-08-05 Nicolas Roche <roche@adacore.com> * gcc-interface/Makefile.in: Don't use directly ../xgcc to build shared libgnat. Use rather the value of GCC_FOR_TARGET. Fix issue with canadian cross. * gcc-interface/Make-lang.in: Add support for canadian cross setting. From-SVN: r177462
2011-08-05[multiple changes]Arnaud Charlet5-216/+250
2011-08-05 Matthew Heaney <heaney@adacore.com> * a-comutr.adb, a-cimutr.adb, a-cbmutr.adb (Child_Count, Child_Depth): subprogram bodies declared out-of-order. 2011-08-05 Yannick Moy <moy@adacore.com> * sem_util.adb (Unique_Name): only prefix with "standard" the names of entities directly in package Standard, otherwise skip the standard prefix. From-SVN: r177461
2011-08-05a-cbmutr.adb: Minor reformattingRobert Dewar8-96/+249
2011-08-05 Robert Dewar <dewar@adacore.com> * a-cbmutr.adb: Minor reformatting (Allocate_Node): refactor node allocation algorithm 2011-08-05 Robert Dewar <dewar@adacore.com> * opt.ads, opt.adb (Debug_Pragmas_Disabled): New switch. * sem_prag.adb (Analyze_Pragma, case Debug_Policy): Implement Disable mode. (Analyze_Pragma, case Check_Policy): Ditto. * sem_prag.ads (Check_Disabled): New function * snames.ads-tmpl: Add Name_Disable. 2011-08-05 Robert Dewar <dewar@adacore.com> * gnat_rm.texi: Document implementation-defined policy DISABLE for pragmas Assertion_Policy, Check_Policy, Debug_Policy. From-SVN: r177459
2011-08-05[multiple changes]Arnaud Charlet3-14/+37
2011-08-05 Ed Schonberg <schonberg@adacore.com> * sem_prag.adb (Analyze_Pragma, case Inline): reject an Inline pragma that appears in a generic formal part and applies to a formal subprogram. 2011-08-05 Robert Dewar <dewar@adacore.com> * a-cbmutr.ads: Minor reformatting. From-SVN: r177458
2011-08-05[multiple changes]Arnaud Charlet5-18/+57
2011-08-05 Matthew Heaney <heaney@adacore.com> * a-comutr.adb, a-cimutr.adb, a-cbmutr.adb (Read): do not use T'Valid to check count, check sign of value instead. * a-comutr.adb, a-cimutr.adb (Write): return immediately if tree empty (Copy_Subtree): allocate copy of source element (Equal_Subtree): compare elements, not access objects 2011-08-05 Vincent Celier <celier@adacore.com> * gnat_ugn.texi: Fix VMS alternative. From-SVN: r177457
2011-08-05Update comments.Arnaud Charlet1-0/+1
From-SVN: r177455
2011-08-05Update comments.Arnaud Charlet2-0/+2
From-SVN: r177454
2011-08-05[multiple changes]Arnaud Charlet14-28/+3488
2011-08-05 Thomas Quinot <quinot@adacore.com> * sem_ch11.adb: Add comment. 2011-08-05 Robert Dewar <dewar@adacore.com> * exp_util.adb: Minor comment fix. 2011-08-05 Robert Dewar <dewar@adacore.com> * scng.adb (Error_Unterminated_String): Improve flag position when comma present. 2011-08-05 Matthew Heaney <heaney@adacore.com> * Makefile.rtl, impunit.adb: Added a-cbmutr.ad[sb] (bounded multiway tree containers). * a-cbmutr.ads, a-cbmutr.adb: This is the new Ada 2012 unit for bounded multiway tree containers. 2011-08-05 Robert Dewar <dewar@adacore.com> * styleg.adb (Check_Comment): Implement comment spacing of 1 or 2 * stylesw.adb: Implement -gnatyC to control comment spacing * stylesw.ads (Style_Check_Comments_Spacing): New switch (set by -gnatyc/C). * usage.adb: Add line for -gnatyC. 2011-08-05 Robert Dewar <dewar@adacore.com> * gnat_ugn.texi: Document -gnatyC for J505-006 * vms_data.ads: Implement COMMENTS1/COMMENTS2 (retaining COMMENTS as a synonym for COMMENTS2). From-SVN: r177453
2011-08-05par_sco.adb, [...]: Minor reformatting.Robert Dewar18-452/+469
2011-08-05 Robert Dewar <dewar@adacore.com> * par_sco.adb, sem_ch3.adb, scos.ads, a-iteint.ads, sem_ch12.adb, a-cimutr.adb, a-cimutr.ads, sem_util.ads, sem_res.adb, a-fihema.adb, sem_ch4.adb, lib-xref-alfa.adb, exp_disp.adb, a-comutr.adb, a-comutr.ads, lib-xref.adb: Minor reformatting. 2011-08-05 Robert Dewar <dewar@adacore.com> * sem_ch11.adb (Analyze_Raise_Statement): Kill assignment to formal warning if there is an exception handler present. From-SVN: r177451
2011-08-05[multiple changes]Arnaud Charlet5-8/+54
2011-08-05 Pascal Obry <obry@adacore.com> * a-iteint.ads: Fix copyright year. 2011-08-05 Thomas Quinot <quinot@adacore.com> * par_sco.adb (Traverse_Declarations_Or_Statements): Do not generate a statement SCO for a USE clause or a representation clause. 2011-08-05 Yannick Moy <moy@adacore.com> * lib-xref-alfa.adb (Collect_ALFA): generate the proper relation between body and spec for stub. (Detect_And_Add_ALFA_Scope): take into account subprogram stub * lib-xref.adb (Enclosing_Subprogram_Or_Package): in the case of a pragma precondition or postcondition, for which the enclosing subprogram or package in the AST is not the desired one, return empty. From-SVN: r177450
2011-08-05[multiple changes]Arnaud Charlet10-4/+5636
2011-08-05 Thomas Quinot <quinot@adacore.com> * g-expect.adb: Minor reformatting. 2011-08-05 Bob Duff <duff@adacore.com> * a-fihema.adb: Comment out OS_Lib. 2011-08-05 Matthew Heaney <heaney@adacore.com> * Makefile.rtl, impunit.adb: Added a-c[oi]mutr.ad[sb] (unbounded multiway tree containers) and a-iteint.ads. * a-comutr.ads, a-comutr.adb: This is the new Ada 2012 unit for unbounded multiway tree containers * a-cimutr.ads, a-cimutr.adb This is the new Ada 2012 unit for indefinite multiway tree containers * a-iteint.ads: New file. From-SVN: r177449
2011-08-05Makefile.in (UNWIND_H): Remove.Rainer Orth2-1/+7
gcc: * Makefile.in (UNWIND_H): Remove. (LIB2ADDEH, LIB2ADDEHSTATIC, LIB2ADDEHSHARED): Move to ../libgcc/Makefile.in. (LIBUNWIND, SHLIBUNWIND_LINK, SHLIBUNWIND_INSTALL): Likewise. (LIBUNWINDDEP): Remove. (libgcc-support): Remove LIB2ADDEH, $(srcdir)/emutls.c dependencies. (libgcc.mvars): Remove LIB2ADDEH, LIB2ADDEHSTATIC, LIB2ADDEHSHARED, LIBUNWIND, SHLIBUNWIND_LINK, SHLIBUNWIND_INSTALL. (stmp-int-hdrs): Remove $(UNWIND_H) dependency. Don't copy $(UNWIND_H). * config.gcc (ia64*-*-linux*): Remove with_system_libunwind handling. * configure.ac (GCC_CHECK_UNWIND_GETIPINFO): Remove. * aclocal.m4: Regenerate. * configure: Regenerate. * emutls.c, unwind-c.c, unwind-compat.c, unwind-compat.h, unwind-dw2-fde-compat.c, unwind-dw2-fde-glibc.c, unwind-dw2-fde.c, unwind-dw2-fde.h, unwind-dw2.c, unwind-dw2.h, unwind-generic.h, unwind-pe.h, unwind-sjlj.c, unwind.inc: Move to ../libgcc. * unwind-dw2-fde-darwin.c: Move to ../libgcc/config. * config/arm/libunwind.S, config/arm/pr-support.c, config/arm/unwind-arm.c, config/arm/unwind-arm.h: Move to ../libgcc/config/arm. * config/arm/t-bpabi (UNWIND_H, LIB2ADDEH): Remove. * config/arm/t-symbian (UNWIND_H, LIB2ADDEH): Remove. * config/frv/t-frv ($(T)frvbegin$(objext)): Use $(srcdir)/../libgcc to refer to unwind-dw2-fde.h. ($(T)frvend$(objext)): Likewise. * config/ia64/t-glibc (LIB2ADDEH): Remove. * config/ia64/t-glibc-libunwind: Move to ../libgcc/config/ia64. * config/ia64/fde-glibc.c, config/ia64/fde-vms.c, config/ia64/unwind-ia64.c, config/ia64/unwind-ia64.h: Move to ../libgcc/config/ia64. * config/ia64/t-hpux (LIB2ADDEH): Remove. * config/ia64/t-ia64 (LIB2ADDEH): Remove. * config/ia64/t-vms (LIB2ADDEH): Remove. * config/ia64/vms.h (UNW_IVMS_MODE, MD_UNW_COMPATIBLE_PERSONALITY_P): Remove. * config/picochip/t-picochip (LIB2ADDEH): Remove. * config/rs6000/aix.h (R_LR, MD_FROB_UPDATE_CONTEXT): Remove. * config/rs6000/t-darwin (LIB2ADDEH): Remove. * config/rs6000/darwin-fallback.c: Move to ../libgcc/config/rs6000. * config/sh/t-sh ($(T)unwind-dw2-Os-4-200.o): Use $(srcdir)/../libgcc to refer to unwinder sources. * config/spu/t-spu-elf (LIB2ADDEH): Remove. * config/t-darwin (LIB2ADDEH): Remove. * config/t-freebsd (LIB2ADDEH): Remove. * config/t-libunwind (LIB2ADDEH, LIB2ADDEHSTATIC): Remove. * config/t-libunwind-elf: Move to ../libgcc/config. * config/t-linux (LIB2ADDEH): Remove. * config/t-sol2 (LIB2ADDEH): Remove. * config/xtensa/t-xtensa (LIB2ADDEH): Remove. * system.h (MD_FROB_UPDATE_CONTEXT): Poison. gcc/po: * EXCLUDES (unwind-c.c, unwind-dw2-fde-darwin.c) (unwind-dw2-fde-glibc.c, unwind-dw2-fde.c, unwind-dw2-fde.h) (unwind-dw2.c, unwind-pe.h, unwind-sjlj.c, unwind.h): Remove. libgcc: * Makefile.in (LIB2ADDEH, LIB2ADDEHSTATIC, LIB2ADDEHSHARED): New variables. (LIBUNWIND, SHLIBUNWIND_LINK, SHLIBUNWIND_INSTALL): New variables. (LIB2ADDEH, LIB2ADDEHSTATIC, LIB2ADDEHSHARED): Add $(srcdir)/emutls.c. (install-unwind_h): New target. (all): Depend on it. * config.host (unwind_header): New variable. (*-*-freebsd*): Set tmake_file to t-eh-dw2-dip. (*-*-linux*, frv-*-*linux*, *-*-kfreebsd*-gnu, *-*-knetbsd*-gnu, *-*-gnu*): Likewise, also for *-*-kopensolaris*-gnu. (*-*-solaris2*): Add t-eh-dw2-dip to tmake_file. (arm*-*-linux*): Add arm/t-bpabi for arm*-*-linux-*eabi. Set unwind_header. (arm*-*-uclinux*): Add arm/t-bpabi for arm*-*-uclinux*eabi. Set unwind_header. (arm*-*-eabi*, arm*-*-symbianelf*): Add arm/t-bpabi for arm*-*-eabi*. Add arm/t-symbian to tmake_file for arm*-*-symbianelf*. Set unwind_header. (ia64*-*-elf*): Add ia64/t-eh-ia64 to tmake_file. (ia64*-*-freebsd*): Likewise. (ia64*-*-linux*): Add ia64/t-glibc, ia64/t-eh-ia64, t-libunwind to tmake_file. Add t-libunwind-elf, ia64/t-glibc-libunwind unless $with_system_libunwind. (ia64*-*-hpux*): Set tmake_file. (ia64-hp-*vms*): Add ia64/t-eh-ia64 to tmake_file. (picochip-*-*): Set tmake_file. (rs6000-ibm-aix4.[3456789]*, powerpc-ibm-aix4.[3456789]*): Set md_unwind_header. (rs6000-ibm-aix5.1.*, powerpc-ibm-aix5.1.*): Likewise. (rs6000-ibm-aix[56789].*, powerpc-ibm-aix[56789].*): Likewise. (s390x-ibm-tpf*): Add t-eh-dw2-dip to tmake_file. (xtensa*-*-elf*): Set tmake_file. (xtensa*-*-linux*): Likewise. * configure.ac: Include ../config/unwind_ipinfo.m4. Call GCC_CHECK_UNWIND_GETIPINFO. Link unwind.h to $unwind_header. * configure: Regenerate. * emutls.c, unwind-c.c, unwind-compat.c, unwind-compat.h, unwind-dw2-fde-compat.c, unwind-dw2-fde-dip.c, unwind-dw2-fde.c, unwind-dw2-fde.h, unwind-dw2.c, unwind-dw2.h, unwind-generic.h, unwind-pe.h, unwind-sjlj.c, unwind.inc: New files. * config/unwind-dw2-fde-darwin.c: New file. * config/arm/libunwind.S, config/arm/pr-support.c, config/arm/t-bpabi, config/arm/t-symbian, config/arm/unwind-arm.c, config/arm/unwind-arm.h,: New files. * config/ia64/fde-glibc.c, config/ia64/fde-vms.c, config/ia64/t-eh-ia64, config/ia64/t-glibc, config/ia64/t-glibc-libunwind, config/ia64/t-hpux, config/ia64/t-vms, config/ia64/unwind-ia64.c, config/ia64/unwind-ia64.h: New files. * config/picochip/t-picochip: New file. * config/rs6000/aix-unwind.h, config/rs6000/darwin-fallback.c: New files. * config/rs6000/t-darwin (LIB2ADDEH): Set. * config/s390/t-tpf (LIB2ADDEH): Remove. * config/t-darwin (LIB2ADDEH): Set. * config/t-eh-dw2-dip: New file. * config/t-libunwind, config/t-libunwind-elf: New files. * config/t-sol2 (LIB2ADDEH): Remove. * config/xtensa/t-xtensa: New file. gcc/ada: * gcc-interface/Makefile.in (raise-gcc.o): Search $(srcdir)/../libgcc. libgo: * Makefile.am (AM_CFLAGS): Search $(srcdir)/../libgcc. * Makefile.in: Regenerate. libjava: * configure.ac (GCC_UNWIND_INCLUDE): Rename to LIBGCC_UNWIND_INCLUDE. Point to $(multi_basedir)/./libjava/../libgcc. * configure: Regenerate. * Makefile.am (GCC_UNWIND_INCLUDE): Reflect this. * Makefile.in: Regenerate. libobjc: * Makefile.in (INCLUDES): Search $(srcdir)/$(MULTISRCTOP)../libgcc. libstdc++-v3: * acinclude.m4 (GLIBCXX_EXPORT_INCLUDES): Point TOPLEVEL_INCLUDES to $(toplevel_srcdir)/libgcc. * configure: Regenerate. From-SVN: r177447
2011-08-05[multiple changes]Arnaud Charlet8-24/+371
2011-08-05 Bob Duff <duff@adacore.com> * sinfo.ads, sinfo.adb (Subpool_Handle_Name): New attribute for subpools. * par-ch4.adb (P_Allocator): Parse new subpool specification syntax. 2011-08-05 Ed Schonberg <schonberg@adacore.com> * sem_ch4.adb (Try_Container_Indexing): New procedure to implement the general indexing aspects of Ada2012. Called when analyzing indexed components when other interpretations fail. * sem_ch8.adb (Find_Direct_Name): check for implicit dereference only in an expression context where overloading is meaningful. This excludes the occurrence in an aspect specification (efficiency only). * sem_attr.adb (Analyze_Attribute): indicate that the attributes related to iterators can be set by an attribute specification, but cannot be queried. * sem_ch13.adb (Analyze_Aspect_Specifications): handle Constant_Indexing and Variable_Indexing. (Check_Indexing_Functions): New procedure to perform legality checks. Additional semantic checks at end of declarations. From-SVN: r177446
2011-08-05[multiple changes]Arnaud Charlet3-55/+128
2011-08-05 Sergey Rybin <rybin@adacore.com> * tree_io.ads: Update ASIS_Version_Number because of the change of the order of calling Tree_Write/Tree_Read routines made for aspects. 2011-08-05 Bob Duff <duff@adacore.com> * a-fihema.adb (Finalize): Fix race condition. From-SVN: r177445
2011-08-05[multiple changes]Arnaud Charlet3-0/+25
2011-08-05 Yannick Moy <moy@adacore.com> * sem_ch12.adb (Analyze_Package_Instantiation, Need_Subprogram_Instance_Body): do not generate instance bodies in ALFA mode. 2011-08-05 Ed Schonberg <schonberg@adacore.com> * sem_type.adb (Specific_Type): in an instance, the type-specific operand of an equality check that involves null may have a private type. Use full view to determine legality of construct. From-SVN: r177444
2011-08-05[multiple changes]Arnaud Charlet5-9/+66
2011-08-05 Vincent Celier <celier@adacore.com> * gnatcmd.adb (Get_Closure): Do not crash when it is not possible to delete or close the file when the call to gnatmake was successful. 2011-08-05 Yannick Moy <moy@adacore.com> * gnat1drv.adb (Adjust_Global_Switches): in ALFA mode, set Global_Discard_Names. 2011-08-05 Ed Schonberg <schonberg@adacore.com> * sinfo.ads: comments on use of entity field for aspect specifications. 2011-08-05 Ed Schonberg <schonberg@adacore.com> * sem_ch12.adb (Reset_Entity): If the entity field of the associated node is not itself an entity but a selected component, it is a rewritten parameterless call to an en enclosing synchronized operation, and this expansion will be performed again in the instance, so there is no global information to preserve. From-SVN: r177443
2011-08-05[multiple changes]Arnaud Charlet14-134/+371
2011-08-05 Javier Miranda <miranda@adacore.com> * exp_disp.adb (Set_All_DT_Position): Cleanup code and improve support for renamings of predefined primitives. (In_Predef_Prims_DT): New subprogram. 2011-08-05 Ed Schonberg <schonberg@adacore.com> * sem_util.adb, sem_util.ads (Check_Implicit_Dereference): If a possible interpretation of name is a reference type, add an interpretation that is the designated type of the reference discriminant of that type. * sem_res.adb (resolve): If the interpretation imposed by context is an implicit dereference, rewrite the node as the deference of the reference discriminant. * sem_ch3.adb (Analyze_Subtype_Declaration, Build_Derived_Record_Type, Build_Discriminated_Subtype): Inherit Has_Implicit_Dereference from parent type or base type. * sem_ch4.adb (Process_Indexed_Component, Process_Overloaded_Indexed_Component, Indicate_Name_And_Type, Analyze_Overloaded_Selected_Component, Analyze_Selected_Component): Check for implicit dereference. (List_Operand_Interps): Indicate when an implicit dereference is ambiguous. * sem_ch8.adb (Find_Direct_Name): Check for implicit dereference. 2011-08-05 Thomas Quinot <quinot@adacore.com> * scos.ads: Update documentation of SCO table. Pragma statements can now be marked as disabled (using 'p' instead of 'P' as the statement kind). * par_sco.ads, par_sco.adb: Implement the above change. (Process_Decisions_Defer): Generate a P decision for the first parameter of a dyadic pragma Debug. * sem_prag.adb (Analyze_Pragma, case Debug): Mark pragma as enabled if necessary. * put_scos.adb: Code simplification based on above change. From-SVN: r177442