diff options
author | James Churchill <pelrun@gmail.com> | 2019-01-11 09:30:20 +0100 |
---|---|---|
committer | Drashna Jaelre <drashna@live.com> | 2019-01-12 02:25:57 +0100 |
commit | 9c136e1168a1f6d0637f59164b6d9adb9ba0bdee (patch) | |
tree | fd95ab1d3d2a042b90142d5fda5311df8353772e | |
parent | 2c4109394fa9ee71b10b8b2d3d1473a409d7003e (diff) | |
download | qmk_firmware-9c136e1168a1f6d0637f59164b6d9adb9ba0bdee.tar.gz qmk_firmware-9c136e1168a1f6d0637f59164b6d9adb9ba0bdee.tar.xz |
Improved fix for __always_inline redefinition bug
Instead of changing based on the version of GCC, check for the presence of the macro instead.
-rw-r--r-- | tmk_core/protocol/arm_atsam/usb/compiler.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/tmk_core/protocol/arm_atsam/usb/compiler.h b/tmk_core/protocol/arm_atsam/usb/compiler.h index 7d8350896..b2ccfd73e 100644 --- a/tmk_core/protocol/arm_atsam/usb/compiler.h +++ b/tmk_core/protocol/arm_atsam/usb/compiler.h @@ -134,13 +134,15 @@ * heuristics and inline the function no matter how big it thinks it * becomes. */ +#if !defined(__always_inline) #if defined(__CC_ARM) # define __always_inline __forceinline -#elif (defined __GNUC__ && __GNUC__ <= 6) +#elif (defined __GNUC__) # define __always_inline __attribute__((__always_inline__)) #elif (defined __ICCARM__) # define __always_inline _Pragma("inline=forced") #endif +#endif /** * \def __no_inline |