summaryrefslogtreecommitdiff
path: root/elf/nextmod1.c
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2000-10-03 07:37:02 +0000
committerUlrich Drepper <drepper@redhat.com>2000-10-03 07:37:02 +0000
commite6ea9c0dd02360ae6605ac81efd2bf642f276c8d (patch)
treeea2e8ea34eeff417a21b5388cb9e33bd17978777 /elf/nextmod1.c
parentdc4b147e522fbabddf94286663d5ec13d12b2dab (diff)
Update.
2000-10-02 Jakub Jelinek <jakub@redhat.com> * elf/nextmod1.c (failing_rtld_next_use): Ensure it is not tail call optimized. * sysdeps/sparc/sparc32/fpu/libm-test-ulps: New file.
Diffstat (limited to 'elf/nextmod1.c')
-rw-r--r--elf/nextmod1.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/elf/nextmod1.c b/elf/nextmod1.c
index 3549c75174..19f972b9e0 100644
--- a/elf/nextmod1.c
+++ b/elf/nextmod1.c
@@ -1,5 +1,7 @@
#include <dlfcn.h>
+int nextmod1_dummy_var;
+
int
successful_rtld_next_test (void)
{
@@ -16,5 +18,10 @@ successful_rtld_next_test (void)
void *
failing_rtld_next_use (void)
{
- return dlsym (RTLD_NEXT, __FUNCTION__);
+ void *ret = dlsym (RTLD_NEXT, __FUNCTION__);
+
+ /* Ensure we are not tail call optimized, because then RTLD_NEXT
+ might return this function. */
+ ++nextmod1_dummy_var;
+ return ret;
}