주() :분할 오류
//Produces "Error while dumping state (probably corrupted stack); Segmentation fault"
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
class Test
{
vector<int> numbers;
};
int main()
{
Test a;
ifstream infile;
cout << "Last statement..." << endl; // this gets executed
return 0;
}
흥미롭게도 1) 두 변수 중 하나만 선언 된 경우 오류가 발생하지 않습니다. 2) 벡터 멤버가있는 개체 대신 벡터 변수를 선언하면 모든 것이 잘됩니다. 3) ifstream 대신 ofstream을 선언하십시오. 다시 말하지만, 모든 것이 잘 작동합니다. 이 특정 조합에 문제가있는 것 같습니다 ...
이 오류는 컴파일러 버그 일 수 있습니까? Cygwin에서 gcc 버전 3.4.4를 사용합니다.
미리 감사드립니다.
가볼
gcc 3.4.4는 고대입니다. 4 시리즈로 시도해 볼 수 있습니까? –
버그 리포트가 비슷한 것을보고 기억하지만 정확히 찾을 수 없으므로 기억이 안납니다. 그러나 나는 이것이 고정되어있는 애매한 버그라고 확신한다. – GManNickG
어서 오세요. 나는 3.0이 최첨단이었을 때를 기억한다. gcc 2.95/2.96 이제 gcc 컴파일러가 생겼습니다. 난 그냥 g에서 프로그램을 컴파일하려고 –