Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 20 May 2019 15:17:05 -0700
From:      Conrad Meyer <cem@freebsd.org>
To:        Konstantin Belousov <kostikbel@gmail.com>
Cc:        Alan Somers <asomers@freebsd.org>, src-committers <src-committers@freebsd.org>, svn-src-projects@freebsd.org
Subject:   Re: svn commit: r348007 - projects/fuse2/lib/libc/gen
Message-ID:  <CAG6CVpVZCVDdyR%2BBOXfV4Z98_hEP8UbE3yvpUVfZGQPiUU_q5w@mail.gmail.com>
In-Reply-To: <20190520205057.GU2748@kib.kiev.ua>
References:  <201905201936.x4KJaaIC023310@repo.freebsd.org> <20190520202210.GT2748@kib.kiev.ua> <CAOtMX2i6Z7=QPG3LNBdGLDKE3Gm-JJGQ_jzdAuQPF=JFn9e9yQ@mail.gmail.com> <20190520205057.GU2748@kib.kiev.ua>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, May 20, 2019 at 1:51 PM Konstantin Belousov <kostikbel@gmail.com> wrote:
>
> On Mon, May 20, 2019 at 02:43:36PM -0600, Alan Somers wrote:
> > True, but I though that strlen would be more readable.  Clang is smart
> > enough to realize that strlen's argument is a constant and omit the
> > call to strlen, so that's what I went with.  Is there any other reason
> > to prefer sizeof() - 1 ?
>
> The reason is that it would also work for not so smart compiler, or with
> a smart compiler after we finally turn on -ffreestanding for libc, as it
> ought to be.

If we did that, it might make sense to implement strlen() as a macro
that did essentially the same thing using __builtin_strlen() (and
__builtin_constant_p, if necessary) extensions.

Best,
Conrad



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAG6CVpVZCVDdyR%2BBOXfV4Z98_hEP8UbE3yvpUVfZGQPiUU_q5w>