diff options
author | GCC Administrator <gccadmin@gcc.gnu.org> | 2023-12-06 00:17:50 +0000 |
---|---|---|
committer | GCC Administrator <gccadmin@gcc.gnu.org> | 2023-12-06 00:17:50 +0000 |
commit | 3dd09cd9e15f996b0f0768554d20ef1aa8b26f58 (patch) | |
tree | 565d5b3a213987d0852d513830e7ce8b6ddc122e /gcc/cp | |
parent | f0a90c7d7333fc7f554b906245c84bdf04d716d7 (diff) | |
download | gcc-3dd09cd9e15f996b0f0768554d20ef1aa8b26f58.zip gcc-3dd09cd9e15f996b0f0768554d20ef1aa8b26f58.tar.gz gcc-3dd09cd9e15f996b0f0768554d20ef1aa8b26f58.tar.bz2 |
Daily bump.
Diffstat (limited to 'gcc/cp')
-rw-r--r-- | gcc/cp/ChangeLog | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index b716751..308d02b 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,68 @@ +2023-12-05 Jakub Jelinek <jakub@redhat.com> + + PR c++/112795 + * cp-tree.h (cp_check_pragma_unroll): Declare. + * semantics.cc (cp_check_pragma_unroll): New function. + * parser.cc (cp_parser_pragma_unroll): Use cp_check_pragma_unroll. + * pt.cc (tsubst_expr) <case ANNOTATE_EXPR>: Likewise. + (tsubst_stmt) <case RANGE_FOR_STMT>: Likwsie. + +2023-12-05 Richard Sandiford <richard.sandiford@arm.com> + + * tree.cc (cxx_gnu_attribute_table): Add extra braces to work + around PR 16333 in older compilers. + +2023-12-05 Jakub Jelinek <jakub@redhat.com> + + PR c++/110734 + * parser.cc (cp_parser_block_declaration): Implement C++ DR 2262 + - Attributes for asm-definition. Call cp_parser_asm_definition + even if RID_ASM token is only seen after sequence of standard + attributes. + (cp_parser_asm_definition): Parse standard attributes before + RID_ASM token and warn for them with -Wattributes. + +2023-12-05 Marek Polacek <polacek@redhat.com> + + PR c++/107687 + PR c++/110997 + * call.cc (in_immediate_context): No longer static. + * constexpr.cc (cxx_eval_call_expression): Adjust assert. + * cp-gimplify.cc (deferred_escalating_exprs): New vec. + (remember_escalating_expr): New. + (enum fold_flags): Remove ff_fold_immediate. + (immediate_escalating_function_p): New. + (unchecked_immediate_escalating_function_p): New. + (promote_function_to_consteval): New. + (cp_fold_immediate): Move above. Return non-null if any errors were + emitted. + (maybe_explain_promoted_consteval): New. + (cp_gimplify_expr) <case CALL_EXPR>: Assert we've handled all + immediate invocations. + (taking_address_of_imm_fn_error): New. + (cp_fold_immediate_r): Merge ADDR_EXPR and PTRMEM_CST cases. Implement + P2564 - promoting functions to consteval. + <case CALL_EXPR>: Implement P2564 - promoting functions to consteval. + (cp_fold_r): If an expression turns into a CALL_EXPR after cp_fold, + call cp_fold_immediate_r on the CALL_EXPR. + (cp_fold_function): Set DECL_ESCALATION_CHECKED_P if + deferred_escalating_exprs does not contain current_function_decl. + (process_and_check_pending_immediate_escalating_fns): New. + * cp-tree.h (struct lang_decl_fn): Add escalated_p bit-field. + (DECL_ESCALATION_CHECKED_P): New. + (immediate_invocation_p): Declare. + (process_pending_immediate_escalating_fns): Likewise. + * decl2.cc (c_parse_final_cleanups): Set at_eof to 2 after all + templates have been instantiated; and to 3 at the end of the function. + Call process_pending_immediate_escalating_fns. + * error.cc (dump_template_bindings): Check at_eof against an updated + value. + * module.cc (trees_out::lang_decl_bools): Stream escalated_p. + (trees_in::lang_decl_bools): Likewise. + * pt.cc (push_tinst_level_loc): Set at_eof to 3, not 2. + * typeck.cc (cp_build_addr_expr_1): Don't check + DECL_IMMEDIATE_FUNCTION_P. + 2023-12-04 Jason Merrill <jason@redhat.com> * constexpr.cc (potential_constant_expression_1): Fix |