id,summary,reporter,owner,description,type,status,milestone,component,version,severity,resolution,keywords,cc 13372,"Boost Preprocessing: compiler error: macro ""BOOST_PP_VARIADIC_ELEM_2"" requires 4 arguments, but only 2 given",Dmitrii B ,No-Maintainer,"The following code produces the following compiler error when compiled with gcc 7.2.0 or clang 3.8.0 {{{ error: macro ""BOOST_PP_VARIADIC_ELEM_2"" requires 4 arguments, but only 2 given }}} {{{ #include #define CREATE_ENUM_ELEMENT(elementTuple) \ BOOST_PP_IF(BOOST_PP_EQUAL(BOOST_PP_TUPLE_SIZE(elementTuple), 3), \ BOOST_PP_TUPLE_ELEM(0, elementTuple) = BOOST_PP_TUPLE_ELEM(2, elementTuple), \ BOOST_PP_TUPLE_ELEM(0, elementTuple) \ ), enum class MyEnum { CREATE_ENUM_ELEMENT((El1)) }; int main() { return 0; } }}} (online demo: http://coliru.stacked-crooked.com/a/f01351ee7a0ca55d ) ",Bugs,new,To Be Determined,preprocessor,Boost 1.64.0,Problem,,,