C++ PATCH for GC

Mark Mitchell mark@codesourcery.com
Tue Sep 7 23:37:00 GMT 1999


Here's a fateful patch: GC is now enabled in the C++ compiler.  If you
notice C++ regressions, or bootstrap failures, please let me know.
You will notice longer compile-times.  Please bear in mind that faster
GC is coming later this week; the current version is functional, and
ultra-portable, but does not even attempt high performance.

Three cheers to Richard and Bernd for making this possible!

--
Mark Mitchell                   mark@codesourcery.com
CodeSourcery, LLC               http://www.codesourcery.com

1999-09-07  Mark Mitchell  <mark@codesourcery.com>

	* decl.c (ggc_p): Set it to 1.
	(mark_saved_scope): Add prototype.

Index: decl.c
===================================================================
RCS file: /egcs/carton/cvsfiles/egcs/gcc/cp/decl.c,v
retrieving revision 1.430
diff -c -p -r1.430 decl.c
*** decl.c	1999/09/07 16:07:20	1.430
--- decl.c	1999/09/08 06:31:54
*************** extern tree global_namespace;
*** 59,67 ****
  
  extern int (*valid_lang_attribute) PROTO ((tree, tree, tree, tree));
  
! /* Don't use garbage collection.  */
  
! int ggc_p = 0;
  
  /* Obstack used for remembering local class declarations (like
     enums and static (const) members.  */
--- 59,67 ----
  
  extern int (*valid_lang_attribute) PROTO ((tree, tree, tree, tree));
  
! /* Use garbage collection.  */
  
! int ggc_p = 1;
  
  /* Obstack used for remembering local class declarations (like
     enums and static (const) members.  */
*************** static void push_cp_function_context PRO
*** 204,209 ****
--- 204,210 ----
  static void pop_cp_function_context PROTO((struct function *));
  static void mark_binding_level PROTO((void *));
  static void mark_cp_function_context PROTO((struct function *));
+ static void mark_saved_scope PROTO((void *));
  
  #if defined (DEBUG_CP_BINDING_LEVELS)
  static void indent PROTO((void));


More information about the Gcc-patches mailing list