Commit Graph

103873 Commits

Author SHA1 Message Date
Arnaud Charlet
c95e0edc45 Minor reformatting.
From-SVN: r165693
2010-10-19 12:30:52 +02:00
Arnaud Charlet
4adf3c50f1 [multiple changes]
2010-10-19  Javier Miranda  <miranda@adacore.com>

	* par-ch4.adb: Update documentation of Ada 2012 syntax rules for
	membership test.

2010-10-19  Bob Duff  <duff@adacore.com>

	* sem_attr.adb (Eval_Attribute): Implement Max_Alignment_For_Allocation
	attribute.
	* exp_attr.adb (Expand_N_Attribute_Reference): Add
	Attribute_Max_Alignment_For_Allocation to the case statement.
	* snames.ads-tmpl (Name_Max_Alignment_For_Allocation,
	Attribute_Max_Alignment_For_Allocation): New attribute name.

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

	* sem_ch3.adb (OK_For_Limited_Init_In_05): a call to an access to
	parameterless function appears syntactically as an explicit dereference.

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

	* sem_ch8.adb, sem_ch12.adb, opt.ads, sem_ch6.adb, sem_res.adb,
	i-cexten.ads, exp_disp.adb, exp_ch4.adb, exp_ch9.adb: Minor reformatting

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

	* sem_util.adb (Collect_Primitive_Operations): A function with an
	anonymous access result designating T is a primitive operation of T.

From-SVN: r165692
2010-10-19 12:30:18 +02:00
Nick Clifton
e2f289f3c7 rx.c (rx_function_value): Small integer types are promotes to SImode.
* config/rx/rx.c (rx_function_value): Small integer types are
        promotes to SImode.
        (rx_promote_function_mode): New function.
        (TARGET_PROMOTE_FUNCTION_MODE): Define.

From-SVN: r165690
2010-10-19 10:26:31 +00:00
Arnaud Charlet
4620272938 [multiple changes]
2010-10-19  Tristan Gingold  <gingold@adacore.com>

	* init.c: On Alpha/VMS, only adjust PC for HPARITH.

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

	* sem_attr.adb (Eval_Attribute): Handle Attribute_Ref, which can be
	evaluated on VMS.

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

	* sem_ch12.adb (Check_Generic_Child_Unit): Handle properly the case of
	an instantiation of a renaming of the implicit generic child that
	appears within an instance of its parent.

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

	* exp_ch9.adb: Minor reformatting.
	* einfo.adb, einfo.ads, atree.adb, atree.ads, exp_dist.adb, atree.h:
	(Referenced_Object): Remove unused entity attribute.
	(Direct_Primitive_Operations): Move to Elist10, this is set for all
	tagged types, including synchronous ones, so can't use field15 which is
	used as Storage_Size_Variable for task types and Entry_Bodies_Array for
	protected types.
	(Add_RACW_Primitive_Declarations_And_Bodies): Remove bogus guard
	against Concurrent_Types (we must handle the case of a RACW designating
	a class-wide private synchronous type).
	Use Direct_Primitive_Operations, not Primitive_Operations, since we
	really want the former.

2010-10-19  Bob Duff  <duff@adacore.com>

	* sem_ch8.adb (Pop_Scope): Change "return;" to "raise Program_Error;".

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

	* exp_ch4.adb (Expand_Set_Membership.Make_Cond): Add missing support
	for N_Range nodes.

From-SVN: r165689
2010-10-19 12:23:10 +02:00
Thomas Quinot
6c946a9fc3 einfo.ads, atree.ads: Minor comment fixes.
2010-10-19  Thomas Quinot  <quinot@adacore.com>

	* einfo.ads, atree.ads: Minor comment fixes.

From-SVN: r165688
2010-10-19 12:06:43 +02:00
Nick Clifton
9018b19c6e mep.c (mep_print_operand): Use targetm.strip_name_encoding.
* config/mep/mep.c (mep_print_operand): Use
        targetm.strip_name_encoding.
        (mep_output_aligned_common): Likewise.

