From 568767a62c1e147235e0645fe96beb533967add2 Mon Sep 17 00:00:00 2001 From: Richard Henderson Date: Sat, 18 Sep 1999 11:54:36 -0700 Subject: c-pragma.c (mark_align_stack): New. * c-pragma.c (mark_align_stack): New. (init_pragma): New. * c-pragma.h (init_pragma): Declare it. * c-lex.c (init_parse): Call it. From-SVN: r29502 --- gcc/c-pragma.c | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'gcc/c-pragma.c') diff --git a/gcc/c-pragma.c b/gcc/c-pragma.c index c002587..ba0c836 100644 --- a/gcc/c-pragma.c +++ b/gcc/c-pragma.c @@ -512,3 +512,27 @@ handle_pragma_token (string, token) return 1; } #endif /* HANDLE_GENERIC_PRAGMAS */ + +#ifdef HANDLE_PRAGMA_PACK_PUSH_POP +static void +mark_align_stack (p) + void *p; +{ + align_stack *a = (align_stack *) p; + + while (a) + { + ggc_mark_tree (a->id); + a = a->prev; + } +} +#endif + +void +init_pragma () +{ +#ifdef HANDLE_PRAGMA_PACK_PUSH_POP + ggc_add_root (&alignment_stack, 1, sizeof(alignment_stack), + mark_align_stack); +#endif +} -- cgit v1.1