Commit Graph

103843 Commits

Author SHA1 Message Date
Arnaud Charlet
fab2daeb32 [multiple changes]
2010-10-18  Bob Duff  <duff@adacore.com>

	* sinfo.ads, sinfo.adb: Modify comment about adding fields to be more
	correct, and to be in a more convenient order.
	(Default_Storage_Pool): New field of N_Compilation_Unit_Aux, for
	recording the Default_Storage_Pool for a parent library unit.
	* einfo.ads (Etype): Document the case in which Etype can be Empty.
	* sem_prag.adb (Pragma_Default_Storage_Pool): Analyze the new
	Default_Storage_Pool pragma.
	* sem.ads (Save_Default_Storage_Pool): Save area for push/pop scopes.
	* gnat_ugn.texi: Document Default_Storage_Pool as a new configuration
	pragma.
	* freeze.adb (Freeze_Entity): When freezing an access type, take into
	account any Default_Storage_Pool pragma that applies. We have to do
	this at the freezing point, because up until that point, a Storage_Pool
	or Storage_Size clause could occur, which should override the
	Default_Storage_Pool.
	* par-prag.adb: Add this pragma to the list of pragmas handled entirely
	during semantics.
	* sem_ch8.adb (Push_Scope, Pop_Scope): Save and restore the
	Default_Storage_Pool information.
	* opt.ads (Default_Pool, Default_Pool_Config): New globals for recording
	currently-applicable Default_Storage_Pool pragmas.
	* opt.adb: Save/restore the globals as appropriate.
	* snames.ads-tmpl (Name_Default_Storage_Pool,
	Pragma_Default_Storage_Pool): New pragma name.

2010-10-18  Vincent Celier  <celier@adacore.com>

	* make.adb (Switches_Of): Put the spec and body suffix in canonical
	case.

From-SVN: r165637
2010-10-18 16:05:56 +02:00
Arnaud Charlet
6191e21252 [multiple changes]
2010-10-18  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch13.adb (Analyze_Aspect_Specifications): If subprogram is at the
	library level, the pre/postconditions must be treated as global
	declarations, i.e. placed on the Aux_Decl nodes of the compilation unit.
	* freeze.adb (Freeze_Expression): If the expression is at library level
	there is no enclosing record to check.

2010-10-18  Javier Miranda  <miranda@adacore.com>

	* sem_ch3.ads (Find_Type_Name): Add documentation.
	* sem_ch3.adb (Analyze_Full_Type_Declaration): Code cleanup because the
	propagation of the class-wide entity is now done by routine
	Find_Type_Name to factorize this code.
	(Analyze_Private_Extension_Declaration): Handle private type that
	completes an incomplete type.
	(Tag_Mismatch): Add error message for tag mismatch in a private type
	declaration that completes an incomplete type.
	(Find_Type_Name): Handle completion of incomplete type by means of
	a private declaration. Generate an error if a tagged incomplete type
	is completed by an untagged private type.
	* sem_ch7.adb (New_Private_Type): Handle private type that completes an
	incomplete type.
	* einfo.ads (Full_View): Add documentation.

2010-10-18  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch12.adb (Analyze_Formal_Package_Declaration): If the package is
	a renaming, generate a reference for it before analyzing the renamed
	entity, to prevent spurious warnings.

From-SVN: r165636
2010-10-18 15:58:25 +02:00
Jose Ruiz
0ae44446c2 adaint.c (__gnat_pthread_setaffinity_np, [...]): Remove wrappers, no longer needed.
2010-10-18  Jose Ruiz  <ruiz@adacore.com>

	* adaint.c (__gnat_pthread_setaffinity_np,
	__gnat_pthread_attr_setaffinity_np): Remove wrappers, no longer needed.
	* s-osinte-linux.ads (pthread_setaffinity_np,
	pthread_attr_setaffinity_np): Remove use of wrappers.
	* s-taprop-linux.adb (Create_Task, Initialize): Restore check to verify
	whether the affinity functionality is available in the OS.
	* gcc-interface/utils.c: Set TREE_STATIC on functions only when there
	are defined.

From-SVN: r165635
2010-10-18 15:54:23 +02:00
Arnaud Charlet
3fd9f17cdc [multiple changes]
2010-10-18  Robert Dewar  <dewar@adacore.com>

	* einfo.ads, einfo.adb: Minor reformatting.
	* gnat_ugn.texi, ug_words: Add missing entries, fix typos.

2010-10-18  Emmanuel Briot  <briot@adacore.com>

	* g-comlin.adb (Is_In_Config): When the switch accepts either a space
	or equal, we output an equal every time.

2010-10-18  Ed Schonberg  <schonberg@adacore.com>

	* sem_res.adb (Resolve_Entry_Call): Handle call to an entry family
	member when pre/post conditions are present.
	* exp_ch9.adb (Build_PPC_Wrapper): The PPC_Wrapper for an entry family
	includes an index parameter, and the name of the enclosed entry call is
	an indexed component.

From-SVN: r165634
2010-10-18 15:45:54 +02:00
Kai Tietz
5e690fe3b1 bessel_7.f90: Set xfail for mingw targets.
2010-10-18  Kai Tietz  <kai.tietz@onevision.com>

        * gfortran.dg/bessel_7.f90: Set xfail for mingw targets.

From-SVN: r165633
2010-10-18 14:40:23 +02:00
Robert Dewar
cdcb8ccbb8 einfo.ads, einfo.adb: Minor reformatting.
2010-10-18  Robert Dewar  <dewar@adacore.com>

	* einfo.ads, einfo.adb: Minor reformatting.

