Follow-up Comment #7, bug #60077 (project make):
I wonder if &: makes sense as a pattern rule since regular pattern rules
already support multiple targets.
Regardless, I have also tested your implicit test without the & and get the
same results:
$ cat ../makefile4
.SECONDEXPANSION:
all: world
It gives the same error:
src/main.c:1954:16: error: writes 1 byte in a region of size 0
[-Werror=stringop-overflow=]
1954 | *(p - 1) = '\0';
| ~^~
Le 21/06/2021 à 16:12, David A. Wheeler a écrit :
p[-1] = '\0';
Is this just a style warning being turned into an
>> p[-1] = '\0';
Is this just a style warning being turned into an error?
That is, would this compile if the line was rewritten as:
*(p - 1) = ‘\0’;
Which means the same thing per the spec?
If the rewrite would fix it, I suggest doing the rewrite, to
reduce compilation problems.
--- Davi
On Jun 19 2021, Paul Smith wrote:
> But, as human programmers we can examine this code and understand that
> actually, it's never possible for p to point to the first character of
> the array: we know that eval_strings->idx is never 0, so we know that p
> will always be incremented past the beginn