boostorg / boostorg/fusion

BOOST_FUSION_ADAPT_ADT `not enough actual parameters for macro`

Open
#158 4 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
50
Forks
68
PR merge metrics
No merged PRs in 30d

Description

On MSVC if one wants to leave the setter/getter empty, e.g.:
```cpp
BOOST_FUSION_ADAPT_ADT(
data4,
(boost::optional, boost::optional const&, obj.a(), /**/)
(boost::optional, boost::optional const&, obj.b(), /**/)
(boost::optional, boost::optional const&, obj.c(), /**/)
);
```
will get a warning message:
```
..\libs\spirit\test\karma\regression_adapt_adt.cpp(110): warning C4003: not enough actual parameters for macro 'BOOST_PP_SEQ_SIZE_3'
..\libs\spirit\test\karma\regression_adapt_adt.cpp(110): warning C4003: not enough actual parameters for macro 'BOOST_PP_SEQ_ELEM_0'
```
Is it safe to ignore it?
Are there any methods except disabling the warning to fix this? MSVC will compile fine and without the warning if you replace `/**/` with `()` but it does not work for GCC and Clang,

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.