Hey there, thanks for all the work you've done, it's great library and Wiki is amazing!
I managed to build your component in C++ enviroment, ran demos and tryied different API calls with no problems.
However, I had no success in integration with my project, which was designed in C language from the start (as most ESP32 code base actually is).
I tried to switch my project to cpp but it throwing a lot of problems related to esp-idf, it's obvious that I miss something.
And I know, that's it's kinda dumb to post such issue, but maybe you had experience in integration of this lib to native c project and we could figure it out to clear out for somebody and make a new wiki page.
My ESP-IDF version is 4.4.2. I probably could not share the whole sources, but maybe I could replicate this problem with another project, of cource if it's worth trying and you interested.
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:124:34: error: conflicting declaration of C function 'constexpr timer_intr_t operator~(timer_intr_t)'
FORCE_INLINE_ATTR constexpr TYPE operator~ (TYPE a) { return (TYPE)~(INT_TYPE)a; } \
^~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:136:29: note: in expansion of macro 'FLAG_ATTR_IMPL'
#define FLAG_ATTR_U32(TYPE) FLAG_ATTR_IMPL(TYPE, uint32_t)
^~~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:137:19: note: in expansion of macro 'FLAG_ATTR_U32'
#define FLAG_ATTR FLAG_ATTR_U32
^~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/hal/include/hal/timer_types.h:80:1: note: in expansion of macro 'FLAG_ATTR'
FLAG_ATTR(timer_intr_t)
^~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:124:34: note: previous declaration 'constexpr spi_event_t operator~(spi_event_t)'
FORCE_INLINE_ATTR constexpr TYPE operator~ (TYPE a) { return (TYPE)~(INT_TYPE)a; } \
^~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:136:29: note: in expansion of macro 'FLAG_ATTR_IMPL'
#define FLAG_ATTR_U32(TYPE) FLAG_ATTR_IMPL(TYPE, uint32_t)
^~~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:137:19: note: in expansion of macro 'FLAG_ATTR_U32'
#define FLAG_ATTR FLAG_ATTR_U32
^~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/hal/include/hal/spi_types.h:47:1: note: in expansion of macro 'FLAG_ATTR'
FLAG_ATTR(spi_event_t)
^~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:125:34: error: conflicting declaration of C function 'constexpr timer_intr_t operator|(timer_intr_t, timer_intr_t)'
FORCE_INLINE_ATTR constexpr TYPE operator| (TYPE a, TYPE b) { return (TYPE)((INT_TYPE)a | (INT_TYPE)b); } \
^~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:136:29: note: in expansion of macro 'FLAG_ATTR_IMPL'
#define FLAG_ATTR_U32(TYPE) FLAG_ATTR_IMPL(TYPE, uint32_t)
^~~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:137:19: note: in expansion of macro 'FLAG_ATTR_U32'
#define FLAG_ATTR FLAG_ATTR_U32
^~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/hal/include/hal/timer_types.h:80:1: note: in expansion of macro 'FLAG_ATTR'
FLAG_ATTR(timer_intr_t)
^~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:125:34: note: previous declaration 'constexpr spi_event_t operator|(spi_event_t, spi_event_t)'
FORCE_INLINE_ATTR constexpr TYPE operator| (TYPE a, TYPE b) { return (TYPE)((INT_TYPE)a | (INT_TYPE)b); } \
^~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:136:29: note: in expansion of macro 'FLAG_ATTR_IMPL'
#define FLAG_ATTR_U32(TYPE) FLAG_ATTR_IMPL(TYPE, uint32_t)
^~~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:137:19: note: in expansion of macro 'FLAG_ATTR_U32'
#define FLAG_ATTR FLAG_ATTR_U32
^~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/hal/include/hal/spi_types.h:47:1: note: in expansion of macro 'FLAG_ATTR'
FLAG_ATTR(spi_event_t)
^~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:126:34: error: conflicting declaration of C function 'constexpr timer_intr_t operator&(timer_intr_t, timer_intr_t)'
FORCE_INLINE_ATTR constexpr TYPE operator& (TYPE a, TYPE b) { return (TYPE)((INT_TYPE)a & (INT_TYPE)b); } \
^~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:136:29: note: in expansion of macro 'FLAG_ATTR_IMPL'
#define FLAG_ATTR_U32(TYPE) FLAG_ATTR_IMPL(TYPE, uint32_t)
^~~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:137:19: note: in expansion of macro 'FLAG_ATTR_U32'
#define FLAG_ATTR FLAG_ATTR_U32
^~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/hal/include/hal/timer_types.h:80:1: note: in expansion of macro 'FLAG_ATTR'
FLAG_ATTR(timer_intr_t)
^~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:126:34: note: previous declaration 'constexpr spi_event_t operator&(spi_event_t, spi_event_t)'
FORCE_INLINE_ATTR constexpr TYPE operator& (TYPE a, TYPE b) { return (TYPE)((INT_TYPE)a & (INT_TYPE)b); } \
^~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:136:29: note: in expansion of macro 'FLAG_ATTR_IMPL'
#define FLAG_ATTR_U32(TYPE) FLAG_ATTR_IMPL(TYPE, uint32_t)
^~~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:137:19: note: in expansion of macro 'FLAG_ATTR_U32'
#define FLAG_ATTR FLAG_ATTR_U32
^~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/hal/include/hal/spi_types.h:47:1: note: in expansion of macro 'FLAG_ATTR'
FLAG_ATTR(spi_event_t)
^~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:127:34: error: conflicting declaration of C function 'constexpr timer_intr_t operator^(timer_intr_t, timer_intr_t)'
FORCE_INLINE_ATTR constexpr TYPE operator^ (TYPE a, TYPE b) { return (TYPE)((INT_TYPE)a ^ (INT_TYPE)b); } \
^~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:136:29: note: in expansion of macro 'FLAG_ATTR_IMPL'
#define FLAG_ATTR_U32(TYPE) FLAG_ATTR_IMPL(TYPE, uint32_t)
^~~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:137:19: note: in expansion of macro 'FLAG_ATTR_U32'
#define FLAG_ATTR FLAG_ATTR_U32
^~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/hal/include/hal/timer_types.h:80:1: note: in expansion of macro 'FLAG_ATTR'
FLAG_ATTR(timer_intr_t)
^~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:127:34: note: previous declaration 'constexpr spi_event_t operator^(spi_event_t, spi_event_t)'
FORCE_INLINE_ATTR constexpr TYPE operator^ (TYPE a, TYPE b) { return (TYPE)((INT_TYPE)a ^ (INT_TYPE)b); } \
^~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:136:29: note: in expansion of macro 'FLAG_ATTR_IMPL'
#define FLAG_ATTR_U32(TYPE) FLAG_ATTR_IMPL(TYPE, uint32_t)
^~~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:137:19: note: in expansion of macro 'FLAG_ATTR_U32'
#define FLAG_ATTR FLAG_ATTR_U32
^~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/hal/include/hal/spi_types.h:47:1: note: in expansion of macro 'FLAG_ATTR'
FLAG_ATTR(spi_event_t)
^~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:128:34: error: conflicting declaration of C function 'constexpr timer_intr_t operator>>(timer_intr_t, int)'
FORCE_INLINE_ATTR constexpr TYPE operator>> (TYPE a, int b) { return (TYPE)((INT_TYPE)a >> b); } \
^~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:136:29: note: in expansion of macro 'FLAG_ATTR_IMPL'
#define FLAG_ATTR_U32(TYPE) FLAG_ATTR_IMPL(TYPE, uint32_t)
^~~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:137:19: note: in expansion of macro 'FLAG_ATTR_U32'
#define FLAG_ATTR FLAG_ATTR_U32
^~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/hal/include/hal/timer_types.h:80:1: note: in expansion of macro 'FLAG_ATTR'
FLAG_ATTR(timer_intr_t)
^~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:128:34: note: previous declaration 'constexpr spi_event_t operator>>(spi_event_t, int)'
FORCE_INLINE_ATTR constexpr TYPE operator>> (TYPE a, int b) { return (TYPE)((INT_TYPE)a >> b); } \
^~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:136:29: note: in expansion of macro 'FLAG_ATTR_IMPL'
#define FLAG_ATTR_U32(TYPE) FLAG_ATTR_IMPL(TYPE, uint32_t)
^~~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:137:19: note: in expansion of macro 'FLAG_ATTR_U32'
#define FLAG_ATTR FLAG_ATTR_U32
^~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/hal/include/hal/spi_types.h:47:1: note: in expansion of macro 'FLAG_ATTR'
FLAG_ATTR(spi_event_t)
^~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:129:34: error: conflicting declaration of C function 'constexpr timer_intr_t operator<<(timer_intr_t, int)'
FORCE_INLINE_ATTR constexpr TYPE operator<< (TYPE a, int b) { return (TYPE)((INT_TYPE)a << b); } \
^~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:136:29: note: in expansion of macro 'FLAG_ATTR_IMPL'
#define FLAG_ATTR_U32(TYPE) FLAG_ATTR_IMPL(TYPE, uint32_t)
^~~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:137:19: note: in expansion of macro 'FLAG_ATTR_U32'
#define FLAG_ATTR FLAG_ATTR_U32
^~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/hal/include/hal/timer_types.h:80:1: note: in expansion of macro 'FLAG_ATTR'
FLAG_ATTR(timer_intr_t)
^~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:129:34: note: previous declaration 'constexpr spi_event_t operator<<(spi_event_t, int)'
FORCE_INLINE_ATTR constexpr TYPE operator<< (TYPE a, int b) { return (TYPE)((INT_TYPE)a << b); } \
^~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:136:29: note: in expansion of macro 'FLAG_ATTR_IMPL'
#define FLAG_ATTR_U32(TYPE) FLAG_ATTR_IMPL(TYPE, uint32_t)
^~~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:137:19: note: in expansion of macro 'FLAG_ATTR_U32'
#define FLAG_ATTR FLAG_ATTR_U32
^~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/hal/include/hal/spi_types.h:47:1: note: in expansion of macro 'FLAG_ATTR'
FLAG_ATTR(spi_event_t)
^~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:130:25: error: conflicting declaration of C function 'timer_intr_t& operator|=(timer_intr_t&, timer_intr_t)'
FORCE_INLINE_ATTR TYPE& operator|=(TYPE& a, TYPE b) { a = a | b; return a; } \
^~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:136:29: note: in expansion of macro 'FLAG_ATTR_IMPL'
#define FLAG_ATTR_U32(TYPE) FLAG_ATTR_IMPL(TYPE, uint32_t)
^~~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:137:19: note: in expansion of macro 'FLAG_ATTR_U32'
#define FLAG_ATTR FLAG_ATTR_U32
^~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/hal/include/hal/timer_types.h:80:1: note: in expansion of macro 'FLAG_ATTR'
FLAG_ATTR(timer_intr_t)
^~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:130:25: note: previous declaration 'spi_event_t& operator|=(spi_event_t&, spi_event_t)'
FORCE_INLINE_ATTR TYPE& operator|=(TYPE& a, TYPE b) { a = a | b; return a; } \
^~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:136:29: note: in expansion of macro 'FLAG_ATTR_IMPL'
#define FLAG_ATTR_U32(TYPE) FLAG_ATTR_IMPL(TYPE, uint32_t)
^~~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:137:19: note: in expansion of macro 'FLAG_ATTR_U32'
#define FLAG_ATTR FLAG_ATTR_U32
^~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/hal/include/hal/spi_types.h:47:1: note: in expansion of macro 'FLAG_ATTR'
FLAG_ATTR(spi_event_t)
^~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:131:25: error: conflicting declaration of C function 'timer_intr_t& operator&=(timer_intr_t&, timer_intr_t)'
FORCE_INLINE_ATTR TYPE& operator&=(TYPE& a, TYPE b) { a = a & b; return a; } \
^~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:136:29: note: in expansion of macro 'FLAG_ATTR_IMPL'
#define FLAG_ATTR_U32(TYPE) FLAG_ATTR_IMPL(TYPE, uint32_t)
^~~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:137:19: note: in expansion of macro 'FLAG_ATTR_U32'
#define FLAG_ATTR FLAG_ATTR_U32
^~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/hal/include/hal/timer_types.h:80:1: note: in expansion of macro 'FLAG_ATTR'
FLAG_ATTR(timer_intr_t)
^~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:131:25: note: previous declaration 'spi_event_t& operator&=(spi_event_t&, spi_event_t)'
FORCE_INLINE_ATTR TYPE& operator&=(TYPE& a, TYPE b) { a = a & b; return a; } \
^~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:136:29: note: in expansion of macro 'FLAG_ATTR_IMPL'
#define FLAG_ATTR_U32(TYPE) FLAG_ATTR_IMPL(TYPE, uint32_t)
^~~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:137:19: note: in expansion of macro 'FLAG_ATTR_U32'
#define FLAG_ATTR FLAG_ATTR_U32
^~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/hal/include/hal/spi_types.h:47:1: note: in expansion of macro 'FLAG_ATTR'
FLAG_ATTR(spi_event_t)
^~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:132:25: error: conflicting declaration of C function 'timer_intr_t& operator^=(timer_intr_t&, timer_intr_t)'
FORCE_INLINE_ATTR TYPE& operator^=(TYPE& a, TYPE b) { a = a ^ b; return a; } \
^~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:136:29: note: in expansion of macro 'FLAG_ATTR_IMPL'
#define FLAG_ATTR_U32(TYPE) FLAG_ATTR_IMPL(TYPE, uint32_t)
^~~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:137:19: note: in expansion of macro 'FLAG_ATTR_U32'
#define FLAG_ATTR FLAG_ATTR_U32
^~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/hal/include/hal/timer_types.h:80:1: note: in expansion of macro 'FLAG_ATTR'
FLAG_ATTR(timer_intr_t)
^~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:132:25: note: previous declaration 'spi_event_t& operator^=(spi_event_t&, spi_event_t)'
FORCE_INLINE_ATTR TYPE& operator^=(TYPE& a, TYPE b) { a = a ^ b; return a; } \
^~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:136:29: note: in expansion of macro 'FLAG_ATTR_IMPL'
#define FLAG_ATTR_U32(TYPE) FLAG_ATTR_IMPL(TYPE, uint32_t)
^~~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:137:19: note: in expansion of macro 'FLAG_ATTR_U32'
#define FLAG_ATTR FLAG_ATTR_U32
^~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/hal/include/hal/spi_types.h:47:1: note: in expansion of macro 'FLAG_ATTR'
FLAG_ATTR(spi_event_t)
^~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:133:25: error: conflicting declaration of C function 'timer_intr_t& operator>>=(timer_intr_t&, int)'
FORCE_INLINE_ATTR TYPE& operator>>=(TYPE& a, int b) { a >>= b; return a; } \
^~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:136:29: note: in expansion of macro 'FLAG_ATTR_IMPL'
#define FLAG_ATTR_U32(TYPE) FLAG_ATTR_IMPL(TYPE, uint32_t)
^~~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:137:19: note: in expansion of macro 'FLAG_ATTR_U32'
#define FLAG_ATTR FLAG_ATTR_U32
^~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/hal/include/hal/timer_types.h:80:1: note: in expansion of macro 'FLAG_ATTR'
FLAG_ATTR(timer_intr_t)
^~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:133:25: note: previous declaration 'spi_event_t& operator>>=(spi_event_t&, int)'
FORCE_INLINE_ATTR TYPE& operator>>=(TYPE& a, int b) { a >>= b; return a; } \
^~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:136:29: note: in expansion of macro 'FLAG_ATTR_IMPL'
#define FLAG_ATTR_U32(TYPE) FLAG_ATTR_IMPL(TYPE, uint32_t)
^~~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:137:19: note: in expansion of macro 'FLAG_ATTR_U32'
#define FLAG_ATTR FLAG_ATTR_U32
^~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/hal/include/hal/spi_types.h:47:1: note: in expansion of macro 'FLAG_ATTR'
FLAG_ATTR(spi_event_t)
^~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:134:25: error: conflicting declaration of C function 'timer_intr_t& operator<<=(timer_intr_t&, int)'
FORCE_INLINE_ATTR TYPE& operator<<=(TYPE& a, int b) { a <<= b; return a; }
^~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:136:29: note: in expansion of macro 'FLAG_ATTR_IMPL'
#define FLAG_ATTR_U32(TYPE) FLAG_ATTR_IMPL(TYPE, uint32_t)
^~~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:137:19: note: in expansion of macro 'FLAG_ATTR_U32'
#define FLAG_ATTR FLAG_ATTR_U32
^~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/hal/include/hal/timer_types.h:80:1: note: in expansion of macro 'FLAG_ATTR'
FLAG_ATTR(timer_intr_t)
^~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:134:25: note: previous declaration 'spi_event_t& operator<<=(spi_event_t&, int)'
FORCE_INLINE_ATTR TYPE& operator<<=(TYPE& a, int b) { a <<= b; return a; }
^~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:136:29: note: in expansion of macro 'FLAG_ATTR_IMPL'
#define FLAG_ATTR_U32(TYPE) FLAG_ATTR_IMPL(TYPE, uint32_t)
^~~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/esp_common/include/esp_attr.h:137:19: note: in expansion of macro 'FLAG_ATTR_U32'
#define FLAG_ATTR FLAG_ATTR_U32
^~~~~~~~~~~~~
C:/Espressif/frameworks/esp-idf-v4.4.2/components/hal/include/hal/spi_types.h:47:1: note: in expansion of macro 'FLAG_ATTR'
FLAG_ATTR(spi_event_t)
^~~~~~~~~
C:/Projects/InventoryTrackingSystem/FW/InterfaceBoard/main/main.cpp: In function 'void app_main()':
C:/Projects/InventoryTrackingSystem/FW/InterfaceBoard/main/main.cpp:116:29: error: invalid conversion from 'esp_err_t (*)(void*)' {aka 'int (*)(void*)'} to 'TaskFunction_t' {aka 'void (*)(void*)'} [-fpermissive]
xTaskCreatePinnedToCore(&Buzzer_MainTask, "Buzzer_MainTask", 2048, (void*)(&xBuzzerCmdQueue), 1, NULL, 1);
^~~~~~~~~~~~~~~~
In file included from C:/Projects/InventoryTrackingSystem/FW/InterfaceBoard/main/main.cpp:6:
C:/Espressif/frameworks/esp-idf-v4.4.2/components/freertos/include/freertos/task.h:344:56: note: initializing argument 1 of 'BaseType_t xTaskCreatePinnedToCore(TaskFunction_t, const char*, uint32_t, void*, UBaseType_t, void**, BaseType_t)'
BaseType_t xTaskCreatePinnedToCore( TaskFunction_t pvTaskCode,
~~~~~~~~~~~~~~~^~~~~~~~~~
C:/Projects/InventoryTrackingSystem/FW/InterfaceBoard/main/main.cpp:117:29: error: invalid conversion from 'esp_err_t (*)(void*)' {aka 'int (*)(void*)'} to 'TaskFunction_t' {aka 'void (*)(void*)'} [-fpermissive]
xTaskCreatePinnedToCore(&RgbHandler_MainTask, "RgbHandler_MainTask", 2048, (void*)(&xRgbCmdQueue), 5, NULL, 1);
^~~~~~~~~~~~~~~~~~~~
In file included from C:/Projects/InventoryTrackingSystem/FW/InterfaceBoard/main/main.cpp:6:
C:/Espressif/frameworks/esp-idf-v4.4.2/components/freertos/include/freertos/task.h:344:56: note: initializing argument 1 of 'BaseType_t xTaskCreatePinnedToCore(TaskFunction_t, const char*, uint32_t, void*, UBaseType_t, void**, BaseType_t)'
BaseType_t xTaskCreatePinnedToCore( TaskFunction_t pvTaskCode,
~~~~~~~~~~~~~~~^~~~~~~~~~
ninja: build stopped: subcommand failed.
ninja failed with exit code 1