2014-01-24  Pascal Obry  <obry@adacore.com>

	* prj-attr.adb, projects.texi, snames.ads-tmpl: Add Excluded_Patterns
	attribute definition.

2014-01-24  Vincent Celier  <celier@adacore.com>

	* makeutl.adb (Queue.Insert_No_Roots): In gprbuild, do not put
	in the Queue the same source (same path, same multi-source index)
	from the same project file, to avoid compiling several times
	the same source.

2014-01-24  Eric Botcazou  <ebotcazou@adacore.com>

	* einfo.ads (First_Rep_Item): Remove obsolete stuff.
	(Has_Gigi_Rep_Item): Likewise.
	* sem_prag.adb (Analyze_Pragma) <Pragma_Linker_Section>: Do not set
	Has_Gigi_Rep_Item for objects.
	* gcc-interface/decl.c (prepend_one_attribute_to): Rename into...
	(prepend_one_attribute): ...this.
	(prepend_one_attribute_pragma): New function extracted from...
	(prepend_attributes): ...here.  Swap the parameters for consistency.
	(gnat_to_gnu_entity): Adjust calls to prepend_one_attribute_to and to
	prepend_attributes.
	<object>: Deal with a pragma Linker_Section on a constant
	or variable.  <E_Function>: Deal with a pragma Linker_Section
	on a subprogram.
	(get_minimal_subprog_decl): Adjust calls to prepend_one_attribute_to.

2014-01-24  Vincent Celier  <celier@adacore.com>

	* opt.ads: Minor comment update.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207028 138bc75d-0d04-0410-961f-82ee72b054a4
2014-01-24  Vincent Celier  <celier@adacore.com>

	* projects.texi: Document that aggregate projects are only
	supported by gprbuild, but not by gnatmake.  Document that the
	only attribute Switches in package Binder of aggregate projects
	will be ignored if its index is not others.  Document that
	attribute Global_Config_File is allowed in package Binder of
	aggregate projects.

2014-01-24  Robert Dewar  <dewar@adacore.com>

	* sem_prag.adb: Minor code reorganization.
	* sem_util.adb: Minor fix of potential latent bug in Is_LHS.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207029 138bc75d-0d04-0410-961f-82ee72b054a4
2014-01-24  Robert Dewar  <dewar@adacore.com>

	* sem_util.adb, lib-xref.adb: Correct false positive warnings.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207031 138bc75d-0d04-0410-961f-82ee72b054a4
2014-01-24  Ed Schonberg  <schonberg@adacore.com>

	* sem_util.adb (Is_Post_State): In a postcondition, a selected
	component that denotes an implicit dereference is a reference
	to the post state of the subprogram.

2014-01-24  Robert Dewar  <dewar@adacore.com>

	* sem_ch6.adb (Analyze_Subprogram_Body_Helper): SPARK_Mode OFF
	for generated subprograms.
	(Analyze_Subprogram_Specification): Ditto.

2014-01-24  Vincent Celier  <celier@adacore.com>

	* prj-dect.adb (Check_Attribute_Allowed): Detect more forbidden
	attributes in package Builder of aggregate and aggregate library
	projects.
	* prj-nmsc.adb (Process_Naming_Scheme.Check.Check_Aggregate):
	Remove procedure (Process_Naming_Scheme.Check.Check_Aggregated):
	Remove parameters.  Change error message from "... externally
	build library ..." to "... externally built project ...".
	(Process_Naming_Scheme.Check): Do not do any check in aggregate
	project, as attribute Library_Dir and Library_Name have already
	been detected as forbidden.

2014-01-24  Vincent Celier  <celier@adacore.com>

	* prj-env.adb (Find_Project): If cached project path is not in
	project directory, look in current directory first and use cached
	project path only if project is not found in project directory.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207032 138bc75d-0d04-0410-961f-82ee72b054a4
2014-01-24  Doug Rupp  <rupp@adacore.com>

	* init.c: Add a handler section for Android.

2014-01-24  Arnaud Charlet  <charlet@adacore.com>

	* i-cexten.ads (Unsigned_33..64, Unsigned_33..64): New types.

2014-01-24  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch4.adb (Operator_Check): If one operand is a
	Raise_Expression, set its type to that of the other operand.
	* sem_res.adb (Resolve_Raise_Expression): new procedure.
	(Resolve_Actuals): For an actual that is a Raise_Expression,
	set the type to that of the formal.
	* sem_type.adb (Find_Unique_Type): If one of the operands is a
	Raise_Expression, return type of the other operand.

