Commit Graph

111559 Commits

Author SHA1 Message Date
Richard Sandiford
091ace5877 genattrtab.c (attr_rtx_1): Hash SYMBOL_REFs.
gcc/
	* genattrtab.c (attr_rtx_1): Hash SYMBOL_REFs.
	(attr_string): Use copy_md_ptr_loc.

From-SVN: r178387
2011-08-31 21:06:29 +00:00
Martin Jambor
201176d348 re PR middle-end/49886 (pass_split_functions cannot deal with function type attributes)
2011-08-31  Martin Jambor  <mjambor@suse.cz>

	PR middle-end/49886
	* ipa-inline-analysis.c (compute_inline_parameters): Set
	can_change_signature of noes with typde attributes.
	* ipa-split.c (split_function): Do not skip any arguments if
	can_change_signature is set.

	* testsuite/gcc.c-torture/execute/pr49886.c: New testcase.

From-SVN: r178386
2011-08-31 19:17:19 +02:00
Martin Jambor
51093fca4c cgraphunit.c (cgraph_redirect_edge_call_stmt_to_callee): Alias check removed.
2011-08-31  Martin Jambor  <mjambor@suse.cz>

	* cgraphunit.c (cgraph_redirect_edge_call_stmt_to_callee): Alias
	check removed.

From-SVN: r178384
2011-08-31 18:32:47 +02:00
Richard Guenther
32950a5d85 fold-const.c (extract_muldiv_1): Remove bogus TYPE_IS_SIZETYPE special-casing.
2011-08-31  Richard Guenther  <rguenther@suse.de>

	* fold-const.c (extract_muldiv_1): Remove bogus TYPE_IS_SIZETYPE
	special-casing.

From-SVN: r178377
2011-08-31 11:39:20 +00:00
Paolo Carlini
dbb45bf915 chrono (operator*(const _Rep1&, const duration<>&)): Fix order of template parameters per LWG 2004.
2011-08-31  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/std/chrono (operator*(const _Rep1&, const duration<>&)):
	Fix order of template parameters per LWG 2004.

From-SVN: r178374
2011-08-31 10:29:31 +00:00
Arnaud Charlet
24c3410793 [multiple changes]
2011-08-31  Pascal Obry  <obry@adacore.com>

	* a-direct.adb: Do not try to create an UNC path on Windows.
	(Create_Path): Skip leading computer name in UNC path if any.

2011-08-31  Hristian Kirtchev  <kirtchev@adacore.com>

	* exp_strm.adb (Build_Record_Or_Elementary_Input_Function): Remove the
	version-dependent generation of the return statement. The Ada 2005 tree
	is now the default.

2011-08-31  Thomas Quinot  <quinot@adacore.com>

	* rtsfind.ads, exp_dist.adb (Find_Numeric_Representation): Predefined
	types Stream_Element_Offset and Storage_Offset have a different native
	type depending on whether the platform is 32 or 64 bits. When
	exchanging them, always convert to 64 bits.

2011-08-31  Yannick Moy  <moy@adacore.com>

	* debug.adb: Reserve debug option -gnatd.E for passing gnatprove option
	--force-alfa to gnat2why.

2011-08-31  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch12.adb (Save_References): If the node has aspects, save
	references within the corresponding expressions in a separate step,
	because the aspects are not directly in the tree for the declaration
	to which they belong.

2011-08-31  Arnaud Charlet  <charlet@adacore.com>

	* freeze.adb (Freeze_Record_Type): Omit test on variable size component
	in CodePeer mode, since representation clauses are partially ignored.
	* gcc-interface/Make-lang.in: Update dependencies.

From-SVN: r178373
2011-08-31 11:42:50 +02:00
Arnaud Charlet
702d202044 [multiple changes]
2011-08-31  Jose Ruiz  <ruiz@adacore.com>

	* s-taprop-vxworks.adb, s-taprop-mingw.adb, s-taprop-linux.adb,
	s-taprop-solaris.adb (Create_Task): Not_A_Specific_CPU can be assigned
	to any dispatching domain.

2011-08-31  Thomas Quinot  <quinot@adacore.com>

	* exp_ch4.adb: Minor reformatting.

2011-08-31  Bob Duff  <duff@adacore.com>

	* sem_ch6.adb (Get_Generic_Parent_Type): Don't query Subtype_Indication
	on nodes for which it is not defined.
	(Is_Non_Overriding_Operation): Exit the loop when we find a generic
	parent type.

2011-08-31  Bob Duff  <duff@adacore.com>

	* sem_ch3.adb (Process_Full_View): Disable legality check if
	In_Instance, to avoid spurious errors.
	* sem_ch12.adb (Validate_Derived_Type_Instance): Disable legality check
	if In_Instance, to avoid spurious errors.

2011-08-31  Pascal Obry  <obry@adacore.com>

	* a-direct.adb: Use Dir_Seps everywhere to properly handle all
	directory speparators.
	(Compose): Use Dir_Seps to handle both forms.
	(Create_Path): Use Dir_Seps instead of explicit check, no semantic
	changes.
	(Extension): Use Dir_Seps to handle both forms.

2011-08-31  Pascal Obry  <obry@adacore.com>

	* prj-conf.adb: Minor reformatting.

