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.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@213293 138bc75d-0d04-0410-961f-82ee72b054a4
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.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@213294 138bc75d-0d04-0410-961f-82ee72b054a4
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.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@213295 138bc75d-0d04-0410-961f-82ee72b054a4
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.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@213296 138bc75d-0d04-0410-961f-82ee72b054a4
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.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@213297 138bc75d-0d04-0410-961f-82ee72b054a4
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.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@213298 138bc75d-0d04-0410-961f-82ee72b054a4
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.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@213299 138bc75d-0d04-0410-961f-82ee72b054a4
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.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@213300 138bc75d-0d04-0410-961f-82ee72b054a4
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.



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


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@213302 138bc75d-0d04-0410-961f-82ee72b054a4
        * gnat.dg/case_null.adb, gnat.dg/specs/debug1.ads: Adjust tests.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@213303 138bc75d-0d04-0410-961f-82ee72b054a4
Fix Thumb2 testsuite fallout.

Applied for Jiong.

2014-07-30  Jiong Wang  <jiong.wang@arm.com>

	* config/arm/arm.c (arm_get_frame_offsets): Adjust condition for
	Thumb2.



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

2014-07-30  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>

	* config/s390/s390.c (s390_emit_tpf_eh_return): Pass original return
	address as second parameter to __tpf_eh_return routine.

libgcc/

2014-07-30  J. D. Johnston  <jjohnst@us.ibm.com>

	* config/s390/tpf-unwind.h: Include <stdbool.h>.
	(__tpf_eh_return): Add original return address as second parameter.
	Handle cases where unwinder routines were called directly, instead
	of from within the C++ library.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@213305 138bc75d-0d04-0410-961f-82ee72b054a4
2014-07-30  Martin Jambor  <mjambor@suse.cz>

	* tree-sra.c (sra_ipa_modify_assign): Change type of the first
	parameter to gimple.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@213306 138bc75d-0d04-0410-961f-82ee72b054a4
	PR lto/53808
	PR c++/61659
	* pt.c (push_template_decl_real): Set DECL_COMDAT on templates.
	(check_explicit_specialization): Clear it on specializations.
	* decl.c (duplicate_decls, start_decl): Likewise.
	(grokmethod, grokfndecl): Set DECL_COMDAT on inlines.
	* method.c (implicitly_declare_fn): Set DECL_COMDAT.  Determine
	linkage after setting the appropriate flags.
	* tree.c (decl_linkage): Don't check DECL_COMDAT.
	* decl2.c (mark_needed): Mark clones.
	(import_export_decl): Not here.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@213307 138bc75d-0d04-0410-961f-82ee72b054a4
	PR c++/61659
	PR c++/61687
Revert:
gcc/c-family/
	* c.opt (-fuse-all-virtuals): New.
gcc/cp/
	* decl2.c (mark_all_virtuals): New variable.
	(maybe_emit_vtables): Check it instead of flag_devirtualize.
	(cp_write_global_declarations): Set it and give helpful diagnostic
	if it introduces errors.
	* class.c (finish_struct_1): Check it.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@213308 138bc75d-0d04-0410-961f-82ee72b054a4
	* configure.ac: Also check for popen.
	* tree-loop-distribution.c (dot_rdg): Autoconfize popen use.
	* configure: Regenerate.
	* config.in:  Regenerate.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@213309 138bc75d-0d04-0410-961f-82ee72b054a4
/cp
2014-07-30  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/57397
	* pt.c (unify_arity): Add boolean parameter.
	(unify_too_few_arguments): Likewise.
	(type_unification_real): Diagnose correctly insufficient
	arguments in the presence of trailing variadic parameters;
	deducing multiple trailing packs as empty is fine.

/testsuite
2014-07-30  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/57397
	* g++.dg/cpp0x/vt-57397-1.C: New.
	* g++.dg/cpp0x/vt-57397-2.C: Likewise.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@213310 138bc75d-0d04-0410-961f-82ee72b054a4
	PR lto/53808
	PR c++/61659
	* pt.c (push_template_decl_real): Don't set DECL_COMDAT on friends.

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

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