[Boost-bugs] [Boost C++ Libraries] #13443: boost.test data driven test fails to compile when number of samples greater than 9

Subject: [Boost-bugs] [Boost C++ Libraries] #13443: boost.test data driven test fails to compile when number of samples greater than 9
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2018-02-08 11:00:35


#13443: boost.test data driven test fails to compile when number of samples greater
than 9
--------------------------------------+-------------------------------
 Reporter: g.sermaidis@… | Owner: Gennadiy Rozental
     Type: Bugs | Status: new
Milestone: To Be Determined | Component: test
  Version: Boost 1.66.0 | Severity: Problem
 Keywords: test; data driven; arity |
--------------------------------------+-------------------------------
 Hello,
 It looks like boost.test fails to compile a simple data driven test with
 10 samples. I am using clang++ (Apple LLVM version 9.0.0
 (clang-900.0.39.2))with C++14 flags enabled. According to this help page
 <http://www.boost.org/doc/libs/1_66_0/libs/test/doc/html/boost_test/utf_reference/test_org_reference/test_org_boost_test_dataset.html>
 the compiler should have no problem dealing with number of samples greater
 than BOOST_TEST_DATASET_MAX_ARITY which is 10 by default. Even defining
 BOOST_TEST_DATASET_MAX_ARITY to 20 prior to including any headers still
 fails to compile with the following error:
 /usr/local/include/boost/test/data/test_case.hpp:182: error: no matching
 function for call to 'bind'
                            boost::bind( &TestCase::template
 test_method<Arg...>,
                            ^~~~~~~~~~~

 Here is the relevant code:

 {{{
 #define BOOST_TEST_MODULE dataset_example68
 #define BOOST_TEST_DYN_LINK
 #include <boost/test/unit_test.hpp>
 #include <boost/test/data/test_case.hpp>
 #include <boost/test/data/monomorphic.hpp>
 #include <sstream>
 namespace bdata = boost::unit_test::data;
 BOOST_DATA_TEST_CASE(
 test1,
 bdata::make( { 1, 2, 3, 5 } ) ^
 bdata::make( { 1, 2, 3, 5 } ) ^
 bdata::make( { 1, 2, 3, 5 } ) ^
 bdata::make( { 1, 2, 3, 5 } ) ^
 bdata::make( { 1, 2, 3, 5 } ) ^
 bdata::make( { 1, 2, 3, 5 } ) ^
 bdata::make( { 1, 2, 3, 5 } ) ^
 bdata::make( { 1, 2, 3, 5 } ) ^
 bdata::make( { 1, 2, 3, 5 } ) ^
 bdata::make( { 1, 2, 3, 5 } ),
 sample1, sample2, sample3, sample4, sample5, sample6, sample7, sample8,
 sample9, sample10)
 {}
 }}}

 Thank you!

-- 
Ticket URL: <https://svn.boost.org/trac10/ticket/13443>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2018-02-08 11:04:29 UTC