[Bug c++/93275] internal compiler error: unexpected expression 'N' of kind template_parm_index

tahasuf at gmail dot com gcc-bugzilla@gcc.gnu.org
Wed Jan 15 15:27:00 GMT 2020


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

--- Comment #2 from ahmet özhan <tahasuf at gmail dot com> ---
template <typename Other, std::enable_if_t<
        (array_depth_v<array> > array_depth_v<Other>),
        std::nullptr_t> = nullptr>
constexpr array operator * (const Other& other) const {
        array result {};
        std::transform(
                std::begin(*this),
                std::end(*this),
                std::begin(result),
                [other](const T& t) { return t * other; });
        return result;
}

but change this line and add -fconcepts
------
template <typename Other, std::enable_if_t<
        (array_depth_v<array> > array_depth_v<Other>),
        std::nullptr_t> = nullptr>
-----
template <typename Other>
requires (array_depth_v<array> > array_depth_v<Other>)

gcc 9.0 compile.


More information about the Gcc-bugs mailing list