X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=gcc%2Fcp%2FChangeLog;h=e48091f31174a9fedf3f2a88d36433a8377f69b4;hb=bf15119e6c63f70190d31244d6fd4e7223562ed9;hp=db16902f959c6137e37a1fda8d3b3b715dbaa770;hpb=1920cfdca933584b6f18384bd3f56eff4fe7078a;p=pf3gnuchains%2Fgcc-fork.git diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index db16902f959..e48091f3117 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,10 +1,171 @@ +2011-10-23 Paolo Carlini + + PR c++/50841 + Revert: + 2011-10-23 Paolo Carlini + + PR c++/50810 + * typeck2.c (check_narrowing): Adjust OPT_Wnarrowing diagnostics. + (digest_init_r): Call check_narrowing irrespective of the C++ dialect. + * decl.c (check_initializer): Likewise. + * semantics.c (finish_compound_literal): Likewise. + +2011-10-23 Paolo Carlini + + PR c++/50810 + * typeck2.c (check_narrowing): Adjust OPT_Wnarrowing diagnostics. + (digest_init_r): Call check_narrowing irrespective of the C++ dialect. + * decl.c (check_initializer): Likewise. + * semantics.c (finish_compound_literal): Likewise. + +2011-10-21 Paolo Carlini + + PR c++/45385 + * init.c (build_vec_init): Early return error_mark_node if + maxindex is -1. + +2011-10-21 Paolo Carlini + + PR c++/31423 + * typeck2.c (cxx_incomplete_type_diagnostic): Improve error message + for invalid use of member function. + +2011-10-21 Ville Voutilainen + + PR c++/50811 + * parser.c (cp_parser_class_head): Parse virt-specifiers + regardless of whether an id is present + +2011-10-20 Jason Merrill + + PR c++/41449 + * typeck2.c (split_nonconstant_init_1): Handle EH cleanup of + initialized subobjects. + +2011-10-19 Paolo Carlini + + PR c++/13657 + * class.c (instantiate_type): Fix error message. + +2011-10-19 Jason Merrill + + PR c++/50793 + * tree.c (bot_manip): Propagate AGGR_INIT_ZERO_FIRST. + +2011-10-19 Roland Stigge + + PR translation/49704 + * semantics.c (potential_constant_expression_1): Use "AST" instead of + "ast" in sorry message. + +2011-10-19 Paolo Carlini + + PR c++/38761 + PR c++/40872 + * decl.c (duplicate_decls, make_typename_type, grokdeclarator): Use + G_() in error message strings to facilitate translation. + * semantics.c (finish_id_expression): Likewise. + * parser.c (cp_parser_nested_name_specifier_opt, + cp_parser_parameter_declaration): Likewise. + +2011-10-18 Jason Merrill + + PR c++/50531 + * pt.c (instantiate_decl): Recognize when a function defaulted + outside the class is already instantiated. + + PR c++/50742 + * decl.c (check_previous_goto_1): Handle using-decl. + +2011-10-18 Jason Merrill + + PR c++/50500 + DR 1082 + * class.c (type_has_user_declared_move_constructor): New. + (type_has_user_declared_move_assign): New. + (add_implicitly_declared_members): Add lazy copy ops + even if there's a move. + * method.c (lazily_declare_fn): Delete implicit copies + if there's a move. + (maybe_explain_implicit_delete): Explain this. Use inform rather + than error. + * cp-tree.h: Declare new fns. + +2011-10-18 Diego Novillo + + * parser.c: Remove ENABLE_CHECKING markers around debugging + routines. + (cp_lexer_dump_tokens): Add arguments START_TOKEN and CURR_TOKEN. + Make static + When printing CURR_TOKEN surround it in [[ ]]. + Start printing at START_TOKEN. + Update all users. + (cp_debug_print_tree_if_set): New. + (cp_debug_print_context): New. + (cp_debug_print_context_stack): New. + (cp_debug_print_flag): New. + (cp_debug_print_unparsed_function): New. + (cp_debug_print_unparsed_queues): New. + (cp_debug_parser_tokens): New. + (cp_debug_parser): New. + (cp_lexer_start_debugging): Set cp_lexer_debug_stream to stderr. + (cp_lexer_stop_debugging): Set cp_lexer_debug_stream to NULL. + * parser.h (cp_lexer_dump_tokens): Remove declaration. + (cp_debug_parser): Declare. + +2011-10-17 Michael Spertus + + * cp-tree.def: Add BASES as a new tree code. + * cp-tree.h (enum cp_trait_kind): Add CPTK_BASES, CPTK_DIRECT_BASES. + (BASES_TYPE, BASES_DIRECT): Define. + (calculate_bases, finish_bases, calculate_direct_bases): Declare. + * parser.c (cp_parser_trait_expr, cp_parser_template_argument_list, + (cp_parser_simple_type_specifier, cp_parser_save_nsdmi): Use them. + * pt.c (find_parameter_packs_r, tsubst_pack_expansion): Likewise. + * semantics.c (calculate_bases, finish_bases, calculate_direct_bases, + dfs_calculate_bases_pre, dfs_calculate_bases_post, + calculate_bases_helper): Define. + +2011-10-17 Jason Merrill + + PR c++/50736 + * parser.c (cp_parser_lambda_introducer): Check for more + invalid captures. + +2011-10-17 Paolo Carlini + + PR c++/44524 + * typeck.c (build_class_member_access_expr): Provide a better error + message for X.Y where X is a pointer to class type. + (finish_class_member_access_expr): Likewise. + +2011-10-15 Tom Tromey + Dodji Seketeli + + * error.c (cp_diagnostic_starter): Pass the relevant location to + diagnostic_report_current_module. + (cp_diagnostic_finalizer): Call virt_loc_aware_diagnostic_finalizer. + +2011-10-17 Paolo Carlini + + PR c++/48489 + * typeck.c (finish_class_member_access_expr): Fix error call + for TREE_CODE (access_path) == TREE_BINFO. + +2011-10-15 Paolo Carlini + + PR c++/50732 + * semantics.c (finish_trait_expr): Do not try to instantiate the + the base type of an __is_base_of trait. + (check_trait_type): Return a tree; use complete_type_or_else. + 2011-10-14 Jason Merrill PR c++/50563 * parser.c (cp_parser_cache_group): Handle end==CPP_COMMA. (cp_parser_save_nsdmi): Pass it. - PR c++/50507 + PR c++/50707 * method.c (walk_field_subobs): Check for NSDMI before complaining about uninitialized fields.