У меня та же проблема.
Кейл 5
Если включаю опцию "Strict ANCI C", то вижу ту же ошибку:
.\Libraries\CMSIS\Include\cmsis_armcc.h(468): error: #667: "asm" function is nonstandard
__attribute__((section(".rev16_text"))) __STATIC_INLINE __ASM uint32_t __REV16(uint32_t value)
.\Libraries\CMSIS\Include\cmsis_armcc.h(483): error: #667: "asm" function is nonstandard
__attribute__((section(".revsh_text"))) __STATIC_INLINE __ASM int16_t __REVSH(int16_t value)
.\Libraries\CMSIS\Include\cmsis_armcc.h(670): error: #667: "asm" function is nonstandard
__attribute__((section(".rrx_text"))) __STATIC_INLINE __ASM uint32_t __RRX(uint32_t value)
Подключил самую новую CMSIS, думал в хедерах это пофиксили, но все по-старому.
Что делать, править исходники CMSIS?
вот собственно на это ругается:
Код
#ifndef __NO_EMBEDDED_ASM
__attribute__((section(".rev16_text"))) __STATIC_INLINE __ASM uint32_t __REV16(uint32_t value)
{
rev16 r0, r0
bx lr
}
#endif
#ifndef __NO_EMBEDDED_ASM
__attribute__((section(".revsh_text"))) __STATIC_INLINE __ASM int16_t __REVSH(int16_t value)
{
revsh r0, r0
bx lr
}
#endif
#ifndef __NO_EMBEDDED_ASM
__attribute__((section(".rrx_text"))) __STATIC_INLINE __ASM uint32_t __RRX(uint32_t value)
{
rrx r0, r0
bx lr
}
#endif