This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: C PATCH to kill c_save_expr or towards delayed folding for the C FE
On Mon, 15 May 2017, Marek Polacek wrote:
> Thanks for pointing this out! The new version:
>
> Bootstrapped/regtested on x86_64-linux.
>
> 2017-05-15 Marek Polacek <polacek@redhat.com>
>
> * c-common.c (c_save_expr): Remove.
> (c_common_truthvalue_conversion): Remove a call to c_save_expr.
> * c-common.h (c_save_expr): Remove declaration.
>
> * c-convert.c (convert): Replace c_save_expr with save_expr. Don't
> call c_fully_fold.
> (convert) <case COMPLEX_TYPE>: Remove special handling of COMPLEX_TYPEs.
> * c-decl.c (grokdeclarator): Replace c_save_expr with save_expr.
> * c-fold.c (c_fully_fold_internal): Handle SAVE_EXPR.
> * c-parser.c (c_parser_declaration_or_fndef): Replace c_save_expr with
> save_expr.
> (c_parser_conditional_expression): Likewise.
> * c-tree.h (SAVE_EXPR_FOLDED_P): Define.
> * c-typeck.c (build_modify_expr): Replace c_save_expr with save_expr.
> (process_init_element): Likewise.
> (build_binary_op): Likewise.
> (handle_omp_array_sections_1): Likewise.
This is OK (given the save_expr folding change it depends on).
--
Joseph S. Myers
joseph@codesourcery.com