aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2015-05-26re PR fortran/66082 (memory leak with automatic array dummy argument with ↵Paul Thomas4-1/+54
derived type array constructor actual argument) 2015-05-26 Paul Thomas <pault@gcc.gnu.org> PR fortran/66082 * trans-array.c (gfc_conv_array_parameter): Ensure that all non-variable arrays with allocatable components have the components deallocated after the procedure call. 2015-05-26 Paul Thomas <pault@gcc.gnu.org> PR fortran/66082 * gfortran.dg/allocatable_scalar_13.f90: New test From-SVN: r223677
2015-05-26[multiple changes]Arnaud Charlet9-16/+21
2015-05-26 Doug Rupp <rupp@adacore.com> * init-vxsim.c (CPU): define as __VXSIM_CPU__ * sigtramp-vxworks-vxsim.c (CPU): Likewise. sigtramp-vxworks-target.inc: Add check for SIMLINUX. * sigtramp.h: Likewise. 2015-05-26 Robert Dewar <dewar@adacore.com> * sem_aux.adb, sem_disp.adb, sem_util.ads: Add comment. * sem_util.adb: Minor reformatting From-SVN: r223675
2015-05-26inline.adb (Has_Initialized_Type): Adapt to new names.Yannick Moy8-40/+328
2015-05-26 Yannick Moy <moy@adacore.com> * inline.adb (Has_Initialized_Type): Adapt to new names. * sem_aux.adb, sem_aux.ads (Get_Low_Bound, Number_Components, Subprogram_Body, Subprogram_Body_Entity, Subprogram_Spec, Subprogram_Specification): New query functions used in GNATprove. * sem_disp.adb, sem_disp.ads (Is_Overriding_Subprogram): New query functions used in GNATprove. * sem_util.adb, sem_util.adso (Enclosing_Lib_Unit_Node, Get_Cursor_Type, Get_Return_Object, Get_User_Defined_Eq, Is_Double_Precision_Floating_Point_Type, Is_Single_Precision_Floating_Point_Type): New query functions used in GNATprove. From-SVN: r223674
2015-05-26[multiple changes]Arnaud Charlet11-60/+58
2015-05-26 Bob Duff <duff@adacore.com> * s-rpc.ads (Partition_ID): Increase maximum Partition_ID to some huge number. * a-except-2005.adb, a-except-2005.ads, a-except.adb, a-except.ads, a-exexda.adb, a-exstat.adb: Minor comment fixes. 2015-05-26 Robert Dewar <dewar@adacore.com> * sinfo.adb: Minor comment addition. * einfo.adb: Minor whitespace and punctuation fix. * sem_util.adb: Minor editing of comments. From-SVN: r223673
2015-05-26[multiple changes]Arnaud Charlet16-285/+858
2015-05-26 Ed Schonberg <schonberg@adacore.com> * sem_ch7.adb (Install_Private_Declarations, Swap_Private_Dependents): Ensure that both views of the dependent subtype are immediately visible if we are within their scope. This may be needed when a procedure body is both the parent of an instantiated child unit, and is itself used to inline a local function. 2015-05-26 Gary Dismukes <dismukes@adacore.com> * exp_prag.adb, gnat1drv.adb: Minor reformatting. 2015-05-26 Eric Botcazou <ebotcazou@adacore.com> * exp_ch4.adb (Expand_N_Indexed_Component): In the circuit detecting exceptions to the rewriting, deal with implicit dereferences in the selected component case. 2015-05-26 Bob Duff <duff@adacore.com> * sem_ch13.adb (Analyze_One_Aspect): Do not require the expression of the Disable_Controlled aspect to be static in a generic template, because 'Enabled is not known until the instance. 2015-05-26 Doug Rupp <rupp@adacore.com> * init-vxsim.c: New file for vxsim ZCX * sigtramp-vxworks-vxsim.c: Likewise. * sigtramp-vxworks.c: Factor out target dependent bits into ... * sigtramp-vxworks-target.inc: ... here. * sigtramp.h: Add vxsim zcx protos. * init.c [vxworks...] (sysLib.h): Include. (__gnat_map_signal): Make global. [...i386] (__gnat_error_handler): Call __gnat_vxsim_error_handler if on vxsim. [...i386] (__gnat_install_handler): Test if on vxsim. 2015-05-26 Ed Schonberg <schonberg@adacore.com> * sem_ch5.adb (Analyze_Iterator_Specification): For an element iterator over an array, if the component is aliased, the loop variable is aliased as well. 2015-05-26 Ed Schonberg <schonberg@adacore.com> * exp_ch6.adb (Expand_Actuals): For a function call with in-out parameters that is rewritten as an expression_with_actions, we preserve the original function call node for further use by the caller (typically Expand_Call). In the presence of validity checks, that function call, though it is labelled Analyzed to prevent an infinite recursion, may be rewritten as a temporary by Remove_Side_Effects. Ensure that the caller has access to the original function call to continue expansion. * atree.ads: Minor typo in comment. 2015-05-26 Javier Miranda <miranda@adacore.com> * sem_util.adb (Check_Function_Writable_Actuals): Add missing support to check the violation of writable actuals in array aggregates that have a nonstatic range. From-SVN: r223672
2015-05-26exp_ch6.adb (Process_Contract_Cases_For): Update the call to ↵Hristian Kirtchev5-417/+422
Expand_Pragma_Contract_Cases. 2015-05-26 Hristian Kirtchev <kirtchev@adacore.com> * exp_ch6.adb (Process_Contract_Cases_For): Update the call to Expand_Pragma_Contract_Cases. * exp_prag.ads, exp_prag.adb (Expand_Contract_Cases): Rename to Expand_Pragma_Contract_Cases. * sem_ch13.adb (Add_Invariants): Use the original aspect name when creating the arguments of pragma Check. This ensures that 'Class is properly recognized and handled. From-SVN: r223671
2015-05-26tree-vect-loop.c (vect_update_vf_for_slp): Split out from ...Richard Biener4-72/+131
2015-05-26 Richard Biener <rguenther@suse.de> * tree-vect-loop.c (vect_update_vf_for_slp): Split out from ... (vect_analyze_loop_operations): ... here. Remove slp parameter, detect whether we apply SLP. Remove call to vect_update_slp_costs_according_to_vf. (vect_analyze_loop_2): Call vect_update_vf_for_slp and vect_update_slp_costs_according_to_vf from here. Dispatch to vect_slp_analyze_operations to analyze SLP stmts. * tree-vect-slp.c (vect_slp_analyze_node_operations): Drop unused bb_vec_info parameter, adjust assert. (vect_slp_analyze_operations): Pass in the slp instance tree instead of bb_vec_info. (vect_slp_analyze_bb_1): Adjust call to vect_slp_analyze_operations. * tree-vectorizer.h (vect_slp_analyze_operations): Declare. From-SVN: r223670
2015-05-26gnat1drv.adb: Minor adjustments.Arnaud Charlet4-66/+24
* gnat1drv.adb: Minor adjustments. (Adjust_Global_Switches): Disable some related flags in CodePeer mode. * sem_ch4.adb (Has_Arbitrary_Evaluation_Order, Stop_Subtree_Climbind): Code cleanup. * einfo.ads: Minor comment change. From-SVN: r223669
2015-05-26[multiple changes]Arnaud Charlet8-172/+268
2015-05-26 Javier Miranda <miranda@adacore.com> * sem_aggr.adb (Resolve_Aggregate, Resolve_Extension_Aggregate): Code cleanup. * sem_ch3.adb (Build_Derived_Record_Type, Record_Type_Declaration): Code cleanup. * sem_ch4.adb (Has_Arbitrary_Evaluation_Order, Stop_Subtree_Climbind): Tables which speed up the identification of dangerous calls to Ada 2012 functions with writable actuals (AI05-0144). (Analyze_Arithmetic_Op, Analyze_Call, Analyze_Comparison_Op, Analyze_Equality_Op, Analyze_Logical_Op, Analyze_Membership_Op, Analyze_Range): Code cleanup. (Is_Arbitrary_Evaluation_Order_Construct): Removed. (Check_Writable_Actuals): Code cleanup using the added tables. * sem_util.adb (Check_Function_Writable_Actuals): Return immediately if the node does not have the flag Check_Actuals set to True. 2015-05-26 Eric Botcazou <ebotcazou@adacore.com> * exp_ch6.adb (Add_Call_By_Copy_Code): Remove restrictive condition in the detection of the effects of Remove_Side_Effects. * exp_util.ads (Remove_Side_Effects): Add general and historical note. * exp_util.adb (Is_Name_Reference): New predicate. (Remove_Side_Effects): Use it in lieu of Is_Object_Reference in order to decide whether to use the renaming to capture the side effects of the subexpression. (Side_Effect_Free): Remove obsolete test. From-SVN: r223668
2015-05-26[multiple changes]Arnaud Charlet12-138/+150
2015-05-26 Robert Dewar <dewar@adacore.com> * aspects.ads, aspects.adb: Add aspect Disable_Controlled. * einfo.ads, einfo.adb (Disable_Controlled): New flag. (Is_Controlled_Active): New function. * exp_ch3.adb (Expand_Freeze_Record_Type): Use Is_Controlled_Active. * exp_util.adb (Needs_Finalization): Finalization not needed if Disable_Controlled set. * freeze.adb (Freeze_Array_Type): Do not set Has_Controlled_Component if the component has Disable_Controlled. (Freeze_Record_Type): ditto. * sem_ch13.adb (Decorate): Minor reformatting. (Analyze_Aspect_Specifications): Implement Disable_Controlled. * sem_ch3.adb (Analyze_Object_Declaration): Handle Disable_Controlled. (Array_Type_Declaration): ditto. (Build_Derived_Private_Type): ditto. (Build_Derived_Type): ditto. (Record_Type_Definition): ditto. * snames.ads-tmpl: Add Name_Disable_Controlled. 2015-05-26 Eric Botcazou <ebotcazou@adacore.com> * exp_ch6.adb (Expand_Actuals): Use a constant declaration instead of a renaming to capture the return value of a function call. (Expand_Simple_Function_Return): Call Remove_Side_Effects instead of removing side effects manually before the call to _Postconditions. From-SVN: r223667
2015-05-26Minor reformatting.Arnaud Charlet1-2/+3
From-SVN: r223666
2015-05-26exp_ch4.adb (Expand_N_Op_Expon): Deal with problem of wrong order in calling ↵Robert Dewar3-8/+25
Duplicate_Subexpr. 2015-05-26 Robert Dewar <dewar@adacore.com> * exp_ch4.adb (Expand_N_Op_Expon): Deal with problem of wrong order in calling Duplicate_Subexpr. * einfo.ads: Fix documentation of Object/Value size for scalar types. From-SVN: r223665
2015-05-26exp_aggr.adb (Build_Array_Aggr_Code, Gen_Assign): If a component is ↵Ed Schonberg2-17/+34
default-initialized and its type has an invariant procedure... 2015-05-26 Ed Schonberg <schonberg@adacore.com> * exp_aggr.adb (Build_Array_Aggr_Code, Gen_Assign): If a component is default-initialized and its type has an invariant procedure, insert an invariant test after code for default-initialization of the component. From-SVN: r223664
2015-05-26[multiple changes]Arnaud Charlet7-114/+156
2015-05-26 Gary Dismukes <dismukes@adacore.com> * einfo.ads, sem_util.adb, sem_ch4.adb: Minor reformatting. 2015-05-26 Robert Dewar <dewar@adacore.com> * exp_unst.adb, exp_unst.ads: Change to using Subps table index for making AREC entity names unique. 2015-05-26 Ed Schonberg <schonberg@adacore.com> * sem_cat.adb (Has_Stream_Attribute_Definition): If the type has aspect specifications, examine the corresponding list of representation items to determine whether there is a visible stream operation. The attribute definition clause generated from the aspect will be inserted at the freeze point of the type, which may be in the private part and not directly visible, but the aspect makes the operation available to a client. From-SVN: r223663
2015-05-26sem_util.adb: Minor code reorganization.Robert Dewar3-7/+14
2015-05-26 Robert Dewar <dewar@adacore.com> * sem_util.adb: Minor code reorganization. * sem_ch6.adb: Minor reformatting. From-SVN: r223662
2015-05-26Daily bump.GCC Administrator1-1/+1
From-SVN: r223661
2015-05-25utils.c (maybe_pad_type): Do not apply adjustment to original size for ↵Eric Botcazou5-2/+31
elementary types before issuing... * gcc-interface/utils.c (maybe_pad_type): Do not apply adjustment to original size for elementary types before issuing the size warning. From-SVN: r223657
2015-05-25targtyps.c (get_float_words_be): Rename into...Eric Botcazou9-50/+70
* gcc-interface/targtyps.c (get_float_words_be): Rename into... (get_target_float_words_be): ...this. (get_words_be): Rename into... (get_target_words_be): ...this. (get_bytes_be): Rename into... (get_target_bytes_be): ...this. (get_bits_be): Rename into... (get_target_bits_be): ...this. * gcc-interface/gigi.h (standard_datatypes): Remove ADT_ptr_void_type. (ptr_void_type_node): Delete. (get_target_float_size): Likewise. (get_target_double_size): Likewise. (get_target_long_double_size): Likewise. (get_float_words_be): Likewise. (get_words_be): Likewise. (get_bytes_be): Likewise. (get_bits_be): Likewise. (get_target_float_words_be): Declare. (get_target_words_be): Likewise. (get_target_bytes_be): Likewise. (get_target_bits_be): Likewise. * gcc-interface/decl.c (gnat_to_gnu_entity): Replace ptr_void_type_node with ptr_type_node. (intrin_return_compatible_p): Likewise. * gcc-interface/trans.c (gigi): Likewise. * gcc-interface/utils2.c (maybe_wrap_malloc): Likewise. (maybe_wrap_free): Likewise. * gcc-interface/utils.c (maybe_pad_type): Remove superfluous space. * gcc-interface/misc.c (gnat_init): Do not set ptr_void_type_node. From-SVN: r223656
2015-05-25decl.c (elaborate_expression): Take a const string suffix instead of a tree.Eric Botcazou2-63/+69
* gcc-interface/decl.c (elaborate_expression): Take a const string suffix instead of a tree. (elaborate_expression_1): Likewise. (elaborate_expression_2): Likewise. (gnat_to_gnu_entity): Adjust to above changes. (build_subst_list): Likewise. (get_entity_char): New static function. From-SVN: r223655
2015-05-25decl.c (gnat_to_gnu_entity): Move around.Eric Botcazou2-84/+85
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Constant>: Move around. <E_Exception>: Merge with E_Variable case. <E_Variable>: Remove 'object' label. From-SVN: r223654
2015-05-25decl.c (gnat_to_gnu_entity): Minor tweak.Eric Botcazou5-30/+36
* gcc-interface/decl.c (gnat_to_gnu_entity): Minor tweak. * gcc-interface/trans.c (finalize_nrv_unc_r): Use CONSTRUCTOR_ELT. * gcc-interface/utils.c (convert): Likewise and simplify. (remove_conversions): Likewise. * gcc-interface/utils2.c (compare_fat_pointers): Likewise. (build_unary_op): Likewise and simplify. From-SVN: r223653
2015-05-25gigi.h (build_atomic_load): Adjust prototype.Eric Botcazou12-142/+737
* gcc-interface/gigi.h (build_atomic_load): Adjust prototype. (build_atomic_store): Likewise. (build_load_modify_store): Declare. (VECTOR_TYPE_P): Delete. * gcc-interface/decl.c (gnat_to_gnu_entity): Replace Is_Atomic with Is_Atomic_Or_VFA throughout. <E_Array_Type>: Build a variant of the XUA type instead of forcing TYPE_VOLATILE on it. <E_Array_Subtype>: Use the main variant of the base type. Do not force TYPE_VOLATILE on the type being built. <E_Record_Type>: Likewise. <E_Array_Subtype>: Likewise. <E_Subprogram_Type>: Rename local variable. Add Atomic qualifier in conjunction with Volatile on types if needed. Force BLKmode for by-ref types only at the end of the processing. Change qualifiers only after changing the mode of the type. Set TYPE_UNIVERSAL_ALIASING_P on the type directly. (check_ok_for_atomic_type): Issue specific error message for VFA. (gnat_to_gnu_component_type): Replace Is_Atomic with Is_Atomic_Or_VFA throughout. * gcc-interface/misc.c (gnat_get_alias_set): Test TYPE_UNIVERSAL_ALIASING_P on the type directly. * gcc-interface/trans.c (lvalue_required_p): Replace Is_Atomic with Is_Atomic_Or_VFA throughout. Add missing guard. (node_is_atomic): New predicate. (node_has_volatile_full_access): Likewise. (gnat_strip_type_conversion): New function. (outer_atomic_access_required_p): New predicate. (atomic_sync_required_p): Rename into... (atomic_access_required_p): ...this. Add SYNC parameter, scan the parent node first and then look for the atomic setting. Add support for Volatile_Full_Access. (Call_to_gnu): Add atomic_access and outer_atomic_access parameters and adjusts calls to above functions. Use load-modify-store sequence for updates of In/Out and Out parameters if required, as well as for moving the result to the target if required. Add couple of missing guards. (gnat_to_gnu): Adjust calls to above functions. <N_Object_Renaming_Declaration>: If the renamed object has side-effects evaluate only its address. <N_Assignment_Statement>: Adjust call to Call_to_gnu. Use load-modify store sequence if required. <N_Function_Call>: Adjust call to Call_to_gnu. (extract_values): Adjust comment. * gcc-interface/utils2.c (build_atomic_load): Add SYNC parameter and use relaxed memory model if it is not set. (build_atomic_store): Likewise. (call_is_atomic_load): New predicate. (build_load_modify_store): New function. (build_binary_op) <MODIFY_EXPR>: Accept SAVE_EXPR on the LHS. (gnat_stabilize_reference) <CALL_EXPR>: Deal with atomic loads. From-SVN: r223652
2015-05-25i386.h (enum reg_class): Move CLOBBERED_REGS prior to Q_REGS.Alexander Monakov5-6/+20
* config/i386/i386.h (enum reg_class): Move CLOBBERED_REGS prior to Q_REGS. Expand comment. (REG_CLASS_NAMES): Ditto. (REG_CLASS_CONTENTS): Ditto. testsuite: * gcc.target/i386/pr66232-1.c: Adjust scan pattern. * gcc.target/i386/pr66232-3.c: Likewise. From-SVN: r223650
2015-05-25re PR target/66274 (gcc6: x86 -m32 emits 64bit register in inline asm)Uros Bizjak4-1/+21
PR target/66274 * config/i386/i386.c (print_reg): Only print "r" for TARGET_64BIT when LEGACY_INT_REGNO_P is processed. testsuite/ChangeLog: PR target/66274 * gcc.target/i386/pr66274.c: New test. From-SVN: r223649
2015-05-25* config/i386/i386.c (ix86_function_ok_for_sibcall): Check flag_plt.Alexander Monakov2-3/+8
From-SVN: r223648
2015-05-25avr.c (avr_out_load_psi_reg_no_disp_tiny): Restore base register if not ↵Pitchumani Sivanupandi2-3/+8
marked dead/unused, before return. * config/avr/avr.c (avr_out_load_psi_reg_no_disp_tiny): Restore base register if not marked dead/unused, before return. From-SVN: r223647
2015-05-25* c-ubsan.c (ubsan_instrument_shift): Use type0.Marek Polacek2-1/+5
From-SVN: r223646
2015-05-25ada-tree.h (DECL_RENAMING_GLOBAL_P): Rename into...Eric Botcazou10-77/+231
* gcc-interface/ada-tree.h (DECL_RENAMING_GLOBAL_P): Rename into... (DECL_GLOBAL_NONCONSTANT_RENAMING_P): ...this. * gcc-interface/gigi.h (record_global_renaming_pointer): Delete. (invalidate_global_renaming_pointers): Likewise. (record_global_nonconstant_renaming): New. (invalidate_global_nonconstant_renamings): Likewise. (get_inner_constant_reference): Likewise. (gnat_constant_reference_p): Likewise. * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Adjust to above and register the renaming pointer only if the object is non-constant. (elaborate_expression_1): Call get_inner_constant_reference instead of get_inner_reference. * gcc-interface/trans.c (fold_constant_decl_in_expr): Minor tweak. (Identifier_to_gnu): Adjust to above and do not recheck the renamed object before substituting it. (Compilation_Unit_to_gnu): Adjust to above renaming. Minor tweaks. (gnat_to_gnu) <N_Object_Renaming_Declaration>: Do not return the result at the global level. (N_Exception_Renaming_Declaration): Likewise. * gcc-interface/utils.c (global_renaming_pointers): Rename into... (global_nonconstant_renamings): ...this. (destroy_gnat_utils): Adjust to above renaming. (record_global_renaming_pointer): Rename into... (record_global_nonconstant_renaming): ...this. (invalidate_global_renaming_pointers): Rename into... (invalidate_global_nonconstant_renamings): ...this and do not recheck the renamed object before invalidating. * gcc-interface/utils2.c (gnat_stabilize_reference): Minor tweak. (get_inner_constant_reference): New public function. (gnat_constant_reference_p): New predicate. From-SVN: r223644
2015-05-25einfo.ads, einfo.adb (Has_Out_Or_In_Out_Parameter): This attribute is now ↵Javier Miranda10-40/+329
present in subprograms... 2015-05-25 Javier Miranda <miranda@adacore.com> * einfo.ads, einfo.adb (Has_Out_Or_In_Out_Parameter): This attribute is now present in subprograms, generic subprograms, entries and entry families. * sem_ch6.adb (Set_Formal_Mode): Set As_Out_Or_In_Out_Parameter on entries, entry families, subprograms and generic subprograms. * sem_ch12.adb (Analyze_Generic_Subprogram_Declaration): Minor code reorganization to ensure that the Ekind attribute of the subprogram entity is set before its formals are processed. Required to allow the use of the attribute Has_Out_Or_In_Out_Parameter on the subprogram entity. * sem_aggr.adb (Resolve_Aggregate, Resolve_Extension_Aggregate): Perform the check on writable actuals only if the value of some component of the aggregate involves calling a function with out-mode parameters. (Resolve_Record_Aggregate): Propagate the Check_Actuals flag to the internally built aggregate. * sem_ch3.adb (Build_Derived_Record_Type, Record_Type_Declaration): Perform the check on writable actuals only if the initialization of some component involves calling a function with out-mode parameters. * sem_ch4.adb (Analyze_Arithmetic_Op, Analyze_Comparison_Op, Analyze_Equality_Op, Analyze_Logical_Op, Analyze_Membership_Op, Analyze_Range): Check writable actuals only if the subtrees have a call to a function with out-mode parameters (Analyze_Call.Check_Writable_Actuals): New subprogram. If the call has out or in-out parameters then mark its outermost enclosing construct as a node on which the writable actuals check must be performed. (Analyze_Call): Check if the flag must be set and if the outermost enclosing construct. * sem_util.adb (Check_Function_Writable_Actuals): Code cleanup and reorganization. We skip processing aggregate discriminants since their precise analysis involves two phases traversal. * sem_res.adb (Resolve_Actuals, Resolve_Arithmetic_Op, Resolve_Logical_Op, Resolve_Membership_Op): Remove call to check_writable_actuals. From-SVN: r223643
2015-05-25pr64317.c: Use 'dg-require-effective-target ia32' and ↵Andreas Tobler2-1/+8
'dg-require-effective-target pie'. 2015-05-25 Andreas Tobler <andreast@gcc.gnu.org> * gcc.target/i386/pr64317.c: Use 'dg-require-effective-target ia32' and 'dg-require-effective-target pie'. From-SVN: r223642
2015-05-25Daily bump.GCC Administrator1-1/+1
From-SVN: r223640
2015-05-24re PR c++/66243 (enum class value is allowed to be initialized by value from ↵Nathan Sidwell4-3/+26
other enum class) cp/ PR c++/66243 * decl.c (build_enumerator): Don't silently convert scoped enums. testsuite/ PR c++/66243 * g++.dg/cpp0x/pr66243.C: New. From-SVN: r223636
2015-05-24* ChangLog: Fix whitespace.Uros Bizjak1-8/+13
From-SVN: r223634
2015-05-24re PR lto/66180 (many -Wodr false positives when building LLVM with -flto)Jan Hubicka8-21/+114
PR lto/66180 * ipa-devirt.c (type_with_linkage): Check that TYPE_STUB_DECL is set; check for assembler name at LTO time. (type_in_anonymous_namespace): Remove hacks, check that all anonymous types are called "<anon>" (odr_type_p): Simplify; add check for "<anon>" (odr_subtypes_equivalent): Add odr_type_p check. * tree.c (need_assembler_name_p): Even anonymous namespace needs assembler name. * mangle.c (mangle_decl): Mangle anonymous namespace types as "<anon>". * g++.dg/lto/pr66180_0.C: New testcase. * g++.dg/lto/pr66180_1.C: New testcase. From-SVN: r223633
2015-05-24re PR fortran/66257 (ELEMENTAL procedure pointer component XX is not allowed ↵Mikael Morin4-1/+54
as an actual argument) PR fortran/66257 gcc/fortran/ * resolve.c (resolve_actual_arglist): Don't throw an error if the argument with procedure pointer component is not a variable. gcc/testsuite/ * typebound_call_27.f90: New file. From-SVN: r223631
2015-05-24ipa-utils.h (method_class_type): Remove.Jan Hubicka8-31/+36
* ipa-utils.h (method_class_type): Remove. * cgraphunit.c (walk_polymorphic_call_targets): Use TYPE_METHOD_BASETYPE. * ipa-devirt.c (type_in_anonymous_namespace_p): Check that it is called on main variants only. (method_class_type): Remove. (update_type_inheritance_graph): Use TYPE_METHOD_BASETYPE. (build_type_inheritance_graph): Likewise. * ipa-icf.c (sem_function::equals_wpa): Likewise. * pa-polymorphic-call.c (decl_maybe_in_construction_p, check_stmt_for_type_change): Use TYPE_METHOD_BASETYPE. From-SVN: r223629
2015-05-24tree.c (prototype_p, [...]): Constify.Jan Hubicka3-10/+17
* tree.c (prototype_p, virtual_method_call_p, obj_type_ref_class, is_typedef_decl, typedef_variant_p): Constify. * tree.h (prototype_p, virtual_method_call_p, obj_type_ref_class, is_typedef_decl, typedef_variant_p): Constify. From-SVN: r223628
2015-05-24add default for HAVE_tablejumpTrevor Saunders4-9/+17
gcc/ChangeLog: 2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * defaults.h (gen_tablejump): New function. (HAVE_tablejump): Add default value. * expr.c: Adjust. * stmt.c: Likewise. From-SVN: r223625
2015-05-24add default for HAVE_store_multipleTrevor Saunders3-2/+16
gcc/ChangeLog: 2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * defaults.h (gen_store_multiple): New function. (HAVE_store_multiple): Add default value. * expr.c (move_block_from_reg): Adjust. From-SVN: r223624
2015-05-24add default for HAVE_load_multipleTrevor Saunders3-4/+16
gcc/ChangeLog: 2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * defaults.h (gen_load_multiple): New function. (HAVE_load_multiple): Add default value. * expr.c (move_block_to_reg): Adjust. From-SVN: r223623
2015-05-24provide default for HAVE_mem_signal_fenceTrevor Saunders3-5/+16
gcc/ChangeLog: 2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * defaults.h (gen_mem_signal_fence): New function. (HAVE_mem_signal_fence): Add default value. * optabs.c: Adjust. From-SVN: r223622
2015-05-24always define HAVE_memory_barrierTrevor Saunders3-5/+16
gcc/ChangeLog: 2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * defaults.h (gen_memory_barrier): New function. (HAVE_memory_barrier): Add default value. * optabs.c: Adjust. From-SVN: r223621
2015-05-24provide default for HAVE_mem_thread_fenceTrevor Saunders3-4/+16
gcc/ChangeLog: 2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * defaults.h (gen_mem_thread_fence): New function. (HAVE_mem_thread_fence): Add default definition. * optabs.c: Adjust. From-SVN: r223620
2015-05-24always define HAVE_lo_sumTrevor Saunders5-45/+51
gcc/ChangeLog: 2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * combine.c (find_split_point): Check the value of HAVE_lo_sum instead of if it is defined. (combine_simplify_rtx): Likewise. * lra-constraints.c (process_address_1): Likewise. * config/darwin.c: Adjust. * genconfig.c (main): Always define HAVE_lo_sum. From-SVN: r223619
2015-05-24Daily bump.GCC Administrator1-1/+1
From-SVN: r223618
2015-05-23re PR fortran/44054 (Handle -Werror, -Werror=, -fdiagnostics-show-option, ↵Manuel López-Ibáñez15-363/+211
!GCC$ diagnostic (pragmas) and color) gcc/fortran/ChangeLog: 2015-05-24 Manuel López-Ibáñez <manu@gcc.gnu.org> PR fortran/44054 * gfortran.h (struct gfc_error_buf): Rename as gfc_error_buffer. Move closer to push, pop and free methods. Reimplement using an output_buffer. * error.c (errors, warnings, warning_buffer, cur_error_buffer): Delete everywhere in this file. (error_char): Delete all contents. (gfc_increment_error_count): Delete. (gfc_error_now): Update comment. Set error_buffer.flag. (gfc_warning_check): Do not handle warning_buffer. (gfc_error_1): Delete. (gfc_error_now_1): Delete. (gfc_error_check): Simplify. (gfc_move_error_buffer_from_to): Renamed from gfc_move_output_buffer_from_to. (gfc_push_error): Handle only gfc_error_buffer. (gfc_pop_error): Likewise. (gfc_free_error): Likewise. (gfc_get_errors): Remove warnings and errors. (gfc_diagnostics_init): Use static error_buffer. (gfc_error_1,gfc_error_now_1): Delete declarations. * symbol.c, decl.c, trans-common.c, data.c, expr.c, expr.c, frontend-passes.c, resolve.c, match.c, parse.c: Replace gfc_error_1 with gfc_error and gfc_error_now_1 with gfc_error_1 everywhere. * f95-lang.c (gfc_be_parse_file): Do not update errorcount and warningcount here. * primary.c (match_complex_constant): Replace gfc_error_buf and output_buffer with gfc_error_buffer. From-SVN: r223614
2015-05-23re PR c++/65936 (ICE: canonical types differ for identical types)Nathan Sidwell4-5/+43
cp/ PR c++/65936 * pt.c (lookup_template_class_1): Copy may_alias attribute too. testsuite/ PR c++/65936 * g++.dg/template/pr65936.C: New. From-SVN: r223613
2015-05-23genmatch.c (parser::parse_operation): Reject expanding operator-list inside ↵Prathamesh Kulkarni2-1/+10
'for'. 2015-05-20 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org> * genmatch.c (parser::parse_operation): Reject expanding operator-list inside 'for'. From-SVN: r223612
2015-05-23Fix date in ChangeLog entry for r223610Prathamesh Kulkarni1-1/+1
From-SVN: r223611
2015-05-23genmatch.c (parser::parse_for): Reject iterator if used as operator-list.Prathamesh Kulkarni2-2/+11
2015-05-23 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org> * genmatch.c (parser::parse_for): Reject iterator if used as operator-list. From-SVN: r223610