読者です 読者をやめる 読者になる 読者になる

VC++9.0 SP1 Beta で警告出るようになった

VC++

以下のコードで警告が出る(VC++9.0 ではたぶん出なかった)

#include <iostream>
#include <vector>
#include <algorithm>
#include <boost/lambda/lambda.hpp>

using namespace std;
using namespace boost::lambda;

int main()
{
    vector<int> v;

    v.push_back(3);
    v.push_back(1);
    v.push_back(4);

    for_each(v.begin(), v.end(), cout << _1 << "\n");

    return 0;
}

>main.cpp
1>C:\Program Files\boost\boost_1_35_0\boost/lambda/detail/lambda_functor_base.hpp(43) : warning C4512: 'boost::lambda::identity' : 代入演算子を生成できません。
1> with
1> [
1> T=std::basic_ostream> &
1> ]
1> C:\Program Files\boost\boost_1_35_0\boost/lambda/detail/lambda_functors.hpp(113) : コンパイルされたクラスの テンプレート のインスタンス化 'boost::lambda::identity' の参照を確認してください
1> with
1> [
1> T=std::basic_ostream> &
1> ]
1> C:\Program Files\boost\boost_1_35_0\boost/lambda/detail/lambda_functor_base.hpp(164) : コンパイルされたクラスの テンプレート のインスタンス化 'boost::lambda::lambda_functor' の参照を確認してください
1> with
1> [
1> T=boost::lambda::identity> &>
1> ]
1> C:\Program Files\boost\boost_1_35_0\boost/lambda/detail/lambda_functor_base.hpp(213) : コンパイルされたクラスの テンプレート のインスタンス化 'boost::lambda::detail::deduce_argument_types_' の参照を確認してください
1> with
1> [
1> Args=boost::tuples::tuple> &,boost::lambda::lambda_functor>,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type>,
1> SigArgs=boost::tuples::null_type
1> ]
1> C:\Program Files\boost\boost_1_35_0\boost/lambda/detail/operator_lambda_func_base.hpp(60) : コンパイルされたクラスの テンプレート のインスタンス化 'boost::lambda::detail::deduce_argument_types' の参照を確認してください
1> with
1> [
1> Args=boost::tuples::tuple> &,boost::lambda::lambda_functor>,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type>,
1> SigArgs=boost::tuples::null_type
1> ]
1> C:\Program Files\boost\boost_1_35_0\boost/lambda/detail/operator_lambda_func_base.hpp(212) : コンパイルされたクラスの テンプレート のインスタンス化 'boost::lambda::detail::binary_rt' の参照を確認してください
1> with
1> [
1> Action=boost::lambda::bitwise_action,
1> Bound=boost::tuples::tuple> &,boost::lambda::lambda_functor>,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type>,
1> Open=boost::tuples::null_type
1> ]
1> C:\Program Files\boost\boost_1_35_0\boost/lambda/detail/lambda_functors.hpp(134) : コンパイルされたクラスの テンプレート のインスタンス化 'boost::lambda::lambda_functor_base::sig' の参照を確認してください
1> with
1> [
1> Act=boost::lambda::bitwise_action,
1> Args=boost::tuples::tuple> &,boost::lambda::lambda_functor>,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type>,
1> SigArgs=boost::tuples::null_type
1> ]
1> .\main.cpp(17) : コンパイルされたクラスの テンプレート のインスタンス化 'boost::lambda::lambda_functor' の参照を確認してください
1> with
1> [
1> T=boost::lambda::lambda_functor_base,boost::tuples::tuple> &,boost::lambda::lambda_functor>,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type>>
1> ]
1>C:\Program Files\boost\boost_1_35_0\boost/lambda/detail/lambda_functors.hpp(245) : warning C4512: 'boost::lambda::lambda_functor' : 代入演算子を生成できません。
1> with
1> [
1> T=boost::lambda::identity> &>
1> ]
1>C:\Program Files\boost\boost_1_35_0\boost/lambda/detail/lambda_functor_base.hpp(43) : warning C4512: 'boost::lambda::identity' : 代入演算子を生成できません。
1> with
1> [
1> T=const char (&)[2]
1> ]
1> C:\Program Files\boost\boost_1_35_0\boost/lambda/detail/lambda_functors.hpp(113) : コンパイルされたクラスの テンプレート のインスタンス化 'boost::lambda::identity' の参照を確認してください
1> with
1> [
1> T=const char (&)[2]
1> ]
1> C:\Program Files\boost\boost_1_35_0\boost/lambda/detail/lambda_functor_base.hpp(164) : コンパイルされたクラスの テンプレート のインスタンス化 'boost::lambda::lambda_functor' の参照を確認してください
1> with
1> [
1> T=boost::lambda::identity
1> ]
1> C:\Program Files\boost\boost_1_35_0\boost/lambda/detail/lambda_functor_base.hpp(169) : コンパイルされたクラスの テンプレート のインスタンス化 'boost::lambda::detail::deduce_argument_types_' の参照を確認してください
1> with
1> [
1> Args=boost::tuples::cons::type>,
1> SigArgs=boost::tuples::null_type
1> ]
1> C:\Program Files\boost\boost_1_35_0\boost/lambda/detail/lambda_functor_base.hpp(213) : コンパイルされたクラスの テンプレート のインスタンス化 'boost::lambda::detail::deduce_argument_types_' の参照を確認してください
1> with
1> [
1> Args=boost::tuples::tuple,boost::tuples::tuple> &,boost::lambda::lambda_functor>,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type>>>,const char (&)[2],boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type>,
1> SigArgs=boost::tuples::null_type
1> ]
1> C:\Program Files\boost\boost_1_35_0\boost/lambda/detail/operator_lambda_func_base.hpp(60) : コンパイルされたクラスの テンプレート のインスタンス化 'boost::lambda::detail::deduce_argument_types' の参照を確認してください
1> with
1> [
1> Args=boost::tuples::tuple,boost::tuples::tuple> &,boost::lambda::lambda_functor>,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type>>>,const char (&)[2],boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type>,
1> SigArgs=boost::tuples::null_type
1> ]
1> C:\Program Files\boost\boost_1_35_0\boost/lambda/detail/operator_lambda_func_base.hpp(212) : コンパイルされたクラスの テンプレート のインスタンス化 'boost::lambda::detail::binary_rt' の参照を確認してください
1> with
1> [
1> Action=boost::lambda::bitwise_action,
1> Bound=boost::tuples::tuple,boost::tuples::tuple> &,boost::lambda::lambda_functor>,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type>>>,const char (&)[2],boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type>,
1> Open=boost::tuples::null_type
1> ]
1> C:\Program Files\boost\boost_1_35_0\boost/lambda/detail/lambda_functors.hpp(134) : コンパイルされたクラスの テンプレート のインスタンス化 'boost::lambda::lambda_functor_base::sig' の参照を確認してください
1> with
1> [
1> Act=boost::lambda::bitwise_action,
1> Args=boost::tuples::tuple,boost::tuples::tuple> &,boost::lambda::lambda_functor>,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type>>>,const char (&)[2],boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type>,
1> SigArgs=boost::tuples::null_type
1> ]
1> .\main.cpp(17) : コンパイルされたクラスの テンプレート のインスタンス化 'boost::lambda::lambda_functor' の参照を確認してください
1> with
1> [
1> T=boost::lambda::lambda_functor_base,boost::tuples::tuple,boost::tuples::tuple> &,boost::lambda::lambda_functor>,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type>>>,const char (&)[2],boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type,boost::tuples::null_type>>
1> ]
1>C:\Program Files\boost\boost_1_35_0\boost/lambda/detail/lambda_functors.hpp(245) : warning C4512: 'boost::lambda::lambda_functor' : 代入演算子を生成できません。
1> with
1> [
1> T=boost::lambda::identity
1> ]