- 30 Jul, 2014 40 commits
-
-
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
Arnaud Charlet committed -
From-SVN: r213288
Arnaud Charlet committed -
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
Ed Schonberg committed -
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
Robert Dewar committed -
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
Arnaud Charlet committed -
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
Arnaud Charlet committed -
2014-07-30 Robert Dewar <dewar@adacore.com> * sem_ch3.ads, prj.ads, prj-nmsc.adb: Minor reformatting. From-SVN: r213283
Robert Dewar committed -
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
Arnaud Charlet committed -
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
Bob Duff committed -
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
Robert Dewar committed -
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
Arnaud Charlet committed -
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
Robert Dewar committed -
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
Arnaud Charlet committed -
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
Arnaud Charlet committed -
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
Arnaud Charlet committed -
inline.adb (Build_Body_To_Inline): Issue more precise messages for 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
Yannick Moy committed -
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
Arnaud Charlet committed -
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
Arnaud Charlet committed -
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
Arnaud Charlet committed -
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
Bob Duff committed -
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
Robert Dewar committed -
2014-07-30 Ed Schonberg <schonberg@adacore.com> * sem_ch5.adb: Improve error recovery. * inline.adb (Build_Body_To_Inline): Set Full_Analysis to false before analyzing the body, so that in GNATprove mode there is no light expansion. Whatever expansion is required by SPARK will be performed when analysing the inlined code. From-SVN: r213267
Ed Schonberg committed -
2014-07-30 Bob Duff <duff@adacore.com> * s-tataat.adb, s-tataat.ads, a-tasatt.adb: Minor comment fixes. 2014-07-30 Ed Schonberg <schonberg@adacore.com> * sem_ch5.adb (Analyze_Loop_Statement): If loop has a label, verify that it is not hidden by an inner implicit declaration. From-SVN: r213266
Arnaud Charlet committed -
2014-07-30 Thomas Quinot <quinot@adacore.com> * sem.ads (Scope_Table_Entry): New component Locked_Shared_Objects. * sem_ch8.adb (Push_Scope): Initialize Locked_Shared_Objects. * exp_smem.adb (Add_Shared_Var_Lock_Procs): Handle the case where the call returns an unconstrained type: in this case there is already a transient scope, and we should not establish a new one. * exp_ch7.adb (Insert_Actions_In_Scope_Around): New formal Clean. If True, also insert cleanup actions in the tree. (Wrap_Transient_Declaration): Call Insert_Actions_In_Scope_Around with Clean set True. 2014-07-30 Arnaud Charlet <charlet@adacore.com> * s-taskin.ads (Direct_Index, Direct_Index_Range, Direct_Attribute_Element, Direct_Attribute_Array, Direct_Index_Vector, Direct_Attributes, Is_Defined, Indirect_Attributes): Removed. (Atomic_Address, Attribute_Array, Attributes): New. * s-tasini.ads, s-tasini.adb (Proc_T, Initialize_Attributes, Finalize_Attributes_Link, Initialize_Attributes_Link): Removed. (Finalize_Attributes): Reimplement. * s-tassta.adb (Create_Task): Remove call to Initialize_Attributes_Link (Free_Task, Vulnerable_Free_Task): Replace Finalize_Attributes_Link by Finalize_Attributes. * a-tasatt.ads, a-tasatt.adb, s-tataat.ads, s-tataat.adb: Reimplement from scratch, using a simpler and more efficient implementation. * s-tporft.adb (Register_Foreign_Thread): Remove now obsolete comment. * s-parame.ads, s-parame-hpux.ads, * s-parame-vms-alpha.ads, s-parame-vms-ia64.ads, * s-parame-vxworks.ads (Max_Attribute_Count): New, replace Default_Attribute_Count. From-SVN: r213265
Arnaud Charlet committed -
2014-07-30 Olivier Hainque <hainque@adacore.com> * vxworks-ppc-link.spec: New file. Extra link instructions for ppc-vxworks. * vxworks-crtbe-link.spec: Likewise, for ZCX related support. * system-vxworks-ppc.ads: Adjust linker options to use spec files. * system-vxworks-arm.ads: Likewise. * gcc-interface/Makefile.in: Enable .spec files. 2014-07-30 Ed Schonberg <schonberg@adacore.com> * sem_aggr.adb: Minor comment reformatting. 2014-07-30 Robert Dewar <dewar@adacore.com> * sem_util.ads, sem_util.adb (Is_Junk_Name): Removed. * sem_warn.adb (Has_Junk_Name): New function (Check_References): Use Has_Junk_Name to delete junk warnings (Check_Unset_Reference): ditto. (Warn_On_Unreferenced_Entity): ditto. (Warn_On_Useless_Assignment): ditto. * sem_ch3.adb, lib-xref-spark_specific.adb, s-taprop-vxworks.adb, exp_ch7.adb, s-asthan-vms-alpha.adb, sem_ch10.adb, osint-c.adb, prj.adb, g-comlin.adb, makeutl.adb, s-tasdeb.adb, exp_intr.adb, s-asthan-vms-ia64.adb, prj-env.adb: Ditto. 2014-07-30 Ed Schonberg <schonberg@adacore.com> * checks.adb (Insert_Valid_Check): Do not check for the packed array type of a prefix that is an access type. 2014-07-30 Ed Schonberg <schonberg@adacore.com> * sem_attr.adb (Eval_Attribute): Evaluate the GNAT attribute Unconstrained_Array even if prefix is not frozen yet, as can occur with a private subtype used as a generic actual. 2014-07-30 Gary Dismukes <dismukes@adacore.com> * sem_attr.adb: Minor reformatting. 2014-07-30 Pat Rogers <rogers@adacore.com> * gnat_rm.texi: Corrected minor wording error in description of No_Exception_Registration. 2014-07-30 Yannick Moy <moy@adacore.com> * einfo.ads, einfo.adb: New flag Is_Inlined_Always for use in GNATprove mode. Realphabetize two subprograms. * inline.adb (Cannot_Inline): Use Is_Inlined_Always in GNATprove mode. (Can_Be_Inlined_In_GNATprove_Mode): Adapt to possible Empty Body_Id. (Check_And_Build_Body_To_Inline): Use Is_Inlined_Always in GNATprove mode. (Expand_Inline_Call): Use Is_Inlined_Always in GNATprove mode. * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Do not use Is_Inline in GNATprove mode. (Analyze_Subprogram_Specification): Set Is_Inlined_Always at subprogram entity creation. * sem_res.adb (Resolve_Call): Do not deal with inlining during pre-analysis. Issue warning on call to possibly inlined subprogram when body not seen. 2014-07-30 Yannick Moy <moy@adacore.com> * lib-xref.adb (Generate_Reference): Add special case for compiler-generated formals in GNATprove mode. From-SVN: r213264
Arnaud Charlet committed -
From-SVN: r213263
Arnaud Charlet committed -
* graphite-isl-ast-to-gimple.c: (gcc_expression_from_isl_ast_expr_id): Add calling of fold_convert. (gcc_expression_from_isl_expression): Pass type to gcc_expression_from_isl_ast_expr_id. From-SVN: r213262
Roman Gareev committed -
2014-07-30 Yannick Moy <moy@adacore.com> * sem_ch6.adb: Add comments. 2014-07-30 Thomas Quinot <quinot@adacore.com> * s-os_lib.ads (GM_Time_Of): Clarify documentation. 2014-07-30 Robert Dewar <dewar@adacore.com> * sem_aggr.adb, sem_res.adb: Minor reformatting. 2014-07-30 Thomas Quinot <quinot@adacore.com> * sem_ch13.adb (Analyze_Attribute_Definition_Clause, case Bit_Order): Set Reverse_Bit_Order on the base type of the specified first subtype. From-SVN: r213261
Arnaud Charlet committed -
2014-07-30 Ed Schonberg <schonberg@adacore.com> * inline.adb (Expand_Inlined_Call): Use a renaming declaration to capture the value of actuals of a limited type rather than an object declaration, to prevent spurious errors when analyzing the inlined body. 2014-07-30 Ed Schonberg <schonberg@adacore.com> * sem_ch4.adb (Analyze_Type_Conversion): Treat an inlined body as an instance, and inhibit semantic checks on already analyzed code to prevent spurious errors. 2014-07-30 Arnaud Charlet <charlet@adacore.com> * a-exctra.ads ("="): New function, to restore compatibility. 2014-07-30 Pascal Obry <obry@adacore.com> * adaint.c (__gnat_to_os_time): Set isdst to -1 for the mktime routine to use the OS dst setting. 2014-07-30 Pat Rogers <rogers@adacore.com> * gnat_ugn.texi: Minor correction to description of -gnatw.K. 2014-07-30 Ed Schonberg <schonberg@adacore.com> * sem_util.adb (Wrong_Type): Disable some checks equally within instances and within inlined bodies, to suppress spurious type errors on already analyzed code. * sem_aggr.adb (Check_Expr_OK_In_Limited_Aggregate): Expression is legal in an inlined body, juts as it is in an instance body. 2014-07-30 Ed Schonberg <schonberg@adacore.com> * sem_res.adb (Resolve_Unchecked_Conversion): Within an inlined body the operand of an unchecked conversion may be a literal, in which case its type is the target type of the conversion. This is in contrast to conversions in other contexts, where the operand cannot be a literal and must be resolvable independent of the context. From-SVN: r213260
Arnaud Charlet committed -
From-SVN: r213259
Arnaud Charlet committed -
decl.c (gnat_to_gnu_entity): Create a mere scalar constant instead of a reference for a renaming of scalar... 2014-07-30 Pierre-Marie Derodat <derodat@adacore.com> * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Create a mere scalar constant instead of a reference for a renaming of scalar literal. * gcc-interface/utils.c (renaming_from_generic_instantiation_p): New. * gcc-interface/gigi.h (renaming_from_generic_instantiation_p): New. From-SVN: r213258
Pierre-Marie de Rodat committed -
2014-07-30 Robert Dewar <dewar@adacore.com> * s-tasuti.adb, s-tasuti.ads, einfo.ads, sem_prag.adb, s-taasde.adb, g-socthi-vms.adb, s-taprop-mingw.adb, s-interr.adb, s-interr-hwint.adb, g-decstr.adb, s-tasdeb-vms.adb, g-expect-vms.adb, makeutl.adb, s-interr-vms.adb, g-socthi.adb, exp_aggr.adb, s-tasdeb.adb, g-awk.adb, gnatls.adb, s-taspri-posix.ads, g-catiio.adb, s-interr-sigaction.adb, s-os_lib.adb, s-fileio.adb: Minor reformatting & code reorganization. 2014-07-30 Bob Duff <duff@adacore.com> * s-tassta.adb, sem_util.ads: Minor reformatting. 2014-07-30 Yannick Moy <moy@adacore.com> * inline.adb (Build_Body_To_Inline): Detect when subprogram has multiple returns, or not a single last return statement, in GNATprove mode. (Cannot_Inline): Simplify logic to handle case of GNATprove inlining first. 2014-07-30 Ed Schonberg <schonberg@adacore.com> * sem_ch6.adb: Stubs are not subject to inlining. From-SVN: r213257
Arnaud Charlet committed -
2014-07-30 Bob Duff <duff@adacore.com> * s-tasuti.ads, s-tasuti.adb (Make_Independent): Change this from a procedure to a function, so that it can more easily be called before the "begin" of a task. * s-taasde.ads (Delay_Block): Make this type immutably limited, so we can use a build-in-place function call to initialize Timer_Queue in the body. * a-rttiev.adb, s-asthan-vms-alpha.adb, s-asthan-vms-ia64.adb, * s-interr.adb, s-interr-hwint.adb, s-interr-sigaction.adb, * s-interr-vms.adb, s-taasde.adb: Each independent task now calls Make_Independent before reaching its "begin", to avoid race conditions. This causes the activating task to wait until after Make_Independent is complete before proceeding. In addition, we initialize data structures used by independent tasks before activating those tasks, to avoid possible use of uninitialized data. * s-interr.ads, s-intman.ads, s-taspri-posix.ads, s-tasdeb.ads: Minor comment fixes. 2014-07-30 Bob Duff <duff@adacore.com> * a-exctra.ads, s-traent-vms.ads, s-traent.ads (Tracebacks_Array): Move the declaration of Tracebacks_Array from Ada.Exceptions.Traceback to System.Traceback_Entries (s-traent.ads and s-traent-vms.ads). Add subtypes renaming Tracebacks_Array in Ada.Exceptions.Traceback. * g-debpoo.adb: Refer to Tracebacks_Array in its new home. 2014-07-30 Arnaud Charlet <charlet@adacore.com> * a-tasatt.adb: Remove old comments. From-SVN: r213256
Arnaud Charlet committed -
2014-07-30 Yannick Moy <moy@adacore.com> * einfo.ads (Is_Inlined): Document new use in GNATprove mode. * inline.adb (Can_Be_Inlined_In_GNATprove_Mode): Add comments to explain rationale for inlining or not in GNATprove mode. (Expand_Inlined_Call): In GNATprove mode, set Is_Inlined flag to False when inlining is not possible. * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Set Is_Inlined flag to indicate that subprogram is fully inlined. To be reversed if inlining problem is found. * sem_res.adb (Resolve_Call): Set Is_Inlined flag to False when call in potentially unevaluated context. From-SVN: r213255
Yannick Moy committed -
2014-07-30 Jose Ruiz <ruiz@adacore.com> * s-tarest.adb, s-tarest.ads: Fix comments. 2014-07-30 Robert Dewar <dewar@adacore.com> * exp_attr.adb, checks.adb, sem_util.adb, sem_util.ads, sem_attr.adb: Change No_Scalar_Parts predicate to Scalar_Part_Present and invert sense of test. This avoids the "not No_xxx" situation which is always ugly. 2014-07-30 Ed Schonberg <schonberg@adacore.com> * inline.adb (Expand_Inlined_Call): When generating code for an internal subprogram the expansion uses the location of the call, so that gdb can skip over it. In GNATprove mode we want to preserve slocs of original subprogram when expanding an inlined call, to obtain better warnings, even though subprogram appears not to come from source if it is the inlining of a subprogram body without a previous spec. 2014-07-30 Eric Botcazou <ebotcazou@adacore.com> * exp_aggr.adb (Aggr_Assignment_OK_For_Backend): Reject array types with atomic components. 2014-07-30 Thomas Quinot <quinot@adacore.com> * Make-generated.in: Remove now unnecessary targets after s-oscons reorg. 2014-07-30 Yannick Moy <moy@adacore.com> * sem_res.adb (Resolve_Call): Use ultimate alias of callee when available. 2014-07-30 Ed Schonberg <schonberg@adacore.com> * sem_ch6.adb (Analyze_Expression_Function): To check whether an expression function is a completion, use the specification of the previous declaration, not its entity, which may be internally generated in an inlined context. From-SVN: r213254
Arnaud Charlet committed -
2014-07-30 Richard Biener <rguenther@suse.de> * lto-streamer.h (lto_write_data): New function. * langhooks.c (lhd_append_data): Do not free block. * lto-section-out.c (lto_write_data): New function writing raw data to the current section. (lto_write_stream): Adjust for langhook semantic change. (lto_destroy_simple_output_block): Write header directly. * lto-opts.c (lto_write_options): Write options directly. * lto-streamer-out.c (produce_asm): Write heaeder directly. (lto_output_toplevel_asms): Likewise. (copy_function_or_variable): Copy data directly. (write_global_references): Output index table directly. (lto_output_decl_state_refs): Likewise. (write_symbol): Write data directly. (produce_symtab): Adjust. (produce_asm_for_decls): Output header and refs directly. lto/ * lto-object.c (lto_obj_append_data): Do not free block. From-SVN: r213253
Richard Biener committed -
2014-07-30 Doug Rupp <rupp@adacore.com> * adaint.c (__gnat_tmp_name) [__ANDROID__]: Default to putting temp files in /cache directory unless overridden by TMPDIR. 2014-07-30 Jose Ruiz <ruiz@adacore.com> * s-tassta.adb, s-tarest.adb (Initialize, Create_Task, Create_Restricted_Task): Remove redundant check. Number_Of_CPUs returns type CPU, so it can never be greater than CPU_Range'Last. 2014-07-30 Bob Duff <duff@adacore.com> * s-taskin.ads: Minor comment fix. 2014-07-30 Thomas Quinot <quinot@adacore.com> * g-socket.adb: Remove now useless WITH, USE, and USE TYPE clauses. 2014-07-30 Yannick Moy <moy@adacore.com> * debug.adb: Free debug flag dQ used for frontend inlining in GNATprove mode.. * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Remove test of debug flag.. 2014-07-30 Thomas Quinot <quinot@adacore.com> * Make-generated.in: Remove generation of s-oscons.ads, only generate the xoscons utility, in runtime-agnostic rules. * gcc-interface/Makefile.in: Clean up rules. Remove VMS parts, no longer supported. From-SVN: r213250
Arnaud Charlet committed -
2014-07-30 Bob Duff <duff@adacore.com> * exp_ch6.adb (Add_Task_Actuals_To_Build_In_Place_Call): New parameter Chain to be used in the allocator case. (Make_Build_In_Place_Call_In_Allocator): If the allocated object has tasks, wrap the code in a block that will activate them, including the usual finalization code to kill them off in case of exception or abort. 2014-07-30 Robert Dewar <dewar@adacore.com> * treepr.adb, treepr.ads; Reorganize documentation for new pp routines Remove renamings (don't work for gdb). (par): New synonym for p (avoid gdb ambiguities). * inline.adb, sem_ch6.adb, sem_ch13.adb: Minor reformatting. From-SVN: r213249
Arnaud Charlet committed -
2014-07-30 Bob Duff <duff@adacore.com> * exp_ch9.ads, sem_prag.adb, exp_ch4.adb, sem_ch13.adb: Minor comment fixes. * treepr.ads, treepr.adb (ppp): Make this debugging routine accept any type covered by Union_Id. From-SVN: r213248
Bob Duff committed -
2014-07-30 Robert Dewar <dewar@adacore.com> * sem_ch4.adb (Analyze_If_Expression): Resolve condition before analyzing branches. * sem_eval.adb (Out_Of_Range): Check for statically unevaluated expression case. 2014-07-30 Robert Dewar <dewar@adacore.com> * sem_ch13.adb (Analyze_Aspect, predicate cases): Diagnose use of predicate aspect on entity other than a type. 2014-07-30 Ed Schonberg <schonberg@adacore.com> * sem_ch6.adb (Body_Has_Contract): New predicate to determine when a subprogram body without a previous spec cannot be inlined in GNATprove mode, because it includes aspects or pragmas that generate a SPARK contract clause. * inline.adb (Can_Be_Inlined_In_GNATprove_Mode): A subprogram instance cannot be inlined. From-SVN: r213247
Arnaud Charlet committed
-