LINUX.ORG.RU

Ошибка при сборке


0

0
При сборке проги вылазит такой еррор:
src/stats.c: In member function `bool StatGroup::Add(std::string, unsigned int (*)(), int)':
src/stats.c:178: error: ISO C++ forbids cast to non-reference type used as lvalue
src/stats.c: In member function `bool StatGroup::Add(std::string, char*(*)(), int)':
src/stats.c:196: error: ISO C++ forbids cast to non-reference type used as lvalue
make: *** [src/stats.o] Ошибка 1

В указаных строчках находится такая инструкция:

(void *)sc.value.callback = (void *)cb;

Нутром чуствую, что можна что-то изменить, но я не знаю до
такой степени Си шоб самому вьехать.
sc.value.callback = (void*)cb;

так будет работать. не надо пытаться применять
преоброзование типов к lvalue.
idle ★★★★★
()
Ответ на: комментарий от Valerius
> а теперь ругается

значит, это C++, а не С. хм... мог бы и сам догадаться :)

вот и пишите:
    lvalue = (void*(*)()) rvalue;

как я мог преобрАзование через 'о' написать?
idle ★★★★★
()
Ответ на: комментарий от idle
Спасиба! Собралось и даже вроде работает! :)
Valerius ★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.