comparison libcpp/init.c @ 48:9907f3135723

update CbC on GCC from 4.4.2 to 4.4.3.
author kent <kent@cr.ie.u-ryukyu.ac.jp>
date Sun, 07 Feb 2010 17:48:31 +0900
parents 3bfb6c00c1e0
children 77e2b8dfacca
comparison
equal deleted inserted replaced
45:d645ac0f55d6 48:9907f3135723
214 214
215 /* Aligned and unaligned storage. */ 215 /* Aligned and unaligned storage. */
216 pfile->a_buff = _cpp_get_buff (pfile, 0); 216 pfile->a_buff = _cpp_get_buff (pfile, 0);
217 pfile->u_buff = _cpp_get_buff (pfile, 0); 217 pfile->u_buff = _cpp_get_buff (pfile, 0);
218 218
219 /* Initialize table for push_macro/pop_macro. */
220 pfile->pushed_macros = 0;
221
219 /* The expression parser stack. */ 222 /* The expression parser stack. */
220 _cpp_expand_op_stack (pfile); 223 _cpp_expand_op_stack (pfile);
221 224
222 /* Initialize the buffer obstack. */ 225 /* Initialize the buffer obstack. */
223 _obstack_begin (&pfile->buffer_ob, 0, 0, 226 _obstack_begin (&pfile->buffer_ob, 0, 0,
243 returns leads to undefined behavior. Returns the error count. */ 246 returns leads to undefined behavior. Returns the error count. */
244 void 247 void
245 cpp_destroy (cpp_reader *pfile) 248 cpp_destroy (cpp_reader *pfile)
246 { 249 {
247 cpp_context *context, *contextn; 250 cpp_context *context, *contextn;
251 struct def_pragma_macro *pmacro;
248 tokenrun *run, *runn; 252 tokenrun *run, *runn;
249 int i; 253 int i;
250 254
251 free (pfile->op_stack); 255 free (pfile->op_stack);
252 256
293 { 297 {
294 for (i = 0; i < pfile->comments.count; i++) 298 for (i = 0; i < pfile->comments.count; i++)
295 free (pfile->comments.entries[i].comment); 299 free (pfile->comments.entries[i].comment);
296 300
297 free (pfile->comments.entries); 301 free (pfile->comments.entries);
302 }
303 if (pfile->pushed_macros)
304 {
305 do
306 {
307 pmacro = pfile->pushed_macros;
308 pfile->pushed_macros = pmacro->next;
309 free (pmacro->name);
310 free (pmacro);
311 }
312 while (pfile->pushed_macros);
298 } 313 }
299 314
300 free (pfile); 315 free (pfile);
301 } 316 }
302 317