emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: warning: unsequenced modification and access to 'sa_avail'


From: Philipp
Subject: Re: warning: unsequenced modification and access to 'sa_avail'
Date: Sat, 27 Mar 2021 18:17:04 +0100


> Am 27.03.2021 um 18:10 schrieb Jeffrey Walton <noloader@gmail.com>:
> 
> On Sat, Mar 27, 2021 at 1:01 PM Philipp <p.stephani2@gmail.com> wrote:
>> 
>>> Am 27.03.2021 um 17:05 schrieb Jeffrey Walton <noloader@gmail.com>:
>>> 
>>> I'm building Emacs 27.2 on the Apple M1 machine. I think the compiler
>>> is complaining about undefined behavior:
>>> 
>>>   sa_avail -= (size), alloca (size)
>>> 
>>> I think it is equivalent to something like this:
>>> 
>>>   data[i] = data[i++];
>>> 
>>> /usr/bin/clang -c -I/usr/local/include -DNDEBUG -Demacs  -I. -I.
>>> -I../lib -I../lib         -I/usr/local/include/libxml2
>>> -I/usr/local/include              -MMD -MF deps/doc.d -MP
>>> -I/usr/local/include -I/usr/local/include/p11-kit-1    -Wno-switch
>>> -Wno-pointer-sign -Wno-string-plus-int -Wno-unknown-attributes
>>> -Wno-initializer-overrides -Wno-tautological-compare
>>> -Wno-tautological-constant-out-of-range-compare -g2 -O2 -fno-common
>>> -arch arm64 -fPIC -pthread  doc.c
>>> /usr/bin/clang -c -I/usr/local/include -DNDEBUG -Demacs  -I. -I.
>>> -I../lib -I../lib         -I/usr/local/include/libxml2
>>> -I/usr/local/include              -MMD -MF deps/editfns.d -MP
>>> -I/usr/local/include -I/usr/local/include/p11-kit-1    -Wno-switch
>>> -Wno-pointer-sign -Wno-string-plus-int -Wno-unknown-attributes
>>> -Wno-initializer-overrides -Wno-tautological-compare
>>> -Wno-tautological-constant-out-of-range-compare -g2 -O2 -fno-common
>>> -arch arm64 -fPIC -pthread  editfns.c
>>> editfns.c:2063:18: warning: unsequenced modification and access to 
>>> 'sa_avail'
>>>     [-Wunsequenced]
>>>   .deletions = SAFE_ALLOCA (del_bytes),
>>>                ^
>>> ./lisp.h:4817:9: note: expanded from macro 'SAFE_ALLOCA'
>>>                          ? AVAIL_ALLOCA (size)                        \
>>>                            ^
>>> ./lisp.h:4812:38: note: expanded from macro 'AVAIL_ALLOCA'
>>> #define AVAIL_ALLOCA(size) (sa_avail -= (size), alloca (size))
>>>                                    ^
>>> 
>> 
>> This has already been fixed by commit 
>> 6a4ed891d84b1ca1e4d68a6de9dd374f1fadd971, which hasn't made it into the 
>> release though.
> 
> Thanks Philipp.
> 
> Forgive my ignorance... Where is that commit? I can't seem to find it
> at https://git.savannah.gnu.org/cgit/emacs.git/log/?h=emacs-27.
> Searching the logs for your name, and searching for
> 6a4ed891d84b1ca1e4d68a6de9dd374f1fadd971 (and 6a4ed891d84b) returns 0
> hits.
> 

Try 'git show 6a4ed891d84b1ca1e4d68a6de9dd374f1fadd971'.  Right now it's the 
ninth-most recent commit on the emacs-27 branch.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]