148
139
free up some memory, then call this again. */
151
_obstack_begin (h, size, alignment, chunkfun, freefun)
155
#if defined (__STDC__) && __STDC__
156
POINTER (*chunkfun) (long);
157
void (*freefun) (void *);
159
POINTER (*chunkfun) ();
142
_obstack_begin (struct obstack *h, int size, int alignment,
143
POINTER (*chunkfun) (long), void (*freefun) (void *))
163
145
register struct _obstack_chunk *chunk; /* points to new chunk */
209
_obstack_begin_1 (h, size, alignment, chunkfun, freefun, arg)
213
#if defined (__STDC__) && __STDC__
214
POINTER (*chunkfun) (POINTER, long);
215
void (*freefun) (POINTER, POINTER);
217
POINTER (*chunkfun) ();
186
_obstack_begin_1 (struct obstack *h, int size, int alignment,
187
POINTER (*chunkfun) (POINTER, long),
188
void (*freefun) (POINTER, POINTER), POINTER arg)
222
190
register struct _obstack_chunk *chunk; /* points to new chunk */
335
296
This is here for debugging.
336
297
If you use it in a program, you are probably losing. */
338
#if defined (__STDC__) && __STDC__
339
299
/* Suppress -Wmissing-prototypes warning. We don't want to declare this in
340
300
obstack.h because it is just for debugging. */
341
301
int _obstack_allocated_p (struct obstack *h, POINTER obj);
345
_obstack_allocated_p (h, obj)
304
_obstack_allocated_p (struct obstack *h, POINTER obj)
349
306
register struct _obstack_chunk *lp; /* below addr of any objects in this chunk */
350
307
register struct _obstack_chunk *plp; /* point to previous chunk if any */
475
427
/* Now define the functional versions of the obstack macros.
476
428
Define them to simply use the corresponding macros to do the job. */
478
#if defined (__STDC__) && __STDC__
479
/* These function definitions do not work with non-ANSI preprocessors;
480
they won't pass through the macro names in parentheses. */
482
430
/* The function names appear in parentheses in order to prevent
483
431
the macro-definitions of the names from being expanded there. */
485
POINTER (obstack_base) (obstack)
486
struct obstack *obstack;
433
POINTER (obstack_base) (struct obstack *obstack)
488
435
return obstack_base (obstack);
491
POINTER (obstack_next_free) (obstack)
492
struct obstack *obstack;
438
POINTER (obstack_next_free) (struct obstack *obstack)
494
440
return obstack_next_free (obstack);
497
int (obstack_object_size) (obstack)
498
struct obstack *obstack;
443
int (obstack_object_size) (struct obstack *obstack)
500
445
return obstack_object_size (obstack);
503
int (obstack_room) (obstack)
504
struct obstack *obstack;
448
int (obstack_room) (struct obstack *obstack)
506
450
return obstack_room (obstack);
509
int (obstack_make_room) (obstack, length)
510
struct obstack *obstack;
453
int (obstack_make_room) (struct obstack *obstack, int length)
513
455
return obstack_make_room (obstack, length);
516
void (obstack_grow) (obstack, pointer, length)
517
struct obstack *obstack;
458
void (obstack_grow) (struct obstack *obstack, POINTER pointer, int length)
521
460
obstack_grow (obstack, pointer, length);
524
void (obstack_grow0) (obstack, pointer, length)
525
struct obstack *obstack;
463
void (obstack_grow0) (struct obstack *obstack, POINTER pointer, int length)
529
465
obstack_grow0 (obstack, pointer, length);
532
void (obstack_1grow) (obstack, character)
533
struct obstack *obstack;
468
void (obstack_1grow) (struct obstack *obstack, int character)
536
470
obstack_1grow (obstack, character);
539
void (obstack_blank) (obstack, length)
540
struct obstack *obstack;
473
void (obstack_blank) (struct obstack *obstack, int length)
543
475
obstack_blank (obstack, length);
546
void (obstack_1grow_fast) (obstack, character)
547
struct obstack *obstack;
478
void (obstack_1grow_fast) (struct obstack *obstack, int character)
550
480
obstack_1grow_fast (obstack, character);
553
void (obstack_blank_fast) (obstack, length)
554
struct obstack *obstack;
483
void (obstack_blank_fast) (struct obstack *obstack, int length)
557
485
obstack_blank_fast (obstack, length);
560
POINTER (obstack_finish) (obstack)
561
struct obstack *obstack;
488
POINTER (obstack_finish) (struct obstack *obstack)
563
490
return obstack_finish (obstack);
566
POINTER (obstack_alloc) (obstack, length)
567
struct obstack *obstack;
493
POINTER (obstack_alloc) (struct obstack *obstack, int length)
570
495
return obstack_alloc (obstack, length);
573
POINTER (obstack_copy) (obstack, pointer, length)
574
struct obstack *obstack;
498
POINTER (obstack_copy) (struct obstack *obstack, POINTER pointer, int length)
578
500
return obstack_copy (obstack, pointer, length);
581
POINTER (obstack_copy0) (obstack, pointer, length)
582
struct obstack *obstack;
503
POINTER (obstack_copy0) (struct obstack *obstack, POINTER pointer, int length)
586
505
return obstack_copy0 (obstack, pointer, length);
589
#endif /* __STDC__ */
593
510
#endif /* !ELIDE_CODE */