emacs-devel
[Top][All Lists]
Advanced

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

Re: Development Speed


From: Óscar Fuentes
Subject: Re: Development Speed
Date: Fri, 24 Dec 2021 15:39:51 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux)

Stefan Monnier <monnier@iro.umontreal.ca> writes:

>>> According to any of the C standards, Emacs is just one large undefined
>>> behavior.
>> Would you mind expanding on this remark briefly?  What sort of undefined
>> behaviour do you have in mind?
>
> Scanning the stack and playing with the lowest 3 bits of pointers come
> to mind.  These are UB, and in C as soon as one UB is encountered during
> execution, everything else from now on is potentially UB (more
> specifically, the C standard allows the interpretation that a UB
> operation does literally anything, including never terminating and
> behaving eerily like your program).

Yes, and in recent years a new breed of compiler engineers apply the
rule that if UB is found:

1. they are not in the obligation to tell you.

2. from there on the compiler is free to do the most bizarre things you
   can't imagine on its optimization passes, generating machine code
   that in no way corresponds to your intent.

This is causing much pain and chagrin on every major compiler release.
To be fair, it is also helping to educate many programmers and improve
their respective code bases.




reply via email to

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