All of lore.kernel.org
 help / color / mirror / Atom feed
* [patch] compiler, clang: suppress warning for unused static inline functions
@ 2017-05-24 21:01 ` David Rientjes
  0 siblings, 0 replies; 29+ messages in thread
From: David Rientjes @ 2017-05-24 21:01 UTC (permalink / raw)
  To: Andrew Morton
  Cc: Matthias Kaehlcke, Christoph Lameter, Pekka Enberg, Joonsoo Kim,
	linux-mm, linux-kernel, Douglas Anderson

GCC explicitly does not warn for unused static inline functions for
-Wunused-function.  The manual states:

	Warn whenever a static function is declared but not defined or
	a non-inline static function is unused.

Clang does warn for static inline functions that are unused.

It turns out that suppressing the warnings avoids potentially complex
#ifdef directives, which also reduces LOC.

Supress the warning for clang.

Signed-off-by: David Rientjes <rientjes@google.com>
---
 include/linux/compiler-clang.h | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/include/linux/compiler-clang.h b/include/linux/compiler-clang.h
--- a/include/linux/compiler-clang.h
+++ b/include/linux/compiler-clang.h
@@ -15,3 +15,10 @@
  * with any version that can compile the kernel
  */
 #define __UNIQUE_ID(prefix) __PASTE(__PASTE(__UNIQUE_ID_, prefix), __COUNTER__)
+
+/*
+ * GCC does not warn about unused static inline functions for
+ * -Wunused-function.  This turns out to avoid the need for complex #ifdef
+ * directives.  Suppress the warning in clang as well.
+ */
+#define inline inline __attribute__((unused))

^ permalink raw reply	[flat|nested] 29+ messages in thread

end of thread, other threads:[~2017-06-01  0:01 UTC | newest]

Thread overview: 29+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-05-24 21:01 [patch] compiler, clang: suppress warning for unused static inline functions David Rientjes
2017-05-24 21:01 ` David Rientjes
2017-05-24 21:22 ` Matthias Kaehlcke
2017-05-24 21:22   ` Matthias Kaehlcke
2017-05-24 21:32   ` Andrew Morton
2017-05-24 21:32     ` Andrew Morton
2017-05-24 23:28     ` Doug Anderson
2017-05-24 23:28       ` Doug Anderson
2017-05-31  0:10       ` David Rientjes
2017-05-31  0:10         ` David Rientjes
2017-05-31  1:53         ` Matthias Kaehlcke
2017-05-31  1:53           ` Matthias Kaehlcke
2017-05-31 15:53         ` Doug Anderson
2017-05-31 15:53           ` Doug Anderson
2017-05-31 18:26           ` Mark Brown
2017-05-31 21:45           ` David Rientjes
2017-05-31 21:45             ` David Rientjes
2017-05-31 22:31             ` Doug Anderson
2017-05-31 22:31               ` Doug Anderson
2017-06-01  0:01               ` Matthias Kaehlcke
2017-06-01  0:01                 ` Matthias Kaehlcke
2017-05-25  5:52   ` Ingo Molnar
2017-05-25  5:52     ` Ingo Molnar
2017-05-25 16:14     ` Matthias Kaehlcke
2017-05-25 16:14       ` Matthias Kaehlcke
2017-05-25 16:48       ` Joe Perches
2017-05-25 16:48         ` Joe Perches
2017-05-25 17:49         ` Matthias Kaehlcke
2017-05-25 17:49           ` Matthias Kaehlcke

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.