GNU bug report logs - #9926
make GC_MAKE_GCPROS_NOOPS the default

Previous Next

Package: emacs;

Reported by: monnier <at> IRO.UMontreal.CA

Date: Mon, 31 Oct 2011 22:58:02 UTC

Severity: wishlist

Done: Paul Eggert <eggert <at> cs.ucla.edu>

Bug is archived. No further changes may be made.

Full log


Message #11 received at 9926 <at> debbugs.gnu.org (full text, mbox):

From: Paul Eggert <eggert <at> cs.ucla.edu>
To: 9926 <at> debbugs.gnu.org
Subject: Re: patch: emacs-24.0.91 FTBFS on GNU/Hurd
Date: Sun, 06 Nov 2011 21:43:31 -0800
I installed the following patch in the trunk as bzr 106311
to fix the fails-to-compile bug.

Making GC_MAKE_GCPROS_NOOPS the default sounds good, but as
it doesn't fix a bug and we're in feature-freeze now I left
that for later.

=== modified file 'src/ChangeLog'
--- src/ChangeLog	2011-11-07 02:00:43 +0000
+++ src/ChangeLog	2011-11-07 05:37:49 +0000
@@ -1,3 +1,10 @@
+2011-11-07  Paul Eggert  <eggert <at> cs.ucla.edu>
+
+	* alloc.c (DEADP): New macro, for porting to GNU/Hurd (Bug#9926).
+	This is also needed for porting to any host where GC_MARK_STACK is
+	not GC_MAKE_GCPROS_NOOPS.
+	(which_symbols): Use it.
+
 2011-11-07  Kenichi Handa  <handa <at> m17n.org>
 
 	* coding.c (coding_set_destination): Check coding->src_pos only

=== modified file 'src/alloc.c'
--- src/alloc.c	2011-10-29 17:25:44 +0000
+++ src/alloc.c	2011-11-07 05:37:49 +0000
@@ -315,6 +315,7 @@
    on free lists recognizable in O(1).  */
 
 static Lisp_Object Vdead;
+#define DEADP(x) EQ (x, Vdead)
 
 #ifdef GC_MALLOC_CHECK
 
@@ -411,6 +412,10 @@
 
 #endif /* GC_MARK_STACK || GC_MALLOC_CHECK */
 
+#ifndef DEADP
+# define DEADP(x) 0
+#endif
+
 /* Recording what needs to be marked for gc.  */
 
 struct gcpro *gcprolist;
@@ -6261,7 +6266,7 @@
    int gc_count = inhibit_garbage_collection ();
    Lisp_Object found = Qnil;
 
-   if (!EQ (obj, Vdead))
+   if (! DEADP (obj))
      {
        for (sblk = symbol_block; sblk; sblk = sblk->next)
 	 {





This bug report was last modified 13 years and 199 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.