+2012-04-14 Jan Hubicka <jh@suse.cz>
+
+ * tree.c: Update field referenced for new cgraph/varpool layout.
+ * decl2.c: Likewise.
+
+2012-04-13 Jason Merrill <jason@redhat.com>
+
+ PR c++/52824
+ * pt.c (any_pack_expanson_args_p): New.
+ (coerce_template_parms): Use it.
+
+ PR c++/52905
+ * call.c (joust): Handle comparing list and non-list ctors.
+
+ PR c++/52915
+ * decl2.c (finish_anon_union): Use cp_finish_decl.
+ * error.c (dump_function_name): Avoid showing anonymous "name".
+
+2012-04-11 Fabien Chêne <fabien@gcc.gnu.org>
+
+ PR c++/52465
+ * parser.c (cp_parser_class_name): Call strip_using_decl and
+ return the target decl.
+ * name-lookup.c (strip_using_decl): Returns NULL_TREE if the decl
+ to be stripped is NULL_TREE.
+ (qualify_lookup): Call strip_using_decl and perform some checks on
+ the target decl.
+
+2012-04-11 Jason Merrill <jason@redhat.com>
+
+ PR debug/45088
+ * decl.c (grokdeclarator): Strip the injected-class-name typedef
+ if we are building a declaration or compound type.
+
+ PR c++/52906
+ * decl.c (check_tag_decl): Don't complain about attributes if we
+ don't even have a type.
+
+2012-04-10 Manuel López-Ibáñez <manu@gcc.gnu.org>
+
+ * cvt.c (convert_to_void): Update comment.
+
+2012-04-05 Jason Merrill <jason@redhat.com>
+
+ PR c++/52596
+ * semantics.c (finish_non_static_data_member): In templates, pass
+ the decl to build_qualified_name.
+ * tree.c (lvalue_kind) [SCOPE_REF]: Handle FIELD_DECL.
+
+2012-04-04 Jason Merrill <jason@redhat.com>
+
+ PR c++/52845
+ * decl.c (finish_function): Update fntype after deducing return type.
+
+2012-04-03 Jason Merrill <jason@redhat.com>
+
+ PR c++/52796
+ * pt.c (tsubst_initializer_list): A pack expansion with no elements
+ means value-initialization.
+
+2012-04-01 Paolo Carlini <paolo.carlini@oracle.com>
+
+ PR c++/50043
+ * class.c (deduce_noexcept_on_destructor,
+ deduce_noexcept_on_destructors): New.
+ (check_bases_and_members): Call the latter.
+ * decl.c (grokfndecl): Call the former.
+ * method.c (implicitly_declare_fn): Not static.
+ * cp-tree.h (deduce_noexcept_on_destructor, implicitly_declare_fn):
+ Declare
+
+2012-03-29 Paolo Carlini <paolo.carlini@oracle.com>
+
+ PR c++/52718
+ * decl.c (check_default_argument): With -Wzero-as-null-pointer-constant
+ warn for a zero as null pointer constant default argument.
+
+2012-03-29 Jason Merrill <jason@redhat.com>
+
+ PR c++/52685
+ * tree.c (copy_binfo): Handle BINFO_DEPENDENT_BASE_P.
+
+2012-03-29 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/52759
+ * decl.c (start_decl): Don't call maybe_apply_pragma_weak
+ if processing_template_decl.
+
+2012-03-29 Jason Merrill <jason@redhat.com>
+
+ PR c++/52743
+ * call.c (compare_ics): Handle ck_aggr like ck_list.
+
+2012-03-28 Jason Merrill <jason@redhat.com>
+
+ PR c++/52746
+ * typeck.c (lookup_destructor): Clear BASELINK_QUALIFIED_P if
+ we didn't get an explicit scope.
+ * pt.c (tsubst_baselink): Likewise.
+
+2012-03-28 Richard Guenther <rguenther@suse.de>
+
+ * typeck2.c (process_init_constructor_array): Use the proper
+ type for computing the array length.
+
+2012-03-27 Meador Inge <meadori@codesourcery.com>
+
+ PR c++/52672
+ * semantics.c (cxx_fold_indirect_ref): Don't attempt to fold
+ stripped child trees that are not pointer types.
+
+2012-03-21 Jason Merrill <jason@redhat.com>
+
+ Implement return type deduction for normal functions with -std=c++1y.
+ * cp-tree.h (FNDECL_USED_AUTO): New macro.
+ (LAMBDA_EXPR_DEDUCE_RETURN_TYPE_P): Remove.
+ (dependent_lambda_return_type_node): Remove.
+ (CPTI_DEPENDENT_LAMBDA_RETURN_TYPE): Remove.
+ (struct language_function): Add x_auto_return_pattern field.
+ (current_function_auto_return_pattern): New.
+ (enum tsubst_flags): Add tf_partial.
+ * decl.c (decls_match): Handle auto return comparison.
+ (duplicate_decls): Adjust error message for auto return.
+ (cxx_init_decl_processing): Remove dependent_lambda_return_type_node.
+ (cp_finish_decl): Don't do auto deduction for functions.
+ (grokdeclarator): Allow auto return without trailing return type in
+ C++1y mode.
+ (check_function_type): Defer checking of deduced return type.
+ (start_preparsed_function): Set current_function_auto_return_pattern.
+ (finish_function): Set deduced return type to void if not previously
+ deduced.
+ * decl2.c (change_return_type): Handle error_mark_node.
+ (mark_used): Always instantiate functions with deduced return type.
+ Complain about use if deduction isn't done.
+ * parser.c (cp_parser_lambda_declarator_opt): Use 'auto' for
+ initial return type.
+ (cp_parser_lambda_body): Don't deduce return type in a template.
+ (cp_parser_conversion_type_id): Allow auto in C++1y.
+ * pt.c (instantiate_class_template_1): Don't mess with
+ LAMBDA_EXPR_DEDUCE_RETURN_TYPE_P.
+ (tsubst_copy_and_build): Likewise.
+ (fn_type_unification, tsubst): Don't reduce the template parm level
+ of 'auto' during deduction.
+ (unify): Compare 'auto' specially.
+ (get_bindings): Change test.
+ (always_instantiate_p): Always instantiate functions with deduced
+ return type.
+ (do_auto_deduction): Handle error_mark_node and lambda context.
+ Don't check for use in initializer.
+ (contains_auto_r): Remove.
+ * search.c (lookup_conversions_r): Handle auto conversion function.
+ * semantics.c (lambda_return_type): Handle null return. Don't mess
+ with dependent_lambda_return_type_node.
+ (apply_deduced_return_type): Rename from apply_lambda_return_type.
+ * typeck.c (merge_types): Handle auto.
+ (check_return_expr): Do auto deduction.
+ * typeck2.c (add_exception_specifier): Fix complain check.
+
+2012-03-22 Paolo Carlini <paolo.carlini@oracle.com>
+
+ PR c++/52487
+ * class.c (check_field_decls): Call literal_type_p only
+ on complete types.
+
+2012-03-22 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/52671
+ * decl.c (check_tag_decl): Only use CLASSTYPE_TEMPLATE_INSTANTIATION
+ on CLASS_TYPE_P types.
+
+2012-03-20 Jason Merrill <jason@redhat.com>
+
+ * lex.c (init_reswords): Use >= for cxx_dialect test.
+ * parser.c (cp_parser_exception_specification_opt): Likewise.
+
+ * mangle.c (write_type): Handle 'auto'.
+ * init.c (build_new): Don't do auto deduction where it might
+ affect template mangling.
+
+ PR c++/52510
+ * decl.c (reshape_init_class): Handle repeated reshaping.
+ * search.c (lookup_field_1): Add sanity check.
+
+2012-03-19 Paolo Carlini <paolo.carlini@oracle.com>
+
+ PR c++/14710
+ * cp-tree.h (xvalue_p, maybe_warn_about_useless_cast): Declare.
+ * tree.c (xvalue_p): Define.
+ * typeck.c (maybe_warn_about_useless_cast): Define.
+ (build_reinterpret_cast, build_const_cast,
+ build_static_cast, cp_build_c_cast): Use maybe_warn_about_useless_cast.
+ * rtti.c (build_dynamic_cast): Likewise.
+ * pt.c (tsubst_copy_and_build, case CAST_EXPR): Increment/decrement
+ c_inhibit_evaluation_warnings before/after the build_* calls.
+
+2012-03-15 Jason Merrill <jason@redhat.com>
+
+ PR c++/52582
+ * method.c (implicitly_declare_fn): Set DECL_EXTERNAL.
+
+2012-03-15 Manuel López-Ibáñez <manu@gcc.gnu.org>
+
+ PR c++/44783
+ * error.c (print_instantiation_partial_context): Use
+ template_backtrace_limit.
+
+2012-03-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ * Make-lang.in (doc/g++.1): Remove IRIX 6.5 reference.
+
+2012-03-14 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/52521
+ * parser.c (lookup_literal_operator): Return fn only if
+ processed all arguments from args vector and argtypes is
+ void_list_node.
+
+2012-01-30 Dodji Seketeli <dodji@redhat.com>
+
+ PR c++/51641
+ * cp-tree.h (template_type_parameter_p): Declare new function.
+ (parameter_of_template_p): Remove.
+ * pt.c (template_type_parameter_p): Define new function.
+ (parameter_of_template_p): Remove.
+ * name-lookup.c (binding_to_template_parms_of_scope_p): Don't rely
+ on parameter_of_template_p anymore. Compare the level of the
+ template parameter to the depth of the template.
+
+2011-12-15 Dodji Seketeli <dodji@redhat.com>
+
+ * call.c (standard_conversion, build_integral_nontype_arg_conv)
+ (build_new_op_1, convert_like_real, is_subseq)
+ (maybe_handle_implicit_object, maybe_handle_ref_bind, compare_ics)
+ (joust): Use next_conversion instead of accessing fields of struct
+ conversion directly.
+
+2012-03-12 Paolo Carlini <paolo.carlini@oracle.com>
+
+ PR c++/52299
+ * pt.c (tsubst_copy_and_build, case COND_EXPR): Avoid bogus
+ division by zero warnings.
+
+2012-03-08 Paolo Carlini <paolo.carlini@oracle.com>
+
+ * typeck.c (build_array_ref, cp_build_addr_expr_1, convert_ptrmem,
+ build_ptrmemfunc): Consistently forward the tsubst_flags_t
+ parameter.
+ * call.c (resolve_args): Likewise.
+
+2012-03-07 Jason Merrill <jason@redhat.com>
+
+ PR c++/52521
+ * mangle.c (write_literal_operator_name): The length comes after the
+ operator prefix.
+
+2012-03-05 Jakub Jelinek <jakub@redhat.com>
+
+ * pt.c (local_specializations): Change from htab_t into
+ struct pointer_map_t *.
+ (retrieve_local_specializations, register_local_specialization,
+ tsubst_pack_expansion, instantiate_decl): Adjust users.
+ (eq_local_specializations, hash_local_specialization): Remove.
+
+2012-03-05 Jason Merrill <jason@redhat.com>
+
+ PR c++/51930
+ * decl2.c (determine_visibility): Correct calculation of class
+ args depth.
+ * decl.c (check_tag_decl): Adjust warning.
+
+ * method.c (synthesized_method_walk): Cleanups don't affect the EH
+ spec either.
+
+2012-03-03 Jason Merrill <jason@redhat.com>
+
+ * init.c (perform_member_init): Cope with uninstantiated NSDMI.
+
+ Core 1270
+ * call.c (build_aggr_conv): Call reshape_init.
+ (convert_like_real): Likewise.
+ * typeck2.c (process_init_constructor): Clear TREE_CONSTANT if
+ not all constant.
+
+ * mangle.c (write_nested_name): Use decl_mangling_context.
+ (write_prefix, write_template_prefix): Likewise.
+
+ PR c++/36797
+ * mangle.c (write_expression): Improve diagnostic for TRAIT_EXPR.
+
+ * class.c (add_method): Always build an OVERLOAD for using-decls.
+ * search.c (lookup_member): Handle getting an OVERLOAD for a
+ single function.
+
+2012-03-02 Paolo Carlini <paolo.carlini@oracle.com>
+
+ PR c++/51989
+ * typeck2.c (build_x_arrow): Take a tsubst_flags_t argument and
+ propagate it.
+ * cp-tree.h (build_x_arrow): Adjust prototype.
+ * pt.c (tsubst_copy_and_build): Adjust call.
+ * parser.c (cp_parser_postfix_dot_deref_expression): Likewise.
+
+2012-03-02 Paolo Carlini <paolo.carlini@oracle.com>
+
+ * name-lookup.c (binding_to_template_parms_of_scope_p): Clean up.
+
+2012-02-29 Jason Merrill <jason@redhat.com>
+
+ PR c++/51930
+ * decl.c (check_tag_decl): Move warning for misplaced attributes here.
+ (shadow_tag): From here.
+ * parser.c (cp_parser_explicit_instantiation): Don't warn here.
+
+2012-02-21 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/52312
+ * typeck.c (check_literal_operator_args): Initialize *long_double_p
+ and *long_long_unsigned_p even if processing_template_decl.
+
2012-02-16 Jason Merrill <jason@redhat.com>
PR c++/52248