gpt4 book ai didi

c++ - 使用 std::complex 时出现 gcc4.9.1 的段错误

转载 作者:太空宇宙 更新时间:2023-11-04 13:44:40 25 4
gpt4 key购买 nike

我在尝试运行以下一小段代码时遇到段错误(使用 gcc4.9.1 macports OS X 10.10 Yosemite 编译):

#include <complex>
#include <iostream>

int main()
{
std::complex<double> z{1,0}; // 1 + i
std::cout << z << std::endl; // segfault here, why ?!?!?
}

该程序在除 g++4.9.1 之外的任何其他编译器(clang、以前的 g++ 版本等)上编译和运行良好。我完全不解,任何人都可以重现段错误吗?这对我来说非常麻烦,因为我的整个项目都使用复数,并且在我开始使用 g++4.9.1 后一切都停止工作(即段错误)。上面的代码是我能想到的最小示例。我没有使用任何优化标志,只是简单的 g++ -std=c++11 test.cpp。看起来像是编译器错误,但我不确定。

最佳答案

万一有人遇到这个问题,这里是答案。这是 libgcc 中的错误,请参阅我已填写的错误 https://trac.macports.org/ticket/45483 ,现已修复,因此您可能需要升级/更新您的 macports 安装。

关于c++ - 使用 std::complex<double> 时出现 gcc4.9.1 的段错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26452649/

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