aboutsummaryrefslogtreecommitdiffstats
path: root/src/lisp.h
diff options
context:
space:
mode:
authorPaul Eggert2019-08-13 12:11:35 -0700
committerPaul Eggert2019-08-13 12:12:38 -0700
commita354736e1dfe5a7e4ddbb1ee7f1373be2b5bbe09 (patch)
tree14e9597e69a7367c9880e39b16f9bd5a7c7840e9 /src/lisp.h
parent8882761440c3227850043dddf5aec5394c8cbe28 (diff)
downloademacs-a354736e1dfe5a7e4ddbb1ee7f1373be2b5bbe09.tar.gz
emacs-a354736e1dfe5a7e4ddbb1ee7f1373be2b5bbe09.zip
Let consing_until_gc exceed INTPTR_MAX
Suggested by Eli Zaretskii (Bug#37006#46). * src/alloc.c (consing_until_gc): Now of type consing_ct. All uses changed, so gc-cons-threshold no longer saturates against OBJECT_CT_MAX. (object_ct): Move typedef here from lisp.h. * src/lisp.h (consing_ct, CONSING_CT_MAX): New type and macro. (OBJECT_CT_MAX): Remove. Replace all uses with CONSING_CT_MAX.
Diffstat (limited to 'src/lisp.h')
-rw-r--r--src/lisp.h10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/lisp.h b/src/lisp.h
index 63baab5d636..043f2f738e4 100644
--- a/src/lisp.h
+++ b/src/lisp.h
@@ -3793,9 +3793,13 @@ extern void flush_stack_call_func (void (*func) (void *arg), void *arg);
3793extern void garbage_collect (void); 3793extern void garbage_collect (void);
3794extern const char *pending_malloc_warning; 3794extern const char *pending_malloc_warning;
3795extern Lisp_Object zero_vector; 3795extern Lisp_Object zero_vector;
3796typedef intptr_t object_ct; /* Signed type of object counts reported by GC. */ 3796#define CONSING_CT_MAX max (INTPTR_MAX, EMACS_INT_MAX)
3797#define OBJECT_CT_MAX INTPTR_MAX 3797#if CONSING_CT_MAX == INTPTR_MAX
3798extern object_ct consing_until_gc; 3798typedef intptr_t consing_ct;
3799#else
3800typedef EMACS_INT consing_ct;
3801#endif
3802extern consing_ct consing_until_gc;
3799#ifdef HAVE_PDUMPER 3803#ifdef HAVE_PDUMPER
3800extern int number_finalizers_run; 3804extern int number_finalizers_run;
3801#endif 3805#endif