diff --git a/src/modules/spider/spider.c b/src/modules/spider/spider.c
index e2cd8224bd8efe37792747a194103cb277b29615..f0c7845dfb61aea2ce3c3a7a855802e38ba2c737 100644
--- a/src/modules/spider/spider.c
+++ b/src/modules/spider/spider.c
@@ -1290,7 +1290,8 @@ void pike_module_init(void)
 	   0);
   
 #ifdef HAVE_PERROR
-  add_efun("real_perror",f_real_perror, "function(:void)",OPT_EXTERNAL_DEPEND);
+  add_efun("real_perror",f_real_perror, "function(:void)",
+	   OPT_EXTERNAL_DEPEND|OPT_SIDE_EFFECT);
 #endif
 
   add_efun("discdate", f_discdate, "function(int:array)", 0);
@@ -1304,8 +1305,9 @@ void pike_module_init(void)
 #if 0
   add_efun("name_process", f_name_process, "function(string:void)", 0);
 #endif
-  add_efun("fd_info", f_fd_info, "function(int:string)", 0);
-  add_efun("mark_fd", f_mark_fd, "function(int,void|mixed:mixed)", 0);
+  add_efun("fd_info", f_fd_info, "function(int:string)", OPT_EXTERNAL_DEPEND);
+  add_efun("mark_fd", f_mark_fd, "function(int,void|mixed:mixed)",
+	   OPT_EXTERNAL_DEPEND|OPT_SIDE_EFFECT);
 
   /* timezone() needs */
   {