add macro SPROUT_NON_CONSTEXPR