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

--- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Testcase:
#include <cstring>

struct Code
{
    constexpr Code(int) noexcept : _buffer{'1', '2', '\0'} {}

    char _buffer[3];
};

const Code T1 = {1};
const Code T2 = Code{1};
const Code T3 = T1;
const Code T4 = T2;
const Code T5{1};
const Code T6 = T5;

#define TEST T1

int
foo(const char* x)
{
  return std::strcmp(TEST._buffer, x);
}

size_t
bar()
{
  return std::strlen(TEST._buffer);
}

Reply via email to