1. 30 Jul, 2014 40 commits
    • lib-load.ads: Minor reformatting. · 9e5a6ee7
      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
      Thomas Quinot committed
    • [multiple changes] · 3ea8f61e
      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
      Arnaud Charlet committed
    • re PR c/59855 (Support sparse-style __attribute__((designated_init)) on… · 976d5a22
      re PR c/59855 (Support sparse-style __attribute__((designated_init)) on structures, requiring designated initializers)
      
      2014-07-30  Tom Tromey  <tromey@redhat.com>
      
      	PR c/59855
      	* doc/invoke.texi (Warning Options): Document -Wdesignated-init.
      	* doc/extend.texi (Type Attributes): Document designated_init
      	attribute.
      
      2014-07-30  Tom Tromey  <tromey@redhat.com>
      
      	PR c/59855
      	* c.opt (Wdesignated-init): New option.
      	* c-common.c (c_common_attribute_table): Add "designated_init".
      	(handle_designated_init): New function.
      
      2014-07-30  Tom Tromey  <tromey@redhat.com>
      
      	* c-typeck.c (struct constructor_stack) <designator_depth>: New
      	field.
      	(really_start_incremental_init, push_init_level): Initialize
      	designator_depth.
      	(pop_init_level): Set global designator_depth.
      	(process_init_element): Check for designated_init attribute.
      
      From-SVN: r213293
      Tom Tromey committed
    • [multiple changes] · 41c79d60
      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
      Arnaud Charlet committed
    • [multiple changes] · 8e888920
      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
      Arnaud Charlet committed
    • [multiple changes] · 63a4aa43
      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
      Arnaud Charlet committed
    • [multiple changes] · 33c9f9af
      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
    • (Default_Attribute_Count): Replace by Max_Attribute_Count. · 21de9325
      From-SVN: r213288
      Arnaud Charlet committed
    • freeze.adb (Check_Expression_Function): At the freeze point of an expression function... · 18c56840
      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
    • exp_aggr.adb: Update comments. · 41a58113
      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
    • [multiple changes] · 2b4c962d
      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
    • [multiple changes] · c98b8253
      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
    • sem_ch3.ads, [...]: Minor reformatting. · 2e471ec7
      2014-07-30  Robert Dewar  <dewar@adacore.com>
      
      	* sem_ch3.ads, prj.ads, prj-nmsc.adb: Minor reformatting.
      
      From-SVN: r213283
      Robert Dewar committed
    • [multiple changes] · 43174f15
      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
    • a-except-2005.adb, [...]: Remove obsolete comments. · 734e72dd
      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
    • checks.adb, [...]: Minor reformatting. · d6e8719d
      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
    • [multiple changes] · 6b6bce61
      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
    • inline.adb, [...]: Minor reformatting. · facfa165
      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
    • [multiple changes] · 29ad9ea5
      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
    • [multiple changes] · 995683a6
      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
    • [multiple changes] · 793c5f05
      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… · 1eb31e60
      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
    • [multiple changes] · eb1ee757
      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
    • [multiple changes] · 2178830b
      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
    • [multiple changes] · d3e16619
      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
    • s-taasde.adb (Timer_Queue): Don't use a build-in-place function call to initialize the Timer_Queue. · fccaf220
      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
    • exp_ch7.adb, [...]: Minor reformatting. · 3aac5551
      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
    • sem_ch5.adb: Improve error recovery. · 274d2584
      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
    • [multiple changes] · 2afa8fdd
      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
    • [multiple changes] · 8071b771
      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
    • [multiple changes] · 4bd4bb7f
      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
    • Clean up. · e687b3f5
      From-SVN: r213263
      Arnaud Charlet committed
    • [gcc/] · 6a7d8936
      	* 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
    • [multiple changes] · 480156b2
      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
    • [multiple changes] · 36428cc4
      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
    • Minor reformatting. · 7c02f27b
      From-SVN: r213259
      Arnaud Charlet committed
    • decl.c (gnat_to_gnu_entity): Create a mere scalar constant instead of a… · e8fa3dcd
      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
    • [multiple changes] · 7b2888e6
      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
    • [multiple changes] · b0c5fdda
      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
    • einfo.ads (Is_Inlined): Document new use in GNATprove mode. · 52c1498c
      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