This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] fold more string comparison with known result (PR 90879)
Hi,
On Fri, 9 Aug 2019, Martin Sebor wrote:
> The solution introduced in C99 is a flexible array. C++
> compilers usually support it as well. Those that don't are
> likely to support the zero-length array (even Visual C++ does).
> If there's a chance that some don't support either do you really
> think it's safe to assume they will do something sane with
> the [1] hack?
As the [1] "hack" is the traditional pre-C99 (and C++) idiom to
implement flexible trailing char arrays, yes, I do expect all existing
(and not any more existing) compilers to do the obvious and sane thing
with it. IOW: it's more portable in practice than our documented
zero-length extension. And that's what matters for the things compiled by
the host compiler.
Without requiring C99 (which would be a different discussion) and a
non-existing C++ standard we can't write this code (in this form) in a
standard conforming way, no matter what we wish for. Hence it seems
prudent to use the most portable variant of all the non-standard ways, the
trailing [1] array.
Ciao,
Michael.