]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/cp/ChangeLog
Daily bump.
[thirdparty/gcc.git] / gcc / cp / ChangeLog
CommitLineData
d9450aa0
GA
12022-01-10 Patrick Palka <ppalka@redhat.com>
2
3 PR c++/103879
4 * constexpr.c (cxx_fold_indirect_ref): Split out object/offset
5 canonicalization step into a local lambda. Strengthen it to
6 absorb more components at position 0. Use it before both calls
7 to cxx_fold_indirect_ref_1.
8
92022-01-10 Patrick Palka <ppalka@redhat.com>
10
11 PR c++/103783
12 * call.c (cand_parms_match): Skip over 'this' when given one
13 static and one non-static member function.
14
152022-01-10 Jakub Jelinek <jakub@redhat.com>
16
17 PR c++/103912
18 * semantics.c (expand_or_defer_fn): For immediate functions, set
19 node->body_removed to true and clear analyzed, definition and
20 force_output.
21 * decl2.c (c_parse_final_cleanups): Ignore immediate functions for
22 expand_or_defer_fn.
23
2848ef14
GA
242022-01-08 Jakub Jelinek <jakub@redhat.com>
25
26 PR c++/89074
27 * constexpr.c (cxx_maybe_fold_addr_pointer_plus): New function.
28 (cxx_eval_binary_expression): Use it.
29
302022-01-08 Jason Merrill <jason@redhat.com>
31
32 PR c++/103946
33 * init.c (build_vec_init): Remove assert.
34 * tree.c (build_vec_init_expr): Likewise.
35
362022-01-08 Jason Merrill <jason@redhat.com>
37
38 PR c++/100588
39 * call.c (build_op_delete_call): Ignore destroying delete
40 if alloc_fn.
41
55e96bf9
GA
422022-01-07 Jason Merrill <jason@redhat.com>
43
44 PR c++/20040
45 * init.c (build_new_1): Also build pointer cleanup if
46 TYPE_GETS_DELETE.
47 * cp-tree.h (TYPE_GETS_VEC_DELETE): New.
48
492022-01-07 Jason Merrill <jason@redhat.com>
50
51 PR c++/103936
52 PR c++/65591
53 * cp-gimplify.c (cp_gimplify_expr): Restore VEC_INIT_EXPR handling.
54
552022-01-07 Jason Merrill <jason@redhat.com>
56
57 PR c++/103711
58 * init.c (perform_target_ctor): Select destructor by in_chrg.
59
602022-01-07 Jason Merrill <jason@redhat.com>
61
62 PR c++/61611
63 * except.c (in_nested_catch): New.
64 (expand_end_catch_block): Check it.
65
662022-01-07 Jason Merrill <jason@redhat.com>
67
68 PR c++/33799
69 PR c++/102191
70 * except.c (maybe_splice_retval_cleanup): Check
71 current_binding_level.
72 * semantics.c (do_poplevel): Call it here.
73 * parser.c (cp_parser_compound_statement): Not here.
74
752022-01-07 Jason Merrill <jason@redhat.com>
76
77 PR c++/53868
78 * decl.c (cp_finish_decl): Use wrap_temporary_cleanups for
79 cleanups from set_up_extended_ref_temp.
80 (wrap_temporary_cleanups): Ignore array cleanups.
81 (initialize_local_var): Don't check for array here.
82 * cp-tree.h (BIND_EXPR_VEC_DTOR): New.
83 * init.c (build_vec_delete_1): Set it.
84
852022-01-07 Jason Merrill <jason@redhat.com>
86
87 PR c++/66451
88 * init.c (build_vec_delete_1): Handle throwing dtor.
89 (build_vec_init): Tell it we're in a cleanup already.
90
912022-01-07 Jason Merrill <jason@redhat.com>
92
93 * typeck2.c (split_nonconstant_init_1): Don't cleanup the last elt.
94 (split_nonconstant_init): Adjust.
95
962022-01-07 Jason Merrill <jason@redhat.com>
97
98 PR c++/66139
99 PR c++/52320
100 * constexpr.c (replace_decl): Rename from replace_result_decl.
101 * cp-tree.h (replace_decl): Declare it.
102 * cp-gimplify.c (cp_gimplify_init_expr): Call it.
103 (cp_gimplify_expr): Don't handle VEC_INIT_EXPR.
104 (cp_genericize_init, cp_genericize_init_expr)
105 (cp_genericize_target_expr): New.
106 (cp_fold_r): Call them.
107 * tree.c (build_array_copy): Add a TARGET_EXPR.
108 * typeck2.c (digest_init_r): Look through a TARGET_EXPR.
109
1102022-01-07 Jason Merrill <jason@redhat.com>
111
112 PR c++/94041
113 * decl.c (initialize_local_var): Fix comment.
114 * init.c (build_new_1): Do stabilize array init.
115 (build_vec_init): Use TARGET_EXPR for cleanup. Initialization
116 of an element from an explicit initializer is not a
117 full-expression.
118 * tree.c (expand_vec_init_expr): Pass flags through.
119 * typeck2.c (split_nonconstant_init_1): Handle VEC_INIT_EXPR.
120 (split_nonconstant_init): Handle array cleanups.
121 * cp-tree.h: Adjust.
122
1232022-01-07 Jason Merrill <jason@redhat.com>
124
125 PR c++/94041
126 * decl.c (check_initializer): Remove obsolete comment.
127 (wrap_cleanups_r): Don't wrap CLEANUP_EH_ONLY.
128 (initialize_local_var): Change assert to test.
129 * typeck2.c (maybe_push_temp_cleanup): New.
130 (split_nonconstant_init_1): Use it.
131 (split_nonconstant_init): Clear cleanup flags.
132
1332022-01-07 Jason Merrill <jason@redhat.com>
134
135 PR c++/92385
136 * typeck2.c (PICFLAG_VEC_INIT): New.
137 (process_init_constructor_array): Set it.
138 (process_init_constructor): Handle it.
139 (split_nonconstant_init_1): Handle VEC_INIT_EXPR.
140 * init.c (build_vec_init): Likewise.
141 * cp-gimplify.c (cp_gimplify_expr): Factor out...
142 * tree.c (expand_vec_init_expr): ...this function.
143 (build_vec_init_elt): Handle BRACE_ENCLOSED_INITIALIZER_P.
144 (build_vec_init_expr): Likewise.
145 * constexpr.c (cxx_eval_vec_init): Likewise.
146 (reduced_constant_expression_p): Check arrays before C++20.
147 * cp-tree.h (expand_vec_init_expr): Declare.
148
1492022-01-07 Jason Merrill <jason@redhat.com>
150
151 * init.c (build_new_1): Remove preevaluation code.
152
0fbefa25
GA
1532022-01-05 Nathan Sidwell <nathan@acm.org>
154
155 * pt.c (instantiate_class_template_1): Process attribute((used)) set
156 in class's context.
157
1582022-01-05 Nathan Sidwell <nathan@acm.org>
159
160 * init.c (build_new_1): Check complain before alignment warning.
161
7d11b64b
GA
1622022-01-04 Jason Merrill <jason@redhat.com>
163
164 * cp-tree.h (class releasing_vec): Add begin/end fns.
165
1662022-01-04 Jason Merrill <jason@redhat.com>
167
168 * init.c: Include -*- C++ -*- on first line.
169
a4ae8c37
GA
1702022-01-03 Marek Polacek <polacek@redhat.com>
171
172 PR c++/103758
173 * parser.c (cp_parser_decl_specifier_seq): Replace %<decl-specifier%>
174 with %qD.
175
1762022-01-03 Marek Polacek <polacek@redhat.com>
177
178 * parser.c (make_char_string_pack): Add a cast to const unsigned
179 char *.
180
1812022-01-03 Jakub Jelinek <jakub@redhat.com>
182
183 PR c++/103600
184 * rtti.c (get_tinfo_decl_direct): Add "non overlapping" attribute
185 to DECL_TINFO_P VAR_DECLs.
186
5da23a13
GA
1872022-01-02 Jason Merrill <jason@redhat.com>
188
189 * init.c (build_vec_init): Append the decrement to elt_init.
190
1912022-01-02 Jason Merrill <jason@redhat.com>
192
193 * decl.c (wrap_cleanups_r): Don't wrap if noexcept.
194
ad41bd84 195\f
6123f29a 196Copyright (C) 2022 Free Software Foundation, Inc.
ad41bd84
JM
197
198Copying and distribution of this file, with or without modification,
199are permitted in any medium without royalty provided the copyright
200notice and this notice are preserved.