From-SVN: r178372
2011-08-31 11:37:54 +02:00
Arnaud Charlet
67645bdee6 [multiple changes]
2011-08-31  Jose Ruiz  <ruiz@adacore.com>

	* aspects.ads (Aspect_Id, Aspect_Argument, Aspect_Names): Add the
	dispatching domain aspect.
	* aspects.adb (Canonical_Aspect): Add entry for the dispatching domain
	aspect.
	* sem_ch13.adb (Analyze_Aspect_Specifications): Analyze the
	Dispatching_Domain aspect in a similar way as we do for the Priority
	aspect.
	* exp_ch9.adb (Expand_N_Task_Type_Declaration): Add the
	Dispatching_Domain component if a Dispatching_Domain pragma or aspect
	is present.
	(Make_Task_Create_Call): Add the Dispatching_Domain when creating a task
	* par-prag.adb (Prag): Add Pragma_Dispatching_Domain as a known pragma.
	* sem_prag.adb (Analyze_Pragma): Check the correctness of a pragma
	Dispatching_Domain and add it to the task definition.
	(Sig_Flags): Add Pragma_Dispatching_Domain.
	* rtsfind.ads, rtsfind.adb (RTU_Id, RE_Id, Get_Unit_Name): Add the
	support to find the types Dispatching_Domain and
	Dispatching_Domain_Access.
	* sinfo.ads, sinfo.adb (Has_Pragma_Dispatching_Domain,
	Set_Has_Pragma_Dispatching_Domain): Add these subprograms to set and
	query the availability of a pragma Dispatching_Domain.
	* snames.ads-tmpl (Name_uDispatching_Domain): Add this name required by
	the expander to pass the Dispatching_Domain when creating a task.
	(Name_Dispatching_Domain): Add this new name for a pragma.
	(Pragma_Id): Add the new Pragma_Dispatching_Domain.
	* s-tassta.ads, s-tassta.adb (Create_Task): Set the domain to which the
	task has been allocated at creation time.
	* s-tarest.adb (Create_Restricted_Task): The dispatching domain using
	Ravenscar is always null.
	* s-taskin.ads, s-taskin.adb (Initialize_ATCB): Set the domain to which
	the task has been allocated at creation time.
	* s-tporft.adb (Register_Foreign_Thread): A foreign task will not have
	a specific dispatching domain.
	* s-taprop-linux.adb, s-taprop-solaris.adb, s-taprop-vxworks.adb,
	s-taprop-mingw.adb (Create_Task): Check whether both Dispatching_Domain
	and CPU are specified for the task, and the CPU value is not contained
	within the range of processors for the domain.

2011-08-31  Vincent Celier  <celier@adacore.com>

	* make.adb (Original_Gcc) : New constant String_Access.
	(Gnatmake): For VM targets, do not use VM version of the compiler if
	--GCC= has been specified.

2011-08-31  Thomas Quinot  <quinot@adacore.com>

	* sem_ch5.adb: Minor reformatting.

2011-08-31  Ed Schonberg  <schonberg@adacore.com>

	* exp_pakd.adb (Convert_To_PAT_Type): If prefix is a function call, do
	not reanalyze it.

2011-08-31  Bob Duff  <duff@adacore.com>

	* exp_ch4.adb (Expand_N_Selected_Component): Use the full type, in case
	the access type is private; we don't care about privacy in expansion.

2011-08-31  Ed Schonberg  <schonberg@adacore.com>

	* sem_aggr.adb (Resolve_Aggregate): In an instance, ignore aggregate
	subcomponents tnat may be limited, because they originate in view
	conflicts. If the original aggregate is legal and the actuals are
	legal, the aggregate itself is legal.

From-SVN: r178371
2011-08-31 11:33:35 +02:00
Arnaud Charlet
b87897272f [multiple changes]
2011-08-31  Matthew Heaney  <heaney@adacore.com>

	* a-rbtgbo.adb (Clear_Tree): Assert representation invariant for lock
	status.

2011-08-31  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch5.adb: Set kind of loop parameter properly, to preserve all
	errors in B tests.

2011-08-31  Jose Ruiz  <ruiz@adacore.com>

	* sem_ch13.adb (Analyze_Aspect_Specifications): For the Priority and
	Interrupt_Priority aspects, force the analysis of the aspect expression
	(when building the equivalent pragma). Otherwise, its analysis is done
	too late, after the task or protected object has been created.
	* sem_ch9.adb (Analyze_Single_Protected_Declaration,
	Analyze_Single_Task_Declaration): Remove the code to move the aspects
	to the object declaration because they are needed in the type
	declaration.

From-SVN: r178370
2011-08-31 11:27:37 +02:00
Marc Glisse
680fba0932 generic.texi (Types for C++): CP_TYPE_QUALS -> cp_type_quals.
2011-08-31  Marc Glisse  <marc.glisse@inria.fr>

	* doc/generic.texi (Types for C++): CP_TYPE_QUALS -> cp_type_quals.

From-SVN: r178369
2011-08-31 09:26:48 +00:00
Arnaud Charlet
e0c321665e [multiple changes]
2011-08-31  Robert Dewar  <dewar@adacore.com>

	* exp_ch5.adb, exp_ch7.ads, sem_ch5.adb, put_scos.adb, s-rannum.adb,
	a-rbtgbo.adb, exp_intr.adb, a-cbdlli.adb, a-cbdlli.ads: Minor
	reformatting.

2011-08-31  Hristian Kirtchev  <kirtchev@adacore.com>

	* exp_util.adb (Find_Protection_Type): Do not look for fields _object
	if the corresponding type is malformed due to restriction violations.

