1
0
Fork 0
mirror of https://github.com/bolero-MURAKAMI/Sprout synced 2025-10-05 13:00:00 +00:00

fix for VC++11

This commit is contained in:
bolero-MURAKAMI 2012-12-17 23:10:23 +09:00
commit 8b80b159c8
148 changed files with 336 additions and 181 deletions

View file

@ -59,36 +59,36 @@ namespace sprout {
namespace placeholders {
namespace {
SPROUT_STATIC_CONSTEXPR sprout::placeholder<1> _1{};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<2> _2{};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<3> _3{};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<4> _4{};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<5> _5{};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<6> _6{};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<7> _7{};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<8> _8{};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<9> _9{};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<10> _10{};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<11> _11{};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<12> _12{};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<13> _13{};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<14> _14{};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<15> _15{};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<16> _16{};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<17> _17{};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<18> _18{};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<19> _19{};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<20> _20{};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<21> _21{};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<22> _22{};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<23> _23{};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<24> _24{};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<25> _25{};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<26> _26{};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<27> _27{};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<28> _28{};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<29> _29{};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<30> _30{};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<1> _1 = {};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<2> _2 = {};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<3> _3 = {};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<4> _4 = {};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<5> _5 = {};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<6> _6 = {};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<7> _7 = {};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<8> _8 = {};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<9> _9 = {};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<10> _10 = {};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<11> _11 = {};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<12> _12 = {};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<13> _13 = {};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<14> _14 = {};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<15> _15 = {};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<16> _16 = {};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<17> _17 = {};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<18> _18 = {};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<19> _19 = {};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<20> _20 = {};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<21> _21 = {};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<22> _22 = {};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<23> _23 = {};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<24> _24 = {};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<25> _25 = {};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<26> _26 = {};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<27> _27 = {};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<28> _28 = {};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<29> _29 = {};
SPROUT_STATIC_CONSTEXPR sprout::placeholder<30> _30 = {};
} // anonymous-namespace
} // namespace placeholders
using sprout::placeholders::_1;

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::address_of_t address_of_{};
SPROUT_STATIC_CONSTEXPR sprout::address_of_t address_of_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::assign_t assign_{};
SPROUT_STATIC_CONSTEXPR sprout::assign_t assign_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::bit_and_t bit_and_{};
SPROUT_STATIC_CONSTEXPR sprout::bit_and_t bit_and_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::bit_and_assign_t bit_and_assign_{};
SPROUT_STATIC_CONSTEXPR sprout::bit_and_assign_t bit_and_assign_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::bit_not_t bit_not_{};
SPROUT_STATIC_CONSTEXPR sprout::bit_not_t bit_not_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::bit_or_t bit_or_{};
SPROUT_STATIC_CONSTEXPR sprout::bit_or_t bit_or_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::bit_or_assign_t bit_or_assign_{};
SPROUT_STATIC_CONSTEXPR sprout::bit_or_assign_t bit_or_assign_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::bit_xor_t bit_xor_{};
SPROUT_STATIC_CONSTEXPR sprout::bit_xor_t bit_xor_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::bit_xor_assign_t bit_xor_assign_{};
SPROUT_STATIC_CONSTEXPR sprout::bit_xor_assign_t bit_xor_assign_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::call_fun_t call_fun_{};
SPROUT_STATIC_CONSTEXPR sprout::call_fun_t call_fun_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::comma_t comma_{};
SPROUT_STATIC_CONSTEXPR sprout::comma_t comma_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::cond_t cond_{};
SPROUT_STATIC_CONSTEXPR sprout::cond_t cond_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::dereference_t dereference_{};
SPROUT_STATIC_CONSTEXPR sprout::dereference_t dereference_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::divides_t divides_{};
SPROUT_STATIC_CONSTEXPR sprout::divides_t divides_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::divides_assign_t divides_assign_{};
SPROUT_STATIC_CONSTEXPR sprout::divides_assign_t divides_assign_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::equal_to_t equal_to_{};
SPROUT_STATIC_CONSTEXPR sprout::equal_to_t equal_to_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::greater_t greater_{};
SPROUT_STATIC_CONSTEXPR sprout::greater_t greater_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::greater_equal_t greater_equal_{};
SPROUT_STATIC_CONSTEXPR sprout::greater_equal_t greater_equal_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::less_t less_{};
SPROUT_STATIC_CONSTEXPR sprout::less_t less_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::less_equal_t less_equal_{};
SPROUT_STATIC_CONSTEXPR sprout::less_equal_t less_equal_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::logical_and_t logical_and_{};
SPROUT_STATIC_CONSTEXPR sprout::logical_and_t logical_and_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::logical_not_t logical_not_{};
SPROUT_STATIC_CONSTEXPR sprout::logical_not_t logical_not_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::logical_or_t logical_or_{};
SPROUT_STATIC_CONSTEXPR sprout::logical_or_t logical_or_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::mem_ptr_t mem_ptr_{};
SPROUT_STATIC_CONSTEXPR sprout::mem_ptr_t mem_ptr_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::member_t member_{};
SPROUT_STATIC_CONSTEXPR sprout::member_t member_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::minus_t minus_{};
SPROUT_STATIC_CONSTEXPR sprout::minus_t minus_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::minus_assign_t minus_assign_{};
SPROUT_STATIC_CONSTEXPR sprout::minus_assign_t minus_assign_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::modulus_t modulus_{};
SPROUT_STATIC_CONSTEXPR sprout::modulus_t modulus_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::modulus_assign_t modulus_assign_{};
SPROUT_STATIC_CONSTEXPR sprout::modulus_assign_t modulus_assign_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::multiplies_t multiplies_{};
SPROUT_STATIC_CONSTEXPR sprout::multiplies_t multiplies_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::multiplies_assign_t multiplies_assign_{};
SPROUT_STATIC_CONSTEXPR sprout::multiplies_assign_t multiplies_assign_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::negate_t negate_{};
SPROUT_STATIC_CONSTEXPR sprout::negate_t negate_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::not_equal_to_t not_equal_to_{};
SPROUT_STATIC_CONSTEXPR sprout::not_equal_to_t not_equal_to_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::plus_t plus_{};
SPROUT_STATIC_CONSTEXPR sprout::plus_t plus_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::plus_assign_t plus_assign_{};
SPROUT_STATIC_CONSTEXPR sprout::plus_assign_t plus_assign_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::posite_t posite_{};
SPROUT_STATIC_CONSTEXPR sprout::posite_t posite_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::post_dec_t post_dec_{};
SPROUT_STATIC_CONSTEXPR sprout::post_dec_t post_dec_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::post_inc_t post_inc_{};
SPROUT_STATIC_CONSTEXPR sprout::post_inc_t post_inc_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::pre_dec_t pre_dec_{};
SPROUT_STATIC_CONSTEXPR sprout::pre_dec_t pre_dec_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::pre_inc_t pre_inc_{};
SPROUT_STATIC_CONSTEXPR sprout::pre_inc_t pre_inc_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::shift_left_t shift_left_{};
SPROUT_STATIC_CONSTEXPR sprout::shift_left_t shift_left_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::shift_left_assign_t shift_left_assign_{};
SPROUT_STATIC_CONSTEXPR sprout::shift_left_assign_t shift_left_assign_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::shift_right_t shift_right_{};
SPROUT_STATIC_CONSTEXPR sprout::shift_right_t shift_right_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::shift_right_assign_t shift_right_assign_{};
SPROUT_STATIC_CONSTEXPR sprout::shift_right_assign_t shift_right_assign_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -21,7 +21,7 @@ namespace sprout {
}
};
namespace {
SPROUT_STATIC_CONSTEXPR sprout::subscript_t subscript_{};
SPROUT_STATIC_CONSTEXPR sprout::subscript_t subscript_ = {};
} // anonymous-namespace
} // namespace sprout

View file

@ -137,12 +137,13 @@ namespace sprout {
typedef T type;
private:
T* t_;
private:
reference_wrapper(T&&) SPROUT_DELETED_FUNCTION_DECL
public:
// construct/copy/destroy
SPROUT_CONSTEXPR reference_wrapper(T& t) SPROUT_NOEXCEPT
: t_(&t)
{}
reference_wrapper(T&&) = delete;
reference_wrapper(reference_wrapper<T> const&) SPROUT_NOEXCEPT = default;
// assignment
reference_wrapper& operator=(reference_wrapper<T> const&) SPROUT_NOEXCEPT = default;
@ -179,9 +180,9 @@ namespace sprout {
return sprout::reference_wrapper<T const>(t);
}
template<typename T>
void ref(T const&&) = delete;
void ref(T const&&) SPROUT_DELETED_FUNCTION_DECL
template<typename T>
void cref(T const&&) = delete;
void cref(T const&&) SPROUT_DELETED_FUNCTION_DECL
template<typename T>
inline SPROUT_CONSTEXPR sprout::reference_wrapper<T>
ref(sprout::reference_wrapper<T> t) SPROUT_NOEXCEPT {