Меня это смущает. Компилятор жалуется на неразрешенный внешний символ ... но если я добавлю к нему параметр, он все равно узнает, что нужно жаловаться на добавленный параметр.
введите описание изображения здесь
Определение функции с типами и макросами в util.h (который уже включен в заголовок, который я включаю, и я пытался включить себя):
typedef u32 ticks_t;
#define TICK_DIFF(a,b) ((signed int)(((a)<<1)-((b)<<1))>>1)
#define TICK_GT(a,b) (TICK_DIFF(a,b) > 0)
#define TICK_MAKE(a) ((a) & 0x7fffffff)
ticks_t current_ticks(void);
Итак, current_ticks () не работает, но макросы и типы из того же заголовка работают:
ticks_t now = TICK_MAKE(current_ticks());//does not complain about ticks_t or TICK_MAKE,
//but does complain about current_ticks??
TICK_DIFF(now,p->lastdeath);//no complaining at all??
Есть идеи, что здесь происходит?