diff options
Diffstat (limited to 'REORG.TODO/elf/tst-unique3.cc')
-rw-r--r-- | REORG.TODO/elf/tst-unique3.cc | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/REORG.TODO/elf/tst-unique3.cc b/REORG.TODO/elf/tst-unique3.cc new file mode 100644 index 0000000000..efdd6d78c2 --- /dev/null +++ b/REORG.TODO/elf/tst-unique3.cc @@ -0,0 +1,24 @@ +#include "tst-unique3.h" + +#include <cstdio> +#include "../dlfcn/dlfcn.h" + +int t = S<char>::i; + +int +main (void) +{ + std::printf ("%d %d\n", S<char>::i, t); + int result = S<char>::i++ != 1 || t != 1; + result |= in_lib (); + void *d = dlopen ("$ORIGIN/tst-unique3lib2.so", RTLD_LAZY); + int (*fp) (); + if (d == NULL || (fp = (int(*)()) dlsym (d, "in_lib2")) == NULL) + { + std::printf ("failed to get symbol in_lib2\n"); + return 1; + } + result |= fp (); + dlclose (d); + return result; +} |