Use macro varargs within BOOST_NOEXCEPT_IF

I was going to ask about adding a BOOST_NOEXCEPT, but I just checked that the trunk already has it: //---#ifdef BOOST_NO_NOEXCEPT# define BOOST_NOEXCEPT# define BOOST_NOEXCEPT_IF(Predicate)# define BOOST_NOEXCEPT_EXPR(Expression) false#else# define BOOST_NOEXCEPT noexcept# define BOOST_NOEXCEPT_IF(Predicate) noexcept((Predicate))# define BOOST_NOEXCEPT_EXPR(Expression) noexcept((Expression))#endif//--- If the compiler supports varargs in macros, should we have: //===# define BOOST_NOEXCEPT_IF(...) noexcept(__VA_ARGS__)# define BOOST_NOEXCEPT_EXPR(...) noexcept(__VA_ARGS__)//=== (I think that's the right syntax.) instead so comma expressions can be used within a noexcept without the extra parentheses? But I doubt that it makes a difference here, since anything within the noexcept must be interpretable as a single expression. (I think it does for decltype, though. Extra parentheses turn a value type into a reference type(?).) Daryle W.
participants (1)
-
Daryle Walker