2014-01-24  Ed Schonberg  <schonberg@adacore.com>

	* sem_aggr.adb (Resolve_Record_Aggregate): If a scalar
	component of the record has a type with a default aspect, and
	the corresponding aggregate component is initiaized with a box,
	use the default value in the rewritten aggregate.

2014-01-24  Tristan Gingold  <gingold@adacore.com>

	* s-interr.ads, s-interr.adb, s-interr-hwint.adb, s-interr-vms.adb,
	s-interr-sigaction.adb,
	s-interr-dummy.adb (Install_Restricted_Handlers): Add Prio parameter.
	* exp_ch9.adb (Make_Initialize_Protection): Add Prio parameter
	to the call to Install_Restricted_Handlers.

2014-01-24  Emmanuel Briot  <briot@adacore.com>

	* prj-nmsc.adb (Check_File): Add protection when the source is
	not fully initialized.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207033 138bc75d-0d04-0410-961f-82ee72b054a4
2014-01-24  Ed Schonberg  <schonberg@adacore.com>

	* sem_attr.adb (Analyze_Attribute, case 'Update): Analyze
	expressions in each component association, and for records note
	the entity in each association choice, for subsequent resolution.
	(Resolve_Attribute, case 'Update): Complete resolution of
	expressions in each component association.

2014-01-24  Robert Dewar  <dewar@adacore.com>

	* sem.adb (Sem): Avoid premature reference to Current_Sem_Unit
	(this was causing Is_Main_Unit_Or_Main_Unit_Spec to be set wrong,
	leading to wrong handling of SPARK_Mode for library units).

2014-01-24  Robert Dewar  <dewar@adacore.com>

	* sem_ch6.adb (Analyze_Subprogram_Body_Helper): Set SPARK_Mode
	on generic instances (do not consider them to be internally
	generated)

2014-01-24  Doug Rupp  <rupp@adacore.com>

	* s-osinte-android.ads (pthread_sigmask): Import sigprocmask
	vice pthread_sigmask.

2014-01-24  Vincent Celier  <celier@adacore.com>

	* prj.adb (Debug_Output (Str, Str2)): Output if verbosity is
	not default.

2014-01-24  Vincent Celier  <celier@adacore.com>

	* prj-ext.adb (Add): Do not output anything when Silent is True,
	whatever the verbosity. When Source is From_External_Attribute,
	set the corresponding environment variable if it is not already set.
	* prj-ext.ads (Add): New Boolean parameter Silent, defaulted
	to False
	* prj-proc.adb (Process_Expression_For_Associative_Array):
	For attribute External, call Prj.Ext.Add with Silent set to
	True for the child environment, to avoid useless output in non
	default verbosity.

2014-01-24  Ed Schonberg  <schonberg@adacore.com>

	* sem_res.adb (Set_Slice_Subtype): Handle properly a discrete
	range given by a subtype indication, and force evaluation of
	the bounds, as for a simple range.
	* exp_util.adb (Evaluate_Slice_Bounds): Utility to force evaluation
	of bounds of slice for various kinds of discrete ranges.
	(Evaluate_Name, Evaluate_Subtype_From_Expr): use
	Evaluate_Slice_Bounds.

2014-01-24  Bob Duff  <duff@adacore.com>

	* s-taskin.ads (Activator): Make this Atomic, because
	Activation_Is_Complete reads it, and that can be called
	from any task. Previously, this component was only
	modified by the activator before activation, and by
	Self after activation.
	* a-taside.ads, a-taside.adb (Environment_Task,
	Activation_Is_Complete): Implement these missing functions.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207034 138bc75d-0d04-0410-961f-82ee72b054a4
2014-01-24  Robert Dewar  <dewar@adacore.com>

	* checks.adb (Expr_Known_Valid): Result of fpt operator never
	considered valid.

2014-01-24  Eric Botcazou  <ebotcazou@adacore.com>

	* back_end.adb: Minor fix in comment.

2014-01-24  Javier Miranda  <miranda@adacore.com>

	* sem_ch3.adb (Check_Abstract_Overriding): Code reestructuration
	required to report the error in case of task types.

2014-01-24  Ed Schonberg  <schonberg@adacore.com>

	* sem_attr.adb: Additional index checking.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207035 138bc75d-0d04-0410-961f-82ee72b054a4
2014-01-24  Robert Dewar  <dewar@adacore.com>

	* exp_ch7.adb: Minor change of Indices to Indexes (preferred
	terminology in compiler).

2014-01-24  Robert Dewar  <dewar@adacore.com>

	* scans.ads: Remove Tok_Raise from Sterm, Eterm, After_SM
	categories, now that Ada 95 supports raise expressions.

2014-01-24  Robert Dewar  <dewar@adacore.com>

	* freeze.adb (Freeze_Enumeration_Type): Use new target parameter
	Short_Enums_On_Target.
	* sem_ch13.adb (Set_Enum_Esize): Take Short_Enums_On_Target
	into account.
	* targparm.ads, targparm.adb: Add new target parameter Short_Enums.

2014-01-24  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch5.adb (Analyze_Iterator_Specification): If subtype
	indication is given explicity, check that it matches the array
	component type or the container element type of the domain
	of iteration.

2014-01-24  Tristan Gingold  <gingold@adacore.com>

	* back_end.adb (Scan_Compiler_Arguments): Set Short_Enums_On_Target.

2014-01-24  Vincent Celier  <celier@adacore.com>

	* prj-env.adb (Ada_Objects_Path): Use Ada_Objects_Path_No_Libs
	to cache the result when Including_Libraries is False.
	* prj-env.ads (Ada_Objects_Path): Update documentation
	* prj.adb (Free (Project_Id)): Also free Ada_Objects_Path_No_Libs
	(Get_Object_Directory): Return the Library_Ali_Dir only when
	when Including_Libraries is True.
	* prj.ads (Get_Object_Directory): Fix and complete documentation
	(Project_Data): New component Ada_Objects_Path_No_Libs



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207036 138bc75d-0d04-0410-961f-82ee72b054a4
2014-01-24  Tristan Gingold  <gingold@adacore.com>
        
	* gcc-interface/misc.c (flag_short_enums): Declare.
	(gnat_post_options): Set it.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207037 138bc75d-0d04-0410-961f-82ee72b054a4
2014-01-24  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch3.adb (Analyze_Declarations): At the end of an
	appropriate declarative part, call Freeze_All from the first
	declaration in the scope, not from the first unfrozen one. This
	is necessary to apply visibility checks to entities with delayed
	aspects. Otherwise, in the presence of instantiations and cleanups
	that they may generate, the delayed aspects may be analyzed too
	late and produce spurious visibility errors.
	* sem_attr.adb: Place etype on range.
	* sem_ch6.adb: Documentation expression functions.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207039 138bc75d-0d04-0410-961f-82ee72b054a4
2014-01-24  Robert Dewar  <dewar@adacore.com>

	* prj.adb, prj-env.adb, back_end.adb: Add comment, minor code clean ups.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207040 138bc75d-0d04-0410-961f-82ee72b054a4
2014-01-24  Ed Schonberg  <schonberg@adacore.com>

	* sinfo.ads: Documentation update.

2014-01-24  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch3.adb (Constant_Redeclaration): New declaration is
	illegal if previous one has an initial expression that is an
	aggregate expanded into assignments.

2014-01-24  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch5.adb (Analyze_Loop_Parameter_Specification): Small
	code reorganization to remove spurious warning on a loop with
	an array element iterator that has a null range.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207041 138bc75d-0d04-0410-961f-82ee72b054a4
2014-01-24  Robert Dewar  <dewar@adacore.com>

	* sinfo.ads, make.adb, prj-env.adb: Minor reformatting.

2014-01-24  Vincent Celier  <celier@adacore.com>

	* prj.adb (Add_Aggregated_Project): Do not add a project in
	the list if it is already there.

2014-01-24  Yannick Moy  <moy@adacore.com>

	* lib-xref-spark_specific.adb (Enclosing_Subprogram_Or_Package):
	Correct the search for a subrogram declaration to which a pragma is
	attached.

2014-01-24  Bob Duff  <duff@adacore.com>

	* gnat_ugn.texi: Document --decimal-grouping and
	--based-grouping switches in gnatpp.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207042 138bc75d-0d04-0410-961f-82ee72b054a4