]> git.eshelyaron.com Git - emacs.git/commit
Don’t ignore -Wclobbered in eval.c
authorPaul Eggert <eggert@cs.ucla.edu>
Sat, 17 Aug 2024 00:08:36 +0000 (17:08 -0700)
committerEshel Yaron <me@eshelyaron.com>
Tue, 20 Aug 2024 14:08:51 +0000 (16:08 +0200)
commitf953258670fc58797c7c9a467e9f06d261b39d24
treec9cb1cb735390a6d0280467a0aba88d0699e0564
parentf568ee8b70b45f80afb2de8d3edf98a99e00f9cd
Don’t ignore -Wclobbered in eval.c

This fix is also prompted by Emacs bug#71744.
* src/eval.c (CACHEABLE): Remove.  All uses removed.
Do not ignore -Wclobbered.
(internal_lisp_condition_case): Fix violations of the C standard,
where setjmp clobbered oldhandlerlist, var, and clauses.
Rewrite to pacify GCC, by using a sentinel rather than a count,
which GCC incorrectly complained about, and by coalescing some
duplicate code.  If GCC_LINT && __GNUC__ && !__clang__ add a useless
assignment to pacify GCC.

(cherry picked from commit 1282714da55cd4bbc1c7f2e49edeb43503427e5e)
src/eval.c