From-SVN: r165631
2010-10-18 14:24:32 +02:00
Tejas Belagod
3f2c0bafb6 neon.md (neon_move_hi_quad_<mode>): Fix the order of operands to vec_concat.
2010-10-18  Tejas Belagod  <tejas.belagod@arm.com>

	* config/arm/neon.md (neon_move_hi_quad_<mode>): Fix the order
	of operands to vec_concat.

From-SVN: r165630
2010-10-18 12:19:46 +01:00
Richard Guenther
e20efbfb73 re PR lto/44950 (ICE in dwarf2out_finish, at dwarf2out.c:22271)
2010-10-18  Richard Guenther  <rguenther@suse.de>

	PR lto/44950
	* tree.c (free_lang_data_in_decl): As we clear TYPE_METHODS
	also clear references to entries of it.

	* g++.dg/lto/20101015-2_0.C: New testcase.

From-SVN: r165629
2010-10-18 10:54:18 +00:00
Jose Ruiz
ee1feb1499 adaint.c (__gnat_pthread_setaffinity_np, [...]): Add these wrappers which check the availability of the underlying OS...
2010-10-18  Jose Ruiz  <ruiz@adacore.com>

	* adaint.c (__gnat_pthread_setaffinity_np,
	__gnat_pthread_attr_setaffinity_np): Add these wrappers which check the
	availability of the underlying OS functionality before calling.
	* s-osinte-linux.ads (pthread_setaffinity_np,
	pthread_attr_setaffinity_np): Call a wrapper instead of the OS function
	to perform a check of its availability.
	* s-taprop-linux.adb (Create_Task): Remove the check to verify whether
	the affinity functionality is available in the OS. Now done in a wrapper
	* gcc-interface/Makefile.in: Remove vmshandler.asm, unused.
	* gcc-interface/Make-lang.in: Update dependencies.

From-SVN: r165628
2010-10-18 12:48:36 +02:00
Basile Starynkevitch
c68015cdba Updated changelog tense.
From-SVN: r165627
2010-10-18 10:37:05 +00:00
Robert Dewar
adcf6b3250 sinfo.ads, sinfo.adb: Change Has_Pragma_CPU to Flag14 (Flag10 is standard field).
2010-10-18  Robert Dewar  <dewar@adacore.com>

	* sinfo.ads, sinfo.adb: Change Has_Pragma_CPU to Flag14 (Flag10 is
	standard field).

2010-10-18  Robert Dewar  <dewar@adacore.com>

	* s-stausa.adb, s-taprop-linux.adb, s-taprop-mingw.adb, s-tassta.ads:
	Minor reformatting.

2010-10-18  Robert Dewar  <dewar@adacore.com>

	* exp_strm.adb (Build_Elementary_Input_Call): Check
	No_Default_Stream_Attributes.
	(Build_Elementary_Write_Call): Check No_Default_Stream_Attributes
	* s-rident.ads: Add restriction No_Default_Stream_Attributes
	Put restriction No_Allocators_After_Elaboration in alpha order

From-SVN: r165626
2010-10-18 12:34:56 +02:00
Arnaud Charlet
8918fe18ab [multiple changes]
2010-10-18  Jose Ruiz  <ruiz@adacore.com>

	* exp_ch9.adb (Expand_N_Task_Type_Declaration): Add field corresponding
	to the affinity when expanding the task declaration.
	(Make_Task_Create_Call): Add the affinity parameter to the call to
	create task.
	* sem_prag.adb (Analyze_Pragma): Add the analysis for pragma CPU,
	taking into account the case when it applies to a subprogram (only for
	main and with static expression) or to a task.
	* par_prag.adb:(Prag): Make pragma CPU a valid one.
	* snames.ads-tmpl (Name_uCPU, Name_CPU): Add these new name identifiers
	used by the expander for handling the affinity parameter when creating
	a task.
	(Pragma_Id): Add Pragma_CPU as a valid one.
	* rtsfind.ads (RTU_Id): Make System_Multiprocessors accesible.
	(RE_Id, RE_Unit_Table): Make the entities RE_CPU_Range and
	RE_Unspecified_CPU visible.
	* sinfo.ads, sinfo.adb (Has_Pragma_CPU, Set_Has_Pragma_CPU): Add these
	two subprograms to set/get the flag indicating whether there is a
	pragma CPU which applies to the entity.
	* lib.ads, lib.adb (Unit_Record, Default_Main_CPU, Main_CPU,
	Set_Main_CPU): Add the field Main_CPU to Unit_Record to store the value
	of the affinity associated to the main subprogram (if any).
	Default_Main_CPU is used when no affinity is set. Subprograms
	Set_Main_CPU and Main_CPU are added to set/get the affinity of the main
	subprogram.
	* ali.ads, ali.adb (ALIs_Record): Add field Main_CPU to contain the
	value of the affinity of the main subprogram.
	(Scan_ALI): Get the affinity of the main subprogram (encoded as C=XX in
	the M line).
	* lib-writ.ads, lib-writ.adb (M_Parameters): Encode the affinity of the
	main subprogram in the M (main) line using C=XX.
	* lib-load.adb (Create_Dummy_Package_Unit, Load_Main_Source,
	Load_Unit): Add new field Main_CPU.
	* bindgen.adb (Gen_Adainit_Ada, Gen_Adainit_C): Add the code to pass
	the affinity of the main subprogram to the run time.
	* s-taskin.ads (Common_ATCB): Add the field Base_CPU to store the
	affinity.
	(Unspecified_CPU): Add this constant to identify the case when no
	affinity is set for tasks.
	* s-taskin.adb (Initialize_ATCB): Store the value coming from pragma
	CPU in the common part of the ATCB.
	(Initialize): Store the value coming from pragma CPU (for the
	environment task) in the common part of the ATCB.
	* s-tassta.ads, s-tassta.adb (Create_Task): Add the affinity specified
	by pragma CPU to the ATCB.
	* s-tarest.ads, s-tarest.adb (Create_Restricted_Task): Add the affinity
	specified by pragma CPU to the ATCB.
	* s-tporft.adb (Register_Foreign_Thread): Add the new affinity
	parameter to the call to Initialize_ATCB.
	* s-taprop-linux.adb (Create_Task): Change the attributes of the thread
	to include the task affinity before creation. Additionally, the
	affinity selected with Task_Info is also enforced changing the
	attributes at task creation time, instead of changing it after creation.
	(Initialize): Change the affinity of the environment task if required
	by a pragma CPU.
	* s-osinte-linux.ads (pthread_setaffinity_np): Instead of using a
	wrapper to check whether the function is available or not, use a weak
	symbol.
	(pthread_attr_setaffinity_np): Add the import of this function which is
	used to change the affinity in the attributes used to create a thread.
	* adaint.c (__gnat_pthread_attr_setaffinity_np): Remove this wrapper.
	It was used to check whether the pthread function was available or not,
	but the use of a weak symbol handles this situation in a cleaner way.
	* s-taprop-mingw.adb (Create_Task, Initialize): Change the affinity of
	tasks (including the environment task) if required by a pragma CPU.
	* s-taprop-solaris.adb (Enter_Task): Change the affinity of tasks
	(including the environment task) if required by a pragma CPU.
	* s-taprop-vxworks.adb (Create_Task, Initialize): Change the affinity
	of tasks (including the environment task) if required by a pragma CPU.
	* init.c (__gl_main_cpu): Make this value visible to the run time. It
	will pass the affinity of the environment task.

