Boost C++ Libraries: Ticket #12310: xlc++: lexical_cast.hpp "invalid processing token" https://svn.boost.org/trac10/ticket/12310 <p> Hi, compiling the following file with boost 1.61.0 and xlc++ on an IBM POWER8 system results in the following errors... </p> <p> File: test.cpp </p> <pre class="wiki">#include &lt;fstream&gt; #include &lt;iostream&gt; #include &lt;string&gt; #include &lt;map&gt; #include &lt;set&gt; #include &lt;boost/lexical_cast.hpp&gt; #include &lt;boost/algorithm/string.hpp&gt; using namespace boost; using namespace std; struct testing { }; </pre><p> Command: </p> <pre class="wiki">xlc++ ./test.cpp -I/home/u0017592/projects/boost_1_61_0 </pre><p> Output: </p> <pre class="wiki">In file included from ./tools/test.cpp:13: In file included from /home/u0017592/projects/boost_1_61_0/boost/lexical_cast.hpp:30: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/iterator_range_core.hpp:38: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/functions.hpp:20: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/size.hpp:21: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/size_type.hpp:20: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/concepts.hpp:19: /home/u0017592/projects/boost_1_61_0/boost/concept_check.hpp:70:3: error: pasting formed 'BOOST_PP_SEQ_SIZE_0(', an invalid preprocessing token BOOST_concept(Integer, (T)) ^ /home/u0017592/projects/boost_1_61_0/boost/concept/detail/concept_def.hpp:19:16: note: expanded from macro 'BOOST_concept' template &lt; BOOST_PP_SEQ_FOR_EACH_I(BOOST_CONCEPT_typename,~,params) &gt; \ ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/for_each_i.hpp:30:55: note: expanded from macro 'BOOST_PP_SEQ_FOR_EACH_I' # define BOOST_PP_SEQ_FOR_EACH_I(macro, data, seq) BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK(macro, data, seq) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/for_each_i.hpp:42:4: note: expanded from macro 'BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK' BOOST_PP_SEQ_DETAIL_IS_NOT_EMPTY(seq), \ ^ note: (skipping 2 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all) /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/size.hpp:26:69: note: expanded from macro 'BOOST_PP_SEQ_SIZE' # define BOOST_PP_SEQ_SIZE(seq) BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_, BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_0, seq)) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/cat.hpp:22:32: note: expanded from macro 'BOOST_PP_CAT' # define BOOST_PP_CAT(a, b) BOOST_PP_CAT_I(a, b) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/cat.hpp:29:36: note: expanded from macro 'BOOST_PP_CAT_I' # define BOOST_PP_CAT_I(a, b) a ## b ^ In file included from ./tools/test.cpp:13: In file included from /home/u0017592/projects/boost_1_61_0/boost/lexical_cast.hpp:30: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/iterator_range_core.hpp:38: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/functions.hpp:20: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/size.hpp:21: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/size_type.hpp:20: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/concepts.hpp:19: /home/u0017592/projects/boost_1_61_0/boost/concept_check.hpp:70:3: error: pasting formed 'BOOST_PP_SEQ_SIZE_0(', an invalid preprocessing token /home/u0017592/projects/boost_1_61_0/boost/concept/detail/concept_def.hpp:19:16: note: expanded from macro 'BOOST_concept' template &lt; BOOST_PP_SEQ_FOR_EACH_I(BOOST_CONCEPT_typename,~,params) &gt; \ ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/for_each_i.hpp:30:55: note: expanded from macro 'BOOST_PP_SEQ_FOR_EACH_I' # define BOOST_PP_SEQ_FOR_EACH_I(macro, data, seq) BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK(macro, data, seq) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/for_each_i.hpp:43:4: note: expanded from macro 'BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK' BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK_EXEC, \ ^ note: (skipping 4 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all) /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/size.hpp:26:69: note: expanded from macro 'BOOST_PP_SEQ_SIZE' # define BOOST_PP_SEQ_SIZE(seq) BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_, BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_0, seq)) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/cat.hpp:22:32: note: expanded from macro 'BOOST_PP_CAT' # define BOOST_PP_CAT(a, b) BOOST_PP_CAT_I(a, b) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/cat.hpp:29:36: note: expanded from macro 'BOOST_PP_CAT_I' # define BOOST_PP_CAT_I(a, b) a ## b ^ In file included from ./tools/test.cpp:13: In file included from /home/u0017592/projects/boost_1_61_0/boost/lexical_cast.hpp:30: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/iterator_range_core.hpp:38: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/functions.hpp:20: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/size.hpp:21: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/size_type.hpp:20: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/concepts.hpp:19: /home/u0017592/projects/boost_1_61_0/boost/concept_check.hpp:70:3: error: pasting formed 'BOOST_PP_SEQ_ELEM_0(', an invalid preprocessing token /home/u0017592/projects/boost_1_61_0/boost/concept/detail/concept_def.hpp:19:16: note: expanded from macro 'BOOST_concept' template &lt; BOOST_PP_SEQ_FOR_EACH_I(BOOST_CONCEPT_typename,~,params) &gt; \ ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/for_each_i.hpp:30:55: note: expanded from macro 'BOOST_PP_SEQ_FOR_EACH_I' # define BOOST_PP_SEQ_FOR_EACH_I(macro, data, seq) BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK(macro, data, seq) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/for_each_i.hpp:43:4: note: expanded from macro 'BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK' BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK_EXEC, \ ^ note: (skipping 13 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all) /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/elem.hpp:39:66: note: expanded from macro 'BOOST_PP_SEQ_ELEM_I' # define BOOST_PP_SEQ_ELEM_I(i, seq) BOOST_PP_SEQ_ELEM_II(BOOST_PP_CAT(BOOST_PP_SEQ_ELEM_ ## i, seq)) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/cat.hpp:22:32: note: expanded from macro 'BOOST_PP_CAT' # define BOOST_PP_CAT(a, b) BOOST_PP_CAT_I(a, b) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/cat.hpp:29:36: note: expanded from macro 'BOOST_PP_CAT_I' # define BOOST_PP_CAT_I(a, b) a ## b ^ In file included from ./tools/test.cpp:13: In file included from /home/u0017592/projects/boost_1_61_0/boost/lexical_cast.hpp:30: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/iterator_range_core.hpp:38: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/functions.hpp:20: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/size.hpp:21: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/size_type.hpp:20: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/concepts.hpp:19: /home/u0017592/projects/boost_1_61_0/boost/concept_check.hpp:70:3: error: pasting formed 'BOOST_PP_SEQ_SIZE_0(', an invalid preprocessing token /home/u0017592/projects/boost_1_61_0/boost/concept/detail/concept_def.hpp:22:16: note: expanded from macro 'BOOST_concept' template &lt; BOOST_PP_SEQ_FOR_EACH_I(BOOST_CONCEPT_typename,~,params) &gt; \ ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/for_each_i.hpp:30:55: note: expanded from macro 'BOOST_PP_SEQ_FOR_EACH_I' # define BOOST_PP_SEQ_FOR_EACH_I(macro, data, seq) BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK(macro, data, seq) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/for_each_i.hpp:42:4: note: expanded from macro 'BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK' BOOST_PP_SEQ_DETAIL_IS_NOT_EMPTY(seq), \ ^ note: (skipping 2 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all) /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/size.hpp:26:69: note: expanded from macro 'BOOST_PP_SEQ_SIZE' # define BOOST_PP_SEQ_SIZE(seq) BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_, BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_0, seq)) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/cat.hpp:22:32: note: expanded from macro 'BOOST_PP_CAT' # define BOOST_PP_CAT(a, b) BOOST_PP_CAT_I(a, b) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/cat.hpp:29:36: note: expanded from macro 'BOOST_PP_CAT_I' # define BOOST_PP_CAT_I(a, b) a ## b ^ In file included from ./tools/test.cpp:13: In file included from /home/u0017592/projects/boost_1_61_0/boost/lexical_cast.hpp:30: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/iterator_range_core.hpp:38: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/functions.hpp:20: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/size.hpp:21: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/size_type.hpp:20: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/concepts.hpp:19: /home/u0017592/projects/boost_1_61_0/boost/concept_check.hpp:70:3: error: pasting formed 'BOOST_PP_SEQ_SIZE_0(', an invalid preprocessing token /home/u0017592/projects/boost_1_61_0/boost/concept/detail/concept_def.hpp:22:16: note: expanded from macro 'BOOST_concept' template &lt; BOOST_PP_SEQ_FOR_EACH_I(BOOST_CONCEPT_typename,~,params) &gt; \ ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/for_each_i.hpp:30:55: note: expanded from macro 'BOOST_PP_SEQ_FOR_EACH_I' # define BOOST_PP_SEQ_FOR_EACH_I(macro, data, seq) BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK(macro, data, seq) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/for_each_i.hpp:43:4: note: expanded from macro 'BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK' BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK_EXEC, \ ^ note: (skipping 4 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all) /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/size.hpp:26:69: note: expanded from macro 'BOOST_PP_SEQ_SIZE' # define BOOST_PP_SEQ_SIZE(seq) BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_, BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_0, seq)) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/cat.hpp:22:32: note: expanded from macro 'BOOST_PP_CAT' # define BOOST_PP_CAT(a, b) BOOST_PP_CAT_I(a, b) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/cat.hpp:29:36: note: expanded from macro 'BOOST_PP_CAT_I' # define BOOST_PP_CAT_I(a, b) a ## b ^ In file included from ./tools/test.cpp:13: In file included from /home/u0017592/projects/boost_1_61_0/boost/lexical_cast.hpp:30: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/iterator_range_core.hpp:38: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/functions.hpp:20: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/size.hpp:21: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/size_type.hpp:20: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/concepts.hpp:19: /home/u0017592/projects/boost_1_61_0/boost/concept_check.hpp:70:3: error: pasting formed 'BOOST_PP_SEQ_ELEM_0(', an invalid preprocessing token /home/u0017592/projects/boost_1_61_0/boost/concept/detail/concept_def.hpp:22:16: note: expanded from macro 'BOOST_concept' template &lt; BOOST_PP_SEQ_FOR_EACH_I(BOOST_CONCEPT_typename,~,params) &gt; \ ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/for_each_i.hpp:30:55: note: expanded from macro 'BOOST_PP_SEQ_FOR_EACH_I' # define BOOST_PP_SEQ_FOR_EACH_I(macro, data, seq) BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK(macro, data, seq) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/for_each_i.hpp:43:4: note: expanded from macro 'BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK' BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK_EXEC, \ ^ note: (skipping 13 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all) /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/elem.hpp:39:66: note: expanded from macro 'BOOST_PP_SEQ_ELEM_I' # define BOOST_PP_SEQ_ELEM_I(i, seq) BOOST_PP_SEQ_ELEM_II(BOOST_PP_CAT(BOOST_PP_SEQ_ELEM_ ## i, seq)) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/cat.hpp:22:32: note: expanded from macro 'BOOST_PP_CAT' # define BOOST_PP_CAT(a, b) BOOST_PP_CAT_I(a, b) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/cat.hpp:29:36: note: expanded from macro 'BOOST_PP_CAT_I' # define BOOST_PP_CAT_I(a, b) a ## b ^ In file included from ./tools/test.cpp:13: In file included from /home/u0017592/projects/boost_1_61_0/boost/lexical_cast.hpp:30: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/iterator_range_core.hpp:38: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/functions.hpp:20: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/size.hpp:21: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/size_type.hpp:20: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/concepts.hpp:19: /home/u0017592/projects/boost_1_61_0/boost/concept_check.hpp:70:3: error: pasting formed 'BOOST_PP_SEQ_SIZE_0(', an invalid preprocessing token /home/u0017592/projects/boost_1_61_0/boost/concept/detail/concept_def.hpp:24:15: note: expanded from macro 'BOOST_concept' : name&lt; BOOST_PP_SEQ_ENUM(params) &gt; \ ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/enum.hpp:28:69: note: expanded from macro 'BOOST_PP_SEQ_ENUM' # define BOOST_PP_SEQ_ENUM(seq) BOOST_PP_CAT(BOOST_PP_SEQ_ENUM_, BOOST_PP_SEQ_SIZE(seq)) seq ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/size.hpp:26:69: note: expanded from macro 'BOOST_PP_SEQ_SIZE' # define BOOST_PP_SEQ_SIZE(seq) BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_, BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_0, seq)) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/cat.hpp:22:32: note: expanded from macro 'BOOST_PP_CAT' # define BOOST_PP_CAT(a, b) BOOST_PP_CAT_I(a, b) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/cat.hpp:29:36: note: expanded from macro 'BOOST_PP_CAT_I' # define BOOST_PP_CAT_I(a, b) a ## b ^ In file included from ./tools/test.cpp:13: In file included from /home/u0017592/projects/boost_1_61_0/boost/lexical_cast.hpp:30: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/iterator_range_core.hpp:38: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/functions.hpp:20: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/size.hpp:21: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/size_type.hpp:20: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/concepts.hpp:19: /home/u0017592/projects/boost_1_61_0/boost/concept_check.hpp:70:3: error: pasting formed 'BOOST_PP_SEQ_SIZE_0(', an invalid preprocessing token /home/u0017592/projects/boost_1_61_0/boost/concept/detail/concept_def.hpp:28:16: note: expanded from macro 'BOOST_concept' template &lt; BOOST_PP_SEQ_FOR_EACH_I(BOOST_CONCEPT_typename,~,params) &gt; \ ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/for_each_i.hpp:30:55: note: expanded from macro 'BOOST_PP_SEQ_FOR_EACH_I' # define BOOST_PP_SEQ_FOR_EACH_I(macro, data, seq) BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK(macro, data, seq) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/for_each_i.hpp:42:4: note: expanded from macro 'BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK' BOOST_PP_SEQ_DETAIL_IS_NOT_EMPTY(seq), \ ^ note: (skipping 2 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all) /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/size.hpp:26:69: note: expanded from macro 'BOOST_PP_SEQ_SIZE' # define BOOST_PP_SEQ_SIZE(seq) BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_, BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_0, seq)) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/cat.hpp:22:32: note: expanded from macro 'BOOST_PP_CAT' # define BOOST_PP_CAT(a, b) BOOST_PP_CAT_I(a, b) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/cat.hpp:29:36: note: expanded from macro 'BOOST_PP_CAT_I' # define BOOST_PP_CAT_I(a, b) a ## b ^ In file included from ./tools/test.cpp:13: In file included from /home/u0017592/projects/boost_1_61_0/boost/lexical_cast.hpp:30: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/iterator_range_core.hpp:38: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/functions.hpp:20: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/size.hpp:21: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/size_type.hpp:20: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/concepts.hpp:19: /home/u0017592/projects/boost_1_61_0/boost/concept_check.hpp:70:3: error: pasting formed 'BOOST_PP_SEQ_SIZE_0(', an invalid preprocessing token /home/u0017592/projects/boost_1_61_0/boost/concept/detail/concept_def.hpp:28:16: note: expanded from macro 'BOOST_concept' template &lt; BOOST_PP_SEQ_FOR_EACH_I(BOOST_CONCEPT_typename,~,params) &gt; \ ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/for_each_i.hpp:30:55: note: expanded from macro 'BOOST_PP_SEQ_FOR_EACH_I' # define BOOST_PP_SEQ_FOR_EACH_I(macro, data, seq) BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK(macro, data, seq) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/for_each_i.hpp:43:4: note: expanded from macro 'BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK' BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK_EXEC, \ ^ note: (skipping 4 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all) /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/size.hpp:26:69: note: expanded from macro 'BOOST_PP_SEQ_SIZE' # define BOOST_PP_SEQ_SIZE(seq) BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_, BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_0, seq)) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/cat.hpp:22:32: note: expanded from macro 'BOOST_PP_CAT' # define BOOST_PP_CAT(a, b) BOOST_PP_CAT_I(a, b) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/cat.hpp:29:36: note: expanded from macro 'BOOST_PP_CAT_I' # define BOOST_PP_CAT_I(a, b) a ## b ^ In file included from ./tools/test.cpp:13: In file included from /home/u0017592/projects/boost_1_61_0/boost/lexical_cast.hpp:30: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/iterator_range_core.hpp:38: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/functions.hpp:20: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/size.hpp:21: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/size_type.hpp:20: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/concepts.hpp:19: /home/u0017592/projects/boost_1_61_0/boost/concept_check.hpp:70:3: error: pasting formed 'BOOST_PP_SEQ_ELEM_0(', an invalid preprocessing token /home/u0017592/projects/boost_1_61_0/boost/concept/detail/concept_def.hpp:28:16: note: expanded from macro 'BOOST_concept' template &lt; BOOST_PP_SEQ_FOR_EACH_I(BOOST_CONCEPT_typename,~,params) &gt; \ ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/for_each_i.hpp:30:55: note: expanded from macro 'BOOST_PP_SEQ_FOR_EACH_I' # define BOOST_PP_SEQ_FOR_EACH_I(macro, data, seq) BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK(macro, data, seq) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/for_each_i.hpp:43:4: note: expanded from macro 'BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK' BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK_EXEC, \ ^ note: (skipping 13 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all) /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/elem.hpp:39:66: note: expanded from macro 'BOOST_PP_SEQ_ELEM_I' # define BOOST_PP_SEQ_ELEM_I(i, seq) BOOST_PP_SEQ_ELEM_II(BOOST_PP_CAT(BOOST_PP_SEQ_ELEM_ ## i, seq)) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/cat.hpp:22:32: note: expanded from macro 'BOOST_PP_CAT' # define BOOST_PP_CAT(a, b) BOOST_PP_CAT_I(a, b) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/cat.hpp:29:36: note: expanded from macro 'BOOST_PP_CAT_I' # define BOOST_PP_CAT_I(a, b) a ## b ^ In file included from ./tools/test.cpp:13: In file included from /home/u0017592/projects/boost_1_61_0/boost/lexical_cast.hpp:30: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/iterator_range_core.hpp:38: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/functions.hpp:20: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/size.hpp:21: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/size_type.hpp:20: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/concepts.hpp:19: /home/u0017592/projects/boost_1_61_0/boost/concept_check.hpp:97:3: error: pasting formed 'BOOST_PP_SEQ_SIZE_0(', an invalid preprocessing token BOOST_concept(SignedInteger,(T)) { ^ /home/u0017592/projects/boost_1_61_0/boost/concept/detail/concept_def.hpp:19:16: note: expanded from macro 'BOOST_concept' template &lt; BOOST_PP_SEQ_FOR_EACH_I(BOOST_CONCEPT_typename,~,params) &gt; \ ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/for_each_i.hpp:30:55: note: expanded from macro 'BOOST_PP_SEQ_FOR_EACH_I' # define BOOST_PP_SEQ_FOR_EACH_I(macro, data, seq) BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK(macro, data, seq) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/for_each_i.hpp:42:4: note: expanded from macro 'BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK' BOOST_PP_SEQ_DETAIL_IS_NOT_EMPTY(seq), \ ^ note: (skipping 2 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all) /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/size.hpp:26:69: note: expanded from macro 'BOOST_PP_SEQ_SIZE' # define BOOST_PP_SEQ_SIZE(seq) BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_, BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_0, seq)) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/cat.hpp:22:32: note: expanded from macro 'BOOST_PP_CAT' # define BOOST_PP_CAT(a, b) BOOST_PP_CAT_I(a, b) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/cat.hpp:29:36: note: expanded from macro 'BOOST_PP_CAT_I' # define BOOST_PP_CAT_I(a, b) a ## b ^ In file included from ./tools/test.cpp:13: In file included from /home/u0017592/projects/boost_1_61_0/boost/lexical_cast.hpp:30: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/iterator_range_core.hpp:38: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/functions.hpp:20: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/size.hpp:21: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/size_type.hpp:20: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/concepts.hpp:19: /home/u0017592/projects/boost_1_61_0/boost/concept_check.hpp:97:3: error: pasting formed 'BOOST_PP_SEQ_SIZE_0(', an invalid preprocessing token /home/u0017592/projects/boost_1_61_0/boost/concept/detail/concept_def.hpp:19:16: note: expanded from macro 'BOOST_concept' template &lt; BOOST_PP_SEQ_FOR_EACH_I(BOOST_CONCEPT_typename,~,params) &gt; \ ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/for_each_i.hpp:30:55: note: expanded from macro 'BOOST_PP_SEQ_FOR_EACH_I' # define BOOST_PP_SEQ_FOR_EACH_I(macro, data, seq) BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK(macro, data, seq) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/for_each_i.hpp:43:4: note: expanded from macro 'BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK' BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK_EXEC, \ ^ note: (skipping 4 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all) /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/size.hpp:26:69: note: expanded from macro 'BOOST_PP_SEQ_SIZE' # define BOOST_PP_SEQ_SIZE(seq) BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_, BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_0, seq)) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/cat.hpp:22:32: note: expanded from macro 'BOOST_PP_CAT' # define BOOST_PP_CAT(a, b) BOOST_PP_CAT_I(a, b) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/cat.hpp:29:36: note: expanded from macro 'BOOST_PP_CAT_I' # define BOOST_PP_CAT_I(a, b) a ## b ^ In file included from ./tools/test.cpp:13: In file included from /home/u0017592/projects/boost_1_61_0/boost/lexical_cast.hpp:30: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/iterator_range_core.hpp:38: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/functions.hpp:20: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/size.hpp:21: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/size_type.hpp:20: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/concepts.hpp:19: /home/u0017592/projects/boost_1_61_0/boost/concept_check.hpp:97:3: error: pasting formed 'BOOST_PP_SEQ_ELEM_0(', an invalid preprocessing token /home/u0017592/projects/boost_1_61_0/boost/concept/detail/concept_def.hpp:19:16: note: expanded from macro 'BOOST_concept' template &lt; BOOST_PP_SEQ_FOR_EACH_I(BOOST_CONCEPT_typename,~,params) &gt; \ ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/for_each_i.hpp:30:55: note: expanded from macro 'BOOST_PP_SEQ_FOR_EACH_I' # define BOOST_PP_SEQ_FOR_EACH_I(macro, data, seq) BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK(macro, data, seq) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/for_each_i.hpp:43:4: note: expanded from macro 'BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK' BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK_EXEC, \ ^ note: (skipping 13 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all) /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/elem.hpp:39:66: note: expanded from macro 'BOOST_PP_SEQ_ELEM_I' # define BOOST_PP_SEQ_ELEM_I(i, seq) BOOST_PP_SEQ_ELEM_II(BOOST_PP_CAT(BOOST_PP_SEQ_ELEM_ ## i, seq)) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/cat.hpp:22:32: note: expanded from macro 'BOOST_PP_CAT' # define BOOST_PP_CAT(a, b) BOOST_PP_CAT_I(a, b) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/cat.hpp:29:36: note: expanded from macro 'BOOST_PP_CAT_I' # define BOOST_PP_CAT_I(a, b) a ## b ^ In file included from ./tools/test.cpp:13: In file included from /home/u0017592/projects/boost_1_61_0/boost/lexical_cast.hpp:30: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/iterator_range_core.hpp:38: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/functions.hpp:20: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/size.hpp:21: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/size_type.hpp:20: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/concepts.hpp:19: /home/u0017592/projects/boost_1_61_0/boost/concept_check.hpp:97:3: error: pasting formed 'BOOST_PP_SEQ_SIZE_0(', an invalid preprocessing token /home/u0017592/projects/boost_1_61_0/boost/concept/detail/concept_def.hpp:22:16: note: expanded from macro 'BOOST_concept' template &lt; BOOST_PP_SEQ_FOR_EACH_I(BOOST_CONCEPT_typename,~,params) &gt; \ ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/for_each_i.hpp:30:55: note: expanded from macro 'BOOST_PP_SEQ_FOR_EACH_I' # define BOOST_PP_SEQ_FOR_EACH_I(macro, data, seq) BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK(macro, data, seq) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/for_each_i.hpp:42:4: note: expanded from macro 'BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK' BOOST_PP_SEQ_DETAIL_IS_NOT_EMPTY(seq), \ ^ note: (skipping 2 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all) /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/size.hpp:26:69: note: expanded from macro 'BOOST_PP_SEQ_SIZE' # define BOOST_PP_SEQ_SIZE(seq) BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_, BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_0, seq)) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/cat.hpp:22:32: note: expanded from macro 'BOOST_PP_CAT' # define BOOST_PP_CAT(a, b) BOOST_PP_CAT_I(a, b) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/cat.hpp:29:36: note: expanded from macro 'BOOST_PP_CAT_I' # define BOOST_PP_CAT_I(a, b) a ## b ^ In file included from ./tools/test.cpp:13: In file included from /home/u0017592/projects/boost_1_61_0/boost/lexical_cast.hpp:30: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/iterator_range_core.hpp:38: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/functions.hpp:20: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/size.hpp:21: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/size_type.hpp:20: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/concepts.hpp:19: /home/u0017592/projects/boost_1_61_0/boost/concept_check.hpp:97:3: error: pasting formed 'BOOST_PP_SEQ_SIZE_0(', an invalid preprocessing token /home/u0017592/projects/boost_1_61_0/boost/concept/detail/concept_def.hpp:22:16: note: expanded from macro 'BOOST_concept' template &lt; BOOST_PP_SEQ_FOR_EACH_I(BOOST_CONCEPT_typename,~,params) &gt; \ ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/for_each_i.hpp:30:55: note: expanded from macro 'BOOST_PP_SEQ_FOR_EACH_I' # define BOOST_PP_SEQ_FOR_EACH_I(macro, data, seq) BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK(macro, data, seq) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/for_each_i.hpp:43:4: note: expanded from macro 'BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK' BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK_EXEC, \ ^ note: (skipping 4 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all) /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/size.hpp:26:69: note: expanded from macro 'BOOST_PP_SEQ_SIZE' # define BOOST_PP_SEQ_SIZE(seq) BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_, BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_0, seq)) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/cat.hpp:22:32: note: expanded from macro 'BOOST_PP_CAT' # define BOOST_PP_CAT(a, b) BOOST_PP_CAT_I(a, b) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/cat.hpp:29:36: note: expanded from macro 'BOOST_PP_CAT_I' # define BOOST_PP_CAT_I(a, b) a ## b ^ In file included from ./tools/test.cpp:13: In file included from /home/u0017592/projects/boost_1_61_0/boost/lexical_cast.hpp:30: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/iterator_range_core.hpp:38: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/functions.hpp:20: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/size.hpp:21: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/size_type.hpp:20: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/concepts.hpp:19: /home/u0017592/projects/boost_1_61_0/boost/concept_check.hpp:97:3: error: pasting formed 'BOOST_PP_SEQ_ELEM_0(', an invalid preprocessing token /home/u0017592/projects/boost_1_61_0/boost/concept/detail/concept_def.hpp:22:16: note: expanded from macro 'BOOST_concept' template &lt; BOOST_PP_SEQ_FOR_EACH_I(BOOST_CONCEPT_typename,~,params) &gt; \ ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/for_each_i.hpp:30:55: note: expanded from macro 'BOOST_PP_SEQ_FOR_EACH_I' # define BOOST_PP_SEQ_FOR_EACH_I(macro, data, seq) BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK(macro, data, seq) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/for_each_i.hpp:43:4: note: expanded from macro 'BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK' BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK_EXEC, \ ^ note: (skipping 13 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all) /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/elem.hpp:39:66: note: expanded from macro 'BOOST_PP_SEQ_ELEM_I' # define BOOST_PP_SEQ_ELEM_I(i, seq) BOOST_PP_SEQ_ELEM_II(BOOST_PP_CAT(BOOST_PP_SEQ_ELEM_ ## i, seq)) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/cat.hpp:22:32: note: expanded from macro 'BOOST_PP_CAT' # define BOOST_PP_CAT(a, b) BOOST_PP_CAT_I(a, b) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/cat.hpp:29:36: note: expanded from macro 'BOOST_PP_CAT_I' # define BOOST_PP_CAT_I(a, b) a ## b ^ In file included from ./tools/test.cpp:13: In file included from /home/u0017592/projects/boost_1_61_0/boost/lexical_cast.hpp:30: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/iterator_range_core.hpp:38: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/functions.hpp:20: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/size.hpp:21: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/size_type.hpp:20: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/concepts.hpp:19: /home/u0017592/projects/boost_1_61_0/boost/concept_check.hpp:97:3: error: pasting formed 'BOOST_PP_SEQ_SIZE_0(', an invalid preprocessing token /home/u0017592/projects/boost_1_61_0/boost/concept/detail/concept_def.hpp:24:15: note: expanded from macro 'BOOST_concept' : name&lt; BOOST_PP_SEQ_ENUM(params) &gt; \ ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/enum.hpp:28:69: note: expanded from macro 'BOOST_PP_SEQ_ENUM' # define BOOST_PP_SEQ_ENUM(seq) BOOST_PP_CAT(BOOST_PP_SEQ_ENUM_, BOOST_PP_SEQ_SIZE(seq)) seq ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/size.hpp:26:69: note: expanded from macro 'BOOST_PP_SEQ_SIZE' # define BOOST_PP_SEQ_SIZE(seq) BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_, BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_0, seq)) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/cat.hpp:22:32: note: expanded from macro 'BOOST_PP_CAT' # define BOOST_PP_CAT(a, b) BOOST_PP_CAT_I(a, b) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/cat.hpp:29:36: note: expanded from macro 'BOOST_PP_CAT_I' # define BOOST_PP_CAT_I(a, b) a ## b ^ In file included from ./tools/test.cpp:13: In file included from /home/u0017592/projects/boost_1_61_0/boost/lexical_cast.hpp:30: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/iterator_range_core.hpp:38: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/functions.hpp:20: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/size.hpp:21: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/size_type.hpp:20: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/concepts.hpp:19: /home/u0017592/projects/boost_1_61_0/boost/concept_check.hpp:97:3: error: pasting formed 'BOOST_PP_SEQ_SIZE_0(', an invalid preprocessing token /home/u0017592/projects/boost_1_61_0/boost/concept/detail/concept_def.hpp:28:16: note: expanded from macro 'BOOST_concept' template &lt; BOOST_PP_SEQ_FOR_EACH_I(BOOST_CONCEPT_typename,~,params) &gt; \ ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/for_each_i.hpp:30:55: note: expanded from macro 'BOOST_PP_SEQ_FOR_EACH_I' # define BOOST_PP_SEQ_FOR_EACH_I(macro, data, seq) BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK(macro, data, seq) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/for_each_i.hpp:42:4: note: expanded from macro 'BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK' BOOST_PP_SEQ_DETAIL_IS_NOT_EMPTY(seq), \ ^ note: (skipping 2 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all) /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/size.hpp:26:69: note: expanded from macro 'BOOST_PP_SEQ_SIZE' # define BOOST_PP_SEQ_SIZE(seq) BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_, BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_0, seq)) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/cat.hpp:22:32: note: expanded from macro 'BOOST_PP_CAT' # define BOOST_PP_CAT(a, b) BOOST_PP_CAT_I(a, b) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/cat.hpp:29:36: note: expanded from macro 'BOOST_PP_CAT_I' # define BOOST_PP_CAT_I(a, b) a ## b ^ In file included from ./tools/test.cpp:13: In file included from /home/u0017592/projects/boost_1_61_0/boost/lexical_cast.hpp:30: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/iterator_range_core.hpp:38: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/functions.hpp:20: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/size.hpp:21: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/size_type.hpp:20: In file included from /home/u0017592/projects/boost_1_61_0/boost/range/concepts.hpp:19: /home/u0017592/projects/boost_1_61_0/boost/concept_check.hpp:97:3: error: pasting formed 'BOOST_PP_SEQ_SIZE_0(', an invalid preprocessing token /home/u0017592/projects/boost_1_61_0/boost/concept/detail/concept_def.hpp:28:16: note: expanded from macro 'BOOST_concept' template &lt; BOOST_PP_SEQ_FOR_EACH_I(BOOST_CONCEPT_typename,~,params) &gt; \ ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/for_each_i.hpp:30:55: note: expanded from macro 'BOOST_PP_SEQ_FOR_EACH_I' # define BOOST_PP_SEQ_FOR_EACH_I(macro, data, seq) BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK(macro, data, seq) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/for_each_i.hpp:43:4: note: expanded from macro 'BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK' BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK_EXEC, \ ^ note: (skipping 4 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all) /home/u0017592/projects/boost_1_61_0/boost/preprocessor/seq/size.hpp:26:69: note: expanded from macro 'BOOST_PP_SEQ_SIZE' # define BOOST_PP_SEQ_SIZE(seq) BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_, BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_0, seq)) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/cat.hpp:22:32: note: expanded from macro 'BOOST_PP_CAT' # define BOOST_PP_CAT(a, b) BOOST_PP_CAT_I(a, b) ^ /home/u0017592/projects/boost_1_61_0/boost/preprocessor/cat.hpp:29:36: note: expanded from macro 'BOOST_PP_CAT_I' # define BOOST_PP_CAT_I(a, b) a ## b ^ fatal error: too many errors emitted, stopping now [-ferror-limit=] 20 errors generated. Error while processing ./tools/test.cpp. </pre><p> Version of xlc++: </p> <pre class="wiki">IBM XL C/C++ for Linux, V13.1.3 (5725-C73, 5765-J08) Version: 13.01.0003.0001 </pre><p> Any insight? </p> en-us Boost C++ Libraries /htdocs/site/boost.png https://svn.boost.org/trac10/ticket/12310 Trac 1.4.3 jlost@… Fri, 08 Jul 2016 18:33:20 GMT component, severity changed; keywords, owner set https://svn.boost.org/trac10/ticket/12310#comment:1 https://svn.boost.org/trac10/ticket/12310#comment:1 <ul> <li><strong>keywords</strong> lexical_cast build xlc++ xlc power8 added </li> <li><strong>owner</strong> set to <span class="trac-author">Antony Polukhin</span> </li> <li><strong>component</strong> <span class="trac-field-old">None</span> → <span class="trac-field-new">lexical_cast</span> </li> <li><strong>severity</strong> <span class="trac-field-old">Problem</span> → <span class="trac-field-new">Showstopper</span> </li> </ul> Ticket Antony Polukhin Mon, 11 Jul 2016 18:31:54 GMT owner, component changed https://svn.boost.org/trac10/ticket/12310#comment:2 https://svn.boost.org/trac10/ticket/12310#comment:2 <ul> <li><strong>owner</strong> changed from <span class="trac-author">Antony Polukhin</span> to <span class="trac-author">Neil Groves</span> </li> <li><strong>component</strong> <span class="trac-field-old">lexical_cast</span> → <span class="trac-field-new">range</span> </li> </ul> <p> Looks like an issue in boost.Range or Boost.PP </p> Ticket jlost@… Tue, 23 Aug 2016 19:22:38 GMT <link>https://svn.boost.org/trac10/ticket/12310#comment:3 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/12310#comment:3</guid> <description> <p> FYI, a bounty has been posted for this bug ($200): </p> <p> <a class="ext-link" href="https://www.bountysource.com/issues/36097120-xlc-lexical_cast-hpp-invalid-processing-token"><span class="icon">​</span>https://www.bountysource.com/issues/36097120-xlc-lexical_cast-hpp-invalid-processing-token</a> </p> </description> <category>Ticket</category> </item> <item> <author>pitman@…</author> <pubDate>Thu, 22 Sep 2016 19:31:49 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/12310#comment:4 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/12310#comment:4</guid> <description> <p> You can use the option -qnoxlcompatmacros to fix this. This is the same option that is used by b2/bjam when building all of Boost with xlcpp. Using the test you provided: </p> <p> xlC -c test.cpp -I../boost_1_61_0 -qnoxlcompatmacros </p> </description> <category>Ticket</category> </item> <item> <author>jlost@…</author> <pubDate>Fri, 24 Feb 2017 15:13:50 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/12310#comment:5 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/12310#comment:5</guid> <description> <p> Number1n00b, what is the nature of your proposed fix? I tested the above workaround and it works. camorton2 mentioned a patch at www-01.ibm dot com/support/docview.wss?uid=swg27006911 as well. Does your solution circumvent the need for these patches and flags? </p> </description> <category>Ticket</category> </item> <item> <author>jlost@…</author> <pubDate>Wed, 01 Mar 2017 15:53:14 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/12310#comment:6 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/12310#comment:6</guid> <description> <p> @pitman, what is the feasibility of a fix that removes the need for the -qnoxlcompatmacros flag? I see that IBM already has a patch available: www-01.ibm dot com/support/docview.wss?uid=swg27047524 What would it take for a patch like this to be merged into the codebase? </p> </description> <category>Ticket</category> </item> </channel> </rss>