/[emacs]/emacs/src/alloc.c
ViewVC logotype

Diff of /emacs/src/alloc.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.318.2.7 by miles, Wed Jul 28 07:05:51 2004 UTC revision 1.318.2.8 by miles, Wed Sep 15 09:00:00 2004 UTC
# Line 1  Line 1 
1  /* Storage allocation and gc for GNU Emacs Lisp interpreter.  /* Storage allocation and gc for GNU Emacs Lisp interpreter.
2     Copyright (C) 1985,86,88,93,94,95,97,98,1999,2000,01,02,03,2004     Copyright (C) 1985, 1986, 1988, 1993, 1994, 1995, 1997, 1998, 1999,
3        Free Software Foundation, Inc.        2000, 2001, 2002, 2003, 2004  Free Software Foundation, Inc.
4    
5  This file is part of GNU Emacs.  This file is part of GNU Emacs.
6    
# Line 4411  returns nil, because real GC can't be do Line 4411  returns nil, because real GC can't be do
4411    for (i = 0; i < staticidx; i++)    for (i = 0; i < staticidx; i++)
4412      mark_object (*staticvec[i]);      mark_object (*staticvec[i]);
4413    
4414      for (bind = specpdl; bind != specpdl_ptr; bind++)
4415        {
4416          mark_object (bind->symbol);
4417          mark_object (bind->old_value);
4418        }
4419      mark_kboards ();
4420    
4421    #ifdef USE_GTK
4422      {
4423        extern void xg_mark_data ();
4424        xg_mark_data ();
4425      }
4426    #endif
4427    
4428  #if (GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS \  #if (GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS \
4429       || GC_MARK_STACK == GC_MARK_STACK_CHECK_GCPROS)       || GC_MARK_STACK == GC_MARK_STACK_CHECK_GCPROS)
4430    mark_stack ();    mark_stack ();
# Line 4424  returns nil, because real GC can't be do Line 4438  returns nil, because real GC can't be do
4438  #endif  #endif
4439    
4440    mark_byte_stack ();    mark_byte_stack ();
   for (bind = specpdl; bind != specpdl_ptr; bind++)  
     {  
       mark_object (bind->symbol);  
       mark_object (bind->old_value);  
     }  
4441    for (catch = catchlist; catch; catch = catch->next)    for (catch = catchlist; catch; catch = catch->next)
4442      {      {
4443        mark_object (catch->tag);        mark_object (catch->tag);
# Line 4440  returns nil, because real GC can't be do Line 4449  returns nil, because real GC can't be do
4449        mark_object (handler->var);        mark_object (handler->var);
4450      }      }
4451    mark_backtrace ();    mark_backtrace ();
   mark_kboards ();  
4452    
4453  #if GC_MARK_STACK == GC_USE_GCPROS_CHECK_ZOMBIES  #if GC_MARK_STACK == GC_USE_GCPROS_CHECK_ZOMBIES
4454    mark_stack ();    mark_stack ();
4455  #endif  #endif
4456    
 #ifdef USE_GTK  
   {  
     extern void xg_mark_data ();  
     xg_mark_data ();  
   }  
 #endif  
   
4457    /* Everything is now marked, except for the things that require special    /* Everything is now marked, except for the things that require special
4458       finalization, i.e. the undo_list.       finalization, i.e. the undo_list.
4459       Look thru every buffer's undo list       Look thru every buffer's undo list

Legend:
Removed from v.1.318.2.7  
changed lines
  Added in v.1.318.2.8

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26