On 3/9/2020 8:16 AM, Jerin Jacob wrote:
> On Mon, Mar 9, 2020 at 1:23 PM Sunil Kumar Kori <sk...@marvell.com> wrote:
>>
>> Any DPDK public header file which includes stdbool.h may conflict with
>> local definition of bool, if any, which further results in compilation
>> error. To avoid, used standard stdbool.h instead of defining bool
>> internally.
>>
>> I observed this issue during a development where I included rte_uuid.h
>> into rte_ethdev.h. As rte_ethdev.h is included to PMD driver, it started
>> throwing error as given below:
>>
>>   CC ionic_rxtx.o
>> In file included from .../dpdk/build/include/rte_uuid.h:17:0,
>>                  from .../dpdk/build/include/rte_ethdev.h:161,
>>                  from .../dpdk/build/include/rte_ethdev_driver.h:18,
>>                  from .../dpdk/drivers/net/ionic/ionic_rxtx.c:34:
>> .../dpdk/drivers/net/ionic/ionic_osdep.h:48:17: error: two or more data 
>> types in declaration specifiers
>> typedef uint8_t bool;
>>                  ^
>> In file included from .../dpdk/drivers/net/ionic/ionic_dev.h:8:0,
>>                  from .../dpdk/drivers/net/ionic/ionic.h:13,
>>                  from .../dpdk/drivers/net/ionic/ionic_mac_api.h:8,
>>                  from .../dpdk/drivers/net/ionic/ionic_rxtx.c:45:
>> .../dpdk/drivers/net/ionic/ionic_osdep.h:48:1: warning: useless type name in 
>> empty declaration
>> typedef uint8_t bool;
>> ^~~~~~~
>> cc1: warning: unrecognized command line option 
>> ‘-Wno-address-of-packed-member’
>> .../dpdk/mk/internal/rte.compile-pre.mk:114: recipe for target 
>> 'ionic_rxtx.o' failed
>>
>> Signed-off-by: Sunil Kumar Kori <sk...@marvell.com>
>> ---
> 
>>
>> diff --git a/drivers/net/ionic/ionic_osdep.h 
>> b/drivers/net/ionic/ionic_osdep.h
>> index ecdbc24e6..6ca5426ec 100644
>> --- a/drivers/net/ionic/ionic_osdep.h
>> +++ b/drivers/net/ionic/ionic_osdep.h
>> @@ -45,7 +45,6 @@ typedef uint32_t __le32;
>>  typedef uint64_t __le64;
>>
>>  #ifndef __cplusplus
>> -typedef uint8_t bool;
>>  #define false   0
>>  #define true    1
> 
> You could remove the above  as well(#define false and #define true)

+1,
I need to do same thing for ionic in other patch to be able to use bool:
https://patches.dpdk.org/patch/66225/

Reply via email to