+2016-02-25 Jason Merrill <jason@redhat.com>
+
+ PR c++/69889
+ * cp-tree.h (AGGR_INIT_FROM_THUNK_P): New.
+ * tree.c (build_aggr_init_expr): Set it.
+ * semantics.c (simplify_aggr_init_expr): Check it.
+ * cp-gimplify.c (cp_genericize_r): Don't walk into
+ a call/aggr_init from a thunk.
+
+ PR c++/69842
+ * method.c (forward_parm): Handle parameter packs.
+ * lambda.c (maybe_add_lambda_conv_op): Use it for them.
+
+ PR c++/67364
+ * constexpr.c (cxx_eval_component_reference): Don't complain about
+ unevaluated empty classes.
+
+ PR c++/68049
+ * tree.c (strip_typedefs): Use DECL_ORIGINAL_TYPE.
+
+2016-02-25 Patrick Palka <ppalka@gcc.gnu.org>
+
+ PR c++/69736
+ * cp-tree.h (REF_PARENTHESIZED_P): Adjust documentation.
+ (maybe_undo_parenthesized_ref): Declare.
+ * semantics.c (maybe_undo_parenthesized_ref): Split out from
+ check_return_expr.
+ (finish_call_expr): Use it.
+ * typeck.c (check_return_expr): Use it.
+ * pt.c (tsubst_copy_and_build) [INDIRECT_REF]: Retain the
+ REF_PARENTHESIZED_P flag.
+
+2016-02-24 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/69922
+ * class.c (build_base_path): Set TREE_NO_WARNING on the null_test.
+ Avoid folding it.
+ * init.c (build_vec_delete_1, build_delete): Don't fold the non-NULL
+ tests.
+ * cp-gimplify.c (cp_fold): For TREE_NO_WARNING comparisons with NULL,
+ unless they are folded into INTEGER_CST, error_mark_node or some
+ comparison with NULL, avoid folding them and use either the original
+ comparison or non-folded comparison of folded arguments.
+ * cp-ubsan.c (cp_ubsan_instrument_vptr): Set TREE_NO_WARNING on the
+ comparison, don't fold the comparison right away.
+
+2016-02-24 Jason Merrill <jason@redhat.com>
+
+ PR c++/69323
+ * friend.c (make_friend_class): Likewise.
+ * decl.c (lookup_and_check_tag): Diagnose invalid dependent friend.
+
+2016-02-24 Jason Merrill <jason@redhat.com>
+
+ PR c++/69323
+ * pt.c (instantiate_class_template_1): Set
+ processing_template_decl before substituting friend_type.
+
+016-02-24 Martin Sebor <msebor@redhat.com>
+
+ PR c++/69912
+ * tree.c (build_ctor_subob_ref): Compare types' main variants
+ instead of the types as they are.
+
+2016-02-24 Jason Merrill <jason@redhat.com>
+
+ * decl.c (start_preparsed_function): Condition ctor clobber on
+ flag_lifetime_dse > 1.
+
+ * cp-gimplify.c (cp_fold): Don't fold constexpr calls if -fno-inline.
+
+2016-02-19 Jason Merrill <jason@redhat.com>
+
+ PR c++/69743
+ * call.c (remaining_arguments): No longer static.
+ * cp-tree.h: Declare it.
+ * pt.c (more_specialized_fn): Use it.
+
+2016-02-19 Jakub Jelinek <jakub@redhat.com>
+ Bernd Edlinger <bernd.edlinger@hotmail.de>
+
+ * Make-lang.in: Invoke gperf with -L C++.
+ * cfns.gperf: Remove prototypes for hash and libc_name_p
+ inlines.
+ * cfns.h: Regenerated.
+ * except.c (nothrow_libfn_p): Adjust.
+
+2016-02-19 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/69850
+ * rtti.c (ifnonnull): Set TREE_NO_WARNING on the condition, use
+ NE_EXPR instead of EQ_EXPR and swap last two arguments on COND_EXPR.
+
+2016-02-19 Patrick Palka <ppalka@gcc.gnu.org>
+
+ PR c++/68948
+ * pt.c (tsubst_baselink): Don't diagnose an invalid constructor
+ call here.
+ * semantics.c (finish_call_expr): Don't assume a constructor
+ call is dependent if only the "this" pointer is dependent. When
+ building a constructor call, always use a dummy object.
+
+2016-02-19 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/69850
+ * init.c (build_vec_delete_1): Set TREE_NO_WARNING on the NE_EXPR
+ condition.
+ * cp-gimplify.c (cp_fold): Propagate TREE_NO_WARNING from binary
+ operators if folding preserved the binop, just with different
+ arguments.
+
+ PR c++/67767
+ * parser.c (cp_parser_std_attribute_spec_seq): Don't assume
+ attr_spec is always single element chain, chain all the attributes
+ properly together in the right order.
+
+2016-02-18 Jason Merrill <jason@redhat.com>
+
+ * mangle.c (maybe_check_abi_tags): Add for_decl parm. Call
+ mangle_decl.
+ (mangle_decl): Call maybe_check_abi_tags for function scope.
+ (mangle_guard_variable): Call maybe_check_abi_tags here.
+ (write_guarded_var_name): Not here.
+
+2016-02-17 Jason Merrill <jason@redhat.com>
+
+ PR c++/65985
+ * constexpr.c (build_constexpr_constructor_member_initializers):
+ Handle an additional STATEMENT_LIST.
+
+ PR c++/68585
+ * constexpr.c (cxx_eval_bare_aggregate): Fix 'changed' detection.
+
+ PR c++/68679
+ * decl2.c (reset_type_linkage_2): Look through member templates.
+
+2016-02-17 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/69850
+ * init.c (build_delete): Set TREE_NO_WARNING on ifexp.
+
+2016-02-17 Jason Merrill <jason@redhat.com>
+
+ PR c++/69842
+ * method.c (forward_parm): Split out from...
+ (add_one_base_init): ...here.
+ * lambda.c (maybe_add_lambda_conv_op): Use it.
+
+2016-02-16 Jason Merrill <jason@redhat.com>
+
+ PR c++/10200
+ PR c++/69753
+ * call.c, cp-tree.h, name-lookup.c, pt.c, search.c, semantics.c,
+ tree.c, typeck2.c: Revert earlier changes.
+ * parser.c (cp_parser_lookup_name): Ignore namespace-scope
+ non-type templates after -> or .
+
+2016-02-16 Jakub Jelinek <jakub@redhat.com>
+
+ PR c/69835
+ * typeck.c (cp_build_binary_op): Revert 2015-09-09 change.
+
+2016-02-16 Jason Merrill <jason@redhat.com>
+
+ PR c++/69657
+ * name-lookup.c (lookup_qualified_name): Add find_hidden parm.
+ (set_decl_namespace): Pass it. Complain about finding a hidden friend.
+ * name-lookup.h: Adjust.
+
+2016-02-16 James Norris <jnorris@codesourcery.com>
+
+ * parser.c (cp_parser_oacc_data_clause_deviceptr): Remove checking.
+ * semantics.c (finish_omp_clauses): Add deviceptr checking.
+
+2016-02-15 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/69658
+ * init.c (expand_default_init): Only call reshape_init
+ in the direct-initialization from an initializer list case.
+
+2016-02-15 Jason Merrill <jason@redhat.com>
+
+ PR c++/69753
+ * semantics.c (finish_call_expr): Implicit 'this' does not make
+ the call dependent.
+ * search.c (any_dependent_bases_p): Split out...
+ * name-lookup.c (do_class_using_decl): ...from here.
+ * call.c (build_new_method_call_1): Don't complain about missing object
+ if there are dependent bases. Tweak error.
+ * tree.c (non_static_member_function_p): Remove.
+ * pt.c (type_dependent_expression_p): A member template of a
+ dependent type is dependent.
+ * cp-tree.h: Adjust.
+
+ PR c++/68890
+ * constexpr.c (verify_ctor_sanity): Remove CONSTRUCTOR_NELTS check.
+
+2016-02-12 Patrick Palka <ppalka@gcc.gnu.org>
+
+ PR c++/69098
+ * pt.c (lookup_and_finish_template_variable): New function,
+ extracted from ...
+ (tsubst_copy_and_build) [TEMPLATE_ID_EXPR]: ... here. Use it.
+ (tsubst_qualified_id): Consider that EXPR might be a variable
+ template.
+ * typeck.c (check_template_keyword): Don't emit an error
+ if DECL is a variable template.
+
+2016-02-12 Jakub Jelinek <jakub@redhat.com>
+
+ * error.c: Spelling fixes - behaviour -> behavior and
+ neighbour -> neighbor.
+ * decl.c: Likewise.
+ * typeck.c (cp_build_binary_op): Fix up behavior spelling in
+ diagnostics.
+ * init.c (build_delete): Likewise.
+
+2016-02-11 Jakub Jelinek <jakub@redhat.com>
+
+ PR c/69768
+ * typeck.c (cp_build_binary_op): cp_fully_fold integer_zerop
+ arguments for -Waddress warning. Fix up formatting.
+
+2016-02-11 Paolo Carlini <paolo.carlini@oracle.com>
+
+ PR c++/68726
+ * pt.c (lookup_template_class_1): Check tsubst return value for
+ error_mark_node.
+
2016-02-10 Jason Merrill <jason@redhat.com>
+ PR c++/68926
+ * pt.c (resolve_nondeduced_context): Add complain parm.
+ (do_auto_deduction): Pass it.
+ * cvt.c (convert_to_void): Likewise.
+ * decl.c (cp_finish_decl): Likewise.
+ * init.c (build_new): Likewise.
+ * rtti.c (get_tinfo_decl_dynamic): Likewise.
+ * semantics.c (finish_decltype_type): Likewise.
+ * typeck.c (decay_conversion): Likewise.
+ * cp-tree.h: Adjust declaration.
+ * call.c (standard_conversion): Add complain parm, pass it along.
+ (implicit_conversion): Pass it.
+
PR c++/69657
* name-lookup.c (ambiguous_decl): Call remove_hidden_names.
(lookup_name_real_1): Likewise.