/* Includes for memory limit warnings.
- Copyright (C) 1990, 1993, 1994 Free Software Foundation, Inc.
+ Copyright (C) 1990, 1993, 1994, 1995 Free Software Foundation, Inc.
This file is part of GNU Emacs.
#include <sys/resource.h>
#define BSD4_2 /* Tell code below to use getrlimit. */
-#else
+/* Old Linux startup code won't define __data_start. */
+extern int etext, __data_start; weak_symbol (__data_start)
+#define start_of_data() (&__data_start ?: &etext)
+
+#else /* not _LIBC */
#if defined (__osf__) && (defined (__mips) || defined (mips) || defined(__alpha))
#include <sys/time.h>
#include <sys/resource.h>
#endif /* BSD4_2 */
-#endif /* _LIBC */
-
#ifdef emacs
/* The important properties of this type are that 1) it's a pointer, and
2) arithmetic on it should work as if the size of the object pointed
#endif
#endif
-#else /* Not emacs */
+#else /* not emacs */
extern char etext;
#define start_of_data() &etext
-#endif /* Not emacs */
+#endif /* not emacs */
+
+#endif /* not _LIBC */
-
/* start of data space; can be changed by calling malloc_init */
static POINTER data_space_start;