2010-10-18  Javier Miranda  <miranda@adacore.com>

	* einfo.adb (Direct_Primitive_Operations): Complete assertion.

From-SVN: r165625
2010-10-18 12:27:48 +02:00
Arnaud Charlet
e57ab5507b [multiple changes]
2010-10-18  Vincent Celier  <celier@adacore.com>

	* prj.ads (Source_Data): New Boolean flag In_The_Queue.

2010-10-18  Tristan Gingold  <gingold@adacore.com>

	* s-stausa.ads: Add the Top parameter to Initialize_Analyzer.
	* s-stausa.adb: Use the top parameter.  In Fill_Stack, use the
	stack top if known.
	* s-tassta.adb (Task_Wrapper): Call Initialize_Analyzer after Enter_Task
	so that Pri_Stack_Info.Limit can be set and used.

2010-10-18  Robert Dewar  <dewar@adacore.com>

	* einfo.ads: Minor reformatting.
	* sem_res.adb (Resolve_Allocator): Add test for violating
	No_Anonymous_Allocators.

From-SVN: r165624
2010-10-18 12:18:07 +02:00
Arnaud Charlet
468ee96a95 [multiple changes]
2010-10-18  Robert Dewar  <dewar@adacore.com>

	* prj-nmsc.adb, prj.adb, sem_res.adb: Minor reformatting.

2010-10-18  Ed Schonberg  <schonberg@adacore.com>

	* sem_util.adb (Insert_Explicit_Dereference): If operand is a selected
	component, we generate a reference to the ultimate prefix when it is an
	entity name. We must place the reference on the identifier for that
	prefix, and not on the operand itself, to prevent spurious extra
	references in the ali file.

2010-10-18  Vincent Celier  <celier@adacore.com>

	* projects.texi: Add documentation for attribute Ignore_Source_Sub_Dirs

From-SVN: r165623
2010-10-18 12:14:23 +02:00
Ed Schonberg
b7f17b2062 einfo.ads, einfo.adb: New attribute PPC_Wrapper for entries and entry families.
2010-10-18  Ed Schonberg  <schonberg@adacore.com>

	* einfo.ads, einfo.adb: New attribute PPC_Wrapper for entries and entry
	families. Denotes a procedure that performs pre/postcondition checks
	and then performs the entry call.
	* sem_res.adb (Resolve_Entry_Call): If the entry has
	pre/postconditions, replace call with a call to the PPC_Wrapper of the
	entry.
	* exp_ch9.adb (Build_PPC_Wrapper): new procedure.
	(Expand_N_Entry_Declaration, Expand_N_Protected_Type_Declaration): call
	Build_PPC_Wrapper for all entries in task and protected definitions.

From-SVN: r165622
2010-10-18 12:10:51 +02:00
Arnaud Charlet
12009a12f4 [multiple changes]
2010-10-18  Tristan Gingold  <gingold@adacore.com>

	* init.c: Add __gnat_set_stack_guard_page and __gnat_set_stack_limit.
	Implement stack limitation on VMS.
	Minor reformatting.

2010-10-18  Vincent Celier  <celier@adacore.com>

	* prj.adb (Is_Compilable): Do not modify Source.Compilable until the
	source record has been initialized.

2010-10-18  Robert Dewar  <dewar@adacore.com>

	* einfo.adb: Minor code reorganization (Primitive_Operations is a
	synthesized attribute routine and was in the wrong place).

From-SVN: r165620
2010-10-18 12:06:53 +02:00
Arnaud Charlet
e7efbe2f09 [multiple changes]
2010-10-18  Tristan Gingold  <gingold@adacore.com>

	* init.c: Indentation, and minor changes to more closely follow GNU
	style rules.  Make more variable statics.

