tidy - bugprone-string-integer-assignment — Extra Clang Tools 22.0.0git documentation (original) (raw)
The check finds assignments of an integer to std::basic_string<CharT>(std::string, std::wstring, etc.). The source of the problem is the following assignment operator of std::basic_string<CharT>:
basic_string& operator=( CharT ch );
Numeric types can be implicitly casted to character types.
std::string s; int x = 5965; s = 6; s = x;
Use the appropriate conversion functions or character literals.
std::string s; int x = 5965; s = '6'; s = std::to_string(x);
In order to suppress false positives, use an explicit cast.
std::string s; s = static_cast(6);