From-SVN: r165682
2010-10-19 08:18:18 +00:00
Basile Starynkevitch
078419c9c3 line-map.h (source_location): Remove obsolete comment mentioning location_s.
2010-10-19  Basile Starynkevitch  <basile@starynkevitch.net>
	* line-map.h (source_location): Remove obsolete comment
	mentioning location_s.

From-SVN: r165680
2010-10-19 06:57:24 +00:00
Basile Starynkevitch
c512a6a0e6 gengtype.c (new_structure): Remove ad-hoc "location_s" processing.
2010-10-19  Basile Starynkevitch  <basile@starynkevitch.net>
	* gengtype.c (new_structure): Remove ad-hoc "location_s"
	processing.

From-SVN: r165679
2010-10-19 06:47:02 +00:00
Richard Henderson
5c82219425 simplify-rtx.c (simplify_ternary_operation): Simplify (fma (neg a) (neg b) c) and (fma a (neg b) c).
* simplify-rtx.c (simplify_ternary_operation) [FMA]: Simplify
	(fma (neg a) (neg b) c) and (fma a (neg b) c).

From-SVN: r165677
2010-10-18 19:12:07 -07:00
Richard Henderson
8950941996 Simplify FMA4 patterns with FMA rtx code.
Also fix incorrect rtl generation for scalar instructions.

From-SVN: r165676
2010-10-18 19:12:00 -07:00
Jerry DeLisle
a11930ba8d io.h: Remove definition of the BT enumerator.
2010-10-18  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	* io/io.h: Remove definition of the BT enumerator.
	* libgfortran.h: Replace GFC_DTYPE enumerator with BT.
	* intrinsics/iso_c_generated_procs.c: Likewise
	* intrinsics/date_and_time.c: Likewise.
	* intrinsics/iso_c_binding.c: Likewise.
	* io/list_read.c: Likewise.
	* io/transfer.c: Likewise.
	* io/write.c: Likewise.

2010-10-18  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	* gfortran.h: Remove definition of bt enumerator.
	* libgfortran.h: Add bt enumerator type alighned with defintion.
	Remove the dtype enumerator, no longer used.
	previously given in libgfortran/io.h
	* trans-types.c: Use new bt enumerator.
	* trans-io.c: Likewise.

From-SVN: r165675
2010-10-19 01:28:50 +00:00
Bernd Schmidt
21016e43e2 re PR rtl-optimization/45966 (Incorrect combiner transformation.)
PR rtl-optimization/45966
	* combine.c (try_combine): If added_sets_2, deal with the case
	where i0 feeds i1 and i1 feeds i2.

From-SVN: r165674
2010-10-19 00:24:36 +00:00
GCC Administrator
91d2ae6856 Daily bump.
From-SVN: r165673
2010-10-19 00:18:46 +00:00
Jan Hubicka
93a3eea4ca ipa.c (cgraph_externally_visible_p): Handle externally visible and preserve flags before trying to guess on visibility.
* ipa.c (cgraph_externally_visible_p): Handle externally visible and
	preserve flags before trying to guess on visibility.
	(varpool_externally_visible_p): New function.
	(function_and_variable_visibility): Use it.

From-SVN: r165669
2010-10-19 00:12:07 +00:00
Nicola Pero
2a613cffb1 In gcc/testsuite/: 2010-10-18 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/testsuite/:
2010-10-18  Nicola Pero  <nicola.pero@meta-innovation.com>

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

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

        Radar 4293709
        * objc.dg/proto-init-mimatch-1.m: New.
        * obj-c++.dg/proto-init-mimatch-1.mm: New.

From-SVN: r165668
2010-10-18 23:32:10 +00:00
Nicola Pero
da57d1b98f In gcc/: 2010-10-18 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/:
2010-10-18  Nicola Pero  <nicola.pero@meta-innovation.com>

        Implemented parsing @synthesize and @dynamic for Objective-C.
        * c-parser.c (c_parser_external_declaration): Recognize
        RID_AT_SYNTHESIZE and RID_AT_DYNAMIC.
        (c_parser_objc_at_synthesize_declaration): New.
        (c_parser_objc_at_dynamic_declaration): New.

