gpt4 book ai didi

c++ - 在 constexpr 函数中断言

转载 作者:搜寻专家 更新时间:2023-10-31 01:28:21 25 4
gpt4 key购买 nike

在试图弄清楚为什么我会遇到某个编译错误时,我想到了以下最小示例:

constexpr void Test(bool test)
{
if (test)
return;

assert(false);
}

这对我尝试过的每个 clang 版本(3.7+)都没有问题,但对 gcc(测试 5-8)和

都失败了

error: call to non-‘constexpr’ function ‘void __assert_fail(const char*, const char*, unsigned int, const char*)’

根据我的理解,该函数应该能够是 constexpr,因为有一组参数值可以在编译时评估该函数。

是我的理解有误,还是 gcc 编译失败不正确?

最佳答案

这是 GCC bug 86678 ,几天前才修好。

关于c++ - 在 constexpr 函数中断言,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52397841/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com