2011-08-31  Robert Dewar  <dewar@adacore.com>

	* s-ransee.ads, s-ransee.adb: Minor reformatting.

2011-08-31  Hristian Kirtchev  <kirtchev@adacore.com>

	* exp_ch4.adb (Expand_N_Allocator): Correct faulty condition which
	would cause the generation of Set_Finalize_Address if the target is a
	VM and the designated type is not derived from [Limited_]Controlled.

2011-08-31  Arnaud Charlet  <charlet@adacore.com>

	* comperr.adb, comperr.ads, gnat1drv.adb (Delete_SCIL_Files): New
	subprogram.
	(Compiler_Abort, Gnat1drv): Call Delete_SCIL_Files in codepeer mode in
	case of a compilation error.

2011-08-31  Hristian Kirtchev  <kirtchev@adacore.com>

	* init.c (__gnat_error_handler): Standardize the stack overflow or
	erroneous memory access message.
	* seh_init.c (__gnat_SEH_error_handler): Standardize the stack overflow
	or erroneous memory access message.

From-SVN: r178368
2011-08-31 11:24:32 +02:00
Arnaud Charlet
11bc76df47 [multiple changes]
2011-08-31  Robert Dewar  <dewar@adacore.com>

	* sem_ch4.adb: Minor reformatting.
	* sem_ch6.adb: Minor code reorganization (use Ekind_In).

2011-08-31  Thomas Quinot  <quinot@adacore.com>

	* scos.ads: Minor documentation clarification.
	* put_scos.adb: Do not generate SCO unit header line for a unit that
	has no SCO lines.

From-SVN: r178367
2011-08-31 11:18:57 +02:00
Robert Dewar
876d4394d2 a-rbtgbo.adb, [...]: Minor reformatting.
2011-08-31  Robert Dewar  <dewar@adacore.com>

	* a-rbtgbo.adb, alfa_test.adb: Minor reformatting.

From-SVN: r178366
2011-08-31 11:17:20 +02:00
Arnaud Charlet
36b8f95fd0 [multiple changes]
2011-08-31  Tristan Gingold  <gingold@adacore.com>

	* exp_ch7.ads, exp_ch7.adb (Finalization_Exception_Data): New type to
	hold variables between these following subprograms.
	(Build_Exception_Handler, Build_Object_Declarations,
	Build_Raise_Statement): Use the above type as parameter.
	Make the above adjustments.
	* exp_intr.adb (Expand_Unc_Deallocation): Adjust.

2011-08-31  Pascal Obry  <obry@adacore.com>

	* projects.texi: Minor reformatting.

2011-08-31  Tristan Gingold  <gingold@adacore.com>

	* s-ransee.ads, s-ransee.adb: Add system.random_seed unit.
	* s-rannum.adb (Reset): Use Get_Seed from s-ransee.

2011-08-31  Ed Schonberg  <schonberg@adacore.com>

	* exp_ch5.adb: Minor code cleanup.
	* sem_ch5.adb (Analyze_Iteration_Scheme): Set ekind of loop variable to
	prevent cascaded errors.
	(Analyze_Loop_Statement): In semantics-only mode, introduce loop
	variable of an iterator specification in current scope.
	* sem_ch6.adb (Analyze_Return_Statement, Find_what_It_Apples_To): Skip
	postconditions on the stack, as they contain no return statements.

2011-08-31  Yannick Moy  <moy@adacore.com>

	* exp_alfa.adb (Expand_Alfa_N_Package_Declaration,
	Expand_Alfa_N_Subprogram_Body): Remove useless procedures which simply
	call Qualify_Entity_Names.
	(Expand_Alfa): call Qualify_Entity_Names in more cases
	* lib-xref-alfa.adb: Take into account system package.
	* sem_prag.adb Take into account restrictions in Alfa mode, contrary to
	CodePeer mode in which we are interested in finding bugs even if
	compiler cannot compile source.
	* sem_util.adb, sem_util.ads (Unique_Entity): Take into account case of
	deferred constant.

2011-08-31  Gary Dismukes  <dismukes@adacore.com>

	* sem_ch3.adb (Constrain_Concurrent): Retrieve Base_Type of the subtype
	denoted by the subtype mark to ensure getting the concurrent type in
	the case where the subtype mark denotes a private subtype of a
	concurrent type (needed when using -gnatc).
	(Process_Subtype): For the processing specific to type kinds, case on
	the Base_Type kind of the Subtype_Mark_Id, to handle cases where the
	subtype denotes a private subtype whose base type is nonprivate (needed
	for subtypes of private fulfilled by task types when compiling with
	-gnatc).

2011-08-31  Gary Dismukes  <dismukes@adacore.com>

	* sem_disp.adb (Check_Dispatching_Operation): Bypass registration of
	late primitives that override interface operations when the full
	expander is not active, to avoid blowups in Register_Primitive when
	types don't have associated secondary dispatch tables.

2011-08-31  Yannick Moy  <moy@adacore.com>

	* alfa_test.adb: Code clean up.

2011-08-31  Marc Sango  <sango@adacore.com>

	* restrict.adb (Check_SPARK_Restriction): Change Comes_From_Source (N)
	by Comes_From_Source (Original_Node (N)) in order to treat also the
	nodes which have been rewritten.
	* sem_ch4.adb (Analyze_Explicit_Dereference, Analyze_Slice): Guard the
	explicit dereference and slice violation in spark mode on the nodes 
	coming only from the source code.

