1
0
Fork 0
mirror of https://github.com/bolero-MURAKAMI/Sprout synced 2025-08-03 12:49:50 +00:00

add SPROUT_PP_SOME_NUMBER

This commit is contained in:
bolero-MURAKAMI 2014-01-27 19:09:00 +09:00
parent 12e12373d0
commit b4b870209b
16 changed files with 108 additions and 76 deletions

View file

@ -9,24 +9,12 @@
#define SPROUT_WORKAROUND_BASE_CLASS_CONSTRUCT_HPP
#include <sprout/config.hpp>
#include <sprout/detail/predef.hpp>
//
// SPROUT_NEEDS_EXPLICIT_EMPTY_BASE_CLASS_CONSTRUCT
//
#ifndef SPROUT_NEEDS_EXPLICIT_EMPTY_BASE_CLASS_CONSTRUCT
# if SPROUT_CLANG_OR_LATER(3, 4, 0)
# define SPROUT_NEEDS_EXPLICIT_EMPTY_BASE_CLASS_CONSTRUCT (1)
# else
# define SPROUT_NEEDS_EXPLICIT_EMPTY_BASE_CLASS_CONSTRUCT (0)
# endif
#endif
//
// SPROUT_EXPLICIT_EMPTY_BASE_CLASS_CONSTRUCT
//
#ifndef SPROUT_EXPLICIT_EMPTY_BASE_CLASS_CONSTRUCT
# if SPROUT_NEEDS_EXPLICIT_EMPTY_BASE_CLASS_CONSTRUCT
# ifdef SPROUT_WORKAROUND_NEEDS_EXPLICIT_EMPTY_BASE_CLASS_CONSTRUCT
# define SPROUT_EXPLICIT_EMPTY_BASE_CLASS_CONSTRUCT(base) base()
# else
# define SPROUT_EXPLICIT_EMPTY_BASE_CLASS_CONSTRUCT(base)

View file

@ -9,15 +9,12 @@
#define SPROUT_WORKAROUND_DETAIL_UNIFORM_INT_DISTRIBUTION_HPP
#include <sprout/config.hpp>
#ifdef SPROUT_WORKAROUND_NOT_TERMINATE_RECURSIVE_CONSTEXPR_FUNCTION_TEMPLATE
# include <sprout/random/uniform_smallint.hpp>
#else
# include <sprout/random/uniform_int_distribution.hpp>
#endif
#ifdef SPROUT_WORKAROUND_NOT_TERMINATE_RECURSIVE_CONSTEXPR_FUNCTION_TEMPLATE
# include <sprout/random/uniform_smallint.hpp>
# define SPROUT_WORKAROUND_DETAIL_UNIFORM_INT_DISTRIBUTION sprout::random::uniform_smallint
#else
# include <sprout/random/uniform_int_distribution.hpp>
# define SPROUT_WORKAROUND_DETAIL_UNIFORM_INT_DISTRIBUTION sprout::random::uniform_int_distribution
#endif

View file

@ -14,17 +14,14 @@
#include <sprout/utility/any_convertible.hpp>
#include <sprout/type_traits/enabler_if.hpp>
#include <sprout/preprocessor/stringize.hpp>
#include <sprout/detail/predef.hpp>
//
// SPROUT_RECURSIVE_FUNCTION_TEMPLATE_INSTANTIATION_LIMIT
//
#ifndef SPROUT_RECURSIVE_FUNCTION_TEMPLATE_INSTANTIATION_LIMIT
# if defined(__clang__)
# if (__clang_major__ < 3 || (__clang_major__ == 3 && __clang_minor__ <= 2))
# define SPROUT_RECURSIVE_FUNCTION_TEMPLATE_INSTANTIATION_LIMIT 512
# else
# define SPROUT_RECURSIVE_FUNCTION_TEMPLATE_INSTANTIATION_LIMIT 256
# endif
# if SPROUT_CLANG_OR_LATER(3, 3, 0)
# define SPROUT_RECURSIVE_FUNCTION_TEMPLATE_INSTANTIATION_LIMIT 256
# else
# define SPROUT_RECURSIVE_FUNCTION_TEMPLATE_INSTANTIATION_LIMIT 512
# endif