Add -Wuseless-cast to FTXUI_DEV_WARNINGS (#728)

Add the -Wuseless-cast to the FTXUI_DEV_WARNINGS and
fix the compiler complaints about useless casts
This commit is contained in:
Stefan Ravn van Overeem 2023-08-19 11:20:04 +02:00 committed by GitHub
parent 1e6df78ec2
commit eb9a701fd7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 9 additions and 5 deletions

View File

@ -77,6 +77,10 @@ function(ftxui_set_options library)
target_compile_options(${library} PRIVATE "-Wpedantic")
target_compile_options(${library} PRIVATE "-Wshadow")
target_compile_options(${library} PRIVATE "-Wunused")
if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
target_compile_options(${library} PRIVATE "-Wuseless-cast")
endif()
endif()
endif()

View File

@ -82,8 +82,8 @@ class ContainerBase : public ComponentBase {
return;
}
for (size_t offset = 1; offset < children_.size(); ++offset) {
const size_t i = ((size_t(*selector_ + offset * dir + children_.size())) %
children_.size());
const size_t i =
(*selector_ + offset * dir + children_.size()) % children_.size();
if (children_[i]->Focusable()) {
*selector_ = int(i);
return;

View File

@ -201,7 +201,7 @@ TerminalInputParser::Output TerminalInputParser::Parse() {
// Then some sequences are illegal if it exist a shorter representation of the
// same codepoint.
TerminalInputParser::Output TerminalInputParser::ParseUTF8() {
auto head = static_cast<unsigned char>(Current());
auto head = Current();
unsigned char selector = 0b1000'0000; // NOLINT
// The non code-point part of the first byte.
@ -234,7 +234,7 @@ TerminalInputParser::Output TerminalInputParser::ParseUTF8() {
}
// Invalid continuation byte.
head = static_cast<unsigned char>(Current());
head = Current();
if ((head & 0b1100'0000) != 0b1000'0000) { // NOLINT
return DROP;
}
@ -322,7 +322,7 @@ TerminalInputParser::Output TerminalInputParser::ParseCSI() {
if (Current() >= '0' && Current() <= '9') {
argument *= 10; // NOLINT
argument += int(Current() - '0');
argument += Current() - '0';
continue;
}