}
#if defined (HAVE_DLOPEN) && defined (HAVE_DLSYM)
-#include <dlfcn.h>
+
+#if defined (HAVE_DLFCN_H)
+# include <dlfcn.h>
+#endif
static int
dyn_load_builtin (list, flags, filename)
struct builtin *new_shell_builtins;
/* XXX - funky pointer arithmetic - XXX */
+#ifdef __STDC__
+ ind = b - shell_builtins;
+#else
ind = ((int)b - (int)shell_builtins) / sizeof (struct builtin);
+#endif
size = num_shell_builtins * sizeof (struct builtin);
new_shell_builtins = (struct builtin *)xmalloc (size);