I have a problem with flinting code snippet that use boost::bimap. I have a simple bimap.cpp that looks like this:
#include <boost/bimap.hpp>
typedef boost::bimap<int, double> TestBimap;
int main()
{
TestBimap flintTest;
return 0;
}
Not the perfect one, I know, but it just an example. I run flint on it:
flint --i../flexelint_cfg/ --i/home/rat/boost/1.45.0/include ../flexelint_cfg//co-gcc.lnt bimap.cpp
and flint return a enormous number of errors. The few from the top are:
--- Module: bimap.cpp (C++)$
$
While instantiating boost::bimaps::bimap<int,double> at File bimap.cpp line 7$
While instantiating boost::bimaps::detail::bimap_core<int,double,mpl_::na,mpl_::na,mpl_::na>$
at File /boost/1.45.0/include/boost/bimap/bimap.hpp$
line 137$
While instantiating struct boost::bimaps::detail::manage_bimap_key<int> at$
File /boost/1.45.0/include/boost/bimap/detail/bimap_core.hpp$
line 90$
While instantiating struct boost::bimaps::set_of<int> at File$
/boost/1.45.0/include/boost/bimap/detail/manage_bimap_key.hpp$
line 69$
While instantiating struct boost::concepts::requirement_<void$
(*)(boost::AssignableConcept<int>)> at File /boost/1.45.0/include/boost/bimap/set_of.hpp$
line 130$
While instantiating struct boost::AssignableConcept<int> at File$
/boost/1.45.0/include/boost/concept/detail/general.hpp$
line 54$
While instantiating struct boost::Assignable<int> at File$
/boost/1.45.0/include/boost/concept_check.hpp$
line 137$
While instantiating struct boost::concepts::requirement_<void$
(*)(boost::concepts::usage_requirements<boost::Assignable<int>>)> at File$
/boost/1.45.0/include/boost/concept_check.hpp$
line 139$
While instantiating struct boost::mpl::if_<boost::concepts::not_satisfied<boost::concepts::usage_requirements<boost::Assignable<int>$
>>,boost::concepts::constraint<boost::concepts::usage_requirements<boost::Assignable<int>>>,boost::concepts::requirement<boost::concepts::f$
ailed ************usage_requirements::************>> at File$
/boost/1.45.0/include/boost/concept/detail/general.hpp$
line 56$
While instantiating struct boost::concepts::not_satisfied<boost::concepts::usage_requirements<boost::Assignable<int>$
>> at File /boost/1.45.0/include/boost/mpl/if.hpp$
line 63$
_$
TestBimap flintTest;$
/boost/1.45.0/include/boost/concept/detail/has_constraints.hpp $
44 Error 1015: Symbol 'constraints' not found in class$
bimap.cpp 7 Info 831: Reference cited in prior message$
/boost/1.45.0/include/boost/bimap/bimap.hpp $
137 Info 831: Reference cited in prior message$
/64bit/boost/1.45.0/include/boost/mpl/if.hpp $
63 Info 831: Reference cited in prior message$
/boost/1.45.0/include/boost/bimap/detail/bimap_core.hpp $
90 Info 831: Reference cited in prior message$
/boost/1.45.0/include/boost/concept_check.hpp $
137 Info 831: Reference cited in prior message$
/boost/1.45.0/include/boost/concept_check.hpp $
139 Info 831: Reference cited in prior message$
/boost/1.45.0/include/boost/concept/detail/general.hpp $
54 Info 831: Reference cited in prior message$
/boost/1.45.0/include/boost/concept/detail/general.hpp $
56 Info 831: Reference cited in prior message$
/boost/1.45.0/include/boost/bimap/detail/manage_bimap_key.hpp $
69 Info 831: Reference cited in prior message$
/boost/1.45.0/include/boost/bimap/set_of.hpp $
130 Info 831: Reference cited in prior message$
My FlexeLint version is:
FlexeLint for C/C++ (Unix) Vers. 9.00i, Copyright Gimpel Software 1985-2012
I spent hours trying to make it work, but without luck. Anyone hitted the same problem and have a solution? Is this misconfiguration – I can post my config if this is required.
I will be very thankfull for help
Best regards!
PS: flexelint tag please;>?
For those of You who hitted the same problem as me. I asked this question directly to Gimepl support and they answered that this is a problem with FlexeLint not handling c++11 variadic templates. So, for now, then only workaround is to supress those warnings by -elib and -e options.