Doxygen 1.8.11 is choking on the following definition, which I simplified as much as I could without losing the warning message:
template <class T>
struct MySpecialization<T, void_t<decltype(std::declval<T>().foo(
std::declval<double>()))>> : std::true_type {};
The warning is:
warning: Found ';' while parsing initializer list! (doxygen could be confused by a macro call without semicolon)
Interestingly, Doxygen is fine with the following:
template <class T>
struct MySpecialization<T, void_t<decltype(std::declval<T>().foo())>> : std::true_type {};
which is basically the same definition without an argument to foo.
I would very much appreciate a workaround. In the worst case, I would like to somehow cause Doxygen to ignore this definition.
I've just committed a fix in GitHub for this issue, see https://github.com/doxygen/doxygen/commit/985faf287233badf65fa33d21bde17afa6970d60
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With