+2009-12-22 Jason Merrill <jason@redhat.com>
+
+ PR c++/42331
+ * typeck.c (cp_build_modify_expr): Fix thinko.
+
+2009-12-21 Jason Merrill <jason@redhat.com>
+
+ * mangle.c (write_member_name): Move abi-version=1 code back to...
+ (write_expression): ...here.
+
+2009-12-21 Brian Hackett <bhackett1024@gmail.com>
+
+ * decl.c (finish_function): Rename pre-genericize event.
+
+2009-12-19 Dodji Seketeli <dodji@redhat.com>
+
+ PR c++/42225
+ * pt.c (push_template_decl_real): Set DECL_CONTEXT of template type parms
+ to their containing template decl.
+ * typeck.c (comp_template_parms_position): Split this from
+ structural_comptypes.
+ (incompatible_template_type_parms_p): Renamed
+ incompatible_dependent_typedefs_p into this. Change the function to
+ handle comparison between TEMPLATE_TYPE_PARMs only.
+ (structural_comptypes): Use comp_template_parms_position in
+ TEMPLATE_TEMPLATE_PARM and BOUND_TEMPLATE_TEMPLATE_PARM cases.
+ Use incompatible_template_type_parms_p in TEMPLATE_TYPE_PARM case.
+ * mangle.c (decl_mangling_context): Template type parms don't have
+ a mangling context.
+ * tree.c (cp_set_underlying_type): Set type structural equality
+ only for TEMPLATE_TYPE_PARMs.
+
+2009-12-18 Jason Merrill <jason@redhat.com>
+
+ PR c++/28300
+ PR c++/42062
+ * pt.c (check_specialization_namespace): Complain about
+ specialization at non-namespace scope.
+
+ PR c++/42415
+ * call.c (build_new_method_call): Complain about calling the
+ constructor directly.
+
+2009-12-18 Shujing Zhao <pearly.zhao@oracle.com>
+
+ PR c++/31665
+ * decl.c (duplicate_decls, grokdeclarator): Put the diagnostics in
+ full sentences for easy translation and wrapped into G_().
+ * typeck.c (build_x_unary_op): Likewise.
+
+2009-12-17 Shujing Zhao <pearly.zhao@oracle.com>
+
+ * call.c (build_over_call, build_java_interface_fn_ref): Update
+ cp_build_indirect_ref calls.
+ * typeck2.c (build_m_component_ref): Likewise.
+
+2009-12-17 Shujing Zhao <pearly.zhao@oracle.com>
+
+ * typeck.c (build_indirect_ref): Update the argument.
+ (build_x_indirect_ref): Likewise.
+ (cp_build_indirect_ref): Update the argument and emit the diagnostics
+ for easy translation.
+ (build_class_member_access_expr, build_array_ref,
+ get_member_function_from_ptrfunc): Update calls.
+ * cp-tree.h (build_x_indirect_ref, cp_build_indirect_ref): Update
+ prototypes.
+ * call.c (build_new_op, convert_like_real, build_x_va_arg,
+ build_over_call): Update calls.
+ * class.c (build_base_path, build_simple_base_path, build_vfn_ref):
+ Likewise.
+ * decl.c (start_preparsed_function): Likewise.
+ * except.c (expand_start_catch_block, build_throw): Likewise.
+ * init.c (emit_mem_initializers, expand_virtual_init,
+ expand_virtual_init, build_new_1, build_vec_init, build_delete,
+ build_vec_delete): Likewise.
+ * parser.c (cp_parser_unary_expression): Likewise.
+ * pt.c (tsubst_copy_and_build): Likewise.
+ * rtti.c (build_headof, get_tinfo_decl_dynamic, get_typeid): Likewise.
+ * semantics.c (finish_non_static_data_member, thisify_lambda_field):
+ Likewise.
+ * tree.c (build_dummy_object, stabilize_expr): Likewise.
+ * typeck2.c (build_x_arrow): Likewise.
+
+2009-12-16 Jason Merrill <jason@redhat.com>
+
+ PR c++/42387
+ * decl.c (compute_array_index_type): Mark a VLA as dependent.
+
+2009-12-15 Jason Merrill <jason@redhat.com>
+
+ PR c++/42358
+ * pt.c (iterative_hash_template_arg): Completely ignore
+ ARGUMENT_PACK_SELECT.
+
+2009-12-15 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/41183
+ * cp-tree.h (current_class_ptr): Give NULL even when cfun
+ has NULL cfun->language.
+
+2009-12-14 Jason Merrill <jason@redhat.com>
+
+ PR c++/42364
+ * pt.c (function_parameter_expanded_from_pack_p): Don't require
+ a pack to have a name.
+ (tsubst_decl): Do typedef magic after applying attributes.
+
+2009-12-15 Paolo Bonzini <bonzini@gnu.org>
+ Shujing Zhao <pearly.zhao@oracle.com>
+
+ * Makefile.in (cp/pt.o): Depend on intl.h
+ * call.c (print_z_candidates): Make loop more compact,
+ choose head string depending on number of candidates,
+ extract creation of spaces string to intl.c.
+ * pt.c (print_overloaded_functions): Replace with...
+ (print_candidates_1): ... this rewrite.
+ (print_candidates): Rewrite to call print_candidates_1.
+ (most_specialized_class): Make loop more compact,
+ choose head string depending on number of candidates,
+ and size indents depending on translations.
+
+2009-12-11 Jason Merrill <jason@redhat.com>
+
+ PR c++/42219
+ * typeck.c (error_type_p): New.
+ (ptr_reasonably_similar): Use it.
+ * cp-tree.h: Declare it.
+
+2009-12-11 Dodji Seketeli <dodji@redhat.com>
+
+ PR c++/42225
+ * typeck.c (incompatible_dependent_typedefs_p): New function.
+ (structural_comptypes): Use it.
+ * cp-tree.h (cp_set_underlying_type): Declare ...
+ * tree.c (cp_set_underlying_type): ... new function.
+ * class.c (build_self_reference): Use cp_set_underlying_type
+ instead of set_underlying_type.
+ * decl2.c (grokfield): Likewise.
+ * name-lookup.c (pushdecl_maybe_friend): Likewise.
+
+2009-12-11 Dodji Seketeli <dodji@redhat.com>
+
+ PR c++/42251
+ * pt.c (convert_template_argument): Avoid missing folding of SCOPE_REFs.
+
+2009-12-10 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/42317
+ * decl2.c (cp_write_global_declarations): Clear DECL_EXTERNAL
+ also on all other functions in the same comdat group.
+ * optimize.c (maybe_clone_body): Also optimize virtual implicit
+ dtors. For virtual comdat dtors tell cgraph that base and deleting
+ dtor are in the same comdat group.
+
+2009-12-04 Jason Merrill <jason@redhat.com>
+
+ PR c++/42010
+ * cp-tree.h (DECL_DISCRIMINATOR_SET_P): New.
+ * mangle.c (discriminator_for_local_entity): Check it.
+
+ PR c++/42277
+ * semantics.c (finish_decltype_type): Defer handling of decltype
+ of a non-dependent COMPONENT_REF in a template.
+
+2009-12-04 Dodji Seketeli <dodji@redhat.com>
+
+ PR c++/42218
+ * cxx-pretty-print.c (pp_cxx_unqualified_id): Print only innermost
+ template arguments.
+
+2009-12-03 Jason Merrill <jason@redhat.com>
+
+ PR c++/41611
+ * decl2.c (get_guard): Don't use the same comdat group as the decl.
+
+ PR c++/42266
+ * cvt.c (convert_from_reference): Do nothing if TREE_TYPE is null.
+
+2009-12-03 Dodji Seketeli <dodji@redhat.com>
+
+ PR c++/42217
+ * class.c (remove_zero_width_bit_fields): The width of the bit field is
+ in DECL_SIZE, not in DECL_INITIAL.
+
+2009-12-03 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/42256
+ * optimize.c (maybe_clone_body): Call emit_associated_thunks
+ after expand_or_defer_fn_1.
+
+2009-12-02 Taras Glek <taras@mozilla.com>
+
+ * parser.c (cp_parser_class_specifier): Back out my previous change.
+ * semantics.c (begin_class_definition): Back out my previous change.
+
+2009-12-02 Paolo Bonzini <bonzini@gnu.org>
+ Shujing Zhao <pearly.zhao@oracle.com>
+
+ PR c++/29917
+ * call.c (op_error): Accept a boolean to indicate no match/ambiguous
+ match, instead of a string. Callers adjusted.
+
+ PR c++/34836
+ * cp-tree.h (readonly_error_kind): New type.
+ (readonly_error): Adjust prototype with new argument.
+ * typeck2.c (readonly_error): Accept readonly_error_kind as argument
+ and add macro ERROR_FOR_ASSIGNMENT to emit diagnostics.
+ * semantics.c (finish_asm_stmt): Adjust readonly_error call.
+ * typeck.c (cp_build_unary_op, cp_build_modify_expr): Likewise.
+
+ * decl.c (grokparms, grok_op_properties): Put the diagnostics in full
+ sentences for easy translation and wrap the diagnostics into G_() when
+ needed.
+ (create_array_type_for_decl): Likewise.
+ * pt.c (tsubst): Likewise.
+ * typeck2.c (cp_build_unary_op): Wrap diagnostic into _().
+ * rtti.c (build_dynamic_cast_1): Likewise.
+ * Make-lang.in: Adjust.
+
2009-12-02 Jakub Jelinek <jakub@redhat.com>
* g++spec.c (lang_specific_driver): Remove unused saw_verbose_flag