Branch: refs/heads/main Home: https://github.com/OpenAMP/libmetal Commit: cca70035d329236a7c13671a6976ebc0d97838f1 https://github.com/OpenAMP/libmetal/commit/cca70035d329236a7c13671a6976ebc0d... Author: Arnaud Pouliquen arnaud.pouliquen@foss.st.com Date: 2021-12-16 (Thu, 16 Dec 2021)
Changed paths: M lib/alloc.h M lib/condition.h M lib/dma.h M lib/io.h M lib/irq.h M lib/mutex.h M lib/softirq.h M lib/time.h
Log Message: ----------- lib: fix compilation error with gcc++
The header files including must be outside of the extern "C" { statement. To be able to be included from C++ code.
Else such error can occur (reproduce on STM32MP1Cube distribution) gcc/arm-none-eabi/include/c++/10.2.1/atomic:1467:3: error: template with C linkage 1467 | template<typename _ITp> | ^~~~~~~~ In file included from STM32CubeMP1/Middlewares/Third_Party/OpenAMP/ open-amp/lib/include/openamp/rpmsg.h:16, from STM32CubeMP1/Middlewares/Third_Party/OpenAMP/ open-amp/lib/include/openamp/open_amp.h:11, from empty_main.cpp:1: STM32CubeMP1/Middlewares/Third_Party/OpenAMP/libmetal/lib/include/ metal/mutex.h:16:1: note: 'extern "C"' linkage started here 16 | extern "C" { | ^~~~~~~~~~
Signed-off-by: Arnaud Pouliquen arnaud.pouliquen@foss.st.com
openamp-rp@lists.openampproject.org