Boost logo

Boost Users :

Subject: Re: [Boost-users] [Parameter] Warnings from Preprocessor
From: Edward Diener (eldiener_at_[hidden])
Date: 2017-01-27 11:32:22


On 1/27/2017 6:52 AM, Phillip Seaver wrote:
> I recently updated to 1.63 from 1.57, and I'm now getting warnings from
> usages of BOOST_PARAMETER_MEMBER_FUNCTION on Windows (msvc-12.0) like:
>
> warning C4003: not enough actual parameters for macro
> 'BOOST_PP_SEQ_DETAIL_EMPTY_SIZE'
> warning C4003: not enough actual parameters for macro
> 'BOOST_PP_SEQ_DETAIL_IS_NOT_EMPTY'
>
> The code appears to be working, but since it's used in headers, I get a
> lot of warnings. Here's one of the usages:
>
> BOOST_PARAMETER_MEMBER_FUNCTION((Revision_t),
> CreateForegroundWhite,
> tag,
> (optional
> (imgclass, (Class_t), ClassPrint)
> (fromimage, (bool), true)
> (blackasgray, (bool), false)
> ))
>
> Should I be concerned about the warnings? Any way to get rid of them?

You need not be concerned about these warnings. I have made some changes
to Boost PP for the next release which may eliminate the above two
warnings, but in general the VC++ preprocessor often gives spurious
warnings of this kind which do not affect anything. The VC++ is not a
standard conforming C++ preprocessor in numerous ways.

>
> Thanks,
>
> Phillip


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net