2010-10-18  Nicola Pero  <nicola.pero@meta-innovation.com>

        * c-parser.c (c_parser_objc_class_declaration): After finding an
        error, parse the whole declaration then reset parser->error.

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

        Implemented parsing @synthesize and @dynamic for Objective-C++.
        * parser.c (cp_parser_objc_method_definition_list): Recognize
        RID_AT_SYNTHESIZE and RID_AT_DYNAMIC.
        (cp_parser_objc_at_dynamic_declaration): New.
        (cp_parser_objc_at_synthesize_declaration): New.

2010-10-18  Nicola Pero  <nicola.pero@meta-innovation.com>

        * parser.c (cp_parser_objc_identifier_list): Check the return
        value of cp_parser_identifier and react if it is error_mark_node.

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

        Implemented parsing @synthesize and @dynamic for
        Objective-C/Objective-C++.
        * objc-act.c (objc_add_synthesize_declaration): New.
        (objc_add_dynamic_declaration): New.

2010-10-18  Nicola Pero  <nicola.pero@meta-innovation.com>

        * objc-act.c (lookup_and_install_protocols): Return NULL if passed
        error_mark_node.

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

        Implemented parsing @synthesize and @dynamic for
        Objective-C/Objective-C++.
        * objc.dg/property/dynamic-1.m: New.
        * objc.dg/property/synthesize-1.m: New.
        * obj-c++.dg/property/dynamic-1.mm: New.
        * obj-c++.dg/property/synthesize-1.mm: New.

2010-10-18  Nicola Pero  <nicola.pero@meta-innovation.com>

        * objc.dg/at-class-1.m: New.
        * objc.dg/at-class-1.mm: New.

From-SVN: r165667
2010-10-18 23:28:20 +00:00
Michael Meissner
0069111f9c Fix PR 46041
From-SVN: r165666
2010-10-18 22:37:32 +00:00
Steve Ellcey
cd9c769aab 920625-1.c: Remove dg-prune-output lines.
2010-10-18  Steve Ellcey  <sje@cup.hp.com>

	* gcc.c-torture/compile/920625-1.c: Remove dg-prune-output lines.

From-SVN: r165665
2010-10-18 21:36:18 +00:00
Steve Ellcey
89774469f3 re PR target/36898 (Insufficient qp-mutex declarations)
2010-10-18  Steve Ellcey  <sje@cup.hp.com>

	PR target/36898
	PR middle-end/43760
	* config/ia64/ia64.c (rws_access_regno): Remove predicate check.

From-SVN: r165664
2010-10-18 21:34:46 +00:00
Joseph Myers
b69da3d839 i386.c (ix86_option_override_internal): Define and use USE_X86_64_FRAME_POINTER for 64-bit flag_omit_frame_pointer default.
* config/i386/i386.c (ix86_option_override_internal): Define and
	use USE_X86_64_FRAME_POINTER for 64-bit flag_omit_frame_pointer
	default.
	* config/i386/sol2-10.h (SUBTARGET_OVERRIDE_OPTIONS): Remove.
	(USE_IX86_FRAME_POINTER, USE_X86_64_FRAME_POINTER): Define.

From-SVN: r165660
2010-10-18 20:40:50 +01:00
Nicola Pero
fd4e428acc In gcc/objc/: 2010-10-18 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/objc/:
2010-10-18  Nicola Pero  <nicola.pero@meta-innovation.com>

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

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

        Radar 4407151
        * objc/objc-act.c (objc_is_class_name): template parameter is not
        an objective class name.
        (objc_generate_cxx_cdtors): Check for the null
        objc_implementation_context.

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

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

        2006-01-17  Fariborz Jahanian <fjahanian@apple.com>

        Radar 4407151
        * obj-c++.dg/template-7.mm: New.

From-SVN: r165657
2010-10-18 18:54:01 +00:00
Nicola Pero
71fc71d8c8 In gcc/: 2010-10-18 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/:
2010-10-18  Nicola Pero  <nicola.pero@meta-innovation.com>

        Merge from 'apple/trunk' branch on FSF servers. 
        * c-parser.c (c_parser_objc_type_name): Adapted to new parser the
        following Objective-C change:

        2005-10-10  Fariborz Jahanian <fjahanian@apple.com>

        Radar 4301047
        * c-parse.in (objc_quals): Build objc qualifier list same way
        as gcc-3.3
        
