GCC и Clang ведут себя по-разному в отношении постоянной оценки.C++

Программы на C++. Форум разработчиков
Ответить Пред. темаСлед. тема
Anonymous
 GCC и Clang ведут себя по-разному в отношении постоянной оценки.

Сообщение Anonymous »


Я наблюдаю несоответствие между GCC и Clang в отношении того, что такое константный оцениваемый контекст. Я играл с разными ситуациями:

#include #include consteval auto ceval(auto x) { return x * x; } constexpr auto constexrif (авто x) { if constexpr (std::is_integral_v) { вернуть Цеваль (х); } еще { вернуть х + 2.; } } constexpr auto constexprif_consteval (авто x) { if constexpr (std::is_integral_v) { если констеваль { вернуть Цеваль (х); } еще { вернуть х * х + 1; } } еще { вернуть х + 2.; } } constexpr auto constevalif (авто x) { если констеваль { вернуть Цеваль (х); } еще { return static_cast(x + 2.); } } constexpr auto isconstantevaluated(auto x) { если (std::is_constant_evaluated()) { вернуть Цеваль (х); } еще { return static_cast(x + 2.); } } интервал основной() { #ifdef __clang__ // GCC нокаут авто а = consexprif(42); const auto b = consexprif(42); constexpr auto c = constexrif(42); std::cout
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Плагины C/C++ ведут себя по-разному в MacOS и Windows.
    Гость » » в форуме C++
    0 Ответы
    99 Просмотры
    Последнее сообщение Гость
  • Firefox и Chrome ведут себя по-разному при использовании flex:1 в img.
    Anonymous » » в форуме CSS
    0 Ответы
    96 Просмотры
    Последнее сообщение Anonymous
  • EJB-транзакции ведут себя по-разному в Wildfly 8 при развертывании Windows и Linux
    Гость » » в форуме Linux
    0 Ответы
    83 Просмотры
    Последнее сообщение Гость
  • Похожие типы (int16_t и short) ведут себя по-разному во время создания экземпляра ссылки.
    Anonymous » » в форуме C++
    0 Ответы
    40 Просмотры
    Последнее сообщение Anonymous
  • Рекурсивная функция R и ее перевод Python ведут себя по-разному
    Anonymous » » в форуме Python
    0 Ответы
    65 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C++»