+# ifndef COPYING_UNIT
+# define COPYING_UNIT int
+# endif
+
+
+/* The functions allocating more room by calling `obstack_chunk_alloc'
+ jump to the handler pointed to by `obstack_alloc_failed_handler'.
+ This can be set to a user defined function which should either
+ abort gracefully or use longjump - but shouldn't return. This
+ variable by default points to the internal function
+ `print_and_abort'. */
+# if defined (__STDC__) && __STDC__
+static void print_and_abort (void);
+void (*obstack_alloc_failed_handler) (void) = print_and_abort;
+# else
+static void print_and_abort ();
+void (*obstack_alloc_failed_handler) () = print_and_abort;
+# endif
+
+/* Exit value used when `print_and_abort' is used. */
+# if defined __GNU_LIBRARY__ || defined HAVE_STDLIB_H
+# include <stdlib.h>
+# endif
+# ifndef EXIT_FAILURE
+# define EXIT_FAILURE 1
+# endif
+int obstack_exit_failure = EXIT_FAILURE;