From-SVN: r178365
2011-08-31 11:14:10 +02:00
Arnaud Charlet
8cf23b9188 [multiple changes]
2011-08-31  Robert Dewar  <dewar@adacore.com>

	* exp_ch5.adb, exp_alfa.ads, prj.ads, sem_attr.adb,
	lib-xref-alfa.adb: Minor reformatting.

2011-08-31  Matthew Heaney  <heaney@adacore.com>

	* a-crbltr.ads (Tree_Type): Default-initialize the Nodes component.

2011-08-31  Javier Miranda  <miranda@adacore.com>

	* sem_ch4.adb (Try_Object_Operation): Addition of one formal to search
	only for class-wide subprograms conflicting with entities of concurrent
	tagged types.

2011-08-31  Matthew Heaney  <heaney@adacore.com>

	* a-rbtgbo.adb (Generic_Allocate): Initialize pointer components of
	node to null value.

2011-08-31  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_ch12.adb (Insert_Freeze_Node_For_Instance): Provide a more
	general description of the routine.

2011-08-31  Ed Schonberg  <schonberg@adacore.com>

	* a-cbdlli.adb, a-cbdlli.ads: Add iterator machinery to bounded
	doubly-linked lists.

From-SVN: r178363
2011-08-31 11:07:20 +02:00
Gary Dismukes
0bb3bfb8fe exp_ch5.adb (Expand_N_Assignment_Statement): When a discriminant check is needed for a left-hand side that is a dereference...
2011-08-31  Gary Dismukes  <dismukes@adacore.com>

	* exp_ch5.adb (Expand_N_Assignment_Statement): When a discriminant
	check is needed for a left-hand side that is a dereference, and the
	base type is private without discriminants (whereas the full type does
	have discriminants), an extra retrieval of the underlying type may be
	needed in the case where the subtype is a record subtype whose base
	type is private. Update comments.

From-SVN: r178362
2011-08-31 11:02:37 +02:00
Arnaud Charlet
11fa950bd4 [multiple changes]
2011-08-31  Javier Miranda  <miranda@adacore.com>

	* sem_ch4.adb (Try_Object_Operation): When a dispatching primitive is
	found check if there is a class-wide subprogram covering the primitive.
	
2011-08-31  Yannick Moy  <moy@adacore.com>

	* sem_res.adb: Further cases where full expansion test is needed,
	rather than expansion test.

2011-08-31  Pascal Obry  <obry@adacore.com>

	* prj-attr.adb: Fix Source_File_Switches attribute kind (must be a list)

2011-08-31  Ed Schonberg  <schonberg@adacore.com>

	* exp_ch5.adb: Handle iterators over derived container types.

2011-08-31  Hristian Kirtchev  <kirtchev@adacore.com>

	* einfo.ads, einfo.adb: Add new flag Has_Anonymous_Master.
	(Has_Anonymous_Master): New routine.
	(Set_Has_Anonymous_Master): New routine.
	(Write_Entity_Flags): Add an entry for Has_Anonymous_Master.
	* exp_ch4.adb: Add with and use clause for Sem_Ch8.
	(Current_Anonymous_Master): New routine.
	(Current_Unit_First_Declaration): Removed.
	(Current_Unit_Scope): Removed.
	(Expand_N_Allocator): Anonymous access-to-controlled types now chain
	their objects on a per-unit heterogeneous finalization master.

2011-08-31  Matthew Heaney  <heaney@adacore.com>

	* a-cbhama.adb, a-cbhase.adb (Insert): Check for zero-length buckets
	array.

2011-08-31  Jose Ruiz  <ruiz@adacore.com>

	* s-taprop-linux.adb (Create_Task): Avoid changing the affinity mask
	when not needed.

2011-08-31  Gary Dismukes  <dismukes@adacore.com>

	* sem_disp.adb (Propagate_Tag): Return without propagating in the case
	where the actual is an unexpanded call to 'Input.

From-SVN: r178361
2011-08-31 10:59:01 +02:00
Arnaud Charlet
d2b4b3da0d [multiple changes]
2011-08-31  Yannick Moy  <moy@adacore.com>

	* sem_ch4.adb: Code clean up.

2011-08-31  Yannick Moy  <moy@adacore.com>

	* exp_alfa.adb, exp_alfa.ads: Minor correction of copyright notice.

2011-08-31  Hristian Kirtchev  <kirtchev@adacore.com>

	* exp_ch7.adb (Build_Array_Deep_Procs): Do not generate Deep_Finalize
	and TSS primitive Finalize_Address if finalization is suppressed.
	(Build_Record_Deep_Procs): Do not generate Deep_Finalize and TSS
	primitive Finalize_Address if finalization is suppressed.

2011-08-31  Jose Ruiz  <ruiz@adacore.com>

	* s-mudido-affinity.adb, s-taprop-linux.adb, s-taprop-mingw.adb,
	s-taprop-solaris.adb, s-taprop-vxworks.adb (Set_Task_Affinity): Make
	sure that the underlying task has already been created before trying
	to change its affinity.
	(Set_CPU): Use the term processor instead of CPU, as we do in
	Assign_Task.