2010-10-18  Vincent Celier  <celier@adacore.com>

	* prj.adb (Is_Compilable): On first call for a source, cache value in
	component Compilable.
	* prj.ads (Source_Data): New component Compilable, to cache the value
	returned by function Is_Compilable.

2010-10-18  Vincent Celier  <celier@adacore.com>

	* prj-attr.adb: New project level attribute Ignore_Source_Sub_Dirs.
	* prj-nmsc.adb (Expand_Subdirectory_Pattern): New string list parameter
	Ignore.
	(Recursive_Find_Dirs): Do not consider subdirectories listed in Ignore.
	(Get_Directories): Call Find_Source_Dirs with the string list
	indicated by attribute Ignore_Source_Sub_Dirs.
	* snames.ads-tmpl: New standard name Ignore_Source_Sub_Dirs.

From-SVN: r165619
2010-10-18 12:03:30 +02:00
Javier Miranda
ef2a63ba18 einfo.ads, einfo.adb (Primitive_Operations): New synthesized attribute.
2010-10-18  Javier Miranda  <miranda@adacore.com>

	* einfo.ads, einfo.adb (Primitive_Operations): New synthesized
	attribute.
	(Direct_Primitive_Operations): Renaming of old Primitive_Operations.
	(Set_Direct_Primitive_Operations): Renaming of old
	Set_Primitive_Operations. Update documentation
	* sem_ch3.adb, exp_util.adb, sem_ch7.adb, sem_ch8.adb, exp_ch3.adb:
	Replace occurrences of Set_Primitive_Operations by
	Set_Direct_Primitive_Operations.
	* sem_cat.adb (Validate_RACW_Primitives): No action needed for tagged
	concurrent types.
	* exp_dist.adb (Add_RACW_Primitive_Declarations_And_Bodies): Do not
	process primitives of concurrent types.
	* lib-xref.adb (Generate_Prim_Op_References): Minor code cleanup.

From-SVN: r165618
2010-10-18 11:59:45 +02:00
Eric Botcazou
6b958cecaa exp_ch6.adb (Expand_N_Subprogram_Declaration): Use Freeze_Before.
2010-10-18  Eric Botcazou  <ebotcazou@adacore.com>

	* exp_ch6.adb (Expand_N_Subprogram_Declaration): Use Freeze_Before.
	(Expand_Protected_Object_Reference): Likewise.
	* sem_attr.adb (Resolve_Attribute): Likewise.
	* sem_ch3.adb (Analyze_Subtype_Declaration): Likewise.
	* sem_ch6.adb (Analyze_Subprogram_Body_Helper): Likewise.

From-SVN: r165616
2010-10-18 11:55:41 +02:00
Arnaud Charlet
0877856b4e [multiple changes]
2010-10-18  Arnaud Charlet  <charlet@adacore.com>

	* g-comlin.adb (Get_Switches): Prevent dereferencing null Config.

2010-10-18  Robert Dewar  <dewar@adacore.com>

	* aspects.ads, aspects.adb: Add entries for aspects
	Read/Write/Input/Output.
	* sem_ch13.adb (Analyze_Aspect_Specifications): Add processing for
	handling aspects Read/Write/Input/Output.

2010-10-18  Robert Dewar  <dewar@adacore.com>

	* sem_util.adb (Note_Possible_Modification): Do not give warning for
	use of pragma Unmodified unless we are sure this is a modification.

2010-10-18  Tristan Gingold  <gingold@adacore.com>

	* sysdep.c: Add __gnat_get_stack_bounds.
	* s-taprop-mingw.adb Call __gnat_get_stack_bounds to set Pri_Stack_Info.

2010-10-18  Robert Dewar  <dewar@adacore.com>

	* a-assert.ads: Fix bad name in header.
	* sem_ch4.adb, sem_ch6.adb, sem_ch7.adb, sem_ch10.adb: Minor
	reformatting.
	* exp_aggr.adb: Fix typo in comment.

From-SVN: r165615
2010-10-18 11:53:00 +02:00
Arnaud Charlet
a780db1530 [multiple changes]
2010-10-18  Javier Miranda  <miranda@adacore.com>

	* exp_util.adb (Side_Effect_Free): Code clean up.

2010-10-18  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch8.adb (Is_Primitive_Operator_In_Use): Renamed from
	Is_Primitive_Operator. When ending the scope of a use package scope, a
	primitive operator remains in use if the base type has a current use
	(type) clause.

2010-10-18  Javier Miranda  <miranda@adacore.com>

	* einfo.ads (Is_Dynamic_Support): Add missing support for limited
	private types whose full-view is a task type.
	* sem_util.adb (Enclosing_Subprogram): Add missing support for limited
	private types whose full-view is a task type.
	* exp_ch7.adb (Find_Final_List): Minor code cleanup replacing code by
	function Nearest_Dynamic_Scope which provides the needed functionality.

2010-10-18  Arnaud Charlet  <charlet@adacore.com>

	* sem_prag.adb (Set_Exported): Do not generate error when exporting a
	variable with an address clause in codepeer mode.

From-SVN: r165614
2010-10-18 11:46:31 +02:00
Andi Kleen
fda9c731a9 Remove gccbug
gcc/

2010-10-18  Andi Kleen  <ak@linux.intel.com>

	PR other/43448
	* gccbug.in: Remove.
	* Makefile.in (GCCBUG_INSTALL_NAME, gccbug): Remove
	(doc, distclean, install-common): Remove reference to gccbug.
	* configure: Regenerate.
	* configure.ac (all_outputs): Remove gccbug.
	* doc/configfiles.texi: Remove references to gccbug.
	* doc/sourcebuild.texi: Dito.

contrib/

