OSDN Git Service

Declare malloc, free, and atexit if inhibit_libc is defined.
authormeissner <meissner@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 5 Oct 1999 19:41:35 +0000 (19:41 +0000)
committermeissner <meissner@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 5 Oct 1999 19:41:35 +0000 (19:41 +0000)
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@29829 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/frame.c
gcc/libgcc2.c

index 0da5b3a..46dec8b 100644 (file)
@@ -1,3 +1,11 @@
+Tue Oct  5 15:37:04 1999  Michael Meissner  <meissner@cygnus.com>
+
+       * libgcc2.c (toplevel): If inhibit_libc is defined, declare
+       malloc, free, and atexit.  Don't include stddef.h twice.
+
+       * frame.c (toplevel): If inhibit_libc is defined, declare
+       malloc and free.
+
 Tue Oct  5 12:00:32 1999  Richard Henderson  <rth@cygnus.com>
 
        * flow.c (make_edge): Accept an optional 2D bitmap in which
index b5f643e..d153960 100644 (file)
@@ -1,6 +1,6 @@
 /* Subroutines needed for unwinding stack frames for exception handling.  */
 /* Compile this one with gcc.  */
-/* Copyright (C) 1997, 1998 Free Software Foundation, Inc.
+/* Copyright (C) 1997, 1998, 1999 Free Software Foundation, Inc.
    Contributed by Jason Merrill <jason@cygnus.com>.
 
 This file is part of GNU CC.
@@ -41,6 +41,15 @@ Boston, MA 02111-1307, USA.  */
 /* fixproto guarantees these system headers exist. */
 #include <stdlib.h>
 #include <unistd.h>
+
+#else
+#include <stddef.h>
+#ifndef malloc
+extern void *malloc (size_t);
+#endif
+#ifndef free
+extern void free (void *);
+#endif
 #endif
 
 #include "defaults.h"
index 777112c..0cf8c5c 100644 (file)
@@ -40,11 +40,23 @@ Boston, MA 02111-1307, USA.  */
 /* fixproto guarantees these system headers exist. */
 #include <stdlib.h>
 #include <unistd.h>
+
+#else
+#include <stddef.h>
+#ifndef malloc
+extern void *malloc (size_t);
+#endif
+#ifndef free
+extern void free (void *);
+#endif
+#ifndef atexit
+extern int atexit(void (*)(void));
+#endif
 #endif
 
 #include "machmode.h"
 #include "defaults.h" 
-#ifndef L_trampoline
+#if !defined(L_trampoline) && !defined(inhibit_libc)
 #include <stddef.h>
 #endif