https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111787

--- Comment #3 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Jakub Jelinek <ja...@gcc.gnu.org>:

https://gcc.gnu.org/g:53a94071fa9e90e268a94adbdc903bd868ddeec1

commit r14-4596-g53a94071fa9e90e268a94adbdc903bd868ddeec1
Author: Jakub Jelinek <ja...@redhat.com>
Date:   Thu Oct 12 17:20:36 2023 +0200

    wide-int: Fix build with gcc < 12 or clang++ [PR111787]

    While my wide_int patch bootstrapped/regtested fine when I used GCC 12
    as system gcc, apparently it doesn't with GCC 11 and older or clang++.
    For GCC before PR96555 C++ DR1315 implementation the compiler complains
    about template argument involving template parameters, for clang++ the
    same + complains about missing needs_write_val_arg static data member
    in some wi::int_traits specializations.

    2023-10-12  Jakub Jelinek  <ja...@redhat.com>

            PR bootstrap/111787
            * tree.h (wi::int_traits <unextended_tree>::needs_write_val_arg):
New
            static data member.
            (int_traits <extended_tree <N>>::needs_write_val_arg): Likewise.
            (wi::ints_for): Provide separate partial specializations for
            generic_wide_int <extended_tree <N>> and INL_CONST_PRECISION or
that
            and CONST_PRECISION, rather than using
            int_traits <extended_tree <N> >::precision_type as the second
template
            argument.
            * rtl.h (wi::int_traits <rtx_mode_t>::needs_write_val_arg): New
            static data member.
            * double-int.h (wi::int_traits <double_int>::needs_write_val_arg):
            Likewise.

Reply via email to