Messages in this thread | | | Date | Thu, 25 May 2017 09:14:06 -0700 | From | Matthias Kaehlcke <> | Subject | Re: [patch] compiler, clang: suppress warning for unused static inline functions |
| |
El Thu, May 25, 2017 at 07:52:07AM +0200 Ingo Molnar ha dit:
> > * Matthias Kaehlcke <mka@chromium.org> wrote: > > > El Wed, May 24, 2017 at 02:01:15PM -0700 David Rientjes ha dit: > > > > > 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> > > > --- > > > > As expressed earlier in other threads, I don't think gcc's behavior is > > preferable in this case. The warning on static inline functions (only > > in .c files) allows to detect truly unused code. About 50% of the > > warnings I have looked into so far fall into this category. > > > > In my opinion it is more valuable to detect dead code than not having > > a few more __maybe_unused attributes (there aren't really that many > > instances, at least with x86 and arm64 defconfig). In most cases it is > > not necessary to use #ifdef, it is an option which is preferred by > > some maintainers. The reduced LOC is arguable, since dectecting dead > > code allows to remove it. > > Static inline functions in headers are often not dead code.
Sure, there is no intention to delete these and clang doesn't raise warnings about unused static inline functions in headers.
| |