Guh! - buh!! - wuh!!!
bool CInclusionCriteriaMatcher::NestedTypesMatch() {
CInheritance inheritanceTree;
if (SUCCEEDED(inheritanceTree.Initialize(this->type, true/*fInherit*/))) {
while (inheritanceTree.MoveNext()) {
if (NestedTypesMatch(inheritanceTree.Current())) {
return S_OK;
}
}
}
return false;
}
Spot the bug?
In beautiful C++ land it's perfectl fine to implicitly convert an HRESULT to a bool. Of course, S_OK gets converted to "false" so this function ends up doing... you guessed it... ABSOLUTELY NOTHING.
Sigh. Anyways, the score currently stands at:
Stupid languages that allow bizarre narrowing conversions without warning you: -129
Great girls who program with you late at night and keep you productive even with crap like above: +infinity