https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87142

--- Comment #1 from martin <mscfd at gmx dot net> ---
The relevant passage from the standard is:

F2008, 12.4.3.4.3 (Defined assignments) says: "A defined assignment is treated
as a reference to the subroutine, with the left-hand side as the first argument
and the right-hand side enclosed in parentheses as the second argument."

The important part is the "enclosed in parentheses".

Please note that in most circumstances, the problem can only be seen in
valgrind. I have not been able to write a testcase, which consistently fails in
a simply visible manner. It all depends on the inner workings of the malloc
routines, whether the code works or segfaults or produces wrong results
(usually with control characters in the result).

Reply via email to