Commit 2b552f34 authored by Paul Eggert's avatar Paul Eggert

Don’t debug fset by default

This GC bug seems to have been fixed, so the check is no longer
needed in production code.  From a suggestion by Pip Cet in:
https://lists.gnu.org/r/emacs-devel/2019-08/msg00316.html
* src/alloc.c (SUSPICIOUS_OBJECT_CHECKING) [!ENABLE_CHECKING]:
Do not define.
(find_suspicious_object_in_range, detect_suspicious_free):
Expand to proper dummy expressions if !SUSPICIOUS_OBJECT_CHECKING.
* src/data.c (Ffset): Convert test to an eassert.
parent ceebf3ef
......@@ -302,15 +302,11 @@ static intptr_t garbage_collection_inhibited;
const char *pending_malloc_warning;
#if 0 /* Normally, pointer sanity only on request... */
/* Pointer sanity only on request. FIXME: Code depending on
SUSPICIOUS_OBJECT_CHECKING is obsolete; remove it entirely. */
#ifdef ENABLE_CHECKING
#define SUSPICIOUS_OBJECT_CHECKING 1
#endif
#endif
/* ... but unconditionally use SUSPICIOUS_OBJECT_CHECKING while the GC
bug is unresolved. */
#define SUSPICIOUS_OBJECT_CHECKING 1
#ifdef SUSPICIOUS_OBJECT_CHECKING
struct suspicious_free_record
......@@ -327,8 +323,8 @@ static int suspicious_free_history_index;
static void *find_suspicious_object_in_range (void *begin, void *end);
static void detect_suspicious_free (void *ptr);
#else
# define find_suspicious_object_in_range(begin, end) NULL
# define detect_suspicious_free(ptr) (void)
# define find_suspicious_object_in_range(begin, end) ((void *) NULL)
# define detect_suspicious_free(ptr) ((void) 0)
#endif
/* Maximum amount of C stack to save when a GC happens. */
......
......@@ -771,10 +771,7 @@ DEFUN ("fset", Ffset, Sfset, 2, 2, 0,
if (AUTOLOADP (function))
Fput (symbol, Qautoload, XCDR (function));
/* Convert to eassert or remove after GC bug is found. In the
meantime, check unconditionally, at a slight perf hit. */
if (! valid_lisp_object_p (definition))
emacs_abort ();
eassert (valid_lisp_object_p (definition));
set_symbol_function (symbol, definition);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment