path: root/src/ldso
diff options
authorRich Felker <>2012-09-06 22:44:55 -0400
committerRich Felker <>2012-09-06 22:44:55 -0400
commit400c5e5c8307a2ebe44ef1f203f5a15669f20347 (patch)
tree087a48dc8251fa05f6866af8ebf96b69450b15ab /src/ldso
parentbac03cdde1137c16b4c194e137310e2748661dcc (diff)
use restrict everywhere it's required by c99 and/or posix 2008
to deal with the fact that the public headers may be used with pre-c99 compilers, __restrict is used in place of restrict, and defined appropriately for any supported compiler. we also avoid the form [restrict] since older versions of gcc rejected it due to a bug in the original c99 standard, and instead use the form *restrict.
Diffstat (limited to 'src/ldso')
2 files changed, 4 insertions, 4 deletions
diff --git a/src/ldso/dlsym.c b/src/ldso/dlsym.c
index 33693143..c0f50e92 100644
--- a/src/ldso/dlsym.c
+++ b/src/ldso/dlsym.c
@@ -1,8 +1,8 @@
#include <dlfcn.h>
-void *__dlsym(void *, const char *, void *);
+void *__dlsym(void *restrict, const char *restrict, void *restrict);
-void *dlsym(void *p, const char *s)
+void *dlsym(void *restrict p, const char *restrict s)
return __dlsym(p, s, 0);
diff --git a/src/ldso/dynlink.c b/src/ldso/dynlink.c
index 93a4b44c..1c181339 100644
--- a/src/ldso/dynlink.c
+++ b/src/ldso/dynlink.c
@@ -973,7 +973,7 @@ int __dladdr(void *addr, Dl_info *info)
return 1;
-void *__dlsym(void *p, const char *s, void *ra)
+void *__dlsym(void *restrict p, const char *restrict s, void *restrict ra)
void *res;
@@ -986,7 +986,7 @@ void *dlopen(const char *file, int mode)
return 0;
-void *__dlsym(void *p, const char *s, void *ra)
+void *__dlsym(void *restrict p, const char *restrict s, void *restrict ra)
return 0;