2016-09-22 3 views
1

VS 2015에 기본 빈 프로젝트를 만들고 경고를 /Wall으로 설정했습니다. 나는 다음과 같은 오류가 발생할 수빈 main()에 대해 경고가 발생했습니다.

#pragma warning(push, 3)   
#include <functional> 
#pragma warning(pop) 

//#pragma warning(disable : 4710) 
int main() 
{ 

} 

: 나는 다음과 같은 단일 소스 파일이

1>c:\users\flatmouse\documents\visual studio 2015\projects\project72\project72\source.cpp(10): warning C4710: 'std::exception_ptr std::exception_ptr::_Current_exception(void) throw()': function not inlined 
1> c:\program files (x86)\microsoft visual studio 14.0\vc\include\exception(299): note: see declaration of 'std::exception_ptr::_Current_exception' 
1>c:\users\flatmouse\documents\visual studio 2015\projects\project72\project72\source.cpp(10): warning C4710: 'std::exception_ptr std::current_exception(void) noexcept': function not inlined 
1> c:\program files (x86)\microsoft visual studio 14.0\vc\include\exception(358): note: see declaration of 'std::current_exception' 

다음 나는에 팝업을 이동하여 모든 소스 코드 3의 경고 수준을 유지 시도 마지막 라인 :

#pragma warning(push, 3)   
#include <functional> 

//#pragma warning(disable : 4710) 
int main() 
{ 

} 
#pragma warning(pop) 

하지만 여전히 동일한 오류가 발생합니다.

경고가 계속보고되는 이유는 무엇입니까?

+0

/Wall이 다시 나타납니다 (여기 [http] // stackoverflow .com/questions/39603207/msvc-2015-wall-has-lots-of-useful-useful-messages)). –

+0

[누군가가 어제 거의 정확히 봤어] (http://stackoverflow.com/questions/39603207/msvc-2015-wall-has-lots-of-not-useful-messages). Wall은 위의 pragma에서 더 낮은 경고 수준으로 차단 한 경우에도 포함에 사소한 경고를 표시합니다. 아무도 좋은 대답을하지 않은 것처럼 보입니다. – user4581301

+2

@ RobertPrévost 그래. Queue the Pink Floyd. – user4581301

답변

2

Visual C++를 사용하면 /Wall이 아닌 /W4을 사용하십시오. 후자는 그냥 sillywarnings의 눈사태를 요구하고있다. 예전에는 Windows API 및 C++ 표준 라이브러리 헤더에 대해 경고 메시지가 표시되는 /W4 이었지만 이제는 Visual C++ 2015를 사용해도 행복하지 않습니다.