std::isupper is in <cctype> and required for MSVC