diff options
Diffstat (limited to 'gcc/cp/ChangeLog')
-rw-r--r-- | gcc/cp/ChangeLog | 185 |
1 files changed, 185 insertions, 0 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index c40efcfc2cf..9618a28dadd 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,188 @@ +2016-05-20 Nathan Sidwell <nathan@acm.org> + + * constexpr.c (cxx_bind_parameters_in_call): Avoid gratuitous if + ... goto. + (cxx_eval_call_expression): Fix comment grammar. + +2016-05-20 Paolo Carlini <paolo.carlini@oracle.com> + + PR c++/70572 + * decl.c (cp_finish_decl): Check do_auto_deduction return value + and return immediately in case of erroneous code. + +2016-05-19 Marek Polacek <polacek@redhat.com> + + PR c++/71075 + * pt.c (unify_template_argument_mismatch): Use %qE instead of %qD. + +2016-05-19 Jason Merrill <jason@redhat.com> + + PR c++/10200 + * pt.c (fn_type_unification): Add outer template args if needed. + (type_unification_real): Handle getting full args. + +2016-05-19 David Malcolm <dmalcolm@redhat.com> + + PR c++/71184 + * parser.c (cp_parser_operator): For array new/delete, check that + cp_parser_require returned a non-NULL token before dereferencing + it. + +2016-05-19 Bernd Edlinger <bernd.edlinger@hotmail.de> + + * decl.c (finish_enum_value_list): Use the specified mode. + +2016-05-18 Jason Merrill <jason@redhat.com> + + * pt.c (value_dependent_expression_p): Tweak new cases to better + match the wording in the standard. + +2016-05-18 Paolo Carlini <paolo.carlini@oracle.com> + + PR c++/69793 + * parser.c (cp_parser_template_id): Don't call cp_lexer_peek_nth_token + when the previous cp_lexer_peek_token returns CPP_EOF. + +2016-05-18 Paolo Carlini <paolo.carlini@oracle.com> + + PR c++/70466 + * call.c (convert_like_real): Check that we are actually converting + from an init list. + +2016-05-16 Matthew Wahab <matthew.wahab@arm.com> + + * decl.c (grokdeclarator): Remove errmsg and use of + targetm.invalid_return_type. + (grokparms): Remove errmsg and use of + targetm.invalid_parameter_type. + +2016-05-13 Jason Merrill <jason@redhat.com> + + PR c++/10200 + PR c++/69753 + * pt.c (tsubst_decl): Use uses_template_parms. + (instantiate_template_1): Handle non-dependent calls in templates. + (value_dependent_expression_p): Handle BASELINK, FUNCTION_DECL. + (type_dependent_expression_p): Only consider innermost template args. + (dependent_template_arg_p): Check enclosing class of a template here. + (dependent_template_p): Not here. + (type_dependent_object_expression_p): New. + * typeck.c (finish_class_member_access_expr): Use it. + * parser.c (cp_parser_postfix_expression): Use it. + (cp_parser_postfix_dot_deref_expression): Use it. Use comptypes + to detect the current instantiation. + (cp_parser_lookup_name): Really implement DR 141. + * search.c (lookup_field_r): Prefer a dependent using-declaration. + (any_dependent_bases_p): Split out from... + * name-lookup.c (do_class_using_decl): ...here. + * call.c (build_new_method_call_1): Use it. + * semantics.c (finish_call_expr): 'this' doesn't make a call dependent. + * tree.c (non_static_member_function_p): Remove. + * typeck2.c (build_x_arrow): Use dependent_scope_p. + + * parser.c (cp_parser_postfix_dot_deref_expression): Use + complete_type_or_else for unknown_type_node, too. + +2016-05-12 Marek Polacek <polacek@redhat.com> + + PR c/70756 + * call.c (build_new_op_1): Pass LOC to cp_build_modify_expr. + * cp-tree.h (cp_build_modify_expr): Update declaration. + (cxx_incomplete_type_error, cxx_incomplete_type_diagnostic): New inline + overloads. + * cp-ubsan.c (cp_ubsan_dfs_initialize_vtbl_ptrs): Pass INPUT_LOCATION to + cp_build_modify_expr. + * decl2.c (set_guard): Likewise. + (handle_tls_init): Likewise. + * init.c (perform_member_init): Likewise. + (expand_virtual_init): Likewise. + (build_new_1): Likewise. + (build_vec_delete_1): Likewise. + (get_temp_regvar): Likewise. + (build_vec_init): Likewise. + * method.c (do_build_copy_assign): Likewise. + (assignable_expr): Likewise. + * semantics.c (finish_omp_for): Likewise. + * typeck.c (cp_build_binary_op): Pass LOCATION to pointer_diff and + cp_pointer_int_sum. + (cp_pointer_int_sum): Add location parameter. Pass it down to + pointer_int_sum. + (pointer_diff): Add location parameter. Use it. + (build_modify_expr): Pass location down to cp_build_modify_expr. + (cp_build_modify_expr): Add location parameter. Use it. + (build_x_modify_expr): Pass location down to cp_build_modify_expr. + * typeck2.c (cxx_incomplete_type_diagnostic, + cxx_incomplete_type_error): Add location parameter. + +2016-05-11 Marek Polacek <polacek@redhat.com> + + PR c++/71024 + * decl.c (duplicate_decls): Call diagnose_mismatched_decls. + +2016-05-05 Jakub Jelinek <jakub@redhat.com> + + * parser.c (cp_parser_selection_statement): For RID_SWITCH, + pass if_p instead of NULL to cp_parser_implicitly_scoped_statement. + +2016-05-04 Marek Polacek <polacek@redhat.com> + + * parser.c (cp_parser_selection_statement): Replace OPT_Wparentheses + with OPT_Wdangling_else. + +2016-05-03 Martin Sebor <msebor@redhat.com> + + PR c++/66561 + * tree.c (builtin_valid_in_constant_expr_p): Treat BUILT_IN_FILE, + BUILT_IN_FUNCTION, and BUILT_IN_LINE as constant expressions. + +2016-05-03 Marek Polacek <polacek@redhat.com> + + PR c/70859 + * call.c (build_cxx_call): Pass location and vNULL down to + check_builtin_function_arguments. + +2016-05-03 Richard Biener <rguenther@suse.de> + + * Make-lang.in (cc1plus-checksum.c): For stage-final re-use + the checksum from the previous stage. + +2016-05-02 David Malcolm <dmalcolm@redhat.com> + + PR c++/62314 + * typeck.c (finish_class_member_access_expr): When + giving a hint about a possibly-misspelled member name, + add a fix-it replacement hint. + +2016-05-02 Cesar Philippidis <cesar@codesourcery.com> + + * cp-tree.h (finish_omp_clauses): Update prototype. + * parser.c (cp_parser_oacc_all_clauses): Update call to + finish_omp_clauses. + (cp_parser_omp_all_clauses): Likewise. + (cp_parser_omp_for_loop): Likewise. + (cp_omp_split_clauses): Likewise. + (cp_parser_oacc_cache): Likewise. + (cp_parser_oacc_loop): Likewise. + (cp_parser_omp_declare_target): + (cp_parser_cilk_simd_all_clauses): Likewise. + (cp_parser_cilk_for): Likewise. + * pt.c (tsubst_omp_clauses): Replace allow_fields and declare_simd + arguments with enum c_omp_region_type ort. + (tsubst_omp_clauses): Update calls to finish_omp_clauses. + (tsubst_omp_attribute): Update calls to tsubst_omp_clauses. + (tsubst_omp_for_iterator): Update calls to finish_omp_clauses. + (tsubst_expr): Update calls to tsubst_omp_clauses. + * semantics.c (finish_omp_clauses): Replace bool arguments + allow_fields, declare_simd, and is_cilk with bitmask ort. + (finish_omp_for): Update call to finish_omp_clauses. + +2016-05-02 David Malcolm <dmalcolm@redhat.com> + + PR c++/62314 + * parser.c (cp_parser_class_head): Capture the start location; + use it to emit a fix-it insertion hint when complaining + about missing "template <> " in explicit specializations. + 2016-05-02 Richard Sandiford <richard.sandiford@arm.com> * init.c (build_new_1): Use shift operators instead of wi:: shifts. |