In gcc/testsuite/:
2010-10-18  Nicola Pero  <nicola.pero@meta-innovation.com>

        * objc.dg/proto-qual-1.m: Adjust test for GNU runtime to match
        bugfix.

From-SVN: r165656
2010-10-18 18:34:44 +00:00
Jan Hubicka
7ba6eb1e5c ipa.c (cgraph_externally_visible_p, [...]): Revert accidental commit.
* ipa.c (cgraph_externally_visible_p, varpool_externally_visible_p,
	function_and_variable_visibility): Revert accidental commit.

From-SVN: r165655
2010-10-18 18:23:26 +00:00
Nicola Pero
e426b47b65 In gcc/: 2010-10-18 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/:
2010-10-18  Nicola Pero  <nicola.pero@meta-innovation.com>

        Merge from 'apple/trunk' branch on FSF servers.
        * c-parser.c (c_parser_typeof_specifier): Adapted to new parser
        the following Objective-C change:

        2005-10-07  Fariborz Jahanian <fjahanian@apple.com>

        Radar 4204796
        * c-parse.in (typespec_nonreserved_nonattr): Remove volatile from
        'volatilized' type used in a typeof operator.

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

        Merge from 'apple/trunk' branch on FSF servers.
        
        2005-11-08  Fariborz Jahanian <fjahanian@apple.com>

        Radar 4330422
        * c-common.h (objc_non_volatilized_type): New declaration
        * stub-objc.c (objc_non_volatilized_type): New stub.

In gcc/cp/:
2010-10-18  Nicola Pero  <nicola.pero@meta-innovation.com>
        
        Merge from apple/trunk branch on FSF servers.
        
        2005-03-01 Fariborz Jahanian <fjahanian@apple.com>

        Radar 4451818
        * call.c (standard_conversion, implicit_conversion): Ignore
        'volatile' attribute of artificially volatized type in objc when
        evaluating various conversion weights.

        2005-11-08  Fariborz Jahanian <fjahanian@apple.com>

        Radar 4330422
        * typeck.c (comp_ptr_ttypes_real): Remove the hack. un-volatize the
        artiificially 'volatized' type before doing pointer comparison.
        
In gcc/objc/:
2010-10-17  Nicola Pero  <nicola.pero@meta-innovation.com>

        Merge from 'apple/trunk' branch on FSF servers.
        
        2005-11-08  Fariborz Jahanian <fjahanian@apple.com>

        Radar 4330422
        * objc/objc-act.c (objc_non_volatilized_type): New

        2005-10-07  Fariborz Jahanian <fjahanian@apple.com>
        
        Radar 4204796
        * objc-act.c (objc_build_volatilized_type): Build 'volatilzed'
        types with proper attribute set and correctly.
        (objc_volatilize_decl): Remove unneeded code.
        (objc_type_quals_match): Use the new attribute to check on
        'volatilzed' type.
        (hash_init): removed unneeded code.
        
In gcc/testsuite/:
2010-10-18  Nicola Pero  <nicola.pero@meta-innovation.com>
        
        Merge from 'apple/trunk' branch on FSF servers.

        2005-03-01 Fariborz Jahanian <fjahanian@apple.com>

        Radar 4451818
        * obj-c++.dg/try-catch-16.mm: New.
        * obj-c++.dg/try-catch-17.mm: New.

        2005-11-08  Fariborz Jahanian <fjahanian@apple.com>

        Radar 4330422
        * obj-c++.dg/try-catch-15.mm: New

        2005-10-07  Fariborz Jahanian <fjahanian@apple.com>

        Radar 4204796
        * obj-c++.dg/try-catch-12.mm: New
        * obj-c++.dg/try-catch-13.mm: New
        * obj-c++.dg/try-catch-14.mm: New
        * objc.dg/try-catch-11.m: New
        * objc.dg/try-catch-12.m: New
        * objc.dg/try-catch-13.m: New

