我在Boost.Variant类中有 220 个“无法访问的代码”警告boost::detail::variant::invoke_visitor
:
template <typename T>
result_type internal_visit(T& operand, int)
{
return visitor_(operand);
}
.
boost_1_50_0\boost\variant\variant.hpp(859): warning C4702: unreachable code
线return visitor_(operand);
。
首先,在这个简单的单行函数中,怎么可能有无法访问的代码呢?哪个代码无法访问?
我无法在简单的情况下重现此警告,似乎是因为我不明白究竟是什么原因造成的。在我operator==
为boost::variant
.
环境:VC++ 2010,Boost 1.50
编辑:
警告仅在发布版本(优化)中发生,并且仅在我比较boost::variant
s. 我使用boost::variant
原始类型和自定义类型。自定义类型实现了典型bool operator(CT const& lh, CT const& rh)
的自由函数。