summaryrefslogtreecommitdiff
path: root/gcc/tlink.c
diff options
context:
space:
mode:
authorian <ian@138bc75d-0d04-0410-961f-82ee72b054a4>2005-03-29 19:39:35 +0000
committerian <ian@138bc75d-0d04-0410-961f-82ee72b054a4>2005-03-29 19:39:35 +0000
commit6e24b1408dea233f0e2d38c84187fcb5a3778a93 (patch)
tree14d07064a525534cdc2996c320b7f9f3da0183a9 /gcc/tlink.c
parent039c965021c640d71bb6750d29ef0e4cf6150809 (diff)
downloadgcc-6e24b1408dea233f0e2d38c84187fcb5a3778a93.tar.gz
PR bootstrap/14316
* collect2.c: Never include <vfork.h>. (VFORK_STRING, vfork): Don't define. (pid): Remove global variable. (handler): Call raise instead of kill (getpid(), ...). (collect_wait): Add pex parameter. Change all callers. Use pex_get_status rather than pwait. (do_wait): Add pex parameter. Change all callers. (collect_execute): Return struct pex_obj * rather than void. Use pex routines rather than pexecute. (fork_execute): Get pex_obj from collect_execute, and pass it to do_wait. (scan_prog_file): Use pex routines rather than pipe/vfork/exec. Only declare quit_handler if SIGQUIT is defined. (scan_libraries): Likewise. * collect2.h (collect_execute): Update declaration. (collect_wait): Update declaration. * tlink.c (tlink_execute): Get pex_obj from collect_execute, and pass it to collect_wait. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@97199 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tlink.c')
-rw-r--r--gcc/tlink.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/gcc/tlink.c b/gcc/tlink.c
index f09a8652880..bf4e1d757b0 100644
--- a/gcc/tlink.c
+++ b/gcc/tlink.c
@@ -1,7 +1,7 @@
/* Scan linker error messages for missing template instantiations and provide
them.
- Copyright (C) 1995, 1998, 1999, 2000, 2001, 2003, 2004
+ Copyright (C) 1995, 1998, 1999, 2000, 2001, 2003, 2004, 2005
Free Software Foundation, Inc.
Contributed by Jason Merrill (jason@cygnus.com).
@@ -281,8 +281,10 @@ tlink_init (void)
static int
tlink_execute (const char *prog, char **argv, const char *redir)
{
- collect_execute (prog, argv, redir);
- return collect_wait (prog);
+ struct pex_obj *pex;
+
+ pex = collect_execute (prog, argv, redir);
+ return collect_wait (prog, pex);
}
static char *