Commit ec6bfc9b by Kaveh R. Ghazi Committed by Kaveh Ghazi

crtstuff.c: If !inhibit_libc, include stdlib.h/unistd.h.

	* crtstuff.c: If !inhibit_libc, include stdlib.h/unistd.h.
	Otherwise provide a declaration for atexit.
	(init_dummy): Make sure dummy call to atexit is nevertheless
	called with correct number of args.

	* frame.c: Update comments referring to other files.

	* libgcc2.c: Likewise.

From-SVN: r31124
parent 9d0878fd
1999-12-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 1999-12-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* crtstuff.c: If !inhibit_libc, include stdlib.h/unistd.h.
Otherwise provide a declaration for atexit.
(init_dummy): Make sure dummy call to atexit is nevertheless
called with correct number of args.
* frame.c: Update comments referring to other files.
* libgcc2.c: Likewise.
1999-12-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* cse.c (free_element, get_element): Remove unused prototypes. * cse.c (free_element, get_element): Remove unused prototypes.
* fold-const.c (extract_muldiv): Initialize variables `op0' and * fold-const.c (extract_muldiv): Initialize variables `op0' and
......
...@@ -52,6 +52,21 @@ Boston, MA 02111-1307, USA. */ ...@@ -52,6 +52,21 @@ Boston, MA 02111-1307, USA. */
do not apply. */ do not apply. */
#include "tm.h" #include "tm.h"
/* We disable this when inhibit_libc, so that gcc can still be built without
needing header files first. */
/* ??? This is not a good solution, since prototypes may be required in
some cases for correct code. See also libgcc2.c/frame.c. */
#ifndef inhibit_libc
/* fixproto guarantees these system headers exist. */
#include <stdlib.h>
#include <unistd.h>
#else
# ifndef atexit
extern int atexit(void (*)(void));
# endif
#endif
#include "defaults.h" #include "defaults.h"
#include <stddef.h> #include <stddef.h>
#include "frame.h" #include "frame.h"
...@@ -403,7 +418,7 @@ init_dummy (void) ...@@ -403,7 +418,7 @@ init_dummy (void)
extern char **__environ; extern char **__environ;
___brk_addr = __environ; ___brk_addr = __environ;
atexit (); atexit (0);
} }
#endif #endif
} }
......
...@@ -36,7 +36,7 @@ Boston, MA 02111-1307, USA. */ ...@@ -36,7 +36,7 @@ Boston, MA 02111-1307, USA. */
/* We disable this when inhibit_libc, so that gcc can still be built without /* We disable this when inhibit_libc, so that gcc can still be built without
needing header files first. */ needing header files first. */
/* ??? This is not a good solution, since prototypes may be required in /* ??? This is not a good solution, since prototypes may be required in
some cases for correct code. See also libgcc2.c. */ some cases for correct code. See also libgcc2.c/crtstuff.c. */
#ifndef inhibit_libc #ifndef inhibit_libc
/* fixproto guarantees these system headers exist. */ /* fixproto guarantees these system headers exist. */
#include <stdlib.h> #include <stdlib.h>
......
...@@ -35,7 +35,7 @@ Boston, MA 02111-1307, USA. */ ...@@ -35,7 +35,7 @@ Boston, MA 02111-1307, USA. */
/* We disable this when inhibit_libc, so that gcc can still be built without /* We disable this when inhibit_libc, so that gcc can still be built without
needing header files first. */ needing header files first. */
/* ??? This is not a good solution, since prototypes may be required in /* ??? This is not a good solution, since prototypes may be required in
some cases for correct code. See also frame.c. */ some cases for correct code. See also frame.c/crtstuff.c. */
#ifndef inhibit_libc #ifndef inhibit_libc
/* fixproto guarantees these system headers exist. */ /* fixproto guarantees these system headers exist. */
#include <stdlib.h> #include <stdlib.h>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment