Open howprice opened 7 months ago
I'm not sure what to do about this one for now, especially given the issue with the MSVC warning.
I'll have a look at it when I get time, but for now I would disable the warning before including the header.
Thanks. I've done that for now. Hopefully this wrinkle will flatten out over time.
case Emphasis::MIDDLE:
if (em.sym != c) break;
em.state = Emphasis::RIGHT;
em.text.stop = i;
#if __cplusplus >= 201703L
[[fallthrough]]
#endif
case Emphasis::RIGHT:
This should work for Visual Studio 2017 and above: https://devblogs.microsoft.com/cppblog/msvc-now-correctly-reports-__cplusplus/
I'm not sure the best way to resolve this issue in the repo, but when compiling with GCC on Ubuntu with options
-Wall -Wextra -pedantic -Wno-unknown-pragmas -Werror
:This warning can be handled in C++17 with the [[fallthrough]] attribute (in fact the linked example is almost this very case!). However, prior to C++17 unknown attributes were not guaranteed to be ignored, so using this attribute could lead to warnings with other toolchains.
I guess one messy solution might be:
EDIT:
Actually this fix
Results in MSVC warning: