From 4e04fa902a3117ff9f2f81237a19e892314e924f Mon Sep 17 00:00:00 2001 From: Jeff Johnston Date: Tue, 18 Jun 2002 16:07:14 +0000 Subject: 2002-06-18 Jeff Johnston * testsuite/newlib.stdlib/atexit.c: New file. * testsuite/newlib.stdlib/atexit.exp: Ditto. * testsuite/newlib.string/tstring.c: Change default start size to something more reasonable for embedded platforms. --- newlib/testsuite/newlib.stdlib/atexit.c | 48 +++++++++++++++++++++++++++++++ newlib/testsuite/newlib.stdlib/atexit.exp | 13 +++++++++ 2 files changed, 61 insertions(+) create mode 100644 newlib/testsuite/newlib.stdlib/atexit.c create mode 100644 newlib/testsuite/newlib.stdlib/atexit.exp (limited to 'newlib/testsuite/newlib.stdlib') diff --git a/newlib/testsuite/newlib.stdlib/atexit.c b/newlib/testsuite/newlib.stdlib/atexit.c new file mode 100644 index 000000000..48fdb6733 --- /dev/null +++ b/newlib/testsuite/newlib.stdlib/atexit.c @@ -0,0 +1,48 @@ +#include +#include + +void a(void); +void b(void); +void c(int, void *); +static void newline(void); + +void a (void) +{ + printf("a"); +} + +void b (void) +{ + printf("b"); +} + +void c (int code, void *k) +{ + char *x = (char *)k; + printf("%d%c",code,x[0]); +} + +static void newline (void) +{ + printf("\n"); +} + +int main() +{ + if (atexit(newline) != 0) + abort(); + + if (atexit(a) != 0) + abort(); + + if (atexit(b) != 0) + abort(); + + if (on_exit(c,(void *)"c") != 0) + abort(); + + if (atexit(a) != 0) + abort(); + + exit(0); +} diff --git a/newlib/testsuite/newlib.stdlib/atexit.exp b/newlib/testsuite/newlib.stdlib/atexit.exp new file mode 100644 index 000000000..777110d30 --- /dev/null +++ b/newlib/testsuite/newlib.stdlib/atexit.exp @@ -0,0 +1,13 @@ +# Copyright (C) 2002 by Red Hat, Incorporated. All rights reserved. +# +# Permission to use, copy, modify, and distribute this software +# is freely granted, provided that this notice is preserved. +# + +load_lib checkoutput.exp + +set output { +"a0cba" +} + +newlib_check_output "atexit.c" "$output" -- cgit v1.2.3