2010-10-18  Andi Kleen  <ak@linux.intel.com>

	* gccbug.el: Remove.

From-SVN: r165613
2010-10-18 09:39:15 +00:00
Arnaud Charlet
1fb0006411 [multiple changes]
2010-10-18  Robert Dewar  <dewar@adacore.com>

	* g-trasym-vms-ia64.adb: Minor reformatting.

2010-10-18  Thomas Quinot  <quinot@adacore.com>

	* sem_type.adb (Covers): If either argument is Standard_Void_Type and
	the other isn't, return False early.

2010-10-18  Ed Falis  <falis@adacore.com>

	* s-vxwext-rtp.ads, s-vxext-rtp.adb: Adapt for missing APIs for RTPs in
	VxWorks Cert.

2010-10-18  Robert Dewar  <dewar@adacore.com>

	* sem_disp.ads: Minor comment update.

2010-10-18  Robert Dewar  <dewar@adacore.com>

	* einfo.ads, einfo.adb (Spec_PPC_List): Is now present in Entries
	* sem_ch3.adb (Analyze_Declarations): Add processing for delaying
	visibility analysis of precondition and postcondition pragmas (and
	Pre/Post aspects).
	* sem_ch6.adb (Process_PPCs): Add handling of inherited Pre'Class
	aspects.
	* sem_ch7.adb (Analyze_Package_Specification): Remove special handling
	of pre/post conditions (no longer needed).
	* sem_disp.adb (Inherit_Subprograms): Deal with interface case.
	* sem_prag.adb (Analyze_PPC_In_Decl_Part): Remove analysis of message
	argument, since this is now done in the main processing for
	pre/postcondition pragmas when they are first seen.
	(Chain_PPC): Pre'Class and Post'Class now handled properly
	(Chain_PPC): Handle Pre/Post aspects for entries
	(Check_Precondition_Postcondition): Handle entry declaration case
	(Check_Precondition_Postcondition): Handle delay of visibility analysis
	(Check_Precondition_Postcondition): Preanalyze message argument if
	present.

From-SVN: r165612
2010-10-18 11:37:14 +02:00
Robert Dewar
a4485ef639 g-trasym-vms-ia64.adb, [...]: Minor reformatting.
2010-10-18  Robert Dewar  <dewar@adacore.com>

	* g-trasym-vms-ia64.adb, prj-nmsc.adb, prj.ads: Minor reformatting.

From-SVN: r165611
2010-10-18 11:18:59 +02:00
Jakub Jelinek
8ddf04c2b0 re PR middle-end/46019 (x / (0x200000000ULL << y) miscompilation with 32-bit HWI)
PR middle-end/46019
	* fold-const.c (fold_binary_loc): If integer_pow2p has
	TREE_INT_CST_LOW zero, look at TREE_INT_CST_HIGH.

	* gcc.c-torture/execute/pr46019.c: New test.

From-SVN: r165610
2010-10-18 10:26:06 +02:00
Basile Starynkevitch
1d32bbcdcb gengtype.c (verbosity_level): Added variable.
2010-10-18  Basile Starynkevitch  <basile@starynkevitch.net>
	    Jeremie Salvucci  <jeremie.salvucci@free.fr>

	* gengtype.c (verbosity_level): Added variable.
	(set_gc_used): Count variables for verbosity.
	(close_output_files): Backing up files, counting written ones
	verbosily.
	(write_types): Count emitted functions for verbosity. Added
	debug messages.
	(write_enum_defn): Count structures for verbosity. Added debug
	messages.
	(gengtype_long_options): Added "verbose" & "backupdir".
	(print_usage): Ditto.
	(main): Verbose display of parsed files.

	* gengtype.h (verbosity_level): Added declaration.


Co-Authored-By: Jeremie Salvucci <jeremie.salvucci@free.fr>

From-SVN: r165609
2010-10-18 06:05:28 +00:00
Basile Starynkevitch
dad2226856 gengtype.c (parse_program_options): Added allocation of plugin_files, and corrected test on nb_plugin_files.
2010-10-18  Basile Starynkevitch  <basile@starynkevitch.net>

	* gengtype.c (parse_program_options): Added allocation of
	plugin_files, and corrected test on nb_plugin_files.

From-SVN: r165608
2010-10-18 05:41:48 +00:00
Laurynas Biveinis
187d351880 MAINTAINERS (Reviewers): Add myself for gengtype/GTY.
2010-10-18  Laurynas Biveinis  <laurynas.biveinis@gmail.com>

        * MAINTAINERS (Reviewers): Add myself for gengtype/GTY.
        (Write After Approval): Remove myself.

From-SVN: r165607
2010-10-18 03:08:21 +00:00
GCC Administrator
6cde9e69ab Daily bump.
From-SVN: r165606
2010-10-18 00:18:11 +00:00
Nicola Pero
131376b348 In gcc/cp/: 2010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/cp/:
2010-10-17  Nicola Pero  <nicola.pero@meta-innovation.com>

        Merge from apple/trunk branch on FSF servers.

        2006-04-19 Fariborz Jahanian <fjahanian@apple.com>

        Radar 4516785
        * parser.c (cp_parser_simple_type_specifier): Don't lookup for
        objc object types if type is scope qualified.

In gcc/testsuite/:
2010-10-17  Nicola Pero  <nicola.pero@meta-innovation.com>

        Merge from 'apple/trunk' branch on FSF servers.

        2006-04-19 Fariborz Jahanian <fjahanian@apple.com>

        Radar 4516785
        * obj-c++.dg/method-namespace-2.mm: New.

