aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2013-03-18gfortran.h (gfc_option_t): Remove flag_whole_file.Tobias Burnus9-107/+58
2013-03-18 Tobias Burnus <burnus@net-b.de> * gfortran.h (gfc_option_t): Remove flag_whole_file. * invoke.texi (-fno-whole-file): Remove. * lang.opt (fwhole-file): Change to Ignore. * options.c (gfc_init_options, gfc_post_options, gfc_handle_option): Remove !flag_whole_file handling * parse.c (resolve_all_program_units, * translate_all_program_units, gfc_parse_file): Ditto. * resolve.c (resolve_global_procedure): Ditto. * trans-decl.c (gfc_get_symbol_decl, * gfc_get_extern_function_decl, gfc_create_module_variable): Ditto. * trans-types.c (gfc_get_derived_type): Ditto. From-SVN: r196773
2013-03-18re PR tree-optimization/3713 (Pointers to functions or member functions are ↵Richard Biener4-19/+62
not folded or inlined) 2013-03-18 Richard Biener <rguenther@suse.de> PR tree-optimization/3713 * tree-ssa-sccvn.c (visit_copy): Simplify. Always propagate has_constants and expr. (stmt_has_constants): Properly valueize SSA names when deciding whether the stmt has constants. * g++.dg/ipa/devirt-12.C: New testcase. From-SVN: r196771
2013-03-18tree-ssa-loop-manip.c (find_uses_to_rename): Do not scan the whole function ↵Richard Biener5-22/+25
when there is nothing to do. 2013-03-18 Richard Biener <rguenther@suse.de> * tree-ssa-loop-manip.c (find_uses_to_rename): Do not scan the whole function when there is nothing to do. * tree-ssa-loop.c (pass_vectorize): Remove TODO_update_ssa. * tree-vectorizer.c (vectorize_loops): Update virtual and loop-closed SSA once. * tree-vect-loop.c (vect_transform_loop): Do not update SSA here. From-SVN: r196770
2013-03-18re PR c/56113 (out of memory when compiling a function with many goto labels ↵Richard Biener2-39/+52
(50k > )) 2013-03-18 Richard Biener <rguenther@suse.de> PR middle-end/56113 * domwalk.c (bb_postorder): New global static. (cmp_bb_postorder): New function. (walk_dominator_tree): Replace scheme imposing an order for visiting dominator sons by one sorting them at the time they are pushed on the stack. From-SVN: r196769
2013-03-18re PR middle-end/39326 (Segmentation fault with -O1, out of memory with -O2)Richard Biener2-34/+62
2013-03-18 Richard Biener <rguenther@suse.de> PR tree-optimization/39326 * tree-ssa-loop-im.c (refs_independent_p): Exploit symmetry. (struct mem_ref): Replace mem member with ao_ref typed member. (MEM_ANALYZABLE): Adjust. (memref_eq): Likewise. (mem_ref_alloc): Likewise. (gather_mem_refs_stmt): Likewise. (mem_refs_may_alias_p): Use the ao_ref to query the alias oracle. (execute_sm_if_changed_flag_set): Adjust. (execute_sm): Likewise. (ref_always_accessed_p): Likewise. (refs_independent_p): Likewise. (can_sm_ref_p): Likewise. From-SVN: r196768
2013-03-18re PR c/56566 (bogus "is narrower than values of its type" warning)Jakub Jelinek4-7/+30
PR c/56566 * tree.c (tree_int_cst_min_precision): For integer_zerop (value) return 1 even for !unsignedp. * c-c++-common/pr56566.c: New test. From-SVN: r196767
2013-03-17re PR c++/54359 ([C++0x] decltype in member function's trailing return type ↵Jason Merrill4-4/+30
when defined outside of class) PR c++/54359 PR c++/56639 * parser.c (cp_parser_direct_declarator): Bail if we see a qualified-id not at namespace scope. From-SVN: r196765
2013-03-17* g++.dg/template/abstract-dr337.C: XFAIL.Jason Merrill2-2/+6
From-SVN: r196764
2013-03-18Daily bump.GCC Administrator1-1/+1
From-SVN: r196762
2013-03-17re PR c++/17232 ([DR 1640] classes and class template specializations ↵Jason Merrill2-4/+7
treated differently w.r.t. core issue #337) PR c++/17232 PR c++/56642 * typeck2.c (abstract_virtuals_error_sfinae): Revert complete_type change for now. From-SVN: r196758
2013-03-17i386.md (isa): Add x64 and nox64.Uros Bizjak3-330/+128
* config/i386/i386.md (isa): Add x64 and nox64. (enabled): Define x64 for TARGET_64BIT and nox64 for !TARGET_64BIT. (*pushtf): Enable *roF alternative for x64 isa only. (*pushxf): Merge with *pushxf_nointeger. Use Yx*r constraint. Set mode attribute of integer alternatives to DImode for TARGET_64BIT. (*pushdf): Merge with *pushdf_rex64. Use x64 and nox64 isa attributes. (*movtf_internal): Merge from *movtf_internal_rex64 and *movtf_internal_sse. Use x64 and nox64 isa attributes. (*movxf_internal): Merge with *movxf_internal_rex64. Use x64 and nox64 isa attributes. (*movdf_internal): Merge with *movdf_internal_rex64. Use x64 and nox64 isa attributes. * config/i386/constraints.md (Yd): Do not set for TARGET_64BIT. From-SVN: r196757
2013-03-17alpha.c (TARGET_LRA_P): New define.Uros Bizjak2-45/+47
* config/alpha/alpha.c (TARGET_LRA_P): New define. From-SVN: r196756
2013-03-17re PR target/56640 (bootstrap failure on arm-linux-gnueabi{,hf})Jakub Jelinek2-1/+9
PR target/56640 * config/arm/arm.h (REG_CLASS_NAMES): Add "SFP_REG" and "AFP_REG" class names. Remove trailing comma after "ALL_REGS". From-SVN: r196753
2013-03-17* sv.po: Update.Joseph Myers2-408/+364
From-SVN: r196751
2013-03-17cgraph.h (cgraph_get_create_real_symbol_node): Declare.Jan Hubicka5-33/+60
* cgraph.h (cgraph_get_create_real_symbol_node): Declare. * cgraph.c (cgraph_get_create_real_symbol_node): New function. * cgrpahbuild.c: Use cgraph_get_create_real_symbol_node instead of cgraph_get_create_node. * ipa-prop.c (ipa_make_edge_direct_to_target): Likewise. From-SVN: r196750
2013-03-16decl.c (grokdeclarator): Assert that we won't see a pointer to METHOD_TYPE.Jason Merrill2-2/+7
* decl.c (grokdeclarator): Assert that we won't see a pointer to METHOD_TYPE. From-SVN: r196748
2013-03-16re PR c++/54277 (Template class member referred to with implicit this inside ↵Jason Merrill4-12/+41
lambda is incorrectly const-qualified) PR c++/54277 * cp-tree.h (WILDCARD_TYPE_P): Split out from... (MAYBE_CLASS_TYPE_P): ...here. * semantics.c (lambda_capture_field_type): Only build a magic decltype for wildcard types. (lambda_proxy_type): Likewise. (finish_non_static_data_member): Get the quals from the object. From-SVN: r196747
2013-03-16re PR c++/55931 ([C++11] Constexpr member function inside a static member is ↵Jason Merrill3-1/+30
not working) PR c++/55931 * parser.c (cp_parser_template_argument): Don't fold_non_dependent_expr. From-SVN: r196746
2013-03-16parser.c (cp_parser_lambda_declarator_opt): Use cp_parser_trailing_type_id.Jason Merrill2-1/+5
* parser.c (cp_parser_lambda_declarator_opt): Use cp_parser_trailing_type_id. From-SVN: r196745
2013-03-16re PR c++/45917 (inaccessible types allowed as template argument in ↵Jason Merrill3-1/+10
nested-name-specifier) PR c++/45917 * parser.c (cp_parser_template_id): Don't forget access checks. From-SVN: r196744
2013-03-16re PR c++/52374 ([C++11] Fails to transform id-expression into dependent ↵Jason Merrill3-1/+24
base member access in lambda expression) PR c++/52374 * pt.c (tsubst_qualified_id): Use current_nonlambda_class_type. From-SVN: r196743
2013-03-16re PR c++/54764 (In class initialization of non-static lambda member can't ↵Jason Merrill8-4/+51
be used in class with default template paramer) PR c++/54764 PR c++/55972 * name-lookup.h (tag_scope): Add ts_lambda. * semantics.c (begin_lambda_type): Use it. * decl.c (xref_tag_1): Set CLASSTYPE_LAMBDA_EXPR. * pt.c (check_default_tmpl_args): Ignore lambdas. (push_template_decl_real): Handle lambdas. * tree.c (no_linkage_check): Adjust lambda check. From-SVN: r196742
2013-03-16re PR c++/56039 (ICE in iterative_hash_template_arg, at cp/pt.c:1606)Jason Merrill3-1/+60
PR c++/56039 * tree.c (strip_typedefs_expr): Complain about lambda, don't abort. From-SVN: r196741
2013-03-16re PR c++/54359 ([C++0x] decltype in member function's trailing return type ↵Jason Merrill3-1/+32
when defined outside of class) PR c++/54359 * parser.c (cp_parser_direct_declarator): Fix late return for out-of-class defn of member function. From-SVN: r196740
2013-03-16re PR c++/55357 (-Wshadow warns about lambda function parameters matching ↵Jason Merrill3-1/+18
variables in outer scope) PR c++/55357 * semantics.c (maybe_add_lambda_conv_op): Clear DECL_NAME of copied parms to avoid duplicate -Wshadow warnings. From-SVN: r196739
2013-03-16* search.c (lookup_base): Handle NULL_TREE.Jason Merrill2-0/+10
From-SVN: r196738
2013-03-16re PR c++/56481 (endless loop compiling a C++ file)Jason Merrill2-0/+12
PR c++/56481 * semantics.c (potential_constant_expression_1): Use of 'this' in a non-constexpr function makes the expression not potentially constant. From-SVN: r196737
2013-03-16re PR c++/52748 ([C++11] N3276 changes to decltype)Jason Merrill7-35/+203
N3276 PR c++/52748 * cp-tree.h (tsubst_flags): Add tf_decltype. * call.c (build_cxx_call): Don't build a temporary if it's set. (build_over_call): Make sure it's only passed to build_cxx_call. * parser.c (cp_parser_primary_expression): Add decltype_p parm. (cp_parser_unary_expression): Likewise. (cp_parser_cast_expression): Likewise. (cp_parser_binary_expression): Likewise. (cp_parser_assignment_expression): Likewise. (cp_parser_postfix_expression): Likewise. Pass tf_decltype. (cp_parser_explicit_instantiation): Add decltype_p. Force a temporary for a call on the LHS of a comma. (cp_parser_decltype): Pass true to decltype_p parms. * pt.c (tsubst) [DECLTYPE_TYPE]: Pass tf_decltype. (tsubst_copy_and_build): Pass tf_decltype down only for CALL_EXPR and the RHS of COMPOUND_EXPR. * tree.c (build_cplus_new): Call complete_type_or_maybe_complain. From-SVN: r196736
2013-03-16cp-tree.h (abstract_class_use): New enum.Jason Merrill9-39/+120
* cp-tree.h (abstract_class_use): New enum. * typeck2.c (pending_abstract_type): Add use field. (abstract_virtuals_error_sfinae): Add overloads taking abstract_class_use instead of tree. * typeck.c (build_static_cast_1): Call it. * except.c (is_admissible_throw_operand_or_catch_parameter): Call it. * pt.c: Adjust calls. * decl.c (cp_finish_decl): Don't handle functions specially. (grokdeclarator): Always check return type. * init.c (build_new_1): Adjust call. From-SVN: r196735
2013-03-16DR 337 PR c++/17232Jason Merrill4-7/+25
DR 337 PR c++/17232 * pt.c (tsubst) [ARRAY_TYPE]: Use abstract_virtuals_error_sfinae. * typeck2.c (abstract_virtuals_error_sfinae): Call complete_type. From-SVN: r196734
2013-03-16DR 657Jason Merrill3-4/+34
DR 657 * pt.c (tsubst_function_type): Call abstract_virtuals_error_sfinae. (tsubst_arg_types): Likewise. From-SVN: r196733
2013-03-16DR 1518 PR c++/54835Jason Merrill3-15/+18
DR 1518 PR c++/54835 * call.c (convert_like_real): Check for explicit constructors even for value-initialization. From-SVN: r196732
2013-03-16re PR c++/54946 (ICE on template parameter from cast char-pointer in C++11 ↵Jason Merrill3-9/+29
constexpr struct) PR c++/54946 * pt.c (convert_nontype_argument): Handle invalid pointer. From-SVN: r196731
2013-03-16* parser.c (cp_parser_lambda_expression): Use nreverse.Jason Merrill2-13/+4
From-SVN: r196730
2013-03-16re PR c++/56447 ([C++11] Lambda in template has conversion op it shouldn't have)Jason Merrill4-7/+59
PR c++/56447 PR c++/55532 * pt.c (instantiate_class_template_1): Instantiate lambda capture list here. (tsubst_copy_and_build): Not here. From-SVN: r196729
2013-03-16re PR c++/55017 ([DR 1051] [C++11] Rvalue-reference member should cause copy ↵Jason Merrill3-0/+26
constructor to be deleted, but still declared) PR c++/55017 * method.c (walk_field_subobs): Disallow copy of rvalue ref. From-SVN: r196728
2013-03-16re PR c++/55240 ([c++0x] ICE on non-static data member initialization using ↵Jason Merrill5-3/+34
'auto' variable from containing function) PR c++/55240 * parser.c (parsing_nsdmi): New. * semantics.c (outer_automatic_var_p): Check it. (finish_id_expression): Likewise. * cp-tree.h: Declare it. From-SVN: r196727
2013-03-16re PR c++/55241 ([C++11] diagnostics show sizeof...(T) as sizeof(T...))Jason Merrill3-3/+23
PR c++/55241 * error.c (dump_expr) [SIZEOF_EXPR]: Print sizeof... properly. From-SVN: r196726
2013-03-16parser.c (lookup_literal_operator): Correct parm/arg naming mixup.Jason Merrill2-13/+15
* parser.c (lookup_literal_operator): Correct parm/arg naming mixup. From-SVN: r196725
2013-03-16re PR c++/56238 (ICE in tree check: expected record_type or union_type or ↵Jason Merrill2-3/+6
qual_union_type, have template_type_parm in lookup_conversions, at cp/search.c:2515) PR c++/56238 * pt.c (fold_non_dependent_expr_sfinae): Check instantiation_dependent_expression_p. From-SVN: r196724
2013-03-16re PR debug/49090 (provide a way to recognize defaulted template parameters)Jason Merrill3-7/+23
PR debug/49090 * dwarf2out.c (gen_generic_params_dies): Indicate default arguments with DW_AT_default_value. From-SVN: r196723
2013-03-16re PR c++/56095 (Crash casting function pointer as non-type template argument)Jason Merrill3-5/+16
PR c++/56095 * class.c (resolve_address_of_overloaded_function): Accept a reference to function for target_type. (instantiate_type): Likewise. * pt.c (convert_nontype_argument): Pass it to convert_nontype_argument_function. From-SVN: r196722
2013-03-17Daily bump.GCC Administrator1-1/+1
From-SVN: r196721
2013-03-16* tree.c (cp_tree_equal): Fix a pasto.Jakub Jelinek2-1/+3
From-SVN: r196705
2013-03-16re PR c++/56607 (GCC fails to warn on division by zero)Jakub Jelinek5-2/+77
PR c++/56607 * typeck.c (cp_build_binary_op): When calling warn_for_div_by_zero, pass op1 through maybe_constant_value first. * g++.dg/warn/Wdiv-by-zero-2.C: New test. * c-c++-common/pr56607.c: New test. From-SVN: r196704
2013-03-16re PR c++/56582 (ICE on negative array index in C++11 constant expression ↵Paolo Carlini4-2/+28
evaluation) /cp 2013-03-16 Paolo Carlini <paolo.carlini@oracle.com> PR c++/56582 * semantics.c (cxx_eval_array_reference): Check for negative index. /testsuite 2013-03-16 Paolo Carlini <paolo.carlini@oracle.com> PR c++/56582 * g++.dg/cpp0x/constexpr-array5.C: New. From-SVN: r196701
2013-03-16* gnatvsn.ads (Library_Version): Bump to 4.9.Eric Botcazou2-1/+5
From-SVN: r196700
2013-03-16* BASE-VER: Set to 4.9.0.Jakub Jelinek2-1/+5
From-SVN: r196697
2013-03-16Daily bump.GCC Administrator1-1/+1
From-SVN: r196694
2013-03-15* gcc.pot: Regenerate.Joseph Myers2-2315/+2367
From-SVN: r196683