From-SVN: r165654
2010-10-18 18:06:03 +00:00
Richard Henderson
9887f1dcee * gcc.target/ia64/20101014.c: Fix double-paste of test case.
From-SVN: r165653
2010-10-18 10:52:47 -07:00
Paolo Carlini
e1d4e035fa re PR libstdc++/45866 ([C++0x] std::ratio_add, ratio_sub, ratio_multiply, ratio_divide do not have num and den members.)
2010-10-18  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/45866
	* include/std/ratio (ratio<>::type): Add.
	(ratio_add<>::num, ratio_add<>::den,
	ratio_subtract<>::num, ratio_subtract<>::den,
	ratio_multiply<>::num, ratio_multiply<>::den,
	ratio_divide<>::num, ratio_divide<>::den): Likewise.
	* testsuite/20_util/ratio/operations/45866.cc: New.

From-SVN: r165649
2010-10-18 17:28:15 +00:00
Eric Botcazou
30fd588162 tree-flow.h (gimple_purge_all_dead_abnormal_call_edges): Declare.
* tree-flow.h (gimple_purge_all_dead_abnormal_call_edges): Declare.
	* tree-cfg.c (gimple_purge_dead_abnormal_call_edges): Move around and
	rewrite modelled on gimple_purge_dead_eh_edges.
	(gimple_purge_all_dead_abnormal_call_edges): New function.
	* tree-inline.c (expand_call_inline): Call gimple_purge_dead_eh_edges
	directly instead of through gimple_purge_dead_abnormal_call_edges.
	* tree-ssa-pre.c (need_ab_cleanup): New static variable.
	(eliminate): Set bit in need_ab_cleanup for the basic block if we have
	removed AB side-effects from one of its statements.
	(init_pre): Initialize need_ab_cleanup.
	(fini_pre): Purge dead abnormal call edges and clean up the CFG if bits
	are set in need_ab_cleanup.  Free need_ab_cleanup afterward.

From-SVN: r165646
2010-10-18 16:44:38 +00:00
Jakub Jelinek
84628aa836 re PR c/46015 (-Wunused-but-set-variable warns for arrays used in gotos)
PR c/46015
	* c-parser.c (c_parser_statement_after_labels): Call mark_exp_read
	on computed goto argument.

	* semantics.c (finish_goto_stmt): Call mark_rvalue_use on computed
	goto destination.

	* c-c++-common/Wunused-var-13.c: New test.

From-SVN: r165643
2010-10-18 17:55:25 +02:00
Richard Guenther
0f8d623157 re PR tree-optimization/45967 (gcc-4.5.x optimizes code with side-effects away)
2010-10-18  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/45967
	* tree-ssa-structalias.c (type_could_have_pointers): Remove.
	(could_have_pointers): Likewise.
	(handle_rhs_call, handle_const_call, handle_pure_call,
	find_func_aliases, intra_create_variable_infos): Remove calls to them.
	(struct fieldoff): Add must_have_pointers field.
	(type_must_have_pointers): New function.
	(field_must_have_pointers): Likewise.
	(push_fields_onto_fieldstack): Remove must_have_pointers_p argument.
	Adjust field merging.
	(create_function_info_for): May-have-pointers of varinfo is
	almost always true.
	(create_variable_info_for_1): Likewise.

	* gcc.dg/torture/pr45967.c: New testcase.
	* gcc.dg/ipa/ipa-pta-10.c: Adjust.
	* gcc.dg/ipa/ipa-pta-13.c: Likewise
	* gcc.dg/torture/pr39074-2.c: Likewise
	* gcc.dg/torture/pta-escape-1.c: Likewise
	* gcc.dg/torture/pta-ptrarith-1.c: Likewise
	* gcc.dg/tree-ssa/pta-callused.c: Likewise
	* gcc.dg/tree-ssa/pta-escape-1.c: Likewise
	* gcc.dg/tree-ssa/pta-escape-2.c: Likewise
	* gcc.dg/tree-ssa/pta-escape-3.c: Likewise
	* gcc.dg/tree-ssa/ssa-pre-21.c: Likewise

From-SVN: r165641
2010-10-18 15:32:00 +00:00
Jakub Jelinek
1915c739f0 re PR lto/45638 (No rule to make target check-lto', needed by check'. Stop.)
PR lto/45638
	* Make-lang.in (check-lto): New dummy target.

From-SVN: r165638
2010-10-18 17:16:07 +02:00
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