From-SVN: r165602
2010-10-17 22:34:39 +00:00
Nicola Pero
90fbfdc31a In gcc/: 2010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/:
2010-10-17  Nicola Pero  <nicola.pero@meta-innovation.com>

        Merge from 'apple/trunk' branch on FSF servers.

        2006-03-27 Fariborz Jahanian <fjahanian@apple.com>

        Radar 4133425
        * c-decl.c (undeclared_variable): Issue diagnostic on
        private 'ivar' access.

In gcc/c-family/:
2010-10-17  Nicola Pero  <nicola.pero@meta-innovation.com>

        Merge from 'apple/trunk' branch on FSF servers.

        2006-03-27 Fariborz Jahanian <fjahanian@apple.com>

        Radar 4133425
        * c-common.h (objc_diagnose_private_ivar): New decl.
        * stub-objc.c (objc_diagnose_private_ivar): New stub.

In gcc/cp/:
2010-10-17  Nicola Pero  <nicola.pero@meta-innovation.com>

        Merge from apple/trunk branch on FSF servers.

        2006-03-27 Fariborz Jahanian <fjahanian@apple.com>

        Radar 4133425
        * lex.c (unqualified_name_lookup_error): Issue diagnostic
        for private 'ivar' access.

In gcc/objc/:
2010-10-17  Nicola Pero  <nicola.pero@meta-innovation.com>

        Merge from 'apple/trunk' branch on FSF servers.

        2006-03-27 Fariborz Jahanian <fjahanian@apple.com>

        Radar 4133425
        * objc-act.c (objc_diagnose_private_ivar): New.

In gcc/testsuite/:
2010-10-17  Nicola Pero  <nicola.pero@meta-innovation.com>

        Merge from 'apple/trunk' branch on FSF servers.

        2006-03-27 Fariborz Jahanian <fjahanian@apple.com>

        Radar 4133425
        * objc.dg/private-1.m: Test modified.
        * obj-c++.dg/private-1.mm: Test modified.

From-SVN: r165601
2010-10-17 21:52:09 +00:00
Uros Bizjak
2e01b76611 re PR testsuite/45987 (gcc.target/i386/push-1.c XPASSes on Solaris 10+/x86)
PR testsuite/45987
	* gcc.target/i386/push-1.c: Remove.

From-SVN: r165600
2010-10-17 23:03:10 +02:00
Uros Bizjak
2a4337c005 re PR target/46051 (ICE: in extract_insn, at recog.c:2110 with -mavx -ftree-vectorize)
PR target/46051
	* config/i386/sse.md (vec_interleave_highv4df): Fix third RTX of
	generated sequence to match *avx_vperm2f128<mode>_nozero.
	(vec_interleave_lowv4df): Ditto.
	(vec_interleave_highv8sf): Ditto.
	(vec_interleave_lowv8sf): Ditto.

testsuite/ChangeLog:

	PR target/46051
	* gcc.target/i386/pr46051.c: New test.


Co-Authored-By: H.J. Lu <hongjiu.lu@intel.com>

From-SVN: r165599
2010-10-17 22:46:01 +02:00
Kai Tietz
78e7dd6a36 libgcov.c (create_file_directory): Enable it for win32 case.
2010-10-17  Kai Tietz  <kai.tietz@onevision.com>

        * libgcov.c (create_file_directory): Enable it for win32 case.
        (gcov_exit): De-couple GCOV_PREFIX and GCOV_PREFIX_STRIP.
        * doc/gcov.texi (GCOV_PREFIX): Adjusted.
        (GCOV_PREFIX_SKIP): Likewise.

From-SVN: r165596
2010-10-17 21:43:34 +02:00
Nicola Pero
5b8b526e69 In gcc/: 2010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/:
2010-10-17  Nicola Pero  <nicola.pero@meta-innovation.com>

        * doc/objc.texi (GNU Objective-C runtime API): New section.
        (Modern GNU Objective-C runtime API): New section.
        (Traditional GNU Objective-C runtime API): New section.
        (Executing code before main): Mention that this section is
        specific to the GNU Objective-C runtime.
        (Garbage Collection): Same.

In gcc/testsuite/:
2010-10-17  Nicola Pero  <nicola.pero@meta-innovation.com>

        * obj-c++.dg/gnu-api-2-class.mm: New.
        * obj-c++.dg/gnu-api-2-ivar.mm: New.
        * obj-c++.dg/gnu-api-2-method.mm: New.
        * obj-c++.dg/gnu-api-2-objc.mm: New.
        * obj-c++.dg/gnu-api-2-object.mm: New.
        * obj-c++.dg/gnu-api-2-property.mm: New.
        * obj-c++.dg/gnu-api-2-protocol.mm: New.
        * obj-c++.dg/gnu-api-2-sel.mm: New.


In libobjc/:
2010-10-17  Nicola Pero  <nicola.pero@meta-innovation.com>

        * objc/message.h: Moved initial includes outside of extern "C".
        * objc/runtime.h: Add extern "C" for Objective-C++.

From-SVN: r165595
2010-10-17 19:33:19 +00:00
Uros Bizjak
91b90ead33 c-parser.c (c_parser_for_statement): Move initialization of cond and incr before if.
* c-parser.c (c_parser_for_statement): Move initialization of
	cond and incr before if.

