summaryrefslogtreecommitdiff
path: root/dmydln.c
diff options
context:
space:
mode:
authorSatoshi Tagomori <[email protected]>2023-12-07 20:38:53 +0900
committerNobuyoshi Nakada <[email protected]>2023-12-14 17:39:42 +0900
commit8a37df8c8bc0311c4822ee989087d212af2bf73f (patch)
treeaedec147365812ed69cfb848bab08cf697ea8e38 /dmydln.c
parent35a6b69f6c3cda7afd84c686978cf7ac79f68e04 (diff)
dln_symbol: make dln_sym accessible Ruby internally
The symbol resolved by dln_symbol will eventually be passed to extensions. The error handling of dln_sym is also separated into dln_sym_func because the new call resolving symbols will not raise LoadError.
Diffstat (limited to 'dmydln.c')
-rw-r--r--dmydln.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/dmydln.c b/dmydln.c
index d05cda0b8e..b1516937d3 100644
--- a/dmydln.c
+++ b/dmydln.c
@@ -8,3 +8,12 @@ dln_load(const char *file)
UNREACHABLE_RETURN(NULL);
}
+
+NORETURN(void *dln_symbol(void*,const char*));
+void*
+dln_symbol(void *handle, const char *symbol)
+{
+ rb_loaderror("this executable file can't load extension libraries");
+
+ UNREACHABLE_RETURN(NULL);
+}