unknown type name '__RAM_FUNC'; did you mean '__ARM_FP'?
I trying to port STM32CubeExpansion_LRWAN_V1.3.1 for the evaluation board B-L475E-IOT01A2. I managed to whittle the errors down to 2. In both cases i am getting
unknown type name '__RAM_FUNC'; did you mean '__ARM_FP'?
in a HAL file stm32l4xx_hal_flash_ramfunc.h generated by STM32CubeIDE. What does this error mean?
The crazy thing is that __RAM_FUNC gets defined in stm32l4xx_hal_def.h, and stm32l4xx_hal_def.h is included in stm32l4xx_hal_flash_ramfunc.h, but somehow the compiler fails to register this??
#if defined ( __CC_ARM ) || (defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050))
/* ARM Compiler V4/V5 and V6
--------------------------
RAM functions are defined using the toolchain options.
Functions that are executed in RAM should reside in a separate source module.
Using the 'Options for File' dialog you can simply change the 'Code / Const'
area of a module to a memory space in physical RAM.
Available memory areas are declared in the 'Target' tab of the 'Options for Target'
dialog.
*/
#define __RAM_FUNC
#elif defined ( __ICCARM__ )
/* ICCARM Compiler
---------------
RAM functions are defined using a specific toolchain keyword "__ramfunc".
*/
#define __RAM_FUNC __ramfunc
#elif defined ( __GNUC__ )
/* GNU Compiler
------------
RAM functions are defined using a specific toolchain attribute
"__attribute__((section(".RamFunc")))".
*/
#define __RAM_FUNC __attribute__((section(".RamFunc")))
#endif