From-SVN: r165592
2010-10-17 20:29:32 +02:00
Paolo Carlini
efb7b45650 forward_list.h (forward_list<>::erase_after): Return an iterator.
2010-10-17  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/forward_list.h (forward_list<>::erase_after): Return
	an iterator.
	(_M_erase_after): Return _Fwd_list_node_base*.
	* include/bits/forward_list.tcc: Likewise.
	* include/debug/forward_list: Likewise.
	* testsuite/23_containers/forward_list/modifiers/3.cc: Update
	and extend.
	* testsuite/util/exception/safety.h (erase_base<forward_list<>>):
	Adjust.
	* testsuite/23_containers/forward_list/requirements/dr438/
	assign_neg.cc: Adjust dg-error line number.
	* testsuite/23_containers/forward_list/requirements/dr438/
	insert_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/requirements/dr438/
	constructor_1_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/requirements/dr438/
	constructor_2_neg.cc: Likewise.

From-SVN: r165590
2010-10-17 17:34:38 +00:00
Anatoly Sokolov
abd26bfbf3 target.def (preferred_output_reload_class): New hook.
* target.def (preferred_output_reload_class): New hook.
	* doc/tm.texi.in (TARGET_PREFERRED_OUTPUT_RELOAD_CLASS): Document.
	* doc/tm.texi: Regenerate.
	* targhooks.c (default_preferred_output_reload_class): New function.
	* targhooks.h (default_preferred_output_reload_class): Declare.
	* reload.c (find_dummy_reload): Change rclass argument type from 
	enum reg_class to reg_class_t. Change this_alternative array type
	from enum reg_class to reg_class_t.
	Use TARGET_PREFERRED_OUTPUT_RELOAD_CLASS target hook.
	(push_reload): Change preferred_class variable type to reg_class_t.
	Use TARGET_PREFERRED_OUTPUT_RELOAD_CLASS target hook.
	* recog.c (reg_fits_class_p): Change result type to bool. Change cl
	argument type from enum reg_class to reg_class_t. Use
	HARD_REGISTER_NUM_P predicate.
	* recog.h (reg_fits_class_p): Update prototype.

	* config/i386/i386.h (PREFERRED_OUTPUT_RELOAD_CLASS): Remove.
	* config/i386/i386-protos.h (ix86_preferred_output_reload_class): Remove.
	* config/i386/i386.c (ix86_preferred_output_reload_class): Make
	static. Change regclass argument and result types from enum reg_class
	to reg_class_t.
	(TARGET_PREFERRED_OUTPUT_RELOAD_CLASS): Define.

From-SVN: r165588
2010-10-17 19:27:53 +04:00
Paolo Carlini
88c87359fa re PR libstdc++/43554 (profile-mode version of forward_list missing)
2010-10-17  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/43554
	* include/profile/forward_list: New file.
	* include/std/forward_list: Include <profile/forward_list>.
	* include/Makefile.am: Add.
	* testsuite/23_containers/forward_list/capacity/1.cc: Adjust.
	* include/Makefile.in: Regenerate.

From-SVN: r165587
2010-10-17 14:49:11 +00:00
Iain Sandoe
c37d8c307c add parse support for @package to ObjC*
gcc/c-family:
	
	* c-common.c (c_common_reswords): Add package, RID_AT_PACKAGE.
	* c-common.h (enum rid): Add RID_AT_PACKAGE.
	(objc_ivar_visibility_kind): New enum.
	(objc_set_visibility): Adjust prototype to use visibility enum.
	* stub-objc.c (objc_set_visibility): Adjust stub to use 
	visibility enum.

gcc/objc:

	* objc-act.c: Rename 'objc_public_flag' to  objc_ivar_visibility and
	make its type 'objc_ivar_visibility_kind'.  
	(objc_start_class_interface): Update to use visibility enum.
	(objc_start_class_implementation): Likewise.
	(objc_set_visibility): Update to use visibility enum, warn that 
	@package is handle as per @public.
	(add_instance_variable): Handle OBJC_IVAR_VIS_PACKAGE.
	* objc-act.h: Rename 'objc_public_flag' to  objc_ivar_visibility and
	make its type 'objc_ivar_visibility_kind'.

gcc/cp:

	* parser.c (cp_parser_objc_visibility_spec): Update to use visibility 
	enum, and handle @package.

gcc:

	* c-parser.c (c_parser_objc_class_instance_variables): Update to use 
	visibility enum, and handle @package.

gcc/testsuite:

	* objc.dg/fsf-package-0.m: New.
	* obj-c++.dg/fsf-package-0.m: New.

From-SVN: r165585
2010-10-17 13:02:07 +00:00
Nicola Pero
1501d0941a In libobjc/: 2010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
In libobjc/:
2010-10-17  Nicola Pero  <nicola.pero@meta-innovation.com>

        * init.c (objc_send_load): Do not wait for NXConstantString to be
        registered before executing +load.  There is no point if
        -fconstant-string-class=xxx is used when compiling all modules,
        as is the case for almost all users.
        * linking.m (__objc_linking): Do not try to forcefully link in
        NXConstantString.

In gcc/:
2010-10-17  Nicola Pero  <nicola.pero@meta-innovation.com>

        * doc/objc.texi (What you can and what you cannot do in +load):
        Document that sending messages to constant string objects in +load
        is not guaranteed to work.

From-SVN: r165583
2010-10-17 11:01:31 +00:00
Nicola Pero
368be4c735 In gcc/testsuite/: 2010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/testsuite/:
2010-10-17  Nicola Pero  <nicola.pero@meta-innovation.com>

        PR objc/18255
        * objc.dg/pr18255.m: New.

From-SVN: r165579
2010-10-17 10:11:23 +00:00
GCC Administrator
b78245235e Daily bump.
From-SVN: r165573
2010-10-17 00:17:24 +00:00
Jan Hubicka
bb85334960 re PR middle-end/44206 (ICE: Inline clone with address taken)
PR middle-end/44206
	* g++.dg/torture/pr44206.C: New.
	* ipa.c (cgraph_remove_unreachable_nodes): Cleanup; check
	existence of refrences before removing the function.

