mirror of
https://github.com/bolero-MURAKAMI/Sprout.git
synced 2025-02-23 10:54:54 +00:00
fix CXX14_CONSTEXPR config
This commit is contained in:
parent
bf3cc47c15
commit
befe29adf0
2 changed files with 15 additions and 2 deletions
|
@ -60,7 +60,12 @@
|
||||||
# define SPROUT_HAS_CONSTEXPR_BIT_OPERATION
|
# define SPROUT_HAS_CONSTEXPR_BIT_OPERATION
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define SPROUT_NO_CXX14_CONSTEXPR
|
#if !defined(__cpp_constexpr) || (__cpp_constexpr < 201304)
|
||||||
#define SPROUT_NO_CXX14_VARIABLE_TEMPLATES
|
# define SPROUT_NO_CXX14_CONSTEXPR
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if !defined(__cpp_variable_templates) || (__cpp_variable_templates < 201304)
|
||||||
|
# define SPROUT_NO_CXX14_VARIABLE_TEMPLATES
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif // #ifndef SPROUT_CONFIG_COMPILER_GCC_HPP
|
#endif // #ifndef SPROUT_CONFIG_COMPILER_GCC_HPP
|
||||||
|
|
|
@ -464,12 +464,20 @@ namespace sprout {
|
||||||
z ^= (z >> l);
|
z ^= (z >> l);
|
||||||
return z;
|
return z;
|
||||||
}
|
}
|
||||||
|
#ifndef SPROUT_CONFIG_DISABLE_CXX14_CONSTEXPR
|
||||||
|
SPROUT_CXX14_CONSTEXPR sprout::random::random_result<mersenne_twister_engine> const operator()() const {
|
||||||
|
mersenne_twister_engine eng(*this);
|
||||||
|
result_type value = eng();
|
||||||
|
return sprout::random::random_result<mersenne_twister_engine>(value, eng);
|
||||||
|
}
|
||||||
|
#else // #ifndef SPROUT_CONFIG_DISABLE_CXX14_CONSTEXPR
|
||||||
SPROUT_CONSTEXPR sprout::random::random_result<mersenne_twister_engine> const operator()() const {
|
SPROUT_CONSTEXPR sprout::random::random_result<mersenne_twister_engine> const operator()() const {
|
||||||
return i_ == n
|
return i_ == n
|
||||||
? twist().generate()
|
? twist().generate()
|
||||||
: generate()
|
: generate()
|
||||||
;
|
;
|
||||||
}
|
}
|
||||||
|
#endif // #ifndef SPROUT_CONFIG_DISABLE_CXX14_CONSTEXPR
|
||||||
#ifndef SPROUT_CONFIG_DISABLE_CXX14_CONSTEXPR
|
#ifndef SPROUT_CONFIG_DISABLE_CXX14_CONSTEXPR
|
||||||
friend SPROUT_CXX14_CONSTEXPR bool operator==(mersenne_twister_engine const& lhs, mersenne_twister_engine const& rhs) SPROUT_NOEXCEPT {
|
friend SPROUT_CXX14_CONSTEXPR bool operator==(mersenne_twister_engine const& lhs, mersenne_twister_engine const& rhs) SPROUT_NOEXCEPT {
|
||||||
return lhs.i_ < rhs.i_
|
return lhs.i_ < rhs.i_
|
||||||
|
|
Loading…
Add table
Reference in a new issue