Improved fix for __always_inline redefinition bug

Instead of changing based on the version of GCC, check for the presence of the macro instead.
This commit is contained in:
James Churchill 2019-01-11 18:30:20 +10:00 committed by Drashna Jaelre
parent 2c4109394f
commit 9c136e1168
1 changed files with 3 additions and 1 deletions

View File

@ -134,13 +134,15 @@
* heuristics and inline the function no matter how big it thinks it * heuristics and inline the function no matter how big it thinks it
* becomes. * becomes.
*/ */
#if !defined(__always_inline)
#if defined(__CC_ARM) #if defined(__CC_ARM)
# define __always_inline __forceinline # define __always_inline __forceinline
#elif (defined __GNUC__ && __GNUC__ <= 6) #elif (defined __GNUC__)
# define __always_inline __attribute__((__always_inline__)) # define __always_inline __attribute__((__always_inline__))
#elif (defined __ICCARM__) #elif (defined __ICCARM__)
# define __always_inline _Pragma("inline=forced") # define __always_inline _Pragma("inline=forced")
#endif #endif
#endif
/** /**
* \def __no_inline * \def __no_inline