ARM-software / CMSIS_6

CMSIS version 6 (successor of CMSIS_5)
https://arm-software.github.io/CMSIS_6/
Apache License 2.0
194 stars 64 forks source link

Why not use the compatible type __attribute__((__noreturn__)) as __NO_RETURN for IAR? #198

Open SuperHeroAbner opened 2 weeks ago

SuperHeroAbner commented 2 weeks ago

The type of attribute((noreturn)) can be put before or after function like 'void func(void) NO_RETURN;'. If use the type of [[noreturn]] or _Noreturn, it must be like 'NO_RETURN void func(void)' CMSIS_6 https://github.com/ARM-software/CMSIS_6/blob/main/CMSIS/Core/Include/cmsis_iccarm.h#L57 CMSIS_5 https://github.com/ARM-software/CMSIS_5/blob/develop/CMSIS/Core/Include/cmsis_iccarm.h#L130 This introduces compatibility issue. Does attribute((noreturn)) have any issue to apply on IAR compared with _Noreturn + [[noreturn]] ?

JonatanAntoni commented 2 weeks ago

The compiler header for IAR is provided and maintained by IAR. Please consider raising this question directly with them as I am not aware how frequently they are watching CMSIS issues.

ReinhardKeil commented 2 weeks ago

@jlonnberg maybe you can help.