1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-07-10 11:20:28 +02:00

deprecate direct scm_protects access

* libguile/gc.h:
* libguile/gc.c: Deprecate direct access to scm_protects.
This commit is contained in:
Andy Wingo 2011-11-18 11:09:48 +01:00
parent 8071964943
commit f0d1bacd78
2 changed files with 8 additions and 3 deletions

View file

@ -82,11 +82,14 @@ int scm_expensive_debug_cell_accesses_p = 0;
*/ */
int scm_debug_cells_gc_interval = 0; int scm_debug_cells_gc_interval = 0;
#if SCM_ENABLE_DEPRECATED == 1
/* Hash table that keeps a reference to objects the user wants to protect from /* Hash table that keeps a reference to objects the user wants to protect from
garbage collection. It could arguably be private but applications have come garbage collection. It could arguably be private but applications have come
to rely on it (e.g., Lilypond 2.13.9). */ to rely on it (e.g., Lilypond 2.13.9). */
SCM scm_protects; SCM scm_protects;
#else
static SCM scm_protects;
#endif
#if (SCM_DEBUG_CELL_ACCESSES == 1) #if (SCM_DEBUG_CELL_ACCESSES == 1)

View file

@ -3,7 +3,7 @@
#ifndef SCM_GC_H #ifndef SCM_GC_H
#define SCM_GC_H #define SCM_GC_H
/* Copyright (C) 1995,1996,1998,1999,2000,2001, 2002, 2003, 2004, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. /* Copyright (C) 1995,1996,1998,1999,2000,2001, 2002, 2003, 2004, 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
* *
* This library is free software; you can redistribute it and/or * This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public License * modify it under the terms of the GNU Lesser General Public License
@ -242,7 +242,9 @@ SCM_API void scm_gc_register_root (SCM *p);
SCM_API void scm_gc_unregister_root (SCM *p); SCM_API void scm_gc_unregister_root (SCM *p);
SCM_API void scm_gc_register_roots (SCM *b, unsigned long n); SCM_API void scm_gc_register_roots (SCM *b, unsigned long n);
SCM_API void scm_gc_unregister_roots (SCM *b, unsigned long n); SCM_API void scm_gc_unregister_roots (SCM *b, unsigned long n);
SCM_API SCM scm_protects; #if SCM_ENABLE_DEPRECATED == 1
SCM_DEPRECATED SCM scm_protects;
#endif
SCM_INTERNAL void scm_storage_prehistory (void); SCM_INTERNAL void scm_storage_prehistory (void);
SCM_INTERNAL void scm_init_gc_protect_object (void); SCM_INTERNAL void scm_init_gc_protect_object (void);
SCM_INTERNAL void scm_init_gc (void); SCM_INTERNAL void scm_init_gc (void);