summaryrefslogtreecommitdiff
path: root/boost/serialization/factory.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'boost/serialization/factory.hpp')
-rw-r--r--boost/serialization/factory.hpp45
1 files changed, 23 insertions, 22 deletions
diff --git a/boost/serialization/factory.hpp b/boost/serialization/factory.hpp
index db5b1a9226..2db7e7e36c 100644
--- a/boost/serialization/factory.hpp
+++ b/boost/serialization/factory.hpp
@@ -48,32 +48,33 @@ namespace boost { \
namespace serialization { \
template<> \
T * factory<T, N>(std::va_list ap){ \
- BOOST_PP_IF(BOOST_PP_GREATER(N,0) \
- ,A0 a0 = va_arg(ap, A0); \
- ,BOOST_PP_IF(BOOST_PP_GREATER(N,1) \
- ,A1 a1 = va_arg(ap, A1); \
- ,BOOST_PP_IF(BOOST_PP_GREATER(N,2) \
- ,A2 a2 = va_arg(ap, A2); \
- ,BOOST_PP_IF(BOOST_PP_GREATER(N,3) \
- ,A3 a3 = va_arg(ap, A3); \
- ,BOOST_PP_EMPTY() \
- )))) \
+ BOOST_PP_IF(BOOST_PP_GREATER(N, 0) \
+ , A0 a0 = va_arg(ap, A0);, BOOST_PP_EMPTY()) \
+ BOOST_PP_IF(BOOST_PP_GREATER(N, 1) \
+ , A1 a1 = va_arg(ap, A1);, BOOST_PP_EMPTY()) \
+ BOOST_PP_IF(BOOST_PP_GREATER(N, 2) \
+ , A2 a2 = va_arg(ap, A2);, BOOST_PP_EMPTY()) \
+ BOOST_PP_IF(BOOST_PP_GREATER(N, 3) \
+ , A3 a3 = va_arg(ap, A3);, BOOST_PP_EMPTY()) \
return new T( \
- BOOST_PP_IF(BOOST_PP_GREATER(N,0) \
- ,a0 \
- ,BOOST_PP_IF(BOOST_PP_GREATER(N,1) \
- ,a1 \
- ,BOOST_PP_IF(BOOST_PP_GREATER(N,2) \
- ,a2 \
- ,BOOST_PP_IF(BOOST_PP_GREATER(N,3) \
- ,a3 \
- ,BOOST_PP_EMPTY() \
- )))) \
+ BOOST_PP_IF(BOOST_PP_GREATER(N, 0) \
+ , a0, BOOST_PP_EMPTY()) \
+ BOOST_PP_IF(BOOST_PP_GREATER(N, 1)) \
+ , BOOST_PP_COMMA, BOOST_PP_EMPTY)() \
+ BOOST_PP_IF(BOOST_PP_GREATER(N, 1) \
+ , a1, BOOST_PP_EMPTY()) \
+ BOOST_PP_IF(BOOST_PP_GREATER(N, 2)) \
+ , BOOST_PP_COMMA, BOOST_PP_EMPTY)() \
+ BOOST_PP_IF(BOOST_PP_GREATER(N, 2) \
+ , a2, BOOST_PP_EMPTY()) \
+ BOOST_PP_IF(BOOST_PP_GREATER(N, 3)) \
+ , BOOST_PP_COMMA, BOOST_PP_EMPTY)() \
+ BOOST_PP_IF(BOOST_PP_GREATER(N, 3) \
+ , a3, BOOST_PP_EMPTY()) \
); \
} \
} \
-} \
-/**/
+} /**/
#define BOOST_SERIALIZATION_FACTORY_4(T, A0, A1, A2, A3) \
BOOST_SERIALIZATION_FACTORY(4, T, A0, A1, A2, A3)