ожидаемые спецификаторы объявлений или «…» перед «логическим»

ниже мой файл .h

4 typedef struct pic_ pic_t;
5 typedef int32_t status_t;
6 typedef u_int16_t pic_id_t;
7 typedef const char* (*pic_flavor_t) (pic_t *);
8 typedef status_t (*pic_periodic_t) (pic_t *);
9 typedef status_t (*pic_get_port_info_t) (pic_t *pic, u_int16_t link, void*info, Boolean*need_update);
11 struct pic_
12 {
13 u_int16_t   nic_slot;
14 u_int16_t   pic_slot;
15 u_int32_t   pic_flags;
16 pic_id_t    pic_id;
17 u_int16_t   pic_asic_type;
18 u_int16_t   pic_firstport;
19 pic_periodic_t  pic_periodic;
20 pic_flavor_t    pic_flavor;
21 pic_get_port_info_t pic_get_port_info;
22 void *pic_context;
23 };

И я получаю следующую ошибку

../../../../../src/pfe/common/drivers/rpio/rpio_tunnel_pvt1.h:9: error: expected     declaration specifiers or '...' before 'boolean'

Я пытался в том числе
также попытался заменить booleand на bool, а также на _bool
все еще не помогает
кто-нибудь, пожалуйста, помогите мне здесь

0

Решение

ни Boolean ни boolean существуют где-нибудь в заголовочных файлах ядра Linux.

Тем не менее, есть bool определяется в Linux / types.h как

typedef _Bool           bool;

Чтобы получить доступ к этому, вы должны изменить boolean в bool и включать linux/types.h в вашем источнике.

1

Другие решения

Компилятор не знает, как называется Boolean обозначает. Вы должны включить заголовок, где это имя определено в этом заголовке, прежде чем ссылаться на Boolean

0

По вопросам рекламы [email protected]