Hi, when discovering 'gnu_inline', I found ... $ git grep -w __FORTIFY_INLINE include/linux/string.h:#define __FORTIFY_INLINE extern __always_inline __attribute__((gnu_inline)) include/linux/string.h:__FORTIFY_INLINE char *strncpy(char *p, const char *q, __kernel_size_t size) include/linux/string.h:__FORTIFY_INLINE char *strcat(char *p, const char *q) include/linux/string.h:__FORTIFY_INLINE __kernel_size_t strlen(const char *p) include/linux/string.h:__FORTIFY_INLINE __kernel_size_t strnlen(const char *p, __kernel_size_t maxlen) include/linux/string.h:__FORTIFY_INLINE size_t strlcpy(char *p, const char *q, size_t size) include/linux/string.h:__FORTIFY_INLINE char *strncat(char *p, const char *q, __kernel_size_t count) include/linux/string.h:__FORTIFY_INLINE void *memset(void *p, int c, __kernel_size_t size) include/linux/string.h:__FORTIFY_INLINE void *memcpy(void *p, const void *q, __kernel_size_t size) include/linux/string.h:__FORTIFY_INLINE void *memmove(void *p, const void *q, __kernel_size_t size) include/linux/string.h:__FORTIFY_INLINE void *memscan(void *p, int c, __kernel_size_t size) include/linux/string.h:__FORTIFY_INLINE int memcmp(const void *p, const void *q, __kernel_size_t size) include/linux/string.h:__FORTIFY_INLINE void *memchr(const void *p, int c, __kernel_size_t size) include/linux/string.h:__FORTIFY_INLINE void *memchr_inv(const void *p, int c, size_t size) include/linux/string.h:__FORTIFY_INLINE void *kmemdup(const void *p, size_t size, gfp_t gfp) include/linux/string.h:__FORTIFY_INLINE char *strcpy(char *p, const char *q) After the inline changes suggested by Joe this can be adapted? Beyond this, a general question: Can someone explain why all these inline defines are in compiler-gcc.h (as there exists compiler.h and compiler-clang.h)? Thanks. Regards, - Sedat - -- To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html