제가 알기로는 멤버 함수는 thiscall호출 규약을 사용하는걸로 알고 있습니다.
근데 왜 이전 버전에서는 컴파일이 되었는지는 몰겠군요.
그럼
김시환 님이 쓰신 글 :
: 예전에 만들어 놓은 클래스 라이브러리를 빌더 10.4.0 까지는 정상적으로 사용을 하고 있었습니다.
: 그런데 10.4.1 로 버젼업을 하고 부터는 생성자 함수에 fastcall 이 붙어 있으면 전부 에러를 발생시키고 있습니다.
:
: class TestClass
: {
: public :
: __fastcall TestClass(int i, int j) ; // 에러 발생
: __fastcall ~TestClass() ; // 문제없음
: };
:
: 그래서 모든 클래스의 생성자 함수에 있는 __fastcall 을 제거하면 정상적으로 컴파일이 됩니다.
: CLang 컴파일러를 사용했을 경우 입니다.
:
: CLang에 무슨 기준이 변경된 것인가요? 아니면 제 코드에 어떤 문제가 있는 것일까요??
|