scnlib
scnlib copied to clipboard
warning C4127: conditional expression is constant
I get the following warning with VS 2022 17.3
1>C:\Projects\Libraries\scnlib\scnlib\src\locale.cpp(311,9): warning C4127: conditional expression is constant
1>C:\Projects\Libraries\scnlib\scnlib\src\locale.cpp(311,9): message : consider using 'if constexpr' statement instead
1>C:\Projects\Libraries\scnlib\scnlib\src\locale.cpp(311): message : while compiling class template member function 'bool scn::v1::detail::basic_custom_locale_ref<char>::is_alnum(scn::v1::span<const char>) const'
1>C:\Projects\Libraries\scnlib\scnlib\src\locale.cpp(538): message : see reference to class template instantiation 'scn::v1::detail::basic_custom_locale_ref<char>' being compiled
The fix is to replace several occurrences of:
if (sizeof(CharT) == 1) {
with
if constexpr (sizeof(CharT) == 1) {
PR: https://github.com/eliaskosunen/scnlib/pull/61