PR c++/82541
[official-gcc.git] / gcc / cp / ChangeLog
blobd664bd26af93f1eedec5fb6ee79039b513960171
1 2018-01-10  Marek Polacek  <polacek@redhat.com>
3         PR c++/82541
4         * call.c (build_conditional_expr_1): Check complain before warning.
5         * pt.c (tsubst_copy_and_build) <case COND_EXPR>: Suppress
6         -Wduplicated-branches.
8 2018-01-10  Jakub Jelinek  <jakub@redhat.com>
10         PR c++/81327
11         * call.c (maybe_warn_class_memaccess): Add forward declaration.
12         Change last argument from tree * to const vec<tree, va_gc> *, adjust
13         args uses and check number of operands too.  Don't strip away any
14         nops.  Use maybe_constant_value when looking for INTEGER_CST args.
15         Deal with src argument not having pointer type.  Check
16         tree_fits_uhwi_p before calling tree_to_uhwi.  Remove useless
17         test.
18         (build_over_call): Call maybe_warn_class_memaccess here on the
19         original arguments.
20         (build_cxx_call): Rather than here on converted arguments.
22 2018-01-10  Paolo Carlini  <paolo.carlini@oracle.com>
24         PR c++/81055
25         * init.c (build_vec_init): Avoid building an INIT_EXPR with
26         error_mark_node as second argument.
28 2018-01-09  Jakub Jelinek  <jakub@redhat.com>
30         PR c++/83734
31         * constexpr.c (cxx_eval_statement_list): Ignore DEBUG_BEGIN_STMTs
32         in STATEMENT_LIST.  Remove unneeded assert.
34 2018-01-03  Richard Sandiford  <richard.sandiford@linaro.org>
35             Alan Hayward  <alan.hayward@arm.com>
36             David Sherwood  <david.sherwood@arm.com>
38         * constexpr.c (cxx_eval_array_reference): Handle polynomial
39         VECTOR_CST_NELTS.
40         (cxx_fold_indirect_ref): Handle polynomial TYPE_VECTOR_SUBPARTS.
41         * call.c (build_conditional_expr_1): Likewise.
42         * decl.c (cp_finish_decomp): Likewise.
43         * mangle.c (write_type): Likewise.
44         * typeck.c (structural_comptypes): Likewise.
45         (cp_build_binary_op): Likewise.
46         * typeck2.c (process_init_constructor_array): Likewise.
48 2018-01-03  Jakub Jelinek  <jakub@redhat.com>
50         PR c++/83555
51         * typeck.c (build_static_cast_1): For static casts to reference types,
52         call build_base_path with flag_delete_null_pointer_checks as nonnull
53         instead of always false.  When -fsanitize=null, call
54         ubsan_maybe_instrument_reference on the NULL reference INTEGER_CST.
55         * cp-gimplify.c (cp_genericize_r): Don't walk subtrees of UBSAN_NULL
56         call if the first argument is INTEGER_CST with REFERENCE_TYPE.
58 2018-01-03  Nathan Sidwell  <nathan@acm.org>
60         PR c++/83667
61         * method.c (make_alias_for): Copy DECL_CONTEXT.
63 2018-01-03  Marek Polacek  <polacek@redhat.com>
65         PR c++/83592
66         * decl.c (grokdeclarator): Don't warn about MVP in typename context.
68 2018-01-03  Jakub Jelinek  <jakub@redhat.com>
70         PR preprocessor/83602
71         * name-lookup.c (lookup_name_fuzzy): Don't use macro_use_before_def
72         for builtin macros.
74         PR c++/83634
75         * cp-gimplify.c (cp_fold) <case NOP_EXPR>: If the operand folds to
76         error_mark_node, return error_mark_node.
78         Update copyright years.
80 2018-01-02  Jakub Jelinek  <jakub@redhat.com>
82         PR c++/83556
83         * tree.c (replace_placeholders_r): Pass NULL as last argument to
84         cp_walk_tree instead of d->pset.  If non-TREE_CONSTANT and
85         non-PLACEHOLDER_EXPR tree has been seen already, set *walk_subtrees
86         to false and return.
87         (replace_placeholders): Pass NULL instead of &pset as last argument
88         to cp_walk_tree.
90 2018-01-02  Nathan Sidwell  <nathan@acm.org>
92         * constexpr.c (cxx_bind_parameters_in_call): Remove unneeded local
93         lval var.
95 Copyright (C) 2018 Free Software Foundation, Inc.
97 Copying and distribution of this file, with or without modification,
98 are permitted in any medium without royalty provided the copyright
99 notice and this notice are preserved.