aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada
AgeCommit message (Collapse)AuthorFilesLines
2014-07-31[multiple changes]Arnaud Charlet4-13/+32
2014-07-31 Ed Schonberg <schonberg@adacore.com> * sem_ch3.adb (Make_Index): Reject properly the use of 'Length in a discrete range, when 'range was probably intended. 2014-07-31 Robert Dewar <dewar@adacore.com> * sem_warn.adb, sem_warn.ads (Has_Junk_Name): Moved from body to spec. From-SVN: r213339
2014-07-31[multiple changes]Arnaud Charlet13-96/+159
2014-07-31 Robert Dewar <dewar@adacore.com> * frontend.adb: Minor reformatting. * sem.adb: Minor reformatting. * sem_ch6.adb (Analyze_Null_Procedure): Set proper sloc for identifiers on rewrite. * par.adb: Minor comment updates. * a-ngelfu.adb (Cos): Minor simplification. * par-ch13.adb (Get_Aspect_Specifications): Improve messages and recovery for bad aspect. * exp_ch3.adb: Code clean up. * sem_util.ads: Minor comment correction. * sem_ch13.adb (Check_Array_Type): Properly handle large types. * sem_ch3.adb: Code clean up. * binderr.ads: Minor comment correction. 2014-07-31 Ed Schonberg <schonberg@adacore.com> * exp_disp.adb (Expand_Interface_Conversion): A call whose prefix is a static conversion to an interface type that is not class-wide is not dispatching. From-SVN: r213338
2014-07-31[multiple changes]Arnaud Charlet7-14/+44
2014-07-31 Robert Dewar <dewar@adacore.com> * inline.adb, s-traceb.adb, s-traceb-hpux.adb, memtrack.adb, s-traceb-mastop.adb: Minor reformatting. 2014-07-31 Ed Schonberg <schonberg@adacore.com> * exp_ch3.adb (Expand_Record_Extension): In ASIS_Mode perform expansion, to handle properly visibility of selected components in instance bodies. From-SVN: r213337
2014-07-31[multiple changes]Arnaud Charlet14-59/+234
2014-07-31 Robert Dewar <dewar@adacore.com> * par-ch13.adb (Get_Aspect_Specifications): Set Inside_Depends. * par-ch2.adb (P_Pragma): Set Inside_Depends. * par-ch4.adb (P_Simple_Expression): Pass Inside_Depends to Check_Unary_Plus_Or_Minus. * scans.ads (Inside_Depends): New flag. * scng.adb (Scan): Pass Inside_Depends to Check_Arrow. * style.ads: Add Inside_Depends parameter to Check_Arrow Add Inside_Depends parameter to Check_Unary_Plus_Or_Minus. * styleg.adb (Check_Arrow): Handle Inside_Depends case. (Check_Unary_Plus_Or_Minus): Handle Inside_Depends case. * styleg.ads: Add Inside_Depends parameter to Check_Arrow Add. Inside_Depends parameter to Check_Unary_Plus_Or_Minus. 2014-07-31 Javier Miranda <miranda@adacore.com> * s-vaflop.adb Move the body of function T_To_G before T_To_D. Required for frontend inlining. * inline.adb (Has_Excluded_Contract): New subprogram used to check if a subprogram inlined by the frontend has contracts which cannot be inlined. 2014-07-31 Bob Duff <duff@adacore.com> * s-traceb.adb, s-traceb-hpux.adb, s-traceb-mastop.adb: (Call_Chain): Add 1 to number of frames to skip, to account for the fact that there's one more frame on the stack. From-SVN: r213336
2014-07-31[multiple changes]Arnaud Charlet5-26/+118
2014-07-31 Robert Dewar <dewar@adacore.com> * checks.adb (Enable_Overflow_Check): More precise setting of Do_Overflow_Check flag for division. 2014-07-31 Eric Botcazou <ebotcazou@adacore.com> * exp_aggr.adb (Aggr_Assignment_OK_For_Backend): Reject packed array types with implementation type. 2014-07-31 Hristian Kirtchev <kirtchev@adacore.com> * sem_ch10.adb (Process_State): Remove local variable Name. Add local variable Decl. Partially declare an abstract state by generating an entity and storing it in the state declaration. * sem_prag.adb (Create_Abstract_State): Fully declare a semi-declared abstract state. From-SVN: r213335
2014-07-31[multiple changes]Arnaud Charlet3-48/+96
2014-07-31 Robert Dewar <dewar@adacore.com> * prj-nmsc.adb: Minor reformatting. 2014-07-31 Bob Duff <duff@adacore.com> * s-tasdeb.adb (System.Tasking.Debug): Remove all usage of the secondary stack from this package. From-SVN: r213334
2014-07-31[multiple changes]Arnaud Charlet3-10/+51
2014-07-31 Ed Schonberg <schonberg@adacore.com> * sem_ch5.adb (Analyze_Iterator_Specification): If the domain of iteration is an array component that depends on discriminants, create an actual subtype for it, because the preanalysis of the iterator name does not create actual subtypes of components. 2014-07-31 Hristian Kirtchev <kirtchev@adacore.com> * freeze.adb (Freeze_Expression): Update the loop in charge of finding a proper insertion place for freeze nodes to handle N_Expression_With_Actions nodes. From-SVN: r213333
2014-07-31sem_util.adb, [...]: Minor reformatting.Robert Dewar5-39/+52
2014-07-31 Robert Dewar <dewar@adacore.com> * sem_util.adb, a-ngelfu.ads, prj-nmsc.adb, prj-conf.adb: Minor reformatting. From-SVN: r213332
2014-07-31prj-nmsc.adb: Minor reformatting.Pascal Obry2-0/+9
2014-07-31 Pascal Obry <obry@adacore.com> * prj-nmsc.adb: Minor reformatting. From-SVN: r213331
2014-07-31[multiple changes]Arnaud Charlet7-20/+136
2014-07-31 Ed Schonberg <schonberg@adacore.com> * sem_util.adb (Has_Preelaborable_Initialization): Check that type is tagged before checking whether a user-defined Initialize procedure is present. 2014-07-31 Gary Dismukes <dismukes@adacore.com> * a-ngelfu.ads (Sqrt): Augment postcondition. 2014-07-31 Pascal Obry <obry@adacore.com> * prj-nmsc.adb (Check_Library_Attributes): An aggegate library directory and ALI directory must be different than all object and library directories of aggregated projects. 2014-07-31 Vincent Celier <celier@adacore.com> * prj-pars.adb, prj-conf.ads, prj-conf.adb (Locate_Runtime): Move spec to package body, as it is not called from outside. Remove argument Project_Tree, no longer used. When runtime cannot be found, call Raise_Invalid_Config instead of failing the program. From-SVN: r213330
2014-07-31bindgen.adb (Gen_Output_File_Ada): Generate pragma Suppress (Overflow_Check).Robert Dewar3-6/+15
2014-07-31 Robert Dewar <dewar@adacore.com> * bindgen.adb (Gen_Output_File_Ada): Generate pragma Suppress (Overflow_Check). * gnatlink.adb (Process_Args): Remove generation of -gnato0, no longer needed. From-SVN: r213329
2014-07-31gnat_ugn.texi: Document new switch -gnato0.Robert Dewar5-49/+70
2014-07-31 Robert Dewar <dewar@adacore.com> * gnat_ugn.texi: Document new switch -gnato0. * sem_ch3.ads: Minor reformatting. * gnatlink.adb (Process_Args): Compile bind file with -gnato0 (we do not want overflow checks when incrementing elaboration counters). * einfo.ads: Minor reformatting. From-SVN: r213328
2014-07-31exp_ch5.adb, [...]: Minor comment correction.Robert Dewar7-31/+73
2014-07-31 Robert Dewar <dewar@adacore.com> * exp_ch5.adb, freeze.adb, exp_ch3.adb: Minor comment correction. * s-arit64.adb: Minor reformatting. 2014-07-31 Robert Dewar <dewar@adacore.com> * gnat1drv.adb (Adjust_Global_Switches): Default for overflow checking is enabled except in GNAT_Mode. * switch-c.adb (Scan_Front_End_Switches): Implement -gnato0 (suppress overflow checks). From-SVN: r213327
2014-07-31[multiple changes]Arnaud Charlet10-27/+56
2014-07-31 Ed Schonberg <schonberg@adacore.com> * exp_ch3.adb (Expand_Freeze_Record_Type): Do not build an invariant procedure for an internally generated subtype that is created for an object of a class-wide type. 2014-07-31 Vincent Celier <celier@adacore.com> * prj-nmsc.adb, errutil.adb: Make code similar to Errout. 2014-07-31 Gary Dismukes <dismukes@adacore.com> * gnat_rm.texi, sem_aux.ads, einfo.ads, sem_util.ads, sem_ch6.adb, exp_disp.adb: Minor reformatting. From-SVN: r213326
2014-07-31exp_ch5.adb, [...]: Minor reformatting.Robert Dewar15-53/+61
2014-07-31 Robert Dewar <dewar@adacore.com> * exp_ch5.adb, sem_ch3.adb, exp_ch7.adb, exp_util.adb, exp_ch9.adb, sem_ch7.adb, checks.adb, s-exctra.adb, exp_ch6.adb, exp_disp.adb, exp_dist.adb, sem_ch13.adb, exp_strm.adb, exp_ch3.adb: Minor reformatting. From-SVN: r213325
2014-07-31[multiple changes]Arnaud Charlet5-13/+53
2014-07-31 Robert Dewar <dewar@adacore.com> * sem_ch13.adb: Minor reformatting. 2014-07-31 Ed Schonberg <schonberg@adacore.com> * exp_ch3.adb (Build_Invariant_Checks): If the enclosing record is an unchecked_union, warn that invariants will not be checked on components that have them. 2014-07-31 Robert Dewar <dewar@adacore.com> * freeze.adb (Freeze_Entity): Check for error of Type_Invariant'Class applied to a untagged type. * sem_ch6.adb (Analyze_Null_Procedure): Unconditionally rewrite as null body, so that we perform error checks even if expansion is off. From-SVN: r213324
2014-07-31sem_ch13.adb (Build_Invariant_Procedure): If body of procedure is already ↵Ed Schonberg3-6/+70
present, nothing to do. 2014-07-31 Ed Schonberg <schonberg@adacore.com> * sem_ch13.adb (Build_Invariant_Procedure): If body of procedure is already present, nothing to do. * exp_ch3.adb (Build_Component_Invariant_Call): For an access component, check whether the access type has an invariant before checking the designated type. (Build_Record_Invariant_Proc): Change suffix of generated name to prevent ambiguity when record type has invariants in addition to those of components, and two subprograms are constructed. Consistent with handling of array types. (Insert_Component_Invariant_Checks): Build invariant procedure body when one has not been created yet, in the case of composite types that are completions and whose full declarations carry invariants. From-SVN: r213322
2014-07-30Code clean ups.Arnaud Charlet2-3/+2
From-SVN: r213302
2014-07-30[multiple changes]Arnaud Charlet6-40/+53
2014-07-30 Thomas Quinot <quinot@adacore.com> * gnat_rm.texi: Minor doc fixes. 2014-07-30 Robert Dewar <dewar@adacore.com> * a-rbtgbo.adb, sem_ch13.adb: Minor reformatting. 2014-07-30 Vincent Celier <celier@adacore.com> * errutil.adb (Set_Msg_Text): Process tilde ('~'): no processing of error message. * prj-nmsc.adb (Locate_Directory): Use a tilde ('~') in the message to report that a directory cannot be created, to avoid processing of the directory path that may contains special insertion characters. From-SVN: r213301
2014-07-30[multiple changes]Arnaud Charlet9-36/+59
2014-07-30 Ed Schonberg <schonberg@adacore.com> * a-crdlli.ads: Place declaration of Empty_List after full type declaration for Curosr, to prevent freezing error. 2014-07-30 Robert Dewar <dewar@adacore.com> * get_targ.adb: Minor code reorganization. * prj-proc.adb, prj-proc.ads, get_targ.ads, sem_ch6.adb: Minor reformatting. 2014-07-30 Ed Schonberg <schonberg@adacore.com> * a-cbhase.adb: a-cbhase.adb (Insert): Raise Constraint_Error, not Program_Error, when attempting to remove an element not in the set. This is the given semantics for all set containers. 2014-07-30 Ed Schonberg <schonberg@adacore.com> * a-rbtgbo.adb: -rbtgbo.adb (Delete_Node_Sans_Free): If element is not present in tree return rather than violating an assertion. Constraint_Error will be raised in the caller if element is not in the container. From-SVN: r213300
2014-07-30[multiple changes]Arnaud Charlet9-299/+432
2014-07-30 Arnaud Charlet <charlet@adacore.com> * set_targ.adb (Read_Target_Dependent_Values): New subprogram. (elab body): Add provision for default target config file. * get_targ.ads, get_targ.adb (Get_Back_End_Config_File): New subprogram. 2014-07-30 Ed Schonberg <schonberg@adacore.com> * a-cbhase.adb (Delete): Raise Constraint_Error, not Program_Error, when attempting to remove an element not in the set. This is the given semantics for all set containers. * a-cborse.adb (Delete): Attempt removal first, to check for tampering, before checking whether this is an attempt to delete a non-existing element, and in fthe latter case raise Constraint_Error. 2014-07-30 Vincent Celier <celier@adacore.com> * prj-proc.adb (Recursive_Process): Do not create a new Project_Id if the project is already in the list of projects of the tree. 2014-07-30 Ed Schonberg <schonberg@adacore.com> * sem_ch6.adb (Analyze_Function_Return): Reject a return expression whose type is an incomplete formal type. (Analyze_Return_Type): Reject a return type that is an untagged imcomplete formal type. (Process_Formals): Reject a formal parameter whose type is an untagged formal incomplete type. * sem_res.adb (Resolve_Actuals): Reject an actual whose type is an untagged formal incomplete type. From-SVN: r213299
2014-07-30gnat_ugn.texi: Minor spelling correction.Robert Dewar10-73/+398
2014-07-30 Robert Dewar <dewar@adacore.com> * gnat_ugn.texi: Minor spelling correction. * makeutl.adb: Minor code reorganization. * exp_ch4.adb, exp_aggr.adb, exp_ch3.adb: Minor reformatting. 2014-07-30 Robert Dewar <dewar@adacore.com> * einfo.ads (Has_Unchecked_Union): Document that this is used to check for illegal Valid_Scalars attribute references. * exp_attr.adb (Build_Record_VS_Func): New function (Expand_N_Attribute_Reference, case Valid_Scalars): Call this function. * gnat_rm.texi: Document 'Valid_Scalars cannot be applied to Unchecked_Union Add note on 'Valid_Scalars generating a lot of code. * sem_attr.adb (Analyze_Attribute, case Valid_Scalars): Give error on attempt to apply Valid_Scalars to Unchecked_Union type. From-SVN: r213298
2014-07-30[multiple changes]Arnaud Charlet3-3/+16
2014-07-30 Steve Baird <baird@adacore.com> * exp_ch4.adb (Expand_N_Indexed_Component): Disable optimized handling of A(I..J)(K) in CodePeer_Mode. 2014-07-30 Ben Brosgol <brosgol@adacore.com> * gnat_ugn.texi: Fix typo. From-SVN: r213297
2014-07-30[multiple changes]Arnaud Charlet8-55/+142
2014-07-30 Thomas Quinot <quinot@adacore.com> * lib-writ.ads: document format change. 2014-07-30 Pascal Obry <obry@adacore.com> * prj-util.adb (For_Interface_Sources): Do not include sources from withed externally built projects. 2014-07-30 Robert Dewar <dewar@adacore.com> * lib.adb: Minor reformatting. * prj-util.adb: Minor reformatting. 2014-07-30 Ed Schonberg <schonberg@adacore.com> * exp_aggr.adb (Build_Record_Aggr_Code): For an array component that depends on discriminants, and which is given by an others clause, create an explicit subtype with the discriminant values of the enclosing aggregate, because the backend cannot otherwise retrieve the actual bounds of the array. 2014-07-30 Fedor Rybin <frybin@adacore.com> * gnat_ugn.texi: Improve gnattest documentation. 2014-07-30 Pascal Obry <obry@adacore.com> * makeutl.adb (Insert_Project_Sources): Properly handle sources that are aggregated. We want to include sources not only part of libraries but also if part of an aggregated project from an aggregate library. * prj.adb (For_Project_And_Aggregated_Context): Properly check state of root project. From-SVN: r213296
2014-07-30lib-load.ads: Minor reformatting.Thomas Quinot8-24/+82
2014-07-30 Thomas Quinot <quinot@adacore.com> * lib-load.ads: Minor reformatting. * sinfo.ads (Library_Unit): Update comment. * lib.ads (Notes): Simplify. The Unit component in Notes_Entry is redundant. Instead used the pragma Node_Id directly as the element type. 2014-07-30 Thomas Quinot <quinot@adacore.com> * lib.adb (Store_Note): Store only notes that do not come from an instance, and that are in the extended main source unit. * lib-writ (Write_Unit_Information): Annotations from subunits must be emitted along with those for the main unit, and they must carry a specific file name. * ali.ads (Notes_Record): Use a File_Name_Type instead of a Unit_Id for the source file containing the pragma, as in the case of annotations from subunits we might not have a readily available unit id. * ali.adb (Scan_ALI): Account for above change in data structure. From-SVN: r213295
2014-07-30[multiple changes]Arnaud Charlet3-27/+58
2014-07-30 Vincent Celier <celier@adacore.com> * makeutl.adb (Insert_Project_Sources): When the library project is an aggregate Stand-Alone Library, insert in the queue the Ada interface units, with Closure set to True; 2014-07-30 Eric Botcazou <ebotcazou@adacore.com> * sem_util.adb: Fix minor typo. * makeutl.adb: Minor reformatting. From-SVN: r213294
2014-07-30[multiple changes]Arnaud Charlet8-46/+78
2014-07-30 Robert Dewar <dewar@adacore.com> * exp_ch7.adb, checks.adb, makeutl.adb, makeutl.ads: Minor reformatting. 2014-07-30 Yannick Moy <moy@adacore.com> * checks.ads: Fix typo in comment. 2014-07-30 Pierre-Marie Derodat <derodat@adacore.com> * sem_util.adb (Set_Debug_Info_Needed): For scalar types, recurse on entities that materialize range bounds, if any. 2014-07-30 Vincent Celier <celier@adacore.com> * projects.texi: Minor spelling fix. From-SVN: r213292
2014-07-30[multiple changes]Arnaud Charlet9-138/+281
2014-07-30 Hristian Kirtchev <kirtchev@adacore.com> * checks.adb (Make_Bignum_Block): Use the new secondary stack build routines to manage the mark. * exp_ch7.adb (Create_Finalizer, Expand_Cleanup_Actions): Use the new secodary stack build routines to manage the mark. (Insert_Actions_In_Scope_Around): Add new formal parameter Manage_SS along with comment on its usage. Code and comment reformatting. Mark and release the secondary stack when the context warrants it. (Make_Transient_Block): Update the call to Insert_Actions_In_Scope_Around to account for parameter Manage_SS. (Wrap_Transient_Declaration): Remove local variable Uses_SS. Ensure that the secondary stack is marked and released when the related object declaration appears in a library level package or package body. Code and comment reformatting. * exp_util.ads, exp_util.adb (Build_SS_Mark_Call): New routine. (Build_SS_Release_Call): New routine. 2014-07-30 Steve Baird <baird@adacore.com> * exp_attr.adb: Revert previous change, not needed after all. 2014-07-30 Vincent Celier <celier@adacore.com> * makeutl.adb (Queue.Insert_Project_Sources): Insert with Closure => True for interfaces of Stand-Alone Libraries. * makeutl.ads (Source_Info (Format => Gprbuild)): Add new Boolean component Closure, defaulted to False. 2014-07-30 Yannick Moy <moy@adacore.com> * sem_res.adb: Fix typo in error message. From-SVN: r213291
2014-07-30[multiple changes]Arnaud Charlet4-14/+83
2014-07-30 Robert Dewar <dewar@adacore.com> * sem_ch3.adb (Process_Range_Expr_In_Decl): Use _FIRST/_LAST as name suffixes rather than L/H for subtype bounds. * tbuild.ads: Minor comment improvements and fixes (Make_External_Name): Document that suffix can start with an underscore. 2014-07-30 Bob Duff <duff@adacore.com> * gnat_ugn.texi: Document --rep-clauses switch. From-SVN: r213290
2014-07-30[multiple changes]Arnaud Charlet4-41/+79
2014-07-30 Ed Schonberg <schonberg@adacore.com> * sem_ch13.adb (Analyze_Aspect_Specifications): Default_Value and Default_Component_Value can only be specified for scalar type or arrays of scalar types respectively. This legality check must be performed at the point the aspect is analyzed, in order to reject aspect specifications that apply to a partial view. 2014-07-30 Thomas Quinot <quinot@adacore.com> * freeze.adb: Minor reformatting. 2014-07-30 Robert Dewar <dewar@adacore.com> * exp_attr.adb (Expand_Attribute, case First/Last): Don't expand in codepeer mode. From-SVN: r213289
2014-07-30(Default_Attribute_Count): Replace by Max_Attribute_Count.Arnaud Charlet1-4/+3
From-SVN: r213288
2014-07-30freeze.adb (Check_Expression_Function): At the freeze point of an expression ↵Ed Schonberg4-14/+175
function... 2014-07-30 Ed Schonberg <schonberg@adacore.com> * freeze.adb (Check_Expression_Function): At the freeze point of an expression function, verify that the expression in the function does not contain references to any deferred constants that have no completion yet. (Freeze_Expression, Freeze_Before): call Check_Expression_Function. * a-ciorse.ads: Add Reference_Control_Type to detect tampering. * a-ciorse.adb: Add Adjust and Finalize routines for Reference_Control_Type. Use it in the construction of Reference and Constant_Reference values. From-SVN: r213287
2014-07-30exp_aggr.adb: Update comments.Robert Dewar12-100/+229
2014-07-30 Robert Dewar <dewar@adacore.com> * exp_aggr.adb: Update comments. * a-chtgbo.adb, a-chtgbo.ads, a-cbhase.adb, a-cbhase.ads: Minor reformatting. 2014-07-30 Robert Dewar <dewar@adacore.com> * cstand.adb (New_Standard_Entity): New version takes name string to call Make_Name. (Create_Standard): Use this routine to set name before setting other fields. 2014-07-30 Robert Dewar <dewar@adacore.com> * exp_attr.adb (Expand_Attribute, case First): Rewrite simple entity reference. (Expand_Attribute, case Last): Ditto. * exp_ch3.adb (Constrain_Index): New calling sequence for Process_Range_Expr_In_Decl. (Expand_N_Object_Declaration): Avoid setting Is_Known_Valid in one problematical case. * sem_ch3.adb (Constrain_Index): New calling sequence for Process_Range_Expr_In_Decl. (Set_Scalar_Range_For_Subtype): ditto. (Process_Range_Expr_In_Decl): Create constants to hold bounds for subtype. * sem_ch3.ads (Process_Range_Expr_In_Decl): Add Subtyp parameter. * sem_eval.adb (Compile_Time_Compare): Make sure we use base types if we are not assuming no invalid values. From-SVN: r213286
2014-07-30[multiple changes]Arnaud Charlet9-86/+286
2014-07-30 Robert Dewar <dewar@adacore.com> * clean.adb: Minor reformatting. * opt.ads: Minor fix to incorrect comment. 2014-07-30 Ed Schonberg <schonberg@adacore.com> * a-chtgbo.ads, a-chtgbo.adb (Delete_Node_At_Index): New subprogram, used by bounded hashed sets, to delete a node at a given index, whose element may have been improperly updated through a Reference_Preserving key. * a-cbhase.ads: Add Reference_Control_Type to package Generic_Keys. * a-cbhase.adb: Add Adjust and Finalize routines for Reference_Control_Type. (Delete, Insert): Raise Program_Error, not Constraint_Error, when operation is illegal. (Reference_Preserving_Key): Build aggregate for Reference_Control_Type * a-cmbutr.ads: Add Reference_Control_Type to detect tampering. Add private with_clause for Ada.Finalization. * a-cbmutr.adb: Add Adjust and Finalize routines for Reference_Control_Type. Use it in the construction of Reference and Constant_Reference values. From-SVN: r213285
2014-07-30[multiple changes]Arnaud Charlet4-102/+124
2014-07-30 Robert Dewar <dewar@adacore.com> * sem_ch3.adb, sem_ch3.ads: Minor code reorganization. 2014-07-30 Pascal Obry <obry@adacore.com> * clean.adb (Clean_Project): Properly check for directory existence before trying to enter it. From-SVN: r213284
2014-07-30sem_ch3.ads, [...]: Minor reformatting.Robert Dewar4-62/+47
2014-07-30 Robert Dewar <dewar@adacore.com> * sem_ch3.ads, prj.ads, prj-nmsc.adb: Minor reformatting. From-SVN: r213283
2014-07-30[multiple changes]Arnaud Charlet4-58/+82
2014-07-30 Robert Dewar <dewar@adacore.com> * par-ch5.adb (P_Sequence_Of_Statements): Properly handle missing semicolon after name. 2014-07-30 Pascal Obry <obry@adacore.com> * prj.ads (Gprinstall_Flags): New constant. * prj-nmsc.adb (Check_Library_Attributes): Do not fails for missing library dir if Directories_Must_Exist_In_Projects is false. From-SVN: r213282
2014-07-30a-except-2005.adb, [...]: Remove obsolete comments.Bob Duff4-27/+11
2014-07-30 Bob Duff <duff@adacore.com> * a-except-2005.adb, a-except.adb: Remove obsolete comments. * s-traceb.ads: Updagte comments. From-SVN: r213281
2014-07-30checks.adb, [...]: Minor reformatting.Robert Dewar14-327/+328
2014-07-30 Robert Dewar <dewar@adacore.com> * checks.adb, a-cihase.adb, a-cihase.ads, a-chtgop.adb, a-chtgop.ads, a-except.adb, a-except-2005.adb, a-cborse.adb, a-cborse.ads, a-exexda.adb, a-elchha.adb, exp_aggr.adb, a-cohase.adb: Minor reformatting. From-SVN: r213280
2014-07-30[multiple changes]Arnaud Charlet19-234/+897
2014-07-30 Ed Schonberg <schonberg@adacore.com> * a-chtgop.ads, a-chtgop.adb (Delete_Node_At_Index): New subprogram, used by all versions of hashed sets, to delete a node whose element has been improperly updated through a Reference_ Preserving key. * a-cohase.adb: Remove Delete_Node, use new common procedure Delete_Node_At_Index. * a-cihase.ads: Add Reference_Control_Type to package Generic_Keys. * a-cihase.adb: Add Adjust and Finalize routines for Reference_Control_Type. (Reference_Preserving_Key): Build aggregate for Reference_Control_Type 2014-07-30 Yannick Moy <moy@adacore.com> * checks.adb, checks.ads (Determine_Range_R): New procedure to determine the possible range of a floating-point expression. 2014-07-30 Ed Schonberg <schonberg@adacore.com> * a-cborse.ads: Add Reference_Control_Type to package Generic_Keys. * a-cborse.adb: Add Adjust and Finalize routines for Reference_Control_Type. (Reference_Preserving_Key): Build aggregate for Reference_Control_Type. (Delete): Check for tampering, and raise Program_Error (not Constraint_Error) when attempting to delete an element not in the set. (Insert): Ditto. 2014-07-30 Bob Duff <duff@adacore.com> * a-elchha.adb, a-except-2005.adb, a-except.adb, a-exexda.adb, * a-exextr.adb, a-exstat.adb, exp_intr.ads, s-tassta.adb: Exception_Information is used to produce useful debugging information for the programmer. However, it was also used to implement the stream attributes for type Exception_Occurrence. The latter requires a stable and portable interface, which meant that we couldn't include a symbolic traceback. A separate set of routines was used to provide symbolic tracebacks under program control (i.e. not automatically). The goal of this ticket is to provide such automatic tracebacks, so the change here is to split the two functionalities: Exception_Information gives the maximally useful information for debugging (i.e. it now includes a symbolic traceback when a decorator is set, and it can be improved freely in the future without disturbing streaming). Untailored_Exception_Information always uses hexadecimal addresses in the traceback, has a stable and portable output, and is now used for streaming. 2014-07-30 Eric Botcazou <ebotcazou@adacore.com> * exp_aggr.adb (Expand_Array_Aggregate): Add missing test on the target of the assignment to find out whether it can be directly done by the back-end. * exp_util.adb (Is_Possibly_Unaligned_Slice): Remove obscure test. From-SVN: r213279
2014-07-30inline.adb, [...]: Minor reformatting.Robert Dewar8-28/+32
2014-07-30 Robert Dewar <dewar@adacore.com> * inline.adb, a-coorse.adb, a-coorse.ads, a-cohase.adb, a-cohase.ads, a-tasatt.adb: Minor reformatting. 2014-07-30 Robert Dewar <dewar@adacore.com> * exp_ch4.adb: Minor reformatting. From-SVN: r213278
2014-07-30[multiple changes]Arnaud Charlet5-14/+139
2014-07-30 Ed Schonberg <schonberg@adacore.com> * a-coorse.adb, a-coorse.ads (Generic_Keys): Add a Reference_Control_Type to generic package, to keep additional information for Reference_Types that manipulate keys. Add Adjust and Finalize procedures for this type. (Finalize): When finalizing a reference_preserving_key, verify that the key of the new value is equivalent to the key of the original element, raise Program_Error otherwise. (Insert): Detect tampering. (Reference_Preserving_Key): Build proper Reference_Control_Type, and update Busy and Lock bits to detect tampering. * a-cohase.ads: Keep with-clause private. 2014-07-30 Hristian Kirtchev <kirtchev@adacore.com> * exp_ch4.adb (Expand_N_Op_Eq): Emit a warning when the operands of an equality are of an Unchecked_Union type and lack inferable discriminants. From-SVN: r213277
2014-07-30[multiple changes]Arnaud Charlet14-296/+717
2014-07-30 Bob Duff <duff@adacore.com> * g-exctra.adb, g-exctra.ads, s-exctra.adb, s-exctra.ads, Makefile.rtl, g-trasym.adb, g-trasym.ads, s-trasym.adb, s-trasym.ads: Move GNAT.Traceback.Symbolic and GNAT.Exception_Traces into the System hierarchy (System.Traceback.Symbolic and System.Exception_Traces), so we can call them from the runtimes. Leave renamings in place under GNAT. 2014-07-30 Yannick Moy <moy@adacore.com> * inline.adb (Check_And_Build_Body_To_Inline): Include code for inlining in GNATprove mode. 2014-07-30 Ed Schonberg <schonberg@adacore.com> * a-cohase.adb, a-cohase.ads (Generic_Keys): Add a Reference_Control_Type to generic package, to keep additional information for Reference_Types that manipulate keys. Add Adjust and Finalize procedures for this type. (Delete_Node): New procedure called when finalizing a Reference_Control_Type, to remove a node whose element has been improperly updated through a Reference. (Insert): Detect tampering. (Reference_Preserving_Key): Build proper Reference_Control_Type, and update Busy and Lock bits to detect tampering. 2014-07-30 Bob Duff <duff@adacore.com> * exp_intr.ads: Minor comment fix. From-SVN: r213276
2014-07-30[multiple changes]Arnaud Charlet16-38/+156
2014-07-30 Gary Dismukes <dismukes@adacore.com> * exp_prag.adb, a-tags.ads: Minor typo fixes. 2014-07-30 Bob Duff <duff@adacore.com> * a-excach.adb, a-excach-cert.adb, a-except-2005.ads, a-except.ads, g-traceb.adb, memtrack.adb, s-traceb.adb, s-traceb.ads, s-traceb-hpux.adb, s-traceb-mastop.adb: Cleanup: Make the three versions of System.Traceback.Call_Chain have the same interface. Use an array for the Traceback parameter instead of an Address. This will enable reduction in code duplication. 2014-07-30 Pat Rogers <rogers@adacore.com> * gnat_ugn.texi: Corrected minor textual error in description of switch -gnatwl. 2014-07-30 Bob Duff <duff@adacore.com> * Makefile.rtl: Sort file names. 2014-07-30 Arnaud Charlet <charlet@adacore.com> * a-tasatt.adb: Complete previous change: kill spurious warning on e.g. sparc, and make sure we only use the fast path when the alignment is compatible. 2014-07-30 Yannick Moy <moy@adacore.com> * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Mark new Spec_Id as coming from source. From-SVN: r213275
2014-07-30inline.adb (Build_Body_To_Inline): Issue more precise messages for ↵Yannick Moy3-12/+75
declarations that prevent inlining. 2014-07-30 Yannick Moy <moy@adacore.com> * inline.adb (Build_Body_To_Inline): Issue more precise messages for declarations that prevent inlining. (Cannot_Inline): Change usual start of message to refer to contextual analysis in GNATprove mode. * sem_res.adb (Resolve_Call): Change usual start of message to refer to contextual analysis in GNATprove mode, when inlining not possible. From-SVN: r213273
2014-07-30[multiple changes]Arnaud Charlet5-31/+48
2014-07-30 Robert Dewar <dewar@adacore.com> * sem_res.adb, sem_ch6.adb: Minor code reorganization. * inline.adb: Minor reformatting. 2014-07-30 Javier Miranda <miranda@adacore.com> * a-tags.ads: Add comments. From-SVN: r213272
2014-07-30[multiple changes]Arnaud Charlet9-36/+132
2014-07-30 Pat Rogers <rogers@adacore.com> * gnat_rm.texi: Minor word error. 2014-07-30 Ed Schonberg <schonberg@adacore.com> * exp_prag.adb (Expand_Old): Insert declarationss of temporaries created to capture the value of the prefix of 'Old at the beginning of the current declarative part, to prevent data flow anomalies in the postcondition procedure that will follow. 2014-07-30 Yannick Moy <moy@adacore.com> * debug.adb: Retire debug flag -gnatdQ. * inline.adb (Can_Be_Inlined_In_GNATprove_Mode): Check SPARK_Mode on decl, not on body. Ignore predicate functions. * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Remove use of debug flag -gnatdQ. Correctly analyze SPARK_Mode on decl and body when generating a decl for a body on which SPARK_Mode aspect is given. * sem_prag.adb (Analyze_Pragma|SPARK_Mode): Reorder tests for attaching pragma to entity, to account for declaration not coming from source. * sem_res.adb (Resolve_Call): Issue warning and flag subprogram as not always inlined in GNATprove mode, when called in an assertion context. From-SVN: r213271
2014-07-30[multiple changes]Arnaud Charlet16-150/+190
2014-07-30 Vincent Celier <celier@adacore.com> * debug.adb: Minor comment update. 2014-07-30 Robert Dewar <dewar@adacore.com> * s-tasuti.adb, s-tassta.adb: Minor reformatting. * sprint.adb (Sprint_Node): Handle N_Contract case. * exp_prag.adb: Minor reformatting. * freeze.adb (Freeze_Entity): Check useless postcondition for No_Return subprogram. * sem_prag.adb: Minor reformatting. 2014-07-30 Javier Miranda <miranda@adacore.com> * a-tags.ads: Complete comments about performance. 2014-07-30 Fedor Rybin <frybin@adacore.com> * gnat_ugn.texi: Adding description for --exit-status option to gnattest section. Fixing index entry of --passed-tests option in gnattest section. 2014-07-30 Javier Miranda <miranda@adacore.com> * Makefile.rtl, gnat_rm.texi, i-cpp.adb, i-cpp.ads, impunit.adb, rtsfind.ads: Remove references to package Interfaces.CPP since this package is no longer needed. From-SVN: r213270
2014-07-30s-taasde.adb (Timer_Queue): Don't use a build-in-place function call to ↵Bob Duff10-121/+104
initialize the Timer_Queue. 2014-07-30 Bob Duff <duff@adacore.com> * s-taasde.adb (Timer_Queue): Don't use a build-in-place function call to initialize the Timer_Queue. * s-traent.adb, s-traent.ads, s-traent-vms.adb, s-traent-vms.ads: Turn off polling in these units, because otherwise we get elaboration circularities with Ada.Exceptions when the -gnatP switch is used. * s-tassta.adb (Create_Task): Make sure independent tasks are created with Parent = Environment_Task. This was not true, for example, in s-interr.adb, when Interrupt_Manager does "new Server_Task"; the Server_Task had Parent = Interrupt_Manager, which is wrong because the master is determined by the access type, which is at library level. * s-tasuti.adb (Make_Independent): Avoid setting Parent; it is now set correctly by Create_Task. (Make_Passive): Remove the workaround for the race condition in Make_Independent. * frontend.adb (Frontend): Revert to previous method of detecting temporary configuration pragma files, recognizing such files by ".tmp" in the name. This is more general than detecting pragmas Source_File_Name_Project, because it allows any tool to use this naming convention, no matter the content of the file. * gnat_ugn.texi: Document this naming convention. From-SVN: r213269
2014-07-30exp_ch7.adb, [...]: Minor reformatting.Robert Dewar17-87/+170
2014-07-30 Robert Dewar <dewar@adacore.com> * exp_ch7.adb, s-tataat.adb, s-tataat.ads, s-parame-vms-alpha.ads, inline.adb, s-parame-hpux.ads, exp_smem.adb, s-tasini.adb, s-tasini.ads, s-parame-vms-ia64.ads, s-parame.ads, s-taskin.ads, s-parame-vxworks.ads, a-tasatt.adb, a-tasatt.ads: Minor reformatting. * a-suenco.adb (Convert): Handle overlong encodings in UTF8-UTF8 conversion. From-SVN: r213268