서문 : 경고를 사용 중지하는 것은 좋은 생각이 아닙니다. 어쨌든, 이것에 대한 기술적 인 질문이 있습니다.gcc의 -W 값은 실제 경고와 일치합니까?
GCC 3.3.6를 사용하여, 나는 다음과 같은 경고 얻을 :
-Wno-theNameOfTheWarning
같은 인수를 제공하여 gcc warning options에 설명 된대로
choosing ... over ... because conversion sequence for the argument is better.
지금, 나는이 경고를 비활성화 할을 그러나 나는 경고의 이름을 모른다. 이 경고를 비활성화하는 옵션의 이름을 어떻게 알 수 있습니까? 변경할 수 없습니다 외부 라이브러리의 헤더에 발생하기 때문에
나는, 경고를 해결할 수 없습니다입니다. 그것은 부스트 직렬화 (rx(s, count)
)에 있습니다
template<class Archive, class Container, class InputFunction, class R>
inline void load_collection(Archive & ar, Container &s)
{
s.clear();
// retrieve number of elements
collection_size_type count;
unsigned int item_version;
ar >> BOOST_SERIALIZATION_NVP(count);
if(3 < ar.get_library_version())
ar >> BOOST_SERIALIZATION_NVP(item_version);
else
item_version = 0;
R rx;
rx(s, count);
std::size_t c = count;
InputFunction ifunc;
while(c-- > 0){
ifunc(ar, s, item_version);
}
}
이미 #pragma GCC system_header
을 시도했지만이 영향을 미치지 아니합니다. -I
대신 -isystem
을 사용하면 작동하지 않습니다.
일반적인 질문은 남아 있습니다. 경고 메시지의 텍스트를 알고 있습니다. 그러나 gcc warning options과의 상관 관계는 알 수 없습니다.
이 경고를 표시하는 코드가 실제로 포함 된 경우 매우 도움이되며 질문을 더 완전하게 작성하십시오. – unwind
... 왜 아직도 gcc 3.3을 사용하고 있습니까? – kennytm
우리는 최신 gcc 버전으로 마이그레이션하지만 gcc 3.3을 지원해야합니다. – SebastianK