1
次のC++コードをVS 2010でBoost 1.4でコンパイルすると、C4503警告メッセージが表示されます(「装飾された名前の長さを超えました。 9:私のパズル警告ブースターで "#pragma warning"を使用すると警告が発生する
#include <vector>
#include <map>
#pragma warning (push, 1)
#include <boost/units/quantity.hpp>
#include <boost/units/si/plane_angle.hpp>
#pragma warning (pop)
using namespace boost::units;
typedef std::pair<quantity<si::plane_angle>, quantity<si::plane_angle> > Section;
std::vector<Section> getEmptyVector()
{
std::vector<Section> sections;
return sections;
}
事は警告が、私は#pragma
ディレクティブを削除ときにのみ消えるということです。これについての説明はありますか、コンパイラにバグがありますか?
Boostは、異なるコンパイラに対する不要な警告を抑制しようとします。これらがたくさんある場合は、警告をトリガーする特定のコンパイラ、警告レベル、およびヘッダーをバグレポートに登録してください。 – pmr
私はそれが地球温暖化とは無関係であることに気づく前に、その質問を3回読まなければならなかった。 – Ferruccio
ありがとう、タイトルを変更しました。 –