Using the 5.24a Keil tool & MXCube v4.22 with V1.16 libs for F4 devices
Have a project based on mxCube and my code that works correctly .
Program Size: Code=53948 RO-data=8468 RW-data=67988 ZI-data=55308
"..\Output\dogs danglies.axf" - 0 Error(s), 0 Warning(s).
Build Time Elapsed: 00:00:13
So out of interest instead of trying the default compiler I tried 6.7 ( CLANG I believe)
So code now compiles with issues around the HAL driver code e.g.
creating preprocessor file for stm32f4xx_hal_adc.c...
../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dac.c(305): error: unknown type name '__weak'
__weak void HAL_DAC_MspInit(DAC_HandleTypeDef* hdac)
so I understand in v6.7 __weak is defined as __WEAK and that's defined in cmsis_armclang.h
there is this
/*------------------ ARM Compiler V6 -------------------*/
#elif defined(__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050)
* ARM Compiler 6 (armclang)
#elif defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050)
So apart from waiting till the CMSIS Libs are updated to include the cnsis_armclang.h is there a quick easy way of getting around this issue rather than sticking this in the code that have issues
#define __WEAK __attribute__((weak))