diff options
author | Adhemerval Zanella <adhemerval.zanella@linaro.org> | 2024-01-17 15:21:25 -0300 |
---|---|---|
committer | Adhemerval Zanella <adhemerval.zanella@linaro.org> | 2024-04-17 16:12:41 -0300 |
commit | 2cebb84d7e5858ac3f0c987a4e73e12f0bd406d8 (patch) | |
tree | 05acd12140aa40b348571a30965876fadb21646e | |
parent | 1b803c315f36042a3e6191692eca40800210aa16 (diff) | |
download | glibc-2cebb84d7e5858ac3f0c987a4e73e12f0bd406d8.tar.gz glibc-2cebb84d7e5858ac3f0c987a4e73e12f0bd406d8.tar.xz glibc-2cebb84d7e5858ac3f0c987a4e73e12f0bd406d8.zip |
elf: Fix tests that require interposable symbols
clang defaults to -fsemantic-interposition, which in turn trigger some optimizations (like inline) that makes some tests that rely on ELF symbol interposition to fail. For this case, explicit set the symbol as weak to avoid it.
-rw-r--r-- | elf/tst-dlclose-lazy-mod2.c | 1 | ||||
-rw-r--r-- | elf/tst-piemod1.c | 1 |
2 files changed, 2 insertions, 0 deletions
diff --git a/elf/tst-dlclose-lazy-mod2.c b/elf/tst-dlclose-lazy-mod2.c index d1ae34330c..544803ca3e 100644 --- a/elf/tst-dlclose-lazy-mod2.c +++ b/elf/tst-dlclose-lazy-mod2.c @@ -20,6 +20,7 @@ #include <stdlib.h> void +__attribute__ ((weak)) exported_function (int ignored) { /* This function is interposed from tst-dlclose-lazy-mod1.so and diff --git a/elf/tst-piemod1.c b/elf/tst-piemod1.c index 72d7e0a187..225c057ea3 100644 --- a/elf/tst-piemod1.c +++ b/elf/tst-piemod1.c @@ -1,6 +1,7 @@ #include <stdio.h> int +__attribute__((weak)) foo (void) { return 21; |