Re: [PATCH 1/1] compiler.h: Add missing include statement for build_bug.h

From: Dan Carpenter
Date: Thu Nov 14 2024 - 06:06:03 EST


On Thu, Nov 14, 2024 at 12:01:42PM +0100, Philipp Reisner wrote:
> On Thu, Nov 14, 2024 at 11:40 AM Dan Carpenter <dan.carpenter@xxxxxxxxxx> wrote:
> >
> > On Thu, Nov 14, 2024 at 11:14:02AM +0100, Philipp Reisner wrote:
> > > compiler.h defines __must_be_array() and __must_be_cstr() and both
> > > expand to BUILD_BUG_ON_ZERO(). build_bug.h defines BUILD_BUG_ON_ZERO().
> > > So far compiler.h lacks to include build_bug.h.
> > >
> > > Fix compiler.h by including build_bug.h. With that compiler.h and
> > > build_bug.h depend on each other.
> > >
> > > Signed-off-by: Philipp Reisner <philipp.reisner@xxxxxxxxxx>
> > > ---
> >
> > Fixes: ec0bbef66f86 ("Compiler Attributes: homogenize __must_be_array")
> >
> > What actually breaks? This commit is six years old. It's weird that we're only
> > seeing build breakage now. Or did you just notice this while reviewing the
> > code?
> >
>
> I am working on a compilation unit that includes linux/string.h.
> Compiling it breaks when using strscp(). That is since commit
> commit 559048d156ff3391c4b793779a824c9193e20442
> Author: Kees Cook <kees@xxxxxxxxxx>
> Date: Mon Aug 5 14:43:44 2024 -0700
>
> Of course, my trivial workaround is including build_bug.h in my
> source; it is just not the proper way to fix this.
>

Ah, okay. Thanks. I thought it might have broken in tree code.

regards,
dan carpenter