On Fri, Jun 14, 2019 at 10:21 PM Enrico Weigelt, metux IT consult <lkml@xxxxxxxxx> wrote: > > On 13.06.19 03:55, Masahiro Yamada wrote: > > What is the point in surrounding the whole of declarations with > > ifdef like this? > > > > #ifdef CONFIG_FOO > > int foo(void); > > #endif > > > > If CONFIG_FOO is not defined, all callers of foo() will fail > > with implicit declaration errors since the top Makefile adds > > -Werror-implicit-function-declaration to KBUILD_CFLAGS. > > > > This breaks the build earlier when you are doing something wrong. > > That's it. > > hmm, in general I like the idea of breaking the build as early as > possible. depending on your available cpu power, a kernel build can > take a while, and it could be a huge waste of time when having to > wait for link stage, just to find out about missing functions. > > @linus: what's your oppinion ? > > > --mtx > > -- > Enrico Weigelt, metux IT consult > Free software and Linux embedded engineering > info@xxxxxxxxx -- +49-151-27565287 My previous clean-up (http://patchwork.ozlabs.org/patch/1112656/) broke this build. And, this patch will fix the build issue. Did you realize the madness of surrounding the forward declarations with #ifdef ? All GPIO/pinctrl headers are written in a bad way. Linus Walleij must realize he was doing *wrong*. -- Best Regards Masahiro Yamada