Предупреждение касается того факта, что вы делаете то же самое в своих if
и else if
ветвях, то есть freeHub = hub;
if (freeHub == nullptr) {
freeHub = hub;
} else if (hub->getStatus() == STATUS_READY &&
hub->getBusyNodes().size() < freeHub->getBusyNodes().size()) {
freeHub = hub; // same as above, what is the point?
}
Я полагаю, вы можете переписать его как один состояние, но становится немного страшно:
if (freeHub == nullptr ||
(hub->getStatus() == STATUS_READY &&
hub->getBusyNodes().size() < freeHub->getBusyNodes().size())) {
freeHub = hub;
}