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

--- Comment #7 from Martin Sebor <msebor at gcc dot gnu.org> ---
Unfortunately, __builtin_memchr is not usable in constexpr contexts.  Hardly
any of these builtins are.  I think the only exception is __builtin_strlen but
only to a limited extent (bug 77357 has some background).  There's a general
problem with folding it and other functions like it when the argument is an
array (i.e., a CONSTRUCTOR in GCC, as opposed to a STRING_CST).  Bug 78257 has
a test case involving memcmp but the same problem applies to memchr.  Once that
is solved all of this should just work both in C and in C++ (i.e., even beyond
constexpr).

Reply via email to