From: Eric Sunshine Date: Sun, 25 Feb 2024 21:02:35 GMT Subject: Re: [PATCH 1/3] t-ctype: allow NUL anywhere in the specification string Message-ID: In-Reply-To: <20240225210038.GA3368483@coredump.intra.peff.net> On Sun, Feb 25, 2024 at 4:00 PM Jeff King wrote: > On Sun, Feb 25, 2024 at 01:41:30PM -0500, Eric Sunshine wrote: > > On Sun, Feb 25, 2024 at 1:28 PM René Scharfe wrote: > > > Am 25.02.24 um 19:05 schrieb Eric Sunshine: > > > > Taking into consideration the commit message warning about string > > > > constants, would it make sense to update the comment to mention that > > > > limitation? > > > > > > I think the temptation to pass a string pointer is low -- if only > > > because there aren't any in this file. But adding such a warning > > > can't hurt, so yeah, why not? > > > > The patch just posted[1] by SZEDER reminded me that, on this project, > > we assume that the compiler is smart enough to replace > > `strlen("string-literal")` with the constant `15`, so rather than > > worrying about updating comment to mention the sizeof() limitation, > > you could perhaps just use `strlen(string)` instead of > > `sizeof(string)-1`? > > That would defeat the advertised purpose that we can handle embedded > NULs, though. Whereas with sizeof(), I think a literal like "foo\0bar" > would still have length 8. True. Sorry for the noise.