История изменений
Исправление annulen, (текущая версия) :
На будущее: выдача препроцессора - это (почти) нормальный C++ файл, в нем ошибку можно найти так же, как и в исходнике, написанном вручную.
Вот допустим, у тебя пишет moc_qsynthPaletteForm.cpp:259:3: error: cannot convert ‘const QMetaObject* const*’ to ‘const QMetaObject::SuperData*’ in initialization
. Находишь соответствующую строчку в выдаче препроцессора. Если нет очевиднвх ошибок, смотришь внимательно вокруг, нет ли каких-то бредовых подстановок в окружающем коде из moc_qsynthPaletteForm.cpp. Если все еще непонятно, находишь поиском определения типа который конвертится и QMetaObject::SuperData. Если типы не имеют ничего общего, или если есть несколько конфликтующих деклараций, смотришь из каких файлов они инклудятся. И т.д.
Конечно, разводить срач в /usr нельзя, но в крайнем случае по препроцессору можно любую такую ошибку локализовать, и никакой магии в этом нет.
Исходная версия annulen, :
На будущее: выдача препроцессора - это (почти) нормальный C++ файл, в нем ошибку можно найти так же, как и в исходнике, написанном вручную.
Вот допустим, у тебя пишет moc_qsynthPaletteForm.cpp:259:3: error: cannot convert ‘const QMetaObject* const*’ to ‘const QMetaObject::SuperData*’ in initialization
. Находишь соответствующую строчку в выдаче препроцессора. Если нет очевиднвх ошибок, смотришь внимательно вокруг, нет ли каких-то бредовых подстановок в окружающем коде из moc_qsynthPaletteForm.cpp. Если все еще непонятно, находишь поиском определения типа который конвертится и QMetaObject::SuperData. Если типы не имеют ничего общего, или если есть несколько конфликтующих деклараций, смотришь из каких файлов они инклудятся. И т.д.