2011-08-31  Vincent Celier  <celier@adacore.com>

	* prj-attr.adb: New Compiler attribute Source_File_Switches.
	* prj-nmsc.adb (Process_Compiler): Process attribute
	Source_File_Switches.
	* prj.ads (Language_Config): New name list component
	Name_Source_File_Switches.
	* snames.ads-tmpl (Name_Source_File_Switches): New standard name.

2011-08-31  Ed Schonberg  <schonberg@adacore.com>

	* sem_attr.adb (Analyze_Attribute, case 'Old): If prefix may be a
	discriminated component of an actual, expand at once to prevent
	ouf-of-order references with generated subtypes.

2011-08-31  Yannick Moy  <moy@adacore.com>

	* lib-xref-alfa.adb (Add_Alfa_Xrefs): Do not take into account read
	reference to operator in Alfa xrefs.

2011-08-31  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_ch12.adb (Freeze_Subprogram_Body): Add code to handle the case
	where the parent instance was frozen before the current instance due to
	the presence of a source body. Update calls to Insert_After_Last_Decl.
	(Insert_After_Last_Decl): Renamed to Insert_Freeze_Node_For_Instance.
	Update the comment which illustrates the purpose of the routine.
	Package instances are now frozen by source bodies which appear after
	the instance. This ensures that entities coming from within the
	instance are available for use in the said bodies.
	(Install_Body): Add code to handle the case where the parent instance
	was frozen before the current instance due to the presence of a source
	body. Update calls to Insert_After_Last_Decl.

From-SVN: r178360
2011-08-31 10:52:34 +02:00
Arnaud Charlet
16c3301a61 Complete log of previous change.
From-SVN: r178359
2011-08-31 10:47:22 +02:00
Arnaud Charlet
56812278e8 [multiple changes]
2011-08-31  Jose Ruiz  <ruiz@adacore.com>

	* s-taprop-linux.adb (Set_Task_Affinity): Avoid the use of anonymous
	access types.
	* affinity.c (__gnat_set_affinity_mask): Declare index variable.

2011-08-31  Yannick Moy  <moy@adacore.com>

	* sem_ch8.adb (Analyze_Subprogram_Renaming): Refine expander test in
	full-expander test.
	Minor reformatting, renaming ALFA in Alfa (we dropped acronym)
	* einfo.adb (Primitive_Operations): Correctly return list of primitive
	operations in a case where it returned previously No_Elist.

From-SVN: r178358
2011-08-31 10:43:42 +02:00
Robert Dewar
7cda9727ba s-taprop-vxworks.adb, [...]: Minor reformatting.
2011-08-31  Robert Dewar  <dewar@adacore.com>

	* s-taprop-vxworks.adb, sem_ch5.adb, s-taprop-tru64.adb, exp_alfa.adb,
	s-taprop-vms.adb, bindgen.adb, s-mudido.adb, s-mudido.ads,
	sem_res.adb, expander.adb, s-taprop-mingw.adb, s-taprop-linux.adb,
	s-taprop-solaris.adb, s-mudido-affinity.adb, vms_conv.adb,
	s-taprop-irix.adb, s-taprop.ads, s-taskin.adb, s-taskin.ads,
	s-taprop-hpux-dce.adb, a-chtgbo.adb, s-taprop-posix.adb: Minor
	reformatting.

From-SVN: r178357
2011-08-31 10:40:22 +02:00
Arnaud Charlet
0a190dfd4a [multiple changes]
2011-08-31  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_ch12 (Check_Private_View): Revert previous change.
	* sem_res.adb (Conversion_Check): Do not emit the error message if the
	conversion is in a generic instance.

2011-08-31  Matthew Heaney  <heaney@adacore.com>

	* a-cbhase.adb (Symmetric_Difference): Dereference correct node array.
	* a-chtgbo.adb (Free): Allow 0 as index value.

2011-08-31  Matthew Heaney  <heaney@adacore.com>

	* a-cborma.adb (Insert): Add comment to explain why no element
	assignment.

2011-08-31  Gary Dismukes  <dismukes@adacore.com>

	* sem_util.adb (Find_Body_Discriminal): Test whether the scope of the
	spec discriminant is already a concurrent type, in which case just use
	it, otherwise fetch the Corresponding_Concurrent_Type as before.

From-SVN: r178356
2011-08-31 10:37:37 +02:00
Tom de Vries
8861e60f31 re PR middle-end/43513 (The stack pointer is adjusted twice)
2011-08-31  Tom de Vries  <tom@codesourcery.com>

	PR middle-end/43513
	* gcc.dg/pr43513.c: New test.

From-SVN: r178354
2011-08-31 07:05:59 +00:00
Tom de Vries
1fed100655 re PR middle-end/43513 (The stack pointer is adjusted twice)
2011-08-31  Tom de Vries  <tom@codesourcery.com>

	PR middle-end/43513
	* Makefile.in (tree-ssa-ccp.o): Add $(PARAMS_H) to rule.
	* tree-ssa-ccp.c (params.h): Include.
	(fold_builtin_alloca_for_var): New function.
	(ccp_fold_stmt): Use fold_builtin_alloca_for_var.

From-SVN: r178353
2011-08-31 07:04:25 +00:00
GCC Administrator
57f6fb2e76 Daily bump.
From-SVN: r178351
2011-08-31 00:19:13 +00:00
Tobias Burnus
dc8c7978e0 re PR fortran/45044 (Different named COMMON block size: No warning)
2011-08-30  Tobias Burnus  <burnus@net-b.de>

        PR fortran/45044
        * trans-common.c (build_common_decl): Warn if named common
        block's size is not everywhere the same.

2011-08-30  Tobias Burnus  <burnus@net-b.de>

        PR fortran/45044
        * gfortran.dg/common_14.f90: New.
        * gfortran.dg/common_resize_1.f: Add two dg-warning.

From-SVN: r178344
2011-08-31 00:09:49 +02:00
Jason Merrill
d9cdfea55f re PR c++/50084 ([C++0x] ICE: decltype + remove_reference + new)
PR c++/50084
	* cp-tree.h (cp_decl_specifier_seq): Rename user_defined_type_p
	to type_definition_p.
	* parser.c (cp_parser_set_decl_spec_type): Likewise.
	* decl.c (grokdeclarator): Check it.

From-SVN: r178340
2011-08-30 17:27:36 -04:00
Jason Merrill
90677b8d91 re PR c++/50089 ([C++0x] ICE when calling a qualified base class member function within a lambda expr without "this->")
PR c++/50089
	* semantics.c (finish_id_expression): Use
	current_nonlambda_class_type for qualified-ids.

From-SVN: r178339
2011-08-30 17:27:27 -04:00
Jason Merrill
971df06b2f re PR c++/50114 (ICE with declaration inside for statement)
PR c++/50114
	* decl.c (poplevel): Disable for scope compatibility hack
	in C++11 mode.

From-SVN: r178338
2011-08-30 17:27:18 -04:00
Uros Bizjak
c683a53ae1 i386.c (ix86_valid_target_attribute_inner_p): Handle FMA option.
* config/i386/i386.c (ix86_valid_target_attribute_inner_p):
	Handle FMA option.

testsuite/ChangeLog:

	* gcc.target/i386/fma-compile.c: Escape [ and ] in scan strings.

From-SVN: r178337
2011-08-30 19:52:29 +02:00
Eric Botcazou
7d266442af system-irix-n64.ads, [...]: Remove GCC_ZCX_Support.
* system-irix-n64.ads, system-linux-armeb.ads, system-linux-armel.ads,
	system-linux-mips.ads, system-linux-mipsel.ads,
	system-linux-mips64el.ads, system-linux-ppc64.ads,
	system-linux-sparcv9.ads, system-rtems.ads: Remove GCC_ZCX_Support.

From-SVN: r178336
2011-08-30 16:49:06 +00:00
Eric Botcazou
4f1a975cc1 ada-tree.h (TYPE_EXTRA_SUBTYPE_P): Add internal check.
* gcc-interface/ada-tree.h (TYPE_EXTRA_SUBTYPE_P): Add internal check.
	* gcc-interface/utils2.c (build_binary_op): Tighten condition.
	(build_unary_op): Likewise.

From-SVN: r178335
2011-08-30 16:46:12 +00:00
Eric Botcazou
f2991b4820 raise-gcc.c: Do not include coretypes.h and tm.h.
* raise-gcc.c: Do not include coretypes.h and tm.h.
	(setup_to_install): Remove test for compiler macro.
	* targext.c: Document use for the library.
	* gcc-interface/Makefile.in: Fix comment on the use of IN_GCC.

From-SVN: r178333
2011-08-30 16:35:54 +00:00
Eric Botcazou
10a22f4330 decl.c (gnat_to_gnu_entity): Do not convert the expression to the nominal type if...
* gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Do not convert
	the expression to the nominal type if the latter is a record type with
	a variant part and the type of the former is a record type without one.

Co-Authored-By: Laurent Rougé <laurent.rouge@menta.fr>

From-SVN: r178331
2011-08-30 16:15:49 +00:00
Paolo Carlini
b671737962 stl_iterator.h (make_move_iterator): Implement DR2061.
2011-08-30  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/stl_iterator.h (make_move_iterator): Implement DR2061.
	* testsuite/24_iterators/move_iterator/dr2061.cc: New.
	* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
	line numbers.

From-SVN: r178330
2011-08-30 15:34:50 +00:00
Steven G. Kargl
505920d6b1 re PR fortran/45170 ([F2003] allocatable character lengths)
2011-08-30  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/45170
	* trans-stmt.c (gfc_trans_allocate): Evaluate the substring.

2011-08-30  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/45170
	* gfortran.dg/allocate_with_source_2.f90: New test

From-SVN: r178329
2011-08-30 15:34:01 +00:00
Jason Merrill
a728a2ada0 re PR c++/50220 ([C++0x] [4.7 Regression] ICE when capturing a by-reference template function argument in a lambda)
PR c++/50220
	* semantics.c (add_capture): Call complete_type for copy.

From-SVN: r178326
2011-08-30 11:28:40 -04:00
Jason Merrill
d05da2b9d5 re PR c++/50234 (internal compiler error: in cxx_eval_component_reference, at cp/semantics.c:6527)
PR c++/50234
	* semantics.c (cxx_eval_component_reference): Handle
	value-initialization for omitted initializers.

From-SVN: r178325
2011-08-30 11:28:30 -04:00
Andrew Stubbs
5de3524042 arm.c (optimal_immediate_sequence_1): Make b1, b2, b3 and b4 unsigned.
2011-08-30  Andrew Stubbs  <ams@codesourcery.com>

	gcc/
	* config/arm/arm.c (optimal_immediate_sequence_1): Make b1, b2,
	b3 and b4 unsigned.

From-SVN: r178324
2011-08-30 15:02:26 +00:00
Arnaud Charlet
71c4391e49 Switch to GPLv3
From-SVN: r178323
2011-08-30 17:01:43 +02:00
Arnaud Charlet
3467e8c710 Update dependencies
From-SVN: r178322
2011-08-30 16:58:35 +02:00
Arnaud Charlet
c37cbdc310 [multiple changes]
2011-08-30  Jose Ruiz  <ruiz@adacore.com>

	* s-taskin.ads (Common_ATCB): Add field domain which contains the
	dispatching domain to which the task belongs.
	* s-taskin.adb (Initialize): Create the default system dispatching
	domain and make the environment task part of it.
	* s-mudido.ads: Add this new spec for standard Ada 2012 package
	Ada.Multiprocessors.Dispatching_Domains.
	* s-mudido.adb: Add this new body for targets not supporting
	dispatching domains.
	* s-mudido-affinity.adb: Add this new body for targets supporting
	dispatching domains setting the affinity to a CPU set.
	* bindgen.adb (Dispatching_Domain_Used, Check_Dispatching_Domains_Used,
	Gen_Adainit): When package System.Multiprocessors.Dispatching_Domains
	is used we call the procedure to signal that when we are about to call
	the main subprogram no new dispatching domain can be created.
	(Check_File_In_Partition): Factor out the common functionality used by
	Check_System_Restrictions_Used and Check_Dispatching_Domains_Used.
	* s-tassta.adb (Create_Task): Tasks inherit the dispatching domain of
	their activators.
	* s-taprop.ads (Set_Task_Affinity): Add this new procedure to set task
	affinities.
	* s-taprop-dummy.adb, s-taprop-hpux-dce.adb, s-taprop-irix.adb,
	s-taprop-posix.adb, s-taprop-tru64.adb, s-taprop-vms.adb
	(Set_Task_Affinity): Dummy null body for these targets not supporting
	task affinities.
	s-taprop-linux.adb, s-taprop-mingw.adb, s-taprop-solaris.adb,
	s-taprop-vxworks.adb (Create_Task, Enter_Task, Initialize): Handle
	dispatching domains and set the affinity of the environment task.
	(Set_Task_Affinity): Procedure that uses the underlying CPU set
	functionality to handle dispatching domains, pragma CPU and Task_Info.
	s-winext.ads (SetThreadAffinityMask): Import this function needed to
	set CPU masks.
	* s-osinte-solaris.ads (psetit_t, pset_create, pset_assign, pset_bind):
	Import the functionality to handle CPU set affinities.
	* affinity.c: New file.
	* s-osinte-vxworks.ads, s-vxwext.ads, s-vxwext-kernel.ads,
	s-vxwext-rtp.ads (taskMaskAffinitySet): Add this new spec for setting
	affinity masks.
	* s-vxwext.adb, s-vxwext-kernel.adb, s-vxwext-rtp.adb 
	(taskMaskAffinitySet): Body returning an error indicating that task
	affinities are not supported.
	Makefile.rtl: Indicate that s-mudido is part of libgnarl.
	* gcc-interface/Makefile.in (LIBGNAT_TARGET_PAIRS for VxWorks SMP,
	Solaris, Windows, and {x86,PowerPC, ia64,x86_64} Linux): Use the
	s-mudido-affinity.adb body which supports task affinities.

2011-08-30  Thomas quinot  <quinot@adacore.com>

	* sem_ch13.adb: Minor reformatting.

2011-08-30  Vincent Celier  <celier@adacore.com>

	* vms_conv.adb (Process_Argument): When the qualifier
	/UNCHECKED_SHARED_LIB_IMPORTS is for GNAT COMPILE, do not put the
	corresponding switch --unchecked-shared-lib-imports after -cargs, as it
	is for gnatmake, not for the compiler.

2011-08-30  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch4.adb (Analyze_Quantified_Expression): Analyze iterator
	specification and condition only in Semantics_Only mode. Otherwise the
	analysis is done after expression has been rewritten as loop.
	* sem_ch5.adb (Analyze_Iterator_Specification): Always generate a
	temporary for the iterator name (the domain of iteration) because it
	may need finalization actions and these must be generated outside of
	the loop.
	* sem_res.adb (Resolve_Quantified_Expression): Resolve only in
	Semantic_Only mode.
	* exp_ch4.adb (Expand_Quantified_Expression): Analyze and resolve once
	rewritten as loop.
	* exp_ch5.adb (Expand_Iterator_Loop): Code clean-up, now that the
	iterator is always an expression.

2011-08-30  Robert Dewar  <dewar@adacore.com>

	* par-ch4.adb (P_Unparen_Cond_Case_Quant_Expression): New function
	(P_Expression_If_OK): New spec checks parens
	(P_Expression_Or_Range_Attribute_If_OK): New spec checks parens
	* par.adb (P_Expression_If_OK): New spec checks parens
	(P_Expression_Or_Range_Attribute_If_OK): New spec checks parens

From-SVN: r178321
2011-08-30 16:56:45 +02:00
Andrew Stubbs
f8dd28d62d arm.c (arm_gen_constant): Set can_negate correctly when code is SET.
2011-08-30  Andrew Stubbs  <ams@codesourcery.com>

	gcc/
	* config/arm/arm.c (arm_gen_constant): Set can_negate correctly
	when code is SET.

From-SVN: r178319
2011-08-30 14:28:17 +00:00
Yannick Moy
bd34109a28 * gcc-interface/Make-lang.in: Update dependencies.
From-SVN: r178318
2011-08-30 16:23:30 +02:00
Arnaud Charlet
bfa2e39d89 [multiple changes]
2011-08-30  Yannick Moy  <moy@adacore.com>

	* exp_aggr.adb, exp_ch11.adb, exp_prag.adb: Remove early exit during
	expansion in Alfa mode.
	* exp_ch6.adb, exp_ch6.ads (Expand_Actuals): Make subprogram public
	* exp_alfa.adb, exp_alfa.ads: New package defining light expansion for
	Alfa mode.
	* gnat1drv.adb (Adjust_Global_Switches): Update Comment.
	* sem_res.adb: Ditto.

2011-08-30  Thomas Quinot  <quinot@adacore.com>

	* g-socket.ads: Minor documentation adjustment.

From-SVN: r178317
2011-08-30 16:20:11 +02:00
Arnaud Charlet
a0347839da exp_ch9.adb, [...]: Minor reformatting.
2011-08-30  Robert Dewar  <dewar@adacore.com>

	* exp_ch9.adb, s-tassta.adb, s-secsta.adb: Minor reformatting.

2011-08-30  Yannick Moy  <moy@adacore.com>

	* exp_ch6_light.adb, exp_ch6_light.ads, exp_attr_light.adb,
	exp_attr_light.ads, exp_ch7_light.adb, exp_ch7_light.ads,
	exp_light.adb, exp_light.ads, exp_prag.adb, expander.adb,
	gnat1drv.adb, exp_ch11.adb, exp_ch6.adb, exp_ch6.ads, exp_aggr.adb:
	Revert change which introduced files for "light"
	expansion, to be replaced by a single file for Alfa expansion.

From-SVN: r178316
2011-08-30 16:16:43 +02:00
Tristan Gingold
5b8ca141c2 Renames Ratio to Percentage, and Sec_Stack_Ratio to Sec_Stack_Percentage
From-SVN: r178315
2011-08-30 16:13:06 +02:00
Robert Dewar
3597c0e902 opt.ads, [...]: Update comment.
2011-08-30  Robert Dewar  <dewar@adacore.com>

	* opt.ads, s-soflin.adb, exp_ch9.adb, sem_res.adb: Update comment.
	Minor code reorg/reformatting.

From-SVN: r178314
2011-08-30 16:12:00 +02:00
Arnaud Charlet
da94696d33 [multiple changes]
2011-08-30  Yannick Moy  <moy@adacore.com>

	* opt.adb, opt.ads (Full_Expander_Active): New function defines a
	common shorthand for (Expander_Active and not ALFA_Mode) that can be
	used for testing full expansion, that is active expansion not in the
	reduced mode for Alfa
	* exp_ch4.adb, exp_ch9.adb, exp_disp.adb, sem_ch10.adb, sem_ch12.adb,
	sem_ch6.adb, sem_ch9.adb, sem_res.adb: Use newly defined "flag" instead
	of the verbose (Expander_Active and not ALFA_Mode)

2011-08-30  Tristan Gingold  <gingold@adacore.com>

	* s-parame-vms-alpha.ads, s-parame-hpux.ads, s-tassta.adb,
	s-tarest.adb, s-parame-vms-ia64.ads, s-soflin.adb, s-secsta.adb,
	s-secsta.ads, s-parame.ads, s-parame-vxworks.ads: Renames Ratio to
	Percentage, and Sec_Stack_Ratio to Sec_Stack_Percentage.

From-SVN: r178313
2011-08-30 16:06:25 +02:00
Richard Guenther
315f5f1bfb re PR tree-optimization/48571 (Missed data-dependence for (bogus?) reconstructed array-refs)
2011-08-30  Richard Guenther  <rguenther@suse.de>

	PR middle-end/48571
	* gimple.h (maybe_fold_offset_to_address): Remove.
	(maybe_fold_offset_to_reference): Likewise.
	(maybe_fold_stmt_addition): Likewise.
	(may_propagate_address_into_dereference): Likewise.
	* tree-inline.c (remap_gimple_op_r): Do not reconstruct
	array references.
	* gimple-fold.c (canonicalize_constructor_val): Likewise.
	Canonicalize invariant POINTER_PLUS_EXPRs to invariant MEM_REF
	addresses instead.
	(may_propagate_address_into_dereference): Remove.
	(maybe_fold_offset_to_array_ref): Likewise.
	(maybe_fold_offset_to_reference): Likewise.
	(maybe_fold_offset_to_address): Likewise.
	(maybe_fold_stmt_addition): Likewise.
	(fold_gimple_assign): Do not reconstruct array references but
	instead canonicalize invariant POINTER_PLUS_EXPRs to invariant
	MEM_REF addresses.
	(gimple_fold_stmt_to_constant_1): Likewise.
	* tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Likewise.
	* gimplify.c (gimplify_conversion): Likewise.
	(gimplify_expr): Likewise.

	* gcc.c-torture/execute/pr48571-1.c: New testcase.
	* gcc.dg/tree-ssa/ssa-ccp-25.c: Remove.
	* gcc.dg/tree-ssa/ssa-ccp-26.c: Likewise.
	* gcc.dg/pr36902.c: XFAIL.

From-SVN: r178312
2011-08-30 14:06:00 +00:00