From-SVN: r165569
2010-10-16 23:47:08 +00:00
Nicola Pero
ad62092738 In testsuite/: 2010-10-16 Nicola Pero <nicola.pero@meta-innovation.com>
In testsuite/:
2010-10-16  Nicola Pero  <nicola.pero@meta-innovation.com>

        * objc.dg/gnu-api-2-class.m: New.
        * objc.dg/gnu-api-2-objc.m: New.

From-SVN: r165564
2010-10-16 21:27:22 +00:00
Nicola Pero
6c5c7efd6b In libobjc/: 2010-10-16 Nicola Pero <nicola.pero@meta-innovation.com>
In libobjc/:
2010-10-16  Nicola Pero  <nicola.pero@meta-innovation.com>

        * objc/runtime.h: Updated comments.
        (class_addMethod): New.
        (class_addIvar): New.
        (class_replaceMethod): New.
        (objc_allocateClassPair): New.
        (objc_registerClassPair): New.
        (objc_disposeClassPair): New.
        * class.c (objc_allocateClassPair): New.
        (objc_registerClassPair): New.
        (objc_disposeClassPair): New.
        (class_getSuperclass): Return Nil if a class is in construction.
        * init.c (__objc_exec_class): Call __objc_init_class.
        (__objc_init_class): New.
        * ivars.c (class_copyIvarList): Return NULL if class is in
        construction.  Do not lock the runtime mutex.
        (class_getInstanceVariable): Return NULL if class is in
        construction.  Do not lock the runtime mutex.
        (class_addIvar): New.
        * sendmsg.c (class_addMethod): New.
        (class_replaceMethod): New.
        * objc-private/module-abi-8.h (__CLS_SETNOTINFO): New.
        (_CLS_IN_CONSTRUCTION): New.
        (CLS_IS_IN_CONSTRUCTION): New.
        (CLS_SET_IN_CONSTRUCTION): New.
        (CLS_SET_NOT_IN_CONSTRUCTION): New.
        * objc-private/runtime.h (__objc_init_class): New.

From-SVN: r165563
2010-10-16 21:26:59 +00:00
Thomas Koenig
d4d9b0a641 trans-io.c (gfc_build_io_library_fndecls): Array descriptor arguments to transfer_array can be dereferenced recursively.
2010-10-16  Thomas Koenig  <tkoenig@gcc.gnu.org>

	* trans-io.c (gfc_build_io_library_fndecls):
	Array descriptor arguments to transfer_array can be
	dereferenced recursively.

From-SVN: r165561
2010-10-16 18:47:55 +00:00
Jan Hubicka
844db5d09e cgraph.c (dump_cgraph_node): Dump same_comdat_group, only_called_at_startup and only_called_at_exit.
* cgraph.c (dump_cgraph_node): Dump same_comdat_group,
	only_called_at_startup and only_called_at_exit.
	(cgraph_propagate_frequency): Compute only_called_at_startup and 
	only_called_at_exit.
	* cgraph.h (struct cgraph_node): New fileds only_called_at_startup and
	only_called_at_exit.
	* lto-cgraph.c (lto_output_node, input_overwrite_node): Stream the new
	flags.
	* predict.c (compute_function_frequency): Initialize the new flags.

From-SVN: r165560
2010-10-16 16:59:07 +00:00
Thomas Koenig
6eb6875d7e re PR tree-optimization/20165 (Pointer does not really escape with write)
2010-10-16  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/20165
	PR fortran/31593
	PR fortran/43665
	* gfortran.map:  Add _gfortran_transfer_array_write,
	_gfortran_transfer_array_write, _gfortran_transfer_character_write,
	_gfortran_transfer_character_wide_write,
	_gfortran_transfer_complex_write,
	_gfortran_transfer_integer_write,
	_gfortran_transfer_logical_write and
	_gfortran_transfer_real_write.
	* io/transfer.c (transfer_integer_write):  Add prototype and
	function body as call to the original function, without the
	_write.
	(transfer_real_write):  Likewise.
	(transfer_logical_write):  Likewise.
	(transfer_character_write):  Likewise.
	(transfer_character_wide_write):  Likewise.
	(transfer_complex_write):  Likewise.
	(transfer_array_write):  Likewise.

2010-10-16  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/20165
	PR fortran/31593
	PR fortran/43665
	* trans-io.c (enum iocall): Add IOCALL_X_INTEGER_WRITE,
	IOCALL_X_LOGICAL_WRITE, IOCALL_X_CHARACTER_WRITE,
	IOCALL_X_CHARACTER_WIDE_WRIE, IOCALL_X_REAL_WRITE,
	IOCALL_X_COMPLEX_WRITE and IOCALL_X_ARRAY_WRITE.
	(gfc_build_io_library_fndecls):  Add corresponding function
	decls.
	(transfer_expr):  If the current transfer is a READ, use
	the iocall with the original version, otherwise the version
	with _WRITE.
	(transfer_array_desc):  Likewise.

From-SVN: r165559
2010-10-16 16:06:07 +00:00
Eric Botcazou
08d78391b7 gimplify.c (gimplify_type_sizes): If the type is to be ignored for debug info purposes...
* gimplify.c (gimplify_type_sizes) <ARRAY_TYPE>: If the type is to be
	ignored for debug info purposes, do not clear the DECL_IGNORED_P flag
	on the bounds of its domain.
	* tree.h (DECL_IGNORED_P): Document effect on TYPE_DECL specifically.

From-SVN: r165544
2010-10-16 14:35:59 +00:00