diff --git a/src/backends/regex_debug.c b/src/backends/regex_debug.c
index 8e54f5caa188e24b568ddbaa49d4fce5c3fac4d8..d28f9b2b7a0ce919fa6c30f80c26be1732dd120e 100644
--- a/src/backends/regex_debug.c
+++ b/src/backends/regex_debug.c
@@ -3,13 +3,16 @@
 #include <stdio.h>
 #include <stdlib.h>
 
+#define USE_DLADDR (0)
 
-
+#if USE_DLADDR
 // This is some spectacularly non-portable code... but whee!
 #include <dlfcn.h>
-char* getsym(void* addr) {
+#endif
+
+char* getsym(HSVMActionFunc addr) {
   char* retstr;
-#if 0
+#if USE_DLADDR
   // This will be fixed later.
   Dl_info dli;
   if (dladdr(addr, &dli) != 0 && dli.dli_sname != NULL) {