diff options
author | Richard Henderson <rth@cygnus.com> | 1999-10-26 20:26:12 -0700 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 1999-10-26 20:26:12 -0700 |
commit | 3965abd03025899e9400fd17357b9c1dc422244f (patch) | |
tree | 4af416f0be643c92f2f64f50691a4611cfedc155 /gcc | |
parent | 02db399d6a0772345b4c5e66eab3527469da8e50 (diff) | |
download | gcc-3965abd03025899e9400fd17357b9c1dc422244f.zip gcc-3965abd03025899e9400fd17357b9c1dc422244f.tar.gz gcc-3965abd03025899e9400fd17357b9c1dc422244f.tar.bz2 |
* gcc.c-torture/compile/991026-2.c: New test.
From-SVN: r30205
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/testsuite/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/testsuite/gcc.c-torture/compile/991026-2.c | 33 |
2 files changed, 37 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 1927165..fb56ffc 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,7 @@ +Tue Oct 26 20:25:42 1999 Richard Henderson <rth@cygnus.com> + + * gcc.c-torture/compile/991026-2.c: New test. + Tue Oct 26 00:45:56 1999 Jeffrey A Law (law@cygnus.com) * gcc.c-torture/compile/991026-1.c: New test. diff --git a/gcc/testsuite/gcc.c-torture/compile/991026-2.c b/gcc/testsuite/gcc.c-torture/compile/991026-2.c new file mode 100644 index 0000000..bb358f4 --- /dev/null +++ b/gcc/testsuite/gcc.c-torture/compile/991026-2.c @@ -0,0 +1,33 @@ +typedef int __pid_t; +extern __pid_t fork (void) ; +extern int printf (__const char *__restrict __format, ...) ; +extern char *strerror (int __errnum) ; +extern int errno; +extern int *__errno_location (void) __attribute__ ((__const__)); +extern void _exit (int __status) __attribute__ ((__noreturn__)); +extern void exit (int __status) __attribute__ ((__noreturn__)); +extern int close (int __fd) ; +extern int dup (int __fd) ; +extern int open (__const char *__file, int __oflag, ...) ; + + +char myname[]="foo"; + +detach() +{ + switch(fork()) { + case -1: + printf("%s: Error: fork - %s\n",myname, strerror((*__errno_location ()) )); + exit(255); + case 0: + + close(0); + close(1); + close(2); + dup(dup(open("/dev/null", 02 ))); + return; + default: + + _exit(0); + } +} |