/[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.272.2.14 by miles, Sat Sep 4 09:20:09 2004 UTC revision 1.272.2.15 by miles, Thu Sep 16 00:15: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 4514  returns nil, because real GC can't be do Line 4514  returns nil, because real GC can't be do
4514    for (i = 0; i < staticidx; i++)    for (i = 0; i < staticidx; i++)
4515      mark_object (*staticvec[i]);      mark_object (*staticvec[i]);
4516    
4517      for (bind = specpdl; bind != specpdl_ptr; bind++)
4518        {
4519          mark_object (bind->symbol);
4520          mark_object (bind->old_value);
4521        }
4522      mark_kboards ();
4523    
4524    #ifdef USE_GTK
4525      {
4526        extern void xg_mark_data ();
4527        xg_mark_data ();
4528      }
4529    #endif
4530    
4531  #if (GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS \  #if (GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS \
4532       || GC_MARK_STACK == GC_MARK_STACK_CHECK_GCPROS)       || GC_MARK_STACK == GC_MARK_STACK_CHECK_GCPROS)
4533    mark_stack ();    mark_stack ();
# Line 4527  returns nil, because real GC can't be do Line 4541  returns nil, because real GC can't be do
4541  #endif  #endif
4542    
4543    mark_byte_stack ();    mark_byte_stack ();
   for (bind = specpdl; bind != specpdl_ptr; bind++)  
     {  
       mark_object (bind->symbol);  
       mark_object (bind->old_value);  
     }  
4544    for (catch = catchlist; catch; catch = catch->next)    for (catch = catchlist; catch; catch = catch->next)
4545      {      {
4546        mark_object (catch->tag);        mark_object (catch->tag);
# Line 4543  returns nil, because real GC can't be do Line 4552  returns nil, because real GC can't be do
4552        mark_object (handler->var);        mark_object (handler->var);
4553      }      }
4554    mark_backtrace ();    mark_backtrace ();
   mark_kboards ();  
4555    
4556  #if GC_MARK_STACK == GC_USE_GCPROS_CHECK_ZOMBIES  #if GC_MARK_STACK == GC_USE_GCPROS_CHECK_ZOMBIES
4557    mark_stack ();    mark_stack ();
4558  #endif  #endif
4559    
 #ifdef USE_GTK  
   {  
     extern void xg_mark_data ();  
     xg_mark_data ();  
   }  
 #endif  
   
4560    /* Everything is now marked, except for the things that require special    /* Everything is now marked, except for the things that require special
4561       finalization, i.e. the undo_list.       finalization, i.e. the undo_list.
4562       Look thru every buffer's undo list       Look thru every buffer's undo list

Legend:
Removed from v.1.272.2.14  
changed lines
  Added in v.1.272.2.15

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