5

Visual Studio C 코드에서 타사 라이브러리를 사용하여 Clang으로 컴파일하는 Xcode 프로젝트가 있습니다.Clang - "-fms-extensions"와 함께 익명 구조체 경고를 표시하지 않습니다.

제 3 자 라이브러리에서 헤더 파일에 익명 구조체가 사용되었습니다 (실제로 변경할 수는 없습니다). 따라서 나는이 경고를 얻을 :

"myfile.h : 47 : 17 : 익명 구조체는 GNU 확장이다"여기에 설명 된 바와 같이

, 난의 C 플래그에 "-fms-확장"을 전달하는 시도 내 Xcode 프로젝트 : http://clang.llvm.org/docs/UsersManual.html#microsoft-extensions

행운을 없습니다. 그 경고를 없애려면 어떻게해야할까요?

답변

3

-Wno-microsoft을 추가하면 나에게 적합하지 않습니다. -Wno-gnu을 사용하여이 작은 테스트 프로그램

typedef struct test_struct 
{ 
    struct 
    { 
    int a; 
    int b; 
    }; 
    int x; 
} Test; 

int main(int argc, char **argv) 
{ 
    Test test; 
    test.a = 0; 
} 

를 사용

버전이 경고를 비활성화 애플 LLVM 버전 5.0 (그 소리-500.2.79) (LLVM의 3.3svn 기준)

2

간단히 -Wno-microsoft을 사용하여 경고를 숨길 수 있습니다.