Just started to migrate to the ARM compiler 6 and I noticed __weak is incompatible language extension in this version and it needs to be written __attribute__((weak)).
In STM32F4 HAL Drivers and almost all of the ST MCU series, there are lots of functions that have __weak in their declaration while it is not supported in ARM compiler V6. As for ARM Compiler and the DFPs, I have installed the latest versions.
Are we having a problematic kind of situation here?
If ST don't specify that it should work with that compiler, then it isn't really "broken" - you're just using it outside of its specified conditions.
Presumably they will update it in due course ...
Thanks
You're right, I'll contact with them.
As for the solution, I know that there are many ways to get around that. But it's better ST fixes it.
Thanks again.
The HAL is ST's code - so you need to talk to ST about this.
They should document what compilers (and versions) they support.
Shouldn't be hard to get around this with a #define, though ... ?
View all questions in Keil forum