glibc/dlfcn/bug-atexit1.c
Ulrich Drepper 7237d70417 [BZ #1158]
* stdlib/cxa_atexit.c (__new_exitfn): Rewrite to preserve order in
	which the functions were registered.
	* dlfcn/Makefile: Add rules to build and run bug-atexit1 and
	bug-atexit2.
	* dlfcn/bug-atext1.c: New file.
	* dlfcn/bug-atext1-lib.c: New file.
	* dlfcn/bug-atext2.c: New file.
	* dlfcn/bug-atext2-lib.c: New file.
2005-09-28 00:14:50 +00:00

24 lines
486 B
C

/* Derived from a test case in
http://sourceware.org/bugzilla/show_bug.cgi?id=1158. */
#include <dlfcn.h>
#include <stdio.h>
#include <stdlib.h>
static int
do_test (void)
{
for (int i = 0; i < 2; ++i)
{
void *dso = dlopen ("$ORIGIN/bug-atexit1-lib.so", RTLD_NOW);
void (*fn) (void) = (void (*)()) dlsym (dso, "foo");
fn ();
dlclose (dso);
puts ("round done");
}
return 0;
}
#define TEST_FUNCTION do_test ()
#include "../test-skeleton.c"