Linting boost (particually asio)

Post a reply


This question is a means of preventing automated form submissions by spambots.

BBCode is ON
[img] is OFF
[flash] is OFF
[url] is OFF
Smilies are OFF

Topic review
   

Expand view Topic review: Linting boost (particually asio)

Linting boost (particually asio)

by nopcode85 » Thu Oct 08, 2020 11:04 am

Trying to lint a smallish project using the boost::asio library, and pclint is crashing. All it takes is a simple test.cpp file with no code, just a single include.

test.cpp:

Code: Select all

#include <boost/asio.hpp>
And then the command line:

c:\msdev\lint\pclp64.exe -iMyLintFolder -i"." -u "std.lnt" "test.cpp"

And I get a flurry of errors:

Code: Select all

--- Module:   test.cpp (C++)
      is_nothrow_query<const Executor&, blocking_t<>::possibly_t>::value))
boost\asio\execution\blocking.hpp(332): error 5682: (error -- implicit instantiation of template 'struct boost::asio::execution::detail::blocking_t<0>' within its own definition)
      is_nothrow_query<const Executor&, blocking_t<>::possibly_t>::value))
boost\asio\execution\blocking.hpp(332): error 5849: (error -- no type named 'value' in the global namespace)
#   define BOOST_ASIO_NOEXCEPT_IF(c) BOOST_NOEXCEPT_IF(c)
boost\asio\detail\config.hpp(294): error 893: (supplemental -- expanded from macro 'BOOST_ASIO_NOEXCEPT_IF')
More of the same and then...

Code: Select all

boost\asio\execution\bulk_guarantee.hpp(866): error 5849: (error -- no type named 'is_valid' in the global namespace)
  >::type>
boost\asio\execution\bulk_execute.hpp(198): error 5849: (error -- no type named 'type' in the global namespace)

                   === CRASH ===
PC-lint Plus 1.3.5 for Windows has crashed: Diag Info Code 0.
Please contact Gimpel Software Technical Support at support@gimpel.com.
If feasible, please provide a reduced test case along with any necessary
options/configuration required to reproduce the issue.

Thread: test.cpp
                   === CRASH ===
Obviously not great, so I wonder if there is a way to simple tell pcLint to just flat-out not lint the boost file - for example, something like a #pragma warning push/pop block?

Top