]>
Commit | Line | Data |
---|---|---|
4b37c3ea GA |
1 | 2021-02-10 Jakub Jelinek <jakub@redhat.com> |
2 | ||
3 | PR c++/98988 | |
4 | PR c++/99031 | |
5 | * constexpr.c: Include cgraph.h. | |
6 | (cxx_eval_call_expression): Call varpool_node::finalize_decl on | |
7 | heap artificial vars. | |
8 | (cxx_eval_outermost_constant_expr): Remove varpool nodes for | |
9 | heap artificial vars. | |
10 | ||
11 | 2021-02-10 Nathan Sidwell <nathan@acm.org> | |
12 | ||
13 | PR c++/99030 | |
14 | * pt.c (tsubst_copy) [VAR_DECL]: For a DECL_LOCAL_DECL_P T is the | |
15 | answer if there's no local specialization. | |
16 | ||
0a91b73e GA |
17 | 2021-02-09 Nathan Sidwell <nathan@acm.org> |
18 | ||
19 | PR c++/98944 | |
20 | * module.cc (module_state::is_rooted): Rename to ... | |
21 | (module_state::has_location): ... here. Adjust callers. | |
22 | (module_state::read_partitions): Adjust validity check. | |
23 | Don't overwrite a known location. | |
24 | ||
25 | 2021-02-09 Jason Merrill <jason@redhat.com> | |
26 | ||
27 | PR c++/96905 | |
28 | * pt.c (mark_decl_instantiated): Exit early if consteval. | |
29 | ||
30 | 2021-02-09 Jason Merrill <jason@redhat.com> | |
31 | ||
32 | PR c++/98326 | |
33 | PR c++/20408 | |
34 | * cp-gimplify.c (simple_empty_class_p): Don't touch an invisiref | |
35 | parm. | |
36 | ||
37 | 2021-02-09 Jason Merrill <jason@redhat.com> | |
38 | ||
39 | PR c++/98994 | |
40 | PR c++/97566 | |
41 | * constexpr.c (cxx_eval_store_expression): Only skip empty fields in | |
42 | RECORD_TYPE. | |
43 | ||
2da7ce23 GA |
44 | 2021-02-08 Nathan Sidwell <nathan@acm.org> |
45 | ||
46 | * decl.c (start_cleanup_fn): Push function into | |
47 | namespace. | |
48 | ||
49 | 2021-02-08 Nathan Sidwell <nathan@acm.org> | |
50 | ||
51 | PR c++/98531 | |
52 | * cp-tree.h (push_abi_namespace, pop_abi_namespace): Declare. | |
53 | * decl.c (push_abi_namespace, pop_abi_namespace): Moved | |
54 | from rtti.c, add default namespace arg. | |
55 | (check_redeclaration_exception_specification): Allow a lazy | |
56 | builtin's eh spec to differ from an lready-declared user | |
57 | declaration. | |
58 | (declare_global_var): Use push/pop_abi_namespace. | |
59 | (get_atexit_node): Push the fndecl into a namespace. | |
60 | * rtti.c (push_abi_namespace, pop_abi_namespace): Moved to | |
61 | decl.c. | |
62 | ||
63 | 2021-02-08 Marek Polacek <polacek@redhat.com> | |
64 | ||
65 | * cp-tree.h (CLASSTYPE_TI_TEMPLATE): Fix typo. | |
66 | ||
1ed59127 GA |
67 | 2021-02-05 Marek Polacek <polacek@redhat.com> |
68 | ||
69 | PR c++/98947 | |
70 | * call.c (build_conditional_expr_1): Don't call mark_lvalue_use | |
71 | on arg2/arg3. | |
72 | * expr.c (mark_use) <case MODIFY_EXPR>: Don't check read_p when | |
73 | issuing the -Wvolatile warning. Only set TREE_THIS_VOLATILE if | |
74 | a warning was emitted. | |
75 | ||
76 | 2021-02-05 Marek Polacek <polacek@redhat.com> | |
77 | ||
78 | PR c++/96462 | |
79 | * name-lookup.c (lookup_using_decl): Hoist the destructor check. | |
80 | ||
81 | 2021-02-05 Jakub Jelinek <jakub@redhat.com> | |
82 | ||
83 | PR c++/97878 | |
84 | * decl.c (check_array_initializer): For structured bindings, require | |
85 | the array type to be complete. | |
86 | ||
a19dd5e6 GA |
87 | 2021-02-04 Jason Merrill <jason@redhat.com> |
88 | ||
89 | PR c++/98717 | |
90 | * constraint.cc (build_concept_check_arguments): Remove assert. | |
91 | (build_concept_check): Allow empty args. | |
92 | ||
93 | 2021-02-04 Tom Greenslade (thomgree) <thomgree@cisco.com> | |
94 | ||
95 | PR c++/90926 | |
96 | * call.c (can_convert_array): Extend to handle all valid aggregate | |
97 | initializers of an array; including by string literals, not just by | |
98 | brace-init-list. | |
99 | (build_aggr_conv): Call can_convert_array more often, not just in | |
100 | brace-init-list case. | |
101 | * typeck2.c (array_string_literal_compatible_p): New function. | |
102 | (digest_init_r): call array_string_literal_compatible_p | |
103 | * cp-tree.h: (array_string_literal_compatible_p): Declare. | |
104 | ||
105 | 2021-02-04 Jason Merrill <jason@redhat.com> | |
106 | ||
107 | PR c++/98802 | |
108 | * pt.c (do_class_deduction): No aggregate guide if any_dguides_p. | |
109 | ||
110 | 2021-02-04 Jason Merrill <jason@redhat.com> | |
111 | ||
112 | PR c++/95192 | |
113 | * pt.c (tsubst_attribute): Handle error. | |
114 | (apply_late_template_attributes): Return false on error. | |
115 | (tsubst_function_decl): Check its return value. | |
116 | (tsubst_decl): Likewise. | |
117 | (push_template_decl): Assert current_template_parms. | |
118 | (tsubst_template_decl): Set current_template_parms. | |
119 | ||
9faaa807 GA |
120 | 2021-02-03 Marek Polacek <polacek@redhat.com> |
121 | ||
122 | PR c++/98951 | |
123 | * call.c (struct z_candidate): Mark rewritten and reversed as const. | |
124 | (struct NonPublicField): Mark operator() as const. | |
125 | (struct NonTrivialField): Likewise. | |
126 | ||
127 | 2021-02-03 Jason Merrill <jason@redhat.com> | |
128 | ||
129 | PR c++/98926 | |
130 | PR c++/98570 | |
131 | * pt.c (spec_hasher::equal): Set processing_template_decl. | |
132 | * Make-lang.in (check-g++-strict-gc): Add --param | |
133 | hash-table-verification-limit=10000. | |
134 | ||
135 | 2021-02-03 Marek Polacek <polacek@redhat.com> | |
136 | ||
137 | PR c++/98899 | |
138 | * parser.c (cp_parser_class_specifier_1): Use any possible | |
139 | DEFPARSE_INSTANTIATIONS to update DEFERRED_NOEXCEPT_PATTERN. | |
140 | (cp_parser_save_noexcept): Initialize DEFPARSE_INSTANTIATIONS. | |
141 | * pt.c (tsubst_exception_specification): Stash new_specs into | |
142 | DEFPARSE_INSTANTIATIONS. | |
143 | * tree.c (fixup_deferred_exception_variants): Use | |
144 | UNPARSED_NOEXCEPT_SPEC_P. | |
145 | ||
548b75d8 GA |
146 | 2021-02-02 Jason Merrill <jason@redhat.com> |
147 | ||
148 | PR c++/98929 | |
149 | PR c++/96199 | |
150 | * error.c (dump_expr): Ignore dummy object. | |
151 | * pt.c (tsubst_baselink): Handle dependent scope. | |
152 | ||
f7884fb1 GA |
153 | 2021-02-01 Patrick Palka <ppalka@redhat.com> |
154 | ||
155 | PR c++/98295 | |
156 | * constexpr.c (cxx_eval_array_reference): Also set | |
157 | new_ctx.object when setting new_ctx.ctor. | |
158 | ||
159 | 2021-02-01 Marek Polacek <polacek@redhat.com> | |
160 | ||
161 | PR c++/98355 | |
162 | * parser.c (cp_parser_has_attribute_expression): Use | |
163 | uses_template_parms instead of type_dependent_expression_p. | |
164 | ||
165 | 2021-02-01 Jason Merrill <jason@redhat.com> | |
166 | ||
167 | PR c++/98570 | |
168 | * cp-tree.h: Declare it. | |
169 | * pt.c (comparing_dependent_aliases): New flag. | |
170 | (template_args_equal, spec_hasher::equal): Set it. | |
171 | (dependent_alias_template_spec_p): Assert that we don't | |
172 | get non-types other than error_mark_node. | |
173 | (instantiate_alias_template): SET_TYPE_STRUCTURAL_EQUALITY | |
174 | on complex alias specializations. Set TYPE_DEPENDENT_P here. | |
175 | (tsubst_decl): Not here. | |
176 | * module.cc (module_state::read_cluster): Set | |
177 | comparing_dependent_aliases instead of | |
178 | comparing_specializations. | |
179 | * tree.c (cp_tree_equal): Remove comparing_specializations | |
180 | module handling. | |
181 | * typeck.c (structural_comptypes): Adjust. | |
182 | (comptypes): Remove comparing_specializations handling. | |
183 | ||
2900f2f2 GA |
184 | 2021-01-29 Nathan Sidwell <nathan@acm.org> |
185 | ||
186 | PR c++/98843 | |
187 | * module.cc (module_state_config): Add num_entities field. | |
188 | (module_state::read_entities): The entity_ary span is | |
189 | already allocated. | |
190 | (module_state::write_config): Write num_entities. | |
191 | (module_state::read_config): Read num_entities. | |
192 | (module_state::write): Set config's num_entities. | |
193 | (module_state::read_initial): Allocate the entity ary | |
194 | span here. | |
195 | (module_state::read_language): Do not set entity_lwm | |
196 | here. | |
197 | ||
198 | 2021-01-29 Marek Polacek <polacek@redhat.com> | |
199 | ||
200 | PR c++/96137 | |
201 | * parser.c (cp_parser_class_name): If parser->scope is | |
202 | error_mark_node, return it, otherwise continue. | |
203 | ||
85d04a2e GA |
204 | 2021-01-28 Jakub Jelinek <jakub@redhat.com> |
205 | ||
206 | PR c++/98841 | |
207 | * typeck.c (build_x_indirect_ref): For *this, return current_class_ref. | |
208 | ||
209 | 2021-01-28 Jakub Jelinek <jakub@redhat.com> | |
210 | ||
211 | PR c++/33661 | |
212 | PR c++/98847 | |
213 | * decl.c (cp_finish_decl): For register vars with asmspec in templates | |
214 | call set_user_assembler_name and set DECL_HARD_REGISTER. | |
215 | * pt.c (tsubst_expr): When instantiating DECL_HARD_REGISTER vars, | |
216 | pass asmspec_tree to cp_finish_decl. | |
217 | ||
218 | 2021-01-28 Nathan Sidwell <nathan@acm.org> | |
219 | ||
220 | PR c++/98770 | |
221 | * module.cc (trees_out::decl_value): Swap is_typedef & TYPE_NAME | |
222 | check order. | |
223 | (trees_in::decl_value): Do typedef frobbing only when installing | |
224 | a new typedef, adjust is_matching_decl call. Swap is_typedef | |
225 | & TYPE_NAME check. | |
226 | (trees_in::is_matching_decl): Add is_typedef parm. Adjust variable | |
227 | names and deal with typedef checking. | |
228 | ||
aa69f0a8 GA |
229 | 2021-01-27 Jason Merrill <jason@redhat.com> |
230 | ||
231 | PR c++/97874 | |
232 | * name-lookup.c (lookup_using_decl): Clean up handling | |
233 | of dependency and inherited constructors. | |
234 | (finish_nonmember_using_decl): Handle DECL_DEPENDENT_P. | |
235 | * pt.c (tsubst_expr): Handle DECL_DEPENDENT_P. | |
236 | ||
e62bb7f0 GA |
237 | 2021-01-26 Jason Merrill <jason@redhat.com> |
238 | ||
239 | PR c++/97474 | |
240 | * call.c (type_passed_as): Don't mark invisiref restrict. | |
241 | ||
242 | 2021-01-26 Jason Merrill <jason@redhat.com> | |
243 | ||
244 | PR c++/97566 | |
245 | PR c++/98463 | |
246 | * class.c (layout_class_type): An empty field gets size 0. | |
247 | (is_empty_field): New. | |
248 | (check_bases): Check it. | |
249 | * cp-tree.h (is_empty_field): Declare it. | |
250 | * constexpr.c (cxx_eval_store_expression): Check it. | |
251 | (cx_check_missing_mem_inits): Likewise. | |
252 | * init.c (perform_member_init): Likewise. | |
253 | * typeck2.c (process_init_constructor_record): Likewise. | |
254 | ||
161e4c08 GA |
255 | 2021-01-25 Martin Sebor <msebor@redhat.com> |
256 | ||
257 | PR c++/98646 | |
258 | * cvt.c (cp_fold_convert): Propagate TREE_NO_WARNING. | |
259 | ||
260 | 2021-01-25 Jason Merrill <jason@redhat.com> | |
261 | ||
262 | PR c++/98463 | |
263 | * constexpr.c (get_or_insert_ctor_field): Add check. | |
264 | (cxx_eval_store_expression): Handle discontinuity of refs. | |
265 | ||
6b163337 GA |
266 | 2021-01-23 Anthony Sharp <anthonysharp15@gmail.com> |
267 | ||
268 | * call.c (complain_about_access): Altered function. | |
269 | * cp-tree.h (complain_about_access): Changed parameters of function. | |
270 | (get_parent_with_private_access): Declared new function. | |
271 | * search.c (get_parent_with_private_access): Defined new function. | |
272 | * semantics.c (enforce_access): Modified function. | |
273 | * typeck.c (complain_about_unrecognized_member): Updated function | |
274 | arguments in complain_about_access. | |
275 | ||
276 | 2021-01-23 Patrick Palka <ppalka@redhat.com> | |
277 | ||
278 | PR c++/97399 | |
279 | * cp-tree.h (shared_member_p): Adjust declaration. | |
280 | * parser.c (cp_parser_init_declarator): If the storage class | |
281 | specifier is sc_static, pass true for static_p to | |
282 | cp_parser_declarator. | |
283 | (cp_parser_direct_declarator): Don't do inject_this_parm when | |
284 | the declarator is a friend. | |
285 | * search.c (shared_member_p): Change return type to bool and | |
286 | adjust function body accordingly. Return false for a dependent | |
287 | USING_DECL instead of aborting. | |
288 | * semantics.c (finish_qualified_id_expr): Rely on shared_member_p | |
289 | even when type-dependent. | |
290 | ||
8502e23d GA |
291 | 2021-01-22 Marek Polacek <polacek@redhat.com> |
292 | ||
293 | PR c++/96623 | |
294 | * parser.c (inject_parm_decls): Remove a redundant assignment. | |
295 | (cp_parser_class_specifier_1): Clear current_class_{ptr,ref} | |
296 | before calling inject_parm_decls. | |
297 | ||
298 | 2021-01-22 Jason Merrill <jason@redhat.com> | |
299 | ||
300 | PR c++/98744 | |
301 | * call.c (make_base_init_ok): Use DECL_HAS_VTT_PARM_P. | |
302 | ||
303 | 2021-01-22 Jakub Jelinek <jakub@redhat.com> | |
304 | ||
305 | PR sanitizer/95693 | |
306 | * init.c (build_zero_init_1): Revert the 2018-03-06 change to | |
307 | return build_zero_cst for reference types. | |
308 | * typeck2.c (process_init_constructor_record): Instead call | |
309 | build_zero_cst here during error recovery instead of build_zero_init. | |
310 | ||
311 | 2021-01-22 Marek Polacek <polacek@redhat.com> | |
312 | ||
313 | PR c++/98545 | |
314 | * mangle.c (write_member_name): Emit abi_warn_or_compat_version_crosses | |
315 | warnings regardless of abi_version_at_least. | |
316 | (write_expression): When the expression is a dependent name | |
317 | and an operator name, write "on" before writing its name. | |
318 | ||
319 | 2021-01-22 Marek Polacek <polacek@redhat.com> | |
320 | ||
321 | PR c++/97966 | |
322 | * pt.c (instantiate_class_template_1): Instantiate members | |
323 | marked with attribute used only after we're done instantiating | |
324 | the class. | |
325 | ||
7559d465 GA |
326 | 2021-01-21 Patrick Palka <ppalka@redhat.com> |
327 | ||
328 | PR c++/71879 | |
329 | * semantics.c (finish_decltype_type): Set up a cp_unevaluated | |
330 | sentinel at the start of the function. Remove a now-redundant | |
331 | manual adjustment of cp_unevaluated_operand. | |
332 | ||
333 | 2021-01-21 Nathan Sidwell <nathan@acm.org> | |
334 | ||
335 | PR c++/98624 | |
336 | * module.cc (depset::hash::find_dependencies): Add | |
337 | module arg. | |
338 | (trees_out::core_vals): Check state before calling | |
339 | write_location. | |
340 | (sort_cluster, module_state::write): Adjust | |
341 | find_dependencies call. | |
342 | ||
343 | 2021-01-21 Jakub Jelinek <jakub@redhat.com> | |
344 | ||
345 | PR c++/98672 | |
346 | * constexpr.c (check_for_return_continue_data): Add break_stmt member. | |
347 | (check_for_return_continue): Also look for BREAK_STMT. Handle | |
348 | SWITCH_STMT by ignoring break_stmt from its body. | |
349 | (potential_constant_expression_1) <case FOR_STMT>, | |
350 | <case WHILE_STMT>: If the condition isn't constant true, check if | |
351 | the loop body can contain a return stmt. | |
352 | <case SWITCH_STMT>: Adjust check_for_return_continue_data initializer. | |
353 | <case IF_STMT>: If recursion with tf_none is successful, | |
354 | merge *jump_target from the branches - returns with highest priority, | |
355 | breaks or continues lower. If then branch is potentially constant and | |
356 | doesn't return, check the else branch if it could return, break or | |
357 | continue. | |
358 | ||
359 | 2021-01-21 Nathan Sidwell <nathan@acm.org> | |
360 | ||
361 | PR c++/98530 | |
362 | * name-lookup.c (lookup_class_binding): Rearrange a stat-hack. | |
363 | ||
b93d0e36 GA |
364 | 2021-01-20 Nathan Sidwell <nathan@acm.org> |
365 | ||
366 | * module.cc (bytes_in::i, bytes_in::wi): Avoid left shift of | |
367 | signed type. | |
368 | ||
369 | 2021-01-20 Patrick Palka <ppalka@redhat.com> | |
370 | ||
371 | PR c++/95434 | |
372 | * pt.c (tsubst) <case TEMPLATE_TYPE_PARM>: If tsubsting | |
373 | CLASS_PLACEHOLDER_TEMPLATE yields a TEMPLATE_TEMPLATE_PARM, | |
374 | adjust to its TEMPLATE_TEMPLATE_PARM_TEMPLATE_DECL. | |
375 | ||
376 | 2021-01-20 Patrick Palka <ppalka@redhat.com> | |
377 | ||
378 | PR c++/82613 | |
379 | * parser.c (cp_parser_class_head): Defer access checking when | |
380 | parsing the base-clause until all bases are seen and attached | |
381 | to the class type. | |
382 | * pt.c (instantiate_class_template): Likewise when substituting | |
383 | into dependent bases. | |
384 | ||
385 | 2021-01-20 Jakub Jelinek <jakub@redhat.com> | |
386 | ||
387 | PR c++/98742 | |
388 | * semantics.c (finish_omp_clauses) <case OMP_CLAUSE_DETACH>: If | |
389 | error_operand_p, remove clause without further checking. Check | |
390 | for non-NULL TYPE_NAME. | |
391 | ||
f35a4f96 GA |
392 | 2021-01-19 Marek Polacek <polacek@redhat.com> |
393 | ||
394 | PR c++/98659 | |
395 | * pt.c (maybe_instantiate_noexcept): Return false if FN is | |
396 | error_mark_node. | |
397 | ||
398 | 2021-01-19 Marek Polacek <polacek@redhat.com> | |
399 | ||
400 | PR c++/98687 | |
401 | * name-lookup.c (push_using_decl_bindings): New, broken out of... | |
402 | (finish_nonmember_using_decl): ...here. | |
403 | * name-lookup.h (push_using_decl_bindings): Update declaration. | |
404 | * pt.c (tsubst_expr): Update the call to push_using_decl_bindings. | |
405 | ||
406 | 2021-01-19 Patrick Palka <ppalka@redhat.com> | |
407 | ||
408 | PR c++/41437 | |
409 | PR c++/58993 | |
410 | * search.c (friend_accessible_p): If scope is a hidden friend | |
411 | defined inside a dependent class, consider access from the | |
412 | class. | |
413 | * parser.c (cp_parser_late_parsing_for_member): Don't push a | |
414 | dk_no_check access state. | |
415 | ||
416 | 2021-01-19 Marek Polacek <polacek@redhat.com> | |
417 | ||
418 | PR c++/98333 | |
419 | * parser.c (cp_parser_class_specifier_1): Perform late-parsing | |
420 | of NSDMIs before late-parsing of noexcept-specifiers. | |
421 | ||
422 | 2021-01-19 Nathan Sidwell <nathan@acm.org> | |
423 | ||
424 | * module.cc (identifier): Merge overloads. | |
425 | ||
426 | 2021-01-19 Nathan Sidwell <nathan@acm.org> | |
427 | ||
428 | PR c++/98624 | |
429 | * module.cc (trees_out::write_location): Make static. | |
430 | ||
59cf67d1 GA |
431 | 2021-01-16 Kwok Cheung Yeung <kcy@codesourcery.com> |
432 | ||
433 | * parser.c (cp_parser_omp_clause_detach): New. | |
434 | (cp_parser_omp_all_clauses): Handle PRAGMA_OMP_CLAUSE_DETACH. | |
435 | (OMP_TASK_CLAUSE_MASK): Add mask for PRAGMA_OMP_CLAUSE_DETACH. | |
436 | * pt.c (tsubst_omp_clauses): Handle OMP_CLAUSE_DETACH clause. | |
437 | * semantics.c (finish_omp_clauses): Handle OMP_CLAUSE_DETACH clause. | |
438 | Prevent use of detach with mergeable and overriding the data sharing | |
439 | mode of the event handle. | |
440 | ||
2f7f0d32 GA |
441 | 2021-01-15 Nathan Sidwell <nathan@acm.org> |
442 | ||
443 | PR c++/98538 | |
444 | * tree.c (cp_build_qualified_type_real): Propagate an array's | |
445 | dependentness to the copy, if known. | |
446 | ||
447 | 2021-01-15 Jason Merrill <jason@redhat.com> | |
448 | ||
449 | PR c++/98642 | |
450 | * call.c (unsafe_return_slot_p): Return int. | |
451 | (init_by_return_slot_p): Split out from... | |
452 | (unsafe_copy_elision_p): ...here. | |
453 | (unsafe_copy_elision_p_opt): New name for old meaning. | |
454 | (build_over_call): Adjust. | |
455 | (make_safe_copy_elision): New. | |
456 | * typeck2.c (split_nonconstant_init_1): Elide copy from safe | |
457 | list-initialization. | |
458 | * cp-tree.h: Adjust. | |
459 | ||
460 | 2021-01-15 Jason Merrill <jason@redhat.com> | |
461 | ||
462 | * call.c (base_ctor_for, make_base_init_ok): New. | |
463 | (build_over_call): Use make_base_init_ok. | |
464 | ||
465 | 2021-01-15 Jason Merrill <jason@redhat.com> | |
466 | ||
467 | PR c++/63707 | |
468 | * tree.c (build_vec_init_expr): Don't call build_vec_init_elt | |
469 | if we got a CONSTRUCTOR. | |
470 | ||
471 | 2021-01-15 Nathan Sidwell <nathan@acm.org> | |
472 | ||
473 | PR c++/98591 | |
474 | * lang-specs.h: Fix handling of -fmodule-only with -fsyntax-only. | |
475 | ||
5fff80fd GA |
476 | 2021-01-14 Jason Merrill <jason@redhat.com> |
477 | ||
478 | * typeck2.c (process_init_constructor_record): Use fldtype | |
479 | variable consistently. | |
480 | ||
481 | 2021-01-14 Nathan Sidwell <nathan@acm.org> | |
482 | ||
483 | PR c++/98372 | |
484 | * tree.c (cp_tree_equal): Correct map_context logic. | |
485 | ||
be0851b8 GA |
486 | 2021-01-13 Marek Polacek <polacek@redhat.com> |
487 | ||
488 | PR c++/98231 | |
489 | * name-lookup.c (push_using_decl_bindings): New. | |
490 | * name-lookup.h (push_using_decl_bindings): Declare. | |
491 | * pt.c (tsubst_expr): Call push_using_decl_bindings. | |
492 | ||
493 | 2021-01-13 Nathan Sidwell <nathan@acm.org> | |
494 | ||
495 | PR c++/98626 | |
496 | * module.cc (module_add_import_initializers): Pass a | |
497 | zero-element argument vector. | |
498 | ||
6851dda2 GA |
499 | 2021-01-12 Patrick Palka <ppalka@redhat.com> |
500 | ||
501 | PR c++/98611 | |
502 | * tree.c (cp_walk_subtrees) <case TEMPLATE_TYPE_PARM>: Visit | |
503 | the template of a CTAD placeholder. | |
504 | ||
505 | 2021-01-12 Marek Polacek <polacek@redhat.com> | |
506 | ||
507 | PR c++/98620 | |
508 | * typeck2.c (process_init_constructor_record): Don't emit | |
509 | -Wmissing-field-initializers warnings in unevaluated contexts. | |
510 | ||
67fbb7f0 GA |
511 | 2021-01-11 Jakub Jelinek <jakub@redhat.com> |
512 | ||
513 | PR c++/98481 | |
514 | * class.c (find_abi_tags_r): Set *walk_subtrees to 2 instead of 1 | |
515 | for types. | |
516 | (mark_abi_tags_r): Likewise. | |
517 | * decl2.c (min_vis_r): Likewise. | |
518 | * tree.c (cp_walk_subtrees): If *walk_subtrees_p is 2, look through | |
519 | typedefs. | |
520 | ||
bf5cbb9e GA |
521 | 2021-01-08 Patrick Palka <ppalka@redhat.com> |
522 | ||
523 | PR c++/98551 | |
524 | * constexpr.c (cxx_eval_call_expression): Check CLASS_TYPE_P | |
525 | instead of AGGREGATE_TYPE_P before calling replace_result_decl. | |
526 | ||
527 | 2021-01-08 Patrick Palka <ppalka@redhat.com> | |
528 | ||
529 | PR c++/98515 | |
530 | * semantics.c (check_accessibility_of_qualified_id): Punt if | |
531 | we're checking access of a scoped non-static member inside a | |
532 | class template. | |
533 | ||
7d187e4f GA |
534 | 2021-01-07 Jakub Jelinek <jakub@redhat.com> |
535 | ||
536 | PR c++/98329 | |
537 | * pt.c (tsubst_copy) <case BIT_CAST_EXPR>: Don't call | |
538 | cp_build_bit_cast here, instead just build_min a BIT_CAST_EXPR and set | |
539 | its location. | |
540 | (tsubst_copy_and_build): Handle BIT_CAST_EXPR. | |
541 | ||
542 | 2021-01-07 Marek Polacek <polacek@redhat.com> | |
543 | ||
544 | PR c++/98441 | |
545 | * decl.c (grokdeclarator): Move the !funcdecl_p check inside the | |
546 | !late_return_type block. | |
547 | ||
548 | 2021-01-07 Jason Merrill <jason@redhat.com> | |
549 | ||
550 | * constexpr.c (cxx_bind_parameters_in_call): Add comment. | |
551 | (cxx_eval_store_expression): Add comment. | |
552 | ||
553 | 2021-01-07 Jason Merrill <jason@redhat.com> | |
554 | ||
555 | * call.c (has_next): Factor out from... | |
556 | (next_conversion): ...here. | |
557 | (strip_standard_conversion): And here. | |
558 | (is_subseq): And here. | |
559 | (build_conv): Check it. | |
560 | (standard_conversion): Don't call build_conv | |
561 | for ck_identity. | |
562 | ||
942ae5be GA |
563 | 2021-01-06 Martin Sebor <msebor@redhat.com> |
564 | ||
565 | PR c++/95768 | |
566 | * error.c (dump_expr): Call c_pretty_printer::unary_expression. | |
567 | ||
651b8a50 GA |
568 | 2021-01-05 Patrick Palka <ppalka@redhat.com> |
569 | ||
570 | * pt.c (unify) <case TEMPLATE_PARM_INDEX>: After walking into | |
571 | the type of the NTTP, substitute into the type again. If the | |
572 | type is still dependent, don't unify the NTTP. | |
573 | ||
574 | 2021-01-05 Jakub Jelinek <jakub@redhat.com> | |
575 | ||
576 | * Make-lang.in (cc1plus-checksum, cc1plus$(exeext): Add | |
577 | $(CODYLIB) after $(BACKEND). | |
578 | ||
579 | 2021-01-05 Jakub Jelinek <jakub@redhat.com> | |
580 | ||
581 | PR c++/98469 | |
582 | * constexpr.c (cxx_eval_constant_expression) <case BIT_CAST_EXPR>: | |
583 | Punt if lval is true. | |
584 | * semantics.c (cp_build_bit_cast): Call get_target_expr_sfinae on | |
585 | the result if it has a class type. | |
586 | ||
587 | 2021-01-05 Marek Polacek <polacek@redhat.com> | |
588 | ||
589 | PR c++/82099 | |
590 | * pt.c (resolve_overloaded_unification): Call | |
591 | maybe_instantiate_noexcept after instantiating the function | |
592 | decl. | |
593 | ||
594 | 2021-01-05 Nathan Sidwell <nathan@acm.org> | |
595 | ||
596 | * parser.c (cp_parser_module_declaration): Alter diagnostic | |
597 | text to say where is permissable. | |
598 | ||
599 | 2021-01-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> | |
600 | ||
601 | PR c++/98316 | |
602 | * Make-lang.in (cc1plus$(exeext)): Add $(CODYLIB), $(NETLIBS). | |
603 | ||
2eacfdbd GA |
604 | 2021-01-02 Jan Hubicka <jh@suse.cz> |
605 | ||
606 | * cp-tree.h (cp_tree_c_finish_parsing): Declare. | |
607 | * decl2.c (c_parse_final_cleanups): Call cp_tree_c_finish_parsing. | |
608 | * tree.c (cp_tree_c_finish_parsing): New function. | |
609 | ||
b6dd195a GA |
610 | 2021-01-01 Jakub Jelinek <jakub@redhat.com> |
611 | ||
612 | * ChangeLog-2020: Rotate ChangeLog. New file. | |
613 | ||
ad41bd84 | 614 | \f |
618e665a | 615 | Copyright (C) 2021 Free Software Foundation, Inc. |
ad41bd84 JM |
616 | |
617 | Copying and distribution of this file, with or without modification, | |
618 | are permitted in any medium without royalty provided the copyright | |
619 | notice and this notice are preserved. |