Статические объявления не рассматриваются для вызова функции, если функция не квалифицирована
Вопрос
«Живопись/qpathclipper.cpp», строка 1643.30: 1540-0274 (s) Имя поищи в «Fuzzycompare» не обнаружила объявления.
«Painting/qpathclipper.cpp», строка 1643.30: 1540-1292 (i) Статические объявления не рассматриваются для вызова функции, если функция не квалифицирована.
Я пытаюсь скомпилировать QT 4.5.0 на XLC 9.0.0.4a и получить приведенное выше сообщение компилятора для следующего кода:
static bool fuzzyCompare(qreal a, qreal b)
{
return qFuzzyCompare(a, b);
}
template <typename InputIterator>
InputIterator qFuzzyFind(InputIterator first, InputIterator last, qreal val)
{
while (first != last && !fuzzyCompare(qreal(*first), qreal(val))) //line 1643
++first;
return first;
}
Решение
«Статическое» ключевое слово здесь ошибочно, Fuzzycompare следует объявить просто
bool fuzzyCompare(qreal a, qreal b)
Не связан с StackOverflow